/* Generated by re2c */
#line 1 "encodings/unicode_group_L_x.re"
// re2c $INPUT -o $OUTPUT -x
#include <stdint.h>
#include <stdio.h>
#include "utf16.h"
#define YYCTYPE uint16_t

bool scan(const YYCTYPE* start, const YYCTYPE* const limit) {
	__attribute__((unused)) const YYCTYPE* YYMARKER;
#define YYCURSOR start
L:

#line 15 "encodings/unicode_group_L_x.c"
{
	YYCTYPE yych;
	yych = *YYCURSOR;
	if (yych <= 0x17D6) {
		if (yych <= 0x0B8A) {
			if (yych <= 0x0888) {
				if (yych <= 0x0559) {
					if (yych <= 0x036F) {
						if (yych <= 0x00D6) {
							if (yych <= 0x00AA) {
								if (yych <= '`') {
									if (yych <= '@') goto yy1;
									if (yych <= 'Z') goto yy3;
								} else {
									if (yych <= 'z') goto yy3;
									if (yych >= 0x00AA) goto yy3;
								}
							} else {
								if (yych <= 0x00B9) {
									if (yych == 0x00B5) goto yy3;
								} else {
									if (yych <= 0x00BA) goto yy3;
									if (yych >= 0x00C0) goto yy3;
								}
							}
						} else {
							if (yych <= 0x02D1) {
								if (yych <= 0x00F7) {
									if (yych <= 0x00D7) goto yy1;
									if (yych <= 0x00F6) goto yy3;
								} else {
									if (yych <= 0x02C1) goto yy3;
									if (yych >= 0x02C6) goto yy3;
								}
							} else {
								if (yych <= 0x02EB) {
									if (yych <= 0x02DF) goto yy1;
									if (yych <= 0x02E4) goto yy3;
								} else {
									if (yych == 0x02ED) goto yy1;
									if (yych <= 0x02EE) goto yy3;
								}
							}
						}
					} else {
						if (yych <= 0x038B) {
							if (yych <= 0x037E) {
								if (yych <= 0x0377) {
									if (yych != 0x0375) goto yy3;
								} else {
									if (yych <= 0x0379) goto yy1;
									if (yych <= 0x037D) goto yy3;
								}
							} else {
								if (yych <= 0x0386) {
									if (yych <= 0x037F) goto yy3;
									if (yych >= 0x0386) goto yy3;
								} else {
									if (yych <= 0x0387) goto yy1;
									if (yych <= 0x038A) goto yy3;
								}
							}
						} else {
							if (yych <= 0x03F6) {
								if (yych <= 0x03A1) {
									if (yych != 0x038D) goto yy3;
								} else {
									if (yych <= 0x03A2) goto yy1;
									if (yych <= 0x03F5) goto yy3;
								}
							} else {
								if (yych <= 0x052F) {
									if (yych <= 0x0481) goto yy3;
									if (yych >= 0x048A) goto yy3;
								} else {
									if (yych <= 0x0530) goto yy1;
									if (yych <= 0x0556) goto yy3;
									if (yych >= 0x0559) goto yy3;
								}
							}
						}
					}
				} else {
					if (yych <= 0x0711) {
						if (yych <= 0x06D3) {
							if (yych <= 0x05F2) {
								if (yych <= 0x05CF) {
									if (yych <= 0x055F) goto yy1;
									if (yych <= 0x0588) goto yy3;
								} else {
									if (yych <= 0x05EA) goto yy3;
									if (yych >= 0x05EF) goto yy3;
								}
							} else {
								if (yych <= 0x066D) {
									if (yych <= 0x061F) goto yy1;
									if (yych <= 0x064A) goto yy3;
								} else {
									if (yych != 0x0670) goto yy3;
								}
							}
						} else {
							if (yych <= 0x06EF) {
								if (yych <= 0x06E4) {
									if (yych == 0x06D5) goto yy3;
								} else {
									if (yych <= 0x06E6) goto yy3;
									if (yych >= 0x06EE) goto yy3;
								}
							} else {
								if (yych <= 0x06FE) {
									if (yych <= 0x06F9) goto yy1;
									if (yych <= 0x06FC) goto yy3;
								} else {
									if (yych <= 0x06FF) goto yy3;
									if (yych == 0x0710) goto yy3;
								}
							}
						}
					} else {
						if (yych <= 0x0815) {
							if (yych <= 0x07C9) {
								if (yych <= 0x07A5) {
									if (yych <= 0x072F) goto yy3;
									if (yych >= 0x074D) goto yy3;
								} else {
									if (yych == 0x07B1) goto yy3;
								}
							} else {
								if (yych <= 0x07F5) {
									if (yych <= 0x07EA) goto yy3;
									if (yych >= 0x07F4) goto yy3;
								} else {
									if (yych == 0x07FA) goto yy3;
									if (yych >= 0x0800) goto yy3;
								}
							}
						} else {
							if (yych <= 0x0828) {
								if (yych <= 0x0823) {
									if (yych == 0x081A) goto yy3;
								} else {
									if (yych <= 0x0824) goto yy3;
									if (yych >= 0x0828) goto yy3;
								}
							} else {
								if (yych <= 0x085F) {
									if (yych <= 0x083F) goto yy1;
									if (yych <= 0x0858) goto yy3;
								} else {
									if (yych <= 0x086A) goto yy3;
									if (yych <= 0x086F) goto yy1;
									if (yych <= 0x0887) goto yy3;
								}
							}
						}
					}
				}
			} else {
				if (yych <= 0x0A37) {
					if (yych <= 0x09B9) {
						if (yych <= 0x0970) {
							if (yych <= 0x093C) {
								if (yych <= 0x08C9) {
									if (yych <= 0x088F) goto yy3;
									if (yych >= 0x08A0) goto yy3;
								} else {
									if (yych <= 0x0903) goto yy1;
									if (yych <= 0x0939) goto yy3;
								}
							} else {
								if (yych <= 0x0950) {
									if (yych <= 0x093D) goto yy3;
									if (yych >= 0x0950) goto yy3;
								} else {
									if (yych <= 0x0957) goto yy1;
									if (yych <= 0x0961) goto yy3;
								}
							}
						} else {
							if (yych <= 0x0992) {
								if (yych <= 0x098C) {
									if (yych <= 0x0980) goto yy3;
									if (yych >= 0x0985) goto yy3;
								} else {
									if (yych <= 0x098E) goto yy1;
									if (yych <= 0x0990) goto yy3;
								}
							} else {
								if (yych <= 0x09B0) {
									if (yych != 0x09A9) goto yy3;
								} else {
									if (yych == 0x09B2) goto yy3;
									if (yych >= 0x09B6) goto yy3;
								}
							}
						}
					} else {
						if (yych <= 0x09FC) {
							if (yych <= 0x09DD) {
								if (yych <= 0x09CD) {
									if (yych == 0x09BD) goto yy3;
								} else {
									if (yych <= 0x09CE) goto yy3;
									if (yych >= 0x09DC) goto yy3;
								}
							} else {
								if (yych <= 0x09EF) {
									if (yych <= 0x09DE) goto yy1;
									if (yych <= 0x09E1) goto yy3;
								} else {
									if (yych <= 0x09F1) goto yy3;
									if (yych >= 0x09FC) goto yy3;
								}
							}
						} else {
							if (yych <= 0x0A28) {
								if (yych <= 0x0A0E) {
									if (yych <= 0x0A04) goto yy1;
									if (yych <= 0x0A0A) goto yy3;
								} else {
									if (yych <= 0x0A10) goto yy3;
									if (yych >= 0x0A13) goto yy3;
								}
							} else {
								if (yych <= 0x0A31) {
									if (yych <= 0x0A29) goto yy1;
									if (yych <= 0x0A30) goto yy3;
								} else {
									if (yych == 0x0A34) goto yy1;
									if (yych <= 0x0A36) goto yy3;
								}
							}
						}
					}
				} else {
					if (yych <= 0x0AE1) {
						if (yych <= 0x0A92) {
							if (yych <= 0x0A71) {
								if (yych <= 0x0A5C) {
									if (yych <= 0x0A39) goto yy3;
									if (yych >= 0x0A59) goto yy3;
								} else {
									if (yych == 0x0A5E) goto yy3;
								}
							} else {
								if (yych <= 0x0A8D) {
									if (yych <= 0x0A74) goto yy3;
									if (yych >= 0x0A85) goto yy3;
								} else {
									if (yych <= 0x0A8E) goto yy1;
									if (yych <= 0x0A91) goto yy3;
								}
							}
						} else {
							if (yych <= 0x0AB4) {
								if (yych <= 0x0AB0) {
									if (yych != 0x0AA9) goto yy3;
								} else {
									if (yych <= 0x0AB1) goto yy1;
									if (yych <= 0x0AB3) goto yy3;
								}
							} else {
								if (yych <= 0x0ABD) {
									if (yych <= 0x0AB9) goto yy3;
									if (yych >= 0x0ABD) goto yy3;
								} else {
									if (yych == 0x0AD0) goto yy3;
									if (yych >= 0x0AE0) goto yy3;
								}
							}
						}
					} else {
						if (yych <= 0x0B34) {
							if (yych <= 0x0B10) {
								if (yych <= 0x0B04) {
									if (yych == 0x0AF9) goto yy3;
								} else {
									if (yych <= 0x0B0C) goto yy3;
									if (yych >= 0x0B0F) goto yy3;
								}
							} else {
								if (yych <= 0x0B29) {
									if (yych <= 0x0B12) goto yy1;
									if (yych <= 0x0B28) goto yy3;
								} else {
									if (yych == 0x0B31) goto yy1;
									if (yych <= 0x0B33) goto yy3;
								}
							}
						} else {
							if (yych <= 0x0B5E) {
								if (yych <= 0x0B3D) {
									if (yych <= 0x0B39) goto yy3;
									if (yych >= 0x0B3D) goto yy3;
								} else {
									if (yych <= 0x0B5B) goto yy1;
									if (yych <= 0x0B5D) goto yy3;
								}
							} else {
								if (yych <= 0x0B71) {
									if (yych <= 0x0B61) goto yy3;
									if (yych >= 0x0B71) goto yy3;
								} else {
									if (yych == 0x0B83) goto yy3;
									if (yych >= 0x0B85) goto yy3;
								}
							}
						}
					}
				}
			}
		} else {
			if (yych <= 0x0EBC) {
				if (yych <= 0x0CDE) {
					if (yych <= 0x0C29) {
						if (yych <= 0x0BA4) {
							if (yych <= 0x0B9A) {
								if (yych <= 0x0B91) {
									if (yych <= 0x0B8D) goto yy1;
									if (yych <= 0x0B90) goto yy3;
								} else {
									if (yych <= 0x0B95) goto yy3;
									if (yych >= 0x0B99) goto yy3;
								}
							} else {
								if (yych <= 0x0B9D) {
									if (yych == 0x0B9C) goto yy3;
								} else {
									if (yych <= 0x0B9F) goto yy3;
									if (yych >= 0x0BA3) goto yy3;
								}
							}
						} else {
							if (yych <= 0x0BD0) {
								if (yych <= 0x0BAD) {
									if (yych <= 0x0BA7) goto yy1;
									if (yych <= 0x0BAA) goto yy3;
								} else {
									if (yych <= 0x0BB9) goto yy3;
									if (yych >= 0x0BD0) goto yy3;
								}
							} else {
								if (yych <= 0x0C0D) {
									if (yych <= 0x0C04) goto yy1;
									if (yych <= 0x0C0C) goto yy3;
								} else {
									if (yych == 0x0C11) goto yy1;
									if (yych <= 0x0C28) goto yy3;
								}
							}
						}
					} else {
						if (yych <= 0x0C84) {
							if (yych <= 0x0C5B) {
								if (yych <= 0x0C3D) {
									if (yych <= 0x0C39) goto yy3;
									if (yych >= 0x0C3D) goto yy3;
								} else {
									if (yych <= 0x0C57) goto yy1;
									if (yych <= 0x0C5A) goto yy3;
								}
							} else {
								if (yych <= 0x0C61) {
									if (yych <= 0x0C5D) goto yy3;
									if (yych >= 0x0C60) goto yy3;
								} else {
									if (yych == 0x0C80) goto yy3;
								}
							}
						} else {
							if (yych <= 0x0CA9) {
								if (yych <= 0x0C90) {
									if (yych != 0x0C8D) goto yy3;
								} else {
									if (yych <= 0x0C91) goto yy1;
									if (yych <= 0x0CA8) goto yy3;
								}
							} else {
								if (yych <= 0x0CB9) {
									if (yych != 0x0CB4) goto yy3;
								} else {
									if (yych == 0x0CBD) goto yy3;
									if (yych >= 0x0CDC) goto yy3;
								}
							}
						}
					}
				} else {
					if (yych <= 0x0DB2) {
						if (yych <= 0x0D3D) {
							if (yych <= 0x0D0C) {
								if (yych <= 0x0CF0) {
									if (yych <= 0x0CDF) goto yy1;
									if (yych <= 0x0CE1) goto yy3;
								} else {
									if (yych <= 0x0CF2) goto yy3;
									if (yych >= 0x0D04) goto yy3;
								}
							} else {
								if (yych <= 0x0D11) {
									if (yych <= 0x0D0D) goto yy1;
									if (yych <= 0x0D10) goto yy3;
								} else {
									if (yych <= 0x0D3A) goto yy3;
									if (yych >= 0x0D3D) goto yy3;
								}
							}
						} else {
							if (yych <= 0x0D61) {
								if (yych <= 0x0D53) {
									if (yych == 0x0D4E) goto yy3;
								} else {
									if (yych <= 0x0D56) goto yy3;
									if (yych >= 0x0D5F) goto yy3;
								}
							} else {
								if (yych <= 0x0D84) {
									if (yych <= 0x0D79) goto yy1;
									if (yych <= 0x0D7F) goto yy3;
								} else {
									if (yych <= 0x0D96) goto yy3;
									if (yych <= 0x0D99) goto yy1;
									if (yych <= 0x0DB1) goto yy3;
								}
							}
						}
					} else {
						if (yych <= 0x0E82) {
							if (yych <= 0x0E00) {
								if (yych <= 0x0DBD) {
									if (yych != 0x0DBC) goto yy3;
								} else {
									if (yych <= 0x0DBF) goto yy1;
									if (yych <= 0x0DC6) goto yy3;
								}
							} else {
								if (yych <= 0x0E33) {
									if (yych != 0x0E31) goto yy3;
								} else {
									if (yych <= 0x0E3F) goto yy1;
									if (yych <= 0x0E46) goto yy3;
									if (yych >= 0x0E81) goto yy3;
								}
							}
						} else {
							if (yych <= 0x0EA3) {
								if (yych <= 0x0E85) {
									if (yych == 0x0E84) goto yy3;
								} else {
									if (yych != 0x0E8B) goto yy3;
								}
							} else {
								if (yych <= 0x0EA6) {
									if (yych == 0x0EA5) goto yy3;
								} else {
									if (yych == 0x0EB1) goto yy1;
									if (yych <= 0x0EB3) goto yy3;
								}
							}
						}
					}
				}
			} else {
				if (yych <= 0x125D) {
					if (yych <= 0x1061) {
						if (yych <= 0x0F48) {
							if (yych <= 0x0EDB) {
								if (yych <= 0x0EC4) {
									if (yych <= 0x0EBD) goto yy3;
									if (yych >= 0x0EC0) goto yy3;
								} else {
									if (yych == 0x0EC6) goto yy3;
								}
							} else {
								if (yych <= 0x0F00) {
									if (yych <= 0x0EDF) goto yy3;
									if (yych >= 0x0F00) goto yy3;
								} else {
									if (yych <= 0x0F3F) goto yy1;
									if (yych <= 0x0F47) goto yy3;
								}
							}
						} else {
							if (yych <= 0x103E) {
								if (yych <= 0x0F8C) {
									if (yych <= 0x0F6C) goto yy3;
									if (yych >= 0x0F88) goto yy3;
								} else {
									if (yych <= 0x0FFF) goto yy1;
									if (yych <= 0x102A) goto yy3;
								}
							} else {
								if (yych <= 0x1055) {
									if (yych <= 0x103F) goto yy3;
									if (yych >= 0x1050) goto yy3;
								} else {
									if (yych <= 0x1059) goto yy1;
									if (yych <= 0x105D) goto yy3;
									if (yych >= 0x1061) goto yy3;
								}
							}
						}
					} else {
						if (yych <= 0x10CC) {
							if (yych <= 0x1081) {
								if (yych <= 0x106D) {
									if (yych <= 0x1064) goto yy1;
									if (yych <= 0x1066) goto yy3;
								} else {
									if (yych <= 0x1070) goto yy3;
									if (yych >= 0x1075) goto yy3;
								}
							} else {
								if (yych <= 0x109F) {
									if (yych == 0x108E) goto yy3;
								} else {
									if (yych == 0x10C6) goto yy1;
									if (yych <= 0x10C7) goto yy3;
								}
							}
						} else {
							if (yych <= 0x1249) {
								if (yych <= 0x10FA) {
									if (yych <= 0x10CD) goto yy3;
									if (yych >= 0x10D0) goto yy3;
								} else {
									if (yych <= 0x10FB) goto yy1;
									if (yych <= 0x1248) goto yy3;
								}
							} else {
								if (yych <= 0x1256) {
									if (yych <= 0x124D) goto yy3;
									if (yych >= 0x1250) goto yy3;
								} else {
									if (yych == 0x1258) goto yy3;
									if (yych >= 0x125A) goto yy3;
								}
							}
						}
					}
				} else {
					if (yych <= 0x139F) {
						if (yych <= 0x12C0) {
							if (yych <= 0x12B0) {
								if (yych <= 0x1289) {
									if (yych <= 0x125F) goto yy1;
									if (yych <= 0x1288) goto yy3;
								} else {
									if (yych <= 0x128D) goto yy3;
									if (yych >= 0x1290) goto yy3;
								}
							} else {
								if (yych <= 0x12B7) {
									if (yych <= 0x12B1) goto yy1;
									if (yych <= 0x12B5) goto yy3;
								} else {
									if (yych != 0x12BF) goto yy3;
								}
							}
						} else {
							if (yych <= 0x1310) {
								if (yych <= 0x12C7) {
									if (yych <= 0x12C1) goto yy1;
									if (yych <= 0x12C5) goto yy3;
								} else {
									if (yych != 0x12D7) goto yy3;
								}
							} else {
								if (yych <= 0x1317) {
									if (yych <= 0x1311) goto yy1;
									if (yych <= 0x1315) goto yy3;
								} else {
									if (yych <= 0x135A) goto yy3;
									if (yych <= 0x137F) goto yy1;
									if (yych <= 0x138F) goto yy3;
								}
							}
						}
					} else {
						if (yych <= 0x16F8) {
							if (yych <= 0x166E) {
								if (yych <= 0x13FD) {
									if (yych <= 0x13F5) goto yy3;
									if (yych >= 0x13F8) goto yy3;
								} else {
									if (yych <= 0x1400) goto yy1;
									if (yych <= 0x166C) goto yy3;
								}
							} else {
								if (yych <= 0x169A) {
									if (yych != 0x1680) goto yy3;
								} else {
									if (yych <= 0x169F) goto yy1;
									if (yych <= 0x16EA) goto yy3;
									if (yych >= 0x16F1) goto yy3;
								}
							}
						} else {
							if (yych <= 0x1751) {
								if (yych <= 0x171E) {
									if (yych <= 0x16FF) goto yy1;
									if (yych <= 0x1711) goto yy3;
								} else {
									if (yych <= 0x1731) goto yy3;
									if (yych >= 0x1740) goto yy3;
								}
							} else {
								if (yych <= 0x176D) {
									if (yych <= 0x175F) goto yy1;
									if (yych <= 0x176C) goto yy3;
								} else {
									if (yych <= 0x1770) goto yy3;
									if (yych <= 0x177F) goto yy1;
									if (yych <= 0x17B3) goto yy3;
								}
							}
						}
					}
				}
			}
		}
	} else {
		if (yych <= 0xA629) {
			if (yych <= 0x2071) {
				if (yych <= 0x1CBC) {
					if (yych <= 0x1A16) {
						if (yych <= 0x18AF) {
							if (yych <= 0x187F) {
								if (yych <= 0x17DC) {
									if (yych <= 0x17D7) goto yy3;
									if (yych >= 0x17DC) goto yy3;
								} else {
									if (yych <= 0x181F) goto yy1;
									if (yych <= 0x1878) goto yy3;
								}
							} else {
								if (yych <= 0x18A8) {
									if (yych <= 0x1884) goto yy3;
									if (yych >= 0x1887) goto yy3;
								} else {
									if (yych == 0x18AA) goto yy3;
								}
							}
						} else {
							if (yych <= 0x196F) {
								if (yych <= 0x191E) {
									if (yych <= 0x18F5) goto yy3;
									if (yych >= 0x1900) goto yy3;
								} else {
									if (yych <= 0x194F) goto yy1;
									if (yych <= 0x196D) goto yy3;
								}
							} else {
								if (yych <= 0x19AB) {
									if (yych <= 0x1974) goto yy3;
									if (yych >= 0x1980) goto yy3;
								} else {
									if (yych <= 0x19AF) goto yy1;
									if (yych <= 0x19C9) goto yy3;
									if (yych >= 0x1A00) goto yy3;
								}
							}
						}
					} else {
						if (yych <= 0x1BAF) {
							if (yych <= 0x1B33) {
								if (yych <= 0x1AA6) {
									if (yych <= 0x1A1F) goto yy1;
									if (yych <= 0x1A54) goto yy3;
								} else {
									if (yych <= 0x1AA7) goto yy3;
									if (yych >= 0x1B05) goto yy3;
								}
							} else {
								if (yych <= 0x1B82) {
									if (yych <= 0x1B44) goto yy1;
									if (yych <= 0x1B4C) goto yy3;
								} else {
									if (yych <= 0x1BA0) goto yy3;
									if (yych >= 0x1BAE) goto yy3;
								}
							}
						} else {
							if (yych <= 0x1C4F) {
								if (yych <= 0x1BFF) {
									if (yych <= 0x1BB9) goto yy1;
									if (yych <= 0x1BE5) goto yy3;
								} else {
									if (yych <= 0x1C23) goto yy3;
									if (yych >= 0x1C4D) goto yy3;
								}
							} else {
								if (yych <= 0x1C7F) {
									if (yych <= 0x1C59) goto yy1;
									if (yych <= 0x1C7D) goto yy3;
								} else {
									if (yych <= 0x1C8A) goto yy3;
									if (yych <= 0x1C8F) goto yy1;
									if (yych <= 0x1CBA) goto yy3;
								}
							}
						}
					}
				} else {
					if (yych <= 0x1F5B) {
						if (yych <= 0x1DFF) {
							if (yych <= 0x1CF4) {
								if (yych <= 0x1CEC) {
									if (yych <= 0x1CBF) goto yy3;
									if (yych >= 0x1CE9) goto yy3;
								} else {
									if (yych <= 0x1CED) goto yy1;
									if (yych <= 0x1CF3) goto yy3;
								}
							} else {
								if (yych <= 0x1CFA) {
									if (yych <= 0x1CF6) goto yy3;
									if (yych >= 0x1CFA) goto yy3;
								} else {
									if (yych <= 0x1CFF) goto yy1;
									if (yych <= 0x1DBF) goto yy3;
								}
							}
						} else {
							if (yych <= 0x1F47) {
								if (yych <= 0x1F1D) {
									if (yych <= 0x1F15) goto yy3;
									if (yych >= 0x1F18) goto yy3;
								} else {
									if (yych <= 0x1F1F) goto yy1;
									if (yych <= 0x1F45) goto yy3;
								}
							} else {
								if (yych <= 0x1F57) {
									if (yych <= 0x1F4D) goto yy3;
									if (yych >= 0x1F50) goto yy3;
								} else {
									if (yych == 0x1F59) goto yy3;
									if (yych >= 0x1F5B) goto yy3;
								}
							}
						}
					} else {
						if (yych <= 0x1FC5) {
							if (yych <= 0x1FB4) {
								if (yych <= 0x1F5E) {
									if (yych == 0x1F5D) goto yy3;
								} else {
									if (yych <= 0x1F7D) goto yy3;
									if (yych >= 0x1F80) goto yy3;
								}
							} else {
								if (yych <= 0x1FBD) {
									if (yych <= 0x1FB5) goto yy1;
									if (yych <= 0x1FBC) goto yy3;
								} else {
									if (yych <= 0x1FBE) goto yy3;
									if (yych <= 0x1FC1) goto yy1;
									if (yych <= 0x1FC4) goto yy3;
								}
							}
						} else {
							if (yych <= 0x1FDF) {
								if (yych <= 0x1FD3) {
									if (yych <= 0x1FCC) goto yy3;
									if (yych >= 0x1FD0) goto yy3;
								} else {
									if (yych <= 0x1FD5) goto yy1;
									if (yych <= 0x1FDB) goto yy3;
								}
							} else {
								if (yych <= 0x1FF4) {
									if (yych <= 0x1FEC) goto yy3;
									if (yych >= 0x1FF2) goto yy3;
								} else {
									if (yych <= 0x1FF5) goto yy1;
									if (yych <= 0x1FFC) goto yy3;
									if (yych >= 0x2071) goto yy3;
								}
							}
						}
					}
				}
			} else {
				if (yych <= 0x2D96) {
					if (yych <= 0x213B) {
						if (yych <= 0x2115) {
							if (yych <= 0x2102) {
								if (yych <= 0x208F) {
									if (yych == 0x207F) goto yy3;
								} else {
									if (yych <= 0x209C) goto yy3;
									if (yych >= 0x2102) goto yy3;
								}
							} else {
								if (yych <= 0x2109) {
									if (yych == 0x2107) goto yy3;
								} else {
									if (yych != 0x2114) goto yy3;
								}
							}
						} else {
							if (yych <= 0x2126) {
								if (yych <= 0x2123) {
									if (yych <= 0x2118) goto yy1;
									if (yych <= 0x211D) goto yy3;
								} else {
									if (yych != 0x2125) goto yy3;
								}
							} else {
								if (yych <= 0x2129) {
									if (yych == 0x2128) goto yy3;
								} else {
									if (yych == 0x212E) goto yy1;
									if (yych <= 0x2139) goto yy3;
								}
							}
						}
					} else {
						if (yych <= 0x2CF1) {
							if (yych <= 0x2182) {
								if (yych <= 0x2149) {
									if (yych <= 0x213F) goto yy3;
									if (yych >= 0x2145) goto yy3;
								} else {
									if (yych == 0x214E) goto yy3;
								}
							} else {
								if (yych <= 0x2CE4) {
									if (yych <= 0x2184) goto yy3;
									if (yych >= 0x2C00) goto yy3;
								} else {
									if (yych <= 0x2CEA) goto yy1;
									if (yych <= 0x2CEE) goto yy3;
								}
							}
						} else {
							if (yych <= 0x2D2C) {
								if (yych <= 0x2D25) {
									if (yych <= 0x2CF3) goto yy3;
									if (yych >= 0x2D00) goto yy3;
								} else {
									if (yych == 0x2D27) goto yy3;
								}
							} else {
								if (yych <= 0x2D67) {
									if (yych <= 0x2D2D) goto yy3;
									if (yych >= 0x2D30) goto yy3;
								} else {
									if (yych == 0x2D6F) goto yy3;
									if (yych >= 0x2D80) goto yy3;
								}
							}
						}
					}
				} else {
					if (yych <= 0x3040) {
						if (yych <= 0x2DCE) {
							if (yych <= 0x2DB6) {
								if (yych <= 0x2DA7) {
									if (yych <= 0x2D9F) goto yy1;
									if (yych <= 0x2DA6) goto yy3;
								} else {
									if (yych != 0x2DAF) goto yy3;
								}
							} else {
								if (yych <= 0x2DBF) {
									if (yych <= 0x2DB7) goto yy1;
									if (yych <= 0x2DBE) goto yy3;
								} else {
									if (yych != 0x2DC7) goto yy3;
								}
							}
						} else {
							if (yych <= 0x2E2F) {
								if (yych <= 0x2DD7) {
									if (yych <= 0x2DCF) goto yy1;
									if (yych <= 0x2DD6) goto yy3;
								} else {
									if (yych <= 0x2DDE) goto yy3;
									if (yych >= 0x2E2F) goto yy3;
								}
							} else {
								if (yych <= 0x3030) {
									if (yych <= 0x3004) goto yy1;
									if (yych <= 0x3006) goto yy3;
								} else {
									if (yych <= 0x3035) goto yy3;
									if (yych <= 0x303A) goto yy1;
									if (yych <= 0x303C) goto yy3;
								}
							}
						}
					} else {
						if (yych <= 0x31BF) {
							if (yych <= 0x30FB) {
								if (yych <= 0x309F) {
									if (yych <= 0x3096) goto yy3;
									if (yych >= 0x309D) goto yy3;
								} else {
									if (yych <= 0x30A0) goto yy1;
									if (yych <= 0x30FA) goto yy3;
								}
							} else {
								if (yych <= 0x312F) {
									if (yych <= 0x30FF) goto yy3;
									if (yych >= 0x3105) goto yy3;
								} else {
									if (yych <= 0x3130) goto yy1;
									if (yych <= 0x318E) goto yy3;
									if (yych >= 0x31A0) goto yy3;
								}
							}
						} else {
							if (yych <= 0xA48C) {
								if (yych <= 0x33FF) {
									if (yych <= 0x31EF) goto yy1;
									if (yych <= 0x31FF) goto yy3;
								} else {
									if (yych <= 0x4DBF) goto yy3;
									if (yych >= 0x4E00) goto yy3;
								}
							} else {
								if (yych <= 0xA4FF) {
									if (yych <= 0xA4CF) goto yy1;
									if (yych <= 0xA4FD) goto yy3;
								} else {
									if (yych <= 0xA60C) goto yy3;
									if (yych <= 0xA60F) goto yy1;
									if (yych <= 0xA61F) goto yy3;
								}
							}
						}
					}
				}
			}
		} else {
			if (yych <= 0xD802) {
				if (yych <= 0xAA3F) {
					if (yych <= 0xA8B3) {
						if (yych <= 0xA78A) {
							if (yych <= 0xA69F) {
								if (yych <= 0xA66E) {
									if (yych <= 0xA62B) goto yy3;
									if (yych >= 0xA640) goto yy3;
								} else {
									if (yych <= 0xA67E) goto yy1;
									if (yych <= 0xA69D) goto yy3;
								}
							} else {
								if (yych <= 0xA71F) {
									if (yych <= 0xA6E5) goto yy3;
									if (yych >= 0xA717) goto yy3;
								} else {
									if (yych <= 0xA721) goto yy1;
									if (yych <= 0xA788) goto yy3;
								}
							}
						} else {
							if (yych <= 0xA806) {
								if (yych <= 0xA801) {
									if (yych <= 0xA7DC) goto yy3;
									if (yych >= 0xA7F1) goto yy3;
								} else {
									if (yych <= 0xA802) goto yy1;
									if (yych <= 0xA805) goto yy3;
								}
							} else {
								if (yych <= 0xA822) {
									if (yych != 0xA80B) goto yy3;
								} else {
									if (yych <= 0xA83F) goto yy1;
									if (yych <= 0xA873) goto yy3;
									if (yych >= 0xA882) goto yy3;
								}
							}
						}
					} else {
						if (yych <= 0xA97C) {
							if (yych <= 0xA8FE) {
								if (yych <= 0xA8FA) {
									if (yych <= 0xA8F1) goto yy1;
									if (yych <= 0xA8F7) goto yy3;
								} else {
									if (yych != 0xA8FC) goto yy3;
								}
							} else {
								if (yych <= 0xA92F) {
									if (yych <= 0xA909) goto yy1;
									if (yych <= 0xA925) goto yy3;
								} else {
									if (yych <= 0xA946) goto yy3;
									if (yych >= 0xA960) goto yy3;
								}
							}
						} else {
							if (yych <= 0xA9E4) {
								if (yych <= 0xA9CE) {
									if (yych <= 0xA983) goto yy1;
									if (yych <= 0xA9B2) goto yy3;
								} else {
									if (yych <= 0xA9CF) goto yy3;
									if (yych >= 0xA9E0) goto yy3;
								}
							} else {
								if (yych <= 0xA9F9) {
									if (yych <= 0xA9E5) goto yy1;
									if (yych <= 0xA9EF) goto yy3;
								} else {
									if (yych == 0xA9FF) goto yy1;
									if (yych <= 0xAA28) goto yy3;
								}
							}
						}
					}
				} else {
					if (yych <= 0xAAF4) {
						if (yych <= 0xAAB4) {
							if (yych <= 0xAA79) {
								if (yych <= 0xAA4B) {
									if (yych != 0xAA43) goto yy3;
								} else {
									if (yych <= 0xAA5F) goto yy1;
									if (yych <= 0xAA76) goto yy3;
								}
							} else {
								if (yych <= 0xAAAF) {
									if (yych <= 0xAA7A) goto yy3;
									if (yych >= 0xAA7E) goto yy3;
								} else {
									if (yych == 0xAAB1) goto yy3;
								}
							}
						} else {
							if (yych <= 0xAAC1) {
								if (yych <= 0xAABD) {
									if (yych <= 0xAAB6) goto yy3;
									if (yych >= 0xAAB9) goto yy3;
								} else {
									if (yych == 0xAAC0) goto yy3;
								}
							} else {
								if (yych <= 0xAADD) {
									if (yych <= 0xAAC2) goto yy3;
									if (yych >= 0xAADB) goto yy3;
								} else {
									if (yych <= 0xAADF) goto yy1;
									if (yych <= 0xAAEA) goto yy3;
									if (yych >= 0xAAF2) goto yy3;
								}
							}
						}
					} else {
						if (yych <= 0xAB5B) {
							if (yych <= 0xAB16) {
								if (yych <= 0xAB08) {
									if (yych <= 0xAB00) goto yy1;
									if (yych <= 0xAB06) goto yy3;
								} else {
									if (yych <= 0xAB0E) goto yy3;
									if (yych >= 0xAB11) goto yy3;
								}
							} else {
								if (yych <= 0xAB27) {
									if (yych <= 0xAB1F) goto yy1;
									if (yych <= 0xAB26) goto yy3;
								} else {
									if (yych == 0xAB2F) goto yy1;
									if (yych <= 0xAB5A) goto yy3;
								}
							}
						} else {
							if (yych <= 0xD7AF) {
								if (yych <= 0xABE2) {
									if (yych <= 0xAB69) goto yy3;
									if (yych >= 0xAB70) goto yy3;
								} else {
									if (yych <= 0xABFF) goto yy1;
									if (yych <= 0xD7A3) goto yy3;
								}
							} else {
								if (yych <= 0xD7FB) {
									if (yych <= 0xD7C6) goto yy3;
									if (yych >= 0xD7CB) goto yy3;
								} else {
									if (yych <= 0xD7FF) goto yy1;
									if (yych <= 0xD800) goto yy4;
									if (yych <= 0xD801) goto yy5;
									goto yy6;
								}
							}
						}
					}
				}
			} else {
				if (yych <= 0xD88D) {
					if (yych <= 0xD82E) {
						if (yych <= 0xD80F) {
							if (yych <= 0xD808) {
								if (yych <= 0xD805) {
									if (yych <= 0xD803) goto yy7;
									if (yych <= 0xD804) goto yy8;
									goto yy9;
								} else {
									if (yych <= 0xD806) goto yy10;
									if (yych <= 0xD807) goto yy11;
									goto yy12;
								}
							} else {
								if (yych <= 0xD80B) {
									if (yych <= 0xD809) goto yy13;
									if (yych >= 0xD80B) goto yy14;
								} else {
									if (yych == 0xD80D) goto yy16;
									goto yy15;
								}
							}
						} else {
							if (yych <= 0xD81A) {
								if (yych <= 0xD817) {
									if (yych <= 0xD810) goto yy17;
									if (yych <= 0xD811) goto yy18;
								} else {
									if (yych <= 0xD818) goto yy19;
									if (yych >= 0xD81A) goto yy20;
								}
							} else {
								if (yych <= 0xD823) {
									if (yych <= 0xD81B) goto yy21;
									if (yych <= 0xD822) goto yy15;
									goto yy22;
								} else {
									if (yych <= 0xD82A) goto yy1;
									if (yych <= 0xD82B) goto yy23;
									if (yych <= 0xD82C) goto yy24;
								}
							}
						}
					} else {
						if (yych <= 0xD86D) {
							if (yych <= 0xD838) {
								if (yych <= 0xD835) {
									if (yych <= 0xD82F) goto yy25;
									if (yych >= 0xD835) goto yy26;
								} else {
									if (yych <= 0xD836) goto yy1;
									if (yych <= 0xD837) goto yy27;
									goto yy28;
								}
							} else {
								if (yych <= 0xD83B) {
									if (yych <= 0xD839) goto yy29;
									if (yych <= 0xD83A) goto yy30;
									goto yy31;
								} else {
									if (yych <= 0xD83F) goto yy1;
									if (yych == 0xD869) goto yy32;
									goto yy15;
								}
							}
						} else {
							if (yych <= 0xD87B) {
								if (yych <= 0xD873) {
									if (yych <= 0xD86E) goto yy33;
									if (yych <= 0xD872) goto yy15;
									goto yy34;
								} else {
									if (yych <= 0xD879) goto yy15;
									if (yych <= 0xD87A) goto yy35;
									goto yy36;
								}
							} else {
								if (yych <= 0xD87F) {
									if (yych == 0xD87E) goto yy37;
								} else {
									if (yych == 0xD884) goto yy38;
									if (yych <= 0xD88C) goto yy15;
									goto yy39;
								}
							}
						}
					}
				} else {
					if (yych <= 0xFBD2) {
						if (yych <= 0xFB28) {
							if (yych <= 0xFB06) {
								if (yych <= 0xFA6F) {
									if (yych <= 0xF8FF) goto yy1;
									if (yych <= 0xFA6D) goto yy3;
								} else {
									if (yych <= 0xFAD9) goto yy3;
									if (yych >= 0xFB00) goto yy3;
								}
							} else {
								if (yych <= 0xFB1C) {
									if (yych <= 0xFB12) goto yy1;
									if (yych <= 0xFB17) goto yy3;
								} else {
									if (yych != 0xFB1E) goto yy3;
								}
							}
						} else {
							if (yych <= 0xFB3E) {
								if (yych <= 0xFB37) {
									if (yych <= 0xFB29) goto yy1;
									if (yych <= 0xFB36) goto yy3;
								} else {
									if (yych != 0xFB3D) goto yy3;
								}
							} else {
								if (yych <= 0xFB42) {
									if (yych <= 0xFB3F) goto yy1;
									if (yych <= 0xFB41) goto yy3;
								} else {
									if (yych == 0xFB45) goto yy1;
									if (yych <= 0xFBB1) goto yy3;
								}
							}
						}
					} else {
						if (yych <= 0xFF3A) {
							if (yych <= 0xFDEF) {
								if (yych <= 0xFD8F) {
									if (yych <= 0xFD3D) goto yy3;
									if (yych >= 0xFD50) goto yy3;
								} else {
									if (yych <= 0xFD91) goto yy1;
									if (yych <= 0xFDC7) goto yy3;
								}
							} else {
								if (yych <= 0xFE74) {
									if (yych <= 0xFDFB) goto yy3;
									if (yych >= 0xFE70) goto yy3;
								} else {
									if (yych <= 0xFE75) goto yy1;
									if (yych <= 0xFEFC) goto yy3;
									if (yych >= 0xFF21) goto yy3;
								}
							}
						} else {
							if (yych <= 0xFFC7) {
								if (yych <= 0xFF65) {
									if (yych <= 0xFF40) goto yy1;
									if (yych <= 0xFF5A) goto yy3;
								} else {
									if (yych <= 0xFFBE) goto yy3;
									if (yych >= 0xFFC2) goto yy3;
								}
							} else {
								if (yych <= 0xFFD1) {
									if (yych <= 0xFFC9) goto yy1;
									if (yych <= 0xFFCF) goto yy3;
								} else {
									if (yych <= 0xFFD7) goto yy3;
									if (yych <= 0xFFD9) goto yy1;
									if (yych <= 0xFFDC) goto yy3;
								}
							}
						}
					}
				}
			}
		}
	}
yy1:
	++YYCURSOR;
yy2:
#line 15 "encodings/unicode_group_L_x.re"
	{ return YYCURSOR - 1 == limit; }
#line 1286 "encodings/unicode_group_L_x.c"
yy3:
	++YYCURSOR;
#line 14 "encodings/unicode_group_L_x.re"
	{ goto L; }
#line 1291 "encodings/unicode_group_L_x.c"
yy4:
	yych = *++YYCURSOR;
	if (yych <= 0xDE9C) {
		if (yych <= 0xDC3D) {
			if (yych <= 0xDC26) {
				if (yych <= 0xDBFF) goto yy2;
				if (yych == 0xDC0C) goto yy2;
				goto yy3;
			} else {
				if (yych <= 0xDC27) goto yy2;
				if (yych == 0xDC3B) goto yy2;
				goto yy3;
			}
		} else {
			if (yych <= 0xDC5D) {
				if (yych <= 0xDC3E) goto yy2;
				if (yych <= 0xDC4D) goto yy3;
				if (yych <= 0xDC4F) goto yy2;
				goto yy3;
			} else {
				if (yych <= 0xDC7F) goto yy2;
				if (yych <= 0xDCFA) goto yy3;
				if (yych <= 0xDE7F) goto yy2;
				goto yy3;
			}
		}
	} else {
		if (yych <= 0xDF49) {
			if (yych <= 0xDF1F) {
				if (yych <= 0xDE9F) goto yy2;
				if (yych <= 0xDED0) goto yy3;
				if (yych <= 0xDEFF) goto yy2;
				goto yy3;
			} else {
				if (yych <= 0xDF2C) goto yy2;
				if (yych == 0xDF41) goto yy2;
				goto yy3;
			}
		} else {
			if (yych <= 0xDF9D) {
				if (yych <= 0xDF4F) goto yy2;
				if (yych <= 0xDF75) goto yy3;
				if (yych <= 0xDF7F) goto yy2;
				goto yy3;
			} else {
				if (yych <= 0xDFC3) {
					if (yych <= 0xDF9F) goto yy2;
					goto yy3;
				} else {
					if (yych <= 0xDFC7) goto yy2;
					if (yych <= 0xDFCF) goto yy3;
					goto yy2;
				}
			}
		}
	}
yy5:
	yych = *++YYCURSOR;
	if (yych <= 0xDDA1) {
		if (yych <= 0xDD63) {
			if (yych <= 0xDCD7) {
				if (yych <= 0xDC9D) {
					if (yych <= 0xDBFF) goto yy2;
					goto yy3;
				} else {
					if (yych <= 0xDCAF) goto yy2;
					if (yych <= 0xDCD3) goto yy3;
					goto yy2;
				}
			} else {
				if (yych <= 0xDCFF) {
					if (yych <= 0xDCFB) goto yy3;
					goto yy2;
				} else {
					if (yych <= 0xDD27) goto yy3;
					if (yych <= 0xDD2F) goto yy2;
					goto yy3;
				}
			}
		} else {
			if (yych <= 0xDD8B) {
				if (yych <= 0xDD7A) {
					if (yych <= 0xDD6F) goto yy2;
					goto yy3;
				} else {
					if (yych <= 0xDD7B) goto yy2;
					if (yych <= 0xDD8A) goto yy3;
					goto yy2;
				}
			} else {
				if (yych <= 0xDD93) {
					if (yych <= 0xDD92) goto yy3;
					goto yy2;
				} else {
					if (yych == 0xDD96) goto yy2;
					goto yy3;
				}
			}
		}
	} else {
		if (yych <= 0xDF36) {
			if (yych <= 0xDDBA) {
				if (yych <= 0xDDB1) {
					if (yych <= 0xDDA2) goto yy2;
					goto yy3;
				} else {
					if (yych <= 0xDDB2) goto yy2;
					if (yych <= 0xDDB9) goto yy3;
					goto yy2;
				}
			} else {
				if (yych <= 0xDDBF) {
					if (yych <= 0xDDBC) goto yy3;
					goto yy2;
				} else {
					if (yych <= 0xDDF3) goto yy3;
					if (yych <= 0xDDFF) goto yy2;
					goto yy3;
				}
			}
		} else {
			if (yych <= 0xDF7F) {
				if (yych <= 0xDF55) {
					if (yych <= 0xDF3F) goto yy2;
					goto yy3;
				} else {
					if (yych <= 0xDF5F) goto yy2;
					if (yych <= 0xDF67) goto yy3;
					goto yy2;
				}
			} else {
				if (yych <= 0xDFB0) {
					if (yych == 0xDF86) goto yy2;
					goto yy3;
				} else {
					if (yych <= 0xDFB1) goto yy2;
					if (yych <= 0xDFBA) goto yy3;
					goto yy2;
				}
			}
		}
	}
yy6:
	yych = *++YYCURSOR;
	if (yych <= 0xDD7F) {
		if (yych <= 0xDC5F) {
			if (yych <= 0xDC35) {
				if (yych <= 0xDC07) {
					if (yych <= 0xDBFF) goto yy2;
					if (yych <= 0xDC05) goto yy3;
					goto yy2;
				} else {
					if (yych == 0xDC09) goto yy2;
					goto yy3;
				}
			} else {
				if (yych <= 0xDC3B) {
					if (yych <= 0xDC36) goto yy2;
					if (yych <= 0xDC38) goto yy3;
					goto yy2;
				} else {
					if (yych <= 0xDC3C) goto yy3;
					if (yych <= 0xDC3E) goto yy2;
					if (yych <= 0xDC55) goto yy3;
					goto yy2;
				}
			}
		} else {
			if (yych <= 0xDCF5) {
				if (yych <= 0xDC9E) {
					if (yych <= 0xDC76) goto yy3;
					if (yych <= 0xDC7F) goto yy2;
					goto yy3;
				} else {
					if (yych <= 0xDCDF) goto yy2;
					if (yych == 0xDCF3) goto yy2;
					goto yy3;
				}
			} else {
				if (yych <= 0xDD1F) {
					if (yych <= 0xDCFF) goto yy2;
					if (yych <= 0xDD15) goto yy3;
					goto yy2;
				} else {
					if (yych <= 0xDD39) goto yy3;
					if (yych <= 0xDD3F) goto yy2;
					if (yych <= 0xDD59) goto yy3;
					goto yy2;
				}
			}
		}
	} else {
		if (yych <= 0xDE7F) {
			if (yych <= 0xDE13) {
				if (yych <= 0xDDBF) {
					if (yych <= 0xDDB7) goto yy3;
					if (yych <= 0xDDBD) goto yy2;
					goto yy3;
				} else {
					if (yych == 0xDE00) goto yy3;
					if (yych <= 0xDE0F) goto yy2;
					goto yy3;
				}
			} else {
				if (yych <= 0xDE18) {
					if (yych <= 0xDE14) goto yy2;
					if (yych <= 0xDE17) goto yy3;
					goto yy2;
				} else {
					if (yych <= 0xDE35) goto yy3;
					if (yych <= 0xDE5F) goto yy2;
					if (yych <= 0xDE7C) goto yy3;
					goto yy2;
				}
			}
		} else {
			if (yych <= 0xDF35) {
				if (yych <= 0xDEC7) {
					if (yych <= 0xDE9C) goto yy3;
					if (yych <= 0xDEBF) goto yy2;
					goto yy3;
				} else {
					if (yych <= 0xDEC8) goto yy2;
					if (yych <= 0xDEE4) goto yy3;
					if (yych <= 0xDEFF) goto yy2;
					goto yy3;
				}
			} else {
				if (yych <= 0xDF5F) {
					if (yych <= 0xDF3F) goto yy2;
					if (yych <= 0xDF55) goto yy3;
					goto yy2;
				} else {
					if (yych <= 0xDF72) goto yy3;
					if (yych <= 0xDF7F) goto yy2;
					if (yych <= 0xDF91) goto yy3;
					goto yy2;
				}
			}
		}
	}
yy7:
	yych = *++YYCURSOR;
	if (yych <= 0xDEAF) {
		if (yych <= 0xDCFF) {
			if (yych <= 0xDC7F) {
				if (yych <= 0xDBFF) goto yy2;
				if (yych <= 0xDC48) goto yy3;
				goto yy2;
			} else {
				if (yych <= 0xDCB2) goto yy3;
				if (yych <= 0xDCBF) goto yy2;
				if (yych <= 0xDCF2) goto yy3;
				goto yy2;
			}
		} else {
			if (yych <= 0xDD6E) {
				if (yych <= 0xDD23) goto yy3;
				if (yych <= 0xDD49) goto yy2;
				if (yych <= 0xDD65) goto yy3;
				goto yy2;
			} else {
				if (yych <= 0xDD85) goto yy3;
				if (yych <= 0xDE7F) goto yy2;
				if (yych <= 0xDEA9) goto yy3;
				goto yy2;
			}
		}
	} else {
		if (yych <= 0xDF2F) {
			if (yych <= 0xDEFF) {
				if (yych <= 0xDEB1) goto yy3;
				if (yych <= 0xDEC1) goto yy2;
				if (yych <= 0xDEC7) goto yy3;
				goto yy2;
			} else {
				if (yych <= 0xDF1C) goto yy3;
				if (yych == 0xDF27) goto yy3;
				goto yy2;
			}
		} else {
			if (yych <= 0xDFAF) {
				if (yych <= 0xDF45) goto yy3;
				if (yych <= 0xDF6F) goto yy2;
				if (yych <= 0xDF81) goto yy3;
				goto yy2;
			} else {
				if (yych <= 0xDFC4) goto yy3;
				if (yych <= 0xDFDF) goto yy2;
				if (yych <= 0xDFF6) goto yy3;
				goto yy2;
			}
		}
	}
yy8:
	yych = *++YYCURSOR;
	if (yych <= 0xDE89) {
		if (yych <= 0xDD75) {
			if (yych <= 0xDCCF) {
				if (yych <= 0xDC72) {
					if (yych <= 0xDC02) goto yy2;
					if (yych <= 0xDC37) goto yy3;
					if (yych <= 0xDC70) goto yy2;
					goto yy3;
				} else {
					if (yych <= 0xDC75) {
						if (yych <= 0xDC74) goto yy2;
						goto yy3;
					} else {
						if (yych <= 0xDC82) goto yy2;
						if (yych <= 0xDCAF) goto yy3;
						goto yy2;
					}
				}
			} else {
				if (yych <= 0xDD44) {
					if (yych <= 0xDD02) {
						if (yych <= 0xDCE8) goto yy3;
						goto yy2;
					} else {
						if (yych <= 0xDD26) goto yy3;
						if (yych <= 0xDD43) goto yy2;
						goto yy3;
					}
				} else {
					if (yych <= 0xDD47) {
						if (yych <= 0xDD46) goto yy2;
						goto yy3;
					} else {
						if (yych <= 0xDD4F) goto yy2;
						if (yych <= 0xDD72) goto yy3;
						goto yy2;
					}
				}
			}
		} else {
			if (yych <= 0xDDFF) {
				if (yych <= 0xDDC4) {
					if (yych <= 0xDD82) {
						if (yych <= 0xDD76) goto yy3;
						goto yy2;
					} else {
						if (yych <= 0xDDB2) goto yy3;
						if (yych <= 0xDDC0) goto yy2;
						goto yy3;
					}
				} else {
					if (yych <= 0xDDDA) {
						if (yych <= 0xDDD9) goto yy2;
						goto yy3;
					} else {
						if (yych == 0xDDDC) goto yy3;
						goto yy2;
					}
				}
			} else {
				if (yych <= 0xDE40) {
					if (yych <= 0xDE12) {
						if (yych <= 0xDE11) goto yy3;
						goto yy2;
					} else {
						if (yych <= 0xDE2B) goto yy3;
						if (yych <= 0xDE3E) goto yy2;
						goto yy3;
					}
				} else {
					if (yych <= 0xDE86) {
						if (yych <= 0xDE7F) goto yy2;
						goto yy3;
					} else {
						if (yych == 0xDE88) goto yy3;
						goto yy2;
					}
				}
			}
		}
	} else {
		if (yych <= 0xDF3C) {
			if (yych <= 0xDF0E) {
				if (yych <= 0xDEA8) {
					if (yych <= 0xDE8E) {
						if (yych <= 0xDE8D) goto yy3;
						goto yy2;
					} else {
						if (yych == 0xDE9E) goto yy2;
						goto yy3;
					}
				} else {
					if (yych <= 0xDEDE) {
						if (yych <= 0xDEAF) goto yy2;
						goto yy3;
					} else {
						if (yych <= 0xDF04) goto yy2;
						if (yych <= 0xDF0C) goto yy3;
						goto yy2;
					}
				}
			} else {
				if (yych <= 0xDF30) {
					if (yych <= 0xDF12) {
						if (yych <= 0xDF10) goto yy3;
						goto yy2;
					} else {
						if (yych == 0xDF29) goto yy2;
						goto yy3;
					}
				} else {
					if (yych <= 0xDF33) {
						if (yych <= 0xDF31) goto yy2;
						goto yy3;
					} else {
						if (yych <= 0xDF34) goto yy2;
						if (yych <= 0xDF39) goto yy3;
						goto yy2;
					}
				}
			}
		} else {
			if (yych <= 0xDF8D) {
				if (yych <= 0xDF61) {
					if (yych <= 0xDF4F) {
						if (yych <= 0xDF3D) goto yy3;
						goto yy2;
					} else {
						if (yych <= 0xDF50) goto yy3;
						if (yych <= 0xDF5C) goto yy2;
						goto yy3;
					}
				} else {
					if (yych <= 0xDF89) {
						if (yych <= 0xDF7F) goto yy2;
						goto yy3;
					} else {
						if (yych == 0xDF8B) goto yy3;
						goto yy2;
					}
				}
			} else {
				if (yych <= 0xDFB7) {
					if (yych <= 0xDF8F) {
						if (yych <= 0xDF8E) goto yy3;
						goto yy2;
					} else {
						if (yych == 0xDFB6) goto yy2;
						goto yy3;
					}
				} else {
					if (yych <= 0xDFD1) {
						if (yych <= 0xDFD0) goto yy2;
						goto yy3;
					} else {
						if (yych == 0xDFD3) goto yy3;
						goto yy2;
					}
				}
			}
		}
	}
yy9:
	yych = *++YYCURSOR;
	if (yych <= 0xDDAE) {
		if (yych <= 0xDC7F) {
			if (yych <= 0xDC46) {
				if (yych <= 0xDBFF) goto yy2;
				if (yych <= 0xDC34) goto yy3;
				goto yy2;
			} else {
				if (yych <= 0xDC4A) goto yy3;
				if (yych <= 0xDC5E) goto yy2;
				if (yych <= 0xDC61) goto yy3;
				goto yy2;
			}
		} else {
			if (yych <= 0xDCC5) {
				if (yych <= 0xDCAF) goto yy3;
				if (yych <= 0xDCC3) goto yy2;
				goto yy3;
			} else {
				if (yych == 0xDCC7) goto yy3;
				if (yych <= 0xDD7F) goto yy2;
				goto yy3;
			}
		}
	} else {
		if (yych <= 0xDE7F) {
			if (yych <= 0xDDFF) {
				if (yych <= 0xDDD7) goto yy2;
				if (yych <= 0xDDDB) goto yy3;
				goto yy2;
			} else {
				if (yych <= 0xDE2F) goto yy3;
				if (yych == 0xDE44) goto yy3;
				goto yy2;
			}
		} else {
			if (yych <= 0xDEFF) {
				if (yych <= 0xDEAA) goto yy3;
				if (yych == 0xDEB8) goto yy3;
				goto yy2;
			} else {
				if (yych <= 0xDF1A) goto yy3;
				if (yych <= 0xDF3F) goto yy2;
				if (yych <= 0xDF46) goto yy3;
				goto yy2;
			}
		}
	}
yy10:
	yych = *++YYCURSOR;
	if (yych <= 0xDDA9) {
		if (yych <= 0xDD13) {
			if (yych <= 0xDCFE) {
				if (yych <= 0xDC2B) {
					if (yych <= 0xDBFF) goto yy2;
					goto yy3;
				} else {
					if (yych <= 0xDC9F) goto yy2;
					if (yych <= 0xDCDF) goto yy3;
					goto yy2;
				}
			} else {
				if (yych <= 0xDD08) {
					if (yych <= 0xDD06) goto yy3;
					goto yy2;
				} else {
					if (yych <= 0xDD09) goto yy3;
					if (yych <= 0xDD0B) goto yy2;
					goto yy3;
				}
			}
		} else {
			if (yych <= 0xDD3E) {
				if (yych <= 0xDD16) {
					if (yych <= 0xDD14) goto yy2;
					goto yy3;
				} else {
					if (yych <= 0xDD17) goto yy2;
					if (yych <= 0xDD2F) goto yy3;
					goto yy2;
				}
			} else {
				if (yych <= 0xDD41) {
					if (yych == 0xDD40) goto yy2;
					goto yy3;
				} else {
					if (yych <= 0xDD9F) goto yy2;
					if (yych <= 0xDDA7) goto yy3;
					goto yy2;
				}
			}
		}
	} else {
		if (yych <= 0xDE3A) {
			if (yych <= 0xDDE3) {
				if (yych <= 0xDDE0) {
					if (yych <= 0xDDD0) goto yy3;
					goto yy2;
				} else {
					if (yych == 0xDDE2) goto yy2;
					goto yy3;
				}
			} else {
				if (yych <= 0xDE0A) {
					if (yych == 0xDE00) goto yy3;
					goto yy2;
				} else {
					if (yych <= 0xDE32) goto yy3;
					if (yych <= 0xDE39) goto yy2;
					goto yy3;
				}
			}
		} else {
			if (yych <= 0xDE9C) {
				if (yych <= 0xDE50) {
					if (yych <= 0xDE4F) goto yy2;
					goto yy3;
				} else {
					if (yych <= 0xDE5B) goto yy2;
					if (yych <= 0xDE89) goto yy3;
					goto yy2;
				}
			} else {
				if (yych <= 0xDEF8) {
					if (yych <= 0xDE9D) goto yy3;
					if (yych <= 0xDEAF) goto yy2;
					goto yy3;
				} else {
					if (yych <= 0xDFBF) goto yy2;
					if (yych <= 0xDFE0) goto yy3;
					goto yy2;
				}
			}
		}
	}
yy11:
	yych = *++YYCURSOR;
	if (yych <= 0xDD65) {
		if (yych <= 0xDCFF) {
			if (yych <= 0xDC2E) {
				if (yych <= 0xDBFF) goto yy2;
				if (yych == 0xDC09) goto yy2;
				goto yy3;
			} else {
				if (yych <= 0xDC40) {
					if (yych <= 0xDC3F) goto yy2;
					goto yy3;
				} else {
					if (yych <= 0xDC71) goto yy2;
					if (yych <= 0xDC8F) goto yy3;
					goto yy2;
				}
			}
		} else {
			if (yych <= 0xDD0A) {
				if (yych == 0xDD07) goto yy2;
				if (yych <= 0xDD09) goto yy3;
				goto yy2;
			} else {
				if (yych <= 0xDD45) {
					if (yych <= 0xDD30) goto yy3;
					goto yy2;
				} else {
					if (yych <= 0xDD46) goto yy3;
					if (yych <= 0xDD5F) goto yy2;
					goto yy3;
				}
			}
		}
	} else {
		if (yych <= 0xDEDF) {
			if (yych <= 0xDD89) {
				if (yych <= 0xDD66) goto yy2;
				if (yych == 0xDD69) goto yy2;
				goto yy3;
			} else {
				if (yych <= 0xDD98) {
					if (yych <= 0xDD97) goto yy2;
					goto yy3;
				} else {
					if (yych <= 0xDDAF) goto yy2;
					if (yych <= 0xDDDB) goto yy3;
					goto yy2;
				}
			}
		} else {
			if (yych <= 0xDF10) {
				if (yych <= 0xDF01) {
					if (yych <= 0xDEF2) goto yy3;
					goto yy2;
				} else {
					if (yych == 0xDF03) goto yy2;
					goto yy3;
				}
			} else {
				if (yych <= 0xDF33) {
					if (yych <= 0xDF11) goto yy2;
					goto yy3;
				} else {
					if (yych == 0xDFB0) goto yy3;
					goto yy2;
				}
			}
		}
	}
yy12:
	yych = *++YYCURSOR;
	if (yych <= 0xDBFF) goto yy2;
	if (yych <= 0xDF99) goto yy3;
	goto yy2;
yy13:
	yych = *++YYCURSOR;
	if (yych <= 0xDC7F) goto yy2;
	if (yych <= 0xDD43) goto yy3;
	goto yy2;
yy14:
	yych = *++YYCURSOR;
	if (yych <= 0xDF8F) goto yy2;
	if (yych <= 0xDFF0) goto yy3;
	goto yy2;
yy15:
	yych = *++YYCURSOR;
	if (yych <= 0xDBFF) goto yy2;
	if (yych <= 0xDFFF) goto yy3;
	goto yy2;
yy16:
	yych = *++YYCURSOR;
	if (yych <= 0xDC40) {
		if (yych <= 0xDBFF) goto yy2;
		if (yych <= 0xDC2F) goto yy3;
		goto yy2;
	} else {
		if (yych <= 0xDC46) goto yy3;
		if (yych <= 0xDC5F) goto yy2;
		if (yych <= 0xDFFF) goto yy3;
		goto yy2;
	}
yy17:
	yych = *++YYCURSOR;
	if (yych <= 0xDBFF) goto yy2;
	if (yych <= 0xDFFA) goto yy3;
	goto yy2;
yy18:
	yych = *++YYCURSOR;
	if (yych <= 0xDBFF) goto yy2;
	if (yych <= 0xDE46) goto yy3;
	goto yy2;
yy19:
	yych = *++YYCURSOR;
	if (yych <= 0xDCFF) goto yy2;
	if (yych <= 0xDD1D) goto yy3;
	goto yy2;
yy20:
	yych = *++YYCURSOR;
	if (yych <= 0xDEED) {
		if (yych <= 0xDE5E) {
			if (yych <= 0xDBFF) goto yy2;
			if (yych <= 0xDE38) goto yy3;
			if (yych <= 0xDE3F) goto yy2;
			goto yy3;
		} else {
			if (yych <= 0xDE6F) goto yy2;
			if (yych <= 0xDEBE) goto yy3;
			if (yych <= 0xDECF) goto yy2;
			goto yy3;
		}
	} else {
		if (yych <= 0xDF43) {
			if (yych <= 0xDEFF) goto yy2;
			if (yych <= 0xDF2F) goto yy3;
			if (yych <= 0xDF3F) goto yy2;
			goto yy3;
		} else {
			if (yych <= 0xDF77) {
				if (yych <= 0xDF62) goto yy2;
				goto yy3;
			} else {
				if (yych <= 0xDF7C) goto yy2;
				if (yych <= 0xDF8F) goto yy3;
				goto yy2;
			}
		}
	}
yy21:
	yych = *++YYCURSOR;
	if (yych <= 0xDF4A) {
		if (yych <= 0xDE9F) {
			if (yych <= 0xDD6C) {
				if (yych <= 0xDD3F) goto yy2;
				goto yy3;
			} else {
				if (yych <= 0xDE3F) goto yy2;
				if (yych <= 0xDE7F) goto yy3;
				goto yy2;
			}
		} else {
			if (yych <= 0xDEBA) {
				if (yych <= 0xDEB8) goto yy3;
				goto yy2;
			} else {
				if (yych <= 0xDED3) goto yy3;
				if (yych <= 0xDEFF) goto yy2;
				goto yy3;
			}
		}
	} else {
		if (yych <= 0xDFDF) {
			if (yych <= 0xDF50) {
				if (yych <= 0xDF4F) goto yy2;
				goto yy3;
			} else {
				if (yych <= 0xDF92) goto yy2;
				if (yych <= 0xDF9F) goto yy3;
				goto yy2;
			}
		} else {
			if (yych <= 0xDFE3) {
				if (yych == 0xDFE2) goto yy2;
				goto yy3;
			} else {
				if (yych <= 0xDFF1) goto yy2;
				if (yych <= 0xDFF3) goto yy3;
				goto yy2;
			}
		}
	}
yy22:
	yych = *++YYCURSOR;
	if (yych <= 0xDCFE) {
		if (yych <= 0xDBFF) goto yy2;
		if (yych <= 0xDCD5) goto yy3;
		goto yy2;
	} else {
		if (yych <= 0xDD1E) goto yy3;
		if (yych <= 0xDD7F) goto yy2;
		if (yych <= 0xDDF2) goto yy3;
		goto yy2;
	}
yy23:
	yych = *++YYCURSOR;
	if (yych <= 0xDFF4) {
		if (yych <= 0xDFEF) goto yy2;
		if (yych <= 0xDFF3) goto yy3;
		goto yy2;
	} else {
		if (yych == 0xDFFC) goto yy2;
		if (yych <= 0xDFFE) goto yy3;
		goto yy2;
	}
yy24:
	yych = *++YYCURSOR;
	if (yych <= 0xDD52) {
		if (yych <= 0xDD31) {
			if (yych <= 0xDBFF) goto yy2;
			if (yych <= 0xDD22) goto yy3;
			goto yy2;
		} else {
			if (yych <= 0xDD32) goto yy3;
			if (yych <= 0xDD4F) goto yy2;
			goto yy3;
		}
	} else {
		if (yych <= 0xDD63) {
			if (yych == 0xDD55) goto yy3;
			goto yy2;
		} else {
			if (yych <= 0xDD67) goto yy3;
			if (yych <= 0xDD6F) goto yy2;
			if (yych <= 0xDEFB) goto yy3;
			goto yy2;
		}
	}
yy25:
	yych = *++YYCURSOR;
	if (yych <= 0xDC7C) {
		if (yych <= 0xDBFF) goto yy2;
		if (yych <= 0xDC6A) goto yy3;
		if (yych <= 0xDC6F) goto yy2;
		goto yy3;
	} else {
		if (yych <= 0xDC88) {
			if (yych <= 0xDC7F) goto yy2;
			goto yy3;
		} else {
			if (yych <= 0xDC8F) goto yy2;
			if (yych <= 0xDC99) goto yy3;
			goto yy2;
		}
	}
yy26:
	yych = *++YYCURSOR;
	if (yych <= 0xDD3E) {
		if (yych <= 0xDCBA) {
			if (yych <= 0xDCA1) {
				if (yych <= 0xDC55) {
					if (yych <= 0xDBFF) goto yy2;
					if (yych <= 0xDC54) goto yy3;
					goto yy2;
				} else {
					if (yych == 0xDC9D) goto yy2;
					if (yych <= 0xDC9F) goto yy3;
					goto yy2;
				}
			} else {
				if (yych <= 0xDCA8) {
					if (yych <= 0xDCA2) goto yy3;
					if (yych <= 0xDCA4) goto yy2;
					if (yych <= 0xDCA6) goto yy3;
					goto yy2;
				} else {
					if (yych == 0xDCAD) goto yy2;
					if (yych <= 0xDCB9) goto yy3;
					goto yy2;
				}
			}
		} else {
			if (yych <= 0xDD0A) {
				if (yych <= 0xDCC3) {
					if (yych == 0xDCBC) goto yy2;
					goto yy3;
				} else {
					if (yych <= 0xDCC4) goto yy2;
					if (yych == 0xDD06) goto yy2;
					goto yy3;
				}
			} else {
				if (yych <= 0xDD1C) {
					if (yych <= 0xDD0C) goto yy2;
					if (yych == 0xDD15) goto yy2;
					goto yy3;
				} else {
					if (yych <= 0xDD1D) goto yy2;
					if (yych == 0xDD3A) goto yy2;
					goto yy3;
				}
			}
		}
	} else {
		if (yych <= 0xDEFB) {
			if (yych <= 0xDD51) {
				if (yych <= 0xDD45) {
					if (yych <= 0xDD3F) goto yy2;
					if (yych <= 0xDD44) goto yy3;
					goto yy2;
				} else {
					if (yych <= 0xDD46) goto yy3;
					if (yych <= 0xDD49) goto yy2;
					if (yych <= 0xDD50) goto yy3;
					goto yy2;
				}
			} else {
				if (yych <= 0xDEC1) {
					if (yych <= 0xDEA5) goto yy3;
					if (yych <= 0xDEA7) goto yy2;
					if (yych <= 0xDEC0) goto yy3;
					goto yy2;
				} else {
					if (yych == 0xDEDB) goto yy2;
					if (yych <= 0xDEFA) goto yy3;
					goto yy2;
				}
			}
		} else {
			if (yych <= 0xDF6F) {
				if (yych <= 0xDF35) {
					if (yych == 0xDF15) goto yy2;
					if (yych <= 0xDF34) goto yy3;
					goto yy2;
				} else {
					if (yych == 0xDF4F) goto yy2;
					if (yych <= 0xDF6E) goto yy3;
					goto yy2;
				}
			} else {
				if (yych <= 0xDFA9) {
					if (yych == 0xDF89) goto yy2;
					if (yych <= 0xDFA8) goto yy3;
					goto yy2;
				} else {
					if (yych == 0xDFC3) goto yy2;
					if (yych <= 0xDFCB) goto yy3;
					goto yy2;
				}
			}
		}
	}
yy27:
	yych = *++YYCURSOR;
	if (yych <= 0xDEFF) goto yy2;
	if (yych <= 0xDF1E) goto yy3;
	if (yych <= 0xDF24) goto yy2;
	if (yych <= 0xDF2A) goto yy3;
	goto yy2;
yy28:
	yych = *++YYCURSOR;
	if (yych <= 0xDD3D) {
		if (yych <= 0xDCFF) {
			if (yych <= 0xDC2F) goto yy2;
			if (yych <= 0xDC6D) goto yy3;
			goto yy2;
		} else {
			if (yych <= 0xDD2C) goto yy3;
			if (yych <= 0xDD36) goto yy2;
			goto yy3;
		}
	} else {
		if (yych <= 0xDE8F) {
			if (yych == 0xDD4E) goto yy3;
			goto yy2;
		} else {
			if (yych <= 0xDEAD) goto yy3;
			if (yych <= 0xDEBF) goto yy2;
			if (yych <= 0xDEEB) goto yy3;
			goto yy2;
		}
	}
yy29:
	yych = *++YYCURSOR;
	if (yych <= 0xDEE6) {
		if (yych <= 0xDDF0) {
			if (yych <= 0xDDCF) {
				if (yych <= 0xDCCF) goto yy2;
				if (yych <= 0xDCEB) goto yy3;
				goto yy2;
			} else {
				if (yych <= 0xDDED) goto yy3;
				if (yych <= 0xDDEF) goto yy2;
				goto yy3;
			}
		} else {
			if (yych <= 0xDEDF) {
				if (yych <= 0xDEBF) goto yy2;
				if (yych <= 0xDEDE) goto yy3;
				goto yy2;
			} else {
				if (yych == 0xDEE3) goto yy2;
				if (yych <= 0xDEE5) goto yy3;
				goto yy2;
			}
		}
	} else {
		if (yych <= 0xDFE6) {
			if (yych <= 0xDEF4) {
				if (yych <= 0xDEED) goto yy3;
				if (yych <= 0xDEEF) goto yy2;
				goto yy3;
			} else {
				if (yych <= 0xDEFD) goto yy2;
				if (yych <= 0xDEFF) goto yy3;
				if (yych <= 0xDFDF) goto yy2;
				goto yy3;
			}
		} else {
			if (yych <= 0xDFEC) {
				if (yych <= 0xDFE7) goto yy2;
				if (yych <= 0xDFEB) goto yy3;
				goto yy2;
			} else {
				if (yych == 0xDFEF) goto yy2;
				if (yych <= 0xDFFE) goto yy3;
				goto yy2;
			}
		}
	}
yy30:
	yych = *++YYCURSOR;
	if (yych <= 0xDCFF) {
		if (yych <= 0xDBFF) goto yy2;
		if (yych <= 0xDCC4) goto yy3;
		goto yy2;
	} else {
		if (yych <= 0xDD43) goto yy3;
		if (yych == 0xDD4B) goto yy3;
		goto yy2;
	}
yy31:
	yych = *++YYCURSOR;
	switch (yych) {
		case 0xDE00:
		case 0xDE01:
		case 0xDE02:
		case 0xDE03:
		case 0xDE05:
		case 0xDE06:
		case 0xDE07:
		case 0xDE08:
		case 0xDE09:
		case 0xDE0A:
		case 0xDE0B:
		case 0xDE0C:
		case 0xDE0D:
		case 0xDE0E:
		case 0xDE0F:
		case 0xDE10:
		case 0xDE11:
		case 0xDE12:
		case 0xDE13:
		case 0xDE14:
		case 0xDE15:
		case 0xDE16:
		case 0xDE17:
		case 0xDE18:
		case 0xDE19:
		case 0xDE1A:
		case 0xDE1B:
		case 0xDE1C:
		case 0xDE1D:
		case 0xDE1E:
		case 0xDE1F:
		case 0xDE21:
		case 0xDE22:
		case 0xDE24:
		case 0xDE27:
		case 0xDE29:
		case 0xDE2A:
		case 0xDE2B:
		case 0xDE2C:
		case 0xDE2D:
		case 0xDE2E:
		case 0xDE2F:
		case 0xDE30:
		case 0xDE31:
		case 0xDE32:
		case 0xDE34:
		case 0xDE35:
		case 0xDE36:
		case 0xDE37:
		case 0xDE39:
		case 0xDE3B:
		case 0xDE42:
		case 0xDE47:
		case 0xDE49:
		case 0xDE4B:
		case 0xDE4D:
		case 0xDE4E:
		case 0xDE4F:
		case 0xDE51:
		case 0xDE52:
		case 0xDE54:
		case 0xDE57:
		case 0xDE59:
		case 0xDE5B:
		case 0xDE5D:
		case 0xDE5F:
		case 0xDE61:
		case 0xDE62:
		case 0xDE64:
		case 0xDE67:
		case 0xDE68:
		case 0xDE69:
		case 0xDE6A:
		case 0xDE6C:
		case 0xDE6D:
		case 0xDE6E:
		case 0xDE6F:
		case 0xDE70:
		case 0xDE71:
		case 0xDE72:
		case 0xDE74:
		case 0xDE75:
		case 0xDE76:
		case 0xDE77:
		case 0xDE79:
		case 0xDE7A:
		case 0xDE7B:
		case 0xDE7C:
		case 0xDE7E:
		case 0xDE80:
		case 0xDE81:
		case 0xDE82:
		case 0xDE83:
		case 0xDE84:
		case 0xDE85:
		case 0xDE86:
		case 0xDE87:
		case 0xDE88:
		case 0xDE89:
		case 0xDE8B:
		case 0xDE8C:
		case 0xDE8D:
		case 0xDE8E:
		case 0xDE8F:
		case 0xDE90:
		case 0xDE91:
		case 0xDE92:
		case 0xDE93:
		case 0xDE94:
		case 0xDE95:
		case 0xDE96:
		case 0xDE97:
		case 0xDE98:
		case 0xDE99:
		case 0xDE9A:
		case 0xDE9B:
		case 0xDEA1:
		case 0xDEA2:
		case 0xDEA3:
		case 0xDEA5:
		case 0xDEA6:
		case 0xDEA7:
		case 0xDEA8:
		case 0xDEA9:
		case 0xDEAB:
		case 0xDEAC:
		case 0xDEAD:
		case 0xDEAE:
		case 0xDEAF:
		case 0xDEB0:
		case 0xDEB1:
		case 0xDEB2:
		case 0xDEB3:
		case 0xDEB4:
		case 0xDEB5:
		case 0xDEB6:
		case 0xDEB7:
		case 0xDEB8:
		case 0xDEB9:
		case 0xDEBA:
		case 0xDEBB: goto yy3;
		default: goto yy2;
	}
yy32:
	yych = *++YYCURSOR;
	if (yych <= 0xDBFF) goto yy2;
	if (yych <= 0xDEDF) goto yy3;
	if (yych <= 0xDEFF) goto yy2;
	if (yych <= 0xDFFF) goto yy3;
	goto yy2;
yy33:
	yych = *++YYCURSOR;
	if (yych <= 0xDBFF) goto yy2;
	if (yych <= 0xDC1D) goto yy3;
	if (yych <= 0xDC1F) goto yy2;
	if (yych <= 0xDFFF) goto yy3;
	goto yy2;
yy34:
	yych = *++YYCURSOR;
	if (yych <= 0xDBFF) goto yy2;
	if (yych <= 0xDEAD) goto yy3;
	if (yych <= 0xDEAF) goto yy2;
	if (yych <= 0xDFFF) goto yy3;
	goto yy2;
yy35:
	yych = *++YYCURSOR;
	if (yych <= 0xDBFF) goto yy2;
	if (yych <= 0xDFE0) goto yy3;
	if (yych <= 0xDFEF) goto yy2;
	if (yych <= 0xDFFF) goto yy3;
	goto yy2;
yy36:
	yych = *++YYCURSOR;
	if (yych <= 0xDBFF) goto yy2;
	if (yych <= 0xDE5D) goto yy3;
	goto yy2;
yy37:
	yych = *++YYCURSOR;
	if (yych <= 0xDBFF) goto yy2;
	if (yych <= 0xDE1D) goto yy3;
	goto yy2;
yy38:
	yych = *++YYCURSOR;
	if (yych <= 0xDBFF) goto yy2;
	if (yych <= 0xDF4A) goto yy3;
	if (yych <= 0xDF4F) goto yy2;
	if (yych <= 0xDFFF) goto yy3;
	goto yy2;
yy39:
	yych = *++YYCURSOR;
	if (yych <= 0xDBFF) goto yy2;
	if (yych <= 0xDC79) goto yy3;
	goto yy2;
}
#line 16 "encodings/unicode_group_L_x.re"

}

