forgex_unicode_gc_m Module



Variables

Type Visibility Attributes Name Initial
type(segment_t), public, parameter :: unicode_gc_Cc(*) = [segment_t(0, 31), segment_t(127, 159)]
type(segment_t), public, parameter :: unicode_gc_Cf(*) = [segment_t(173, 173), segment_t(1536, 1541), segment_t(1564, 1564), segment_t(1757, 1757), segment_t(1807, 1807), segment_t(2192, 2193), segment_t(2274, 2274), segment_t(6158, 6158), segment_t(8203, 8207), segment_t(8234, 8238), segment_t(8288, 8292), segment_t(8294, 8303), segment_t(65279, 65279), segment_t(65529, 65531), segment_t(69821, 69821), segment_t(69837, 69837), segment_t(78896, 78911), segment_t(113824, 113827), segment_t(119155, 119162), segment_t(917505, 917505), segment_t(917536, 917631)]
type(segment_t), public, parameter :: unicode_gc_Cn(*) = [segment_t(888, 889), segment_t(896, 899), segment_t(907, 907), segment_t(909, 909), segment_t(930, 930), segment_t(1328, 1328), segment_t(1367, 1368), segment_t(1419, 1420), segment_t(1424, 1424), segment_t(1480, 1487), segment_t(1515, 1518), segment_t(1525, 1535), segment_t(1806, 1806), segment_t(1867, 1868), segment_t(1970, 1983), segment_t(2043, 2044), segment_t(2094, 2095), segment_t(2111, 2111), segment_t(2140, 2141), segment_t(2143, 2143), segment_t(2155, 2159), segment_t(2194, 2198), segment_t(2436, 2436), segment_t(2445, 2446), segment_t(2449, 2450), segment_t(2473, 2473), segment_t(2481, 2481), segment_t(2483, 2485), segment_t(2490, 2491), segment_t(2501, 2502), segment_t(2505, 2506), segment_t(2511, 2518), segment_t(2520, 2523), segment_t(2526, 2526), segment_t(2532, 2533), segment_t(2559, 2560), segment_t(2564, 2564), segment_t(2571, 2574), segment_t(2577, 2578), segment_t(2601, 2601), segment_t(2609, 2609), segment_t(2612, 2612), segment_t(2615, 2615), segment_t(2618, 2619), segment_t(2621, 2621), segment_t(2627, 2630), segment_t(2633, 2634), segment_t(2638, 2640), segment_t(2642, 2648), segment_t(2653, 2653), segment_t(2655, 2661), segment_t(2679, 2688), segment_t(2692, 2692), segment_t(2702, 2702), segment_t(2706, 2706), segment_t(2729, 2729), segment_t(2737, 2737), segment_t(2740, 2740), segment_t(2746, 2747), segment_t(2758, 2758), segment_t(2762, 2762), segment_t(2766, 2767), segment_t(2769, 2783), segment_t(2788, 2789), segment_t(2802, 2808), segment_t(2816, 2816), segment_t(2820, 2820), segment_t(2829, 2830), segment_t(2833, 2834), segment_t(2857, 2857), segment_t(2865, 2865), segment_t(2868, 2868), segment_t(2874, 2875), segment_t(2885, 2886), segment_t(2889, 2890), segment_t(2894, 2900), segment_t(2904, 2907), segment_t(2910, 2910), segment_t(2916, 2917), segment_t(2936, 2945), segment_t(2948, 2948), segment_t(2955, 2957), segment_t(2961, 2961), segment_t(2966, 2968), segment_t(2971, 2971), segment_t(2973, 2973), segment_t(2976, 2978), segment_t(2981, 2983), segment_t(2987, 2989), segment_t(3002, 3005), segment_t(3011, 3013), segment_t(3017, 3017), segment_t(3022, 3023), segment_t(3025, 3030), segment_t(3032, 3045), segment_t(3067, 3071), segment_t(3085, 3085), segment_t(3089, 3089), segment_t(3113, 3113), segment_t(3130, 3131), segment_t(3141, 3141), segment_t(3145, 3145), segment_t(3150, 3156), segment_t(3159, 3159), segment_t(3163, 3163), segment_t(3166, 3167), segment_t(3172, 3173), segment_t(3184, 3190), segment_t(3213, 3213), segment_t(3217, 3217), segment_t(3241, 3241), segment_t(3252, 3252), segment_t(3258, 3259), segment_t(3269, 3269), segment_t(3273, 3273), segment_t(3278, 3284), segment_t(3287, 3291), segment_t(3295, 3295), segment_t(3300, 3301), segment_t(3312, 3312), segment_t(3316, 3327), segment_t(3341, 3341), segment_t(3345, 3345), segment_t(3397, 3397), segment_t(3401, 3401), segment_t(3408, 3411), segment_t(3428, 3429), segment_t(3456, 3456), segment_t(3460, 3460), segment_t(3479, 3481), segment_t(3506, 3506), segment_t(3516, 3516), segment_t(3518, 3519), segment_t(3527, 3529), segment_t(3531, 3534), segment_t(3541, 3541), segment_t(3543, 3543), segment_t(3552, 3557), segment_t(3568, 3569), segment_t(3573, 3584), segment_t(3643, 3646), segment_t(3676, 3712), segment_t(3715, 3715), segment_t(3717, 3717), segment_t(3723, 3723), segment_t(3748, 3748), segment_t(3750, 3750), segment_t(3774, 3775), segment_t(3781, 3781), segment_t(3783, 3783), segment_t(3791, 3791), segment_t(3802, 3803), segment_t(3808, 3839), segment_t(3912, 3912), segment_t(3949, 3952), segment_t(3992, 3992), segment_t(4029, 4029), segment_t(4045, 4045), segment_t(4059, 4095), segment_t(4294, 4294), segment_t(4296, 4300), segment_t(4302, 4303), segment_t(4681, 4681), segment_t(4686, 4687), segment_t(4695, 4695), segment_t(4697, 4697), segment_t(4702, 4703), segment_t(4745, 4745), segment_t(4750, 4751), segment_t(4785, 4785), segment_t(4790, 4791), segment_t(4799, 4799), segment_t(4801, 4801), segment_t(4806, 4807), segment_t(4823, 4823), segment_t(4881, 4881), segment_t(4886, 4887), segment_t(4955, 4956), segment_t(4989, 4991), segment_t(5018, 5023), segment_t(5110, 5111), segment_t(5118, 5119), segment_t(5789, 5791), segment_t(5881, 5887), segment_t(5910, 5918), segment_t(5943, 5951), segment_t(5972, 5983), segment_t(5997, 5997), segment_t(6001, 6001), segment_t(6004, 6015), segment_t(6110, 6111), segment_t(6122, 6127), segment_t(6138, 6143), segment_t(6170, 6175), segment_t(6265, 6271), segment_t(6315, 6319), segment_t(6390, 6399), segment_t(6431, 6431), segment_t(6444, 6447), segment_t(6460, 6463), segment_t(6465, 6467), segment_t(6510, 6511), segment_t(6517, 6527), segment_t(6572, 6575), segment_t(6602, 6607), segment_t(6619, 6621), segment_t(6684, 6685), segment_t(6751, 6751), segment_t(6781, 6782), segment_t(6794, 6799), segment_t(6810, 6815), segment_t(6830, 6831), segment_t(6878, 6879), segment_t(6892, 6911), segment_t(6989, 6989), segment_t(7156, 7163), segment_t(7224, 7226), segment_t(7242, 7244), segment_t(7307, 7311), segment_t(7355, 7356), segment_t(7368, 7375), segment_t(7419, 7423), segment_t(7958, 7959), segment_t(7966, 7967), segment_t(8006, 8007), segment_t(8014, 8015), segment_t(8024, 8024), segment_t(8026, 8026), segment_t(8028, 8028), segment_t(8030, 8030), segment_t(8062, 8063), segment_t(8117, 8117), segment_t(8133, 8133), segment_t(8148, 8149), segment_t(8156, 8156), segment_t(8176, 8177), segment_t(8181, 8181), segment_t(8191, 8191), segment_t(8293, 8293), segment_t(8306, 8307), segment_t(8335, 8335), segment_t(8349, 8351), segment_t(8386, 8399), segment_t(8433, 8447), segment_t(8588, 8591), segment_t(9258, 9279), segment_t(9291, 9311), segment_t(11124, 11125), segment_t(11508, 11512), segment_t(11558, 11558), segment_t(11560, 11564), segment_t(11566, 11567), segment_t(11624, 11630), segment_t(11633, 11646), segment_t(11671, 11679), segment_t(11687, 11687), segment_t(11695, 11695), segment_t(11703, 11703), segment_t(11711, 11711), segment_t(11719, 11719), segment_t(11727, 11727), segment_t(11735, 11735), segment_t(11743, 11743), segment_t(11870, 11903), segment_t(11930, 11930), segment_t(12020, 12031), segment_t(12246, 12271), segment_t(12352, 12352), segment_t(12439, 12440), segment_t(12544, 12548), segment_t(12592, 12592), segment_t(12687, 12687), segment_t(12774, 12782), segment_t(12831, 12831), segment_t(42125, 42127), segment_t(42183, 42191), segment_t(42540, 42559), segment_t(42744, 42751), segment_t(42973, 42992), segment_t(43053, 43055), segment_t(43066, 43071), segment_t(43128, 43135), segment_t(43206, 43213), segment_t(43226, 43231), segment_t(43348, 43358), segment_t(43389, 43391), segment_t(43470, 43470), segment_t(43482, 43485), segment_t(43519, 43519), segment_t(43575, 43583), segment_t(43598, 43599), segment_t(43610, 43611), segment_t(43715, 43738), segment_t(43767, 43776), segment_t(43783, 43784), segment_t(43791, 43792), segment_t(43799, 43807), segment_t(43815, 43815), segment_t(43823, 43823), segment_t(43884, 43887), segment_t(44014, 44015), segment_t(44026, 44031), segment_t(55204, 55215), segment_t(55239, 55242), segment_t(55292, 55295), segment_t(64110, 64111), segment_t(64218, 64255), segment_t(64263, 64274), segment_t(64280, 64284), segment_t(64311, 64311), segment_t(64317, 64317), segment_t(64319, 64319), segment_t(64322, 64322), segment_t(64325, 64325), segment_t(64976, 65007), segment_t(65050, 65055), segment_t(65107, 65107), segment_t(65127, 65127), segment_t(65132, 65135), segment_t(65141, 65141), segment_t(65277, 65278), segment_t(65280, 65280), segment_t(65471, 65473), segment_t(65480, 65481), segment_t(65488, 65489), segment_t(65496, 65497), segment_t(65501, 65503), segment_t(65511, 65511), segment_t(65519, 65528), segment_t(65534, 65535), segment_t(65548, 65548), segment_t(65575, 65575), segment_t(65595, 65595), segment_t(65598, 65598), segment_t(65614, 65615), segment_t(65630, 65663), segment_t(65787, 65791), segment_t(65795, 65798), segment_t(65844, 65846), segment_t(65935, 65935), segment_t(65949, 65951), segment_t(65953, 65999), segment_t(66046, 66175), segment_t(66205, 66207), segment_t(66257, 66271), segment_t(66300, 66303), segment_t(66340, 66348), segment_t(66379, 66383), segment_t(66427, 66431), segment_t(66462, 66462), segment_t(66500, 66503), segment_t(66518, 66559), segment_t(66718, 66719), segment_t(66730, 66735), segment_t(66772, 66775), segment_t(66812, 66815), segment_t(66856, 66863), segment_t(66916, 66926), segment_t(66939, 66939), segment_t(66955, 66955), segment_t(66963, 66963), segment_t(66966, 66966), segment_t(66978, 66978), segment_t(66994, 66994), segment_t(67002, 67002), segment_t(67005, 67007), segment_t(67060, 67071), segment_t(67383, 67391), segment_t(67414, 67423), segment_t(67432, 67455), segment_t(67462, 67462), segment_t(67505, 67505), segment_t(67515, 67583), segment_t(67590, 67591), segment_t(67593, 67593), segment_t(67638, 67638), segment_t(67641, 67643), segment_t(67645, 67646), segment_t(67670, 67670), segment_t(67743, 67750), segment_t(67760, 67807), segment_t(67827, 67827), segment_t(67830, 67834), segment_t(67868, 67870), segment_t(67898, 67902), segment_t(67930, 67967), segment_t(68024, 68027), segment_t(68048, 68049), segment_t(68100, 68100), segment_t(68103, 68107), segment_t(68116, 68116), segment_t(68120, 68120), segment_t(68150, 68151), segment_t(68155, 68158), segment_t(68169, 68175), segment_t(68185, 68191), segment_t(68256, 68287), segment_t(68327, 68330), segment_t(68343, 68351), segment_t(68406, 68408), segment_t(68438, 68439), segment_t(68467, 68471), segment_t(68498, 68504), segment_t(68509, 68520), segment_t(68528, 68607), segment_t(68681, 68735), segment_t(68787, 68799), segment_t(68851, 68857), segment_t(68904, 68911), segment_t(68922, 68927), segment_t(68966, 68968), segment_t(68998, 69005), segment_t(69008, 69215), segment_t(69247, 69247), segment_t(69290, 69290), segment_t(69294, 69295), segment_t(69298, 69313), segment_t(69320, 69327), segment_t(69337, 69369), segment_t(69416, 69423), segment_t(69466, 69487), segment_t(69514, 69551), segment_t(69580, 69599), segment_t(69623, 69631), segment_t(69710, 69713), segment_t(69750, 69758), segment_t(69827, 69836), segment_t(69838, 69839), segment_t(69865, 69871), segment_t(69882, 69887), segment_t(69941, 69941), segment_t(69960, 69967), segment_t(70007, 70015), segment_t(70112, 70112), segment_t(70133, 70143), segment_t(70162, 70162), segment_t(70210, 70271), segment_t(70279, 70279), segment_t(70281, 70281), segment_t(70286, 70286), segment_t(70302, 70302), segment_t(70314, 70319), segment_t(70379, 70383), segment_t(70394, 70399), segment_t(70404, 70404), segment_t(70413, 70414), segment_t(70417, 70418), segment_t(70441, 70441), segment_t(70449, 70449), segment_t(70452, 70452), segment_t(70458, 70458), segment_t(70469, 70470), segment_t(70473, 70474), segment_t(70478, 70479), segment_t(70481, 70486), segment_t(70488, 70492), segment_t(70500, 70501), segment_t(70509, 70511), segment_t(70517, 70527), segment_t(70538, 70538), segment_t(70540, 70541), segment_t(70543, 70543), segment_t(70582, 70582), segment_t(70593, 70593), segment_t(70595, 70596), segment_t(70598, 70598), segment_t(70603, 70603), segment_t(70614, 70614), segment_t(70617, 70624), segment_t(70627, 70655), segment_t(70748, 70748), segment_t(70754, 70783), segment_t(70856, 70863), segment_t(70874, 71039), segment_t(71094, 71095), segment_t(71134, 71167), segment_t(71237, 71247), segment_t(71258, 71263), segment_t(71277, 71295), segment_t(71354, 71359), segment_t(71370, 71375), segment_t(71396, 71423), segment_t(71451, 71452), segment_t(71468, 71471), segment_t(71495, 71679), segment_t(71740, 71839), segment_t(71923, 71934), segment_t(71943, 71944), segment_t(71946, 71947), segment_t(71956, 71956), segment_t(71959, 71959), segment_t(71990, 71990), segment_t(71993, 71994), segment_t(72007, 72015), segment_t(72026, 72095), segment_t(72104, 72105), segment_t(72152, 72153), segment_t(72165, 72191), segment_t(72264, 72271), segment_t(72355, 72367), segment_t(72441, 72447), segment_t(72458, 72543), segment_t(72552, 72639), segment_t(72674, 72687), segment_t(72698, 72703), segment_t(72713, 72713), segment_t(72759, 72759), segment_t(72774, 72783), segment_t(72813, 72815), segment_t(72848, 72849), segment_t(72872, 72872), segment_t(72887, 72959), segment_t(72967, 72967), segment_t(72970, 72970), segment_t(73015, 73017), segment_t(73019, 73019), segment_t(73022, 73022), segment_t(73032, 73039), segment_t(73050, 73055), segment_t(73062, 73062), segment_t(73065, 73065), segment_t(73103, 73103), segment_t(73106, 73106), segment_t(73113, 73119), segment_t(73130, 73135), segment_t(73180, 73183), segment_t(73194, 73439), segment_t(73465, 73471), segment_t(73489, 73489), segment_t(73531, 73533), segment_t(73563, 73647), segment_t(73649, 73663), segment_t(73714, 73726), segment_t(74650, 74751), segment_t(74863, 74863), segment_t(74869, 74879), segment_t(75076, 77711), segment_t(77811, 77823), segment_t(78934, 78943), segment_t(82939, 82943), segment_t(83527, 90367), segment_t(90426, 92159), segment_t(92729, 92735), segment_t(92767, 92767), segment_t(92778, 92781), segment_t(92863, 92863), segment_t(92874, 92879), segment_t(92910, 92911), segment_t(92918, 92927), segment_t(92998, 93007), segment_t(93018, 93018), segment_t(93026, 93026), segment_t(93048, 93052), segment_t(93072, 93503), segment_t(93562, 93759), segment_t(93851, 93855), segment_t(93881, 93882), segment_t(93908, 93951), segment_t(94027, 94030), segment_t(94088, 94094), segment_t(94112, 94175), segment_t(94181, 94191), segment_t(94199, 94207), segment_t(101590, 101630), segment_t(101663, 101759), segment_t(101875, 110575), segment_t(110580, 110580), segment_t(110588, 110588), segment_t(110591, 110591), segment_t(110883, 110897), segment_t(110899, 110927), segment_t(110931, 110932), segment_t(110934, 110947), segment_t(110952, 110959), segment_t(111356, 113663), segment_t(113771, 113775), segment_t(113789, 113791), segment_t(113801, 113807), segment_t(113818, 113819), segment_t(113828, 117759), segment_t(118013, 118015), segment_t(118452, 118457), segment_t(118481, 118495), segment_t(118513, 118527), segment_t(118574, 118575), segment_t(118599, 118607), segment_t(118724, 118783), segment_t(119030, 119039), segment_t(119079, 119080), segment_t(119275, 119295), segment_t(119366, 119487), segment_t(119508, 119519), segment_t(119540, 119551), segment_t(119639, 119647), segment_t(119673, 119807), segment_t(119893, 119893), segment_t(119965, 119965), segment_t(119968, 119969), segment_t(119971, 119972), segment_t(119975, 119976), segment_t(119981, 119981), segment_t(119994, 119994), segment_t(119996, 119996), segment_t(120004, 120004), segment_t(120070, 120070), segment_t(120075, 120076), segment_t(120085, 120085), segment_t(120093, 120093), segment_t(120122, 120122), segment_t(120127, 120127), segment_t(120133, 120133), segment_t(120135, 120137), segment_t(120145, 120145), segment_t(120486, 120487), segment_t(120780, 120781), segment_t(121484, 121498), segment_t(121504, 121504), segment_t(121520, 122623), segment_t(122655, 122660), segment_t(122667, 122879), segment_t(122887, 122887), segment_t(122905, 122906), segment_t(122914, 122914), segment_t(122917, 122917), segment_t(122923, 122927), segment_t(122990, 123022), segment_t(123024, 123135), segment_t(123181, 123183), segment_t(123198, 123199), segment_t(123210, 123213), segment_t(123216, 123535), segment_t(123567, 123583), segment_t(123642, 123646), segment_t(123648, 124111), segment_t(124154, 124367), segment_t(124411, 124414), segment_t(124416, 124607), segment_t(124639, 124639), segment_t(124662, 124669), segment_t(124672, 124895), segment_t(124903, 124903), segment_t(124908, 124908), segment_t(124911, 124911), segment_t(124927, 124927), segment_t(125125, 125126), segment_t(125143, 125183), segment_t(125260, 125263), segment_t(125274, 125277), segment_t(125280, 126064), segment_t(126133, 126208), segment_t(126270, 126463), segment_t(126468, 126468), segment_t(126496, 126496), segment_t(126499, 126499), segment_t(126501, 126502), segment_t(126504, 126504), segment_t(126515, 126515), segment_t(126520, 126520), segment_t(126522, 126522), segment_t(126524, 126529), segment_t(126531, 126534), segment_t(126536, 126536), segment_t(126538, 126538), segment_t(126540, 126540), segment_t(126544, 126544), segment_t(126547, 126547), segment_t(126549, 126550), segment_t(126552, 126552), segment_t(126554, 126554), segment_t(126556, 126556), segment_t(126558, 126558), segment_t(126560, 126560), segment_t(126563, 126563), segment_t(126565, 126566), segment_t(126571, 126571), segment_t(126579, 126579), segment_t(126584, 126584), segment_t(126589, 126589), segment_t(126591, 126591), segment_t(126602, 126602), segment_t(126620, 126624), segment_t(126628, 126628), segment_t(126634, 126634), segment_t(126652, 126703), segment_t(126706, 126975), segment_t(127020, 127023), segment_t(127124, 127135), segment_t(127151, 127152), segment_t(127168, 127168), segment_t(127184, 127184), segment_t(127222, 127231), segment_t(127406, 127461), segment_t(127491, 127503), segment_t(127548, 127551), segment_t(127561, 127567), segment_t(127570, 127583), segment_t(127590, 127743), segment_t(128729, 128731), segment_t(128749, 128751), segment_t(128765, 128767), segment_t(128986, 128991), segment_t(129004, 129007), segment_t(129009, 129023), segment_t(129036, 129039), segment_t(129096, 129103), segment_t(129114, 129119), segment_t(129160, 129167), segment_t(129198, 129199), segment_t(129212, 129215), segment_t(129218, 129231), segment_t(129241, 129279), segment_t(129624, 129631), segment_t(129646, 129647), segment_t(129661, 129663), segment_t(129675, 129677), segment_t(129735, 129735), segment_t(129737, 129740), segment_t(129757, 129758), segment_t(129771, 129774), segment_t(129785, 129791), segment_t(129939, 129939), segment_t(130043, 131071), segment_t(173792, 173823), segment_t(178206, 178207), segment_t(183982, 183983), segment_t(191457, 191471), segment_t(192094, 194559), segment_t(195102, 196607), segment_t(201547, 201551), segment_t(210042, 917504), segment_t(917506, 917535), segment_t(917632, 917759), segment_t(918000, 983039), segment_t(1048574, 1048575), segment_t(1114110, 1114111)]
type(segment_t), public, parameter :: unicode_gc_Co(*) = [segment_t(57344, 63743), segment_t(983040, 1048573), segment_t(1048576, 1114109)]
type(segment_t), public, parameter :: unicode_gc_Cs(*) = [segment_t(55296, 57343)]
type(segment_t), public, parameter :: unicode_gc_Ll(*) = [segment_t(97, 122), segment_t(181, 181), segment_t(223, 246), segment_t(248, 255), segment_t(257, 257), segment_t(259, 259), segment_t(261, 261), segment_t(263, 263), segment_t(265, 265), segment_t(267, 267), segment_t(269, 269), segment_t(271, 271), segment_t(273, 273), segment_t(275, 275), segment_t(277, 277), segment_t(279, 279), segment_t(281, 281), segment_t(283, 283), segment_t(285, 285), segment_t(287, 287), segment_t(289, 289), segment_t(291, 291), segment_t(293, 293), segment_t(295, 295), segment_t(297, 297), segment_t(299, 299), segment_t(301, 301), segment_t(303, 303), segment_t(305, 305), segment_t(307, 307), segment_t(309, 309), segment_t(311, 312), segment_t(314, 314), segment_t(316, 316), segment_t(318, 318), segment_t(320, 320), segment_t(322, 322), segment_t(324, 324), segment_t(326, 326), segment_t(328, 329), segment_t(331, 331), segment_t(333, 333), segment_t(335, 335), segment_t(337, 337), segment_t(339, 339), segment_t(341, 341), segment_t(343, 343), segment_t(345, 345), segment_t(347, 347), segment_t(349, 349), segment_t(351, 351), segment_t(353, 353), segment_t(355, 355), segment_t(357, 357), segment_t(359, 359), segment_t(361, 361), segment_t(363, 363), segment_t(365, 365), segment_t(367, 367), segment_t(369, 369), segment_t(371, 371), segment_t(373, 373), segment_t(375, 375), segment_t(378, 378), segment_t(380, 380), segment_t(382, 384), segment_t(387, 387), segment_t(389, 389), segment_t(392, 392), segment_t(396, 397), segment_t(402, 402), segment_t(405, 405), segment_t(409, 411), segment_t(414, 414), segment_t(417, 417), segment_t(419, 419), segment_t(421, 421), segment_t(424, 424), segment_t(426, 427), segment_t(429, 429), segment_t(432, 432), segment_t(436, 436), segment_t(438, 438), segment_t(441, 442), segment_t(445, 447), segment_t(454, 454), segment_t(457, 457), segment_t(460, 460), segment_t(462, 462), segment_t(464, 464), segment_t(466, 466), segment_t(468, 468), segment_t(470, 470), segment_t(472, 472), segment_t(474, 474), segment_t(476, 477), segment_t(479, 479), segment_t(481, 481), segment_t(483, 483), segment_t(485, 485), segment_t(487, 487), segment_t(489, 489), segment_t(491, 491), segment_t(493, 493), segment_t(495, 496), segment_t(499, 499), segment_t(501, 501), segment_t(505, 505), segment_t(507, 507), segment_t(509, 509), segment_t(511, 511), segment_t(513, 513), segment_t(515, 515), segment_t(517, 517), segment_t(519, 519), segment_t(521, 521), segment_t(523, 523), segment_t(525, 525), segment_t(527, 527), segment_t(529, 529), segment_t(531, 531), segment_t(533, 533), segment_t(535, 535), segment_t(537, 537), segment_t(539, 539), segment_t(541, 541), segment_t(543, 543), segment_t(545, 545), segment_t(547, 547), segment_t(549, 549), segment_t(551, 551), segment_t(553, 553), segment_t(555, 555), segment_t(557, 557), segment_t(559, 559), segment_t(561, 561), segment_t(563, 569), segment_t(572, 572), segment_t(575, 576), segment_t(578, 578), segment_t(583, 583), segment_t(585, 585), segment_t(587, 587), segment_t(589, 589), segment_t(591, 659), segment_t(662, 687), segment_t(881, 881), segment_t(883, 883), segment_t(887, 887), segment_t(891, 893), segment_t(912, 912), segment_t(940, 974), segment_t(976, 977), segment_t(981, 983), segment_t(985, 985), segment_t(987, 987), segment_t(989, 989), segment_t(991, 991), segment_t(993, 993), segment_t(995, 995), segment_t(997, 997), segment_t(999, 999), segment_t(1001, 1001), segment_t(1003, 1003), segment_t(1005, 1005), segment_t(1007, 1011), segment_t(1013, 1013), segment_t(1016, 1016), segment_t(1019, 1020), segment_t(1072, 1119), segment_t(1121, 1121), segment_t(1123, 1123), segment_t(1125, 1125), segment_t(1127, 1127), segment_t(1129, 1129), segment_t(1131, 1131), segment_t(1133, 1133), segment_t(1135, 1135), segment_t(1137, 1137), segment_t(1139, 1139), segment_t(1141, 1141), segment_t(1143, 1143), segment_t(1145, 1145), segment_t(1147, 1147), segment_t(1149, 1149), segment_t(1151, 1151), segment_t(1153, 1153), segment_t(1163, 1163), segment_t(1165, 1165), segment_t(1167, 1167), segment_t(1169, 1169), segment_t(1171, 1171), segment_t(1173, 1173), segment_t(1175, 1175), segment_t(1177, 1177), segment_t(1179, 1179), segment_t(1181, 1181), segment_t(1183, 1183), segment_t(1185, 1185), segment_t(1187, 1187), segment_t(1189, 1189), segment_t(1191, 1191), segment_t(1193, 1193), segment_t(1195, 1195), segment_t(1197, 1197), segment_t(1199, 1199), segment_t(1201, 1201), segment_t(1203, 1203), segment_t(1205, 1205), segment_t(1207, 1207), segment_t(1209, 1209), segment_t(1211, 1211), segment_t(1213, 1213), segment_t(1215, 1215), segment_t(1218, 1218), segment_t(1220, 1220), segment_t(1222, 1222), segment_t(1224, 1224), segment_t(1226, 1226), segment_t(1228, 1228), segment_t(1230, 1231), segment_t(1233, 1233), segment_t(1235, 1235), segment_t(1237, 1237), segment_t(1239, 1239), segment_t(1241, 1241), segment_t(1243, 1243), segment_t(1245, 1245), segment_t(1247, 1247), segment_t(1249, 1249), segment_t(1251, 1251), segment_t(1253, 1253), segment_t(1255, 1255), segment_t(1257, 1257), segment_t(1259, 1259), segment_t(1261, 1261), segment_t(1263, 1263), segment_t(1265, 1265), segment_t(1267, 1267), segment_t(1269, 1269), segment_t(1271, 1271), segment_t(1273, 1273), segment_t(1275, 1275), segment_t(1277, 1277), segment_t(1279, 1279), segment_t(1281, 1281), segment_t(1283, 1283), segment_t(1285, 1285), segment_t(1287, 1287), segment_t(1289, 1289), segment_t(1291, 1291), segment_t(1293, 1293), segment_t(1295, 1295), segment_t(1297, 1297), segment_t(1299, 1299), segment_t(1301, 1301), segment_t(1303, 1303), segment_t(1305, 1305), segment_t(1307, 1307), segment_t(1309, 1309), segment_t(1311, 1311), segment_t(1313, 1313), segment_t(1315, 1315), segment_t(1317, 1317), segment_t(1319, 1319), segment_t(1321, 1321), segment_t(1323, 1323), segment_t(1325, 1325), segment_t(1327, 1327), segment_t(1376, 1416), segment_t(4304, 4346), segment_t(4349, 4351), segment_t(5112, 5117), segment_t(7296, 7304), segment_t(7306, 7306), segment_t(7424, 7467), segment_t(7531, 7543), segment_t(7545, 7578), segment_t(7681, 7681), segment_t(7683, 7683), segment_t(7685, 7685), segment_t(7687, 7687), segment_t(7689, 7689), segment_t(7691, 7691), segment_t(7693, 7693), segment_t(7695, 7695), segment_t(7697, 7697), segment_t(7699, 7699), segment_t(7701, 7701), segment_t(7703, 7703), segment_t(7705, 7705), segment_t(7707, 7707), segment_t(7709, 7709), segment_t(7711, 7711), segment_t(7713, 7713), segment_t(7715, 7715), segment_t(7717, 7717), segment_t(7719, 7719), segment_t(7721, 7721), segment_t(7723, 7723), segment_t(7725, 7725), segment_t(7727, 7727), segment_t(7729, 7729), segment_t(7731, 7731), segment_t(7733, 7733), segment_t(7735, 7735), segment_t(7737, 7737), segment_t(7739, 7739), segment_t(7741, 7741), segment_t(7743, 7743), segment_t(7745, 7745), segment_t(7747, 7747), segment_t(7749, 7749), segment_t(7751, 7751), segment_t(7753, 7753), segment_t(7755, 7755), segment_t(7757, 7757), segment_t(7759, 7759), segment_t(7761, 7761), segment_t(7763, 7763), segment_t(7765, 7765), segment_t(7767, 7767), segment_t(7769, 7769), segment_t(7771, 7771), segment_t(7773, 7773), segment_t(7775, 7775), segment_t(7777, 7777), segment_t(7779, 7779), segment_t(7781, 7781), segment_t(7783, 7783), segment_t(7785, 7785), segment_t(7787, 7787), segment_t(7789, 7789), segment_t(7791, 7791), segment_t(7793, 7793), segment_t(7795, 7795), segment_t(7797, 7797), segment_t(7799, 7799), segment_t(7801, 7801), segment_t(7803, 7803), segment_t(7805, 7805), segment_t(7807, 7807), segment_t(7809, 7809), segment_t(7811, 7811), segment_t(7813, 7813), segment_t(7815, 7815), segment_t(7817, 7817), segment_t(7819, 7819), segment_t(7821, 7821), segment_t(7823, 7823), segment_t(7825, 7825), segment_t(7827, 7827), segment_t(7829, 7837), segment_t(7839, 7839), segment_t(7841, 7841), segment_t(7843, 7843), segment_t(7845, 7845), segment_t(7847, 7847), segment_t(7849, 7849), segment_t(7851, 7851), segment_t(7853, 7853), segment_t(7855, 7855), segment_t(7857, 7857), segment_t(7859, 7859), segment_t(7861, 7861), segment_t(7863, 7863), segment_t(7865, 7865), segment_t(7867, 7867), segment_t(7869, 7869), segment_t(7871, 7871), segment_t(7873, 7873), segment_t(7875, 7875), segment_t(7877, 7877), segment_t(7879, 7879), segment_t(7881, 7881), segment_t(7883, 7883), segment_t(7885, 7885), segment_t(7887, 7887), segment_t(7889, 7889), segment_t(7891, 7891), segment_t(7893, 7893), segment_t(7895, 7895), segment_t(7897, 7897), segment_t(7899, 7899), segment_t(7901, 7901), segment_t(7903, 7903), segment_t(7905, 7905), segment_t(7907, 7907), segment_t(7909, 7909), segment_t(7911, 7911), segment_t(7913, 7913), segment_t(7915, 7915), segment_t(7917, 7917), segment_t(7919, 7919), segment_t(7921, 7921), segment_t(7923, 7923), segment_t(7925, 7925), segment_t(7927, 7927), segment_t(7929, 7929), segment_t(7931, 7931), segment_t(7933, 7933), segment_t(7935, 7943), segment_t(7952, 7957), segment_t(7968, 7975), segment_t(7984, 7991), segment_t(8000, 8005), segment_t(8016, 8023), segment_t(8032, 8039), segment_t(8048, 8061), segment_t(8064, 8071), segment_t(8080, 8087), segment_t(8096, 8103), segment_t(8112, 8116), segment_t(8118, 8119), segment_t(8126, 8126), segment_t(8130, 8132), segment_t(8134, 8135), segment_t(8144, 8147), segment_t(8150, 8151), segment_t(8160, 8167), segment_t(8178, 8180), segment_t(8182, 8183), segment_t(8458, 8458), segment_t(8462, 8463), segment_t(8467, 8467), segment_t(8495, 8495), segment_t(8500, 8500), segment_t(8505, 8505), segment_t(8508, 8509), segment_t(8518, 8521), segment_t(8526, 8526), segment_t(8580, 8580), segment_t(11312, 11359), segment_t(11361, 11361), segment_t(11365, 11366), segment_t(11368, 11368), segment_t(11370, 11370), segment_t(11372, 11372), segment_t(11377, 11377), segment_t(11379, 11380), segment_t(11382, 11387), segment_t(11393, 11393), segment_t(11395, 11395), segment_t(11397, 11397), segment_t(11399, 11399), segment_t(11401, 11401), segment_t(11403, 11403), segment_t(11405, 11405), segment_t(11407, 11407), segment_t(11409, 11409), segment_t(11411, 11411), segment_t(11413, 11413), segment_t(11415, 11415), segment_t(11417, 11417), segment_t(11419, 11419), segment_t(11421, 11421), segment_t(11423, 11423), segment_t(11425, 11425), segment_t(11427, 11427), segment_t(11429, 11429), segment_t(11431, 11431), segment_t(11433, 11433), segment_t(11435, 11435), segment_t(11437, 11437), segment_t(11439, 11439), segment_t(11441, 11441), segment_t(11443, 11443), segment_t(11445, 11445), segment_t(11447, 11447), segment_t(11449, 11449), segment_t(11451, 11451), segment_t(11453, 11453), segment_t(11455, 11455), segment_t(11457, 11457), segment_t(11459, 11459), segment_t(11461, 11461), segment_t(11463, 11463), segment_t(11465, 11465), segment_t(11467, 11467), segment_t(11469, 11469), segment_t(11471, 11471), segment_t(11473, 11473), segment_t(11475, 11475), segment_t(11477, 11477), segment_t(11479, 11479), segment_t(11481, 11481), segment_t(11483, 11483), segment_t(11485, 11485), segment_t(11487, 11487), segment_t(11489, 11489), segment_t(11491, 11492), segment_t(11500, 11500), segment_t(11502, 11502), segment_t(11507, 11507), segment_t(11520, 11557), segment_t(11559, 11559), segment_t(11565, 11565), segment_t(42561, 42561), segment_t(42563, 42563), segment_t(42565, 42565), segment_t(42567, 42567), segment_t(42569, 42569), segment_t(42571, 42571), segment_t(42573, 42573), segment_t(42575, 42575), segment_t(42577, 42577), segment_t(42579, 42579), segment_t(42581, 42581), segment_t(42583, 42583), segment_t(42585, 42585), segment_t(42587, 42587), segment_t(42589, 42589), segment_t(42591, 42591), segment_t(42593, 42593), segment_t(42595, 42595), segment_t(42597, 42597), segment_t(42599, 42599), segment_t(42601, 42601), segment_t(42603, 42603), segment_t(42605, 42605), segment_t(42625, 42625), segment_t(42627, 42627), segment_t(42629, 42629), segment_t(42631, 42631), segment_t(42633, 42633), segment_t(42635, 42635), segment_t(42637, 42637), segment_t(42639, 42639), segment_t(42641, 42641), segment_t(42643, 42643), segment_t(42645, 42645), segment_t(42647, 42647), segment_t(42649, 42649), segment_t(42651, 42651), segment_t(42787, 42787), segment_t(42789, 42789), segment_t(42791, 42791), segment_t(42793, 42793), segment_t(42795, 42795), segment_t(42797, 42797), segment_t(42799, 42801), segment_t(42803, 42803), segment_t(42805, 42805), segment_t(42807, 42807), segment_t(42809, 42809), segment_t(42811, 42811), segment_t(42813, 42813), segment_t(42815, 42815), segment_t(42817, 42817), segment_t(42819, 42819), segment_t(42821, 42821), segment_t(42823, 42823), segment_t(42825, 42825), segment_t(42827, 42827), segment_t(42829, 42829), segment_t(42831, 42831), segment_t(42833, 42833), segment_t(42835, 42835), segment_t(42837, 42837), segment_t(42839, 42839), segment_t(42841, 42841), segment_t(42843, 42843), segment_t(42845, 42845), segment_t(42847, 42847), segment_t(42849, 42849), segment_t(42851, 42851), segment_t(42853, 42853), segment_t(42855, 42855), segment_t(42857, 42857), segment_t(42859, 42859), segment_t(42861, 42861), segment_t(42863, 42863), segment_t(42865, 42872), segment_t(42874, 42874), segment_t(42876, 42876), segment_t(42879, 42879), segment_t(42881, 42881), segment_t(42883, 42883), segment_t(42885, 42885), segment_t(42887, 42887), segment_t(42892, 42892), segment_t(42894, 42894), segment_t(42897, 42897), segment_t(42899, 42901), segment_t(42903, 42903), segment_t(42905, 42905), segment_t(42907, 42907), segment_t(42909, 42909), segment_t(42911, 42911), segment_t(42913, 42913), segment_t(42915, 42915), segment_t(42917, 42917), segment_t(42919, 42919), segment_t(42921, 42921), segment_t(42927, 42927), segment_t(42933, 42933), segment_t(42935, 42935), segment_t(42937, 42937), segment_t(42939, 42939), segment_t(42941, 42941), segment_t(42943, 42943), segment_t(42945, 42945), segment_t(42947, 42947), segment_t(42952, 42952), segment_t(42954, 42954), segment_t(42957, 42957), segment_t(42959, 42959), segment_t(42961, 42961), segment_t(42963, 42963), segment_t(42965, 42965), segment_t(42967, 42967), segment_t(42969, 42969), segment_t(42971, 42971), segment_t(42998, 42998), segment_t(43002, 43002), segment_t(43824, 43866), segment_t(43872, 43880), segment_t(43888, 43967), segment_t(64256, 64262), segment_t(64275, 64279), segment_t(65345, 65370), segment_t(66600, 66639), segment_t(66776, 66811), segment_t(66967, 66977), segment_t(66979, 66993), segment_t(66995, 67001), segment_t(67003, 67004), segment_t(68800, 68850), segment_t(68976, 68997), segment_t(71872, 71903), segment_t(93792, 93823), segment_t(93883, 93907), segment_t(119834, 119859), segment_t(119886, 119892), segment_t(119894, 119911), segment_t(119938, 119963), segment_t(119990, 119993), segment_t(119995, 119995), segment_t(119997, 120003), segment_t(120005, 120015), segment_t(120042, 120067), segment_t(120094, 120119), segment_t(120146, 120171), segment_t(120198, 120223), segment_t(120250, 120275), segment_t(120302, 120327), segment_t(120354, 120379), segment_t(120406, 120431), segment_t(120458, 120485), segment_t(120514, 120538), segment_t(120540, 120545), segment_t(120572, 120596), segment_t(120598, 120603), segment_t(120630, 120654), segment_t(120656, 120661), segment_t(120688, 120712), segment_t(120714, 120719), segment_t(120746, 120770), segment_t(120772, 120777), segment_t(120779, 120779), segment_t(122624, 122633), segment_t(122635, 122654), segment_t(122661, 122666), segment_t(125218, 125251)]
type(segment_t), public, parameter :: unicode_gc_Lm(*) = [segment_t(688, 705), segment_t(710, 721), segment_t(736, 740), segment_t(748, 748), segment_t(750, 750), segment_t(884, 884), segment_t(890, 890), segment_t(1369, 1369), segment_t(1600, 1600), segment_t(1765, 1766), segment_t(2036, 2037), segment_t(2042, 2042), segment_t(2074, 2074), segment_t(2084, 2084), segment_t(2088, 2088), segment_t(2249, 2249), segment_t(2417, 2417), segment_t(3654, 3654), segment_t(3782, 3782), segment_t(4348, 4348), segment_t(6103, 6103), segment_t(6211, 6211), segment_t(6823, 6823), segment_t(7288, 7293), segment_t(7468, 7530), segment_t(7544, 7544), segment_t(7579, 7615), segment_t(8305, 8305), segment_t(8319, 8319), segment_t(8336, 8348), segment_t(11388, 11389), segment_t(11631, 11631), segment_t(11823, 11823), segment_t(12293, 12293), segment_t(12337, 12341), segment_t(12347, 12347), segment_t(12445, 12446), segment_t(12540, 12542), segment_t(40981, 40981), segment_t(42232, 42237), segment_t(42508, 42508), segment_t(42623, 42623), segment_t(42652, 42653), segment_t(42775, 42783), segment_t(42864, 42864), segment_t(42888, 42888), segment_t(42993, 42996), segment_t(43000, 43001), segment_t(43471, 43471), segment_t(43494, 43494), segment_t(43632, 43632), segment_t(43741, 43741), segment_t(43763, 43764), segment_t(43868, 43871), segment_t(43881, 43881), segment_t(65392, 65392), segment_t(65438, 65439), segment_t(67456, 67461), segment_t(67463, 67504), segment_t(67506, 67514), segment_t(68942, 68942), segment_t(68975, 68975), segment_t(69317, 69317), segment_t(73177, 73177), segment_t(92992, 92995), segment_t(93504, 93506), segment_t(93547, 93548), segment_t(94099, 94111), segment_t(94176, 94177), segment_t(94179, 94179), segment_t(94194, 94195), segment_t(110576, 110579), segment_t(110581, 110587), segment_t(110589, 110590), segment_t(122928, 122989), segment_t(123191, 123197), segment_t(124139, 124139), segment_t(124671, 124671), segment_t(125259, 125259)]
type(segment_t), public, parameter :: unicode_gc_Lo(*) = [segment_t(170, 170), segment_t(186, 186), segment_t(443, 443), segment_t(448, 451), segment_t(660, 661), segment_t(1488, 1514), segment_t(1519, 1522), segment_t(1568, 1599), segment_t(1601, 1610), segment_t(1646, 1647), segment_t(1649, 1747), segment_t(1749, 1749), segment_t(1774, 1775), segment_t(1786, 1788), segment_t(1791, 1791), segment_t(1808, 1808), segment_t(1810, 1839), segment_t(1869, 1957), segment_t(1969, 1969), segment_t(1994, 2026), segment_t(2048, 2069), segment_t(2112, 2136), segment_t(2144, 2154), segment_t(2160, 2183), segment_t(2185, 2191), segment_t(2208, 2248), segment_t(2308, 2361), segment_t(2365, 2365), segment_t(2384, 2384), segment_t(2392, 2401), segment_t(2418, 2432), segment_t(2437, 2444), segment_t(2447, 2448), segment_t(2451, 2472), segment_t(2474, 2480), segment_t(2482, 2482), segment_t(2486, 2489), segment_t(2493, 2493), segment_t(2510, 2510), segment_t(2524, 2525), segment_t(2527, 2529), segment_t(2544, 2545), segment_t(2556, 2556), segment_t(2565, 2570), segment_t(2575, 2576), segment_t(2579, 2600), segment_t(2602, 2608), segment_t(2610, 2611), segment_t(2613, 2614), segment_t(2616, 2617), segment_t(2649, 2652), segment_t(2654, 2654), segment_t(2674, 2676), segment_t(2693, 2701), segment_t(2703, 2705), segment_t(2707, 2728), segment_t(2730, 2736), segment_t(2738, 2739), segment_t(2741, 2745), segment_t(2749, 2749), segment_t(2768, 2768), segment_t(2784, 2785), segment_t(2809, 2809), segment_t(2821, 2828), segment_t(2831, 2832), segment_t(2835, 2856), segment_t(2858, 2864), segment_t(2866, 2867), segment_t(2869, 2873), segment_t(2877, 2877), segment_t(2908, 2909), segment_t(2911, 2913), segment_t(2929, 2929), segment_t(2947, 2947), segment_t(2949, 2954), segment_t(2958, 2960), segment_t(2962, 2965), segment_t(2969, 2970), segment_t(2972, 2972), segment_t(2974, 2975), segment_t(2979, 2980), segment_t(2984, 2986), segment_t(2990, 3001), segment_t(3024, 3024), segment_t(3077, 3084), segment_t(3086, 3088), segment_t(3090, 3112), segment_t(3114, 3129), segment_t(3133, 3133), segment_t(3160, 3162), segment_t(3164, 3165), segment_t(3168, 3169), segment_t(3200, 3200), segment_t(3205, 3212), segment_t(3214, 3216), segment_t(3218, 3240), segment_t(3242, 3251), segment_t(3253, 3257), segment_t(3261, 3261), segment_t(3292, 3294), segment_t(3296, 3297), segment_t(3313, 3314), segment_t(3332, 3340), segment_t(3342, 3344), segment_t(3346, 3386), segment_t(3389, 3389), segment_t(3406, 3406), segment_t(3412, 3414), segment_t(3423, 3425), segment_t(3450, 3455), segment_t(3461, 3478), segment_t(3482, 3505), segment_t(3507, 3515), segment_t(3517, 3517), segment_t(3520, 3526), segment_t(3585, 3632), segment_t(3634, 3635), segment_t(3648, 3653), segment_t(3713, 3714), segment_t(3716, 3716), segment_t(3718, 3722), segment_t(3724, 3747), segment_t(3749, 3749), segment_t(3751, 3760), segment_t(3762, 3763), segment_t(3773, 3773), segment_t(3776, 3780), segment_t(3804, 3807), segment_t(3840, 3840), segment_t(3904, 3911), segment_t(3913, 3948), segment_t(3976, 3980), segment_t(4096, 4138), segment_t(4159, 4159), segment_t(4176, 4181), segment_t(4186, 4189), segment_t(4193, 4193), segment_t(4197, 4198), segment_t(4206, 4208), segment_t(4213, 4225), segment_t(4238, 4238), segment_t(4352, 4680), segment_t(4682, 4685), segment_t(4688, 4694), segment_t(4696, 4696), segment_t(4698, 4701), segment_t(4704, 4744), segment_t(4746, 4749), segment_t(4752, 4784), segment_t(4786, 4789), segment_t(4792, 4798), segment_t(4800, 4800), segment_t(4802, 4805), segment_t(4808, 4822), segment_t(4824, 4880), segment_t(4882, 4885), segment_t(4888, 4954), segment_t(4992, 5007), segment_t(5121, 5740), segment_t(5743, 5759), segment_t(5761, 5786), segment_t(5792, 5866), segment_t(5873, 5880), segment_t(5888, 5905), segment_t(5919, 5937), segment_t(5952, 5969), segment_t(5984, 5996), segment_t(5998, 6000), segment_t(6016, 6067), segment_t(6108, 6108), segment_t(6176, 6210), segment_t(6212, 6264), segment_t(6272, 6276), segment_t(6279, 6312), segment_t(6314, 6314), segment_t(6320, 6389), segment_t(6400, 6430), segment_t(6480, 6509), segment_t(6512, 6516), segment_t(6528, 6571), segment_t(6576, 6601), segment_t(6656, 6678), segment_t(6688, 6740), segment_t(6917, 6963), segment_t(6981, 6988), segment_t(7043, 7072), segment_t(7086, 7087), segment_t(7098, 7141), segment_t(7168, 7203), segment_t(7245, 7247), segment_t(7258, 7287), segment_t(7401, 7404), segment_t(7406, 7411), segment_t(7413, 7414), segment_t(7418, 7418), segment_t(8501, 8504), segment_t(11568, 11623), segment_t(11648, 11670), segment_t(11680, 11686), segment_t(11688, 11694), segment_t(11696, 11702), segment_t(11704, 11710), segment_t(11712, 11718), segment_t(11720, 11726), segment_t(11728, 11734), segment_t(11736, 11742), segment_t(12294, 12294), segment_t(12348, 12348), segment_t(12353, 12438), segment_t(12447, 12447), segment_t(12449, 12538), segment_t(12543, 12543), segment_t(12549, 12591), segment_t(12593, 12686), segment_t(12704, 12735), segment_t(12784, 12799), segment_t(13312, 19903), segment_t(19968, 40980), segment_t(40982, 42124), segment_t(42192, 42231), segment_t(42240, 42507), segment_t(42512, 42527), segment_t(42538, 42539), segment_t(42606, 42606), segment_t(42656, 42725), segment_t(42895, 42895), segment_t(42999, 42999), segment_t(43003, 43009), segment_t(43011, 43013), segment_t(43015, 43018), segment_t(43020, 43042), segment_t(43072, 43123), segment_t(43138, 43187), segment_t(43250, 43255), segment_t(43259, 43259), segment_t(43261, 43262), segment_t(43274, 43301), segment_t(43312, 43334), segment_t(43360, 43388), segment_t(43396, 43442), segment_t(43488, 43492), segment_t(43495, 43503), segment_t(43514, 43518), segment_t(43520, 43560), segment_t(43584, 43586), segment_t(43588, 43595), segment_t(43616, 43631), segment_t(43633, 43638), segment_t(43642, 43642), segment_t(43646, 43695), segment_t(43697, 43697), segment_t(43701, 43702), segment_t(43705, 43709), segment_t(43712, 43712), segment_t(43714, 43714), segment_t(43739, 43740), segment_t(43744, 43754), segment_t(43762, 43762), segment_t(43777, 43782), segment_t(43785, 43790), segment_t(43793, 43798), segment_t(43808, 43814), segment_t(43816, 43822), segment_t(43968, 44002), segment_t(44032, 55203), segment_t(55216, 55238), segment_t(55243, 55291), segment_t(63744, 64109), segment_t(64112, 64217), segment_t(64285, 64285), segment_t(64287, 64296), segment_t(64298, 64310), segment_t(64312, 64316), segment_t(64318, 64318), segment_t(64320, 64321), segment_t(64323, 64324), segment_t(64326, 64433), segment_t(64467, 64829), segment_t(64848, 64911), segment_t(64914, 64967), segment_t(65008, 65019), segment_t(65136, 65140), segment_t(65142, 65276), segment_t(65382, 65391), segment_t(65393, 65437), segment_t(65440, 65470), segment_t(65474, 65479), segment_t(65482, 65487), segment_t(65490, 65495), segment_t(65498, 65500), segment_t(65536, 65547), segment_t(65549, 65574), segment_t(65576, 65594), segment_t(65596, 65597), segment_t(65599, 65613), segment_t(65616, 65629), segment_t(65664, 65786), segment_t(66176, 66204), segment_t(66208, 66256), segment_t(66304, 66335), segment_t(66349, 66368), segment_t(66370, 66377), segment_t(66384, 66421), segment_t(66432, 66461), segment_t(66464, 66499), segment_t(66504, 66511), segment_t(66640, 66717), segment_t(66816, 66855), segment_t(66864, 66915), segment_t(67008, 67059), segment_t(67072, 67382), segment_t(67392, 67413), segment_t(67424, 67431), segment_t(67584, 67589), segment_t(67592, 67592), segment_t(67594, 67637), segment_t(67639, 67640), segment_t(67644, 67644), segment_t(67647, 67669), segment_t(67680, 67702), segment_t(67712, 67742), segment_t(67808, 67826), segment_t(67828, 67829), segment_t(67840, 67861), segment_t(67872, 67897), segment_t(67904, 67929), segment_t(67968, 68023), segment_t(68030, 68031), segment_t(68096, 68096), segment_t(68112, 68115), segment_t(68117, 68119), segment_t(68121, 68149), segment_t(68192, 68220), segment_t(68224, 68252), segment_t(68288, 68295), segment_t(68297, 68324), segment_t(68352, 68405), segment_t(68416, 68437), segment_t(68448, 68466), segment_t(68480, 68497), segment_t(68608, 68680), segment_t(68864, 68899), segment_t(68938, 68941), segment_t(68943, 68943), segment_t(69248, 69289), segment_t(69296, 69297), segment_t(69314, 69316), segment_t(69318, 69319), segment_t(69376, 69404), segment_t(69415, 69415), segment_t(69424, 69445), segment_t(69488, 69505), segment_t(69552, 69572), segment_t(69600, 69622), segment_t(69635, 69687), segment_t(69745, 69746), segment_t(69749, 69749), segment_t(69763, 69807), segment_t(69840, 69864), segment_t(69891, 69926), segment_t(69956, 69956), segment_t(69959, 69959), segment_t(69968, 70002), segment_t(70006, 70006), segment_t(70019, 70066), segment_t(70081, 70084), segment_t(70106, 70106), segment_t(70108, 70108), segment_t(70144, 70161), segment_t(70163, 70187), segment_t(70207, 70208), segment_t(70272, 70278), segment_t(70280, 70280), segment_t(70282, 70285), segment_t(70287, 70301), segment_t(70303, 70312), segment_t(70320, 70366), segment_t(70405, 70412), segment_t(70415, 70416), segment_t(70419, 70440), segment_t(70442, 70448), segment_t(70450, 70451), segment_t(70453, 70457), segment_t(70461, 70461), segment_t(70480, 70480), segment_t(70493, 70497), segment_t(70528, 70537), segment_t(70539, 70539), segment_t(70542, 70542), segment_t(70544, 70581), segment_t(70583, 70583), segment_t(70609, 70609), segment_t(70611, 70611), segment_t(70656, 70708), segment_t(70727, 70730), segment_t(70751, 70753), segment_t(70784, 70831), segment_t(70852, 70853), segment_t(70855, 70855), segment_t(71040, 71086), segment_t(71128, 71131), segment_t(71168, 71215), segment_t(71236, 71236), segment_t(71296, 71338), segment_t(71352, 71352), segment_t(71424, 71450), segment_t(71488, 71494), segment_t(71680, 71723), segment_t(71935, 71942), segment_t(71945, 71945), segment_t(71948, 71955), segment_t(71957, 71958), segment_t(71960, 71983), segment_t(71999, 71999), segment_t(72001, 72001), segment_t(72096, 72103), segment_t(72106, 72144), segment_t(72161, 72161), segment_t(72163, 72163), segment_t(72192, 72192), segment_t(72203, 72242), segment_t(72250, 72250), segment_t(72272, 72272), segment_t(72284, 72329), segment_t(72349, 72349), segment_t(72368, 72440), segment_t(72640, 72672), segment_t(72704, 72712), segment_t(72714, 72750), segment_t(72768, 72768), segment_t(72818, 72847), segment_t(72960, 72966), segment_t(72968, 72969), segment_t(72971, 73008), segment_t(73030, 73030), segment_t(73056, 73061), segment_t(73063, 73064), segment_t(73066, 73097), segment_t(73112, 73112), segment_t(73136, 73176), segment_t(73178, 73179), segment_t(73440, 73458), segment_t(73474, 73474), segment_t(73476, 73488), segment_t(73490, 73523), segment_t(73648, 73648), segment_t(73728, 74649), segment_t(74880, 75075), segment_t(77712, 77808), segment_t(77824, 78895), segment_t(78913, 78918), segment_t(78944, 82938), segment_t(82944, 83526), segment_t(90368, 90397), segment_t(92160, 92728), segment_t(92736, 92766), segment_t(92784, 92862), segment_t(92880, 92909), segment_t(92928, 92975), segment_t(93027, 93047), segment_t(93053, 93071), segment_t(93507, 93546), segment_t(93952, 94026), segment_t(94032, 94032), segment_t(94208, 101589), segment_t(101631, 101662), segment_t(101760, 101874), segment_t(110592, 110882), segment_t(110898, 110898), segment_t(110928, 110930), segment_t(110933, 110933), segment_t(110948, 110951), segment_t(110960, 111355), segment_t(113664, 113770), segment_t(113776, 113788), segment_t(113792, 113800), segment_t(113808, 113817), segment_t(122634, 122634), segment_t(123136, 123180), segment_t(123214, 123214), segment_t(123536, 123565), segment_t(123584, 123627), segment_t(124112, 124138), segment_t(124368, 124397), segment_t(124400, 124400), segment_t(124608, 124638), segment_t(124640, 124642), segment_t(124644, 124645), segment_t(124647, 124653), segment_t(124656, 124660), segment_t(124670, 124670), segment_t(124896, 124902), segment_t(124904, 124907), segment_t(124909, 124910), segment_t(124912, 124926), segment_t(124928, 125124), segment_t(126464, 126467), segment_t(126469, 126495), segment_t(126497, 126498), segment_t(126500, 126500), segment_t(126503, 126503), segment_t(126505, 126514), segment_t(126516, 126519), segment_t(126521, 126521), segment_t(126523, 126523), segment_t(126530, 126530), segment_t(126535, 126535), segment_t(126537, 126537), segment_t(126539, 126539), segment_t(126541, 126543), segment_t(126545, 126546), segment_t(126548, 126548), segment_t(126551, 126551), segment_t(126553, 126553), segment_t(126555, 126555), segment_t(126557, 126557), segment_t(126559, 126559), segment_t(126561, 126562), segment_t(126564, 126564), segment_t(126567, 126570), segment_t(126572, 126578), segment_t(126580, 126583), segment_t(126585, 126588), segment_t(126590, 126590), segment_t(126592, 126601), segment_t(126603, 126619), segment_t(126625, 126627), segment_t(126629, 126633), segment_t(126635, 126651), segment_t(131072, 173791), segment_t(173824, 178205), segment_t(178208, 183981), segment_t(183984, 191456), segment_t(191472, 192093), segment_t(194560, 195101), segment_t(196608, 201546), segment_t(201552, 210041)]
type(segment_t), public, parameter :: unicode_gc_Lt(*) = [segment_t(453, 453), segment_t(456, 456), segment_t(459, 459), segment_t(498, 498), segment_t(8072, 8079), segment_t(8088, 8095), segment_t(8104, 8111), segment_t(8124, 8124), segment_t(8140, 8140), segment_t(8188, 8188)]
type(segment_t), public, parameter :: unicode_gc_Lu(*) = [segment_t(65, 90), segment_t(192, 214), segment_t(216, 222), segment_t(256, 256), segment_t(258, 258), segment_t(260, 260), segment_t(262, 262), segment_t(264, 264), segment_t(266, 266), segment_t(268, 268), segment_t(270, 270), segment_t(272, 272), segment_t(274, 274), segment_t(276, 276), segment_t(278, 278), segment_t(280, 280), segment_t(282, 282), segment_t(284, 284), segment_t(286, 286), segment_t(288, 288), segment_t(290, 290), segment_t(292, 292), segment_t(294, 294), segment_t(296, 296), segment_t(298, 298), segment_t(300, 300), segment_t(302, 302), segment_t(304, 304), segment_t(306, 306), segment_t(308, 308), segment_t(310, 310), segment_t(313, 313), segment_t(315, 315), segment_t(317, 317), segment_t(319, 319), segment_t(321, 321), segment_t(323, 323), segment_t(325, 325), segment_t(327, 327), segment_t(330, 330), segment_t(332, 332), segment_t(334, 334), segment_t(336, 336), segment_t(338, 338), segment_t(340, 340), segment_t(342, 342), segment_t(344, 344), segment_t(346, 346), segment_t(348, 348), segment_t(350, 350), segment_t(352, 352), segment_t(354, 354), segment_t(356, 356), segment_t(358, 358), segment_t(360, 360), segment_t(362, 362), segment_t(364, 364), segment_t(366, 366), segment_t(368, 368), segment_t(370, 370), segment_t(372, 372), segment_t(374, 374), segment_t(376, 377), segment_t(379, 379), segment_t(381, 381), segment_t(385, 386), segment_t(388, 388), segment_t(390, 391), segment_t(393, 395), segment_t(398, 401), segment_t(403, 404), segment_t(406, 408), segment_t(412, 413), segment_t(415, 416), segment_t(418, 418), segment_t(420, 420), segment_t(422, 423), segment_t(425, 425), segment_t(428, 428), segment_t(430, 431), segment_t(433, 435), segment_t(437, 437), segment_t(439, 440), segment_t(444, 444), segment_t(452, 452), segment_t(455, 455), segment_t(458, 458), segment_t(461, 461), segment_t(463, 463), segment_t(465, 465), segment_t(467, 467), segment_t(469, 469), segment_t(471, 471), segment_t(473, 473), segment_t(475, 475), segment_t(478, 478), segment_t(480, 480), segment_t(482, 482), segment_t(484, 484), segment_t(486, 486), segment_t(488, 488), segment_t(490, 490), segment_t(492, 492), segment_t(494, 494), segment_t(497, 497), segment_t(500, 500), segment_t(502, 504), segment_t(506, 506), segment_t(508, 508), segment_t(510, 510), segment_t(512, 512), segment_t(514, 514), segment_t(516, 516), segment_t(518, 518), segment_t(520, 520), segment_t(522, 522), segment_t(524, 524), segment_t(526, 526), segment_t(528, 528), segment_t(530, 530), segment_t(532, 532), segment_t(534, 534), segment_t(536, 536), segment_t(538, 538), segment_t(540, 540), segment_t(542, 542), segment_t(544, 544), segment_t(546, 546), segment_t(548, 548), segment_t(550, 550), segment_t(552, 552), segment_t(554, 554), segment_t(556, 556), segment_t(558, 558), segment_t(560, 560), segment_t(562, 562), segment_t(570, 571), segment_t(573, 574), segment_t(577, 577), segment_t(579, 582), segment_t(584, 584), segment_t(586, 586), segment_t(588, 588), segment_t(590, 590), segment_t(880, 880), segment_t(882, 882), segment_t(886, 886), segment_t(895, 895), segment_t(902, 902), segment_t(904, 906), segment_t(908, 908), segment_t(910, 911), segment_t(913, 929), segment_t(931, 939), segment_t(975, 975), segment_t(978, 980), segment_t(984, 984), segment_t(986, 986), segment_t(988, 988), segment_t(990, 990), segment_t(992, 992), segment_t(994, 994), segment_t(996, 996), segment_t(998, 998), segment_t(1000, 1000), segment_t(1002, 1002), segment_t(1004, 1004), segment_t(1006, 1006), segment_t(1012, 1012), segment_t(1015, 1015), segment_t(1017, 1018), segment_t(1021, 1071), segment_t(1120, 1120), segment_t(1122, 1122), segment_t(1124, 1124), segment_t(1126, 1126), segment_t(1128, 1128), segment_t(1130, 1130), segment_t(1132, 1132), segment_t(1134, 1134), segment_t(1136, 1136), segment_t(1138, 1138), segment_t(1140, 1140), segment_t(1142, 1142), segment_t(1144, 1144), segment_t(1146, 1146), segment_t(1148, 1148), segment_t(1150, 1150), segment_t(1152, 1152), segment_t(1162, 1162), segment_t(1164, 1164), segment_t(1166, 1166), segment_t(1168, 1168), segment_t(1170, 1170), segment_t(1172, 1172), segment_t(1174, 1174), segment_t(1176, 1176), segment_t(1178, 1178), segment_t(1180, 1180), segment_t(1182, 1182), segment_t(1184, 1184), segment_t(1186, 1186), segment_t(1188, 1188), segment_t(1190, 1190), segment_t(1192, 1192), segment_t(1194, 1194), segment_t(1196, 1196), segment_t(1198, 1198), segment_t(1200, 1200), segment_t(1202, 1202), segment_t(1204, 1204), segment_t(1206, 1206), segment_t(1208, 1208), segment_t(1210, 1210), segment_t(1212, 1212), segment_t(1214, 1214), segment_t(1216, 1217), segment_t(1219, 1219), segment_t(1221, 1221), segment_t(1223, 1223), segment_t(1225, 1225), segment_t(1227, 1227), segment_t(1229, 1229), segment_t(1232, 1232), segment_t(1234, 1234), segment_t(1236, 1236), segment_t(1238, 1238), segment_t(1240, 1240), segment_t(1242, 1242), segment_t(1244, 1244), segment_t(1246, 1246), segment_t(1248, 1248), segment_t(1250, 1250), segment_t(1252, 1252), segment_t(1254, 1254), segment_t(1256, 1256), segment_t(1258, 1258), segment_t(1260, 1260), segment_t(1262, 1262), segment_t(1264, 1264), segment_t(1266, 1266), segment_t(1268, 1268), segment_t(1270, 1270), segment_t(1272, 1272), segment_t(1274, 1274), segment_t(1276, 1276), segment_t(1278, 1278), segment_t(1280, 1280), segment_t(1282, 1282), segment_t(1284, 1284), segment_t(1286, 1286), segment_t(1288, 1288), segment_t(1290, 1290), segment_t(1292, 1292), segment_t(1294, 1294), segment_t(1296, 1296), segment_t(1298, 1298), segment_t(1300, 1300), segment_t(1302, 1302), segment_t(1304, 1304), segment_t(1306, 1306), segment_t(1308, 1308), segment_t(1310, 1310), segment_t(1312, 1312), segment_t(1314, 1314), segment_t(1316, 1316), segment_t(1318, 1318), segment_t(1320, 1320), segment_t(1322, 1322), segment_t(1324, 1324), segment_t(1326, 1326), segment_t(1329, 1366), segment_t(4256, 4293), segment_t(4295, 4295), segment_t(4301, 4301), segment_t(5024, 5109), segment_t(7305, 7305), segment_t(7312, 7354), segment_t(7357, 7359), segment_t(7680, 7680), segment_t(7682, 7682), segment_t(7684, 7684), segment_t(7686, 7686), segment_t(7688, 7688), segment_t(7690, 7690), segment_t(7692, 7692), segment_t(7694, 7694), segment_t(7696, 7696), segment_t(7698, 7698), segment_t(7700, 7700), segment_t(7702, 7702), segment_t(7704, 7704), segment_t(7706, 7706), segment_t(7708, 7708), segment_t(7710, 7710), segment_t(7712, 7712), segment_t(7714, 7714), segment_t(7716, 7716), segment_t(7718, 7718), segment_t(7720, 7720), segment_t(7722, 7722), segment_t(7724, 7724), segment_t(7726, 7726), segment_t(7728, 7728), segment_t(7730, 7730), segment_t(7732, 7732), segment_t(7734, 7734), segment_t(7736, 7736), segment_t(7738, 7738), segment_t(7740, 7740), segment_t(7742, 7742), segment_t(7744, 7744), segment_t(7746, 7746), segment_t(7748, 7748), segment_t(7750, 7750), segment_t(7752, 7752), segment_t(7754, 7754), segment_t(7756, 7756), segment_t(7758, 7758), segment_t(7760, 7760), segment_t(7762, 7762), segment_t(7764, 7764), segment_t(7766, 7766), segment_t(7768, 7768), segment_t(7770, 7770), segment_t(7772, 7772), segment_t(7774, 7774), segment_t(7776, 7776), segment_t(7778, 7778), segment_t(7780, 7780), segment_t(7782, 7782), segment_t(7784, 7784), segment_t(7786, 7786), segment_t(7788, 7788), segment_t(7790, 7790), segment_t(7792, 7792), segment_t(7794, 7794), segment_t(7796, 7796), segment_t(7798, 7798), segment_t(7800, 7800), segment_t(7802, 7802), segment_t(7804, 7804), segment_t(7806, 7806), segment_t(7808, 7808), segment_t(7810, 7810), segment_t(7812, 7812), segment_t(7814, 7814), segment_t(7816, 7816), segment_t(7818, 7818), segment_t(7820, 7820), segment_t(7822, 7822), segment_t(7824, 7824), segment_t(7826, 7826), segment_t(7828, 7828), segment_t(7838, 7838), segment_t(7840, 7840), segment_t(7842, 7842), segment_t(7844, 7844), segment_t(7846, 7846), segment_t(7848, 7848), segment_t(7850, 7850), segment_t(7852, 7852), segment_t(7854, 7854), segment_t(7856, 7856), segment_t(7858, 7858), segment_t(7860, 7860), segment_t(7862, 7862), segment_t(7864, 7864), segment_t(7866, 7866), segment_t(7868, 7868), segment_t(7870, 7870), segment_t(7872, 7872), segment_t(7874, 7874), segment_t(7876, 7876), segment_t(7878, 7878), segment_t(7880, 7880), segment_t(7882, 7882), segment_t(7884, 7884), segment_t(7886, 7886), segment_t(7888, 7888), segment_t(7890, 7890), segment_t(7892, 7892), segment_t(7894, 7894), segment_t(7896, 7896), segment_t(7898, 7898), segment_t(7900, 7900), segment_t(7902, 7902), segment_t(7904, 7904), segment_t(7906, 7906), segment_t(7908, 7908), segment_t(7910, 7910), segment_t(7912, 7912), segment_t(7914, 7914), segment_t(7916, 7916), segment_t(7918, 7918), segment_t(7920, 7920), segment_t(7922, 7922), segment_t(7924, 7924), segment_t(7926, 7926), segment_t(7928, 7928), segment_t(7930, 7930), segment_t(7932, 7932), segment_t(7934, 7934), segment_t(7944, 7951), segment_t(7960, 7965), segment_t(7976, 7983), segment_t(7992, 7999), segment_t(8008, 8013), segment_t(8025, 8025), segment_t(8027, 8027), segment_t(8029, 8029), segment_t(8031, 8031), segment_t(8040, 8047), segment_t(8120, 8123), segment_t(8136, 8139), segment_t(8152, 8155), segment_t(8168, 8172), segment_t(8184, 8187), segment_t(8450, 8450), segment_t(8455, 8455), segment_t(8459, 8461), segment_t(8464, 8466), segment_t(8469, 8469), segment_t(8473, 8477), segment_t(8484, 8484), segment_t(8486, 8486), segment_t(8488, 8488), segment_t(8490, 8493), segment_t(8496, 8499), segment_t(8510, 8511), segment_t(8517, 8517), segment_t(8579, 8579), segment_t(11264, 11311), segment_t(11360, 11360), segment_t(11362, 11364), segment_t(11367, 11367), segment_t(11369, 11369), segment_t(11371, 11371), segment_t(11373, 11376), segment_t(11378, 11378), segment_t(11381, 11381), segment_t(11390, 11392), segment_t(11394, 11394), segment_t(11396, 11396), segment_t(11398, 11398), segment_t(11400, 11400), segment_t(11402, 11402), segment_t(11404, 11404), segment_t(11406, 11406), segment_t(11408, 11408), segment_t(11410, 11410), segment_t(11412, 11412), segment_t(11414, 11414), segment_t(11416, 11416), segment_t(11418, 11418), segment_t(11420, 11420), segment_t(11422, 11422), segment_t(11424, 11424), segment_t(11426, 11426), segment_t(11428, 11428), segment_t(11430, 11430), segment_t(11432, 11432), segment_t(11434, 11434), segment_t(11436, 11436), segment_t(11438, 11438), segment_t(11440, 11440), segment_t(11442, 11442), segment_t(11444, 11444), segment_t(11446, 11446), segment_t(11448, 11448), segment_t(11450, 11450), segment_t(11452, 11452), segment_t(11454, 11454), segment_t(11456, 11456), segment_t(11458, 11458), segment_t(11460, 11460), segment_t(11462, 11462), segment_t(11464, 11464), segment_t(11466, 11466), segment_t(11468, 11468), segment_t(11470, 11470), segment_t(11472, 11472), segment_t(11474, 11474), segment_t(11476, 11476), segment_t(11478, 11478), segment_t(11480, 11480), segment_t(11482, 11482), segment_t(11484, 11484), segment_t(11486, 11486), segment_t(11488, 11488), segment_t(11490, 11490), segment_t(11499, 11499), segment_t(11501, 11501), segment_t(11506, 11506), segment_t(42560, 42560), segment_t(42562, 42562), segment_t(42564, 42564), segment_t(42566, 42566), segment_t(42568, 42568), segment_t(42570, 42570), segment_t(42572, 42572), segment_t(42574, 42574), segment_t(42576, 42576), segment_t(42578, 42578), segment_t(42580, 42580), segment_t(42582, 42582), segment_t(42584, 42584), segment_t(42586, 42586), segment_t(42588, 42588), segment_t(42590, 42590), segment_t(42592, 42592), segment_t(42594, 42594), segment_t(42596, 42596), segment_t(42598, 42598), segment_t(42600, 42600), segment_t(42602, 42602), segment_t(42604, 42604), segment_t(42624, 42624), segment_t(42626, 42626), segment_t(42628, 42628), segment_t(42630, 42630), segment_t(42632, 42632), segment_t(42634, 42634), segment_t(42636, 42636), segment_t(42638, 42638), segment_t(42640, 42640), segment_t(42642, 42642), segment_t(42644, 42644), segment_t(42646, 42646), segment_t(42648, 42648), segment_t(42650, 42650), segment_t(42786, 42786), segment_t(42788, 42788), segment_t(42790, 42790), segment_t(42792, 42792), segment_t(42794, 42794), segment_t(42796, 42796), segment_t(42798, 42798), segment_t(42802, 42802), segment_t(42804, 42804), segment_t(42806, 42806), segment_t(42808, 42808), segment_t(42810, 42810), segment_t(42812, 42812), segment_t(42814, 42814), segment_t(42816, 42816), segment_t(42818, 42818), segment_t(42820, 42820), segment_t(42822, 42822), segment_t(42824, 42824), segment_t(42826, 42826), segment_t(42828, 42828), segment_t(42830, 42830), segment_t(42832, 42832), segment_t(42834, 42834), segment_t(42836, 42836), segment_t(42838, 42838), segment_t(42840, 42840), segment_t(42842, 42842), segment_t(42844, 42844), segment_t(42846, 42846), segment_t(42848, 42848), segment_t(42850, 42850), segment_t(42852, 42852), segment_t(42854, 42854), segment_t(42856, 42856), segment_t(42858, 42858), segment_t(42860, 42860), segment_t(42862, 42862), segment_t(42873, 42873), segment_t(42875, 42875), segment_t(42877, 42878), segment_t(42880, 42880), segment_t(42882, 42882), segment_t(42884, 42884), segment_t(42886, 42886), segment_t(42891, 42891), segment_t(42893, 42893), segment_t(42896, 42896), segment_t(42898, 42898), segment_t(42902, 42902), segment_t(42904, 42904), segment_t(42906, 42906), segment_t(42908, 42908), segment_t(42910, 42910), segment_t(42912, 42912), segment_t(42914, 42914), segment_t(42916, 42916), segment_t(42918, 42918), segment_t(42920, 42920), segment_t(42922, 42926), segment_t(42928, 42932), segment_t(42934, 42934), segment_t(42936, 42936), segment_t(42938, 42938), segment_t(42940, 42940), segment_t(42942, 42942), segment_t(42944, 42944), segment_t(42946, 42946), segment_t(42948, 42951), segment_t(42953, 42953), segment_t(42955, 42956), segment_t(42958, 42958), segment_t(42960, 42960), segment_t(42962, 42962), segment_t(42964, 42964), segment_t(42966, 42966), segment_t(42968, 42968), segment_t(42970, 42970), segment_t(42972, 42972), segment_t(42997, 42997), segment_t(65313, 65338), segment_t(66560, 66599), segment_t(66736, 66771), segment_t(66928, 66938), segment_t(66940, 66954), segment_t(66956, 66962), segment_t(66964, 66965), segment_t(68736, 68786), segment_t(68944, 68965), segment_t(71840, 71871), segment_t(93760, 93791), segment_t(93856, 93880), segment_t(119808, 119833), segment_t(119860, 119885), segment_t(119912, 119937), segment_t(119964, 119964), segment_t(119966, 119967), segment_t(119970, 119970), segment_t(119973, 119974), segment_t(119977, 119980), segment_t(119982, 119989), segment_t(120016, 120041), segment_t(120068, 120069), segment_t(120071, 120074), segment_t(120077, 120084), segment_t(120086, 120092), segment_t(120120, 120121), segment_t(120123, 120126), segment_t(120128, 120132), segment_t(120134, 120134), segment_t(120138, 120144), segment_t(120172, 120197), segment_t(120224, 120249), segment_t(120276, 120301), segment_t(120328, 120353), segment_t(120380, 120405), segment_t(120432, 120457), segment_t(120488, 120512), segment_t(120546, 120570), segment_t(120604, 120628), segment_t(120662, 120686), segment_t(120720, 120744), segment_t(120778, 120778), segment_t(125184, 125217)]
type(segment_t), public, parameter :: unicode_gc_Mc(*) = [segment_t(2307, 2307), segment_t(2363, 2363), segment_t(2366, 2368), segment_t(2377, 2380), segment_t(2382, 2383), segment_t(2434, 2435), segment_t(2494, 2496), segment_t(2503, 2504), segment_t(2507, 2508), segment_t(2519, 2519), segment_t(2563, 2563), segment_t(2622, 2624), segment_t(2691, 2691), segment_t(2750, 2752), segment_t(2761, 2761), segment_t(2763, 2764), segment_t(2818, 2819), segment_t(2878, 2878), segment_t(2880, 2880), segment_t(2887, 2888), segment_t(2891, 2892), segment_t(2903, 2903), segment_t(3006, 3007), segment_t(3009, 3010), segment_t(3014, 3016), segment_t(3018, 3020), segment_t(3031, 3031), segment_t(3073, 3075), segment_t(3137, 3140), segment_t(3202, 3203), segment_t(3262, 3262), segment_t(3264, 3268), segment_t(3271, 3272), segment_t(3274, 3275), segment_t(3285, 3286), segment_t(3315, 3315), segment_t(3330, 3331), segment_t(3390, 3392), segment_t(3398, 3400), segment_t(3402, 3404), segment_t(3415, 3415), segment_t(3458, 3459), segment_t(3535, 3537), segment_t(3544, 3551), segment_t(3570, 3571), segment_t(3902, 3903), segment_t(3967, 3967), segment_t(4139, 4140), segment_t(4145, 4145), segment_t(4152, 4152), segment_t(4155, 4156), segment_t(4182, 4183), segment_t(4194, 4196), segment_t(4199, 4205), segment_t(4227, 4228), segment_t(4231, 4236), segment_t(4239, 4239), segment_t(4250, 4252), segment_t(5909, 5909), segment_t(5940, 5940), segment_t(6070, 6070), segment_t(6078, 6085), segment_t(6087, 6088), segment_t(6435, 6438), segment_t(6441, 6443), segment_t(6448, 6449), segment_t(6451, 6456), segment_t(6681, 6682), segment_t(6741, 6741), segment_t(6743, 6743), segment_t(6753, 6753), segment_t(6755, 6756), segment_t(6765, 6770), segment_t(6916, 6916), segment_t(6965, 6965), segment_t(6971, 6971), segment_t(6973, 6977), segment_t(6979, 6980), segment_t(7042, 7042), segment_t(7073, 7073), segment_t(7078, 7079), segment_t(7082, 7082), segment_t(7143, 7143), segment_t(7146, 7148), segment_t(7150, 7150), segment_t(7154, 7155), segment_t(7204, 7211), segment_t(7220, 7221), segment_t(7393, 7393), segment_t(7415, 7415), segment_t(12334, 12335), segment_t(43043, 43044), segment_t(43047, 43047), segment_t(43136, 43137), segment_t(43188, 43203), segment_t(43346, 43347), segment_t(43395, 43395), segment_t(43444, 43445), segment_t(43450, 43451), segment_t(43454, 43456), segment_t(43567, 43568), segment_t(43571, 43572), segment_t(43597, 43597), segment_t(43643, 43643), segment_t(43645, 43645), segment_t(43755, 43755), segment_t(43758, 43759), segment_t(43765, 43765), segment_t(44003, 44004), segment_t(44006, 44007), segment_t(44009, 44010), segment_t(44012, 44012), segment_t(69632, 69632), segment_t(69634, 69634), segment_t(69762, 69762), segment_t(69808, 69810), segment_t(69815, 69816), segment_t(69932, 69932), segment_t(69957, 69958), segment_t(70018, 70018), segment_t(70067, 70069), segment_t(70079, 70080), segment_t(70094, 70094), segment_t(70188, 70190), segment_t(70194, 70195), segment_t(70197, 70197), segment_t(70368, 70370), segment_t(70402, 70403), segment_t(70462, 70463), segment_t(70465, 70468), segment_t(70471, 70472), segment_t(70475, 70477), segment_t(70487, 70487), segment_t(70498, 70499), segment_t(70584, 70586), segment_t(70594, 70594), segment_t(70597, 70597), segment_t(70599, 70602), segment_t(70604, 70605), segment_t(70607, 70607), segment_t(70709, 70711), segment_t(70720, 70721), segment_t(70725, 70725), segment_t(70832, 70834), segment_t(70841, 70841), segment_t(70843, 70846), segment_t(70849, 70849), segment_t(71087, 71089), segment_t(71096, 71099), segment_t(71102, 71102), segment_t(71216, 71218), segment_t(71227, 71228), segment_t(71230, 71230), segment_t(71340, 71340), segment_t(71342, 71343), segment_t(71350, 71350), segment_t(71454, 71454), segment_t(71456, 71457), segment_t(71462, 71462), segment_t(71724, 71726), segment_t(71736, 71736), segment_t(71984, 71989), segment_t(71991, 71992), segment_t(71997, 71997), segment_t(72000, 72000), segment_t(72002, 72002), segment_t(72145, 72147), segment_t(72156, 72159), segment_t(72164, 72164), segment_t(72249, 72249), segment_t(72279, 72280), segment_t(72343, 72343), segment_t(72545, 72545), segment_t(72549, 72549), segment_t(72551, 72551), segment_t(72751, 72751), segment_t(72766, 72766), segment_t(72873, 72873), segment_t(72881, 72881), segment_t(72884, 72884), segment_t(73098, 73102), segment_t(73107, 73108), segment_t(73110, 73110), segment_t(73461, 73462), segment_t(73475, 73475), segment_t(73524, 73525), segment_t(73534, 73535), segment_t(73537, 73537), segment_t(90410, 90412), segment_t(94033, 94087), segment_t(94192, 94193), segment_t(119141, 119142), segment_t(119149, 119154)]
type(segment_t), public, parameter :: unicode_gc_Me(*) = [segment_t(1160, 1161), segment_t(6846, 6846), segment_t(8413, 8416), segment_t(8418, 8420), segment_t(42608, 42610)]
type(segment_t), public, parameter :: unicode_gc_Mn(*) = [segment_t(768, 879), segment_t(1155, 1159), segment_t(1425, 1469), segment_t(1471, 1471), segment_t(1473, 1474), segment_t(1476, 1477), segment_t(1479, 1479), segment_t(1552, 1562), segment_t(1611, 1631), segment_t(1648, 1648), segment_t(1750, 1756), segment_t(1759, 1764), segment_t(1767, 1768), segment_t(1770, 1773), segment_t(1809, 1809), segment_t(1840, 1866), segment_t(1958, 1968), segment_t(2027, 2035), segment_t(2045, 2045), segment_t(2070, 2073), segment_t(2075, 2083), segment_t(2085, 2087), segment_t(2089, 2093), segment_t(2137, 2139), segment_t(2199, 2207), segment_t(2250, 2273), segment_t(2275, 2306), segment_t(2362, 2362), segment_t(2364, 2364), segment_t(2369, 2376), segment_t(2381, 2381), segment_t(2385, 2391), segment_t(2402, 2403), segment_t(2433, 2433), segment_t(2492, 2492), segment_t(2497, 2500), segment_t(2509, 2509), segment_t(2530, 2531), segment_t(2558, 2558), segment_t(2561, 2562), segment_t(2620, 2620), segment_t(2625, 2626), segment_t(2631, 2632), segment_t(2635, 2637), segment_t(2641, 2641), segment_t(2672, 2673), segment_t(2677, 2677), segment_t(2689, 2690), segment_t(2748, 2748), segment_t(2753, 2757), segment_t(2759, 2760), segment_t(2765, 2765), segment_t(2786, 2787), segment_t(2810, 2815), segment_t(2817, 2817), segment_t(2876, 2876), segment_t(2879, 2879), segment_t(2881, 2884), segment_t(2893, 2893), segment_t(2901, 2902), segment_t(2914, 2915), segment_t(2946, 2946), segment_t(3008, 3008), segment_t(3021, 3021), segment_t(3072, 3072), segment_t(3076, 3076), segment_t(3132, 3132), segment_t(3134, 3136), segment_t(3142, 3144), segment_t(3146, 3149), segment_t(3157, 3158), segment_t(3170, 3171), segment_t(3201, 3201), segment_t(3260, 3260), segment_t(3263, 3263), segment_t(3270, 3270), segment_t(3276, 3277), segment_t(3298, 3299), segment_t(3328, 3329), segment_t(3387, 3388), segment_t(3393, 3396), segment_t(3405, 3405), segment_t(3426, 3427), segment_t(3457, 3457), segment_t(3530, 3530), segment_t(3538, 3540), segment_t(3542, 3542), segment_t(3633, 3633), segment_t(3636, 3642), segment_t(3655, 3662), segment_t(3761, 3761), segment_t(3764, 3772), segment_t(3784, 3790), segment_t(3864, 3865), segment_t(3893, 3893), segment_t(3895, 3895), segment_t(3897, 3897), segment_t(3953, 3966), segment_t(3968, 3972), segment_t(3974, 3975), segment_t(3981, 3991), segment_t(3993, 4028), segment_t(4038, 4038), segment_t(4141, 4144), segment_t(4146, 4151), segment_t(4153, 4154), segment_t(4157, 4158), segment_t(4184, 4185), segment_t(4190, 4192), segment_t(4209, 4212), segment_t(4226, 4226), segment_t(4229, 4230), segment_t(4237, 4237), segment_t(4253, 4253), segment_t(4957, 4959), segment_t(5906, 5908), segment_t(5938, 5939), segment_t(5970, 5971), segment_t(6002, 6003), segment_t(6068, 6069), segment_t(6071, 6077), segment_t(6086, 6086), segment_t(6089, 6099), segment_t(6109, 6109), segment_t(6155, 6157), segment_t(6159, 6159), segment_t(6277, 6278), segment_t(6313, 6313), segment_t(6432, 6434), segment_t(6439, 6440), segment_t(6450, 6450), segment_t(6457, 6459), segment_t(6679, 6680), segment_t(6683, 6683), segment_t(6742, 6742), segment_t(6744, 6750), segment_t(6752, 6752), segment_t(6754, 6754), segment_t(6757, 6764), segment_t(6771, 6780), segment_t(6783, 6783), segment_t(6832, 6845), segment_t(6847, 6877), segment_t(6880, 6891), segment_t(6912, 6915), segment_t(6964, 6964), segment_t(6966, 6970), segment_t(6972, 6972), segment_t(6978, 6978), segment_t(7019, 7027), segment_t(7040, 7041), segment_t(7074, 7077), segment_t(7080, 7081), segment_t(7083, 7085), segment_t(7142, 7142), segment_t(7144, 7145), segment_t(7149, 7149), segment_t(7151, 7153), segment_t(7212, 7219), segment_t(7222, 7223), segment_t(7376, 7378), segment_t(7380, 7392), segment_t(7394, 7400), segment_t(7405, 7405), segment_t(7412, 7412), segment_t(7416, 7417), segment_t(7616, 7679), segment_t(8400, 8412), segment_t(8417, 8417), segment_t(8421, 8432), segment_t(11503, 11505), segment_t(11647, 11647), segment_t(11744, 11775), segment_t(12330, 12333), segment_t(12441, 12442), segment_t(42607, 42607), segment_t(42612, 42621), segment_t(42654, 42655), segment_t(42736, 42737), segment_t(43010, 43010), segment_t(43014, 43014), segment_t(43019, 43019), segment_t(43045, 43046), segment_t(43052, 43052), segment_t(43204, 43205), segment_t(43232, 43249), segment_t(43263, 43263), segment_t(43302, 43309), segment_t(43335, 43345), segment_t(43392, 43394), segment_t(43443, 43443), segment_t(43446, 43449), segment_t(43452, 43453), segment_t(43493, 43493), segment_t(43561, 43566), segment_t(43569, 43570), segment_t(43573, 43574), segment_t(43587, 43587), segment_t(43596, 43596), segment_t(43644, 43644), segment_t(43696, 43696), segment_t(43698, 43700), segment_t(43703, 43704), segment_t(43710, 43711), segment_t(43713, 43713), segment_t(43756, 43757), segment_t(43766, 43766), segment_t(44005, 44005), segment_t(44008, 44008), segment_t(44013, 44013), segment_t(64286, 64286), segment_t(65024, 65039), segment_t(65056, 65071), segment_t(66045, 66045), segment_t(66272, 66272), segment_t(66422, 66426), segment_t(68097, 68099), segment_t(68101, 68102), segment_t(68108, 68111), segment_t(68152, 68154), segment_t(68159, 68159), segment_t(68325, 68326), segment_t(68900, 68903), segment_t(68969, 68973), segment_t(69291, 69292), segment_t(69370, 69375), segment_t(69446, 69456), segment_t(69506, 69509), segment_t(69633, 69633), segment_t(69688, 69702), segment_t(69744, 69744), segment_t(69747, 69748), segment_t(69759, 69761), segment_t(69811, 69814), segment_t(69817, 69818), segment_t(69826, 69826), segment_t(69888, 69890), segment_t(69927, 69931), segment_t(69933, 69940), segment_t(70003, 70003), segment_t(70016, 70017), segment_t(70070, 70078), segment_t(70089, 70092), segment_t(70095, 70095), segment_t(70191, 70193), segment_t(70196, 70196), segment_t(70198, 70199), segment_t(70206, 70206), segment_t(70209, 70209), segment_t(70367, 70367), segment_t(70371, 70378), segment_t(70400, 70401), segment_t(70459, 70460), segment_t(70464, 70464), segment_t(70502, 70508), segment_t(70512, 70516), segment_t(70587, 70592), segment_t(70606, 70606), segment_t(70608, 70608), segment_t(70610, 70610), segment_t(70625, 70626), segment_t(70712, 70719), segment_t(70722, 70724), segment_t(70726, 70726), segment_t(70750, 70750), segment_t(70835, 70840), segment_t(70842, 70842), segment_t(70847, 70848), segment_t(70850, 70851), segment_t(71090, 71093), segment_t(71100, 71101), segment_t(71103, 71104), segment_t(71132, 71133), segment_t(71219, 71226), segment_t(71229, 71229), segment_t(71231, 71232), segment_t(71339, 71339), segment_t(71341, 71341), segment_t(71344, 71349), segment_t(71351, 71351), segment_t(71453, 71453), segment_t(71455, 71455), segment_t(71458, 71461), segment_t(71463, 71467), segment_t(71727, 71735), segment_t(71737, 71738), segment_t(71995, 71996), segment_t(71998, 71998), segment_t(72003, 72003), segment_t(72148, 72151), segment_t(72154, 72155), segment_t(72160, 72160), segment_t(72193, 72202), segment_t(72243, 72248), segment_t(72251, 72254), segment_t(72263, 72263), segment_t(72273, 72278), segment_t(72281, 72283), segment_t(72330, 72342), segment_t(72344, 72345), segment_t(72544, 72544), segment_t(72546, 72548), segment_t(72550, 72550), segment_t(72752, 72758), segment_t(72760, 72765), segment_t(72767, 72767), segment_t(72850, 72871), segment_t(72874, 72880), segment_t(72882, 72883), segment_t(72885, 72886), segment_t(73009, 73014), segment_t(73018, 73018), segment_t(73020, 73021), segment_t(73023, 73029), segment_t(73031, 73031), segment_t(73104, 73105), segment_t(73109, 73109), segment_t(73111, 73111), segment_t(73459, 73460), segment_t(73472, 73473), segment_t(73526, 73530), segment_t(73536, 73536), segment_t(73538, 73538), segment_t(73562, 73562), segment_t(78912, 78912), segment_t(78919, 78933), segment_t(90398, 90409), segment_t(90413, 90415), segment_t(92912, 92916), segment_t(92976, 92982), segment_t(94031, 94031), segment_t(94095, 94098), segment_t(94180, 94180), segment_t(113821, 113822), segment_t(118528, 118573), segment_t(118576, 118598), segment_t(119143, 119145), segment_t(119163, 119170), segment_t(119173, 119179), segment_t(119210, 119213), segment_t(119362, 119364), segment_t(121344, 121398), segment_t(121403, 121452), segment_t(121461, 121461), segment_t(121476, 121476), segment_t(121499, 121503), segment_t(121505, 121519), segment_t(122880, 122886), segment_t(122888, 122904), segment_t(122907, 122913), segment_t(122915, 122916), segment_t(122918, 122922), segment_t(123023, 123023), segment_t(123184, 123190), segment_t(123566, 123566), segment_t(123628, 123631), segment_t(124140, 124143), segment_t(124398, 124399), segment_t(124643, 124643), segment_t(124646, 124646), segment_t(124654, 124655), segment_t(124661, 124661), segment_t(125136, 125142), segment_t(125252, 125258), segment_t(917760, 917999)]
type(segment_t), public, parameter :: unicode_gc_Nd(*) = [segment_t(48, 57), segment_t(1632, 1641), segment_t(1776, 1785), segment_t(1984, 1993), segment_t(2406, 2415), segment_t(2534, 2543), segment_t(2662, 2671), segment_t(2790, 2799), segment_t(2918, 2927), segment_t(3046, 3055), segment_t(3174, 3183), segment_t(3302, 3311), segment_t(3430, 3439), segment_t(3558, 3567), segment_t(3664, 3673), segment_t(3792, 3801), segment_t(3872, 3881), segment_t(4160, 4169), segment_t(4240, 4249), segment_t(6112, 6121), segment_t(6160, 6169), segment_t(6470, 6479), segment_t(6608, 6617), segment_t(6784, 6793), segment_t(6800, 6809), segment_t(6992, 7001), segment_t(7088, 7097), segment_t(7232, 7241), segment_t(7248, 7257), segment_t(42528, 42537), segment_t(43216, 43225), segment_t(43264, 43273), segment_t(43472, 43481), segment_t(43504, 43513), segment_t(43600, 43609), segment_t(44016, 44025), segment_t(65296, 65305), segment_t(66720, 66729), segment_t(68912, 68921), segment_t(68928, 68937), segment_t(69734, 69743), segment_t(69872, 69881), segment_t(69942, 69951), segment_t(70096, 70105), segment_t(70384, 70393), segment_t(70736, 70745), segment_t(70864, 70873), segment_t(71248, 71257), segment_t(71360, 71369), segment_t(71376, 71395), segment_t(71472, 71481), segment_t(71904, 71913), segment_t(72016, 72025), segment_t(72688, 72697), segment_t(72784, 72793), segment_t(73040, 73049), segment_t(73120, 73129), segment_t(73184, 73193), segment_t(73552, 73561), segment_t(90416, 90425), segment_t(92768, 92777), segment_t(92864, 92873), segment_t(93008, 93017), segment_t(93552, 93561), segment_t(118000, 118009), segment_t(120782, 120831), segment_t(123200, 123209), segment_t(123632, 123641), segment_t(124144, 124153), segment_t(124401, 124410), segment_t(125264, 125273), segment_t(130032, 130041)]
type(segment_t), public, parameter :: unicode_gc_Nl(*) = [segment_t(5870, 5872), segment_t(8544, 8578), segment_t(8581, 8584), segment_t(12295, 12295), segment_t(12321, 12329), segment_t(12344, 12346), segment_t(42726, 42735), segment_t(65856, 65908), segment_t(66369, 66369), segment_t(66378, 66378), segment_t(66513, 66517), segment_t(74752, 74862), segment_t(94196, 94198)]
type(segment_t), public, parameter :: unicode_gc_No(*) = [segment_t(178, 179), segment_t(185, 185), segment_t(188, 190), segment_t(2548, 2553), segment_t(2930, 2935), segment_t(3056, 3058), segment_t(3192, 3198), segment_t(3416, 3422), segment_t(3440, 3448), segment_t(3882, 3891), segment_t(4969, 4988), segment_t(6128, 6137), segment_t(6618, 6618), segment_t(8304, 8304), segment_t(8308, 8313), segment_t(8320, 8329), segment_t(8528, 8543), segment_t(8585, 8585), segment_t(9312, 9371), segment_t(9450, 9471), segment_t(10102, 10131), segment_t(11517, 11517), segment_t(12690, 12693), segment_t(12832, 12841), segment_t(12872, 12879), segment_t(12881, 12895), segment_t(12928, 12937), segment_t(12977, 12991), segment_t(43056, 43061), segment_t(65799, 65843), segment_t(65909, 65912), segment_t(65930, 65931), segment_t(66273, 66299), segment_t(66336, 66339), segment_t(67672, 67679), segment_t(67705, 67711), segment_t(67751, 67759), segment_t(67835, 67839), segment_t(67862, 67867), segment_t(68028, 68029), segment_t(68032, 68047), segment_t(68050, 68095), segment_t(68160, 68168), segment_t(68221, 68222), segment_t(68253, 68255), segment_t(68331, 68335), segment_t(68440, 68447), segment_t(68472, 68479), segment_t(68521, 68527), segment_t(68858, 68863), segment_t(69216, 69246), segment_t(69405, 69414), segment_t(69457, 69460), segment_t(69573, 69579), segment_t(69714, 69733), segment_t(70113, 70132), segment_t(71482, 71483), segment_t(71914, 71922), segment_t(72794, 72812), segment_t(73664, 73684), segment_t(93019, 93025), segment_t(93824, 93846), segment_t(119488, 119507), segment_t(119520, 119539), segment_t(119648, 119672), segment_t(125127, 125135), segment_t(126065, 126123), segment_t(126125, 126127), segment_t(126129, 126132), segment_t(126209, 126253), segment_t(126255, 126269), segment_t(127232, 127244)]
type(segment_t), public, parameter :: unicode_gc_Pc(*) = [segment_t(95, 95), segment_t(8255, 8256), segment_t(8276, 8276), segment_t(65075, 65076), segment_t(65101, 65103), segment_t(65343, 65343)]
type(segment_t), public, parameter :: unicode_gc_Pd(*) = [segment_t(45, 45), segment_t(1418, 1418), segment_t(1470, 1470), segment_t(5120, 5120), segment_t(6150, 6150), segment_t(8208, 8213), segment_t(11799, 11799), segment_t(11802, 11802), segment_t(11834, 11835), segment_t(11840, 11840), segment_t(11869, 11869), segment_t(12316, 12316), segment_t(12336, 12336), segment_t(12448, 12448), segment_t(65073, 65074), segment_t(65112, 65112), segment_t(65123, 65123), segment_t(65293, 65293), segment_t(68974, 68974), segment_t(69293, 69293)]
type(segment_t), public, parameter :: unicode_gc_Pe(*) = [segment_t(41, 41), segment_t(93, 93), segment_t(125, 125), segment_t(3899, 3899), segment_t(3901, 3901), segment_t(5788, 5788), segment_t(8262, 8262), segment_t(8318, 8318), segment_t(8334, 8334), segment_t(8969, 8969), segment_t(8971, 8971), segment_t(9002, 9002), segment_t(10089, 10089), segment_t(10091, 10091), segment_t(10093, 10093), segment_t(10095, 10095), segment_t(10097, 10097), segment_t(10099, 10099), segment_t(10101, 10101), segment_t(10182, 10182), segment_t(10215, 10215), segment_t(10217, 10217), segment_t(10219, 10219), segment_t(10221, 10221), segment_t(10223, 10223), segment_t(10628, 10628), segment_t(10630, 10630), segment_t(10632, 10632), segment_t(10634, 10634), segment_t(10636, 10636), segment_t(10638, 10638), segment_t(10640, 10640), segment_t(10642, 10642), segment_t(10644, 10644), segment_t(10646, 10646), segment_t(10648, 10648), segment_t(10713, 10713), segment_t(10715, 10715), segment_t(10749, 10749), segment_t(11811, 11811), segment_t(11813, 11813), segment_t(11815, 11815), segment_t(11817, 11817), segment_t(11862, 11862), segment_t(11864, 11864), segment_t(11866, 11866), segment_t(11868, 11868), segment_t(12297, 12297), segment_t(12299, 12299), segment_t(12301, 12301), segment_t(12303, 12303), segment_t(12305, 12305), segment_t(12309, 12309), segment_t(12311, 12311), segment_t(12313, 12313), segment_t(12315, 12315), segment_t(12318, 12319), segment_t(64830, 64830), segment_t(65048, 65048), segment_t(65078, 65078), segment_t(65080, 65080), segment_t(65082, 65082), segment_t(65084, 65084), segment_t(65086, 65086), segment_t(65088, 65088), segment_t(65090, 65090), segment_t(65092, 65092), segment_t(65096, 65096), segment_t(65114, 65114), segment_t(65116, 65116), segment_t(65118, 65118), segment_t(65289, 65289), segment_t(65341, 65341), segment_t(65373, 65373), segment_t(65376, 65376), segment_t(65379, 65379)]
type(segment_t), public, parameter :: unicode_gc_Pf(*) = [segment_t(187, 187), segment_t(8217, 8217), segment_t(8221, 8221), segment_t(8250, 8250), segment_t(11779, 11779), segment_t(11781, 11781), segment_t(11786, 11786), segment_t(11789, 11789), segment_t(11805, 11805), segment_t(11809, 11809)]
type(segment_t), public, parameter :: unicode_gc_Pi(*) = [segment_t(171, 171), segment_t(8216, 8216), segment_t(8219, 8220), segment_t(8223, 8223), segment_t(8249, 8249), segment_t(11778, 11778), segment_t(11780, 11780), segment_t(11785, 11785), segment_t(11788, 11788), segment_t(11804, 11804), segment_t(11808, 11808)]
type(segment_t), public, parameter :: unicode_gc_Po(*) = [segment_t(33, 35), segment_t(37, 39), segment_t(42, 42), segment_t(44, 44), segment_t(46, 47), segment_t(58, 59), segment_t(63, 64), segment_t(92, 92), segment_t(161, 161), segment_t(167, 167), segment_t(182, 183), segment_t(191, 191), segment_t(894, 894), segment_t(903, 903), segment_t(1370, 1375), segment_t(1417, 1417), segment_t(1472, 1472), segment_t(1475, 1475), segment_t(1478, 1478), segment_t(1523, 1524), segment_t(1545, 1546), segment_t(1548, 1549), segment_t(1563, 1563), segment_t(1565, 1567), segment_t(1642, 1645), segment_t(1748, 1748), segment_t(1792, 1805), segment_t(2039, 2041), segment_t(2096, 2110), segment_t(2142, 2142), segment_t(2404, 2405), segment_t(2416, 2416), segment_t(2557, 2557), segment_t(2678, 2678), segment_t(2800, 2800), segment_t(3191, 3191), segment_t(3204, 3204), segment_t(3572, 3572), segment_t(3663, 3663), segment_t(3674, 3675), segment_t(3844, 3858), segment_t(3860, 3860), segment_t(3973, 3973), segment_t(4048, 4052), segment_t(4057, 4058), segment_t(4170, 4175), segment_t(4347, 4347), segment_t(4960, 4968), segment_t(5742, 5742), segment_t(5867, 5869), segment_t(5941, 5942), segment_t(6100, 6102), segment_t(6104, 6106), segment_t(6144, 6149), segment_t(6151, 6154), segment_t(6468, 6469), segment_t(6686, 6687), segment_t(6816, 6822), segment_t(6824, 6829), segment_t(6990, 6991), segment_t(7002, 7008), segment_t(7037, 7039), segment_t(7164, 7167), segment_t(7227, 7231), segment_t(7294, 7295), segment_t(7360, 7367), segment_t(7379, 7379), segment_t(8214, 8215), segment_t(8224, 8231), segment_t(8240, 8248), segment_t(8251, 8254), segment_t(8257, 8259), segment_t(8263, 8273), segment_t(8275, 8275), segment_t(8277, 8286), segment_t(11513, 11516), segment_t(11518, 11519), segment_t(11632, 11632), segment_t(11776, 11777), segment_t(11782, 11784), segment_t(11787, 11787), segment_t(11790, 11798), segment_t(11800, 11801), segment_t(11803, 11803), segment_t(11806, 11807), segment_t(11818, 11822), segment_t(11824, 11833), segment_t(11836, 11839), segment_t(11841, 11841), segment_t(11843, 11855), segment_t(11858, 11860), segment_t(12289, 12291), segment_t(12349, 12349), segment_t(12539, 12539), segment_t(42238, 42239), segment_t(42509, 42511), segment_t(42611, 42611), segment_t(42622, 42622), segment_t(42738, 42743), segment_t(43124, 43127), segment_t(43214, 43215), segment_t(43256, 43258), segment_t(43260, 43260), segment_t(43310, 43311), segment_t(43359, 43359), segment_t(43457, 43469), segment_t(43486, 43487), segment_t(43612, 43615), segment_t(43742, 43743), segment_t(43760, 43761), segment_t(44011, 44011), segment_t(65040, 65046), segment_t(65049, 65049), segment_t(65072, 65072), segment_t(65093, 65094), segment_t(65097, 65100), segment_t(65104, 65106), segment_t(65108, 65111), segment_t(65119, 65121), segment_t(65128, 65128), segment_t(65130, 65131), segment_t(65281, 65283), segment_t(65285, 65287), segment_t(65290, 65290), segment_t(65292, 65292), segment_t(65294, 65295), segment_t(65306, 65307), segment_t(65311, 65312), segment_t(65340, 65340), segment_t(65377, 65377), segment_t(65380, 65381), segment_t(65792, 65794), segment_t(66463, 66463), segment_t(66512, 66512), segment_t(66927, 66927), segment_t(67671, 67671), segment_t(67871, 67871), segment_t(67903, 67903), segment_t(68176, 68184), segment_t(68223, 68223), segment_t(68336, 68342), segment_t(68409, 68415), segment_t(68505, 68508), segment_t(69328, 69328), segment_t(69461, 69465), segment_t(69510, 69513), segment_t(69703, 69709), segment_t(69819, 69820), segment_t(69822, 69825), segment_t(69952, 69955), segment_t(70004, 70005), segment_t(70085, 70088), segment_t(70093, 70093), segment_t(70107, 70107), segment_t(70109, 70111), segment_t(70200, 70205), segment_t(70313, 70313), segment_t(70612, 70613), segment_t(70615, 70616), segment_t(70731, 70735), segment_t(70746, 70747), segment_t(70749, 70749), segment_t(70854, 70854), segment_t(71105, 71127), segment_t(71233, 71235), segment_t(71264, 71276), segment_t(71353, 71353), segment_t(71484, 71486), segment_t(71739, 71739), segment_t(72004, 72006), segment_t(72162, 72162), segment_t(72255, 72262), segment_t(72346, 72348), segment_t(72350, 72354), segment_t(72448, 72457), segment_t(72673, 72673), segment_t(72769, 72773), segment_t(72816, 72817), segment_t(73463, 73464), segment_t(73539, 73551), segment_t(73727, 73727), segment_t(74864, 74868), segment_t(77809, 77810), segment_t(92782, 92783), segment_t(92917, 92917), segment_t(92983, 92987), segment_t(92996, 92996), segment_t(93549, 93551), segment_t(93847, 93850), segment_t(94178, 94178), segment_t(113823, 113823), segment_t(121479, 121483), segment_t(124415, 124415), segment_t(125278, 125279)]
type(segment_t), public, parameter :: unicode_gc_Ps(*) = [segment_t(40, 40), segment_t(91, 91), segment_t(123, 123), segment_t(3898, 3898), segment_t(3900, 3900), segment_t(5787, 5787), segment_t(8218, 8218), segment_t(8222, 8222), segment_t(8261, 8261), segment_t(8317, 8317), segment_t(8333, 8333), segment_t(8968, 8968), segment_t(8970, 8970), segment_t(9001, 9001), segment_t(10088, 10088), segment_t(10090, 10090), segment_t(10092, 10092), segment_t(10094, 10094), segment_t(10096, 10096), segment_t(10098, 10098), segment_t(10100, 10100), segment_t(10181, 10181), segment_t(10214, 10214), segment_t(10216, 10216), segment_t(10218, 10218), segment_t(10220, 10220), segment_t(10222, 10222), segment_t(10627, 10627), segment_t(10629, 10629), segment_t(10631, 10631), segment_t(10633, 10633), segment_t(10635, 10635), segment_t(10637, 10637), segment_t(10639, 10639), segment_t(10641, 10641), segment_t(10643, 10643), segment_t(10645, 10645), segment_t(10647, 10647), segment_t(10712, 10712), segment_t(10714, 10714), segment_t(10748, 10748), segment_t(11810, 11810), segment_t(11812, 11812), segment_t(11814, 11814), segment_t(11816, 11816), segment_t(11842, 11842), segment_t(11861, 11861), segment_t(11863, 11863), segment_t(11865, 11865), segment_t(11867, 11867), segment_t(12296, 12296), segment_t(12298, 12298), segment_t(12300, 12300), segment_t(12302, 12302), segment_t(12304, 12304), segment_t(12308, 12308), segment_t(12310, 12310), segment_t(12312, 12312), segment_t(12314, 12314), segment_t(12317, 12317), segment_t(64831, 64831), segment_t(65047, 65047), segment_t(65077, 65077), segment_t(65079, 65079), segment_t(65081, 65081), segment_t(65083, 65083), segment_t(65085, 65085), segment_t(65087, 65087), segment_t(65089, 65089), segment_t(65091, 65091), segment_t(65095, 65095), segment_t(65113, 65113), segment_t(65115, 65115), segment_t(65117, 65117), segment_t(65288, 65288), segment_t(65339, 65339), segment_t(65371, 65371), segment_t(65375, 65375), segment_t(65378, 65378)]
type(segment_t), public, parameter :: unicode_gc_Sc(*) = [segment_t(36, 36), segment_t(162, 165), segment_t(1423, 1423), segment_t(1547, 1547), segment_t(2046, 2047), segment_t(2546, 2547), segment_t(2555, 2555), segment_t(2801, 2801), segment_t(3065, 3065), segment_t(3647, 3647), segment_t(6107, 6107), segment_t(8352, 8385), segment_t(43064, 43064), segment_t(65020, 65020), segment_t(65129, 65129), segment_t(65284, 65284), segment_t(65504, 65505), segment_t(65509, 65510), segment_t(73693, 73696), segment_t(123647, 123647), segment_t(126128, 126128)]
type(segment_t), public, parameter :: unicode_gc_Sk(*) = [segment_t(94, 94), segment_t(96, 96), segment_t(168, 168), segment_t(175, 175), segment_t(180, 180), segment_t(184, 184), segment_t(706, 709), segment_t(722, 735), segment_t(741, 747), segment_t(749, 749), segment_t(751, 767), segment_t(885, 885), segment_t(900, 901), segment_t(2184, 2184), segment_t(8125, 8125), segment_t(8127, 8129), segment_t(8141, 8143), segment_t(8157, 8159), segment_t(8173, 8175), segment_t(8189, 8190), segment_t(12443, 12444), segment_t(42752, 42774), segment_t(42784, 42785), segment_t(42889, 42890), segment_t(43867, 43867), segment_t(43882, 43883), segment_t(64434, 64450), segment_t(65342, 65342), segment_t(65344, 65344), segment_t(65507, 65507), segment_t(127995, 127999)]
type(segment_t), public, parameter :: unicode_gc_Sm(*) = [segment_t(43, 43), segment_t(60, 62), segment_t(124, 124), segment_t(126, 126), segment_t(172, 172), segment_t(177, 177), segment_t(215, 215), segment_t(247, 247), segment_t(1014, 1014), segment_t(1542, 1544), segment_t(8260, 8260), segment_t(8274, 8274), segment_t(8314, 8316), segment_t(8330, 8332), segment_t(8472, 8472), segment_t(8512, 8516), segment_t(8523, 8523), segment_t(8592, 8596), segment_t(8602, 8603), segment_t(8608, 8608), segment_t(8611, 8611), segment_t(8614, 8614), segment_t(8622, 8622), segment_t(8654, 8655), segment_t(8658, 8658), segment_t(8660, 8660), segment_t(8692, 8959), segment_t(8992, 8993), segment_t(9084, 9084), segment_t(9115, 9139), segment_t(9180, 9185), segment_t(9655, 9655), segment_t(9665, 9665), segment_t(9720, 9727), segment_t(9839, 9839), segment_t(10176, 10180), segment_t(10183, 10213), segment_t(10224, 10239), segment_t(10496, 10626), segment_t(10649, 10711), segment_t(10716, 10747), segment_t(10750, 11007), segment_t(11056, 11076), segment_t(11079, 11084), segment_t(64297, 64297), segment_t(65122, 65122), segment_t(65124, 65126), segment_t(65291, 65291), segment_t(65308, 65310), segment_t(65372, 65372), segment_t(65374, 65374), segment_t(65506, 65506), segment_t(65513, 65516), segment_t(69006, 69007), segment_t(118512, 118512), segment_t(120513, 120513), segment_t(120539, 120539), segment_t(120571, 120571), segment_t(120597, 120597), segment_t(120629, 120629), segment_t(120655, 120655), segment_t(120687, 120687), segment_t(120713, 120713), segment_t(120745, 120745), segment_t(120771, 120771), segment_t(126704, 126705), segment_t(129232, 129240)]
type(segment_t), public, parameter :: unicode_gc_So(*) = [segment_t(166, 166), segment_t(169, 169), segment_t(174, 174), segment_t(176, 176), segment_t(1154, 1154), segment_t(1421, 1422), segment_t(1550, 1551), segment_t(1758, 1758), segment_t(1769, 1769), segment_t(1789, 1790), segment_t(2038, 2038), segment_t(2554, 2554), segment_t(2928, 2928), segment_t(3059, 3064), segment_t(3066, 3066), segment_t(3199, 3199), segment_t(3407, 3407), segment_t(3449, 3449), segment_t(3841, 3843), segment_t(3859, 3859), segment_t(3861, 3863), segment_t(3866, 3871), segment_t(3892, 3892), segment_t(3894, 3894), segment_t(3896, 3896), segment_t(4030, 4037), segment_t(4039, 4044), segment_t(4046, 4047), segment_t(4053, 4056), segment_t(4254, 4255), segment_t(5008, 5017), segment_t(5741, 5741), segment_t(6464, 6464), segment_t(6622, 6655), segment_t(7009, 7018), segment_t(7028, 7036), segment_t(8448, 8449), segment_t(8451, 8454), segment_t(8456, 8457), segment_t(8468, 8468), segment_t(8470, 8471), segment_t(8478, 8483), segment_t(8485, 8485), segment_t(8487, 8487), segment_t(8489, 8489), segment_t(8494, 8494), segment_t(8506, 8507), segment_t(8522, 8522), segment_t(8524, 8525), segment_t(8527, 8527), segment_t(8586, 8587), segment_t(8597, 8601), segment_t(8604, 8607), segment_t(8609, 8610), segment_t(8612, 8613), segment_t(8615, 8621), segment_t(8623, 8653), segment_t(8656, 8657), segment_t(8659, 8659), segment_t(8661, 8691), segment_t(8960, 8967), segment_t(8972, 8991), segment_t(8994, 9000), segment_t(9003, 9083), segment_t(9085, 9114), segment_t(9140, 9179), segment_t(9186, 9257), segment_t(9280, 9290), segment_t(9372, 9449), segment_t(9472, 9654), segment_t(9656, 9664), segment_t(9666, 9719), segment_t(9728, 9838), segment_t(9840, 10087), segment_t(10132, 10175), segment_t(10240, 10495), segment_t(11008, 11055), segment_t(11077, 11078), segment_t(11085, 11123), segment_t(11126, 11263), segment_t(11493, 11498), segment_t(11856, 11857), segment_t(11904, 11929), segment_t(11931, 12019), segment_t(12032, 12245), segment_t(12272, 12287), segment_t(12292, 12292), segment_t(12306, 12307), segment_t(12320, 12320), segment_t(12342, 12343), segment_t(12350, 12351), segment_t(12688, 12689), segment_t(12694, 12703), segment_t(12736, 12773), segment_t(12783, 12783), segment_t(12800, 12830), segment_t(12842, 12871), segment_t(12880, 12880), segment_t(12896, 12927), segment_t(12938, 12976), segment_t(12992, 13311), segment_t(19904, 19967), segment_t(42128, 42182), segment_t(43048, 43051), segment_t(43062, 43063), segment_t(43065, 43065), segment_t(43639, 43641), segment_t(64451, 64466), segment_t(64832, 64847), segment_t(64912, 64913), segment_t(64968, 64975), segment_t(65021, 65023), segment_t(65508, 65508), segment_t(65512, 65512), segment_t(65517, 65518), segment_t(65532, 65533), segment_t(65847, 65855), segment_t(65913, 65929), segment_t(65932, 65934), segment_t(65936, 65948), segment_t(65952, 65952), segment_t(66000, 66044), segment_t(67703, 67704), segment_t(68296, 68296), segment_t(69329, 69336), segment_t(71487, 71487), segment_t(73685, 73692), segment_t(73697, 73713), segment_t(92988, 92991), segment_t(92997, 92997), segment_t(113820, 113820), segment_t(117760, 117999), segment_t(118010, 118012), segment_t(118016, 118451), segment_t(118458, 118480), segment_t(118496, 118511), segment_t(118608, 118723), segment_t(118784, 119029), segment_t(119040, 119078), segment_t(119081, 119140), segment_t(119146, 119148), segment_t(119171, 119172), segment_t(119180, 119209), segment_t(119214, 119274), segment_t(119296, 119361), segment_t(119365, 119365), segment_t(119552, 119638), segment_t(120832, 121343), segment_t(121399, 121402), segment_t(121453, 121460), segment_t(121462, 121475), segment_t(121477, 121478), segment_t(123215, 123215), segment_t(126124, 126124), segment_t(126254, 126254), segment_t(126976, 127019), segment_t(127024, 127123), segment_t(127136, 127150), segment_t(127153, 127167), segment_t(127169, 127183), segment_t(127185, 127221), segment_t(127245, 127405), segment_t(127462, 127490), segment_t(127504, 127547), segment_t(127552, 127560), segment_t(127568, 127569), segment_t(127584, 127589), segment_t(127744, 127994), segment_t(128000, 128728), segment_t(128732, 128748), segment_t(128752, 128764), segment_t(128768, 128985), segment_t(128992, 129003), segment_t(129008, 129008), segment_t(129024, 129035), segment_t(129040, 129095), segment_t(129104, 129113), segment_t(129120, 129159), segment_t(129168, 129197), segment_t(129200, 129211), segment_t(129216, 129217), segment_t(129280, 129623), segment_t(129632, 129645), segment_t(129648, 129660), segment_t(129664, 129674), segment_t(129678, 129734), segment_t(129736, 129736), segment_t(129741, 129756), segment_t(129759, 129770), segment_t(129775, 129784), segment_t(129792, 129938), segment_t(129940, 130031), segment_t(130042, 130042)]
type(segment_t), public, parameter :: unicode_gc_Zl(*) = [segment_t(8232, 8232)]
type(segment_t), public, parameter :: unicode_gc_Zp(*) = [segment_t(8233, 8233)]
type(segment_t), public, parameter :: unicode_gc_Zs(*) = [segment_t(32, 32), segment_t(160, 160), segment_t(5760, 5760), segment_t(8192, 8202), segment_t(8239, 8239), segment_t(8287, 8287), segment_t(12288, 12288)]