1 /* 2 * CDDL HEADER START 3 * 4 * The contents of this file are subject to the terms of the 5 * Common Development and Distribution License (the "License"). 6 * You may not use this file except in compliance with the License. 7 * 8 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 9 * or http://www.opensolaris.org/os/licensing. 10 * See the License for the specific language governing permissions 11 * and limitations under the License. 12 * 13 * When distributing Covered Code, include this CDDL HEADER in each 14 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 15 * If applicable, add the following below this CDDL HEADER, with the 16 * fields enclosed by brackets "[]" replaced with your own identifying 17 * information: Portions Copyright [yyyy] [name of copyright owner] 18 * 19 * CDDL HEADER END 20 */ 21 /* 22 * Copyright 2007 Sun Microsystems, Inc. All rights reserved. 23 * Use is subject to license terms. 24 */ 25 26 #ifndef _SMBSRV_CP_UNICODE_H 27 #define _SMBSRV_CP_UNICODE_H 28 29 #pragma ident "@(#)cp_unicode.h 1.1 07/10/25 SMI" 30 31 #include <smbsrv/smb_i18n.h> 32 33 #ifdef __cplusplus 34 extern "C" { 35 #endif 36 37 struct unicode_cp { 38 mts_wchar_t val; 39 mts_wchar_t ctype; 40 mts_wchar_t lower; 41 mts_wchar_t upper; 42 }; 43 44 struct unicode_cp a_unicode[] = { 45 { 0x0000, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 46 { 0x0001, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 47 { 0x0002, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 48 { 0x0003, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 49 { 0x0004, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 50 { 0x0005, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 51 { 0x0006, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 52 { 0x0007, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 53 { 0x0008, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 54 { 0x0009, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 55 { 0x000A, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 56 { 0x000B, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 57 { 0x000C, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 58 { 0x000D, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 59 { 0x000E, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 60 { 0x000F, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 61 { 0x0010, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 62 { 0x0011, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 63 { 0x0012, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 64 { 0x0013, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 65 { 0x0014, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 66 { 0x0015, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 67 { 0x0016, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 68 { 0x0017, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 69 { 0x0018, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 70 { 0x0019, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 71 { 0x001A, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 72 { 0x001B, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 73 { 0x001C, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 74 { 0x001D, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 75 { 0x001E, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 76 { 0x001F, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 77 { 0x0020, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 78 { 0x0021, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 79 { 0x0022, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 80 { 0x0023, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 81 { 0x0024, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 82 { 0x0025, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 83 { 0x0026, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 84 { 0x0027, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 85 { 0x0028, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 86 { 0x0029, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 87 { 0x002A, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 88 { 0x002B, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 89 { 0x002C, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 90 { 0x002D, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 91 { 0x002E, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 92 { 0x002F, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 93 { 0x0030, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 94 { 0x0031, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 95 { 0x0032, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 96 { 0x0033, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 97 { 0x0034, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 98 { 0x0035, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 99 { 0x0036, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 100 { 0x0037, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 101 { 0x0038, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 102 { 0x0039, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 103 { 0x003A, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 104 { 0x003B, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 105 { 0x003C, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 106 { 0x003D, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 107 { 0x003E, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 108 { 0x003F, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 109 { 0x0040, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 110 { 0x0041, CODEPAGE_ISUPPER, 0x0061, 0xFFFF }, 111 { 0x0042, CODEPAGE_ISUPPER, 0x0062, 0xFFFF }, 112 { 0x0043, CODEPAGE_ISUPPER, 0x0063, 0xFFFF }, 113 { 0x0044, CODEPAGE_ISUPPER, 0x0064, 0xFFFF }, 114 { 0x0045, CODEPAGE_ISUPPER, 0x0065, 0xFFFF }, 115 { 0x0046, CODEPAGE_ISUPPER, 0x0066, 0xFFFF }, 116 { 0x0047, CODEPAGE_ISUPPER, 0x0067, 0xFFFF }, 117 { 0x0048, CODEPAGE_ISUPPER, 0x0068, 0xFFFF }, 118 { 0x0049, CODEPAGE_ISUPPER, 0x0069, 0xFFFF }, 119 { 0x004A, CODEPAGE_ISUPPER, 0x006A, 0xFFFF }, 120 { 0x004B, CODEPAGE_ISUPPER, 0x006B, 0xFFFF }, 121 { 0x004C, CODEPAGE_ISUPPER, 0x006C, 0xFFFF }, 122 { 0x004D, CODEPAGE_ISUPPER, 0x006D, 0xFFFF }, 123 { 0x004E, CODEPAGE_ISUPPER, 0x006E, 0xFFFF }, 124 { 0x004F, CODEPAGE_ISUPPER, 0x006F, 0xFFFF }, 125 { 0x0050, CODEPAGE_ISUPPER, 0x0070, 0xFFFF }, 126 { 0x0051, CODEPAGE_ISUPPER, 0x0071, 0xFFFF }, 127 { 0x0052, CODEPAGE_ISUPPER, 0x0072, 0xFFFF }, 128 { 0x0053, CODEPAGE_ISUPPER, 0x0073, 0xFFFF }, 129 { 0x0054, CODEPAGE_ISUPPER, 0x0074, 0xFFFF }, 130 { 0x0055, CODEPAGE_ISUPPER, 0x0075, 0xFFFF }, 131 { 0x0056, CODEPAGE_ISUPPER, 0x0076, 0xFFFF }, 132 { 0x0057, CODEPAGE_ISUPPER, 0x0077, 0xFFFF }, 133 { 0x0058, CODEPAGE_ISUPPER, 0x0078, 0xFFFF }, 134 { 0x0059, CODEPAGE_ISUPPER, 0x0079, 0xFFFF }, 135 { 0x005A, CODEPAGE_ISUPPER, 0x007A, 0xFFFF }, 136 { 0x005B, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 137 { 0x005C, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 138 { 0x005D, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 139 { 0x005E, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 140 { 0x005F, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 141 { 0x0060, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 142 { 0x0061, CODEPAGE_ISLOWER, 0xFFFF, 0x0041 }, 143 { 0x0062, CODEPAGE_ISLOWER, 0xFFFF, 0x0042 }, 144 { 0x0063, CODEPAGE_ISLOWER, 0xFFFF, 0x0043 }, 145 { 0x0064, CODEPAGE_ISLOWER, 0xFFFF, 0x0044 }, 146 { 0x0065, CODEPAGE_ISLOWER, 0xFFFF, 0x0045 }, 147 { 0x0066, CODEPAGE_ISLOWER, 0xFFFF, 0x0046 }, 148 { 0x0067, CODEPAGE_ISLOWER, 0xFFFF, 0x0047 }, 149 { 0x0068, CODEPAGE_ISLOWER, 0xFFFF, 0x0048 }, 150 { 0x0069, CODEPAGE_ISLOWER, 0xFFFF, 0x0049 }, 151 { 0x006A, CODEPAGE_ISLOWER, 0xFFFF, 0x004A }, 152 { 0x006B, CODEPAGE_ISLOWER, 0xFFFF, 0x004B }, 153 { 0x006C, CODEPAGE_ISLOWER, 0xFFFF, 0x004C }, 154 { 0x006D, CODEPAGE_ISLOWER, 0xFFFF, 0x004D }, 155 { 0x006E, CODEPAGE_ISLOWER, 0xFFFF, 0x004E }, 156 { 0x006F, CODEPAGE_ISLOWER, 0xFFFF, 0x004F }, 157 { 0x0070, CODEPAGE_ISLOWER, 0xFFFF, 0x0050 }, 158 { 0x0071, CODEPAGE_ISLOWER, 0xFFFF, 0x0051 }, 159 { 0x0072, CODEPAGE_ISLOWER, 0xFFFF, 0x0052 }, 160 { 0x0073, CODEPAGE_ISLOWER, 0xFFFF, 0x0053 }, 161 { 0x0074, CODEPAGE_ISLOWER, 0xFFFF, 0x0054 }, 162 { 0x0075, CODEPAGE_ISLOWER, 0xFFFF, 0x0055 }, 163 { 0x0076, CODEPAGE_ISLOWER, 0xFFFF, 0x0056 }, 164 { 0x0077, CODEPAGE_ISLOWER, 0xFFFF, 0x0057 }, 165 { 0x0078, CODEPAGE_ISLOWER, 0xFFFF, 0x0058 }, 166 { 0x0079, CODEPAGE_ISLOWER, 0xFFFF, 0x0059 }, 167 { 0x007A, CODEPAGE_ISLOWER, 0xFFFF, 0x005A }, 168 { 0x007B, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 169 { 0x007C, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 170 { 0x007D, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 171 { 0x007E, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 172 { 0x007F, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 173 { 0x0080, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 174 { 0x0081, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 175 { 0x0082, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 176 { 0x0083, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 177 { 0x0084, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 178 { 0x0085, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 179 { 0x0086, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 180 { 0x0087, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 181 { 0x0088, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 182 { 0x0089, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 183 { 0x008A, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 184 { 0x008B, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 185 { 0x008C, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 186 { 0x008D, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 187 { 0x008E, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 188 { 0x008F, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 189 { 0x0090, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 190 { 0x0091, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 191 { 0x0092, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 192 { 0x0093, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 193 { 0x0094, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 194 { 0x0095, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 195 { 0x0096, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 196 { 0x0097, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 197 { 0x0098, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 198 { 0x0099, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 199 { 0x009A, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 200 { 0x009B, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 201 { 0x009C, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 202 { 0x009D, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 203 { 0x009E, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 204 { 0x009F, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 205 { 0x00A0, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 206 { 0x00A1, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 207 { 0x00A2, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 208 { 0x00A3, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 209 { 0x00A4, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 210 { 0x00A5, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 211 { 0x00A6, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 212 { 0x00A7, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 213 { 0x00A8, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 214 { 0x00A9, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 215 { 0x00AA, CODEPAGE_ISLOWER, 0xFFFF, 0xFFFF }, 216 { 0x00AB, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 217 { 0x00AC, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 218 { 0x00AD, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 219 { 0x00AE, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 220 { 0x00AF, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 221 { 0x00B0, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 222 { 0x00B1, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 223 { 0x00B2, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 224 { 0x00B3, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 225 { 0x00B4, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 226 { 0x00B5, CODEPAGE_ISLOWER, 0xFFFF, 0xFFFF }, 227 { 0x00B6, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 228 { 0x00B7, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 229 { 0x00B8, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 230 { 0x00B9, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 231 { 0x00BA, CODEPAGE_ISLOWER, 0xFFFF, 0xFFFF }, 232 { 0x00BB, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 233 { 0x00BC, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 234 { 0x00BD, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 235 { 0x00BE, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 236 { 0x00BF, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 237 { 0x00C0, CODEPAGE_ISUPPER, 0x00E0, 0xFFFF }, 238 { 0x00C1, CODEPAGE_ISUPPER, 0x00E1, 0xFFFF }, 239 { 0x00C2, CODEPAGE_ISUPPER, 0x00E2, 0xFFFF }, 240 { 0x00C3, CODEPAGE_ISUPPER, 0x00E3, 0xFFFF }, 241 { 0x00C4, CODEPAGE_ISUPPER, 0x00E4, 0xFFFF }, 242 { 0x00C5, CODEPAGE_ISUPPER, 0x00E5, 0xFFFF }, 243 { 0x00C6, CODEPAGE_ISUPPER, 0x00E6, 0xFFFF }, 244 { 0x00C7, CODEPAGE_ISUPPER, 0x00E7, 0xFFFF }, 245 { 0x00C8, CODEPAGE_ISUPPER, 0x00E8, 0xFFFF }, 246 { 0x00C9, CODEPAGE_ISUPPER, 0x00E9, 0xFFFF }, 247 { 0x00CA, CODEPAGE_ISUPPER, 0x00EA, 0xFFFF }, 248 { 0x00CB, CODEPAGE_ISUPPER, 0x00EB, 0xFFFF }, 249 { 0x00CC, CODEPAGE_ISUPPER, 0x00EC, 0xFFFF }, 250 { 0x00CD, CODEPAGE_ISUPPER, 0x00ED, 0xFFFF }, 251 { 0x00CE, CODEPAGE_ISUPPER, 0x00EE, 0xFFFF }, 252 { 0x00CF, CODEPAGE_ISUPPER, 0x00EF, 0xFFFF }, 253 { 0x00D0, CODEPAGE_ISUPPER, 0x00F0, 0xFFFF }, 254 { 0x00D1, CODEPAGE_ISUPPER, 0x00F1, 0xFFFF }, 255 { 0x00D2, CODEPAGE_ISUPPER, 0x00F2, 0xFFFF }, 256 { 0x00D3, CODEPAGE_ISUPPER, 0x00F3, 0xFFFF }, 257 { 0x00D4, CODEPAGE_ISUPPER, 0x00F4, 0xFFFF }, 258 { 0x00D5, CODEPAGE_ISUPPER, 0x00F5, 0xFFFF }, 259 { 0x00D6, CODEPAGE_ISUPPER, 0x00F6, 0xFFFF }, 260 { 0x00D7, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 261 { 0x00D8, CODEPAGE_ISUPPER, 0x00F8, 0xFFFF }, 262 { 0x00D9, CODEPAGE_ISUPPER, 0x00F9, 0xFFFF }, 263 { 0x00DA, CODEPAGE_ISUPPER, 0x00FA, 0xFFFF }, 264 { 0x00DB, CODEPAGE_ISUPPER, 0x00FB, 0xFFFF }, 265 { 0x00DC, CODEPAGE_ISUPPER, 0x00FC, 0xFFFF }, 266 { 0x00DD, CODEPAGE_ISUPPER, 0x00FD, 0xFFFF }, 267 { 0x00DE, CODEPAGE_ISUPPER, 0x00FE, 0xFFFF }, 268 { 0x00DF, CODEPAGE_ISLOWER, 0xFFFF, 0xFFFF }, 269 { 0x00E0, CODEPAGE_ISLOWER, 0xFFFF, 0x00C0 }, 270 { 0x00E1, CODEPAGE_ISLOWER, 0xFFFF, 0x00C1 }, 271 { 0x00E2, CODEPAGE_ISLOWER, 0xFFFF, 0x00C2 }, 272 { 0x00E3, CODEPAGE_ISLOWER, 0xFFFF, 0x00C3 }, 273 { 0x00E4, CODEPAGE_ISLOWER, 0xFFFF, 0x00C4 }, 274 { 0x00E5, CODEPAGE_ISLOWER, 0xFFFF, 0x00C5 }, 275 { 0x00E6, CODEPAGE_ISLOWER, 0xFFFF, 0x00C6 }, 276 { 0x00E7, CODEPAGE_ISLOWER, 0xFFFF, 0x00C7 }, 277 { 0x00E8, CODEPAGE_ISLOWER, 0xFFFF, 0x00C8 }, 278 { 0x00E9, CODEPAGE_ISLOWER, 0xFFFF, 0x00C9 }, 279 { 0x00EA, CODEPAGE_ISLOWER, 0xFFFF, 0x00CA }, 280 { 0x00EB, CODEPAGE_ISLOWER, 0xFFFF, 0x00CB }, 281 { 0x00EC, CODEPAGE_ISLOWER, 0xFFFF, 0x00CC }, 282 { 0x00ED, CODEPAGE_ISLOWER, 0xFFFF, 0x00CD }, 283 { 0x00EE, CODEPAGE_ISLOWER, 0xFFFF, 0x00CE }, 284 { 0x00EF, CODEPAGE_ISLOWER, 0xFFFF, 0x00CF }, 285 { 0x00F0, CODEPAGE_ISLOWER, 0xFFFF, 0x00D0 }, 286 { 0x00F1, CODEPAGE_ISLOWER, 0xFFFF, 0x00D1 }, 287 { 0x00F2, CODEPAGE_ISLOWER, 0xFFFF, 0x00D2 }, 288 { 0x00F3, CODEPAGE_ISLOWER, 0xFFFF, 0x00D3 }, 289 { 0x00F4, CODEPAGE_ISLOWER, 0xFFFF, 0x00D4 }, 290 { 0x00F5, CODEPAGE_ISLOWER, 0xFFFF, 0x00D5 }, 291 { 0x00F6, CODEPAGE_ISLOWER, 0xFFFF, 0x00D6 }, 292 { 0x00F7, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 293 { 0x00F8, CODEPAGE_ISLOWER, 0xFFFF, 0x00D8 }, 294 { 0x00F9, CODEPAGE_ISLOWER, 0xFFFF, 0x00D9 }, 295 { 0x00FA, CODEPAGE_ISLOWER, 0xFFFF, 0x00DA }, 296 { 0x00FB, CODEPAGE_ISLOWER, 0xFFFF, 0x00DB }, 297 { 0x00FC, CODEPAGE_ISLOWER, 0xFFFF, 0x00DC }, 298 { 0x00FD, CODEPAGE_ISLOWER, 0xFFFF, 0x00DD }, 299 { 0x00FE, CODEPAGE_ISLOWER, 0xFFFF, 0x00DE }, 300 { 0x00FF, CODEPAGE_ISLOWER, 0xFFFF, 0x0178 }, 301 { 0x0100, CODEPAGE_ISUPPER, 0x0101, 0xFFFF }, 302 { 0x0101, CODEPAGE_ISLOWER, 0xFFFF, 0x0100 }, 303 { 0x0102, CODEPAGE_ISUPPER, 0x0103, 0xFFFF }, 304 { 0x0103, CODEPAGE_ISLOWER, 0xFFFF, 0x0102 }, 305 { 0x0104, CODEPAGE_ISUPPER, 0x0105, 0xFFFF }, 306 { 0x0105, CODEPAGE_ISLOWER, 0xFFFF, 0x0104 }, 307 { 0x0106, CODEPAGE_ISUPPER, 0x0107, 0xFFFF }, 308 { 0x0107, CODEPAGE_ISLOWER, 0xFFFF, 0x0106 }, 309 { 0x0108, CODEPAGE_ISUPPER, 0x0109, 0xFFFF }, 310 { 0x0109, CODEPAGE_ISLOWER, 0xFFFF, 0x0108 }, 311 { 0x010A, CODEPAGE_ISUPPER, 0x010B, 0xFFFF }, 312 { 0x010B, CODEPAGE_ISLOWER, 0xFFFF, 0x010A }, 313 { 0x010C, CODEPAGE_ISUPPER, 0x010D, 0xFFFF }, 314 { 0x010D, CODEPAGE_ISLOWER, 0xFFFF, 0x010C }, 315 { 0x010E, CODEPAGE_ISUPPER, 0x010F, 0xFFFF }, 316 { 0x010F, CODEPAGE_ISLOWER, 0xFFFF, 0x010E }, 317 { 0x0110, CODEPAGE_ISUPPER, 0x0111, 0xFFFF }, 318 { 0x0111, CODEPAGE_ISLOWER, 0xFFFF, 0x0110 }, 319 { 0x0112, CODEPAGE_ISUPPER, 0x0113, 0xFFFF }, 320 { 0x0113, CODEPAGE_ISLOWER, 0xFFFF, 0x0112 }, 321 { 0x0114, CODEPAGE_ISUPPER, 0x0115, 0xFFFF }, 322 { 0x0115, CODEPAGE_ISLOWER, 0xFFFF, 0x0114 }, 323 { 0x0116, CODEPAGE_ISUPPER, 0x0117, 0xFFFF }, 324 { 0x0117, CODEPAGE_ISLOWER, 0xFFFF, 0x0116 }, 325 { 0x0118, CODEPAGE_ISUPPER, 0x0119, 0xFFFF }, 326 { 0x0119, CODEPAGE_ISLOWER, 0xFFFF, 0x0118 }, 327 { 0x011A, CODEPAGE_ISUPPER, 0x011B, 0xFFFF }, 328 { 0x011B, CODEPAGE_ISLOWER, 0xFFFF, 0x011A }, 329 { 0x011C, CODEPAGE_ISUPPER, 0x011D, 0xFFFF }, 330 { 0x011D, CODEPAGE_ISLOWER, 0xFFFF, 0x011C }, 331 { 0x011E, CODEPAGE_ISUPPER, 0x011F, 0xFFFF }, 332 { 0x011F, CODEPAGE_ISLOWER, 0xFFFF, 0x011E }, 333 { 0x0120, CODEPAGE_ISUPPER, 0x0121, 0xFFFF }, 334 { 0x0121, CODEPAGE_ISLOWER, 0xFFFF, 0x0120 }, 335 { 0x0122, CODEPAGE_ISUPPER, 0x0123, 0xFFFF }, 336 { 0x0123, CODEPAGE_ISLOWER, 0xFFFF, 0x0122 }, 337 { 0x0124, CODEPAGE_ISUPPER, 0x0125, 0xFFFF }, 338 { 0x0125, CODEPAGE_ISLOWER, 0xFFFF, 0x0124 }, 339 { 0x0126, CODEPAGE_ISUPPER, 0x0127, 0xFFFF }, 340 { 0x0127, CODEPAGE_ISLOWER, 0xFFFF, 0x0126 }, 341 { 0x0128, CODEPAGE_ISUPPER, 0x0129, 0xFFFF }, 342 { 0x0129, CODEPAGE_ISLOWER, 0xFFFF, 0x0128 }, 343 { 0x012A, CODEPAGE_ISUPPER, 0x012B, 0xFFFF }, 344 { 0x012B, CODEPAGE_ISLOWER, 0xFFFF, 0x012A }, 345 { 0x012C, CODEPAGE_ISUPPER, 0x012D, 0xFFFF }, 346 { 0x012D, CODEPAGE_ISLOWER, 0xFFFF, 0x012C }, 347 { 0x012E, CODEPAGE_ISUPPER, 0x012F, 0xFFFF }, 348 { 0x012F, CODEPAGE_ISLOWER, 0xFFFF, 0x012E }, 349 { 0x0130, CODEPAGE_ISUPPER, 0x0069, 0xFFFF }, 350 { 0x0131, CODEPAGE_ISLOWER, 0xFFFF, 0x0049 }, 351 { 0x0132, CODEPAGE_ISUPPER, 0x0133, 0xFFFF }, 352 { 0x0133, CODEPAGE_ISLOWER, 0xFFFF, 0x0132 }, 353 { 0x0134, CODEPAGE_ISUPPER, 0x0135, 0xFFFF }, 354 { 0x0135, CODEPAGE_ISLOWER, 0xFFFF, 0x0134 }, 355 { 0x0136, CODEPAGE_ISUPPER, 0x0137, 0xFFFF }, 356 { 0x0137, CODEPAGE_ISLOWER, 0xFFFF, 0x0136 }, 357 { 0x0138, CODEPAGE_ISLOWER, 0xFFFF, 0xFFFF }, 358 { 0x0139, CODEPAGE_ISUPPER, 0x013A, 0xFFFF }, 359 { 0x013A, CODEPAGE_ISLOWER, 0xFFFF, 0x0139 }, 360 { 0x013B, CODEPAGE_ISUPPER, 0x013C, 0xFFFF }, 361 { 0x013C, CODEPAGE_ISLOWER, 0xFFFF, 0x013B }, 362 { 0x013D, CODEPAGE_ISUPPER, 0x013E, 0xFFFF }, 363 { 0x013E, CODEPAGE_ISLOWER, 0xFFFF, 0x013D }, 364 { 0x013F, CODEPAGE_ISUPPER, 0x0140, 0xFFFF }, 365 { 0x0140, CODEPAGE_ISLOWER, 0xFFFF, 0x013F }, 366 { 0x0141, CODEPAGE_ISUPPER, 0x0142, 0xFFFF }, 367 { 0x0142, CODEPAGE_ISLOWER, 0xFFFF, 0x0141 }, 368 { 0x0143, CODEPAGE_ISUPPER, 0x0144, 0xFFFF }, 369 { 0x0144, CODEPAGE_ISLOWER, 0xFFFF, 0x0143 }, 370 { 0x0145, CODEPAGE_ISUPPER, 0x0146, 0xFFFF }, 371 { 0x0146, CODEPAGE_ISLOWER, 0xFFFF, 0x0145 }, 372 { 0x0147, CODEPAGE_ISUPPER, 0x0148, 0xFFFF }, 373 { 0x0148, CODEPAGE_ISLOWER, 0xFFFF, 0x0147 }, 374 { 0x0149, CODEPAGE_ISLOWER, 0xFFFF, 0xFFFF }, 375 { 0x014A, CODEPAGE_ISUPPER, 0x014B, 0xFFFF }, 376 { 0x014B, CODEPAGE_ISLOWER, 0xFFFF, 0x014A }, 377 { 0x014C, CODEPAGE_ISUPPER, 0x014D, 0xFFFF }, 378 { 0x014D, CODEPAGE_ISLOWER, 0xFFFF, 0x014C }, 379 { 0x014E, CODEPAGE_ISUPPER, 0x014F, 0xFFFF }, 380 { 0x014F, CODEPAGE_ISLOWER, 0xFFFF, 0x014E }, 381 { 0x0150, CODEPAGE_ISUPPER, 0x0151, 0xFFFF }, 382 { 0x0151, CODEPAGE_ISLOWER, 0xFFFF, 0x0150 }, 383 { 0x0152, CODEPAGE_ISUPPER, 0x0153, 0xFFFF }, 384 { 0x0153, CODEPAGE_ISLOWER, 0xFFFF, 0x0152 }, 385 { 0x0154, CODEPAGE_ISUPPER, 0x0155, 0xFFFF }, 386 { 0x0155, CODEPAGE_ISLOWER, 0xFFFF, 0x0154 }, 387 { 0x0156, CODEPAGE_ISUPPER, 0x0157, 0xFFFF }, 388 { 0x0157, CODEPAGE_ISLOWER, 0xFFFF, 0x0156 }, 389 { 0x0158, CODEPAGE_ISUPPER, 0x0159, 0xFFFF }, 390 { 0x0159, CODEPAGE_ISLOWER, 0xFFFF, 0x0158 }, 391 { 0x015A, CODEPAGE_ISUPPER, 0x015B, 0xFFFF }, 392 { 0x015B, CODEPAGE_ISLOWER, 0xFFFF, 0x015A }, 393 { 0x015C, CODEPAGE_ISUPPER, 0x015D, 0xFFFF }, 394 { 0x015D, CODEPAGE_ISLOWER, 0xFFFF, 0x015C }, 395 { 0x015E, CODEPAGE_ISUPPER, 0x015F, 0xFFFF }, 396 { 0x015F, CODEPAGE_ISLOWER, 0xFFFF, 0x015E }, 397 { 0x0160, CODEPAGE_ISUPPER, 0x0161, 0xFFFF }, 398 { 0x0161, CODEPAGE_ISLOWER, 0xFFFF, 0x0160 }, 399 { 0x0162, CODEPAGE_ISUPPER, 0x0163, 0xFFFF }, 400 { 0x0163, CODEPAGE_ISLOWER, 0xFFFF, 0x0162 }, 401 { 0x0164, CODEPAGE_ISUPPER, 0x0165, 0xFFFF }, 402 { 0x0165, CODEPAGE_ISLOWER, 0xFFFF, 0x0164 }, 403 { 0x0166, CODEPAGE_ISUPPER, 0x0167, 0xFFFF }, 404 { 0x0167, CODEPAGE_ISLOWER, 0xFFFF, 0x0166 }, 405 { 0x0168, CODEPAGE_ISUPPER, 0x0169, 0xFFFF }, 406 { 0x0169, CODEPAGE_ISLOWER, 0xFFFF, 0x0168 }, 407 { 0x016A, CODEPAGE_ISUPPER, 0x016B, 0xFFFF }, 408 { 0x016B, CODEPAGE_ISLOWER, 0xFFFF, 0x016A }, 409 { 0x016C, CODEPAGE_ISUPPER, 0x016D, 0xFFFF }, 410 { 0x016D, CODEPAGE_ISLOWER, 0xFFFF, 0x016C }, 411 { 0x016E, CODEPAGE_ISUPPER, 0x016F, 0xFFFF }, 412 { 0x016F, CODEPAGE_ISLOWER, 0xFFFF, 0x016E }, 413 { 0x0170, CODEPAGE_ISUPPER, 0x0171, 0xFFFF }, 414 { 0x0171, CODEPAGE_ISLOWER, 0xFFFF, 0x0170 }, 415 { 0x0172, CODEPAGE_ISUPPER, 0x0173, 0xFFFF }, 416 { 0x0173, CODEPAGE_ISLOWER, 0xFFFF, 0x0172 }, 417 { 0x0174, CODEPAGE_ISUPPER, 0x0175, 0xFFFF }, 418 { 0x0175, CODEPAGE_ISLOWER, 0xFFFF, 0x0174 }, 419 { 0x0176, CODEPAGE_ISUPPER, 0x0177, 0xFFFF }, 420 { 0x0177, CODEPAGE_ISLOWER, 0xFFFF, 0x0176 }, 421 { 0x0178, CODEPAGE_ISUPPER, 0x00FF, 0xFFFF }, 422 { 0x0179, CODEPAGE_ISUPPER, 0x017A, 0xFFFF }, 423 { 0x017A, CODEPAGE_ISLOWER, 0xFFFF, 0x0179 }, 424 { 0x017B, CODEPAGE_ISUPPER, 0x017C, 0xFFFF }, 425 { 0x017C, CODEPAGE_ISLOWER, 0xFFFF, 0x017B }, 426 { 0x017D, CODEPAGE_ISUPPER, 0x017E, 0xFFFF }, 427 { 0x017E, CODEPAGE_ISLOWER, 0xFFFF, 0x017D }, 428 { 0x017F, CODEPAGE_ISLOWER, 0xFFFF, 0x0053 }, 429 { 0x0180, CODEPAGE_ISLOWER, 0xFFFF, 0xFFFF }, 430 { 0x0181, CODEPAGE_ISUPPER, 0x0253, 0xFFFF }, 431 { 0x0182, CODEPAGE_ISUPPER, 0x0183, 0xFFFF }, 432 { 0x0183, CODEPAGE_ISLOWER, 0xFFFF, 0x0182 }, 433 { 0x0184, CODEPAGE_ISUPPER, 0x0185, 0xFFFF }, 434 { 0x0185, CODEPAGE_ISLOWER, 0xFFFF, 0x0184 }, 435 { 0x0186, CODEPAGE_ISUPPER, 0x0254, 0xFFFF }, 436 { 0x0187, CODEPAGE_ISUPPER, 0x0188, 0xFFFF }, 437 { 0x0188, CODEPAGE_ISLOWER, 0xFFFF, 0x0187 }, 438 { 0x0189, CODEPAGE_ISUPPER, 0x0256, 0xFFFF }, 439 { 0x018A, CODEPAGE_ISUPPER, 0x0257, 0xFFFF }, 440 { 0x018B, CODEPAGE_ISUPPER, 0x018C, 0xFFFF }, 441 { 0x018C, CODEPAGE_ISLOWER, 0xFFFF, 0x018B }, 442 { 0x018D, CODEPAGE_ISLOWER, 0xFFFF, 0xFFFF }, 443 { 0x018E, CODEPAGE_ISUPPER, 0x0258, 0xFFFF }, 444 { 0x018F, CODEPAGE_ISUPPER, 0x0259, 0xFFFF }, 445 { 0x0190, CODEPAGE_ISUPPER, 0x025B, 0xFFFF }, 446 { 0x0191, CODEPAGE_ISUPPER, 0x0192, 0xFFFF }, 447 { 0x0192, CODEPAGE_ISLOWER, 0xFFFF, 0x0191 }, 448 { 0x0193, CODEPAGE_ISUPPER, 0x0260, 0xFFFF }, 449 { 0x0194, CODEPAGE_ISUPPER, 0x0263, 0xFFFF }, 450 { 0x0195, CODEPAGE_ISLOWER, 0xFFFF, 0xFFFF }, 451 { 0x0196, CODEPAGE_ISUPPER, 0x0269, 0xFFFF }, 452 { 0x0197, CODEPAGE_ISUPPER, 0x0268, 0xFFFF }, 453 { 0x0198, CODEPAGE_ISUPPER, 0x0199, 0xFFFF }, 454 { 0x0199, CODEPAGE_ISLOWER, 0xFFFF, 0x0198 }, 455 { 0x019A, CODEPAGE_ISLOWER, 0xFFFF, 0xFFFF }, 456 { 0x019B, CODEPAGE_ISLOWER, 0xFFFF, 0xFFFF }, 457 { 0x019C, CODEPAGE_ISUPPER, 0x026F, 0xFFFF }, 458 { 0x019D, CODEPAGE_ISUPPER, 0x0272, 0xFFFF }, 459 { 0x019E, CODEPAGE_ISLOWER, 0xFFFF, 0xFFFF }, 460 { 0x019F, CODEPAGE_ISUPPER, 0xFFFF, 0xFFFF }, 461 { 0x01A0, CODEPAGE_ISUPPER, 0x01A1, 0xFFFF }, 462 { 0x01A1, CODEPAGE_ISLOWER, 0xFFFF, 0x01A0 }, 463 { 0x01A2, CODEPAGE_ISUPPER, 0x01A3, 0xFFFF }, 464 { 0x01A3, CODEPAGE_ISLOWER, 0xFFFF, 0x01A2 }, 465 { 0x01A4, CODEPAGE_ISUPPER, 0x01A5, 0xFFFF }, 466 { 0x01A5, CODEPAGE_ISLOWER, 0xFFFF, 0x01A4 }, 467 { 0x01A6, CODEPAGE_ISUPPER, 0xFFFF, 0xFFFF }, 468 { 0x01A7, CODEPAGE_ISUPPER, 0x01A8, 0xFFFF }, 469 { 0x01A8, CODEPAGE_ISLOWER, 0xFFFF, 0x01A7 }, 470 { 0x01A9, CODEPAGE_ISUPPER, 0x0283, 0xFFFF }, 471 { 0x01AA, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 472 { 0x01AB, CODEPAGE_ISLOWER, 0xFFFF, 0xFFFF }, 473 { 0x01AC, CODEPAGE_ISUPPER, 0x01AD, 0xFFFF }, 474 { 0x01AD, CODEPAGE_ISLOWER, 0xFFFF, 0x01AC }, 475 { 0x01AE, CODEPAGE_ISUPPER, 0x0288, 0xFFFF }, 476 { 0x01AF, CODEPAGE_ISUPPER, 0x01B0, 0xFFFF }, 477 { 0x01B0, CODEPAGE_ISLOWER, 0xFFFF, 0x01AF }, 478 { 0x01B1, CODEPAGE_ISUPPER, 0x028A, 0xFFFF }, 479 { 0x01B2, CODEPAGE_ISUPPER, 0x028B, 0xFFFF }, 480 { 0x01B3, CODEPAGE_ISUPPER, 0x01B4, 0xFFFF }, 481 { 0x01B4, CODEPAGE_ISLOWER, 0xFFFF, 0x01B3 }, 482 { 0x01B5, CODEPAGE_ISUPPER, 0x01B6, 0xFFFF }, 483 { 0x01B6, CODEPAGE_ISLOWER, 0xFFFF, 0x01B5 }, 484 { 0x01B7, CODEPAGE_ISUPPER, 0x0292, 0xFFFF }, 485 { 0x01B8, CODEPAGE_ISUPPER, 0x01B9, 0xFFFF }, 486 { 0x01B9, CODEPAGE_ISLOWER, 0xFFFF, 0x01B8 }, 487 { 0x01BA, CODEPAGE_ISLOWER, 0xFFFF, 0xFFFF }, 488 { 0x01BB, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 489 { 0x01BC, CODEPAGE_ISUPPER, 0x01BD, 0xFFFF }, 490 { 0x01BD, CODEPAGE_ISLOWER, 0xFFFF, 0x01BC }, 491 { 0x01BE, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 492 { 0x01BF, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 493 { 0x01C0, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 494 { 0x01C1, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 495 { 0x01C2, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 496 { 0x01C3, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 497 { 0x01C4, CODEPAGE_ISUPPER, 0x01C6, 0x01C5 }, 498 { 0x01C5, CODEPAGE_ISNONE, 0x01C6, 0xFFFF }, 499 { 0x01C6, CODEPAGE_ISLOWER, 0xFFFF, 0x01C5 }, 500 { 0x01C7, CODEPAGE_ISUPPER, 0x01C9, 0x01C8 }, 501 { 0x01C8, CODEPAGE_ISNONE, 0x01C9, 0xFFFF }, 502 { 0x01C9, CODEPAGE_ISLOWER, 0xFFFF, 0x01C8 }, 503 { 0x01CA, CODEPAGE_ISUPPER, 0x01CC, 0x01CB }, 504 { 0x01CB, CODEPAGE_ISNONE, 0x01CC, 0xFFFF }, 505 { 0x01CC, CODEPAGE_ISLOWER, 0xFFFF, 0x01CB }, 506 { 0x01CD, CODEPAGE_ISUPPER, 0x01CE, 0xFFFF }, 507 { 0x01CE, CODEPAGE_ISLOWER, 0xFFFF, 0x01CD }, 508 { 0x01CF, CODEPAGE_ISUPPER, 0x01D0, 0xFFFF }, 509 { 0x01D0, CODEPAGE_ISLOWER, 0xFFFF, 0x01CF }, 510 { 0x01D1, CODEPAGE_ISUPPER, 0x01D2, 0xFFFF }, 511 { 0x01D2, CODEPAGE_ISLOWER, 0xFFFF, 0x01D1 }, 512 { 0x01D3, CODEPAGE_ISUPPER, 0x01D4, 0xFFFF }, 513 { 0x01D4, CODEPAGE_ISLOWER, 0xFFFF, 0x01D3 }, 514 { 0x01D5, CODEPAGE_ISUPPER, 0x01D6, 0xFFFF }, 515 { 0x01D6, CODEPAGE_ISLOWER, 0xFFFF, 0x01D5 }, 516 { 0x01D7, CODEPAGE_ISUPPER, 0x01D8, 0xFFFF }, 517 { 0x01D8, CODEPAGE_ISLOWER, 0xFFFF, 0x01D7 }, 518 { 0x01D9, CODEPAGE_ISUPPER, 0x01DA, 0xFFFF }, 519 { 0x01DA, CODEPAGE_ISLOWER, 0xFFFF, 0x01D9 }, 520 { 0x01DB, CODEPAGE_ISUPPER, 0x01DC, 0xFFFF }, 521 { 0x01DC, CODEPAGE_ISLOWER, 0xFFFF, 0x01DB }, 522 { 0x01DD, CODEPAGE_ISLOWER, 0xFFFF, 0xFFFF }, 523 { 0x01DE, CODEPAGE_ISUPPER, 0x01DF, 0xFFFF }, 524 { 0x01DF, CODEPAGE_ISLOWER, 0xFFFF, 0x01DE }, 525 { 0x01E0, CODEPAGE_ISUPPER, 0x01E1, 0xFFFF }, 526 { 0x01E1, CODEPAGE_ISLOWER, 0xFFFF, 0x01E0 }, 527 { 0x01E2, CODEPAGE_ISUPPER, 0x01E3, 0xFFFF }, 528 { 0x01E3, CODEPAGE_ISLOWER, 0xFFFF, 0x01E2 }, 529 { 0x01E4, CODEPAGE_ISUPPER, 0x01E5, 0xFFFF }, 530 { 0x01E5, CODEPAGE_ISLOWER, 0xFFFF, 0x01E4 }, 531 { 0x01E6, CODEPAGE_ISUPPER, 0x01E7, 0xFFFF }, 532 { 0x01E7, CODEPAGE_ISLOWER, 0xFFFF, 0x01E6 }, 533 { 0x01E8, CODEPAGE_ISUPPER, 0x01E9, 0xFFFF }, 534 { 0x01E9, CODEPAGE_ISLOWER, 0xFFFF, 0x01E8 }, 535 { 0x01EA, CODEPAGE_ISUPPER, 0x01EB, 0xFFFF }, 536 { 0x01EB, CODEPAGE_ISLOWER, 0xFFFF, 0x01EA }, 537 { 0x01EC, CODEPAGE_ISUPPER, 0x01ED, 0xFFFF }, 538 { 0x01ED, CODEPAGE_ISLOWER, 0xFFFF, 0x01EC }, 539 { 0x01EE, CODEPAGE_ISUPPER, 0x01EF, 0xFFFF }, 540 { 0x01EF, CODEPAGE_ISLOWER, 0xFFFF, 0x01EE }, 541 { 0x01F0, CODEPAGE_ISLOWER, 0xFFFF, 0xFFFF }, 542 { 0x01F1, CODEPAGE_ISUPPER, 0x01F3, 0x01F2 }, 543 { 0x01F2, CODEPAGE_ISNONE, 0x01F3, 0xFFFF }, 544 { 0x01F3, CODEPAGE_ISLOWER, 0xFFFF, 0x01F2 }, 545 { 0x01F4, CODEPAGE_ISUPPER, 0x01F5, 0xFFFF }, 546 { 0x01F5, CODEPAGE_ISLOWER, 0xFFFF, 0x01F4 }, 547 { 0x01FA, CODEPAGE_ISUPPER, 0x01FB, 0xFFFF }, 548 { 0x01FB, CODEPAGE_ISLOWER, 0xFFFF, 0x01FA }, 549 { 0x01FC, CODEPAGE_ISUPPER, 0x01FD, 0xFFFF }, 550 { 0x01FD, CODEPAGE_ISLOWER, 0xFFFF, 0x01FC }, 551 { 0x01FE, CODEPAGE_ISUPPER, 0x01FF, 0xFFFF }, 552 { 0x01FF, CODEPAGE_ISLOWER, 0xFFFF, 0x01FE }, 553 { 0x0200, CODEPAGE_ISUPPER, 0x0201, 0xFFFF }, 554 { 0x0201, CODEPAGE_ISLOWER, 0xFFFF, 0x0200 }, 555 { 0x0202, CODEPAGE_ISUPPER, 0x0203, 0xFFFF }, 556 { 0x0203, CODEPAGE_ISLOWER, 0xFFFF, 0x0202 }, 557 { 0x0204, CODEPAGE_ISUPPER, 0x0205, 0xFFFF }, 558 { 0x0205, CODEPAGE_ISLOWER, 0xFFFF, 0x0204 }, 559 { 0x0206, CODEPAGE_ISUPPER, 0x0207, 0xFFFF }, 560 { 0x0207, CODEPAGE_ISLOWER, 0xFFFF, 0x0206 }, 561 { 0x0208, CODEPAGE_ISUPPER, 0x0209, 0xFFFF }, 562 { 0x0209, CODEPAGE_ISLOWER, 0xFFFF, 0x0208 }, 563 { 0x020A, CODEPAGE_ISUPPER, 0x020B, 0xFFFF }, 564 { 0x020B, CODEPAGE_ISLOWER, 0xFFFF, 0x020A }, 565 { 0x020C, CODEPAGE_ISUPPER, 0x020D, 0xFFFF }, 566 { 0x020D, CODEPAGE_ISLOWER, 0xFFFF, 0x020C }, 567 { 0x020E, CODEPAGE_ISUPPER, 0x020F, 0xFFFF }, 568 { 0x020F, CODEPAGE_ISLOWER, 0xFFFF, 0x020E }, 569 { 0x0210, CODEPAGE_ISUPPER, 0x0211, 0xFFFF }, 570 { 0x0211, CODEPAGE_ISLOWER, 0xFFFF, 0x0210 }, 571 { 0x0212, CODEPAGE_ISUPPER, 0x0213, 0xFFFF }, 572 { 0x0213, CODEPAGE_ISLOWER, 0xFFFF, 0x0212 }, 573 { 0x0214, CODEPAGE_ISUPPER, 0x0215, 0xFFFF }, 574 { 0x0215, CODEPAGE_ISLOWER, 0xFFFF, 0x0214 }, 575 { 0x0216, CODEPAGE_ISUPPER, 0x0217, 0xFFFF }, 576 { 0x0217, CODEPAGE_ISLOWER, 0xFFFF, 0x0216 }, 577 { 0x0250, CODEPAGE_ISLOWER, 0xFFFF, 0xFFFF }, 578 { 0x0251, CODEPAGE_ISLOWER, 0xFFFF, 0xFFFF }, 579 { 0x0252, CODEPAGE_ISLOWER, 0xFFFF, 0xFFFF }, 580 { 0x0253, CODEPAGE_ISLOWER, 0xFFFF, 0x0181 }, 581 { 0x0254, CODEPAGE_ISLOWER, 0xFFFF, 0x0186 }, 582 { 0x0255, CODEPAGE_ISLOWER, 0xFFFF, 0xFFFF }, 583 { 0x0256, CODEPAGE_ISLOWER, 0xFFFF, 0x0189 }, 584 { 0x0257, CODEPAGE_ISLOWER, 0xFFFF, 0x018A }, 585 { 0x0258, CODEPAGE_ISLOWER, 0xFFFF, 0x018E }, 586 { 0x0259, CODEPAGE_ISLOWER, 0xFFFF, 0x018F }, 587 { 0x025A, CODEPAGE_ISLOWER, 0xFFFF, 0xFFFF }, 588 { 0x025B, CODEPAGE_ISLOWER, 0xFFFF, 0x0190 }, 589 { 0x025C, CODEPAGE_ISLOWER, 0xFFFF, 0xFFFF }, 590 { 0x025D, CODEPAGE_ISLOWER, 0xFFFF, 0xFFFF }, 591 { 0x025E, CODEPAGE_ISLOWER, 0xFFFF, 0xFFFF }, 592 { 0x025F, CODEPAGE_ISLOWER, 0xFFFF, 0xFFFF }, 593 { 0x0260, CODEPAGE_ISLOWER, 0xFFFF, 0x0193 }, 594 { 0x0261, CODEPAGE_ISLOWER, 0xFFFF, 0xFFFF }, 595 { 0x0262, CODEPAGE_ISLOWER, 0xFFFF, 0xFFFF }, 596 { 0x0263, CODEPAGE_ISLOWER, 0xFFFF, 0x0194 }, 597 { 0x0264, CODEPAGE_ISLOWER, 0xFFFF, 0xFFFF }, 598 { 0x0265, CODEPAGE_ISLOWER, 0xFFFF, 0xFFFF }, 599 { 0x0266, CODEPAGE_ISLOWER, 0xFFFF, 0xFFFF }, 600 { 0x0267, CODEPAGE_ISLOWER, 0xFFFF, 0xFFFF }, 601 { 0x0268, CODEPAGE_ISLOWER, 0xFFFF, 0x0197 }, 602 { 0x0269, CODEPAGE_ISLOWER, 0xFFFF, 0x0196 }, 603 { 0x026A, CODEPAGE_ISLOWER, 0xFFFF, 0xFFFF }, 604 { 0x026B, CODEPAGE_ISLOWER, 0xFFFF, 0xFFFF }, 605 { 0x026C, CODEPAGE_ISLOWER, 0xFFFF, 0xFFFF }, 606 { 0x026D, CODEPAGE_ISLOWER, 0xFFFF, 0xFFFF }, 607 { 0x026E, CODEPAGE_ISLOWER, 0xFFFF, 0xFFFF }, 608 { 0x026F, CODEPAGE_ISLOWER, 0xFFFF, 0x019C }, 609 { 0x0270, CODEPAGE_ISLOWER, 0xFFFF, 0xFFFF }, 610 { 0x0271, CODEPAGE_ISLOWER, 0xFFFF, 0xFFFF }, 611 { 0x0272, CODEPAGE_ISLOWER, 0xFFFF, 0x019D }, 612 { 0x0273, CODEPAGE_ISLOWER, 0xFFFF, 0xFFFF }, 613 { 0x0274, CODEPAGE_ISLOWER, 0xFFFF, 0xFFFF }, 614 { 0x0275, CODEPAGE_ISLOWER, 0xFFFF, 0xFFFF }, 615 { 0x0276, CODEPAGE_ISLOWER, 0xFFFF, 0xFFFF }, 616 { 0x0277, CODEPAGE_ISLOWER, 0xFFFF, 0xFFFF }, 617 { 0x0278, CODEPAGE_ISLOWER, 0xFFFF, 0xFFFF }, 618 { 0x0279, CODEPAGE_ISLOWER, 0xFFFF, 0xFFFF }, 619 { 0x027A, CODEPAGE_ISLOWER, 0xFFFF, 0xFFFF }, 620 { 0x027B, CODEPAGE_ISLOWER, 0xFFFF, 0xFFFF }, 621 { 0x027C, CODEPAGE_ISLOWER, 0xFFFF, 0xFFFF }, 622 { 0x027D, CODEPAGE_ISLOWER, 0xFFFF, 0xFFFF }, 623 { 0x027E, CODEPAGE_ISLOWER, 0xFFFF, 0xFFFF }, 624 { 0x027F, CODEPAGE_ISLOWER, 0xFFFF, 0xFFFF }, 625 { 0x0280, CODEPAGE_ISLOWER, 0xFFFF, 0xFFFF }, 626 { 0x0281, CODEPAGE_ISLOWER, 0xFFFF, 0xFFFF }, 627 { 0x0282, CODEPAGE_ISLOWER, 0xFFFF, 0xFFFF }, 628 { 0x0283, CODEPAGE_ISLOWER, 0xFFFF, 0x01A9 }, 629 { 0x0284, CODEPAGE_ISLOWER, 0xFFFF, 0xFFFF }, 630 { 0x0285, CODEPAGE_ISLOWER, 0xFFFF, 0xFFFF }, 631 { 0x0286, CODEPAGE_ISLOWER, 0xFFFF, 0xFFFF }, 632 { 0x0287, CODEPAGE_ISLOWER, 0xFFFF, 0xFFFF }, 633 { 0x0288, CODEPAGE_ISLOWER, 0xFFFF, 0x01AE }, 634 { 0x0289, CODEPAGE_ISLOWER, 0xFFFF, 0xFFFF }, 635 { 0x028A, CODEPAGE_ISLOWER, 0xFFFF, 0x01B1 }, 636 { 0x028B, CODEPAGE_ISLOWER, 0xFFFF, 0x01B2 }, 637 { 0x028C, CODEPAGE_ISLOWER, 0xFFFF, 0xFFFF }, 638 { 0x028D, CODEPAGE_ISLOWER, 0xFFFF, 0xFFFF }, 639 { 0x028E, CODEPAGE_ISLOWER, 0xFFFF, 0xFFFF }, 640 { 0x028F, CODEPAGE_ISLOWER, 0xFFFF, 0xFFFF }, 641 { 0x0290, CODEPAGE_ISLOWER, 0xFFFF, 0xFFFF }, 642 { 0x0291, CODEPAGE_ISLOWER, 0xFFFF, 0xFFFF }, 643 { 0x0292, CODEPAGE_ISLOWER, 0xFFFF, 0x01B7 }, 644 { 0x0293, CODEPAGE_ISLOWER, 0xFFFF, 0xFFFF }, 645 { 0x0294, CODEPAGE_ISLOWER, 0xFFFF, 0xFFFF }, 646 { 0x0295, CODEPAGE_ISLOWER, 0xFFFF, 0xFFFF }, 647 { 0x0296, CODEPAGE_ISLOWER, 0xFFFF, 0xFFFF }, 648 { 0x0297, CODEPAGE_ISLOWER, 0xFFFF, 0xFFFF }, 649 { 0x0298, CODEPAGE_ISLOWER, 0xFFFF, 0xFFFF }, 650 { 0x0299, CODEPAGE_ISLOWER, 0xFFFF, 0xFFFF }, 651 { 0x029A, CODEPAGE_ISLOWER, 0xFFFF, 0xFFFF }, 652 { 0x029B, CODEPAGE_ISLOWER, 0xFFFF, 0xFFFF }, 653 { 0x029C, CODEPAGE_ISLOWER, 0xFFFF, 0xFFFF }, 654 { 0x029D, CODEPAGE_ISLOWER, 0xFFFF, 0xFFFF }, 655 { 0x029E, CODEPAGE_ISLOWER, 0xFFFF, 0xFFFF }, 656 { 0x029F, CODEPAGE_ISLOWER, 0xFFFF, 0xFFFF }, 657 { 0x02A0, CODEPAGE_ISLOWER, 0xFFFF, 0xFFFF }, 658 { 0x02A1, CODEPAGE_ISLOWER, 0xFFFF, 0xFFFF }, 659 { 0x02A2, CODEPAGE_ISLOWER, 0xFFFF, 0xFFFF }, 660 { 0x02A3, CODEPAGE_ISLOWER, 0xFFFF, 0xFFFF }, 661 { 0x02A4, CODEPAGE_ISLOWER, 0xFFFF, 0xFFFF }, 662 { 0x02A5, CODEPAGE_ISLOWER, 0xFFFF, 0xFFFF }, 663 { 0x02A6, CODEPAGE_ISLOWER, 0xFFFF, 0xFFFF }, 664 { 0x02A7, CODEPAGE_ISLOWER, 0xFFFF, 0xFFFF }, 665 { 0x02A8, CODEPAGE_ISLOWER, 0xFFFF, 0xFFFF }, 666 { 0x02B0, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 667 { 0x02B1, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 668 { 0x02B2, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 669 { 0x02B3, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 670 { 0x02B4, CODEPAGE_ISNONE, 0xFFFF, 0xFFFF }, 671 {