*/
/*** GENERATED CODE ***/
#define is_MULTI_CHAR_FOLD_utf8_safe_part0(s,e) \
-( ( ( 0xCA == ((const U8*)s)[1] ) && ( 0xBE == ((const U8*)s)[2] ) ) ? 3 : 0 )
+( ( ( ((const U8*)s)[1] & 0xDF ) == 'F' ) ? \
+ ( ( ( ( ((const U8*)s)[2] & 0xDF ) == 'I' ) || ( ( ((const U8*)s)[2] & 0xDF ) == 'L' ) ) ? 3 : 2 )\
+ : ( ( ( ((const U8*)s)[1] & 0xDF ) == 'I' ) || ( ( ((const U8*)s)[1] & 0xDF ) == 'L' ) ) ? 2 : 0 )
/*** GENERATED CODE ***/
#define is_MULTI_CHAR_FOLD_utf8_safe_part1(s,e) \
-( ( ( ((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 : 2 )\
- : ( ( ( ((const U8*)s)[1] & 0xDF ) == 'I' ) || ( ( ((const U8*)s)[1] & 0xDF ) == 'L' ) ) ? 2 : 0 )\
- : ( ( ((const U8*)s)[0] & 0xDF ) == 'H' ) ? \
+( ( ( ((const U8*)s)[0] & 0xDF ) == 'H' ) ? \
( ( ( 0xCC == ((const U8*)s)[1] ) && ( 0xB1 == ((const U8*)s)[2] ) ) ? 3 : 0 )\
: ( ( ((const U8*)s)[0] & 0xDF ) == 'I' ) ? \
( ( ( 0xCC == ((const U8*)s)[1] ) && ( 0x87 == ((const U8*)s)[2] ) ) ? 3 : 0 )\
: ( ( ((const U8*)s)[0] & 0xDF ) == 'J' ) ? \
( ( ( 0xCC == ((const U8*)s)[1] ) && ( 0x8C == ((const U8*)s)[2] ) ) ? 3 : 0 )\
: ( ( ((const U8*)s)[0] & 0xDF ) == 'S' ) ? \
- ( ( inRANGE(((const U8*)s)[1], 'S', 'T') || inRANGE(((const U8*)s)[1], 's', 't') ) ? 2 : 0 )\
+ ( ( inRANGE(((const U8*)s)[1], 'S', 'T') || inRANGE(((const U8*)s)[1], 's', 't') ) ? 2\
+ : ( ( 0xC5 == ((const U8*)s)[1] ) && ( 0xBF == ((const U8*)s)[2] ) ) ? 3 : 0 )\
: ( ( ((const U8*)s)[0] & 0xDF ) == 'T' ) ? \
( ( ( 0xCC == ((const U8*)s)[1] ) && ( 0x88 == ((const U8*)s)[2] ) ) ? 3 : 0 )\
: ( ( ( ((const U8*)s)[0] & 0xDF ) == 'W' ) || ( ( ((const U8*)s)[0] & 0xDF ) == 'Y' ) ) ?\
( ( ( 0xCC == ((const U8*)s)[1] ) && ( 0x8A == ((const U8*)s)[2] ) ) ? 3 : 0 )\
: ( 0xC5 == ((const U8*)s)[0] ) ? \
- ( ( ( ( 0xBF == ((const U8*)s)[1] ) && ( 0xC5 == ((const U8*)s)[2] ) ) && ( 0xBF == ((const U8*)s)[3] ) ) ? 4 : 0 )\
+ ( ( 0xBF == ((const U8*)s)[1] ) ? \
+ ( ( inRANGE(((const U8*)s)[2], 'S', 'T') || inRANGE(((const U8*)s)[2], 's', 't') ) ? 3\
+ : ( ( 0xC5 == ((const U8*)s)[2] ) && ( 0xBF == ((const U8*)s)[3] ) ) ? 4 : 0 )\
+ : 0 ) \
: ( 0xCA == ((const U8*)s)[0] ) ? \
( ( ( 0xBC == ((const U8*)s)[1] ) && ( ( ((const U8*)s)[2] & 0xDF ) == 'N' ) ) ? 3 : 0 )\
: ( 0xCE == ((const U8*)s)[0] ) ? \
: ( ( ((const U8*)s)[0] & 0xDF ) == 'J' ) ? \
( ( ( 0xCC == ((const U8*)s)[1] ) && ( 0x8C == ((const U8*)s)[2] ) ) ? 3 : 0 )\
: ( ( ((const U8*)s)[0] & 0xDF ) == 'S' ) ? \
- ( ( inRANGE(((const U8*)s)[1], 'S', 'T') || inRANGE(((const U8*)s)[1], 's', 't') ) ? 2 : 0 )\
+ ( ( inRANGE(((const U8*)s)[1], 'S', 'T') || inRANGE(((const U8*)s)[1], 's', 't') ) ? 2\
+ : ( ( 0xC5 == ((const U8*)s)[1] ) && ( 0xBF == ((const U8*)s)[2] ) ) ? 3 : 0 )\
: ( ( ((const U8*)s)[0] & 0xDF ) == 'T' ) ? \
( ( ( 0xCC == ((const U8*)s)[1] ) && ( 0x88 == ((const U8*)s)[2] ) ) ? 3 : 0 )\
: ( ( ( ((const U8*)s)[0] & 0xDF ) == 'W' ) || ( ( ((const U8*)s)[0] & 0xDF ) == 'Y' ) ) ?\
( ( ( 0xCC == ((const U8*)s)[1] ) && ( 0x8A == ((const U8*)s)[2] ) ) ? 3 : 0 )\
: ( 0xC5 == ((const U8*)s)[0] ) ? \
- ( ( ( ( 0xBF == ((const U8*)s)[1] ) && ( 0xC5 == ((const U8*)s)[2] ) ) && ( 0xBF == ((const U8*)s)[3] ) ) ? 4 : 0 )\
+ ( ( 0xBF == ((const U8*)s)[1] ) ? \
+ ( ( inRANGE(((const U8*)s)[2], 'S', 'T') || inRANGE(((const U8*)s)[2], 's', 't') ) ? 3\
+ : ( ( 0xC5 == ((const U8*)s)[2] ) && ( 0xBF == ((const U8*)s)[3] ) ) ? 4 : 0 )\
+ : 0 ) \
: ( 0xCA == ((const U8*)s)[0] ) ? \
( ( ( 0xBC == ((const U8*)s)[1] ) && ( ( ((const U8*)s)[2] & 0xDF ) == 'N' ) ) ? 3 : 0 )\
: ( 0xCE == ((const U8*)s)[0] ) ? \
: ( ( ((const U8*)s)[0] & 0xDF ) == 'J' ) ? \
( ( ( 0xCC == ((const U8*)s)[1] ) && ( 0x8C == ((const U8*)s)[2] ) ) ? 3 : 0 )\
: ( ( ((const U8*)s)[0] & 0xDF ) == 'S' ) ? \
- ( ( inRANGE(((const U8*)s)[1], 'S', 'T') || inRANGE(((const U8*)s)[1], 's', 't') ) ? 2 : 0 )\
+ ( ( inRANGE(((const U8*)s)[1], 'S', 'T') || inRANGE(((const U8*)s)[1], 's', 't') ) ? 2\
+ : ( ( 0xC5 == ((const U8*)s)[1] ) && ( 0xBF == ((const U8*)s)[2] ) ) ? 3 : 0 )\
: ( ( ((const U8*)s)[0] & 0xDF ) == 'T' ) ? \
( ( ( 0xCC == ((const U8*)s)[1] ) && ( 0x88 == ((const U8*)s)[2] ) ) ? 3 : 0 )\
: ( ( ( ((const U8*)s)[0] & 0xDF ) == 'W' ) || ( ( ((const U8*)s)[0] & 0xDF ) == 'Y' ) ) ?\
( ( ( 0xCC == ((const U8*)s)[1] ) && ( 0x8A == ((const U8*)s)[2] ) ) ? 3 : 0 )\
+ : ( 0xC5 == ((const U8*)s)[0] ) ? \
+ ( ( ( 0xBF == ((const U8*)s)[1] ) && ( inRANGE(((const U8*)s)[2], 'S', 'T') || inRANGE(((const U8*)s)[2], 's', 't') ) ) ? 3 : 0 )\
: ( ( ( 0xCA == ((const U8*)s)[0] ) && ( 0xBC == ((const U8*)s)[1] ) ) && ( ( ((const U8*)s)[2] & 0xDF ) == 'N' ) ) ? 3 : 0 )\
: ((e)-(s) > 1) ? \
( ( ( ((const U8*)s)[0] & 0xDF ) == 'F' ) ? \
/*** GENERATED CODE ***/
#define is_MULTI_CHAR_FOLD_utf8_safe(s,e) \
( ((e)-(s) > 5) ? \
- ( ( ( ((const U8*)s)[0] & 0xDF ) == 'A' ) ? is_MULTI_CHAR_FOLD_utf8_safe_part0(s,e) : is_MULTI_CHAR_FOLD_utf8_safe_part1(s,e) )\
+ ( ( ( ((const U8*)s)[0] & 0xDF ) == 'A' ) ? \
+ ( ( ( 0xCA == ((const U8*)s)[1] ) && ( 0xBE == ((const U8*)s)[2] ) ) ? 3 : 0 )\
+ : ( ( ((const U8*)s)[0] & 0xDF ) == 'F' ) ? is_MULTI_CHAR_FOLD_utf8_safe_part0(s,e) : is_MULTI_CHAR_FOLD_utf8_safe_part1(s,e) )\
: ((e)-(s) > 4) ? \
( ( ( ((const U8*)s)[0] & 0xDF ) == 'A' ) ? \
( ( ( 0xCA == ((const U8*)s)[1] ) && ( 0xBE == ((const U8*)s)[2] ) ) ? 3 : 0 )\
: ( ( ((const U8*)s)[0] & 0xDF ) == 'J' ) ? \
( ( ( 0xCC == ((const U8*)s)[1] ) && ( 0x8C == ((const U8*)s)[2] ) ) ? 3 : 0 )\
: ( ( ((const U8*)s)[0] & 0xDF ) == 'S' ) ? \
- ( ( inRANGE(((const U8*)s)[1], 'S', 'T') || inRANGE(((const U8*)s)[1], 's', 't') ) ? 2 : 0 )\
+ ( ( inRANGE(((const U8*)s)[1], 'S', 'T') || inRANGE(((const U8*)s)[1], 's', 't') ) ? 2\
+ : ( ( 0xC5 == ((const U8*)s)[1] ) && ( 0xBF == ((const U8*)s)[2] ) ) ? 3 : 0 )\
: ( ( ((const U8*)s)[0] & 0xDF ) == 'T' ) ? \
( ( ( 0xCC == ((const U8*)s)[1] ) && ( 0x88 == ((const U8*)s)[2] ) ) ? 3 : 0 )\
: ( ( ( ((const U8*)s)[0] & 0xDF ) == 'W' ) || ( ( ((const U8*)s)[0] & 0xDF ) == 'Y' ) ) ?\
( ( ( 0xCC == ((const U8*)s)[1] ) && ( 0x8A == ((const U8*)s)[2] ) ) ? 3 : 0 )\
: ( 0xC5 == ((const U8*)s)[0] ) ? \
- ( ( ( ( 0xBF == ((const U8*)s)[1] ) && ( 0xC5 == ((const U8*)s)[2] ) ) && ( 0xBF == ((const U8*)s)[3] ) ) ? 4 : 0 )\
+ ( ( 0xBF == ((const U8*)s)[1] ) ? \
+ ( ( inRANGE(((const U8*)s)[2], 'S', 'T') || inRANGE(((const U8*)s)[2], 's', 't') ) ? 3\
+ : ( ( 0xC5 == ((const U8*)s)[2] ) && ( 0xBF == ((const U8*)s)[3] ) ) ? 4 : 0 )\
+ : 0 ) \
: ( 0xCA == ((const U8*)s)[0] ) ? \
( ( ( 0xBC == ((const U8*)s)[1] ) && ( ( ((const U8*)s)[2] & 0xDF ) == 'N' ) ) ? 3 : 0 )\
: ( 0xCE == ((const U8*)s)[0] ) ? \
( ( ( ( ((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\
: ( ( ((const U8*)s)[0] & 0xDF ) == 'F' ) ? \
( ( ( ((const U8*)s)[1] & 0xDF ) == 'F' ) ? 2 : 1 ) \
+ : ( 0xC5 == ((const U8*)s)[0] ) ? \
+ ( ( 0xBF == ((const U8*)s)[1] ) ? 2 : 0 ) \
: ( 0xCA == ((const U8*)s)[0] ) ? \
( ( 0xBC == ((const U8*)s)[1] ) ? 2 : 0 ) \
: ( 0xCE == ((const U8*)s)[0] ) ? \
( ( ( ( ((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\
: ( ( ((const U8*)s)[0] & 0xDF ) == 'F' ) ? \
( ( ( ((const U8*)s)[1] & 0xDF ) == 'F' ) ? 2 : 1 ) \
+ : ( 0xC5 == ((const U8*)s)[0] ) ? \
+ ( ( 0xBF == ((const U8*)s)[1] ) ? 2 : 0 ) \
: ( 0xCA == ((const U8*)s)[0] ) ? \
( ( 0xBC == ((const U8*)s)[1] ) ? 2 : 0 ) \
: ( 0xCE == ((const U8*)s)[0] ) ? \
( ( ( ( ((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\
: ( ( ((const U8*)s)[0] & 0xDF ) == 'F' ) ? \
( ( ( ((const U8*)s)[1] & 0xDF ) == 'F' ) ? 2 : 1 ) \
+ : ( 0xC5 == ((const U8*)s)[0] ) ? \
+ ( ( 0xBF == ((const U8*)s)[1] ) ? 2 : 0 ) \
: ( 0xCA == ((const U8*)s)[0] ) ? \
( ( 0xBC == ((const U8*)s)[1] ) ? 2 : 0 ) \
: ( 0xCE == ((const U8*)s)[0] ) ? \
*/
/*** GENERATED CODE ***/
#define is_MULTI_CHAR_FOLD_utf8_safe_part0(s,e) \
-( ( ( ((const U8*)s)[1] & 0xBF ) == 'f' ) ? \
- ( ( ( ( ((const U8*)s)[2] & 0xBF ) == 'i' ) || ( ( ((const U8*)s)[2] & 0xBF ) == 'l' ) ) ? 3 : 2 )\
- : ( ( ( ((const U8*)s)[1] & 0xBF ) == 'i' ) || ( ( ((const U8*)s)[1] & 0xBF ) == 'l' ) ) ? 2 : 0 )
+( ( ( 0xB0 == ((const U8*)s)[1] ) && ( 0x58 == ((const U8*)s)[2] ) ) ? 3 : 0 )
/*** GENERATED CODE ***/
#define is_MULTI_CHAR_FOLD_utf8_safe_part1(s,e) \
-( ( ( ((const U8*)s)[0] & 0xBF ) == 'h' ) ? \
- ( ( ( 0xB0 == ((const U8*)s)[1] ) && ( 0x58 == ((const U8*)s)[2] ) ) ? 3 : 0 )\
- : ( ( ((const U8*)s)[0] & 0xBF ) == 'i' ) ? \
+( ( ( ((const U8*)s)[0] & 0xBF ) == 'i' ) ? \
( ( ( 0xAF == ((const U8*)s)[1] ) && ( 0x48 == ((const U8*)s)[2] ) ) ? 3 : 0 )\
: ( 0x8F == ((const U8*)s)[0] ) ? \
- ( ( ( ( 0x73 == ((const U8*)s)[1] ) && ( 0x8F == ((const U8*)s)[2] ) ) && ( 0x73 == ((const U8*)s)[3] ) ) ? 4 : 0 )\
+ ( ( 0x73 == ((const U8*)s)[1] ) ? \
+ ( ( 0x8F == ((const U8*)s)[2] ) ? \
+ ( ( 0x73 == ((const U8*)s)[3] ) ? 4 : 0 ) \
+ : ( ( ((const U8*)s)[2] & 0xBE ) == 's' ) ? 3 : 0 ) \
+ : 0 ) \
: ( ( ((const U8*)s)[0] & 0xBF ) == 'j' ) ? \
( ( ( 0xAF == ((const U8*)s)[1] ) && ( 0x53 == ((const U8*)s)[2] ) ) ? 3 : 0 )\
: ( ( ((const U8*)s)[0] & 0xBF ) == 's' ) ? \
- ( ( ( ((const U8*)s)[1] & 0xBE ) == 's' ) ? 2 : 0 ) \
+ ( ( 0x8F == ((const U8*)s)[1] ) ? \
+ ( ( 0x73 == ((const U8*)s)[2] ) ? 3 : 0 ) \
+ : ( ( ((const U8*)s)[1] & 0xBE ) == 's' ) ? 2 : 0 ) \
: ( ( ((const U8*)s)[0] & 0xBF ) == 't' ) ? \
( ( ( 0xAF == ((const U8*)s)[1] ) && ( 0x49 == ((const U8*)s)[2] ) ) ? 3 : 0 )\
: ( ( ( ((const U8*)s)[0] & 0xBF ) == 'w' ) || ( ( ((const U8*)s)[0] & 0xBF ) == 'y' ) ) ?\
: ( ( ((const U8*)s)[0] & 0xBF ) == 'i' ) ? \
( ( ( 0xAF == ((const U8*)s)[1] ) && ( 0x48 == ((const U8*)s)[2] ) ) ? 3 : 0 )\
: ( 0x8F == ((const U8*)s)[0] ) ? \
- ( ( ( ( 0x73 == ((const U8*)s)[1] ) && ( 0x8F == ((const U8*)s)[2] ) ) && ( 0x73 == ((const U8*)s)[3] ) ) ? 4 : 0 )\
+ ( ( 0x73 == ((const U8*)s)[1] ) ? \
+ ( ( 0x8F == ((const U8*)s)[2] ) ? \
+ ( ( 0x73 == ((const U8*)s)[3] ) ? 4 : 0 ) \
+ : ( ( ((const U8*)s)[2] & 0xBE ) == 's' ) ? 3 : 0 ) \
+ : 0 ) \
: ( ( ((const U8*)s)[0] & 0xBF ) == 'j' ) ? \
( ( ( 0xAF == ((const U8*)s)[1] ) && ( 0x53 == ((const U8*)s)[2] ) ) ? 3 : 0 )\
: ( ( ((const U8*)s)[0] & 0xBF ) == 's' ) ? \
- ( ( ( ((const U8*)s)[1] & 0xBE ) == 's' ) ? 2 : 0 ) \
+ ( ( 0x8F == ((const U8*)s)[1] ) ? \
+ ( ( 0x73 == ((const U8*)s)[2] ) ? 3 : 0 ) \
+ : ( ( ((const U8*)s)[1] & 0xBE ) == 's' ) ? 2 : 0 ) \
: ( ( ((const U8*)s)[0] & 0xBF ) == 't' ) ? \
( ( ( 0xAF == ((const U8*)s)[1] ) && ( 0x49 == ((const U8*)s)[2] ) ) ? 3 : 0 )\
: ( ( ( ((const U8*)s)[0] & 0xBF ) == 'w' ) || ( ( ((const U8*)s)[0] & 0xBF ) == 'y' ) ) ?\
: ( ( ((const U8*)s)[0] & 0xBF ) == 'i' ) ? \
( ( ( 0xAF == ((const U8*)s)[1] ) && ( 0x48 == ((const U8*)s)[2] ) ) ? 3 : 0 )\
: ( 0x8F == ((const U8*)s)[0] ) ? \
- ( ( ( ( 0x73 == ((const U8*)s)[1] ) && ( 0x8F == ((const U8*)s)[2] ) ) && ( 0x73 == ((const U8*)s)[3] ) ) ? 4 : 0 )\
+ ( ( 0x73 == ((const U8*)s)[1] ) ? \
+ ( ( 0x8F == ((const U8*)s)[2] ) ? \
+ ( ( 0x73 == ((const U8*)s)[3] ) ? 4 : 0 ) \
+ : ( ( ((const U8*)s)[2] & 0xBE ) == 's' ) ? 3 : 0 ) \
+ : 0 ) \
: ( ( ((const U8*)s)[0] & 0xBF ) == 'j' ) ? \
( ( ( 0xAF == ((const U8*)s)[1] ) && ( 0x53 == ((const U8*)s)[2] ) ) ? 3 : 0 )\
: ( ( ((const U8*)s)[0] & 0xBF ) == 's' ) ? \
- ( ( ( ((const U8*)s)[1] & 0xBE ) == 's' ) ? 2 : 0 ) \
+ ( ( 0x8F == ((const U8*)s)[1] ) ? \
+ ( ( 0x73 == ((const U8*)s)[2] ) ? 3 : 0 ) \
+ : ( ( ((const U8*)s)[1] & 0xBE ) == 's' ) ? 2 : 0 ) \
: ( ( ((const U8*)s)[0] & 0xBF ) == 't' ) ? \
( ( ( 0xAF == ((const U8*)s)[1] ) && ( 0x49 == ((const U8*)s)[2] ) ) ? 3 : 0 )\
: ( ( ( ((const U8*)s)[0] & 0xBF ) == 'w' ) || ( ( ((const U8*)s)[0] & 0xBF ) == 'y' ) ) ?\
( ( ( 0xB0 == ((const U8*)s)[1] ) && ( 0x58 == ((const U8*)s)[2] ) ) ? 3 : 0 )\
: ( ( ((const U8*)s)[0] & 0xBF ) == 'i' ) ? \
( ( ( 0xAF == ((const U8*)s)[1] ) && ( 0x48 == ((const U8*)s)[2] ) ) ? 3 : 0 )\
+ : ( 0x8F == ((const U8*)s)[0] ) ? \
+ ( ( ( 0x73 == ((const U8*)s)[1] ) && ( ( ((const U8*)s)[2] & 0xBE ) == 's' ) ) ? 3 : 0 )\
: ( ( ((const U8*)s)[0] & 0xBF ) == 'j' ) ? \
( ( ( 0xAF == ((const U8*)s)[1] ) && ( 0x53 == ((const U8*)s)[2] ) ) ? 3 : 0 )\
: ( ( ((const U8*)s)[0] & 0xBF ) == 's' ) ? \
- ( ( ( ((const U8*)s)[1] & 0xBE ) == 's' ) ? 2 : 0 ) \
+ ( ( 0x8F == ((const U8*)s)[1] ) ? \
+ ( ( 0x73 == ((const U8*)s)[2] ) ? 3 : 0 ) \
+ : ( ( ((const U8*)s)[1] & 0xBE ) == 's' ) ? 2 : 0 ) \
: ( ( ((const U8*)s)[0] & 0xBF ) == 't' ) ? \
( ( ( 0xAF == ((const U8*)s)[1] ) && ( 0x49 == ((const U8*)s)[2] ) ) ? 3 : 0 )\
: ( ( ( ((const U8*)s)[0] & 0xBF ) == 'w' ) || ( ( ((const U8*)s)[0] & 0xBF ) == 'y' ) ) ?\
( ((e)-(s) > 5) ? \
( ( ( ((const U8*)s)[0] & 0xBF ) == 'a' ) ? \
( ( ( 0xAB == ((const U8*)s)[1] ) && ( 0x72 == ((const U8*)s)[2] ) ) ? 3 : 0 )\
- : ( ( ((const U8*)s)[0] & 0xBF ) == 'f' ) ? is_MULTI_CHAR_FOLD_utf8_safe_part0(s,e) : is_MULTI_CHAR_FOLD_utf8_safe_part1(s,e) )\
+ : ( ( ((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 : 2 )\
+ : ( ( ( ((const U8*)s)[1] & 0xBF ) == 'i' ) || ( ( ((const U8*)s)[1] & 0xBF ) == 'l' ) ) ? 2 : 0 )\
+ : ( ( ((const U8*)s)[0] & 0xBF ) == 'h' ) ? is_MULTI_CHAR_FOLD_utf8_safe_part0(s,e) : is_MULTI_CHAR_FOLD_utf8_safe_part1(s,e) )\
: ((e)-(s) > 4) ? is_MULTI_CHAR_FOLD_utf8_safe_part2(s,e) : is_MULTI_CHAR_FOLD_utf8_safe_part3(s,e) )
/*
( ( ( ( ((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\
: ( ( ((const U8*)s)[0] & 0xBF ) == 'f' ) ? \
( ( ( ((const U8*)s)[1] & 0xBF ) == 'f' ) ? 2 : 1 ) \
+ : ( 0x8F == ((const U8*)s)[0] ) ? \
+ ( ( 0x73 == ((const U8*)s)[1] ) ? 2 : 0 ) \
: ( 0xAB == ((const U8*)s)[0] ) ? \
( ( 0x70 == ((const U8*)s)[1] ) ? 2 : 0 ) \
: ( 0xB4 == ((const U8*)s)[0] ) ? \
( ( ( ( ((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\
: ( ( ((const U8*)s)[0] & 0xBF ) == 'f' ) ? \
( ( ( ((const U8*)s)[1] & 0xBF ) == 'f' ) ? 2 : 1 ) \
+ : ( 0x8F == ((const U8*)s)[0] ) ? \
+ ( ( 0x73 == ((const U8*)s)[1] ) ? 2 : 0 ) \
: ( 0xAB == ((const U8*)s)[0] ) ? \
( ( 0x70 == ((const U8*)s)[1] ) ? 2 : 0 ) \
: ( 0xB4 == ((const U8*)s)[0] ) ? \
( ( ( ( ((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\
: ( ( ((const U8*)s)[0] & 0xBF ) == 'f' ) ? \
( ( ( ((const U8*)s)[1] & 0xBF ) == 'f' ) ? 2 : 1 ) \
+ : ( 0x8F == ((const U8*)s)[0] ) ? \
+ ( ( 0x73 == ((const U8*)s)[1] ) ? 2 : 0 ) \
: ( 0xAB == ((const U8*)s)[0] ) ? \
( ( 0x70 == ((const U8*)s)[1] ) ? 2 : 0 ) \
: ( 0xB4 == ((const U8*)s)[0] ) ? \
*/
/*** GENERATED CODE ***/
#define is_MULTI_CHAR_FOLD_utf8_safe_part0(s,e) \
-( ( ( ((const U8*)s)[1] & 0xBF ) == 'f' ) ? \
- ( ( ( ( ((const U8*)s)[2] & 0xBF ) == 'i' ) || ( ( ((const U8*)s)[2] & 0xBF ) == 'l' ) ) ? 3 : 2 )\
- : ( ( ( ((const U8*)s)[1] & 0xBF ) == 'i' ) || ( ( ((const U8*)s)[1] & 0xBF ) == 'l' ) ) ? 2 : 0 )
+( ( ( 0xAE == ((const U8*)s)[1] ) && ( 0x58 == ((const U8*)s)[2] ) ) ? 3 : 0 )
/*** GENERATED CODE ***/
#define is_MULTI_CHAR_FOLD_utf8_safe_part1(s,e) \
-( ( ( ((const U8*)s)[0] & 0xBF ) == 'h' ) ? \
- ( ( ( 0xAE == ((const U8*)s)[1] ) && ( 0x58 == ((const U8*)s)[2] ) ) ? 3 : 0 )\
- : ( ( ((const U8*)s)[0] & 0xBF ) == 'i' ) ? \
+( ( ( ((const U8*)s)[0] & 0xBF ) == 'i' ) ? \
( ( ( 0xAD == ((const U8*)s)[1] ) && ( 0x48 == ((const U8*)s)[2] ) ) ? 3 : 0 )\
: ( 0x8E == ((const U8*)s)[0] ) ? \
- ( ( ( ( 0x72 == ((const U8*)s)[1] ) && ( 0x8E == ((const U8*)s)[2] ) ) && ( 0x72 == ((const U8*)s)[3] ) ) ? 4 : 0 )\
+ ( ( 0x72 == ((const U8*)s)[1] ) ? \
+ ( ( 0x8E == ((const U8*)s)[2] ) ? \
+ ( ( 0x72 == ((const U8*)s)[3] ) ? 4 : 0 ) \
+ : ( ( ((const U8*)s)[2] & 0xBE ) == 's' ) ? 3 : 0 ) \
+ : 0 ) \
: ( ( ((const U8*)s)[0] & 0xBF ) == 'j' ) ? \
( ( ( 0xAD == ((const U8*)s)[1] ) && ( 0x53 == ((const U8*)s)[2] ) ) ? 3 : 0 )\
: ( ( ((const U8*)s)[0] & 0xBF ) == 's' ) ? \
- ( ( ( ((const U8*)s)[1] & 0xBE ) == 's' ) ? 2 : 0 ) \
+ ( ( 0x8E == ((const U8*)s)[1] ) ? \
+ ( ( 0x72 == ((const U8*)s)[2] ) ? 3 : 0 ) \
+ : ( ( ((const U8*)s)[1] & 0xBE ) == 's' ) ? 2 : 0 ) \
: ( ( ((const U8*)s)[0] & 0xBF ) == 't' ) ? \
( ( ( 0xAD == ((const U8*)s)[1] ) && ( 0x49 == ((const U8*)s)[2] ) ) ? 3 : 0 )\
: ( ( ( ((const U8*)s)[0] & 0xBF ) == 'w' ) || ( ( ((const U8*)s)[0] & 0xBF ) == 'y' ) ) ?\
: ( ( ((const U8*)s)[0] & 0xBF ) == 'i' ) ? \
( ( ( 0xAD == ((const U8*)s)[1] ) && ( 0x48 == ((const U8*)s)[2] ) ) ? 3 : 0 )\
: ( 0x8E == ((const U8*)s)[0] ) ? \
- ( ( ( ( 0x72 == ((const U8*)s)[1] ) && ( 0x8E == ((const U8*)s)[2] ) ) && ( 0x72 == ((const U8*)s)[3] ) ) ? 4 : 0 )\
+ ( ( 0x72 == ((const U8*)s)[1] ) ? \
+ ( ( 0x8E == ((const U8*)s)[2] ) ? \
+ ( ( 0x72 == ((const U8*)s)[3] ) ? 4 : 0 ) \
+ : ( ( ((const U8*)s)[2] & 0xBE ) == 's' ) ? 3 : 0 ) \
+ : 0 ) \
: ( ( ((const U8*)s)[0] & 0xBF ) == 'j' ) ? \
( ( ( 0xAD == ((const U8*)s)[1] ) && ( 0x53 == ((const U8*)s)[2] ) ) ? 3 : 0 )\
: ( ( ((const U8*)s)[0] & 0xBF ) == 's' ) ? \
- ( ( ( ((const U8*)s)[1] & 0xBE ) == 's' ) ? 2 : 0 ) \
+ ( ( 0x8E == ((const U8*)s)[1] ) ? \
+ ( ( 0x72 == ((const U8*)s)[2] ) ? 3 : 0 ) \
+ : ( ( ((const U8*)s)[1] & 0xBE ) == 's' ) ? 2 : 0 ) \
: ( ( ((const U8*)s)[0] & 0xBF ) == 't' ) ? \
( ( ( 0xAD == ((const U8*)s)[1] ) && ( 0x49 == ((const U8*)s)[2] ) ) ? 3 : 0 )\
: ( ( ( ((const U8*)s)[0] & 0xBF ) == 'w' ) || ( ( ((const U8*)s)[0] & 0xBF ) == 'y' ) ) ?\
: ( ( ((const U8*)s)[0] & 0xBF ) == 'i' ) ? \
( ( ( 0xAD == ((const U8*)s)[1] ) && ( 0x48 == ((const U8*)s)[2] ) ) ? 3 : 0 )\
: ( 0x8E == ((const U8*)s)[0] ) ? \
- ( ( ( ( 0x72 == ((const U8*)s)[1] ) && ( 0x8E == ((const U8*)s)[2] ) ) && ( 0x72 == ((const U8*)s)[3] ) ) ? 4 : 0 )\
+ ( ( 0x72 == ((const U8*)s)[1] ) ? \
+ ( ( 0x8E == ((const U8*)s)[2] ) ? \
+ ( ( 0x72 == ((const U8*)s)[3] ) ? 4 : 0 ) \
+ : ( ( ((const U8*)s)[2] & 0xBE ) == 's' ) ? 3 : 0 ) \
+ : 0 ) \
: ( ( ((const U8*)s)[0] & 0xBF ) == 'j' ) ? \
( ( ( 0xAD == ((const U8*)s)[1] ) && ( 0x53 == ((const U8*)s)[2] ) ) ? 3 : 0 )\
: ( ( ((const U8*)s)[0] & 0xBF ) == 's' ) ? \
- ( ( ( ((const U8*)s)[1] & 0xBE ) == 's' ) ? 2 : 0 ) \
+ ( ( 0x8E == ((const U8*)s)[1] ) ? \
+ ( ( 0x72 == ((const U8*)s)[2] ) ? 3 : 0 ) \
+ : ( ( ((const U8*)s)[1] & 0xBE ) == 's' ) ? 2 : 0 ) \
: ( ( ((const U8*)s)[0] & 0xBF ) == 't' ) ? \
( ( ( 0xAD == ((const U8*)s)[1] ) && ( 0x49 == ((const U8*)s)[2] ) ) ? 3 : 0 )\
: ( ( ( ((const U8*)s)[0] & 0xBF ) == 'w' ) || ( ( ((const U8*)s)[0] & 0xBF ) == 'y' ) ) ?\
( ( ( 0xAE == ((const U8*)s)[1] ) && ( 0x58 == ((const U8*)s)[2] ) ) ? 3 : 0 )\
: ( ( ((const U8*)s)[0] & 0xBF ) == 'i' ) ? \
( ( ( 0xAD == ((const U8*)s)[1] ) && ( 0x48 == ((const U8*)s)[2] ) ) ? 3 : 0 )\
+ : ( 0x8E == ((const U8*)s)[0] ) ? \
+ ( ( ( 0x72 == ((const U8*)s)[1] ) && ( ( ((const U8*)s)[2] & 0xBE ) == 's' ) ) ? 3 : 0 )\
: ( ( ((const U8*)s)[0] & 0xBF ) == 'j' ) ? \
( ( ( 0xAD == ((const U8*)s)[1] ) && ( 0x53 == ((const U8*)s)[2] ) ) ? 3 : 0 )\
: ( ( ((const U8*)s)[0] & 0xBF ) == 's' ) ? \
- ( ( ( ((const U8*)s)[1] & 0xBE ) == 's' ) ? 2 : 0 ) \
+ ( ( 0x8E == ((const U8*)s)[1] ) ? \
+ ( ( 0x72 == ((const U8*)s)[2] ) ? 3 : 0 ) \
+ : ( ( ((const U8*)s)[1] & 0xBE ) == 's' ) ? 2 : 0 ) \
: ( ( ((const U8*)s)[0] & 0xBF ) == 't' ) ? \
( ( ( 0xAD == ((const U8*)s)[1] ) && ( 0x49 == ((const U8*)s)[2] ) ) ? 3 : 0 )\
: ( ( ( ((const U8*)s)[0] & 0xBF ) == 'w' ) || ( ( ((const U8*)s)[0] & 0xBF ) == 'y' ) ) ?\
( ((e)-(s) > 5) ? \
( ( ( ((const U8*)s)[0] & 0xBF ) == 'a' ) ? \
( ( ( 0xAA == ((const U8*)s)[1] ) && ( 0x71 == ((const U8*)s)[2] ) ) ? 3 : 0 )\
- : ( ( ((const U8*)s)[0] & 0xBF ) == 'f' ) ? is_MULTI_CHAR_FOLD_utf8_safe_part0(s,e) : is_MULTI_CHAR_FOLD_utf8_safe_part1(s,e) )\
+ : ( ( ((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 : 2 )\
+ : ( ( ( ((const U8*)s)[1] & 0xBF ) == 'i' ) || ( ( ((const U8*)s)[1] & 0xBF ) == 'l' ) ) ? 2 : 0 )\
+ : ( ( ((const U8*)s)[0] & 0xBF ) == 'h' ) ? is_MULTI_CHAR_FOLD_utf8_safe_part0(s,e) : is_MULTI_CHAR_FOLD_utf8_safe_part1(s,e) )\
: ((e)-(s) > 4) ? is_MULTI_CHAR_FOLD_utf8_safe_part2(s,e) : is_MULTI_CHAR_FOLD_utf8_safe_part3(s,e) )
/*
( ( ( ( ((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\
: ( ( ((const U8*)s)[0] & 0xBF ) == 'f' ) ? \
( ( ( ((const U8*)s)[1] & 0xBF ) == 'f' ) ? 2 : 1 ) \
+ : ( 0x8E == ((const U8*)s)[0] ) ? \
+ ( ( 0x72 == ((const U8*)s)[1] ) ? 2 : 0 ) \
: ( 0xAA == ((const U8*)s)[0] ) ? \
( ( 0x6A == ((const U8*)s)[1] ) ? 2 : 0 ) \
: ( 0xB3 == ((const U8*)s)[0] ) ? \
( ( ( ( ((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\
: ( ( ((const U8*)s)[0] & 0xBF ) == 'f' ) ? \
( ( ( ((const U8*)s)[1] & 0xBF ) == 'f' ) ? 2 : 1 ) \
+ : ( 0x8E == ((const U8*)s)[0] ) ? \
+ ( ( 0x72 == ((const U8*)s)[1] ) ? 2 : 0 ) \
: ( 0xAA == ((const U8*)s)[0] ) ? \
( ( 0x6A == ((const U8*)s)[1] ) ? 2 : 0 ) \
: ( 0xB3 == ((const U8*)s)[0] ) ? \
( ( ( ( ((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\
: ( ( ((const U8*)s)[0] & 0xBF ) == 'f' ) ? \
( ( ( ((const U8*)s)[1] & 0xBF ) == 'f' ) ? 2 : 1 ) \
+ : ( 0x8E == ((const U8*)s)[0] ) ? \
+ ( ( 0x72 == ((const U8*)s)[1] ) ? 2 : 0 ) \
: ( 0xAA == ((const U8*)s)[0] ) ? \
( ( 0x6A == ((const U8*)s)[1] ) ? 2 : 0 ) \
: ( 0xB3 == ((const U8*)s)[0] ) ? \
* 50b85a67451145545a65cea370dab8d3444fbfe07e9c34cef560c5b7da9d3eef lib/unicore/version
* 2680b9254eb236c5c090f11b149605043e8c8433661b96efc4a42fb4709342a5 regen/charset_translations.pl
* e44d836c4a344d535e81585842da1e85bbc24f2f67f4f3e7e3ec32b16262f856 regen/regcharclass.pl
- * 8e2fbe009254587ec791f6d5443a61f609de3796b12137dea197cd6f68112114 regen/regcharclass_multi_char_folds.pl
+ * c0a5e4cb2b9ffad78691938e122c1310bbc98aca2364af243e5c6b2ec0f59dc3 regen/regcharclass_multi_char_folds.pl
* ex: set ro: */