1 /* java-chartables.h -- Character tables for java.lang.Character -*- c++ -*-
2 Copyright (C) 2002 Free Software Foundation, Inc.
3 *** This file is generated by scripts/MakeCharTables.java ***
5 This file is part of GNU Classpath.
7 GNU Classpath is free software; you can redistribute it and/or modify
8 it under the terms of the GNU General Public License as published by
9 the Free Software Foundation; either version 2, or (at your option)
12 GNU Classpath is distributed in the hope that it will be useful, but
13 WITHOUT ANY WARRANTY; without even the implied warranty of
14 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15 General Public License for more details.
17 You should have received a copy of the GNU General Public License
18 along with GNU Classpath; see the file COPYING. If not, write to the
19 Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
22 Linking this library statically or dynamically with other modules is
23 making a combined work based on this library. Thus, the terms and
24 conditions of the GNU General Public License cover the whole
27 As a special exception, the copyright holders of this library give you
28 permission to link this library with independent modules to produce an
29 executable, regardless of the license terms of these independent
30 modules, and to copy and distribute the resulting executable under
31 terms of your choice, provided that you also meet, for each linked
32 independent module, the terms and conditions of the license of that
33 module. An independent module is a module which is not derived from
34 or based on this library. If you modify this library, you may extend
35 this exception to your version of the library, but you are not
36 obligated to do so. If you do not wish to do so, delete this
37 exception statement from your version. */
39 #ifndef __JAVA_CHARTABLES_H__
40 #define __JAVA_CHARTABLES_H__
42 // These tables are automatically generated by scripts/MakeCharTables.java.
43 // This is in turn parsing gnu.java.lang.CharData, which is generated by
44 // scripts/unicode-muncher.pl. The Unicode data comes from
45 // www.unicode.org; this header is based on
46 // gnu/gcj/convert/UnicodeData-3.0.0.txt. JDK 1.4 uses Unicode version 3.0.0.
47 // DO NOT EDIT the tables. Instead, fix the upstream scripts and run
50 // The data is stored in C style arrays of the appropriate CNI types, to
51 // guarantee that the data is constant and non-relocatable. The field
52 // <code>blocks</code> stores the offset of a block of 2<supSHIFT</sup>
53 // characters within <code>data</code>. The data field, in turn, stores
54 // information about each character in the low order bits, and an offset
55 // into the attribute tables <code>upper</code>, <code>lower</code>,
56 // <code>numValue</code>, and <code>direction</code>. Notice that the
57 // attribute tables are much smaller than 0xffff entries; as many characters
58 // in Unicode share common attributes. Finally, there is a listing for
59 // <code>title</code> exceptions (most characters just have the same title
60 // case as upper case).
62 // This file should only be included by natCharacter.cc
65 * The character shift amount to look up the block offset. In other words,
66 * <code>(char) (blocks[ch >> SHIFT] + ch)</code> is the index where
67 * <code>ch</code> is described in <code>data</code>.
72 * The mapping of character blocks to their location in <code>data</code>.
73 * Each entry has been adjusted so that a modulo 16 sum with the desired
74 * character gives the actual index into <code>data</code>.
76 static const jchar blocks
[] = {
77 450, 450, 449, 300, 299, 416, 504, 638, 513, 656,
78 439, 713, 343, 681, 575, 440, 257, 599, 761, 761,
79 880, 867, 65167, 830, 65413, 65381, 64949, 64929, 65469, 702,
80 65470, 65513, 65192, 65326, 559, 65185, 65437, 65121, 65449, 64288,
81 195, 269, 254, 64353, 64346, 261, 259, 248, 65163, 547,
82 600, 449, 502, 470, 65249, 547, 64938, 64341, 355, 65123,
83 246, 253, 65027, 64995, 64963, 64931, 64899, 64867, 64835, 64803,
84 64771, 64739, 95, 74, 165, 307, 65032, 93, 335, 418,
85 63081, 291, 290, 63681, 65104, 258, 257, 64067, 64648, 65191,
86 192, 64673, 64399, 62589, 153, 64273, 65050, 64802, 64297, 53,
87 62393, 65105, 64712, 65461, 62265, 64146, 65413, 65333, 64078, 63334,
88 65317, 64209, 64355, 64564, 65247, 63331, 64682, 64130, 64953, 63203,
89 65087, 64705, 65097, 63467, 63247, 62184, 64921, 62947, 63844, 64508,
90 64913, 62819, 62787, 62524, 62518, 61291, 63588, 63556, 64594, 63492,
91 63460, 64521, 63396, 61084, 64394, 63300, 63476, 63236, 63428, 63372,
92 62571, 62668, 63276, 63044, 62459, 63047, 62019, 62916, 62884, 60577,
93 62819, 62788, 62756, 62724, 62692, 62660, 62628, 62596, 62564, 62532,
94 62500, 62468, 62436, 62404, 62372, 62340, 62308, 62276, 62244, 62083,
95 63345, 62148, 62116, 63281, 61123, 61091, 61059, 61027, 61924, 62620,
96 62783, 60745, 62161, 61764, 59629, 59422, 61668, 62865, 60675, 60643,
97 60611, 60579, 60547, 60515, 60483, 60451, 60419, 60387, 60355, 60323,
98 60291, 60259, 60227, 60195, 60163, 60131, 60099, 60067, 60035, 60003,
99 59971, 59939, 59907, 59875, 59843, 59811, 59779, 59747, 59715, 59683,
100 59651, 59619, 59587, 59555, 59523, 59491, 59459, 59427, 59395, 59363,
101 58625, 58593, 58561, 58529, 61393, 58465, 58433, 58407, 61313, 61265,
102 61265, 61265, 61265, 61249, 57773, 61248, 61248, 61248, 57824, 58239,
103 61184, 59859, 60389, 58591, 61134, 61279, 58512, 61247, 61155, 61302,
104 61038, 61290, 61303, 61298, 61067, 61389, 61047, 60959, 60961, 61279,
105 61399, 61072, 61389, 61403, 61283, 57891, 57859, 57827, 60709, 60727,
106 60691, 61206, 61186, 60737, 60727, 60717, 60453, 60421, 60389, 60357,
107 60360, 60022, 60259, 60262, 59824, 60165, 60133, 59875, 57155, 57123,
108 57091, 57059, 59658, 59933, 60242, 60233, 60223, 60127, 56835, 56803,
109 59685, 59653, 59621, 59589, 59557, 59525, 59493, 59461, 56515, 56483,
110 56451, 56419, 56387, 56355, 56323, 56291, 56259, 56227, 56195, 56163,
111 56131, 56099, 56067, 56035, 56003, 55971, 55939, 55907, 55875, 55843,
112 55811, 55779, 55747, 55715, 55683, 55651, 55619, 55587, 55555, 55523,
113 55491, 55459, 55427, 55395, 55363, 55331, 55299, 55267, 55235, 55203,
114 55171, 55139, 58027, 57989, 57957, 57962, 57893, 57861, 57829, 57797,
115 57765, 57733, 57736, 56713, 58274, 57293, 55587, 55556, 58178, 55491,
116 55460, 56529, 56492, 54907, 55332, 55300, 57954, 52958, 54275, 54243,
117 57616, 57571, 57797, 57521, 57521, 57688, 57105, 57390, 57357, 57325,
118 57293, 56934, 57229, 57197, 57167, 57134, 54628, 54596, 54564, 54532,
119 54500, 54468, 54436, 54404, 54372, 54340, 54308, 54276, 54244, 54212,
120 54180, 54148, 54116, 54084, 54052, 54020, 53988, 53956, 53924, 53892,
121 53860, 53828, 53796, 53764, 53732, 53700, 53668, 53636, 53604, 53572,
122 53540, 53508, 53476, 53444, 53412, 53380, 53348, 53316, 53284, 53252,
123 53220, 53188, 53156, 53124, 53092, 53060, 53028, 52996, 52964, 52932,
124 52900, 52868, 52836, 52804, 52772, 52740, 52708, 52676, 52644, 52612,
125 52580, 52548, 52516, 52484, 52452, 52420, 52388, 52356, 52324, 52292,
126 52260, 52228, 52196, 52164, 52132, 52100, 52068, 52036, 52004, 51972,
127 51940, 51908, 51876, 51844, 51812, 51780, 51748, 51716, 51684, 51652,
128 51620, 51588, 51556, 51524, 51492, 51460, 51428, 51396, 51364, 51332,
129 51300, 51268, 51236, 51204, 51172, 51140, 51108, 51076, 51044, 51012,
130 50980, 50948, 50916, 50884, 50852, 50820, 50788, 50756, 50724, 50692,
131 50660, 50628, 50596, 50564, 50532, 50500, 50468, 50436, 50404, 50372,
132 50340, 50308, 50276, 50244, 50212, 50180, 50148, 50116, 50084, 50052,
133 50020, 49988, 49956, 49924, 49892, 49860, 49828, 49796, 49764, 49732,
134 49700, 49668, 49636, 49604, 49572, 49540, 49508, 49476, 49444, 49412,
135 49380, 49348, 49316, 49284, 49252, 49220, 49188, 49156, 49124, 49092,
136 49060, 49028, 48996, 48964, 48932, 48900, 48868, 48836, 48804, 48772,
137 48740, 48708, 48676, 48644, 48612, 48580, 48548, 48516, 48484, 48452,
138 48420, 48388, 48356, 48324, 48292, 48260, 48228, 48196, 48164, 48132,
139 48100, 45792, 47107, 47075, 47972, 47940, 47908, 47876, 47844, 47812,
140 47780, 47748, 47716, 47684, 47652, 47620, 47588, 47556, 47524, 47492,
141 47460, 47428, 47396, 47364, 47332, 47300, 47268, 47236, 47204, 47172,
142 47140, 47108, 47076, 47044, 47012, 46980, 46948, 46916, 46884, 46852,
143 46820, 46788, 46756, 46724, 46692, 46660, 46628, 46596, 46564, 46532,
144 46500, 46468, 46436, 46404, 46372, 46340, 46308, 46276, 46244, 46212,
145 46180, 46148, 46116, 46084, 46052, 46020, 45988, 45956, 45924, 45892,
146 45860, 45828, 45796, 45764, 45732, 45700, 45668, 45636, 45604, 45572,
147 45540, 45508, 45476, 45444, 45412, 45380, 45348, 45316, 45284, 45252,
148 45220, 45188, 45156, 45124, 45092, 45060, 45028, 44996, 44964, 44932,
149 44900, 44868, 44836, 44804, 44772, 44740, 44708, 44676, 44644, 44612,
150 44580, 44548, 44516, 44484, 44452, 44420, 44388, 44356, 44324, 44292,
151 44260, 44228, 44196, 44164, 44132, 44100, 44068, 44036, 44004, 43972,
152 43940, 43908, 43876, 43844, 43812, 43780, 43748, 43716, 43684, 43652,
153 43620, 43588, 43556, 43524, 43492, 43460, 43428, 43396, 43364, 43332,
154 43300, 43268, 43236, 43204, 43172, 43140, 43108, 43076, 43044, 43012,
155 42980, 42948, 42916, 42884, 42852, 42820, 42788, 42756, 42724, 42692,
156 42660, 42628, 42596, 42564, 42532, 42500, 42468, 42436, 42404, 42372,
157 42340, 42308, 42276, 42244, 42212, 42180, 42148, 42116, 42084, 42052,
158 42020, 41988, 41956, 41924, 41892, 41860, 41828, 41796, 41764, 41732,
159 41700, 41668, 41636, 41604, 41572, 41540, 41508, 41476, 41444, 41412,
160 41380, 41348, 41316, 41284, 41252, 41220, 41188, 41156, 41124, 41092,
161 41060, 41028, 40996, 40964, 40932, 40900, 40868, 40836, 40804, 40772,
162 40740, 40708, 40676, 40644, 40612, 40580, 40548, 40516, 40484, 40452,
163 40420, 40388, 40356, 40324, 40292, 40260, 40228, 40196, 40164, 40132,
164 40100, 40068, 40036, 40004, 39972, 39940, 39908, 39876, 39844, 39812,
165 39780, 39748, 39716, 39684, 39652, 39620, 39588, 39556, 39524, 39492,
166 39460, 39428, 39396, 39364, 39332, 39300, 39268, 39236, 39204, 39172,
167 39140, 39108, 39076, 39044, 39012, 38980, 38948, 38916, 38884, 38852,
168 38820, 38788, 38756, 38724, 38692, 38660, 38628, 38596, 38564, 38532,
169 38500, 38468, 38436, 38404, 38372, 38340, 38308, 38276, 38244, 38212,
170 38180, 38148, 38116, 38084, 38052, 38020, 37988, 37956, 37924, 37892,
171 37860, 37828, 37796, 37764, 37732, 37700, 37668, 37636, 37604, 37572,
172 37540, 37508, 37476, 37444, 37412, 37380, 37348, 37316, 37284, 37252,
173 37220, 37188, 37156, 37124, 37092, 37060, 37028, 36996, 36964, 36932,
174 36900, 36868, 36836, 36804, 36772, 36740, 36708, 36676, 36644, 36612,
175 36580, 36548, 36516, 36484, 36452, 36420, 36388, 36356, 36324, 36292,
176 36260, 36228, 36196, 36164, 36132, 36100, 36068, 36036, 36004, 35972,
177 35940, 35908, 35876, 35844, 35812, 35780, 35748, 35716, 35684, 35652,
178 35620, 35588, 35556, 35524, 35492, 35460, 35428, 35396, 35364, 35332,
179 35300, 35268, 35236, 35204, 35172, 35140, 35108, 35076, 35044, 35012,
180 34980, 34948, 34916, 34884, 34852, 34820, 34788, 34756, 34724, 34692,
181 34660, 34628, 34596, 34564, 34532, 34500, 34468, 34436, 34404, 34372,
182 34340, 34308, 34276, 34244, 34212, 34180, 34148, 34116, 34084, 34052,
183 34020, 33988, 33956, 33924, 33892, 33860, 33828, 33796, 33764, 33732,
184 33700, 33668, 33636, 33604, 33572, 33540, 33508, 33476, 33444, 33412,
185 33380, 33348, 33316, 33284, 33252, 33220, 33188, 33156, 33124, 33092,
186 33060, 33028, 32996, 32964, 32932, 32900, 32868, 32836, 32804, 32772,
187 32740, 32708, 32676, 32644, 32612, 32580, 32548, 32516, 32484, 32452,
188 32420, 32388, 32356, 32324, 32292, 32260, 32228, 32196, 32164, 32132,
189 32100, 32068, 32036, 32004, 31972, 31940, 31908, 31876, 31844, 31812,
190 31780, 31748, 31716, 31684, 31652, 31620, 31588, 31556, 31524, 31492,
191 31460, 31428, 31396, 31364, 31332, 31300, 31268, 31236, 31204, 31172,
192 31140, 31108, 31076, 31044, 31012, 30980, 30948, 30916, 30884, 30852,
193 30820, 30788, 30756, 30724, 30692, 30660, 30628, 30596, 30564, 30532,
194 30500, 30468, 30436, 30404, 30372, 30340, 30308, 30276, 30244, 30212,
195 30180, 30148, 30116, 30084, 30052, 30020, 29988, 29956, 29924, 29892,
196 29860, 29828, 29796, 29764, 29732, 29700, 29668, 29636, 29604, 29572,
197 29540, 29508, 29476, 29444, 29412, 29380, 29348, 29316, 29284, 29252,
198 29220, 29188, 29156, 29124, 29092, 29060, 29028, 28996, 28964, 28932,
199 28900, 28868, 28836, 28804, 28772, 28740, 28708, 28676, 28644, 28612,
200 28580, 28548, 28516, 28484, 28452, 28420, 28388, 28356, 28324, 28292,
201 28260, 28228, 28196, 28164, 28132, 28100, 28068, 28036, 28004, 27972,
202 27940, 27908, 27876, 27844, 27812, 27780, 27748, 27716, 27684, 27652,
203 27620, 27588, 27556, 27524, 27492, 27460, 27428, 27396, 27364, 27332,
204 27300, 27268, 27236, 27204, 27172, 27140, 27108, 24816, 26115, 26083,
205 26980, 26948, 26916, 26884, 26852, 26820, 26788, 26756, 26724, 26692,
206 26660, 26628, 26596, 26564, 26532, 26500, 26468, 26436, 26404, 26372,
207 26340, 26308, 26276, 26244, 26212, 26180, 26148, 26116, 26084, 26052,
208 26020, 25988, 25956, 25924, 25892, 25860, 27424, 28123, 28310, 24803,
209 24771, 24739, 24707, 24675, 24643, 24611, 24579, 24547, 24515, 24483,
210 24451, 24419, 24387, 24355, 24323, 24291, 24259, 24227, 24195, 24163,
211 24131, 24099, 24067, 24035, 24003, 23971, 23939, 23907, 23875, 23843,
212 23811, 23779, 23747, 23715, 23683, 23651, 23619, 23587, 23555, 23523,
213 23491, 23459, 23427, 23395, 23363, 23331, 23299, 23267, 23235, 23203,
214 23171, 23139, 23107, 23075, 23043, 23011, 23908, 23876, 23844, 23812,
215 23780, 23748, 23716, 23684, 23652, 23620, 23588, 23556, 23524, 23492,
216 23460, 23428, 23396, 23364, 23332, 23300, 23268, 23236, 23204, 23172,
217 23140, 23108, 23076, 23044, 23012, 22980, 22948, 22916, 22884, 22852,
218 22820, 22788, 22756, 22724, 22692, 22660, 22628, 22596, 22564, 22532,
219 22500, 22468, 22436, 22404, 22372, 22340, 22308, 22276, 22244, 22212,
220 22180, 22148, 22116, 22084, 22052, 22020, 21988, 21956, 21924, 21892,
221 21860, 21828, 21796, 21764, 21732, 21700, 21668, 21636, 21604, 21572,
222 21540, 21508, 21476, 21444, 21412, 21380, 21348, 21316, 21284, 21252,
223 21220, 21188, 21156, 21124, 21092, 21060, 21028, 20996, 20964, 20932,
224 20900, 20868, 20836, 20804, 20772, 20740, 20708, 20676, 20644, 20612,
225 20580, 20548, 20516, 20484, 20452, 20420, 20388, 20356, 20324, 20292,
226 20260, 20228, 20196, 20164, 20132, 20100, 20068, 20036, 20004, 19972,
227 19940, 19908, 19876, 19844, 19812, 19780, 19748, 19716, 19684, 19652,
228 19620, 19588, 19556, 19524, 19492, 19460, 19428, 19396, 19364, 19332,
229 19300, 19268, 19236, 19204, 19172, 19140, 19108, 19076, 19044, 19012,
230 18980, 18948, 18916, 18884, 18852, 18820, 18788, 18756, 18724, 18692,
231 18660, 18628, 18596, 18564, 18532, 18500, 18468, 18436, 18404, 18372,
232 18340, 18308, 18276, 18244, 18212, 18180, 18148, 18116, 18084, 18052,
233 18020, 17988, 17956, 17924, 17892, 17860, 17828, 17796, 17764, 17732,
234 17700, 17668, 17636, 17604, 17572, 17540, 17508, 17476, 17444, 17412,
235 17380, 17348, 17316, 17284, 17252, 17220, 17188, 17156, 17124, 17092,
236 17060, 17028, 16996, 16964, 16932, 16900, 16868, 16836, 16804, 16772,
237 16740, 16708, 16676, 16644, 16612, 16580, 16548, 16516, 16484, 16452,
238 16420, 16388, 16356, 16324, 16292, 16260, 16228, 16196, 16164, 16132,
239 16100, 16068, 16036, 16004, 15972, 15940, 15908, 15876, 15844, 15812,
240 15780, 15748, 15716, 15684, 15652, 15620, 15588, 15556, 15524, 15492,
241 15460, 15428, 15396, 15364, 15332, 15300, 15268, 15236, 15204, 15172,
242 15140, 15108, 15076, 15044, 15012, 14980, 14948, 14916, 14884, 14852,
243 14820, 14788, 14756, 14724, 14692, 14660, 14628, 14596, 14564, 14532,
244 14500, 14468, 14436, 14404, 14372, 14340, 14308, 14276, 14244, 14212,
245 14180, 14148, 14116, 14084, 14052, 14020, 13988, 13956, 13924, 13892,
246 13860, 13828, 13796, 13764, 13732, 13700, 13668, 13636, 13604, 13572,
247 13540, 13508, 13476, 13444, 13412, 13380, 13348, 13316, 13284, 13252,
248 13220, 13188, 13156, 13124, 13092, 13060, 13028, 12996, 12964, 12932,
249 12900, 12868, 12836, 12804, 12772, 10482, 11779, 11747, 15397, 15365,
250 15333, 15301, 15269, 15237, 15205, 15173, 15141, 15109, 15077, 15045,
251 15013, 14981, 14949, 14917, 14885, 14853, 14821, 14789, 14757, 14725,
252 14693, 14661, 14629, 14597, 14565, 14533, 14501, 14469, 14437, 14405,
253 14373, 14341, 14309, 14277, 14245, 14213, 14181, 14149, 14117, 14085,
254 14053, 14021, 13989, 13957, 13925, 13893, 13861, 13829, 13797, 13765,
255 13733, 13701, 13669, 13637, 13605, 13573, 13541, 13509, 13477, 13445,
256 13413, 13381, 13381, 13349, 13317, 13285, 13253, 13221, 13189, 13157,
257 13125, 13093, 13061, 13029, 12997, 12965, 12933, 12901, 12869, 12837,
258 12805, 12773, 12741, 12709, 12677, 12645, 12613, 12581, 12549, 12517,
259 12485, 12453, 12421, 12389, 12357, 12325, 12293, 12261, 12229, 12197,
260 12165, 12133, 12101, 12069, 12037, 12005, 11973, 11941, 11909, 11877,
261 11845, 11813, 11781, 11749, 11717, 11685, 11653, 11621, 11589, 11557,
262 11525, 11493, 11461, 11429, 11397, 11365, 11333, 11301, 11269, 11237,
263 11205, 11173, 11141, 11109, 11077, 11045, 11013, 10981, 10949, 10917,
264 10885, 10853, 10821, 10789, 10757, 10725, 10693, 10661, 10629, 10597,
265 10565, 10533, 10501, 10469, 10437, 10405, 10373, 10341, 10309, 10277,
266 10245, 10213, 10181, 10149, 10117, 10085, 10053, 10021, 9989, 9957,
267 9925, 9893, 9861, 9829, 9797, 9765, 9733, 9701, 9669, 9637,
268 9605, 9573, 9541, 9509, 9477, 9445, 9413, 9381, 9349, 9317,
269 9285, 9253, 9221, 9189, 9157, 9125, 9093, 9061, 9029, 8997,
270 8965, 8933, 8901, 8869, 8837, 8805, 8773, 8741, 8709, 8677,
271 8645, 8613, 8581, 8549, 8517, 8485, 8453, 8421, 8389, 8357,
272 8325, 8293, 8261, 8229, 8197, 8165, 8133, 8101, 8069, 8037,
273 8005, 7973, 7941, 7909, 7877, 7845, 7813, 7781, 7749, 7717,
274 7685, 7653, 7621, 7589, 7557, 7525, 7493, 7461, 7429, 7397,
275 7365, 7333, 7301, 7269, 7237, 7205, 7173, 7141, 7109, 7077,
276 7045, 7013, 4196, 4164, 4132, 4100, 4068, 4036, 4004, 3972,
277 3940, 1640, 2947, 2915, 2883, 2851, 2819, 2787, 2674, 6469,
278 2641, 3350, 3318, 3244, 3235, 3222, 3190, 3158, 3126, 3094,
279 3062, 3030, 2998, 2966, 2934, 2904, 2854, 2838, 2738, 2774,
280 2710, 706, 1987, 5733, 5729, 1023, 2550, 2518, 2486, 1500,
281 2994, 5537, 4032, 448, 433, 2501, 2086, 4735,
283 /** Length of blocks. */
284 static const int blocks_length
= 2048;
287 * Information about each character. The low order 5 bits form the
288 * character type, the next bit is a flag for non-breaking spaces, and the
289 * next bit is a flag for mirrored directionality. The high order 9 bits
290 * form the offset into the attribute tables. Note that this limits the
291 * number of unique character attributes to 512, which is not a problem
292 * as of Unicode version 3.2.0, but may soon become one.
294 static const jchar data
[] = {
295 12161, 12290, 12161, 12290, 12161, 12290, 12161, 12290, 12161, 12290,
296 12161, 12290, 12161, 12290, 12161, 12290, 12161, 12290, 12161, 12290,
297 12161, 12290, 15872, 15872, 12161, 12290, 15872, 15872, 15872, 15872,
298 15872, 15872, 14853, 14853, 15872, 15872, 15872, 14853, 14853, 14853,
299 15872, 15872, 15872, 14853, 14853, 14853, 14853, 14853, 14853, 14853,
300 14853, 15872, 14853, 14853, 14853, 15872, 15872, 15872, 15872, 23176,
301 23176, 15872, 14853, 14853, 14853, 14853, 14853, 14853, 14853, 14853,
302 15872, 14853, 14853, 14853, 15872, 14853, 14853, 14853, 14853, 14853,
303 14853, 14853, 14853, 14853, 14853, 14853, 14853, 14853, 14853, 14853,
304 14853, 14853, 14853, 14853, 14853, 14853, 14853, 14853, 15872, 15872,
305 15872, 15872, 20632, 15872, 15872, 15872, 15872, 17798, 15872, 15872,
306 14853, 14853, 14853, 14853, 14853, 14853, 15872, 15872, 15872, 15872,
307 14853, 14853, 15872, 15872, 14853, 14853, 14853, 14853, 14853, 14853,
308 14853, 14853, 14853, 14853, 14853, 14853, 14853, 14853, 14853, 14853,
309 14853, 14853, 14853, 14853, 14853, 14853, 14853, 14853, 14853, 14853,
310 15872, 15872, 15872, 15872, 15872, 15872, 15872, 15872, 15872, 15872,
311 15872, 15872, 15872, 15872, 15872, 15872, 15872, 15872, 15872, 15872,
312 15872, 15872, 15872, 15872, 15872, 15872, 15872, 15872, 21253, 21253,
313 21253, 21253, 21253, 21253, 21253, 21253, 21253, 21253, 21253, 21253,
314 15872, 15872, 15872, 15872, 20738, 20738, 20738, 20738, 20738, 20738,
315 20738, 20738, 20738, 20738, 20738, 20738, 20738, 20738, 20738, 20738,
316 20738, 20738, 20738, 20738, 20738, 20738, 20738, 20738, 20738, 20738,
317 20738, 20738, 20738, 20738, 20738, 10498, 15872, 20632, 10772, 15872,
318 15872, 15872, 15872, 15872, 15872, 17798, 17798, 17798, 17798, 17798,
319 17798, 17798, 17798, 17798, 17798, 17798, 17798, 17798, 17798, 17798,
320 17926, 17798, 17798, 17798, 17798, 17798, 17798, 17798, 17798, 17798,
321 15872, 15872, 15872, 15872, 15872, 15872, 15872, 15872, 15872, 15872,
322 15872, 15872, 15872, 15872, 15872, 15872, 15872, 6683, 6683, 15872,
323 15872, 15872, 15872, 17668, 15872, 15872, 15872, 664, 15872, 664,
324 25877, 26006, 664, 6807, 14853, 14853, 14853, 14853, 14853, 14853,
325 14853, 14853, 14853, 14853, 17668, 14853, 14853, 14853, 14853, 14853,
326 14853, 14853, 14853, 14853, 14853, 14853, 14853, 14853, 14853, 14853,
327 14853, 14853, 14853, 14853, 14853, 14853, 14853, 14853, 14853, 14853,
328 14853, 14853, 14853, 14853, 14853, 17668, 17668, 6683, 6683, 6683,
329 6683, 6683, 6683, 6683, 6683, 6683, 6683, 6683, 6683, 6683,
330 6683, 17668, 17668, 6683, 6683, 6683, 6683, 6683, 6683, 6683,
331 6683, 6683, 6683, 6683, 6683, 6683, 6683, 10498, 28930, 10498,
332 15872, 10498, 10498, 29441, 29441, 29441, 29441, 29187, 6683, 6683,
333 6683, 27778, 27778, 10498, 10498, 15872, 15872, 10498, 10498, 27905,
334 27905, 29569, 29569, 15872, 6683, 6683, 6683, 6914, 7042, 7170,
335 7298, 7426, 7554, 7682, 7810, 7938, 8066, 8194, 8322, 8450,
336 8578, 8706, 8834, 8962, 9090, 9218, 9346, 9474, 9602, 9730,
337 9858, 9986, 10114, 1109, 3225, 1238, 3225, 15, 15, 15,
338 15, 15, 271, 15, 15, 15, 15, 15, 15, 15,
339 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
340 15, 15, 15, 15, 15, 15, 15, 15, 15, 143,
341 271, 143, 399, 271, 15, 15, 15, 15, 15, 15,
342 15, 15, 15, 15, 15, 15, 15, 15, 271, 271,
343 271, 143, 524, 664, 664, 792, 922, 792, 664, 664,
344 1109, 1238, 664, 1305, 1432, 1556, 1432, 1688, 1801, 1929,
345 2057, 2185, 2313, 2441, 2569, 2697, 2825, 2953, 1432, 664,
346 3161, 3225, 3161, 664, 3329, 3457, 3585, 3713, 3841, 3969,
347 4097, 4225, 4353, 4481, 4609, 4737, 4865, 4993, 5121, 5249,
348 5377, 5505, 5633, 5761, 5889, 6017, 6145, 6273, 6401, 6529,
349 1109, 664, 1238, 6683, 6807, 664, 664, 664, 3225, 1109,
350 1238, 15872, 664, 664, 664, 664, 664, 664, 15872, 15872,
351 15872, 15872, 15872, 15872, 15872, 15872, 15872, 15872, 15872, 15872,
352 15872, 15872, 15872, 15872, 15872, 15872, 10284, 664, 922, 922,
353 922, 922, 10396, 10396, 6683, 10396, 10498, 10717, 3225, 10772,
354 10396, 6683, 10908, 1305, 11019, 11147, 6683, 11266, 10396, 664,
355 6683, 11403, 10498, 11614, 11659, 11659, 11659, 664, 664, 1305,
356 1556, 3225, 3225, 3225, 15872, 664, 922, 792, 664, 15872,
357 15872, 15872, 15872, 21253, 21253, 21253, 15872, 21253, 15872, 21253,
358 21253, 21253, 21253, 21253, 21253, 21253, 21253, 21253, 21253, 21253,
359 21253, 21253, 15872, 15872, 15872, 17798, 17798, 17798, 17798, 17798,
360 17798, 17798, 17798, 17798, 17798, 17798, 17798, 17798, 17798, 17798,
361 17798, 17798, 17798, 17798, 17798, 17798, 17798, 17798, 17798, 17798,
362 17798, 17798, 17798, 17798, 17798, 17798, 17798, 15872, 20252, 20252,
363 20097, 20097, 20097, 20097, 20097, 20097, 20097, 20097, 20097, 20097,
364 20097, 20097, 20097, 20097, 20097, 20097, 11777, 11777, 11777, 11777,
365 11777, 11777, 11777, 11777, 11777, 11777, 11777, 11777, 11777, 11777,
366 11777, 11777, 11777, 11777, 11777, 11777, 11777, 11777, 11777, 3225,
367 11777, 11777, 11777, 11777, 11777, 11777, 11777, 10498, 12929, 12161,
368 12290, 12161, 12290, 13057, 12161, 12290, 13185, 13185, 12161, 12290,
369 10498, 13313, 13441, 13569, 12161, 12290, 13185, 13697, 13826, 13953,
370 14081, 12161, 12290, 10498, 10498, 13953, 14209, 10498, 14337, 12290,
371 12161, 12290, 12161, 12290, 12161, 12290, 12161, 12290, 10498, 12161,
372 12290, 12161, 12290, 12161, 12290, 12161, 12290, 12161, 12290, 12161,
373 12290, 12161, 12290, 12161, 12290, 12161, 12290, 12161, 12290, 12161,
374 12290, 12161, 12290, 12161, 12290, 12161, 12290, 12161, 12290, 12161,
375 12290, 15872, 15872, 15872, 15872, 15872, 15872, 23305, 23433, 23561,
376 23689, 23817, 23945, 24073, 24201, 24329, 24457, 17798, 17798, 14853,
377 14853, 14853, 15872, 15872, 15872, 15872, 15872, 15872, 15872, 15872,
378 15872, 15872, 15872, 6683, 6683, 18049, 664, 18177, 18177, 18177,
379 15872, 18305, 15872, 18433, 18433, 10498, 11777, 11777, 11777, 11777,
380 11777, 11777, 11777, 11777, 11777, 11777, 11777, 11777, 11777, 11777,
381 11777, 11777, 11906, 11906, 11906, 11906, 11906, 11906, 11906, 11906,
382 11906, 11906, 11906, 11906, 11906, 11906, 11906, 11906, 11906, 11906,
383 11906, 11906, 11906, 11906, 11906, 3225, 11906, 11906, 11906, 11906,
384 11906, 11906, 11906, 12034, 11906, 11906, 18818, 11906, 11906, 11906,
385 11906, 11906, 11906, 11906, 11906, 11906, 18946, 19074, 19074, 15872,
386 19202, 19330, 19457, 19457, 19457, 19586, 19714, 10498, 15872, 15872,
387 12161, 12290, 12161, 12290, 12161, 12290, 12161, 12290, 12161, 12290,
388 12161, 12290, 12161, 12290, 12161, 12290, 10498, 15105, 15235, 15362,
389 12161, 12290, 15617, 15745, 12161, 12290, 12161, 12290, 12161, 12290,
390 12161, 12290, 12161, 12290, 12161, 12290, 12161, 12290, 12161, 12290,
391 12417, 12546, 12161, 12290, 12161, 12290, 12161, 12290, 10498, 12161,
392 12290, 12161, 12290, 12161, 12290, 12161, 12290, 12161, 12290, 12161,
393 12290, 12161, 12290, 12161, 12290, 19842, 19970, 15490, 10498, 15872,
394 15872, 15872, 15872, 15872, 15872, 15872, 15872, 15872, 15872, 15872,
395 15872, 23056, 23056, 23056, 23056, 23056, 23056, 32139, 15872, 15872,
396 15872, 32267, 32395, 32523, 32651, 32779, 32907, 1305, 1305, 3225,
397 1109, 1238, 10498, 14853, 14853, 14853, 14853, 15105, 15235, 15362,
398 15105, 15235, 15362, 15105, 15235, 15362, 12161, 12290, 12161, 12290,
399 12161, 12290, 12161, 12290, 12161, 12290, 12161, 12290, 12161, 12290,
400 12161, 12290, 15490, 12161, 12290, 20252, 17798, 17798, 17798, 17798,
401 15872, 20359, 20359, 15872, 15872, 12161, 12290, 12161, 12290, 12161,
402 12290, 12161, 12290, 12161, 12290, 12161, 12290, 12161, 12290, 12161,
403 12290, 12161, 12290, 12161, 12290, 12161, 12290, 12161, 12290, 12673,
404 12161, 12290, 12161, 12290, 12161, 12290, 12802, 12161, 12290, 12161,
405 12290, 12161, 12290, 14465, 12161, 12290, 14465, 10498, 10498, 12161,
406 12290, 14465, 12161, 12290, 14593, 14593, 12161, 12290, 12161, 12290,
407 14721, 12161, 12290, 10498, 14853, 12161, 12290, 10498, 14978, 19457,
408 12161, 12290, 12161, 12290, 15872, 15872, 12161, 12290, 15872, 15872,
409 12161, 12290, 15872, 15872, 15872, 12161, 12290, 12161, 12290, 12161,
410 12290, 12161, 12290, 12161, 12290, 12161, 12290, 12161, 12290, 12161,
411 12290, 12161, 12290, 15872, 15872, 15872, 15872, 15872, 15872, 15872,
412 15872, 15872, 15872, 15872, 15872, 1432, 15872, 15872, 15872, 15872,
413 15872, 15872, 15872, 15872, 15872, 15872, 15872, 15872, 15872, 15872,
414 21144, 15872, 15872, 15872, 21144, 21144, 21144, 21144, 21144, 21144,
415 21144, 21144, 21144, 21144, 21144, 21144, 21144, 21144, 15872, 23056,
416 21253, 17798, 21253, 21253, 21253, 21253, 21253, 21253, 21253, 21253,
417 21253, 21253, 21253, 21253, 21253, 21253, 21253, 21253, 21253, 21253,
418 21253, 21253, 21253, 21253, 21253, 21253, 21253, 21253, 21253, 21253,
419 21253, 15872, 15872, 23056, 19457, 19457, 19457, 19457, 19457, 19457,
420 19457, 19457, 19457, 19457, 19457, 19457, 19457, 19457, 19457, 19457,
421 19457, 19457, 19457, 19457, 19457, 19457, 19457, 19457, 19457, 19457,
422 19457, 19457, 19457, 19457, 19457, 19457, 15872, 15872, 15872, 15872,
423 15872, 15872, 15872, 15872, 15872, 15872, 14853, 14853, 14853, 14853,
424 14853, 14853, 14853, 14853, 14853, 14853, 14853, 14853, 14853, 14853,
425 14853, 14853, 14853, 14853, 15872, 14853, 14853, 14853, 14853, 14853,
426 14853, 14853, 14853, 14853, 15872, 14853, 15872, 15872, 15872, 15872,
427 15872, 23305, 23433, 23561, 23689, 23817, 23945, 24073, 24201, 24329,
428 24457, 15872, 15872, 15872, 15872, 15872, 15872, 15872, 15872, 15872,
429 15872, 15872, 15872, 15872, 15872, 15872, 15872, 15872, 15872, 15872,
430 15872, 15872, 15872, 10498, 10498, 10498, 16002, 16130, 10498, 16258,
431 16258, 10498, 16386, 10498, 16514, 10498, 10498, 10498, 10498, 16258,
432 10498, 10498, 16642, 10498, 10498, 10498, 10498, 16770, 16898, 10498,
433 10498, 10498, 10498, 10498, 16898, 10498, 10498, 17026, 10498, 10498,
434 17154, 10498, 10498, 10498, 10498, 10498, 10498, 10498, 10498, 10498,
435 10498, 15872, 15872, 15872, 15872, 15872, 15872, 15872, 15872, 15872,
436 15872, 15872, 15872, 10498, 10498, 10498, 10498, 10498, 15872, 15872,
437 15872, 15872, 15872, 20997, 17798, 20997, 20997, 15872, 20997, 20997,
438 15872, 20997, 20997, 20997, 20997, 20997, 20997, 20997, 20997, 20997,
439 20997, 21253, 21253, 21253, 21253, 21253, 21253, 21253, 21253, 21253,
440 21253, 21253, 21253, 21253, 21253, 21253, 21253, 21253, 21253, 21253,
441 21253, 21144, 21253, 17798, 17798, 17798, 17798, 17798, 17798, 17798,
442 20359, 20359, 17798, 20359, 20359, 15872, 15872, 15872, 15872, 15872,
443 15872, 15872, 15872, 15872, 15872, 15872, 15872, 15872, 15872, 15872,
444 15872, 15872, 15872, 15872, 15872, 15872, 15872, 15872, 15872, 15872,
445 15872, 15872, 15872, 15872, 15872, 15872, 15872, 11659, 11659, 11659,
446 11659, 11659, 11659, 11659, 11659, 11659, 11659, 11659, 11659, 33419,
447 17282, 10498, 10498, 17282, 10498, 10498, 10498, 10498, 17282, 10498,
448 17410, 17410, 10498, 10498, 10498, 10498, 10498, 10498, 17538, 10498,
449 10498, 10498, 10498, 10498, 10498, 10498, 10498, 10498, 10498, 10498,
450 10498, 10498, 10498, 15872, 15872, 17668, 17668, 17668, 17668, 17668,
451 17668, 17668, 17668, 17668, 6683, 6683, 17668, 17668, 17668, 17668,
452 17668, 6683, 6683, 6683, 6683, 6683, 6683, 6683, 6683, 6683,
453 17668, 15872, 15872, 15872, 15872, 15872, 15872, 15872, 15872, 15872,
454 15872, 15872, 15872, 15872, 15872, 15872, 15872, 15872, 20481, 20481,
455 20481, 20481, 20481, 20481, 20481, 20481, 20481, 20481, 20481, 20481,
456 20481, 20481, 20481, 20481, 20481, 20481, 20481, 20481, 20481, 20481,
457 20481, 15872, 15872, 17668, 20632, 20632, 20632, 20632, 20632, 20632,
458 11777, 11777, 15872, 11777, 11777, 11777, 11777, 11777, 11777, 11777,
459 11777, 11777, 18562, 18690, 18690, 18690, 10498, 11906, 11906, 11906,
460 11906, 11906, 11906, 11906, 11906, 11906, 11906, 11906, 11906, 11906,
461 11906, 11906, 11906, 19970, 19970, 19970, 19970, 19970, 19970, 19970,
462 19970, 19970, 19970, 19970, 19970, 19970, 19970, 19970, 19970, 17798,
463 17798, 17798, 17798, 17798, 20632, 17798, 17798, 14853, 14853, 14853,
464 14853, 15872, 15872, 15872, 15872, 17798, 17798, 17798, 17798, 17798,
465 17798, 17798, 17798, 15872, 17798, 17798, 17798, 17798, 17798, 17798,
466 17798, 17798, 17798, 17798, 17798, 17798, 17798, 17798, 17798, 17798,
467 17798, 17798, 17798, 17798, 17798, 17798, 17798, 15872, 17798, 17798,
468 17798, 20888, 17798, 17798, 20888, 17798, 15872, 15872, 15872, 15872,
469 15872, 15872, 15872, 15872, 15872, 15872, 15872, 20997, 20997, 20997,
470 20997, 20997, 20997, 20997, 20997, 20997, 20997, 20997, 20997, 20997,
471 20997, 20997, 20997, 15872, 15872, 15872, 15872, 15872, 20997, 20997,
472 20997, 20888, 20888, 15872, 15872, 15872, 15872, 15872, 15872, 15872,
473 15872, 15872, 15872, 15872, 23433, 23561, 23689, 23817, 23945, 24073,
474 24201, 24329, 24457, 25355, 25483, 25611, 15872, 15872, 15872, 15872,
475 15872, 15872, 15872, 15872, 15872, 15872, 15872, 15872, 15872, 17798,
476 23176, 15872, 14853, 14853, 14853, 14853, 14853, 14853, 15872, 15872,
477 15872, 14853, 14853, 14853, 15872, 14853, 14853, 14853, 14853, 15872,
478 15872, 15872, 14853, 14853, 15872, 14853, 15872, 14853, 14853, 14853,
479 14853, 15872, 15872, 14853, 14853, 14853, 14853, 14853, 14853, 14853,
480 15872, 14853, 14853, 14853, 14853, 14853, 14853, 14853, 15872, 14853,
481 14853, 14853, 14853, 14853, 14853, 14853, 14853, 14853, 14853, 14853,
482 14853, 14853, 14853, 14853, 14853, 14853, 14853, 14853, 15872, 15872,
483 15872, 15872, 15872, 15872, 17798, 17798, 17798, 17798, 17798, 17798,
484 17798, 17798, 17798, 17798, 17798, 17798, 17798, 17798, 23176, 23176,
485 23176, 23176, 15872, 17798, 17798, 17798, 15872, 17798, 17798, 17798,
486 17798, 15872, 15872, 15872, 15872, 15872, 15872, 15872, 17798, 17798,
487 15872, 15872, 15872, 15872, 15872, 15872, 15872, 15872, 15872, 17798,
488 23176, 23176, 15872, 14853, 14853, 14853, 14853, 14853, 14853, 14853,
489 14853, 15872, 15872, 14853, 14853, 15872, 15872, 14853, 14853, 14853,
490 14853, 14853, 14853, 14853, 14853, 14853, 14853, 14853, 14853, 14853,
491 15872, 15872, 15872, 15872, 14853, 14853, 14853, 14853, 14853, 14853,
492 14853, 14853, 14853, 14853, 14853, 14853, 14853, 14853, 14853, 15872,
493 14853, 14853, 14853, 14853, 14853, 14853, 14853, 14853, 14853, 14853,
494 14853, 14853, 14853, 14853, 14853, 14853, 15872, 15872, 15872, 15872,
495 23176, 23176, 15872, 14853, 14853, 14853, 14853, 14853, 14853, 14853,
496 14853, 14853, 14853, 14853, 14853, 14853, 14853, 14853, 14853, 14853,
497 14853, 15872, 15872, 15872, 14853, 14853, 14853, 14853, 14853, 14853,
498 15872, 15872, 14853, 14853, 14853, 14853, 14853, 14853, 15872, 15872,
499 14853, 14853, 14853, 14853, 14853, 14853, 15872, 15872, 14853, 14853,
500 14853, 15872, 15872, 15872, 15872, 23305, 23433, 23561, 23689, 23817,
501 23945, 24073, 24201, 24329, 24457, 20252, 15872, 15872, 15872, 15872,
502 15872, 15872, 15872, 15872, 15872, 15872, 15872, 15872, 15872, 15872,
503 15872, 21513, 21641, 21769, 21897, 22025, 22153, 22281, 22409, 22537,
504 22665, 792, 22808, 22808, 21144, 15872, 15872, 17798, 21253, 21253,
505 21253, 21253, 21253, 21253, 21253, 21253, 21253, 21253, 21253, 21253,
506 21253, 21253, 21253, 21253, 15872, 15872, 21253, 21253, 21253, 21253,
507 21253, 21253, 21253, 21253, 21253, 21253, 21253, 21253, 21253, 21253,
508 21253, 21253, 21253, 21253, 21253, 21253, 21253, 21253, 21253, 21253,
509 21253, 21253, 15872, 15872, 15872, 15872, 15872, 15872, 15872, 15872,
510 15872, 15872, 15872, 15872, 15872, 15872, 15872, 15872, 15872, 15872,
511 15872, 15872, 15872, 15872, 15872, 15872, 21253, 21253, 21253, 21253,
512 21253, 21253, 21253, 21253, 21253, 21253, 21253, 21253, 21253, 21253,
513 21253, 21253, 21253, 21253, 21253, 21253, 21253, 21253, 21253, 21253,
514 21253, 21253, 21253, 21253, 21253, 21253, 21253, 21253, 25877, 26006,
515 21380, 21253, 21253, 21253, 21253, 21253, 21253, 21253, 21253, 21253,
516 21253, 17798, 17798, 17798, 17798, 17798, 17798, 17798, 17798, 17798,
517 17798, 17798, 15872, 15872, 15872, 15872, 15872, 15872, 15872, 15872,
518 15872, 15872, 15872, 15872, 15872, 15872, 15872, 15872, 15872, 15872,
519 15872, 15872, 15872, 23176, 23176, 20632, 15872, 15872, 15872, 15872,
520 15872, 15872, 15872, 15872, 15872, 15872, 15872, 17798, 17798, 23176,
521 15872, 14853, 14853, 14853, 14853, 14853, 14853, 14853, 15872, 14853,
522 15872, 14853, 14853, 14853, 15872, 14853, 14853, 14853, 14853, 14853,
523 14853, 14853, 14853, 14853, 14853, 14853, 14853, 14853, 20632, 20632,
524 14853, 14853, 14853, 14853, 14853, 14853, 14853, 14853, 15872, 15872,
525 15872, 15872, 15872, 15872, 15872, 15872, 15872, 17798, 17798, 17798,
526 17798, 17798, 21380, 21380, 17798, 17798, 10396, 17798, 17798, 17798,
527 17798, 15872, 15872, 1801, 1929, 2057, 2185, 2313, 2441, 2569,
528 2697, 2825, 2953, 21253, 21253, 21253, 22940, 22940, 15872, 14853,
529 14853, 14853, 15872, 14853, 15872, 14853, 15872, 15872, 14853, 14853,
530 15872, 14853, 14853, 14853, 14853, 17798, 14853, 14853, 17798, 17798,
531 17798, 17798, 17798, 17798, 15872, 17798, 17798, 14853, 15872, 15872,
532 14853, 14853, 14853, 14853, 14853, 14853, 14853, 14853, 14853, 15872,
533 14853, 14853, 14853, 14853, 14853, 14853, 14853, 14853, 14853, 14853,
534 15872, 14853, 14853, 14853, 14853, 14853, 15872, 15872, 15872, 15872,
535 17798, 17798, 23176, 15872, 14853, 14853, 14853, 14853, 14853, 14853,
536 14853, 14853, 14853, 14853, 14853, 14853, 14853, 14853, 14853, 14853,
537 14853, 14853, 14853, 14853, 14853, 14853, 14853, 14853, 14853, 14853,
538 14853, 14853, 14853, 14853, 14853, 14853, 15872, 15872, 17798, 14853,
539 23176, 23176, 23176, 23176, 23176, 15872, 17798, 23176, 23176, 15872,
540 23176, 23176, 17798, 17798, 15872, 15872, 15872, 15872, 15872, 15872,
541 15872, 23176, 23176, 15872, 15872, 15872, 15872, 15872, 15872, 15872,
542 14853, 15872, 20632, 20632, 20632, 20632, 20632, 20632, 20632, 20632,
543 23433, 23561, 23689, 23817, 23945, 24073, 24201, 24329, 24457, 25355,
544 26123, 26251, 26379, 26507, 26635, 26763, 26891, 27019, 25483, 27147,
545 15872, 15872, 15872, 14853, 14853, 14853, 14853, 14853, 14853, 14853,
546 14853, 14853, 15872, 14853, 14853, 14853, 14853, 14853, 14853, 14853,
547 15872, 14853, 14853, 15872, 15872, 14853, 14853, 14853, 14853, 15872,
548 15872, 17798, 14853, 23176, 17798, 17798, 17798, 17798, 17798, 17798,
549 17798, 17798, 23176, 23176, 23176, 23176, 17798, 15872, 15872, 14853,
550 17798, 17798, 17798, 17798, 15872, 15872, 15872, 14853, 14853, 14853,
551 14853, 14853, 14853, 14853, 14853, 14853, 15872, 14853, 14853, 14853,
552 14853, 14853, 14853, 14853, 15872, 14853, 15872, 15872, 15872, 14853,
553 14853, 14853, 14853, 15872, 15872, 17798, 15872, 23176, 23176, 23176,
554 15872, 14853, 14853, 14853, 14853, 14853, 14853, 14853, 14853, 15872,
555 14853, 14853, 14853, 15872, 14853, 14853, 14853, 14853, 14853, 14853,
556 14853, 14853, 14853, 14853, 14853, 14853, 14853, 14853, 14853, 15872,
557 14853, 15872, 14853, 14853, 14853, 14853, 15872, 15872, 14853, 14853,
558 14853, 14853, 14853, 14853, 14853, 15872, 14853, 15872, 14853, 14853,
559 14853, 14853, 15872, 15872, 14853, 14853, 14853, 14853, 14853, 14853,
560 14853, 14853, 14853, 14853, 14853, 14853, 14853, 14853, 14853, 14853,
561 14853, 17798, 14853, 14853, 17798, 17798, 17798, 17798, 17798, 17798,
562 17798, 15872, 15872, 15872, 15872, 922, 922, 922, 922, 922,
563 922, 922, 922, 922, 922, 922, 922, 922, 922, 922,
564 922, 15872, 15872, 15872, 15872, 15872, 15872, 15872, 15872, 15872,
565 15872, 15872, 15872, 15872, 15872, 15872, 15872, 14853, 14853, 17798,
566 17798, 20632, 20632, 23305, 23433, 23561, 23689, 23817, 23945, 24073,
567 24201, 24329, 24457, 20632, 15872, 15872, 15872, 15872, 15872, 15872,
568 15872, 15872, 15872, 15872, 15872, 15872, 15872, 15872, 15872, 664,
569 664, 792, 922, 792, 664, 664, 25877, 26006, 664, 1305,
570 1432, 1556, 1432, 1688, 1801, 1929, 2057, 2185, 2313, 2441,
571 2569, 2697, 2825, 2953, 1432, 664, 3225, 3225, 3225, 664,
572 664, 664, 664, 664, 664, 10772, 664, 664, 664, 664,
573 23056, 23056, 23056, 23056, 15872, 23305, 23433, 23561, 23689, 23817,
574 23945, 24073, 24201, 24329, 24457, 15872, 15872, 15872, 15872, 15872,
575 15872, 14853, 14853, 14853, 14853, 14853, 14853, 14853, 14853, 14853,
576 15872, 14853, 14853, 14853, 14853, 14853, 14853, 14853, 14853, 14853,
577 14853, 15872, 14853, 14853, 14853, 14853, 14853, 15872, 15872, 15872,
578 15872, 23176, 17798, 17798, 17798, 17798, 15872, 15872, 23176, 23176,
579 15872, 15872, 23176, 23176, 17798, 15872, 15872, 15872, 15872, 15872,
580 15872, 15872, 15872, 15872, 23176, 15872, 15872, 15872, 15872, 14853,
581 14853, 15872, 14853, 15872, 15872, 14853, 14853, 15872, 14853, 15872,
582 15872, 14853, 15872, 15872, 15872, 15872, 15872, 15872, 14853, 14853,
583 14853, 14853, 15872, 14853, 14853, 14853, 14853, 14853, 14853, 14853,
584 14853, 14853, 15872, 14853, 14853, 14853, 14853, 14853, 14853, 14853,
585 15872, 14853, 14853, 15872, 14853, 14853, 15872, 14853, 14853, 15872,
586 15872, 17798, 15872, 23176, 23176, 17798, 17798, 15872, 15872, 15872,
587 15872, 17798, 17798, 15872, 15872, 17798, 17798, 17798, 15872, 15872,
588 15872, 15872, 15872, 15872, 15872, 15872, 15872, 15872, 15872, 14853,
589 14853, 14853, 14853, 15872, 14853, 15872, 14853, 14853, 17798, 17798,
590 15872, 15872, 23305, 23433, 23561, 23689, 23817, 23945, 24073, 24201,
591 24329, 24457, 14853, 14853, 922, 922, 24587, 24715, 24843, 24971,
592 25099, 25227, 20252, 15872, 15872, 15872, 15872, 15872, 14853, 14853,
593 14853, 14853, 14853, 14853, 14853, 14853, 14853, 15872, 14853, 14853,
594 14853, 14853, 14853, 14853, 14853, 15872, 14853, 14853, 15872, 14853,
595 14853, 14853, 14853, 14853, 15872, 15872, 17798, 14853, 23176, 23176,
596 17798, 17798, 17798, 17798, 17798, 15872, 17798, 17798, 23176, 15872,
597 23176, 23176, 17798, 15872, 15872, 14853, 15872, 15872, 15872, 15872,
598 15872, 15872, 15872, 15872, 15872, 15872, 15872, 15872, 15872, 15872,
599 15872, 23305, 23433, 23561, 23689, 23817, 23945, 24073, 24201, 24329,
600 24457, 25099, 25099, 25099, 25099, 25099, 25099, 25099, 25099, 25099,
601 25099, 20252, 17798, 20252, 17798, 20252, 17798, 25877, 26006, 25877,
602 26006, 23176, 23176, 17798, 17798, 17798, 15872, 15872, 15872, 23176,
603 23176, 15872, 15872, 23176, 23176, 17798, 15872, 15872, 15872, 15872,
604 15872, 15872, 15872, 15872, 17798, 23176, 15872, 15872, 15872, 15872,
605 14853, 14853, 15872, 14853, 14853, 14853, 14853, 14853, 15872, 14853,
606 14853, 15872, 23176, 17798, 17798, 17798, 17798, 23176, 17798, 15872,
607 15872, 15872, 17798, 17798, 23176, 17798, 15872, 15872, 15872, 15872,
608 15872, 15872, 14853, 14853, 14853, 14853, 14853, 14853, 14853, 14853,
609 14853, 14853, 14853, 14853, 14853, 14853, 14853, 14853, 14853, 14853,
610 14853, 14853, 23176, 23176, 23176, 17798, 17798, 17798, 17798, 17798,
611 17798, 17798, 23176, 23176, 15872, 15872, 15872, 23176, 23176, 23176,
612 15872, 23176, 23176, 23176, 17798, 15872, 15872, 15872, 15872, 15872,
613 15872, 15872, 15872, 15872, 23176, 15872, 15872, 15872, 15872, 15872,
614 15872, 15872, 15872, 14853, 14853, 14853, 14853, 14853, 15872, 17668,
615 15872, 17798, 17798, 17798, 17798, 17798, 17798, 15872, 15872, 23305,
616 23433, 23561, 23689, 23817, 23945, 24073, 24201, 24329, 24457, 15872,
617 15872, 14853, 14853, 15872, 15872, 15872, 15872, 23305, 23433, 23561,
618 23689, 23817, 23945, 24073, 24201, 24329, 24457, 15872, 15872, 15872,
619 15872, 15872, 15872, 15872, 15872, 15872, 15872, 15872, 15872, 15872,
620 15872, 15872, 15872, 17798, 17798, 17798, 17798, 17798, 17798, 17798,
621 17798, 17798, 17798, 17798, 17798, 17798, 20359, 20359, 20359, 23176,
622 17798, 17798, 17798, 15872, 15872, 23176, 23176, 23176, 15872, 23176,
623 23176, 23176, 17798, 15872, 15872, 15872, 15872, 15872, 15872, 15872,
624 15872, 15872, 23176, 15872, 15872, 15872, 15872, 15872, 15872, 15872,
625 15872, 14853, 14853, 14853, 14853, 14853, 14853, 14853, 15872, 15872,
626 15872, 17798, 15872, 15872, 15872, 15872, 23176, 23176, 23176, 17798,
627 17798, 17798, 15872, 17798, 15872, 23176, 23176, 23176, 23176, 23176,
628 23176, 23176, 23176, 17798, 23176, 23176, 17798, 17798, 17798, 17798,
629 17798, 17798, 17798, 17798, 17798, 17798, 17798, 20632, 20632, 20632,
630 20632, 20632, 20632, 20632, 922, 20632, 15872, 15872, 15872, 14853,
631 14853, 14853, 14853, 14853, 14853, 17668, 17798, 17798, 17798, 17798,
632 17798, 17798, 17798, 17798, 20632, 23305, 23433, 23561, 23689, 23817,
633 23945, 24073, 24201, 24329, 24457, 20632, 20632, 15872, 15872, 15872,
634 15872, 14853, 20252, 20252, 20252, 20632, 20632, 20632, 20632, 20632,
635 20632, 20632, 20632, 25784, 20632, 20632, 20632, 20632, 20632, 20632,
636 20252, 20252, 20252, 20252, 20252, 17798, 17798, 20252, 20252, 20252,
637 20252, 20252, 20252, 17798, 20252, 20252, 20252, 20252, 20252, 20252,
638 15872, 15872, 20252, 15872, 15872, 15872, 15872, 15872, 15872, 15872,
639 15872, 15872, 15872, 15872, 15872, 15872, 15872, 15872, 15872, 10396,
640 10396, 10396, 10396, 10396, 10396, 10396, 10396, 10396, 10396, 10396,
641 10396, 15872, 15872, 15872, 15872, 14853, 14853, 14853, 14853, 14853,
642 14853, 14853, 14853, 15872, 14853, 14853, 14853, 14853, 14853, 14853,
643 14853, 14853, 14853, 14853, 14853, 14853, 14853, 14853, 14853, 14853,
644 14853, 14853, 14853, 14853, 14853, 14853, 14853, 14853, 14853, 14853,
645 15872, 15872, 15872, 15872, 15872, 14853, 14853, 14853, 14853, 14853,
646 14853, 14853, 14853, 14853, 14853, 14853, 14853, 14853, 14853, 14853,
647 14853, 14853, 14853, 14853, 14853, 14853, 14853, 14853, 14853, 14853,
648 14853, 14853, 6807, 17668, 17668, 17668, 15872, 23305, 23433, 23561,
649 23689, 23817, 23945, 24073, 24201, 24329, 24457, 20632, 20632, 20632,
650 20632, 20632, 20632, 14853, 14853, 14853, 14853, 14853, 14853, 23176,
651 23176, 17798, 17798, 15872, 15872, 15872, 15872, 15872, 15872, 524,
652 14853, 14853, 14853, 14853, 14853, 14853, 14853, 14853, 14853, 14853,
653 14853, 14853, 14853, 14853, 14853, 14853, 14853, 14853, 14853, 14853,
654 14853, 14853, 14853, 14853, 14853, 14853, 25877, 26006, 15872, 15872,
655 15872, 14853, 14853, 14853, 14853, 14853, 14853, 14853, 14853, 14853,
656 14853, 14853, 20632, 20632, 20632, 27275, 27403, 27531, 15872, 15872,
657 15872, 15872, 15872, 15872, 15872, 15872, 15872, 15872, 15872, 15872,
658 15872, 15872, 15872, 14853, 14853, 14853, 14853, 14853, 14853, 14853,
659 14853, 14853, 17798, 15872, 15872, 15872, 15872, 15872, 15872, 15872,
660 15872, 15872, 15872, 15872, 15872, 15872, 15872, 15872, 15872, 15872,
661 15872, 15872, 15872, 15872, 15872, 12161, 12290, 12161, 12290, 12161,
662 12290, 12161, 12290, 12161, 12290, 12161, 12290, 12161, 12290, 12161,
663 12290, 12161, 12290, 12161, 12290, 12161, 12290, 10498, 10498, 10498,
664 10498, 10498, 27650, 15872, 15872, 15872, 15872, 27778, 27778, 27778,
665 27778, 27778, 27778, 27778, 27778, 27905, 27905, 27905, 27905, 27905,
666 27905, 27905, 27905, 27778, 27778, 27778, 27778, 27778, 27778, 27778,
667 27778, 27905, 27905, 27905, 27905, 27905, 27905, 27905, 27905, 27778,
668 27778, 27778, 27778, 27778, 27778, 15872, 15872, 27905, 27905, 27905,
669 27905, 27905, 27905, 15872, 15872, 10498, 27778, 10498, 27778, 10498,
670 27778, 10498, 27778, 15872, 27905, 15872, 27905, 15872, 27905, 15872,
671 27905, 27778, 27778, 27778, 27778, 27778, 27778, 27778, 27778, 27905,
672 27905, 27905, 27905, 27905, 27905, 27905, 27905, 28034, 28034, 28162,
673 28162, 28162, 28162, 28290, 28290, 28418, 28418, 28546, 28546, 28674,
674 28674, 15872, 15872, 27778, 27778, 27778, 27778, 27778, 27778, 27778,
675 27778, 28803, 28803, 28803, 28803, 28803, 28803, 28803, 28803, 27778,
676 27778, 27778, 27778, 27778, 27778, 27778, 27778, 28803, 28803, 28803,
677 28803, 28803, 28803, 28803, 28803, 27778, 27778, 10498, 28930, 10498,
678 15872, 10498, 10498, 27905, 27905, 29057, 29057, 29187, 6683, 29314,
679 6683, 6914, 7042, 7170, 7298, 7426, 7554, 7682, 7810, 7938,
680 8066, 8194, 8322, 8450, 8578, 8706, 8834, 8962, 9090, 9218,
681 9346, 9474, 9602, 9730, 9858, 9986, 10114, 25877, 3225, 26006,
682 3225, 15872, 27778, 27778, 10498, 10498, 10498, 29698, 10498, 10498,
683 27905, 27905, 29825, 29825, 29953, 6683, 6683, 6683, 15872, 15872,
684 10498, 28930, 10498, 15872, 10498, 10498, 30081, 30081, 30209, 30209,
685 29187, 6683, 6683, 15872, 524, 524, 524, 524, 524, 524,
686 524, 30380, 524, 524, 524, 30476, 23056, 23056, 30608, 30736,
687 10772, 30900, 10772, 10772, 10772, 10772, 664, 664, 31005, 31134,
688 25877, 31005, 31005, 31134, 25877, 31005, 664, 664, 664, 664,
689 664, 664, 664, 664, 31245, 31374, 31504, 31632, 31760, 31888,
690 32016, 30380, 792, 792, 792, 792, 792, 664, 664, 664,
691 664, 10717, 11614, 664, 664, 664, 664, 6807, 32139, 11403,
692 11019, 11147, 32267, 32395, 32523, 32651, 32779, 32907, 1305, 1305,
693 3225, 1109, 1238, 15872, 15872, 15872, 15872, 15872, 15872, 15872,
694 15872, 15872, 15872, 15872, 15872, 15872, 15872, 15872, 15872, 15872,
695 14853, 14853, 14853, 14853, 14853, 14853, 14853, 14853, 14853, 14853,
696 14853, 14853, 14853, 15872, 15872, 15872, 10396, 10396, 10396, 10396,
697 10396, 10396, 10396, 10396, 10396, 10396, 10396, 10396, 10396, 10396,
698 10396, 10396, 10396, 10396, 10396, 10396, 15872, 15872, 15872, 15872,
699 15872, 10396, 10396, 10396, 10396, 10396, 10396, 10396, 19457, 10396,
700 10396, 10396, 10396, 19457, 10396, 10396, 10498, 19457, 19457, 19457,
701 10498, 10498, 19457, 19457, 19457, 10498, 10396, 19457, 10396, 10396,
702 10396, 19457, 19457, 19457, 19457, 19457, 10396, 10396, 41098, 41226,
703 41354, 41482, 41610, 41738, 41866, 41994, 42122, 17798, 17798, 17798,
704 17798, 17798, 17798, 10772, 17668, 17668, 17668, 17668, 17668, 10396,
705 10396, 42250, 42378, 42506, 15872, 15872, 15872, 10396, 10396, 10396,
706 10396, 15872, 10396, 10396, 10396, 10396, 15872, 15872, 10396, 10396,
707 10396, 10396, 10396, 10396, 10396, 10396, 10396, 10396, 10396, 10396,
708 10396, 10396, 10396, 10396, 10396, 10396, 10396, 10396, 10396, 10396,
709 10396, 3225, 10396, 10396, 10396, 10396, 10396, 10396, 10396, 10396,
710 10396, 10396, 10396, 10396, 10396, 10396, 3225, 3225, 10396, 10396,
711 3225, 10396, 3225, 10396, 10396, 10396, 10396, 10396, 10396, 10396,
712 10396, 10396, 10396, 10396, 10396, 10396, 10396, 10396, 3225, 10396,
713 10396, 15872, 15872, 15872, 15872, 15872, 15872, 15872, 15872, 15872,
714 15872, 15872, 15872, 15872, 15872, 37642, 37770, 37898, 38026, 15872,
715 15872, 15872, 15872, 15872, 15872, 15872, 15872, 15872, 15872, 15872,
716 15872, 3225, 3225, 3225, 3225, 3225, 10396, 10396, 10396, 10396,
717 10396, 3225, 3225, 10396, 10396, 10396, 10396, 19457, 10396, 33025,
718 10396, 19457, 10396, 33153, 33281, 19457, 19457, 10908, 10498, 19457,
719 19457, 10396, 19457, 10498, 14853, 14853, 14853, 14853, 10498, 10396,
720 15872, 15872, 15872, 15872, 15872, 33546, 33674, 33802, 33930, 34058,
721 34186, 34314, 34442, 34570, 34698, 34826, 34954, 35082, 35210, 35338,
722 35466, 35594, 35722, 35850, 35978, 36106, 36234, 36362, 36490, 36618,
723 36746, 36874, 37002, 37130, 37258, 37386, 37514, 3225, 3225, 3161,
724 3161, 3225, 3225, 3161, 3161, 3161, 3161, 3161, 3161, 3161,
725 3161, 3161, 3161, 3161, 3161, 3161, 3161, 3161, 3161, 3161,
726 3161, 3161, 3225, 3225, 3225, 3225, 3225, 3161, 3161, 3161,
727 3161, 3225, 3225, 3225, 3225, 3225, 3225, 3225, 3225, 3225,
728 3161, 3161, 3161, 3161, 3161, 3225, 3225, 3161, 3161, 3225,
729 3225, 3225, 3225, 3161, 3161, 3161, 3161, 3161, 3161, 3161,
730 3161, 3161, 3161, 3161, 3161, 3161, 3225, 3225, 3161, 3161,
731 3161, 3161, 3225, 3225, 3225, 3225, 3225, 3161, 3225, 3225,
732 3225, 3225, 3225, 3225, 3225, 10396, 10396, 3225, 10396, 10396,
733 3225, 10396, 10396, 10396, 10396, 10396, 10396, 10396, 3225, 10396,
734 10396, 10396, 10396, 10396, 10396, 10396, 10396, 10396, 10396, 10396,
735 10396, 10396, 10396, 10396, 10396, 10396, 10396, 10396, 10396, 10396,
736 10396, 10396, 10396, 10396, 10396, 10396, 10396, 10396, 10396, 10396,
737 10396, 15872, 10396, 10396, 10396, 10396, 10396, 10396, 10396, 10396,
738 10396, 10396, 10396, 10396, 10396, 10396, 10396, 10396, 10396, 10396,
739 10396, 10396, 10396, 10396, 10396, 10396, 15872, 15872, 15872, 15872,
740 15872, 15872, 15872, 15872, 15872, 15872, 15872, 15872, 15872, 15872,
741 15872, 15872, 15872, 15872, 15872, 15872, 15872, 15872, 15872, 15872,
742 15872, 3225, 3161, 3161, 3161, 3161, 3225, 3225, 3225, 3161,
743 3161, 3161, 3161, 3161, 3161, 3225, 3225, 3225, 3161, 1305,
744 1305, 3225, 3161, 3161, 3225, 3225, 3225, 3161, 3161, 3161,
745 3161, 3225, 3161, 3225, 3161, 3225, 3225, 3225, 3225, 3161,
746 3161, 3161, 3161, 3161, 3161, 3161, 3161, 3161, 3225, 3225,
747 3225, 3225, 3225, 3161, 3225, 3161, 3161, 3161, 3161, 3161,
748 10396, 10396, 10396, 10396, 10396, 10396, 10396, 1109, 1238, 10396,
749 10396, 10396, 10396, 10396, 10396, 10396, 10396, 10396, 10396, 10396,
750 20252, 20252, 20252, 20252, 20252, 20252, 20252, 20252, 20252, 20252,
751 20252, 20252, 20252, 20252, 20252, 20252, 20252, 20252, 20252, 20252,
752 20252, 20252, 20252, 15872, 15872, 15872, 15872, 20252, 20252, 20252,
753 20252, 20252, 20252, 20252, 20252, 20252, 20252, 20252, 20252, 20252,
754 20252, 20252, 20252, 20252, 20252, 20252, 20252, 20252, 20252, 39580,
755 39580, 39580, 39580, 39580, 39580, 39580, 39580, 39580, 39580, 39580,
756 39580, 39580, 39580, 39580, 39580, 39708, 39708, 39708, 39708, 39708,
757 39708, 39708, 39708, 39708, 39708, 39708, 39708, 39708, 39708, 39708,
758 39708, 32139, 15872, 15872, 15872, 15872, 15872, 15872, 15872, 15872,
759 15872, 15872, 15872, 15872, 15872, 15872, 15872, 15872, 15872, 15872,
760 15872, 15872, 15872, 3161, 3225, 3161, 3225, 3161, 3161, 3161,
761 3161, 3161, 3161, 3161, 3161, 3225, 3225, 3161, 3161, 3161,
762 3161, 3161, 3161, 3161, 3161, 3161, 3161, 3161, 3161, 3161,
763 3161, 3161, 3161, 3161, 3161, 3225, 3225, 3161, 3161, 15872,
764 15872, 15872, 15872, 15872, 15872, 15872, 15872, 15872, 15872, 15872,
765 15872, 15872, 15872, 922, 922, 3225, 6683, 10396, 922, 922,
766 15872, 10396, 3225, 3225, 3225, 3225, 10396, 10396, 15872, 15872,
767 15872, 15872, 15872, 15872, 15872, 15872, 15872, 15872, 23056, 23056,
768 23056, 10396, 10396, 15872, 15872, 10396, 10396, 10396, 10396, 10396,
769 10396, 10396, 10396, 10396, 10396, 10396, 10396, 10396, 10396, 10396,
770 10396, 15872, 10396, 10396, 10396, 10396, 10396, 10396, 10396, 10396,
771 10396, 10396, 10396, 10396, 10396, 10396, 15872, 10396, 15872, 10396,
772 10396, 10396, 10396, 15872, 15872, 15872, 10396, 15872, 10396, 10396,
773 10396, 10396, 10396, 10396, 10396, 15872, 15872, 15872, 15872, 15872,
774 15872, 15872, 15872, 15872, 15872, 15872, 15872, 15872, 15872, 33419,
775 39819, 39947, 40075, 40203, 40331, 40459, 40587, 40715, 40843, 33419,
776 39819, 39947, 40075, 40203, 40331, 40459, 40587, 40715, 40843, 10396,
777 15872, 15872, 15872, 10396, 10396, 10396, 10396, 10396, 10396, 10396,
778 10396, 3161, 3161, 3161, 3161, 10396, 10396, 10396, 10396, 10396,
779 10396, 10396, 10396, 10396, 10396, 10396, 10396, 10396, 10396, 10396,
780 10396, 10396, 10396, 10396, 10396, 10396, 20252, 10396, 10396, 10396,
781 10396, 10396, 15872, 15872, 15872, 15872, 15872, 25099, 25099, 25099,
782 25099, 25099, 25099, 25099, 25099, 25099, 25099, 20252, 20252, 20252,
783 20252, 20252, 20252, 20252, 20252, 20252, 20252, 20252, 20252, 20252,
784 20252, 20252, 20252, 20252, 20252, 20252, 20252, 20252, 20252, 20252,
785 20252, 20252, 20252, 20252, 20252, 20252, 20252, 20252, 20252, 15872,
786 15872, 15872, 20252, 24587, 24715, 24843, 24971, 42635, 42763, 42891,
787 43019, 43147, 25355, 20252, 20252, 20252, 20252, 20252, 20252, 20252,
788 20252, 20252, 20252, 20252, 20252, 20252, 20252, 20252, 20252, 20252,
789 20252, 20252, 20252, 20252, 20252, 20252, 20252, 20252, 20252, 20252,
790 10396, 15872, 10396, 10396, 10396, 15872, 10396, 15872, 15872, 15872,
791 15872, 15872, 15872, 15872, 15872, 15872, 15872, 15872, 15872, 15872,
792 15872, 15872, 15872, 15872, 15872, 15872, 15872, 15872, 15872, 15872,
793 15872, 15872, 11403, 11019, 11147, 32267, 32395, 32523, 32651, 32779,
794 32907, 38155, 38283, 38411, 38539, 38667, 38795, 38923, 39051, 39179,
795 39307, 39435, 11403, 11019, 11147, 32267, 32395, 32523, 32651, 32779,
796 32907, 38155, 38283, 38411, 38539, 38667, 38795, 38923, 39051, 39179,
797 39307, 39435, 20252, 20252, 20252, 20252, 524, 664, 664, 664,
798 10396, 17668, 14853, 40970, 1109, 1238, 1109, 1238, 1109, 1238,
799 1109, 1238, 1109, 1238, 10396, 10396, 1109, 1238, 1109, 1238,
800 1109, 1238, 1109, 1238, 10772, 25877, 26006, 26006, 14853, 14853,
801 14853, 14853, 14853, 14853, 14853, 14853, 14853, 14853, 14853, 14853,
802 14853, 14853, 14853, 14853, 14853, 14853, 14853, 14853, 14853, 15872,
803 15872, 15872, 15872, 17798, 17798, 6683, 6683, 17668, 17668, 15872,
804 14853, 14853, 14853, 14853, 14853, 14853, 14853, 14853, 14853, 14853,
805 14853, 14853, 14853, 14853, 14853, 15872, 20252, 20252, 25099, 25099,
806 25099, 25099, 20252, 20252, 20252, 20252, 20252, 20252, 20252, 20252,
807 20252, 20252, 20252, 20252, 20252, 20252, 20252, 20252, 20252, 15872,
808 15872, 15872, 15872, 15872, 15872, 15872, 15872, 15872, 15872, 15872,
809 15872, 15872, 15872, 15872, 15872, 15872, 15872, 15872, 15872, 15872,
810 15872, 15872, 15872, 15872, 15872, 15872, 15872, 43283, 43283, 43283,
811 43283, 43283, 43283, 43283, 43283, 43283, 43283, 43283, 43283, 43283,
812 43283, 43283, 43283, 43283, 43283, 43283, 43283, 43283, 43283, 43283,
813 43283, 43283, 43283, 43283, 43283, 43283, 43283, 43283, 43283, 43410,
814 43410, 43410, 43410, 43410, 43410, 43410, 43410, 43410, 43410, 43410,
815 43410, 43410, 43410, 43410, 43410, 43410, 43410, 43410, 43410, 43410,
816 43410, 43410, 43410, 43410, 43410, 43410, 43410, 43410, 43410, 43410,
817 43410, 20997, 20997, 20997, 20997, 20997, 20997, 20997, 20997, 20997,
818 1305, 20997, 20997, 20997, 20997, 20997, 20997, 20997, 20997, 20997,
819 20997, 20997, 20997, 20997, 15872, 20997, 20997, 20997, 20997, 20997,
820 15872, 20997, 15872, 17798, 17798, 17798, 17798, 15872, 15872, 15872,
821 15872, 15872, 15872, 15872, 15872, 15872, 15872, 15872, 15872, 664,
822 10772, 10772, 6807, 6807, 25877, 26006, 25877, 26006, 25877, 26006,
823 25877, 26006, 25877, 26006, 25877, 26006, 15872, 15872, 15872, 15872,
824 664, 664, 664, 664, 6807, 6807, 6807, 1432, 664, 1432,
825 15872, 664, 1432, 664, 664, 10772, 25877, 26006, 25877, 26006,
826 25877, 26006, 792, 664, 3329, 3457, 3585, 3713, 3841, 3969,
827 4097, 4225, 4353, 4481, 4609, 4737, 4865, 4993, 5121, 5249,
828 5377, 5505, 5633, 5761, 5889, 6017, 6145, 6273, 6401, 6529,
829 25877, 664, 26006, 6683, 6807,
831 /** Length of data. */
832 static const int data_length
= 5345;
835 * This is the attribute table for computing the numeric value of a
836 * character. The value is -1 if Unicode does not define a value, -2
837 * if the value is not a positive integer, otherwise it is the value.
839 static const jshort numValue
[] = {
840 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
841 -1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, -1, -1,
842 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22,
843 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35,
844 -1, -1, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20,
845 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33,
846 34, 35, -1, -1, -1, -1, -1, -1, 2, 3, -1, 1, -1,
847 -2, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
848 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
849 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
850 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
851 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
852 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0,
853 1, 2, 3, 4, 5, 6, 7, 8, 9, -1, -1, -1, -1,
854 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 1, 2, 3,
855 4, -1, 16, 10, 100, 1000, -1, -1, -1, 20, 30, 40, 50,
856 60, 70, 80, 90, 10000, 17, 18, 19, -1, -1, -1, -1, -1,
857 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
858 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
859 -1, -1, -1, -1, 0, 4, 5, 6, 7, 8, 9, -1, -1,
860 -1, 1, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11,
861 12, 50, 100, 500, 1000, 1, 2, 3, 4, 5, 6, 7, 8,
862 9, 10, 11, 12, 50, 100, 500, 1000, 1000, 5000, 10000, -1, 10,
863 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, -1, -1, 2,
864 3, 4, 5, 6, 7, 8, 9, 10, 0, 1, 2, 3, 4,
865 5, 6, 7, 8, 9, 10, 20, 30, 5, 6, 7, 8, 9,
868 /** Length of numValue. */
869 static const int numValue_length
= 340;
872 * This is the attribute table for computing the uppercase representation
873 * of a character. The value is the difference between the character and
874 * its uppercase version.
876 static const jshort upper
[] = {
877 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
878 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
879 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
880 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
881 0, 0, -32, -32, -32, -32, -32, -32, -32, -32, -32, -32, -32,
882 -32, -32, -32, -32, -32, -32, -32, -32, -32, -32, -32, -32, -32,
883 -32, -32, 0, 0, 0, 0, 0, 0, 0, 0, 743, 0, 0,
884 0, 0, -32, 121, 0, -1, 0, -232, 0, -300, 0, 0, 0,
885 0, 0, 0, 0, 97, 0, 0, 0, 0, 0, 0, 0, 0,
886 56, 0, -1, -2, -79, 0, 0, 0, -210, -206, -205, -202, -203,
887 -207, -209, -211, -213, -214, -218, -217, -219, 0, 0, 84, 0, 0,
888 0, 0, -38, -37, -31, -64, -63, -62, -57, 0, -47, -54, -86,
889 -80, 0, 0, 0, 0, 0, -48, 0, 0, 0, 0, 0, 0,
890 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
891 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
892 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
893 0, 0, 0, 0, 0, 0, 0, 0, -59, 8, 0, 74, 86,
894 100, 128, 112, 126, 0, 9, 0, 0, -7205, 0, 0, 7, 0,
895 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
896 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
897 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
898 0, 0, 0, 0, 0, -16, -16, -16, -16, -16, -16, -16, -16,
899 -16, -16, -16, -16, -16, -16, -16, -16, 0, 0, 0, 0, 0,
900 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -26, 0,
901 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
902 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
905 /** Length of upper. */
906 static const int upper_length
= 340;
909 * This is the attribute table for computing the lowercase representation
910 * of a character. The value is the difference between the character and
911 * its lowercase version.
913 static const jshort lower
[] = {
914 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
915 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
916 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,
917 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,
918 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
919 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
920 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
921 0, 32, 0, 0, 1, 0, -199, 0, -121, 0, 210, 206, 205,
922 79, 202, 203, 207, 0, 211, 209, 213, 214, 218, 217, 219, 0,
923 0, 2, 1, 0, 0, -97, -56, 0, 0, 0, 0, 0, 0,
924 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 38, 37,
925 64, 63, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
926 0, 80, 0, 0, 48, 0, 0, 0, 0, 0, 0, 0, 0,
927 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
928 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
929 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
930 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -8, 0, 0,
931 0, 0, 0, 0, -8, 0, -74, -9, 0, -86, -100, 0, -112,
932 -7, -128, -126, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
933 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -7517, -8383,
934 -8262, 0, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
935 16, 16, 16, 16, 16, 0, 0, 0, 0, 0, 0, 0, 0,
936 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
937 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 26, 0, 0,
938 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
939 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
942 /** Length of lower. */
943 static const int lower_length
= 340;
946 * This is the attribute table for computing the directionality class
947 * of a character. At present, the value is in the range 0 - 18 if the
948 * character has a direction, otherwise it is -1.
950 static const jbyte direction
[] = {
951 9, 11, 10, 12, 12, 13, 5, 5, 13, 13, 5, 7, 5, 4, 3, 3, 3, 3, 3, 3, 3,
952 3, 3, 3, 13, 13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
953 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 13, 13, 0, 0, 0, 0, 0, 0, 0, 0, 0,
954 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7, 13, 0, 13,
955 13, 5, 3, 3, 0, 3, 13, 13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
956 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -1, 0,
957 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 8, 8, 0, 0, 0, 0, 0, 0,
958 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 8, 0, 0, 0, 1, 1, 2, 2, 2,
959 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 2, 9, 0, 0, 0, 0, 0, 0, 0, 0,
960 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 13, 13, 0, 0, 0, 0, 0, 0,
961 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
962 0, 0, 0, 0, 0, 0, 12, 9, 0, 1, 13, 13, 13, 12, 10, 14, 16, 18, 15, 17, 3,
963 3, 3, 3, 3, 3, 3, 0, 0, 0, 13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
964 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
965 0, 0, 0, 0, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 0, 0, 13, 13, 13, 13,
966 13, 13, 13, 13, 13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
969 /** Length of direction. */
970 static const int direction_length
= 340;
973 * This is the listing of titlecase special cases (all other character
974 * can use <code>upper</code> to determine their titlecase). The listing
975 * is a sequence of character pairs; converting the first character of the
976 * pair to titlecase produces the second character.
978 static const jchar title
[] = {
979 452, 453, 453, 453, 454, 453, 455, 456, 456, 456,
980 457, 456, 458, 459, 459, 459, 460, 459, 497, 498,
983 /** Length of title. */
984 static const int title_length
= 24;
986 #endif /* __JAVA_CHARTABLES_H__ */