static const uint32_t chars_L[] = {0x41,0x5a,0x61,0x7a,0xaa,0xaa,0xb5,0xb5,0xba,0xba,0xc0,0xd6,0xd8,0xf6,0xf8,0x2c1,0x2c6,0x2d1,0x2e0,0x2e4,0x2ec,0x2ec,0x2ee,0x2ee,0x370,0x374,0x376,0x377,0x37a,0x37d,0x37f,0x37f,0x386,0x386,0x388,0x38a,0x38c,0x38c,0x38e,0x3a1,0x3a3,0x3f5,0x3f7,0x481,0x48a,0x52f,0x531,0x556,0x559,0x559,0x560,0x588,0x5d0,0x5ea,0x5ef,0x5f2,0x620,0x64a,0x66e,0x66f,0x671,0x6d3,0x6d5,0x6d5,0x6e5,0x6e6,0x6ee,0x6ef,0x6fa,0x6fc,0x6ff,0x6ff,0x710,0x710,0x712,0x72f,0x74d,0x7a5,0x7b1,0x7b1,0x7ca,0x7ea,0x7f4,0x7f5,0x7fa,0x7fa,0x800,0x815,0x81a,0x81a,0x824,0x824,0x828,0x828,0x840,0x858,0x860,0x86a,0x870,0x887,0x889,0x88f,0x8a0,0x8c9,0x904,0x939,0x93d,0x93d,0x950,0x950,0x958,0x961,0x971,0x980,0x985,0x98c,0x98f,0x990,0x993,0x9a8,0x9aa,0x9b0,0x9b2,0x9b2,0x9b6,0x9b9,0x9bd,0x9bd,0x9ce,0x9ce,0x9dc,0x9dd,0x9df,0x9e1,0x9f0,0x9f1,0x9fc,0x9fc,0xa05,0xa0a,0xa0f,0xa10,0xa13,0xa28,0xa2a,0xa30,0xa32,0xa33,0xa35,0xa36,0xa38,0xa39,0xa59,0xa5c,0xa5e,0xa5e,0xa72,0xa74,0xa85,0xa8d,0xa8f,0xa91,0xa93,0xaa8,0xaaa,0xab0,0xab2,0xab3,0xab5,0xab9,0xabd,0xabd,0xad0,0xad0,0xae0,0xae1,0xaf9,0xaf9,0xb05,0xb0c,0xb0f,0xb10,0xb13,0xb28,0xb2a,0xb30,0xb32,0xb33,0xb35,0xb39,0xb3d,0xb3d,0xb5c,0xb5d,0xb5f,0xb61,0xb71,0xb71,0xb83,0xb83,0xb85,0xb8a,0xb8e,0xb90,0xb92,0xb95,0xb99,0xb9a,0xb9c,0xb9c,0xb9e,0xb9f,0xba3,0xba4,0xba8,0xbaa,0xbae,0xbb9,0xbd0,0xbd0,0xc05,0xc0c,0xc0e,0xc10,0xc12,0xc28,0xc2a,0xc39,0xc3d,0xc3d,0xc58,0xc5a,0xc5c,0xc5d,0xc60,0xc61,0xc80,0xc80,0xc85,0xc8c,0xc8e,0xc90,0xc92,0xca8,0xcaa,0xcb3,0xcb5,0xcb9,0xcbd,0xcbd,0xcdc,0xcde,0xce0,0xce1,0xcf1,0xcf2,0xd04,0xd0c,0xd0e,0xd10,0xd12,0xd3a,0xd3d,0xd3d,0xd4e,0xd4e,0xd54,0xd56,0xd5f,0xd61,0xd7a,0xd7f,0xd85,0xd96,0xd9a,0xdb1,0xdb3,0xdbb,0xdbd,0xdbd,0xdc0,0xdc6,0xe01,0xe30,0xe32,0xe33,0xe40,0xe46,0xe81,0xe82,0xe84,0xe84,0xe86,0xe8a,0xe8c,0xea3,0xea5,0xea5,0xea7,0xeb0,0xeb2,0xeb3,0xebd,0xebd,0xec0,0xec4,0xec6,0xec6,0xedc,0xedf,0xf00,0xf00,0xf40,0xf47,0xf49,0xf6c,0xf88,0xf8c,0x1000,0x102a,0x103f,0x103f,0x1050,0x1055,0x105a,0x105d,0x1061,0x1061,0x1065,0x1066,0x106e,0x1070,0x1075,0x1081,0x108e,0x108e,0x10a0,0x10c5,0x10c7,0x10c7,0x10cd,0x10cd,0x10d0,0x10fa,0x10fc,0x1248,0x124a,0x124d,0x1250,0x1256,0x1258,0x1258,0x125a,0x125d,0x1260,0x1288,0x128a,0x128d,0x1290,0x12b0,0x12b2,0x12b5,0x12b8,0x12be,0x12c0,0x12c0,0x12c2,0x12c5,0x12c8,0x12d6,0x12d8,0x1310,0x1312,0x1315,0x1318,0x135a,0x1380,0x138f,0x13a0,0x13f5,0x13f8,0x13fd,0x1401,0x166c,0x166f,0x167f,0x1681,0x169a,0x16a0,0x16ea,0x16f1,0x16f8,0x1700,0x1711,0x171f,0x1731,0x1740,0x1751,0x1760,0x176c,0x176e,0x1770,0x1780,0x17b3,0x17d7,0x17d7,0x17dc,0x17dc,0x1820,0x1878,0x1880,0x1884,0x1887,0x18a8,0x18aa,0x18aa,0x18b0,0x18f5,0x1900,0x191e,0x1950,0x196d,0x1970,0x1974,0x1980,0x19ab,0x19b0,0x19c9,0x1a00,0x1a16,0x1a20,0x1a54,0x1aa7,0x1aa7,0x1b05,0x1b33,0x1b45,0x1b4c,0x1b83,0x1ba0,0x1bae,0x1baf,0x1bba,0x1be5,0x1c00,0x1c23,0x1c4d,0x1c4f,0x1c5a,0x1c7d,0x1c80,0x1c8a,0x1c90,0x1cba,0x1cbd,0x1cbf,0x1ce9,0x1cec,0x1cee,0x1cf3,0x1cf5,0x1cf6,0x1cfa,0x1cfa,0x1d00,0x1dbf,0x1e00,0x1f15,0x1f18,0x1f1d,0x1f20,0x1f45,0x1f48,0x1f4d,0x1f50,0x1f57,0x1f59,0x1f59,0x1f5b,0x1f5b,0x1f5d,0x1f5d,0x1f5f,0x1f7d,0x1f80,0x1fb4,0x1fb6,0x1fbc,0x1fbe,0x1fbe,0x1fc2,0x1fc4,0x1fc6,0x1fcc,0x1fd0,0x1fd3,0x1fd6,0x1fdb,0x1fe0,0x1fec,0x1ff2,0x1ff4,0x1ff6,0x1ffc,0x2071,0x2071,0x207f,0x207f,0x2090,0x209c,0x2102,0x2102,0x2107,0x2107,0x210a,0x2113,0x2115,0x2115,0x2119,0x211d,0x2124,0x2124,0x2126,0x2126,0x2128,0x2128,0x212a,0x212d,0x212f,0x2139,0x213c,0x213f,0x2145,0x2149,0x214e,0x214e,0x2183,0x2184,0x2c00,0x2ce4,0x2ceb,0x2cee,0x2cf2,0x2cf3,0x2d00,0x2d25,0x2d27,0x2d27,0x2d2d,0x2d2d,0x2d30,0x2d67,0x2d6f,0x2d6f,0x2d80,0x2d96,0x2da0,0x2da6,0x2da8,0x2dae,0x2db0,0x2db6,0x2db8,0x2dbe,0x2dc0,0x2dc6,0x2dc8,0x2dce,0x2dd0,0x2dd6,0x2dd8,0x2dde,0x2e2f,0x2e2f,0x3005,0x3006,0x3031,0x3035,0x303b,0x303c,0x3041,0x3096,0x309d,0x309f,0x30a1,0x30fa,0x30fc,0x30ff,0x3105,0x312f,0x3131,0x318e,0x31a0,0x31bf,0x31f0,0x31ff,0x3400,0x4dbf,0x4e00,0xa48c,0xa4d0,0xa4fd,0xa500,0xa60c,0xa610,0xa61f,0xa62a,0xa62b,0xa640,0xa66e,0xa67f,0xa69d,0xa6a0,0xa6e5,0xa717,0xa71f,0xa722,0xa788,0xa78b,0xa7dc,0xa7f1,0xa801,0xa803,0xa805,0xa807,0xa80a,0xa80c,0xa822,0xa840,0xa873,0xa882,0xa8b3,0xa8f2,0xa8f7,0xa8fb,0xa8fb,0xa8fd,0xa8fe,0xa90a,0xa925,0xa930,0xa946,0xa960,0xa97c,0xa984,0xa9b2,0xa9cf,0xa9cf,0xa9e0,0xa9e4,0xa9e6,0xa9ef,0xa9fa,0xa9fe,0xaa00,0xaa28,0xaa40,0xaa42,0xaa44,0xaa4b,0xaa60,0xaa76,0xaa7a,0xaa7a,0xaa7e,0xaaaf,0xaab1,0xaab1,0xaab5,0xaab6,0xaab9,0xaabd,0xaac0,0xaac0,0xaac2,0xaac2,0xaadb,0xaadd,0xaae0,0xaaea,0xaaf2,0xaaf4,0xab01,0xab06,0xab09,0xab0e,0xab11,0xab16,0xab20,0xab26,0xab28,0xab2e,0xab30,0xab5a,0xab5c,0xab69,0xab70,0xabe2,0xac00,0xd7a3,0xd7b0,0xd7c6,0xd7cb,0xd7fb,0xf900,0xfa6d,0xfa70,0xfad9,0xfb00,0xfb06,0xfb13,0xfb17,0xfb1d,0xfb1d,0xfb1f,0xfb28,0xfb2a,0xfb36,0xfb38,0xfb3c,0xfb3e,0xfb3e,0xfb40,0xfb41,0xfb43,0xfb44,0xfb46,0xfbb1,0xfbd3,0xfd3d,0xfd50,0xfd8f,0xfd92,0xfdc7,0xfdf0,0xfdfb,0xfe70,0xfe74,0xfe76,0xfefc,0xff21,0xff3a,0xff41,0xff5a,0xff66,0xffbe,0xffc2,0xffc7,0xffca,0xffcf,0xffd2,0xffd7,0xffda,0xffdc,0x10000,0x1000b,0x1000d,0x10026,0x10028,0x1003a,0x1003c,0x1003d,0x1003f,0x1004d,0x10050,0x1005d,0x10080,0x100fa,0x10280,0x1029c,0x102a0,0x102d0,0x10300,0x1031f,0x1032d,0x10340,0x10342,0x10349,0x10350,0x10375,0x10380,0x1039d,0x103a0,0x103c3,0x103c8,0x103cf,0x10400,0x1049d,0x104b0,0x104d3,0x104d8,0x104fb,0x10500,0x10527,0x10530,0x10563,0x10570,0x1057a,0x1057c,0x1058a,0x1058c,0x10592,0x10594,0x10595,0x10597,0x105a1,0x105a3,0x105b1,0x105b3,0x105b9,0x105bb,0x105bc,0x105c0,0x105f3,0x10600,0x10736,0x10740,0x10755,0x10760,0x10767,0x10780,0x10785,0x10787,0x107b0,0x107b2,0x107ba,0x10800,0x10805,0x10808,0x10808,0x1080a,0x10835,0x10837,0x10838,0x1083c,0x1083c,0x1083f,0x10855,0x10860,0x10876,0x10880,0x1089e,0x108e0,0x108f2,0x108f4,0x108f5,0x10900,0x10915,0x10920,0x10939,0x10940,0x10959,0x10980,0x109b7,0x109be,0x109bf,0x10a00,0x10a00,0x10a10,0x10a13,0x10a15,0x10a17,0x10a19,0x10a35,0x10a60,0x10a7c,0x10a80,0x10a9c,0x10ac0,0x10ac7,0x10ac9,0x10ae4,0x10b00,0x10b35,0x10b40,0x10b55,0x10b60,0x10b72,0x10b80,0x10b91,0x10c00,0x10c48,0x10c80,0x10cb2,0x10cc0,0x10cf2,0x10d00,0x10d23,0x10d4a,0x10d65,0x10d6f,0x10d85,0x10e80,0x10ea9,0x10eb0,0x10eb1,0x10ec2,0x10ec7,0x10f00,0x10f1c,0x10f27,0x10f27,0x10f30,0x10f45,0x10f70,0x10f81,0x10fb0,0x10fc4,0x10fe0,0x10ff6,0x11003,0x11037,0x11071,0x11072,0x11075,0x11075,0x11083,0x110af,0x110d0,0x110e8,0x11103,0x11126,0x11144,0x11144,0x11147,0x11147,0x11150,0x11172,0x11176,0x11176,0x11183,0x111b2,0x111c1,0x111c4,0x111da,0x111da,0x111dc,0x111dc,0x11200,0x11211,0x11213,0x1122b,0x1123f,0x11240,0x11280,0x11286,0x11288,0x11288,0x1128a,0x1128d,0x1128f,0x1129d,0x1129f,0x112a8,0x112b0,0x112de,0x11305,0x1130c,0x1130f,0x11310,0x11313,0x11328,0x1132a,0x11330,0x11332,0x11333,0x11335,0x11339,0x1133d,0x1133d,0x11350,0x11350,0x1135d,0x11361,0x11380,0x11389,0x1138b,0x1138b,0x1138e,0x1138e,0x11390,0x113b5,0x113b7,0x113b7,0x113d1,0x113d1,0x113d3,0x113d3,0x11400,0x11434,0x11447,0x1144a,0x1145f,0x11461,0x11480,0x114af,0x114c4,0x114c5,0x114c7,0x114c7,0x11580,0x115ae,0x115d8,0x115db,0x11600,0x1162f,0x11644,0x11644,0x11680,0x116aa,0x116b8,0x116b8,0x11700,0x1171a,0x11740,0x11746,0x11800,0x1182b,0x118a0,0x118df,0x118ff,0x11906,0x11909,0x11909,0x1190c,0x11913,0x11915,0x11916,0x11918,0x1192f,0x1193f,0x1193f,0x11941,0x11941,0x119a0,0x119a7,0x119aa,0x119d0,0x119e1,0x119e1,0x119e3,0x119e3,0x11a00,0x11a00,0x11a0b,0x11a32,0x11a3a,0x11a3a,0x11a50,0x11a50,0x11a5c,0x11a89,0x11a9d,0x11a9d,0x11ab0,0x11af8,0x11bc0,0x11be0,0x11c00,0x11c08,0x11c0a,0x11c2e,0x11c40,0x11c40,0x11c72,0x11c8f,0x11d00,0x11d06,0x11d08,0x11d09,0x11d0b,0x11d30,0x11d46,0x11d46,0x11d60,0x11d65,0x11d67,0x11d68,0x11d6a,0x11d89,0x11d98,0x11d98,0x11db0,0x11ddb,0x11ee0,0x11ef2,0x11f02,0x11f02,0x11f04,0x11f10,0x11f12,0x11f33,0x11fb0,0x11fb0,0x12000,0x12399,0x12480,0x12543,0x12f90,0x12ff0,0x13000,0x1342f,0x13441,0x13446,0x13460,0x143fa,0x14400,0x14646,0x16100,0x1611d,0x16800,0x16a38,0x16a40,0x16a5e,0x16a70,0x16abe,0x16ad0,0x16aed,0x16b00,0x16b2f,0x16b40,0x16b43,0x16b63,0x16b77,0x16b7d,0x16b8f,0x16d40,0x16d6c,0x16e40,0x16e7f,0x16ea0,0x16eb8,0x16ebb,0x16ed3,0x16f00,0x16f4a,0x16f50,0x16f50,0x16f93,0x16f9f,0x16fe0,0x16fe1,0x16fe3,0x16fe3,0x16ff2,0x16ff3,0x17000,0x18cd5,0x18cff,0x18d1e,0x18d80,0x18df2,0x1aff0,0x1aff3,0x1aff5,0x1affb,0x1affd,0x1affe,0x1b000,0x1b122,0x1b132,0x1b132,0x1b150,0x1b152,0x1b155,0x1b155,0x1b164,0x1b167,0x1b170,0x1b2fb,0x1bc00,0x1bc6a,0x1bc70,0x1bc7c,0x1bc80,0x1bc88,0x1bc90,0x1bc99,0x1d400,0x1d454,0x1d456,0x1d49c,0x1d49e,0x1d49f,0x1d4a2,0x1d4a2,0x1d4a5,0x1d4a6,0x1d4a9,0x1d4ac,0x1d4ae,0x1d4b9,0x1d4bb,0x1d4bb,0x1d4bd,0x1d4c3,0x1d4c5,0x1d505,0x1d507,0x1d50a,0x1d50d,0x1d514,0x1d516,0x1d51c,0x1d51e,0x1d539,0x1d53b,0x1d53e,0x1d540,0x1d544,0x1d546,0x1d546,0x1d54a,0x1d550,0x1d552,0x1d6a5,0x1d6a8,0x1d6c0,0x1d6c2,0x1d6da,0x1d6dc,0x1d6fa,0x1d6fc,0x1d714,0x1d716,0x1d734,0x1d736,0x1d74e,0x1d750,0x1d76e,0x1d770,0x1d788,0x1d78a,0x1d7a8,0x1d7aa,0x1d7c2,0x1d7c4,0x1d7cb,0x1df00,0x1df1e,0x1df25,0x1df2a,0x1e030,0x1e06d,0x1e100,0x1e12c,0x1e137,0x1e13d,0x1e14e,0x1e14e,0x1e290,0x1e2ad,0x1e2c0,0x1e2eb,0x1e4d0,0x1e4eb,0x1e5d0,0x1e5ed,0x1e5f0,0x1e5f0,0x1e6c0,0x1e6de,0x1e6e0,0x1e6e2,0x1e6e4,0x1e6e5,0x1e6e7,0x1e6ed,0x1e6f0,0x1e6f4,0x1e6fe,0x1e6ff,0x1e7e0,0x1e7e6,0x1e7e8,0x1e7eb,0x1e7ed,0x1e7ee,0x1e7f0,0x1e7fe,0x1e800,0x1e8c4,0x1e900,0x1e943,0x1e94b,0x1e94b,0x1ee00,0x1ee03,0x1ee05,0x1ee1f,0x1ee21,0x1ee22,0x1ee24,0x1ee24,0x1ee27,0x1ee27,0x1ee29,0x1ee32,0x1ee34,0x1ee37,0x1ee39,0x1ee39,0x1ee3b,0x1ee3b,0x1ee42,0x1ee42,0x1ee47,0x1ee47,0x1ee49,0x1ee49,0x1ee4b,0x1ee4b,0x1ee4d,0x1ee4f,0x1ee51,0x1ee52,0x1ee54,0x1ee54,0x1ee57,0x1ee57,0x1ee59,0x1ee59,0x1ee5b,0x1ee5b,0x1ee5d,0x1ee5d,0x1ee5f,0x1ee5f,0x1ee61,0x1ee62,0x1ee64,0x1ee64,0x1ee67,0x1ee6a,0x1ee6c,0x1ee72,0x1ee74,0x1ee77,0x1ee79,0x1ee7c,0x1ee7e,0x1ee7e,0x1ee80,0x1ee89,0x1ee8b,0x1ee9b,0x1eea1,0x1eea3,0x1eea5,0x1eea9,0x1eeab,0x1eebb,0x20000,0x2a6df,0x2a700,0x2b81d,0x2b820,0x2cead,0x2ceb0,0x2ebe0,0x2ebf0,0x2ee5d,0x2f800,0x2fa1d,0x30000,0x3134a,0x31350,0x33479,};

static uint32_t encode_utf16(const uint32_t* ranges, uint32_t ranges_count, uint16_t* s) {
	uint16_t* const s0 = s;
	for (uint32_t i = 0; i < ranges_count; i += 2)
		for (uint32_t j = ranges[i]; j <= ranges[i + 1]; ++j)
			if (j <= re2c::utf16::MAX_1WORD_RUNE) {
				*s++ = j;
			} else {
				*s++ = re2c::utf16::lead_surr(j);
				*s++ = re2c::utf16::trail_surr(j);
			}
	for (uint32_t i = 0; i < 2; ++i) s[i] = 0;
	return s - s0;
}

int main() {
	YYCTYPE* buffer_L = new YYCTYPE[291346];
	uint32_t buffer_L_len = encode_utf16(chars_L, sizeof(chars_L) / sizeof(uint32_t), buffer_L);
	if (!scan(buffer_L, buffer_L + buffer_L_len)) printf("test 'L' failed\n");
	delete[] buffer_L;
	return 0;
}
