SCM Repository
Annotation of /sml/trunk/src/compiler/Parse/lex/ml.lex.sml
Parent Directory
|
Revision Log
Revision 205 - (view) (download)
1 : | monnier | 205 | functor MLLexFun(structure Tokens : ML_TOKENS)= |
2 : | struct | ||
3 : | structure UserDeclarations = | ||
4 : | struct | ||
5 : | (* ml.lex | ||
6 : | * | ||
7 : | * Copyright 1989 by AT&T Bell Laboratories | ||
8 : | *) | ||
9 : | |||
10 : | |||
11 : | (* | ||
12 : | * $Log$ | ||
13 : | *) | ||
14 : | |||
15 : | open ErrorMsg; | ||
16 : | |||
17 : | structure TokTable = TokenTable(Tokens); | ||
18 : | type svalue = Tokens.svalue | ||
19 : | type pos = int | ||
20 : | type lexresult = (svalue,pos) Tokens.token | ||
21 : | type lexarg = { | ||
22 : | comLevel : int ref, | ||
23 : | sourceMap : SourceMap.sourcemap, | ||
24 : | charlist : string list ref, | ||
25 : | stringtype : bool ref, | ||
26 : | stringstart : int ref, (* start of current string or comment*) | ||
27 : | brack_stack : int ref list ref, (* for frags *) | ||
28 : | err : pos*pos -> ErrorMsg.complainer | ||
29 : | } | ||
30 : | type arg = lexarg | ||
31 : | type ('a,'b) token = ('a,'b) Tokens.token | ||
32 : | fun eof ({comLevel,err,charlist,stringstart,sourceMap, ...} : lexarg) = let | ||
33 : | val pos = Int.max(!stringstart+2, SourceMap.lastChange sourceMap) | ||
34 : | in | ||
35 : | if !comLevel>0 | ||
36 : | then err (!stringstart,pos) COMPLAIN "unclosed comment" nullErrorBody | ||
37 : | else if !charlist <> [] | ||
38 : | then err (!stringstart,pos) COMPLAIN | ||
39 : | "unclosed string, character, or quotation" nullErrorBody | ||
40 : | |||
41 : | else (); | ||
42 : | Tokens.EOF(pos,pos) | ||
43 : | end | ||
44 : | fun addString (charlist,s:string) = charlist := s :: (!charlist) | ||
45 : | fun addChar (charlist, c:char) = addString(charlist, String.str c) | ||
46 : | fun makeString charlist = (concat(rev(!charlist)) before charlist := nil) | ||
47 : | |||
48 : | local | ||
49 : | fun cvt radix (s, i) = | ||
50 : | #1(valOf(IntInf.scan radix Substring.getc (Substring.triml i (Substring.all s)))) | ||
51 : | in | ||
52 : | val atoi = cvt StringCvt.DEC | ||
53 : | val xtoi = cvt StringCvt.HEX | ||
54 : | end (* local *) | ||
55 : | |||
56 : | fun mysynch (src, pos, parts) = | ||
57 : | let fun digit d = Char.ord d - Char.ord #"0" | ||
58 : | fun cvt digits = foldl (fn(d, n) => 10*n + digit d) 0 (explode digits) | ||
59 : | val r = SourceMap.resynch src | ||
60 : | in case parts | ||
61 : | of [col, line] => | ||
62 : | r (pos, {fileName=NONE, line=cvt line, column=SOME(cvt col)}) | ||
63 : | | [file, col, line] => | ||
64 : | r (pos, {fileName=SOME file, line=cvt line, column=SOME(cvt col)}) | ||
65 : | | _ => impossible "text in (*#line...*)" | ||
66 : | end | ||
67 : | |||
68 : | fun has_quote s = let | ||
69 : | fun loop i = ((String.sub(s,i) = #"`") orelse loop (i+1)) | ||
70 : | handle _ => false | ||
71 : | in | ||
72 : | loop 0 | ||
73 : | end | ||
74 : | |||
75 : | fun inc (ri as ref i) = (ri := i+1) | ||
76 : | fun dec (ri as ref i) = (ri := i-1) | ||
77 : | end (* end of user routines *) | ||
78 : | exception LexError (* raised if illegal leaf action tried *) | ||
79 : | structure Internal = | ||
80 : | struct | ||
81 : | |||
82 : | datatype yyfinstate = N of int | ||
83 : | type statedata = {fin : yyfinstate list, trans: string} | ||
84 : | (* transition & final state table *) | ||
85 : | val tab = let | ||
86 : | val s = [ | ||
87 : | (0, | ||
88 : | "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
89 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
90 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
91 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
92 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
93 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
94 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
95 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
96 : | \\000" | ||
97 : | ), | ||
98 : | (1, | ||
99 : | "\022\022\022\022\022\022\022\022\022\082\085\022\082\084\022\022\ | ||
100 : | \\022\022\022\022\022\022\022\022\022\022\022\022\022\022\022\022\ | ||
101 : | \\082\039\081\078\039\039\039\073\065\064\062\039\061\039\058\039\ | ||
102 : | \\050\048\048\048\048\048\048\048\048\048\039\047\039\039\039\039\ | ||
103 : | \\039\041\041\041\041\041\041\041\041\041\041\041\041\041\041\041\ | ||
104 : | \\041\041\041\041\041\041\041\041\041\041\041\046\039\045\039\044\ | ||
105 : | \\043\041\041\041\041\041\041\041\041\041\041\041\041\041\041\041\ | ||
106 : | \\041\041\041\041\041\041\041\041\041\041\041\040\039\038\023\022\ | ||
107 : | \\021" | ||
108 : | ), | ||
109 : | (3, | ||
110 : | "\086\086\086\086\086\086\086\086\086\086\092\086\086\091\086\086\ | ||
111 : | \\086\086\086\086\086\086\086\086\086\086\086\086\086\086\086\086\ | ||
112 : | \\086\086\086\086\086\086\086\086\089\086\087\086\086\086\086\086\ | ||
113 : | \\086\086\086\086\086\086\086\086\086\086\086\086\086\086\086\086\ | ||
114 : | \\086\086\086\086\086\086\086\086\086\086\086\086\086\086\086\086\ | ||
115 : | \\086\086\086\086\086\086\086\086\086\086\086\086\086\086\086\086\ | ||
116 : | \\086\086\086\086\086\086\086\086\086\086\086\086\086\086\086\086\ | ||
117 : | \\086\086\086\086\086\086\086\086\086\086\086\086\086\086\086\086\ | ||
118 : | \\086" | ||
119 : | ), | ||
120 : | (5, | ||
121 : | "\115\115\115\115\115\115\115\115\115\115\118\115\115\116\115\115\ | ||
122 : | \\115\115\115\115\115\115\115\115\115\115\115\115\115\115\115\115\ | ||
123 : | \\093\094\114\094\094\094\094\094\094\094\094\094\094\094\094\094\ | ||
124 : | \\094\094\094\094\094\094\094\094\094\094\094\094\094\094\094\094\ | ||
125 : | \\094\094\094\094\094\094\094\094\094\094\094\094\094\094\094\094\ | ||
126 : | \\094\094\094\094\094\094\094\094\094\094\094\094\095\094\094\094\ | ||
127 : | \\094\094\094\094\094\094\094\094\094\094\094\094\094\094\094\094\ | ||
128 : | \\094\094\094\094\094\094\094\094\094\094\094\094\094\094\094\093\ | ||
129 : | \\093" | ||
130 : | ), | ||
131 : | (7, | ||
132 : | "\119\119\119\119\119\119\119\119\119\121\124\119\121\123\119\119\ | ||
133 : | \\119\119\119\119\119\119\119\119\119\119\119\119\119\119\119\119\ | ||
134 : | \\121\119\119\119\119\119\119\119\119\119\119\119\119\119\119\119\ | ||
135 : | \\119\119\119\119\119\119\119\119\119\119\119\119\119\119\119\119\ | ||
136 : | \\119\119\119\119\119\119\119\119\119\119\119\119\119\119\119\119\ | ||
137 : | \\119\119\119\119\119\119\119\119\119\119\119\119\120\119\119\119\ | ||
138 : | \\119\119\119\119\119\119\119\119\119\119\119\119\119\119\119\119\ | ||
139 : | \\119\119\119\119\119\119\119\119\119\119\119\119\119\119\119\119\ | ||
140 : | \\119" | ||
141 : | ), | ||
142 : | (9, | ||
143 : | "\125\125\125\125\125\125\125\125\125\125\131\125\125\130\125\125\ | ||
144 : | \\125\125\125\125\125\125\125\125\125\125\125\125\125\125\125\125\ | ||
145 : | \\125\125\125\125\125\125\125\125\125\125\125\125\125\125\125\125\ | ||
146 : | \\125\125\125\125\125\125\125\125\125\125\125\125\125\125\125\125\ | ||
147 : | \\125\125\125\125\125\125\125\125\125\125\125\125\125\125\125\125\ | ||
148 : | \\125\125\125\125\125\125\125\125\125\125\125\125\125\125\127\125\ | ||
149 : | \\126\125\125\125\125\125\125\125\125\125\125\125\125\125\125\125\ | ||
150 : | \\125\125\125\125\125\125\125\125\125\125\125\125\125\125\125\125\ | ||
151 : | \\125" | ||
152 : | ), | ||
153 : | (11, | ||
154 : | "\132\132\132\132\132\132\132\132\132\138\141\132\138\140\132\132\ | ||
155 : | \\132\132\132\132\132\132\132\132\132\132\132\132\132\132\132\132\ | ||
156 : | \\138\133\132\133\133\133\133\132\137\132\133\133\132\133\132\133\ | ||
157 : | \\132\132\132\132\132\132\132\132\132\132\133\132\133\133\133\133\ | ||
158 : | \\133\135\135\135\135\135\135\135\135\135\135\135\135\135\135\135\ | ||
159 : | \\135\135\135\135\135\135\135\135\135\135\135\132\133\132\133\132\ | ||
160 : | \\132\135\135\135\135\135\135\135\135\135\135\135\135\135\135\135\ | ||
161 : | \\135\135\135\135\135\135\135\135\135\135\135\132\133\132\133\132\ | ||
162 : | \\132" | ||
163 : | ), | ||
164 : | (13, | ||
165 : | "\142\142\142\142\142\142\142\142\142\142\000\142\142\142\142\142\ | ||
166 : | \\142\142\142\142\142\142\142\142\142\142\142\142\142\142\142\142\ | ||
167 : | \\142\142\142\142\142\142\142\142\142\142\145\142\142\142\142\142\ | ||
168 : | \\143\143\143\143\143\143\143\143\143\143\142\142\142\142\142\142\ | ||
169 : | \\142\142\142\142\142\142\142\142\142\142\142\142\142\142\142\142\ | ||
170 : | \\142\142\142\142\142\142\142\142\142\142\142\142\142\142\142\142\ | ||
171 : | \\142\142\142\142\142\142\142\142\142\142\142\142\142\142\142\142\ | ||
172 : | \\142\142\142\142\142\142\142\142\142\142\142\142\142\142\142\142\ | ||
173 : | \\142" | ||
174 : | ), | ||
175 : | (15, | ||
176 : | "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
177 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
178 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\149\000\ | ||
179 : | \\148\147\147\147\147\147\147\147\147\147\000\000\000\000\000\000\ | ||
180 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
181 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
182 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
183 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
184 : | \\000" | ||
185 : | ), | ||
186 : | (17, | ||
187 : | "\142\142\142\142\142\142\142\142\142\153\000\142\153\142\142\142\ | ||
188 : | \\142\142\142\142\142\142\142\142\142\142\142\142\142\142\142\142\ | ||
189 : | \\153\142\152\142\142\142\142\142\142\142\150\142\142\142\142\142\ | ||
190 : | \\142\142\142\142\142\142\142\142\142\142\142\142\142\142\142\142\ | ||
191 : | \\142\142\142\142\142\142\142\142\142\142\142\142\142\142\142\142\ | ||
192 : | \\142\142\142\142\142\142\142\142\142\142\142\142\142\142\142\142\ | ||
193 : | \\142\142\142\142\142\142\142\142\142\142\142\142\142\142\142\142\ | ||
194 : | \\142\142\142\142\142\142\142\142\142\142\142\142\142\142\142\142\ | ||
195 : | \\142" | ||
196 : | ), | ||
197 : | (19, | ||
198 : | "\156\156\156\156\156\156\156\156\156\156\157\156\156\156\156\156\ | ||
199 : | \\156\156\156\156\156\156\156\156\156\156\156\156\156\156\156\156\ | ||
200 : | \\156\156\160\156\156\156\156\156\156\156\158\156\156\156\156\156\ | ||
201 : | \\156\156\156\156\156\156\156\156\156\156\156\156\156\156\156\156\ | ||
202 : | \\156\156\156\156\156\156\156\156\156\156\156\156\156\156\156\156\ | ||
203 : | \\156\156\156\156\156\156\156\156\156\156\156\156\156\156\156\156\ | ||
204 : | \\156\156\156\156\156\156\156\156\156\156\156\156\156\156\156\156\ | ||
205 : | \\156\156\156\156\156\156\156\156\156\156\156\156\156\156\156\156\ | ||
206 : | \\156" | ||
207 : | ), | ||
208 : | (23, | ||
209 : | "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
210 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
211 : | \\000\024\000\024\024\024\024\000\000\000\024\024\000\024\000\024\ | ||
212 : | \\035\026\026\026\026\026\026\026\026\026\024\000\024\024\024\024\ | ||
213 : | \\024\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
214 : | \\000\000\000\000\000\000\000\000\000\000\000\000\024\000\024\000\ | ||
215 : | \\025\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
216 : | \\000\000\000\000\000\000\000\000\000\000\000\000\024\000\024\000\ | ||
217 : | \\000" | ||
218 : | ), | ||
219 : | (24, | ||
220 : | "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
221 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
222 : | \\000\024\000\024\024\024\024\000\000\000\024\024\000\024\000\024\ | ||
223 : | \\000\000\000\000\000\000\000\000\000\000\024\000\024\024\024\024\ | ||
224 : | \\024\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
225 : | \\000\000\000\000\000\000\000\000\000\000\000\000\024\000\024\000\ | ||
226 : | \\025\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
227 : | \\000\000\000\000\000\000\000\000\000\000\000\000\024\000\024\000\ | ||
228 : | \\000" | ||
229 : | ), | ||
230 : | (25, | ||
231 : | "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
232 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
233 : | \\000\025\000\025\025\025\025\000\000\000\025\025\000\025\000\025\ | ||
234 : | \\000\000\000\000\000\000\000\000\000\000\025\000\025\025\025\025\ | ||
235 : | \\025\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
236 : | \\000\000\000\000\000\000\000\000\000\000\000\000\025\000\025\000\ | ||
237 : | \\025\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
238 : | \\000\000\000\000\000\000\000\000\000\000\000\000\025\000\025\000\ | ||
239 : | \\000" | ||
240 : | ), | ||
241 : | (26, | ||
242 : | "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
243 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
244 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\030\000\ | ||
245 : | \\026\026\026\026\026\026\026\026\026\026\000\000\000\000\000\000\ | ||
246 : | \\000\000\000\000\000\027\000\000\000\000\000\000\000\000\000\000\ | ||
247 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
248 : | \\000\000\000\000\000\027\000\000\000\000\000\000\000\000\000\000\ | ||
249 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
250 : | \\000" | ||
251 : | ), | ||
252 : | (27, | ||
253 : | "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
254 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
255 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
256 : | \\029\029\029\029\029\029\029\029\029\029\000\000\000\000\000\000\ | ||
257 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
258 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
259 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
260 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\028\000\ | ||
261 : | \\000" | ||
262 : | ), | ||
263 : | (28, | ||
264 : | "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
265 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
266 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
267 : | \\029\029\029\029\029\029\029\029\029\029\000\000\000\000\000\000\ | ||
268 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
269 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
270 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
271 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
272 : | \\000" | ||
273 : | ), | ||
274 : | (30, | ||
275 : | "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
276 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
277 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
278 : | \\031\031\031\031\031\031\031\031\031\031\000\000\000\000\000\000\ | ||
279 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
280 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
281 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
282 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
283 : | \\000" | ||
284 : | ), | ||
285 : | (31, | ||
286 : | "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
287 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
288 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
289 : | \\031\031\031\031\031\031\031\031\031\031\000\000\000\000\000\000\ | ||
290 : | \\000\000\000\000\000\032\000\000\000\000\000\000\000\000\000\000\ | ||
291 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
292 : | \\000\000\000\000\000\032\000\000\000\000\000\000\000\000\000\000\ | ||
293 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
294 : | \\000" | ||
295 : | ), | ||
296 : | (32, | ||
297 : | "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
298 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
299 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
300 : | \\034\034\034\034\034\034\034\034\034\034\000\000\000\000\000\000\ | ||
301 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
302 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
303 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
304 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\033\000\ | ||
305 : | \\000" | ||
306 : | ), | ||
307 : | (33, | ||
308 : | "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
309 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
310 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
311 : | \\034\034\034\034\034\034\034\034\034\034\000\000\000\000\000\000\ | ||
312 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
313 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
314 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
315 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
316 : | \\000" | ||
317 : | ), | ||
318 : | (35, | ||
319 : | "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
320 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
321 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\030\000\ | ||
322 : | \\026\026\026\026\026\026\026\026\026\026\000\000\000\000\000\000\ | ||
323 : | \\000\000\000\000\000\027\000\000\000\000\000\000\000\000\000\000\ | ||
324 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
325 : | \\000\000\000\000\000\027\000\000\000\000\000\000\000\000\000\000\ | ||
326 : | \\000\000\000\000\000\000\000\000\036\000\000\000\000\000\000\000\ | ||
327 : | \\000" | ||
328 : | ), | ||
329 : | (36, | ||
330 : | "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
331 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
332 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
333 : | \\037\037\037\037\037\037\037\037\037\037\000\000\000\000\000\000\ | ||
334 : | \\000\037\037\037\037\037\037\000\000\000\000\000\000\000\000\000\ | ||
335 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
336 : | \\000\037\037\037\037\037\037\000\000\000\000\000\000\000\000\000\ | ||
337 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
338 : | \\000" | ||
339 : | ), | ||
340 : | (41, | ||
341 : | "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
342 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
343 : | \\000\000\000\000\000\000\000\042\000\000\000\000\000\000\000\000\ | ||
344 : | \\042\042\042\042\042\042\042\042\042\042\000\000\000\000\000\000\ | ||
345 : | \\000\042\042\042\042\042\042\042\042\042\042\042\042\042\042\042\ | ||
346 : | \\042\042\042\042\042\042\042\042\042\042\042\000\000\000\000\042\ | ||
347 : | \\000\042\042\042\042\042\042\042\042\042\042\042\042\042\042\042\ | ||
348 : | \\042\042\042\042\042\042\042\042\042\042\042\000\000\000\000\000\ | ||
349 : | \\000" | ||
350 : | ), | ||
351 : | (48, | ||
352 : | "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
353 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
354 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\030\000\ | ||
355 : | \\049\049\049\049\049\049\049\049\049\049\000\000\000\000\000\000\ | ||
356 : | \\000\000\000\000\000\027\000\000\000\000\000\000\000\000\000\000\ | ||
357 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
358 : | \\000\000\000\000\000\027\000\000\000\000\000\000\000\000\000\000\ | ||
359 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
360 : | \\000" | ||
361 : | ), | ||
362 : | (50, | ||
363 : | "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
364 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
365 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\030\000\ | ||
366 : | \\057\057\057\057\057\057\057\057\057\057\000\000\000\000\000\000\ | ||
367 : | \\000\000\000\000\000\027\000\000\000\000\000\000\000\000\000\000\ | ||
368 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
369 : | \\000\000\000\000\000\027\000\000\000\000\000\000\000\000\000\000\ | ||
370 : | \\000\000\000\000\000\000\000\053\051\000\000\000\000\000\000\000\ | ||
371 : | \\000" | ||
372 : | ), | ||
373 : | (51, | ||
374 : | "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
375 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
376 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
377 : | \\052\052\052\052\052\052\052\052\052\052\000\000\000\000\000\000\ | ||
378 : | \\000\052\052\052\052\052\052\000\000\000\000\000\000\000\000\000\ | ||
379 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
380 : | \\000\052\052\052\052\052\052\000\000\000\000\000\000\000\000\000\ | ||
381 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
382 : | \\000" | ||
383 : | ), | ||
384 : | (53, | ||
385 : | "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
386 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
387 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
388 : | \\056\056\056\056\056\056\056\056\056\056\000\000\000\000\000\000\ | ||
389 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
390 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
391 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
392 : | \\000\000\000\000\000\000\000\000\054\000\000\000\000\000\000\000\ | ||
393 : | \\000" | ||
394 : | ), | ||
395 : | (54, | ||
396 : | "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
397 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
398 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
399 : | \\055\055\055\055\055\055\055\055\055\055\000\000\000\000\000\000\ | ||
400 : | \\000\055\055\055\055\055\055\000\000\000\000\000\000\000\000\000\ | ||
401 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
402 : | \\000\055\055\055\055\055\055\000\000\000\000\000\000\000\000\000\ | ||
403 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
404 : | \\000" | ||
405 : | ), | ||
406 : | (56, | ||
407 : | "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
408 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
409 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
410 : | \\056\056\056\056\056\056\056\056\056\056\000\000\000\000\000\000\ | ||
411 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
412 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
413 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
414 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
415 : | \\000" | ||
416 : | ), | ||
417 : | (57, | ||
418 : | "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
419 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
420 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\030\000\ | ||
421 : | \\057\057\057\057\057\057\057\057\057\057\000\000\000\000\000\000\ | ||
422 : | \\000\000\000\000\000\027\000\000\000\000\000\000\000\000\000\000\ | ||
423 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
424 : | \\000\000\000\000\000\027\000\000\000\000\000\000\000\000\000\000\ | ||
425 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
426 : | \\000" | ||
427 : | ), | ||
428 : | (58, | ||
429 : | "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
430 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
431 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\059\000\ | ||
432 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
433 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
434 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
435 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
436 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
437 : | \\000" | ||
438 : | ), | ||
439 : | (59, | ||
440 : | "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
441 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
442 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\060\000\ | ||
443 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
444 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
445 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
446 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
447 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
448 : | \\000" | ||
449 : | ), | ||
450 : | (62, | ||
451 : | "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
452 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
453 : | \\000\024\000\024\024\024\024\000\000\063\024\024\000\024\000\024\ | ||
454 : | \\000\000\000\000\000\000\000\000\000\000\024\000\024\024\024\024\ | ||
455 : | \\024\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
456 : | \\000\000\000\000\000\000\000\000\000\000\000\000\024\000\024\000\ | ||
457 : | \\025\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
458 : | \\000\000\000\000\000\000\000\000\000\000\000\000\024\000\024\000\ | ||
459 : | \\000" | ||
460 : | ), | ||
461 : | (65, | ||
462 : | "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
463 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
464 : | \\000\000\000\000\000\000\000\000\000\000\066\000\000\000\000\000\ | ||
465 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
466 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
467 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
468 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
469 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
470 : | \\000" | ||
471 : | ), | ||
472 : | (66, | ||
473 : | "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
474 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
475 : | \\000\000\000\067\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
476 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
477 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
478 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
479 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
480 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
481 : | \\000" | ||
482 : | ), | ||
483 : | (67, | ||
484 : | "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
485 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
486 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
487 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
488 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
489 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
490 : | \\000\000\000\000\000\000\000\000\000\000\000\000\068\000\000\000\ | ||
491 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
492 : | \\000" | ||
493 : | ), | ||
494 : | (68, | ||
495 : | "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
496 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
497 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
498 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
499 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
500 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
501 : | \\000\000\000\000\000\000\000\000\000\069\000\000\000\000\000\000\ | ||
502 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
503 : | \\000" | ||
504 : | ), | ||
505 : | (69, | ||
506 : | "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
507 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
508 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
509 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
510 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
511 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
512 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\070\000\ | ||
513 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
514 : | \\000" | ||
515 : | ), | ||
516 : | (70, | ||
517 : | "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
518 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
519 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
520 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
521 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
522 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
523 : | \\000\000\000\000\000\071\000\000\000\000\000\000\000\000\000\000\ | ||
524 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
525 : | \\000" | ||
526 : | ), | ||
527 : | (71, | ||
528 : | "\000\000\000\000\000\000\000\000\000\072\000\000\072\000\000\000\ | ||
529 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
530 : | \\072\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
531 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
532 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
533 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
534 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
535 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
536 : | \\000" | ||
537 : | ), | ||
538 : | (73, | ||
539 : | "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
540 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
541 : | \\000\000\000\000\000\000\000\077\000\000\000\000\000\000\000\000\ | ||
542 : | \\076\076\076\076\076\076\076\076\076\076\000\000\000\000\000\000\ | ||
543 : | \\000\074\074\074\074\074\074\074\074\074\074\074\074\074\074\074\ | ||
544 : | \\074\074\074\074\074\074\074\074\074\074\074\000\000\000\000\075\ | ||
545 : | \\000\074\074\074\074\074\074\074\074\074\074\074\074\074\074\074\ | ||
546 : | \\074\074\074\074\074\074\074\074\074\074\074\000\000\000\000\000\ | ||
547 : | \\000" | ||
548 : | ), | ||
549 : | (74, | ||
550 : | "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
551 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
552 : | \\000\000\000\000\000\000\000\074\000\000\000\000\000\000\000\000\ | ||
553 : | \\074\074\074\074\074\074\074\074\074\074\000\000\000\000\000\000\ | ||
554 : | \\000\074\074\074\074\074\074\074\074\074\074\074\074\074\074\074\ | ||
555 : | \\074\074\074\074\074\074\074\074\074\074\074\000\000\000\000\074\ | ||
556 : | \\000\074\074\074\074\074\074\074\074\074\074\074\074\074\074\074\ | ||
557 : | \\074\074\074\074\074\074\074\074\074\074\074\000\000\000\000\000\ | ||
558 : | \\000" | ||
559 : | ), | ||
560 : | (75, | ||
561 : | "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
562 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
563 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
564 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
565 : | \\000\074\074\074\074\074\074\074\074\074\074\074\074\074\074\074\ | ||
566 : | \\074\074\074\074\074\074\074\074\074\074\074\000\000\000\000\000\ | ||
567 : | \\000\074\074\074\074\074\074\074\074\074\074\074\074\074\074\074\ | ||
568 : | \\074\074\074\074\074\074\074\074\074\074\074\000\000\000\000\000\ | ||
569 : | \\000" | ||
570 : | ), | ||
571 : | (76, | ||
572 : | "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
573 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
574 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
575 : | \\076\076\076\076\076\076\076\076\076\076\000\000\000\000\000\000\ | ||
576 : | \\000\074\074\074\074\074\074\074\074\074\074\074\074\074\074\074\ | ||
577 : | \\074\074\074\074\074\074\074\074\074\074\074\000\000\000\000\000\ | ||
578 : | \\000\074\074\074\074\074\074\074\074\074\074\074\074\074\074\074\ | ||
579 : | \\074\074\074\074\074\074\074\074\074\074\074\000\000\000\000\000\ | ||
580 : | \\000" | ||
581 : | ), | ||
582 : | (77, | ||
583 : | "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
584 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
585 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
586 : | \\076\076\076\076\076\076\076\076\076\076\000\000\000\000\000\000\ | ||
587 : | \\000\074\074\074\074\074\074\074\074\074\074\074\074\074\074\074\ | ||
588 : | \\074\074\074\074\074\074\074\074\074\074\074\000\000\000\000\075\ | ||
589 : | \\000\074\074\074\074\074\074\074\074\074\074\074\074\074\074\074\ | ||
590 : | \\074\074\074\074\074\074\074\074\074\074\074\000\000\000\000\000\ | ||
591 : | \\000" | ||
592 : | ), | ||
593 : | (78, | ||
594 : | "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
595 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
596 : | \\000\024\080\024\024\024\024\000\000\000\024\024\000\024\000\024\ | ||
597 : | \\000\000\000\000\000\000\000\000\000\000\024\000\024\024\024\024\ | ||
598 : | \\024\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
599 : | \\000\000\000\000\000\000\000\000\000\000\000\079\024\000\024\000\ | ||
600 : | \\025\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
601 : | \\000\000\000\000\000\000\000\000\000\000\000\000\024\000\024\000\ | ||
602 : | \\000" | ||
603 : | ), | ||
604 : | (82, | ||
605 : | "\000\000\000\000\000\000\000\000\000\083\000\000\083\000\000\000\ | ||
606 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
607 : | \\083\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
608 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
609 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
610 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
611 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
612 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
613 : | \\000" | ||
614 : | ), | ||
615 : | (84, | ||
616 : | "\000\000\000\000\000\000\000\000\000\000\085\000\000\000\000\000\ | ||
617 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
618 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
619 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
620 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
621 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
622 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
623 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
624 : | \\000" | ||
625 : | ), | ||
626 : | (87, | ||
627 : | "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
628 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
629 : | \\000\000\000\000\000\000\000\000\000\088\000\000\000\000\000\000\ | ||
630 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
631 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
632 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
633 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
634 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
635 : | \\000" | ||
636 : | ), | ||
637 : | (89, | ||
638 : | "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
639 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
640 : | \\000\000\000\000\000\000\000\000\000\000\090\000\000\000\000\000\ | ||
641 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
642 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
643 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
644 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
645 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
646 : | \\000" | ||
647 : | ), | ||
648 : | (91, | ||
649 : | "\000\000\000\000\000\000\000\000\000\000\092\000\000\000\000\000\ | ||
650 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
651 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
652 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
653 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
654 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
655 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
656 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
657 : | \\000" | ||
658 : | ), | ||
659 : | (94, | ||
660 : | "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
661 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
662 : | \\000\094\000\094\094\094\094\094\094\094\094\094\094\094\094\094\ | ||
663 : | \\094\094\094\094\094\094\094\094\094\094\094\094\094\094\094\094\ | ||
664 : | \\094\094\094\094\094\094\094\094\094\094\094\094\094\094\094\094\ | ||
665 : | \\094\094\094\094\094\094\094\094\094\094\094\094\000\094\094\094\ | ||
666 : | \\094\094\094\094\094\094\094\094\094\094\094\094\094\094\094\094\ | ||
667 : | \\094\094\094\094\094\094\094\094\094\094\094\094\094\094\094\000\ | ||
668 : | \\000" | ||
669 : | ), | ||
670 : | (95, | ||
671 : | "\000\000\000\000\000\000\000\000\000\111\113\000\111\112\000\000\ | ||
672 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
673 : | \\111\000\110\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
674 : | \\107\107\107\107\107\107\107\107\107\107\000\000\000\000\000\000\ | ||
675 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
676 : | \\000\000\000\000\000\000\000\000\000\000\000\000\106\000\103\000\ | ||
677 : | \\000\102\101\000\000\000\100\000\000\000\000\000\000\000\099\000\ | ||
678 : | \\000\000\098\000\097\000\096\000\000\000\000\000\000\000\000\000\ | ||
679 : | \\000" | ||
680 : | ), | ||
681 : | (103, | ||
682 : | "\104\104\104\104\104\104\104\104\104\104\000\104\104\104\104\104\ | ||
683 : | \\104\104\104\104\104\104\104\104\104\104\104\104\104\104\104\104\ | ||
684 : | \\104\104\104\104\104\104\104\104\104\104\104\104\104\104\104\104\ | ||
685 : | \\104\104\104\104\104\104\104\104\104\104\104\104\104\104\104\104\ | ||
686 : | \\105\105\105\105\105\105\105\105\105\105\105\105\105\105\105\105\ | ||
687 : | \\105\105\105\105\105\105\105\105\105\105\105\105\105\105\105\105\ | ||
688 : | \\104\104\104\104\104\104\104\104\104\104\104\104\104\104\104\104\ | ||
689 : | \\104\104\104\104\104\104\104\104\104\104\104\104\104\104\104\104\ | ||
690 : | \\104" | ||
691 : | ), | ||
692 : | (107, | ||
693 : | "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
694 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
695 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
696 : | \\108\108\108\108\108\108\108\108\108\108\000\000\000\000\000\000\ | ||
697 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
698 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
699 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
700 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
701 : | \\000" | ||
702 : | ), | ||
703 : | (108, | ||
704 : | "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
705 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
706 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
707 : | \\109\109\109\109\109\109\109\109\109\109\000\000\000\000\000\000\ | ||
708 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
709 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
710 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
711 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
712 : | \\000" | ||
713 : | ), | ||
714 : | (111, | ||
715 : | "\000\000\000\000\000\000\000\000\000\111\000\000\111\000\000\000\ | ||
716 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
717 : | \\111\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
718 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
719 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
720 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
721 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
722 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
723 : | \\000" | ||
724 : | ), | ||
725 : | (112, | ||
726 : | "\000\000\000\000\000\000\000\000\000\000\113\000\000\000\000\000\ | ||
727 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
728 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
729 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
730 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
731 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
732 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
733 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
734 : | \\000" | ||
735 : | ), | ||
736 : | (116, | ||
737 : | "\000\000\000\000\000\000\000\000\000\000\117\000\000\000\000\000\ | ||
738 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
739 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
740 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
741 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
742 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
743 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
744 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
745 : | \\000" | ||
746 : | ), | ||
747 : | (121, | ||
748 : | "\000\000\000\000\000\000\000\000\000\122\000\000\122\000\000\000\ | ||
749 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
750 : | \\122\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
751 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
752 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
753 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
754 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
755 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
756 : | \\000" | ||
757 : | ), | ||
758 : | (123, | ||
759 : | "\000\000\000\000\000\000\000\000\000\000\124\000\000\000\000\000\ | ||
760 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
761 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
762 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
763 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
764 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
765 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
766 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
767 : | \\000" | ||
768 : | ), | ||
769 : | (127, | ||
770 : | "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
771 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
772 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
773 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
774 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
775 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\129\000\ | ||
776 : | \\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
777 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
778 : | \\000" | ||
779 : | ), | ||
780 : | (130, | ||
781 : | "\000\000\000\000\000\000\000\000\000\000\131\000\000\000\000\000\ | ||
782 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
783 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
784 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
785 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
786 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
787 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
788 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
789 : | \\000" | ||
790 : | ), | ||
791 : | (133, | ||
792 : | "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
793 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
794 : | \\000\134\000\134\134\134\134\000\000\000\134\134\000\134\000\134\ | ||
795 : | \\000\000\000\000\000\000\000\000\000\000\134\000\134\134\134\134\ | ||
796 : | \\134\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
797 : | \\000\000\000\000\000\000\000\000\000\000\000\000\134\000\134\000\ | ||
798 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
799 : | \\000\000\000\000\000\000\000\000\000\000\000\000\134\000\134\000\ | ||
800 : | \\000" | ||
801 : | ), | ||
802 : | (135, | ||
803 : | "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
804 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
805 : | \\000\000\000\000\000\000\000\136\000\000\000\000\000\000\000\000\ | ||
806 : | \\136\136\136\136\136\136\136\136\136\136\000\000\000\000\000\000\ | ||
807 : | \\000\136\136\136\136\136\136\136\136\136\136\136\136\136\136\136\ | ||
808 : | \\136\136\136\136\136\136\136\136\136\136\136\000\000\000\000\136\ | ||
809 : | \\000\136\136\136\136\136\136\136\136\136\136\136\136\136\136\136\ | ||
810 : | \\136\136\136\136\136\136\136\136\136\136\136\000\000\000\000\000\ | ||
811 : | \\000" | ||
812 : | ), | ||
813 : | (138, | ||
814 : | "\000\000\000\000\000\000\000\000\000\139\000\000\139\000\000\000\ | ||
815 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
816 : | \\139\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
817 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
818 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
819 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
820 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
821 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
822 : | \\000" | ||
823 : | ), | ||
824 : | (140, | ||
825 : | "\000\000\000\000\000\000\000\000\000\000\141\000\000\000\000\000\ | ||
826 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
827 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
828 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
829 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
830 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
831 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
832 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
833 : | \\000" | ||
834 : | ), | ||
835 : | (143, | ||
836 : | "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
837 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
838 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
839 : | \\144\144\144\144\144\144\144\144\144\144\000\000\000\000\000\000\ | ||
840 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
841 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
842 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
843 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
844 : | \\000" | ||
845 : | ), | ||
846 : | (145, | ||
847 : | "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
848 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
849 : | \\000\000\000\000\000\000\000\000\000\146\000\000\000\000\000\000\ | ||
850 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
851 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
852 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
853 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
854 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
855 : | \\000" | ||
856 : | ), | ||
857 : | (147, | ||
858 : | "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
859 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
860 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
861 : | \\147\147\147\147\147\147\147\147\147\147\000\000\000\000\000\000\ | ||
862 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
863 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
864 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
865 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
866 : | \\000" | ||
867 : | ), | ||
868 : | (148, | ||
869 : | "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
870 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
871 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
872 : | \\148\147\147\147\147\147\147\147\147\147\000\000\000\000\000\000\ | ||
873 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
874 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
875 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
876 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
877 : | \\000" | ||
878 : | ), | ||
879 : | (150, | ||
880 : | "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
881 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
882 : | \\000\000\000\000\000\000\000\000\000\151\000\000\000\000\000\000\ | ||
883 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
884 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
885 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
886 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
887 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
888 : | \\000" | ||
889 : | ), | ||
890 : | (153, | ||
891 : | "\000\000\000\000\000\000\000\000\000\155\000\000\155\000\000\000\ | ||
892 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
893 : | \\155\000\154\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
894 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
895 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
896 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
897 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
898 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
899 : | \\000" | ||
900 : | ), | ||
901 : | (156, | ||
902 : | "\157\157\157\157\157\157\157\157\157\157\157\157\157\157\157\157\ | ||
903 : | \\157\157\157\157\157\157\157\157\157\157\157\157\157\157\157\157\ | ||
904 : | \\157\157\000\157\157\157\157\157\157\157\157\157\157\157\157\157\ | ||
905 : | \\157\157\157\157\157\157\157\157\157\157\157\157\157\157\157\157\ | ||
906 : | \\157\157\157\157\157\157\157\157\157\157\157\157\157\157\157\157\ | ||
907 : | \\157\157\157\157\157\157\157\157\157\157\157\157\157\157\157\157\ | ||
908 : | \\157\157\157\157\157\157\157\157\157\157\157\157\157\157\157\157\ | ||
909 : | \\157\157\157\157\157\157\157\157\157\157\157\157\157\157\157\157\ | ||
910 : | \\157" | ||
911 : | ), | ||
912 : | (158, | ||
913 : | "\157\157\157\157\157\157\157\157\157\157\157\157\157\157\157\157\ | ||
914 : | \\157\157\157\157\157\157\157\157\157\157\157\157\157\157\157\157\ | ||
915 : | \\157\157\000\157\157\157\157\157\157\159\157\157\157\157\157\157\ | ||
916 : | \\157\157\157\157\157\157\157\157\157\157\157\157\157\157\157\157\ | ||
917 : | \\157\157\157\157\157\157\157\157\157\157\157\157\157\157\157\157\ | ||
918 : | \\157\157\157\157\157\157\157\157\157\157\157\157\157\157\157\157\ | ||
919 : | \\157\157\157\157\157\157\157\157\157\157\157\157\157\157\157\157\ | ||
920 : | \\157\157\157\157\157\157\157\157\157\157\157\157\157\157\157\157\ | ||
921 : | \\157" | ||
922 : | ), | ||
923 : | (160, | ||
924 : | "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
925 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
926 : | \\000\000\000\000\000\000\000\000\000\000\161\000\000\000\000\000\ | ||
927 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
928 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
929 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
930 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
931 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
932 : | \\000" | ||
933 : | ), | ||
934 : | (161, | ||
935 : | "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
936 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
937 : | \\000\000\000\000\000\000\000\000\000\162\000\000\000\000\000\000\ | ||
938 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
939 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
940 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
941 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
942 : | \\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ | ||
943 : | \\000" | ||
944 : | ), | ||
945 : | (0, "")] | ||
946 : | fun f x = x | ||
947 : | val s = map f (rev (tl (rev s))) | ||
948 : | exception LexHackingError | ||
949 : | fun look ((j,x)::r, i) = if i = j then x else look(r, i) | ||
950 : | | look ([], i) = raise LexHackingError | ||
951 : | fun g {fin=x, trans=i} = {fin=x, trans=look(s,i)} | ||
952 : | in Vector.fromList(map g | ||
953 : | [{fin = [], trans = 0}, | ||
954 : | {fin = [(N 2)], trans = 1}, | ||
955 : | {fin = [(N 2)], trans = 1}, | ||
956 : | {fin = [], trans = 3}, | ||
957 : | {fin = [], trans = 3}, | ||
958 : | {fin = [], trans = 5}, | ||
959 : | {fin = [], trans = 5}, | ||
960 : | {fin = [(N 278)], trans = 7}, | ||
961 : | {fin = [(N 278)], trans = 7}, | ||
962 : | {fin = [], trans = 9}, | ||
963 : | {fin = [], trans = 9}, | ||
964 : | {fin = [(N 307)], trans = 11}, | ||
965 : | {fin = [(N 307)], trans = 11}, | ||
966 : | {fin = [], trans = 13}, | ||
967 : | {fin = [], trans = 13}, | ||
968 : | {fin = [(N 156)], trans = 15}, | ||
969 : | {fin = [(N 156)], trans = 15}, | ||
970 : | {fin = [], trans = 17}, | ||
971 : | {fin = [], trans = 17}, | ||
972 : | {fin = [(N 165)], trans = 19}, | ||
973 : | {fin = [(N 165)], trans = 19}, | ||
974 : | {fin = [(N 144),(N 146)], trans = 0}, | ||
975 : | {fin = [(N 146)], trans = 0}, | ||
976 : | {fin = [(N 56),(N 65),(N 146)], trans = 23}, | ||
977 : | {fin = [(N 56),(N 65)], trans = 24}, | ||
978 : | {fin = [(N 56)], trans = 25}, | ||
979 : | {fin = [(N 97)], trans = 26}, | ||
980 : | {fin = [], trans = 27}, | ||
981 : | {fin = [], trans = 28}, | ||
982 : | {fin = [(N 87)], trans = 28}, | ||
983 : | {fin = [], trans = 30}, | ||
984 : | {fin = [(N 87)], trans = 31}, | ||
985 : | {fin = [], trans = 32}, | ||
986 : | {fin = [], trans = 33}, | ||
987 : | {fin = [(N 87)], trans = 33}, | ||
988 : | {fin = [(N 97)], trans = 35}, | ||
989 : | {fin = [], trans = 36}, | ||
990 : | {fin = [(N 108)], trans = 36}, | ||
991 : | {fin = [(N 15),(N 146)], trans = 0}, | ||
992 : | {fin = [(N 56),(N 65),(N 146)], trans = 24}, | ||
993 : | {fin = [(N 13),(N 146)], trans = 0}, | ||
994 : | {fin = [(N 45),(N 146)], trans = 41}, | ||
995 : | {fin = [(N 45)], trans = 41}, | ||
996 : | {fin = [(N 56),(N 67),(N 146)], trans = 25}, | ||
997 : | {fin = [(N 9),(N 146)], trans = 0}, | ||
998 : | {fin = [(N 22),(N 146)], trans = 0}, | ||
999 : | {fin = [(N 17),(N 146)], trans = 0}, | ||
1000 : | {fin = [(N 24),(N 146)], trans = 0}, | ||
1001 : | {fin = [(N 90),(N 93),(N 146)], trans = 48}, | ||
1002 : | {fin = [(N 90),(N 93)], trans = 48}, | ||
1003 : | {fin = [(N 93),(N 146)], trans = 50}, | ||
1004 : | {fin = [], trans = 51}, | ||
1005 : | {fin = [(N 102)], trans = 51}, | ||
1006 : | {fin = [], trans = 53}, | ||
1007 : | {fin = [], trans = 54}, | ||
1008 : | {fin = [(N 119)], trans = 54}, | ||
1009 : | {fin = [(N 113)], trans = 56}, | ||
1010 : | {fin = [(N 93)], trans = 57}, | ||
1011 : | {fin = [(N 30),(N 146)], trans = 58}, | ||
1012 : | {fin = [], trans = 59}, | ||
1013 : | {fin = [(N 34)], trans = 0}, | ||
1014 : | {fin = [(N 11),(N 146)], trans = 0}, | ||
1015 : | {fin = [(N 56),(N 65),(N 146)], trans = 62}, | ||
1016 : | {fin = [(N 142)], trans = 0}, | ||
1017 : | {fin = [(N 28),(N 146)], trans = 0}, | ||
1018 : | {fin = [(N 26),(N 146)], trans = 65}, | ||
1019 : | {fin = [(N 139)], trans = 66}, | ||
1020 : | {fin = [], trans = 67}, | ||
1021 : | {fin = [], trans = 68}, | ||
1022 : | {fin = [], trans = 69}, | ||
1023 : | {fin = [], trans = 70}, | ||
1024 : | {fin = [], trans = 71}, | ||
1025 : | {fin = [(N 136)], trans = 71}, | ||
1026 : | {fin = [(N 146)], trans = 73}, | ||
1027 : | {fin = [(N 42)], trans = 74}, | ||
1028 : | {fin = [], trans = 75}, | ||
1029 : | {fin = [], trans = 76}, | ||
1030 : | {fin = [], trans = 77}, | ||
1031 : | {fin = [(N 56),(N 65),(N 146)], trans = 78}, | ||
1032 : | {fin = [(N 20)], trans = 0}, | ||
1033 : | {fin = [(N 124)], trans = 0}, | ||
1034 : | {fin = [(N 121),(N 146)], trans = 0}, | ||
1035 : | {fin = [(N 2),(N 146)], trans = 82}, | ||
1036 : | {fin = [(N 2)], trans = 82}, | ||
1037 : | {fin = [(N 7),(N 146)], trans = 84}, | ||
1038 : | {fin = [(N 7)], trans = 0}, | ||
1039 : | {fin = [(N 187)], trans = 0}, | ||
1040 : | {fin = [(N 187)], trans = 87}, | ||
1041 : | {fin = [(N 185)], trans = 0}, | ||
1042 : | {fin = [(N 187)], trans = 89}, | ||
1043 : | {fin = [(N 177)], trans = 0}, | ||
1044 : | {fin = [(N 182),(N 187)], trans = 91}, | ||
1045 : | {fin = [(N 182)], trans = 0}, | ||
1046 : | {fin = [(N 270)], trans = 0}, | ||
1047 : | {fin = [(N 270)], trans = 94}, | ||
1048 : | {fin = [(N 204),(N 246),(N 270)], trans = 95}, | ||
1049 : | {fin = [(N 225)], trans = 0}, | ||
1050 : | {fin = [(N 222)], trans = 0}, | ||
1051 : | {fin = [(N 219)], trans = 0}, | ||
1052 : | {fin = [(N 216)], trans = 0}, | ||
1053 : | {fin = [(N 213)], trans = 0}, | ||
1054 : | {fin = [(N 210)], trans = 0}, | ||
1055 : | {fin = [(N 207)], trans = 0}, | ||
1056 : | {fin = [], trans = 103}, | ||
1057 : | {fin = [(N 239)], trans = 0}, | ||
1058 : | {fin = [(N 235),(N 239)], trans = 0}, | ||
1059 : | {fin = [(N 228)], trans = 0}, | ||
1060 : | {fin = [], trans = 107}, | ||
1061 : | {fin = [], trans = 108}, | ||
1062 : | {fin = [(N 244)], trans = 0}, | ||
1063 : | {fin = [(N 231)], trans = 0}, | ||
1064 : | {fin = [(N 204)], trans = 111}, | ||
1065 : | {fin = [(N 200)], trans = 112}, | ||
1066 : | {fin = [(N 200)], trans = 0}, | ||
1067 : | {fin = [(N 189),(N 270)], trans = 0}, | ||
1068 : | {fin = [(N 248),(N 270)], trans = 0}, | ||
1069 : | {fin = [(N 194),(N 248),(N 270)], trans = 116}, | ||
1070 : | {fin = [(N 194)], trans = 0}, | ||
1071 : | {fin = [(N 194),(N 248)], trans = 0}, | ||
1072 : | {fin = [(N 282)], trans = 0}, | ||
1073 : | {fin = [(N 280),(N 282)], trans = 0}, | ||
1074 : | {fin = [(N 278),(N 282)], trans = 121}, | ||
1075 : | {fin = [(N 278)], trans = 121}, | ||
1076 : | {fin = [(N 275),(N 282)], trans = 123}, | ||
1077 : | {fin = [(N 275)], trans = 0}, | ||
1078 : | {fin = [(N 299)], trans = 0}, | ||
1079 : | {fin = [(N 292),(N 299)], trans = 0}, | ||
1080 : | {fin = [(N 290),(N 299)], trans = 127}, | ||
1081 : | {fin = [(N 285)], trans = 0}, | ||
1082 : | {fin = [(N 288)], trans = 0}, | ||
1083 : | {fin = [(N 297),(N 299)], trans = 130}, | ||
1084 : | {fin = [(N 297)], trans = 0}, | ||
1085 : | {fin = [(N 323)], trans = 0}, | ||
1086 : | {fin = [(N 319),(N 323)], trans = 133}, | ||
1087 : | {fin = [(N 319)], trans = 133}, | ||
1088 : | {fin = [(N 310),(N 323)], trans = 135}, | ||
1089 : | {fin = [(N 310)], trans = 135}, | ||
1090 : | {fin = [(N 321),(N 323)], trans = 0}, | ||
1091 : | {fin = [(N 307),(N 323)], trans = 138}, | ||
1092 : | {fin = [(N 307)], trans = 138}, | ||
1093 : | {fin = [(N 304),(N 323)], trans = 140}, | ||
1094 : | {fin = [(N 304)], trans = 0}, | ||
1095 : | {fin = [(N 174)], trans = 0}, | ||
1096 : | {fin = [(N 149),(N 174)], trans = 143}, | ||
1097 : | {fin = [(N 149)], trans = 143}, | ||
1098 : | {fin = [(N 174)], trans = 145}, | ||
1099 : | {fin = [(N 172)], trans = 0}, | ||
1100 : | {fin = [(N 154)], trans = 147}, | ||
1101 : | {fin = [(N 154),(N 156)], trans = 148}, | ||
1102 : | {fin = [(N 151)], trans = 0}, | ||
1103 : | {fin = [(N 174)], trans = 150}, | ||
1104 : | {fin = [(N 159),(N 172)], trans = 0}, | ||
1105 : | {fin = [(N 163),(N 174)], trans = 0}, | ||
1106 : | {fin = [(N 174)], trans = 153}, | ||
1107 : | {fin = [(N 163)], trans = 0}, | ||
1108 : | {fin = [], trans = 153}, | ||
1109 : | {fin = [(N 165),(N 174)], trans = 156}, | ||
1110 : | {fin = [(N 165)], trans = 156}, | ||
1111 : | {fin = [(N 165),(N 174)], trans = 158}, | ||
1112 : | {fin = [(N 165),(N 172)], trans = 156}, | ||
1113 : | {fin = [(N 174)], trans = 160}, | ||
1114 : | {fin = [], trans = 161}, | ||
1115 : | {fin = [(N 169)], trans = 0}]) | ||
1116 : | end | ||
1117 : | structure StartStates = | ||
1118 : | struct | ||
1119 : | datatype yystartstate = STARTSTATE of int | ||
1120 : | |||
1121 : | (* start state definitions *) | ||
1122 : | |||
1123 : | val A = STARTSTATE 3; | ||
1124 : | val AQ = STARTSTATE 11; | ||
1125 : | val F = STARTSTATE 7; | ||
1126 : | val INITIAL = STARTSTATE 1; | ||
1127 : | val L = STARTSTATE 13; | ||
1128 : | val LL = STARTSTATE 15; | ||
1129 : | val LLC = STARTSTATE 17; | ||
1130 : | val LLCQ = STARTSTATE 19; | ||
1131 : | val Q = STARTSTATE 9; | ||
1132 : | val S = STARTSTATE 5; | ||
1133 : | |||
1134 : | end | ||
1135 : | type result = UserDeclarations.lexresult | ||
1136 : | exception LexerError (* raised if illegal leaf action tried *) | ||
1137 : | end | ||
1138 : | |||
1139 : | fun makeLexer yyinput = | ||
1140 : | let val yygone0=1 | ||
1141 : | val yyb = ref "\n" (* buffer *) | ||
1142 : | val yybl = ref 1 (*buffer length *) | ||
1143 : | val yybufpos = ref 1 (* location of next character to use *) | ||
1144 : | val yygone = ref yygone0 (* position in file of beginning of buffer *) | ||
1145 : | val yydone = ref false (* eof found yet? *) | ||
1146 : | val yybegin = ref 1 (*Current 'start state' for lexer *) | ||
1147 : | |||
1148 : | val YYBEGIN = fn (Internal.StartStates.STARTSTATE x) => | ||
1149 : | yybegin := x | ||
1150 : | |||
1151 : | fun lex (yyarg as ({ | ||
1152 : | comLevel, | ||
1153 : | sourceMap, | ||
1154 : | err, | ||
1155 : | charlist, | ||
1156 : | stringstart, | ||
1157 : | stringtype, | ||
1158 : | brack_stack})) = | ||
1159 : | let fun continue() : Internal.result = | ||
1160 : | let fun scan (s,AcceptingLeaves : Internal.yyfinstate list list,l,i0) = | ||
1161 : | let fun action (i,nil) = raise LexError | ||
1162 : | | action (i,nil::l) = action (i-1,l) | ||
1163 : | | action (i,(node::acts)::l) = | ||
1164 : | case node of | ||
1165 : | Internal.N yyk => | ||
1166 : | (let fun yymktext() = substring(!yyb,i0,i-i0) | ||
1167 : | val yypos = i0+ !yygone | ||
1168 : | fun REJECT() = action(i,acts::l) | ||
1169 : | open UserDeclarations Internal.StartStates | ||
1170 : | in (yybufpos := i; case yyk of | ||
1171 : | |||
1172 : | (* Application actions *) | ||
1173 : | |||
1174 : | 102 => let val yytext=yymktext() in Tokens.INT0(xtoi(yytext, 2),yypos,yypos+size yytext) end | ||
1175 : | | 108 => let val yytext=yymktext() in Tokens.INT0(IntInf.~(xtoi(yytext, 3)),yypos,yypos+size yytext) end | ||
1176 : | | 11 => (Tokens.COMMA(yypos,yypos+1)) | ||
1177 : | | 113 => let val yytext=yymktext() in Tokens.WORD(atoi(yytext, 2),yypos,yypos+size yytext) end | ||
1178 : | | 119 => let val yytext=yymktext() in Tokens.WORD(xtoi(yytext, 3),yypos,yypos+size yytext) end | ||
1179 : | | 121 => (charlist := [""]; stringstart := yypos; | ||
1180 : | stringtype := true; YYBEGIN S; continue()) | ||
1181 : | | 124 => (charlist := [""]; stringstart := yypos; | ||
1182 : | stringtype := false; YYBEGIN S; continue()) | ||
1183 : | | 13 => (Tokens.LBRACE(yypos,yypos+1)) | ||
1184 : | | 136 => (YYBEGIN L; stringstart := yypos; comLevel := 1; continue()) | ||
1185 : | | 139 => (YYBEGIN A; stringstart := yypos; comLevel := 1; continue()) | ||
1186 : | | 142 => (err (yypos,yypos+1) COMPLAIN "unmatched close comment" | ||
1187 : | nullErrorBody; | ||
1188 : | continue()) | ||
1189 : | | 144 => (err (yypos,yypos) COMPLAIN "non-Ascii character" | ||
1190 : | nullErrorBody; | ||
1191 : | continue()) | ||
1192 : | | 146 => (err (yypos,yypos) COMPLAIN "illegal token" nullErrorBody; | ||
1193 : | continue()) | ||
1194 : | | 149 => let val yytext=yymktext() in YYBEGIN LL; charlist := [yytext]; continue() end | ||
1195 : | | 15 => (Tokens.RBRACE(yypos,yypos+1)) | ||
1196 : | | 151 => ((* cheat: take n > 0 dots *) continue()) | ||
1197 : | | 154 => let val yytext=yymktext() in YYBEGIN LLC; addString(charlist, yytext); continue() end | ||
1198 : | | 156 => (YYBEGIN LLC; addString(charlist, "1"); continue() | ||
1199 : | (* note hack, since ml-lex chokes on the empty string for 0* *)) | ||
1200 : | | 159 => (YYBEGIN INITIAL; mysynch(sourceMap, yypos+2, !charlist); | ||
1201 : | comLevel := 0; charlist := []; continue()) | ||
1202 : | | 163 => (YYBEGIN LLCQ; continue()) | ||
1203 : | | 165 => let val yytext=yymktext() in addString(charlist, yytext); continue() end | ||
1204 : | | 169 => (YYBEGIN INITIAL; mysynch(sourceMap, yypos+3, !charlist); | ||
1205 : | comLevel := 0; charlist := []; continue()) | ||
1206 : | | 17 => (Tokens.LBRACKET(yypos,yypos+1)) | ||
1207 : | | 172 => (err (!stringstart, yypos+1) WARN | ||
1208 : | "ill-formed (*#line...*) taken as comment" nullErrorBody; | ||
1209 : | YYBEGIN INITIAL; comLevel := 0; charlist := []; continue()) | ||
1210 : | | 174 => (err (!stringstart, yypos+1) WARN | ||
1211 : | "ill-formed (*#line...*) taken as comment" nullErrorBody; | ||
1212 : | YYBEGIN A; continue()) | ||
1213 : | | 177 => (inc comLevel; continue()) | ||
1214 : | | 182 => (SourceMap.newline sourceMap yypos; continue()) | ||
1215 : | | 185 => (dec comLevel; if !comLevel=0 then YYBEGIN INITIAL else (); continue()) | ||
1216 : | | 187 => (continue()) | ||
1217 : | | 189 => (let val s = makeString charlist | ||
1218 : | val s = if size s <> 1 andalso not(!stringtype) | ||
1219 : | then (err(!stringstart,yypos) COMPLAIN | ||
1220 : | "character constant not length 1" | ||
1221 : | nullErrorBody; | ||
1222 : | substring(s^"x",0,1)) | ||
1223 : | else s | ||
1224 : | val t = (s,!stringstart,yypos+1) | ||
1225 : | in YYBEGIN INITIAL; | ||
1226 : | if !stringtype then Tokens.STRING t else Tokens.CHAR t | ||
1227 : | end) | ||
1228 : | | 194 => (err (!stringstart,yypos) COMPLAIN "unclosed string" | ||
1229 : | nullErrorBody; | ||
1230 : | SourceMap.newline sourceMap yypos; | ||
1231 : | YYBEGIN INITIAL; Tokens.STRING(makeString charlist,!stringstart,yypos)) | ||
1232 : | | 2 => (continue()) | ||
1233 : | | 20 => (Tokens.VECTORSTART(yypos,yypos+1)) | ||
1234 : | | 200 => (SourceMap.newline sourceMap (yypos+1); | ||
1235 : | YYBEGIN F; continue()) | ||
1236 : | | 204 => (YYBEGIN F; continue()) | ||
1237 : | | 207 => (addString(charlist, "\007"); continue()) | ||
1238 : | | 210 => (addString(charlist, "\008"); continue()) | ||
1239 : | | 213 => (addString(charlist, "\012"); continue()) | ||
1240 : | | 216 => (addString(charlist, "\010"); continue()) | ||
1241 : | | 219 => (addString(charlist, "\013"); continue()) | ||
1242 : | | 22 => (Tokens.RBRACKET(yypos,yypos+1)) | ||
1243 : | | 222 => (addString(charlist, "\009"); continue()) | ||
1244 : | | 225 => (addString(charlist, "\011"); continue()) | ||
1245 : | | 228 => (addString(charlist, "\\"); continue()) | ||
1246 : | | 231 => (addString(charlist, "\""); continue()) | ||
1247 : | | 235 => let val yytext=yymktext() in addChar(charlist, | ||
1248 : | Char.chr(Char.ord(String.sub(yytext,2))-Char.ord #"@")); | ||
1249 : | continue() end | ||
1250 : | | 239 => (err(yypos,yypos+2) COMPLAIN "illegal control escape; must be one of \ | ||
1251 : | \@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_" nullErrorBody; | ||
1252 : | continue()) | ||
1253 : | | 24 => (Tokens.SEMICOLON(yypos,yypos+1)) | ||
1254 : | | 244 => let val yytext=yymktext() in let val x = Char.ord(String.sub(yytext,1))*100 | ||
1255 : | +Char.ord(String.sub(yytext,2))*10 | ||
1256 : | +Char.ord(String.sub(yytext,3)) | ||
1257 : | -((Char.ord #"0")*111) | ||
1258 : | in (if x>255 | ||
1259 : | then err (yypos,yypos+4) COMPLAIN "illegal ascii escape" nullErrorBody | ||
1260 : | else addChar(charlist, Char.chr x); | ||
1261 : | continue()) | ||
1262 : | end end | ||
1263 : | | 246 => (err (yypos,yypos+1) COMPLAIN "illegal string escape" | ||
1264 : | nullErrorBody; | ||
1265 : | continue()) | ||
1266 : | | 248 => (err (yypos,yypos+1) COMPLAIN "illegal non-printing character in string" nullErrorBody; | ||
1267 : | continue()) | ||
1268 : | | 26 => (if (null(!brack_stack)) | ||
1269 : | then () | ||
1270 : | else inc (hd (!brack_stack)); | ||
1271 : | Tokens.LPAREN(yypos,yypos+1)) | ||
1272 : | | 270 => let val yytext=yymktext() in addString(charlist,yytext); continue() end | ||
1273 : | | 275 => (SourceMap.newline sourceMap yypos; continue()) | ||
1274 : | | 278 => (continue()) | ||
1275 : | | 28 => (if (null(!brack_stack)) | ||
1276 : | then () | ||
1277 : | else if (!(hd (!brack_stack)) = 1) | ||
1278 : | then ( brack_stack := tl (!brack_stack); | ||
1279 : | charlist := []; | ||
1280 : | YYBEGIN Q) | ||
1281 : | else dec (hd (!brack_stack)); | ||
1282 : | Tokens.RPAREN(yypos,yypos+1)) | ||
1283 : | | 280 => (YYBEGIN S; stringstart := yypos; continue()) | ||
1284 : | | 282 => (err (!stringstart,yypos) COMPLAIN "unclosed string" | ||
1285 : | nullErrorBody; | ||
1286 : | YYBEGIN INITIAL; Tokens.STRING(makeString charlist,!stringstart,yypos+1)) | ||
1287 : | | 285 => (addString(charlist, "`"); continue()) | ||
1288 : | | 288 => (addString(charlist, "^"); continue()) | ||
1289 : | | 290 => (YYBEGIN AQ; | ||
1290 : | let val x = makeString charlist | ||
1291 : | in | ||
1292 : | Tokens.OBJL(x,yypos,yypos+(size x)) | ||
1293 : | end) | ||
1294 : | | 292 => ((* a closing quote *) | ||
1295 : | YYBEGIN INITIAL; | ||
1296 : | let val x = makeString charlist | ||
1297 : | in | ||
1298 : | Tokens.ENDQ(x,yypos,yypos+(size x)) | ||
1299 : | end) | ||
1300 : | | 297 => (SourceMap.newline sourceMap yypos; addString(charlist,"\n"); continue()) | ||
1301 : | | 299 => let val yytext=yymktext() in addString(charlist,yytext); continue() end | ||
1302 : | | 30 => (Tokens.DOT(yypos,yypos+1)) | ||
1303 : | | 304 => (SourceMap.newline sourceMap yypos; continue()) | ||
1304 : | | 307 => (continue()) | ||
1305 : | | 310 => let val yytext=yymktext() in YYBEGIN Q; | ||
1306 : | let val hash = StrgHash.hashString yytext | ||
1307 : | in | ||
1308 : | Tokens.AQID(FastSymbol.rawSymbol(hash,yytext), | ||
1309 : | yypos,yypos+(size yytext)) | ||
1310 : | end end | ||
1311 : | | 319 => let val yytext=yymktext() in YYBEGIN Q; | ||
1312 : | let val hash = StrgHash.hashString yytext | ||
1313 : | in | ||
1314 : | Tokens.AQID(FastSymbol.rawSymbol(hash,yytext), | ||
1315 : | yypos,yypos+(size yytext)) | ||
1316 : | end end | ||
1317 : | | 321 => (YYBEGIN INITIAL; | ||
1318 : | brack_stack := ((ref 1)::(!brack_stack)); | ||
1319 : | Tokens.LPAREN(yypos,yypos+1)) | ||
1320 : | | 323 => let val yytext=yymktext() in err (yypos,yypos+1) COMPLAIN | ||
1321 : | ("ml lexer: bad character after antiquote "^yytext) | ||
1322 : | nullErrorBody; | ||
1323 : | Tokens.AQID(FastSymbol.rawSymbol(0,""),yypos,yypos) end | ||
1324 : | | 34 => (Tokens.DOTDOTDOT(yypos,yypos+3)) | ||
1325 : | | 42 => let val yytext=yymktext() in TokTable.checkTyvar(yytext,yypos) end | ||
1326 : | | 45 => let val yytext=yymktext() in TokTable.checkId(yytext, yypos) end | ||
1327 : | | 56 => let val yytext=yymktext() in if !Control.quotation | ||
1328 : | then if (has_quote yytext) | ||
1329 : | then REJECT() | ||
1330 : | else TokTable.checkSymId(yytext,yypos) | ||
1331 : | else TokTable.checkSymId(yytext,yypos) end | ||
1332 : | | 65 => let val yytext=yymktext() in TokTable.checkSymId(yytext,yypos) end | ||
1333 : | | 67 => (if !Control.quotation | ||
1334 : | then (YYBEGIN Q; | ||
1335 : | charlist := []; | ||
1336 : | Tokens.BEGINQ(yypos,yypos+1)) | ||
1337 : | else (err(yypos, yypos+1) | ||
1338 : | COMPLAIN "quotation implementation error" | ||
1339 : | nullErrorBody; | ||
1340 : | Tokens.BEGINQ(yypos,yypos+1))) | ||
1341 : | | 7 => (SourceMap.newline sourceMap yypos; continue()) | ||
1342 : | | 87 => let val yytext=yymktext() in Tokens.REAL(yytext,yypos,yypos+size yytext) end | ||
1343 : | | 9 => (Tokens.WILD(yypos,yypos+1)) | ||
1344 : | | 90 => let val yytext=yymktext() in Tokens.INT(atoi(yytext, 0),yypos,yypos+size yytext) end | ||
1345 : | | 93 => let val yytext=yymktext() in Tokens.INT0(atoi(yytext, 0),yypos,yypos+size yytext) end | ||
1346 : | | 97 => let val yytext=yymktext() in Tokens.INT0(atoi(yytext, 0),yypos,yypos+size yytext) end | ||
1347 : | | _ => raise Internal.LexerError | ||
1348 : | |||
1349 : | ) end ) | ||
1350 : | |||
1351 : | val {fin,trans} = Unsafe.Vector.sub(Internal.tab, s) | ||
1352 : | val NewAcceptingLeaves = fin::AcceptingLeaves | ||
1353 : | in if l = !yybl then | ||
1354 : | if trans = #trans(Vector.sub(Internal.tab,0)) | ||
1355 : | then action(l,NewAcceptingLeaves | ||
1356 : | ) else let val newchars= if !yydone then "" else yyinput 1024 | ||
1357 : | in if (size newchars)=0 | ||
1358 : | then (yydone := true; | ||
1359 : | if (l=i0) then UserDeclarations.eof yyarg | ||
1360 : | else action(l,NewAcceptingLeaves)) | ||
1361 : | else (if i0=l then yyb := newchars | ||
1362 : | else yyb := substring(!yyb,i0,l-i0)^newchars; | ||
1363 : | yygone := !yygone+i0; | ||
1364 : | yybl := size (!yyb); | ||
1365 : | scan (s,AcceptingLeaves,l-i0,0)) | ||
1366 : | end | ||
1367 : | else let val NewChar = Char.ord(Unsafe.CharVector.sub(!yyb,l)) | ||
1368 : | val NewChar = if NewChar<128 then NewChar else 128 | ||
1369 : | val NewState = Char.ord(Unsafe.CharVector.sub(trans,NewChar)) | ||
1370 : | in if NewState=0 then action(l,NewAcceptingLeaves) | ||
1371 : | else scan(NewState,NewAcceptingLeaves,l+1,i0) | ||
1372 : | end | ||
1373 : | end | ||
1374 : | (* | ||
1375 : | val start= if substring(!yyb,!yybufpos-1,1)="\n" | ||
1376 : | then !yybegin+1 else !yybegin | ||
1377 : | *) | ||
1378 : | in scan(!yybegin (* start *),nil,!yybufpos,!yybufpos) | ||
1379 : | end | ||
1380 : | in continue end | ||
1381 : | in lex | ||
1382 : | end | ||
1383 : | end |
root@smlnj-gforge.cs.uchicago.edu | ViewVC Help |
Powered by ViewVC 1.0.0 |