@@ -2916,6 +2916,7 @@ public static long findnotcclass(long cclass, String target, long offset, long c
2916
2916
}
2917
2917
2918
2918
private static HashMap <String ,String > canonNames = new HashMap <String , String >();
2919
+ private static HashMap <String ,int []> derivedProps = new HashMap <String , int []>();
2919
2920
static {
2920
2921
canonNames .put ("inlatin1supplement" , "InLatin-1Supplement" );
2921
2922
canonNames .put ("inlatinextendeda" , "InLatinExtended-A" );
@@ -2988,9 +2989,51 @@ public static long findnotcclass(long cclass, String target, long offset, long c
2988
2989
canonNames .put ("privateuse" , "Co" );
2989
2990
canonNames .put ("unassigned" , "Cn" );
2990
2991
canonNames .put ("other" , "C" );
2992
+ derivedProps .put ("WhiteSpace" , new int [] { 9 ,13 ,32 ,32 ,133 ,133 ,160 ,160 ,5760 ,5760 ,6158 ,6158 ,8192 ,8202 ,8232 ,8232 ,8233 ,8233 ,8239 ,8239 ,8287 ,8287 ,12288 ,12288 });
2993
+ derivedProps .put ("BidiControl" , new int [] { 8206 ,8207 ,8234 ,8238 });
2994
+ derivedProps .put ("JoinControl" , new int [] { 8204 ,8205 });
2995
+ derivedProps .put ("Dash" , new int [] { 45 ,45 ,1418 ,1418 ,1470 ,1470 ,5120 ,5120 ,6150 ,6150 ,8208 ,8213 ,8275 ,8275 ,8315 ,8315 ,8331 ,8331 ,8722 ,8722 ,11799 ,11799 ,11802 ,11802 ,11834 ,11835 ,12316 ,12316 ,12336 ,12336 ,12448 ,12448 ,65073 ,65074 ,65112 ,65112 ,65123 ,65123 ,65293 ,65293 });
2996
+ derivedProps .put ("Hyphen" , new int [] { 45 ,45 ,173 ,173 ,1418 ,1418 ,6150 ,6150 ,8208 ,8209 ,11799 ,11799 ,12539 ,12539 ,65123 ,65123 ,65293 ,65293 ,65381 ,65381 });
2997
+ derivedProps .put ("QuotationMark" , new int [] { 34 ,34 ,39 ,39 ,171 ,171 ,187 ,187 ,8216 ,8216 ,8217 ,8217 ,8218 ,8218 ,8219 ,8220 ,8221 ,8221 ,8222 ,8222 ,8223 ,8223 ,8249 ,8249 ,8250 ,8250 ,12300 ,12300 ,12301 ,12301 ,12302 ,12302 ,12303 ,12303 ,12317 ,12317 ,12318 ,12319 ,65089 ,65089 ,65090 ,65090 ,65091 ,65091 ,65092 ,65092 ,65282 ,65282 ,65287 ,65287 ,65378 ,65378 ,65379 ,65379 });
2998
+ derivedProps .put ("TerminalPunctuation" , new int [] { 33 ,33 ,44 ,44 ,46 ,46 ,58 ,59 ,63 ,63 ,894 ,894 ,903 ,903 ,1417 ,1417 ,1475 ,1475 ,1548 ,1548 ,1563 ,1563 ,1567 ,1567 ,1748 ,1748 ,1792 ,1802 ,1804 ,1804 ,2040 ,2041 ,2096 ,2110 ,2142 ,2142 ,2404 ,2405 ,3674 ,3675 ,3848 ,3848 ,3853 ,3858 ,4170 ,4171 ,4961 ,4968 ,5741 ,5742 ,5867 ,5869 ,6100 ,6102 ,6106 ,6106 ,6146 ,6149 ,6152 ,6153 ,6468 ,6469 ,6824 ,6827 ,7002 ,7003 ,7005 ,7007 ,7227 ,7231 ,7294 ,7295 ,8252 ,8253 ,8263 ,8265 ,11822 ,11822 ,12289 ,12290 ,42238 ,42239 ,42509 ,42511 ,42739 ,42743 ,43126 ,43127 ,43214 ,43215 ,43311 ,43311 ,43463 ,43465 ,43613 ,43615 ,43743 ,43743 ,43760 ,43761 ,44011 ,44011 ,65104 ,65106 ,65108 ,65111 ,65281 ,65281 ,65292 ,65292 ,65294 ,65294 ,65306 ,65307 ,65311 ,65311 ,65377 ,65377 ,65380 ,65380 ,66463 ,66463 ,66512 ,66512 ,67671 ,67671 ,67871 ,67871 ,68410 ,68415 ,69703 ,69709 ,69822 ,69825 ,69953 ,69955 ,70085 ,70086 ,74864 ,74867 });
2999
+ derivedProps .put ("OtherMath" , new int [] { 94 ,94 ,976 ,978 ,981 ,981 ,1008 ,1009 ,1012 ,1013 ,8214 ,8214 ,8242 ,8244 ,8256 ,8256 ,8289 ,8292 ,8317 ,8317 ,8318 ,8318 ,8333 ,8333 ,8334 ,8334 ,8400 ,8412 ,8417 ,8417 ,8421 ,8422 ,8427 ,8431 ,8450 ,8450 ,8455 ,8455 ,8458 ,8467 ,8469 ,8469 ,8473 ,8477 ,8484 ,8484 ,8488 ,8488 ,8489 ,8489 ,8492 ,8493 ,8495 ,8497 ,8499 ,8500 ,8501 ,8504 ,8508 ,8511 ,8517 ,8521 ,8597 ,8601 ,8604 ,8607 ,8609 ,8610 ,8612 ,8613 ,8615 ,8615 ,8617 ,8621 ,8624 ,8625 ,8630 ,8631 ,8636 ,8653 ,8656 ,8657 ,8659 ,8659 ,8661 ,8667 ,8669 ,8669 ,8676 ,8677 ,9140 ,9141 ,9143 ,9143 ,9168 ,9168 ,9186 ,9186 ,9632 ,9633 ,9646 ,9654 ,9660 ,9664 ,9670 ,9671 ,9674 ,9675 ,9679 ,9683 ,9698 ,9698 ,9700 ,9700 ,9703 ,9708 ,9733 ,9734 ,9792 ,9792 ,9794 ,9794 ,9824 ,9827 ,9837 ,9838 ,10181 ,10181 ,10182 ,10182 ,10214 ,10214 ,10215 ,10215 ,10216 ,10216 ,10217 ,10217 ,10218 ,10218 ,10219 ,10219 ,10220 ,10220 ,10221 ,10221 ,10222 ,10222 ,10223 ,10223 ,10627 ,10627 ,10628 ,10628 ,10629 ,10629 ,10630 ,10630 ,10631 ,10631 ,10632 ,10632 ,10633 ,10633 ,10634 ,10634 ,10635 ,10635 ,10636 ,10636 ,10637 ,10637 ,10638 ,10638 ,10639 ,10639 ,10640 ,10640 ,10641 ,10641 ,10642 ,10642 ,10643 ,10643 ,10644 ,10644 ,10645 ,10645 ,10646 ,10646 ,10647 ,10647 ,10648 ,10648 ,10712 ,10712 ,10713 ,10713 ,10714 ,10714 ,10715 ,10715 ,10748 ,10748 ,10749 ,10749 ,65121 ,65121 ,65123 ,65123 ,65128 ,65128 ,65340 ,65340 ,65342 ,65342 ,119808 ,119892 ,119894 ,119964 ,119966 ,119967 ,119970 ,119970 ,119973 ,119974 ,119977 ,119980 ,119982 ,119993 ,119995 ,119995 ,119997 ,120003 ,120005 ,120069 ,120071 ,120074 ,120077 ,120084 ,120086 ,120092 ,120094 ,120121 ,120123 ,120126 ,120128 ,120132 ,120134 ,120134 ,120138 ,120144 ,120146 ,120485 ,120488 ,120512 ,120514 ,120538 ,120540 ,120570 ,120572 ,120596 ,120598 ,120628 ,120630 ,120654 ,120656 ,120686 ,120688 ,120712 ,120714 ,120744 ,120746 ,120770 ,120772 ,120779 ,120782 ,120831 ,126464 ,126467 ,126469 ,126495 ,126497 ,126498 ,126500 ,126500 ,126503 ,126503 ,126505 ,126514 ,126516 ,126519 ,126521 ,126521 ,126523 ,126523 ,126530 ,126530 ,126535 ,126535 ,126537 ,126537 ,126539 ,126539 ,126541 ,126543 ,126545 ,126546 ,126548 ,126548 ,126551 ,126551 ,126553 ,126553 ,126555 ,126555 ,126557 ,126557 ,126559 ,126559 ,126561 ,126562 ,126564 ,126564 ,126567 ,126570 ,126572 ,126578 ,126580 ,126583 ,126585 ,126588 ,126590 ,126590 ,126592 ,126601 ,126603 ,126619 ,126625 ,126627 ,126629 ,126633 ,126635 ,126651 });
3000
+ derivedProps .put ("HexDigit" , new int [] { 48 ,57 ,65 ,70 ,97 ,102 ,65296 ,65305 ,65313 ,65318 ,65345 ,65350 });
3001
+ derivedProps .put ("ASCIIHexDigit" , new int [] { 48 ,57 ,65 ,70 ,97 ,102 });
3002
+ derivedProps .put ("OtherAlphabetic" , new int [] { 837 ,837 ,1456 ,1469 ,1471 ,1471 ,1473 ,1474 ,1476 ,1477 ,1479 ,1479 ,1552 ,1562 ,1611 ,1623 ,1625 ,1631 ,1648 ,1648 ,1750 ,1756 ,1761 ,1764 ,1767 ,1768 ,1773 ,1773 ,1809 ,1809 ,1840 ,1855 ,1958 ,1968 ,2070 ,2071 ,2075 ,2083 ,2085 ,2087 ,2089 ,2092 ,2276 ,2281 ,2288 ,2302 ,2304 ,2306 ,2307 ,2307 ,2362 ,2362 ,2363 ,2363 ,2366 ,2368 ,2369 ,2376 ,2377 ,2380 ,2382 ,2383 ,2389 ,2391 ,2402 ,2403 ,2433 ,2433 ,2434 ,2435 ,2494 ,2496 ,2497 ,2500 ,2503 ,2504 ,2507 ,2508 ,2519 ,2519 ,2530 ,2531 ,2561 ,2562 ,2563 ,2563 ,2622 ,2624 ,2625 ,2626 ,2631 ,2632 ,2635 ,2636 ,2641 ,2641 ,2672 ,2673 ,2677 ,2677 ,2689 ,2690 ,2691 ,2691 ,2750 ,2752 ,2753 ,2757 ,2759 ,2760 ,2761 ,2761 ,2763 ,2764 ,2786 ,2787 ,2817 ,2817 ,2818 ,2819 ,2878 ,2878 ,2879 ,2879 ,2880 ,2880 ,2881 ,2884 ,2887 ,2888 ,2891 ,2892 ,2902 ,2902 ,2903 ,2903 ,2914 ,2915 ,2946 ,2946 ,3006 ,3007 ,3008 ,3008 ,3009 ,3010 ,3014 ,3016 ,3018 ,3020 ,3031 ,3031 ,3073 ,3075 ,3134 ,3136 ,3137 ,3140 ,3142 ,3144 ,3146 ,3148 ,3157 ,3158 ,3170 ,3171 ,3202 ,3203 ,3262 ,3262 ,3263 ,3263 ,3264 ,3268 ,3270 ,3270 ,3271 ,3272 ,3274 ,3275 ,3276 ,3276 ,3285 ,3286 ,3298 ,3299 ,3330 ,3331 ,3390 ,3392 ,3393 ,3396 ,3398 ,3400 ,3402 ,3404 ,3415 ,3415 ,3426 ,3427 ,3458 ,3459 ,3535 ,3537 ,3538 ,3540 ,3542 ,3542 ,3544 ,3551 ,3570 ,3571 ,3633 ,3633 ,3636 ,3642 ,3661 ,3661 ,3761 ,3761 ,3764 ,3769 ,3771 ,3772 ,3789 ,3789 ,3953 ,3966 ,3967 ,3967 ,3968 ,3969 ,3981 ,3991 ,3993 ,4028 ,4139 ,4140 ,4141 ,4144 ,4145 ,4145 ,4146 ,4150 ,4152 ,4152 ,4155 ,4156 ,4157 ,4158 ,4182 ,4183 ,4184 ,4185 ,4190 ,4192 ,4194 ,4194 ,4199 ,4200 ,4209 ,4212 ,4226 ,4226 ,4227 ,4228 ,4229 ,4230 ,4252 ,4252 ,4253 ,4253 ,4959 ,4959 ,5906 ,5907 ,5938 ,5939 ,5970 ,5971 ,6002 ,6003 ,6070 ,6070 ,6071 ,6077 ,6078 ,6085 ,6086 ,6086 ,6087 ,6088 ,6313 ,6313 ,6432 ,6434 ,6435 ,6438 ,6439 ,6440 ,6441 ,6443 ,6448 ,6449 ,6450 ,6450 ,6451 ,6456 ,6576 ,6592 ,6600 ,6601 ,6679 ,6680 ,6681 ,6683 ,6741 ,6741 ,6742 ,6742 ,6743 ,6743 ,6744 ,6750 ,6753 ,6753 ,6754 ,6754 ,6755 ,6756 ,6757 ,6764 ,6765 ,6770 ,6771 ,6772 ,6912 ,6915 ,6916 ,6916 ,6965 ,6965 ,6966 ,6970 ,6971 ,6971 ,6972 ,6972 ,6973 ,6977 ,6978 ,6978 ,6979 ,6979 ,7040 ,7041 ,7042 ,7042 ,7073 ,7073 ,7074 ,7077 ,7078 ,7079 ,7080 ,7081 ,7084 ,7085 ,7143 ,7143 ,7144 ,7145 ,7146 ,7148 ,7149 ,7149 ,7150 ,7150 ,7151 ,7153 ,7204 ,7211 ,7212 ,7219 ,7220 ,7221 ,7410 ,7411 ,9398 ,9449 ,11744 ,11775 ,42612 ,42619 ,42655 ,42655 ,43043 ,43044 ,43045 ,43046 ,43047 ,43047 ,43136 ,43137 ,43188 ,43203 ,43302 ,43306 ,43335 ,43345 ,43346 ,43346 ,43392 ,43394 ,43395 ,43395 ,43444 ,43445 ,43446 ,43449 ,43450 ,43451 ,43452 ,43452 ,43453 ,43455 ,43561 ,43566 ,43567 ,43568 ,43569 ,43570 ,43571 ,43572 ,43573 ,43574 ,43587 ,43587 ,43596 ,43596 ,43597 ,43597 ,43696 ,43696 ,43698 ,43700 ,43703 ,43704 ,43710 ,43710 ,43755 ,43755 ,43756 ,43757 ,43758 ,43759 ,43765 ,43765 ,44003 ,44004 ,44005 ,44005 ,44006 ,44007 ,44008 ,44008 ,44009 ,44010 ,64286 ,64286 ,68097 ,68099 ,68101 ,68102 ,68108 ,68111 ,69632 ,69632 ,69633 ,69633 ,69634 ,69634 ,69688 ,69701 ,69762 ,69762 ,69808 ,69810 ,69811 ,69814 ,69815 ,69816 ,69888 ,69890 ,69927 ,69931 ,69932 ,69932 ,69933 ,69938 ,70016 ,70017 ,70018 ,70018 ,70067 ,70069 ,70070 ,70078 ,70079 ,70079 ,71339 ,71339 ,71340 ,71340 ,71341 ,71341 ,71342 ,71343 ,71344 ,71349 ,94033 ,94078 });
3003
+ derivedProps .put ("Ideographic" , new int [] { 12294 ,12294 ,12295 ,12295 ,12321 ,12329 ,12344 ,12346 ,13312 ,19893 ,19968 ,40908 ,63744 ,64109 ,64112 ,64217 ,131072 ,173782 ,173824 ,177972 ,177984 ,178205 ,194560 ,195101 });
3004
+ derivedProps .put ("Diacritic" , new int [] { 94 ,94 ,96 ,96 ,168 ,168 ,175 ,175 ,180 ,180 ,183 ,183 ,184 ,184 ,688 ,705 ,706 ,709 ,710 ,721 ,722 ,735 ,736 ,740 ,741 ,747 ,748 ,748 ,749 ,749 ,750 ,750 ,751 ,767 ,768 ,846 ,848 ,855 ,861 ,866 ,884 ,884 ,885 ,885 ,890 ,890 ,900 ,901 ,1155 ,1159 ,1369 ,1369 ,1425 ,1441 ,1443 ,1469 ,1471 ,1471 ,1473 ,1474 ,1476 ,1476 ,1611 ,1618 ,1623 ,1624 ,1759 ,1760 ,1765 ,1766 ,1770 ,1772 ,1840 ,1866 ,1958 ,1968 ,2027 ,2035 ,2036 ,2037 ,2072 ,2073 ,2276 ,2302 ,2364 ,2364 ,2381 ,2381 ,2385 ,2388 ,2417 ,2417 ,2492 ,2492 ,2509 ,2509 ,2620 ,2620 ,2637 ,2637 ,2748 ,2748 ,2765 ,2765 ,2876 ,2876 ,2893 ,2893 ,3021 ,3021 ,3149 ,3149 ,3260 ,3260 ,3277 ,3277 ,3405 ,3405 ,3530 ,3530 ,3655 ,3660 ,3662 ,3662 ,3784 ,3788 ,3864 ,3865 ,3893 ,3893 ,3895 ,3895 ,3897 ,3897 ,3902 ,3903 ,3970 ,3972 ,3974 ,3975 ,4038 ,4038 ,4151 ,4151 ,4153 ,4154 ,4231 ,4236 ,4237 ,4237 ,4239 ,4239 ,4250 ,4251 ,6089 ,6099 ,6109 ,6109 ,6457 ,6459 ,6773 ,6780 ,6783 ,6783 ,6964 ,6964 ,6980 ,6980 ,7019 ,7027 ,7082 ,7082 ,7083 ,7083 ,7222 ,7223 ,7288 ,7293 ,7376 ,7378 ,7379 ,7379 ,7380 ,7392 ,7393 ,7393 ,7394 ,7400 ,7405 ,7405 ,7412 ,7412 ,7468 ,7530 ,7620 ,7631 ,7677 ,7679 ,8125 ,8125 ,8127 ,8129 ,8141 ,8143 ,8157 ,8159 ,8173 ,8175 ,8189 ,8190 ,11503 ,11505 ,11823 ,11823 ,12330 ,12333 ,12334 ,12335 ,12441 ,12442 ,12443 ,12444 ,12540 ,12540 ,42607 ,42607 ,42620 ,42621 ,42623 ,42623 ,42736 ,42737 ,42775 ,42783 ,42784 ,42785 ,42888 ,42888 ,43000 ,43001 ,43204 ,43204 ,43232 ,43249 ,43307 ,43309 ,43310 ,43310 ,43347 ,43347 ,43443 ,43443 ,43456 ,43456 ,43643 ,43643 ,43711 ,43711 ,43712 ,43712 ,43713 ,43713 ,43714 ,43714 ,43766 ,43766 ,44012 ,44012 ,44013 ,44013 ,64286 ,64286 ,65056 ,65062 ,65342 ,65342 ,65344 ,65344 ,65392 ,65392 ,65438 ,65439 ,65507 ,65507 ,69817 ,69818 ,69939 ,69940 ,70080 ,70080 ,71350 ,71350 ,71351 ,71351 ,94095 ,94098 ,94099 ,94111 ,119143 ,119145 ,119149 ,119154 ,119163 ,119170 ,119173 ,119179 ,119210 ,119213 });
3005
+ derivedProps .put ("Extender" , new int [] { 183 ,183 ,720 ,721 ,1600 ,1600 ,2042 ,2042 ,3654 ,3654 ,3782 ,3782 ,6154 ,6154 ,6211 ,6211 ,6823 ,6823 ,7222 ,7222 ,7291 ,7291 ,12293 ,12293 ,12337 ,12341 ,12445 ,12446 ,12540 ,12542 ,40981 ,40981 ,42508 ,42508 ,43471 ,43471 ,43632 ,43632 ,43741 ,43741 ,43763 ,43764 ,65392 ,65392 });
3006
+ derivedProps .put ("OtherLowercase" , new int [] { 170 ,170 ,186 ,186 ,688 ,696 ,704 ,705 ,736 ,740 ,837 ,837 ,890 ,890 ,7468 ,7530 ,7544 ,7544 ,7579 ,7615 ,8305 ,8305 ,8319 ,8319 ,8336 ,8348 ,8560 ,8575 ,9424 ,9449 ,11388 ,11389 ,42864 ,42864 ,43000 ,43001 });
3007
+ derivedProps .put ("OtherUppercase" , new int [] { 8544 ,8559 ,9398 ,9423 });
3008
+ derivedProps .put ("NoncharacterCodePoint" , new int [] { 64976 ,65007 ,65534 ,65535 ,131070 ,131071 ,196606 ,196607 ,262142 ,262143 ,327678 ,327679 ,393214 ,393215 ,458750 ,458751 ,524286 ,524287 ,589822 ,589823 ,655358 ,655359 ,720894 ,720895 ,786430 ,786431 ,851966 ,851967 ,917502 ,917503 ,983038 ,983039 ,1048574 ,1048575 ,1114110 ,1114111 });
3009
+ derivedProps .put ("OtherGraphemeExtend" , new int [] { 2494 ,2494 ,2519 ,2519 ,2878 ,2878 ,2903 ,2903 ,3006 ,3006 ,3031 ,3031 ,3266 ,3266 ,3285 ,3286 ,3390 ,3390 ,3415 ,3415 ,3535 ,3535 ,3551 ,3551 ,8204 ,8205 ,12334 ,12335 ,65438 ,65439 ,119141 ,119141 ,119150 ,119154 });
3010
+ derivedProps .put ("IDSBinaryOperator" , new int [] { 12272 ,12273 ,12276 ,12283 });
3011
+ derivedProps .put ("IDSTrinaryOperator" , new int [] { 12274 ,12275 });
3012
+ derivedProps .put ("Radical" , new int [] { 11904 ,11929 ,11931 ,12019 ,12032 ,12245 });
3013
+ derivedProps .put ("UnifiedIdeograph" , new int [] { 13312 ,19893 ,19968 ,40908 ,64014 ,64015 ,64017 ,64017 ,64019 ,64020 ,64031 ,64031 ,64033 ,64033 ,64035 ,64036 ,64039 ,64041 ,131072 ,173782 ,173824 ,177972 ,177984 ,178205 });
3014
+ derivedProps .put ("OtherDefaultIgnorableCodePoint" , new int [] { 847 ,847 ,4447 ,4448 ,6068 ,6069 ,8293 ,8297 ,12644 ,12644 ,65440 ,65440 ,65520 ,65528 ,917504 ,917504 ,917506 ,917535 ,917632 ,917759 ,918000 ,921599 });
3015
+ derivedProps .put ("Deprecated" , new int [] { 329 ,329 ,1651 ,1651 ,3959 ,3959 ,3961 ,3961 ,6051 ,6052 ,8298 ,8303 ,9001 ,9001 ,9002 ,9002 ,917505 ,917505 ,917536 ,917631 });
3016
+ derivedProps .put ("SoftDotted" , new int [] { 105 ,106 ,303 ,303 ,585 ,585 ,616 ,616 ,669 ,669 ,690 ,690 ,1011 ,1011 ,1110 ,1110 ,1112 ,1112 ,7522 ,7522 ,7574 ,7574 ,7588 ,7588 ,7592 ,7592 ,7725 ,7725 ,7883 ,7883 ,8305 ,8305 ,8520 ,8521 ,11388 ,11388 ,119842 ,119843 ,119894 ,119895 ,119946 ,119947 ,119998 ,119999 ,120050 ,120051 ,120102 ,120103 ,120154 ,120155 ,120206 ,120207 ,120258 ,120259 ,120310 ,120311 ,120362 ,120363 ,120414 ,120415 ,120466 ,120467 });
3017
+ derivedProps .put ("LogicalOrderException" , new int [] { 3648 ,3652 ,3776 ,3780 ,43701 ,43702 ,43705 ,43705 ,43707 ,43708 });
3018
+ derivedProps .put ("OtherIDStart" , new int [] { 8472 ,8472 ,8494 ,8494 ,12443 ,12444 });
3019
+ derivedProps .put ("OtherIDContinue" , new int [] { 183 ,183 ,903 ,903 ,4969 ,4977 ,6618 ,6618 });
3020
+ derivedProps .put ("STerm" , new int [] { 33 ,33 ,46 ,46 ,63 ,63 ,1372 ,1372 ,1374 ,1374 ,1417 ,1417 ,1567 ,1567 ,1748 ,1748 ,1792 ,1794 ,2041 ,2041 ,2404 ,2405 ,4170 ,4171 ,4962 ,4962 ,4967 ,4968 ,5742 ,5742 ,5941 ,5942 ,6147 ,6147 ,6153 ,6153 ,6468 ,6469 ,6824 ,6827 ,7002 ,7003 ,7006 ,7007 ,7227 ,7228 ,7294 ,7295 ,8252 ,8253 ,8263 ,8265 ,11822 ,11822 ,12290 ,12290 ,42239 ,42239 ,42510 ,42511 ,42739 ,42739 ,42743 ,42743 ,43126 ,43127 ,43214 ,43215 ,43311 ,43311 ,43464 ,43465 ,43613 ,43615 ,43760 ,43761 ,44011 ,44011 ,65106 ,65106 ,65110 ,65111 ,65281 ,65281 ,65294 ,65294 ,65311 ,65311 ,65377 ,65377 ,68182 ,68183 ,69703 ,69704 ,69822 ,69825 ,69953 ,69955 ,70085 ,70086 });
3021
+ derivedProps .put ("VariationSelector" , new int [] { 6155 ,6157 ,65024 ,65039 ,917760 ,917999 });
3022
+ derivedProps .put ("PatternWhiteSpace" , new int [] { 9 ,13 ,32 ,32 ,133 ,133 ,8206 ,8207 ,8232 ,8232 ,8233 ,8233 });
3023
+ derivedProps .put ("PatternSyntax" , new int [] { 33 ,35 ,36 ,36 ,37 ,39 ,40 ,40 ,41 ,41 ,42 ,42 ,43 ,43 ,44 ,44 ,45 ,45 ,46 ,47 ,58 ,59 ,60 ,62 ,63 ,64 ,91 ,91 ,92 ,92 ,93 ,93 ,94 ,94 ,96 ,96 ,123 ,123 ,124 ,124 ,125 ,125 ,126 ,126 ,161 ,161 ,162 ,165 ,166 ,166 ,167 ,167 ,169 ,169 ,171 ,171 ,172 ,172 ,174 ,174 ,176 ,176 ,177 ,177 ,182 ,182 ,187 ,187 ,191 ,191 ,215 ,215 ,247 ,247 ,8208 ,8213 ,8214 ,8215 ,8216 ,8216 ,8217 ,8217 ,8218 ,8218 ,8219 ,8220 ,8221 ,8221 ,8222 ,8222 ,8223 ,8223 ,8224 ,8231 ,8240 ,8248 ,8249 ,8249 ,8250 ,8250 ,8251 ,8254 ,8257 ,8259 ,8260 ,8260 ,8261 ,8261 ,8262 ,8262 ,8263 ,8273 ,8274 ,8274 ,8275 ,8275 ,8277 ,8286 ,8592 ,8596 ,8597 ,8601 ,8602 ,8603 ,8604 ,8607 ,8608 ,8608 ,8609 ,8610 ,8611 ,8611 ,8612 ,8613 ,8614 ,8614 ,8615 ,8621 ,8622 ,8622 ,8623 ,8653 ,8654 ,8655 ,8656 ,8657 ,8658 ,8658 ,8659 ,8659 ,8660 ,8660 ,8661 ,8691 ,8692 ,8959 ,8960 ,8967 ,8968 ,8971 ,8972 ,8991 ,8992 ,8993 ,8994 ,9000 ,9001 ,9001 ,9002 ,9002 ,9003 ,9083 ,9084 ,9084 ,9085 ,9114 ,9115 ,9139 ,9140 ,9179 ,9180 ,9185 ,9186 ,9203 ,9204 ,9215 ,9216 ,9254 ,9255 ,9279 ,9280 ,9290 ,9291 ,9311 ,9472 ,9654 ,9655 ,9655 ,9656 ,9664 ,9665 ,9665 ,9666 ,9719 ,9720 ,9727 ,9728 ,9838 ,9839 ,9839 ,9840 ,9983 ,9984 ,9984 ,9985 ,10087 ,10088 ,10088 ,10089 ,10089 ,10090 ,10090 ,10091 ,10091 ,10092 ,10092 ,10093 ,10093 ,10094 ,10094 ,10095 ,10095 ,10096 ,10096 ,10097 ,10097 ,10098 ,10098 ,10099 ,10099 ,10100 ,10100 ,10101 ,10101 ,10132 ,10175 ,10176 ,10180 ,10181 ,10181 ,10182 ,10182 ,10183 ,10213 ,10214 ,10214 ,10215 ,10215 ,10216 ,10216 ,10217 ,10217 ,10218 ,10218 ,10219 ,10219 ,10220 ,10220 ,10221 ,10221 ,10222 ,10222 ,10223 ,10223 ,10224 ,10239 ,10240 ,10495 ,10496 ,10626 ,10627 ,10627 ,10628 ,10628 ,10629 ,10629 ,10630 ,10630 ,10631 ,10631 ,10632 ,10632 ,10633 ,10633 ,10634 ,10634 ,10635 ,10635 ,10636 ,10636 ,10637 ,10637 ,10638 ,10638 ,10639 ,10639 ,10640 ,10640 ,10641 ,10641 ,10642 ,10642 ,10643 ,10643 ,10644 ,10644 ,10645 ,10645 ,10646 ,10646 ,10647 ,10647 ,10648 ,10648 ,10649 ,10711 ,10712 ,10712 ,10713 ,10713 ,10714 ,10714 ,10715 ,10715 ,10716 ,10747 ,10748 ,10748 ,10749 ,10749 ,10750 ,11007 ,11008 ,11055 ,11056 ,11076 ,11077 ,11078 ,11079 ,11084 ,11085 ,11087 ,11088 ,11097 ,11098 ,11263 ,11776 ,11777 ,11778 ,11778 ,11779 ,11779 ,11780 ,11780 ,11781 ,11781 ,11782 ,11784 ,11785 ,11785 ,11786 ,11786 ,11787 ,11787 ,11788 ,11788 ,11789 ,11789 ,11790 ,11798 ,11799 ,11799 ,11800 ,11801 ,11802 ,11802 ,11803 ,11803 ,11804 ,11804 ,11805 ,11805 ,11806 ,11807 ,11808 ,11808 ,11809 ,11809 ,11810 ,11810 ,11811 ,11811 ,11812 ,11812 ,11813 ,11813 ,11814 ,11814 ,11815 ,11815 ,11816 ,11816 ,11817 ,11817 ,11818 ,11822 ,11823 ,11823 ,11824 ,11833 ,11834 ,11835 ,11836 ,11903 ,12289 ,12291 ,12296 ,12296 ,12297 ,12297 ,12298 ,12298 ,12299 ,12299 ,12300 ,12300 ,12301 ,12301 ,12302 ,12302 ,12303 ,12303 ,12304 ,12304 ,12305 ,12305 ,12306 ,12307 ,12308 ,12308 ,12309 ,12309 ,12310 ,12310 ,12311 ,12311 ,12312 ,12312 ,12313 ,12313 ,12314 ,12314 ,12315 ,12315 ,12316 ,12316 ,12317 ,12317 ,12318 ,12319 ,12320 ,12320 ,12336 ,12336 ,64830 ,64830 ,64831 ,64831 ,65093 ,65094 });
2991
3024
}
2992
3025
public static long ischarprop (String propName , String target , long offset ) {
2993
3026
String check = target .substring ((int )offset , Math .min ((int )offset + 2 , target .length ()));
3027
+ int [] derived = derivedProps .get (propName );
3028
+ if (derived != null ) {
3029
+ /* It's one of the derived properties; see of the codepoint is
3030
+ * in it. */
3031
+ int cp = check .codePointAt (0 );
3032
+ for (int i = 0 ; i < derived .length ; i += 2 )
3033
+ if (cp >= derived [i ] && cp <= derived [i + 1 ])
3034
+ return 1 ;
3035
+ return 0 ;
3036
+ }
2994
3037
try {
2995
3038
// This throws if we can't get the script name, meaning it's
2996
3039
// not a script.
0 commit comments