Merge jdk7-b121
authorigor
Wed, 08 Dec 2010 00:35:33 -0800
changeset 3177a661d8587b5d
parent 3176 4f33cfb40c39
parent 3172 c65ab22137f8
child 3178 ac311eb325bf
child 3285 22b7781ad25a
Merge
src/share/classes/sun/net/httpserver/SelectorCache.java
     1.1 --- a/.hgtags	Tue Nov 30 09:57:47 2010 -0800
     1.2 +++ b/.hgtags	Wed Dec 08 00:35:33 2010 -0800
     1.3 @@ -93,3 +93,5 @@
     1.4  1657ed4e1d86c8aa2028ab5a41f9da1ac4a369f8 jdk7-b116
     1.5  3e6726bbf80a4254ecd01051c8ed77ee19325e46 jdk7-b117
     1.6  b357910aa04aead2a16b6d6ff395a8df4b51d1dd jdk7-b118
     1.7 +ecab7eefb8f2326fd90fb632f47f1b6f81e928f8 jdk7-b119
     1.8 +37d74e29687cf07c2bf9411af58c7e42440855c3 jdk7-b120
     2.1 --- a/make/sun/nio/cs/FILES_java.gmk	Tue Nov 30 09:57:47 2010 -0800
     2.2 +++ b/make/sun/nio/cs/FILES_java.gmk	Wed Dec 08 00:35:33 2010 -0800
     2.3 @@ -85,6 +85,7 @@
     2.4  	sun/io/ByteToCharCp500.java \
     2.5  	sun/io/ByteToCharCp737.java \
     2.6  	sun/io/ByteToCharCp775.java \
     2.7 +	sun/io/ByteToCharCp833.java \
     2.8  	sun/io/ByteToCharCp834.java \
     2.9  	sun/io/ByteToCharCp838.java \
    2.10  	sun/io/ByteToCharCp850.java \
    2.11 @@ -214,6 +215,7 @@
    2.12  	sun/io/CharToByteCp500.java \
    2.13  	sun/io/CharToByteCp737.java \
    2.14  	sun/io/CharToByteCp775.java \
    2.15 +	sun/io/CharToByteCp833.java \
    2.16  	sun/io/CharToByteCp834.java \
    2.17  	sun/io/CharToByteCp838.java \
    2.18  	sun/io/CharToByteCp850.java \
    2.19 @@ -331,6 +333,7 @@
    2.20  	sun/nio/cs/ext/IBM420.java \
    2.21  	sun/nio/cs/ext/IBM424.java \
    2.22  	sun/nio/cs/ext/IBM500.java \
    2.23 +	sun/nio/cs/ext/IBM833.java \
    2.24  	sun/nio/cs/ext/IBM838.java \
    2.25  	sun/nio/cs/ext/IBM856.java \
    2.26  	sun/nio/cs/ext/IBM860.java \
     3.1 --- a/make/sun/xawt/mapfile-vers	Tue Nov 30 09:57:47 2010 -0800
     3.2 +++ b/make/sun/xawt/mapfile-vers	Wed Dec 08 00:35:33 2010 -0800
     3.3 @@ -432,6 +432,7 @@
     3.4          Java_sun_awt_X11_GtkFileDialogPeer_initIDs;
     3.5          Java_sun_awt_X11_GtkFileDialogPeer_run;
     3.6          Java_sun_awt_X11_GtkFileDialogPeer_quit;
     3.7 +        Java_sun_awt_X11_GtkFileDialogPeer_toFront;
     3.8  
     3.9  	Java_sun_print_CUPSPrinter_initIDs;
    3.10  	Java_sun_print_CUPSPrinter_getCupsServer;
     4.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     4.2 +++ b/make/tools/CharsetMapping/IBM833.c2b	Wed Dec 08 00:35:33 2010 -0800
     4.3 @@ -0,0 +1,94 @@
     4.4 +0x5A    U+FF01
     4.5 +0x7F    U+FF02
     4.6 +0x7B    U+FF03
     4.7 +0x5B    U+FF04
     4.8 +0x6C    U+FF05
     4.9 +0x50    U+FF06
    4.10 +0x7D    U+FF07
    4.11 +0x4D    U+FF08
    4.12 +0x5D    U+FF09
    4.13 +0x5C    U+FF0A
    4.14 +0x4E    U+FF0B
    4.15 +0x6B    U+FF0C
    4.16 +0x60    U+FF0D
    4.17 +0x4B    U+FF0E
    4.18 +0x61    U+FF0F
    4.19 +0xF0    U+FF10
    4.20 +0xF1    U+FF11
    4.21 +0xF2    U+FF12
    4.22 +0xF3    U+FF13
    4.23 +0xF4    U+FF14
    4.24 +0xF5    U+FF15
    4.25 +0xF6    U+FF16
    4.26 +0xF7    U+FF17
    4.27 +0xF8    U+FF18
    4.28 +0xF9    U+FF19
    4.29 +0x7A    U+FF1A
    4.30 +0x5E    U+FF1B
    4.31 +0x4C    U+FF1C
    4.32 +0x7E    U+FF1D
    4.33 +0x6E    U+FF1E
    4.34 +0x6F    U+FF1F
    4.35 +0x7C    U+FF20
    4.36 +0xC1    U+FF21
    4.37 +0xC2    U+FF22
    4.38 +0xC3    U+FF23
    4.39 +0xC4    U+FF24
    4.40 +0xC5    U+FF25
    4.41 +0xC6    U+FF26
    4.42 +0xC7    U+FF27
    4.43 +0xC8    U+FF28
    4.44 +0xC9    U+FF29
    4.45 +0xD1    U+FF2A
    4.46 +0xD2    U+FF2B
    4.47 +0xD3    U+FF2C
    4.48 +0xD4    U+FF2D
    4.49 +0xD5    U+FF2E
    4.50 +0xD6    U+FF2F
    4.51 +0xD7    U+FF30
    4.52 +0xD8    U+FF31
    4.53 +0xD9    U+FF32
    4.54 +0xE2    U+FF33
    4.55 +0xE3    U+FF34
    4.56 +0xE4    U+FF35
    4.57 +0xE5    U+FF36
    4.58 +0xE6    U+FF37
    4.59 +0xE7    U+FF38
    4.60 +0xE8    U+FF39
    4.61 +0xE9    U+FF3A
    4.62 +0x70    U+FF3B
    4.63 +0xB2    U+FF3C
    4.64 +0x80    U+FF3D
    4.65 +0xB0    U+FF3E
    4.66 +0x6D    U+FF3F
    4.67 +0x79    U+FF40
    4.68 +0x81    U+FF41
    4.69 +0x82    U+FF42
    4.70 +0x83    U+FF43
    4.71 +0x84    U+FF44
    4.72 +0x85    U+FF45
    4.73 +0x86    U+FF46
    4.74 +0x87    U+FF47
    4.75 +0x88    U+FF48
    4.76 +0x89    U+FF49
    4.77 +0x91    U+FF4A
    4.78 +0x92    U+FF4B
    4.79 +0x93    U+FF4C
    4.80 +0x94    U+FF4D
    4.81 +0x95    U+FF4E
    4.82 +0x96    U+FF4F
    4.83 +0x97    U+FF50
    4.84 +0x98    U+FF51
    4.85 +0x99    U+FF52
    4.86 +0xA2    U+FF53
    4.87 +0xA3    U+FF54
    4.88 +0xA4    U+FF55
    4.89 +0xA5    U+FF56
    4.90 +0xA6    U+FF57
    4.91 +0xA7    U+FF58
    4.92 +0xA8    U+FF59
    4.93 +0xA9    U+FF5A
    4.94 +0xC0    U+FF5B
    4.95 +0x4F    U+FF5C
    4.96 +0xD0    U+FF5D
    4.97 +0xA1    U+FF5E
     5.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     5.2 +++ b/make/tools/CharsetMapping/IBM833.map	Wed Dec 08 00:35:33 2010 -0800
     5.3 @@ -0,0 +1,217 @@
     5.4 +0x00    U+0000
     5.5 +0x01    U+0001
     5.6 +0x02    U+0002
     5.7 +0x03    U+0003
     5.8 +0x37    U+0004
     5.9 +0x2D    U+0005
    5.10 +0x2E    U+0006
    5.11 +0x2F    U+0007
    5.12 +0x16    U+0008
    5.13 +0x05    U+0009
    5.14 +0x25    U+000A
    5.15 +0x0B    U+000B
    5.16 +0x0C    U+000C
    5.17 +0x0D    U+000D
    5.18 +0x0E    U+000E
    5.19 +0x0F    U+000F
    5.20 +0x10    U+0010
    5.21 +0x11    U+0011
    5.22 +0x12    U+0012
    5.23 +0x13    U+0013
    5.24 +0x3C    U+0014
    5.25 +0x3D    U+0015
    5.26 +0x32    U+0016
    5.27 +0x26    U+0017
    5.28 +0x18    U+0018
    5.29 +0x19    U+0019
    5.30 +0x3F    U+001A
    5.31 +0x27    U+001B
    5.32 +0x1C    U+001C
    5.33 +0x1D    U+001D
    5.34 +0x1E    U+001E
    5.35 +0x1F    U+001F
    5.36 +0x40    U+0020
    5.37 +0x5A    U+0021
    5.38 +0x7F    U+0022
    5.39 +0x7B    U+0023
    5.40 +0x5B    U+0024
    5.41 +0x6C    U+0025
    5.42 +0x50    U+0026
    5.43 +0x7D    U+0027
    5.44 +0x4D    U+0028
    5.45 +0x5D    U+0029
    5.46 +0x5C    U+002A
    5.47 +0x4E    U+002B
    5.48 +0x6B    U+002C
    5.49 +0x60    U+002D
    5.50 +0x4B    U+002E
    5.51 +0x61    U+002F
    5.52 +0xF0    U+0030
    5.53 +0xF1    U+0031
    5.54 +0xF2    U+0032
    5.55 +0xF3    U+0033
    5.56 +0xF4    U+0034
    5.57 +0xF5    U+0035
    5.58 +0xF6    U+0036
    5.59 +0xF7    U+0037
    5.60 +0xF8    U+0038
    5.61 +0xF9    U+0039
    5.62 +0x7A    U+003A
    5.63 +0x5E    U+003B
    5.64 +0x4C    U+003C
    5.65 +0x7E    U+003D
    5.66 +0x6E    U+003E
    5.67 +0x6F    U+003F
    5.68 +0x7C    U+0040
    5.69 +0xC1    U+0041
    5.70 +0xC2    U+0042
    5.71 +0xC3    U+0043
    5.72 +0xC4    U+0044
    5.73 +0xC5    U+0045
    5.74 +0xC6    U+0046
    5.75 +0xC7    U+0047
    5.76 +0xC8    U+0048
    5.77 +0xC9    U+0049
    5.78 +0xD1    U+004A
    5.79 +0xD2    U+004B
    5.80 +0xD3    U+004C
    5.81 +0xD4    U+004D
    5.82 +0xD5    U+004E
    5.83 +0xD6    U+004F
    5.84 +0xD7    U+0050
    5.85 +0xD8    U+0051
    5.86 +0xD9    U+0052
    5.87 +0xE2    U+0053
    5.88 +0xE3    U+0054
    5.89 +0xE4    U+0055
    5.90 +0xE5    U+0056
    5.91 +0xE6    U+0057
    5.92 +0xE7    U+0058
    5.93 +0xE8    U+0059
    5.94 +0xE9    U+005A
    5.95 +0x70    U+005B
    5.96 +0xB2    U+005C
    5.97 +0x80    U+005D
    5.98 +0xB0    U+005E
    5.99 +0x6D    U+005F
   5.100 +0x79    U+0060
   5.101 +0x81    U+0061
   5.102 +0x82    U+0062
   5.103 +0x83    U+0063
   5.104 +0x84    U+0064
   5.105 +0x85    U+0065
   5.106 +0x86    U+0066
   5.107 +0x87    U+0067
   5.108 +0x88    U+0068
   5.109 +0x89    U+0069
   5.110 +0x91    U+006A
   5.111 +0x92    U+006B
   5.112 +0x93    U+006C
   5.113 +0x94    U+006D
   5.114 +0x95    U+006E
   5.115 +0x96    U+006F
   5.116 +0x97    U+0070
   5.117 +0x98    U+0071
   5.118 +0x99    U+0072
   5.119 +0xA2    U+0073
   5.120 +0xA3    U+0074
   5.121 +0xA4    U+0075
   5.122 +0xA5    U+0076
   5.123 +0xA6    U+0077
   5.124 +0xA7    U+0078
   5.125 +0xA8    U+0079
   5.126 +0xA9    U+007A
   5.127 +0xC0    U+007B
   5.128 +0x4F    U+007C
   5.129 +0xD0    U+007D
   5.130 +0xA1    U+007E
   5.131 +0x07    U+007F
   5.132 +0x20    U+0080
   5.133 +0x21    U+0081
   5.134 +0x22    U+0082
   5.135 +0x23    U+0083
   5.136 +0x24    U+0084
   5.137 +0x15    U+0085
   5.138 +0x06    U+0086
   5.139 +0x17    U+0087
   5.140 +0x28    U+0088
   5.141 +0x29    U+0089
   5.142 +0x2A    U+008A
   5.143 +0x2B    U+008B
   5.144 +0x2C    U+008C
   5.145 +0x09    U+008D
   5.146 +0x0A    U+008E
   5.147 +0x1B    U+008F
   5.148 +0x30    U+0090
   5.149 +0x31    U+0091
   5.150 +0x1A    U+0092
   5.151 +0x33    U+0093
   5.152 +0x34    U+0094
   5.153 +0x35    U+0095
   5.154 +0x36    U+0096
   5.155 +0x08    U+0097
   5.156 +0x38    U+0098
   5.157 +0x39    U+0099
   5.158 +0x3A    U+009A
   5.159 +0x3B    U+009B
   5.160 +0x04    U+009C
   5.161 +0x14    U+009D
   5.162 +0x3E    U+009E
   5.163 +0xFF    U+009F
   5.164 +0x4A    U+00A2
   5.165 +0x6A    U+00A6
   5.166 +0x5F    U+00AC
   5.167 +0xA0    U+203E
   5.168 +0xE0    U+20A9
   5.169 +0x42    U+FFA0
   5.170 +0x43    U+FFA1
   5.171 +0x44    U+FFA2
   5.172 +0x45    U+FFA3
   5.173 +0x46    U+FFA4
   5.174 +0x47    U+FFA5
   5.175 +0x48    U+FFA6
   5.176 +0x49    U+FFA7
   5.177 +0x52    U+FFA8
   5.178 +0x53    U+FFA9
   5.179 +0x54    U+FFAA
   5.180 +0x55    U+FFAB
   5.181 +0x56    U+FFAC
   5.182 +0x57    U+FFAD
   5.183 +0x58    U+FFAE
   5.184 +0x59    U+FFAF
   5.185 +0x62    U+FFB0
   5.186 +0x63    U+FFB1
   5.187 +0x64    U+FFB2
   5.188 +0x65    U+FFB3
   5.189 +0x66    U+FFB4
   5.190 +0x67    U+FFB5
   5.191 +0x68    U+FFB6
   5.192 +0x69    U+FFB7
   5.193 +0x72    U+FFB8
   5.194 +0x73    U+FFB9
   5.195 +0x74    U+FFBA
   5.196 +0x75    U+FFBB
   5.197 +0x76    U+FFBC
   5.198 +0x77    U+FFBD
   5.199 +0x78    U+FFBE
   5.200 +0x8A    U+FFC2
   5.201 +0x8B    U+FFC3
   5.202 +0x8C    U+FFC4
   5.203 +0x8D    U+FFC5
   5.204 +0x8E    U+FFC6
   5.205 +0x8F    U+FFC7
   5.206 +0x9A    U+FFCA
   5.207 +0x9B    U+FFCB
   5.208 +0x9C    U+FFCC
   5.209 +0x9D    U+FFCD
   5.210 +0x9E    U+FFCE
   5.211 +0x9F    U+FFCF
   5.212 +0xAA    U+FFD2
   5.213 +0xAB    U+FFD3
   5.214 +0xAC    U+FFD4
   5.215 +0xAD    U+FFD5
   5.216 +0xAE    U+FFD6
   5.217 +0xAF    U+FFD7
   5.218 +0xBA    U+FFDA
   5.219 +0xBB    U+FFDB
   5.220 +0xBC    U+FFDC
     6.1 --- a/make/tools/CharsetMapping/extsbcs	Tue Nov 30 09:57:47 2010 -0800
     6.2 +++ b/make/tools/CharsetMapping/extsbcs	Wed Dec 08 00:35:33 2010 -0800
     6.3 @@ -32,6 +32,7 @@
     6.4  IBM420		IBM420		Cp420		false		sun.nio.cs.ext
     6.5  IBM424		IBM424		Cp424		false		sun.nio.cs.ext
     6.6  IBM500		IBM500		Cp500		false		sun.nio.cs.ext
     6.7 +IBM833		x-IBM833	Cp833		false		sun.nio.cs.ext
     6.8  IBM838		IBM-Thai	Cp838		false		sun.nio.cs.ext
     6.9  IBM856		x-IBM856	Cp856		false		sun.nio.cs.ext
    6.10  IBM860		IBM860		Cp860		false		sun.nio.cs.ext
     7.1 --- a/make/tools/GenerateCharacter/CharacterData00.java.template	Tue Nov 30 09:57:47 2010 -0800
     7.2 +++ b/make/tools/GenerateCharacter/CharacterData00.java.template	Wed Dec 08 00:35:33 2010 -0800
     7.3 @@ -1,5 +1,5 @@
     7.4  /*
     7.5 - * Copyright (c) 2003, 2006, Oracle and/or its affiliates. All rights reserved.
     7.6 + * Copyright (c) 2003, 2010, Oracle and/or its affiliates. All rights reserved.
     7.7   * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
     7.8   *
     7.9   * This code is free software; you can redistribute it and/or modify it
    7.10 @@ -111,7 +111,7 @@
    7.11            if ((val & $$maskCaseOffset) == $$maskCaseOffset) {
    7.12              switch(ch) {
    7.13                // map the offset overflow chars
    7.14 -			case 0x0130 : mapChar = 0x0069; break;
    7.15 +            case 0x0130 : mapChar = 0x0069; break;
    7.16              case 0x2126 : mapChar = 0x03C9; break;
    7.17              case 0x212A : mapChar = 0x006B; break;
    7.18              case 0x212B : mapChar = 0x00E5; break;
    7.19 @@ -192,7 +192,11 @@
    7.20              case 0x2C6D : mapChar = 0x0251; break;
    7.21              case 0x2C6E : mapChar = 0x0271; break;
    7.22              case 0x2C6F : mapChar = 0x0250; break;
    7.23 +            case 0x2C70 : mapChar = 0x0252; break;
    7.24 +            case 0x2C7E : mapChar = 0x023F; break;
    7.25 +            case 0x2C7F : mapChar = 0x0240; break;
    7.26              case 0xA77D : mapChar = 0x1D79; break;
    7.27 +            case 0xA78D : mapChar = 0x0265; break;
    7.28                // default mapChar is already set, so no
    7.29                // need to redo it here.
    7.30                // default       : mapChar = ch;
    7.31 @@ -246,8 +250,12 @@
    7.32              case 0x1FC3 : mapChar = 0x1FCC; break;
    7.33              case 0x1FF3 : mapChar = 0x1FFC; break;
    7.34  
    7.35 +            case 0x023F : mapChar = 0x2C7E; break;
    7.36 +            case 0x0240 : mapChar = 0x2C7F; break;
    7.37              case 0x0250 : mapChar = 0x2C6F; break;
    7.38              case 0x0251 : mapChar = 0x2C6D; break;
    7.39 +            case 0x0252 : mapChar = 0x2C70; break;
    7.40 +            case 0x0265 : mapChar = 0xA78D; break;
    7.41              case 0x026B : mapChar = 0x2C62; break;
    7.42              case 0x0271 : mapChar = 0x2C6E; break;
    7.43              case 0x027D : mapChar = 0x2C64; break;
    7.44 @@ -487,8 +495,12 @@
    7.45                      case 0x017F : mapChar = 0x0053; break;
    7.46                      case 0x1FBE : mapChar = 0x0399; break;
    7.47  
    7.48 +                    case 0x023F : mapChar = 0x2C7E; break;
    7.49 +                    case 0x0240 : mapChar = 0x2C7F; break;
    7.50                      case 0x0250 : mapChar = 0x2C6F; break;
    7.51                      case 0x0251 : mapChar = 0x2C6D; break;
    7.52 +                    case 0x0252 : mapChar = 0x2C70; break;
    7.53 +                    case 0x0265 : mapChar = 0xA78D; break;
    7.54                      case 0x026B : mapChar = 0x2C62; break;
    7.55                      case 0x0271 : mapChar = 0x2C6E; break;
    7.56                      case 0x027D : mapChar = 0x2C64; break;
     8.1 --- a/make/tools/GenerateCharacter/CharacterData01.java.template	Tue Nov 30 09:57:47 2010 -0800
     8.2 +++ b/make/tools/GenerateCharacter/CharacterData01.java.template	Wed Dec 08 00:35:33 2010 -0800
     8.3 @@ -1,5 +1,5 @@
     8.4  /*
     8.5 - * Copyright (c) 2003, 2006, Oracle and/or its affiliates. All rights reserved.
     8.6 + * Copyright (c) 2003, 2010, Oracle and/or its affiliates. All rights reserved.
     8.7   * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
     8.8   *
     8.9   * This code is free software; you can redistribute it and/or modify it
    8.10 @@ -251,9 +251,40 @@
    8.11              case 0x010341: retval = 90; break;     // GOTHIC LETTER NINETY
    8.12              case 0x01034A: retval = 900; break;    // GOTHIC LETTER NINE HUNDRED
    8.13              case 0x0103D5: retval = 100; break;    // OLD PERSIAN NUMBER HUNDRED
    8.14 +            case 0x01085D: retval = 100; break;    // IMPERIAL ARAMAIC NUMBER ONE HUNDRED
    8.15 +            case 0x01085E: retval = 1000; break;   // IMPERIAL ARAMAIC NUMBER ONE THOUSAND
    8.16 +            case 0x01085F: retval = 10000; break;  // IMPERIAL ARAMAIC NUMBER TEN THOUSAND
    8.17              case 0x010919: retval = 100; break;    // PHOENICIAN NUMBER ONE HUNDRED
    8.18              case 0x010A46: retval = 100; break;    // KHAROSHTHI NUMBER ONE HUNDRED
    8.19              case 0x010A47: retval = 1000; break;   // KHAROSHTHI NUMBER ONE THOUSAND
    8.20 +            case 0x010A7E: retval = 50; break;     // OLD SOUTH ARABIAN NUMBER FIFTY
    8.21 +            case 0x010B5E: retval = 100; break;    // INSCRIPTIONAL PARTHIAN NUMBER ONE HUNDRED
    8.22 +            case 0x010B5F: retval = 1000; break;   // INSCRIPTIONAL PARTHIAN NUMBER ONE THOUSAND
    8.23 +            case 0x010B7E: retval = 100; break;    // INSCRIPTIONAL PAHLAVI NUMBER ONE HUNDRED
    8.24 +            case 0x010B7F: retval = 1000; break;   // INSCRIPTIONAL PAHLAVI NUMBER ONE THOUSAND
    8.25 +            case 0x010E6C: retval = 40; break;     // RUMI NUMBER FORTY
    8.26 +            case 0x010E6D: retval = 50; break;     // RUMI NUMBER FIFTY
    8.27 +            case 0x010E6E: retval = 60; break;     // RUMI NUMBER SIXTY
    8.28 +            case 0x010E6F: retval = 70; break;     // RUMI NUMBER SEVENTY
    8.29 +            case 0x010E70: retval = 80; break;     // RUMI NUMBER EIGHTY
    8.30 +            case 0x010E71: retval = 90; break;     // RUMI NUMBER NINETY
    8.31 +            case 0x010E72: retval = 100; break;    // RUMI NUMBER ONE HUNDRED
    8.32 +            case 0x010E73: retval = 200; break;    // RUMI NUMBER TWO HUNDRED
    8.33 +            case 0x010E74: retval = 300; break;    // RUMI NUMBER THREE HUNDRED
    8.34 +            case 0x010E75: retval = 400; break;    // RUMI NUMBER FOUR HUNDRED
    8.35 +            case 0x010E76: retval = 500; break;    // RUMI NUMBER FIVE HUNDRED
    8.36 +            case 0x010E77: retval = 600; break;    // RUMI NUMBER SIX HUNDRED
    8.37 +            case 0x010E78: retval = 700; break;    // RUMI NUMBER SEVEN HUNDRED
    8.38 +            case 0x010E79: retval = 800; break;    // RUMI NUMBER EIGHT HUNDRED
    8.39 +            case 0x010E7A: retval = 900; break;    // RUMI NUMBER NINE HUNDRED
    8.40 +            case 0x01105E: retval = 40; break;     // BRAHMI NUMBER FORTY
    8.41 +            case 0x01105F: retval = 50; break;     // BRAHMI NUMBER FIFTY
    8.42 +            case 0x011060: retval = 60; break;     // BRAHMI NUMBER SIXTY
    8.43 +            case 0x011061: retval = 70; break;     // BRAHMI NUMBER SEVENTY
    8.44 +            case 0x011062: retval = 80; break;     // BRAHMI NUMBER EIGHTY
    8.45 +            case 0x011063: retval = 90; break;     // BRAHMI NUMBER NINETY
    8.46 +            case 0x011064: retval = 100; break;    // BRAHMI NUMBER ONE HUNDRED
    8.47 +            case 0x011065: retval = 1000; break;   // BRAHMI NUMBER ONE THOUSAND
    8.48              case 0x01D36C: retval = 40; break;     // COUNTING ROD TENS DIGIT FOUR
    8.49              case 0x01D36D: retval = 50; break;     // COUNTING ROD TENS DIGIT FIVE
    8.50              case 0x01D36E: retval = 60; break;     // COUNTING ROD TENS DIGIT SIX
     9.1 --- a/make/tools/UnicodeData/Scripts.txt	Tue Nov 30 09:57:47 2010 -0800
     9.2 +++ b/make/tools/UnicodeData/Scripts.txt	Wed Dec 08 00:35:33 2010 -0800
     9.3 @@ -1,8 +1,8 @@
     9.4 -# Scripts-5.2.0.txt
     9.5 -# Date: 2009-08-22, 04:58:43 GMT [MD]
     9.6 +# Scripts-6.0.0.txt
     9.7 +# Date: 2010-08-19, 00:48:47 GMT [MD]
     9.8  #
     9.9  # Unicode Character Database
    9.10 -# Copyright (c) 1991-2009 Unicode, Inc.
    9.11 +# Copyright (c) 1991-2010 Unicode, Inc.
    9.12  # For terms of use, see http://www.unicode.org/terms_of_use.html
    9.13  # For documentation, see http://www.unicode.org/reports/tr44/
    9.14  
    9.15 @@ -73,7 +73,7 @@
    9.16  02C2..02C5    ; Common # Sk   [4] MODIFIER LETTER LEFT ARROWHEAD..MODIFIER LETTER DOWN ARROWHEAD
    9.17  02C6..02D1    ; Common # Lm  [12] MODIFIER LETTER CIRCUMFLEX ACCENT..MODIFIER LETTER HALF TRIANGULAR COLON
    9.18  02D2..02DF    ; Common # Sk  [14] MODIFIER LETTER CENTRED RIGHT HALF RING..MODIFIER LETTER CROSS ACCENT
    9.19 -02E5..02EB    ; Common # Sk   [7] MODIFIER LETTER EXTRA-HIGH TONE BAR..MODIFIER LETTER YANG DEPARTING TONE MARK
    9.20 +02E5..02E9    ; Common # Sk   [5] MODIFIER LETTER EXTRA-HIGH TONE BAR..MODIFIER LETTER EXTRA-LOW TONE BAR
    9.21  02EC          ; Common # Lm       MODIFIER LETTER VOICING
    9.22  02ED          ; Common # Sk       MODIFIER LETTER UNASPIRATED
    9.23  02EE          ; Common # Lm       MODIFIER LETTER DOUBLE APOSTROPHE
    9.24 @@ -83,7 +83,6 @@
    9.25  0385          ; Common # Sk       GREEK DIALYTIKA TONOS
    9.26  0387          ; Common # Po       GREEK ANO TELEIA
    9.27  0589          ; Common # Po       ARMENIAN FULL STOP
    9.28 -0600..0603    ; Common # Cf   [4] ARABIC NUMBER SIGN..ARABIC SIGN SAFHA
    9.29  060C          ; Common # Po       ARABIC COMMA
    9.30  061B          ; Common # Po       ARABIC SEMICOLON
    9.31  061F          ; Common # Po       ARABIC QUESTION MARK
    9.32 @@ -92,7 +91,6 @@
    9.33  06DD          ; Common # Cf       ARABIC END OF AYAH
    9.34  0964..0965    ; Common # Po   [2] DEVANAGARI DANDA..DEVANAGARI DOUBLE DANDA
    9.35  0970          ; Common # Po       DEVANAGARI ABBREVIATION SIGN
    9.36 -0CF1..0CF2    ; Common # So   [2] KANNADA SIGN JIHVAMULIYA..KANNADA SIGN UPADHMANIYA
    9.37  0E3F          ; Common # Sc       THAI CURRENCY SYMBOL BAHT
    9.38  0FD5..0FD8    ; Common # So   [4] RIGHT-FACING SVASTI SIGN..LEFT-FACING SVASTI SIGN WITH DOTS
    9.39  10FB          ; Common # Po       GEORGIAN PARAGRAPH SEPARATOR
    9.40 @@ -148,7 +146,7 @@
    9.41  208A..208C    ; Common # Sm   [3] SUBSCRIPT PLUS SIGN..SUBSCRIPT EQUALS SIGN
    9.42  208D          ; Common # Ps       SUBSCRIPT LEFT PARENTHESIS
    9.43  208E          ; Common # Pe       SUBSCRIPT RIGHT PARENTHESIS
    9.44 -20A0..20B8    ; Common # Sc  [25] EURO-CURRENCY SIGN..TENGE SIGN
    9.45 +20A0..20B9    ; Common # Sc  [26] EURO-CURRENCY SIGN..INDIAN RUPEE SIGN
    9.46  2100..2101    ; Common # So   [2] ACCOUNT OF..ADDRESSED TO THE SUBJECT
    9.47  2102          ; Common # L&       DOUBLE-STRUCK CAPITAL C
    9.48  2103..2106    ; Common # So   [4] DEGREE CELSIUS..CADA UNA
    9.49 @@ -157,7 +155,8 @@
    9.50  210A..2113    ; Common # L&  [10] SCRIPT SMALL G..SCRIPT SMALL L
    9.51  2114          ; Common # So       L B BAR SYMBOL
    9.52  2115          ; Common # L&       DOUBLE-STRUCK CAPITAL N
    9.53 -2116..2118    ; Common # So   [3] NUMERO SIGN..SCRIPT CAPITAL P
    9.54 +2116..2117    ; Common # So   [2] NUMERO SIGN..SOUND RECORDING COPYRIGHT
    9.55 +2118          ; Common # Sm       SCRIPT CAPITAL P
    9.56  2119..211D    ; Common # L&   [5] DOUBLE-STRUCK CAPITAL P..DOUBLE-STRUCK CAPITAL R
    9.57  211E..2123    ; Common # So   [6] PRESCRIPTION TAKE..VERSICLE
    9.58  2124          ; Common # L&       DOUBLE-STRUCK CAPITAL Z
    9.59 @@ -213,7 +212,7 @@
    9.60  239B..23B3    ; Common # Sm  [25] LEFT PARENTHESIS UPPER HOOK..SUMMATION BOTTOM
    9.61  23B4..23DB    ; Common # So  [40] TOP SQUARE BRACKET..FUSE
    9.62  23DC..23E1    ; Common # Sm   [6] TOP PARENTHESIS..BOTTOM TORTOISE SHELL BRACKET
    9.63 -23E2..23E8    ; Common # So   [7] WHITE TRAPEZIUM..DECIMAL EXPONENT SYMBOL
    9.64 +23E2..23F3    ; Common # So  [18] WHITE TRAPEZIUM..HOURGLASS WITH FLOWING SAND
    9.65  2400..2426    ; Common # So  [39] SYMBOL FOR NULL..SYMBOL FOR SUBSTITUTE FORM TWO
    9.66  2440..244A    ; Common # So  [11] OCR HOOK..OCR DOUBLE BACKSLASH
    9.67  2460..249B    ; Common # No  [60] CIRCLED DIGIT ONE..NUMBER TWENTY FULL STOP
    9.68 @@ -227,18 +226,8 @@
    9.69  25F8..25FF    ; Common # Sm   [8] UPPER LEFT TRIANGLE..LOWER RIGHT TRIANGLE
    9.70  2600..266E    ; Common # So [111] BLACK SUN WITH RAYS..MUSIC NATURAL SIGN
    9.71  266F          ; Common # Sm       MUSIC SHARP SIGN
    9.72 -2670..26CD    ; Common # So  [94] WEST SYRIAC CROSS..DISABLED CAR
    9.73 -26CF..26E1    ; Common # So  [19] PICK..RESTRICTED LEFT ENTRY-2
    9.74 -26E3          ; Common # So       HEAVY CIRCLE WITH STROKE AND TWO DOTS ABOVE
    9.75 -26E8..26FF    ; Common # So  [24] BLACK CROSS ON SHIELD..WHITE FLAG WITH HORIZONTAL MIDDLE BLACK STRIPE
    9.76 -2701..2704    ; Common # So   [4] UPPER BLADE SCISSORS..WHITE SCISSORS
    9.77 -2706..2709    ; Common # So   [4] TELEPHONE LOCATION SIGN..ENVELOPE
    9.78 -270C..2727    ; Common # So  [28] VICTORY HAND..WHITE FOUR POINTED STAR
    9.79 -2729..274B    ; Common # So  [35] STRESS OUTLINED WHITE STAR..HEAVY EIGHT TEARDROP-SPOKED PROPELLER ASTERISK
    9.80 -274D          ; Common # So       SHADOWED WHITE CIRCLE
    9.81 -274F..2752    ; Common # So   [4] LOWER RIGHT DROP-SHADOWED WHITE SQUARE..UPPER RIGHT SHADOWED WHITE SQUARE
    9.82 -2756..275E    ; Common # So   [9] BLACK DIAMOND MINUS WHITE X..HEAVY DOUBLE COMMA QUOTATION MARK ORNAMENT
    9.83 -2761..2767    ; Common # So   [7] CURVED STEM PARAGRAPH SIGN ORNAMENT..ROTATED FLORAL HEART BULLET
    9.84 +2670..26FF    ; Common # So [144] WEST SYRIAC CROSS..WHITE FLAG WITH HORIZONTAL MIDDLE BLACK STRIPE
    9.85 +2701..2767    ; Common # So [103] UPPER BLADE SCISSORS..ROTATED FLORAL HEART BULLET
    9.86  2768          ; Common # Ps       MEDIUM LEFT PARENTHESIS ORNAMENT
    9.87  2769          ; Common # Pe       MEDIUM RIGHT PARENTHESIS ORNAMENT
    9.88  276A          ; Common # Ps       MEDIUM FLATTENED LEFT PARENTHESIS ORNAMENT
    9.89 @@ -254,15 +243,13 @@
    9.90  2774          ; Common # Ps       MEDIUM LEFT CURLY BRACKET ORNAMENT
    9.91  2775          ; Common # Pe       MEDIUM RIGHT CURLY BRACKET ORNAMENT
    9.92  2776..2793    ; Common # No  [30] DINGBAT NEGATIVE CIRCLED DIGIT ONE..DINGBAT NEGATIVE CIRCLED SANS-SERIF NUMBER TEN
    9.93 -2794          ; Common # So       HEAVY WIDE-HEADED RIGHTWARDS ARROW
    9.94 -2798..27AF    ; Common # So  [24] HEAVY SOUTH EAST ARROW..NOTCHED LOWER RIGHT-SHADOWED WHITE RIGHTWARDS ARROW
    9.95 -27B1..27BE    ; Common # So  [14] NOTCHED UPPER RIGHT-SHADOWED WHITE RIGHTWARDS ARROW..OPEN-OUTLINED RIGHTWARDS ARROW
    9.96 +2794..27BF    ; Common # So  [44] HEAVY WIDE-HEADED RIGHTWARDS ARROW..DOUBLE CURLY LOOP
    9.97  27C0..27C4    ; Common # Sm   [5] THREE DIMENSIONAL ANGLE..OPEN SUPERSET
    9.98  27C5          ; Common # Ps       LEFT S-SHAPED BAG DELIMITER
    9.99  27C6          ; Common # Pe       RIGHT S-SHAPED BAG DELIMITER
   9.100  27C7..27CA    ; Common # Sm   [4] OR WITH DOT INSIDE..VERTICAL BAR WITH HORIZONTAL STROKE
   9.101  27CC          ; Common # Sm       LONG DIVISION
   9.102 -27D0..27E5    ; Common # Sm  [22] WHITE DIAMOND WITH CENTRED DOT..WHITE SQUARE WITH RIGHTWARDS TICK
   9.103 +27CE..27E5    ; Common # Sm  [24] SQUARED LOGICAL AND..WHITE SQUARE WITH RIGHTWARDS TICK
   9.104  27E6          ; Common # Ps       MATHEMATICAL LEFT WHITE SQUARE BRACKET
   9.105  27E7          ; Common # Pe       MATHEMATICAL RIGHT WHITE SQUARE BRACKET
   9.106  27E8          ; Common # Ps       MATHEMATICAL LEFT ANGLE BRACKET
   9.107 @@ -555,27 +542,51 @@
   9.108  1D7CE..1D7FF  ; Common # Nd  [50] MATHEMATICAL BOLD DIGIT ZERO..MATHEMATICAL MONOSPACE DIGIT NINE
   9.109  1F000..1F02B  ; Common # So  [44] MAHJONG TILE EAST WIND..MAHJONG TILE BACK
   9.110  1F030..1F093  ; Common # So [100] DOMINO TILE HORIZONTAL BACK..DOMINO TILE VERTICAL-06-06
   9.111 +1F0A0..1F0AE  ; Common # So  [15] PLAYING CARD BACK..PLAYING CARD KING OF SPADES
   9.112 +1F0B1..1F0BE  ; Common # So  [14] PLAYING CARD ACE OF HEARTS..PLAYING CARD KING OF HEARTS
   9.113 +1F0C1..1F0CF  ; Common # So  [15] PLAYING CARD ACE OF DIAMONDS..PLAYING CARD BLACK JOKER
   9.114 +1F0D1..1F0DF  ; Common # So  [15] PLAYING CARD ACE OF CLUBS..PLAYING CARD WHITE JOKER
   9.115  1F100..1F10A  ; Common # No  [11] DIGIT ZERO FULL STOP..DIGIT NINE COMMA
   9.116  1F110..1F12E  ; Common # So  [31] PARENTHESIZED LATIN CAPITAL LETTER A..CIRCLED WZ
   9.117 -1F131         ; Common # So       SQUARED LATIN CAPITAL LETTER B
   9.118 -1F13D         ; Common # So       SQUARED LATIN CAPITAL LETTER N
   9.119 -1F13F         ; Common # So       SQUARED LATIN CAPITAL LETTER P
   9.120 -1F142         ; Common # So       SQUARED LATIN CAPITAL LETTER S
   9.121 -1F146         ; Common # So       SQUARED LATIN CAPITAL LETTER W
   9.122 -1F14A..1F14E  ; Common # So   [5] SQUARED HV..SQUARED PPV
   9.123 -1F157         ; Common # So       NEGATIVE CIRCLED LATIN CAPITAL LETTER H
   9.124 -1F15F         ; Common # So       NEGATIVE CIRCLED LATIN CAPITAL LETTER P
   9.125 -1F179         ; Common # So       NEGATIVE SQUARED LATIN CAPITAL LETTER J
   9.126 -1F17B..1F17C  ; Common # So   [2] NEGATIVE SQUARED LATIN CAPITAL LETTER L..NEGATIVE SQUARED LATIN CAPITAL LETTER M
   9.127 -1F17F         ; Common # So       NEGATIVE SQUARED LATIN CAPITAL LETTER P
   9.128 -1F18A..1F18D  ; Common # So   [4] CROSSED NEGATIVE SQUARED LATIN CAPITAL LETTER P..NEGATIVE SQUARED SA
   9.129 -1F190         ; Common # So       SQUARE DJ
   9.130 -1F210..1F231  ; Common # So  [34] SQUARED CJK UNIFIED IDEOGRAPH-624B..SQUARED CJK UNIFIED IDEOGRAPH-6253
   9.131 +1F130..1F169  ; Common # So  [58] SQUARED LATIN CAPITAL LETTER A..NEGATIVE CIRCLED LATIN CAPITAL LETTER Z
   9.132 +1F170..1F19A  ; Common # So  [43] NEGATIVE SQUARED LATIN CAPITAL LETTER A..SQUARED VS
   9.133 +1F1E6..1F1FF  ; Common # So  [26] REGIONAL INDICATOR SYMBOL LETTER A..REGIONAL INDICATOR SYMBOL LETTER Z
   9.134 +1F201..1F202  ; Common # So   [2] SQUARED KATAKANA KOKO..SQUARED KATAKANA SA
   9.135 +1F210..1F23A  ; Common # So  [43] SQUARED CJK UNIFIED IDEOGRAPH-624B..SQUARED CJK UNIFIED IDEOGRAPH-55B6
   9.136  1F240..1F248  ; Common # So   [9] TORTOISE SHELL BRACKETED CJK UNIFIED IDEOGRAPH-672C..TORTOISE SHELL BRACKETED CJK UNIFIED IDEOGRAPH-6557
   9.137 +1F250..1F251  ; Common # So   [2] CIRCLED IDEOGRAPH ADVANTAGE..CIRCLED IDEOGRAPH ACCEPT
   9.138 +1F300..1F320  ; Common # So  [33] CYCLONE..SHOOTING STAR
   9.139 +1F330..1F335  ; Common # So   [6] CHESTNUT..CACTUS
   9.140 +1F337..1F37C  ; Common # So  [70] TULIP..BABY BOTTLE
   9.141 +1F380..1F393  ; Common # So  [20] RIBBON..GRADUATION CAP
   9.142 +1F3A0..1F3C4  ; Common # So  [37] CAROUSEL HORSE..SURFER
   9.143 +1F3C6..1F3CA  ; Common # So   [5] TROPHY..SWIMMER
   9.144 +1F3E0..1F3F0  ; Common # So  [17] HOUSE BUILDING..EUROPEAN CASTLE
   9.145 +1F400..1F43E  ; Common # So  [63] RAT..PAW PRINTS
   9.146 +1F440         ; Common # So       EYES
   9.147 +1F442..1F4F7  ; Common # So [182] EAR..CAMERA
   9.148 +1F4F9..1F4FC  ; Common # So   [4] VIDEO CAMERA..VIDEOCASSETTE
   9.149 +1F500..1F53D  ; Common # So  [62] TWISTED RIGHTWARDS ARROWS..DOWN-POINTING SMALL RED TRIANGLE
   9.150 +1F550..1F567  ; Common # So  [24] CLOCK FACE ONE OCLOCK..CLOCK FACE TWELVE-THIRTY
   9.151 +1F5FB..1F5FF  ; Common # So   [5] MOUNT FUJI..MOYAI
   9.152 +1F601..1F610  ; Common # So  [16] GRINNING FACE WITH SMILING EYES..NEUTRAL FACE
   9.153 +1F612..1F614  ; Common # So   [3] UNAMUSED FACE..PENSIVE FACE
   9.154 +1F616         ; Common # So       CONFOUNDED FACE
   9.155 +1F618         ; Common # So       FACE THROWING A KISS
   9.156 +1F61A         ; Common # So       KISSING FACE WITH CLOSED EYES
   9.157 +1F61C..1F61E  ; Common # So   [3] FACE WITH STUCK-OUT TONGUE AND WINKING EYE..DISAPPOINTED FACE
   9.158 +1F620..1F625  ; Common # So   [6] ANGRY FACE..DISAPPOINTED BUT RELIEVED FACE
   9.159 +1F628..1F62B  ; Common # So   [4] FEARFUL FACE..TIRED FACE
   9.160 +1F62D         ; Common # So       LOUDLY CRYING FACE
   9.161 +1F630..1F633  ; Common # So   [4] FACE WITH OPEN MOUTH AND COLD SWEAT..FLUSHED FACE
   9.162 +1F635..1F640  ; Common # So  [12] DIZZY FACE..WEARY CAT FACE
   9.163 +1F645..1F64F  ; Common # So  [11] FACE WITH NO GOOD GESTURE..PERSON WITH FOLDED HANDS
   9.164 +1F680..1F6C5  ; Common # So  [70] ROCKET..LEFT LUGGAGE
   9.165 +1F700..1F773  ; Common # So [116] ALCHEMICAL SYMBOL FOR QUINTESSENCE..ALCHEMICAL SYMBOL FOR HALF OUNCE
   9.166  E0001         ; Common # Cf       LANGUAGE TAG
   9.167  E0020..E007F  ; Common # Cf  [96] TAG SPACE..CANCEL TAG
   9.168  
   9.169 -# Total code points: 5395
   9.170 +# Total code points: 6379
   9.171  
   9.172  # ================================================
   9.173  
   9.174 @@ -603,7 +614,7 @@
   9.175  1E00..1EFF    ; Latin # L& [256] LATIN CAPITAL LETTER A WITH RING BELOW..LATIN SMALL LETTER Y WITH LOOP
   9.176  2071          ; Latin # Lm       SUPERSCRIPT LATIN SMALL LETTER I
   9.177  207F          ; Latin # Lm       SUPERSCRIPT LATIN SMALL LETTER N
   9.178 -2090..2094    ; Latin # Lm   [5] LATIN SUBSCRIPT SMALL LETTER A..LATIN SUBSCRIPT SMALL LETTER SCHWA
   9.179 +2090..209C    ; Latin # Lm  [13] LATIN SUBSCRIPT SMALL LETTER A..LATIN SUBSCRIPT SMALL LETTER T
   9.180  212A..212B    ; Latin # L&   [2] KELVIN SIGN..ANGSTROM SIGN
   9.181  2132          ; Latin # L&       TURNED CAPITAL F
   9.182  214E          ; Latin # L&       TURNED SMALL F
   9.183 @@ -616,13 +627,16 @@
   9.184  A722..A76F    ; Latin # L&  [78] LATIN CAPITAL LETTER EGYPTOLOGICAL ALEF..LATIN SMALL LETTER CON
   9.185  A770          ; Latin # Lm       MODIFIER LETTER US
   9.186  A771..A787    ; Latin # L&  [23] LATIN SMALL LETTER DUM..LATIN SMALL LETTER INSULAR T
   9.187 -A78B..A78C    ; Latin # L&   [2] LATIN CAPITAL LETTER SALTILLO..LATIN SMALL LETTER SALTILLO
   9.188 +A78B..A78E    ; Latin # L&   [4] LATIN CAPITAL LETTER SALTILLO..LATIN SMALL LETTER L WITH RETROFLEX HOOK AND BELT
   9.189 +A790..A791    ; Latin # L&   [2] LATIN CAPITAL LETTER N WITH DESCENDER..LATIN SMALL LETTER N WITH DESCENDER
   9.190 +A7A0..A7A9    ; Latin # L&  [10] LATIN CAPITAL LETTER G WITH OBLIQUE STROKE..LATIN SMALL LETTER S WITH OBLIQUE STROKE
   9.191 +A7FA          ; Latin # L&       LATIN LETTER SMALL CAPITAL TURNED M
   9.192  A7FB..A7FF    ; Latin # Lo   [5] LATIN EPIGRAPHIC LETTER REVERSED F..LATIN EPIGRAPHIC LETTER ARCHAIC M
   9.193  FB00..FB06    ; Latin # L&   [7] LATIN SMALL LIGATURE FF..LATIN SMALL LIGATURE ST
   9.194  FF21..FF3A    ; Latin # L&  [26] FULLWIDTH LATIN CAPITAL LETTER A..FULLWIDTH LATIN CAPITAL LETTER Z
   9.195  FF41..FF5A    ; Latin # L&  [26] FULLWIDTH LATIN SMALL LETTER A..FULLWIDTH LATIN SMALL LETTER Z
   9.196  
   9.197 -# Total code points: 1244
   9.198 +# Total code points: 1267
   9.199  
   9.200  # ================================================
   9.201  
   9.202 @@ -687,12 +701,11 @@
   9.203  0483..0484    ; Cyrillic # Mn   [2] COMBINING CYRILLIC TITLO..COMBINING CYRILLIC PALATALIZATION
   9.204  0487          ; Cyrillic # Mn       COMBINING CYRILLIC POKRYTIE
   9.205  0488..0489    ; Cyrillic # Me   [2] COMBINING CYRILLIC HUNDRED THOUSANDS SIGN..COMBINING CYRILLIC MILLIONS SIGN
   9.206 -048A..0525    ; Cyrillic # L& [156] CYRILLIC CAPITAL LETTER SHORT I WITH TAIL..CYRILLIC SMALL LETTER PE WITH DESCENDER
   9.207 +048A..0527    ; Cyrillic # L& [158] CYRILLIC CAPITAL LETTER SHORT I WITH TAIL..CYRILLIC SMALL LETTER SHHA WITH DESCENDER
   9.208  1D2B          ; Cyrillic # L&       CYRILLIC LETTER SMALL CAPITAL EL
   9.209  1D78          ; Cyrillic # Lm       MODIFIER LETTER CYRILLIC EN
   9.210  2DE0..2DFF    ; Cyrillic # Mn  [32] COMBINING CYRILLIC LETTER BE..COMBINING CYRILLIC LETTER IOTIFIED BIG YUS
   9.211 -A640..A65F    ; Cyrillic # L&  [32] CYRILLIC CAPITAL LETTER ZEMLYA..CYRILLIC SMALL LETTER YN
   9.212 -A662..A66D    ; Cyrillic # L&  [12] CYRILLIC CAPITAL LETTER SOFT DE..CYRILLIC SMALL LETTER DOUBLE MONOCULAR O
   9.213 +A640..A66D    ; Cyrillic # L&  [46] CYRILLIC CAPITAL LETTER ZEMLYA..CYRILLIC SMALL LETTER DOUBLE MONOCULAR O
   9.214  A66E          ; Cyrillic # Lo       CYRILLIC LETTER MULTIOCULAR O
   9.215  A66F          ; Cyrillic # Mn       COMBINING CYRILLIC VZMET
   9.216  A670..A672    ; Cyrillic # Me   [3] COMBINING CYRILLIC TEN MILLIONS SIGN..COMBINING CYRILLIC THOUSAND MILLIONS SIGN
   9.217 @@ -702,7 +715,7 @@
   9.218  A67F          ; Cyrillic # Lm       CYRILLIC PAYEROK
   9.219  A680..A697    ; Cyrillic # L&  [24] CYRILLIC CAPITAL LETTER DWE..CYRILLIC SMALL LETTER SHWE
   9.220  
   9.221 -# Total code points: 404
   9.222 +# Total code points: 408
   9.223  
   9.224  # ================================================
   9.225  
   9.226 @@ -744,6 +757,7 @@
   9.227  
   9.228  # ================================================
   9.229  
   9.230 +0600..0603    ; Arabic # Cf   [4] ARABIC NUMBER SIGN..ARABIC SIGN SAFHA
   9.231  0606..0608    ; Arabic # Sm   [3] ARABIC-INDIC CUBE ROOT..ARABIC RAY
   9.232  0609..060A    ; Arabic # Po   [2] ARABIC-INDIC PER MILLE SIGN..ARABIC-INDIC PER TEN THOUSAND SIGN
   9.233  060B          ; Arabic # Sc       AFGHANI SIGN
   9.234 @@ -751,7 +765,7 @@
   9.235  060E..060F    ; Arabic # So   [2] ARABIC POETIC VERSE SIGN..ARABIC SIGN MISRA
   9.236  0610..061A    ; Arabic # Mn  [11] ARABIC SIGN SALLALLAHOU ALAYHE WASSALLAM..ARABIC SMALL KASRA
   9.237  061E          ; Arabic # Po       ARABIC TRIPLE DOT PUNCTUATION MARK
   9.238 -0621..063F    ; Arabic # Lo  [31] ARABIC LETTER HAMZA..ARABIC LETTER FARSI YEH WITH THREE DOTS ABOVE
   9.239 +0620..063F    ; Arabic # Lo  [32] ARABIC LETTER KASHMIRI YEH..ARABIC LETTER FARSI YEH WITH THREE DOTS ABOVE
   9.240  0641..064A    ; Arabic # Lo  [10] ARABIC LETTER FEH..ARABIC LETTER YEH
   9.241  0656..065E    ; Arabic # Mn   [9] ARABIC SUBSCRIPT ALEF..ARABIC FATHA WITH TWO DOTS
   9.242  066A..066D    ; Arabic # Po   [4] ARABIC PERCENT SIGN..ARABIC FIVE POINTED STAR
   9.243 @@ -760,7 +774,7 @@
   9.244  06D4          ; Arabic # Po       ARABIC FULL STOP
   9.245  06D5          ; Arabic # Lo       ARABIC LETTER AE
   9.246  06D6..06DC    ; Arabic # Mn   [7] ARABIC SMALL HIGH LIGATURE SAD WITH LAM WITH ALEF MAKSURA..ARABIC SMALL HIGH SEEN
   9.247 -06DE          ; Arabic # Me       ARABIC START OF RUB EL HIZB
   9.248 +06DE          ; Arabic # So       ARABIC START OF RUB EL HIZB
   9.249  06DF..06E4    ; Arabic # Mn   [6] ARABIC SMALL HIGH ROUNDED ZERO..ARABIC SMALL HIGH MADDA
   9.250  06E5..06E6    ; Arabic # Lm   [2] ARABIC SMALL WAW..ARABIC SMALL YEH
   9.251  06E7..06E8    ; Arabic # Mn   [2] ARABIC SMALL HIGH YEH..ARABIC SMALL HIGH NOON
   9.252 @@ -773,6 +787,7 @@
   9.253  06FF          ; Arabic # Lo       ARABIC LETTER HEH WITH INVERTED V
   9.254  0750..077F    ; Arabic # Lo  [48] ARABIC LETTER BEH WITH THREE DOTS HORIZONTALLY BELOW..ARABIC LETTER KAF WITH TWO DOTS ABOVE
   9.255  FB50..FBB1    ; Arabic # Lo  [98] ARABIC LETTER ALEF WASLA ISOLATED FORM..ARABIC LETTER YEH BARREE WITH HAMZA ABOVE FINAL FORM
   9.256 +FBB2..FBC1    ; Arabic # Sk  [16] ARABIC SYMBOL DOT ABOVE..ARABIC SYMBOL SMALL TAH BELOW
   9.257  FBD3..FD3D    ; Arabic # Lo [363] ARABIC LETTER NG ISOLATED FORM..ARABIC LIGATURE ALEF WITH FATHATAN ISOLATED FORM
   9.258  FD50..FD8F    ; Arabic # Lo  [64] ARABIC LIGATURE TEH WITH JEEM WITH MEEM INITIAL FORM..ARABIC LIGATURE MEEM WITH KHAH WITH MEEM INITIAL FORM
   9.259  FD92..FDC7    ; Arabic # Lo  [54] ARABIC LIGATURE MEEM WITH JEEM WITH KHAH INITIAL FORM..ARABIC LIGATURE NOON WITH JEEM WITH YEH FINAL FORM
   9.260 @@ -782,7 +797,7 @@
   9.261  FE76..FEFC    ; Arabic # Lo [135] ARABIC FATHA ISOLATED FORM..ARABIC LIGATURE LAM WITH ALEF FINAL FORM
   9.262  10E60..10E7E  ; Arabic # No  [31] RUMI DIGIT ONE..RUMI FRACTION TWO THIRDS
   9.263  
   9.264 -# Total code points: 1030
   9.265 +# Total code points: 1051
   9.266  
   9.267  # ================================================
   9.268  
   9.269 @@ -809,27 +824,29 @@
   9.270  0900..0902    ; Devanagari # Mn   [3] DEVANAGARI SIGN INVERTED CANDRABINDU..DEVANAGARI SIGN ANUSVARA
   9.271  0903          ; Devanagari # Mc       DEVANAGARI SIGN VISARGA
   9.272  0904..0939    ; Devanagari # Lo  [54] DEVANAGARI LETTER SHORT A..DEVANAGARI LETTER HA
   9.273 +093A          ; Devanagari # Mn       DEVANAGARI VOWEL SIGN OE
   9.274 +093B          ; Devanagari # Mc       DEVANAGARI VOWEL SIGN OOE
   9.275  093C          ; Devanagari # Mn       DEVANAGARI SIGN NUKTA
   9.276  093D          ; Devanagari # Lo       DEVANAGARI SIGN AVAGRAHA
   9.277  093E..0940    ; Devanagari # Mc   [3] DEVANAGARI VOWEL SIGN AA..DEVANAGARI VOWEL SIGN II
   9.278  0941..0948    ; Devanagari # Mn   [8] DEVANAGARI VOWEL SIGN U..DEVANAGARI VOWEL SIGN AI
   9.279  0949..094C    ; Devanagari # Mc   [4] DEVANAGARI VOWEL SIGN CANDRA O..DEVANAGARI VOWEL SIGN AU
   9.280  094D          ; Devanagari # Mn       DEVANAGARI SIGN VIRAMA
   9.281 -094E          ; Devanagari # Mc       DEVANAGARI VOWEL SIGN PRISHTHAMATRA E
   9.282 +094E..094F    ; Devanagari # Mc   [2] DEVANAGARI VOWEL SIGN PRISHTHAMATRA E..DEVANAGARI VOWEL SIGN AW
   9.283  0950          ; Devanagari # Lo       DEVANAGARI OM
   9.284 -0953..0955    ; Devanagari # Mn   [3] DEVANAGARI GRAVE ACCENT..DEVANAGARI VOWEL SIGN CANDRA LONG E
   9.285 +0953..0957    ; Devanagari # Mn   [5] DEVANAGARI GRAVE ACCENT..DEVANAGARI VOWEL SIGN UUE
   9.286  0958..0961    ; Devanagari # Lo  [10] DEVANAGARI LETTER QA..DEVANAGARI LETTER VOCALIC LL
   9.287  0962..0963    ; Devanagari # Mn   [2] DEVANAGARI VOWEL SIGN VOCALIC L..DEVANAGARI VOWEL SIGN VOCALIC LL
   9.288  0966..096F    ; Devanagari # Nd  [10] DEVANAGARI DIGIT ZERO..DEVANAGARI DIGIT NINE
   9.289  0971          ; Devanagari # Lm       DEVANAGARI SIGN HIGH SPACING DOT
   9.290 -0972          ; Devanagari # Lo       DEVANAGARI LETTER CANDRA A
   9.291 +0972..0977    ; Devanagari # Lo   [6] DEVANAGARI LETTER CANDRA A..DEVANAGARI LETTER UUE
   9.292  0979..097F    ; Devanagari # Lo   [7] DEVANAGARI LETTER ZHA..DEVANAGARI LETTER BBA
   9.293  A8E0..A8F1    ; Devanagari # Mn  [18] COMBINING DEVANAGARI DIGIT ZERO..COMBINING DEVANAGARI SIGN AVAGRAHA
   9.294  A8F2..A8F7    ; Devanagari # Lo   [6] DEVANAGARI SIGN SPACING CANDRABINDU..DEVANAGARI SIGN CANDRABINDU AVAGRAHA
   9.295  A8F8..A8FA    ; Devanagari # Po   [3] DEVANAGARI SIGN PUSHPIKA..DEVANAGARI CARET
   9.296  A8FB          ; Devanagari # Lo       DEVANAGARI HEADSTROKE
   9.297  
   9.298 -# Total code points: 140
   9.299 +# Total code points: 150
   9.300  
   9.301  # ================================================
   9.302  
   9.303 @@ -941,8 +958,9 @@
   9.304  0B66..0B6F    ; Oriya # Nd  [10] ORIYA DIGIT ZERO..ORIYA DIGIT NINE
   9.305  0B70          ; Oriya # So       ORIYA ISSHAR
   9.306  0B71          ; Oriya # Lo       ORIYA LETTER WA
   9.307 +0B72..0B77    ; Oriya # No   [6] ORIYA FRACTION ONE QUARTER..ORIYA FRACTION THREE SIXTEENTHS
   9.308  
   9.309 -# Total code points: 84
   9.310 +# Total code points: 90
   9.311  
   9.312  # ================================================
   9.313  
   9.314 @@ -1018,22 +1036,23 @@
   9.315  0CE0..0CE1    ; Kannada # Lo   [2] KANNADA LETTER VOCALIC RR..KANNADA LETTER VOCALIC LL
   9.316  0CE2..0CE3    ; Kannada # Mn   [2] KANNADA VOWEL SIGN VOCALIC L..KANNADA VOWEL SIGN VOCALIC LL
   9.317  0CE6..0CEF    ; Kannada # Nd  [10] KANNADA DIGIT ZERO..KANNADA DIGIT NINE
   9.318 +0CF1..0CF2    ; Kannada # Lo   [2] KANNADA SIGN JIHVAMULIYA..KANNADA SIGN UPADHMANIYA
   9.319  
   9.320 -# Total code points: 84
   9.321 +# Total code points: 86
   9.322  
   9.323  # ================================================
   9.324  
   9.325  0D02..0D03    ; Malayalam # Mc   [2] MALAYALAM SIGN ANUSVARA..MALAYALAM SIGN VISARGA
   9.326  0D05..0D0C    ; Malayalam # Lo   [8] MALAYALAM LETTER A..MALAYALAM LETTER VOCALIC L
   9.327  0D0E..0D10    ; Malayalam # Lo   [3] MALAYALAM LETTER E..MALAYALAM LETTER AI
   9.328 -0D12..0D28    ; Malayalam # Lo  [23] MALAYALAM LETTER O..MALAYALAM LETTER NA
   9.329 -0D2A..0D39    ; Malayalam # Lo  [16] MALAYALAM LETTER PA..MALAYALAM LETTER HA
   9.330 +0D12..0D3A    ; Malayalam # Lo  [41] MALAYALAM LETTER O..MALAYALAM LETTER TTTA
   9.331  0D3D          ; Malayalam # Lo       MALAYALAM SIGN AVAGRAHA
   9.332  0D3E..0D40    ; Malayalam # Mc   [3] MALAYALAM VOWEL SIGN AA..MALAYALAM VOWEL SIGN II
   9.333  0D41..0D44    ; Malayalam # Mn   [4] MALAYALAM VOWEL SIGN U..MALAYALAM VOWEL SIGN VOCALIC RR
   9.334  0D46..0D48    ; Malayalam # Mc   [3] MALAYALAM VOWEL SIGN E..MALAYALAM VOWEL SIGN AI
   9.335  0D4A..0D4C    ; Malayalam # Mc   [3] MALAYALAM VOWEL SIGN O..MALAYALAM VOWEL SIGN AU
   9.336  0D4D          ; Malayalam # Mn       MALAYALAM SIGN VIRAMA
   9.337 +0D4E          ; Malayalam # Lo       MALAYALAM LETTER DOT REPH
   9.338  0D57          ; Malayalam # Mc       MALAYALAM AU LENGTH MARK
   9.339  0D60..0D61    ; Malayalam # Lo   [2] MALAYALAM LETTER VOCALIC RR..MALAYALAM LETTER VOCALIC LL
   9.340  0D62..0D63    ; Malayalam # Mn   [2] MALAYALAM VOWEL SIGN VOCALIC L..MALAYALAM VOWEL SIGN VOCALIC LL
   9.341 @@ -1042,7 +1061,7 @@
   9.342  0D79          ; Malayalam # So       MALAYALAM DATE MARK
   9.343  0D7A..0D7F    ; Malayalam # Lo   [6] MALAYALAM LETTER CHILLU NN..MALAYALAM LETTER CHILLU K
   9.344  
   9.345 -# Total code points: 95
   9.346 +# Total code points: 98
   9.347  
   9.348  # ================================================
   9.349  
   9.350 @@ -1132,16 +1151,17 @@
   9.351  0F80..0F84    ; Tibetan # Mn   [5] TIBETAN VOWEL SIGN REVERSED I..TIBETAN MARK HALANTA
   9.352  0F85          ; Tibetan # Po       TIBETAN MARK PALUTA
   9.353  0F86..0F87    ; Tibetan # Mn   [2] TIBETAN SIGN LCI RTAGS..TIBETAN SIGN YANG RTAGS
   9.354 -0F88..0F8B    ; Tibetan # Lo   [4] TIBETAN SIGN LCE TSA CAN..TIBETAN SIGN GRU MED RGYINGS
   9.355 -0F90..0F97    ; Tibetan # Mn   [8] TIBETAN SUBJOINED LETTER KA..TIBETAN SUBJOINED LETTER JA
   9.356 +0F88..0F8C    ; Tibetan # Lo   [5] TIBETAN SIGN LCE TSA CAN..TIBETAN SIGN INVERTED MCHU CAN
   9.357 +0F8D..0F97    ; Tibetan # Mn  [11] TIBETAN SUBJOINED SIGN LCE TSA CAN..TIBETAN SUBJOINED LETTER JA
   9.358  0F99..0FBC    ; Tibetan # Mn  [36] TIBETAN SUBJOINED LETTER NYA..TIBETAN SUBJOINED LETTER FIXED-FORM RA
   9.359  0FBE..0FC5    ; Tibetan # So   [8] TIBETAN KU RU KHA..TIBETAN SYMBOL RDO RJE
   9.360  0FC6          ; Tibetan # Mn       TIBETAN SYMBOL PADMA GDAN
   9.361  0FC7..0FCC    ; Tibetan # So   [6] TIBETAN SYMBOL RDO RJE RGYA GRAM..TIBETAN SYMBOL NOR BU BZHI -KHYIL
   9.362  0FCE..0FCF    ; Tibetan # So   [2] TIBETAN SIGN RDEL NAG RDEL DKAR..TIBETAN SIGN RDEL NAG GSUM
   9.363  0FD0..0FD4    ; Tibetan # Po   [5] TIBETAN MARK BSKA- SHOG GI MGO RGYAN..TIBETAN MARK CLOSING BRDA RNYING YIG MGO SGAB MA
   9.364 +0FD9..0FDA    ; Tibetan # Po   [2] TIBETAN MARK LEADING MCHAN RTAGS..TIBETAN MARK TRAILING MCHAN RTAGS
   9.365  
   9.366 -# Total code points: 201
   9.367 +# Total code points: 207
   9.368  
   9.369  # ================================================
   9.370  
   9.371 @@ -1201,6 +1221,7 @@
   9.372  # ================================================
   9.373  
   9.374  1100..11FF    ; Hangul # Lo [256] HANGUL CHOSEONG KIYEOK..HANGUL JONGSEONG SSANGNIEUN
   9.375 +302E..302F    ; Hangul # Mn   [2] HANGUL SINGLE DOT TONE MARK..HANGUL DOUBLE DOT TONE MARK
   9.376  3131..318E    ; Hangul # Lo  [94] HANGUL LETTER KIYEOK..HANGUL LETTER ARAEAE
   9.377  3200..321E    ; Hangul # So  [31] PARENTHESIZED HANGUL KIYEOK..PARENTHESIZED KOREAN CHARACTER O HU
   9.378  3260..327E    ; Hangul # So  [31] CIRCLED HANGUL KIYEOK..CIRCLED HANGUL IEUNG U
   9.379 @@ -1214,7 +1235,7 @@
   9.380  FFD2..FFD7    ; Hangul # Lo   [6] HALFWIDTH HANGUL LETTER YO..HALFWIDTH HANGUL LETTER YU
   9.381  FFDA..FFDC    ; Hangul # Lo   [3] HALFWIDTH HANGUL LETTER EU..HALFWIDTH HANGUL LETTER I
   9.382  
   9.383 -# Total code points: 11737
   9.384 +# Total code points: 11739
   9.385  
   9.386  # ================================================
   9.387  
   9.388 @@ -1234,7 +1255,7 @@
   9.389  12D8..1310    ; Ethiopic # Lo  [57] ETHIOPIC SYLLABLE ZA..ETHIOPIC SYLLABLE GWA
   9.390  1312..1315    ; Ethiopic # Lo   [4] ETHIOPIC SYLLABLE GWI..ETHIOPIC SYLLABLE GWE
   9.391  1318..135A    ; Ethiopic # Lo  [67] ETHIOPIC SYLLABLE GGA..ETHIOPIC SYLLABLE FYA
   9.392 -135F          ; Ethiopic # Mn       ETHIOPIC COMBINING GEMINATION MARK
   9.393 +135D..135F    ; Ethiopic # Mn   [3] ETHIOPIC COMBINING GEMINATION AND VOWEL LENGTH MARK..ETHIOPIC COMBINING GEMINATION MARK
   9.394  1360          ; Ethiopic # So       ETHIOPIC SECTION MARK
   9.395  1361..1368    ; Ethiopic # Po   [8] ETHIOPIC WORDSPACE..ETHIOPIC PARAGRAPH SEPARATOR
   9.396  1369..137C    ; Ethiopic # No  [20] ETHIOPIC DIGIT ONE..ETHIOPIC NUMBER TEN THOUSAND
   9.397 @@ -1249,8 +1270,13 @@
   9.398  2DC8..2DCE    ; Ethiopic # Lo   [7] ETHIOPIC SYLLABLE KYA..ETHIOPIC SYLLABLE KYO
   9.399  2DD0..2DD6    ; Ethiopic # Lo   [7] ETHIOPIC SYLLABLE XYA..ETHIOPIC SYLLABLE XYO
   9.400  2DD8..2DDE    ; Ethiopic # Lo   [7] ETHIOPIC SYLLABLE GYA..ETHIOPIC SYLLABLE GYO
   9.401 +AB01..AB06    ; Ethiopic # Lo   [6] ETHIOPIC SYLLABLE TTHU..ETHIOPIC SYLLABLE TTHO
   9.402 +AB09..AB0E    ; Ethiopic # Lo   [6] ETHIOPIC SYLLABLE DDHU..ETHIOPIC SYLLABLE DDHO
   9.403 +AB11..AB16    ; Ethiopic # Lo   [6] ETHIOPIC SYLLABLE DZU..ETHIOPIC SYLLABLE DZO
   9.404 +AB20..AB26    ; Ethiopic # Lo   [7] ETHIOPIC SYLLABLE CCHHA..ETHIOPIC SYLLABLE CCHHO
   9.405 +AB28..AB2E    ; Ethiopic # Lo   [7] ETHIOPIC SYLLABLE BBA..ETHIOPIC SYLLABLE BBO
   9.406  
   9.407 -# Total code points: 461
   9.408 +# Total code points: 495
   9.409  
   9.410  # ================================================
   9.411  
   9.412 @@ -1329,9 +1355,10 @@
   9.413  3041..3096    ; Hiragana # Lo  [86] HIRAGANA LETTER SMALL A..HIRAGANA LETTER SMALL KE
   9.414  309D..309E    ; Hiragana # Lm   [2] HIRAGANA ITERATION MARK..HIRAGANA VOICED ITERATION MARK
   9.415  309F          ; Hiragana # Lo       HIRAGANA DIGRAPH YORI
   9.416 +1B001         ; Hiragana # Lo       HIRAGANA LETTER ARCHAIC YE
   9.417  1F200         ; Hiragana # So       SQUARE HIRAGANA HOKA
   9.418  
   9.419 -# Total code points: 90
   9.420 +# Total code points: 91
   9.421  
   9.422  # ================================================
   9.423  
   9.424 @@ -1343,15 +1370,17 @@
   9.425  3300..3357    ; Katakana # So  [88] SQUARE APAATO..SQUARE WATTO
   9.426  FF66..FF6F    ; Katakana # Lo  [10] HALFWIDTH KATAKANA LETTER WO..HALFWIDTH KATAKANA LETTER SMALL TU
   9.427  FF71..FF9D    ; Katakana # Lo  [45] HALFWIDTH KATAKANA LETTER A..HALFWIDTH KATAKANA LETTER N
   9.428 +1B000         ; Katakana # Lo       KATAKANA LETTER ARCHAIC E
   9.429  
   9.430 -# Total code points: 299
   9.431 +# Total code points: 300
   9.432  
   9.433  # ================================================
   9.434  
   9.435 +02EA..02EB    ; Bopomofo # Sk   [2] MODIFIER LETTER YIN DEPARTING TONE MARK..MODIFIER LETTER YANG DEPARTING TONE MARK
   9.436  3105..312D    ; Bopomofo # Lo  [41] BOPOMOFO LETTER B..BOPOMOFO LETTER IH
   9.437 -31A0..31B7    ; Bopomofo # Lo  [24] BOPOMOFO LETTER BU..BOPOMOFO FINAL LETTER H
   9.438 +31A0..31BA    ; Bopomofo # Lo  [27] BOPOMOFO LETTER BU..BOPOMOFO LETTER ZY
   9.439  
   9.440 -# Total code points: 65
   9.441 +# Total code points: 70
   9.442  
   9.443  # ================================================
   9.444  
   9.445 @@ -1370,9 +1399,10 @@
   9.446  FA70..FAD9    ; Han # Lo [106] CJK COMPATIBILITY IDEOGRAPH-FA70..CJK COMPATIBILITY IDEOGRAPH-FAD9
   9.447  20000..2A6D6  ; Han # Lo [42711] CJK UNIFIED IDEOGRAPH-20000..CJK UNIFIED IDEOGRAPH-2A6D6
   9.448  2A700..2B734  ; Han # Lo [4149] CJK UNIFIED IDEOGRAPH-2A700..CJK UNIFIED IDEOGRAPH-2B734
   9.449 +2B740..2B81D  ; Han # Lo [222] CJK UNIFIED IDEOGRAPH-2B740..CJK UNIFIED IDEOGRAPH-2B81D
   9.450  2F800..2FA1D  ; Han # Lo [542] CJK COMPATIBILITY IDEOGRAPH-2F800..CJK COMPATIBILITY IDEOGRAPH-2FA1D
   9.451  
   9.452 -# Total code points: 75738
   9.453 +# Total code points: 75960
   9.454  
   9.455  # ================================================
   9.456  
   9.457 @@ -1410,6 +1440,7 @@
   9.458  0300..036F    ; Inherited # Mn [112] COMBINING GRAVE ACCENT..COMBINING LATIN SMALL LETTER X
   9.459  0485..0486    ; Inherited # Mn   [2] COMBINING CYRILLIC DASIA PNEUMATA..COMBINING CYRILLIC PSILI PNEUMATA
   9.460  064B..0655    ; Inherited # Mn  [11] ARABIC FATHATAN..ARABIC HAMZA BELOW
   9.461 +065F          ; Inherited # Mn       ARABIC WAVY HAMZA BELOW
   9.462  0670          ; Inherited # Mn       ARABIC LETTER SUPERSCRIPT ALEF
   9.463  0951..0952    ; Inherited # Mn   [2] DEVANAGARI STRESS SIGN UDATTA..DEVANAGARI STRESS SIGN ANUDATTA
   9.464  1CD0..1CD2    ; Inherited # Mn   [3] VEDIC TONE KARSHANA..VEDIC TONE PRENKHA
   9.465 @@ -1417,14 +1448,14 @@
   9.466  1CE2..1CE8    ; Inherited # Mn   [7] VEDIC SIGN VISARGA SVARITA..VEDIC SIGN VISARGA ANUDATTA WITH TAIL
   9.467  1CED          ; Inherited # Mn       VEDIC SIGN TIRYAK
   9.468  1DC0..1DE6    ; Inherited # Mn  [39] COMBINING DOTTED GRAVE ACCENT..COMBINING LATIN SMALL LETTER Z
   9.469 -1DFD..1DFF    ; Inherited # Mn   [3] COMBINING ALMOST EQUAL TO BELOW..COMBINING RIGHT ARROWHEAD AND DOWN ARROWHEAD BELOW
   9.470 +1DFC..1DFF    ; Inherited # Mn   [4] COMBINING DOUBLE INVERTED BREVE BELOW..COMBINING RIGHT ARROWHEAD AND DOWN ARROWHEAD BELOW
   9.471  200C..200D    ; Inherited # Cf   [2] ZERO WIDTH NON-JOINER..ZERO WIDTH JOINER
   9.472  20D0..20DC    ; Inherited # Mn  [13] COMBINING LEFT HARPOON ABOVE..COMBINING FOUR DOTS ABOVE
   9.473  20DD..20E0    ; Inherited # Me   [4] COMBINING ENCLOSING CIRCLE..COMBINING ENCLOSING CIRCLE BACKSLASH
   9.474  20E1          ; Inherited # Mn       COMBINING LEFT RIGHT ARROW ABOVE
   9.475  20E2..20E4    ; Inherited # Me   [3] COMBINING ENCLOSING SCREEN..COMBINING ENCLOSING UPWARD POINTING TRIANGLE
   9.476  20E5..20F0    ; Inherited # Mn  [12] COMBINING REVERSE SOLIDUS OVERLAY..COMBINING ASTERISK ABOVE
   9.477 -302A..302F    ; Inherited # Mn   [6] IDEOGRAPHIC LEVEL TONE MARK..HANGUL DOUBLE DOT TONE MARK
   9.478 +302A..302D    ; Inherited # Mn   [4] IDEOGRAPHIC LEVEL TONE MARK..IDEOGRAPHIC ENTERING TONE MARK
   9.479  3099..309A    ; Inherited # Mn   [2] COMBINING KATAKANA-HIRAGANA VOICED SOUND MARK..COMBINING KATAKANA-HIRAGANA SEMI-VOICED SOUND MARK
   9.480  FE00..FE0F    ; Inherited # Mn  [16] VARIATION SELECTOR-1..VARIATION SELECTOR-16
   9.481  FE20..FE26    ; Inherited # Mn   [7] COMBINING LIGATURE LEFT HALF..COMBINING CONJOINING MACRON
   9.482 @@ -1568,8 +1599,9 @@
   9.483  19B0..19C0    ; New_Tai_Lue # Mc  [17] NEW TAI LUE VOWEL SIGN VOWEL SHORTENER..NEW TAI LUE VOWEL SIGN IY
   9.484  19C1..19C7    ; New_Tai_Lue # Lo   [7] NEW TAI LUE LETTER FINAL V..NEW TAI LUE LETTER FINAL B
   9.485  19C8..19C9    ; New_Tai_Lue # Mc   [2] NEW TAI LUE TONE MARK-1..NEW TAI LUE TONE MARK-2
   9.486 -19D0..19DA    ; New_Tai_Lue # Nd  [11] NEW TAI LUE DIGIT ZERO..NEW TAI LUE THAM DIGIT ONE
   9.487 -19DE..19DF    ; New_Tai_Lue # Po   [2] NEW TAI LUE SIGN LAE..NEW TAI LUE SIGN LAEV
   9.488 +19D0..19D9    ; New_Tai_Lue # Nd  [10] NEW TAI LUE DIGIT ZERO..NEW TAI LUE DIGIT NINE
   9.489 +19DA          ; New_Tai_Lue # No       NEW TAI LUE THAM DIGIT ONE
   9.490 +19DE..19DF    ; New_Tai_Lue # So   [2] NEW TAI LUE SIGN LAE..NEW TAI LUE SIGN LAEV
   9.491  
   9.492  # Total code points: 83
   9.493  
   9.494 @@ -1584,8 +1616,10 @@
   9.495  
   9.496  2D30..2D65    ; Tifinagh # Lo  [54] TIFINAGH LETTER YA..TIFINAGH LETTER YAZZ
   9.497  2D6F          ; Tifinagh # Lm       TIFINAGH MODIFIER LETTER LABIALIZATION MARK
   9.498 +2D70          ; Tifinagh # Po       TIFINAGH SEPARATOR MARK
   9.499 +2D7F          ; Tifinagh # Mn       TIFINAGH CONSONANT JOINER
   9.500  
   9.501 -# Total code points: 55
   9.502 +# Total code points: 57
   9.503  
   9.504  # ================================================
   9.505  
   9.506 @@ -1882,8 +1916,9 @@
   9.507  A6E6..A6EF    ; Bamum # Nl  [10] BAMUM LETTER MO..BAMUM LETTER KOGHOM
   9.508  A6F0..A6F1    ; Bamum # Mn   [2] BAMUM COMBINING MARK KOQNDON..BAMUM COMBINING MARK TUKWENTIS
   9.509  A6F2..A6F7    ; Bamum # Po   [6] BAMUM NJAEMLI..BAMUM QUESTION MARK
   9.510 +16800..16A38  ; Bamum # Lo [569] BAMUM LETTER PHASE-A NGKUE MFON..BAMUM LETTER PHASE-F VUEQ
   9.511  
   9.512 -# Total code points: 88
   9.513 +# Total code points: 657
   9.514  
   9.515  # ================================================
   9.516  
   9.517 @@ -1969,4 +2004,40 @@
   9.518  
   9.519  # Total code points: 66
   9.520  
   9.521 +# ================================================
   9.522 +
   9.523 +1BC0..1BE5    ; Batak # Lo  [38] BATAK LETTER A..BATAK LETTER U
   9.524 +1BE6          ; Batak # Mn       BATAK SIGN TOMPI
   9.525 +1BE7          ; Batak # Mc       BATAK VOWEL SIGN E
   9.526 +1BE8..1BE9    ; Batak # Mn   [2] BATAK VOWEL SIGN PAKPAK E..BATAK VOWEL SIGN EE
   9.527 +1BEA..1BEC    ; Batak # Mc   [3] BATAK VOWEL SIGN I..BATAK VOWEL SIGN O
   9.528 +1BED          ; Batak # Mn       BATAK VOWEL SIGN KARO O
   9.529 +1BEE          ; Batak # Mc       BATAK VOWEL SIGN U
   9.530 +1BEF..1BF1    ; Batak # Mn   [3] BATAK VOWEL SIGN U FOR SIMALUNGUN SA..BATAK CONSONANT SIGN H
   9.531 +1BF2..1BF3    ; Batak # Mc   [2] BATAK PANGOLAT..BATAK PANONGONAN
   9.532 +1BFC..1BFF    ; Batak # Po   [4] BATAK SYMBOL BINDU NA METEK..BATAK SYMBOL BINDU PANGOLAT
   9.533 +
   9.534 +# Total code points: 56
   9.535 +
   9.536 +# ================================================
   9.537 +
   9.538 +11000         ; Brahmi # Mc       BRAHMI SIGN CANDRABINDU
   9.539 +11001         ; Brahmi # Mn       BRAHMI SIGN ANUSVARA
   9.540 +11002         ; Brahmi # Mc       BRAHMI SIGN VISARGA
   9.541 +11003..11037  ; Brahmi # Lo  [53] BRAHMI SIGN JIHVAMULIYA..BRAHMI LETTER OLD TAMIL NNNA
   9.542 +11038..11046  ; Brahmi # Mn  [15] BRAHMI VOWEL SIGN AA..BRAHMI VIRAMA
   9.543 +11047..1104D  ; Brahmi # Po   [7] BRAHMI DANDA..BRAHMI PUNCTUATION LOTUS
   9.544 +11052..11065  ; Brahmi # No  [20] BRAHMI NUMBER ONE..BRAHMI NUMBER ONE THOUSAND
   9.545 +11066..1106F  ; Brahmi # Nd  [10] BRAHMI DIGIT ZERO..BRAHMI DIGIT NINE
   9.546 +
   9.547 +# Total code points: 108
   9.548 +
   9.549 +# ================================================
   9.550 +
   9.551 +0840..0858    ; Mandaic # Lo  [25] MANDAIC LETTER HALQA..MANDAIC LETTER AIN
   9.552 +0859..085B    ; Mandaic # Mn   [3] MANDAIC AFFRICATION MARK..MANDAIC GEMINATION MARK
   9.553 +085E          ; Mandaic # Po       MANDAIC PUNCTUATION
   9.554 +
   9.555 +# Total code points: 29
   9.556 +
   9.557  # EOF
    10.1 --- a/make/tools/UnicodeData/SpecialCasing.txt	Tue Nov 30 09:57:47 2010 -0800
    10.2 +++ b/make/tools/UnicodeData/SpecialCasing.txt	Wed Dec 08 00:35:33 2010 -0800
    10.3 @@ -1,10 +1,10 @@
    10.4 -# SpecialCasing-5.1.0.txt
    10.5 -# Date: 2008-03-03, 21:58:10 GMT [MD]
    10.6 +# SpecialCasing-6.0.0.txt
    10.7 +# Date: 2010-05-18, 00:49:39 GMT [MD]
    10.8  #
    10.9  # Unicode Character Database
   10.10 -# Copyright (c) 1991-2008 Unicode, Inc.
   10.11 +# Copyright (c) 1991-2010 Unicode, Inc.
   10.12  # For terms of use, see http://www.unicode.org/terms_of_use.html
   10.13 -# For documentation, see UCD.html
   10.14 +# For documentation, see http://www.unicode.org/reports/tr44/
   10.15  #
   10.16  # Special Casing Properties
   10.17  #
   10.18 @@ -106,11 +106,11 @@
   10.19  1FE7; 1FE7; 03A5 0308 0342; 03A5 0308 0342; # GREEK SMALL LETTER UPSILON WITH DIALYTIKA AND PERISPOMENI
   10.20  1FF6; 1FF6; 03A9 0342; 03A9 0342; # GREEK SMALL LETTER OMEGA WITH PERISPOMENI
   10.21  
   10.22 -# IMPORTANT-when capitalizing iota-subscript (0345)
   10.23 -#  It MUST be in normalized form--moved to the end of any sequence of combining marks.
   10.24 -#  This is because logically it represents a following base character!
   10.25 -#  E.g. <iota_subscript> (<Mn> | <Mc> | <Me>)+ => (<Mn> | <Mc> | <Me>)+ <iota_subscript>
   10.26 -# It should never be the first character in a word, so in titlecasing it can be left as is.
   10.27 +# IMPORTANT-when iota-subscript (0345) is uppercased or titlecased,
   10.28 +#  the result will be incorrect unless the iota-subscript is moved to the end
   10.29 +#  of any sequence of combining marks. Otherwise, the accents will go on the capital iota.
   10.30 +#  This process can be achieved by first transforming the text to NFC before casing.
   10.31 +#  E.g. <alpha><iota_subscript><acute> is uppercased to <ALPHA><acute><IOTA>
   10.32  
   10.33  # The following cases are already in the UnicodeData file, so are only commented here.
   10.34  
    11.1 --- a/make/tools/UnicodeData/UnicodeData.txt	Tue Nov 30 09:57:47 2010 -0800
    11.2 +++ b/make/tools/UnicodeData/UnicodeData.txt	Wed Dec 08 00:35:33 2010 -0800
    11.3 @@ -169,7 +169,7 @@
    11.4  00A8;DIAERESIS;Sk;0;ON;<compat> 0020 0308;;;;N;SPACING DIAERESIS;;;;
    11.5  00A9;COPYRIGHT SIGN;So;0;ON;;;;;N;;;;;
    11.6  00AA;FEMININE ORDINAL INDICATOR;Ll;0;L;<super> 0061;;;;N;;;;;
    11.7 -00AB;LEFT-POINTING DOUBLE ANGLE QUOTATION MARK;Pi;0;ON;;;;;Y;LEFT POINTING GUILLEMET;*;;;
    11.8 +00AB;LEFT-POINTING DOUBLE ANGLE QUOTATION MARK;Pi;0;ON;;;;;Y;LEFT POINTING GUILLEMET;;;;
    11.9  00AC;NOT SIGN;Sm;0;ON;;;;;N;;;;;
   11.10  00AD;SOFT HYPHEN;Cf;0;BN;;;;;N;;;;;
   11.11  00AE;REGISTERED SIGN;So;0;ON;;;;;N;REGISTERED TRADE MARK SIGN;;;;
   11.12 @@ -185,7 +185,7 @@
   11.13  00B8;CEDILLA;Sk;0;ON;<compat> 0020 0327;;;;N;SPACING CEDILLA;;;;
   11.14  00B9;SUPERSCRIPT ONE;No;0;EN;<super> 0031;;1;1;N;SUPERSCRIPT DIGIT ONE;;;;
   11.15  00BA;MASCULINE ORDINAL INDICATOR;Ll;0;L;<super> 006F;;;;N;;;;;
   11.16 -00BB;RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK;Pf;0;ON;;;;;Y;RIGHT POINTING GUILLEMET;*;;;
   11.17 +00BB;RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK;Pf;0;ON;;;;;Y;RIGHT POINTING GUILLEMET;;;;
   11.18  00BC;VULGAR FRACTION ONE QUARTER;No;0;ON;<fraction> 0031 2044 0034;;;1/4;N;FRACTION ONE QUARTER;;;;
   11.19  00BD;VULGAR FRACTION ONE HALF;No;0;ON;<fraction> 0031 2044 0032;;;1/2;N;FRACTION ONE HALF;;;;
   11.20  00BE;VULGAR FRACTION THREE QUARTERS;No;0;ON;<fraction> 0033 2044 0034;;;3/4;N;FRACTION THREE QUARTERS;;;;
   11.21 @@ -196,7 +196,7 @@
   11.22  00C3;LATIN CAPITAL LETTER A WITH TILDE;Lu;0;L;0041 0303;;;;N;LATIN CAPITAL LETTER A TILDE;;;00E3;
   11.23  00C4;LATIN CAPITAL LETTER A WITH DIAERESIS;Lu;0;L;0041 0308;;;;N;LATIN CAPITAL LETTER A DIAERESIS;;;00E4;
   11.24  00C5;LATIN CAPITAL LETTER A WITH RING ABOVE;Lu;0;L;0041 030A;;;;N;LATIN CAPITAL LETTER A RING;;;00E5;
   11.25 -00C6;LATIN CAPITAL LETTER AE;Lu;0;L;;;;;N;LATIN CAPITAL LETTER A E;ash *;;00E6;
   11.26 +00C6;LATIN CAPITAL LETTER AE;Lu;0;L;;;;;N;LATIN CAPITAL LETTER A E;;;00E6;
   11.27  00C7;LATIN CAPITAL LETTER C WITH CEDILLA;Lu;0;L;0043 0327;;;;N;LATIN CAPITAL LETTER C CEDILLA;;;00E7;
   11.28  00C8;LATIN CAPITAL LETTER E WITH GRAVE;Lu;0;L;0045 0300;;;;N;LATIN CAPITAL LETTER E GRAVE;;;00E8;
   11.29  00C9;LATIN CAPITAL LETTER E WITH ACUTE;Lu;0;L;0045 0301;;;;N;LATIN CAPITAL LETTER E ACUTE;;;00E9;
   11.30 @@ -206,7 +206,7 @@
   11.31  00CD;LATIN CAPITAL LETTER I WITH ACUTE;Lu;0;L;0049 0301;;;;N;LATIN CAPITAL LETTER I ACUTE;;;00ED;
   11.32  00CE;LATIN CAPITAL LETTER I WITH CIRCUMFLEX;Lu;0;L;0049 0302;;;;N;LATIN CAPITAL LETTER I CIRCUMFLEX;;;00EE;
   11.33  00CF;LATIN CAPITAL LETTER I WITH DIAERESIS;Lu;0;L;0049 0308;;;;N;LATIN CAPITAL LETTER I DIAERESIS;;;00EF;
   11.34 -00D0;LATIN CAPITAL LETTER ETH;Lu;0;L;;;;;N;;Icelandic;;00F0;
   11.35 +00D0;LATIN CAPITAL LETTER ETH;Lu;0;L;;;;;N;;;;00F0;
   11.36  00D1;LATIN CAPITAL LETTER N WITH TILDE;Lu;0;L;004E 0303;;;;N;LATIN CAPITAL LETTER N TILDE;;;00F1;
   11.37  00D2;LATIN CAPITAL LETTER O WITH GRAVE;Lu;0;L;004F 0300;;;;N;LATIN CAPITAL LETTER O GRAVE;;;00F2;
   11.38  00D3;LATIN CAPITAL LETTER O WITH ACUTE;Lu;0;L;004F 0301;;;;N;LATIN CAPITAL LETTER O ACUTE;;;00F3;
   11.39 @@ -220,15 +220,15 @@
   11.40  00DB;LATIN CAPITAL LETTER U WITH CIRCUMFLEX;Lu;0;L;0055 0302;;;;N;LATIN CAPITAL LETTER U CIRCUMFLEX;;;00FB;
   11.41  00DC;LATIN CAPITAL LETTER U WITH DIAERESIS;Lu;0;L;0055 0308;;;;N;LATIN CAPITAL LETTER U DIAERESIS;;;00FC;
   11.42  00DD;LATIN CAPITAL LETTER Y WITH ACUTE;Lu;0;L;0059 0301;;;;N;LATIN CAPITAL LETTER Y ACUTE;;;00FD;
   11.43 -00DE;LATIN CAPITAL LETTER THORN;Lu;0;L;;;;;N;;Icelandic;;00FE;
   11.44 -00DF;LATIN SMALL LETTER SHARP S;Ll;0;L;;;;;N;;German;;;
   11.45 +00DE;LATIN CAPITAL LETTER THORN;Lu;0;L;;;;;N;;;;00FE;
   11.46 +00DF;LATIN SMALL LETTER SHARP S;Ll;0;L;;;;;N;;;;;
   11.47  00E0;LATIN SMALL LETTER A WITH GRAVE;Ll;0;L;0061 0300;;;;N;LATIN SMALL LETTER A GRAVE;;00C0;;00C0
   11.48  00E1;LATIN SMALL LETTER A WITH ACUTE;Ll;0;L;0061 0301;;;;N;LATIN SMALL LETTER A ACUTE;;00C1;;00C1
   11.49  00E2;LATIN SMALL LETTER A WITH CIRCUMFLEX;Ll;0;L;0061 0302;;;;N;LATIN SMALL LETTER A CIRCUMFLEX;;00C2;;00C2
   11.50  00E3;LATIN SMALL LETTER A WITH TILDE;Ll;0;L;0061 0303;;;;N;LATIN SMALL LETTER A TILDE;;00C3;;00C3
   11.51  00E4;LATIN SMALL LETTER A WITH DIAERESIS;Ll;0;L;0061 0308;;;;N;LATIN SMALL LETTER A DIAERESIS;;00C4;;00C4
   11.52  00E5;LATIN SMALL LETTER A WITH RING ABOVE;Ll;0;L;0061 030A;;;;N;LATIN SMALL LETTER A RING;;00C5;;00C5
   11.53 -00E6;LATIN SMALL LETTER AE;Ll;0;L;;;;;N;LATIN SMALL LETTER A E;ash *;00C6;;00C6
   11.54 +00E6;LATIN SMALL LETTER AE;Ll;0;L;;;;;N;LATIN SMALL LETTER A E;;00C6;;00C6
   11.55  00E7;LATIN SMALL LETTER C WITH CEDILLA;Ll;0;L;0063 0327;;;;N;LATIN SMALL LETTER C CEDILLA;;00C7;;00C7
   11.56  00E8;LATIN SMALL LETTER E WITH GRAVE;Ll;0;L;0065 0300;;;;N;LATIN SMALL LETTER E GRAVE;;00C8;;00C8
   11.57  00E9;LATIN SMALL LETTER E WITH ACUTE;Ll;0;L;0065 0301;;;;N;LATIN SMALL LETTER E ACUTE;;00C9;;00C9
   11.58 @@ -238,7 +238,7 @@
   11.59  00ED;LATIN SMALL LETTER I WITH ACUTE;Ll;0;L;0069 0301;;;;N;LATIN SMALL LETTER I ACUTE;;00CD;;00CD
   11.60  00EE;LATIN SMALL LETTER I WITH CIRCUMFLEX;Ll;0;L;0069 0302;;;;N;LATIN SMALL LETTER I CIRCUMFLEX;;00CE;;00CE
   11.61  00EF;LATIN SMALL LETTER I WITH DIAERESIS;Ll;0;L;0069 0308;;;;N;LATIN SMALL LETTER I DIAERESIS;;00CF;;00CF
   11.62 -00F0;LATIN SMALL LETTER ETH;Ll;0;L;;;;;N;;Icelandic;00D0;;00D0
   11.63 +00F0;LATIN SMALL LETTER ETH;Ll;0;L;;;;;N;;;00D0;;00D0
   11.64  00F1;LATIN SMALL LETTER N WITH TILDE;Ll;0;L;006E 0303;;;;N;LATIN SMALL LETTER N TILDE;;00D1;;00D1
   11.65  00F2;LATIN SMALL LETTER O WITH GRAVE;Ll;0;L;006F 0300;;;;N;LATIN SMALL LETTER O GRAVE;;00D2;;00D2
   11.66  00F3;LATIN SMALL LETTER O WITH ACUTE;Ll;0;L;006F 0301;;;;N;LATIN SMALL LETTER O ACUTE;;00D3;;00D3
   11.67 @@ -252,7 +252,7 @@
   11.68  00FB;LATIN SMALL LETTER U WITH CIRCUMFLEX;Ll;0;L;0075 0302;;;;N;LATIN SMALL LETTER U CIRCUMFLEX;;00DB;;00DB
   11.69  00FC;LATIN SMALL LETTER U WITH DIAERESIS;Ll;0;L;0075 0308;;;;N;LATIN SMALL LETTER U DIAERESIS;;00DC;;00DC
   11.70  00FD;LATIN SMALL LETTER Y WITH ACUTE;Ll;0;L;0079 0301;;;;N;LATIN SMALL LETTER Y ACUTE;;00DD;;00DD
   11.71 -00FE;LATIN SMALL LETTER THORN;Ll;0;L;;;;;N;;Icelandic;00DE;;00DE
   11.72 +00FE;LATIN SMALL LETTER THORN;Ll;0;L;;;;;N;;;00DE;;00DE
   11.73  00FF;LATIN SMALL LETTER Y WITH DIAERESIS;Ll;0;L;0079 0308;;;;N;LATIN SMALL LETTER Y DIAERESIS;;0178;;0178
   11.74  0100;LATIN CAPITAL LETTER A WITH MACRON;Lu;0;L;0041 0304;;;;N;LATIN CAPITAL LETTER A MACRON;;;0101;
   11.75  0101;LATIN SMALL LETTER A WITH MACRON;Ll;0;L;0061 0304;;;;N;LATIN SMALL LETTER A MACRON;;0100;;0100
   11.76 @@ -310,7 +310,7 @@
   11.77  0135;LATIN SMALL LETTER J WITH CIRCUMFLEX;Ll;0;L;006A 0302;;;;N;LATIN SMALL LETTER J CIRCUMFLEX;;0134;;0134
   11.78  0136;LATIN CAPITAL LETTER K WITH CEDILLA;Lu;0;L;004B 0327;;;;N;LATIN CAPITAL LETTER K CEDILLA;;;0137;
   11.79  0137;LATIN SMALL LETTER K WITH CEDILLA;Ll;0;L;006B 0327;;;;N;LATIN SMALL LETTER K CEDILLA;;0136;;0136
   11.80 -0138;LATIN SMALL LETTER KRA;Ll;0;L;;;;;N;;Greenlandic;;;
   11.81 +0138;LATIN SMALL LETTER KRA;Ll;0;L;;;;;N;;;;;
   11.82  0139;LATIN CAPITAL LETTER L WITH ACUTE;Lu;0;L;004C 0301;;;;N;LATIN CAPITAL LETTER L ACUTE;;;013A;
   11.83  013A;LATIN SMALL LETTER L WITH ACUTE;Ll;0;L;006C 0301;;;;N;LATIN SMALL LETTER L ACUTE;;0139;;0139
   11.84  013B;LATIN CAPITAL LETTER L WITH CEDILLA;Lu;0;L;004C 0327;;;;N;LATIN CAPITAL LETTER L CEDILLA;;;013C;
   11.85 @@ -328,8 +328,8 @@
   11.86  0147;LATIN CAPITAL LETTER N WITH CARON;Lu;0;L;004E 030C;;;;N;LATIN CAPITAL LETTER N HACEK;;;0148;
   11.87  0148;LATIN SMALL LETTER N WITH CARON;Ll;0;L;006E 030C;;;;N;LATIN SMALL LETTER N HACEK;;0147;;0147
   11.88  0149;LATIN SMALL LETTER N PRECEDED BY APOSTROPHE;Ll;0;L;<compat> 02BC 006E;;;;N;LATIN SMALL LETTER APOSTROPHE N;;;;
   11.89 -014A;LATIN CAPITAL LETTER ENG;Lu;0;L;;;;;N;;Sami;;014B;
   11.90 -014B;LATIN SMALL LETTER ENG;Ll;0;L;;;;;N;;Sami;014A;;014A
   11.91 +014A;LATIN CAPITAL LETTER ENG;Lu;0;L;;;;;N;;;;014B;
   11.92 +014B;LATIN SMALL LETTER ENG;Ll;0;L;;;;;N;;;014A;;014A
   11.93  014C;LATIN CAPITAL LETTER O WITH MACRON;Lu;0;L;004F 0304;;;;N;LATIN CAPITAL LETTER O MACRON;;;014D;
   11.94  014D;LATIN SMALL LETTER O WITH MACRON;Ll;0;L;006F 0304;;;;N;LATIN SMALL LETTER O MACRON;;014C;;014C
   11.95  014E;LATIN CAPITAL LETTER O WITH BREVE;Lu;0;L;004F 0306;;;;N;LATIN CAPITAL LETTER O BREVE;;;014F;
   11.96 @@ -348,12 +348,12 @@
   11.97  015B;LATIN SMALL LETTER S WITH ACUTE;Ll;0;L;0073 0301;;;;N;LATIN SMALL LETTER S ACUTE;;015A;;015A
   11.98  015C;LATIN CAPITAL LETTER S WITH CIRCUMFLEX;Lu;0;L;0053 0302;;;;N;LATIN CAPITAL LETTER S CIRCUMFLEX;;;015D;
   11.99  015D;LATIN SMALL LETTER S WITH CIRCUMFLEX;Ll;0;L;0073 0302;;;;N;LATIN SMALL LETTER S CIRCUMFLEX;;015C;;015C
  11.100 -015E;LATIN CAPITAL LETTER S WITH CEDILLA;Lu;0;L;0053 0327;;;;N;LATIN CAPITAL LETTER S CEDILLA;*;;015F;
  11.101 -015F;LATIN SMALL LETTER S WITH CEDILLA;Ll;0;L;0073 0327;;;;N;LATIN SMALL LETTER S CEDILLA;*;015E;;015E
  11.102 +015E;LATIN CAPITAL LETTER S WITH CEDILLA;Lu;0;L;0053 0327;;;;N;LATIN CAPITAL LETTER S CEDILLA;;;015F;
  11.103 +015F;LATIN SMALL LETTER S WITH CEDILLA;Ll;0;L;0073 0327;;;;N;LATIN SMALL LETTER S CEDILLA;;015E;;015E
  11.104  0160;LATIN CAPITAL LETTER S WITH CARON;Lu;0;L;0053 030C;;;;N;LATIN CAPITAL LETTER S HACEK;;;0161;
  11.105  0161;LATIN SMALL LETTER S WITH CARON;Ll;0;L;0073 030C;;;;N;LATIN SMALL LETTER S HACEK;;0160;;0160
  11.106 -0162;LATIN CAPITAL LETTER T WITH CEDILLA;Lu;0;L;0054 0327;;;;N;LATIN CAPITAL LETTER T CEDILLA;*;;0163;
  11.107 -0163;LATIN SMALL LETTER T WITH CEDILLA;Ll;0;L;0074 0327;;;;N;LATIN SMALL LETTER T CEDILLA;*;0162;;0162
  11.108 +0162;LATIN CAPITAL LETTER T WITH CEDILLA;Lu;0;L;0054 0327;;;;N;LATIN CAPITAL LETTER T CEDILLA;;;0163;
  11.109 +0163;LATIN SMALL LETTER T WITH CEDILLA;Ll;0;L;0074 0327;;;;N;LATIN SMALL LETTER T CEDILLA;;0162;;0162
  11.110  0164;LATIN CAPITAL LETTER T WITH CARON;Lu;0;L;0054 030C;;;;N;LATIN CAPITAL LETTER T HACEK;;;0165;
  11.111  0165;LATIN SMALL LETTER T WITH CARON;Ll;0;L;0074 030C;;;;N;LATIN SMALL LETTER T HACEK;;0164;;0164
  11.112  0166;LATIN CAPITAL LETTER T WITH STROKE;Lu;0;L;;;;;N;LATIN CAPITAL LETTER T BAR;;;0167;
  11.113 @@ -391,7 +391,7 @@
  11.114  0186;LATIN CAPITAL LETTER OPEN O;Lu;0;L;;;;;N;;;;0254;
  11.115  0187;LATIN CAPITAL LETTER C WITH HOOK;Lu;0;L;;;;;N;LATIN CAPITAL LETTER C HOOK;;;0188;
  11.116  0188;LATIN SMALL LETTER C WITH HOOK;Ll;0;L;;;;;N;LATIN SMALL LETTER C HOOK;;0187;;0187
  11.117 -0189;LATIN CAPITAL LETTER AFRICAN D;Lu;0;L;;;;;N;;*;;0256;
  11.118 +0189;LATIN CAPITAL LETTER AFRICAN D;Lu;0;L;;;;;N;;;;0256;
  11.119  018A;LATIN CAPITAL LETTER D WITH HOOK;Lu;0;L;;;;;N;LATIN CAPITAL LETTER D HOOK;;;0257;
  11.120  018B;LATIN CAPITAL LETTER D WITH TOPBAR;Lu;0;L;;;;;N;LATIN CAPITAL LETTER D TOPBAR;;;018C;
  11.121  018C;LATIN SMALL LETTER D WITH TOPBAR;Ll;0;L;;;;;N;LATIN SMALL LETTER D TOPBAR;;018B;;018B
  11.122 @@ -403,7 +403,7 @@
  11.123  0192;LATIN SMALL LETTER F WITH HOOK;Ll;0;L;;;;;N;LATIN SMALL LETTER SCRIPT F;;0191;;0191
  11.124  0193;LATIN CAPITAL LETTER G WITH HOOK;Lu;0;L;;;;;N;LATIN CAPITAL LETTER G HOOK;;;0260;
  11.125  0194;LATIN CAPITAL LETTER GAMMA;Lu;0;L;;;;;N;;;;0263;
  11.126 -0195;LATIN SMALL LETTER HV;Ll;0;L;;;;;N;LATIN SMALL LETTER H V;hwair;01F6;;01F6
  11.127 +0195;LATIN SMALL LETTER HV;Ll;0;L;;;;;N;LATIN SMALL LETTER H V;;01F6;;01F6
  11.128  0196;LATIN CAPITAL LETTER IOTA;Lu;0;L;;;;;N;;;;0269;
  11.129  0197;LATIN CAPITAL LETTER I WITH STROKE;Lu;0;L;;;;;N;LATIN CAPITAL LETTER BARRED I;;;0268;
  11.130  0198;LATIN CAPITAL LETTER K WITH HOOK;Lu;0;L;;;;;N;LATIN CAPITAL LETTER K HOOK;;;0199;
  11.131 @@ -413,14 +413,14 @@
  11.132  019C;LATIN CAPITAL LETTER TURNED M;Lu;0;L;;;;;N;;;;026F;
  11.133  019D;LATIN CAPITAL LETTER N WITH LEFT HOOK;Lu;0;L;;;;;N;LATIN CAPITAL LETTER N HOOK;;;0272;
  11.134  019E;LATIN SMALL LETTER N WITH LONG RIGHT LEG;Ll;0;L;;;;;N;;;0220;;0220
  11.135 -019F;LATIN CAPITAL LETTER O WITH MIDDLE TILDE;Lu;0;L;;;;;N;LATIN CAPITAL LETTER BARRED O;*;;0275;
  11.136 +019F;LATIN CAPITAL LETTER O WITH MIDDLE TILDE;Lu;0;L;;;;;N;LATIN CAPITAL LETTER BARRED O;;;0275;
  11.137  01A0;LATIN CAPITAL LETTER O WITH HORN;Lu;0;L;004F 031B;;;;N;LATIN CAPITAL LETTER O HORN;;;01A1;
  11.138  01A1;LATIN SMALL LETTER O WITH HORN;Ll;0;L;006F 031B;;;;N;LATIN SMALL LETTER O HORN;;01A0;;01A0
  11.139 -01A2;LATIN CAPITAL LETTER OI;Lu;0;L;;;;;N;LATIN CAPITAL LETTER O I;gha;;01A3;
  11.140 -01A3;LATIN SMALL LETTER OI;Ll;0;L;;;;;N;LATIN SMALL LETTER O I;gha;01A2;;01A2
  11.141 +01A2;LATIN CAPITAL LETTER OI;Lu;0;L;;;;;N;LATIN CAPITAL LETTER O I;;;01A3;
  11.142 +01A3;LATIN SMALL LETTER OI;Ll;0;L;;;;;N;LATIN SMALL LETTER O I;;01A2;;01A2
  11.143  01A4;LATIN CAPITAL LETTER P WITH HOOK;Lu;0;L;;;;;N;LATIN CAPITAL LETTER P HOOK;;;01A5;
  11.144  01A5;LATIN SMALL LETTER P WITH HOOK;Ll;0;L;;;;;N;LATIN SMALL LETTER P HOOK;;01A4;;01A4
  11.145 -01A6;LATIN LETTER YR;Lu;0;L;;;;;N;LATIN LETTER Y R;*;;0280;
  11.146 +01A6;LATIN LETTER YR;Lu;0;L;;;;;N;LATIN LETTER Y R;;;0280;
  11.147  01A7;LATIN CAPITAL LETTER TONE TWO;Lu;0;L;;;;;N;;;;01A8;
  11.148  01A8;LATIN SMALL LETTER TONE TWO;Ll;0;L;;;;;N;;;01A7;;01A7
  11.149  01A9;LATIN CAPITAL LETTER ESH;Lu;0;L;;;;;N;;;;0283;
  11.150 @@ -480,8 +480,8 @@
  11.151  01DF;LATIN SMALL LETTER A WITH DIAERESIS AND MACRON;Ll;0;L;00E4 0304;;;;N;LATIN SMALL LETTER A DIAERESIS MACRON;;01DE;;01DE
  11.152  01E0;LATIN CAPITAL LETTER A WITH DOT ABOVE AND MACRON;Lu;0;L;0226 0304;;;;N;LATIN CAPITAL LETTER A DOT MACRON;;;01E1;
  11.153  01E1;LATIN SMALL LETTER A WITH DOT ABOVE AND MACRON;Ll;0;L;0227 0304;;;;N;LATIN SMALL LETTER A DOT MACRON;;01E0;;01E0
  11.154 -01E2;LATIN CAPITAL LETTER AE WITH MACRON;Lu;0;L;00C6 0304;;;;N;LATIN CAPITAL LETTER A E MACRON;ash *;;01E3;
  11.155 -01E3;LATIN SMALL LETTER AE WITH MACRON;Ll;0;L;00E6 0304;;;;N;LATIN SMALL LETTER A E MACRON;ash *;01E2;;01E2
  11.156 +01E2;LATIN CAPITAL LETTER AE WITH MACRON;Lu;0;L;00C6 0304;;;;N;LATIN CAPITAL LETTER A E MACRON;;;01E3;
  11.157 +01E3;LATIN SMALL LETTER AE WITH MACRON;Ll;0;L;00E6 0304;;;;N;LATIN SMALL LETTER A E MACRON;;01E2;;01E2
  11.158  01E4;LATIN CAPITAL LETTER G WITH STROKE;Lu;0;L;;;;;N;LATIN CAPITAL LETTER G BAR;;;01E5;
  11.159  01E5;LATIN SMALL LETTER G WITH STROKE;Ll;0;L;;;;;N;LATIN SMALL LETTER G BAR;;01E4;;01E4
  11.160  01E6;LATIN CAPITAL LETTER G WITH CARON;Lu;0;L;0047 030C;;;;N;LATIN CAPITAL LETTER G HACEK;;;01E7;
  11.161 @@ -506,8 +506,8 @@
  11.162  01F9;LATIN SMALL LETTER N WITH GRAVE;Ll;0;L;006E 0300;;;;N;;;01F8;;01F8
  11.163  01FA;LATIN CAPITAL LETTER A WITH RING ABOVE AND ACUTE;Lu;0;L;00C5 0301;;;;N;;;;01FB;
  11.164  01FB;LATIN SMALL LETTER A WITH RING ABOVE AND ACUTE;Ll;0;L;00E5 0301;;;;N;;;01FA;;01FA
  11.165 -01FC;LATIN CAPITAL LETTER AE WITH ACUTE;Lu;0;L;00C6 0301;;;;N;;ash *;;01FD;
  11.166 -01FD;LATIN SMALL LETTER AE WITH ACUTE;Ll;0;L;00E6 0301;;;;N;;ash *;01FC;;01FC
  11.167 +01FC;LATIN CAPITAL LETTER AE WITH ACUTE;Lu;0;L;00C6 0301;;;;N;;;;01FD;
  11.168 +01FD;LATIN SMALL LETTER AE WITH ACUTE;Ll;0;L;00E6 0301;;;;N;;;01FC;;01FC
  11.169  01FE;LATIN CAPITAL LETTER O WITH STROKE AND ACUTE;Lu;0;L;00D8 0301;;;;N;;;;01FF;
  11.170  01FF;LATIN SMALL LETTER O WITH STROKE AND ACUTE;Ll;0;L;00F8 0301;;;;N;;;01FE;;01FE
  11.171  0200;LATIN CAPITAL LETTER A WITH DOUBLE GRAVE;Lu;0;L;0041 030F;;;;N;;;;0201;
  11.172 @@ -534,10 +534,10 @@
  11.173  0215;LATIN SMALL LETTER U WITH DOUBLE GRAVE;Ll;0;L;0075 030F;;;;N;;;0214;;0214
  11.174  0216;LATIN CAPITAL LETTER U WITH INVERTED BREVE;Lu;0;L;0055 0311;;;;N;;;;0217;
  11.175  0217;LATIN SMALL LETTER U WITH INVERTED BREVE;Ll;0;L;0075 0311;;;;N;;;0216;;0216
  11.176 -0218;LATIN CAPITAL LETTER S WITH COMMA BELOW;Lu;0;L;0053 0326;;;;N;;*;;0219;
  11.177 -0219;LATIN SMALL LETTER S WITH COMMA BELOW;Ll;0;L;0073 0326;;;;N;;*;0218;;0218
  11.178 -021A;LATIN CAPITAL LETTER T WITH COMMA BELOW;Lu;0;L;0054 0326;;;;N;;*;;021B;
  11.179 -021B;LATIN SMALL LETTER T WITH COMMA BELOW;Ll;0;L;0074 0326;;;;N;;*;021A;;021A
  11.180 +0218;LATIN CAPITAL LETTER S WITH COMMA BELOW;Lu;0;L;0053 0326;;;;N;;;;0219;
  11.181 +0219;LATIN SMALL LETTER S WITH COMMA BELOW;Ll;0;L;0073 0326;;;;N;;;0218;;0218
  11.182 +021A;LATIN CAPITAL LETTER T WITH COMMA BELOW;Lu;0;L;0054 0326;;;;N;;;;021B;
  11.183 +021B;LATIN SMALL LETTER T WITH COMMA BELOW;Ll;0;L;0074 0326;;;;N;;;021A;;021A
  11.184  021C;LATIN CAPITAL LETTER YOGH;Lu;0;L;;;;;N;;;;021D;
  11.185  021D;LATIN SMALL LETTER YOGH;Ll;0;L;;;;;N;;;021C;;021C
  11.186  021E;LATIN CAPITAL LETTER H WITH CARON;Lu;0;L;0048 030C;;;;N;;;;021F;
  11.187 @@ -573,8 +573,8 @@
  11.188  023C;LATIN SMALL LETTER C WITH STROKE;Ll;0;L;;;;;N;;;023B;;023B
  11.189  023D;LATIN CAPITAL LETTER L WITH BAR;Lu;0;L;;;;;N;;;;019A;
  11.190  023E;LATIN CAPITAL LETTER T WITH DIAGONAL STROKE;Lu;0;L;;;;;N;;;;2C66;
  11.191 -023F;LATIN SMALL LETTER S WITH SWASH TAIL;Ll;0;L;;;;;N;;;;;
  11.192 -0240;LATIN SMALL LETTER Z WITH SWASH TAIL;Ll;0;L;;;;;N;;;;;
  11.193 +023F;LATIN SMALL LETTER S WITH SWASH TAIL;Ll;0;L;;;;;N;;;2C7E;;2C7E
  11.194 +0240;LATIN SMALL LETTER Z WITH SWASH TAIL;Ll;0;L;;;;;N;;;2C7F;;2C7F
  11.195  0241;LATIN CAPITAL LETTER GLOTTAL STOP;Lu;0;L;;;;;N;;;;0242;
  11.196  0242;LATIN SMALL LETTER GLOTTAL STOP;Ll;0;L;;;;;N;;;0241;;0241
  11.197  0243;LATIN CAPITAL LETTER B WITH STROKE;Lu;0;L;;;;;N;;;;0180;
  11.198 @@ -592,7 +592,7 @@
  11.199  024F;LATIN SMALL LETTER Y WITH STROKE;Ll;0;L;;;;;N;;;024E;;024E
  11.200  0250;LATIN SMALL LETTER TURNED A;Ll;0;L;;;;;N;;;2C6F;;2C6F
  11.201  0251;LATIN SMALL LETTER ALPHA;Ll;0;L;;;;;N;LATIN SMALL LETTER SCRIPT A;;2C6D;;2C6D
  11.202 -0252;LATIN SMALL LETTER TURNED ALPHA;Ll;0;L;;;;;N;LATIN SMALL LETTER TURNED SCRIPT A;;;;
  11.203 +0252;LATIN SMALL LETTER TURNED ALPHA;Ll;0;L;;;;;N;LATIN SMALL LETTER TURNED SCRIPT A;;2C70;;2C70
  11.204  0253;LATIN SMALL LETTER B WITH HOOK;Ll;0;L;;;;;N;LATIN SMALL LETTER B HOOK;;0181;;0181
  11.205  0254;LATIN SMALL LETTER OPEN O;Ll;0;L;;;;;N;;;0186;;0186
  11.206  0255;LATIN SMALL LETTER C WITH CURL;Ll;0;L;;;;;N;LATIN SMALL LETTER C CURL;;;;
  11.207 @@ -611,7 +611,7 @@
  11.208  0262;LATIN LETTER SMALL CAPITAL G;Ll;0;L;;;;;N;;;;;
  11.209  0263;LATIN SMALL LETTER GAMMA;Ll;0;L;;;;;N;;;0194;;0194
  11.210  0264;LATIN SMALL LETTER RAMS HORN;Ll;0;L;;;;;N;LATIN SMALL LETTER BABY GAMMA;;;;
  11.211 -0265;LATIN SMALL LETTER TURNED H;Ll;0;L;;;;;N;;;;;
  11.212 +0265;LATIN SMALL LETTER TURNED H;Ll;0;L;;;;;N;;;A78D;;A78D
  11.213  0266;LATIN SMALL LETTER H WITH HOOK;Ll;0;L;;;;;N;LATIN SMALL LETTER H HOOK;;;;
  11.214  0267;LATIN SMALL LETTER HENG WITH HOOK;Ll;0;L;;;;;N;LATIN SMALL LETTER HENG HOOK;;;;
  11.215  0268;LATIN SMALL LETTER I WITH STROKE;Ll;0;L;;;;;N;LATIN SMALL LETTER BARRED I;;0197;;0197
  11.216 @@ -638,7 +638,7 @@
  11.217  027D;LATIN SMALL LETTER R WITH TAIL;Ll;0;L;;;;;N;LATIN SMALL LETTER R HOOK;;2C64;;2C64
  11.218  027E;LATIN SMALL LETTER R WITH FISHHOOK;Ll;0;L;;;;;N;LATIN SMALL LETTER FISHHOOK R;;;;
  11.219  027F;LATIN SMALL LETTER REVERSED R WITH FISHHOOK;Ll;0;L;;;;;N;LATIN SMALL LETTER REVERSED FISHHOOK R;;;;
  11.220 -0280;LATIN LETTER SMALL CAPITAL R;Ll;0;L;;;;;N;;*;01A6;;01A6
  11.221 +0280;LATIN LETTER SMALL CAPITAL R;Ll;0;L;;;;;N;;;01A6;;01A6
  11.222  0281;LATIN LETTER SMALL CAPITAL INVERTED R;Ll;0;L;;;;;N;;;;;
  11.223  0282;LATIN SMALL LETTER S WITH HOOK;Ll;0;L;;;;;N;LATIN SMALL LETTER S HOOK;;;;
  11.224  0283;LATIN SMALL LETTER ESH;Ll;0;L;;;;;N;;;01A9;;01A9
  11.225 @@ -709,11 +709,11 @@
  11.226  02C4;MODIFIER LETTER UP ARROWHEAD;Sk;0;ON;;;;;N;;;;;
  11.227  02C5;MODIFIER LETTER DOWN ARROWHEAD;Sk;0;ON;;;;;N;;;;;
  11.228  02C6;MODIFIER LETTER CIRCUMFLEX ACCENT;Lm;0;ON;;;;;N;MODIFIER LETTER CIRCUMFLEX;;;;
  11.229 -02C7;CARON;Lm;0;ON;;;;;N;MODIFIER LETTER HACEK;Mandarin Chinese third tone;;;
  11.230 +02C7;CARON;Lm;0;ON;;;;;N;MODIFIER LETTER HACEK;;;;
  11.231  02C8;MODIFIER LETTER VERTICAL LINE;Lm;0;ON;;;;;N;;;;;
  11.232 -02C9;MODIFIER LETTER MACRON;Lm;0;ON;;;;;N;;Mandarin Chinese first tone;;;
  11.233 -02CA;MODIFIER LETTER ACUTE ACCENT;Lm;0;ON;;;;;N;MODIFIER LETTER ACUTE;Mandarin Chinese second tone;;;
  11.234 -02CB;MODIFIER LETTER GRAVE ACCENT;Lm;0;ON;;;;;N;MODIFIER LETTER GRAVE;Mandarin Chinese fourth tone;;;
  11.235 +02C9;MODIFIER LETTER MACRON;Lm;0;ON;;;;;N;;;;;
  11.236 +02CA;MODIFIER LETTER ACUTE ACCENT;Lm;0;ON;;;;;N;MODIFIER LETTER ACUTE;;;;
  11.237 +02CB;MODIFIER LETTER GRAVE ACCENT;Lm;0;ON;;;;;N;MODIFIER LETTER GRAVE;;;;
  11.238  02CC;MODIFIER LETTER LOW VERTICAL LINE;Lm;0;ON;;;;;N;;;;;
  11.239  02CD;MODIFIER LETTER LOW MACRON;Lm;0;ON;;;;;N;;;;;
  11.240  02CE;MODIFIER LETTER LOW GRAVE ACCENT;Lm;0;ON;;;;;N;MODIFIER LETTER LOW GRAVE;;;;
  11.241 @@ -727,7 +727,7 @@
  11.242  02D6;MODIFIER LETTER PLUS SIGN;Sk;0;ON;;;;;N;;;;;
  11.243  02D7;MODIFIER LETTER MINUS SIGN;Sk;0;ON;;;;;N;;;;;
  11.244  02D8;BREVE;Sk;0;ON;<compat> 0020 0306;;;;N;SPACING BREVE;;;;
  11.245 -02D9;DOT ABOVE;Sk;0;ON;<compat> 0020 0307;;;;N;SPACING DOT ABOVE;Mandarin Chinese light tone;;;
  11.246 +02D9;DOT ABOVE;Sk;0;ON;<compat> 0020 0307;;;;N;SPACING DOT ABOVE;;;;
  11.247  02DA;RING ABOVE;Sk;0;ON;<compat> 0020 030A;;;;N;SPACING RING ABOVE;;;;
  11.248  02DB;OGONEK;Sk;0;ON;<compat> 0020 0328;;;;N;SPACING OGONEK;;;;
  11.249  02DC;SMALL TILDE;Sk;0;ON;<compat> 0020 0303;;;;N;SPACING TILDE;;;;
  11.250 @@ -766,15 +766,15 @@
  11.251  02FD;MODIFIER LETTER SHELF;Sk;0;ON;;;;;N;;;;;
  11.252  02FE;MODIFIER LETTER OPEN SHELF;Sk;0;ON;;;;;N;;;;;
  11.253  02FF;MODIFIER LETTER LOW LEFT ARROW;Sk;0;ON;;;;;N;;;;;
  11.254 -0300;COMBINING GRAVE ACCENT;Mn;230;NSM;;;;;N;NON-SPACING GRAVE;Varia;;;
  11.255 -0301;COMBINING ACUTE ACCENT;Mn;230;NSM;;;;;N;NON-SPACING ACUTE;Oxia, Tonos;;;
  11.256 +0300;COMBINING GRAVE ACCENT;Mn;230;NSM;;;;;N;NON-SPACING GRAVE;;;;
  11.257 +0301;COMBINING ACUTE ACCENT;Mn;230;NSM;;;;;N;NON-SPACING ACUTE;;;;
  11.258  0302;COMBINING CIRCUMFLEX ACCENT;Mn;230;NSM;;;;;N;NON-SPACING CIRCUMFLEX;;;;
  11.259  0303;COMBINING TILDE;Mn;230;NSM;;;;;N;NON-SPACING TILDE;;;;
  11.260  0304;COMBINING MACRON;Mn;230;NSM;;;;;N;NON-SPACING MACRON;;;;
  11.261  0305;COMBINING OVERLINE;Mn;230;NSM;;;;;N;NON-SPACING OVERSCORE;;;;
  11.262 -0306;COMBINING BREVE;Mn;230;NSM;;;;;N;NON-SPACING BREVE;Vrachy;;;
  11.263 +0306;COMBINING BREVE;Mn;230;NSM;;;;;N;NON-SPACING BREVE;;;;
  11.264  0307;COMBINING DOT ABOVE;Mn;230;NSM;;;;;N;NON-SPACING DOT ABOVE;;;;
  11.265 -0308;COMBINING DIAERESIS;Mn;230;NSM;;;;;N;NON-SPACING DIAERESIS;Dialytika;;;
  11.266 +0308;COMBINING DIAERESIS;Mn;230;NSM;;;;;N;NON-SPACING DIAERESIS;;;;
  11.267  0309;COMBINING HOOK ABOVE;Mn;230;NSM;;;;;N;NON-SPACING HOOK ABOVE;;;;
  11.268  030A;COMBINING RING ABOVE;Mn;230;NSM;;;;;N;NON-SPACING RING ABOVE;;;;
  11.269  030B;COMBINING DOUBLE ACUTE ACCENT;Mn;230;NSM;;;;;N;NON-SPACING DOUBLE ACUTE;;;;
  11.270 @@ -785,8 +785,8 @@
  11.271  0310;COMBINING CANDRABINDU;Mn;230;NSM;;;;;N;NON-SPACING CANDRABINDU;;;;
  11.272  0311;COMBINING INVERTED BREVE;Mn;230;NSM;;;;;N;NON-SPACING INVERTED BREVE;;;;
  11.273  0312;COMBINING TURNED COMMA ABOVE;Mn;230;NSM;;;;;N;NON-SPACING TURNED COMMA ABOVE;;;;
  11.274 -0313;COMBINING COMMA ABOVE;Mn;230;NSM;;;;;N;NON-SPACING COMMA ABOVE;Psili;;;
  11.275 -0314;COMBINING REVERSED COMMA ABOVE;Mn;230;NSM;;;;;N;NON-SPACING REVERSED COMMA ABOVE;Dasia;;;
  11.276 +0313;COMBINING COMMA ABOVE;Mn;230;NSM;;;;;N;NON-SPACING COMMA ABOVE;;;;
  11.277 +0314;COMBINING REVERSED COMMA ABOVE;Mn;230;NSM;;;;;N;NON-SPACING REVERSED COMMA ABOVE;;;;
  11.278  0315;COMBINING COMMA ABOVE RIGHT;Mn;232;NSM;;;;;N;NON-SPACING COMMA ABOVE RIGHT;;;;
  11.279  0316;COMBINING GRAVE ACCENT BELOW;Mn;220;NSM;;;;;N;NON-SPACING GRAVE BELOW;;;;
  11.280  0317;COMBINING ACUTE ACCENT BELOW;Mn;220;NSM;;;;;N;NON-SPACING ACUTE BELOW;;;;
  11.281 @@ -830,8 +830,8 @@
  11.282  033D;COMBINING X ABOVE;Mn;230;NSM;;;;;N;NON-SPACING X ABOVE;;;;
  11.283  033E;COMBINING VERTICAL TILDE;Mn;230;NSM;;;;;N;NON-SPACING VERTICAL TILDE;;;;
  11.284  033F;COMBINING DOUBLE OVERLINE;Mn;230;NSM;;;;;N;NON-SPACING DOUBLE OVERSCORE;;;;
  11.285 -0340;COMBINING GRAVE TONE MARK;Mn;230;NSM;0300;;;;N;NON-SPACING GRAVE TONE MARK;Vietnamese;;;
  11.286 -0341;COMBINING ACUTE TONE MARK;Mn;230;NSM;0301;;;;N;NON-SPACING ACUTE TONE MARK;Vietnamese;;;
  11.287 +0340;COMBINING GRAVE TONE MARK;Mn;230;NSM;0300;;;;N;NON-SPACING GRAVE TONE MARK;;;;
  11.288 +0341;COMBINING ACUTE TONE MARK;Mn;230;NSM;0301;;;;N;NON-SPACING ACUTE TONE MARK;;;;
  11.289  0342;COMBINING GREEK PERISPOMENI;Mn;230;NSM;;;;;N;;;;;
  11.290  0343;COMBINING GREEK KORONIS;Mn;230;NSM;0313;;;;N;;;;;
  11.291  0344;COMBINING GREEK DIALYTIKA TONOS;Mn;230;NSM;0308 0301;;;;N;GREEK NON-SPACING DIAERESIS TONOS;;;;
  11.292 @@ -882,15 +882,15 @@
  11.293  0371;GREEK SMALL LETTER HETA;Ll;0;L;;;;;N;;;0370;;0370
  11.294  0372;GREEK CAPITAL LETTER ARCHAIC SAMPI;Lu;0;L;;;;;N;;;;0373;
  11.295  0373;GREEK SMALL LETTER ARCHAIC SAMPI;Ll;0;L;;;;;N;;;0372;;0372
  11.296 -0374;GREEK NUMERAL SIGN;Lm;0;ON;02B9;;;;N;GREEK UPPER NUMERAL SIGN;Dexia keraia;;;
  11.297 -0375;GREEK LOWER NUMERAL SIGN;Sk;0;ON;;;;;N;;Aristeri keraia;;;
  11.298 +0374;GREEK NUMERAL SIGN;Lm;0;ON;02B9;;;;N;GREEK UPPER NUMERAL SIGN;;;;
  11.299 +0375;GREEK LOWER NUMERAL SIGN;Sk;0;ON;;;;;N;;;;;
  11.300  0376;GREEK CAPITAL LETTER PAMPHYLIAN DIGAMMA;Lu;0;L;;;;;N;;;;0377;
  11.301  0377;GREEK SMALL LETTER PAMPHYLIAN DIGAMMA;Ll;0;L;;;;;N;;;0376;;0376
  11.302  037A;GREEK YPOGEGRAMMENI;Lm;0;L;<compat> 0020 0345;;;;N;GREEK SPACING IOTA BELOW;;;;
  11.303  037B;GREEK SMALL REVERSED LUNATE SIGMA SYMBOL;Ll;0;L;;;;;N;;;03FD;;03FD
  11.304  037C;GREEK SMALL DOTTED LUNATE SIGMA SYMBOL;Ll;0;L;;;;;N;;;03FE;;03FE
  11.305  037D;GREEK SMALL REVERSED DOTTED LUNATE SIGMA SYMBOL;Ll;0;L;;;;;N;;;03FF;;03FF
  11.306 -037E;GREEK QUESTION MARK;Po;0;ON;003B;;;;N;;Erotimatiko;;;
  11.307 +037E;GREEK QUESTION MARK;Po;0;ON;003B;;;;N;;;;;
  11.308  0384;GREEK TONOS;Sk;0;ON;<compat> 0020 0301;;;;N;GREEK SPACING TONOS;;;;
  11.309  0385;GREEK DIALYTIKA TONOS;Sk;0;ON;00A8 0301;;;;N;GREEK SPACING DIAERESIS TONOS;;;;
  11.310  0386;GREEK CAPITAL LETTER ALPHA WITH TONOS;Lu;0;L;0391 0301;;;;N;GREEK CAPITAL LETTER ALPHA TONOS;;;03AC;
  11.311 @@ -972,8 +972,8 @@
  11.312  03D5;GREEK PHI SYMBOL;Ll;0;L;<compat> 03C6;;;;N;GREEK SMALL LETTER SCRIPT PHI;;03A6;;03A6
  11.313  03D6;GREEK PI SYMBOL;Ll;0;L;<compat> 03C0;;;;N;GREEK SMALL LETTER OMEGA PI;;03A0;;03A0
  11.314  03D7;GREEK KAI SYMBOL;Ll;0;L;;;;;N;;;03CF;;03CF
  11.315 -03D8;GREEK LETTER ARCHAIC KOPPA;Lu;0;L;;;;;N;;*;;03D9;
  11.316 -03D9;GREEK SMALL LETTER ARCHAIC KOPPA;Ll;0;L;;;;;N;;*;03D8;;03D8
  11.317 +03D8;GREEK LETTER ARCHAIC KOPPA;Lu;0;L;;;;;N;;;;03D9;
  11.318 +03D9;GREEK SMALL LETTER ARCHAIC KOPPA;Ll;0;L;;;;;N;;;03D8;;03D8
  11.319  03DA;GREEK LETTER STIGMA;Lu;0;L;;;;;N;GREEK CAPITAL LETTER STIGMA;;;03DB;
  11.320  03DB;GREEK SMALL LETTER STIGMA;Ll;0;L;;;;;N;;;03DA;;03DA
  11.321  03DC;GREEK LETTER DIGAMMA;Lu;0;L;;;;;N;GREEK CAPITAL LETTER DIGAMMA;;;03DD;
  11.322 @@ -1014,19 +1014,19 @@
  11.323  03FF;GREEK CAPITAL REVERSED DOTTED LUNATE SIGMA SYMBOL;Lu;0;L;;;;;N;;;;037D;
  11.324  0400;CYRILLIC CAPITAL LETTER IE WITH GRAVE;Lu;0;L;0415 0300;;;;N;;;;0450;
  11.325  0401;CYRILLIC CAPITAL LETTER IO;Lu;0;L;0415 0308;;;;N;;;;0451;
  11.326 -0402;CYRILLIC CAPITAL LETTER DJE;Lu;0;L;;;;;N;;Serbocroatian;;0452;
  11.327 +0402;CYRILLIC CAPITAL LETTER DJE;Lu;0;L;;;;;N;;;;0452;
  11.328  0403;CYRILLIC CAPITAL LETTER GJE;Lu;0;L;0413 0301;;;;N;;;;0453;
  11.329  0404;CYRILLIC CAPITAL LETTER UKRAINIAN IE;Lu;0;L;;;;;N;CYRILLIC CAPITAL LETTER E;;;0454;
  11.330  0405;CYRILLIC CAPITAL LETTER DZE;Lu;0;L;;;;;N;;;;0455;
  11.331  0406;CYRILLIC CAPITAL LETTER BYELORUSSIAN-UKRAINIAN I;Lu;0;L;;;;;N;CYRILLIC CAPITAL LETTER I;;;0456;
  11.332 -0407;CYRILLIC CAPITAL LETTER YI;Lu;0;L;0406 0308;;;;N;;Ukrainian;;0457;
  11.333 +0407;CYRILLIC CAPITAL LETTER YI;Lu;0;L;0406 0308;;;;N;;;;0457;
  11.334  0408;CYRILLIC CAPITAL LETTER JE;Lu;0;L;;;;;N;;;;0458;
  11.335  0409;CYRILLIC CAPITAL LETTER LJE;Lu;0;L;;;;;N;;;;0459;
  11.336  040A;CYRILLIC CAPITAL LETTER NJE;Lu;0;L;;;;;N;;;;045A;
  11.337 -040B;CYRILLIC CAPITAL LETTER TSHE;Lu;0;L;;;;;N;;Serbocroatian;;045B;
  11.338 +040B;CYRILLIC CAPITAL LETTER TSHE;Lu;0;L;;;;;N;;;;045B;
  11.339  040C;CYRILLIC CAPITAL LETTER KJE;Lu;0;L;041A 0301;;;;N;;;;045C;
  11.340  040D;CYRILLIC CAPITAL LETTER I WITH GRAVE;Lu;0;L;0418 0300;;;;N;;;;045D;
  11.341 -040E;CYRILLIC CAPITAL LETTER SHORT U;Lu;0;L;0423 0306;;;;N;;Byelorussian;;045E;
  11.342 +040E;CYRILLIC CAPITAL LETTER SHORT U;Lu;0;L;0423 0306;;;;N;;;;045E;
  11.343  040F;CYRILLIC CAPITAL LETTER DZHE;Lu;0;L;;;;;N;;;;045F;
  11.344  0410;CYRILLIC CAPITAL LETTER A;Lu;0;L;;;;;N;;;;0430;
  11.345  0411;CYRILLIC CAPITAL LETTER BE;Lu;0;L;;;;;N;;;;0431;
  11.346 @@ -1094,19 +1094,19 @@
  11.347  044F;CYRILLIC SMALL LETTER YA;Ll;0;L;;;;;N;CYRILLIC SMALL LETTER IA;;042F;;042F
  11.348  0450;CYRILLIC SMALL LETTER IE WITH GRAVE;Ll;0;L;0435 0300;;;;N;;;0400;;0400
  11.349  0451;CYRILLIC SMALL LETTER IO;Ll;0;L;0435 0308;;;;N;;;0401;;0401
  11.350 -0452;CYRILLIC SMALL LETTER DJE;Ll;0;L;;;;;N;;Serbocroatian;0402;;0402
  11.351 +0452;CYRILLIC SMALL LETTER DJE;Ll;0;L;;;;;N;;;0402;;0402
  11.352  0453;CYRILLIC SMALL LETTER GJE;Ll;0;L;0433 0301;;;;N;;;0403;;0403
  11.353  0454;CYRILLIC SMALL LETTER UKRAINIAN IE;Ll;0;L;;;;;N;CYRILLIC SMALL LETTER E;;0404;;0404
  11.354  0455;CYRILLIC SMALL LETTER DZE;Ll;0;L;;;;;N;;;0405;;0405
  11.355  0456;CYRILLIC SMALL LETTER BYELORUSSIAN-UKRAINIAN I;Ll;0;L;;;;;N;CYRILLIC SMALL LETTER I;;0406;;0406
  11.356 -0457;CYRILLIC SMALL LETTER YI;Ll;0;L;0456 0308;;;;N;;Ukrainian;0407;;0407
  11.357 +0457;CYRILLIC SMALL LETTER YI;Ll;0;L;0456 0308;;;;N;;;0407;;0407
  11.358  0458;CYRILLIC SMALL LETTER JE;Ll;0;L;;;;;N;;;0408;;0408
  11.359  0459;CYRILLIC SMALL LETTER LJE;Ll;0;L;;;;;N;;;0409;;0409
  11.360  045A;CYRILLIC SMALL LETTER NJE;Ll;0;L;;;;;N;;;040A;;040A
  11.361 -045B;CYRILLIC SMALL LETTER TSHE;Ll;0;L;;;;;N;;Serbocroatian;040B;;040B
  11.362 +045B;CYRILLIC SMALL LETTER TSHE;Ll;0;L;;;;;N;;;040B;;040B
  11.363  045C;CYRILLIC SMALL LETTER KJE;Ll;0;L;043A 0301;;;;N;;;040C;;040C
  11.364  045D;CYRILLIC SMALL LETTER I WITH GRAVE;Ll;0;L;0438 0300;;;;N;;;040D;;040D
  11.365 -045E;CYRILLIC SMALL LETTER SHORT U;Ll;0;L;0443 0306;;;;N;;Byelorussian;040E;;040E
  11.366 +045E;CYRILLIC SMALL LETTER SHORT U;Ll;0;L;0443 0306;;;;N;;;040E;;040E
  11.367  045F;CYRILLIC SMALL LETTER DZHE;Ll;0;L;;;;;N;;;040F;;040F
  11.368  0460;CYRILLIC CAPITAL LETTER OMEGA;Lu;0;L;;;;;N;;;;0461;
  11.369  0461;CYRILLIC SMALL LETTER OMEGA;Ll;0;L;;;;;N;;;0460;;0460
  11.370 @@ -1178,8 +1178,8 @@
  11.371  04A3;CYRILLIC SMALL LETTER EN WITH DESCENDER;Ll;0;L;;;;;N;CYRILLIC SMALL LETTER EN WITH RIGHT DESCENDER;;04A2;;04A2
  11.372  04A4;CYRILLIC CAPITAL LIGATURE EN GHE;Lu;0;L;;;;;N;CYRILLIC CAPITAL LETTER EN GE;;;04A5;
  11.373  04A5;CYRILLIC SMALL LIGATURE EN GHE;Ll;0;L;;;;;N;CYRILLIC SMALL LETTER EN GE;;04A4;;04A4
  11.374 -04A6;CYRILLIC CAPITAL LETTER PE WITH MIDDLE HOOK;Lu;0;L;;;;;N;CYRILLIC CAPITAL LETTER PE HOOK;Abkhasian;;04A7;
  11.375 -04A7;CYRILLIC SMALL LETTER PE WITH MIDDLE HOOK;Ll;0;L;;;;;N;CYRILLIC SMALL LETTER PE HOOK;Abkhasian;04A6;;04A6
  11.376 +04A6;CYRILLIC CAPITAL LETTER PE WITH MIDDLE HOOK;Lu;0;L;;;;;N;CYRILLIC CAPITAL LETTER PE HOOK;;;04A7;
  11.377 +04A7;CYRILLIC SMALL LETTER PE WITH MIDDLE HOOK;Ll;0;L;;;;;N;CYRILLIC SMALL LETTER PE HOOK;;04A6;;04A6
  11.378  04A8;CYRILLIC CAPITAL LETTER ABKHASIAN HA;Lu;0;L;;;;;N;CYRILLIC CAPITAL LETTER O HOOK;;;04A9;
  11.379  04A9;CYRILLIC SMALL LETTER ABKHASIAN HA;Ll;0;L;;;;;N;CYRILLIC SMALL LETTER O HOOK;;04A8;;04A8
  11.380  04AA;CYRILLIC CAPITAL LETTER ES WITH DESCENDER;Lu;0;L;;;;;N;CYRILLIC CAPITAL LETTER ES CEDILLA;;;04AB;
  11.381 @@ -1192,8 +1192,8 @@
  11.382  04B1;CYRILLIC SMALL LETTER STRAIGHT U WITH STROKE;Ll;0;L;;;;;N;CYRILLIC SMALL LETTER STRAIGHT U BAR;;04B0;;04B0
  11.383  04B2;CYRILLIC CAPITAL LETTER HA WITH DESCENDER;Lu;0;L;;;;;N;CYRILLIC CAPITAL LETTER KHA WITH RIGHT DESCENDER;;;04B3;
  11.384  04B3;CYRILLIC SMALL LETTER HA WITH DESCENDER;Ll;0;L;;;;;N;CYRILLIC SMALL LETTER KHA WITH RIGHT DESCENDER;;04B2;;04B2
  11.385 -04B4;CYRILLIC CAPITAL LIGATURE TE TSE;Lu;0;L;;;;;N;CYRILLIC CAPITAL LETTER TE TSE;Abkhasian;;04B5;
  11.386 -04B5;CYRILLIC SMALL LIGATURE TE TSE;Ll;0;L;;;;;N;CYRILLIC SMALL LETTER TE TSE;Abkhasian;04B4;;04B4
  11.387 +04B4;CYRILLIC CAPITAL LIGATURE TE TSE;Lu;0;L;;;;;N;CYRILLIC CAPITAL LETTER TE TSE;;;04B5;
  11.388 +04B5;CYRILLIC SMALL LIGATURE TE TSE;Ll;0;L;;;;;N;CYRILLIC SMALL LETTER TE TSE;;04B4;;04B4
  11.389  04B6;CYRILLIC CAPITAL LETTER CHE WITH DESCENDER;Lu;0;L;;;;;N;CYRILLIC CAPITAL LETTER CHE WITH RIGHT DESCENDER;;;04B7;
  11.390  04B7;CYRILLIC SMALL LETTER CHE WITH DESCENDER;Ll;0;L;;;;;N;CYRILLIC SMALL LETTER CHE WITH RIGHT DESCENDER;;04B6;;04B6
  11.391  04B8;CYRILLIC CAPITAL LETTER CHE WITH VERTICAL STROKE;Lu;0;L;;;;;N;CYRILLIC CAPITAL LETTER CHE VERTICAL BAR;;;04B9;
  11.392 @@ -1304,6 +1304,10 @@
  11.393  0521;CYRILLIC SMALL LETTER EL WITH MIDDLE HOOK;Ll;0;L;;;;;N;;;0520;;0520
  11.394  0522;CYRILLIC CAPITAL LETTER EN WITH MIDDLE HOOK;Lu;0;L;;;;;N;;;;0523;
  11.395  0523;CYRILLIC SMALL LETTER EN WITH MIDDLE HOOK;Ll;0;L;;;;;N;;;0522;;0522
  11.396 +0524;CYRILLIC CAPITAL LETTER PE WITH DESCENDER;Lu;0;L;;;;;N;;;;0525;
  11.397 +0525;CYRILLIC SMALL LETTER PE WITH DESCENDER;Ll;0;L;;;;;N;;;0524;;0524
  11.398 +0526;CYRILLIC CAPITAL LETTER SHHA WITH DESCENDER;Lu;0;L;;;;;N;;;;0527;
  11.399 +0527;CYRILLIC SMALL LETTER SHHA WITH DESCENDER;Ll;0;L;;;;;N;;;0526;;0526
  11.400  0531;ARMENIAN CAPITAL LETTER AYB;Lu;0;L;;;;;N;;;;0561;
  11.401  0532;ARMENIAN CAPITAL LETTER BEN;Lu;0;L;;;;;N;;;;0562;
  11.402  0533;ARMENIAN CAPITAL LETTER GIM;Lu;0;L;;;;;N;;;;0563;
  11.403 @@ -1395,9 +1399,9 @@
  11.404  0593;HEBREW ACCENT SHALSHELET;Mn;230;NSM;;;;;N;;;;;
  11.405  0594;HEBREW ACCENT ZAQEF QATAN;Mn;230;NSM;;;;;N;;;;;
  11.406  0595;HEBREW ACCENT ZAQEF GADOL;Mn;230;NSM;;;;;N;;;;;
  11.407 -0596;HEBREW ACCENT TIPEHA;Mn;220;NSM;;;;;N;;*;;;
  11.408 +0596;HEBREW ACCENT TIPEHA;Mn;220;NSM;;;;;N;;;;;
  11.409  0597;HEBREW ACCENT REVIA;Mn;230;NSM;;;;;N;;;;;
  11.410 -0598;HEBREW ACCENT ZARQA;Mn;230;NSM;;;;;N;;*;;;
  11.411 +0598;HEBREW ACCENT ZARQA;Mn;230;NSM;;;;;N;;;;;
  11.412  0599;HEBREW ACCENT PASHTA;Mn;230;NSM;;;;;N;;;;;
  11.413  059A;HEBREW ACCENT YETIV;Mn;222;NSM;;;;;N;;;;;
  11.414  059B;HEBREW ACCENT TEVIR;Mn;220;NSM;;;;;N;;;;;
  11.415 @@ -1410,12 +1414,12 @@
  11.416  05A2;HEBREW ACCENT ATNAH HAFUKH;Mn;220;NSM;;;;;N;;;;;
  11.417  05A3;HEBREW ACCENT MUNAH;Mn;220;NSM;;;;;N;;;;;
  11.418  05A4;HEBREW ACCENT MAHAPAKH;Mn;220;NSM;;;;;N;;;;;
  11.419 -05A5;HEBREW ACCENT MERKHA;Mn;220;NSM;;;;;N;;*;;;
  11.420 +05A5;HEBREW ACCENT MERKHA;Mn;220;NSM;;;;;N;;;;;
  11.421  05A6;HEBREW ACCENT MERKHA KEFULA;Mn;220;NSM;;;;;N;;;;;
  11.422  05A7;HEBREW ACCENT DARGA;Mn;220;NSM;;;;;N;;;;;
  11.423 -05A8;HEBREW ACCENT QADMA;Mn;230;NSM;;;;;N;;*;;;
  11.424 +05A8;HEBREW ACCENT QADMA;Mn;230;NSM;;;;;N;;;;;
  11.425  05A9;HEBREW ACCENT TELISHA QETANA;Mn;230;NSM;;;;;N;;;;;
  11.426 -05AA;HEBREW ACCENT YERAH BEN YOMO;Mn;220;NSM;;;;;N;;*;;;
  11.427 +05AA;HEBREW ACCENT YERAH BEN YOMO;Mn;220;NSM;;;;;N;;;;;
  11.428  05AB;HEBREW ACCENT OLE;Mn;230;NSM;;;;;N;;;;;
  11.429  05AC;HEBREW ACCENT ILUY;Mn;230;NSM;;;;;N;;;;;
  11.430  05AD;HEBREW ACCENT DEHI;Mn;222;NSM;;;;;N;;;;;
  11.431 @@ -1433,14 +1437,14 @@
  11.432  05B9;HEBREW POINT HOLAM;Mn;19;NSM;;;;;N;;;;;
  11.433  05BA;HEBREW POINT HOLAM HASER FOR VAV;Mn;19;NSM;;;;;N;;;;;
  11.434  05BB;HEBREW POINT QUBUTS;Mn;20;NSM;;;;;N;;;;;
  11.435 -05BC;HEBREW POINT DAGESH OR MAPIQ;Mn;21;NSM;;;;;N;HEBREW POINT DAGESH;or shuruq;;;
  11.436 -05BD;HEBREW POINT METEG;Mn;22;NSM;;;;;N;;*;;;
  11.437 +05BC;HEBREW POINT DAGESH OR MAPIQ;Mn;21;NSM;;;;;N;HEBREW POINT DAGESH;;;;
  11.438 +05BD;HEBREW POINT METEG;Mn;22;NSM;;;;;N;;;;;
  11.439  05BE;HEBREW PUNCTUATION MAQAF;Pd;0;R;;;;;N;;;;;
  11.440  05BF;HEBREW POINT RAFE;Mn;23;NSM;;;;;N;;;;;
  11.441 -05C0;HEBREW PUNCTUATION PASEQ;Po;0;R;;;;;N;HEBREW POINT PASEQ;*;;;
  11.442 +05C0;HEBREW PUNCTUATION PASEQ;Po;0;R;;;;;N;HEBREW POINT PASEQ;;;;
  11.443  05C1;HEBREW POINT SHIN DOT;Mn;24;NSM;;;;;N;;;;;
  11.444  05C2;HEBREW POINT SIN DOT;Mn;25;NSM;;;;;N;;;;;
  11.445 -05C3;HEBREW PUNCTUATION SOF PASUQ;Po;0;R;;;;;N;;*;;;
  11.446 +05C3;HEBREW PUNCTUATION SOF PASUQ;Po;0;R;;;;;N;;;;;
  11.447  05C4;HEBREW MARK UPPER DOT;Mn;230;NSM;;;;;N;;;;;
  11.448  05C5;HEBREW MARK LOWER DOT;Mn;220;NSM;;;;;N;;;;;
  11.449  05C6;HEBREW PUNCTUATION NUN HAFUKHA;Po;0;R;;;;;N;;;;;
  11.450 @@ -1505,6 +1509,7 @@
  11.451  061B;ARABIC SEMICOLON;Po;0;AL;;;;;N;;;;;
  11.452  061E;ARABIC TRIPLE DOT PUNCTUATION MARK;Po;0;AL;;;;;N;;;;;
  11.453  061F;ARABIC QUESTION MARK;Po;0;AL;;;;;N;;;;;
  11.454 +0620;ARABIC LETTER KASHMIRI YEH;Lo;0;AL;;;;;N;;;;;
  11.455  0621;ARABIC LETTER HAMZA;Lo;0;AL;;;;;N;ARABIC LETTER HAMZAH;;;;
  11.456  0622;ARABIC LETTER ALEF WITH MADDA ABOVE;Lo;0;AL;0627 0653;;;;N;ARABIC LETTER MADDAH ON ALEF;;;;
  11.457  0623;ARABIC LETTER ALEF WITH HAMZA ABOVE;Lo;0;AL;0627 0654;;;;N;ARABIC LETTER HAMZAH ON ALEF;;;;
  11.458 @@ -1567,6 +1572,7 @@
  11.459  065C;ARABIC VOWEL SIGN DOT BELOW;Mn;220;NSM;;;;;N;;;;;
  11.460  065D;ARABIC REVERSED DAMMA;Mn;230;NSM;;;;;N;;;;;
  11.461  065E;ARABIC FATHA WITH TWO DOTS;Mn;230;NSM;;;;;N;;;;;
  11.462 +065F;ARABIC WAVY HAMZA BELOW;Mn;220;NSM;;;;;N;;;;;
  11.463  0660;ARABIC-INDIC DIGIT ZERO;Nd;0;AN;;0;0;0;N;;;;;
  11.464  0661;ARABIC-INDIC DIGIT ONE;Nd;0;AN;;1;1;1;N;;;;;
  11.465  0662;ARABIC-INDIC DIGIT TWO;Nd;0;AN;;2;2;2;N;;;;;
  11.466 @@ -1646,7 +1652,7 @@
  11.467  06AC;ARABIC LETTER KAF WITH DOT ABOVE;Lo;0;AL;;;;;N;ARABIC LETTER CAF WITH DOT ABOVE;;;;
  11.468  06AD;ARABIC LETTER NG;Lo;0;AL;;;;;N;ARABIC LETTER CAF WITH THREE DOTS ABOVE;;;;
  11.469  06AE;ARABIC LETTER KAF WITH THREE DOTS BELOW;Lo;0;AL;;;;;N;ARABIC LETTER CAF WITH THREE DOTS BELOW;;;;
  11.470 -06AF;ARABIC LETTER GAF;Lo;0;AL;;;;;N;;*;;;
  11.471 +06AF;ARABIC LETTER GAF;Lo;0;AL;;;;;N;;;;;
  11.472  06B0;ARABIC LETTER GAF WITH RING;Lo;0;AL;;;;;N;;;;;
  11.473  06B1;ARABIC LETTER NGOEH;Lo;0;AL;;;;;N;ARABIC LETTER GAF WITH TWO DOTS ABOVE;;;;
  11.474  06B2;ARABIC LETTER GAF WITH TWO DOTS BELOW;Lo;0;AL;;;;;N;;;;;
  11.475 @@ -1679,7 +1685,7 @@
  11.476  06CD;ARABIC LETTER YEH WITH TAIL;Lo;0;AL;;;;;N;ARABIC LETTER YA WITH TAIL;;;;
  11.477  06CE;ARABIC LETTER YEH WITH SMALL V;Lo;0;AL;;;;;N;ARABIC LETTER YA WITH SMALL V;;;;
  11.478  06CF;ARABIC LETTER WAW WITH DOT ABOVE;Lo;0;AL;;;;;N;;;;;
  11.479 -06D0;ARABIC LETTER E;Lo;0;AL;;;;;N;ARABIC LETTER YA WITH TWO DOTS VERTICAL BELOW;*;;;
  11.480 +06D0;ARABIC LETTER E;Lo;0;AL;;;;;N;ARABIC LETTER YA WITH TWO DOTS VERTICAL BELOW;;;;
  11.481  06D1;ARABIC LETTER YEH WITH THREE DOTS BELOW;Lo;0;AL;;;;;N;ARABIC LETTER YA WITH THREE DOTS BELOW;;;;
  11.482  06D2;ARABIC LETTER YEH BARREE;Lo;0;AL;;;;;N;ARABIC LETTER YA BARREE;;;;
  11.483  06D3;ARABIC LETTER YEH BARREE WITH HAMZA ABOVE;Lo;0;AL;06D2 0654;;;;N;ARABIC LETTER HAMZAH ON YA BARREE;;;;
  11.484 @@ -1693,7 +1699,7 @@
  11.485  06DB;ARABIC SMALL HIGH THREE DOTS;Mn;230;NSM;;;;;N;;;;;
  11.486  06DC;ARABIC SMALL HIGH SEEN;Mn;230;NSM;;;;;N;;;;;
  11.487  06DD;ARABIC END OF AYAH;Cf;0;AN;;;;;N;;;;;
  11.488 -06DE;ARABIC START OF RUB EL HIZB;Me;0;NSM;;;;;N;;;;;
  11.489 +06DE;ARABIC START OF RUB EL HIZB;So;0;ON;;;;;N;;;;;
  11.490  06DF;ARABIC SMALL HIGH ROUNDED ZERO;Mn;230;NSM;;;;;N;;;;;
  11.491  06E0;ARABIC SMALL HIGH UPRIGHT RECTANGULAR ZERO;Mn;230;NSM;;;;;N;;;;;
  11.492  06E1;ARABIC SMALL HIGH DOTLESS HEAD OF KHAH;Mn;230;NSM;;;;;N;;;;;
  11.493 @@ -1741,7 +1747,7 @@
  11.494  070B;SYRIAC HARKLEAN OBELUS;Po;0;AL;;;;;N;;;;;
  11.495  070C;SYRIAC HARKLEAN METOBELUS;Po;0;AL;;;;;N;;;;;
  11.496  070D;SYRIAC HARKLEAN ASTERISCUS;Po;0;AL;;;;;N;;;;;
  11.497 -070F;SYRIAC ABBREVIATION MARK;Cf;0;BN;;;;;N;;;;;
  11.498 +070F;SYRIAC ABBREVIATION MARK;Cf;0;AL;;;;;N;;;;;
  11.499  0710;SYRIAC LETTER ALAPH;Lo;0;AL;;;;;N;;;;;
  11.500  0711;SYRIAC LETTER SUPERSCRIPT ALAPH;Mn;36;NSM;;;;;N;;;;;
  11.501  0712;SYRIAC LETTER BETH;Lo;0;AL;;;;;N;;;;;
  11.502 @@ -1961,6 +1967,97 @@
  11.503  07F8;NKO COMMA;Po;0;ON;;;;;N;;;;;
  11.504  07F9;NKO EXCLAMATION MARK;Po;0;ON;;;;;N;;;;;
  11.505  07FA;NKO LAJANYALAN;Lm;0;R;;;;;N;;;;;
  11.506 +0800;SAMARITAN LETTER ALAF;Lo;0;R;;;;;N;;;;;
  11.507 +0801;SAMARITAN LETTER BIT;Lo;0;R;;;;;N;;;;;
  11.508 +0802;SAMARITAN LETTER GAMAN;Lo;0;R;;;;;N;;;;;
  11.509 +0803;SAMARITAN LETTER DALAT;Lo;0;R;;;;;N;;;;;
  11.510 +0804;SAMARITAN LETTER IY;Lo;0;R;;;;;N;;;;;
  11.511 +0805;SAMARITAN LETTER BAA;Lo;0;R;;;;;N;;;;;
  11.512 +0806;SAMARITAN LETTER ZEN;Lo;0;R;;;;;N;;;;;
  11.513 +0807;SAMARITAN LETTER IT;Lo;0;R;;;;;N;;;;;
  11.514 +0808;SAMARITAN LETTER TIT;Lo;0;R;;;;;N;;;;;
  11.515 +0809;SAMARITAN LETTER YUT;Lo;0;R;;;;;N;;;;;
  11.516 +080A;SAMARITAN LETTER KAAF;Lo;0;R;;;;;N;;;;;
  11.517 +080B;SAMARITAN LETTER LABAT;Lo;0;R;;;;;N;;;;;
  11.518 +080C;SAMARITAN LETTER MIM;Lo;0;R;;;;;N;;;;;
  11.519 +080D;SAMARITAN LETTER NUN;Lo;0;R;;;;;N;;;;;
  11.520 +080E;SAMARITAN LETTER SINGAAT;Lo;0;R;;;;;N;;;;;
  11.521 +080F;SAMARITAN LETTER IN;Lo;0;R;;;;;N;;;;;
  11.522 +0810;SAMARITAN LETTER FI;Lo;0;R;;;;;N;;;;;
  11.523 +0811;SAMARITAN LETTER TSAADIY;Lo;0;R;;;;;N;;;;;
  11.524 +0812;SAMARITAN LETTER QUF;Lo;0;R;;;;;N;;;;;
  11.525 +0813;SAMARITAN LETTER RISH;Lo;0;R;;;;;N;;;;;
  11.526 +0814;SAMARITAN LETTER SHAN;Lo;0;R;;;;;N;;;;;
  11.527 +0815;SAMARITAN LETTER TAAF;Lo;0;R;;;;;N;;;;;
  11.528 +0816;SAMARITAN MARK IN;Mn;230;NSM;;;;;N;;;;;
  11.529 +0817;SAMARITAN MARK IN-ALAF;Mn;230;NSM;;;;;N;;;;;
  11.530 +0818;SAMARITAN MARK OCCLUSION;Mn;230;NSM;;;;;N;;;;;
  11.531 +0819;SAMARITAN MARK DAGESH;Mn;230;NSM;;;;;N;;;;;
  11.532 +081A;SAMARITAN MODIFIER LETTER EPENTHETIC YUT;Lm;0;R;;;;;N;;;;;
  11.533 +081B;SAMARITAN MARK EPENTHETIC YUT;Mn;230;NSM;;;;;N;;;;;
  11.534 +081C;SAMARITAN VOWEL SIGN LONG E;Mn;230;NSM;;;;;N;;;;;
  11.535 +081D;SAMARITAN VOWEL SIGN E;Mn;230;NSM;;;;;N;;;;;
  11.536 +081E;SAMARITAN VOWEL SIGN OVERLONG AA;Mn;230;NSM;;;;;N;;;;;
  11.537 +081F;SAMARITAN VOWEL SIGN LONG AA;Mn;230;NSM;;;;;N;;;;;
  11.538 +0820;SAMARITAN VOWEL SIGN AA;Mn;230;NSM;;;;;N;;;;;
  11.539 +0821;SAMARITAN VOWEL SIGN OVERLONG A;Mn;230;NSM;;;;;N;;;;;
  11.540 +0822;SAMARITAN VOWEL SIGN LONG A;Mn;230;NSM;;;;;N;;;;;
  11.541 +0823;SAMARITAN VOWEL SIGN A;Mn;230;NSM;;;;;N;;;;;
  11.542 +0824;SAMARITAN MODIFIER LETTER SHORT A;Lm;0;R;;;;;N;;;;;
  11.543 +0825;SAMARITAN VOWEL SIGN SHORT A;Mn;230;NSM;;;;;N;;;;;
  11.544 +0826;SAMARITAN VOWEL SIGN LONG U;Mn;230;NSM;;;;;N;;;;;
  11.545 +0827;SAMARITAN VOWEL SIGN U;Mn;230;NSM;;;;;N;;;;;
  11.546 +0828;SAMARITAN MODIFIER LETTER I;Lm;0;R;;;;;N;;;;;
  11.547 +0829;SAMARITAN VOWEL SIGN LONG I;Mn;230;NSM;;;;;N;;;;;
  11.548 +082A;SAMARITAN VOWEL SIGN I;Mn;230;NSM;;;;;N;;;;;
  11.549 +082B;SAMARITAN VOWEL SIGN O;Mn;230;NSM;;;;;N;;;;;
  11.550 +082C;SAMARITAN VOWEL SIGN SUKUN;Mn;230;NSM;;;;;N;;;;;
  11.551 +082D;SAMARITAN MARK NEQUDAA;Mn;230;NSM;;;;;N;;;;;
  11.552 +0830;SAMARITAN PUNCTUATION NEQUDAA;Po;0;R;;;;;N;;;;;
  11.553 +0831;SAMARITAN PUNCTUATION AFSAAQ;Po;0;R;;;;;N;;;;;
  11.554 +0832;SAMARITAN PUNCTUATION ANGED;Po;0;R;;;;;N;;;;;
  11.555 +0833;SAMARITAN PUNCTUATION BAU;Po;0;R;;;;;N;;;;;
  11.556 +0834;SAMARITAN PUNCTUATION ATMAAU;Po;0;R;;;;;N;;;;;
  11.557 +0835;SAMARITAN PUNCTUATION SHIYYAALAA;Po;0;R;;;;;N;;;;;
  11.558 +0836;SAMARITAN ABBREVIATION MARK;Po;0;R;;;;;N;;;;;
  11.559 +0837;SAMARITAN PUNCTUATION MELODIC QITSA;Po;0;R;;;;;N;;;;;
  11.560 +0838;SAMARITAN PUNCTUATION ZIQAA;Po;0;R;;;;;N;;;;;
  11.561 +0839;SAMARITAN PUNCTUATION QITSA;Po;0;R;;;;;N;;;;;
  11.562 +083A;SAMARITAN PUNCTUATION ZAEF;Po;0;R;;;;;N;;;;;
  11.563 +083B;SAMARITAN PUNCTUATION TURU;Po;0;R;;;;;N;;;;;
  11.564 +083C;SAMARITAN PUNCTUATION ARKAANU;Po;0;R;;;;;N;;;;;
  11.565 +083D;SAMARITAN PUNCTUATION SOF MASHFAAT;Po;0;R;;;;;N;;;;;
  11.566 +083E;SAMARITAN PUNCTUATION ANNAAU;Po;0;R;;;;;N;;;;;
  11.567 +0840;MANDAIC LETTER HALQA;Lo;0;R;;;;;N;;;;;
  11.568 +0841;MANDAIC LETTER AB;Lo;0;R;;;;;N;;;;;
  11.569 +0842;MANDAIC LETTER AG;Lo;0;R;;;;;N;;;;;
  11.570 +0843;MANDAIC LETTER AD;Lo;0;R;;;;;N;;;;;
  11.571 +0844;MANDAIC LETTER AH;Lo;0;R;;;;;N;;;;;
  11.572 +0845;MANDAIC LETTER USHENNA;Lo;0;R;;;;;N;;;;;
  11.573 +0846;MANDAIC LETTER AZ;Lo;0;R;;;;;N;;;;;
  11.574 +0847;MANDAIC LETTER IT;Lo;0;R;;;;;N;;;;;
  11.575 +0848;MANDAIC LETTER ATT;Lo;0;R;;;;;N;;;;;
  11.576 +0849;MANDAIC LETTER AKSA;Lo;0;R;;;;;N;;;;;
  11.577 +084A;MANDAIC LETTER AK;Lo;0;R;;;;;N;;;;;
  11.578 +084B;MANDAIC LETTER AL;Lo;0;R;;;;;N;;;;;
  11.579 +084C;MANDAIC LETTER AM;Lo;0;R;;;;;N;;;;;
  11.580 +084D;MANDAIC LETTER AN;Lo;0;R;;;;;N;;;;;
  11.581 +084E;MANDAIC LETTER AS;Lo;0;R;;;;;N;;;;;
  11.582 +084F;MANDAIC LETTER IN;Lo;0;R;;;;;N;;;;;
  11.583 +0850;MANDAIC LETTER AP;Lo;0;R;;;;;N;;;;;
  11.584 +0851;MANDAIC LETTER ASZ;Lo;0;R;;;;;N;;;;;
  11.585 +0852;MANDAIC LETTER AQ;Lo;0;R;;;;;N;;;;;
  11.586 +0853;MANDAIC LETTER AR;Lo;0;R;;;;;N;;;;;
  11.587 +0854;MANDAIC LETTER ASH;Lo;0;R;;;;;N;;;;;
  11.588 +0855;MANDAIC LETTER AT;Lo;0;R;;;;;N;;;;;
  11.589 +0856;MANDAIC LETTER DUSHENNA;Lo;0;R;;;;;N;;;;;
  11.590 +0857;MANDAIC LETTER KAD;Lo;0;R;;;;;N;;;;;
  11.591 +0858;MANDAIC LETTER AIN;Lo;0;R;;;;;N;;;;;
  11.592 +0859;MANDAIC AFFRICATION MARK;Mn;220;NSM;;;;;N;;;;;
  11.593 +085A;MANDAIC VOCALIZATION MARK;Mn;220;NSM;;;;;N;;;;;
  11.594 +085B;MANDAIC GEMINATION MARK;Mn;220;NSM;;;;;N;;;;;
  11.595 +085E;MANDAIC PUNCTUATION;Po;0;R;;;;;N;;;;;
  11.596 +0900;DEVANAGARI SIGN INVERTED CANDRABINDU;Mn;0;NSM;;;;;N;;;;;
  11.597  0901;DEVANAGARI SIGN CANDRABINDU;Mn;0;NSM;;;;;N;;;;;
  11.598  0902;DEVANAGARI SIGN ANUSVARA;Mn;0;NSM;;;;;N;;;;;
  11.599  0903;DEVANAGARI SIGN VISARGA;Mc;0;L;;;;;N;;;;;
  11.600 @@ -2018,6 +2115,8 @@
  11.601  0937;DEVANAGARI LETTER SSA;Lo;0;L;;;;;N;;;;;
  11.602  0938;DEVANAGARI LETTER SA;Lo;0;L;;;;;N;;;;;
  11.603  0939;DEVANAGARI LETTER HA;Lo;0;L;;;;;N;;;;;
  11.604 +093A;DEVANAGARI VOWEL SIGN OE;Mn;0;NSM;;;;;N;;;;;
  11.605 +093B;DEVANAGARI VOWEL SIGN OOE;Mc;0;L;;;;;N;;;;;
  11.606  093C;DEVANAGARI SIGN NUKTA;Mn;7;NSM;;;;;N;;;;;
  11.607  093D;DEVANAGARI SIGN AVAGRAHA;Lo;0;L;;;;;N;;;;;
  11.608  093E;DEVANAGARI VOWEL SIGN AA;Mc;0;L;;;;;N;;;;;
  11.609 @@ -2036,11 +2135,16 @@
  11.610  094B;DEVANAGARI VOWEL SIGN O;Mc;0;L;;;;;N;;;;;
  11.611  094C;DEVANAGARI VOWEL SIGN AU;Mc;0;L;;;;;N;;;;;
  11.612  094D;DEVANAGARI SIGN VIRAMA;Mn;9;NSM;;;;;N;;;;;
  11.613 +094E;DEVANAGARI VOWEL SIGN PRISHTHAMATRA E;Mc;0;L;;;;;N;;;;;
  11.614 +094F;DEVANAGARI VOWEL SIGN AW;Mc;0;L;;;;;N;;;;;
  11.615  0950;DEVANAGARI OM;Lo;0;L;;;;;N;;;;;
  11.616  0951;DEVANAGARI STRESS SIGN UDATTA;Mn;230;NSM;;;;;N;;;;;
  11.617  0952;DEVANAGARI STRESS SIGN ANUDATTA;Mn;220;NSM;;;;;N;;;;;
  11.618  0953;DEVANAGARI GRAVE ACCENT;Mn;230;NSM;;;;;N;;;;;
  11.619  0954;DEVANAGARI ACUTE ACCENT;Mn;230;NSM;;;;;N;;;;;
  11.620 +0955;DEVANAGARI VOWEL SIGN CANDRA LONG E;Mn;0;NSM;;;;;N;;;;;
  11.621 +0956;DEVANAGARI VOWEL SIGN UE;Mn;0;NSM;;;;;N;;;;;
  11.622 +0957;DEVANAGARI VOWEL SIGN UUE;Mn;0;NSM;;;;;N;;;;;
  11.623  0958;DEVANAGARI LETTER QA;Lo;0;L;0915 093C;;;;N;;;;;
  11.624  0959;DEVANAGARI LETTER KHHA;Lo;0;L;0916 093C;;;;N;;;;;
  11.625  095A;DEVANAGARI LETTER GHHA;Lo;0;L;0917 093C;;;;N;;;;;
  11.626 @@ -2068,6 +2172,13 @@
  11.627  0970;DEVANAGARI ABBREVIATION SIGN;Po;0;L;;;;;N;;;;;
  11.628  0971;DEVANAGARI SIGN HIGH SPACING DOT;Lm;0;L;;;;;N;;;;;
  11.629  0972;DEVANAGARI LETTER CANDRA A;Lo;0;L;;;;;N;;;;;
  11.630 +0973;DEVANAGARI LETTER OE;Lo;0;L;;;;;N;;;;;
  11.631 +0974;DEVANAGARI LETTER OOE;Lo;0;L;;;;;N;;;;;
  11.632 +0975;DEVANAGARI LETTER AW;Lo;0;L;;;;;N;;;;;
  11.633 +0976;DEVANAGARI LETTER UE;Lo;0;L;;;;;N;;;;;
  11.634 +0977;DEVANAGARI LETTER UUE;Lo;0;L;;;;;N;;;;;
  11.635 +0979;DEVANAGARI LETTER ZHA;Lo;0;L;;;;;N;;;;;
  11.636 +097A;DEVANAGARI LETTER HEAVY YA;Lo;0;L;;;;;N;;;;;
  11.637  097B;DEVANAGARI LETTER GGA;Lo;0;L;;;;;N;;;;;
  11.638  097C;DEVANAGARI LETTER JJA;Lo;0;L;;;;;N;;;;;
  11.639  097D;DEVANAGARI LETTER GLOTTAL STOP;Lo;0;L;;;;;N;;;;;
  11.640 @@ -2153,17 +2264,18 @@
  11.641  09ED;BENGALI DIGIT SEVEN;Nd;0;L;;7;7;7;N;;;;;
  11.642  09EE;BENGALI DIGIT EIGHT;Nd;0;L;;8;8;8;N;;;;;
  11.643  09EF;BENGALI DIGIT NINE;Nd;0;L;;9;9;9;N;;;;;
  11.644 -09F0;BENGALI LETTER RA WITH MIDDLE DIAGONAL;Lo;0;L;;;;;N;;Assamese;;;
  11.645 -09F1;BENGALI LETTER RA WITH LOWER DIAGONAL;Lo;0;L;;;;;N;BENGALI LETTER VA WITH LOWER DIAGONAL;Assamese;;;
  11.646 +09F0;BENGALI LETTER RA WITH MIDDLE DIAGONAL;Lo;0;L;;;;;N;;;;;
  11.647 +09F1;BENGALI LETTER RA WITH LOWER DIAGONAL;Lo;0;L;;;;;N;BENGALI LETTER VA WITH LOWER DIAGONAL;;;;
  11.648  09F2;BENGALI RUPEE MARK;Sc;0;ET;;;;;N;;;;;
  11.649  09F3;BENGALI RUPEE SIGN;Sc;0;ET;;;;;N;;;;;
  11.650 -09F4;BENGALI CURRENCY NUMERATOR ONE;No;0;L;;;;1;N;;;;;
  11.651 -09F5;BENGALI CURRENCY NUMERATOR TWO;No;0;L;;;;2;N;;;;;
  11.652 -09F6;BENGALI CURRENCY NUMERATOR THREE;No;0;L;;;;3;N;;;;;
  11.653 -09F7;BENGALI CURRENCY NUMERATOR FOUR;No;0;L;;;;4;N;;;;;
  11.654 -09F8;BENGALI CURRENCY NUMERATOR ONE LESS THAN THE DENOMINATOR;No;0;L;;;;;N;;;;;
  11.655 +09F4;BENGALI CURRENCY NUMERATOR ONE;No;0;L;;;;1/16;N;;;;;
  11.656 +09F5;BENGALI CURRENCY NUMERATOR TWO;No;0;L;;;;1/8;N;;;;;
  11.657 +09F6;BENGALI CURRENCY NUMERATOR THREE;No;0;L;;;;3/16;N;;;;;
  11.658 +09F7;BENGALI CURRENCY NUMERATOR FOUR;No;0;L;;;;1/4;N;;;;;
  11.659 +09F8;BENGALI CURRENCY NUMERATOR ONE LESS THAN THE DENOMINATOR;No;0;L;;;;3/4;N;;;;;
  11.660  09F9;BENGALI CURRENCY DENOMINATOR SIXTEEN;No;0;L;;;;16;N;;;;;
  11.661  09FA;BENGALI ISSHAR;So;0;L;;;;;N;;;;;
  11.662 +09FB;BENGALI GANDA MARK;Sc;0;ET;;;;;N;;;;;
  11.663  0A01;GURMUKHI SIGN ADAK BINDI;Mn;0;NSM;;;;;N;;;;;
  11.664  0A02;GURMUKHI SIGN BINDI;Mn;0;NSM;;;;;N;;;;;
  11.665  0A03;GURMUKHI SIGN VISARGA;Mc;0;L;;;;;N;;;;;
  11.666 @@ -2410,6 +2522,12 @@
  11.667  0B6F;ORIYA DIGIT NINE;Nd;0;L;;9;9;9;N;;;;;
  11.668  0B70;ORIYA ISSHAR;So;0;L;;;;;N;;;;;
  11.669  0B71;ORIYA LETTER WA;Lo;0;L;;;;;N;;;;;
  11.670 +0B72;ORIYA FRACTION ONE QUARTER;No;0;L;;;;1/4;N;;;;;
  11.671 +0B73;ORIYA FRACTION ONE HALF;No;0;L;;;;1/2;N;;;;;
  11.672 +0B74;ORIYA FRACTION THREE QUARTERS;No;0;L;;;;3/4;N;;;;;
  11.673 +0B75;ORIYA FRACTION ONE SIXTEENTH;No;0;L;;;;1/16;N;;;;;
  11.674 +0B76;ORIYA FRACTION ONE EIGHTH;No;0;L;;;;1/8;N;;;;;
  11.675 +0B77;ORIYA FRACTION THREE SIXTEENTHS;No;0;L;;;;3/16;N;;;;;
  11.676  0B82;TAMIL SIGN ANUSVARA;Mn;0;NSM;;;;;N;;;;;
  11.677  0B83;TAMIL SIGN VISARGA;Lo;0;L;;;;;N;;;;;
  11.678  0B85;TAMIL LETTER A;Lo;0;L;;;;;N;;;;;
  11.679 @@ -2474,14 +2592,14 @@
  11.680  0BF0;TAMIL NUMBER TEN;No;0;L;;;;10;N;;;;;
  11.681  0BF1;TAMIL NUMBER ONE HUNDRED;No;0;L;;;;100;N;;;;;
  11.682  0BF2;TAMIL NUMBER ONE THOUSAND;No;0;L;;;;1000;N;;;;;
  11.683 -0BF3;TAMIL DAY SIGN;So;0;ON;;;;;N;;Naal;;;
  11.684 -0BF4;TAMIL MONTH SIGN;So;0;ON;;;;;N;;Maatham;;;
  11.685 -0BF5;TAMIL YEAR SIGN;So;0;ON;;;;;N;;Varudam;;;
  11.686 -0BF6;TAMIL DEBIT SIGN;So;0;ON;;;;;N;;Patru;;;
  11.687 -0BF7;TAMIL CREDIT SIGN;So;0;ON;;;;;N;;Varavu;;;
  11.688 -0BF8;TAMIL AS ABOVE SIGN;So;0;ON;;;;;N;;Merpadi;;;
  11.689 -0BF9;TAMIL RUPEE SIGN;Sc;0;ET;;;;;N;;Rupai;;;
  11.690 -0BFA;TAMIL NUMBER SIGN;So;0;ON;;;;;N;;Enn;;;
  11.691 +0BF3;TAMIL DAY SIGN;So;0;ON;;;;;N;;;;;
  11.692 +0BF4;TAMIL MONTH SIGN;So;0;ON;;;;;N;;;;;
  11.693 +0BF5;TAMIL YEAR SIGN;So;0;ON;;;;;N;;;;;
  11.694 +0BF6;TAMIL DEBIT SIGN;So;0;ON;;;;;N;;;;;
  11.695 +0BF7;TAMIL CREDIT SIGN;So;0;ON;;;;;N;;;;;
  11.696 +0BF8;TAMIL AS ABOVE SIGN;So;0;ON;;;;;N;;;;;
  11.697 +0BF9;TAMIL RUPEE SIGN;Sc;0;ET;;;;;N;;;;;
  11.698 +0BFA;TAMIL NUMBER SIGN;So;0;ON;;;;;N;;;;;
  11.699  0C01;TELUGU SIGN CANDRABINDU;Mc;0;L;;;;;N;;;;;
  11.700  0C02;TELUGU SIGN ANUSVARA;Mc;0;L;;;;;N;;;;;
  11.701  0C03;TELUGU SIGN VISARGA;Mc;0;L;;;;;N;;;;;
  11.702 @@ -2659,8 +2777,8 @@
  11.703  0CED;KANNADA DIGIT SEVEN;Nd;0;L;;7;7;7;N;;;;;
  11.704  0CEE;KANNADA DIGIT EIGHT;Nd;0;L;;8;8;8;N;;;;;
  11.705  0CEF;KANNADA DIGIT NINE;Nd;0;L;;9;9;9;N;;;;;
  11.706 -0CF1;KANNADA SIGN JIHVAMULIYA;So;0;ON;;;;;N;;;;;
  11.707 -0CF2;KANNADA SIGN UPADHMANIYA;So;0;ON;;;;;N;;;;;
  11.708 +0CF1;KANNADA SIGN JIHVAMULIYA;Lo;0;L;;;;;N;;;;;
  11.709 +0CF2;KANNADA SIGN UPADHMANIYA;Lo;0;L;;;;;N;;;;;
  11.710  0D02;MALAYALAM SIGN ANUSVARA;Mc;0;L;;;;;N;;;;;
  11.711  0D03;MALAYALAM SIGN VISARGA;Mc;0;L;;;;;N;;;;;
  11.712  0D05;MALAYALAM LETTER A;Lo;0;L;;;;;N;;;;;
  11.713 @@ -2697,6 +2815,7 @@
  11.714  0D26;MALAYALAM LETTER DA;Lo;0;L;;;;;N;;;;;
  11.715  0D27;MALAYALAM LETTER DHA;Lo;0;L;;;;;N;;;;;
  11.716  0D28;MALAYALAM LETTER NA;Lo;0;L;;;;;N;;;;;
  11.717 +0D29;MALAYALAM LETTER NNNA;Lo;0;L;;;;;N;;;;;
  11.718  0D2A;MALAYALAM LETTER PA;Lo;0;L;;;;;N;;;;;
  11.719  0D2B;MALAYALAM LETTER PHA;Lo;0;L;;;;;N;;;;;
  11.720  0D2C;MALAYALAM LETTER BA;Lo;0;L;;;;;N;;;;;
  11.721 @@ -2713,6 +2832,7 @@
  11.722  0D37;MALAYALAM LETTER SSA;Lo;0;L;;;;;N;;;;;
  11.723  0D38;MALAYALAM LETTER SA;Lo;0;L;;;;;N;;;;;
  11.724  0D39;MALAYALAM LETTER HA;Lo;0;L;;;;;N;;;;;
  11.725 +0D3A;MALAYALAM LETTER TTTA;Lo;0;L;;;;;N;;;;;
  11.726  0D3D;MALAYALAM SIGN AVAGRAHA;Lo;0;L;;;;;N;;;;;
  11.727  0D3E;MALAYALAM VOWEL SIGN AA;Mc;0;L;;;;;N;;;;;
  11.728  0D3F;MALAYALAM VOWEL SIGN I;Mc;0;L;;;;;N;;;;;
  11.729 @@ -2728,6 +2848,7 @@
  11.730  0D4B;MALAYALAM VOWEL SIGN OO;Mc;0;L;0D47 0D3E;;;;N;;;;;
  11.731  0D4C;MALAYALAM VOWEL SIGN AU;Mc;0;L;0D46 0D57;;;;N;;;;;
  11.732  0D4D;MALAYALAM SIGN VIRAMA;Mn;9;NSM;;;;;N;;;;;
  11.733 +0D4E;MALAYALAM LETTER DOT REPH;Lo;0;L;;;;;N;;;;;
  11.734  0D57;MALAYALAM AU LENGTH MARK;Mc;0;L;;;;;N;;;;;
  11.735  0D60;MALAYALAM LETTER VOCALIC RR;Lo;0;L;;;;;N;;;;;
  11.736  0D61;MALAYALAM LETTER VOCALIC LL;Lo;0;L;;;;;N;;;;;
  11.737 @@ -2882,7 +3003,7 @@
  11.738  0E2C;THAI CHARACTER LO CHULA;Lo;0;L;;;;;N;THAI LETTER LO CHULA;;;;
  11.739  0E2D;THAI CHARACTER O ANG;Lo;0;L;;;;;N;THAI LETTER O ANG;;;;
  11.740  0E2E;THAI CHARACTER HO NOKHUK;Lo;0;L;;;;;N;THAI LETTER HO NOK HUK;;;;
  11.741 -0E2F;THAI CHARACTER PAIYANNOI;Lo;0;L;;;;;N;THAI PAI YAN NOI;paiyan noi;;;
  11.742 +0E2F;THAI CHARACTER PAIYANNOI;Lo;0;L;;;;;N;THAI PAI YAN NOI;;;;
  11.743  0E30;THAI CHARACTER SARA A;Lo;0;L;;;;;N;THAI VOWEL SIGN SARA A;;;;
  11.744  0E31;THAI CHARACTER MAI HAN-AKAT;Mn;0;NSM;;;;;N;THAI VOWEL SIGN MAI HAN-AKAT;;;;
  11.745  0E32;THAI CHARACTER SARA AA;Lo;0;L;;;;;N;THAI VOWEL SIGN SARA AA;;;;
  11.746 @@ -2890,7 +3011,7 @@
  11.747  0E34;THAI CHARACTER SARA I;Mn;0;NSM;;;;;N;THAI VOWEL SIGN SARA I;;;;
  11.748  0E35;THAI CHARACTER SARA II;Mn;0;NSM;;;;;N;THAI VOWEL SIGN SARA II;;;;
  11.749  0E36;THAI CHARACTER SARA UE;Mn;0;NSM;;;;;N;THAI VOWEL SIGN SARA UE;;;;
  11.750 -0E37;THAI CHARACTER SARA UEE;Mn;0;NSM;;;;;N;THAI VOWEL SIGN SARA UEE;sara uue;;;
  11.751 +0E37;THAI CHARACTER SARA UEE;Mn;0;NSM;;;;;N;THAI VOWEL SIGN SARA UEE;;;;
  11.752  0E38;THAI CHARACTER SARA U;Mn;103;NSM;;;;;N;THAI VOWEL SIGN SARA U;;;;
  11.753  0E39;THAI CHARACTER SARA UU;Mn;103;NSM;;;;;N;THAI VOWEL SIGN SARA UU;;;;
  11.754  0E3A;THAI CHARACTER PHINTHU;Mn;9;NSM;;;;;N;THAI VOWEL SIGN PHINTHU;;;;
  11.755 @@ -2898,17 +3019,17 @@
  11.756  0E40;THAI CHARACTER SARA E;Lo;0;L;;;;;N;THAI VOWEL SIGN SARA E;;;;
  11.757  0E41;THAI CHARACTER SARA AE;Lo;0;L;;;;;N;THAI VOWEL SIGN SARA AE;;;;
  11.758  0E42;THAI CHARACTER SARA O;Lo;0;L;;;;;N;THAI VOWEL SIGN SARA O;;;;
  11.759 -0E43;THAI CHARACTER SARA AI MAIMUAN;Lo;0;L;;;;;N;THAI VOWEL SIGN SARA MAI MUAN;sara ai mai muan;;;
  11.760 -0E44;THAI CHARACTER SARA AI MAIMALAI;Lo;0;L;;;;;N;THAI VOWEL SIGN SARA MAI MALAI;sara ai mai malai;;;
  11.761 -0E45;THAI CHARACTER LAKKHANGYAO;Lo;0;L;;;;;N;THAI LAK KHANG YAO;lakkhang yao;;;
  11.762 -0E46;THAI CHARACTER MAIYAMOK;Lm;0;L;;;;;N;THAI MAI YAMOK;mai yamok;;;
  11.763 -0E47;THAI CHARACTER MAITAIKHU;Mn;0;NSM;;;;;N;THAI VOWEL SIGN MAI TAI KHU;mai taikhu;;;
  11.764 +0E43;THAI CHARACTER SARA AI MAIMUAN;Lo;0;L;;;;;N;THAI VOWEL SIGN SARA MAI MUAN;;;;
  11.765 +0E44;THAI CHARACTER SARA AI MAIMALAI;Lo;0;L;;;;;N;THAI VOWEL SIGN SARA MAI MALAI;;;;
  11.766 +0E45;THAI CHARACTER LAKKHANGYAO;Lo;0;L;;;;;N;THAI LAK KHANG YAO;;;;
  11.767 +0E46;THAI CHARACTER MAIYAMOK;Lm;0;L;;;;;N;THAI MAI YAMOK;;;;
  11.768 +0E47;THAI CHARACTER MAITAIKHU;Mn;0;NSM;;;;;N;THAI VOWEL SIGN MAI TAI KHU;;;;
  11.769  0E48;THAI CHARACTER MAI EK;Mn;107;NSM;;;;;N;THAI TONE MAI EK;;;;
  11.770  0E49;THAI CHARACTER MAI THO;Mn;107;NSM;;;;;N;THAI TONE MAI THO;;;;
  11.771  0E4A;THAI CHARACTER MAI TRI;Mn;107;NSM;;;;;N;THAI TONE MAI TRI;;;;
  11.772  0E4B;THAI CHARACTER MAI CHATTAWA;Mn;107;NSM;;;;;N;THAI TONE MAI CHATTAWA;;;;
  11.773  0E4C;THAI CHARACTER THANTHAKHAT;Mn;0;NSM;;;;;N;THAI THANTHAKHAT;;;;
  11.774 -0E4D;THAI CHARACTER NIKHAHIT;Mn;0;NSM;;;;;N;THAI NIKKHAHIT;nikkhahit;;;
  11.775 +0E4D;THAI CHARACTER NIKHAHIT;Mn;0;NSM;;;;;N;THAI NIKKHAHIT;;;;
  11.776  0E4E;THAI CHARACTER YAMAKKAN;Mn;0;NSM;;;;;N;THAI YAMAKKAN;;;;
  11.777  0E4F;THAI CHARACTER FONGMAN;Po;0;L;;;;;N;THAI FONGMAN;;;;
  11.778  0E50;THAI DIGIT ZERO;Nd;0;L;;0;0;0;N;;;;;
  11.779 @@ -2989,37 +3110,37 @@
  11.780  0EDC;LAO HO NO;Lo;0;L;<compat> 0EAB 0E99;;;;N;;;;;
  11.781  0EDD;LAO HO MO;Lo;0;L;<compat> 0EAB 0EA1;;;;N;;;;;
  11.782  0F00;TIBETAN SYLLABLE OM;Lo;0;L;;;;;N;;;;;
  11.783 -0F01;TIBETAN MARK GTER YIG MGO TRUNCATED A;So;0;L;;;;;N;;ter yik go a thung;;;
  11.784 -0F02;TIBETAN MARK GTER YIG MGO -UM RNAM BCAD MA;So;0;L;;;;;N;;ter yik go wum nam chey ma;;;
  11.785 -0F03;TIBETAN MARK GTER YIG MGO -UM GTER TSHEG MA;So;0;L;;;;;N;;ter yik go wum ter tsek ma;;;
  11.786 -0F04;TIBETAN MARK INITIAL YIG MGO MDUN MA;Po;0;L;;;;;N;TIBETAN SINGLE ORNAMENT;yik go dun ma;;;
  11.787 -0F05;TIBETAN MARK CLOSING YIG MGO SGAB MA;Po;0;L;;;;;N;;yik go kab ma;;;
  11.788 -0F06;TIBETAN MARK CARET YIG MGO PHUR SHAD MA;Po;0;L;;;;;N;;yik go pur shey ma;;;
  11.789 -0F07;TIBETAN MARK YIG MGO TSHEG SHAD MA;Po;0;L;;;;;N;;yik go tsek shey ma;;;
  11.790 -0F08;TIBETAN MARK SBRUL SHAD;Po;0;L;;;;;N;TIBETAN RGYANSHAD;drul shey;;;
  11.791 -0F09;TIBETAN MARK BSKUR YIG MGO;Po;0;L;;;;;N;;kur yik go;;;
  11.792 -0F0A;TIBETAN MARK BKA- SHOG YIG MGO;Po;0;L;;;;;N;;ka sho yik go;;;
  11.793 -0F0B;TIBETAN MARK INTERSYLLABIC TSHEG;Po;0;L;;;;;N;TIBETAN TSEG;tsek;;;
  11.794 -0F0C;TIBETAN MARK DELIMITER TSHEG BSTAR;Po;0;L;<noBreak> 0F0B;;;;N;;tsek tar;;;
  11.795 -0F0D;TIBETAN MARK SHAD;Po;0;L;;;;;N;TIBETAN SHAD;shey;;;
  11.796 -0F0E;TIBETAN MARK NYIS SHAD;Po;0;L;;;;;N;TIBETAN DOUBLE SHAD;nyi shey;;;
  11.797 -0F0F;TIBETAN MARK TSHEG SHAD;Po;0;L;;;;;N;;tsek shey;;;
  11.798 -0F10;TIBETAN MARK NYIS TSHEG SHAD;Po;0;L;;;;;N;;nyi tsek shey;;;
  11.799 -0F11;TIBETAN MARK RIN CHEN SPUNGS SHAD;Po;0;L;;;;;N;TIBETAN RINCHANPHUNGSHAD;rinchen pung shey;;;
  11.800 -0F12;TIBETAN MARK RGYA GRAM SHAD;Po;0;L;;;;;N;;gya tram shey;;;
  11.801 -0F13;TIBETAN MARK CARET -DZUD RTAGS ME LONG CAN;So;0;L;;;;;N;;dzu ta me long chen;;;
  11.802 -0F14;TIBETAN MARK GTER TSHEG;So;0;L;;;;;N;TIBETAN COMMA;ter tsek;;;
  11.803 -0F15;TIBETAN LOGOTYPE SIGN CHAD RTAGS;So;0;L;;;;;N;;che ta;;;
  11.804 -0F16;TIBETAN LOGOTYPE SIGN LHAG RTAGS;So;0;L;;;;;N;;hlak ta;;;
  11.805 -0F17;TIBETAN ASTROLOGICAL SIGN SGRA GCAN -CHAR RTAGS;So;0;L;;;;;N;;trachen char ta;;;
  11.806 -0F18;TIBETAN ASTROLOGICAL SIGN -KHYUD PA;Mn;220;NSM;;;;;N;;kyu pa;;;
  11.807 -0F19;TIBETAN ASTROLOGICAL SIGN SDONG TSHUGS;Mn;220;NSM;;;;;N;;dong tsu;;;
  11.808 -0F1A;TIBETAN SIGN RDEL DKAR GCIG;So;0;L;;;;;N;;deka chig;;;
  11.809 -0F1B;TIBETAN SIGN RDEL DKAR GNYIS;So;0;L;;;;;N;;deka nyi;;;
  11.810 -0F1C;TIBETAN SIGN RDEL DKAR GSUM;So;0;L;;;;;N;;deka sum;;;
  11.811 -0F1D;TIBETAN SIGN RDEL NAG GCIG;So;0;L;;;;;N;;dena chig;;;
  11.812 -0F1E;TIBETAN SIGN RDEL NAG GNYIS;So;0;L;;;;;N;;dena nyi;;;
  11.813 -0F1F;TIBETAN SIGN RDEL DKAR RDEL NAG;So;0;L;;;;;N;;deka dena;;;
  11.814 +0F01;TIBETAN MARK GTER YIG MGO TRUNCATED A;So;0;L;;;;;N;;;;;
  11.815 +0F02;TIBETAN MARK GTER YIG MGO -UM RNAM BCAD MA;So;0;L;;;;;N;;;;;
  11.816 +0F03;TIBETAN MARK GTER YIG MGO -UM GTER TSHEG MA;So;0;L;;;;;N;;;;;
  11.817 +0F04;TIBETAN MARK INITIAL YIG MGO MDUN MA;Po;0;L;;;;;N;TIBETAN SINGLE ORNAMENT;;;;
  11.818 +0F05;TIBETAN MARK CLOSING YIG MGO SGAB MA;Po;0;L;;;;;N;;;;;
  11.819 +0F06;TIBETAN MARK CARET YIG MGO PHUR SHAD MA;Po;0;L;;;;;N;;;;;
  11.820 +0F07;TIBETAN MARK YIG MGO TSHEG SHAD MA;Po;0;L;;;;;N;;;;;
  11.821 +0F08;TIBETAN MARK SBRUL SHAD;Po;0;L;;;;;N;TIBETAN RGYANSHAD;;;;
  11.822 +0F09;TIBETAN MARK BSKUR YIG MGO;Po;0;L;;;;;N;;;;;
  11.823 +0F0A;TIBETAN MARK BKA- SHOG YIG MGO;Po;0;L;;;;;N;;;;;
  11.824 +0F0B;TIBETAN MARK INTERSYLLABIC TSHEG;Po;0;L;;;;;N;TIBETAN TSEG;;;;
  11.825 +0F0C;TIBETAN MARK DELIMITER TSHEG BSTAR;Po;0;L;<noBreak> 0F0B;;;;N;;;;;
  11.826 +0F0D;TIBETAN MARK SHAD;Po;0;L;;;;;N;TIBETAN SHAD;;;;
  11.827 +0F0E;TIBETAN MARK NYIS SHAD;Po;0;L;;;;;N;TIBETAN DOUBLE SHAD;;;;
  11.828 +0F0F;TIBETAN MARK TSHEG SHAD;Po;0;L;;;;;N;;;;;
  11.829 +0F10;TIBETAN MARK NYIS TSHEG SHAD;Po;0;L;;;;;N;;;;;
  11.830 +0F11;TIBETAN MARK RIN CHEN SPUNGS SHAD;Po;0;L;;;;;N;TIBETAN RINCHANPHUNGSHAD;;;;
  11.831 +0F12;TIBETAN MARK RGYA GRAM SHAD;Po;0;L;;;;;N;;;;;
  11.832 +0F13;TIBETAN MARK CARET -DZUD RTAGS ME LONG CAN;So;0;L;;;;;N;;;;;
  11.833 +0F14;TIBETAN MARK GTER TSHEG;So;0;L;;;;;N;TIBETAN COMMA;;;;
  11.834 +0F15;TIBETAN LOGOTYPE SIGN CHAD RTAGS;So;0;L;;;;;N;;;;;
  11.835 +0F16;TIBETAN LOGOTYPE SIGN LHAG RTAGS;So;0;L;;;;;N;;;;;
  11.836 +0F17;TIBETAN ASTROLOGICAL SIGN SGRA GCAN -CHAR RTAGS;So;0;L;;;;;N;;;;;
  11.837 +0F18;TIBETAN ASTROLOGICAL SIGN -KHYUD PA;Mn;220;NSM;;;;;N;;;;;
  11.838 +0F19;TIBETAN ASTROLOGICAL SIGN SDONG TSHUGS;Mn;220;NSM;;;;;N;;;;;
  11.839 +0F1A;TIBETAN SIGN RDEL DKAR GCIG;So;0;L;;;;;N;;;;;
  11.840 +0F1B;TIBETAN SIGN RDEL DKAR GNYIS;So;0;L;;;;;N;;;;;
  11.841 +0F1C;TIBETAN SIGN RDEL DKAR GSUM;So;0;L;;;;;N;;;;;
  11.842 +0F1D;TIBETAN SIGN RDEL NAG GCIG;So;0;L;;;;;N;;;;;
  11.843 +0F1E;TIBETAN SIGN RDEL NAG GNYIS;So;0;L;;;;;N;;;;;
  11.844 +0F1F;TIBETAN SIGN RDEL DKAR RDEL NAG;So;0;L;;;;;N;;;;;
  11.845  0F20;TIBETAN DIGIT ZERO;Nd;0;L;;0;0;0;N;;;;;
  11.846  0F21;TIBETAN DIGIT ONE;Nd;0;L;;1;1;1;N;;;;;
  11.847  0F22;TIBETAN DIGIT TWO;Nd;0;L;;2;2;2;N;;;;;
  11.848 @@ -3040,18 +3161,18 @@
  11.849  0F31;TIBETAN DIGIT HALF EIGHT;No;0;L;;;;15/2;N;;;;;
  11.850  0F32;TIBETAN DIGIT HALF NINE;No;0;L;;;;17/2;N;;;;;
  11.851  0F33;TIBETAN DIGIT HALF ZERO;No;0;L;;;;-1/2;N;;;;;
  11.852 -0F34;TIBETAN MARK BSDUS RTAGS;So;0;L;;;;;N;;du ta;;;
  11.853 -0F35;TIBETAN MARK NGAS BZUNG NYI ZLA;Mn;220;NSM;;;;;N;TIBETAN HONORIFIC UNDER RING;nge zung nyi da;;;
  11.854 -0F36;TIBETAN MARK CARET -DZUD RTAGS BZHI MIG CAN;So;0;L;;;;;N;;dzu ta shi mig chen;;;
  11.855 -0F37;TIBETAN MARK NGAS BZUNG SGOR RTAGS;Mn;220;NSM;;;;;N;TIBETAN UNDER RING;nge zung gor ta;;;
  11.856 -0F38;TIBETAN MARK CHE MGO;So;0;L;;;;;N;;che go;;;
  11.857 -0F39;TIBETAN MARK TSA -PHRU;Mn;216;NSM;;;;;N;TIBETAN LENITION MARK;tsa tru;;;
  11.858 -0F3A;TIBETAN MARK GUG RTAGS GYON;Ps;0;ON;;;;;Y;;gug ta yun;;;
  11.859 -0F3B;TIBETAN MARK GUG RTAGS GYAS;Pe;0;ON;;;;;Y;;gug ta ye;;;
  11.860 -0F3C;TIBETAN MARK ANG KHANG GYON;Ps;0;ON;;;;;Y;TIBETAN LEFT BRACE;ang kang yun;;;
  11.861 -0F3D;TIBETAN MARK ANG KHANG GYAS;Pe;0;ON;;;;;Y;TIBETAN RIGHT BRACE;ang kang ye;;;
  11.862 -0F3E;TIBETAN SIGN YAR TSHES;Mc;0;L;;;;;N;;yar tse;;;
  11.863 -0F3F;TIBETAN SIGN MAR TSHES;Mc;0;L;;;;;N;;mar tse;;;
  11.864 +0F34;TIBETAN MARK BSDUS RTAGS;So;0;L;;;;;N;;;;;
  11.865 +0F35;TIBETAN MARK NGAS BZUNG NYI ZLA;Mn;220;NSM;;;;;N;TIBETAN HONORIFIC UNDER RING;;;;
  11.866 +0F36;TIBETAN MARK CARET -DZUD RTAGS BZHI MIG CAN;So;0;L;;;;;N;;;;;
  11.867 +0F37;TIBETAN MARK NGAS BZUNG SGOR RTAGS;Mn;220;NSM;;;;;N;TIBETAN UNDER RING;;;;
  11.868 +0F38;TIBETAN MARK CHE MGO;So;0;L;;;;;N;;;;;
  11.869 +0F39;TIBETAN MARK TSA -PHRU;Mn;216;NSM;;;;;N;TIBETAN LENITION MARK;;;;
  11.870 +0F3A;TIBETAN MARK GUG RTAGS GYON;Ps;0;ON;;;;;Y;;;;;
  11.871 +0F3B;TIBETAN MARK GUG RTAGS GYAS;Pe;0;ON;;;;;Y;;;;;
  11.872 +0F3C;TIBETAN MARK ANG KHANG GYON;Ps;0;ON;;;;;Y;TIBETAN LEFT BRACE;;;;
  11.873 +0F3D;TIBETAN MARK ANG KHANG GYAS;Pe;0;ON;;;;;Y;TIBETAN RIGHT BRACE;;;;
  11.874 +0F3E;TIBETAN SIGN YAR TSHES;Mc;0;L;;;;;N;;;;;
  11.875 +0F3F;TIBETAN SIGN MAR TSHES;Mc;0;L;;;;;N;;;;;
  11.876  0F40;TIBETAN LETTER KA;Lo;0;L;;;;;N;;;;;
  11.877  0F41;TIBETAN LETTER KHA;Lo;0;L;;;;;N;;;;;
  11.878  0F42;TIBETAN LETTER GA;Lo;0;L;;;;;N;;;;;
  11.879 @@ -3085,7 +3206,7 @@
  11.880  0F5F;TIBETAN LETTER ZA;Lo;0;L;;;;;N;;;;;
  11.881  0F60;TIBETAN LETTER -A;Lo;0;L;;;;;N;TIBETAN LETTER AA;;;;
  11.882  0F61;TIBETAN LETTER YA;Lo;0;L;;;;;N;;;;;
  11.883 -0F62;TIBETAN LETTER RA;Lo;0;L;;;;;N;;*;;;
  11.884 +0F62;TIBETAN LETTER RA;Lo;0;L;;;;;N;;;;;
  11.885  0F63;TIBETAN LETTER LA;Lo;0;L;;;;;N;;;;;
  11.886  0F64;TIBETAN LETTER SHA;Lo;0;L;;;;;N;;;;;
  11.887  0F65;TIBETAN LETTER SSA;Lo;0;L;;;;;N;TIBETAN LETTER REVERSED SHA;;;;
  11.888 @@ -3093,7 +3214,7 @@
  11.889  0F67;TIBETAN LETTER HA;Lo;0;L;;;;;N;;;;;
  11.890  0F68;TIBETAN LETTER A;Lo;0;L;;;;;N;;;;;
  11.891  0F69;TIBETAN LETTER KSSA;Lo;0;L;0F40 0FB5;;;;N;;;;;
  11.892 -0F6A;TIBETAN LETTER FIXED-FORM RA;Lo;0;L;;;;;N;;*;;;
  11.893 +0F6A;TIBETAN LETTER FIXED-FORM RA;Lo;0;L;;;;;N;;;;;
  11.894  0F6B;TIBETAN LETTER KKA;Lo;0;L;;;;;N;;;;;
  11.895  0F6C;TIBETAN LETTER RRA;Lo;0;L;;;;;N;;;;;
  11.896  0F71;TIBETAN VOWEL SIGN AA;Mn;129;NSM;;;;;N;;;;;
  11.897 @@ -3109,20 +3230,24 @@
  11.898  0F7B;TIBETAN VOWEL SIGN EE;Mn;130;NSM;;;;;N;TIBETAN VOWEL SIGN AI;;;;
  11.899  0F7C;TIBETAN VOWEL SIGN O;Mn;130;NSM;;;;;N;;;;;
  11.900  0F7D;TIBETAN VOWEL SIGN OO;Mn;130;NSM;;;;;N;TIBETAN VOWEL SIGN AU;;;;
  11.901 -0F7E;TIBETAN SIGN RJES SU NGA RO;Mn;0;NSM;;;;;N;TIBETAN ANUSVARA;je su nga ro;;;
  11.902 -0F7F;TIBETAN SIGN RNAM BCAD;Mc;0;L;;;;;N;TIBETAN VISARGA;nam chey;;;
  11.903 +0F7E;TIBETAN SIGN RJES SU NGA RO;Mn;0;NSM;;;;;N;TIBETAN ANUSVARA;;;;
  11.904 +0F7F;TIBETAN SIGN RNAM BCAD;Mc;0;L;;;;;N;TIBETAN VISARGA;;;;
  11.905  0F80;TIBETAN VOWEL SIGN REVERSED I;Mn;130;NSM;;;;;N;TIBETAN VOWEL SIGN SHORT I;;;;
  11.906  0F81;TIBETAN VOWEL SIGN REVERSED II;Mn;0;NSM;0F71 0F80;;;;N;;;;;
  11.907 -0F82;TIBETAN SIGN NYI ZLA NAA DA;Mn;230;NSM;;;;;N;TIBETAN CANDRABINDU WITH ORNAMENT;nyi da na da;;;
  11.908 -0F83;TIBETAN SIGN SNA LDAN;Mn;230;NSM;;;;;N;TIBETAN CANDRABINDU;nan de;;;
  11.909 +0F82;TIBETAN SIGN NYI ZLA NAA DA;Mn;230;NSM;;;;;N;TIBETAN CANDRABINDU WITH ORNAMENT;;;;
  11.910 +0F83;TIBETAN SIGN SNA LDAN;Mn;230;NSM;;;;;N;TIBETAN CANDRABINDU;;;;
  11.911  0F84;TIBETAN MARK HALANTA;Mn;9;NSM;;;;;N;TIBETAN VIRAMA;;;;
  11.912  0F85;TIBETAN MARK PALUTA;Po;0;L;;;;;N;TIBETAN CHUCHENYIGE;;;;
  11.913 -0F86;TIBETAN SIGN LCI RTAGS;Mn;230;NSM;;;;;N;;ji ta;;;
  11.914 -0F87;TIBETAN SIGN YANG RTAGS;Mn;230;NSM;;;;;N;;yang ta;;;
  11.915 -0F88;TIBETAN SIGN LCE TSA CAN;Lo;0;L;;;;;N;;che tsa chen;;;
  11.916 -0F89;TIBETAN SIGN MCHU CAN;Lo;0;L;;;;;N;;chu chen;;;
  11.917 -0F8A;TIBETAN SIGN GRU CAN RGYINGS;Lo;0;L;;;;;N;;tru chen ging;;;
  11.918 -0F8B;TIBETAN SIGN GRU MED RGYINGS;Lo;0;L;;;;;N;;tru me ging;;;
  11.919 +0F86;TIBETAN SIGN LCI RTAGS;Mn;230;NSM;;;;;N;;;;;
  11.920 +0F87;TIBETAN SIGN YANG RTAGS;Mn;230;NSM;;;;;N;;;;;
  11.921 +0F88;TIBETAN SIGN LCE TSA CAN;Lo;0;L;;;;;N;;;;;
  11.922 +0F89;TIBETAN SIGN MCHU CAN;Lo;0;L;;;;;N;;;;;
  11.923 +0F8A;TIBETAN SIGN GRU CAN RGYINGS;Lo;0;L;;;;;N;;;;;
  11.924 +0F8B;TIBETAN SIGN GRU MED RGYINGS;Lo;0;L;;;;;N;;;;;
  11.925 +0F8C;TIBETAN SIGN INVERTED MCHU CAN;Lo;0;L;;;;;N;;;;;
  11.926 +0F8D;TIBETAN SUBJOINED SIGN LCE TSA CAN;Mn;0;NSM;;;;;N;;;;;
  11.927 +0F8E;TIBETAN SUBJOINED SIGN MCHU CAN;Mn;0;NSM;;;;;N;;;;;
  11.928 +0F8F;TIBETAN SUBJOINED SIGN INVERTED MCHU CAN;Mn;0;NSM;;;;;N;;;;;
  11.929  0F90;TIBETAN SUBJOINED LETTER KA;Mn;0;NSM;;;;;N;;;;;
  11.930  0F91;TIBETAN SUBJOINED LETTER KHA;Mn;0;NSM;;;;;N;;;;;
  11.931  0F92;TIBETAN SUBJOINED LETTER GA;Mn;0;NSM;;;;;N;;;;;
  11.932 @@ -3151,12 +3276,12 @@
  11.933  0FAA;TIBETAN SUBJOINED LETTER TSHA;Mn;0;NSM;;;;;N;;;;;
  11.934  0FAB;TIBETAN SUBJOINED LETTER DZA;Mn;0;NSM;;;;;N;;;;;
  11.935  0FAC;TIBETAN SUBJOINED LETTER DZHA;Mn;0;NSM;0FAB 0FB7;;;;N;;;;;
  11.936 -0FAD;TIBETAN SUBJOINED LETTER WA;Mn;0;NSM;;;;;N;;*;;;
  11.937 +0FAD;TIBETAN SUBJOINED LETTER WA;Mn;0;NSM;;;;;N;;;;;
  11.938  0FAE;TIBETAN SUBJOINED LETTER ZHA;Mn;0;NSM;;;;;N;;;;;
  11.939  0FAF;TIBETAN SUBJOINED LETTER ZA;Mn;0;NSM;;;;;N;;;;;
  11.940  0FB0;TIBETAN SUBJOINED LETTER -A;Mn;0;NSM;;;;;N;;;;;
  11.941 -0FB1;TIBETAN SUBJOINED LETTER YA;Mn;0;NSM;;;;;N;;*;;;
  11.942 -0FB2;TIBETAN SUBJOINED LETTER RA;Mn;0;NSM;;;;;N;;*;;;
  11.943 +0FB1;TIBETAN SUBJOINED LETTER YA;Mn;0;NSM;;;;;N;;;;;
  11.944 +0FB2;TIBETAN SUBJOINED LETTER RA;Mn;0;NSM;;;;;N;;;;;
  11.945  0FB3;TIBETAN SUBJOINED LETTER LA;Mn;0;NSM;;;;;N;;;;;
  11.946  0FB4;TIBETAN SUBJOINED LETTER SHA;Mn;0;NSM;;;;;N;;;;;
  11.947  0FB5;TIBETAN SUBJOINED LETTER SSA;Mn;0;NSM;;;;;N;;;;;
  11.948 @@ -3164,31 +3289,37 @@
  11.949  0FB7;TIBETAN SUBJOINED LETTER HA;Mn;0;NSM;;;;;N;;;;;
  11.950  0FB8;TIBETAN SUBJOINED LETTER A;Mn;0;NSM;;;;;N;;;;;
  11.951  0FB9;TIBETAN SUBJOINED LETTER KSSA;Mn;0;NSM;0F90 0FB5;;;;N;;;;;
  11.952 -0FBA;TIBETAN SUBJOINED LETTER FIXED-FORM WA;Mn;0;NSM;;;;;N;;*;;;
  11.953 -0FBB;TIBETAN SUBJOINED LETTER FIXED-FORM YA;Mn;0;NSM;;;;;N;;*;;;
  11.954 -0FBC;TIBETAN SUBJOINED LETTER FIXED-FORM RA;Mn;0;NSM;;;;;N;;*;;;
  11.955 -0FBE;TIBETAN KU RU KHA;So;0;L;;;;;N;;kuruka;;;
  11.956 -0FBF;TIBETAN KU RU KHA BZHI MIG CAN;So;0;L;;;;;N;;kuruka shi mik chen;;;
  11.957 +0FBA;TIBETAN SUBJOINED LETTER FIXED-FORM WA;Mn;0;NSM;;;;;N;;;;;
  11.958 +0FBB;TIBETAN SUBJOINED LETTER FIXED-FORM YA;Mn;0;NSM;;;;;N;;;;;
  11.959 +0FBC;TIBETAN SUBJOINED LETTER FIXED-FORM RA;Mn;0;NSM;;;;;N;;;;;
  11.960 +0FBE;TIBETAN KU RU KHA;So;0;L;;;;;N;;;;;
  11.961 +0FBF;TIBETAN KU RU KHA BZHI MIG CAN;So;0;L;;;;;N;;;;;
  11.962  0FC0;TIBETAN CANTILLATION SIGN HEAVY BEAT;So;0;L;;;;;N;;;;;
  11.963  0FC1;TIBETAN CANTILLATION SIGN LIGHT BEAT;So;0;L;;;;;N;;;;;
  11.964 -0FC2;TIBETAN CANTILLATION SIGN CANG TE-U;So;0;L;;;;;N;;chang tyu;;;
  11.965 -0FC3;TIBETAN CANTILLATION SIGN SBUB -CHAL;So;0;L;;;;;N;;bub chey;;;
  11.966 -0FC4;TIBETAN SYMBOL DRIL BU;So;0;L;;;;;N;;drilbu;;;
  11.967 -0FC5;TIBETAN SYMBOL RDO RJE;So;0;L;;;;;N;;dorje;;;
  11.968 -0FC6;TIBETAN SYMBOL PADMA GDAN;Mn;220;NSM;;;;;N;;pema den;;;
  11.969 -0FC7;TIBETAN SYMBOL RDO RJE RGYA GRAM;So;0;L;;;;;N;;dorje gya dram;;;
  11.970 -0FC8;TIBETAN SYMBOL PHUR PA;So;0;L;;;;;N;;phurba;;;
  11.971 -0FC9;TIBETAN SYMBOL NOR BU;So;0;L;;;;;N;;norbu;;;
  11.972 -0FCA;TIBETAN SYMBOL NOR BU NYIS -KHYIL;So;0;L;;;;;N;;norbu nyi khyi;;;
  11.973 -0FCB;TIBETAN SYMBOL NOR BU GSUM -KHYIL;So;0;L;;;;;N;;norbu sum khyi;;;
  11.974 -0FCC;TIBETAN SYMBOL NOR BU BZHI -KHYIL;So;0;L;;;;;N;;norbu shi khyi;;;
  11.975 -0FCE;TIBETAN SIGN RDEL NAG RDEL DKAR;So;0;L;;;;;N;;dena deka;;;
  11.976 -0FCF;TIBETAN SIGN RDEL NAG GSUM;So;0;L;;;;;N;;dena sum;;;
  11.977 -0FD0;TIBETAN MARK BSKA- SHOG GI MGO RGYAN;Po;0;L;;;;;N;;ka shog gi go gyen;;;
  11.978 -0FD1;TIBETAN MARK MNYAM YIG GI MGO RGYAN;Po;0;L;;;;;N;;nyam yig gi go gyen;;;
  11.979 -0FD2;TIBETAN MARK NYIS TSHEG;Po;0;L;;;;;N;;nyi tsek;;;
  11.980 -0FD3;TIBETAN MARK INITIAL BRDA RNYING YIG MGO MDUN MA;Po;0;L;;;;;N;;da nying yik go dun ma;;;
  11.981 -0FD4;TIBETAN MARK CLOSING BRDA RNYING YIG MGO SGAB MA;Po;0;L;;;;;N;;da nying yik go kab ma;;;
  11.982 +0FC2;TIBETAN CANTILLATION SIGN CANG TE-U;So;0;L;;;;;N;;;;;
  11.983 +0FC3;TIBETAN CANTILLATION SIGN SBUB -CHAL;So;0;L;;;;;N;;;;;
  11.984 +0FC4;TIBETAN SYMBOL DRIL BU;So;0;L;;;;;N;;;;;
  11.985 +0FC5;TIBETAN SYMBOL RDO RJE;So;0;L;;;;;N;;;;;
  11.986 +0FC6;TIBETAN SYMBOL PADMA GDAN;Mn;220;NSM;;;;;N;;;;;
  11.987 +0FC7;TIBETAN SYMBOL RDO RJE RGYA GRAM;So;0;L;;;;;N;;;;;
  11.988 +0FC8;TIBETAN SYMBOL PHUR PA;So;0;L;;;;;N;;;;;
  11.989 +0FC9;TIBETAN SYMBOL NOR BU;So;0;L;;;;;N;;;;;
  11.990 +0FCA;TIBETAN SYMBOL NOR BU NYIS -KHYIL;So;0;L;;;;;N;;;;;
  11.991 +0FCB;TIBETAN SYMBOL NOR BU GSUM -KHYIL;So;0;L;;;;;N;;;;;
  11.992 +0FCC;TIBETAN SYMBOL NOR BU BZHI -KHYIL;So;0;L;;;;;N;;;;;
  11.993 +0FCE;TIBETAN SIGN RDEL NAG RDEL DKAR;So;0;L;;;;;N;;;;;
  11.994 +0FCF;TIBETAN SIGN RDEL NAG GSUM;So;0;L;;;;;N;;;;;
  11.995 +0FD0;TIBETAN MARK BSKA- SHOG GI MGO RGYAN;Po;0;L;;;;;N;;;;;
  11.996 +0FD1;TIBETAN MARK MNYAM YIG GI MGO RGYAN;Po;0;L;;;;;N;;;;;
  11.997 +0FD2;TIBETAN MARK NYIS TSHEG;Po;0;L;;;;;N;;;;;
  11.998 +0FD3;TIBETAN MARK INITIAL BRDA RNYING YIG MGO MDUN MA;Po;0;L;;;;;N;;;;;
  11.999 +0FD4;TIBETAN MARK CLOSING BRDA RNYING YIG MGO SGAB MA;Po;0;L;;;;;N;;;;;
 11.1000 +0FD5;RIGHT-FACING SVASTI SIGN;So;0;L;;;;;N;;;;;
 11.1001 +0FD6;LEFT-FACING SVASTI SIGN;So;0;L;;;;;N;;;;;
 11.1002 +0FD7;RIGHT-FACING SVASTI SIGN WITH DOTS;So;0;L;;;;;N;;;;;
 11.1003 +0FD8;LEFT-FACING SVASTI SIGN WITH DOTS;So;0;L;;;;;N;;;;;
 11.1004 +0FD9;TIBETAN MARK LEADING MCHAN RTAGS;Po;0;L;;;;;N;;;;;
 11.1005 +0FDA;TIBETAN MARK TRAILING MCHAN RTAGS;Po;0;L;;;;;N;;;;;
 11.1006  1000;MYANMAR LETTER KA;Lo;0;L;;;;;N;;;;;
 11.1007  1001;MYANMAR LETTER KHA;Lo;0;L;;;;;N;;;;;
 11.1008  1002;MYANMAR LETTER GA;Lo;0;L;;;;;N;;;;;
 11.1009 @@ -3343,46 +3474,50 @@
 11.1010  1097;MYANMAR SHAN DIGIT SEVEN;Nd;0;L;;7;7;7;N;;;;;
 11.1011  1098;MYANMAR SHAN DIGIT EIGHT;Nd;0;L;;8;8;8;N;;;;;
 11.1012  1099;MYANMAR SHAN DIGIT NINE;Nd;0;L;;9;9;9;N;;;;;
 11.1013 +109A;MYANMAR SIGN KHAMTI TONE-1;Mc;0;L;;;;;N;;;;;
 11.1014 +109B;MYANMAR SIGN KHAMTI TONE-3;Mc;0;L;;;;;N;;;;;
 11.1015 +109C;MYANMAR VOWEL SIGN AITON A;Mc;0;L;;;;;N;;;;;
 11.1016 +109D;MYANMAR VOWEL SIGN AITON AI;Mn;0;NSM;;;;;N;;;;;
 11.1017  109E;MYANMAR SYMBOL SHAN ONE;So;0;L;;;;;N;;;;;
 11.1018  109F;MYANMAR SYMBOL SHAN EXCLAMATION;So;0;L;;;;;N;;;;;
 11.1019 -10A0;GEORGIAN CAPITAL LETTER AN;Lu;0;L;;;;;N;;Khutsuri;;2D00;
 11.1020 -10A1;GEORGIAN CAPITAL LETTER BAN;Lu;0;L;;;;;N;;Khutsuri;;2D01;
 11.1021 -10A2;GEORGIAN CAPITAL LETTER GAN;Lu;0;L;;;;;N;;Khutsuri;;2D02;
 11.1022 -10A3;GEORGIAN CAPITAL LETTER DON;Lu;0;L;;;;;N;;Khutsuri;;2D03;
 11.1023 -10A4;GEORGIAN CAPITAL LETTER EN;Lu;0;L;;;;;N;;Khutsuri;;2D04;
 11.1024 -10A5;GEORGIAN CAPITAL LETTER VIN;Lu;0;L;;;;;N;;Khutsuri;;2D05;
 11.1025 -10A6;GEORGIAN CAPITAL LETTER ZEN;Lu;0;L;;;;;N;;Khutsuri;;2D06;
 11.1026 -10A7;GEORGIAN CAPITAL LETTER TAN;Lu;0;L;;;;;N;;Khutsuri;;2D07;
 11.1027 -10A8;GEORGIAN CAPITAL LETTER IN;Lu;0;L;;;;;N;;Khutsuri;;2D08;
 11.1028 -10A9;GEORGIAN CAPITAL LETTER KAN;Lu;0;L;;;;;N;;Khutsuri;;2D09;
 11.1029 -10AA;GEORGIAN CAPITAL LETTER LAS;Lu;0;L;;;;;N;;Khutsuri;;2D0A;
 11.1030 -10AB;GEORGIAN CAPITAL LETTER MAN;Lu;0;L;;;;;N;;Khutsuri;;2D0B;
 11.1031 -10AC;GEORGIAN CAPITAL LETTER NAR;Lu;0;L;;;;;N;;Khutsuri;;2D0C;
 11.1032 -10AD;GEORGIAN CAPITAL LETTER ON;Lu;0;L;;;;;N;;Khutsuri;;2D0D;
 11.1033 -10AE;GEORGIAN CAPITAL LETTER PAR;Lu;0;L;;;;;N;;Khutsuri;;2D0E;
 11.1034 -10AF;GEORGIAN CAPITAL LETTER ZHAR;Lu;0;L;;;;;N;;Khutsuri;;2D0F;
 11.1035 -10B0;GEORGIAN CAPITAL LETTER RAE;Lu;0;L;;;;;N;;Khutsuri;;2D10;
 11.1036 -10B1;GEORGIAN CAPITAL LETTER SAN;Lu;0;L;;;;;N;;Khutsuri;;2D11;
 11.1037 -10B2;GEORGIAN CAPITAL LETTER TAR;Lu;0;L;;;;;N;;Khutsuri;;2D12;
 11.1038 -10B3;GEORGIAN CAPITAL LETTER UN;Lu;0;L;;;;;N;;Khutsuri;;2D13;
 11.1039 -10B4;GEORGIAN CAPITAL LETTER PHAR;Lu;0;L;;;;;N;;Khutsuri;;2D14;
 11.1040 -10B5;GEORGIAN CAPITAL LETTER KHAR;Lu;0;L;;;;;N;;Khutsuri;;2D15;
 11.1041 -10B6;GEORGIAN CAPITAL LETTER GHAN;Lu;0;L;;;;;N;;Khutsuri;;2D16;
 11.1042 -10B7;GEORGIAN CAPITAL LETTER QAR;Lu;0;L;;;;;N;;Khutsuri;;2D17;
 11.1043 -10B8;GEORGIAN CAPITAL LETTER SHIN;Lu;0;L;;;;;N;;Khutsuri;;2D18;
 11.1044 -10B9;GEORGIAN CAPITAL LETTER CHIN;Lu;0;L;;;;;N;;Khutsuri;;2D19;
 11.1045 -10BA;GEORGIAN CAPITAL LETTER CAN;Lu;0;L;;;;;N;;Khutsuri;;2D1A;
 11.1046 -10BB;GEORGIAN CAPITAL LETTER JIL;Lu;0;L;;;;;N;;Khutsuri;;2D1B;
 11.1047 -10BC;GEORGIAN CAPITAL LETTER CIL;Lu;0;L;;;;;N;;Khutsuri;;2D1C;
 11.1048 -10BD;GEORGIAN CAPITAL LETTER CHAR;Lu;0;L;;;;;N;;Khutsuri;;2D1D;
 11.1049 -10BE;GEORGIAN CAPITAL LETTER XAN;Lu;0;L;;;;;N;;Khutsuri;;2D1E;
 11.1050 -10BF;GEORGIAN CAPITAL LETTER JHAN;Lu;0;L;;;;;N;;Khutsuri;;2D1F;
 11.1051 -10C0;GEORGIAN CAPITAL LETTER HAE;Lu;0;L;;;;;N;;Khutsuri;;2D20;
 11.1052 -10C1;GEORGIAN CAPITAL LETTER HE;Lu;0;L;;;;;N;;Khutsuri;;2D21;
 11.1053 -10C2;GEORGIAN CAPITAL LETTER HIE;Lu;0;L;;;;;N;;Khutsuri;;2D22;
 11.1054 -10C3;GEORGIAN CAPITAL LETTER WE;Lu;0;L;;;;;N;;Khutsuri;;2D23;
 11.1055 -10C4;GEORGIAN CAPITAL LETTER HAR;Lu;0;L;;;;;N;;Khutsuri;;2D24;
 11.1056 -10C5;GEORGIAN CAPITAL LETTER HOE;Lu;0;L;;;;;N;;Khutsuri;;2D25;
 11.1057 +10A0;GEORGIAN CAPITAL LETTER AN;Lu;0;L;;;;;N;;;;2D00;
 11.1058 +10A1;GEORGIAN CAPITAL LETTER BAN;Lu;0;L;;;;;N;;;;2D01;
 11.1059 +10A2;GEORGIAN CAPITAL LETTER GAN;Lu;0;L;;;;;N;;;;2D02;
 11.1060 +10A3;GEORGIAN CAPITAL LETTER DON;Lu;0;L;;;;;N;;;;2D03;
 11.1061 +10A4;GEORGIAN CAPITAL LETTER EN;Lu;0;L;;;;;N;;;;2D04;
 11.1062 +10A5;GEORGIAN CAPITAL LETTER VIN;Lu;0;L;;;;;N;;;;2D05;
 11.1063 +10A6;GEORGIAN CAPITAL LETTER ZEN;Lu;0;L;;;;;N;;;;2D06;
 11.1064 +10A7;GEORGIAN CAPITAL LETTER TAN;Lu;0;L;;;;;N;;;;2D07;
 11.1065 +10A8;GEORGIAN CAPITAL LETTER IN;Lu;0;L;;;;;N;;;;2D08;
 11.1066 +10A9;GEORGIAN CAPITAL LETTER KAN;Lu;0;L;;;;;N;;;;2D09;
 11.1067 +10AA;GEORGIAN CAPITAL LETTER LAS;Lu;0;L;;;;;N;;;;2D0A;
 11.1068 +10AB;GEORGIAN CAPITAL LETTER MAN;Lu;0;L;;;;;N;;;;2D0B;
 11.1069 +10AC;GEORGIAN CAPITAL LETTER NAR;Lu;0;L;;;;;N;;;;2D0C;
 11.1070 +10AD;GEORGIAN CAPITAL LETTER ON;Lu;0;L;;;;;N;;;;2D0D;
 11.1071 +10AE;GEORGIAN CAPITAL LETTER PAR;Lu;0;L;;;;;N;;;;2D0E;
 11.1072 +10AF;GEORGIAN CAPITAL LETTER ZHAR;Lu;0;L;;;;;N;;;;2D0F;
 11.1073 +10B0;GEORGIAN CAPITAL LETTER RAE;Lu;0;L;;;;;N;;;;2D10;
 11.1074 +10B1;GEORGIAN CAPITAL LETTER SAN;Lu;0;L;;;;;N;;;;2D11;
 11.1075 +10B2;GEORGIAN CAPITAL LETTER TAR;Lu;0;L;;;;;N;;;;2D12;
 11.1076 +10B3;GEORGIAN CAPITAL LETTER UN;Lu;0;L;;;;;N;;;;2D13;
 11.1077 +10B4;GEORGIAN CAPITAL LETTER PHAR;Lu;0;L;;;;;N;;;;2D14;
 11.1078 +10B5;GEORGIAN CAPITAL LETTER KHAR;Lu;0;L;;;;;N;;;;2D15;
 11.1079 +10B6;GEORGIAN CAPITAL LETTER GHAN;Lu;0;L;;;;;N;;;;2D16;
 11.1080 +10B7;GEORGIAN CAPITAL LETTER QAR;Lu;0;L;;;;;N;;;;2D17;
 11.1081 +10B8;GEORGIAN CAPITAL LETTER SHIN;Lu;0;L;;;;;N;;;;2D18;
 11.1082 +10B9;GEORGIAN CAPITAL LETTER CHIN;Lu;0;L;;;;;N;;;;2D19;
 11.1083 +10BA;GEORGIAN CAPITAL LETTER CAN;Lu;0;L;;;;;N;;;;2D1A;
 11.1084 +10BB;GEORGIAN CAPITAL LETTER JIL;Lu;0;L;;;;;N;;;;2D1B;
 11.1085 +10BC;GEORGIAN CAPITAL LETTER CIL;Lu;0;L;;;;;N;;;;2D1C;
 11.1086 +10BD;GEORGIAN CAPITAL LETTER CHAR;Lu;0;L;;;;;N;;;;2D1D;
 11.1087 +10BE;GEORGIAN CAPITAL LETTER XAN;Lu;0;L;;;;;N;;;;2D1E;
 11.1088 +10BF;GEORGIAN CAPITAL LETTER JHAN;Lu;0;L;;;;;N;;;;2D1F;
 11.1089 +10C0;GEORGIAN CAPITAL LETTER HAE;Lu;0;L;;;;;N;;;;2D20;
 11.1090 +10C1;GEORGIAN CAPITAL LETTER HE;Lu;0;L;;;;;N;;;;2D21;
 11.1091 +10C2;GEORGIAN CAPITAL LETTER HIE;Lu;0;L;;;;;N;;;;2D22;
 11.1092 +10C3;GEORGIAN CAPITAL LETTER WE;Lu;0;L;;;;;N;;;;2D23;
 11.1093 +10C4;GEORGIAN CAPITAL LETTER HAR;Lu;0;L;;;;;N;;;;2D24;
 11.1094 +10C5;GEORGIAN CAPITAL LETTER HOE;Lu;0;L;;;;;N;;;;2D25;
 11.1095  10D0;GEORGIAN LETTER AN;Lo;0;L;;;;;N;GEORGIAN SMALL LETTER AN;;;;
 11.1096  10D1;GEORGIAN LETTER BAN;Lo;0;L;;;;;N;GEORGIAN SMALL LETTER BAN;;;;
 11.1097  10D2;GEORGIAN LETTER GAN;Lo;0;L;;;;;N;GEORGIAN SMALL LETTER GAN;;;;
 11.1098 @@ -3428,25 +3563,25 @@
 11.1099  10FA;GEORGIAN LETTER AIN;Lo;0;L;;;;;N;;;;;
 11.1100  10FB;GEORGIAN PARAGRAPH SEPARATOR;Po;0;L;;;;;N;;;;;
 11.1101  10FC;MODIFIER LETTER GEORGIAN NAR;Lm;0;L;<super> 10DC;;;;N;;;;;
 11.1102 -1100;HANGUL CHOSEONG KIYEOK;Lo;0;L;;;;;N;;g *;;;
 11.1103 -1101;HANGUL CHOSEONG SSANGKIYEOK;Lo;0;L;;;;;N;;gg *;;;
 11.1104 -1102;HANGUL CHOSEONG NIEUN;Lo;0;L;;;;;N;;n *;;;
 11.1105 -1103;HANGUL CHOSEONG TIKEUT;Lo;0;L;;;;;N;;d *;;;
 11.1106 -1104;HANGUL CHOSEONG SSANGTIKEUT;Lo;0;L;;;;;N;;dd *;;;
 11.1107 -1105;HANGUL CHOSEONG RIEUL;Lo;0;L;;;;;N;;r *;;;
 11.1108 -1106;HANGUL CHOSEONG MIEUM;Lo;0;L;;;;;N;;m *;;;
 11.1109 -1107;HANGUL CHOSEONG PIEUP;Lo;0;L;;;;;N;;b *;;;
 11.1110 -1108;HANGUL CHOSEONG SSANGPIEUP;Lo;0;L;;;;;N;;bb *;;;
 11.1111 -1109;HANGUL CHOSEONG SIOS;Lo;0;L;;;;;N;;s *;;;
 11.1112 -110A;HANGUL CHOSEONG SSANGSIOS;Lo;0;L;;;;;N;;ss *;;;
 11.1113 +1100;HANGUL CHOSEONG KIYEOK;Lo;0;L;;;;;N;;;;;
 11.1114 +1101;HANGUL CHOSEONG SSANGKIYEOK;Lo;0;L;;;;;N;;;;;
 11.1115 +1102;HANGUL CHOSEONG NIEUN;Lo;0;L;;;;;N;;;;;
 11.1116 +1103;HANGUL CHOSEONG TIKEUT;Lo;0;L;;;;;N;;;;;
 11.1117 +1104;HANGUL CHOSEONG SSANGTIKEUT;Lo;0;L;;;;;N;;;;;
 11.1118 +1105;HANGUL CHOSEONG RIEUL;Lo;0;L;;;;;N;;;;;
 11.1119 +1106;HANGUL CHOSEONG MIEUM;Lo;0;L;;;;;N;;;;;
 11.1120 +1107;HANGUL CHOSEONG PIEUP;Lo;0;L;;;;;N;;;;;
 11.1121 +1108;HANGUL CHOSEONG SSANGPIEUP;Lo;0;L;;;;;N;;;;;
 11.1122 +1109;HANGUL CHOSEONG SIOS;Lo;0;L;;;;;N;;;;;
 11.1123 +110A;HANGUL CHOSEONG SSANGSIOS;Lo;0;L;;;;;N;;;;;
 11.1124  110B;HANGUL CHOSEONG IEUNG;Lo;0;L;;;;;N;;;;;
 11.1125 -110C;HANGUL CHOSEONG CIEUC;Lo;0;L;;;;;N;;j *;;;
 11.1126 -110D;HANGUL CHOSEONG SSANGCIEUC;Lo;0;L;;;;;N;;jj *;;;
 11.1127 -110E;HANGUL CHOSEONG CHIEUCH;Lo;0;L;;;;;N;;c *;;;
 11.1128 -110F;HANGUL CHOSEONG KHIEUKH;Lo;0;L;;;;;N;;k *;;;
 11.1129 -1110;HANGUL CHOSEONG THIEUTH;Lo;0;L;;;;;N;;t *;;;
 11.1130 -1111;HANGUL CHOSEONG PHIEUPH;Lo;0;L;;;;;N;;p *;;;
 11.1131 -1112;HANGUL CHOSEONG HIEUH;Lo;0;L;;;;;N;;h *;;;
 11.1132 +110C;HANGUL CHOSEONG CIEUC;Lo;0;L;;;;;N;;;;;
 11.1133 +110D;HANGUL CHOSEONG SSANGCIEUC;Lo;0;L;;;;;N;;;;;
 11.1134 +110E;HANGUL CHOSEONG CHIEUCH;Lo;0;L;;;;;N;;;;;
 11.1135 +110F;HANGUL CHOSEONG KHIEUKH;Lo;0;L;;;;;N;;;;;
 11.1136 +1110;HANGUL CHOSEONG THIEUTH;Lo;0;L;;;;;N;;;;;
 11.1137 +1111;HANGUL CHOSEONG PHIEUPH;Lo;0;L;;;;;N;;;;;
 11.1138 +1112;HANGUL CHOSEONG HIEUH;Lo;0;L;;;;;N;;;;;
 11.1139  1113;HANGUL CHOSEONG NIEUN-KIYEOK;Lo;0;L;;;;;N;;;;;
 11.1140  1114;HANGUL CHOSEONG SSANGNIEUN;Lo;0;L;;;;;N;;;;;
 11.1141  1115;HANGUL CHOSEONG NIEUN-TIKEUT;Lo;0;L;;;;;N;;;;;
 11.1142 @@ -3518,6 +3653,11 @@
 11.1143  1157;HANGUL CHOSEONG KAPYEOUNPHIEUPH;Lo;0;L;;;;;N;;;;;
 11.1144  1158;HANGUL CHOSEONG SSANGHIEUH;Lo;0;L;;;;;N;;;;;
 11.1145  1159;HANGUL CHOSEONG YEORINHIEUH;Lo;0;L;;;;;N;;;;;
 11.1146 +115A;HANGUL CHOSEONG KIYEOK-TIKEUT;Lo;0;L;;;;;N;;;;;
 11.1147 +115B;HANGUL CHOSEONG NIEUN-SIOS;Lo;0;L;;;;;N;;;;;
 11.1148 +115C;HANGUL CHOSEONG NIEUN-CIEUC;Lo;0;L;;;;;N;;;;;
 11.1149 +115D;HANGUL CHOSEONG NIEUN-HIEUH;Lo;0;L;;;;;N;;;;;
 11.1150 +115E;HANGUL CHOSEONG TIKEUT-RIEUL;Lo;0;L;;;;;N;;;;;
 11.1151  115F;HANGUL CHOSEONG FILLER;Lo;0;L;;;;;N;;;;;
 11.1152  1160;HANGUL JUNGSEONG FILLER;Lo;0;L;;;;;N;;;;;
 11.1153  1161;HANGUL JUNGSEONG A;Lo;0;L;;;;;N;;;;;
 11.1154 @@ -3586,33 +3726,38 @@
 11.1155  11A0;HANGUL JUNGSEONG ARAEA-U;Lo;0;L;;;;;N;;;;;
 11.1156  11A1;HANGUL JUNGSEONG ARAEA-I;Lo;0;L;;;;;N;;;;;
 11.1157  11A2;HANGUL JUNGSEONG SSANGARAEA;Lo;0;L;;;;;N;;;;;
 11.1158 -11A8;HANGUL JONGSEONG KIYEOK;Lo;0;L;;;;;N;;g *;;;
 11.1159 -11A9;HANGUL JONGSEONG SSANGKIYEOK;Lo;0;L;;;;;N;;gg *;;;
 11.1160 -11AA;HANGUL JONGSEONG KIYEOK-SIOS;Lo;0;L;;;;;N;;gs *;;;
 11.1161 -11AB;HANGUL JONGSEONG NIEUN;Lo;0;L;;;;;N;;n *;;;
 11.1162 -11AC;HANGUL JONGSEONG NIEUN-CIEUC;Lo;0;L;;;;;N;;nj *;;;
 11.1163 -11AD;HANGUL JONGSEONG NIEUN-HIEUH;Lo;0;L;;;;;N;;nh *;;;
 11.1164 -11AE;HANGUL JONGSEONG TIKEUT;Lo;0;L;;;;;N;;d *;;;
 11.1165 -11AF;HANGUL JONGSEONG RIEUL;Lo;0;L;;;;;N;;l *;;;
 11.1166 -11B0;HANGUL JONGSEONG RIEUL-KIYEOK;Lo;0;L;;;;;N;;lg *;;;
 11.1167 -11B1;HANGUL JONGSEONG RIEUL-MIEUM;Lo;0;L;;;;;N;;lm *;;;
 11.1168 -11B2;HANGUL JONGSEONG RIEUL-PIEUP;Lo;0;L;;;;;N;;lb *;;;
 11.1169 -11B3;HANGUL JONGSEONG RIEUL-SIOS;Lo;0;L;;;;;N;;ls *;;;
 11.1170 -11B4;HANGUL JONGSEONG RIEUL-THIEUTH;Lo;0;L;;;;;N;;lt *;;;
 11.1171 -11B5;HANGUL JONGSEONG RIEUL-PHIEUPH;Lo;0;L;;;;;N;;lp *;;;
 11.1172 -11B6;HANGUL JONGSEONG RIEUL-HIEUH;Lo;0;L;;;;;N;;lh *;;;
 11.1173 -11B7;HANGUL JONGSEONG MIEUM;Lo;0;L;;;;;N;;m *;;;
 11.1174 -11B8;HANGUL JONGSEONG PIEUP;Lo;0;L;;;;;N;;b *;;;
 11.1175 -11B9;HANGUL JONGSEONG PIEUP-SIOS;Lo;0;L;;;;;N;;bs *;;;
 11.1176 -11BA;HANGUL JONGSEONG SIOS;Lo;0;L;;;;;N;;s *;;;
 11.1177 -11BB;HANGUL JONGSEONG SSANGSIOS;Lo;0;L;;;;;N;;ss *;;;
 11.1178 -11BC;HANGUL JONGSEONG IEUNG;Lo;0;L;;;;;N;;ng *;;;
 11.1179 -11BD;HANGUL JONGSEONG CIEUC;Lo;0;L;;;;;N;;j *;;;
 11.1180 -11BE;HANGUL JONGSEONG CHIEUCH;Lo;0;L;;;;;N;;c *;;;
 11.1181 -11BF;HANGUL JONGSEONG KHIEUKH;Lo;0;L;;;;;N;;k *;;;
 11.1182 -11C0;HANGUL JONGSEONG THIEUTH;Lo;0;L;;;;;N;;t *;;;
 11.1183 -11C1;HANGUL JONGSEONG PHIEUPH;Lo;0;L;;;;;N;;p *;;;
 11.1184 -11C2;HANGUL JONGSEONG HIEUH;Lo;0;L;;;;;N;;h *;;;
 11.1185 +11A3;HANGUL JUNGSEONG A-EU;Lo;0;L;;;;;N;;;;;
 11.1186 +11A4;HANGUL JUNGSEONG YA-U;Lo;0;L;;;;;N;;;;;
 11.1187 +11A5;HANGUL JUNGSEONG YEO-YA;Lo;0;L;;;;;N;;;;;
 11.1188 +11A6;HANGUL JUNGSEONG O-YA;Lo;0;L;;;;;N;;;;;
 11.1189 +11A7;HANGUL JUNGSEONG O-YAE;Lo;0;L;;;;;N;;;;;
 11.1190 +11A8;HANGUL JONGSEONG KIYEOK;Lo;0;L;;;;;N;;;;;
 11.1191 +11A9;HANGUL JONGSEONG SSANGKIYEOK;Lo;0;L;;;;;N;;;;;
 11.1192 +11AA;HANGUL JONGSEONG KIYEOK-SIOS;Lo;0;L;;;;;N;;;;;
 11.1193 +11AB;HANGUL JONGSEONG NIEUN;Lo;0;L;;;;;N;;;;;
 11.1194 +11AC;HANGUL JONGSEONG NIEUN-CIEUC;Lo;0;L;;;;;N;;;;;
 11.1195 +11AD;HANGUL JONGSEONG NIEUN-HIEUH;Lo;0;L;;;;;N;;;;;
 11.1196 +11AE;HANGUL JONGSEONG TIKEUT;Lo;0;L;;;;;N;;;;;
 11.1197 +11AF;HANGUL JONGSEONG RIEUL;Lo;0;L;;;;;N;;;;;
 11.1198 +11B0;HANGUL JONGSEONG RIEUL-KIYEOK;Lo;0;L;;;;;N;;;;;
 11.1199 +11B1;HANGUL JONGSEONG RIEUL-MIEUM;Lo;0;L;;;;;N;;;;;
 11.1200 +11B2;HANGUL JONGSEONG RIEUL-PIEUP;Lo;0;L;;;;;N;;;;;
 11.1201 +11B3;HANGUL JONGSEONG RIEUL-SIOS;Lo;0;L;;;;;N;;;;;
 11.1202 +11B4;HANGUL JONGSEONG RIEUL-THIEUTH;Lo;0;L;;;;;N;;;;;
 11.1203 +11B5;HANGUL JONGSEONG RIEUL-PHIEUPH;Lo;0;L;;;;;N;;;;;
 11.1204 +11B6;HANGUL JONGSEONG RIEUL-HIEUH;Lo;0;L;;;;;N;;;;;
 11.1205 +11B7;HANGUL JONGSEONG MIEUM;Lo;0;L;;;;;N;;;;;
 11.1206 +11B8;HANGUL JONGSEONG PIEUP;Lo;0;L;;;;;N;;;;;
 11.1207 +11B9;HANGUL JONGSEONG PIEUP-SIOS;Lo;0;L;;;;;N;;;;;
 11.1208 +11BA;HANGUL JONGSEONG SIOS;Lo;0;L;;;;;N;;;;;
 11.1209 +11BB;HANGUL JONGSEONG SSANGSIOS;Lo;0;L;;;;;N;;;;;
 11.1210 +11BC;HANGUL JONGSEONG IEUNG;Lo;0;L;;;;;N;;;;;
 11.1211 +11BD;HANGUL JONGSEONG CIEUC;Lo;0;L;;;;;N;;;;;
 11.1212 +11BE;HANGUL JONGSEONG CHIEUCH;Lo;0;L;;;;;N;;;;;
 11.1213 +11BF;HANGUL JONGSEONG KHIEUKH;Lo;0;L;;;;;N;;;;;
 11.1214 +11C0;HANGUL JONGSEONG THIEUTH;Lo;0;L;;;;;N;;;;;
 11.1215 +11C1;HANGUL JONGSEONG PHIEUPH;Lo;0;L;;;;;N;;;;;
 11.1216 +11C2;HANGUL JONGSEONG HIEUH;Lo;0;L;;;;;N;;;;;
 11.1217  11C3;HANGUL JONGSEONG KIYEOK-RIEUL;Lo;0;L;;;;;N;;;;;
 11.1218  11C4;HANGUL JONGSEONG KIYEOK-SIOS-KIYEOK;Lo;0;L;;;;;N;;;;;
 11.1219  11C5;HANGUL JONGSEONG NIEUN-KIYEOK;Lo;0;L;;;;;N;;;;;
 11.1220 @@ -3668,6 +3813,12 @@
 11.1221  11F7;HANGUL JONGSEONG HIEUH-MIEUM;Lo;0;L;;;;;N;;;;;
 11.1222  11F8;HANGUL JONGSEONG HIEUH-PIEUP;Lo;0;L;;;;;N;;;;;
 11.1223  11F9;HANGUL JONGSEONG YEORINHIEUH;Lo;0;L;;;;;N;;;;;
 11.1224 +11FA;HANGUL JONGSEONG KIYEOK-NIEUN;Lo;0;L;;;;;N;;;;;
 11.1225 +11FB;HANGUL JONGSEONG KIYEOK-PIEUP;Lo;0;L;;;;;N;;;;;
 11.1226 +11FC;HANGUL JONGSEONG KIYEOK-CHIEUCH;Lo;0;L;;;;;N;;;;;
 11.1227 +11FD;HANGUL JONGSEONG KIYEOK-KHIEUKH;Lo;0;L;;;;;N;;;;;
 11.1228 +11FE;HANGUL JONGSEONG KIYEOK-HIEUH;Lo;0;L;;;;;N;;;;;
 11.1229 +11FF;HANGUL JONGSEONG SSANGNIEUN;Lo;0;L;;;;;N;;;;;
 11.1230  1200;ETHIOPIC SYLLABLE HA;Lo;0;L;;;;;N;;;;;
 11.1231  1201;ETHIOPIC SYLLABLE HU;Lo;0;L;;;;;N;;;;;
 11.1232  1202;ETHIOPIC SYLLABLE HI;Lo;0;L;;;;;N;;;;;
 11.1233 @@ -3994,6 +4145,8 @@
 11.1234  1358;ETHIOPIC SYLLABLE RYA;Lo;0;L;;;;;N;;;;;
 11.1235  1359;ETHIOPIC SYLLABLE MYA;Lo;0;L;;;;;N;;;;;
 11.1236  135A;ETHIOPIC SYLLABLE FYA;Lo;0;L;;;;;N;;;;;
 11.1237 +135D;ETHIOPIC COMBINING GEMINATION AND VOWEL LENGTH MARK;Mn;230;NSM;;;;;N;;;;;
 11.1238 +135E;ETHIOPIC COMBINING VOWEL LENGTH MARK;Mn;230;NSM;;;;;N;;;;;
 11.1239  135F;ETHIOPIC COMBINING GEMINATION MARK;Mn;230;NSM;;;;;N;;;;;
 11.1240  1360;ETHIOPIC SECTION MARK;So;0;L;;;;;N;;;;;
 11.1241  1361;ETHIOPIC WORDSPACE;Po;0;L;;;;;N;;;;;
 11.1242 @@ -4135,6 +4288,7 @@
 11.1243  13F2;CHEROKEE LETTER YO;Lo;0;L;;;;;N;;;;;
 11.1244  13F3;CHEROKEE LETTER YU;Lo;0;L;;;;;N;;;;;
 11.1245  13F4;CHEROKEE LETTER YV;Lo;0;L;;;;;N;;;;;
 11.1246 +1400;CANADIAN SYLLABICS HYPHEN;Pd;0;ON;;;;;N;;;;;
 11.1247  1401;CANADIAN SYLLABICS E;Lo;0;L;;;;;N;;;;;
 11.1248  1402;CANADIAN SYLLABICS AAI;Lo;0;L;;;;;N;;;;;
 11.1249  1403;CANADIAN SYLLABICS I;Lo;0;L;;;;;N;;;;;
 11.1250 @@ -4765,6 +4919,15 @@
 11.1251  1674;CANADIAN SYLLABICS NNGOO;Lo;0;L;;;;;N;;;;;
 11.1252  1675;CANADIAN SYLLABICS NNGA;Lo;0;L;;;;;N;;;;;
 11.1253  1676;CANADIAN SYLLABICS NNGAA;Lo;0;L;;;;;N;;;;;
 11.1254 +1677;CANADIAN SYLLABICS WOODS-CREE THWEE;Lo;0;L;;;;;N;;;;;
 11.1255 +1678;CANADIAN SYLLABICS WOODS-CREE THWI;Lo;0;L;;;;;N;;;;;
 11.1256 +1679;CANADIAN SYLLABICS WOODS-CREE THWII;Lo;0;L;;;;;N;;;;;
 11.1257 +167A;CANADIAN SYLLABICS WOODS-CREE THWO;Lo;0;L;;;;;N;;;;;
 11.1258 +167B;CANADIAN SYLLABICS WOODS-CREE THWOO;Lo;0;L;;;;;N;;;;;
 11.1259 +167C;CANADIAN SYLLABICS WOODS-CREE THWA;Lo;0;L;;;;;N;;;;;
 11.1260 +167D;CANADIAN SYLLABICS WOODS-CREE THWAA;Lo;0;L;;;;;N;;;;;
 11.1261 +167E;CANADIAN SYLLABICS WOODS-CREE FINAL TH;Lo;0;L;;;;;N;;;;;
 11.1262 +167F;CANADIAN SYLLABICS BLACKFOOT W;Lo;0;L;;;;;N;;;;;
 11.1263  1680;OGHAM SPACE MARK;Zs;0;WS;;;;;N;;;;;
 11.1264  1681;OGHAM LETTER BEITH;Lo;0;L;;;;;N;;;;;
 11.1265  1682;OGHAM LETTER LUIS;Lo;0;L;;;;;N;;;;;
 11.1266 @@ -4872,9 +5035,9 @@
 11.1267  16EB;RUNIC SINGLE PUNCTUATION;Po;0;L;;;;;N;;;;;
 11.1268  16EC;RUNIC MULTIPLE PUNCTUATION;Po;0;L;;;;;N;;;;;
 11.1269  16ED;RUNIC CROSS PUNCTUATION;Po;0;L;;;;;N;;;;;
 11.1270 -16EE;RUNIC ARLAUG SYMBOL;Nl;0;L;;;;17;N;;golden number 17;;;
 11.1271 -16EF;RUNIC TVIMADUR SYMBOL;Nl;0;L;;;;18;N;;golden number 18;;;
 11.1272 -16F0;RUNIC BELGTHOR SYMBOL;Nl;0;L;;;;19;N;;golden number 19;;;
 11.1273 +16EE;RUNIC ARLAUG SYMBOL;Nl;0;L;;;;17;N;;;;;
 11.1274 +16EF;RUNIC TVIMADUR SYMBOL;Nl;0;L;;;;18;N;;;;;
 11.1275 +16F0;RUNIC BELGTHOR SYMBOL;Nl;0;L;;;;19;N;;;;;
 11.1276  1700;TAGALOG LETTER A;Lo;0;L;;;;;N;;;;;
 11.1277  1701;TAGALOG LETTER I;Lo;0;L;;;;;N;;;;;
 11.1278  1702;TAGALOG LETTER U;Lo;0;L;;;;;N;;;;;
 11.1279 @@ -4991,8 +5154,8 @@
 11.1280  17A0;KHMER LETTER HA;Lo;0;L;;;;;N;;;;;
 11.1281  17A1;KHMER LETTER LA;Lo;0;L;;;;;N;;;;;
 11.1282  17A2;KHMER LETTER QA;Lo;0;L;;;;;N;;;;;
 11.1283 -17A3;KHMER INDEPENDENT VOWEL QAQ;Lo;0;L;;;;;N;;*;;;
 11.1284 -17A4;KHMER INDEPENDENT VOWEL QAA;Lo;0;L;;;;;N;;*;;;
 11.1285 +17A3;KHMER INDEPENDENT VOWEL QAQ;Lo;0;L;;;;;N;;;;;
 11.1286 +17A4;KHMER INDEPENDENT VOWEL QAA;Lo;0;L;;;;;N;;;;;
 11.1287  17A5;KHMER INDEPENDENT VOWEL QI;Lo;0;L;;;;;N;;;;;
 11.1288  17A6;KHMER INDEPENDENT VOWEL QII;Lo;0;L;;;;;N;;;;;
 11.1289  17A7;KHMER INDEPENDENT VOWEL QU;Lo;0;L;;;;;N;;;;;
 11.1290 @@ -5008,8 +5171,8 @@
 11.1291  17B1;KHMER INDEPENDENT VOWEL QOO TYPE ONE;Lo;0;L;;;;;N;;;;;
 11.1292  17B2;KHMER INDEPENDENT VOWEL QOO TYPE TWO;Lo;0;L;;;;;N;;;;;
 11.1293  17B3;KHMER INDEPENDENT VOWEL QAU;Lo;0;L;;;;;N;;;;;
 11.1294 -17B4;KHMER VOWEL INHERENT AQ;Cf;0;L;;;;;N;;*;;;
 11.1295 -17B5;KHMER VOWEL INHERENT AA;Cf;0;L;;;;;N;;*;;;
 11.1296 +17B4;KHMER VOWEL INHERENT AQ;Cf;0;L;;;;;N;;;;;
 11.1297 +17B5;KHMER VOWEL INHERENT AA;Cf;0;L;;;;;N;;;;;
 11.1298  17B6;KHMER VOWEL SIGN AA;Mc;0;L;;;;;N;;;;;
 11.1299  17B7;KHMER VOWEL SIGN I;Mn;0;NSM;;;;;N;;;;;
 11.1300  17B8;KHMER VOWEL SIGN II;Mn;0;NSM;;;;;N;;;;;
 11.1301 @@ -5039,12 +5202,12 @@
 11.1302  17D0;KHMER SIGN SAMYOK SANNYA;Mn;0;NSM;;;;;N;;;;;
 11.1303  17D1;KHMER SIGN VIRIAM;Mn;0;NSM;;;;;N;;;;;
 11.1304  17D2;KHMER SIGN COENG;Mn;9;NSM;;;;;N;;;;;
 11.1305 -17D3;KHMER SIGN BATHAMASAT;Mn;0;NSM;;;;;N;;*;;;
 11.1306 +17D3;KHMER SIGN BATHAMASAT;Mn;0;NSM;;;;;N;;;;;
 11.1307  17D4;KHMER SIGN KHAN;Po;0;L;;;;;N;;;;;
 11.1308  17D5;KHMER SIGN BARIYOOSAN;Po;0;L;;;;;N;;;;;
 11.1309  17D6;KHMER SIGN CAMNUC PII KUUH;Po;0;L;;;;;N;;;;;
 11.1310  17D7;KHMER SIGN LEK TOO;Lm;0;L;;;;;N;;;;;
 11.1311 -17D8;KHMER SIGN BEYYAL;Po;0;L;;;;;N;;*;;;
 11.1312 +17D8;KHMER SIGN BEYYAL;Po;0;L;;;;;N;;;;;
 11.1313  17D9;KHMER SIGN PHNAEK MUAN;Po;0;L;;;;;N;;;;;
 11.1314  17DA;KHMER SIGN KOOMUUT;Po;0;L;;;;;N;;;;;
 11.1315  17DB;KHMER CURRENCY SYMBOL RIEL;Sc;0;ET;;;;;N;;;;;
 11.1316 @@ -5226,6 +5389,76 @@
 11.1317  18A8;MONGOLIAN LETTER MANCHU ALI GALI BHA;Lo;0;L;;;;;N;;;;;
 11.1318  18A9;MONGOLIAN LETTER ALI GALI DAGALGA;Mn;228;NSM;;;;;N;;;;;
 11.1319  18AA;MONGOLIAN LETTER MANCHU ALI GALI LHA;Lo;0;L;;;;;N;;;;;
 11.1320 +18B0;CANADIAN SYLLABICS OY;Lo;0;L;;;;;N;;;;;
 11.1321 +18B1;CANADIAN SYLLABICS AY;Lo;0;L;;;;;N;;;;;
 11.1322 +18B2;CANADIAN SYLLABICS AAY;Lo;0;L;;;;;N;;;;;
 11.1323 +18B3;CANADIAN SYLLABICS WAY;Lo;0;L;;;;;N;;;;;
 11.1324 +18B4;CANADIAN SYLLABICS POY;Lo;0;L;;;;;N;;;;;
 11.1325 +18B5;CANADIAN SYLLABICS PAY;Lo;0;L;;;;;N;;;;;
 11.1326 +18B6;CANADIAN SYLLABICS PWOY;Lo;0;L;;;;;N;;;;;
 11.1327 +18B7;CANADIAN SYLLABICS TAY;Lo;0;L;;;;;N;;;;;
 11.1328 +18B8;CANADIAN SYLLABICS KAY;Lo;0;L;;;;;N;;;;;
 11.1329 +18B9;CANADIAN SYLLABICS KWAY;Lo;0;L;;;;;N;;;;;
 11.1330 +18BA;CANADIAN SYLLABICS MAY;Lo;0;L;;;;;N;;;;;
 11.1331 +18BB;CANADIAN SYLLABICS NOY;Lo;0;L;;;;;N;;;;;
 11.1332 +18BC;CANADIAN SYLLABICS NAY;Lo;0;L;;;;;N;;;;;
 11.1333 +18BD;CANADIAN SYLLABICS LAY;Lo;0;L;;;;;N;;;;;
 11.1334 +18BE;CANADIAN SYLLABICS SOY;Lo;0;L;;;;;N;;;;;
 11.1335 +18BF;CANADIAN SYLLABICS SAY;Lo;0;L;;;;;N;;;;;
 11.1336 +18C0;CANADIAN SYLLABICS SHOY;Lo;0;L;;;;;N;;;;;
 11.1337 +18C1;CANADIAN SYLLABICS SHAY;Lo;0;L;;;;;N;;;;;
 11.1338 +18C2;CANADIAN SYLLABICS SHWOY;Lo;0;L;;;;;N;;;;;
 11.1339 +18C3;CANADIAN SYLLABICS YOY;Lo;0;L;;;;;N;;;;;
 11.1340 +18C4;CANADIAN SYLLABICS YAY;Lo;0;L;;;;;N;;;;;
 11.1341 +18C5;CANADIAN SYLLABICS RAY;Lo;0;L;;;;;N;;;;;
 11.1342 +18C6;CANADIAN SYLLABICS NWI;Lo;0;L;;;;;N;;;;;
 11.1343 +18C7;CANADIAN SYLLABICS OJIBWAY NWI;Lo;0;L;;;;;N;;;;;
 11.1344 +18C8;CANADIAN SYLLABICS NWII;Lo;0;L;;;;;N;;;;;
 11.1345 +18C9;CANADIAN SYLLABICS OJIBWAY NWII;Lo;0;L;;;;;N;;;;;
 11.1346 +18CA;CANADIAN SYLLABICS NWO;Lo;0;L;;;;;N;;;;;
 11.1347 +18CB;CANADIAN SYLLABICS OJIBWAY NWO;Lo;0;L;;;;;N;;;;;
 11.1348 +18CC;CANADIAN SYLLABICS NWOO;Lo;0;L;;;;;N;;;;;
 11.1349 +18CD;CANADIAN SYLLABICS OJIBWAY NWOO;Lo;0;L;;;;;N;;;;;
 11.1350 +18CE;CANADIAN SYLLABICS RWEE;Lo;0;L;;;;;N;;;;;
 11.1351 +18CF;CANADIAN SYLLABICS RWI;Lo;0;L;;;;;N;;;;;
 11.1352 +18D0;CANADIAN SYLLABICS RWII;Lo;0;L;;;;;N;;;;;
 11.1353 +18D1;CANADIAN SYLLABICS RWO;Lo;0;L;;;;;N;;;;;
 11.1354 +18D2;CANADIAN SYLLABICS RWOO;Lo;0;L;;;;;N;;;;;
 11.1355 +18D3;CANADIAN SYLLABICS RWA;Lo;0;L;;;;;N;;;;;
 11.1356 +18D4;CANADIAN SYLLABICS OJIBWAY P;Lo;0;L;;;;;N;;;;;
 11.1357 +18D5;CANADIAN SYLLABICS OJIBWAY T;Lo;0;L;;;;;N;;;;;
 11.1358 +18D6;CANADIAN SYLLABICS OJIBWAY K;Lo;0;L;;;;;N;;;;;
 11.1359 +18D7;CANADIAN SYLLABICS OJIBWAY C;Lo;0;L;;;;;N;;;;;
 11.1360 +18D8;CANADIAN SYLLABICS OJIBWAY M;Lo;0;L;;;;;N;;;;;
 11.1361 +18D9;CANADIAN SYLLABICS OJIBWAY N;Lo;0;L;;;;;N;;;;;
 11.1362 +18DA;CANADIAN SYLLABICS OJIBWAY S;Lo;0;L;;;;;N;;;;;
 11.1363 +18DB;CANADIAN SYLLABICS OJIBWAY SH;Lo;0;L;;;;;N;;;;;
 11.1364 +18DC;CANADIAN SYLLABICS EASTERN W;Lo;0;L;;;;;N;;;;;
 11.1365 +18DD;CANADIAN SYLLABICS WESTERN W;Lo;0;L;;;;;N;;;;;
 11.1366 +18DE;CANADIAN SYLLABICS FINAL SMALL RING;Lo;0;L;;;;;N;;;;;
 11.1367 +18DF;CANADIAN SYLLABICS FINAL RAISED DOT;Lo;0;L;;;;;N;;;;;
 11.1368 +18E0;CANADIAN SYLLABICS R-CREE RWE;Lo;0;L;;;;;N;;;;;
 11.1369 +18E1;CANADIAN SYLLABICS WEST-CREE LOO;Lo;0;L;;;;;N;;;;;
 11.1370 +18E2;CANADIAN SYLLABICS WEST-CREE LAA;Lo;0;L;;;;;N;;;;;
 11.1371 +18E3;CANADIAN SYLLABICS THWE;Lo;0;L;;;;;N;;;;;
 11.1372 +18E4;CANADIAN SYLLABICS THWA;Lo;0;L;;;;;N;;;;;
 11.1373 +18E5;CANADIAN SYLLABICS TTHWE;Lo;0;L;;;;;N;;;;;
 11.1374 +18E6;CANADIAN SYLLABICS TTHOO;Lo;0;L;;;;;N;;;;;
 11.1375 +18E7;CANADIAN SYLLABICS TTHAA;Lo;0;L;;;;;N;;;;;
 11.1376 +18E8;CANADIAN SYLLABICS TLHWE;Lo;0;L;;;;;N;;;;;
 11.1377 +18E9;CANADIAN SYLLABICS TLHOO;Lo;0;L;;;;;N;;;;;
 11.1378 +18EA;CANADIAN SYLLABICS SAYISI SHWE;Lo;0;L;;;;;N;;;;;
 11.1379 +18EB;CANADIAN SYLLABICS SAYISI SHOO;Lo;0;L;;;;;N;;;;;
 11.1380 +18EC;CANADIAN SYLLABICS SAYISI HOO;Lo;0;L;;;;;N;;;;;
 11.1381 +18ED;CANADIAN SYLLABICS CARRIER GWU;Lo;0;L;;;;;N;;;;;
 11.1382 +18EE;CANADIAN SYLLABICS CARRIER DENE GEE;Lo;0;L;;;;;N;;;;;
 11.1383 +18EF;CANADIAN SYLLABICS CARRIER GAA;Lo;0;L;;;;;N;;;;;
 11.1384 +18F0;CANADIAN SYLLABICS CARRIER GWA;Lo;0;L;;;;;N;;;;;
 11.1385 +18F1;CANADIAN SYLLABICS SAYISI JUU;Lo;0;L;;;;;N;;;;;
 11.1386 +18F2;CANADIAN SYLLABICS CARRIER JWA;Lo;0;L;;;;;N;;;;;
 11.1387 +18F3;CANADIAN SYLLABICS BEAVER DENE L;Lo;0;L;;;;;N;;;;;
 11.1388 +18F4;CANADIAN SYLLABICS BEAVER DENE R;Lo;0;L;;;;;N;;;;;
 11.1389 +18F5;CANADIAN SYLLABICS CARRIER DENTAL S;Lo;0;L;;;;;N;;;;;
 11.1390  1900;LIMBU VOWEL-CARRIER LETTER;Lo;0;L;;;;;N;;;;;
 11.1391  1901;LIMBU LETTER KA;Lo;0;L;;;;;N;;;;;
 11.1392  1902;LIMBU LETTER KHA;Lo;0;L;;;;;N;;;;;
 11.1393 @@ -5369,6 +5602,8 @@
 11.1394  19A7;NEW TAI LUE LETTER HIGH XVA;Lo;0;L;;;;;N;;;;;
 11.1395  19A8;NEW TAI LUE LETTER LOW KVA;Lo;0;L;;;;;N;;;;;
 11.1396  19A9;NEW TAI LUE LETTER LOW XVA;Lo;0;L;;;;;N;;;;;
 11.1397 +19AA;NEW TAI LUE LETTER HIGH SUA;Lo;0;L;;;;;N;;;;;
 11.1398 +19AB;NEW TAI LUE LETTER LOW SUA;Lo;0;L;;;;;N;;;;;
 11.1399  19B0;NEW TAI LUE VOWEL SIGN VOWEL SHORTENER;Mc;0;L;;;;;N;;;;;
 11.1400  19B1;NEW TAI LUE VOWEL SIGN AA;Mc;0;L;;;;;N;;;;;
 11.1401  19B2;NEW TAI LUE VOWEL SIGN II;Mc;0;L;;;;;N;;;;;
 11.1402 @@ -5405,8 +5640,9 @@
 11.1403  19D7;NEW TAI LUE DIGIT SEVEN;Nd;0;L;;7;7;7;N;;;;;
 11.1404  19D8;NEW TAI LUE DIGIT EIGHT;Nd;0;L;;8;8;8;N;;;;;
 11.1405  19D9;NEW TAI LUE DIGIT NINE;Nd;0;L;;9;9;9;N;;;;;
 11.1406 -19DE;NEW TAI LUE SIGN LAE;Po;0;ON;;;;;N;;;;;
 11.1407 -19DF;NEW TAI LUE SIGN LAEV;Po;0;ON;;;;;N;;;;;
 11.1408 +19DA;NEW TAI LUE THAM DIGIT ONE;No;0;L;;;1;1;N;;;;;
 11.1409 +19DE;NEW TAI LUE SIGN LAE;So;0;ON;;;;;N;;;;;
 11.1410 +19DF;NEW TAI LUE SIGN LAEV;So;0;ON;;;;;N;;;;;
 11.1411  19E0;KHMER SYMBOL PATHAMASAT;So;0;ON;;;;;N;;;;;
 11.1412  19E1;KHMER SYMBOL MUOY KOET;So;0;ON;;;;;N;;;;;
 11.1413  19E2;KHMER SYMBOL PII KOET;So;0;ON;;;;;N;;;;;
 11.1414 @@ -5469,75 +5705,202 @@
 11.1415  1A1B;BUGINESE VOWEL SIGN AE;Mc;0;L;;;;;N;;;;;
 11.1416  1A1E;BUGINESE PALLAWA;Po;0;L;;;;;N;;;;;
 11.1417  1A1F;BUGINESE END OF SECTION;Po;0;L;;;;;N;;;;;
 11.1418 -1B00;BALINESE SIGN ULU RICEM;Mn;0;NSM;;;;;N;;ardhacandra;;;
 11.1419 -1B01;BALINESE SIGN ULU CANDRA;Mn;0;NSM;;;;;N;;candrabindu;;;
 11.1420 -1B02;BALINESE SIGN CECEK;Mn;0;NSM;;;;;N;;anusvara;;;
 11.1421 -1B03;BALINESE SIGN SURANG;Mn;0;NSM;;;;;N;;repha;;;
 11.1422 -1B04;BALINESE SIGN BISAH;Mc;0;L;;;;;N;;visarga;;;
 11.1423 -1B05;BALINESE LETTER AKARA;Lo;0;L;;;;;N;;a;;;
 11.1424 -1B06;BALINESE LETTER AKARA TEDUNG;Lo;0;L;1B05 1B35;;;;N;;aa;;;
 11.1425 -1B07;BALINESE LETTER IKARA;Lo;0;L;;;;;N;;i;;;
 11.1426 -1B08;BALINESE LETTER IKARA TEDUNG;Lo;0;L;1B07 1B35;;;;N;;ii;;;
 11.1427 -1B09;BALINESE LETTER UKARA;Lo;0;L;;;;;N;;u;;;
 11.1428 -1B0A;BALINESE LETTER UKARA TEDUNG;Lo;0;L;1B09 1B35;;;;N;;uu;;;
 11.1429 -1B0B;BALINESE LETTER RA REPA;Lo;0;L;;;;;N;;vocalic r;;;
 11.1430 -1B0C;BALINESE LETTER RA REPA TEDUNG;Lo;0;L;1B0B 1B35;;;;N;;vocalic rr;;;
 11.1431 -1B0D;BALINESE LETTER LA LENGA;Lo;0;L;;;;;N;;vocalic l;;;
 11.1432 -1B0E;BALINESE LETTER LA LENGA TEDUNG;Lo;0;L;1B0D 1B35;;;;N;;vocalic ll;;;
 11.1433 -1B0F;BALINESE LETTER EKARA;Lo;0;L;;;;;N;;e;;;
 11.1434 -1B10;BALINESE LETTER AIKARA;Lo;0;L;;;;;N;;ai;;;
 11.1435 -1B11;BALINESE LETTER OKARA;Lo;0;L;;;;;N;;o;;;
 11.1436 -1B12;BALINESE LETTER OKARA TEDUNG;Lo;0;L;1B11 1B35;;;;N;;au;;;
 11.1437 +1A20;TAI THAM LETTER HIGH KA;Lo;0;L;;;;;N;;;;;
 11.1438 +1A21;TAI THAM LETTER HIGH KHA;Lo;0;L;;;;;N;;;;;
 11.1439 +1A22;TAI THAM LETTER HIGH KXA;Lo;0;L;;;;;N;;;;;
 11.1440 +1A23;TAI THAM LETTER LOW KA;Lo;0;L;;;;;N;;;;;
 11.1441 +1A24;TAI THAM LETTER LOW KXA;Lo;0;L;;;;;N;;;;;
 11.1442 +1A25;TAI THAM LETTER LOW KHA;Lo;0;L;;;;;N;;;;;
 11.1443 +1A26;TAI THAM LETTER NGA;Lo;0;L;;;;;N;;;;;
 11.1444 +1A27;TAI THAM LETTER HIGH CA;Lo;0;L;;;;;N;;;;;
 11.1445 +1A28;TAI THAM LETTER HIGH CHA;Lo;0;L;;;;;N;;;;;
 11.1446 +1A29;TAI THAM LETTER LOW CA;Lo;0;L;;;;;N;;;;;
 11.1447 +1A2A;TAI THAM LETTER LOW SA;Lo;0;L;;;;;N;;;;;
 11.1448 +1A2B;TAI THAM LETTER LOW CHA;Lo;0;L;;;;;N;;;;;
 11.1449 +1A2C;TAI THAM LETTER NYA;Lo;0;L;;;;;N;;;;;
 11.1450 +1A2D;TAI THAM LETTER RATA;Lo;0;L;;;;;N;;;;;
 11.1451 +1A2E;TAI THAM LETTER HIGH RATHA;Lo;0;L;;;;;N;;;;;
 11.1452 +1A2F;TAI THAM LETTER DA;Lo;0;L;;;;;N;;;;;
 11.1453 +1A30;TAI THAM LETTER LOW RATHA;Lo;0;L;;;;;N;;;;;
 11.1454 +1A31;TAI THAM LETTER RANA;Lo;0;L;;;;;N;;;;;
 11.1455 +1A32;TAI THAM LETTER HIGH TA;Lo;0;L;;;;;N;;;;;
 11.1456 +1A33;TAI THAM LETTER HIGH THA;Lo;0;L;;;;;N;;;;;
 11.1457 +1A34;TAI THAM LETTER LOW TA;Lo;0;L;;;;;N;;;;;
 11.1458 +1A35;TAI THAM LETTER LOW THA;Lo;0;L;;;;;N;;;;;
 11.1459 +1A36;TAI THAM LETTER NA;Lo;0;L;;;;;N;;;;;
 11.1460 +1A37;TAI THAM LETTER BA;Lo;0;L;;;;;N;;;;;
 11.1461 +1A38;TAI THAM LETTER HIGH PA;Lo;0;L;;;;;N;;;;;
 11.1462 +1A39;TAI THAM LETTER HIGH PHA;Lo;0;L;;;;;N;;;;;
 11.1463 +1A3A;TAI THAM LETTER HIGH FA;Lo;0;L;;;;;N;;;;;
 11.1464 +1A3B;TAI THAM LETTER LOW PA;Lo;0;L;;;;;N;;;;;
 11.1465 +1A3C;TAI THAM LETTER LOW FA;Lo;0;L;;;;;N;;;;;
 11.1466 +1A3D;TAI THAM LETTER LOW PHA;Lo;0;L;;;;;N;;;;;
 11.1467 +1A3E;TAI THAM LETTER MA;Lo;0;L;;;;;N;;;;;
 11.1468 +1A3F;TAI THAM LETTER LOW YA;Lo;0;L;;;;;N;;;;;
 11.1469 +1A40;TAI THAM LETTER HIGH YA;Lo;0;L;;;;;N;;;;;
 11.1470 +1A41;TAI THAM LETTER RA;Lo;0;L;;;;;N;;;;;
 11.1471 +1A42;TAI THAM LETTER RUE;Lo;0;L;;;;;N;;;;;
 11.1472 +1A43;TAI THAM LETTER LA;Lo;0;L;;;;;N;;;;;
 11.1473 +1A44;TAI THAM LETTER LUE;Lo;0;L;;;;;N;;;;;
 11.1474 +1A45;TAI THAM LETTER WA;Lo;0;L;;;;;N;;;;;
 11.1475 +1A46;TAI THAM LETTER HIGH SHA;Lo;0;L;;;;;N;;;;;
 11.1476 +1A47;TAI THAM LETTER HIGH SSA;Lo;0;L;;;;;N;;;;;
 11.1477 +1A48;TAI THAM LETTER HIGH SA;Lo;0;L;;;;;N;;;;;
 11.1478 +1A49;TAI THAM LETTER HIGH HA;Lo;0;L;;;;;N;;;;;
 11.1479 +1A4A;TAI THAM LETTER LLA;Lo;0;L;;;;;N;;;;;
 11.1480 +1A4B;TAI THAM LETTER A;Lo;0;L;;;;;N;;;;;
 11.1481 +1A4C;TAI THAM LETTER LOW HA;Lo;0;L;;;;;N;;;;;
 11.1482 +1A4D;TAI THAM LETTER I;Lo;0;L;;;;;N;;;;;
 11.1483 +1A4E;TAI THAM LETTER II;Lo;0;L;;;;;N;;;;;
 11.1484 +1A4F;TAI THAM LETTER U;Lo;0;L;;;;;N;;;;;
 11.1485 +1A50;TAI THAM LETTER UU;Lo;0;L;;;;;N;;;;;
 11.1486 +1A51;TAI THAM LETTER EE;Lo;0;L;;;;;N;;;;;
 11.1487 +1A52;TAI THAM LETTER OO;Lo;0;L;;;;;N;;;;;
 11.1488 +1A53;TAI THAM LETTER LAE;Lo;0;L;;;;;N;;;;;
 11.1489 +1A54;TAI THAM LETTER GREAT SA;Lo;0;L;;;;;N;;;;;
 11.1490 +1A55;TAI THAM CONSONANT SIGN MEDIAL RA;Mc;0;L;;;;;N;;;;;
 11.1491 +1A56;TAI THAM CONSONANT SIGN MEDIAL LA;Mn;0;NSM;;;;;N;;;;;
 11.1492 +1A57;TAI THAM CONSONANT SIGN LA TANG LAI;Mc;0;L;;;;;N;;;;;
 11.1493 +1A58;TAI THAM SIGN MAI KANG LAI;Mn;0;NSM;;;;;N;;;;;
 11.1494 +1A59;TAI THAM CONSONANT SIGN FINAL NGA;Mn;0;NSM;;;;;N;;;;;
 11.1495 +1A5A;TAI THAM CONSONANT SIGN LOW PA;Mn;0;NSM;;;;;N;;;;;
 11.1496 +1A5B;TAI THAM CONSONANT SIGN HIGH RATHA OR LOW PA;Mn;0;NSM;;;;;N;;;;;
 11.1497 +1A5C;TAI THAM CONSONANT SIGN MA;Mn;0;NSM;;;;;N;;;;;
 11.1498 +1A5D;TAI THAM CONSONANT SIGN BA;Mn;0;NSM;;;;;N;;;;;
 11.1499 +1A5E;TAI THAM CONSONANT SIGN SA;Mn;0;NSM;;;;;N;;;;;
 11.1500 +1A60;TAI THAM SIGN SAKOT;Mn;9;NSM;;;;;N;;;;;
 11.1501 +1A61;TAI THAM VOWEL SIGN A;Mc;0;L;;;;;N;;;;;
 11.1502 +1A62;TAI THAM VOWEL SIGN MAI SAT;Mn;0;NSM;;;;;N;;;;;
 11.1503 +1A63;TAI THAM VOWEL SIGN AA;Mc;0;L;;;;;N;;;;;
 11.1504 +1A64;TAI THAM VOWEL SIGN TALL AA;Mc;0;L;;;;;N;;;;;
 11.1505 +1A65;TAI THAM VOWEL SIGN I;Mn;0;NSM;;;;;N;;;;;
 11.1506 +1A66;TAI THAM VOWEL SIGN II;Mn;0;NSM;;;;;N;;;;;
 11.1507 +1A67;TAI THAM VOWEL SIGN UE;Mn;0;NSM;;;;;N;;;;;
 11.1508 +1A68;TAI THAM VOWEL SIGN UUE;Mn;0;NSM;;;;;N;;;;;
 11.1509 +1A69;TAI THAM VOWEL SIGN U;Mn;0;NSM;;;;;N;;;;;
 11.1510 +1A6A;TAI THAM VOWEL SIGN UU;Mn;0;NSM;;;;;N;;;;;
 11.1511 +1A6B;TAI THAM VOWEL SIGN O;Mn;0;NSM;;;;;N;;;;;
 11.1512 +1A6C;TAI THAM VOWEL SIGN OA BELOW;Mn;0;NSM;;;;;N;;;;;
 11.1513 +1A6D;TAI THAM VOWEL SIGN OY;Mc;0;L;;;;;N;;;;;
 11.1514 +1A6E;TAI THAM VOWEL SIGN E;Mc;0;L;;;;;N;;;;;
 11.1515 +1A6F;TAI THAM VOWEL SIGN AE;Mc;0;L;;;;;N;;;;;
 11.1516 +1A70;TAI THAM VOWEL SIGN OO;Mc;0;L;;;;;N;;;;;
 11.1517 +1A71;TAI THAM VOWEL SIGN AI;Mc;0;L;;;;;N;;;;;
 11.1518 +1A72;TAI THAM VOWEL SIGN THAM AI;Mc;0;L;;;;;N;;;;;
 11.1519 +1A73;TAI THAM VOWEL SIGN OA ABOVE;Mn;0;NSM;;;;;N;;;;;
 11.1520 +1A74;TAI THAM SIGN MAI KANG;Mn;0;NSM;;;;;N;;;;;
 11.1521 +1A75;TAI THAM SIGN TONE-1;Mn;230;NSM;;;;;N;;;;;
 11.1522 +1A76;TAI THAM SIGN TONE-2;Mn;230;NSM;;;;;N;;;;;
 11.1523 +1A77;TAI THAM SIGN KHUEN TONE-3;Mn;230;NSM;;;;;N;;;;;
 11.1524 +1A78;TAI THAM SIGN KHUEN TONE-4;Mn;230;NSM;;;;;N;;;;;
 11.1525 +1A79;TAI THAM SIGN KHUEN TONE-5;Mn;230;NSM;;;;;N;;;;;
 11.1526 +1A7A;TAI THAM SIGN RA HAAM;Mn;230;NSM;;;;;N;;;;;
 11.1527 +1A7B;TAI THAM SIGN MAI SAM;Mn;230;NSM;;;;;N;;;;;
 11.1528 +1A7C;TAI THAM SIGN KHUEN-LUE KARAN;Mn;230;NSM;;;;;N;;;;;
 11.1529 +1A7F;TAI THAM COMBINING CRYPTOGRAMMIC DOT;Mn;220;NSM;;;;;N;;;;;
 11.1530 +1A80;TAI THAM HORA DIGIT ZERO;Nd;0;L;;0;0;0;N;;;;;
 11.1531 +1A81;TAI THAM HORA DIGIT ONE;Nd;0;L;;1;1;1;N;;;;;
 11.1532 +1A82;TAI THAM HORA DIGIT TWO;Nd;0;L;;2;2;2;N;;;;;
 11.1533 +1A83;TAI THAM HORA DIGIT THREE;Nd;0;L;;3;3;3;N;;;;;
 11.1534 +1A84;TAI THAM HORA DIGIT FOUR;Nd;0;L;;4;4;4;N;;;;;
 11.1535 +1A85;TAI THAM HORA DIGIT FIVE;Nd;0;L;;5;5;5;N;;;;;
 11.1536 +1A86;TAI THAM HORA DIGIT SIX;Nd;0;L;;6;6;6;N;;;;;
 11.1537 +1A87;TAI THAM HORA DIGIT SEVEN;Nd;0;L;;7;7;7;N;;;;;
 11.1538 +1A88;TAI THAM HORA DIGIT EIGHT;Nd;0;L;;8;8;8;N;;;;;
 11.1539 +1A89;TAI THAM HORA DIGIT NINE;Nd;0;L;;9;9;9;N;;;;;
 11.1540 +1A90;TAI THAM THAM DIGIT ZERO;Nd;0;L;;0;0;0;N;;;;;
 11.1541 +1A91;TAI THAM THAM DIGIT ONE;Nd;0;L;;1;1;1;N;;;;;
 11.1542 +1A92;TAI THAM THAM DIGIT TWO;Nd;0;L;;2;2;2;N;;;;;
 11.1543 +1A93;TAI THAM THAM DIGIT THREE;Nd;0;L;;3;3;3;N;;;;;
 11.1544 +1A94;TAI THAM THAM DIGIT FOUR;Nd;0;L;;4;4;4;N;;;;;
 11.1545 +1A95;TAI THAM THAM DIGIT FIVE;Nd;0;L;;5;5;5;N;;;;;
 11.1546 +1A96;TAI THAM THAM DIGIT SIX;Nd;0;L;;6;6;6;N;;;;;
 11.1547 +1A97;TAI THAM THAM DIGIT SEVEN;Nd;0;L;;7;7;7;N;;;;;
 11.1548 +1A98;TAI THAM THAM DIGIT EIGHT;Nd;0;L;;8;8;8;N;;;;;
 11.1549 +1A99;TAI THAM THAM DIGIT NINE;Nd;0;L;;9;9;9;N;;;;;
 11.1550 +1AA0;TAI THAM SIGN WIANG;Po;0;L;;;;;N;;;;;
 11.1551 +1AA1;TAI THAM SIGN WIANGWAAK;Po;0;L;;;;;N;;;;;
 11.1552 +1AA2;TAI THAM SIGN SAWAN;Po;0;L;;;;;N;;;;;
 11.1553 +1AA3;TAI THAM SIGN KEOW;Po;0;L;;;;;N;;;;;
 11.1554 +1AA4;TAI THAM SIGN HOY;Po;0;L;;;;;N;;;;;
 11.1555 +1AA5;TAI THAM SIGN DOKMAI;Po;0;L;;;;;N;;;;;
 11.1556 +1AA6;TAI THAM SIGN REVERSED ROTATED RANA;Po;0;L;;;;;N;;;;;
 11.1557 +1AA7;TAI THAM SIGN MAI YAMOK;Lm;0;L;;;;;N;;;;;
 11.1558 +1AA8;TAI THAM SIGN KAAN;Po;0;L;;;;;N;;;;;
 11.1559 +1AA9;TAI THAM SIGN KAANKUU;Po;0;L;;;;;N;;;;;
 11.1560 +1AAA;TAI THAM SIGN SATKAAN;Po;0;L;;;;;N;;;;;
 11.1561 +1AAB;TAI THAM SIGN SATKAANKUU;Po;0;L;;;;;N;;;;;
 11.1562 +1AAC;TAI THAM SIGN HANG;Po;0;L;;;;;N;;;;;
 11.1563 +1AAD;TAI THAM SIGN CAANG;Po;0;L;;;;;N;;;;;
 11.1564 +1B00;BALINESE SIGN ULU RICEM;Mn;0;NSM;;;;;N;;;;;
 11.1565 +1B01;BALINESE SIGN ULU CANDRA;Mn;0;NSM;;;;;N;;;;;
 11.1566 +1B02;BALINESE SIGN CECEK;Mn;0;NSM;;;;;N;;;;;
 11.1567 +1B03;BALINESE SIGN SURANG;Mn;0;NSM;;;;;N;;;;;
 11.1568 +1B04;BALINESE SIGN BISAH;Mc;0;L;;;;;N;;;;;
 11.1569 +1B05;BALINESE LETTER AKARA;Lo;0;L;;;;;N;;;;;
 11.1570 +1B06;BALINESE LETTER AKARA TEDUNG;Lo;0;L;1B05 1B35;;;;N;;;;;
 11.1571 +1B07;BALINESE LETTER IKARA;Lo;0;L;;;;;N;;;;;
 11.1572 +1B08;BALINESE LETTER IKARA TEDUNG;Lo;0;L;1B07 1B35;;;;N;;;;;
 11.1573 +1B09;BALINESE LETTER UKARA;Lo;0;L;;;;;N;;;;;
 11.1574 +1B0A;BALINESE LETTER UKARA TEDUNG;Lo;0;L;1B09 1B35;;;;N;;;;;
 11.1575 +1B0B;BALINESE LETTER RA REPA;Lo;0;L;;;;;N;;;;;
 11.1576 +1B0C;BALINESE LETTER RA REPA TEDUNG;Lo;0;L;1B0B 1B35;;;;N;;;;;
 11.1577 +1B0D;BALINESE LETTER LA LENGA;Lo;0;L;;;;;N;;;;;
 11.1578 +1B0E;BALINESE LETTER LA LENGA TEDUNG;Lo;0;L;1B0D 1B35;;;;N;;;;;
 11.1579 +1B0F;BALINESE LETTER EKARA;Lo;0;L;;;;;N;;;;;
 11.1580 +1B10;BALINESE LETTER AIKARA;Lo;0;L;;;;;N;;;;;
 11.1581 +1B11;BALINESE LETTER OKARA;Lo;0;L;;;;;N;;;;;
 11.1582 +1B12;BALINESE LETTER OKARA TEDUNG;Lo;0;L;1B11 1B35;;;;N;;;;;
 11.1583  1B13;BALINESE LETTER KA;Lo;0;L;;;;;N;;;;;
 11.1584 -1B14;BALINESE LETTER KA MAHAPRANA;Lo;0;L;;;;;N;;kha;;;
 11.1585 +1B14;BALINESE LETTER KA MAHAPRANA;Lo;0;L;;;;;N;;;;;
 11.1586  1B15;BALINESE LETTER GA;Lo;0;L;;;;;N;;;;;
 11.1587 -1B16;BALINESE LETTER GA GORA;Lo;0;L;;;;;N;;gha;;;
 11.1588 +1B16;BALINESE LETTER GA GORA;Lo;0;L;;;;;N;;;;;
 11.1589  1B17;BALINESE LETTER NGA;Lo;0;L;;;;;N;;;;;
 11.1590  1B18;BALINESE LETTER CA;Lo;0;L;;;;;N;;;;;
 11.1591 -1B19;BALINESE LETTER CA LACA;Lo;0;L;;;;;N;;cha;;;
 11.1592 +1B19;BALINESE LETTER CA LACA;Lo;0;L;;;;;N;;;;;
 11.1593  1B1A;BALINESE LETTER JA;Lo;0;L;;;;;N;;;;;
 11.1594 -1B1B;BALINESE LETTER JA JERA;Lo;0;L;;;;;N;;jha;;;
 11.1595 +1B1B;BALINESE LETTER JA JERA;Lo;0;L;;;;;N;;;;;
 11.1596  1B1C;BALINESE LETTER NYA;Lo;0;L;;;;;N;;;;;
 11.1597 -1B1D;BALINESE LETTER TA LATIK;Lo;0;L;;;;;N;;tta;;;
 11.1598 -1B1E;BALINESE LETTER TA MURDA MAHAPRANA;Lo;0;L;;;;;N;;ttha;;;
 11.1599 -1B1F;BALINESE LETTER DA MURDA ALPAPRANA;Lo;0;L;;;;;N;;dda;;;
 11.1600 -1B20;BALINESE LETTER DA MURDA MAHAPRANA;Lo;0;L;;;;;N;;ddha;;;
 11.1601 -1B21;BALINESE LETTER NA RAMBAT;Lo;0;L;;;;;N;;nna;;;
 11.1602 +1B1D;BALINESE LETTER TA LATIK;Lo;0;L;;;;;N;;;;;
 11.1603 +1B1E;BALINESE LETTER TA MURDA MAHAPRANA;Lo;0;L;;;;;N;;;;;
 11.1604 +1B1F;BALINESE LETTER DA MURDA ALPAPRANA;Lo;0;L;;;;;N;;;;;
 11.1605 +1B20;BALINESE LETTER DA MURDA MAHAPRANA;Lo;0;L;;;;;N;;;;;
 11.1606 +1B21;BALINESE LETTER NA RAMBAT;Lo;0;L;;;;;N;;;;;
 11.1607  1B22;BALINESE LETTER TA;Lo;0;L;;;;;N;;;;;
 11.1608 -1B23;BALINESE LETTER TA TAWA;Lo;0;L;;;;;N;;tha;;;
 11.1609 +1B23;BALINESE LETTER TA TAWA;Lo;0;L;;;;;N;;;;;
 11.1610  1B24;BALINESE LETTER DA;Lo;0;L;;;;;N;;;;;
 11.1611 -1B25;BALINESE LETTER DA MADU;Lo;0;L;;;;;N;;dha;;;
 11.1612 +1B25;BALINESE LETTER DA MADU;Lo;0;L;;;;;N;;;;;
 11.1613  1B26;BALINESE LETTER NA;Lo;0;L;;;;;N;;;;;
 11.1614  1B27;BALINESE LETTER PA;Lo;0;L;;;;;N;;;;;
 11.1615 -1B28;BALINESE LETTER PA KAPAL;Lo;0;L;;;;;N;;pha;;;
 11.1616 +1B28;BALINESE LETTER PA KAPAL;Lo;0;L;;;;;N;;;;;
 11.1617  1B29;BALINESE LETTER BA;Lo;0;L;;;;;N;;;;;
 11.1618 -1B2A;BALINESE LETTER BA KEMBANG;Lo;0;L;;;;;N;;bha;;;
 11.1619 +1B2A;BALINESE LETTER BA KEMBANG;Lo;0;L;;;;;N;;;;;
 11.1620  1B2B;BALINESE LETTER MA;Lo;0;L;;;;;N;;;;;
 11.1621  1B2C;BALINESE LETTER YA;Lo;0;L;;;;;N;;;;;
 11.1622  1B2D;BALINESE LETTER RA;Lo;0;L;;;;;N;;;;;
 11.1623  1B2E;BALINESE LETTER LA;Lo;0;L;;;;;N;;;;;
 11.1624  1B2F;BALINESE LETTER WA;Lo;0;L;;;;;N;;;;;
 11.1625 -1B30;BALINESE LETTER SA SAGA;Lo;0;L;;;;;N;;sha;;;
 11.1626 -1B31;BALINESE LETTER SA SAPA;Lo;0;L;;;;;N;;ssa;;;
 11.1627 +1B30;BALINESE LETTER SA SAGA;Lo;0;L;;;;;N;;;;;
 11.1628 +1B31;BALINESE LETTER SA SAPA;Lo;0;L;;;;;N;;;;;
 11.1629  1B32;BALINESE LETTER SA;Lo;0;L;;;;;N;;;;;
 11.1630  1B33;BALINESE LETTER HA;Lo;0;L;;;;;N;;;;;
 11.1631 -1B34;BALINESE SIGN REREKAN;Mn;7;NSM;;;;;N;;nukta;;;
 11.1632 -1B35;BALINESE VOWEL SIGN TEDUNG;Mc;0;L;;;;;N;;aa;;;
 11.1633 -1B36;BALINESE VOWEL SIGN ULU;Mn;0;NSM;;;;;N;;i;;;
 11.1634 -1B37;BALINESE VOWEL SIGN ULU SARI;Mn;0;NSM;;;;;N;;ii;;;
 11.1635 -1B38;BALINESE VOWEL SIGN SUKU;Mn;0;NSM;;;;;N;;u;;;
 11.1636 -1B39;BALINESE VOWEL SIGN SUKU ILUT;Mn;0;NSM;;;;;N;;uu;;;
 11.1637 -1B3A;BALINESE VOWEL SIGN RA REPA;Mn;0;NSM;;;;;N;;vocalic r;;;
 11.1638 -1B3B;BALINESE VOWEL SIGN RA REPA TEDUNG;Mc;0;L;1B3A 1B35;;;;N;;vocalic rr;;;
 11.1639 -1B3C;BALINESE VOWEL SIGN LA LENGA;Mn;0;NSM;;;;;N;;vocalic l;;;
 11.1640 -1B3D;BALINESE VOWEL SIGN LA LENGA TEDUNG;Mc;0;L;1B3C 1B35;;;;N;;vocalic ll;;;
 11.1641 -1B3E;BALINESE VOWEL SIGN TALING;Mc;0;L;;;;;N;;e;;;
 11.1642 -1B3F;BALINESE VOWEL SIGN TALING REPA;Mc;0;L;;;;;N;;ai;;;
 11.1643 -1B40;BALINESE VOWEL SIGN TALING TEDUNG;Mc;0;L;1B3E 1B35;;;;N;;o;;;
 11.1644 -1B41;BALINESE VOWEL SIGN TALING REPA TEDUNG;Mc;0;L;1B3F 1B35;;;;N;;au;;;
 11.1645 -1B42;BALINESE VOWEL SIGN PEPET;Mn;0;NSM;;;;;N;;ae;;;
 11.1646 -1B43;BALINESE VOWEL SIGN PEPET TEDUNG;Mc;0;L;1B42 1B35;;;;N;;oe;;;
 11.1647 -1B44;BALINESE ADEG ADEG;Mc;9;L;;;;;N;;virama;;;
 11.1648 +1B34;BALINESE SIGN REREKAN;Mn;7;NSM;;;;;N;;;;;
 11.1649 +1B35;BALINESE VOWEL SIGN TEDUNG;Mc;0;L;;;;;N;;;;;
 11.1650 +1B36;BALINESE VOWEL SIGN ULU;Mn;0;NSM;;;;;N;;;;;
 11.1651 +1B37;BALINESE VOWEL SIGN ULU SARI;Mn;0;NSM;;;;;N;;;;;
 11.1652 +1B38;BALINESE VOWEL SIGN SUKU;Mn;0;NSM;;;;;N;;;;;
 11.1653 +1B39;BALINESE VOWEL SIGN SUKU ILUT;Mn;0;NSM;;;;;N;;;;;
 11.1654 +1B3A;BALINESE VOWEL SIGN RA REPA;Mn;0;NSM;;;;;N;;;;;
 11.1655 +1B3B;BALINESE VOWEL SIGN RA REPA TEDUNG;Mc;0;L;1B3A 1B35;;;;N;;;;;
 11.1656 +1B3C;BALINESE VOWEL SIGN LA LENGA;Mn;0;NSM;;;;;N;;;;;
 11.1657 +1B3D;BALINESE VOWEL SIGN LA LENGA TEDUNG;Mc;0;L;1B3C 1B35;;;;N;;;;;
 11.1658 +1B3E;BALINESE VOWEL SIGN TALING;Mc;0;L;;;;;N;;;;;
 11.1659 +1B3F;BALINESE VOWEL SIGN TALING REPA;Mc;0;L;;;;;N;;;;;
 11.1660 +1B40;BALINESE VOWEL SIGN TALING TEDUNG;Mc;0;L;1B3E 1B35;;;;N;;;;;
 11.1661 +1B41;BALINESE VOWEL SIGN TALING REPA TEDUNG;Mc;0;L;1B3F 1B35;;;;N;;;;;
 11.1662 +1B42;BALINESE VOWEL SIGN PEPET;Mn;0;NSM;;;;;N;;;;;
 11.1663 +1B43;BALINESE VOWEL SIGN PEPET TEDUNG;Mc;0;L;1B42 1B35;;;;N;;;;;
 11.1664 +1B44;BALINESE ADEG ADEG;Mc;9;L;;;;;N;;;;;
 11.1665  1B45;BALINESE LETTER KAF SASAK;Lo;0;L;;;;;N;;;;;
 11.1666  1B46;BALINESE LETTER KHOT SASAK;Lo;0;L;;;;;N;;;;;
 11.1667  1B47;BALINESE LETTER TZIR SASAK;Lo;0;L;;;;;N;;;;;
 11.1668 @@ -5555,13 +5918,13 @@
 11.1669  1B57;BALINESE DIGIT SEVEN;Nd;0;L;;7;7;7;N;;;;;
 11.1670  1B58;BALINESE DIGIT EIGHT;Nd;0;L;;8;8;8;N;;;;;
 11.1671  1B59;BALINESE DIGIT NINE;Nd;0;L;;9;9;9;N;;;;;
 11.1672 -1B5A;BALINESE PANTI;Po;0;L;;;;;N;;section;;;
 11.1673 -1B5B;BALINESE PAMADA;Po;0;L;;;;;N;;honorific section;;;
 11.1674 -1B5C;BALINESE WINDU;Po;0;L;;;;;N;;punctuation ring;;;
 11.1675 -1B5D;BALINESE CARIK PAMUNGKAH;Po;0;L;;;;;N;;colon;;;
 11.1676 -1B5E;BALINESE CARIK SIKI;Po;0;L;;;;;N;;danda;;;
 11.1677 -1B5F;BALINESE CARIK PAREREN;Po;0;L;;;;;N;;double danda;;;
 11.1678 -1B60;BALINESE PAMENENG;Po;0;L;;;;;N;;line-breaking hyphen;;;
 11.1679 +1B5A;BALINESE PANTI;Po;0;L;;;;;N;;;;;
 11.1680 +1B5B;BALINESE PAMADA;Po;0;L;;;;;N;;;;;
 11.1681 +1B5C;BALINESE WINDU;Po;0;L;;;;;N;;;;;
 11.1682 +1B5D;BALINESE CARIK PAMUNGKAH;Po;0;L;;;;;N;;;;;
 11.1683 +1B5E;BALINESE CARIK SIKI;Po;0;L;;;;;N;;;;;
 11.1684 +1B5F;BALINESE CARIK PAREREN;Po;0;L;;;;;N;;;;;
 11.1685 +1B60;BALINESE PAMENENG;Po;0;L;;;;;N;;;;;
 11.1686  1B61;BALINESE MUSICAL SYMBOL DONG;So;0;L;;;;;N;;;;;
 11.1687  1B62;BALINESE MUSICAL SYMBOL DENG;So;0;L;;;;;N;;;;;
 11.1688  1B63;BALINESE MUSICAL SYMBOL DUNG;So;0;L;;;;;N;;;;;
 11.1689 @@ -5645,6 +6008,62 @@
 11.1690  1BB7;SUNDANESE DIGIT SEVEN;Nd;0;L;;7;7;7;N;;;;;
 11.1691  1BB8;SUNDANESE DIGIT EIGHT;Nd;0;L;;8;8;8;N;;;;;
 11.1692  1BB9;SUNDANESE DIGIT NINE;Nd;0;L;;9;9;9;N;;;;;
 11.1693 +1BC0;BATAK LETTER A;Lo;0;L;;;;;N;;;;;
 11.1694 +1BC1;BATAK LETTER SIMALUNGUN A;Lo;0;L;;;;;N;;;;;
 11.1695 +1BC2;BATAK LETTER HA;Lo;0;L;;;;;N;;;;;
 11.1696 +1BC3;BATAK LETTER SIMALUNGUN HA;Lo;0;L;;;;;N;;;;;
 11.1697 +1BC4;BATAK LETTER MANDAILING HA;Lo;0;L;;;;;N;;;;;
 11.1698 +1BC5;BATAK LETTER BA;Lo;0;L;;;;;N;;;;;
 11.1699 +1BC6;BATAK LETTER KARO BA;Lo;0;L;;;;;N;;;;;
 11.1700 +1BC7;BATAK LETTER PA;Lo;0;L;;;;;N;;;;;
 11.1701 +1BC8;BATAK LETTER SIMALUNGUN PA;Lo;0;L;;;;;N;;;;;
 11.1702 +1BC9;BATAK LETTER NA;Lo;0;L;;;;;N;;;;;
 11.1703 +1BCA;BATAK LETTER MANDAILING NA;Lo;0;L;;;;;N;;;;;
 11.1704 +1BCB;BATAK LETTER WA;Lo;0;L;;;;;N;;;;;
 11.1705 +1BCC;BATAK LETTER SIMALUNGUN WA;Lo;0;L;;;;;N;;;;;
 11.1706 +1BCD;BATAK LETTER PAKPAK WA;Lo;0;L;;;;;N;;;;;
 11.1707 +1BCE;BATAK LETTER GA;Lo;0;L;;;;;N;;;;;
 11.1708 +1BCF;BATAK LETTER SIMALUNGUN GA;Lo;0;L;;;;;N;;;;;
 11.1709 +1BD0;BATAK LETTER JA;Lo;0;L;;;;;N;;;;;
 11.1710 +1BD1;BATAK LETTER DA;Lo;0;L;;;;;N;;;;;
 11.1711 +1BD2;BATAK LETTER RA;Lo;0;L;;;;;N;;;;;
 11.1712 +1BD3;BATAK LETTER SIMALUNGUN RA;Lo;0;L;;;;;N;;;;;
 11.1713 +1BD4;BATAK LETTER MA;Lo;0;L;;;;;N;;;;;
 11.1714 +1BD5;BATAK LETTER SIMALUNGUN MA;Lo;0;L;;;;;N;;;;;
 11.1715 +1BD6;BATAK LETTER SOUTHERN TA;Lo;0;L;;;;;N;;;;;
 11.1716 +1BD7;BATAK LETTER NORTHERN TA;Lo;0;L;;;;;N;;;;;
 11.1717 +1BD8;BATAK LETTER SA;Lo;0;L;;;;;N;;;;;
 11.1718 +1BD9;BATAK LETTER SIMALUNGUN SA;Lo;0;L;;;;;N;;;;;
 11.1719 +1BDA;BATAK LETTER MANDAILING SA;Lo;0;L;;;;;N;;;;;
 11.1720 +1BDB;BATAK LETTER YA;Lo;0;L;;;;;N;;;;;
 11.1721 +1BDC;BATAK LETTER SIMALUNGUN YA;Lo;0;L;;;;;N;;;;;
 11.1722 +1BDD;BATAK LETTER NGA;Lo;0;L;;;;;N;;;;;
 11.1723 +1BDE;BATAK LETTER LA;Lo;0;L;;;;;N;;;;;
 11.1724 +1BDF;BATAK LETTER SIMALUNGUN LA;Lo;0;L;;;;;N;;;;;
 11.1725 +1BE0;BATAK LETTER NYA;Lo;0;L;;;;;N;;;;;
 11.1726 +1BE1;BATAK LETTER CA;Lo;0;L;;;;;N;;;;;
 11.1727 +1BE2;BATAK LETTER NDA;Lo;0;L;;;;;N;;;;;
 11.1728 +1BE3;BATAK LETTER MBA;Lo;0;L;;;;;N;;;;;
 11.1729 +1BE4;BATAK LETTER I;Lo;0;L;;;;;N;;;;;
 11.1730 +1BE5;BATAK LETTER U;Lo;0;L;;;;;N;;;;;
 11.1731 +1BE6;BATAK SIGN TOMPI;Mn;7;NSM;;;;;N;;;;;
 11.1732 +1BE7;BATAK VOWEL SIGN E;Mc;0;L;;;;;N;;;;;
 11.1733 +1BE8;BATAK VOWEL SIGN PAKPAK E;Mn;0;NSM;;;;;N;;;;;
 11.1734 +1BE9;BATAK VOWEL SIGN EE;Mn;0;NSM;;;;;N;;;;;
 11.1735 +1BEA;BATAK VOWEL SIGN I;Mc;0;L;;;;;N;;;;;
 11.1736 +1BEB;BATAK VOWEL SIGN KARO I;Mc;0;L;;;;;N;;;;;
 11.1737 +1BEC;BATAK VOWEL SIGN O;Mc;0;L;;;;;N;;;;;
 11.1738 +1BED;BATAK VOWEL SIGN KARO O;Mn;0;NSM;;;;;N;;;;;
 11.1739 +1BEE;BATAK VOWEL SIGN U;Mc;0;L;;;;;N;;;;;
 11.1740 +1BEF;BATAK VOWEL SIGN U FOR SIMALUNGUN SA;Mn;0;NSM;;;;;N;;;;;
 11.1741 +1BF0;BATAK CONSONANT SIGN NG;Mn;0;NSM;;;;;N;;;;;
 11.1742 +1BF1;BATAK CONSONANT SIGN H;Mn;0;NSM;;;;;N;;;;;
 11.1743 +1BF2;BATAK PANGOLAT;Mc;9;L;;;;;N;;;;;
 11.1744 +1BF3;BATAK PANONGONAN;Mc;9;L;;;;;N;;;;;
 11.1745 +1BFC;BATAK SYMBOL BINDU NA METEK;Po;0;L;;;;;N;;;;;
 11.1746 +1BFD;BATAK SYMBOL BINDU PINARBORAS;Po;0;L;;;;;N;;;;;
 11.1747 +1BFE;BATAK SYMBOL BINDU JUDUL;Po;0;L;;;;;N;;;;;
 11.1748 +1BFF;BATAK SYMBOL BINDU PANGOLAT;Po;0;L;;;;;N;;;;;
 11.1749  1C00;LEPCHA LETTER KA;Lo;0;L;;;;;N;;;;;
 11.1750  1C01;LEPCHA LETTER KLA;Lo;0;L;;;;;N;;;;;
 11.1751  1C02;LEPCHA LETTER KHA;Lo;0;L;;;;;N;;;;;
 11.1752 @@ -5767,6 +6186,41 @@
 11.1753  1C7D;OL CHIKI AHAD;Lm;0;L;;;;;N;;;;;
 11.1754  1C7E;OL CHIKI PUNCTUATION MUCAAD;Po;0;L;;;;;N;;;;;
 11.1755  1C7F;OL CHIKI PUNCTUATION DOUBLE MUCAAD;Po;0;L;;;;;N;;;;;
 11.1756 +1CD0;VEDIC TONE KARSHANA;Mn;230;NSM;;;;;N;;;;;
 11.1757 +1CD1;VEDIC TONE SHARA;Mn;230;NSM;;;;;N;;;;;
 11.1758 +1CD2;VEDIC TONE PRENKHA;Mn;230;NSM;;;;;N;;;;;
 11.1759 +1CD3;VEDIC SIGN NIHSHVASA;Po;0;L;;;;;N;;;;;
 11.1760 +1CD4;VEDIC SIGN YAJURVEDIC MIDLINE SVARITA;Mn;1;NSM;;;;;N;;;;;
 11.1761 +1CD5;VEDIC TONE YAJURVEDIC AGGRAVATED INDEPENDENT SVARITA;Mn;220;NSM;;;;;N;;;;;
 11.1762 +1CD6;VEDIC TONE YAJURVEDIC INDEPENDENT SVARITA;Mn;220;NSM;;;;;N;;;;;
 11.1763 +1CD7;VEDIC TONE YAJURVEDIC KATHAKA INDEPENDENT SVARITA;Mn;220;NSM;;;;;N;;;;;
 11.1764 +1CD8;VEDIC TONE CANDRA BELOW;Mn;220;NSM;;;;;N;;;;;
 11.1765 +1CD9;VEDIC TONE YAJURVEDIC KATHAKA INDEPENDENT SVARITA SCHROEDER;Mn;220;NSM;;;;;N;;;;;
 11.1766 +1CDA;VEDIC TONE DOUBLE SVARITA;Mn;230;NSM;;;;;N;;;;;
 11.1767 +1CDB;VEDIC TONE TRIPLE SVARITA;Mn;230;NSM;;;;;N;;;;;
 11.1768 +1CDC;VEDIC TONE KATHAKA ANUDATTA;Mn;220;NSM;;;;;N;;;;;
 11.1769 +1CDD;VEDIC TONE DOT BELOW;Mn;220;NSM;;;;;N;;;;;
 11.1770 +1CDE;VEDIC TONE TWO DOTS BELOW;Mn;220;NSM;;;;;N;;;;;
 11.1771 +1CDF;VEDIC TONE THREE DOTS BELOW;Mn;220;NSM;;;;;N;;;;;
 11.1772 +1CE0;VEDIC TONE RIGVEDIC KASHMIRI INDEPENDENT SVARITA;Mn;230;NSM;;;;;N;;;;;
 11.1773 +1CE1;VEDIC TONE ATHARVAVEDIC INDEPENDENT SVARITA;Mc;0;L;;;;;N;;;;;
 11.1774 +1CE2;VEDIC SIGN VISARGA SVARITA;Mn;1;NSM;;;;;N;;;;;
 11.1775 +1CE3;VEDIC SIGN VISARGA UDATTA;Mn;1;NSM;;;;;N;;;;;
 11.1776 +1CE4;VEDIC SIGN REVERSED VISARGA UDATTA;Mn;1;NSM;;;;;N;;;;;
 11.1777 +1CE5;VEDIC SIGN VISARGA ANUDATTA;Mn;1;NSM;;;;;N;;;;;
 11.1778 +1CE6;VEDIC SIGN REVERSED VISARGA ANUDATTA;Mn;1;NSM;;;;;N;;;;;
 11.1779 +1CE7;VEDIC SIGN VISARGA UDATTA WITH TAIL;Mn;1;NSM;;;;;N;;;;;
 11.1780 +1CE8;VEDIC SIGN VISARGA ANUDATTA WITH TAIL;Mn;1;NSM;;;;;N;;;;;
 11.1781 +1CE9;VEDIC SIGN ANUSVARA ANTARGOMUKHA;Lo;0;L;;;;;N;;;;;
 11.1782 +1CEA;VEDIC SIGN ANUSVARA BAHIRGOMUKHA;Lo;0;L;;;;;N;;;;;
 11.1783 +1CEB;VEDIC SIGN ANUSVARA VAMAGOMUKHA;Lo;0;L;;;;;N;;;;;
 11.1784 +1CEC;VEDIC SIGN ANUSVARA VAMAGOMUKHA WITH TAIL;Lo;0;L;;;;;N;;;;;
 11.1785 +1CED;VEDIC SIGN TIRYAK;Mn;220;NSM;;;;;N;;;;;
 11.1786 +1CEE;VEDIC SIGN HEXIFORM LONG ANUSVARA;Lo;0;L;;;;;N;;;;;
 11.1787 +1CEF;VEDIC SIGN LONG ANUSVARA;Lo;0;L;;;;;N;;;;;
 11.1788 +1CF0;VEDIC SIGN RTHANG LONG ANUSVARA;Lo;0;L;;;;;N;;;;;
 11.1789 +1CF1;VEDIC SIGN ANUSVARA UBHAYATO MUKHA;Lo;0;L;;;;;N;;;;;
 11.1790 +1CF2;VEDIC SIGN ARDHAVISARGA;Mc;0;L;;;;;N;;;;;
 11.1791  1D00;LATIN LETTER SMALL CAPITAL A;Ll;0;L;;;;;N;;;;;
 11.1792  1D01;LATIN LETTER SMALL CAPITAL AE;Ll;0;L;;;;;N;;;;;
 11.1793  1D02;LATIN SMALL LETTER TURNED AE;Ll;0;L;;;;;N;;;;;
 11.1794 @@ -5998,6 +6452,8 @@
 11.1795  1DE4;COMBINING LATIN SMALL LETTER S;Mn;230;NSM;;;;;N;;;;;
 11.1796  1DE5;COMBINING LATIN SMALL LETTER LONG S;Mn;230;NSM;;;;;N;;;;;
 11.1797  1DE6;COMBINING LATIN SMALL LETTER Z;Mn;230;NSM;;;;;N;;;;;
 11.1798 +1DFC;COMBINING DOUBLE INVERTED BREVE BELOW;Mn;233;NSM;;;;;N;;;;;
 11.1799 +1DFD;COMBINING ALMOST EQUAL TO BELOW;Mn;220;NSM;;;;;N;;;;;
 11.1800  1DFE;COMBINING LEFT ARROWHEAD ABOVE;Mn;230;NSM;;;;;N;;;;;
 11.1801  1DFF;COMBINING RIGHT ARROWHEAD AND DOWN ARROWHEAD BELOW;Mn;220;NSM;;;;;N;;;;;
 11.1802  1E00;LATIN CAPITAL LETTER A WITH RING BELOW;Lu;0;L;0041 0325;;;;N;;;;1E01;
 11.1803 @@ -6552,7 +7008,7 @@
 11.1804  203C;DOUBLE EXCLAMATION MARK;Po;0;ON;<compat> 0021 0021;;;;N;;;;;
 11.1805  203D;INTERROBANG;Po;0;ON;;;;;N;;;;;
 11.1806  203E;OVERLINE;Po;0;ON;<compat> 0020 0305;;;;N;SPACING OVERSCORE;;;;
 11.1807 -203F;UNDERTIE;Pc;0;ON;;;;;N;;Enotikon;;;
 11.1808 +203F;UNDERTIE;Pc;0;ON;;;;;N;;;;;
 11.1809  2040;CHARACTER TIE;Pc;0;ON;;;;;N;;;;;
 11.1810  2041;CARET INSERTION POINT;Po;0;ON;;;;;N;;;;;
 11.1811  2042;ASTERISM;Po;0;ON;;;;;N;;;;;
 11.1812 @@ -6597,7 +7053,7 @@
 11.1813  206E;NATIONAL DIGIT SHAPES;Cf;0;BN;;;;;N;;;;;
 11.1814  206F;NOMINAL DIGIT SHAPES;Cf;0;BN;;;;;N;;;;;
 11.1815  2070;SUPERSCRIPT ZERO;No;0;EN;<super> 0030;;0;0;N;SUPERSCRIPT DIGIT ZERO;;;;
 11.1816 -2071;SUPERSCRIPT LATIN SMALL LETTER I;Ll;0;L;<super> 0069;;;;N;;;;;
 11.1817 +2071;SUPERSCRIPT LATIN SMALL LETTER I;Lm;0;L;<super> 0069;;;;N;;;;;
 11.1818  2074;SUPERSCRIPT FOUR;No;0;EN;<super> 0034;;4;4;N;SUPERSCRIPT DIGIT FOUR;;;;
 11.1819  2075;SUPERSCRIPT FIVE;No;0;EN;<super> 0035;;5;5;N;SUPERSCRIPT DIGIT FIVE;;;;
 11.1820  2076;SUPERSCRIPT SIX;No;0;EN;<super> 0036;;6;6;N;SUPERSCRIPT DIGIT SIX;;;;
 11.1821 @@ -6609,7 +7065,7 @@
 11.1822  207C;SUPERSCRIPT EQUALS SIGN;Sm;0;ON;<super> 003D;;;;N;;;;;
 11.1823  207D;SUPERSCRIPT LEFT PARENTHESIS;Ps;0;ON;<super> 0028;;;;Y;SUPERSCRIPT OPENING PARENTHESIS;;;;
 11.1824  207E;SUPERSCRIPT RIGHT PARENTHESIS;Pe;0;ON;<super> 0029;;;;Y;SUPERSCRIPT CLOSING PARENTHESIS;;;;
 11.1825 -207F;SUPERSCRIPT LATIN SMALL LETTER N;Ll;0;L;<super> 006E;;;;N;;;;;
 11.1826 +207F;SUPERSCRIPT LATIN SMALL LETTER N;Lm;0;L;<super> 006E;;;;N;;;;;
 11.1827  2080;SUBSCRIPT ZERO;No;0;EN;<sub> 0030;;0;0;N;SUBSCRIPT DIGIT ZERO;;;;
 11.1828  2081;SUBSCRIPT ONE;No;0;EN;<sub> 0031;;1;1;N;SUBSCRIPT DIGIT ONE;;;;
 11.1829  2082;SUBSCRIPT TWO;No;0;EN;<sub> 0032;;2;2;N;SUBSCRIPT DIGIT TWO;;;;
 11.1830 @@ -6630,6 +7086,14 @@
 11.1831  2092;LATIN SUBSCRIPT SMALL LETTER O;Lm;0;L;<sub> 006F;;;;N;;;;;
 11.1832  2093;LATIN SUBSCRIPT SMALL LETTER X;Lm;0;L;<sub> 0078;;;;N;;;;;
 11.1833  2094;LATIN SUBSCRIPT SMALL LETTER SCHWA;Lm;0;L;<sub> 0259;;;;N;;;;;
 11.1834 +2095;LATIN SUBSCRIPT SMALL LETTER H;Lm;0;L;<sub> 0068;;;;N;;;;;
 11.1835 +2096;LATIN SUBSCRIPT SMALL LETTER K;Lm;0;L;<sub> 006B;;;;N;;;;;
 11.1836 +2097;LATIN SUBSCRIPT SMALL LETTER L;Lm;0;L;<sub> 006C;;;;N;;;;;
 11.1837 +2098;LATIN SUBSCRIPT SMALL LETTER M;Lm;0;L;<sub> 006D;;;;N;;;;;
 11.1838 +2099;LATIN SUBSCRIPT SMALL LETTER N;Lm;0;L;<sub> 006E;;;;N;;;;;
 11.1839 +209A;LATIN SUBSCRIPT SMALL LETTER P;Lm;0;L;<sub> 0070;;;;N;;;;;
 11.1840 +209B;LATIN SUBSCRIPT SMALL LETTER S;Lm;0;L;<sub> 0073;;;;N;;;;;
 11.1841 +209C;LATIN SUBSCRIPT SMALL LETTER T;Lm;0;L;<sub> 0074;;;;N;;;;;
 11.1842  20A0;EURO-CURRENCY SIGN;Sc;0;ET;;;;;N;;;;;
 11.1843  20A1;COLON SIGN;Sc;0;ET;;;;;N;;;;;
 11.1844  20A2;CRUZEIRO SIGN;Sc;0;ET;;;;;N;;;;;
 11.1845 @@ -6652,6 +7116,10 @@
 11.1846  20B3;AUSTRAL SIGN;Sc;0;ET;;;;;N;;;;;
 11.1847  20B4;HRYVNIA SIGN;Sc;0;ET;;;;;N;;;;;
 11.1848  20B5;CEDI SIGN;Sc;0;ET;;;;;N;;;;;
 11.1849 +20B6;LIVRE TOURNOIS SIGN;Sc;0;ET;;;;;N;;;;;
 11.1850 +20B7;SPESMILO SIGN;Sc;0;ET;;;;;N;;;;;
 11.1851 +20B8;TENGE SIGN;Sc;0;ET;;;;;N;;;;;
 11.1852 +20B9;INDIAN RUPEE SIGN;Sc;0;ET;;;;;N;;;;;
 11.1853  20D0;COMBINING LEFT HARPOON ABOVE;Mn;230;NSM;;;;;N;NON-SPACING LEFT HARPOON ABOVE;;;;
 11.1854  20D1;COMBINING RIGHT HARPOON ABOVE;Mn;230;NSM;;;;;N;NON-SPACING RIGHT HARPOON ABOVE;;;;
 11.1855  20D2;COMBINING LONG VERTICAL LINE OVERLAY;Mn;1;NSM;;;;;N;NON-SPACING LONG VERTICAL BAR OVERLAY;;;;
 11.1856 @@ -6709,7 +7177,7 @@
 11.1857  2115;DOUBLE-STRUCK CAPITAL N;Lu;0;L;<font> 004E;;;;N;DOUBLE-STRUCK N;;;;
 11.1858  2116;NUMERO SIGN;So;0;ON;<compat> 004E 006F;;;;N;NUMERO;;;;
 11.1859  2117;SOUND RECORDING COPYRIGHT;So;0;ON;;;;;N;;;;;
 11.1860 -2118;SCRIPT CAPITAL P;So;0;ON;;;;;N;SCRIPT P;;;;
 11.1861 +2118;SCRIPT CAPITAL P;Sm;0;ON;;;;;N;SCRIPT P;;;;
 11.1862  2119;DOUBLE-STRUCK CAPITAL P;Lu;0;L;<font> 0050;;;;N;DOUBLE-STRUCK P;;;;
 11.1863  211A;DOUBLE-STRUCK CAPITAL Q;Lu;0;L;<font> 0051;;;;N;DOUBLE-STRUCK Q;;;;
 11.1864  211B;SCRIPT CAPITAL R;Lu;0;L;<font> 0052;;;;N;SCRIPT R;;;;
 11.1865 @@ -6765,6 +7233,9 @@
 11.1866  214D;AKTIESELSKAB;So;0;ON;;;;;N;;;;;
 11.1867  214E;TURNED SMALL F;Ll;0;L;;;;;N;;;2132;;2132
 11.1868  214F;SYMBOL FOR SAMARITAN SOURCE;So;0;L;;;;;N;;;;;
 11.1869 +2150;VULGAR FRACTION ONE SEVENTH;No;0;ON;<fraction> 0031 2044 0037;;;1/7;N;;;;;
 11.1870 +2151;VULGAR FRACTION ONE NINTH;No;0;ON;<fraction> 0031 2044 0039;;;1/9;N;;;;;
 11.1871 +2152;VULGAR FRACTION ONE TENTH;No;0;ON;<fraction> 0031 2044 0031 0030;;;1/10;N;;;;;
 11.1872  2153;VULGAR FRACTION ONE THIRD;No;0;ON;<fraction> 0031 2044 0033;;;1/3;N;FRACTION ONE THIRD;;;;
 11.1873  2154;VULGAR FRACTION TWO THIRDS;No;0;ON;<fraction> 0032 2044 0033;;;2/3;N;FRACTION TWO THIRDS;;;;
 11.1874  2155;VULGAR FRACTION ONE FIFTH;No;0;ON;<fraction> 0031 2044 0035;;;1/5;N;FRACTION ONE FIFTH;;;;
 11.1875 @@ -6819,6 +7290,7 @@
 11.1876  2186;ROMAN NUMERAL FIFTY EARLY FORM;Nl;0;L;;;;50;N;;;;;
 11.1877  2187;ROMAN NUMERAL FIFTY THOUSAND;Nl;0;L;;;;50000;N;;;;;
 11.1878  2188;ROMAN NUMERAL ONE HUNDRED THOUSAND;Nl;0;L;;;;100000;N;;;;;
 11.1879 +2189;VULGAR FRACTION ZERO THIRDS;No;0;ON;<fraction> 0030 2044 0033;;;0;N;;;;;
 11.1880  2190;LEFTWARDS ARROW;Sm;0;ON;;;;;N;LEFT ARROW;;;;
 11.1881  2191;UPWARDS ARROW;Sm;0;ON;;;;;N;UP ARROW;;;;
 11.1882  2192;RIGHTWARDS ARROW;Sm;0;ON;;;;;N;RIGHT ARROW;;;;
 11.1883 @@ -6992,7 +7464,7 @@
 11.1884  223A;GEOMETRIC PROPORTION;Sm;0;ON;;;;;N;;;;;
 11.1885  223B;HOMOTHETIC;Sm;0;ON;;;;;Y;;;;;
 11.1886  223C;TILDE OPERATOR;Sm;0;ON;;;;;Y;;;;;
 11.1887 -223D;REVERSED TILDE;Sm;0;ON;;;;;Y;;lazy S;;;
 11.1888 +223D;REVERSED TILDE;Sm;0;ON;;;;;Y;;;;;
 11.1889  223E;INVERTED LAZY S;Sm;0;ON;;;;;Y;;;;;
 11.1890  223F;SINE WAVE;Sm;0;ON;;;;;Y;;;;;
 11.1891  2240;WREATH PRODUCT;Sm;0;ON;;;;;Y;;;;;
 11.1892 @@ -7261,18 +7733,18 @@
 11.1893  2347;APL FUNCTIONAL SYMBOL QUAD LEFTWARDS ARROW;So;0;L;;;;;N;;;;;
 11.1894  2348;APL FUNCTIONAL SYMBOL QUAD RIGHTWARDS ARROW;So;0;L;;;;;N;;;;;
 11.1895  2349;APL FUNCTIONAL SYMBOL CIRCLE BACKSLASH;So;0;L;;;;;N;;;;;
 11.1896 -234A;APL FUNCTIONAL SYMBOL DOWN TACK UNDERBAR;So;0;L;;;;;N;;*;;;
 11.1897 +234A;APL FUNCTIONAL SYMBOL DOWN TACK UNDERBAR;So;0;L;;;;;N;;;;;
 11.1898  234B;APL FUNCTIONAL SYMBOL DELTA STILE;So;0;L;;;;;N;;;;;
 11.1899  234C;APL FUNCTIONAL SYMBOL QUAD DOWN CARET;So;0;L;;;;;N;;;;;
 11.1900  234D;APL FUNCTIONAL SYMBOL QUAD DELTA;So;0;L;;;;;N;;;;;
 11.1901 -234E;APL FUNCTIONAL SYMBOL DOWN TACK JOT;So;0;L;;;;;N;;*;;;
 11.1902 +234E;APL FUNCTIONAL SYMBOL DOWN TACK JOT;So;0;L;;;;;N;;;;;
 11.1903  234F;APL FUNCTIONAL SYMBOL UPWARDS VANE;So;0;L;;;;;N;;;;;
 11.1904  2350;APL FUNCTIONAL SYMBOL QUAD UPWARDS ARROW;So;0;L;;;;;N;;;;;
 11.1905 -2351;APL FUNCTIONAL SYMBOL UP TACK OVERBAR;So;0;L;;;;;N;;*;;;
 11.1906 +2351;APL FUNCTIONAL SYMBOL UP TACK OVERBAR;So;0;L;;;;;N;;;;;
 11.1907  2352;APL FUNCTIONAL SYMBOL DEL STILE;So;0;L;;;;;N;;;;;
 11.1908  2353;APL FUNCTIONAL SYMBOL QUAD UP CARET;So;0;L;;;;;N;;;;;
 11.1909  2354;APL FUNCTIONAL SYMBOL QUAD DEL;So;0;L;;;;;N;;;;;
 11.1910 -2355;APL FUNCTIONAL SYMBOL UP TACK JOT;So;0;L;;;;;N;;*;;;
 11.1911 +2355;APL FUNCTIONAL SYMBOL UP TACK JOT;So;0;L;;;;;N;;;;;
 11.1912  2356;APL FUNCTIONAL SYMBOL DOWNWARDS VANE;So;0;L;;;;;N;;;;;
 11.1913  2357;APL FUNCTIONAL SYMBOL QUAD DOWNWARDS ARROW;So;0;L;;;;;N;;;;;
 11.1914  2358;APL FUNCTIONAL SYMBOL QUOTE UNDERBAR;So;0;L;;;;;N;;;;;
 11.1915 @@ -7284,7 +7756,7 @@
 11.1916  235E;APL FUNCTIONAL SYMBOL QUOTE QUAD;So;0;L;;;;;N;;;;;
 11.1917  235F;APL FUNCTIONAL SYMBOL CIRCLE STAR;So;0;L;;;;;N;;;;;
 11.1918  2360;APL FUNCTIONAL SYMBOL QUAD COLON;So;0;L;;;;;N;;;;;
 11.1919 -2361;APL FUNCTIONAL SYMBOL UP TACK DIAERESIS;So;0;L;;;;;N;;*;;;
 11.1920 +2361;APL FUNCTIONAL SYMBOL UP TACK DIAERESIS;So;0;L;;;;;N;;;;;
 11.1921  2362;APL FUNCTIONAL SYMBOL DEL DIAERESIS;So;0;L;;;;;N;;;;;
 11.1922  2363;APL FUNCTIONAL SYMBOL STAR DIAERESIS;So;0;L;;;;;N;;;;;
 11.1923  2364;APL FUNCTIONAL SYMBOL JOT DIAERESIS;So;0;L;;;;;N;;;;;
 11.1924 @@ -7324,9 +7796,9 @@
 11.1925  2386;ENTER SYMBOL;So;0;ON;;;;;N;;;;;
 11.1926  2387;ALTERNATIVE KEY SYMBOL;So;0;ON;;;;;N;;;;;
 11.1927  2388;HELM SYMBOL;So;0;ON;;;;;N;;;;;
 11.1928 -2389;CIRCLED HORIZONTAL BAR WITH NOTCH;So;0;ON;;;;;N;;pause;;;
 11.1929 -238A;CIRCLED TRIANGLE DOWN;So;0;ON;;;;;N;;break;;;
 11.1930 -238B;BROKEN CIRCLE WITH NORTHWEST ARROW;So;0;ON;;;;;N;;escape;;;
 11.1931 +2389;CIRCLED HORIZONTAL BAR WITH NOTCH;So;0;ON;;;;;N;;;;;
 11.1932 +238A;CIRCLED TRIANGLE DOWN;So;0;ON;;;;;N;;;;;
 11.1933 +238B;BROKEN CIRCLE WITH NORTHWEST ARROW;So;0;ON;;;;;N;;;;;
 11.1934  238C;UNDO SYMBOL;So;0;ON;;;;;N;;;;;
 11.1935  238D;MONOSTABLE SYMBOL;So;0;ON;;;;;N;;;;;
 11.1936  238E;HYSTERESIS SYMBOL;So;0;ON;;;;;N;;;;;
 11.1937 @@ -7407,18 +7879,30 @@
 11.1938  23D9;METRICAL PENTASEME;So;0;ON;;;;;N;;;;;
 11.1939  23DA;EARTH GROUND;So;0;ON;;;;;N;;;;;
 11.1940  23DB;FUSE;So;0;ON;;;;;N;;;;;
 11.1941 -23DC;TOP PARENTHESIS;Sm;0;ON;;;;;N;;mathematical use;;;
 11.1942 -23DD;BOTTOM PARENTHESIS;Sm;0;ON;;;;;N;;mathematical use;;;
 11.1943 -23DE;TOP CURLY BRACKET;Sm;0;ON;;;;;N;;mathematical use;;;
 11.1944 -23DF;BOTTOM CURLY BRACKET;Sm;0;ON;;;;;N;;mathematical use;;;
 11.1945 -23E0;TOP TORTOISE SHELL BRACKET;Sm;0;ON;;;;;N;;mathematical use;;;
 11.1946 -23E1;BOTTOM TORTOISE SHELL BRACKET;Sm;0;ON;;;;;N;;mathematical use;;;
 11.1947 +23DC;TOP PARENTHESIS;Sm;0;ON;;;;;N;;;;;
 11.1948 +23DD;BOTTOM PARENTHESIS;Sm;0;ON;;;;;N;;;;;
 11.1949 +23DE;TOP CURLY BRACKET;Sm;0;ON;;;;;N;;;;;
 11.1950 +23DF;BOTTOM CURLY BRACKET;Sm;0;ON;;;;;N;;;;;
 11.1951 +23E0;TOP TORTOISE SHELL BRACKET;Sm;0;ON;;;;;N;;;;;
 11.1952 +23E1;BOTTOM TORTOISE SHELL BRACKET;Sm;0;ON;;;;;N;;;;;
 11.1953  23E2;WHITE TRAPEZIUM;So;0;ON;;;;;N;;;;;
 11.1954  23E3;BENZENE RING WITH CIRCLE;So;0;ON;;;;;N;;;;;
 11.1955  23E4;STRAIGHTNESS;So;0;ON;;;;;N;;;;;
 11.1956  23E5;FLATNESS;So;0;ON;;;;;N;;;;;
 11.1957  23E6;AC CURRENT;So;0;ON;;;;;N;;;;;
 11.1958  23E7;ELECTRICAL INTERSECTION;So;0;ON;;;;;N;;;;;
 11.1959 +23E8;DECIMAL EXPONENT SYMBOL;So;0;ON;;;;;N;;;;;
 11.1960 +23E9;BLACK RIGHT-POINTING DOUBLE TRIANGLE;So;0;ON;;;;;N;;;;;
 11.1961 +23EA;BLACK LEFT-POINTING DOUBLE TRIANGLE;So;0;ON;;;;;N;;;;;
 11.1962 +23EB;BLACK UP-POINTING DOUBLE TRIANGLE;So;0;ON;;;;;N;;;;;
 11.1963 +23EC;BLACK DOWN-POINTING DOUBLE TRIANGLE;So;0;ON;;;;;N;;;;;
 11.1964 +23ED;BLACK RIGHT-POINTING DOUBLE TRIANGLE WITH VERTICAL BAR;So;0;ON;;;;;N;;;;;
 11.1965 +23EE;BLACK LEFT-POINTING DOUBLE TRIANGLE WITH VERTICAL BAR;So;0;ON;;;;;N;;;;;
 11.1966 +23EF;BLACK RIGHT-POINTING TRIANGLE WITH DOUBLE VERTICAL BAR;So;0;ON;;;;;N;;;;;
 11.1967 +23F0;ALARM CLOCK;So;0;ON;;;;;N;;;;;
 11.1968 +23F1;STOPWATCH;So;0;ON;;;;;N;;;;;
 11.1969 +23F2;TIMER CLOCK;So;0;ON;;;;;N;;;;;
 11.1970 +23F3;HOURGLASS WITH FLOWING SAND;So;0;ON;;;;;N;;;;;
 11.1971  2400;SYMBOL FOR NULL;So;0;ON;;;;;N;GRAPHIC FOR NULL;;;;
 11.1972  2401;SYMBOL FOR START OF HEADING;So;0;ON;;;;;N;GRAPHIC FOR START OF HEADING;;;;
 11.1973  2402;SYMBOL FOR START OF TEXT;So;0;ON;;;;;N;GRAPHIC FOR START OF TEXT;;;;
 11.1974 @@ -8000,13 +8484,13 @@
 11.1975  2670;WEST SYRIAC CROSS;So;0;ON;;;;;N;;;;;
 11.1976  2671;EAST SYRIAC CROSS;So;0;ON;;;;;N;;;;;
 11.1977  2672;UNIVERSAL RECYCLING SYMBOL;So;0;ON;;;;;N;;;;;
 11.1978 -2673;RECYCLING SYMBOL FOR TYPE-1 PLASTICS;So;0;ON;;;;;N;;pete;;;
 11.1979 -2674;RECYCLING SYMBOL FOR TYPE-2 PLASTICS;So;0;ON;;;;;N;;hdpe;;;
 11.1980 -2675;RECYCLING SYMBOL FOR TYPE-3 PLASTICS;So;0;ON;;;;;N;;pvc;;;
 11.1981 -2676;RECYCLING SYMBOL FOR TYPE-4 PLASTICS;So;0;ON;;;;;N;;ldpe;;;
 11.1982 -2677;RECYCLING SYMBOL FOR TYPE-5 PLASTICS;So;0;ON;;;;;N;;pp;;;
 11.1983 -2678;RECYCLING SYMBOL FOR TYPE-6 PLASTICS;So;0;ON;;;;;N;;ps;;;
 11.1984 -2679;RECYCLING SYMBOL FOR TYPE-7 PLASTICS;So;0;ON;;;;;N;;other;;;
 11.1985 +2673;RECYCLING SYMBOL FOR TYPE-1 PLASTICS;So;0;ON;;;;;N;;;;;
 11.1986 +2674;RECYCLING SYMBOL FOR TYPE-2 PLASTICS;So;0;ON;;;;;N;;;;;
 11.1987 +2675;RECYCLING SYMBOL FOR TYPE-3 PLASTICS;So;0;ON;;;;;N;;;;;
 11.1988 +2676;RECYCLING SYMBOL FOR TYPE-4 PLASTICS;So;0;ON;;;;;N;;;;;
 11.1989 +2677;RECYCLING SYMBOL FOR TYPE-5 PLASTICS;So;0;ON;;;;;N;;;;;
 11.1990 +2678;RECYCLING SYMBOL FOR TYPE-6 PLASTICS;So;0;ON;;;;;N;;;;;
 11.1991 +2679;RECYCLING SYMBOL FOR TYPE-7 PLASTICS;So;0;ON;;;;;N;;;;;
 11.1992  267A;RECYCLING SYMBOL FOR GENERIC MATERIALS;So;0;ON;;;;;N;;;;;
 11.1993  267B;BLACK UNIVERSAL RECYCLING SYMBOL;So;0;ON;;;;;N;;;;;
 11.1994  267C;RECYCLED PAPER SYMBOL;So;0;ON;;;;;N;;;;;
 11.1995 @@ -8043,6 +8527,8 @@
 11.1996  269B;ATOM SYMBOL;So;0;ON;;;;;N;;;;;
 11.1997  269C;FLEUR-DE-LIS;So;0;ON;;;;;N;;;;;
 11.1998  269D;OUTLINED WHITE STAR;So;0;ON;;;;;N;;;;;
 11.1999 +269E;THREE LINES CONVERGING RIGHT;So;0;ON;;;;;N;;;;;
 11.2000 +269F;THREE LINES CONVERGING LEFT;So;0;ON;;;;;N;;;;;
 11.2001  26A0;WARNING SIGN;So;0;ON;;;;;N;;;;;
 11.2002  26A1;HIGH VOLTAGE SIGN;So;0;ON;;;;;N;;;;;
 11.2003  26A2;DOUBLED FEMALE SIGN;So;0;ON;;;;;N;;;;;
 11.2004 @@ -8072,18 +8558,84 @@
 11.2005  26BA;SEMISEXTILE;So;0;ON;;;;;N;;;;;
 11.2006  26BB;QUINCUNX;So;0;ON;;;;;N;;;;;
 11.2007  26BC;SESQUIQUADRATE;So;0;ON;;;;;N;;;;;
 11.2008 +26BD;SOCCER BALL;So;0;ON;;;;;N;;;;;
 11.2009 +26BE;BASEBALL;So;0;ON;;;;;N;;;;;
 11.2010 +26BF;SQUARED KEY;So;0;ON;;;;;N;;;;;
 11.2011  26C0;WHITE DRAUGHTS MAN;So;0;ON;;;;;N;;;;;
 11.2012  26C1;WHITE DRAUGHTS KING;So;0;ON;;;;;N;;;;;
 11.2013  26C2;BLACK DRAUGHTS MAN;So;0;ON;;;;;N;;;;;
 11.2014  26C3;BLACK DRAUGHTS KING;So;0;ON;;;;;N;;;;;
 11.2015 +26C4;SNOWMAN WITHOUT SNOW;So;0;ON;;;;;N;;;;;
 11.2016 +26C5;SUN BEHIND CLOUD;So;0;ON;;;;;N;;;;;
 11.2017 +26C6;RAIN;So;0;ON;;;;;N;;;;;
 11.2018 +26C7;BLACK SNOWMAN;So;0;ON;;;;;N;;;;;
 11.2019 +26C8;THUNDER CLOUD AND RAIN;So;0;ON;;;;;N;;;;;
 11.2020 +26C9;TURNED WHITE SHOGI PIECE;So;0;ON;;;;;N;;;;;
 11.2021 +26CA;TURNED BLACK SHOGI PIECE;So;0;ON;;;;;N;;;;;
 11.2022 +26CB;WHITE DIAMOND IN SQUARE;So;0;ON;;;;;N;;;;;
 11.2023 +26CC;CROSSING LANES;So;0;ON;;;;;N;;;;;
 11.2024 +26CD;DISABLED CAR;So;0;ON;;;;;N;;;;;
 11.2025 +26CE;OPHIUCHUS;So;0;ON;;;;;N;;;;;
 11.2026 +26CF;PICK;So;0;ON;;;;;N;;;;;
 11.2027 +26D0;CAR SLIDING;So;0;ON;;;;;N;;;;;
 11.2028 +26D1;HELMET WITH WHITE CROSS;So;0;ON;;;;;N;;;;;
 11.2029 +26D2;CIRCLED CROSSING LANES;So;0;ON;;;;;N;;;;;
 11.2030 +26D3;CHAINS;So;0;ON;;;;;N;;;;;
 11.2031 +26D4;NO ENTRY;So;0;ON;;;;;N;;;;;
 11.2032 +26D5;ALTERNATE ONE-WAY LEFT WAY TRAFFIC;So;0;ON;;;;;N;;;;;
 11.2033 +26D6;BLACK TWO-WAY LEFT WAY TRAFFIC;So;0;ON;;;;;N;;;;;
 11.2034 +26D7;WHITE TWO-WAY LEFT WAY TRAFFIC;So;0;ON;;;;;N;;;;;
 11.2035 +26D8;BLACK LEFT LANE MERGE;So;0;ON;;;;;N;;;;;
 11.2036 +26D9;WHITE LEFT LANE MERGE;So;0;ON;;;;;N;;;;;
 11.2037 +26DA;DRIVE SLOW SIGN;So;0;ON;;;;;N;;;;;
 11.2038 +26DB;HEAVY WHITE DOWN-POINTING TRIANGLE;So;0;ON;;;;;N;;;;;
 11.2039 +26DC;LEFT CLOSED ENTRY;So;0;ON;;;;;N;;;;;
 11.2040 +26DD;SQUARED SALTIRE;So;0;ON;;;;;N;;;;;
 11.2041 +26DE;FALLING DIAGONAL IN WHITE CIRCLE IN BLACK SQUARE;So;0;ON;;;;;N;;;;;
 11.2042 +26DF;BLACK TRUCK;So;0;ON;;;;;N;;;;;
 11.2043 +26E0;RESTRICTED LEFT ENTRY-1;So;0;ON;;;;;N;;;;;
 11.2044 +26E1;RESTRICTED LEFT ENTRY-2;So;0;ON;;;;;N;;;;;
 11.2045 +26E2;ASTRONOMICAL SYMBOL FOR URANUS;So;0;ON;;;;;N;;;;;
 11.2046 +26E3;HEAVY CIRCLE WITH STROKE AND TWO DOTS ABOVE;So;0;ON;;;;;N;;;;;
 11.2047 +26E4;PENTAGRAM;So;0;ON;;;;;N;;;;;
 11.2048 +26E5;RIGHT-HANDED INTERLACED PENTAGRAM;So;0;ON;;;;;N;;;;;
 11.2049 +26E6;LEFT-HANDED INTERLACED PENTAGRAM;So;0;ON;;;;;N;;;;;
 11.2050 +26E7;INVERTED PENTAGRAM;So;0;ON;;;;;N;;;;;
 11.2051 +26E8;BLACK CROSS ON SHIELD;So;0;ON;;;;;N;;;;;
 11.2052 +26E9;SHINTO SHRINE;So;0;ON;;;;;N;;;;;
 11.2053 +26EA;CHURCH;So;0;ON;;;;;N;;;;;
 11.2054 +26EB;CASTLE;So;0;ON;;;;;N;;;;;
 11.2055 +26EC;HISTORIC SITE;So;0;ON;;;;;N;;;;;
 11.2056 +26ED;GEAR WITHOUT HUB;So;0;ON;;;;;N;;;;;
 11.2057 +26EE;GEAR WITH HANDLES;So;0;ON;;;;;N;;;;;
 11.2058 +26EF;MAP SYMBOL FOR LIGHTHOUSE;So;0;ON;;;;;N;;;;;
 11.2059 +26F0;MOUNTAIN;So;0;ON;;;;;N;;;;;
 11.2060 +26F1;UMBRELLA ON GROUND;So;0;ON;;;;;N;;;;;
 11.2061 +26F2;FOUNTAIN;So;0;ON;;;;;N;;;;;
 11.2062 +26F3;FLAG IN HOLE;So;0;ON;;;;;N;;;;;
 11.2063 +26F4;FERRY;So;0;ON;;;;;N;;;;;
 11.2064 +26F5;SAILBOAT;So;0;ON;;;;;N;;;;;
 11.2065 +26F6;SQUARE FOUR CORNERS;So;0;ON;;;;;N;;;;;
 11.2066 +26F7;SKIER;So;0;ON;;;;;N;;;;;
 11.2067 +26F8;ICE SKATE;So;0;ON;;;;;N;;;;;
 11.2068 +26F9;PERSON WITH BALL;So;0;ON;;;;;N;;;;;
 11.2069 +26FA;TENT;So;0;ON;;;;;N;;;;;
 11.2070 +26FB;JAPANESE BANK SYMBOL;So;0;ON;;;;;N;;;;;
 11.2071 +26FC;HEADSTONE GRAVEYARD SYMBOL;So;0;ON;;;;;N;;;;;
 11.2072 +26FD;FUEL PUMP;So;0;ON;;;;;N;;;;;
 11.2073 +26FE;CUP ON BLACK SQUARE;So;0;ON;;;;;N;;;;;
 11.2074 +26FF;WHITE FLAG WITH HORIZONTAL MIDDLE BLACK STRIPE;So;0;ON;;;;;N;;;;;
 11.2075  2701;UPPER BLADE SCISSORS;So;0;ON;;;;;N;;;;;
 11.2076  2702;BLACK SCISSORS;So;0;ON;;;;;N;;;;;
 11.2077  2703;LOWER BLADE SCISSORS;So;0;ON;;;;;N;;;;;
 11.2078  2704;WHITE SCISSORS;So;0;ON;;;;;N;;;;;
 11.2079 +2705;WHITE HEAVY CHECK MARK;So;0;ON;;;;;N;;;;;
 11.2080  2706;TELEPHONE LOCATION SIGN;So;0;ON;;;;;N;;;;;
 11.2081  2707;TAPE DRIVE;So;0;ON;;;;;N;;;;;
 11.2082  2708;AIRPLANE;So;0;ON;;;;;N;;;;;
 11.2083  2709;ENVELOPE;So;0;ON;;;;;N;;;;;
 11.2084 +270A;RAISED FIST;So;0;ON;;;;;N;;;;;
 11.2085 +270B;RAISED HAND;So;0;ON;;;;;N;;;;;
 11.2086  270C;VICTORY HAND;So;0;ON;;;;;N;;;;;
 11.2087  270D;WRITING HAND;So;0;ON;;;;;N;;;;;
 11.2088  270E;LOWER RIGHT PENCIL;So;0;ON;;;;;N;;;;;
 11.2089 @@ -8112,6 +8664,7 @@
 11.2090  2725;FOUR CLUB-SPOKED ASTERISK;So;0;ON;;;;;N;;;;;
 11.2091  2726;BLACK FOUR POINTED STAR;So;0;ON;;;;;N;;;;;
 11.2092  2727;WHITE FOUR POINTED STAR;So;0;ON;;;;;N;;;;;
 11.2093 +2728;SPARKLES;So;0;ON;;;;;N;;;;;
 11.2094  2729;STRESS OUTLINED WHITE STAR;So;0;ON;;;;;N;;;;;
 11.2095  272A;CIRCLED WHITE STAR;So;0;ON;;;;;N;;;;;
 11.2096  272B;OPEN CENTRE BLACK STAR;So;0;ON;;;;;N;OPEN CENTER BLACK STAR;;;;
 11.2097 @@ -8147,12 +8700,18 @@
 11.2098  2749;BALLOON-SPOKED ASTERISK;So;0;ON;;;;;N;;;;;
 11.2099  274A;EIGHT TEARDROP-SPOKED PROPELLER ASTERISK;So;0;ON;;;;;N;;;;;
 11.2100  274B;HEAVY EIGHT TEARDROP-SPOKED PROPELLER ASTERISK;So;0;ON;;;;;N;;;;;
 11.2101 +274C;CROSS MARK;So;0;ON;;;;;N;;;;;
 11.2102  274D;SHADOWED WHITE CIRCLE;So;0;ON;;;;;N;;;;;
 11.2103 +274E;NEGATIVE SQUARED CROSS MARK;So;0;ON;;;;;N;;;;;
 11.2104  274F;LOWER RIGHT DROP-SHADOWED WHITE SQUARE;So;0;ON;;;;;N;;;;;
 11.2105  2750;UPPER RIGHT DROP-SHADOWED WHITE SQUARE;So;0;ON;;;;;N;;;;;
 11.2106  2751;LOWER RIGHT SHADOWED WHITE SQUARE;So;0;ON;;;;;N;;;;;
 11.2107  2752;UPPER RIGHT SHADOWED WHITE SQUARE;So;0;ON;;;;;N;;;;;
 11.2108 +2753;BLACK QUESTION MARK ORNAMENT;So;0;ON;;;;;N;;;;;
 11.2109 +2754;WHITE QUESTION MARK ORNAMENT;So;0;ON;;;;;N;;;;;
 11.2110 +2755;WHITE EXCLAMATION MARK ORNAMENT;So;0;ON;;;;;N;;;;;
 11.2111  2756;BLACK DIAMOND MINUS WHITE X;So;0;ON;;;;;N;;;;;
 11.2112 +2757;HEAVY EXCLAMATION MARK SYMBOL;So;0;ON;;;;;N;;;;;
 11.2113  2758;LIGHT VERTICAL BAR;So;0;ON;;;;;N;;;;;
 11.2114  2759;MEDIUM VERTICAL BAR;So;0;ON;;;;;N;;;;;
 11.2115  275A;HEAVY VERTICAL BAR;So;0;ON;;;;;N;;;;;
 11.2116 @@ -8160,6 +8719,8 @@
 11.2117  275C;HEAVY SINGLE COMMA QUOTATION MARK ORNAMENT;So;0;ON;;;;;N;;;;;
 11.2118  275D;HEAVY DOUBLE TURNED COMMA QUOTATION MARK ORNAMENT;So;0;ON;;;;;N;;;;;
 11.2119  275E;HEAVY DOUBLE COMMA QUOTATION MARK ORNAMENT;So;0;ON;;;;;N;;;;;
 11.2120 +275F;HEAVY LOW SINGLE COMMA QUOTATION MARK ORNAMENT;So;0;ON;;;;;N;;;;;
 11.2121 +2760;HEAVY LOW DOUBLE COMMA QUOTATION MARK ORNAMENT;So;0;ON;;;;;N;;;;;
 11.2122  2761;CURVED STEM PARAGRAPH SIGN ORNAMENT;So;0;ON;;;;;N;;;;;
 11.2123  2762;HEAVY EXCLAMATION MARK ORNAMENT;So;0;ON;;;;;N;;;;;
 11.2124  2763;HEAVY HEART EXCLAMATION MARK ORNAMENT;So;0;ON;;;;;N;;;;;
 11.2125 @@ -8212,6 +8773,9 @@
 11.2126  2792;DINGBAT NEGATIVE CIRCLED SANS-SERIF DIGIT NINE;No;0;ON;;;9;9;N;INVERSE CIRCLED SANS-SERIF DIGIT NINE;;;;
 11.2127  2793;DINGBAT NEGATIVE CIRCLED SANS-SERIF NUMBER TEN;No;0;ON;;;;10;N;INVERSE CIRCLED SANS-SERIF NUMBER TEN;;;;
 11.2128  2794;HEAVY WIDE-HEADED RIGHTWARDS ARROW;So;0;ON;;;;;N;HEAVY WIDE-HEADED RIGHT ARROW;;;;
 11.2129 +2795;HEAVY PLUS SIGN;So;0;ON;;;;;N;;;;;
 11.2130 +2796;HEAVY MINUS SIGN;So;0;ON;;;;;N;;;;;
 11.2131 +2797;HEAVY DIVISION SIGN;So;0;ON;;;;;N;;;;;
 11.2132  2798;HEAVY SOUTH EAST ARROW;So;0;ON;;;;;N;HEAVY LOWER RIGHT ARROW;;;;
 11.2133  2799;HEAVY RIGHTWARDS ARROW;So;0;ON;;;;;N;HEAVY RIGHT ARROW;;;;
 11.2134  279A;HEAVY NORTH EAST ARROW;So;0;ON;;;;;N;HEAVY UPPER RIGHT ARROW;;;;
 11.2135 @@ -8236,6 +8800,7 @@
 11.2136  27AD;HEAVY LOWER RIGHT-SHADOWED WHITE RIGHTWARDS ARROW;So;0;ON;;;;;N;HEAVY LOWER RIGHT-SHADOWED WHITE RIGHT ARROW;;;;
 11.2137  27AE;HEAVY UPPER RIGHT-SHADOWED WHITE RIGHTWARDS ARROW;So;0;ON;;;;;N;HEAVY UPPER RIGHT-SHADOWED WHITE RIGHT ARROW;;;;
 11.2138  27AF;NOTCHED LOWER RIGHT-SHADOWED WHITE RIGHTWARDS ARROW;So;0;ON;;;;;N;NOTCHED LOWER RIGHT-SHADOWED WHITE RIGHT ARROW;;;;
 11.2139 +27B0;CURLY LOOP;So;0;ON;;;;;N;;;;;
 11.2140  27B1;NOTCHED UPPER RIGHT-SHADOWED WHITE RIGHTWARDS ARROW;So;0;ON;;;;;N;NOTCHED UPPER RIGHT-SHADOWED WHITE RIGHT ARROW;;;;
 11.2141  27B2;CIRCLED HEAVY WHITE RIGHTWARDS ARROW;So;0;ON;;;;;N;CIRCLED HEAVY WHITE RIGHT ARROW;;;;
 11.2142  27B3;WHITE-FEATHERED RIGHTWARDS ARROW;So;0;ON;;;;;N;WHITE-FEATHERED RIGHT ARROW;;;;
 11.2143 @@ -8250,6 +8815,7 @@
 11.2144  27BC;WEDGE-TAILED RIGHTWARDS ARROW;So;0;ON;;;;;N;WEDGE-TAILED RIGHT ARROW;;;;
 11.2145  27BD;HEAVY WEDGE-TAILED RIGHTWARDS ARROW;So;0;ON;;;;;N;HEAVY WEDGE-TAILED RIGHT ARROW;;;;
 11.2146  27BE;OPEN-OUTLINED RIGHTWARDS ARROW;So;0;ON;;;;;N;OPEN-OUTLINED RIGHT ARROW;;;;
 11.2147 +27BF;DOUBLE CURLY LOOP;So;0;ON;;;;;N;;;;;
 11.2148  27C0;THREE DIMENSIONAL ANGLE;Sm;0;ON;;;;;Y;;;;;
 11.2149  27C1;WHITE TRIANGLE CONTAINING SMALL WHITE TRIANGLE;Sm;0;ON;;;;;N;;;;;
 11.2150  27C2;PERPENDICULAR;Sm;0;ON;;;;;N;;;;;
 11.2151 @@ -8262,6 +8828,8 @@
 11.2152  27C9;SUPERSET PRECEDING SOLIDUS;Sm;0;ON;;;;;Y;;;;;
 11.2153  27CA;VERTICAL BAR WITH HORIZONTAL STROKE;Sm;0;ON;;;;;N;;;;;
 11.2154  27CC;LONG DIVISION;Sm;0;ON;;;;;Y;;;;;
 11.2155 +27CE;SQUARED LOGICAL AND;Sm;0;ON;;;;;N;;;;;
 11.2156 +27CF;SQUARED LOGICAL OR;Sm;0;ON;;;;;N;;;;;
 11.2157  27D0;WHITE DIAMOND WITH CENTRED DOT;Sm;0;ON;;;;;N;;;;;
 11.2158  27D1;AND WITH DOT;Sm;0;ON;;;;;N;;;;;
 11.2159  27D2;ELEMENT OF OPENING UPWARDS;Sm;0;ON;;;;;N;;;;;
 11.2160 @@ -9042,8 +9610,8 @@
 11.2161  2AD9;ELEMENT OF OPENING DOWNWARDS;Sm;0;ON;;;;;N;;;;;
 11.2162  2ADA;PITCHFORK WITH TEE TOP;Sm;0;ON;;;;;N;;;;;
 11.2163  2ADB;TRANSVERSAL INTERSECTION;Sm;0;ON;;;;;N;;;;;
 11.2164 -2ADC;FORKING;Sm;0;ON;2ADD 0338;;;;Y;;not independent;;;
 11.2165 -2ADD;NONFORKING;Sm;0;ON;;;;;N;;independent;;;
 11.2166 +2ADC;FORKING;Sm;0;ON;2ADD 0338;;;;Y;;;;;
 11.2167 +2ADD;NONFORKING;Sm;0;ON;;;;;N;;;;;
 11.2168  2ADE;SHORT LEFT TACK;Sm;0;ON;;;;;Y;;;;;
 11.2169  2ADF;SHORT DOWN TACK;Sm;0;ON;;;;;N;;;;;
 11.2170  2AE0;SHORT UP TACK;Sm;0;ON;;;;;N;;;;;
 11.2171 @@ -9160,6 +9728,11 @@
 11.2172  2B52;WHITE SMALL STAR;So;0;ON;;;;;N;;;;;
 11.2173  2B53;BLACK RIGHT-POINTING PENTAGON;So;0;ON;;;;;N;;;;;
 11.2174  2B54;WHITE RIGHT-POINTING PENTAGON;So;0;ON;;;;;N;;;;;
 11.2175 +2B55;HEAVY LARGE CIRCLE;So;0;ON;;;;;N;;;;;
 11.2176 +2B56;HEAVY OVAL WITH OVAL INSIDE;So;0;ON;;;;;N;;;;;
 11.2177 +2B57;HEAVY CIRCLE WITH CIRCLE INSIDE;So;0;ON;;;;;N;;;;;
 11.2178 +2B58;HEAVY CIRCLE;So;0;ON;;;;;N;;;;;
 11.2179 +2B59;HEAVY CIRCLED SALTIRE;So;0;ON;;;;;N;;;;;
 11.2180  2C00;GLAGOLITIC CAPITAL LETTER AZU;Lu;0;L;;;;;N;;;;2C30;
 11.2181  2C01;GLAGOLITIC CAPITAL LETTER BUKY;Lu;0;L;;;;;N;;;;2C31;
 11.2182  2C02;GLAGOLITIC CAPITAL LETTER VEDE;Lu;0;L;;;;;N;;;;2C32;
 11.2183 @@ -9270,6 +9843,7 @@
 11.2184  2C6D;LATIN CAPITAL LETTER ALPHA;Lu;0;L;;;;;N;;;;0251;
 11.2185  2C6E;LATIN CAPITAL LETTER M WITH HOOK;Lu;0;L;;;;;N;;;;0271;
 11.2186  2C6F;LATIN CAPITAL LETTER TURNED A;Lu;0;L;;;;;N;;;;0250;
 11.2187 +2C70;LATIN CAPITAL LETTER TURNED ALPHA;Lu;0;L;;;;;N;;;;0252;
 11.2188  2C71;LATIN SMALL LETTER V WITH RIGHT HOOK;Ll;0;L;;;;;N;;;;;
 11.2189  2C72;LATIN CAPITAL LETTER W WITH HOOK;Lu;0;L;;;;;N;;;;2C73;
 11.2190  2C73;LATIN SMALL LETTER W WITH HOOK;Ll;0;L;;;;;N;;;2C72;;2C72
 11.2191 @@ -9283,6 +9857,8 @@
 11.2192  2C7B;LATIN LETTER SMALL CAPITAL TURNED E;Ll;0;L;;;;;N;;;;;
 11.2193  2C7C;LATIN SUBSCRIPT SMALL LETTER J;Ll;0;L;<sub> 006A;;;;N;;;;;
 11.2194  2C7D;MODIFIER LETTER CAPITAL V;Lm;0;L;<super> 0056;;;;N;;;;;
 11.2195 +2C7E;LATIN CAPITAL LETTER S WITH SWASH TAIL;Lu;0;L;;;;;N;;;;023F;
 11.2196 +2C7F;LATIN CAPITAL LETTER Z WITH SWASH TAIL;Lu;0;L;;;;;N;;;;0240;
 11.2197  2C80;COPTIC CAPITAL LETTER ALFA;Lu;0;L;;;;;N;;;;2C81;
 11.2198  2C81;COPTIC SMALL LETTER ALFA;Ll;0;L;;;;;N;;;2C80;;2C80
 11.2199  2C82;COPTIC CAPITAL LETTER VIDA;Lu;0;L;;;;;N;;;;2C83;
 11.2200 @@ -9390,6 +9966,13 @@
 11.2201  2CE8;COPTIC SYMBOL TAU RO;So;0;ON;;;;;N;;;;;
 11.2202  2CE9;COPTIC SYMBOL KHI RO;So;0;ON;;;;;N;;;;;
 11.2203  2CEA;COPTIC SYMBOL SHIMA SIMA;So;0;ON;;;;;N;;;;;
 11.2204 +2CEB;COPTIC CAPITAL LETTER CRYPTOGRAMMIC SHEI;Lu;0;L;;;;;N;;;;2CEC;
 11.2205 +2CEC;COPTIC SMALL LETTER CRYPTOGRAMMIC SHEI;Ll;0;L;;;;;N;;;2CEB;;2CEB
 11.2206 +2CED;COPTIC CAPITAL LETTER CRYPTOGRAMMIC GANGIA;Lu;0;L;;;;;N;;;;2CEE;
 11.2207 +2CEE;COPTIC SMALL LETTER CRYPTOGRAMMIC GANGIA;Ll;0;L;;;;;N;;;2CED;;2CED
 11.2208 +2CEF;COPTIC COMBINING NI ABOVE;Mn;230;NSM;;;;;N;;;;;
 11.2209 +2CF0;COPTIC COMBINING SPIRITUS ASPER;Mn;230;NSM;;;;;N;;;;;
 11.2210 +2CF1;COPTIC COMBINING SPIRITUS LENIS;Mn;230;NSM;;;;;N;;;;;
 11.2211  2CF9;COPTIC OLD NUBIAN FULL STOP;Po;0;ON;;;;;N;;;;;
 11.2212  2CFA;COPTIC OLD NUBIAN DIRECT QUESTION MARK;Po;0;ON;;;;;N;;;;;
 11.2213  2CFB;COPTIC OLD NUBIAN INDIRECT QUESTION MARK;Po;0;ON;;;;;N;;;;;
 11.2214 @@ -9397,44 +9980,44 @@
 11.2215  2CFD;COPTIC FRACTION ONE HALF;No;0;ON;;;;1/2;N;;;;;
 11.2216  2CFE;COPTIC FULL STOP;Po;0;ON;;;;;N;;;;;
 11.2217  2CFF;COPTIC MORPHOLOGICAL DIVIDER;Po;0;ON;;;;;N;;;;;
 11.2218 -2D00;GEORGIAN SMALL LETTER AN;Ll;0;L;;;;;N;;Khutsuri;10A0;;10A0
 11.2219 -2D01;GEORGIAN SMALL LETTER BAN;Ll;0;L;;;;;N;;Khutsuri;10A1;;10A1
 11.2220 -2D02;GEORGIAN SMALL LETTER GAN;Ll;0;L;;;;;N;;Khutsuri;10A2;;10A2
 11.2221 -2D03;GEORGIAN SMALL LETTER DON;Ll;0;L;;;;;N;;Khutsuri;10A3;;10A3
 11.2222 -2D04;GEORGIAN SMALL LETTER EN;Ll;0;L;;;;;N;;Khutsuri;10A4;;10A4
 11.2223 -2D05;GEORGIAN SMALL LETTER VIN;Ll;0;L;;;;;N;;Khutsuri;10A5;;10A5
 11.2224 -2D06;GEORGIAN SMALL LETTER ZEN;Ll;0;L;;;;;N;;Khutsuri;10A6;;10A6
 11.2225 -2D07;GEORGIAN SMALL LETTER TAN;Ll;0;L;;;;;N;;Khutsuri;10A7;;10A7
 11.2226 -2D08;GEORGIAN SMALL LETTER IN;Ll;0;L;;;;;N;;Khutsuri;10A8;;10A8
 11.2227 -2D09;GEORGIAN SMALL LETTER KAN;Ll;0;L;;;;;N;;Khutsuri;10A9;;10A9
 11.2228 -2D0A;GEORGIAN SMALL LETTER LAS;Ll;0;L;;;;;N;;Khutsuri;10AA;;10AA
 11.2229 -2D0B;GEORGIAN SMALL LETTER MAN;Ll;0;L;;;;;N;;Khutsuri;10AB;;10AB
 11.2230 -2D0C;GEORGIAN SMALL LETTER NAR;Ll;0;L;;;;;N;;Khutsuri;10AC;;10AC
 11.2231 -2D0D;GEORGIAN SMALL LETTER ON;Ll;0;L;;;;;N;;Khutsuri;10AD;;10AD
 11.2232 -2D0E;GEORGIAN SMALL LETTER PAR;Ll;0;L;;;;;N;;Khutsuri;10AE;;10AE
 11.2233 -2D0F;GEORGIAN SMALL LETTER ZHAR;Ll;0;L;;;;;N;;Khutsuri;10AF;;10AF
 11.2234 -2D10;GEORGIAN SMALL LETTER RAE;Ll;0;L;;;;;N;;Khutsuri;10B0;;10B0
 11.2235 -2D11;GEORGIAN SMALL LETTER SAN;Ll;0;L;;;;;N;;Khutsuri;10B1;;10B1
 11.2236 -2D12;GEORGIAN SMALL LETTER TAR;Ll;0;L;;;;;N;;Khutsuri;10B2;;10B2
 11.2237 -2D13;GEORGIAN SMALL LETTER UN;Ll;0;L;;;;;N;;Khutsuri;10B3;;10B3
 11.2238 -2D14;GEORGIAN SMALL LETTER PHAR;Ll;0;L;;;;;N;;Khutsuri;10B4;;10B4
 11.2239 -2D15;GEORGIAN SMALL LETTER KHAR;Ll;0;L;;;;;N;;Khutsuri;10B5;;10B5
 11.2240 -2D16;GEORGIAN SMALL LETTER GHAN;Ll;0;L;;;;;N;;Khutsuri;10B6;;10B6
 11.2241 -2D17;GEORGIAN SMALL LETTER QAR;Ll;0;L;;;;;N;;Khutsuri;10B7;;10B7
 11.2242 -2D18;GEORGIAN SMALL LETTER SHIN;Ll;0;L;;;;;N;;Khutsuri;10B8;;10B8
 11.2243 -2D19;GEORGIAN SMALL LETTER CHIN;Ll;0;L;;;;;N;;Khutsuri;10B9;;10B9
 11.2244 -2D1A;GEORGIAN SMALL LETTER CAN;Ll;0;L;;;;;N;;Khutsuri;10BA;;10BA
 11.2245 -2D1B;GEORGIAN SMALL LETTER JIL;Ll;0;L;;;;;N;;Khutsuri;10BB;;10BB
 11.2246 -2D1C;GEORGIAN SMALL LETTER CIL;Ll;0;L;;;;;N;;Khutsuri;10BC;;10BC
 11.2247 -2D1D;GEORGIAN SMALL LETTER CHAR;Ll;0;L;;;;;N;;Khutsuri;10BD;;10BD
 11.2248 -2D1E;GEORGIAN SMALL LETTER XAN;Ll;0;L;;;;;N;;Khutsuri;10BE;;10BE
 11.2249 -2D1F;GEORGIAN SMALL LETTER JHAN;Ll;0;L;;;;;N;;Khutsuri;10BF;;10BF
 11.2250 -2D20;GEORGIAN SMALL LETTER HAE;Ll;0;L;;;;;N;;Khutsuri;10C0;;10C0
 11.2251 -2D21;GEORGIAN SMALL LETTER HE;Ll;0;L;;;;;N;;Khutsuri;10C1;;10C1
 11.2252 -2D22;GEORGIAN SMALL LETTER HIE;Ll;0;L;;;;;N;;Khutsuri;10C2;;10C2
 11.2253 -2D23;GEORGIAN SMALL LETTER WE;Ll;0;L;;;;;N;;Khutsuri;10C3;;10C3
 11.2254 -2D24;GEORGIAN SMALL LETTER HAR;Ll;0;L;;;;;N;;Khutsuri;10C4;;10C4
 11.2255 -2D25;GEORGIAN SMALL LETTER HOE;Ll;0;L;;;;;N;;Khutsuri;10C5;;10C5
 11.2256 +2D00;GEORGIAN SMALL LETTER AN;Ll;0;L;;;;;N;;;10A0;;10A0
 11.2257 +2D01;GEORGIAN SMALL LETTER BAN;Ll;0;L;;;;;N;;;10A1;;10A1
 11.2258 +2D02;GEORGIAN SMALL LETTER GAN;Ll;0;L;;;;;N;;;10A2;;10A2
 11.2259 +2D03;GEORGIAN SMALL LETTER DON;Ll;0;L;;;;;N;;;10A3;;10A3
 11.2260 +2D04;GEORGIAN SMALL LETTER EN;Ll;0;L;;;;;N;;;10A4;;10A4
 11.2261 +2D05;GEORGIAN SMALL LETTER VIN;Ll;0;L;;;;;N;;;10A5;;10A5
 11.2262 +2D06;GEORGIAN SMALL LETTER ZEN;Ll;0;L;;;;;N;;;10A6;;10A6
 11.2263 +2D07;GEORGIAN SMALL LETTER TAN;Ll;0;L;;;;;N;;;10A7;;10A7
 11.2264 +2D08;GEORGIAN SMALL LETTER IN;Ll;0;L;;;;;N;;;10A8;;10A8
 11.2265 +2D09;GEORGIAN SMALL LETTER KAN;Ll;0;L;;;;;N;;;10A9;;10A9
 11.2266 +2D0A;GEORGIAN SMALL LETTER LAS;Ll;0;L;;;;;N;;;10AA;;10AA
 11.2267 +2D0B;GEORGIAN SMALL LETTER MAN;Ll;0;L;;;;;N;;;10AB;;10AB
 11.2268 +2D0C;GEORGIAN SMALL LETTER NAR;Ll;0;L;;;;;N;;;10AC;;10AC
 11.2269 +2D0D;GEORGIAN SMALL LETTER ON;Ll;0;L;;;;;N;;;10AD;;10AD
 11.2270 +2D0E;GEORGIAN SMALL LETTER PAR;Ll;0;L;;;;;N;;;10AE;;10AE
 11.2271 +2D0F;GEORGIAN SMALL LETTER ZHAR;Ll;0;L;;;;;N;;;10AF;;10AF
 11.2272 +2D10;GEORGIAN SMALL LETTER RAE;Ll;0;L;;;;;N;;;10B0;;10B0
 11.2273 +2D11;GEORGIAN SMALL LETTER SAN;Ll;0;L;;;;;N;;;10B1;;10B1
 11.2274 +2D12;GEORGIAN SMALL LETTER TAR;Ll;0;L;;;;;N;;;10B2;;10B2
 11.2275 +2D13;GEORGIAN SMALL LETTER UN;Ll;0;L;;;;;N;;;10B3;;10B3
 11.2276 +2D14;GEORGIAN SMALL LETTER PHAR;Ll;0;L;;;;;N;;;10B4;;10B4
 11.2277 +2D15;GEORGIAN SMALL LETTER KHAR;Ll;0;L;;;;;N;;;10B5;;10B5
 11.2278 +2D16;GEORGIAN SMALL LETTER GHAN;Ll;0;L;;;;;N;;;10B6;;10B6
 11.2279 +2D17;GEORGIAN SMALL LETTER QAR;Ll;0;L;;;;;N;;;10B7;;10B7
 11.2280 +2D18;GEORGIAN SMALL LETTER SHIN;Ll;0;L;;;;;N;;;10B8;;10B8
 11.2281 +2D19;GEORGIAN SMALL LETTER CHIN;Ll;0;L;;;;;N;;;10B9;;10B9
 11.2282 +2D1A;GEORGIAN SMALL LETTER CAN;Ll;0;L;;;;;N;;;10BA;;10BA
 11.2283 +2D1B;GEORGIAN SMALL LETTER JIL;Ll;0;L;;;;;N;;;10BB;;10BB
 11.2284 +2D1C;GEORGIAN SMALL LETTER CIL;Ll;0;L;;;;;N;;;10BC;;10BC
 11.2285 +2D1D;GEORGIAN SMALL LETTER CHAR;Ll;0;L;;;;;N;;;10BD;;10BD
 11.2286 +2D1E;GEORGIAN SMALL LETTER XAN;Ll;0;L;;;;;N;;;10BE;;10BE
 11.2287 +2D1F;GEORGIAN SMALL LETTER JHAN;Ll;0;L;;;;;N;;;10BF;;10BF
 11.2288 +2D20;GEORGIAN SMALL LETTER HAE;Ll;0;L;;;;;N;;;10C0;;10C0
 11.2289 +2D21;GEORGIAN SMALL LETTER HE;Ll;0;L;;;;;N;;;10C1;;10C1
 11.2290 +2D22;GEORGIAN SMALL LETTER HIE;Ll;0;L;;;;;N;;;10C2;;10C2
 11.2291 +2D23;GEORGIAN SMALL LETTER WE;Ll;0;L;;;;;N;;;10C3;;10C3
 11.2292 +2D24;GEORGIAN SMALL LETTER HAR;Ll;0;L;;;;;N;;;10C4;;10C4
 11.2293 +2D25;GEORGIAN SMALL LETTER HOE;Ll;0;L;;;;;N;;;10C5;;10C5
 11.2294  2D30;TIFINAGH LETTER YA;Lo;0;L;;;;;N;;;;;
 11.2295  2D31;TIFINAGH LETTER YAB;Lo;0;L;;;;;N;;;;;
 11.2296  2D32;TIFINAGH LETTER YABH;Lo;0;L;;;;;N;;;;;
 11.2297 @@ -9451,7 +10034,7 @@
 11.2298  2D3D;TIFINAGH LETTER YAK;Lo;0;L;;;;;N;;;;;
 11.2299  2D3E;TIFINAGH LETTER TUAREG YAK;Lo;0;L;;;;;N;;;;;
 11.2300  2D3F;TIFINAGH LETTER YAKHH;Lo;0;L;;;;;N;;;;;
 11.2301 -2D40;TIFINAGH LETTER YAH;Lo;0;L;;;;;N;;Tuareg yab;;;
 11.2302 +2D40;TIFINAGH LETTER YAH;Lo;0;L;;;;;N;;;;;
 11.2303  2D41;TIFINAGH LETTER BERBER ACADEMY YAH;Lo;0;L;;;;;N;;;;;
 11.2304  2D42;TIFINAGH LETTER TUAREG YAH;Lo;0;L;;;;;N;;;;;
 11.2305  2D43;TIFINAGH LETTER YAHH;Lo;0;L;;;;;N;;;;;
 11.2306 @@ -9470,12 +10053,12 @@
 11.2307  2D50;TIFINAGH LETTER TUAREG YAGN;Lo;0;L;;;;;N;;;;;
 11.2308  2D51;TIFINAGH LETTER TUAREG YANG;Lo;0;L;;;;;N;;;;;
 11.2309  2D52;TIFINAGH LETTER YAP;Lo;0;L;;;;;N;;;;;
 11.2310 -2D53;TIFINAGH LETTER YU;Lo;0;L;;;;;N;;Tuareg yaw;;;
 11.2311 +2D53;TIFINAGH LETTER YU;Lo;0;L;;;;;N;;;;;
 11.2312  2D54;TIFINAGH LETTER YAR;Lo;0;L;;;;;N;;;;;
 11.2313  2D55;TIFINAGH LETTER YARR;Lo;0;L;;;;;N;;;;;
 11.2314  2D56;TIFINAGH LETTER YAGH;Lo;0;L;;;;;N;;;;;
 11.2315  2D57;TIFINAGH LETTER TUAREG YAGH;Lo;0;L;;;;;N;;;;;
 11.2316 -2D58;TIFINAGH LETTER AYER YAGH;Lo;0;L;;;;;N;;Adrar yaj;;;
 11.2317 +2D58;TIFINAGH LETTER AYER YAGH;Lo;0;L;;;;;N;;;;;
 11.2318  2D59;TIFINAGH LETTER YAS;Lo;0;L;;;;;N;;;;;
 11.2319  2D5A;TIFINAGH LETTER YASS;Lo;0;L;;;;;N;;;;;
 11.2320  2D5B;TIFINAGH LETTER YASH;Lo;0;L;;;;;N;;;;;
 11.2321 @@ -9487,9 +10070,11 @@
 11.2322  2D61;TIFINAGH LETTER YAW;Lo;0;L;;;;;N;;;;;
 11.2323  2D62;TIFINAGH LETTER YAY;Lo;0;L;;;;;N;;;;;
 11.2324  2D63;TIFINAGH LETTER YAZ;Lo;0;L;;;;;N;;;;;
 11.2325 -2D64;TIFINAGH LETTER TAWELLEMET YAZ;Lo;0;L;;;;;N;;harpoon yaz;;;
 11.2326 +2D64;TIFINAGH LETTER TAWELLEMET YAZ;Lo;0;L;;;;;N;;;;;
 11.2327  2D65;TIFINAGH LETTER YAZZ;Lo;0;L;;;;;N;;;;;
 11.2328 -2D6F;TIFINAGH MODIFIER LETTER LABIALIZATION MARK;Lm;0;L;<super> 2D61;;;;N;;tamatart;;;
 11.2329 +2D6F;TIFINAGH MODIFIER LETTER LABIALIZATION MARK;Lm;0;L;<super> 2D61;;;;N;;;;;
 11.2330 +2D70;TIFINAGH SEPARATOR MARK;Po;0;L;;;;;N;;;;;
 11.2331 +2D7F;TIFINAGH CONSONANT JOINER;Mn;9;NSM;;;;;N;;;;;
 11.2332  2D80;ETHIOPIC SYLLABLE LOA;Lo;0;L;;;;;N;;;;;
 11.2333  2D81;ETHIOPIC SYLLABLE MOA;Lo;0;L;;;;;N;;;;;
 11.2334  2D82;ETHIOPIC SYLLABLE ROA;Lo;0;L;;;;;N;;;;;
 11.2335 @@ -9650,6 +10235,7 @@
 11.2336  2E2E;REVERSED QUESTION MARK;Po;0;ON;;;;;N;;;;;
 11.2337  2E2F;VERTICAL TILDE;Lm;0;ON;;;;;N;;;;;
 11.2338  2E30;RING POINT;Po;0;ON;;;;;N;;;;;
 11.2339 +2E31;WORD SEPARATOR MIDDLE DOT;Po;0;ON;;;;;N;;;;;
 11.2340  2E80;CJK RADICAL REPEAT;So;0;ON;;;;;N;;;;;
 11.2341  2E81;CJK RADICAL CLIFF;So;0;ON;;;;;N;;;;;
 11.2342  2E82;CJK RADICAL SECOND ONE;So;0;ON;;;;;N;;;;;
 11.2343 @@ -10379,22 +10965,22 @@
 11.2344  318C;HANGUL LETTER YU-I;Lo;0;L;<compat> 1194;;;;N;HANGUL LETTER YUI;;;;
 11.2345  318D;HANGUL LETTER ARAEA;Lo;0;L;<compat> 119E;;;;N;HANGUL LETTER ALAE A;;;;
 11.2346  318E;HANGUL LETTER ARAEAE;Lo;0;L;<compat> 11A1;;;;N;HANGUL LETTER ALAE AE;;;;
 11.2347 -3190;IDEOGRAPHIC ANNOTATION LINKING MARK;So;0;L;;;;;N;KANBUN TATETEN;Kanbun Tateten;;;
 11.2348 -3191;IDEOGRAPHIC ANNOTATION REVERSE MARK;So;0;L;;;;;N;KAERITEN RE;Kaeriten;;;
 11.2349 -3192;IDEOGRAPHIC ANNOTATION ONE MARK;No;0;L;<super> 4E00;;;1;N;KAERITEN ITI;Kaeriten;;;
 11.2350 -3193;IDEOGRAPHIC ANNOTATION TWO MARK;No;0;L;<super> 4E8C;;;2;N;KAERITEN NI;Kaeriten;;;
 11.2351 -3194;IDEOGRAPHIC ANNOTATION THREE MARK;No;0;L;<super> 4E09;;;3;N;KAERITEN SAN;Kaeriten;;;
 11.2352 -3195;IDEOGRAPHIC ANNOTATION FOUR MARK;No;0;L;<super> 56DB;;;4;N;KAERITEN SI;Kaeriten;;;
 11.2353 -3196;IDEOGRAPHIC ANNOTATION TOP MARK;So;0;L;<super> 4E0A;;;;N;KAERITEN ZYOU;Kaeriten;;;
 11.2354 -3197;IDEOGRAPHIC ANNOTATION MIDDLE MARK;So;0;L;<super> 4E2D;;;;N;KAERITEN TYUU;Kaeriten;;;
 11.2355 -3198;IDEOGRAPHIC ANNOTATION BOTTOM MARK;So;0;L;<super> 4E0B;;;;N;KAERITEN GE;Kaeriten;;;
 11.2356 -3199;IDEOGRAPHIC ANNOTATION FIRST MARK;So;0;L;<super> 7532;;;;N;KAERITEN KOU;Kaeriten;;;
 11.2357 -319A;IDEOGRAPHIC ANNOTATION SECOND MARK;So;0;L;<super> 4E59;;;;N;KAERITEN OTU;Kaeriten;;;
 11.2358 -319B;IDEOGRAPHIC ANNOTATION THIRD MARK;So;0;L;<super> 4E19;;;;N;KAERITEN HEI;Kaeriten;;;
 11.2359 -319C;IDEOGRAPHIC ANNOTATION FOURTH MARK;So;0;L;<super> 4E01;;;;N;KAERITEN TEI;Kaeriten;;;
 11.2360 -319D;IDEOGRAPHIC ANNOTATION HEAVEN MARK;So;0;L;<super> 5929;;;;N;KAERITEN TEN;Kaeriten;;;
 11.2361 -319E;IDEOGRAPHIC ANNOTATION EARTH MARK;So;0;L;<super> 5730;;;;N;KAERITEN TI;Kaeriten;;;
 11.2362 -319F;IDEOGRAPHIC ANNOTATION MAN MARK;So;0;L;<super> 4EBA;;;;N;KAERITEN ZIN;Kaeriten;;;
 11.2363 +3190;IDEOGRAPHIC ANNOTATION LINKING MARK;So;0;L;;;;;N;KANBUN TATETEN;;;;
 11.2364 +3191;IDEOGRAPHIC ANNOTATION REVERSE MARK;So;0;L;;;;;N;KAERITEN RE;;;;
 11.2365 +3192;IDEOGRAPHIC ANNOTATION ONE MARK;No;0;L;<super> 4E00;;;1;N;KAERITEN ITI;;;;
 11.2366 +3193;IDEOGRAPHIC ANNOTATION TWO MARK;No;0;L;<super> 4E8C;;;2;N;KAERITEN NI;;;;
 11.2367 +3194;IDEOGRAPHIC ANNOTATION THREE MARK;No;0;L;<super> 4E09;;;3;N;KAERITEN SAN;;;;
 11.2368 +3195;IDEOGRAPHIC ANNOTATION FOUR MARK;No;0;L;<super> 56DB;;;4;N;KAERITEN SI;;;;
 11.2369 +3196;IDEOGRAPHIC ANNOTATION TOP MARK;So;0;L;<super> 4E0A;;;;N;KAERITEN ZYOU;;;;
 11.2370 +3197;IDEOGRAPHIC ANNOTATION MIDDLE MARK;So;0;L;<super> 4E2D;;;;N;KAERITEN TYUU;;;;
 11.2371 +3198;IDEOGRAPHIC ANNOTATION BOTTOM MARK;So;0;L;<super> 4E0B;;;;N;KAERITEN GE;;;;
 11.2372 +3199;IDEOGRAPHIC ANNOTATION FIRST MARK;So;0;L;<super> 7532;;;;N;KAERITEN KOU;;;;
 11.2373 +319A;IDEOGRAPHIC ANNOTATION SECOND MARK;So;0;L;<super> 4E59;;;;N;KAERITEN OTU;;;;
 11.2374 +319B;IDEOGRAPHIC ANNOTATION THIRD MARK;So;0;L;<super> 4E19;;;;N;KAERITEN HEI;;;;
 11.2375 +319C;IDEOGRAPHIC ANNOTATION FOURTH MARK;So;0;L;<super> 4E01;;;;N;KAERITEN TEI;;;;
 11.2376 +319D;IDEOGRAPHIC ANNOTATION HEAVEN MARK;So;0;L;<super> 5929;;;;N;KAERITEN TEN;;;;
 11.2377 +319E;IDEOGRAPHIC ANNOTATION EARTH MARK;So;0;L;<super> 5730;;;;N;KAERITEN TI;;;;
 11.2378 +319F;IDEOGRAPHIC ANNOTATION MAN MARK;So;0;L;<super> 4EBA;;;;N;KAERITEN ZIN;;;;
 11.2379  31A0;BOPOMOFO LETTER BU;Lo;0;L;;;;;N;;;;;
 11.2380  31A1;BOPOMOFO LETTER ZI;Lo;0;L;;;;;N;;;;;
 11.2381  31A2;BOPOMOFO LETTER JI;Lo;0;L;;;;;N;;;;;
 11.2382 @@ -10419,6 +11005,9 @@
 11.2383  31B5;BOPOMOFO FINAL LETTER T;Lo;0;L;;;;;N;;;;;
 11.2384  31B6;BOPOMOFO FINAL LETTER K;Lo;0;L;;;;;N;;;;;
 11.2385  31B7;BOPOMOFO FINAL LETTER H;Lo;0;L;;;;;N;;;;;
 11.2386 +31B8;BOPOMOFO LETTER GH;Lo;0;L;;;;;N;;;;;
 11.2387 +31B9;BOPOMOFO LETTER LH;Lo;0;L;;;;;N;;;;;
 11.2388 +31BA;BOPOMOFO LETTER ZY;Lo;0;L;;;;;N;;;;;
 11.2389  31C0;CJK STROKE T;So;0;ON;;;;;N;;;;;
 11.2390  31C1;CJK STROKE WG;So;0;ON;;;;;N;;;;;
 11.2391  31C2;CJK STROKE XG;So;0;ON;;;;;N;;;;;
 11.2392 @@ -10538,6 +11127,18 @@
 11.2393  3241;PARENTHESIZED IDEOGRAPH REST;So;0;L;<compat> 0028 4F11 0029;;;;N;;;;;
 11.2394  3242;PARENTHESIZED IDEOGRAPH SELF;So;0;L;<compat> 0028 81EA 0029;;;;N;;;;;
 11.2395  3243;PARENTHESIZED IDEOGRAPH REACH;So;0;L;<compat> 0028 81F3 0029;;;;N;;;;;
 11.2396 +3244;CIRCLED IDEOGRAPH QUESTION;So;0;L;<circle> 554F;;;;N;;;;;
 11.2397 +3245;CIRCLED IDEOGRAPH KINDERGARTEN;So;0;L;<circle> 5E7C;;;;N;;;;;
 11.2398 +3246;CIRCLED IDEOGRAPH SCHOOL;So;0;L;<circle> 6587;;;;N;;;;;
 11.2399 +3247;CIRCLED IDEOGRAPH KOTO;So;0;L;<circle> 7B8F;;;;N;;;;;
 11.2400 +3248;CIRCLED NUMBER TEN ON BLACK SQUARE;So;0;L;;;;;N;;;;;
 11.2401 +3249;CIRCLED NUMBER TWENTY ON BLACK SQUARE;So;0;L;;;;;N;;;;;
 11.2402 +324A;CIRCLED NUMBER THIRTY ON BLACK SQUARE;So;0;L;;;;;N;;;;;
 11.2403 +324B;CIRCLED NUMBER FORTY ON BLACK SQUARE;So;0;L;;;;;N;;;;;
 11.2404 +324C;CIRCLED NUMBER FIFTY ON BLACK SQUARE;So;0;L;;;;;N;;;;;
 11.2405 +324D;CIRCLED NUMBER SIXTY ON BLACK SQUARE;So;0;L;;;;;N;;;;;
 11.2406 +324E;CIRCLED NUMBER SEVENTY ON BLACK SQUARE;So;0;L;;;;;N;;;;;
 11.2407 +324F;CIRCLED NUMBER EIGHTY ON BLACK SQUARE;So;0;L;;;;;N;;;;;
 11.2408  3250;PARTNERSHIP SIGN;So;0;ON;<square> 0050 0054 0045;;;;N;;;;;
 11.2409  3251;CIRCLED NUMBER TWENTY ONE;No;0;ON;<circle> 0032 0031;;;21;N;;;;;
 11.2410  3252;CIRCLED NUMBER TWENTY TWO;No;0;ON;<circle> 0032 0032;;;22;N;;;;;
 11.2411 @@ -11036,7 +11637,7 @@
 11.2412  4DFE;HEXAGRAM FOR AFTER COMPLETION;So;0;ON;;;;;N;;;;;
 11.2413  4DFF;HEXAGRAM FOR BEFORE COMPLETION;So;0;ON;;;;;N;;;;;
 11.2414  4E00;<CJK Ideograph, First>;Lo;0;L;;;;;N;;;;;
 11.2415 -9FC3;<CJK Ideograph, Last>;Lo;0;L;;;;;N;;;;;
 11.2416 +9FCB;<CJK Ideograph, Last>;Lo;0;L;;;;;N;;;;;
 11.2417  A000;YI SYLLABLE IT;Lo;0;L;;;;;N;;;;;
 11.2418  A001;YI SYLLABLE IX;Lo;0;L;;;;;N;;;;;
 11.2419  A002;YI SYLLABLE I;Lo;0;L;;;;;N;;;;;
 11.2420 @@ -12257,6 +12858,54 @@
 11.2421  A4C4;YI RADICAL ZZIET;So;0;ON;;;;;N;;;;;
 11.2422  A4C5;YI RADICAL NBIE;So;0;ON;;;;;N;;;;;
 11.2423  A4C6;YI RADICAL KE;So;0;ON;;;;;N;;;;;
 11.2424 +A4D0;LISU LETTER BA;Lo;0;L;;;;;N;;;;;
 11.2425 +A4D1;LISU LETTER PA;Lo;0;L;;;;;N;;;;;
 11.2426 +A4D2;LISU LETTER PHA;Lo;0;L;;;;;N;;;;;
 11.2427 +A4D3;LISU LETTER DA;Lo;0;L;;;;;N;;;;;
 11.2428 +A4D4;LISU LETTER TA;Lo;0;L;;;;;N;;;;;
 11.2429 +A4D5;LISU LETTER THA;Lo;0;L;;;;;N;;;;;
 11.2430 +A4D6;LISU LETTER GA;Lo;0;L;;;;;N;;;;;
 11.2431 +A4D7;LISU LETTER KA;Lo;0;L;;;;;N;;;;;
 11.2432 +A4D8;LISU LETTER KHA;Lo;0;L;;;;;N;;;;;
 11.2433 +A4D9;LISU LETTER JA;Lo;0;L;;;;;N;;;;;
 11.2434 +A4DA;LISU LETTER CA;Lo;0;L;;;;;N;;;;;
 11.2435 +A4DB;LISU LETTER CHA;Lo;0;L;;;;;N;;;;;
 11.2436 +A4DC;LISU LETTER DZA;Lo;0;L;;;;;N;;;;;
 11.2437 +A4DD;LISU LETTER TSA;Lo;0;L;;;;;N;;;;;
 11.2438 +A4DE;LISU LETTER TSHA;Lo;0;L;;;;;N;;;;;
 11.2439 +A4DF;LISU LETTER MA;Lo;0;L;;;;;N;;;;;
 11.2440 +A4E0;LISU LETTER NA;Lo;0;L;;;;;N;;;;;
 11.2441 +A4E1;LISU LETTER LA;Lo;0;L;;;;;N;;;;;
 11.2442 +A4E2;LISU LETTER SA;Lo;0;L;;;;;N;;;;;
 11.2443 +A4E3;LISU LETTER ZHA;Lo;0;L;;;;;N;;;;;
 11.2444 +A4E4;LISU LETTER ZA;Lo;0;L;;;;;N;;;;;
 11.2445 +A4E5;LISU LETTER NGA;Lo;0;L;;;;;N;;;;;
 11.2446 +A4E6;LISU LETTER HA;Lo;0;L;;;;;N;;;;;
 11.2447 +A4E7;LISU LETTER XA;Lo;0;L;;;;;N;;;;;
 11.2448 +A4E8;LISU LETTER HHA;Lo;0;L;;;;;N;;;;;
 11.2449 +A4E9;LISU LETTER FA;Lo;0;L;;;;;N;;;;;
 11.2450 +A4EA;LISU LETTER WA;Lo;0;L;;;;;N;;;;;
 11.2451 +A4EB;LISU LETTER SHA;Lo;0;L;;;;;N;;;;;
 11.2452 +A4EC;LISU LETTER YA;Lo;0;L;;;;;N;;;;;
 11.2453 +A4ED;LISU LETTER GHA;Lo;0;L;;;;;N;;;;;
 11.2454 +A4EE;LISU LETTER A;Lo;0;L;;;;;N;;;;;
 11.2455 +A4EF;LISU LETTER AE;Lo;0;L;;;;;N;;;;;
 11.2456 +A4F0;LISU LETTER E;Lo;0;L;;;;;N;;;;;
 11.2457 +A4F1;LISU LETTER EU;Lo;0;L;;;;;N;;;;;
 11.2458 +A4F2;LISU LETTER I;Lo;0;L;;;;;N;;;;;
 11.2459 +A4F3;LISU LETTER O;Lo;0;L;;;;;N;;;;;
 11.2460 +A4F4;LISU LETTER U;Lo;0;L;;;;;N;;;;;
 11.2461 +A4F5;LISU LETTER UE;Lo;0;L;;;;;N;;;;;
 11.2462 +A4F6;LISU LETTER UH;Lo;0;L;;;;;N;;;;;
 11.2463 +A4F7;LISU LETTER OE;Lo;0;L;;;;;N;;;;;
 11.2464 +A4F8;LISU LETTER TONE MYA TI;Lm;0;L;;;;;N;;;;;
 11.2465 +A4F9;LISU LETTER TONE NA PO;Lm;0;L;;;;;N;;;;;
 11.2466 +A4FA;LISU LETTER TONE MYA CYA;Lm;0;L;;;;;N;;;;;
 11.2467 +A4FB;LISU LETTER TONE MYA BO;Lm;0;L;;;;;N;;;;;
 11.2468 +A4FC;LISU LETTER TONE MYA NA;Lm;0;L;;;;;N;;;;;
 11.2469 +A4FD;LISU LETTER TONE MYA JEU;Lm;0;L;;;;;N;;;;;
 11.2470 +A4FE;LISU PUNCTUATION COMMA;Po;0;L;;;;;N;;;;;
 11.2471 +A4FF;LISU PUNCTUATION FULL STOP;Po;0;L;;;;;N;;;;;
 11.2472  A500;VAI SYLLABLE EE;Lo;0;L;;;;;N;;;;;
 11.2473  A501;VAI SYLLABLE EEN;Lo;0;L;;;;;N;;;;;
 11.2474  A502;VAI SYLLABLE HEE;Lo;0;L;;;;;N;;;;;
 11.2475 @@ -12589,6 +13238,8 @@
 11.2476  A65D;CYRILLIC SMALL LETTER IOTIFIED CLOSED LITTLE YUS;Ll;0;L;;;;;N;;;A65C;;A65C
 11.2477  A65E;CYRILLIC CAPITAL LETTER YN;Lu;0;L;;;;;N;;;;A65F;
 11.2478  A65F;CYRILLIC SMALL LETTER YN;Ll;0;L;;;;;N;;;A65E;;A65E
 11.2479 +A660;CYRILLIC CAPITAL LETTER REVERSED TSE;Lu;0;L;;;;;N;;;;A661;
 11.2480 +A661;CYRILLIC SMALL LETTER REVERSED TSE;Ll;0;L;;;;;N;;;A660;;A660
 11.2481  A662;CYRILLIC CAPITAL LETTER SOFT DE;Lu;0;L;;;;;N;;;;A663;
 11.2482  A663;CYRILLIC SMALL LETTER SOFT DE;Ll;0;L;;;;;N;;;A662;;A662
 11.2483  A664;CYRILLIC CAPITAL LETTER SOFT EL;Lu;0;L;;;;;N;;;;A665;
 11.2484 @@ -12635,6 +13286,94 @@
 11.2485  A695;CYRILLIC SMALL LETTER HWE;Ll;0;L;;;;;N;;;A694;;A694
 11.2486  A696;CYRILLIC CAPITAL LETTER SHWE;Lu;0;L;;;;;N;;;;A697;
 11.2487  A697;CYRILLIC SMALL LETTER SHWE;Ll;0;L;;;;;N;;;A696;;A696
 11.2488 +A6A0;BAMUM LETTER A;Lo;0;L;;;;;N;;;;;
 11.2489 +A6A1;BAMUM LETTER KA;Lo;0;L;;;;;N;;;;;
 11.2490 +A6A2;BAMUM LETTER U;Lo;0;L;;;;;N;;;;;
 11.2491 +A6A3;BAMUM LETTER KU;Lo;0;L;;;;;N;;;;;
 11.2492 +A6A4;BAMUM LETTER EE;Lo;0;L;;;;;N;;;;;
 11.2493 +A6A5;BAMUM LETTER REE;Lo;0;L;;;;;N;;;;;
 11.2494 +A6A6;BAMUM LETTER TAE;Lo;0;L;;;;;N;;;;;
 11.2495 +A6A7;BAMUM LETTER O;Lo;0;L;;;;;N;;;;;
 11.2496 +A6A8;BAMUM LETTER NYI;Lo;0;L;;;;;N;;;;;
 11.2497 +A6A9;BAMUM LETTER I;Lo;0;L;;;;;N;;;;;
 11.2498 +A6AA;BAMUM LETTER LA;Lo;0;L;;;;;N;;;;;
 11.2499 +A6AB;BAMUM LETTER PA;Lo;0;L;;;;;N;;;;;
 11.2500 +A6AC;BAMUM LETTER RII;Lo;0;L;;;;;N;;;;;
 11.2501 +A6AD;BAMUM LETTER RIEE;Lo;0;L;;;;;N;;;;;
 11.2502 +A6AE;BAMUM LETTER LEEEE;Lo;0;L;;;;;N;;;;;
 11.2503 +A6AF;BAMUM LETTER MEEEE;Lo;0;L;;;;;N;;;;;
 11.2504 +A6B0;BAMUM LETTER TAA;Lo;0;L;;;;;N;;;;;
 11.2505 +A6B1;BAMUM LETTER NDAA;Lo;0;L;;;;;N;;;;;
 11.2506 +A6B2;BAMUM LETTER NJAEM;Lo;0;L;;;;;N;;;;;
 11.2507 +A6B3;BAMUM LETTER M;Lo;0;L;;;;;N;;;;;
 11.2508 +A6B4;BAMUM LETTER SUU;Lo;0;L;;;;;N;;;;;
 11.2509 +A6B5;BAMUM LETTER MU;Lo;0;L;;;;;N;;;;;
 11.2510 +A6B6;BAMUM LETTER SHII;Lo;0;L;;;;;N;;;;;
 11.2511 +A6B7;BAMUM LETTER SI;Lo;0;L;;;;;N;;;;;
 11.2512 +A6B8;BAMUM LETTER SHEUX;Lo;0;L;;;;;N;;;;;
 11.2513 +A6B9;BAMUM LETTER SEUX;Lo;0;L;;;;;N;;;;;
 11.2514 +A6BA;BAMUM LETTER KYEE;Lo;0;L;;;;;N;;;;;
 11.2515 +A6BB;BAMUM LETTER KET;Lo;0;L;;;;;N;;;;;
 11.2516 +A6BC;BAMUM LETTER NUAE;Lo;0;L;;;;;N;;;;;
 11.2517 +A6BD;BAMUM LETTER NU;Lo;0;L;;;;;N;;;;;
 11.2518 +A6BE;BAMUM LETTER NJUAE;Lo;0;L;;;;;N;;;;;
 11.2519 +A6BF;BAMUM LETTER YOQ;Lo;0;L;;;;;N;;;;;
 11.2520 +A6C0;BAMUM LETTER SHU;Lo;0;L;;;;;N;;;;;
 11.2521 +A6C1;BAMUM LETTER YUQ;Lo;0;L;;;;;N;;;;;
 11.2522 +A6C2;BAMUM LETTER YA;Lo;0;L;;;;;N;;;;;
 11.2523 +A6C3;BAMUM LETTER NSHA;Lo;0;L;;;;;N;;;;;
 11.2524 +A6C4;BAMUM LETTER KEUX;Lo;0;L;;;;;N;;;;;
 11.2525 +A6C5;BAMUM LETTER PEUX;Lo;0;L;;;;;N;;;;;
 11.2526 +A6C6;BAMUM LETTER NJEE;Lo;0;L;;;;;N;;;;;
 11.2527 +A6C7;BAMUM LETTER NTEE;Lo;0;L;;;;;N;;;;;
 11.2528 +A6C8;BAMUM LETTER PUE;Lo;0;L;;;;;N;;;;;
 11.2529 +A6C9;BAMUM LETTER WUE;Lo;0;L;;;;;N;;;;;
 11.2530 +A6CA;BAMUM LETTER PEE;Lo;0;L;;;;;N;;;;;
 11.2531 +A6CB;BAMUM LETTER FEE;Lo;0;L;;;;;N;;;;;
 11.2532 +A6CC;BAMUM LETTER RU;Lo;0;L;;;;;N;;;;;
 11.2533 +A6CD;BAMUM LETTER LU;Lo;0;L;;;;;N;;;;;
 11.2534 +A6CE;BAMUM LETTER MI;Lo;0;L;;;;;N;;;;;
 11.2535 +A6CF;BAMUM LETTER NI;Lo;0;L;;;;;N;;;;;
 11.2536 +A6D0;BAMUM LETTER REUX;Lo;0;L;;;;;N;;;;;
 11.2537 +A6D1;BAMUM LETTER RAE;Lo;0;L;;;;;N;;;;;
 11.2538 +A6D2;BAMUM LETTER KEN;Lo;0;L;;;;;N;;;;;
 11.2539 +A6D3;BAMUM LETTER NGKWAEN;Lo;0;L;;;;;N;;;;;
 11.2540 +A6D4;BAMUM LETTER NGGA;Lo;0;L;;;;;N;;;;;
 11.2541 +A6D5;BAMUM LETTER NGA;Lo;0;L;;;;;N;;;;;
 11.2542 +A6D6;BAMUM LETTER SHO;Lo;0;L;;;;;N;;;;;
 11.2543 +A6D7;BAMUM LETTER PUAE;Lo;0;L;;;;;N;;;;;
 11.2544 +A6D8;BAMUM LETTER FU;Lo;0;L;;;;;N;;;;;
 11.2545 +A6D9;BAMUM LETTER FOM;Lo;0;L;;;;;N;;;;;
 11.2546 +A6DA;BAMUM LETTER WA;Lo;0;L;;;;;N;;;;;
 11.2547 +A6DB;BAMUM LETTER NA;Lo;0;L;;;;;N;;;;;
 11.2548 +A6DC;BAMUM LETTER LI;Lo;0;L;;;;;N;;;;;
 11.2549 +A6DD;BAMUM LETTER PI;Lo;0;L;;;;;N;;;;;
 11.2550 +A6DE;BAMUM LETTER LOQ;Lo;0;L;;;;;N;;;;;
 11.2551 +A6DF;BAMUM LETTER KO;Lo;0;L;;;;;N;;;;;
 11.2552 +A6E0;BAMUM LETTER MBEN;Lo;0;L;;;;;N;;;;;
 11.2553 +A6E1;BAMUM LETTER REN;Lo;0;L;;;;;N;;;;;
 11.2554 +A6E2;BAMUM LETTER MEN;Lo;0;L;;;;;N;;;;;
 11.2555 +A6E3;BAMUM LETTER MA;Lo;0;L;;;;;N;;;;;
 11.2556 +A6E4;BAMUM LETTER TI;Lo;0;L;;;;;N;;;;;
 11.2557 +A6E5;BAMUM LETTER KI;Lo;0;L;;;;;N;;;;;
 11.2558 +A6E6;BAMUM LETTER MO;Nl;0;L;;;;1;N;;;;;
 11.2559 +A6E7;BAMUM LETTER MBAA;Nl;0;L;;;;2;N;;;;;
 11.2560 +A6E8;BAMUM LETTER TET;Nl;0;L;;;;3;N;;;;;
 11.2561 +A6E9;BAMUM LETTER KPA;Nl;0;L;;;;4;N;;;;;
 11.2562 +A6EA;BAMUM LETTER TEN;Nl;0;L;;;;5;N;;;;;
 11.2563 +A6EB;BAMUM LETTER NTUU;Nl;0;L;;;;6;N;;;;;
 11.2564 +A6EC;BAMUM LETTER SAMBA;Nl;0;L;;;;7;N;;;;;
 11.2565 +A6ED;BAMUM LETTER FAAMAE;Nl;0;L;;;;8;N;;;;;
 11.2566 +A6EE;BAMUM LETTER KOVUU;Nl;0;L;;;;9;N;;;;;
 11.2567 +A6EF;BAMUM LETTER KOGHOM;Nl;0;L;;;;0;N;;;;;
 11.2568 +A6F0;BAMUM COMBINING MARK KOQNDON;Mn;230;NSM;;;;;N;;;;;
 11.2569 +A6F1;BAMUM COMBINING MARK TUKWENTIS;Mn;230;NSM;;;;;N;;;;;
 11.2570 +A6F2;BAMUM NJAEMLI;Po;0;L;;;;;N;;;;;
 11.2571 +A6F3;BAMUM FULL STOP;Po;0;L;;;;;N;;;;;
 11.2572 +A6F4;BAMUM COLON;Po;0;L;;;;;N;;;;;
 11.2573 +A6F5;BAMUM COMMA;Po;0;L;;;;;N;;;;;
 11.2574 +A6F6;BAMUM SEMICOLON;Po;0;L;;;;;N;;;;;
 11.2575 +A6F7;BAMUM QUESTION MARK;Po;0;L;;;;;N;;;;;
 11.2576  A700;MODIFIER LETTER CHINESE TONE YIN PING;Sk;0;ON;;;;;N;;;;;
 11.2577  A701;MODIFIER LETTER CHINESE TONE YANG PING;Sk;0;ON;;;;;N;;;;;
 11.2578  A702;MODIFIER LETTER CHINESE TONE YIN SHANG;Sk;0;ON;;;;;N;;;;;
 11.2579 @@ -12776,6 +13515,21 @@
 11.2580  A78A;MODIFIER LETTER SHORT EQUALS SIGN;Sk;0;L;;;;;N;;;;;
 11.2581  A78B;LATIN CAPITAL LETTER SALTILLO;Lu;0;L;;;;;N;;;;A78C;
 11.2582  A78C;LATIN SMALL LETTER SALTILLO;Ll;0;L;;;;;N;;;A78B;;A78B
 11.2583 +A78D;LATIN CAPITAL LETTER TURNED H;Lu;0;L;;;;;N;;;;0265;
 11.2584 +A78E;LATIN SMALL LETTER L WITH RETROFLEX HOOK AND BELT;Ll;0;L;;;;;N;;;;;
 11.2585 +A790;LATIN CAPITAL LETTER N WITH DESCENDER;Lu;0;L;;;;;N;;;;A791;
 11.2586 +A791;LATIN SMALL LETTER N WITH DESCENDER;Ll;0;L;;;;;N;;;A790;;A790
 11.2587 +A7A0;LATIN CAPITAL LETTER G WITH OBLIQUE STROKE;Lu;0;L;;;;;N;;;;A7A1;
 11.2588 +A7A1;LATIN SMALL LETTER G WITH OBLIQUE STROKE;Ll;0;L;;;;;N;;;A7A0;;A7A0
 11.2589 +A7A2;LATIN CAPITAL LETTER K WITH OBLIQUE STROKE;Lu;0;L;;;;;N;;;;A7A3;
 11.2590 +A7A3;LATIN SMALL LETTER K WITH OBLIQUE STROKE;Ll;0;L;;;;;N;;;A7A2;;A7A2
 11.2591 +A7A4;LATIN CAPITAL LETTER N WITH OBLIQUE STROKE;Lu;0;L;;;;;N;;;;A7A5;
 11.2592 +A7A5;LATIN SMALL LETTER N WITH OBLIQUE STROKE;Ll;0;L;;;;;N;;;A7A4;;A7A4
 11.2593 +A7A6;LATIN CAPITAL LETTER R WITH OBLIQUE STROKE;Lu;0;L;;;;;N;;;;A7A7;
 11.2594 +A7A7;LATIN SMALL LETTER R WITH OBLIQUE STROKE;Ll;0;L;;;;;N;;;A7A6;;A7A6
 11.2595 +A7A8;LATIN CAPITAL LETTER S WITH OBLIQUE STROKE;Lu;0;L;;;;;N;;;;A7A9;
 11.2596 +A7A9;LATIN SMALL LETTER S WITH OBLIQUE STROKE;Ll;0;L;;;;;N;;;A7A8;;A7A8
 11.2597 +A7FA;LATIN LETTER SMALL CAPITAL TURNED M;Ll;0;L;;;;;N;;;;;
 11.2598  A7FB;LATIN EPIGRAPHIC LETTER REVERSED F;Lo;0;L;;;;;N;;;;;
 11.2599  A7FC;LATIN EPIGRAPHIC LETTER REVERSED P;Lo;0;L;;;;;N;;;;;
 11.2600  A7FD;LATIN EPIGRAPHIC LETTER INVERTED M;Lo;0;L;;;;;N;;;;;
 11.2601 @@ -12825,6 +13579,16 @@
 11.2602  A829;SYLOTI NAGRI POETRY MARK-2;So;0;ON;;;;;N;;;;;
 11.2603  A82A;SYLOTI NAGRI POETRY MARK-3;So;0;ON;;;;;N;;;;;
 11.2604  A82B;SYLOTI NAGRI POETRY MARK-4;So;0;ON;;;;;N;;;;;
 11.2605 +A830;NORTH INDIC FRACTION ONE QUARTER;No;0;L;;;;1/4;N;;;;;
 11.2606 +A831;NORTH INDIC FRACTION ONE HALF;No;0;L;;;;1/2;N;;;;;
 11.2607 +A832;NORTH INDIC FRACTION THREE QUARTERS;No;0;L;;;;3/4;N;;;;;
 11.2608 +A833;NORTH INDIC FRACTION ONE SIXTEENTH;No;0;L;;;;1/16;N;;;;;
 11.2609 +A834;NORTH INDIC FRACTION ONE EIGHTH;No;0;L;;;;1/8;N;;;;;
 11.2610 +A835;NORTH INDIC FRACTION THREE SIXTEENTHS;No;0;L;;;;3/16;N;;;;;
 11.2611 +A836;NORTH INDIC QUARTER MARK;So;0;L;;;;;N;;;;;
 11.2612 +A837;NORTH INDIC PLACEHOLDER MARK;So;0;L;;;;;N;;;;;
 11.2613 +A838;NORTH INDIC RUPEE MARK;Sc;0;ET;;;;;N;;;;;
 11.2614 +A839;NORTH INDIC QUANTITY MARK;So;0;ET;;;;;N;;;;;
 11.2615  A840;PHAGS-PA LETTER KA;Lo;0;L;;;;;N;;;;;
 11.2616  A841;PHAGS-PA LETTER KHA;Lo;0;L;;;;;N;;;;;
 11.2617  A842;PHAGS-PA LETTER GA;Lo;0;L;;;;;N;;;;;
 11.2618 @@ -12962,6 +13726,34 @@
 11.2619  A8D7;SAURASHTRA DIGIT SEVEN;Nd;0;L;;7;7;7;N;;;;;
 11.2620  A8D8;SAURASHTRA DIGIT EIGHT;Nd;0;L;;8;8;8;N;;;;;
 11.2621  A8D9;SAURASHTRA DIGIT NINE;Nd;0;L;;9;9;9;N;;;;;
 11.2622 +A8E0;COMBINING DEVANAGARI DIGIT ZERO;Mn;230;NSM;;;;;N;;;;;
 11.2623 +A8E1;COMBINING DEVANAGARI DIGIT ONE;Mn;230;NSM;;;;;N;;;;;
 11.2624 +A8E2;COMBINING DEVANAGARI DIGIT TWO;Mn;230;NSM;;;;;N;;;;;
 11.2625 +A8E3;COMBINING DEVANAGARI DIGIT THREE;Mn;230;NSM;;;;;N;;;;;
 11.2626 +A8E4;COMBINING DEVANAGARI DIGIT FOUR;Mn;230;NSM;;;;;N;;;;;
 11.2627 +A8E5;COMBINING DEVANAGARI DIGIT FIVE;Mn;230;NSM;;;;;N;;;;;
 11.2628 +A8E6;COMBINING DEVANAGARI DIGIT SIX;Mn;230;NSM;;;;;N;;;;;
 11.2629 +A8E7;COMBINING DEVANAGARI DIGIT SEVEN;Mn;230;NSM;;;;;N;;;;;
 11.2630 +A8E8;COMBINING DEVANAGARI DIGIT EIGHT;Mn;230;NSM;;;;;N;;;;;
 11.2631 +A8E9;COMBINING DEVANAGARI DIGIT NINE;Mn;230;NSM;;;;;N;;;;;
 11.2632 +A8EA;COMBINING DEVANAGARI LETTER A;Mn;230;NSM;;;;;N;;;;;
 11.2633 +A8EB;COMBINING DEVANAGARI LETTER U;Mn;230;NSM;;;;;N;;;;;
 11.2634 +A8EC;COMBINING DEVANAGARI LETTER KA;Mn;230;NSM;;;;;N;;;;;
 11.2635 +A8ED;COMBINING DEVANAGARI LETTER NA;Mn;230;NSM;;;;;N;;;;;
 11.2636 +A8EE;COMBINING DEVANAGARI LETTER PA;Mn;230;NSM;;;;;N;;;;;
 11.2637 +A8EF;COMBINING DEVANAGARI LETTER RA;Mn;230;NSM;;;;;N;;;;;
 11.2638 +A8F0;COMBINING DEVANAGARI LETTER VI;Mn;230;NSM;;;;;N;;;;;
 11.2639 +A8F1;COMBINING DEVANAGARI SIGN AVAGRAHA;Mn;230;NSM;;;;;N;;;;;
 11.2640 +A8F2;DEVANAGARI SIGN SPACING CANDRABINDU;Lo;0;L;;;;;N;;;;;
 11.2641 +A8F3;DEVANAGARI SIGN CANDRABINDU VIRAMA;Lo;0;L;;;;;N;;;;;
 11.2642 +A8F4;DEVANAGARI SIGN DOUBLE CANDRABINDU VIRAMA;Lo;0;L;;;;;N;;;;;
 11.2643 +A8F5;DEVANAGARI SIGN CANDRABINDU TWO;Lo;0;L;;;;;N;;;;;
 11.2644 +A8F6;DEVANAGARI SIGN CANDRABINDU THREE;Lo;0;L;;;;;N;;;;;
 11.2645 +A8F7;DEVANAGARI SIGN CANDRABINDU AVAGRAHA;Lo;0;L;;;;;N;;;;;
 11.2646 +A8F8;DEVANAGARI SIGN PUSHPIKA;Po;0;L;;;;;N;;;;;
 11.2647 +A8F9;DEVANAGARI GAP FILLER;Po;0;L;;;;;N;;;;;
 11.2648 +A8FA;DEVANAGARI CARET;Po;0;L;;;;;N;;;;;
 11.2649 +A8FB;DEVANAGARI HEADSTROKE;Lo;0;L;;;;;N;;;;;
 11.2650  A900;KAYAH LI DIGIT ZERO;Nd;0;L;;0;0;0;N;;;;;
 11.2651  A901;KAYAH LI DIGIT ONE;Nd;0;L;;1;1;1;N;;;;;
 11.2652  A902;KAYAH LI DIGIT TWO;Nd;0;L;;2;2;2;N;;;;;
 11.2653 @@ -13047,6 +13839,126 @@
 11.2654  A952;REJANG CONSONANT SIGN H;Mc;0;L;;;;;N;;;;;
 11.2655  A953;REJANG VIRAMA;Mc;9;L;;;;;N;;;;;
 11.2656  A95F;REJANG SECTION MARK;Po;0;L;;;;;N;;;;;
 11.2657 +A960;HANGUL CHOSEONG TIKEUT-MIEUM;Lo;0;L;;;;;N;;;;;
 11.2658 +A961;HANGUL CHOSEONG TIKEUT-PIEUP;Lo;0;L;;;;;N;;;;;
 11.2659 +A962;HANGUL CHOSEONG TIKEUT-SIOS;Lo;0;L;;;;;N;;;;;
 11.2660 +A963;HANGUL CHOSEONG TIKEUT-CIEUC;Lo;0;L;;;;;N;;;;;
 11.2661 +A964;HANGUL CHOSEONG RIEUL-KIYEOK;Lo;0;L;;;;;N;;;;;
 11.2662 +A965;HANGUL CHOSEONG RIEUL-SSANGKIYEOK;Lo;0;L;;;;;N;;;;;
 11.2663 +A966;HANGUL CHOSEONG RIEUL-TIKEUT;Lo;0;L;;;;;N;;;;;
 11.2664 +A967;HANGUL CHOSEONG RIEUL-SSANGTIKEUT;Lo;0;L;;;;;N;;;;;
 11.2665 +A968;HANGUL CHOSEONG RIEUL-MIEUM;Lo;0;L;;;;;N;;;;;
 11.2666 +A969;HANGUL CHOSEONG RIEUL-PIEUP;Lo;0;L;;;;;N;;;;;
 11.2667 +A96A;HANGUL CHOSEONG RIEUL-SSANGPIEUP;Lo;0;L;;;;;N;;;;;
 11.2668 +A96B;HANGUL CHOSEONG RIEUL-KAPYEOUNPIEUP;Lo;0;L;;;;;N;;;;;
 11.2669 +A96C;HANGUL CHOSEONG RIEUL-SIOS;Lo;0;L;;;;;N;;;;;
 11.2670 +A96D;HANGUL CHOSEONG RIEUL-CIEUC;Lo;0;L;;;;;N;;;;;
 11.2671 +A96E;HANGUL CHOSEONG RIEUL-KHIEUKH;Lo;0;L;;;;;N;;;;;
 11.2672 +A96F;HANGUL CHOSEONG MIEUM-KIYEOK;Lo;0;L;;;;;N;;;;;
 11.2673 +A970;HANGUL CHOSEONG MIEUM-TIKEUT;Lo;0;L;;;;;N;;;;;
 11.2674 +A971;HANGUL CHOSEONG MIEUM-SIOS;Lo;0;L;;;;;N;;;;;
 11.2675 +A972;HANGUL CHOSEONG PIEUP-SIOS-THIEUTH;Lo;0;L;;;;;N;;;;;
 11.2676 +A973;HANGUL CHOSEONG PIEUP-KHIEUKH;Lo;0;L;;;;;N;;;;;
 11.2677 +A974;HANGUL CHOSEONG PIEUP-HIEUH;Lo;0;L;;;;;N;;;;;
 11.2678 +A975;HANGUL CHOSEONG SSANGSIOS-PIEUP;Lo;0;L;;;;;N;;;;;
 11.2679 +A976;HANGUL CHOSEONG IEUNG-RIEUL;Lo;0;L;;;;;N;;;;;
 11.2680 +A977;HANGUL CHOSEONG IEUNG-HIEUH;Lo;0;L;;;;;N;;;;;
 11.2681 +A978;HANGUL CHOSEONG SSANGCIEUC-HIEUH;Lo;0;L;;;;;N;;;;;
 11.2682 +A979;HANGUL CHOSEONG SSANGTHIEUTH;Lo;0;L;;;;;N;;;;;
 11.2683 +A97A;HANGUL CHOSEONG PHIEUPH-HIEUH;Lo;0;L;;;;;N;;;;;
 11.2684 +A97B;HANGUL CHOSEONG HIEUH-SIOS;Lo;0;L;;;;;N;;;;;
 11.2685 +A97C;HANGUL CHOSEONG SSANGYEORINHIEUH;Lo;0;L;;;;;N;;;;;
 11.2686 +A980;JAVANESE SIGN PANYANGGA;Mn;0;NSM;;;;;N;;;;;
 11.2687 +A981;JAVANESE SIGN CECAK;Mn;0;NSM;;;;;N;;;;;
 11.2688 +A982;JAVANESE SIGN LAYAR;Mn;0;NSM;;;;;N;;;;;
 11.2689 +A983;JAVANESE SIGN WIGNYAN;Mc;0;L;;;;;N;;;;;
 11.2690 +A984;JAVANESE LETTER A;Lo;0;L;;;;;N;;;;;
 11.2691 +A985;JAVANESE LETTER I KAWI;Lo;0;L;;;;;N;;;;;
 11.2692 +A986;JAVANESE LETTER I;Lo;0;L;;;;;N;;;;;
 11.2693 +A987;JAVANESE LETTER II;Lo;0;L;;;;;N;;;;;
 11.2694 +A988;JAVANESE LETTER U;Lo;0;L;;;;;N;;;;;
 11.2695 +A989;JAVANESE LETTER PA CEREK;Lo;0;L;;;;;N;;;;;
 11.2696 +A98A;JAVANESE LETTER NGA LELET;Lo;0;L;;;;;N;;;;;
 11.2697 +A98B;JAVANESE LETTER NGA LELET RASWADI;Lo;0;L;;;;;N;;;;;
 11.2698 +A98C;JAVANESE LETTER E;Lo;0;L;;;;;N;;;;;
 11.2699 +A98D;JAVANESE LETTER AI;Lo;0;L;;;;;N;;;;;
 11.2700 +A98E;JAVANESE LETTER O;Lo;0;L;;;;;N;;;;;
 11.2701 +A98F;JAVANESE LETTER KA;Lo;0;L;;;;;N;;;;;
 11.2702 +A990;JAVANESE LETTER KA SASAK;Lo;0;L;;;;;N;;;;;
 11.2703 +A991;JAVANESE LETTER KA MURDA;Lo;0;L;;;;;N;;;;;
 11.2704 +A992;JAVANESE LETTER GA;Lo;0;L;;;;;N;;;;;
 11.2705 +A993;JAVANESE LETTER GA MURDA;Lo;0;L;;;;;N;;;;;
 11.2706 +A994;JAVANESE LETTER NGA;Lo;0;L;;;;;N;;;;;
 11.2707 +A995;JAVANESE LETTER CA;Lo;0;L;;;;;N;;;;;
 11.2708 +A996;JAVANESE LETTER CA MURDA;Lo;0;L;;;;;N;;;;;
 11.2709 +A997;JAVANESE LETTER JA;Lo;0;L;;;;;N;;;;;
 11.2710 +A998;JAVANESE LETTER NYA MURDA;Lo;0;L;;;;;N;;;;;
 11.2711 +A999;JAVANESE LETTER JA MAHAPRANA;Lo;0;L;;;;;N;;;;;
 11.2712 +A99A;JAVANESE LETTER NYA;Lo;0;L;;;;;N;;;;;
 11.2713 +A99B;JAVANESE LETTER TTA;Lo;0;L;;;;;N;;;;;
 11.2714 +A99C;JAVANESE LETTER TTA MAHAPRANA;Lo;0;L;;;;;N;;;;;
 11.2715 +A99D;JAVANESE LETTER DDA;Lo;0;L;;;;;N;;;;;
 11.2716 +A99E;JAVANESE LETTER DDA MAHAPRANA;Lo;0;L;;;;;N;;;;;
 11.2717 +A99F;JAVANESE LETTER NA MURDA;Lo;0;L;;;;;N;;;;;
 11.2718 +A9A0;JAVANESE LETTER TA;Lo;0;L;;;;;N;;;;;
 11.2719 +A9A1;JAVANESE LETTER TA MURDA;Lo;0;L;;;;;N;;;;;
 11.2720 +A9A2;JAVANESE LETTER DA;Lo;0;L;;;;;N;;;;;
 11.2721 +A9A3;JAVANESE LETTER DA MAHAPRANA;Lo;0;L;;;;;N;;;;;
 11.2722 +A9A4;JAVANESE LETTER NA;Lo;0;L;;;;;N;;;;;
 11.2723 +A9A5;JAVANESE LETTER PA;Lo;0;L;;;;;N;;;;;
 11.2724 +A9A6;JAVANESE LETTER PA MURDA;Lo;0;L;;;;;N;;;;;
 11.2725 +A9A7;JAVANESE LETTER BA;Lo;0;L;;;;;N;;;;;
 11.2726 +A9A8;JAVANESE LETTER BA MURDA;Lo;0;L;;;;;N;;;;;
 11.2727 +A9A9;JAVANESE LETTER MA;Lo;0;L;;;;;N;;;;;
 11.2728 +A9AA;JAVANESE LETTER YA;Lo;0;L;;;;;N;;;;;
 11.2729 +A9AB;JAVANESE LETTER RA;Lo;0;L;;;;;N;;;;;
 11.2730 +A9AC;JAVANESE LETTER RA AGUNG;Lo;0;L;;;;;N;;;;;
 11.2731 +A9AD;JAVANESE LETTER LA;Lo;0;L;;;;;N;;;;;
 11.2732 +A9AE;JAVANESE LETTER WA;Lo;0;L;;;;;N;;;;;
 11.2733 +A9AF;JAVANESE LETTER SA MURDA;Lo;0;L;;;;;N;;;;;
 11.2734 +A9B0;JAVANESE LETTER SA MAHAPRANA;Lo;0;L;;;;;N;;;;;
 11.2735 +A9B1;JAVANESE LETTER SA;Lo;0;L;;;;;N;;;;;
 11.2736 +A9B2;JAVANESE LETTER HA;Lo;0;L;;;;;N;;;;;
 11.2737 +A9B3;JAVANESE SIGN CECAK TELU;Mn;7;NSM;;;;;N;;;;;
 11.2738 +A9B4;JAVANESE VOWEL SIGN TARUNG;Mc;0;L;;;;;N;;;;;
 11.2739 +A9B5;JAVANESE VOWEL SIGN TOLONG;Mc;0;L;;;;;N;;;;;
 11.2740 +A9B6;JAVANESE VOWEL SIGN WULU;Mn;0;NSM;;;;;N;;;;;
 11.2741 +A9B7;JAVANESE VOWEL SIGN WULU MELIK;Mn;0;NSM;;;;;N;;;;;
 11.2742 +A9B8;JAVANESE VOWEL SIGN SUKU;Mn;0;NSM;;;;;N;;;;;
 11.2743 +A9B9;JAVANESE VOWEL SIGN SUKU MENDUT;Mn;0;NSM;;;;;N;;;;;
 11.2744 +A9BA;JAVANESE VOWEL SIGN TALING;Mc;0;L;;;;;N;;;;;
 11.2745 +A9BB;JAVANESE VOWEL SIGN DIRGA MURE;Mc;0;L;;;;;N;;;;;
 11.2746 +A9BC;JAVANESE VOWEL SIGN PEPET;Mn;0;NSM;;;;;N;;;;;
 11.2747 +A9BD;JAVANESE CONSONANT SIGN KERET;Mc;0;L;;;;;N;;;;;
 11.2748 +A9BE;JAVANESE CONSONANT SIGN PENGKAL;Mc;0;L;;;;;N;;;;;
 11.2749 +A9BF;JAVANESE CONSONANT SIGN CAKRA;Mc;0;L;;;;;N;;;;;
 11.2750 +A9C0;JAVANESE PANGKON;Mc;9;L;;;;;N;;;;;
 11.2751 +A9C1;JAVANESE LEFT RERENGGAN;Po;0;L;;;;;N;;;;;
 11.2752 +A9C2;JAVANESE RIGHT RERENGGAN;Po;0;L;;;;;N;;;;;
 11.2753 +A9C3;JAVANESE PADA ANDAP;Po;0;L;;;;;N;;;;;
 11.2754 +A9C4;JAVANESE PADA MADYA;Po;0;L;;;;;N;;;;;
 11.2755 +A9C5;JAVANESE PADA LUHUR;Po;0;L;;;;;N;;;;;
 11.2756 +A9C6;JAVANESE PADA WINDU;Po;0;L;;;;;N;;;;;
 11.2757 +A9C7;JAVANESE PADA PANGKAT;Po;0;L;;;;;N;;;;;
 11.2758 +A9C8;JAVANESE PADA LINGSA;Po;0;L;;;;;N;;;;;
 11.2759 +A9C9;JAVANESE PADA LUNGSI;Po;0;L;;;;;N;;;;;
 11.2760 +A9CA;JAVANESE PADA ADEG;Po;0;L;;;;;N;;;;;
 11.2761 +A9CB;JAVANESE PADA ADEG ADEG;Po;0;L;;;;;N;;;;;
 11.2762 +A9CC;JAVANESE PADA PISELEH;Po;0;L;;;;;N;;;;;
 11.2763 +A9CD;JAVANESE TURNED PADA PISELEH;Po;0;L;;;;;N;;;;;
 11.2764 +A9CF;JAVANESE PANGRANGKEP;Lm;0;L;;;;;N;;;;;
 11.2765 +A9D0;JAVANESE DIGIT ZERO;Nd;0;L;;0;0;0;N;;;;;
 11.2766 +A9D1;JAVANESE DIGIT ONE;Nd;0;L;;1;1;1;N;;;;;
 11.2767 +A9D2;JAVANESE DIGIT TWO;Nd;0;L;;2;2;2;N;;;;;
 11.2768 +A9D3;JAVANESE DIGIT THREE;Nd;0;L;;3;3;3;N;;;;;
 11.2769 +A9D4;JAVANESE DIGIT FOUR;Nd;0;L;;4;4;4;N;;;;;
 11.2770 +A9D5;JAVANESE DIGIT FIVE;Nd;0;L;;5;5;5;N;;;;;
 11.2771 +A9D6;JAVANESE DIGIT SIX;Nd;0;L;;6;6;6;N;;;;;
 11.2772 +A9D7;JAVANESE DIGIT SEVEN;Nd;0;L;;7;7;7;N;;;;;
 11.2773 +A9D8;JAVANESE DIGIT EIGHT;Nd;0;L;;8;8;8;N;;;;;
 11.2774 +A9D9;JAVANESE DIGIT NINE;Nd;0;L;;9;9;9;N;;;;;
 11.2775 +A9DE;JAVANESE PADA TIRTA TUMETES;Po;0;L;;;;;N;;;;;
 11.2776 +A9DF;JAVANESE PADA ISEN-ISEN;Po;0;L;;;;;N;;;;;
 11.2777  AA00;CHAM LETTER A;Lo;0;L;;;;;N;;;;;
 11.2778  AA01;CHAM LETTER I;Lo;0;L;;;;;N;;;;;
 11.2779  AA02;CHAM LETTER U;Lo;0;L;;;;;N;;;;;
 11.2780 @@ -13130,8 +14042,268 @@
 11.2781  AA5D;CHAM PUNCTUATION DANDA;Po;0;L;;;;;N;;;;;
 11.2782  AA5E;CHAM PUNCTUATION DOUBLE DANDA;Po;0;L;;;;;N;;;;;
 11.2783  AA5F;CHAM PUNCTUATION TRIPLE DANDA;Po;0;L;;;;;N;;;;;
 11.2784 +AA60;MYANMAR LETTER KHAMTI GA;Lo;0;L;;;;;N;;;;;
 11.2785 +AA61;MYANMAR LETTER KHAMTI CA;Lo;0;L;;;;;N;;;;;
 11.2786 +AA62;MYANMAR LETTER KHAMTI CHA;Lo;0;L;;;;;N;;;;;
 11.2787 +AA63;MYANMAR LETTER KHAMTI JA;Lo;0;L;;;;;N;;;;;
 11.2788 +AA64;MYANMAR LETTER KHAMTI JHA;Lo;0;L;;;;;N;;;;;
 11.2789 +AA65;MYANMAR LETTER KHAMTI NYA;Lo;0;L;;;;;N;;;;;
 11.2790 +AA66;MYANMAR LETTER KHAMTI TTA;Lo;0;L;;;;;N;;;;;
 11.2791 +AA67;MYANMAR LETTER KHAMTI TTHA;Lo;0;L;;;;;N;;;;;
 11.2792 +AA68;MYANMAR LETTER KHAMTI DDA;Lo;0;L;;;;;N;;;;;
 11.2793 +AA69;MYANMAR LETTER KHAMTI DDHA;Lo;0;L;;;;;N;;;;;
 11.2794 +AA6A;MYANMAR LETTER KHAMTI DHA;Lo;0;L;;;;;N;;;;;
 11.2795 +AA6B;MYANMAR LETTER KHAMTI NA;Lo;0;L;;;;;N;;;;;
 11.2796 +AA6C;MYANMAR LETTER KHAMTI SA;Lo;0;L;;;;;N;;;;;
 11.2797 +AA6D;MYANMAR LETTER KHAMTI HA;Lo;0;L;;;;;N;;;;;
 11.2798 +AA6E;MYANMAR LETTER KHAMTI HHA;Lo;0;L;;;;;N;;;;;
 11.2799 +AA6F;MYANMAR LETTER KHAMTI FA;Lo;0;L;;;;;N;;;;;
 11.2800 +AA70;MYANMAR MODIFIER LETTER KHAMTI REDUPLICATION;Lm;0;L;;;;;N;;;;;
 11.2801 +AA71;MYANMAR LETTER KHAMTI XA;Lo;0;L;;;;;N;;;;;
 11.2802 +AA72;MYANMAR LETTER KHAMTI ZA;Lo;0;L;;;;;N;;;;;
 11.2803 +AA73;MYANMAR LETTER KHAMTI RA;Lo;0;L;;;;;N;;;;;
 11.2804 +AA74;MYANMAR LOGOGRAM KHAMTI OAY;Lo;0;L;;;;;N;;;;;
 11.2805 +AA75;MYANMAR LOGOGRAM KHAMTI QN;Lo;0;L;;;;;N;;;;;
 11.2806 +AA76;MYANMAR LOGOGRAM KHAMTI HM;Lo;0;L;;;;;N;;;;;
 11.2807 +AA77;MYANMAR SYMBOL AITON EXCLAMATION;So;0;L;;;;;N;;;;;
 11.2808 +AA78;MYANMAR SYMBOL AITON ONE;So;0;L;;;;;N;;;;;
 11.2809 +AA79;MYANMAR SYMBOL AITON TWO;So;0;L;;;;;N;;;;;
 11.2810 +AA7A;MYANMAR LETTER AITON RA;Lo;0;L;;;;;N;;;;;
 11.2811 +AA7B;MYANMAR SIGN PAO KAREN TONE;Mc;0;L;;;;;N;;;;;
 11.2812 +AA80;TAI VIET LETTER LOW KO;Lo;0;L;;;;;N;;;;;
 11.2813 +AA81;TAI VIET LETTER HIGH KO;Lo;0;L;;;;;N;;;;;
 11.2814 +AA82;TAI VIET LETTER LOW KHO;Lo;0;L;;;;;N;;;;;
 11.2815 +AA83;TAI VIET LETTER HIGH KHO;Lo;0;L;;;;;N;;;;;
 11.2816 +AA84;TAI VIET LETTER LOW KHHO;Lo;0;L;;;;;N;;;;;
 11.2817 +AA85;TAI VIET LETTER HIGH KHHO;Lo;0;L;;;;;N;;;;;
 11.2818 +AA86;TAI VIET LETTER LOW GO;Lo;0;L;;;;;N;;;;;
 11.2819 +AA87;TAI VIET LETTER HIGH GO;Lo;0;L;;;;;N;;;;;
 11.2820 +AA88;TAI VIET LETTER LOW NGO;Lo;0;L;;;;;N;;;;;
 11.2821 +AA89;TAI VIET LETTER HIGH NGO;Lo;0;L;;;;;N;;;;;
 11.2822 +AA8A;TAI VIET LETTER LOW CO;Lo;0;L;;;;;N;;;;;
 11.2823 +AA8B;TAI VIET LETTER HIGH CO;Lo;0;L;;;;;N;;;;;
 11.2824 +AA8C;TAI VIET LETTER LOW CHO;Lo;0;L;;;;;N;;;;;
 11.2825 +AA8D;TAI VIET LETTER HIGH CHO;Lo;0;L;;;;;N;;;;;
 11.2826 +AA8E;TAI VIET LETTER LOW SO;Lo;0;L;;;;;N;;;;;
 11.2827 +AA8F;TAI VIET LETTER HIGH SO;Lo;0;L;;;;;N;;;;;
 11.2828 +AA90;TAI VIET LETTER LOW NYO;Lo;0;L;;;;;N;;;;;
 11.2829 +AA91;TAI VIET LETTER HIGH NYO;Lo;0;L;;;;;N;;;;;
 11.2830 +AA92;TAI VIET LETTER LOW DO;Lo;0;L;;;;;N;;;;;
 11.2831 +AA93;TAI VIET LETTER HIGH DO;Lo;0;L;;;;;N;;;;;
 11.2832 +AA94;TAI VIET LETTER LOW TO;Lo;0;L;;;;;N;;;;;
 11.2833 +AA95;TAI VIET LETTER HIGH TO;Lo;0;L;;;;;N;;;;;
 11.2834 +AA96;TAI VIET LETTER LOW THO;Lo;0;L;;;;;N;;;;;
 11.2835 +AA97;TAI VIET LETTER HIGH THO;Lo;0;L;;;;;N;;;;;
 11.2836 +AA98;TAI VIET LETTER LOW NO;Lo;0;L;;;;;N;;;;;
 11.2837 +AA99;TAI VIET LETTER HIGH NO;Lo;0;L;;;;;N;;;;;
 11.2838 +AA9A;TAI VIET LETTER LOW BO;Lo;0;L;;;;;N;;;;;
 11.2839 +AA9B;TAI VIET LETTER HIGH BO;Lo;0;L;;;;;N;;;;;
 11.2840 +AA9C;TAI VIET LETTER LOW PO;Lo;0;L;;;;;N;;;;;
 11.2841 +AA9D;TAI VIET LETTER HIGH PO;Lo;0;L;;;;;N;;;;;
 11.2842 +AA9E;TAI VIET LETTER LOW PHO;Lo;0;L;;;;;N;;;;;
 11.2843 +AA9F;TAI VIET LETTER HIGH PHO;Lo;0;L;;;;;N;;;;;
 11.2844 +AAA0;TAI VIET LETTER LOW FO;Lo;0;L;;;;;N;;;;;
 11.2845 +AAA1;TAI VIET LETTER HIGH FO;Lo;0;L;;;;;N;;;;;
 11.2846 +AAA2;TAI VIET LETTER LOW MO;Lo;0;L;;;;;N;;;;;
 11.2847 +AAA3;TAI VIET LETTER HIGH MO;Lo;0;L;;;;;N;;;;;
 11.2848 +AAA4;TAI VIET LETTER LOW YO;Lo;0;L;;;;;N;;;;;
 11.2849 +AAA5;TAI VIET LETTER HIGH YO;Lo;0;L;;;;;N;;;;;
 11.2850 +AAA6;TAI VIET LETTER LOW RO;Lo;0;L;;;;;N;;;;;
 11.2851 +AAA7;TAI VIET LETTER HIGH RO;Lo;0;L;;;;;N;;;;;
 11.2852 +AAA8;TAI VIET LETTER LOW LO;Lo;0;L;;;;;N;;;;;
 11.2853 +AAA9;TAI VIET LETTER HIGH LO;Lo;0;L;;;;;N;;;;;
 11.2854 +AAAA;TAI VIET LETTER LOW VO;Lo;0;L;;;;;N;;;;;
 11.2855 +AAAB;TAI VIET LETTER HIGH VO;Lo;0;L;;;;;N;;;;;
 11.2856 +AAAC;TAI VIET LETTER LOW HO;Lo;0;L;;;;;N;;;;;
 11.2857 +AAAD;TAI VIET LETTER HIGH HO;Lo;0;L;;;;;N;;;;;
 11.2858 +AAAE;TAI VIET LETTER LOW O;Lo;0;L;;;;;N;;;;;
 11.2859 +AAAF;TAI VIET LETTER HIGH O;Lo;0;L;;;;;N;;;;;
 11.2860 +AAB0;TAI VIET MAI KANG;Mn;230;NSM;;;;;N;;;;;
 11.2861 +AAB1;TAI VIET VOWEL AA;Lo;0;L;;;;;N;;;;;
 11.2862 +AAB2;TAI VIET VOWEL I;Mn;230;NSM;;;;;N;;;;;
 11.2863 +AAB3;TAI VIET VOWEL UE;Mn;230;NSM;;;;;N;;;;;
 11.2864 +AAB4;TAI VIET VOWEL U;Mn;220;NSM;;;;;N;;;;;
 11.2865 +AAB5;TAI VIET VOWEL E;Lo;0;L;;;;;N;;;;;
 11.2866 +AAB6;TAI VIET VOWEL O;Lo;0;L;;;;;N;;;;;
 11.2867 +AAB7;TAI VIET MAI KHIT;Mn;230;NSM;;;;;N;;;;;
 11.2868 +AAB8;TAI VIET VOWEL IA;Mn;230;NSM;;;;;N;;;;;
 11.2869 +AAB9;TAI VIET VOWEL UEA;Lo;0;L;;;;;N;;;;;
 11.2870 +AABA;TAI VIET VOWEL UA;Lo;0;L;;;;;N;;;;;
 11.2871 +AABB;TAI VIET VOWEL AUE;Lo;0;L;;;;;N;;;;;
 11.2872 +AABC;TAI VIET VOWEL AY;Lo;0;L;;;;;N;;;;;
 11.2873 +AABD;TAI VIET VOWEL AN;Lo;0;L;;;;;N;;;;;
 11.2874 +AABE;TAI VIET VOWEL AM;Mn;230;NSM;;;;;N;;;;;
 11.2875 +AABF;TAI VIET TONE MAI EK;Mn;230;NSM;;;;;N;;;;;
 11.2876 +AAC0;TAI VIET TONE MAI NUENG;Lo;0;L;;;;;N;;;;;
 11.2877 +AAC1;TAI VIET TONE MAI THO;Mn;230;NSM;;;;;N;;;;;
 11.2878 +AAC2;TAI VIET TONE MAI SONG;Lo;0;L;;;;;N;;;;;
 11.2879 +AADB;TAI VIET SYMBOL KON;Lo;0;L;;;;;N;;;;;
 11.2880 +AADC;TAI VIET SYMBOL NUENG;Lo;0;L;;;;;N;;;;;
 11.2881 +AADD;TAI VIET SYMBOL SAM;Lm;0;L;;;;;N;;;;;
 11.2882 +AADE;TAI VIET SYMBOL HO HOI;Po;0;L;;;;;N;;;;;
 11.2883 +AADF;TAI VIET SYMBOL KOI KOI;Po;0;L;;;;;N;;;;;
 11.2884 +AB01;ETHIOPIC SYLLABLE TTHU;Lo;0;L;;;;;N;;;;;
 11.2885 +AB02;ETHIOPIC SYLLABLE TTHI;Lo;0;L;;;;;N;;;;;
 11.2886 +AB03;ETHIOPIC SYLLABLE TTHAA;Lo;0;L;;;;;N;;;;;
 11.2887 +AB04;ETHIOPIC SYLLABLE TTHEE;Lo;0;L;;;;;N;;;;;
 11.2888 +AB05;ETHIOPIC SYLLABLE TTHE;Lo;0;L;;;;;N;;;;;
 11.2889 +AB06;ETHIOPIC SYLLABLE TTHO;Lo;0;L;;;;;N;;;;;
 11.2890 +AB09;ETHIOPIC SYLLABLE DDHU;Lo;0;L;;;;;N;;;;;
 11.2891 +AB0A;ETHIOPIC SYLLABLE DDHI;Lo;0;L;;;;;N;;;;;
 11.2892 +AB0B;ETHIOPIC SYLLABLE DDHAA;Lo;0;L;;;;;N;;;;;
 11.2893 +AB0C;ETHIOPIC SYLLABLE DDHEE;Lo;0;L;;;;;N;;;;;
 11.2894 +AB0D;ETHIOPIC SYLLABLE DDHE;Lo;0;L;;;;;N;;;;;
 11.2895 +AB0E;ETHIOPIC SYLLABLE DDHO;Lo;0;L;;;;;N;;;;;
 11.2896 +AB11;ETHIOPIC SYLLABLE DZU;Lo;0;L;;;;;N;;;;;
 11.2897 +AB12;ETHIOPIC SYLLABLE DZI;Lo;0;L;;;;;N;;;;;
 11.2898 +AB13;ETHIOPIC SYLLABLE DZAA;Lo;0;L;;;;;N;;;;;
 11.2899 +AB14;ETHIOPIC SYLLABLE DZEE;Lo;0;L;;;;;N;;;;;
 11.2900 +AB15;ETHIOPIC SYLLABLE DZE;Lo;0;L;;;;;N;;;;;
 11.2901 +AB16;ETHIOPIC SYLLABLE DZO;Lo;0;L;;;;;N;;;;;
 11.2902 +AB20;ETHIOPIC SYLLABLE CCHHA;Lo;0;L;;;;;N;;;;;
 11.2903 +AB21;ETHIOPIC SYLLABLE CCHHU;Lo;0;L;;;;;N;;;;;
 11.2904 +AB22;ETHIOPIC SYLLABLE CCHHI;Lo;0;L;;;;;N;;;;;
 11.2905 +AB23;ETHIOPIC SYLLABLE CCHHAA;Lo;0;L;;;;;N;;;;;
 11.2906 +AB24;ETHIOPIC SYLLABLE CCHHEE;Lo;0;L;;;;;N;;;;;
 11.2907 +AB25;ETHIOPIC SYLLABLE CCHHE;Lo;0;L;;;;;N;;;;;
 11.2908 +AB26;ETHIOPIC SYLLABLE CCHHO;Lo;0;L;;;;;N;;;;;
 11.2909 +AB28;ETHIOPIC SYLLABLE BBA;Lo;0;L;;;;;N;;;;;
 11.2910 +AB29;ETHIOPIC SYLLABLE BBU;Lo;0;L;;;;;N;;;;;
 11.2911 +AB2A;ETHIOPIC SYLLABLE BBI;Lo;0;L;;;;;N;;;;;
 11.2912 +AB2B;ETHIOPIC SYLLABLE BBAA;Lo;0;L;;;;;N;;;;;
 11.2913 +AB2C;ETHIOPIC SYLLABLE BBEE;Lo;0;L;;;;;N;;;;;
 11.2914 +AB2D;ETHIOPIC SYLLABLE BBE;Lo;0;L;;;;;N;;;;;
 11.2915 +AB2E;ETHIOPIC SYLLABLE BBO;Lo;0;L;;;;;N;;;;;
 11.2916 +ABC0;MEETEI MAYEK LETTER KOK;Lo;0;L;;;;;N;;;;;
 11.2917 +ABC1;MEETEI MAYEK LETTER SAM;Lo;0;L;;;;;N;;;;;
 11.2918 +ABC2;MEETEI MAYEK LETTER LAI;Lo;0;L;;;;;N;;;;;
 11.2919 +ABC3;MEETEI MAYEK LETTER MIT;Lo;0;L;;;;;N;;;;;
 11.2920 +ABC4;MEETEI MAYEK LETTER PA;Lo;0;L;;;;;N;;;;;
 11.2921 +ABC5;MEETEI MAYEK LETTER NA;Lo;0;L;;;;;N;;;;;
 11.2922 +ABC6;MEETEI MAYEK LETTER CHIL;Lo;0;L;;;;;N;;;;;
 11.2923 +ABC7;MEETEI MAYEK LETTER TIL;Lo;0;L;;;;;N;;;;;
 11.2924 +ABC8;MEETEI MAYEK LETTER KHOU;Lo;0;L;;;;;N;;;;;
 11.2925 +ABC9;MEETEI MAYEK LETTER NGOU;Lo;0;L;;;;;N;;;;;
 11.2926 +ABCA;MEETEI MAYEK LETTER THOU;Lo;0;L;;;;;N;;;;;
 11.2927 +ABCB;MEETEI MAYEK LETTER WAI;Lo;0;L;;;;;N;;;;;
 11.2928 +ABCC;MEETEI MAYEK LETTER YANG;Lo;0;L;;;;;N;;;;;
 11.2929 +ABCD;MEETEI MAYEK LETTER HUK;Lo;0;L;;;;;N;;;;;
 11.2930 +ABCE;MEETEI MAYEK LETTER UN;Lo;0;L;;;;;N;;;;;
 11.2931 +ABCF;MEETEI MAYEK LETTER I;Lo;0;L;;;;;N;;;;;
 11.2932 +ABD0;MEETEI MAYEK LETTER PHAM;Lo;0;L;;;;;N;;;;;
 11.2933 +ABD1;MEETEI MAYEK LETTER ATIYA;Lo;0;L;;;;;N;;;;;
 11.2934 +ABD2;MEETEI MAYEK LETTER GOK;Lo;0;L;;;;;N;;;;;
 11.2935 +ABD3;MEETEI MAYEK LETTER JHAM;Lo;0;L;;;;;N;;;;;
 11.2936 +ABD4;MEETEI MAYEK LETTER RAI;Lo;0;L;;;;;N;;;;;
 11.2937 +ABD5;MEETEI MAYEK LETTER BA;Lo;0;L;;;;;N;;;;;
 11.2938 +ABD6;MEETEI MAYEK LETTER JIL;Lo;0;L;;;;;N;;;;;
 11.2939 +ABD7;MEETEI MAYEK LETTER DIL;Lo;0;L;;;;;N;;;;;
 11.2940 +ABD8;MEETEI MAYEK LETTER GHOU;Lo;0;L;;;;;N;;;;;
 11.2941 +ABD9;MEETEI MAYEK LETTER DHOU;Lo;0;L;;;;;N;;;;;
 11.2942 +ABDA;MEETEI MAYEK LETTER BHAM;Lo;0;L;;;;;N;;;;;
 11.2943 +ABDB;MEETEI MAYEK LETTER KOK LONSUM;Lo;0;L;;;;;N;;;;;
 11.2944 +ABDC;MEETEI MAYEK LETTER LAI LONSUM;Lo;0;L;;;;;N;;;;;
 11.2945 +ABDD;MEETEI MAYEK LETTER MIT LONSUM;Lo;0;L;;;;;N;;;;;
 11.2946 +ABDE;MEETEI MAYEK LETTER PA LONSUM;Lo;0;L;;;;;N;;;;;
 11.2947 +ABDF;MEETEI MAYEK LETTER NA LONSUM;Lo;0;L;;;;;N;;;;;
 11.2948 +ABE0;MEETEI MAYEK LETTER TIL LONSUM;Lo;0;L;;;;;N;;;;;
 11.2949 +ABE1;MEETEI MAYEK LETTER NGOU LONSUM;Lo;0;L;;;;;N;;;;;
 11.2950 +ABE2;MEETEI MAYEK LETTER I LONSUM;Lo;0;L;;;;;N;;;;;
 11.2951 +ABE3;MEETEI MAYEK VOWEL SIGN ONAP;Mc;0;L;;;;;N;;;;;
 11.2952 +ABE4;MEETEI MAYEK VOWEL SIGN INAP;Mc;0;L;;;;;N;;;;;
 11.2953 +ABE5;MEETEI MAYEK VOWEL SIGN ANAP;Mn;0;NSM;;;;;N;;;;;
 11.2954 +ABE6;MEETEI MAYEK VOWEL SIGN YENAP;Mc;0;L;;;;;N;;;;;
 11.2955 +ABE7;MEETEI MAYEK VOWEL SIGN SOUNAP;Mc;0;L;;;;;N;;;;;
 11.2956 +ABE8;MEETEI MAYEK VOWEL SIGN UNAP;Mn;0;NSM;;;;;N;;;;;
 11.2957 +ABE9;MEETEI MAYEK VOWEL SIGN CHEINAP;Mc;0;L;;;;;N;;;;;
 11.2958 +ABEA;MEETEI MAYEK VOWEL SIGN NUNG;Mc;0;L;;;;;N;;;;;
 11.2959 +ABEB;MEETEI MAYEK CHEIKHEI;Po;0;L;;;;;N;;;;;
 11.2960 +ABEC;MEETEI MAYEK LUM IYEK;Mc;0;L;;;;;N;;;;;
 11.2961 +ABED;MEETEI MAYEK APUN IYEK;Mn;9;NSM;;;;;N;;;;;
 11.2962 +ABF0;MEETEI MAYEK DIGIT ZERO;Nd;0;L;;0;0;0;N;;;;;
 11.2963 +ABF1;MEETEI MAYEK DIGIT ONE;Nd;0;L;;1;1;1;N;;;;;
 11.2964 +ABF2;MEETEI MAYEK DIGIT TWO;Nd;0;L;;2;2;2;N;;;;;
 11.2965 +ABF3;MEETEI MAYEK DIGIT THREE;Nd;0;L;;3;3;3;N;;;;;
 11.2966 +ABF4;MEETEI MAYEK DIGIT FOUR;Nd;0;L;;4;4;4;N;;;;;
 11.2967 +ABF5;MEETEI MAYEK DIGIT FIVE;Nd;0;L;;5;5;5;N;;;;;
 11.2968 +ABF6;MEETEI MAYEK DIGIT SIX;Nd;0;L;;6;6;6;N;;;;;
 11.2969 +ABF7;MEETEI MAYEK DIGIT SEVEN;Nd;0;L;;7;7;7;N;;;;;
 11.2970 +ABF8;MEETEI MAYEK DIGIT EIGHT;Nd;0;L;;8;8;8;N;;;;;
 11.2971 +ABF9;MEETEI MAYEK DIGIT NINE;Nd;0;L;;9;9;9;N;;;;;
 11.2972  AC00;<Hangul Syllable, First>;Lo;0;L;;;;;N;;;;;
 11.2973  D7A3;<Hangul Syllable, Last>;Lo;0;L;;;;;N;;;;;
 11.2974 +D7B0;HANGUL JUNGSEONG O-YEO;Lo;0;L;;;;;N;;;;;
 11.2975 +D7B1;HANGUL JUNGSEONG O-O-I;Lo;0;L;;;;;N;;;;;
 11.2976 +D7B2;HANGUL JUNGSEONG YO-A;Lo;0;L;;;;;N;;;;;
 11.2977 +D7B3;HANGUL JUNGSEONG YO-AE;Lo;0;L;;;;;N;;;;;
 11.2978 +D7B4;HANGUL JUNGSEONG YO-EO;Lo;0;L;;;;;N;;;;;
 11.2979 +D7B5;HANGUL JUNGSEONG U-YEO;Lo;0;L;;;;;N;;;;;
 11.2980 +D7B6;HANGUL JUNGSEONG U-I-I;Lo;0;L;;;;;N;;;;;
 11.2981 +D7B7;HANGUL JUNGSEONG YU-AE;Lo;0;L;;;;;N;;;;;
 11.2982 +D7B8;HANGUL JUNGSEONG YU-O;Lo;0;L;;;;;N;;;;;
 11.2983 +D7B9;HANGUL JUNGSEONG EU-A;Lo;0;L;;;;;N;;;;;
 11.2984 +D7BA;HANGUL JUNGSEONG EU-EO;Lo;0;L;;;;;N;;;;;
 11.2985 +D7BB;HANGUL JUNGSEONG EU-E;Lo;0;L;;;;;N;;;;;
 11.2986 +D7BC;HANGUL JUNGSEONG EU-O;Lo;0;L;;;;;N;;;;;
 11.2987 +D7BD;HANGUL JUNGSEONG I-YA-O;Lo;0;L;;;;;N;;;;;
 11.2988 +D7BE;HANGUL JUNGSEONG I-YAE;Lo;0;L;;;;;N;;;;;
 11.2989 +D7BF;HANGUL JUNGSEONG I-YEO;Lo;0;L;;;;;N;;;;;
 11.2990 +D7C0;HANGUL JUNGSEONG I-YE;Lo;0;L;;;;;N;;;;;
 11.2991 +D7C1;HANGUL JUNGSEONG I-O-I;Lo;0;L;;;;;N;;;;;
 11.2992 +D7C2;HANGUL JUNGSEONG I-YO;Lo;0;L;;;;;N;;;;;
 11.2993 +D7C3;HANGUL JUNGSEONG I-YU;Lo;0;L;;;;;N;;;;;
 11.2994 +D7C4;HANGUL JUNGSEONG I-I;Lo;0;L;;;;;N;;;;;
 11.2995 +D7C5;HANGUL JUNGSEONG ARAEA-A;Lo;0;L;;;;;N;;;;;
 11.2996 +D7C6;HANGUL JUNGSEONG ARAEA-E;Lo;0;L;;;;;N;;;;;
 11.2997 +D7CB;HANGUL JONGSEONG NIEUN-RIEUL;Lo;0;L;;;;;N;;;;;
 11.2998 +D7CC;HANGUL JONGSEONG NIEUN-CHIEUCH;Lo;0;L;;;;;N;;;;;
 11.2999 +D7CD;HANGUL JONGSEONG SSANGTIKEUT;Lo;0;L;;;;;N;;;;;
 11.3000 +D7CE;HANGUL JONGSEONG SSANGTIKEUT-PIEUP;Lo;0;L;;;;;N;;;;;
 11.3001 +D7CF;HANGUL JONGSEONG TIKEUT-PIEUP;Lo;0;L;;;;;N;;;;;
 11.3002 +D7D0;HANGUL JONGSEONG TIKEUT-SIOS;Lo;0;L;;;;;N;;;;;
 11.3003 +D7D1;HANGUL JONGSEONG TIKEUT-SIOS-KIYEOK;Lo;0;L;;;;;N;;;;;
 11.3004 +D7D2;HANGUL JONGSEONG TIKEUT-CIEUC;Lo;0;L;;;;;N;;;;;
 11.3005 +D7D3;HANGUL JONGSEONG TIKEUT-CHIEUCH;Lo;0;L;;;;;N;;;;;
 11.3006 +D7D4;HANGUL JONGSEONG TIKEUT-THIEUTH;Lo;0;L;;;;;N;;;;;
 11.3007 +D7D5;HANGUL JONGSEONG RIEUL-SSANGKIYEOK;Lo;0;L;;;;;N;;;;;
 11.3008 +D7D6;HANGUL JONGSEONG RIEUL-KIYEOK-HIEUH;Lo;0;L;;;;;N;;;;;
 11.3009 +D7D7;HANGUL JONGSEONG SSANGRIEUL-KHIEUKH;Lo;0;L;;;;;N;;;;;
 11.3010 +D7D8;HANGUL JONGSEONG RIEUL-MIEUM-HIEUH;Lo;0;L;;;;;N;;;;;
 11.3011 +D7D9;HANGUL JONGSEONG RIEUL-PIEUP-TIKEUT;Lo;0;L;;;;;N;;;;;
 11.3012 +D7DA;HANGUL JONGSEONG RIEUL-PIEUP-PHIEUPH;Lo;0;L;;;;;N;;;;;
 11.3013 +D7DB;HANGUL JONGSEONG RIEUL-YESIEUNG;Lo;0;L;;;;;N;;;;;
 11.3014 +D7DC;HANGUL JONGSEONG RIEUL-YEORINHIEUH-HIEUH;Lo;0;L;;;;;N;;;;;
 11.3015 +D7DD;HANGUL JONGSEONG KAPYEOUNRIEUL;Lo;0;L;;;;;N;;;;;
 11.3016 +D7DE;HANGUL JONGSEONG MIEUM-NIEUN;Lo;0;L;;;;;N;;;;;
 11.3017 +D7DF;HANGUL JONGSEONG MIEUM-SSANGNIEUN;Lo;0;L;;;;;N;;;;;
 11.3018 +D7E0;HANGUL JONGSEONG SSANGMIEUM;Lo;0;L;;;;;N;;;;;
 11.3019 +D7E1;HANGUL JONGSEONG MIEUM-PIEUP-SIOS;Lo;0;L;;;;;N;;;;;
 11.3020 +D7E2;HANGUL JONGSEONG MIEUM-CIEUC;Lo;0;L;;;;;N;;;;;
 11.3021 +D7E3;HANGUL JONGSEONG PIEUP-TIKEUT;Lo;0;L;;;;;N;;;;;
 11.3022 +D7E4;HANGUL JONGSEONG PIEUP-RIEUL-PHIEUPH;Lo;0;L;;;;;N;;;;;
 11.3023 +D7E5;HANGUL JONGSEONG PIEUP-MIEUM;Lo;0;L;;;;;N;;;;;
 11.3024 +D7E6;HANGUL JONGSEONG SSANGPIEUP;Lo;0;L;;;;;N;;;;;
 11.3025 +D7E7;HANGUL JONGSEONG PIEUP-SIOS-TIKEUT;Lo;0;L;;;;;N;;;;;
 11.3026 +D7E8;HANGUL JONGSEONG PIEUP-CIEUC;Lo;0;L;;;;;N;;;;;
 11.3027 +D7E9;HANGUL JONGSEONG PIEUP-CHIEUCH;Lo;0;L;;;;;N;;;;;
 11.3028 +D7EA;HANGUL JONGSEONG SIOS-MIEUM;Lo;0;L;;;;;N;;;;;
 11.3029 +D7EB;HANGUL JONGSEONG SIOS-KAPYEOUNPIEUP;Lo;0;L;;;;;N;;;;;
 11.3030 +D7EC;HANGUL JONGSEONG SSANGSIOS-KIYEOK;Lo;0;L;;;;;N;;;;;
 11.3031 +D7ED;HANGUL JONGSEONG SSANGSIOS-TIKEUT;Lo;0;L;;;;;N;;;;;
 11.3032 +D7EE;HANGUL JONGSEONG SIOS-PANSIOS;Lo;0;L;;;;;N;;;;;
 11.3033 +D7EF;HANGUL JONGSEONG SIOS-CIEUC;Lo;0;L;;;;;N;;;;;
 11.3034 +D7F0;HANGUL JONGSEONG SIOS-CHIEUCH;Lo;0;L;;;;;N;;;;;
 11.3035 +D7F1;HANGUL JONGSEONG SIOS-THIEUTH;Lo;0;L;;;;;N;;;;;
 11.3036 +D7F2;HANGUL JONGSEONG SIOS-HIEUH;Lo;0;L;;;;;N;;;;;
 11.3037 +D7F3;HANGUL JONGSEONG PANSIOS-PIEUP;Lo;0;L;;;;;N;;;;;
 11.3038 +D7F4;HANGUL JONGSEONG PANSIOS-KAPYEOUNPIEUP;Lo;0;L;;;;;N;;;;;
 11.3039 +D7F5;HANGUL JONGSEONG YESIEUNG-MIEUM;Lo;0;L;;;;;N;;;;;
 11.3040 +D7F6;HANGUL JONGSEONG YESIEUNG-HIEUH;Lo;0;L;;;;;N;;;;;
 11.3041 +D7F7;HANGUL JONGSEONG CIEUC-PIEUP;Lo;0;L;;;;;N;;;;;
 11.3042 +D7F8;HANGUL JONGSEONG CIEUC-SSANGPIEUP;Lo;0;L;;;;;N;;;;;
 11.3043 +D7F9;HANGUL JONGSEONG SSANGCIEUC;Lo;0;L;;;;;N;;;;;
 11.3044 +D7FA;HANGUL JONGSEONG PHIEUPH-SIOS;Lo;0;L;;;;;N;;;;;
 11.3045 +D7FB;HANGUL JONGSEONG PHIEUPH-THIEUTH;Lo;0;L;;;;;N;;;;;
 11.3046  D800;<Non Private Use High Surrogate, First>;Cs;0;L;;;;;N;;;;;
 11.3047  DB7F;<Non Private Use High Surrogate, Last>;Cs;0;L;;;;;N;;;;;
 11.3048  DB80;<Private Use High Surrogate, First>;Cs;0;L;;;;;N;;;;;
 11.3049 @@ -13427,11 +14599,11 @@
 11.3050  FA1C;CJK COMPATIBILITY IDEOGRAPH-FA1C;Lo;0;L;9756;;;;N;;;;;
 11.3051  FA1D;CJK COMPATIBILITY IDEOGRAPH-FA1D;Lo;0;L;7CBE;;;;N;;;;;
 11.3052  FA1E;CJK COMPATIBILITY IDEOGRAPH-FA1E;Lo;0;L;7FBD;;;;N;;;;;
 11.3053 -FA1F;CJK COMPATIBILITY IDEOGRAPH-FA1F;Lo;0;L;;;;;N;;*;;;
 11.3054 +FA1F;CJK COMPATIBILITY IDEOGRAPH-FA1F;Lo;0;L;;;;;N;;;;;
 11.3055  FA20;CJK COMPATIBILITY IDEOGRAPH-FA20;Lo;0;L;8612;;;;N;;;;;
 11.3056  FA21;CJK COMPATIBILITY IDEOGRAPH-FA21;Lo;0;L;;;;;N;;;;;
 11.3057  FA22;CJK COMPATIBILITY IDEOGRAPH-FA22;Lo;0;L;8AF8;;;;N;;;;;
 11.3058 -FA23;CJK COMPATIBILITY IDEOGRAPH-FA23;Lo;0;L;;;;;N;;*;;;
 11.3059 +FA23;CJK COMPATIBILITY IDEOGRAPH-FA23;Lo;0;L;;;;;N;;;;;
 11.3060  FA24;CJK COMPATIBILITY IDEOGRAPH-FA24;Lo;0;L;;;;;N;;;;;
 11.3061  FA25;CJK COMPATIBILITY IDEOGRAPH-FA25;Lo;0;L;9038;;;;N;;;;;
 11.3062  FA26;CJK COMPATIBILITY IDEOGRAPH-FA26;Lo;0;L;90FD;;;;N;;;;;
 11.3063 @@ -13501,6 +14673,9 @@
 11.3064  FA68;CJK COMPATIBILITY IDEOGRAPH-FA68;Lo;0;L;96E3;;;;N;;;;;
 11.3065  FA69;CJK COMPATIBILITY IDEOGRAPH-FA69;Lo;0;L;97FF;;;;N;;;;;
 11.3066  FA6A;CJK COMPATIBILITY IDEOGRAPH-FA6A;Lo;0;L;983B;;;;N;;;;;
 11.3067 +FA6B;CJK COMPATIBILITY IDEOGRAPH-FA6B;Lo;0;L;6075;;;;N;;;;;
 11.3068 +FA6C;CJK COMPATIBILITY IDEOGRAPH-FA6C;Lo;0;L;242EE;;;;N;;;;;
 11.3069 +FA6D;CJK COMPATIBILITY IDEOGRAPH-FA6D;Lo;0;L;8218;;;;N;;;;;
 11.3070  FA70;CJK COMPATIBILITY IDEOGRAPH-FA70;Lo;0;L;4E26;;;;N;;;;;
 11.3071  FA71;CJK COMPATIBILITY IDEOGRAPH-FA71;Lo;0;L;51B5;;;;N;;;;;
 11.3072  FA72;CJK COMPATIBILITY IDEOGRAPH-FA72;Lo;0;L;5168;;;;N;;;;;
 11.3073 @@ -13763,6 +14938,22 @@
 11.3074  FBAF;ARABIC LETTER YEH BARREE FINAL FORM;Lo;0;AL;<final> 06D2;;;;N;;;;;
 11.3075  FBB0;ARABIC LETTER YEH BARREE WITH HAMZA ABOVE ISOLATED FORM;Lo;0;AL;<isolated> 06D3;;;;N;;;;;
 11.3076  FBB1;ARABIC LETTER YEH BARREE WITH HAMZA ABOVE FINAL FORM;Lo;0;AL;<final> 06D3;;;;N;;;;;
 11.3077 +FBB2;ARABIC SYMBOL DOT ABOVE;Sk;0;AL;;;;;N;;;;;
 11.3078 +FBB3;ARABIC SYMBOL DOT BELOW;Sk;0;AL;;;;;N;;;;;
 11.3079 +FBB4;ARABIC SYMBOL TWO DOTS ABOVE;Sk;0;AL;;;;;N;;;;;
 11.3080 +FBB5;ARABIC SYMBOL TWO DOTS BELOW;Sk;0;AL;;;;;N;;;;;
 11.3081 +FBB6;ARABIC SYMBOL THREE DOTS ABOVE;Sk;0;AL;;;;;N;;;;;
 11.3082 +FBB7;ARABIC SYMBOL THREE DOTS BELOW;Sk;0;AL;;;;;N;;;;;
 11.3083 +FBB8;ARABIC SYMBOL THREE DOTS POINTING DOWNWARDS ABOVE;Sk;0;AL;;;;;N;;;;;
 11.3084 +FBB9;ARABIC SYMBOL THREE DOTS POINTING DOWNWARDS BELOW;Sk;0;AL;;;;;N;;;;;
 11.3085 +FBBA;ARABIC SYMBOL FOUR DOTS ABOVE;Sk;0;AL;;;;;N;;;;;
 11.3086 +FBBB;ARABIC SYMBOL FOUR DOTS BELOW;Sk;0;AL;;;;;N;;;;;
 11.3087 +FBBC;ARABIC SYMBOL DOUBLE VERTICAL BAR BELOW;Sk;0;AL;;;;;N;;;;;
 11.3088 +FBBD;ARABIC SYMBOL TWO DOTS VERTICALLY ABOVE;Sk;0;AL;;;;;N;;;;;
 11.3089 +FBBE;ARABIC SYMBOL TWO DOTS VERTICALLY BELOW;Sk;0;AL;;;;;N;;;;;
 11.3090 +FBBF;ARABIC SYMBOL RING;Sk;0;AL;;;;;N;;;;;
 11.3091 +FBC0;ARABIC SYMBOL SMALL TAH ABOVE;Sk;0;AL;;;;;N;;;;;
 11.3092 +FBC1;ARABIC SYMBOL SMALL TAH BELOW;Sk;0;AL;;;;;N;;;;;
 11.3093  FBD3;ARABIC LETTER NG ISOLATED FORM;Lo;0;AL;<isolated> 06AD;;;;N;;;;;
 11.3094  FBD4;ARABIC LETTER NG FINAL FORM;Lo;0;AL;<final> 06AD;;;;N;;;;;
 11.3095  FBD5;ARABIC LETTER NG INITIAL FORM;Lo;0;AL;<initial> 06AD;;;;N;;;;;
 11.3096 @@ -14586,8 +15777,8 @@
 11.3097  FF5C;FULLWIDTH VERTICAL LINE;Sm;0;ON;<wide> 007C;;;;N;FULLWIDTH VERTICAL BAR;;;;
 11.3098  FF5D;FULLWIDTH RIGHT CURLY BRACKET;Pe;0;ON;<wide> 007D;;;;Y;FULLWIDTH CLOSING CURLY BRACKET;;;;
 11.3099  FF5E;FULLWIDTH TILDE;Sm;0;ON;<wide> 007E;;;;N;FULLWIDTH SPACING TILDE;;;;
 11.3100 -FF5F;FULLWIDTH LEFT WHITE PARENTHESIS;Ps;0;ON;<wide> 2985;;;;Y;;*;;;
 11.3101 -FF60;FULLWIDTH RIGHT WHITE PARENTHESIS;Pe;0;ON;<wide> 2986;;;;Y;;*;;;
 11.3102 +FF5F;FULLWIDTH LEFT WHITE PARENTHESIS;Ps;0;ON;<wide> 2985;;;;Y;;;;;
 11.3103 +FF60;FULLWIDTH RIGHT WHITE PARENTHESIS;Pe;0;ON;<wide> 2986;;;;Y;;;;;
 11.3104  FF61;HALFWIDTH IDEOGRAPHIC FULL STOP;Po;0;ON;<narrow> 3002;;;;N;HALFWIDTH IDEOGRAPHIC PERIOD;;;;
 11.3105  FF62;HALFWIDTH LEFT CORNER BRACKET;Ps;0;ON;<narrow> 300C;;;;Y;HALFWIDTH OPENING CORNER BRACKET;;;;
 11.3106  FF63;HALFWIDTH RIGHT CORNER BRACKET;Pe;0;ON;<narrow> 300D;;;;Y;HALFWIDTH CLOSING CORNER BRACKET;;;;
 11.3107 @@ -14649,8 +15840,8 @@
 11.3108  FF9B;HALFWIDTH KATAKANA LETTER RO;Lo;0;L;<narrow> 30ED;;;;N;;;;;
 11.3109  FF9C;HALFWIDTH KATAKANA LETTER WA;Lo;0;L;<narrow> 30EF;;;;N;;;;;
 11.3110  FF9D;HALFWIDTH KATAKANA LETTER N;Lo;0;L;<narrow> 30F3;;;;N;;;;;
 11.3111 -FF9E;HALFWIDTH KATAKANA VOICED SOUND MARK;Lm;0;L;<narrow> 3099;;;;N;;halfwidth katakana-hiragana voiced sound mark;;;
 11.3112 -FF9F;HALFWIDTH KATAKANA SEMI-VOICED SOUND MARK;Lm;0;L;<narrow> 309A;;;;N;;halfwidth katakana-hiragana semi-voiced sound mark;;;
 11.3113 +FF9E;HALFWIDTH KATAKANA VOICED SOUND MARK;Lm;0;L;<narrow> 3099;;;;N;;;;;
 11.3114 +FF9F;HALFWIDTH KATAKANA SEMI-VOICED SOUND MARK;Lm;0;L;<narrow> 309A;;;;N;;;;;
 11.3115  FFA0;HALFWIDTH HANGUL FILLER;Lo;0;L;<narrow> 3164;;;;N;HALFWIDTH HANGUL CAE OM;;;;
 11.3116  FFA1;HALFWIDTH HANGUL LETTER KIYEOK;Lo;0;L;<narrow> 3131;;;;N;HALFWIDTH HANGUL LETTER GIYEOG;;;;
 11.3117  FFA2;HALFWIDTH HANGUL LETTER SSANGKIYEOK;Lo;0;L;<narrow> 3132;;;;N;HALFWIDTH HANGUL LETTER SSANG GIYEOG;;;;
 11.3118 @@ -14706,7 +15897,7 @@
 11.3119  FFE0;FULLWIDTH CENT SIGN;Sc;0;ET;<wide> 00A2;;;;N;;;;;
 11.3120  FFE1;FULLWIDTH POUND SIGN;Sc;0;ET;<wide> 00A3;;;;N;;;;;
 11.3121  FFE2;FULLWIDTH NOT SIGN;Sm;0;ON;<wide> 00AC;;;;N;;;;;
 11.3122 -FFE3;FULLWIDTH MACRON;Sk;0;ON;<wide> 00AF;;;;N;FULLWIDTH SPACING MACRON;*;;;
 11.3123 +FFE3;FULLWIDTH MACRON;Sk;0;ON;<wide> 00AF;;;;N;FULLWIDTH SPACING MACRON;;;;
 11.3124  FFE4;FULLWIDTH BROKEN BAR;So;0;ON;<wide> 00A6;;;;N;FULLWIDTH BROKEN VERTICAL BAR;;;;
 11.3125  FFE5;FULLWIDTH YEN SIGN;Sc;0;ET;<wide> 00A5;;;;N;;;;;
 11.3126  FFE6;FULLWIDTH WON SIGN;Sc;0;ET;<wide> 20A9;;;;N;;;;;
 11.3127 @@ -14883,9 +16074,9 @@
 11.3128  100C6;LINEAR B IDEOGRAM B230 SPEAR;Lo;0;L;;;;;N;;;;;
 11.3129  100C7;LINEAR B IDEOGRAM B231 ARROW;Lo;0;L;;;;;N;;;;;
 11.3130  100C8;LINEAR B IDEOGRAM B232;Lo;0;L;;;;;N;;;;;
 11.3131 -100C9;LINEAR B IDEOGRAM B233 SWORD;Lo;0;L;;;;;N;;pug;;;
 11.3132 +100C9;LINEAR B IDEOGRAM B233 SWORD;Lo;0;L;;;;;N;;;;;
 11.3133  100CA;LINEAR B IDEOGRAM B234;Lo;0;L;;;;;N;;;;;
 11.3134 -100CB;LINEAR B IDEOGRAM B236;Lo;0;L;;;;;N;;gup;;;
 11.3135 +100CB;LINEAR B IDEOGRAM B236;Lo;0;L;;;;;N;;;;;
 11.3136  100CC;LINEAR B IDEOGRAM B240 WHEELED CHARIOT;Lo;0;L;;;;;N;;;;;
 11.3137  100CD;LINEAR B IDEOGRAM B241 CHARIOT;Lo;0;L;;;;;N;;;;;
 11.3138  100CE;LINEAR B IDEOGRAM B242 CHARIOT FRAME;Lo;0;L;;;;;N;;;;;
 11.3139 @@ -15216,7 +16407,7 @@
 11.3140  1030C;OLD ITALIC LETTER EM;Lo;0;L;;;;;N;;;;;
 11.3141  1030D;OLD ITALIC LETTER EN;Lo;0;L;;;;;N;;;;;
 11.3142  1030E;OLD ITALIC LETTER ESH;Lo;0;L;;;;;N;;;;;
 11.3143 -1030F;OLD ITALIC LETTER O;Lo;0;L;;;;;N;;Faliscan;;;
 11.3144 +1030F;OLD ITALIC LETTER O;Lo;0;L;;;;;N;;;;;
 11.3145  10310;OLD ITALIC LETTER PE;Lo;0;L;;;;;N;;;;;
 11.3146  10311;OLD ITALIC LETTER SHE;Lo;0;L;;;;;N;;;;;
 11.3147  10312;OLD ITALIC LETTER KU;Lo;0;L;;;;;N;;;;;
 11.3148 @@ -15224,14 +16415,14 @@
 11.3149  10314;OLD ITALIC LETTER ES;Lo;0;L;;;;;N;;;;;
 11.3150  10315;OLD ITALIC LETTER TE;Lo;0;L;;;;;N;;;;;
 11.3151  10316;OLD ITALIC LETTER U;Lo;0;L;;;;;N;;;;;
 11.3152 -10317;OLD ITALIC LETTER EKS;Lo;0;L;;;;;N;;Faliscan;;;
 11.3153 +10317;OLD ITALIC LETTER EKS;Lo;0;L;;;;;N;;;;;
 11.3154  10318;OLD ITALIC LETTER PHE;Lo;0;L;;;;;N;;;;;
 11.3155  10319;OLD ITALIC LETTER KHE;Lo;0;L;;;;;N;;;;;
 11.3156  1031A;OLD ITALIC LETTER EF;Lo;0;L;;;;;N;;;;;
 11.3157 -1031B;OLD ITALIC LETTER ERS;Lo;0;L;;;;;N;;Umbrian;;;
 11.3158 -1031C;OLD ITALIC LETTER CHE;Lo;0;L;;;;;N;;Umbrian;;;
 11.3159 -1031D;OLD ITALIC LETTER II;Lo;0;L;;;;;N;;Oscan;;;
 11.3160 -1031E;OLD ITALIC LETTER UU;Lo;0;L;;;;;N;;Oscan;;;
 11.3161 +1031B;OLD ITALIC LETTER ERS;Lo;0;L;;;;;N;;;;;
 11.3162 +1031C;OLD ITALIC LETTER CHE;Lo;0;L;;;;;N;;;;;
 11.3163 +1031D;OLD ITALIC LETTER II;Lo;0;L;;;;;N;;;;;
 11.3164 +1031E;OLD ITALIC LETTER UU;Lo;0;L;;;;;N;;;;;
 11.3165  10320;OLD ITALIC NUMERAL ONE;No;0;L;;;;1;N;;;;;
 11.3166  10321;OLD ITALIC NUMERAL FIVE;No;0;L;;;;5;N;;;;;
 11.3167  10322;OLD ITALIC NUMERAL TEN;No;0;L;;;;10;N;;;;;
 11.3168 @@ -15567,6 +16758,37 @@
 11.3169  10838;CYPRIOT SYLLABLE XE;Lo;0;R;;;;;N;;;;;
 11.3170  1083C;CYPRIOT SYLLABLE ZA;Lo;0;R;;;;;N;;;;;
 11.3171  1083F;CYPRIOT SYLLABLE ZO;Lo;0;R;;;;;N;;;;;
 11.3172 +10840;IMPERIAL ARAMAIC LETTER ALEPH;Lo;0;R;;;;;N;;;;;
 11.3173 +10841;IMPERIAL ARAMAIC LETTER BETH;Lo;0;R;;;;;N;;;;;
 11.3174 +10842;IMPERIAL ARAMAIC LETTER GIMEL;Lo;0;R;;;;;N;;;;;
 11.3175 +10843;IMPERIAL ARAMAIC LETTER DALETH;Lo;0;R;;;;;N;;;;;
 11.3176 +10844;IMPERIAL ARAMAIC LETTER HE;Lo;0;R;;;;;N;;;;;
 11.3177 +10845;IMPERIAL ARAMAIC LETTER WAW;Lo;0;R;;;;;N;;;;;
 11.3178 +10846;IMPERIAL ARAMAIC LETTER ZAYIN;Lo;0;R;;;;;N;;;;;
 11.3179 +10847;IMPERIAL ARAMAIC LETTER HETH;Lo;0;R;;;;;N;;;;;
 11.3180 +10848;IMPERIAL ARAMAIC LETTER TETH;Lo;0;R;;;;;N;;;;;
 11.3181 +10849;IMPERIAL ARAMAIC LETTER YODH;Lo;0;R;;;;;N;;;;;
 11.3182 +1084A;IMPERIAL ARAMAIC LETTER KAPH;Lo;0;R;;;;;N;;;;;
 11.3183 +1084B;IMPERIAL ARAMAIC LETTER LAMEDH;Lo;0;R;;;;;N;;;;;
 11.3184 +1084C;IMPERIAL ARAMAIC LETTER MEM;Lo;0;R;;;;;N;;;;;
 11.3185 +1084D;IMPERIAL ARAMAIC LETTER NUN;Lo;0;R;;;;;N;;;;;
 11.3186 +1084E;IMPERIAL ARAMAIC LETTER SAMEKH;Lo;0;R;;;;;N;;;;;
 11.3187 +1084F;IMPERIAL ARAMAIC LETTER AYIN;Lo;0;R;;;;;N;;;;;
 11.3188 +10850;IMPERIAL ARAMAIC LETTER PE;Lo;0;R;;;;;N;;;;;
 11.3189 +10851;IMPERIAL ARAMAIC LETTER SADHE;Lo;0;R;;;;;N;;;;;
 11.3190 +10852;IMPERIAL ARAMAIC LETTER QOPH;Lo;0;R;;;;;N;;;;;
 11.3191 +10853;IMPERIAL ARAMAIC LETTER RESH;Lo;0;R;;;;;N;;;;;
 11.3192 +10854;IMPERIAL ARAMAIC LETTER SHIN;Lo;0;R;;;;;N;;;;;
 11.3193 +10855;IMPERIAL ARAMAIC LETTER TAW;Lo;0;R;;;;;N;;;;;
 11.3194 +10857;IMPERIAL ARAMAIC SECTION SIGN;Po;0;R;;;;;N;;;;;
 11.3195 +10858;IMPERIAL ARAMAIC NUMBER ONE;No;0;R;;;;1;N;;;;;
 11.3196 +10859;IMPERIAL ARAMAIC NUMBER TWO;No;0;R;;;;2;N;;;;;
 11.3197 +1085A;IMPERIAL ARAMAIC NUMBER THREE;No;0;R;;;;3;N;;;;;
 11.3198 +1085B;IMPERIAL ARAMAIC NUMBER TEN;No;0;R;;;;10;N;;;;;
 11.3199 +1085C;IMPERIAL ARAMAIC NUMBER TWENTY;No;0;R;;;;20;N;;;;;
 11.3200 +1085D;IMPERIAL ARAMAIC NUMBER ONE HUNDRED;No;0;R;;;;100;N;;;;;
 11.3201 +1085E;IMPERIAL ARAMAIC NUMBER ONE THOUSAND;No;0;R;;;;1000;N;;;;;
 11.3202 +1085F;IMPERIAL ARAMAIC NUMBER TEN THOUSAND;No;0;R;;;;10000;N;;;;;
 11.3203  10900;PHOENICIAN LETTER ALF;Lo;0;R;;;;;N;;;;;
 11.3204  10901;PHOENICIAN LETTER BET;Lo;0;R;;;;;N;;;;;
 11.3205  10902;PHOENICIAN LETTER GAML;Lo;0;R;;;;;N;;;;;
 11.3206 @@ -15593,6 +16815,8 @@
 11.3207  10917;PHOENICIAN NUMBER TEN;No;0;R;;;;10;N;;;;;
 11.3208  10918;PHOENICIAN NUMBER TWENTY;No;0;R;;;;20;N;;;;;
 11.3209  10919;PHOENICIAN NUMBER ONE HUNDRED;No;0;R;;;;100;N;;;;;
 11.3210 +1091A;PHOENICIAN NUMBER TWO;No;0;R;;;;2;N;;;;;
 11.3211 +1091B;PHOENICIAN NUMBER THREE;No;0;R;;;;3;N;;;;;
 11.3212  1091F;PHOENICIAN WORD SEPARATOR;Po;0;ON;;;;;N;;;;;
 11.3213  10920;LYDIAN LETTER A;Lo;0;R;;;;;N;;;;;
 11.3214  10921;LYDIAN LETTER B;Lo;0;R;;;;;N;;;;;
 11.3215 @@ -15686,6 +16910,434 @@
 11.3216  10A56;KHAROSHTHI PUNCTUATION DANDA;Po;0;R;;;;;N;;;;;
 11.3217  10A57;KHAROSHTHI PUNCTUATION DOUBLE DANDA;Po;0;R;;;;;N;;;;;
 11.3218  10A58;KHAROSHTHI PUNCTUATION LINES;Po;0;R;;;;;N;;;;;
 11.3219 +10A60;OLD SOUTH ARABIAN LETTER HE;Lo;0;R;;;;;N;;;;;
 11.3220 +10A61;OLD SOUTH ARABIAN LETTER LAMEDH;Lo;0;R;;;;;N;;;;;
 11.3221 +10A62;OLD SOUTH ARABIAN LETTER HETH;Lo;0;R;;;;;N;;;;;
 11.3222 +10A63;OLD SOUTH ARABIAN LETTER MEM;Lo;0;R;;;;;N;;;;;
 11.3223 +10A64;OLD SOUTH ARABIAN LETTER QOPH;Lo;0;R;;;;;N;;;;;
 11.3224 +10A65;OLD SOUTH ARABIAN LETTER WAW;Lo;0;R;;;;;N;;;;;
 11.3225 +10A66;OLD SOUTH ARABIAN LETTER SHIN;Lo;0;R;;;;;N;;;;;
 11.3226 +10A67;OLD SOUTH ARABIAN LETTER RESH;Lo;0;R;;;;;N;;;;;
 11.3227 +10A68;OLD SOUTH ARABIAN LETTER BETH;Lo;0;R;;;;;N;;;;;
 11.3228 +10A69;OLD SOUTH ARABIAN LETTER TAW;Lo;0;R;;;;;N;;;;;
 11.3229 +10A6A;OLD SOUTH ARABIAN LETTER SAT;Lo;0;R;;;;;N;;;;;
 11.3230 +10A6B;OLD SOUTH ARABIAN LETTER KAPH;Lo;0;R;;;;;N;;;;;
 11.3231 +10A6C;OLD SOUTH ARABIAN LETTER NUN;Lo;0;R;;;;;N;;;;;
 11.3232 +10A6D;OLD SOUTH ARABIAN LETTER KHETH;Lo;0;R;;;;;N;;;;;
 11.3233 +10A6E;OLD SOUTH ARABIAN LETTER SADHE;Lo;0;R;;;;;N;;;;;
 11.3234 +10A6F;OLD SOUTH ARABIAN LETTER SAMEKH;Lo;0;R;;;;;N;;;;;
 11.3235 +10A70;OLD SOUTH ARABIAN LETTER FE;Lo;0;R;;;;;N;;;;;
 11.3236 +10A71;OLD SOUTH ARABIAN LETTER ALEF;Lo;0;R;;;;;N;;;;;
 11.3237 +10A72;OLD SOUTH ARABIAN LETTER AYN;Lo;0;R;;;;;N;;;;;
 11.3238 +10A73;OLD SOUTH ARABIAN LETTER DHADHE;Lo;0;R;;;;;N;;;;;
 11.3239 +10A74;OLD SOUTH ARABIAN LETTER GIMEL;Lo;0;R;;;;;N;;;;;
 11.3240 +10A75;OLD SOUTH ARABIAN LETTER DALETH;Lo;0;R;;;;;N;;;;;
 11.3241 +10A76;OLD SOUTH ARABIAN LETTER GHAYN;Lo;0;R;;;;;N;;;;;
 11.3242 +10A77;OLD SOUTH ARABIAN LETTER TETH;Lo;0;R;;;;;N;;;;;
 11.3243 +10A78;OLD SOUTH ARABIAN LETTER ZAYN;Lo;0;R;;;;;N;;;;;
 11.3244 +10A79;OLD SOUTH ARABIAN LETTER DHALETH;Lo;0;R;;;;;N;;;;;
 11.3245 +10A7A;OLD SOUTH ARABIAN LETTER YODH;Lo;0;R;;;;;N;;;;;
 11.3246 +10A7B;OLD SOUTH ARABIAN LETTER THAW;Lo;0;R;;;;;N;;;;;
 11.3247 +10A7C;OLD SOUTH ARABIAN LETTER THETH;Lo;0;R;;;;;N;;;;;
 11.3248 +10A7D;OLD SOUTH ARABIAN NUMBER ONE;No;0;R;;;;1;N;;;;;
 11.3249 +10A7E;OLD SOUTH ARABIAN NUMBER FIFTY;No;0;R;;;;50;N;;;;;
 11.3250 +10A7F;OLD SOUTH ARABIAN NUMERIC INDICATOR;Po;0;R;;;;;N;;;;;
 11.3251 +10B00;AVESTAN LETTER A;Lo;0;R;;;;;N;;;;;
 11.3252 +10B01;AVESTAN LETTER AA;Lo;0;R;;;;;N;;;;;
 11.3253 +10B02;AVESTAN LETTER AO;Lo;0;R;;;;;N;;;;;
 11.3254 +10B03;AVESTAN LETTER AAO;Lo;0;R;;;;;N;;;;;
 11.3255 +10B04;AVESTAN LETTER AN;Lo;0;R;;;;;N;;;;;
 11.3256 +10B05;AVESTAN LETTER AAN;Lo;0;R;;;;;N;;;;;
 11.3257 +10B06;AVESTAN LETTER AE;Lo;0;R;;;;;N;;;;;
 11.3258 +10B07;AVESTAN LETTER AEE;Lo;0;R;;;;;N;;;;;
 11.3259 +10B08;AVESTAN LETTER E;Lo;0;R;;;;;N;;;;;
 11.3260 +10B09;AVESTAN LETTER EE;Lo;0;R;;;;;N;;;;;
 11.3261 +10B0A;AVESTAN LETTER O;Lo;0;R;;;;;N;;;;;
 11.3262 +10B0B;AVESTAN LETTER OO;Lo;0;R;;;;;N;;;;;
 11.3263 +10B0C;AVESTAN LETTER I;Lo;0;R;;;;;N;;;;;
 11.3264 +10B0D;AVESTAN LETTER II;Lo;0;R;;;;;N;;;;;
 11.3265 +10B0E;AVESTAN LETTER U;Lo;0;R;;;;;N;;;;;
 11.3266 +10B0F;AVESTAN LETTER UU;Lo;0;R;;;;;N;;;;;
 11.3267 +10B10;AVESTAN LETTER KE;Lo;0;R;;;;;N;;;;;
 11.3268 +10B11;AVESTAN LETTER XE;Lo;0;R;;;;;N;;;;;
 11.3269 +10B12;AVESTAN LETTER XYE;Lo;0;R;;;;;N;;;;;
 11.3270 +10B13;AVESTAN LETTER XVE;Lo;0;R;;;;;N;;;;;
 11.3271 +10B14;AVESTAN LETTER GE;Lo;0;R;;;;;N;;;;;
 11.3272 +10B15;AVESTAN LETTER GGE;Lo;0;R;;;;;N;;;;;
 11.3273 +10B16;AVESTAN LETTER GHE;Lo;0;R;;;;;N;;;;;
 11.3274 +10B17;AVESTAN LETTER CE;Lo;0;R;;;;;N;;;;;
 11.3275 +10B18;AVESTAN LETTER JE;Lo;0;R;;;;;N;;;;;
 11.3276 +10B19;AVESTAN LETTER TE;Lo;0;R;;;;;N;;;;;
 11.3277 +10B1A;AVESTAN LETTER THE;Lo;0;R;;;;;N;;;;;
 11.3278 +10B1B;AVESTAN LETTER DE;Lo;0;R;;;;;N;;;;;
 11.3279 +10B1C;AVESTAN LETTER DHE;Lo;0;R;;;;;N;;;;;
 11.3280 +10B1D;AVESTAN LETTER TTE;Lo;0;R;;;;;N;;;;;
 11.3281 +10B1E;AVESTAN LETTER PE;Lo;0;R;;;;;N;;;;;
 11.3282 +10B1F;AVESTAN LETTER FE;Lo;0;R;;;;;N;;;;;
 11.3283 +10B20;AVESTAN LETTER BE;Lo;0;R;;;;;N;;;;;
 11.3284 +10B21;AVESTAN LETTER BHE;Lo;0;R;;;;;N;;;;;
 11.3285 +10B22;AVESTAN LETTER NGE;Lo;0;R;;;;;N;;;;;
 11.3286 +10B23;AVESTAN LETTER NGYE;Lo;0;R;;;;;N;;;;;
 11.3287 +10B24;AVESTAN LETTER NGVE;Lo;0;R;;;;;N;;;;;
 11.3288 +10B25;AVESTAN LETTER NE;Lo;0;R;;;;;N;;;;;
 11.3289 +10B26;AVESTAN LETTER NYE;Lo;0;R;;;;;N;;;;;
 11.3290 +10B27;AVESTAN LETTER NNE;Lo;0;R;;;;;N;;;;;
 11.3291 +10B28;AVESTAN LETTER ME;Lo;0;R;;;;;N;;;;;
 11.3292 +10B29;AVESTAN LETTER HME;Lo;0;R;;;;;N;;;;;
 11.3293 +10B2A;AVESTAN LETTER YYE;Lo;0;R;;;;;N;;;;;
 11.3294 +10B2B;AVESTAN LETTER YE;Lo;0;R;;;;;N;;;;;
 11.3295 +10B2C;AVESTAN LETTER VE;Lo;0;R;;;;;N;;;;;
 11.3296 +10B2D;AVESTAN LETTER RE;Lo;0;R;;;;;N;;;;;
 11.3297 +10B2E;AVESTAN LETTER LE;Lo;0;R;;;;;N;;;;;
 11.3298 +10B2F;AVESTAN LETTER SE;Lo;0;R;;;;;N;;;;;
 11.3299 +10B30;AVESTAN LETTER ZE;Lo;0;R;;;;;N;;;;;
 11.3300 +10B31;AVESTAN LETTER SHE;Lo;0;R;;;;;N;;;;;
 11.3301 +10B32;AVESTAN LETTER ZHE;Lo;0;R;;;;;N;;;;;
 11.3302 +10B33;AVESTAN LETTER SHYE;Lo;0;R;;;;;N;;;;;
 11.3303 +10B34;AVESTAN LETTER SSHE;Lo;0;R;;;;;N;;;;;
 11.3304 +10B35;AVESTAN LETTER HE;Lo;0;R;;;;;N;;;;;
 11.3305 +10B39;AVESTAN ABBREVIATION MARK;Po;0;ON;;;;;N;;;;;
 11.3306 +10B3A;TINY TWO DOTS OVER ONE DOT PUNCTUATION;Po;0;ON;;;;;N;;;;;
 11.3307 +10B3B;SMALL TWO DOTS OVER ONE DOT PUNCTUATION;Po;0;ON;;;;;N;;;;;
 11.3308 +10B3C;LARGE TWO DOTS OVER ONE DOT PUNCTUATION;Po;0;ON;;;;;N;;;;;
 11.3309 +10B3D;LARGE ONE DOT OVER TWO DOTS PUNCTUATION;Po;0;ON;;;;;N;;;;;
 11.3310 +10B3E;LARGE TWO RINGS OVER ONE RING PUNCTUATION;Po;0;ON;;;;;N;;;;;
 11.3311 +10B3F;LARGE ONE RING OVER TWO RINGS PUNCTUATION;Po;0;ON;;;;;N;;;;;
 11.3312 +10B40;INSCRIPTIONAL PARTHIAN LETTER ALEPH;Lo;0;R;;;;;N;;;;;
 11.3313 +10B41;INSCRIPTIONAL PARTHIAN LETTER BETH;Lo;0;R;;;;;N;;;;;
 11.3314 +10B42;INSCRIPTIONAL PARTHIAN LETTER GIMEL;Lo;0;R;;;;;N;;;;;
 11.3315 +10B43;INSCRIPTIONAL PARTHIAN LETTER DALETH;Lo;0;R;;;;;N;;;;;
 11.3316 +10B44;INSCRIPTIONAL PARTHIAN LETTER HE;Lo;0;R;;;;;N;;;;;
 11.3317 +10B45;INSCRIPTIONAL PARTHIAN LETTER WAW;Lo;0;R;;;;;N;;;;;
 11.3318 +10B46;INSCRIPTIONAL PARTHIAN LETTER ZAYIN;Lo;0;R;;;;;N;;;;;
 11.3319 +10B47;INSCRIPTIONAL PARTHIAN LETTER HETH;Lo;0;R;;;;;N;;;;;
 11.3320 +10B48;INSCRIPTIONAL PARTHIAN LETTER TETH;Lo;0;R;;;;;N;;;;;
 11.3321 +10B49;INSCRIPTIONAL PARTHIAN LETTER YODH;Lo;0;R;;;;;N;;;;;
 11.3322 +10B4A;INSCRIPTIONAL PARTHIAN LETTER KAPH;Lo;0;R;;;;;N;;;;;
 11.3323 +10B4B;INSCRIPTIONAL PARTHIAN LETTER LAMEDH;Lo;0;R;;;;;N;;;;;
 11.3324 +10B4C;INSCRIPTIONAL PARTHIAN LETTER MEM;Lo;0;R;;;;;N;;;;;
 11.3325 +10B4D;INSCRIPTIONAL PARTHIAN LETTER NUN;Lo;0;R;;;;;N;;;;;
 11.3326 +10B4E;INSCRIPTIONAL PARTHIAN LETTER SAMEKH;Lo;0;R;;;;;N;;;;;
 11.3327 +10B4F;INSCRIPTIONAL PARTHIAN LETTER AYIN;Lo;0;R;;;;;N;;;;;
 11.3328 +10B50;INSCRIPTIONAL PARTHIAN LETTER PE;Lo;0;R;;;;;N;;;;;
 11.3329 +10B51;INSCRIPTIONAL PARTHIAN LETTER SADHE;Lo;0;R;;;;;N;;;;;
 11.3330 +10B52;INSCRIPTIONAL PARTHIAN LETTER QOPH;Lo;0;R;;;;;N;;;;;
 11.3331 +10B53;INSCRIPTIONAL PARTHIAN LETTER RESH;Lo;0;R;;;;;N;;;;;
 11.3332 +10B54;INSCRIPTIONAL PARTHIAN LETTER SHIN;Lo;0;R;;;;;N;;;;;
 11.3333 +10B55;INSCRIPTIONAL PARTHIAN LETTER TAW;Lo;0;R;;;;;N;;;;;
 11.3334 +10B58;INSCRIPTIONAL PARTHIAN NUMBER ONE;No;0;R;;;;1;N;;;;;
 11.3335 +10B59;INSCRIPTIONAL PARTHIAN NUMBER TWO;No;0;R;;;;2;N;;;;;
 11.3336 +10B5A;INSCRIPTIONAL PARTHIAN NUMBER THREE;No;0;R;;;;3;N;;;;;
 11.3337 +10B5B;INSCRIPTIONAL PARTHIAN NUMBER FOUR;No;0;R;;;;4;N;;;;;
 11.3338 +10B5C;INSCRIPTIONAL PARTHIAN NUMBER TEN;No;0;R;;;;10;N;;;;;
 11.3339 +10B5D;INSCRIPTIONAL PARTHIAN NUMBER TWENTY;No;0;R;;;;20;N;;;;;
 11.3340 +10B5E;INSCRIPTIONAL PARTHIAN NUMBER ONE HUNDRED;No;0;R;;;;100;N;;;;;
 11.3341 +10B5F;INSCRIPTIONAL PARTHIAN NUMBER ONE THOUSAND;No;0;R;;;;1000;N;;;;;
 11.3342 +10B60;INSCRIPTIONAL PAHLAVI LETTER ALEPH;Lo;0;R;;;;;N;;;;;
 11.3343 +10B61;INSCRIPTIONAL PAHLAVI LETTER BETH;Lo;0;R;;;;;N;;;;;
 11.3344 +10B62;INSCRIPTIONAL PAHLAVI LETTER GIMEL;Lo;0;R;;;;;N;;;;;
 11.3345 +10B63;INSCRIPTIONAL PAHLAVI LETTER DALETH;Lo;0;R;;;;;N;;;;;
 11.3346 +10B64;INSCRIPTIONAL PAHLAVI LETTER HE;Lo;0;R;;;;;N;;;;;
 11.3347 +10B65;INSCRIPTIONAL PAHLAVI LETTER WAW-AYIN-RESH;Lo;0;R;;;;;N;;;;;
 11.3348 +10B66;INSCRIPTIONAL PAHLAVI LETTER ZAYIN;Lo;0;R;;;;;N;;;;;
 11.3349 +10B67;INSCRIPTIONAL PAHLAVI LETTER HETH;Lo;0;R;;;;;N;;;;;
 11.3350 +10B68;INSCRIPTIONAL PAHLAVI LETTER TETH;Lo;0;R;;;;;N;;;;;
 11.3351 +10B69;INSCRIPTIONAL PAHLAVI LETTER YODH;Lo;0;R;;;;;N;;;;;
 11.3352 +10B6A;INSCRIPTIONAL PAHLAVI LETTER KAPH;Lo;0;R;;;;;N;;;;;
 11.3353 +10B6B;INSCRIPTIONAL PAHLAVI LETTER LAMEDH;Lo;0;R;;;;;N;;;;;
 11.3354 +10B6C;INSCRIPTIONAL PAHLAVI LETTER MEM-QOPH;Lo;0;R;;;;;N;;;;;
 11.3355 +10B6D;INSCRIPTIONAL PAHLAVI LETTER NUN;Lo;0;R;;;;;N;;;;;
 11.3356 +10B6E;INSCRIPTIONAL PAHLAVI LETTER SAMEKH;Lo;0;R;;;;;N;;;;;
 11.3357 +10B6F;INSCRIPTIONAL PAHLAVI LETTER PE;Lo;0;R;;;;;N;;;;;
 11.3358 +10B70;INSCRIPTIONAL PAHLAVI LETTER SADHE;Lo;0;R;;;;;N;;;;;
 11.3359 +10B71;INSCRIPTIONAL PAHLAVI LETTER SHIN;Lo;0;R;;;;;N;;;;;
 11.3360 +10B72;INSCRIPTIONAL PAHLAVI LETTER TAW;Lo;0;R;;;;;N;;;;;
 11.3361 +10B78;INSCRIPTIONAL PAHLAVI NUMBER ONE;No;0;R;;;;1;N;;;;;
 11.3362 +10B79;INSCRIPTIONAL PAHLAVI NUMBER TWO;No;0;R;;;;2;N;;;;;
 11.3363 +10B7A;INSCRIPTIONAL PAHLAVI NUMBER THREE;No;0;R;;;;3;N;;;;;
 11.3364 +10B7B;INSCRIPTIONAL PAHLAVI NUMBER FOUR;No;0;R;;;;4;N;;;;;
 11.3365 +10B7C;INSCRIPTIONAL PAHLAVI NUMBER TEN;No;0;R;;;;10;N;;;;;
 11.3366 +10B7D;INSCRIPTIONAL PAHLAVI NUMBER TWENTY;No;0;R;;;;20;N;;;;;
 11.3367 +10B7E;INSCRIPTIONAL PAHLAVI NUMBER ONE HUNDRED;No;0;R;;;;100;N;;;;;
 11.3368 +10B7F;INSCRIPTIONAL PAHLAVI NUMBER ONE THOUSAND;No;0;R;;;;1000;N;;;;;
 11.3369 +10C00;OLD TURKIC LETTER ORKHON A;Lo;0;R;;;;;N;;;;;
 11.3370 +10C01;OLD TURKIC LETTER YENISEI A;Lo;0;R;;;;;N;;;;;
 11.3371 +10C02;OLD TURKIC LETTER YENISEI AE;Lo;0;R;;;;;N;;;;;
 11.3372 +10C03;OLD TURKIC LETTER ORKHON I;Lo;0;R;;;;;N;;;;;
 11.3373 +10C04;OLD TURKIC LETTER YENISEI I;Lo;0;R;;;;;N;;;;;
 11.3374 +10C05;OLD TURKIC LETTER YENISEI E;Lo;0;R;;;;;N;;;;;
 11.3375 +10C06;OLD TURKIC LETTER ORKHON O;Lo;0;R;;;;;N;;;;;
 11.3376 +10C07;OLD TURKIC LETTER ORKHON OE;Lo;0;R;;;;;N;;;;;
 11.3377 +10C08;OLD TURKIC LETTER YENISEI OE;Lo;0;R;;;;;N;;;;;
 11.3378 +10C09;OLD TURKIC LETTER ORKHON AB;Lo;0;R;;;;;N;;;;;
 11.3379 +10C0A;OLD TURKIC LETTER YENISEI AB;Lo;0;R;;;;;N;;;;;
 11.3380 +10C0B;OLD TURKIC LETTER ORKHON AEB;Lo;0;R;;;;;N;;;;;
 11.3381 +10C0C;OLD TURKIC LETTER YENISEI AEB;Lo;0;R;;;;;N;;;;;
 11.3382 +10C0D;OLD TURKIC LETTER ORKHON AG;Lo;0;R;;;;;N;;;;;
 11.3383 +10C0E;OLD TURKIC LETTER YENISEI AG;Lo;0;R;;;;;N;;;;;
 11.3384 +10C0F;OLD TURKIC LETTER ORKHON AEG;Lo;0;R;;;;;N;;;;;
 11.3385 +10C10;OLD TURKIC LETTER YENISEI AEG;Lo;0;R;;;;;N;;;;;
 11.3386 +10C11;OLD TURKIC LETTER ORKHON AD;Lo;0;R;;;;;N;;;;;
 11.3387 +10C12;OLD TURKIC LETTER YENISEI AD;Lo;0;R;;;;;N;;;;;
 11.3388 +10C13;OLD TURKIC LETTER ORKHON AED;Lo;0;R;;;;;N;;;;;
 11.3389 +10C14;OLD TURKIC LETTER ORKHON EZ;Lo;0;R;;;;;N;;;;;
 11.3390 +10C15;OLD TURKIC LETTER YENISEI EZ;Lo;0;R;;;;;N;;;;;
 11.3391 +10C16;OLD TURKIC LETTER ORKHON AY;Lo;0;R;;;;;N;;;;;
 11.3392 +10C17;OLD TURKIC LETTER YENISEI AY;Lo;0;R;;;;;N;;;;;
 11.3393 +10C18;OLD TURKIC LETTER ORKHON AEY;Lo;0;R;;;;;N;;;;;
 11.3394 +10C19;OLD TURKIC LETTER YENISEI AEY;Lo;0;R;;;;;N;;;;;
 11.3395 +10C1A;OLD TURKIC LETTER ORKHON AEK;Lo;0;R;;;;;N;;;;;
 11.3396 +10C1B;OLD TURKIC LETTER YENISEI AEK;Lo;0;R;;;;;N;;;;;
 11.3397 +10C1C;OLD TURKIC LETTER ORKHON OEK;Lo;0;R;;;;;N;;;;;
 11.3398 +10C1D;OLD TURKIC LETTER YENISEI OEK;Lo;0;R;;;;;N;;;;;
 11.3399 +10C1E;OLD TURKIC LETTER ORKHON AL;Lo;0;R;;;;;N;;;;;
 11.3400 +10C1F;OLD TURKIC LETTER YENISEI AL;Lo;0;R;;;;;N;;;;;
 11.3401 +10C20;OLD TURKIC LETTER ORKHON AEL;Lo;0;R;;;;;N;;;;;
 11.3402 +10C21;OLD TURKIC LETTER ORKHON ELT;Lo;0;R;;;;;N;;;;;
 11.3403 +10C22;OLD TURKIC LETTER ORKHON EM;Lo;0;R;;;;;N;;;;;
 11.3404 +10C23;OLD TURKIC LETTER ORKHON AN;Lo;0;R;;;;;N;;;;;
 11.3405 +10C24;OLD TURKIC LETTER ORKHON AEN;Lo;0;R;;;;;N;;;;;
 11.3406 +10C25;OLD TURKIC LETTER YENISEI AEN;Lo;0;R;;;;;N;;;;;
 11.3407 +10C26;OLD TURKIC LETTER ORKHON ENT;Lo;0;R;;;;;N;;;;;
 11.3408 +10C27;OLD TURKIC LETTER YENISEI ENT;Lo;0;R;;;;;N;;;;;
 11.3409 +10C28;OLD TURKIC LETTER ORKHON ENC;Lo;0;R;;;;;N;;;;;
 11.3410 +10C29;OLD TURKIC LETTER YENISEI ENC;Lo;0;R;;;;;N;;;;;
 11.3411 +10C2A;OLD TURKIC LETTER ORKHON ENY;Lo;0;R;;;;;N;;;;;
 11.3412 +10C2B;OLD TURKIC LETTER YENISEI ENY;Lo;0;R;;;;;N;;;;;
 11.3413 +10C2C;OLD TURKIC LETTER YENISEI ANG;Lo;0;R;;;;;N;;;;;
 11.3414 +10C2D;OLD TURKIC LETTER ORKHON ENG;Lo;0;R;;;;;N;;;;;
 11.3415 +10C2E;OLD TURKIC LETTER YENISEI AENG;Lo;0;R;;;;;N;;;;;
 11.3416 +10C2F;OLD TURKIC LETTER ORKHON EP;Lo;0;R;;;;;N;;;;;
 11.3417 +10C30;OLD TURKIC LETTER ORKHON OP;Lo;0;R;;;;;N;;;;;
 11.3418 +10C31;OLD TURKIC LETTER ORKHON IC;Lo;0;R;;;;;N;;;;;
 11.3419 +10C32;OLD TURKIC LETTER ORKHON EC;Lo;0;R;;;;;N;;;;;
 11.3420 +10C33;OLD TURKIC LETTER YENISEI EC;Lo;0;R;;;;;N;;;;;
 11.3421 +10C34;OLD TURKIC LETTER ORKHON AQ;Lo;0;R;;;;;N;;;;;
 11.3422 +10C35;OLD TURKIC LETTER YENISEI AQ;Lo;0;R;;;;;N;;;;;
 11.3423 +10C36;OLD TURKIC LETTER ORKHON IQ;Lo;0;R;;;;;N;;;;;
 11.3424 +10C37;OLD TURKIC LETTER YENISEI IQ;Lo;0;R;;;;;N;;;;;
 11.3425 +10C38;OLD TURKIC LETTER ORKHON OQ;Lo;0;R;;;;;N;;;;;
 11.3426 +10C39;OLD TURKIC LETTER YENISEI OQ;Lo;0;R;;;;;N;;;;;
 11.3427 +10C3A;OLD TURKIC LETTER ORKHON AR;Lo;0;R;;;;;N;;;;;
 11.3428 +10C3B;OLD TURKIC LETTER YENISEI AR;Lo;0;R;;;;;N;;;;;
 11.3429 +10C3C;OLD TURKIC LETTER ORKHON AER;Lo;0;R;;;;;N;;;;;
 11.3430 +10C3D;OLD TURKIC LETTER ORKHON AS;Lo;0;R;;;;;N;;;;;
 11.3431 +10C3E;OLD TURKIC LETTER ORKHON AES;Lo;0;R;;;;;N;;;;;
 11.3432 +10C3F;OLD TURKIC LETTER ORKHON ASH;Lo;0;R;;;;;N;;;;;
 11.3433 +10C40;OLD TURKIC LETTER YENISEI ASH;Lo;0;R;;;;;N;;;;;
 11.3434 +10C41;OLD TURKIC LETTER ORKHON ESH;Lo;0;R;;;;;N;;;;;
 11.3435 +10C42;OLD TURKIC LETTER YENISEI ESH;Lo;0;R;;;;;N;;;;;
 11.3436 +10C43;OLD TURKIC LETTER ORKHON AT;Lo;0;R;;;;;N;;;;;
 11.3437 +10C44;OLD TURKIC LETTER YENISEI AT;Lo;0;R;;;;;N;;;;;
 11.3438 +10C45;OLD TURKIC LETTER ORKHON AET;Lo;0;R;;;;;N;;;;;
 11.3439 +10C46;OLD TURKIC LETTER YENISEI AET;Lo;0;R;;;;;N;;;;;
 11.3440 +10C47;OLD TURKIC LETTER ORKHON OT;Lo;0;R;;;;;N;;;;;
 11.3441 +10C48;OLD TURKIC LETTER ORKHON BASH;Lo;0;R;;;;;N;;;;;
 11.3442 +10E60;RUMI DIGIT ONE;No;0;AN;;;1;1;N;;;;;
 11.3443 +10E61;RUMI DIGIT TWO;No;0;AN;;;2;2;N;;;;;
 11.3444 +10E62;RUMI DIGIT THREE;No;0;AN;;;3;3;N;;;;;
 11.3445 +10E63;RUMI DIGIT FOUR;No;0;AN;;;4;4;N;;;;;
 11.3446 +10E64;RUMI DIGIT FIVE;No;0;AN;;;5;5;N;;;;;
 11.3447 +10E65;RUMI DIGIT SIX;No;0;AN;;;6;6;N;;;;;
 11.3448 +10E66;RUMI DIGIT SEVEN;No;0;AN;;;7;7;N;;;;;
 11.3449 +10E67;RUMI DIGIT EIGHT;No;0;AN;;;8;8;N;;;;;
 11.3450 +10E68;RUMI DIGIT NINE;No;0;AN;;;9;9;N;;;;;
 11.3451 +10E69;RUMI NUMBER TEN;No;0;AN;;;;10;N;;;;;
 11.3452 +10E6A;RUMI NUMBER TWENTY;No;0;AN;;;;20;N;;;;;
 11.3453 +10E6B;RUMI NUMBER THIRTY;No;0;AN;;;;30;N;;;;;
 11.3454 +10E6C;RUMI NUMBER FORTY;No;0;AN;;;;40;N;;;;;
 11.3455 +10E6D;RUMI NUMBER FIFTY;No;0;AN;;;;50;N;;;;;
 11.3456 +10E6E;RUMI NUMBER SIXTY;No;0;AN;;;;60;N;;;;;
 11.3457 +10E6F;RUMI NUMBER SEVENTY;No;0;AN;;;;70;N;;;;;
 11.3458 +10E70;RUMI NUMBER EIGHTY;No;0;AN;;;;80;N;;;;;
 11.3459 +10E71;RUMI NUMBER NINETY;No;0;AN;;;;90;N;;;;;
 11.3460 +10E72;RUMI NUMBER ONE HUNDRED;No;0;AN;;;;100;N;;;;;
 11.3461 +10E73;RUMI NUMBER TWO HUNDRED;No;0;AN;;;;200;N;;;;;
 11.3462 +10E74;RUMI NUMBER THREE HUNDRED;No;0;AN;;;;300;N;;;;;
 11.3463 +10E75;RUMI NUMBER FOUR HUNDRED;No;0;AN;;;;400;N;;;;;
 11.3464 +10E76;RUMI NUMBER FIVE HUNDRED;No;0;AN;;;;500;N;;;;;
 11.3465 +10E77;RUMI NUMBER SIX HUNDRED;No;0;AN;;;;600;N;;;;;
 11.3466 +10E78;RUMI NUMBER SEVEN HUNDRED;No;0;AN;;;;700;N;;;;;
 11.3467 +10E79;RUMI NUMBER EIGHT HUNDRED;No;0;AN;;;;800;N;;;;;
 11.3468 +10E7A;RUMI NUMBER NINE HUNDRED;No;0;AN;;;;900;N;;;;;
 11.3469 +10E7B;RUMI FRACTION ONE HALF;No;0;AN;;;;1/2;N;;;;;
 11.3470 +10E7C;RUMI FRACTION ONE QUARTER;No;0;AN;;;;1/4;N;;;;;
 11.3471 +10E7D;RUMI FRACTION ONE THIRD;No;0;AN;;;;1/3;N;;;;;
 11.3472 +10E7E;RUMI FRACTION TWO THIRDS;No;0;AN;;;;2/3;N;;;;;
 11.3473 +11000;BRAHMI SIGN CANDRABINDU;Mc;0;L;;;;;N;;;;;
 11.3474 +11001;BRAHMI SIGN ANUSVARA;Mn;0;NSM;;;;;N;;;;;
 11.3475 +11002;BRAHMI SIGN VISARGA;Mc;0;L;;;;;N;;;;;
 11.3476 +11003;BRAHMI SIGN JIHVAMULIYA;Lo;0;L;;;;;N;;;;;
 11.3477 +11004;BRAHMI SIGN UPADHMANIYA;Lo;0;L;;;;;N;;;;;
 11.3478 +11005;BRAHMI LETTER A;Lo;0;L;;;;;N;;;;;
 11.3479 +11006;BRAHMI LETTER AA;Lo;0;L;;;;;N;;;;;
 11.3480 +11007;BRAHMI LETTER I;Lo;0;L;;;;;N;;;;;
 11.3481 +11008;BRAHMI LETTER II;Lo;0;L;;;;;N;;;;;
 11.3482 +11009;BRAHMI LETTER U;Lo;0;L;;;;;N;;;;;
 11.3483 +1100A;BRAHMI LETTER UU;Lo;0;L;;;;;N;;;;;
 11.3484 +1100B;BRAHMI LETTER VOCALIC R;Lo;0;L;;;;;N;;;;;
 11.3485 +1100C;BRAHMI LETTER VOCALIC RR;Lo;0;L;;;;;N;;;;;
 11.3486 +1100D;BRAHMI LETTER VOCALIC L;Lo;0;L;;;;;N;;;;;
 11.3487 +1100E;BRAHMI LETTER VOCALIC LL;Lo;0;L;;;;;N;;;;;
 11.3488 +1100F;BRAHMI LETTER E;Lo;0;L;;;;;N;;;;;
 11.3489 +11010;BRAHMI LETTER AI;Lo;0;L;;;;;N;;;;;
 11.3490 +11011;BRAHMI LETTER O;Lo;0;L;;;;;N;;;;;
 11.3491 +11012;BRAHMI LETTER AU;Lo;0;L;;;;;N;;;;;
 11.3492 +11013;BRAHMI LETTER KA;Lo;0;L;;;;;N;;;;;
 11.3493 +11014;BRAHMI LETTER KHA;Lo;0;L;;;;;N;;;;;
 11.3494 +11015;BRAHMI LETTER GA;Lo;0;L;;;;;N;;;;;
 11.3495 +11016;BRAHMI LETTER GHA;Lo;0;L;;;;;N;;;;;
 11.3496 +11017;BRAHMI LETTER NGA;Lo;0;L;;;;;N;;;;;
 11.3497 +11018;BRAHMI LETTER CA;Lo;0;L;;;;;N;;;;;
 11.3498 +11019;BRAHMI LETTER CHA;Lo;0;L;;;;;N;;;;;
 11.3499 +1101A;BRAHMI LETTER JA;Lo;0;L;;;;;N;;;;;
 11.3500 +1101B;BRAHMI LETTER JHA;Lo;0;L;;;;;N;;;;;
 11.3501 +1101C;BRAHMI LETTER NYA;Lo;0;L;;;;;N;;;;;
 11.3502 +1101D;BRAHMI LETTER TTA;Lo;0;L;;;;;N;;;;;
 11.3503 +1101E;BRAHMI LETTER TTHA;Lo;0;L;;;;;N;;;;;
 11.3504 +1101F;BRAHMI LETTER DDA;Lo;0;L;;;;;N;;;;;
 11.3505 +11020;BRAHMI LETTER DDHA;Lo;0;L;;;;;N;;;;;
 11.3506 +11021;BRAHMI LETTER NNA;Lo;0;L;;;;;N;;;;;
 11.3507 +11022;BRAHMI LETTER TA;Lo;0;L;;;;;N;;;;;
 11.3508 +11023;BRAHMI LETTER THA;Lo;0;L;;;;;N;;;;;
 11.3509 +11024;BRAHMI LETTER DA;Lo;0;L;;;;;N;;;;;
 11.3510 +11025;BRAHMI LETTER DHA;Lo;0;L;;;;;N;;;;;
 11.3511 +11026;BRAHMI LETTER NA;Lo;0;L;;;;;N;;;;;
 11.3512 +11027;BRAHMI LETTER PA;Lo;0;L;;;;;N;;;;;
 11.3513 +11028;BRAHMI LETTER PHA;Lo;0;L;;;;;N;;;;;
 11.3514 +11029;BRAHMI LETTER BA;Lo;0;L;;;;;N;;;;;
 11.3515 +1102A;BRAHMI LETTER BHA;Lo;0;L;;;;;N;;;;;
 11.3516 +1102B;BRAHMI LETTER MA;Lo;0;L;;;;;N;;;;;
 11.3517 +1102C;BRAHMI LETTER YA;Lo;0;L;;;;;N;;;;;
 11.3518 +1102D;BRAHMI LETTER RA;Lo;0;L;;;;;N;;;;;
 11.3519 +1102E;BRAHMI LETTER LA;Lo;0;L;;;;;N;;;;;
 11.3520 +1102F;BRAHMI LETTER VA;Lo;0;L;;;;;N;;;;;
 11.3521 +11030;BRAHMI LETTER SHA;Lo;0;L;;;;;N;;;;;
 11.3522 +11031;BRAHMI LETTER SSA;Lo;0;L;;;;;N;;;;;
 11.3523 +11032;BRAHMI LETTER SA;Lo;0;L;;;;;N;;;;;
 11.3524 +11033;BRAHMI LETTER HA;Lo;0;L;;;;;N;;;;;
 11.3525 +11034;BRAHMI LETTER LLA;Lo;0;L;;;;;N;;;;;
 11.3526 +11035;BRAHMI LETTER OLD TAMIL LLLA;Lo;0;L;;;;;N;;;;;
 11.3527 +11036;BRAHMI LETTER OLD TAMIL RRA;Lo;0;L;;;;;N;;;;;
 11.3528 +11037;BRAHMI LETTER OLD TAMIL NNNA;Lo;0;L;;;;;N;;;;;
 11.3529 +11038;BRAHMI VOWEL SIGN AA;Mn;0;NSM;;;;;N;;;;;
 11.3530 +11039;BRAHMI VOWEL SIGN BHATTIPROLU AA;Mn;0;NSM;;;;;N;;;;;
 11.3531 +1103A;BRAHMI VOWEL SIGN I;Mn;0;NSM;;;;;N;;;;;
 11.3532 +1103B;BRAHMI VOWEL SIGN II;Mn;0;NSM;;;;;N;;;;;
 11.3533 +1103C;BRAHMI VOWEL SIGN U;Mn;0;NSM;;;;;N;;;;;
 11.3534 +1103D;BRAHMI VOWEL SIGN UU;Mn;0;NSM;;;;;N;;;;;
 11.3535 +1103E;BRAHMI VOWEL SIGN VOCALIC R;Mn;0;NSM;;;;;N;;;;;
 11.3536 +1103F;BRAHMI VOWEL SIGN VOCALIC RR;Mn;0;NSM;;;;;N;;;;;
 11.3537 +11040;BRAHMI VOWEL SIGN VOCALIC L;Mn;0;NSM;;;;;N;;;;;
 11.3538 +11041;BRAHMI VOWEL SIGN VOCALIC LL;Mn;0;NSM;;;;;N;;;;;
 11.3539 +11042;BRAHMI VOWEL SIGN E;Mn;0;NSM;;;;;N;;;;;
 11.3540 +11043;BRAHMI VOWEL SIGN AI;Mn;0;NSM;;;;;N;;;;;
 11.3541 +11044;BRAHMI VOWEL SIGN O;Mn;0;NSM;;;;;N;;;;;
 11.3542 +11045;BRAHMI VOWEL SIGN AU;Mn;0;NSM;;;;;N;;;;;
 11.3543 +11046;BRAHMI VIRAMA;Mn;9;NSM;;;;;N;;;;;
 11.3544 +11047;BRAHMI DANDA;Po;0;L;;;;;N;;;;;
 11.3545 +11048;BRAHMI DOUBLE DANDA;Po;0;L;;;;;N;;;;;
 11.3546 +11049;BRAHMI PUNCTUATION DOT;Po;0;L;;;;;N;;;;;
 11.3547 +1104A;BRAHMI PUNCTUATION DOUBLE DOT;Po;0;L;;;;;N;;;;;
 11.3548 +1104B;BRAHMI PUNCTUATION LINE;Po;0;L;;;;;N;;;;;
 11.3549 +1104C;BRAHMI PUNCTUATION CRESCENT BAR;Po;0;L;;;;;N;;;;;
 11.3550 +1104D;BRAHMI PUNCTUATION LOTUS;Po;0;L;;;;;N;;;;;
 11.3551 +11052;BRAHMI NUMBER ONE;No;0;ON;;;1;1;N;;;;;
 11.3552 +11053;BRAHMI NUMBER TWO;No;0;ON;;;2;2;N;;;;;
 11.3553 +11054;BRAHMI NUMBER THREE;No;0;ON;;;3;3;N;;;;;
 11.3554 +11055;BRAHMI NUMBER FOUR;No;0;ON;;;4;4;N;;;;;
 11.3555 +11056;BRAHMI NUMBER FIVE;No;0;ON;;;5;5;N;;;;;
 11.3556 +11057;BRAHMI NUMBER SIX;No;0;ON;;;6;6;N;;;;;
 11.3557 +11058;BRAHMI NUMBER SEVEN;No;0;ON;;;7;7;N;;;;;
 11.3558 +11059;BRAHMI NUMBER EIGHT;No;0;ON;;;8;8;N;;;;;
 11.3559 +1105A;BRAHMI NUMBER NINE;No;0;ON;;;9;9;N;;;;;
 11.3560 +1105B;BRAHMI NUMBER TEN;No;0;ON;;;;10;N;;;;;
 11.3561 +1105C;BRAHMI NUMBER TWENTY;No;0;ON;;;;20;N;;;;;
 11.3562 +1105D;BRAHMI NUMBER THIRTY;No;0;ON;;;;30;N;;;;;
 11.3563 +1105E;BRAHMI NUMBER FORTY;No;0;ON;;;;40;N;;;;;
 11.3564 +1105F;BRAHMI NUMBER FIFTY;No;0;ON;;;;50;N;;;;;
 11.3565 +11060;BRAHMI NUMBER SIXTY;No;0;ON;;;;60;N;;;;;
 11.3566 +11061;BRAHMI NUMBER SEVENTY;No;0;ON;;;;70;N;;;;;
 11.3567 +11062;BRAHMI NUMBER EIGHTY;No;0;ON;;;;80;N;;;;;
 11.3568 +11063;BRAHMI NUMBER NINETY;No;0;ON;;;;90;N;;;;;
 11.3569 +11064;BRAHMI NUMBER ONE HUNDRED;No;0;ON;;;;100;N;;;;;
 11.3570 +11065;BRAHMI NUMBER ONE THOUSAND;No;0;ON;;;;1000;N;;;;;
 11.3571 +11066;BRAHMI DIGIT ZERO;Nd;0;L;;0;0;0;N;;;;;
 11.3572 +11067;BRAHMI DIGIT ONE;Nd;0;L;;1;1;1;N;;;;;
 11.3573 +11068;BRAHMI DIGIT TWO;Nd;0;L;;2;2;2;N;;;;;
 11.3574 +11069;BRAHMI DIGIT THREE;Nd;0;L;;3;3;3;N;;;;;
 11.3575 +1106A;BRAHMI DIGIT FOUR;Nd;0;L;;4;4;4;N;;;;;
 11.3576 +1106B;BRAHMI DIGIT FIVE;Nd;0;L;;5;5;5;N;;;;;
 11.3577 +1106C;BRAHMI DIGIT SIX;Nd;0;L;;6;6;6;N;;;;;
 11.3578 +1106D;BRAHMI DIGIT SEVEN;Nd;0;L;;7;7;7;N;;;;;
 11.3579 +1106E;BRAHMI DIGIT EIGHT;Nd;0;L;;8;8;8;N;;;;;
 11.3580 +1106F;BRAHMI DIGIT NINE;Nd;0;L;;9;9;9;N;;;;;
 11.3581 +11080;KAITHI SIGN CANDRABINDU;Mn;0;NSM;;;;;N;;;;;
 11.3582 +11081;KAITHI SIGN ANUSVARA;Mn;0;NSM;;;;;N;;;;;
 11.3583 +11082;KAITHI SIGN VISARGA;Mc;0;L;;;;;N;;;;;
 11.3584 +11083;KAITHI LETTER A;Lo;0;L;;;;;N;;;;;
 11.3585 +11084;KAITHI LETTER AA;Lo;0;L;;;;;N;;;;;
 11.3586 +11085;KAITHI LETTER I;Lo;0;L;;;;;N;;;;;
 11.3587 +11086;KAITHI LETTER II;Lo;0;L;;;;;N;;;;;
 11.3588 +11087;KAITHI LETTER U;Lo;0;L;;;;;N;;;;;
 11.3589 +11088;KAITHI LETTER UU;Lo;0;L;;;;;N;;;;;
 11.3590 +11089;KAITHI LETTER E;Lo;0;L;;;;;N;;;;;
 11.3591 +1108A;KAITHI LETTER AI;Lo;0;L;;;;;N;;;;;
 11.3592 +1108B;KAITHI LETTER O;Lo;0;L;;;;;N;;;;;
 11.3593 +1108C;KAITHI LETTER AU;Lo;0;L;;;;;N;;;;;
 11.3594 +1108D;KAITHI LETTER KA;Lo;0;L;;;;;N;;;;;
 11.3595 +1108E;KAITHI LETTER KHA;Lo;0;L;;;;;N;;;;;
 11.3596 +1108F;KAITHI LETTER GA;Lo;0;L;;;;;N;;;;;
 11.3597 +11090;KAITHI LETTER GHA;Lo;0;L;;;;;N;;;;;
 11.3598 +11091;KAITHI LETTER NGA;Lo;0;L;;;;;N;;;;;
 11.3599 +11092;KAITHI LETTER CA;Lo;0;L;;;;;N;;;;;
 11.3600 +11093;KAITHI LETTER CHA;Lo;0;L;;;;;N;;;;;
 11.3601 +11094;KAITHI LETTER JA;Lo;0;L;;;;;N;;;;;
 11.3602 +11095;KAITHI LETTER JHA;Lo;0;L;;;;;N;;;;;
 11.3603 +11096;KAITHI LETTER NYA;Lo;0;L;;;;;N;;;;;
 11.3604 +11097;KAITHI LETTER TTA;Lo;0;L;;;;;N;;;;;
 11.3605 +11098;KAITHI LETTER TTHA;Lo;0;L;;;;;N;;;;;
 11.3606 +11099;KAITHI LETTER DDA;Lo;0;L;;;;;N;;;;;
 11.3607 +1109A;KAITHI LETTER DDDHA;Lo;0;L;11099 110BA;;;;N;;;;;
 11.3608 +1109B;KAITHI LETTER DDHA;Lo;0;L;;;;;N;;;;;
 11.3609 +1109C;KAITHI LETTER RHA;Lo;0;L;1109B 110BA;;;;N;;;;;
 11.3610 +1109D;KAITHI LETTER NNA;Lo;0;L;;;;;N;;;;;
 11.3611 +1109E;KAITHI LETTER TA;Lo;0;L;;;;;N;;;;;
 11.3612 +1109F;KAITHI LETTER THA;Lo;0;L;;;;;N;;;;;
 11.3613 +110A0;KAITHI LETTER DA;Lo;0;L;;;;;N;;;;;
 11.3614 +110A1;KAITHI LETTER DHA;Lo;0;L;;;;;N;;;;;
 11.3615 +110A2;KAITHI LETTER NA;Lo;0;L;;;;;N;;;;;
 11.3616 +110A3;KAITHI LETTER PA;Lo;0;L;;;;;N;;;;;
 11.3617 +110A4;KAITHI LETTER PHA;Lo;0;L;;;;;N;;;;;
 11.3618 +110A5;KAITHI LETTER BA;Lo;0;L;;;;;N;;;;;
 11.3619 +110A6;KAITHI LETTER BHA;Lo;0;L;;;;;N;;;;;
 11.3620 +110A7;KAITHI LETTER MA;Lo;0;L;;;;;N;;;;;
 11.3621 +110A8;KAITHI LETTER YA;Lo;0;L;;;;;N;;;;;
 11.3622 +110A9;KAITHI LETTER RA;Lo;0;L;;;;;N;;;;;
 11.3623 +110AA;KAITHI LETTER LA;Lo;0;L;;;;;N;;;;;
 11.3624 +110AB;KAITHI LETTER VA;Lo;0;L;110A5 110BA;;;;N;;;;;
 11.3625 +110AC;KAITHI LETTER SHA;Lo;0;L;;;;;N;;;;;
 11.3626 +110AD;KAITHI LETTER SSA;Lo;0;L;;;;;N;;;;;
 11.3627 +110AE;KAITHI LETTER SA;Lo;0;L;;;;;N;;;;;
 11.3628 +110AF;KAITHI LETTER HA;Lo;0;L;;;;;N;;;;;
 11.3629 +110B0;KAITHI VOWEL SIGN AA;Mc;0;L;;;;;N;;;;;
 11.3630 +110B1;KAITHI VOWEL SIGN I;Mc;0;L;;;;;N;;;;;
 11.3631 +110B2;KAITHI VOWEL SIGN II;Mc;0;L;;;;;N;;;;;
 11.3632 +110B3;KAITHI VOWEL SIGN U;Mn;0;NSM;;;;;N;;;;;
 11.3633 +110B4;KAITHI VOWEL SIGN UU;Mn;0;NSM;;;;;N;;;;;
 11.3634 +110B5;KAITHI VOWEL SIGN E;Mn;0;NSM;;;;;N;;;;;
 11.3635 +110B6;KAITHI VOWEL SIGN AI;Mn;0;NSM;;;;;N;;;;;
 11.3636 +110B7;KAITHI VOWEL SIGN O;Mc;0;L;;;;;N;;;;;
 11.3637 +110B8;KAITHI VOWEL SIGN AU;Mc;0;L;;;;;N;;;;;
 11.3638 +110B9;KAITHI SIGN VIRAMA;Mn;9;NSM;;;;;N;;;;;
 11.3639 +110BA;KAITHI SIGN NUKTA;Mn;7;NSM;;;;;N;;;;;
 11.3640 +110BB;KAITHI ABBREVIATION SIGN;Po;0;L;;;;;N;;;;;
 11.3641 +110BC;KAITHI ENUMERATION SIGN;Po;0;L;;;;;N;;;;;
 11.3642 +110BD;KAITHI NUMBER SIGN;Cf;0;L;;;;;N;;;;;
 11.3643 +110BE;KAITHI SECTION MARK;Po;0;L;;;;;N;;;;;
 11.3644 +110BF;KAITHI DOUBLE SECTION MARK;Po;0;L;;;;;N;;;;;
 11.3645 +110C0;KAITHI DANDA;Po;0;L;;;;;N;;;;;
 11.3646 +110C1;KAITHI DOUBLE DANDA;Po;0;L;;;;;N;;;;;
 11.3647  12000;CUNEIFORM SIGN A;Lo;0;L;;;;;N;;;;;
 11.3648  12001;CUNEIFORM SIGN A TIMES A;Lo;0;L;;;;;N;;;;;
 11.3649  12002;CUNEIFORM SIGN A TIMES BAD;Lo;0;L;;;;;N;;;;;
 11.3650 @@ -16668,6 +18320,1648 @@
 11.3651  12471;CUNEIFORM PUNCTUATION SIGN VERTICAL COLON;Po;0;L;;;;;N;;;;;
 11.3652  12472;CUNEIFORM PUNCTUATION SIGN DIAGONAL COLON;Po;0;L;;;;;N;;;;;
 11.3653  12473;CUNEIFORM PUNCTUATION SIGN DIAGONAL TRICOLON;Po;0;L;;;;;N;;;;;
 11.3654 +13000;EGYPTIAN HIEROGLYPH A001;Lo;0;L;;;;;N;;;;;
 11.3655 +13001;EGYPTIAN HIEROGLYPH A002;Lo;0;L;;;;;N;;;;;
 11.3656 +13002;EGYPTIAN HIEROGLYPH A003;Lo;0;L;;;;;N;;;;;
 11.3657 +13003;EGYPTIAN HIEROGLYPH A004;Lo;0;L;;;;;N;;;;;
 11.3658 +13004;EGYPTIAN HIEROGLYPH A005;Lo;0;L;;;;;N;;;;;
 11.3659 +13005;EGYPTIAN HIEROGLYPH A005A;Lo;0;L;;;;;N;;;;;
 11.3660 +13006;EGYPTIAN HIEROGLYPH A006;Lo;0;L;;;;;N;;;;;
 11.3661 +13007;EGYPTIAN HIEROGLYPH A006A;Lo;0;L;;;;;N;;;;;
 11.3662 +13008;EGYPTIAN HIEROGLYPH A006B;Lo;0;L;;;;;N;;;;;
 11.3663 +13009;EGYPTIAN HIEROGLYPH A007;Lo;0;L;;;;;N;;;;;
 11.3664 +1300A;EGYPTIAN HIEROGLYPH A008;Lo;0;L;;;;;N;;;;;
 11.3665 +1300B;EGYPTIAN HIEROGLYPH A009;Lo;0;L;;;;;N;;;;;
 11.3666 +1300C;EGYPTIAN HIEROGLYPH A010;Lo;0;L;;;;;N;;;;;
 11.3667 +1300D;EGYPTIAN HIEROGLYPH A011;Lo;0;L;;;;;N;;;;;
 11.3668 +1300E;EGYPTIAN HIEROGLYPH A012;Lo;0;L;;;;;N;;;;;
 11.3669 +1300F;EGYPTIAN HIEROGLYPH A013;Lo;0;L;;;;;N;;;;;
 11.3670 +13010;EGYPTIAN HIEROGLYPH A014;Lo;0;L;;;;;N;;;;;
 11.3671 +13011;EGYPTIAN HIEROGLYPH A014A;Lo;0;L;;;;;N;;;;;
 11.3672 +13012;EGYPTIAN HIEROGLYPH A015;Lo;0;L;;;;;N;;;;;
 11.3673 +13013;EGYPTIAN HIEROGLYPH A016;Lo;0;L;;;;;N;;;;;
 11.3674 +13014;EGYPTIAN HIEROGLYPH A017;Lo;0;L;;;;;N;;;;;
 11.3675 +13015;EGYPTIAN HIEROGLYPH A017A;Lo;0;L;;;;;N;;;;;
 11.3676 +13016;EGYPTIAN HIEROGLYPH A018;Lo;0;L;;;;;N;;;;;
 11.3677 +13017;EGYPTIAN HIEROGLYPH A019;Lo;0;L;;;;;N;;;;;
 11.3678 +13018;EGYPTIAN HIEROGLYPH A020;Lo;0;L;;;;;N;;;;;
 11.3679 +13019;EGYPTIAN HIEROGLYPH A021;Lo;0;L;;;;;N;;;;;
 11.3680 +1301A;EGYPTIAN HIEROGLYPH A022;Lo;0;L;;;;;N;;;;;
 11.3681 +1301B;EGYPTIAN HIEROGLYPH A023;Lo;0;L;;;;;N;;;;;
 11.3682 +1301C;EGYPTIAN HIEROGLYPH A024;Lo;0;L;;;;;N;;;;;
 11.3683 +1301D;EGYPTIAN HIEROGLYPH A025;Lo;0;L;;;;;N;;;;;
 11.3684 +1301E;EGYPTIAN HIEROGLYPH A026;Lo;0;L;;;;;N;;;;;
 11.3685 +1301F;EGYPTIAN HIEROGLYPH A027;Lo;0;L;;;;;N;;;;;
 11.3686 +13020;EGYPTIAN HIEROGLYPH A028;Lo;0;L;;;;;N;;;;;
 11.3687 +13021;EGYPTIAN HIEROGLYPH A029;Lo;0;L;;;;;N;;;;;
 11.3688 +13022;EGYPTIAN HIEROGLYPH A030;Lo;0;L;;;;;N;;;;;
 11.3689 +13023;EGYPTIAN HIEROGLYPH A031;Lo;0;L;;;;;N;;;;;
 11.3690 +13024;EGYPTIAN HIEROGLYPH A032;Lo;0;L;;;;;N;;;;;
 11.3691 +13025;EGYPTIAN HIEROGLYPH A032A;Lo;0;L;;;;;N;;;;;
 11.3692 +13026;EGYPTIAN HIEROGLYPH A033;Lo;0;L;;;;;N;;;;;
 11.3693 +13027;EGYPTIAN HIEROGLYPH A034;Lo;0;L;;;;;N;;;;;
 11.3694 +13028;EGYPTIAN HIEROGLYPH A035;Lo;0;L;;;;;N;;;;;
 11.3695 +13029;EGYPTIAN HIEROGLYPH A036;Lo;0;L;;;;;N;;;;;
 11.3696 +1302A;EGYPTIAN HIEROGLYPH A037;Lo;0;L;;;;;N;;;;;
 11.3697 +1302B;EGYPTIAN HIEROGLYPH A038;Lo;0;L;;;;;N;;;;;
 11.3698 +1302C;EGYPTIAN HIEROGLYPH A039;Lo;0;L;;;;;N;;;;;
 11.3699 +1302D;EGYPTIAN HIEROGLYPH A040;Lo;0;L;;;;;N;;;;;
 11.3700 +1302E;EGYPTIAN HIEROGLYPH A040A;Lo;0;L;;;;;N;;;;;
 11.3701 +1302F;EGYPTIAN HIEROGLYPH A041;Lo;0;L;;;;;N;;;;;
 11.3702 +13030;EGYPTIAN HIEROGLYPH A042;Lo;0;L;;;;;N;;;;;
 11.3703 +13031;EGYPTIAN HIEROGLYPH A042A;Lo;0;L;;;;;N;;;;;
 11.3704 +13032;EGYPTIAN HIEROGLYPH A043;Lo;0;L;;;;;N;;;;;
 11.3705 +13033;EGYPTIAN HIEROGLYPH A043A;Lo;0;L;;;;;N;;;;;
 11.3706 +13034;EGYPTIAN HIEROGLYPH A044;Lo;0;L;;;;;N;;;;;
 11.3707 +13035;EGYPTIAN HIEROGLYPH A045;Lo;0;L;;;;;N;;;;;
 11.3708 +13036;EGYPTIAN HIEROGLYPH A045A;Lo;0;L;;;;;N;;;;;
 11.3709 +13037;EGYPTIAN HIEROGLYPH A046;Lo;0;L;;;;;N;;;;;
 11.3710 +13038;EGYPTIAN HIEROGLYPH A047;Lo;0;L;;;;;N;;;;;
 11.3711 +13039;EGYPTIAN HIEROGLYPH A048;Lo;0;L;;;;;N;;;;;
 11.3712 +1303A;EGYPTIAN HIEROGLYPH A049;Lo;0;L;;;;;N;;;;;
 11.3713 +1303B;EGYPTIAN HIEROGLYPH A050;Lo;0;L;;;;;N;;;;;
 11.3714 +1303C;EGYPTIAN HIEROGLYPH A051;Lo;0;L;;;;;N;;;;;
 11.3715 +1303D;EGYPTIAN HIEROGLYPH A052;Lo;0;L;;;;;N;;;;;
 11.3716 +1303E;EGYPTIAN HIEROGLYPH A053;Lo;0;L;;;;;N;;;;;
 11.3717 +1303F;EGYPTIAN HIEROGLYPH A054;Lo;0;L;;;;;N;;;;;
 11.3718 +13040;EGYPTIAN HIEROGLYPH A055;Lo;0;L;;;;;N;;;;;
 11.3719 +13041;EGYPTIAN HIEROGLYPH A056;Lo;0;L;;;;;N;;;;;
 11.3720 +13042;EGYPTIAN HIEROGLYPH A057;Lo;0;L;;;;;N;;;;;
 11.3721 +13043;EGYPTIAN HIEROGLYPH A058;Lo;0;L;;;;;N;;;;;
 11.3722 +13044;EGYPTIAN HIEROGLYPH A059;Lo;0;L;;;;;N;;;;;
 11.3723 +13045;EGYPTIAN HIEROGLYPH A060;Lo;0;L;;;;;N;;;;;
 11.3724 +13046;EGYPTIAN HIEROGLYPH A061;Lo;0;L;;;;;N;;;;;
 11.3725 +13047;EGYPTIAN HIEROGLYPH A062;Lo;0;L;;;;;N;;;;;
 11.3726 +13048;EGYPTIAN HIEROGLYPH A063;Lo;0;L;;;;;N;;;;;
 11.3727 +13049;EGYPTIAN HIEROGLYPH A064;Lo;0;L;;;;;N;;;;;
 11.3728 +1304A;EGYPTIAN HIEROGLYPH A065;Lo;0;L;;;;;N;;;;;
 11.3729 +1304B;EGYPTIAN HIEROGLYPH A066;Lo;0;L;;;;;N;;;;;
 11.3730 +1304C;EGYPTIAN HIEROGLYPH A067;Lo;0;L;;;;;N;;;;;
 11.3731 +1304D;EGYPTIAN HIEROGLYPH A068;Lo;0;L;;;;;N;;;;;
 11.3732 +1304E;EGYPTIAN HIEROGLYPH A069;Lo;0;L;;;;;N;;;;;
 11.3733 +1304F;EGYPTIAN HIEROGLYPH A070;Lo;0;L;;;;;N;;;;;
 11.3734 +13050;EGYPTIAN HIEROGLYPH B001;Lo;0;L;;;;;N;;;;;
 11.3735 +13051;EGYPTIAN HIEROGLYPH B002;Lo;0;L;;;;;N;;;;;
 11.3736 +13052;EGYPTIAN HIEROGLYPH B003;Lo;0;L;;;;;N;;;;;
 11.3737 +13053;EGYPTIAN HIEROGLYPH B004;Lo;0;L;;;;;N;;;;;
 11.3738 +13054;EGYPTIAN HIEROGLYPH B005;Lo;0;L;;;;;N;;;;;
 11.3739 +13055;EGYPTIAN HIEROGLYPH B005A;Lo;0;L;;;;;N;;;;;
 11.3740 +13056;EGYPTIAN HIEROGLYPH B006;Lo;0;L;;;;;N;;;;;
 11.3741 +13057;EGYPTIAN HIEROGLYPH B007;Lo;0;L;;;;;N;;;;;
 11.3742 +13058;EGYPTIAN HIEROGLYPH B008;Lo;0;L;;;;;N;;;;;
 11.3743 +13059;EGYPTIAN HIEROGLYPH B009;Lo;0;L;;;;;N;;;;;
 11.3744 +1305A;EGYPTIAN HIEROGLYPH C001;Lo;0;L;;;;;N;;;;;
 11.3745 +1305B;EGYPTIAN HIEROGLYPH C002;Lo;0;L;;;;;N;;;;;
 11.3746 +1305C;EGYPTIAN HIEROGLYPH C002A;Lo;0;L;;;;;N;;;;;
 11.3747 +1305D;EGYPTIAN HIEROGLYPH C002B;Lo;0;L;;;;;N;;;;;
 11.3748 +1305E;EGYPTIAN HIEROGLYPH C002C;Lo;0;L;;;;;N;;;;;
 11.3749 +1305F;EGYPTIAN HIEROGLYPH C003;Lo;0;L;;;;;N;;;;;
 11.3750 +13060;EGYPTIAN HIEROGLYPH C004;Lo;0;L;;;;;N;;;;;
 11.3751 +13061;EGYPTIAN HIEROGLYPH C005;Lo;0;L;;;;;N;;;;;
 11.3752 +13062;EGYPTIAN HIEROGLYPH C006;Lo;0;L;;;;;N;;;;;
 11.3753 +13063;EGYPTIAN HIEROGLYPH C007;Lo;0;L;;;;;N;;;;;
 11.3754 +13064;EGYPTIAN HIEROGLYPH C008;Lo;0;L;;;;;N;;;;;
 11.3755 +13065;EGYPTIAN HIEROGLYPH C009;Lo;0;L;;;;;N;;;;;
 11.3756 +13066;EGYPTIAN HIEROGLYPH C010;Lo;0;L;;;;;N;;;;;
 11.3757 +13067;EGYPTIAN HIEROGLYPH C010A;Lo;0;L;;;;;N;;;;;
 11.3758 +13068;EGYPTIAN HIEROGLYPH C011;Lo;0;L;;;;;N;;;;;
 11.3759 +13069;EGYPTIAN HIEROGLYPH C012;Lo;0;L;;;;;N;;;;;
 11.3760 +1306A;EGYPTIAN HIEROGLYPH C013;Lo;0;L;;;;;N;;;;;
 11.3761 +1306B;EGYPTIAN HIEROGLYPH C014;Lo;0;L;;;;;N;;;;;
 11.3762 +1306C;EGYPTIAN HIEROGLYPH C015;Lo;0;L;;;;;N;;;;;
 11.3763 +1306D;EGYPTIAN HIEROGLYPH C016;Lo;0;L;;;;;N;;;;;
 11.3764 +1306E;EGYPTIAN HIEROGLYPH C017;Lo;0;L;;;;;N;;;;;
 11.3765 +1306F;EGYPTIAN HIEROGLYPH C018;Lo;0;L;;;;;N;;;;;
 11.3766 +13070;EGYPTIAN HIEROGLYPH C019;Lo;0;L;;;;;N;;;;;
 11.3767 +13071;EGYPTIAN HIEROGLYPH C020;Lo;0;L;;;;;N;;;;;
 11.3768 +13072;EGYPTIAN HIEROGLYPH C021;Lo;0;L;;;;;N;;;;;
 11.3769 +13073;EGYPTIAN HIEROGLYPH C022;Lo;0;L;;;;;N;;;;;
 11.3770 +13074;EGYPTIAN HIEROGLYPH C023;Lo;0;L;;;;;N;;;;;
 11.3771 +13075;EGYPTIAN HIEROGLYPH C024;Lo;0;L;;;;;N;;;;;
 11.3772 +13076;EGYPTIAN HIEROGLYPH D001;Lo;0;L;;;;;N;;;;;
 11.3773 +13077;EGYPTIAN HIEROGLYPH D002;Lo;0;L;;;;;N;;;;;
 11.3774 +13078;EGYPTIAN HIEROGLYPH D003;Lo;0;L;;;;;N;;;;;
 11.3775 +13079;EGYPTIAN HIEROGLYPH D004;Lo;0;L;;;;;N;;;;;
 11.3776 +1307A;EGYPTIAN HIEROGLYPH D005;Lo;0;L;;;;;N;;;;;
 11.3777 +1307B;EGYPTIAN HIEROGLYPH D006;Lo;0;L;;;;;N;;;;;
 11.3778 +1307C;EGYPTIAN HIEROGLYPH D007;Lo;0;L;;;;;N;;;;;
 11.3779 +1307D;EGYPTIAN HIEROGLYPH D008;Lo;0;L;;;;;N;;;;;
 11.3780 +1307E;EGYPTIAN HIEROGLYPH D008A;Lo;0;L;;;;;N;;;;;
 11.3781 +1307F;EGYPTIAN HIEROGLYPH D009;Lo;0;L;;;;;N;;;;;
 11.3782 +13080;EGYPTIAN HIEROGLYPH D010;Lo;0;L;;;;;N;;;;;
 11.3783 +13081;EGYPTIAN HIEROGLYPH D011;Lo;0;L;;;;;N;;;;;
 11.3784 +13082;EGYPTIAN HIEROGLYPH D012;Lo;0;L;;;;;N;;;;;
 11.3785 +13083;EGYPTIAN HIEROGLYPH D013;Lo;0;L;;;;;N;;;;;
 11.3786 +13084;EGYPTIAN HIEROGLYPH D014;Lo;0;L;;;;;N;;;;;
 11.3787 +13085;EGYPTIAN HIEROGLYPH D015;Lo;0;L;;;;;N;;;;;
 11.3788 +13086;EGYPTIAN HIEROGLYPH D016;Lo;0;L;;;;;N;;;;;
 11.3789 +13087;EGYPTIAN HIEROGLYPH D017;Lo;0;L;;;;;N;;;;;
 11.3790 +13088;EGYPTIAN HIEROGLYPH D018;Lo;0;L;;;;;N;;;;;
 11.3791 +13089;EGYPTIAN HIEROGLYPH D019;Lo;0;L;;;;;N;;;;;
 11.3792 +1308A;EGYPTIAN HIEROGLYPH D020;Lo;0;L;;;;;N;;;;;
 11.3793 +1308B;EGYPTIAN HIEROGLYPH D021;Lo;0;L;;;;;N;;;;;
 11.3794 +1308C;EGYPTIAN HIEROGLYPH D022;Lo;0;L;;;;;N;;;;;
 11.3795 +1308D;EGYPTIAN HIEROGLYPH D023;Lo;0;L;;;;;N;;;;;
 11.3796 +1308E;EGYPTIAN HIEROGLYPH D024;Lo;0;L;;;;;N;;;;;
 11.3797 +1308F;EGYPTIAN HIEROGLYPH D025;Lo;0;L;;;;;N;;;;;
 11.3798 +13090;EGYPTIAN HIEROGLYPH D026;Lo;0;L;;;;;N;;;;;
 11.3799 +13091;EGYPTIAN HIEROGLYPH D027;Lo;0;L;;;;;N;;;;;
 11.3800 +13092;EGYPTIAN HIEROGLYPH D027A;Lo;0;L;;;;;N;;;;;
 11.3801 +13093;EGYPTIAN HIEROGLYPH D028;Lo;0;L;;;;;N;;;;;
 11.3802 +13094;EGYPTIAN HIEROGLYPH D029;Lo;0;L;;;;;N;;;;;
 11.3803 +13095;EGYPTIAN HIEROGLYPH D030;Lo;0;L;;;;;N;;;;;
 11.3804 +13096;EGYPTIAN HIEROGLYPH D031;Lo;0;L;;;;;N;;;;;
 11.3805 +13097;EGYPTIAN HIEROGLYPH D031A;Lo;0;L;;;;;N;;;;;
 11.3806 +13098;EGYPTIAN HIEROGLYPH D032;Lo;0;L;;;;;N;;;;;
 11.3807 +13099;EGYPTIAN HIEROGLYPH D033;Lo;0;L;;;;;N;;;;;
 11.3808 +1309A;EGYPTIAN HIEROGLYPH D034;Lo;0;L;;;;;N;;;;;
 11.3809 +1309B;EGYPTIAN HIEROGLYPH D034A;Lo;0;L;;;;;N;;;;;
 11.3810 +1309C;EGYPTIAN HIEROGLYPH D035;Lo;0;L;;;;;N;;;;;
 11.3811 +1309D;EGYPTIAN HIEROGLYPH D036;Lo;0;L;;;;;N;;;;;
 11.3812 +1309E;EGYPTIAN HIEROGLYPH D037;Lo;0;L;;;;;N;;;;;
 11.3813 +1309F;EGYPTIAN HIEROGLYPH D038;Lo;0;L;;;;;N;;;;;
 11.3814 +130A0;EGYPTIAN HIEROGLYPH D039;Lo;0;L;;;;;N;;;;;
 11.3815 +130A1;EGYPTIAN HIEROGLYPH D040;Lo;0;L;;;;;N;;;;;
 11.3816 +130A2;EGYPTIAN HIEROGLYPH D041;Lo;0;L;;;;;N;;;;;
 11.3817 +130A3;EGYPTIAN HIEROGLYPH D042;Lo;0;L;;;;;N;;;;;
 11.3818 +130A4;EGYPTIAN HIEROGLYPH D043;Lo;0;L;;;;;N;;;;;
 11.3819 +130A5;EGYPTIAN HIEROGLYPH D044;Lo;0;L;;;;;N;;;;;
 11.3820 +130A6;EGYPTIAN HIEROGLYPH D045;Lo;0;L;;;;;N;;;;;
 11.3821 +130A7;EGYPTIAN HIEROGLYPH D046;Lo;0;L;;;;;N;;;;;
 11.3822 +130A8;EGYPTIAN HIEROGLYPH D046A;Lo;0;L;;;;;N;;;;;
 11.3823 +130A9;EGYPTIAN HIEROGLYPH D047;Lo;0;L;;;;;N;;;;;
 11.3824 +130AA;EGYPTIAN HIEROGLYPH D048;Lo;0;L;;;;;N;;;;;
 11.3825 +130AB;EGYPTIAN HIEROGLYPH D048A;Lo;0;L;;;;;N;;;;;
 11.3826 +130AC;EGYPTIAN HIEROGLYPH D049;Lo;0;L;;;;;N;;;;;
 11.3827 +130AD;EGYPTIAN HIEROGLYPH D050;Lo;0;L;;;;;N;;;;;
 11.3828 +130AE;EGYPTIAN HIEROGLYPH D050A;Lo;0;L;;;;;N;;;;;
 11.3829 +130AF;EGYPTIAN HIEROGLYPH D050B;Lo;0;L;;;;;N;;;;;
 11.3830 +130B0;EGYPTIAN HIEROGLYPH D050C;Lo;0;L;;;;;N;;;;;
 11.3831 +130B1;EGYPTIAN HIEROGLYPH D050D;Lo;0;L;;;;;N;;;;;
 11.3832 +130B2;EGYPTIAN HIEROGLYPH D050E;Lo;0;L;;;;;N;;;;;
 11.3833 +130B3;EGYPTIAN HIEROGLYPH D050F;Lo;0;L;;;;;N;;;;;
 11.3834 +130B4;EGYPTIAN HIEROGLYPH D050G;Lo;0;L;;;;;N;;;;;
 11.3835 +130B5;EGYPTIAN HIEROGLYPH D050H;Lo;0;L;;;;;N;;;;;
 11.3836 +130B6;EGYPTIAN HIEROGLYPH D050I;Lo;0;L;;;;;N;;;;;
 11.3837 +130B7;EGYPTIAN HIEROGLYPH D051;Lo;0;L;;;;;N;;;;;
 11.3838 +130B8;EGYPTIAN HIEROGLYPH D052;Lo;0;L;;;;;N;;;;;
 11.3839 +130B9;EGYPTIAN HIEROGLYPH D052A;Lo;0;L;;;;;N;;;;;
 11.3840 +130BA;EGYPTIAN HIEROGLYPH D053;Lo;0;L;;;;;N;;;;;
 11.3841 +130BB;EGYPTIAN HIEROGLYPH D054;Lo;0;L;;;;;N;;;;;
 11.3842 +130BC;EGYPTIAN HIEROGLYPH D054A;Lo;0;L;;;;;N;;;;;
 11.3843 +130BD;EGYPTIAN HIEROGLYPH D055;Lo;0;L;;;;;N;;;;;
 11.3844 +130BE;EGYPTIAN HIEROGLYPH D056;Lo;0;L;;;;;N;;;;;
 11.3845 +130BF;EGYPTIAN HIEROGLYPH D057;Lo;0;L;;;;;N;;;;;
 11.3846 +130C0;EGYPTIAN HIEROGLYPH D058;Lo;0;L;;;;;N;;;;;
 11.3847 +130C1;EGYPTIAN HIEROGLYPH D059;Lo;0;L;;;;;N;;;;;
 11.3848 +130C2;EGYPTIAN HIEROGLYPH D060;Lo;0;L;;;;;N;;;;;
 11.3849 +130C3;EGYPTIAN HIEROGLYPH D061;Lo;0;L;;;;;N;;;;;
 11.3850 +130C4;EGYPTIAN HIEROGLYPH D062;Lo;0;L;;;;;N;;;;;
 11.3851 +130C5;EGYPTIAN HIEROGLYPH D063;Lo;0;L;;;;;N;;;;;
 11.3852 +130C6;EGYPTIAN HIEROGLYPH D064;Lo;0;L;;;;;N;;;;;
 11.3853 +130C7;EGYPTIAN HIEROGLYPH D065;Lo;0;L;;;;;N;;;;;
 11.3854 +130C8;EGYPTIAN HIEROGLYPH D066;Lo;0;L;;;;;N;;;;;
 11.3855 +130C9;EGYPTIAN HIEROGLYPH D067;Lo;0;L;;;;;N;;;;;
 11.3856 +130CA;EGYPTIAN HIEROGLYPH D067A;Lo;0;L;;;;;N;;;;;
 11.3857 +130CB;EGYPTIAN HIEROGLYPH D067B;Lo;0;L;;;;;N;;;;;
 11.3858 +130CC;EGYPTIAN HIEROGLYPH D067C;Lo;0;L;;;;;N;;;;;
 11.3859 +130CD;EGYPTIAN HIEROGLYPH D067D;Lo;0;L;;;;;N;;;;;
 11.3860 +130CE;EGYPTIAN HIEROGLYPH D067E;Lo;0;L;;;;;N;;;;;
 11.3861 +130CF;EGYPTIAN HIEROGLYPH D067F;Lo;0;L;;;;;N;;;;;
 11.3862 +130D0;EGYPTIAN HIEROGLYPH D067G;Lo;0;L;;;;;N;;;;;
 11.3863 +130D1;EGYPTIAN HIEROGLYPH D067H;Lo;0;L;;;;;N;;;;;
 11.3864 +130D2;EGYPTIAN HIEROGLYPH E001;Lo;0;L;;;;;N;;;;;
 11.3865 +130D3;EGYPTIAN HIEROGLYPH E002;Lo;0;L;;;;;N;;;;;
 11.3866 +130D4;EGYPTIAN HIEROGLYPH E003;Lo;0;L;;;;;N;;;;;
 11.3867 +130D5;EGYPTIAN HIEROGLYPH E004;Lo;0;L;;;;;N;;;;;
 11.3868 +130D6;EGYPTIAN HIEROGLYPH E005;Lo;0;L;;;;;N;;;;;
 11.3869 +130D7;EGYPTIAN HIEROGLYPH E006;Lo;0;L;;;;;N;;;;;
 11.3870 +130D8;EGYPTIAN HIEROGLYPH E007;Lo;0;L;;;;;N;;;;;
 11.3871 +130D9;EGYPTIAN HIEROGLYPH E008;Lo;0;L;;;;;N;;;;;
 11.3872 +130DA;EGYPTIAN HIEROGLYPH E008A;Lo;0;L;;;;;N;;;;;
 11.3873 +130DB;EGYPTIAN HIEROGLYPH E009;Lo;0;L;;;;;N;;;;;
 11.3874 +130DC;EGYPTIAN HIEROGLYPH E009A;Lo;0;L;;;;;N;;;;;
 11.3875 +130DD;EGYPTIAN HIEROGLYPH E010;Lo;0;L;;;;;N;;;;;
 11.3876 +130DE;EGYPTIAN HIEROGLYPH E011;Lo;0;L;;;;;N;;;;;
 11.3877 +130DF;EGYPTIAN HIEROGLYPH E012;Lo;0;L;;;;;N;;;;;
 11.3878 +130E0;EGYPTIAN HIEROGLYPH E013;Lo;0;L;;;;;N;;;;;
 11.3879 +130E1;EGYPTIAN HIEROGLYPH E014;Lo;0;L;;;;;N;;;;;
 11.3880 +130E2;EGYPTIAN HIEROGLYPH E015;Lo;0;L;;;;;N;;;;;
 11.3881 +130E3;EGYPTIAN HIEROGLYPH E016;Lo;0;L;;;;;N;;;;;
 11.3882 +130E4;EGYPTIAN HIEROGLYPH E016A;Lo;0;L;;;;;N;;;;;
 11.3883 +130E5;EGYPTIAN HIEROGLYPH E017;Lo;0;L;;;;;N;;;;;
 11.3884 +130E6;EGYPTIAN HIEROGLYPH E017A;Lo;0;L;;;;;N;;;;;
 11.3885 +130E7;EGYPTIAN HIEROGLYPH E018;Lo;0;L;;;;;N;;;;;
 11.3886 +130E8;EGYPTIAN HIEROGLYPH E019;Lo;0;L;;;;;N;;;;;
 11.3887 +130E9;EGYPTIAN HIEROGLYPH E020;Lo;0;L;;;;;N;;;;;
 11.3888 +130EA;EGYPTIAN HIEROGLYPH E020A;Lo;0;L;;;;;N;;;;;
 11.3889 +130EB;EGYPTIAN HIEROGLYPH E021;Lo;0;L;;;;;N;;;;;
 11.3890 +130EC;EGYPTIAN HIEROGLYPH E022;Lo;0;L;;;;;N;;;;;
 11.3891 +130ED;EGYPTIAN HIEROGLYPH E023;Lo;0;L;;;;;N;;;;;
 11.3892 +130EE;EGYPTIAN HIEROGLYPH E024;Lo;0;L;;;;;N;;;;;
 11.3893 +130EF;EGYPTIAN HIEROGLYPH E025;Lo;0;L;;;;;N;;;;;
 11.3894 +130F0;EGYPTIAN HIEROGLYPH E026;Lo;0;L;;;;;N;;;;;
 11.3895 +130F1;EGYPTIAN HIEROGLYPH E027;Lo;0;L;;;;;N;;;;;
 11.3896 +130F2;EGYPTIAN HIEROGLYPH E028;Lo;0;L;;;;;N;;;;;
 11.3897 +130F3;EGYPTIAN HIEROGLYPH E028A;Lo;0;L;;;;;N;;;;;
 11.3898 +130F4;EGYPTIAN HIEROGLYPH E029;Lo;0;L;;;;;N;;;;;
 11.3899 +130F5;EGYPTIAN HIEROGLYPH E030;Lo;0;L;;;;;N;;;;;
 11.3900 +130F6;EGYPTIAN HIEROGLYPH E031;Lo;0;L;;;;;N;;;;;
 11.3901 +130F7;EGYPTIAN HIEROGLYPH E032;Lo;0;L;;;;;N;;;;;
 11.3902 +130F8;EGYPTIAN HIEROGLYPH E033;Lo;0;L;;;;;N;;;;;
 11.3903 +130F9;EGYPTIAN HIEROGLYPH E034;Lo;0;L;;;;;N;;;;;
 11.3904 +130FA;EGYPTIAN HIEROGLYPH E034A;Lo;0;L;;;;;N;;;;;
 11.3905 +130FB;EGYPTIAN HIEROGLYPH E036;Lo;0;L;;;;;N;;;;;
 11.3906 +130FC;EGYPTIAN HIEROGLYPH E037;Lo;0;L;;;;;N;;;;;
 11.3907 +130FD;EGYPTIAN HIEROGLYPH E038;Lo;0;L;;;;;N;;;;;
 11.3908 +130FE;EGYPTIAN HIEROGLYPH F001;Lo;0;L;;;;;N;;;;;
 11.3909 +130FF;EGYPTIAN HIEROGLYPH F001A;Lo;0;L;;;;;N;;;;;
 11.3910 +13100;EGYPTIAN HIEROGLYPH F002;Lo;0;L;;;;;N;;;;;
 11.3911 +13101;EGYPTIAN HIEROGLYPH F003;Lo;0;L;;;;;N;;;;;
 11.3912 +13102;EGYPTIAN HIEROGLYPH F004;Lo;0;L;;;;;N;;;;;
 11.3913 +13103;EGYPTIAN HIEROGLYPH F005;Lo;0;L;;;;;N;;;;;
 11.3914 +13104;EGYPTIAN HIEROGLYPH F006;Lo;0;L;;;;;N;;;;;
 11.3915 +13105;EGYPTIAN HIEROGLYPH F007;Lo;0;L;;;;;N;;;;;
 11.3916 +13106;EGYPTIAN HIEROGLYPH F008;Lo;0;L;;;;;N;;;;;
 11.3917 +13107;EGYPTIAN HIEROGLYPH F009;Lo;0;L;;;;;N;;;;;
 11.3918 +13108;EGYPTIAN HIEROGLYPH F010;Lo;0;L;;;;;N;;;;;
 11.3919 +13109;EGYPTIAN HIEROGLYPH F011;Lo;0;L;;;;;N;;;;;
 11.3920 +1310A;EGYPTIAN HIEROGLYPH F012;Lo;0;L;;;;;N;;;;;
 11.3921 +1310B;EGYPTIAN HIEROGLYPH F013;Lo;0;L;;;;;N;;;;;
 11.3922 +1310C;EGYPTIAN HIEROGLYPH F013A;Lo;0;L;;;;;N;;;;;
 11.3923 +1310D;EGYPTIAN HIEROGLYPH F014;Lo;0;L;;;;;N;;;;;
 11.3924 +1310E;EGYPTIAN HIEROGLYPH F015;Lo;0;L;;;;;N;;;;;
 11.3925 +1310F;EGYPTIAN HIEROGLYPH F016;Lo;0;L;;;;;N;;;;;
 11.3926 +13110;EGYPTIAN HIEROGLYPH F017;Lo;0;L;;;;;N;;;;;
 11.3927 +13111;EGYPTIAN HIEROGLYPH F018;Lo;0;L;;;;;N;;;;;
 11.3928 +13112;EGYPTIAN HIEROGLYPH F019;Lo;0;L;;;;;N;;;;;
 11.3929 +13113;EGYPTIAN HIEROGLYPH F020;Lo;0;L;;;;;N;;;;;
 11.3930 +13114;EGYPTIAN HIEROGLYPH F021;Lo;0;L;;;;;N;;;;;
 11.3931 +13115;EGYPTIAN HIEROGLYPH F021A;Lo;0;L;;;;;N;;;;;
 11.3932 +13116;EGYPTIAN HIEROGLYPH F022;Lo;0;L;;;;;N;;;;;
 11.3933 +13117;EGYPTIAN HIEROGLYPH F023;Lo;0;L;;;;;N;;;;;
 11.3934 +13118;EGYPTIAN HIEROGLYPH F024;Lo;0;L;;;;;N;;;;;
 11.3935 +13119;EGYPTIAN HIEROGLYPH F025;Lo;0;L;;;;;N;;;;;
 11.3936 +1311A;EGYPTIAN HIEROGLYPH F026;Lo;0;L;;;;;N;;;;;
 11.3937 +1311B;EGYPTIAN HIEROGLYPH F027;Lo;0;L;;;;;N;;;;;
 11.3938 +1311C;EGYPTIAN HIEROGLYPH F028;Lo;0;L;;;;;N;;;;;
 11.3939 +1311D;EGYPTIAN HIEROGLYPH F029;Lo;0;L;;;;;N;;;;;
 11.3940 +1311E;EGYPTIAN HIEROGLYPH F030;Lo;0;L;;;;;N;;;;;
 11.3941 +1311F;EGYPTIAN HIEROGLYPH F031;Lo;0;L;;;;;N;;;;;
 11.3942 +13120;EGYPTIAN HIEROGLYPH F031A;Lo;0;L;;;;;N;;;;;
 11.3943 +13121;EGYPTIAN HIEROGLYPH F032;Lo;0;L;;;;;N;;;;;
 11.3944 +13122;EGYPTIAN HIEROGLYPH F033;Lo;0;L;;;;;N;;;;;
 11.3945 +13123;EGYPTIAN HIEROGLYPH F034;Lo;0;L;;;;;N;;;;;
 11.3946 +13124;EGYPTIAN HIEROGLYPH F035;Lo;0;L;;;;;N;;;;;
 11.3947 +13125;EGYPTIAN HIEROGLYPH F036;Lo;0;L;;;;;N;;;;;
 11.3948 +13126;EGYPTIAN HIEROGLYPH F037;Lo;0;L;;;;;N;;;;;
 11.3949 +13127;EGYPTIAN HIEROGLYPH F037A;Lo;0;L;;;;;N;;;;;
 11.3950 +13128;EGYPTIAN HIEROGLYPH F038;Lo;0;L;;;;;N;;;;;
 11.3951 +13129;EGYPTIAN HIEROGLYPH F038A;Lo;0;L;;;;;N;;;;;
 11.3952 +1312A;EGYPTIAN HIEROGLYPH F039;Lo;0;L;;;;;N;;;;;
 11.3953 +1312B;EGYPTIAN HIEROGLYPH F040;Lo;0;L;;;;;N;;;;;
 11.3954 +1312C;EGYPTIAN HIEROGLYPH F041;Lo;0;L;;;;;N;;;;;
 11.3955 +1312D;EGYPTIAN HIEROGLYPH F042;Lo;0;L;;;;;N;;;;;
 11.3956 +1312E;EGYPTIAN HIEROGLYPH F043;Lo;0;L;;;;;N;;;;;
 11.3957 +1312F;EGYPTIAN HIEROGLYPH F044;Lo;0;L;;;;;N;;;;;
 11.3958 +13130;EGYPTIAN HIEROGLYPH F045;Lo;0;L;;;;;N;;;;;
 11.3959 +13131;EGYPTIAN HIEROGLYPH F045A;Lo;0;L;;;;;N;;;;;
 11.3960 +13132;EGYPTIAN HIEROGLYPH F046;Lo;0;L;;;;;N;;;;;
 11.3961 +13133;EGYPTIAN HIEROGLYPH F046A;Lo;0;L;;;;;N;;;;;
 11.3962 +13134;EGYPTIAN HIEROGLYPH F047;Lo;0;L;;;;;N;;;;;
 11.3963 +13135;EGYPTIAN HIEROGLYPH F047A;Lo;0;L;;;;;N;;;;;
 11.3964 +13136;EGYPTIAN HIEROGLYPH F048;Lo;0;L;;;;;N;;;;;
 11.3965 +13137;EGYPTIAN HIEROGLYPH F049;Lo;0;L;;;;;N;;;;;
 11.3966 +13138;EGYPTIAN HIEROGLYPH F050;Lo;0;L;;;;;N;;;;;
 11.3967 +13139;EGYPTIAN HIEROGLYPH F051;Lo;0;L;;;;;N;;;;;
 11.3968 +1313A;EGYPTIAN HIEROGLYPH F051A;Lo;0;L;;;;;N;;;;;
 11.3969 +1313B;EGYPTIAN HIEROGLYPH F051B;Lo;0;L;;;;;N;;;;;
 11.3970 +1313C;EGYPTIAN HIEROGLYPH F051C;Lo;0;L;;;;;N;;;;;
 11.3971 +1313D;EGYPTIAN HIEROGLYPH F052;Lo;0;L;;;;;N;;;;;
 11.3972 +1313E;EGYPTIAN HIEROGLYPH F053;Lo;0;L;;;;;N;;;;;
 11.3973 +1313F;EGYPTIAN HIEROGLYPH G001;Lo;0;L;;;;;N;;;;;
 11.3974 +13140;EGYPTIAN HIEROGLYPH G002;Lo;0;L;;;;;N;;;;;
 11.3975 +13141;EGYPTIAN HIEROGLYPH G003;Lo;0;L;;;;;N;;;;;
 11.3976 +13142;EGYPTIAN HIEROGLYPH G004;Lo;0;L;;;;;N;;;;;
 11.3977 +13143;EGYPTIAN HIEROGLYPH G005;Lo;0;L;;;;;N;;;;;
 11.3978 +13144;EGYPTIAN HIEROGLYPH G006;Lo;0;L;;;;;N;;;;;
 11.3979 +13145;EGYPTIAN HIEROGLYPH G006A;Lo;0;L;;;;;N;;;;;
 11.3980 +13146;EGYPTIAN HIEROGLYPH G007;Lo;0;L;;;;;N;;;;;
 11.3981 +13147;EGYPTIAN HIEROGLYPH G007A;Lo;0;L;;;;;N;;;;;
 11.3982 +13148;EGYPTIAN HIEROGLYPH G007B;Lo;0;L;;;;;N;;;;;
 11.3983 +13149;EGYPTIAN HIEROGLYPH G008;Lo;0;L;;;;;N;;;;;
 11.3984 +1314A;EGYPTIAN HIEROGLYPH G009;Lo;0;L;;;;;N;;;;;
 11.3985 +1314B;EGYPTIAN HIEROGLYPH G010;Lo;0;L;;;;;N;;;;;
 11.3986 +1314C;EGYPTIAN HIEROGLYPH G011;Lo;0;L;;;;;N;;;;;
 11.3987 +1314D;EGYPTIAN HIEROGLYPH G011A;Lo;0;L;;;;;N;;;;;
 11.3988 +1314E;EGYPTIAN HIEROGLYPH G012;Lo;0;L;;;;;N;;;;;
 11.3989 +1314F;EGYPTIAN HIEROGLYPH G013;Lo;0;L;;;;;N;;;;;
 11.3990 +13150;EGYPTIAN HIEROGLYPH G014;Lo;0;L;;;;;N;;;;;
 11.3991 +13151;EGYPTIAN HIEROGLYPH G015;Lo;0;L;;;;;N;;;;;
 11.3992 +13152;EGYPTIAN HIEROGLYPH G016;Lo;0;L;;;;;N;;;;;
 11.3993 +13153;EGYPTIAN HIEROGLYPH G017;Lo;0;L;;;;;N;;;;;
 11.3994 +13154;EGYPTIAN HIEROGLYPH G018;Lo;0;L;;;;;N;;;;;
 11.3995 +13155;EGYPTIAN HIEROGLYPH G019;Lo;0;L;;;;;N;;;;;
 11.3996 +13156;EGYPTIAN HIEROGLYPH G020;Lo;0;L;;;;;N;;;;;
 11.3997 +13157;EGYPTIAN HIEROGLYPH G020A;Lo;0;L;;;;;N;;;;;
 11.3998 +13158;EGYPTIAN HIEROGLYPH G021;Lo;0;L;;;;;N;;;;;
 11.3999 +13159;EGYPTIAN HIEROGLYPH G022;Lo;0;L;;;;;N;;;;;
 11.4000 +1315A;EGYPTIAN HIEROGLYPH G023;Lo;0;L;;;;;N;;;;;
 11.4001 +1315B;EGYPTIAN HIEROGLYPH G024;Lo;0;L;;;;;N;;;;;
 11.4002 +1315C;EGYPTIAN HIEROGLYPH G025;Lo;0;L;;;;;N;;;;;
 11.4003 +1315D;EGYPTIAN HIEROGLYPH G026;Lo;0;L;;;;;N;;;;;
 11.4004 +1315E;EGYPTIAN HIEROGLYPH G026A;Lo;0;L;;;;;N;;;;;
 11.4005 +1315F;EGYPTIAN HIEROGLYPH G027;Lo;0;L;;;;;N;;;;;
 11.4006 +13160;EGYPTIAN HIEROGLYPH G028;Lo;0;L;;;;;N;;;;;
 11.4007 +13161;EGYPTIAN HIEROGLYPH G029;Lo;0;L;;;;;N;;;;;
 11.4008 +13162;EGYPTIAN HIEROGLYPH G030;Lo;0;L;;;;;N;;;;;
 11.4009 +13163;EGYPTIAN HIEROGLYPH G031;Lo;0;L;;;;;N;;;;;
 11.4010 +13164;EGYPTIAN HIEROGLYPH G032;Lo;0;L;;;;;N;;;;;
 11.4011 +13165;EGYPTIAN HIEROGLYPH G033;Lo;0;L;;;;;N;;;;;
 11.4012 +13166;EGYPTIAN HIEROGLYPH G034;Lo;0;L;;;;;N;;;;;
 11.4013 +13167;EGYPTIAN HIEROGLYPH G035;Lo;0;L;;;;;N;;;;;
 11.4014 +13168;EGYPTIAN HIEROGLYPH G036;Lo;0;L;;;;;N;;;;;
 11.4015 +13169;EGYPTIAN HIEROGLYPH G036A;Lo;0;L;;;;;N;;;;;
 11.4016 +1316A;EGYPTIAN HIEROGLYPH G037;Lo;0;L;;;;;N;;;;;
 11.4017 +1316B;EGYPTIAN HIEROGLYPH G037A;Lo;0;L;;;;;N;;;;;
 11.4018 +1316C;EGYPTIAN HIEROGLYPH G038;Lo;0;L;;;;;N;;;;;
 11.4019 +1316D;EGYPTIAN HIEROGLYPH G039;Lo;0;L;;;;;N;;;;;
 11.4020 +1316E;EGYPTIAN HIEROGLYPH G040;Lo;0;L;;;;;N;;;;;
 11.4021 +1316F;EGYPTIAN HIEROGLYPH G041;Lo;0;L;;;;;N;;;;;
 11.4022 +13170;EGYPTIAN HIEROGLYPH G042;Lo;0;L;;;;;N;;;;;
 11.4023 +13171;EGYPTIAN HIEROGLYPH G043;Lo;0;L;;;;;N;;;;;
 11.4024 +13172;EGYPTIAN HIEROGLYPH G043A;Lo;0;L;;;;;N;;;;;
 11.4025 +13173;EGYPTIAN HIEROGLYPH G044;Lo;0;L;;;;;N;;;;;
 11.4026 +13174;EGYPTIAN HIEROGLYPH G045;Lo;0;L;;;;;N;;;;;
 11.4027 +13175;EGYPTIAN HIEROGLYPH G045A;Lo;0;L;;;;;N;;;;;
 11.4028 +13176;EGYPTIAN HIEROGLYPH G046;Lo;0;L;;;;;N;;;;;
 11.4029 +13177;EGYPTIAN HIEROGLYPH G047;Lo;0;L;;;;;N;;;;;
 11.4030 +13178;EGYPTIAN HIEROGLYPH G048;Lo;0;L;;;;;N;;;;;
 11.4031 +13179;EGYPTIAN HIEROGLYPH G049;Lo;0;L;;;;;N;;;;;
 11.4032 +1317A;EGYPTIAN HIEROGLYPH G050;Lo;0;L;;;;;N;;;;;
 11.4033 +1317B;EGYPTIAN HIEROGLYPH G051;Lo;0;L;;;;;N;;;;;
 11.4034 +1317C;EGYPTIAN HIEROGLYPH G052;Lo;0;L;;;;;N;;;;;
 11.4035 +1317D;EGYPTIAN HIEROGLYPH G053;Lo;0;L;;;;;N;;;;;
 11.4036 +1317E;EGYPTIAN HIEROGLYPH G054;Lo;0;L;;;;;N;;;;;
 11.4037 +1317F;EGYPTIAN HIEROGLYPH H001;Lo;0;L;;;;;N;;;;;
 11.4038 +13180;EGYPTIAN HIEROGLYPH H002;Lo;0;L;;;;;N;;;;;
 11.4039 +13181;EGYPTIAN HIEROGLYPH H003;Lo;0;L;;;;;N;;;;;
 11.4040 +13182;EGYPTIAN HIEROGLYPH H004;Lo;0;L;;;;;N;;;;;
 11.4041 +13183;EGYPTIAN HIEROGLYPH H005;Lo;0;L;;;;;N;;;;;
 11.4042 +13184;EGYPTIAN HIEROGLYPH H006;Lo;0;L;;;;;N;;;;;
 11.4043 +13185;EGYPTIAN HIEROGLYPH H006A;Lo;0;L;;;;;N;;;;;
 11.4044 +13186;EGYPTIAN HIEROGLYPH H007;Lo;0;L;;;;;N;;;;;
 11.4045 +13187;EGYPTIAN HIEROGLYPH H008;Lo;0;L;;;;;N;;;;;
 11.4046 +13188;EGYPTIAN HIEROGLYPH I001;Lo;0;L;;;;;N;;;;;
 11.4047 +13189;EGYPTIAN HIEROGLYPH I002;Lo;0;L;;;;;N;;;;;
 11.4048 +1318A;EGYPTIAN HIEROGLYPH I003;Lo;0;L;;;;;N;;;;;
 11.4049 +1318B;EGYPTIAN HIEROGLYPH I004;Lo;0;L;;;;;N;;;;;
 11.4050 +1318C;EGYPTIAN HIEROGLYPH I005;Lo;0;L;;;;;N;;;;;
 11.4051 +1318D;EGYPTIAN HIEROGLYPH I005A;Lo;0;L;;;;;N;;;;;
 11.4052 +1318E;EGYPTIAN HIEROGLYPH I006;Lo;0;L;;;;;N;;;;;
 11.4053 +1318F;EGYPTIAN HIEROGLYPH I007;Lo;0;L;;;;;N;;;;;
 11.4054 +13190;EGYPTIAN HIEROGLYPH I008;Lo;0;L;;;;;N;;;;;
 11.4055 +13191;EGYPTIAN HIEROGLYPH I009;Lo;0;L;;;;;N;;;;;
 11.4056 +13192;EGYPTIAN HIEROGLYPH I009A;Lo;0;L;;;;;N;;;;;
 11.4057 +13193;EGYPTIAN HIEROGLYPH I010;Lo;0;L;;;;;N;;;;;
 11.4058 +13194;EGYPTIAN HIEROGLYPH I010A;Lo;0;L;;;;;N;;;;;
 11.4059 +13195;EGYPTIAN HIEROGLYPH I011;Lo;0;L;;;;;N;;;;;
 11.4060 +13196;EGYPTIAN HIEROGLYPH I011A;Lo;0;L;;;;;N;;;;;
 11.4061 +13197;EGYPTIAN HIEROGLYPH I012;Lo;0;L;;;;;N;;;;;
 11.4062 +13198;EGYPTIAN HIEROGLYPH I013;Lo;0;L;;;;;N;;;;;
 11.4063 +13199;EGYPTIAN HIEROGLYPH I014;Lo;0;L;;;;;N;;;;;
 11.4064 +1319A;EGYPTIAN HIEROGLYPH I015;Lo;0;L;;;;;N;;;;;
 11.4065 +1319B;EGYPTIAN HIEROGLYPH K001;Lo;0;L;;;;;N;;;;;
 11.4066 +1319C;EGYPTIAN HIEROGLYPH K002;Lo;0;L;;;;;N;;;;;
 11.4067 +1319D;EGYPTIAN HIEROGLYPH K003;Lo;0;L;;;;;N;;;;;
 11.4068 +1319E;EGYPTIAN HIEROGLYPH K004;Lo;0;L;;;;;N;;;;;
 11.4069 +1319F;EGYPTIAN HIEROGLYPH K005;Lo;0;L;;;;;N;;;;;
 11.4070 +131A0;EGYPTIAN HIEROGLYPH K006;Lo;0;L;;;;;N;;;;;
 11.4071 +131A1;EGYPTIAN HIEROGLYPH K007;Lo;0;L;;;;;N;;;;;
 11.4072 +131A2;EGYPTIAN HIEROGLYPH K008;Lo;0;L;;;;;N;;;;;
 11.4073 +131A3;EGYPTIAN HIEROGLYPH L001;Lo;0;L;;;;;N;;;;;
 11.4074 +131A4;EGYPTIAN HIEROGLYPH L002;Lo;0;L;;;;;N;;;;;
 11.4075 +131A5;EGYPTIAN HIEROGLYPH L002A;Lo;0;L;;;;;N;;;;;
 11.4076 +131A6;EGYPTIAN HIEROGLYPH L003;Lo;0;L;;;;;N;;;;;
 11.4077 +131A7;EGYPTIAN HIEROGLYPH L004;Lo;0;L;;;;;N;;;;;
 11.4078 +131A8;EGYPTIAN HIEROGLYPH L005;Lo;0;L;;;;;N;;;;;
 11.4079 +131A9;EGYPTIAN HIEROGLYPH L006;Lo;0;L;;;;;N;;;;;
 11.4080 +131AA;EGYPTIAN HIEROGLYPH L006A;Lo;0;L;;;;;N;;;;;
 11.4081 +131AB;EGYPTIAN HIEROGLYPH L007;Lo;0;L;;;;;N;;;;;
 11.4082 +131AC;EGYPTIAN HIEROGLYPH L008;Lo;0;L;;;;;N;;;;;
 11.4083 +131AD;EGYPTIAN HIEROGLYPH M001;Lo;0;L;;;;;N;;;;;
 11.4084 +131AE;EGYPTIAN HIEROGLYPH M001A;Lo;0;L;;;;;N;;;;;
 11.4085 +131AF;EGYPTIAN HIEROGLYPH M001B;Lo;0;L;;;;;N;;;;;
 11.4086 +131B0;EGYPTIAN HIEROGLYPH M002;Lo;0;L;;;;;N;;;;;
 11.4087 +131B1;EGYPTIAN HIEROGLYPH M003;Lo;0;L;;;;;N;;;;;
 11.4088 +131B2;EGYPTIAN HIEROGLYPH M003A;Lo;0;L;;;;;N;;;;;
 11.4089 +131B3;EGYPTIAN HIEROGLYPH M004;Lo;0;L;;;;;N;;;;;
 11.4090 +131B4;EGYPTIAN HIEROGLYPH M005;Lo;0;L;;;;;N;;;;;
 11.4091 +131B5;EGYPTIAN HIEROGLYPH M006;Lo;0;L;;;;;N;;;;;
 11.4092 +131B6;EGYPTIAN HIEROGLYPH M007;Lo;0;L;;;;;N;;;;;
 11.4093 +131B7;EGYPTIAN HIEROGLYPH M008;Lo;0;L;;;;;N;;;;;
 11.4094 +131B8;EGYPTIAN HIEROGLYPH M009;Lo;0;L;;;;;N;;;;;
 11.4095 +131B9;EGYPTIAN HIEROGLYPH M010;Lo;0;L;;;;;N;;;;;
 11.4096 +131BA;EGYPTIAN HIEROGLYPH M010A;Lo;0;L;;;;;N;;;;;
 11.4097 +131BB;EGYPTIAN HIEROGLYPH M011;Lo;0;L;;;;;N;;;;;
 11.4098 +131BC;EGYPTIAN HIEROGLYPH M012;Lo;0;L;;;;;N;;;;;
 11.4099 +131BD;EGYPTIAN HIEROGLYPH M012A;Lo;0;L;;;;;N;;;;;
 11.4100 +131BE;EGYPTIAN HIEROGLYPH M012B;Lo;0;L;;;;;N;;;;;
 11.4101 +131BF;EGYPTIAN HIEROGLYPH M012C;Lo;0;L;;;;;N;;;;;
 11.4102 +131C0;EGYPTIAN HIEROGLYPH M012D;Lo;0;L;;;;;N;;;;;
 11.4103 +131C1;EGYPTIAN HIEROGLYPH M012E;Lo;0;L;;;;;N;;;;;
 11.4104 +131C2;EGYPTIAN HIEROGLYPH M012F;Lo;0;L;;;;;N;;;;;
 11.4105 +131C3;EGYPTIAN HIEROGLYPH M012G;Lo;0;L;;;;;N;;;;;
 11.4106 +131C4;EGYPTIAN HIEROGLYPH M012H;Lo;0;L;;;;;N;;;;;
 11.4107 +131C5;EGYPTIAN HIEROGLYPH M013;Lo;0;L;;;;;N;;;;;
 11.4108 +131C6;EGYPTIAN HIEROGLYPH M014;Lo;0;L;;;;;N;;;;;
 11.4109 +131C7;EGYPTIAN HIEROGLYPH M015;Lo;0;L;;;;;N;;;;;
 11.4110 +131C8;EGYPTIAN HIEROGLYPH M015A;Lo;0;L;;;;;N;;;;;
 11.4111 +131C9;EGYPTIAN HIEROGLYPH M016;Lo;0;L;;;;;N;;;;;
 11.4112 +131CA;EGYPTIAN HIEROGLYPH M016A;Lo;0;L;;;;;N;;;;;
 11.4113 +131CB;EGYPTIAN HIEROGLYPH M017;Lo;0;L;;;;;N;;;;;
 11.4114 +131CC;EGYPTIAN HIEROGLYPH M017A;Lo;0;L;;;;;N;;;;;
 11.4115 +131CD;EGYPTIAN HIEROGLYPH M018;Lo;0;L;;;;;N;;;;;
 11.4116 +131CE;EGYPTIAN HIEROGLYPH M019;Lo;0;L;;;;;N;;;;;
 11.4117 +131CF;EGYPTIAN HIEROGLYPH M020;Lo;0;L;;;;;N;;;;;
 11.4118 +131D0;EGYPTIAN HIEROGLYPH M021;Lo;0;L;;;;;N;;;;;
 11.4119 +131D1;EGYPTIAN HIEROGLYPH M022;Lo;0;L;;;;;N;;;;;
 11.4120 +131D2;EGYPTIAN HIEROGLYPH M022A;Lo;0;L;;;;;N;;;;;
 11.4121 +131D3;EGYPTIAN HIEROGLYPH M023;Lo;0;L;;;;;N;;;;;
 11.4122 +131D4;EGYPTIAN HIEROGLYPH M024;Lo;0;L;;;;;N;;;;;
 11.4123 +131D5;EGYPTIAN HIEROGLYPH M024A;Lo;0;L;;;;;N;;;;;
 11.4124 +131D6;EGYPTIAN HIEROGLYPH M025;Lo;0;L;;;;;N;;;;;
 11.4125 +131D7;EGYPTIAN HIEROGLYPH M026;Lo;0;L;;;;;N;;;;;
 11.4126 +131D8;EGYPTIAN HIEROGLYPH M027;Lo;0;L;;;;;N;;;;;
 11.4127 +131D9;EGYPTIAN HIEROGLYPH M028;Lo;0;L;;;;;N;;;;;
 11.4128 +131DA;EGYPTIAN HIEROGLYPH M028A;Lo;0;L;;;;;N;;;;;
 11.4129 +131DB;EGYPTIAN HIEROGLYPH M029;Lo;0;L;;;;;N;;;;;
 11.4130 +131DC;EGYPTIAN HIEROGLYPH M030;Lo;0;L;;;;;N;;;;;
 11.4131 +131DD;EGYPTIAN HIEROGLYPH M031;Lo;0;L;;;;;N;;;;;
 11.4132 +131DE;EGYPTIAN HIEROGLYPH M031A;Lo;0;L;;;;;N;;;;;
 11.4133 +131DF;EGYPTIAN HIEROGLYPH M032;Lo;0;L;;;;;N;;;;;
 11.4134 +131E0;EGYPTIAN HIEROGLYPH M033;Lo;0;L;;;;;N;;;;;
 11.4135 +131E1;EGYPTIAN HIEROGLYPH M033A;Lo;0;L;;;;;N;;;;;
 11.4136 +131E2;EGYPTIAN HIEROGLYPH M033B;Lo;0;L;;;;;N;;;;;
 11.4137 +131E3;EGYPTIAN HIEROGLYPH M034;Lo;0;L;;;;;N;;;;;
 11.4138 +131E4;EGYPTIAN HIEROGLYPH M035;Lo;0;L;;;;;N;;;;;
 11.4139 +131E5;EGYPTIAN HIEROGLYPH M036;Lo;0;L;;;;;N;;;;;
 11.4140 +131E6;EGYPTIAN HIEROGLYPH M037;Lo;0;L;;;;;N;;;;;
 11.4141 +131E7;EGYPTIAN HIEROGLYPH M038;Lo;0;L;;;;;N;;;;;
 11.4142 +131E8;EGYPTIAN HIEROGLYPH M039;Lo;0;L;;;;;N;;;;;
 11.4143 +131E9;EGYPTIAN HIEROGLYPH M040;Lo;0;L;;;;;N;;;;;
 11.4144 +131EA;EGYPTIAN HIEROGLYPH M040A;Lo;0;L;;;;;N;;;;;
 11.4145 +131EB;EGYPTIAN HIEROGLYPH M041;Lo;0;L;;;;;N;;;;;
 11.4146 +131EC;EGYPTIAN HIEROGLYPH M042;Lo;0;L;;;;;N;;;;;
 11.4147 +131ED;EGYPTIAN HIEROGLYPH M043;Lo;0;L;;;;;N;;;;;
 11.4148 +131EE;EGYPTIAN HIEROGLYPH M044;Lo;0;L;;;;;N;;;;;
 11.4149 +131EF;EGYPTIAN HIEROGLYPH N001;Lo;0;L;;;;;N;;;;;
 11.4150 +131F0;EGYPTIAN HIEROGLYPH N002;Lo;0;L;;;;;N;;;;;
 11.4151 +131F1;EGYPTIAN HIEROGLYPH N003;Lo;0;L;;;;;N;;;;;
 11.4152 +131F2;EGYPTIAN HIEROGLYPH N004;Lo;0;L;;;;;N;;;;;
 11.4153 +131F3;EGYPTIAN HIEROGLYPH N005;Lo;0;L;;;;;N;;;;;
 11.4154 +131F4;EGYPTIAN HIEROGLYPH N006;Lo;0;L;;;;;N;;;;;
 11.4155 +131F5;EGYPTIAN HIEROGLYPH N007;Lo;0;L;;;;;N;;;;;
 11.4156 +131F6;EGYPTIAN HIEROGLYPH N008;Lo;0;L;;;;;N;;;;;
 11.4157 +131F7;EGYPTIAN HIEROGLYPH N009;Lo;0;L;;;;;N;;;;;
 11.4158 +131F8;EGYPTIAN HIEROGLYPH N010;Lo;0;L;;;;;N;;;;;
 11.4159 +131F9;EGYPTIAN HIEROGLYPH N011;Lo;0;L;;;;;N;;;;;
 11.4160 +131FA;EGYPTIAN HIEROGLYPH N012;Lo;0;L;;;;;N;;;;;
 11.4161 +131FB;EGYPTIAN HIEROGLYPH N013;Lo;0;L;;;;;N;;;;;
 11.4162 +131FC;EGYPTIAN HIEROGLYPH N014;Lo;0;L;;;;;N;;;;;
 11.4163 +131FD;EGYPTIAN HIEROGLYPH N015;Lo;0;L;;;;;N;;;;;
 11.4164 +131FE;EGYPTIAN HIEROGLYPH N016;Lo;0;L;;;;;N;;;;;
 11.4165 +131FF;EGYPTIAN HIEROGLYPH N017;Lo;0;L;;;;;N;;;;;
 11.4166 +13200;EGYPTIAN HIEROGLYPH N018;Lo;0;L;;;;;N;;;;;
 11.4167 +13201;EGYPTIAN HIEROGLYPH N018A;Lo;0;L;;;;;N;;;;;
 11.4168 +13202;EGYPTIAN HIEROGLYPH N018B;Lo;0;L;;;;;N;;;;;
 11.4169 +13203;EGYPTIAN HIEROGLYPH N019;Lo;0;L;;;;;N;;;;;
 11.4170 +13204;EGYPTIAN HIEROGLYPH N020;Lo;0;L;;;;;N;;;;;
 11.4171 +13205;EGYPTIAN HIEROGLYPH N021;Lo;0;L;;;;;N;;;;;
 11.4172 +13206;EGYPTIAN HIEROGLYPH N022;Lo;0;L;;;;;N;;;;;
 11.4173 +13207;EGYPTIAN HIEROGLYPH N023;Lo;0;L;;;;;N;;;;;
 11.4174 +13208;EGYPTIAN HIEROGLYPH N024;Lo;0;L;;;;;N;;;;;
 11.4175 +13209;EGYPTIAN HIEROGLYPH N025;Lo;0;L;;;;;N;;;;;
 11.4176 +1320A;EGYPTIAN HIEROGLYPH N025A;Lo;0;L;;;;;N;;;;;
 11.4177 +1320B;EGYPTIAN HIEROGLYPH N026;Lo;0;L;;;;;N;;;;;
 11.4178 +1320C;EGYPTIAN HIEROGLYPH N027;Lo;0;L;;;;;N;;;;;
 11.4179 +1320D;EGYPTIAN HIEROGLYPH N028;Lo;0;L;;;;;N;;;;;
 11.4180 +1320E;EGYPTIAN HIEROGLYPH N029;Lo;0;L;;;;;N;;;;;
 11.4181 +1320F;EGYPTIAN HIEROGLYPH N030;Lo;0;L;;;;;N;;;;;
 11.4182 +13210;EGYPTIAN HIEROGLYPH N031;Lo;0;L;;;;;N;;;;;
 11.4183 +13211;EGYPTIAN HIEROGLYPH N032;Lo;0;L;;;;;N;;;;;
 11.4184 +13212;EGYPTIAN HIEROGLYPH N033;Lo;0;L;;;;;N;;;;;
 11.4185 +13213;EGYPTIAN HIEROGLYPH N033A;Lo;0;L;;;;;N;;;;;
 11.4186 +13214;EGYPTIAN HIEROGLYPH N034;Lo;0;L;;;;;N;;;;;
 11.4187 +13215;EGYPTIAN HIEROGLYPH N034A;Lo;0;L;;;;;N;;;;;
 11.4188 +13216;EGYPTIAN HIEROGLYPH N035;Lo;0;L;;;;;N;;;;;
 11.4189 +13217;EGYPTIAN HIEROGLYPH N035A;Lo;0;L;;;;;N;;;;;
 11.4190 +13218;EGYPTIAN HIEROGLYPH N036;Lo;0;L;;;;;N;;;;;
 11.4191 +13219;EGYPTIAN HIEROGLYPH N037;Lo;0;L;;;;;N;;;;;
 11.4192 +1321A;EGYPTIAN HIEROGLYPH N037A;Lo;0;L;;;;;N;;;;;
 11.4193 +1321B;EGYPTIAN HIEROGLYPH N038;Lo;0;L;;;;;N;;;;;
 11.4194 +1321C;EGYPTIAN HIEROGLYPH N039;Lo;0;L;;;;;N;;;;;
 11.4195 +1321D;EGYPTIAN HIEROGLYPH N040;Lo;0;L;;;;;N;;;;;
 11.4196 +1321E;EGYPTIAN HIEROGLYPH N041;Lo;0;L;;;;;N;;;;;
 11.4197 +1321F;EGYPTIAN HIEROGLYPH N042;Lo;0;L;;;;;N;;;;;
 11.4198 +13220;EGYPTIAN HIEROGLYPH NL001;Lo;0;L;;;;;N;;;;;
 11.4199 +13221;EGYPTIAN HIEROGLYPH NL002;Lo;0;L;;;;;N;;;;;
 11.4200 +13222;EGYPTIAN HIEROGLYPH NL003;Lo;0;L;;;;;N;;;;;
 11.4201 +13223;EGYPTIAN HIEROGLYPH NL004;Lo;0;L;;;;;N;;;;;
 11.4202 +13224;EGYPTIAN HIEROGLYPH NL005;Lo;0;L;;;;;N;;;;;
 11.4203 +13225;EGYPTIAN HIEROGLYPH NL005A;Lo;0;L;;;;;N;;;;;
 11.4204 +13226;EGYPTIAN HIEROGLYPH NL006;Lo;0;L;;;;;N;;;;;
 11.4205 +13227;EGYPTIAN HIEROGLYPH NL007;Lo;0;L;;;;;N;;;;;
 11.4206 +13228;EGYPTIAN HIEROGLYPH NL008;Lo;0;L;;;;;N;;;;;
 11.4207 +13229;EGYPTIAN HIEROGLYPH NL009;Lo;0;L;;;;;N;;;;;
 11.4208 +1322A;EGYPTIAN HIEROGLYPH NL010;Lo;0;L;;;;;N;;;;;
 11.4209 +1322B;EGYPTIAN HIEROGLYPH NL011;Lo;0;L;;;;;N;;;;;
 11.4210 +1322C;EGYPTIAN HIEROGLYPH NL012;Lo;0;L;;;;;N;;;;;
 11.4211 +1322D;EGYPTIAN HIEROGLYPH NL013;Lo;0;L;;;;;N;;;;;
 11.4212 +1322E;EGYPTIAN HIEROGLYPH NL014;Lo;0;L;;;;;N;;;;;
 11.4213 +1322F;EGYPTIAN HIEROGLYPH NL015;Lo;0;L;;;;;N;;;;;
 11.4214 +13230;EGYPTIAN HIEROGLYPH NL016;Lo;0;L;;;;;N;;;;;
 11.4215 +13231;EGYPTIAN HIEROGLYPH NL017;Lo;0;L;;;;;N;;;;;
 11.4216 +13232;EGYPTIAN HIEROGLYPH NL017A;Lo;0;L;;;;;N;;;;;
 11.4217 +13233;EGYPTIAN HIEROGLYPH NL018;Lo;0;L;;;;;N;;;;;
 11.4218 +13234;EGYPTIAN HIEROGLYPH NL019;Lo;0;L;;;;;N;;;;;
 11.4219 +13235;EGYPTIAN HIEROGLYPH NL020;Lo;0;L;;;;;N;;;;;
 11.4220 +13236;EGYPTIAN HIEROGLYPH NU001;Lo;0;L;;;;;N;;;;;
 11.4221 +13237;EGYPTIAN HIEROGLYPH NU002;Lo;0;L;;;;;N;;;;;
 11.4222 +13238;EGYPTIAN HIEROGLYPH NU003;Lo;0;L;;;;;N;;;;;
 11.4223 +13239;EGYPTIAN HIEROGLYPH NU004;Lo;0;L;;;;;N;;;;;
 11.4224 +1323A;EGYPTIAN HIEROGLYPH NU005;Lo;0;L;;;;;N;;;;;
 11.4225 +1323B;EGYPTIAN HIEROGLYPH NU006;Lo;0;L;;;;;N;;;;;
 11.4226 +1323C;EGYPTIAN HIEROGLYPH NU007;Lo;0;L;;;;;N;;;;;
 11.4227 +1323D;EGYPTIAN HIEROGLYPH NU008;Lo;0;L;;;;;N;;;;;
 11.4228 +1323E;EGYPTIAN HIEROGLYPH NU009;Lo;0;L;;;;;N;;;;;
 11.4229 +1323F;EGYPTIAN HIEROGLYPH NU010;Lo;0;L;;;;;N;;;;;
 11.4230 +13240;EGYPTIAN HIEROGLYPH NU010A;Lo;0;L;;;;;N;;;;;
 11.4231 +13241;EGYPTIAN HIEROGLYPH NU011;Lo;0;L;;;;;N;;;;;
 11.4232 +13242;EGYPTIAN HIEROGLYPH NU011A;Lo;0;L;;;;;N;;;;;
 11.4233 +13243;EGYPTIAN HIEROGLYPH NU012;Lo;0;L;;;;;N;;;;;
 11.4234 +13244;EGYPTIAN HIEROGLYPH NU013;Lo;0;L;;;;;N;;;;;
 11.4235 +13245;EGYPTIAN HIEROGLYPH NU014;Lo;0;L;;;;;N;;;;;
 11.4236 +13246;EGYPTIAN HIEROGLYPH NU015;Lo;0;L;;;;;N;;;;;
 11.4237 +13247;EGYPTIAN HIEROGLYPH NU016;Lo;0;L;;;;;N;;;;;
 11.4238 +13248;EGYPTIAN HIEROGLYPH NU017;Lo;0;L;;;;;N;;;;;
 11.4239 +13249;EGYPTIAN HIEROGLYPH NU018;Lo;0;L;;;;;N;;;;;
 11.4240 +1324A;EGYPTIAN HIEROGLYPH NU018A;Lo;0;L;;;;;N;;;;;
 11.4241 +1324B;EGYPTIAN HIEROGLYPH NU019;Lo;0;L;;;;;N;;;;;
 11.4242 +1324C;EGYPTIAN HIEROGLYPH NU020;Lo;0;L;;;;;N;;;;;
 11.4243 +1324D;EGYPTIAN HIEROGLYPH NU021;Lo;0;L;;;;;N;;;;;
 11.4244 +1324E;EGYPTIAN HIEROGLYPH NU022;Lo;0;L;;;;;N;;;;;
 11.4245 +1324F;EGYPTIAN HIEROGLYPH NU022A;Lo;0;L;;;;;N;;;;;
 11.4246 +13250;EGYPTIAN HIEROGLYPH O001;Lo;0;L;;;;;N;;;;;
 11.4247 +13251;EGYPTIAN HIEROGLYPH O001A;Lo;0;L;;;;;N;;;;;
 11.4248 +13252;EGYPTIAN HIEROGLYPH O002;Lo;0;L;;;;;N;;;;;
 11.4249 +13253;EGYPTIAN HIEROGLYPH O003;Lo;0;L;;;;;N;;;;;
 11.4250 +13254;EGYPTIAN HIEROGLYPH O004;Lo;0;L;;;;;N;;;;;
 11.4251 +13255;EGYPTIAN HIEROGLYPH O005;Lo;0;L;;;;;N;;;;;
 11.4252 +13256;EGYPTIAN HIEROGLYPH O005A;Lo;0;L;;;;;N;;;;;
 11.4253 +13257;EGYPTIAN HIEROGLYPH O006;Lo;0;L;;;;;N;;;;;
 11.4254 +13258;EGYPTIAN HIEROGLYPH O006A;Lo;0;L;;;;;N;;;;;
 11.4255 +13259;EGYPTIAN HIEROGLYPH O006B;Lo;0;L;;;;;N;;;;;
 11.4256 +1325A;EGYPTIAN HIEROGLYPH O006C;Lo;0;L;;;;;N;;;;;
 11.4257 +1325B;EGYPTIAN HIEROGLYPH O006D;Lo;0;L;;;;;N;;;;;
 11.4258 +1325C;EGYPTIAN HIEROGLYPH O006E;Lo;0;L;;;;;N;;;;;
 11.4259 +1325D;EGYPTIAN HIEROGLYPH O006F;Lo;0;L;;;;;N;;;;;
 11.4260 +1325E;EGYPTIAN HIEROGLYPH O007;Lo;0;L;;;;;N;;;;;
 11.4261 +1325F;EGYPTIAN HIEROGLYPH O008;Lo;0;L;;;;;N;;;;;
 11.4262 +13260;EGYPTIAN HIEROGLYPH O009;Lo;0;L;;;;;N;;;;;
 11.4263 +13261;EGYPTIAN HIEROGLYPH O010;Lo;0;L;;;;;N;;;;;
 11.4264 +13262;EGYPTIAN HIEROGLYPH O010A;Lo;0;L;;;;;N;;;;;
 11.4265 +13263;EGYPTIAN HIEROGLYPH O010B;Lo;0;L;;;;;N;;;;;
 11.4266 +13264;EGYPTIAN HIEROGLYPH O010C;Lo;0;L;;;;;N;;;;;
 11.4267 +13265;EGYPTIAN HIEROGLYPH O011;Lo;0;L;;;;;N;;;;;
 11.4268 +13266;EGYPTIAN HIEROGLYPH O012;Lo;0;L;;;;;N;;;;;
 11.4269 +13267;EGYPTIAN HIEROGLYPH O013;Lo;0;L;;;;;N;;;;;
 11.4270 +13268;EGYPTIAN HIEROGLYPH O014;Lo;0;L;;;;;N;;;;;
 11.4271 +13269;EGYPTIAN HIEROGLYPH O015;Lo;0;L;;;;;N;;;;;
 11.4272 +1326A;EGYPTIAN HIEROGLYPH O016;Lo;0;L;;;;;N;;;;;
 11.4273 +1326B;EGYPTIAN HIEROGLYPH O017;Lo;0;L;;;;;N;;;;;
 11.4274 +1326C;EGYPTIAN HIEROGLYPH O018;Lo;0;L;;;;;N;;;;;
 11.4275 +1326D;EGYPTIAN HIEROGLYPH O019;Lo;0;L;;;;;N;;;;;
 11.4276 +1326E;EGYPTIAN HIEROGLYPH O019A;Lo;0;L;;;;;N;;;;;
 11.4277 +1326F;EGYPTIAN HIEROGLYPH O020;Lo;0;L;;;;;N;;;;;
 11.4278 +13270;EGYPTIAN HIEROGLYPH O020A;Lo;0;L;;;;;N;;;;;
 11.4279 +13271;EGYPTIAN HIEROGLYPH O021;Lo;0;L;;;;;N;;;;;
 11.4280 +13272;EGYPTIAN HIEROGLYPH O022;Lo;0;L;;;;;N;;;;;
 11.4281 +13273;EGYPTIAN HIEROGLYPH O023;Lo;0;L;;;;;N;;;;;
 11.4282 +13274;EGYPTIAN HIEROGLYPH O024;Lo;0;L;;;;;N;;;;;
 11.4283 +13275;EGYPTIAN HIEROGLYPH O024A;Lo;0;L;;;;;N;;;;;
 11.4284 +13276;EGYPTIAN HIEROGLYPH O025;Lo;0;L;;;;;N;;;;;
 11.4285 +13277;EGYPTIAN HIEROGLYPH O025A;Lo;0;L;;;;;N;;;;;
 11.4286 +13278;EGYPTIAN HIEROGLYPH O026;Lo;0;L;;;;;N;;;;;
 11.4287 +13279;EGYPTIAN HIEROGLYPH O027;Lo;0;L;;;;;N;;;;;
 11.4288 +1327A;EGYPTIAN HIEROGLYPH O028;Lo;0;L;;;;;N;;;;;
 11.4289 +1327B;EGYPTIAN HIEROGLYPH O029;Lo;0;L;;;;;N;;;;;
 11.4290 +1327C;EGYPTIAN HIEROGLYPH O029A;Lo;0;L;;;;;N;;;;;
 11.4291 +1327D;EGYPTIAN HIEROGLYPH O030;Lo;0;L;;;;;N;;;;;
 11.4292 +1327E;EGYPTIAN HIEROGLYPH O030A;Lo;0;L;;;;;N;;;;;
 11.4293 +1327F;EGYPTIAN HIEROGLYPH O031;Lo;0;L;;;;;N;;;;;
 11.4294 +13280;EGYPTIAN HIEROGLYPH O032;Lo;0;L;;;;;N;;;;;
 11.4295 +13281;EGYPTIAN HIEROGLYPH O033;Lo;0;L;;;;;N;;;;;
 11.4296 +13282;EGYPTIAN HIEROGLYPH O033A;Lo;0;L;;;;;N;;;;;
 11.4297 +13283;EGYPTIAN HIEROGLYPH O034;Lo;0;L;;;;;N;;;;;
 11.4298 +13284;EGYPTIAN HIEROGLYPH O035;Lo;0;L;;;;;N;;;;;
 11.4299 +13285;EGYPTIAN HIEROGLYPH O036;Lo;0;L;;;;;N;;;;;
 11.4300 +13286;EGYPTIAN HIEROGLYPH O036A;Lo;0;L;;;;;N;;;;;
 11.4301 +13287;EGYPTIAN HIEROGLYPH O036B;Lo;0;L;;;;;N;;;;;
 11.4302 +13288;EGYPTIAN HIEROGLYPH O036C;Lo;0;L;;;;;N;;;;;
 11.4303 +13289;EGYPTIAN HIEROGLYPH O036D;Lo;0;L;;;;;N;;;;;
 11.4304 +1328A;EGYPTIAN HIEROGLYPH O037;Lo;0;L;;;;;N;;;;;
 11.4305 +1328B;EGYPTIAN HIEROGLYPH O038;Lo;0;L;;;;;N;;;;;
 11.4306 +1328C;EGYPTIAN HIEROGLYPH O039;Lo;0;L;;;;;N;;;;;
 11.4307 +1328D;EGYPTIAN HIEROGLYPH O040;Lo;0;L;;;;;N;;;;;
 11.4308 +1328E;EGYPTIAN HIEROGLYPH O041;Lo;0;L;;;;;N;;;;;
 11.4309 +1328F;EGYPTIAN HIEROGLYPH O042;Lo;0;L;;;;;N;;;;;
 11.4310 +13290;EGYPTIAN HIEROGLYPH O043;Lo;0;L;;;;;N;;;;;
 11.4311 +13291;EGYPTIAN HIEROGLYPH O044;Lo;0;L;;;;;N;;;;;
 11.4312 +13292;EGYPTIAN HIEROGLYPH O045;Lo;0;L;;;;;N;;;;;
 11.4313 +13293;EGYPTIAN HIEROGLYPH O046;Lo;0;L;;;;;N;;;;;
 11.4314 +13294;EGYPTIAN HIEROGLYPH O047;Lo;0;L;;;;;N;;;;;
 11.4315 +13295;EGYPTIAN HIEROGLYPH O048;Lo;0;L;;;;;N;;;;;
 11.4316 +13296;EGYPTIAN HIEROGLYPH O049;Lo;0;L;;;;;N;;;;;
 11.4317 +13297;EGYPTIAN HIEROGLYPH O050;Lo;0;L;;;;;N;;;;;
 11.4318 +13298;EGYPTIAN HIEROGLYPH O050A;Lo;0;L;;;;;N;;;;;
 11.4319 +13299;EGYPTIAN HIEROGLYPH O050B;Lo;0;L;;;;;N;;;;;
 11.4320 +1329A;EGYPTIAN HIEROGLYPH O051;Lo;0;L;;;;;N;;;;;
 11.4321 +1329B;EGYPTIAN HIEROGLYPH P001;Lo;0;L;;;;;N;;;;;
 11.4322 +1329C;EGYPTIAN HIEROGLYPH P001A;Lo;0;L;;;;;N;;;;;
 11.4323 +1329D;EGYPTIAN HIEROGLYPH P002;Lo;0;L;;;;;N;;;;;
 11.4324 +1329E;EGYPTIAN HIEROGLYPH P003;Lo;0;L;;;;;N;;;;;
 11.4325 +1329F;EGYPTIAN HIEROGLYPH P003A;Lo;0;L;;;;;N;;;;;
 11.4326 +132A0;EGYPTIAN HIEROGLYPH P004;Lo;0;L;;;;;N;;;;;
 11.4327 +132A1;EGYPTIAN HIEROGLYPH P005;Lo;0;L;;;;;N;;;;;
 11.4328 +132A2;EGYPTIAN HIEROGLYPH P006;Lo;0;L;;;;;N;;;;;
 11.4329 +132A3;EGYPTIAN HIEROGLYPH P007;Lo;0;L;;;;;N;;;;;
 11.4330 +132A4;EGYPTIAN HIEROGLYPH P008;Lo;0;L;;;;;N;;;;;
 11.4331 +132A5;EGYPTIAN HIEROGLYPH P009;Lo;0;L;;;;;N;;;;;
 11.4332 +132A6;EGYPTIAN HIEROGLYPH P010;Lo;0;L;;;;;N;;;;;
 11.4333 +132A7;EGYPTIAN HIEROGLYPH P011;Lo;0;L;;;;;N;;;;;
 11.4334 +132A8;EGYPTIAN HIEROGLYPH Q001;Lo;0;L;;;;;N;;;;;
 11.4335 +132A9;EGYPTIAN HIEROGLYPH Q002;Lo;0;L;;;;;N;;;;;
 11.4336 +132AA;EGYPTIAN HIEROGLYPH Q003;Lo;0;L;;;;;N;;;;;
 11.4337 +132AB;EGYPTIAN HIEROGLYPH Q004;Lo;0;L;;;;;N;;;;;
 11.4338 +132AC;EGYPTIAN HIEROGLYPH Q005;Lo;0;L;;;;;N;;;;;
 11.4339 +132AD;EGYPTIAN HIEROGLYPH Q006;Lo;0;L;;;;;N;;;;;
 11.4340 +132AE;EGYPTIAN HIEROGLYPH Q007;Lo;0;L;;;;;N;;;;;
 11.4341 +132AF;EGYPTIAN HIEROGLYPH R001;Lo;0;L;;;;;N;;;;;
 11.4342 +132B0;EGYPTIAN HIEROGLYPH R002;Lo;0;L;;;;;N;;;;;
 11.4343 +132B1;EGYPTIAN HIEROGLYPH R002A;Lo;0;L;;;;;N;;;;;
 11.4344 +132B2;EGYPTIAN HIEROGLYPH R003;Lo;0;L;;;;;N;;;;;
 11.4345 +132B3;EGYPTIAN HIEROGLYPH R003A;Lo;0;L;;;;;N;;;;;
 11.4346 +132B4;EGYPTIAN HIEROGLYPH R003B;Lo;0;L;;;;;N;;;;;
 11.4347 +132B5;EGYPTIAN HIEROGLYPH R004;Lo;0;L;;;;;N;;;;;
 11.4348 +132B6;EGYPTIAN HIEROGLYPH R005;Lo;0;L;;;;;N;;;;;
 11.4349 +132B7;EGYPTIAN HIEROGLYPH R006;Lo;0;L;;;;;N;;;;;
 11.4350 +132B8;EGYPTIAN HIEROGLYPH R007;Lo;0;L;;;;;N;;;;;
 11.4351 +132B9;EGYPTIAN HIEROGLYPH R008;Lo;0;L;;;;;N;;;;;
 11.4352 +132BA;EGYPTIAN HIEROGLYPH R009;Lo;0;L;;;;;N;;;;;
 11.4353 +132BB;EGYPTIAN HIEROGLYPH R010;Lo;0;L;;;;;N;;;;;
 11.4354 +132BC;EGYPTIAN HIEROGLYPH R010A;Lo;0;L;;;;;N;;;;;
 11.4355 +132BD;EGYPTIAN HIEROGLYPH R011;Lo;0;L;;;;;N;;;;;
 11.4356 +132BE;EGYPTIAN HIEROGLYPH R012;Lo;0;L;;;;;N;;;;;
 11.4357 +132BF;EGYPTIAN HIEROGLYPH R013;Lo;0;L;;;;;N;;;;;
 11.4358 +132C0;EGYPTIAN HIEROGLYPH R014;Lo;0;L;;;;;N;;;;;
 11.4359 +132C1;EGYPTIAN HIEROGLYPH R015;Lo;0;L;;;;;N;;;;;
 11.4360 +132C2;EGYPTIAN HIEROGLYPH R016;Lo;0;L;;;;;N;;;;;
 11.4361 +132C3;EGYPTIAN HIEROGLYPH R016A;Lo;0;L;;;;;N;;;;;
 11.4362 +132C4;EGYPTIAN HIEROGLYPH R017;Lo;0;L;;;;;N;;;;;
 11.4363 +132C5;EGYPTIAN HIEROGLYPH R018;Lo;0;L;;;;;N;;;;;
 11.4364 +132C6;EGYPTIAN HIEROGLYPH R019;Lo;0;L;;;;;N;;;;;
 11.4365 +132C7;EGYPTIAN HIEROGLYPH R020;Lo;0;L;;;;;N;;;;;
 11.4366 +132C8;EGYPTIAN HIEROGLYPH R021;Lo;0;L;;;;;N;;;;;
 11.4367 +132C9;EGYPTIAN HIEROGLYPH R022;Lo;0;L;;;;;N;;;;;
 11.4368 +132CA;EGYPTIAN HIEROGLYPH R023;Lo;0;L;;;;;N;;;;;
 11.4369 +132CB;EGYPTIAN HIEROGLYPH R024;Lo;0;L;;;;;N;;;;;
 11.4370 +132CC;EGYPTIAN HIEROGLYPH R025;Lo;0;L;;;;;N;;;;;
 11.4371 +132CD;EGYPTIAN HIEROGLYPH R026;Lo;0;L;;;;;N;;;;;
 11.4372 +132CE;EGYPTIAN HIEROGLYPH R027;Lo;0;L;;;;;N;;;;;
 11.4373 +132CF;EGYPTIAN HIEROGLYPH R028;Lo;0;L;;;;;N;;;;;
 11.4374 +132D0;EGYPTIAN HIEROGLYPH R029;Lo;0;L;;;;;N;;;;;
 11.4375 +132D1;EGYPTIAN HIEROGLYPH S001;Lo;0;L;;;;;N;;;;;
 11.4376 +132D2;EGYPTIAN HIEROGLYPH S002;Lo;0;L;;;;;N;;;;;
 11.4377 +132D3;EGYPTIAN HIEROGLYPH S002A;Lo;0;L;;;;;N;;;;;
 11.4378 +132D4;EGYPTIAN HIEROGLYPH S003;Lo;0;L;;;;;N;;;;;
 11.4379 +132D5;EGYPTIAN HIEROGLYPH S004;Lo;0;L;;;;;N;;;;;
 11.4380 +132D6;EGYPTIAN HIEROGLYPH S005;Lo;0;L;;;;;N;;;;;
 11.4381 +132D7;EGYPTIAN HIEROGLYPH S006;Lo;0;L;;;;;N;;;;;
 11.4382 +132D8;EGYPTIAN HIEROGLYPH S006A;Lo;0;L;;;;;N;;;;;
 11.4383 +132D9;EGYPTIAN HIEROGLYPH S007;Lo;0;L;;;;;N;;;;;
 11.4384 +132DA;EGYPTIAN HIEROGLYPH S008;Lo;0;L;;;;;N;;;;;
 11.4385 +132DB;EGYPTIAN HIEROGLYPH S009;Lo;0;L;;;;;N;;;;;
 11.4386 +132DC;EGYPTIAN HIEROGLYPH S010;Lo;0;L;;;;;N;;;;;
 11.4387 +132DD;EGYPTIAN HIEROGLYPH S011;Lo;0;L;;;;;N;;;;;
 11.4388 +132DE;EGYPTIAN HIEROGLYPH S012;Lo;0;L;;;;;N;;;;;
 11.4389 +132DF;EGYPTIAN HIEROGLYPH S013;Lo;0;L;;;;;N;;;;;
 11.4390 +132E0;EGYPTIAN HIEROGLYPH S014;Lo;0;L;;;;;N;;;;;
 11.4391 +132E1;EGYPTIAN HIEROGLYPH S014A;Lo;0;L;;;;;N;;;;;
 11.4392 +132E2;EGYPTIAN HIEROGLYPH S014B;Lo;0;L;;;;;N;;;;;
 11.4393 +132E3;EGYPTIAN HIEROGLYPH S015;Lo;0;L;;;;;N;;;;;
 11.4394 +132E4;EGYPTIAN HIEROGLYPH S016;Lo;0;L;;;;;N;;;;;
 11.4395 +132E5;EGYPTIAN HIEROGLYPH S017;Lo;0;L;;;;;N;;;;;
 11.4396 +132E6;EGYPTIAN HIEROGLYPH S017A;Lo;0;L;;;;;N;;;;;
 11.4397 +132E7;EGYPTIAN HIEROGLYPH S018;Lo;0;L;;;;;N;;;;;
 11.4398 +132E8;EGYPTIAN HIEROGLYPH S019;Lo;0;L;;;;;N;;;;;
 11.4399 +132E9;EGYPTIAN HIEROGLYPH S020;Lo;0;L;;;;;N;;;;;
 11.4400 +132EA;EGYPTIAN HIEROGLYPH S021;Lo;0;L;;;;;N;;;;;
 11.4401 +132EB;EGYPTIAN HIEROGLYPH S022;Lo;0;L;;;;;N;;;;;
 11.4402 +132EC;EGYPTIAN HIEROGLYPH S023;Lo;0;L;;;;;N;;;;;
 11.4403 +132ED;EGYPTIAN HIEROGLYPH S024;Lo;0;L;;;;;N;;;;;
 11.4404 +132EE;EGYPTIAN HIEROGLYPH S025;Lo;0;L;;;;;N;;;;;
 11.4405 +132EF;EGYPTIAN HIEROGLYPH S026;Lo;0;L;;;;;N;;;;;
 11.4406 +132F0;EGYPTIAN HIEROGLYPH S026A;Lo;0;L;;;;;N;;;;;
 11.4407 +132F1;EGYPTIAN HIEROGLYPH S026B;Lo;0;L;;;;;N;;;;;
 11.4408 +132F2;EGYPTIAN HIEROGLYPH S027;Lo;0;L;;;;;N;;;;;
 11.4409 +132F3;EGYPTIAN HIEROGLYPH S028;Lo;0;L;;;;;N;;;;;
 11.4410 +132F4;EGYPTIAN HIEROGLYPH S029;Lo;0;L;;;;;N;;;;;
 11.4411 +132F5;EGYPTIAN HIEROGLYPH S030;Lo;0;L;;;;;N;;;;;
 11.4412 +132F6;EGYPTIAN HIEROGLYPH S031;Lo;0;L;;;;;N;;;;;
 11.4413 +132F7;EGYPTIAN HIEROGLYPH S032;Lo;0;L;;;;;N;;;;;
 11.4414 +132F8;EGYPTIAN HIEROGLYPH S033;Lo;0;L;;;;;N;;;;;
 11.4415 +132F9;EGYPTIAN HIEROGLYPH S034;Lo;0;L;;;;;N;;;;;
 11.4416 +132FA;EGYPTIAN HIEROGLYPH S035;Lo;0;L;;;;;N;;;;;
 11.4417 +132FB;EGYPTIAN HIEROGLYPH S035A;Lo;0;L;;;;;N;;;;;
 11.4418 +132FC;EGYPTIAN HIEROGLYPH S036;Lo;0;L;;;;;N;;;;;
 11.4419 +132FD;EGYPTIAN HIEROGLYPH S037;Lo;0;L;;;;;N;;;;;
 11.4420 +132FE;EGYPTIAN HIEROGLYPH S038;Lo;0;L;;;;;N;;;;;
 11.4421 +132FF;EGYPTIAN HIEROGLYPH S039;Lo;0;L;;;;;N;;;;;
 11.4422 +13300;EGYPTIAN HIEROGLYPH S040;Lo;0;L;;;;;N;;;;;
 11.4423 +13301;EGYPTIAN HIEROGLYPH S041;Lo;0;L;;;;;N;;;;;
 11.4424 +13302;EGYPTIAN HIEROGLYPH S042;Lo;0;L;;;;;N;;;;;
 11.4425 +13303;EGYPTIAN HIEROGLYPH S043;Lo;0;L;;;;;N;;;;;
 11.4426 +13304;EGYPTIAN HIEROGLYPH S044;Lo;0;L;;;;;N;;;;;
 11.4427 +13305;EGYPTIAN HIEROGLYPH S045;Lo;0;L;;;;;N;;;;;
 11.4428 +13306;EGYPTIAN HIEROGLYPH S046;Lo;0;L;;;;;N;;;;;
 11.4429 +13307;EGYPTIAN HIEROGLYPH T001;Lo;0;L;;;;;N;;;;;
 11.4430 +13308;EGYPTIAN HIEROGLYPH T002;Lo;0;L;;;;;N;;;;;
 11.4431 +13309;EGYPTIAN HIEROGLYPH T003;Lo;0;L;;;;;N;;;;;
 11.4432 +1330A;EGYPTIAN HIEROGLYPH T003A;Lo;0;L;;;;;N;;;;;
 11.4433 +1330B;EGYPTIAN HIEROGLYPH T004;Lo;0;L;;;;;N;;;;;
 11.4434 +1330C;EGYPTIAN HIEROGLYPH T005;Lo;0;L;;;;;N;;;;;
 11.4435 +1330D;EGYPTIAN HIEROGLYPH T006;Lo;0;L;;;;;N;;;;;
 11.4436 +1330E;EGYPTIAN HIEROGLYPH T007;Lo;0;L;;;;;N;;;;;
 11.4437 +1330F;EGYPTIAN HIEROGLYPH T007A;Lo;0;L;;;;;N;;;;;
 11.4438 +13310;EGYPTIAN HIEROGLYPH T008;Lo;0;L;;;;;N;;;;;
 11.4439 +13311;EGYPTIAN HIEROGLYPH T008A;Lo;0;L;;;;;N;;;;;
 11.4440 +13312;EGYPTIAN HIEROGLYPH T009;Lo;0;L;;;;;N;;;;;
 11.4441 +13313;EGYPTIAN HIEROGLYPH T009A;Lo;0;L;;;;;N;;;;;
 11.4442 +13314;EGYPTIAN HIEROGLYPH T010;Lo;0;L;;;;;N;;;;;
 11.4443 +13315;EGYPTIAN HIEROGLYPH T011;Lo;0;L;;;;;N;;;;;
 11.4444 +13316;EGYPTIAN HIEROGLYPH T011A;Lo;0;L;;;;;N;;;;;
 11.4445 +13317;EGYPTIAN HIEROGLYPH T012;Lo;0;L;;;;;N;;;;;
 11.4446 +13318;EGYPTIAN HIEROGLYPH T013;Lo;0;L;;;;;N;;;;;
 11.4447 +13319;EGYPTIAN HIEROGLYPH T014;Lo;0;L;;;;;N;;;;;
 11.4448 +1331A;EGYPTIAN HIEROGLYPH T015;Lo;0;L;;;;;N;;;;;
 11.4449 +1331B;EGYPTIAN HIEROGLYPH T016;Lo;0;L;;;;;N;;;;;
 11.4450 +1331C;EGYPTIAN HIEROGLYPH T016A;Lo;0;L;;;;;N;;;;;
 11.4451 +1331D;EGYPTIAN HIEROGLYPH T017;Lo;0;L;;;;;N;;;;;
 11.4452 +1331E;EGYPTIAN HIEROGLYPH T018;Lo;0;L;;;;;N;;;;;
 11.4453 +1331F;EGYPTIAN HIEROGLYPH T019;Lo;0;L;;;;;N;;;;;
 11.4454 +13320;EGYPTIAN HIEROGLYPH T020;Lo;0;L;;;;;N;;;;;
 11.4455 +13321;EGYPTIAN HIEROGLYPH T021;Lo;0;L;;;;;N;;;;;
 11.4456 +13322;EGYPTIAN HIEROGLYPH T022;Lo;0;L;;;;;N;;;;;
 11.4457 +13323;EGYPTIAN HIEROGLYPH T023;Lo;0;L;;;;;N;;;;;
 11.4458 +13324;EGYPTIAN HIEROGLYPH T024;Lo;0;L;;;;;N;;;;;
 11.4459 +13325;EGYPTIAN HIEROGLYPH T025;Lo;0;L;;;;;N;;;;;
 11.4460 +13326;EGYPTIAN HIEROGLYPH T026;Lo;0;L;;;;;N;;;;;
 11.4461 +13327;EGYPTIAN HIEROGLYPH T027;Lo;0;L;;;;;N;;;;;
 11.4462 +13328;EGYPTIAN HIEROGLYPH T028;Lo;0;L;;;;;N;;;;;
 11.4463 +13329;EGYPTIAN HIEROGLYPH T029;Lo;0;L;;;;;N;;;;;
 11.4464 +1332A;EGYPTIAN HIEROGLYPH T030;Lo;0;L;;;;;N;;;;;
 11.4465 +1332B;EGYPTIAN HIEROGLYPH T031;Lo;0;L;;;;;N;;;;;
 11.4466 +1332C;EGYPTIAN HIEROGLYPH T032;Lo;0;L;;;;;N;;;;;
 11.4467 +1332D;EGYPTIAN HIEROGLYPH T032A;Lo;0;L;;;;;N;;;;;
 11.4468 +1332E;EGYPTIAN HIEROGLYPH T033;Lo;0;L;;;;;N;;;;;
 11.4469 +1332F;EGYPTIAN HIEROGLYPH T033A;Lo;0;L;;;;;N;;;;;
 11.4470 +13330;EGYPTIAN HIEROGLYPH T034;Lo;0;L;;;;;N;;;;;
 11.4471 +13331;EGYPTIAN HIEROGLYPH T035;Lo;0;L;;;;;N;;;;;
 11.4472 +13332;EGYPTIAN HIEROGLYPH T036;Lo;0;L;;;;;N;;;;;
 11.4473 +13333;EGYPTIAN HIEROGLYPH U001;Lo;0;L;;;;;N;;;;;
 11.4474 +13334;EGYPTIAN HIEROGLYPH U002;Lo;0;L;;;;;N;;;;;
 11.4475 +13335;EGYPTIAN HIEROGLYPH U003;Lo;0;L;;;;;N;;;;;
 11.4476 +13336;EGYPTIAN HIEROGLYPH U004;Lo;0;L;;;;;N;;;;;
 11.4477 +13337;EGYPTIAN HIEROGLYPH U005;Lo;0;L;;;;;N;;;;;
 11.4478 +13338;EGYPTIAN HIEROGLYPH U006;Lo;0;L;;;;;N;;;;;
 11.4479 +13339;EGYPTIAN HIEROGLYPH U006A;Lo;0;L;;;;;N;;;;;
 11.4480 +1333A;EGYPTIAN HIEROGLYPH U006B;Lo;0;L;;;;;N;;;;;
 11.4481 +1333B;EGYPTIAN HIEROGLYPH U007;Lo;0;L;;;;;N;;;;;
 11.4482 +1333C;EGYPTIAN HIEROGLYPH U008;Lo;0;L;;;;;N;;;;;
 11.4483 +1333D;EGYPTIAN HIEROGLYPH U009;Lo;0;L;;;;;N;;;;;
 11.4484 +1333E;EGYPTIAN HIEROGLYPH U010;Lo;0;L;;;;;N;;;;;
 11.4485 +1333F;EGYPTIAN HIEROGLYPH U011;Lo;0;L;;;;;N;;;;;
 11.4486 +13340;EGYPTIAN HIEROGLYPH U012;Lo;0;L;;;;;N;;;;;
 11.4487 +13341;EGYPTIAN HIEROGLYPH U013;Lo;0;L;;;;;N;;;;;
 11.4488 +13342;EGYPTIAN HIEROGLYPH U014;Lo;0;L;;;;;N;;;;;
 11.4489 +13343;EGYPTIAN HIEROGLYPH U015;Lo;0;L;;;;;N;;;;;
 11.4490 +13344;EGYPTIAN HIEROGLYPH U016;Lo;0;L;;;;;N;;;;;
 11.4491 +13345;EGYPTIAN HIEROGLYPH U017;Lo;0;L;;;;;N;;;;;
 11.4492 +13346;EGYPTIAN HIEROGLYPH U018;Lo;0;L;;;;;N;;;;;
 11.4493 +13347;EGYPTIAN HIEROGLYPH U019;Lo;0;L;;;;;N;;;;;
 11.4494 +13348;EGYPTIAN HIEROGLYPH U020;Lo;0;L;;;;;N;;;;;
 11.4495 +13349;EGYPTIAN HIEROGLYPH U021;Lo;0;L;;;;;N;;;;;
 11.4496 +1334A;EGYPTIAN HIEROGLYPH U022;Lo;0;L;;;;;N;;;;;
 11.4497 +1334B;EGYPTIAN HIEROGLYPH U023;Lo;0;L;;;;;N;;;;;
 11.4498 +1334C;EGYPTIAN HIEROGLYPH U023A;Lo;0;L;;;;;N;;;;;
 11.4499 +1334D;EGYPTIAN HIEROGLYPH U024;Lo;0;L;;;;;N;;;;;
 11.4500 +1334E;EGYPTIAN HIEROGLYPH U025;Lo;0;L;;;;;N;;;;;
 11.4501 +1334F;EGYPTIAN HIEROGLYPH U026;Lo;0;L;;;;;N;;;;;
 11.4502 +13350;EGYPTIAN HIEROGLYPH U027;Lo;0;L;;;;;N;;;;;
 11.4503 +13351;EGYPTIAN HIEROGLYPH U028;Lo;0;L;;;;;N;;;;;
 11.4504 +13352;EGYPTIAN HIEROGLYPH U029;Lo;0;L;;;;;N;;;;;
 11.4505 +13353;EGYPTIAN HIEROGLYPH U029A;Lo;0;L;;;;;N;;;;;
 11.4506 +13354;EGYPTIAN HIEROGLYPH U030;Lo;0;L;;;;;N;;;;;
 11.4507 +13355;EGYPTIAN HIEROGLYPH U031;Lo;0;L;;;;;N;;;;;
 11.4508 +13356;EGYPTIAN HIEROGLYPH U032;Lo;0;L;;;;;N;;;;;
 11.4509 +13357;EGYPTIAN HIEROGLYPH U032A;Lo;0;L;;;;;N;;;;;
 11.4510 +13358;EGYPTIAN HIEROGLYPH U033;Lo;0;L;;;;;N;;;;;
 11.4511 +13359;EGYPTIAN HIEROGLYPH U034;Lo;0;L;;;;;N;;;;;
 11.4512 +1335A;EGYPTIAN HIEROGLYPH U035;Lo;0;L;;;;;N;;;;;
 11.4513 +1335B;EGYPTIAN HIEROGLYPH U036;Lo;0;L;;;;;N;;;;;
 11.4514 +1335C;EGYPTIAN HIEROGLYPH U037;Lo;0;L;;;;;N;;;;;
 11.4515 +1335D;EGYPTIAN HIEROGLYPH U038;Lo;0;L;;;;;N;;;;;
 11.4516 +1335E;EGYPTIAN HIEROGLYPH U039;Lo;0;L;;;;;N;;;;;
 11.4517 +1335F;EGYPTIAN HIEROGLYPH U040;Lo;0;L;;;;;N;;;;;
 11.4518 +13360;EGYPTIAN HIEROGLYPH U041;Lo;0;L;;;;;N;;;;;
 11.4519 +13361;EGYPTIAN HIEROGLYPH U042;Lo;0;L;;;;;N;;;;;
 11.4520 +13362;EGYPTIAN HIEROGLYPH V001;Lo;0;L;;;;;N;;;;;
 11.4521 +13363;EGYPTIAN HIEROGLYPH V001A;Lo;0;L;;;;;N;;;;;
 11.4522 +13364;EGYPTIAN HIEROGLYPH V001B;Lo;0;L;;;;;N;;;;;
 11.4523 +13365;EGYPTIAN HIEROGLYPH V001C;Lo;0;L;;;;;N;;;;;
 11.4524 +13366;EGYPTIAN HIEROGLYPH V001D;Lo;0;L;;;;;N;;;;;
 11.4525 +13367;EGYPTIAN HIEROGLYPH V001E;Lo;0;L;;;;;N;;;;;
 11.4526 +13368;EGYPTIAN HIEROGLYPH V001F;Lo;0;L;;;;;N;;;;;
 11.4527 +13369;EGYPTIAN HIEROGLYPH V001G;Lo;0;L;;;;;N;;;;;
 11.4528 +1336A;EGYPTIAN HIEROGLYPH V001H;Lo;0;L;;;;;N;;;;;
 11.4529 +1336B;EGYPTIAN HIEROGLYPH V001I;Lo;0;L;;;;;N;;;;;
 11.4530 +1336C;EGYPTIAN HIEROGLYPH V002;Lo;0;L;;;;;N;;;;;
 11.4531 +1336D;EGYPTIAN HIEROGLYPH V002A;Lo;0;L;;;;;N;;;;;
 11.4532 +1336E;EGYPTIAN HIEROGLYPH V003;Lo;0;L;;;;;N;;;;;
 11.4533 +1336F;EGYPTIAN HIEROGLYPH V004;Lo;0;L;;;;;N;;;;;
 11.4534 +13370;EGYPTIAN HIEROGLYPH V005;Lo;0;L;;;;;N;;;;;
 11.4535 +13371;EGYPTIAN HIEROGLYPH V006;Lo;0;L;;;;;N;;;;;
 11.4536 +13372;EGYPTIAN HIEROGLYPH V007;Lo;0;L;;;;;N;;;;;
 11.4537 +13373;EGYPTIAN HIEROGLYPH V007A;Lo;0;L;;;;;N;;;;;
 11.4538 +13374;EGYPTIAN HIEROGLYPH V007B;Lo;0;L;;;;;N;;;;;
 11.4539 +13375;EGYPTIAN HIEROGLYPH V008;Lo;0;L;;;;;N;;;;;
 11.4540 +13376;EGYPTIAN HIEROGLYPH V009;Lo;0;L;;;;;N;;;;;
 11.4541 +13377;EGYPTIAN HIEROGLYPH V010;Lo;0;L;;;;;N;;;;;
 11.4542 +13378;EGYPTIAN HIEROGLYPH V011;Lo;0;L;;;;;N;;;;;
 11.4543 +13379;EGYPTIAN HIEROGLYPH V011A;Lo;0;L;;;;;N;;;;;
 11.4544 +1337A;EGYPTIAN HIEROGLYPH V011B;Lo;0;L;;;;;N;;;;;
 11.4545 +1337B;EGYPTIAN HIEROGLYPH V011C;Lo;0;L;;;;;N;;;;;
 11.4546 +1337C;EGYPTIAN HIEROGLYPH V012;Lo;0;L;;;;;N;;;;;
 11.4547 +1337D;EGYPTIAN HIEROGLYPH V012A;Lo;0;L;;;;;N;;;;;
 11.4548 +1337E;EGYPTIAN HIEROGLYPH V012B;Lo;0;L;;;;;N;;;;;
 11.4549 +1337F;EGYPTIAN HIEROGLYPH V013;Lo;0;L;;;;;N;;;;;
 11.4550 +13380;EGYPTIAN HIEROGLYPH V014;Lo;0;L;;;;;N;;;;;
 11.4551 +13381;EGYPTIAN HIEROGLYPH V015;Lo;0;L;;;;;N;;;;;
 11.4552 +13382;EGYPTIAN HIEROGLYPH V016;Lo;0;L;;;;;N;;;;;
 11.4553 +13383;EGYPTIAN HIEROGLYPH V017;Lo;0;L;;;;;N;;;;;
 11.4554 +13384;EGYPTIAN HIEROGLYPH V018;Lo;0;L;;;;;N;;;;;
 11.4555 +13385;EGYPTIAN HIEROGLYPH V019;Lo;0;L;;;;;N;;;;;
 11.4556 +13386;EGYPTIAN HIEROGLYPH V020;Lo;0;L;;;;;N;;;;;
 11.4557 +13387;EGYPTIAN HIEROGLYPH V020A;Lo;0;L;;;;;N;;;;;
 11.4558 +13388;EGYPTIAN HIEROGLYPH V020B;Lo;0;L;;;;;N;;;;;
 11.4559 +13389;EGYPTIAN HIEROGLYPH V020C;Lo;0;L;;;;;N;;;;;
 11.4560 +1338A;EGYPTIAN HIEROGLYPH V020D;Lo;0;L;;;;;N;;;;;
 11.4561 +1338B;EGYPTIAN HIEROGLYPH V020E;Lo;0;L;;;;;N;;;;;
 11.4562 +1338C;EGYPTIAN HIEROGLYPH V020F;Lo;0;L;;;;;N;;;;;
 11.4563 +1338D;EGYPTIAN HIEROGLYPH V020G;Lo;0;L;;;;;N;;;;;
 11.4564 +1338E;EGYPTIAN HIEROGLYPH V020H;Lo;0;L;;;;;N;;;;;
 11.4565 +1338F;EGYPTIAN HIEROGLYPH V020I;Lo;0;L;;;;;N;;;;;
 11.4566 +13390;EGYPTIAN HIEROGLYPH V020J;Lo;0;L;;;;;N;;;;;
 11.4567 +13391;EGYPTIAN HIEROGLYPH V020K;Lo;0;L;;;;;N;;;;;
 11.4568 +13392;EGYPTIAN HIEROGLYPH V020L;Lo;0;L;;;;;N;;;;;
 11.4569 +13393;EGYPTIAN HIEROGLYPH V021;Lo;0;L;;;;;N;;;;;
 11.4570 +13394;EGYPTIAN HIEROGLYPH V022;Lo;0;L;;;;;N;;;;;
 11.4571 +13395;EGYPTIAN HIEROGLYPH V023;Lo;0;L;;;;;N;;;;;
 11.4572 +13396;EGYPTIAN HIEROGLYPH V023A;Lo;0;L;;;;;N;;;;;
 11.4573 +13397;EGYPTIAN HIEROGLYPH V024;Lo;0;L;;;;;N;;;;;
 11.4574 +13398;EGYPTIAN HIEROGLYPH V025;Lo;0;L;;;;;N;;;;;
 11.4575 +13399;EGYPTIAN HIEROGLYPH V026;Lo;0;L;;;;;N;;;;;
 11.4576 +1339A;EGYPTIAN HIEROGLYPH V027;Lo;0;L;;;;;N;;;;;
 11.4577 +1339B;EGYPTIAN HIEROGLYPH V028;Lo;0;L;;;;;N;;;;;
 11.4578 +1339C;EGYPTIAN HIEROGLYPH V028A;Lo;0;L;;;;;N;;;;;
 11.4579 +1339D;EGYPTIAN HIEROGLYPH V029;Lo;0;L;;;;;N;;;;;
 11.4580 +1339E;EGYPTIAN HIEROGLYPH V029A;Lo;0;L;;;;;N;;;;;
 11.4581 +1339F;EGYPTIAN HIEROGLYPH V030;Lo;0;L;;;;;N;;;;;
 11.4582 +133A0;EGYPTIAN HIEROGLYPH V030A;Lo;0;L;;;;;N;;;;;
 11.4583 +133A1;EGYPTIAN HIEROGLYPH V031;Lo;0;L;;;;;N;;;;;
 11.4584 +133A2;EGYPTIAN HIEROGLYPH V031A;Lo;0;L;;;;;N;;;;;
 11.4585 +133A3;EGYPTIAN HIEROGLYPH V032;Lo;0;L;;;;;N;;;;;
 11.4586 +133A4;EGYPTIAN HIEROGLYPH V033;Lo;0;L;;;;;N;;;;;
 11.4587 +133A5;EGYPTIAN HIEROGLYPH V033A;Lo;0;L;;;;;N;;;;;
 11.4588 +133A6;EGYPTIAN HIEROGLYPH V034;Lo;0;L;;;;;N;;;;;
 11.4589 +133A7;EGYPTIAN HIEROGLYPH V035;Lo;0;L;;;;;N;;;;;
 11.4590 +133A8;EGYPTIAN HIEROGLYPH V036;Lo;0;L;;;;;N;;;;;
 11.4591 +133A9;EGYPTIAN HIEROGLYPH V037;Lo;0;L;;;;;N;;;;;
 11.4592 +133AA;EGYPTIAN HIEROGLYPH V037A;Lo;0;L;;;;;N;;;;;
 11.4593 +133AB;EGYPTIAN HIEROGLYPH V038;Lo;0;L;;;;;N;;;;;
 11.4594 +133AC;EGYPTIAN HIEROGLYPH V039;Lo;0;L;;;;;N;;;;;
 11.4595 +133AD;EGYPTIAN HIEROGLYPH V040;Lo;0;L;;;;;N;;;;;
 11.4596 +133AE;EGYPTIAN HIEROGLYPH V040A;Lo;0;L;;;;;N;;;;;
 11.4597 +133AF;EGYPTIAN HIEROGLYPH W001;Lo;0;L;;;;;N;;;;;
 11.4598 +133B0;EGYPTIAN HIEROGLYPH W002;Lo;0;L;;;;;N;;;;;
 11.4599 +133B1;EGYPTIAN HIEROGLYPH W003;Lo;0;L;;;;;N;;;;;
 11.4600 +133B2;EGYPTIAN HIEROGLYPH W003A;Lo;0;L;;;;;N;;;;;
 11.4601 +133B3;EGYPTIAN HIEROGLYPH W004;Lo;0;L;;;;;N;;;;;
 11.4602 +133B4;EGYPTIAN HIEROGLYPH W005;Lo;0;L;;;;;N;;;;;
 11.4603 +133B5;EGYPTIAN HIEROGLYPH W006;Lo;0;L;;;;;N;;;;;
 11.4604 +133B6;EGYPTIAN HIEROGLYPH W007;Lo;0;L;;;;;N;;;;;
 11.4605 +133B7;EGYPTIAN HIEROGLYPH W008;Lo;0;L;;;;;N;;;;;
 11.4606 +133B8;EGYPTIAN HIEROGLYPH W009;Lo;0;L;;;;;N;;;;;
 11.4607 +133B9;EGYPTIAN HIEROGLYPH W009A;Lo;0;L;;;;;N;;;;;
 11.4608 +133BA;EGYPTIAN HIEROGLYPH W010;Lo;0;L;;;;;N;;;;;
 11.4609 +133BB;EGYPTIAN HIEROGLYPH W010A;Lo;0;L;;;;;N;;;;;
 11.4610 +133BC;EGYPTIAN HIEROGLYPH W011;Lo;0;L;;;;;N;;;;;
 11.4611 +133BD;EGYPTIAN HIEROGLYPH W012;Lo;0;L;;;;;N;;;;;
 11.4612 +133BE;EGYPTIAN HIEROGLYPH W013;Lo;0;L;;;;;N;;;;;
 11.4613 +133BF;EGYPTIAN HIEROGLYPH W014;Lo;0;L;;;;;N;;;;;
 11.4614 +133C0;EGYPTIAN HIEROGLYPH W014A;Lo;0;L;;;;;N;;;;;
 11.4615 +133C1;EGYPTIAN HIEROGLYPH W015;Lo;0;L;;;;;N;;;;;
 11.4616 +133C2;EGYPTIAN HIEROGLYPH W016;Lo;0;L;;;;;N;;;;;
 11.4617 +133C3;EGYPTIAN HIEROGLYPH W017;Lo;0;L;;;;;N;;;;;
 11.4618 +133C4;EGYPTIAN HIEROGLYPH W017A;Lo;0;L;;;;;N;;;;;
 11.4619 +133C5;EGYPTIAN HIEROGLYPH W018;Lo;0;L;;;;;N;;;;;
 11.4620 +133C6;EGYPTIAN HIEROGLYPH W018A;Lo;0;L;;;;;N;;;;;
 11.4621 +133C7;EGYPTIAN HIEROGLYPH W019;Lo;0;L;;;;;N;;;;;
 11.4622 +133C8;EGYPTIAN HIEROGLYPH W020;Lo;0;L;;;;;N;;;;;
 11.4623 +133C9;EGYPTIAN HIEROGLYPH W021;Lo;0;L;;;;;N;;;;;
 11.4624 +133CA;EGYPTIAN HIEROGLYPH W022;Lo;0;L;;;;;N;;;;;
 11.4625 +133CB;EGYPTIAN HIEROGLYPH W023;Lo;0;L;;;;;N;;;;;
 11.4626 +133CC;EGYPTIAN HIEROGLYPH W024;Lo;0;L;;;;;N;;;;;
 11.4627 +133CD;EGYPTIAN HIEROGLYPH W024A;Lo;0;L;;;;;N;;;;;
 11.4628 +133CE;EGYPTIAN HIEROGLYPH W025;Lo;0;L;;;;;N;;;;;
 11.4629 +133CF;EGYPTIAN HIEROGLYPH X001;Lo;0;L;;;;;N;;;;;
 11.4630 +133D0;EGYPTIAN HIEROGLYPH X002;Lo;0;L;;;;;N;;;;;
 11.4631 +133D1;EGYPTIAN HIEROGLYPH X003;Lo;0;L;;;;;N;;;;;
 11.4632 +133D2;EGYPTIAN HIEROGLYPH X004;Lo;0;L;;;;;N;;;;;
 11.4633 +133D3;EGYPTIAN HIEROGLYPH X004A;Lo;0;L;;;;;N;;;;;
 11.4634 +133D4;EGYPTIAN HIEROGLYPH X004B;Lo;0;L;;;;;N;;;;;
 11.4635 +133D5;EGYPTIAN HIEROGLYPH X005;Lo;0;L;;;;;N;;;;;
 11.4636 +133D6;EGYPTIAN HIEROGLYPH X006;Lo;0;L;;;;;N;;;;;
 11.4637 +133D7;EGYPTIAN HIEROGLYPH X006A;Lo;0;L;;;;;N;;;;;
 11.4638 +133D8;EGYPTIAN HIEROGLYPH X007;Lo;0;L;;;;;N;;;;;
 11.4639 +133D9;EGYPTIAN HIEROGLYPH X008;Lo;0;L;;;;;N;;;;;
 11.4640 +133DA;EGYPTIAN HIEROGLYPH X008A;Lo;0;L;;;;;N;;;;;
 11.4641 +133DB;EGYPTIAN HIEROGLYPH Y001;Lo;0;L;;;;;N;;;;;
 11.4642 +133DC;EGYPTIAN HIEROGLYPH Y001A;Lo;0;L;;;;;N;;;;;
 11.4643 +133DD;EGYPTIAN HIEROGLYPH Y002;Lo;0;L;;;;;N;;;;;
 11.4644 +133DE;EGYPTIAN HIEROGLYPH Y003;Lo;0;L;;;;;N;;;;;
 11.4645 +133DF;EGYPTIAN HIEROGLYPH Y004;Lo;0;L;;;;;N;;;;;
 11.4646 +133E0;EGYPTIAN HIEROGLYPH Y005;Lo;0;L;;;;;N;;;;;
 11.4647 +133E1;EGYPTIAN HIEROGLYPH Y006;Lo;0;L;;;;;N;;;;;
 11.4648 +133E2;EGYPTIAN HIEROGLYPH Y007;Lo;0;L;;;;;N;;;;;
 11.4649 +133E3;EGYPTIAN HIEROGLYPH Y008;Lo;0;L;;;;;N;;;;;
 11.4650 +133E4;EGYPTIAN HIEROGLYPH Z001;Lo;0;L;;;;;N;;;;;
 11.4651 +133E5;EGYPTIAN HIEROGLYPH Z002;Lo;0;L;;;;;N;;;;;
 11.4652 +133E6;EGYPTIAN HIEROGLYPH Z002A;Lo;0;L;;;;;N;;;;;
 11.4653 +133E7;EGYPTIAN HIEROGLYPH Z002B;Lo;0;L;;;;;N;;;;;
 11.4654 +133E8;EGYPTIAN HIEROGLYPH Z002C;Lo;0;L;;;;;N;;;;;
 11.4655 +133E9;EGYPTIAN HIEROGLYPH Z002D;Lo;0;L;;;;;N;;;;;
 11.4656 +133EA;EGYPTIAN HIEROGLYPH Z003;Lo;0;L;;;;;N;;;;;
 11.4657 +133EB;EGYPTIAN HIEROGLYPH Z003A;Lo;0;L;;;;;N;;;;;
 11.4658 +133EC;EGYPTIAN HIEROGLYPH Z003B;Lo;0;L;;;;;N;;;;;
 11.4659 +133ED;EGYPTIAN HIEROGLYPH Z004;Lo;0;L;;;;;N;;;;;
 11.4660 +133EE;EGYPTIAN HIEROGLYPH Z004A;Lo;0;L;;;;;N;;;;;
 11.4661 +133EF;EGYPTIAN HIEROGLYPH Z005;Lo;0;L;;;;;N;;;;;
 11.4662 +133F0;EGYPTIAN HIEROGLYPH Z005A;Lo;0;L;;;;;N;;;;;
 11.4663 +133F1;EGYPTIAN HIEROGLYPH Z006;Lo;0;L;;;;;N;;;;;
 11.4664 +133F2;EGYPTIAN HIEROGLYPH Z007;Lo;0;L;;;;;N;;;;;
 11.4665 +133F3;EGYPTIAN HIEROGLYPH Z008;Lo;0;L;;;;;N;;;;;
 11.4666 +133F4;EGYPTIAN HIEROGLYPH Z009;Lo;0;L;;;;;N;;;;;
 11.4667 +133F5;EGYPTIAN HIEROGLYPH Z010;Lo;0;L;;;;;N;;;;;
 11.4668 +133F6;EGYPTIAN HIEROGLYPH Z011;Lo;0;L;;;;;N;;;;;
 11.4669 +133F7;EGYPTIAN HIEROGLYPH Z012;Lo;0;L;;;;;N;;;;;
 11.4670 +133F8;EGYPTIAN HIEROGLYPH Z013;Lo;0;L;;;;;N;;;;;
 11.4671 +133F9;EGYPTIAN HIEROGLYPH Z014;Lo;0;L;;;;;N;;;;;
 11.4672 +133FA;EGYPTIAN HIEROGLYPH Z015;Lo;0;L;;;;;N;;;;;
 11.4673 +133FB;EGYPTIAN HIEROGLYPH Z015A;Lo;0;L;;;;;N;;;;;
 11.4674 +133FC;EGYPTIAN HIEROGLYPH Z015B;Lo;0;L;;;;;N;;;;;
 11.4675 +133FD;EGYPTIAN HIEROGLYPH Z015C;Lo;0;L;;;;;N;;;;;
 11.4676 +133FE;EGYPTIAN HIEROGLYPH Z015D;Lo;0;L;;;;;N;;;;;
 11.4677 +133FF;EGYPTIAN HIEROGLYPH Z015E;Lo;0;L;;;;;N;;;;;
 11.4678 +13400;EGYPTIAN HIEROGLYPH Z015F;Lo;0;L;;;;;N;;;;;
 11.4679 +13401;EGYPTIAN HIEROGLYPH Z015G;Lo;0;L;;;;;N;;;;;
 11.4680 +13402;EGYPTIAN HIEROGLYPH Z015H;Lo;0;L;;;;;N;;;;;
 11.4681 +13403;EGYPTIAN HIEROGLYPH Z015I;Lo;0;L;;;;;N;;;;;
 11.4682 +13404;EGYPTIAN HIEROGLYPH Z016;Lo;0;L;;;;;N;;;;;
 11.4683 +13405;EGYPTIAN HIEROGLYPH Z016A;Lo;0;L;;;;;N;;;;;
 11.4684 +13406;EGYPTIAN HIEROGLYPH Z016B;Lo;0;L;;;;;N;;;;;
 11.4685 +13407;EGYPTIAN HIEROGLYPH Z016C;Lo;0;L;;;;;N;;;;;
 11.4686 +13408;EGYPTIAN HIEROGLYPH Z016D;Lo;0;L;;;;;N;;;;;
 11.4687 +13409;EGYPTIAN HIEROGLYPH Z016E;Lo;0;L;;;;;N;;;;;
 11.4688 +1340A;EGYPTIAN HIEROGLYPH Z016F;Lo;0;L;;;;;N;;;;;
 11.4689 +1340B;EGYPTIAN HIEROGLYPH Z016G;Lo;0;L;;;;;N;;;;;
 11.4690 +1340C;EGYPTIAN HIEROGLYPH Z016H;Lo;0;L;;;;;N;;;;;
 11.4691 +1340D;EGYPTIAN HIEROGLYPH AA001;Lo;0;L;;;;;N;;;;;
 11.4692 +1340E;EGYPTIAN HIEROGLYPH AA002;Lo;0;L;;;;;N;;;;;
 11.4693 +1340F;EGYPTIAN HIEROGLYPH AA003;Lo;0;L;;;;;N;;;;;
 11.4694 +13410;EGYPTIAN HIEROGLYPH AA004;Lo;0;L;;;;;N;;;;;
 11.4695 +13411;EGYPTIAN HIEROGLYPH AA005;Lo;0;L;;;;;N;;;;;
 11.4696 +13412;EGYPTIAN HIEROGLYPH AA006;Lo;0;L;;;;;N;;;;;
 11.4697 +13413;EGYPTIAN HIEROGLYPH AA007;Lo;0;L;;;;;N;;;;;
 11.4698 +13414;EGYPTIAN HIEROGLYPH AA007A;Lo;0;L;;;;;N;;;;;
 11.4699 +13415;EGYPTIAN HIEROGLYPH AA007B;Lo;0;L;;;;;N;;;;;
 11.4700 +13416;EGYPTIAN HIEROGLYPH AA008;Lo;0;L;;;;;N;;;;;
 11.4701 +13417;EGYPTIAN HIEROGLYPH AA009;Lo;0;L;;;;;N;;;;;
 11.4702 +13418;EGYPTIAN HIEROGLYPH AA010;Lo;0;L;;;;;N;;;;;
 11.4703 +13419;EGYPTIAN HIEROGLYPH AA011;Lo;0;L;;;;;N;;;;;
 11.4704 +1341A;EGYPTIAN HIEROGLYPH AA012;Lo;0;L;;;;;N;;;;;
 11.4705 +1341B;EGYPTIAN HIEROGLYPH AA013;Lo;0;L;;;;;N;;;;;
 11.4706 +1341C;EGYPTIAN HIEROGLYPH AA014;Lo;0;L;;;;;N;;;;;
 11.4707 +1341D;EGYPTIAN HIEROGLYPH AA015;Lo;0;L;;;;;N;;;;;
 11.4708 +1341E;EGYPTIAN HIEROGLYPH AA016;Lo;0;L;;;;;N;;;;;
 11.4709 +1341F;EGYPTIAN HIEROGLYPH AA017;Lo;0;L;;;;;N;;;;;
 11.4710 +13420;EGYPTIAN HIEROGLYPH AA018;Lo;0;L;;;;;N;;;;;
 11.4711 +13421;EGYPTIAN HIEROGLYPH AA019;Lo;0;L;;;;;N;;;;;
 11.4712 +13422;EGYPTIAN HIEROGLYPH AA020;Lo;0;L;;;;;N;;;;;
 11.4713 +13423;EGYPTIAN HIEROGLYPH AA021;Lo;0;L;;;;;N;;;;;
 11.4714 +13424;EGYPTIAN HIEROGLYPH AA022;Lo;0;L;;;;;N;;;;;
 11.4715 +13425;EGYPTIAN HIEROGLYPH AA023;Lo;0;L;;;;;N;;;;;
 11.4716 +13426;EGYPTIAN HIEROGLYPH AA024;Lo;0;L;;;;;N;;;;;
 11.4717 +13427;EGYPTIAN HIEROGLYPH AA025;Lo;0;L;;;;;N;;;;;
 11.4718 +13428;EGYPTIAN HIEROGLYPH AA026;Lo;0;L;;;;;N;;;;;
 11.4719 +13429;EGYPTIAN HIEROGLYPH AA027;Lo;0;L;;;;;N;;;;;
 11.4720 +1342A;EGYPTIAN HIEROGLYPH AA028;Lo;0;L;;;;;N;;;;;
 11.4721 +1342B;EGYPTIAN HIEROGLYPH AA029;Lo;0;L;;;;;N;;;;;
 11.4722 +1342C;EGYPTIAN HIEROGLYPH AA030;Lo;0;L;;;;;N;;;;;
 11.4723 +1342D;EGYPTIAN HIEROGLYPH AA031;Lo;0;L;;;;;N;;;;;
 11.4724 +1342E;EGYPTIAN HIEROGLYPH AA032;Lo;0;L;;;;;N;;;;;
 11.4725 +16800;BAMUM LETTER PHASE-A NGKUE MFON;Lo;0;L;;;;;N;;;;;
 11.4726 +16801;BAMUM LETTER PHASE-A GBIEE FON;Lo;0;L;;;;;N;;;;;
 11.4727 +16802;BAMUM LETTER PHASE-A PON MFON PIPAEMGBIEE;Lo;0;L;;;;;N;;;;;
 11.4728 +16803;BAMUM LETTER PHASE-A PON MFON PIPAEMBA;Lo;0;L;;;;;N;;;;;
 11.4729 +16804;BAMUM LETTER PHASE-A NAA MFON;Lo;0;L;;;;;N;;;;;
 11.4730 +16805;BAMUM LETTER PHASE-A SHUENSHUET;Lo;0;L;;;;;N;;;;;
 11.4731 +16806;BAMUM LETTER PHASE-A TITA MFON;Lo;0;L;;;;;N;;;;;
 11.4732 +16807;BAMUM LETTER PHASE-A NZA MFON;Lo;0;L;;;;;N;;;;;
 11.4733 +16808;BAMUM LETTER PHASE-A SHINDA PA NJI;Lo;0;L;;;;;N;;;;;
 11.4734 +16809;BAMUM LETTER PHASE-A PON PA NJI PIPAEMGBIEE;Lo;0;L;;;;;N;;;;;
 11.4735 +1680A;BAMUM LETTER PHASE-A PON PA NJI PIPAEMBA;Lo;0;L;;;;;N;;;;;
 11.4736 +1680B;BAMUM LETTER PHASE-A MAEMBGBIEE;Lo;0;L;;;;;N;;;;;
 11.4737 +1680C;BAMUM LETTER PHASE-A TU MAEMBA;Lo;0;L;;;;;N;;;;;
 11.4738 +1680D;BAMUM LETTER PHASE-A NGANGU;Lo;0;L;;;;;N;;;;;
 11.4739 +1680E;BAMUM LETTER PHASE-A MAEMVEUX;Lo;0;L;;;;;N;;;;;
 11.4740 +1680F;BAMUM LETTER PHASE-A MANSUAE;Lo;0;L;;;;;N;;;;;
 11.4741 +16810;BAMUM LETTER PHASE-A MVEUAENGAM;Lo;0;L;;;;;N;;;;;
 11.4742 +16811;BAMUM LETTER PHASE-A SEUNYAM;Lo;0;L;;;;;N;;;;;
 11.4743 +16812;BAMUM LETTER PHASE-A NTOQPEN;Lo;0;L;;;;;N;;;;;
 11.4744 +16813;BAMUM LETTER PHASE-A KEUKEUTNDA;Lo;0;L;;;;;N;;;;;
 11.4745 +16814;BAMUM LETTER PHASE-A NKINDI;Lo;0;L;;;;;N;;;;;
 11.4746 +16815;BAMUM LETTER PHASE-A SUU;Lo;0;L;;;;;N;;;;;
 11.4747 +16816;BAMUM LETTER PHASE-A NGKUENZEUM;Lo;0;L;;;;;N;;;;;
 11.4748 +16817;BAMUM LETTER PHASE-A LAPAQ;Lo;0;L;;;;;N;;;;;
 11.4749 +16818;BAMUM LETTER PHASE-A LET KUT;Lo;0;L;;;;;N;;;;;
 11.4750 +16819;BAMUM LETTER PHASE-A NTAP MFAA;Lo;0;L;;;;;N;;;;;
 11.4751 +1681A;BAMUM LETTER PHASE-A MAEKEUP;Lo;0;L;;;;;N;;;;;
 11.4752 +1681B;BAMUM LETTER PHASE-A PASHAE;Lo;0;L;;;;;N;;;;;
 11.4753 +1681C;BAMUM LETTER PHASE-A GHEUAERAE;Lo;0;L;;;;;N;;;;;
 11.4754 +1681D;BAMUM LETTER PHASE-A PAMSHAE;Lo;0;L;;;;;N;;;;;
 11.4755 +1681E;BAMUM LETTER PHASE-A MON NGGEUAET;Lo;0;L;;;;;N;;;;;
 11.4756 +1681F;BAMUM LETTER PHASE-A NZUN MEUT;Lo;0;L;;;;;N;;;;;
 11.4757 +16820;BAMUM LETTER PHASE-A U YUQ NAE;Lo;0;L;;;;;N;;;;;
 11.4758 +16821;BAMUM LETTER PHASE-A GHEUAEGHEUAE;Lo;0;L;;;;;N;;;;;
 11.4759 +16822;BAMUM LETTER PHASE-A NTAP NTAA;Lo;0;L;;;;;N;;;;;
 11.4760 +16823;BAMUM LETTER PHASE-A SISA;Lo;0;L;;;;;N;;;;;
 11.4761 +16824;BAMUM LETTER PHASE-A MGBASA;Lo;0;L;;;;;N;;;;;
 11.4762 +16825;BAMUM LETTER PHASE-A MEUNJOMNDEUQ;Lo;0;L;;;;;N;;;;;
 11.4763 +16826;BAMUM LETTER PHASE-A MOOMPUQ;Lo;0;L;;;;;N;;;;;
 11.4764 +16827;BAMUM LETTER PHASE-A KAFA;Lo;0;L;;;;;N;;;;;
 11.4765 +16828;BAMUM LETTER PHASE-A PA LEERAEWA;Lo;0;L;;;;;N;;;;;
 11.4766 +16829;BAMUM LETTER PHASE-A NDA LEERAEWA;Lo;0;L;;;;;N;;;;;
 11.4767 +1682A;BAMUM LETTER PHASE-A PET;Lo;0;L;;;;;N;;;;;
 11.4768 +1682B;BAMUM LETTER PHASE-A MAEMKPEN;Lo;0;L;;;;;N;;;;;
 11.4769 +1682C;BAMUM LETTER PHASE-A NIKA;Lo;0;L;;;;;N;;;;;
 11.4770 +1682D;BAMUM LETTER PHASE-A PUP;Lo;0;L;;;;;N;;;;;
 11.4771 +1682E;BAMUM LETTER PHASE-A TUAEP;Lo;0;L;;;;;N;;;;;
 11.4772 +1682F;BAMUM LETTER PHASE-A LUAEP;Lo;0;L;;;;;N;;;;;
 11.4773 +16830;BAMUM LETTER PHASE-A SONJAM;Lo;0;L;;;;;N;;;;;
 11.4774 +16831;BAMUM LETTER PHASE-A TEUTEUWEN;Lo;0;L;;;;;N;;;;;
 11.4775 +16832;BAMUM LETTER PHASE-A MAENYI;Lo;0;L;;;;;N;;;;;
 11.4776 +16833;BAMUM LETTER PHASE-A KET;Lo;0;L;;;;;N;;;;;
 11.4777 +16834;BAMUM LETTER PHASE-A NDAANGGEUAET;Lo;0;L;;;;;N;;;;;
 11.4778 +16835;BAMUM LETTER PHASE-A KUOQ;Lo;0;L;;;;;N;;;;;
 11.4779 +16836;BAMUM LETTER PHASE-A MOOMEUT;Lo;0;L;;;;;N;;;;;
 11.4780 +16837;BAMUM LETTER PHASE-A SHUM;Lo;0;L;;;;;N;;;;;
 11.4781 +16838;BAMUM LETTER PHASE-A LOMMAE;Lo;0;L;;;;;N;;;;;
 11.4782 +16839;BAMUM LETTER PHASE-A FIRI;Lo;0;L;;;;;N;;;;;
 11.4783 +1683A;BAMUM LETTER PHASE-A ROM;Lo;0;L;;;;;N;;;;;
 11.4784 +1683B;BAMUM LETTER PHASE-A KPOQ;Lo;0;L;;;;;N;;;;;
 11.4785 +1683C;BAMUM LETTER PHASE-A SOQ;Lo;0;L;;;;;N;;;;;
 11.4786 +1683D;BAMUM LETTER PHASE-A MAP PIEET;Lo;0;L;;;;;N;;;;;
 11.4787 +1683E;BAMUM LETTER PHASE-A SHIRAE;Lo;0;L;;;;;N;;;;;
 11.4788 +1683F;BAMUM LETTER PHASE-A NTAP;Lo;0;L;;;;;N;;;;;
 11.4789 +16840;BAMUM LETTER PHASE-A SHOQ NSHUT YUM;Lo;0;L;;;;;N;;;;;
 11.4790 +16841;BAMUM LETTER PHASE-A NYIT MONGKEUAEQ;Lo;0;L;;;;;N;;;;;
 11.4791 +16842;BAMUM LETTER PHASE-A PAARAE;Lo;0;L;;;;;N;;;;;
 11.4792 +16843;BAMUM LETTER PHASE-A NKAARAE;Lo;0;L;;;;;N;;;;;
 11.4793 +16844;BAMUM LETTER PHASE-A UNKNOWN;Lo;0;L;;;;;N;;;;;
 11.4794 +16845;BAMUM LETTER PHASE-A NGGEN;Lo;0;L;;;;;N;;;;;
 11.4795 +16846;BAMUM LETTER PHASE-A MAESI;Lo;0;L;;;;;N;;;;;
 11.4796 +16847;BAMUM LETTER PHASE-A NJAM;Lo;0;L;;;;;N;;;;;
 11.4797 +16848;BAMUM LETTER PHASE-A MBANYI;Lo;0;L;;;;;N;;;;;
 11.4798 +16849;BAMUM LETTER PHASE-A NYET;Lo;0;L;;;;;N;;;;;
 11.4799 +1684A;BAMUM LETTER PHASE-A TEUAEN;Lo;0;L;;;;;N;;;;;
 11.4800 +1684B;BAMUM LETTER PHASE-A SOT;Lo;0;L;;;;;N;;;;;
 11.4801 +1684C;BAMUM LETTER PHASE-A PAAM;Lo;0;L;;;;;N;;;;;
 11.4802 +1684D;BAMUM LETTER PHASE-A NSHIEE;Lo;0;L;;;;;N;;;;;
 11.4803 +1684E;BAMUM LETTER PHASE-A MAEM;Lo;0;L;;;;;N;;;;;
 11.4804 +1684F;BAMUM LETTER PHASE-A NYI;Lo;0;L;;;;;N;;;;;
 11.4805 +16850;BAMUM LETTER PHASE-A KAQ;Lo;0;L;;;;;N;;;;;
 11.4806 +16851;BAMUM LETTER PHASE-A NSHA;Lo;0;L;;;;;N;;;;;
 11.4807 +16852;BAMUM LETTER PHASE-A VEE;Lo;0;L;;;;;N;;;;;
 11.4808 +16853;BAMUM LETTER PHASE-A LU;Lo;0;L;;;;;N;;;;;
 11.4809 +16854;BAMUM LETTER PHASE-A NEN;Lo;0;L;;;;;N;;;;;
 11.4810 +16855;BAMUM LETTER PHASE-A NAQ;Lo;0;L;;;;;N;;;;;
 11.4811 +16856;BAMUM LETTER PHASE-A MBAQ;Lo;0;L;;;;;N;;;;;
 11.4812 +16857;BAMUM LETTER PHASE-B NSHUET;Lo;0;L;;;;;N;;;;;
 11.4813 +16858;BAMUM LETTER PHASE-B TU MAEMGBIEE;Lo;0;L;;;;;N;;;;;
 11.4814 +16859;BAMUM LETTER PHASE-B SIEE;Lo;0;L;;;;;N;;;;;
 11.4815 +1685A;BAMUM LETTER PHASE-B SET TU;Lo;0;L;;;;;N;;;;;
 11.4816 +1685B;BAMUM LETTER PHASE-B LOM NTEUM;Lo;0;L;;;;;N;;;;;
 11.4817 +1685C;BAMUM LETTER PHASE-B MBA MAELEE;Lo;0;L;;;;;N;;;;;
 11.4818 +1685D;BAMUM LETTER PHASE-B KIEEM;Lo;0;L;;;;;N;;;;;
 11.4819 +1685E;BAMUM LETTER PHASE-B YEURAE;Lo;0;L;;;;;N;;;;;
 11.4820 +1685F;BAMUM LETTER PHASE-B MBAARAE;Lo;0;L;;;;;N;;;;;
 11.4821 +16860;BAMUM LETTER PHASE-B KAM;Lo;0;L;;;;;N;;;;;
 11.4822 +16861;BAMUM LETTER PHASE-B PEESHI;Lo;0;L;;;;;N;;;;;
 11.4823 +16862;BAMUM LETTER PHASE-B YAFU LEERAEWA;Lo;0;L;;;;;N;;;;;
 11.4824 +16863;BAMUM LETTER PHASE-B LAM NSHUT NYAM;Lo;0;L;;;;;N;;;;;
 11.4825 +16864;BAMUM LETTER PHASE-B NTIEE SHEUOQ;Lo;0;L;;;;;N;;;;;
 11.4826 +16865;BAMUM LETTER PHASE-B NDU NJAA;Lo;0;L;;;;;N;;;;;
 11.4827 +16866;BAMUM LETTER PHASE-B GHEUGHEUAEM;Lo;0;L;;;;;N;;;;;
 11.4828 +16867;BAMUM LETTER PHASE-B PIT;Lo;0;L;;;;;N;;;;;
 11.4829 +16868;BAMUM LETTER PHASE-B TU NSIEE;Lo;0;L;;;;;N;;;;;
 11.4830 +16869;BAMUM LETTER PHASE-B SHET NJAQ;Lo;0;L;;;;;N;;;;;
 11.4831 +1686A;BAMUM LETTER PHASE-B SHEUAEQTU;Lo;0;L;;;;;N;;;;;
 11.4832 +1686B;BAMUM LETTER PHASE-B MFON TEUAEQ;Lo;0;L;;;;;N;;;;;
 11.4833 +1686C;BAMUM LETTER PHASE-B MBIT MBAAKET;Lo;0;L;;;;;N;;;;;
 11.4834 +1686D;BAMUM LETTER PHASE-B NYI NTEUM;Lo;0;L;;;;;N;;;;;
 11.4835 +1686E;BAMUM LETTER PHASE-B KEUPUQ;Lo;0;L;;;;;N;;;;;
 11.4836 +1686F;BAMUM LETTER PHASE-B GHEUGHEN;Lo;0;L;;;;;N;;;;;
 11.4837 +16870;BAMUM LETTER PHASE-B KEUYEUX;Lo;0;L;;;;;N;;;;;
 11.4838 +16871;BAMUM LETTER PHASE-B LAANAE;Lo;0;L;;;;;N;;;;;
 11.4839 +16872;BAMUM LETTER PHASE-B PARUM;Lo;0;L;;;;;N;;;;;
 11.4840 +16873;BAMUM LETTER PHASE-B VEUM;Lo;0;L;;;;;N;;;;;
 11.4841 +16874;BAMUM LETTER PHASE-B NGKINDI MVOP;Lo;0;L;;;;;N;;;;;
 11.4842 +16875;BAMUM LETTER PHASE-B NGGEU MBU;Lo;0;L;;;;;N;;;;;
 11.4843 +16876;BAMUM LETTER PHASE-B WUAET;Lo;0;L;;;;;N;;;;;
 11.4844 +16877;BAMUM LETTER PHASE-B SAKEUAE;Lo;0;L;;;;;N;;;;;
 11.4845 +16878;BAMUM LETTER PHASE-B TAAM;Lo;0;L;;;;;N;;;;;
 11.4846 +16879;BAMUM LETTER PHASE-B MEUQ;Lo;0;L;;;;;N;;;;;
 11.4847 +1687A;BAMUM LETTER PHASE-B NGGUOQ;Lo;0;L;;;;;N;;;;;
 11.4848 +1687B;BAMUM LETTER PHASE-B NGGUOQ LARGE;Lo;0;L;;;;;N;;;;;
 11.4849 +1687C;BAMUM LETTER PHASE-B MFIYAQ;Lo;0;L;;;;;N;;;;;
 11.4850 +1687D;BAMUM LETTER PHASE-B SUE;Lo;0;L;;;;;N;;;;;
 11.4851 +1687E;BAMUM LETTER PHASE-B MBEURI;Lo;0;L;;;;;N;;;;;
 11.4852 +1687F;BAMUM LETTER PHASE-B MONTIEEN;Lo;0;L;;;;;N;;;;;
 11.4853 +16880;BAMUM LETTER PHASE-B NYAEMAE;Lo;0;L;;;;;N;;;;;
 11.4854 +16881;BAMUM LETTER PHASE-B PUNGAAM;Lo;0;L;;;;;N;;;;;
 11.4855 +16882;BAMUM LETTER PHASE-B MEUT NGGEET;Lo;0;L;;;;;N;;;;;
 11.4856 +16883;BAMUM LETTER PHASE-B FEUX;Lo;0;L;;;;;N;;;;;
 11.4857 +16884;BAMUM LETTER PHASE-B MBUOQ;Lo;0;L;;;;;N;;;;;
 11.4858 +16885;BAMUM LETTER PHASE-B FEE;Lo;0;L;;;;;N;;;;;
 11.4859 +16886;BAMUM LETTER PHASE-B KEUAEM;Lo;0;L;;;;;N;;;;;
 11.4860 +16887;BAMUM LETTER PHASE-B MA NJEUAENA;Lo;0;L;;;;;N;;;;;
 11.4861 +16888;BAMUM LETTER PHASE-B MA NJUQA;Lo;0;L;;;;;N;;;;;
 11.4862 +16889;BAMUM LETTER PHASE-B LET;Lo;0;L;;;;;N;;;;;
 11.4863 +1688A;BAMUM LETTER PHASE-B NGGAAM;Lo;0;L;;;;;N;;;;;
 11.4864 +1688B;BAMUM LETTER PHASE-B NSEN;Lo;0;L;;;;;N;;;;;
 11.4865 +1688C;BAMUM LETTER PHASE-B MA;Lo;0;L;;;;;N;;;;;
 11.4866 +1688D;BAMUM LETTER PHASE-B KIQ;Lo;0;L;;;;;N;;;;;
 11.4867 +1688E;BAMUM LETTER PHASE-B NGOM;Lo;0;L;;;;;N;;;;;
 11.4868 +1688F;BAMUM LETTER PHASE-C NGKUE MAEMBA;Lo;0;L;;;;;N;;;;;
 11.4869 +16890;BAMUM LETTER PHASE-C NZA;Lo;0;L;;;;;N;;;;;
 11.4870 +16891;BAMUM LETTER PHASE-C YUM;Lo;0;L;;;;;N;;;;;
 11.4871 +16892;BAMUM LETTER PHASE-C WANGKUOQ;Lo;0;L;;;;;N;;;;;
 11.4872 +16893;BAMUM LETTER PHASE-C NGGEN;Lo;0;L;;;;;N;;;;;
 11.4873 +16894;BAMUM LETTER PHASE-C NDEUAEREE;Lo;0;L;;;;;N;;;;;
 11.4874 +16895;BAMUM LETTER PHASE-C NGKAQ;Lo;0;L;;;;;N;;;;;
 11.4875 +16896;BAMUM LETTER PHASE-C GHARAE;Lo;0;L;;;;;N;;;;;
 11.4876 +16897;BAMUM LETTER PHASE-C MBEEKEET;Lo;0;L;;;;;N;;;;;
 11.4877 +16898;BAMUM LETTER PHASE-C GBAYI;Lo;0;L;;;;;N;;;;;
 11.4878 +16899;BAMUM LETTER PHASE-C NYIR MKPARAQ MEUN;Lo;0;L;;;;;N;;;;;
 11.4879 +1689A;BAMUM LETTER PHASE-C NTU MBIT;Lo;0;L;;;;;N;;;;;
 11.4880 +1689B;BAMUM LETTER PHASE-C MBEUM;Lo;0;L;;;;;N;;;;;
 11.4881 +1689C;BAMUM LETTER PHASE-C PIRIEEN;Lo;0;L;;;;;N;;;;;
 11.4882 +1689D;BAMUM LETTER PHASE-C NDOMBU;Lo;0;L;;;;;N;;;;;
 11.4883 +1689E;BAMUM LETTER PHASE-C MBAA CABBAGE-TREE;Lo;0;L;;;;;N;;;;;
 11.4884 +1689F;BAMUM LETTER PHASE-C KEUSHEUAEP;Lo;0;L;;;;;N;;;;;
 11.4885 +168A0;BAMUM LETTER PHASE-C GHAP;Lo;0;L;;;;;N;;;;;
 11.4886 +168A1;BAMUM LETTER PHASE-C KEUKAQ;Lo;0;L;;;;;N;;;;;
 11.4887 +168A2;BAMUM LETTER PHASE-C YU MUOMAE;Lo;0;L;;;;;N;;;;;
 11.4888 +168A3;BAMUM LETTER PHASE-C NZEUM;Lo;0;L;;;;;N;;;;;
 11.4889 +168A4;BAMUM LETTER PHASE-C MBUE;Lo;0;L;;;;;N;;;;;
 11.4890 +168A5;BAMUM LETTER PHASE-C NSEUAEN;Lo;0;L;;;;;N;;;;;
 11.4891 +168A6;BAMUM LETTER PHASE-C MBIT;Lo;0;L;;;;;N;;;;;
 11.4892 +168A7;BAMUM LETTER PHASE-C YEUQ;Lo;0;L;;;;;N;;;;;
 11.4893 +168A8;BAMUM LETTER PHASE-C KPARAQ;Lo;0;L;;;;;N;;;;;
 11.4894 +168A9;BAMUM LETTER PHASE-C KAA;Lo;0;L;;;;;N;;;;;
 11.4895 +168AA;BAMUM LETTER PHASE-C SEUX;Lo;0;L;;;;;N;;;;;
 11.4896 +168AB;BAMUM LETTER PHASE-C NDIDA;Lo;0;L;;;;;N;;;;;
 11.4897 +168AC;BAMUM LETTER PHASE-C TAASHAE;Lo;0;L;;;;;N;;;;;
 11.4898 +168AD;BAMUM LETTER PHASE-C NJUEQ;Lo;0;L;;;;;N;;;;;
 11.4899 +168AE;BAMUM LETTER PHASE-C TITA YUE;Lo;0;L;;;;;N;;;;;
 11.4900 +168AF;BAMUM LETTER PHASE-C SUAET;Lo;0;L;;;;;N;;;;;
 11.4901 +168B0;BAMUM LETTER PHASE-C NGGUAEN NYAM;Lo;0;L;;;;;N;;;;;
 11.4902 +168B1;BAMUM LETTER PHASE-C VEUX;Lo;0;L;;;;;N;;;;;
 11.4903 +168B2;BAMUM LETTER PHASE-C NANSANAQ;Lo;0;L;;;;;N;;;;;
 11.4904 +168B3;BAMUM LETTER PHASE-C MA KEUAERI;Lo;0;L;;;;;N;;;;;
 11.4905 +168B4;BAMUM LETTER PHASE-C NTAA;Lo;0;L;;;;;N;;;;;
 11.4906 +168B5;BAMUM LETTER PHASE-C NGGUON;Lo;0;L;;;;;N;;;;;
 11.4907 +168B6;BAMUM LETTER PHASE-C LAP;Lo;0;L;;;;;N;;;;;
 11.4908 +168B7;BAMUM LETTER PHASE-C MBIRIEEN;Lo;0;L;;;;;N;;;;;
 11.4909 +168B8;BAMUM LETTER PHASE-C MGBASAQ;Lo;0;L;;;;;N;;;;;
 11.4910 +168B9;BAMUM LETTER PHASE-C NTEUNGBA;Lo;0;L;;;;;N;;;;;
 11.4911 +168BA;BAMUM LETTER PHASE-C TEUTEUX;Lo;0;L;;;;;N;;;;;
 11.4912 +168BB;BAMUM LETTER PHASE-C NGGUM;Lo;0;L;;;;;N;;;;;
 11.4913 +168BC;BAMUM LETTER PHASE-C FUE;Lo;0;L;;;;;N;;;;;
 11.4914 +168BD;BAMUM LETTER PHASE-C NDEUT;Lo;0;L;;;;;N;;;;;
 11.4915 +168BE;BAMUM LETTER PHASE-C NSA;Lo;0;L;;;;;N;;;;;
 11.4916 +168BF;BAMUM LETTER PHASE-C NSHAQ;Lo;0;L;;;;;N;;;;;
 11.4917 +168C0;BAMUM LETTER PHASE-C BUNG;Lo;0;L;;;;;N;;;;;
 11.4918 +168C1;BAMUM LETTER PHASE-C VEUAEPEN;Lo;0;L;;;;;N;;;;;
 11.4919 +168C2;BAMUM LETTER PHASE-C MBERAE;Lo;0;L;;;;;N;;;;;
 11.4920 +168C3;BAMUM LETTER PHASE-C RU;Lo;0;L;;;;;N;;;;;
 11.4921 +168C4;BAMUM LETTER PHASE-C NJAEM;Lo;0;L;;;;;N;;;;;
 11.4922 +168C5;BAMUM LETTER PHASE-C LAM;Lo;0;L;;;;;N;;;;;
 11.4923 +168C6;BAMUM LETTER PHASE-C TITUAEP;Lo;0;L;;;;;N;;;;;
 11.4924 +168C7;BAMUM LETTER PHASE-C NSUOT NGOM;Lo;0;L;;;;;N;;;;;
 11.4925 +168C8;BAMUM LETTER PHASE-C NJEEEE;Lo;0;L;;;;;N;;;;;
 11.4926 +168C9;BAMUM LETTER PHASE-C KET;Lo;0;L;;;;;N;;;;;
 11.4927 +168CA;BAMUM LETTER PHASE-C NGGU;Lo;0;L;;;;;N;;;;;
 11.4928 +168CB;BAMUM LETTER PHASE-C MAESI;Lo;0;L;;;;;N;;;;;
 11.4929 +168CC;BAMUM LETTER PHASE-C MBUAEM;Lo;0;L;;;;;N;;;;;
 11.4930 +168CD;BAMUM LETTER PHASE-C LU;Lo;0;L;;;;;N;;;;;
 11.4931 +168CE;BAMUM LETTER PHASE-C KUT;Lo;0;L;;;;;N;;;;;
 11.4932 +168CF;BAMUM LETTER PHASE-C NJAM;Lo;0;L;;;;;N;;;;;
 11.4933 +168D0;BAMUM LETTER PHASE-C NGOM;Lo;0;L;;;;;N;;;;;
 11.4934 +168D1;BAMUM LETTER PHASE-C WUP;Lo;0;L;;;;;N;;;;;
 11.4935 +168D2;BAMUM LETTER PHASE-C NGGUEET;Lo;0;L;;;;;N;;;;;
 11.4936 +168D3;BAMUM LETTER PHASE-C NSOM;Lo;0;L;;;;;N;;;;;
 11.4937 +168D4;BAMUM LETTER PHASE-C NTEN;Lo;0;L;;;;;N;;;;;
 11.4938 +168D5;BAMUM LETTER PHASE-C KUOP NKAARAE;Lo;0;L;;;;;N;;;;;
 11.4939 +168D6;BAMUM LETTER PHASE-C NSUN;Lo;0;L;;;;;N;;;;;
 11.4940 +168D7;BAMUM LETTER PHASE-C NDAM;Lo;0;L;;;;;N;;;;;
 11.4941 +168D8;BAMUM LETTER PHASE-C MA NSIEE;Lo;0;L;;;;;N;;;;;
 11.4942 +168D9;BAMUM LETTER PHASE-C YAA;Lo;0;L;;;;;N;;;;;
 11.4943 +168DA;BAMUM LETTER PHASE-C NDAP;Lo;0;L;;;;;N;;;;;
 11.4944 +168DB;BAMUM LETTER PHASE-C SHUEQ;Lo;0;L;;;;;N;;;;;
 11.4945 +168DC;BAMUM LETTER PHASE-C SETFON;Lo;0;L;;;;;N;;;;;
 11.4946 +168DD;BAMUM LETTER PHASE-C MBI;Lo;0;L;;;;;N;;;;;
 11.4947 +168DE;BAMUM LETTER PHASE-C MAEMBA;Lo;0;L;;;;;N;;;;;
 11.4948 +168DF;BAMUM LETTER PHASE-C MBANYI;Lo;0;L;;;;;N;;;;;
 11.4949 +168E0;BAMUM LETTER PHASE-C KEUSEUX;Lo;0;L;;;;;N;;;;;
 11.4950 +168E1;BAMUM LETTER PHASE-C MBEUX;Lo;0;L;;;;;N;;;;;
 11.4951 +168E2;BAMUM LETTER PHASE-C KEUM;Lo;0;L;;;;;N;;;;;
 11.4952 +168E3;BAMUM LETTER PHASE-C MBAA PICKET;Lo;0;L;;;;;N;;;;;
 11.4953 +168E4;BAMUM LETTER PHASE-C YUWOQ;Lo;0;L;;;;;N;;;;;
 11.4954 +168E5;BAMUM LETTER PHASE-C NJEUX;Lo;0;L;;;;;N;;;;;
 11.4955 +168E6;BAMUM LETTER PHASE-C MIEE;Lo;0;L;;;;;N;;;;;
 11.4956 +168E7;BAMUM LETTER PHASE-C MUAE;Lo;0;L;;;;;N;;;;;
 11.4957 +168E8;BAMUM LETTER PHASE-C SHIQ;Lo;0;L;;;;;N;;;;;
 11.4958 +168E9;BAMUM LETTER PHASE-C KEN LAW;Lo;0;L;;;;;N;;;;;
 11.4959 +168EA;BAMUM LETTER PHASE-C KEN FATIGUE;Lo;0;L;;;;;N;;;;;
 11.4960 +168EB;BAMUM LETTER PHASE-C NGAQ;Lo;0;L;;;;;N;;;;;
 11.4961 +168EC;BAMUM LETTER PHASE-C NAQ;Lo;0;L;;;;;N;;;;;
 11.4962 +168ED;BAMUM LETTER PHASE-C LIQ;Lo;0;L;;;;;N;;;;;
 11.4963 +168EE;BAMUM LETTER PHASE-C PIN;Lo;0;L;;;;;N;;;;;
 11.4964 +168EF;BAMUM LETTER PHASE-C PEN;Lo;0;L;;;;;N;;;;;
 11.4965 +168F0;BAMUM LETTER PHASE-C TET;Lo;0;L;;;;;N;;;;;
 11.4966 +168F1;BAMUM LETTER PHASE-D MBUO;Lo;0;L;;;;;N;;;;;
 11.4967 +168F2;BAMUM LETTER PHASE-D WAP;Lo;0;L;;;;;N;;;;;
 11.4968 +168F3;BAMUM LETTER PHASE-D NJI;Lo;0;L;;;;;N;;;;;
 11.4969 +168F4;BAMUM LETTER PHASE-D MFON;Lo;0;L;;;;;N;;;;;
 11.4970 +168F5;BAMUM LETTER PHASE-D NJIEE;Lo;0;L;;;;;N;;;;;
 11.4971 +168F6;BAMUM LETTER PHASE-D LIEE;Lo;0;L;;;;;N;;;;;
 11.4972 +168F7;BAMUM LETTER PHASE-D NJEUT;Lo;0;L;;;;;N;;;;;
 11.4973 +168F8;BAMUM LETTER PHASE-D NSHEE;Lo;0;L;;;;;N;;;;;
 11.4974 +168F9;BAMUM LETTER PHASE-D NGGAAMAE;Lo;0;L;;;;;N;;;;;
 11.4975 +168FA;BAMUM LETTER PHASE-D NYAM;Lo;0;L;;;;;N;;;;;
 11.4976 +168FB;BAMUM LETTER PHASE-D WUAEN;Lo;0;L;;;;;N;;;;;
 11.4977 +168FC;BAMUM LETTER PHASE-D NGKUN;Lo;0;L;;;;;N;;;;;
 11.4978 +168FD;BAMUM LETTER PHASE-D SHEE;Lo;0;L;;;;;N;;;;;
 11.4979 +168FE;BAMUM LETTER PHASE-D NGKAP;Lo;0;L;;;;;N;;;;;
 11.4980 +168FF;BAMUM LETTER PHASE-D KEUAETMEUN;Lo;0;L;;;;;N;;;;;
 11.4981 +16900;BAMUM LETTER PHASE-D TEUT;Lo;0;L;;;;;N;;;;;
 11.4982 +16901;BAMUM LETTER PHASE-D SHEUAE;Lo;0;L;;;;;N;;;;;
 11.4983 +16902;BAMUM LETTER PHASE-D NJAP;Lo;0;L;;;;;N;;;;;
 11.4984 +16903;BAMUM LETTER PHASE-D SUE;Lo;0;L;;;;;N;;;;;
 11.4985 +16904;BAMUM LETTER PHASE-D KET;Lo;0;L;;;;;N;;;;;
 11.4986 +16905;BAMUM LETTER PHASE-D YAEMMAE;Lo;0;L;;;;;N;;;;;
 11.4987 +16906;BAMUM LETTER PHASE-D KUOM;Lo;0;L;;;;;N;;;;;
 11.4988 +16907;BAMUM LETTER PHASE-D SAP;Lo;0;L;;;;;N;;;;;
 11.4989 +16908;BAMUM LETTER PHASE-D MFEUT;Lo;0;L;;;;;N;;;;;
 11.4990 +16909;BAMUM LETTER PHASE-D NDEUX;Lo;0;L;;;;;N;;;;;
 11.4991 +1690A;BAMUM LETTER PHASE-D MALEERI;Lo;0;L;;;;;N;;;;;
 11.4992 +1690B;BAMUM LETTER PHASE-D MEUT;Lo;0;L;;;;;N;;;;;
 11.4993 +1690C;BAMUM LETTER PHASE-D SEUAEQ;Lo;0;L;;;;;N;;;;;
 11.4994 +1690D;BAMUM LETTER PHASE-D YEN;Lo;0;L;;;;;N;;;;;
 11.4995 +1690E;BAMUM LETTER PHASE-D NJEUAEM;Lo;0;L;;;;;N;;;;;
 11.4996 +1690F;BAMUM LETTER PHASE-D KEUOT MBUAE;Lo;0;L;;;;;N;;;;;
 11.4997 +16910;BAMUM LETTER PHASE-D NGKEURI;Lo;0;L;;;;;N;;;;;
 11.4998 +16911;BAMUM LETTER PHASE-D TU;Lo;0;L;;;;;N;;;;;
 11.4999 +16912;BAMUM LETTER PHASE-D GHAA;Lo;0;L;;;;;N;;;;;
 11.5000 +16913;BAMUM LETTER PHASE-D NGKYEE;Lo;0;L;;;;;N;;;;;
 11.5001 +16914;BAMUM LETTER PHASE-D FEUFEUAET;Lo;0;L;;;;;N;;;;;
 11.5002 +16915;BAMUM LETTER PHASE-D NDEE;Lo;0;L;;;;;N;;;;;
 11.5003 +16916;BAMUM LETTER PHASE-D MGBOFUM;Lo;0;L;;;;;N;;;;;
 11.5004 +16917;BAMUM LETTER PHASE-D LEUAEP;Lo;0;L;;;;;N;;;;;
 11.5005 +16918;BAMUM LETTER PHASE-D NDON;Lo;0;L;;;;;N;;;;;
 11.5006 +16919;BAMUM LETTER PHASE-D MONI;Lo;0;L;;;;;N;;;;;
 11.5007 +1691A;BAMUM LETTER PHASE-D MGBEUN;Lo;0;L;;;;;N;;;;;
 11.5008 +1691B;BAMUM LETTER PHASE-D PUUT;Lo;0;L;;;;;N;;;;;
 11.5009 +1691C;BAMUM LETTER PHASE-D MGBIEE;Lo;0;L;;;;;N;;;;;
 11.5010 +1691D;BAMUM LETTER PHASE-D MFO;Lo;0;L;;;;;N;;;;;
 11.5011 +1691E;BAMUM LETTER PHASE-D LUM;Lo;0;L;;;;;N;;;;;
 11.5012 +1691F;BAMUM LETTER PHASE-D NSIEEP;Lo;0;L;;;;;N;;;;;
 11.5013 +16920;BAMUM LETTER PHASE-D MBAA;Lo;0;L;;;;;N;;;;;
 11.5014 +16921;BAMUM LETTER PHASE-D KWAET;Lo;0;L;;;;;N;;;;;
 11.5015 +16922;BAMUM LETTER PHASE-D NYET;Lo;0;L;;;;;N;;;;;
 11.5016 +16923;BAMUM LETTER PHASE-D TEUAEN;Lo;0;L;;;;;N;;;;;
 11.5017 +16924;BAMUM LETTER PHASE-D SOT;Lo;0;L;;;;;N;;;;;
 11.5018 +16925;BAMUM LETTER PHASE-D YUWOQ;Lo;0;L;;;;;N;;;;;
 11.5019 +16926;BAMUM LETTER PHASE-D KEUM;Lo;0;L;;;;;N;;;;;
 11.5020 +16927;BAMUM LETTER PHASE-D RAEM;Lo;0;L;;;;;N;;;;;
 11.5021 +16928;BAMUM LETTER PHASE-D TEEEE;Lo;0;L;;;;;N;;;;;
 11.5022 +16929;BAMUM LETTER PHASE-D NGKEUAEQ;Lo;0;L;;;;;N;;;;;
 11.5023 +1692A;BAMUM LETTER PHASE-D MFEUAE;Lo;0;L;;;;;N;;;;;
 11.5024 +1692B;BAMUM LETTER PHASE-D NSIEET;Lo;0;L;;;;;N;;;;;
 11.5025 +1692C;BAMUM LETTER PHASE-D KEUP;Lo;0;L;;;;;N;;;;;
 11.5026 +1692D;BAMUM LETTER PHASE-D PIP;Lo;0;L;;;;;N;;;;;
 11.5027 +1692E;BAMUM LETTER PHASE-D PEUTAE;Lo;0;L;;;;;N;;;;;
 11.5028 +1692F;BAMUM LETTER PHASE-D NYUE;Lo;0;L;;;;;N;;;;;
 11.5029 +16930;BAMUM LETTER PHASE-D LET;Lo;0;L;;;;;N;;;;;
 11.5030 +16931;BAMUM LETTER PHASE-D NGGAAM;Lo;0;L;;;;;N;;;;;
 11.5031 +16932;BAMUM LETTER PHASE-D MFIEE;Lo;0;L;;;;;N;;;;;
 11.5032 +16933;BAMUM LETTER PHASE-D NGGWAEN;Lo;0;L;;;;;N;;;;;
 11.5033 +16934;BAMUM LETTER PHASE-D YUOM;Lo;0;L;;;;;N;;;;;
 11.5034 +16935;BAMUM LETTER PHASE-D PAP;Lo;0;L;;;;;N;;;;;
 11.5035 +16936;BAMUM LETTER PHASE-D YUOP;Lo;0;L;;;;;N;;;;;
 11.5036 +16937;BAMUM LETTER PHASE-D NDAM;Lo;0;L;;;;;N;;;;;
 11.5037 +16938;BAMUM LETTER PHASE-D NTEUM;Lo;0;L;;;;;N;;;;;
 11.5038 +16939;BAMUM LETTER PHASE-D SUAE;Lo;0;L;;;;;N;;;;;
 11.5039 +1693A;BAMUM LETTER PHASE-D KUN;Lo;0;L;;;;;N;;;;;
 11.5040 +1693B;BAMUM LETTER PHASE-D NGGEUX;Lo;0;L;;;;;N;;;;;
 11.5041 +1693C;BAMUM LETTER PHASE-D NGKIEE;Lo;0;L;;;;;N;;;;;
 11.5042 +1693D;BAMUM LETTER PHASE-D TUOT;Lo;0;L;;;;;N;;;;;
 11.5043 +1693E;BAMUM LETTER PHASE-D MEUN;Lo;0;L;;;;;N;;;;;
 11.5044 +1693F;BAMUM LETTER PHASE-D KUQ;Lo;0;L;;;;;N;;;;;
 11.5045 +16940;BAMUM LETTER PHASE-D NSUM;Lo;0;L;;;;;N;;;;;
 11.5046 +16941;BAMUM LETTER PHASE-D TEUN;Lo;0;L;;;;;N;;;;;
 11.5047 +16942;BAMUM LETTER PHASE-D MAENJET;Lo;0;L;;;;;N;;;;;
 11.5048 +16943;BAMUM LETTER PHASE-D NGGAP;Lo;0;L;;;;;N;;;;;
 11.5049 +16944;BAMUM LETTER PHASE-D LEUM;Lo;0;L;;;;;N;;;;;
 11.5050 +16945;BAMUM LETTER PHASE-D NGGUOM;Lo;0;L;;;;;N;;;;;
 11.5051 +16946;BAMUM LETTER PHASE-D NSHUT;Lo;0;L;;;;;N;;;;;
 11.5052 +16947;BAMUM LETTER PHASE-D NJUEQ;Lo;0;L;;;;;N;;;;;
 11.5053 +16948;BAMUM LETTER PHASE-D GHEUAE;Lo;0;L;;;;;N;;;;;
 11.5054 +16949;BAMUM LETTER PHASE-D KU;Lo;0;L;;;;;N;;;;;
 11.5055 +1694A;BAMUM LETTER PHASE-D REN OLD;Lo;0;L;;;;;N;;;;;
 11.5056 +1694B;BAMUM LETTER PHASE-D TAE;Lo;0;L;;;;;N;;;;;
 11.5057 +1694C;BAMUM LETTER PHASE-D TOQ;Lo;0;L;;;;;N;;;;;
 11.5058 +1694D;BAMUM LETTER PHASE-D NYI;Lo;0;L;;;;;N;;;;;
 11.5059 +1694E;BAMUM LETTER PHASE-D RII;Lo;0;L;;;;;N;;;;;
 11.5060 +1694F;BAMUM LETTER PHASE-D LEEEE;Lo;0;L;;;;;N;;;;;
 11.5061 +16950;BAMUM LETTER PHASE-D MEEEE;Lo;0;L;;;;;N;;;;;
 11.5062 +16951;BAMUM LETTER PHASE-D M;Lo;0;L;;;;;N;;;;;
 11.5063 +16952;BAMUM LETTER PHASE-D SUU;Lo;0;L;;;;;N;;;;;
 11.5064 +16953;BAMUM LETTER PHASE-D MU;Lo;0;L;;;;;N;;;;;
 11.5065 +16954;BAMUM LETTER PHASE-D SHII;Lo;0;L;;;;;N;;;;;
 11.5066 +16955;BAMUM LETTER PHASE-D SHEUX;Lo;0;L;;;;;N;;;;;
 11.5067 +16956;BAMUM LETTER PHASE-D KYEE;Lo;0;L;;;;;N;;;;;
 11.5068 +16957;BAMUM LETTER PHASE-D NU;Lo;0;L;;;;;N;;;;;
 11.5069 +16958;BAMUM LETTER PHASE-D SHU;Lo;0;L;;;;;N;;;;;
 11.5070 +16959;BAMUM LETTER PHASE-D NTEE;Lo;0;L;;;;;N;;;;;
 11.5071 +1695A;BAMUM LETTER PHASE-D PEE;Lo;0;L;;;;;N;;;;;
 11.5072 +1695B;BAMUM LETTER PHASE-D NI;Lo;0;L;;;;;N;;;;;
 11.5073 +1695C;BAMUM LETTER PHASE-D SHOQ;Lo;0;L;;;;;N;;;;;
 11.5074 +1695D;BAMUM LETTER PHASE-D PUQ;Lo;0;L;;;;;N;;;;;
 11.5075 +1695E;BAMUM LETTER PHASE-D MVOP;Lo;0;L;;;;;N;;;;;
 11.5076 +1695F;BAMUM LETTER PHASE-D LOQ;Lo;0;L;;;;;N;;;;;
 11.5077 +16960;BAMUM LETTER PHASE-D REN MUCH;Lo;0;L;;;;;N;;;;;
 11.5078 +16961;BAMUM LETTER PHASE-D TI;Lo;0;L;;;;;N;;;;;
 11.5079 +16962;BAMUM LETTER PHASE-D NTUU;Lo;0;L;;;;;N;;;;;
 11.5080 +16963;BAMUM LETTER PHASE-D MBAA SEVEN;Lo;0;L;;;;;N;;;;;
 11.5081 +16964;BAMUM LETTER PHASE-D SAQ;Lo;0;L;;;;;N;;;;;
 11.5082 +16965;BAMUM LETTER PHASE-D FAA;Lo;0;L;;;;;N;;;;;
 11.5083 +16966;BAMUM LETTER PHASE-E NDAP;Lo;0;L;;;;;N;;;;;
 11.5084 +16967;BAMUM LETTER PHASE-E TOON;Lo;0;L;;;;;N;;;;;
 11.5085 +16968;BAMUM LETTER PHASE-E MBEUM;Lo;0;L;;;;;N;;;;;
 11.5086 +16969;BAMUM LETTER PHASE-E LAP;Lo;0;L;;;;;N;;;;;
 11.5087 +1696A;BAMUM LETTER PHASE-E VOM;Lo;0;L;;;;;N;;;;;
 11.5088 +1696B;BAMUM LETTER PHASE-E LOON;Lo;0;L;;;;;N;;;;;
 11.5089 +1696C;BAMUM LETTER PHASE-E PAA;Lo;0;L;;;;;N;;;;;
 11.5090 +1696D;BAMUM LETTER PHASE-E SOM;Lo;0;L;;;;;N;;;;;
 11.5091 +1696E;BAMUM LETTER PHASE-E RAQ;Lo;0;L;;;;;N;;;;;
 11.5092 +1696F;BAMUM LETTER PHASE-E NSHUOP;Lo;0;L;;;;;N;;;;;
 11.5093 +16970;BAMUM LETTER PHASE-E NDUN;Lo;0;L;;;;;N;;;;;
 11.5094 +16971;BAMUM LETTER PHASE-E PUAE;Lo;0;L;;;;;N;;;;;
 11.5095 +16972;BAMUM LETTER PHASE-E TAM;Lo;0;L;;;;;N;;;;;
 11.5096 +16973;BAMUM LETTER PHASE-E NGKA;Lo;0;L;;;;;N;;;;;
 11.5097 +16974;BAMUM LETTER PHASE-E KPEUX;Lo;0;L;;;;;N;;;;;
 11.5098 +16975;BAMUM LETTER PHASE-E WUO;Lo;0;L;;;;;N;;;;;
 11.5099 +16976;BAMUM LETTER PHASE-E SEE;Lo;0;L;;;;;N;;;;;
 11.5100 +16977;BAMUM LETTER PHASE-E NGGEUAET;Lo;0;L;;;;;N;;;;;
 11.5101 +16978;BAMUM LETTER PHASE-E PAAM;Lo;0;L;;;;;N;;;;;
 11.5102 +16979;BAMUM LETTER PHASE-E TOO;Lo;0;L;;;;;N;;;;;
 11.5103 +1697A;BAMUM LETTER PHASE-E KUOP;Lo;0;L;;;;;N;;;;;
 11.5104 +1697B;BAMUM LETTER PHASE-E LOM;Lo;0;L;;;;;N;;;;;
 11.5105 +1697C;BAMUM LETTER PHASE-E NSHIEE;Lo;0;L;;;;;N;;;;;
 11.5106 +1697D;BAMUM LETTER PHASE-E NGOP;Lo;0;L;;;;;N;;;;;
 11.5107 +1697E;BAMUM LETTER PHASE-E MAEM;Lo;0;L;;;;;N;;;;;
 11.5108 +1697F;BAMUM LETTER PHASE-E NGKEUX;Lo;0;L;;;;;N;;;;;
 11.5109 +16980;BAMUM LETTER PHASE-E NGOQ;Lo;0;L;;;;;N;;;;;
 11.5110 +16981;BAMUM LETTER PHASE-E NSHUE;Lo;0;L;;;;;N;;;;;
 11.5111 +16982;BAMUM LETTER PHASE-E RIMGBA;Lo;0;L;;;;;N;;;;;
 11.5112 +16983;BAMUM LETTER PHASE-E NJEUX;Lo;0;L;;;;;N;;;;;
 11.5113 +16984;BAMUM LETTER PHASE-E PEEM;Lo;0;L;;;;;N;;;;;
 11.5114 +16985;BAMUM LETTER PHASE-E SAA;Lo;0;L;;;;;N;;;;;
 11.5115 +16986;BAMUM LETTER PHASE-E NGGURAE;Lo;0;L;;;;;N;;;;;
 11.5116 +16987;BAMUM LETTER PHASE-E MGBA;Lo;0;L;;;;;N;;;;;
 11.5117 +16988;BAMUM LETTER PHASE-E GHEUX;Lo;0;L;;;;;N;;;;;
 11.5118 +16989;BAMUM LETTER PHASE-E NGKEUAEM;Lo;0;L;;;;;N;;;;;
 11.5119 +1698A;BAMUM LETTER PHASE-E NJAEMLI;Lo;0;L;;;;;N;;;;;
 11.5120 +1698B;BAMUM LETTER PHASE-E MAP;Lo;0;L;;;;;N;;;;;
 11.5121 +1698C;BAMUM LETTER PHASE-E LOOT;Lo;0;L;;;;;N;;;;;
 11.5122 +1698D;BAMUM LETTER PHASE-E NGGEEEE;Lo;0;L;;;;;N;;;;;
 11.5123 +1698E;BAMUM LETTER PHASE-E NDIQ;Lo;0;L;;;;;N;;;;;
 11.5124 +1698F;BAMUM LETTER PHASE-E TAEN NTEUM;Lo;0;L;;;;;N;;;;;
 11.5125 +16990;BAMUM LETTER PHASE-E SET;Lo;0;L;;;;;N;;;;;
 11.5126 +16991;BAMUM LETTER PHASE-E PUM;Lo;0;L;;;;;N;;;;;
 11.5127 +16992;BAMUM LETTER PHASE-E NDAA SOFTNESS;Lo;0;L;;;;;N;;;;;
 11.5128 +16993;BAMUM LETTER PHASE-E NGGUAESHAE NYAM;Lo;0;L;;;;;N;;;;;
 11.5129 +16994;BAMUM LETTER PHASE-E YIEE;Lo;0;L;;;;;N;;;;;
 11.5130 +16995;BAMUM LETTER PHASE-E GHEUN;Lo;0;L;;;;;N;;;;;
 11.5131 +16996;BAMUM LETTER PHASE-E TUAE;Lo;0;L;;;;;N;;;;;
 11.5132 +16997;BAMUM LETTER PHASE-E YEUAE;Lo;0;L;;;;;N;;;;;
 11.5133 +16998;BAMUM LETTER PHASE-E PO;Lo;0;L;;;;;N;;;;;
 11.5134 +16999;BAMUM LETTER PHASE-E TUMAE;Lo;0;L;;;;;N;;;;;
 11.5135 +1699A;BAMUM LETTER PHASE-E KEUAE;Lo;0;L;;;;;N;;;;;
 11.5136 +1699B;BAMUM LETTER PHASE-E SUAEN;Lo;0;L;;;;;N;;;;;
 11.5137 +1699C;BAMUM LETTER PHASE-E TEUAEQ;Lo;0;L;;;;;N;;;;;
 11.5138 +1699D;BAMUM LETTER PHASE-E VEUAE;Lo;0;L;;;;;N;;;;;
 11.5139 +1699E;BAMUM LETTER PHASE-E WEUX;Lo;0;L;;;;;N;;;;;
 11.5140 +1699F;BAMUM LETTER PHASE-E LAAM;Lo;0;L;;;;;N;;;;;
 11.5141 +169A0;BAMUM LETTER PHASE-E PU;Lo;0;L;;;;;N;;;;;
 11.5142 +169A1;BAMUM LETTER PHASE-E TAAQ;Lo;0;L;;;;;N;;;;;
 11.5143 +169A2;BAMUM LETTER PHASE-E GHAAMAE;Lo;0;L;;;;;N;;;;;
 11.5144 +169A3;BAMUM LETTER PHASE-E NGEUREUT;Lo;0;L;;;;;N;;;;;
 11.5145 +169A4;BAMUM LETTER PHASE-E SHEUAEQ;Lo;0;L;;;;;N;;;;;
 11.5146 +169A5;BAMUM LETTER PHASE-E MGBEN;Lo;0;L;;;;;N;;;;;
 11.5147 +169A6;BAMUM LETTER PHASE-E MBEE;Lo;0;L;;;;;N;;;;;
 11.5148 +169A7;BAMUM LETTER PHASE-E NZAQ;Lo;0;L;;;;;N;;;;;
 11.5149 +169A8;BAMUM LETTER PHASE-E NKOM;Lo;0;L;;;;;N;;;;;
 11.5150 +169A9;BAMUM LETTER PHASE-E GBET;Lo;0;L;;;;;N;;;;;
 11.5151 +169AA;BAMUM LETTER PHASE-E TUM;Lo;0;L;;;;;N;;;;;
 11.5152 +169AB;BAMUM LETTER PHASE-E KUET;Lo;0;L;;;;;N;;;;;
 11.5153 +169AC;BAMUM LETTER PHASE-E YAP;Lo;0;L;;;;;N;;;;;
 11.5154 +169AD;BAMUM LETTER PHASE-E NYI CLEAVER;Lo;0;L;;;;;N;;;;;
 11.5155 +169AE;BAMUM LETTER PHASE-E YIT;Lo;0;L;;;;;N;;;;;
 11.5156 +169AF;BAMUM LETTER PHASE-E MFEUQ;Lo;0;L;;;;;N;;;;;
 11.5157 +169B0;BAMUM LETTER PHASE-E NDIAQ;Lo;0;L;;;;;N;;;;;
 11.5158 +169B1;BAMUM LETTER PHASE-E PIEEQ;Lo;0;L;;;;;N;;;;;
 11.5159 +169B2;BAMUM LETTER PHASE-E YUEQ;Lo;0;L;;;;;N;;;;;
 11.5160 +169B3;BAMUM LETTER PHASE-E LEUAEM;Lo;0;L;;;;;N;;;;;
 11.5161 +169B4;BAMUM LETTER PHASE-E FUE;Lo;0;L;;;;;N;;;;;
 11.5162 +169B5;BAMUM LETTER PHASE-E GBEUX;Lo;0;L;;;;;N;;;;;
 11.5163 +169B6;BAMUM LETTER PHASE-E NGKUP;Lo;0;L;;;;;N;;;;;
 11.5164 +169B7;BAMUM LETTER PHASE-E KET;Lo;0;L;;;;;N;;;;;
 11.5165 +169B8;BAMUM LETTER PHASE-E MAE;Lo;0;L;;;;;N;;;;;
 11.5166 +169B9;BAMUM LETTER PHASE-E NGKAAMI;Lo;0;L;;;;;N;;;;;
 11.5167 +169BA;BAMUM LETTER PHASE-E GHET;Lo;0;L;;;;;N;;;;;
 11.5168 +169BB;BAMUM LETTER PHASE-E FA;Lo;0;L;;;;;N;;;;;
 11.5169 +169BC;BAMUM LETTER PHASE-E NTUM;Lo;0;L;;;;;N;;;;;
 11.5170 +169BD;BAMUM LETTER PHASE-E PEUT;Lo;0;L;;;;;N;;;;;
 11.5171 +169BE;BAMUM LETTER PHASE-E YEUM;Lo;0;L;;;;;N;;;;;
 11.5172 +169BF;BAMUM LETTER PHASE-E NGGEUAE;Lo;0;L;;;;;N;;;;;
 11.5173 +169C0;BAMUM LETTER PHASE-E NYI BETWEEN;Lo;0;L;;;;;N;;;;;
 11.5174 +169C1;BAMUM LETTER PHASE-E NZUQ;Lo;0;L;;;;;N;;;;;
 11.5175 +169C2;BAMUM LETTER PHASE-E POON;Lo;0;L;;;;;N;;;;;
 11.5176 +169C3;BAMUM LETTER PHASE-E MIEE;Lo;0;L;;;;;N;;;;;
 11.5177 +169C4;BAMUM LETTER PHASE-E FUET;Lo;0;L;;;;;N;;;;;
 11.5178 +169C5;BAMUM LETTER PHASE-E NAE;Lo;0;L;;;;;N;;;;;
 11.5179 +169C6;BAMUM LETTER PHASE-E MUAE;Lo;0;L;;;;;N;;;;;
 11.5180 +169C7;BAMUM LETTER PHASE-E GHEUAE;Lo;0;L;;;;;N;;;;;
 11.5181 +169C8;BAMUM LETTER PHASE-E FU I;Lo;0;L;;;;;N;;;;;
 11.5182 +169C9;BAMUM LETTER PHASE-E MVI;Lo;0;L;;;;;N;;;;;
 11.5183 +169CA;BAMUM LETTER PHASE-E PUAQ;Lo;0;L;;;;;N;;;;;
 11.5184 +169CB;BAMUM LETTER PHASE-E NGKUM;Lo;0;L;;;;;N;;;;;
 11.5185 +169CC;BAMUM LETTER PHASE-E KUT;Lo;0;L;;;;;N;;;;;
 11.5186 +169CD;BAMUM LETTER PHASE-E PIET;Lo;0;L;;;;;N;;;;;
 11.5187 +169CE;BAMUM LETTER PHASE-E NTAP;Lo;0;L;;;;;N;;;;;
 11.5188 +169CF;BAMUM LETTER PHASE-E YEUAET;Lo;0;L;;;;;N;;;;;
 11.5189 +169D0;BAMUM LETTER PHASE-E NGGUP;Lo;0;L;;;;;N;;;;;
 11.5190 +169D1;BAMUM LETTER PHASE-E PA PEOPLE;Lo;0;L;;;;;N;;;;;
 11.5191 +169D2;BAMUM LETTER PHASE-E FU CALL;Lo;0;L;;;;;N;;;;;
 11.5192 +169D3;BAMUM LETTER PHASE-E FOM;Lo;0;L;;;;;N;;;;;
 11.5193 +169D4;BAMUM LETTER PHASE-E NJEE;Lo;0;L;;;;;N;;;;;
 11.5194 +169D5;BAMUM LETTER PHASE-E A;Lo;0;L;;;;;N;;;;;
 11.5195 +169D6;BAMUM LETTER PHASE-E TOQ;Lo;0;L;;;;;N;;;;;
 11.5196 +169D7;BAMUM LETTER PHASE-E O;Lo;0;L;;;;;N;;;;;
 11.5197 +169D8;BAMUM LETTER PHASE-E I;Lo;0;L;;;;;N;;;;;
 11.5198 +169D9;BAMUM LETTER PHASE-E LAQ;Lo;0;L;;;;;N;;;;;
 11.5199 +169DA;BAMUM LETTER PHASE-E PA PLURAL;Lo;0;L;;;;;N;;;;;
 11.5200 +169DB;BAMUM LETTER PHASE-E TAA;Lo;0;L;;;;;N;;;;;
 11.5201 +169DC;BAMUM LETTER PHASE-E TAQ;Lo;0;L;;;;;N;;;;;
 11.5202 +169DD;BAMUM LETTER PHASE-E NDAA MY HOUSE;Lo;0;L;;;;;N;;;;;
 11.5203 +169DE;BAMUM LETTER PHASE-E SHIQ;Lo;0;L;;;;;N;;;;;
 11.5204 +169DF;BAMUM LETTER PHASE-E YEUX;Lo;0;L;;;;;N;;;;;
 11.5205 +169E0;BAMUM LETTER PHASE-E NGUAE;Lo;0;L;;;;;N;;;;;
 11.5206 +169E1;BAMUM LETTER PHASE-E YUAEN;Lo;0;L;;;;;N;;;;;
 11.5207 +169E2;BAMUM LETTER PHASE-E YOQ SWIMMING;Lo;0;L;;;;;N;;;;;
 11.5208 +169E3;BAMUM LETTER PHASE-E YOQ COVER;Lo;0;L;;;;;N;;;;;
 11.5209 +169E4;BAMUM LETTER PHASE-E YUQ;Lo;0;L;;;;;N;;;;;
 11.5210 +169E5;BAMUM LETTER PHASE-E YUN;Lo;0;L;;;;;N;;;;;
 11.5211 +169E6;BAMUM LETTER PHASE-E KEUX;Lo;0;L;;;;;N;;;;;
 11.5212 +169E7;BAMUM LETTER PHASE-E PEUX;Lo;0;L;;;;;N;;;;;
 11.5213 +169E8;BAMUM LETTER PHASE-E NJEE EPOCH;Lo;0;L;;;;;N;;;;;
 11.5214 +169E9;BAMUM LETTER PHASE-E PUE;Lo;0;L;;;;;N;;;;;
 11.5215 +169EA;BAMUM LETTER PHASE-E WUE;Lo;0;L;;;;;N;;;;;
 11.5216 +169EB;BAMUM LETTER PHASE-E FEE;Lo;0;L;;;;;N;;;;;
 11.5217 +169EC;BAMUM LETTER PHASE-E VEE;Lo;0;L;;;;;N;;;;;
 11.5218 +169ED;BAMUM LETTER PHASE-E LU;Lo;0;L;;;;;N;;;;;
 11.5219 +169EE;BAMUM LETTER PHASE-E MI;Lo;0;L;;;;;N;;;;;
 11.5220 +169EF;BAMUM LETTER PHASE-E REUX;Lo;0;L;;;;;N;;;;;
 11.5221 +169F0;BAMUM LETTER PHASE-E RAE;Lo;0;L;;;;;N;;;;;
 11.5222 +169F1;BAMUM LETTER PHASE-E NGUAET;Lo;0;L;;;;;N;;;;;
 11.5223 +169F2;BAMUM LETTER PHASE-E NGA;Lo;0;L;;;;;N;;;;;
 11.5224 +169F3;BAMUM LETTER PHASE-E SHO;Lo;0;L;;;;;N;;;;;
 11.5225 +169F4;BAMUM LETTER PHASE-E SHOQ;Lo;0;L;;;;;N;;;;;
 11.5226 +169F5;BAMUM LETTER PHASE-E FU REMEDY;Lo;0;L;;;;;N;;;;;
 11.5227 +169F6;BAMUM LETTER PHASE-E NA;Lo;0;L;;;;;N;;;;;
 11.5228 +169F7;BAMUM LETTER PHASE-E PI;Lo;0;L;;;;;N;;;;;
 11.5229 +169F8;BAMUM LETTER PHASE-E LOQ;Lo;0;L;;;;;N;;;;;
 11.5230 +169F9;BAMUM LETTER PHASE-E KO;Lo;0;L;;;;;N;;;;;
 11.5231 +169FA;BAMUM LETTER PHASE-E MEN;Lo;0;L;;;;;N;;;;;
 11.5232 +169FB;BAMUM LETTER PHASE-E MA;Lo;0;L;;;;;N;;;;;
 11.5233 +169FC;BAMUM LETTER PHASE-E MAQ;Lo;0;L;;;;;N;;;;;
 11.5234 +169FD;BAMUM LETTER PHASE-E TEU;Lo;0;L;;;;;N;;;;;
 11.5235 +169FE;BAMUM LETTER PHASE-E KI;Lo;0;L;;;;;N;;;;;
 11.5236 +169FF;BAMUM LETTER PHASE-E MON;Lo;0;L;;;;;N;;;;;
 11.5237 +16A00;BAMUM LETTER PHASE-E TEN;Lo;0;L;;;;;N;;;;;
 11.5238 +16A01;BAMUM LETTER PHASE-E FAQ;Lo;0;L;;;;;N;;;;;
 11.5239 +16A02;BAMUM LETTER PHASE-E GHOM;Lo;0;L;;;;;N;;;;;
 11.5240 +16A03;BAMUM LETTER PHASE-F KA;Lo;0;L;;;;;N;;;;;
 11.5241 +16A04;BAMUM LETTER PHASE-F U;Lo;0;L;;;;;N;;;;;
 11.5242 +16A05;BAMUM LETTER PHASE-F KU;Lo;0;L;;;;;N;;;;;
 11.5243 +16A06;BAMUM LETTER PHASE-F EE;Lo;0;L;;;;;N;;;;;
 11.5244 +16A07;BAMUM LETTER PHASE-F REE;Lo;0;L;;;;;N;;;;;
 11.5245 +16A08;BAMUM LETTER PHASE-F TAE;Lo;0;L;;;;;N;;;;;
 11.5246 +16A09;BAMUM LETTER PHASE-F NYI;Lo;0;L;;;;;N;;;;;
 11.5247 +16A0A;BAMUM LETTER PHASE-F LA;Lo;0;L;;;;;N;;;;;
 11.5248 +16A0B;BAMUM LETTER PHASE-F RII;Lo;0;L;;;;;N;;;;;
 11.5249 +16A0C;BAMUM LETTER PHASE-F RIEE;Lo;0;L;;;;;N;;;;;
 11.5250 +16A0D;BAMUM LETTER PHASE-F MEEEE;Lo;0;L;;;;;N;;;;;
 11.5251 +16A0E;BAMUM LETTER PHASE-F TAA;Lo;0;L;;;;;N;;;;;
 11.5252 +16A0F;BAMUM LETTER PHASE-F NDAA;Lo;0;L;;;;;N;;;;;
 11.5253 +16A10;BAMUM LETTER PHASE-F NJAEM;Lo;0;L;;;;;N;;;;;
 11.5254 +16A11;BAMUM LETTER PHASE-F M;Lo;0;L;;;;;N;;;;;
 11.5255 +16A12;BAMUM LETTER PHASE-F SUU;Lo;0;L;;;;;N;;;;;
 11.5256 +16A13;BAMUM LETTER PHASE-F SHII;Lo;0;L;;;;;N;;;;;
 11.5257 +16A14;BAMUM LETTER PHASE-F SI;Lo;0;L;;;;;N;;;;;
 11.5258 +16A15;BAMUM LETTER PHASE-F SEUX;Lo;0;L;;;;;N;;;;;
 11.5259 +16A16;BAMUM LETTER PHASE-F KYEE;Lo;0;L;;;;;N;;;;;
 11.5260 +16A17;BAMUM LETTER PHASE-F KET;Lo;0;L;;;;;N;;;;;
 11.5261 +16A18;BAMUM LETTER PHASE-F NUAE;Lo;0;L;;;;;N;;;;;
 11.5262 +16A19;BAMUM LETTER PHASE-F NU;Lo;0;L;;;;;N;;;;;
 11.5263 +16A1A;BAMUM LETTER PHASE-F NJUAE;Lo;0;L;;;;;N;;;;;
 11.5264 +16A1B;BAMUM LETTER PHASE-F YOQ;Lo;0;L;;;;;N;;;;;
 11.5265 +16A1C;BAMUM LETTER PHASE-F SHU;Lo;0;L;;;;;N;;;;;
 11.5266 +16A1D;BAMUM LETTER PHASE-F YA;Lo;0;L;;;;;N;;;;;
 11.5267 +16A1E;BAMUM LETTER PHASE-F NSHA;Lo;0;L;;;;;N;;;;;
 11.5268 +16A1F;BAMUM LETTER PHASE-F PEUX;Lo;0;L;;;;;N;;;;;
 11.5269 +16A20;BAMUM LETTER PHASE-F NTEE;Lo;0;L;;;;;N;;;;;
 11.5270 +16A21;BAMUM LETTER PHASE-F WUE;Lo;0;L;;;;;N;;;;;
 11.5271 +16A22;BAMUM LETTER PHASE-F PEE;Lo;0;L;;;;;N;;;;;
 11.5272 +16A23;BAMUM LETTER PHASE-F RU;Lo;0;L;;;;;N;;;;;
 11.5273 +16A24;BAMUM LETTER PHASE-F NI;Lo;0;L;;;;;N;;;;;
 11.5274 +16A25;BAMUM LETTER PHASE-F REUX;Lo;0;L;;;;;N;;;;;
 11.5275 +16A26;BAMUM LETTER PHASE-F KEN;Lo;0;L;;;;;N;;;;;
 11.5276 +16A27;BAMUM LETTER PHASE-F NGKWAEN;Lo;0;L;;;;;N;;;;;
 11.5277 +16A28;BAMUM LETTER PHASE-F NGGA;Lo;0;L;;;;;N;;;;;
 11.5278 +16A29;BAMUM LETTER PHASE-F SHO;Lo;0;L;;;;;N;;;;;
 11.5279 +16A2A;BAMUM LETTER PHASE-F PUAE;Lo;0;L;;;;;N;;;;;
 11.5280 +16A2B;BAMUM LETTER PHASE-F FOM;Lo;0;L;;;;;N;;;;;
 11.5281 +16A2C;BAMUM LETTER PHASE-F WA;Lo;0;L;;;;;N;;;;;
 11.5282 +16A2D;BAMUM LETTER PHASE-F LI;Lo;0;L;;;;;N;;;;;
 11.5283 +16A2E;BAMUM LETTER PHASE-F LOQ;Lo;0;L;;;;;N;;;;;
 11.5284 +16A2F;BAMUM LETTER PHASE-F KO;Lo;0;L;;;;;N;;;;;
 11.5285 +16A30;BAMUM LETTER PHASE-F MBEN;Lo;0;L;;;;;N;;;;;
 11.5286 +16A31;BAMUM LETTER PHASE-F REN;Lo;0;L;;;;;N;;;;;
 11.5287 +16A32;BAMUM LETTER PHASE-F MA;Lo;0;L;;;;;N;;;;;
 11.5288 +16A33;BAMUM LETTER PHASE-F MO;Lo;0;L;;;;;N;;;;;
 11.5289 +16A34;BAMUM LETTER PHASE-F MBAA;Lo;0;L;;;;;N;;;;;
 11.5290 +16A35;BAMUM LETTER PHASE-F TET;Lo;0;L;;;;;N;;;;;
 11.5291 +16A36;BAMUM LETTER PHASE-F KPA;Lo;0;L;;;;;N;;;;;
 11.5292 +16A37;BAMUM LETTER PHASE-F SAMBA;Lo;0;L;;;;;N;;;;;
 11.5293 +16A38;BAMUM LETTER PHASE-F VUEQ;Lo;0;L;;;;;N;;;;;
 11.5294 +1B000;KATAKANA LETTER ARCHAIC E;Lo;0;L;;;;;N;;;;;
 11.5295 +1B001;HIRAGANA LETTER ARCHAIC YE;Lo;0;L;;;;;N;;;;;
 11.5296  1D000;BYZANTINE MUSICAL SYMBOL PSILI;So;0;L;;;;;N;;;;;
 11.5297  1D001;BYZANTINE MUSICAL SYMBOL DASEIA;So;0;L;;;;;N;;;;;
 11.5298  1D002;BYZANTINE MUSICAL SYMBOL PERISPOMENI;So;0;L;;;;;N;;;;;
 11.5299 @@ -17204,12 +20498,12 @@
 11.5300  1D243;COMBINING GREEK MUSICAL TETRASEME;Mn;230;NSM;;;;;N;;;;;
 11.5301  1D244;COMBINING GREEK MUSICAL PENTASEME;Mn;230;NSM;;;;;N;;;;;
 11.5302  1D245;GREEK MUSICAL LEIMMA;So;0;ON;;;;;N;;;;;
 11.5303 -1D300;MONOGRAM FOR EARTH;So;0;ON;;;;;N;;ren *;;;
 11.5304 -1D301;DIGRAM FOR HEAVENLY EARTH;So;0;ON;;;;;N;;tian ren *;;;
 11.5305 -1D302;DIGRAM FOR HUMAN EARTH;So;0;ON;;;;;N;;di ren *;;;
 11.5306 -1D303;DIGRAM FOR EARTHLY HEAVEN;So;0;ON;;;;;N;;ren tian *;;;
 11.5307 -1D304;DIGRAM FOR EARTHLY HUMAN;So;0;ON;;;;;N;;ren di *;;;
 11.5308 -1D305;DIGRAM FOR EARTH;So;0;ON;;;;;N;;ren ren *;;;
 11.5309 +1D300;MONOGRAM FOR EARTH;So;0;ON;;;;;N;;;;;
 11.5310 +1D301;DIGRAM FOR HEAVENLY EARTH;So;0;ON;;;;;N;;;;;
 11.5311 +1D302;DIGRAM FOR HUMAN EARTH;So;0;ON;;;;;N;;;;;
 11.5312 +1D303;DIGRAM FOR EARTHLY HEAVEN;So;0;ON;;;;;N;;;;;
 11.5313 +1D304;DIGRAM FOR EARTHLY HUMAN;So;0;ON;;;;;N;;;;;
 11.5314 +1D305;DIGRAM FOR EARTH;So;0;ON;;;;;N;;;;;
 11.5315  1D306;TETRAGRAM FOR CENTRE;So;0;ON;;;;;N;;;;;
 11.5316  1D307;TETRAGRAM FOR FULL CIRCLE;So;0;ON;;;;;N;;;;;
 11.5317  1D308;TETRAGRAM FOR MIRED;So;0;ON;;;;;N;;;;;
 11.5318 @@ -18014,7 +21308,7 @@
 11.5319  1D6D8;MATHEMATICAL BOLD SMALL CHI;Ll;0;L;<font> 03C7;;;;N;;;;;
 11.5320  1D6D9;MATHEMATICAL BOLD SMALL PSI;Ll;0;L;<font> 03C8;;;;N;;;;;
 11.5321  1D6DA;MATHEMATICAL BOLD SMALL OMEGA;Ll;0;L;<font> 03C9;;;;N;;;;;
 11.5322 -1D6DB;MATHEMATICAL BOLD PARTIAL DIFFERENTIAL;Sm;0;L;<font> 2202;;;;Y;;;;;
 11.5323 +1D6DB;MATHEMATICAL BOLD PARTIAL DIFFERENTIAL;Sm;0;ON;<font> 2202;;;;Y;;;;;
 11.5324  1D6DC;MATHEMATICAL BOLD EPSILON SYMBOL;Ll;0;L;<font> 03F5;;;;N;;;;;
 11.5325  1D6DD;MATHEMATICAL BOLD THETA SYMBOL;Ll;0;L;<font> 03D1;;;;N;;;;;
 11.5326  1D6DE;MATHEMATICAL BOLD KAPPA SYMBOL;Ll;0;L;<font> 03F0;;;;N;;;;;
 11.5327 @@ -18072,7 +21366,7 @@
 11.5328  1D712;MATHEMATICAL ITALIC SMALL CHI;Ll;0;L;<font> 03C7;;;;N;;;;;
 11.5329  1D713;MATHEMATICAL ITALIC SMALL PSI;Ll;0;L;<font> 03C8;;;;N;;;;;
 11.5330  1D714;MATHEMATICAL ITALIC SMALL OMEGA;Ll;0;L;<font> 03C9;;;;N;;;;;
 11.5331 -1D715;MATHEMATICAL ITALIC PARTIAL DIFFERENTIAL;Sm;0;L;<font> 2202;;;;Y;;;;;
 11.5332 +1D715;MATHEMATICAL ITALIC PARTIAL DIFFERENTIAL;Sm;0;ON;<font> 2202;;;;Y;;;;;
 11.5333  1D716;MATHEMATICAL ITALIC EPSILON SYMBOL;Ll;0;L;<font> 03F5;;;;N;;;;;
 11.5334  1D717;MATHEMATICAL ITALIC THETA SYMBOL;Ll;0;L;<font> 03D1;;;;N;;;;;
 11.5335  1D718;MATHEMATICAL ITALIC KAPPA SYMBOL;Ll;0;L;<font> 03F0;;;;N;;;;;
 11.5336 @@ -18130,7 +21424,7 @@
 11.5337  1D74C;MATHEMATICAL BOLD ITALIC SMALL CHI;Ll;0;L;<font> 03C7;;;;N;;;;;
 11.5338  1D74D;MATHEMATICAL BOLD ITALIC SMALL PSI;Ll;0;L;<font> 03C8;;;;N;;;;;
 11.5339  1D74E;MATHEMATICAL BOLD ITALIC SMALL OMEGA;Ll;0;L;<font> 03C9;;;;N;;;;;
 11.5340 -1D74F;MATHEMATICAL BOLD ITALIC PARTIAL DIFFERENTIAL;Sm;0;L;<font> 2202;;;;Y;;;;;
 11.5341 +1D74F;MATHEMATICAL BOLD ITALIC PARTIAL DIFFERENTIAL;Sm;0;ON;<font> 2202;;;;Y;;;;;
 11.5342  1D750;MATHEMATICAL BOLD ITALIC EPSILON SYMBOL;Ll;0;L;<font> 03F5;;;;N;;;;;
 11.5343  1D751;MATHEMATICAL BOLD ITALIC THETA SYMBOL;Ll;0;L;<font> 03D1;;;;N;;;;;
 11.5344  1D752;MATHEMATICAL BOLD ITALIC KAPPA SYMBOL;Ll;0;L;<font> 03F0;;;;N;;;;;
 11.5345 @@ -18188,7 +21482,7 @@
 11.5346  1D786;MATHEMATICAL SANS-SERIF BOLD SMALL CHI;Ll;0;L;<font> 03C7;;;;N;;;;;
 11.5347  1D787;MATHEMATICAL SANS-SERIF BOLD SMALL PSI;Ll;0;L;<font> 03C8;;;;N;;;;;
 11.5348  1D788;MATHEMATICAL SANS-SERIF BOLD SMALL OMEGA;Ll;0;L;<font> 03C9;;;;N;;;;;
 11.5349 -1D789;MATHEMATICAL SANS-SERIF BOLD PARTIAL DIFFERENTIAL;Sm;0;L;<font> 2202;;;;Y;;;;;
 11.5350 +1D789;MATHEMATICAL SANS-SERIF BOLD PARTIAL DIFFERENTIAL;Sm;0;ON;<font> 2202;;;;Y;;;;;
 11.5351  1D78A;MATHEMATICAL SANS-SERIF BOLD EPSILON SYMBOL;Ll;0;L;<font> 03F5;;;;N;;;;;
 11.5352  1D78B;MATHEMATICAL SANS-SERIF BOLD THETA SYMBOL;Ll;0;L;<font> 03D1;;;;N;;;;;
 11.5353  1D78C;MATHEMATICAL SANS-SERIF BOLD KAPPA SYMBOL;Ll;0;L;<font> 03F0;;;;N;;;;;
 11.5354 @@ -18246,7 +21540,7 @@
 11.5355  1D7C0;MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL CHI;Ll;0;L;<font> 03C7;;;;N;;;;;
 11.5356  1D7C1;MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL PSI;Ll;0;L;<font> 03C8;;;;N;;;;;
 11.5357  1D7C2;MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL OMEGA;Ll;0;L;<font> 03C9;;;;N;;;;;
 11.5358 -1D7C3;MATHEMATICAL SANS-SERIF BOLD ITALIC PARTIAL DIFFERENTIAL;Sm;0;L;<font> 2202;;;;Y;;;;;
 11.5359 +1D7C3;MATHEMATICAL SANS-SERIF BOLD ITALIC PARTIAL DIFFERENTIAL;Sm;0;ON;<font> 2202;;;;Y;;;;;
 11.5360  1D7C4;MATHEMATICAL SANS-SERIF BOLD ITALIC EPSILON SYMBOL;Ll;0;L;<font> 03F5;;;;N;;;;;
 11.5361  1D7C5;MATHEMATICAL SANS-SERIF BOLD ITALIC THETA SYMBOL;Ll;0;L;<font> 03D1;;;;N;;;;;
 11.5362  1D7C6;MATHEMATICAL SANS-SERIF BOLD ITALIC KAPPA SYMBOL;Ll;0;L;<font> 03F0;;;;N;;;;;
 11.5363 @@ -18449,8 +21743,1075 @@
 11.5364  1F091;DOMINO TILE VERTICAL-06-04;So;0;ON;;;;;N;;;;;
 11.5365  1F092;DOMINO TILE VERTICAL-06-05;So;0;ON;;;;;N;;;;;
 11.5366  1F093;DOMINO TILE VERTICAL-06-06;So;0;ON;;;;;N;;;;;
 11.5367 +1F0A0;PLAYING CARD BACK;So;0;ON;;;;;N;;;;;
 11.5368 +1F0A1;PLAYING CARD ACE OF SPADES;So;0;ON;;;;;N;;;;;
 11.5369 +1F0A2;PLAYING CARD TWO OF SPADES;So;0;ON;;;;;N;;;;;
 11.5370 +1F0A3;PLAYING CARD THREE OF SPADES;So;0;ON;;;;;N;;;;;
 11.5371 +1F0A4;PLAYING CARD FOUR OF SPADES;So;0;ON;;;;;N;;;;;
 11.5372 +1F0A5;PLAYING CARD FIVE OF SPADES;So;0;ON;;;;;N;;;;;
 11.5373 +1F0A6;PLAYING CARD SIX OF SPADES;So;0;ON;;;;;N;;;;;
 11.5374 +1F0A7;PLAYING CARD SEVEN OF SPADES;So;0;ON;;;;;N;;;;;
 11.5375 +1F0A8;PLAYING CARD EIGHT OF SPADES;So;0;ON;;;;;N;;;;;
 11.5376 +1F0A9;PLAYING CARD NINE OF SPADES;So;0;ON;;;;;N;;;;;
 11.5377 +1F0AA;PLAYING CARD TEN OF SPADES;So;0;ON;;;;;N;;;;;
 11.5378 +1F0AB;PLAYING CARD JACK OF SPADES;So;0;ON;;;;;N;;;;;
 11.5379 +1F0AC;PLAYING CARD KNIGHT OF SPADES;So;0;ON;;;;;N;;;;;
 11.5380 +1F0AD;PLAYING CARD QUEEN OF SPADES;So;0;ON;;;;;N;;;;;
 11.5381 +1F0AE;PLAYING CARD KING OF SPADES;So;0;ON;;;;;N;;;;;
 11.5382 +1F0B1;PLAYING CARD ACE OF HEARTS;So;0;ON;;;;;N;;;;;
 11.5383 +1F0B2;PLAYING CARD TWO OF HEARTS;So;0;ON;;;;;N;;;;;
 11.5384 +1F0B3;PLAYING CARD THREE OF HEARTS;So;0;ON;;;;;N;;;;;
 11.5385 +1F0B4;PLAYING CARD FOUR OF HEARTS;So;0;ON;;;;;N;;;;;
 11.5386 +1F0B5;PLAYING CARD FIVE OF HEARTS;So;0;ON;;;;;N;;;;;
 11.5387 +1F0B6;PLAYING CARD SIX OF HEARTS;So;0;ON;;;;;N;;;;;
 11.5388 +1F0B7;PLAYING CARD SEVEN OF HEARTS;So;0;ON;;;;;N;;;;;
 11.5389 +1F0B8;PLAYING CARD EIGHT OF HEARTS;So;0;ON;;;;;N;;;;;
 11.5390 +1F0B9;PLAYING CARD NINE OF HEARTS;So;0;ON;;;;;N;;;;;
 11.5391 +1F0BA;PLAYING CARD TEN OF HEARTS;So;0;ON;;;;;N;;;;;
 11.5392 +1F0BB;PLAYING CARD JACK OF HEARTS;So;0;ON;;;;;N;;;;;
 11.5393 +1F0BC;PLAYING CARD KNIGHT OF HEARTS;So;0;ON;;;;;N;;;;;
 11.5394 +1F0BD;PLAYING CARD QUEEN OF HEARTS;So;0;ON;;;;;N;;;;;
 11.5395 +1F0BE;PLAYING CARD KING OF HEARTS;So;0;ON;;;;;N;;;;;
 11.5396 +1F0C1;PLAYING CARD ACE OF DIAMONDS;So;0;ON;;;;;N;;;;;
 11.5397 +1F0C2;PLAYING CARD TWO OF DIAMONDS;So;0;ON;;;;;N;;;;;
 11.5398 +1F0C3;PLAYING CARD THREE OF DIAMONDS;So;0;ON;;;;;N;;;;;
 11.5399 +1F0C4;PLAYING CARD FOUR OF DIAMONDS;So;0;ON;;;;;N;;;;;
 11.5400 +1F0C5;PLAYING CARD FIVE OF DIAMONDS;So;0;ON;;;;;N;;;;;
 11.5401 +1F0C6;PLAYING CARD SIX OF DIAMONDS;So;0;ON;;;;;N;;;;;
 11.5402 +1F0C7;PLAYING CARD SEVEN OF DIAMONDS;So;0;ON;;;;;N;;;;;
 11.5403 +1F0C8;PLAYING CARD EIGHT OF DIAMONDS;So;0;ON;;;;;N;;;;;
 11.5404 +1F0C9;PLAYING CARD NINE OF DIAMONDS;So;0;ON;;;;;N;;;;;
 11.5405 +1F0CA;PLAYING CARD TEN OF DIAMONDS;So;0;ON;;;;;N;;;;;
 11.5406 +1F0CB;PLAYING CARD JACK OF DIAMONDS;So;0;ON;;;;;N;;;;;
 11.5407 +1F0CC;PLAYING CARD KNIGHT OF DIAMONDS;So;0;ON;;;;;N;;;;;
 11.5408 +1F0CD;PLAYING CARD QUEEN OF DIAMONDS;So;0;ON;;;;;N;;;;;
 11.5409 +1F0CE;PLAYING CARD KING OF DIAMONDS;So;0;ON;;;;;N;;;;;
 11.5410 +1F0CF;PLAYING CARD BLACK JOKER;So;0;ON;;;;;N;;;;;
 11.5411 +1F0D1;PLAYING CARD ACE OF CLUBS;So;0;ON;;;;;N;;;;;
 11.5412 +1F0D2;PLAYING CARD TWO OF CLUBS;So;0;ON;;;;;N;;;;;
 11.5413 +1F0D3;PLAYING CARD THREE OF CLUBS;So;0;ON;;;;;N;;;;;
 11.5414 +1F0D4;PLAYING CARD FOUR OF CLUBS;So;0;ON;;;;;N;;;;;
 11.5415 +1F0D5;PLAYING CARD FIVE OF CLUBS;So;0;ON;;;;;N;;;;;
 11.5416 +1F0D6;PLAYING CARD SIX OF CLUBS;So;0;ON;;;;;N;;;;;
 11.5417 +1F0D7;PLAYING CARD SEVEN OF CLUBS;So;0;ON;;;;;N;;;;;
 11.5418 +1F0D8;PLAYING CARD EIGHT OF CLUBS;So;0;ON;;;;;N;;;;;
 11.5419 +1F0D9;PLAYING CARD NINE OF CLUBS;So;0;ON;;;;;N;;;;;
 11.5420 +1F0DA;PLAYING CARD TEN OF CLUBS;So;0;ON;;;;;N;;;;;
 11.5421 +1F0DB;PLAYING CARD JACK OF CLUBS;So;0;ON;;;;;N;;;;;
 11.5422 +1F0DC;PLAYING CARD KNIGHT OF CLUBS;So;0;ON;;;;;N;;;;;
 11.5423 +1F0DD;PLAYING CARD QUEEN OF CLUBS;So;0;ON;;;;;N;;;;;
 11.5424 +1F0DE;PLAYING CARD KING OF CLUBS;So;0;ON;;;;;N;;;;;
 11.5425 +1F0DF;PLAYING CARD WHITE JOKER;So;0;ON;;;;;N;;;;;
 11.5426 +1F100;DIGIT ZERO FULL STOP;No;0;EN;<compat> 0030 002E;;0;0;N;;;;;
 11.5427 +1F101;DIGIT ZERO COMMA;No;0;EN;<compat> 0030 002C;;0;0;N;;;;;
 11.5428 +1F102;DIGIT ONE COMMA;No;0;EN;<compat> 0031 002C;;1;1;N;;;;;
 11.5429 +1F103;DIGIT TWO COMMA;No;0;EN;<compat> 0032 002C;;2;2;N;;;;;
 11.5430 +1F104;DIGIT THREE COMMA;No;0;EN;<compat> 0033 002C;;3;3;N;;;;;
 11.5431 +1F105;DIGIT FOUR COMMA;No;0;EN;<compat> 0034 002C;;4;4;N;;;;;
 11.5432 +1F106;DIGIT FIVE COMMA;No;0;EN;<compat> 0035 002C;;5;5;N;;;;;
 11.5433 +1F107;DIGIT SIX COMMA;No;0;EN;<compat> 0036 002C;;6;6;N;;;;;
 11.5434 +1F108;DIGIT SEVEN COMMA;No;0;EN;<compat> 0037 002C;;7;7;N;;;;;
 11.5435 +1F109;DIGIT EIGHT COMMA;No;0;EN;<compat> 0038 002C;;8;8;N;;;;;
 11.5436 +1F10A;DIGIT NINE COMMA;No;0;EN;<compat> 0039 002C;;9;9;N;;;;;
 11.5437 +1F110;PARENTHESIZED LATIN CAPITAL LETTER A;So;0;L;<compat> 0028 0041 0029;;;;N;;;;;
 11.5438 +1F111;PARENTHESIZED LATIN CAPITAL LETTER B;So;0;L;<compat> 0028 0042 0029;;;;N;;;;;
 11.5439 +1F112;PARENTHESIZED LATIN CAPITAL LETTER C;So;0;L;<compat> 0028 0043 0029;;;;N;;;;;
 11.5440 +1F113;PARENTHESIZED LATIN CAPITAL LETTER D;So;0;L;<compat> 0028 0044 0029;;;;N;;;;;
 11.5441 +1F114;PARENTHESIZED LATIN CAPITAL LETTER E;So;0;L;<compat> 0028 0045 0029;;;;N;;;;;
 11.5442 +1F115;PARENTHESIZED LATIN CAPITAL LETTER F;So;0;L;<compat> 0028 0046 0029;;;;N;;;;;
 11.5443 +1F116;PARENTHESIZED LATIN CAPITAL LETTER G;So;0;L;<compat> 0028 0047 0029;;;;N;;;;;
 11.5444 +1F117;PARENTHESIZED LATIN CAPITAL LETTER H;So;0;L;<compat> 0028 0048 0029;;;;N;;;;;
 11.5445 +1F118;PARENTHESIZED LATIN CAPITAL LETTER I;So;0;L;<compat> 0028 0049 0029;;;;N;;;;;
 11.5446 +1F119;PARENTHESIZED LATIN CAPITAL LETTER J;So;0;L;<compat> 0028 004A 0029;;;;N;;;;;
 11.5447 +1F11A;PARENTHESIZED LATIN CAPITAL LETTER K;So;0;L;<compat> 0028 004B 0029;;;;N;;;;;
 11.5448 +1F11B;PARENTHESIZED LATIN CAPITAL LETTER L;So;0;L;<compat> 0028 004C 0029;;;;N;;;;;
 11.5449 +1F11C;PARENTHESIZED LATIN CAPITAL LETTER M;So;0;L;<compat> 0028 004D 0029;;;;N;;;;;
 11.5450 +1F11D;PARENTHESIZED LATIN CAPITAL LETTER N;So;0;L;<compat> 0028 004E 0029;;;;N;;;;;
 11.5451 +1F11E;PARENTHESIZED LATIN CAPITAL LETTER O;So;0;L;<compat> 0028 004F 0029;;;;N;;;;;
 11.5452 +1F11F;PARENTHESIZED LATIN CAPITAL LETTER P;So;0;L;<compat> 0028 0050 0029;;;;N;;;;;
 11.5453 +1F120;PARENTHESIZED LATIN CAPITAL LETTER Q;So;0;L;<compat> 0028 0051 0029;;;;N;;;;;
 11.5454 +1F121;PARENTHESIZED LATIN CAPITAL LETTER R;So;0;L;<compat> 0028 0052 0029;;;;N;;;;;
 11.5455 +1F122;PARENTHESIZED LATIN CAPITAL LETTER S;So;0;L;<compat> 0028 0053 0029;;;;N;;;;;
 11.5456 +1F123;PARENTHESIZED LATIN CAPITAL LETTER T;So;0;L;<compat> 0028 0054 0029;;;;N;;;;;
 11.5457 +1F124;PARENTHESIZED LATIN CAPITAL LETTER U;So;0;L;<compat> 0028 0055 0029;;;;N;;;;;
 11.5458 +1F125;PARENTHESIZED LATIN CAPITAL LETTER V;So;0;L;<compat> 0028 0056 0029;;;;N;;;;;
 11.5459 +1F126;PARENTHESIZED LATIN CAPITAL LETTER W;So;0;L;<compat> 0028 0057 0029;;;;N;;;;;
 11.5460 +1F127;PARENTHESIZED LATIN CAPITAL LETTER X;So;0;L;<compat> 0028 0058 0029;;;;N;;;;;
 11.5461 +1F128;PARENTHESIZED LATIN CAPITAL LETTER Y;So;0;L;<compat> 0028 0059 0029;;;;N;;;;;
 11.5462 +1F129;PARENTHESIZED LATIN CAPITAL LETTER Z;So;0;L;<compat> 0028 005A 0029;;;;N;;;;;
 11.5463 +1F12A;TORTOISE SHELL BRACKETED LATIN CAPITAL LETTER S;So;0;L;<compat> 3014 0053 3015;;;;N;;;;;
 11.5464 +1F12B;CIRCLED ITALIC LATIN CAPITAL LETTER C;So;0;L;<circle> 0043;;;;N;;;;;
 11.5465 +1F12C;CIRCLED ITALIC LATIN CAPITAL LETTER R;So;0;L;<circle> 0052;;;;N;;;;;
 11.5466 +1F12D;CIRCLED CD;So;0;L;<circle> 0043 0044;;;;N;;;;;
 11.5467 +1F12E;CIRCLED WZ;So;0;L;<circle> 0057 005A;;;;N;;;;;
 11.5468 +1F130;SQUARED LATIN CAPITAL LETTER A;So;0;L;<square> 0041;;;;N;;;;;
 11.5469 +1F131;SQUARED LATIN CAPITAL LETTER B;So;0;L;<square> 0042;;;;N;;;;;
 11.5470 +1F132;SQUARED LATIN CAPITAL LETTER C;So;0;L;<square> 0043;;;;N;;;;;
 11.5471 +1F133;SQUARED LATIN CAPITAL LETTER D;So;0;L;<square> 0044;;;;N;;;;;
 11.5472 +1F134;SQUARED LATIN CAPITAL LETTER E;So;0;L;<square> 0045;;;;N;;;;;
 11.5473 +1F135;SQUARED LATIN CAPITAL LETTER F;So;0;L;<square> 0046;;;;N;;;;;
 11.5474 +1F136;SQUARED LATIN CAPITAL LETTER G;So;0;L;<square> 0047;;;;N;;;;;
 11.5475 +1F137;SQUARED LATIN CAPITAL LETTER H;So;0;L;<square> 0048;;;;N;;;;;
 11.5476 +1F138;SQUARED LATIN CAPITAL LETTER I;So;0;L;<square> 0049;;;;N;;;;;
 11.5477 +1F139;SQUARED LATIN CAPITAL LETTER J;So;0;L;<square> 004A;;;;N;;;;;
 11.5478 +1F13A;SQUARED LATIN CAPITAL LETTER K;So;0;L;<square> 004B;;;;N;;;;;
 11.5479 +1F13B;SQUARED LATIN CAPITAL LETTER L;So;0;L;<square> 004C;;;;N;;;;;
 11.5480 +1F13C;SQUARED LATIN CAPITAL LETTER M;So;0;L;<square> 004D;;;;N;;;;;
 11.5481 +1F13D;SQUARED LATIN CAPITAL LETTER N;So;0;L;<square> 004E;;;;N;;;;;
 11.5482 +1F13E;SQUARED LATIN CAPITAL LETTER O;So;0;L;<square> 004F;;;;N;;;;;
 11.5483 +1F13F;SQUARED LATIN CAPITAL LETTER P;So;0;L;<square> 0050;;;;N;;;;;
 11.5484 +1F140;SQUARED LATIN CAPITAL LETTER Q;So;0;L;<square> 0051;;;;N;;;;;
 11.5485 +1F141;SQUARED LATIN CAPITAL LETTER R;So;0;L;<square> 0052;;;;N;;;;;
 11.5486 +1F142;SQUARED LATIN CAPITAL LETTER S;So;0;L;<square> 0053;;;;N;;;;;
 11.5487 +1F143;SQUARED LATIN CAPITAL LETTER T;So;0;L;<square> 0054;;;;N;;;;;
 11.5488 +1F144;SQUARED LATIN CAPITAL LETTER U;So;0;L;<square> 0055;;;;N;;;;;
 11.5489 +1F145;SQUARED LATIN CAPITAL LETTER V;So;0;L;<square> 0056;;;;N;;;;;
 11.5490 +1F146;SQUARED LATIN CAPITAL LETTER W;So;0;L;<square> 0057;;;;N;;;;;
 11.5491 +1F147;SQUARED LATIN CAPITAL LETTER X;So;0;L;<square> 0058;;;;N;;;;;
 11.5492 +1F148;SQUARED LATIN CAPITAL LETTER Y;So;0;L;<square> 0059;;;;N;;;;;
 11.5493 +1F149;SQUARED LATIN CAPITAL LETTER Z;So;0;L;<square> 005A;;;;N;;;;;
 11.5494 +1F14A;SQUARED HV;So;0;L;<square> 0048 0056;;;;N;;;;;
 11.5495 +1F14B;SQUARED MV;So;0;L;<square> 004D 0056;;;;N;;;;;
 11.5496 +1F14C;SQUARED SD;So;0;L;<square> 0053 0044;;;;N;;;;;
 11.5497 +1F14D;SQUARED SS;So;0;L;<square> 0053 0053;;;;N;;;;;
 11.5498 +1F14E;SQUARED PPV;So;0;L;<square> 0050 0050 0056;;;;N;;;;;
 11.5499 +1F14F;SQUARED WC;So;0;L;<square> 0057 0043;;;;N;;;;;
 11.5500 +1F150;NEGATIVE CIRCLED LATIN CAPITAL LETTER A;So;0;L;;;;;N;;;;;
 11.5501 +1F151;NEGATIVE CIRCLED LATIN CAPITAL LETTER B;So;0;L;;;;;N;;;;;
 11.5502 +1F152;NEGATIVE CIRCLED LATIN CAPITAL LETTER C;So;0;L;;;;;N;;;;;
 11.5503 +1F153;NEGATIVE CIRCLED LATIN CAPITAL LETTER D;So;0;L;;;;;N;;;;;
 11.5504 +1F154;NEGATIVE CIRCLED LATIN CAPITAL LETTER E;So;0;L;;;;;N;;;;;
 11.5505 +1F155;NEGATIVE CIRCLED LATIN CAPITAL LETTER F;So;0;L;;;;;N;;;;;
 11.5506 +1F156;NEGATIVE CIRCLED LATIN CAPITAL LETTER G;So;0;L;;;;;N;;;;;
 11.5507 +1F157;NEGATIVE CIRCLED LATIN CAPITAL LETTER H;So;0;L;;;;;N;;;;;
 11.5508 +1F158;NEGATIVE CIRCLED LATIN CAPITAL LETTER I;So;0;L;;;;;N;;;;;
 11.5509 +1F159;NEGATIVE CIRCLED LATIN CAPITAL LETTER J;So;0;L;;;;;N;;;;;
 11.5510 +1F15A;NEGATIVE CIRCLED LATIN CAPITAL LETTER K;So;0;L;;;;;N;;;;;
 11.5511 +1F15B;NEGATIVE CIRCLED LATIN CAPITAL LETTER L;So;0;L;;;;;N;;;;;
 11.5512 +1F15C;NEGATIVE CIRCLED LATIN CAPITAL LETTER M;So;0;L;;;;;N;;;;;
 11.5513 +1F15D;NEGATIVE CIRCLED LATIN CAPITAL LETTER N;So;0;L;;;;;N;;;;;
 11.5514 +1F15E;NEGATIVE CIRCLED LATIN CAPITAL LETTER O;So;0;L;;;;;N;;;;;
 11.5515 +1F15F;NEGATIVE CIRCLED LATIN CAPITAL LETTER P;So;0;L;;;;;N;;;;;
 11.5516 +1F160;NEGATIVE CIRCLED LATIN CAPITAL LETTER Q;So;0;L;;;;;N;;;;;
 11.5517 +1F161;NEGATIVE CIRCLED LATIN CAPITAL LETTER R;So;0;L;;;;;N;;;;;
 11.5518 +1F162;NEGATIVE CIRCLED LATIN CAPITAL LETTER S;So;0;L;;;;;N;;;;;
 11.5519 +1F163;NEGATIVE CIRCLED LATIN CAPITAL LETTER T;So;0;L;;;;;N;;;;;
 11.5520 +1F164;NEGATIVE CIRCLED LATIN CAPITAL LETTER U;So;0;L;;;;;N;;;;;
 11.5521 +1F165;NEGATIVE CIRCLED LATIN CAPITAL LETTER V;So;0;L;;;;;N;;;;;
 11.5522 +1F166;NEGATIVE CIRCLED LATIN CAPITAL LETTER W;So;0;L;;;;;N;;;;;
 11.5523 +1F167;NEGATIVE CIRCLED LATIN CAPITAL LETTER X;So;0;L;;;;;N;;;;;
 11.5524 +1F168;NEGATIVE CIRCLED LATIN CAPITAL LETTER Y;So;0;L;;;;;N;;;;;
 11.5525 +1F169;NEGATIVE CIRCLED LATIN CAPITAL LETTER Z;So;0;L;;;;;N;;;;;
 11.5526 +1F170;NEGATIVE SQUARED LATIN CAPITAL LETTER A;So;0;L;;;;;N;;;;;
 11.5527 +1F171;NEGATIVE SQUARED LATIN CAPITAL LETTER B;So;0;L;;;;;N;;;;;
 11.5528 +1F172;NEGATIVE SQUARED LATIN CAPITAL LETTER C;So;0;L;;;;;N;;;;;
 11.5529 +1F173;NEGATIVE SQUARED LATIN CAPITAL LETTER D;So;0;L;;;;;N;;;;;
 11.5530 +1F174;NEGATIVE SQUARED LATIN CAPITAL LETTER E;So;0;L;;;;;N;;;;;
 11.5531 +1F175;NEGATIVE SQUARED LATIN CAPITAL LETTER F;So;0;L;;;;;N;;;;;
 11.5532 +1F176;NEGATIVE SQUARED LATIN CAPITAL LETTER G;So;0;L;;;;;N;;;;;
 11.5533 +1F177;NEGATIVE SQUARED LATIN CAPITAL LETTER H;So;0;L;;;;;N;;;;;
 11.5534 +1F178;NEGATIVE SQUARED LATIN CAPITAL LETTER I;So;0;L;;;;;N;;;;;
 11.5535 +1F179;NEGATIVE SQUARED LATIN CAPITAL LETTER J;So;0;L;;;;;N;;;;;
 11.5536 +1F17A;NEGATIVE SQUARED LATIN CAPITAL LETTER K;So;0;L;;;;;N;;;;;
 11.5537 +1F17B;NEGATIVE SQUARED LATIN CAPITAL LETTER L;So;0;L;;;;;N;;;;;
 11.5538 +1F17C;NEGATIVE SQUARED LATIN CAPITAL LETTER M;So;0;L;;;;;N;;;;;
 11.5539 +1F17D;NEGATIVE SQUARED LATIN CAPITAL LETTER N;So;0;L;;;;;N;;;;;
 11.5540 +1F17E;NEGATIVE SQUARED LATIN CAPITAL LETTER O;So;0;L;;;;;N;;;;;
 11.5541 +1F17F;NEGATIVE SQUARED LATIN CAPITAL LETTER P;So;0;L;;;;;N;;;;;
 11.5542 +1F180;NEGATIVE SQUARED LATIN CAPITAL LETTER Q;So;0;L;;;;;N;;;;;
 11.5543 +1F181;NEGATIVE SQUARED LATIN CAPITAL LETTER R;So;0;L;;;;;N;;;;;
 11.5544 +1F182;NEGATIVE SQUARED LATIN CAPITAL LETTER S;So;0;L;;;;;N;;;;;
 11.5545 +1F183;NEGATIVE SQUARED LATIN CAPITAL LETTER T;So;0;L;;;;;N;;;;;
 11.5546 +1F184;NEGATIVE SQUARED LATIN CAPITAL LETTER U;So;0;L;;;;;N;;;;;
 11.5547 +1F185;NEGATIVE SQUARED LATIN CAPITAL LETTER V;So;0;L;;;;;N;;;;;
 11.5548 +1F186;NEGATIVE SQUARED LATIN CAPITAL LETTER W;So;0;L;;;;;N;;;;;
 11.5549 +1F187;NEGATIVE SQUARED LATIN CAPITAL LETTER X;So;0;L;;;;;N;;;;;
 11.5550 +1F188;NEGATIVE SQUARED LATIN CAPITAL LETTER Y;So;0;L;;;;;N;;;;;
 11.5551 +1F189;NEGATIVE SQUARED LATIN CAPITAL LETTER Z;So;0;L;;;;;N;;;;;
 11.5552 +1F18A;CROSSED NEGATIVE SQUARED LATIN CAPITAL LETTER P;So;0;L;;;;;N;;;;;
 11.5553 +1F18B;NEGATIVE SQUARED IC;So;0;L;;;;;N;;;;;
 11.5554 +1F18C;NEGATIVE SQUARED PA;So;0;L;;;;;N;;;;;
 11.5555 +1F18D;NEGATIVE SQUARED SA;So;0;L;;;;;N;;;;;
 11.5556 +1F18E;NEGATIVE SQUARED AB;So;0;L;;;;;N;;;;;
 11.5557 +1F18F;NEGATIVE SQUARED WC;So;0;L;;;;;N;;;;;
 11.5558 +1F190;SQUARE DJ;So;0;L;<square> 0044 004A;;;;N;;;;;
 11.5559 +1F191;SQUARED CL;So;0;L;;;;;N;;;;;
 11.5560 +1F192;SQUARED COOL;So;0;L;;;;;N;;;;;
 11.5561 +1F193;SQUARED FREE;So;0;L;;;;;N;;;;;
 11.5562 +1F194;SQUARED ID;So;0;L;;;;;N;;;;;
 11.5563 +1F195;SQUARED NEW;So;0;L;;;;;N;;;;;
 11.5564 +1F196;SQUARED NG;So;0;L;;;;;N;;;;;
 11.5565 +1F197;SQUARED OK;So;0;L;;;;;N;;;;;
 11.5566 +1F198;SQUARED SOS;So;0;L;;;;;N;;;;;
 11.5567 +1F199;SQUARED UP WITH EXCLAMATION MARK;So;0;L;;;;;N;;;;;
 11.5568 +1F19A;SQUARED VS;So;0;L;;;;;N;;;;;
 11.5569 +1F1E6;REGIONAL INDICATOR SYMBOL LETTER A;So;0;L;;;;;N;;;;;
 11.5570 +1F1E7;REGIONAL INDICATOR SYMBOL LETTER B;So;0;L;;;;;N;;;;;
 11.5571 +1F1E8;REGIONAL INDICATOR SYMBOL LETTER C;So;0;L;;;;;N;;;;;
 11.5572 +1F1E9;REGIONAL INDICATOR SYMBOL LETTER D;So;0;L;;;;;N;;;;;
 11.5573 +1F1EA;REGIONAL INDICATOR SYMBOL LETTER E;So;0;L;;;;;N;;;;;
 11.5574 +1F1EB;REGIONAL INDICATOR SYMBOL LETTER F;So;0;L;;;;;N;;;;;
 11.5575 +1F1EC;REGIONAL INDICATOR SYMBOL LETTER G;So;0;L;;;;;N;;;;;
 11.5576 +1F1ED;REGIONAL INDICATOR SYMBOL LETTER H;So;0;L;;;;;N;;;;;
 11.5577 +1F1EE;REGIONAL INDICATOR SYMBOL LETTER I;So;0;L;;;;;N;;;;;
 11.5578 +1F1EF;REGIONAL INDICATOR SYMBOL LETTER J;So;0;L;;;;;N;;;;;
 11.5579 +1F1F0;REGIONAL INDICATOR SYMBOL LETTER K;So;0;L;;;;;N;;;;;
 11.5580 +1F1F1;REGIONAL INDICATOR SYMBOL LETTER L;So;0;L;;;;;N;;;;;
 11.5581 +1F1F2;REGIONAL INDICATOR SYMBOL LETTER M;So;0;L;;;;;N;;;;;
 11.5582 +1F1F3;REGIONAL INDICATOR SYMBOL LETTER N;So;0;L;;;;;N;;;;;
 11.5583 +1F1F4;REGIONAL INDICATOR SYMBOL LETTER O;So;0;L;;;;;N;;;;;
 11.5584 +1F1F5;REGIONAL INDICATOR SYMBOL LETTER P;So;0;L;;;;;N;;;;;
 11.5585 +1F1F6;REGIONAL INDICATOR SYMBOL LETTER Q;So;0;L;;;;;N;;;;;
 11.5586 +1F1F7;REGIONAL INDICATOR SYMBOL LETTER R;So;0;L;;;;;N;;;;;
 11.5587 +1F1F8;REGIONAL INDICATOR SYMBOL LETTER S;So;0;L;;;;;N;;;;;
 11.5588 +1F1F9;REGIONAL INDICATOR SYMBOL LETTER T;So;0;L;;;;;N;;;;;
 11.5589 +1F1FA;REGIONAL INDICATOR SYMBOL LETTER U;So;0;L;;;;;N;;;;;
 11.5590 +1F1FB;REGIONAL INDICATOR SYMBOL LETTER V;So;0;L;;;;;N;;;;;
 11.5591 +1F1FC;REGIONAL INDICATOR SYMBOL LETTER W;So;0;L;;;;;N;;;;;
 11.5592 +1F1FD;REGIONAL INDICATOR SYMBOL LETTER X;So;0;L;;;;;N;;;;;
 11.5593 +1F1FE;REGIONAL INDICATOR SYMBOL LETTER Y;So;0;L;;;;;N;;;;;
 11.5594 +1F1FF;REGIONAL INDICATOR SYMBOL LETTER Z;So;0;L;;;;;N;;;;;
 11.5595 +1F200;SQUARE HIRAGANA HOKA;So;0;L;<square> 307B 304B;;;;N;;;;;
 11.5596 +1F201;SQUARED KATAKANA KOKO;So;0;L;<square> 30B3 30B3;;;;N;;;;;
 11.5597 +1F202;SQUARED KATAKANA SA;So;0;L;<square> 30B5;;;;N;;;;;
 11.5598 +1F210;SQUARED CJK UNIFIED IDEOGRAPH-624B;So;0;L;<square> 624B;;;;N;;;;;
 11.5599 +1F211;SQUARED CJK UNIFIED IDEOGRAPH-5B57;So;0;L;<square> 5B57;;;;N;;;;;
 11.5600 +1F212;SQUARED CJK UNIFIED IDEOGRAPH-53CC;So;0;L;<square> 53CC;;;;N;;;;;
 11.5601 +1F213;SQUARED KATAKANA DE;So;0;L;<square> 30C7;;;;N;;;;;
 11.5602 +1F214;SQUARED CJK UNIFIED IDEOGRAPH-4E8C;So;0;L;<square> 4E8C;;;;N;;;;;
 11.5603 +1F215;SQUARED CJK UNIFIED IDEOGRAPH-591A;So;0;L;<square> 591A;;;;N;;;;;
 11.5604 +1F216;SQUARED CJK UNIFIED IDEOGRAPH-89E3;So;0;L;<square> 89E3;;;;N;;;;;
 11.5605 +1F217;SQUARED CJK UNIFIED IDEOGRAPH-5929;So;0;L;<square> 5929;;;;N;;;;;
 11.5606 +1F218;SQUARED CJK UNIFIED IDEOGRAPH-4EA4;So;0;L;<square> 4EA4;;;;N;;;;;
 11.5607 +1F219;SQUARED CJK UNIFIED IDEOGRAPH-6620;So;0;L;<square> 6620;;;;N;;;;;
 11.5608 +1F21A;SQUARED CJK UNIFIED IDEOGRAPH-7121;So;0;L;<square> 7121;;;;N;;;;;
 11.5609 +1F21B;SQUARED CJK UNIFIED IDEOGRAPH-6599;So;0;L;<square> 6599;;;;N;;;;;
 11.5610 +1F21C;SQUARED CJK UNIFIED IDEOGRAPH-524D;So;0;L;<square> 524D;;;;N;;;;;
 11.5611 +1F21D;SQUARED CJK UNIFIED IDEOGRAPH-5F8C;So;0;L;<square> 5F8C;;;;N;;;;;
 11.5612 +1F21E;SQUARED CJK UNIFIED IDEOGRAPH-518D;So;0;L;<square> 518D;;;;N;;;;;
 11.5613 +1F21F;SQUARED CJK UNIFIED IDEOGRAPH-65B0;So;0;L;<square> 65B0;;;;N;;;;;
 11.5614 +1F220;SQUARED CJK UNIFIED IDEOGRAPH-521D;So;0;L;<square> 521D;;;;N;;;;;
 11.5615 +1F221;SQUARED CJK UNIFIED IDEOGRAPH-7D42;So;0;L;<square> 7D42;;;;N;;;;;
 11.5616 +1F222;SQUARED CJK UNIFIED IDEOGRAPH-751F;So;0;L;<square> 751F;;;;N;;;;;
 11.5617 +1F223;SQUARED CJK UNIFIED IDEOGRAPH-8CA9;So;0;L;<square> 8CA9;;;;N;;;;;
 11.5618 +1F224;SQUARED CJK UNIFIED IDEOGRAPH-58F0;So;0;L;<square> 58F0;;;;N;;;;;
 11.5619 +1F225;SQUARED CJK UNIFIED IDEOGRAPH-5439;So;0;L;<square> 5439;;;;N;;;;;
 11.5620 +1F226;SQUARED CJK UNIFIED IDEOGRAPH-6F14;So;0;L;<square> 6F14;;;;N;;;;;
 11.5621 +1F227;SQUARED CJK UNIFIED IDEOGRAPH-6295;So;0;L;<square> 6295;;;;N;;;;;
 11.5622 +1F228;SQUARED CJK UNIFIED IDEOGRAPH-6355;So;0;L;<square> 6355;;;;N;;;;;
 11.5623 +1F229;SQUARED CJK UNIFIED IDEOGRAPH-4E00;So;0;L;<square> 4E00;;;;N;;;;;
 11.5624 +1F22A;SQUARED CJK UNIFIED IDEOGRAPH-4E09;So;0;L;<square> 4E09;;;;N;;;;;
 11.5625 +1F22B;SQUARED CJK UNIFIED IDEOGRAPH-904A;So;0;L;<square> 904A;;;;N;;;;;
 11.5626 +1F22C;SQUARED CJK UNIFIED IDEOGRAPH-5DE6;So;0;L;<square> 5DE6;;;;N;;;;;
 11.5627 +1F22D;SQUARED CJK UNIFIED IDEOGRAPH-4E2D;So;0;L;<square> 4E2D;;;;N;;;;;
 11.5628 +1F22E;SQUARED CJK UNIFIED IDEOGRAPH-53F3;So;0;L;<square> 53F3;;;;N;;;;;
 11.5629 +1F22F;SQUARED CJK UNIFIED IDEOGRAPH-6307;So;0;L;<square> 6307;;;;N;;;;;
 11.5630 +1F230;SQUARED CJK UNIFIED IDEOGRAPH-8D70;So;0;L;<square> 8D70;;;;N;;;;;
 11.5631 +1F231;SQUARED CJK UNIFIED IDEOGRAPH-6253;So;0;L;<square> 6253;;;;N;;;;;
 11.5632 +1F232;SQUARED CJK UNIFIED IDEOGRAPH-7981;So;0;L;<square> 7981;;;;N;;;;;
 11.5633 +1F233;SQUARED CJK UNIFIED IDEOGRAPH-7A7A;So;0;L;<square> 7A7A;;;;N;;;;;
 11.5634 +1F234;SQUARED CJK UNIFIED IDEOGRAPH-5408;So;0;L;<square> 5408;;;;N;;;;;
 11.5635 +1F235;SQUARED CJK UNIFIED IDEOGRAPH-6E80;So;0;L;<square> 6E80;;;;N;;;;;
 11.5636 +1F236;SQUARED CJK UNIFIED IDEOGRAPH-6709;So;0;L;<square> 6709;;;;N;;;;;
 11.5637 +1F237;SQUARED CJK UNIFIED IDEOGRAPH-6708;So;0;L;<square> 6708;;;;N;;;;;
 11.5638 +1F238;SQUARED CJK UNIFIED IDEOGRAPH-7533;So;0;L;<square> 7533;;;;N;;;;;
 11.5639 +1F239;SQUARED CJK UNIFIED IDEOGRAPH-5272;So;0;L;<square> 5272;;;;N;;;;;
 11.5640 +1F23A;SQUARED CJK UNIFIED IDEOGRAPH-55B6;So;0;L;<square> 55B6;;;;N;;;;;
 11.5641 +1F240;TORTOISE SHELL BRACKETED CJK UNIFIED IDEOGRAPH-672C;So;0;L;<compat> 3014 672C 3015;;;;N;;;;;
 11.5642 +1F241;TORTOISE SHELL BRACKETED CJK UNIFIED IDEOGRAPH-4E09;So;0;L;<compat> 3014 4E09 3015;;;;N;;;;;
 11.5643 +1F242;TORTOISE SHELL BRACKETED CJK UNIFIED IDEOGRAPH-4E8C;So;0;L;<compat> 3014 4E8C 3015;;;;N;;;;;
 11.5644 +1F243;TORTOISE SHELL BRACKETED CJK UNIFIED IDEOGRAPH-5B89;So;0;L;<compat> 3014 5B89 3015;;;;N;;;;;
 11.5645 +1F244;TORTOISE SHELL BRACKETED CJK UNIFIED IDEOGRAPH-70B9;So;0;L;<compat> 3014 70B9 3015;;;;N;;;;;
 11.5646 +1F245;TORTOISE SHELL BRACKETED CJK UNIFIED IDEOGRAPH-6253;So;0;L;<compat> 3014 6253 3015;;;;N;;;;;
 11.5647 +1F246;TORTOISE SHELL BRACKETED CJK UNIFIED IDEOGRAPH-76D7;So;0;L;<compat> 3014 76D7 3015;;;;N;;;;;
 11.5648 +1F247;TORTOISE SHELL BRACKETED CJK UNIFIED IDEOGRAPH-52DD;So;0;L;<compat> 3014 52DD 3015;;;;N;;;;;
 11.5649 +1F248;TORTOISE SHELL BRACKETED CJK UNIFIED IDEOGRAPH-6557;So;0;L;<compat> 3014 6557 3015;;;;N;;;;;
 11.5650 +1F250;CIRCLED IDEOGRAPH ADVANTAGE;So;0;L;<circle> 5F97;;;;N;;;;;
 11.5651 +1F251;CIRCLED IDEOGRAPH ACCEPT;So;0;L;<circle> 53EF;;;;N;;;;;
 11.5652 +1F300;CYCLONE;So;0;ON;;;;;N;;;;;
 11.5653 +1F301;FOGGY;So;0;ON;;;;;N;;;;;
 11.5654 +1F302;CLOSED UMBRELLA;So;0;ON;;;;;N;;;;;
 11.5655 +1F303;NIGHT WITH STARS;So;0;ON;;;;;N;;;;;
 11.5656 +1F304;SUNRISE OVER MOUNTAINS;So;0;ON;;;;;N;;;;;
 11.5657 +1F305;SUNRISE;So;0;ON;;;;;N;;;;;
 11.5658 +1F306;CITYSCAPE AT DUSK;So;0;ON;;;;;N;;;;;
 11.5659 +1F307;SUNSET OVER BUILDINGS;So;0;ON;;;;;N;;;;;
 11.5660 +1F308;RAINBOW;So;0;ON;;;;;N;;;;;
 11.5661 +1F309;BRIDGE AT NIGHT;So;0;ON;;;;;N;;;;;
 11.5662 +1F30A;WATER WAVE;So;0;ON;;;;;N;;;;;
 11.5663 +1F30B;VOLCANO;So;0;ON;;;;;N;;;;;
 11.5664 +1F30C;MILKY WAY;So;0;ON;;;;;N;;;;;
 11.5665 +1F30D;EARTH GLOBE EUROPE-AFRICA;So;0;ON;;;;;N;;;;;
 11.5666 +1F30E;EARTH GLOBE AMERICAS;So;0;ON;;;;;N;;;;;
 11.5667 +1F30F;EARTH GLOBE ASIA-AUSTRALIA;So;0;ON;;;;;N;;;;;
 11.5668 +1F310;GLOBE WITH MERIDIANS;So;0;ON;;;;;N;;;;;
 11.5669 +1F311;NEW MOON SYMBOL;So;0;ON;;;;;N;;;;;
 11.5670 +1F312;WAXING CRESCENT MOON SYMBOL;So;0;ON;;;;;N;;;;;
 11.5671 +1F313;FIRST QUARTER MOON SYMBOL;So;0;ON;;;;;N;;;;;
 11.5672 +1F314;WAXING GIBBOUS MOON SYMBOL;So;0;ON;;;;;N;;;;;
 11.5673 +1F315;FULL MOON SYMBOL;So;0;ON;;;;;N;;;;;
 11.5674 +1F316;WANING GIBBOUS MOON SYMBOL;So;0;ON;;;;;N;;;;;
 11.5675 +1F317;LAST QUARTER MOON SYMBOL;So;0;ON;;;;;N;;;;;
 11.5676 +1F318;WANING CRESCENT MOON SYMBOL;So;0;ON;;;;;N;;;;;
 11.5677 +1F319;CRESCENT MOON;So;0;ON;;;;;N;;;;;
 11.5678 +1F31A;NEW MOON WITH FACE;So;0;ON;;;;;N;;;;;
 11.5679 +1F31B;FIRST QUARTER MOON WITH FACE;So;0;ON;;;;;N;;;;;
 11.5680 +1F31C;LAST QUARTER MOON WITH FACE;So;0;ON;;;;;N;;;;;
 11.5681 +1F31D;FULL MOON WITH FACE;So;0;ON;;;;;N;;;;;
 11.5682 +1F31E;SUN WITH FACE;So;0;ON;;;;;N;;;;;
 11.5683 +1F31F;GLOWING STAR;So;0;ON;;;;;N;;;;;
 11.5684 +1F320;SHOOTING STAR;So;0;ON;;;;;N;;;;;
 11.5685 +1F330;CHESTNUT;So;0;ON;;;;;N;;;;;
 11.5686 +1F331;SEEDLING;So;0;ON;;;;;N;;;;;
 11.5687 +1F332;EVERGREEN TREE;So;0;ON;;;;;N;;;;;
 11.5688 +1F333;DECIDUOUS TREE;So;0;ON;;;;;N;;;;;
 11.5689 +1F334;PALM TREE;So;0;ON;;;;;N;;;;;
 11.5690 +1F335;CACTUS;So;0;ON;;;;;N;;;;;
 11.5691 +1F337;TULIP;So;0;ON;;;;;N;;;;;
 11.5692 +1F338;CHERRY BLOSSOM;So;0;ON;;;;;N;;;;;
 11.5693 +1F339;ROSE;So;0;ON;;;;;N;;;;;
 11.5694 +1F33A;HIBISCUS;So;0;ON;;;;;N;;;;;
 11.5695 +1F33B;SUNFLOWER;So;0;ON;;;;;N;;;;;
 11.5696 +1F33C;BLOSSOM;So;0;ON;;;;;N;;;;;
 11.5697 +1F33D;EAR OF MAIZE;So;0;ON;;;;;N;;;;;
 11.5698 +1F33E;EAR OF RICE;So;0;ON;;;;;N;;;;;
 11.5699 +1F33F;HERB;So;0;ON;;;;;N;;;;;
 11.5700 +1F340;FOUR LEAF CLOVER;So;0;ON;;;;;N;;;;;
 11.5701 +1F341;MAPLE LEAF;So;0;ON;;;;;N;;;;;
 11.5702 +1F342;FALLEN LEAF;So;0;ON;;;;;N;;;;;
 11.5703 +1F343;LEAF FLUTTERING IN WIND;So;0;ON;;;;;N;;;;;
 11.5704 +1F344;MUSHROOM;So;0;ON;;;;;N;;;;;
 11.5705 +1F345;TOMATO;So;0;ON;;;;;N;;;;;
 11.5706 +1F346;AUBERGINE;So;0;ON;;;;;N;;;;;
 11.5707 +1F347;GRAPES;So;0;ON;;;;;N;;;;;
 11.5708 +1F348;MELON;So;0;ON;;;;;N;;;;;
 11.5709 +1F349;WATERMELON;So;0;ON;;;;;N;;;;;
 11.5710 +1F34A;TANGERINE;So;0;ON;;;;;N;;;;;
 11.5711 +1F34B;LEMON;So;0;ON;;;;;N;;;;;
 11.5712 +1F34C;BANANA;So;0;ON;;;;;N;;;;;
 11.5713 +1F34D;PINEAPPLE;So;0;ON;;;;;N;;;;;
 11.5714 +1F34E;RED APPLE;So;0;ON;;;;;N;;;;;
 11.5715 +1F34F;GREEN APPLE;So;0;ON;;;;;N;;;;;
 11.5716 +1F350;PEAR;So;0;ON;;;;;N;;;;;
 11.5717 +1F351;PEACH;So;0;ON;;;;;N;;;;;
 11.5718 +1F352;CHERRIES;So;0;ON;;;;;N;;;;;
 11.5719 +1F353;STRAWBERRY;So;0;ON;;;;;N;;;;;
 11.5720 +1F354;HAMBURGER;So;0;ON;;;;;N;;;;;
 11.5721 +1F355;SLICE OF PIZZA;So;0;ON;;;;;N;;;;;
 11.5722 +1F356;MEAT ON BONE;So;0;ON;;;;;N;;;;;
 11.5723 +1F357;POULTRY LEG;So;0;ON;;;;;N;;;;;
 11.5724 +1F358;RICE CRACKER;So;0;ON;;;;;N;;;;;
 11.5725 +1F359;RICE BALL;So;0;ON;;;;;N;;;;;
 11.5726 +1F35A;COOKED RICE;So;0;ON;;;;;N;;;;;
 11.5727 +1F35B;CURRY AND RICE;So;0;ON;;;;;N;;;;;
 11.5728 +1F35C;STEAMING BOWL;So;0;ON;;;;;N;;;;;
 11.5729 +1F35D;SPAGHETTI;So;0;ON;;;;;N;;;;;
 11.5730 +1F35E;BREAD;So;0;ON;;;;;N;;;;;
 11.5731 +1F35F;FRENCH FRIES;So;0;ON;;;;;N;;;;;
 11.5732 +1F360;ROASTED SWEET POTATO;So;0;ON;;;;;N;;;;;
 11.5733 +1F361;DANGO;So;0;ON;;;;;N;;;;;
 11.5734 +1F362;ODEN;So;0;ON;;;;;N;;;;;
 11.5735 +1F363;SUSHI;So;0;ON;;;;;N;;;;;
 11.5736 +1F364;FRIED SHRIMP;So;0;ON;;;;;N;;;;;
 11.5737 +1F365;FISH CAKE WITH SWIRL DESIGN;So;0;ON;;;;;N;;;;;
 11.5738 +1F366;SOFT ICE CREAM;So;0;ON;;;;;N;;;;;
 11.5739 +1F367;SHAVED ICE;So;0;ON;;;;;N;;;;;
 11.5740 +1F368;ICE CREAM;So;0;ON;;;;;N;;;;;
 11.5741 +1F369;DOUGHNUT;So;0;ON;;;;;N;;;;;
 11.5742 +1F36A;COOKIE;So;0;ON;;;;;N;;;;;
 11.5743 +1F36B;CHOCOLATE BAR;So;0;ON;;;;;N;;;;;
 11.5744 +1F36C;CANDY;So;0;ON;;;;;N;;;;;
 11.5745 +1F36D;LOLLIPOP;So;0;ON;;;;;N;;;;;
 11.5746 +1F36E;CUSTARD;So;0;ON;;;;;N;;;;;
 11.5747 +1F36F;HONEY POT;So;0;ON;;;;;N;;;;;
 11.5748 +1F370;SHORTCAKE;So;0;ON;;;;;N;;;;;
 11.5749 +1F371;BENTO BOX;So;0;ON;;;;;N;;;;;
 11.5750 +1F372;POT OF FOOD;So;0;ON;;;;;N;;;;;
 11.5751 +1F373;COOKING;So;0;ON;;;;;N;;;;;
 11.5752 +1F374;FORK AND KNIFE;So;0;ON;;;;;N;;;;;
 11.5753 +1F375;TEACUP WITHOUT HANDLE;So;0;ON;;;;;N;;;;;
 11.5754 +1F376;SAKE BOTTLE AND CUP;So;0;ON;;;;;N;;;;;
 11.5755 +1F377;WINE GLASS;So;0;ON;;;;;N;;;;;
 11.5756 +1F378;COCKTAIL GLASS;So;0;ON;;;;;N;;;;;
 11.5757 +1F379;TROPICAL DRINK;So;0;ON;;;;;N;;;;;
 11.5758 +1F37A;BEER MUG;So;0;ON;;;;;N;;;;;
 11.5759 +1F37B;CLINKING BEER MUGS;So;0;ON;;;;;N;;;;;
 11.5760 +1F37C;BABY BOTTLE;So;0;ON;;;;;N;;;;;
 11.5761 +1F380;RIBBON;So;0;ON;;;;;N;;;;;
 11.5762 +1F381;WRAPPED PRESENT;So;0;ON;;;;;N;;;;;
 11.5763 +1F382;BIRTHDAY CAKE;So;0;ON;;;;;N;;;;;
 11.5764 +1F383;JACK-O-LANTERN;So;0;ON;;;;;N;;;;;
 11.5765 +1F384;CHRISTMAS TREE;So;0;ON;;;;;N;;;;;
 11.5766 +1F385;FATHER CHRISTMAS;So;0;ON;;;;;N;;;;;
 11.5767 +1F386;FIREWORKS;So;0;ON;;;;;N;;;;;
 11.5768 +1F387;FIREWORK SPARKLER;So;0;ON;;;;;N;;;;;
 11.5769 +1F388;BALLOON;So;0;ON;;;;;N;;;;;
 11.5770 +1F389;PARTY POPPER;So;0;ON;;;;;N;;;;;
 11.5771 +1F38A;CONFETTI BALL;So;0;ON;;;;;N;;;;;
 11.5772 +1F38B;TANABATA TREE;So;0;ON;;;;;N;;;;;
 11.5773 +1F38C;CROSSED FLAGS;So;0;ON;;;;;N;;;;;
 11.5774 +1F38D;PINE DECORATION;So;0;ON;;;;;N;;;;;
 11.5775 +1F38E;JAPANESE DOLLS;So;0;ON;;;;;N;;;;;
 11.5776 +1F38F;CARP STREAMER;So;0;ON;;;;;N;;;;;
 11.5777 +1F390;WIND CHIME;So;0;ON;;;;;N;;;;;
 11.5778 +1F391;MOON VIEWING CEREMONY;So;0;ON;;;;;N;;;;;
 11.5779 +1F392;SCHOOL SATCHEL;So;0;ON;;;;;N;;;;;
 11.5780 +1F393;GRADUATION CAP;So;0;ON;;;;;N;;;;;
 11.5781 +1F3A0;CAROUSEL HORSE;So;0;ON;;;;;N;;;;;
 11.5782 +1F3A1;FERRIS WHEEL;So;0;ON;;;;;N;;;;;
 11.5783 +1F3A2;ROLLER COASTER;So;0;ON;;;;;N;;;;;
 11.5784 +1F3A3;FISHING POLE AND FISH;So;0;ON;;;;;N;;;;;
 11.5785 +1F3A4;MICROPHONE;So;0;ON;;;;;N;;;;;
 11.5786 +1F3A5;MOVIE CAMERA;So;0;ON;;;;;N;;;;;
 11.5787 +1F3A6;CINEMA;So;0;ON;;;;;N;;;;;
 11.5788 +1F3A7;HEADPHONE;So;0;ON;;;;;N;;;;;
 11.5789 +1F3A8;ARTIST PALETTE;So;0;ON;;;;;N;;;;;
 11.5790 +1F3A9;TOP HAT;So;0;ON;;;;;N;;;;;
 11.5791 +1F3AA;CIRCUS TENT;So;0;ON;;;;;N;;;;;
 11.5792 +1F3AB;TICKET;So;0;ON;;;;;N;;;;;
 11.5793 +1F3AC;CLAPPER BOARD;So;0;ON;;;;;N;;;;;
 11.5794 +1F3AD;PERFORMING ARTS;So;0;ON;;;;;N;;;;;
 11.5795 +1F3AE;VIDEO GAME;So;0;ON;;;;;N;;;;;
 11.5796 +1F3AF;DIRECT HIT;So;0;ON;;;;;N;;;;;
 11.5797 +1F3B0;SLOT MACHINE;So;0;ON;;;;;N;;;;;
 11.5798 +1F3B1;BILLIARDS;So;0;ON;;;;;N;;;;;
 11.5799 +1F3B2;GAME DIE;So;0;ON;;;;;N;;;;;
 11.5800 +1F3B3;BOWLING;So;0;ON;;;;;N;;;;;
 11.5801 +1F3B4;FLOWER PLAYING CARDS;So;0;ON;;;;;N;;;;;
 11.5802 +1F3B5;MUSICAL NOTE;So;0;ON;;;;;N;;;;;
 11.5803 +1F3B6;MULTIPLE MUSICAL NOTES;So;0;ON;;;;;N;;;;;
 11.5804 +1F3B7;SAXOPHONE;So;0;ON;;;;;N;;;;;
 11.5805 +1F3B8;GUITAR;So;0;ON;;;;;N;;;;;
 11.5806 +1F3B9;MUSICAL KEYBOARD;So;0;ON;;;;;N;;;;;
 11.5807 +1F3BA;TRUMPET;So;0;ON;;;;;N;;;;;
 11.5808 +1F3BB;VIOLIN;So;0;ON;;;;;N;;;;;
 11.5809 +1F3BC;MUSICAL SCORE;So;0;ON;;;;;N;;;;;
 11.5810 +1F3BD;RUNNING SHIRT WITH SASH;So;0;ON;;;;;N;;;;;
 11.5811 +1F3BE;TENNIS RACQUET AND BALL;So;0;ON;;;;;N;;;;;
 11.5812 +1F3BF;SKI AND SKI BOOT;So;0;ON;;;;;N;;;;;
 11.5813 +1F3C0;BASKETBALL AND HOOP;So;0;ON;;;;;N;;;;;
 11.5814 +1F3C1;CHEQUERED FLAG;So;0;ON;;;;;N;;;;;
 11.5815 +1F3C2;SNOWBOARDER;So;0;ON;;;;;N;;;;;
 11.5816 +1F3C3;RUNNER;So;0;ON;;;;;N;;;;;
 11.5817 +1F3C4;SURFER;So;0;ON;;;;;N;;;;;
 11.5818 +1F3C6;TROPHY;So;0;ON;;;;;N;;;;;
 11.5819 +1F3C7;HORSE RACING;So;0;ON;;;;;N;;;;;
 11.5820 +1F3C8;AMERICAN FOOTBALL;So;0;ON;;;;;N;;;;;
 11.5821 +1F3C9;RUGBY FOOTBALL;So;0;ON;;;;;N;;;;;
 11.5822 +1F3CA;SWIMMER;So;0;ON;;;;;N;;;;;
 11.5823 +1F3E0;HOUSE BUILDING;So;0;ON;;;;;N;;;;;
 11.5824 +1F3E1;HOUSE WITH GARDEN;So;0;ON;;;;;N;;;;;
 11.5825 +1F3E2;OFFICE BUILDING;So;0;ON;;;;;N;;;;;
 11.5826 +1F3E3;JAPANESE POST OFFICE;So;0;ON;;;;;N;;;;;
 11.5827 +1F3E4;EUROPEAN POST OFFICE;So;0;ON;;;;;N;;;;;
 11.5828 +1F3E5;HOSPITAL;So;0;ON;;;;;N;;;;;
 11.5829 +1F3E6;BANK;So;0;ON;;;;;N;;;;;
 11.5830 +1F3E7;AUTOMATED TELLER MACHINE;So;0;ON;;;;;N;;;;;
 11.5831 +1F3E8;HOTEL;So;0;ON;;;;;N;;;;;
 11.5832 +1F3E9;LOVE HOTEL;So;0;ON;;;;;N;;;;;
 11.5833 +1F3EA;CONVENIENCE STORE;So;0;ON;;;;;N;;;;;
 11.5834 +1F3EB;SCHOOL;So;0;ON;;;;;N;;;;;
 11.5835 +1F3EC;DEPARTMENT STORE;So;0;ON;;;;;N;;;;;
 11.5836 +1F3ED;FACTORY;So;0;ON;;;;;N;;;;;
 11.5837 +1F3EE;IZAKAYA LANTERN;So;0;ON;;;;;N;;;;;
 11.5838 +1F3EF;JAPANESE CASTLE;So;0;ON;;;;;N;;;;;
 11.5839 +1F3F0;EUROPEAN CASTLE;So;0;ON;;;;;N;;;;;
 11.5840 +1F400;RAT;So;0;ON;;;;;N;;;;;
 11.5841 +1F401;MOUSE;So;0;ON;;;;;N;;;;;
 11.5842 +1F402;OX;So;0;ON;;;;;N;;;;;
 11.5843 +1F403;WATER BUFFALO;So;0;ON;;;;;N;;;;;
 11.5844 +1F404;COW;So;0;ON;;;;;N;;;;;
 11.5845 +1F405;TIGER;So;0;ON;;;;;N;;;;;
 11.5846 +1F406;LEOPARD;So;0;ON;;;;;N;;;;;
 11.5847 +1F407;RABBIT;So;0;ON;;;;;N;;;;;
 11.5848 +1F408;CAT;So;0;ON;;;;;N;;;;;
 11.5849 +1F409;DRAGON;So;0;ON;;;;;N;;;;;
 11.5850 +1F40A;CROCODILE;So;0;ON;;;;;N;;;;;
 11.5851 +1F40B;WHALE;So;0;ON;;;;;N;;;;;
 11.5852 +1F40C;SNAIL;So;0;ON;;;;;N;;;;;
 11.5853 +1F40D;SNAKE;So;0;ON;;;;;N;;;;;
 11.5854 +1F40E;HORSE;So;0;ON;;;;;N;;;;;
 11.5855 +1F40F;RAM;So;0;ON;;;;;N;;;;;
 11.5856 +1F410;GOAT;So;0;ON;;;;;N;;;;;
 11.5857 +1F411;SHEEP;So;0;ON;;;;;N;;;;;
 11.5858 +1F412;MONKEY;So;0;ON;;;;;N;;;;;
 11.5859 +1F413;ROOSTER;So;0;ON;;;;;N;;;;;
 11.5860 +1F414;CHICKEN;So;0;ON;;;;;N;;;;;
 11.5861 +1F415;DOG;So;0;ON;;;;;N;;;;;
 11.5862 +1F416;PIG;So;0;ON;;;;;N;;;;;
 11.5863 +1F417;BOAR;So;0;ON;;;;;N;;;;;
 11.5864 +1F418;ELEPHANT;So;0;ON;;;;;N;;;;;
 11.5865 +1F419;OCTOPUS;So;0;ON;;;;;N;;;;;
 11.5866 +1F41A;SPIRAL SHELL;So;0;ON;;;;;N;;;;;
 11.5867 +1F41B;BUG;So;0;ON;;;;;N;;;;;
 11.5868 +1F41C;ANT;So;0;ON;;;;;N;;;;;
 11.5869 +1F41D;HONEYBEE;So;0;ON;;;;;N;;;;;
 11.5870 +1F41E;LADY BEETLE;So;0;ON;;;;;N;;;;;
 11.5871 +1F41F;FISH;So;0;ON;;;;;N;;;;;
 11.5872 +1F420;TROPICAL FISH;So;0;ON;;;;;N;;;;;
 11.5873 +1F421;BLOWFISH;So;0;ON;;;;;N;;;;;
 11.5874 +1F422;TURTLE;So;0;ON;;;;;N;;;;;
 11.5875 +1F423;HATCHING CHICK;So;0;ON;;;;;N;;;;;
 11.5876 +1F424;BABY CHICK;So;0;ON;;;;;N;;;;;
 11.5877 +1F425;FRONT-FACING BABY CHICK;So;0;ON;;;;;N;;;;;
 11.5878 +1F426;BIRD;So;0;ON;;;;;N;;;;;
 11.5879 +1F427;PENGUIN;So;0;ON;;;;;N;;;;;
 11.5880 +1F428;KOALA;So;0;ON;;;;;N;;;;;
 11.5881 +1F429;POODLE;So;0;ON;;;;;N;;;;;
 11.5882 +1F42A;DROMEDARY CAMEL;So;0;ON;;;;;N;;;;;
 11.5883 +1F42B;BACTRIAN CAMEL;So;0;ON;;;;;N;;;;;
 11.5884 +1F42C;DOLPHIN;So;0;ON;;;;;N;;;;;
 11.5885 +1F42D;MOUSE FACE;So;0;ON;;;;;N;;;;;
 11.5886 +1F42E;COW FACE;So;0;ON;;;;;N;;;;;
 11.5887 +1F42F;TIGER FACE;So;0;ON;;;;;N;;;;;
 11.5888 +1F430;RABBIT FACE;So;0;ON;;;;;N;;;;;
 11.5889 +1F431;CAT FACE;So;0;ON;;;;;N;;;;;
 11.5890 +1F432;DRAGON FACE;So;0;ON;;;;;N;;;;;
 11.5891 +1F433;SPOUTING WHALE;So;0;ON;;;;;N;;;;;
 11.5892 +1F434;HORSE FACE;So;0;ON;;;;;N;;;;;
 11.5893 +1F435;MONKEY FACE;So;0;ON;;;;;N;;;;;
 11.5894 +1F436;DOG FACE;So;0;ON;;;;;N;;;;;
 11.5895 +1F437;PIG FACE;So;0;ON;;;;;N;;;;;
 11.5896 +1F438;FROG FACE;So;0;ON;;;;;N;;;;;
 11.5897 +1F439;HAMSTER FACE;So;0;ON;;;;;N;;;;;
 11.5898 +1F43A;WOLF FACE;So;0;ON;;;;;N;;;;;
 11.5899 +1F43B;BEAR FACE;So;0;ON;;;;;N;;;;;
 11.5900 +1F43C;PANDA FACE;So;0;ON;;;;;N;;;;;
 11.5901 +1F43D;PIG NOSE;So;0;ON;;;;;N;;;;;
 11.5902 +1F43E;PAW PRINTS;So;0;ON;;;;;N;;;;;
 11.5903 +1F440;EYES;So;0;ON;;;;;N;;;;;
 11.5904 +1F442;EAR;So;0;ON;;;;;N;;;;;
 11.5905 +1F443;NOSE;So;0;ON;;;;;N;;;;;
 11.5906 +1F444;MOUTH;So;0;ON;;;;;N;;;;;
 11.5907 +1F445;TONGUE;So;0;ON;;;;;N;;;;;
 11.5908 +1F446;WHITE UP POINTING BACKHAND INDEX;So;0;ON;;;;;N;;;;;
 11.5909 +1F447;WHITE DOWN POINTING BACKHAND INDEX;So;0;ON;;;;;N;;;;;
 11.5910 +1F448;WHITE LEFT POINTING BACKHAND INDEX;So;0;ON;;;;;N;;;;;
 11.5911 +1F449;WHITE RIGHT POINTING BACKHAND INDEX;So;0;ON;;;;;N;;;;;
 11.5912 +1F44A;FISTED HAND SIGN;So;0;ON;;;;;N;;;;;
 11.5913 +1F44B;WAVING HAND SIGN;So;0;ON;;;;;N;;;;;
 11.5914 +1F44C;OK HAND SIGN;So;0;ON;;;;;N;;;;;
 11.5915 +1F44D;THUMBS UP SIGN;So;0;ON;;;;;N;;;;;
 11.5916 +1F44E;THUMBS DOWN SIGN;So;0;ON;;;;;N;;;;;
 11.5917 +1F44F;CLAPPING HANDS SIGN;So;0;ON;;;;;N;;;;;
 11.5918 +1F450;OPEN HANDS SIGN;So;0;ON;;;;;N;;;;;
 11.5919 +1F451;CROWN;So;0;ON;;;;;N;;;;;
 11.5920 +1F452;WOMANS HAT;So;0;ON;;;;;N;;;;;
 11.5921 +1F453;EYEGLASSES;So;0;ON;;;;;N;;;;;
 11.5922 +1F454;NECKTIE;So;0;ON;;;;;N;;;;;
 11.5923 +1F455;T-SHIRT;So;0;ON;;;;;N;;;;;
 11.5924 +1F456;JEANS;So;0;ON;;;;;N;;;;;
 11.5925 +1F457;DRESS;So;0;ON;;;;;N;;;;;
 11.5926 +1F458;KIMONO;So;0;ON;;;;;N;;;;;
 11.5927 +1F459;BIKINI;So;0;ON;;;;;N;;;;;
 11.5928 +1F45A;WOMANS CLOTHES;So;0;ON;;;;;N;;;;;
 11.5929 +1F45B;PURSE;So;0;ON;;;;;N;;;;;
 11.5930 +1F45C;HANDBAG;So;0;ON;;;;;N;;;;;
 11.5931 +1F45D;POUCH;So;0;ON;;;;;N;;;;;
 11.5932 +1F45E;MANS SHOE;So;0;ON;;;;;N;;;;;
 11.5933 +1F45F;ATHLETIC SHOE;So;0;ON;;;;;N;;;;;
 11.5934 +1F460;HIGH-HEELED SHOE;So;0;ON;;;;;N;;;;;
 11.5935 +1F461;WOMANS SANDAL;So;0;ON;;;;;N;;;;;
 11.5936 +1F462;WOMANS BOOTS;So;0;ON;;;;;N;;;;;
 11.5937 +1F463;FOOTPRINTS;So;0;ON;;;;;N;;;;;
 11.5938 +1F464;BUST IN SILHOUETTE;So;0;ON;;;;;N;;;;;
 11.5939 +1F465;BUSTS IN SILHOUETTE;So;0;ON;;;;;N;;;;;
 11.5940 +1F466;BOY;So;0;ON;;;;;N;;;;;
 11.5941 +1F467;GIRL;So;0;ON;;;;;N;;;;;
 11.5942 +1F468;MAN;So;0;ON;;;;;N;;;;;
 11.5943 +1F469;WOMAN;So;0;ON;;;;;N;;;;;
 11.5944 +1F46A;FAMILY;So;0;ON;;;;;N;;;;;
 11.5945 +1F46B;MAN AND WOMAN HOLDING HANDS;So;0;ON;;;;;N;;;;;
 11.5946 +1F46C;TWO MEN HOLDING HANDS;So;0;ON;;;;;N;;;;;
 11.5947 +1F46D;TWO WOMEN HOLDING HANDS;So;0;ON;;;;;N;;;;;
 11.5948 +1F46E;POLICE OFFICER;So;0;ON;;;;;N;;;;;
 11.5949 +1F46F;WOMAN WITH BUNNY EARS;So;0;ON;;;;;N;;;;;
 11.5950 +1F470;BRIDE WITH VEIL;So;0;ON;;;;;N;;;;;
 11.5951 +1F471;PERSON WITH BLOND HAIR;So;0;ON;;;;;N;;;;;
 11.5952 +1F472;MAN WITH GUA PI MAO;So;0;ON;;;;;N;;;;;
 11.5953 +1F473;MAN WITH TURBAN;So;0;ON;;;;;N;;;;;
 11.5954 +1F474;OLDER MAN;So;0;ON;;;;;N;;;;;
 11.5955 +1F475;OLDER WOMAN;So;0;ON;;;;;N;;;;;
 11.5956 +1F476;BABY;So;0;ON;;;;;N;;;;;
 11.5957 +1F477;CONSTRUCTION WORKER;So;0;ON;;;;;N;;;;;
 11.5958 +1F478;PRINCESS;So;0;ON;;;;;N;;;;;
 11.5959 +1F479;JAPANESE OGRE;So;0;ON;;;;;N;;;;;
 11.5960 +1F47A;JAPANESE GOBLIN;So;0;ON;;;;;N;;;;;
 11.5961 +1F47B;GHOST;So;0;ON;;;;;N;;;;;
 11.5962 +1F47C;BABY ANGEL;So;0;ON;;;;;N;;;;;
 11.5963 +1F47D;EXTRATERRESTRIAL ALIEN;So;0;ON;;;;;N;;;;;
 11.5964 +1F47E;ALIEN MONSTER;So;0;ON;;;;;N;;;;;
 11.5965 +1F47F;IMP;So;0;ON;;;;;N;;;;;
 11.5966 +1F480;SKULL;So;0;ON;;;;;N;;;;;
 11.5967 +1F481;INFORMATION DESK PERSON;So;0;ON;;;;;N;;;;;
 11.5968 +1F482;GUARDSMAN;So;0;ON;;;;;N;;;;;
 11.5969 +1F483;DANCER;So;0;ON;;;;;N;;;;;
 11.5970 +1F484;LIPSTICK;So;0;ON;;;;;N;;;;;
 11.5971 +1F485;NAIL POLISH;So;0;ON;;;;;N;;;;;
 11.5972 +1F486;FACE MASSAGE;So;0;ON;;;;;N;;;;;
 11.5973 +1F487;HAIRCUT;So;0;ON;;;;;N;;;;;
 11.5974 +1F488;BARBER POLE;So;0;ON;;;;;N;;;;;
 11.5975 +1F489;SYRINGE;So;0;ON;;;;;N;;;;;
 11.5976 +1F48A;PILL;So;0;ON;;;;;N;;;;;
 11.5977 +1F48B;KISS MARK;So;0;ON;;;;;N;;;;;
 11.5978 +1F48C;LOVE LETTER;So;0;L;;;;;N;;;;;
 11.5979 +1F48D;RING;So;0;ON;;;;;N;;;;;
 11.5980 +1F48E;GEM STONE;So;0;ON;;;;;N;;;;;
 11.5981 +1F48F;KISS;So;0;ON;;;;;N;;;;;
 11.5982 +1F490;BOUQUET;So;0;ON;;;;;N;;;;;
 11.5983 +1F491;COUPLE WITH HEART;So;0;ON;;;;;N;;;;;
 11.5984 +1F492;WEDDING;So;0;ON;;;;;N;;;;;
 11.5985 +1F493;BEATING HEART;So;0;ON;;;;;N;;;;;
 11.5986 +1F494;BROKEN HEART;So;0;ON;;;;;N;;;;;
 11.5987 +1F495;TWO HEARTS;So;0;ON;;;;;N;;;;;
 11.5988 +1F496;SPARKLING HEART;So;0;ON;;;;;N;;;;;
 11.5989 +1F497;GROWING HEART;So;0;ON;;;;;N;;;;;
 11.5990 +1F498;HEART WITH ARROW;So;0;ON;;;;;N;;;;;
 11.5991 +1F499;BLUE HEART;So;0;ON;;;;;N;;;;;
 11.5992 +1F49A;GREEN HEART;So;0;ON;;;;;N;;;;;
 11.5993 +1F49B;YELLOW HEART;So;0;ON;;;;;N;;;;;
 11.5994 +1F49C;PURPLE HEART;So;0;ON;;;;;N;;;;;
 11.5995 +1F49D;HEART WITH RIBBON;So;0;ON;;;;;N;;;;;
 11.5996 +1F49E;REVOLVING HEARTS;So;0;ON;;;;;N;;;;;
 11.5997 +1F49F;HEART DECORATION;So;0;ON;;;;;N;;;;;
 11.5998 +1F4A0;DIAMOND SHAPE WITH A DOT INSIDE;So;0;ON;;;;;N;;;;;
 11.5999 +1F4A1;ELECTRIC LIGHT BULB;So;0;ON;;;;;N;;;;;
 11.6000 +1F4A2;ANGER SYMBOL;So;0;ON;;;;;N;;;;;
 11.6001 +1F4A3;BOMB;So;0;ON;;;;;N;;;;;
 11.6002 +1F4A4;SLEEPING SYMBOL;So;0;ON;;;;;N;;;;;
 11.6003 +1F4A5;COLLISION SYMBOL;So;0;ON;;;;;N;;;;;
 11.6004 +1F4A6;SPLASHING SWEAT SYMBOL;So;0;ON;;;;;N;;;;;
 11.6005 +1F4A7;DROPLET;So;0;ON;;;;;N;;;;;
 11.6006 +1F4A8;DASH SYMBOL;So;0;ON;;;;;N;;;;;
 11.6007 +1F4A9;PILE OF POO;So;0;ON;;;;;N;;;;;
 11.6008 +1F4AA;FLEXED BICEPS;So;0;ON;;;;;N;;;;;
 11.6009 +1F4AB;DIZZY SYMBOL;So;0;ON;;;;;N;;;;;
 11.6010 +1F4AC;SPEECH BALLOON;So;0;ON;;;;;N;;;;;
 11.6011 +1F4AD;THOUGHT BALLOON;So;0;ON;;;;;N;;;;;
 11.6012 +1F4AE;WHITE FLOWER;So;0;ON;;;;;N;;;;;
 11.6013 +1F4AF;HUNDRED POINTS SYMBOL;So;0;ON;;;;;N;;;;;
 11.6014 +1F4B0;MONEY BAG;So;0;ON;;;;;N;;;;;
 11.6015 +1F4B1;CURRENCY EXCHANGE;So;0;ON;;;;;N;;;;;
 11.6016 +1F4B2;HEAVY DOLLAR SIGN;So;0;ON;;;;;N;;;;;
 11.6017 +1F4B3;CREDIT CARD;So;0;ON;;;;;N;;;;;
 11.6018 +1F4B4;BANKNOTE WITH YEN SIGN;So;0;ON;;;;;N;;;;;
 11.6019 +1F4B5;BANKNOTE WITH DOLLAR SIGN;So;0;ON;;;;;N;;;;;
 11.6020 +1F4B6;BANKNOTE WITH EURO SIGN;So;0;ON;;;;;N;;;;;
 11.6021 +1F4B7;BANKNOTE WITH POUND SIGN;So;0;ON;;;;;N;;;;;
 11.6022 +1F4B8;MONEY WITH WINGS;So;0;ON;;;;;N;;;;;
 11.6023 +1F4B9;CHART WITH UPWARDS TREND AND YEN SIGN;So;0;ON;;;;;N;;;;;
 11.6024 +1F4BA;SEAT;So;0;ON;;;;;N;;;;;
 11.6025 +1F4BB;PERSONAL COMPUTER;So;0;ON;;;;;N;;;;;
 11.6026 +1F4BC;BRIEFCASE;So;0;ON;;;;;N;;;;;
 11.6027 +1F4BD;MINIDISC;So;0;ON;;;;;N;;;;;
 11.6028 +1F4BE;FLOPPY DISK;So;0;ON;;;;;N;;;;;
 11.6029 +1F4BF;OPTICAL DISC;So;0;ON;;;;;N;;;;;
 11.6030 +1F4C0;DVD;So;0;ON;;;;;N;;;;;
 11.6031 +1F4C1;FILE FOLDER;So;0;ON;;;;;N;;;;;
 11.6032 +1F4C2;OPEN FILE FOLDER;So;0;ON;;;;;N;;;;;
 11.6033 +1F4C3;PAGE WITH CURL;So;0;ON;;;;;N;;;;;
 11.6034 +1F4C4;PAGE FACING UP;So;0;ON;;;;;N;;;;;
 11.6035 +1F4C5;CALENDAR;So;0;ON;;;;;N;;;;;
 11.6036 +1F4C6;TEAR-OFF CALENDAR;So;0;ON;;;;;N;;;;;
 11.6037 +1F4C7;CARD INDEX;So;0;ON;;;;;N;;;;;
 11.6038 +1F4C8;CHART WITH UPWARDS TREND;So;0;ON;;;;;N;;;;;
 11.6039 +1F4C9;CHART WITH DOWNWARDS TREND;So;0;ON;;;;;N;;;;;
 11.6040 +1F4CA;BAR CHART;So;0;ON;;;;;N;;;;;
 11.6041 +1F4CB;CLIPBOARD;So;0;ON;;;;;N;;;;;
 11.6042 +1F4CC;PUSHPIN;So;0;ON;;;;;N;;;;;
 11.6043 +1F4CD;ROUND PUSHPIN;So;0;ON;;;;;N;;;;;
 11.6044 +1F4CE;PAPERCLIP;So;0;ON;;;;;N;;;;;
 11.6045 +1F4CF;STRAIGHT RULER;So;0;ON;;;;;N;;;;;
 11.6046 +1F4D0;TRIANGULAR RULER;So;0;ON;;;;;N;;;;;
 11.6047 +1F4D1;BOOKMARK TABS;So;0;ON;;;;;N;;;;;
 11.6048 +1F4D2;LEDGER;So;0;ON;;;;;N;;;;;
 11.6049 +1F4D3;NOTEBOOK;So;0;ON;;;;;N;;;;;
 11.6050 +1F4D4;NOTEBOOK WITH DECORATIVE COVER;So;0;ON;;;;;N;;;;;
 11.6051 +1F4D5;CLOSED BOOK;So;0;ON;;;;;N;;;;;
 11.6052 +1F4D6;OPEN BOOK;So;0;ON;;;;;N;;;;;
 11.6053 +1F4D7;GREEN BOOK;So;0;ON;;;;;N;;;;;
 11.6054 +1F4D8;BLUE BOOK;So;0;ON;;;;;N;;;;;
 11.6055 +1F4D9;ORANGE BOOK;So;0;ON;;;;;N;;;;;
 11.6056 +1F4DA;BOOKS;So;0;ON;;;;;N;;;;;
 11.6057 +1F4DB;NAME BADGE;So;0;ON;;;;;N;;;;;
 11.6058 +1F4DC;SCROLL;So;0;ON;;;;;N;;;;;
 11.6059 +1F4DD;MEMO;So;0;ON;;;;;N;;;;;
 11.6060 +1F4DE;TELEPHONE RECEIVER;So;0;ON;;;;;N;;;;;
 11.6061 +1F4DF;PAGER;So;0;ON;;;;;N;;;;;
 11.6062 +1F4E0;FAX MACHINE;So;0;ON;;;;;N;;;;;
 11.6063 +1F4E1;SATELLITE ANTENNA;So;0;ON;;;;;N;;;;;
 11.6064 +1F4E2;PUBLIC ADDRESS LOUDSPEAKER;So;0;ON;;;;;N;;;;;
 11.6065 +1F4E3;CHEERING MEGAPHONE;So;0;ON;;;;;N;;;;;
 11.6066 +1F4E4;OUTBOX TRAY;So;0;ON;;;;;N;;;;;
 11.6067 +1F4E5;INBOX TRAY;So;0;ON;;;;;N;;;;;
 11.6068 +1F4E6;PACKAGE;So;0;ON;;;;;N;;;;;
 11.6069 +1F4E7;E-MAIL SYMBOL;So;0;ON;;;;;N;;;;;
 11.6070 +1F4E8;INCOMING ENVELOPE;So;0;ON;;;;;N;;;;;
 11.6071 +1F4E9;ENVELOPE WITH DOWNWARDS ARROW ABOVE;So;0;ON;;;;;N;;;;;
 11.6072 +1F4EA;CLOSED MAILBOX WITH LOWERED FLAG;So;0;ON;;;;;N;;;;;
 11.6073 +1F4EB;CLOSED MAILBOX WITH RAISED FLAG;So;0;ON;;;;;N;;;;;
 11.6074 +1F4EC;OPEN MAILBOX WITH RAISED FLAG;So;0;ON;;;;;N;;;;;
 11.6075 +1F4ED;OPEN MAILBOX WITH LOWERED FLAG;So;0;ON;;;;;N;;;;;
 11.6076 +1F4EE;POSTBOX;So;0;ON;;;;;N;;;;;
 11.6077 +1F4EF;POSTAL HORN;So;0;ON;;;;;N;;;;;
 11.6078 +1F4F0;NEWSPAPER;So;0;ON;;;;;N;;;;;
 11.6079 +1F4F1;MOBILE PHONE;So;0;ON;;;;;N;;;;;
 11.6080 +1F4F2;MOBILE PHONE WITH RIGHTWARDS ARROW AT LEFT;So;0;ON;;;;;N;;;;;
 11.6081 +1F4F3;VIBRATION MODE;So;0;ON;;;;;N;;;;;
 11.6082 +1F4F4;MOBILE PHONE OFF;So;0;ON;;;;;N;;;;;
 11.6083 +1F4F5;NO MOBILE PHONES;So;0;ON;;;;;N;;;;;
 11.6084 +1F4F6;ANTENNA WITH BARS;So;0;ON;;;;;N;;;;;
 11.6085 +1F4F7;CAMERA;So;0;ON;;;;;N;;;;;
 11.6086 +1F4F9;VIDEO CAMERA;So;0;ON;;;;;N;;;;;
 11.6087 +1F4FA;TELEVISION;So;0;ON;;;;;N;;;;;
 11.6088 +1F4FB;RADIO;So;0;ON;;;;;N;;;;;
 11.6089 +1F4FC;VIDEOCASSETTE;So;0;ON;;;;;N;;;;;
 11.6090 +1F500;TWISTED RIGHTWARDS ARROWS;So;0;ON;;;;;N;;;;;
 11.6091 +1F501;CLOCKWISE RIGHTWARDS AND LEFTWARDS OPEN CIRCLE ARROWS;So;0;ON;;;;;N;;;;;
 11.6092 +1F502;CLOCKWISE RIGHTWARDS AND LEFTWARDS OPEN CIRCLE ARROWS WITH CIRCLED ONE OVERLAY;So;0;ON;;;;;N;;;;;
 11.6093 +1F503;CLOCKWISE DOWNWARDS AND UPWARDS OPEN CIRCLE ARROWS;So;0;ON;;;;;N;;;;;
 11.6094 +1F504;ANTICLOCKWISE DOWNWARDS AND UPWARDS OPEN CIRCLE ARROWS;So;0;ON;;;;;N;;;;;
 11.6095 +1F505;LOW BRIGHTNESS SYMBOL;So;0;ON;;;;;N;;;;;
 11.6096 +1F506;HIGH BRIGHTNESS SYMBOL;So;0;ON;;;;;N;;;;;
 11.6097 +1F507;SPEAKER WITH CANCELLATION STROKE;So;0;ON;;;;;N;;;;;
 11.6098 +1F508;SPEAKER;So;0;ON;;;;;N;;;;;
 11.6099 +1F509;SPEAKER WITH ONE SOUND WAVE;So;0;ON;;;;;N;;;;;
 11.6100 +1F50A;SPEAKER WITH THREE SOUND WAVES;So;0;ON;;;;;N;;;;;
 11.6101 +1F50B;BATTERY;So;0;ON;;;;;N;;;;;
 11.6102 +1F50C;ELECTRIC PLUG;So;0;ON;;;;;N;;;;;
 11.6103 +1F50D;LEFT-POINTING MAGNIFYING GLASS;So;0;ON;;;;;N;;;;;
 11.6104 +1F50E;RIGHT-POINTING MAGNIFYING GLASS;So;0;ON;;;;;N;;;;;
 11.6105 +1F50F;LOCK WITH INK PEN;So;0;ON;;;;;N;;;;;
 11.6106 +1F510;CLOSED LOCK WITH KEY;So;0;ON;;;;;N;;;;;
 11.6107 +1F511;KEY;So;0;ON;;;;;N;;;;;
 11.6108 +1F512;LOCK;So;0;ON;;;;;N;;;;;
 11.6109 +1F513;OPEN LOCK;So;0;ON;;;;;N;;;;;
 11.6110 +1F514;BELL;So;0;ON;;;;;N;;;;;
 11.6111 +1F515;BELL WITH CANCELLATION STROKE;So;0;ON;;;;;N;;;;;
 11.6112 +1F516;BOOKMARK;So;0;ON;;;;;N;;;;;
 11.6113 +1F517;LINK SYMBOL;So;0;ON;;;;;N;;;;;
 11.6114 +1F518;RADIO BUTTON;So;0;ON;;;;;N;;;;;
 11.6115 +1F519;BACK WITH LEFTWARDS ARROW ABOVE;So;0;ON;;;;;N;;;;;
 11.6116 +1F51A;END WITH LEFTWARDS ARROW ABOVE;So;0;ON;;;;;N;;;;;
 11.6117 +1F51B;ON WITH EXCLAMATION MARK WITH LEFT RIGHT ARROW ABOVE;So;0;ON;;;;;N;;;;;
 11.6118 +1F51C;SOON WITH RIGHTWARDS ARROW ABOVE;So;0;ON;;;;;N;;;;;
 11.6119 +1F51D;TOP WITH UPWARDS ARROW ABOVE;So;0;ON;;;;;N;;;;;
 11.6120 +1F51E;NO ONE UNDER EIGHTEEN SYMBOL;So;0;ON;;;;;N;;;;;
 11.6121 +1F51F;KEYCAP TEN;So;0;ON;;;;;N;;;;;
 11.6122 +1F520;INPUT SYMBOL FOR LATIN CAPITAL LETTERS;So;0;ON;;;;;N;;;;;
 11.6123 +1F521;INPUT SYMBOL FOR LATIN SMALL LETTERS;So;0;ON;;;;;N;;;;;
 11.6124 +1F522;INPUT SYMBOL FOR NUMBERS;So;0;ON;;;;;N;;;;;
 11.6125 +1F523;INPUT SYMBOL FOR SYMBOLS;So;0;ON;;;;;N;;;;;
 11.6126 +1F524;INPUT SYMBOL FOR LATIN LETTERS;So;0;L;;;;;N;;;;;
 11.6127 +1F525;FIRE;So;0;ON;;;;;N;;;;;
 11.6128 +1F526;ELECTRIC TORCH;So;0;ON;;;;;N;;;;;
 11.6129 +1F527;WRENCH;So;0;ON;;;;;N;;;;;
 11.6130 +1F528;HAMMER;So;0;ON;;;;;N;;;;;
 11.6131 +1F529;NUT AND BOLT;So;0;ON;;;;;N;;;;;
 11.6132 +1F52A;HOCHO;So;0;ON;;;;;N;;;;;
 11.6133 +1F52B;PISTOL;So;0;ON;;;;;N;;;;;
 11.6134 +1F52C;MICROSCOPE;So;0;ON;;;;;N;;;;;
 11.6135 +1F52D;TELESCOPE;So;0;ON;;;;;N;;;;;
 11.6136 +1F52E;CRYSTAL BALL;So;0;ON;;;;;N;;;;;
 11.6137 +1F52F;SIX POINTED STAR WITH MIDDLE DOT;So;0;ON;;;;;N;;;;;
 11.6138 +1F530;JAPANESE SYMBOL FOR BEGINNER;So;0;ON;;;;;N;;;;;
 11.6139 +1F531;TRIDENT EMBLEM;So;0;ON;;;;;N;;;;;
 11.6140 +1F532;BLACK SQUARE BUTTON;So;0;ON;;;;;N;;;;;
 11.6141 +1F533;WHITE SQUARE BUTTON;So;0;ON;;;;;N;;;;;
 11.6142 +1F534;LARGE RED CIRCLE;So;0;ON;;;;;N;;;;;
 11.6143 +1F535;LARGE BLUE CIRCLE;So;0;ON;;;;;N;;;;;
 11.6144 +1F536;LARGE ORANGE DIAMOND;So;0;ON;;;;;N;;;;;
 11.6145 +1F537;LARGE BLUE DIAMOND;So;0;ON;;;;;N;;;;;
 11.6146 +1F538;SMALL ORANGE DIAMOND;So;0;ON;;;;;N;;;;;
 11.6147 +1F539;SMALL BLUE DIAMOND;So;0;ON;;;;;N;;;;;
 11.6148 +1F53A;UP-POINTING RED TRIANGLE;So;0;ON;;;;;N;;;;;
 11.6149 +1F53B;DOWN-POINTING RED TRIANGLE;So;0;ON;;;;;N;;;;;
 11.6150 +1F53C;UP-POINTING SMALL RED TRIANGLE;So;0;ON;;;;;N;;;;;
 11.6151 +1F53D;DOWN-POINTING SMALL RED TRIANGLE;So;0;ON;;;;;N;;;;;
 11.6152 +1F550;CLOCK FACE ONE OCLOCK;So;0;ON;;;;;N;;;;;
 11.6153 +1F551;CLOCK FACE TWO OCLOCK;So;0;ON;;;;;N;;;;;
 11.6154 +1F552;CLOCK FACE THREE OCLOCK;So;0;ON;;;;;N;;;;;
 11.6155 +1F553;CLOCK FACE FOUR OCLOCK;So;0;ON;;;;;N;;;;;
 11.6156 +1F554;CLOCK FACE FIVE OCLOCK;So;0;ON;;;;;N;;;;;
 11.6157 +1F555;CLOCK FACE SIX OCLOCK;So;0;ON;;;;;N;;;;;
 11.6158 +1F556;CLOCK FACE SEVEN OCLOCK;So;0;ON;;;;;N;;;;;
 11.6159 +1F557;CLOCK FACE EIGHT OCLOCK;So;0;ON;;;;;N;;;;;
 11.6160 +1F558;CLOCK FACE NINE OCLOCK;So;0;ON;;;;;N;;;;;
 11.6161 +1F559;CLOCK FACE TEN OCLOCK;So;0;ON;;;;;N;;;;;
 11.6162 +1F55A;CLOCK FACE ELEVEN OCLOCK;So;0;ON;;;;;N;;;;;
 11.6163 +1F55B;CLOCK FACE TWELVE OCLOCK;So;0;ON;;;;;N;;;;;
 11.6164 +1F55C;CLOCK FACE ONE-THIRTY;So;0;ON;;;;;N;;;;;
 11.6165 +1F55D;CLOCK FACE TWO-THIRTY;So;0;ON;;;;;N;;;;;
 11.6166 +1F55E;CLOCK FACE THREE-THIRTY;So;0;ON;;;;;N;;;;;
 11.6167 +1F55F;CLOCK FACE FOUR-THIRTY;So;0;ON;;;;;N;;;;;
 11.6168 +1F560;CLOCK FACE FIVE-THIRTY;So;0;ON;;;;;N;;;;;
 11.6169 +1F561;CLOCK FACE SIX-THIRTY;So;0;ON;;;;;N;;;;;
 11.6170 +1F562;CLOCK FACE SEVEN-THIRTY;So;0;ON;;;;;N;;;;;
 11.6171 +1F563;CLOCK FACE EIGHT-THIRTY;So;0;ON;;;;;N;;;;;
 11.6172 +1F564;CLOCK FACE NINE-THIRTY;So;0;ON;;;;;N;;;;;
 11.6173 +1F565;CLOCK FACE TEN-THIRTY;So;0;ON;;;;;N;;;;;
 11.6174 +1F566;CLOCK FACE ELEVEN-THIRTY;So;0;ON;;;;;N;;;;;
 11.6175 +1F567;CLOCK FACE TWELVE-THIRTY;So;0;ON;;;;;N;;;;;
 11.6176 +1F5FB;MOUNT FUJI;So;0;ON;;;;;N;;;;;
 11.6177 +1F5FC;TOKYO TOWER;So;0;ON;;;;;N;;;;;
 11.6178 +1F5FD;STATUE OF LIBERTY;So;0;ON;;;;;N;;;;;
 11.6179 +1F5FE;SILHOUETTE OF JAPAN;So;0;ON;;;;;N;;;;;
 11.6180 +1F5FF;MOYAI;So;0;ON;;;;;N;;;;;
 11.6181 +1F601;GRINNING FACE WITH SMILING EYES;So;0;ON;;;;;N;;;;;
 11.6182 +1F602;FACE WITH TEARS OF JOY;So;0;ON;;;;;N;;;;;
 11.6183 +1F603;SMILING FACE WITH OPEN MOUTH;So;0;ON;;;;;N;;;;;
 11.6184 +1F604;SMILING FACE WITH OPEN MOUTH AND SMILING EYES;So;0;ON;;;;;N;;;;;
 11.6185 +1F605;SMILING FACE WITH OPEN MOUTH AND COLD SWEAT;So;0;ON;;;;;N;;;;;
 11.6186 +1F606;SMILING FACE WITH OPEN MOUTH AND TIGHTLY-CLOSED EYES;So;0;ON;;;;;N;;;;;
 11.6187 +1F607;SMILING FACE WITH HALO;So;0;ON;;;;;N;;;;;
 11.6188 +1F608;SMILING FACE WITH HORNS;So;0;ON;;;;;N;;;;;
 11.6189 +1F609;WINKING FACE;So;0;ON;;;;;N;;;;;
 11.6190 +1F60A;SMILING FACE WITH SMILING EYES;So;0;ON;;;;;N;;;;;
 11.6191 +1F60B;FACE SAVOURING DELICIOUS FOOD;So;0;ON;;;;;N;;;;;
 11.6192 +1F60C;RELIEVED FACE;So;0;ON;;;;;N;;;;;
 11.6193 +1F60D;SMILING FACE WITH HEART-SHAPED EYES;So;0;ON;;;;;N;;;;;
 11.6194 +1F60E;SMILING FACE WITH SUNGLASSES;So;0;ON;;;;;N;;;;;
 11.6195 +1F60F;SMIRKING FACE;So;0;ON;;;;;N;;;;;
 11.6196 +1F610;NEUTRAL FACE;So;0;ON;;;;;N;;;;;
 11.6197 +1F612;UNAMUSED FACE;So;0;ON;;;;;N;;;;;
 11.6198 +1F613;FACE WITH COLD SWEAT;So;0;ON;;;;;N;;;;;
 11.6199 +1F614;PENSIVE FACE;So;0;ON;;;;;N;;;;;
 11.6200 +1F616;CONFOUNDED FACE;So;0;ON;;;;;N;;;;;
 11.6201 +1F618;FACE THROWING A KISS;So;0;ON;;;;;N;;;;;
 11.6202 +1F61A;KISSING FACE WITH CLOSED EYES;So;0;ON;;;;;N;;;;;
 11.6203 +1F61C;FACE WITH STUCK-OUT TONGUE AND WINKING EYE;So;0;ON;;;;;N;;;;;
 11.6204 +1F61D;FACE WITH STUCK-OUT TONGUE AND TIGHTLY-CLOSED EYES;So;0;ON;;;;;N;;;;;
 11.6205 +1F61E;DISAPPOINTED FACE;So;0;ON;;;;;N;;;;;
 11.6206 +1F620;ANGRY FACE;So;0;ON;;;;;N;;;;;
 11.6207 +1F621;POUTING FACE;So;0;ON;;;;;N;;;;;
 11.6208 +1F622;CRYING FACE;So;0;ON;;;;;N;;;;;
 11.6209 +1F623;PERSEVERING FACE;So;0;ON;;;;;N;;;;;
 11.6210 +1F624;FACE WITH LOOK OF TRIUMPH;So;0;ON;;;;;N;;;;;
 11.6211 +1F625;DISAPPOINTED BUT RELIEVED FACE;So;0;ON;;;;;N;;;;;
 11.6212 +1F628;FEARFUL FACE;So;0;ON;;;;;N;;;;;
 11.6213 +1F629;WEARY FACE;So;0;ON;;;;;N;;;;;
 11.6214 +1F62A;SLEEPY FACE;So;0;ON;;;;;N;;;;;
 11.6215 +1F62B;TIRED FACE;So;0;ON;;;;;N;;;;;
 11.6216 +1F62D;LOUDLY CRYING FACE;So;0;ON;;;;;N;;;;;
 11.6217 +1F630;FACE WITH OPEN MOUTH AND COLD SWEAT;So;0;ON;;;;;N;;;;;
 11.6218 +1F631;FACE SCREAMING IN FEAR;So;0;ON;;;;;N;;;;;
 11.6219 +1F632;ASTONISHED FACE;So;0;ON;;;;;N;;;;;
 11.6220 +1F633;FLUSHED FACE;So;0;ON;;;;;N;;;;;
 11.6221 +1F635;DIZZY FACE;So;0;ON;;;;;N;;;;;
 11.6222 +1F636;FACE WITHOUT MOUTH;So;0;ON;;;;;N;;;;;
 11.6223 +1F637;FACE WITH MEDICAL MASK;So;0;ON;;;;;N;;;;;
 11.6224 +1F638;GRINNING CAT FACE WITH SMILING EYES;So;0;ON;;;;;N;;;;;
 11.6225 +1F639;CAT FACE WITH TEARS OF JOY;So;0;ON;;;;;N;;;;;
 11.6226 +1F63A;SMILING CAT FACE WITH OPEN MOUTH;So;0;ON;;;;;N;;;;;
 11.6227 +1F63B;SMILING CAT FACE WITH HEART-SHAPED EYES;So;0;ON;;;;;N;;;;;
 11.6228 +1F63C;CAT FACE WITH WRY SMILE;So;0;ON;;;;;N;;;;;
 11.6229 +1F63D;KISSING CAT FACE WITH CLOSED EYES;So;0;ON;;;;;N;;;;;
 11.6230 +1F63E;POUTING CAT FACE;So;0;ON;;;;;N;;;;;
 11.6231 +1F63F;CRYING CAT FACE;So;0;ON;;;;;N;;;;;
 11.6232 +1F640;WEARY CAT FACE;So;0;ON;;;;;N;;;;;
 11.6233 +1F645;FACE WITH NO GOOD GESTURE;So;0;ON;;;;;N;;;;;
 11.6234 +1F646;FACE WITH OK GESTURE;So;0;ON;;;;;N;;;;;
 11.6235 +1F647;PERSON BOWING DEEPLY;So;0;ON;;;;;N;;;;;
 11.6236 +1F648;SEE-NO-EVIL MONKEY;So;0;ON;;;;;N;;;;;
 11.6237 +1F649;HEAR-NO-EVIL MONKEY;So;0;ON;;;;;N;;;;;
 11.6238 +1F64A;SPEAK-NO-EVIL MONKEY;So;0;ON;;;;;N;;;;;
 11.6239 +1F64B;HAPPY PERSON RAISING ONE HAND;So;0;ON;;;;;N;;;;;
 11.6240 +1F64C;PERSON RAISING BOTH HANDS IN CELEBRATION;So;0;ON;;;;;N;;;;;
 11.6241 +1F64D;PERSON FROWNING;So;0;ON;;;;;N;;;;;
 11.6242 +1F64E;PERSON WITH POUTING FACE;So;0;ON;;;;;N;;;;;
 11.6243 +1F64F;PERSON WITH FOLDED HANDS;So;0;ON;;;;;N;;;;;
 11.6244 +1F680;ROCKET;So;0;ON;;;;;N;;;;;
 11.6245 +1F681;HELICOPTER;So;0;ON;;;;;N;;;;;
 11.6246 +1F682;STEAM LOCOMOTIVE;So;0;ON;;;;;N;;;;;
 11.6247 +1F683;RAILWAY CAR;So;0;ON;;;;;N;;;;;
 11.6248 +1F684;HIGH-SPEED TRAIN;So;0;ON;;;;;N;;;;;
 11.6249 +1F685;HIGH-SPEED TRAIN WITH BULLET NOSE;So;0;ON;;;;;N;;;;;
 11.6250 +1F686;TRAIN;So;0;ON;;;;;N;;;;;
 11.6251 +1F687;METRO;So;0;ON;;;;;N;;;;;
 11.6252 +1F688;LIGHT RAIL;So;0;ON;;;;;N;;;;;
 11.6253 +1F689;STATION;So;0;ON;;;;;N;;;;;
 11.6254 +1F68A;TRAM;So;0;ON;;;;;N;;;;;
 11.6255 +1F68B;TRAM CAR;So;0;ON;;;;;N;;;;;
 11.6256 +1F68C;BUS;So;0;ON;;;;;N;;;;;
 11.6257 +1F68D;ONCOMING BUS;So;0;ON;;;;;N;;;;;
 11.6258 +1F68E;TROLLEYBUS;So;0;ON;;;;;N;;;;;
 11.6259 +1F68F;BUS STOP;So;0;ON;;;;;N;;;;;
 11.6260 +1F690;MINIBUS;So;0;ON;;;;;N;;;;;
 11.6261 +1F691;AMBULANCE;So;0;ON;;;;;N;;;;;
 11.6262 +1F692;FIRE ENGINE;So;0;ON;;;;;N;;;;;
 11.6263 +1F693;POLICE CAR;So;0;ON;;;;;N;;;;;
 11.6264 +1F694;ONCOMING POLICE CAR;So;0;ON;;;;;N;;;;;
 11.6265 +1F695;TAXI;So;0;ON;;;;;N;;;;;
 11.6266 +1F696;ONCOMING TAXI;So;0;ON;;;;;N;;;;;
 11.6267 +1F697;AUTOMOBILE;So;0;ON;;;;;N;;;;;
 11.6268 +1F698;ONCOMING AUTOMOBILE;So;0;ON;;;;;N;;;;;
 11.6269 +1F699;RECREATIONAL VEHICLE;So;0;ON;;;;;N;;;;;
 11.6270 +1F69A;DELIVERY TRUCK;So;0;ON;;;;;N;;;;;
 11.6271 +1F69B;ARTICULATED LORRY;So;0;ON;;;;;N;;;;;
 11.6272 +1F69C;TRACTOR;So;0;ON;;;;;N;;;;;
 11.6273 +1F69D;MONORAIL;So;0;ON;;;;;N;;;;;
 11.6274 +1F69E;MOUNTAIN RAILWAY;So;0;ON;;;;;N;;;;;
 11.6275 +1F69F;SUSPENSION RAILWAY;So;0;ON;;;;;N;;;;;
 11.6276 +1F6A0;MOUNTAIN CABLEWAY;So;0;ON;;;;;N;;;;;
 11.6277 +1F6A1;AERIAL TRAMWAY;So;0;ON;;;;;N;;;;;
 11.6278 +1F6A2;SHIP;So;0;ON;;;;;N;;;;;
 11.6279 +1F6A3;ROWBOAT;So;0;ON;;;;;N;;;;;
 11.6280 +1F6A4;SPEEDBOAT;So;0;ON;;;;;N;;;;;
 11.6281 +1F6A5;HORIZONTAL TRAFFIC LIGHT;So;0;ON;;;;;N;;;;;
 11.6282 +1F6A6;VERTICAL TRAFFIC LIGHT;So;0;ON;;;;;N;;;;;
 11.6283 +1F6A7;CONSTRUCTION SIGN;So;0;ON;;;;;N;;;;;
 11.6284 +1F6A8;POLICE CARS REVOLVING LIGHT;So;0;ON;;;;;N;;;;;
 11.6285 +1F6A9;TRIANGULAR FLAG ON POST;So;0;ON;;;;;N;;;;;
 11.6286 +1F6AA;DOOR;So;0;ON;;;;;N;;;;;
 11.6287 +1F6AB;NO ENTRY SIGN;So;0;ON;;;;;N;;;;;
 11.6288 +1F6AC;SMOKING SYMBOL;So;0;ON;;;;;N;;;;;
 11.6289 +1F6AD;NO SMOKING SYMBOL;So;0;ON;;;;;N;;;;;
 11.6290 +1F6AE;PUT LITTER IN ITS PLACE SYMBOL;So;0;ON;;;;;N;;;;;
 11.6291 +1F6AF;DO NOT LITTER SYMBOL;So;0;ON;;;;;N;;;;;
 11.6292 +1F6B0;POTABLE WATER SYMBOL;So;0;ON;;;;;N;;;;;
 11.6293 +1F6B1;NON-POTABLE WATER SYMBOL;So;0;ON;;;;;N;;;;;
 11.6294 +1F6B2;BICYCLE;So;0;ON;;;;;N;;;;;
 11.6295 +1F6B3;NO BICYCLES;So;0;ON;;;;;N;;;;;
 11.6296 +1F6B4;BICYCLIST;So;0;ON;;;;;N;;;;;
 11.6297 +1F6B5;MOUNTAIN BICYCLIST;So;0;ON;;;;;N;;;;;
 11.6298 +1F6B6;PEDESTRIAN;So;0;ON;;;;;N;;;;;
 11.6299 +1F6B7;NO PEDESTRIANS;So;0;ON;;;;;N;;;;;
 11.6300 +1F6B8;CHILDREN CROSSING;So;0;ON;;;;;N;;;;;
 11.6301 +1F6B9;MENS SYMBOL;So;0;ON;;;;;N;;;;;
 11.6302 +1F6BA;WOMENS SYMBOL;So;0;ON;;;;;N;;;;;
 11.6303 +1F6BB;RESTROOM;So;0;ON;;;;;N;;;;;
 11.6304 +1F6BC;BABY SYMBOL;So;0;ON;;;;;N;;;;;
 11.6305 +1F6BD;TOILET;So;0;ON;;;;;N;;;;;
 11.6306 +1F6BE;WATER CLOSET;So;0;ON;;;;;N;;;;;
 11.6307 +1F6BF;SHOWER;So;0;ON;;;;;N;;;;;
 11.6308 +1F6C0;BATH;So;0;ON;;;;;N;;;;;
 11.6309 +1F6C1;BATHTUB;So;0;ON;;;;;N;;;;;
 11.6310 +1F6C2;PASSPORT CONTROL;So;0;ON;;;;;N;;;;;
 11.6311 +1F6C3;CUSTOMS;So;0;ON;;;;;N;;;;;
 11.6312 +1F6C4;BAGGAGE CLAIM;So;0;ON;;;;;N;;;;;
 11.6313 +1F6C5;LEFT LUGGAGE;So;0;ON;;;;;N;;;;;
 11.6314 +1F700;ALCHEMICAL SYMBOL FOR QUINTESSENCE;So;0;ON;;;;;N;;;;;
 11.6315 +1F701;ALCHEMICAL SYMBOL FOR AIR;So;0;ON;;;;;N;;;;;
 11.6316 +1F702;ALCHEMICAL SYMBOL FOR FIRE;So;0;ON;;;;;N;;;;;
 11.6317 +1F703;ALCHEMICAL SYMBOL FOR EARTH;So;0;ON;;;;;N;;;;;
 11.6318 +1F704;ALCHEMICAL SYMBOL FOR WATER;So;0;ON;;;;;N;;;;;
 11.6319 +1F705;ALCHEMICAL SYMBOL FOR AQUAFORTIS;So;0;ON;;;;;N;;;;;
 11.6320 +1F706;ALCHEMICAL SYMBOL FOR AQUA REGIA;So;0;ON;;;;;N;;;;;
 11.6321 +1F707;ALCHEMICAL SYMBOL FOR AQUA REGIA-2;So;0;ON;;;;;N;;;;;
 11.6322 +1F708;ALCHEMICAL SYMBOL FOR AQUA VITAE;So;0;ON;;;;;N;;;;;
 11.6323 +1F709;ALCHEMICAL SYMBOL FOR AQUA VITAE-2;So;0;ON;;;;;N;;;;;
 11.6324 +1F70A;ALCHEMICAL SYMBOL FOR VINEGAR;So;0;ON;;;;;N;;;;;
 11.6325 +1F70B;ALCHEMICAL SYMBOL FOR VINEGAR-2;So;0;ON;;;;;N;;;;;
 11.6326 +1F70C;ALCHEMICAL SYMBOL FOR VINEGAR-3;So;0;ON;;;;;N;;;;;
 11.6327 +1F70D;ALCHEMICAL SYMBOL FOR SULFUR;So;0;ON;;;;;N;;;;;
 11.6328 +1F70E;ALCHEMICAL SYMBOL FOR PHILOSOPHERS SULFUR;So;0;ON;;;;;N;;;;;
 11.6329 +1F70F;ALCHEMICAL SYMBOL FOR BLACK SULFUR;So;0;ON;;;;;N;;;;;
 11.6330 +1F710;ALCHEMICAL SYMBOL FOR MERCURY SUBLIMATE;So;0;ON;;;;;N;;;;;
 11.6331 +1F711;ALCHEMICAL SYMBOL FOR MERCURY SUBLIMATE-2;So;0;ON;;;;;N;;;;;
 11.6332 +1F712;ALCHEMICAL SYMBOL FOR MERCURY SUBLIMATE-3;So;0;ON;;;;;N;;;;;
 11.6333 +1F713;ALCHEMICAL SYMBOL FOR CINNABAR;So;0;ON;;;;;N;;;;;
 11.6334 +1F714;ALCHEMICAL SYMBOL FOR SALT;So;0;ON;;;;;N;;;;;
 11.6335 +1F715;ALCHEMICAL SYMBOL FOR NITRE;So;0;ON;;;;;N;;;;;
 11.6336 +1F716;ALCHEMICAL SYMBOL FOR VITRIOL;So;0;ON;;;;;N;;;;;
 11.6337 +1F717;ALCHEMICAL SYMBOL FOR VITRIOL-2;So;0;ON;;;;;N;;;;;
 11.6338 +1F718;ALCHEMICAL SYMBOL FOR ROCK SALT;So;0;ON;;;;;N;;;;;
 11.6339 +1F719;ALCHEMICAL SYMBOL FOR ROCK SALT-2;So;0;ON;;;;;N;;;;;
 11.6340 +1F71A;ALCHEMICAL SYMBOL FOR GOLD;So;0;ON;;;;;N;;;;;
 11.6341 +1F71B;ALCHEMICAL SYMBOL FOR SILVER;So;0;ON;;;;;N;;;;;
 11.6342 +1F71C;ALCHEMICAL SYMBOL FOR IRON ORE;So;0;ON;;;;;N;;;;;
 11.6343 +1F71D;ALCHEMICAL SYMBOL FOR IRON ORE-2;So;0;ON;;;;;N;;;;;
 11.6344 +1F71E;ALCHEMICAL SYMBOL FOR CROCUS OF IRON;So;0;ON;;;;;N;;;;;
 11.6345 +1F71F;ALCHEMICAL SYMBOL FOR REGULUS OF IRON;So;0;ON;;;;;N;;;;;
 11.6346 +1F720;ALCHEMICAL SYMBOL FOR COPPER ORE;So;0;ON;;;;;N;;;;;
 11.6347 +1F721;ALCHEMICAL SYMBOL FOR IRON-COPPER ORE;So;0;ON;;;;;N;;;;;
 11.6348 +1F722;ALCHEMICAL SYMBOL FOR SUBLIMATE OF COPPER;So;0;ON;;;;;N;;;;;
 11.6349 +1F723;ALCHEMICAL SYMBOL FOR CROCUS OF COPPER;So;0;ON;;;;;N;;;;;
 11.6350 +1F724;ALCHEMICAL SYMBOL FOR CROCUS OF COPPER-2;So;0;ON;;;;;N;;;;;
 11.6351 +1F725;ALCHEMICAL SYMBOL FOR COPPER ANTIMONIATE;So;0;ON;;;;;N;;;;;
 11.6352 +1F726;ALCHEMICAL SYMBOL FOR SALT OF COPPER ANTIMONIATE;So;0;ON;;;;;N;;;;;
 11.6353 +1F727;ALCHEMICAL SYMBOL FOR SUBLIMATE OF SALT OF COPPER;So;0;ON;;;;;N;;;;;
 11.6354 +1F728;ALCHEMICAL SYMBOL FOR VERDIGRIS;So;0;ON;;;;;N;;;;;
 11.6355 +1F729;ALCHEMICAL SYMBOL FOR TIN ORE;So;0;ON;;;;;N;;;;;
 11.6356 +1F72A;ALCHEMICAL SYMBOL FOR LEAD ORE;So;0;ON;;;;;N;;;;;
 11.6357 +1F72B;ALCHEMICAL SYMBOL FOR ANTIMONY ORE;So;0;ON;;;;;N;;;;;
 11.6358 +1F72C;ALCHEMICAL SYMBOL FOR SUBLIMATE OF ANTIMONY;So;0;ON;;;;;N;;;;;
 11.6359 +1F72D;ALCHEMICAL SYMBOL FOR SALT OF ANTIMONY;So;0;ON;;;;;N;;;;;
 11.6360 +1F72E;ALCHEMICAL SYMBOL FOR SUBLIMATE OF SALT OF ANTIMONY;So;0;ON;;;;;N;;;;;
 11.6361 +1F72F;ALCHEMICAL SYMBOL FOR VINEGAR OF ANTIMONY;So;0;ON;;;;;N;;;;;
 11.6362 +1F730;ALCHEMICAL SYMBOL FOR REGULUS OF ANTIMONY;So;0;ON;;;;;N;;;;;
 11.6363 +1F731;ALCHEMICAL SYMBOL FOR REGULUS OF ANTIMONY-2;So;0;ON;;;;;N;;;;;
 11.6364 +1F732;ALCHEMICAL SYMBOL FOR REGULUS;So;0;ON;;;;;N;;;;;
 11.6365 +1F733;ALCHEMICAL SYMBOL FOR REGULUS-2;So;0;ON;;;;;N;;;;;
 11.6366 +1F734;ALCHEMICAL SYMBOL FOR REGULUS-3;So;0;ON;;;;;N;;;;;
 11.6367 +1F735;ALCHEMICAL SYMBOL FOR REGULUS-4;So;0;ON;;;;;N;;;;;
 11.6368 +1F736;ALCHEMICAL SYMBOL FOR ALKALI;So;0;ON;;;;;N;;;;;
 11.6369 +1F737;ALCHEMICAL SYMBOL FOR ALKALI-2;So;0;ON;;;;;N;;;;;
 11.6370 +1F738;ALCHEMICAL SYMBOL FOR MARCASITE;So;0;ON;;;;;N;;;;;
 11.6371 +1F739;ALCHEMICAL SYMBOL FOR SAL-AMMONIAC;So;0;ON;;;;;N;;;;;
 11.6372 +1F73A;ALCHEMICAL SYMBOL FOR ARSENIC;So;0;ON;;;;;N;;;;;
 11.6373 +1F73B;ALCHEMICAL SYMBOL FOR REALGAR;So;0;ON;;;;;N;;;;;
 11.6374 +1F73C;ALCHEMICAL SYMBOL FOR REALGAR-2;So;0;ON;;;;;N;;;;;
 11.6375 +1F73D;ALCHEMICAL SYMBOL FOR AURIPIGMENT;So;0;ON;;;;;N;;;;;
 11.6376 +1F73E;ALCHEMICAL SYMBOL FOR BISMUTH ORE;So;0;ON;;;;;N;;;;;
 11.6377 +1F73F;ALCHEMICAL SYMBOL FOR TARTAR;So;0;ON;;;;;N;;;;;
 11.6378 +1F740;ALCHEMICAL SYMBOL FOR TARTAR-2;So;0;ON;;;;;N;;;;;
 11.6379 +1F741;ALCHEMICAL SYMBOL FOR QUICK LIME;So;0;ON;;;;;N;;;;;
 11.6380 +1F742;ALCHEMICAL SYMBOL FOR BORAX;So;0;ON;;;;;N;;;;;
 11.6381 +1F743;ALCHEMICAL SYMBOL FOR BORAX-2;So;0;ON;;;;;N;;;;;
 11.6382 +1F744;ALCHEMICAL SYMBOL FOR BORAX-3;So;0;ON;;;;;N;;;;;
 11.6383 +1F745;ALCHEMICAL SYMBOL FOR ALUM;So;0;ON;;;;;N;;;;;
 11.6384 +1F746;ALCHEMICAL SYMBOL FOR OIL;So;0;ON;;;;;N;;;;;
 11.6385 +1F747;ALCHEMICAL SYMBOL FOR SPIRIT;So;0;ON;;;;;N;;;;;
 11.6386 +1F748;ALCHEMICAL SYMBOL FOR TINCTURE;So;0;ON;;;;;N;;;;;
 11.6387 +1F749;ALCHEMICAL SYMBOL FOR GUM;So;0;ON;;;;;N;;;;;
 11.6388 +1F74A;ALCHEMICAL SYMBOL FOR WAX;So;0;ON;;;;;N;;;;;
 11.6389 +1F74B;ALCHEMICAL SYMBOL FOR POWDER;So;0;ON;;;;;N;;;;;
 11.6390 +1F74C;ALCHEMICAL SYMBOL FOR CALX;So;0;ON;;;;;N;;;;;
 11.6391 +1F74D;ALCHEMICAL SYMBOL FOR TUTTY;So;0;ON;;;;;N;;;;;
 11.6392 +1F74E;ALCHEMICAL SYMBOL FOR CAPUT MORTUUM;So;0;ON;;;;;N;;;;;
 11.6393 +1F74F;ALCHEMICAL SYMBOL FOR SCEPTER OF JOVE;So;0;ON;;;;;N;;;;;
 11.6394 +1F750;ALCHEMICAL SYMBOL FOR CADUCEUS;So;0;ON;;;;;N;;;;;
 11.6395 +1F751;ALCHEMICAL SYMBOL FOR TRIDENT;So;0;ON;;;;;N;;;;;
 11.6396 +1F752;ALCHEMICAL SYMBOL FOR STARRED TRIDENT;So;0;ON;;;;;N;;;;;
 11.6397 +1F753;ALCHEMICAL SYMBOL FOR LODESTONE;So;0;ON;;;;;N;;;;;
 11.6398 +1F754;ALCHEMICAL SYMBOL FOR SOAP;So;0;ON;;;;;N;;;;;
 11.6399 +1F755;ALCHEMICAL SYMBOL FOR URINE;So;0;ON;;;;;N;;;;;
 11.6400 +1F756;ALCHEMICAL SYMBOL FOR HORSE DUNG;So;0;ON;;;;;N;;;;;
 11.6401 +1F757;ALCHEMICAL SYMBOL FOR ASHES;So;0;ON;;;;;N;;;;;
 11.6402 +1F758;ALCHEMICAL SYMBOL FOR POT ASHES;So;0;ON;;;;;N;;;;;
 11.6403 +1F759;ALCHEMICAL SYMBOL FOR BRICK;So;0;ON;;;;;N;;;;;
 11.6404 +1F75A;ALCHEMICAL SYMBOL FOR POWDERED BRICK;So;0;ON;;;;;N;;;;;
 11.6405 +1F75B;ALCHEMICAL SYMBOL FOR AMALGAM;So;0;ON;;;;;N;;;;;
 11.6406 +1F75C;ALCHEMICAL SYMBOL FOR STRATUM SUPER STRATUM;So;0;ON;;;;;N;;;;;
 11.6407 +1F75D;ALCHEMICAL SYMBOL FOR STRATUM SUPER STRATUM-2;So;0;ON;;;;;N;;;;;
 11.6408 +1F75E;ALCHEMICAL SYMBOL FOR SUBLIMATION;So;0;ON;;;;;N;;;;;
 11.6409 +1F75F;ALCHEMICAL SYMBOL FOR PRECIPITATE;So;0;ON;;;;;N;;;;;
 11.6410 +1F760;ALCHEMICAL SYMBOL FOR DISTILL;So;0;ON;;;;;N;;;;;
 11.6411 +1F761;ALCHEMICAL SYMBOL FOR DISSOLVE;So;0;ON;;;;;N;;;;;
 11.6412 +1F762;ALCHEMICAL SYMBOL FOR DISSOLVE-2;So;0;ON;;;;;N;;;;;
 11.6413 +1F763;ALCHEMICAL SYMBOL FOR PURIFY;So;0;ON;;;;;N;;;;;
 11.6414 +1F764;ALCHEMICAL SYMBOL FOR PUTREFACTION;So;0;ON;;;;;N;;;;;
 11.6415 +1F765;ALCHEMICAL SYMBOL FOR CRUCIBLE;So;0;ON;;;;;N;;;;;
 11.6416 +1F766;ALCHEMICAL SYMBOL FOR CRUCIBLE-2;So;0;ON;;;;;N;;;;;
 11.6417 +1F767;ALCHEMICAL SYMBOL FOR CRUCIBLE-3;So;0;ON;;;;;N;;;;;
 11.6418 +1F768;ALCHEMICAL SYMBOL FOR CRUCIBLE-4;So;0;ON;;;;;N;;;;;
 11.6419 +1F769;ALCHEMICAL SYMBOL FOR CRUCIBLE-5;So;0;ON;;;;;N;;;;;
 11.6420 +1F76A;ALCHEMICAL SYMBOL FOR ALEMBIC;So;0;ON;;;;;N;;;;;
 11.6421 +1F76B;ALCHEMICAL SYMBOL FOR BATH OF MARY;So;0;ON;;;;;N;;;;;
 11.6422 +1F76C;ALCHEMICAL SYMBOL FOR BATH OF VAPOURS;So;0;ON;;;;;N;;;;;
 11.6423 +1F76D;ALCHEMICAL SYMBOL FOR RETORT;So;0;ON;;;;;N;;;;;
 11.6424 +1F76E;ALCHEMICAL SYMBOL FOR HOUR;So;0;ON;;;;;N;;;;;
 11.6425 +1F76F;ALCHEMICAL SYMBOL FOR NIGHT;So;0;ON;;;;;N;;;;;
 11.6426 +1F770;ALCHEMICAL SYMBOL FOR DAY-NIGHT;So;0;ON;;;;;N;;;;;
 11.6427 +1F771;ALCHEMICAL SYMBOL FOR MONTH;So;0;ON;;;;;N;;;;;
 11.6428 +1F772;ALCHEMICAL SYMBOL FOR HALF DRAM;So;0;ON;;;;;N;;;;;
 11.6429 +1F773;ALCHEMICAL SYMBOL FOR HALF OUNCE;So;0;ON;;;;;N;;;;;
 11.6430  20000;<CJK Ideograph Extension B, First>;Lo;0;L;;;;;N;;;;;
 11.6431  2A6D6;<CJK Ideograph Extension B, Last>;Lo;0;L;;;;;N;;;;;
 11.6432 +2A700;<CJK Ideograph Extension C, First>;Lo;0;L;;;;;N;;;;;
 11.6433 +2B734;<CJK Ideograph Extension C, Last>;Lo;0;L;;;;;N;;;;;
 11.6434 +2B740;<CJK Ideograph Extension D, First>;Lo;0;L;;;;;N;;;;;
 11.6435 +2B81D;<CJK Ideograph Extension D, Last>;Lo;0;L;;;;;N;;;;;
 11.6436  2F800;CJK COMPATIBILITY IDEOGRAPH-2F800;Lo;0;L;4E3D;;;;N;;;;;
 11.6437  2F801;CJK COMPATIBILITY IDEOGRAPH-2F801;Lo;0;L;4E38;;;;N;;;;;
 11.6438  2F802;CJK COMPATIBILITY IDEOGRAPH-2F802;Lo;0;L;4E41;;;;N;;;;;
    12.1 --- a/make/tools/UnicodeData/VERSION	Tue Nov 30 09:57:47 2010 -0800
    12.2 +++ b/make/tools/UnicodeData/VERSION	Wed Dec 08 00:35:33 2010 -0800
    12.3 @@ -1,1 +1,1 @@
    12.4 -5.1.0
    12.5 +6.0.0
    13.1 --- a/src/share/bin/java.c	Tue Nov 30 09:57:47 2010 -0800
    13.2 +++ b/src/share/bin/java.c	Wed Dec 08 00:35:33 2010 -0800
    13.3 @@ -65,6 +65,7 @@
    13.4  static jboolean showVersion = JNI_FALSE;  /* print but continue */
    13.5  static jboolean printUsage = JNI_FALSE;   /* print and exit*/
    13.6  static jboolean printXUsage = JNI_FALSE;  /* print and exit*/
    13.7 +static char     *showSettings = NULL;      /* print but continue */
    13.8  
    13.9  static const char *_program_name;
   13.10  static const char *_launcher_name;
   13.11 @@ -109,6 +110,7 @@
   13.12  
   13.13  static void PrintJavaVersion(JNIEnv *env, jboolean extraLF);
   13.14  static void PrintUsage(JNIEnv* env, jboolean doXUsage);
   13.15 +static void ShowSettings(JNIEnv* env, char *optString);
   13.16  
   13.17  static void SetPaths(int argc, char **argv);
   13.18  
   13.19 @@ -157,6 +159,7 @@
   13.20   * create a new thread to invoke JVM. See 6316197 for more information.
   13.21   */
   13.22  static jlong threadStackSize = 0;  /* stack size of the new thread */
   13.23 +static jlong heapSize        = 0;  /* heap size */
   13.24  
   13.25  int JNICALL JavaMain(void * args); /* entry point                  */
   13.26  
   13.27 @@ -376,6 +379,10 @@
   13.28          }
   13.29      }
   13.30  
   13.31 +    if (showSettings != NULL) {
   13.32 +        ShowSettings(env, showSettings);
   13.33 +        CHECK_EXCEPTION_LEAVE(0);
   13.34 +    }
   13.35      /* If the user specified neither a class name nor a JAR file */
   13.36      if (printXUsage || printUsage || (jarfile == 0 && classname == 0)) {
   13.37          PrintUsage(env, printXUsage);
   13.38 @@ -611,7 +618,7 @@
   13.39  
   13.40  /* copied from HotSpot function "atomll()" */
   13.41  static int
   13.42 -parse_stack_size(const char *s, jlong *result) {
   13.43 +parse_size(const char *s, jlong *result) {
   13.44    jlong n = 0;
   13.45    int args_read = sscanf(s, jlong_format_specifier(), &n);
   13.46    if (args_read != 1) {
   13.47 @@ -673,10 +680,17 @@
   13.48      options[numOptions++].extraInfo = info;
   13.49  
   13.50      if (JLI_StrCCmp(str, "-Xss") == 0) {
   13.51 -      jlong tmp;
   13.52 -      if (parse_stack_size(str + 4, &tmp)) {
   13.53 -        threadStackSize = tmp;
   13.54 -      }
   13.55 +        jlong tmp;
   13.56 +        if (parse_size(str + 4, &tmp)) {
   13.57 +            threadStackSize = tmp;
   13.58 +        }
   13.59 +    }
   13.60 +
   13.61 +    if (JLI_StrCCmp(str, "-Xmx") == 0) {
   13.62 +        jlong tmp;
   13.63 +        if (parse_size(str + 4, &tmp)) {
   13.64 +            heapSize = tmp;
   13.65 +        }
   13.66      }
   13.67  }
   13.68  
   13.69 @@ -1015,6 +1029,13 @@
   13.70              printXUsage = JNI_TRUE;
   13.71              return JNI_TRUE;
   13.72  /*
   13.73 + * The following case checks for -XshowSettings OR -XshowSetting:SUBOPT.
   13.74 + * In the latter case, any SUBOPT value not recognized will default to "all"
   13.75 + */
   13.76 +        } else if (JLI_StrCmp(arg, "-XshowSettings") == 0 ||
   13.77 +                JLI_StrCCmp(arg, "-XshowSettings:") == 0) {
   13.78 +            showSettings = arg;
   13.79 +/*
   13.80   * The following case provide backward compatibility with old-style
   13.81   * command line options.
   13.82   */
   13.83 @@ -1475,6 +1496,27 @@
   13.84  }
   13.85  
   13.86  /*
   13.87 + * Prints all the Java settings, see the java implementation for more details.
   13.88 + */
   13.89 +static void
   13.90 +ShowSettings(JNIEnv *env, char *optString)
   13.91 +{
   13.92 +    jclass cls;
   13.93 +    jmethodID showSettingsID;
   13.94 +    jstring joptString;
   13.95 +    NULL_CHECK(cls = FindBootStrapClass(env, "sun/launcher/LauncherHelper"));
   13.96 +    NULL_CHECK(showSettingsID = (*env)->GetStaticMethodID(env, cls,
   13.97 +            "showSettings", "(ZLjava/lang/String;JJZ)V"));
   13.98 +    joptString = (*env)->NewStringUTF(env, optString);
   13.99 +    (*env)->CallStaticVoidMethod(env, cls, showSettingsID,
  13.100 +                                 JNI_TRUE,
  13.101 +                                 joptString,
  13.102 +                                 (jlong)heapSize,
  13.103 +                                 (jlong)threadStackSize,
  13.104 +                                 ServerClassMachine());
  13.105 +}
  13.106 +
  13.107 +/*
  13.108   * Prints default usage or the Xusage message, see sun.launcher.LauncherHelper.java
  13.109   */
  13.110  static void
    14.1 --- a/src/share/classes/com/sun/net/httpserver/HttpsConfigurator.java	Tue Nov 30 09:57:47 2010 -0800
    14.2 +++ b/src/share/classes/com/sun/net/httpserver/HttpsConfigurator.java	Wed Dec 08 00:35:33 2010 -0800
    14.3 @@ -91,6 +91,7 @@
    14.4          return context;
    14.5      }
    14.6  
    14.7 +//BEGIN_TIGER_EXCLUDE
    14.8     /**
    14.9      * Called by the HttpsServer to configure the parameters
   14.10      * for a https connection currently being established.
   14.11 @@ -111,4 +112,5 @@
   14.12      public void configure (HttpsParameters params) {
   14.13          params.setSSLParameters (getSSLContext().getDefaultSSLParameters());
   14.14      }
   14.15 +//END_TIGER_EXCLUDE
   14.16  }
    15.1 --- a/src/share/classes/com/sun/net/httpserver/HttpsParameters.java	Tue Nov 30 09:57:47 2010 -0800
    15.2 +++ b/src/share/classes/com/sun/net/httpserver/HttpsParameters.java	Wed Dec 08 00:35:33 2010 -0800
    15.3 @@ -25,7 +25,9 @@
    15.4  
    15.5  package com.sun.net.httpserver;
    15.6  import java.net.InetSocketAddress;
    15.7 +//BEGIN_TIGER_EXCLUDE
    15.8  import javax.net.ssl.SSLParameters;
    15.9 +//END_TIGER_EXCLUDE
   15.10  
   15.11  /**
   15.12   * Represents the set of parameters for each https
   15.13 @@ -67,6 +69,7 @@
   15.14       */
   15.15      public abstract InetSocketAddress getClientAddress();
   15.16  
   15.17 +//BEGIN_TIGER_EXCLUDE
   15.18      /**
   15.19       * Sets the SSLParameters to use for this HttpsParameters.
   15.20       * The parameters must be supported by the SSLContext contained
   15.21 @@ -79,6 +82,7 @@
   15.22       *   invalid or unsupported.
   15.23       */
   15.24      public abstract void setSSLParameters (SSLParameters params);
   15.25 +//END_TIGER_EXCLUDE
   15.26  
   15.27      /**
   15.28       * Returns a copy of the array of ciphersuites or null if none
    16.1 --- a/src/share/classes/com/sun/rowset/RowSetResourceBundle.properties	Tue Nov 30 09:57:47 2010 -0800
    16.2 +++ b/src/share/classes/com/sun/rowset/RowSetResourceBundle.properties	Wed Dec 08 00:35:33 2010 -0800
    16.3 @@ -1,5 +1,5 @@
    16.4  #
    16.5 -# Copyright (c) 2005, 2006, Oracle and/or its affiliates. All rights reserved.
    16.6 +# Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
    16.7  # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
    16.8  #
    16.9  # This code is free software; you can redistribute it and/or modify it
   16.10 @@ -140,7 +140,7 @@
   16.11  #WebRowSetXmlReader exception
   16.12  wrsxmlreader.invalidcp = End of RowSet reached. Invalid cursor position
   16.13  wrsxmlreader.readxml = readXML : {0}
   16.14 -wrsxmlreader.parseerr = ** Parsing Error : {0} , line : {0} , uri : {0}
   16.15 +wrsxmlreader.parseerr = ** Parsing Error : {0} , line : {1} , uri : {2}
   16.16  
   16.17  #WebRowSetXmlWriter exceptions
   16.18  wrsxmlwriter.ioex = IOException : {0}
   16.19 @@ -151,7 +151,7 @@
   16.20  #XmlReaderContentHandler exceptions
   16.21  xmlrch.errmap = Error setting Map : {0}
   16.22  xmlrch.errmetadata = Error setting metadata : {0}
   16.23 -xmlrch.errinsert = Error inserting values : {0}
   16.24 +xmlrch.errinsertval = Error inserting values : {0}
   16.25  xmlrch.errconstr = Error constructing row : {0}
   16.26  xmlrch.errdel = Error deleting row : {0}
   16.27  xmlrch.errinsert = Error constructing insert row : {0}
   16.28 @@ -161,7 +161,7 @@
   16.29  xmlrch.chars = characters :
   16.30  xmlrch.badvalue = Bad value ; non-nullable property
   16.31  xmlrch.badvalue1 = Bad value ; non-nullable metadata
   16.32 -xmlrch.warning =  ** Warning : {0} , line : {0} , uri : {0}
   16.33 +xmlrch.warning =  ** Warning : {0} , line : {1} , uri : {2}
   16.34  
   16.35  #RIOptimisticProvider Exceptions
   16.36  riop.locking = Locking classification is not supported
    17.1 --- a/src/share/classes/com/sun/rowset/internal/XmlReaderContentHandler.java	Tue Nov 30 09:57:47 2010 -0800
    17.2 +++ b/src/share/classes/com/sun/rowset/internal/XmlReaderContentHandler.java	Wed Dec 08 00:35:33 2010 -0800
    17.3 @@ -738,7 +738,7 @@
    17.4                      // columnValue now need to be reset to the empty string
    17.5                      columnValue = "";
    17.6                  } catch (SQLException ex) {
    17.7 -                    throw new SAXException(MessageFormat.format(resBundle.handleGetObject("xmlrch.errinsert").toString(), ex.getMessage()));
    17.8 +                    throw new SAXException(MessageFormat.format(resBundle.handleGetObject("xmlrch.errinsertval").toString(), ex.getMessage()));
    17.9                  }
   17.10                  break;
   17.11              case RowTag:
    18.1 --- a/src/share/classes/java/awt/Color.java	Tue Nov 30 09:57:47 2010 -0800
    18.2 +++ b/src/share/classes/java/awt/Color.java	Wed Dec 08 00:35:33 2010 -0800
    18.3 @@ -611,12 +611,15 @@
    18.4       * <p>
    18.5       * This method applies an arbitrary scale factor to each of the three RGB
    18.6       * components of this <code>Color</code> to create a brighter version
    18.7 -     * of this <code>Color</code>. Although <code>brighter</code> and
    18.8 +     * of this <code>Color</code>.
    18.9 +     * The {@code alpha} value is preserved.
   18.10 +     * Although <code>brighter</code> and
   18.11       * <code>darker</code> are inverse operations, the results of a
   18.12       * series of invocations of these two methods might be inconsistent
   18.13       * because of rounding errors.
   18.14       * @return     a new <code>Color</code> object that is
   18.15 -     *                 a brighter version of this <code>Color</code>.
   18.16 +     *                 a brighter version of this <code>Color</code>
   18.17 +     *                 with the same {@code alpha} value.
   18.18       * @see        java.awt.Color#darker
   18.19       * @since      JDK1.0
   18.20       */
   18.21 @@ -624,6 +627,7 @@
   18.22          int r = getRed();
   18.23          int g = getGreen();
   18.24          int b = getBlue();
   18.25 +        int alpha = getAlpha();
   18.26  
   18.27          /* From 2D group:
   18.28           * 1. black.brighter() should return grey
   18.29 @@ -632,7 +636,7 @@
   18.30           */
   18.31          int i = (int)(1.0/(1.0-FACTOR));
   18.32          if ( r == 0 && g == 0 && b == 0) {
   18.33 -           return new Color(i, i, i);
   18.34 +            return new Color(i, i, i, alpha);
   18.35          }
   18.36          if ( r > 0 && r < i ) r = i;
   18.37          if ( g > 0 && g < i ) g = i;
   18.38 @@ -640,7 +644,8 @@
   18.39  
   18.40          return new Color(Math.min((int)(r/FACTOR), 255),
   18.41                           Math.min((int)(g/FACTOR), 255),
   18.42 -                         Math.min((int)(b/FACTOR), 255));
   18.43 +                         Math.min((int)(b/FACTOR), 255),
   18.44 +                         alpha);
   18.45      }
   18.46  
   18.47      /**
   18.48 @@ -649,19 +654,23 @@
   18.49       * <p>
   18.50       * This method applies an arbitrary scale factor to each of the three RGB
   18.51       * components of this <code>Color</code> to create a darker version of
   18.52 -     * this <code>Color</code>.  Although <code>brighter</code> and
   18.53 +     * this <code>Color</code>.
   18.54 +     * The {@code alpha} value is preserved.
   18.55 +     * Although <code>brighter</code> and
   18.56       * <code>darker</code> are inverse operations, the results of a series
   18.57       * of invocations of these two methods might be inconsistent because
   18.58       * of rounding errors.
   18.59       * @return  a new <code>Color</code> object that is
   18.60 -     *                    a darker version of this <code>Color</code>.
   18.61 +     *                    a darker version of this <code>Color</code>
   18.62 +     *                    with the same {@code alpha} value.
   18.63       * @see        java.awt.Color#brighter
   18.64       * @since      JDK1.0
   18.65       */
   18.66      public Color darker() {
   18.67          return new Color(Math.max((int)(getRed()  *FACTOR), 0),
   18.68                           Math.max((int)(getGreen()*FACTOR), 0),
   18.69 -                         Math.max((int)(getBlue() *FACTOR), 0));
   18.70 +                         Math.max((int)(getBlue() *FACTOR), 0),
   18.71 +                         getAlpha());
   18.72      }
   18.73  
   18.74      /**
    19.1 --- a/src/share/classes/java/awt/Container.java	Tue Nov 30 09:57:47 2010 -0800
    19.2 +++ b/src/share/classes/java/awt/Container.java	Wed Dec 08 00:35:33 2010 -0800
    19.3 @@ -51,6 +51,7 @@
    19.4  import sun.util.logging.PlatformLogger;
    19.5  
    19.6  import sun.awt.AppContext;
    19.7 +import sun.awt.AWTAccessor;
    19.8  import sun.awt.CausedFocusEvent;
    19.9  import sun.awt.PeerEvent;
   19.10  import sun.awt.SunToolkit;
   19.11 @@ -247,6 +248,13 @@
   19.12          if (!GraphicsEnvironment.isHeadless()) {
   19.13              initIDs();
   19.14          }
   19.15 +
   19.16 +        AWTAccessor.setContainerAccessor(new AWTAccessor.ContainerAccessor() {
   19.17 +            @Override
   19.18 +            public void validateUnconditionally(Container cont) {
   19.19 +                cont.validateUnconditionally();
   19.20 +            }
   19.21 +        });
   19.22      }
   19.23  
   19.24      /**
    20.1 --- a/src/share/classes/java/awt/Dialog.java	Tue Nov 30 09:57:47 2010 -0800
    20.2 +++ b/src/share/classes/java/awt/Dialog.java	Wed Dec 08 00:35:33 2010 -0800
    20.3 @@ -1248,14 +1248,31 @@
    20.4  
    20.5      /**
    20.6       * Disables or enables decorations for this dialog.
    20.7 -     * This method can only be called while the dialog is not displayable.
    20.8 -     * @param  undecorated <code>true</code> if no dialog decorations are
    20.9 -     *         to be enabled;
   20.10 -     *         <code>false</code> if dialog decorations are to be enabled.
   20.11 -     * @throws <code>IllegalComponentStateException</code> if the dialog
   20.12 -     *         is displayable.
   20.13 +     * <p>
   20.14 +     * This method can only be called while the dialog is not displayable. To
   20.15 +     * make this dialog decorated, it must be opaque and have the default shape,
   20.16 +     * otherwise the {@code IllegalComponentStateException} will be thrown.
   20.17 +     * Refer to {@link Window#setShape}, {@link Window#setOpacity} and {@link
   20.18 +     * Window#setBackground} for details
   20.19 +     *
   20.20 +     * @param  undecorated {@code true} if no dialog decorations are to be
   20.21 +     *         enabled; {@code false} if dialog decorations are to be enabled
   20.22 +     *
   20.23 +     * @throws IllegalComponentStateException if the dialog is displayable
   20.24 +     * @throws IllegalComponentStateException if {@code undecorated} is
   20.25 +     *      {@code false}, and this dialog does not have the default shape
   20.26 +     * @throws IllegalComponentStateException if {@code undecorated} is
   20.27 +     *      {@code false}, and this dialog opacity is less than {@code 1.0f}
   20.28 +     * @throws IllegalComponentStateException if {@code undecorated} is
   20.29 +     *      {@code false}, and the alpha value of this dialog background
   20.30 +     *      color is less than {@code 1.0f}
   20.31 +     *
   20.32       * @see    #isUndecorated
   20.33       * @see    Component#isDisplayable
   20.34 +     * @see    Window#getShape
   20.35 +     * @see    Window#getOpacity
   20.36 +     * @see    Window#getBackground
   20.37 +     *
   20.38       * @since 1.4
   20.39       */
   20.40      public void setUndecorated(boolean undecorated) {
   20.41 @@ -1264,6 +1281,18 @@
   20.42              if (isDisplayable()) {
   20.43                  throw new IllegalComponentStateException("The dialog is displayable.");
   20.44              }
   20.45 +            if (!undecorated) {
   20.46 +                if (getOpacity() < 1.0f) {
   20.47 +                    throw new IllegalComponentStateException("The dialog is not opaque");
   20.48 +                }
   20.49 +                if (getShape() != null) {
   20.50 +                    throw new IllegalComponentStateException("The dialog does not have a default shape");
   20.51 +                }
   20.52 +                Color bg = getBackground();
   20.53 +                if ((bg != null) && (bg.getAlpha() < 255)) {
   20.54 +                    throw new IllegalComponentStateException("The dialog background color is not opaque");
   20.55 +                }
   20.56 +            }
   20.57              this.undecorated = undecorated;
   20.58          }
   20.59      }
   20.60 @@ -1281,6 +1310,45 @@
   20.61      }
   20.62  
   20.63      /**
   20.64 +     * {@inheritDoc}
   20.65 +     */
   20.66 +    @Override
   20.67 +    public void setOpacity(float opacity) {
   20.68 +        synchronized (getTreeLock()) {
   20.69 +            if ((opacity < 1.0f) && !isUndecorated()) {
   20.70 +                throw new IllegalComponentStateException("The dialog is decorated");
   20.71 +            }
   20.72 +            super.setOpacity(opacity);
   20.73 +        }
   20.74 +    }
   20.75 +
   20.76 +    /**
   20.77 +     * {@inheritDoc}
   20.78 +     */
   20.79 +    @Override
   20.80 +    public void setShape(Shape shape) {
   20.81 +        synchronized (getTreeLock()) {
   20.82 +            if ((shape != null) && !isUndecorated()) {
   20.83 +                throw new IllegalComponentStateException("The dialog is decorated");
   20.84 +            }
   20.85 +            super.setShape(shape);
   20.86 +        }
   20.87 +    }
   20.88 +
   20.89 +    /**
   20.90 +     * {@inheritDoc}
   20.91 +     */
   20.92 +    @Override
   20.93 +    public void setBackground(Color bgColor) {
   20.94 +        synchronized (getTreeLock()) {
   20.95 +            if ((bgColor != null) && (bgColor.getAlpha() < 255) && !isUndecorated()) {
   20.96 +                throw new IllegalComponentStateException("The dialog is decorated");
   20.97 +            }
   20.98 +            super.setBackground(bgColor);
   20.99 +        }
  20.100 +    }
  20.101 +
  20.102 +    /**
  20.103       * Returns a string representing the state of this dialog. This
  20.104       * method is intended to be used only for debugging purposes, and the
  20.105       * content and format of the returned string may vary between
    21.1 --- a/src/share/classes/java/awt/FileDialog.java	Tue Nov 30 09:57:47 2010 -0800
    21.2 +++ b/src/share/classes/java/awt/FileDialog.java	Wed Dec 08 00:35:33 2010 -0800
    21.3 @@ -99,7 +99,7 @@
    21.4       * Contains the File instances for all the files that the user selects.
    21.5       *
    21.6       * @serial
    21.7 -     * @see getFiles
    21.8 +     * @see #getFiles
    21.9       * @since 1.7
   21.10       */
   21.11      private File[] files;
    22.1 --- a/src/share/classes/java/awt/Frame.java	Tue Nov 30 09:57:47 2010 -0800
    22.2 +++ b/src/share/classes/java/awt/Frame.java	Wed Dec 08 00:35:33 2010 -0800
    22.3 @@ -828,6 +828,11 @@
    22.4                          return frame.state;
    22.5                      }
    22.6                  }
    22.7 +                public Rectangle getMaximizedBounds(Frame frame) {
    22.8 +                    synchronized(frame.getObjectLock()) {
    22.9 +                        return frame.maximizedBounds;
   22.10 +                    }
   22.11 +                }
   22.12              }
   22.13          );
   22.14      }
   22.15 @@ -855,8 +860,10 @@
   22.16       * @see #getMaximizedBounds()
   22.17       * @since 1.4
   22.18       */
   22.19 -    public synchronized void setMaximizedBounds(Rectangle bounds) {
   22.20 -        this.maximizedBounds = bounds;
   22.21 +    public void setMaximizedBounds(Rectangle bounds) {
   22.22 +        synchronized(getObjectLock()) {
   22.23 +            this.maximizedBounds = bounds;
   22.24 +        }
   22.25          FramePeer peer = (FramePeer)this.peer;
   22.26          if (peer != null) {
   22.27              peer.setMaximizedBounds(bounds);
   22.28 @@ -873,21 +880,40 @@
   22.29       * @since   1.4
   22.30       */
   22.31      public Rectangle getMaximizedBounds() {
   22.32 -        return maximizedBounds;
   22.33 +        synchronized(getObjectLock()) {
   22.34 +            return maximizedBounds;
   22.35 +        }
   22.36      }
   22.37  
   22.38  
   22.39      /**
   22.40       * Disables or enables decorations for this frame.
   22.41 -     * This method can only be called while the frame is not displayable.
   22.42 -     * @param  undecorated <code>true</code> if no frame decorations are
   22.43 -     *         to be enabled;
   22.44 -     *         <code>false</code> if frame decorations are to be enabled.
   22.45 -     * @throws <code>IllegalComponentStateException</code> if the frame
   22.46 -     *         is displayable.
   22.47 +     * <p>
   22.48 +     * This method can only be called while the frame is not displayable. To
   22.49 +     * make this frame decorated, it must be opaque and have the default shape,
   22.50 +     * otherwise the {@code IllegalComponentStateException} will be thrown.
   22.51 +     * Refer to {@link Window#setShape}, {@link Window#setOpacity} and {@link
   22.52 +     * Window#setBackground} for details
   22.53 +     *
   22.54 +     * @param  undecorated {@code true} if no frame decorations are to be
   22.55 +     *         enabled; {@code false} if frame decorations are to be enabled
   22.56 +     *
   22.57 +     * @throws IllegalComponentStateException if the frame is displayable
   22.58 +     * @throws IllegalComponentStateException if {@code undecorated} is
   22.59 +     *      {@code false}, and this frame does not have the default shape
   22.60 +     * @throws IllegalComponentStateException if {@code undecorated} is
   22.61 +     *      {@code false}, and this frame opacity is less than {@code 1.0f}
   22.62 +     * @throws IllegalComponentStateException if {@code undecorated} is
   22.63 +     *      {@code false}, and the alpha value of this frame background
   22.64 +     *      color is less than {@code 1.0f}
   22.65 +     *
   22.66       * @see    #isUndecorated
   22.67       * @see    Component#isDisplayable
   22.68 +     * @see    Window#getShape
   22.69 +     * @see    Window#getOpacity
   22.70 +     * @see    Window#getBackground
   22.71       * @see    javax.swing.JFrame#setDefaultLookAndFeelDecorated(boolean)
   22.72 +     *
   22.73       * @since 1.4
   22.74       */
   22.75      public void setUndecorated(boolean undecorated) {
   22.76 @@ -896,6 +922,18 @@
   22.77              if (isDisplayable()) {
   22.78                  throw new IllegalComponentStateException("The frame is displayable.");
   22.79              }
   22.80 +            if (!undecorated) {
   22.81 +                if (getOpacity() < 1.0f) {
   22.82 +                    throw new IllegalComponentStateException("The frame is not opaque");
   22.83 +                }
   22.84 +                if (getShape() != null) {
   22.85 +                    throw new IllegalComponentStateException("The frame does not have a default shape");
   22.86 +                }
   22.87 +                Color bg = getBackground();
   22.88 +                if ((bg != null) && (bg.getAlpha() < 255)) {
   22.89 +                    throw new IllegalComponentStateException("The frame background color is not opaque");
   22.90 +                }
   22.91 +            }
   22.92              this.undecorated = undecorated;
   22.93          }
   22.94      }
   22.95 @@ -913,6 +951,45 @@
   22.96      }
   22.97  
   22.98      /**
   22.99 +     * {@inheritDoc}
  22.100 +     */
  22.101 +    @Override
  22.102 +    public void setOpacity(float opacity) {
  22.103 +        synchronized (getTreeLock()) {
  22.104 +            if ((opacity < 1.0f) && !isUndecorated()) {
  22.105 +                throw new IllegalComponentStateException("The frame is decorated");
  22.106 +            }
  22.107 +            super.setOpacity(opacity);
  22.108 +        }
  22.109 +    }
  22.110 +
  22.111 +    /**
  22.112 +     * {@inheritDoc}
  22.113 +     */
  22.114 +    @Override
  22.115 +    public void setShape(Shape shape) {
  22.116 +        synchronized (getTreeLock()) {
  22.117 +            if ((shape != null) && !isUndecorated()) {
  22.118 +                throw new IllegalComponentStateException("The frame is decorated");
  22.119 +            }
  22.120 +            super.setShape(shape);
  22.121 +        }
  22.122 +    }
  22.123 +
  22.124 +    /**
  22.125 +     * {@inheritDoc}
  22.126 +     */
  22.127 +    @Override
  22.128 +    public void setBackground(Color bgColor) {
  22.129 +        synchronized (getTreeLock()) {
  22.130 +            if ((bgColor != null) && (bgColor.getAlpha() < 255) && !isUndecorated()) {
  22.131 +                throw new IllegalComponentStateException("The frame is decorated");
  22.132 +            }
  22.133 +            super.setBackground(bgColor);
  22.134 +        }
  22.135 +    }
  22.136 +
  22.137 +    /**
  22.138       * Removes the specified menu bar from this frame.
  22.139       * @param    m   the menu component to remove.
  22.140       *           If <code>m</code> is <code>null</code>, then
    23.1 --- a/src/share/classes/java/awt/Window.java	Tue Nov 30 09:57:47 2010 -0800
    23.2 +++ b/src/share/classes/java/awt/Window.java	Wed Dec 08 00:35:33 2010 -0800
    23.3 @@ -3474,14 +3474,20 @@
    23.4       * level of 0 may or may not disable the mouse event handling on this
    23.5       * window. This is a platform-dependent behavior.
    23.6       * <p>
    23.7 -     * In order for this method to enable the translucency effect, the {@link
    23.8 -     * GraphicsDevice#isWindowTranslucencySupported(GraphicsDevice.WindowTranslucency)} method must indicate that
    23.9 -     * the {@link GraphicsDevice.WindowTranslucency#TRANSLUCENT TRANSLUCENT}
   23.10 -     * translucency is supported.
   23.11 +     * The following conditions must be met in order to set the opacity value
   23.12 +     * less than {@code 1.0f}:
   23.13 +     * <ul>
   23.14 +     * <li>The {@link GraphicsDevice.WindowTranslucency#TRANSLUCENT TRANSLUCENT}
   23.15 +     * translucency must be supported by the underlying system
   23.16 +     * <li>The window must be undecorated (see {@link Frame#setUndecorated}
   23.17 +     * and {@link Dialog#setUndecorated})
   23.18 +     * <li>The window must not be in full-screen mode (see {@link
   23.19 +     * GraphicsDevice#setFullScreenWindow(Window)})
   23.20 +     * </ul>
   23.21       * <p>
   23.22 -     * Also note that the window must not be in the full-screen mode when
   23.23 -     * setting the opacity value &lt; 1.0f. Otherwise the {@code
   23.24 -     * IllegalComponentStateException} is thrown.
   23.25 +     * If the requested opacity value is less than {@code 1.0f}, and any of the
   23.26 +     * above conditions are not met, the window opacity will not change,
   23.27 +     * and the {@code IllegalComponentStateException} will be thrown.
   23.28       * <p>
   23.29       * The translucency levels of individual pixels may also be effected by the
   23.30       * alpha component of their color (see {@link Window#setBackground(Color)}) and the
   23.31 @@ -3491,15 +3497,20 @@
   23.32       *
   23.33       * @throws IllegalArgumentException if the opacity is out of the range
   23.34       *     [0..1]
   23.35 +     * @throws IllegalComponentStateException if the window is decorated and
   23.36 +     *     the opacity is less than {@code 1.0f}
   23.37       * @throws IllegalComponentStateException if the window is in full screen
   23.38 -     *     mode, and the opacity is less than 1.0f
   23.39 +     *     mode, and the opacity is less than {@code 1.0f}
   23.40       * @throws UnsupportedOperationException if the {@code
   23.41       *     GraphicsDevice.WindowTranslucency#TRANSLUCENT TRANSLUCENT}
   23.42 -     *     translucency kind is not supported and the opacity is less than 1.0f
   23.43 +     *     translucency is not supported and the opacity is less than
   23.44 +     *     {@code 1.0f}
   23.45       *
   23.46       * @see Window#getOpacity
   23.47       * @see Window#setBackground(Color)
   23.48       * @see Window#setShape(Shape)
   23.49 +     * @see Frame#isUndecorated
   23.50 +     * @see Dialog#isUndecorated
   23.51       * @see GraphicsDevice.WindowTranslucency
   23.52       * @see GraphicsDevice#isWindowTranslucencySupported(GraphicsDevice.WindowTranslucency)
   23.53       *
   23.54 @@ -3557,24 +3568,26 @@
   23.55      /**
   23.56       * Sets the shape of the window.
   23.57       * <p>
   23.58 -     * Setting a shape enables cutting off some parts of the window, leaving
   23.59 -     * visible and clickable only those parts belonging to the given shape
   23.60 -     * (see {@link Shape}). If the shape argument is null, this methods
   23.61 -     * restores the default shape (making the window rectangular on most
   23.62 -     * platforms.)
   23.63 +     * Setting a shape cuts off some parts of the window. Only the parts that
   23.64 +     * belong to the given {@link Shape} remain visible and clickable. If
   23.65 +     * the shape argument is {@code null}, this method restores the default
   23.66 +     * shape, making the window rectangular on most platforms.
   23.67       * <p>
   23.68 -     * The following conditions must be met in order to set a non-null shape:
   23.69 +     * The following conditions must be met to set a non-null shape:
   23.70       * <ul>
   23.71       * <li>The {@link GraphicsDevice.WindowTranslucency#PERPIXEL_TRANSPARENT
   23.72 -     * PERPIXEL_TRANSPARENT} translucency kind must be supported by the
   23.73 +     * PERPIXEL_TRANSPARENT} translucency must be supported by the
   23.74       * underlying system
   23.75 -     * <i>and</i>
   23.76 -     * <li>The window must not be in the full-screen mode (see
   23.77 -     * {@link GraphicsDevice#setFullScreenWindow(Window)})
   23.78 +     * <li>The window must be undecorated (see {@link Frame#setUndecorated}
   23.79 +     * and {@link Dialog#setUndecorated})
   23.80 +     * <li>The window must not be in full-screen mode (see {@link
   23.81 +     * GraphicsDevice#setFullScreenWindow(Window)})
   23.82       * </ul>
   23.83 -     * If a certain condition is not met, either the {@code
   23.84 -     * UnsupportedOperationException} or {@code IllegalComponentStateException}
   23.85 -     * is thrown.
   23.86 +     * <p>
   23.87 +     * If the requested shape is not {@code null}, and any of the above
   23.88 +     * conditions are not met, the shape of this window will not change,
   23.89 +     * and either the {@code UnsupportedOperationException} or {@code
   23.90 +     * IllegalComponentStateException} will be thrown.
   23.91       * <p>
   23.92       * The tranlucency levels of individual pixels may also be effected by the
   23.93       * alpha component of their color (see {@link Window#setBackground(Color)}) and the
   23.94 @@ -3584,6 +3597,8 @@
   23.95       * @param shape the shape to set to the window
   23.96       *
   23.97       * @throws IllegalComponentStateException if the shape is not {@code
   23.98 +     *     null} and the window is decorated
   23.99 +     * @throws IllegalComponentStateException if the shape is not {@code
  23.100       *     null} and the window is in full-screen mode
  23.101       * @throws UnsupportedOperationException if the shape is not {@code
  23.102       *     null} and {@link GraphicsDevice.WindowTranslucency#PERPIXEL_TRANSPARENT
  23.103 @@ -3592,6 +3607,8 @@
  23.104       * @see Window#getShape()
  23.105       * @see Window#setBackground(Color)
  23.106       * @see Window#setOpacity(float)
  23.107 +     * @see Frame#isUndecorated
  23.108 +     * @see Dialog#isUndecorated
  23.109       * @see GraphicsDevice.WindowTranslucency
  23.110       * @see GraphicsDevice#isWindowTranslucencySupported(GraphicsDevice.WindowTranslucency)
  23.111       *
  23.112 @@ -3645,37 +3662,46 @@
  23.113       * GraphicsDevice.WindowTranslucency#PERPIXEL_TRANSLUCENT PERPIXEL_TRANSLUCENT}
  23.114       * tranclucency, the alpha component of the given background color
  23.115       * may effect the mode of operation for this window: it indicates whether
  23.116 -     * this window must be opaque (alpha == 1.0f) or per-pixel translucent
  23.117 -     * (alpha &lt; 1.0f).  All the following conditions must be met in order
  23.118 -     * to be able to enable the per-pixel transparency mode for this window:
  23.119 +     * this window must be opaque (alpha equals {@code 1.0f}) or per-pixel translucent
  23.120 +     * (alpha is less than {@code 1.0f}). If the given background color is
  23.121 +     * {@code null}, the window is considered completely opaque.
  23.122 +     * <p>
  23.123 +     * All the following conditions must be met to enable the per-pixel
  23.124 +     * transparency mode for this window:
  23.125       * <ul>
  23.126       * <li>The {@link GraphicsDevice.WindowTranslucency#PERPIXEL_TRANSLUCENT
  23.127 -     * PERPIXEL_TRANSLUCENT} translucency must be supported
  23.128 -     * by the graphics device where this window is located <i>and</i>
  23.129 -     * <li>The window must not be in the full-screen mode (see {@link
  23.130 +     * PERPIXEL_TRANSLUCENT} translucency must be supported by the graphics
  23.131 +     * device where this window is located
  23.132 +     * <li>The window must be undecorated (see {@link Frame#setUndecorated}
  23.133 +     * and {@link Dialog#setUndecorated})
  23.134 +     * <li>The window must not be in full-screen mode (see {@link
  23.135       * GraphicsDevice#setFullScreenWindow(Window)})
  23.136       * </ul>
  23.137 -     * If a certain condition is not met at the time of calling this method,
  23.138 -     * the alpha component of the given background color will not effect the
  23.139 -     * mode of operation for this window.
  23.140 +     * <p>
  23.141 +     * If the alpha component of the requested background color is less than
  23.142 +     * {@code 1.0f}, and any of the above conditions are not met, the background
  23.143 +     * color of this window will not change, the alpha component of the given
  23.144 +     * background color will not affect the mode of operation for this window,
  23.145 +     * and either the {@code UnsupportedOperationException} or {@code
  23.146 +     * IllegalComponentStateException} will be thrown.
  23.147       * <p>
  23.148       * When the window is per-pixel translucent, the drawing sub-system
  23.149       * respects the alpha value of each individual pixel. If a pixel gets
  23.150       * painted with the alpha color component equal to zero, it becomes
  23.151 -     * visually transparent, if the alpha of the pixel is equal to 1.0f, the
  23.152 +     * visually transparent. If the alpha of the pixel is equal to 1.0f, the
  23.153       * pixel is fully opaque. Interim values of the alpha color component make
  23.154 -     * the pixel semi-transparent. In this mode the background of the window
  23.155 -     * gets painted with the alpha value of the given background color (meaning
  23.156 -     * that it is not painted at all if the alpha value of the argument of this
  23.157 -     * method is equal to zero.)
  23.158 +     * the pixel semi-transparent. In this mode, the background of the window
  23.159 +     * gets painted with the alpha value of the given background color. If the
  23.160 +     * alpha value of the argument of this method is equal to {@code 0}, the
  23.161 +     * background is not painted at all.
  23.162       * <p>
  23.163       * The actual level of translucency of a given pixel also depends on window
  23.164       * opacity (see {@link #setOpacity(float)}), as well as the current shape of
  23.165       * this window (see {@link #setShape(Shape)}).
  23.166       * <p>
  23.167 -     * Note that painting a pixel with the alpha value of 0 may or may not
  23.168 -     * disable the mouse event handling on this pixel. This is a
  23.169 -     * platform-dependent behavior. To make sure the mouse clicks do not get
  23.170 +     * Note that painting a pixel with the alpha value of {@code 0} may or may
  23.171 +     * not disable the mouse event handling on this pixel. This is a
  23.172 +     * platform-dependent behavior. To make sure the mouse events do not get
  23.173       * dispatched to a particular pixel, the pixel must be excluded from the
  23.174       * shape of the window.
  23.175       * <p>
  23.176 @@ -3685,17 +3711,21 @@
  23.177       * @param bgColor the color to become this window's background color.
  23.178       *
  23.179       * @throws IllegalComponentStateException if the alpha value of the given
  23.180 -     *     background color is less than 1.0f and the window is in
  23.181 +     *     background color is less than {@code 1.0f} and the window is decorated
  23.182 +     * @throws IllegalComponentStateException if the alpha value of the given
  23.183 +     *     background color is less than {@code 1.0f} and the window is in
  23.184       *     full-screen mode
  23.185       * @throws UnsupportedOperationException if the alpha value of the given
  23.186 -     *     background color is less than 1.0f and
  23.187 -     *     {@link GraphicsDevice.WindowTranslucency#PERPIXEL_TRANSLUCENT
  23.188 +     *     background color is less than {@code 1.0f} and {@link
  23.189 +     *     GraphicsDevice.WindowTranslucency#PERPIXEL_TRANSLUCENT
  23.190       *     PERPIXEL_TRANSLUCENT} translucency is not supported
  23.191       *
  23.192       * @see Window#getBackground
  23.193       * @see Window#isOpaque
  23.194       * @see Window#setOpacity(float)
  23.195       * @see Window#setShape(Shape)
  23.196 +     * @see Frame#isUndecorated
  23.197 +     * @see Dialog#isUndecorated
  23.198       * @see GraphicsDevice.WindowTranslucency
  23.199       * @see GraphicsDevice#isWindowTranslucencySupported(GraphicsDevice.WindowTranslucency)
  23.200       * @see GraphicsConfiguration#isTranslucencyCapable()
  23.201 @@ -3739,7 +3769,7 @@
  23.202       * <p>
  23.203       * The method returns {@code false} if the background color of the window
  23.204       * is not {@code null} and the alpha component of the color is less than
  23.205 -     * 1.0f. The method returns {@code true} otherwise.
  23.206 +     * {@code 1.0f}. The method returns {@code true} otherwise.
  23.207       *
  23.208       * @return {@code true} if the window is opaque, {@code false} otherwise
  23.209       *
    24.1 --- a/src/share/classes/java/awt/font/NumericShaper.java	Tue Nov 30 09:57:47 2010 -0800
    24.2 +++ b/src/share/classes/java/awt/font/NumericShaper.java	Wed Dec 08 00:35:33 2010 -0800
    24.3 @@ -1,5 +1,5 @@
    24.4  /*
    24.5 - * Copyright (c) 2000, 2009, Oracle and/or its affiliates. All rights reserved.
    24.6 + * Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved.
    24.7   * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
    24.8   *
    24.9   * This code is free software; you can redistribute it and/or modify it
   24.10 @@ -262,7 +262,23 @@
   24.11          /**
   24.12           * The Cham range with the Cham digits.
   24.13           */
   24.14 -        CHAM            ('\uaa50', '\uaa00', '\uaa60');
   24.15 +        CHAM            ('\uaa50', '\uaa00', '\uaa60'),
   24.16 +        /**
   24.17 +         * The Tai Tham Hora range with the Tai Tham Hora digits.
   24.18 +         */
   24.19 +        TAI_THAM_HORA   ('\u1a80', '\u1a20', '\u1ab0'),
   24.20 +        /**
   24.21 +         * The Tai Tham Tham range with the Tai Tham Tham digits.
   24.22 +         */
   24.23 +        TAI_THAM_THAM   ('\u1a90', '\u1a20', '\u1ab0'),
   24.24 +        /**
   24.25 +         * The Javanese range with the Javanese digits.
   24.26 +         */
   24.27 +        JAVANESE        ('\ua9d0', '\ua980', '\ua9e0'),
   24.28 +        /**
   24.29 +         * The Meetei Mayek range with the Meetei Mayek digits.
   24.30 +         */
   24.31 +        MEETEI_MAYEK    ('\uabf0', '\uabc0', '\uac00');
   24.32  
   24.33          private static int toRangeIndex(Range script) {
   24.34              int index = script.ordinal();
   24.35 @@ -592,10 +608,16 @@
   24.36          0x07a6, 0x07b1,
   24.37          0x07eb, 0x07f4,
   24.38          0x07f6, 0x07fa,
   24.39 -        0x0901, 0x0903,
   24.40 +        0x0816, 0x081a,
   24.41 +        0x081b, 0x0824,
   24.42 +        0x0825, 0x0828,
   24.43 +        0x0829, 0x0830,
   24.44 +        0x0859, 0x085e,
   24.45 +        0x0900, 0x0903,
   24.46 +        0x093a, 0x093b,
   24.47          0x093c, 0x093d,
   24.48          0x0941, 0x0949,
   24.49 -        0x094d, 0x0950,
   24.50 +        0x094d, 0x094e,
   24.51          0x0951, 0x0958,
   24.52          0x0962, 0x0964,
   24.53          0x0981, 0x0982,
   24.54 @@ -604,7 +626,7 @@
   24.55          0x09cd, 0x09ce,
   24.56          0x09e2, 0x09e6,
   24.57          0x09f2, 0x09f4,
   24.58 -        0x0a01, 0x0a03,
   24.59 +        0x09fb, 0x0a03,
   24.60          0x0a3c, 0x0a3e,
   24.61          0x0a41, 0x0a59,
   24.62          0x0a70, 0x0a72,
   24.63 @@ -630,9 +652,8 @@
   24.64          0x0cbc, 0x0cbd,
   24.65          0x0ccc, 0x0cd5,
   24.66          0x0ce2, 0x0ce6,
   24.67 -        0x0cf1, 0x0d02,
   24.68          0x0d41, 0x0d46,
   24.69 -        0x0d4d, 0x0d57,
   24.70 +        0x0d4d, 0x0d4e,
   24.71          0x0d62, 0x0d66,
   24.72          0x0dca, 0x0dcf,
   24.73          0x0dd2, 0x0dd8,
   24.74 @@ -649,7 +670,7 @@
   24.75          0x0f71, 0x0f7f,
   24.76          0x0f80, 0x0f85,
   24.77          0x0f86, 0x0f88,
   24.78 -        0x0f90, 0x0fbe,
   24.79 +        0x0f8d, 0x0fbe,
   24.80          0x0fc6, 0x0fc7,
   24.81          0x102d, 0x1031,
   24.82          0x1032, 0x1038,
   24.83 @@ -661,8 +682,10 @@
   24.84          0x1082, 0x1083,
   24.85          0x1085, 0x1087,
   24.86          0x108d, 0x108e,
   24.87 -        0x135f, 0x1360,
   24.88 +        0x109d, 0x109e,
   24.89 +        0x135d, 0x1360,
   24.90          0x1390, 0x13a0,
   24.91 +        0x1400, 0x1401,
   24.92          0x1680, 0x1681,
   24.93          0x169b, 0x16a0,
   24.94          0x1712, 0x1720,
   24.95 @@ -682,6 +705,11 @@
   24.96          0x1939, 0x1946,
   24.97          0x19de, 0x1a00,
   24.98          0x1a17, 0x1a19,
   24.99 +        0x1a56, 0x1a57,
  24.100 +        0x1a58, 0x1a61,
  24.101 +        0x1a62, 0x1a63,
  24.102 +        0x1a65, 0x1a6d,
  24.103 +        0x1a73, 0x1a80,
  24.104          0x1b00, 0x1b04,
  24.105          0x1b34, 0x1b35,
  24.106          0x1b36, 0x1b3b,
  24.107 @@ -691,8 +719,16 @@
  24.108          0x1b80, 0x1b82,
  24.109          0x1ba2, 0x1ba6,
  24.110          0x1ba8, 0x1baa,
  24.111 +        0x1be6, 0x1be7,
  24.112 +        0x1be8, 0x1bea,
  24.113 +        0x1bed, 0x1bee,
  24.114 +        0x1bef, 0x1bf2,
  24.115          0x1c2c, 0x1c34,
  24.116          0x1c36, 0x1c3b,
  24.117 +        0x1cd0, 0x1cd3,
  24.118 +        0x1cd4, 0x1ce1,
  24.119 +        0x1ce2, 0x1ce9,
  24.120 +        0x1ced, 0x1cee,
  24.121          0x1dc0, 0x1e00,
  24.122          0x1fbd, 0x1fbe,
  24.123          0x1fbf, 0x1fc2,
  24.124 @@ -716,14 +752,16 @@
  24.125          0x213a, 0x213c,
  24.126          0x2140, 0x2145,
  24.127          0x214a, 0x214e,
  24.128 -        0x2153, 0x2160,
  24.129 -        0x2190, 0x2336,
  24.130 +        0x2150, 0x2160,
  24.131 +        0x2189, 0x2336,
  24.132          0x237b, 0x2395,
  24.133          0x2396, 0x249c,
  24.134          0x24ea, 0x26ac,
  24.135          0x26ad, 0x2800,
  24.136          0x2900, 0x2c00,
  24.137 -        0x2ce5, 0x2d00,
  24.138 +        0x2ce5, 0x2ceb,
  24.139 +        0x2cef, 0x2d00,
  24.140 +        0x2d7f, 0x2d80,
  24.141          0x2de0, 0x3005,
  24.142          0x3008, 0x3021,
  24.143          0x302a, 0x3031,
  24.144 @@ -742,25 +780,40 @@
  24.145          0x33de, 0x33e0,
  24.146          0x33ff, 0x3400,
  24.147          0x4dc0, 0x4e00,
  24.148 -        0xa490, 0xa500,
  24.149 +        0xa490, 0xa4d0,
  24.150          0xa60d, 0xa610,
  24.151          0xa66f, 0xa680,
  24.152 +        0xa6f0, 0xa6f2,
  24.153          0xa700, 0xa722,
  24.154          0xa788, 0xa789,
  24.155          0xa802, 0xa803,
  24.156          0xa806, 0xa807,
  24.157          0xa80b, 0xa80c,
  24.158          0xa825, 0xa827,
  24.159 -        0xa828, 0xa840,
  24.160 +        0xa828, 0xa830,
  24.161 +        0xa838, 0xa840,
  24.162          0xa874, 0xa880,
  24.163          0xa8c4, 0xa8ce,
  24.164 +        0xa8e0, 0xa8f2,
  24.165          0xa926, 0xa92e,
  24.166          0xa947, 0xa952,
  24.167 +        0xa980, 0xa983,
  24.168 +        0xa9b3, 0xa9b4,
  24.169 +        0xa9b6, 0xa9ba,
  24.170 +        0xa9bc, 0xa9bd,
  24.171          0xaa29, 0xaa2f,
  24.172          0xaa31, 0xaa33,
  24.173          0xaa35, 0xaa40,
  24.174          0xaa43, 0xaa44,
  24.175          0xaa4c, 0xaa4d,
  24.176 +        0xaab0, 0xaab1,
  24.177 +        0xaab2, 0xaab5,
  24.178 +        0xaab7, 0xaab9,
  24.179 +        0xaabe, 0xaac0,
  24.180 +        0xaac1, 0xaac2,
  24.181 +        0xabe5, 0xabe6,
  24.182 +        0xabe8, 0xabe9,
  24.183 +        0xabed, 0xabf0,
  24.184          0xfb1e, 0xfb1f,
  24.185          0xfb29, 0xfb2a,
  24.186          0xfd3e, 0xfd50,
  24.187 @@ -775,12 +828,28 @@
  24.188          0x1091f, 0x10920,
  24.189          0x10a01, 0x10a10,
  24.190          0x10a38, 0x10a40,
  24.191 +        0x10b39, 0x10b40,
  24.192 +        0x10e60, 0x11000,
  24.193 +        0x11001, 0x11002,
  24.194 +        0x11038, 0x11047,
  24.195 +        0x11052, 0x11066,
  24.196 +        0x11080, 0x11082,
  24.197 +        0x110b3, 0x110b7,
  24.198 +        0x110b9, 0x110bb,
  24.199          0x1d167, 0x1d16a,
  24.200          0x1d173, 0x1d183,
  24.201          0x1d185, 0x1d18c,
  24.202          0x1d1aa, 0x1d1ae,
  24.203          0x1d200, 0x1d360,
  24.204 -        0x1d7ce, 0x20000,
  24.205 +        0x1d6db, 0x1d6dc,
  24.206 +        0x1d715, 0x1d716,
  24.207 +        0x1d74f, 0x1d750,
  24.208 +        0x1d789, 0x1d78a,
  24.209 +        0x1d7c3, 0x1d7c4,
  24.210 +        0x1d7ce, 0x1f110,
  24.211 +        0x1f300, 0x1f48c,
  24.212 +        0x1f48d, 0x1f524,
  24.213 +        0x1f525, 0x20000,
  24.214          0xe0001, 0xf0000,
  24.215          0x10fffe, 0x10ffff // sentinel
  24.216      };
  24.217 @@ -947,6 +1016,14 @@
  24.218              && rangeSet.contains(Range.ARABIC)) {
  24.219              rangeSet.remove(Range.ARABIC);
  24.220          }
  24.221 +
  24.222 +        // As well as the above case, give precedance to TAI_THAM_THAM if both
  24.223 +        // TAI_THAM_HORA and TAI_THAM_THAM are specified.
  24.224 +        if (rangeSet.contains(Range.TAI_THAM_THAM)
  24.225 +            && rangeSet.contains(Range.TAI_THAM_HORA)) {
  24.226 +            rangeSet.remove(Range.TAI_THAM_HORA);
  24.227 +        }
  24.228 +
  24.229          rangeArray = rangeSet.toArray(new Range[rangeSet.size()]);
  24.230          if (rangeArray.length > BSEARCH_THRESHOLD) {
  24.231              // sort rangeArray for binary search
    25.1 --- a/src/share/classes/java/beans/Introspector.java	Tue Nov 30 09:57:47 2010 -0800
    25.2 +++ b/src/share/classes/java/beans/Introspector.java	Wed Dec 08 00:35:33 2010 -0800
    25.3 @@ -29,6 +29,8 @@
    25.4  import com.sun.beans.finder.BeanInfoFinder;
    25.5  import com.sun.beans.finder.ClassFinder;
    25.6  
    25.7 +import java.awt.Component;
    25.8 +
    25.9  import java.lang.ref.Reference;
   25.10  import java.lang.ref.SoftReference;
   25.11  import java.lang.reflect.Method;
   25.12 @@ -39,6 +41,7 @@
   25.13  import java.util.HashMap;
   25.14  import java.util.Iterator;
   25.15  import java.util.EventListener;
   25.16 +import java.util.EventObject;
   25.17  import java.util.List;
   25.18  import java.util.TreeMap;
   25.19  import java.util.WeakHashMap;
   25.20 @@ -1234,7 +1237,23 @@
   25.21              }
   25.22          }
   25.23          // OK, fabricate a default BeanDescriptor.
   25.24 -        return (new BeanDescriptor(beanClass));
   25.25 +        return new BeanDescriptor(this.beanClass, findCustomizerClass(this.beanClass));
   25.26 +    }
   25.27 +
   25.28 +    private static Class<?> findCustomizerClass(Class<?> type) {
   25.29 +        String name = type.getName() + "Customizer";
   25.30 +        try {
   25.31 +            type = ClassFinder.findClass(name, type.getClassLoader());
   25.32 +            // Each customizer should inherit java.awt.Component and implement java.beans.Customizer
   25.33 +            // according to the section 9.3 of JavaBeans specification
   25.34 +            if (Component.class.isAssignableFrom(type) && Customizer.class.isAssignableFrom(type)) {
   25.35 +                return type;
   25.36 +            }
   25.37 +        }
   25.38 +        catch (Exception exception) {
   25.39 +            // ignore any exceptions
   25.40 +        }
   25.41 +        return null;
   25.42      }
   25.43  
   25.44      private boolean isEventHandler(Method m) {
   25.45 @@ -1244,10 +1263,7 @@
   25.46          if (argTypes.length != 1) {
   25.47              return false;
   25.48          }
   25.49 -        if (isSubclass(argTypes[0], java.util.EventObject.class)) {
   25.50 -            return true;
   25.51 -        }
   25.52 -        return false;
   25.53 +        return isSubclass(argTypes[0], EventObject.class);
   25.54      }
   25.55  
   25.56      /*
    26.1 --- a/src/share/classes/java/io/BufferedInputStream.java	Tue Nov 30 09:57:47 2010 -0800
    26.2 +++ b/src/share/classes/java/io/BufferedInputStream.java	Wed Dec 08 00:35:33 2010 -0800
    26.3 @@ -395,7 +395,11 @@
    26.4       *                          or an I/O error occurs.
    26.5       */
    26.6      public synchronized int available() throws IOException {
    26.7 -        return getInIfOpen().available() + (count - pos);
    26.8 +        int n = count - pos;
    26.9 +        int avail = getInIfOpen().available();
   26.10 +        return n > (Integer.MAX_VALUE - avail)
   26.11 +                    ? Integer.MAX_VALUE
   26.12 +                    : n + avail;
   26.13      }
   26.14  
   26.15      /**
    27.1 --- a/src/share/classes/java/io/PushbackInputStream.java	Tue Nov 30 09:57:47 2010 -0800
    27.2 +++ b/src/share/classes/java/io/PushbackInputStream.java	Wed Dec 08 00:35:33 2010 -0800
    27.3 @@ -273,7 +273,11 @@
    27.4       */
    27.5      public int available() throws IOException {
    27.6          ensureOpen();
    27.7 -        return (buf.length - pos) + super.available();
    27.8 +        int n = buf.length - pos;
    27.9 +        int avail = super.available();
   27.10 +        return n > (Integer.MAX_VALUE - avail)
   27.11 +                    ? Integer.MAX_VALUE
   27.12 +                    : n + avail;
   27.13      }
   27.14  
   27.15      /**
    28.1 --- a/src/share/classes/java/lang/Character.java	Tue Nov 30 09:57:47 2010 -0800
    28.2 +++ b/src/share/classes/java/lang/Character.java	Wed Dec 08 00:35:33 2010 -0800
    28.3 @@ -1,5 +1,5 @@
    28.4  /*
    28.5 - * Copyright (c) 2002, 2009, Oracle and/or its affiliates. All rights reserved.
    28.6 + * Copyright (c) 2002, 2010, Oracle and/or its affiliates. All rights reserved.
    28.7   * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
    28.8   *
    28.9   * This code is free software; you can redistribute it and/or modify it
   28.10 @@ -40,7 +40,7 @@
   28.11   * a character's category (lowercase letter, digit, etc.) and for converting
   28.12   * characters from uppercase to lowercase and vice versa.
   28.13   * <p>
   28.14 - * Character information is based on the Unicode Standard, version 5.1.0.
   28.15 + * Character information is based on the Unicode Standard, version 6.0.0.
   28.16   * <p>
   28.17   * The methods and data of class <code>Character</code> are defined by
   28.18   * the information in the <i>UnicodeData</i> file that is part of the
   28.19 @@ -910,7 +910,8 @@
   28.20                               "GENERALPUNCTUATION");
   28.21  
   28.22          /**
   28.23 -         * Constant for the "Superscripts and Subscripts" Unicode character block.
   28.24 +         * Constant for the "Superscripts and Subscripts" Unicode character
   28.25 +         * block.
   28.26           * @since 1.2
   28.27           */
   28.28          public static final UnicodeBlock SUPERSCRIPTS_AND_SUBSCRIPTS =
   28.29 @@ -928,7 +929,8 @@
   28.30                               "CURRENCYSYMBOLS");
   28.31  
   28.32          /**
   28.33 -         * Constant for the "Combining Diacritical Marks for Symbols" Unicode character block.
   28.34 +         * Constant for the "Combining Diacritical Marks for Symbols" Unicode
   28.35 +         * character block.
   28.36           * <p>
   28.37           * This block was previously known as "Combining Marks for Symbols".
   28.38           * @since 1.2
   28.39 @@ -1145,7 +1147,8 @@
   28.40                               "PRIVATEUSEAREA");
   28.41  
   28.42          /**
   28.43 -         * Constant for the "CJK Compatibility Ideographs" Unicode character block.
   28.44 +         * Constant for the "CJK Compatibility Ideographs" Unicode character
   28.45 +         * block.
   28.46           * @since 1.2
   28.47           */
   28.48          public static final UnicodeBlock CJK_COMPATIBILITY_IDEOGRAPHS =
   28.49 @@ -1163,7 +1166,8 @@
   28.50                               "ALPHABETICPRESENTATIONFORMS");
   28.51  
   28.52          /**
   28.53 -         * Constant for the "Arabic Presentation Forms-A" Unicode character block.
   28.54 +         * Constant for the "Arabic Presentation Forms-A" Unicode character
   28.55 +         * block.
   28.56           * @since 1.2
   28.57           */
   28.58          public static final UnicodeBlock ARABIC_PRESENTATION_FORMS_A =
   28.59 @@ -1208,7 +1212,8 @@
   28.60                               "ARABICPRESENTATIONFORMS-B");
   28.61  
   28.62          /**
   28.63 -         * Constant for the "Halfwidth and Fullwidth Forms" Unicode character block.
   28.64 +         * Constant for the "Halfwidth and Fullwidth Forms" Unicode character
   28.65 +         * block.
   28.66           * @since 1.2
   28.67           */
   28.68          public static final UnicodeBlock HALFWIDTH_AND_FULLWIDTH_FORMS =
   28.69 @@ -1386,7 +1391,6 @@
   28.70                               "YI RADICALS",
   28.71                               "YIRADICALS");
   28.72  
   28.73 -
   28.74          /**
   28.75           * Constant for the "Cyrillic Supplementary" Unicode character block.
   28.76           * @since 1.5
   28.77 @@ -1488,7 +1492,8 @@
   28.78                               "SUPPLEMENTALARROWS-B");
   28.79  
   28.80          /**
   28.81 -         * Constant for the "Miscellaneous Mathematical Symbols-B" Unicode character block.
   28.82 +         * Constant for the "Miscellaneous Mathematical Symbols-B" Unicode
   28.83 +         * character block.
   28.84           * @since 1.5
   28.85           */
   28.86          public static final UnicodeBlock MISCELLANEOUS_MATHEMATICAL_SYMBOLS_B =
   28.87 @@ -1497,7 +1502,8 @@
   28.88                               "MISCELLANEOUSMATHEMATICALSYMBOLS-B");
   28.89  
   28.90          /**
   28.91 -         * Constant for the "Supplemental Mathematical Operators" Unicode character block.
   28.92 +         * Constant for the "Supplemental Mathematical Operators" Unicode
   28.93 +         * character block.
   28.94           * @since 1.5
   28.95           */
   28.96          public static final UnicodeBlock SUPPLEMENTAL_MATHEMATICAL_OPERATORS =
   28.97 @@ -1506,7 +1512,8 @@
   28.98                               "SUPPLEMENTALMATHEMATICALOPERATORS");
   28.99  
  28.100          /**
  28.101 -         * Constant for the "Miscellaneous Symbols and Arrows" Unicode character block.
  28.102 +         * Constant for the "Miscellaneous Symbols and Arrows" Unicode character
  28.103 +         * block.
  28.104           * @since 1.5
  28.105           */
  28.106          public static final UnicodeBlock MISCELLANEOUS_SYMBOLS_AND_ARROWS =
  28.107 @@ -1515,7 +1522,8 @@
  28.108                               "MISCELLANEOUSSYMBOLSANDARROWS");
  28.109  
  28.110          /**
  28.111 -         * Constant for the "Katakana Phonetic Extensions" Unicode character block.
  28.112 +         * Constant for the "Katakana Phonetic Extensions" Unicode character
  28.113 +         * block.
  28.114           * @since 1.5
  28.115           */
  28.116          public static final UnicodeBlock KATAKANA_PHONETIC_EXTENSIONS =
  28.117 @@ -1649,7 +1657,8 @@
  28.118                               "TAIXUANJINGSYMBOLS");
  28.119  
  28.120          /**
  28.121 -         * Constant for the "Mathematical Alphanumeric Symbols" Unicode character block.
  28.122 +         * Constant for the "Mathematical Alphanumeric Symbols" Unicode
  28.123 +         * character block.
  28.124           * @since 1.5
  28.125           */
  28.126          public static final UnicodeBlock MATHEMATICAL_ALPHANUMERIC_SYMBOLS =
  28.127 @@ -1658,7 +1667,8 @@
  28.128                               "MATHEMATICALALPHANUMERICSYMBOLS");
  28.129  
  28.130          /**
  28.131 -         * Constant for the "CJK Unified Ideographs Extension B" Unicode character block.
  28.132 +         * Constant for the "CJK Unified Ideographs Extension B" Unicode
  28.133 +         * character block.
  28.134           * @since 1.5
  28.135           */
  28.136          public static final UnicodeBlock CJK_UNIFIED_IDEOGRAPHS_EXTENSION_B =
  28.137 @@ -1683,7 +1693,8 @@
  28.138              new UnicodeBlock("TAGS");
  28.139  
  28.140          /**
  28.141 -         * Constant for the "Variation Selectors Supplement" Unicode character block.
  28.142 +         * Constant for the "Variation Selectors Supplement" Unicode character
  28.143 +         * block.
  28.144           * @since 1.5
  28.145           */
  28.146          public static final UnicodeBlock VARIATION_SELECTORS_SUPPLEMENT =
  28.147 @@ -1692,7 +1703,8 @@
  28.148                               "VARIATIONSELECTORSSUPPLEMENT");
  28.149  
  28.150          /**
  28.151 -         * Constant for the "Supplementary Private Use Area-A" Unicode character block.
  28.152 +         * Constant for the "Supplementary Private Use Area-A" Unicode character
  28.153 +         * block.
  28.154           * @since 1.5
  28.155           */
  28.156          public static final UnicodeBlock SUPPLEMENTARY_PRIVATE_USE_AREA_A =
  28.157 @@ -1701,7 +1713,8 @@
  28.158                               "SUPPLEMENTARYPRIVATEUSEAREA-A");
  28.159  
  28.160          /**
  28.161 -         * Constant for the "Supplementary Private Use Area-B" Unicode character block.
  28.162 +         * Constant for the "Supplementary Private Use Area-B" Unicode character
  28.163 +         * block.
  28.164           * @since 1.5
  28.165           */
  28.166          public static final UnicodeBlock SUPPLEMENTARY_PRIVATE_USE_AREA_B =
  28.167 @@ -1722,9 +1735,10 @@
  28.168                               "HIGHSURROGATES");
  28.169  
  28.170          /**
  28.171 -         * Constant for the "High Private Use Surrogates" Unicode character block.
  28.172 -         * This block represents codepoint values in the private use high surrogate
  28.173 -         * range: U+DB80 through U+DBFF
  28.174 +         * Constant for the "High Private Use Surrogates" Unicode character
  28.175 +         * block.
  28.176 +         * This block represents codepoint values in the private use high
  28.177 +         * surrogate range: U+DB80 through U+DBFF
  28.178           *
  28.179           * @since 1.5
  28.180           */
  28.181 @@ -1762,6 +1776,20 @@
  28.182              new UnicodeBlock("NKO");
  28.183  
  28.184          /**
  28.185 +         * Constant for the "Samaritan" Unicode character block.
  28.186 +         * @since 1.7
  28.187 +         */
  28.188 +        public static final UnicodeBlock SAMARITAN =
  28.189 +            new UnicodeBlock("SAMARITAN");
  28.190 +
  28.191 +        /**
  28.192 +         * Constant for the "Mandaic" Unicode character block.
  28.193 +         * @since 1.7
  28.194 +         */
  28.195 +        public static final UnicodeBlock MANDAIC =
  28.196 +            new UnicodeBlock("MANDAIC");
  28.197 +
  28.198 +        /**
  28.199           * Constant for the "Ethiopic Supplement" Unicode character block.
  28.200           * @since 1.7
  28.201           */
  28.202 @@ -1771,6 +1799,16 @@
  28.203                               "ETHIOPICSUPPLEMENT");
  28.204  
  28.205          /**
  28.206 +         * Constant for the "Unified Canadian Aboriginal Syllabics Extended"
  28.207 +         * Unicode character block.
  28.208 +         * @since 1.7
  28.209 +         */
  28.210 +        public static final UnicodeBlock UNIFIED_CANADIAN_ABORIGINAL_SYLLABICS_EXTENDED =
  28.211 +            new UnicodeBlock("UNIFIED_CANADIAN_ABORIGINAL_SYLLABICS_EXTENDED",
  28.212 +                             "UNIFIED CANADIAN ABORIGINAL SYLLABICS EXTENDED",
  28.213 +                             "UNIFIEDCANADIANABORIGINALSYLLABICSEXTENDED");
  28.214 +
  28.215 +        /**
  28.216           * Constant for the "New Tai Lue" Unicode character block.
  28.217           * @since 1.7
  28.218           */
  28.219 @@ -1787,6 +1825,15 @@
  28.220              new UnicodeBlock("BUGINESE");
  28.221  
  28.222          /**
  28.223 +         * Constant for the "Tai Tham" Unicode character block.
  28.224 +         * @since 1.7
  28.225 +         */
  28.226 +        public static final UnicodeBlock TAI_THAM =
  28.227 +            new UnicodeBlock("TAI_THAM",
  28.228 +                             "TAI THAM",
  28.229 +                             "TAITHAM");
  28.230 +
  28.231 +        /**
  28.232           * Constant for the "Balinese" Unicode character block.
  28.233           * @since 1.7
  28.234           */
  28.235 @@ -1801,6 +1848,13 @@
  28.236              new UnicodeBlock("SUNDANESE");
  28.237  
  28.238          /**
  28.239 +         * Constant for the "Batak" Unicode character block.
  28.240 +         * @since 1.7
  28.241 +         */
  28.242 +        public static final UnicodeBlock BATAK =
  28.243 +            new UnicodeBlock("BATAK");
  28.244 +
  28.245 +        /**
  28.246           * Constant for the "Lepcha" Unicode character block.
  28.247           * @since 1.7
  28.248           */
  28.249 @@ -1817,6 +1871,15 @@
  28.250                               "OLCHIKI");
  28.251  
  28.252          /**
  28.253 +         * Constant for the "Vedic Extensions" Unicode character block.
  28.254 +         * @since 1.7
  28.255 +         */
  28.256 +        public static final UnicodeBlock VEDIC_EXTENSIONS =
  28.257 +            new UnicodeBlock("VEDIC_EXTENSIONS",
  28.258 +                             "VEDIC EXTENSIONS",
  28.259 +                             "VEDICEXTENSIONS");
  28.260 +
  28.261 +        /**
  28.262           * Constant for the "Phonetic Extensions Supplement" Unicode character
  28.263           * block.
  28.264           * @since 1.7
  28.265 @@ -1912,6 +1975,13 @@
  28.266                               "CJKSTROKES");
  28.267  
  28.268          /**
  28.269 +         * Constant for the "Lisu" Unicode character block.
  28.270 +         * @since 1.7
  28.271 +         */
  28.272 +        public static final UnicodeBlock LISU =
  28.273 +            new UnicodeBlock("LISU");
  28.274 +
  28.275 +        /**
  28.276           * Constant for the "Vai" Unicode character block.
  28.277           * @since 1.7
  28.278           */
  28.279 @@ -1928,6 +1998,13 @@
  28.280                               "CYRILLICEXTENDED-B");
  28.281  
  28.282          /**
  28.283 +         * Constant for the "Bamum" Unicode character block.
  28.284 +         * @since 1.7
  28.285 +         */
  28.286 +        public static final UnicodeBlock BAMUM =
  28.287 +            new UnicodeBlock("BAMUM");
  28.288 +
  28.289 +        /**
  28.290           * Constant for the "Modifier Tone Letters" Unicode character block.
  28.291           * @since 1.7
  28.292           */
  28.293 @@ -1955,6 +2032,15 @@
  28.294                               "SYLOTINAGRI");
  28.295  
  28.296          /**
  28.297 +         * Constant for the "Common Indic Number Forms" Unicode character block.
  28.298 +         * @since 1.7
  28.299 +         */
  28.300 +        public static final UnicodeBlock COMMON_INDIC_NUMBER_FORMS =
  28.301 +            new UnicodeBlock("COMMON_INDIC_NUMBER_FORMS",
  28.302 +                             "COMMON INDIC NUMBER FORMS",
  28.303 +                             "COMMONINDICNUMBERFORMS");
  28.304 +
  28.305 +        /**
  28.306           * Constant for the "Phags-pa" Unicode character block.
  28.307           * @since 1.7
  28.308           */
  28.309 @@ -1970,6 +2056,15 @@
  28.310              new UnicodeBlock("SAURASHTRA");
  28.311  
  28.312          /**
  28.313 +         * Constant for the "Devanagari Extended" Unicode character block.
  28.314 +         * @since 1.7
  28.315 +         */
  28.316 +        public static final UnicodeBlock DEVANAGARI_EXTENDED =
  28.317 +            new UnicodeBlock("DEVANAGARI_EXTENDED",
  28.318 +                             "DEVANAGARI EXTENDED",
  28.319 +                             "DEVANAGARIEXTENDED");
  28.320 +
  28.321 +        /**
  28.322           * Constant for the "Kayah Li" Unicode character block.
  28.323           * @since 1.7
  28.324           */
  28.325 @@ -1986,6 +2081,22 @@
  28.326              new UnicodeBlock("REJANG");
  28.327  
  28.328          /**
  28.329 +         * Constant for the "Hangul Jamo Extended-A" Unicode character block.
  28.330 +         * @since 1.7
  28.331 +         */
  28.332 +        public static final UnicodeBlock HANGUL_JAMO_EXTENDED_A =
  28.333 +            new UnicodeBlock("HANGUL_JAMO_EXTENDED_A",
  28.334 +                             "HANGUL JAMO EXTENDED-A",
  28.335 +                             "HANGULJAMOEXTENDED-A");
  28.336 +
  28.337 +        /**
  28.338 +         * Constant for the "Javanese" Unicode character block.
  28.339 +         * @since 1.7
  28.340 +         */
  28.341 +        public static final UnicodeBlock JAVANESE =
  28.342 +            new UnicodeBlock("JAVANESE");
  28.343 +
  28.344 +        /**
  28.345           * Constant for the "Cham" Unicode character block.
  28.346           * @since 1.7
  28.347           */
  28.348 @@ -1993,6 +2104,51 @@
  28.349              new UnicodeBlock("CHAM");
  28.350  
  28.351          /**
  28.352 +         * Constant for the "Myanmar Extended-A" Unicode character block.
  28.353 +         * @since 1.7
  28.354 +         */
  28.355 +        public static final UnicodeBlock MYANMAR_EXTENDED_A =
  28.356 +            new UnicodeBlock("MYANMAR_EXTENDED_A",
  28.357 +                             "MYANMAR EXTENDED-A",
  28.358 +                             "MYANMAREXTENDED-A");
  28.359 +
  28.360 +        /**
  28.361 +         * Constant for the "Tai Viet" Unicode character block.
  28.362 +         * @since 1.7
  28.363 +         */
  28.364 +        public static final UnicodeBlock TAI_VIET =
  28.365 +            new UnicodeBlock("TAI_VIET",
  28.366 +                             "TAI VIET",
  28.367 +                             "TAIVIET");
  28.368 +
  28.369 +        /**
  28.370 +         * Constant for the "Ethiopic Extended-A" Unicode character block.
  28.371 +         * @since 1.7
  28.372 +         */
  28.373 +        public static final UnicodeBlock ETHIOPIC_EXTENDED_A =
  28.374 +            new UnicodeBlock("ETHIOPIC_EXTENDED_A",
  28.375 +                             "ETHIOPIC EXTENDED-A",
  28.376 +                             "ETHIOPICEXTENDED-A");
  28.377 +
  28.378 +        /**
  28.379 +         * Constant for the "Meetei Mayek" Unicode character block.
  28.380 +         * @since 1.7
  28.381 +         */
  28.382 +        public static final UnicodeBlock MEETEI_MAYEK =
  28.383 +            new UnicodeBlock("MEETEI_MAYEK",
  28.384 +                             "MEETEI MAYEK",
  28.385 +                             "MEETEIMAYEK");
  28.386 +
  28.387 +        /**
  28.388 +         * Constant for the "Hangul Jamo Extended-B" Unicode character block.
  28.389 +         * @since 1.7
  28.390 +         */
  28.391 +        public static final UnicodeBlock HANGUL_JAMO_EXTENDED_B =
  28.392 +            new UnicodeBlock("HANGUL_JAMO_EXTENDED_B",
  28.393 +                             "HANGUL JAMO EXTENDED-B",
  28.394 +                             "HANGULJAMOEXTENDED-B");
  28.395 +
  28.396 +        /**
  28.397           * Constant for the "Vertical Forms" Unicode character block.
  28.398           * @since 1.7
  28.399           */
  28.400 @@ -2052,6 +2208,15 @@
  28.401                               "OLDPERSIAN");
  28.402  
  28.403          /**
  28.404 +         * Constant for the "Imperial Aramaic" Unicode character block.
  28.405 +         * @since 1.7
  28.406 +         */
  28.407 +        public static final UnicodeBlock IMPERIAL_ARAMAIC =
  28.408 +            new UnicodeBlock("IMPERIAL_ARAMAIC",
  28.409 +                             "IMPERIAL ARAMAIC",
  28.410 +                             "IMPERIALARAMAIC");
  28.411 +
  28.412 +        /**
  28.413           * Constant for the "Phoenician" Unicode character block.
  28.414           * @since 1.7
  28.415           */
  28.416 @@ -2073,6 +2238,72 @@
  28.417              new UnicodeBlock("KHAROSHTHI");
  28.418  
  28.419          /**
  28.420 +         * Constant for the "Old South Arabian" Unicode character block.
  28.421 +         * @since 1.7
  28.422 +         */
  28.423 +        public static final UnicodeBlock OLD_SOUTH_ARABIAN =
  28.424 +            new UnicodeBlock("OLD_SOUTH_ARABIAN",
  28.425 +                             "OLD SOUTH ARABIAN",
  28.426 +                             "OLDSOUTHARABIAN");
  28.427 +
  28.428 +        /**
  28.429 +         * Constant for the "Avestan" Unicode character block.
  28.430 +         * @since 1.7
  28.431 +         */
  28.432 +        public static final UnicodeBlock AVESTAN =
  28.433 +            new UnicodeBlock("AVESTAN");
  28.434 +
  28.435 +        /**
  28.436 +         * Constant for the "Inscriptional Parthian" Unicode character block.
  28.437 +         * @since 1.7
  28.438 +         */
  28.439 +        public static final UnicodeBlock INSCRIPTIONAL_PARTHIAN =
  28.440 +            new UnicodeBlock("INSCRIPTIONAL_PARTHIAN",
  28.441 +                             "INSCRIPTIONAL PARTHIAN",
  28.442 +                             "INSCRIPTIONALPARTHIAN");
  28.443 +
  28.444 +        /**
  28.445 +         * Constant for the "Inscriptional Pahlavi" Unicode character block.
  28.446 +         * @since 1.7
  28.447 +         */
  28.448 +        public static final UnicodeBlock INSCRIPTIONAL_PAHLAVI =
  28.449 +            new UnicodeBlock("INSCRIPTIONAL_PAHLAVI",
  28.450 +                             "INSCRIPTIONAL PAHLAVI",
  28.451 +                             "INSCRIPTIONALPAHLAVI");
  28.452 +
  28.453 +        /**
  28.454 +         * Constant for the "Old Turkic" Unicode character block.
  28.455 +         * @since 1.7
  28.456 +         */
  28.457 +        public static final UnicodeBlock OLD_TURKIC =
  28.458 +            new UnicodeBlock("OLD_TURKIC",
  28.459 +                             "OLD TURKIC",
  28.460 +                             "OLDTURKIC");
  28.461 +
  28.462 +        /**
  28.463 +         * Constant for the "Rumi Numeral Symbols" Unicode character block.
  28.464 +         * @since 1.7
  28.465 +         */
  28.466 +        public static final UnicodeBlock RUMI_NUMERAL_SYMBOLS =
  28.467 +            new UnicodeBlock("RUMI_NUMERAL_SYMBOLS",
  28.468 +                             "RUMI NUMERAL SYMBOLS",
  28.469 +                             "RUMINUMERALSYMBOLS");
  28.470 +
  28.471 +        /**
  28.472 +         * Constant for the "Brahmi" Unicode character block.
  28.473 +         * @since 1.7
  28.474 +         */
  28.475 +        public static final UnicodeBlock BRAHMI =
  28.476 +            new UnicodeBlock("BRAHMI");
  28.477 +
  28.478 +        /**
  28.479 +         * Constant for the "Kaithi" Unicode character block.
  28.480 +         * @since 1.7
  28.481 +         */
  28.482 +        public static final UnicodeBlock KAITHI =
  28.483 +            new UnicodeBlock("KAITHI");
  28.484 +
  28.485 +        /**
  28.486           * Constant for the "Cuneiform" Unicode character block.
  28.487           * @since 1.7
  28.488           */
  28.489 @@ -2090,6 +2321,33 @@
  28.490                               "CUNEIFORMNUMBERSANDPUNCTUATION");
  28.491  
  28.492          /**
  28.493 +         * Constant for the "Egyptian Hieroglyphs" Unicode character block.
  28.494 +         * @since 1.7
  28.495 +         */
  28.496 +        public static final UnicodeBlock EGYPTIAN_HIEROGLYPHS =
  28.497 +            new UnicodeBlock("EGYPTIAN_HIEROGLYPHS",
  28.498 +                             "EGYPTIAN HIEROGLYPHS",
  28.499 +                             "EGYPTIANHIEROGLYPHS");
  28.500 +
  28.501 +        /**
  28.502 +         * Constant for the "Bamum Supplement" Unicode character block.
  28.503 +         * @since 1.7
  28.504 +         */
  28.505 +        public static final UnicodeBlock BAMUM_SUPPLEMENT =
  28.506 +            new UnicodeBlock("BAMUM_SUPPLEMENT",
  28.507 +                             "BAMUM SUPPLEMENT",
  28.508 +                             "BAMUMSUPPLEMENT");
  28.509 +
  28.510 +        /**
  28.511 +         * Constant for the "Kana Supplement" Unicode character block.
  28.512 +         * @since 1.7
  28.513 +         */
  28.514 +        public static final UnicodeBlock KANA_SUPPLEMENT =
  28.515 +            new UnicodeBlock("KANA_SUPPLEMENT",
  28.516 +                             "KANA SUPPLEMENT",
  28.517 +                             "KANASUPPLEMENT");
  28.518 +
  28.519 +        /**
  28.520           * Constant for the "Ancient Greek Musical Notation" Unicode character
  28.521           * block.
  28.522           * @since 1.7
  28.523 @@ -2126,6 +2384,90 @@
  28.524                               "DOMINO TILES",
  28.525                               "DOMINOTILES");
  28.526  
  28.527 +        /**
  28.528 +         * Constant for the "Playing Cards" Unicode character block.
  28.529 +         * @since 1.7
  28.530 +         */
  28.531 +        public static final UnicodeBlock PLAYING_CARDS =
  28.532 +            new UnicodeBlock("PLAYING_CARDS",
  28.533 +                             "PLAYING CARDS",
  28.534 +                             "PLAYINGCARDS");
  28.535 +
  28.536 +        /**
  28.537 +         * Constant for the "Enclosed Alphanumeric Supplement" Unicode character
  28.538 +         * block.
  28.539 +         * @since 1.7
  28.540 +         */
  28.541 +        public static final UnicodeBlock ENCLOSED_ALPHANUMERIC_SUPPLEMENT =
  28.542 +            new UnicodeBlock("ENCLOSED_ALPHANUMERIC_SUPPLEMENT",
  28.543 +                             "ENCLOSED ALPHANUMERIC SUPPLEMENT",
  28.544 +                             "ENCLOSEDALPHANUMERICSUPPLEMENT");
  28.545 +
  28.546 +        /**
  28.547 +         * Constant for the "Enclosed Ideographic Supplement" Unicode character
  28.548 +         * block.
  28.549 +         * @since 1.7
  28.550 +         */
  28.551 +        public static final UnicodeBlock ENCLOSED_IDEOGRAPHIC_SUPPLEMENT =
  28.552 +            new UnicodeBlock("ENCLOSED_IDEOGRAPHIC_SUPPLEMENT",
  28.553 +                             "ENCLOSED IDEOGRAPHIC SUPPLEMENT",
  28.554 +                             "ENCLOSEDIDEOGRAPHICSUPPLEMENT");
  28.555 +
  28.556 +        /**
  28.557 +         * Constant for the "Miscellaneous Symbols And Pictographs" Unicode
  28.558 +         * character block.
  28.559 +         * @since 1.7
  28.560 +         */
  28.561 +        public static final UnicodeBlock MISCELLANEOUS_SYMBOLS_AND_PICTOGRAPHS =
  28.562 +            new UnicodeBlock("MISCELLANEOUS_SYMBOLS_AND_PICTOGRAPHS",
  28.563 +                             "MISCELLANEOUS SYMBOLS AND PICTOGRAPHS",
  28.564 +                             "MISCELLANEOUSSYMBOLSANDPICTOGRAPHS");
  28.565 +
  28.566 +        /**
  28.567 +         * Constant for the "Emoticons" Unicode character block.
  28.568 +         * @since 1.7
  28.569 +         */
  28.570 +        public static final UnicodeBlock EMOTICONS =
  28.571 +            new UnicodeBlock("EMOTICONS");
  28.572 +
  28.573 +        /**
  28.574 +         * Constant for the "Transport And Map Symbols" Unicode character block.
  28.575 +         * @since 1.7
  28.576 +         */
  28.577 +        public static final UnicodeBlock TRANSPORT_AND_MAP_SYMBOLS =
  28.578 +            new UnicodeBlock("TRANSPORT_AND_MAP_SYMBOLS",
  28.579 +                             "TRANSPORT AND MAP SYMBOLS",
  28.580 +                             "TRANSPORTANDMAPSYMBOLS");
  28.581 +
  28.582 +        /**
  28.583 +         * Constant for the "Alchemical Symbols" Unicode character block.
  28.584 +         * @since 1.7
  28.585 +         */
  28.586 +        public static final UnicodeBlock ALCHEMICAL_SYMBOLS =
  28.587 +            new UnicodeBlock("ALCHEMICAL_SYMBOLS",
  28.588 +                             "ALCHEMICAL SYMBOLS",
  28.589 +                             "ALCHEMICALSYMBOLS");
  28.590 +
  28.591 +        /**
  28.592 +         * Constant for the "CJK Unified Ideographs Extension C" Unicode
  28.593 +         * character block.
  28.594 +         * @since 1.7
  28.595 +         */
  28.596 +        public static final UnicodeBlock CJK_UNIFIED_IDEOGRAPHS_EXTENSION_C =
  28.597 +            new UnicodeBlock("CJK_UNIFIED_IDEOGRAPHS_EXTENSION_C",
  28.598 +                             "CJK UNIFIED IDEOGRAPHS EXTENSION C",
  28.599 +                             "CJKUNIFIEDIDEOGRAPHSEXTENSIONC");
  28.600 +
  28.601 +        /**
  28.602 +         * Constant for the "CJK Unified Ideographs Extension D" Unicode
  28.603 +         * character block.
  28.604 +         * @since 1.7
  28.605 +         */
  28.606 +        public static final UnicodeBlock CJK_UNIFIED_IDEOGRAPHS_EXTENSION_D =
  28.607 +            new UnicodeBlock("CJK_UNIFIED_IDEOGRAPHS_EXTENSION_D",
  28.608 +                             "CJK UNIFIED IDEOGRAPHS EXTENSION D",
  28.609 +                             "CJKUNIFIEDIDEOGRAPHSEXTENSIOND");
  28.610 +
  28.611          private static final int blockStarts[] = {
  28.612              0x0000,   // 0000..007F; Basic Latin
  28.613              0x0080,   // 0080..00FF; Latin-1 Supplement
  28.614 @@ -2144,7 +2486,9 @@
  28.615              0x0750,   // 0750..077F; Arabic Supplement
  28.616              0x0780,   // 0780..07BF; Thaana
  28.617              0x07C0,   // 07C0..07FF; NKo
  28.618 -            0x0800,   //             unassigned
  28.619 +            0x0800,   // 0800..083F; Samaritan
  28.620 +            0x0840,   // 0840..085F; Mandaic
  28.621 +            0x0860,   //             unassigned
  28.622              0x0900,   // 0900..097F; Devanagari
  28.623              0x0980,   // 0980..09FF; Bengali
  28.624              0x0A00,   // 0A00..0A7F; Gurmukhi
  28.625 @@ -2173,19 +2517,21 @@
  28.626              0x1760,   // 1760..177F; Tagbanwa
  28.627              0x1780,   // 1780..17FF; Khmer
  28.628              0x1800,   // 1800..18AF; Mongolian
  28.629 -            0x18B0,   //             unassigned
  28.630 +            0x18B0,   // 18B0..18FF; Unified Canadian Aboriginal Syllabics Extended
  28.631              0x1900,   // 1900..194F; Limbu
  28.632              0x1950,   // 1950..197F; Tai Le
  28.633              0x1980,   // 1980..19DF; New Tai Lue
  28.634              0x19E0,   // 19E0..19FF; Khmer Symbols
  28.635              0x1A00,   // 1A00..1A1F; Buginese
  28.636 -            0x1A20,   //             unassigned
  28.637 +            0x1A20,   // 1A20..1AAF; Tai Tham
  28.638 +            0x1AB0,   //             unassigned
  28.639              0x1B00,   // 1B00..1B7F; Balinese
  28.640              0x1B80,   // 1B80..1BBF; Sundanese
  28.641 -            0x1BC0,   //             unassigned
  28.642 +            0x1BC0,   // 1BC0..1BFF; Batak
  28.643              0x1C00,   // 1C00..1C4F; Lepcha
  28.644              0x1C50,   // 1C50..1C7F; Ol Chiki
  28.645              0x1C80,   //             unassigned
  28.646 +            0x1CD0,   // 1CD0..1CFF; Vedic Extensions
  28.647              0x1D00,   // 1D00..1D7F; Phonetic Extensions
  28.648              0x1D80,   // 1D80..1DBF; Phonetic Extensions Supplement
  28.649              0x1DC0,   // 1DC0..1DFF; Combining Diacritical Marks Supplement
  28.650 @@ -2240,27 +2586,34 @@
  28.651              0x3300,   // 3300..33FF; CJK Compatibility
  28.652              0x3400,   // 3400..4DBF; CJK Unified Ideographs Extension A
  28.653              0x4DC0,   // 4DC0..4DFF; Yijing Hexagram Symbols
  28.654 -            0x4E00,   // 4E00..9FFF; CJK Unified Ideograph
  28.655 +            0x4E00,   // 4E00..9FFF; CJK Unified Ideographs
  28.656              0xA000,   // A000..A48F; Yi Syllables
  28.657              0xA490,   // A490..A4CF; Yi Radicals
  28.658 -            0xA4D0,   //             unassigned
  28.659 +            0xA4D0,   // A4D0..A4FF; Lisu
  28.660              0xA500,   // A500..A63F; Vai
  28.661              0xA640,   // A640..A69F; Cyrillic Extended-B
  28.662 -            0xA6A0,   //             unassigned
  28.663 +            0xA6A0,   // A6A0..A6FF; Bamum
  28.664              0xA700,   // A700..A71F; Modifier Tone Letters
  28.665              0xA720,   // A720..A7FF; Latin Extended-D
  28.666              0xA800,   // A800..A82F; Syloti Nagri
  28.667 -            0xA830,   //             unassigned
  28.668 +            0xA830,   // A830..A83F; Common Indic Number Forms
  28.669              0xA840,   // A840..A87F; Phags-pa
  28.670              0xA880,   // A880..A8DF; Saurashtra
  28.671 -            0xA8E0,   //             unassigned
  28.672 +            0xA8E0,   // A8E0..A8FF; Devanagari Extended
  28.673              0xA900,   // A900..A92F; Kayah Li
  28.674              0xA930,   // A930..A95F; Rejang
  28.675 -            0xA960,   //             unassigned
  28.676 +            0xA960,   // A960..A97F; Hangul Jamo Extended-A
  28.677 +            0xA980,   // A980..A9DF; Javanese
  28.678 +            0xA9E0,   //             unassigned
  28.679              0xAA00,   // AA00..AA5F; Cham
  28.680 -            0xAA60,   //             unassigned
  28.681 +            0xAA60,   // AA60..AA7F; Myanmar Extended-A
  28.682 +            0xAA80,   // AA80..AADF; Tai Viet
  28.683 +            0xAAE0,   //             unassigned
  28.684 +            0xAB00,   // AB00..AB2F; Ethiopic Extended-A
  28.685 +            0xAB30,   //             unassigned
  28.686 +            0xABC0,   // ABC0..ABFF; Meetei Mayek
  28.687              0xAC00,   // AC00..D7AF; Hangul Syllables
  28.688 -            0xD7B0,   //             unassigned
  28.689 +            0xD7B0,   // D7B0..D7FF; Hangul Jamo Extended-B
  28.690              0xD800,   // D800..DB7F; High Surrogates
  28.691              0xDB80,   // DB80..DBFF; High Private Use Surrogates
  28.692              0xDC00,   // DC00..DFFF; Low Surrogates
  28.693 @@ -2292,20 +2645,39 @@
  28.694              0x10380,  // 10380..1039F; Ugaritic
  28.695              0x103A0,  // 103A0..103DF; Old Persian
  28.696              0x103E0,  //               unassigned
  28.697 -            0x10400,  // 10400..1044F; Desere
  28.698 +            0x10400,  // 10400..1044F; Deseret
  28.699              0x10450,  // 10450..1047F; Shavian
  28.700              0x10480,  // 10480..104AF; Osmanya
  28.701              0x104B0,  //               unassigned
  28.702              0x10800,  // 10800..1083F; Cypriot Syllabary
  28.703 -            0x10840,  //               unassigned
  28.704 +            0x10840,  // 10840..1085F; Imperial Aramaic
  28.705 +            0x10860,  //               unassigned
  28.706              0x10900,  // 10900..1091F; Phoenician
  28.707              0x10920,  // 10920..1093F; Lydian
  28.708              0x10940,  //               unassigned
  28.709              0x10A00,  // 10A00..10A5F; Kharoshthi
  28.710 -            0x10A60,  //               unassigned
  28.711 +            0x10A60,  // 10A60..10A7F; Old South Arabian
  28.712 +            0x10A80,  //               unassigned
  28.713 +            0x10B00,  // 10B00..10B3F; Avestan
  28.714 +            0x10B40,  // 10B40..10B5F; Inscriptional Parthian
  28.715 +            0x10B60,  // 10B60..10B7F; Inscriptional Pahlavi
  28.716 +            0x10B80,  //               unassigned
  28.717 +            0x10C00,  // 10C00..10C4F; Old Turkic
  28.718 +            0x10C50,  //               unassigned
  28.719 +            0x10E60,  // 10E60..10E7F; Rumi Numeral Symbols
  28.720 +            0x10E80,  //               unassigned
  28.721 +            0x11000,  // 11000..1107F; Brahmi
  28.722 +            0x11080,  // 11080..110CF; Kaithi
  28.723 +            0x110D0,  //               unassigned
  28.724              0x12000,  // 12000..123FF; Cuneiform
  28.725              0x12400,  // 12400..1247F; Cuneiform Numbers and Punctuation
  28.726              0x12480,  //               unassigned
  28.727 +            0x13000,  // 13000..1342F; Egyptian Hieroglyphs
  28.728 +            0x13430,  //               unassigned
  28.729 +            0x16800,  // 16800..16A3F; Bamum Supplement
  28.730 +            0x16A40,  //               unassigned
  28.731 +            0x1B000,  // 1B000..1B0FF; Kana Supplement
  28.732 +            0x1B100,  //               unassigned
  28.733              0x1D000,  // 1D000..1D0FF; Byzantine Musical Symbols
  28.734              0x1D100,  // 1D100..1D1FF; Musical Symbols
  28.735              0x1D200,  // 1D200..1D24F; Ancient Greek Musical Notation
  28.736 @@ -2317,9 +2689,20 @@
  28.737              0x1D800,  //               unassigned
  28.738              0x1F000,  // 1F000..1F02F; Mahjong Tiles
  28.739              0x1F030,  // 1F030..1F09F; Domino Tiles
  28.740 -            0x1F0A0,  //               unassigned
  28.741 +            0x1F0A0,  // 1F0A0..1F0FF; Playing Cards
  28.742 +            0x1F100,  // 1F100..1F1FF; Enclosed Alphanumeric Supplement
  28.743 +            0x1F200,  // 1F200..1F2FF; Enclosed Ideographic Supplement
  28.744 +            0x1F300,  // 1F300..1F5FF; Miscellaneous Symbols And Pictographs
  28.745 +            0x1F600,  // 1F600..1F64F; Emoticons
  28.746 +            0x1F650,  //               unassigned
  28.747 +            0x1F680,  // 1F680..1F6FF; Transport And Map Symbols
  28.748 +            0x1F700,  // 1F700..1F77F; Alchemical Symbols
  28.749 +            0x1F780,  //               unassigned
  28.750              0x20000,  // 20000..2A6DF; CJK Unified Ideographs Extension B
  28.751              0x2A6E0,  //               unassigned
  28.752 +            0x2A700,  // 2A700..2B73F; CJK Unified Ideographs Extension C
  28.753 +            0x2B740,  // 2B740..2B81F; CJK Unified Ideographs Extension D
  28.754 +            0x2B820,  //               unassigned
  28.755              0x2F800,  // 2F800..2FA1F; CJK Compatibility Ideographs Supplement
  28.756              0x2FA20,  //               unassigned
  28.757              0xE0000,  // E0000..E007F; Tags
  28.758 @@ -2327,7 +2710,7 @@
  28.759              0xE0100,  // E0100..E01EF; Variation Selectors Supplement
  28.760              0xE01F0,  //               unassigned
  28.761              0xF0000,  // F0000..FFFFF; Supplementary Private Use Area-A
  28.762 -            0x100000, // 100000..10FFFF; Supplementary Private Use Area-B
  28.763 +            0x100000  // 100000..10FFFF; Supplementary Private Use Area-B
  28.764          };
  28.765  
  28.766          private static final UnicodeBlock[] blocks = {
  28.767 @@ -2348,6 +2731,8 @@
  28.768              ARABIC_SUPPLEMENT,
  28.769              THAANA,
  28.770              NKO,
  28.771 +            SAMARITAN,
  28.772 +            MANDAIC,
  28.773              null,
  28.774              DEVANAGARI,
  28.775              BENGALI,
  28.776 @@ -2377,19 +2762,21 @@
  28.777              TAGBANWA,
  28.778              KHMER,
  28.779              MONGOLIAN,
  28.780 -            null,
  28.781 +            UNIFIED_CANADIAN_ABORIGINAL_SYLLABICS_EXTENDED,
  28.782              LIMBU,
  28.783              TAI_LE,
  28.784              NEW_TAI_LUE,
  28.785              KHMER_SYMBOLS,
  28.786              BUGINESE,
  28.787 +            TAI_THAM,
  28.788              null,
  28.789              BALINESE,
  28.790              SUNDANESE,
  28.791 -            null,
  28.792 +            BATAK,
  28.793              LEPCHA,
  28.794              OL_CHIKI,
  28.795              null,
  28.796 +            VEDIC_EXTENSIONS,
  28.797              PHONETIC_EXTENSIONS,
  28.798              PHONETIC_EXTENSIONS_SUPPLEMENT,
  28.799              COMBINING_DIACRITICAL_MARKS_SUPPLEMENT,
  28.800 @@ -2447,24 +2834,31 @@
  28.801              CJK_UNIFIED_IDEOGRAPHS,
  28.802              YI_SYLLABLES,
  28.803              YI_RADICALS,
  28.804 -            null,
  28.805 +            LISU,
  28.806              VAI,
  28.807              CYRILLIC_EXTENDED_B,
  28.808 -            null,
  28.809 +            BAMUM,
  28.810              MODIFIER_TONE_LETTERS,
  28.811              LATIN_EXTENDED_D,
  28.812              SYLOTI_NAGRI,
  28.813 -            null,
  28.814 +            COMMON_INDIC_NUMBER_FORMS,
  28.815              PHAGS_PA,
  28.816              SAURASHTRA,
  28.817 -            null,
  28.818 +            DEVANAGARI_EXTENDED,
  28.819              KAYAH_LI,
  28.820              REJANG,
  28.821 +            HANGUL_JAMO_EXTENDED_A,
  28.822 +            JAVANESE,
  28.823              null,
  28.824              CHAM,
  28.825 +            MYANMAR_EXTENDED_A,
  28.826 +            TAI_VIET,
  28.827              null,
  28.828 +            ETHIOPIC_EXTENDED_A,
  28.829 +            null,
  28.830 +            MEETEI_MAYEK,
  28.831              HANGUL_SYLLABLES,
  28.832 -            null,
  28.833 +            HANGUL_JAMO_EXTENDED_B,
  28.834              HIGH_SURROGATES,
  28.835              HIGH_PRIVATE_USE_SURROGATES,
  28.836              LOW_SURROGATES,
  28.837 @@ -2501,15 +2895,34 @@
  28.838              OSMANYA,
  28.839              null,
  28.840              CYPRIOT_SYLLABARY,
  28.841 +            IMPERIAL_ARAMAIC,
  28.842              null,
  28.843              PHOENICIAN,
  28.844              LYDIAN,
  28.845              null,
  28.846              KHAROSHTHI,
  28.847 +            OLD_SOUTH_ARABIAN,
  28.848 +            null,
  28.849 +            AVESTAN,
  28.850 +            INSCRIPTIONAL_PARTHIAN,
  28.851 +            INSCRIPTIONAL_PAHLAVI,
  28.852 +            null,
  28.853 +            OLD_TURKIC,
  28.854 +            null,
  28.855 +            RUMI_NUMERAL_SYMBOLS,
  28.856 +            null,
  28.857 +            BRAHMI,
  28.858 +            KAITHI,
  28.859              null,
  28.860              CUNEIFORM,
  28.861              CUNEIFORM_NUMBERS_AND_PUNCTUATION,
  28.862              null,
  28.863 +            EGYPTIAN_HIEROGLYPHS,
  28.864 +            null,
  28.865 +            BAMUM_SUPPLEMENT,
  28.866 +            null,
  28.867 +            KANA_SUPPLEMENT,
  28.868 +            null,
  28.869              BYZANTINE_MUSICAL_SYMBOLS,
  28.870              MUSICAL_SYMBOLS,
  28.871              ANCIENT_GREEK_MUSICAL_NOTATION,
  28.872 @@ -2521,9 +2934,20 @@
  28.873              null,
  28.874              MAHJONG_TILES,
  28.875              DOMINO_TILES,
  28.876 +            PLAYING_CARDS,
  28.877 +            ENCLOSED_ALPHANUMERIC_SUPPLEMENT,
  28.878 +            ENCLOSED_IDEOGRAPHIC_SUPPLEMENT,
  28.879 +            MISCELLANEOUS_SYMBOLS_AND_PICTOGRAPHS,
  28.880 +            EMOTICONS,
  28.881 +            null,
  28.882 +            TRANSPORT_AND_MAP_SYMBOLS,
  28.883 +            ALCHEMICAL_SYMBOLS,
  28.884              null,
  28.885              CJK_UNIFIED_IDEOGRAPHS_EXTENSION_B,
  28.886              null,
  28.887 +            CJK_UNIFIED_IDEOGRAPHS_EXTENSION_C,
  28.888 +            CJK_UNIFIED_IDEOGRAPHS_EXTENSION_D,
  28.889 +            null,
  28.890              CJK_COMPATIBILITY_IDEOGRAPHS_SUPPLEMENT,
  28.891              null,
  28.892              TAGS,
  28.893 @@ -2989,6 +3413,11 @@
  28.894          SUNDANESE,
  28.895  
  28.896          /**
  28.897 +         * Unicode script "Batak".
  28.898 +         */
  28.899 +        BATAK,
  28.900 +
  28.901 +        /**
  28.902           * Unicode script "Lepcha".
  28.903           */
  28.904          LEPCHA,
  28.905 @@ -3064,6 +3493,11 @@
  28.906          SAMARITAN,
  28.907  
  28.908          /**
  28.909 +         * Unicode script "Mandaic".
  28.910 +         */
  28.911 +        MANDAIC,
  28.912 +
  28.913 +        /**
  28.914           * Unicode script "Lisu".
  28.915           */
  28.916          LISU,
  28.917 @@ -3109,6 +3543,11 @@
  28.918          OLD_TURKIC,
  28.919  
  28.920          /**
  28.921 +         * Unicode script "Brahmi".
  28.922 +         */
  28.923 +        BRAHMI,
  28.924 +
  28.925 +        /**
  28.926           * Unicode script "Kaithi".
  28.927           */
  28.928          KAITHI,
  28.929 @@ -3135,7 +3574,9 @@
  28.930              0x00F8,   // 00F8..02B8; LATIN
  28.931              0x02B9,   // 02B9..02DF; COMMON
  28.932              0x02E0,   // 02E0..02E4; LATIN
  28.933 -            0x02E5,   // 02E5..02FF; COMMON
  28.934 +            0x02E5,   // 02E5..02E9; COMMON
  28.935 +            0x02EA,   // 02EA..02EB; BOPOMOFO
  28.936 +            0x02EC,   // 02EC..02FF; COMMON
  28.937              0x0300,   // 0300..036F; INHERITED
  28.938              0x0370,   // 0370..0373; GREEK
  28.939              0x0374,   // 0374..0374; COMMON
  28.940 @@ -3155,18 +3596,18 @@
  28.941              0x0589,   // 0589..0589; COMMON
  28.942              0x058A,   // 058A..0590; ARMENIAN
  28.943              0x0591,   // 0591..05FF; HEBREW
  28.944 -            0x0600,   // 0600..0605; COMMON
  28.945 -            0x0606,   // 0606..060B; ARABIC
  28.946 +            0x0600,   // 0600..060B; ARABIC
  28.947              0x060C,   // 060C..060C; COMMON
  28.948              0x060D,   // 060D..061A; ARABIC
  28.949              0x061B,   // 061B..061D; COMMON
  28.950              0x061E,   // 061E..061E; ARABIC
  28.951 -            0x061F,   // 061F..0620; COMMON
  28.952 -            0x0621,   // 0621..063F; ARABIC
  28.953 +            0x061F,   // 061F..061F; COMMON
  28.954 +            0x0620,   // 0620..063F; ARABIC
  28.955              0x0640,   // 0640..0640; COMMON
  28.956              0x0641,   // 0641..064A; ARABIC
  28.957              0x064B,   // 064B..0655; INHERITED
  28.958 -            0x0656,   // 0656..065F; ARABIC
  28.959 +            0x0656,   // 0656..065E; ARABIC
  28.960 +            0x065F,   // 065F..065F; INHERITED
  28.961              0x0660,   // 0660..0669; COMMON
  28.962              0x066A,   // 066A..066F; ARABIC
  28.963              0x0670,   // 0670..0670; INHERITED
  28.964 @@ -3177,7 +3618,8 @@
  28.965              0x0750,   // 0750..077F; ARABIC
  28.966              0x0780,   // 0780..07BF; THAANA
  28.967              0x07C0,   // 07C0..07FF; NKO
  28.968 -            0x0800,   // 0800..08FF; SAMARITAN
  28.969 +            0x0800,   // 0800..083F; SAMARITAN
  28.970 +            0x0840,   // 0840..08FF; MANDAIC
  28.971              0x0900,   // 0900..0950; DEVANAGARI
  28.972              0x0951,   // 0951..0952; INHERITED
  28.973              0x0953,   // 0953..0963; DEVANAGARI
  28.974 @@ -3192,7 +3634,6 @@
  28.975              0x0B82,   // 0B82..0C00; TAMIL
  28.976              0x0C01,   // 0C01..0C81; TELUGU
  28.977              0x0C82,   // 0C82..0CF0; KANNADA
  28.978 -            0x0CF1,   // 0CF1..0D01; COMMON
  28.979              0x0D02,   // 0D02..0D81; MALAYALAM
  28.980              0x0D82,   // 0D82..0E00; SINHALA
  28.981              0x0E01,   // 0E01..0E3E; THAI
  28.982 @@ -3200,7 +3641,8 @@
  28.983              0x0E40,   // 0E40..0E80; THAI
  28.984              0x0E81,   // 0E81..0EFF; LAO
  28.985              0x0F00,   // 0F00..0FD4; TIBETAN
  28.986 -            0x0FD5,   // 0FD5..0FFF; COMMON
  28.987 +            0x0FD5,   // 0FD5..0FD8; COMMON
  28.988 +            0x0FD9,   // 0FD9..0FFF; TIBETAN
  28.989              0x1000,   // 1000..109F; MYANMAR
  28.990              0x10A0,   // 10A0..10FA; GEORGIAN
  28.991              0x10FB,   // 10FB..10FB; COMMON
  28.992 @@ -3232,7 +3674,8 @@
  28.993              0x1A00,   // 1A00..1A1F; BUGINESE
  28.994              0x1A20,   // 1A20..1AFF; TAI_THAM
  28.995              0x1B00,   // 1B00..1B7F; BALINESE
  28.996 -            0x1B80,   // 1B80..1BFF; SUNDANESE
  28.997 +            0x1B80,   // 1B80..1BBF; SUNDANESE
  28.998 +            0x1BC0,   // 1BC0..1BFF; BATAK
  28.999              0x1C00,   // 1C00..1C4F; LEPCHA
 28.1000              0x1C50,   // 1C50..1CCF; OL_CHIKI
 28.1001              0x1CD0,   // 1CD0..1CD2; INHERITED
 28.1002 @@ -3295,7 +3738,8 @@
 28.1003              0x3007,   // 3007..3007; HAN
 28.1004              0x3008,   // 3008..3020; COMMON
 28.1005              0x3021,   // 3021..3029; HAN
 28.1006 -            0x302A,   // 302A..302F; INHERITED
 28.1007 +            0x302A,   // 302A..302D; INHERITED
 28.1008 +            0x302E,   // 302E..302F; HANGUL
 28.1009              0x3030,   // 3030..3037; COMMON
 28.1010              0x3038,   // 3038..303B; HAN
 28.1011              0x303C,   // 303C..3040; COMMON
 28.1012 @@ -3342,7 +3786,8 @@
 28.1013              0xA980,   // A980..A9FF; JAVANESE
 28.1014              0xAA00,   // AA00..AA5F; CHAM
 28.1015              0xAA60,   // AA60..AA7F; MYANMAR
 28.1016 -            0xAA80,   // AA80..ABBF; TAI_VIET
 28.1017 +            0xAA80,   // AA80..AB00; TAI_VIET
 28.1018 +            0xAB01,   // AB01..ABBF; ETHIOPIC
 28.1019              0xABC0,   // ABC0..ABFF; MEETEI_MAYEK
 28.1020              0xAC00,   // AC00..D7FB; HANGUL
 28.1021              0xD7FC,   // D7FC..F8FF; UNKNOWN
 28.1022 @@ -3394,10 +3839,14 @@
 28.1023              0x10B40,  // 10B40..10B5F; INSCRIPTIONAL_PARTHIAN
 28.1024              0x10B60,  // 10B60..10BFF; INSCRIPTIONAL_PAHLAVI
 28.1025              0x10C00,  // 10C00..10E5F; OLD_TURKIC
 28.1026 -            0x10E60,  // 10E60..1107F; ARABIC
 28.1027 +            0x10E60,  // 10E60..10FFF; ARABIC
 28.1028 +            0x11000,  // 11000..1107F; BRAHMI
 28.1029              0x11080,  // 11080..11FFF; KAITHI
 28.1030              0x12000,  // 12000..12FFF; CUNEIFORM
 28.1031 -            0x13000,  // 13000..1CFFF; EGYPTIAN_HIEROGLYPHS
 28.1032 +            0x13000,  // 13000..167FF; EGYPTIAN_HIEROGLYPHS
 28.1033 +            0x16800,  // 16800..16A38; BAMUM
 28.1034 +            0x1B000,  // 1B000..1B000; KATAKANA
 28.1035 +            0x1B001,  // 1B001..1CFFF; HIRAGANA
 28.1036              0x1D000,  // 1D000..1D166; COMMON
 28.1037              0x1D167,  // 1D167..1D169; INHERITED
 28.1038              0x1D16A,  // 1D16A..1D17A; COMMON
 28.1039 @@ -3409,8 +3858,8 @@
 28.1040              0x1D1AE,  // 1D1AE..1D1FF; COMMON
 28.1041              0x1D200,  // 1D200..1D2FF; GREEK
 28.1042              0x1D300,  // 1D300..1F1FF; COMMON
 28.1043 -            0x1F200,  // 1F200..1F20F; HIRAGANA
 28.1044 -            0x1F210,  // 1F210..1FFFF; COMMON
 28.1045 +            0x1F200,  // 1F200..1F200; HIRAGANA
 28.1046 +            0x1F201,  // 1F210..1FFFF; COMMON
 28.1047              0x20000,  // 20000..E0000; HAN
 28.1048              0xE0001,  // E0001..E00FF; COMMON
 28.1049              0xE0100,  // E0100..E01EF; INHERITED
 28.1050 @@ -3436,6 +3885,8 @@
 28.1051              COMMON,
 28.1052              LATIN,
 28.1053              COMMON,
 28.1054 +            BOPOMOFO,
 28.1055 +            COMMON,
 28.1056              INHERITED,
 28.1057              GREEK,
 28.1058              COMMON,
 28.1059 @@ -3455,7 +3906,6 @@
 28.1060              COMMON,
 28.1061              ARMENIAN,
 28.1062              HEBREW,
 28.1063 -            COMMON,
 28.1064              ARABIC,
 28.1065              COMMON,
 28.1066              ARABIC,
 28.1067 @@ -3467,6 +3917,7 @@
 28.1068              ARABIC,
 28.1069              INHERITED,
 28.1070              ARABIC,
 28.1071 +            INHERITED,
 28.1072              COMMON,
 28.1073              ARABIC,
 28.1074              INHERITED,
 28.1075 @@ -3478,6 +3929,7 @@
 28.1076              THAANA,
 28.1077              NKO,
 28.1078              SAMARITAN,
 28.1079 +            MANDAIC,
 28.1080              DEVANAGARI,
 28.1081              INHERITED,
 28.1082              DEVANAGARI,
 28.1083 @@ -3492,7 +3944,6 @@
 28.1084              TAMIL,
 28.1085              TELUGU,
 28.1086              KANNADA,
 28.1087 -            COMMON,
 28.1088              MALAYALAM,
 28.1089              SINHALA,
 28.1090              THAI,
 28.1091 @@ -3501,6 +3952,7 @@
 28.1092              LAO,
 28.1093              TIBETAN,
 28.1094              COMMON,
 28.1095 +            TIBETAN,
 28.1096              MYANMAR,
 28.1097              GEORGIAN,
 28.1098              COMMON,
 28.1099 @@ -3533,6 +3985,7 @@
 28.1100              TAI_THAM,
 28.1101              BALINESE,
 28.1102              SUNDANESE,
 28.1103 +            BATAK,
 28.1104              LEPCHA,
 28.1105              OL_CHIKI,
 28.1106              INHERITED,
 28.1107 @@ -3596,6 +4049,7 @@
 28.1108              COMMON,
 28.1109              HAN,
 28.1110              INHERITED,
 28.1111 +            HANGUL,
 28.1112              COMMON,
 28.1113              HAN,
 28.1114              COMMON,
 28.1115 @@ -3643,6 +4097,7 @@
 28.1116              CHAM,
 28.1117              MYANMAR,
 28.1118              TAI_VIET,
 28.1119 +            ETHIOPIC,
 28.1120              MEETEI_MAYEK,
 28.1121              HANGUL,
 28.1122              UNKNOWN,
 28.1123 @@ -3695,9 +4150,13 @@
 28.1124              INSCRIPTIONAL_PAHLAVI,
 28.1125              OLD_TURKIC,
 28.1126              ARABIC,
 28.1127 +            BRAHMI,
 28.1128              KAITHI,
 28.1129              CUNEIFORM,
 28.1130              EGYPTIAN_HIEROGLYPHS,
 28.1131 +            BAMUM,
 28.1132 +            KATAKANA,
 28.1133 +            HIRAGANA,
 28.1134              COMMON,
 28.1135              INHERITED,
 28.1136              COMMON,
    29.1 --- a/src/share/classes/java/lang/Readable.java	Tue Nov 30 09:57:47 2010 -0800
    29.2 +++ b/src/share/classes/java/lang/Readable.java	Wed Dec 08 00:35:33 2010 -0800
    29.3 @@ -44,11 +44,11 @@
    29.4       * rewinding of the buffer is performed.
    29.5       *
    29.6       * @param cb the buffer to read characters into
    29.7 -     * @return @return The number of <tt>char</tt> values added to the buffer,
    29.8 +     * @return The number of {@code char} values added to the buffer,
    29.9       *                 or -1 if this source of characters is at its end
   29.10       * @throws IOException if an I/O error occurs
   29.11       * @throws NullPointerException if cb is null
   29.12 -     * @throws ReadOnlyBufferException if cb is a read only buffer
   29.13 +     * @throws java.nio.ReadOnlyBufferException if cb is a read only buffer
   29.14       */
   29.15      public int read(java.nio.CharBuffer cb) throws IOException;
   29.16  
    30.1 --- a/src/share/classes/java/nio/StringCharBuffer.java	Tue Nov 30 09:57:47 2010 -0800
    30.2 +++ b/src/share/classes/java/nio/StringCharBuffer.java	Wed Dec 08 00:35:33 2010 -0800
    30.3 @@ -47,7 +47,7 @@
    30.4                                      0,
    30.5                                      this.remaining(),
    30.6                                      this.remaining(),
    30.7 -                                    this.position());
    30.8 +                                    offset + this.position());
    30.9      }
   30.10  
   30.11      private StringCharBuffer(CharSequence s,
    31.1 --- a/src/share/classes/java/nio/channels/AsynchronousSocketChannel.java	Tue Nov 30 09:57:47 2010 -0800
    31.2 +++ b/src/share/classes/java/nio/channels/AsynchronousSocketChannel.java	Wed Dec 08 00:35:33 2010 -0800
    31.3 @@ -110,7 +110,8 @@
    31.4   * state of the {@link ByteBuffer}, or the sequence of buffers, for the I/O
    31.5   * operation is not defined. Buffers should be discarded or at least care must
    31.6   * be taken to ensure that the buffers are not accessed while the channel remains
    31.7 - * open.
    31.8 + * open. All methods that accept timeout parameters treat values less than or
    31.9 + * equal to zero to mean that the I/O operation does not timeout.
   31.10   *
   31.11   * @since 1.7
   31.12   */
   31.13 @@ -367,7 +368,7 @@
   31.14       * @param   dst
   31.15       *          The buffer into which bytes are to be transferred
   31.16       * @param   timeout
   31.17 -     *          The timeout, or {@code 0L} for no timeout
   31.18 +     *          The maximum time for the I/O operation to complete
   31.19       * @param   unit
   31.20       *          The time unit of the {@code timeout} argument
   31.21       * @param   attachment
   31.22 @@ -376,8 +377,7 @@
   31.23       *          The handler for consuming the result
   31.24       *
   31.25       * @throws  IllegalArgumentException
   31.26 -     *          If the {@code timeout} parameter is negative or the buffer is
   31.27 -     *          read-only
   31.28 +     *          If the buffer is read-only
   31.29       * @throws  ReadPendingException
   31.30       *          If a read operation is already in progress on this channel
   31.31       * @throws  NotYetConnectedException
   31.32 @@ -471,7 +471,7 @@
   31.33       *          The maximum number of buffers to be accessed; must be non-negative
   31.34       *          and no larger than {@code dsts.length - offset}
   31.35       * @param   timeout
   31.36 -     *          The timeout, or {@code 0L} for no timeout
   31.37 +     *          The maximum time for the I/O operation to complete
   31.38       * @param   unit
   31.39       *          The time unit of the {@code timeout} argument
   31.40       * @param   attachment
   31.41 @@ -483,8 +483,7 @@
   31.42       *          If the pre-conditions for the {@code offset}  and {@code length}
   31.43       *          parameter aren't met
   31.44       * @throws  IllegalArgumentException
   31.45 -     *          If the {@code timeout} parameter is negative, or a buffer is
   31.46 -     *          read-only
   31.47 +     *          If the buffer is read-only
   31.48       * @throws  ReadPendingException
   31.49       *          If a read operation is already in progress on this channel
   31.50       * @throws  NotYetConnectedException
   31.51 @@ -524,7 +523,7 @@
   31.52       * @param   src
   31.53       *          The buffer from which bytes are to be retrieved
   31.54       * @param   timeout
   31.55 -     *          The timeout, or {@code 0L} for no timeout
   31.56 +     *          The maximum time for the I/O operation to complete
   31.57       * @param   unit
   31.58       *          The time unit of the {@code timeout} argument
   31.59       * @param   attachment
   31.60 @@ -532,8 +531,6 @@
   31.61       * @param   handler
   31.62       *          The handler for consuming the result
   31.63       *
   31.64 -     * @throws  IllegalArgumentException
   31.65 -     *          If the {@code timeout} parameter is negative
   31.66       * @throws  WritePendingException
   31.67       *          If a write operation is already in progress on this channel
   31.68       * @throws  NotYetConnectedException
   31.69 @@ -623,7 +620,7 @@
   31.70       *          The maximum number of buffers to be accessed; must be non-negative
   31.71       *          and no larger than {@code srcs.length - offset}
   31.72       * @param   timeout
   31.73 -     *          The timeout, or {@code 0L} for no timeout
   31.74 +     *          The maximum time for the I/O operation to complete
   31.75       * @param   unit
   31.76       *          The time unit of the {@code timeout} argument
   31.77       * @param   attachment
   31.78 @@ -634,8 +631,6 @@
   31.79       * @throws  IndexOutOfBoundsException
   31.80       *          If the pre-conditions for the {@code offset}  and {@code length}
   31.81       *          parameter aren't met
   31.82 -     * @throws  IllegalArgumentException
   31.83 -     *          If the {@code timeout} parameter is negative
   31.84       * @throws  WritePendingException
   31.85       *          If a write operation is already in progress on this channel
   31.86       * @throws  NotYetConnectedException
    32.1 --- a/src/share/classes/java/sql/SQLPermission.java	Tue Nov 30 09:57:47 2010 -0800
    32.2 +++ b/src/share/classes/java/sql/SQLPermission.java	Wed Dec 08 00:35:33 2010 -0800
    32.3 @@ -84,7 +84,7 @@
    32.4   *   {@code setJNDIContext} and {@code setLogger}</td>
    32.5   *   <td>Permits an application to specify the JNDI context from which the
    32.6   *   {@code SyncProvider} implementations can be retrieved from and the logging
    32.7 - *   object to be used by the{@codeSyncProvider} implementation.</td>
    32.8 + *   object to be used by the {@code SyncProvider} implementation.</td>
    32.9   * </tr>
   32.10   *
   32.11   * <tr>
    33.1 --- a/src/share/classes/java/util/Formatter.java	Tue Nov 30 09:57:47 2010 -0800
    33.2 +++ b/src/share/classes/java/util/Formatter.java	Wed Dec 08 00:35:33 2010 -0800
    33.3 @@ -1581,6 +1581,7 @@
    33.4   *     instance of the Java virtual machine.
    33.5   *
    33.6   * <tr><td valign="top">{@code 'Z'}
    33.7 + *     <td valign="top"> <tt>'&#92;u005a'</tt>
    33.8   *     <td> A string representing the abbreviation for the time zone.  This
    33.9   *     value will be adjusted as necessary for Daylight Saving Time.  For
   33.10   *     {@code long}, {@link Long}, and {@link Date} the time zone used is
    34.1 --- a/src/share/classes/java/util/spi/CurrencyNameProvider.java	Tue Nov 30 09:57:47 2010 -0800
    34.2 +++ b/src/share/classes/java/util/spi/CurrencyNameProvider.java	Wed Dec 08 00:35:33 2010 -0800
    34.3 @@ -25,7 +25,9 @@
    34.4  
    34.5  package java.util.spi;
    34.6  
    34.7 +import java.util.Arrays;
    34.8  import java.util.Currency;
    34.9 +import java.util.List;
   34.10  import java.util.Locale;
   34.11  
   34.12  /**
   34.13 @@ -95,6 +97,23 @@
   34.14              throw new NullPointerException();
   34.15          }
   34.16  
   34.17 +        // Check whether the currencyCode is valid
   34.18 +        char[] charray = currencyCode.toCharArray();
   34.19 +        if (charray.length != 3) {
   34.20 +            throw new IllegalArgumentException("The currencyCode is not in the form of three upper-case letters.");
   34.21 +        }
   34.22 +        for (char c : charray) {
   34.23 +            if (c < 'A' || c > 'Z') {
   34.24 +                throw new IllegalArgumentException("The currencyCode is not in the form of three upper-case letters.");
   34.25 +            }
   34.26 +        }
   34.27 +
   34.28 +        // Check whether the locale is valid
   34.29 +        List<Locale> avail = Arrays.asList(getAvailableLocales());
   34.30 +        if (!avail.contains(locale)) {
   34.31 +            throw new IllegalArgumentException("The locale is not available");
   34.32 +        }
   34.33 +
   34.34          return null;
   34.35      }
   34.36  }
    35.1 --- a/src/share/classes/java/util/spi/LocaleNameProvider.java	Tue Nov 30 09:57:47 2010 -0800
    35.2 +++ b/src/share/classes/java/util/spi/LocaleNameProvider.java	Wed Dec 08 00:35:33 2010 -0800
    35.3 @@ -94,7 +94,9 @@
    35.4       * @see java.util.Locale#getDisplayScript(java.util.Locale)
    35.5       * @since 1.7
    35.6       */
    35.7 -    public abstract String getDisplayScript(String scriptCode, Locale locale);
    35.8 +    public String getDisplayScript(String scriptCode, Locale locale) {
    35.9 +        return null;
   35.10 +    }
   35.11  
   35.12      /**
   35.13       * Returns a localized name for the given <a href="http://www.rfc-editor.org/rfc/bcp/bcp47.txt">
    36.1 --- a/src/share/classes/javax/security/auth/Policy.java	Tue Nov 30 09:57:47 2010 -0800
    36.2 +++ b/src/share/classes/javax/security/auth/Policy.java	Wed Dec 08 00:35:33 2010 -0800
    36.3 @@ -25,6 +25,9 @@
    36.4  
    36.5  package javax.security.auth;
    36.6  
    36.7 +import java.security.Security;
    36.8 +import sun.security.util.Debug;
    36.9 +
   36.10  /**
   36.11   * <p> This is an abstract class for representing the system policy for
   36.12   * Subject-based authorization.  A subclass implementation
   36.13 @@ -159,6 +162,10 @@
   36.14      private static Policy policy;
   36.15      private static ClassLoader contextClassLoader;
   36.16  
   36.17 +    // true if a custom (not com.sun.security.auth.PolicyFile) system-wide
   36.18 +    // policy object is set
   36.19 +    private static boolean isCustomPolicy;
   36.20 +
   36.21      static {
   36.22          contextClassLoader = java.security.AccessController.doPrivileged
   36.23                  (new java.security.PrivilegedAction<ClassLoader>() {
   36.24 @@ -234,6 +241,8 @@
   36.25                                          contextClassLoader).newInstance();
   36.26                              }
   36.27                          });
   36.28 +                        isCustomPolicy =
   36.29 +                            !finalClass.equals("com.sun.security.auth.PolicyFile");
   36.30                      } catch (Exception e) {
   36.31                          throw new SecurityException
   36.32                                  (sun.security.util.ResourcesMgr.getString
   36.33 @@ -265,6 +274,46 @@
   36.34          java.lang.SecurityManager sm = System.getSecurityManager();
   36.35          if (sm != null) sm.checkPermission(new AuthPermission("setPolicy"));
   36.36          Policy.policy = policy;
   36.37 +        // all non-null policy objects are assumed to be custom
   36.38 +        isCustomPolicy = policy != null ? true : false;
   36.39 +    }
   36.40 +
   36.41 +    /**
   36.42 +     * Returns true if a custom (not com.sun.security.auth.PolicyFile)
   36.43 +     * system-wide policy object has been set or installed. This method is
   36.44 +     * called by SubjectDomainCombiner to provide backwards compatibility for
   36.45 +     * developers that provide their own javax.security.auth.Policy
   36.46 +     * implementations.
   36.47 +     *
   36.48 +     * @return true if a custom (not com.sun.security.auth.PolicyFile)
   36.49 +     * system-wide policy object has been set; false otherwise
   36.50 +     */
   36.51 +    static boolean isCustomPolicySet(Debug debug) {
   36.52 +        if (policy != null) {
   36.53 +            if (debug != null && isCustomPolicy) {
   36.54 +                debug.println("Providing backwards compatibility for " +
   36.55 +                              "javax.security.auth.policy implementation: " +
   36.56 +                              policy.toString());
   36.57 +            }
   36.58 +            return isCustomPolicy;
   36.59 +        }
   36.60 +        // check if custom policy has been set using auth.policy.provider prop
   36.61 +        String policyClass = java.security.AccessController.doPrivileged
   36.62 +            (new java.security.PrivilegedAction<String>() {
   36.63 +                public String run() {
   36.64 +                    return Security.getProperty("auth.policy.provider");
   36.65 +                }
   36.66 +        });
   36.67 +        if (policyClass != null
   36.68 +            && !policyClass.equals("com.sun.security.auth.PolicyFile")) {
   36.69 +            if (debug != null) {
   36.70 +                debug.println("Providing backwards compatibility for " +
   36.71 +                              "javax.security.auth.policy implementation: " +
   36.72 +                              policyClass);
   36.73 +            }
   36.74 +            return true;
   36.75 +        }
   36.76 +        return false;
   36.77      }
   36.78  
   36.79      /**
    37.1 --- a/src/share/classes/javax/security/auth/SubjectDomainCombiner.java	Tue Nov 30 09:57:47 2010 -0800
    37.2 +++ b/src/share/classes/javax/security/auth/SubjectDomainCombiner.java	Wed Dec 08 00:35:33 2010 -0800
    37.3 @@ -1,5 +1,5 @@
    37.4  /*
    37.5 - * Copyright (c) 1999, 2007, Oracle and/or its affiliates. All rights reserved.
    37.6 + * Copyright (c) 1999, 2010, Oracle and/or its affiliates. All rights reserved.
    37.7   * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
    37.8   *
    37.9   * This code is free software; you can redistribute it and/or modify it
   37.10 @@ -26,8 +26,6 @@
   37.11  package javax.security.auth;
   37.12  
   37.13  import java.security.AccessController;
   37.14 -import java.security.AccessControlContext;
   37.15 -import java.security.AllPermission;
   37.16  import java.security.Permission;
   37.17  import java.security.Permissions;
   37.18  import java.security.PermissionCollection;
   37.19 @@ -35,10 +33,8 @@
   37.20  import java.security.Principal;
   37.21  import java.security.PrivilegedAction;
   37.22  import java.security.ProtectionDomain;
   37.23 -import java.lang.ClassLoader;
   37.24  import java.security.Security;
   37.25  import java.util.Set;
   37.26 -import java.util.Iterator;
   37.27  import java.util.WeakHashMap;
   37.28  import java.lang.ref.WeakReference;
   37.29  
   37.30 @@ -61,7 +57,8 @@
   37.31                                          "\t[SubjectDomainCombiner]");
   37.32  
   37.33      // Note: check only at classloading time, not dynamically during combine()
   37.34 -    private static final boolean useJavaxPolicy = compatPolicy();
   37.35 +    private static final boolean useJavaxPolicy =
   37.36 +        javax.security.auth.Policy.isCustomPolicySet(debug);
   37.37  
   37.38      // Relevant only when useJavaxPolicy is true
   37.39      private static final boolean allowCaching =
   37.40 @@ -202,8 +199,8 @@
   37.41              return null;
   37.42          }
   37.43  
   37.44 -        // maintain backwards compatibility for people who provide
   37.45 -        // their own javax.security.auth.Policy implementations
   37.46 +        // maintain backwards compatibility for developers who provide
   37.47 +        // their own custom javax.security.auth.Policy implementations
   37.48          if (useJavaxPolicy) {
   37.49              return combineJavaxPolicy(currentDomains, assignedDomains);
   37.50          }
   37.51 @@ -476,8 +473,7 @@
   37.52          String s = AccessController.doPrivileged
   37.53              (new PrivilegedAction<String>() {
   37.54              public String run() {
   37.55 -                return java.security.Security.getProperty
   37.56 -                                        ("cache.auth.policy");
   37.57 +                return Security.getProperty("cache.auth.policy");
   37.58              }
   37.59          });
   37.60          if (s != null) {
   37.61 @@ -488,29 +484,6 @@
   37.62          return true;
   37.63      }
   37.64  
   37.65 -    // maintain backwards compatibility for people who provide
   37.66 -    // their own javax.security.auth.Policy implementations
   37.67 -    private static boolean compatPolicy() {
   37.68 -        javax.security.auth.Policy javaxPolicy = AccessController.doPrivileged
   37.69 -            (new PrivilegedAction<javax.security.auth.Policy>() {
   37.70 -            public javax.security.auth.Policy run() {
   37.71 -                return javax.security.auth.Policy.getPolicy();
   37.72 -            }
   37.73 -        });
   37.74 -
   37.75 -        if (!(javaxPolicy instanceof com.sun.security.auth.PolicyFile)) {
   37.76 -            if (debug != null) {
   37.77 -                debug.println("Providing backwards compatibility for " +
   37.78 -                        "javax.security.auth.policy implementation: " +
   37.79 -                        javaxPolicy.toString());
   37.80 -            }
   37.81 -
   37.82 -            return true;
   37.83 -        } else {
   37.84 -            return false;
   37.85 -        }
   37.86 -    }
   37.87 -
   37.88      private static void printInputDomains(ProtectionDomain[] currentDomains,
   37.89                                  ProtectionDomain[] assignedDomains) {
   37.90          if (currentDomains == null || currentDomains.length == 0) {
    38.1 --- a/src/share/classes/javax/swing/AbstractButton.java	Tue Nov 30 09:57:47 2010 -0800
    38.2 +++ b/src/share/classes/javax/swing/AbstractButton.java	Wed Dec 08 00:35:33 2010 -0800
    38.3 @@ -1379,6 +1379,10 @@
    38.4       * If <code>true</code> and the button has a border,
    38.5       * the border is painted. The default value for the
    38.6       * <code>borderPainted</code> property is <code>true</code>.
    38.7 +     * <p/>
    38.8 +     * Some look and feels might not support
    38.9 +     * the <code>borderPainted</code> property,
   38.10 +     * in which case they ignore this.
   38.11       *
   38.12       * @param b if true and border property is not <code>null</code>,
   38.13       *          the border is painted
    39.1 --- a/src/share/classes/javax/swing/BorderFactory.java	Tue Nov 30 09:57:47 2010 -0800
    39.2 +++ b/src/share/classes/javax/swing/BorderFactory.java	Wed Dec 08 00:35:33 2010 -0800
    39.3 @@ -273,7 +273,7 @@
    39.4       * @since 1.7
    39.5       */
    39.6      public static Border createSoftBevelBorder(int type, Color highlight, Color shadow) {
    39.7 -        return new BevelBorder(type, highlight, shadow);
    39.8 +        return new SoftBevelBorder(type, highlight, shadow);
    39.9      }
   39.10  
   39.11      /**
   39.12 @@ -295,7 +295,7 @@
   39.13       * @since 1.7
   39.14       */
   39.15      public static Border createSoftBevelBorder(int type, Color highlightOuter, Color highlightInner, Color shadowOuter, Color shadowInner) {
   39.16 -        return new BevelBorder(type, highlightOuter, highlightInner, shadowOuter, shadowInner);
   39.17 +        return new SoftBevelBorder(type, highlightOuter, highlightInner, shadowOuter, shadowInner);
   39.18      }
   39.19  
   39.20  //// EtchedBorder ///////////////////////////////////////////////////////////
    40.1 --- a/src/share/classes/javax/swing/JLayer.java	Tue Nov 30 09:57:47 2010 -0800
    40.2 +++ b/src/share/classes/javax/swing/JLayer.java	Wed Dec 08 00:35:33 2010 -0800
    40.3 @@ -322,7 +322,7 @@
    40.4      }
    40.5  
    40.6      /**
    40.7 -     * A non-{@code null] border, or non-zero insets, isn't supported, to prevent the geometry
    40.8 +     * A non-{@code null} border, or non-zero insets, isn't supported, to prevent the geometry
    40.9       * of this component from becoming complex enough to inhibit
   40.10       * subclassing of {@code LayerUI} class.  To create a {@code JLayer} with a border,
   40.11       * add it to a {@code JPanel} that has a border.
   40.12 @@ -373,8 +373,12 @@
   40.13       * {@inheritDoc}
   40.14       */
   40.15      public void removeAll() {
   40.16 -        setView(null);
   40.17 -        setGlassPane(null);
   40.18 +        if (view != null) {
   40.19 +            setView(null);
   40.20 +        }
   40.21 +        if (glassPane != null) {
   40.22 +            setGlassPane(null);
   40.23 +        }
   40.24      }
   40.25  
   40.26      /**
    41.1 --- a/src/share/classes/javax/swing/JTabbedPane.java	Tue Nov 30 09:57:47 2010 -0800
    41.2 +++ b/src/share/classes/javax/swing/JTabbedPane.java	Wed Dec 08 00:35:33 2010 -0800
    41.3 @@ -1443,6 +1443,10 @@
    41.4       * which can be <code>null</code>, in which case the tab's background color
    41.5       * will default to the background color of the <code>tabbedpane</code>.
    41.6       * An internal exception is raised if there is no tab at that index.
    41.7 +     * <p/>
    41.8 +     * It is up to the look and feel to honor this property, some may
    41.9 +     * choose to ignore it.
   41.10 +     *
   41.11       * @param index the tab index where the background should be set
   41.12       * @param background the color to be displayed in the tab's background
   41.13       * @exception IndexOutOfBoundsException if index is out of range
   41.14 @@ -1472,6 +1476,9 @@
   41.15       * <code>null</code>, in which case the tab's foreground color
   41.16       * will default to the foreground color of this <code>tabbedpane</code>.
   41.17       * An internal exception is raised if there is no tab at that index.
   41.18 +     * <p/>
   41.19 +     * It is up to the look and feel to honor this property, some may
   41.20 +     * choose to ignore it.
   41.21       *
   41.22       * @param index the tab index where the foreground should be set
   41.23       * @param foreground the color to be displayed as the tab's foreground
    42.1 --- a/src/share/classes/javax/swing/border/TitledBorder.java	Tue Nov 30 09:57:47 2010 -0800
    42.2 +++ b/src/share/classes/javax/swing/border/TitledBorder.java	Wed Dec 08 00:35:33 2010 -0800
    42.3 @@ -165,11 +165,11 @@
    42.4       * @param titlePosition the position for the title
    42.5       */
    42.6      public TitledBorder(Border border,
    42.7 -                         String title,
    42.8 -                         int titleJustification,
    42.9 -                         int titlePosition) {
   42.10 +                        String title,
   42.11 +                        int titleJustification,
   42.12 +                        int titlePosition) {
   42.13          this(border, title, titleJustification,
   42.14 -                        titlePosition, null, null);
   42.15 +             titlePosition, null, null);
   42.16      }
   42.17  
   42.18      /**
   42.19 @@ -183,12 +183,12 @@
   42.20       * @param titleFont the font for rendering the title
   42.21       */
   42.22      public TitledBorder(Border border,
   42.23 -                         String title,
   42.24 -                         int titleJustification,
   42.25 -                         int titlePosition,
   42.26 -                         Font titleFont) {
   42.27 +                        String title,
   42.28 +                        int titleJustification,
   42.29 +                        int titlePosition,
   42.30 +                        Font titleFont) {
   42.31          this(border, title, titleJustification,
   42.32 -                        titlePosition, titleFont, null);
   42.33 +             titlePosition, titleFont, null);
   42.34      }
   42.35  
   42.36      /**
   42.37 @@ -205,11 +205,11 @@
   42.38       */
   42.39      @ConstructorProperties({"border", "title", "titleJustification", "titlePosition", "titleFont", "titleColor"})
   42.40      public TitledBorder(Border border,
   42.41 -                         String title,
   42.42 -                         int titleJustification,
   42.43 -                         int titlePosition,
   42.44 -                         Font titleFont,
   42.45 -                         Color titleColor) {
   42.46 +                        String title,
   42.47 +                        int titleJustification,
   42.48 +                        int titlePosition,
   42.49 +                        Font titleFont,
   42.50 +                        Color titleColor) {
   42.51          this.title = title;
   42.52          this.border = border;
   42.53          this.titleFont = titleFont;
   42.54 @@ -234,7 +234,7 @@
   42.55       * @param height the height of the painted border
   42.56       */
   42.57      public void paintBorder(Component c, Graphics g, int x, int y, int width, int height) {
   42.58 -        Border border = getBorderUI();
   42.59 +        Border border = getBorder();
   42.60          String title = getTitle();
   42.61          if ((title != null) && !title.isEmpty()) {
   42.62              int edge = (border instanceof TitledBorder) ? 0 : EDGE_SPACING;
   42.63 @@ -347,7 +347,7 @@
   42.64       * @param insets the object to be reinitialized
   42.65       */
   42.66      public Insets getBorderInsets(Component c, Insets insets) {
   42.67 -        Border border = getBorderUI();
   42.68 +        Border border = getBorder();
   42.69          if (border == null) {
   42.70              insets.set(0, 0, 0, 0);
   42.71          }
   42.72 @@ -402,22 +402,34 @@
   42.73      /**
   42.74       * Returns whether or not the border is opaque.
   42.75       */
   42.76 -    public boolean isBorderOpaque() { return false; }
   42.77 +    public boolean isBorderOpaque() {
   42.78 +        return false;
   42.79 +    }
   42.80  
   42.81      /**
   42.82       * Returns the title of the titled border.
   42.83 +     *
   42.84 +     * @return the title of the titled border
   42.85       */
   42.86 -    public String getTitle()        {       return title;   }
   42.87 +    public String getTitle() {
   42.88 +        return title;
   42.89 +    }
   42.90  
   42.91      /**
   42.92       * Returns the border of the titled border.
   42.93 +     *
   42.94 +     * @return the border of the titled border
   42.95       */
   42.96      public Border getBorder() {
   42.97 -        return border;
   42.98 +        return border != null
   42.99 +                ? border
  42.100 +                : UIManager.getBorder("TitledBorder.border");
  42.101      }
  42.102  
  42.103      /**
  42.104       * Returns the title-position of the titled border.
  42.105 +     *
  42.106 +     * @return the title-position of the titled border
  42.107       */
  42.108      public int getTitlePosition() {
  42.109          return titlePosition;
  42.110 @@ -425,20 +437,28 @@
  42.111  
  42.112      /**
  42.113       * Returns the title-justification of the titled border.
  42.114 +     *
  42.115 +     * @return the title-justification of the titled border
  42.116       */
  42.117 -    public int getTitleJustification()      {       return titleJustification;      }
  42.118 +    public int getTitleJustification() {
  42.119 +        return titleJustification;
  42.120 +    }
  42.121  
  42.122      /**
  42.123       * Returns the title-font of the titled border.
  42.124 +     *
  42.125 +     * @return the title-font of the titled border
  42.126       */
  42.127 -    public Font getTitleFont()      {
  42.128 +    public Font getTitleFont() {
  42.129          return titleFont;
  42.130      }
  42.131  
  42.132      /**
  42.133       * Returns the title-color of the titled border.
  42.134 +     *
  42.135 +     * @return the title-color of the titled border
  42.136       */
  42.137 -    public Color getTitleColor()    {
  42.138 +    public Color getTitleColor() {
  42.139          return titleColor;
  42.140      }
  42.141  
  42.142 @@ -447,15 +467,19 @@
  42.143  
  42.144      /**
  42.145       * Sets the title of the titled border.
  42.146 -     * param title the title for the border
  42.147 +     * @param title  the title for the border
  42.148       */
  42.149 -    public void setTitle(String title)      {       this.title = title;     }
  42.150 +    public void setTitle(String title) {
  42.151 +        this.title = title;
  42.152 +    }
  42.153  
  42.154      /**
  42.155       * Sets the border of the titled border.
  42.156       * @param border the border
  42.157       */
  42.158 -    public void setBorder(Border border)    {       this.border = border;   }
  42.159 +    public void setBorder(Border border) {
  42.160 +        this.border = border;
  42.161 +    }
  42.162  
  42.163      /**
  42.164       * Sets the title-position of the titled border.
  42.165 @@ -482,19 +506,19 @@
  42.166       * Sets the title-justification of the titled border.
  42.167       * @param titleJustification the justification for the border
  42.168       */
  42.169 -    public void setTitleJustification(int titleJustification)       {
  42.170 +    public void setTitleJustification(int titleJustification) {
  42.171          switch (titleJustification) {
  42.172 -          case DEFAULT_JUSTIFICATION:
  42.173 -          case LEFT:
  42.174 -          case CENTER:
  42.175 -          case RIGHT:
  42.176 -          case LEADING:
  42.177 -          case TRAILING:
  42.178 -            this.titleJustification = titleJustification;
  42.179 -            break;
  42.180 -          default:
  42.181 -            throw new IllegalArgumentException(titleJustification +
  42.182 -                                        " is not a valid title justification.");
  42.183 +            case DEFAULT_JUSTIFICATION:
  42.184 +            case LEFT:
  42.185 +            case CENTER:
  42.186 +            case RIGHT:
  42.187 +            case LEADING:
  42.188 +            case TRAILING:
  42.189 +                this.titleJustification = titleJustification;
  42.190 +                break;
  42.191 +            default:
  42.192 +                throw new IllegalArgumentException(titleJustification +
  42.193 +                        " is not a valid title justification.");
  42.194          }
  42.195      }
  42.196  
  42.197 @@ -518,6 +542,7 @@
  42.198       * Returns the minimum dimensions this border requires
  42.199       * in order to fully display the border and title.
  42.200       * @param c the component where this border will be drawn
  42.201 +     * @return the {@code Dimension} object
  42.202       */
  42.203      public Dimension getMinimumSize(Component c) {
  42.204          Insets insets = getBorderInsets(c);
  42.205 @@ -557,7 +582,7 @@
  42.206          if (height < 0) {
  42.207              throw new IllegalArgumentException("Height must be >= 0");
  42.208          }
  42.209 -        Border border = getBorderUI();
  42.210 +        Border border = getBorder();
  42.211          String title = getTitle();
  42.212          if ((title != null) && !title.isEmpty()) {
  42.213              int edge = (border instanceof TitledBorder) ? 0 : EDGE_SPACING;
  42.214 @@ -616,13 +641,6 @@
  42.215          return Component.BaselineResizeBehavior.OTHER;
  42.216      }
  42.217  
  42.218 -    private Border getBorderUI() {
  42.219 -        Border border = getBorder();
  42.220 -        return border != null
  42.221 -                ? border
  42.222 -                : UIManager.getBorder("TitledBorder.border");
  42.223 -    }
  42.224 -
  42.225      private int getPosition() {
  42.226          int position = getTitlePosition();
  42.227          if (position != DEFAULT_POSITION) {
    43.1 --- a/src/share/classes/javax/swing/plaf/LayerUI.java	Tue Nov 30 09:57:47 2010 -0800
    43.2 +++ b/src/share/classes/javax/swing/plaf/LayerUI.java	Wed Dec 08 00:35:33 2010 -0800
    43.3 @@ -449,8 +449,8 @@
    43.4  
    43.5      /**
    43.6       * Configures the {@code JLayer} this {@code LayerUI} is set to.
    43.7 -     * The default implementation registers the {@code LayerUI}
    43.8 -     * as a property change listener for the passed {@code JLayer} component.
    43.9 +     * The default implementation registers the passed {@code JLayer} component
   43.10 +     * as a {@code PropertyChangeListener} for the property changes of this {@code LayerUI}.
   43.11       *
   43.12       * @param c the {@code JLayer} component where this UI delegate is being installed
   43.13       */
   43.14 @@ -461,8 +461,8 @@
   43.15      /**
   43.16       * Reverses the configuration which was previously set
   43.17       * in the {@link #installUI(JComponent)} method.
   43.18 -     * The default implementation unregisters the property change listener
   43.19 -     * for the passed JLayer component.
   43.20 +     * The default implementation unregisters the passed {@code JLayer} component
   43.21 +     * as a {@code PropertyChangeListener} for the property changes of this {@code LayerUI}.
   43.22       *
   43.23       * @param c the component from which this UI delegate is being removed.
   43.24       */
    44.1 --- a/src/share/classes/javax/swing/plaf/basic/BasicMenuUI.java	Tue Nov 30 09:57:47 2010 -0800
    44.2 +++ b/src/share/classes/javax/swing/plaf/basic/BasicMenuUI.java	Wed Dec 08 00:35:33 2010 -0800
    44.3 @@ -196,6 +196,10 @@
    44.4          return getHandler();
    44.5      }
    44.6  
    44.7 +    protected MenuKeyListener createMenuKeyListener(JComponent c) {
    44.8 +        return (MenuKeyListener)getHandler();
    44.9 +    }
   44.10 +
   44.11      public Dimension getMaximumSize(JComponent c) {
   44.12          if (((JMenu)menuItem).isTopLevelMenu() == true) {
   44.13              Dimension d = c.getPreferredSize();
   44.14 @@ -397,7 +401,7 @@
   44.15          public void stateChanged(ChangeEvent e) { }
   44.16      }
   44.17  
   44.18 -    private class Handler extends BasicMenuItemUI.Handler {
   44.19 +    private class Handler extends BasicMenuItemUI.Handler implements MenuKeyListener {
   44.20          //
   44.21          // PropertyChangeListener
   44.22          //
   44.23 @@ -580,5 +584,48 @@
   44.24          }
   44.25          public void menuDragMouseExited(MenuDragMouseEvent e) {}
   44.26          public void menuDragMouseReleased(MenuDragMouseEvent e) {}
   44.27 +
   44.28 +        //
   44.29 +        // MenuKeyListener
   44.30 +        //
   44.31 +        /**
   44.32 +         * Open the Menu
   44.33 +         */
   44.34 +        public void menuKeyTyped(MenuKeyEvent e) {
   44.35 +            if (!crossMenuMnemonic && BasicPopupMenuUI.getLastPopup() != null) {
   44.36 +                // when crossMenuMnemonic is not set, we don't open a toplevel
   44.37 +                // menu if another toplevel menu is already open
   44.38 +                return;
   44.39 +            }
   44.40 +
   44.41 +            if (BasicPopupMenuUI.getPopups().size() != 0) {
   44.42 +                //Fix 6939261: to return in case not on the main menu
   44.43 +                //and has a pop-up.
   44.44 +                //after return code will be handled in BasicPopupMenuUI.java
   44.45 +                return;
   44.46 +            }
   44.47 +
   44.48 +            char key = Character.toLowerCase((char)menuItem.getMnemonic());
   44.49 +            MenuElement path[] = e.getPath();
   44.50 +            if (key == Character.toLowerCase(e.getKeyChar())) {
   44.51 +                JPopupMenu popupMenu = ((JMenu)menuItem).getPopupMenu();
   44.52 +                ArrayList newList = new ArrayList(Arrays.asList(path));
   44.53 +                newList.add(popupMenu);
   44.54 +                MenuElement subs[] = popupMenu.getSubElements();
   44.55 +                MenuElement sub =
   44.56 +                        BasicPopupMenuUI.findEnabledChild(subs, -1, true);
   44.57 +                if(sub != null) {
   44.58 +                    newList.add(sub);
   44.59 +                }
   44.60 +                MenuSelectionManager manager = e.getMenuSelectionManager();
   44.61 +                MenuElement newPath[] = new MenuElement[0];;
   44.62 +                newPath = (MenuElement[]) newList.toArray(newPath);
   44.63 +                manager.setSelectedPath(newPath);
   44.64 +                e.consume();
   44.65 +            }
   44.66 +        }
   44.67 +
   44.68 +        public void menuKeyPressed(MenuKeyEvent e) {}
   44.69 +        public void menuKeyReleased(MenuKeyEvent e) {}
   44.70      }
   44.71  }
    45.1 --- a/src/share/classes/javax/swing/plaf/metal/MetalScrollPaneUI.java	Tue Nov 30 09:57:47 2010 -0800
    45.2 +++ b/src/share/classes/javax/swing/plaf/metal/MetalScrollPaneUI.java	Wed Dec 08 00:35:33 2010 -0800
    45.3 @@ -81,17 +81,26 @@
    45.4          }
    45.5      }
    45.6  
    45.7 -
    45.8      public void installListeners(JScrollPane scrollPane) {
    45.9          super.installListeners(scrollPane);
   45.10          scrollBarSwapListener = createScrollBarSwapListener();
   45.11          scrollPane.addPropertyChangeListener(scrollBarSwapListener);
   45.12      }
   45.13  
   45.14 +    /**
   45.15 +     * {@inheritDoc}
   45.16 +     */
   45.17 +    protected void uninstallListeners(JComponent c) {
   45.18 +        super.uninstallListeners(c);
   45.19 +        c.removePropertyChangeListener(scrollBarSwapListener);
   45.20 +    }
   45.21  
   45.22 +    /**
   45.23 +     * @deprecated - Replaced by {@link #uninstallListeners(JComponent)}
   45.24 +     */
   45.25 +    @Deprecated
   45.26      public void uninstallListeners(JScrollPane scrollPane) {
   45.27          super.uninstallListeners(scrollPane);
   45.28 -
   45.29          scrollPane.removePropertyChangeListener(scrollBarSwapListener);
   45.30      }
   45.31  
    46.1 --- a/src/share/classes/sun/awt/AWTAccessor.java	Tue Nov 30 09:57:47 2010 -0800
    46.2 +++ b/src/share/classes/sun/awt/AWTAccessor.java	Wed Dec 08 00:35:33 2010 -0800
    46.3 @@ -224,6 +224,16 @@
    46.4      }
    46.5  
    46.6      /*
    46.7 +     * An interface of accessor for the java.awt.Container class.
    46.8 +     */
    46.9 +    public interface ContainerAccessor {
   46.10 +        /**
   46.11 +         * Validates the container unconditionally.
   46.12 +         */
   46.13 +        void validateUnconditionally(Container cont);
   46.14 +    }
   46.15 +
   46.16 +    /*
   46.17       * An interface of accessor for java.awt.Window class.
   46.18       */
   46.19      public interface WindowAccessor {
   46.20 @@ -334,6 +344,10 @@
   46.21           * Gets the state of this frame.
   46.22           */
   46.23         int getExtendedState(Frame frame);
   46.24 +        /*
   46.25 +         * Gets the maximized bounds of this frame.
   46.26 +         */
   46.27 +       Rectangle getMaximizedBounds(Frame frame);
   46.28      }
   46.29  
   46.30      /*
   46.31 @@ -440,53 +454,19 @@
   46.32      }
   46.33  
   46.34      /*
   46.35 -     * The java.awt.Component class accessor object.
   46.36 +     * Accessor instances are initialized in the static initializers of
   46.37 +     * corresponding AWT classes by using setters defined below.
   46.38       */
   46.39      private static ComponentAccessor componentAccessor;
   46.40 -
   46.41 -    /*
   46.42 -     * The java.awt.Window class accessor object.
   46.43 -     */
   46.44 +    private static ContainerAccessor containerAccessor;
   46.45      private static WindowAccessor windowAccessor;
   46.46 -
   46.47 -    /*
   46.48 -     * The java.awt.AWTEvent class accessor object.
   46.49 -     */
   46.50      private static AWTEventAccessor awtEventAccessor;
   46.51 -
   46.52 -    /*
   46.53 -     * The java.awt.event.InputEvent class accessor object.
   46.54 -     */
   46.55      private static InputEventAccessor inputEventAccessor;
   46.56 -
   46.57 -    /*
   46.58 -     * The java.awt.Frame class accessor object.
   46.59 -     */
   46.60      private static FrameAccessor frameAccessor;
   46.61 -
   46.62 -    /*
   46.63 -     * The java.awt.KeyboardFocusManager class accessor object.
   46.64 -     */
   46.65      private static KeyboardFocusManagerAccessor kfmAccessor;
   46.66 -
   46.67 -    /*
   46.68 -     * The java.awt.MenuComponent class accessor object.
   46.69 -     */
   46.70      private static MenuComponentAccessor menuComponentAccessor;
   46.71 -
   46.72 -    /*
   46.73 -     * The java.awt.EventQueue class accessor object.
   46.74 -     */
   46.75      private static EventQueueAccessor eventQueueAccessor;
   46.76 -
   46.77 -    /*
   46.78 -     * The java.awt.PopupMenu class accessor object.
   46.79 -     */
   46.80      private static PopupMenuAccessor popupMenuAccessor;
   46.81 -
   46.82 -    /*
   46.83 -     * The java.awt.FileDialog class accessor object.
   46.84 -     */
   46.85      private static FileDialogAccessor fileDialogAccessor;
   46.86  
   46.87      /*
   46.88 @@ -497,7 +477,7 @@
   46.89      }
   46.90  
   46.91      /*
   46.92 -     * Retrieve the accessor object for the java.awt.Window class.
   46.93 +     * Retrieve the accessor object for the java.awt.Component class.
   46.94       */
   46.95      public static ComponentAccessor getComponentAccessor() {
   46.96          if (componentAccessor == null) {
   46.97 @@ -508,6 +488,24 @@
   46.98      }
   46.99  
  46.100      /*
  46.101 +     * Set an accessor object for the java.awt.Container class.
  46.102 +     */
  46.103 +    public static void setContainerAccessor(ContainerAccessor ca) {
  46.104 +        containerAccessor = ca;
  46.105 +    }
  46.106 +
  46.107 +    /*
  46.108 +     * Retrieve the accessor object for the java.awt.Container class.
  46.109 +     */
  46.110 +    public static ContainerAccessor getContainerAccessor() {
  46.111 +        if (containerAccessor == null) {
  46.112 +            unsafe.ensureClassInitialized(Container.class);
  46.113 +        }
  46.114 +
  46.115 +        return containerAccessor;
  46.116 +    }
  46.117 +
  46.118 +    /*
  46.119       * Set an accessor object for the java.awt.Window class.
  46.120       */
  46.121      public static void setWindowAccessor(WindowAccessor wa) {
    47.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    47.2 +++ b/src/share/classes/sun/io/ByteToCharCp833.java	Wed Dec 08 00:35:33 2010 -0800
    47.3 @@ -0,0 +1,42 @@
    47.4 +/*
    47.5 + * Copyright (c) 2010 Oracle and/or its affiliates. All rights reserved.
    47.6 + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
    47.7 + *
    47.8 + * This code is free software; you can redistribute it and/or modify it
    47.9 + * under the terms of the GNU General Public License version 2 only, as
   47.10 + * published by the Free Software Foundation.  Oracle designates this
   47.11 + * particular file as subject to the "Classpath" exception as provided
   47.12 + * by Oracle in the LICENSE file that accompanied this code.
   47.13 + *
   47.14 + * This code is distributed in the hope that it will be useful, but WITHOUT
   47.15 + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
   47.16 + * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
   47.17 + * version 2 for more details (a copy is included in the LICENSE file that
   47.18 + * accompanied this code).
   47.19 + *
   47.20 + * You should have received a copy of the GNU General Public License version
   47.21 + * 2 along with this work; if not, write to the Free Software Foundation,
   47.22 + * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
   47.23 + *
   47.24 + * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
   47.25 + * or visit www.oracle.com if you need additional information or have any
   47.26 + * questions.
   47.27 + */
   47.28 +
   47.29 +package sun.io;
   47.30 +
   47.31 +import sun.nio.cs.ext.IBM833;
   47.32 +
   47.33 +public class ByteToCharCp833 extends ByteToCharSingleByte {
   47.34 +
   47.35 +    private final static IBM833 nioCoder = new IBM833();
   47.36 +
   47.37 +    public String getCharacterEncoding() {
   47.38 +        return "Cp833";
   47.39 +    }
   47.40 +
   47.41 +    public ByteToCharCp833() {
   47.42 +        super.byteToCharTable = nioCoder.getDecoderSingleByteMappings();
   47.43 +    }
   47.44 +}
   47.45 +
    48.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    48.2 +++ b/src/share/classes/sun/io/CharToByteCp833.java	Wed Dec 08 00:35:33 2010 -0800
    48.3 @@ -0,0 +1,46 @@
    48.4 +/*
    48.5 + * Copyright (c) 2010 Oracle and/or its affiliates. All rights reserved.
    48.6 + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
    48.7 + *
    48.8 + * This code is free software; you can redistribute it and/or modify it
    48.9 + * under the terms of the GNU General Public License version 2 only, as
   48.10 + * published by the Free Software Foundation.  Oracle designates this
   48.11 + * particular file as subject to the "Classpath" exception as provided
   48.12 + * by Oracle in the LICENSE file that accompanied this code.
   48.13 + *
   48.14 + * This code is distributed in the hope that it will be useful, but WITHOUT
   48.15 + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
   48.16 + * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
   48.17 + * version 2 for more details (a copy is included in the LICENSE file that
   48.18 + * accompanied this code).
   48.19 + *
   48.20 + * You should have received a copy of the GNU General Public License version
   48.21 + * 2 along with this work; if not, write to the Free Software Foundation,
   48.22 + * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
   48.23 + *
   48.24 + * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
   48.25 + * or visit www.oracle.com if you need additional information or have any
   48.26 + * questions.
   48.27 + */
   48.28 +
   48.29 +package sun.io;
   48.30 +
   48.31 +import sun.nio.cs.ext.IBM833;
   48.32 +
   48.33 +public class CharToByteCp833 extends CharToByteSingleByte {
   48.34 +
   48.35 +    private final static IBM833 nioCoder = new IBM833();
   48.36 +
   48.37 +    public String getCharacterEncoding() {
   48.38 +        return "Cp833";
   48.39 +    }
   48.40 +
   48.41 +    public CharToByteCp833() {
   48.42 +        super.mask1 = 0xFF00;
   48.43 +        super.mask2 = 0x00FF;
   48.44 +        super.shift = 8;
   48.45 +        super.index1 = nioCoder.getEncoderIndex1();
   48.46 +        super.index2 = nioCoder.getEncoderIndex2();
   48.47 +    }
   48.48 +}
   48.49 +
    49.1 --- a/src/share/classes/sun/io/CharacterEncoding.java	Tue Nov 30 09:57:47 2010 -0800
    49.2 +++ b/src/share/classes/sun/io/CharacterEncoding.java	Wed Dec 08 00:35:33 2010 -0800
    49.3 @@ -1,5 +1,5 @@
    49.4  /*
    49.5 - * Copyright (c) 1996, 2006, Oracle and/or its affiliates. All rights reserved.
    49.6 + * Copyright (c) 1996, 2010, Oracle and/or its affiliates. All rights reserved.
    49.7   * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
    49.8   *
    49.9   * This code is free software; you can redistribute it and/or modify it
   49.10 @@ -406,6 +406,11 @@
   49.11              aliasTable.put("cp775",                 "Cp775");
   49.12              aliasTable.put("775",                   "Cp775");
   49.13  
   49.14 +            aliasTable.put("ibm833",                "Cp833");
   49.15 +            aliasTable.put("ibm-833",               "Cp833");
   49.16 +            aliasTable.put("cp833",                 "Cp833");
   49.17 +            aliasTable.put("833",                   "Cp833");
   49.18 +
   49.19              aliasTable.put("ibm834",                "Cp834");
   49.20              aliasTable.put("ibm-834",               "Cp834");
   49.21              aliasTable.put("cp834",                 "Cp834");
    50.1 --- a/src/share/classes/sun/launcher/LauncherHelper.java	Tue Nov 30 09:57:47 2010 -0800
    50.2 +++ b/src/share/classes/sun/launcher/LauncherHelper.java	Wed Dec 08 00:35:33 2010 -0800
    50.3 @@ -44,8 +44,16 @@
    50.4  import java.io.PrintStream;
    50.5  import java.lang.reflect.Method;
    50.6  import java.lang.reflect.Modifier;
    50.7 +import java.math.BigDecimal;
    50.8 +import java.math.MathContext;
    50.9 +import java.math.RoundingMode;
   50.10  import java.util.ResourceBundle;
   50.11  import java.text.MessageFormat;
   50.12 +import java.util.ArrayList;
   50.13 +import java.util.Collections;
   50.14 +import java.util.List;
   50.15 +import java.util.Locale;
   50.16 +import java.util.Properties;
   50.17  import java.util.jar.Attributes;
   50.18  import java.util.jar.JarFile;
   50.19  import java.util.jar.Manifest;
   50.20 @@ -59,6 +67,17 @@
   50.21      private static StringBuilder outBuf = new StringBuilder();
   50.22  
   50.23      private static ResourceBundle javarb = null;
   50.24 +
   50.25 +    private static final String INDENT = "    ";
   50.26 +    private static final String VM_SETTINGS     = "VM settings:";
   50.27 +    private static final String PROP_SETTINGS   = "Property settings:";
   50.28 +    private static final String LOCALE_SETTINGS = "Locale settings:";
   50.29 +
   50.30 +    private static final long K = 1024;
   50.31 +    private static final long M = K * K;
   50.32 +    private static final long G = M * K;
   50.33 +    private static final long T = G * K;
   50.34 +
   50.35      private static synchronized ResourceBundle getLauncherResourceBundle() {
   50.36          if (javarb == null) {
   50.37              javarb = ResourceBundle.getBundle(defaultBundleName);
   50.38 @@ -66,6 +85,184 @@
   50.39          return javarb;
   50.40      }
   50.41  
   50.42 +    /*
   50.43 +     * A method called by the launcher to print out the standard settings,
   50.44 +     * by default -XshowSettings is equivalent to -XshowSettings:all,
   50.45 +     * Specific information may be gotten by using suboptions with possible
   50.46 +     * values vm, properties and locale.
   50.47 +     *
   50.48 +     * printToStderr: choose between stdout and stderr
   50.49 +     *
   50.50 +     * optionFlag: specifies which options to print default is all other
   50.51 +     *    possible values are vm, properties, locale.
   50.52 +     *
   50.53 +     * maxHeapSize: in bytes, as set by the launcher, a zero-value indicates
   50.54 +     *    this code should determine this value, using a suitable method.
   50.55 +     *
   50.56 +     * stackSize: in bytes, as set by the launcher, a zero-value indicates
   50.57 +     * this code determine this value, using a suitable method.
   50.58 +     */
   50.59 +    static void showSettings(boolean printToStderr, String optionFlag,
   50.60 +            long maxHeapSize, long stackSize, boolean isServer) {
   50.61 +
   50.62 +        PrintStream ostream = (printToStderr) ? System.err : System.out;
   50.63 +        String opts[] = optionFlag.split(":");
   50.64 +        String optStr = (opts.length > 1 && opts[1] != null)
   50.65 +                ? opts[1].trim()
   50.66 +                : "all";
   50.67 +        switch (optStr) {
   50.68 +            case "vm":
   50.69 +                printVmSettings(ostream, maxHeapSize, stackSize, isServer);
   50.70 +                break;
   50.71 +            case "properties":
   50.72 +                printProperties(ostream);
   50.73 +                break;
   50.74 +            case "locale":
   50.75 +                printLocale(ostream);
   50.76 +                break;
   50.77 +            default:
   50.78 +                printVmSettings(ostream, maxHeapSize, stackSize, isServer);
   50.79 +                printProperties(ostream);
   50.80 +                printLocale(ostream);
   50.81 +                break;
   50.82 +        }
   50.83 +    }
   50.84 +
   50.85 +    /*
   50.86 +     * prints the main vm settings subopt/section
   50.87 +     */
   50.88 +    private static void printVmSettings(PrintStream ostream, long maxHeapSize,
   50.89 +            long stackSize, boolean isServer) {
   50.90 +
   50.91 +        ostream.println(VM_SETTINGS);
   50.92 +        if (stackSize != 0L) {
   50.93 +            ostream.println(INDENT + "Stack Size: " + scaleValue(stackSize));
   50.94 +        }
   50.95 +        if (maxHeapSize != 0L) {
   50.96 +            ostream.println(INDENT + "Max. Heap Size: " + scaleValue(maxHeapSize));
   50.97 +        } else {
   50.98 +            ostream.println(INDENT + "Max. Heap Size (Estimated): "
   50.99 +                    + scaleValue(Runtime.getRuntime().maxMemory()));
  50.100 +        }
  50.101 +        ostream.println(INDENT + "Ergonomics Machine Class: "
  50.102 +                + ((isServer) ? "server" : "client"));
  50.103 +        ostream.println(INDENT + "Using VM: "
  50.104 +                + System.getProperty("java.vm.name"));
  50.105 +        ostream.println();
  50.106 +    }
  50.107 +
  50.108 +    /*
  50.109 +     * scale the incoming values to a human readable form, represented as
  50.110 +     * K, M, G and T, see java.c parse_size for the scaled values and
  50.111 +     * suffixes.
  50.112 +     */
  50.113 +
  50.114 +    private static String scaleValue(double v) {
  50.115 +        MathContext mc2 = new MathContext(3, RoundingMode.HALF_EVEN);
  50.116 +
  50.117 +        if (v >= K && v < M) {
  50.118 +            return (new BigDecimal(v / K, mc2)).toPlainString() + "K";
  50.119 +        } else if (v >= M && v < G) {
  50.120 +            return (new BigDecimal(v / M, mc2)).toPlainString() + "M";
  50.121 +        } else if (v >= G && v < T) {
  50.122 +            return (new BigDecimal(v / G, mc2)).toPlainString() + "G";
  50.123 +        } else if (v >= T) {
  50.124 +            return (new BigDecimal(v / T, mc2)).toPlainString() + "T";
  50.125 +        } else {
  50.126 +            return String.format("%.0f", v);
  50.127 +        }
  50.128 +    }
  50.129 +
  50.130 +    /*
  50.131 +     * prints the properties subopt/section
  50.132 +     */
  50.133 +    private static void printProperties(PrintStream ostream) {
  50.134 +        Properties p = System.getProperties();
  50.135 +        ostream.println(PROP_SETTINGS);
  50.136 +        List<String> sortedPropertyKeys = new ArrayList<>();
  50.137 +        sortedPropertyKeys.addAll(p.stringPropertyNames());
  50.138 +        Collections.sort(sortedPropertyKeys);
  50.139 +        for (String x : sortedPropertyKeys) {
  50.140 +            printPropertyValue(ostream, x, p.getProperty(x));
  50.141 +        }
  50.142 +        ostream.println();
  50.143 +    }
  50.144 +
  50.145 +    private static boolean isPath(String key) {
  50.146 +        return key.endsWith(".dirs") || key.endsWith(".path");
  50.147 +    }
  50.148 +
  50.149 +    private static void printPropertyValue(PrintStream ostream,
  50.150 +            String key, String value) {
  50.151 +        ostream.print(INDENT + key + " = ");
  50.152 +        if (key.equals("line.separator")) {
  50.153 +            byte[] bytes = value.getBytes();
  50.154 +            for (byte b : bytes) {
  50.155 +                switch (b) {
  50.156 +                    case 0xd:
  50.157 +                        ostream.print("CR ");
  50.158 +                        break;
  50.159 +                    case 0xa:
  50.160 +                        ostream.print("LF ");
  50.161 +                        break;
  50.162 +                    default:
  50.163 +                        ostream.printf("0x%02X", b & 0xff);
  50.164 +                        break;
  50.165 +                }
  50.166 +            }
  50.167 +            ostream.println();
  50.168 +            return;
  50.169 +        }
  50.170 +        if (!isPath(key)) {
  50.171 +            ostream.println(value);
  50.172 +            return;
  50.173 +        }
  50.174 +        // pretty print the path values as a list
  50.175 +        String[] values = value.split(System.getProperty("path.separator"));
  50.176 +        int len = values.length;
  50.177 +        for (int i = 0 ; i < len ; i++) {
  50.178 +            if (i == 0) { // first line treated specially
  50.179 +                ostream.println(values[i]);
  50.180 +            } else { // following lines prefix with indents
  50.181 +                ostream.print(INDENT + INDENT);
  50.182 +                ostream.println(values[i]);
  50.183 +            }
  50.184 +        }
  50.185 +    }
  50.186 +
  50.187 +    /*
  50.188 +     * prints the locale subopt/section
  50.189 +     */
  50.190 +    private static void printLocale(PrintStream ostream) {
  50.191 +        Locale locale = Locale.getDefault();
  50.192 +        ostream.println(LOCALE_SETTINGS);
  50.193 +        ostream.println(INDENT + "default locale = " + locale.getDisplayLanguage());
  50.194 +        printLocales(ostream);
  50.195 +        ostream.println();
  50.196 +    }
  50.197 +
  50.198 +    private static void printLocales(PrintStream ostream) {
  50.199 +        Locale[] locales = Locale.getAvailableLocales();
  50.200 +        final int len = locales == null ? 0 : locales.length;
  50.201 +        if (len < 1 ) {
  50.202 +            return;
  50.203 +        }
  50.204 +        ostream.print(INDENT + "available locales = ");
  50.205 +        final int last = len - 1 ;
  50.206 +        for (int i = 0; i < last ; i++) {
  50.207 +            ostream.print(locales[i]);
  50.208 +            if (i != last) {
  50.209 +                ostream.print(", ");
  50.210 +            }
  50.211 +            // print columns of 8
  50.212 +            if ((i + 1) % 8 == 0) {
  50.213 +                ostream.println();
  50.214 +                ostream.print(INDENT + INDENT);
  50.215 +            }
  50.216 +        }
  50.217 +        ostream.println(locales[last]);
  50.218 +    }
  50.219 +
  50.220      /**
  50.221       * A private helper method to get a localized message and also
  50.222       * apply any arguments that we might pass.
    51.1 --- a/src/share/classes/sun/launcher/resources/launcher.properties	Tue Nov 30 09:57:47 2010 -0800
    51.2 +++ b/src/share/classes/sun/launcher/resources/launcher.properties	Wed Dec 08 00:35:33 2010 -0800
    51.3 @@ -1,5 +1,5 @@
    51.4  #
    51.5 -# Copyright (c) 2007, 2008, Oracle and/or its affiliates. All rights reserved.
    51.6 +# Copyright (c) 2007, 2010, Oracle and/or its affiliates. All rights reserved.
    51.7  # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
    51.8  #
    51.9  # This code is free software; you can redistribute it and/or modify it
   51.10 @@ -97,7 +97,15 @@
   51.11  \    -Xcheck:jni       perform additional checks for JNI functions\n\
   51.12  \    -Xshare:off       do not attempt to use shared class data\n\
   51.13  \    -Xshare:auto      use shared class data if possible (default)\n\
   51.14 -\    -Xshare:on        require using shared class data, otherwise fail.\n\n\
   51.15 +\    -Xshare:on        require using shared class data, otherwise fail.\n\
   51.16 +\    -XshowSettings    show all settings and continue\n\
   51.17 +\    -XshowSettings:all\n\
   51.18 +\                      show all settings and continue\n\
   51.19 +\    -XshowSettings:vm show all vm related settings and continue\n\
   51.20 +\    -XshowSettings:properties\n\
   51.21 +\                      show all property settings and continue\n\
   51.22 +\    -XshowSettings:locale\n\
   51.23 +\                      show all locale related settings and continue\n\n\
   51.24  The -X options are non-standard and subject to change without notice.\n
   51.25  
   51.26  java.launcher.cls.error1=\
    52.1 --- a/src/share/classes/sun/net/httpserver/ChunkedInputStream.java	Tue Nov 30 09:57:47 2010 -0800
    52.2 +++ b/src/share/classes/sun/net/httpserver/ChunkedInputStream.java	Wed Dec 08 00:35:33 2010 -0800
    52.3 @@ -110,6 +110,7 @@
    52.4              if (remaining == 0) {
    52.5                  eof = true;
    52.6                  consumeCRLF();
    52.7 +                t.getServerImpl().requestCompleted (t.getConnection());
    52.8                  return -1;
    52.9              }
   52.10              needToReadHeader = false;
    53.1 --- a/src/share/classes/sun/net/httpserver/Event.java	Tue Nov 30 09:57:47 2010 -0800
    53.2 +++ b/src/share/classes/sun/net/httpserver/Event.java	Wed Dec 08 00:35:33 2010 -0800
    53.3 @@ -40,5 +40,7 @@
    53.4  class WriteFinishedEvent extends Event {
    53.5      WriteFinishedEvent (ExchangeImpl t) {
    53.6          super (t);
    53.7 +        assert !t.writefinished;
    53.8 +        t.writefinished = true;
    53.9      }
   53.10  }
    54.1 --- a/src/share/classes/sun/net/httpserver/ExchangeImpl.java	Tue Nov 30 09:57:47 2010 -0800
    54.2 +++ b/src/share/classes/sun/net/httpserver/ExchangeImpl.java	Wed Dec 08 00:35:33 2010 -0800
    54.3 @@ -38,6 +38,7 @@
    54.4      Headers reqHdrs, rspHdrs;
    54.5      Request req;
    54.6      String method;
    54.7 +    boolean writefinished;
    54.8      URI uri;
    54.9      HttpConnection connection;
   54.10      long reqContentLen;
    55.1 --- a/src/share/classes/sun/net/httpserver/FixedLengthInputStream.java	Tue Nov 30 09:57:47 2010 -0800
    55.2 +++ b/src/share/classes/sun/net/httpserver/FixedLengthInputStream.java	Wed Dec 08 00:35:33 2010 -0800
    55.3 @@ -56,6 +56,9 @@
    55.4          int n = in.read(b, off, len);
    55.5          if (n > -1) {
    55.6              remaining -= n;
    55.7 +            if (remaining == 0) {
    55.8 +                t.getServerImpl().requestCompleted (t.getConnection());
    55.9 +            }
   55.10          }
   55.11          return n;
   55.12      }
    56.1 --- a/src/share/classes/sun/net/httpserver/HttpConnection.java	Tue Nov 30 09:57:47 2010 -0800
    56.2 +++ b/src/share/classes/sun/net/httpserver/HttpConnection.java	Wed Dec 08 00:35:33 2010 -0800
    56.3 @@ -55,10 +55,15 @@
    56.4      SelectionKey selectionKey;
    56.5      String protocol;
    56.6      long time;
    56.7 +    volatile long creationTime; // time this connection was created
    56.8 +    volatile long rspStartedTime; // time we started writing the response
    56.9      int remaining;
   56.10      boolean closed = false;
   56.11      Logger logger;
   56.12  
   56.13 +    public enum State {IDLE, REQUEST, RESPONSE};
   56.14 +    volatile State state;
   56.15 +
   56.16      public String toString() {
   56.17          String s = null;
   56.18          if (chan != null) {
   56.19 @@ -78,6 +83,14 @@
   56.20          context = ctx;
   56.21      }
   56.22  
   56.23 +    State getState() {
   56.24 +        return state;
   56.25 +    }
   56.26 +
   56.27 +    void setState (State s) {
   56.28 +        state = s;
   56.29 +    }
   56.30 +
   56.31      void setParameters (
   56.32          InputStream in, OutputStream rawout, SocketChannel chan,
   56.33          SSLEngine engine, SSLStreams sslStreams, SSLContext sslContext, String protocol,
    57.1 --- a/src/share/classes/sun/net/httpserver/Request.java	Tue Nov 30 09:57:47 2010 -0800
    57.2 +++ b/src/share/classes/sun/net/httpserver/Request.java	Wed Dec 08 00:35:33 2010 -0800
    57.3 @@ -201,32 +201,22 @@
    57.4  
    57.5      static class ReadStream extends InputStream {
    57.6          SocketChannel channel;
    57.7 -        SelectorCache sc;
    57.8 -        Selector selector;
    57.9          ByteBuffer chanbuf;
   57.10 -        SelectionKey key;
   57.11 -        int available;
   57.12          byte[] one;
   57.13 -        boolean closed = false, eof = false;
   57.14 +        private boolean closed = false, eof = false;
   57.15          ByteBuffer markBuf; /* reads may be satisifed from this buffer */
   57.16          boolean marked;
   57.17          boolean reset;
   57.18          int readlimit;
   57.19          static long readTimeout;
   57.20          ServerImpl server;
   57.21 -
   57.22 -        static {
   57.23 -            readTimeout = ServerConfig.getReadTimeout();
   57.24 -        }
   57.25 +        final static int BUFSIZE = 8 * 1024;
   57.26  
   57.27          public ReadStream (ServerImpl server, SocketChannel chan) throws IOException {
   57.28              this.channel = chan;
   57.29              this.server = server;
   57.30 -            sc = SelectorCache.getSelectorCache();
   57.31 -            selector = sc.getSelector();
   57.32 -            chanbuf = ByteBuffer.allocate (8* 1024);
   57.33 -            key = chan.register (selector, SelectionKey.OP_READ);
   57.34 -            available = 0;
   57.35 +            chanbuf = ByteBuffer.allocate (BUFSIZE);
   57.36 +            chanbuf.clear();
   57.37              one = new byte[1];
   57.38              closed = marked = reset = false;
   57.39          }
   57.40 @@ -255,6 +245,12 @@
   57.41                  return -1;
   57.42              }
   57.43  
   57.44 +            assert channel.isBlocking();
   57.45 +
   57.46 +            if (off < 0 || srclen < 0|| srclen > (b.length-off)) {
   57.47 +                throw new IndexOutOfBoundsException ();
   57.48 +            }
   57.49 +
   57.50              if (reset) { /* satisfy from markBuf */
   57.51                  canreturn = markBuf.remaining ();
   57.52                  willreturn = canreturn>srclen ? srclen : canreturn;
   57.53 @@ -263,17 +259,19 @@
   57.54                      reset = false;
   57.55                  }
   57.56              } else { /* satisfy from channel */
   57.57 -                canreturn = available();
   57.58 -                while (canreturn == 0 && !eof) {
   57.59 -                    block ();
   57.60 -                    canreturn = available();
   57.61 +                chanbuf.clear ();
   57.62 +                if (srclen <  BUFSIZE) {
   57.63 +                    chanbuf.limit (srclen);
   57.64                  }
   57.65 -                if (eof) {
   57.66 +                do {
   57.67 +                    willreturn = channel.read (chanbuf);
   57.68 +                } while (willreturn == 0);
   57.69 +                if (willreturn == -1) {
   57.70 +                    eof = true;
   57.71                      return -1;
   57.72                  }
   57.73 -                willreturn = canreturn>srclen ? srclen : canreturn;
   57.74 +                chanbuf.flip ();
   57.75                  chanbuf.get(b, off, willreturn);
   57.76 -                available -= willreturn;
   57.77  
   57.78                  if (marked) { /* copy into markBuf */
   57.79                      try {
   57.80 @@ -286,6 +284,11 @@
   57.81              return willreturn;
   57.82          }
   57.83  
   57.84 +        public boolean markSupported () {
   57.85 +            return true;
   57.86 +        }
   57.87 +
   57.88 +        /* Does not query the OS socket */
   57.89          public synchronized int available () throws IOException {
   57.90              if (closed)
   57.91                  throw new IOException ("Stream is closed");
   57.92 @@ -296,36 +299,7 @@
   57.93              if (reset)
   57.94                  return markBuf.remaining();
   57.95  
   57.96 -            if (available > 0)
   57.97 -                return available;
   57.98 -
   57.99 -            chanbuf.clear ();
  57.100 -            available = channel.read (chanbuf);
  57.101 -            if (available > 0) {
  57.102 -                chanbuf.flip();
  57.103 -            } else if (available == -1) {
  57.104 -                eof = true;
  57.105 -                available = 0;
  57.106 -            }
  57.107 -            return available;
  57.108 -        }
  57.109 -
  57.110 -        /**
  57.111 -         * block() only called when available==0 and buf is empty
  57.112 -         */
  57.113 -        private synchronized void block () throws IOException {
  57.114 -            long currtime = server.getTime();
  57.115 -            long maxtime = currtime + readTimeout;
  57.116 -
  57.117 -            while (currtime < maxtime) {
  57.118 -                if (selector.select (readTimeout) == 1) {
  57.119 -                    selector.selectedKeys().clear();
  57.120 -                    available ();
  57.121 -                    return;
  57.122 -                }
  57.123 -                currtime = server.getTime();
  57.124 -            }
  57.125 -            throw new SocketTimeoutException ("no data received");
  57.126 +            return chanbuf.remaining();
  57.127          }
  57.128  
  57.129          public void close () throws IOException {
  57.130 @@ -333,8 +307,6 @@
  57.131                  return;
  57.132              }
  57.133              channel.close ();
  57.134 -            selector.selectNow();
  57.135 -            sc.freeSelector(selector);
  57.136              closed = true;
  57.137          }
  57.138  
  57.139 @@ -362,23 +334,14 @@
  57.140          SocketChannel channel;
  57.141          ByteBuffer buf;
  57.142          SelectionKey key;
  57.143 -        SelectorCache sc;
  57.144 -        Selector selector;
  57.145          boolean closed;
  57.146          byte[] one;
  57.147          ServerImpl server;
  57.148 -        static long writeTimeout;
  57.149 -
  57.150 -        static {
  57.151 -            writeTimeout = ServerConfig.getWriteTimeout();
  57.152 -        }
  57.153  
  57.154          public WriteStream (ServerImpl server, SocketChannel channel) throws IOException {
  57.155              this.channel = channel;
  57.156              this.server = server;
  57.157 -            sc = SelectorCache.getSelectorCache();
  57.158 -            selector = sc.getSelector();
  57.159 -            key = channel.register (selector, SelectionKey.OP_WRITE);
  57.160 +            assert channel.isBlocking();
  57.161              closed = false;
  57.162              one = new byte [1];
  57.163              buf = ByteBuffer.allocate (4096);
  57.164 @@ -411,31 +374,14 @@
  57.165                  l -= n;
  57.166                  if (l == 0)
  57.167                      return;
  57.168 -                block();
  57.169              }
  57.170          }
  57.171  
  57.172 -        void block () throws IOException {
  57.173 -            long currtime = server.getTime();
  57.174 -            long maxtime = currtime + writeTimeout;
  57.175 -
  57.176 -            while (currtime < maxtime) {
  57.177 -                if (selector.select (writeTimeout) == 1) {
  57.178 -                    selector.selectedKeys().clear ();
  57.179 -                    return;
  57.180 -                }
  57.181 -                currtime = server.getTime();
  57.182 -            }
  57.183 -            throw new SocketTimeoutException ("write blocked too long");
  57.184 -        }
  57.185 -
  57.186 -
  57.187          public void close () throws IOException {
  57.188              if (closed)
  57.189                  return;
  57.190 +            //server.logStackTrace ("Request.OS.close: isOpen="+channel.isOpen());
  57.191              channel.close ();
  57.192 -            selector.selectNow();
  57.193 -            sc.freeSelector(selector);
  57.194              closed = true;
  57.195          }
  57.196      }
    58.1 --- a/src/share/classes/sun/net/httpserver/SSLStreams.java	Tue Nov 30 09:57:47 2010 -0800
    58.2 +++ b/src/share/classes/sun/net/httpserver/SSLStreams.java	Wed Dec 08 00:35:33 2010 -0800
    58.3 @@ -53,8 +53,6 @@
    58.4      EngineWrapper wrapper;
    58.5      OutputStream os;
    58.6      InputStream is;
    58.7 -    static long readTimeout = ServerConfig.getReadTimeout();
    58.8 -    static long writeTimeout = ServerConfig.getWriteTimeout();
    58.9  
   58.10      /* held by thread doing the hand-shake on this connection */
   58.11      Lock handshaking = new ReentrantLock();
   58.12 @@ -77,10 +75,13 @@
   58.13          if (cfg != null) {
   58.14              Parameters params = new Parameters (cfg, addr);
   58.15              cfg.configure (params);
   58.16 +//BEGIN_TIGER_EXCLUDE
   58.17              SSLParameters sslParams = params.getSSLParameters();
   58.18              if (sslParams != null) {
   58.19                  engine.setSSLParameters (sslParams);
   58.20 -            } else {
   58.21 +            } else
   58.22 +//END_TIGER_EXCLUDE
   58.23 +            {
   58.24                  /* tiger compatibility */
   58.25                  if (params.getCipherSuites() != null) {
   58.26                      try {
   58.27 @@ -104,7 +105,6 @@
   58.28  
   58.29      class Parameters extends HttpsParameters {
   58.30          InetSocketAddress addr;
   58.31 -        SSLParameters params;
   58.32          HttpsConfigurator cfg;
   58.33  
   58.34          Parameters (HttpsConfigurator cfg, InetSocketAddress addr) {
   58.35 @@ -117,12 +117,15 @@
   58.36          public HttpsConfigurator getHttpsConfigurator() {
   58.37              return cfg;
   58.38          }
   58.39 +//BEGIN_TIGER_EXCLUDE
   58.40 +        SSLParameters params;
   58.41          public void setSSLParameters (SSLParameters p) {
   58.42              params = p;
   58.43          }
   58.44          SSLParameters getSSLParameters () {
   58.45              return params;
   58.46          }
   58.47 +//END_TIGER_EXCLUDE
   58.48      }
   58.49  
   58.50      /**
   58.51 @@ -245,9 +248,6 @@
   58.52  
   58.53          SocketChannel chan;
   58.54          SSLEngine engine;
   58.55 -        SelectorCache sc;
   58.56 -        Selector write_selector, read_selector;
   58.57 -        SelectionKey wkey, rkey;
   58.58          Object wrapLock, unwrapLock;
   58.59          ByteBuffer unwrap_src, wrap_dst;
   58.60          boolean closed = false;
   58.61 @@ -260,16 +260,9 @@
   58.62              unwrapLock = new Object();
   58.63              unwrap_src = allocate(BufType.PACKET);
   58.64              wrap_dst = allocate(BufType.PACKET);
   58.65 -            sc = SelectorCache.getSelectorCache();
   58.66 -            write_selector = sc.getSelector();
   58.67 -            wkey = chan.register (write_selector, SelectionKey.OP_WRITE);
   58.68 -            read_selector = sc.getSelector();
   58.69 -            wkey = chan.register (read_selector, SelectionKey.OP_READ);
   58.70          }
   58.71  
   58.72          void close () throws IOException {
   58.73 -            sc.freeSelector (write_selector);
   58.74 -            sc.freeSelector (read_selector);
   58.75          }
   58.76  
   58.77          /* try to wrap and send the data in src. Handles OVERFLOW.
   58.78 @@ -304,15 +297,7 @@
   58.79                      wrap_dst.flip();
   58.80                      int l = wrap_dst.remaining();
   58.81                      assert l == r.result.bytesProduced();
   58.82 -                    long currtime = time.getTime();
   58.83 -                    long maxtime = currtime + writeTimeout;
   58.84                      while (l>0) {
   58.85 -                        write_selector.select(writeTimeout); // timeout
   58.86 -                        currtime = time.getTime();
   58.87 -                        if (currtime > maxtime) {
   58.88 -                            throw new SocketTimeoutException ("write timed out");
   58.89 -                        }
   58.90 -                        write_selector.selectedKeys().clear();
   58.91                          l -= chan.write (wrap_dst);
   58.92                      }
   58.93                  }
   58.94 @@ -342,20 +327,12 @@
   58.95                  needData = true;
   58.96              }
   58.97              synchronized (unwrapLock) {
   58.98 -                int x,y;
   58.99 +                int x;
  58.100                  do {
  58.101                      if (needData) {
  58.102 -                        long currTime = time.getTime();
  58.103 -                        long maxtime = currTime + readTimeout;
  58.104                          do {
  58.105 -                            if (currTime > maxtime) {
  58.106 -                                throw new SocketTimeoutException ("read timedout");
  58.107 -                            }
  58.108 -                            y = read_selector.select (readTimeout);
  58.109 -                            currTime = time.getTime();
  58.110 -                        } while (y != 1);
  58.111 -                        read_selector.selectedKeys().clear();
  58.112                          x = chan.read (unwrap_src);
  58.113 +                        } while (x == 0);
  58.114                          if (x == -1) {
  58.115                              throw new IOException ("connection closed for reading");
  58.116                          }
    59.1 --- a/src/share/classes/sun/net/httpserver/SelectorCache.java	Tue Nov 30 09:57:47 2010 -0800
    59.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    59.3 @@ -1,134 +0,0 @@
    59.4 -/*
    59.5 - * Copyright (c) 2006, Oracle and/or its affiliates. All rights reserved.
    59.6 - * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
    59.7 - *
    59.8 - * This code is free software; you can redistribute it and/or modify it
    59.9 - * under the terms of the GNU General Public License version 2 only, as
   59.10 - * published by the Free Software Foundation.  Oracle designates this
   59.11 - * particular file as subject to the "Classpath" exception as provided
   59.12 - * by Oracle in the LICENSE file that accompanied this code.
   59.13 - *
   59.14 - * This code is distributed in the hope that it will be useful, but WITHOUT
   59.15 - * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
   59.16 - * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
   59.17 - * version 2 for more details (a copy is included in the LICENSE file that
   59.18 - * accompanied this code).
   59.19 - *
   59.20 - * You should have received a copy of the GNU General Public License version
   59.21 - * 2 along with this work; if not, write to the Free Software Foundation,
   59.22 - * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
   59.23 - *
   59.24 - * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
   59.25 - * or visit www.oracle.com if you need additional information or have any
   59.26 - * questions.
   59.27 - */
   59.28 -
   59.29 -package sun.net.httpserver;
   59.30 -
   59.31 -import java.util.*;
   59.32 -import java.nio.*;
   59.33 -import java.net.*;
   59.34 -import java.io.*;
   59.35 -import java.security.*;
   59.36 -import java.nio.channels.*;
   59.37 -
   59.38 -/*
   59.39 - * Implements a cache of java.nio.channels.Selector
   59.40 - * where Selectors are allocated on demand and placed
   59.41 - * in a temporary cache for a period of time, so they
   59.42 - * can be reused. If a period of between 2 and 4 minutes
   59.43 - * elapses without being used, then they are closed.
   59.44 - */
   59.45 -public class SelectorCache {
   59.46 -
   59.47 -    static SelectorCache cache = null;
   59.48 -
   59.49 -    private SelectorCache () {
   59.50 -        freeSelectors = new LinkedList<SelectorWrapper>();
   59.51 -        CacheCleaner c = AccessController.doPrivileged(
   59.52 -            new PrivilegedAction<CacheCleaner>() {
   59.53 -            public CacheCleaner run() {
   59.54 -                CacheCleaner cleaner = new CacheCleaner();
   59.55 -                cleaner.setDaemon (true);
   59.56 -                return cleaner;
   59.57 -            }
   59.58 -        });
   59.59 -        c.start();
   59.60 -    }
   59.61 -
   59.62 -    /**
   59.63 -     * factory method for creating single instance
   59.64 -     */
   59.65 -    public static SelectorCache getSelectorCache () {
   59.66 -        synchronized (SelectorCache.class) {
   59.67 -            if (cache == null) {
   59.68 -                cache = new SelectorCache ();
   59.69 -            }
   59.70 -        }
   59.71 -        return cache;
   59.72 -    }
   59.73 -
   59.74 -    private static class SelectorWrapper {
   59.75 -        private Selector sel;
   59.76 -        private boolean deleteFlag;
   59.77 -        private SelectorWrapper (Selector sel) {
   59.78 -            this.sel = sel;
   59.79 -            this.deleteFlag = false;
   59.80 -        }
   59.81 -        public Selector getSelector() { return sel;}
   59.82 -        public boolean getDeleteFlag () {return deleteFlag;}
   59.83 -        public void setDeleteFlag (boolean b) {deleteFlag = b;}
   59.84 -    }
   59.85 -
   59.86 -    /* list of free selectors. Can be re-allocated for a period
   59.87 -     * of time, after which if not allocated will be closed
   59.88 -     * and removed from the list (by CacheCleaner thread)
   59.89 -     */
   59.90 -    LinkedList<SelectorWrapper> freeSelectors;
   59.91 -
   59.92 -    synchronized Selector getSelector () throws IOException {
   59.93 -        SelectorWrapper wrapper = null;
   59.94 -        Selector selector;
   59.95 -
   59.96 -        if (freeSelectors.size() > 0) {
   59.97 -            wrapper = freeSelectors.remove();
   59.98 -            selector = wrapper.getSelector();
   59.99 -        } else {
  59.100 -            selector = Selector.open();
  59.101 -        }
  59.102 -        return selector;
  59.103 -    }
  59.104 -
  59.105 -    synchronized void freeSelector (Selector selector) {
  59.106 -        freeSelectors.add (new SelectorWrapper (selector));
  59.107 -    }
  59.108 -
  59.109 -    /* Thread ensures that entries on freeSelector list
  59.110 -     * remain there for at least 2 minutes and no longer
  59.111 -     * than 4 minutes.
  59.112 -     */
  59.113 -    class CacheCleaner extends Thread {
  59.114 -        public void run () {
  59.115 -            long timeout = ServerConfig.getSelCacheTimeout() * 1000;
  59.116 -            while (true) {
  59.117 -                try {Thread.sleep (timeout); } catch (Exception e) {}
  59.118 -                synchronized (freeSelectors) {
  59.119 -                    ListIterator<SelectorWrapper> l = freeSelectors.listIterator();
  59.120 -                    while (l.hasNext()) {
  59.121 -                        SelectorWrapper w = l.next();
  59.122 -                        if (w.getDeleteFlag()) {
  59.123 -                            /* 2nd pass. Close the selector */
  59.124 -                            try {
  59.125 -                                w.getSelector().close();
  59.126 -                            } catch (IOException e) {}
  59.127 -                            l.remove();
  59.128 -                        } else {
  59.129 -                            /* 1st pass. Set the flag */
  59.130 -                            w.setDeleteFlag (true);
  59.131 -                        }
  59.132 -                    }
  59.133 -                }
  59.134 -            }
  59.135 -        }
  59.136 -    }
  59.137 -}
    60.1 --- a/src/share/classes/sun/net/httpserver/ServerConfig.java	Tue Nov 30 09:57:47 2010 -0800
    60.2 +++ b/src/share/classes/sun/net/httpserver/ServerConfig.java	Wed Dec 08 00:35:33 2010 -0800
    60.3 @@ -27,6 +27,8 @@
    60.4  
    60.5  import com.sun.net.httpserver.*;
    60.6  import com.sun.net.httpserver.spi.*;
    60.7 +import java.util.logging.Logger;
    60.8 +import java.security.PrivilegedAction;
    60.9  
   60.10  /**
   60.11   * Parameters that users will not likely need to set
   60.12 @@ -37,23 +39,26 @@
   60.13  
   60.14      static int clockTick;
   60.15  
   60.16 -    static int defaultClockTick = 10000 ; // 10 sec.
   60.17 +    static final int DEFAULT_CLOCK_TICK = 10000 ; // 10 sec.
   60.18  
   60.19      /* These values must be a reasonable multiple of clockTick */
   60.20 -    static long defaultReadTimeout = 20 ; // 20 sec.
   60.21 -    static long defaultWriteTimeout = 60 ; // 60 sec.
   60.22 -    static long defaultIdleInterval = 300 ; // 5 min
   60.23 -    static long defaultSelCacheTimeout = 120 ;  // seconds
   60.24 -    static int defaultMaxIdleConnections = 200 ;
   60.25 +    static final long DEFAULT_IDLE_INTERVAL = 300 ; // 5 min
   60.26 +    static final int DEFAULT_MAX_IDLE_CONNECTIONS = 200 ;
   60.27  
   60.28 -    static long defaultDrainAmount = 64 * 1024;
   60.29 +    static final long DEFAULT_MAX_REQ_TIME = -1; // default: forever
   60.30 +    static final long DEFAULT_MAX_RSP_TIME = -1; // default: forever
   60.31 +    static final long DEFAULT_TIMER_MILLIS = 1000;
   60.32  
   60.33 -    static long readTimeout;
   60.34 -    static long writeTimeout;
   60.35 +    static final long DEFAULT_DRAIN_AMOUNT = 64 * 1024;
   60.36 +
   60.37      static long idleInterval;
   60.38 -    static long selCacheTimeout;
   60.39      static long drainAmount;    // max # of bytes to drain from an inputstream
   60.40      static int maxIdleConnections;
   60.41 +
   60.42 +    // max time a request or response is allowed to take
   60.43 +    static long maxReqTime;
   60.44 +    static long maxRspTime;
   60.45 +    static long timerMillis;
   60.46      static boolean debug = false;
   60.47  
   60.48      static {
   60.49 @@ -61,49 +66,79 @@
   60.50          idleInterval = ((Long)java.security.AccessController.doPrivileged(
   60.51                  new sun.security.action.GetLongAction(
   60.52                  "sun.net.httpserver.idleInterval",
   60.53 -                defaultIdleInterval))).longValue() * 1000;
   60.54 +                DEFAULT_IDLE_INTERVAL))).longValue() * 1000;
   60.55  
   60.56          clockTick = ((Integer)java.security.AccessController.doPrivileged(
   60.57                  new sun.security.action.GetIntegerAction(
   60.58                  "sun.net.httpserver.clockTick",
   60.59 -                defaultClockTick))).intValue();
   60.60 +                DEFAULT_CLOCK_TICK))).intValue();
   60.61  
   60.62          maxIdleConnections = ((Integer)java.security.AccessController.doPrivileged(
   60.63                  new sun.security.action.GetIntegerAction(
   60.64                  "sun.net.httpserver.maxIdleConnections",
   60.65 -                defaultMaxIdleConnections))).intValue();
   60.66 -
   60.67 -        readTimeout = ((Long)java.security.AccessController.doPrivileged(
   60.68 -                new sun.security.action.GetLongAction(
   60.69 -                "sun.net.httpserver.readTimeout",
   60.70 -                defaultReadTimeout))).longValue()* 1000;
   60.71 -
   60.72 -        selCacheTimeout = ((Long)java.security.AccessController.doPrivileged(
   60.73 -                new sun.security.action.GetLongAction(
   60.74 -                "sun.net.httpserver.selCacheTimeout",
   60.75 -                defaultSelCacheTimeout))).longValue()* 1000;
   60.76 -
   60.77 -        writeTimeout = ((Long)java.security.AccessController.doPrivileged(
   60.78 -                new sun.security.action.GetLongAction(
   60.79 -                "sun.net.httpserver.writeTimeout",
   60.80 -                defaultWriteTimeout))).longValue()* 1000;
   60.81 +                DEFAULT_MAX_IDLE_CONNECTIONS))).intValue();
   60.82  
   60.83          drainAmount = ((Long)java.security.AccessController.doPrivileged(
   60.84                  new sun.security.action.GetLongAction(
   60.85                  "sun.net.httpserver.drainAmount",
   60.86 -                defaultDrainAmount))).longValue();
   60.87 +                DEFAULT_DRAIN_AMOUNT))).longValue();
   60.88 +
   60.89 +        maxReqTime = ((Long)java.security.AccessController.doPrivileged(
   60.90 +                new sun.security.action.GetLongAction(
   60.91 +                "sun.net.httpserver.maxReqTime",
   60.92 +                DEFAULT_MAX_REQ_TIME))).longValue();
   60.93 +
   60.94 +        maxRspTime = ((Long)java.security.AccessController.doPrivileged(
   60.95 +                new sun.security.action.GetLongAction(
   60.96 +                "sun.net.httpserver.maxRspTime",
   60.97 +                DEFAULT_MAX_RSP_TIME))).longValue();
   60.98 +
   60.99 +        timerMillis = ((Long)java.security.AccessController.doPrivileged(
  60.100 +                new sun.security.action.GetLongAction(
  60.101 +                "sun.net.httpserver.timerMillis",
  60.102 +                DEFAULT_TIMER_MILLIS))).longValue();
  60.103  
  60.104          debug = ((Boolean)java.security.AccessController.doPrivileged(
  60.105                  new sun.security.action.GetBooleanAction(
  60.106                  "sun.net.httpserver.debug"))).booleanValue();
  60.107      }
  60.108  
  60.109 -    static long getReadTimeout () {
  60.110 -        return readTimeout;
  60.111 -    }
  60.112  
  60.113 -    static long getSelCacheTimeout () {
  60.114 -        return selCacheTimeout;
  60.115 +    static void checkLegacyProperties (final Logger logger) {
  60.116 +
  60.117 +        // legacy properties that are no longer used
  60.118 +        // print a warning to logger if they are set.
  60.119 +
  60.120 +        java.security.AccessController.doPrivileged(
  60.121 +            new PrivilegedAction<Void>() {
  60.122 +                public Void run () {
  60.123 +                    if (System.getProperty("sun.net.httpserver.readTimeout")
  60.124 +                                                !=null)
  60.125 +                    {
  60.126 +                        logger.warning ("sun.net.httpserver.readTimeout "+
  60.127 +                            "property is no longer used. "+
  60.128 +                            "Use sun.net.httpserver.maxReqTime instead."
  60.129 +                        );
  60.130 +                    }
  60.131 +                    if (System.getProperty("sun.net.httpserver.writeTimeout")
  60.132 +                                                !=null)
  60.133 +                    {
  60.134 +                        logger.warning ("sun.net.httpserver.writeTimeout "+
  60.135 +                            "property is no longer used. Use "+
  60.136 +                            "sun.net.httpserver.maxRspTime instead."
  60.137 +                        );
  60.138 +                    }
  60.139 +                    if (System.getProperty("sun.net.httpserver.selCacheTimeout")
  60.140 +                                                !=null)
  60.141 +                    {
  60.142 +                        logger.warning ("sun.net.httpserver.selCacheTimeout "+
  60.143 +                            "property is no longer used."
  60.144 +                        );
  60.145 +                    }
  60.146 +                    return null;
  60.147 +                }
  60.148 +            }
  60.149 +        );
  60.150      }
  60.151  
  60.152      static boolean debugEnabled () {
  60.153 @@ -122,11 +157,19 @@
  60.154          return maxIdleConnections;
  60.155      }
  60.156  
  60.157 -    static long getWriteTimeout () {
  60.158 -        return writeTimeout;
  60.159 -    }
  60.160 -
  60.161      static long getDrainAmount () {
  60.162          return drainAmount;
  60.163      }
  60.164 +
  60.165 +    static long getMaxReqTime () {
  60.166 +        return maxReqTime;
  60.167 +    }
  60.168 +
  60.169 +    static long getMaxRspTime () {
  60.170 +        return maxRspTime;
  60.171 +    }
  60.172 +
  60.173 +    static long getTimerMillis () {
  60.174 +        return timerMillis;
  60.175 +    }
  60.176  }
    61.1 --- a/src/share/classes/sun/net/httpserver/ServerImpl.java	Tue Nov 30 09:57:47 2010 -0800
    61.2 +++ b/src/share/classes/sun/net/httpserver/ServerImpl.java	Wed Dec 08 00:35:33 2010 -0800
    61.3 @@ -37,6 +37,7 @@
    61.4  import javax.net.ssl.*;
    61.5  import com.sun.net.httpserver.*;
    61.6  import com.sun.net.httpserver.spi.*;
    61.7 +import sun.net.httpserver.HttpConnection.State;
    61.8  
    61.9  /**
   61.10   * Provides implementation for both HTTP and HTTPS
   61.11 @@ -55,6 +56,12 @@
   61.12      private SelectionKey listenerKey;
   61.13      private Set<HttpConnection> idleConnections;
   61.14      private Set<HttpConnection> allConnections;
   61.15 +    /* following two are used to keep track of the times
   61.16 +     * when a connection/request is first received
   61.17 +     * and when we start to send the response
   61.18 +     */
   61.19 +    private Set<HttpConnection> reqConnections;
   61.20 +    private Set<HttpConnection> rspConnections;
   61.21      private List<Event> events;
   61.22      private Object lolock = new Object();
   61.23      private volatile boolean finished = false;
   61.24 @@ -62,14 +69,19 @@
   61.25      private boolean bound = false;
   61.26      private boolean started = false;
   61.27      private volatile long time;  /* current time */
   61.28 +    private volatile long subticks = 0;
   61.29      private volatile long ticks; /* number of clock ticks since server started */
   61.30      private HttpServer wrapper;
   61.31  
   61.32      final static int CLOCK_TICK = ServerConfig.getClockTick();
   61.33      final static long IDLE_INTERVAL = ServerConfig.getIdleInterval();
   61.34      final static int MAX_IDLE_CONNECTIONS = ServerConfig.getMaxIdleConnections();
   61.35 +    final static long TIMER_MILLIS = ServerConfig.getTimerMillis ();
   61.36 +    final static long MAX_REQ_TIME=getTimeMillis(ServerConfig.getMaxReqTime());
   61.37 +    final static long MAX_RSP_TIME=getTimeMillis(ServerConfig.getMaxRspTime());
   61.38 +    final static boolean timer1Enabled = MAX_REQ_TIME != -1 || MAX_RSP_TIME != -1;
   61.39  
   61.40 -    private Timer timer;
   61.41 +    private Timer timer, timer1;
   61.42      private Logger logger;
   61.43  
   61.44      ServerImpl (
   61.45 @@ -79,6 +91,7 @@
   61.46          this.protocol = protocol;
   61.47          this.wrapper = wrapper;
   61.48          this.logger = Logger.getLogger ("com.sun.net.httpserver");
   61.49 +        ServerConfig.checkLegacyProperties (logger);
   61.50          https = protocol.equalsIgnoreCase ("https");
   61.51          this.address = addr;
   61.52          contexts = new ContextList();
   61.53 @@ -94,9 +107,18 @@
   61.54          dispatcher = new Dispatcher();
   61.55          idleConnections = Collections.synchronizedSet (new HashSet<HttpConnection>());
   61.56          allConnections = Collections.synchronizedSet (new HashSet<HttpConnection>());
   61.57 +        reqConnections = Collections.synchronizedSet (new HashSet<HttpConnection>());
   61.58 +        rspConnections = Collections.synchronizedSet (new HashSet<HttpConnection>());
   61.59          time = System.currentTimeMillis();
   61.60          timer = new Timer ("server-timer", true);
   61.61          timer.schedule (new ServerTimerTask(), CLOCK_TICK, CLOCK_TICK);
   61.62 +        if (timer1Enabled) {
   61.63 +            timer1 = new Timer ("server-timer1", true);
   61.64 +            timer1.schedule (new ServerTimerTask1(),TIMER_MILLIS,TIMER_MILLIS);
   61.65 +            logger.config ("HttpServer timer1 enabled period in ms:  "+TIMER_MILLIS);
   61.66 +            logger.config ("MAX_REQ_TIME:  "+MAX_REQ_TIME);
   61.67 +            logger.config ("MAX_RSP_TIME:  "+MAX_RSP_TIME);
   61.68 +        }
   61.69          events = new LinkedList<Event>();
   61.70          logger.config ("HttpServer created "+protocol+" "+ addr);
   61.71      }
   61.72 @@ -181,6 +203,9 @@
   61.73          allConnections.clear();
   61.74          idleConnections.clear();
   61.75          timer.cancel();
   61.76 +        if (timer1Enabled) {
   61.77 +            timer1.cancel();
   61.78 +        }
   61.79      }
   61.80  
   61.81      Dispatcher dispatcher;
   61.82 @@ -236,13 +261,6 @@
   61.83          }
   61.84      }
   61.85  
   61.86 -    int resultSize () {
   61.87 -        synchronized (lolock) {
   61.88 -            return events.size ();
   61.89 -        }
   61.90 -    }
   61.91 -
   61.92 -
   61.93      /* main server listener task */
   61.94  
   61.95      class Dispatcher implements Runnable {
   61.96 @@ -257,7 +275,7 @@
   61.97                      if (terminating && exchanges == 0) {
   61.98                          finished = true;
   61.99                      }
  61.100 -                    SocketChannel chan = c.getChannel();
  61.101 +                    responseCompleted (c);
  61.102                      LeftOverInputStream is = t.getOriginalInputStream();
  61.103                      if (!is.isEOF()) {
  61.104                          t.close = true;
  61.105 @@ -268,17 +286,10 @@
  61.106                      } else {
  61.107                          if (is.isDataBuffered()) {
  61.108                              /* don't re-enable the interestops, just handle it */
  61.109 +                            requestStarted (c);
  61.110                              handle (c.getChannel(), c);
  61.111                          } else {
  61.112 -                            /* re-enable interestops */
  61.113 -                            SelectionKey key = c.getSelectionKey();
  61.114 -                            if (key.isValid()) {
  61.115 -                                key.interestOps (
  61.116 -                                    key.interestOps()|SelectionKey.OP_READ
  61.117 -                                );
  61.118 -                            }
  61.119 -                            c.time = getTime() + IDLE_INTERVAL;
  61.120 -                            idleConnections.add (c);
  61.121 +                            connsToRegister.add (c);
  61.122                          }
  61.123                      }
  61.124                  }
  61.125 @@ -290,22 +301,51 @@
  61.126              }
  61.127          }
  61.128  
  61.129 +        final LinkedList<HttpConnection> connsToRegister =
  61.130 +                new LinkedList<HttpConnection>();
  61.131 +
  61.132 +        void reRegister (HttpConnection c) {
  61.133 +            /* re-register with selector */
  61.134 +            try {
  61.135 +                SocketChannel chan = c.getChannel();
  61.136 +                chan.configureBlocking (false);
  61.137 +                SelectionKey key = chan.register (selector, SelectionKey.OP_READ);
  61.138 +                key.attach (c);
  61.139 +                c.selectionKey = key;
  61.140 +                c.time = getTime() + IDLE_INTERVAL;
  61.141 +                idleConnections.add (c);
  61.142 +            } catch (IOException e) {
  61.143 +                dprint(e);
  61.144 +                logger.log(Level.FINER, "Dispatcher(8)", e);
  61.145 +                c.close();
  61.146 +            }
  61.147 +        }
  61.148 +
  61.149          public void run() {
  61.150              while (!finished) {
  61.151                  try {
  61.152 +                    ListIterator<HttpConnection> li =
  61.153 +                        connsToRegister.listIterator();
  61.154 +                    for (HttpConnection c : connsToRegister) {
  61.155 +                        reRegister(c);
  61.156 +                    }
  61.157 +                    connsToRegister.clear();
  61.158  
  61.159 -                    /* process the events list first */
  61.160 +                    List<Event> list = null;
  61.161 +                    selector.select(1000);
  61.162 +                    synchronized (lolock) {
  61.163 +                        if (events.size() > 0) {
  61.164 +                            list = events;
  61.165 +                            events = new LinkedList<Event>();
  61.166 +                        }
  61.167 +                    }
  61.168  
  61.169 -                    while (resultSize() > 0) {
  61.170 -                        Event r;
  61.171 -                        synchronized (lolock) {
  61.172 -                            r = events.remove(0);
  61.173 +                    if (list != null) {
  61.174 +                        for (Event r: list) {
  61.175                              handleEvent (r);
  61.176                          }
  61.177                      }
  61.178  
  61.179 -                    selector.select(1000);
  61.180 -
  61.181                      /* process the selected list now  */
  61.182  
  61.183                      Set<SelectionKey> selected = selector.selectedKeys();
  61.184 @@ -327,6 +367,7 @@
  61.185                              c.selectionKey = newkey;
  61.186                              c.setChannel (chan);
  61.187                              newkey.attach (c);
  61.188 +                            requestStarted (c);
  61.189                              allConnections.add (c);
  61.190                          } else {
  61.191                              try {
  61.192 @@ -334,27 +375,44 @@
  61.193                                      boolean closed;
  61.194                                      SocketChannel chan = (SocketChannel)key.channel();
  61.195                                      HttpConnection conn = (HttpConnection)key.attachment();
  61.196 -                                    // interestOps will be restored at end of read
  61.197 -                                    key.interestOps (0);
  61.198 +
  61.199 +                                    key.cancel();
  61.200 +                                    chan.configureBlocking (true);
  61.201 +                                    if (idleConnections.remove(conn)) {
  61.202 +                                        // was an idle connection so add it
  61.203 +                                        // to reqConnections set.
  61.204 +                                        requestStarted (conn);
  61.205 +                                    }
  61.206                                      handle (chan, conn);
  61.207                                  } else {
  61.208                                      assert false;
  61.209                                  }
  61.210 +                            } catch (CancelledKeyException e) {
  61.211 +                                handleException(key, null);
  61.212                              } catch (IOException e) {
  61.213 -                                HttpConnection conn = (HttpConnection)key.attachment();
  61.214 -                                logger.log (
  61.215 -                                    Level.FINER, "Dispatcher (2)", e
  61.216 -                                );
  61.217 -                                conn.close();
  61.218 +                                handleException(key, e);
  61.219                              }
  61.220                          }
  61.221                      }
  61.222 +                    // call the selector just to process the cancelled keys
  61.223 +                    selector.selectNow();
  61.224 +                } catch (IOException e) {
  61.225 +                    logger.log (Level.FINER, "Dispatcher (4)", e);
  61.226                  } catch (Exception e) {
  61.227 -                    logger.log (Level.FINER, "Dispatcher (3)", e);
  61.228 +                    e.printStackTrace();
  61.229 +                    logger.log (Level.FINER, "Dispatcher (7)", e);
  61.230                  }
  61.231              }
  61.232          }
  61.233  
  61.234 +        private void handleException (SelectionKey key, Exception e) {
  61.235 +            HttpConnection conn = (HttpConnection)key.attachment();
  61.236 +            if (e != null) {
  61.237 +                logger.log (Level.FINER, "Dispatcher (2)", e);
  61.238 +            }
  61.239 +            closeConnection(conn);
  61.240 +        }
  61.241 +
  61.242          public void handle (SocketChannel chan, HttpConnection conn)
  61.243          throws IOException
  61.244          {
  61.245 @@ -363,10 +421,10 @@
  61.246                  executor.execute (t);
  61.247              } catch (HttpError e1) {
  61.248                  logger.log (Level.FINER, "Dispatcher (4)", e1);
  61.249 -                conn.close();
  61.250 +                closeConnection(conn);
  61.251              } catch (IOException e) {
  61.252                  logger.log (Level.FINER, "Dispatcher (5)", e);
  61.253 -                conn.close();
  61.254 +                closeConnection(conn);
  61.255              }
  61.256          }
  61.257      }
  61.258 @@ -390,7 +448,26 @@
  61.259          return logger;
  61.260      }
  61.261  
  61.262 -    /* per exchange task */
  61.263 +    private void closeConnection(HttpConnection conn) {
  61.264 +        conn.close();
  61.265 +        allConnections.remove(conn);
  61.266 +        switch (conn.getState()) {
  61.267 +        case REQUEST:
  61.268 +            reqConnections.remove(conn);
  61.269 +            break;
  61.270 +        case RESPONSE:
  61.271 +            rspConnections.remove(conn);
  61.272 +            break;
  61.273 +        case IDLE:
  61.274 +            idleConnections.remove(conn);
  61.275 +            break;
  61.276 +        }
  61.277 +        assert !reqConnections.remove(conn);
  61.278 +        assert !rspConnections.remove(conn);
  61.279 +        assert !idleConnections.remove(conn);
  61.280 +    }
  61.281 +
  61.282 +        /* per exchange task */
  61.283  
  61.284      class Exchange implements Runnable {
  61.285          SocketChannel chan;
  61.286 @@ -450,8 +527,7 @@
  61.287                  requestLine = req.requestLine();
  61.288                  if (requestLine == null) {
  61.289                      /* connection closed */
  61.290 -                    connection.close();
  61.291 -                    allConnections.remove(connection);
  61.292 +                    closeConnection(connection);
  61.293                      return;
  61.294                  }
  61.295                  int space = requestLine.indexOf (' ');
  61.296 @@ -482,6 +558,9 @@
  61.297                      if (s != null) {
  61.298                          clen = Long.parseLong(s);
  61.299                      }
  61.300 +                    if (clen == 0) {
  61.301 +                        requestCompleted (connection);
  61.302 +                    }
  61.303                  }
  61.304                  ctx = contexts.findContext (protocol, uri.getPath());
  61.305                  if (ctx == null) {
  61.306 @@ -560,7 +639,7 @@
  61.307  
  61.308              } catch (IOException e1) {
  61.309                  logger.log (Level.FINER, "ServerImpl.Exchange (1)", e1);
  61.310 -                connection.close();
  61.311 +                closeConnection(connection);
  61.312              } catch (NumberFormatException e3) {
  61.313                  reject (Code.HTTP_BAD_REQUEST,
  61.314                          requestLine, "NumberFormatException thrown");
  61.315 @@ -569,7 +648,7 @@
  61.316                          requestLine, "URISyntaxException thrown");
  61.317              } catch (Exception e4) {
  61.318                  logger.log (Level.FINER, "ServerImpl.Exchange (2)", e4);
  61.319 -                connection.close();
  61.320 +                closeConnection(connection);
  61.321              }
  61.322          }
  61.323  
  61.324 @@ -591,47 +670,60 @@
  61.325              rejected = true;
  61.326              logReply (code, requestStr, message);
  61.327              sendReply (
  61.328 -                code, true, "<h1>"+code+Code.msg(code)+"</h1>"+message
  61.329 +                code, false, "<h1>"+code+Code.msg(code)+"</h1>"+message
  61.330              );
  61.331 -            /* connection is already closed by sendReply, now remove it */
  61.332 -            allConnections.remove(connection);
  61.333 +            closeConnection(connection);
  61.334          }
  61.335  
  61.336          void sendReply (
  61.337              int code, boolean closeNow, String text)
  61.338          {
  61.339              try {
  61.340 -                String s = "HTTP/1.1 " + code + Code.msg(code) + "\r\n";
  61.341 +                StringBuilder builder = new StringBuilder (512);
  61.342 +                builder.append ("HTTP/1.1 ")
  61.343 +                    .append (code).append (Code.msg(code)).append ("\r\n");
  61.344 +
  61.345                  if (text != null && text.length() != 0) {
  61.346 -                    s = s + "Content-Length: "+text.length()+"\r\n";
  61.347 -                    s = s + "Content-Type: text/html\r\n";
  61.348 +                    builder.append ("Content-Length: ")
  61.349 +                        .append (text.length()).append ("\r\n")
  61.350 +                        .append ("Content-Type: text/html\r\n");
  61.351                  } else {
  61.352 -                    s = s + "Content-Length: 0\r\n";
  61.353 +                    builder.append ("Content-Length: 0\r\n");
  61.354                      text = "";
  61.355                  }
  61.356                  if (closeNow) {
  61.357 -                    s = s + "Connection: close\r\n";
  61.358 +                    builder.append ("Connection: close\r\n");
  61.359                  }
  61.360 -                s = s + "\r\n" + text;
  61.361 +                builder.append ("\r\n").append (text);
  61.362 +                String s = builder.toString();
  61.363                  byte[] b = s.getBytes("ISO8859_1");
  61.364                  rawout.write (b);
  61.365                  rawout.flush();
  61.366                  if (closeNow) {
  61.367 -                    connection.close();
  61.368 +                    closeConnection(connection);
  61.369                  }
  61.370              } catch (IOException e) {
  61.371                  logger.log (Level.FINER, "ServerImpl.sendReply", e);
  61.372 -                connection.close();
  61.373 +                closeConnection(connection);
  61.374              }
  61.375          }
  61.376  
  61.377      }
  61.378  
  61.379      void logReply (int code, String requestStr, String text) {
  61.380 +        if (!logger.isLoggable(Level.FINE)) {
  61.381 +            return;
  61.382 +        }
  61.383          if (text == null) {
  61.384              text = "";
  61.385          }
  61.386 -        String message = requestStr + " [" + code + " " +
  61.387 +        String r;
  61.388 +        if (requestStr.length() > 80) {
  61.389 +           r = requestStr.substring (0, 80) + "<TRUNCATED>";
  61.390 +        } else {
  61.391 +           r = requestStr;
  61.392 +        }
  61.393 +        String message = r + " [" + code + " " +
  61.394                      Code.msg(code) + "] ("+text+")";
  61.395          logger.fine (message);
  61.396      }
  61.397 @@ -667,6 +759,34 @@
  61.398          return wrapper;
  61.399      }
  61.400  
  61.401 +    void requestStarted (HttpConnection c) {
  61.402 +        c.creationTime = getTime();
  61.403 +        c.setState (State.REQUEST);
  61.404 +        reqConnections.add (c);
  61.405 +    }
  61.406 +
  61.407 +    // called after a request has been completely read
  61.408 +    // by the server. This stops the timer which would
  61.409 +    // close the connection if the request doesn't arrive
  61.410 +    // quickly enough. It then starts the timer
  61.411 +    // that ensures the client reads the response in a timely
  61.412 +    // fashion.
  61.413 +
  61.414 +    void requestCompleted (HttpConnection c) {
  61.415 +        assert c.getState() == State.REQUEST;
  61.416 +        reqConnections.remove (c);
  61.417 +        c.rspStartedTime = getTime();
  61.418 +        rspConnections.add (c);
  61.419 +        c.setState (State.RESPONSE);
  61.420 +    }
  61.421 +
  61.422 +    // called after response has been sent
  61.423 +    void responseCompleted (HttpConnection c) {
  61.424 +        assert c.getState() == State.RESPONSE;
  61.425 +        rspConnections.remove (c);
  61.426 +        c.setState (State.IDLE);
  61.427 +    }
  61.428 +
  61.429      /**
  61.430       * TimerTask run every CLOCK_TICK ms
  61.431       */
  61.432 @@ -689,4 +809,62 @@
  61.433              }
  61.434          }
  61.435      }
  61.436 +
  61.437 +    class ServerTimerTask1 extends TimerTask {
  61.438 +
  61.439 +        // runs every TIMER_MILLIS
  61.440 +        public void run () {
  61.441 +            LinkedList<HttpConnection> toClose = new LinkedList<HttpConnection>();
  61.442 +            time = System.currentTimeMillis();
  61.443 +            synchronized (reqConnections) {
  61.444 +                if (MAX_REQ_TIME != -1) {
  61.445 +                    for (HttpConnection c : reqConnections) {
  61.446 +                        if (c.creationTime + TIMER_MILLIS + MAX_REQ_TIME <= time) {
  61.447 +                            toClose.add (c);
  61.448 +                        }
  61.449 +                    }
  61.450 +                    for (HttpConnection c : toClose) {
  61.451 +                        logger.log (Level.FINE, "closing: no request: " + c);
  61.452 +                        reqConnections.remove (c);
  61.453 +                        allConnections.remove (c);
  61.454 +                        c.close();
  61.455 +                    }
  61.456 +                }
  61.457 +            }
  61.458 +            toClose = new LinkedList<HttpConnection>();
  61.459 +            synchronized (rspConnections) {
  61.460 +                if (MAX_RSP_TIME != -1) {
  61.461 +                    for (HttpConnection c : rspConnections) {
  61.462 +                        if (c.rspStartedTime + TIMER_MILLIS +MAX_RSP_TIME <= time) {
  61.463 +                            toClose.add (c);
  61.464 +                        }
  61.465 +                    }
  61.466 +                    for (HttpConnection c : toClose) {
  61.467 +                        logger.log (Level.FINE, "closing: no response: " + c);
  61.468 +                        rspConnections.remove (c);
  61.469 +                        allConnections.remove (c);
  61.470 +                        c.close();
  61.471 +                    }
  61.472 +                }
  61.473 +            }
  61.474 +        }
  61.475 +    }
  61.476 +
  61.477 +    void logStackTrace (String s) {
  61.478 +        logger.finest (s);
  61.479 +        StringBuilder b = new StringBuilder ();
  61.480 +        StackTraceElement[] e = Thread.currentThread().getStackTrace();
  61.481 +        for (int i=0; i<e.length; i++) {
  61.482 +            b.append (e[i].toString()).append("\n");
  61.483 +        }
  61.484 +        logger.finest (b.toString());
  61.485 +    }
  61.486 +
  61.487 +    static long getTimeMillis(long secs) {
  61.488 +        if (secs == -1) {
  61.489 +            return -1;
  61.490 +        } else {
  61.491 +            return secs * 1000;
  61.492 +        }
  61.493 +    }
  61.494  }
    62.1 --- a/src/share/classes/sun/nio/ch/AsynchronousSocketChannelImpl.java	Tue Nov 30 09:57:47 2010 -0800
    62.2 +++ b/src/share/classes/sun/nio/ch/AsynchronousSocketChannelImpl.java	Wed Dec 08 00:35:33 2010 -0800
    62.3 @@ -235,8 +235,6 @@
    62.4  
    62.5          if (remoteAddress == null)
    62.6              throw new NotYetConnectedException();
    62.7 -        if (timeout < 0L)
    62.8 -            throw new IllegalArgumentException("Negative timeout");
    62.9  
   62.10          boolean hasSpaceToRead = isScatteringRead || dst.hasRemaining();
   62.11          boolean shutdown = false;
   62.12 @@ -342,8 +340,6 @@
   62.13          if (isOpen()) {
   62.14              if (remoteAddress == null)
   62.15                  throw new NotYetConnectedException();
   62.16 -             if (timeout < 0L)
   62.17 -                throw new IllegalArgumentException("Negative timeout");
   62.18              // check and update state
   62.19              synchronized (writeLock) {
   62.20                  if (writeKilled)
    63.1 --- a/src/share/classes/sun/nio/cs/UTF_8.java	Tue Nov 30 09:57:47 2010 -0800
    63.2 +++ b/src/share/classes/sun/nio/cs/UTF_8.java	Wed Dec 08 00:35:33 2010 -0800
    63.3 @@ -358,7 +358,7 @@
    63.4      private static class Encoder extends CharsetEncoder {
    63.5  
    63.6          private Encoder(Charset cs) {
    63.7 -            super(cs, 1.1f, 4.0f);
    63.8 +            super(cs, 1.1f, 3.0f);
    63.9          }
   63.10  
   63.11          public boolean canEncode(char c) {
    64.1 --- a/src/share/classes/sun/nio/cs/ext/ExtendedCharsets.java	Tue Nov 30 09:57:47 2010 -0800
    64.2 +++ b/src/share/classes/sun/nio/cs/ext/ExtendedCharsets.java	Wed Dec 08 00:35:33 2010 -0800
    64.3 @@ -778,6 +778,13 @@
    64.4                      "csIBM500"
    64.5                  });
    64.6  
    64.7 +        charset("x-IBM833", "IBM833",
    64.8 +                new String[] {
    64.9 +                     "cp833",
   64.10 +                     "ibm833",
   64.11 +                     "ibm-833"
   64.12 +                 });
   64.13 +
   64.14          //EBCDIC DBCS-only Korean
   64.15          charset("x-IBM834", "IBM834",
   64.16                  new String[] {
    65.1 --- a/src/share/classes/sun/security/krb5/internal/ccache/CCacheInputStream.java	Tue Nov 30 09:57:47 2010 -0800
    65.2 +++ b/src/share/classes/sun/security/krb5/internal/ccache/CCacheInputStream.java	Wed Dec 08 00:35:33 2010 -0800
    65.3 @@ -250,16 +250,16 @@
    65.4          else return null;
    65.5      }
    65.6  
    65.7 -    Ticket readData() throws IOException, RealmException, KrbApErrException, Asn1Exception {
    65.8 +    byte[] readData() throws IOException {
    65.9          int length;
   65.10          length = read(4);
   65.11 -        if (length > 0) {
   65.12 +        if (length == 0) {
   65.13 +            return null;
   65.14 +        } else {
   65.15              byte[] bytes = new byte[length];
   65.16              read(bytes, 0, length);
   65.17 -            Ticket ticket = new Ticket(bytes);
   65.18 -            return ticket;
   65.19 +            return bytes;
   65.20          }
   65.21 -        else return null;
   65.22      }
   65.23  
   65.24      boolean[] readFlags() throws IOException {
   65.25 @@ -328,6 +328,17 @@
   65.26          }
   65.27          return flags;
   65.28      }
   65.29 +
   65.30 +    /**
   65.31 +     * Reads the next cred in stream.
   65.32 +     * @return the next cred, null if ticket or second_ticket unparseable.
   65.33 +     *
   65.34 +     * Note: MIT krb5 1.8.1 might generate a config entry with server principal
   65.35 +     * X-CACHECONF:/krb5_ccache_conf_data/fast_avail/krbtgt/REALM@REALM. The
   65.36 +     * entry is used by KDC to inform the client that it support certain
   65.37 +     * features. Its ticket is not a valid krb5 ticket and thus this method
   65.38 +     * returns null.
   65.39 +     */
   65.40      Credentials readCred(int version) throws IOException,RealmException, KrbApErrException, Asn1Exception {
   65.41          PrincipalName cpname = readPrincipal(version);
   65.42          if (DEBUG)
   65.43 @@ -367,17 +378,17 @@
   65.44          if (auData != null) {
   65.45              auData = new AuthorizationData(auDataEntry);
   65.46          }
   65.47 -        Ticket ticket = readData();
   65.48 -        if (DEBUG) {
   65.49 -            System.out.println(">>>DEBUG <CCacheInputStream>");
   65.50 -            if (ticket == null) {
   65.51 -                System.out.println("///ticket is null");
   65.52 -            }
   65.53 +        byte[] ticketData = readData();
   65.54 +        byte[] ticketData2 = readData();
   65.55 +
   65.56 +        try {
   65.57 +            return new Credentials(cpname, spname, key, authtime, starttime,
   65.58 +                endtime, renewTill, skey, tFlags,
   65.59 +                addrs, auData,
   65.60 +                ticketData != null ? new Ticket(ticketData) : null,
   65.61 +                ticketData2 != null ? new Ticket(ticketData2) : null);
   65.62 +        } catch (Exception e) {     // If any of new Ticket(*) fails.
   65.63 +            return null;
   65.64          }
   65.65 -        Ticket secTicket = readData();
   65.66 -        Credentials cred = new Credentials(cpname, spname, key, authtime, starttime,
   65.67 -                                           endtime, renewTill, skey, tFlags,
   65.68 -                                           addrs, auData, ticket, secTicket);
   65.69 -        return cred;
   65.70      }
   65.71  }
    66.1 --- a/src/share/classes/sun/security/krb5/internal/ccache/FileCredentialsCache.java	Tue Nov 30 09:57:47 2010 -0800
    66.2 +++ b/src/share/classes/sun/security/krb5/internal/ccache/FileCredentialsCache.java	Wed Dec 08 00:35:33 2010 -0800
    66.3 @@ -1,5 +1,5 @@
    66.4  /*
    66.5 - * Copyright (c) 2000, 2009, Oracle and/or its affiliates. All rights reserved.
    66.6 + * Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved.
    66.7   * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
    66.8   *
    66.9   * This code is free software; you can redistribute it and/or modify it
   66.10 @@ -186,7 +186,10 @@
   66.11          primaryRealm = primaryPrincipal.getRealm();
   66.12          credentialsList = new Vector<Credentials> ();
   66.13          while (cis.available() > 0) {
   66.14 -            credentialsList.addElement(cis.readCred(version));
   66.15 +            Credentials cred = cis.readCred(version);
   66.16 +            if (cred != null) {
   66.17 +                credentialsList.addElement(cred);
   66.18 +            }
   66.19          }
   66.20          cis.close();
   66.21      }
    67.1 --- a/src/share/classes/sun/security/pkcs11/P11Cipher.java	Tue Nov 30 09:57:47 2010 -0800
    67.2 +++ b/src/share/classes/sun/security/pkcs11/P11Cipher.java	Wed Dec 08 00:35:33 2010 -0800
    67.3 @@ -74,7 +74,7 @@
    67.4          // DEC: return the length of trailing padding bytes given the specified
    67.5          // padded data
    67.6          int unpad(byte[] paddedData, int len)
    67.7 -                throws BadPaddingException;
    67.8 +                throws BadPaddingException, IllegalBlockSizeException;
    67.9      }
   67.10  
   67.11      private static class PKCS5Padding implements Padding {
   67.12 @@ -96,9 +96,10 @@
   67.13          }
   67.14  
   67.15          public int unpad(byte[] paddedData, int len)
   67.16 -                throws BadPaddingException {
   67.17 -            if (len < 1 || len > paddedData.length) {
   67.18 -                throw new BadPaddingException("Invalid pad array length!");
   67.19 +                throws BadPaddingException, IllegalBlockSizeException {
   67.20 +            if ((len < 1) || (len % blockSize != 0)) {
   67.21 +                throw new IllegalBlockSizeException
   67.22 +                    ("Input length must be multiples of " + blockSize);
   67.23              }
   67.24              byte padValue = paddedData[len - 1];
   67.25              if (padValue < 1 || padValue > blockSize) {
    68.1 --- a/src/share/classes/sun/security/ssl/Krb5Helper.java	Tue Nov 30 09:57:47 2010 -0800
    68.2 +++ b/src/share/classes/sun/security/ssl/Krb5Helper.java	Wed Dec 08 00:35:33 2010 -0800
    68.3 @@ -10,7 +10,7 @@
    68.4   *
    68.5   * This code is distributed in the hope that it will be useful, but WITHOUT
    68.6   * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    68.7 - * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
    68.8 + * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
    68.9   * version 2 for more details (a copy is included in the LICENSE file that
   68.10   * accompanied this code).
   68.11   *
    69.1 --- a/src/share/classes/sun/security/ssl/Krb5Proxy.java	Tue Nov 30 09:57:47 2010 -0800
    69.2 +++ b/src/share/classes/sun/security/ssl/Krb5Proxy.java	Wed Dec 08 00:35:33 2010 -0800
    69.3 @@ -10,7 +10,7 @@
    69.4   *
    69.5   * This code is distributed in the hope that it will be useful, but WITHOUT
    69.6   * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    69.7 - * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
    69.8 + * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
    69.9   * version 2 for more details (a copy is included in the LICENSE file that
   69.10   * accompanied this code).
   69.11   *
    70.1 --- a/src/share/classes/sun/security/ssl/krb5/Krb5ProxyImpl.java	Tue Nov 30 09:57:47 2010 -0800
    70.2 +++ b/src/share/classes/sun/security/ssl/krb5/Krb5ProxyImpl.java	Wed Dec 08 00:35:33 2010 -0800
    70.3 @@ -10,7 +10,7 @@
    70.4   *
    70.5   * This code is distributed in the hope that it will be useful, but WITHOUT
    70.6   * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    70.7 - * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
    70.8 + * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
    70.9   * version 2 for more details (a copy is included in the LICENSE file that
   70.10   * accompanied this code).
   70.11   *
    71.1 --- a/src/share/classes/sun/text/normalizer/NormalizerImpl.java	Tue Nov 30 09:57:47 2010 -0800
    71.2 +++ b/src/share/classes/sun/text/normalizer/NormalizerImpl.java	Wed Dec 08 00:35:33 2010 -0800
    71.3 @@ -1,5 +1,5 @@
    71.4  /*
    71.5 - * Copyright (c) 2005, 2009, Oracle and/or its affiliates. All rights reserved.
    71.6 + * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
    71.7   * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
    71.8   *
    71.9   * This code is free software; you can redistribute it and/or modify it
   71.10 @@ -1472,19 +1472,9 @@
   71.11                              }
   71.12                              --remove;
   71.13                          }
   71.14 -                    } else if(value2!=0) {
   71.15 -                        /* the composition is longer than the starter,
   71.16 -                         * move the intermediate characters back one */
   71.17 +                    } else if(value2!=0) { // for U+1109A, U+1109C, and U+110AB
   71.18                          starterIsSupplementary=true;
   71.19 -                        /* temporarily increment for the loop boundary */
   71.20 -                        ++starter;
   71.21 -                        q=remove;
   71.22 -                        r=++remove;
   71.23 -                        while(starter<q) {
   71.24 -                            args.source[--r]=args.source[--q];
   71.25 -                        }
   71.26 -                        args.source[starter]=(char)value2;
   71.27 -                        --starter; /* undo the temporary increment */
   71.28 +                        args.source[starter+1]=(char)value2;
   71.29                      /* } else { both are on the BMP, nothing more to do */
   71.30                      }
   71.31  
    72.1 Binary file src/share/classes/sun/text/resources/ubidi.icu has changed
    73.1 Binary file src/share/classes/sun/text/resources/unorm.icu has changed
    74.1 Binary file src/share/classes/sun/text/resources/uprops.icu has changed
    75.1 --- a/src/share/demo/applets/NervousText/example1.html	Tue Nov 30 09:57:47 2010 -0800
    75.2 +++ b/src/share/demo/applets/NervousText/example1.html	Wed Dec 08 00:35:33 2010 -0800
    75.3 @@ -1,7 +1,7 @@
    75.4  <title>Nervous Text 1.1</title>
    75.5  <hr>
    75.6  <applet code="NervousText.class" width=534 height=50>
    75.7 -<param name=text value="Java^T^M 2 SDK, Standard Edition 6.0">
    75.8 +<param name=text value="Java SE Development Kit (JDK) 7.0">
    75.9  </applet>
   75.10  <hr>
   75.11  <a href="NervousText.java">The source.</a>
    76.1 --- a/src/share/demo/java2d/J2DBench/src/j2dbench/J2DBench.java	Tue Nov 30 09:57:47 2010 -0800
    76.2 +++ b/src/share/demo/java2d/J2DBench/src/j2dbench/J2DBench.java	Wed Dec 08 00:35:33 2010 -0800
    76.3 @@ -75,7 +75,8 @@
    76.4  
    76.5      static JFrame guiFrame;
    76.6  
    76.7 -    static final SimpleDateFormat sdf = new SimpleDateFormat("MM.dd.yyyy 'at' HH:mm aaa z");
    76.8 +    static final SimpleDateFormat sdf =
    76.9 +        new SimpleDateFormat("MM.dd.yyyy 'at' HH:mm aaa z");
   76.10  
   76.11      public static void init() {
   76.12          progoptroot = new Group("prog", "Program Options");
   76.13 @@ -176,6 +177,8 @@
   76.14      public static void main(String argv[]) {
   76.15          init();
   76.16          TestEnvironment.init();
   76.17 +        Result.init();
   76.18 +
   76.19          Destinations.init();
   76.20          GraphicsTests.init();
   76.21          RenderTests.init();
   76.22 @@ -323,7 +326,7 @@
   76.23                      } else if (type.equalsIgnoreCase("m")) {
   76.24                          multiplyWith = 60;
   76.25                      } else {
   76.26 -                        System.out.println("Invalid \"-loop\" option specified.");
   76.27 +                        System.err.println("Invalid \"-loop\" option specified.");
   76.28                          usage(1);
   76.29                      }
   76.30  
   76.31 @@ -331,32 +334,20 @@
   76.32                      try {
   76.33                          val = Integer.parseInt(argv[i].substring(0, argv[i].length() - 1));
   76.34                      } catch(Exception e) {
   76.35 -                        System.out.println("Invalid \"-loop\" option specified.");
   76.36 +                        System.err.println("Invalid \"-loop\" option specified.");
   76.37                          usage(1);
   76.38                      }
   76.39  
   76.40                      requiredLoopTime = val * multiplyWith * 1000;
   76.41                  }
   76.42  
   76.43 -            } else if (arg.length() > 7 &&
   76.44 -                       arg.substring(0, 7).equalsIgnoreCase("-report"))
   76.45 -            {
   76.46 -                for (int j = 7; j < arg.length(); j++) {
   76.47 -                    char c = arg.charAt(j);
   76.48 -                    switch (c) {
   76.49 -                    case 'N': Result.unitScale = Result.UNITS_WHOLE;     break;
   76.50 -                    case 'M': Result.unitScale = Result.UNITS_MILLIONS;  break;
   76.51 -                    case 'K': Result.unitScale = Result.UNITS_THOUSANDS; break;
   76.52 -                    case 'A': Result.unitScale = Result.UNITS_AUTO;      break;
   76.53 -                    case 'U': Result.useUnits = true; break;
   76.54 -                    case 'O': Result.useUnits = false; break;
   76.55 -                    case 's': Result.timeScale = Result.SECONDS_WHOLE;  break;
   76.56 -                    case 'm': Result.timeScale = Result.SECONDS_MILLIS; break;
   76.57 -                    case 'u': Result.timeScale = Result.SECONDS_MICROS; break;
   76.58 -                    case 'n': Result.timeScale = Result.SECONDS_NANOS;  break;
   76.59 -                    case 'a': Result.timeScale = Result.SECONDS_AUTO;   break;
   76.60 -                    case '/': Result.invertRate = !Result.invertRate; break;
   76.61 -                    }
   76.62 +           } else if (arg.length() > 8 &&
   76.63 +                        arg.substring(0, 8).equalsIgnoreCase("-report:"))
   76.64 +           {
   76.65 +                String error = Result.parseRateOpt(arg.substring(8));
   76.66 +                if (error != null) {
   76.67 +                     System.err.println("Invalid rate: "+error);
   76.68 +                     usage(1);
   76.69                  }
   76.70              } else {
   76.71                  String reason = Group.root.setOption(arg);
   76.72 @@ -411,7 +402,7 @@
   76.73                          writer.flush();
   76.74                      } catch(IOException ioe) {
   76.75                          ioe.printStackTrace();
   76.76 -                        System.out.println("\nERROR : Could not create Loop-Report. Exit");
   76.77 +                        System.err.println("\nERROR : Could not create Loop-Report. Exit");
   76.78                          System.exit(1);
   76.79                      }
   76.80                  }
   76.81 @@ -466,7 +457,7 @@
   76.82  
   76.83              } while(J2DBench.looping);
   76.84  
   76.85 -            if(J2DBench.looping) {
   76.86 +            if (J2DBench.looping) {
   76.87                  writer.println("</html>");
   76.88                  writer.flush();
   76.89                  writer.close();
    77.1 --- a/src/share/demo/java2d/J2DBench/src/j2dbench/Option.java	Tue Nov 30 09:57:47 2010 -0800
    77.2 +++ b/src/share/demo/java2d/J2DBench/src/j2dbench/Option.java	Wed Dec 08 00:35:33 2010 -0800
    77.3 @@ -170,7 +170,7 @@
    77.4                  updateGUI();
    77.5                  jcb.addItemListener(new ItemListener() {
    77.6                      public void itemStateChanged(ItemEvent e) {
    77.7 -                        if (e.getStateChange() == e.SELECTED) {
    77.8 +                        if (e.getStateChange() == ItemEvent.SELECTED) {
    77.9                              JComboBox jcb = (JComboBox) e.getItemSelectable();
   77.10                              value = jcb.getSelectedIndex();
   77.11                              if (J2DBench.verbose.isEnabled()) {
   77.12 @@ -261,7 +261,7 @@
   77.13                  updateGUI();
   77.14                  jcb.addItemListener(new ItemListener() {
   77.15                      public void itemStateChanged(ItemEvent e) {
   77.16 -                        value = (e.getStateChange() == e.SELECTED);
   77.17 +                        value = (e.getStateChange() == ItemEvent.SELECTED);
   77.18                          if (J2DBench.verbose.isEnabled()) {
   77.19                              System.out.println(getOptionString());
   77.20                          }
   77.21 @@ -569,8 +569,6 @@
   77.22          }
   77.23  
   77.24          public String setValueFromString(String value) {
   77.25 -            int prev = 0;
   77.26 -            int next = 0;
   77.27              int enabled = 0;
   77.28              StringTokenizer st = new StringTokenizer(value, ",");
   77.29              while (st.hasMoreTokens()) {
   77.30 @@ -588,7 +586,6 @@
   77.31                  if (s != null) {
   77.32                      return "Bad value in list ("+s+")";
   77.33                  }
   77.34 -                prev = next+1;
   77.35              }
   77.36              this.enabled = enabled;
   77.37              updateGUI();
   77.38 @@ -623,6 +620,175 @@
   77.39          }
   77.40      }
   77.41  
   77.42 +    public static class ObjectChoice extends Option {
   77.43 +         int size;
   77.44 +         String optionnames[];
   77.45 +         Object optionvalues[];
   77.46 +         String abbrevnames[];
   77.47 +         String descnames[];
   77.48 +         int defaultselected;
   77.49 +         int selected;
   77.50 +         JPanel jp;
   77.51 +         JComboBox jcombo;
   77.52 +
   77.53 +         public ObjectChoice(Group parent, String nodeName, String description,
   77.54 +                             String optionnames[],
   77.55 +                             Object optionvalues[],
   77.56 +                             String abbrevnames[],
   77.57 +                             String descnames[],
   77.58 +                             int defaultselected)
   77.59 +         {
   77.60 +             this(parent, nodeName, description,
   77.61 +                  Math.min(Math.min(optionnames.length,
   77.62 +                                    optionvalues.length),
   77.63 +                           Math.min(abbrevnames.length,
   77.64 +                                    descnames.length)),
   77.65 +                  optionnames, optionvalues,
   77.66 +                  abbrevnames, descnames, defaultselected);
   77.67 +         }
   77.68 +
   77.69 +         public ObjectChoice(Group parent, String nodeName, String description,
   77.70 +                             int size,
   77.71 +                             String optionnames[],
   77.72 +                             Object optionvalues[],
   77.73 +                             String abbrevnames[],
   77.74 +                             String descnames[],
   77.75 +                             int defaultselected)
   77.76 +         {
   77.77 +             super(parent, nodeName, description);
   77.78 +             this.size = size;
   77.79 +             this.optionnames = trim(optionnames, size);
   77.80 +             this.optionvalues = trim(optionvalues, size);
   77.81 +             this.abbrevnames = trim(abbrevnames, size);
   77.82 +             this.descnames = trim(descnames, size);
   77.83 +             this.selected = this.defaultselected = defaultselected;
   77.84 +         }
   77.85 +
   77.86 +         private static String[] trim(String list[], int size) {
   77.87 +             if (list.length == size) {
   77.88 +                 return list;
   77.89 +             }
   77.90 +             String newlist[] = new String[size];
   77.91 +             System.arraycopy(list, 0, newlist, 0, size);
   77.92 +             return newlist;
   77.93 +         }
   77.94 +
   77.95 +         private static Object[] trim(Object list[], int size) {
   77.96 +             if (list.length == size) {
   77.97 +                 return list;
   77.98 +             }
   77.99 +             Object newlist[] = new Object[size];
  77.100 +             System.arraycopy(list, 0, newlist, 0, size);
  77.101 +             return newlist;
  77.102 +         }
  77.103 +
  77.104 +         public void restoreDefault() {
  77.105 +             if (selected != defaultselected) {
  77.106 +                 selected = defaultselected;
  77.107 +                 updateGUI();
  77.108 +             }
  77.109 +         }
  77.110 +
  77.111 +         public void updateGUI() {
  77.112 +             if (jcombo != null) {
  77.113 +                 jcombo.setSelectedIndex(this.selected);
  77.114 +             }
  77.115 +         }
  77.116 +
  77.117 +         public boolean isDefault() {
  77.118 +             return (selected == defaultselected);
  77.119 +         }
  77.120 +
  77.121 +         public Modifier.Iterator getIterator(TestEnvironment env) {
  77.122 +             return new SwitchIterator(optionvalues, 1 << selected);
  77.123 +         }
  77.124 +
  77.125 +         public JComponent getJComponent() {
  77.126 +             if (jp == null) {
  77.127 +                 jp = new JPanel();
  77.128 +                 jp.setLayout(new BorderLayout());
  77.129 +                 jp.add(new JLabel(getDescription()), BorderLayout.WEST);
  77.130 +                 jcombo = new JComboBox(descnames);
  77.131 +                 updateGUI();
  77.132 +                 jcombo.addItemListener(new ItemListener() {
  77.133 +                     public void itemStateChanged(ItemEvent e) {
  77.134 +                         if (e.getStateChange() == ItemEvent.SELECTED) {
  77.135 +                             selected = jcombo.getSelectedIndex();
  77.136 +                             if (J2DBench.verbose.isEnabled()) {
  77.137 +                                 System.out.println(getOptionString());
  77.138 +                             }
  77.139 +                         }
  77.140 +                     }
  77.141 +                 });
  77.142 +                 jp.add(jcombo, BorderLayout.EAST);
  77.143 +             }
  77.144 +             return jp;
  77.145 +         }
  77.146 +
  77.147 +         public Object getValue() {
  77.148 +             return optionvalues[selected];
  77.149 +         }
  77.150 +
  77.151 +         public int getIntValue() {
  77.152 +             return ((Integer) optionvalues[selected]).intValue();
  77.153 +         }
  77.154 +
  77.155 +         public boolean getBooleanValue() {
  77.156 +             return ((Boolean) optionvalues[selected]).booleanValue();
  77.157 +         }
  77.158 +
  77.159 +         public String getValString() {
  77.160 +             return optionnames[selected];
  77.161 +         }
  77.162 +
  77.163 +         int findValueIndex(Object value) {
  77.164 +             for (int i = 0; i < size; i++) {
  77.165 +                 if (optionvalues[i] == value) {
  77.166 +                     return i;
  77.167 +                 }
  77.168 +             }
  77.169 +             return -1;
  77.170 +         }
  77.171 +
  77.172 +         public String getValString(Object value) {
  77.173 +             return optionnames[findValueIndex(value)];
  77.174 +         }
  77.175 +
  77.176 +         public String getAbbreviatedModifierDescription(Object value) {
  77.177 +             return abbrevnames[findValueIndex(value)];
  77.178 +         }
  77.179 +
  77.180 +         public String setValue(int v) {
  77.181 +             return setValue(new Integer(v));
  77.182 +         }
  77.183 +
  77.184 +         public String setValue(boolean v) {
  77.185 +             return setValue(new Boolean(v));
  77.186 +         }
  77.187 +
  77.188 +         public String setValue(Object value) {
  77.189 +             for (int i = 0; i < size; i++) {
  77.190 +                 if (optionvalues[i].equals(value)) {
  77.191 +                     this.selected = i;
  77.192 +                     updateGUI();
  77.193 +                     return null;
  77.194 +                 }
  77.195 +             }
  77.196 +             return "Bad value";
  77.197 +         }
  77.198 +
  77.199 +         public String setValueFromString(String value) {
  77.200 +             for (int i = 0; i < size; i++) {
  77.201 +                 if (optionnames[i].equals(value)) {
  77.202 +                     this.selected = i;
  77.203 +                     updateGUI();
  77.204 +                     return null;
  77.205 +                 }
  77.206 +             }
  77.207 +             return "Bad value";
  77.208 +         }
  77.209 +    }
  77.210 +
  77.211      public static class BooleanIterator implements Modifier.Iterator {
  77.212          private Boolean list[];
  77.213          private int index;
    78.1 --- a/src/share/demo/java2d/J2DBench/src/j2dbench/Result.java	Tue Nov 30 09:57:47 2010 -0800
    78.2 +++ b/src/share/demo/java2d/J2DBench/src/j2dbench/Result.java	Wed Dec 08 00:35:33 2010 -0800
    78.3 @@ -35,23 +35,199 @@
    78.4  import java.util.Hashtable;
    78.5  import java.util.Enumeration;
    78.6  import java.io.PrintWriter;
    78.7 +import java.util.HashMap;
    78.8  
    78.9  public class Result {
   78.10 -    public static final int UNITS_WHOLE      = 0;
   78.11 -    public static final int UNITS_THOUSANDS  = 1;
   78.12 -    public static final int UNITS_MILLIONS   = 2;
   78.13 -    public static final int UNITS_AUTO       = 3;
   78.14 +    public static final int RATE_UNKNOWN    = 0;
   78.15  
   78.16 -    public static final int SECONDS_WHOLE = 0;
   78.17 -    public static final int SECONDS_MILLIS = 1;
   78.18 -    public static final int SECONDS_MICROS = 2;
   78.19 -    public static final int SECONDS_NANOS  = 3;
   78.20 -    public static final int SECONDS_AUTO  = 4;
   78.21 +    public static final int WORK_OPS        = 1;
   78.22 +    public static final int WORK_UNITS      = 2;
   78.23 +    public static final int WORK_THOUSANDS  = 4;
   78.24 +    public static final int WORK_MILLIONS   = 6;
   78.25 +    public static final int WORK_AUTO       = 8;
   78.26  
   78.27 -    public static int unitScale = UNITS_WHOLE;
   78.28 -    public static int timeScale = SECONDS_WHOLE;
   78.29 -    public static boolean useUnits = true;
   78.30 -    public static boolean invertRate = false;
   78.31 +    public static final int TIME_SECONDS    = 10;
   78.32 +    public static final int TIME_MILLIS     = 11;
   78.33 +    public static final int TIME_MICROS     = 12;
   78.34 +    public static final int TIME_NANOS      = 13;
   78.35 +    public static final int TIME_AUTO       = 14;
   78.36 +
   78.37 +    static Group resultoptroot;
   78.38 +    static Option.ObjectChoice timeOpt;
   78.39 +    static Option.ObjectChoice workOpt;
   78.40 +    static Option.ObjectChoice rateOpt;
   78.41 +
   78.42 +    public static void init() {
   78.43 +        resultoptroot = new Group(TestEnvironment.globaloptroot,
   78.44 +                                  "results", "Result Options");
   78.45 +
   78.46 +        String workStrings[] = {
   78.47 +            "units",
   78.48 +            "kilounits",
   78.49 +            "megaunits",
   78.50 +            "autounits",
   78.51 +            "ops",
   78.52 +            "kiloops",
   78.53 +            "megaops",
   78.54 +            "autoops",
   78.55 +        };
   78.56 +        String workDescriptions[] = {
   78.57 +            "Test Units",
   78.58 +            "Thousands of Test Units",
   78.59 +            "Millions of Test Units",
   78.60 +            "Auto-scaled Test Units",
   78.61 +            "Operations",
   78.62 +            "Thousands of Operations",
   78.63 +            "Millions of Operations",
   78.64 +            "Auto-scaled Operations",
   78.65 +        };
   78.66 +        Integer workObjects[] = {
   78.67 +            new Integer(WORK_UNITS),
   78.68 +            new Integer(WORK_THOUSANDS),
   78.69 +            new Integer(WORK_MILLIONS),
   78.70 +            new Integer(WORK_AUTO),
   78.71 +            new Integer(WORK_OPS | WORK_UNITS),
   78.72 +            new Integer(WORK_OPS | WORK_THOUSANDS),
   78.73 +            new Integer(WORK_OPS | WORK_MILLIONS),
   78.74 +            new Integer(WORK_OPS | WORK_AUTO),
   78.75 +        };
   78.76 +        workOpt = new Option.ObjectChoice(resultoptroot,
   78.77 +                                          "workunits", "Work Units",
   78.78 +                                          workStrings, workObjects,
   78.79 +                                          workStrings, workDescriptions,
   78.80 +                                          0);
   78.81 +        String timeStrings[] = {
   78.82 +            "sec",
   78.83 +            "msec",
   78.84 +            "usec",
   78.85 +            "nsec",
   78.86 +            "autosec",
   78.87 +        };
   78.88 +        String timeDescriptions[] = {
   78.89 +            "Seconds",
   78.90 +            "Milliseconds",
   78.91 +            "Microseconds",
   78.92 +            "Nanoseconds",
   78.93 +            "Auto-scaled seconds",
   78.94 +        };
   78.95 +        Integer timeObjects[] = {
   78.96 +            new Integer(TIME_SECONDS),
   78.97 +            new Integer(TIME_MILLIS),
   78.98 +            new Integer(TIME_MICROS),
   78.99 +            new Integer(TIME_NANOS),
  78.100 +            new Integer(TIME_AUTO),
  78.101 +        };
  78.102 +        timeOpt = new Option.ObjectChoice(resultoptroot,
  78.103 +                                          "timeunits", "Time Units",
  78.104 +                                          timeStrings, timeObjects,
  78.105 +                                          timeStrings, timeDescriptions,
  78.106 +                                          0);
  78.107 +        String rateStrings[] = {
  78.108 +            "unitspersec",
  78.109 +            "secsperunit",
  78.110 +        };
  78.111 +        String rateDescriptions[] = {
  78.112 +            "Work units per Time",
  78.113 +            "Time units per Work",
  78.114 +        };
  78.115 +        Boolean rateObjects[] = {
  78.116 +            Boolean.FALSE,
  78.117 +            Boolean.TRUE,
  78.118 +        };
  78.119 +        rateOpt = new Option.ObjectChoice(resultoptroot,
  78.120 +                                          "ratio", "Rate Ratio",
  78.121 +                                          rateStrings, rateObjects,
  78.122 +                                          rateStrings, rateDescriptions,
  78.123 +                                          0);
  78.124 +    }
  78.125 +
  78.126 +    public static boolean isTimeUnit(int unit) {
  78.127 +        return (unit >= TIME_SECONDS && unit <= TIME_AUTO);
  78.128 +    }
  78.129 +
  78.130 +    public static boolean isWorkUnit(int unit) {
  78.131 +        return (unit >= WORK_OPS && unit <= (WORK_AUTO | WORK_OPS));
  78.132 +    }
  78.133 +
  78.134 +    public static String parseRateOpt(String opt) {
  78.135 +        int timeScale = timeOpt.getIntValue();
  78.136 +        int workScale = workOpt.getIntValue();
  78.137 +        boolean invertRate = rateOpt.getBooleanValue();
  78.138 +        int divindex = opt.indexOf('/');
  78.139 +        if (divindex < 0) {
  78.140 +            int unit = parseUnit(opt);
  78.141 +            if (isTimeUnit(unit)) {
  78.142 +                timeScale = unit;
  78.143 +            } else if (isWorkUnit(unit)) {
  78.144 +                workScale = unit;
  78.145 +            } else {
  78.146 +                return "Bad unit: "+opt;
  78.147 +            }
  78.148 +        } else {
  78.149 +            int unit1 = parseUnit(opt.substring(0,divindex));
  78.150 +            int unit2 = parseUnit(opt.substring(divindex+1));
  78.151 +            if (isTimeUnit(unit1)) {
  78.152 +                if (isWorkUnit(unit2)) {
  78.153 +                    timeScale = unit1;
  78.154 +                    workScale = unit2;
  78.155 +                    invertRate = true;
  78.156 +                } else if (isTimeUnit(unit2)) {
  78.157 +                    return "Both time units: "+opt;
  78.158 +                } else {
  78.159 +                    return "Bad denominator: "+opt;
  78.160 +                }
  78.161 +            } else if (isWorkUnit(unit1)) {
  78.162 +                if (isWorkUnit(unit2)) {
  78.163 +                    return "Both work units: "+opt;
  78.164 +                } else if (isTimeUnit(unit2)) {
  78.165 +                    timeScale = unit2;
  78.166 +                    workScale = unit1;
  78.167 +                    invertRate = false;
  78.168 +                } else {
  78.169 +                    return "Bad denominator: "+opt;
  78.170 +                }
  78.171 +            } else {
  78.172 +                return "Bad numerator: "+opt;
  78.173 +            }
  78.174 +        }
  78.175 +        timeOpt.setValue(timeScale);
  78.176 +        workOpt.setValue(workScale);
  78.177 +        rateOpt.setValue(invertRate);
  78.178 +        return null;
  78.179 +    }
  78.180 +
  78.181 +    private static HashMap unitMap;
  78.182 +
  78.183 +    static {
  78.184 +        unitMap = new HashMap();
  78.185 +        unitMap.put("U",  new Integer(WORK_UNITS));
  78.186 +        unitMap.put("M",  new Integer(WORK_MILLIONS));
  78.187 +        unitMap.put("K",  new Integer(WORK_THOUSANDS));
  78.188 +        unitMap.put("A",  new Integer(WORK_AUTO));
  78.189 +        unitMap.put("MU", new Integer(WORK_MILLIONS));
  78.190 +        unitMap.put("KU", new Integer(WORK_THOUSANDS));
  78.191 +        unitMap.put("AU", new Integer(WORK_AUTO));
  78.192 +
  78.193 +        unitMap.put("O",  new Integer(WORK_UNITS | WORK_OPS));
  78.194 +        unitMap.put("NO", new Integer(WORK_UNITS | WORK_OPS));
  78.195 +        unitMap.put("MO", new Integer(WORK_MILLIONS | WORK_OPS));
  78.196 +        unitMap.put("KO", new Integer(WORK_THOUSANDS | WORK_OPS));
  78.197 +        unitMap.put("AO", new Integer(WORK_AUTO | WORK_OPS));
  78.198 +
  78.199 +        unitMap.put("s",  new Integer(TIME_SECONDS));
  78.200 +        unitMap.put("m",  new Integer(TIME_MILLIS));
  78.201 +        unitMap.put("u",  new Integer(TIME_MICROS));
  78.202 +        unitMap.put("n",  new Integer(TIME_NANOS));
  78.203 +        unitMap.put("a",  new Integer(TIME_AUTO));
  78.204 +    }
  78.205 +
  78.206 +    public static int parseUnit(String c) {
  78.207 +        Integer u = (Integer) unitMap.get(c);
  78.208 +        if (u != null) {
  78.209 +            return u.intValue();
  78.210 +        }
  78.211 +        return RATE_UNKNOWN;
  78.212 +    }
  78.213  
  78.214      String unitname = "unit";
  78.215      Test test;
  78.216 @@ -157,69 +333,76 @@
  78.217      }
  78.218  
  78.219      public String getAverageString() {
  78.220 -        double units = (useUnits ? getTotalUnits() : getTotalReps());
  78.221 +        int timeScale = timeOpt.getIntValue();
  78.222 +        int workScale = workOpt.getIntValue();
  78.223 +        boolean invertRate = rateOpt.getBooleanValue();
  78.224          double time = getTotalTime();
  78.225 +        String timeprefix = "";
  78.226 +        switch (timeScale) {
  78.227 +        case TIME_AUTO:
  78.228 +        case TIME_SECONDS:
  78.229 +            time /= 1000;
  78.230 +            break;
  78.231 +        case TIME_MILLIS:
  78.232 +            timeprefix = "m";
  78.233 +            break;
  78.234 +        case TIME_MICROS:
  78.235 +            time *= 1000.0;
  78.236 +            timeprefix = "u";
  78.237 +            break;
  78.238 +        case TIME_NANOS:
  78.239 +            time *= 1000000.0;
  78.240 +            timeprefix = "n";
  78.241 +            break;
  78.242 +        }
  78.243 +
  78.244 +        String workprefix = "";
  78.245 +        boolean isOps = (workScale & WORK_OPS) != 0;
  78.246 +        String workname = isOps ? "op" : unitname;
  78.247 +        double work = isOps ? getTotalReps() : getTotalUnits();
  78.248 +        switch (workScale & (~WORK_OPS)) {
  78.249 +        case WORK_AUTO:
  78.250 +        case WORK_UNITS:
  78.251 +            break;
  78.252 +        case WORK_THOUSANDS:
  78.253 +            work /= 1000.0;
  78.254 +            workprefix = "K";
  78.255 +            break;
  78.256 +        case WORK_MILLIONS:
  78.257 +            work /= 1000000.0;
  78.258 +            workprefix = "M";
  78.259 +            break;
  78.260 +        }
  78.261          if (invertRate) {
  78.262 -            double rate = time / units;
  78.263 -            String prefix = "";
  78.264 -            switch (timeScale) {
  78.265 -            case SECONDS_WHOLE:
  78.266 -                rate /= 1000;
  78.267 -                break;
  78.268 -            case SECONDS_MILLIS:
  78.269 -                prefix = "m";
  78.270 -                break;
  78.271 -            case SECONDS_MICROS:
  78.272 -                rate *= 1000.0;
  78.273 -                prefix = "u";
  78.274 -                break;
  78.275 -            case SECONDS_NANOS:
  78.276 -                rate *= 1000000.0;
  78.277 -                prefix = "n";
  78.278 -                break;
  78.279 -            case SECONDS_AUTO:
  78.280 -                rate /= 1000.0;
  78.281 +            double rate = time / work;
  78.282 +            if (timeScale == TIME_AUTO) {
  78.283                  if (rate < 1.0) {
  78.284                      rate *= 1000.0;
  78.285 -                    prefix = "m";
  78.286 +                    timeprefix = "m";
  78.287                      if (rate < 1.0) {
  78.288                          rate *= 1000.0;
  78.289 -                        prefix = "u";
  78.290 +                        timeprefix = "u";
  78.291                          if (rate < 1.0) {
  78.292                              rate *= 1000.0;
  78.293 -                            prefix = "n";
  78.294 +                            timeprefix = "n";
  78.295                          }
  78.296                      }
  78.297                  }
  78.298 -                break;
  78.299              }
  78.300 -            return rate+" "+prefix+"secs/"+(useUnits ? unitname : "op");
  78.301 +            return rate+" "+timeprefix+"secs/"+workprefix+workname;
  78.302          } else {
  78.303 -            double rate = units / (time / 1000.0);
  78.304 -            String prefix = "";
  78.305 -            switch (unitScale) {
  78.306 -            case UNITS_WHOLE:
  78.307 -                break;
  78.308 -            case UNITS_THOUSANDS:
  78.309 -                rate /= 1000.0;
  78.310 -                prefix = "K";
  78.311 -                break;
  78.312 -            case UNITS_MILLIONS:
  78.313 -                rate /= 1000000.0;
  78.314 -                prefix = "M";
  78.315 -                break;
  78.316 -            case UNITS_AUTO:
  78.317 +            double rate = work / time;
  78.318 +            if (workScale == WORK_AUTO) {
  78.319                  if (rate > 1000.0) {
  78.320                      rate /= 1000.0;
  78.321 -                    prefix = "K";
  78.322 +                    workprefix = "K";
  78.323                      if (rate > 1000.0) {
  78.324                          rate /= 1000.0;
  78.325 -                        prefix = "M";
  78.326 +                        workprefix = "M";
  78.327                      }
  78.328                  }
  78.329 -                break;
  78.330              }
  78.331 -            return rate+" "+prefix+(useUnits ? unitname : "op")+"s/sec";
  78.332 +            return rate+" "+workprefix+workname+"s/"+timeprefix+"sec";
  78.333          }
  78.334      }
  78.335  
    79.1 --- a/src/share/demo/java2d/J2DBench/src/j2dbench/report/J2DAnalyzer.java	Tue Nov 30 09:57:47 2010 -0800
    79.2 +++ b/src/share/demo/java2d/J2DBench/src/j2dbench/report/J2DAnalyzer.java	Wed Dec 08 00:35:33 2010 -0800
    79.3 @@ -61,6 +61,8 @@
    79.4                      "the following result sets are combined into a group");
    79.5          out.println("   -NoGroup              "+
    79.6                      "the following result sets stand on their own");
    79.7 +        out.println("   -ShowUncontested      "+
    79.8 +                    "show results even when only result set has a result");
    79.9          out.println("   -Graph                "+
   79.10                      "graph the results visually (using lines of *'s)");
   79.11          out.println("   -Best                 "+
   79.12 @@ -83,6 +85,7 @@
   79.13      public static void main(String argv[]) {
   79.14          boolean gavehelp = false;
   79.15          boolean graph = false;
   79.16 +        boolean ignoreuncontested = true;
   79.17          if (argv.length > 0 && argv[0].equalsIgnoreCase("-html")) {
   79.18              String newargs[] = new String[argv.length-1];
   79.19              System.arraycopy(argv, 1, newargs, 0, newargs.length);
   79.20 @@ -97,6 +100,8 @@
   79.21                  results.add(groupHolder);
   79.22              } else if (arg.equalsIgnoreCase("-NoGroup")) {
   79.23                  groupHolder = null;
   79.24 +            } else if (arg.equalsIgnoreCase("-ShowUncontested")) {
   79.25 +                ignoreuncontested = false;
   79.26              } else if (arg.equalsIgnoreCase("-Graph")) {
   79.27                  graph = true;
   79.28              } else if (arg.equalsIgnoreCase("-Best")) {
   79.29 @@ -171,18 +176,23 @@
   79.30              String key = keys[k];
   79.31              ResultHolder rh = base.getResultByKey(key);
   79.32              double score = rh.getScore();
   79.33 -            System.out.println(rh.getShortKey()+":");
   79.34              double maxscore = score;
   79.35 -            if (graph) {
   79.36 -                for (int i = 0; i < numsets; i++) {
   79.37 -                    ResultSetHolder rsh =
   79.38 -                        (ResultSetHolder) results.elementAt(i);
   79.39 -                    ResultHolder rh2 = rsh.getResultByKey(key);
   79.40 -                    if (rh2 != null) {
   79.41 +            int numcontesting = 0;
   79.42 +            for (int i = 0; i < numsets; i++) {
   79.43 +                ResultSetHolder rsh =
   79.44 +                    (ResultSetHolder) results.elementAt(i);
   79.45 +                ResultHolder rh2 = rsh.getResultByKey(key);
   79.46 +                if (rh2 != null) {
   79.47 +                    if (graph) {
   79.48                          maxscore = Math.max(maxscore, rh2.getBestScore());
   79.49                      }
   79.50 +                    numcontesting++;
   79.51                  }
   79.52              }
   79.53 +            if (ignoreuncontested && numcontesting < 2) {
   79.54 +                continue;
   79.55 +            }
   79.56 +            System.out.println(rh.getShortKey()+":");
   79.57              for (int i = 0; i < numsets; i++) {
   79.58                  ResultSetHolder rsh = (ResultSetHolder) results.elementAt(i);
   79.59                  System.out.print(rsh.getTitle()+": ");
    80.1 --- a/src/share/demo/java2d/J2DBench/src/j2dbench/tests/GraphicsTests.java	Tue Nov 30 09:57:47 2010 -0800
    80.2 +++ b/src/share/demo/java2d/J2DBench/src/j2dbench/tests/GraphicsTests.java	Wed Dec 08 00:35:33 2010 -0800
    80.3 @@ -38,6 +38,8 @@
    80.4  import java.awt.Polygon;
    80.5  import java.awt.Color;
    80.6  import java.awt.Dimension;
    80.7 +import java.awt.geom.Point2D;
    80.8 +import java.awt.geom.AffineTransform;
    80.9  import java.lang.reflect.Field;
   80.10  
   80.11  import j2dbench.Destinations;
   80.12 @@ -74,6 +76,7 @@
   80.13      static Option animList;
   80.14      static Option sizeList;
   80.15      static Option compRules;
   80.16 +    static Option transforms;
   80.17      static Option doExtraAlpha;
   80.18      static Option doXor;
   80.19      static Option doClipping;
   80.20 @@ -167,6 +170,29 @@
   80.21                                        j, rulenames, rules, rulenames,
   80.22                                        ruledescs, (1 << defrule));
   80.23              ((Option.ObjectList) compRules).setNumRows(4);
   80.24 +
   80.25 +            Transform xforms[] = {
   80.26 +                Identity.instance,
   80.27 +                FTranslate.instance,
   80.28 +                Scale2x2.instance,
   80.29 +                Rotate15.instance,
   80.30 +                ShearX.instance,
   80.31 +                ShearY.instance,
   80.32 +            };
   80.33 +            String xformnames[] = new String[xforms.length];
   80.34 +            String xformdescs[] = new String[xforms.length];
   80.35 +            for (int i = 0; i < xforms.length; i++) {
   80.36 +                xformnames[i] = xforms[i].getShortName();
   80.37 +                xformdescs[i] = xforms[i].getDescription();
   80.38 +            }
   80.39 +            transforms =
   80.40 +                new Option.ObjectList(groptroot, "transform",
   80.41 +                                      "Affine Transform",
   80.42 +                                      xforms.length,
   80.43 +                                      xformnames, xforms, xformnames,
   80.44 +                                      xformdescs, 0x1);
   80.45 +            ((Option.ObjectList) transforms).setNumRows(3);
   80.46 +
   80.47              doExtraAlpha =
   80.48                  new Option.Toggle(groptroot, "extraalpha",
   80.49                                    "Render with an \"extra alpha\" of 0.125",
   80.50 @@ -200,6 +226,7 @@
   80.51          int orgX, orgY;
   80.52          int initX, initY;
   80.53          int maxX, maxY;
   80.54 +        double pixscale;
   80.55      }
   80.56  
   80.57      public GraphicsTests(Group parent, String nodeName, String description) {
   80.58 @@ -211,7 +238,7 @@
   80.59      public Object initTest(TestEnvironment env, Result result) {
   80.60          Context ctx = createContext();
   80.61          initContext(env, ctx);
   80.62 -        result.setUnits(pixelsTouched(ctx));
   80.63 +        result.setUnits((int) (ctx.pixscale * pixelsTouched(ctx)));
   80.64          result.setUnitName("pixel");
   80.65          return ctx;
   80.66      }
   80.67 @@ -232,6 +259,9 @@
   80.68          ctx.graphics = env.getGraphics();
   80.69          int w = env.getWidth();
   80.70          int h = env.getHeight();
   80.71 +        ctx.size = env.getIntValue(sizeList);
   80.72 +        ctx.outdim = getOutputSize(ctx.size, ctx.size);
   80.73 +        ctx.pixscale = 1.0;
   80.74          if (hasGraphics2D) {
   80.75              Graphics2D g2d = (Graphics2D) ctx.graphics;
   80.76              AlphaComposite ac = (AlphaComposite) env.getModifier(compRules);
   80.77 @@ -251,11 +281,14 @@
   80.78                  p.addPoint(0, 0);
   80.79                  g2d.clip(p);
   80.80              }
   80.81 +            Transform tx = (Transform) env.getModifier(transforms);
   80.82 +            Dimension envdim = new Dimension(w, h);
   80.83 +            tx.init(g2d, ctx, envdim);
   80.84 +            w = envdim.width;
   80.85 +            h = envdim.height;
   80.86              g2d.setRenderingHint(RenderingHints.KEY_RENDERING,
   80.87                                   env.getModifier(renderHint));
   80.88          }
   80.89 -        ctx.size = env.getIntValue(sizeList);
   80.90 -        ctx.outdim = getOutputSize(ctx.size, ctx.size);
   80.91          switch (env.getIntValue(animList)) {
   80.92          case 0:
   80.93              ctx.animate = false;
   80.94 @@ -290,4 +323,201 @@
   80.95          graphics.dispose();
   80.96          ((Context) ctx).graphics = null;
   80.97      }
   80.98 +
   80.99 +    public abstract static class Transform {
  80.100 +        public abstract String getShortName();
  80.101 +        public abstract String getDescription();
  80.102 +        public abstract void init(Graphics2D g2d, Context ctx, Dimension dim);
  80.103 +
  80.104 +        public static double scaleForPoint(AffineTransform at,
  80.105 +                                           double xorig, double yorig,
  80.106 +                                           double x, double y,
  80.107 +                                           int w, int h)
  80.108 +        {
  80.109 +            Point2D.Double ptd = new Point2D.Double(x, y);
  80.110 +            at.transform(ptd, ptd);
  80.111 +            x = ptd.getX();
  80.112 +            y = ptd.getY();
  80.113 +            double scale = 1.0;
  80.114 +            if (x < 0) {
  80.115 +                scale = Math.min(scale, xorig / (xorig - x));
  80.116 +            } else if (x > w) {
  80.117 +                scale = Math.min(scale, (w - xorig) / (x - xorig));
  80.118 +            }
  80.119 +            if (y < 0) {
  80.120 +                scale = Math.min(scale, yorig / (yorig - y));
  80.121 +            } else if (y > h) {
  80.122 +                scale = Math.min(scale, (h - yorig) / (y - yorig));
  80.123 +            }
  80.124 +            return scale;
  80.125 +        }
  80.126 +
  80.127 +        public static Dimension scaleForTransform(AffineTransform at,
  80.128 +                                                  Dimension dim)
  80.129 +        {
  80.130 +            int w = dim.width;
  80.131 +            int h = dim.height;
  80.132 +            Point2D.Double ptd = new Point2D.Double(0, 0);
  80.133 +            at.transform(ptd, ptd);
  80.134 +            double ox = ptd.getX();
  80.135 +            double oy = ptd.getY();
  80.136 +            if (ox < 0 || ox > w || oy < 0 || oy > h) {
  80.137 +                throw new InternalError("origin outside destination");
  80.138 +            }
  80.139 +            double scalex = scaleForPoint(at, ox, oy, w, h, w, h);
  80.140 +            double scaley = scalex;
  80.141 +            scalex = Math.min(scaleForPoint(at, ox, oy, w, 0, w, h), scalex);
  80.142 +            scaley = Math.min(scaleForPoint(at, ox, oy, 0, h, w, h), scaley);
  80.143 +            if (scalex < 0 || scaley < 0) {
  80.144 +                throw new InternalError("could not fit dims to transform");
  80.145 +            }
  80.146 +            return new Dimension((int) Math.floor(w * scalex),
  80.147 +                                 (int) Math.floor(h * scaley));
  80.148 +        }
  80.149 +    }
  80.150 +
  80.151 +    public static class Identity extends Transform {
  80.152 +        public static final Identity instance = new Identity();
  80.153 +
  80.154 +        private Identity() {}
  80.155 +
  80.156 +        public String getShortName() {
  80.157 +            return "ident";
  80.158 +        }
  80.159 +
  80.160 +        public String getDescription() {
  80.161 +            return "Identity";
  80.162 +        }
  80.163 +
  80.164 +        public void init(Graphics2D g2d, Context ctx, Dimension dim) {
  80.165 +        }
  80.166 +    }
  80.167 +
  80.168 +    public static class FTranslate extends Transform {
  80.169 +        public static final FTranslate instance = new FTranslate();
  80.170 +
  80.171 +        private FTranslate() {}
  80.172 +
  80.173 +        public String getShortName() {
  80.174 +            return "ftrans";
  80.175 +        }
  80.176 +
  80.177 +        public String getDescription() {
  80.178 +            return "FTranslate 1.5";
  80.179 +        }
  80.180 +
  80.181 +        public void init(Graphics2D g2d, Context ctx, Dimension dim) {
  80.182 +            int w = dim.width;
  80.183 +            int h = dim.height;
  80.184 +            AffineTransform at = new AffineTransform();
  80.185 +            at.translate(1.5, 1.5);
  80.186 +            g2d.transform(at);
  80.187 +            dim.setSize(w-3, h-3);
  80.188 +        }
  80.189 +    }
  80.190 +
  80.191 +    public static class Scale2x2 extends Transform {
  80.192 +        public static final Scale2x2 instance = new Scale2x2();
  80.193 +
  80.194 +        private Scale2x2() {}
  80.195 +
  80.196 +        public String getShortName() {
  80.197 +            return "scale2x2";
  80.198 +        }
  80.199 +
  80.200 +        public String getDescription() {
  80.201 +            return "Scale 2x by 2x";
  80.202 +        }
  80.203 +
  80.204 +        public void init(Graphics2D g2d, Context ctx, Dimension dim) {
  80.205 +            int w = dim.width;
  80.206 +            int h = dim.height;
  80.207 +            AffineTransform at = new AffineTransform();
  80.208 +            at.scale(2.0, 2.0);
  80.209 +            g2d.transform(at);
  80.210 +            dim.setSize(w/2, h/2);
  80.211 +            ctx.pixscale = 4;
  80.212 +        }
  80.213 +    }
  80.214 +
  80.215 +    public static class Rotate15 extends Transform {
  80.216 +        public static final Rotate15 instance = new Rotate15();
  80.217 +
  80.218 +        private Rotate15() {}
  80.219 +
  80.220 +        public String getShortName() {
  80.221 +            return "rot15";
  80.222 +        }
  80.223 +
  80.224 +        public String getDescription() {
  80.225 +            return "Rotate 15 degrees";
  80.226 +        }
  80.227 +
  80.228 +        public void init(Graphics2D g2d, Context ctx, Dimension dim) {
  80.229 +            int w = dim.width;
  80.230 +            int h = dim.height;
  80.231 +            double theta = Math.toRadians(15);
  80.232 +            double cos = Math.cos(theta);
  80.233 +            double sin = Math.sin(theta);
  80.234 +            double xsize = sin * h + cos * w;
  80.235 +            double ysize = sin * w + cos * h;
  80.236 +            double scale = Math.min(w / xsize, h / ysize);
  80.237 +            xsize *= scale;
  80.238 +            ysize *= scale;
  80.239 +            AffineTransform at = new AffineTransform();
  80.240 +            at.translate((w - xsize) / 2.0, (h - ysize) / 2.0);
  80.241 +            at.translate(sin * h * scale, 0.0);
  80.242 +            at.rotate(theta);
  80.243 +            g2d.transform(at);
  80.244 +            dim.setSize(scaleForTransform(at, dim));
  80.245 +        }
  80.246 +    }
  80.247 +
  80.248 +    public static class ShearX extends Transform {
  80.249 +        public static final ShearX instance = new ShearX();
  80.250 +
  80.251 +        private ShearX() {}
  80.252 +
  80.253 +        public String getShortName() {
  80.254 +            return "shearx";
  80.255 +        }
  80.256 +
  80.257 +        public String getDescription() {
  80.258 +            return "Shear X to the right";
  80.259 +        }
  80.260 +
  80.261 +        public void init(Graphics2D g2d, Context ctx, Dimension dim) {
  80.262 +            int w = dim.width;
  80.263 +            int h = dim.height;
  80.264 +            AffineTransform at = new AffineTransform();
  80.265 +            at.translate(0.0, (h - (w*h)/(w + h*0.1)) / 2);
  80.266 +            at.shear(0.1, 0.0);
  80.267 +            g2d.transform(at);
  80.268 +            dim.setSize(scaleForTransform(at, dim));
  80.269 +        }
  80.270 +    }
  80.271 +
  80.272 +    public static class ShearY extends Transform {
  80.273 +        public static final ShearY instance = new ShearY();
  80.274 +
  80.275 +        private ShearY() {}
  80.276 +
  80.277 +        public String getShortName() {
  80.278 +            return "sheary";
  80.279 +        }
  80.280 +
  80.281 +        public String getDescription() {
  80.282 +            return "Shear Y down";
  80.283 +        }
  80.284 +
  80.285 +        public void init(Graphics2D g2d, Context ctx, Dimension dim) {
  80.286 +            int w = dim.width;
  80.287 +            int h = dim.height;
  80.288 +            AffineTransform at = new AffineTransform();
  80.289 +            at.translate((w - (w*h)/(h + w*0.1)) / 2, 0.0);
  80.290 +            at.shear(0.0, 0.1);
  80.291 +            g2d.transform(at);
  80.292 +            dim.setSize(scaleForTransform(at, dim));
  80.293 +        }
  80.294 +    }
  80.295  }
    81.1 --- a/src/share/demo/java2d/J2DBench/src/j2dbench/tests/text/TextTests.java	Tue Nov 30 09:57:47 2010 -0800
    81.2 +++ b/src/share/demo/java2d/J2DBench/src/j2dbench/tests/text/TextTests.java	Wed Dec 08 00:35:33 2010 -0800
    81.3 @@ -454,7 +454,7 @@
    81.4                                              taaNames, taaHints,
    81.5                                              taaNames, taaNames,
    81.6                                              0x1);
    81.7 -            ((Option.ObjectList) taaList).setNumRows(2);
    81.8 +            ((Option.ObjectList) taaList).setNumRows(6);
    81.9              // add special TextAAOpt for backwards compatibility with
   81.10              // older options files
   81.11              new TextAAOpt();
   81.12 @@ -707,3 +707,4 @@
   81.13          }
   81.14      }
   81.15  }
   81.16 +
    82.1 --- a/src/share/lib/security/sunpkcs11-solaris.cfg	Tue Nov 30 09:57:47 2010 -0800
    82.2 +++ b/src/share/lib/security/sunpkcs11-solaris.cfg	Wed Dec 08 00:35:33 2010 -0800
    82.3 @@ -31,5 +31,9 @@
    82.4    CKM_SHA256_RSA_PKCS
    82.5    CKM_SHA384_RSA_PKCS
    82.6    CKM_SHA512_RSA_PKCS
    82.7 +# the following mechanisms are disabled to ensure backward compatibility (Solaris bug 6545046)
    82.8 +  CKM_DES_CBC_PAD
    82.9 +  CKM_DES3_CBC_PAD
   82.10 +  CKM_AES_CBC_PAD
   82.11  }
   82.12  
    83.1 --- a/src/share/native/java/util/zip/Deflater.c	Tue Nov 30 09:57:47 2010 -0800
    83.2 +++ b/src/share/native/java/util/zip/Deflater.c	Wed Dec 08 00:35:33 2010 -0800
    83.3 @@ -132,14 +132,17 @@
    83.4  
    83.5          in_buf = (jbyte *) malloc(this_len);
    83.6          if (in_buf == 0) {
    83.7 -            JNU_ThrowOutOfMemoryError(env, 0);
    83.8 +            // Throw OOME only when length is not zero
    83.9 +            if (this_len != 0)
   83.10 +                JNU_ThrowOutOfMemoryError(env, 0);
   83.11              return 0;
   83.12          }
   83.13          (*env)->GetByteArrayRegion(env, this_buf, this_off, this_len, in_buf);
   83.14          out_buf = (jbyte *) malloc(len);
   83.15          if (out_buf == 0) {
   83.16              free(in_buf);
   83.17 -            JNU_ThrowOutOfMemoryError(env, 0);
   83.18 +            if (len != 0)
   83.19 +                JNU_ThrowOutOfMemoryError(env, 0);
   83.20              return 0;
   83.21          }
   83.22  
   83.23 @@ -173,7 +176,8 @@
   83.24          jboolean finish = (*env)->GetBooleanField(env, this, finishID);
   83.25          in_buf = (jbyte *) malloc(this_len);
   83.26          if (in_buf == 0) {
   83.27 -            JNU_ThrowOutOfMemoryError(env, 0);
   83.28 +            if (this_len != 0)
   83.29 +                JNU_ThrowOutOfMemoryError(env, 0);
   83.30              return 0;
   83.31          }
   83.32          (*env)->GetByteArrayRegion(env, this_buf, this_off, this_len, in_buf);
   83.33 @@ -181,7 +185,8 @@
   83.34          out_buf = (jbyte *) malloc(len);
   83.35          if (out_buf == 0) {
   83.36              free(in_buf);
   83.37 -            JNU_ThrowOutOfMemoryError(env, 0);
   83.38 +            if (len != 0)
   83.39 +                JNU_ThrowOutOfMemoryError(env, 0);
   83.40              return 0;
   83.41          }
   83.42  
    84.1 --- a/src/share/native/java/util/zip/Inflater.c	Tue Nov 30 09:57:47 2010 -0800
    84.2 +++ b/src/share/native/java/util/zip/Inflater.c	Wed Dec 08 00:35:33 2010 -0800
    84.3 @@ -135,7 +135,8 @@
    84.4  
    84.5      in_buf = (jbyte *) malloc(in_len);
    84.6      if (in_buf == 0) {
    84.7 -        JNU_ThrowOutOfMemoryError(env, 0);
    84.8 +        if (in_len != 0)
    84.9 +            JNU_ThrowOutOfMemoryError(env, 0);
   84.10          return 0;
   84.11      }
   84.12      (*env)->GetByteArrayRegion(env, this_buf, this_off, in_len, in_buf);
   84.13 @@ -143,7 +144,8 @@
   84.14      out_buf = (jbyte *) malloc(len);
   84.15      if (out_buf == 0) {
   84.16          free(in_buf);
   84.17 -        JNU_ThrowOutOfMemoryError(env, 0);
   84.18 +        if (len != 0)
   84.19 +            JNU_ThrowOutOfMemoryError(env, 0);
   84.20          return 0;
   84.21      }
   84.22  
    85.1 --- a/src/share/native/java/util/zip/zip_util.c	Tue Nov 30 09:57:47 2010 -0800
    85.2 +++ b/src/share/native/java/util/zip/zip_util.c	Wed Dec 08 00:35:33 2010 -0800
    85.3 @@ -314,7 +314,7 @@
    85.4          if (pos < 0) {
    85.5              /* Pretend there are some NUL bytes before start of file */
    85.6              off = -pos;
    85.7 -            memset(buf, '\0', off);
    85.8 +            memset(buf, '\0', (size_t)off);
    85.9          }
   85.10  
   85.11          if (readFullyAt(zfd, buf + off, sizeof(buf) - off,
   85.12 @@ -426,7 +426,7 @@
   85.13  isMetaName(const char *name, int length)
   85.14  {
   85.15      const char *s;
   85.16 -    if (length < sizeof("META-INF/") - 1)
   85.17 +    if (length < (int)sizeof("META-INF/") - 1)
   85.18          return 0;
   85.19      for (s = "META-INF/"; *s != '\0'; s++) {
   85.20          char c = *name++;
   85.21 @@ -912,7 +912,7 @@
   85.22      ZFILE zfd = zip->zfd;
   85.23      char *cen;
   85.24      if (bufsize > zip->len - cenpos)
   85.25 -        bufsize = zip->len - cenpos;
   85.26 +        bufsize = (jint)(zip->len - cenpos);
   85.27      if ((cen = malloc(bufsize)) == NULL)       goto Catch;
   85.28      if (readFullyAt(zfd, cen, bufsize, cenpos) == -1)     goto Catch;
   85.29      censize = CENSIZE(cen);
   85.30 @@ -1256,6 +1256,9 @@
   85.31   * file had been previously locked with ZIP_Lock(). Returns the
   85.32   * number of bytes read, or -1 if an error occurred. If zip->msg != 0
   85.33   * then a zip error occurred and zip->msg contains the error text.
   85.34 + *
   85.35 + * The current implementation does not support reading an entry that
   85.36 + * has the size bigger than 2**32 bytes in ONE invocation.
   85.37   */
   85.38  jint
   85.39  ZIP_Read(jzfile *zip, jzentry *entry, jlong pos, void *buf, jint len)
   85.40 @@ -1276,7 +1279,7 @@
   85.41      if (len <= 0)
   85.42          return 0;
   85.43      if (len > entry_size - pos)
   85.44 -        len = entry_size - pos;
   85.45 +        len = (jint)(entry_size - pos);
   85.46  
   85.47      /* Get file offset to start reading data */
   85.48      start = ZIP_GetEntryDataOffset(zip, entry);
   85.49 @@ -1306,6 +1309,9 @@
   85.50   * from ZIP/JAR files specified in the class path. It is defined here
   85.51   * so that it can be dynamically loaded by the runtime if the zip library
   85.52   * is found.
   85.53 + *
   85.54 + * The current implementation does not support reading an entry that
   85.55 + * has the size bigger than 2**32 bytes in ONE invocation.
   85.56   */
   85.57  jboolean
   85.58  InflateFully(jzfile *zip, jzentry *entry, void *buf, char **msg)
   85.59 @@ -1314,7 +1320,6 @@
   85.60      char tmp[BUF_SIZE];
   85.61      jlong pos = 0;
   85.62      jlong count = entry->csize;
   85.63 -    jboolean status;
   85.64  
   85.65      *msg = 0; /* Reset error message */
   85.66  
   85.67 @@ -1330,10 +1335,10 @@
   85.68      }
   85.69  
   85.70      strm.next_out = buf;
   85.71 -    strm.avail_out = entry->size;
   85.72 +    strm.avail_out = (uInt)entry->size;
   85.73  
   85.74      while (count > 0) {
   85.75 -        jint n = count > (jlong)sizeof(tmp) ? (jint)sizeof(tmp) : count;
   85.76 +        jint n = count > (jlong)sizeof(tmp) ? (jint)sizeof(tmp) : (jint)count;
   85.77          ZIP_Lock(zip);
   85.78          n = ZIP_Read(zip, entry, pos, tmp, n);
   85.79          ZIP_Unlock(zip);
   85.80 @@ -1368,12 +1373,16 @@
   85.81      return JNI_TRUE;
   85.82  }
   85.83  
   85.84 +/*
   85.85 + * The current implementation does not support reading an entry that
   85.86 + * has the size bigger than 2**32 bytes in ONE invocation.
   85.87 + */
   85.88  jzentry * JNICALL
   85.89  ZIP_FindEntry(jzfile *zip, char *name, jint *sizeP, jint *nameLenP)
   85.90  {
   85.91      jzentry *entry = ZIP_GetEntry(zip, name, 0);
   85.92      if (entry) {
   85.93 -        *sizeP = entry->size;
   85.94 +        *sizeP = (jint)entry->size;
   85.95          *nameLenP = strlen(entry->name);
   85.96      }
   85.97      return entry;
    86.1 --- a/src/share/native/java/util/zip/zlib-1.2.3/compress.c	Tue Nov 30 09:57:47 2010 -0800
    86.2 +++ b/src/share/native/java/util/zip/zlib-1.2.3/compress.c	Wed Dec 08 00:35:33 2010 -0800
    86.3 @@ -75,7 +75,7 @@
    86.4          deflateEnd(&stream);
    86.5          return err == Z_OK ? Z_BUF_ERROR : err;
    86.6      }
    86.7 -    *destLen = stream.total_out;
    86.8 +    *destLen = (uLong)stream.total_out;
    86.9  
   86.10      err = deflateEnd(&stream);
   86.11      return err;
    87.1 --- a/src/share/native/java/util/zip/zlib-1.2.3/uncompr.c	Tue Nov 30 09:57:47 2010 -0800
    87.2 +++ b/src/share/native/java/util/zip/zlib-1.2.3/uncompr.c	Wed Dec 08 00:35:33 2010 -0800
    87.3 @@ -78,7 +78,7 @@
    87.4              return Z_DATA_ERROR;
    87.5          return err;
    87.6      }
    87.7 -    *destLen = stream.total_out;
    87.8 +    *destLen = (uLong)stream.total_out;
    87.9  
   87.10      err = inflateEnd(&stream);
   87.11      return err;
    88.1 --- a/src/solaris/classes/sun/awt/X11/GtkFileDialogPeer.java	Tue Nov 30 09:57:47 2010 -0800
    88.2 +++ b/src/solaris/classes/sun/awt/X11/GtkFileDialogPeer.java	Wed Dec 08 00:35:33 2010 -0800
    88.3 @@ -57,8 +57,11 @@
    88.4  
    88.5      private native void run(String title, int mode, String dir, String file,
    88.6              FilenameFilter filter, boolean isMultipleMode);
    88.7 +    private native void quit();
    88.8  
    88.9 -    private native void quit();
   88.10 +    @Override
   88.11 +    public native void toFront();
   88.12 +
   88.13  
   88.14      /**
   88.15       * Called exclusively by the native C code.
    89.1 --- a/src/solaris/classes/sun/awt/X11/XFramePeer.java	Tue Nov 30 09:57:47 2010 -0800
    89.2 +++ b/src/solaris/classes/sun/awt/X11/XFramePeer.java	Wed Dec 08 00:35:33 2010 -0800
    89.3 @@ -150,6 +150,8 @@
    89.4  
    89.5      void updateChildrenSizes() {
    89.6          super.updateChildrenSizes();
    89.7 +        int height = getMenuBarHeight();
    89.8 +
    89.9          // XWindow.reshape calls XBaseWindow.xSetBounds, which acquires
   89.10          // the AWT lock, so we have to acquire the AWT lock here
   89.11          // before getStateLock() to avoid a deadlock with the Toolkit thread
   89.12 @@ -159,7 +161,7 @@
   89.13              synchronized(getStateLock()) {
   89.14                  int width = dimensions.getClientSize().width;
   89.15                  if (menubarPeer != null) {
   89.16 -                    menubarPeer.reshape(0, 0, width, getMenuBarHeight());
   89.17 +                    menubarPeer.reshape(0, 0, width, height);
   89.18                  }
   89.19              }
   89.20          } finally {
    90.1 --- a/src/solaris/native/java/lang/java_props_md.c	Tue Nov 30 09:57:47 2010 -0800
    90.2 +++ b/src/solaris/native/java/lang/java_props_md.c	Wed Dec 08 00:35:33 2010 -0800
    90.3 @@ -217,15 +217,18 @@
    90.4      /* Normalize the language name */
    90.5      if (std_language != NULL) {
    90.6          *std_language = "en";
    90.7 -        if (language != NULL) {
    90.8 -            mapLookup(language_names, language, std_language);
    90.9 +        if (language != NULL && mapLookup(language_names, language, std_language) == 0) {
   90.10 +            *std_language = malloc(strlen(language)+1);
   90.11 +            strcpy(*std_language, language);
   90.12          }
   90.13      }
   90.14  
   90.15      /* Normalize the country name */
   90.16      if (std_country != NULL && country != NULL) {
   90.17 -        *std_country = country;
   90.18 -        mapLookup(country_names, country, std_country);
   90.19 +        if (mapLookup(country_names, country, std_country) == 0) {
   90.20 +            *std_country = malloc(strlen(country)+1);
   90.21 +            strcpy(*std_country, country);
   90.22 +        }
   90.23      }
   90.24  
   90.25      /* Normalize the script and variant name.  Note that we only use
    91.1 --- a/src/solaris/native/java/lang/locale_str.h	Tue Nov 30 09:57:47 2010 -0800
    91.2 +++ b/src/solaris/native/java/lang/locale_str.h	Wed Dec 08 00:35:33 2010 -0800
    91.3 @@ -87,7 +87,7 @@
    91.4      "zh", "zh_CN",
    91.5  #ifdef __linux__
    91.6      "bokmal", "nb_NO",
    91.7 -    "bokm\u00e5l", "nb_NO",
    91.8 +    "bokm\xE5l", "nb_NO",
    91.9      "catalan", "ca_ES",
   91.10      "croatian", "hr_HR",
   91.11      "czech", "cs_CZ",
   91.12 @@ -144,203 +144,16 @@
   91.13  static char *language_names[] = {
   91.14      "C", "en",
   91.15      "POSIX", "en",
   91.16 -    "aa", "aa",
   91.17 -    "ab", "ab",
   91.18 -    "ae", "ae",
   91.19 -    "af", "af",
   91.20 -    "ak", "ak",
   91.21 -    "am", "am",
   91.22 -    "an", "an",
   91.23 -    "ar", "ar",
   91.24 -    "as", "as",
   91.25 -    "av", "av",
   91.26 -    "ay", "ay",
   91.27 -    "az", "az",
   91.28 -    "ba", "ba",
   91.29 -    "be", "be",
   91.30 -    "bg", "bg",
   91.31 -    "bh", "bh",
   91.32 -    "bi", "bi",
   91.33 -    "bm", "bm",
   91.34 -    "bn", "bn",
   91.35 -    "bo", "bo",
   91.36 -    "br", "br",
   91.37 -    "bs", "bs",
   91.38 -    "ca", "ca",
   91.39 -    "ce", "ce",
   91.40 -    "ch", "ch",
   91.41 -    "co", "co",
   91.42 -    "cr", "cr",
   91.43 -    "cs", "cs",
   91.44      "cz", "cs",
   91.45 -    "cu", "cu",
   91.46 -    "cv", "cv",
   91.47 -    "cy", "cy",
   91.48 -    "da", "da",
   91.49 -    "de", "de",
   91.50 -    "dv", "dv",
   91.51 -    "dz", "dz",
   91.52 -    "ee", "ee",
   91.53 -    "el", "el",
   91.54 -    "en", "en",
   91.55 -    "eo", "eo",
   91.56 -    "es", "es",
   91.57 -    "et", "et",
   91.58 -    "eu", "eu",
   91.59 -    "fa", "fa",
   91.60 -    "ff", "ff",
   91.61 -    "fi", "fi",
   91.62 -    "fj", "fj",
   91.63 -    "fo", "fo",
   91.64 -    "fr", "fr",
   91.65 -    "fy", "fy",
   91.66 -    "ga", "ga",
   91.67 -    "gd", "gd",
   91.68 -    "gl", "gl",
   91.69 -    "gn", "gn",
   91.70 -    "gu", "gu",
   91.71 -    "gv", "gv",
   91.72 -    "ha", "ha",
   91.73      "he", "iw",
   91.74 -    "hi", "hi",
   91.75 -    "ho", "ho",
   91.76 -    "hr", "hr",
   91.77  #ifdef __linux__
   91.78      "hs", "en", // used on Linux, not clear what it stands for
   91.79  #endif
   91.80 -    "ht", "ht",
   91.81 -    "hu", "hu",
   91.82 -    "hy", "hy",
   91.83 -    "hz", "hz",
   91.84 -    "ia", "ia",
   91.85      "id", "in",
   91.86 -    "ie", "ie",
   91.87 -    "ig", "ig",
   91.88 -    "ii", "ii",
   91.89 -    "ik", "ik",
   91.90 -    "in", "in",
   91.91 -    "io", "io",
   91.92 -    "is", "is",
   91.93 -    "it", "it",
   91.94 -    "iu", "iu",
   91.95 -    "iw", "iw",
   91.96 -    "ja", "ja",
   91.97 -    "ji", "yi",
   91.98 -    "jv", "jv",
   91.99 -    "ka", "ka",
  91.100 -    "kg", "kg",
  91.101 -    "ki", "ki",
  91.102 -    "kj", "kj",
  91.103 -    "kk", "kk",
  91.104 -    "kl", "kl",
  91.105 -    "km", "km",
  91.106 -    "kn", "kn",
  91.107 -    "ko", "ko",
  91.108 -    "kr", "kr",
  91.109 -    "ks", "ks",
  91.110 -    "ku", "ku",
  91.111 -    "kv", "kv",
  91.112 -    "kw", "kw",
  91.113 -    "ky", "ky",
  91.114 -    "la", "la",
  91.115 -    "lb", "lb",
  91.116 -    "lg", "lg",
  91.117 -    "li", "li",
  91.118 -    "ln", "ln",
  91.119 -    "lo", "lo",
  91.120 -    "lt", "lt",
  91.121 -    "lu", "lu",
  91.122 -    "lv", "lv",
  91.123 -    "mg", "mg",
  91.124 -    "mh", "mh",
  91.125 -    "mi", "mi",
  91.126 -    "mk", "mk",
  91.127 -    "ml", "ml",
  91.128 -    "mn", "mn",
  91.129 -    "mo", "mo",
  91.130 -    "mr", "mr",
  91.131 -    "ms", "ms",
  91.132 -    "mt", "mt",
  91.133 -    "my", "my",
  91.134 -    "na", "na",
  91.135 -    "nb", "nb",
  91.136 -    "nd", "nd",
  91.137 -    "ne", "ne",
  91.138 -    "ng", "ng",
  91.139 -    "nl", "nl",
  91.140 -    "nn", "nn",
  91.141 -    "no", "no",
  91.142 -    "nr", "nr",
  91.143 -    "nv", "nv",
  91.144 -    "ny", "ny",
  91.145 -    "oc", "oc",
  91.146 -    "oj", "oj",
  91.147 -    "om", "om",
  91.148 -    "or", "or",
  91.149 -    "os", "os",
  91.150 -    "pa", "pa",
  91.151 -    "pi", "pi",
  91.152 -    "pl", "pl",
  91.153 -    "ps", "ps",
  91.154 -    "pt", "pt",
  91.155 -    "qu", "qu",
  91.156 -    "rm", "rm",
  91.157 -    "rn", "rn",
  91.158 -    "ro", "ro",
  91.159 -    "ru", "ru",
  91.160 -    "rw", "rw",
  91.161 -    "sa", "sa",
  91.162 -    "sc", "sc",
  91.163 -    "sd", "sd",
  91.164 -    "se", "se",
  91.165 -    "sg", "sg",
  91.166      "sh", "sr", // sh is deprecated
  91.167 -    "si", "si",
  91.168 -    "sk", "sk",
  91.169 -    "sl", "sl",
  91.170 -    "sm", "sm",
  91.171 -    "sn", "sn",
  91.172 -    "so", "so",
  91.173 -    "sq", "sq",
  91.174 -    "sr", "sr",
  91.175 -    "ss", "ss",
  91.176 -    "st", "st",
  91.177      "su", "fi",
  91.178 -    "sv", "sv",
  91.179 -    "sw", "sw",
  91.180 -    "ta", "ta",
  91.181 -    "te", "te",
  91.182 -    "tg", "tg",
  91.183 -    "th", "th",
  91.184 -    "ti", "ti",
  91.185 -    "tk", "tk",
  91.186 -    "tl", "tl",
  91.187 -    "tn", "tn",
  91.188 -    "to", "to",
  91.189 -    "tr", "tr",
  91.190 -    "ts", "ts",
  91.191 -    "tt", "tt",
  91.192 -    "tw", "tw",
  91.193 -    "ty", "ty",
  91.194  #ifdef __linux__
  91.195      "ua", "en", // used on Linux, not clear what it stands for
  91.196 -#endif
  91.197 -    "ug", "ug",
  91.198 -    "uk", "uk",
  91.199 -    "ur", "ur",
  91.200 -    "uz", "uz",
  91.201 -    "ve", "ve",
  91.202 -    "vi", "vi",
  91.203 -    "vo", "vo",
  91.204 -    "wa", "wa",
  91.205 -    "wo", "wo",
  91.206 -    "xh", "xh",
  91.207 -    "yi", "yi",
  91.208 -    "yo", "yo",
  91.209 -    "za", "za",
  91.210 -    "zh", "zh",
  91.211 -    "zu", "zu",
  91.212 -#ifdef __linux__
  91.213      "catalan", "ca",
  91.214      "croatian", "hr",
  91.215      "czech", "cs",
  91.216 @@ -375,493 +188,6 @@
  91.217      "japanese", "ja",
  91.218      "korean", "ko",
  91.219  #endif
  91.220 -
  91.221 -    /* ISO 639.2 codes */
  91.222 -    "aar", "aar",
  91.223 -    "abk", "abk",
  91.224 -    "ace", "ace",
  91.225 -    "ach", "ach",
  91.226 -    "ada", "ada",
  91.227 -    "ady", "ady",
  91.228 -    "afa", "afa",
  91.229 -    "afh", "afh",
  91.230 -    "afr", "afr",
  91.231 -    "ain", "ain",
  91.232 -    "aka", "aka",
  91.233 -    "akk", "akk",
  91.234 -    "alb", "alb",
  91.235 -    "ale", "ale",
  91.236 -    "alg", "alg",
  91.237 -    "alt", "alt",
  91.238 -    "amh", "amh",
  91.239 -    "ang", "ang",
  91.240 -    "anp", "anp",
  91.241 -    "apa", "apa",
  91.242 -    "ara", "ara",
  91.243 -    "arc", "arc",
  91.244 -    "arg", "arg",
  91.245 -    "arm", "arm",
  91.246 -    "arn", "arn",
  91.247 -    "arp", "arp",
  91.248 -    "art", "art",
  91.249 -    "arw", "arw",
  91.250 -    "asm", "asm",
  91.251 -    "ast", "ast",
  91.252 -    "ath", "ath",
  91.253 -    "aus", "aus",
  91.254 -    "ava", "ava",
  91.255 -    "ave", "ave",
  91.256 -    "awa", "awa",
  91.257 -    "aym", "aym",
  91.258 -    "aze", "aze",
  91.259 -    "bad", "bad",
  91.260 -    "bai", "bai",
  91.261 -    "bak", "bak",
  91.262 -    "bal", "bal",
  91.263 -    "bam", "bam",
  91.264 -    "ban", "ban",
  91.265 -    "baq", "baq",
  91.266 -    "bas", "bas",
  91.267 -    "bat", "bat",
  91.268 -    "bej", "bej",
  91.269 -    "bel", "bel",
  91.270 -    "bem", "bem",
  91.271 -    "ben", "ben",
  91.272 -    "ber", "ber",
  91.273 -    "bho", "bho",
  91.274 -    "bih", "bih",
  91.275 -    "bik", "bik",
  91.276 -    "bin", "bin",
  91.277 -    "bis", "bis",
  91.278 -    "bla", "bla",
  91.279 -    "bnt", "bnt",
  91.280 -    "bos", "bos",
  91.281 -    "bra", "bra",
  91.282 -    "bre", "bre",
  91.283 -    "btk", "btk",
  91.284 -    "bua", "bua",
  91.285 -    "bug", "bug",
  91.286 -    "bul", "bul",
  91.287 -    "bur", "bur",
  91.288 -    "byn", "byn",
  91.289 -    "cad", "cad",
  91.290 -    "cai", "cai",
  91.291 -    "car", "car",
  91.292 -    "cat", "cat",
  91.293 -    "cau", "cau",
  91.294 -    "ceb", "ceb",
  91.295 -    "cel", "cel",
  91.296 -    "cha", "cha",
  91.297 -    "chb", "chb",
  91.298 -    "che", "che",
  91.299 -    "chg", "chg",
  91.300 -    "chi", "chi",
  91.301 -    "chk", "chk",
  91.302 -    "chm", "chm",
  91.303 -    "chn", "chn",
  91.304 -    "cho", "cho",
  91.305 -    "chp", "chp",
  91.306 -    "chr", "chr",
  91.307 -    "chu", "chu",
  91.308 -    "chv", "chv",
  91.309 -    "chy", "chy",
  91.310 -    "cmc", "cmc",
  91.311 -    "cop", "cop",
  91.312 -    "cor", "cor",
  91.313 -    "cos", "cos",
  91.314 -    "cpe", "cpe",
  91.315 -    "cpf", "cpf",
  91.316 -    "cpp", "cpp",
  91.317 -    "cre", "cre",
  91.318 -    "crh", "crh",
  91.319 -    "crp", "crp",
  91.320 -    "csb", "csb",
  91.321 -    "cus", "cus",
  91.322 -    "cze", "cze",
  91.323 -    "dak", "dak",
  91.324 -    "dan", "dan",
  91.325 -    "dar", "dar",
  91.326 -    "day", "day",
  91.327 -    "del", "del",
  91.328 -    "den", "den",
  91.329 -    "dgr", "dgr",
  91.330 -    "din", "din",
  91.331 -    "div", "div",
  91.332 -    "doi", "doi",
  91.333 -    "dra", "dra",
  91.334 -    "dsb", "dsb",
  91.335 -    "dua", "dua",
  91.336 -    "dum", "dum",
  91.337 -    "dut", "dut",
  91.338 -    "dyu", "dyu",
  91.339 -    "dzo", "dzo",
  91.340 -    "efi", "efi",
  91.341 -    "egy", "egy",
  91.342 -    "eka", "eka",
  91.343 -    "elx", "elx",
  91.344 -    "eng", "eng",
  91.345 -    "enm", "enm",
  91.346 -    "epo", "epo",
  91.347 -    "est", "est",
  91.348 -    "ewe", "ewe",
  91.349 -    "ewo", "ewo",
  91.350 -    "fan", "fan",
  91.351 -    "fao", "fao",
  91.352 -    "fat", "fat",
  91.353 -    "fij", "fij",
  91.354 -    "fil", "fil",
  91.355 -    "fin", "fin",
  91.356 -    "fiu", "fiu",
  91.357 -    "fon", "fon",
  91.358 -    "fre", "fre",
  91.359 -    "frm", "frm",
  91.360 -    "fro", "fro",
  91.361 -    "frr", "frr",
  91.362 -    "frs", "frs",
  91.363 -    "fry", "fry",
  91.364 -    "ful", "ful",
  91.365 -    "fur", "fur",
  91.366 -    "gaa", "gaa",
  91.367 -    "gay", "gay",
  91.368 -    "gba", "gba",
  91.369 -    "gem", "gem",
  91.370 -    "geo", "geo",
  91.371 -    "ger", "ger",
  91.372 -    "gez", "gez",
  91.373 -    "gil", "gil",
  91.374 -    "gla", "gla",
  91.375 -    "gle", "gle",
  91.376 -    "glg", "glg",
  91.377 -    "glv", "glv",
  91.378 -    "gmh", "gmh",
  91.379 -    "goh", "goh",
  91.380 -    "gon", "gon",
  91.381 -    "gor", "gor",
  91.382 -    "got", "got",
  91.383 -    "grb", "grb",
  91.384 -    "grc", "grc",
  91.385 -    "gre", "gre",
  91.386 -    "grn", "grn",
  91.387 -    "gsw", "gsw",
  91.388 -    "guj", "guj",
  91.389 -    "gwi", "gwi",
  91.390 -    "hai", "hai",
  91.391 -    "hat", "hat",
  91.392 -    "hau", "hau",
  91.393 -    "haw", "haw",
  91.394 -    "heb", "heb",
  91.395 -    "her", "her",
  91.396 -    "hil", "hil",
  91.397 -    "him", "him",
  91.398 -    "hin", "hin",
  91.399 -    "hit", "hit",
  91.400 -    "hmn", "hmn",
  91.401 -    "hmo", "hmo",
  91.402 -    "hrv", "hrv",
  91.403 -    "hsb", "hsb",
  91.404 -    "hun", "hun",
  91.405 -    "hup", "hup",
  91.406 -    "iba", "iba",
  91.407 -    "ibo", "ibo",
  91.408 -    "ice", "ice",
  91.409 -    "ido", "ido",
  91.410 -    "iii", "iii",
  91.411 -    "ijo", "ijo",
  91.412 -    "iku", "iku",
  91.413 -    "ile", "ile",
  91.414 -    "ilo", "ilo",
  91.415 -    "ina", "ina",
  91.416 -    "inc", "inc",
  91.417 -    "ind", "ind",
  91.418 -    "ine", "ine",
  91.419 -    "inh", "inh",
  91.420 -    "ipk", "ipk",
  91.421 -    "ira", "ira",
  91.422 -    "iro", "iro",
  91.423 -    "ita", "ita",
  91.424 -    "jav", "jav",
  91.425 -    "jbo", "jbo",
  91.426 -    "jpn", "jpn",
  91.427 -    "jpr", "jpr",
  91.428 -    "jrb", "jrb",
  91.429 -    "kaa", "kaa",
  91.430 -    "kab", "kab",
  91.431 -    "kac", "kac",
  91.432 -    "kal", "kal",
  91.433 -    "kam", "kam",
  91.434 -    "kan", "kan",
  91.435 -    "kar", "kar",
  91.436 -    "kas", "kas",
  91.437 -    "kau", "kau",
  91.438 -    "kaw", "kaw",
  91.439 -    "kaz", "kaz",
  91.440 -    "kbd", "kbd",
  91.441 -    "kha", "kha",
  91.442 -    "khi", "khi",
  91.443 -    "khm", "khm",
  91.444 -    "kho", "kho",
  91.445 -    "kik", "kik",
  91.446 -    "kin", "kin",
  91.447 -    "kir", "kir",
  91.448 -    "kmb", "kmb",
  91.449 -    "kok", "kok",
  91.450 -    "kom", "kom",
  91.451 -    "kon", "kon",
  91.452 -    "kor", "kor",
  91.453 -    "kos", "kos",
  91.454 -    "kpe", "kpe",
  91.455 -    "krc", "krc",
  91.456 -    "krl", "krl",
  91.457 -    "kro", "kro",
  91.458 -    "kru", "kru",
  91.459 -    "kua", "kua",
  91.460 -    "kum", "kum",
  91.461 -    "kur", "kur",
  91.462 -    "kut", "kut",
  91.463 -    "lad", "lad",
  91.464 -    "lah", "lah",
  91.465 -    "lam", "lam",
  91.466 -    "lao", "lao",
  91.467 -    "lat", "lat",
  91.468 -    "lav", "lav",
  91.469 -    "lez", "lez",
  91.470 -    "lim", "lim",
  91.471 -    "lin", "lin",
  91.472 -    "lit", "lit",
  91.473 -    "lol", "lol",
  91.474 -    "loz", "loz",
  91.475 -    "ltz", "ltz",
  91.476 -    "lua", "lua",
  91.477 -    "lub", "lub",
  91.478 -    "lug", "lug",
  91.479 -    "lui", "lui",
  91.480 -    "lun", "lun",
  91.481 -    "luo", "luo",
  91.482 -    "lus", "lus",
  91.483 -    "mac", "mac",
  91.484 -    "mad", "mad",
  91.485 -    "mag", "mag",
  91.486 -    "mah", "mah",
  91.487 -    "mai", "mai",
  91.488 -    "mak", "mak",
  91.489 -    "mal", "mal",
  91.490 -    "man", "man",
  91.491 -    "mao", "mao",
  91.492 -    "map", "map",
  91.493 -    "mar", "mar",
  91.494 -    "mas", "mas",
  91.495 -    "may", "may",
  91.496 -    "mdf", "mdf",
  91.497 -    "mdr", "mdr",
  91.498 -    "men", "men",
  91.499 -    "mga", "mga",
  91.500 -    "mic", "mic",
  91.501 -    "min", "min",
  91.502 -    "mis", "mis",
  91.503 -    "mkh", "mkh",
  91.504 -    "mlg", "mlg",
  91.505 -    "mlt", "mlt",
  91.506 -    "mnc", "mnc",
  91.507 -    "mni", "mni",
  91.508 -    "mno", "mno",
  91.509 -    "moh", "moh",
  91.510 -    "mon", "mon",
  91.511 -    "mos", "mos",
  91.512 -    "mul", "mul",
  91.513 -    "mun", "mun",
  91.514 -    "mus", "mus",
  91.515 -    "mwl", "mwl",
  91.516 -    "mwr", "mwr",
  91.517 -    "myn", "myn",
  91.518 -    "myv", "myv",
  91.519 -    "nah", "nah",
  91.520 -    "nai", "nai",
  91.521 -    "nap", "nap",
  91.522 -    "nau", "nau",
  91.523 -    "nav", "nav",
  91.524 -    "nbl", "nbl",
  91.525 -    "nde", "nde",
  91.526 -    "ndo", "ndo",
  91.527 -    "nds", "nds",
  91.528 -    "nep", "nep",
  91.529 -    "new", "new",
  91.530 -    "nia", "nia",
  91.531 -    "nic", "nic",
  91.532 -    "niu", "niu",
  91.533 -    "nno", "nno",
  91.534 -    "nob", "nob",
  91.535 -    "nog", "nog",
  91.536 -    "non", "non",
  91.537 -    "nor", "nor",
  91.538 -    "nqo", "nqo",
  91.539 -    "nso", "nso",
  91.540 -    "nub", "nub",
  91.541 -    "nwc", "nwc",
  91.542 -    "nya", "nya",
  91.543 -    "nym", "nym",
  91.544 -    "nyn", "nyn",
  91.545 -    "nyo", "nyo",
  91.546 -    "nzi", "nzi",
  91.547 -    "oci", "oci",
  91.548 -    "oji", "oji",
  91.549 -    "ori", "ori",
  91.550 -    "orm", "orm",
  91.551 -    "osa", "osa",
  91.552 -    "oss", "oss",
  91.553 -    "ota", "ota",
  91.554 -    "oto", "oto",
  91.555 -    "paa", "paa",
  91.556 -    "pag", "pag",
  91.557 -    "pal", "pal",
  91.558 -    "pam", "pam",
  91.559 -    "pan", "pan",
  91.560 -    "pap", "pap",
  91.561 -    "pau", "pau",
  91.562 -    "peo", "peo",
  91.563 -    "per", "per",
  91.564 -    "phi", "phi",
  91.565 -    "phn", "phn",
  91.566 -    "pli", "pli",
  91.567 -    "pol", "pol",
  91.568 -    "pon", "pon",
  91.569 -    "por", "por",
  91.570 -    "pra", "pra",
  91.571 -    "pro", "pro",
  91.572 -    "pus", "pus",
  91.573 -    "que", "que",
  91.574 -    "raj", "raj",
  91.575 -    "rap", "rap",
  91.576 -    "rar", "rar",
  91.577 -    "roa", "roa",
  91.578 -    "roh", "roh",
  91.579 -    "rom", "rom",
  91.580 -    "rum", "rum",
  91.581 -    "run", "run",
  91.582 -    "rup", "rup",
  91.583 -    "rus", "rus",
  91.584 -    "sad", "sad",
  91.585 -    "sag", "sag",
  91.586 -    "sah", "sah",
  91.587 -    "sai", "sai",
  91.588 -    "sal", "sal",
  91.589 -    "sam", "sam",
  91.590 -    "san", "san",
  91.591 -    "sas", "sas",
  91.592 -    "sat", "sat",
  91.593 -    "scn", "scn",
  91.594 -    "sco", "sco",
  91.595 -    "sel", "sel",
  91.596 -    "sem", "sem",
  91.597 -    "sga", "sga",
  91.598 -    "sgn", "sgn",
  91.599 -    "shn", "shn",
  91.600 -    "sid", "sid",
  91.601 -    "sin", "sin",
  91.602 -    "sio", "sio",
  91.603 -    "sit", "sit",
  91.604 -    "sla", "sla",
  91.605 -    "slo", "slo",
  91.606 -    "slv", "slv",
  91.607 -    "sma", "sma",
  91.608 -    "sme", "sme",
  91.609 -    "smi", "smi",
  91.610 -    "smj", "smj",
  91.611 -    "smn", "smn",
  91.612 -    "smo", "smo",
  91.613 -    "sms", "sms",
  91.614 -    "sna", "sna",
  91.615 -    "snd", "snd",
  91.616 -    "snk", "snk",
  91.617 -    "sog", "sog",
  91.618 -    "som", "som",
  91.619 -    "son", "son",
  91.620 -    "sot", "sot",
  91.621 -    "spa", "spa",
  91.622 -    "srd", "srd",
  91.623 -    "srn", "srn",
  91.624 -    "srp", "srp",
  91.625 -    "srr", "srr",
  91.626 -    "ssa", "ssa",
  91.627 -    "ssw", "ssw",
  91.628 -    "suk", "suk",
  91.629 -    "sun", "sun",
  91.630 -    "sus", "sus",
  91.631 -    "sux", "sux",
  91.632 -    "swa", "swa",
  91.633 -    "swe", "swe",
  91.634 -    "syc", "syc",
  91.635 -    "syr", "syr",
  91.636 -    "tah", "tah",
  91.637 -    "tai", "tai",
  91.638 -    "tam", "tam",
  91.639 -    "tat", "tat",
  91.640 -    "tel", "tel",
  91.641 -    "tem", "tem",
  91.642 -    "ter", "ter",
  91.643 -    "tet", "tet",
  91.644 -    "tgk", "tgk",
  91.645 -    "tgl", "tgl",
  91.646 -    "tha", "tha",
  91.647 -    "tib", "tib",
  91.648 -    "tig", "tig",
  91.649 -    "tir", "tir",
  91.650 -    "tiv", "tiv",
  91.651 -    "tkl", "tkl",
  91.652 -    "tlh", "tlh",
  91.653 -    "tli", "tli",
  91.654 -    "tmh", "tmh",
  91.655 -    "tog", "tog",
  91.656 -    "ton", "ton",
  91.657 -    "tpi", "tpi",
  91.658 -    "tsi", "tsi",
  91.659 -    "tsn", "tsn",
  91.660 -    "tso", "tso",
  91.661 -    "tuk", "tuk",
  91.662 -    "tum", "tum",
  91.663 -    "tup", "tup",
  91.664 -    "tur", "tur",
  91.665 -    "tut", "tut",
  91.666 -    "tvl", "tvl",
  91.667 -    "twi", "twi",
  91.668 -    "tyv", "tyv",
  91.669 -    "udm", "udm",
  91.670 -    "uga", "uga",
  91.671 -    "uig", "uig",
  91.672 -    "ukr", "ukr",
  91.673 -    "umb", "umb",
  91.674 -    "und", "und",
  91.675 -    "urd", "urd",
  91.676 -    "uzb", "uzb",
  91.677 -    "vai", "vai",
  91.678 -    "ven", "ven",
  91.679 -    "vie", "vie",
  91.680 -    "vol", "vol",
  91.681 -    "vot", "vot",
  91.682 -    "wak", "wak",
  91.683 -    "wal", "wal",
  91.684 -    "war", "war",
  91.685 -    "was", "was",
  91.686 -    "wel", "wel",
  91.687 -    "wen", "wen",
  91.688 -    "wln", "wln",
  91.689 -    "wol", "wol",
  91.690 -    "xal", "xal",
  91.691 -    "xho", "xho",
  91.692 -    "yao", "yao",
  91.693 -    "yap", "yap",
  91.694 -    "yid", "yid",
  91.695 -    "yor", "yor",
  91.696 -    "ypk", "ypk",
  91.697 -    "zap", "zap",
  91.698 -    "zbl", "zbl",
  91.699 -    "zen", "zen",
  91.700 -    "zha", "zha",
  91.701 -    "znd", "znd",
  91.702 -    "zul", "zul",
  91.703 -    "zun", "zun",
  91.704 -    "zxx", "zxx",
  91.705 -    "zza", "zza",
  91.706 -
  91.707      "",
  91.708  };
  91.709  
  91.710 @@ -882,253 +208,10 @@
  91.711   * Linux/Solaris country string to ISO3166 string mapping table.
  91.712   */
  91.713  static char *country_names[] = {
  91.714 -    "AD", "AD",
  91.715 -    "AE", "AE",
  91.716 -    "AF", "AF",
  91.717 -    "AG", "AG",
  91.718 -    "AI", "AI",
  91.719 -    "AL", "AL",
  91.720 -    "AM", "AM",
  91.721 -    "AN", "AN",
  91.722 -    "AO", "AO",
  91.723 -    "AQ", "AQ",
  91.724 -    "AR", "AR",
  91.725 -    "AS", "AS",
  91.726 -    "AT", "AT",
  91.727 -    "AU", "AU",
  91.728 -    "AW", "AW",
  91.729 -    "AX", "AX",
  91.730 -    "AZ", "AZ",
  91.731 -    "BA", "BA",
  91.732 -    "BB", "BB",
  91.733 -    "BD", "BD",
  91.734 -    "BE", "BE",
  91.735 -    "BF", "BF",
  91.736 -    "BG", "BG",
  91.737 -    "BH", "BH",
  91.738 -    "BI", "BI",
  91.739 -    "BJ", "BJ",
  91.740 -    "BM", "BM",
  91.741 -    "BN", "BN",
  91.742 -    "BO", "BO",
  91.743 -    "BR", "BR",
  91.744 -    "BS", "BS",
  91.745 -    "BT", "BT",
  91.746 -    "BV", "BV",
  91.747 -    "BW", "BW",
  91.748 -    "BY", "BY",
  91.749 -    "BZ", "BZ",
  91.750 -    "CA", "CA",
  91.751 -    "CC", "CC",
  91.752 -    "CD", "CD",
  91.753 -    "CF", "CF",
  91.754 -    "CG", "CG",
  91.755 -    "CH", "CH",
  91.756 -    "CI", "CI",
  91.757 -    "CK", "CK",
  91.758 -    "CL", "CL",
  91.759 -    "CM", "CM",
  91.760 -    "CN", "CN",
  91.761 -    "CO", "CO",
  91.762 -    "CR", "CR",
  91.763 -    "CS", "CS",
  91.764 -    "CU", "CU",
  91.765 -    "CV", "CV",
  91.766 -    "CX", "CX",
  91.767 -    "CY", "CY",
  91.768 -    "CZ", "CZ",
  91.769 -    "DE", "DE",
  91.770 -    "DJ", "DJ",
  91.771 -    "DK", "DK",
  91.772 -    "DM", "DM",
  91.773 -    "DO", "DO",
  91.774 -    "DZ", "DZ",
  91.775 -    "EC", "EC",
  91.776 -    "EE", "EE",
  91.777 -    "EG", "EG",
  91.778 -    "EH", "EH",
  91.779 -    "ER", "ER",
  91.780 -    "ES", "ES",
  91.781 -    "ET", "ET",
  91.782 -    "FI", "FI",
  91.783 -    "FJ", "FJ",
  91.784 -    "FK", "FK",
  91.785 -    "FM", "FM",
  91.786 -    "FO", "FO",
  91.787 -    "FR", "FR",
  91.788 -    "GA", "GA",
  91.789 -    "GB", "GB",
  91.790 -    "GD", "GD",
  91.791 -    "GE", "GE",
  91.792 -    "GF", "GF",
  91.793 -    "GH", "GH",
  91.794 -    "GI", "GI",
  91.795 -    "GL", "GL",
  91.796 -    "GM", "GM",
  91.797 -    "GN", "GN",
  91.798 -    "GP", "GP",
  91.799 -    "GQ", "GQ",
  91.800 -    "GR", "GR",
  91.801 -    "GS", "GS",
  91.802 -    "GT", "GT",
  91.803 -    "GU", "GU",
  91.804 -    "GW", "GW",
  91.805 -    "GY", "GY",
  91.806 -    "HK", "HK",
  91.807 -    "HM", "HM",
  91.808 -    "HN", "HN",
  91.809 -    "HR", "HR",
  91.810 -    "HT", "HT",
  91.811 -    "HU", "HU",
  91.812 -    "ID", "ID",
  91.813 -    "IE", "IE",
  91.814 -    "IL", "IL",
  91.815 -    "IN", "IN",
  91.816 -    "IO", "IO",
  91.817 -    "IQ", "IQ",
  91.818 -    "IR", "IR",
  91.819 -    "IS", "IS",
  91.820 -    "IT", "IT",
  91.821 -    "JM", "JM",
  91.822 -    "JO", "JO",
  91.823 -    "JP", "JP",
  91.824 -    "KE", "KE",
  91.825 -    "KG", "KG",
  91.826 -    "KH", "KH",
  91.827 -    "KI", "KI",
  91.828 -    "KM", "KM",
  91.829 -    "KN", "KN",
  91.830 -    "KP", "KP",
  91.831 -    "KR", "KR",
  91.832 -    "KW", "KW",
  91.833 -    "KY", "KY",
  91.834 -    "KZ", "KZ",
  91.835 -    "LA", "LA",
  91.836 -    "LB", "LB",
  91.837 -    "LC", "LC",
  91.838 -    "LI", "LI",
  91.839 -    "LK", "LK",
  91.840 -    "LR", "LR",
  91.841 -    "LS", "LS",
  91.842 -    "LT", "LT",
  91.843 -    "LU", "LU",
  91.844 -    "LV", "LV",
  91.845 -    "LY", "LY",
  91.846 -    "MA", "MA",
  91.847 -    "MC", "MC",
  91.848 -    "MD", "MD",
  91.849 -    "ME", "ME",
  91.850 -    "MG", "MG",
  91.851 -    "MH", "MH",
  91.852 -    "MK", "MK",
  91.853 -    "ML", "ML",
  91.854 -    "MM", "MM",
  91.855 -    "MN", "MN",
  91.856 -    "MO", "MO",
  91.857 -    "MP", "MP",
  91.858 -    "MQ", "MQ",
  91.859 -    "MR", "MR",
  91.860 -    "MS", "MS",
  91.861 -    "MT", "MT",
  91.862 -    "MU", "MU",
  91.863 -    "MV", "MV",
  91.864 -    "MW", "MW",
  91.865 -    "MX", "MX",
  91.866 -    "MY", "MY",
  91.867 -    "MZ", "MZ",
  91.868 -    "NA", "NA",
  91.869 -    "NC", "NC",
  91.870 -    "NE", "NE",
  91.871 -    "NF", "NF",
  91.872 -    "NG", "NG",
  91.873 -    "NI", "NI",
  91.874 -    "NL", "NL",
  91.875 -    "NO", "NO",
  91.876 -    "NP", "NP",
  91.877 -    "NR", "NR",
  91.878 -    "NU", "NU",
  91.879 -    "NZ", "NZ",
  91.880 -    "OM", "OM",
  91.881 -    "PA", "PA",
  91.882 -    "PE", "PE",
  91.883 -    "PF", "PF",
  91.884 -    "PG", "PG",
  91.885 -    "PH", "PH",
  91.886 -    "PK", "PK",
  91.887 -    "PL", "PL",
  91.888 -    "PM", "PM",
  91.889 -    "PN", "PN",
  91.890 -    "PR", "PR",
  91.891 -    "PS", "PS",
  91.892 -    "PT", "PT",
  91.893 -    "PW", "PW",
  91.894 -    "PY", "PY",
  91.895 -    "QA", "QA",
  91.896 -    "RE", "RE",
  91.897  #ifdef __linux__
  91.898      "RN", "US", // used on Linux, not clear what it stands for
  91.899  #endif
  91.900 -    "RO", "RO",
  91.901 -    "RS", "RS",
  91.902 -    "RU", "RU",
  91.903 -    "RW", "RW",
  91.904 -    "SA", "SA",
  91.905 -    "SB", "SB",
  91.906 -    "SC", "SC",
  91.907 -    "SD", "SD",
  91.908 -    "SE", "SE",
  91.909 -    "SG", "SG",
  91.910 -    "SH", "SH",
  91.911 -    "SI", "SI",
  91.912 -    "SJ", "SJ",
  91.913 -    "SK", "SK",
  91.914 -    "SL", "SL",
  91.915 -    "SM", "SM",
  91.916 -    "SN", "SN",
  91.917 -    "SO", "SO",
  91.918 -    "SR", "SR",
  91.919 -    "ST", "ST",
  91.920 -    "SV", "SV",
  91.921 -    "SY", "SY",
  91.922 -    "SZ", "SZ",
  91.923 -    "TC", "TC",
  91.924 -    "TD", "TD",
  91.925 -    "TF", "TF",
  91.926 -    "TG", "TG",
  91.927 -    "TH", "TH",
  91.928 -    "TJ", "TJ",
  91.929 -    "TK", "TK",
  91.930 -    "TL", "TL",
  91.931 -    "TM", "TM",
  91.932 -    "TN", "TN",
  91.933 -    "TO", "TO",
  91.934 -    "TR", "TR",
  91.935 -    "TT", "TT",
  91.936 -    "TV", "TV",
  91.937 -    "TW", "TW",
  91.938 -    "TZ", "TZ",
  91.939 -    "UA", "UA",
  91.940 -    "UG", "UG",
  91.941 -    "UK", "GB",
  91.942 -    "UM", "UM",
  91.943 -    "US", "US",
  91.944 -    "UY", "UY",
  91.945 -    "UZ", "UZ",
  91.946 -    "VA", "VA",
  91.947 -    "VC", "VC",
  91.948 -    "VE", "VE",
  91.949 -    "VG", "VG",
  91.950 -    "VI", "VI",
  91.951 -    "VN", "VN",
  91.952 -    "VU", "VU",
  91.953 -    "WF", "WF",
  91.954 -    "WS", "WS",
  91.955 -    "YE", "YE",
  91.956 -    "YT", "YT",
  91.957      "YU", "CS", // YU has been removed from ISO 3166
  91.958 -    "ZA", "ZA",
  91.959 -    "ZM", "ZM",
  91.960 -    "ZW", "ZW",
  91.961      "",
  91.962  };
  91.963  
    92.1 --- a/src/solaris/native/java/net/net_util_md.c	Tue Nov 30 09:57:47 2010 -0800
    92.2 +++ b/src/solaris/native/java/net/net_util_md.c	Wed Dec 08 00:35:33 2010 -0800
    92.3 @@ -33,6 +33,7 @@
    92.4  #include <netdb.h>
    92.5  #include <stdlib.h>
    92.6  #include <dlfcn.h>
    92.7 +#include <values.h>
    92.8  
    92.9  #ifdef __solaris__
   92.10  #include <sys/sockio.h>
   92.11 @@ -75,17 +76,17 @@
   92.12  #endif
   92.13  
   92.14  #ifdef __solaris__
   92.15 -static int init_max_buf;
   92.16 +static int init_tcp_max_buf, init_udp_max_buf;
   92.17  static int tcp_max_buf;
   92.18  static int udp_max_buf;
   92.19  
   92.20  /*
   92.21   * Get the specified parameter from the specified driver. The value
   92.22   * of the parameter is assumed to be an 'int'. If the parameter
   92.23 - * cannot be obtained return the specified default value.
   92.24 + * cannot be obtained return -1
   92.25   */
   92.26  static int
   92.27 -getParam(char *driver, char *param, int dflt)
   92.28 +getParam(char *driver, char *param)
   92.29  {
   92.30      struct strioctl stri;
   92.31      char buf [64];
   92.32 @@ -94,7 +95,7 @@
   92.33  
   92.34      s = open (driver, O_RDWR);
   92.35      if (s < 0) {
   92.36 -        return dflt;
   92.37 +        return -1;
   92.38      }
   92.39      strncpy (buf, param, sizeof(buf));
   92.40      stri.ic_cmd = ND_GET;
   92.41 @@ -102,13 +103,64 @@
   92.42      stri.ic_dp = buf;
   92.43      stri.ic_len = sizeof(buf);
   92.44      if (ioctl (s, I_STR, &stri) < 0) {
   92.45 -        value = dflt;
   92.46 +        value = -1;
   92.47      } else {
   92.48          value = atoi(buf);
   92.49      }
   92.50      close (s);
   92.51      return value;
   92.52  }
   92.53 +
   92.54 +/*
   92.55 + * Iterative way to find the max value that SO_SNDBUF or SO_RCVBUF
   92.56 + * for Solaris versions that do not support the ioctl() in getParam().
   92.57 + * Ugly, but only called once (for each sotype).
   92.58 + *
   92.59 + * As an optimisation, we make a guess using the default values for Solaris
   92.60 + * assuming they haven't been modified with ndd.
   92.61 + */
   92.62 +
   92.63 +#define MAX_TCP_GUESS 1024 * 1024
   92.64 +#define MAX_UDP_GUESS 2 * 1024 * 1024
   92.65 +
   92.66 +#define FAIL_IF_NOT_ENOBUFS if (errno != ENOBUFS) return -1
   92.67 +
   92.68 +static int findMaxBuf(int fd, int opt, int sotype) {
   92.69 +    int a = 0;
   92.70 +    int b = MAXINT;
   92.71 +    int initial_guess;
   92.72 +    int limit = -1;
   92.73 +
   92.74 +    if (sotype == SOCK_DGRAM) {
   92.75 +        initial_guess = MAX_UDP_GUESS;
   92.76 +    } else {
   92.77 +        initial_guess = MAX_TCP_GUESS;
   92.78 +    }
   92.79 +
   92.80 +    if (setsockopt(fd, SOL_SOCKET, opt, &initial_guess, sizeof(int)) == 0) {
   92.81 +        initial_guess++;
   92.82 +        if (setsockopt(fd, SOL_SOCKET, opt, &initial_guess,sizeof(int)) < 0) {
   92.83 +            FAIL_IF_NOT_ENOBUFS;
   92.84 +            return initial_guess - 1;
   92.85 +        }
   92.86 +        a = initial_guess;
   92.87 +    } else {
   92.88 +        FAIL_IF_NOT_ENOBUFS;
   92.89 +        b = initial_guess - 1;
   92.90 +    }
   92.91 +    do {
   92.92 +        int mid = a + (b-a)/2;
   92.93 +        if (setsockopt(fd, SOL_SOCKET, opt, &mid, sizeof(int)) == 0) {
   92.94 +            limit = mid;
   92.95 +            a = mid + 1;
   92.96 +        } else {
   92.97 +            FAIL_IF_NOT_ENOBUFS;
   92.98 +            b = mid - 1;
   92.99 +        }
  92.100 +    } while (b >= a);
  92.101 +
  92.102 +    return limit;
  92.103 +}
  92.104  #endif
  92.105  
  92.106  #ifdef __linux__
  92.107 @@ -1148,7 +1200,6 @@
  92.108      return rv;
  92.109  }
  92.110  
  92.111 -
  92.112  /*
  92.113   * Wrapper for setsockopt system routine - performs any
  92.114   * necessary pre/post processing to deal with OS specific
  92.115 @@ -1212,7 +1263,7 @@
  92.116  #ifdef __solaris__
  92.117      if (level == SOL_SOCKET) {
  92.118          if (opt == SO_SNDBUF || opt == SO_RCVBUF) {
  92.119 -            int sotype, arglen;
  92.120 +            int sotype=0, arglen;
  92.121              int *bufsize, maxbuf;
  92.122              int ret;
  92.123  
  92.124 @@ -1223,18 +1274,37 @@
  92.125  
  92.126              /* Exceeded system limit so clamp and retry */
  92.127  
  92.128 -            if (!init_max_buf) {
  92.129 -                tcp_max_buf = getParam("/dev/tcp", "tcp_max_buf", 1024*1024);
  92.130 -                udp_max_buf = getParam("/dev/udp", "udp_max_buf", 2048*1024);
  92.131 -                init_max_buf = 1;
  92.132 -            }
  92.133 -
  92.134              arglen = sizeof(sotype);
  92.135              if (getsockopt(fd, SOL_SOCKET, SO_TYPE, (void *)&sotype,
  92.136                             &arglen) < 0) {
  92.137                  return -1;
  92.138              }
  92.139  
  92.140 +            /*
  92.141 +             * We try to get tcp_maxbuf (and udp_max_buf) using
  92.142 +             * an ioctl() that isn't available on all versions of Solaris.
  92.143 +             * If that fails, we use the search algorithm in findMaxBuf()
  92.144 +             */
  92.145 +            if (!init_tcp_max_buf && sotype == SOCK_STREAM) {
  92.146 +                tcp_max_buf = getParam("/dev/tcp", "tcp_max_buf");
  92.147 +                if (tcp_max_buf == -1) {
  92.148 +                    tcp_max_buf = findMaxBuf(fd, opt, SOCK_STREAM);
  92.149 +                    if (tcp_max_buf == -1) {
  92.150 +                        return -1;
  92.151 +                    }
  92.152 +                }
  92.153 +                init_tcp_max_buf = 1;
  92.154 +            } else if (!init_udp_max_buf && sotype == SOCK_DGRAM) {
  92.155 +                udp_max_buf = getParam("/dev/udp", "udp_max_buf");
  92.156 +                if (udp_max_buf == -1) {
  92.157 +                    udp_max_buf = findMaxBuf(fd, opt, SOCK_DGRAM);
  92.158 +                    if (udp_max_buf == -1) {
  92.159 +                        return -1;
  92.160 +                    }
  92.161 +                }
  92.162 +                init_udp_max_buf = 1;
  92.163 +            }
  92.164 +
  92.165              maxbuf = (sotype == SOCK_STREAM) ? tcp_max_buf : udp_max_buf;
  92.166              bufsize = (int *)arg;
  92.167              if (*bufsize > maxbuf) {
    93.1 --- a/src/solaris/native/sun/awt/gtk2_interface.c	Tue Nov 30 09:57:47 2010 -0800
    93.2 +++ b/src/solaris/native/sun/awt/gtk2_interface.c	Wed Dec 08 00:35:33 2010 -0800
    93.3 @@ -607,6 +607,7 @@
    93.4          fp_gtk_tree_view_new = dl_symbol("gtk_tree_view_new");
    93.5          fp_gtk_viewport_new = dl_symbol("gtk_viewport_new");
    93.6          fp_gtk_window_new = dl_symbol("gtk_window_new");
    93.7 +        fp_gtk_window_present = dl_symbol("gtk_window_present");
    93.8          fp_gtk_dialog_new = dl_symbol("gtk_dialog_new");
    93.9          fp_gtk_frame_new = dl_symbol("gtk_frame_new");
   93.10  
    94.1 --- a/src/solaris/native/sun/awt/gtk2_interface.h	Tue Nov 30 09:57:47 2010 -0800
    94.2 +++ b/src/solaris/native/sun/awt/gtk2_interface.h	Wed Dec 08 00:35:33 2010 -0800
    94.3 @@ -749,6 +749,7 @@
    94.4  int (*fp_gdk_pixbuf_get_width)(const GdkPixbuf *pixbuf);
    94.5  GdkPixbuf *(*fp_gdk_pixbuf_new_from_file)(const char *filename, GError **error);
    94.6  void (*fp_gtk_widget_destroy)(GtkWidget *widget);
    94.7 +void (*fp_gtk_window_present)(GtkWindow *window);
    94.8  
    94.9  
   94.10  /**
    95.1 --- a/src/solaris/native/sun/awt/sun_awt_X11_GtkFileDialogPeer.c	Tue Nov 30 09:57:47 2010 -0800
    95.2 +++ b/src/solaris/native/sun/awt/sun_awt_X11_GtkFileDialogPeer.c	Wed Dec 08 00:35:33 2010 -0800
    95.3 @@ -80,6 +80,28 @@
    95.4      quit(env, jpeer, FALSE);
    95.5  }
    95.6  
    95.7 +/*
    95.8 + * Class:     sun_awt_X11_GtkFileDialogPeer
    95.9 + * Method:    toFront
   95.10 + * Signature: ()V
   95.11 + */
   95.12 +JNIEXPORT void JNICALL Java_sun_awt_X11_GtkFileDialogPeer_toFront
   95.13 +(JNIEnv * env, jobject jpeer)
   95.14 +{
   95.15 +    GtkWidget * dialog;
   95.16 +
   95.17 +    fp_gdk_threads_enter();
   95.18 +
   95.19 +    dialog = (GtkWidget*)jlong_to_ptr(
   95.20 +            (*env)->GetLongField(env, jpeer, widgetFieldID));
   95.21 +
   95.22 +    if (dialog != NULL) {
   95.23 +        fp_gtk_window_present((GtkWindow*)dialog);
   95.24 +    }
   95.25 +
   95.26 +    fp_gdk_threads_leave();
   95.27 +}
   95.28 +
   95.29  /**
   95.30   * Convert a GSList to an array of filenames (without the parent folder)
   95.31   */
    96.1 --- a/src/solaris/native/sun/awt/sun_awt_X11_GtkFileDialogPeer.h	Tue Nov 30 09:57:47 2010 -0800
    96.2 +++ b/src/solaris/native/sun/awt/sun_awt_X11_GtkFileDialogPeer.h	Wed Dec 08 00:35:33 2010 -0800
    96.3 @@ -33,6 +33,14 @@
    96.4  JNIEXPORT void JNICALL Java_sun_awt_X11_GtkFileDialogPeer_quit
    96.5  (JNIEnv *, jobject);
    96.6  
    96.7 +/*
    96.8 + * Class:     sun_awt_X11_GtkFileDialogPeer
    96.9 + * Method:    toFront
   96.10 + * Signature: ()V
   96.11 + */
   96.12 +JNIEXPORT void JNICALL Java_sun_awt_X11_GtkFileDialogPeer_toFront
   96.13 +(JNIEnv *, jobject);
   96.14 +
   96.15  #ifdef __cplusplus
   96.16  }
   96.17  #endif
    97.1 --- a/src/windows/bin/java_md.c	Tue Nov 30 09:57:47 2010 -0800
    97.2 +++ b/src/windows/bin/java_md.c	Wed Dec 08 00:35:33 2010 -0800
    97.3 @@ -70,7 +70,11 @@
    97.4   */
    97.5  #undef ENABLE_AWT_PRELOAD
    97.6  #ifndef JAVA_ARGS /* turn off AWT preloading for javac, jar, etc */
    97.7 -    #define ENABLE_AWT_PRELOAD
    97.8 +    /* CR6999872: fastdebug crashes if awt library is loaded before JVM is
    97.9 +     * initialized*/
   97.10 +    #if !defined(DEBUG)
   97.11 +        #define ENABLE_AWT_PRELOAD
   97.12 +    #endif
   97.13  #endif
   97.14  
   97.15  #ifdef ENABLE_AWT_PRELOAD
    98.1 --- a/src/windows/classes/sun/awt/windows/WFramePeer.java	Tue Nov 30 09:57:47 2010 -0800
    98.2 +++ b/src/windows/classes/sun/awt/windows/WFramePeer.java	Wed Dec 08 00:35:33 2010 -0800
    98.3 @@ -79,10 +79,50 @@
    98.4          if (b == null) {
    98.5              clearMaximizedBounds();
    98.6          } else {
    98.7 -            setMaximizedBounds(b.x, b.y, b.width, b.height);
    98.8 +            Rectangle adjBounds = (Rectangle)b.clone();
    98.9 +            adjustMaximizedBounds(adjBounds);
   98.10 +            setMaximizedBounds(adjBounds.x, adjBounds.y, adjBounds.width, adjBounds.height);
   98.11          }
   98.12      }
   98.13  
   98.14 +    /**
   98.15 +     * The incoming bounds describe the maximized size and position of the
   98.16 +     * window on the monitor that displays the window. But the window manager
   98.17 +     * expects that the bounds are based on the size and position of the
   98.18 +     * primary monitor, even if the window ultimately maximizes onto a
   98.19 +     * secondary monitor. And the window manager adjusts these values to
   98.20 +     * compensate for differences between the primary monitor and the monitor
   98.21 +     * that displays the window.
   98.22 +     * The method translates the incoming bounds to the values acceptable
   98.23 +     * by the window manager. For more details, please refer to 6699851.
   98.24 +     */
   98.25 +    private void adjustMaximizedBounds(Rectangle b) {
   98.26 +        GraphicsConfiguration currentDevGC = getGraphicsConfiguration();
   98.27 +
   98.28 +        GraphicsDevice primaryDev = GraphicsEnvironment
   98.29 +            .getLocalGraphicsEnvironment().getDefaultScreenDevice();
   98.30 +        GraphicsConfiguration primaryDevGC = primaryDev.getDefaultConfiguration();
   98.31 +
   98.32 +        if (currentDevGC != null && currentDevGC != primaryDevGC) {
   98.33 +            Rectangle currentDevBounds = currentDevGC.getBounds();
   98.34 +            Rectangle primaryDevBounds = primaryDevGC.getBounds();
   98.35 +
   98.36 +            b.width -= (currentDevBounds.width - primaryDevBounds.width);
   98.37 +            b.height -= (currentDevBounds.height - primaryDevBounds.height);
   98.38 +        }
   98.39 +    }
   98.40 +
   98.41 +    @Override
   98.42 +    public boolean updateGraphicsData(GraphicsConfiguration gc) {
   98.43 +        boolean result = super.updateGraphicsData(gc);
   98.44 +        Rectangle bounds = AWTAccessor.getFrameAccessor().
   98.45 +                               getMaximizedBounds((Frame)target);
   98.46 +        if (bounds != null) {
   98.47 +            setMaximizedBounds(bounds);
   98.48 +        }
   98.49 +        return result;
   98.50 +    }
   98.51 +
   98.52      @Override
   98.53      boolean isTargetUndecorated() {
   98.54          return ((Frame)target).isUndecorated();
    99.1 --- a/src/windows/classes/sun/security/krb5/internal/tools/Ktab.java	Tue Nov 30 09:57:47 2010 -0800
    99.2 +++ b/src/windows/classes/sun/security/krb5/internal/tools/Ktab.java	Wed Dec 08 00:35:33 2010 -0800
    99.3 @@ -129,7 +129,7 @@
    99.4              ktab.deleteEntry();
    99.5              break;
    99.6          default:
    99.7 -            ktab.printHelp();
    99.8 +            ktab.error("A command must be provided");
    99.9          }
   99.10      }
   99.11  
   99.12 @@ -232,7 +232,7 @@
   99.13                          append = true;
   99.14                          break;
   99.15                      default:
   99.16 -                        printHelp();
   99.17 +                        error("Unknown command: " + args[i]);
   99.18                          break;
   99.19                  }
   99.20              } else {    // optional standalone arguments
   100.1 --- a/src/windows/native/sun/java2d/d3d/D3DPipelineManager.cpp	Tue Nov 30 09:57:47 2010 -0800
   100.2 +++ b/src/windows/native/sun/java2d/d3d/D3DPipelineManager.cpp	Wed Dec 08 00:35:33 2010 -0800
   100.3 @@ -969,12 +969,15 @@
   100.4      }
   100.5      D3DPipelineManager *pMgr = D3DPipelineManager::CreateInstance();
   100.6      if (pMgr != NULL) {
   100.7 -        UINT adapterCount = pMgr->adapterCount;
   100.8 +        // init adapters if we are preloading
   100.9 +        if (AwtToolkit::GetInstance().GetPreloadThread().OnPreloadThread()) {
  100.10 +            UINT adapterCount = pMgr->adapterCount;
  100.11  
  100.12 -        pAdapterIniters = new D3DAdapterInitializer[adapterCount];
  100.13 -        for (UINT i=0; i<adapterCount; i++) {
  100.14 -            pAdapterIniters[i].setAdapter(i);
  100.15 -            AwtToolkit::GetInstance().GetPreloadThread().AddAction(&pAdapterIniters[i]);
  100.16 +            pAdapterIniters = new D3DAdapterInitializer[adapterCount];
  100.17 +            for (UINT i=0; i<adapterCount; i++) {
  100.18 +                pAdapterIniters[i].setAdapter(i);
  100.19 +                AwtToolkit::GetInstance().GetPreloadThread().AddAction(&pAdapterIniters[i]);
  100.20 +            }
  100.21          }
  100.22      }
  100.23  }
   101.1 --- a/src/windows/native/sun/windows/awt_Choice.cpp	Tue Nov 30 09:57:47 2010 -0800
   101.2 +++ b/src/windows/native/sun/windows/awt_Choice.cpp	Wed Dec 08 00:35:33 2010 -0800
   101.3 @@ -86,6 +86,7 @@
   101.4  AwtChoice::AwtChoice() {
   101.5      m_hList = NULL;
   101.6      m_listDefWindowProc = NULL;
   101.7 +    m_selectedItem = -1;
   101.8  }
   101.9  
  101.10  LPCTSTR AwtChoice::GetClassName() {
  101.11 @@ -437,9 +438,10 @@
  101.12  MsgRouting AwtChoice::WmNotify(UINT notifyCode)
  101.13  {
  101.14      if (notifyCode == CBN_SELCHANGE) {
  101.15 -        int itemSelect = (int)SendMessage(CB_GETCURSEL);
  101.16 -        if (itemSelect != CB_ERR){
  101.17 -            DoCallback("handleAction", "(I)V", itemSelect);
  101.18 +        int selectedItem = (int)SendMessage(CB_GETCURSEL);
  101.19 +        if (selectedItem != CB_ERR && m_selectedItem != selectedItem){
  101.20 +            m_selectedItem = selectedItem;
  101.21 +            DoCallback("handleAction", "(I)V", selectedItem);
  101.22          }
  101.23      } else if (notifyCode == CBN_DROPDOWN) {
  101.24  
   102.1 --- a/src/windows/native/sun/windows/awt_Choice.h	Tue Nov 30 09:57:47 2010 -0800
   102.2 +++ b/src/windows/native/sun/windows/awt_Choice.h	Wed Dec 08 00:35:33 2010 -0800
   102.3 @@ -94,6 +94,7 @@
   102.4      static BOOL sm_isMouseMoveInList;
   102.5      HWND m_hList;
   102.6      WNDPROC m_listDefWindowProc;
   102.7 +    int m_selectedItem;
   102.8      static LRESULT CALLBACK ListWindowProc(HWND hwnd, UINT message,
   102.9                                             WPARAM wParam, LPARAM lParam);
  102.10  };
   103.1 --- a/src/windows/native/sun/windows/awt_Toolkit.cpp	Tue Nov 30 09:57:47 2010 -0800
   103.2 +++ b/src/windows/native/sun/windows/awt_Toolkit.cpp	Wed Dec 08 00:35:33 2010 -0800
   103.3 @@ -1904,6 +1904,11 @@
   103.4      return true;
   103.5  }
   103.6  
   103.7 +bool AwtToolkit::PreloadThread::OnPreloadThread()
   103.8 +{
   103.9 +    return GetThreadId() == ::GetCurrentThreadId();
  103.10 +}
  103.11 +
  103.12  /*static*/
  103.13  unsigned WINAPI AwtToolkit::PreloadThread::StaticThreadProc(void *param)
  103.14  {
   104.1 --- a/src/windows/native/sun/windows/awt_Toolkit.h	Tue Nov 30 09:57:47 2010 -0800
   104.2 +++ b/src/windows/native/sun/windows/awt_Toolkit.h	Wed Dec 08 00:35:33 2010 -0800
   104.3 @@ -559,6 +559,8 @@
   104.4              CriticalSection::Lock lock(threadLock);
   104.5              return wrongThread;
   104.6          }
   104.7 +        // returns true if the current thread is "preload" thread
   104.8 +        bool OnPreloadThread();
   104.9  
  104.10      private:
  104.11          // data access lock
   105.1 --- a/src/windows/resource/java.manifest	Tue Nov 30 09:57:47 2010 -0800
   105.2 +++ b/src/windows/resource/java.manifest	Wed Dec 08 00:35:33 2010 -0800
   105.3 @@ -3,7 +3,7 @@
   105.4  <assemblyIdentity
   105.5      version="1.0.0.0"
   105.6      processorArchitecture="X86"
   105.7 -    name="Sun Microsystems, Inc., Java(tm) 2 Standard Edition"
   105.8 +    name="Oracle Corporation, Java(tm) 2 Standard Edition"
   105.9      type="win32"
  105.10  />
  105.11  <description>AWT</description>
   106.1 --- a/test/ProblemList.txt	Tue Nov 30 09:57:47 2010 -0800
   106.2 +++ b/test/ProblemList.txt	Wed Dec 08 00:35:33 2010 -0800
   106.3 @@ -734,10 +734,6 @@
   106.4  # Problems on windows, jmap.exe hangs? (these run jmap), fails on Solaris 10 x86
   106.5  java/util/concurrent/locks/Lock/TimedAcquireLeak.java		generic-all
   106.6  
   106.7 -# Solaris sparc client, some failures, "1 not equal to 3"?
   106.8 -#   also Linux problems with samevm mode, -server linux i586? 1 not equal to 3?
   106.9 -java/util/concurrent/Executors/AutoShutdown.java		generic-all
  106.10 -
  106.11  # Fails on solaris-sparc -server (Set not equal to copy. 1)
  106.12  java/util/EnumSet/EnumSetBash.java			 	solaris-sparc
  106.13  
   107.1 --- a/test/com/sun/net/httpserver/Test.java	Tue Nov 30 09:57:47 2010 -0800
   107.2 +++ b/test/com/sun/net/httpserver/Test.java	Wed Dec 08 00:35:33 2010 -0800
   107.3 @@ -22,8 +22,20 @@
   107.4   */
   107.5  
   107.6  import com.sun.net.httpserver.*;
   107.7 +import java.util.logging.*;
   107.8  
   107.9  public class Test {
  107.10 +
  107.11 +    static Logger logger;
  107.12 +
  107.13 +    static void enableLogging() {
  107.14 +        logger = Logger.getLogger("com.sun.net.httpserver");
  107.15 +        Handler h = new ConsoleHandler();
  107.16 +        h.setLevel(Level.ALL);
  107.17 +        logger.setLevel(Level.ALL);
  107.18 +        logger.addHandler(h);
  107.19 +    }
  107.20 +
  107.21      static void delay () {
  107.22          try {
  107.23              Thread.sleep (1000);
   108.1 --- a/test/com/sun/net/httpserver/Test1.java	Tue Nov 30 09:57:47 2010 -0800
   108.2 +++ b/test/com/sun/net/httpserver/Test1.java	Wed Dec 08 00:35:33 2010 -0800
   108.3 @@ -25,6 +25,7 @@
   108.4   * @test
   108.5   * @bug 6270015
   108.6   * @run main/othervm Test1
   108.7 + * @run main/othervm -Dsun.net.httpserver.maxReqTime=10 Test1
   108.8   * @summary  Light weight HTTP server
   108.9   */
  108.10  
   109.1 --- a/test/com/sun/net/httpserver/Test13.java	Tue Nov 30 09:57:47 2010 -0800
   109.2 +++ b/test/com/sun/net/httpserver/Test13.java	Wed Dec 08 00:35:33 2010 -0800
   109.3 @@ -31,6 +31,7 @@
   109.4  import com.sun.net.httpserver.*;
   109.5  
   109.6  import java.util.concurrent.*;
   109.7 +import java.util.logging.*;
   109.8  import java.io.*;
   109.9  import java.net.*;
  109.10  
  109.11 @@ -45,12 +46,19 @@
  109.12  
  109.13      static SSLContext ctx;
  109.14  
  109.15 +    final static int NUM = 32; // was 32
  109.16 +
  109.17      static boolean fail = false;
  109.18  
  109.19      public static void main (String[] args) throws Exception {
  109.20          HttpServer s1 = null;
  109.21          HttpsServer s2 = null;
  109.22          ExecutorService executor=null;
  109.23 +        Logger l = Logger.getLogger ("com.sun.net.httpserver");
  109.24 +        Handler ha = new ConsoleHandler();
  109.25 +        ha.setLevel(Level.ALL);
  109.26 +        l.setLevel(Level.ALL);
  109.27 +        l.addHandler(ha);
  109.28          try {
  109.29              String root = System.getProperty ("test.src")+ "/docs";
  109.30              System.out.print ("Test13: ");
  109.31 @@ -70,10 +78,10 @@
  109.32  
  109.33              int port = s1.getAddress().getPort();
  109.34              int httpsport = s2.getAddress().getPort();
  109.35 -            Runner r[] = new Runner[64];
  109.36 -            for (int i=0; i<32; i++) {
  109.37 +            Runner r[] = new Runner[NUM*2];
  109.38 +            for (int i=0; i<NUM; i++) {
  109.39                  r[i] = new Runner (true, "http", root+"/test1", port, "smallfile.txt", 23);
  109.40 -                r[i+32] = new Runner (true, "https", root+"/test1", port, "smallfile.txt", 23);
  109.41 +                r[i+NUM] = new Runner (true, "https", root+"/test1", httpsport, "smallfile.txt", 23);
  109.42              }
  109.43              start (r);
  109.44              join (r);
  109.45 @@ -91,6 +99,7 @@
  109.46  
  109.47      static void start (Runner[] x) {
  109.48          for (int i=0; i<x.length; i++) {
  109.49 +            if (x[i] != null)
  109.50              x[i].start();
  109.51          }
  109.52      }
  109.53 @@ -98,6 +107,7 @@
  109.54      static void join (Runner[] x) {
  109.55          for (int i=0; i<x.length; i++) {
  109.56              try {
  109.57 +                if (x[i] != null)
  109.58                  x[i].join();
  109.59              } catch (InterruptedException e) {}
  109.60          }
   110.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   110.2 +++ b/test/com/sun/net/httpserver/bugs/6725892/Test.java	Wed Dec 08 00:35:33 2010 -0800
   110.3 @@ -0,0 +1,266 @@
   110.4 +/*
   110.5 + * Copyright (c) 2005, 2006, Oracle and/or its affiliates. All rights reserved.
   110.6 + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
   110.7 + *
   110.8 + * This code is free software; you can redistribute it and/or modify it
   110.9 + * under the terms of the GNU General Public License version 2 only, as
  110.10 + * published by the Free Software Foundation.
  110.11 + *
  110.12 + * This code is distributed in the hope that it will be useful, but WITHOUT
  110.13 + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
  110.14 + * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
  110.15 + * version 2 for more details (a copy is included in the LICENSE file that
  110.16 + * accompanied this code).
  110.17 + *
  110.18 + * You should have received a copy of the GNU General Public License version
  110.19 + * 2 along with this work; if not, write to the Free Software Foundation,
  110.20 + * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
  110.21 + *
  110.22 + * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
  110.23 + * or visit www.oracle.com if you need additional information or have any
  110.24 + * questions.
  110.25 + */
  110.26 +
  110.27 +/**
  110.28 + * @test
  110.29 + * @bug 6725892
  110.30 + * @run main/othervm -Dsun.net.httpserver.maxReqTime=2 Test
  110.31 + * @summary
  110.32 + */
  110.33 +
  110.34 +import com.sun.net.httpserver.*;
  110.35 +
  110.36 +import java.util.concurrent.*;
  110.37 +import java.util.logging.*;
  110.38 +import java.io.*;
  110.39 +import java.net.*;
  110.40 +import javax.net.ssl.*;
  110.41 +
  110.42 +public class Test {
  110.43 +
  110.44 +    static HttpServer s1;
  110.45 +    static int port;
  110.46 +    static URL url;
  110.47 +    static final String RESPONSE_BODY = "response";
  110.48 +    static boolean failed = false;
  110.49 +
  110.50 +    static class Handler implements HttpHandler {
  110.51 +
  110.52 +        public void handle (HttpExchange t)
  110.53 +            throws IOException
  110.54 +        {
  110.55 +            InputStream is = t.getRequestBody();
  110.56 +            InetSocketAddress rem = t.getRemoteAddress();
  110.57 +            System.out.println ("Request from: " + rem);
  110.58 +            while (is.read () != -1) ;
  110.59 +            is.close();
  110.60 +            String requrl = t.getRequestURI().toString();
  110.61 +            OutputStream os = t.getResponseBody();
  110.62 +            t.sendResponseHeaders (200, RESPONSE_BODY.length());
  110.63 +            os.write (RESPONSE_BODY.getBytes());
  110.64 +            t.close();
  110.65 +        }
  110.66 +    }
  110.67 +
  110.68 +    public static void main (String[] args) throws Exception {
  110.69 +
  110.70 +        ExecutorService exec = Executors.newCachedThreadPool();
  110.71 +
  110.72 +        try {
  110.73 +            InetSocketAddress addr = new InetSocketAddress (0);
  110.74 +            s1 = HttpServer.create (addr, 0);
  110.75 +            HttpHandler h = new Handler ();
  110.76 +            HttpContext c1 = s1.createContext ("/", h);
  110.77 +            s1.setExecutor(exec);
  110.78 +            s1.start();
  110.79 +
  110.80 +            port = s1.getAddress().getPort();
  110.81 +            System.out.println ("Server on port " + port);
  110.82 +            url = new URL ("http://127.0.0.1:"+port+"/foo");
  110.83 +            test1();
  110.84 +            test2();
  110.85 +            test3();
  110.86 +            Thread.sleep (2000);
  110.87 +        } catch (Exception e) {
  110.88 +            e.printStackTrace();
  110.89 +            System.out.println ("FAIL");
  110.90 +            throw new RuntimeException ();
  110.91 +        } finally {
  110.92 +            s1.stop(0);
  110.93 +            System.out.println ("After Shutdown");
  110.94 +            exec.shutdown();
  110.95 +        }
  110.96 +    }
  110.97 +
  110.98 +    // open TCP connection without sending anything. Check server closes it.
  110.99 +
 110.100 +    static void test1() throws IOException {
 110.101 +        failed = false;
 110.102 +        Socket s = new Socket ("127.0.0.1", port);
 110.103 +        InputStream is = s.getInputStream();
 110.104 +        // server should close connection after 2 seconds. We wait up to 10
 110.105 +        s.setSoTimeout (10000);
 110.106 +        try {
 110.107 +            is.read();
 110.108 +        } catch (SocketTimeoutException e) {
 110.109 +            failed = true;
 110.110 +        }
 110.111 +        s.close();
 110.112 +        if (failed) {
 110.113 +            System.out.println ("test1: FAIL");
 110.114 +            throw new RuntimeException ();
 110.115 +        } else {
 110.116 +            System.out.println ("test1: OK");
 110.117 +        }
 110.118 +    }
 110.119 +
 110.120 +    // send request and don't read response. Check server closes connection
 110.121 +
 110.122 +    static void test2() throws IOException {
 110.123 +        HttpURLConnection urlc = (HttpURLConnection) url.openConnection();
 110.124 +        urlc.setReadTimeout (20 * 1000);
 110.125 +        InputStream is = urlc.getInputStream();
 110.126 +        // we won't read response and check if it times out
 110.127 +        // on server. If it timesout at client then there is a problem
 110.128 +        try {
 110.129 +            Thread.sleep (10 * 1000);
 110.130 +            while (is.read() != -1) ;
 110.131 +        } catch (InterruptedException e) {
 110.132 +            System.out.println (e);
 110.133 +            System.out.println ("test2: FAIL");
 110.134 +            throw new RuntimeException ("unexpected error");
 110.135 +        } catch (SocketTimeoutException e1) {
 110.136 +            System.out.println (e1);
 110.137 +            System.out.println ("test2: FAIL");
 110.138 +            throw new RuntimeException ("client timedout");
 110.139 +        } finally {
 110.140 +            is.close();
 110.141 +        }
 110.142 +        System.out.println ("test2: OK");
 110.143 +    }
 110.144 +
 110.145 +    // same as test2, but repeated with multiple connections
 110.146 +    // including a number of valid request/responses
 110.147 +
 110.148 +    // Worker: a thread opens a connection to the server in one of three modes.
 110.149 +    // NORMAL - sends a request, waits for response, and checks valid response
 110.150 +    // REQUEST - sends a partial request, and blocks, to see if
 110.151 +    //                  server closes the connection.
 110.152 +    // RESPONSE - sends a request, partially reads response and blocks,
 110.153 +    //                  to see if server closes the connection.
 110.154 +
 110.155 +    static class Worker extends Thread {
 110.156 +        CountDownLatch latch;
 110.157 +        Mode mode;
 110.158 +
 110.159 +        enum Mode {
 110.160 +            REQUEST,    // block during sending of request
 110.161 +            RESPONSE,   // block during reading of response
 110.162 +            NORMAL      // don't block
 110.163 +        };
 110.164 +
 110.165 +        Worker (CountDownLatch latch, Mode mode) {
 110.166 +            this.latch = latch;
 110.167 +            this.mode = mode;
 110.168 +        }
 110.169 +
 110.170 +        void fail(String msg) {
 110.171 +            System.out.println (msg);
 110.172 +            failed = true;
 110.173 +        }
 110.174 +
 110.175 +        public void run () {
 110.176 +            HttpURLConnection urlc;
 110.177 +            InputStream is = null;
 110.178 +
 110.179 +            try {
 110.180 +                urlc = (HttpURLConnection) url.openConnection();
 110.181 +                urlc.setReadTimeout (20 * 1000);
 110.182 +                urlc.setDoOutput(true);
 110.183 +            } catch (IOException e) {
 110.184 +                fail("Worker: failed to connect to server");
 110.185 +                latch.countDown();
 110.186 +                return;
 110.187 +            }
 110.188 +            try {
 110.189 +                OutputStream os = urlc.getOutputStream();
 110.190 +                os.write ("foo".getBytes());
 110.191 +                if (mode == Mode.REQUEST) {
 110.192 +                    Thread.sleep (3000);
 110.193 +                }
 110.194 +                os.close();
 110.195 +                is = urlc.getInputStream();
 110.196 +                if (mode == Mode.RESPONSE) {
 110.197 +                    Thread.sleep (3000);
 110.198 +                }
 110.199 +                if (!checkResponse (is, RESPONSE_BODY)) {
 110.200 +                    fail ("Worker: response");
 110.201 +                }
 110.202 +                is.close();
 110.203 +                return;
 110.204 +            } catch (InterruptedException e0) {
 110.205 +                fail("Worker: timedout");
 110.206 +            } catch (SocketTimeoutException e1) {
 110.207 +                fail("Worker: timedout");
 110.208 +            } catch (IOException e2) {
 110.209 +                switch (mode) {
 110.210 +                  case NORMAL:
 110.211 +                    fail ("Worker: " + e2.getMessage());
 110.212 +                    break;
 110.213 +                  case RESPONSE:
 110.214 +                    if (is == null) {
 110.215 +                        fail ("Worker: " + e2.getMessage());
 110.216 +                        break;
 110.217 +                    }
 110.218 +                  // default: is ok
 110.219 +                }
 110.220 +            } finally {
 110.221 +                latch.countDown();
 110.222 +            }
 110.223 +        }
 110.224 +    }
 110.225 +
 110.226 +    static final int NUM = 20;
 110.227 +
 110.228 +    static void test3() throws Exception {
 110.229 +        failed = false;
 110.230 +        CountDownLatch l = new CountDownLatch (NUM*3);
 110.231 +        Worker[] workers = new Worker[NUM*3];
 110.232 +        for (int i=0; i<NUM; i++) {
 110.233 +            workers[i*3] = new Worker (l, Worker.Mode.NORMAL);
 110.234 +            workers[i*3+1] = new Worker (l, Worker.Mode.REQUEST);
 110.235 +            workers[i*3+2] = new Worker (l, Worker.Mode.RESPONSE);
 110.236 +            workers[i*3].start();
 110.237 +            workers[i*3+1].start();
 110.238 +            workers[i*3+2].start();
 110.239 +        }
 110.240 +        l.await();
 110.241 +        for (int i=0; i<NUM*3; i++) {
 110.242 +            workers[i].join();
 110.243 +        }
 110.244 +        if (failed) {
 110.245 +            throw new RuntimeException ("test3: failed");
 110.246 +        }
 110.247 +        System.out.println ("test3: OK");
 110.248 +    }
 110.249 +
 110.250 +    static boolean checkResponse (InputStream is, String resp) {
 110.251 +        try {
 110.252 +            ByteArrayOutputStream bos = new ByteArrayOutputStream();
 110.253 +            byte[] buf = new byte [64];
 110.254 +            int c;
 110.255 +            while ((c=is.read(buf)) != -1) {
 110.256 +                bos.write (buf, 0, c);
 110.257 +            }
 110.258 +            bos.close();
 110.259 +            if (!bos.toString().equals(resp)) {
 110.260 +                System.out.println ("Wrong response: " + bos.toString());
 110.261 +                return false;
 110.262 +            }
 110.263 +        } catch (IOException e) {
 110.264 +            System.out.println (e);
 110.265 +            return false;
 110.266 +        }
 110.267 +        return true;
 110.268 +    }
 110.269 +}
   111.1 --- a/test/com/sun/net/httpserver/bugs/B6401598.java	Tue Nov 30 09:57:47 2010 -0800
   111.2 +++ b/test/com/sun/net/httpserver/bugs/B6401598.java	Wed Dec 08 00:35:33 2010 -0800
   111.3 @@ -83,7 +83,7 @@
   111.4                          server = HttpServer.create(new InetSocketAddress(0), 400);
   111.5                          server.createContext("/server/", new MyHandler());
   111.6                          exec = Executors.newFixedThreadPool(3);
   111.7 -                        server.setExecutor(null);
   111.8 +                        server.setExecutor(exec);
   111.9                          port = server.getAddress().getPort();
  111.10                          server.start();
  111.11  
   112.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   112.2 +++ b/test/java/awt/Color/OpacityChange/OpacityChange.java	Wed Dec 08 00:35:33 2010 -0800
   112.3 @@ -0,0 +1,54 @@
   112.4 +/*
   112.5 + * Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved.
   112.6 + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
   112.7 + *
   112.8 + * This code is free software; you can redistribute it and/or modify it
   112.9 + * under the terms of the GNU General Public License version 2 only, as
  112.10 + * published by the Free Software Foundation.
  112.11 + *
  112.12 + * This code is distributed in the hope that it will be useful, but WITHOUT
  112.13 + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
  112.14 + * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
  112.15 + * version 2 for more details (a copy is included in the LICENSE file that
  112.16 + * accompanied this code).
  112.17 + *
  112.18 + * You should have received a copy of the GNU General Public License version
  112.19 + * 2 along with this work; if not, write to the Free Software Foundation,
  112.20 + * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
  112.21 + *
  112.22 + * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
  112.23 + * or visit www.oracle.com if you need additional information or have any
  112.24 + * questions.
  112.25 + */
  112.26 +
  112.27 +/*
  112.28 +  @test
  112.29 +  @bug 6783910
  112.30 +  @summary java.awt.Color.brighter()/darker() methods make color opaque
  112.31 +  @author Andrei Dmitriev: area=awt-color
  112.32 +  @run main OpacityChange
  112.33 +*/
  112.34 +
  112.35 +import java.awt.*;
  112.36 +
  112.37 +public class OpacityChange {
  112.38 +    private final static int INITIAL_ALPHA = 125;
  112.39 +
  112.40 +    public static void main(String argv[]) {
  112.41 +        Color color = new Color(20, 20, 20, INITIAL_ALPHA);
  112.42 +        System.out.println("Initial alpha: " + color.getAlpha());
  112.43 +        Color colorBrighter = color.brighter();
  112.44 +        System.out.println("New alpha (after brighter): " + colorBrighter.getAlpha());
  112.45 +
  112.46 +        Color colorDarker = color.darker();
  112.47 +        System.out.println("New alpha (after darker): " + colorDarker.getAlpha());
  112.48 +
  112.49 +
  112.50 +        if (INITIAL_ALPHA != colorBrighter.getAlpha()) {
  112.51 +            throw new RuntimeException("Brighter color alpha has changed from : " +INITIAL_ALPHA + " to " + colorBrighter.getAlpha());
  112.52 +        }
  112.53 +        if (INITIAL_ALPHA != colorDarker.getAlpha()) {
  112.54 +            throw new RuntimeException("Darker color alpha has changed from : " +INITIAL_ALPHA + " to " + colorDarker.getAlpha());
  112.55 +        }
  112.56 +    }
  112.57 +}
   113.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   113.2 +++ b/test/java/awt/MenuBar/DeadlockTest1/DeadlockTest1.java	Wed Dec 08 00:35:33 2010 -0800
   113.3 @@ -0,0 +1,73 @@
   113.4 +/*
   113.5 + * Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved.
   113.6 + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
   113.7 + *
   113.8 + * This code is free software; you can redistribute it and/or modify it
   113.9 + * under the terms of the GNU General Public License version 2 only, as
  113.10 + * published by the Free Software Foundation.
  113.11 + *
  113.12 + * This code is distributed in the hope that it will be useful, but WITHOUT
  113.13 + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
  113.14 + * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
  113.15 + * version 2 for more details (a copy is included in the LICENSE file that
  113.16 + * accompanied this code).
  113.17 + *
  113.18 + * You should have received a copy of the GNU General Public License version
  113.19 + * 2 along with this work; if not, write to the Free Software Foundation,
  113.20 + * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
  113.21 + *
  113.22 + * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
  113.23 + * or visit www.oracle.com if you need additional information or have any
  113.24 + * questions.
  113.25 + */
  113.26 +
  113.27 +/*
  113.28 +  @test
  113.29 +  @bug 6990904
  113.30 +  @summary on oel5.5, Frame doesn't show if the Frame has only a MenuBar as its component.
  113.31 +  @author Andrei Dmitriev: area=awt-menubar
  113.32 +  @run main/timeout=30 DeadlockTest1
  113.33 +*/
  113.34 +
  113.35 +import java.awt.*;
  113.36 +
  113.37 +public class DeadlockTest1 {
  113.38 +    Frame f = new Frame("Menu Frame");
  113.39 +
  113.40 +    DeadlockTest1() {
  113.41 +        MenuBar menubar = new MenuBar();
  113.42 +
  113.43 +        Menu file = new Menu("File");
  113.44 +        Menu edit = new Menu("Edit");
  113.45 +        Menu help = new Menu("Help");
  113.46 +
  113.47 +        MenuItem open = new MenuItem("Open");
  113.48 +        MenuItem close = new MenuItem("Close");
  113.49 +        MenuItem copy = new MenuItem("Copy");
  113.50 +        MenuItem paste = new MenuItem("Paste");
  113.51 +
  113.52 +        file.add(open);
  113.53 +        file.add(close);
  113.54 +
  113.55 +        edit.add(copy);
  113.56 +        edit.add(paste);
  113.57 +        menubar.add(file);
  113.58 +        menubar.add(edit);
  113.59 +        menubar.add(help);
  113.60 +        menubar.setHelpMenu(help);
  113.61 +
  113.62 +        f.setMenuBar(menubar);
  113.63 +        f.setSize(400,200);
  113.64 +        f.setVisible(true);
  113.65 +        try {
  113.66 +            Thread.sleep(5000);
  113.67 +        } catch (InterruptedException z) {
  113.68 +            throw new RuntimeException(z);
  113.69 +        }
  113.70 +        f.dispose();
  113.71 +     }
  113.72 +
  113.73 +    public static void main(String argv[]) {
  113.74 +        new DeadlockTest1();
  113.75 +    }
  113.76 +}
   114.1 --- a/test/java/awt/font/NumericShaper/ShapingTest.java	Tue Nov 30 09:57:47 2010 -0800
   114.2 +++ b/test/java/awt/font/NumericShaper/ShapingTest.java	Wed Dec 08 00:35:33 2010 -0800
   114.3 @@ -23,8 +23,8 @@
   114.4  
   114.5  /*
   114.6   * @test
   114.7 - * @bug 6842557 6943963
   114.8 - * @summary confirm that shaping works as expected. (Mainly for new characters which were added in Unicode 5)
   114.9 + * @bug 6842557 6943963 6959267
  114.10 + * @summary confirm that shaping works as expected. (Mainly for new characters which were added in Unicode 5 and 6)
  114.11   * used where appropriate.
  114.12   */
  114.13  
  114.14 @@ -39,6 +39,7 @@
  114.15      public static void main(String[] args) {
  114.16          test6842557();
  114.17          test6943963();
  114.18 +        test6903266();
  114.19  
  114.20          if (err) {
  114.21              throw new RuntimeException("shape() returned unexpected value.");
  114.22 @@ -109,6 +110,34 @@
  114.23          checkResult("Range.ARABIC, Range.EASTERN_ARABIC", ns, given, expected_EASTERN_ARABIC);
  114.24      }
  114.25  
  114.26 +    private static void test6903266() {
  114.27 +        NumericShaper ns = getContextualShaper(EnumSet.of(Range.TAI_THAM_HORA));
  114.28 +        String given = "\u1a20 012";
  114.29 +        String expected = "\u1a20 \u1a80\u1a81\u1a82";
  114.30 +        checkResult("Range.TAI_THAM_HORA", ns, given, expected);
  114.31 +
  114.32 +        ns = getContextualShaper(EnumSet.of(Range.TAI_THAM_HORA,
  114.33 +                                            Range.TAI_THAM_THAM));
  114.34 +        given = "\u1a20 012";
  114.35 +        expected = "\u1a20 \u1a90\u1a91\u1a92"; // Tham digits are prioritized.
  114.36 +        checkResult("Range.TAI_THAM_HORA, Range.TAI_THAM_THAM", ns, given, expected);
  114.37 +
  114.38 +        ns = getContextualShaper(EnumSet.of(Range.JAVANESE));
  114.39 +        given = "\ua984 012";
  114.40 +        expected = "\ua984 \ua9d0\ua9d1\ua9d2";
  114.41 +        checkResult("Range.JAVANESE", ns, given, expected);
  114.42 +
  114.43 +        ns = getContextualShaper(EnumSet.of(Range.TAI_THAM_THAM));
  114.44 +        given = "\u1a20 012";
  114.45 +        expected = "\u1a20 \u1a90\u1a91\u1a92";
  114.46 +        checkResult("Range.TAI_THAM_THAM", ns, given, expected);
  114.47 +
  114.48 +        ns = getContextualShaper(EnumSet.of(Range.MEETEI_MAYEK));
  114.49 +        given = "\uabc0 012";
  114.50 +        expected = "\uabc0 \uabf0\uabf1\uabf2";
  114.51 +        checkResult("Range.MEETEI_MAYEK", ns, given, expected);
  114.52 +    }
  114.53 +
  114.54      private static void checkResult(String ranges, NumericShaper ns,
  114.55                                      String given, String expected) {
  114.56          char[] text = given.toCharArray();
   115.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   115.2 +++ b/test/java/beans/Introspector/Test6447751.java	Wed Dec 08 00:35:33 2010 -0800
   115.3 @@ -0,0 +1,100 @@
   115.4 +/*
   115.5 + * Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved.
   115.6 + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
   115.7 + *
   115.8 + * This code is free software; you can redistribute it and/or modify it
   115.9 + * under the terms of the GNU General Public License version 2 only, as
  115.10 + * published by the Free Software Foundation.
  115.11 + *
  115.12 + * This code is distributed in the hope that it will be useful, but WITHOUT
  115.13 + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
  115.14 + * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
  115.15 + * version 2 for more details (a copy is included in the LICENSE file that
  115.16 + * accompanied this code).
  115.17 + *
  115.18 + * You should have received a copy of the GNU General Public License version
  115.19 + * 2 along with this work; if not, write to the Free Software Foundation,
  115.20 + * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
  115.21 + *
  115.22 + * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
  115.23 + * or visit www.oracle.com if you need additional information or have any
  115.24 + * questions.
  115.25 + */
  115.26 +
  115.27 +/*
  115.28 + * @test
  115.29 + * @bug 6447751
  115.30 + * @summary Tests automatic search for customizers
  115.31 + * @author Sergey Malenkov
  115.32 + */
  115.33 +
  115.34 +import java.awt.Component;
  115.35 +import java.beans.Customizer;
  115.36 +import java.beans.Introspector;
  115.37 +import java.beans.IntrospectionException;
  115.38 +import java.beans.SimpleBeanInfo;
  115.39 +import java.beans.BeanDescriptor;
  115.40 +import java.beans.PropertyChangeListener;
  115.41 +
  115.42 +public class Test6447751 {
  115.43 +
  115.44 +    public static void main(String[] args) {
  115.45 +        test(Manual.class, AutomaticCustomizer.class);
  115.46 +        test(Illegal.class, null);
  115.47 +        test(Automatic.class, AutomaticCustomizer.class);
  115.48 +    }
  115.49 +
  115.50 +    private static void test(Class<?> type, Class<?> expected) {
  115.51 +        Class<?> actual;
  115.52 +        try {
  115.53 +            actual = Introspector.getBeanInfo(type).getBeanDescriptor().getCustomizerClass();
  115.54 +        }
  115.55 +        catch (IntrospectionException exception) {
  115.56 +            throw new Error("unexpected error", exception);
  115.57 +        }
  115.58 +        if (actual != expected) {
  115.59 +            StringBuilder sb = new StringBuilder();
  115.60 +            sb.append("bean ").append(type).append(": ");
  115.61 +            if (expected != null) {
  115.62 +                sb.append("expected ").append(expected);
  115.63 +                if (actual != null) {
  115.64 +                    sb.append(", but ");
  115.65 +                }
  115.66 +            }
  115.67 +            if (actual != null) {
  115.68 +                sb.append("found ").append(actual);
  115.69 +            }
  115.70 +            throw new Error(sb.toString());
  115.71 +        }
  115.72 +    }
  115.73 +
  115.74 +    public static class Automatic {
  115.75 +    }
  115.76 +    public static class AutomaticCustomizer extends Component implements Customizer {
  115.77 +        public void setObject(Object bean) {
  115.78 +            throw new UnsupportedOperationException();
  115.79 +        }
  115.80 +    }
  115.81 +
  115.82 +    public static class Illegal {
  115.83 +    }
  115.84 +    public static class IllegalCustomizer implements Customizer {
  115.85 +        public void setObject(Object bean) {
  115.86 +            throw new UnsupportedOperationException();
  115.87 +        }
  115.88 +        public void addPropertyChangeListener(PropertyChangeListener listener) {
  115.89 +            throw new UnsupportedOperationException();
  115.90 +        }
  115.91 +        public void removePropertyChangeListener(PropertyChangeListener listener) {
  115.92 +            throw new UnsupportedOperationException();
  115.93 +        }
  115.94 +    }
  115.95 +
  115.96 +    public static class Manual {
  115.97 +    }
  115.98 +    public static class ManualBeanInfo extends SimpleBeanInfo {
  115.99 +        public BeanDescriptor getBeanDescriptor() {
 115.100 +            return new BeanDescriptor(Manual.class, AutomaticCustomizer.class);
 115.101 +        }
 115.102 +    }
 115.103 +}
   116.1 --- a/test/java/lang/Character/CheckScript.java	Tue Nov 30 09:57:47 2010 -0800
   116.2 +++ b/test/java/lang/Character/CheckScript.java	Wed Dec 08 00:35:33 2010 -0800
   116.3 @@ -1,8 +1,7 @@
   116.4  /**
   116.5   * @test
   116.6 - * @bug 6945564
   116.7 + * @bug 6945564 6959267
   116.8   * @summary  Check that the j.l.Character.UnicodeScript
   116.9 - * @ignore don't run until #6903266 is integrated
  116.10   */
  116.11  
  116.12  import java.io.*;
  116.13 @@ -15,11 +14,15 @@
  116.14  
  116.15      public static void main(String[] args) throws Exception {
  116.16  
  116.17 -        if (args.length != 1) {
  116.18 -            System.out.println("java CharacterScript script.txt");
  116.19 -            System.exit(1);
  116.20 +        BufferedReader sbfr = null;
  116.21 +        if (args.length == 0) {
  116.22 +            sbfr = new BufferedReader(new FileReader(new File(System.getProperty("test.src", "."), "Scripts.txt")));
  116.23 +        } else if (args.length == 1) {
  116.24 +            sbfr = new BufferedReader(new FileReader(args[0]));
  116.25 +        } else {
  116.26 +            System.out.println("java CharacterScript Scripts.txt");
  116.27 +            throw new RuntimeException("Datafile name should be specified.");
  116.28          }
  116.29 -        BufferedReader sbfr = new BufferedReader(new FileReader(args[0]));
  116.30          Matcher m = Pattern.compile("(\\p{XDigit}+)(?:\\.{2}(\\p{XDigit}+))?\\s+;\\s+(\\w+)\\s+#.*").matcher("");
  116.31          String line = null;
  116.32          HashMap<String,ArrayList<Integer>> scripts = new HashMap<>();
   117.1 --- a/test/java/lang/Character/Scripts.txt	Tue Nov 30 09:57:47 2010 -0800
   117.2 +++ b/test/java/lang/Character/Scripts.txt	Wed Dec 08 00:35:33 2010 -0800
   117.3 @@ -1,8 +1,8 @@
   117.4 -# Scripts-5.2.0.txt
   117.5 -# Date: 2009-08-22, 04:58:43 GMT [MD]
   117.6 +# Scripts-6.0.0.txt
   117.7 +# Date: 2010-08-19, 00:48:47 GMT [MD]
   117.8  #
   117.9  # Unicode Character Database
  117.10 -# Copyright (c) 1991-2009 Unicode, Inc.
  117.11 +# Copyright (c) 1991-2010 Unicode, Inc.
  117.12  # For terms of use, see http://www.unicode.org/terms_of_use.html
  117.13  # For documentation, see http://www.unicode.org/reports/tr44/
  117.14  
  117.15 @@ -73,7 +73,7 @@
  117.16  02C2..02C5    ; Common # Sk   [4] MODIFIER LETTER LEFT ARROWHEAD..MODIFIER LETTER DOWN ARROWHEAD
  117.17  02C6..02D1    ; Common # Lm  [12] MODIFIER LETTER CIRCUMFLEX ACCENT..MODIFIER LETTER HALF TRIANGULAR COLON
  117.18  02D2..02DF    ; Common # Sk  [14] MODIFIER LETTER CENTRED RIGHT HALF RING..MODIFIER LETTER CROSS ACCENT
  117.19 -02E5..02EB    ; Common # Sk   [7] MODIFIER LETTER EXTRA-HIGH TONE BAR..MODIFIER LETTER YANG DEPARTING TONE MARK
  117.20 +02E5..02E9    ; Common # Sk   [5] MODIFIER LETTER EXTRA-HIGH TONE BAR..MODIFIER LETTER EXTRA-LOW TONE BAR
  117.21  02EC          ; Common # Lm       MODIFIER LETTER VOICING
  117.22  02ED          ; Common # Sk       MODIFIER LETTER UNASPIRATED
  117.23  02EE          ; Common # Lm       MODIFIER LETTER DOUBLE APOSTROPHE
  117.24 @@ -83,7 +83,6 @@
  117.25  0385          ; Common # Sk       GREEK DIALYTIKA TONOS
  117.26  0387          ; Common # Po       GREEK ANO TELEIA
  117.27  0589          ; Common # Po       ARMENIAN FULL STOP
  117.28 -0600..0603    ; Common # Cf   [4] ARABIC NUMBER SIGN..ARABIC SIGN SAFHA
  117.29  060C          ; Common # Po       ARABIC COMMA
  117.30  061B          ; Common # Po       ARABIC SEMICOLON
  117.31  061F          ; Common # Po       ARABIC QUESTION MARK
  117.32 @@ -92,7 +91,6 @@
  117.33  06DD          ; Common # Cf       ARABIC END OF AYAH
  117.34  0964..0965    ; Common # Po   [2] DEVANAGARI DANDA..DEVANAGARI DOUBLE DANDA
  117.35  0970          ; Common # Po       DEVANAGARI ABBREVIATION SIGN
  117.36 -0CF1..0CF2    ; Common # So   [2] KANNADA SIGN JIHVAMULIYA..KANNADA SIGN UPADHMANIYA
  117.37  0E3F          ; Common # Sc       THAI CURRENCY SYMBOL BAHT
  117.38  0FD5..0FD8    ; Common # So   [4] RIGHT-FACING SVASTI SIGN..LEFT-FACING SVASTI SIGN WITH DOTS
  117.39  10FB          ; Common # Po       GEORGIAN PARAGRAPH SEPARATOR
  117.40 @@ -148,7 +146,7 @@
  117.41  208A..208C    ; Common # Sm   [3] SUBSCRIPT PLUS SIGN..SUBSCRIPT EQUALS SIGN
  117.42  208D          ; Common # Ps       SUBSCRIPT LEFT PARENTHESIS
  117.43  208E          ; Common # Pe       SUBSCRIPT RIGHT PARENTHESIS
  117.44 -20A0..20B8    ; Common # Sc  [25] EURO-CURRENCY SIGN..TENGE SIGN
  117.45 +20A0..20B9    ; Common # Sc  [26] EURO-CURRENCY SIGN..INDIAN RUPEE SIGN
  117.46  2100..2101    ; Common # So   [2] ACCOUNT OF..ADDRESSED TO THE SUBJECT
  117.47  2102          ; Common # L&       DOUBLE-STRUCK CAPITAL C
  117.48  2103..2106    ; Common # So   [4] DEGREE CELSIUS..CADA UNA
  117.49 @@ -157,7 +155,8 @@
  117.50  210A..2113    ; Common # L&  [10] SCRIPT SMALL G..SCRIPT SMALL L
  117.51  2114          ; Common # So       L B BAR SYMBOL
  117.52  2115          ; Common # L&       DOUBLE-STRUCK CAPITAL N
  117.53 -2116..2118    ; Common # So   [3] NUMERO SIGN..SCRIPT CAPITAL P
  117.54 +2116..2117    ; Common # So   [2] NUMERO SIGN..SOUND RECORDING COPYRIGHT
  117.55 +2118          ; Common # Sm       SCRIPT CAPITAL P
  117.56  2119..211D    ; Common # L&   [5] DOUBLE-STRUCK CAPITAL P..DOUBLE-STRUCK CAPITAL R
  117.57  211E..2123    ; Common # So   [6] PRESCRIPTION TAKE..VERSICLE
  117.58  2124          ; Common # L&       DOUBLE-STRUCK CAPITAL Z
  117.59 @@ -213,7 +212,7 @@
  117.60  239B..23B3    ; Common # Sm  [25] LEFT PARENTHESIS UPPER HOOK..SUMMATION BOTTOM
  117.61  23B4..23DB    ; Common # So  [40] TOP SQUARE BRACKET..FUSE
  117.62  23DC..23E1    ; Common # Sm   [6] TOP PARENTHESIS..BOTTOM TORTOISE SHELL BRACKET
  117.63 -23E2..23E8    ; Common # So   [7] WHITE TRAPEZIUM..DECIMAL EXPONENT SYMBOL
  117.64 +23E2..23F3    ; Common # So  [18] WHITE TRAPEZIUM..HOURGLASS WITH FLOWING SAND
  117.65  2400..2426    ; Common # So  [39] SYMBOL FOR NULL..SYMBOL FOR SUBSTITUTE FORM TWO
  117.66  2440..244A    ; Common # So  [11] OCR HOOK..OCR DOUBLE BACKSLASH
  117.67  2460..249B    ; Common # No  [60] CIRCLED DIGIT ONE..NUMBER TWENTY FULL STOP
  117.68 @@ -227,18 +226,8 @@
  117.69  25F8..25FF    ; Common # Sm   [8] UPPER LEFT TRIANGLE..LOWER RIGHT TRIANGLE
  117.70  2600..266E    ; Common # So [111] BLACK SUN WITH RAYS..MUSIC NATURAL SIGN
  117.71  266F          ; Common # Sm       MUSIC SHARP SIGN
  117.72 -2670..26CD    ; Common # So  [94] WEST SYRIAC CROSS..DISABLED CAR
  117.73 -26CF..26E1    ; Common # So  [19] PICK..RESTRICTED LEFT ENTRY-2
  117.74 -26E3          ; Common # So       HEAVY CIRCLE WITH STROKE AND TWO DOTS ABOVE
  117.75 -26E8..26FF    ; Common # So  [24] BLACK CROSS ON SHIELD..WHITE FLAG WITH HORIZONTAL MIDDLE BLACK STRIPE
  117.76 -2701..2704    ; Common # So   [4] UPPER BLADE SCISSORS..WHITE SCISSORS
  117.77 -2706..2709    ; Common # So   [4] TELEPHONE LOCATION SIGN..ENVELOPE
  117.78 -270C..2727    ; Common # So  [28] VICTORY HAND..WHITE FOUR POINTED STAR
  117.79 -2729..274B    ; Common # So  [35] STRESS OUTLINED WHITE STAR..HEAVY EIGHT TEARDROP-SPOKED PROPELLER ASTERISK
  117.80 -274D          ; Common # So       SHADOWED WHITE CIRCLE
  117.81 -274F..2752    ; Common # So   [4] LOWER RIGHT DROP-SHADOWED WHITE SQUARE..UPPER RIGHT SHADOWED WHITE SQUARE
  117.82 -2756..275E    ; Common # So   [9] BLACK DIAMOND MINUS WHITE X..HEAVY DOUBLE COMMA QUOTATION MARK ORNAMENT
  117.83 -2761..2767    ; Common # So   [7] CURVED STEM PARAGRAPH SIGN ORNAMENT..ROTATED FLORAL HEART BULLET
  117.84 +2670..26FF    ; Common # So [144] WEST SYRIAC CROSS..WHITE FLAG WITH HORIZONTAL MIDDLE BLACK STRIPE
  117.85 +2701..2767    ; Common # So [103] UPPER BLADE SCISSORS..ROTATED FLORAL HEART BULLET
  117.86  2768          ; Common # Ps       MEDIUM LEFT PARENTHESIS ORNAMENT
  117.87  2769          ; Common # Pe       MEDIUM RIGHT PARENTHESIS ORNAMENT
  117.88  276A          ; Common # Ps       MEDIUM FLATTENED LEFT PARENTHESIS ORNAMENT
  117.89 @@ -254,15 +243,13 @@
  117.90  2774          ; Common # Ps       MEDIUM LEFT CURLY BRACKET ORNAMENT
  117.91  2775          ; Common # Pe       MEDIUM RIGHT CURLY BRACKET ORNAMENT
  117.92  2776..2793    ; Common # No  [30] DINGBAT NEGATIVE CIRCLED DIGIT ONE..DINGBAT NEGATIVE CIRCLED SANS-SERIF NUMBER TEN
  117.93 -2794          ; Common # So       HEAVY WIDE-HEADED RIGHTWARDS ARROW
  117.94 -2798..27AF    ; Common # So  [24] HEAVY SOUTH EAST ARROW..NOTCHED LOWER RIGHT-SHADOWED WHITE RIGHTWARDS ARROW
  117.95 -27B1..27BE    ; Common # So  [14] NOTCHED UPPER RIGHT-SHADOWED WHITE RIGHTWARDS ARROW..OPEN-OUTLINED RIGHTWARDS ARROW
  117.96 +2794..27BF    ; Common # So  [44] HEAVY WIDE-HEADED RIGHTWARDS ARROW..DOUBLE CURLY LOOP
  117.97  27C0..27C4    ; Common # Sm   [5] THREE DIMENSIONAL ANGLE..OPEN SUPERSET
  117.98  27C5          ; Common # Ps       LEFT S-SHAPED BAG DELIMITER
  117.99  27C6          ; Common # Pe       RIGHT S-SHAPED BAG DELIMITER
 117.100  27C7..27CA    ; Common # Sm   [4] OR WITH DOT INSIDE..VERTICAL BAR WITH HORIZONTAL STROKE
 117.101  27CC          ; Common # Sm       LONG DIVISION
 117.102 -27D0..27E5    ; Common # Sm  [22] WHITE DIAMOND WITH CENTRED DOT..WHITE SQUARE WITH RIGHTWARDS TICK
 117.103 +27CE..27E5    ; Common # Sm  [24] SQUARED LOGICAL AND..WHITE SQUARE WITH RIGHTWARDS TICK
 117.104  27E6          ; Common # Ps       MATHEMATICAL LEFT WHITE SQUARE BRACKET
 117.105  27E7          ; Common # Pe       MATHEMATICAL RIGHT WHITE SQUARE BRACKET
 117.106  27E8          ; Common # Ps       MATHEMATICAL LEFT ANGLE BRACKET
 117.107 @@ -555,27 +542,51 @@
 117.108  1D7CE..1D7FF  ; Common # Nd  [50] MATHEMATICAL BOLD DIGIT ZERO..MATHEMATICAL MONOSPACE DIGIT NINE
 117.109  1F000..1F02B  ; Common # So  [44] MAHJONG TILE EAST WIND..MAHJONG TILE BACK
 117.110  1F030..1F093  ; Common # So [100] DOMINO TILE HORIZONTAL BACK..DOMINO TILE VERTICAL-06-06
 117.111 +1F0A0..1F0AE  ; Common # So  [15] PLAYING CARD BACK..PLAYING CARD KING OF SPADES
 117.112 +1F0B1..1F0BE  ; Common # So  [14] PLAYING CARD ACE OF HEARTS..PLAYING CARD KING OF HEARTS
 117.113 +1F0C1..1F0CF  ; Common # So  [15] PLAYING CARD ACE OF DIAMONDS..PLAYING CARD BLACK JOKER
 117.114 +1F0D1..1F0DF  ; Common # So  [15] PLAYING CARD ACE OF CLUBS..PLAYING CARD WHITE JOKER
 117.115  1F100..1F10A  ; Common # No  [11] DIGIT ZERO FULL STOP..DIGIT NINE COMMA
 117.116  1F110..1F12E  ; Common # So  [31] PARENTHESIZED LATIN CAPITAL LETTER A..CIRCLED WZ
 117.117 -1F131         ; Common # So       SQUARED LATIN CAPITAL LETTER B
 117.118 -1F13D         ; Common # So       SQUARED LATIN CAPITAL LETTER N
 117.119 -1F13F         ; Common # So       SQUARED LATIN CAPITAL LETTER P
 117.120 -1F142         ; Common # So       SQUARED LATIN CAPITAL LETTER S
 117.121 -1F146         ; Common # So       SQUARED LATIN CAPITAL LETTER W
 117.122 -1F14A..1F14E  ; Common # So   [5] SQUARED HV..SQUARED PPV
 117.123 -1F157         ; Common # So       NEGATIVE CIRCLED LATIN CAPITAL LETTER H
 117.124 -1F15F         ; Common # So       NEGATIVE CIRCLED LATIN CAPITAL LETTER P
 117.125 -1F179         ; Common # So       NEGATIVE SQUARED LATIN CAPITAL LETTER J
 117.126 -1F17B..1F17C  ; Common # So   [2] NEGATIVE SQUARED LATIN CAPITAL LETTER L..NEGATIVE SQUARED LATIN CAPITAL LETTER M
 117.127 -1F17F         ; Common # So       NEGATIVE SQUARED LATIN CAPITAL LETTER P
 117.128 -1F18A..1F18D  ; Common # So   [4] CROSSED NEGATIVE SQUARED LATIN CAPITAL LETTER P..NEGATIVE SQUARED SA
 117.129 -1F190         ; Common # So       SQUARE DJ
 117.130 -1F210..1F231  ; Common # So  [34] SQUARED CJK UNIFIED IDEOGRAPH-624B..SQUARED CJK UNIFIED IDEOGRAPH-6253
 117.131 +1F130..1F169  ; Common # So  [58] SQUARED LATIN CAPITAL LETTER A..NEGATIVE CIRCLED LATIN CAPITAL LETTER Z
 117.132 +1F170..1F19A  ; Common # So  [43] NEGATIVE SQUARED LATIN CAPITAL LETTER A..SQUARED VS
 117.133 +1F1E6..1F1FF  ; Common # So  [26] REGIONAL INDICATOR SYMBOL LETTER A..REGIONAL INDICATOR SYMBOL LETTER Z
 117.134 +1F201..1F202  ; Common # So   [2] SQUARED KATAKANA KOKO..SQUARED KATAKANA SA
 117.135 +1F210..1F23A  ; Common # So  [43] SQUARED CJK UNIFIED IDEOGRAPH-624B..SQUARED CJK UNIFIED IDEOGRAPH-55B6
 117.136  1F240..1F248  ; Common # So   [9] TORTOISE SHELL BRACKETED CJK UNIFIED IDEOGRAPH-672C..TORTOISE SHELL BRACKETED CJK UNIFIED IDEOGRAPH-6557
 117.137 +1F250..1F251  ; Common # So   [2] CIRCLED IDEOGRAPH ADVANTAGE..CIRCLED IDEOGRAPH ACCEPT
 117.138 +1F300..1F320  ; Common # So  [33] CYCLONE..SHOOTING STAR
 117.139 +1F330..1F335  ; Common # So   [6] CHESTNUT..CACTUS
 117.140 +1F337..1F37C  ; Common # So  [70] TULIP..BABY BOTTLE
 117.141 +1F380..1F393  ; Common # So  [20] RIBBON..GRADUATION CAP
 117.142 +1F3A0..1F3C4  ; Common # So  [37] CAROUSEL HORSE..SURFER
 117.143 +1F3C6..1F3CA  ; Common # So   [5] TROPHY..SWIMMER
 117.144 +1F3E0..1F3F0  ; Common # So  [17] HOUSE BUILDING..EUROPEAN CASTLE
 117.145 +1F400..1F43E  ; Common # So  [63] RAT..PAW PRINTS
 117.146 +1F440         ; Common # So       EYES
 117.147 +1F442..1F4F7  ; Common # So [182] EAR..CAMERA
 117.148 +1F4F9..1F4FC  ; Common # So   [4] VIDEO CAMERA..VIDEOCASSETTE
 117.149 +1F500..1F53D  ; Common # So  [62] TWISTED RIGHTWARDS ARROWS..DOWN-POINTING SMALL RED TRIANGLE
 117.150 +1F550..1F567  ; Common # So  [24] CLOCK FACE ONE OCLOCK..CLOCK FACE TWELVE-THIRTY
 117.151 +1F5FB..1F5FF  ; Common # So   [5] MOUNT FUJI..MOYAI
 117.152 +1F601..1F610  ; Common # So  [16] GRINNING FACE WITH SMILING EYES..NEUTRAL FACE
 117.153 +1F612..1F614  ; Common # So   [3] UNAMUSED FACE..PENSIVE FACE
 117.154 +1F616         ; Common # So       CONFOUNDED FACE
 117.155 +1F618         ; Common # So       FACE THROWING A KISS
 117.156 +1F61A         ; Common # So       KISSING FACE WITH CLOSED EYES
 117.157 +1F61C..1F61E  ; Common # So   [3] FACE WITH STUCK-OUT TONGUE AND WINKING EYE..DISAPPOINTED FACE
 117.158 +1F620..1F625  ; Common # So   [6] ANGRY FACE..DISAPPOINTED BUT RELIEVED FACE
 117.159 +1F628..1F62B  ; Common # So   [4] FEARFUL FACE..TIRED FACE
 117.160 +1F62D         ; Common # So       LOUDLY CRYING FACE
 117.161 +1F630..1F633  ; Common # So   [4] FACE WITH OPEN MOUTH AND COLD SWEAT..FLUSHED FACE
 117.162 +1F635..1F640  ; Common # So  [12] DIZZY FACE..WEARY CAT FACE
 117.163 +1F645..1F64F  ; Common # So  [11] FACE WITH NO GOOD GESTURE..PERSON WITH FOLDED HANDS
 117.164 +1F680..1F6C5  ; Common # So  [70] ROCKET..LEFT LUGGAGE
 117.165 +1F700..1F773  ; Common # So [116] ALCHEMICAL SYMBOL FOR QUINTESSENCE..ALCHEMICAL SYMBOL FOR HALF OUNCE
 117.166  E0001         ; Common # Cf       LANGUAGE TAG
 117.167  E0020..E007F  ; Common # Cf  [96] TAG SPACE..CANCEL TAG
 117.168  
 117.169 -# Total code points: 5395
 117.170 +# Total code points: 6379
 117.171  
 117.172  # ================================================
 117.173  
 117.174 @@ -603,7 +614,7 @@
 117.175  1E00..1EFF    ; Latin # L& [256] LATIN CAPITAL LETTER A WITH RING BELOW..LATIN SMALL LETTER Y WITH LOOP
 117.176  2071          ; Latin # Lm       SUPERSCRIPT LATIN SMALL LETTER I
 117.177  207F          ; Latin # Lm       SUPERSCRIPT LATIN SMALL LETTER N
 117.178 -2090..2094    ; Latin # Lm   [5] LATIN SUBSCRIPT SMALL LETTER A..LATIN SUBSCRIPT SMALL LETTER SCHWA
 117.179 +2090..209C    ; Latin # Lm  [13] LATIN SUBSCRIPT SMALL LETTER A..LATIN SUBSCRIPT SMALL LETTER T
 117.180  212A..212B    ; Latin # L&   [2] KELVIN SIGN..ANGSTROM SIGN
 117.181  2132          ; Latin # L&       TURNED CAPITAL F
 117.182  214E          ; Latin # L&       TURNED SMALL F
 117.183 @@ -616,13 +627,16 @@
 117.184  A722..A76F    ; Latin # L&  [78] LATIN CAPITAL LETTER EGYPTOLOGICAL ALEF..LATIN SMALL LETTER CON
 117.185  A770          ; Latin # Lm       MODIFIER LETTER US
 117.186  A771..A787    ; Latin # L&  [23] LATIN SMALL LETTER DUM..LATIN SMALL LETTER INSULAR T
 117.187 -A78B..A78C    ; Latin # L&   [2] LATIN CAPITAL LETTER SALTILLO..LATIN SMALL LETTER SALTILLO
 117.188 +A78B..A78E    ; Latin # L&   [4] LATIN CAPITAL LETTER SALTILLO..LATIN SMALL LETTER L WITH RETROFLEX HOOK AND BELT
 117.189 +A790..A791    ; Latin # L&   [2] LATIN CAPITAL LETTER N WITH DESCENDER..LATIN SMALL LETTER N WITH DESCENDER
 117.190 +A7A0..A7A9    ; Latin # L&  [10] LATIN CAPITAL LETTER G WITH OBLIQUE STROKE..LATIN SMALL LETTER S WITH OBLIQUE STROKE
 117.191 +A7FA          ; Latin # L&       LATIN LETTER SMALL CAPITAL TURNED M
 117.192  A7FB..A7FF    ; Latin # Lo   [5] LATIN EPIGRAPHIC LETTER REVERSED F..LATIN EPIGRAPHIC LETTER ARCHAIC M
 117.193  FB00..FB06    ; Latin # L&   [7] LATIN SMALL LIGATURE FF..LATIN SMALL LIGATURE ST
 117.194  FF21..FF3A    ; Latin # L&  [26] FULLWIDTH LATIN CAPITAL LETTER A..FULLWIDTH LATIN CAPITAL LETTER Z
 117.195  FF41..FF5A    ; Latin # L&  [26] FULLWIDTH LATIN SMALL LETTER A..FULLWIDTH LATIN SMALL LETTER Z
 117.196  
 117.197 -# Total code points: 1244
 117.198 +# Total code points: 1267
 117.199  
 117.200  # ================================================
 117.201  
 117.202 @@ -687,12 +701,11 @@
 117.203  0483..0484    ; Cyrillic # Mn   [2] COMBINING CYRILLIC TITLO..COMBINING CYRILLIC PALATALIZATION
 117.204  0487          ; Cyrillic # Mn       COMBINING CYRILLIC POKRYTIE
 117.205  0488..0489    ; Cyrillic # Me   [2] COMBINING CYRILLIC HUNDRED THOUSANDS SIGN..COMBINING CYRILLIC MILLIONS SIGN
 117.206 -048A..0525    ; Cyrillic # L& [156] CYRILLIC CAPITAL LETTER SHORT I WITH TAIL..CYRILLIC SMALL LETTER PE WITH DESCENDER
 117.207 +048A..0527    ; Cyrillic # L& [158] CYRILLIC CAPITAL LETTER SHORT I WITH TAIL..CYRILLIC SMALL LETTER SHHA WITH DESCENDER
 117.208  1D2B          ; Cyrillic # L&       CYRILLIC LETTER SMALL CAPITAL EL
 117.209  1D78          ; Cyrillic # Lm       MODIFIER LETTER CYRILLIC EN
 117.210  2DE0..2DFF    ; Cyrillic # Mn  [32] COMBINING CYRILLIC LETTER BE..COMBINING CYRILLIC LETTER IOTIFIED BIG YUS
 117.211 -A640..A65F    ; Cyrillic # L&  [32] CYRILLIC CAPITAL LETTER ZEMLYA..CYRILLIC SMALL LETTER YN
 117.212 -A662..A66D    ; Cyrillic # L&  [12] CYRILLIC CAPITAL LETTER SOFT DE..CYRILLIC SMALL LETTER DOUBLE MONOCULAR O
 117.213 +A640..A66D    ; Cyrillic # L&  [46] CYRILLIC CAPITAL LETTER ZEMLYA..CYRILLIC SMALL LETTER DOUBLE MONOCULAR O
 117.214  A66E          ; Cyrillic # Lo       CYRILLIC LETTER MULTIOCULAR O
 117.215  A66F          ; Cyrillic # Mn       COMBINING CYRILLIC VZMET
 117.216  A670..A672    ; Cyrillic # Me   [3] COMBINING CYRILLIC TEN MILLIONS SIGN..COMBINING CYRILLIC THOUSAND MILLIONS SIGN
 117.217 @@ -702,7 +715,7 @@
 117.218  A67F          ; Cyrillic # Lm       CYRILLIC PAYEROK
 117.219  A680..A697    ; Cyrillic # L&  [24] CYRILLIC CAPITAL LETTER DWE..CYRILLIC SMALL LETTER SHWE
 117.220  
 117.221 -# Total code points: 404
 117.222 +# Total code points: 408
 117.223  
 117.224  # ================================================
 117.225  
 117.226 @@ -744,6 +757,7 @@
 117.227  
 117.228  # ================================================
 117.229  
 117.230 +0600..0603    ; Arabic # Cf   [4] ARABIC NUMBER SIGN..ARABIC SIGN SAFHA
 117.231  0606..0608    ; Arabic # Sm   [3] ARABIC-INDIC CUBE ROOT..ARABIC RAY
 117.232  0609..060A    ; Arabic # Po   [2] ARABIC-INDIC PER MILLE SIGN..ARABIC-INDIC PER TEN THOUSAND SIGN
 117.233  060B          ; Arabic # Sc       AFGHANI SIGN
 117.234 @@ -751,7 +765,7 @@
 117.235  060E..060F    ; Arabic # So   [2] ARABIC POETIC VERSE SIGN..ARABIC SIGN MISRA
 117.236  0610..061A    ; Arabic # Mn  [11] ARABIC SIGN SALLALLAHOU ALAYHE WASSALLAM..ARABIC SMALL KASRA
 117.237  061E          ; Arabic # Po       ARABIC TRIPLE DOT PUNCTUATION MARK
 117.238 -0621..063F    ; Arabic # Lo  [31] ARABIC LETTER HAMZA..ARABIC LETTER FARSI YEH WITH THREE DOTS ABOVE
 117.239 +0620..063F    ; Arabic # Lo  [32] ARABIC LETTER KASHMIRI YEH..ARABIC LETTER FARSI YEH WITH THREE DOTS ABOVE
 117.240  0641..064A    ; Arabic # Lo  [10] ARABIC LETTER FEH..ARABIC LETTER YEH
 117.241  0656..065E    ; Arabic # Mn   [9] ARABIC SUBSCRIPT ALEF..ARABIC FATHA WITH TWO DOTS
 117.242  066A..066D    ; Arabic # Po   [4] ARABIC PERCENT SIGN..ARABIC FIVE POINTED STAR
 117.243 @@ -760,7 +774,7 @@
 117.244  06D4          ; Arabic # Po       ARABIC FULL STOP
 117.245  06D5          ; Arabic # Lo       ARABIC LETTER AE
 117.246  06D6..06DC    ; Arabic # Mn   [7] ARABIC SMALL HIGH LIGATURE SAD WITH LAM WITH ALEF MAKSURA..ARABIC SMALL HIGH SEEN
 117.247 -06DE          ; Arabic # Me       ARABIC START OF RUB EL HIZB
 117.248 +06DE          ; Arabic # So       ARABIC START OF RUB EL HIZB
 117.249  06DF..06E4    ; Arabic # Mn   [6] ARABIC SMALL HIGH ROUNDED ZERO..ARABIC SMALL HIGH MADDA
 117.250  06E5..06E6    ; Arabic # Lm   [2] ARABIC SMALL WAW..ARABIC SMALL YEH
 117.251  06E7..06E8    ; Arabic # Mn   [2] ARABIC SMALL HIGH YEH..ARABIC SMALL HIGH NOON
 117.252 @@ -773,6 +787,7 @@
 117.253  06FF          ; Arabic # Lo       ARABIC LETTER HEH WITH INVERTED V
 117.254  0750..077F    ; Arabic # Lo  [48] ARABIC LETTER BEH WITH THREE DOTS HORIZONTALLY BELOW..ARABIC LETTER KAF WITH TWO DOTS ABOVE
 117.255  FB50..FBB1    ; Arabic # Lo  [98] ARABIC LETTER ALEF WASLA ISOLATED FORM..ARABIC LETTER YEH BARREE WITH HAMZA ABOVE FINAL FORM
 117.256 +FBB2..FBC1    ; Arabic # Sk  [16] ARABIC SYMBOL DOT ABOVE..ARABIC SYMBOL SMALL TAH BELOW
 117.257  FBD3..FD3D    ; Arabic # Lo [363] ARABIC LETTER NG ISOLATED FORM..ARABIC LIGATURE ALEF WITH FATHATAN ISOLATED FORM
 117.258  FD50..FD8F    ; Arabic # Lo  [64] ARABIC LIGATURE TEH WITH JEEM WITH MEEM INITIAL FORM..ARABIC LIGATURE MEEM WITH KHAH WITH MEEM INITIAL FORM
 117.259  FD92..FDC7    ; Arabic # Lo  [54] ARABIC LIGATURE MEEM WITH JEEM WITH KHAH INITIAL FORM..ARABIC LIGATURE NOON WITH JEEM WITH YEH FINAL FORM
 117.260 @@ -782,7 +797,7 @@
 117.261  FE76..FEFC    ; Arabic # Lo [135] ARABIC FATHA ISOLATED FORM..ARABIC LIGATURE LAM WITH ALEF FINAL FORM
 117.262  10E60..10E7E  ; Arabic # No  [31] RUMI DIGIT ONE..RUMI FRACTION TWO THIRDS
 117.263  
 117.264 -# Total code points: 1030
 117.265 +# Total code points: 1051
 117.266  
 117.267  # ================================================
 117.268  
 117.269 @@ -809,27 +824,29 @@
 117.270  0900..0902    ; Devanagari # Mn   [3] DEVANAGARI SIGN INVERTED CANDRABINDU..DEVANAGARI SIGN ANUSVARA
 117.271  0903          ; Devanagari # Mc       DEVANAGARI SIGN VISARGA
 117.272  0904..0939    ; Devanagari # Lo  [54] DEVANAGARI LETTER SHORT A..DEVANAGARI LETTER HA
 117.273 +093A          ; Devanagari # Mn       DEVANAGARI VOWEL SIGN OE
 117.274 +093B          ; Devanagari # Mc       DEVANAGARI VOWEL SIGN OOE
 117.275  093C          ; Devanagari # Mn       DEVANAGARI SIGN NUKTA
 117.276  093D          ; Devanagari # Lo       DEVANAGARI SIGN AVAGRAHA
 117.277  093E..0940    ; Devanagari # Mc   [3] DEVANAGARI VOWEL SIGN AA..DEVANAGARI VOWEL SIGN II
 117.278  0941..0948    ; Devanagari # Mn   [8] DEVANAGARI VOWEL SIGN U..DEVANAGARI VOWEL SIGN AI
 117.279  0949..094C    ; Devanagari # Mc   [4] DEVANAGARI VOWEL SIGN CANDRA O..DEVANAGARI VOWEL SIGN AU
 117.280  094D          ; Devanagari # Mn       DEVANAGARI SIGN VIRAMA
 117.281 -094E          ; Devanagari # Mc       DEVANAGARI VOWEL SIGN PRISHTHAMATRA E
 117.282 +094E..094F    ; Devanagari # Mc   [2] DEVANAGARI VOWEL SIGN PRISHTHAMATRA E..DEVANAGARI VOWEL SIGN AW
 117.283  0950          ; Devanagari # Lo       DEVANAGARI OM
 117.284 -0953..0955    ; Devanagari # Mn   [3] DEVANAGARI GRAVE ACCENT..DEVANAGARI VOWEL SIGN CANDRA LONG E
 117.285 +0953..0957    ; Devanagari # Mn   [5] DEVANAGARI GRAVE ACCENT..DEVANAGARI VOWEL SIGN UUE
 117.286  0958..0961    ; Devanagari # Lo  [10] DEVANAGARI LETTER QA..DEVANAGARI LETTER VOCALIC LL
 117.287  0962..0963    ; Devanagari # Mn   [2] DEVANAGARI VOWEL SIGN VOCALIC L..DEVANAGARI VOWEL SIGN VOCALIC LL
 117.288  0966..096F    ; Devanagari # Nd  [10] DEVANAGARI DIGIT ZERO..DEVANAGARI DIGIT NINE
 117.289  0971          ; Devanagari # Lm       DEVANAGARI SIGN HIGH SPACING DOT
 117.290 -0972          ; Devanagari # Lo       DEVANAGARI LETTER CANDRA A
 117.291 +0972..0977    ; Devanagari # Lo   [6] DEVANAGARI LETTER CANDRA A..DEVANAGARI LETTER UUE
 117.292  0979..097F    ; Devanagari # Lo   [7] DEVANAGARI LETTER ZHA..DEVANAGARI LETTER BBA
 117.293  A8E0..A8F1    ; Devanagari # Mn  [18] COMBINING DEVANAGARI DIGIT ZERO..COMBINING DEVANAGARI SIGN AVAGRAHA
 117.294  A8F2..A8F7    ; Devanagari # Lo   [6] DEVANAGARI SIGN SPACING CANDRABINDU..DEVANAGARI SIGN CANDRABINDU AVAGRAHA
 117.295  A8F8..A8FA    ; Devanagari # Po   [3] DEVANAGARI SIGN PUSHPIKA..DEVANAGARI CARET
 117.296  A8FB          ; Devanagari # Lo       DEVANAGARI HEADSTROKE
 117.297  
 117.298 -# Total code points: 140
 117.299 +# Total code points: 150
 117.300  
 117.301  # ================================================
 117.302  
 117.303 @@ -941,8 +958,9 @@
 117.304  0B66..0B6F    ; Oriya # Nd  [10] ORIYA DIGIT ZERO..ORIYA DIGIT NINE
 117.305  0B70          ; Oriya # So       ORIYA ISSHAR
 117.306  0B71          ; Oriya # Lo       ORIYA LETTER WA
 117.307 +0B72..0B77    ; Oriya # No   [6] ORIYA FRACTION ONE QUARTER..ORIYA FRACTION THREE SIXTEENTHS
 117.308  
 117.309 -# Total code points: 84
 117.310 +# Total code points: 90
 117.311  
 117.312  # ================================================
 117.313  
 117.314 @@ -1018,22 +1036,23 @@
 117.315  0CE0..0CE1    ; Kannada # Lo   [2] KANNADA LETTER VOCALIC RR..KANNADA LETTER VOCALIC LL
 117.316  0CE2..0CE3    ; Kannada # Mn   [2] KANNADA VOWEL SIGN VOCALIC L..KANNADA VOWEL SIGN VOCALIC LL
 117.317  0CE6..0CEF    ; Kannada # Nd  [10] KANNADA DIGIT ZERO..KANNADA DIGIT NINE
 117.318 +0CF1..0CF2    ; Kannada # Lo   [2] KANNADA SIGN JIHVAMULIYA..KANNADA SIGN UPADHMANIYA
 117.319  
 117.320 -# Total code points: 84
 117.321 +# Total code points: 86
 117.322  
 117.323  # ================================================
 117.324  
 117.325  0D02..0D03    ; Malayalam # Mc   [2] MALAYALAM SIGN ANUSVARA..MALAYALAM SIGN VISARGA
 117.326  0D05..0D0C    ; Malayalam # Lo   [8] MALAYALAM LETTER A..MALAYALAM LETTER VOCALIC L
 117.327  0D0E..0D10    ; Malayalam # Lo   [3] MALAYALAM LETTER E..MALAYALAM LETTER AI
 117.328 -0D12..0D28    ; Malayalam # Lo  [23] MALAYALAM LETTER O..MALAYALAM LETTER NA
 117.329 -0D2A..0D39    ; Malayalam # Lo  [16] MALAYALAM LETTER PA..MALAYALAM LETTER HA
 117.330 +0D12..0D3A    ; Malayalam # Lo  [41] MALAYALAM LETTER O..MALAYALAM LETTER TTTA
 117.331  0D3D          ; Malayalam # Lo       MALAYALAM SIGN AVAGRAHA
 117.332  0D3E..0D40    ; Malayalam # Mc   [3] MALAYALAM VOWEL SIGN AA..MALAYALAM VOWEL SIGN II
 117.333  0D41..0D44    ; Malayalam # Mn   [4] MALAYALAM VOWEL SIGN U..MALAYALAM VOWEL SIGN VOCALIC RR
 117.334  0D46..0D48    ; Malayalam # Mc   [3] MALAYALAM VOWEL SIGN E..MALAYALAM VOWEL SIGN AI
 117.335  0D4A..0D4C    ; Malayalam # Mc   [3] MALAYALAM VOWEL SIGN O..MALAYALAM VOWEL SIGN AU
 117.336  0D4D          ; Malayalam # Mn       MALAYALAM SIGN VIRAMA
 117.337 +0D4E          ; Malayalam # Lo       MALAYALAM LETTER DOT REPH
 117.338  0D57          ; Malayalam # Mc       MALAYALAM AU LENGTH MARK
 117.339  0D60..0D61    ; Malayalam # Lo   [2] MALAYALAM LETTER VOCALIC RR..MALAYALAM LETTER VOCALIC LL
 117.340  0D62..0D63    ; Malayalam # Mn   [2] MALAYALAM VOWEL SIGN VOCALIC L..MALAYALAM VOWEL SIGN VOCALIC LL
 117.341 @@ -1042,7 +1061,7 @@
 117.342  0D79          ; Malayalam # So       MALAYALAM DATE MARK
 117.343  0D7A..0D7F    ; Malayalam # Lo   [6] MALAYALAM LETTER CHILLU NN..MALAYALAM LETTER CHILLU K
 117.344  
 117.345 -# Total code points: 95
 117.346 +# Total code points: 98
 117.347  
 117.348  # ================================================
 117.349  
 117.350 @@ -1132,16 +1151,17 @@
 117.351  0F80..0F84    ; Tibetan # Mn   [5] TIBETAN VOWEL SIGN REVERSED I..TIBETAN MARK HALANTA
 117.352  0F85          ; Tibetan # Po       TIBETAN MARK PALUTA
 117.353  0F86..0F87    ; Tibetan # Mn   [2] TIBETAN SIGN LCI RTAGS..TIBETAN SIGN YANG RTAGS
 117.354 -0F88..0F8B    ; Tibetan # Lo   [4] TIBETAN SIGN LCE TSA CAN..TIBETAN SIGN GRU MED RGYINGS
 117.355 -0F90..0F97    ; Tibetan # Mn   [8] TIBETAN SUBJOINED LETTER KA..TIBETAN SUBJOINED LETTER JA
 117.356 +0F88..0F8C    ; Tibetan # Lo   [5] TIBETAN SIGN LCE TSA CAN..TIBETAN SIGN INVERTED MCHU CAN
 117.357 +0F8D..0F97    ; Tibetan # Mn  [11] TIBETAN SUBJOINED SIGN LCE TSA CAN..TIBETAN SUBJOINED LETTER JA
 117.358  0F99..0FBC    ; Tibetan # Mn  [36] TIBETAN SUBJOINED LETTER NYA..TIBETAN SUBJOINED LETTER FIXED-FORM RA
 117.359  0FBE..0FC5    ; Tibetan # So   [8] TIBETAN KU RU KHA..TIBETAN SYMBOL RDO RJE
 117.360  0FC6          ; Tibetan # Mn       TIBETAN SYMBOL PADMA GDAN
 117.361  0FC7..0FCC    ; Tibetan # So   [6] TIBETAN SYMBOL RDO RJE RGYA GRAM..TIBETAN SYMBOL NOR BU BZHI -KHYIL
 117.362  0FCE..0FCF    ; Tibetan # So   [2] TIBETAN SIGN RDEL NAG RDEL DKAR..TIBETAN SIGN RDEL NAG GSUM
 117.363  0FD0..0FD4    ; Tibetan # Po   [5] TIBETAN MARK BSKA- SHOG GI MGO RGYAN..TIBETAN MARK CLOSING BRDA RNYING YIG MGO SGAB MA
 117.364 +0FD9..0FDA    ; Tibetan # Po   [2] TIBETAN MARK LEADING MCHAN RTAGS..TIBETAN MARK TRAILING MCHAN RTAGS
 117.365  
 117.366 -# Total code points: 201
 117.367 +# Total code points: 207
 117.368  
 117.369  # ================================================
 117.370  
 117.371 @@ -1201,6 +1221,7 @@
 117.372  # ================================================
 117.373  
 117.374  1100..11FF    ; Hangul # Lo [256] HANGUL CHOSEONG KIYEOK..HANGUL JONGSEONG SSANGNIEUN
 117.375 +302E..302F    ; Hangul # Mn   [2] HANGUL SINGLE DOT TONE MARK..HANGUL DOUBLE DOT TONE MARK
 117.376  3131..318E    ; Hangul # Lo  [94] HANGUL LETTER KIYEOK..HANGUL LETTER ARAEAE
 117.377  3200..321E    ; Hangul # So  [31] PARENTHESIZED HANGUL KIYEOK..PARENTHESIZED KOREAN CHARACTER O HU
 117.378  3260..327E    ; Hangul # So  [31] CIRCLED HANGUL KIYEOK..CIRCLED HANGUL IEUNG U
 117.379 @@ -1214,7 +1235,7 @@
 117.380  FFD2..FFD7    ; Hangul # Lo   [6] HALFWIDTH HANGUL LETTER YO..HALFWIDTH HANGUL LETTER YU
 117.381  FFDA..FFDC    ; Hangul # Lo   [3] HALFWIDTH HANGUL LETTER EU..HALFWIDTH HANGUL LETTER I
 117.382  
 117.383 -# Total code points: 11737
 117.384 +# Total code points: 11739
 117.385  
 117.386  # ================================================
 117.387  
 117.388 @@ -1234,7 +1255,7 @@
 117.389  12D8..1310    ; Ethiopic # Lo  [57] ETHIOPIC SYLLABLE ZA..ETHIOPIC SYLLABLE GWA
 117.390  1312..1315    ; Ethiopic # Lo   [4] ETHIOPIC SYLLABLE GWI..ETHIOPIC SYLLABLE GWE
 117.391  1318..135A    ; Ethiopic # Lo  [67] ETHIOPIC SYLLABLE GGA..ETHIOPIC SYLLABLE FYA
 117.392 -135F          ; Ethiopic # Mn       ETHIOPIC COMBINING GEMINATION MARK
 117.393 +135D..135F    ; Ethiopic # Mn   [3] ETHIOPIC COMBINING GEMINATION AND VOWEL LENGTH MARK..ETHIOPIC COMBINING GEMINATION MARK
 117.394  1360          ; Ethiopic # So       ETHIOPIC SECTION MARK
 117.395  1361..1368    ; Ethiopic # Po   [8] ETHIOPIC WORDSPACE..ETHIOPIC PARAGRAPH SEPARATOR
 117.396  1369..137C    ; Ethiopic # No  [20] ETHIOPIC DIGIT ONE..ETHIOPIC NUMBER TEN THOUSAND
 117.397 @@ -1249,8 +1270,13 @@
 117.398  2DC8..2DCE    ; Ethiopic # Lo   [7] ETHIOPIC SYLLABLE KYA..ETHIOPIC SYLLABLE KYO
 117.399  2DD0..2DD6    ; Ethiopic # Lo   [7] ETHIOPIC SYLLABLE XYA..ETHIOPIC SYLLABLE XYO
 117.400  2DD8..2DDE    ; Ethiopic # Lo   [7] ETHIOPIC SYLLABLE GYA..ETHIOPIC SYLLABLE GYO
 117.401 +AB01..AB06    ; Ethiopic # Lo   [6] ETHIOPIC SYLLABLE TTHU..ETHIOPIC SYLLABLE TTHO
 117.402 +AB09..AB0E    ; Ethiopic # Lo   [6] ETHIOPIC SYLLABLE DDHU..ETHIOPIC SYLLABLE DDHO
 117.403 +AB11..AB16    ; Ethiopic # Lo   [6] ETHIOPIC SYLLABLE DZU..ETHIOPIC SYLLABLE DZO
 117.404 +AB20..AB26    ; Ethiopic # Lo   [7] ETHIOPIC SYLLABLE CCHHA..ETHIOPIC SYLLABLE CCHHO
 117.405 +AB28..AB2E    ; Ethiopic # Lo   [7] ETHIOPIC SYLLABLE BBA..ETHIOPIC SYLLABLE BBO
 117.406  
 117.407 -# Total code points: 461
 117.408 +# Total code points: 495
 117.409  
 117.410  # ================================================
 117.411  
 117.412 @@ -1329,9 +1355,10 @@
 117.413  3041..3096    ; Hiragana # Lo  [86] HIRAGANA LETTER SMALL A..HIRAGANA LETTER SMALL KE
 117.414  309D..309E    ; Hiragana # Lm   [2] HIRAGANA ITERATION MARK..HIRAGANA VOICED ITERATION MARK
 117.415  309F          ; Hiragana # Lo       HIRAGANA DIGRAPH YORI
 117.416 +1B001         ; Hiragana # Lo       HIRAGANA LETTER ARCHAIC YE
 117.417  1F200         ; Hiragana # So       SQUARE HIRAGANA HOKA
 117.418  
 117.419 -# Total code points: 90
 117.420 +# Total code points: 91
 117.421  
 117.422  # ================================================
 117.423  
 117.424 @@ -1343,15 +1370,17 @@
 117.425  3300..3357    ; Katakana # So  [88] SQUARE APAATO..SQUARE WATTO
 117.426  FF66..FF6F    ; Katakana # Lo  [10] HALFWIDTH KATAKANA LETTER WO..HALFWIDTH KATAKANA LETTER SMALL TU
 117.427  FF71..FF9D    ; Katakana # Lo  [45] HALFWIDTH KATAKANA LETTER A..HALFWIDTH KATAKANA LETTER N
 117.428 +1B000         ; Katakana # Lo       KATAKANA LETTER ARCHAIC E
 117.429  
 117.430 -# Total code points: 299
 117.431 +# Total code points: 300
 117.432  
 117.433  # ================================================
 117.434  
 117.435 +02EA..02EB    ; Bopomofo # Sk   [2] MODIFIER LETTER YIN DEPARTING TONE MARK..MODIFIER LETTER YANG DEPARTING TONE MARK
 117.436  3105..312D    ; Bopomofo # Lo  [41] BOPOMOFO LETTER B..BOPOMOFO LETTER IH
 117.437 -31A0..31B7    ; Bopomofo # Lo  [24] BOPOMOFO LETTER BU..BOPOMOFO FINAL LETTER H
 117.438 +31A0..31BA    ; Bopomofo # Lo  [27] BOPOMOFO LETTER BU..BOPOMOFO LETTER ZY
 117.439  
 117.440 -# Total code points: 65
 117.441 +# Total code points: 70
 117.442  
 117.443  # ================================================
 117.444  
 117.445 @@ -1370,9 +1399,10 @@
 117.446  FA70..FAD9    ; Han # Lo [106] CJK COMPATIBILITY IDEOGRAPH-FA70..CJK COMPATIBILITY IDEOGRAPH-FAD9
 117.447  20000..2A6D6  ; Han # Lo [42711] CJK UNIFIED IDEOGRAPH-20000..CJK UNIFIED IDEOGRAPH-2A6D6
 117.448  2A700..2B734  ; Han # Lo [4149] CJK UNIFIED IDEOGRAPH-2A700..CJK UNIFIED IDEOGRAPH-2B734
 117.449 +2B740..2B81D  ; Han # Lo [222] CJK UNIFIED IDEOGRAPH-2B740..CJK UNIFIED IDEOGRAPH-2B81D
 117.450  2F800..2FA1D  ; Han # Lo [542] CJK COMPATIBILITY IDEOGRAPH-2F800..CJK COMPATIBILITY IDEOGRAPH-2FA1D
 117.451  
 117.452 -# Total code points: 75738
 117.453 +# Total code points: 75960
 117.454  
 117.455  # ================================================
 117.456  
 117.457 @@ -1410,6 +1440,7 @@
 117.458  0300..036F    ; Inherited # Mn [112] COMBINING GRAVE ACCENT..COMBINING LATIN SMALL LETTER X
 117.459  0485..0486    ; Inherited # Mn   [2] COMBINING CYRILLIC DASIA PNEUMATA..COMBINING CYRILLIC PSILI PNEUMATA
 117.460  064B..0655    ; Inherited # Mn  [11] ARABIC FATHATAN..ARABIC HAMZA BELOW
 117.461 +065F          ; Inherited # Mn       ARABIC WAVY HAMZA BELOW
 117.462  0670          ; Inherited # Mn       ARABIC LETTER SUPERSCRIPT ALEF
 117.463  0951..0952    ; Inherited # Mn   [2] DEVANAGARI STRESS SIGN UDATTA..DEVANAGARI STRESS SIGN ANUDATTA
 117.464  1CD0..1CD2    ; Inherited # Mn   [3] VEDIC TONE KARSHANA..VEDIC TONE PRENKHA
 117.465 @@ -1417,14 +1448,14 @@
 117.466  1CE2..1CE8    ; Inherited # Mn   [7] VEDIC SIGN VISARGA SVARITA..VEDIC SIGN VISARGA ANUDATTA WITH TAIL
 117.467  1CED          ; Inherited # Mn       VEDIC SIGN TIRYAK
 117.468  1DC0..1DE6    ; Inherited # Mn  [39] COMBINING DOTTED GRAVE ACCENT..COMBINING LATIN SMALL LETTER Z
 117.469 -1DFD..1DFF    ; Inherited # Mn   [3] COMBINING ALMOST EQUAL TO BELOW..COMBINING RIGHT ARROWHEAD AND DOWN ARROWHEAD BELOW
 117.470 +1DFC..1DFF    ; Inherited # Mn   [4] COMBINING DOUBLE INVERTED BREVE BELOW..COMBINING RIGHT ARROWHEAD AND DOWN ARROWHEAD BELOW
 117.471  200C..200D    ; Inherited # Cf   [2] ZERO WIDTH NON-JOINER..ZERO WIDTH JOINER
 117.472  20D0..20DC    ; Inherited # Mn  [13] COMBINING LEFT HARPOON ABOVE..COMBINING FOUR DOTS ABOVE
 117.473  20DD..20E0    ; Inherited # Me   [4] COMBINING ENCLOSING CIRCLE..COMBINING ENCLOSING CIRCLE BACKSLASH
 117.474  20E1          ; Inherited # Mn       COMBINING LEFT RIGHT ARROW ABOVE
 117.475  20E2..20E4    ; Inherited # Me   [3] COMBINING ENCLOSING SCREEN..COMBINING ENCLOSING UPWARD POINTING TRIANGLE
 117.476  20E5..20F0    ; Inherited # Mn  [12] COMBINING REVERSE SOLIDUS OVERLAY..COMBINING ASTERISK ABOVE
 117.477 -302A..302F    ; Inherited # Mn   [6] IDEOGRAPHIC LEVEL TONE MARK..HANGUL DOUBLE DOT TONE MARK
 117.478 +302A..302D    ; Inherited # Mn   [4] IDEOGRAPHIC LEVEL TONE MARK..IDEOGRAPHIC ENTERING TONE MARK
 117.479  3099..309A    ; Inherited # Mn   [2] COMBINING KATAKANA-HIRAGANA VOICED SOUND MARK..COMBINING KATAKANA-HIRAGANA SEMI-VOICED SOUND MARK
 117.480  FE00..FE0F    ; Inherited # Mn  [16] VARIATION SELECTOR-1..VARIATION SELECTOR-16
 117.481  FE20..FE26    ; Inherited # Mn   [7] COMBINING LIGATURE LEFT HALF..COMBINING CONJOINING MACRON
 117.482 @@ -1568,8 +1599,9 @@
 117.483  19B0..19C0    ; New_Tai_Lue # Mc  [17] NEW TAI LUE VOWEL SIGN VOWEL SHORTENER..NEW TAI LUE VOWEL SIGN IY
 117.484  19C1..19C7    ; New_Tai_Lue # Lo   [7] NEW TAI LUE LETTER FINAL V..NEW TAI LUE LETTER FINAL B
 117.485  19C8..19C9    ; New_Tai_Lue # Mc   [2] NEW TAI LUE TONE MARK-1..NEW TAI LUE TONE MARK-2
 117.486 -19D0..19DA    ; New_Tai_Lue # Nd  [11] NEW TAI LUE DIGIT ZERO..NEW TAI LUE THAM DIGIT ONE
 117.487 -19DE..19DF    ; New_Tai_Lue # Po   [2] NEW TAI LUE SIGN LAE..NEW TAI LUE SIGN LAEV
 117.488 +19D0..19D9    ; New_Tai_Lue # Nd  [10] NEW TAI LUE DIGIT ZERO..NEW TAI LUE DIGIT NINE
 117.489 +19DA          ; New_Tai_Lue # No       NEW TAI LUE THAM DIGIT ONE
 117.490 +19DE..19DF    ; New_Tai_Lue # So   [2] NEW TAI LUE SIGN LAE..NEW TAI LUE SIGN LAEV
 117.491  
 117.492  # Total code points: 83
 117.493  
 117.494 @@ -1584,8 +1616,10 @@
 117.495  
 117.496  2D30..2D65    ; Tifinagh # Lo  [54] TIFINAGH LETTER YA..TIFINAGH LETTER YAZZ
 117.497  2D6F          ; Tifinagh # Lm       TIFINAGH MODIFIER LETTER LABIALIZATION MARK
 117.498 +2D70          ; Tifinagh # Po       TIFINAGH SEPARATOR MARK
 117.499 +2D7F          ; Tifinagh # Mn       TIFINAGH CONSONANT JOINER
 117.500  
 117.501 -# Total code points: 55
 117.502 +# Total code points: 57
 117.503  
 117.504  # ================================================
 117.505  
 117.506 @@ -1882,8 +1916,9 @@
 117.507  A6E6..A6EF    ; Bamum # Nl  [10] BAMUM LETTER MO..BAMUM LETTER KOGHOM
 117.508  A6F0..A6F1    ; Bamum # Mn   [2] BAMUM COMBINING MARK KOQNDON..BAMUM COMBINING MARK TUKWENTIS
 117.509  A6F2..A6F7    ; Bamum # Po   [6] BAMUM NJAEMLI..BAMUM QUESTION MARK
 117.510 +16800..16A38  ; Bamum # Lo [569] BAMUM LETTER PHASE-A NGKUE MFON..BAMUM LETTER PHASE-F VUEQ
 117.511  
 117.512 -# Total code points: 88
 117.513 +# Total code points: 657
 117.514  
 117.515  # ================================================
 117.516  
 117.517 @@ -1969,4 +2004,40 @@
 117.518  
 117.519  # Total code points: 66
 117.520  
 117.521 +# ================================================
 117.522 +
 117.523 +1BC0..1BE5    ; Batak # Lo  [38] BATAK LETTER A..BATAK LETTER U
 117.524 +1BE6          ; Batak # Mn       BATAK SIGN TOMPI
 117.525 +1BE7          ; Batak # Mc       BATAK VOWEL SIGN E
 117.526 +1BE8..1BE9    ; Batak # Mn   [2] BATAK VOWEL SIGN PAKPAK E..BATAK VOWEL SIGN EE
 117.527 +1BEA..1BEC    ; Batak # Mc   [3] BATAK VOWEL SIGN I..BATAK VOWEL SIGN O
 117.528 +1BED          ; Batak # Mn       BATAK VOWEL SIGN KARO O
 117.529 +1BEE          ; Batak # Mc       BATAK VOWEL SIGN U
 117.530 +1BEF..1BF1    ; Batak # Mn   [3] BATAK VOWEL SIGN U FOR SIMALUNGUN SA..BATAK CONSONANT SIGN H
 117.531 +1BF2..1BF3    ; Batak # Mc   [2] BATAK PANGOLAT..BATAK PANONGONAN
 117.532 +1BFC..1BFF    ; Batak # Po   [4] BATAK SYMBOL BINDU NA METEK..BATAK SYMBOL BINDU PANGOLAT
 117.533 +
 117.534 +# Total code points: 56
 117.535 +
 117.536 +# ================================================
 117.537 +
 117.538 +11000         ; Brahmi # Mc       BRAHMI SIGN CANDRABINDU
 117.539 +11001         ; Brahmi # Mn       BRAHMI SIGN ANUSVARA
 117.540 +11002         ; Brahmi # Mc       BRAHMI SIGN VISARGA
 117.541 +11003..11037  ; Brahmi # Lo  [53] BRAHMI SIGN JIHVAMULIYA..BRAHMI LETTER OLD TAMIL NNNA
 117.542 +11038..11046  ; Brahmi # Mn  [15] BRAHMI VOWEL SIGN AA..BRAHMI VIRAMA
 117.543 +11047..1104D  ; Brahmi # Po   [7] BRAHMI DANDA..BRAHMI PUNCTUATION LOTUS
 117.544 +11052..11065  ; Brahmi # No  [20] BRAHMI NUMBER ONE..BRAHMI NUMBER ONE THOUSAND
 117.545 +11066..1106F  ; Brahmi # Nd  [10] BRAHMI DIGIT ZERO..BRAHMI DIGIT NINE
 117.546 +
 117.547 +# Total code points: 108
 117.548 +
 117.549 +# ================================================
 117.550 +
 117.551 +0840..0858    ; Mandaic # Lo  [25] MANDAIC LETTER HALQA..MANDAIC LETTER AIN
 117.552 +0859..085B    ; Mandaic # Mn   [3] MANDAIC AFFRICATION MARK..MANDAIC GEMINATION MARK
 117.553 +085E          ; Mandaic # Po       MANDAIC PUNCTUATION
 117.554 +
 117.555 +# Total code points: 29
 117.556 +
 117.557  # EOF
   118.1 --- a/test/java/nio/Buffer/StringCharBufferSliceTest.java	Tue Nov 30 09:57:47 2010 -0800
   118.2 +++ b/test/java/nio/Buffer/StringCharBufferSliceTest.java	Wed Dec 08 00:35:33 2010 -0800
   118.3 @@ -22,7 +22,7 @@
   118.4   */
   118.5  
   118.6  /* @test
   118.7 - * @bug 4997655
   118.8 + * @bug 4997655 7000913
   118.9   * @summary (bf) CharBuffer.slice() on wrapped CharSequence results in wrong position
  118.10   */
  118.11  
  118.12 @@ -76,11 +76,26 @@
  118.13          }
  118.14  
  118.15          System.out.println(
  118.16 +          ">>> StringCharBufferSliceTest-main: testing slice with result of slice");
  118.17 +        buff.position(0);
  118.18 +        buff.limit(buff.capacity());
  118.19 +        slice = buff.slice();
  118.20 +        for (int i=0; i<4; i++) {
  118.21 +            slice.position(i);
  118.22 +            CharBuffer nextSlice = slice.slice();
  118.23 +            if (nextSlice.position() != 0)
  118.24 +                throw new RuntimeException("New buffer's position should be zero");
  118.25 +            if (!nextSlice.equals(slice))
  118.26 +                throw new RuntimeException("New buffer should be equal");
  118.27 +            slice = nextSlice;
  118.28 +        }
  118.29 +
  118.30 +        System.out.println(
  118.31            ">>> StringCharBufferSliceTest-main: testing toString.");
  118.32          buff.position(4);
  118.33          buff.limit(7);
  118.34          slice = buff.slice();
  118.35 -        if (! slice.toString().equals("tes")) {
  118.36 +        if (!slice.toString().equals("tes")) {
  118.37              throw new RuntimeException("bad toString() after slice(): " + slice.toString());
  118.38          }
  118.39  
  118.40 @@ -104,6 +119,7 @@
  118.41              || dupe.charAt(2) != 's' || dupe.charAt(3) != 't') {
  118.42              throw new RuntimeException("bad duplicate() after slice(): '" + dupe + "'");
  118.43          }
  118.44 +
  118.45          System.out.println(">>> StringCharBufferSliceTest-main: done!");
  118.46      }
  118.47  
   119.1 --- a/test/java/nio/channels/AsynchronousSocketChannel/Basic.java	Tue Nov 30 09:57:47 2010 -0800
   119.2 +++ b/test/java/nio/channels/AsynchronousSocketChannel/Basic.java	Wed Dec 08 00:35:33 2010 -0800
   119.3 @@ -22,7 +22,7 @@
   119.4   */
   119.5  
   119.6  /* @test
   119.7 - * @bug 4607272 6842687
   119.8 + * @bug 4607272 6842687 6878369
   119.9   * @summary Unit test for AsynchronousSocketChannel
  119.10   * @run main/timeout=600 Basic
  119.11   */
  119.12 @@ -712,52 +712,57 @@
  119.13      }
  119.14  
  119.15      static void testTimeout() throws Exception {
  119.16 +        System.out.println("-- timeouts --");
  119.17 +        testTimeout(Integer.MIN_VALUE, TimeUnit.SECONDS);
  119.18 +        testTimeout(-1L, TimeUnit.SECONDS);
  119.19 +        testTimeout(0L, TimeUnit.SECONDS);
  119.20 +        testTimeout(2L, TimeUnit.SECONDS);
  119.21 +    }
  119.22 +
  119.23 +    static void testTimeout(final long timeout, final TimeUnit unit) throws Exception {
  119.24          Server server = new Server();
  119.25          AsynchronousSocketChannel ch = AsynchronousSocketChannel.open();
  119.26          ch.connect(server.address()).get();
  119.27  
  119.28 -        System.out.println("-- timeout when reading --");
  119.29 -
  119.30          ByteBuffer dst = ByteBuffer.allocate(512);
  119.31  
  119.32          final AtomicReference<Throwable> readException = new AtomicReference<Throwable>();
  119.33  
  119.34 -        // this read should timeout
  119.35 -        ch.read(dst, 3, TimeUnit.SECONDS, (Void)null,
  119.36 -            new CompletionHandler<Integer,Void>()
  119.37 -        {
  119.38 +        // this read should timeout if value is > 0
  119.39 +        ch.read(dst, timeout, unit, null, new CompletionHandler<Integer,Void>() {
  119.40              public void completed(Integer result, Void att) {
  119.41 -                throw new RuntimeException("Should not complete");
  119.42 +                readException.set(new RuntimeException("Should not complete"));
  119.43              }
  119.44              public void failed(Throwable exc, Void att) {
  119.45                  readException.set(exc);
  119.46              }
  119.47          });
  119.48 -        // wait for exception
  119.49 -        while (readException.get() == null) {
  119.50 -            Thread.sleep(100);
  119.51 +        if (timeout > 0L) {
  119.52 +            // wait for exception
  119.53 +            while (readException.get() == null) {
  119.54 +                Thread.sleep(100);
  119.55 +            }
  119.56 +            if (!(readException.get() instanceof InterruptedByTimeoutException))
  119.57 +                throw new RuntimeException("InterruptedByTimeoutException expected");
  119.58 +
  119.59 +            // after a timeout then further reading should throw unspecified runtime exception
  119.60 +            boolean exceptionThrown = false;
  119.61 +            try {
  119.62 +                ch.read(dst);
  119.63 +            } catch (RuntimeException x) {
  119.64 +                exceptionThrown = true;
  119.65 +            }
  119.66 +            if (!exceptionThrown)
  119.67 +                throw new RuntimeException("RuntimeException expected after timeout.");
  119.68 +        } else {
  119.69 +            Thread.sleep(1000);
  119.70 +            Throwable exc = readException.get();
  119.71 +            if (exc != null)
  119.72 +                throw new RuntimeException(exc);
  119.73          }
  119.74 -        if (!(readException.get() instanceof InterruptedByTimeoutException))
  119.75 -            throw new RuntimeException("InterruptedByTimeoutException expected");
  119.76 -
  119.77 -        // after a timeout then further reading should throw unspecified runtime exception
  119.78 -        boolean exceptionThrown = false;
  119.79 -        try {
  119.80 -            ch.read(dst);
  119.81 -        } catch (RuntimeException x) {
  119.82 -            exceptionThrown = true;
  119.83 -        }
  119.84 -        if (!exceptionThrown)
  119.85 -            throw new RuntimeException("RuntimeException expected after timeout.");
  119.86 -
  119.87 -
  119.88 -        System.out.println("-- timeout when writing --");
  119.89  
  119.90          final AtomicReference<Throwable> writeException = new AtomicReference<Throwable>();
  119.91  
  119.92 -        final long timeout = 5;
  119.93 -        final TimeUnit unit = TimeUnit.SECONDS;
  119.94 -
  119.95          // write bytes to fill socket buffer
  119.96          ch.write(genBuffer(), timeout, unit, ch,
  119.97              new CompletionHandler<Integer,AsynchronousSocketChannel>()
  119.98 @@ -769,24 +774,32 @@
  119.99                  writeException.set(exc);
 119.100              }
 119.101          });
 119.102 +        if (timeout > 0) {
 119.103 +            // wait for exception
 119.104 +            while (writeException.get() == null) {
 119.105 +                Thread.sleep(100);
 119.106 +            }
 119.107 +            if (!(writeException.get() instanceof InterruptedByTimeoutException))
 119.108 +                throw new RuntimeException("InterruptedByTimeoutException expected");
 119.109  
 119.110 -        // wait for exception
 119.111 -        while (writeException.get() == null) {
 119.112 -            Thread.sleep(100);
 119.113 +            // after a timeout then further writing should throw unspecified runtime exception
 119.114 +            boolean exceptionThrown = false;
 119.115 +            try {
 119.116 +                ch.write(genBuffer());
 119.117 +            } catch (RuntimeException x) {
 119.118 +                exceptionThrown = true;
 119.119 +            }
 119.120 +            if (!exceptionThrown)
 119.121 +                throw new RuntimeException("RuntimeException expected after timeout.");
 119.122 +        } else {
 119.123 +            Thread.sleep(1000);
 119.124 +            Throwable exc = writeException.get();
 119.125 +            if (exc != null)
 119.126 +                throw new RuntimeException(exc);
 119.127          }
 119.128 -        if (!(writeException.get() instanceof InterruptedByTimeoutException))
 119.129 -            throw new RuntimeException("InterruptedByTimeoutException expected");
 119.130  
 119.131 -        // after a timeout then further writing should throw unspecified runtime exception
 119.132 -        exceptionThrown = false;
 119.133 -        try {
 119.134 -            ch.write(genBuffer());
 119.135 -        } catch (RuntimeException x) {
 119.136 -            exceptionThrown = true;
 119.137 -        }
 119.138 -        if (!exceptionThrown)
 119.139 -            throw new RuntimeException("RuntimeException expected after timeout.");
 119.140 -
 119.141 +        // clean-up
 119.142 +        server.accept().close();
 119.143          ch.close();
 119.144          server.close();
 119.145      }
   120.1 --- a/test/java/security/Security/ClassLoaderDeadlock/ClassLoaderDeadlock.sh	Tue Nov 30 09:57:47 2010 -0800
   120.2 +++ b/test/java/security/Security/ClassLoaderDeadlock/ClassLoaderDeadlock.sh	Wed Dec 08 00:35:33 2010 -0800
   120.3 @@ -68,11 +68,10 @@
   120.4      ;;
   120.5  esac
   120.6  
   120.7 -# remove old class files
   120.8  cd ${TESTCLASSES}${FILESEP}
   120.9 -rm -f ClassLoaderDeadlock.class
  120.10 -rm -rf provider
  120.11 -mkdir provider
  120.12 +if [ ! -d provider ] ; then
  120.13 +    mkdir provider
  120.14 +fi
  120.15  
  120.16  # compile the test program
  120.17  ${TESTJAVA}${FILESEP}bin${FILESEP}javac \
  120.18 @@ -88,4 +87,11 @@
  120.19  	-classpath "${TESTCLASSES}${PATHSEP}${TESTSRC}${FILESEP}Deadlock.jar" \
  120.20  	ClassLoaderDeadlock
  120.21  
  120.22 -exit $?
  120.23 +STATUS=$?
  120.24 +
  120.25 +# clean up
  120.26 +rm -f 'ClassLoaderDeadlock.class' 'ClassLoaderDeadlock$1.class' \
  120.27 +'ClassLoaderDeadlock$DelayClassLoader.class' \
  120.28 +provider${FILESEP}HashProvider.class
  120.29 +
  120.30 +exit $STATUS
   121.1 --- a/test/java/security/Security/ClassLoaderDeadlock/Deadlock2.sh	Tue Nov 30 09:57:47 2010 -0800
   121.2 +++ b/test/java/security/Security/ClassLoaderDeadlock/Deadlock2.sh	Wed Dec 08 00:35:33 2010 -0800
   121.3 @@ -26,7 +26,6 @@
   121.4  
   121.5  # @test
   121.6  # @bug 6440846
   121.7 -# @ignore until 6203816 is dealt with.
   121.8  # @summary make sure we do not deadlock between ExtClassLoader and AppClassLoader
   121.9  # @author Valerie Peng
  121.10  # @run shell/timeout=20 Deadlock2.sh
  121.11 @@ -71,11 +70,14 @@
  121.12  
  121.13  # remove old class files
  121.14  cd ${TESTCLASSES}
  121.15 -rm -f Deadlock2*.class
  121.16  if [ -d testlib ] ; then
  121.17      rm -rf testlib
  121.18  fi
  121.19 -cp -r ${TESTJAVA}${FILESEP}lib${FILESEP}ext testlib
  121.20 +if [ -d ${TESTJAVA}${FILESEP}lib${FILESEP}ext ] ; then
  121.21 +    cp -r ${TESTJAVA}${FILESEP}lib${FILESEP}ext testlib
  121.22 +else
  121.23 +    cp -r ${TESTJAVA}${FILESEP}jre${FILESEP}lib${FILESEP}ext testlib
  121.24 +fi
  121.25  
  121.26  # compile and package the test program
  121.27  ${TESTJAVA}${FILESEP}bin${FILESEP}javac \
   122.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   122.2 +++ b/test/java/text/Bidi/Bug7002398.java	Wed Dec 08 00:35:33 2010 -0800
   122.3 @@ -0,0 +1,70 @@
   122.4 +/*
   122.5 + * Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved.
   122.6 + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
   122.7 + *
   122.8 + * This code is free software; you can redistribute it and/or modify it
   122.9 + * under the terms of the GNU General Public License version 2 only, as
  122.10 + * published by the Free Software Foundation.
  122.11 + *
  122.12 + * This code is distributed in the hope that it will be useful, but WITHOUT
  122.13 + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
  122.14 + * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
  122.15 + * version 2 for more details (a copy is included in the LICENSE file that
  122.16 + * accompanied this code).
  122.17 + *
  122.18 + * You should have received a copy of the GNU General Public License version
  122.19 + * 2 along with this work; if not, write to the Free Software Foundation,
  122.20 + * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
  122.21 + *
  122.22 + * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
  122.23 + * or visit www.oracle.com if you need additional information or have any
  122.24 + * questions.
  122.25 + */
  122.26 +
  122.27 +/*
  122.28 + * @test
  122.29 + * @bug 7002398
  122.30 + * @summary Verify that Corrigendum #8 for Unicode 6.0.0 has been applied.
  122.31 + */
  122.32 +import java.text.*;
  122.33 +
  122.34 +public class Bug7002398 {
  122.35 +
  122.36 +    private static final int[] directions = {
  122.37 +        Bidi.DIRECTION_DEFAULT_LEFT_TO_RIGHT,
  122.38 +        Bidi.DIRECTION_DEFAULT_RIGHT_TO_LEFT,
  122.39 +        Bidi.DIRECTION_LEFT_TO_RIGHT,
  122.40 +        Bidi.DIRECTION_RIGHT_TO_LEFT
  122.41 +    };
  122.42 +
  122.43 +    /*
  122.44 +     * Old Bidi class: AL AN AL AN AL
  122.45 +     * New Bidi class:          AL
  122.46 +     */
  122.47 +    private static final String str = "\u0627\u0660\u0710\u070F\u070D";
  122.48 +    private static final int[] expectedLevels = {1, 2, 1, 1, 1};
  122.49 +
  122.50 +    public static void main(String[] args) {
  122.51 +        boolean err = false;
  122.52 +
  122.53 +        for (int dir = 0; dir < directions.length; dir ++) {
  122.54 +            Bidi bidi = new Bidi(str, directions[dir]);
  122.55 +            for (int index = 0; index < str.length(); index ++) {
  122.56 +                int gotLevel = bidi.getLevelAt(index);
  122.57 +                if (gotLevel != expectedLevels[index]) {
  122.58 +                    err = true;
  122.59 +                    System.err.println("Unexpected level for the character 0x" +
  122.60 +                        Integer.toHexString(str.charAt(index)).toUpperCase() +
  122.61 +                        ": Expected level = " + expectedLevels[index] +
  122.62 +                        ", actual level = " + bidi.getLevelAt(index) +
  122.63 +                        " in direction = " + directions[dir] + ".");
  122.64 +                }
  122.65 +            }
  122.66 +        }
  122.67 +
  122.68 +        if (err) {
  122.69 +            throw new RuntimeException("Failed.");
  122.70 +        }
  122.71 +    }
  122.72 +
  122.73 +}
   123.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   123.2 +++ b/test/java/util/Currency/Bug6807534.java	Wed Dec 08 00:35:33 2010 -0800
   123.3 @@ -0,0 +1,84 @@
   123.4 +/*
   123.5 + * Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved.
   123.6 + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
   123.7 + *
   123.8 + * This code is free software; you can redistribute it and/or modify it
   123.9 + * under the terms of the GNU General Public License version 2 only, as
  123.10 + * published by the Free Software Foundation.
  123.11 + *
  123.12 + * This code is distributed in the hope that it will be useful, but WITHOUT
  123.13 + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
  123.14 + * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
  123.15 + * version 2 for more details (a copy is included in the LICENSE file that
  123.16 + * accompanied this code).
  123.17 + *
  123.18 + * You should have received a copy of the GNU General Public License version
  123.19 + * 2 along with this work; if not, write to the Free Software Foundation,
  123.20 + * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
  123.21 + *
  123.22 + * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
  123.23 + * or visit www.oracle.com if you need additional information or have any
  123.24 + * questions.
  123.25 + */
  123.26 +/*
  123.27 + * @test
  123.28 + * @bug 6807534
  123.29 + * @summary check whether the default implementation of
  123.30 + *    CurrencNameProvider.getDisplayName(String, Locale) throws appropriate
  123.31 + *    exceptions when necessary.
  123.32 + */
  123.33 +
  123.34 +import java.util.Locale;
  123.35 +import java.util.spi.CurrencyNameProvider;
  123.36 +
  123.37 +public class Bug6807534 {
  123.38 +
  123.39 +    static final CurrencyNameProvider cnp = new CurrencyNameProviderImpl();
  123.40 +
  123.41 +    public static void main(String[] args) throws Exception {
  123.42 +        // test for NullPointerException (currencyCode)
  123.43 +        try {
  123.44 +            cnp.getDisplayName(null, Locale.US);
  123.45 +            throwException("NPE was not thrown with null currencyCode");
  123.46 +        } catch (NullPointerException npe) {}
  123.47 +
  123.48 +        // test for NullPointerException (locale)
  123.49 +        try {
  123.50 +            cnp.getDisplayName("USD", null);
  123.51 +            throwException("NPE was not thrown with null locale");
  123.52 +        } catch (NullPointerException npe) {}
  123.53 +
  123.54 +        // test for IllegalArgumentException (illegal currencyCode)
  123.55 +        try {
  123.56 +            cnp.getDisplayName("INVALID", Locale.US);
  123.57 +            throwException("IllegalArgumentException was not thrown with invalid currency code");
  123.58 +        } catch (IllegalArgumentException iae) {}
  123.59 +        try {
  123.60 +            cnp.getDisplayName("inv", Locale.US);
  123.61 +            throwException("IllegalArgumentException was not thrown with invalid currency code");
  123.62 +        } catch (IllegalArgumentException iae) {}
  123.63 +
  123.64 +        // test for IllegalArgumentException (non-supported locale)
  123.65 +        try {
  123.66 +            cnp.getDisplayName("USD", Locale.JAPAN);
  123.67 +            throwException("IllegalArgumentException was not thrown with non-supported locale");
  123.68 +        } catch (IllegalArgumentException iae) {}
  123.69 +    }
  123.70 +
  123.71 +    static void throwException(String msg) {
  123.72 +        throw new RuntimeException("test failed. "+msg);
  123.73 +    }
  123.74 +
  123.75 +    static class CurrencyNameProviderImpl extends CurrencyNameProvider {
  123.76 +        // dummy implementation
  123.77 +        public String getSymbol(String currencyCode, Locale locale) {
  123.78 +            return "";
  123.79 +        }
  123.80 +
  123.81 +        public Locale[] getAvailableLocales() {
  123.82 +            Locale[] avail = new Locale[1];
  123.83 +            avail[0] = Locale.US;
  123.84 +            return avail;
  123.85 +        }
  123.86 +    }
  123.87 +}
   124.1 --- a/test/java/util/Locale/data/deflocale.rhel5	Tue Nov 30 09:57:47 2010 -0800
   124.2 +++ b/test/java/util/Locale/data/deflocale.rhel5	Wed Dec 08 00:35:33 2010 -0800
   124.3 @@ -518,18 +518,18 @@
   124.4  format locale: ID: bn_IN, Name: Bengali (India)
   124.5  default charset: UTF-8
   124.6  
   124.7 +OS Locale:  bokmål
   124.8 +default locale: ID: nb_NO, Name: Norwegian Bokmål (Norway)
   124.9 +display locale: ID: nb_NO, Name: Norwegian Bokmål (Norway)
  124.10 +format locale: ID: nb_NO, Name: Norwegian Bokmål (Norway)
  124.11 +default charset: ISO-8859-1
  124.12 +
  124.13  OS Locale:  bokmal
  124.14  default locale: ID: nb_NO, Name: Norwegian Bokmål (Norway)
  124.15  display locale: ID: nb_NO, Name: Norwegian Bokmål (Norway)
  124.16  format locale: ID: nb_NO, Name: Norwegian Bokmål (Norway)
  124.17  default charset: ISO-8859-1
  124.18  
  124.19 -OS Locale:  bokmål
  124.20 -default locale: ID: en, Name: English
  124.21 -display locale: ID: en, Name: English
  124.22 -format locale: ID: en, Name: English
  124.23 -default charset: ISO-8859-1
  124.24 -
  124.25  OS Locale:  br_FR
  124.26  default locale: ID: br_FR, Name: Breton (France)
  124.27  display locale: ID: br_FR, Name: Breton (France)
   125.1 --- a/test/java/util/Locale/data/deflocale.rhel5.fmtasdefault	Tue Nov 30 09:57:47 2010 -0800
   125.2 +++ b/test/java/util/Locale/data/deflocale.rhel5.fmtasdefault	Wed Dec 08 00:35:33 2010 -0800
   125.3 @@ -518,18 +518,18 @@
   125.4  format locale: ID: bn_IN, Name: Bengali (India)
   125.5  default charset: UTF-8
   125.6  
   125.7 +OS Locale:  bokmål
   125.8 +default locale: ID: nb_NO, Name: Norwegian Bokmål (Norway)
   125.9 +display locale: ID: nb_NO, Name: Norwegian Bokmål (Norway)
  125.10 +format locale: ID: nb_NO, Name: Norwegian Bokmål (Norway)
  125.11 +default charset: ISO-8859-1
  125.12 +
  125.13  OS Locale:  bokmal
  125.14  default locale: ID: nb_NO, Name: Norwegian Bokmål (Norway)
  125.15  display locale: ID: nb_NO, Name: Norwegian Bokmål (Norway)
  125.16  format locale: ID: nb_NO, Name: Norwegian Bokmål (Norway)
  125.17  default charset: ISO-8859-1
  125.18  
  125.19 -OS Locale:  bokmål
  125.20 -default locale: ID: en, Name: English
  125.21 -display locale: ID: en, Name: English
  125.22 -format locale: ID: en, Name: English
  125.23 -default charset: ISO-8859-1
  125.24 -
  125.25  OS Locale:  br_FR
  125.26  default locale: ID: br_FR, Name: Breton (France)
  125.27  display locale: ID: br_FR, Name: Breton (France)
   126.1 --- a/test/java/util/ResourceBundle/Bug4168625Test.java	Tue Nov 30 09:57:47 2010 -0800
   126.2 +++ b/test/java/util/ResourceBundle/Bug4168625Test.java	Wed Dec 08 00:35:33 2010 -0800
   126.3 @@ -32,12 +32,6 @@
   126.4   *
   126.5   * (C) Copyright IBM Corp. 1999 - All Rights Reserved
   126.6   *
   126.7 - * This software is the confidential and proprietary information
   126.8 - * of Sun Microsystems, Inc. ("Confidential Information").  You
   126.9 - * shall not disclose such Confidential Information and shall use
  126.10 - * it only in accordance with the terms of the license agreement
  126.11 - * you entered into with Sun.
  126.12 - *
  126.13   * The original version of this source code and documentation is
  126.14   * copyrighted and owned by IBM. These materials are provided
  126.15   * under terms of a License Agreement between IBM and Sun.
   127.1 --- a/test/java/util/concurrent/Executors/AutoShutdown.java	Tue Nov 30 09:57:47 2010 -0800
   127.2 +++ b/test/java/util/concurrent/Executors/AutoShutdown.java	Wed Dec 08 00:35:33 2010 -0800
   127.3 @@ -32,21 +32,40 @@
   127.4  import java.util.*;
   127.5  import java.util.concurrent.*;
   127.6  import static java.util.concurrent.Executors.*;
   127.7 +import java.util.concurrent.Phaser;
   127.8  
   127.9  public class AutoShutdown {
  127.10 -    private static void waitForFinalizersToRun() throws Throwable {
  127.11 -        System.gc(); System.runFinalization(); Thread.sleep(10);
  127.12 -        System.gc(); System.runFinalization(); Thread.sleep(10);
  127.13 +    private static void waitForFinalizersToRun() {
  127.14 +        for (int i = 0; i < 2; i++)
  127.15 +            tryWaitForFinalizersToRun();
  127.16 +    }
  127.17 +
  127.18 +    private static void tryWaitForFinalizersToRun() {
  127.19 +        System.gc();
  127.20 +        final CountDownLatch fin = new CountDownLatch(1);
  127.21 +        new Object() { protected void finalize() { fin.countDown(); }};
  127.22 +        System.gc();
  127.23 +        try { fin.await(); }
  127.24 +        catch (InterruptedException ie) { throw new Error(ie); }
  127.25      }
  127.26  
  127.27      private static void realMain(String[] args) throws Throwable {
  127.28 -        Runnable trivialRunnable = new Runnable() { public void run() {}};
  127.29 +        final Phaser phaser = new Phaser(3);
  127.30 +        Runnable trivialRunnable = new Runnable() {
  127.31 +            public void run() {
  127.32 +                phaser.arriveAndAwaitAdvance();
  127.33 +            }
  127.34 +        };
  127.35          int count0 = Thread.activeCount();
  127.36 -        newSingleThreadExecutor().execute(trivialRunnable);
  127.37 -        newSingleThreadExecutor(defaultThreadFactory()).execute(trivialRunnable);
  127.38 -        Thread.sleep(100);
  127.39 +        Executor e1 = newSingleThreadExecutor();
  127.40 +        Executor e2 = newSingleThreadExecutor(defaultThreadFactory());
  127.41 +        e1.execute(trivialRunnable);
  127.42 +        e2.execute(trivialRunnable);
  127.43 +        phaser.arriveAndAwaitAdvance();
  127.44          equal(Thread.activeCount(), count0 + 2);
  127.45 -        waitForFinalizersToRun();
  127.46 +        e1 = e2 = null;
  127.47 +        for (int i = 0; i < 10 && Thread.activeCount() > count0; i++)
  127.48 +            tryWaitForFinalizersToRun();
  127.49          equal(Thread.activeCount(), count0);
  127.50      }
  127.51  
   128.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   128.2 +++ b/test/javax/swing/JFileChooser/4150029/bug4150029.html	Wed Dec 08 00:35:33 2010 -0800
   128.3 @@ -0,0 +1,9 @@
   128.4 +<html>
   128.5 +<body>
   128.6 +<applet  code="bug4150029.class" width=200 height=200></applet>
   128.7 +1.Go into 'subDir' folder.
   128.8 +2.Press BACKSPACE key.
   128.9 +3.Push OPEN button.
  128.10 +4.Push DONE button.
  128.11 +</body>
  128.12 +</html> 
   129.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   129.2 +++ b/test/javax/swing/JFileChooser/4150029/bug4150029.java	Wed Dec 08 00:35:33 2010 -0800
   129.3 @@ -0,0 +1,84 @@
   129.4 +/*
   129.5 + * Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved.
   129.6 + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
   129.7 + *
   129.8 + * This code is free software; you can redistribute it and/or modify it
   129.9 + * under the terms of the GNU General Public License version 2 only, as
  129.10 + * published by the Free Software Foundation.
  129.11 + *
  129.12 + * This code is distributed in the hope that it will be useful, but WITHOUT
  129.13 + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
  129.14 + * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
  129.15 + * version 2 for more details (a copy is included in the LICENSE file that
  129.16 + * accompanied this code).
  129.17 + *
  129.18 + * You should have received a copy of the GNU General Public License version
  129.19 + * 2 along with this work; if not, write to the Free Software Foundation,
  129.20 + * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
  129.21 + *
  129.22 + * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
  129.23 + * or visit www.oracle.com if you need additional information or have any
  129.24 + * questions.
  129.25 + */
  129.26 +
  129.27 +/* @test
  129.28 +   @bug 4150029
  129.29 +   @summary BackSpace keyboard button does not lead to parent directory
  129.30 +   @author Oleg Mokhovikov
  129.31 +   @run applet/manual=done bug4150029.html
  129.32 +*/
  129.33 +
  129.34 +import javax.swing.*;
  129.35 +import java.io.File;
  129.36 +import java.io.IOException;
  129.37 +
  129.38 +public class bug4150029 extends JApplet {
  129.39 +    private boolean res;
  129.40 +
  129.41 +    public void init() {
  129.42 +        String tmpDir = System.getProperty("java.io.tmpdir");
  129.43 +
  129.44 +        if (tmpDir.length() == 0) {//'java.io.tmpdir' isn't guaranteed to be defined
  129.45 +            tmpDir = System.getProperty("user.home");
  129.46 +        }
  129.47 +
  129.48 +        System.out.println("Temp directory: " + tmpDir);
  129.49 +
  129.50 +        File testDir = new File(tmpDir, "testDir");
  129.51 +
  129.52 +        testDir.mkdir();
  129.53 +
  129.54 +        File subDir = new File(testDir, "subDir");
  129.55 +
  129.56 +        subDir.mkdir();
  129.57 +
  129.58 +        System.out.println("Created directory: " + testDir);
  129.59 +        System.out.println("Created sub-directory: " + subDir);
  129.60 +
  129.61 +        JFileChooser fileChooser = new JFileChooser(testDir);
  129.62 +
  129.63 +        fileChooser.setFileSelectionMode(JFileChooser.DIRECTORIES_ONLY);
  129.64 +
  129.65 +        try {
  129.66 +            res = fileChooser.showOpenDialog(this) != JFileChooser.APPROVE_OPTION ||
  129.67 +                    testDir.getCanonicalPath().equals(fileChooser.getSelectedFile().getCanonicalPath());
  129.68 +        } catch (IOException e) {
  129.69 +            res = false;
  129.70 +
  129.71 +            e.printStackTrace();
  129.72 +        }
  129.73 +
  129.74 +        try {
  129.75 +            subDir.delete();
  129.76 +            testDir.delete();
  129.77 +        } catch (SecurityException e) {
  129.78 +            e.printStackTrace();
  129.79 +        }
  129.80 +    }
  129.81 +
  129.82 +    public void destroy() {
  129.83 +        if (!res) {
  129.84 +            throw new RuntimeException("BackSpace keyboard button does not lead to parent directory");
  129.85 +        }
  129.86 +    }
  129.87 +}
   130.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   130.2 +++ b/test/javax/swing/JLayer/6994419/bug6994419.java	Wed Dec 08 00:35:33 2010 -0800
   130.3 @@ -0,0 +1,55 @@
   130.4 +/*
   130.5 + * Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved.
   130.6 + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
   130.7 + *
   130.8 + * This code is free software; you can redistribute it and/or modify it
   130.9 + * under the terms of the GNU General Public License version 2 only, as
  130.10 + * published by the Free Software Foundation.
  130.11 + *
  130.12 + * This code is distributed in the hope that it will be useful, but WITHOUT
  130.13 + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
  130.14 + * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
  130.15 + * version 2 for more details (a copy is included in the LICENSE file that
  130.16 + * accompanied this code).
  130.17 + *
  130.18 + * You should have received a copy of the GNU General Public License version
  130.19 + * 2 along with this work; if not, write to the Free Software Foundation,
  130.20 + * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
  130.21 + *
  130.22 + * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
  130.23 + * or visit www.oracle.com if you need additional information or have any
  130.24 + * questions.
  130.25 + */
  130.26 +
  130.27 +/* @test
  130.28 + * @bug 6994419
  130.29 + * @summary JLayer.removeAll() behavior doesn't correspond to JLayer.remove() behavior.
  130.30 + * @author Alexander Potochkin
  130.31 + */
  130.32 +
  130.33 +import javax.swing.*;
  130.34 +import java.beans.PropertyChangeListener;
  130.35 +import java.beans.PropertyChangeEvent;
  130.36 +
  130.37 +public class bug6994419 {
  130.38 +
  130.39 +    public static void main(String... args) throws Exception {
  130.40 +        SwingUtilities.invokeAndWait(new Runnable() {
  130.41 +            public void run() {
  130.42 +
  130.43 +                JLayer<JComponent> l = new JLayer<JComponent>(new JButton());
  130.44 +
  130.45 +                l.removeAll();
  130.46 +
  130.47 +                l.addPropertyChangeListener(new PropertyChangeListener() {
  130.48 +
  130.49 +                    public void propertyChange(PropertyChangeEvent evt) {
  130.50 +                        throw new RuntimeException("Property change event was unexpectedly fired");
  130.51 +                    }
  130.52 +                });
  130.53 +
  130.54 +                l.removeAll();
  130.55 +            }
  130.56 +        });
  130.57 +    }
  130.58 +}
   131.1 --- a/test/javax/swing/JLayer/SerializationTest/SerializationTest.java	Tue Nov 30 09:57:47 2010 -0800
   131.2 +++ b/test/javax/swing/JLayer/SerializationTest/SerializationTest.java	Wed Dec 08 00:35:33 2010 -0800
   131.3 @@ -54,9 +54,6 @@
   131.4  
   131.5          JLayer newLayer = (JLayer) inputStream.readObject();
   131.6  
   131.7 -        if (newLayer.getLayout() == null) {
   131.8 -            throw new RuntimeException("JLayer's layout is null");
   131.9 -        }
  131.10          if (newLayer.getGlassPane() == null) {
  131.11              throw new RuntimeException("JLayer's glassPane is null");
  131.12          }
   132.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   132.2 +++ b/test/javax/swing/JScrollPane/6559589/bug6559589.java	Wed Dec 08 00:35:33 2010 -0800
   132.3 @@ -0,0 +1,54 @@
   132.4 +/*
   132.5 + * Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved.
   132.6 + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
   132.7 + *
   132.8 + * This code is free software; you can redistribute it and/or modify it
   132.9 + * under the terms of the GNU General Public License version 2 only, as
  132.10 + * published by the Free Software Foundation.
  132.11 + *
  132.12 + * This code is distributed in the hope that it will be useful, but WITHOUT
  132.13 + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
  132.14 + * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
  132.15 + * version 2 for more details (a copy is included in the LICENSE file that
  132.16 + * accompanied this code).
  132.17 + *
  132.18 + * You should have received a copy of the GNU General Public License version
  132.19 + * 2 along with this work; if not, write to the Free Software Foundation,
  132.20 + * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
  132.21 + *
  132.22 + * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
  132.23 + * or visit www.oracle.com if you need additional information or have any
  132.24 + * questions.
  132.25 + */
  132.26 +
  132.27 +/*
  132.28 + * @test
  132.29 + * @bug 6559589
  132.30 + * @summary Memory leak in JScrollPane.updateUI()
  132.31 + * @author Alexander Potochkin
  132.32 + * @run main bug6559589
  132.33 + */
  132.34 +
  132.35 +import javax.swing.*;
  132.36 +import javax.swing.plaf.metal.MetalLookAndFeel;
  132.37 +
  132.38 +public class bug6559589 {
  132.39 +
  132.40 +    private static void createGui() {
  132.41 +        JScrollPane sp = new JScrollPane();
  132.42 +        int listenerCount = sp.getPropertyChangeListeners().length;
  132.43 +        sp.updateUI();
  132.44 +        if(listenerCount != sp.getPropertyChangeListeners().length) {
  132.45 +            throw new RuntimeException("Listeners' leak");
  132.46 +        }
  132.47 +    }
  132.48 +
  132.49 +    public static void main(String[] args) throws Exception {
  132.50 +        UIManager.setLookAndFeel(new MetalLookAndFeel());
  132.51 +        SwingUtilities.invokeAndWait(new Runnable() {
  132.52 +            public void run() {
  132.53 +                bug6559589.createGui();
  132.54 +            }
  132.55 +        });
  132.56 +    }
  132.57 +}
   133.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   133.2 +++ b/test/javax/swing/border/Test6981576.java	Wed Dec 08 00:35:33 2010 -0800
   133.3 @@ -0,0 +1,91 @@
   133.4 +/*
   133.5 + * Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved.
   133.6 + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
   133.7 + *
   133.8 + * This code is free software; you can redistribute it and/or modify it
   133.9 + * under the terms of the GNU General Public License version 2 only, as
  133.10 + * published by the Free Software Foundation.
  133.11 + *
  133.12 + * This code is distributed in the hope that it will be useful, but WITHOUT
  133.13 + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
  133.14 + * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
  133.15 + * version 2 for more details (a copy is included in the LICENSE file that
  133.16 + * accompanied this code).
  133.17 + *
  133.18 + * You should have received a copy of the GNU General Public License version
  133.19 + * 2 along with this work; if not, write to the Free Software Foundation,
  133.20 + * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
  133.21 + *
  133.22 + * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
  133.23 + * or visit www.oracle.com if you need additional information or have any
  133.24 + * questions.
  133.25 + */
  133.26 +
  133.27 +/*
  133.28 + * @test
  133.29 + * @bug 6981576
  133.30 + * @summary Tests that default border for the titled border is not null
  133.31 + * @author Sergey Malenkov
  133.32 + */
  133.33 +
  133.34 +import java.awt.Component;
  133.35 +import java.awt.Graphics;
  133.36 +import javax.swing.JFrame;
  133.37 +import javax.swing.JPanel;
  133.38 +import javax.swing.SwingUtilities;
  133.39 +import javax.swing.UIManager;
  133.40 +import javax.swing.UIManager.LookAndFeelInfo;
  133.41 +import javax.swing.border.TitledBorder;
  133.42 +
  133.43 +public class Test6981576 extends TitledBorder implements Runnable, Thread.UncaughtExceptionHandler {
  133.44 +    public static void main(String[] args) {
  133.45 +        SwingUtilities.invokeLater(new Test6981576());
  133.46 +    }
  133.47 +
  133.48 +    private int index;
  133.49 +    private LookAndFeelInfo[] infos;
  133.50 +    private JFrame frame;
  133.51 +
  133.52 +    private Test6981576() {
  133.53 +        super("");
  133.54 +    }
  133.55 +
  133.56 +    @Override
  133.57 +    public void paintBorder(Component c, Graphics g, int x, int y, int width, int height) {
  133.58 +        getBorder().paintBorder(c, g, x, y, width, height);
  133.59 +    }
  133.60 +
  133.61 +    public void run() {
  133.62 +        if (this.infos == null) {
  133.63 +            this.infos = UIManager.getInstalledLookAndFeels();
  133.64 +            Thread.currentThread().setUncaughtExceptionHandler(this);
  133.65 +            JPanel panel = new JPanel();
  133.66 +            panel.setBorder(this);
  133.67 +            this.frame = new JFrame(getClass().getSimpleName());
  133.68 +            this.frame.add(panel);
  133.69 +            this.frame.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
  133.70 +            this.frame.setVisible(true);
  133.71 +        }
  133.72 +        if (this.index == this.infos.length) {
  133.73 +            this.frame.dispose();
  133.74 +        }
  133.75 +        else {
  133.76 +            LookAndFeelInfo info = this.infos[this.index % this.infos.length];
  133.77 +            try {
  133.78 +                UIManager.setLookAndFeel(info.getClassName());
  133.79 +            }
  133.80 +            catch (Exception exception) {
  133.81 +                System.err.println("could not change look and feel");
  133.82 +            }
  133.83 +            SwingUtilities.updateComponentTreeUI(this.frame);
  133.84 +            this.frame.pack();
  133.85 +            this.frame.setLocationRelativeTo(null);
  133.86 +            this.index++;
  133.87 +            SwingUtilities.invokeLater(this);
  133.88 +        }
  133.89 +    }
  133.90 +
  133.91 +    public void uncaughtException(Thread thread, Throwable throwable) {
  133.92 +        System.exit(1);
  133.93 +    }
  133.94 +}
   134.1 --- a/test/sun/nio/cs/CheckHistoricalNames.java	Tue Nov 30 09:57:47 2010 -0800
   134.2 +++ b/test/sun/nio/cs/CheckHistoricalNames.java	Wed Dec 08 00:35:33 2010 -0800
   134.3 @@ -22,7 +22,7 @@
   134.4   */
   134.5  
   134.6  /* @test
   134.7 -   @bug 4513767 4961027
   134.8 +   @bug 4513767 4961027 6217210
   134.9     @summary Checks canonical names match between old and (NIO) core charsets
  134.10   */
  134.11  import java.io.InputStreamReader;
  134.12 @@ -154,6 +154,7 @@
  134.13          checkHistoricalName("Cp500");
  134.14          checkHistoricalName("Cp737");
  134.15          checkHistoricalName("Cp775");
  134.16 +        checkHistoricalName("Cp833");
  134.17          checkHistoricalName("Cp838");
  134.18          checkHistoricalName("Cp850");
  134.19          checkHistoricalName("Cp852");
  134.20 @@ -228,6 +229,7 @@
  134.21          checkMappedName("IBM856", "Cp856");
  134.22          checkMappedName("IBM857", "Cp857");
  134.23          checkMappedName("IBM00858", "Cp858");
  134.24 +        checkMappedName("IBM833", "Cp833");
  134.25          checkMappedName("IBM860", "Cp860");
  134.26          checkMappedName("IBM861", "Cp861");
  134.27          checkMappedName("IBM862", "Cp862");
   135.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   135.2 +++ b/test/sun/security/krb5/UnknownCCEntry.java	Wed Dec 08 00:35:33 2010 -0800
   135.3 @@ -0,0 +1,219 @@
   135.4 +/*
   135.5 + * Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved.
   135.6 + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
   135.7 + *
   135.8 + * This code is free software; you can redistribute it and/or modify it
   135.9 + * under the terms of the GNU General Public License version 2 only, as
  135.10 + * published by the Free Software Foundation.
  135.11 + *
  135.12 + * This code is distributed in the hope that it will be useful, but WITHOUT
  135.13 + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
  135.14 + * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
  135.15 + * version 2 for more details (a copy is included in the LICENSE file that
  135.16 + * accompanied this code).
  135.17 + *
  135.18 + * You should have received a copy of the GNU General Public License version
  135.19 + * 2 along with this work; if not, write to the Free Software Foundation,
  135.20 + * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
  135.21 + *
  135.22 + * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
  135.23 + * or visit www.oracle.com if you need additional information or have any
  135.24 + * questions.
  135.25 + */
  135.26 +/*
  135.27 + * @test
  135.28 + * @bug 6979329
  135.29 + * @summary CCacheInputStream fails to read ticket cache files from Kerberos 1.8.1
  135.30 + */
  135.31 +
  135.32 +import java.io.ByteArrayInputStream;
  135.33 +import java.io.File;
  135.34 +import java.io.FileOutputStream;
  135.35 +import sun.security.krb5.internal.ccache.CCacheInputStream;
  135.36 +import sun.security.krb5.internal.ccache.CredentialsCache;
  135.37 +
  135.38 +public class UnknownCCEntry {
  135.39 +    public static void main(String[] args) throws Exception {
  135.40 +        // This is a ccache file generated on a test machine:
  135.41 +        // Default principal: dummy@MAX.LOCAL
  135.42 +        // Valid starting     Expires            Service principal
  135.43 +        // 08/24/10 10:37:28  08/25/10 10:37:28  krbtgt/MAX.LOCAL@MAX.LOCAL
  135.44 +        // Flags: FI, Etype (skey, tkt): AES-128 CTS mode with 96-bit SHA-1
  135.45 +        //        HMAC, AES-256 CTS mode with 96-bit SHA-1 HMAC
  135.46 +        byte[] krb5cc = {
  135.47 +            (byte)0x05, (byte)0x04, (byte)0x00, (byte)0x0C,
  135.48 +            (byte)0x00, (byte)0x01, (byte)0x00, (byte)0x08,
  135.49 +            (byte)0xFF, (byte)0xFF, (byte)0xFF, (byte)0xFA,
  135.50 +            (byte)0x00, (byte)0x00, (byte)0x00, (byte)0x00,
  135.51 +            (byte)0x00, (byte)0x00, (byte)0x00, (byte)0x01,
  135.52 +            (byte)0x00, (byte)0x00, (byte)0x00, (byte)0x01,
  135.53 +            (byte)0x00, (byte)0x00, (byte)0x00, (byte)0x09,
  135.54 +            (byte)0x4D, (byte)0x41, (byte)0x58, (byte)0x2E,
  135.55 +            (byte)0x4C, (byte)0x4F, (byte)0x43, (byte)0x41,
  135.56 +            (byte)0x4C, (byte)0x00, (byte)0x00, (byte)0x00,
  135.57 +            (byte)0x05, (byte)0x64, (byte)0x75, (byte)0x6D,
  135.58 +            (byte)0x6D, (byte)0x79, (byte)0x00, (byte)0x00,
  135.59 +            (byte)0x00, (byte)0x01, (byte)0x00, (byte)0x00,
  135.60 +            (byte)0x00, (byte)0x01, (byte)0x00, (byte)0x00,
  135.61 +            (byte)0x00, (byte)0x09, (byte)0x4D, (byte)0x41,
  135.62 +            (byte)0x58, (byte)0x2E, (byte)0x4C, (byte)0x4F,
  135.63 +            (byte)0x43, (byte)0x41, (byte)0x4C, (byte)0x00,
  135.64 +            (byte)0x00, (byte)0x00, (byte)0x05, (byte)0x64,
  135.65 +            (byte)0x75, (byte)0x6D, (byte)0x6D, (byte)0x79,
  135.66 +            (byte)0x00, (byte)0x00, (byte)0x00, (byte)0x00,
  135.67 +            (byte)0x00, (byte)0x00, (byte)0x00, (byte)0x02,
  135.68 +            (byte)0x00, (byte)0x00, (byte)0x00, (byte)0x09,
  135.69 +            (byte)0x4D, (byte)0x41, (byte)0x58, (byte)0x2E,
  135.70 +            (byte)0x4C, (byte)0x4F, (byte)0x43, (byte)0x41,
  135.71 +            (byte)0x4C, (byte)0x00, (byte)0x00, (byte)0x00,
  135.72 +            (byte)0x06, (byte)0x6B, (byte)0x72, (byte)0x62,
  135.73 +            (byte)0x74, (byte)0x67, (byte)0x74, (byte)0x00,
  135.74 +            (byte)0x00, (byte)0x00, (byte)0x09, (byte)0x4D,
  135.75 +            (byte)0x41, (byte)0x58, (byte)0x2E, (byte)0x4C,
  135.76 +            (byte)0x4F, (byte)0x43, (byte)0x41, (byte)0x4C,
  135.77 +            (byte)0x00, (byte)0x11, (byte)0x00, (byte)0x00,
  135.78 +            (byte)0x00, (byte)0x10, (byte)0x92, (byte)0x1D,
  135.79 +            (byte)0x1A, (byte)0x0C, (byte)0x7F, (byte)0xB8,
  135.80 +            (byte)0x01, (byte)0x2E, (byte)0xC9, (byte)0xF5,
  135.81 +            (byte)0x7B, (byte)0x92, (byte)0x81, (byte)0xCA,
  135.82 +            (byte)0x49, (byte)0xC5, (byte)0x4C, (byte)0x73,
  135.83 +            (byte)0x30, (byte)0x68, (byte)0x4C, (byte)0x73,
  135.84 +            (byte)0x30, (byte)0x68, (byte)0x4C, (byte)0x74,
  135.85 +            (byte)0x81, (byte)0xE8, (byte)0x00, (byte)0x00,
  135.86 +            (byte)0x00, (byte)0x00, (byte)0x00, (byte)0x40,
  135.87 +            (byte)0x41, (byte)0x00, (byte)0x00, (byte)0x00,
  135.88 +            (byte)0x00, (byte)0x00, (byte)0x00, (byte)0x00,
  135.89 +            (byte)0x00, (byte)0x00, (byte)0x00, (byte)0x00,
  135.90 +            (byte)0x00, (byte)0x01, (byte)0x29, (byte)0x61,
  135.91 +            (byte)0x82, (byte)0x01, (byte)0x25, (byte)0x30,
  135.92 +            (byte)0x82, (byte)0x01, (byte)0x21, (byte)0xA0,
  135.93 +            (byte)0x03, (byte)0x02, (byte)0x01, (byte)0x05,
  135.94 +            (byte)0xA1, (byte)0x0B, (byte)0x1B, (byte)0x09,
  135.95 +            (byte)0x4D, (byte)0x41, (byte)0x58, (byte)0x2E,
  135.96 +            (byte)0x4C, (byte)0x4F, (byte)0x43, (byte)0x41,
  135.97 +            (byte)0x4C, (byte)0xA2, (byte)0x1E, (byte)0x30,
  135.98 +            (byte)0x1C, (byte)0xA0, (byte)0x03, (byte)0x02,
  135.99 +            (byte)0x01, (byte)0x00, (byte)0xA1, (byte)0x15,
 135.100 +            (byte)0x30, (byte)0x13, (byte)0x1B, (byte)0x06,
 135.101 +            (byte)0x6B, (byte)0x72, (byte)0x62, (byte)0x74,
 135.102 +            (byte)0x67, (byte)0x74, (byte)0x1B, (byte)0x09,
 135.103 +            (byte)0x4D, (byte)0x41, (byte)0x58, (byte)0x2E,
 135.104 +            (byte)0x4C, (byte)0x4F, (byte)0x43, (byte)0x41,
 135.105 +            (byte)0x4C, (byte)0xA3, (byte)0x81, (byte)0xEC,
 135.106 +            (byte)0x30, (byte)0x81, (byte)0xE9, (byte)0xA0,
 135.107 +            (byte)0x03, (byte)0x02, (byte)0x01, (byte)0x12,
 135.108 +            (byte)0xA1, (byte)0x03, (byte)0x02, (byte)0x01,
 135.109 +            (byte)0x01, (byte)0xA2, (byte)0x81, (byte)0xDC,
 135.110 +            (byte)0x04, (byte)0x81, (byte)0xD9, (byte)0xFB,
 135.111 +            (byte)0x4B, (byte)0xD2, (byte)0x55, (byte)0x33,
 135.112 +            (byte)0xA8, (byte)0x1A, (byte)0xE6, (byte)0xB5,
 135.113 +            (byte)0x3D, (byte)0x67, (byte)0x46, (byte)0x69,
 135.114 +            (byte)0x6F, (byte)0x0A, (byte)0x64, (byte)0xE7,
 135.115 +            (byte)0x3D, (byte)0xEF, (byte)0x22, (byte)0xBE,
 135.116 +            (byte)0x81, (byte)0x32, (byte)0xF3, (byte)0x72,
 135.117 +            (byte)0xB4, (byte)0x50, (byte)0xE3, (byte)0xC3,
 135.118 +            (byte)0xDB, (byte)0xE5, (byte)0x38, (byte)0x3C,
 135.119 +            (byte)0x60, (byte)0xC8, (byte)0x08, (byte)0x53,
 135.120 +            (byte)0x44, (byte)0x6F, (byte)0xDF, (byte)0x55,
 135.121 +            (byte)0x67, (byte)0x32, (byte)0x02, (byte)0xDD,
 135.122 +            (byte)0x6B, (byte)0xFB, (byte)0x23, (byte)0x1A,
 135.123 +            (byte)0x88, (byte)0x71, (byte)0xE0, (byte)0xF8,
 135.124 +            (byte)0xBB, (byte)0x51, (byte)0x1E, (byte)0x76,
 135.125 +            (byte)0xC9, (byte)0x1F, (byte)0x45, (byte)0x9B,
 135.126 +            (byte)0xA0, (byte)0xA5, (byte)0x61, (byte)0x45,
 135.127 +            (byte)0x9E, (byte)0x65, (byte)0xB8, (byte)0xD6,
 135.128 +            (byte)0x0E, (byte)0x3C, (byte)0xD9, (byte)0x56,
 135.129 +            (byte)0xD6, (byte)0xA6, (byte)0xDD, (byte)0x36,
 135.130 +            (byte)0x21, (byte)0x25, (byte)0x0E, (byte)0xE6,
 135.131 +            (byte)0xAD, (byte)0xA0, (byte)0x3A, (byte)0x9B,
 135.132 +            (byte)0x21, (byte)0x87, (byte)0xE2, (byte)0xAF,
 135.133 +            (byte)0x3A, (byte)0xEF, (byte)0x75, (byte)0x85,
 135.134 +            (byte)0xA8, (byte)0xD7, (byte)0xE5, (byte)0x46,
 135.135 +            (byte)0xD8, (byte)0x5C, (byte)0x17, (byte)0x4E,
 135.136 +            (byte)0x64, (byte)0x51, (byte)0xDB, (byte)0x38,
 135.137 +            (byte)0x8E, (byte)0x6B, (byte)0x02, (byte)0x05,
 135.138 +            (byte)0x46, (byte)0x77, (byte)0xD0, (byte)0x75,
 135.139 +            (byte)0x8A, (byte)0xE0, (byte)0x42, (byte)0x5E,
 135.140 +            (byte)0x8D, (byte)0x49, (byte)0x86, (byte)0xDE,
 135.141 +            (byte)0x6C, (byte)0xBC, (byte)0xAF, (byte)0x10,
 135.142 +            (byte)0x9A, (byte)0x97, (byte)0x64, (byte)0xA6,
 135.143 +            (byte)0xBD, (byte)0xDB, (byte)0x01, (byte)0x40,
 135.144 +            (byte)0xA9, (byte)0x3D, (byte)0x74, (byte)0x99,
 135.145 +            (byte)0xDC, (byte)0x63, (byte)0x34, (byte)0x40,
 135.146 +            (byte)0x31, (byte)0x57, (byte)0xC7, (byte)0x70,
 135.147 +            (byte)0x9F, (byte)0xCE, (byte)0xC6, (byte)0x7B,
 135.148 +            (byte)0x00, (byte)0x5B, (byte)0x02, (byte)0x5C,
 135.149 +            (byte)0xC7, (byte)0x81, (byte)0x40, (byte)0x4D,
 135.150 +            (byte)0xA7, (byte)0xB1, (byte)0xD2, (byte)0xEA,
 135.151 +            (byte)0x8E, (byte)0xEC, (byte)0xA0, (byte)0xB3,
 135.152 +            (byte)0x03, (byte)0x29, (byte)0xB8, (byte)0x44,
 135.153 +            (byte)0xD7, (byte)0xA1, (byte)0x2B, (byte)0x37,
 135.154 +            (byte)0x9D, (byte)0x19, (byte)0x11, (byte)0x1D,
 135.155 +            (byte)0x58, (byte)0xE8, (byte)0x06, (byte)0xE7,
 135.156 +            (byte)0x06, (byte)0xE3, (byte)0xF7, (byte)0xEF,
 135.157 +            (byte)0x05, (byte)0xA9, (byte)0x05, (byte)0x93,
 135.158 +            (byte)0x42, (byte)0x94, (byte)0x5A, (byte)0xD6,
 135.159 +            (byte)0xA0, (byte)0x24, (byte)0x3A, (byte)0x52,
 135.160 +            (byte)0x92, (byte)0xA3, (byte)0x79, (byte)0x98,
 135.161 +            (byte)0x3C, (byte)0x68, (byte)0x55, (byte)0x1B,
 135.162 +            (byte)0x6A, (byte)0xC5, (byte)0x83, (byte)0x89,
 135.163 +            (byte)0x5A, (byte)0x79, (byte)0x5C, (byte)0x52,
 135.164 +            (byte)0xBA, (byte)0xB8, (byte)0xF7, (byte)0x72,
 135.165 +            (byte)0x00, (byte)0x00, (byte)0x00, (byte)0x00,
 135.166 +            (byte)0x00, (byte)0x00, (byte)0x00, (byte)0x01,
 135.167 +            (byte)0x00, (byte)0x00, (byte)0x00, (byte)0x01,
 135.168 +            (byte)0x00, (byte)0x00, (byte)0x00, (byte)0x09,
 135.169 +            (byte)0x4D, (byte)0x41, (byte)0x58, (byte)0x2E,
 135.170 +            (byte)0x4C, (byte)0x4F, (byte)0x43, (byte)0x41,
 135.171 +            (byte)0x4C, (byte)0x00, (byte)0x00, (byte)0x00,
 135.172 +            (byte)0x05, (byte)0x64, (byte)0x75, (byte)0x6D,
 135.173 +            (byte)0x6D, (byte)0x79, (byte)0x00, (byte)0x00,
 135.174 +            (byte)0x00, (byte)0x00, (byte)0x00, (byte)0x00,
 135.175 +            (byte)0x00, (byte)0x03, (byte)0x00, (byte)0x00,
 135.176 +            (byte)0x00, (byte)0x0C, (byte)0x58, (byte)0x2D,
 135.177 +            (byte)0x43, (byte)0x41, (byte)0x43, (byte)0x48,
 135.178 +            (byte)0x45, (byte)0x43, (byte)0x4F, (byte)0x4E,
 135.179 +            (byte)0x46, (byte)0x3A, (byte)0x00, (byte)0x00,
 135.180 +            (byte)0x00, (byte)0x15, (byte)0x6B, (byte)0x72,
 135.181 +            (byte)0x62, (byte)0x35, (byte)0x5F, (byte)0x63,
 135.182 +            (byte)0x63, (byte)0x61, (byte)0x63, (byte)0x68,
 135.183 +            (byte)0x65, (byte)0x5F, (byte)0x63, (byte)0x6F,
 135.184 +            (byte)0x6E, (byte)0x66, (byte)0x5F, (byte)0x64,
 135.185 +            (byte)0x61, (byte)0x74, (byte)0x61, (byte)0x00,
 135.186 +            (byte)0x00, (byte)0x00, (byte)0x0A, (byte)0x66,
 135.187 +            (byte)0x61, (byte)0x73, (byte)0x74, (byte)0x5F,
 135.188 +            (byte)0x61, (byte)0x76, (byte)0x61, (byte)0x69,
 135.189 +            (byte)0x6C, (byte)0x00, (byte)0x00, (byte)0x00,
 135.190 +            (byte)0x1A, (byte)0x6B, (byte)0x72, (byte)0x62,
 135.191 +            (byte)0x74, (byte)0x67, (byte)0x74, (byte)0x2F,
 135.192 +            (byte)0x4D, (byte)0x41, (byte)0x58, (byte)0x2E,
 135.193 +            (byte)0x4C, (byte)0x4F, (byte)0x43, (byte)0x41,
 135.194 +            (byte)0x4C, (byte)0x40, (byte)0x4D, (byte)0x41,
 135.195 +            (byte)0x58, (byte)0x2E, (byte)0x4C, (byte)0x4F,
 135.196 +            (byte)0x43, (byte)0x41, (byte)0x4C, (byte)0x00,
 135.197 +            (byte)0x00, (byte)0x00, (byte)0x00, (byte)0x00,
 135.198 +            (byte)0x00, (byte)0x00, (byte)0x00, (byte)0x00,
 135.199 +            (byte)0x00, (byte)0x00, (byte)0x00, (byte)0x00,
 135.200 +            (byte)0x00, (byte)0x00, (byte)0x00, (byte)0x00,
 135.201 +            (byte)0x00, (byte)0x00, (byte)0x00, (byte)0x00,
 135.202 +            (byte)0x00, (byte)0x00, (byte)0x00, (byte)0x00,
 135.203 +            (byte)0x00, (byte)0x00, (byte)0x00, (byte)0x00,
 135.204 +            (byte)0x00, (byte)0x00, (byte)0x00, (byte)0x00,
 135.205 +            (byte)0x00, (byte)0x00, (byte)0x00, (byte)0x00,
 135.206 +            (byte)0x00, (byte)0x03, (byte)0x79, (byte)0x65,
 135.207 +            (byte)0x73, (byte)0x00, (byte)0x00, (byte)0x00,
 135.208 +            (byte)0x00,
 135.209 +        };
 135.210 +
 135.211 +        File f = File.createTempFile("ccache", "cc", new File("."));
 135.212 +        FileOutputStream fout = new FileOutputStream(f);
 135.213 +        fout.write(krb5cc);
 135.214 +        fout.close();
 135.215 +
 135.216 +        CredentialsCache cc = CredentialsCache.getInstance(f.getPath());
 135.217 +        if (!cc.getDefaultCreds().getServicePrincipal().getNameStrings()[0]
 135.218 +                .equals("krbtgt")) {
 135.219 +            throw new Exception("No TGT found");
 135.220 +        }
 135.221 +    }
 135.222 +}
   136.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   136.2 +++ b/test/sun/security/krb5/tools/ktarg.sh	Wed Dec 08 00:35:33 2010 -0800
   136.3 @@ -0,0 +1,67 @@
   136.4 +#
   136.5 +# Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved.
   136.6 +# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
   136.7 +#
   136.8 +# This code is free software; you can redistribute it and/or modify it
   136.9 +# under the terms of the GNU General Public License version 2 only, as
  136.10 +# published by the Free Software Foundation.
  136.11 +#
  136.12 +# This code is distributed in the hope that it will be useful, but WITHOUT
  136.13 +# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
  136.14 +# FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
  136.15 +# version 2 for more details (a copy is included in the LICENSE file that
  136.16 +# accompanied this code).
  136.17 +#
  136.18 +# You should have received a copy of the GNU General Public License version
  136.19 +# 2 along with this work; if not, write to the Free Software Foundation,
  136.20 +# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
  136.21 +#
  136.22 +# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
  136.23 +# or visit www.oracle.com if you need additional information or have any
  136.24 +# questions.
  136.25 +#
  136.26 +
  136.27 +# @test
  136.28 +# @bug 7002036
  136.29 +# @summary ktab return code changes on a error case
  136.30 +# @run shell ktarg.sh
  136.31 +#
  136.32 +
  136.33 +if [ "${TESTJAVA}" = "" ] ; then
  136.34 +  JAVAC_CMD=`which javac`
  136.35 +  TESTJAVA=`dirname $JAVAC_CMD`/..
  136.36 +fi
  136.37 +
  136.38 +if [ "${TESTSRC}" = "" ] ; then
  136.39 +  TESTSRC="."
  136.40 +fi
  136.41 +
  136.42 +OS=`uname -s`
  136.43 +case "$OS" in
  136.44 +  CYGWIN* )
  136.45 +    FS="/"
  136.46 +    ;;
  136.47 +  Windows_* )
  136.48 +    FS="\\"
  136.49 +    ;;
  136.50 +  * )
  136.51 +    FS="/"
  136.52 +    echo "Unsupported system!"
  136.53 +    exit 0;
  136.54 +    ;;
  136.55 +esac
  136.56 +
  136.57 +KEYTAB=ktarg.tmp
  136.58 +
  136.59 +rm $KEYTAB 2> /dev/null
  136.60 +KTAB="${TESTJAVA}${FS}bin${FS}ktab -k $KEYTAB"
  136.61 +
  136.62 +$KTAB -a me mine || exit 1
  136.63 +
  136.64 +$KTAB -hello
  136.65 +if [ $? = 0 ]; then exit 2; fi
  136.66 +
  136.67 +$KTAB
  136.68 +if [ $? = 0 ]; then exit 3; fi
  136.69 +
  136.70 +exit 0
   137.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   137.2 +++ b/test/sun/security/pkcs11/Cipher/TestPKCS5PaddingError.java	Wed Dec 08 00:35:33 2010 -0800
   137.3 @@ -0,0 +1,132 @@
   137.4 +/*
   137.5 + * Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved.
   137.6 + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
   137.7 + *
   137.8 + * This code is free software; you can redistribute it and/or modify it
   137.9 + * under the terms of the GNU General Public License version 2 only, as
  137.10 + * published by the Free Software Foundation.
  137.11 + *
  137.12 + * This code is distributed in the hope that it will be useful, but WITHOUT
  137.13 + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
  137.14 + * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
  137.15 + * version 2 for more details (a copy is included in the LICENSE file that
  137.16 + * accompanied this code).
  137.17 + *
  137.18 + * You should have received a copy of the GNU General Public License version
  137.19 + * 2 along with this work; if not, write to the Free Software Foundation,
  137.20 + * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
  137.21 + *
  137.22 + * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
  137.23 + * or visit www.oracle.com if you need additional information or have any
  137.24 + * questions.
  137.25 + */
  137.26 +
  137.27 +/**
  137.28 + * @test
  137.29 + * @bug 6687725
  137.30 + * @summary Test internal PKCS5Padding impl with various error conditions.
  137.31 + * @author Valerie Peng
  137.32 + * @library ..
  137.33 + */
  137.34 +import java.io.*;
  137.35 +import java.nio.*;
  137.36 +import java.util.*;
  137.37 +
  137.38 +import java.security.*;
  137.39 +import java.security.spec.AlgorithmParameterSpec;
  137.40 +
  137.41 +import javax.crypto.*;
  137.42 +import javax.crypto.spec.IvParameterSpec;
  137.43 +
  137.44 +public class TestPKCS5PaddingError extends PKCS11Test {
  137.45 +    private static class CI { // class for holding Cipher Information
  137.46 +        String transformation;
  137.47 +        String keyAlgo;
  137.48 +
  137.49 +        CI(String transformation, String keyAlgo) {
  137.50 +            this.transformation = transformation;
  137.51 +            this.keyAlgo = keyAlgo;
  137.52 +        }
  137.53 +    }
  137.54 +
  137.55 +    private static final CI[] TEST_LIST = {
  137.56 +        // algorithms which use the native padding impl
  137.57 +        new CI("DES/CBC/PKCS5Padding", "DES"),
  137.58 +        new CI("DESede/CBC/PKCS5Padding", "DESede"),
  137.59 +        new CI("AES/CBC/PKCS5Padding", "AES"),
  137.60 +        // algorithms which use SunPKCS11's own padding impl
  137.61 +        new CI("DES/ECB/PKCS5Padding", "DES"),
  137.62 +        new CI("DESede/ECB/PKCS5Padding", "DESede"),
  137.63 +        new CI("AES/ECB/PKCS5Padding", "AES"),
  137.64 +    };
  137.65 +
  137.66 +    private static StringBuffer debugBuf = new StringBuffer();
  137.67 +
  137.68 +    public void main(Provider p) throws Exception {
  137.69 +        boolean status = true;
  137.70 +        Random random = new Random();
  137.71 +
  137.72 +        try {
  137.73 +            byte[] plainText = new byte[200];
  137.74 +
  137.75 +            for (int i = 0; i < TEST_LIST.length; i++) {
  137.76 +                CI currTest = TEST_LIST[i];
  137.77 +                System.out.println("===" + currTest.transformation + "===");
  137.78 +                try {
  137.79 +                    KeyGenerator kg =
  137.80 +                            KeyGenerator.getInstance(currTest.keyAlgo, p);
  137.81 +                    SecretKey key = kg.generateKey();
  137.82 +                    Cipher c1 = Cipher.getInstance(currTest.transformation,
  137.83 +                                                   "SunJCE");
  137.84 +                    c1.init(Cipher.ENCRYPT_MODE, key);
  137.85 +                    byte[] cipherText = c1.doFinal(plainText);
  137.86 +                    AlgorithmParameters params = c1.getParameters();
  137.87 +                    Cipher c2 = Cipher.getInstance(currTest.transformation, p);
  137.88 +                    c2.init(Cipher.DECRYPT_MODE, key, params);
  137.89 +
  137.90 +                    // 1st test: wrong output length
  137.91 +                    // NOTE: Skip NSS since it reports CKR_DEVICE_ERROR when
  137.92 +                    // the data passed to its EncryptUpdate/DecryptUpdate is
  137.93 +                    // not multiple of blocks
  137.94 +                    if (!p.getName().equals("SunPKCS11-NSS")) {
  137.95 +                        try {
  137.96 +                            System.out.println("Testing with wrong cipherText length");
  137.97 +                            c2.doFinal(cipherText, 0, cipherText.length - 2);
  137.98 +                        } catch (IllegalBlockSizeException ibe) {
  137.99 +                            // expected
 137.100 +                        } catch (Exception ex) {
 137.101 +                            System.out.println("Error: Unexpected Ex " + ex);
 137.102 +                            ex.printStackTrace();
 137.103 +                        }
 137.104 +                    }
 137.105 +                    // 2nd test: wrong padding value
 137.106 +                    try {
 137.107 +                        System.out.println("Testing with wrong padding bytes");
 137.108 +                        cipherText[cipherText.length - 1]++;
 137.109 +                        c2.doFinal(cipherText);
 137.110 +                    } catch (BadPaddingException bpe) {
 137.111 +                        // expected
 137.112 +                    } catch (Exception ex) {
 137.113 +                        System.out.println("Error: Unexpected Ex " + ex);
 137.114 +                        ex.printStackTrace();
 137.115 +                    }
 137.116 +                    System.out.println("DONE");
 137.117 +                } catch (NoSuchAlgorithmException nsae) {
 137.118 +                    System.out.println("Skipping unsupported algorithm: " +
 137.119 +                            nsae);
 137.120 +                }
 137.121 +            }
 137.122 +        } catch (Exception ex) {
 137.123 +            // print out debug info when exception is encountered
 137.124 +            if (debugBuf != null) {
 137.125 +                System.out.println(debugBuf.toString());
 137.126 +                debugBuf = new StringBuffer();
 137.127 +            }
 137.128 +            throw ex;
 137.129 +        }
 137.130 +    }
 137.131 +
 137.132 +    public static void main(String[] args) throws Exception {
 137.133 +        main(new TestPKCS5PaddingError());
 137.134 +    }
 137.135 +}
   138.1 --- a/test/sun/security/pkcs11/KeyGenerator/TestKeyGenerator.java	Tue Nov 30 09:57:47 2010 -0800
   138.2 +++ b/test/sun/security/pkcs11/KeyGenerator/TestKeyGenerator.java	Wed Dec 08 00:35:33 2010 -0800
   138.3 @@ -23,7 +23,7 @@
   138.4  
   138.5  /**
   138.6   * @test
   138.7 - * @bug 4917233 6461727 6490213
   138.8 + * @bug 4917233 6461727 6490213 6720456
   138.9   * @summary test the KeyGenerator
  138.10   * @author Andreas Sterbenz
  138.11   * @library ..
  138.12 @@ -104,7 +104,7 @@
  138.13          // Different PKCS11 impls have different ranges
  138.14          // of supported key sizes for variable-key-length
  138.15          // algorithms.
  138.16 -        // Solaris> Blowfish: 32-128 bits, RC4: 8-128 bits
  138.17 +        // Solaris> Blowfish: 32-128 or even 448 bits, RC4: 8-128 bits or as much as 2048 bits
  138.18          // NSS>     Blowfish: n/a,         RC4: 8-2048 bits
  138.19          // However, we explicitly disallowed key sizes less
  138.20          // than 40-bits.
  138.21 @@ -114,8 +114,8 @@
  138.22          test("Blowfish", 32, p, TestResult.FAIL);
  138.23          test("Blowfish", 40, p, TestResult.PASS);
  138.24          test("Blowfish", 128, p, TestResult.PASS);
  138.25 -        test("Blowfish", 136, p, TestResult.FAIL);
  138.26 -        test("Blowfish", 448, p, TestResult.FAIL);
  138.27 +        test("Blowfish", 136, p, TestResult.TBD);
  138.28 +        test("Blowfish", 448, p, TestResult.TBD);
  138.29          test("Blowfish", 456, p, TestResult.FAIL);
  138.30  
  138.31          test("ARCFOUR", 0, p, TestResult.FAIL);
  138.32 @@ -124,7 +124,7 @@
  138.33          test("ARCFOUR", 128, p, TestResult.PASS);
  138.34  
  138.35          if (p.getName().equals("SunPKCS11-Solaris")) {
  138.36 -            test("ARCFOUR", 1024, p, TestResult.FAIL);
  138.37 +            test("ARCFOUR", 1024, p, TestResult.TBD);
  138.38          } else if (p.getName().equals("SunPKCS11-NSS")) {
  138.39              test("ARCFOUR", 1024, p, TestResult.PASS);
  138.40              test("ARCFOUR", 2048, p, TestResult.PASS);
   139.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   139.2 +++ b/test/tools/launcher/Settings.java	Wed Dec 08 00:35:33 2010 -0800
   139.3 @@ -0,0 +1,137 @@
   139.4 +/*
   139.5 + * Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved.
   139.6 + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
   139.7 + *
   139.8 + * This code is free software; you can redistribute it and/or modify it
   139.9 + * under the terms of the GNU General Public License version 2 only, as
  139.10 + * published by the Free Software Foundation.
  139.11 + *
  139.12 + * This code is distributed in the hope that it will be useful, but WITHOUT
  139.13 + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
  139.14 + * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
  139.15 + * version 2 for more details (a copy is included in the LICENSE file that
  139.16 + * accompanied this code).
  139.17 + *
  139.18 + * You should have received a copy of the GNU General Public License version
  139.19 + * 2 along with this work; if not, write to the Free Software Foundation,
  139.20 + * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
  139.21 + *
  139.22 + * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
  139.23 + * or visit www.oracle.com if you need additional information or have any
  139.24 + * questions.
  139.25 + */
  139.26 +import java.io.File;
  139.27 +import java.io.IOException;
  139.28 +
  139.29 +/*
  139.30 + * @test
  139.31 + * @bug 6994753
  139.32 + * @summary tests -XshowSettings options
  139.33 + * @compile -XDignore.symbol.file Settings.java TestHelper.java
  139.34 + * @run main Settings
  139.35 + * @author ksrini
  139.36 + */
  139.37 +public class Settings {
  139.38 +    private static File testJar = null;
  139.39 +
  139.40 +    static void init() throws IOException {
  139.41 +        if  (testJar != null) {
  139.42 +            return;
  139.43 +        }
  139.44 +        testJar = new File("test.jar");
  139.45 +        StringBuilder tsrc = new StringBuilder();
  139.46 +        tsrc.append("public static void main(String... args) {\n");
  139.47 +        tsrc.append("   for (String x : args) {\n");
  139.48 +        tsrc.append("        System.out.println(x);\n");
  139.49 +        tsrc.append("   }\n");
  139.50 +        tsrc.append("}\n");
  139.51 +        TestHelper.createJar(testJar, tsrc.toString());
  139.52 +    }
  139.53 +
  139.54 +    static void checkContains(TestHelper.TestResult tr, String str) {
  139.55 +        if (!tr.contains(str)) {
  139.56 +            System.out.println(tr);
  139.57 +            throw new RuntimeException(str + " not found");
  139.58 +        }
  139.59 +    }
  139.60 +
  139.61 +    static void checkNoContains(TestHelper.TestResult tr, String str) {
  139.62 +        if (tr.contains(str)) {
  139.63 +            System.out.println(tr.status);
  139.64 +            throw new RuntimeException(str + " found");
  139.65 +        }
  139.66 +    }
  139.67 +
  139.68 +    private static final String VM_SETTINGS = "VM settings:";
  139.69 +    private static final String PROP_SETTINGS = "Property settings:";
  139.70 +    private static final String LOCALE_SETTINGS = "Locale settings:";
  139.71 +
  139.72 +    static void containsAllOptions(TestHelper.TestResult tr) {
  139.73 +        checkContains(tr, VM_SETTINGS);
  139.74 +        checkContains(tr, PROP_SETTINGS);
  139.75 +        checkContains(tr, LOCALE_SETTINGS);
  139.76 +    }
  139.77 +
  139.78 +    static void runTestOptionDefault() throws IOException {
  139.79 +        TestHelper.TestResult tr = null;
  139.80 +        tr = TestHelper.doExec(TestHelper.javaCmd, "-Xmx512m", "-Xss128k",
  139.81 +                "-XshowSettings", "-jar", testJar.getAbsolutePath());
  139.82 +        containsAllOptions(tr);
  139.83 +        if (!tr.isOK()) {
  139.84 +            System.out.println(tr.status);
  139.85 +            throw new RuntimeException("test fails");
  139.86 +        }
  139.87 +    }
  139.88 +
  139.89 +    static void runTestOptionAll() throws IOException {
  139.90 +        init();
  139.91 +        TestHelper.TestResult tr = null;
  139.92 +        tr = TestHelper.doExec(TestHelper.javaCmd, "-XshowSettings:all");
  139.93 +        containsAllOptions(tr);
  139.94 +    }
  139.95 +
  139.96 +    static void runTestOptionVM() throws IOException {
  139.97 +        TestHelper.TestResult tr = null;
  139.98 +        tr = TestHelper.doExec(TestHelper.javaCmd, "-XshowSettings:vm");
  139.99 +        checkContains(tr, VM_SETTINGS);
 139.100 +        checkNoContains(tr, PROP_SETTINGS);
 139.101 +        checkNoContains(tr, LOCALE_SETTINGS);
 139.102 +    }
 139.103 +
 139.104 +    static void runTestOptionProperty() throws IOException {
 139.105 +        TestHelper.TestResult tr = null;
 139.106 +        tr = TestHelper.doExec(TestHelper.javaCmd, "-XshowSettings:properties");
 139.107 +        checkNoContains(tr, VM_SETTINGS);
 139.108 +        checkContains(tr, PROP_SETTINGS);
 139.109 +        checkNoContains(tr, LOCALE_SETTINGS);
 139.110 +    }
 139.111 +
 139.112 +    static void runTestOptionLocale() throws IOException {
 139.113 +        TestHelper.TestResult tr = null;
 139.114 +        tr = TestHelper.doExec(TestHelper.javaCmd, "-XshowSettings:locale");
 139.115 +        checkNoContains(tr, VM_SETTINGS);
 139.116 +        checkNoContains(tr, PROP_SETTINGS);
 139.117 +        checkContains(tr, LOCALE_SETTINGS);
 139.118 +    }
 139.119 +
 139.120 +    static void runTestBadOptions() throws IOException {
 139.121 +        TestHelper.TestResult tr = null;
 139.122 +        tr = TestHelper.doExec(TestHelper.javaCmd, "-XshowSettingsBadOption");
 139.123 +        checkNoContains(tr, VM_SETTINGS);
 139.124 +        checkNoContains(tr, PROP_SETTINGS);
 139.125 +        checkNoContains(tr, LOCALE_SETTINGS);
 139.126 +        checkContains(tr, "Unrecognized option: -XshowSettingsBadOption");
 139.127 +    }
 139.128 +    public static void main(String... args) {
 139.129 +        try {
 139.130 +            runTestOptionAll();
 139.131 +            runTestOptionDefault();
 139.132 +            runTestOptionVM();
 139.133 +            runTestOptionProperty();
 139.134 +            runTestOptionLocale();
 139.135 +            runTestBadOptions();
 139.136 +        } catch (IOException ioe) {
 139.137 +            throw new RuntimeException(ioe);
 139.138 +        }
 139.139 +    }
 139.140 +}