1 /* -*- buffer-read-only: t -*- 2 * 3 * regcharclass.h 4 * 5 * Copyright (C) 2007, 2011 by Larry Wall and others 6 * 7 * You may distribute under the terms of either the GNU General Public 8 * License or the Artistic License, as specified in the README file. 9 * 10 * !!!!!!! DO NOT EDIT THIS FILE !!!!!!! 11 * This file is built by regen/regcharclass.pl. 12 * Any changes made here will be lost! 13 * WARNING: These macros are for internal Perl core use only, and may be 14 * changed or removed without notice. 15 */ 16 17 18 #ifndef PERL_REGCHARCLASS_H_ /* Guard against nested #includes */ 19 #define PERL_REGCHARCLASS_H_ 20 21 #if 'A' == 65 /* ASCII/Latin1 */ 22 /* 23 LNBREAK: Line Break: \R 24 25 "\x0D\x0A" # CRLF - Network (Windows) line ending 26 \p{VertSpace} 27 */ 28 /*** GENERATED CODE ***/ 29 #define is_LNBREAK_safe(s,e,is_utf8) \ 30 ( ((e)-(s) > 2) ? \ 31 ( ( inRANGE_helper_(U8, ((const U8*)s)[0], '\n', '\f') ) ? 1 \ 32 : ( '\r' == ((const U8*)s)[0] ) ? \ 33 ( ( '\n' == ((const U8*)s)[1] ) ? 2 : 1 ) \ 34 : ( is_utf8 ) ? \ 35 ( ( 0xC2 == ((const U8*)s)[0] ) ? \ 36 ( ( 0x85 == ((const U8*)s)[1] ) ? 2 : 0 ) \ 37 : ( ( ( 0xE2 == ((const U8*)s)[0] ) && ( 0x80 == ((const U8*)s)[1] ) ) && ( inRANGE_helper_(U8, ((const U8*)s)[2], 0xA8, 0xA9) ) ) ? 3 : 0 )\ 38 : ( 0x85 == ((const U8*)s)[0] ) ) \ 39 : ((e)-(s) > 1) ? \ 40 ( ( inRANGE_helper_(U8, ((const U8*)s)[0], '\n', '\f') ) ? 1 \ 41 : ( '\r' == ((const U8*)s)[0] ) ? \ 42 ( ( '\n' == ((const U8*)s)[1] ) ? 2 : 1 ) \ 43 : ( is_utf8 ) ? \ 44 ( ( ( 0xC2 == ((const U8*)s)[0] ) && ( 0x85 == ((const U8*)s)[1] ) ) ? 2 : 0 )\ 45 : ( 0x85 == ((const U8*)s)[0] ) ) \ 46 : ((e)-(s) > 0) ? \ 47 ( ( inRANGE_helper_(U8, ((const U8*)s)[0], '\n', '\r') ) ? 1 \ 48 : ( !( is_utf8 ) ) ? \ 49 ( 0x85 == ((const U8*)s)[0] ) \ 50 : 0 ) \ 51 : 0 ) 52 53 /*** GENERATED CODE ***/ 54 #define is_LNBREAK_utf8_safe(s,e) \ 55 ( ((e)-(s) > 2) ? \ 56 ( ( inRANGE_helper_(U8, ((const U8*)s)[0], '\n', '\f') ) ? 1 \ 57 : ( '\r' == ((const U8*)s)[0] ) ? \ 58 ( ( '\n' == ((const U8*)s)[1] ) ? 2 : 1 ) \ 59 : ( 0xC2 == ((const U8*)s)[0] ) ? \ 60 ( ( 0x85 == ((const U8*)s)[1] ) ? 2 : 0 ) \ 61 : ( ( ( 0xE2 == ((const U8*)s)[0] ) && ( 0x80 == ((const U8*)s)[1] ) ) && ( inRANGE_helper_(U8, ((const U8*)s)[2], 0xA8, 0xA9) ) ) ? 3 : 0 )\ 62 : ((e)-(s) > 1) ? \ 63 ( ( inRANGE_helper_(U8, ((const U8*)s)[0], '\n', '\f') ) ? 1 \ 64 : ( '\r' == ((const U8*)s)[0] ) ? \ 65 ( ( '\n' == ((const U8*)s)[1] ) ? 2 : 1 ) \ 66 : ( ( 0xC2 == ((const U8*)s)[0] ) && ( 0x85 == ((const U8*)s)[1] ) ) ? 2 : 0 )\ 67 : ((e)-(s) > 0) ? \ 68 ( inRANGE_helper_(U8, ((const U8*)s)[0], '\n', '\r') ) \ 69 : 0 ) 70 71 /*** GENERATED CODE ***/ 72 #define is_LNBREAK_latin1_safe(s,e) \ 73 ( ((e)-(s) > 1) ? \ 74 ( ( inRANGE_helper_(U8, ((const U8*)s)[0], '\n', '\f') || 0x85 == ((const U8*)s)[0] ) ? 1\ 75 : ( '\r' == ((const U8*)s)[0] ) ? \ 76 ( ( '\n' == ((const U8*)s)[1] ) ? 2 : 1 ) \ 77 : 0 ) \ 78 : ((e)-(s) > 0) ? \ 79 ( inRANGE_helper_(U8, ((const U8*)s)[0], '\n', '\r') || 0x85 == ((const U8*)s)[0] )\ 80 : 0 ) 81 82 /* 83 HORIZWS: Horizontal Whitespace: \h \H 84 85 \p{HorizSpace} 86 */ 87 /*** GENERATED CODE ***/ 88 #define is_HORIZWS_high(s) \ 89 ( ( 0xE1 == ((const U8*)s)[0] ) ? \ 90 ( ( ( 0x9A == ((const U8*)s)[1] ) && ( 0x80 == ((const U8*)s)[2] ) ) ? 3 : 0 )\ 91 : ( 0xE2 == ((const U8*)s)[0] ) ? \ 92 ( ( 0x80 == ((const U8*)s)[1] ) ? \ 93 ( ( inRANGE_helper_(U8, ((const U8*)s)[2], 0x80, 0x8A) || 0xAF == ((const U8*)s)[2] ) ? 3 : 0 )\ 94 : ( ( 0x81 == ((const U8*)s)[1] ) && ( 0x9F == ((const U8*)s)[2] ) ) ? 3 : 0 )\ 95 : ( ( ( 0xE3 == ((const U8*)s)[0] ) && ( 0x80 == ((const U8*)s)[1] ) ) && ( 0x80 == ((const U8*)s)[2] ) ) ? 3 : 0 ) 96 97 /*** GENERATED CODE ***/ 98 #define is_HORIZWS_cp_high(cp) \ 99 ( 0x1680 == cp || ( 0x1680 < cp && \ 100 ( inRANGE_helper_(UV, cp, 0x2000, 0x200A) || ( 0x200A < cp && \ 101 ( 0x202F == cp || ( 0x202F < cp && \ 102 ( 0x205F == cp || 0x3000 == cp ) ) ) ) ) ) ) 103 104 /* 105 VERTWS: Vertical Whitespace: \v \V 106 107 \p{VertSpace} 108 */ 109 /*** GENERATED CODE ***/ 110 #define is_VERTWS_high(s) \ 111 ( ( ( ( 0xE2 == ((const U8*)s)[0] ) && ( 0x80 == ((const U8*)s)[1] ) ) && ( inRANGE_helper_(U8, ((const U8*)s)[2], 0xA8, 0xA9) ) ) ? 3 : 0 ) 112 113 /*** GENERATED CODE ***/ 114 #define is_VERTWS_cp_high(cp) \ 115 ( inRANGE_helper_(UV, cp, 0x2028, 0x2029) ) 116 117 /* 118 XDIGIT: Hexadecimal digits 119 120 \p{XDigit} 121 */ 122 /*** GENERATED CODE ***/ 123 #define is_XDIGIT_high(s) \ 124 ( ( 0xEF == ((const U8*)s)[0] ) ? \ 125 ( ( 0xBC == ((const U8*)s)[1] ) ? \ 126 ( ( inRANGE_helper_(U8, ((const U8*)s)[2], 0x90, 0x99) || inRANGE_helper_(U8, ((const U8*)s)[2], 0xA1, 0xA6) ) ? 3 : 0 )\ 127 : ( ( 0xBD == ((const U8*)s)[1] ) && ( inRANGE_helper_(U8, ((const U8*)s)[2], 0x81, 0x86) ) ) ? 3 : 0 )\ 128 : 0 ) 129 130 /*** GENERATED CODE ***/ 131 #define is_XDIGIT_cp_high(cp) \ 132 ( inRANGE_helper_(UV, cp, 0xFF10, 0xFF19) || ( 0xFF19 < cp && \ 133 ( inRANGE_helper_(UV, cp, 0xFF21, 0xFF26) || inRANGE_helper_(UV, cp, 0xFF41, 0xFF46) ) ) ) 134 135 /* 136 XPERLSPACE: \p{XPerlSpace} 137 138 \p{XPerlSpace} 139 */ 140 /*** GENERATED CODE ***/ 141 #define is_XPERLSPACE_high(s) \ 142 ( ( 0xE1 == ((const U8*)s)[0] ) ? \ 143 ( ( ( 0x9A == ((const U8*)s)[1] ) && ( 0x80 == ((const U8*)s)[2] ) ) ? 3 : 0 )\ 144 : ( 0xE2 == ((const U8*)s)[0] ) ? \ 145 ( ( 0x80 == ((const U8*)s)[1] ) ? \ 146 ( ( inRANGE_helper_(U8, ((const U8*)s)[2], 0x80, 0x8A) || inRANGE_helper_(U8, ((const U8*)s)[2], 0xA8, 0xA9) || 0xAF == ((const U8*)s)[2] ) ? 3 : 0 )\ 147 : ( ( 0x81 == ((const U8*)s)[1] ) && ( 0x9F == ((const U8*)s)[2] ) ) ? 3 : 0 )\ 148 : ( ( ( 0xE3 == ((const U8*)s)[0] ) && ( 0x80 == ((const U8*)s)[1] ) ) && ( 0x80 == ((const U8*)s)[2] ) ) ? 3 : 0 ) 149 150 /*** GENERATED CODE ***/ 151 #define is_XPERLSPACE_cp_high(cp) \ 152 ( 0x1680 == cp || ( 0x1680 < cp && \ 153 ( inRANGE_helper_(UV, cp, 0x2000, 0x200A) || ( 0x200A < cp && \ 154 ( inRANGE_helper_(UV, cp, 0x2028, 0x2029) || ( 0x2029 < cp && \ 155 ( 0x202F == cp || ( 0x202F < cp && \ 156 ( 0x205F == cp || 0x3000 == cp ) ) ) ) ) ) ) ) ) 157 158 /* 159 NONCHAR: Non character code points 160 161 \p{_Perl_Nchar} 162 */ 163 /*** GENERATED CODE ***/ 164 #define is_NONCHAR_utf8_safe(s,e) \ 165 ( ( ( LIKELY((e) > (s)) ) && ( LIKELY(((e) - (s)) >= UTF8SKIP(s)) ) ) ? ( ( 0xEF == ((const U8*)s)[0] ) ?\ 166 ( ( 0xB7 == ((const U8*)s)[1] ) ? \ 167 ( ( inRANGE_helper_(U8, ((const U8*)s)[2], 0x90, 0xAF) ) ? 3 : 0 )\ 168 : ( ( 0xBF == ((const U8*)s)[1] ) && ( inRANGE_helper_(U8, ((const U8*)s)[2], 0xBE, 0xBF) ) ) ? 3 : 0 )\ 169 : ( 0xF0 == ((const U8*)s)[0] ) ? \ 170 ( ( ( ( ((const U8*)s)[1] == 0x9F || ( ( ((const U8*)s)[1] & 0xEF ) == 0xAF ) ) && ( 0xBF == ((const U8*)s)[2] ) ) && ( inRANGE_helper_(U8, ((const U8*)s)[3], 0xBE, 0xBF) ) ) ? 4 : 0 )\ 171 : ( inRANGE_helper_(U8, ((const U8*)s)[0], 0xF1, 0xF3) ) ? \ 172 ( ( ( ( ( ((const U8*)s)[1] & 0xCF ) == 0x8F ) && ( 0xBF == ((const U8*)s)[2] ) ) && ( inRANGE_helper_(U8, ((const U8*)s)[3], 0xBE, 0xBF) ) ) ? 4 : 0 )\ 173 : ( ( ( ( 0xF4 == ((const U8*)s)[0] ) && ( 0x8F == ((const U8*)s)[1] ) ) && ( 0xBF == ((const U8*)s)[2] ) ) && ( inRANGE_helper_(U8, ((const U8*)s)[3], 0xBE, 0xBF) ) ) ? 4 : 0 ) : 0 ) 174 175 /* 176 SHORTER_NON_CHARS: # 3 bytes 177 178 0xFDD0 - 0xFDEF 179 0xFFFE - 0xFFFF 180 */ 181 /*** GENERATED CODE ***/ 182 #define is_SHORTER_NON_CHARS_utf8(s) \ 183 ( ( 0xEF == ((const U8*)s)[0] ) ? \ 184 ( ( 0xB7 == ((const U8*)s)[1] ) ? \ 185 ( ( inRANGE_helper_(U8, ((const U8*)s)[2], 0x90, 0xAF) ) ? 3 : 0 ) \ 186 : ( ( 0xBF == ((const U8*)s)[1] ) && ( inRANGE_helper_(U8, ((const U8*)s)[2], 0xBE, 0xBF) ) ) ? 3 : 0 )\ 187 : 0 ) 188 189 /* 190 LARGER_NON_CHARS: # 4 bytes 191 192 0x1FFFE - 0x1FFFF 193 0x2FFFE - 0x2FFFF 194 0x3FFFE - 0x3FFFF 195 0x4FFFE - 0x4FFFF 196 0x5FFFE - 0x5FFFF 197 0x6FFFE - 0x6FFFF 198 0x7FFFE - 0x7FFFF 199 0x8FFFE - 0x8FFFF 200 0x9FFFE - 0x9FFFF 201 0xAFFFE - 0xAFFFF 202 0xBFFFE - 0xBFFFF 203 0xCFFFE - 0xCFFFF 204 0xDFFFE - 0xDFFFF 205 0xEFFFE - 0xEFFFF 206 0xFFFFE - 0xFFFFF 207 0x10FFFE - 0x10FFFF 208 */ 209 /*** GENERATED CODE ***/ 210 #define is_LARGER_NON_CHARS_utf8(s) \ 211 ( ( 0xF0 == ((const U8*)s)[0] ) ? \ 212 ( ( ( ( ((const U8*)s)[1] == 0x9F || ( ( ((const U8*)s)[1] & 0xEF ) == 0xAF ) ) && ( 0xBF == ((const U8*)s)[2] ) ) && ( inRANGE_helper_(U8, ((const U8*)s)[3], 0xBE, 0xBF) ) ) ? 4 : 0 )\ 213 : ( inRANGE_helper_(U8, ((const U8*)s)[0], 0xF1, 0xF3) ) ? \ 214 ( ( ( ( ( ((const U8*)s)[1] & 0xCF ) == 0x8F ) && ( 0xBF == ((const U8*)s)[2] ) ) && ( inRANGE_helper_(U8, ((const U8*)s)[3], 0xBE, 0xBF) ) ) ? 4 : 0 )\ 215 : ( ( ( ( 0xF4 == ((const U8*)s)[0] ) && ( 0x8F == ((const U8*)s)[1] ) ) && ( 0xBF == ((const U8*)s)[2] ) ) && ( inRANGE_helper_(U8, ((const U8*)s)[3], 0xBE, 0xBF) ) ) ? 4 : 0 ) 216 217 /* 218 SURROGATE: Surrogate code points 219 220 \p{_Perl_Surrogate} 221 */ 222 /*** GENERATED CODE ***/ 223 #define is_SURROGATE_utf8(s) \ 224 ( ( ( 0xED == ((const U8*)s)[0] ) && ( inRANGE_helper_(U8, ((const U8*)s)[1], 0xA0, 0xBF) ) ) ? 3 : 0 ) 225 226 /*** GENERATED CODE ***/ 227 #define is_SURROGATE_utf8_safe(s,e) \ 228 ( ( ( ( ( ((e) - (s)) >= 3 ) && ( 0xED == ((const U8*)s)[0] ) ) && ( inRANGE_helper_(U8, ((const U8*)s)[1], 0xA0, 0xBF) ) ) && ( inRANGE_helper_(U8, ((const U8*)s)[2], 0x80, 0xBF) ) ) ? 3 : 0 ) 229 230 /* 231 QUOTEMETA: Meta-characters that \Q should quote 232 233 \p{_Perl_Quotemeta} 234 */ 235 /*** GENERATED CODE ***/ 236 #define is_QUOTEMETA_high(s) \ 237 ( ( 0xCD == ((const U8*)s)[0] ) ? \ 238 ( ( 0x8F == ((const U8*)s)[1] ) ? 2 : 0 ) \ 239 : ( 0xD8 == ((const U8*)s)[0] ) ? \ 240 ( ( 0x9C == ((const U8*)s)[1] ) ? 2 : 0 ) \ 241 : ( 0xE1 == ((const U8*)s)[0] ) ? \ 242 ( ( 0x85 == ((const U8*)s)[1] ) ? \ 243 ( ( inRANGE_helper_(U8, ((const U8*)s)[2], 0x9F, 0xA0) ) ? 3 : 0 ) \ 244 : ( 0x9A == ((const U8*)s)[1] ) ? \ 245 ( ( 0x80 == ((const U8*)s)[2] ) ? 3 : 0 ) \ 246 : ( 0x9E == ((const U8*)s)[1] ) ? \ 247 ( ( inRANGE_helper_(U8, ((const U8*)s)[2], 0xB4, 0xB5) ) ? 3 : 0 ) \ 248 : ( ( 0xA0 == ((const U8*)s)[1] ) && ( inRANGE_helper_(U8, ((const U8*)s)[2], 0x8B, 0x8F) ) ) ? 3 : 0 )\ 249 : ( 0xE2 == ((const U8*)s)[0] ) ? \ 250 ( ( 0x80 == ((const U8*)s)[1] ) ? \ 251 ( ( inRANGE_helper_(U8, ((const U8*)s)[2], 0x80, 0xBE) ) ? 3 : 0 ) \ 252 : ( 0x81 == ((const U8*)s)[1] ) ? \ 253 ( ( inRANGE_helper_(U8, ((const U8*)s)[2], 0x81, 0x93) || inRANGE_helper_(U8, ((const U8*)s)[2], 0x95, 0xAF) ) ? 3 : 0 )\ 254 : ( 0x86 == ((const U8*)s)[1] ) ? \ 255 ( ( inRANGE_helper_(U8, ((const U8*)s)[2], 0x90, 0xBF) ) ? 3 : 0 ) \ 256 : ( inRANGE_helper_(U8, ((const U8*)s)[1], 0x87, 0x90) || inRANGE_helper_(U8, ((const U8*)s)[1], 0x94, 0x9C) || inRANGE_helper_(U8, ((const U8*)s)[1], 0x9F, 0xAF) || inRANGE_helper_(U8, ((const U8*)s)[1], 0xB8, 0xB9) ) ?\ 257 3 \ 258 : ( 0x91 == ((const U8*)s)[1] ) ? \ 259 ( ( inRANGE_helper_(U8, ((const U8*)s)[2], 0x80, 0x9F) ) ? 3 : 0 ) \ 260 : ( 0x9D == ((const U8*)s)[1] ) ? \ 261 ( ( inRANGE_helper_(U8, ((const U8*)s)[2], 0x80, 0xB5) ) ? 3 : 0 ) \ 262 : ( ( 0x9E == ((const U8*)s)[1] ) && ( inRANGE_helper_(U8, ((const U8*)s)[2], 0x94, 0xBF) ) ) ? 3 : 0 )\ 263 : ( 0xE3 == ((const U8*)s)[0] ) ? \ 264 ( ( 0x80 == ((const U8*)s)[1] ) ? \ 265 ( ( inRANGE_helper_(U8, ((const U8*)s)[2], 0x80, 0x83) || inRANGE_helper_(U8, ((const U8*)s)[2], 0x88, 0xA0) || 0xB0 == ((const U8*)s)[2] ) ? 3 : 0 )\ 266 : ( ( 0x85 == ((const U8*)s)[1] ) && ( 0xA4 == ((const U8*)s)[2] ) ) ? 3 : 0 )\ 267 : ( 0xEF == ((const U8*)s)[0] ) ? \ 268 ( ( 0xB4 == ((const U8*)s)[1] ) ? \ 269 ( ( inRANGE_helper_(U8, ((const U8*)s)[2], 0xBE, 0xBF) ) ? 3 : 0 ) \ 270 : ( 0xB8 == ((const U8*)s)[1] ) ? \ 271 ( ( inRANGE_helper_(U8, ((const U8*)s)[2], 0x80, 0x8F) ) ? 3 : 0 ) \ 272 : ( 0xB9 == ((const U8*)s)[1] ) ? \ 273 ( ( inRANGE_helper_(U8, ((const U8*)s)[2], 0x85, 0x86) ) ? 3 : 0 ) \ 274 : ( 0xBB == ((const U8*)s)[1] ) ? \ 275 ( ( 0xBF == ((const U8*)s)[2] ) ? 3 : 0 ) \ 276 : ( 0xBE == ((const U8*)s)[1] ) ? \ 277 ( ( 0xA0 == ((const U8*)s)[2] ) ? 3 : 0 ) \ 278 : ( ( 0xBF == ((const U8*)s)[1] ) && ( inRANGE_helper_(U8, ((const U8*)s)[2], 0xB0, 0xB8) ) ) ? 3 : 0 )\ 279 : ( 0xF0 == ((const U8*)s)[0] ) ? \ 280 ( ( 0x9B == ((const U8*)s)[1] ) ? \ 281 ( ( ( 0xB2 == ((const U8*)s)[2] ) && ( inRANGE_helper_(U8, ((const U8*)s)[3], 0xA0, 0xA3) ) ) ? 4 : 0 )\ 282 : ( ( ( 0x9D == ((const U8*)s)[1] ) && ( 0x85 == ((const U8*)s)[2] ) ) && ( inRANGE_helper_(U8, ((const U8*)s)[3], 0xB3, 0xBA) ) ) ? 4 : 0 )\ 283 : ( ( 0xF3 == ((const U8*)s)[0] ) && ( 0xA0 == ((const U8*)s)[1] ) ) ? 4 : 0 ) 284 285 /* 286 MULTI_CHAR_FOLD: multi-char strings that are folded to by a single character 287 288 %regcharclass_multi_char_folds::multi_char_folds('u', 'a') 289 */ 290 /*** GENERATED CODE ***/ 291 #define is_MULTI_CHAR_FOLD_utf8_safe_part0_(s,e) \ 292 ( ( ( ((const U8*)s)[1] & 0xDF ) == 'F' ) ? \ 293 ( ( ( ( ((const U8*)s)[2] & 0xDF ) == 'I' ) || ( ( ((const U8*)s)[2] & 0xDF ) == 'L' ) ) ? 3 : 2 )\ 294 : ( ( ( ((const U8*)s)[1] & 0xDF ) == 'I' ) || ( ( ((const U8*)s)[1] & 0xDF ) == 'L' ) ) ? 2 : 0 ) 295 296 297 /*** GENERATED CODE ***/ 298 #define is_MULTI_CHAR_FOLD_utf8_safe_part1_(s,e) \ 299 ( ( ( ((const U8*)s)[0] & 0xDF ) == 'H' ) ? \ 300 ( ( ( 0xCC == ((const U8*)s)[1] ) && ( 0xB1 == ((const U8*)s)[2] ) ) ? 3 : 0 )\ 301 : ( ( ((const U8*)s)[0] & 0xDF ) == 'I' ) ? \ 302 ( ( ( 0xCC == ((const U8*)s)[1] ) && ( 0x87 == ((const U8*)s)[2] ) ) ? 3 : 0 )\ 303 : ( ( ((const U8*)s)[0] & 0xDF ) == 'J' ) ? \ 304 ( ( ( 0xCC == ((const U8*)s)[1] ) && ( 0x8C == ((const U8*)s)[2] ) ) ? 3 : 0 )\ 305 : ( ( ((const U8*)s)[0] & 0xDF ) == 'S' ) ? \ 306 ( ( inRANGE_helper_(U8, ((const U8*)s)[1], 'S', 'T') || inRANGE_helper_(U8, ((const U8*)s)[1], 's', 't') ) ? 2\ 307 : ( ( 0xC5 == ((const U8*)s)[1] ) && ( 0xBF == ((const U8*)s)[2] ) ) ? 3 : 0 )\ 308 : ( ( ((const U8*)s)[0] & 0xDF ) == 'T' ) ? \ 309 ( ( ( 0xCC == ((const U8*)s)[1] ) && ( 0x88 == ((const U8*)s)[2] ) ) ? 3 : 0 )\ 310 : ( ( ( ((const U8*)s)[0] & 0xDF ) == 'W' ) || ( ( ((const U8*)s)[0] & 0xDF ) == 'Y' ) ) ?\ 311 ( ( ( 0xCC == ((const U8*)s)[1] ) && ( 0x8A == ((const U8*)s)[2] ) ) ? 3 : 0 )\ 312 : ( 0xC5 == ((const U8*)s)[0] ) ? \ 313 ( ( 0xBF == ((const U8*)s)[1] ) ? \ 314 ( ( inRANGE_helper_(U8, ((const U8*)s)[2], 'S', 'T') || inRANGE_helper_(U8, ((const U8*)s)[2], 's', 't') ) ? 3\ 315 : ( ( 0xC5 == ((const U8*)s)[2] ) && ( 0xBF == ((const U8*)s)[3] ) ) ? 4 : 0 )\ 316 : 0 ) \ 317 : ( 0xCA == ((const U8*)s)[0] ) ? \ 318 ( ( ( 0xBC == ((const U8*)s)[1] ) && ( ( ((const U8*)s)[2] & 0xDF ) == 'N' ) ) ? 3 : 0 )\ 319 : ( 0xCE == ((const U8*)s)[0] ) ? \ 320 ( ( ( ((const U8*)s)[1] & 0xFD ) == 0xAC ) ? \ 321 ( ( ( 0xCE == ((const U8*)s)[2] ) && ( 0xB9 == ((const U8*)s)[3] ) ) ? 4 : 0 )\ 322 : ( 0xB1 == ((const U8*)s)[1] || 0xB7 == ((const U8*)s)[1] ) ? \ 323 ( ( 0xCD == ((const U8*)s)[2] ) ? \ 324 ( ( 0x82 == ((const U8*)s)[3] ) ? \ 325 ( ( ( 0xCE == ((const U8*)s)[4] ) && ( 0xB9 == ((const U8*)s)[5] ) ) ? 6 : 4 )\ 326 : 0 ) \ 327 : ( ( 0xCE == ((const U8*)s)[2] ) && ( 0xB9 == ((const U8*)s)[3] ) ) ? 4 : 0 )\ 328 : ( 0xB9 == ((const U8*)s)[1] ) ? \ 329 ( ( 0xCC == ((const U8*)s)[2] ) ? \ 330 ( ( 0x88 == ((const U8*)s)[3] ) ? \ 331 ( ( 0xCC == ((const U8*)s)[4] ) ? \ 332 ( ( inRANGE_helper_(U8, ((const U8*)s)[5], 0x80, 0x81) ) ? 6 : 0 )\ 333 : ( ( 0xCD == ((const U8*)s)[4] ) && ( 0x82 == ((const U8*)s)[5] ) ) ? 6 : 0 )\ 334 : 0 ) \ 335 : ( ( 0xCD == ((const U8*)s)[2] ) && ( 0x82 == ((const U8*)s)[3] ) ) ? 4 : 0 )\ 336 : 0 ) \ 337 : ( 0xCF == ((const U8*)s)[0] ) ? \ 338 ( ( 0x81 == ((const U8*)s)[1] ) ? \ 339 ( ( ( 0xCC == ((const U8*)s)[2] ) && ( 0x93 == ((const U8*)s)[3] ) ) ? 4 : 0 )\ 340 : ( 0x85 == ((const U8*)s)[1] ) ? \ 341 ( ( 0xCC == ((const U8*)s)[2] ) ? \ 342 ( ( 0x88 == ((const U8*)s)[3] ) ? \ 343 ( ( 0xCC == ((const U8*)s)[4] ) ? \ 344 ( ( inRANGE_helper_(U8, ((const U8*)s)[5], 0x80, 0x81) ) ? 6 : 0 )\ 345 : ( ( 0xCD == ((const U8*)s)[4] ) && ( 0x82 == ((const U8*)s)[5] ) ) ? 6 : 0 )\ 346 : ( 0x93 == ((const U8*)s)[3] ) ? \ 347 ( ( 0xCC == ((const U8*)s)[4] ) ? \ 348 ( ( inRANGE_helper_(U8, ((const U8*)s)[5], 0x80, 0x81) ) ? 6 : 4 )\ 349 : ( ( 0xCD == ((const U8*)s)[4] ) && ( 0x82 == ((const U8*)s)[5] ) ) ? 6 : 4 )\ 350 : 0 ) \ 351 : ( ( 0xCD == ((const U8*)s)[2] ) && ( 0x82 == ((const U8*)s)[3] ) ) ? 4 : 0 )\ 352 : ( 0x89 == ((const U8*)s)[1] ) ? \ 353 ( ( 0xCD == ((const U8*)s)[2] ) ? \ 354 ( ( 0x82 == ((const U8*)s)[3] ) ? \ 355 ( ( ( 0xCE == ((const U8*)s)[4] ) && ( 0xB9 == ((const U8*)s)[5] ) ) ? 6 : 4 )\ 356 : 0 ) \ 357 : ( ( 0xCE == ((const U8*)s)[2] ) && ( 0xB9 == ((const U8*)s)[3] ) ) ? 4 : 0 )\ 358 : ( ( ( 0x8E == ((const U8*)s)[1] ) && ( 0xCE == ((const U8*)s)[2] ) ) && ( 0xB9 == ((const U8*)s)[3] ) ) ? 4 : 0 )\ 359 : ( 0xD5 == ((const U8*)s)[0] ) ? \ 360 ( ( 0xA5 == ((const U8*)s)[1] ) ? \ 361 ( ( ( 0xD6 == ((const U8*)s)[2] ) && ( 0x82 == ((const U8*)s)[3] ) ) ? 4 : 0 )\ 362 : ( 0xB4 == ((const U8*)s)[1] ) ? \ 363 ( ( ( 0xD5 == ((const U8*)s)[2] ) && ( ( ( ((const U8*)s)[3] & 0xF7 ) == 0xA5 ) || ((const U8*)s)[3] == 0xAB || ((const U8*)s)[3] == 0xB6 ) ) ? 4 : 0 )\ 364 : ( ( ( 0xBE == ((const U8*)s)[1] ) && ( 0xD5 == ((const U8*)s)[2] ) ) && ( 0xB6 == ((const U8*)s)[3] ) ) ? 4 : 0 )\ 365 : ( 0xE1 == ((const U8*)s)[0] ) ? \ 366 ( ( 0xBC == ((const U8*)s)[1] ) ? \ 367 ( ( ( ( ( ((const U8*)s)[2] & 0xD8 ) == 0x80 ) && ( 0xCE == ((const U8*)s)[3] ) ) && ( 0xB9 == ((const U8*)s)[4] ) ) ? 5 : 0 )\ 368 : ( ( ( ( 0xBD == ((const U8*)s)[1] ) && ( ( ( ((const U8*)s)[2] & 0xF8 ) == 0xA0 ) || ( ( ((const U8*)s)[2] & 0xFB ) == 0xB0 ) || ((const U8*)s)[2] == 0xBC ) ) && ( 0xCE == ((const U8*)s)[3] ) ) && ( 0xB9 == ((const U8*)s)[4] ) ) ? 5 : 0 )\ 369 : 0 ) 370 371 372 /*** GENERATED CODE ***/ 373 #define is_MULTI_CHAR_FOLD_utf8_safe_part2_(s,e) \ 374 ( ( ( ((const U8*)s)[0] & 0xDF ) == 'A' ) ? \ 375 ( ( ( 0xCA == ((const U8*)s)[1] ) && ( 0xBE == ((const U8*)s)[2] ) ) ? 3 : 0 )\ 376 : ( ( ((const U8*)s)[0] & 0xDF ) == 'F' ) ? \ 377 ( ( ( ((const U8*)s)[1] & 0xDF ) == 'F' ) ? \ 378 ( ( ( ( ((const U8*)s)[2] & 0xDF ) == 'I' ) || ( ( ((const U8*)s)[2] & 0xDF ) == 'L' ) ) ? 3 : 2 )\ 379 : ( ( ( ((const U8*)s)[1] & 0xDF ) == 'I' ) || ( ( ((const U8*)s)[1] & 0xDF ) == 'L' ) ) ? 2 : 0 )\ 380 : ( ( ((const U8*)s)[0] & 0xDF ) == 'H' ) ? \ 381 ( ( ( 0xCC == ((const U8*)s)[1] ) && ( 0xB1 == ((const U8*)s)[2] ) ) ? 3 : 0 )\ 382 : ( ( ((const U8*)s)[0] & 0xDF ) == 'I' ) ? \ 383 ( ( ( 0xCC == ((const U8*)s)[1] ) && ( 0x87 == ((const U8*)s)[2] ) ) ? 3 : 0 )\ 384 : ( ( ((const U8*)s)[0] & 0xDF ) == 'J' ) ? \ 385 ( ( ( 0xCC == ((const U8*)s)[1] ) && ( 0x8C == ((const U8*)s)[2] ) ) ? 3 : 0 )\ 386 : ( ( ((const U8*)s)[0] & 0xDF ) == 'S' ) ? \ 387 ( ( inRANGE_helper_(U8, ((const U8*)s)[1], 'S', 'T') || inRANGE_helper_(U8, ((const U8*)s)[1], 's', 't') ) ? 2\ 388 : ( ( 0xC5 == ((const U8*)s)[1] ) && ( 0xBF == ((const U8*)s)[2] ) ) ? 3 : 0 )\ 389 : ( ( ((const U8*)s)[0] & 0xDF ) == 'T' ) ? \ 390 ( ( ( 0xCC == ((const U8*)s)[1] ) && ( 0x88 == ((const U8*)s)[2] ) ) ? 3 : 0 )\ 391 : ( ( ( ((const U8*)s)[0] & 0xDF ) == 'W' ) || ( ( ((const U8*)s)[0] & 0xDF ) == 'Y' ) ) ?\ 392 ( ( ( 0xCC == ((const U8*)s)[1] ) && ( 0x8A == ((const U8*)s)[2] ) ) ? 3 : 0 )\ 393 : ( 0xC5 == ((const U8*)s)[0] ) ? \ 394 ( ( 0xBF == ((const U8*)s)[1] ) ? \ 395 ( ( inRANGE_helper_(U8, ((const U8*)s)[2], 'S', 'T') || inRANGE_helper_(U8, ((const U8*)s)[2], 's', 't') ) ? 3\ 396 : ( ( 0xC5 == ((const U8*)s)[2] ) && ( 0xBF == ((const U8*)s)[3] ) ) ? 4 : 0 )\ 397 : 0 ) \ 398 : ( 0xCA == ((const U8*)s)[0] ) ? \ 399 ( ( ( 0xBC == ((const U8*)s)[1] ) && ( ( ((const U8*)s)[2] & 0xDF ) == 'N' ) ) ? 3 : 0 )\ 400 : ( 0xCE == ((const U8*)s)[0] ) ? \ 401 ( ( ( ((const U8*)s)[1] & 0xFD ) == 0xAC ) ? \ 402 ( ( ( 0xCE == ((const U8*)s)[2] ) && ( 0xB9 == ((const U8*)s)[3] ) ) ? 4 : 0 )\ 403 : ( 0xB1 == ((const U8*)s)[1] || 0xB7 == ((const U8*)s)[1] ) ? \ 404 ( ( 0xCD == ((const U8*)s)[2] ) ? \ 405 ( ( 0x82 == ((const U8*)s)[3] ) ? 4 : 0 ) \ 406 : ( ( 0xCE == ((const U8*)s)[2] ) && ( 0xB9 == ((const U8*)s)[3] ) ) ? 4 : 0 )\ 407 : ( ( ( 0xB9 == ((const U8*)s)[1] ) && ( 0xCD == ((const U8*)s)[2] ) ) && ( 0x82 == ((const U8*)s)[3] ) ) ? 4 : 0 )\ 408 : ( 0xCF == ((const U8*)s)[0] ) ? \ 409 ( ( 0x81 == ((const U8*)s)[1] ) ? \ 410 ( ( ( 0xCC == ((const U8*)s)[2] ) && ( 0x93 == ((const U8*)s)[3] ) ) ? 4 : 0 )\ 411 : ( 0x85 == ((const U8*)s)[1] ) ? \ 412 ( ( 0xCC == ((const U8*)s)[2] ) ? \ 413 ( ( 0x93 == ((const U8*)s)[3] ) ? 4 : 0 ) \ 414 : ( ( 0xCD == ((const U8*)s)[2] ) && ( 0x82 == ((const U8*)s)[3] ) ) ? 4 : 0 )\ 415 : ( 0x89 == ((const U8*)s)[1] ) ? \ 416 ( ( 0xCD == ((const U8*)s)[2] ) ? \ 417 ( ( 0x82 == ((const U8*)s)[3] ) ? 4 : 0 ) \ 418 : ( ( 0xCE == ((const U8*)s)[2] ) && ( 0xB9 == ((const U8*)s)[3] ) ) ? 4 : 0 )\ 419 : ( ( ( 0x8E == ((const U8*)s)[1] ) && ( 0xCE == ((const U8*)s)[2] ) ) && ( 0xB9 == ((const U8*)s)[3] ) ) ? 4 : 0 )\ 420 : ( 0xD5 == ((const U8*)s)[0] ) ? \ 421 ( ( 0xA5 == ((const U8*)s)[1] ) ? \ 422 ( ( ( 0xD6 == ((const U8*)s)[2] ) && ( 0x82 == ((const U8*)s)[3] ) ) ? 4 : 0 )\ 423 : ( 0xB4 == ((const U8*)s)[1] ) ? \ 424 ( ( ( 0xD5 == ((const U8*)s)[2] ) && ( ( ( ((const U8*)s)[3] & 0xF7 ) == 0xA5 ) || ((const U8*)s)[3] == 0xAB || ((const U8*)s)[3] == 0xB6 ) ) ? 4 : 0 )\ 425 : ( ( ( 0xBE == ((const U8*)s)[1] ) && ( 0xD5 == ((const U8*)s)[2] ) ) && ( 0xB6 == ((const U8*)s)[3] ) ) ? 4 : 0 )\ 426 : 0 ) 427 428 429 /*** GENERATED CODE ***/ 430 #define is_MULTI_CHAR_FOLD_utf8_safe_part3_(s,e) \ 431 ( ((e)-(s) > 2) ? \ 432 ( ( ( ((const U8*)s)[0] & 0xDF ) == 'A' ) ? \ 433 ( ( ( 0xCA == ((const U8*)s)[1] ) && ( 0xBE == ((const U8*)s)[2] ) ) ? 3 : 0 )\ 434 : ( ( ((const U8*)s)[0] & 0xDF ) == 'F' ) ? \ 435 ( ( ( ((const U8*)s)[1] & 0xDF ) == 'F' ) ? \ 436 ( ( ( ( ((const U8*)s)[2] & 0xDF ) == 'I' ) || ( ( ((const U8*)s)[2] & 0xDF ) == 'L' ) ) ? 3 : 2 )\ 437 : ( ( ( ((const U8*)s)[1] & 0xDF ) == 'I' ) || ( ( ((const U8*)s)[1] & 0xDF ) == 'L' ) ) ? 2 : 0 )\ 438 : ( ( ((const U8*)s)[0] & 0xDF ) == 'H' ) ? \ 439 ( ( ( 0xCC == ((const U8*)s)[1] ) && ( 0xB1 == ((const U8*)s)[2] ) ) ? 3 : 0 )\ 440 : ( ( ((const U8*)s)[0] & 0xDF ) == 'I' ) ? \ 441 ( ( ( 0xCC == ((const U8*)s)[1] ) && ( 0x87 == ((const U8*)s)[2] ) ) ? 3 : 0 )\ 442 : ( ( ((const U8*)s)[0] & 0xDF ) == 'J' ) ? \ 443 ( ( ( 0xCC == ((const U8*)s)[1] ) && ( 0x8C == ((const U8*)s)[2] ) ) ? 3 : 0 )\ 444 : ( ( ((const U8*)s)[0] & 0xDF ) == 'S' ) ? \ 445 ( ( inRANGE_helper_(U8, ((const U8*)s)[1], 'S', 'T') || inRANGE_helper_(U8, ((const U8*)s)[1], 's', 't') ) ? 2\ 446 : ( ( 0xC5 == ((const U8*)s)[1] ) && ( 0xBF == ((const U8*)s)[2] ) ) ? 3 : 0 )\ 447 : ( ( ((const U8*)s)[0] & 0xDF ) == 'T' ) ? \ 448 ( ( ( 0xCC == ((const U8*)s)[1] ) && ( 0x88 == ((const U8*)s)[2] ) ) ? 3 : 0 )\ 449 : ( ( ( ((const U8*)s)[0] & 0xDF ) == 'W' ) || ( ( ((const U8*)s)[0] & 0xDF ) == 'Y' ) ) ?\ 450 ( ( ( 0xCC == ((const U8*)s)[1] ) && ( 0x8A == ((const U8*)s)[2] ) ) ? 3 : 0 )\ 451 : ( 0xC5 == ((const U8*)s)[0] ) ? \ 452 ( ( ( 0xBF == ((const U8*)s)[1] ) && ( inRANGE_helper_(U8, ((const U8*)s)[2], 'S', 'T') || inRANGE_helper_(U8, ((const U8*)s)[2], 's', 't') ) ) ? 3 : 0 )\ 453 : ( ( ( 0xCA == ((const U8*)s)[0] ) && ( 0xBC == ((const U8*)s)[1] ) ) && ( ( ((const U8*)s)[2] & 0xDF ) == 'N' ) ) ? 3 : 0 )\ 454 : ((e)-(s) > 1) ? \ 455 ( ( ( ((const U8*)s)[0] & 0xDF ) == 'F' ) ? \ 456 ( ( ( ( ((const U8*)s)[1] & 0xDF ) == 'F' ) || ( ( ((const U8*)s)[1] & 0xDF ) == 'I' ) || ( ( ((const U8*)s)[1] & 0xDF ) == 'L' ) ) ? 2 : 0 )\ 457 : ( ( ( ((const U8*)s)[0] & 0xDF ) == 'S' ) && ( inRANGE_helper_(U8, ((const U8*)s)[1], 'S', 'T') || inRANGE_helper_(U8, ((const U8*)s)[1], 's', 't') ) ) ? 2 : 0 )\ 458 : 0 ) 459 460 461 /*** GENERATED CODE ***/ 462 #define is_MULTI_CHAR_FOLD_utf8_safe(s,e) \ 463 ( ((e)-(s) > 5) ? \ 464 ( ( ( ((const U8*)s)[0] & 0xDF ) == 'A' ) ? \ 465 ( ( ( 0xCA == ((const U8*)s)[1] ) && ( 0xBE == ((const U8*)s)[2] ) ) ? 3 : 0 )\ 466 : ( ( ((const U8*)s)[0] & 0xDF ) == 'F' ) ? is_MULTI_CHAR_FOLD_utf8_safe_part0_(s,e) : is_MULTI_CHAR_FOLD_utf8_safe_part1_(s,e) )\ 467 : ((e)-(s) > 4) ? \ 468 ( ( ( ((const U8*)s)[0] & 0xDF ) == 'A' ) ? \ 469 ( ( ( 0xCA == ((const U8*)s)[1] ) && ( 0xBE == ((const U8*)s)[2] ) ) ? 3 : 0 )\ 470 : ( ( ((const U8*)s)[0] & 0xDF ) == 'F' ) ? \ 471 ( ( ( ((const U8*)s)[1] & 0xDF ) == 'F' ) ? \ 472 ( ( ( ( ((const U8*)s)[2] & 0xDF ) == 'I' ) || ( ( ((const U8*)s)[2] & 0xDF ) == 'L' ) ) ? 3 : 2 )\ 473 : ( ( ( ((const U8*)s)[1] & 0xDF ) == 'I' ) || ( ( ((const U8*)s)[1] & 0xDF ) == 'L' ) ) ? 2 : 0 )\ 474 : ( ( ((const U8*)s)[0] & 0xDF ) == 'H' ) ? \ 475 ( ( ( 0xCC == ((const U8*)s)[1] ) && ( 0xB1 == ((const U8*)s)[2] ) ) ? 3 : 0 )\ 476 : ( ( ((const U8*)s)[0] & 0xDF ) == 'I' ) ? \ 477 ( ( ( 0xCC == ((const U8*)s)[1] ) && ( 0x87 == ((const U8*)s)[2] ) ) ? 3 : 0 )\ 478 : ( ( ((const U8*)s)[0] & 0xDF ) == 'J' ) ? \ 479 ( ( ( 0xCC == ((const U8*)s)[1] ) && ( 0x8C == ((const U8*)s)[2] ) ) ? 3 : 0 )\ 480 : ( ( ((const U8*)s)[0] & 0xDF ) == 'S' ) ? \ 481 ( ( inRANGE_helper_(U8, ((const U8*)s)[1], 'S', 'T') || inRANGE_helper_(U8, ((const U8*)s)[1], 's', 't') ) ? 2\ 482 : ( ( 0xC5 == ((const U8*)s)[1] ) && ( 0xBF == ((const U8*)s)[2] ) ) ? 3 : 0 )\ 483 : ( ( ((const U8*)s)[0] & 0xDF ) == 'T' ) ? \ 484 ( ( ( 0xCC == ((const U8*)s)[1] ) && ( 0x88 == ((const U8*)s)[2] ) ) ? 3 : 0 )\ 485 : ( ( ( ((const U8*)s)[0] & 0xDF ) == 'W' ) || ( ( ((const U8*)s)[0] & 0xDF ) == 'Y' ) ) ?\ 486 ( ( ( 0xCC == ((const U8*)s)[1] ) && ( 0x8A == ((const U8*)s)[2] ) ) ? 3 : 0 )\ 487 : ( 0xC5 == ((const U8*)s)[0] ) ? \ 488 ( ( 0xBF == ((const U8*)s)[1] ) ? \ 489 ( ( inRANGE_helper_(U8, ((const U8*)s)[2], 'S', 'T') || inRANGE_helper_(U8, ((const U8*)s)[2], 's', 't') ) ? 3\ 490 : ( ( 0xC5 == ((const U8*)s)[2] ) && ( 0xBF == ((const U8*)s)[3] ) ) ? 4 : 0 )\ 491 : 0 ) \ 492 : ( 0xCA == ((const U8*)s)[0] ) ? \ 493 ( ( ( 0xBC == ((const U8*)s)[1] ) && ( ( ((const U8*)s)[2] & 0xDF ) == 'N' ) ) ? 3 : 0 )\ 494 : ( 0xCE == ((const U8*)s)[0] ) ? \ 495 ( ( ( ((const U8*)s)[1] & 0xFD ) == 0xAC ) ? \ 496 ( ( ( 0xCE == ((const U8*)s)[2] ) && ( 0xB9 == ((const U8*)s)[3] ) ) ? 4 : 0 )\ 497 : ( 0xB1 == ((const U8*)s)[1] || 0xB7 == ((const U8*)s)[1] ) ? \ 498 ( ( 0xCD == ((const U8*)s)[2] ) ? \ 499 ( ( 0x82 == ((const U8*)s)[3] ) ? 4 : 0 ) \ 500 : ( ( 0xCE == ((const U8*)s)[2] ) && ( 0xB9 == ((const U8*)s)[3] ) ) ? 4 : 0 )\ 501 : ( ( ( 0xB9 == ((const U8*)s)[1] ) && ( 0xCD == ((const U8*)s)[2] ) ) && ( 0x82 == ((const U8*)s)[3] ) ) ? 4 : 0 )\ 502 : ( 0xCF == ((const U8*)s)[0] ) ? \ 503 ( ( 0x81 == ((const U8*)s)[1] ) ? \ 504 ( ( ( 0xCC == ((const U8*)s)[2] ) && ( 0x93 == ((const U8*)s)[3] ) ) ? 4 : 0 )\ 505 : ( 0x85 == ((const U8*)s)[1] ) ? \ 506 ( ( 0xCC == ((const U8*)s)[2] ) ? \ 507 ( ( 0x93 == ((const U8*)s)[3] ) ? 4 : 0 ) \ 508 : ( ( 0xCD == ((const U8*)s)[2] ) && ( 0x82 == ((const U8*)s)[3] ) ) ? 4 : 0 )\ 509 : ( 0x89 == ((const U8*)s)[1] ) ? \ 510 ( ( 0xCD == ((const U8*)s)[2] ) ? \ 511 ( ( 0x82 == ((const U8*)s)[3] ) ? 4 : 0 ) \ 512 : ( ( 0xCE == ((const U8*)s)[2] ) && ( 0xB9 == ((const U8*)s)[3] ) ) ? 4 : 0 )\ 513 : ( ( ( 0x8E == ((const U8*)s)[1] ) && ( 0xCE == ((const U8*)s)[2] ) ) && ( 0xB9 == ((const U8*)s)[3] ) ) ? 4 : 0 )\ 514 : ( 0xD5 == ((const U8*)s)[0] ) ? \ 515 ( ( 0xA5 == ((const U8*)s)[1] ) ? \ 516 ( ( ( 0xD6 == ((const U8*)s)[2] ) && ( 0x82 == ((const U8*)s)[3] ) ) ? 4 : 0 )\ 517 : ( 0xB4 == ((const U8*)s)[1] ) ? \ 518 ( ( ( 0xD5 == ((const U8*)s)[2] ) && ( ( ( ((const U8*)s)[3] & 0xF7 ) == 0xA5 ) || ((const U8*)s)[3] == 0xAB || ((const U8*)s)[3] == 0xB6 ) ) ? 4 : 0 )\ 519 : ( ( ( 0xBE == ((const U8*)s)[1] ) && ( 0xD5 == ((const U8*)s)[2] ) ) && ( 0xB6 == ((const U8*)s)[3] ) ) ? 4 : 0 )\ 520 : ( 0xE1 == ((const U8*)s)[0] ) ? \ 521 ( ( 0xBC == ((const U8*)s)[1] ) ? \ 522 ( ( ( ( ( ((const U8*)s)[2] & 0xD8 ) == 0x80 ) && ( 0xCE == ((const U8*)s)[3] ) ) && ( 0xB9 == ((const U8*)s)[4] ) ) ? 5 : 0 )\ 523 : ( ( ( ( 0xBD == ((const U8*)s)[1] ) && ( ( ( ((const U8*)s)[2] & 0xF8 ) == 0xA0 ) || ( ( ((const U8*)s)[2] & 0xFB ) == 0xB0 ) || ((const U8*)s)[2] == 0xBC ) ) && ( 0xCE == ((const U8*)s)[3] ) ) && ( 0xB9 == ((const U8*)s)[4] ) ) ? 5 : 0 )\ 524 : 0 ) \ 525 : ((e)-(s) > 3) ? is_MULTI_CHAR_FOLD_utf8_safe_part2_(s,e) : is_MULTI_CHAR_FOLD_utf8_safe_part3_(s,e) ) 526 527 /*** GENERATED CODE ***/ 528 #define what_MULTI_CHAR_FOLD_utf8_safe_part0_(s,e) \ 529 ( ( 0x81 == ((const U8*)s)[1] ) ? \ 530 ( ( ( 0xCC == ((const U8*)s)[2] ) && ( 0x93 == ((const U8*)s)[3] ) ) ? 0x1FE4 : 0 )\ 531 : ( 0x85 == ((const U8*)s)[1] ) ? \ 532 ( ( 0xCC == ((const U8*)s)[2] ) ? \ 533 ( ( 0x88 == ((const U8*)s)[3] ) ? \ 534 ( ( 0xCC == ((const U8*)s)[4] ) ? \ 535 ( ( 0x80 == ((const U8*)s)[5] ) ? 0x1FE2 \ 536 : ( 0x81 == ((const U8*)s)[5] ) ? 0x3B0 : 0 ) \ 537 : ( ( 0xCD == ((const U8*)s)[4] ) && ( 0x82 == ((const U8*)s)[5] ) ) ? 0x1FE7 : 0 )\ 538 : ( 0x93 == ((const U8*)s)[3] ) ? \ 539 ( ( 0xCC == ((const U8*)s)[4] ) ? \ 540 ( ( 0x80 == ((const U8*)s)[5] ) ? 0x1F52 \ 541 : ( 0x81 == ((const U8*)s)[5] ) ? 0x1F54 : 0x1F50 ) \ 542 : ( ( 0xCD == ((const U8*)s)[4] ) && ( 0x82 == ((const U8*)s)[5] ) ) ? 0x1F56 : 0x1F50 )\ 543 : 0 ) \ 544 : ( ( 0xCD == ((const U8*)s)[2] ) && ( 0x82 == ((const U8*)s)[3] ) ) ? 0x1FE6 : 0 )\ 545 : ( 0x89 == ((const U8*)s)[1] ) ? \ 546 ( ( 0xCD == ((const U8*)s)[2] ) ? \ 547 ( ( 0x82 == ((const U8*)s)[3] ) ? \ 548 ( ( ( 0xCE == ((const U8*)s)[4] ) && ( 0xB9 == ((const U8*)s)[5] ) ) ? 0x1FF7 : 0x1FF6 )\ 549 : 0 ) \ 550 : ( ( 0xCE == ((const U8*)s)[2] ) && ( 0xB9 == ((const U8*)s)[3] ) ) ? 0x1FF3 : 0 )\ 551 : ( ( ( 0x8E == ((const U8*)s)[1] ) && ( 0xCE == ((const U8*)s)[2] ) ) && ( 0xB9 == ((const U8*)s)[3] ) ) ? 0x1FF4 : 0 ) 552 553 554 /*** GENERATED CODE ***/ 555 #define what_MULTI_CHAR_FOLD_utf8_safe_part1_(s,e) \ 556 ( ( 0xD5 == ((const U8*)s)[0] ) ? \ 557 ( ( 0xA5 == ((const U8*)s)[1] ) ? \ 558 ( ( ( 0xD6 == ((const U8*)s)[2] ) && ( 0x82 == ((const U8*)s)[3] ) ) ? 0x587 : 0 )\ 559 : ( 0xB4 == ((const U8*)s)[1] ) ? \ 560 ( ( 0xD5 == ((const U8*)s)[2] ) ? \ 561 ( ( 0xA5 == ((const U8*)s)[3] ) ? 0xFB14 \ 562 : ( 0xAB == ((const U8*)s)[3] ) ? 0xFB15 \ 563 : ( 0xAD == ((const U8*)s)[3] ) ? 0xFB17 \ 564 : ( 0xB6 == ((const U8*)s)[3] ) ? 0xFB13 : 0 ) \ 565 : 0 ) \ 566 : ( ( ( 0xBE == ((const U8*)s)[1] ) && ( 0xD5 == ((const U8*)s)[2] ) ) && ( 0xB6 == ((const U8*)s)[3] ) ) ? 0xFB16 : 0 )\ 567 : ( 0xE1 == ((const U8*)s)[0] ) ? \ 568 ( ( 0xBC == ((const U8*)s)[1] ) ? \ 569 ( ( 0x80 == ((const U8*)s)[2] ) ? \ 570 ( ( ( 0xCE == ((const U8*)s)[3] ) && ( 0xB9 == ((const U8*)s)[4] ) ) ? 0x1F80 : 0 )\ 571 : ( 0x81 == ((const U8*)s)[2] ) ? \ 572 ( ( ( 0xCE == ((const U8*)s)[3] ) && ( 0xB9 == ((const U8*)s)[4] ) ) ? 0x1F81 : 0 )\ 573 : ( 0x82 == ((const U8*)s)[2] ) ? \ 574 ( ( ( 0xCE == ((const U8*)s)[3] ) && ( 0xB9 == ((const U8*)s)[4] ) ) ? 0x1F82 : 0 )\ 575 : ( 0x83 == ((const U8*)s)[2] ) ? \ 576 ( ( ( 0xCE == ((const U8*)s)[3] ) && ( 0xB9 == ((const U8*)s)[4] ) ) ? 0x1F83 : 0 )\ 577 : ( 0x84 == ((const U8*)s)[2] ) ? \ 578 ( ( ( 0xCE == ((const U8*)s)[3] ) && ( 0xB9 == ((const U8*)s)[4] ) ) ? 0x1F84 : 0 )\ 579 : ( 0x85 == ((const U8*)s)[2] ) ? \ 580 ( ( ( 0xCE == ((const U8*)s)[3] ) && ( 0xB9 == ((const U8*)s)[4] ) ) ? 0x1F85 : 0 )\ 581 : ( 0x86 == ((const U8*)s)[2] ) ? \ 582 ( ( ( 0xCE == ((const U8*)s)[3] ) && ( 0xB9 == ((const U8*)s)[4] ) ) ? 0x1F86 : 0 )\ 583 : ( 0x87 == ((const U8*)s)[2] ) ? \ 584 ( ( ( 0xCE == ((const U8*)s)[3] ) && ( 0xB9 == ((const U8*)s)[4] ) ) ? 0x1F87 : 0 )\ 585 : ( 0xA0 == ((const U8*)s)[2] ) ? \ 586 ( ( ( 0xCE == ((const U8*)s)[3] ) && ( 0xB9 == ((const U8*)s)[4] ) ) ? 0x1F90 : 0 )\ 587 : ( 0xA1 == ((const U8*)s)[2] ) ? \ 588 ( ( ( 0xCE == ((const U8*)s)[3] ) && ( 0xB9 == ((const U8*)s)[4] ) ) ? 0x1F91 : 0 )\ 589 : ( 0xA2 == ((const U8*)s)[2] ) ? \ 590 ( ( ( 0xCE == ((const U8*)s)[3] ) && ( 0xB9 == ((const U8*)s)[4] ) ) ? 0x1F92 : 0 )\ 591 : ( 0xA3 == ((const U8*)s)[2] ) ? \ 592 ( ( ( 0xCE == ((const U8*)s)[3] ) && ( 0xB9 == ((const U8*)s)[4] ) ) ? 0x1F93 : 0 )\ 593 : ( 0xA4 == ((const U8*)s)[2] ) ? \ 594 ( ( ( 0xCE == ((const U8*)s)[3] ) && ( 0xB9 == ((const U8*)s)[4] ) ) ? 0x1F94 : 0 )\ 595 : ( 0xA5 == ((const U8*)s)[2] ) ? \ 596 ( ( ( 0xCE == ((const U8*)s)[3] ) && ( 0xB9 == ((const U8*)s)[4] ) ) ? 0x1F95 : 0 )\ 597 : ( 0xA6 == ((const U8*)s)[2] ) ? \ 598 ( ( ( 0xCE == ((const U8*)s)[3] ) && ( 0xB9 == ((const U8*)s)[4] ) ) ? 0x1F96 : 0 )\ 599 : ( ( ( 0xA7 == ((const U8*)s)[2] ) && ( 0xCE == ((const U8*)s)[3] ) ) && ( 0xB9 == ((const U8*)s)[4] ) ) ? 0x1F97 : 0 )\ 600 : ( 0xBD == ((const U8*)s)[1] ) ? \ 601 ( ( 0xA0 == ((const U8*)s)[2] ) ? \ 602 ( ( ( 0xCE == ((const U8*)s)[3] ) && ( 0xB9 == ((const U8*)s)[4] ) ) ? 0x1FA0 : 0 )\ 603 : ( 0xA1 == ((const U8*)s)[2] ) ? \ 604 ( ( ( 0xCE == ((const U8*)s)[3] ) && ( 0xB9 == ((const U8*)s)[4] ) ) ? 0x1FA1 : 0 )\ 605 : ( 0xA2 == ((const U8*)s)[2] ) ? \ 606 ( ( ( 0xCE == ((const U8*)s)[3] ) && ( 0xB9 == ((const U8*)s)[4] ) ) ? 0x1FA2 : 0 )\ 607 : ( 0xA3 == ((const U8*)s)[2] ) ? \ 608 ( ( ( 0xCE == ((const U8*)s)[3] ) && ( 0xB9 == ((const U8*)s)[4] ) ) ? 0x1FA3 : 0 )\ 609 : ( 0xA4 == ((const U8*)s)[2] ) ? \ 610 ( ( ( 0xCE == ((const U8*)s)[3] ) && ( 0xB9 == ((const U8*)s)[4] ) ) ? 0x1FA4 : 0 )\ 611 : ( 0xA5 == ((const U8*)s)[2] ) ? \ 612 ( ( ( 0xCE == ((const U8*)s)[3] ) && ( 0xB9 == ((const U8*)s)[4] ) ) ? 0x1FA5 : 0 )\ 613 : ( 0xA6 == ((const U8*)s)[2] ) ? \ 614 ( ( ( 0xCE == ((const U8*)s)[3] ) && ( 0xB9 == ((const U8*)s)[4] ) ) ? 0x1FA6 : 0 )\ 615 : ( 0xA7 == ((const U8*)s)[2] ) ? \ 616 ( ( ( 0xCE == ((const U8*)s)[3] ) && ( 0xB9 == ((const U8*)s)[4] ) ) ? 0x1FA7 : 0 )\ 617 : ( 0xB0 == ((const U8*)s)[2] ) ? \ 618 ( ( ( 0xCE == ((const U8*)s)[3] ) && ( 0xB9 == ((const U8*)s)[4] ) ) ? 0x1FB2 : 0 )\ 619 : ( 0xB4 == ((const U8*)s)[2] ) ? \ 620 ( ( ( 0xCE == ((const U8*)s)[3] ) && ( 0xB9 == ((const U8*)s)[4] ) ) ? 0x1FC2 : 0 )\ 621 : ( ( ( 0xBC == ((const U8*)s)[2] ) && ( 0xCE == ((const U8*)s)[3] ) ) && ( 0xB9 == ((const U8*)s)[4] ) ) ? 0x1FF2 : 0 )\ 622 : 0 ) \ 623 : 0 ) 624 625 626 /*** GENERATED CODE ***/ 627 #define what_MULTI_CHAR_FOLD_utf8_safe_part2_(s,e) \ 628 ( ( 0x81 == ((const U8*)s)[1] ) ? \ 629 ( ( ( 0xCC == ((const U8*)s)[2] ) && ( 0x93 == ((const U8*)s)[3] ) ) ? 0x1FE4 : 0 )\ 630 : ( 0x85 == ((const U8*)s)[1] ) ? \ 631 ( ( 0xCC == ((const U8*)s)[2] ) ? \ 632 ( ( 0x93 == ((const U8*)s)[3] ) ? 0x1F50 : 0 ) \ 633 : ( ( 0xCD == ((const U8*)s)[2] ) && ( 0x82 == ((const U8*)s)[3] ) ) ? 0x1FE6 : 0 )\ 634 : ( 0x89 == ((const U8*)s)[1] ) ? \ 635 ( ( 0xCD == ((const U8*)s)[2] ) ? \ 636 ( ( 0x82 == ((const U8*)s)[3] ) ? 0x1FF6 : 0 ) \ 637 : ( ( 0xCE == ((const U8*)s)[2] ) && ( 0xB9 == ((const U8*)s)[3] ) ) ? 0x1FF3 : 0 )\ 638 : ( ( ( 0x8E == ((const U8*)s)[1] ) && ( 0xCE == ((const U8*)s)[2] ) ) && ( 0xB9 == ((const U8*)s)[3] ) ) ? 0x1FF4 : 0 ) 639 640 641 /*** GENERATED CODE ***/ 642 #define what_MULTI_CHAR_FOLD_utf8_safe_part3_(s,e) \ 643 ( ( 0xD5 == ((const U8*)s)[0] ) ? \ 644 ( ( 0xA5 == ((const U8*)s)[1] ) ? \ 645 ( ( ( 0xD6 == ((const U8*)s)[2] ) && ( 0x82 == ((const U8*)s)[3] ) ) ? 0x587 : 0 )\ 646 : ( 0xB4 == ((const U8*)s)[1] ) ? \ 647 ( ( 0xD5 == ((const U8*)s)[2] ) ? \ 648 ( ( 0xA5 == ((const U8*)s)[3] ) ? 0xFB14 \ 649 : ( 0xAB == ((const U8*)s)[3] ) ? 0xFB15 \ 650 : ( 0xAD == ((const U8*)s)[3] ) ? 0xFB17 \ 651 : ( 0xB6 == ((const U8*)s)[3] ) ? 0xFB13 : 0 ) \ 652 : 0 ) \ 653 : ( ( ( 0xBE == ((const U8*)s)[1] ) && ( 0xD5 == ((const U8*)s)[2] ) ) && ( 0xB6 == ((const U8*)s)[3] ) ) ? 0xFB16 : 0 )\ 654 : ( 0xE1 == ((const U8*)s)[0] ) ? \ 655 ( ( 0xBC == ((const U8*)s)[1] ) ? \ 656 ( ( 0x80 == ((const U8*)s)[2] ) ? \ 657 ( ( ( 0xCE == ((const U8*)s)[3] ) && ( 0xB9 == ((const U8*)s)[4] ) ) ? 0x1F80 : 0 )\ 658 : ( 0x81 == ((const U8*)s)[2] ) ? \ 659 ( ( ( 0xCE == ((const U8*)s)[3] ) && ( 0xB9 == ((const U8*)s)[4] ) ) ? 0x1F81 : 0 )\ 660 : ( 0x82 == ((const U8*)s)[2] ) ? \ 661 ( ( ( 0xCE == ((const U8*)s)[3] ) && ( 0xB9 == ((const U8*)s)[4] ) ) ? 0x1F82 : 0 )\ 662 : ( 0x83 == ((const U8*)s)[2] ) ? \ 663 ( ( ( 0xCE == ((const U8*)s)[3] ) && ( 0xB9 == ((const U8*)s)[4] ) ) ? 0x1F83 : 0 )\ 664 : ( 0x84 == ((const U8*)s)[2] ) ? \ 665 ( ( ( 0xCE == ((const U8*)s)[3] ) && ( 0xB9 == ((const U8*)s)[4] ) ) ? 0x1F84 : 0 )\ 666 : ( 0x85 == ((const U8*)s)[2] ) ? \ 667 ( ( ( 0xCE == ((const U8*)s)[3] ) && ( 0xB9 == ((const U8*)s)[4] ) ) ? 0x1F85 : 0 )\ 668 : ( 0x86 == ((const U8*)s)[2] ) ? \ 669 ( ( ( 0xCE == ((const U8*)s)[3] ) && ( 0xB9 == ((const U8*)s)[4] ) ) ? 0x1F86 : 0 )\ 670 : ( 0x87 == ((const U8*)s)[2] ) ? \ 671 ( ( ( 0xCE == ((const U8*)s)[3] ) && ( 0xB9 == ((const U8*)s)[4] ) ) ? 0x1F87 : 0 )\ 672 : ( 0xA0 == ((const U8*)s)[2] ) ? \ 673 ( ( ( 0xCE == ((const U8*)s)[3] ) && ( 0xB9 == ((const U8*)s)[4] ) ) ? 0x1F90 : 0 )\ 674 : ( 0xA1 == ((const U8*)s)[2] ) ? \ 675 ( ( ( 0xCE == ((const U8*)s)[3] ) && ( 0xB9 == ((const U8*)s)[4] ) ) ? 0x1F91 : 0 )\ 676 : ( 0xA2 == ((const U8*)s)[2] ) ? \ 677 ( ( ( 0xCE == ((const U8*)s)[3] ) && ( 0xB9 == ((const U8*)s)[4] ) ) ? 0x1F92 : 0 )\ 678 : ( 0xA3 == ((const U8*)s)[2] ) ? \ 679 ( ( ( 0xCE == ((const U8*)s)[3] ) && ( 0xB9 == ((const U8*)s)[4] ) ) ? 0x1F93 : 0 )\ 680 : ( 0xA4 == ((const U8*)s)[2] ) ? \ 681 ( ( ( 0xCE == ((const U8*)s)[3] ) && ( 0xB9 == ((const U8*)s)[4] ) ) ? 0x1F94 : 0 )\ 682 : ( 0xA5 == ((const U8*)s)[2] ) ? \ 683 ( ( ( 0xCE == ((const U8*)s)[3] ) && ( 0xB9 == ((const U8*)s)[4] ) ) ? 0x1F95 : 0 )\ 684 : ( 0xA6 == ((const U8*)s)[2] ) ? \ 685 ( ( ( 0xCE == ((const U8*)s)[3] ) && ( 0xB9 == ((const U8*)s)[4] ) ) ? 0x1F96 : 0 )\ 686 : ( ( ( 0xA7 == ((const U8*)s)[2] ) && ( 0xCE == ((const U8*)s)[3] ) ) && ( 0xB9 == ((const U8*)s)[4] ) ) ? 0x1F97 : 0 )\ 687 : ( 0xBD == ((const U8*)s)[1] ) ? \ 688 ( ( 0xA0 == ((const U8*)s)[2] ) ? \ 689 ( ( ( 0xCE == ((const U8*)s)[3] ) && ( 0xB9 == ((const U8*)s)[4] ) ) ? 0x1FA0 : 0 )\ 690 : ( 0xA1 == ((const U8*)s)[2] ) ? \ 691 ( ( ( 0xCE == ((const U8*)s)[3] ) && ( 0xB9 == ((const U8*)s)[4] ) ) ? 0x1FA1 : 0 )\ 692 : ( 0xA2 == ((const U8*)s)[2] ) ? \ 693 ( ( ( 0xCE == ((const U8*)s)[3] ) && ( 0xB9 == ((const U8*)s)[4] ) ) ? 0x1FA2 : 0 )\ 694 : ( 0xA3 == ((const U8*)s)[2] ) ? \ 695 ( ( ( 0xCE == ((const U8*)s)[3] ) && ( 0xB9 == ((const U8*)s)[4] ) ) ? 0x1FA3 : 0 )\ 696 : ( 0xA4 == ((const U8*)s)[2] ) ? \ 697 ( ( ( 0xCE == ((const U8*)s)[3] ) && ( 0xB9 == ((const U8*)s)[4] ) ) ? 0x1FA4 : 0 )\ 698 : ( 0xA5 == ((const U8*)s)[2] ) ? \ 699 ( ( ( 0xCE == ((const U8*)s)[3] ) && ( 0xB9 == ((const U8*)s)[4] ) ) ? 0x1FA5 : 0 )\ 700 : ( 0xA6 == ((const U8*)s)[2] ) ? \ 701 ( ( ( 0xCE == ((const U8*)s)[3] ) && ( 0xB9 == ((const U8*)s)[4] ) ) ? 0x1FA6 : 0 )\ 702 : ( 0xA7 == ((const U8*)s)[2] ) ? \ 703 ( ( ( 0xCE == ((const U8*)s)[3] ) && ( 0xB9 == ((const U8*)s)[4] ) ) ? 0x1FA7 : 0 )\ 704 : ( 0xB0 == ((const U8*)s)[2] ) ? \ 705 ( ( ( 0xCE == ((const U8*)s)[3] ) && ( 0xB9 == ((const U8*)s)[4] ) ) ? 0x1FB2 : 0 )\ 706 : ( 0xB4 == ((const U8*)s)[2] ) ? \ 707 ( ( ( 0xCE == ((const U8*)s)[3] ) && ( 0xB9 == ((const U8*)s)[4] ) ) ? 0x1FC2 : 0 )\ 708 : ( ( ( 0xBC == ((const U8*)s)[2] ) && ( 0xCE == ((const U8*)s)[3] ) ) && ( 0xB9 == ((const U8*)s)[4] ) ) ? 0x1FF2 : 0 )\ 709 : 0 ) \ 710 : 0 ) 711 712 713 /*** GENERATED CODE ***/ 714 #define what_MULTI_CHAR_FOLD_utf8_safe_part4_(s,e) \ 715 ( ( ( ((const U8*)s)[0] & 0xDF ) == 'A' ) ? \ 716 ( ( ( 0xCA == ((const U8*)s)[1] ) && ( 0xBE == ((const U8*)s)[2] ) ) ? 0x1E9A : 0 )\ 717 : ( ( ((const U8*)s)[0] & 0xDF ) == 'F' ) ? \ 718 ( ( ( ((const U8*)s)[1] & 0xDF ) == 'F' ) ? \ 719 ( ( ( ((const U8*)s)[2] & 0xDF ) == 'I' ) ? 0xFB03 \ 720 : ( ( ((const U8*)s)[2] & 0xDF ) == 'L' ) ? 0xFB04 : 0xFB00 ) \ 721 : ( ( ((const U8*)s)[1] & 0xDF ) == 'I' ) ? 0xFB01 \ 722 : ( ( ((const U8*)s)[1] & 0xDF ) == 'L' ) ? 0xFB02 : 0 ) \ 723 : ( ( ((const U8*)s)[0] & 0xDF ) == 'H' ) ? \ 724 ( ( ( 0xCC == ((const U8*)s)[1] ) && ( 0xB1 == ((const U8*)s)[2] ) ) ? 0x1E96 : 0 )\ 725 : ( ( ((const U8*)s)[0] & 0xDF ) == 'I' ) ? \ 726 ( ( ( 0xCC == ((const U8*)s)[1] ) && ( 0x87 == ((const U8*)s)[2] ) ) ? 0x130 : 0 )\ 727 : ( ( ((const U8*)s)[0] & 0xDF ) == 'J' ) ? \ 728 ( ( ( 0xCC == ((const U8*)s)[1] ) && ( 0x8C == ((const U8*)s)[2] ) ) ? 0x1F0 : 0 )\ 729 : ( ( ((const U8*)s)[0] & 0xDF ) == 'S' ) ? \ 730 ( ( ( ((const U8*)s)[1] & 0xDF ) == 'S' ) ? 0xDF \ 731 : ( ( ((const U8*)s)[1] & 0xDF ) == 'T' ) ? 0xFB05 \ 732 : ( ( 0xC5 == ((const U8*)s)[1] ) && ( 0xBF == ((const U8*)s)[2] ) ) ? 0xDF : 0 )\ 733 : ( ( ((const U8*)s)[0] & 0xDF ) == 'T' ) ? \ 734 ( ( ( 0xCC == ((const U8*)s)[1] ) && ( 0x88 == ((const U8*)s)[2] ) ) ? 0x1E97 : 0 )\ 735 : ( ( ((const U8*)s)[0] & 0xDF ) == 'W' ) ? \ 736 ( ( ( 0xCC == ((const U8*)s)[1] ) && ( 0x8A == ((const U8*)s)[2] ) ) ? 0x1E98 : 0 )\ 737 : ( ( ((const U8*)s)[0] & 0xDF ) == 'Y' ) ? \ 738 ( ( ( 0xCC == ((const U8*)s)[1] ) && ( 0x8A == ((const U8*)s)[2] ) ) ? 0x1E99 : 0 )\ 739 : ( 0xC5 == ((const U8*)s)[0] ) ? \ 740 ( ( 0xBF == ((const U8*)s)[1] ) ? \ 741 ( ( ( ((const U8*)s)[2] & 0xDF ) == 'S' ) ? 0xDF \ 742 : ( ( ((const U8*)s)[2] & 0xDF ) == 'T' ) ? 0xFB05 \ 743 : ( ( 0xC5 == ((const U8*)s)[2] ) && ( 0xBF == ((const U8*)s)[3] ) ) ? 0xDF : 0 )\ 744 : 0 ) \ 745 : ( 0xCA == ((const U8*)s)[0] ) ? \ 746 ( ( ( 0xBC == ((const U8*)s)[1] ) && ( ( ((const U8*)s)[2] & 0xDF ) == 'N' ) ) ? 0x149 : 0 )\ 747 : ( 0xCE == ((const U8*)s)[0] ) ? \ 748 ( ( 0xAC == ((const U8*)s)[1] ) ? \ 749 ( ( ( 0xCE == ((const U8*)s)[2] ) && ( 0xB9 == ((const U8*)s)[3] ) ) ? 0x1FB4 : 0 )\ 750 : ( 0xAE == ((const U8*)s)[1] ) ? \ 751 ( ( ( 0xCE == ((const U8*)s)[2] ) && ( 0xB9 == ((const U8*)s)[3] ) ) ? 0x1FC4 : 0 )\ 752 : ( 0xB1 == ((const U8*)s)[1] ) ? \ 753 ( ( 0xCD == ((const U8*)s)[2] ) ? \ 754 ( ( 0x82 == ((const U8*)s)[3] ) ? 0x1FB6 : 0 ) \ 755 : ( ( 0xCE == ((const U8*)s)[2] ) && ( 0xB9 == ((const U8*)s)[3] ) ) ? 0x1FB3 : 0 )\ 756 : ( 0xB7 == ((const U8*)s)[1] ) ? \ 757 ( ( 0xCD == ((const U8*)s)[2] ) ? \ 758 ( ( 0x82 == ((const U8*)s)[3] ) ? 0x1FC6 : 0 ) \ 759 : ( ( 0xCE == ((const U8*)s)[2] ) && ( 0xB9 == ((const U8*)s)[3] ) ) ? 0x1FC3 : 0 )\ 760 : ( ( ( 0xB9 == ((const U8*)s)[1] ) && ( 0xCD == ((const U8*)s)[2] ) ) && ( 0x82 == ((const U8*)s)[3] ) ) ? 0x1FD6 : 0 )\ 761 : ( 0xCF == ((const U8*)s)[0] ) ? \ 762 ( ( 0x81 == ((const U8*)s)[1] ) ? \ 763 ( ( ( 0xCC == ((const U8*)s)[2] ) && ( 0x93 == ((const U8*)s)[3] ) ) ? 0x1FE4 : 0 )\ 764 : ( 0x85 == ((const U8*)s)[1] ) ? \ 765 ( ( 0xCC == ((const U8*)s)[2] ) ? \ 766 ( ( 0x93 == ((const U8*)s)[3] ) ? 0x1F50 : 0 ) \ 767 : ( ( 0xCD == ((const U8*)s)[2] ) && ( 0x82 == ((const U8*)s)[3] ) ) ? 0x1FE6 : 0 )\ 768 : ( 0x89 == ((const U8*)s)[1] ) ? \ 769 ( ( 0xCD == ((const U8*)s)[2] ) ? \ 770 ( ( 0x82 == ((const U8*)s)[3] ) ? 0x1FF6 : 0 ) \ 771 : ( ( 0xCE == ((const U8*)s)[2] ) && ( 0xB9 == ((const U8*)s)[3] ) ) ? 0x1FF3 : 0 )\ 772 : ( ( ( 0x8E == ((const U8*)s)[1] ) && ( 0xCE == ((const U8*)s)[2] ) ) && ( 0xB9 == ((const U8*)s)[3] ) ) ? 0x1FF4 : 0 )\ 773 : ( 0xD5 == ((const U8*)s)[0] ) ? \ 774 ( ( 0xA5 == ((const U8*)s)[1] ) ? \ 775 ( ( ( 0xD6 == ((const U8*)s)[2] ) && ( 0x82 == ((const U8*)s)[3] ) ) ? 0x587 : 0 )\ 776 : ( 0xB4 == ((const U8*)s)[1] ) ? \ 777 ( ( 0xD5 == ((const U8*)s)[2] ) ? \ 778 ( ( 0xA5 == ((const U8*)s)[3] ) ? 0xFB14 \ 779 : ( 0xAB == ((const U8*)s)[3] ) ? 0xFB15 \ 780 : ( 0xAD == ((const U8*)s)[3] ) ? 0xFB17 \ 781 : ( 0xB6 == ((const U8*)s)[3] ) ? 0xFB13 : 0 ) \ 782 : 0 ) \ 783 : ( ( ( 0xBE == ((const U8*)s)[1] ) && ( 0xD5 == ((const U8*)s)[2] ) ) && ( 0xB6 == ((const U8*)s)[3] ) ) ? 0xFB16 : 0 )\ 784 : 0 ) 785 786 787 /*** GENERATED CODE ***/ 788 #define what_MULTI_CHAR_FOLD_utf8_safe_part5_(s,e) \ 789 ( ((e)-(s) > 2) ? \ 790 ( ( ( ((const U8*)s)[0] & 0xDF ) == 'A' ) ? \ 791 ( ( ( 0xCA == ((const U8*)s)[1] ) && ( 0xBE == ((const U8*)s)[2] ) ) ? 0x1E9A : 0 )\ 792 : ( ( ((const U8*)s)[0] & 0xDF ) == 'F' ) ? \ 793 ( ( ( ((const U8*)s)[1] & 0xDF ) == 'F' ) ? \ 794 ( ( ( ((const U8*)s)[2] & 0xDF ) == 'I' ) ? 0xFB03 \ 795 : ( ( ((const U8*)s)[2] & 0xDF ) == 'L' ) ? 0xFB04 : 0xFB00 ) \ 796 : ( ( ((const U8*)s)[1] & 0xDF ) == 'I' ) ? 0xFB01 \ 797 : ( ( ((const U8*)s)[1] & 0xDF ) == 'L' ) ? 0xFB02 : 0 ) \ 798 : ( ( ((const U8*)s)[0] & 0xDF ) == 'H' ) ? \ 799 ( ( ( 0xCC == ((const U8*)s)[1] ) && ( 0xB1 == ((const U8*)s)[2] ) ) ? 0x1E96 : 0 )\ 800 : ( ( ((const U8*)s)[0] & 0xDF ) == 'I' ) ? \ 801 ( ( ( 0xCC == ((const U8*)s)[1] ) && ( 0x87 == ((const U8*)s)[2] ) ) ? 0x130 : 0 )\ 802 : ( ( ((const U8*)s)[0] & 0xDF ) == 'J' ) ? \ 803 ( ( ( 0xCC == ((const U8*)s)[1] ) && ( 0x8C == ((const U8*)s)[2] ) ) ? 0x1F0 : 0 )\ 804 : ( ( ((const U8*)s)[0] & 0xDF ) == 'S' ) ? \ 805 ( ( ( ((const U8*)s)[1] & 0xDF ) == 'S' ) ? 0xDF \ 806 : ( ( ((const U8*)s)[1] & 0xDF ) == 'T' ) ? 0xFB05 \ 807 : ( ( 0xC5 == ((const U8*)s)[1] ) && ( 0xBF == ((const U8*)s)[2] ) ) ? 0xDF : 0 )\ 808 : ( ( ((const U8*)s)[0] & 0xDF ) == 'T' ) ? \ 809 ( ( ( 0xCC == ((const U8*)s)[1] ) && ( 0x88 == ((const U8*)s)[2] ) ) ? 0x1E97 : 0 )\ 810 : ( ( ((const U8*)s)[0] & 0xDF ) == 'W' ) ? \ 811 ( ( ( 0xCC == ((const U8*)s)[1] ) && ( 0x8A == ((const U8*)s)[2] ) ) ? 0x1E98 : 0 )\ 812 : ( ( ((const U8*)s)[0] & 0xDF ) == 'Y' ) ? \ 813 ( ( ( 0xCC == ((const U8*)s)[1] ) && ( 0x8A == ((const U8*)s)[2] ) ) ? 0x1E99 : 0 )\ 814 : ( 0xC5 == ((const U8*)s)[0] ) ? \ 815 ( ( 0xBF == ((const U8*)s)[1] ) ? \ 816 ( ( ( ((const U8*)s)[2] & 0xDF ) == 'S' ) ? 0xDF \ 817 : ( ( ((const U8*)s)[2] & 0xDF ) == 'T' ) ? 0xFB05 : 0 ) \ 818 : 0 ) \ 819 : ( ( ( 0xCA == ((const U8*)s)[0] ) && ( 0xBC == ((const U8*)s)[1] ) ) && ( ( ((const U8*)s)[2] & 0xDF ) == 'N' ) ) ? 0x149 : 0 )\ 820 : ((e)-(s) > 1) ? \ 821 ( ( ( ((const U8*)s)[0] & 0xDF ) == 'F' ) ? \ 822 ( ( ( ((const U8*)s)[1] & 0xDF ) == 'F' ) ? 0xFB00 \ 823 : ( ( ((const U8*)s)[1] & 0xDF ) == 'I' ) ? 0xFB01 \ 824 : ( ( ((const U8*)s)[1] & 0xDF ) == 'L' ) ? 0xFB02 : 0 ) \ 825 : ( ( ((const U8*)s)[0] & 0xDF ) == 'S' ) ? \ 826 ( ( ( ((const U8*)s)[1] & 0xDF ) == 'S' ) ? 0xDF \ 827 : ( ( ((const U8*)s)[1] & 0xDF ) == 'T' ) ? 0xFB05 : 0 ) \ 828 : 0 ) \ 829 : 0 ) 830 831 832 /*** GENERATED CODE ***/ 833 #define what_MULTI_CHAR_FOLD_utf8_safe_part6_(s,e) \ 834 ( ( ( ((const U8*)s)[0] & 0xDF ) == 'A' ) ? \ 835 ( ( ( 0xCA == ((const U8*)s)[1] ) && ( 0xBE == ((const U8*)s)[2] ) ) ? 0x1E9A : 0 )\ 836 : ( ( ((const U8*)s)[0] & 0xDF ) == 'F' ) ? \ 837 ( ( ( ((const U8*)s)[1] & 0xDF ) == 'F' ) ? \ 838 ( ( ( ((const U8*)s)[2] & 0xDF ) == 'I' ) ? 0xFB03 \ 839 : ( ( ((const U8*)s)[2] & 0xDF ) == 'L' ) ? 0xFB04 : 0xFB00 ) \ 840 : ( ( ((const U8*)s)[1] & 0xDF ) == 'I' ) ? 0xFB01 \ 841 : ( ( ((const U8*)s)[1] & 0xDF ) == 'L' ) ? 0xFB02 : 0 ) \ 842 : ( ( ((const U8*)s)[0] & 0xDF ) == 'H' ) ? \ 843 ( ( ( 0xCC == ((const U8*)s)[1] ) && ( 0xB1 == ((const U8*)s)[2] ) ) ? 0x1E96 : 0 )\ 844 : ( ( ((const U8*)s)[0] & 0xDF ) == 'I' ) ? \ 845 ( ( ( 0xCC == ((const U8*)s)[1] ) && ( 0x87 == ((const U8*)s)[2] ) ) ? 0x130 : 0 )\ 846 : ( ( ((const U8*)s)[0] & 0xDF ) == 'J' ) ? \ 847 ( ( ( 0xCC == ((const U8*)s)[1] ) && ( 0x8C == ((const U8*)s)[2] ) ) ? 0x1F0 : 0 )\ 848 : ( ( ((const U8*)s)[0] & 0xDF ) == 'S' ) ? \ 849 ( ( ( ((const U8*)s)[1] & 0xDF ) == 'S' ) ? 0xDF \ 850 : ( ( ((const U8*)s)[1] & 0xDF ) == 'T' ) ? 0xFB05 \ 851 : ( ( 0xC5 == ((const U8*)s)[1] ) && ( 0xBF == ((const U8*)s)[2] ) ) ? 0xDF : 0 )\ 852 : ( ( ((const U8*)s)[0] & 0xDF ) == 'T' ) ? \ 853 ( ( ( 0xCC == ((const U8*)s)[1] ) && ( 0x88 == ((const U8*)s)[2] ) ) ? 0x1E97 : 0 )\ 854 : ( ( ((const U8*)s)[0] & 0xDF ) == 'W' ) ? \ 855 ( ( ( 0xCC == ((const U8*)s)[1] ) && ( 0x8A == ((const U8*)s)[2] ) ) ? 0x1E98 : 0 )\ 856 : ( ( ((const U8*)s)[0] & 0xDF ) == 'Y' ) ? \ 857 ( ( ( 0xCC == ((const U8*)s)[1] ) && ( 0x8A == ((const U8*)s)[2] ) ) ? 0x1E99 : 0 )\ 858 : ( 0xC5 == ((const U8*)s)[0] ) ? \ 859 ( ( 0xBF == ((const U8*)s)[1] ) ? \ 860 ( ( ( ((const U8*)s)[2] & 0xDF ) == 'S' ) ? 0xDF \ 861 : ( ( ((const U8*)s)[2] & 0xDF ) == 'T' ) ? 0xFB05 \ 862 : ( ( 0xC5 == ((const U8*)s)[2] ) && ( 0xBF == ((const U8*)s)[3] ) ) ? 0xDF : 0 )\ 863 : 0 ) \ 864 : ( 0xCA == ((const U8*)s)[0] ) ? \ 865 ( ( ( 0xBC == ((const U8*)s)[1] ) && ( ( ((const U8*)s)[2] & 0xDF ) == 'N' ) ) ? 0x149 : 0 )\ 866 : ( 0xCE == ((const U8*)s)[0] ) ? \ 867 ( ( 0xAC == ((const U8*)s)[1] ) ? \ 868 ( ( ( 0xCE == ((const U8*)s)[2] ) && ( 0xB9 == ((const U8*)s)[3] ) ) ? 0x1FB4 : 0 )\ 869 : ( 0xAE == ((const U8*)s)[1] ) ? \ 870 ( ( ( 0xCE == ((const U8*)s)[2] ) && ( 0xB9 == ((const U8*)s)[3] ) ) ? 0x1FC4 : 0 )\ 871 : ( 0xB1 == ((const U8*)s)[1] ) ? \ 872 ( ( 0xCD == ((const U8*)s)[2] ) ? \ 873 ( ( 0x82 == ((const U8*)s)[3] ) ? \ 874 ( ( ( 0xCE == ((const U8*)s)[4] ) && ( 0xB9 == ((const U8*)s)[5] ) ) ? 0x1FB7 : 0x1FB6 )\ 875 : 0 ) \ 876 : ( ( 0xCE == ((const U8*)s)[2] ) && ( 0xB9 == ((const U8*)s)[3] ) ) ? 0x1FB3 : 0 )\ 877 : ( 0xB7 == ((const U8*)s)[1] ) ? \ 878 ( ( 0xCD == ((const U8*)s)[2] ) ? \ 879 ( ( 0x82 == ((const U8*)s)[3] ) ? \ 880 ( ( ( 0xCE == ((const U8*)s)[4] ) && ( 0xB9 == ((const U8*)s)[5] ) ) ? 0x1FC7 : 0x1FC6 )\ 881 : 0 ) \ 882 : ( ( 0xCE == ((const U8*)s)[2] ) && ( 0xB9 == ((const U8*)s)[3] ) ) ? 0x1FC3 : 0 )\ 883 : ( 0xB9 == ((const U8*)s)[1] ) ? \ 884 ( ( 0xCC == ((const U8*)s)[2] ) ? \ 885 ( ( 0x88 == ((const U8*)s)[3] ) ? \ 886 ( ( 0xCC == ((const U8*)s)[4] ) ? \ 887 ( ( 0x80 == ((const U8*)s)[5] ) ? 0x1FD2 \ 888 : ( 0x81 == ((const U8*)s)[5] ) ? 0x390 : 0 ) \ 889 : ( ( 0xCD == ((const U8*)s)[4] ) && ( 0x82 == ((const U8*)s)[5] ) ) ? 0x1FD7 : 0 )\ 890 : 0 ) \ 891 : ( ( 0xCD == ((const U8*)s)[2] ) && ( 0x82 == ((const U8*)s)[3] ) ) ? 0x1FD6 : 0 )\ 892 : 0 ) \ 893 : ( 0xCF == ((const U8*)s)[0] ) ? what_MULTI_CHAR_FOLD_utf8_safe_part0_(s,e) : what_MULTI_CHAR_FOLD_utf8_safe_part1_(s,e) ) 894 895 896 /*** GENERATED CODE ***/ 897 #define what_MULTI_CHAR_FOLD_utf8_safe_part7_(s,e) \ 898 ( ((e)-(s) > 4) ? \ 899 ( ( ( ((const U8*)s)[0] & 0xDF ) == 'A' ) ? \ 900 ( ( ( 0xCA == ((const U8*)s)[1] ) && ( 0xBE == ((const U8*)s)[2] ) ) ? 0x1E9A : 0 )\ 901 : ( ( ((const U8*)s)[0] & 0xDF ) == 'F' ) ? \ 902 ( ( ( ((const U8*)s)[1] & 0xDF ) == 'F' ) ? \ 903 ( ( ( ((const U8*)s)[2] & 0xDF ) == 'I' ) ? 0xFB03 \ 904 : ( ( ((const U8*)s)[2] & 0xDF ) == 'L' ) ? 0xFB04 : 0xFB00 ) \ 905 : ( ( ((const U8*)s)[1] & 0xDF ) == 'I' ) ? 0xFB01 \ 906 : ( ( ((const U8*)s)[1] & 0xDF ) == 'L' ) ? 0xFB02 : 0 ) \ 907 : ( ( ((const U8*)s)[0] & 0xDF ) == 'H' ) ? \ 908 ( ( ( 0xCC == ((const U8*)s)[1] ) && ( 0xB1 == ((const U8*)s)[2] ) ) ? 0x1E96 : 0 )\ 909 : ( ( ((const U8*)s)[0] & 0xDF ) == 'I' ) ? \ 910 ( ( ( 0xCC == ((const U8*)s)[1] ) && ( 0x87 == ((const U8*)s)[2] ) ) ? 0x130 : 0 )\ 911 : ( ( ((const U8*)s)[0] & 0xDF ) == 'J' ) ? \ 912 ( ( ( 0xCC == ((const U8*)s)[1] ) && ( 0x8C == ((const U8*)s)[2] ) ) ? 0x1F0 : 0 )\ 913 : ( ( ((const U8*)s)[0] & 0xDF ) == 'S' ) ? \ 914 ( ( ( ((const U8*)s)[1] & 0xDF ) == 'S' ) ? 0xDF \ 915 : ( ( ((const U8*)s)[1] & 0xDF ) == 'T' ) ? 0xFB05 \ 916 : ( ( 0xC5 == ((const U8*)s)[1] ) && ( 0xBF == ((const U8*)s)[2] ) ) ? 0xDF : 0 )\ 917 : ( ( ((const U8*)s)[0] & 0xDF ) == 'T' ) ? \ 918 ( ( ( 0xCC == ((const U8*)s)[1] ) && ( 0x88 == ((const U8*)s)[2] ) ) ? 0x1E97 : 0 )\ 919 : ( ( ((const U8*)s)[0] & 0xDF ) == 'W' ) ? \ 920 ( ( ( 0xCC == ((const U8*)s)[1] ) && ( 0x8A == ((const U8*)s)[2] ) ) ? 0x1E98 : 0 )\ 921 : ( ( ((const U8*)s)[0] & 0xDF ) == 'Y' ) ? \ 922 ( ( ( 0xCC == ((const U8*)s)[1] ) && ( 0x8A == ((const U8*)s)[2] ) ) ? 0x1E99 : 0 )\ 923 : ( 0xC5 == ((const U8*)s)[0] ) ? \ 924 ( ( 0xBF == ((const U8*)s)[1] ) ? \ 925 ( ( ( ((const U8*)s)[2] & 0xDF ) == 'S' ) ? 0xDF \ 926 : ( ( ((const U8*)s)[2] & 0xDF ) == 'T' ) ? 0xFB05 \ 927 : ( ( 0xC5 == ((const U8*)s)[2] ) && ( 0xBF == ((const U8*)s)[3] ) ) ? 0xDF : 0 )\ 928 : 0 ) \ 929 : ( 0xCA == ((const U8*)s)[0] ) ? \ 930 ( ( ( 0xBC == ((const U8*)s)[1] ) && ( ( ((const U8*)s)[2] & 0xDF ) == 'N' ) ) ? 0x149 : 0 )\ 931 : ( 0xCE == ((const U8*)s)[0] ) ? \ 932 ( ( 0xAC == ((const U8*)s)[1] ) ? \ 933 ( ( ( 0xCE == ((const U8*)s)[2] ) && ( 0xB9 == ((const U8*)s)[3] ) ) ? 0x1FB4 : 0 )\ 934 : ( 0xAE == ((const U8*)s)[1] ) ? \ 935 ( ( ( 0xCE == ((const U8*)s)[2] ) && ( 0xB9 == ((const U8*)s)[3] ) ) ? 0x1FC4 : 0 )\ 936 : ( 0xB1 == ((const U8*)s)[1] ) ? \ 937 ( ( 0xCD == ((const U8*)s)[2] ) ? \ 938 ( ( 0x82 == ((const U8*)s)[3] ) ? 0x1FB6 : 0 ) \ 939 : ( ( 0xCE == ((const U8*)s)[2] ) && ( 0xB9 == ((const U8*)s)[3] ) ) ? 0x1FB3 : 0 )\ 940 : ( 0xB7 == ((const U8*)s)[1] ) ? \ 941 ( ( 0xCD == ((const U8*)s)[2] ) ? \ 942 ( ( 0x82 == ((const U8*)s)[3] ) ? 0x1FC6 : 0 ) \ 943 : ( ( 0xCE == ((const U8*)s)[2] ) && ( 0xB9 == ((const U8*)s)[3] ) ) ? 0x1FC3 : 0 )\ 944 : ( ( ( 0xB9 == ((const U8*)s)[1] ) && ( 0xCD == ((const U8*)s)[2] ) ) && ( 0x82 == ((const U8*)s)[3] ) ) ? 0x1FD6 : 0 )\ 945 : ( 0xCF == ((const U8*)s)[0] ) ? what_MULTI_CHAR_FOLD_utf8_safe_part2_(s,e) : what_MULTI_CHAR_FOLD_utf8_safe_part3_(s,e) )\ 946 : ((e)-(s) > 3) ? what_MULTI_CHAR_FOLD_utf8_safe_part4_(s,e) : what_MULTI_CHAR_FOLD_utf8_safe_part5_(s,e) ) 947 948 949 /*** GENERATED CODE ***/ 950 #define what_MULTI_CHAR_FOLD_utf8_safe(s,e) \ 951 ( ((e)-(s) > 5) ? what_MULTI_CHAR_FOLD_utf8_safe_part6_(s,e) : what_MULTI_CHAR_FOLD_utf8_safe_part7_(s,e) ) 952 953 /* 954 MULTI_CHAR_FOLD: multi-char strings that are folded to by a single character 955 956 %regcharclass_multi_char_folds::multi_char_folds('l', 'a') 957 */ 958 /*** GENERATED CODE ***/ 959 #define is_MULTI_CHAR_FOLD_latin1_safe(s,e) \ 960 ( ((e)-(s) > 2) ? \ 961 ( ( ( ((const U8*)s)[0] & 0xDF ) == 'F' ) ? \ 962 ( ( ( ((const U8*)s)[1] & 0xDF ) == 'F' ) ? \ 963 ( ( ( ( ((const U8*)s)[2] & 0xDF ) == 'I' ) || ( ( ((const U8*)s)[2] & 0xDF ) == 'L' ) ) ? 3 : 2 )\ 964 : ( ( ( ((const U8*)s)[1] & 0xDF ) == 'I' ) || ( ( ((const U8*)s)[1] & 0xDF ) == 'L' ) ) ? 2 : 0 )\ 965 : ( ( ( ((const U8*)s)[0] & 0xDF ) == 'S' ) && ( inRANGE_helper_(U8, ((const U8*)s)[1], 'S', 'T') || inRANGE_helper_(U8, ((const U8*)s)[1], 's', 't') ) ) ? 2 : 0 )\ 966 : ((e)-(s) > 1) ? \ 967 ( ( ( ((const U8*)s)[0] & 0xDF ) == 'F' ) ? \ 968 ( ( ( ( ((const U8*)s)[1] & 0xDF ) == 'F' ) || ( ( ((const U8*)s)[1] & 0xDF ) == 'I' ) || ( ( ((const U8*)s)[1] & 0xDF ) == 'L' ) ) ? 2 : 0 )\ 969 : ( ( ( ((const U8*)s)[0] & 0xDF ) == 'S' ) && ( inRANGE_helper_(U8, ((const U8*)s)[1], 'S', 'T') || inRANGE_helper_(U8, ((const U8*)s)[1], 's', 't') ) ) ? 2 : 0 )\ 970 : 0 ) 971 972 /*** GENERATED CODE ***/ 973 #define what_MULTI_CHAR_FOLD_latin1_safe(s,e) \ 974 ( ((e)-(s) > 2) ? \ 975 ( ( ( ((const U8*)s)[0] & 0xDF ) == 'F' ) ? \ 976 ( ( ( ((const U8*)s)[1] & 0xDF ) == 'F' ) ? \ 977 ( ( ( ((const U8*)s)[2] & 0xDF ) == 'I' ) ? 0xFB03 \ 978 : ( ( ((const U8*)s)[2] & 0xDF ) == 'L' ) ? 0xFB04 : 0xFB00 ) \ 979 : ( ( ((const U8*)s)[1] & 0xDF ) == 'I' ) ? 0xFB01 \ 980 : ( ( ((const U8*)s)[1] & 0xDF ) == 'L' ) ? 0xFB02 : 0 ) \ 981 : ( ( ((const U8*)s)[0] & 0xDF ) == 'S' ) ? \ 982 ( ( ( ((const U8*)s)[1] & 0xDF ) == 'S' ) ? 0xDF \ 983 : ( ( ((const U8*)s)[1] & 0xDF ) == 'T' ) ? 0xFB05 : 0 ) \ 984 : 0 ) \ 985 : ((e)-(s) > 1) ? \ 986 ( ( ( ((const U8*)s)[0] & 0xDF ) == 'F' ) ? \ 987 ( ( ( ((const U8*)s)[1] & 0xDF ) == 'F' ) ? 0xFB00 \ 988 : ( ( ((const U8*)s)[1] & 0xDF ) == 'I' ) ? 0xFB01 \ 989 : ( ( ((const U8*)s)[1] & 0xDF ) == 'L' ) ? 0xFB02 : 0 ) \ 990 : ( ( ((const U8*)s)[0] & 0xDF ) == 'S' ) ? \ 991 ( ( ( ((const U8*)s)[1] & 0xDF ) == 'S' ) ? 0xDF \ 992 : ( ( ((const U8*)s)[1] & 0xDF ) == 'T' ) ? 0xFB05 : 0 ) \ 993 : 0 ) \ 994 : 0 ) 995 996 /* 997 THREE_CHAR_FOLD: A three-character multi-char fold 998 999 %regcharclass_multi_char_folds::multi_char_folds('u', '3') 1000 */ 1001 /*** GENERATED CODE ***/ 1002 #define is_THREE_CHAR_FOLD_utf8_safe(s,e) \ 1003 ( ((e)-(s) > 5) ? \ 1004 ( ( ( ((const U8*)s)[0] & 0xDF ) == 'F' ) ? \ 1005 ( ( ( ( ((const U8*)s)[1] & 0xDF ) == 'F' ) && ( ( ( ((const U8*)s)[2] & 0xDF ) == 'I' ) || ( ( ((const U8*)s)[2] & 0xDF ) == 'L' ) ) ) ? 3 : 0 )\ 1006 : ( 0xCE == ((const U8*)s)[0] ) ? \ 1007 ( ( 0xB1 == ((const U8*)s)[1] || 0xB7 == ((const U8*)s)[1] ) ? \ 1008 ( ( ( ( ( 0xCD == ((const U8*)s)[2] ) && ( 0x82 == ((const U8*)s)[3] ) ) && ( 0xCE == ((const U8*)s)[4] ) ) && ( 0xB9 == ((const U8*)s)[5] ) ) ? 6 : 0 )\ 1009 : ( ( ( 0xB9 == ((const U8*)s)[1] ) && ( 0xCC == ((const U8*)s)[2] ) ) && ( 0x88 == ((const U8*)s)[3] ) ) ? ( ( 0xCC == ((const U8*)s)[4] ) ?\ 1010 ( ( inRANGE_helper_(U8, ((const U8*)s)[5], 0x80, 0x81) ) ? 6 : 0 )\ 1011 : ( ( 0xCD == ((const U8*)s)[4] ) && ( 0x82 == ((const U8*)s)[5] ) ) ? 6 : 0 ) : 0 )\ 1012 : ( 0xCF == ((const U8*)s)[0] ) ? \ 1013 ( ( 0x85 == ((const U8*)s)[1] ) ? \ 1014 ( ( ( 0xCC == ((const U8*)s)[2] ) && ( 0x88 == ((const U8*)s)[3] || 0x93 == ((const U8*)s)[3] ) ) ? ( ( 0xCC == ((const U8*)s)[4] ) ?\ 1015 ( ( inRANGE_helper_(U8, ((const U8*)s)[5], 0x80, 0x81) ) ? 6 : 0 )\ 1016 : ( ( 0xCD == ((const U8*)s)[4] ) && ( 0x82 == ((const U8*)s)[5] ) ) ? 6 : 0 ) : 0 )\ 1017 : ( ( ( ( ( 0x89 == ((const U8*)s)[1] ) && ( 0xCD == ((const U8*)s)[2] ) ) && ( 0x82 == ((const U8*)s)[3] ) ) && ( 0xCE == ((const U8*)s)[4] ) ) && ( 0xB9 == ((const U8*)s)[5] ) ) ? 6 : 0 )\ 1018 : 0 ) \ 1019 : ( ( ( ((e)-(s) > 2) && ( ( ((const U8*)s)[0] & 0xDF ) == 'F' ) ) && ( ( ((const U8*)s)[1] & 0xDF ) == 'F' ) ) && ( ( ( ((const U8*)s)[2] & 0xDF ) == 'I' ) || ( ( ((const U8*)s)[2] & 0xDF ) == 'L' ) ) ) ? 3 : 0 ) 1020 1021 /* 1022 THREE_CHAR_FOLD: A three-character multi-char fold 1023 1024 %regcharclass_multi_char_folds::multi_char_folds('l', '3') 1025 */ 1026 /*** GENERATED CODE ***/ 1027 #define is_THREE_CHAR_FOLD_latin1_safe(s,e) \ 1028 ( ( ( ( ( ((e) - (s)) >= 3 ) && ( ( ((const U8*)s)[0] & 0xDF ) == 'F' ) ) && ( ( ((const U8*)s)[1] & 0xDF ) == 'F' ) ) && ( ( ( ((const U8*)s)[2] & 0xDF ) == 'I' ) || ( ( ((const U8*)s)[2] & 0xDF ) == 'L' ) ) ) ? 3 : 0 ) 1029 1030 /* 1031 THREE_CHAR_FOLD_HEAD: The first two of three-character multi-char folds 1032 1033 %regcharclass_multi_char_folds::multi_char_folds('u', 'h') 1034 */ 1035 /*** GENERATED CODE ***/ 1036 #define is_THREE_CHAR_FOLD_HEAD_utf8_safe(s,e) \ 1037 ( ((e)-(s) > 3) ? \ 1038 ( ( ( ( ((const U8*)s)[0] & 0xDF ) == 'A' ) || ( ( ((const U8*)s)[0] & 0xDE ) == 'H' ) || ( ( ((const U8*)s)[0] & 0xDF ) == 'J' ) || ( ( ((const U8*)s)[0] & 0xDB ) == 'S' ) || ( ( ((const U8*)s)[0] & 0xDF ) == 'T' ) || ( ( ((const U8*)s)[0] & 0xDF ) == 'Y' ) ) ? 1\ 1039 : ( ( ((const U8*)s)[0] & 0xDF ) == 'F' ) ? \ 1040 ( ( ( ((const U8*)s)[1] & 0xDF ) == 'F' ) ? 2 : 1 ) \ 1041 : ( 0xC5 == ((const U8*)s)[0] ) ? \ 1042 ( ( 0xBF == ((const U8*)s)[1] ) ? 2 : 0 ) \ 1043 : ( 0xCA == ((const U8*)s)[0] ) ? \ 1044 ( ( 0xBC == ((const U8*)s)[1] ) ? 2 : 0 ) \ 1045 : ( 0xCE == ((const U8*)s)[0] ) ? \ 1046 ( ( ( ((const U8*)s)[1] & 0xFD ) == 0xAC ) ? 2 \ 1047 : ( 0xB1 == ((const U8*)s)[1] || 0xB7 == ((const U8*)s)[1] ) ? \ 1048 ( ( ( 0xCD == ((const U8*)s)[2] ) && ( 0x82 == ((const U8*)s)[3] ) ) ? 4 : 2 )\ 1049 : ( 0xB9 == ((const U8*)s)[1] ) ? \ 1050 ( ( ( 0xCC == ((const U8*)s)[2] ) && ( 0x88 == ((const U8*)s)[3] ) ) ? 4 : 2 )\ 1051 : 0 ) \ 1052 : ( 0xCF == ((const U8*)s)[0] ) ? \ 1053 ( ( 0x81 == ((const U8*)s)[1] || 0x8E == ((const U8*)s)[1] ) ? 2 \ 1054 : ( 0x85 == ((const U8*)s)[1] ) ? \ 1055 ( ( ( 0xCC == ((const U8*)s)[2] ) && ( 0x88 == ((const U8*)s)[3] || 0x93 == ((const U8*)s)[3] ) ) ? 4 : 2 )\ 1056 : ( 0x89 == ((const U8*)s)[1] ) ? \ 1057 ( ( ( 0xCD == ((const U8*)s)[2] ) && ( 0x82 == ((const U8*)s)[3] ) ) ? 4 : 2 )\ 1058 : 0 ) \ 1059 : ( 0xD5 == ((const U8*)s)[0] ) ? \ 1060 ( ( 0xA5 == ((const U8*)s)[1] || 0xB4 == ((const U8*)s)[1] || 0xBE == ((const U8*)s)[1] ) ? 2 : 0 )\ 1061 : ( 0xE1 == ((const U8*)s)[0] ) ? \ 1062 ( ( 0xBC == ((const U8*)s)[1] ) ? \ 1063 ( ( ( ((const U8*)s)[2] & 0xD8 ) == 0x80 ) ? 3 : 0 ) \ 1064 : ( ( 0xBD == ((const U8*)s)[1] ) && ( ( ( ((const U8*)s)[2] & 0xF8 ) == 0xA0 ) || ( ( ((const U8*)s)[2] & 0xFB ) == 0xB0 ) || ((const U8*)s)[2] == 0xBC ) ) ? 3 : 0 )\ 1065 : 0 ) \ 1066 : ((e)-(s) > 2) ? \ 1067 ( ( ( ( ((const U8*)s)[0] & 0xDF ) == 'A' ) || ( ( ((const U8*)s)[0] & 0xDE ) == 'H' ) || ( ( ((const U8*)s)[0] & 0xDF ) == 'J' ) || ( ( ((const U8*)s)[0] & 0xDB ) == 'S' ) || ( ( ((const U8*)s)[0] & 0xDF ) == 'T' ) || ( ( ((const U8*)s)[0] & 0xDF ) == 'Y' ) ) ? 1\ 1068 : ( ( ((const U8*)s)[0] & 0xDF ) == 'F' ) ? \ 1069 ( ( ( ((const U8*)s)[1] & 0xDF ) == 'F' ) ? 2 : 1 ) \ 1070 : ( 0xC5 == ((const U8*)s)[0] ) ? \ 1071 ( ( 0xBF == ((const U8*)s)[1] ) ? 2 : 0 ) \ 1072 : ( 0xCA == ((const U8*)s)[0] ) ? \ 1073 ( ( 0xBC == ((const U8*)s)[1] ) ? 2 : 0 ) \ 1074 : ( 0xCE == ((const U8*)s)[0] ) ? \ 1075 ( ( ( ( ((const U8*)s)[1] & 0xFD ) == 0xAC ) || ( ( ((const U8*)s)[1] & 0xF7 ) == 0xB1 ) || ((const U8*)s)[1] == 0xB7 ) ? 2 : 0 )\ 1076 : ( 0xCF == ((const U8*)s)[0] ) ? \ 1077 ( ( ( ( ((const U8*)s)[1] & 0xFB ) == 0x81 ) || ((const U8*)s)[1] == 0x89 || ((const U8*)s)[1] == 0x8E ) ? 2 : 0 )\ 1078 : ( 0xD5 == ((const U8*)s)[0] ) ? \ 1079 ( ( 0xA5 == ((const U8*)s)[1] || 0xB4 == ((const U8*)s)[1] || 0xBE == ((const U8*)s)[1] ) ? 2 : 0 )\ 1080 : ( 0xE1 == ((const U8*)s)[0] ) ? \ 1081 ( ( 0xBC == ((const U8*)s)[1] ) ? \ 1082 ( ( ( ((const U8*)s)[2] & 0xD8 ) == 0x80 ) ? 3 : 0 ) \ 1083 : ( ( 0xBD == ((const U8*)s)[1] ) && ( ( ( ((const U8*)s)[2] & 0xF8 ) == 0xA0 ) || ( ( ((const U8*)s)[2] & 0xFB ) == 0xB0 ) || ((const U8*)s)[2] == 0xBC ) ) ? 3 : 0 )\ 1084 : 0 ) \ 1085 : ((e)-(s) > 1) ? \ 1086 ( ( ( ( ((const U8*)s)[0] & 0xDF ) == 'A' ) || ( ( ((const U8*)s)[0] & 0xDE ) == 'H' ) || ( ( ((const U8*)s)[0] & 0xDF ) == 'J' ) || ( ( ((const U8*)s)[0] & 0xDB ) == 'S' ) || ( ( ((const U8*)s)[0] & 0xDF ) == 'T' ) || ( ( ((const U8*)s)[0] & 0xDF ) == 'Y' ) ) ? 1\ 1087 : ( ( ((const U8*)s)[0] & 0xDF ) == 'F' ) ? \ 1088 ( ( ( ((const U8*)s)[1] & 0xDF ) == 'F' ) ? 2 : 1 ) \ 1089 : ( 0xC5 == ((const U8*)s)[0] ) ? \ 1090 ( ( 0xBF == ((const U8*)s)[1] ) ? 2 : 0 ) \ 1091 : ( 0xCA == ((const U8*)s)[0] ) ? \ 1092 ( ( 0xBC == ((const U8*)s)[1] ) ? 2 : 0 ) \ 1093 : ( 0xCE == ((const U8*)s)[0] ) ? \ 1094 ( ( ( ( ((const U8*)s)[1] & 0xFD ) == 0xAC ) || ( ( ((const U8*)s)[1] & 0xF7 ) == 0xB1 ) || ((const U8*)s)[1] == 0xB7 ) ? 2 : 0 )\ 1095 : ( 0xCF == ((const U8*)s)[0] ) ? \ 1096 ( ( ( ( ((const U8*)s)[1] & 0xFB ) == 0x81 ) || ((const U8*)s)[1] == 0x89 || ((const U8*)s)[1] == 0x8E ) ? 2 : 0 )\ 1097 : ( ( 0xD5 == ((const U8*)s)[0] ) && ( 0xA5 == ((const U8*)s)[1] || 0xB4 == ((const U8*)s)[1] || 0xBE == ((const U8*)s)[1] ) ) ? 2 : 0 )\ 1098 : ((e)-(s) > 0) ? \ 1099 ( ( ( ((const U8*)s)[0] & 0xDF ) == 'A' ) || ( ( ((const U8*)s)[0] & 0xDF ) == 'F' ) || ( ( ((const U8*)s)[0] & 0xDE ) == 'H' ) || ( ( ((const U8*)s)[0] & 0xDF ) == 'J' ) || ( ( ((const U8*)s)[0] & 0xDB ) == 'S' ) || ( ( ((const U8*)s)[0] & 0xDF ) == 'T' ) || ( ( ((const U8*)s)[0] & 0xDF ) == 'Y' ) )\ 1100 : 0 ) 1101 1102 /* 1103 THREE_CHAR_FOLD_HEAD: The first two of three-character multi-char folds 1104 1105 %regcharclass_multi_char_folds::multi_char_folds('l', 'h') 1106 */ 1107 /*** GENERATED CODE ***/ 1108 #define is_THREE_CHAR_FOLD_HEAD_latin1_safe(s,e) \ 1109 ( ((e)-(s) > 1) ? \ 1110 ( ( ( ( ((const U8*)s)[0] & 0xDF ) == 'A' ) || ( ( ((const U8*)s)[0] & 0xDE ) == 'H' ) || ( ( ((const U8*)s)[0] & 0xDF ) == 'J' ) || ( ( ((const U8*)s)[0] & 0xDB ) == 'S' ) || ( ( ((const U8*)s)[0] & 0xDF ) == 'T' ) || ( ( ((const U8*)s)[0] & 0xDF ) == 'Y' ) ) ? 1\ 1111 : ( ( ((const U8*)s)[0] & 0xDF ) == 'F' ) ? \ 1112 ( ( ( ((const U8*)s)[1] & 0xDF ) == 'F' ) ? 2 : 1 ) \ 1113 : 0 ) \ 1114 : ((e)-(s) > 0) ? \ 1115 ( ( ( ((const U8*)s)[0] & 0xDF ) == 'A' ) || ( ( ((const U8*)s)[0] & 0xDF ) == 'F' ) || ( ( ((const U8*)s)[0] & 0xDE ) == 'H' ) || ( ( ((const U8*)s)[0] & 0xDF ) == 'J' ) || ( ( ((const U8*)s)[0] & 0xDB ) == 'S' ) || ( ( ((const U8*)s)[0] & 0xDF ) == 'T' ) || ( ( ((const U8*)s)[0] & 0xDF ) == 'Y' ) )\ 1116 : 0 ) 1117 1118 /* 1119 FOLDS_TO_MULTI: characters that fold to multi-char strings 1120 1121 \p{_Perl_Folds_To_Multi_Char} 1122 */ 1123 /*** GENERATED CODE ***/ 1124 #define is_FOLDS_TO_MULTI_utf8(s) \ 1125 ( ( 0xC3 == ((const U8*)s)[0] ) ? \ 1126 ( ( 0x9F == ((const U8*)s)[1] ) ? 2 : 0 ) \ 1127 : ( 0xC4 == ((const U8*)s)[0] || 0xC7 == ((const U8*)s)[0] ) ? \ 1128 ( ( 0xB0 == ((const U8*)s)[1] ) ? 2 : 0 ) \ 1129 : ( 0xC5 == ((const U8*)s)[0] ) ? \ 1130 ( ( 0x89 == ((const U8*)s)[1] ) ? 2 : 0 ) \ 1131 : ( 0xCE == ((const U8*)s)[0] ) ? \ 1132 ( ( ( ((const U8*)s)[1] & 0xDF ) == 0x90 ) ? 2 : 0 ) \ 1133 : ( 0xD6 == ((const U8*)s)[0] ) ? \ 1134 ( ( 0x87 == ((const U8*)s)[1] ) ? 2 : 0 ) \ 1135 : ( 0xE1 == ((const U8*)s)[0] ) ? \ 1136 ( ( 0xBA == ((const U8*)s)[1] ) ? \ 1137 ( ( inRANGE_helper_(U8, ((const U8*)s)[2], 0x96, 0x9A) || 0x9E == ((const U8*)s)[2] ) ? 3 : 0 )\ 1138 : ( 0xBD == ((const U8*)s)[1] ) ? \ 1139 ( ( ( ((const U8*)s)[2] & 0xF9 ) == 0x90 ) ? 3 : 0 ) \ 1140 : ( 0xBE == ((const U8*)s)[1] ) ? \ 1141 ( ( inRANGE_helper_(U8, ((const U8*)s)[2], 0x80, 0xAF) || inRANGE_helper_(U8, ((const U8*)s)[2], 0xB2, 0xB4) || inRANGE_helper_(U8, ((const U8*)s)[2], 0xB6, 0xB7) || 0xBC == ((const U8*)s)[2] ) ? 3 : 0 )\ 1142 : ( ( 0xBF == ((const U8*)s)[1] ) && ( ( ( ((const U8*)s)[2] & 0xCA ) == 0x82 ) || ( ( ((const U8*)s)[2] & 0xF7 ) == 0x84 ) || ((const U8*)s)[2] == 0xA4 || ( ( ((const U8*)s)[2] & 0xF7 ) == 0xB4 ) ) ) ? 3 : 0 )\ 1143 : ( ( ( 0xEF == ((const U8*)s)[0] ) && ( 0xAC == ((const U8*)s)[1] ) ) && ( inRANGE_helper_(U8, ((const U8*)s)[2], 0x80, 0x86) || inRANGE_helper_(U8, ((const U8*)s)[2], 0x93, 0x97) ) ) ? 3 : 0 ) 1144 1145 /* 1146 PROBLEMATIC_LOCALE_FOLD: characters whose fold is problematic under locale 1147 1148 \p{_Perl_Problematic_Locale_Folds} 1149 */ 1150 /*** GENERATED CODE ***/ 1151 #define is_PROBLEMATIC_LOCALE_FOLD_utf8(s) \ 1152 ( ( ((const U8*)s)[0] <= 0x7F ) ? 1 \ 1153 : ( inRANGE_helper_(U8, ((const U8*)s)[0], 0xC2, 0xC3) ) ? \ 1154 2 \ 1155 : ( 0xC4 == ((const U8*)s)[0] ) ? \ 1156 ( ( inRANGE_helper_(U8, ((const U8*)s)[1], 0xB0, 0xB1) ) ? 2 : 0 ) \ 1157 : ( 0xC5 == ((const U8*)s)[0] ) ? \ 1158 ( ( 0x89 == ((const U8*)s)[1] || 0xB8 == ((const U8*)s)[1] || 0xBF == ((const U8*)s)[1] ) ? 2 : 0 )\ 1159 : ( 0xC7 == ((const U8*)s)[0] ) ? \ 1160 ( ( 0xB0 == ((const U8*)s)[1] ) ? 2 : 0 ) \ 1161 : ( 0xCC == ((const U8*)s)[0] ) ? \ 1162 ( ( 0x87 == ((const U8*)s)[1] ) ? 2 : 0 ) \ 1163 : ( 0xCE == ((const U8*)s)[0] ) ? \ 1164 ( ( ( ((const U8*)s)[1] & 0xDF ) == 0x9C ) ? 2 : 0 ) \ 1165 : ( 0xE1 == ((const U8*)s)[0] ) ? \ 1166 ( ( ( 0xBA == ((const U8*)s)[1] ) && ( inRANGE_helper_(U8, ((const U8*)s)[2], 0x96, 0x9A) || 0x9E == ((const U8*)s)[2] ) ) ? 3 : 0 )\ 1167 : ( 0xE2 == ((const U8*)s)[0] ) ? \ 1168 ( ( ( 0x84 == ((const U8*)s)[1] ) && ( inRANGE_helper_(U8, ((const U8*)s)[2], 0xAA, 0xAB) ) ) ? 3 : 0 )\ 1169 : ( ( ( 0xEF == ((const U8*)s)[0] ) && ( 0xAC == ((const U8*)s)[1] ) ) && ( inRANGE_helper_(U8, ((const U8*)s)[2], 0x80, 0x86) ) ) ? 3 : 0 ) 1170 1171 /*** GENERATED CODE ***/ 1172 #define is_PROBLEMATIC_LOCALE_FOLD_cp(cp) \ 1173 ( cp <= 0xFF || ( 0xFF < cp && \ 1174 ( inRANGE_helper_(UV, cp, 0x130, 0x131) || ( 0x131 < cp && \ 1175 ( 0x149 == cp || ( 0x149 < cp && \ 1176 ( 0x178 == cp || ( 0x178 < cp && \ 1177 ( 0x17F == cp || ( 0x17F < cp && \ 1178 ( 0x1F0 == cp || ( 0x1F0 < cp && \ 1179 ( 0x307 == cp || ( 0x307 < cp && \ 1180 ( 0x39C == cp || ( 0x39C < cp && \ 1181 ( 0x3BC == cp || ( 0x3BC < cp && \ 1182 ( inRANGE_helper_(UV, cp, 0x1E96, 0x1E9A) || ( 0x1E9A < cp && \ 1183 ( 0x1E9E == cp || ( 0x1E9E < cp && \ 1184 ( inRANGE_helper_(UV, cp, 0x212A, 0x212B) || inRANGE_helper_(UV, cp, 0xFB00, 0xFB06) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) 1185 1186 /* 1187 PROBLEMATIC_LOCALE_FOLDEDS_START: The first folded character of folds which are problematic under locale 1188 1189 \p{_Perl_Problematic_Locale_Foldeds_Start} 1190 */ 1191 /*** GENERATED CODE ***/ 1192 #define is_PROBLEMATIC_LOCALE_FOLDEDS_START_utf8(s) \ 1193 ( ( ((const U8*)s)[0] <= 0x7F ) ? 1 \ 1194 : ( inRANGE_helper_(U8, ((const U8*)s)[0], 0xC2, 0xC3) ) ? \ 1195 2 \ 1196 : ( 0xC4 == ((const U8*)s)[0] ) ? \ 1197 ( ( inRANGE_helper_(U8, ((const U8*)s)[1], 0xB0, 0xB1) ) ? 2 : 0 ) \ 1198 : ( 0xC5 == ((const U8*)s)[0] ) ? \ 1199 ( ( 0x89 == ((const U8*)s)[1] || 0xB8 == ((const U8*)s)[1] || 0xBF == ((const U8*)s)[1] ) ? 2 : 0 )\ 1200 : ( 0xC7 == ((const U8*)s)[0] ) ? \ 1201 ( ( 0xB0 == ((const U8*)s)[1] ) ? 2 : 0 ) \ 1202 : ( 0xCA == ((const U8*)s)[0] ) ? \ 1203 ( ( 0xBC == ((const U8*)s)[1] ) ? 2 : 0 ) \ 1204 : ( 0xCE == ((const U8*)s)[0] ) ? \ 1205 ( ( ( ((const U8*)s)[1] & 0xDF ) == 0x9C ) ? 2 : 0 ) \ 1206 : ( 0xE1 == ((const U8*)s)[0] ) ? \ 1207 ( ( ( 0xBA == ((const U8*)s)[1] ) && ( inRANGE_helper_(U8, ((const U8*)s)[2], 0x96, 0x9A) || 0x9E == ((const U8*)s)[2] ) ) ? 3 : 0 )\ 1208 : ( 0xE2 == ((const U8*)s)[0] ) ? \ 1209 ( ( ( 0x84 == ((const U8*)s)[1] ) && ( inRANGE_helper_(U8, ((const U8*)s)[2], 0xAA, 0xAB) ) ) ? 3 : 0 )\ 1210 : ( ( ( 0xEF == ((const U8*)s)[0] ) && ( 0xAC == ((const U8*)s)[1] ) ) && ( inRANGE_helper_(U8, ((const U8*)s)[2], 0x80, 0x86) ) ) ? 3 : 0 ) 1211 1212 /*** GENERATED CODE ***/ 1213 #define is_PROBLEMATIC_LOCALE_FOLDEDS_START_cp(cp) \ 1214 ( cp <= 0xFF || ( 0xFF < cp && \ 1215 ( inRANGE_helper_(UV, cp, 0x130, 0x131) || ( 0x131 < cp && \ 1216 ( 0x149 == cp || ( 0x149 < cp && \ 1217 ( 0x178 == cp || ( 0x178 < cp && \ 1218 ( 0x17F == cp || ( 0x17F < cp && \ 1219 ( 0x1F0 == cp || ( 0x1F0 < cp && \ 1220 ( 0x2BC == cp || ( 0x2BC < cp && \ 1221 ( 0x39C == cp || ( 0x39C < cp && \ 1222 ( 0x3BC == cp || ( 0x3BC < cp && \ 1223 ( inRANGE_helper_(UV, cp, 0x1E96, 0x1E9A) || ( 0x1E9A < cp && \ 1224 ( 0x1E9E == cp || ( 0x1E9E < cp && \ 1225 ( inRANGE_helper_(UV, cp, 0x212A, 0x212B) || inRANGE_helper_(UV, cp, 0xFB00, 0xFB06) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) 1226 1227 /* 1228 PATWS: pattern white space 1229 1230 \p{_Perl_PatWS} 1231 */ 1232 /*** GENERATED CODE ***/ 1233 #define is_PATWS_safe(s,e,is_utf8) \ 1234 ( ( LIKELY((e) > (s)) ) ? \ 1235 ( ( inRANGE_helper_(U8, ((const U8*)s)[0], '\t', '\r') || ' ' == ((const U8*)s)[0] ) ? 1\ 1236 : (! is_utf8 ) ? \ 1237 ( 0x85 == ((const U8*)s)[0] ) \ 1238 : ( LIKELY(((e) - (s)) >= UTF8SKIP(s)) ) ? \ 1239 ( ( 0xC2 == ((const U8*)s)[0] ) ? \ 1240 ( ( 0x85 == ((const U8*)s)[1] ) ? 2 : 0 ) \ 1241 : ( ( ( 0xE2 == ((const U8*)s)[0] ) && ( 0x80 == ((const U8*)s)[1] ) ) && ( inRANGE_helper_(U8, ((const U8*)s)[2], 0x8E, 0x8F) || inRANGE_helper_(U8, ((const U8*)s)[2], 0xA8, 0xA9) ) ) ? 3 : 0 )\ 1242 : 0 ) \ 1243 : 0 ) 1244 1245 /* 1246 HANGUL_ED: Hangul syllables whose first UTF-8 byte is \xED 1247 1248 0xD000 - 0xD7FF 1249 */ 1250 /*** GENERATED CODE ***/ 1251 #define is_HANGUL_ED_utf8_safe(s,e) \ 1252 ( ( ( ( ( ((e) - (s)) >= 3 ) && ( 0xED == ((const U8*)s)[0] ) ) && ( inRANGE_helper_(U8, ((const U8*)s)[1], 0x80, 0x9F) ) ) && ( inRANGE_helper_(U8, ((const U8*)s)[2], 0x80, 0xBF) ) ) ? 3 : 0 ) 1253 1254 #endif /* ASCII/Latin1 */ 1255 1256 #if 'A' == 193 /* EBCDIC 1047 */ \ 1257 && '\\' == 224 && '[' == 173 && ']' == 189 && '{' == 192 && '}' == 208 \ 1258 && '^' == 95 && '~' == 161 && '!' == 90 && '#' == 123 && '|' == 79 \ 1259 && '$' == 91 && '@' == 124 && '`' == 121 && '\n' == 21 1260 /* 1261 LNBREAK: Line Break: \R 1262 1263 "\x0D\x0A" # CRLF - Network (Windows) line ending 1264 \p{VertSpace} 1265 */ 1266 /*** GENERATED CODE ***/ 1267 #define is_LNBREAK_safe(s,e,is_utf8) \ 1268 ( ((e)-(s) > 2) ? \ 1269 ( ( inRANGE_helper_(U8, ((const U8*)s)[0], '\v', '\f') || '\n' == ((const U8*)s)[0] || 0x25 == ((const U8*)s)[0] ) ? 1\ 1270 : ( '\r' == ((const U8*)s)[0] ) ? \ 1271 ( ( '\n' == ((const U8*)s)[1] ) ? 2 : 1 ) \ 1272 : ( ( ( ( is_utf8 ) && ( 0xCA == ((const U8*)s)[0] ) ) && ( 0x42 == ((const U8*)s)[1] ) ) && ( inRANGE_helper_(U8, ((const U8*)s)[2], 0x49, 0x4A) ) ) ? 3 : 0 )\ 1273 : ((e)-(s) > 1) ? \ 1274 ( ( inRANGE_helper_(U8, ((const U8*)s)[0], '\v', '\f') || '\n' == ((const U8*)s)[0] || 0x25 == ((const U8*)s)[0] ) ? 1\ 1275 : ( '\r' == ((const U8*)s)[0] ) ? \ 1276 ( ( '\n' == ((const U8*)s)[1] ) ? 2 : 1 ) \ 1277 : 0 ) \ 1278 : ((e)-(s) > 0) ? \ 1279 ( inRANGE_helper_(U8, ((const U8*)s)[0], '\v', '\r') || '\n' == ((const U8*)s)[0] || 0x25 == ((const U8*)s)[0] )\ 1280 : 0 ) 1281 1282 /*** GENERATED CODE ***/ 1283 #define is_LNBREAK_utf8_safe(s,e) \ 1284 ( ((e)-(s) > 2) ? \ 1285 ( ( inRANGE_helper_(U8, ((const U8*)s)[0], '\v', '\f') || '\n' == ((const U8*)s)[0] || 0x25 == ((const U8*)s)[0] ) ? 1\ 1286 : ( '\r' == ((const U8*)s)[0] ) ? \ 1287 ( ( '\n' == ((const U8*)s)[1] ) ? 2 : 1 ) \ 1288 : ( ( ( 0xCA == ((const U8*)s)[0] ) && ( 0x42 == ((const U8*)s)[1] ) ) && ( inRANGE_helper_(U8, ((const U8*)s)[2], 0x49, 0x4A) ) ) ? 3 : 0 )\ 1289 : ((e)-(s) > 1) ? \ 1290 ( ( inRANGE_helper_(U8, ((const U8*)s)[0], '\v', '\f') || '\n' == ((const U8*)s)[0] || 0x25 == ((const U8*)s)[0] ) ? 1\ 1291 : ( '\r' == ((const U8*)s)[0] ) ? \ 1292 ( ( '\n' == ((const U8*)s)[1] ) ? 2 : 1 ) \ 1293 : 0 ) \ 1294 : ((e)-(s) > 0) ? \ 1295 ( inRANGE_helper_(U8, ((const U8*)s)[0], '\v', '\r') || '\n' == ((const U8*)s)[0] || 0x25 == ((const U8*)s)[0] )\ 1296 : 0 ) 1297 1298 /*** GENERATED CODE ***/ 1299 #define is_LNBREAK_latin1_safe(s,e) \ 1300 ( ((e)-(s) > 1) ? \ 1301 ( ( inRANGE_helper_(U8, ((const U8*)s)[0], '\v', '\f') || '\n' == ((const U8*)s)[0] || 0x25 == ((const U8*)s)[0] ) ? 1\ 1302 : ( '\r' == ((const U8*)s)[0] ) ? \ 1303 ( ( '\n' == ((const U8*)s)[1] ) ? 2 : 1 ) \ 1304 : 0 ) \ 1305 : ((e)-(s) > 0) ? \ 1306 ( inRANGE_helper_(U8, ((const U8*)s)[0], '\v', '\r') || '\n' == ((const U8*)s)[0] || 0x25 == ((const U8*)s)[0] )\ 1307 : 0 ) 1308 1309 /* 1310 HORIZWS: Horizontal Whitespace: \h \H 1311 1312 \p{HorizSpace} 1313 */ 1314 /*** GENERATED CODE ***/ 1315 #define is_HORIZWS_high(s) \ 1316 ( ( 0xBC == ((const U8*)s)[0] ) ? \ 1317 ( ( ( 0x63 == ((const U8*)s)[1] ) && ( 0x41 == ((const U8*)s)[2] ) ) ? 3 : 0 )\ 1318 : ( 0xCA == ((const U8*)s)[0] ) ? \ 1319 ( ( 0x41 == ((const U8*)s)[1] ) ? \ 1320 ( ( inRANGE_helper_(U8, NATIVE_UTF8_TO_I8(((const U8*)s)[2]), 0xA0, 0xAA) ) ? 3 : 0 )\ 1321 : ( 0x42 == ((const U8*)s)[1] ) ? \ 1322 ( ( 0x56 == ((const U8*)s)[2] ) ? 3 : 0 ) \ 1323 : ( ( 0x43 == ((const U8*)s)[1] ) && ( 0x73 == ((const U8*)s)[2] ) ) ? 3 : 0 )\ 1324 : ( ( ( 0xCE == ((const U8*)s)[0] ) && ( 0x41 == ((const U8*)s)[1] ) ) && ( 0x41 == ((const U8*)s)[2] ) ) ? 3 : 0 ) 1325 1326 /*** GENERATED CODE ***/ 1327 #define is_HORIZWS_cp_high(cp) \ 1328 ( 0x1680 == cp || ( 0x1680 < cp && \ 1329 ( inRANGE_helper_(UV, cp, 0x2000, 0x200A) || ( 0x200A < cp && \ 1330 ( 0x202F == cp || ( 0x202F < cp && \ 1331 ( 0x205F == cp || 0x3000 == cp ) ) ) ) ) ) ) 1332 1333 /* 1334 VERTWS: Vertical Whitespace: \v \V 1335 1336 \p{VertSpace} 1337 */ 1338 /*** GENERATED CODE ***/ 1339 #define is_VERTWS_high(s) \ 1340 ( ( ( ( 0xCA == ((const U8*)s)[0] ) && ( 0x42 == ((const U8*)s)[1] ) ) && ( inRANGE_helper_(U8, ((const U8*)s)[2], 0x49, 0x4A) ) ) ? 3 : 0 ) 1341 1342 /*** GENERATED CODE ***/ 1343 #define is_VERTWS_cp_high(cp) \ 1344 ( inRANGE_helper_(UV, cp, 0x2028, 0x2029) ) 1345 1346 /* 1347 XDIGIT: Hexadecimal digits 1348 1349 \p{XDigit} 1350 */ 1351 /*** GENERATED CODE ***/ 1352 #define is_XDIGIT_high(s) \ 1353 ( ( ( 0xDD == ((const U8*)s)[0] ) && ( 0x73 == ((const U8*)s)[1] ) ) ? ( ( 0x67 == ((const U8*)s)[2] ) ?\ 1354 ( ( inRANGE_helper_(U8, NATIVE_UTF8_TO_I8(((const U8*)s)[3]), 0xB0, 0xB9) ) ? 4 : 0 )\ 1355 : ( ( inRANGE_helper_(U8, ((const U8*)s)[2], 0x68, 0x69) ) && ( inRANGE_helper_(U8, ((const U8*)s)[3], 0x42, 0x47) ) ) ? 4 : 0 ) : 0 ) 1356 1357 /*** GENERATED CODE ***/ 1358 #define is_XDIGIT_cp_high(cp) \ 1359 ( inRANGE_helper_(UV, cp, 0xFF10, 0xFF19) || ( 0xFF19 < cp && \ 1360 ( inRANGE_helper_(UV, cp, 0xFF21, 0xFF26) || inRANGE_helper_(UV, cp, 0xFF41, 0xFF46) ) ) ) 1361 1362 /* 1363 XPERLSPACE: \p{XPerlSpace} 1364 1365 \p{XPerlSpace} 1366 */ 1367 /*** GENERATED CODE ***/ 1368 #define is_XPERLSPACE_high(s) \ 1369 ( ( 0xBC == ((const U8*)s)[0] ) ? \ 1370 ( ( ( 0x63 == ((const U8*)s)[1] ) && ( 0x41 == ((const U8*)s)[2] ) ) ? 3 : 0 )\ 1371 : ( 0xCA == ((const U8*)s)[0] ) ? \ 1372 ( ( 0x41 == ((const U8*)s)[1] ) ? \ 1373 ( ( inRANGE_helper_(U8, NATIVE_UTF8_TO_I8(((const U8*)s)[2]), 0xA0, 0xAA) ) ? 3 : 0 )\ 1374 : ( 0x42 == ((const U8*)s)[1] ) ? \ 1375 ( ( inRANGE_helper_(U8, ((const U8*)s)[2], 0x49, 0x4A) || 0x56 == ((const U8*)s)[2] ) ? 3 : 0 )\ 1376 : ( ( 0x43 == ((const U8*)s)[1] ) && ( 0x73 == ((const U8*)s)[2] ) ) ? 3 : 0 )\ 1377 : ( ( ( 0xCE == ((const U8*)s)[0] ) && ( 0x41 == ((const U8*)s)[1] ) ) && ( 0x41 == ((const U8*)s)[2] ) ) ? 3 : 0 ) 1378 1379 /*** GENERATED CODE ***/ 1380 #define is_XPERLSPACE_cp_high(cp) \ 1381 ( 0x1680 == cp || ( 0x1680 < cp && \ 1382 ( inRANGE_helper_(UV, cp, 0x2000, 0x200A) || ( 0x200A < cp && \ 1383 ( inRANGE_helper_(UV, cp, 0x2028, 0x2029) || ( 0x2029 < cp && \ 1384 ( 0x202F == cp || ( 0x202F < cp && \ 1385 ( 0x205F == cp || 0x3000 == cp ) ) ) ) ) ) ) ) ) 1386 1387 /* 1388 NONCHAR: Non character code points 1389 1390 \p{_Perl_Nchar} 1391 */ 1392 /*** GENERATED CODE ***/ 1393 #define is_NONCHAR_utf8_safe(s,e) \ 1394 ( ( ( LIKELY((e) > (s)) ) && ( LIKELY(((e) - (s)) >= UTF8SKIP(s)) ) ) ? ( ( 0xDD == ((const U8*)s)[0] ) ?\ 1395 ( ( 0x73 == ((const U8*)s)[1] ) ? \ 1396 ( ( 0x55 == ((const U8*)s)[2] ) ? \ 1397 ( ( inRANGE_helper_(U8, NATIVE_UTF8_TO_I8(((const U8*)s)[3]), 0xB0, 0xBF) ) ? 4 : 0 )\ 1398 : ( 0x56 == ((const U8*)s)[2] ) ? \ 1399 ( ( inRANGE_helper_(U8, NATIVE_UTF8_TO_I8(((const U8*)s)[3]), 0xA0, 0xAF) ) ? 4 : 0 )\ 1400 : ( ( 0x73 == ((const U8*)s)[2] ) && ( inRANGE_helper_(U8, ((const U8*)s)[3], 0x72, 0x73) ) ) ? 4 : 0 )\ 1401 : 0 ) \ 1402 : ( ((const U8*)s)[0] == 0xDF || ( ( NATIVE_UTF8_TO_I8(((const U8*)s)[0]) & 0xFD ) == 0xF5 ) ) ?\ 1403 ( ( ( ( 0x73 == ((const U8*)s)[1] ) && ( 0x73 == ((const U8*)s)[2] ) ) && ( inRANGE_helper_(U8, ((const U8*)s)[3], 0x72, 0x73) ) ) ? 4 : 0 )\ 1404 : ( 0xED == ((const U8*)s)[0] ) ? \ 1405 ( ( ( ( ( ( ( NATIVE_UTF8_TO_I8(((const U8*)s)[1]) & 0xF9 ) == 0xA9 ) || ( ( NATIVE_UTF8_TO_I8(((const U8*)s)[1]) & 0xF1 ) == 0xB1 ) ) && ( 0x73 == ((const U8*)s)[2] ) ) && ( 0x73 == ((const U8*)s)[3] ) ) && ( inRANGE_helper_(U8, ((const U8*)s)[4], 0x72, 0x73) ) ) ? 5 : 0 )\ 1406 : ( ( ( ( ( 0xEE == ((const U8*)s)[0] ) && ( 0x42 == ((const U8*)s)[1] ) ) && ( 0x73 == ((const U8*)s)[2] ) ) && ( 0x73 == ((const U8*)s)[3] ) ) && ( inRANGE_helper_(U8, ((const U8*)s)[4], 0x72, 0x73) ) ) ? 5 : 0 ) : 0 ) 1407 1408 /* 1409 SHORTER_NON_CHARS: # 4 bytes 1410 1411 0xFDD0 - 0xFDEF 1412 0xFFFE - 0xFFFF 1413 0x1FFFE - 0x1FFFF 1414 0x2FFFE - 0x2FFFF 1415 0x3FFFE - 0x3FFFF 1416 */ 1417 /*** GENERATED CODE ***/ 1418 #define is_SHORTER_NON_CHARS_utf8(s) \ 1419 ( ( 0xDD == ((const U8*)s)[0] ) ? \ 1420 ( ( 0x73 == ((const U8*)s)[1] ) ? \ 1421 ( ( 0x55 == ((const U8*)s)[2] ) ? \ 1422 ( ( inRANGE_helper_(U8, NATIVE_UTF8_TO_I8(((const U8*)s)[3]), 0xB0, 0xBF) ) ? 4 : 0 )\ 1423 : ( 0x56 == ((const U8*)s)[2] ) ? \ 1424 ( ( inRANGE_helper_(U8, NATIVE_UTF8_TO_I8(((const U8*)s)[3]), 0xA0, 0xAF) ) ? 4 : 0 )\ 1425 : ( ( 0x73 == ((const U8*)s)[2] ) && ( inRANGE_helper_(U8, ((const U8*)s)[3], 0x72, 0x73) ) ) ? 4 : 0 )\ 1426 : 0 ) \ 1427 : ( ( ( ( ((const U8*)s)[0] == 0xDF || ( ( NATIVE_UTF8_TO_I8(((const U8*)s)[0]) & 0xFD ) == 0xF5 ) ) && ( 0x73 == ((const U8*)s)[1] ) ) && ( 0x73 == ((const U8*)s)[2] ) ) && ( inRANGE_helper_(U8, ((const U8*)s)[3], 0x72, 0x73) ) ) ? 4 : 0 ) 1428 1429 /* 1430 LARGER_NON_CHARS: # 5 bytes 1431 1432 0x4FFFE - 0x4FFFF 1433 0x5FFFE - 0x5FFFF 1434 0x6FFFE - 0x6FFFF 1435 0x7FFFE - 0x7FFFF 1436 0x8FFFE - 0x8FFFF 1437 0x9FFFE - 0x9FFFF 1438 0xAFFFE - 0xAFFFF 1439 0xBFFFE - 0xBFFFF 1440 0xCFFFE - 0xCFFFF 1441 0xDFFFE - 0xDFFFF 1442 0xEFFFE - 0xEFFFF 1443 0xFFFFE - 0xFFFFF 1444 0x10FFFE - 0x10FFFF 1445 */ 1446 /*** GENERATED CODE ***/ 1447 #define is_LARGER_NON_CHARS_utf8(s) \ 1448 ( ( 0xED == ((const U8*)s)[0] ) ? \ 1449 ( ( ( ( ( ( ( NATIVE_UTF8_TO_I8(((const U8*)s)[1]) & 0xF9 ) == 0xA9 ) || ( ( NATIVE_UTF8_TO_I8(((const U8*)s)[1]) & 0xF1 ) == 0xB1 ) ) && ( 0x73 == ((const U8*)s)[2] ) ) && ( 0x73 == ((const U8*)s)[3] ) ) && ( inRANGE_helper_(U8, ((const U8*)s)[4], 0x72, 0x73) ) ) ? 5 : 0 )\ 1450 : ( ( ( ( ( 0xEE == ((const U8*)s)[0] ) && ( 0x42 == ((const U8*)s)[1] ) ) && ( 0x73 == ((const U8*)s)[2] ) ) && ( 0x73 == ((const U8*)s)[3] ) ) && ( inRANGE_helper_(U8, ((const U8*)s)[4], 0x72, 0x73) ) ) ? 5 : 0 ) 1451 1452 /* 1453 SURROGATE: Surrogate code points 1454 1455 \p{_Perl_Surrogate} 1456 */ 1457 /*** GENERATED CODE ***/ 1458 #define is_SURROGATE_utf8(s) \ 1459 ( ( ( 0xDD == ((const U8*)s)[0] ) && ( inRANGE_helper_(U8, ((const U8*)s)[1], 0x65, 0x66) ) ) ? 4 : 0 ) 1460 1461 /*** GENERATED CODE ***/ 1462 #define is_SURROGATE_utf8_safe(s,e) \ 1463 ( ( ( ( ( ( ((e) - (s)) >= 4 ) && ( 0xDD == ((const U8*)s)[0] ) ) && ( inRANGE_helper_(U8, ((const U8*)s)[1], 0x65, 0x66) ) ) && ( inRANGE_helper_(U8, NATIVE_UTF8_TO_I8(((const U8*)s)[2]), 0xA0, 0xBF) ) ) && ( inRANGE_helper_(U8, NATIVE_UTF8_TO_I8(((const U8*)s)[3]), 0xA0, 0xBF) ) ) ? 4 : 0 ) 1464 1465 /* 1466 QUOTEMETA: Meta-characters that \Q should quote 1467 1468 \p{_Perl_Quotemeta} 1469 */ 1470 /*** GENERATED CODE ***/ 1471 #define is_QUOTEMETA_high(s) \ 1472 ( ( 0xB1 == ((const U8*)s)[0] ) ? \ 1473 ( ( 0x56 == ((const U8*)s)[1] ) ? 2 : 0 ) \ 1474 : ( 0xB8 == ((const U8*)s)[0] ) ? \ 1475 ( ( ( 0x57 == ((const U8*)s)[1] ) && ( 0x70 == ((const U8*)s)[2] ) ) ? 3 : 0 )\ 1476 : ( 0xBB == ((const U8*)s)[0] ) ? \ 1477 ( ( 0x51 == ((const U8*)s)[1] ) ? \ 1478 ( ( 0x73 == ((const U8*)s)[2] ) ? 3 : 0 ) \ 1479 : ( ( 0x52 == ((const U8*)s)[1] ) && ( 0x41 == ((const U8*)s)[2] ) ) ? 3 : 0 )\ 1480 : ( 0xBC == ((const U8*)s)[0] ) ? \ 1481 ( ( 0x63 == ((const U8*)s)[1] ) ? \ 1482 ( ( 0x41 == ((const U8*)s)[2] ) ? 3 : 0 ) \ 1483 : ( ( 0x71 == ((const U8*)s)[1] ) && ( inRANGE_helper_(U8, ((const U8*)s)[2], 0x63, 0x64) ) ) ? 3 : 0 )\ 1484 : ( 0xBE == ((const U8*)s)[0] ) ? \ 1485 ( ( ( 0x41 == ((const U8*)s)[1] ) && ( inRANGE_helper_(U8, ((const U8*)s)[2], 0x52, 0x56) ) ) ? 3 : 0 )\ 1486 : ( 0xCA == ((const U8*)s)[0] ) ? \ 1487 ( ( 0x41 == ((const U8*)s)[1] || inRANGE_helper_(U8, NATIVE_UTF8_TO_I8(((const U8*)s)[1]), 0xAD, 0xBF) ) ?\ 1488 3 \ 1489 : ( 0x42 == ((const U8*)s)[1] ) ? \ 1490 ( ( inRANGE_helper_(U8, NATIVE_UTF8_TO_I8(((const U8*)s)[2]), 0xA0, 0xBE) ) ? 3 : 0 )\ 1491 : ( 0x43 == ((const U8*)s)[1] ) ? \ 1492 ( ( inRANGE_helper_(U8, NATIVE_UTF8_TO_I8(((const U8*)s)[2]), 0xA1, 0xB3) || inRANGE_helper_(U8, NATIVE_UTF8_TO_I8(((const U8*)s)[2]), 0xB5, 0xBF) ) ? 3 : 0 )\ 1493 : ( 0x44 == ((const U8*)s)[1] ) ? \ 1494 ( ( inRANGE_helper_(U8, NATIVE_UTF8_TO_I8(((const U8*)s)[2]), 0xA0, 0xAF) ) ? 3 : 0 )\ 1495 : ( ( 0x53 == ((const U8*)s)[1] ) && ( inRANGE_helper_(U8, NATIVE_UTF8_TO_I8(((const U8*)s)[2]), 0xB0, 0xBF) ) ) ? 3 : 0 )\ 1496 : ( 0xCB == ((const U8*)s)[0] ) ? \ 1497 ( ( inRANGE_helper_(U8, NATIVE_UTF8_TO_I8(((const U8*)s)[1]), 0xA0, 0xA2) || inRANGE_helper_(U8, NATIVE_UTF8_TO_I8(((const U8*)s)[1]), 0xA8, 0xBA) || inRANGE_helper_(U8, NATIVE_UTF8_TO_I8(((const U8*)s)[1]), 0xBD, 0xBF) ) ?\ 1498 3 \ 1499 : ( 0x6A == ((const U8*)s)[1] ) ? \ 1500 ( ( inRANGE_helper_(U8, NATIVE_UTF8_TO_I8(((const U8*)s)[2]), 0xA0, 0xB5) ) ? 3 : 0 )\ 1501 : ( ( 0x70 == ((const U8*)s)[1] ) && ( inRANGE_helper_(U8, NATIVE_UTF8_TO_I8(((const U8*)s)[2]), 0xB4, 0xBF) ) ) ? 3 : 0 )\ 1502 : ( 0xCC == ((const U8*)s)[0] ) ? \ 1503 3 \ 1504 : ( 0xCD == ((const U8*)s)[0] ) ? \ 1505 ( ( inRANGE_helper_(U8, NATIVE_UTF8_TO_I8(((const U8*)s)[1]), 0xB0, 0xB3) ) ?\ 1506 3 \ 1507 : 0 ) \ 1508 : ( 0xCE == ((const U8*)s)[0] ) ? \ 1509 ( ( 0x41 == ((const U8*)s)[1] ) ? \ 1510 ( ( inRANGE_helper_(U8, NATIVE_UTF8_TO_I8(((const U8*)s)[2]), 0xA0, 0xA3) || inRANGE_helper_(U8, NATIVE_UTF8_TO_I8(((const U8*)s)[2]), 0xA8, 0xBF) ) ? 3 : 0 )\ 1511 : ( 0x42 == ((const U8*)s)[1] ) ? \ 1512 ( ( ( NATIVE_UTF8_TO_I8(((const U8*)s)[2]) & 0xEF ) == 0xA0 ) ? 3 : 0 )\ 1513 : ( ( 0x52 == ((const U8*)s)[1] ) && ( 0x45 == ((const U8*)s)[2] ) ) ? 3 : 0 )\ 1514 : ( 0xDD == ((const U8*)s)[0] ) ? \ 1515 ( ( 0x73 == ((const U8*)s)[1] ) ? \ 1516 ( ( 0x4A == ((const U8*)s)[2] ) ? \ 1517 ( ( inRANGE_helper_(U8, ((const U8*)s)[3], 0x72, 0x73) ) ? 4 : 0 )\ 1518 : ( 0x57 == ((const U8*)s)[2] ) ? \ 1519 ( ( inRANGE_helper_(U8, NATIVE_UTF8_TO_I8(((const U8*)s)[3]), 0xA0, 0xAF) ) ? 4 : 0 )\ 1520 : ( 0x59 == ((const U8*)s)[2] ) ? \ 1521 ( ( inRANGE_helper_(U8, ((const U8*)s)[3], 0x46, 0x47) ) ? 4 : 0 )\ 1522 : ( 0x66 == ((const U8*)s)[2] ) ? \ 1523 ( ( 0x73 == ((const U8*)s)[3] ) ? 4 : 0 ) \ 1524 : ( 0x71 == ((const U8*)s)[2] ) ? \ 1525 ( ( 0x41 == ((const U8*)s)[3] ) ? 4 : 0 ) \ 1526 : ( ( 0x73 == ((const U8*)s)[2] ) && ( inRANGE_helper_(U8, NATIVE_UTF8_TO_I8(((const U8*)s)[3]), 0xB0, 0xB8) ) ) ? 4 : 0 )\ 1527 : 0 ) \ 1528 : ( 0xDF == ((const U8*)s)[0] ) ? \ 1529 ( ( 0x56 == ((const U8*)s)[1] ) ? \ 1530 ( ( ( 0x46 == ((const U8*)s)[2] ) && ( inRANGE_helper_(U8, ((const U8*)s)[3], 0x41, 0x44) ) ) ? 4 : 0 )\ 1531 : ( ( ( 0x63 == ((const U8*)s)[1] ) && ( 0x52 == ((const U8*)s)[2] ) ) && ( inRANGE_helper_(U8, ((const U8*)s)[3], 0x62, 0x69) ) ) ? 4 : 0 )\ 1532 : ( ( ( 0xED == ((const U8*)s)[0] ) && ( 0x70 == ((const U8*)s)[1] ) ) && ( inRANGE_helper_(U8, ((const U8*)s)[2], 0x41, 0x44) ) ) ? 5 : 0 ) 1533 1534 /* 1535 MULTI_CHAR_FOLD: multi-char strings that are folded to by a single character 1536 1537 %regcharclass_multi_char_folds::multi_char_folds('u', 'a') 1538 */ 1539 /*** GENERATED CODE ***/ 1540 #define is_MULTI_CHAR_FOLD_utf8_safe_part0_(s,e) \ 1541 ( ( ( 0xAF == ((const U8*)s)[1] ) && ( 0x48 == ((const U8*)s)[2] ) ) ? 3 : 0 ) 1542 1543 1544 /*** GENERATED CODE ***/ 1545 #define is_MULTI_CHAR_FOLD_utf8_safe_part1_(s,e) \ 1546 ( ( 0x8F == ((const U8*)s)[0] ) ? \ 1547 ( ( 0x73 == ((const U8*)s)[1] ) ? \ 1548 ( ( 0x8F == ((const U8*)s)[2] ) ? \ 1549 ( ( 0x73 == ((const U8*)s)[3] ) ? 4 : 0 ) \ 1550 : ( ( ((const U8*)s)[2] & 0xBE ) == 's' ) ? 3 : 0 ) \ 1551 : 0 ) \ 1552 : ( ( ((const U8*)s)[0] & 0xBF ) == 'j' ) ? \ 1553 ( ( ( 0xAF == ((const U8*)s)[1] ) && ( 0x53 == ((const U8*)s)[2] ) ) ? 3 : 0 )\ 1554 : ( ( ((const U8*)s)[0] & 0xBF ) == 's' ) ? \ 1555 ( ( 0x8F == ((const U8*)s)[1] ) ? \ 1556 ( ( 0x73 == ((const U8*)s)[2] ) ? 3 : 0 ) \ 1557 : ( ( ((const U8*)s)[1] & 0xBE ) == 's' ) ? 2 : 0 ) \ 1558 : ( ( ((const U8*)s)[0] & 0xBF ) == 't' ) ? \ 1559 ( ( ( 0xAF == ((const U8*)s)[1] ) && ( 0x49 == ((const U8*)s)[2] ) ) ? 3 : 0 )\ 1560 : ( ( ( ((const U8*)s)[0] & 0xBF ) == 'w' ) || ( ( ((const U8*)s)[0] & 0xBF ) == 'y' ) ) ?\ 1561 ( ( ( 0xAF == ((const U8*)s)[1] ) && ( 0x51 == ((const U8*)s)[2] ) ) ? 3 : 0 )\ 1562 : ( 0xAB == ((const U8*)s)[0] ) ? \ 1563 ( ( ( 0x70 == ((const U8*)s)[1] ) && ( ( ((const U8*)s)[2] & 0xBF ) == 'n' ) ) ? 3 : 0 )\ 1564 : ( 0xB4 == ((const U8*)s)[0] ) ? \ 1565 ( ( ( NATIVE_UTF8_TO_I8(((const U8*)s)[1]) & 0xFD ) == 0xAC ) ? \ 1566 ( ( ( 0xB4 == ((const U8*)s)[2] ) && ( 0x68 == ((const U8*)s)[3] ) ) ? 4 : 0 )\ 1567 : ( 0x58 == ((const U8*)s)[1] || 0x66 == ((const U8*)s)[1] ) ? \ 1568 ( ( 0xB1 == ((const U8*)s)[2] ) ? \ 1569 ( ( 0x43 == ((const U8*)s)[3] ) ? \ 1570 ( ( ( 0xB4 == ((const U8*)s)[4] ) && ( 0x68 == ((const U8*)s)[5] ) ) ? 6 : 4 )\ 1571 : 0 ) \ 1572 : ( ( 0xB4 == ((const U8*)s)[2] ) && ( 0x68 == ((const U8*)s)[3] ) ) ? 4 : 0 )\ 1573 : ( 0x68 == ((const U8*)s)[1] ) ? \ 1574 ( ( 0xAF == ((const U8*)s)[2] ) ? \ 1575 ( ( 0x49 == ((const U8*)s)[3] ) ? \ 1576 ( ( 0xAF == ((const U8*)s)[4] ) ? \ 1577 ( ( inRANGE_helper_(U8, ((const U8*)s)[5], 0x41, 0x42) ) ? 6 : 0 )\ 1578 : ( ( 0xB1 == ((const U8*)s)[4] ) && ( 0x43 == ((const U8*)s)[5] ) ) ? 6 : 0 )\ 1579 : 0 ) \ 1580 : ( ( 0xB1 == ((const U8*)s)[2] ) && ( 0x43 == ((const U8*)s)[3] ) ) ? 4 : 0 )\ 1581 : 0 ) \ 1582 : ( 0xB5 == ((const U8*)s)[0] ) ? \ 1583 ( ( 0x42 == ((const U8*)s)[1] ) ? \ 1584 ( ( ( 0xAF == ((const U8*)s)[2] ) && ( 0x62 == ((const U8*)s)[3] ) ) ? 4 : 0 )\ 1585 : ( 0x46 == ((const U8*)s)[1] ) ? \ 1586 ( ( 0xAF == ((const U8*)s)[2] ) ? \ 1587 ( ( 0x49 == ((const U8*)s)[3] ) ? \ 1588 ( ( 0xAF == ((const U8*)s)[4] ) ? \ 1589 ( ( inRANGE_helper_(U8, ((const U8*)s)[5], 0x41, 0x42) ) ? 6 : 0 )\ 1590 : ( ( 0xB1 == ((const U8*)s)[4] ) && ( 0x43 == ((const U8*)s)[5] ) ) ? 6 : 0 )\ 1591 : ( 0x62 == ((const U8*)s)[3] ) ? \ 1592 ( ( 0xAF == ((const U8*)s)[4] ) ? \ 1593 ( ( inRANGE_helper_(U8, ((const U8*)s)[5], 0x41, 0x42) ) ? 6 : 4 )\ 1594 : ( ( 0xB1 == ((const U8*)s)[4] ) && ( 0x43 == ((const U8*)s)[5] ) ) ? 6 : 4 )\ 1595 : 0 ) \ 1596 : ( ( 0xB1 == ((const U8*)s)[2] ) && ( 0x43 == ((const U8*)s)[3] ) ) ? 4 : 0 )\ 1597 : ( 0x4A == ((const U8*)s)[1] ) ? \ 1598 ( ( 0xB1 == ((const U8*)s)[2] ) ? \ 1599 ( ( 0x43 == ((const U8*)s)[3] ) ? \ 1600 ( ( ( 0xB4 == ((const U8*)s)[4] ) && ( 0x68 == ((const U8*)s)[5] ) ) ? 6 : 4 )\ 1601 : 0 ) \ 1602 : ( ( 0xB4 == ((const U8*)s)[2] ) && ( 0x68 == ((const U8*)s)[3] ) ) ? 4 : 0 )\ 1603 : ( ( ( 0x55 == ((const U8*)s)[1] ) && ( 0xB4 == ((const U8*)s)[2] ) ) && ( 0x68 == ((const U8*)s)[3] ) ) ? 4 : 0 )\ 1604 : ( 0xB8 == ((const U8*)s)[0] ) ? \ 1605 ( ( 0x52 == ((const U8*)s)[1] ) ? \ 1606 ( ( 0x46 == ((const U8*)s)[2] ) ? \ 1607 ( ( ( ( 0xB8 == ((const U8*)s)[3] ) && ( 0x53 == ((const U8*)s)[4] ) ) && ( 0x43 == ((const U8*)s)[5] ) ) ? 6 : 0 )\ 1608 : ( 0x63 == ((const U8*)s)[2] ) ? \ 1609 ( ( ( ( 0xB8 == ((const U8*)s)[3] ) && ( 0x52 == ((const U8*)s)[4] ) ) && ( ( ( NATIVE_UTF8_TO_I8(((const U8*)s)[5]) & 0xF7 ) == 0xA5 ) || ((const U8*)s)[5] == 0x52 || ((const U8*)s)[5] == 0x65 ) ) ? 6 : 0 )\ 1610 : ( ( ( ( 0x72 == ((const U8*)s)[2] ) && ( 0xB8 == ((const U8*)s)[3] ) ) && ( 0x52 == ((const U8*)s)[4] ) ) && ( 0x65 == ((const U8*)s)[5] ) ) ? 6 : 0 )\ 1611 : 0 ) \ 1612 : ( 0xBF == ((const U8*)s)[0] ) ? \ 1613 ( ( inRANGE_helper_(U8, ((const U8*)s)[1], 0x67, 0x68) ) ? \ 1614 ( ( ( ( inRANGE_helper_(U8, ((const U8*)s)[2], 0x41, 0x48) ) && ( 0xB4 == ((const U8*)s)[3] ) ) && ( 0x68 == ((const U8*)s)[4] ) ) ? 5 : 0 )\ 1615 : ( ( ( ( 0x6A == ((const U8*)s)[1] ) && ( ( ( NATIVE_UTF8_TO_I8(((const U8*)s)[2]) & 0xF8 ) == 0xA0 ) || ( ( NATIVE_UTF8_TO_I8(((const U8*)s)[2]) & 0xFB ) == 0xB0 ) || ((const U8*)s)[2] == 0x70 ) ) && ( 0xB4 == ((const U8*)s)[3] ) ) && ( 0x68 == ((const U8*)s)[4] ) ) ? 5 : 0 )\ 1616 : 0 ) 1617 1618 1619 /*** GENERATED CODE ***/ 1620 #define is_MULTI_CHAR_FOLD_utf8_safe_part2_(s,e) \ 1621 ( ( ( ((const U8*)s)[0] & 0xBF ) == 'a' ) ? \ 1622 ( ( ( 0xAB == ((const U8*)s)[1] ) && ( 0x72 == ((const U8*)s)[2] ) ) ? 3 : 0 )\ 1623 : ( ( ((const U8*)s)[0] & 0xBF ) == 'f' ) ? \ 1624 ( ( ( ((const U8*)s)[1] & 0xBF ) == 'f' ) ? \ 1625 ( ( ( ( ((const U8*)s)[2] & 0xBF ) == 'i' ) || ( ( ((const U8*)s)[2] & 0xBF ) == 'l' ) ) ? 3 : 2 )\ 1626 : ( ( ( ((const U8*)s)[1] & 0xBF ) == 'i' ) || ( ( ((const U8*)s)[1] & 0xBF ) == 'l' ) ) ? 2 : 0 )\ 1627 : ( ( ((const U8*)s)[0] & 0xBF ) == 'h' ) ? \ 1628 ( ( ( 0xB0 == ((const U8*)s)[1] ) && ( 0x58 == ((const U8*)s)[2] ) ) ? 3 : 0 )\ 1629 : ( ( ((const U8*)s)[0] & 0xBF ) == 'i' ) ? \ 1630 ( ( ( 0xAF == ((const U8*)s)[1] ) && ( 0x48 == ((const U8*)s)[2] ) ) ? 3 : 0 )\ 1631 : ( 0x8F == ((const U8*)s)[0] ) ? \ 1632 ( ( 0x73 == ((const U8*)s)[1] ) ? \ 1633 ( ( 0x8F == ((const U8*)s)[2] ) ? \ 1634 ( ( 0x73 == ((const U8*)s)[3] ) ? 4 : 0 ) \ 1635 : ( ( ((const U8*)s)[2] & 0xBE ) == 's' ) ? 3 : 0 ) \ 1636 : 0 ) \ 1637 : ( ( ((const U8*)s)[0] & 0xBF ) == 'j' ) ? \ 1638 ( ( ( 0xAF == ((const U8*)s)[1] ) && ( 0x53 == ((const U8*)s)[2] ) ) ? 3 : 0 )\ 1639 : ( ( ((const U8*)s)[0] & 0xBF ) == 's' ) ? \ 1640 ( ( 0x8F == ((const U8*)s)[1] ) ? \ 1641 ( ( 0x73 == ((const U8*)s)[2] ) ? 3 : 0 ) \ 1642 : ( ( ((const U8*)s)[1] & 0xBE ) == 's' ) ? 2 : 0 ) \ 1643 : ( ( ((const U8*)s)[0] & 0xBF ) == 't' ) ? \ 1644 ( ( ( 0xAF == ((const U8*)s)[1] ) && ( 0x49 == ((const U8*)s)[2] ) ) ? 3 : 0 )\ 1645 : ( ( ( ((const U8*)s)[0] & 0xBF ) == 'w' ) || ( ( ((const U8*)s)[0] & 0xBF ) == 'y' ) ) ?\ 1646 ( ( ( 0xAF == ((const U8*)s)[1] ) && ( 0x51 == ((const U8*)s)[2] ) ) ? 3 : 0 )\ 1647 : ( 0xAB == ((const U8*)s)[0] ) ? \ 1648 ( ( ( 0x70 == ((const U8*)s)[1] ) && ( ( ((const U8*)s)[2] & 0xBF ) == 'n' ) ) ? 3 : 0 )\ 1649 : ( 0xB4 == ((const U8*)s)[0] ) ? \ 1650 ( ( ( NATIVE_UTF8_TO_I8(((const U8*)s)[1]) & 0xFD ) == 0xAC ) ? \ 1651 ( ( ( 0xB4 == ((const U8*)s)[2] ) && ( 0x68 == ((const U8*)s)[3] ) ) ? 4 : 0 )\ 1652 : ( 0x58 == ((const U8*)s)[1] || 0x66 == ((const U8*)s)[1] ) ? \ 1653 ( ( 0xB1 == ((const U8*)s)[2] ) ? \ 1654 ( ( 0x43 == ((const U8*)s)[3] ) ? 4 : 0 ) \ 1655 : ( ( 0xB4 == ((const U8*)s)[2] ) && ( 0x68 == ((const U8*)s)[3] ) ) ? 4 : 0 )\ 1656 : ( ( ( 0x68 == ((const U8*)s)[1] ) && ( 0xB1 == ((const U8*)s)[2] ) ) && ( 0x43 == ((const U8*)s)[3] ) ) ? 4 : 0 )\ 1657 : ( 0xB5 == ((const U8*)s)[0] ) ? \ 1658 ( ( 0x42 == ((const U8*)s)[1] ) ? \ 1659 ( ( ( 0xAF == ((const U8*)s)[2] ) && ( 0x62 == ((const U8*)s)[3] ) ) ? 4 : 0 )\ 1660 : ( 0x46 == ((const U8*)s)[1] ) ? \ 1661 ( ( 0xAF == ((const U8*)s)[2] ) ? \ 1662 ( ( 0x62 == ((const U8*)s)[3] ) ? 4 : 0 ) \ 1663 : ( ( 0xB1 == ((const U8*)s)[2] ) && ( 0x43 == ((const U8*)s)[3] ) ) ? 4 : 0 )\ 1664 : ( 0x4A == ((const U8*)s)[1] ) ? \ 1665 ( ( 0xB1 == ((const U8*)s)[2] ) ? \ 1666 ( ( 0x43 == ((const U8*)s)[3] ) ? 4 : 0 ) \ 1667 : ( ( 0xB4 == ((const U8*)s)[2] ) && ( 0x68 == ((const U8*)s)[3] ) ) ? 4 : 0 )\ 1668 : ( ( ( 0x55 == ((const U8*)s)[1] ) && ( 0xB4 == ((const U8*)s)[2] ) ) && ( 0x68 == ((const U8*)s)[3] ) ) ? 4 : 0 )\ 1669 : ( 0xBF == ((const U8*)s)[0] ) ? \ 1670 ( ( inRANGE_helper_(U8, ((const U8*)s)[1], 0x67, 0x68) ) ? \ 1671 ( ( ( ( inRANGE_helper_(U8, ((const U8*)s)[2], 0x41, 0x48) ) && ( 0xB4 == ((const U8*)s)[3] ) ) && ( 0x68 == ((const U8*)s)[4] ) ) ? 5 : 0 )\ 1672 : ( ( ( ( 0x6A == ((const U8*)s)[1] ) && ( ( ( NATIVE_UTF8_TO_I8(((const U8*)s)[2]) & 0xF8 ) == 0xA0 ) || ( ( NATIVE_UTF8_TO_I8(((const U8*)s)[2]) & 0xFB ) == 0xB0 ) || ((const U8*)s)[2] == 0x70 ) ) && ( 0xB4 == ((const U8*)s)[3] ) ) && ( 0x68 == ((const U8*)s)[4] ) ) ? 5 : 0 )\ 1673 : 0 ) 1674 1675 1676 /*** GENERATED CODE ***/ 1677 #define is_MULTI_CHAR_FOLD_utf8_safe_part3_(s,e) \ 1678 ( ((e)-(s) > 3) ? \ 1679 ( ( ( ((const U8*)s)[0] & 0xBF ) == 'a' ) ? \ 1680 ( ( ( 0xAB == ((const U8*)s)[1] ) && ( 0x72 == ((const U8*)s)[2] ) ) ? 3 : 0 )\ 1681 : ( ( ((const U8*)s)[0] & 0xBF ) == 'f' ) ? \ 1682 ( ( ( ((const U8*)s)[1] & 0xBF ) == 'f' ) ? \ 1683 ( ( ( ( ((const U8*)s)[2] & 0xBF ) == 'i' ) || ( ( ((const U8*)s)[2] & 0xBF ) == 'l' ) ) ? 3 : 2 )\ 1684 : ( ( ( ((const U8*)s)[1] & 0xBF ) == 'i' ) || ( ( ((const U8*)s)[1] & 0xBF ) == 'l' ) ) ? 2 : 0 )\ 1685 : ( ( ((const U8*)s)[0] & 0xBF ) == 'h' ) ? \ 1686 ( ( ( 0xB0 == ((const U8*)s)[1] ) && ( 0x58 == ((const U8*)s)[2] ) ) ? 3 : 0 )\ 1687 : ( ( ((const U8*)s)[0] & 0xBF ) == 'i' ) ? \ 1688 ( ( ( 0xAF == ((const U8*)s)[1] ) && ( 0x48 == ((const U8*)s)[2] ) ) ? 3 : 0 )\ 1689 : ( 0x8F == ((const U8*)s)[0] ) ? \ 1690 ( ( 0x73 == ((const U8*)s)[1] ) ? \ 1691 ( ( 0x8F == ((const U8*)s)[2] ) ? \ 1692 ( ( 0x73 == ((const U8*)s)[3] ) ? 4 : 0 ) \ 1693 : ( ( ((const U8*)s)[2] & 0xBE ) == 's' ) ? 3 : 0 ) \ 1694 : 0 ) \ 1695 : ( ( ((const U8*)s)[0] & 0xBF ) == 'j' ) ? \ 1696 ( ( ( 0xAF == ((const U8*)s)[1] ) && ( 0x53 == ((const U8*)s)[2] ) ) ? 3 : 0 )\ 1697 : ( ( ((const U8*)s)[0] & 0xBF ) == 's' ) ? \ 1698 ( ( 0x8F == ((const U8*)s)[1] ) ? \ 1699 ( ( 0x73 == ((const U8*)s)[2] ) ? 3 : 0 ) \ 1700 : ( ( ((const U8*)s)[1] & 0xBE ) == 's' ) ? 2 : 0 ) \ 1701 : ( ( ((const U8*)s)[0] & 0xBF ) == 't' ) ? \ 1702 ( ( ( 0xAF == ((const U8*)s)[1] ) && ( 0x49 == ((const U8*)s)[2] ) ) ? 3 : 0 )\ 1703 : ( ( ( ((const U8*)s)[0] & 0xBF ) == 'w' ) || ( ( ((const U8*)s)[0] & 0xBF ) == 'y' ) ) ?\ 1704 ( ( ( 0xAF == ((const U8*)s)[1] ) && ( 0x51 == ((const U8*)s)[2] ) ) ? 3 : 0 )\ 1705 : ( 0xAB == ((const U8*)s)[0] ) ? \ 1706 ( ( ( 0x70 == ((const U8*)s)[1] ) && ( ( ((const U8*)s)[2] & 0xBF ) == 'n' ) ) ? 3 : 0 )\ 1707 : ( 0xB4 == ((const U8*)s)[0] ) ? \ 1708 ( ( ( NATIVE_UTF8_TO_I8(((const U8*)s)[1]) & 0xFD ) == 0xAC ) ? \ 1709 ( ( ( 0xB4 == ((const U8*)s)[2] ) && ( 0x68 == ((const U8*)s)[3] ) ) ? 4 : 0 )\ 1710 : ( 0x58 == ((const U8*)s)[1] || 0x66 == ((const U8*)s)[1] ) ? \ 1711 ( ( 0xB1 == ((const U8*)s)[2] ) ? \ 1712 ( ( 0x43 == ((const U8*)s)[3] ) ? 4 : 0 ) \ 1713 : ( ( 0xB4 == ((const U8*)s)[2] ) && ( 0x68 == ((const U8*)s)[3] ) ) ? 4 : 0 )\ 1714 : ( ( ( 0x68 == ((const U8*)s)[1] ) && ( 0xB1 == ((const U8*)s)[2] ) ) && ( 0x43 == ((const U8*)s)[3] ) ) ? 4 : 0 )\ 1715 : ( 0xB5 == ((const U8*)s)[0] ) ? \ 1716 ( ( 0x42 == ((const U8*)s)[1] ) ? \ 1717 ( ( ( 0xAF == ((const U8*)s)[2] ) && ( 0x62 == ((const U8*)s)[3] ) ) ? 4 : 0 )\ 1718 : ( 0x46 == ((const U8*)s)[1] ) ? \ 1719 ( ( 0xAF == ((const U8*)s)[2] ) ? \ 1720 ( ( 0x62 == ((const U8*)s)[3] ) ? 4 : 0 ) \ 1721 : ( ( 0xB1 == ((const U8*)s)[2] ) && ( 0x43 == ((const U8*)s)[3] ) ) ? 4 : 0 )\ 1722 : ( 0x4A == ((const U8*)s)[1] ) ? \ 1723 ( ( 0xB1 == ((const U8*)s)[2] ) ? \ 1724 ( ( 0x43 == ((const U8*)s)[3] ) ? 4 : 0 ) \ 1725 : ( ( 0xB4 == ((const U8*)s)[2] ) && ( 0x68 == ((const U8*)s)[3] ) ) ? 4 : 0 )\ 1726 : ( ( ( 0x55 == ((const U8*)s)[1] ) && ( 0xB4 == ((const U8*)s)[2] ) ) && ( 0x68 == ((const U8*)s)[3] ) ) ? 4 : 0 )\ 1727 : 0 ) \ 1728 : ((e)-(s) > 2) ? \ 1729 ( ( ( ((const U8*)s)[0] & 0xBF ) == 'a' ) ? \ 1730 ( ( ( 0xAB == ((const U8*)s)[1] ) && ( 0x72 == ((const U8*)s)[2] ) ) ? 3 : 0 )\ 1731 : ( ( ((const U8*)s)[0] & 0xBF ) == 'f' ) ? \ 1732 ( ( ( ((const U8*)s)[1] & 0xBF ) == 'f' ) ? \ 1733 ( ( ( ( ((const U8*)s)[2] & 0xBF ) == 'i' ) || ( ( ((const U8*)s)[2] & 0xBF ) == 'l' ) ) ? 3 : 2 )\ 1734 : ( ( ( ((const U8*)s)[1] & 0xBF ) == 'i' ) || ( ( ((const U8*)s)[1] & 0xBF ) == 'l' ) ) ? 2 : 0 )\ 1735 : ( ( ((const U8*)s)[0] & 0xBF ) == 'h' ) ? \ 1736 ( ( ( 0xB0 == ((const U8*)s)[1] ) && ( 0x58 == ((const U8*)s)[2] ) ) ? 3 : 0 )\ 1737 : ( ( ((const U8*)s)[0] & 0xBF ) == 'i' ) ? \ 1738 ( ( ( 0xAF == ((const U8*)s)[1] ) && ( 0x48 == ((const U8*)s)[2] ) ) ? 3 : 0 )\ 1739 : ( 0x8F == ((const U8*)s)[0] ) ? \ 1740 ( ( ( 0x73 == ((const U8*)s)[1] ) && ( ( ((const U8*)s)[2] & 0xBE ) == 's' ) ) ? 3 : 0 )\ 1741 : ( ( ((const U8*)s)[0] & 0xBF ) == 'j' ) ? \ 1742 ( ( ( 0xAF == ((const U8*)s)[1] ) && ( 0x53 == ((const U8*)s)[2] ) ) ? 3 : 0 )\ 1743 : ( ( ((const U8*)s)[0] & 0xBF ) == 's' ) ? \ 1744 ( ( 0x8F == ((const U8*)s)[1] ) ? \ 1745 ( ( 0x73 == ((const U8*)s)[2] ) ? 3 : 0 ) \ 1746 : ( ( ((const U8*)s)[1] & 0xBE ) == 's' ) ? 2 : 0 ) \ 1747 : ( ( ((const U8*)s)[0] & 0xBF ) == 't' ) ? \ 1748 ( ( ( 0xAF == ((const U8*)s)[1] ) && ( 0x49 == ((const U8*)s)[2] ) ) ? 3 : 0 )\ 1749 : ( ( ( ((const U8*)s)[0] & 0xBF ) == 'w' ) || ( ( ((const U8*)s)[0] & 0xBF ) == 'y' ) ) ?\ 1750 ( ( ( 0xAF == ((const U8*)s)[1] ) && ( 0x51 == ((const U8*)s)[2] ) ) ? 3 : 0 )\ 1751 : ( ( ( 0xAB == ((const U8*)s)[0] ) && ( 0x70 == ((const U8*)s)[1] ) ) && ( ( ((const U8*)s)[2] & 0xBF ) == 'n' ) ) ? 3 : 0 )\ 1752 : ((e)-(s) > 1) ? \ 1753 ( ( ( ((const U8*)s)[0] & 0xBF ) == 'f' ) ? \ 1754 ( ( ( ( ((const U8*)s)[1] & 0xBF ) == 'f' ) || ( ( ((const U8*)s)[1] & 0xBF ) == 'i' ) || ( ( ((const U8*)s)[1] & 0xBF ) == 'l' ) ) ? 2 : 0 )\ 1755 : ( ( ( ((const U8*)s)[0] & 0xBF ) == 's' ) && ( ( ((const U8*)s)[1] & 0xBE ) == 's' ) ) ? 2 : 0 )\ 1756 : 0 ) 1757 1758 1759 /*** GENERATED CODE ***/ 1760 #define is_MULTI_CHAR_FOLD_utf8_safe(s,e) \ 1761 ( ((e)-(s) > 5) ? \ 1762 ( ( ( ((const U8*)s)[0] & 0xBF ) == 'a' ) ? \ 1763 ( ( ( 0xAB == ((const U8*)s)[1] ) && ( 0x72 == ((const U8*)s)[2] ) ) ? 3 : 0 )\ 1764 : ( ( ((const U8*)s)[0] & 0xBF ) == 'f' ) ? \ 1765 ( ( ( ((const U8*)s)[1] & 0xBF ) == 'f' ) ? \ 1766 ( ( ( ( ((const U8*)s)[2] & 0xBF ) == 'i' ) || ( ( ((const U8*)s)[2] & 0xBF ) == 'l' ) ) ? 3 : 2 )\ 1767 : ( ( ( ((const U8*)s)[1] & 0xBF ) == 'i' ) || ( ( ((const U8*)s)[1] & 0xBF ) == 'l' ) ) ? 2 : 0 )\ 1768 : ( ( ((const U8*)s)[0] & 0xBF ) == 'h' ) ? \ 1769 ( ( ( 0xB0 == ((const U8*)s)[1] ) && ( 0x58 == ((const U8*)s)[2] ) ) ? 3 : 0 )\ 1770 : ( ( ((const U8*)s)[0] & 0xBF ) == 'i' ) ? is_MULTI_CHAR_FOLD_utf8_safe_part0_(s,e) : is_MULTI_CHAR_FOLD_utf8_safe_part1_(s,e) )\ 1771 : ((e)-(s) > 4) ? is_MULTI_CHAR_FOLD_utf8_safe_part2_(s,e) : is_MULTI_CHAR_FOLD_utf8_safe_part3_(s,e) ) 1772 1773 /*** GENERATED CODE ***/ 1774 #define what_MULTI_CHAR_FOLD_utf8_safe_part0_(s,e) \ 1775 ( ( 0x52 == ((const U8*)s)[1] ) ? \ 1776 ( ( 0x46 == ((const U8*)s)[2] ) ? \ 1777 ( ( ( ( 0xB8 == ((const U8*)s)[3] ) && ( 0x53 == ((const U8*)s)[4] ) ) && ( 0x43 == ((const U8*)s)[5] ) ) ? 0x587 : 0 )\ 1778 : ( 0x63 == ((const U8*)s)[2] ) ? \ 1779 ( ( ( 0xB8 == ((const U8*)s)[3] ) && ( 0x52 == ((const U8*)s)[4] ) ) ? ( ( 0x46 == ((const U8*)s)[5] ) ? 0xFB14\ 1780 : ( 0x52 == ((const U8*)s)[5] ) ? 0xFB15 \ 1781 : ( 0x54 == ((const U8*)s)[5] ) ? 0xFB17 \ 1782 : ( 0x65 == ((const U8*)s)[5] ) ? 0xFB13 : 0 ) : 0 )\ 1783 : ( ( ( ( 0x72 == ((const U8*)s)[2] ) && ( 0xB8 == ((const U8*)s)[3] ) ) && ( 0x52 == ((const U8*)s)[4] ) ) && ( 0x65 == ((const U8*)s)[5] ) ) ? 0xFB16 : 0 )\ 1784 : 0 ) 1785 1786 1787 /*** GENERATED CODE ***/ 1788 #define what_MULTI_CHAR_FOLD_utf8_safe_part1_(s,e) \ 1789 ( ( 0xBF == ((const U8*)s)[0] ) ? \ 1790 ( ( 0x67 == ((const U8*)s)[1] ) ? \ 1791 ( ( 0x41 == ((const U8*)s)[2] ) ? \ 1792 ( ( ( 0xB4 == ((const U8*)s)[3] ) && ( 0x68 == ((const U8*)s)[4] ) ) ? 0x1F80 : 0 )\ 1793 : ( 0x42 == ((const U8*)s)[2] ) ? \ 1794 ( ( ( 0xB4 == ((const U8*)s)[3] ) && ( 0x68 == ((const U8*)s)[4] ) ) ? 0x1F81 : 0 )\ 1795 : ( 0x43 == ((const U8*)s)[2] ) ? \ 1796 ( ( ( 0xB4 == ((const U8*)s)[3] ) && ( 0x68 == ((const U8*)s)[4] ) ) ? 0x1F82 : 0 )\ 1797 : ( 0x44 == ((const U8*)s)[2] ) ? \ 1798 ( ( ( 0xB4 == ((const U8*)s)[3] ) && ( 0x68 == ((const U8*)s)[4] ) ) ? 0x1F83 : 0 )\ 1799 : ( 0x45 == ((const U8*)s)[2] ) ? \ 1800 ( ( ( 0xB4 == ((const U8*)s)[3] ) && ( 0x68 == ((const U8*)s)[4] ) ) ? 0x1F84 : 0 )\ 1801 : ( 0x46 == ((const U8*)s)[2] ) ? \ 1802 ( ( ( 0xB4 == ((const U8*)s)[3] ) && ( 0x68 == ((const U8*)s)[4] ) ) ? 0x1F85 : 0 )\ 1803 : ( 0x47 == ((const U8*)s)[2] ) ? \ 1804 ( ( ( 0xB4 == ((const U8*)s)[3] ) && ( 0x68 == ((const U8*)s)[4] ) ) ? 0x1F86 : 0 )\ 1805 : ( ( ( 0x48 == ((const U8*)s)[2] ) && ( 0xB4 == ((const U8*)s)[3] ) ) && ( 0x68 == ((const U8*)s)[4] ) ) ? 0x1F87 : 0 )\ 1806 : ( 0x68 == ((const U8*)s)[1] ) ? \ 1807 ( ( 0x41 == ((const U8*)s)[2] ) ? \ 1808 ( ( ( 0xB4 == ((const U8*)s)[3] ) && ( 0x68 == ((const U8*)s)[4] ) ) ? 0x1F90 : 0 )\ 1809 : ( 0x42 == ((const U8*)s)[2] ) ? \ 1810 ( ( ( 0xB4 == ((const U8*)s)[3] ) && ( 0x68 == ((const U8*)s)[4] ) ) ? 0x1F91 : 0 )\ 1811 : ( 0x43 == ((const U8*)s)[2] ) ? \ 1812 ( ( ( 0xB4 == ((const U8*)s)[3] ) && ( 0x68 == ((const U8*)s)[4] ) ) ? 0x1F92 : 0 )\ 1813 : ( 0x44 == ((const U8*)s)[2] ) ? \ 1814 ( ( ( 0xB4 == ((const U8*)s)[3] ) && ( 0x68 == ((const U8*)s)[4] ) ) ? 0x1F93 : 0 )\ 1815 : ( 0x45 == ((const U8*)s)[2] ) ? \ 1816 ( ( ( 0xB4 == ((const U8*)s)[3] ) && ( 0x68 == ((const U8*)s)[4] ) ) ? 0x1F94 : 0 )\ 1817 : ( 0x46 == ((const U8*)s)[2] ) ? \ 1818 ( ( ( 0xB4 == ((const U8*)s)[3] ) && ( 0x68 == ((const U8*)s)[4] ) ) ? 0x1F95 : 0 )\ 1819 : ( 0x47 == ((const U8*)s)[2] ) ? \ 1820 ( ( ( 0xB4 == ((const U8*)s)[3] ) && ( 0x68 == ((const U8*)s)[4] ) ) ? 0x1F96 : 0 )\ 1821 : ( ( ( 0x48 == ((const U8*)s)[2] ) && ( 0xB4 == ((const U8*)s)[3] ) ) && ( 0x68 == ((const U8*)s)[4] ) ) ? 0x1F97 : 0 )\ 1822 : ( 0x6A == ((const U8*)s)[1] ) ? \ 1823 ( ( 0x41 == ((const U8*)s)[2] ) ? \ 1824 ( ( ( 0xB4 == ((const U8*)s)[3] ) && ( 0x68 == ((const U8*)s)[4] ) ) ? 0x1FA0 : 0 )\ 1825 : ( 0x42 == ((const U8*)s)[2] ) ? \ 1826 ( ( ( 0xB4 == ((const U8*)s)[3] ) && ( 0x68 == ((const U8*)s)[4] ) ) ? 0x1FA1 : 0 )\ 1827 : ( 0x43 == ((const U8*)s)[2] ) ? \ 1828 ( ( ( 0xB4 == ((const U8*)s)[3] ) && ( 0x68 == ((const U8*)s)[4] ) ) ? 0x1FA2 : 0 )\ 1829 : ( 0x44 == ((const U8*)s)[2] ) ? \ 1830 ( ( ( 0xB4 == ((const U8*)s)[3] ) && ( 0x68 == ((const U8*)s)[4] ) ) ? 0x1FA3 : 0 )\ 1831 : ( 0x45 == ((const U8*)s)[2] ) ? \ 1832 ( ( ( 0xB4 == ((const U8*)s)[3] ) && ( 0x68 == ((const U8*)s)[4] ) ) ? 0x1FA4 : 0 )\ 1833 : ( 0x46 == ((const U8*)s)[2] ) ? \ 1834 ( ( ( 0xB4 == ((const U8*)s)[3] ) && ( 0x68 == ((const U8*)s)[4] ) ) ? 0x1FA5 : 0 )\ 1835 : ( 0x47 == ((const U8*)s)[2] ) ? \ 1836 ( ( ( 0xB4 == ((const U8*)s)[3] ) && ( 0x68 == ((const U8*)s)[4] ) ) ? 0x1FA6 : 0 )\ 1837 : ( 0x48 == ((const U8*)s)[2] ) ? \ 1838 ( ( ( 0xB4 == ((const U8*)s)[3] ) && ( 0x68 == ((const U8*)s)[4] ) ) ? 0x1FA7 : 0 )\ 1839 : ( 0x57 == ((const U8*)s)[2] ) ? \ 1840 ( ( ( 0xB4 == ((const U8*)s)[3] ) && ( 0x68 == ((const U8*)s)[4] ) ) ? 0x1FB2 : 0 )\ 1841 : ( 0x63 == ((const U8*)s)[2] ) ? \ 1842 ( ( ( 0xB4 == ((const U8*)s)[3] ) && ( 0x68 == ((const U8*)s)[4] ) ) ? 0x1FC2 : 0 )\ 1843 : ( ( ( 0x70 == ((const U8*)s)[2] ) && ( 0xB4 == ((const U8*)s)[3] ) ) && ( 0x68 == ((const U8*)s)[4] ) ) ? 0x1FF2 : 0 )\ 1844 : 0 ) \ 1845 : 0 ) 1846 1847 1848 /*** GENERATED CODE ***/ 1849 #define what_MULTI_CHAR_FOLD_utf8_safe_part2_(s,e) \ 1850 ( ( ( ((const U8*)s)[1] & 0xBF ) == 'f' ) ? \ 1851 ( ( ( ((const U8*)s)[2] & 0xBF ) == 'i' ) ? 0xFB03 \ 1852 : ( ( ((const U8*)s)[2] & 0xBF ) == 'l' ) ? 0xFB04 : 0xFB00 ) \ 1853 : ( ( ((const U8*)s)[1] & 0xBF ) == 'i' ) ? 0xFB01 \ 1854 : ( ( ((const U8*)s)[1] & 0xBF ) == 'l' ) ? 0xFB02 : 0 ) 1855 1856 1857 /*** GENERATED CODE ***/ 1858 #define what_MULTI_CHAR_FOLD_utf8_safe_part3_(s,e) \ 1859 ( ( ( ((const U8*)s)[0] & 0xBF ) == 'h' ) ? \ 1860 ( ( ( 0xB0 == ((const U8*)s)[1] ) && ( 0x58 == ((const U8*)s)[2] ) ) ? 0x1E96 : 0 )\ 1861 : ( ( ((const U8*)s)[0] & 0xBF ) == 'i' ) ? \ 1862 ( ( ( 0xAF == ((const U8*)s)[1] ) && ( 0x48 == ((const U8*)s)[2] ) ) ? 0x130 : 0 )\ 1863 : ( 0x8F == ((const U8*)s)[0] ) ? \ 1864 ( ( 0x73 == ((const U8*)s)[1] ) ? \ 1865 ( ( 0x8F == ((const U8*)s)[2] ) ? \ 1866 ( ( 0x73 == ((const U8*)s)[3] ) ? 0x59 : 0 ) \ 1867 : ( ( ((const U8*)s)[2] & 0xBF ) == 's' ) ? 0x59 \ 1868 : ( ( ((const U8*)s)[2] & 0xBF ) == 't' ) ? 0xFB05 : 0 ) \ 1869 : 0 ) \ 1870 : ( ( ((const U8*)s)[0] & 0xBF ) == 'j' ) ? \ 1871 ( ( ( 0xAF == ((const U8*)s)[1] ) && ( 0x53 == ((const U8*)s)[2] ) ) ? 0x1F0 : 0 )\ 1872 : ( ( ((const U8*)s)[0] & 0xBF ) == 's' ) ? \ 1873 ( ( 0x8F == ((const U8*)s)[1] ) ? \ 1874 ( ( 0x73 == ((const U8*)s)[2] ) ? 0x59 : 0 ) \ 1875 : ( ( ((const U8*)s)[1] & 0xBF ) == 's' ) ? 0x59 \ 1876 : ( ( ((const U8*)s)[1] & 0xBF ) == 't' ) ? 0xFB05 : 0 ) \ 1877 : ( ( ((const U8*)s)[0] & 0xBF ) == 't' ) ? \ 1878 ( ( ( 0xAF == ((const U8*)s)[1] ) && ( 0x49 == ((const U8*)s)[2] ) ) ? 0x1E97 : 0 )\ 1879 : ( ( ((const U8*)s)[0] & 0xBF ) == 'w' ) ? \ 1880 ( ( ( 0xAF == ((const U8*)s)[1] ) && ( 0x51 == ((const U8*)s)[2] ) ) ? 0x1E98 : 0 )\ 1881 : ( ( ((const U8*)s)[0] & 0xBF ) == 'y' ) ? \ 1882 ( ( ( 0xAF == ((const U8*)s)[1] ) && ( 0x51 == ((const U8*)s)[2] ) ) ? 0x1E99 : 0 )\ 1883 : ( 0xAB == ((const U8*)s)[0] ) ? \ 1884 ( ( ( 0x70 == ((const U8*)s)[1] ) && ( ( ((const U8*)s)[2] & 0xBF ) == 'n' ) ) ? 0x149 : 0 )\ 1885 : ( 0xB4 == ((const U8*)s)[0] ) ? \ 1886 ( ( 0x53 == ((const U8*)s)[1] ) ? \ 1887 ( ( ( 0xB4 == ((const U8*)s)[2] ) && ( 0x68 == ((const U8*)s)[3] ) ) ? 0x1FB4 : 0 )\ 1888 : ( 0x55 == ((const U8*)s)[1] ) ? \ 1889 ( ( ( 0xB4 == ((const U8*)s)[2] ) && ( 0x68 == ((const U8*)s)[3] ) ) ? 0x1FC4 : 0 )\ 1890 : ( 0x58 == ((const U8*)s)[1] ) ? \ 1891 ( ( 0xB1 == ((const U8*)s)[2] ) ? \ 1892 ( ( 0x43 == ((const U8*)s)[3] ) ? \ 1893 ( ( ( 0xB4 == ((const U8*)s)[4] ) && ( 0x68 == ((const U8*)s)[5] ) ) ? 0x1FB7 : 0x1FB6 )\ 1894 : 0 ) \ 1895 : ( ( 0xB4 == ((const U8*)s)[2] ) && ( 0x68 == ((const U8*)s)[3] ) ) ? 0x1FB3 : 0 )\ 1896 : ( 0x66 == ((const U8*)s)[1] ) ? \ 1897 ( ( 0xB1 == ((const U8*)s)[2] ) ? \ 1898 ( ( 0x43 == ((const U8*)s)[3] ) ? \ 1899 ( ( ( 0xB4 == ((const U8*)s)[4] ) && ( 0x68 == ((const U8*)s)[5] ) ) ? 0x1FC7 : 0x1FC6 )\ 1900 : 0 ) \ 1901 : ( ( 0xB4 == ((const U8*)s)[2] ) && ( 0x68 == ((const U8*)s)[3] ) ) ? 0x1FC3 : 0 )\ 1902 : ( 0x68 == ((const U8*)s)[1] ) ? \ 1903 ( ( 0xAF == ((const U8*)s)[2] ) ? \ 1904 ( ( 0x49 == ((const U8*)s)[3] ) ? \ 1905 ( ( 0xAF == ((const U8*)s)[4] ) ? \ 1906 ( ( 0x41 == ((const U8*)s)[5] ) ? 0x1FD2 \ 1907 : ( 0x42 == ((const U8*)s)[5] ) ? 0x390 : 0 ) \ 1908 : ( ( 0xB1 == ((const U8*)s)[4] ) && ( 0x43 == ((const U8*)s)[5] ) ) ? 0x1FD7 : 0 )\ 1909 : 0 ) \ 1910 : ( ( 0xB1 == ((const U8*)s)[2] ) && ( 0x43 == ((const U8*)s)[3] ) ) ? 0x1FD6 : 0 )\ 1911 : 0 ) \ 1912 : ( 0xB5 == ((const U8*)s)[0] ) ? \ 1913 ( ( 0x42 == ((const U8*)s)[1] ) ? \ 1914 ( ( ( 0xAF == ((const U8*)s)[2] ) && ( 0x62 == ((const U8*)s)[3] ) ) ? 0x1FE4 : 0 )\ 1915 : ( 0x46 == ((const U8*)s)[1] ) ? \ 1916 ( ( 0xAF == ((const U8*)s)[2] ) ? \ 1917 ( ( 0x49 == ((const U8*)s)[3] ) ? \ 1918 ( ( 0xAF == ((const U8*)s)[4] ) ? \ 1919 ( ( 0x41 == ((const U8*)s)[5] ) ? 0x1FE2 \ 1920 : ( 0x42 == ((const U8*)s)[5] ) ? 0x3B0 : 0 ) \ 1921 : ( ( 0xB1 == ((const U8*)s)[4] ) && ( 0x43 == ((const U8*)s)[5] ) ) ? 0x1FE7 : 0 )\ 1922 : ( 0x62 == ((const U8*)s)[3] ) ? \ 1923 ( ( 0xAF == ((const U8*)s)[4] ) ? \ 1924 ( ( 0x41 == ((const U8*)s)[5] ) ? 0x1F52 \ 1925 : ( 0x42 == ((const U8*)s)[5] ) ? 0x1F54 : 0x1F50 ) \ 1926 : ( ( 0xB1 == ((const U8*)s)[4] ) && ( 0x43 == ((const U8*)s)[5] ) ) ? 0x1F56 : 0x1F50 )\ 1927 : 0 ) \ 1928 : ( ( 0xB1 == ((const U8*)s)[2] ) && ( 0x43 == ((const U8*)s)[3] ) ) ? 0x1FE6 : 0 )\ 1929 : ( 0x4A == ((const U8*)s)[1] ) ? \ 1930 ( ( 0xB1 == ((const U8*)s)[2] ) ? \ 1931 ( ( 0x43 == ((const U8*)s)[3] ) ? \ 1932 ( ( ( 0xB4 == ((const U8*)s)[4] ) && ( 0x68 == ((const U8*)s)[5] ) ) ? 0x1FF7 : 0x1FF6 )\ 1933 : 0 ) \ 1934 : ( ( 0xB4 == ((const U8*)s)[2] ) && ( 0x68 == ((const U8*)s)[3] ) ) ? 0x1FF3 : 0 )\ 1935 : ( ( ( 0x55 == ((const U8*)s)[1] ) && ( 0xB4 == ((const U8*)s)[2] ) ) && ( 0x68 == ((const U8*)s)[3] ) ) ? 0x1FF4 : 0 )\ 1936 : ( 0xB8 == ((const U8*)s)[0] ) ? what_MULTI_CHAR_FOLD_utf8_safe_part0_(s,e) : what_MULTI_CHAR_FOLD_utf8_safe_part1_(s,e) ) 1937 1938 1939 /*** GENERATED CODE ***/ 1940 #define what_MULTI_CHAR_FOLD_utf8_safe_part4_(s,e) \ 1941 ( ( 0x42 == ((const U8*)s)[1] ) ? \ 1942 ( ( ( 0xAF == ((const U8*)s)[2] ) && ( 0x62 == ((const U8*)s)[3] ) ) ? 0x1FE4 : 0 )\ 1943 : ( 0x46 == ((const U8*)s)[1] ) ? \ 1944 ( ( 0xAF == ((const U8*)s)[2] ) ? \ 1945 ( ( 0x62 == ((const U8*)s)[3] ) ? 0x1F50 : 0 ) \ 1946 : ( ( 0xB1 == ((const U8*)s)[2] ) && ( 0x43 == ((const U8*)s)[3] ) ) ? 0x1FE6 : 0 )\ 1947 : ( 0x4A == ((const U8*)s)[1] ) ? \ 1948 ( ( 0xB1 == ((const U8*)s)[2] ) ? \ 1949 ( ( 0x43 == ((const U8*)s)[3] ) ? 0x1FF6 : 0 ) \ 1950 : ( ( 0xB4 == ((const U8*)s)[2] ) && ( 0x68 == ((const U8*)s)[3] ) ) ? 0x1FF3 : 0 )\ 1951 : ( ( ( 0x55 == ((const U8*)s)[1] ) && ( 0xB4 == ((const U8*)s)[2] ) ) && ( 0x68 == ((const U8*)s)[3] ) ) ? 0x1FF4 : 0 ) 1952 1953 1954 /*** GENERATED CODE ***/ 1955 #define what_MULTI_CHAR_FOLD_utf8_safe_part5_(s,e) \ 1956 ( ( 0xBF == ((const U8*)s)[0] ) ? \ 1957 ( ( 0x67 == ((const U8*)s)[1] ) ? \ 1958 ( ( 0x41 == ((const U8*)s)[2] ) ? \ 1959 ( ( ( 0xB4 == ((const U8*)s)[3] ) && ( 0x68 == ((const U8*)s)[4] ) ) ? 0x1F80 : 0 )\ 1960 : ( 0x42 == ((const U8*)s)[2] ) ? \ 1961 ( ( ( 0xB4 == ((const U8*)s)[3] ) && ( 0x68 == ((const U8*)s)[4] ) ) ? 0x1F81 : 0 )\ 1962 : ( 0x43 == ((const U8*)s)[2] ) ? \ 1963 ( ( ( 0xB4 == ((const U8*)s)[3] ) && ( 0x68 == ((const U8*)s)[4] ) ) ? 0x1F82 : 0 )\ 1964 : ( 0x44 == ((const U8*)s)[2] ) ? \ 1965 ( ( ( 0xB4 == ((const U8*)s)[3] ) && ( 0x68 == ((const U8*)s)[4] ) ) ? 0x1F83 : 0 )\ 1966 : ( 0x45 == ((const U8*)s)[2] ) ? \ 1967 ( ( ( 0xB4 == ((const U8*)s)[3] ) && ( 0x68 == ((const U8*)s)[4] ) ) ? 0x1F84 : 0 )\ 1968 : ( 0x46 == ((const U8*)s)[2] ) ? \ 1969 ( ( ( 0xB4 == ((const U8*)s)[3] ) && ( 0x68 == ((const U8*)s)[4] ) ) ? 0x1F85 : 0 )\ 1970 : ( 0x47 == ((const U8*)s)[2] ) ? \ 1971 ( ( ( 0xB4 == ((const U8*)s)[3] ) && ( 0x68 == ((const U8*)s)[4] ) ) ? 0x1F86 : 0 )\ 1972 : ( ( ( 0x48 == ((const U8*)s)[2] ) && ( 0xB4 == ((const U8*)s)[3] ) ) && ( 0x68 == ((const U8*)s)[4] ) ) ? 0x1F87 : 0 )\ 1973 : ( 0x68 == ((const U8*)s)[1] ) ? \ 1974 ( ( 0x41 == ((const U8*)s)[2] ) ? \ 1975 ( ( ( 0xB4 == ((const U8*)s)[3] ) && ( 0x68 == ((const U8*)s)[4] ) ) ? 0x1F90 : 0 )\ 1976 : ( 0x42 == ((const U8*)s)[2] ) ? \ 1977 ( ( ( 0xB4 == ((const U8*)s)[3] ) && ( 0x68 == ((const U8*)s)[4] ) ) ? 0x1F91 : 0 )\ 1978 : ( 0x43 == ((const U8*)s)[2] ) ? \ 1979 ( ( ( 0xB4 == ((const U8*)s)[3] ) && ( 0x68 == ((const U8*)s)[4] ) ) ? 0x1F92 : 0 )\ 1980 : ( 0x44 == ((const U8*)s)[2] ) ? \ 1981 ( ( ( 0xB4 == ((const U8*)s)[3] ) && ( 0x68 == ((const U8*)s)[4] ) ) ? 0x1F93 : 0 )\ 1982 : ( 0x45 == ((const U8*)s)[2] ) ? \ 1983 ( ( ( 0xB4 == ((const U8*)s)[3] ) && ( 0x68 == ((const U8*)s)[4] ) ) ? 0x1F94 : 0 )\ 1984 : ( 0x46 == ((const U8*)s)[2] ) ? \ 1985 ( ( ( 0xB4 == ((const U8*)s)[3] ) && ( 0x68 == ((const U8*)s)[4] ) ) ? 0x1F95 : 0 )\ 1986 : ( 0x47 == ((const U8*)s)[2] ) ? \ 1987 ( ( ( 0xB4 == ((const U8*)s)[3] ) && ( 0x68 == ((const U8*)s)[4] ) ) ? 0x1F96 : 0 )\ 1988 : ( ( ( 0x48 == ((const U8*)s)[2] ) && ( 0xB4 == ((const U8*)s)[3] ) ) && ( 0x68 == ((const U8*)s)[4] ) ) ? 0x1F97 : 0 )\ 1989 : ( 0x6A == ((const U8*)s)[1] ) ? \ 1990 ( ( 0x41 == ((const U8*)s)[2] ) ? \ 1991 ( ( ( 0xB4 == ((const U8*)s)[3] ) && ( 0x68 == ((const U8*)s)[4] ) ) ? 0x1FA0 : 0 )\ 1992 : ( 0x42 == ((const U8*)s)[2] ) ? \ 1993 ( ( ( 0xB4 == ((const U8*)s)[3] ) && ( 0x68 == ((const U8*)s)[4] ) ) ? 0x1FA1 : 0 )\ 1994 : ( 0x43 == ((const U8*)s)[2] ) ? \ 1995 ( ( ( 0xB4 == ((const U8*)s)[3] ) && ( 0x68 == ((const U8*)s)[4] ) ) ? 0x1FA2 : 0 )\ 1996 : ( 0x44 == ((const U8*)s)[2] ) ? \ 1997 ( ( ( 0xB4 == ((const U8*)s)[3] ) && ( 0x68 == ((const U8*)s)[4] ) ) ? 0x1FA3 : 0 )\ 1998 : ( 0x45 == ((const U8*)s)[2] ) ? \ 1999 ( ( ( 0xB4 == ((const U8*)s)[3] ) && ( 0x68 == ((const U8*)s)[4] ) ) ? 0x1FA4 : 0 )\ 2000 : ( 0x46 == ((const U8*)s)[2] ) ? \ 2001 ( ( ( 0xB4 == ((const U8*)s)[3] ) && ( 0x68 == ((const U8*)s)[4] ) ) ? 0x1FA5 : 0 )\ 2002 : ( 0x47 == ((const U8*)s)[2] ) ? \ 2003 ( ( ( 0xB4 == ((const U8*)s)[3] ) && ( 0x68 == ((const U8*)s)[4] ) ) ? 0x1FA6 : 0 )\ 2004 : ( 0x48 == ((const U8*)s)[2] ) ? \ 2005 ( ( ( 0xB4 == ((const U8*)s)[3] ) && ( 0x68 == ((const U8*)s)[4] ) ) ? 0x1FA7 : 0 )\ 2006 : ( 0x57 == ((const U8*)s)[2] ) ? \ 2007 ( ( ( 0xB4 == ((const U8*)s)[3] ) && ( 0x68 == ((const U8*)s)[4] ) ) ? 0x1FB2 : 0 )\ 2008 : ( 0x63 == ((const U8*)s)[2] ) ? \ 2009 ( ( ( 0xB4 == ((const U8*)s)[3] ) && ( 0x68 == ((const U8*)s)[4] ) ) ? 0x1FC2 : 0 )\ 2010 : ( ( ( 0x70 == ((const U8*)s)[2] ) && ( 0xB4 == ((const U8*)s)[3] ) ) && ( 0x68 == ((const U8*)s)[4] ) ) ? 0x1FF2 : 0 )\ 2011 : 0 ) \ 2012 : 0 ) 2013 2014 2015 /*** GENERATED CODE ***/ 2016 #define what_MULTI_CHAR_FOLD_utf8_safe_part6_(s,e) \ 2017 ( ( ( ((const U8*)s)[0] & 0xBF ) == 'a' ) ? \ 2018 ( ( ( 0xAB == ((const U8*)s)[1] ) && ( 0x72 == ((const U8*)s)[2] ) ) ? 0x1E9A : 0 )\ 2019 : ( ( ((const U8*)s)[0] & 0xBF ) == 'f' ) ? \ 2020 ( ( ( ((const U8*)s)[1] & 0xBF ) == 'f' ) ? \ 2021 ( ( ( ((const U8*)s)[2] & 0xBF ) == 'i' ) ? 0xFB03 \ 2022 : ( ( ((const U8*)s)[2] & 0xBF ) == 'l' ) ? 0xFB04 : 0xFB00 ) \ 2023 : ( ( ((const U8*)s)[1] & 0xBF ) == 'i' ) ? 0xFB01 \ 2024 : ( ( ((const U8*)s)[1] & 0xBF ) == 'l' ) ? 0xFB02 : 0 ) \ 2025 : ( ( ((const U8*)s)[0] & 0xBF ) == 'h' ) ? \ 2026 ( ( ( 0xB0 == ((const U8*)s)[1] ) && ( 0x58 == ((const U8*)s)[2] ) ) ? 0x1E96 : 0 )\ 2027 : ( ( ((const U8*)s)[0] & 0xBF ) == 'i' ) ? \ 2028 ( ( ( 0xAF == ((const U8*)s)[1] ) && ( 0x48 == ((const U8*)s)[2] ) ) ? 0x130 : 0 )\ 2029 : ( 0x8F == ((const U8*)s)[0] ) ? \ 2030 ( ( 0x73 == ((const U8*)s)[1] ) ? \ 2031 ( ( 0x8F == ((const U8*)s)[2] ) ? \ 2032 ( ( 0x73 == ((const U8*)s)[3] ) ? 0x59 : 0 ) \ 2033 : ( ( ((const U8*)s)[2] & 0xBF ) == 's' ) ? 0x59 \ 2034 : ( ( ((const U8*)s)[2] & 0xBF ) == 't' ) ? 0xFB05 : 0 ) \ 2035 : 0 ) \ 2036 : ( ( ((const U8*)s)[0] & 0xBF ) == 'j' ) ? \ 2037 ( ( ( 0xAF == ((const U8*)s)[1] ) && ( 0x53 == ((const U8*)s)[2] ) ) ? 0x1F0 : 0 )\ 2038 : ( ( ((const U8*)s)[0] & 0xBF ) == 's' ) ? \ 2039 ( ( 0x8F == ((const U8*)s)[1] ) ? \ 2040 ( ( 0x73 == ((const U8*)s)[2] ) ? 0x59 : 0 ) \ 2041 : ( ( ((const U8*)s)[1] & 0xBF ) == 's' ) ? 0x59 \ 2042 : ( ( ((const U8*)s)[1] & 0xBF ) == 't' ) ? 0xFB05 : 0 ) \ 2043 : ( ( ((const U8*)s)[0] & 0xBF ) == 't' ) ? \ 2044 ( ( ( 0xAF == ((const U8*)s)[1] ) && ( 0x49 == ((const U8*)s)[2] ) ) ? 0x1E97 : 0 )\ 2045 : ( ( ((const U8*)s)[0] & 0xBF ) == 'w' ) ? \ 2046 ( ( ( 0xAF == ((const U8*)s)[1] ) && ( 0x51 == ((const U8*)s)[2] ) ) ? 0x1E98 : 0 )\ 2047 : ( ( ((const U8*)s)[0] & 0xBF ) == 'y' ) ? \ 2048 ( ( ( 0xAF == ((const U8*)s)[1] ) && ( 0x51 == ((const U8*)s)[2] ) ) ? 0x1E99 : 0 )\ 2049 : ( 0xAB == ((const U8*)s)[0] ) ? \ 2050 ( ( ( 0x70 == ((const U8*)s)[1] ) && ( ( ((const U8*)s)[2] & 0xBF ) == 'n' ) ) ? 0x149 : 0 )\ 2051 : ( 0xB4 == ((const U8*)s)[0] ) ? \ 2052 ( ( 0x53 == ((const U8*)s)[1] ) ? \ 2053 ( ( ( 0xB4 == ((const U8*)s)[2] ) && ( 0x68 == ((const U8*)s)[3] ) ) ? 0x1FB4 : 0 )\ 2054 : ( 0x55 == ((const U8*)s)[1] ) ? \ 2055 ( ( ( 0xB4 == ((const U8*)s)[2] ) && ( 0x68 == ((const U8*)s)[3] ) ) ? 0x1FC4 : 0 )\ 2056 : ( 0x58 == ((const U8*)s)[1] ) ? \ 2057 ( ( 0xB1 == ((const U8*)s)[2] ) ? \ 2058 ( ( 0x43 == ((const U8*)s)[3] ) ? 0x1FB6 : 0 ) \ 2059 : ( ( 0xB4 == ((const U8*)s)[2] ) && ( 0x68 == ((const U8*)s)[3] ) ) ? 0x1FB3 : 0 )\ 2060 : ( 0x66 == ((const U8*)s)[1] ) ? \ 2061 ( ( 0xB1 == ((const U8*)s)[2] ) ? \ 2062 ( ( 0x43 == ((const U8*)s)[3] ) ? 0x1FC6 : 0 ) \ 2063 : ( ( 0xB4 == ((const U8*)s)[2] ) && ( 0x68 == ((const U8*)s)[3] ) ) ? 0x1FC3 : 0 )\ 2064 : ( ( ( 0x68 == ((const U8*)s)[1] ) && ( 0xB1 == ((const U8*)s)[2] ) ) && ( 0x43 == ((const U8*)s)[3] ) ) ? 0x1FD6 : 0 )\ 2065 : ( 0xB5 == ((const U8*)s)[0] ) ? \ 2066 ( ( 0x42 == ((const U8*)s)[1] ) ? \ 2067 ( ( ( 0xAF == ((const U8*)s)[2] ) && ( 0x62 == ((const U8*)s)[3] ) ) ? 0x1FE4 : 0 )\ 2068 : ( 0x46 == ((const U8*)s)[1] ) ? \ 2069 ( ( 0xAF == ((const U8*)s)[2] ) ? \ 2070 ( ( 0x62 == ((const U8*)s)[3] ) ? 0x1F50 : 0 ) \ 2071 : ( ( 0xB1 == ((const U8*)s)[2] ) && ( 0x43 == ((const U8*)s)[3] ) ) ? 0x1FE6 : 0 )\ 2072 : ( 0x4A == ((const U8*)s)[1] ) ? \ 2073 ( ( 0xB1 == ((const U8*)s)[2] ) ? \ 2074 ( ( 0x43 == ((const U8*)s)[3] ) ? 0x1FF6 : 0 ) \ 2075 : ( ( 0xB4 == ((const U8*)s)[2] ) && ( 0x68 == ((const U8*)s)[3] ) ) ? 0x1FF3 : 0 )\ 2076 : ( ( ( 0x55 == ((const U8*)s)[1] ) && ( 0xB4 == ((const U8*)s)[2] ) ) && ( 0x68 == ((const U8*)s)[3] ) ) ? 0x1FF4 : 0 )\ 2077 : 0 ) 2078 2079 2080 /*** GENERATED CODE ***/ 2081 #define what_MULTI_CHAR_FOLD_utf8_safe_part7_(s,e) \ 2082 ( ((e)-(s) > 2) ? \ 2083 ( ( ( ((const U8*)s)[0] & 0xBF ) == 'a' ) ? \ 2084 ( ( ( 0xAB == ((const U8*)s)[1] ) && ( 0x72 == ((const U8*)s)[2] ) ) ? 0x1E9A : 0 )\ 2085 : ( ( ((const U8*)s)[0] & 0xBF ) == 'f' ) ? \ 2086 ( ( ( ((const U8*)s)[1] & 0xBF ) == 'f' ) ? \ 2087 ( ( ( ((const U8*)s)[2] & 0xBF ) == 'i' ) ? 0xFB03 \ 2088 : ( ( ((const U8*)s)[2] & 0xBF ) == 'l' ) ? 0xFB04 : 0xFB00 ) \ 2089 : ( ( ((const U8*)s)[1] & 0xBF ) == 'i' ) ? 0xFB01 \ 2090 : ( ( ((const U8*)s)[1] & 0xBF ) == 'l' ) ? 0xFB02 : 0 ) \ 2091 : ( ( ((const U8*)s)[0] & 0xBF ) == 'h' ) ? \ 2092 ( ( ( 0xB0 == ((const U8*)s)[1] ) && ( 0x58 == ((const U8*)s)[2] ) ) ? 0x1E96 : 0 )\ 2093 : ( ( ((const U8*)s)[0] & 0xBF ) == 'i' ) ? \ 2094 ( ( ( 0xAF == ((const U8*)s)[1] ) && ( 0x48 == ((const U8*)s)[2] ) ) ? 0x130 : 0 )\ 2095 : ( 0x8F == ((const U8*)s)[0] ) ? \ 2096 ( ( 0x73 == ((const U8*)s)[1] ) ? \ 2097 ( ( ( ((const U8*)s)[2] & 0xBF ) == 's' ) ? 0x59 \ 2098 : ( ( ((const U8*)s)[2] & 0xBF ) == 't' ) ? 0xFB05 : 0 ) \ 2099 : 0 ) \ 2100 : ( ( ((const U8*)s)[0] & 0xBF ) == 'j' ) ? \ 2101 ( ( ( 0xAF == ((const U8*)s)[1] ) && ( 0x53 == ((const U8*)s)[2] ) ) ? 0x1F0 : 0 )\ 2102 : ( ( ((const U8*)s)[0] & 0xBF ) == 's' ) ? \ 2103 ( ( 0x8F == ((const U8*)s)[1] ) ? \ 2104 ( ( 0x73 == ((const U8*)s)[2] ) ? 0x59 : 0 ) \ 2105 : ( ( ((const U8*)s)[1] & 0xBF ) == 's' ) ? 0x59 \ 2106 : ( ( ((const U8*)s)[1] & 0xBF ) == 't' ) ? 0xFB05 : 0 ) \ 2107 : ( ( ((const U8*)s)[0] & 0xBF ) == 't' ) ? \ 2108 ( ( ( 0xAF == ((const U8*)s)[1] ) && ( 0x49 == ((const U8*)s)[2] ) ) ? 0x1E97 : 0 )\ 2109 : ( ( ((const U8*)s)[0] & 0xBF ) == 'w' ) ? \ 2110 ( ( ( 0xAF == ((const U8*)s)[1] ) && ( 0x51 == ((const U8*)s)[2] ) ) ? 0x1E98 : 0 )\ 2111 : ( ( ((const U8*)s)[0] & 0xBF ) == 'y' ) ? \ 2112 ( ( ( 0xAF == ((const U8*)s)[1] ) && ( 0x51 == ((const U8*)s)[2] ) ) ? 0x1E99 : 0 )\ 2113 : ( ( ( 0xAB == ((const U8*)s)[0] ) && ( 0x70 == ((const U8*)s)[1] ) ) && ( ( ((const U8*)s)[2] & 0xBF ) == 'n' ) ) ? 0x149 : 0 )\ 2114 : ((e)-(s) > 1) ? \ 2115 ( ( ( ((const U8*)s)[0] & 0xBF ) == 'f' ) ? \ 2116 ( ( ( ((const U8*)s)[1] & 0xBF ) == 'f' ) ? 0xFB00 \ 2117 : ( ( ((const U8*)s)[1] & 0xBF ) == 'i' ) ? 0xFB01 \ 2118 : ( ( ((const U8*)s)[1] & 0xBF ) == 'l' ) ? 0xFB02 : 0 ) \ 2119 : ( ( ((const U8*)s)[0] & 0xBF ) == 's' ) ? \ 2120 ( ( ( ((const U8*)s)[1] & 0xBF ) == 's' ) ? 0x59 \ 2121 : ( ( ((const U8*)s)[1] & 0xBF ) == 't' ) ? 0xFB05 : 0 ) \ 2122 : 0 ) \ 2123 : 0 ) 2124 2125 2126 /*** GENERATED CODE ***/ 2127 #define what_MULTI_CHAR_FOLD_utf8_safe(s,e) \ 2128 ( ((e)-(s) > 5) ? \ 2129 ( ( ( ((const U8*)s)[0] & 0xBF ) == 'a' ) ? \ 2130 ( ( ( 0xAB == ((const U8*)s)[1] ) && ( 0x72 == ((const U8*)s)[2] ) ) ? 0x1E9A : 0 )\ 2131 : ( ( ((const U8*)s)[0] & 0xBF ) == 'f' ) ? what_MULTI_CHAR_FOLD_utf8_safe_part2_(s,e) : what_MULTI_CHAR_FOLD_utf8_safe_part3_(s,e) )\ 2132 : ((e)-(s) > 4) ? \ 2133 ( ( ( ((const U8*)s)[0] & 0xBF ) == 'a' ) ? \ 2134 ( ( ( 0xAB == ((const U8*)s)[1] ) && ( 0x72 == ((const U8*)s)[2] ) ) ? 0x1E9A : 0 )\ 2135 : ( ( ((const U8*)s)[0] & 0xBF ) == 'f' ) ? \ 2136 ( ( ( ((const U8*)s)[1] & 0xBF ) == 'f' ) ? \ 2137 ( ( ( ((const U8*)s)[2] & 0xBF ) == 'i' ) ? 0xFB03 \ 2138 : ( ( ((const U8*)s)[2] & 0xBF ) == 'l' ) ? 0xFB04 : 0xFB00 ) \ 2139 : ( ( ((const U8*)s)[1] & 0xBF ) == 'i' ) ? 0xFB01 \ 2140 : ( ( ((const U8*)s)[1] & 0xBF ) == 'l' ) ? 0xFB02 : 0 ) \ 2141 : ( ( ((const U8*)s)[0] & 0xBF ) == 'h' ) ? \ 2142 ( ( ( 0xB0 == ((const U8*)s)[1] ) && ( 0x58 == ((const U8*)s)[2] ) ) ? 0x1E96 : 0 )\ 2143 : ( ( ((const U8*)s)[0] & 0xBF ) == 'i' ) ? \ 2144 ( ( ( 0xAF == ((const U8*)s)[1] ) && ( 0x48 == ((const U8*)s)[2] ) ) ? 0x130 : 0 )\ 2145 : ( 0x8F == ((const U8*)s)[0] ) ? \ 2146 ( ( 0x73 == ((const U8*)s)[1] ) ? \ 2147 ( ( 0x8F == ((const U8*)s)[2] ) ? \ 2148 ( ( 0x73 == ((const U8*)s)[3] ) ? 0x59 : 0 ) \ 2149 : ( ( ((const U8*)s)[2] & 0xBF ) == 's' ) ? 0x59 \ 2150 : ( ( ((const U8*)s)[2] & 0xBF ) == 't' ) ? 0xFB05 : 0 ) \ 2151 : 0 ) \ 2152 : ( ( ((const U8*)s)[0] & 0xBF ) == 'j' ) ? \ 2153 ( ( ( 0xAF == ((const U8*)s)[1] ) && ( 0x53 == ((const U8*)s)[2] ) ) ? 0x1F0 : 0 )\ 2154 : ( ( ((const U8*)s)[0] & 0xBF ) == 's' ) ? \ 2155 ( ( 0x8F == ((const U8*)s)[1] ) ? \ 2156 ( ( 0x73 == ((const U8*)s)[2] ) ? 0x59 : 0 ) \ 2157 : ( ( ((const U8*)s)[1] & 0xBF ) == 's' ) ? 0x59 \ 2158 : ( ( ((const U8*)s)[1] & 0xBF ) == 't' ) ? 0xFB05 : 0 ) \ 2159 : ( ( ((const U8*)s)[0] & 0xBF ) == 't' ) ? \ 2160 ( ( ( 0xAF == ((const U8*)s)[1] ) && ( 0x49 == ((const U8*)s)[2] ) ) ? 0x1E97 : 0 )\ 2161 : ( ( ((const U8*)s)[0] & 0xBF ) == 'w' ) ? \ 2162 ( ( ( 0xAF == ((const U8*)s)[1] ) && ( 0x51 == ((const U8*)s)[2] ) ) ? 0x1E98 : 0 )\ 2163 : ( ( ((const U8*)s)[0] & 0xBF ) == 'y' ) ? \ 2164 ( ( ( 0xAF == ((const U8*)s)[1] ) && ( 0x51 == ((const U8*)s)[2] ) ) ? 0x1E99 : 0 )\ 2165 : ( 0xAB == ((const U8*)s)[0] ) ? \ 2166 ( ( ( 0x70 == ((const U8*)s)[1] ) && ( ( ((const U8*)s)[2] & 0xBF ) == 'n' ) ) ? 0x149 : 0 )\ 2167 : ( 0xB4 == ((const U8*)s)[0] ) ? \ 2168 ( ( 0x53 == ((const U8*)s)[1] ) ? \ 2169 ( ( ( 0xB4 == ((const U8*)s)[2] ) && ( 0x68 == ((const U8*)s)[3] ) ) ? 0x1FB4 : 0 )\ 2170 : ( 0x55 == ((const U8*)s)[1] ) ? \ 2171 ( ( ( 0xB4 == ((const U8*)s)[2] ) && ( 0x68 == ((const U8*)s)[3] ) ) ? 0x1FC4 : 0 )\ 2172 : ( 0x58 == ((const U8*)s)[1] ) ? \ 2173 ( ( 0xB1 == ((const U8*)s)[2] ) ? \ 2174 ( ( 0x43 == ((const U8*)s)[3] ) ? 0x1FB6 : 0 ) \ 2175 : ( ( 0xB4 == ((const U8*)s)[2] ) && ( 0x68 == ((const U8*)s)[3] ) ) ? 0x1FB3 : 0 )\ 2176 : ( 0x66 == ((const U8*)s)[1] ) ? \ 2177 ( ( 0xB1 == ((const U8*)s)[2] ) ? \ 2178 ( ( 0x43 == ((const U8*)s)[3] ) ? 0x1FC6 : 0 ) \ 2179 : ( ( 0xB4 == ((const U8*)s)[2] ) && ( 0x68 == ((const U8*)s)[3] ) ) ? 0x1FC3 : 0 )\ 2180 : ( ( ( 0x68 == ((const U8*)s)[1] ) && ( 0xB1 == ((const U8*)s)[2] ) ) && ( 0x43 == ((const U8*)s)[3] ) ) ? 0x1FD6 : 0 )\ 2181 : ( 0xB5 == ((const U8*)s)[0] ) ? what_MULTI_CHAR_FOLD_utf8_safe_part4_(s,e) : what_MULTI_CHAR_FOLD_utf8_safe_part5_(s,e) )\ 2182 : ((e)-(s) > 3) ? what_MULTI_CHAR_FOLD_utf8_safe_part6_(s,e) : what_MULTI_CHAR_FOLD_utf8_safe_part7_(s,e) ) 2183 2184 /* 2185 MULTI_CHAR_FOLD: multi-char strings that are folded to by a single character 2186 2187 %regcharclass_multi_char_folds::multi_char_folds('l', 'a') 2188 */ 2189 /*** GENERATED CODE ***/ 2190 #define is_MULTI_CHAR_FOLD_latin1_safe(s,e) \ 2191 ( ((e)-(s) > 2) ? \ 2192 ( ( ( ((const U8*)s)[0] & 0xBF ) == 'f' ) ? \ 2193 ( ( ( ((const U8*)s)[1] & 0xBF ) == 'f' ) ? \ 2194 ( ( ( ( ((const U8*)s)[2] & 0xBF ) == 'i' ) || ( ( ((const U8*)s)[2] & 0xBF ) == 'l' ) ) ? 3 : 2 )\ 2195 : ( ( ( ((const U8*)s)[1] & 0xBF ) == 'i' ) || ( ( ((const U8*)s)[1] & 0xBF ) == 'l' ) ) ? 2 : 0 )\ 2196 : ( ( ( ((const U8*)s)[0] & 0xBF ) == 's' ) && ( ( ((const U8*)s)[1] & 0xBE ) == 's' ) ) ? 2 : 0 )\ 2197 : ((e)-(s) > 1) ? \ 2198 ( ( ( ((const U8*)s)[0] & 0xBF ) == 'f' ) ? \ 2199 ( ( ( ( ((const U8*)s)[1] & 0xBF ) == 'f' ) || ( ( ((const U8*)s)[1] & 0xBF ) == 'i' ) || ( ( ((const U8*)s)[1] & 0xBF ) == 'l' ) ) ? 2 : 0 )\ 2200 : ( ( ( ((const U8*)s)[0] & 0xBF ) == 's' ) && ( ( ((const U8*)s)[1] & 0xBE ) == 's' ) ) ? 2 : 0 )\ 2201 : 0 ) 2202 2203 /*** GENERATED CODE ***/ 2204 #define what_MULTI_CHAR_FOLD_latin1_safe(s,e) \ 2205 ( ((e)-(s) > 2) ? \ 2206 ( ( ( ((const U8*)s)[0] & 0xBF ) == 'f' ) ? \ 2207 ( ( ( ((const U8*)s)[1] & 0xBF ) == 'f' ) ? \ 2208 ( ( ( ((const U8*)s)[2] & 0xBF ) == 'i' ) ? 0xFB03 \ 2209 : ( ( ((const U8*)s)[2] & 0xBF ) == 'l' ) ? 0xFB04 : 0xFB00 ) \ 2210 : ( ( ((const U8*)s)[1] & 0xBF ) == 'i' ) ? 0xFB01 \ 2211 : ( ( ((const U8*)s)[1] & 0xBF ) == 'l' ) ? 0xFB02 : 0 ) \ 2212 : ( ( ((const U8*)s)[0] & 0xBF ) == 's' ) ? \ 2213 ( ( ( ((const U8*)s)[1] & 0xBF ) == 's' ) ? 0x59 \ 2214 : ( ( ((const U8*)s)[1] & 0xBF ) == 't' ) ? 0xFB05 : 0 ) \ 2215 : 0 ) \ 2216 : ((e)-(s) > 1) ? \ 2217 ( ( ( ((const U8*)s)[0] & 0xBF ) == 'f' ) ? \ 2218 ( ( ( ((const U8*)s)[1] & 0xBF ) == 'f' ) ? 0xFB00 \ 2219 : ( ( ((const U8*)s)[1] & 0xBF ) == 'i' ) ? 0xFB01 \ 2220 : ( ( ((const U8*)s)[1] & 0xBF ) == 'l' ) ? 0xFB02 : 0 ) \ 2221 : ( ( ((const U8*)s)[0] & 0xBF ) == 's' ) ? \ 2222 ( ( ( ((const U8*)s)[1] & 0xBF ) == 's' ) ? 0x59 \ 2223 : ( ( ((const U8*)s)[1] & 0xBF ) == 't' ) ? 0xFB05 : 0 ) \ 2224 : 0 ) \ 2225 : 0 ) 2226 2227 /* 2228 THREE_CHAR_FOLD: A three-character multi-char fold 2229 2230 %regcharclass_multi_char_folds::multi_char_folds('u', '3') 2231 */ 2232 /*** GENERATED CODE ***/ 2233 #define is_THREE_CHAR_FOLD_utf8_safe(s,e) \ 2234 ( ((e)-(s) > 5) ? \ 2235 ( ( ( ((const U8*)s)[0] & 0xBF ) == 'f' ) ? \ 2236 ( ( ( ( ((const U8*)s)[1] & 0xBF ) == 'f' ) && ( ( ( ((const U8*)s)[2] & 0xBF ) == 'i' ) || ( ( ((const U8*)s)[2] & 0xBF ) == 'l' ) ) ) ? 3 : 0 )\ 2237 : ( 0xB4 == ((const U8*)s)[0] ) ? \ 2238 ( ( 0x58 == ((const U8*)s)[1] || 0x66 == ((const U8*)s)[1] ) ? \ 2239 ( ( ( ( ( 0xB1 == ((const U8*)s)[2] ) && ( 0x43 == ((const U8*)s)[3] ) ) && ( 0xB4 == ((const U8*)s)[4] ) ) && ( 0x68 == ((const U8*)s)[5] ) ) ? 6 : 0 )\ 2240 : ( ( ( 0x68 == ((const U8*)s)[1] ) && ( 0xAF == ((const U8*)s)[2] ) ) && ( 0x49 == ((const U8*)s)[3] ) ) ? ( ( 0xAF == ((const U8*)s)[4] ) ?\ 2241 ( ( inRANGE_helper_(U8, ((const U8*)s)[5], 0x41, 0x42) ) ? 6 : 0 )\ 2242 : ( ( 0xB1 == ((const U8*)s)[4] ) && ( 0x43 == ((const U8*)s)[5] ) ) ? 6 : 0 ) : 0 )\ 2243 : ( 0xB5 == ((const U8*)s)[0] ) ? \ 2244 ( ( 0x46 == ((const U8*)s)[1] ) ? \ 2245 ( ( ( 0xAF == ((const U8*)s)[2] ) && ( 0x49 == ((const U8*)s)[3] || 0x62 == ((const U8*)s)[3] ) ) ? ( ( 0xAF == ((const U8*)s)[4] ) ?\ 2246 ( ( inRANGE_helper_(U8, ((const U8*)s)[5], 0x41, 0x42) ) ? 6 : 0 )\ 2247 : ( ( 0xB1 == ((const U8*)s)[4] ) && ( 0x43 == ((const U8*)s)[5] ) ) ? 6 : 0 ) : 0 )\ 2248 : ( ( ( ( ( 0x4A == ((const U8*)s)[1] ) && ( 0xB1 == ((const U8*)s)[2] ) ) && ( 0x43 == ((const U8*)s)[3] ) ) && ( 0xB4 == ((const U8*)s)[4] ) ) && ( 0x68 == ((const U8*)s)[5] ) ) ? 6 : 0 )\ 2249 : 0 ) \ 2250 : ( ( ( ((e)-(s) > 2) && ( ( ((const U8*)s)[0] & 0xBF ) == 'f' ) ) && ( ( ((const U8*)s)[1] & 0xBF ) == 'f' ) ) && ( ( ( ((const U8*)s)[2] & 0xBF ) == 'i' ) || ( ( ((const U8*)s)[2] & 0xBF ) == 'l' ) ) ) ? 3 : 0 ) 2251 2252 /* 2253 THREE_CHAR_FOLD: A three-character multi-char fold 2254 2255 %regcharclass_multi_char_folds::multi_char_folds('l', '3') 2256 */ 2257 /*** GENERATED CODE ***/ 2258 #define is_THREE_CHAR_FOLD_latin1_safe(s,e) \ 2259 ( ( ( ( ( ((e) - (s)) >= 3 ) && ( ( ((const U8*)s)[0] & 0xBF ) == 'f' ) ) && ( ( ((const U8*)s)[1] & 0xBF ) == 'f' ) ) && ( ( ( ((const U8*)s)[2] & 0xBF ) == 'i' ) || ( ( ((const U8*)s)[2] & 0xBF ) == 'l' ) ) ) ? 3 : 0 ) 2260 2261 /* 2262 THREE_CHAR_FOLD_HEAD: The first two of three-character multi-char folds 2263 2264 %regcharclass_multi_char_folds::multi_char_folds('u', 'h') 2265 */ 2266 /*** GENERATED CODE ***/ 2267 #define is_THREE_CHAR_FOLD_HEAD_utf8_safe(s,e) \ 2268 ( ((e)-(s) > 3) ? \ 2269 ( ( ( ( ((const U8*)s)[0] & 0xAF ) == 'a' ) || ( ( ((const U8*)s)[0] & 0xBE ) == 'h' ) || ( ( ((const U8*)s)[0] & 0xBE ) == 's' ) || ( ( ((const U8*)s)[0] & 0xBF ) == 'w' ) || ( ( ((const U8*)s)[0] & 0xBF ) == 'y' ) ) ? 1\ 2270 : ( ( ((const U8*)s)[0] & 0xBF ) == 'f' ) ? \ 2271 ( ( ( ((const U8*)s)[1] & 0xBF ) == 'f' ) ? 2 : 1 ) \ 2272 : ( 0x8F == ((const U8*)s)[0] ) ? \ 2273 ( ( 0x73 == ((const U8*)s)[1] ) ? 2 : 0 ) \ 2274 : ( 0xAB == ((const U8*)s)[0] ) ? \ 2275 ( ( 0x70 == ((const U8*)s)[1] ) ? 2 : 0 ) \ 2276 : ( 0xB4 == ((const U8*)s)[0] ) ? \ 2277 ( ( ( NATIVE_UTF8_TO_I8(((const U8*)s)[1]) & 0xFD ) == 0xAC ) ? 2 \ 2278 : ( 0x58 == ((const U8*)s)[1] || 0x66 == ((const U8*)s)[1] ) ? \ 2279 ( ( ( 0xB1 == ((const U8*)s)[2] ) && ( 0x43 == ((const U8*)s)[3] ) ) ? 4 : 2 )\ 2280 : ( 0x68 == ((const U8*)s)[1] ) ? \ 2281 ( ( ( 0xAF == ((const U8*)s)[2] ) && ( 0x49 == ((const U8*)s)[3] ) ) ? 4 : 2 )\ 2282 : 0 ) \ 2283 : ( 0xB5 == ((const U8*)s)[0] ) ? \ 2284 ( ( 0x42 == ((const U8*)s)[1] || 0x55 == ((const U8*)s)[1] ) ? 2 \ 2285 : ( 0x46 == ((const U8*)s)[1] ) ? \ 2286 ( ( ( 0xAF == ((const U8*)s)[2] ) && ( 0x49 == ((const U8*)s)[3] || 0x62 == ((const U8*)s)[3] ) ) ? 4 : 2 )\ 2287 : ( 0x4A == ((const U8*)s)[1] ) ? \ 2288 ( ( ( 0xB1 == ((const U8*)s)[2] ) && ( 0x43 == ((const U8*)s)[3] ) ) ? 4 : 2 )\ 2289 : 0 ) \ 2290 : ( 0xB8 == ((const U8*)s)[0] ) ? \ 2291 ( ( ( 0x52 == ((const U8*)s)[1] ) && ( 0x46 == ((const U8*)s)[2] || 0x63 == ((const U8*)s)[2] || 0x72 == ((const U8*)s)[2] ) ) ? 3 : 0 )\ 2292 : ( 0xBF == ((const U8*)s)[0] ) ? \ 2293 ( ( inRANGE_helper_(U8, ((const U8*)s)[1], 0x67, 0x68) ) ? \ 2294 ( ( inRANGE_helper_(U8, ((const U8*)s)[2], 0x41, 0x48) ) ? 3 : 0 )\ 2295 : ( ( 0x6A == ((const U8*)s)[1] ) && ( ( ( NATIVE_UTF8_TO_I8(((const U8*)s)[2]) & 0xF8 ) == 0xA0 ) || ( ( NATIVE_UTF8_TO_I8(((const U8*)s)[2]) & 0xFB ) == 0xB0 ) || ((const U8*)s)[2] == 0x70 ) ) ? 3 : 0 )\ 2296 : 0 ) \ 2297 : ((e)-(s) > 2) ? \ 2298 ( ( ( ( ((const U8*)s)[0] & 0xAF ) == 'a' ) || ( ( ((const U8*)s)[0] & 0xBE ) == 'h' ) || ( ( ((const U8*)s)[0] & 0xBE ) == 's' ) || ( ( ((const U8*)s)[0] & 0xBF ) == 'w' ) || ( ( ((const U8*)s)[0] & 0xBF ) == 'y' ) ) ? 1\ 2299 : ( ( ((const U8*)s)[0] & 0xBF ) == 'f' ) ? \ 2300 ( ( ( ((const U8*)s)[1] & 0xBF ) == 'f' ) ? 2 : 1 ) \ 2301 : ( 0x8F == ((const U8*)s)[0] ) ? \ 2302 ( ( 0x73 == ((const U8*)s)[1] ) ? 2 : 0 ) \ 2303 : ( 0xAB == ((const U8*)s)[0] ) ? \ 2304 ( ( 0x70 == ((const U8*)s)[1] ) ? 2 : 0 ) \ 2305 : ( 0xB4 == ((const U8*)s)[0] ) ? \ 2306 ( ( ( ( NATIVE_UTF8_TO_I8(((const U8*)s)[1]) & 0xFD ) == 0xAC ) || ( ( NATIVE_UTF8_TO_I8(((const U8*)s)[1]) & 0xF7 ) == 0xB1 ) || ((const U8*)s)[1] == 0x66 ) ? 2 : 0 )\ 2307 : ( 0xB5 == ((const U8*)s)[0] ) ? \ 2308 ( ( ( ( ((const U8*)s)[1] & 0xFB ) == 0x42 ) || ((const U8*)s)[1] == 0x4A || ((const U8*)s)[1] == 0x55 ) ? 2 : 0 )\ 2309 : ( 0xB8 == ((const U8*)s)[0] ) ? \ 2310 ( ( ( 0x52 == ((const U8*)s)[1] ) && ( 0x46 == ((const U8*)s)[2] || 0x63 == ((const U8*)s)[2] || 0x72 == ((const U8*)s)[2] ) ) ? 3 : 0 )\ 2311 : ( 0xBF == ((const U8*)s)[0] ) ? \ 2312 ( ( inRANGE_helper_(U8, ((const U8*)s)[1], 0x67, 0x68) ) ? \ 2313 ( ( inRANGE_helper_(U8, ((const U8*)s)[2], 0x41, 0x48) ) ? 3 : 0 )\ 2314 : ( ( 0x6A == ((const U8*)s)[1] ) && ( ( ( NATIVE_UTF8_TO_I8(((const U8*)s)[2]) & 0xF8 ) == 0xA0 ) || ( ( NATIVE_UTF8_TO_I8(((const U8*)s)[2]) & 0xFB ) == 0xB0 ) || ((const U8*)s)[2] == 0x70 ) ) ? 3 : 0 )\ 2315 : 0 ) \ 2316 : ((e)-(s) > 1) ? \ 2317 ( ( ( ( ((const U8*)s)[0] & 0xAF ) == 'a' ) || ( ( ((const U8*)s)[0] & 0xBE ) == 'h' ) || ( ( ((const U8*)s)[0] & 0xBE ) == 's' ) || ( ( ((const U8*)s)[0] & 0xBF ) == 'w' ) || ( ( ((const U8*)s)[0] & 0xBF ) == 'y' ) ) ? 1\ 2318 : ( ( ((const U8*)s)[0] & 0xBF ) == 'f' ) ? \ 2319 ( ( ( ((const U8*)s)[1] & 0xBF ) == 'f' ) ? 2 : 1 ) \ 2320 : ( 0x8F == ((const U8*)s)[0] ) ? \ 2321 ( ( 0x73 == ((const U8*)s)[1] ) ? 2 : 0 ) \ 2322 : ( 0xAB == ((const U8*)s)[0] ) ? \ 2323 ( ( 0x70 == ((const U8*)s)[1] ) ? 2 : 0 ) \ 2324 : ( 0xB4 == ((const U8*)s)[0] ) ? \ 2325 ( ( ( ( NATIVE_UTF8_TO_I8(((const U8*)s)[1]) & 0xFD ) == 0xAC ) || ( ( NATIVE_UTF8_TO_I8(((const U8*)s)[1]) & 0xF7 ) == 0xB1 ) || ((const U8*)s)[1] == 0x66 ) ? 2 : 0 )\ 2326 : ( ( 0xB5 == ((const U8*)s)[0] ) && ( ( ( ((const U8*)s)[1] & 0xFB ) == 0x42 ) || ((const U8*)s)[1] == 0x4A || ((const U8*)s)[1] == 0x55 ) ) ? 2 : 0 )\ 2327 : ((e)-(s) > 0) ? \ 2328 ( ( ( ((const U8*)s)[0] & 0xAF ) == 'a' ) || ( ( ((const U8*)s)[0] & 0x9F ) == 'f' ) || ( ( ((const U8*)s)[0] & 0xBE ) == 'h' ) || ( ( ((const U8*)s)[0] & 0xBE ) == 's' ) || ( ( ((const U8*)s)[0] & 0xBF ) == 'y' ) )\ 2329 : 0 ) 2330 2331 /* 2332 THREE_CHAR_FOLD_HEAD: The first two of three-character multi-char folds 2333 2334 %regcharclass_multi_char_folds::multi_char_folds('l', 'h') 2335 */ 2336 /*** GENERATED CODE ***/ 2337 #define is_THREE_CHAR_FOLD_HEAD_latin1_safe(s,e) \ 2338 ( ((e)-(s) > 1) ? \ 2339 ( ( ( ( ((const U8*)s)[0] & 0xAF ) == 'a' ) || ( ( ((const U8*)s)[0] & 0xBE ) == 'h' ) || ( ( ((const U8*)s)[0] & 0xBE ) == 's' ) || ( ( ((const U8*)s)[0] & 0xBF ) == 'w' ) || ( ( ((const U8*)s)[0] & 0xBF ) == 'y' ) ) ? 1\ 2340 : ( ( ((const U8*)s)[0] & 0xBF ) == 'f' ) ? \ 2341 ( ( ( ((const U8*)s)[1] & 0xBF ) == 'f' ) ? 2 : 1 ) \ 2342 : 0 ) \ 2343 : ((e)-(s) > 0) ? \ 2344 ( ( ( ((const U8*)s)[0] & 0xAF ) == 'a' ) || ( ( ((const U8*)s)[0] & 0x9F ) == 'f' ) || ( ( ((const U8*)s)[0] & 0xBE ) == 'h' ) || ( ( ((const U8*)s)[0] & 0xBE ) == 's' ) || ( ( ((const U8*)s)[0] & 0xBF ) == 'y' ) )\ 2345 : 0 ) 2346 2347 /* 2348 FOLDS_TO_MULTI: characters that fold to multi-char strings 2349 2350 \p{_Perl_Folds_To_Multi_Char} 2351 */ 2352 /*** GENERATED CODE ***/ 2353 #define is_FOLDS_TO_MULTI_utf8(s) \ 2354 ( ( 0x8A == ((const U8*)s)[0] ) ? \ 2355 ( ( 0x73 == ((const U8*)s)[1] ) ? 2 : 0 ) \ 2356 : ( 0x8D == ((const U8*)s)[0] || 0x9C == ((const U8*)s)[0] || inRANGE_helper_(U8, ((const U8*)s)[0], 0xB3, 0xB4) ) ?\ 2357 ( ( 0x57 == ((const U8*)s)[1] ) ? 2 : 0 ) \ 2358 : ( 0x8E == ((const U8*)s)[0] ) ? \ 2359 ( ( 0x4A == ((const U8*)s)[1] ) ? 2 : 0 ) \ 2360 : ( 0xB8 == ((const U8*)s)[0] ) ? \ 2361 ( ( ( 0x53 == ((const U8*)s)[1] ) && ( 0x48 == ((const U8*)s)[2] ) ) ? 3 : 0 )\ 2362 : ( 0xBF == ((const U8*)s)[0] ) ? \ 2363 ( ( 0x63 == ((const U8*)s)[1] ) ? \ 2364 ( ( inRANGE_helper_(U8, ((const U8*)s)[2], 0x65, 0x69) || 0x72 == ((const U8*)s)[2] ) ? 3 : 0 )\ 2365 : ( 0x69 == ((const U8*)s)[1] ) ? \ 2366 ( ( ( NATIVE_UTF8_TO_I8(((const U8*)s)[2]) & 0xF9 ) == 0xB0 ) ? 3 : 0 )\ 2367 : ( 0x70 == ((const U8*)s)[1] ) ? \ 2368 3 \ 2369 : ( 0x71 == ((const U8*)s)[1] ) ? \ 2370 ( ( ( ( NATIVE_UTF8_TO_I8(((const U8*)s)[2]) & 0xF0 ) == 0xA0 ) || ( ( NATIVE_UTF8_TO_I8(((const U8*)s)[2]) & 0xFA ) == 0xB2 ) || ( ( NATIVE_UTF8_TO_I8(((const U8*)s)[2]) & 0xF7 ) == 0xB4 ) ) ? 3 : 0 )\ 2371 : ( 0x72 == ((const U8*)s)[1] ) ? \ 2372 ( ( ( ( NATIVE_UTF8_TO_I8(((const U8*)s)[2]) & 0xEA ) == 0xA2 ) || ( ( NATIVE_UTF8_TO_I8(((const U8*)s)[2]) & 0xF7 ) == 0xA4 ) ) ? 3 : 0 )\ 2373 : ( ( 0x73 == ((const U8*)s)[1] ) && ( ( ( NATIVE_UTF8_TO_I8(((const U8*)s)[2]) & 0xEA ) == 0xA2 ) || ((const U8*)s)[2] == 0x45 || ( ( NATIVE_UTF8_TO_I8(((const U8*)s)[2]) & 0xF7 ) == 0xB4 ) ) ) ? 3 : 0 )\ 2374 : ( ( ( ( 0xDD == ((const U8*)s)[0] ) && ( 0x72 == ((const U8*)s)[1] ) ) && ( 0x67 == ((const U8*)s)[2] ) ) && ( inRANGE_helper_(U8, ((const U8*)s)[3], 0x41, 0x47) || inRANGE_helper_(U8, ((const U8*)s)[3], 0x62, 0x66) ) ) ? 4 : 0 ) 2375 2376 /* 2377 PROBLEMATIC_LOCALE_FOLD: characters whose fold is problematic under locale 2378 2379 \p{_Perl_Problematic_Locale_Folds} 2380 */ 2381 /*** GENERATED CODE ***/ 2382 #define is_PROBLEMATIC_LOCALE_FOLD_utf8(s) \ 2383 ( ( ( ( NATIVE_UTF8_TO_I8(((const U8*)s)[0]) & 0x80 ) == 0x00 ) || ( ( NATIVE_UTF8_TO_I8(((const U8*)s)[0]) & 0xE0 ) == 0x80 ) ) ? 1\ 2384 : ( inRANGE_helper_(U8, NATIVE_UTF8_TO_I8(((const U8*)s)[0]), 0xC5, 0xC7) ) ?\ 2385 2 \ 2386 : ( 0x8D == ((const U8*)s)[0] ) ? \ 2387 ( ( inRANGE_helper_(U8, ((const U8*)s)[1], 0x57, 0x58) ) ? 2 : 0 ) \ 2388 : ( 0x8E == ((const U8*)s)[0] ) ? \ 2389 ( ( 0x4A == ((const U8*)s)[1] ) ? 2 : 0 ) \ 2390 : ( 0x8F == ((const U8*)s)[0] ) ? \ 2391 ( ( 0x67 == ((const U8*)s)[1] || 0x73 == ((const U8*)s)[1] ) ? 2 : 0 ) \ 2392 : ( 0x9C == ((const U8*)s)[0] ) ? \ 2393 ( ( 0x57 == ((const U8*)s)[1] ) ? 2 : 0 ) \ 2394 : ( 0xAF == ((const U8*)s)[0] ) ? \ 2395 ( ( 0x48 == ((const U8*)s)[1] ) ? 2 : 0 ) \ 2396 : ( inRANGE_helper_(U8, ((const U8*)s)[0], 0xB3, 0xB4) ) ? \ 2397 ( ( 0x70 == ((const U8*)s)[1] ) ? 2 : 0 ) \ 2398 : ( 0xBF == ((const U8*)s)[0] ) ? \ 2399 ( ( ( 0x63 == ((const U8*)s)[1] ) && ( inRANGE_helper_(U8, ((const U8*)s)[2], 0x65, 0x69) || 0x72 == ((const U8*)s)[2] ) ) ? 3 : 0 )\ 2400 : ( 0xCA == ((const U8*)s)[0] ) ? \ 2401 ( ( ( 0x4A == ((const U8*)s)[1] ) && ( inRANGE_helper_(U8, ((const U8*)s)[2], 0x51, 0x52) ) ) ? 3 : 0 )\ 2402 : ( ( ( ( 0xDD == ((const U8*)s)[0] ) && ( 0x72 == ((const U8*)s)[1] ) ) && ( 0x67 == ((const U8*)s)[2] ) ) && ( inRANGE_helper_(U8, ((const U8*)s)[3], 0x41, 0x47) ) ) ? 4 : 0 ) 2403 2404 /*** GENERATED CODE ***/ 2405 #define is_PROBLEMATIC_LOCALE_FOLD_cp(cp) \ 2406 ( cp <= 0xFF || ( 0xFF < cp && \ 2407 ( inRANGE_helper_(UV, cp, 0x130, 0x131) || ( 0x131 < cp && \ 2408 ( 0x149 == cp || ( 0x149 < cp && \ 2409 ( 0x178 == cp || ( 0x178 < cp && \ 2410 ( 0x17F == cp || ( 0x17F < cp && \ 2411 ( 0x1F0 == cp || ( 0x1F0 < cp && \ 2412 ( 0x307 == cp || ( 0x307 < cp && \ 2413 ( 0x39C == cp || ( 0x39C < cp && \ 2414 ( 0x3BC == cp || ( 0x3BC < cp && \ 2415 ( inRANGE_helper_(UV, cp, 0x1E96, 0x1E9A) || ( 0x1E9A < cp && \ 2416 ( 0x1E9E == cp || ( 0x1E9E < cp && \ 2417 ( inRANGE_helper_(UV, cp, 0x212A, 0x212B) || inRANGE_helper_(UV, cp, 0xFB00, 0xFB06) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) 2418 2419 /* 2420 PROBLEMATIC_LOCALE_FOLDEDS_START: The first folded character of folds which are problematic under locale 2421 2422 \p{_Perl_Problematic_Locale_Foldeds_Start} 2423 */ 2424 /*** GENERATED CODE ***/ 2425 #define is_PROBLEMATIC_LOCALE_FOLDEDS_START_utf8(s) \ 2426 ( ( ( ( NATIVE_UTF8_TO_I8(((const U8*)s)[0]) & 0x80 ) == 0x00 ) || ( ( NATIVE_UTF8_TO_I8(((const U8*)s)[0]) & 0xE0 ) == 0x80 ) ) ? 1\ 2427 : ( inRANGE_helper_(U8, NATIVE_UTF8_TO_I8(((const U8*)s)[0]), 0xC5, 0xC7) ) ?\ 2428 2 \ 2429 : ( 0x8D == ((const U8*)s)[0] ) ? \ 2430 ( ( inRANGE_helper_(U8, ((const U8*)s)[1], 0x57, 0x58) ) ? 2 : 0 ) \ 2431 : ( 0x8E == ((const U8*)s)[0] ) ? \ 2432 ( ( 0x4A == ((const U8*)s)[1] ) ? 2 : 0 ) \ 2433 : ( 0x8F == ((const U8*)s)[0] ) ? \ 2434 ( ( 0x67 == ((const U8*)s)[1] || 0x73 == ((const U8*)s)[1] ) ? 2 : 0 ) \ 2435 : ( 0x9C == ((const U8*)s)[0] ) ? \ 2436 ( ( 0x57 == ((const U8*)s)[1] ) ? 2 : 0 ) \ 2437 : ( 0xAB == ((const U8*)s)[0] || inRANGE_helper_(U8, ((const U8*)s)[0], 0xB3, 0xB4) ) ?\ 2438 ( ( 0x70 == ((const U8*)s)[1] ) ? 2 : 0 ) \ 2439 : ( 0xBF == ((const U8*)s)[0] ) ? \ 2440 ( ( ( 0x63 == ((const U8*)s)[1] ) && ( inRANGE_helper_(U8, ((const U8*)s)[2], 0x65, 0x69) || 0x72 == ((const U8*)s)[2] ) ) ? 3 : 0 )\ 2441 : ( 0xCA == ((const U8*)s)[0] ) ? \ 2442 ( ( ( 0x4A == ((const U8*)s)[1] ) && ( inRANGE_helper_(U8, ((const U8*)s)[2], 0x51, 0x52) ) ) ? 3 : 0 )\ 2443 : ( ( ( ( 0xDD == ((const U8*)s)[0] ) && ( 0x72 == ((const U8*)s)[1] ) ) && ( 0x67 == ((const U8*)s)[2] ) ) && ( inRANGE_helper_(U8, ((const U8*)s)[3], 0x41, 0x47) ) ) ? 4 : 0 ) 2444 2445 /*** GENERATED CODE ***/ 2446 #define is_PROBLEMATIC_LOCALE_FOLDEDS_START_cp(cp) \ 2447 ( cp <= 0xFF || ( 0xFF < cp && \ 2448 ( inRANGE_helper_(UV, cp, 0x130, 0x131) || ( 0x131 < cp && \ 2449 ( 0x149 == cp || ( 0x149 < cp && \ 2450 ( 0x178 == cp || ( 0x178 < cp && \ 2451 ( 0x17F == cp || ( 0x17F < cp && \ 2452 ( 0x1F0 == cp || ( 0x1F0 < cp && \ 2453 ( 0x2BC == cp || ( 0x2BC < cp && \ 2454 ( 0x39C == cp || ( 0x39C < cp && \ 2455 ( 0x3BC == cp || ( 0x3BC < cp && \ 2456 ( inRANGE_helper_(UV, cp, 0x1E96, 0x1E9A) || ( 0x1E9A < cp && \ 2457 ( 0x1E9E == cp || ( 0x1E9E < cp && \ 2458 ( inRANGE_helper_(UV, cp, 0x212A, 0x212B) || inRANGE_helper_(UV, cp, 0xFB00, 0xFB06) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) 2459 2460 /* 2461 PATWS: pattern white space 2462 2463 \p{_Perl_PatWS} 2464 */ 2465 /*** GENERATED CODE ***/ 2466 #define is_PATWS_safe(s,e,is_utf8) \ 2467 ( ( LIKELY((e) > (s)) ) ? \ 2468 ( ( '\t' == ((const U8*)s)[0] || inRANGE_helper_(U8, ((const U8*)s)[0], '\v', '\r') || '\n' == ((const U8*)s)[0] || 0x25 == ((const U8*)s)[0] || ' ' == ((const U8*)s)[0] ) ? 1\ 2469 : ( ( is_utf8 && LIKELY(((e) - (s)) >= UTF8SKIP(s)) ) && ( 0xCA == ((const U8*)s)[0] ) ) ? ( ( 0x41 == ((const U8*)s)[1] ) ?\ 2470 ( ( inRANGE_helper_(U8, ((const U8*)s)[2], 0x55, 0x56) ) ? 3 : 0 )\ 2471 : ( ( 0x42 == ((const U8*)s)[1] ) && ( inRANGE_helper_(U8, ((const U8*)s)[2], 0x49, 0x4A) ) ) ? 3 : 0 ) : 0 )\ 2472 : 0 ) 2473 2474 /* 2475 HANGUL_ED: Hangul syllables whose first UTF-8 byte is \xED 2476 2477 0x1 - 0x0 2478 */ 2479 /*** GENERATED CODE ***/ 2480 #define is_HANGUL_ED_utf8_safe(s,e) \ 2481 ( 0 ) 2482 2483 #endif /* EBCDIC 1047 */ 2484 2485 #if 'A' == 193 /* EBCDIC 037 */ \ 2486 && '\\' == 224 && '[' == 186 && ']' == 187 && '{' == 192 && '}' == 208 \ 2487 && '^' == 176 && '~' == 161 && '!' == 90 && '#' == 123 && '|' == 79 \ 2488 && '$' == 91 && '@' == 124 && '`' == 121 && '\n' == 37 2489 /* 2490 LNBREAK: Line Break: \R 2491 2492 "\x0D\x0A" # CRLF - Network (Windows) line ending 2493 \p{VertSpace} 2494 */ 2495 /*** GENERATED CODE ***/ 2496 #define is_LNBREAK_safe(s,e,is_utf8) \ 2497 ( ((e)-(s) > 2) ? \ 2498 ( ( inRANGE_helper_(U8, ((const U8*)s)[0], '\v', '\f') || 0x15 == ((const U8*)s)[0] || '\n' == ((const U8*)s)[0] ) ? 1\ 2499 : ( '\r' == ((const U8*)s)[0] ) ? \ 2500 ( ( '\n' == ((const U8*)s)[1] ) ? 2 : 1 ) \ 2501 : ( ( ( ( is_utf8 ) && ( 0xCA == ((const U8*)s)[0] ) ) && ( 0x42 == ((const U8*)s)[1] ) ) && ( inRANGE_helper_(U8, ((const U8*)s)[2], 0x49, 0x4A) ) ) ? 3 : 0 )\ 2502 : ((e)-(s) > 1) ? \ 2503 ( ( inRANGE_helper_(U8, ((const U8*)s)[0], '\v', '\f') || 0x15 == ((const U8*)s)[0] || '\n' == ((const U8*)s)[0] ) ? 1\ 2504 : ( '\r' == ((const U8*)s)[0] ) ? \ 2505 ( ( '\n' == ((const U8*)s)[1] ) ? 2 : 1 ) \ 2506 : 0 ) \ 2507 : ((e)-(s) > 0) ? \ 2508 ( inRANGE_helper_(U8, ((const U8*)s)[0], '\v', '\r') || 0x15 == ((const U8*)s)[0] || '\n' == ((const U8*)s)[0] )\ 2509 : 0 ) 2510 2511 /*** GENERATED CODE ***/ 2512 #define is_LNBREAK_utf8_safe(s,e) \ 2513 ( ((e)-(s) > 2) ? \ 2514 ( ( inRANGE_helper_(U8, ((const U8*)s)[0], '\v', '\f') || 0x15 == ((const U8*)s)[0] || '\n' == ((const U8*)s)[0] ) ? 1\ 2515 : ( '\r' == ((const U8*)s)[0] ) ? \ 2516 ( ( '\n' == ((const U8*)s)[1] ) ? 2 : 1 ) \ 2517 : ( ( ( 0xCA == ((const U8*)s)[0] ) && ( 0x42 == ((const U8*)s)[1] ) ) && ( inRANGE_helper_(U8, ((const U8*)s)[2], 0x49, 0x4A) ) ) ? 3 : 0 )\ 2518 : ((e)-(s) > 1) ? \ 2519 ( ( inRANGE_helper_(U8, ((const U8*)s)[0], '\v', '\f') || 0x15 == ((const U8*)s)[0] || '\n' == ((const U8*)s)[0] ) ? 1\ 2520 : ( '\r' == ((const U8*)s)[0] ) ? \ 2521 ( ( '\n' == ((const U8*)s)[1] ) ? 2 : 1 ) \ 2522 : 0 ) \ 2523 : ((e)-(s) > 0) ? \ 2524 ( inRANGE_helper_(U8, ((const U8*)s)[0], '\v', '\r') || 0x15 == ((const U8*)s)[0] || '\n' == ((const U8*)s)[0] )\ 2525 : 0 ) 2526 2527 /*** GENERATED CODE ***/ 2528 #define is_LNBREAK_latin1_safe(s,e) \ 2529 ( ((e)-(s) > 1) ? \ 2530 ( ( inRANGE_helper_(U8, ((const U8*)s)[0], '\v', '\f') || 0x15 == ((const U8*)s)[0] || '\n' == ((const U8*)s)[0] ) ? 1\ 2531 : ( '\r' == ((const U8*)s)[0] ) ? \ 2532 ( ( '\n' == ((const U8*)s)[1] ) ? 2 : 1 ) \ 2533 : 0 ) \ 2534 : ((e)-(s) > 0) ? \ 2535 ( inRANGE_helper_(U8, ((const U8*)s)[0], '\v', '\r') || 0x15 == ((const U8*)s)[0] || '\n' == ((const U8*)s)[0] )\ 2536 : 0 ) 2537 2538 /* 2539 HORIZWS: Horizontal Whitespace: \h \H 2540 2541 \p{HorizSpace} 2542 */ 2543 /*** GENERATED CODE ***/ 2544 #define is_HORIZWS_high(s) \ 2545 ( ( 0xBD == ((const U8*)s)[0] ) ? \ 2546 ( ( ( 0x62 == ((const U8*)s)[1] ) && ( 0x41 == ((const U8*)s)[2] ) ) ? 3 : 0 )\ 2547 : ( 0xCA == ((const U8*)s)[0] ) ? \ 2548 ( ( 0x41 == ((const U8*)s)[1] ) ? \ 2549 ( ( inRANGE_helper_(U8, NATIVE_UTF8_TO_I8(((const U8*)s)[2]), 0xA0, 0xAA) ) ? 3 : 0 )\ 2550 : ( 0x42 == ((const U8*)s)[1] ) ? \ 2551 ( ( 0x56 == ((const U8*)s)[2] ) ? 3 : 0 ) \ 2552 : ( ( 0x43 == ((const U8*)s)[1] ) && ( 0x72 == ((const U8*)s)[2] ) ) ? 3 : 0 )\ 2553 : ( ( ( 0xCE == ((const U8*)s)[0] ) && ( 0x41 == ((const U8*)s)[1] ) ) && ( 0x41 == ((const U8*)s)[2] ) ) ? 3 : 0 ) 2554 2555 /*** GENERATED CODE ***/ 2556 #define is_HORIZWS_cp_high(cp) \ 2557 ( 0x1680 == cp || ( 0x1680 < cp && \ 2558 ( inRANGE_helper_(UV, cp, 0x2000, 0x200A) || ( 0x200A < cp && \ 2559 ( 0x202F == cp || ( 0x202F < cp && \ 2560 ( 0x205F == cp || 0x3000 == cp ) ) ) ) ) ) ) 2561 2562 /* 2563 VERTWS: Vertical Whitespace: \v \V 2564 2565 \p{VertSpace} 2566 */ 2567 /*** GENERATED CODE ***/ 2568 #define is_VERTWS_high(s) \ 2569 ( ( ( ( 0xCA == ((const U8*)s)[0] ) && ( 0x42 == ((const U8*)s)[1] ) ) && ( inRANGE_helper_(U8, ((const U8*)s)[2], 0x49, 0x4A) ) ) ? 3 : 0 ) 2570 2571 /*** GENERATED CODE ***/ 2572 #define is_VERTWS_cp_high(cp) \ 2573 ( inRANGE_helper_(UV, cp, 0x2028, 0x2029) ) 2574 2575 /* 2576 XDIGIT: Hexadecimal digits 2577 2578 \p{XDigit} 2579 */ 2580 /*** GENERATED CODE ***/ 2581 #define is_XDIGIT_high(s) \ 2582 ( ( ( 0xDD == ((const U8*)s)[0] ) && ( 0x72 == ((const U8*)s)[1] ) ) ? ( ( 0x66 == ((const U8*)s)[2] ) ?\ 2583 ( ( inRANGE_helper_(U8, NATIVE_UTF8_TO_I8(((const U8*)s)[3]), 0xB0, 0xB9) ) ? 4 : 0 )\ 2584 : ( ( inRANGE_helper_(U8, ((const U8*)s)[2], 0x67, 0x68) ) && ( inRANGE_helper_(U8, ((const U8*)s)[3], 0x42, 0x47) ) ) ? 4 : 0 ) : 0 ) 2585 2586 /*** GENERATED CODE ***/ 2587 #define is_XDIGIT_cp_high(cp) \ 2588 ( inRANGE_helper_(UV, cp, 0xFF10, 0xFF19) || ( 0xFF19 < cp && \ 2589 ( inRANGE_helper_(UV, cp, 0xFF21, 0xFF26) || inRANGE_helper_(UV, cp, 0xFF41, 0xFF46) ) ) ) 2590 2591 /* 2592 XPERLSPACE: \p{XPerlSpace} 2593 2594 \p{XPerlSpace} 2595 */ 2596 /*** GENERATED CODE ***/ 2597 #define is_XPERLSPACE_high(s) \ 2598 ( ( 0xBD == ((const U8*)s)[0] ) ? \ 2599 ( ( ( 0x62 == ((const U8*)s)[1] ) && ( 0x41 == ((const U8*)s)[2] ) ) ? 3 : 0 )\ 2600 : ( 0xCA == ((const U8*)s)[0] ) ? \ 2601 ( ( 0x41 == ((const U8*)s)[1] ) ? \ 2602 ( ( inRANGE_helper_(U8, NATIVE_UTF8_TO_I8(((const U8*)s)[2]), 0xA0, 0xAA) ) ? 3 : 0 )\ 2603 : ( 0x42 == ((const U8*)s)[1] ) ? \ 2604 ( ( inRANGE_helper_(U8, ((const U8*)s)[2], 0x49, 0x4A) || 0x56 == ((const U8*)s)[2] ) ? 3 : 0 )\ 2605 : ( ( 0x43 == ((const U8*)s)[1] ) && ( 0x72 == ((const U8*)s)[2] ) ) ? 3 : 0 )\ 2606 : ( ( ( 0xCE == ((const U8*)s)[0] ) && ( 0x41 == ((const U8*)s)[1] ) ) && ( 0x41 == ((const U8*)s)[2] ) ) ? 3 : 0 ) 2607 2608 /*** GENERATED CODE ***/ 2609 #define is_XPERLSPACE_cp_high(cp) \ 2610 ( 0x1680 == cp || ( 0x1680 < cp && \ 2611 ( inRANGE_helper_(UV, cp, 0x2000, 0x200A) || ( 0x200A < cp && \ 2612 ( inRANGE_helper_(UV, cp, 0x2028, 0x2029) || ( 0x2029 < cp && \ 2613 ( 0x202F == cp || ( 0x202F < cp && \ 2614 ( 0x205F == cp || 0x3000 == cp ) ) ) ) ) ) ) ) ) 2615 2616 /* 2617 NONCHAR: Non character code points 2618 2619 \p{_Perl_Nchar} 2620 */ 2621 /*** GENERATED CODE ***/ 2622 #define is_NONCHAR_utf8_safe(s,e) \ 2623 ( ( ( LIKELY((e) > (s)) ) && ( LIKELY(((e) - (s)) >= UTF8SKIP(s)) ) ) ? ( ( 0xDD == ((const U8*)s)[0] ) ?\ 2624 ( ( 0x72 == ((const U8*)s)[1] ) ? \ 2625 ( ( 0x55 == ((const U8*)s)[2] ) ? \ 2626 ( ( inRANGE_helper_(U8, NATIVE_UTF8_TO_I8(((const U8*)s)[3]), 0xB0, 0xBF) ) ? 4 : 0 )\ 2627 : ( 0x56 == ((const U8*)s)[2] ) ? \ 2628 ( ( inRANGE_helper_(U8, NATIVE_UTF8_TO_I8(((const U8*)s)[3]), 0xA0, 0xAF) ) ? 4 : 0 )\ 2629 : ( ( 0x72 == ((const U8*)s)[2] ) && ( inRANGE_helper_(U8, ((const U8*)s)[3], 0x71, 0x72) ) ) ? 4 : 0 )\ 2630 : 0 ) \ 2631 : ( ((const U8*)s)[0] == 0xDF || ( ( NATIVE_UTF8_TO_I8(((const U8*)s)[0]) & 0xFD ) == 0xF5 ) ) ?\ 2632 ( ( ( ( 0x72 == ((const U8*)s)[1] ) && ( 0x72 == ((const U8*)s)[2] ) ) && ( inRANGE_helper_(U8, ((const U8*)s)[3], 0x71, 0x72) ) ) ? 4 : 0 )\ 2633 : ( 0xED == ((const U8*)s)[0] ) ? \ 2634 ( ( ( ( ( ( ( NATIVE_UTF8_TO_I8(((const U8*)s)[1]) & 0xF9 ) == 0xA9 ) || ( ( NATIVE_UTF8_TO_I8(((const U8*)s)[1]) & 0xF1 ) == 0xB1 ) ) && ( 0x72 == ((const U8*)s)[2] ) ) && ( 0x72 == ((const U8*)s)[3] ) ) && ( inRANGE_helper_(U8, ((const U8*)s)[4], 0x71, 0x72) ) ) ? 5 : 0 )\ 2635 : ( ( ( ( ( 0xEE == ((const U8*)s)[0] ) && ( 0x42 == ((const U8*)s)[1] ) ) && ( 0x72 == ((const U8*)s)[2] ) ) && ( 0x72 == ((const U8*)s)[3] ) ) && ( inRANGE_helper_(U8, ((const U8*)s)[4], 0x71, 0x72) ) ) ? 5 : 0 ) : 0 ) 2636 2637 /* 2638 SHORTER_NON_CHARS: # 4 bytes 2639 2640 0xFDD0 - 0xFDEF 2641 0xFFFE - 0xFFFF 2642 0x1FFFE - 0x1FFFF 2643 0x2FFFE - 0x2FFFF 2644 0x3FFFE - 0x3FFFF 2645 */ 2646 /*** GENERATED CODE ***/ 2647 #define is_SHORTER_NON_CHARS_utf8(s) \ 2648 ( ( 0xDD == ((const U8*)s)[0] ) ? \ 2649 ( ( 0x72 == ((const U8*)s)[1] ) ? \ 2650 ( ( 0x55 == ((const U8*)s)[2] ) ? \ 2651 ( ( inRANGE_helper_(U8, NATIVE_UTF8_TO_I8(((const U8*)s)[3]), 0xB0, 0xBF) ) ? 4 : 0 )\ 2652 : ( 0x56 == ((const U8*)s)[2] ) ? \ 2653 ( ( inRANGE_helper_(U8, NATIVE_UTF8_TO_I8(((const U8*)s)[3]), 0xA0, 0xAF) ) ? 4 : 0 )\ 2654 : ( ( 0x72 == ((const U8*)s)[2] ) && ( inRANGE_helper_(U8, ((const U8*)s)[3], 0x71, 0x72) ) ) ? 4 : 0 )\ 2655 : 0 ) \ 2656 : ( ( ( ( ((const U8*)s)[0] == 0xDF || ( ( NATIVE_UTF8_TO_I8(((const U8*)s)[0]) & 0xFD ) == 0xF5 ) ) && ( 0x72 == ((const U8*)s)[1] ) ) && ( 0x72 == ((const U8*)s)[2] ) ) && ( inRANGE_helper_(U8, ((const U8*)s)[3], 0x71, 0x72) ) ) ? 4 : 0 ) 2657 2658 /* 2659 LARGER_NON_CHARS: # 5 bytes 2660 2661 0x4FFFE - 0x4FFFF 2662 0x5FFFE - 0x5FFFF 2663 0x6FFFE - 0x6FFFF 2664 0x7FFFE - 0x7FFFF 2665 0x8FFFE - 0x8FFFF 2666 0x9FFFE - 0x9FFFF 2667 0xAFFFE - 0xAFFFF 2668 0xBFFFE - 0xBFFFF 2669 0xCFFFE - 0xCFFFF 2670 0xDFFFE - 0xDFFFF 2671 0xEFFFE - 0xEFFFF 2672 0xFFFFE - 0xFFFFF 2673 0x10FFFE - 0x10FFFF 2674 */ 2675 /*** GENERATED CODE ***/ 2676 #define is_LARGER_NON_CHARS_utf8(s) \ 2677 ( ( 0xED == ((const U8*)s)[0] ) ? \ 2678 ( ( ( ( ( ( ( NATIVE_UTF8_TO_I8(((const U8*)s)[1]) & 0xF9 ) == 0xA9 ) || ( ( NATIVE_UTF8_TO_I8(((const U8*)s)[1]) & 0xF1 ) == 0xB1 ) ) && ( 0x72 == ((const U8*)s)[2] ) ) && ( 0x72 == ((const U8*)s)[3] ) ) && ( inRANGE_helper_(U8, ((const U8*)s)[4], 0x71, 0x72) ) ) ? 5 : 0 )\ 2679 : ( ( ( ( ( 0xEE == ((const U8*)s)[0] ) && ( 0x42 == ((const U8*)s)[1] ) ) && ( 0x72 == ((const U8*)s)[2] ) ) && ( 0x72 == ((const U8*)s)[3] ) ) && ( inRANGE_helper_(U8, ((const U8*)s)[4], 0x71, 0x72) ) ) ? 5 : 0 ) 2680 2681 /* 2682 SURROGATE: Surrogate code points 2683 2684 \p{_Perl_Surrogate} 2685 */ 2686 /*** GENERATED CODE ***/ 2687 #define is_SURROGATE_utf8(s) \ 2688 ( ( ( 0xDD == ((const U8*)s)[0] ) && ( inRANGE_helper_(U8, ((const U8*)s)[1], 0x64, 0x65) ) ) ? 4 : 0 ) 2689 2690 /*** GENERATED CODE ***/ 2691 #define is_SURROGATE_utf8_safe(s,e) \ 2692 ( ( ( ( ( ( ((e) - (s)) >= 4 ) && ( 0xDD == ((const U8*)s)[0] ) ) && ( inRANGE_helper_(U8, ((const U8*)s)[1], 0x64, 0x65) ) ) && ( inRANGE_helper_(U8, NATIVE_UTF8_TO_I8(((const U8*)s)[2]), 0xA0, 0xBF) ) ) && ( inRANGE_helper_(U8, NATIVE_UTF8_TO_I8(((const U8*)s)[3]), 0xA0, 0xBF) ) ) ? 4 : 0 ) 2693 2694 /* 2695 QUOTEMETA: Meta-characters that \Q should quote 2696 2697 \p{_Perl_Quotemeta} 2698 */ 2699 /*** GENERATED CODE ***/ 2700 #define is_QUOTEMETA_high(s) \ 2701 ( ( 0xAF == ((const U8*)s)[0] ) ? \ 2702 ( ( 0x56 == ((const U8*)s)[1] ) ? 2 : 0 ) \ 2703 : ( 0xB7 == ((const U8*)s)[0] ) ? \ 2704 ( ( ( 0x57 == ((const U8*)s)[1] ) && ( 0x6A == ((const U8*)s)[2] ) ) ? 3 : 0 )\ 2705 : ( 0xBC == ((const U8*)s)[0] ) ? \ 2706 ( ( 0x51 == ((const U8*)s)[1] ) ? \ 2707 ( ( 0x72 == ((const U8*)s)[2] ) ? 3 : 0 ) \ 2708 : ( ( 0x52 == ((const U8*)s)[1] ) && ( 0x41 == ((const U8*)s)[2] ) ) ? 3 : 0 )\ 2709 : ( 0xBD == ((const U8*)s)[0] ) ? \ 2710 ( ( 0x62 == ((const U8*)s)[1] ) ? \ 2711 ( ( 0x41 == ((const U8*)s)[2] ) ? 3 : 0 ) \ 2712 : ( ( 0x70 == ((const U8*)s)[1] ) && ( inRANGE_helper_(U8, ((const U8*)s)[2], 0x62, 0x63) ) ) ? 3 : 0 )\ 2713 : ( 0xBE == ((const U8*)s)[0] ) ? \ 2714 ( ( ( 0x41 == ((const U8*)s)[1] ) && ( inRANGE_helper_(U8, ((const U8*)s)[2], 0x52, 0x56) ) ) ? 3 : 0 )\ 2715 : ( 0xCA == ((const U8*)s)[0] ) ? \ 2716 ( ( 0x41 == ((const U8*)s)[1] || inRANGE_helper_(U8, NATIVE_UTF8_TO_I8(((const U8*)s)[1]), 0xAD, 0xBF) ) ?\ 2717 3 \ 2718 : ( 0x42 == ((const U8*)s)[1] ) ? \ 2719 ( ( inRANGE_helper_(U8, NATIVE_UTF8_TO_I8(((const U8*)s)[2]), 0xA0, 0xBE) ) ? 3 : 0 )\ 2720 : ( 0x43 == ((const U8*)s)[1] ) ? \ 2721 ( ( inRANGE_helper_(U8, NATIVE_UTF8_TO_I8(((const U8*)s)[2]), 0xA1, 0xB3) || inRANGE_helper_(U8, NATIVE_UTF8_TO_I8(((const U8*)s)[2]), 0xB5, 0xBF) ) ? 3 : 0 )\ 2722 : ( 0x44 == ((const U8*)s)[1] ) ? \ 2723 ( ( inRANGE_helper_(U8, NATIVE_UTF8_TO_I8(((const U8*)s)[2]), 0xA0, 0xAF) ) ? 3 : 0 )\ 2724 : ( ( 0x53 == ((const U8*)s)[1] ) && ( inRANGE_helper_(U8, NATIVE_UTF8_TO_I8(((const U8*)s)[2]), 0xB0, 0xBF) ) ) ? 3 : 0 )\ 2725 : ( 0xCB == ((const U8*)s)[0] ) ? \ 2726 ( ( inRANGE_helper_(U8, NATIVE_UTF8_TO_I8(((const U8*)s)[1]), 0xA0, 0xA2) || inRANGE_helper_(U8, NATIVE_UTF8_TO_I8(((const U8*)s)[1]), 0xA8, 0xBA) || inRANGE_helper_(U8, NATIVE_UTF8_TO_I8(((const U8*)s)[1]), 0xBD, 0xBF) ) ?\ 2727 3 \ 2728 : ( 0x69 == ((const U8*)s)[1] ) ? \ 2729 ( ( inRANGE_helper_(U8, NATIVE_UTF8_TO_I8(((const U8*)s)[2]), 0xA0, 0xB5) ) ? 3 : 0 )\ 2730 : ( ( 0x6A == ((const U8*)s)[1] ) && ( inRANGE_helper_(U8, NATIVE_UTF8_TO_I8(((const U8*)s)[2]), 0xB4, 0xBF) ) ) ? 3 : 0 )\ 2731 : ( 0xCC == ((const U8*)s)[0] ) ? \ 2732 3 \ 2733 : ( 0xCD == ((const U8*)s)[0] ) ? \ 2734 ( ( inRANGE_helper_(U8, NATIVE_UTF8_TO_I8(((const U8*)s)[1]), 0xB0, 0xB3) ) ?\ 2735 3 \ 2736 : 0 ) \ 2737 : ( 0xCE == ((const U8*)s)[0] ) ? \ 2738 ( ( 0x41 == ((const U8*)s)[1] ) ? \ 2739 ( ( inRANGE_helper_(U8, NATIVE_UTF8_TO_I8(((const U8*)s)[2]), 0xA0, 0xA3) || inRANGE_helper_(U8, NATIVE_UTF8_TO_I8(((const U8*)s)[2]), 0xA8, 0xBF) ) ? 3 : 0 )\ 2740 : ( 0x42 == ((const U8*)s)[1] ) ? \ 2741 ( ( ( NATIVE_UTF8_TO_I8(((const U8*)s)[2]) & 0xEF ) == 0xA0 ) ? 3 : 0 )\ 2742 : ( ( 0x52 == ((const U8*)s)[1] ) && ( 0x45 == ((const U8*)s)[2] ) ) ? 3 : 0 )\ 2743 : ( 0xDD == ((const U8*)s)[0] ) ? \ 2744 ( ( 0x72 == ((const U8*)s)[1] ) ? \ 2745 ( ( 0x4A == ((const U8*)s)[2] ) ? \ 2746 ( ( inRANGE_helper_(U8, ((const U8*)s)[3], 0x71, 0x72) ) ? 4 : 0 )\ 2747 : ( 0x57 == ((const U8*)s)[2] ) ? \ 2748 ( ( inRANGE_helper_(U8, NATIVE_UTF8_TO_I8(((const U8*)s)[3]), 0xA0, 0xAF) ) ? 4 : 0 )\ 2749 : ( 0x59 == ((const U8*)s)[2] ) ? \ 2750 ( ( inRANGE_helper_(U8, ((const U8*)s)[3], 0x46, 0x47) ) ? 4 : 0 )\ 2751 : ( 0x65 == ((const U8*)s)[2] ) ? \ 2752 ( ( 0x72 == ((const U8*)s)[3] ) ? 4 : 0 ) \ 2753 : ( 0x70 == ((const U8*)s)[2] ) ? \ 2754 ( ( 0x41 == ((const U8*)s)[3] ) ? 4 : 0 ) \ 2755 : ( ( 0x72 == ((const U8*)s)[2] ) && ( inRANGE_helper_(U8, NATIVE_UTF8_TO_I8(((const U8*)s)[3]), 0xB0, 0xB8) ) ) ? 4 : 0 )\ 2756 : 0 ) \ 2757 : ( 0xDF == ((const U8*)s)[0] ) ? \ 2758 ( ( 0x56 == ((const U8*)s)[1] ) ? \ 2759 ( ( ( 0x46 == ((const U8*)s)[2] ) && ( inRANGE_helper_(U8, ((const U8*)s)[3], 0x41, 0x44) ) ) ? 4 : 0 )\ 2760 : ( ( ( 0x62 == ((const U8*)s)[1] ) && ( 0x52 == ((const U8*)s)[2] ) ) && ( inRANGE_helper_(U8, NATIVE_UTF8_TO_I8(((const U8*)s)[3]), 0xB3, 0xBA) ) ) ? 4 : 0 )\ 2761 : ( ( ( 0xED == ((const U8*)s)[0] ) && ( 0x6A == ((const U8*)s)[1] ) ) && ( inRANGE_helper_(U8, ((const U8*)s)[2], 0x41, 0x44) ) ) ? 5 : 0 ) 2762 2763 /* 2764 MULTI_CHAR_FOLD: multi-char strings that are folded to by a single character 2765 2766 %regcharclass_multi_char_folds::multi_char_folds('u', 'a') 2767 */ 2768 /*** GENERATED CODE ***/ 2769 #define is_MULTI_CHAR_FOLD_utf8_safe_part0_(s,e) \ 2770 ( ( ( 0xAD == ((const U8*)s)[1] ) && ( 0x48 == ((const U8*)s)[2] ) ) ? 3 : 0 ) 2771 2772 2773 /*** GENERATED CODE ***/ 2774 #define is_MULTI_CHAR_FOLD_utf8_safe_part1_(s,e) \ 2775 ( ( 0x8E == ((const U8*)s)[0] ) ? \ 2776 ( ( 0x72 == ((const U8*)s)[1] ) ? \ 2777 ( ( 0x8E == ((const U8*)s)[2] ) ? \ 2778 ( ( 0x72 == ((const U8*)s)[3] ) ? 4 : 0 ) \ 2779 : ( ( ((const U8*)s)[2] & 0xBE ) == 's' ) ? 3 : 0 ) \ 2780 : 0 ) \ 2781 : ( ( ((const U8*)s)[0] & 0xBF ) == 'j' ) ? \ 2782 ( ( ( 0xAD == ((const U8*)s)[1] ) && ( 0x53 == ((const U8*)s)[2] ) ) ? 3 : 0 )\ 2783 : ( ( ((const U8*)s)[0] & 0xBF ) == 's' ) ? \ 2784 ( ( 0x8E == ((const U8*)s)[1] ) ? \ 2785 ( ( 0x72 == ((const U8*)s)[2] ) ? 3 : 0 ) \ 2786 : ( ( ((const U8*)s)[1] & 0xBE ) == 's' ) ? 2 : 0 ) \ 2787 : ( ( ((const U8*)s)[0] & 0xBF ) == 't' ) ? \ 2788 ( ( ( 0xAD == ((const U8*)s)[1] ) && ( 0x49 == ((const U8*)s)[2] ) ) ? 3 : 0 )\ 2789 : ( ( ( ((const U8*)s)[0] & 0xBF ) == 'w' ) || ( ( ((const U8*)s)[0] & 0xBF ) == 'y' ) ) ?\ 2790 ( ( ( 0xAD == ((const U8*)s)[1] ) && ( 0x51 == ((const U8*)s)[2] ) ) ? 3 : 0 )\ 2791 : ( 0xAA == ((const U8*)s)[0] ) ? \ 2792 ( ( ( 0x6A == ((const U8*)s)[1] ) && ( ( ((const U8*)s)[2] & 0xBF ) == 'n' ) ) ? 3 : 0 )\ 2793 : ( 0xB3 == ((const U8*)s)[0] ) ? \ 2794 ( ( ( NATIVE_UTF8_TO_I8(((const U8*)s)[1]) & 0xFD ) == 0xAC ) ? \ 2795 ( ( ( 0xB3 == ((const U8*)s)[2] ) && ( 0x67 == ((const U8*)s)[3] ) ) ? 4 : 0 )\ 2796 : ( 0x58 == ((const U8*)s)[1] || 0x65 == ((const U8*)s)[1] ) ? \ 2797 ( ( 0xAF == ((const U8*)s)[2] ) ? \ 2798 ( ( 0x43 == ((const U8*)s)[3] ) ? \ 2799 ( ( ( 0xB3 == ((const U8*)s)[4] ) && ( 0x67 == ((const U8*)s)[5] ) ) ? 6 : 4 )\ 2800 : 0 ) \ 2801 : ( ( 0xB3 == ((const U8*)s)[2] ) && ( 0x67 == ((const U8*)s)[3] ) ) ? 4 : 0 )\ 2802 : ( 0x67 == ((const U8*)s)[1] ) ? \ 2803 ( ( 0xAD == ((const U8*)s)[2] ) ? \ 2804 ( ( 0x49 == ((const U8*)s)[3] ) ? \ 2805 ( ( 0xAD == ((const U8*)s)[4] ) ? \ 2806 ( ( inRANGE_helper_(U8, ((const U8*)s)[5], 0x41, 0x42) ) ? 6 : 0 )\ 2807 : ( ( 0xAF == ((const U8*)s)[4] ) && ( 0x43 == ((const U8*)s)[5] ) ) ? 6 : 0 )\ 2808 : 0 ) \ 2809 : ( ( 0xAF == ((const U8*)s)[2] ) && ( 0x43 == ((const U8*)s)[3] ) ) ? 4 : 0 )\ 2810 : 0 ) \ 2811 : ( 0xB4 == ((const U8*)s)[0] ) ? \ 2812 ( ( 0x42 == ((const U8*)s)[1] ) ? \ 2813 ( ( ( 0xAD == ((const U8*)s)[2] ) && ( 0x5F == ((const U8*)s)[3] ) ) ? 4 : 0 )\ 2814 : ( 0x46 == ((const U8*)s)[1] ) ? \ 2815 ( ( 0xAD == ((const U8*)s)[2] ) ? \ 2816 ( ( 0x49 == ((const U8*)s)[3] ) ? \ 2817 ( ( 0xAD == ((const U8*)s)[4] ) ? \ 2818 ( ( inRANGE_helper_(U8, ((const U8*)s)[5], 0x41, 0x42) ) ? 6 : 0 )\ 2819 : ( ( 0xAF == ((const U8*)s)[4] ) && ( 0x43 == ((const U8*)s)[5] ) ) ? 6 : 0 )\ 2820 : ( 0x5F == ((const U8*)s)[3] ) ? \ 2821 ( ( 0xAD == ((const U8*)s)[4] ) ? \ 2822 ( ( inRANGE_helper_(U8, ((const U8*)s)[5], 0x41, 0x42) ) ? 6 : 4 )\ 2823 : ( ( 0xAF == ((const U8*)s)[4] ) && ( 0x43 == ((const U8*)s)[5] ) ) ? 6 : 4 )\ 2824 : 0 ) \ 2825 : ( ( 0xAF == ((const U8*)s)[2] ) && ( 0x43 == ((const U8*)s)[3] ) ) ? 4 : 0 )\ 2826 : ( 0x4A == ((const U8*)s)[1] ) ? \ 2827 ( ( 0xAF == ((const U8*)s)[2] ) ? \ 2828 ( ( 0x43 == ((const U8*)s)[3] ) ? \ 2829 ( ( ( 0xB3 == ((const U8*)s)[4] ) && ( 0x67 == ((const U8*)s)[5] ) ) ? 6 : 4 )\ 2830 : 0 ) \ 2831 : ( ( 0xB3 == ((const U8*)s)[2] ) && ( 0x67 == ((const U8*)s)[3] ) ) ? 4 : 0 )\ 2832 : ( ( ( 0x55 == ((const U8*)s)[1] ) && ( 0xB3 == ((const U8*)s)[2] ) ) && ( 0x67 == ((const U8*)s)[3] ) ) ? 4 : 0 )\ 2833 : ( 0xB7 == ((const U8*)s)[0] ) ? \ 2834 ( ( 0x52 == ((const U8*)s)[1] ) ? \ 2835 ( ( 0x46 == ((const U8*)s)[2] ) ? \ 2836 ( ( ( ( 0xB7 == ((const U8*)s)[3] ) && ( 0x53 == ((const U8*)s)[4] ) ) && ( 0x43 == ((const U8*)s)[5] ) ) ? 6 : 0 )\ 2837 : ( 0x62 == ((const U8*)s)[2] ) ? \ 2838 ( ( ( ( 0xB7 == ((const U8*)s)[3] ) && ( 0x52 == ((const U8*)s)[4] ) ) && ( ( ( NATIVE_UTF8_TO_I8(((const U8*)s)[5]) & 0xF7 ) == 0xA5 ) || ((const U8*)s)[5] == 0x52 || ((const U8*)s)[5] == 0x64 ) ) ? 6 : 0 )\ 2839 : ( ( ( ( 0x71 == ((const U8*)s)[2] ) && ( 0xB7 == ((const U8*)s)[3] ) ) && ( 0x52 == ((const U8*)s)[4] ) ) && ( 0x64 == ((const U8*)s)[5] ) ) ? 6 : 0 )\ 2840 : 0 ) \ 2841 : ( 0xBF == ((const U8*)s)[0] ) ? \ 2842 ( ( inRANGE_helper_(U8, ((const U8*)s)[1], 0x66, 0x67) ) ? \ 2843 ( ( ( ( inRANGE_helper_(U8, ((const U8*)s)[2], 0x41, 0x48) ) && ( 0xB3 == ((const U8*)s)[3] ) ) && ( 0x67 == ((const U8*)s)[4] ) ) ? 5 : 0 )\ 2844 : ( ( ( ( 0x69 == ((const U8*)s)[1] ) && ( ( ( NATIVE_UTF8_TO_I8(((const U8*)s)[2]) & 0xF8 ) == 0xA0 ) || ( ( NATIVE_UTF8_TO_I8(((const U8*)s)[2]) & 0xFB ) == 0xB0 ) || ((const U8*)s)[2] == 0x6A ) ) && ( 0xB3 == ((const U8*)s)[3] ) ) && ( 0x67 == ((const U8*)s)[4] ) ) ? 5 : 0 )\ 2845 : 0 ) 2846 2847 2848 /*** GENERATED CODE ***/ 2849 #define is_MULTI_CHAR_FOLD_utf8_safe_part2_(s,e) \ 2850 ( ( ( ((const U8*)s)[0] & 0xBF ) == 'a' ) ? \ 2851 ( ( ( 0xAA == ((const U8*)s)[1] ) && ( 0x71 == ((const U8*)s)[2] ) ) ? 3 : 0 )\ 2852 : ( ( ((const U8*)s)[0] & 0xBF ) == 'f' ) ? \ 2853 ( ( ( ((const U8*)s)[1] & 0xBF ) == 'f' ) ? \ 2854 ( ( ( ( ((const U8*)s)[2] & 0xBF ) == 'i' ) || ( ( ((const U8*)s)[2] & 0xBF ) == 'l' ) ) ? 3 : 2 )\ 2855 : ( ( ( ((const U8*)s)[1] & 0xBF ) == 'i' ) || ( ( ((const U8*)s)[1] & 0xBF ) == 'l' ) ) ? 2 : 0 )\ 2856 : ( ( ((const U8*)s)[0] & 0xBF ) == 'h' ) ? \ 2857 ( ( ( 0xAE == ((const U8*)s)[1] ) && ( 0x58 == ((const U8*)s)[2] ) ) ? 3 : 0 )\ 2858 : ( ( ((const U8*)s)[0] & 0xBF ) == 'i' ) ? \ 2859 ( ( ( 0xAD == ((const U8*)s)[1] ) && ( 0x48 == ((const U8*)s)[2] ) ) ? 3 : 0 )\ 2860 : ( 0x8E == ((const U8*)s)[0] ) ? \ 2861 ( ( 0x72 == ((const U8*)s)[1] ) ? \ 2862 ( ( 0x8E == ((const U8*)s)[2] ) ? \ 2863 ( ( 0x72 == ((const U8*)s)[3] ) ? 4 : 0 ) \ 2864 : ( ( ((const U8*)s)[2] & 0xBE ) == 's' ) ? 3 : 0 ) \ 2865 : 0 ) \ 2866 : ( ( ((const U8*)s)[0] & 0xBF ) == 'j' ) ? \ 2867 ( ( ( 0xAD == ((const U8*)s)[1] ) && ( 0x53 == ((const U8*)s)[2] ) ) ? 3 : 0 )\ 2868 : ( ( ((const U8*)s)[0] & 0xBF ) == 's' ) ? \ 2869 ( ( 0x8E == ((const U8*)s)[1] ) ? \ 2870 ( ( 0x72 == ((const U8*)s)[2] ) ? 3 : 0 ) \ 2871 : ( ( ((const U8*)s)[1] & 0xBE ) == 's' ) ? 2 : 0 ) \ 2872 : ( ( ((const U8*)s)[0] & 0xBF ) == 't' ) ? \ 2873 ( ( ( 0xAD == ((const U8*)s)[1] ) && ( 0x49 == ((const U8*)s)[2] ) ) ? 3 : 0 )\ 2874 : ( ( ( ((const U8*)s)[0] & 0xBF ) == 'w' ) || ( ( ((const U8*)s)[0] & 0xBF ) == 'y' ) ) ?\ 2875 ( ( ( 0xAD == ((const U8*)s)[1] ) && ( 0x51 == ((const U8*)s)[2] ) ) ? 3 : 0 )\ 2876 : ( 0xAA == ((const U8*)s)[0] ) ? \ 2877 ( ( ( 0x6A == ((const U8*)s)[1] ) && ( ( ((const U8*)s)[2] & 0xBF ) == 'n' ) ) ? 3 : 0 )\ 2878 : ( 0xB3 == ((const U8*)s)[0] ) ? \ 2879 ( ( ( NATIVE_UTF8_TO_I8(((const U8*)s)[1]) & 0xFD ) == 0xAC ) ? \ 2880 ( ( ( 0xB3 == ((const U8*)s)[2] ) && ( 0x67 == ((const U8*)s)[3] ) ) ? 4 : 0 )\ 2881 : ( 0x58 == ((const U8*)s)[1] || 0x65 == ((const U8*)s)[1] ) ? \ 2882 ( ( 0xAF == ((const U8*)s)[2] ) ? \ 2883 ( ( 0x43 == ((const U8*)s)[3] ) ? 4 : 0 ) \ 2884 : ( ( 0xB3 == ((const U8*)s)[2] ) && ( 0x67 == ((const U8*)s)[3] ) ) ? 4 : 0 )\ 2885 : ( ( ( 0x67 == ((const U8*)s)[1] ) && ( 0xAF == ((const U8*)s)[2] ) ) && ( 0x43 == ((const U8*)s)[3] ) ) ? 4 : 0 )\ 2886 : ( 0xB4 == ((const U8*)s)[0] ) ? \ 2887 ( ( 0x42 == ((const U8*)s)[1] ) ? \ 2888 ( ( ( 0xAD == ((const U8*)s)[2] ) && ( 0x5F == ((const U8*)s)[3] ) ) ? 4 : 0 )\ 2889 : ( 0x46 == ((const U8*)s)[1] ) ? \ 2890 ( ( 0xAD == ((const U8*)s)[2] ) ? \ 2891 ( ( 0x5F == ((const U8*)s)[3] ) ? 4 : 0 ) \ 2892 : ( ( 0xAF == ((const U8*)s)[2] ) && ( 0x43 == ((const U8*)s)[3] ) ) ? 4 : 0 )\ 2893 : ( 0x4A == ((const U8*)s)[1] ) ? \ 2894 ( ( 0xAF == ((const U8*)s)[2] ) ? \ 2895 ( ( 0x43 == ((const U8*)s)[3] ) ? 4 : 0 ) \ 2896 : ( ( 0xB3 == ((const U8*)s)[2] ) && ( 0x67 == ((const U8*)s)[3] ) ) ? 4 : 0 )\ 2897 : ( ( ( 0x55 == ((const U8*)s)[1] ) && ( 0xB3 == ((const U8*)s)[2] ) ) && ( 0x67 == ((const U8*)s)[3] ) ) ? 4 : 0 )\ 2898 : ( 0xBF == ((const U8*)s)[0] ) ? \ 2899 ( ( inRANGE_helper_(U8, ((const U8*)s)[1], 0x66, 0x67) ) ? \ 2900 ( ( ( ( inRANGE_helper_(U8, ((const U8*)s)[2], 0x41, 0x48) ) && ( 0xB3 == ((const U8*)s)[3] ) ) && ( 0x67 == ((const U8*)s)[4] ) ) ? 5 : 0 )\ 2901 : ( ( ( ( 0x69 == ((const U8*)s)[1] ) && ( ( ( NATIVE_UTF8_TO_I8(((const U8*)s)[2]) & 0xF8 ) == 0xA0 ) || ( ( NATIVE_UTF8_TO_I8(((const U8*)s)[2]) & 0xFB ) == 0xB0 ) || ((const U8*)s)[2] == 0x6A ) ) && ( 0xB3 == ((const U8*)s)[3] ) ) && ( 0x67 == ((const U8*)s)[4] ) ) ? 5 : 0 )\ 2902 : 0 ) 2903 2904 2905 /*** GENERATED CODE ***/ 2906 #define is_MULTI_CHAR_FOLD_utf8_safe_part3_(s,e) \ 2907 ( ((e)-(s) > 3) ? \ 2908 ( ( ( ((const U8*)s)[0] & 0xBF ) == 'a' ) ? \ 2909 ( ( ( 0xAA == ((const U8*)s)[1] ) && ( 0x71 == ((const U8*)s)[2] ) ) ? 3 : 0 )\ 2910 : ( ( ((const U8*)s)[0] & 0xBF ) == 'f' ) ? \ 2911 ( ( ( ((const U8*)s)[1] & 0xBF ) == 'f' ) ? \ 2912 ( ( ( ( ((const U8*)s)[2] & 0xBF ) == 'i' ) || ( ( ((const U8*)s)[2] & 0xBF ) == 'l' ) ) ? 3 : 2 )\ 2913 : ( ( ( ((const U8*)s)[1] & 0xBF ) == 'i' ) || ( ( ((const U8*)s)[1] & 0xBF ) == 'l' ) ) ? 2 : 0 )\ 2914 : ( ( ((const U8*)s)[0] & 0xBF ) == 'h' ) ? \ 2915 ( ( ( 0xAE == ((const U8*)s)[1] ) && ( 0x58 == ((const U8*)s)[2] ) ) ? 3 : 0 )\ 2916 : ( ( ((const U8*)s)[0] & 0xBF ) == 'i' ) ? \ 2917 ( ( ( 0xAD == ((const U8*)s)[1] ) && ( 0x48 == ((const U8*)s)[2] ) ) ? 3 : 0 )\ 2918 : ( 0x8E == ((const U8*)s)[0] ) ? \ 2919 ( ( 0x72 == ((const U8*)s)[1] ) ? \ 2920 ( ( 0x8E == ((const U8*)s)[2] ) ? \ 2921 ( ( 0x72 == ((const U8*)s)[3] ) ? 4 : 0 ) \ 2922 : ( ( ((const U8*)s)[2] & 0xBE ) == 's' ) ? 3 : 0 ) \ 2923 : 0 ) \ 2924 : ( ( ((const U8*)s)[0] & 0xBF ) == 'j' ) ? \ 2925 ( ( ( 0xAD == ((const U8*)s)[1] ) && ( 0x53 == ((const U8*)s)[2] ) ) ? 3 : 0 )\ 2926 : ( ( ((const U8*)s)[0] & 0xBF ) == 's' ) ? \ 2927 ( ( 0x8E == ((const U8*)s)[1] ) ? \ 2928 ( ( 0x72 == ((const U8*)s)[2] ) ? 3 : 0 ) \ 2929 : ( ( ((const U8*)s)[1] & 0xBE ) == 's' ) ? 2 : 0 ) \ 2930 : ( ( ((const U8*)s)[0] & 0xBF ) == 't' ) ? \ 2931 ( ( ( 0xAD == ((const U8*)s)[1] ) && ( 0x49 == ((const U8*)s)[2] ) ) ? 3 : 0 )\ 2932 : ( ( ( ((const U8*)s)[0] & 0xBF ) == 'w' ) || ( ( ((const U8*)s)[0] & 0xBF ) == 'y' ) ) ?\ 2933 ( ( ( 0xAD == ((const U8*)s)[1] ) && ( 0x51 == ((const U8*)s)[2] ) ) ? 3 : 0 )\ 2934 : ( 0xAA == ((const U8*)s)[0] ) ? \ 2935 ( ( ( 0x6A == ((const U8*)s)[1] ) && ( ( ((const U8*)s)[2] & 0xBF ) == 'n' ) ) ? 3 : 0 )\ 2936 : ( 0xB3 == ((const U8*)s)[0] ) ? \ 2937 ( ( ( NATIVE_UTF8_TO_I8(((const U8*)s)[1]) & 0xFD ) == 0xAC ) ? \ 2938 ( ( ( 0xB3 == ((const U8*)s)[2] ) && ( 0x67 == ((const U8*)s)[3] ) ) ? 4 : 0 )\ 2939 : ( 0x58 == ((const U8*)s)[1] || 0x65 == ((const U8*)s)[1] ) ? \ 2940 ( ( 0xAF == ((const U8*)s)[2] ) ? \ 2941 ( ( 0x43 == ((const U8*)s)[3] ) ? 4 : 0 ) \ 2942 : ( ( 0xB3 == ((const U8*)s)[2] ) && ( 0x67 == ((const U8*)s)[3] ) ) ? 4 : 0 )\ 2943 : ( ( ( 0x67 == ((const U8*)s)[1] ) && ( 0xAF == ((const U8*)s)[2] ) ) && ( 0x43 == ((const U8*)s)[3] ) ) ? 4 : 0 )\ 2944 : ( 0xB4 == ((const U8*)s)[0] ) ? \ 2945 ( ( 0x42 == ((const U8*)s)[1] ) ? \ 2946 ( ( ( 0xAD == ((const U8*)s)[2] ) && ( 0x5F == ((const U8*)s)[3] ) ) ? 4 : 0 )\ 2947 : ( 0x46 == ((const U8*)s)[1] ) ? \ 2948 ( ( 0xAD == ((const U8*)s)[2] ) ? \ 2949 ( ( 0x5F == ((const U8*)s)[3] ) ? 4 : 0 ) \ 2950 : ( ( 0xAF == ((const U8*)s)[2] ) && ( 0x43 == ((const U8*)s)[3] ) ) ? 4 : 0 )\ 2951 : ( 0x4A == ((const U8*)s)[1] ) ? \ 2952 ( ( 0xAF == ((const U8*)s)[2] ) ? \ 2953 ( ( 0x43 == ((const U8*)s)[3] ) ? 4 : 0 ) \ 2954 : ( ( 0xB3 == ((const U8*)s)[2] ) && ( 0x67 == ((const U8*)s)[3] ) ) ? 4 : 0 )\ 2955 : ( ( ( 0x55 == ((const U8*)s)[1] ) && ( 0xB3 == ((const U8*)s)[2] ) ) && ( 0x67 == ((const U8*)s)[3] ) ) ? 4 : 0 )\ 2956 : 0 ) \ 2957 : ((e)-(s) > 2) ? \ 2958 ( ( ( ((const U8*)s)[0] & 0xBF ) == 'a' ) ? \ 2959 ( ( ( 0xAA == ((const U8*)s)[1] ) && ( 0x71 == ((const U8*)s)[2] ) ) ? 3 : 0 )\ 2960 : ( ( ((const U8*)s)[0] & 0xBF ) == 'f' ) ? \ 2961 ( ( ( ((const U8*)s)[1] & 0xBF ) == 'f' ) ? \ 2962 ( ( ( ( ((const U8*)s)[2] & 0xBF ) == 'i' ) || ( ( ((const U8*)s)[2] & 0xBF ) == 'l' ) ) ? 3 : 2 )\ 2963 : ( ( ( ((const U8*)s)[1] & 0xBF ) == 'i' ) || ( ( ((const U8*)s)[1] & 0xBF ) == 'l' ) ) ? 2 : 0 )\ 2964 : ( ( ((const U8*)s)[0] & 0xBF ) == 'h' ) ? \ 2965 ( ( ( 0xAE == ((const U8*)s)[1] ) && ( 0x58 == ((const U8*)s)[2] ) ) ? 3 : 0 )\ 2966 : ( ( ((const U8*)s)[0] & 0xBF ) == 'i' ) ? \ 2967 ( ( ( 0xAD == ((const U8*)s)[1] ) && ( 0x48 == ((const U8*)s)[2] ) ) ? 3 : 0 )\ 2968 : ( 0x8E == ((const U8*)s)[0] ) ? \ 2969 ( ( ( 0x72 == ((const U8*)s)[1] ) && ( ( ((const U8*)s)[2] & 0xBE ) == 's' ) ) ? 3 : 0 )\ 2970 : ( ( ((const U8*)s)[0] & 0xBF ) == 'j' ) ? \ 2971 ( ( ( 0xAD == ((const U8*)s)[1] ) && ( 0x53 == ((const U8*)s)[2] ) ) ? 3 : 0 )\ 2972 : ( ( ((const U8*)s)[0] & 0xBF ) == 's' ) ? \ 2973 ( ( 0x8E == ((const U8*)s)[1] ) ? \ 2974 ( ( 0x72 == ((const U8*)s)[2] ) ? 3 : 0 ) \ 2975 : ( ( ((const U8*)s)[1] & 0xBE ) == 's' ) ? 2 : 0 ) \ 2976 : ( ( ((const U8*)s)[0] & 0xBF ) == 't' ) ? \ 2977 ( ( ( 0xAD == ((const U8*)s)[1] ) && ( 0x49 == ((const U8*)s)[2] ) ) ? 3 : 0 )\ 2978 : ( ( ( ((const U8*)s)[0] & 0xBF ) == 'w' ) || ( ( ((const U8*)s)[0] & 0xBF ) == 'y' ) ) ?\ 2979 ( ( ( 0xAD == ((const U8*)s)[1] ) && ( 0x51 == ((const U8*)s)[2] ) ) ? 3 : 0 )\ 2980 : ( ( ( 0xAA == ((const U8*)s)[0] ) && ( 0x6A == ((const U8*)s)[1] ) ) && ( ( ((const U8*)s)[2] & 0xBF ) == 'n' ) ) ? 3 : 0 )\ 2981 : ((e)-(s) > 1) ? \ 2982 ( ( ( ((const U8*)s)[0] & 0xBF ) == 'f' ) ? \ 2983 ( ( ( ( ((const U8*)s)[1] & 0xBF ) == 'f' ) || ( ( ((const U8*)s)[1] & 0xBF ) == 'i' ) || ( ( ((const U8*)s)[1] & 0xBF ) == 'l' ) ) ? 2 : 0 )\ 2984 : ( ( ( ((const U8*)s)[0] & 0xBF ) == 's' ) && ( ( ((const U8*)s)[1] & 0xBE ) == 's' ) ) ? 2 : 0 )\ 2985 : 0 ) 2986 2987 2988 /*** GENERATED CODE ***/ 2989 #define is_MULTI_CHAR_FOLD_utf8_safe(s,e) \ 2990 ( ((e)-(s) > 5) ? \ 2991 ( ( ( ((const U8*)s)[0] & 0xBF ) == 'a' ) ? \ 2992 ( ( ( 0xAA == ((const U8*)s)[1] ) && ( 0x71 == ((const U8*)s)[2] ) ) ? 3 : 0 )\ 2993 : ( ( ((const U8*)s)[0] & 0xBF ) == 'f' ) ? \ 2994 ( ( ( ((const U8*)s)[1] & 0xBF ) == 'f' ) ? \ 2995 ( ( ( ( ((const U8*)s)[2] & 0xBF ) == 'i' ) || ( ( ((const U8*)s)[2] & 0xBF ) == 'l' ) ) ? 3 : 2 )\ 2996 : ( ( ( ((const U8*)s)[1] & 0xBF ) == 'i' ) || ( ( ((const U8*)s)[1] & 0xBF ) == 'l' ) ) ? 2 : 0 )\ 2997 : ( ( ((const U8*)s)[0] & 0xBF ) == 'h' ) ? \ 2998 ( ( ( 0xAE == ((const U8*)s)[1] ) && ( 0x58 == ((const U8*)s)[2] ) ) ? 3 : 0 )\ 2999 : ( ( ((const U8*)s)[0] & 0xBF ) == 'i' ) ? is_MULTI_CHAR_FOLD_utf8_safe_part0_(s,e) : is_MULTI_CHAR_FOLD_utf8_safe_part1_(s,e) )\ 3000 : ((e)-(s) > 4) ? is_MULTI_CHAR_FOLD_utf8_safe_part2_(s,e) : is_MULTI_CHAR_FOLD_utf8_safe_part3_(s,e) ) 3001 3002 /*** GENERATED CODE ***/ 3003 #define what_MULTI_CHAR_FOLD_utf8_safe_part0_(s,e) \ 3004 ( ( 0x52 == ((const U8*)s)[1] ) ? \ 3005 ( ( 0x46 == ((const U8*)s)[2] ) ? \ 3006 ( ( ( ( 0xB7 == ((const U8*)s)[3] ) && ( 0x53 == ((const U8*)s)[4] ) ) && ( 0x43 == ((const U8*)s)[5] ) ) ? 0x587 : 0 )\ 3007 : ( 0x62 == ((const U8*)s)[2] ) ? \ 3008 ( ( ( 0xB7 == ((const U8*)s)[3] ) && ( 0x52 == ((const U8*)s)[4] ) ) ? ( ( 0x46 == ((const U8*)s)[5] ) ? 0xFB14\ 3009 : ( 0x52 == ((const U8*)s)[5] ) ? 0xFB15 \ 3010 : ( 0x54 == ((const U8*)s)[5] ) ? 0xFB17 \ 3011 : ( 0x64 == ((const U8*)s)[5] ) ? 0xFB13 : 0 ) : 0 )\ 3012 : ( ( ( ( 0x71 == ((const U8*)s)[2] ) && ( 0xB7 == ((const U8*)s)[3] ) ) && ( 0x52 == ((const U8*)s)[4] ) ) && ( 0x64 == ((const U8*)s)[5] ) ) ? 0xFB16 : 0 )\ 3013 : 0 ) 3014 3015 3016 /*** GENERATED CODE ***/ 3017 #define what_MULTI_CHAR_FOLD_utf8_safe_part1_(s,e) \ 3018 ( ( 0xBF == ((const U8*)s)[0] ) ? \ 3019 ( ( 0x66 == ((const U8*)s)[1] ) ? \ 3020 ( ( 0x41 == ((const U8*)s)[2] ) ? \ 3021 ( ( ( 0xB3 == ((const U8*)s)[3] ) && ( 0x67 == ((const U8*)s)[4] ) ) ? 0x1F80 : 0 )\ 3022 : ( 0x42 == ((const U8*)s)[2] ) ? \ 3023 ( ( ( 0xB3 == ((const U8*)s)[3] ) && ( 0x67 == ((const U8*)s)[4] ) ) ? 0x1F81 : 0 )\ 3024 : ( 0x43 == ((const U8*)s)[2] ) ? \ 3025 ( ( ( 0xB3 == ((const U8*)s)[3] ) && ( 0x67 == ((const U8*)s)[4] ) ) ? 0x1F82 : 0 )\ 3026 : ( 0x44 == ((const U8*)s)[2] ) ? \ 3027 ( ( ( 0xB3 == ((const U8*)s)[3] ) && ( 0x67 == ((const U8*)s)[4] ) ) ? 0x1F83 : 0 )\ 3028 : ( 0x45 == ((const U8*)s)[2] ) ? \ 3029 ( ( ( 0xB3 == ((const U8*)s)[3] ) && ( 0x67 == ((const U8*)s)[4] ) ) ? 0x1F84 : 0 )\ 3030 : ( 0x46 == ((const U8*)s)[2] ) ? \ 3031 ( ( ( 0xB3 == ((const U8*)s)[3] ) && ( 0x67 == ((const U8*)s)[4] ) ) ? 0x1F85 : 0 )\ 3032 : ( 0x47 == ((const U8*)s)[2] ) ? \ 3033 ( ( ( 0xB3 == ((const U8*)s)[3] ) && ( 0x67 == ((const U8*)s)[4] ) ) ? 0x1F86 : 0 )\ 3034 : ( ( ( 0x48 == ((const U8*)s)[2] ) && ( 0xB3 == ((const U8*)s)[3] ) ) && ( 0x67 == ((const U8*)s)[4] ) ) ? 0x1F87 : 0 )\ 3035 : ( 0x67 == ((const U8*)s)[1] ) ? \ 3036 ( ( 0x41 == ((const U8*)s)[2] ) ? \ 3037 ( ( ( 0xB3 == ((const U8*)s)[3] ) && ( 0x67 == ((const U8*)s)[4] ) ) ? 0x1F90 : 0 )\ 3038 : ( 0x42 == ((const U8*)s)[2] ) ? \ 3039 ( ( ( 0xB3 == ((const U8*)s)[3] ) && ( 0x67 == ((const U8*)s)[4] ) ) ? 0x1F91 : 0 )\ 3040 : ( 0x43 == ((const U8*)s)[2] ) ? \ 3041 ( ( ( 0xB3 == ((const U8*)s)[3] ) && ( 0x67 == ((const U8*)s)[4] ) ) ? 0x1F92 : 0 )\ 3042 : ( 0x44 == ((const U8*)s)[2] ) ? \ 3043 ( ( ( 0xB3 == ((const U8*)s)[3] ) && ( 0x67 == ((const U8*)s)[4] ) ) ? 0x1F93 : 0 )\ 3044 : ( 0x45 == ((const U8*)s)[2] ) ? \ 3045 ( ( ( 0xB3 == ((const U8*)s)[3] ) && ( 0x67 == ((const U8*)s)[4] ) ) ? 0x1F94 : 0 )\ 3046 : ( 0x46 == ((const U8*)s)[2] ) ? \ 3047 ( ( ( 0xB3 == ((const U8*)s)[3] ) && ( 0x67 == ((const U8*)s)[4] ) ) ? 0x1F95 : 0 )\ 3048 : ( 0x47 == ((const U8*)s)[2] ) ? \ 3049 ( ( ( 0xB3 == ((const U8*)s)[3] ) && ( 0x67 == ((const U8*)s)[4] ) ) ? 0x1F96 : 0 )\ 3050 : ( ( ( 0x48 == ((const U8*)s)[2] ) && ( 0xB3 == ((const U8*)s)[3] ) ) && ( 0x67 == ((const U8*)s)[4] ) ) ? 0x1F97 : 0 )\ 3051 : ( 0x69 == ((const U8*)s)[1] ) ? \ 3052 ( ( 0x41 == ((const U8*)s)[2] ) ? \ 3053 ( ( ( 0xB3 == ((const U8*)s)[3] ) && ( 0x67 == ((const U8*)s)[4] ) ) ? 0x1FA0 : 0 )\ 3054 : ( 0x42 == ((const U8*)s)[2] ) ? \ 3055 ( ( ( 0xB3 == ((const U8*)s)[3] ) && ( 0x67 == ((const U8*)s)[4] ) ) ? 0x1FA1 : 0 )\ 3056 : ( 0x43 == ((const U8*)s)[2] ) ? \ 3057 ( ( ( 0xB3 == ((const U8*)s)[3] ) && ( 0x67 == ((const U8*)s)[4] ) ) ? 0x1FA2 : 0 )\ 3058 : ( 0x44 == ((const U8*)s)[2] ) ? \ 3059 ( ( ( 0xB3 == ((const U8*)s)[3] ) && ( 0x67 == ((const U8*)s)[4] ) ) ? 0x1FA3 : 0 )\ 3060 : ( 0x45 == ((const U8*)s)[2] ) ? \ 3061 ( ( ( 0xB3 == ((const U8*)s)[3] ) && ( 0x67 == ((const U8*)s)[4] ) ) ? 0x1FA4 : 0 )\ 3062 : ( 0x46 == ((const U8*)s)[2] ) ? \ 3063 ( ( ( 0xB3 == ((const U8*)s)[3] ) && ( 0x67 == ((const U8*)s)[4] ) ) ? 0x1FA5 : 0 )\ 3064 : ( 0x47 == ((const U8*)s)[2] ) ? \ 3065 ( ( ( 0xB3 == ((const U8*)s)[3] ) && ( 0x67 == ((const U8*)s)[4] ) ) ? 0x1FA6 : 0 )\ 3066 : ( 0x48 == ((const U8*)s)[2] ) ? \ 3067 ( ( ( 0xB3 == ((const U8*)s)[3] ) && ( 0x67 == ((const U8*)s)[4] ) ) ? 0x1FA7 : 0 )\ 3068 : ( 0x57 == ((const U8*)s)[2] ) ? \ 3069 ( ( ( 0xB3 == ((const U8*)s)[3] ) && ( 0x67 == ((const U8*)s)[4] ) ) ? 0x1FB2 : 0 )\ 3070 : ( 0x62 == ((const U8*)s)[2] ) ? \ 3071 ( ( ( 0xB3 == ((const U8*)s)[3] ) && ( 0x67 == ((const U8*)s)[4] ) ) ? 0x1FC2 : 0 )\ 3072 : ( ( ( 0x6A == ((const U8*)s)[2] ) && ( 0xB3 == ((const U8*)s)[3] ) ) && ( 0x67 == ((const U8*)s)[4] ) ) ? 0x1FF2 : 0 )\ 3073 : 0 ) \ 3074 : 0 ) 3075 3076 3077 /*** GENERATED CODE ***/ 3078 #define what_MULTI_CHAR_FOLD_utf8_safe_part2_(s,e) \ 3079 ( ( ( ((const U8*)s)[1] & 0xBF ) == 'f' ) ? \ 3080 ( ( ( ((const U8*)s)[2] & 0xBF ) == 'i' ) ? 0xFB03 \ 3081 : ( ( ((const U8*)s)[2] & 0xBF ) == 'l' ) ? 0xFB04 : 0xFB00 ) \ 3082 : ( ( ((const U8*)s)[1] & 0xBF ) == 'i' ) ? 0xFB01 \ 3083 : ( ( ((const U8*)s)[1] & 0xBF ) == 'l' ) ? 0xFB02 : 0 ) 3084 3085 3086 /*** GENERATED CODE ***/ 3087 #define what_MULTI_CHAR_FOLD_utf8_safe_part3_(s,e) \ 3088 ( ( ( ((const U8*)s)[0] & 0xBF ) == 'h' ) ? \ 3089 ( ( ( 0xAE == ((const U8*)s)[1] ) && ( 0x58 == ((const U8*)s)[2] ) ) ? 0x1E96 : 0 )\ 3090 : ( ( ((const U8*)s)[0] & 0xBF ) == 'i' ) ? \ 3091 ( ( ( 0xAD == ((const U8*)s)[1] ) && ( 0x48 == ((const U8*)s)[2] ) ) ? 0x130 : 0 )\ 3092 : ( 0x8E == ((const U8*)s)[0] ) ? \ 3093 ( ( 0x72 == ((const U8*)s)[1] ) ? \ 3094 ( ( 0x8E == ((const U8*)s)[2] ) ? \ 3095 ( ( 0x72 == ((const U8*)s)[3] ) ? 0x59 : 0 ) \ 3096 : ( ( ((const U8*)s)[2] & 0xBF ) == 's' ) ? 0x59 \ 3097 : ( ( ((const U8*)s)[2] & 0xBF ) == 't' ) ? 0xFB05 : 0 ) \ 3098 : 0 ) \ 3099 : ( ( ((const U8*)s)[0] & 0xBF ) == 'j' ) ? \ 3100 ( ( ( 0xAD == ((const U8*)s)[1] ) && ( 0x53 == ((const U8*)s)[2] ) ) ? 0x1F0 : 0 )\ 3101 : ( ( ((const U8*)s)[0] & 0xBF ) == 's' ) ? \ 3102 ( ( 0x8E == ((const U8*)s)[1] ) ? \ 3103 ( ( 0x72 == ((const U8*)s)[2] ) ? 0x59 : 0 ) \ 3104 : ( ( ((const U8*)s)[1] & 0xBF ) == 's' ) ? 0x59 \ 3105 : ( ( ((const U8*)s)[1] & 0xBF ) == 't' ) ? 0xFB05 : 0 ) \ 3106 : ( ( ((const U8*)s)[0] & 0xBF ) == 't' ) ? \ 3107 ( ( ( 0xAD == ((const U8*)s)[1] ) && ( 0x49 == ((const U8*)s)[2] ) ) ? 0x1E97 : 0 )\ 3108 : ( ( ((const U8*)s)[0] & 0xBF ) == 'w' ) ? \ 3109 ( ( ( 0xAD == ((const U8*)s)[1] ) && ( 0x51 == ((const U8*)s)[2] ) ) ? 0x1E98 : 0 )\ 3110 : ( ( ((const U8*)s)[0] & 0xBF ) == 'y' ) ? \ 3111 ( ( ( 0xAD == ((const U8*)s)[1] ) && ( 0x51 == ((const U8*)s)[2] ) ) ? 0x1E99 : 0 )\ 3112 : ( 0xAA == ((const U8*)s)[0] ) ? \ 3113 ( ( ( 0x6A == ((const U8*)s)[1] ) && ( ( ((const U8*)s)[2] & 0xBF ) == 'n' ) ) ? 0x149 : 0 )\ 3114 : ( 0xB3 == ((const U8*)s)[0] ) ? \ 3115 ( ( 0x53 == ((const U8*)s)[1] ) ? \ 3116 ( ( ( 0xB3 == ((const U8*)s)[2] ) && ( 0x67 == ((const U8*)s)[3] ) ) ? 0x1FB4 : 0 )\ 3117 : ( 0x55 == ((const U8*)s)[1] ) ? \ 3118 ( ( ( 0xB3 == ((const U8*)s)[2] ) && ( 0x67 == ((const U8*)s)[3] ) ) ? 0x1FC4 : 0 )\ 3119 : ( 0x58 == ((const U8*)s)[1] ) ? \ 3120 ( ( 0xAF == ((const U8*)s)[2] ) ? \ 3121 ( ( 0x43 == ((const U8*)s)[3] ) ? \ 3122 ( ( ( 0xB3 == ((const U8*)s)[4] ) && ( 0x67 == ((const U8*)s)[5] ) ) ? 0x1FB7 : 0x1FB6 )\ 3123 : 0 ) \ 3124 : ( ( 0xB3 == ((const U8*)s)[2] ) && ( 0x67 == ((const U8*)s)[3] ) ) ? 0x1FB3 : 0 )\ 3125 : ( 0x65 == ((const U8*)s)[1] ) ? \ 3126 ( ( 0xAF == ((const U8*)s)[2] ) ? \ 3127 ( ( 0x43 == ((const U8*)s)[3] ) ? \ 3128 ( ( ( 0xB3 == ((const U8*)s)[4] ) && ( 0x67 == ((const U8*)s)[5] ) ) ? 0x1FC7 : 0x1FC6 )\ 3129 : 0 ) \ 3130 : ( ( 0xB3 == ((const U8*)s)[2] ) && ( 0x67 == ((const U8*)s)[3] ) ) ? 0x1FC3 : 0 )\ 3131 : ( 0x67 == ((const U8*)s)[1] ) ? \ 3132 ( ( 0xAD == ((const U8*)s)[2] ) ? \ 3133 ( ( 0x49 == ((const U8*)s)[3] ) ? \ 3134 ( ( 0xAD == ((const U8*)s)[4] ) ? \ 3135 ( ( 0x41 == ((const U8*)s)[5] ) ? 0x1FD2 \ 3136 : ( 0x42 == ((const U8*)s)[5] ) ? 0x390 : 0 ) \ 3137 : ( ( 0xAF == ((const U8*)s)[4] ) && ( 0x43 == ((const U8*)s)[5] ) ) ? 0x1FD7 : 0 )\ 3138 : 0 ) \ 3139 : ( ( 0xAF == ((const U8*)s)[2] ) && ( 0x43 == ((const U8*)s)[3] ) ) ? 0x1FD6 : 0 )\ 3140 : 0 ) \ 3141 : ( 0xB4 == ((const U8*)s)[0] ) ? \ 3142 ( ( 0x42 == ((const U8*)s)[1] ) ? \ 3143 ( ( ( 0xAD == ((const U8*)s)[2] ) && ( 0x5F == ((const U8*)s)[3] ) ) ? 0x1FE4 : 0 )\ 3144 : ( 0x46 == ((const U8*)s)[1] ) ? \ 3145 ( ( 0xAD == ((const U8*)s)[2] ) ? \ 3146 ( ( 0x49 == ((const U8*)s)[3] ) ? \ 3147 ( ( 0xAD == ((const U8*)s)[4] ) ? \ 3148 ( ( 0x41 == ((const U8*)s)[5] ) ? 0x1FE2 \ 3149 : ( 0x42 == ((const U8*)s)[5] ) ? 0x3B0 : 0 ) \ 3150 : ( ( 0xAF == ((const U8*)s)[4] ) && ( 0x43 == ((const U8*)s)[5] ) ) ? 0x1FE7 : 0 )\ 3151 : ( 0x5F == ((const U8*)s)[3] ) ? \ 3152 ( ( 0xAD == ((const U8*)s)[4] ) ? \ 3153 ( ( 0x41 == ((const U8*)s)[5] ) ? 0x1F52 \ 3154 : ( 0x42 == ((const U8*)s)[5] ) ? 0x1F54 : 0x1F50 ) \ 3155 : ( ( 0xAF == ((const U8*)s)[4] ) && ( 0x43 == ((const U8*)s)[5] ) ) ? 0x1F56 : 0x1F50 )\ 3156 : 0 ) \ 3157 : ( ( 0xAF == ((const U8*)s)[2] ) && ( 0x43 == ((const U8*)s)[3] ) ) ? 0x1FE6 : 0 )\ 3158 : ( 0x4A == ((const U8*)s)[1] ) ? \ 3159 ( ( 0xAF == ((const U8*)s)[2] ) ? \ 3160 ( ( 0x43 == ((const U8*)s)[3] ) ? \ 3161 ( ( ( 0xB3 == ((const U8*)s)[4] ) && ( 0x67 == ((const U8*)s)[5] ) ) ? 0x1FF7 : 0x1FF6 )\ 3162 : 0 ) \ 3163 : ( ( 0xB3 == ((const U8*)s)[2] ) && ( 0x67 == ((const U8*)s)[3] ) ) ? 0x1FF3 : 0 )\ 3164 : ( ( ( 0x55 == ((const U8*)s)[1] ) && ( 0xB3 == ((const U8*)s)[2] ) ) && ( 0x67 == ((const U8*)s)[3] ) ) ? 0x1FF4 : 0 )\ 3165 : ( 0xB7 == ((const U8*)s)[0] ) ? what_MULTI_CHAR_FOLD_utf8_safe_part0_(s,e) : what_MULTI_CHAR_FOLD_utf8_safe_part1_(s,e) ) 3166 3167 3168 /*** GENERATED CODE ***/ 3169 #define what_MULTI_CHAR_FOLD_utf8_safe_part4_(s,e) \ 3170 ( ( 0x42 == ((const U8*)s)[1] ) ? \ 3171 ( ( ( 0xAD == ((const U8*)s)[2] ) && ( 0x5F == ((const U8*)s)[3] ) ) ? 0x1FE4 : 0 )\ 3172 : ( 0x46 == ((const U8*)s)[1] ) ? \ 3173 ( ( 0xAD == ((const U8*)s)[2] ) ? \ 3174 ( ( 0x5F == ((const U8*)s)[3] ) ? 0x1F50 : 0 ) \ 3175 : ( ( 0xAF == ((const U8*)s)[2] ) && ( 0x43 == ((const U8*)s)[3] ) ) ? 0x1FE6 : 0 )\ 3176 : ( 0x4A == ((const U8*)s)[1] ) ? \ 3177 ( ( 0xAF == ((const U8*)s)[2] ) ? \ 3178 ( ( 0x43 == ((const U8*)s)[3] ) ? 0x1FF6 : 0 ) \ 3179 : ( ( 0xB3 == ((const U8*)s)[2] ) && ( 0x67 == ((const U8*)s)[3] ) ) ? 0x1FF3 : 0 )\ 3180 : ( ( ( 0x55 == ((const U8*)s)[1] ) && ( 0xB3 == ((const U8*)s)[2] ) ) && ( 0x67 == ((const U8*)s)[3] ) ) ? 0x1FF4 : 0 ) 3181 3182 3183 /*** GENERATED CODE ***/ 3184 #define what_MULTI_CHAR_FOLD_utf8_safe_part5_(s,e) \ 3185 ( ( 0xBF == ((const U8*)s)[0] ) ? \ 3186 ( ( 0x66 == ((const U8*)s)[1] ) ? \ 3187 ( ( 0x41 == ((const U8*)s)[2] ) ? \ 3188 ( ( ( 0xB3 == ((const U8*)s)[3] ) && ( 0x67 == ((const U8*)s)[4] ) ) ? 0x1F80 : 0 )\ 3189 : ( 0x42 == ((const U8*)s)[2] ) ? \ 3190 ( ( ( 0xB3 == ((const U8*)s)[3] ) && ( 0x67 == ((const U8*)s)[4] ) ) ? 0x1F81 : 0 )\ 3191 : ( 0x43 == ((const U8*)s)[2] ) ? \ 3192 ( ( ( 0xB3 == ((const U8*)s)[3] ) && ( 0x67 == ((const U8*)s)[4] ) ) ? 0x1F82 : 0 )\ 3193 : ( 0x44 == ((const U8*)s)[2] ) ? \ 3194 ( ( ( 0xB3 == ((const U8*)s)[3] ) && ( 0x67 == ((const U8*)s)[4] ) ) ? 0x1F83 : 0 )\ 3195 : ( 0x45 == ((const U8*)s)[2] ) ? \ 3196 ( ( ( 0xB3 == ((const U8*)s)[3] ) && ( 0x67 == ((const U8*)s)[4] ) ) ? 0x1F84 : 0 )\ 3197 : ( 0x46 == ((const U8*)s)[2] ) ? \ 3198 ( ( ( 0xB3 == ((const U8*)s)[3] ) && ( 0x67 == ((const U8*)s)[4] ) ) ? 0x1F85 : 0 )\ 3199 : ( 0x47 == ((const U8*)s)[2] ) ? \ 3200 ( ( ( 0xB3 == ((const U8*)s)[3] ) && ( 0x67 == ((const U8*)s)[4] ) ) ? 0x1F86 : 0 )\ 3201 : ( ( ( 0x48 == ((const U8*)s)[2] ) && ( 0xB3 == ((const U8*)s)[3] ) ) && ( 0x67 == ((const U8*)s)[4] ) ) ? 0x1F87 : 0 )\ 3202 : ( 0x67 == ((const U8*)s)[1] ) ? \ 3203 ( ( 0x41 == ((const U8*)s)[2] ) ? \ 3204 ( ( ( 0xB3 == ((const U8*)s)[3] ) && ( 0x67 == ((const U8*)s)[4] ) ) ? 0x1F90 : 0 )\ 3205 : ( 0x42 == ((const U8*)s)[2] ) ? \ 3206 ( ( ( 0xB3 == ((const U8*)s)[3] ) && ( 0x67 == ((const U8*)s)[4] ) ) ? 0x1F91 : 0 )\ 3207 : ( 0x43 == ((const U8*)s)[2] ) ? \ 3208 ( ( ( 0xB3 == ((const U8*)s)[3] ) && ( 0x67 == ((const U8*)s)[4] ) ) ? 0x1F92 : 0 )\ 3209 : ( 0x44 == ((const U8*)s)[2] ) ? \ 3210 ( ( ( 0xB3 == ((const U8*)s)[3] ) && ( 0x67 == ((const U8*)s)[4] ) ) ? 0x1F93 : 0 )\ 3211 : ( 0x45 == ((const U8*)s)[2] ) ? \ 3212 ( ( ( 0xB3 == ((const U8*)s)[3] ) && ( 0x67 == ((const U8*)s)[4] ) ) ? 0x1F94 : 0 )\ 3213 : ( 0x46 == ((const U8*)s)[2] ) ? \ 3214 ( ( ( 0xB3 == ((const U8*)s)[3] ) && ( 0x67 == ((const U8*)s)[4] ) ) ? 0x1F95 : 0 )\ 3215 : ( 0x47 == ((const U8*)s)[2] ) ? \ 3216 ( ( ( 0xB3 == ((const U8*)s)[3] ) && ( 0x67 == ((const U8*)s)[4] ) ) ? 0x1F96 : 0 )\ 3217 : ( ( ( 0x48 == ((const U8*)s)[2] ) && ( 0xB3 == ((const U8*)s)[3] ) ) && ( 0x67 == ((const U8*)s)[4] ) ) ? 0x1F97 : 0 )\ 3218 : ( 0x69 == ((const U8*)s)[1] ) ? \ 3219 ( ( 0x41 == ((const U8*)s)[2] ) ? \ 3220 ( ( ( 0xB3 == ((const U8*)s)[3] ) && ( 0x67 == ((const U8*)s)[4] ) ) ? 0x1FA0 : 0 )\ 3221 : ( 0x42 == ((const U8*)s)[2] ) ? \ 3222 ( ( ( 0xB3 == ((const U8*)s)[3] ) && ( 0x67 == ((const U8*)s)[4] ) ) ? 0x1FA1 : 0 )\ 3223 : ( 0x43 == ((const U8*)s)[2] ) ? \ 3224 ( ( ( 0xB3 == ((const U8*)s)[3] ) && ( 0x67 == ((const U8*)s)[4] ) ) ? 0x1FA2 : 0 )\ 3225 : ( 0x44 == ((const U8*)s)[2] ) ? \ 3226 ( ( ( 0xB3 == ((const U8*)s)[3] ) && ( 0x67 == ((const U8*)s)[4] ) ) ? 0x1FA3 : 0 )\ 3227 : ( 0x45 == ((const U8*)s)[2] ) ? \ 3228 ( ( ( 0xB3 == ((const U8*)s)[3] ) && ( 0x67 == ((const U8*)s)[4] ) ) ? 0x1FA4 : 0 )\ 3229 : ( 0x46 == ((const U8*)s)[2] ) ? \ 3230 ( ( ( 0xB3 == ((const U8*)s)[3] ) && ( 0x67 == ((const U8*)s)[4] ) ) ? 0x1FA5 : 0 )\ 3231 : ( 0x47 == ((const U8*)s)[2] ) ? \ 3232 ( ( ( 0xB3 == ((const U8*)s)[3] ) && ( 0x67 == ((const U8*)s)[4] ) ) ? 0x1FA6 : 0 )\ 3233 : ( 0x48 == ((const U8*)s)[2] ) ? \ 3234 ( ( ( 0xB3 == ((const U8*)s)[3] ) && ( 0x67 == ((const U8*)s)[4] ) ) ? 0x1FA7 : 0 )\ 3235 : ( 0x57 == ((const U8*)s)[2] ) ? \ 3236 ( ( ( 0xB3 == ((const U8*)s)[3] ) && ( 0x67 == ((const U8*)s)[4] ) ) ? 0x1FB2 : 0 )\ 3237 : ( 0x62 == ((const U8*)s)[2] ) ? \ 3238 ( ( ( 0xB3 == ((const U8*)s)[3] ) && ( 0x67 == ((const U8*)s)[4] ) ) ? 0x1FC2 : 0 )\ 3239 : ( ( ( 0x6A == ((const U8*)s)[2] ) && ( 0xB3 == ((const U8*)s)[3] ) ) && ( 0x67 == ((const U8*)s)[4] ) ) ? 0x1FF2 : 0 )\ 3240 : 0 ) \ 3241 : 0 ) 3242 3243 3244 /*** GENERATED CODE ***/ 3245 #define what_MULTI_CHAR_FOLD_utf8_safe_part6_(s,e) \ 3246 ( ( ( ((const U8*)s)[0] & 0xBF ) == 'a' ) ? \ 3247 ( ( ( 0xAA == ((const U8*)s)[1] ) && ( 0x71 == ((const U8*)s)[2] ) ) ? 0x1E9A : 0 )\ 3248 : ( ( ((const U8*)s)[0] & 0xBF ) == 'f' ) ? \ 3249 ( ( ( ((const U8*)s)[1] & 0xBF ) == 'f' ) ? \ 3250 ( ( ( ((const U8*)s)[2] & 0xBF ) == 'i' ) ? 0xFB03 \ 3251 : ( ( ((const U8*)s)[2] & 0xBF ) == 'l' ) ? 0xFB04 : 0xFB00 ) \ 3252 : ( ( ((const U8*)s)[1] & 0xBF ) == 'i' ) ? 0xFB01 \ 3253 : ( ( ((const U8*)s)[1] & 0xBF ) == 'l' ) ? 0xFB02 : 0 ) \ 3254 : ( ( ((const U8*)s)[0] & 0xBF ) == 'h' ) ? \ 3255 ( ( ( 0xAE == ((const U8*)s)[1] ) && ( 0x58 == ((const U8*)s)[2] ) ) ? 0x1E96 : 0 )\ 3256 : ( ( ((const U8*)s)[0] & 0xBF ) == 'i' ) ? \ 3257 ( ( ( 0xAD == ((const U8*)s)[1] ) && ( 0x48 == ((const U8*)s)[2] ) ) ? 0x130 : 0 )\ 3258 : ( 0x8E == ((const U8*)s)[0] ) ? \ 3259 ( ( 0x72 == ((const U8*)s)[1] ) ? \ 3260 ( ( 0x8E == ((const U8*)s)[2] ) ? \ 3261 ( ( 0x72 == ((const U8*)s)[3] ) ? 0x59 : 0 ) \ 3262 : ( ( ((const U8*)s)[2] & 0xBF ) == 's' ) ? 0x59 \ 3263 : ( ( ((const U8*)s)[2] & 0xBF ) == 't' ) ? 0xFB05 : 0 ) \ 3264 : 0 ) \ 3265 : ( ( ((const U8*)s)[0] & 0xBF ) == 'j' ) ? \ 3266 ( ( ( 0xAD == ((const U8*)s)[1] ) && ( 0x53 == ((const U8*)s)[2] ) ) ? 0x1F0 : 0 )\ 3267 : ( ( ((const U8*)s)[0] & 0xBF ) == 's' ) ? \ 3268 ( ( 0x8E == ((const U8*)s)[1] ) ? \ 3269 ( ( 0x72 == ((const U8*)s)[2] ) ? 0x59 : 0 ) \ 3270 : ( ( ((const U8*)s)[1] & 0xBF ) == 's' ) ? 0x59 \ 3271 : ( ( ((const U8*)s)[1] & 0xBF ) == 't' ) ? 0xFB05 : 0 ) \ 3272 : ( ( ((const U8*)s)[0] & 0xBF ) == 't' ) ? \ 3273 ( ( ( 0xAD == ((const U8*)s)[1] ) && ( 0x49 == ((const U8*)s)[2] ) ) ? 0x1E97 : 0 )\ 3274 : ( ( ((const U8*)s)[0] & 0xBF ) == 'w' ) ? \ 3275 ( ( ( 0xAD == ((const U8*)s)[1] ) && ( 0x51 == ((const U8*)s)[2] ) ) ? 0x1E98 : 0 )\ 3276 : ( ( ((const U8*)s)[0] & 0xBF ) == 'y' ) ? \ 3277 ( ( ( 0xAD == ((const U8*)s)[1] ) && ( 0x51 == ((const U8*)s)[2] ) ) ? 0x1E99 : 0 )\ 3278 : ( 0xAA == ((const U8*)s)[0] ) ? \ 3279 ( ( ( 0x6A == ((const U8*)s)[1] ) && ( ( ((const U8*)s)[2] & 0xBF ) == 'n' ) ) ? 0x149 : 0 )\ 3280 : ( 0xB3 == ((const U8*)s)[0] ) ? \ 3281 ( ( 0x53 == ((const U8*)s)[1] ) ? \ 3282 ( ( ( 0xB3 == ((const U8*)s)[2] ) && ( 0x67 == ((const U8*)s)[3] ) ) ? 0x1FB4 : 0 )\ 3283 : ( 0x55 == ((const U8*)s)[1] ) ? \ 3284 ( ( ( 0xB3 == ((const U8*)s)[2] ) && ( 0x67 == ((const U8*)s)[3] ) ) ? 0x1FC4 : 0 )\ 3285 : ( 0x58 == ((const U8*)s)[1] ) ? \ 3286 ( ( 0xAF == ((const U8*)s)[2] ) ? \ 3287 ( ( 0x43 == ((const U8*)s)[3] ) ? 0x1FB6 : 0 ) \ 3288 : ( ( 0xB3 == ((const U8*)s)[2] ) && ( 0x67 == ((const U8*)s)[3] ) ) ? 0x1FB3 : 0 )\ 3289 : ( 0x65 == ((const U8*)s)[1] ) ? \ 3290 ( ( 0xAF == ((const U8*)s)[2] ) ? \ 3291 ( ( 0x43 == ((const U8*)s)[3] ) ? 0x1FC6 : 0 ) \ 3292 : ( ( 0xB3 == ((const U8*)s)[2] ) && ( 0x67 == ((const U8*)s)[3] ) ) ? 0x1FC3 : 0 )\ 3293 : ( ( ( 0x67 == ((const U8*)s)[1] ) && ( 0xAF == ((const U8*)s)[2] ) ) && ( 0x43 == ((const U8*)s)[3] ) ) ? 0x1FD6 : 0 )\ 3294 : ( 0xB4 == ((const U8*)s)[0] ) ? \ 3295 ( ( 0x42 == ((const U8*)s)[1] ) ? \ 3296 ( ( ( 0xAD == ((const U8*)s)[2] ) && ( 0x5F == ((const U8*)s)[3] ) ) ? 0x1FE4 : 0 )\ 3297 : ( 0x46 == ((const U8*)s)[1] ) ? \ 3298 ( ( 0xAD == ((const U8*)s)[2] ) ? \ 3299 ( ( 0x5F == ((const U8*)s)[3] ) ? 0x1F50 : 0 ) \ 3300 : ( ( 0xAF == ((const U8*)s)[2] ) && ( 0x43 == ((const U8*)s)[3] ) ) ? 0x1FE6 : 0 )\ 3301 : ( 0x4A == ((const U8*)s)[1] ) ? \ 3302 ( ( 0xAF == ((const U8*)s)[2] ) ? \ 3303 ( ( 0x43 == ((const U8*)s)[3] ) ? 0x1FF6 : 0 ) \ 3304 : ( ( 0xB3 == ((const U8*)s)[2] ) && ( 0x67 == ((const U8*)s)[3] ) ) ? 0x1FF3 : 0 )\ 3305 : ( ( ( 0x55 == ((const U8*)s)[1] ) && ( 0xB3 == ((const U8*)s)[2] ) ) && ( 0x67 == ((const U8*)s)[3] ) ) ? 0x1FF4 : 0 )\ 3306 : 0 ) 3307 3308 3309 /*** GENERATED CODE ***/ 3310 #define what_MULTI_CHAR_FOLD_utf8_safe_part7_(s,e) \ 3311 ( ((e)-(s) > 2) ? \ 3312 ( ( ( ((const U8*)s)[0] & 0xBF ) == 'a' ) ? \ 3313 ( ( ( 0xAA == ((const U8*)s)[1] ) && ( 0x71 == ((const U8*)s)[2] ) ) ? 0x1E9A : 0 )\ 3314 : ( ( ((const U8*)s)[0] & 0xBF ) == 'f' ) ? \ 3315 ( ( ( ((const U8*)s)[1] & 0xBF ) == 'f' ) ? \ 3316 ( ( ( ((const U8*)s)[2] & 0xBF ) == 'i' ) ? 0xFB03 \ 3317 : ( ( ((const U8*)s)[2] & 0xBF ) == 'l' ) ? 0xFB04 : 0xFB00 ) \ 3318 : ( ( ((const U8*)s)[1] & 0xBF ) == 'i' ) ? 0xFB01 \ 3319 : ( ( ((const U8*)s)[1] & 0xBF ) == 'l' ) ? 0xFB02 : 0 ) \ 3320 : ( ( ((const U8*)s)[0] & 0xBF ) == 'h' ) ? \ 3321 ( ( ( 0xAE == ((const U8*)s)[1] ) && ( 0x58 == ((const U8*)s)[2] ) ) ? 0x1E96 : 0 )\ 3322 : ( ( ((const U8*)s)[0] & 0xBF ) == 'i' ) ? \ 3323 ( ( ( 0xAD == ((const U8*)s)[1] ) && ( 0x48 == ((const U8*)s)[2] ) ) ? 0x130 : 0 )\ 3324 : ( 0x8E == ((const U8*)s)[0] ) ? \ 3325 ( ( 0x72 == ((const U8*)s)[1] ) ? \ 3326 ( ( ( ((const U8*)s)[2] & 0xBF ) == 's' ) ? 0x59 \ 3327 : ( ( ((const U8*)s)[2] & 0xBF ) == 't' ) ? 0xFB05 : 0 ) \ 3328 : 0 ) \ 3329 : ( ( ((const U8*)s)[0] & 0xBF ) == 'j' ) ? \ 3330 ( ( ( 0xAD == ((const U8*)s)[1] ) && ( 0x53 == ((const U8*)s)[2] ) ) ? 0x1F0 : 0 )\ 3331 : ( ( ((const U8*)s)[0] & 0xBF ) == 's' ) ? \ 3332 ( ( 0x8E == ((const U8*)s)[1] ) ? \ 3333 ( ( 0x72 == ((const U8*)s)[2] ) ? 0x59 : 0 ) \ 3334 : ( ( ((const U8*)s)[1] & 0xBF ) == 's' ) ? 0x59 \ 3335 : ( ( ((const U8*)s)[1] & 0xBF ) == 't' ) ? 0xFB05 : 0 ) \ 3336 : ( ( ((const U8*)s)[0] & 0xBF ) == 't' ) ? \ 3337 ( ( ( 0xAD == ((const U8*)s)[1] ) && ( 0x49 == ((const U8*)s)[2] ) ) ? 0x1E97 : 0 )\ 3338 : ( ( ((const U8*)s)[0] & 0xBF ) == 'w' ) ? \ 3339 ( ( ( 0xAD == ((const U8*)s)[1] ) && ( 0x51 == ((const U8*)s)[2] ) ) ? 0x1E98 : 0 )\ 3340 : ( ( ((const U8*)s)[0] & 0xBF ) == 'y' ) ? \ 3341 ( ( ( 0xAD == ((const U8*)s)[1] ) && ( 0x51 == ((const U8*)s)[2] ) ) ? 0x1E99 : 0 )\ 3342 : ( ( ( 0xAA == ((const U8*)s)[0] ) && ( 0x6A == ((const U8*)s)[1] ) ) && ( ( ((const U8*)s)[2] & 0xBF ) == 'n' ) ) ? 0x149 : 0 )\ 3343 : ((e)-(s) > 1) ? \ 3344 ( ( ( ((const U8*)s)[0] & 0xBF ) == 'f' ) ? \ 3345 ( ( ( ((const U8*)s)[1] & 0xBF ) == 'f' ) ? 0xFB00 \ 3346 : ( ( ((const U8*)s)[1] & 0xBF ) == 'i' ) ? 0xFB01 \ 3347 : ( ( ((const U8*)s)[1] & 0xBF ) == 'l' ) ? 0xFB02 : 0 ) \ 3348 : ( ( ((const U8*)s)[0] & 0xBF ) == 's' ) ? \ 3349 ( ( ( ((const U8*)s)[1] & 0xBF ) == 's' ) ? 0x59 \ 3350 : ( ( ((const U8*)s)[1] & 0xBF ) == 't' ) ? 0xFB05 : 0 ) \ 3351 : 0 ) \ 3352 : 0 ) 3353 3354 3355 /*** GENERATED CODE ***/ 3356 #define what_MULTI_CHAR_FOLD_utf8_safe(s,e) \ 3357 ( ((e)-(s) > 5) ? \ 3358 ( ( ( ((const U8*)s)[0] & 0xBF ) == 'a' ) ? \ 3359 ( ( ( 0xAA == ((const U8*)s)[1] ) && ( 0x71 == ((const U8*)s)[2] ) ) ? 0x1E9A : 0 )\ 3360 : ( ( ((const U8*)s)[0] & 0xBF ) == 'f' ) ? what_MULTI_CHAR_FOLD_utf8_safe_part2_(s,e) : what_MULTI_CHAR_FOLD_utf8_safe_part3_(s,e) )\ 3361 : ((e)-(s) > 4) ? \ 3362 ( ( ( ((const U8*)s)[0] & 0xBF ) == 'a' ) ? \ 3363 ( ( ( 0xAA == ((const U8*)s)[1] ) && ( 0x71 == ((const U8*)s)[2] ) ) ? 0x1E9A : 0 )\ 3364 : ( ( ((const U8*)s)[0] & 0xBF ) == 'f' ) ? \ 3365 ( ( ( ((const U8*)s)[1] & 0xBF ) == 'f' ) ? \ 3366 ( ( ( ((const U8*)s)[2] & 0xBF ) == 'i' ) ? 0xFB03 \ 3367 : ( ( ((const U8*)s)[2] & 0xBF ) == 'l' ) ? 0xFB04 : 0xFB00 ) \ 3368 : ( ( ((const U8*)s)[1] & 0xBF ) == 'i' ) ? 0xFB01 \ 3369 : ( ( ((const U8*)s)[1] & 0xBF ) == 'l' ) ? 0xFB02 : 0 ) \ 3370 : ( ( ((const U8*)s)[0] & 0xBF ) == 'h' ) ? \ 3371 ( ( ( 0xAE == ((const U8*)s)[1] ) && ( 0x58 == ((const U8*)s)[2] ) ) ? 0x1E96 : 0 )\ 3372 : ( ( ((const U8*)s)[0] & 0xBF ) == 'i' ) ? \ 3373 ( ( ( 0xAD == ((const U8*)s)[1] ) && ( 0x48 == ((const U8*)s)[2] ) ) ? 0x130 : 0 )\ 3374 : ( 0x8E == ((const U8*)s)[0] ) ? \ 3375 ( ( 0x72 == ((const U8*)s)[1] ) ? \ 3376 ( ( 0x8E == ((const U8*)s)[2] ) ? \ 3377 ( ( 0x72 == ((const U8*)s)[3] ) ? 0x59 : 0 ) \ 3378 : ( ( ((const U8*)s)[2] & 0xBF ) == 's' ) ? 0x59 \ 3379 : ( ( ((const U8*)s)[2] & 0xBF ) == 't' ) ? 0xFB05 : 0 ) \ 3380 : 0 ) \ 3381 : ( ( ((const U8*)s)[0] & 0xBF ) == 'j' ) ? \ 3382 ( ( ( 0xAD == ((const U8*)s)[1] ) && ( 0x53 == ((const U8*)s)[2] ) ) ? 0x1F0 : 0 )\ 3383 : ( ( ((const U8*)s)[0] & 0xBF ) == 's' ) ? \ 3384 ( ( 0x8E == ((const U8*)s)[1] ) ? \ 3385 ( ( 0x72 == ((const U8*)s)[2] ) ? 0x59 : 0 ) \ 3386 : ( ( ((const U8*)s)[1] & 0xBF ) == 's' ) ? 0x59 \ 3387 : ( ( ((const U8*)s)[1] & 0xBF ) == 't' ) ? 0xFB05 : 0 ) \ 3388 : ( ( ((const U8*)s)[0] & 0xBF ) == 't' ) ? \ 3389 ( ( ( 0xAD == ((const U8*)s)[1] ) && ( 0x49 == ((const U8*)s)[2] ) ) ? 0x1E97 : 0 )\ 3390 : ( ( ((const U8*)s)[0] & 0xBF ) == 'w' ) ? \ 3391 ( ( ( 0xAD == ((const U8*)s)[1] ) && ( 0x51 == ((const U8*)s)[2] ) ) ? 0x1E98 : 0 )\ 3392 : ( ( ((const U8*)s)[0] & 0xBF ) == 'y' ) ? \ 3393 ( ( ( 0xAD == ((const U8*)s)[1] ) && ( 0x51 == ((const U8*)s)[2] ) ) ? 0x1E99 : 0 )\ 3394 : ( 0xAA == ((const U8*)s)[0] ) ? \ 3395 ( ( ( 0x6A == ((const U8*)s)[1] ) && ( ( ((const U8*)s)[2] & 0xBF ) == 'n' ) ) ? 0x149 : 0 )\ 3396 : ( 0xB3 == ((const U8*)s)[0] ) ? \ 3397 ( ( 0x53 == ((const U8*)s)[1] ) ? \ 3398 ( ( ( 0xB3 == ((const U8*)s)[2] ) && ( 0x67 == ((const U8*)s)[3] ) ) ? 0x1FB4 : 0 )\ 3399 : ( 0x55 == ((const U8*)s)[1] ) ? \ 3400 ( ( ( 0xB3 == ((const U8*)s)[2] ) && ( 0x67 == ((const U8*)s)[3] ) ) ? 0x1FC4 : 0 )\ 3401 : ( 0x58 == ((const U8*)s)[1] ) ? \ 3402 ( ( 0xAF == ((const U8*)s)[2] ) ? \ 3403 ( ( 0x43 == ((const U8*)s)[3] ) ? 0x1FB6 : 0 ) \ 3404 : ( ( 0xB3 == ((const U8*)s)[2] ) && ( 0x67 == ((const U8*)s)[3] ) ) ? 0x1FB3 : 0 )\ 3405 : ( 0x65 == ((const U8*)s)[1] ) ? \ 3406 ( ( 0xAF == ((const U8*)s)[2] ) ? \ 3407 ( ( 0x43 == ((const U8*)s)[3] ) ? 0x1FC6 : 0 ) \ 3408 : ( ( 0xB3 == ((const U8*)s)[2] ) && ( 0x67 == ((const U8*)s)[3] ) ) ? 0x1FC3 : 0 )\ 3409 : ( ( ( 0x67 == ((const U8*)s)[1] ) && ( 0xAF == ((const U8*)s)[2] ) ) && ( 0x43 == ((const U8*)s)[3] ) ) ? 0x1FD6 : 0 )\ 3410 : ( 0xB4 == ((const U8*)s)[0] ) ? what_MULTI_CHAR_FOLD_utf8_safe_part4_(s,e) : what_MULTI_CHAR_FOLD_utf8_safe_part5_(s,e) )\ 3411 : ((e)-(s) > 3) ? what_MULTI_CHAR_FOLD_utf8_safe_part6_(s,e) : what_MULTI_CHAR_FOLD_utf8_safe_part7_(s,e) ) 3412 3413 /* 3414 MULTI_CHAR_FOLD: multi-char strings that are folded to by a single character 3415 3416 %regcharclass_multi_char_folds::multi_char_folds('l', 'a') 3417 */ 3418 /*** GENERATED CODE ***/ 3419 #define is_MULTI_CHAR_FOLD_latin1_safe(s,e) \ 3420 ( ((e)-(s) > 2) ? \ 3421 ( ( ( ((const U8*)s)[0] & 0xBF ) == 'f' ) ? \ 3422 ( ( ( ((const U8*)s)[1] & 0xBF ) == 'f' ) ? \ 3423 ( ( ( ( ((const U8*)s)[2] & 0xBF ) == 'i' ) || ( ( ((const U8*)s)[2] & 0xBF ) == 'l' ) ) ? 3 : 2 )\ 3424 : ( ( ( ((const U8*)s)[1] & 0xBF ) == 'i' ) || ( ( ((const U8*)s)[1] & 0xBF ) == 'l' ) ) ? 2 : 0 )\ 3425 : ( ( ( ((const U8*)s)[0] & 0xBF ) == 's' ) && ( ( ((const U8*)s)[1] & 0xBE ) == 's' ) ) ? 2 : 0 )\ 3426 : ((e)-(s) > 1) ? \ 3427 ( ( ( ((const U8*)s)[0] & 0xBF ) == 'f' ) ? \ 3428 ( ( ( ( ((const U8*)s)[1] & 0xBF ) == 'f' ) || ( ( ((const U8*)s)[1] & 0xBF ) == 'i' ) || ( ( ((const U8*)s)[1] & 0xBF ) == 'l' ) ) ? 2 : 0 )\ 3429 : ( ( ( ((const U8*)s)[0] & 0xBF ) == 's' ) && ( ( ((const U8*)s)[1] & 0xBE ) == 's' ) ) ? 2 : 0 )\ 3430 : 0 ) 3431 3432 /*** GENERATED CODE ***/ 3433 #define what_MULTI_CHAR_FOLD_latin1_safe(s,e) \ 3434 ( ((e)-(s) > 2) ? \ 3435 ( ( ( ((const U8*)s)[0] & 0xBF ) == 'f' ) ? \ 3436 ( ( ( ((const U8*)s)[1] & 0xBF ) == 'f' ) ? \ 3437 ( ( ( ((const U8*)s)[2] & 0xBF ) == 'i' ) ? 0xFB03 \ 3438 : ( ( ((const U8*)s)[2] & 0xBF ) == 'l' ) ? 0xFB04 : 0xFB00 ) \ 3439 : ( ( ((const U8*)s)[1] & 0xBF ) == 'i' ) ? 0xFB01 \ 3440 : ( ( ((const U8*)s)[1] & 0xBF ) == 'l' ) ? 0xFB02 : 0 ) \ 3441 : ( ( ((const U8*)s)[0] & 0xBF ) == 's' ) ? \ 3442 ( ( ( ((const U8*)s)[1] & 0xBF ) == 's' ) ? 0x59 \ 3443 : ( ( ((const U8*)s)[1] & 0xBF ) == 't' ) ? 0xFB05 : 0 ) \ 3444 : 0 ) \ 3445 : ((e)-(s) > 1) ? \ 3446 ( ( ( ((const U8*)s)[0] & 0xBF ) == 'f' ) ? \ 3447 ( ( ( ((const U8*)s)[1] & 0xBF ) == 'f' ) ? 0xFB00 \ 3448 : ( ( ((const U8*)s)[1] & 0xBF ) == 'i' ) ? 0xFB01 \ 3449 : ( ( ((const U8*)s)[1] & 0xBF ) == 'l' ) ? 0xFB02 : 0 ) \ 3450 : ( ( ((const U8*)s)[0] & 0xBF ) == 's' ) ? \ 3451 ( ( ( ((const U8*)s)[1] & 0xBF ) == 's' ) ? 0x59 \ 3452 : ( ( ((const U8*)s)[1] & 0xBF ) == 't' ) ? 0xFB05 : 0 ) \ 3453 : 0 ) \ 3454 : 0 ) 3455 3456 /* 3457 THREE_CHAR_FOLD: A three-character multi-char fold 3458 3459 %regcharclass_multi_char_folds::multi_char_folds('u', '3') 3460 */ 3461 /*** GENERATED CODE ***/ 3462 #define is_THREE_CHAR_FOLD_utf8_safe(s,e) \ 3463 ( ((e)-(s) > 5) ? \ 3464 ( ( ( ((const U8*)s)[0] & 0xBF ) == 'f' ) ? \ 3465 ( ( ( ( ((const U8*)s)[1] & 0xBF ) == 'f' ) && ( ( ( ((const U8*)s)[2] & 0xBF ) == 'i' ) || ( ( ((const U8*)s)[2] & 0xBF ) == 'l' ) ) ) ? 3 : 0 )\ 3466 : ( 0xB3 == ((const U8*)s)[0] ) ? \ 3467 ( ( 0x58 == ((const U8*)s)[1] || 0x65 == ((const U8*)s)[1] ) ? \ 3468 ( ( ( ( ( 0xAF == ((const U8*)s)[2] ) && ( 0x43 == ((const U8*)s)[3] ) ) && ( 0xB3 == ((const U8*)s)[4] ) ) && ( 0x67 == ((const U8*)s)[5] ) ) ? 6 : 0 )\ 3469 : ( ( ( 0x67 == ((const U8*)s)[1] ) && ( 0xAD == ((const U8*)s)[2] ) ) && ( 0x49 == ((const U8*)s)[3] ) ) ? ( ( 0xAD == ((const U8*)s)[4] ) ?\ 3470 ( ( inRANGE_helper_(U8, ((const U8*)s)[5], 0x41, 0x42) ) ? 6 : 0 )\ 3471 : ( ( 0xAF == ((const U8*)s)[4] ) && ( 0x43 == ((const U8*)s)[5] ) ) ? 6 : 0 ) : 0 )\ 3472 : ( 0xB4 == ((const U8*)s)[0] ) ? \ 3473 ( ( 0x46 == ((const U8*)s)[1] ) ? \ 3474 ( ( ( 0xAD == ((const U8*)s)[2] ) && ( 0x49 == ((const U8*)s)[3] || 0x5F == ((const U8*)s)[3] ) ) ? ( ( 0xAD == ((const U8*)s)[4] ) ?\ 3475 ( ( inRANGE_helper_(U8, ((const U8*)s)[5], 0x41, 0x42) ) ? 6 : 0 )\ 3476 : ( ( 0xAF == ((const U8*)s)[4] ) && ( 0x43 == ((const U8*)s)[5] ) ) ? 6 : 0 ) : 0 )\ 3477 : ( ( ( ( ( 0x4A == ((const U8*)s)[1] ) && ( 0xAF == ((const U8*)s)[2] ) ) && ( 0x43 == ((const U8*)s)[3] ) ) && ( 0xB3 == ((const U8*)s)[4] ) ) && ( 0x67 == ((const U8*)s)[5] ) ) ? 6 : 0 )\ 3478 : 0 ) \ 3479 : ( ( ( ((e)-(s) > 2) && ( ( ((const U8*)s)[0] & 0xBF ) == 'f' ) ) && ( ( ((const U8*)s)[1] & 0xBF ) == 'f' ) ) && ( ( ( ((const U8*)s)[2] & 0xBF ) == 'i' ) || ( ( ((const U8*)s)[2] & 0xBF ) == 'l' ) ) ) ? 3 : 0 ) 3480 3481 /* 3482 THREE_CHAR_FOLD: A three-character multi-char fold 3483 3484 %regcharclass_multi_char_folds::multi_char_folds('l', '3') 3485 */ 3486 /*** GENERATED CODE ***/ 3487 #define is_THREE_CHAR_FOLD_latin1_safe(s,e) \ 3488 ( ( ( ( ( ((e) - (s)) >= 3 ) && ( ( ((const U8*)s)[0] & 0xBF ) == 'f' ) ) && ( ( ((const U8*)s)[1] & 0xBF ) == 'f' ) ) && ( ( ( ((const U8*)s)[2] & 0xBF ) == 'i' ) || ( ( ((const U8*)s)[2] & 0xBF ) == 'l' ) ) ) ? 3 : 0 ) 3489 3490 /* 3491 THREE_CHAR_FOLD_HEAD: The first two of three-character multi-char folds 3492 3493 %regcharclass_multi_char_folds::multi_char_folds('u', 'h') 3494 */ 3495 /*** GENERATED CODE ***/ 3496 #define is_THREE_CHAR_FOLD_HEAD_utf8_safe(s,e) \ 3497 ( ((e)-(s) > 3) ? \ 3498 ( ( ( ( ((const U8*)s)[0] & 0xAF ) == 'a' ) || ( ( ((const U8*)s)[0] & 0xBE ) == 'h' ) || ( ( ((const U8*)s)[0] & 0xBE ) == 's' ) || ( ( ((const U8*)s)[0] & 0xBF ) == 'w' ) || ( ( ((const U8*)s)[0] & 0xBF ) == 'y' ) ) ? 1\ 3499 : ( ( ((const U8*)s)[0] & 0xBF ) == 'f' ) ? \ 3500 ( ( ( ((const U8*)s)[1] & 0xBF ) == 'f' ) ? 2 : 1 ) \ 3501 : ( 0x8E == ((const U8*)s)[0] ) ? \ 3502 ( ( 0x72 == ((const U8*)s)[1] ) ? 2 : 0 ) \ 3503 : ( 0xAA == ((const U8*)s)[0] ) ? \ 3504 ( ( 0x6A == ((const U8*)s)[1] ) ? 2 : 0 ) \ 3505 : ( 0xB3 == ((const U8*)s)[0] ) ? \ 3506 ( ( ( NATIVE_UTF8_TO_I8(((const U8*)s)[1]) & 0xFD ) == 0xAC ) ? 2 \ 3507 : ( 0x58 == ((const U8*)s)[1] || 0x65 == ((const U8*)s)[1] ) ? \ 3508 ( ( ( 0xAF == ((const U8*)s)[2] ) && ( 0x43 == ((const U8*)s)[3] ) ) ? 4 : 2 )\ 3509 : ( 0x67 == ((const U8*)s)[1] ) ? \ 3510 ( ( ( 0xAD == ((const U8*)s)[2] ) && ( 0x49 == ((const U8*)s)[3] ) ) ? 4 : 2 )\ 3511 : 0 ) \ 3512 : ( 0xB4 == ((const U8*)s)[0] ) ? \ 3513 ( ( 0x42 == ((const U8*)s)[1] || 0x55 == ((const U8*)s)[1] ) ? 2 \ 3514 : ( 0x46 == ((const U8*)s)[1] ) ? \ 3515 ( ( ( 0xAD == ((const U8*)s)[2] ) && ( 0x49 == ((const U8*)s)[3] || 0x5F == ((const U8*)s)[3] ) ) ? 4 : 2 )\ 3516 : ( 0x4A == ((const U8*)s)[1] ) ? \ 3517 ( ( ( 0xAF == ((const U8*)s)[2] ) && ( 0x43 == ((const U8*)s)[3] ) ) ? 4 : 2 )\ 3518 : 0 ) \ 3519 : ( 0xB7 == ((const U8*)s)[0] ) ? \ 3520 ( ( ( 0x52 == ((const U8*)s)[1] ) && ( 0x46 == ((const U8*)s)[2] || 0x62 == ((const U8*)s)[2] || 0x71 == ((const U8*)s)[2] ) ) ? 3 : 0 )\ 3521 : ( 0xBF == ((const U8*)s)[0] ) ? \ 3522 ( ( inRANGE_helper_(U8, ((const U8*)s)[1], 0x66, 0x67) ) ? \ 3523 ( ( inRANGE_helper_(U8, ((const U8*)s)[2], 0x41, 0x48) ) ? 3 : 0 )\ 3524 : ( ( 0x69 == ((const U8*)s)[1] ) && ( ( ( NATIVE_UTF8_TO_I8(((const U8*)s)[2]) & 0xF8 ) == 0xA0 ) || ( ( NATIVE_UTF8_TO_I8(((const U8*)s)[2]) & 0xFB ) == 0xB0 ) || ((const U8*)s)[2] == 0x6A ) ) ? 3 : 0 )\ 3525 : 0 ) \ 3526 : ((e)-(s) > 2) ? \ 3527 ( ( ( ( ((const U8*)s)[0] & 0xAF ) == 'a' ) || ( ( ((const U8*)s)[0] & 0xBE ) == 'h' ) || ( ( ((const U8*)s)[0] & 0xBE ) == 's' ) || ( ( ((const U8*)s)[0] & 0xBF ) == 'w' ) || ( ( ((const U8*)s)[0] & 0xBF ) == 'y' ) ) ? 1\ 3528 : ( ( ((const U8*)s)[0] & 0xBF ) == 'f' ) ? \ 3529 ( ( ( ((const U8*)s)[1] & 0xBF ) == 'f' ) ? 2 : 1 ) \ 3530 : ( 0x8E == ((const U8*)s)[0] ) ? \ 3531 ( ( 0x72 == ((const U8*)s)[1] ) ? 2 : 0 ) \ 3532 : ( 0xAA == ((const U8*)s)[0] ) ? \ 3533 ( ( 0x6A == ((const U8*)s)[1] ) ? 2 : 0 ) \ 3534 : ( 0xB3 == ((const U8*)s)[0] ) ? \ 3535 ( ( ( ( NATIVE_UTF8_TO_I8(((const U8*)s)[1]) & 0xFD ) == 0xAC ) || ( ( NATIVE_UTF8_TO_I8(((const U8*)s)[1]) & 0xF7 ) == 0xB1 ) || ((const U8*)s)[1] == 0x65 ) ? 2 : 0 )\ 3536 : ( 0xB4 == ((const U8*)s)[0] ) ? \ 3537 ( ( ( ( ((const U8*)s)[1] & 0xFB ) == 0x42 ) || ((const U8*)s)[1] == 0x4A || ((const U8*)s)[1] == 0x55 ) ? 2 : 0 )\ 3538 : ( 0xB7 == ((const U8*)s)[0] ) ? \ 3539 ( ( ( 0x52 == ((const U8*)s)[1] ) && ( 0x46 == ((const U8*)s)[2] || 0x62 == ((const U8*)s)[2] || 0x71 == ((const U8*)s)[2] ) ) ? 3 : 0 )\ 3540 : ( 0xBF == ((const U8*)s)[0] ) ? \ 3541 ( ( inRANGE_helper_(U8, ((const U8*)s)[1], 0x66, 0x67) ) ? \ 3542 ( ( inRANGE_helper_(U8, ((const U8*)s)[2], 0x41, 0x48) ) ? 3 : 0 )\ 3543 : ( ( 0x69 == ((const U8*)s)[1] ) && ( ( ( NATIVE_UTF8_TO_I8(((const U8*)s)[2]) & 0xF8 ) == 0xA0 ) || ( ( NATIVE_UTF8_TO_I8(((const U8*)s)[2]) & 0xFB ) == 0xB0 ) || ((const U8*)s)[2] == 0x6A ) ) ? 3 : 0 )\ 3544 : 0 ) \ 3545 : ((e)-(s) > 1) ? \ 3546 ( ( ( ( ((const U8*)s)[0] & 0xAF ) == 'a' ) || ( ( ((const U8*)s)[0] & 0xBE ) == 'h' ) || ( ( ((const U8*)s)[0] & 0xBE ) == 's' ) || ( ( ((const U8*)s)[0] & 0xBF ) == 'w' ) || ( ( ((const U8*)s)[0] & 0xBF ) == 'y' ) ) ? 1\ 3547 : ( ( ((const U8*)s)[0] & 0xBF ) == 'f' ) ? \ 3548 ( ( ( ((const U8*)s)[1] & 0xBF ) == 'f' ) ? 2 : 1 ) \ 3549 : ( 0x8E == ((const U8*)s)[0] ) ? \ 3550 ( ( 0x72 == ((const U8*)s)[1] ) ? 2 : 0 ) \ 3551 : ( 0xAA == ((const U8*)s)[0] ) ? \ 3552 ( ( 0x6A == ((const U8*)s)[1] ) ? 2 : 0 ) \ 3553 : ( 0xB3 == ((const U8*)s)[0] ) ? \ 3554 ( ( ( ( NATIVE_UTF8_TO_I8(((const U8*)s)[1]) & 0xFD ) == 0xAC ) || ( ( NATIVE_UTF8_TO_I8(((const U8*)s)[1]) & 0xF7 ) == 0xB1 ) || ((const U8*)s)[1] == 0x65 ) ? 2 : 0 )\ 3555 : ( ( 0xB4 == ((const U8*)s)[0] ) && ( ( ( ((const U8*)s)[1] & 0xFB ) == 0x42 ) || ((const U8*)s)[1] == 0x4A || ((const U8*)s)[1] == 0x55 ) ) ? 2 : 0 )\ 3556 : ((e)-(s) > 0) ? \ 3557 ( ( ( ((const U8*)s)[0] & 0xAF ) == 'a' ) || ( ( ((const U8*)s)[0] & 0x9F ) == 'f' ) || ( ( ((const U8*)s)[0] & 0xBE ) == 'h' ) || ( ( ((const U8*)s)[0] & 0xBE ) == 's' ) || ( ( ((const U8*)s)[0] & 0xBF ) == 'y' ) )\ 3558 : 0 ) 3559 3560 /* 3561 THREE_CHAR_FOLD_HEAD: The first two of three-character multi-char folds 3562 3563 %regcharclass_multi_char_folds::multi_char_folds('l', 'h') 3564 */ 3565 /*** GENERATED CODE ***/ 3566 #define is_THREE_CHAR_FOLD_HEAD_latin1_safe(s,e) \ 3567 ( ((e)-(s) > 1) ? \ 3568 ( ( ( ( ((const U8*)s)[0] & 0xAF ) == 'a' ) || ( ( ((const U8*)s)[0] & 0xBE ) == 'h' ) || ( ( ((const U8*)s)[0] & 0xBE ) == 's' ) || ( ( ((const U8*)s)[0] & 0xBF ) == 'w' ) || ( ( ((const U8*)s)[0] & 0xBF ) == 'y' ) ) ? 1\ 3569 : ( ( ((const U8*)s)[0] & 0xBF ) == 'f' ) ? \ 3570 ( ( ( ((const U8*)s)[1] & 0xBF ) == 'f' ) ? 2 : 1 ) \ 3571 : 0 ) \ 3572 : ((e)-(s) > 0) ? \ 3573 ( ( ( ((const U8*)s)[0] & 0xAF ) == 'a' ) || ( ( ((const U8*)s)[0] & 0x9F ) == 'f' ) || ( ( ((const U8*)s)[0] & 0xBE ) == 'h' ) || ( ( ((const U8*)s)[0] & 0xBE ) == 's' ) || ( ( ((const U8*)s)[0] & 0xBF ) == 'y' ) )\ 3574 : 0 ) 3575 3576 /* 3577 FOLDS_TO_MULTI: characters that fold to multi-char strings 3578 3579 \p{_Perl_Folds_To_Multi_Char} 3580 */ 3581 /*** GENERATED CODE ***/ 3582 #define is_FOLDS_TO_MULTI_utf8(s) \ 3583 ( ( 0x80 == ((const U8*)s)[0] ) ? \ 3584 ( ( 0x72 == ((const U8*)s)[1] ) ? 2 : 0 ) \ 3585 : ( 0x8C == ((const U8*)s)[0] || 0x9B == ((const U8*)s)[0] || inRANGE_helper_(U8, ((const U8*)s)[0], 0xB2, 0xB3) ) ?\ 3586 ( ( 0x57 == ((const U8*)s)[1] ) ? 2 : 0 ) \ 3587 : ( 0x8D == ((const U8*)s)[0] ) ? \ 3588 ( ( 0x4A == ((const U8*)s)[1] ) ? 2 : 0 ) \ 3589 : ( 0xB7 == ((const U8*)s)[0] ) ? \ 3590 ( ( ( 0x53 == ((const U8*)s)[1] ) && ( 0x48 == ((const U8*)s)[2] ) ) ? 3 : 0 )\ 3591 : ( 0xBF == ((const U8*)s)[0] ) ? \ 3592 ( ( 0x62 == ((const U8*)s)[1] ) ? \ 3593 ( ( inRANGE_helper_(U8, ((const U8*)s)[2], 0x64, 0x68) || 0x71 == ((const U8*)s)[2] ) ? 3 : 0 )\ 3594 : ( 0x68 == ((const U8*)s)[1] ) ? \ 3595 ( ( ( NATIVE_UTF8_TO_I8(((const U8*)s)[2]) & 0xF9 ) == 0xB0 ) ? 3 : 0 )\ 3596 : ( 0x6A == ((const U8*)s)[1] ) ? \ 3597 3 \ 3598 : ( 0x70 == ((const U8*)s)[1] ) ? \ 3599 ( ( ( ( NATIVE_UTF8_TO_I8(((const U8*)s)[2]) & 0xF0 ) == 0xA0 ) || ( ( NATIVE_UTF8_TO_I8(((const U8*)s)[2]) & 0xFA ) == 0xB2 ) || ( ( NATIVE_UTF8_TO_I8(((const U8*)s)[2]) & 0xF7 ) == 0xB4 ) ) ? 3 : 0 )\ 3600 : ( 0x71 == ((const U8*)s)[1] ) ? \ 3601 ( ( ( ( NATIVE_UTF8_TO_I8(((const U8*)s)[2]) & 0xEA ) == 0xA2 ) || ( ( NATIVE_UTF8_TO_I8(((const U8*)s)[2]) & 0xF7 ) == 0xA4 ) ) ? 3 : 0 )\ 3602 : ( ( 0x72 == ((const U8*)s)[1] ) && ( ( ( NATIVE_UTF8_TO_I8(((const U8*)s)[2]) & 0xEA ) == 0xA2 ) || ((const U8*)s)[2] == 0x45 || ( ( NATIVE_UTF8_TO_I8(((const U8*)s)[2]) & 0xF7 ) == 0xB4 ) ) ) ? 3 : 0 )\ 3603 : ( ( ( ( 0xDD == ((const U8*)s)[0] ) && ( 0x71 == ((const U8*)s)[1] ) ) && ( 0x66 == ((const U8*)s)[2] ) ) && ( inRANGE_helper_(U8, NATIVE_UTF8_TO_I8(((const U8*)s)[3]), 0xA0, 0xA6) || inRANGE_helper_(U8, NATIVE_UTF8_TO_I8(((const U8*)s)[3]), 0xB3, 0xB7) ) ) ? 4 : 0 ) 3604 3605 /* 3606 PROBLEMATIC_LOCALE_FOLD: characters whose fold is problematic under locale 3607 3608 \p{_Perl_Problematic_Locale_Folds} 3609 */ 3610 /*** GENERATED CODE ***/ 3611 #define is_PROBLEMATIC_LOCALE_FOLD_utf8(s) \ 3612 ( ( ( ( NATIVE_UTF8_TO_I8(((const U8*)s)[0]) & 0x80 ) == 0x00 ) || ( ( NATIVE_UTF8_TO_I8(((const U8*)s)[0]) & 0xE0 ) == 0x80 ) ) ? 1\ 3613 : ( inRANGE_helper_(U8, NATIVE_UTF8_TO_I8(((const U8*)s)[0]), 0xC5, 0xC7) ) ?\ 3614 2 \ 3615 : ( 0x8C == ((const U8*)s)[0] ) ? \ 3616 ( ( inRANGE_helper_(U8, ((const U8*)s)[1], 0x57, 0x58) ) ? 2 : 0 ) \ 3617 : ( 0x8D == ((const U8*)s)[0] ) ? \ 3618 ( ( 0x4A == ((const U8*)s)[1] ) ? 2 : 0 ) \ 3619 : ( 0x8E == ((const U8*)s)[0] ) ? \ 3620 ( ( 0x66 == ((const U8*)s)[1] || 0x72 == ((const U8*)s)[1] ) ? 2 : 0 ) \ 3621 : ( 0x9B == ((const U8*)s)[0] ) ? \ 3622 ( ( 0x57 == ((const U8*)s)[1] ) ? 2 : 0 ) \ 3623 : ( 0xAD == ((const U8*)s)[0] ) ? \ 3624 ( ( 0x48 == ((const U8*)s)[1] ) ? 2 : 0 ) \ 3625 : ( inRANGE_helper_(U8, ((const U8*)s)[0], 0xB2, 0xB3) ) ? \ 3626 ( ( 0x6A == ((const U8*)s)[1] ) ? 2 : 0 ) \ 3627 : ( 0xBF == ((const U8*)s)[0] ) ? \ 3628 ( ( ( 0x62 == ((const U8*)s)[1] ) && ( inRANGE_helper_(U8, ((const U8*)s)[2], 0x64, 0x68) || 0x71 == ((const U8*)s)[2] ) ) ? 3 : 0 )\ 3629 : ( 0xCA == ((const U8*)s)[0] ) ? \ 3630 ( ( ( 0x4A == ((const U8*)s)[1] ) && ( inRANGE_helper_(U8, ((const U8*)s)[2], 0x51, 0x52) ) ) ? 3 : 0 )\ 3631 : ( ( ( ( 0xDD == ((const U8*)s)[0] ) && ( 0x71 == ((const U8*)s)[1] ) ) && ( 0x66 == ((const U8*)s)[2] ) ) && ( inRANGE_helper_(U8, ((const U8*)s)[3], 0x41, 0x47) ) ) ? 4 : 0 ) 3632 3633 /*** GENERATED CODE ***/ 3634 #define is_PROBLEMATIC_LOCALE_FOLD_cp(cp) \ 3635 ( cp <= 0xFF || ( 0xFF < cp && \ 3636 ( inRANGE_helper_(UV, cp, 0x130, 0x131) || ( 0x131 < cp && \ 3637 ( 0x149 == cp || ( 0x149 < cp && \ 3638 ( 0x178 == cp || ( 0x178 < cp && \ 3639 ( 0x17F == cp || ( 0x17F < cp && \ 3640 ( 0x1F0 == cp || ( 0x1F0 < cp && \ 3641 ( 0x307 == cp || ( 0x307 < cp && \ 3642 ( 0x39C == cp || ( 0x39C < cp && \ 3643 ( 0x3BC == cp || ( 0x3BC < cp && \ 3644 ( inRANGE_helper_(UV, cp, 0x1E96, 0x1E9A) || ( 0x1E9A < cp && \ 3645 ( 0x1E9E == cp || ( 0x1E9E < cp && \ 3646 ( inRANGE_helper_(UV, cp, 0x212A, 0x212B) || inRANGE_helper_(UV, cp, 0xFB00, 0xFB06) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) 3647 3648 /* 3649 PROBLEMATIC_LOCALE_FOLDEDS_START: The first folded character of folds which are problematic under locale 3650 3651 \p{_Perl_Problematic_Locale_Foldeds_Start} 3652 */ 3653 /*** GENERATED CODE ***/ 3654 #define is_PROBLEMATIC_LOCALE_FOLDEDS_START_utf8(s) \ 3655 ( ( ( ( NATIVE_UTF8_TO_I8(((const U8*)s)[0]) & 0x80 ) == 0x00 ) || ( ( NATIVE_UTF8_TO_I8(((const U8*)s)[0]) & 0xE0 ) == 0x80 ) ) ? 1\ 3656 : ( inRANGE_helper_(U8, NATIVE_UTF8_TO_I8(((const U8*)s)[0]), 0xC5, 0xC7) ) ?\ 3657 2 \ 3658 : ( 0x8C == ((const U8*)s)[0] ) ? \ 3659 ( ( inRANGE_helper_(U8, ((const U8*)s)[1], 0x57, 0x58) ) ? 2 : 0 ) \ 3660 : ( 0x8D == ((const U8*)s)[0] ) ? \ 3661 ( ( 0x4A == ((const U8*)s)[1] ) ? 2 : 0 ) \ 3662 : ( 0x8E == ((const U8*)s)[0] ) ? \ 3663 ( ( 0x66 == ((const U8*)s)[1] || 0x72 == ((const U8*)s)[1] ) ? 2 : 0 ) \ 3664 : ( 0x9B == ((const U8*)s)[0] ) ? \ 3665 ( ( 0x57 == ((const U8*)s)[1] ) ? 2 : 0 ) \ 3666 : ( 0xAA == ((const U8*)s)[0] || inRANGE_helper_(U8, ((const U8*)s)[0], 0xB2, 0xB3) ) ?\ 3667 ( ( 0x6A == ((const U8*)s)[1] ) ? 2 : 0 ) \ 3668 : ( 0xBF == ((const U8*)s)[0] ) ? \ 3669 ( ( ( 0x62 == ((const U8*)s)[1] ) && ( inRANGE_helper_(U8, ((const U8*)s)[2], 0x64, 0x68) || 0x71 == ((const U8*)s)[2] ) ) ? 3 : 0 )\ 3670 : ( 0xCA == ((const U8*)s)[0] ) ? \ 3671 ( ( ( 0x4A == ((const U8*)s)[1] ) && ( inRANGE_helper_(U8, ((const U8*)s)[2], 0x51, 0x52) ) ) ? 3 : 0 )\ 3672 : ( ( ( ( 0xDD == ((const U8*)s)[0] ) && ( 0x71 == ((const U8*)s)[1] ) ) && ( 0x66 == ((const U8*)s)[2] ) ) && ( inRANGE_helper_(U8, ((const U8*)s)[3], 0x41, 0x47) ) ) ? 4 : 0 ) 3673 3674 /*** GENERATED CODE ***/ 3675 #define is_PROBLEMATIC_LOCALE_FOLDEDS_START_cp(cp) \ 3676 ( cp <= 0xFF || ( 0xFF < cp && \ 3677 ( inRANGE_helper_(UV, cp, 0x130, 0x131) || ( 0x131 < cp && \ 3678 ( 0x149 == cp || ( 0x149 < cp && \ 3679 ( 0x178 == cp || ( 0x178 < cp && \ 3680 ( 0x17F == cp || ( 0x17F < cp && \ 3681 ( 0x1F0 == cp || ( 0x1F0 < cp && \ 3682 ( 0x2BC == cp || ( 0x2BC < cp && \ 3683 ( 0x39C == cp || ( 0x39C < cp && \ 3684 ( 0x3BC == cp || ( 0x3BC < cp && \ 3685 ( inRANGE_helper_(UV, cp, 0x1E96, 0x1E9A) || ( 0x1E9A < cp && \ 3686 ( 0x1E9E == cp || ( 0x1E9E < cp && \ 3687 ( inRANGE_helper_(UV, cp, 0x212A, 0x212B) || inRANGE_helper_(UV, cp, 0xFB00, 0xFB06) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) 3688 3689 /* 3690 PATWS: pattern white space 3691 3692 \p{_Perl_PatWS} 3693 */ 3694 /*** GENERATED CODE ***/ 3695 #define is_PATWS_safe(s,e,is_utf8) \ 3696 ( ( LIKELY((e) > (s)) ) ? \ 3697 ( ( '\t' == ((const U8*)s)[0] || inRANGE_helper_(U8, ((const U8*)s)[0], '\v', '\r') || 0x15 == ((const U8*)s)[0] || '\n' == ((const U8*)s)[0] || ' ' == ((const U8*)s)[0] ) ? 1\ 3698 : ( ( is_utf8 && LIKELY(((e) - (s)) >= UTF8SKIP(s)) ) && ( 0xCA == ((const U8*)s)[0] ) ) ? ( ( 0x41 == ((const U8*)s)[1] ) ?\ 3699 ( ( inRANGE_helper_(U8, ((const U8*)s)[2], 0x55, 0x56) ) ? 3 : 0 )\ 3700 : ( ( 0x42 == ((const U8*)s)[1] ) && ( inRANGE_helper_(U8, ((const U8*)s)[2], 0x49, 0x4A) ) ) ? 3 : 0 ) : 0 )\ 3701 : 0 ) 3702 3703 /* 3704 HANGUL_ED: Hangul syllables whose first UTF-8 byte is \xED 3705 3706 0x1 - 0x0 3707 */ 3708 /*** GENERATED CODE ***/ 3709 #define is_HANGUL_ED_utf8_safe(s,e) \ 3710 ( 0 ) 3711 3712 #endif /* EBCDIC 037 */ 3713 3714 #endif /* PERL_REGCHARCLASS_H_ */ 3715 3716 /* Generated from: 3717 * 688d673ec947f7ccf898b4eae9848139d4d33676b688dee54f449f8bf9d3bbd2 lib/Unicode/UCD.pm 3718 * c7698811e9adb6cc98fb996a7de4be2b6532f2ac67e76055cc8afdbf6ee18af3 lib/unicore/ArabicShaping.txt 3719 * 24a74555f918bbe99f5b3f1b83cf36fc0e205bb8a600a6a3aa539c710a3dcf27 lib/unicore/BidiBrackets.txt 3720 * 7a5c74cedc1616a9af0a9d22e108ae592d86fe93649c144ae6ba49f193a44122 lib/unicore/BidiMirroring.txt 3721 * 598870dddef7b34b5a972916528c456aff2765b79cd4f9647fb58ceb767e7f17 lib/unicore/Blocks.txt 3722 * a566cd48687b2cd897e02501118b2413c14ae86d318f9abbbba97feb84189f0f lib/unicore/CaseFolding.txt 3723 * 3360762fc3295cea54ab251c31df621d05ba4b94d46c60eaac29aa16d70ad1e0 lib/unicore/CompositionExclusions.txt 3724 * 7e058dec02147098bc9c28d86209f0f251bba0538f3b5a705ad02ea3bb709fe0 lib/unicore/DAge.txt 3725 * e3eddd7d469cd1b0feed7528defad1a1cc7c6a9ceb0ae4446a6d10921ed2e7bc lib/unicore/DCoreProperties.txt 3726 * b2c444c20730b097787fdf50bd7d6dd3fc5256ab8084f5b35b11c8776eca674c lib/unicore/DNormalizationProps.txt 3727 * f901ac011aa32a09224d6555da71e2532c59c1d3381322829de0e3b880507250 lib/unicore/EastAsianWidth.txt 3728 * 5995522f01633073911dad1edb74d13aa832f42862c0392a79627b85d52f2391 lib/unicore/EquivalentUnifiedIdeograph.txt 3729 * cd1c9367cba438afa965fcb5edc6ed3ec6e685fd5dd21c0cc20c026f04beb0e5 lib/unicore/HangulSyllableType.txt 3730 * 3f3f368fccdb37f350ecedc20b37fa71ab31c04e847884c77780d34283539f73 lib/unicore/IdStatus.txt 3731 * 45a150c23961b58d7784704af6c4daccd6517d97b6489e53d13bbdbf9e4f065f lib/unicore/IdType.txt 3732 * d8704c8725568813a947ff2ef38bcf1f05e2a6fbea6876ba384890f187a8bf61 lib/unicore/IndicPositionalCategory.txt 3733 * c7b969b653dc278fb66ab4136223d320e30ad19367eb791ae60dcc6d92071b16 lib/unicore/IndicSyllabicCategory.txt 3734 * 39ff89e0a329e1ccce6d54fad8cf82e90926901928c0ca9b9a2ad5681f330dd9 lib/unicore/Jamo.txt 3735 * 9e06e9f35c6959fb91dcc7993f90d58523c3079bc62c6b25f828b4cdebc5d70c lib/unicore/LineBreak.txt 3736 * 14b3b677d33f95c51423dce6eef4a6a28b4b160451ecedee4b91edb6745cf4a3 lib/unicore/NameAliases.txt 3737 * db5745688affcdc0c3927a1ee0667018a96a7b24513f866d5235e98fef6c2436 lib/unicore/NamedSequences.txt 3738 * 6bddfdb850417a5bee6deff19290fd1b138589909afb50f5a049f343bf2c6722 lib/unicore/PropList.txt 3739 * eb755757e20b72b330b2948df3cf2ff7adb0e31bb060140dc09dafb132ace2cd lib/unicore/PropValueAliases.txt 3740 * 859d7225f2d2a460b3ccb1d61a7945f8cc219acdf5aa53b66b7a1e4bf6ebfc87 lib/unicore/PropertyAliases.txt 3741 * d37eedf63ff9c48bac863d5f76862373d6cf5269fd21253d499e2430d638c01d lib/unicore/ScriptExtensions.txt 3742 * 52db475c4ec445e73b0b16915448c357614946ad7062843c563e00d7535c6510 lib/unicore/Scripts.txt 3743 * c667b45908fd269af25fd55d2fc5bbc157fb1b77675936e25c513ce32e080334 lib/unicore/SpecialCasing.txt 3744 * 36018e68657fdcb3485f636630ffe8c8532e01c977703d2803f5b89d6c5feafb lib/unicore/UnicodeData.txt 3745 * 869ff43dd012f924d03c89fc268c88f0e7eea72f0228b91ca30455afdb84f8fd lib/unicore/VerticalOrientation.txt 3746 * ddc7d4d1f3838573b94fc5d83ff7217e63c47b22ae1cd40c5fe1a54efc15589b lib/unicore/auxiliary/GCBTest.txt 3747 * 97e79f1f8d9cd76d120f2420381a01abc00a7c78a2aa583fa3f9627264a99742 lib/unicore/auxiliary/GraphemeBreakProperty.txt 3748 * 488dbb6a7e1d0070d4aa7c175352c818ff6425172850d1b40c6177726658cb05 lib/unicore/auxiliary/LBTest.txt 3749 * 7e42dd749dbb94aa44b13faf9df6319d9a16ce2ea09a3a094fcfbb5962168040 lib/unicore/auxiliary/SBTest.txt 3750 * 7092ca4117cec891c25c7724132efc519e1dece01ae9fd6068035a9db04d526e lib/unicore/auxiliary/SentenceBreakProperty.txt 3751 * 8094b544ec1580c7e41ac0187805cc1aeb330a90301ec7505563e1a59318284e lib/unicore/auxiliary/WBTest.txt 3752 * 7716752aad296d4ab23ff4ed0a2746fc5328750ff84e9e7d6f3828ee9eaef742 lib/unicore/auxiliary/WordBreakProperty.txt 3753 * b597836124298b8f7fa076273802840cfc3271a25f5c397a082e120954b82c3c lib/unicore/emoji/emoji.txt 3754 * e5fe51acc74e3e83b4fb4c7b25f3c34491d6eb8095c9955d0712dafbca7b3c2b lib/unicore/extracted/DBidiClass.txt 3755 * cd0a14176d93bf440b77a582a0d678190fc0688b15442d4cfb250bf2e27956af lib/unicore/extracted/DBinaryProperties.txt 3756 * 12b0c3af9b600b49488d66545a3e7844ea980809627201bf9afeebe1c9f16f4e lib/unicore/extracted/DCombiningClass.txt 3757 * f76064b298cfbd715ba542e7894f7a507d32da2f011070d1d01df95cad9817d6 lib/unicore/extracted/DDecompositionType.txt 3758 * f9bef074cc916db57fece99d54a4505f8e7c7b17481619e3f0005211f7717d4b lib/unicore/extracted/DEastAsianWidth.txt 3759 * cde679c8461976ed40d7edf61ae98cbb947540831f06f5bc7da7decbf91a1420 lib/unicore/extracted/DGeneralCategory.txt 3760 * 9bb891831328713603a486a4a03df7f7987c3e1e8144a6d1ac71fd061ef3f732 lib/unicore/extracted/DJoinGroup.txt 3761 * e97c65bbea0a69d2fae6ec4182b09e519e13232e20bd804b3004edc0f36bb0d4 lib/unicore/extracted/DJoinType.txt 3762 * 43f6df50e4878f501b417e366b0ee097ae5ccb2d4ce942026bed3d62d78e7887 lib/unicore/extracted/DLineBreak.txt 3763 * a04502ebb36a45d83cbe48a7d8132ea8143edb7b3d34d0aa6afe4a9685049741 lib/unicore/extracted/DNumType.txt 3764 * 11075771b112e8e7ccf6ffa637c4c91eadc3ef3db0517b24e605df8fd3624239 lib/unicore/extracted/DNumValues.txt 3765 * 2b1f989c7326b58b7e66be2dfa016bddaeb877644ac49839301302a0e64b6a4b lib/unicore/mktables 3766 * c72bbdeda99714db1c8024d3311da4aef3c0db3b9b9f11455a7cfe10d5e9aba3 lib/unicore/version 3767 * 0a6b5ab33bb1026531f816efe81aea1a8ffcd34a27cbea37dd6a70a63d73c844 regen/charset_translations.pl 3768 * 1aa94679c695efd507b7e4491629dba1021b74c21a5324dfd3a582a5d654bd32 regen/regcharclass.pl 3769 * b2f896452d2b30da3e04800f478c60c1fd0b03d6b668689b020f1e3cf1f1cdd9 regen/regcharclass_multi_char_folds.pl 3770 * ex: set ro: */ 3771