regexp_parser 2.0.3 → 2.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +41 -3
- data/Gemfile +5 -1
- data/README.md +1 -1
- data/Rakefile +6 -6
- data/lib/regexp_parser/error.rb +4 -0
- data/lib/regexp_parser/expression.rb +3 -2
- data/lib/regexp_parser/expression/classes/backref.rb +5 -0
- data/lib/regexp_parser/expression/classes/conditional.rb +11 -1
- data/lib/regexp_parser/expression/classes/free_space.rb +1 -1
- data/lib/regexp_parser/expression/classes/group.rb +6 -1
- data/lib/regexp_parser/expression/classes/property.rb +1 -1
- data/lib/regexp_parser/expression/classes/set/range.rb +2 -1
- data/lib/regexp_parser/expression/quantifier.rb +1 -1
- data/lib/regexp_parser/expression/sequence.rb +3 -9
- data/lib/regexp_parser/expression/subexpression.rb +1 -1
- data/lib/regexp_parser/parser.rb +282 -332
- data/lib/regexp_parser/scanner.rb +1019 -1006
- data/lib/regexp_parser/scanner/scanner.rl +56 -79
- data/lib/regexp_parser/syntax.rb +8 -6
- data/lib/regexp_parser/syntax/any.rb +1 -1
- data/lib/regexp_parser/version.rb +1 -1
- data/spec/expression/clone_spec.rb +36 -4
- data/spec/expression/free_space_spec.rb +2 -2
- data/spec/expression/methods/match_length_spec.rb +2 -2
- data/spec/lexer/refcalls_spec.rb +5 -0
- data/spec/parser/all_spec.rb +2 -2
- data/spec/parser/refcalls_spec.rb +5 -0
- data/spec/scanner/escapes_spec.rb +1 -1
- data/spec/scanner/refcalls_spec.rb +19 -0
- data/spec/scanner/sets_spec.rb +42 -11
- metadata +4 -3
@@ -2,18 +2,20 @@
|
|
2
2
|
|
3
3
|
# line 1 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
|
4
4
|
|
5
|
-
# line
|
5
|
+
# line 649 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
|
6
6
|
|
7
7
|
|
8
8
|
# THIS IS A GENERATED FILE, DO NOT EDIT DIRECTLY
|
9
9
|
# This file was generated from lib/regexp_parser/scanner/scanner.rl
|
10
10
|
|
11
|
+
require 'regexp_parser/error'
|
12
|
+
|
11
13
|
class Regexp::Scanner
|
12
14
|
# General scanner error (catch all)
|
13
|
-
class ScannerError <
|
15
|
+
class ScannerError < Regexp::Parser::Error; end
|
14
16
|
|
15
17
|
# Base for all scanner validation errors
|
16
|
-
class ValidationError <
|
18
|
+
class ValidationError < Regexp::Parser::Error
|
17
19
|
def initialize(reason)
|
18
20
|
super reason
|
19
21
|
end
|
@@ -91,7 +93,7 @@ class Regexp::Scanner
|
|
91
93
|
self.char_pos = 0
|
92
94
|
|
93
95
|
|
94
|
-
# line
|
96
|
+
# line 96 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner.rb"
|
95
97
|
class << self
|
96
98
|
attr_accessor :_re_scanner_trans_keys
|
97
99
|
private :_re_scanner_trans_keys, :_re_scanner_trans_keys=
|
@@ -103,57 +105,62 @@ self._re_scanner_trans_keys = [
|
|
103
105
|
62, 62, 39, 60, 39, 57,
|
104
106
|
39, 39, 48, 57, 39,
|
105
107
|
57, 39, 57, 48, 57,
|
106
|
-
|
107
|
-
48,
|
108
|
-
|
109
|
-
|
110
|
-
|
111
|
-
|
112
|
-
|
113
|
-
|
114
|
-
|
115
|
-
|
116
|
-
|
117
|
-
|
118
|
-
|
119
|
-
|
120
|
-
|
121
|
-
|
122
|
-
|
123
|
-
|
124
|
-
|
125
|
-
|
126
|
-
|
127
|
-
|
128
|
-
|
129
|
-
|
130
|
-
|
131
|
-
|
132
|
-
|
133
|
-
|
134
|
-
|
108
|
+
39, 39, 45, 62, 62, 62,
|
109
|
+
48, 57, 48, 62, 43,
|
110
|
+
62, 48, 57, 62, 62,
|
111
|
+
39, 60, 39, 57, 39, 39,
|
112
|
+
48, 57, 39, 57, 39,
|
113
|
+
57, 48, 57, 45, 62,
|
114
|
+
62, 62, 48, 57, 48, 62,
|
115
|
+
43, 62, 48, 57, 48,
|
116
|
+
57, 48, 125, 44, 125,
|
117
|
+
123, 123, 9, 122, 9, 125,
|
118
|
+
9, 122, -128, -65, -128,
|
119
|
+
-65, 38, 38, 94, 120,
|
120
|
+
97, 120, 108, 115, 110, 112,
|
121
|
+
117, 117, 109, 109, 58,
|
122
|
+
58, 93, 93, 104, 104,
|
123
|
+
97, 97, 99, 99, 105, 105,
|
124
|
+
105, 105, 108, 108, 97,
|
125
|
+
97, 110, 110, 107, 107,
|
126
|
+
110, 110, 116, 116, 114, 114,
|
127
|
+
108, 108, 105, 105, 103,
|
128
|
+
103, 105, 105, 116, 116,
|
129
|
+
114, 114, 97, 97, 112, 112,
|
130
|
+
104, 104, 111, 111, 119,
|
131
|
+
119, 101, 101, 114, 114,
|
132
|
+
114, 117, 105, 105, 110, 110,
|
133
|
+
110, 110, 99, 99, 112,
|
134
|
+
112, 97, 97, 99, 99,
|
135
|
+
101, 101, 112, 112, 112, 112,
|
136
|
+
111, 111, 114, 114, 100,
|
137
|
+
100, 100, 100, -128, -65,
|
138
|
+
-128, -65, 45, 45, 92, 92,
|
139
|
+
92, 92, 45, 45, 92,
|
140
|
+
92, 92, 92, 48, 123,
|
141
|
+
48, 102, 48, 102, 48, 102,
|
142
|
+
48, 102, 9, 125, 9,
|
135
143
|
125, 9, 125, 9, 125,
|
136
|
-
9, 125, 9, 125,
|
137
|
-
|
138
|
-
|
139
|
-
-
|
140
|
-
|
141
|
-
|
142
|
-
33, 126,
|
143
|
-
43, 63, 43, 63,
|
144
|
-
|
145
|
-
|
146
|
-
-
|
147
|
-
-65,
|
148
|
-
|
149
|
-
-
|
150
|
-
-65,
|
151
|
-
|
152
|
-
|
153
|
-
|
154
|
-
|
155
|
-
|
156
|
-
62, 0
|
144
|
+
9, 125, 9, 125, 48, 123,
|
145
|
+
39, 39, 41, 41, 41,
|
146
|
+
57, 62, 62, -128, 127,
|
147
|
+
-62, -12, 1, 127, 1, 127,
|
148
|
+
9, 32, 33, 126, 10,
|
149
|
+
10, 63, 63, 33, 126,
|
150
|
+
33, 126, 62, 62, 43, 63,
|
151
|
+
43, 63, 43, 63, 65,
|
152
|
+
122, 44, 57, 43, 63,
|
153
|
+
68, 119, 80, 112, -62, 125,
|
154
|
+
-128, -65, -128, -65, -128,
|
155
|
+
-65, 38, 38, 38, 93,
|
156
|
+
58, 58, 67, 120, -62, 125,
|
157
|
+
-128, -65, -128, -65, -128,
|
158
|
+
-65, 48, 55, 48, 55,
|
159
|
+
77, 77, 45, 45, 0, 0,
|
160
|
+
67, 99, 45, 45, 0,
|
161
|
+
0, 92, 92, 48, 102,
|
162
|
+
39, 60, 39, 57, 49, 57,
|
163
|
+
41, 57, 45, 62, 0
|
157
164
|
]
|
158
165
|
|
159
166
|
class << self
|
@@ -163,23 +170,25 @@ end
|
|
163
170
|
self._re_scanner_key_spans = [
|
164
171
|
0, 64, 64, 64, 1, 19, 1, 30,
|
165
172
|
1, 22, 19, 1, 10, 19, 19, 10,
|
166
|
-
18, 1, 10, 15, 20, 10,
|
167
|
-
|
168
|
-
|
169
|
-
1,
|
173
|
+
1, 18, 1, 10, 15, 20, 10, 1,
|
174
|
+
22, 19, 1, 10, 19, 19, 10, 18,
|
175
|
+
1, 10, 15, 20, 10, 10, 78, 82,
|
176
|
+
1, 114, 117, 114, 64, 64, 1, 27,
|
177
|
+
24, 8, 3, 1, 1, 1, 1, 1,
|
170
178
|
1, 1, 1, 1, 1, 1, 1, 1,
|
171
179
|
1, 1, 1, 1, 1, 1, 1, 1,
|
172
|
-
1, 4, 1, 1, 1, 1, 1, 1,
|
173
180
|
1, 1, 1, 1, 1, 1, 1, 1,
|
174
|
-
|
175
|
-
|
176
|
-
|
177
|
-
|
178
|
-
|
179
|
-
|
180
|
-
|
181
|
-
|
182
|
-
|
181
|
+
4, 1, 1, 1, 1, 1, 1, 1,
|
182
|
+
1, 1, 1, 1, 1, 1, 1, 64,
|
183
|
+
64, 1, 1, 1, 1, 1, 1, 76,
|
184
|
+
55, 55, 55, 55, 117, 117, 117, 117,
|
185
|
+
117, 117, 76, 1, 1, 17, 1, 256,
|
186
|
+
51, 127, 127, 24, 94, 1, 1, 94,
|
187
|
+
94, 1, 21, 21, 21, 58, 14, 21,
|
188
|
+
52, 33, 188, 64, 64, 64, 1, 56,
|
189
|
+
1, 54, 188, 64, 64, 64, 8, 8,
|
190
|
+
1, 1, 0, 33, 1, 0, 1, 55,
|
191
|
+
22, 19, 9, 17, 18
|
183
192
|
]
|
184
193
|
|
185
194
|
class << self
|
@@ -189,23 +198,25 @@ end
|
|
189
198
|
self._re_scanner_index_offsets = [
|
190
199
|
0, 0, 65, 130, 195, 197, 217, 219,
|
191
200
|
250, 252, 275, 295, 297, 308, 328, 348,
|
192
|
-
359,
|
193
|
-
|
194
|
-
|
195
|
-
|
196
|
-
|
197
|
-
|
198
|
-
|
199
|
-
|
200
|
-
|
201
|
-
|
202
|
-
|
203
|
-
|
204
|
-
|
205
|
-
|
206
|
-
|
207
|
-
|
208
|
-
|
201
|
+
359, 361, 380, 382, 393, 409, 430, 441,
|
202
|
+
443, 466, 486, 488, 499, 519, 539, 550,
|
203
|
+
569, 571, 582, 598, 619, 630, 641, 720,
|
204
|
+
803, 805, 920, 1038, 1153, 1218, 1283, 1285,
|
205
|
+
1313, 1338, 1347, 1351, 1353, 1355, 1357, 1359,
|
206
|
+
1361, 1363, 1365, 1367, 1369, 1371, 1373, 1375,
|
207
|
+
1377, 1379, 1381, 1383, 1385, 1387, 1389, 1391,
|
208
|
+
1393, 1395, 1397, 1399, 1401, 1403, 1405, 1407,
|
209
|
+
1409, 1414, 1416, 1418, 1420, 1422, 1424, 1426,
|
210
|
+
1428, 1430, 1432, 1434, 1436, 1438, 1440, 1442,
|
211
|
+
1507, 1572, 1574, 1576, 1578, 1580, 1582, 1584,
|
212
|
+
1661, 1717, 1773, 1829, 1885, 2003, 2121, 2239,
|
213
|
+
2357, 2475, 2593, 2670, 2672, 2674, 2692, 2694,
|
214
|
+
2951, 3003, 3131, 3259, 3284, 3379, 3381, 3383,
|
215
|
+
3478, 3573, 3575, 3597, 3619, 3641, 3700, 3715,
|
216
|
+
3737, 3790, 3824, 4013, 4078, 4143, 4208, 4210,
|
217
|
+
4267, 4269, 4324, 4513, 4578, 4643, 4708, 4717,
|
218
|
+
4726, 4728, 4730, 4731, 4765, 4767, 4768, 4770,
|
219
|
+
4826, 4849, 4869, 4879, 4897
|
209
220
|
]
|
210
221
|
|
211
222
|
class << self
|
@@ -248,565 +259,586 @@ self._re_scanner_indicies = [
|
|
248
259
|
11, 11, 11, 11, 11, 11, 11, 11,
|
249
260
|
11, 11, 11, 11, 11, 11, 11, 11,
|
250
261
|
11, 13, 11, 15, 14, 14, 14, 14,
|
251
|
-
14, 16, 14, 14,
|
252
|
-
|
253
|
-
14,
|
254
|
-
|
255
|
-
11, 11, 11, 11, 11,
|
256
|
-
|
257
|
-
15, 11, 11, 11,
|
258
|
-
11,
|
259
|
-
|
260
|
-
|
261
|
-
|
262
|
-
|
263
|
-
|
264
|
-
|
265
|
-
|
266
|
-
|
267
|
-
11,
|
268
|
-
|
269
|
-
11, 11,
|
270
|
-
23, 23, 23, 23, 23, 23, 11, 26,
|
271
|
-
26, 26, 26, 26, 26, 26, 26, 26,
|
272
|
-
26, 25, 26, 26, 26, 26, 26, 26,
|
273
|
-
26, 26, 26, 26, 25, 25, 25, 25,
|
274
|
-
25, 25, 25, 25, 25, 25, 25, 25,
|
275
|
-
25, 25, 25, 25, 25, 25, 25, 25,
|
276
|
-
25, 25, 25, 25, 25, 25, 25, 25,
|
277
|
-
25, 25, 25, 25, 25, 25, 25, 25,
|
278
|
-
25, 25, 25, 25, 25, 25, 25, 25,
|
279
|
-
25, 25, 25, 25, 25, 25, 25, 25,
|
280
|
-
25, 25, 25, 25, 25, 25, 25, 25,
|
281
|
-
25, 25, 25, 25, 25, 25, 25, 27,
|
282
|
-
25, 26, 25, 25, 25, 28, 28, 28,
|
283
|
-
28, 28, 28, 28, 28, 28, 28, 25,
|
284
|
-
25, 25, 25, 25, 25, 25, 25, 25,
|
285
|
-
25, 25, 25, 25, 25, 25, 25, 25,
|
262
|
+
14, 16, 14, 14, 17, 18, 18, 18,
|
263
|
+
18, 18, 18, 18, 18, 18, 14, 15,
|
264
|
+
14, 19, 18, 18, 18, 18, 18, 18,
|
265
|
+
18, 18, 18, 11, 15, 11, 11, 11,
|
266
|
+
11, 11, 11, 11, 11, 19, 19, 19,
|
267
|
+
19, 19, 19, 19, 19, 19, 19, 11,
|
268
|
+
15, 11, 11, 11, 20, 11, 20, 11,
|
269
|
+
11, 18, 18, 18, 18, 18, 18, 18,
|
270
|
+
18, 18, 18, 11, 19, 19, 19, 19,
|
271
|
+
19, 19, 19, 19, 19, 19, 11, 15,
|
272
|
+
11, 22, 21, 21, 23, 24, 24, 24,
|
273
|
+
24, 24, 24, 24, 24, 24, 21, 21,
|
274
|
+
21, 21, 15, 21, 15, 21, 25, 24,
|
275
|
+
24, 24, 24, 24, 24, 24, 24, 24,
|
276
|
+
11, 25, 25, 25, 25, 25, 25, 25,
|
277
|
+
25, 25, 25, 11, 11, 11, 11, 15,
|
278
|
+
11, 26, 11, 26, 11, 11, 24, 24,
|
279
|
+
24, 24, 24, 24, 24, 24, 24, 24,
|
280
|
+
11, 11, 11, 11, 15, 11, 25, 25,
|
286
281
|
25, 25, 25, 25, 25, 25, 25, 25,
|
287
|
-
|
288
|
-
|
289
|
-
|
290
|
-
|
291
|
-
|
292
|
-
|
293
|
-
|
294
|
-
|
295
|
-
|
296
|
-
|
297
|
-
|
298
|
-
|
299
|
-
|
300
|
-
|
301
|
-
|
302
|
-
|
303
|
-
|
304
|
-
|
305
|
-
|
306
|
-
|
307
|
-
|
308
|
-
|
309
|
-
|
310
|
-
|
311
|
-
|
312
|
-
|
313
|
-
|
314
|
-
|
315
|
-
|
316
|
-
|
317
|
-
|
318
|
-
|
319
|
-
|
320
|
-
|
321
|
-
|
322
|
-
|
323
|
-
|
324
|
-
|
325
|
-
|
326
|
-
|
327
|
-
|
328
|
-
|
329
|
-
|
330
|
-
|
331
|
-
|
332
|
-
|
333
|
-
|
334
|
-
|
335
|
-
|
336
|
-
|
337
|
-
|
338
|
-
|
339
|
-
|
340
|
-
|
341
|
-
|
342
|
-
|
343
|
-
|
344
|
-
|
345
|
-
|
346
|
-
|
347
|
-
|
348
|
-
|
349
|
-
|
350
|
-
|
351
|
-
|
352
|
-
|
353
|
-
|
354
|
-
|
355
|
-
|
356
|
-
|
357
|
-
46,
|
358
|
-
|
359
|
-
|
360
|
-
|
361
|
-
|
362
|
-
|
363
|
-
|
364
|
-
|
365
|
-
|
366
|
-
|
367
|
-
|
368
|
-
|
369
|
-
|
370
|
-
|
371
|
-
|
372
|
-
|
373
|
-
|
374
|
-
|
375
|
-
|
376
|
-
|
377
|
-
|
378
|
-
|
379
|
-
|
380
|
-
|
381
|
-
|
382
|
-
|
383
|
-
|
384
|
-
|
385
|
-
|
386
|
-
|
387
|
-
|
388
|
-
|
389
|
-
|
390
|
-
|
391
|
-
|
392
|
-
|
393
|
-
|
394
|
-
|
395
|
-
|
396
|
-
|
397
|
-
|
398
|
-
|
399
|
-
|
400
|
-
|
401
|
-
|
402
|
-
|
403
|
-
|
404
|
-
|
405
|
-
|
406
|
-
|
282
|
+
11, 15, 11, 27, 11, 11, 11, 11,
|
283
|
+
11, 11, 11, 11, 11, 11, 11, 11,
|
284
|
+
11, 11, 11, 11, 11, 11, 11, 11,
|
285
|
+
28, 11, 30, 29, 29, 29, 29, 29,
|
286
|
+
31, 29, 29, 11, 32, 32, 32, 32,
|
287
|
+
32, 32, 32, 32, 32, 29, 30, 29,
|
288
|
+
33, 32, 32, 32, 32, 32, 32, 32,
|
289
|
+
32, 32, 11, 30, 11, 11, 11, 11,
|
290
|
+
11, 11, 11, 11, 33, 33, 33, 33,
|
291
|
+
33, 33, 33, 33, 33, 33, 11, 30,
|
292
|
+
11, 11, 11, 34, 11, 34, 11, 11,
|
293
|
+
32, 32, 32, 32, 32, 32, 32, 32,
|
294
|
+
32, 32, 11, 33, 33, 33, 33, 33,
|
295
|
+
33, 33, 33, 33, 33, 11, 36, 35,
|
296
|
+
35, 11, 37, 37, 37, 37, 37, 37,
|
297
|
+
37, 37, 37, 35, 35, 35, 35, 30,
|
298
|
+
35, 30, 35, 38, 37, 37, 37, 37,
|
299
|
+
37, 37, 37, 37, 37, 11, 38, 38,
|
300
|
+
38, 38, 38, 38, 38, 38, 38, 38,
|
301
|
+
11, 11, 11, 11, 30, 11, 39, 11,
|
302
|
+
39, 11, 11, 37, 37, 37, 37, 37,
|
303
|
+
37, 37, 37, 37, 37, 11, 11, 11,
|
304
|
+
11, 30, 11, 38, 38, 38, 38, 38,
|
305
|
+
38, 38, 38, 38, 38, 11, 41, 41,
|
306
|
+
41, 41, 41, 41, 41, 41, 41, 41,
|
307
|
+
40, 41, 41, 41, 41, 41, 41, 41,
|
308
|
+
41, 41, 41, 40, 40, 40, 40, 40,
|
309
|
+
40, 40, 40, 40, 40, 40, 40, 40,
|
310
|
+
40, 40, 40, 40, 40, 40, 40, 40,
|
311
|
+
40, 40, 40, 40, 40, 40, 40, 40,
|
312
|
+
40, 40, 40, 40, 40, 40, 40, 40,
|
313
|
+
40, 40, 40, 40, 40, 40, 40, 40,
|
314
|
+
40, 40, 40, 40, 40, 40, 40, 40,
|
315
|
+
40, 40, 40, 40, 40, 40, 40, 40,
|
316
|
+
40, 40, 40, 40, 40, 40, 42, 40,
|
317
|
+
41, 40, 40, 40, 43, 43, 43, 43,
|
318
|
+
43, 43, 43, 43, 43, 43, 40, 40,
|
319
|
+
40, 40, 40, 40, 40, 40, 40, 40,
|
320
|
+
40, 40, 40, 40, 40, 40, 40, 40,
|
321
|
+
40, 40, 40, 40, 40, 40, 40, 40,
|
322
|
+
40, 40, 40, 40, 40, 40, 40, 40,
|
323
|
+
40, 40, 40, 40, 40, 40, 40, 40,
|
324
|
+
40, 40, 40, 40, 40, 40, 40, 40,
|
325
|
+
40, 40, 40, 40, 40, 40, 40, 40,
|
326
|
+
40, 40, 40, 40, 40, 40, 40, 40,
|
327
|
+
40, 42, 40, 44, 45, 46, 46, 46,
|
328
|
+
46, 46, 45, 45, 45, 45, 45, 45,
|
329
|
+
45, 45, 45, 45, 45, 45, 45, 45,
|
330
|
+
45, 45, 45, 45, 46, 45, 45, 45,
|
331
|
+
45, 45, 45, 45, 45, 45, 45, 45,
|
332
|
+
45, 46, 46, 45, 46, 46, 46, 46,
|
333
|
+
46, 46, 46, 46, 46, 46, 45, 45,
|
334
|
+
45, 46, 45, 45, 45, 46, 46, 46,
|
335
|
+
46, 46, 46, 46, 46, 46, 46, 46,
|
336
|
+
46, 46, 46, 46, 46, 46, 46, 46,
|
337
|
+
46, 46, 46, 46, 46, 46, 46, 45,
|
338
|
+
45, 45, 47, 46, 45, 46, 46, 46,
|
339
|
+
46, 46, 46, 46, 46, 46, 46, 46,
|
340
|
+
46, 46, 46, 46, 46, 46, 46, 46,
|
341
|
+
46, 46, 46, 46, 46, 46, 46, 45,
|
342
|
+
46, 46, 46, 46, 46, 45, 45, 45,
|
343
|
+
45, 45, 45, 45, 45, 45, 45, 45,
|
344
|
+
45, 45, 45, 45, 45, 45, 45, 46,
|
345
|
+
45, 45, 45, 45, 45, 45, 45, 45,
|
346
|
+
45, 45, 45, 45, 46, 46, 45, 46,
|
347
|
+
46, 46, 46, 46, 46, 46, 46, 46,
|
348
|
+
46, 45, 45, 45, 46, 45, 45, 45,
|
349
|
+
46, 46, 46, 46, 46, 46, 46, 46,
|
350
|
+
46, 46, 46, 46, 46, 46, 46, 46,
|
351
|
+
46, 46, 46, 46, 46, 46, 46, 46,
|
352
|
+
46, 46, 45, 45, 45, 45, 46, 45,
|
353
|
+
46, 46, 46, 46, 46, 46, 46, 46,
|
354
|
+
46, 46, 46, 46, 46, 46, 46, 46,
|
355
|
+
46, 46, 46, 46, 46, 46, 46, 46,
|
356
|
+
46, 46, 45, 45, 48, 45, 46, 46,
|
357
|
+
46, 46, 46, 45, 45, 45, 45, 45,
|
358
|
+
45, 45, 45, 45, 45, 45, 45, 45,
|
359
|
+
45, 45, 45, 45, 45, 46, 45, 45,
|
360
|
+
45, 45, 45, 45, 45, 45, 45, 45,
|
361
|
+
45, 45, 46, 46, 45, 46, 46, 46,
|
362
|
+
46, 46, 46, 46, 46, 46, 46, 45,
|
363
|
+
45, 45, 46, 45, 45, 45, 46, 46,
|
364
|
+
46, 46, 46, 46, 46, 46, 46, 46,
|
365
|
+
46, 46, 46, 46, 46, 46, 46, 46,
|
366
|
+
46, 46, 46, 46, 46, 46, 46, 46,
|
367
|
+
45, 45, 45, 45, 46, 45, 46, 46,
|
368
|
+
46, 46, 46, 46, 46, 46, 46, 46,
|
369
|
+
46, 46, 46, 46, 46, 46, 46, 46,
|
370
|
+
46, 46, 46, 46, 46, 46, 46, 46,
|
371
|
+
45, 50, 50, 50, 50, 50, 50, 50,
|
372
|
+
50, 50, 50, 50, 50, 50, 50, 50,
|
373
|
+
50, 50, 50, 50, 50, 50, 50, 50,
|
374
|
+
50, 50, 50, 50, 50, 50, 50, 50,
|
375
|
+
50, 50, 50, 50, 50, 50, 50, 50,
|
376
|
+
50, 50, 50, 50, 50, 50, 50, 50,
|
377
|
+
50, 50, 50, 50, 50, 50, 50, 50,
|
378
|
+
50, 50, 50, 50, 50, 50, 50, 50,
|
379
|
+
50, 49, 51, 51, 51, 51, 51, 51,
|
380
|
+
51, 51, 51, 51, 51, 51, 51, 51,
|
381
|
+
51, 51, 51, 51, 51, 51, 51, 51,
|
382
|
+
51, 51, 51, 51, 51, 51, 51, 51,
|
383
|
+
51, 51, 51, 51, 51, 51, 51, 51,
|
384
|
+
51, 51, 51, 51, 51, 51, 51, 51,
|
385
|
+
51, 51, 51, 51, 51, 51, 51, 51,
|
386
|
+
51, 51, 51, 51, 51, 51, 51, 51,
|
387
|
+
51, 51, 49, 53, 52, 56, 55, 55,
|
388
|
+
57, 58, 59, 60, 55, 55, 61, 55,
|
389
|
+
55, 55, 55, 62, 55, 55, 55, 63,
|
390
|
+
55, 55, 64, 55, 65, 55, 66, 67,
|
391
|
+
55, 57, 58, 59, 60, 55, 55, 61,
|
392
|
+
55, 55, 55, 55, 62, 55, 55, 55,
|
393
|
+
63, 55, 55, 64, 55, 65, 55, 66,
|
394
|
+
67, 55, 68, 55, 55, 55, 55, 55,
|
395
|
+
55, 69, 55, 70, 55, 71, 55, 72,
|
396
|
+
55, 73, 55, 74, 55, 75, 55, 76,
|
397
|
+
55, 73, 55, 77, 55, 78, 55, 73,
|
398
|
+
55, 79, 55, 80, 55, 81, 55, 73,
|
399
|
+
55, 82, 55, 83, 55, 84, 55, 73,
|
400
|
+
55, 85, 55, 86, 55, 87, 55, 73,
|
401
|
+
55, 88, 55, 89, 55, 90, 55, 73,
|
402
|
+
55, 91, 55, 92, 55, 93, 55, 73,
|
403
|
+
55, 94, 55, 55, 95, 55, 96, 55,
|
404
|
+
87, 55, 97, 55, 87, 55, 98, 55,
|
405
|
+
99, 55, 100, 55, 73, 55, 101, 55,
|
406
|
+
92, 55, 102, 55, 103, 55, 73, 55,
|
407
|
+
60, 55, 105, 105, 105, 105, 105, 105,
|
408
|
+
105, 105, 105, 105, 105, 105, 105, 105,
|
407
409
|
105, 105, 105, 105, 105, 105, 105, 105,
|
408
|
-
|
409
|
-
105, 105, 105, 105, 105,
|
410
|
-
|
411
|
-
|
412
|
-
|
413
|
-
105, 105,
|
410
|
+
105, 105, 105, 105, 105, 105, 105, 105,
|
411
|
+
105, 105, 105, 105, 105, 105, 105, 105,
|
412
|
+
105, 105, 105, 105, 105, 105, 105, 105,
|
413
|
+
105, 105, 105, 105, 105, 105, 105, 105,
|
414
|
+
105, 105, 105, 105, 105, 105, 105, 105,
|
415
|
+
105, 105, 104, 106, 106, 106, 106, 106,
|
414
416
|
106, 106, 106, 106, 106, 106, 106, 106,
|
415
|
-
|
416
|
-
106, 106, 106, 106, 106,
|
417
|
-
|
418
|
-
|
419
|
-
|
420
|
-
106, 106, 106, 106, 106,
|
421
|
-
|
422
|
-
|
423
|
-
|
424
|
-
|
425
|
-
|
426
|
-
|
427
|
-
|
428
|
-
|
429
|
-
|
430
|
-
|
431
|
-
|
432
|
-
|
433
|
-
|
434
|
-
|
435
|
-
|
436
|
-
|
437
|
-
|
438
|
-
|
439
|
-
|
440
|
-
|
441
|
-
|
442
|
-
|
443
|
-
|
444
|
-
|
445
|
-
|
446
|
-
|
447
|
-
|
448
|
-
|
449
|
-
|
450
|
-
|
451
|
-
|
452
|
-
|
453
|
-
|
454
|
-
|
455
|
-
|
456
|
-
|
457
|
-
|
458
|
-
|
459
|
-
|
460
|
-
|
461
|
-
|
462
|
-
|
463
|
-
|
464
|
-
|
465
|
-
|
466
|
-
|
467
|
-
|
468
|
-
|
469
|
-
|
470
|
-
|
471
|
-
|
472
|
-
|
473
|
-
|
474
|
-
|
475
|
-
|
476
|
-
|
477
|
-
|
478
|
-
|
479
|
-
|
480
|
-
|
481
|
-
|
482
|
-
|
483
|
-
|
484
|
-
|
485
|
-
|
486
|
-
|
487
|
-
|
488
|
-
|
489
|
-
|
490
|
-
|
491
|
-
|
492
|
-
|
493
|
-
|
494
|
-
|
495
|
-
30, 30, 30, 30, 30, 30, 30, 30,
|
496
|
-
30, 30, 30, 30, 30, 30, 30, 30,
|
497
|
-
30, 30, 30, 30, 30, 30, 112, 112,
|
498
|
-
112, 112, 112, 112, 30, 30, 30, 30,
|
499
|
-
30, 30, 30, 30, 30, 30, 30, 30,
|
500
|
-
30, 30, 30, 30, 30, 30, 30, 30,
|
501
|
-
30, 30, 106, 30, 103, 103, 103, 103,
|
502
|
-
103, 30, 30, 30, 30, 30, 30, 30,
|
503
|
-
30, 30, 30, 30, 30, 30, 30, 30,
|
504
|
-
30, 30, 30, 103, 30, 30, 30, 30,
|
505
|
-
30, 30, 30, 30, 30, 30, 30, 30,
|
506
|
-
30, 30, 30, 30, 30, 30, 30, 30,
|
507
|
-
30, 30, 30, 30, 30, 30, 30, 30,
|
508
|
-
30, 30, 30, 30, 30, 30, 30, 30,
|
509
|
-
30, 30, 30, 30, 30, 30, 30, 30,
|
510
|
-
30, 30, 30, 30, 30, 30, 30, 30,
|
511
|
-
30, 30, 30, 30, 30, 30, 30, 30,
|
512
|
-
30, 30, 30, 30, 30, 30, 30, 30,
|
513
|
-
30, 30, 30, 30, 30, 30, 30, 30,
|
514
|
-
30, 30, 30, 30, 30, 30, 30, 30,
|
515
|
-
30, 30, 30, 30, 30, 30, 30, 30,
|
516
|
-
106, 30, 114, 114, 114, 114, 114, 114,
|
517
|
-
114, 114, 114, 114, 113, 113, 113, 113,
|
518
|
-
113, 113, 113, 114, 114, 114, 114, 114,
|
519
|
-
114, 113, 113, 113, 113, 113, 113, 113,
|
520
|
-
113, 113, 113, 113, 113, 113, 113, 113,
|
521
|
-
113, 113, 113, 113, 113, 113, 113, 113,
|
522
|
-
113, 113, 113, 114, 114, 114, 114, 114,
|
523
|
-
114, 113, 113, 113, 113, 113, 113, 113,
|
524
|
-
113, 113, 113, 113, 113, 113, 113, 113,
|
525
|
-
113, 113, 113, 113, 113, 30, 113, 117,
|
526
|
-
116, 118, 115, 118, 115, 115, 115, 115,
|
527
|
-
115, 115, 119, 119, 119, 119, 119, 119,
|
528
|
-
119, 119, 119, 119, 115, 117, 120, 30,
|
529
|
-
30, 30, 30, 30, 30, 30, 30, 30,
|
530
|
-
30, 30, 30, 30, 30, 30, 30, 30,
|
531
|
-
30, 30, 30, 30, 30, 30, 30, 30,
|
532
|
-
30, 30, 30, 30, 30, 30, 30, 30,
|
533
|
-
30, 30, 30, 30, 30, 30, 30, 30,
|
534
|
-
30, 30, 30, 30, 30, 30, 30, 30,
|
535
|
-
30, 30, 30, 30, 30, 30, 30, 30,
|
536
|
-
30, 30, 30, 30, 30, 30, 30, 30,
|
537
|
-
30, 2, 2, 2, 2, 2, 2, 2,
|
538
|
-
2, 2, 2, 2, 2, 2, 2, 2,
|
539
|
-
2, 2, 2, 2, 2, 2, 2, 2,
|
540
|
-
2, 2, 2, 2, 2, 2, 2, 3,
|
541
|
-
3, 3, 3, 3, 3, 3, 3, 3,
|
542
|
-
3, 3, 3, 3, 3, 3, 3, 121,
|
543
|
-
121, 121, 121, 121, 30, 30, 30, 30,
|
544
|
-
30, 30, 30, 30, 30, 30, 30, 30,
|
545
|
-
122, 122, 122, 122, 122, 122, 122, 122,
|
546
|
-
123, 123, 123, 123, 123, 122, 122, 122,
|
547
|
-
122, 122, 122, 122, 122, 122, 122, 122,
|
548
|
-
122, 122, 122, 122, 122, 122, 122, 124,
|
549
|
-
125, 125, 126, 127, 125, 125, 125, 128,
|
550
|
-
129, 130, 131, 125, 125, 132, 125, 125,
|
551
|
-
125, 125, 125, 125, 125, 125, 125, 125,
|
552
|
-
125, 125, 125, 125, 125, 125, 133, 125,
|
553
|
-
125, 125, 125, 125, 125, 125, 125, 125,
|
554
|
-
125, 125, 125, 125, 125, 125, 125, 125,
|
555
|
-
125, 125, 125, 125, 125, 125, 125, 125,
|
556
|
-
125, 125, 134, 135, 136, 137, 125, 125,
|
557
|
-
125, 125, 125, 125, 125, 125, 125, 125,
|
558
|
-
125, 125, 125, 125, 125, 125, 125, 125,
|
417
|
+
106, 106, 106, 106, 106, 106, 106, 106,
|
418
|
+
106, 106, 106, 106, 106, 106, 106, 106,
|
419
|
+
106, 106, 106, 106, 106, 106, 106, 106,
|
420
|
+
106, 106, 106, 106, 106, 106, 106, 106,
|
421
|
+
106, 106, 106, 106, 106, 106, 106, 106,
|
422
|
+
106, 106, 106, 106, 106, 106, 106, 106,
|
423
|
+
106, 106, 106, 104, 107, 45, 109, 108,
|
424
|
+
111, 108, 112, 45, 114, 113, 116, 113,
|
425
|
+
117, 117, 117, 117, 117, 117, 117, 117,
|
426
|
+
117, 117, 45, 45, 45, 45, 45, 45,
|
427
|
+
45, 117, 117, 117, 117, 117, 117, 45,
|
428
|
+
45, 45, 45, 45, 45, 45, 45, 45,
|
429
|
+
45, 45, 45, 45, 45, 45, 45, 45,
|
430
|
+
45, 45, 45, 45, 45, 45, 45, 45,
|
431
|
+
45, 117, 117, 117, 117, 117, 117, 45,
|
432
|
+
45, 45, 45, 45, 45, 45, 45, 45,
|
433
|
+
45, 45, 45, 45, 45, 45, 45, 45,
|
434
|
+
45, 45, 45, 118, 45, 119, 119, 119,
|
435
|
+
119, 119, 119, 119, 119, 119, 119, 45,
|
436
|
+
45, 45, 45, 45, 45, 45, 119, 119,
|
437
|
+
119, 119, 119, 119, 45, 45, 45, 45,
|
438
|
+
45, 45, 45, 45, 45, 45, 45, 45,
|
439
|
+
45, 45, 45, 45, 45, 45, 45, 45,
|
440
|
+
45, 45, 45, 45, 45, 45, 119, 119,
|
441
|
+
119, 119, 119, 119, 45, 120, 120, 120,
|
442
|
+
120, 120, 120, 120, 120, 120, 120, 45,
|
443
|
+
45, 45, 45, 45, 45, 45, 120, 120,
|
444
|
+
120, 120, 120, 120, 45, 45, 45, 45,
|
445
|
+
45, 45, 45, 45, 45, 45, 45, 45,
|
446
|
+
45, 45, 45, 45, 45, 45, 45, 45,
|
447
|
+
45, 45, 45, 45, 45, 45, 120, 120,
|
448
|
+
120, 120, 120, 120, 45, 121, 121, 121,
|
449
|
+
121, 121, 121, 121, 121, 121, 121, 45,
|
450
|
+
45, 45, 45, 45, 45, 45, 121, 121,
|
451
|
+
121, 121, 121, 121, 45, 45, 45, 45,
|
452
|
+
45, 45, 45, 45, 45, 45, 45, 45,
|
453
|
+
45, 45, 45, 45, 45, 45, 45, 45,
|
454
|
+
45, 45, 45, 45, 45, 45, 121, 121,
|
455
|
+
121, 121, 121, 121, 45, 122, 122, 122,
|
456
|
+
122, 122, 122, 122, 122, 122, 122, 45,
|
457
|
+
45, 45, 45, 45, 45, 45, 122, 122,
|
458
|
+
122, 122, 122, 122, 45, 45, 45, 45,
|
459
|
+
45, 45, 45, 45, 45, 45, 45, 45,
|
460
|
+
45, 45, 45, 45, 45, 45, 45, 45,
|
461
|
+
45, 45, 45, 45, 45, 45, 122, 122,
|
462
|
+
122, 122, 122, 122, 45, 118, 118, 118,
|
463
|
+
118, 118, 45, 45, 45, 45, 45, 45,
|
464
|
+
45, 45, 45, 45, 45, 45, 45, 45,
|
465
|
+
45, 45, 45, 45, 118, 45, 45, 45,
|
466
|
+
45, 45, 45, 45, 45, 45, 45, 45,
|
467
|
+
45, 45, 45, 45, 123, 123, 123, 123,
|
468
|
+
123, 123, 123, 123, 123, 123, 45, 45,
|
469
|
+
45, 45, 45, 45, 45, 123, 123, 123,
|
470
|
+
123, 123, 123, 45, 45, 45, 45, 45,
|
471
|
+
45, 45, 45, 45, 45, 45, 45, 45,
|
472
|
+
45, 45, 45, 45, 45, 45, 45, 45,
|
473
|
+
45, 45, 45, 45, 45, 123, 123, 123,
|
474
|
+
123, 123, 123, 45, 45, 45, 45, 45,
|
475
|
+
45, 45, 45, 45, 45, 45, 45, 45,
|
476
|
+
45, 45, 45, 45, 45, 45, 45, 45,
|
477
|
+
45, 121, 45, 118, 118, 118, 118, 118,
|
478
|
+
45, 45, 45, 45, 45, 45, 45, 45,
|
479
|
+
45, 45, 45, 45, 45, 45, 45, 45,
|
480
|
+
45, 45, 118, 45, 45, 45, 45, 45,
|
481
|
+
45, 45, 45, 45, 45, 45, 45, 45,
|
482
|
+
45, 45, 124, 124, 124, 124, 124, 124,
|
483
|
+
124, 124, 124, 124, 45, 45, 45, 45,
|
484
|
+
45, 45, 45, 124, 124, 124, 124, 124,
|
485
|
+
124, 45, 45, 45, 45, 45, 45, 45,
|
486
|
+
45, 45, 45, 45, 45, 45, 45, 45,
|
487
|
+
45, 45, 45, 45, 45, 45, 45, 45,
|
488
|
+
45, 45, 45, 124, 124, 124, 124, 124,
|
489
|
+
124, 45, 45, 45, 45, 45, 45, 45,
|
490
|
+
45, 45, 45, 45, 45, 45, 45, 45,
|
491
|
+
45, 45, 45, 45, 45, 45, 45, 121,
|
492
|
+
45, 118, 118, 118, 118, 118, 45, 45,
|
493
|
+
45, 45, 45, 45, 45, 45, 45, 45,
|
494
|
+
45, 45, 45, 45, 45, 45, 45, 45,
|
495
|
+
118, 45, 45, 45, 45, 45, 45, 45,
|
496
|
+
45, 45, 45, 45, 45, 45, 45, 45,
|
559
497
|
125, 125, 125, 125, 125, 125, 125, 125,
|
560
|
-
125, 125,
|
498
|
+
125, 125, 45, 45, 45, 45, 45, 45,
|
499
|
+
45, 125, 125, 125, 125, 125, 125, 45,
|
500
|
+
45, 45, 45, 45, 45, 45, 45, 45,
|
501
|
+
45, 45, 45, 45, 45, 45, 45, 45,
|
502
|
+
45, 45, 45, 45, 45, 45, 45, 45,
|
503
|
+
45, 125, 125, 125, 125, 125, 125, 45,
|
504
|
+
45, 45, 45, 45, 45, 45, 45, 45,
|
505
|
+
45, 45, 45, 45, 45, 45, 45, 45,
|
506
|
+
45, 45, 45, 45, 45, 121, 45, 118,
|
507
|
+
118, 118, 118, 118, 45, 45, 45, 45,
|
508
|
+
45, 45, 45, 45, 45, 45, 45, 45,
|
509
|
+
45, 45, 45, 45, 45, 45, 118, 45,
|
510
|
+
45, 45, 45, 45, 45, 45, 45, 45,
|
511
|
+
45, 45, 45, 45, 45, 45, 126, 126,
|
512
|
+
126, 126, 126, 126, 126, 126, 126, 126,
|
513
|
+
45, 45, 45, 45, 45, 45, 45, 126,
|
514
|
+
126, 126, 126, 126, 126, 45, 45, 45,
|
515
|
+
45, 45, 45, 45, 45, 45, 45, 45,
|
516
|
+
45, 45, 45, 45, 45, 45, 45, 45,
|
517
|
+
45, 45, 45, 45, 45, 45, 45, 126,
|
518
|
+
126, 126, 126, 126, 126, 45, 45, 45,
|
519
|
+
45, 45, 45, 45, 45, 45, 45, 45,
|
520
|
+
45, 45, 45, 45, 45, 45, 45, 45,
|
521
|
+
45, 45, 45, 121, 45, 118, 118, 118,
|
522
|
+
118, 118, 45, 45, 45, 45, 45, 45,
|
523
|
+
45, 45, 45, 45, 45, 45, 45, 45,
|
524
|
+
45, 45, 45, 45, 118, 45, 45, 45,
|
525
|
+
45, 45, 45, 45, 45, 45, 45, 45,
|
526
|
+
45, 45, 45, 45, 127, 127, 127, 127,
|
527
|
+
127, 127, 127, 127, 127, 127, 45, 45,
|
528
|
+
45, 45, 45, 45, 45, 127, 127, 127,
|
529
|
+
127, 127, 127, 45, 45, 45, 45, 45,
|
530
|
+
45, 45, 45, 45, 45, 45, 45, 45,
|
531
|
+
45, 45, 45, 45, 45, 45, 45, 45,
|
532
|
+
45, 45, 45, 45, 45, 127, 127, 127,
|
533
|
+
127, 127, 127, 45, 45, 45, 45, 45,
|
534
|
+
45, 45, 45, 45, 45, 45, 45, 45,
|
535
|
+
45, 45, 45, 45, 45, 45, 45, 45,
|
536
|
+
45, 121, 45, 118, 118, 118, 118, 118,
|
537
|
+
45, 45, 45, 45, 45, 45, 45, 45,
|
538
|
+
45, 45, 45, 45, 45, 45, 45, 45,
|
539
|
+
45, 45, 118, 45, 45, 45, 45, 45,
|
540
|
+
45, 45, 45, 45, 45, 45, 45, 45,
|
541
|
+
45, 45, 45, 45, 45, 45, 45, 45,
|
542
|
+
45, 45, 45, 45, 45, 45, 45, 45,
|
543
|
+
45, 45, 45, 45, 45, 45, 45, 45,
|
544
|
+
45, 45, 45, 45, 45, 45, 45, 45,
|
545
|
+
45, 45, 45, 45, 45, 45, 45, 45,
|
546
|
+
45, 45, 45, 45, 45, 45, 45, 45,
|
547
|
+
45, 45, 45, 45, 45, 45, 45, 45,
|
548
|
+
45, 45, 45, 45, 45, 45, 45, 45,
|
549
|
+
45, 45, 45, 45, 45, 45, 45, 45,
|
550
|
+
45, 45, 45, 45, 45, 45, 45, 121,
|
551
|
+
45, 129, 129, 129, 129, 129, 129, 129,
|
552
|
+
129, 129, 129, 128, 128, 128, 128, 128,
|
553
|
+
128, 128, 129, 129, 129, 129, 129, 129,
|
554
|
+
128, 128, 128, 128, 128, 128, 128, 128,
|
555
|
+
128, 128, 128, 128, 128, 128, 128, 128,
|
556
|
+
128, 128, 128, 128, 128, 128, 128, 128,
|
557
|
+
128, 128, 129, 129, 129, 129, 129, 129,
|
558
|
+
128, 128, 128, 128, 128, 128, 128, 128,
|
559
|
+
128, 128, 128, 128, 128, 128, 128, 128,
|
560
|
+
128, 128, 128, 128, 45, 128, 132, 131,
|
561
|
+
133, 130, 133, 130, 130, 130, 130, 130,
|
562
|
+
130, 134, 134, 134, 134, 134, 134, 134,
|
563
|
+
134, 134, 134, 130, 132, 135, 45, 45,
|
564
|
+
45, 45, 45, 45, 45, 45, 45, 45,
|
565
|
+
45, 45, 45, 45, 45, 45, 45, 45,
|
566
|
+
45, 45, 45, 45, 45, 45, 45, 45,
|
567
|
+
45, 45, 45, 45, 45, 45, 45, 45,
|
568
|
+
45, 45, 45, 45, 45, 45, 45, 45,
|
569
|
+
45, 45, 45, 45, 45, 45, 45, 45,
|
570
|
+
45, 45, 45, 45, 45, 45, 45, 45,
|
571
|
+
45, 45, 45, 45, 45, 45, 45, 45,
|
561
572
|
2, 2, 2, 2, 2, 2, 2, 2,
|
562
573
|
2, 2, 2, 2, 2, 2, 2, 2,
|
563
574
|
2, 2, 2, 2, 2, 2, 2, 2,
|
564
575
|
2, 2, 2, 2, 2, 2, 3, 3,
|
565
576
|
3, 3, 3, 3, 3, 3, 3, 3,
|
566
|
-
3, 3, 3, 3, 3, 3,
|
567
|
-
|
568
|
-
|
569
|
-
|
570
|
-
|
571
|
-
|
577
|
+
3, 3, 3, 3, 3, 3, 136, 136,
|
578
|
+
136, 136, 136, 45, 45, 45, 45, 45,
|
579
|
+
45, 45, 45, 45, 45, 45, 45, 137,
|
580
|
+
137, 137, 137, 137, 137, 137, 137, 138,
|
581
|
+
138, 138, 138, 138, 137, 137, 137, 137,
|
582
|
+
137, 137, 137, 137, 137, 137, 137, 137,
|
583
|
+
137, 137, 137, 137, 137, 137, 139, 140,
|
584
|
+
140, 141, 142, 140, 140, 140, 143, 144,
|
585
|
+
145, 146, 140, 140, 147, 140, 140, 140,
|
572
586
|
140, 140, 140, 140, 140, 140, 140, 140,
|
587
|
+
140, 140, 140, 140, 140, 148, 140, 140,
|
573
588
|
140, 140, 140, 140, 140, 140, 140, 140,
|
574
589
|
140, 140, 140, 140, 140, 140, 140, 140,
|
575
590
|
140, 140, 140, 140, 140, 140, 140, 140,
|
591
|
+
140, 149, 150, 151, 152, 140, 140, 140,
|
576
592
|
140, 140, 140, 140, 140, 140, 140, 140,
|
577
593
|
140, 140, 140, 140, 140, 140, 140, 140,
|
578
594
|
140, 140, 140, 140, 140, 140, 140, 140,
|
595
|
+
140, 153, 154, 151, 140, 137, 140, 2,
|
596
|
+
2, 2, 2, 2, 2, 2, 2, 2,
|
597
|
+
2, 2, 2, 2, 2, 2, 2, 2,
|
598
|
+
2, 2, 2, 2, 2, 2, 2, 2,
|
599
|
+
2, 2, 2, 2, 2, 3, 3, 3,
|
600
|
+
3, 3, 3, 3, 3, 3, 3, 3,
|
601
|
+
3, 3, 3, 3, 3, 136, 136, 136,
|
602
|
+
136, 136, 155, 137, 137, 137, 137, 137,
|
603
|
+
137, 137, 137, 137, 137, 137, 137, 137,
|
604
|
+
137, 137, 137, 137, 137, 137, 137, 137,
|
605
|
+
137, 137, 137, 137, 137, 137, 137, 137,
|
606
|
+
137, 137, 155, 155, 155, 155, 155, 155,
|
607
|
+
155, 155, 155, 155, 155, 155, 155, 155,
|
608
|
+
155, 155, 155, 155, 155, 155, 155, 155,
|
609
|
+
155, 155, 155, 155, 155, 155, 155, 155,
|
610
|
+
155, 155, 155, 155, 155, 155, 155, 155,
|
611
|
+
155, 155, 155, 155, 155, 155, 155, 155,
|
612
|
+
155, 155, 155, 155, 155, 155, 155, 155,
|
613
|
+
155, 155, 155, 155, 155, 155, 155, 155,
|
614
|
+
155, 155, 155, 155, 155, 155, 155, 155,
|
615
|
+
155, 155, 155, 155, 155, 155, 155, 155,
|
616
|
+
155, 155, 155, 155, 155, 155, 155, 155,
|
617
|
+
155, 155, 155, 155, 155, 155, 155, 155,
|
618
|
+
155, 137, 155, 137, 137, 137, 137, 137,
|
619
|
+
137, 137, 137, 138, 138, 138, 138, 138,
|
620
|
+
137, 137, 137, 137, 137, 137, 137, 137,
|
621
|
+
137, 137, 137, 137, 137, 137, 137, 137,
|
622
|
+
137, 137, 139, 156, 156, 156, 156, 156,
|
623
|
+
156, 156, 156, 156, 156, 156, 156, 156,
|
624
|
+
156, 156, 156, 156, 156, 156, 156, 156,
|
625
|
+
156, 156, 156, 156, 156, 156, 156, 156,
|
626
|
+
156, 156, 156, 156, 156, 156, 156, 156,
|
627
|
+
156, 156, 156, 156, 156, 156, 156, 156,
|
628
|
+
156, 156, 156, 156, 156, 156, 156, 156,
|
629
|
+
156, 156, 156, 156, 156, 156, 156, 156,
|
630
|
+
156, 156, 156, 156, 156, 156, 156, 156,
|
631
|
+
156, 156, 156, 156, 156, 156, 156, 156,
|
632
|
+
156, 156, 156, 156, 156, 156, 156, 156,
|
633
|
+
156, 156, 156, 156, 156, 156, 156, 156,
|
634
|
+
156, 137, 156, 139, 139, 139, 139, 139,
|
635
|
+
156, 156, 156, 156, 156, 156, 156, 156,
|
636
|
+
156, 156, 156, 156, 156, 156, 156, 156,
|
637
|
+
156, 156, 139, 156, 140, 140, 155, 155,
|
638
|
+
140, 140, 140, 155, 155, 155, 155, 140,
|
639
|
+
140, 155, 140, 140, 140, 140, 140, 140,
|
579
640
|
140, 140, 140, 140, 140, 140, 140, 140,
|
641
|
+
140, 140, 155, 140, 140, 140, 140, 140,
|
580
642
|
140, 140, 140, 140, 140, 140, 140, 140,
|
581
643
|
140, 140, 140, 140, 140, 140, 140, 140,
|
644
|
+
140, 140, 140, 140, 140, 140, 155, 155,
|
645
|
+
155, 155, 140, 140, 140, 140, 140, 140,
|
582
646
|
140, 140, 140, 140, 140, 140, 140, 140,
|
583
|
-
140, 140,
|
584
|
-
|
585
|
-
|
586
|
-
|
587
|
-
|
588
|
-
|
589
|
-
|
590
|
-
|
591
|
-
|
592
|
-
|
593
|
-
|
594
|
-
|
595
|
-
|
596
|
-
|
597
|
-
|
598
|
-
|
599
|
-
|
600
|
-
|
601
|
-
|
602
|
-
|
603
|
-
|
604
|
-
|
605
|
-
|
606
|
-
|
607
|
-
|
608
|
-
|
609
|
-
|
610
|
-
|
611
|
-
|
612
|
-
|
613
|
-
125, 125, 125, 125, 125, 125, 125, 140,
|
614
|
-
140, 140, 125, 140, 143, 126, 145, 144,
|
615
|
-
148, 147, 5, 147, 147, 147, 149, 150,
|
616
|
-
146, 147, 147, 147, 147, 147, 147, 147,
|
617
|
-
147, 147, 147, 147, 147, 147, 147, 147,
|
618
|
-
147, 8, 147, 151, 148, 8, 147, 147,
|
619
|
-
147, 147, 147, 147, 147, 147, 147, 147,
|
620
|
-
147, 147, 147, 147, 147, 147, 147, 147,
|
621
|
-
147, 147, 147, 147, 147, 147, 147, 147,
|
622
|
-
147, 147, 147, 147, 147, 147, 147, 147,
|
623
|
-
147, 147, 147, 147, 147, 147, 147, 147,
|
624
|
-
147, 147, 147, 147, 147, 147, 147, 147,
|
625
|
-
147, 147, 147, 147, 147, 147, 147, 147,
|
626
|
-
147, 147, 147, 147, 147, 8, 147, 146,
|
627
|
-
147, 146, 147, 147, 147, 146, 146, 146,
|
628
|
-
147, 147, 147, 147, 147, 147, 147, 147,
|
629
|
-
147, 147, 147, 147, 147, 147, 147, 147,
|
630
|
-
152, 147, 146, 146, 146, 147, 147, 147,
|
631
|
-
147, 147, 147, 147, 147, 147, 147, 147,
|
632
|
-
147, 147, 147, 147, 147, 147, 147, 147,
|
633
|
-
147, 147, 147, 147, 147, 147, 147, 147,
|
634
|
-
147, 147, 147, 147, 147, 147, 147, 147,
|
635
|
-
147, 147, 147, 147, 147, 147, 147, 147,
|
636
|
-
147, 147, 147, 147, 147, 147, 147, 147,
|
637
|
-
147, 147, 147, 147, 147, 147, 147, 147,
|
638
|
-
147, 147, 147, 147, 146, 147, 8, 9,
|
639
|
-
155, 154, 154, 154, 154, 154, 154, 154,
|
640
|
-
154, 154, 154, 154, 154, 154, 154, 154,
|
641
|
-
154, 154, 154, 154, 155, 154, 157, 156,
|
642
|
-
156, 156, 156, 156, 156, 156, 156, 156,
|
643
|
-
156, 156, 156, 156, 156, 156, 156, 156,
|
644
|
-
156, 156, 157, 156, 159, 158, 158, 158,
|
645
|
-
158, 158, 158, 158, 158, 158, 158, 158,
|
646
|
-
158, 158, 158, 158, 158, 158, 158, 158,
|
647
|
-
159, 158, 161, 161, 160, 160, 160, 160,
|
648
|
-
161, 160, 160, 160, 162, 160, 160, 160,
|
649
|
-
160, 160, 160, 160, 160, 160, 160, 160,
|
650
|
-
160, 160, 160, 161, 160, 160, 160, 160,
|
651
|
-
160, 160, 160, 161, 160, 160, 160, 160,
|
652
|
-
163, 160, 160, 160, 163, 160, 160, 160,
|
653
|
-
160, 160, 160, 160, 160, 160, 160, 160,
|
654
|
-
160, 160, 160, 161, 160, 165, 164, 164,
|
655
|
-
164, 28, 28, 28, 28, 28, 28, 28,
|
656
|
-
28, 28, 28, 164, 167, 166, 166, 166,
|
657
|
-
166, 166, 166, 166, 166, 166, 166, 166,
|
658
|
-
166, 166, 166, 166, 166, 166, 166, 166,
|
659
|
-
167, 166, 168, 30, 30, 30, 168, 30,
|
660
|
-
30, 30, 30, 30, 30, 30, 30, 30,
|
661
|
-
168, 168, 30, 30, 30, 168, 168, 30,
|
662
|
-
30, 30, 30, 30, 30, 30, 30, 30,
|
663
|
-
30, 30, 168, 30, 30, 30, 168, 30,
|
664
|
-
30, 30, 30, 30, 30, 30, 30, 30,
|
665
|
-
30, 168, 30, 30, 30, 168, 30, 169,
|
666
|
-
30, 30, 30, 30, 30, 30, 30, 30,
|
667
|
-
30, 30, 30, 30, 30, 30, 30, 30,
|
668
|
-
30, 30, 30, 30, 30, 30, 30, 30,
|
669
|
-
30, 30, 30, 30, 30, 30, 30, 169,
|
670
|
-
30, 170, 170, 170, 170, 170, 170, 170,
|
671
|
-
170, 170, 170, 170, 170, 170, 170, 170,
|
672
|
-
170, 170, 170, 170, 170, 170, 170, 170,
|
673
|
-
170, 170, 170, 170, 170, 170, 170, 171,
|
647
|
+
140, 140, 140, 140, 140, 140, 140, 140,
|
648
|
+
140, 140, 140, 140, 140, 140, 155, 155,
|
649
|
+
155, 140, 155, 158, 141, 160, 159, 163,
|
650
|
+
162, 5, 162, 162, 162, 164, 165, 161,
|
651
|
+
162, 162, 162, 162, 162, 162, 162, 162,
|
652
|
+
162, 162, 162, 162, 162, 162, 162, 162,
|
653
|
+
8, 162, 166, 163, 8, 162, 162, 162,
|
654
|
+
162, 162, 162, 162, 162, 162, 162, 162,
|
655
|
+
162, 162, 162, 162, 162, 162, 162, 162,
|
656
|
+
162, 162, 162, 162, 162, 162, 162, 162,
|
657
|
+
162, 162, 162, 162, 162, 162, 162, 162,
|
658
|
+
162, 162, 162, 162, 162, 162, 162, 162,
|
659
|
+
162, 162, 162, 162, 162, 162, 162, 162,
|
660
|
+
162, 162, 162, 162, 162, 162, 162, 162,
|
661
|
+
162, 162, 162, 162, 8, 162, 161, 162,
|
662
|
+
161, 162, 162, 162, 161, 161, 161, 162,
|
663
|
+
162, 162, 162, 162, 162, 162, 162, 162,
|
664
|
+
162, 162, 162, 162, 162, 162, 162, 167,
|
665
|
+
162, 161, 161, 161, 162, 162, 162, 162,
|
666
|
+
162, 162, 162, 162, 162, 162, 162, 162,
|
667
|
+
162, 162, 162, 162, 162, 162, 162, 162,
|
668
|
+
162, 162, 162, 162, 162, 162, 162, 162,
|
669
|
+
162, 162, 162, 162, 162, 162, 162, 162,
|
670
|
+
162, 162, 162, 162, 162, 162, 162, 162,
|
671
|
+
162, 162, 162, 162, 162, 162, 162, 162,
|
672
|
+
162, 162, 162, 162, 162, 162, 162, 162,
|
673
|
+
162, 162, 162, 161, 162, 8, 9, 170,
|
674
|
+
169, 169, 169, 169, 169, 169, 169, 169,
|
675
|
+
169, 169, 169, 169, 169, 169, 169, 169,
|
676
|
+
169, 169, 169, 170, 169, 172, 171, 171,
|
674
677
|
171, 171, 171, 171, 171, 171, 171, 171,
|
675
|
-
171, 171, 171, 171, 171, 171, 171,
|
676
|
-
|
677
|
-
|
678
|
-
|
679
|
-
|
680
|
-
|
681
|
-
|
682
|
-
|
683
|
-
|
684
|
-
|
685
|
-
|
686
|
-
|
687
|
-
|
688
|
-
|
689
|
-
|
690
|
-
|
691
|
-
|
692
|
-
|
693
|
-
|
694
|
-
|
695
|
-
|
696
|
-
|
697
|
-
|
698
|
-
|
699
|
-
|
700
|
-
|
701
|
-
|
702
|
-
|
703
|
-
|
704
|
-
|
705
|
-
|
706
|
-
|
707
|
-
|
708
|
-
|
709
|
-
|
710
|
-
|
711
|
-
|
712
|
-
|
713
|
-
|
714
|
-
|
715
|
-
|
716
|
-
|
717
|
-
|
718
|
-
|
719
|
-
|
720
|
-
|
721
|
-
|
722
|
-
|
723
|
-
|
724
|
-
|
725
|
-
|
726
|
-
|
727
|
-
|
728
|
-
|
729
|
-
|
730
|
-
|
731
|
-
|
732
|
-
|
733
|
-
|
734
|
-
|
735
|
-
|
736
|
-
|
737
|
-
|
738
|
-
|
739
|
-
|
740
|
-
|
741
|
-
|
742
|
-
|
743
|
-
|
744
|
-
|
745
|
-
|
746
|
-
|
747
|
-
|
748
|
-
|
749
|
-
|
750
|
-
|
751
|
-
|
752
|
-
199,
|
753
|
-
|
754
|
-
199,
|
755
|
-
|
756
|
-
199,
|
757
|
-
|
758
|
-
|
759
|
-
|
760
|
-
|
761
|
-
|
762
|
-
|
763
|
-
|
764
|
-
|
765
|
-
|
766
|
-
|
767
|
-
|
768
|
-
|
769
|
-
|
770
|
-
|
771
|
-
|
772
|
-
|
773
|
-
|
774
|
-
|
775
|
-
|
776
|
-
|
777
|
-
|
778
|
-
|
779
|
-
|
780
|
-
|
781
|
-
|
782
|
-
|
783
|
-
|
784
|
-
|
785
|
-
|
786
|
-
|
787
|
-
|
788
|
-
|
789
|
-
|
790
|
-
|
791
|
-
|
792
|
-
|
793
|
-
|
794
|
-
|
795
|
-
|
796
|
-
|
797
|
-
|
798
|
-
|
799
|
-
|
800
|
-
|
801
|
-
|
802
|
-
|
803
|
-
|
804
|
-
|
805
|
-
|
806
|
-
|
807
|
-
|
808
|
-
|
809
|
-
|
678
|
+
171, 171, 171, 171, 171, 171, 171, 171,
|
679
|
+
171, 172, 171, 174, 173, 173, 173, 173,
|
680
|
+
173, 173, 173, 173, 173, 173, 173, 173,
|
681
|
+
173, 173, 173, 173, 173, 173, 173, 174,
|
682
|
+
173, 176, 176, 175, 175, 175, 175, 176,
|
683
|
+
175, 175, 175, 177, 175, 175, 175, 175,
|
684
|
+
175, 175, 175, 175, 175, 175, 175, 175,
|
685
|
+
175, 175, 176, 175, 175, 175, 175, 175,
|
686
|
+
175, 175, 176, 175, 175, 175, 175, 178,
|
687
|
+
175, 175, 175, 179, 175, 175, 175, 175,
|
688
|
+
175, 175, 175, 175, 175, 175, 175, 175,
|
689
|
+
175, 175, 176, 175, 181, 180, 180, 180,
|
690
|
+
43, 43, 43, 43, 43, 43, 43, 43,
|
691
|
+
43, 43, 180, 183, 182, 182, 182, 182,
|
692
|
+
182, 182, 182, 182, 182, 182, 182, 182,
|
693
|
+
182, 182, 182, 182, 182, 182, 182, 183,
|
694
|
+
182, 184, 45, 45, 45, 184, 45, 45,
|
695
|
+
45, 45, 45, 45, 45, 45, 45, 184,
|
696
|
+
184, 45, 45, 45, 184, 184, 45, 45,
|
697
|
+
45, 45, 45, 45, 45, 45, 45, 45,
|
698
|
+
45, 184, 45, 45, 45, 184, 45, 45,
|
699
|
+
45, 45, 45, 45, 45, 45, 45, 45,
|
700
|
+
184, 45, 45, 45, 184, 45, 185, 45,
|
701
|
+
45, 45, 45, 45, 45, 45, 45, 45,
|
702
|
+
45, 45, 45, 45, 45, 45, 45, 45,
|
703
|
+
45, 45, 45, 45, 45, 45, 45, 45,
|
704
|
+
45, 45, 45, 45, 45, 45, 185, 45,
|
705
|
+
186, 186, 186, 186, 186, 186, 186, 186,
|
706
|
+
186, 186, 186, 186, 186, 186, 186, 186,
|
707
|
+
186, 186, 186, 186, 186, 186, 186, 186,
|
708
|
+
186, 186, 186, 186, 186, 186, 187, 187,
|
709
|
+
187, 187, 187, 187, 187, 187, 187, 187,
|
710
|
+
187, 187, 187, 187, 187, 187, 188, 188,
|
711
|
+
188, 188, 188, 50, 50, 50, 50, 50,
|
712
|
+
50, 50, 50, 50, 50, 50, 50, 50,
|
713
|
+
50, 50, 50, 50, 50, 50, 50, 50,
|
714
|
+
50, 50, 50, 50, 50, 50, 50, 50,
|
715
|
+
50, 50, 50, 50, 50, 50, 50, 50,
|
716
|
+
50, 50, 50, 50, 50, 50, 50, 50,
|
717
|
+
50, 50, 189, 50, 190, 50, 189, 189,
|
718
|
+
189, 189, 50, 191, 189, 50, 50, 50,
|
719
|
+
50, 50, 50, 50, 50, 50, 50, 50,
|
720
|
+
50, 50, 50, 50, 50, 189, 50, 50,
|
721
|
+
50, 50, 50, 50, 50, 50, 50, 50,
|
722
|
+
50, 50, 50, 50, 50, 50, 50, 50,
|
723
|
+
50, 50, 50, 50, 50, 50, 50, 50,
|
724
|
+
50, 192, 193, 194, 195, 50, 50, 50,
|
725
|
+
50, 50, 50, 50, 50, 50, 50, 50,
|
726
|
+
50, 50, 50, 50, 50, 50, 50, 50,
|
727
|
+
50, 50, 50, 50, 50, 50, 50, 50,
|
728
|
+
50, 189, 189, 189, 50, 50, 50, 50,
|
729
|
+
50, 50, 50, 50, 50, 50, 50, 50,
|
730
|
+
50, 50, 50, 50, 50, 50, 50, 50,
|
731
|
+
50, 50, 50, 50, 50, 50, 50, 50,
|
732
|
+
50, 50, 50, 50, 50, 50, 50, 50,
|
733
|
+
50, 50, 50, 50, 50, 50, 50, 50,
|
734
|
+
50, 50, 50, 50, 50, 50, 50, 50,
|
735
|
+
50, 50, 50, 50, 50, 50, 50, 50,
|
736
|
+
50, 50, 50, 50, 50, 196, 51, 51,
|
737
|
+
51, 51, 51, 51, 51, 51, 51, 51,
|
738
|
+
51, 51, 51, 51, 51, 51, 51, 51,
|
739
|
+
51, 51, 51, 51, 51, 51, 51, 51,
|
740
|
+
51, 51, 51, 51, 51, 51, 51, 51,
|
741
|
+
51, 51, 51, 51, 51, 51, 51, 51,
|
742
|
+
51, 51, 51, 51, 51, 51, 51, 51,
|
743
|
+
51, 51, 51, 51, 51, 51, 51, 51,
|
744
|
+
51, 51, 51, 51, 51, 51, 196, 197,
|
745
|
+
197, 197, 197, 197, 197, 197, 197, 197,
|
746
|
+
197, 197, 197, 197, 197, 197, 197, 197,
|
747
|
+
197, 197, 197, 197, 197, 197, 197, 197,
|
748
|
+
197, 197, 197, 197, 197, 197, 197, 197,
|
749
|
+
197, 197, 197, 197, 197, 197, 197, 197,
|
750
|
+
197, 197, 197, 197, 197, 197, 197, 197,
|
751
|
+
197, 197, 197, 197, 197, 197, 197, 197,
|
752
|
+
197, 197, 197, 197, 197, 197, 197, 196,
|
753
|
+
198, 196, 200, 199, 199, 199, 199, 199,
|
754
|
+
199, 199, 199, 199, 199, 199, 199, 199,
|
755
|
+
199, 199, 199, 199, 199, 199, 199, 199,
|
756
|
+
199, 199, 199, 199, 199, 199, 199, 199,
|
757
|
+
199, 199, 199, 199, 199, 199, 199, 199,
|
758
|
+
199, 199, 199, 199, 199, 199, 199, 199,
|
759
|
+
199, 199, 199, 199, 199, 199, 199, 199,
|
760
|
+
199, 201, 199, 204, 203, 206, 206, 205,
|
761
|
+
205, 205, 206, 205, 205, 205, 205, 206,
|
762
|
+
205, 205, 206, 205, 205, 206, 205, 205,
|
763
|
+
205, 206, 205, 205, 205, 206, 206, 206,
|
764
|
+
205, 205, 205, 206, 206, 206, 206, 206,
|
765
|
+
206, 205, 206, 205, 205, 205, 205, 205,
|
766
|
+
206, 205, 206, 205, 206, 206, 206, 206,
|
767
|
+
206, 206, 206, 205, 207, 207, 207, 207,
|
768
|
+
207, 207, 207, 207, 207, 207, 207, 207,
|
769
|
+
207, 207, 207, 207, 207, 207, 207, 207,
|
770
|
+
207, 207, 207, 207, 207, 207, 207, 207,
|
771
|
+
207, 207, 208, 208, 208, 208, 208, 208,
|
772
|
+
208, 208, 208, 208, 208, 208, 208, 208,
|
773
|
+
208, 208, 209, 209, 209, 209, 209, 105,
|
774
|
+
105, 105, 105, 105, 105, 105, 105, 105,
|
775
|
+
105, 105, 105, 105, 105, 105, 105, 105,
|
776
|
+
105, 105, 105, 105, 105, 105, 105, 105,
|
777
|
+
105, 105, 105, 105, 105, 105, 105, 105,
|
778
|
+
105, 105, 105, 105, 105, 105, 105, 105,
|
779
|
+
105, 105, 105, 105, 105, 105, 210, 105,
|
780
|
+
105, 105, 210, 210, 210, 210, 105, 105,
|
781
|
+
210, 105, 211, 212, 212, 212, 212, 212,
|
782
|
+
212, 212, 213, 213, 105, 105, 105, 105,
|
783
|
+
105, 210, 105, 45, 45, 214, 215, 105,
|
784
|
+
105, 45, 215, 105, 105, 45, 105, 216,
|
785
|
+
105, 105, 217, 105, 215, 215, 105, 105,
|
786
|
+
105, 215, 215, 105, 45, 210, 210, 210,
|
787
|
+
210, 105, 105, 218, 218, 107, 215, 218,
|
788
|
+
218, 105, 215, 105, 105, 105, 105, 105,
|
789
|
+
218, 105, 217, 105, 218, 215, 218, 219,
|
790
|
+
218, 215, 220, 105, 45, 210, 210, 210,
|
791
|
+
105, 105, 105, 105, 105, 105, 105, 105,
|
792
|
+
105, 105, 105, 105, 105, 105, 105, 105,
|
793
|
+
105, 105, 105, 105, 105, 105, 105, 105,
|
794
|
+
105, 105, 105, 105, 105, 105, 105, 105,
|
795
|
+
105, 105, 105, 105, 105, 105, 105, 105,
|
796
|
+
105, 105, 105, 105, 105, 105, 105, 105,
|
797
|
+
105, 105, 105, 105, 105, 105, 105, 105,
|
798
|
+
105, 105, 105, 105, 105, 105, 105, 105,
|
799
|
+
105, 221, 106, 106, 106, 106, 106, 106,
|
800
|
+
106, 106, 106, 106, 106, 106, 106, 106,
|
801
|
+
106, 106, 106, 106, 106, 106, 106, 106,
|
802
|
+
106, 106, 106, 106, 106, 106, 106, 106,
|
803
|
+
106, 106, 106, 106, 106, 106, 106, 106,
|
804
|
+
106, 106, 106, 106, 106, 106, 106, 106,
|
805
|
+
106, 106, 106, 106, 106, 106, 106, 106,
|
806
|
+
106, 106, 106, 106, 106, 106, 106, 106,
|
807
|
+
106, 106, 221, 222, 222, 222, 222, 222,
|
808
|
+
222, 222, 222, 222, 222, 222, 222, 222,
|
809
|
+
222, 222, 222, 222, 222, 222, 222, 222,
|
810
|
+
222, 222, 222, 222, 222, 222, 222, 222,
|
811
|
+
222, 222, 222, 222, 222, 222, 222, 222,
|
812
|
+
222, 222, 222, 222, 222, 222, 222, 222,
|
813
|
+
222, 222, 222, 222, 222, 222, 222, 222,
|
814
|
+
222, 222, 222, 222, 222, 222, 222, 222,
|
815
|
+
222, 222, 222, 221, 224, 224, 224, 224,
|
816
|
+
224, 224, 224, 224, 223, 226, 226, 226,
|
817
|
+
226, 226, 226, 226, 226, 225, 228, 108,
|
818
|
+
230, 229, 108, 232, 113, 113, 113, 113,
|
819
|
+
113, 113, 113, 113, 113, 113, 113, 113,
|
820
|
+
113, 113, 113, 113, 113, 113, 113, 113,
|
821
|
+
113, 113, 113, 113, 113, 113, 113, 113,
|
822
|
+
113, 113, 113, 233, 113, 235, 234, 113,
|
823
|
+
116, 113, 237, 237, 237, 237, 237, 237,
|
824
|
+
237, 237, 237, 237, 236, 236, 236, 236,
|
825
|
+
236, 236, 236, 237, 237, 237, 237, 237,
|
826
|
+
237, 236, 236, 236, 236, 236, 236, 236,
|
827
|
+
236, 236, 236, 236, 236, 236, 236, 236,
|
828
|
+
236, 236, 236, 236, 236, 236, 236, 236,
|
829
|
+
236, 236, 236, 237, 237, 237, 237, 237,
|
830
|
+
237, 236, 239, 238, 238, 238, 238, 238,
|
831
|
+
240, 238, 238, 238, 241, 241, 241, 241,
|
832
|
+
241, 241, 241, 241, 241, 238, 238, 242,
|
833
|
+
238, 132, 131, 131, 131, 131, 131, 243,
|
834
|
+
131, 131, 243, 243, 243, 243, 243, 243,
|
835
|
+
243, 243, 243, 243, 131, 134, 134, 134,
|
836
|
+
134, 134, 134, 134, 134, 134, 243, 133,
|
837
|
+
243, 243, 243, 243, 243, 243, 134, 134,
|
838
|
+
134, 134, 134, 134, 134, 134, 134, 134,
|
839
|
+
243, 243, 135, 135, 243, 243, 243, 243,
|
840
|
+
243, 243, 243, 243, 243, 243, 135, 135,
|
841
|
+
135, 135, 132, 135, 0
|
810
842
|
]
|
811
843
|
|
812
844
|
class << self
|
@@ -814,35 +846,37 @@ class << self
|
|
814
846
|
private :_re_scanner_trans_targs, :_re_scanner_trans_targs=
|
815
847
|
end
|
816
848
|
self._re_scanner_trans_targs = [
|
817
|
-
|
818
|
-
|
819
|
-
12, 14, 13, 15,
|
820
|
-
21,
|
821
|
-
|
822
|
-
|
823
|
-
|
824
|
-
|
825
|
-
|
826
|
-
|
827
|
-
|
828
|
-
|
829
|
-
|
830
|
-
|
831
|
-
|
832
|
-
|
833
|
-
|
834
|
-
|
835
|
-
|
836
|
-
|
837
|
-
|
838
|
-
|
839
|
-
|
840
|
-
|
841
|
-
|
842
|
-
|
843
|
-
|
844
|
-
|
845
|
-
|
849
|
+
119, 120, 1, 2, 119, 4, 119, 6,
|
850
|
+
119, 8, 129, 119, 10, 17, 11, 119,
|
851
|
+
12, 16, 14, 13, 15, 18, 19, 23,
|
852
|
+
21, 20, 22, 25, 31, 26, 119, 27,
|
853
|
+
29, 28, 30, 32, 33, 35, 34, 36,
|
854
|
+
119, 38, 135, 39, 41, 0, 42, 43,
|
855
|
+
137, 138, 138, 44, 138, 138, 138, 138,
|
856
|
+
48, 49, 60, 64, 68, 72, 76, 80,
|
857
|
+
85, 89, 91, 94, 50, 57, 51, 55,
|
858
|
+
52, 53, 54, 138, 56, 58, 59, 61,
|
859
|
+
62, 63, 65, 66, 67, 69, 70, 71,
|
860
|
+
73, 74, 75, 77, 78, 79, 81, 83,
|
861
|
+
82, 84, 86, 87, 88, 90, 92, 93,
|
862
|
+
146, 146, 95, 98, 146, 152, 146, 154,
|
863
|
+
101, 146, 155, 146, 157, 104, 107, 105,
|
864
|
+
106, 146, 108, 109, 110, 111, 112, 113,
|
865
|
+
146, 159, 160, 115, 116, 160, 117, 118,
|
866
|
+
3, 121, 122, 123, 124, 125, 119, 126,
|
867
|
+
119, 130, 131, 119, 132, 119, 133, 119,
|
868
|
+
119, 134, 119, 119, 119, 119, 119, 119,
|
869
|
+
127, 119, 128, 119, 5, 119, 7, 119,
|
870
|
+
119, 119, 119, 119, 119, 119, 119, 119,
|
871
|
+
119, 119, 9, 24, 119, 37, 119, 119,
|
872
|
+
136, 40, 139, 140, 141, 138, 142, 143,
|
873
|
+
144, 138, 138, 138, 138, 45, 138, 138,
|
874
|
+
46, 138, 138, 138, 47, 145, 145, 147,
|
875
|
+
148, 149, 146, 150, 150, 146, 97, 146,
|
876
|
+
100, 146, 146, 103, 114, 146, 96, 146,
|
877
|
+
151, 146, 146, 146, 153, 146, 99, 146,
|
878
|
+
156, 158, 146, 102, 146, 146, 160, 161,
|
879
|
+
162, 163, 164, 160
|
846
880
|
]
|
847
881
|
|
848
882
|
class << self
|
@@ -853,32 +887,34 @@ self._re_scanner_trans_actions = [
|
|
853
887
|
1, 2, 0, 0, 3, 4, 5, 0,
|
854
888
|
6, 0, 7, 8, 0, 0, 0, 9,
|
855
889
|
0, 0, 0, 0, 0, 0, 0, 0,
|
856
|
-
0,
|
857
|
-
0, 12, 13, 14, 0, 15, 16, 17,
|
858
|
-
18, 0, 0, 0, 0, 0, 0, 0,
|
890
|
+
0, 0, 0, 0, 0, 0, 10, 0,
|
859
891
|
0, 0, 0, 0, 0, 0, 0, 0,
|
860
|
-
|
892
|
+
11, 0, 0, 0, 0, 0, 0, 0,
|
893
|
+
13, 14, 15, 0, 16, 17, 18, 19,
|
861
894
|
0, 0, 0, 0, 0, 0, 0, 0,
|
862
895
|
0, 0, 0, 0, 0, 0, 0, 0,
|
896
|
+
0, 0, 0, 20, 0, 0, 0, 0,
|
863
897
|
0, 0, 0, 0, 0, 0, 0, 0,
|
864
|
-
0,
|
865
|
-
0, 0,
|
866
|
-
|
867
|
-
0,
|
868
|
-
0,
|
869
|
-
|
870
|
-
|
871
|
-
|
872
|
-
|
873
|
-
|
874
|
-
|
875
|
-
|
876
|
-
|
877
|
-
|
878
|
-
0,
|
879
|
-
|
880
|
-
|
881
|
-
|
898
|
+
0, 0, 0, 0, 0, 0, 0, 0,
|
899
|
+
0, 0, 0, 0, 0, 0, 0, 0,
|
900
|
+
21, 22, 0, 0, 24, 0, 25, 0,
|
901
|
+
0, 26, 0, 27, 0, 0, 0, 0,
|
902
|
+
0, 28, 0, 0, 0, 0, 0, 0,
|
903
|
+
29, 0, 30, 0, 0, 31, 0, 0,
|
904
|
+
0, 0, 0, 0, 0, 0, 34, 35,
|
905
|
+
36, 0, 0, 37, 0, 38, 39, 40,
|
906
|
+
41, 39, 42, 43, 44, 45, 46, 47,
|
907
|
+
48, 49, 0, 50, 0, 51, 0, 52,
|
908
|
+
53, 54, 55, 56, 57, 58, 59, 60,
|
909
|
+
61, 62, 0, 0, 63, 0, 64, 65,
|
910
|
+
67, 0, 0, 39, 39, 68, 0, 39,
|
911
|
+
69, 70, 71, 72, 73, 0, 74, 75,
|
912
|
+
0, 76, 77, 78, 0, 79, 80, 0,
|
913
|
+
39, 39, 81, 82, 83, 84, 0, 85,
|
914
|
+
0, 86, 87, 0, 0, 88, 0, 89,
|
915
|
+
0, 90, 91, 92, 39, 93, 0, 94,
|
916
|
+
39, 0, 95, 0, 96, 97, 98, 39,
|
917
|
+
39, 39, 39, 99
|
882
918
|
]
|
883
919
|
|
884
920
|
class << self
|
@@ -899,12 +935,14 @@ self._re_scanner_to_state_actions = [
|
|
899
935
|
0, 0, 0, 0, 0, 0, 0, 0,
|
900
936
|
0, 0, 0, 0, 0, 0, 0, 0,
|
901
937
|
0, 0, 0, 0, 0, 0, 0, 0,
|
902
|
-
31, 0, 0, 0, 0, 0, 0, 0,
|
903
938
|
0, 0, 0, 0, 0, 0, 0, 0,
|
904
|
-
0,
|
905
|
-
0, 0,
|
939
|
+
0, 0, 0, 0, 0, 0, 0, 32,
|
940
|
+
0, 0, 0, 0, 0, 0, 0, 0,
|
941
|
+
0, 0, 0, 0, 0, 0, 0, 0,
|
942
|
+
66, 66, 66, 0, 0, 0, 0, 0,
|
943
|
+
0, 66, 66, 0, 0, 0, 0, 0,
|
906
944
|
0, 0, 0, 0, 0, 0, 0, 0,
|
907
|
-
|
945
|
+
66, 0, 0, 0, 0
|
908
946
|
]
|
909
947
|
|
910
948
|
class << self
|
@@ -925,12 +963,14 @@ self._re_scanner_from_state_actions = [
|
|
925
963
|
0, 0, 0, 0, 0, 0, 0, 0,
|
926
964
|
0, 0, 0, 0, 0, 0, 0, 0,
|
927
965
|
0, 0, 0, 0, 0, 0, 0, 0,
|
928
|
-
32, 0, 0, 0, 0, 0, 0, 0,
|
929
966
|
0, 0, 0, 0, 0, 0, 0, 0,
|
930
|
-
0,
|
931
|
-
0, 0,
|
967
|
+
0, 0, 0, 0, 0, 0, 0, 33,
|
968
|
+
0, 0, 0, 0, 0, 0, 0, 0,
|
932
969
|
0, 0, 0, 0, 0, 0, 0, 0,
|
933
|
-
0,
|
970
|
+
33, 33, 33, 0, 0, 0, 0, 0,
|
971
|
+
0, 33, 33, 0, 0, 0, 0, 0,
|
972
|
+
0, 0, 0, 0, 0, 0, 0, 0,
|
973
|
+
33, 0, 0, 0, 0
|
934
974
|
]
|
935
975
|
|
936
976
|
class << self
|
@@ -941,22 +981,24 @@ self._re_scanner_eof_actions = [
|
|
941
981
|
0, 0, 0, 0, 0, 0, 0, 0,
|
942
982
|
0, 0, 0, 0, 0, 0, 0, 0,
|
943
983
|
0, 0, 0, 0, 0, 0, 0, 0,
|
944
|
-
0,
|
984
|
+
0, 0, 0, 0, 0, 0, 0, 0,
|
985
|
+
0, 0, 0, 0, 0, 0, 0, 0,
|
986
|
+
12, 12, 12, 12, 0, 0, 0, 0,
|
945
987
|
0, 0, 0, 0, 0, 0, 0, 0,
|
946
988
|
0, 0, 0, 0, 0, 0, 0, 0,
|
947
989
|
0, 0, 0, 0, 0, 0, 0, 0,
|
948
990
|
0, 0, 0, 0, 0, 0, 0, 0,
|
949
991
|
0, 0, 0, 0, 0, 0, 0, 0,
|
950
992
|
0, 0, 0, 0, 0, 0, 0, 0,
|
951
|
-
0,
|
952
|
-
|
953
|
-
|
993
|
+
0, 23, 23, 0, 23, 23, 0, 23,
|
994
|
+
23, 23, 23, 23, 23, 23, 23, 23,
|
995
|
+
23, 23, 23, 0, 0, 0, 0, 0,
|
954
996
|
0, 0, 0, 0, 0, 0, 0, 0,
|
955
997
|
0, 0, 0, 0, 0, 0, 0, 0,
|
956
|
-
0, 0,
|
957
|
-
0, 0,
|
998
|
+
0, 0, 23, 0, 0, 0, 0, 0,
|
999
|
+
0, 0, 23, 0, 0, 0, 0, 0,
|
958
1000
|
0, 0, 0, 0, 0, 0, 0, 0,
|
959
|
-
0, 0, 0, 0, 0
|
1001
|
+
0, 0, 0, 0, 0
|
960
1002
|
]
|
961
1003
|
|
962
1004
|
class << self
|
@@ -966,33 +1008,35 @@ end
|
|
966
1008
|
self._re_scanner_eof_trans = [
|
967
1009
|
0, 1, 1, 1, 5, 5, 5, 5,
|
968
1010
|
1, 12, 12, 12, 12, 12, 12, 12,
|
969
|
-
12, 12, 12, 12, 12, 12,
|
970
|
-
|
971
|
-
|
972
|
-
|
973
|
-
|
974
|
-
|
975
|
-
|
976
|
-
|
977
|
-
|
1011
|
+
12, 12, 12, 12, 12, 12, 12, 12,
|
1012
|
+
12, 12, 12, 12, 12, 12, 12, 12,
|
1013
|
+
12, 12, 12, 12, 12, 41, 41, 41,
|
1014
|
+
0, 0, 0, 0, 50, 50, 53, 55,
|
1015
|
+
55, 55, 55, 55, 55, 55, 55, 55,
|
1016
|
+
55, 55, 55, 55, 55, 55, 55, 55,
|
1017
|
+
55, 55, 55, 55, 55, 55, 55, 55,
|
1018
|
+
55, 55, 55, 55, 55, 55, 55, 55,
|
1019
|
+
55, 55, 55, 55, 55, 55, 55, 55,
|
1020
|
+
55, 55, 55, 55, 55, 55, 55, 105,
|
1021
|
+
105, 0, 0, 111, 0, 0, 116, 0,
|
978
1022
|
0, 0, 0, 0, 0, 0, 0, 0,
|
979
|
-
0, 0, 0,
|
980
|
-
|
981
|
-
|
982
|
-
|
983
|
-
|
984
|
-
|
985
|
-
|
1023
|
+
0, 0, 0, 131, 131, 131, 131, 0,
|
1024
|
+
156, 156, 157, 157, 156, 158, 160, 162,
|
1025
|
+
162, 169, 170, 172, 174, 176, 181, 183,
|
1026
|
+
0, 0, 0, 197, 197, 197, 197, 200,
|
1027
|
+
203, 0, 0, 222, 222, 222, 224, 226,
|
1028
|
+
228, 228, 228, 232, 232, 232, 232, 237,
|
1029
|
+
0, 244, 244, 244, 244
|
986
1030
|
]
|
987
1031
|
|
988
1032
|
class << self
|
989
1033
|
attr_accessor :re_scanner_start
|
990
1034
|
end
|
991
|
-
self.re_scanner_start =
|
1035
|
+
self.re_scanner_start = 119;
|
992
1036
|
class << self
|
993
1037
|
attr_accessor :re_scanner_first_final
|
994
1038
|
end
|
995
|
-
self.re_scanner_first_final =
|
1039
|
+
self.re_scanner_first_final = 119;
|
996
1040
|
class << self
|
997
1041
|
attr_accessor :re_scanner_error
|
998
1042
|
end
|
@@ -1001,36 +1045,36 @@ self.re_scanner_error = 0;
|
|
1001
1045
|
class << self
|
1002
1046
|
attr_accessor :re_scanner_en_char_type
|
1003
1047
|
end
|
1004
|
-
self.re_scanner_en_char_type =
|
1048
|
+
self.re_scanner_en_char_type = 136;
|
1005
1049
|
class << self
|
1006
1050
|
attr_accessor :re_scanner_en_unicode_property
|
1007
1051
|
end
|
1008
|
-
self.re_scanner_en_unicode_property =
|
1052
|
+
self.re_scanner_en_unicode_property = 137;
|
1009
1053
|
class << self
|
1010
1054
|
attr_accessor :re_scanner_en_character_set
|
1011
1055
|
end
|
1012
|
-
self.re_scanner_en_character_set =
|
1056
|
+
self.re_scanner_en_character_set = 138;
|
1013
1057
|
class << self
|
1014
1058
|
attr_accessor :re_scanner_en_set_escape_sequence
|
1015
1059
|
end
|
1016
|
-
self.re_scanner_en_set_escape_sequence =
|
1060
|
+
self.re_scanner_en_set_escape_sequence = 145;
|
1017
1061
|
class << self
|
1018
1062
|
attr_accessor :re_scanner_en_escape_sequence
|
1019
1063
|
end
|
1020
|
-
self.re_scanner_en_escape_sequence =
|
1064
|
+
self.re_scanner_en_escape_sequence = 146;
|
1021
1065
|
class << self
|
1022
1066
|
attr_accessor :re_scanner_en_conditional_expression
|
1023
1067
|
end
|
1024
|
-
self.re_scanner_en_conditional_expression =
|
1068
|
+
self.re_scanner_en_conditional_expression = 160;
|
1025
1069
|
class << self
|
1026
1070
|
attr_accessor :re_scanner_en_main
|
1027
1071
|
end
|
1028
|
-
self.re_scanner_en_main =
|
1072
|
+
self.re_scanner_en_main = 119;
|
1029
1073
|
|
1030
1074
|
|
1031
|
-
# line
|
1075
|
+
# line 739 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
|
1032
1076
|
|
1033
|
-
# line
|
1077
|
+
# line 1077 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner.rb"
|
1034
1078
|
begin
|
1035
1079
|
p ||= 0
|
1036
1080
|
pe ||= data.length
|
@@ -1041,9 +1085,9 @@ begin
|
|
1041
1085
|
act = 0
|
1042
1086
|
end
|
1043
1087
|
|
1044
|
-
# line
|
1088
|
+
# line 740 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
|
1045
1089
|
|
1046
|
-
# line
|
1090
|
+
# line 1090 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner.rb"
|
1047
1091
|
begin
|
1048
1092
|
testEof = false
|
1049
1093
|
_slen, _trans, _keys, _inds, _acts, _nacts = nil
|
@@ -1066,12 +1110,12 @@ begin
|
|
1066
1110
|
end
|
1067
1111
|
if _goto_level <= _resume
|
1068
1112
|
case _re_scanner_from_state_actions[cs]
|
1069
|
-
when
|
1113
|
+
when 33 then
|
1070
1114
|
# line 1 "NONE"
|
1071
1115
|
begin
|
1072
1116
|
ts = p
|
1073
1117
|
end
|
1074
|
-
# line
|
1118
|
+
# line 1118 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner.rb"
|
1075
1119
|
end
|
1076
1120
|
_keys = cs << 1
|
1077
1121
|
_inds = _re_scanner_index_offsets[cs]
|
@@ -1090,20 +1134,20 @@ ts = p
|
|
1090
1134
|
cs = _re_scanner_trans_targs[_trans]
|
1091
1135
|
if _re_scanner_trans_actions[_trans] != 0
|
1092
1136
|
case _re_scanner_trans_actions[_trans]
|
1093
|
-
when
|
1094
|
-
# line
|
1137
|
+
when 35 then
|
1138
|
+
# line 159 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
|
1095
1139
|
begin
|
1096
1140
|
self.group_depth = group_depth + 1 end
|
1097
1141
|
when 4 then
|
1098
|
-
# line
|
1142
|
+
# line 160 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
|
1099
1143
|
begin
|
1100
1144
|
self.group_depth = group_depth - 1 end
|
1101
|
-
when
|
1145
|
+
when 39 then
|
1102
1146
|
# line 1 "NONE"
|
1103
1147
|
begin
|
1104
1148
|
te = p+1
|
1105
1149
|
end
|
1106
|
-
when
|
1150
|
+
when 67 then
|
1107
1151
|
# line 12 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/char_type.rl"
|
1108
1152
|
begin
|
1109
1153
|
te = p+1
|
@@ -1129,7 +1173,7 @@ te = p+1
|
|
1129
1173
|
|
1130
1174
|
end
|
1131
1175
|
end
|
1132
|
-
when
|
1176
|
+
when 13 then
|
1133
1177
|
# line 16 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/property.rl"
|
1134
1178
|
begin
|
1135
1179
|
te = p+1
|
@@ -1153,8 +1197,8 @@ te = p+1
|
|
1153
1197
|
|
1154
1198
|
end
|
1155
1199
|
end
|
1156
|
-
when
|
1157
|
-
# line
|
1200
|
+
when 17 then
|
1201
|
+
# line 187 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
|
1158
1202
|
begin
|
1159
1203
|
te = p+1
|
1160
1204
|
begin # special case, emits two tokens
|
@@ -1162,8 +1206,8 @@ te = p+1
|
|
1162
1206
|
emit(:set, :intersection, '&&')
|
1163
1207
|
end
|
1164
1208
|
end
|
1165
|
-
when
|
1166
|
-
# line
|
1209
|
+
when 72 then
|
1210
|
+
# line 192 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
|
1167
1211
|
begin
|
1168
1212
|
te = p+1
|
1169
1213
|
begin
|
@@ -1175,39 +1219,39 @@ te = p+1
|
|
1175
1219
|
end
|
1176
1220
|
end
|
1177
1221
|
end
|
1178
|
-
when
|
1179
|
-
# line
|
1222
|
+
when 74 then
|
1223
|
+
# line 213 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
|
1180
1224
|
begin
|
1181
1225
|
te = p+1
|
1182
1226
|
begin
|
1183
1227
|
emit(:set, :intersection, copy(data, ts, te))
|
1184
1228
|
end
|
1185
1229
|
end
|
1186
|
-
when
|
1187
|
-
# line
|
1230
|
+
when 70 then
|
1231
|
+
# line 217 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
|
1188
1232
|
begin
|
1189
1233
|
te = p+1
|
1190
1234
|
begin
|
1191
1235
|
begin
|
1192
1236
|
stack[top] = cs
|
1193
1237
|
top+= 1
|
1194
|
-
cs =
|
1238
|
+
cs = 145
|
1195
1239
|
_goto_level = _again
|
1196
1240
|
next
|
1197
1241
|
end
|
1198
1242
|
|
1199
1243
|
end
|
1200
1244
|
end
|
1201
|
-
when
|
1202
|
-
# line
|
1245
|
+
when 68 then
|
1246
|
+
# line 247 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
|
1203
1247
|
begin
|
1204
1248
|
te = p+1
|
1205
1249
|
begin
|
1206
1250
|
emit(:literal, :literal, copy(data, ts, te))
|
1207
1251
|
end
|
1208
1252
|
end
|
1209
|
-
when
|
1210
|
-
# line
|
1253
|
+
when 15 then
|
1254
|
+
# line 251 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
|
1211
1255
|
begin
|
1212
1256
|
te = p+1
|
1213
1257
|
begin
|
@@ -1215,8 +1259,8 @@ te = p+1
|
|
1215
1259
|
emit(:literal, :literal, text)
|
1216
1260
|
end
|
1217
1261
|
end
|
1218
|
-
when
|
1219
|
-
# line
|
1262
|
+
when 75 then
|
1263
|
+
# line 201 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
|
1220
1264
|
begin
|
1221
1265
|
te = p
|
1222
1266
|
p = p - 1; begin
|
@@ -1229,8 +1273,8 @@ p = p - 1; begin
|
|
1229
1273
|
end
|
1230
1274
|
end
|
1231
1275
|
end
|
1232
|
-
when
|
1233
|
-
# line
|
1276
|
+
when 78 then
|
1277
|
+
# line 221 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
|
1234
1278
|
begin
|
1235
1279
|
te = p
|
1236
1280
|
p = p - 1; begin
|
@@ -1238,15 +1282,15 @@ p = p - 1; begin
|
|
1238
1282
|
begin
|
1239
1283
|
stack[top] = cs
|
1240
1284
|
top+= 1
|
1241
|
-
cs =
|
1285
|
+
cs = 138
|
1242
1286
|
_goto_level = _again
|
1243
1287
|
next
|
1244
1288
|
end
|
1245
1289
|
|
1246
1290
|
end
|
1247
1291
|
end
|
1248
|
-
when
|
1249
|
-
# line
|
1292
|
+
when 73 then
|
1293
|
+
# line 251 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
|
1250
1294
|
begin
|
1251
1295
|
te = p
|
1252
1296
|
p = p - 1; begin
|
@@ -1254,8 +1298,8 @@ p = p - 1; begin
|
|
1254
1298
|
emit(:literal, :literal, text)
|
1255
1299
|
end
|
1256
1300
|
end
|
1257
|
-
when
|
1258
|
-
# line
|
1301
|
+
when 16 then
|
1302
|
+
# line 201 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
|
1259
1303
|
begin
|
1260
1304
|
begin p = ((te))-1; end
|
1261
1305
|
begin
|
@@ -1268,8 +1312,8 @@ p = p - 1; begin
|
|
1268
1312
|
end
|
1269
1313
|
end
|
1270
1314
|
end
|
1271
|
-
when
|
1272
|
-
# line
|
1315
|
+
when 19 then
|
1316
|
+
# line 221 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
|
1273
1317
|
begin
|
1274
1318
|
begin p = ((te))-1; end
|
1275
1319
|
begin
|
@@ -1277,15 +1321,15 @@ p = p - 1; begin
|
|
1277
1321
|
begin
|
1278
1322
|
stack[top] = cs
|
1279
1323
|
top+= 1
|
1280
|
-
cs =
|
1324
|
+
cs = 138
|
1281
1325
|
_goto_level = _again
|
1282
1326
|
next
|
1283
1327
|
end
|
1284
1328
|
|
1285
1329
|
end
|
1286
1330
|
end
|
1287
|
-
when
|
1288
|
-
# line
|
1331
|
+
when 14 then
|
1332
|
+
# line 251 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
|
1289
1333
|
begin
|
1290
1334
|
begin p = ((te))-1; end
|
1291
1335
|
begin
|
@@ -1293,40 +1337,40 @@ p = p - 1; begin
|
|
1293
1337
|
emit(:literal, :literal, text)
|
1294
1338
|
end
|
1295
1339
|
end
|
1296
|
-
when
|
1297
|
-
# line
|
1340
|
+
when 80 then
|
1341
|
+
# line 260 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
|
1298
1342
|
begin
|
1299
1343
|
te = p+1
|
1300
1344
|
begin
|
1301
|
-
|
1345
|
+
p = p - 1;
|
1346
|
+
cs = 138;
|
1302
1347
|
begin
|
1303
|
-
top
|
1304
|
-
|
1348
|
+
stack[top] = cs
|
1349
|
+
top+= 1
|
1350
|
+
cs = 146
|
1305
1351
|
_goto_level = _again
|
1306
1352
|
next
|
1307
1353
|
end
|
1308
1354
|
|
1309
1355
|
end
|
1310
1356
|
end
|
1311
|
-
when
|
1312
|
-
# line
|
1357
|
+
when 79 then
|
1358
|
+
# line 266 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
|
1313
1359
|
begin
|
1314
1360
|
te = p+1
|
1315
1361
|
begin
|
1316
|
-
|
1317
|
-
cs = 123;
|
1362
|
+
emit(:escape, :literal, copy(data, ts-1, te))
|
1318
1363
|
begin
|
1319
|
-
|
1320
|
-
top
|
1321
|
-
cs = 131
|
1364
|
+
top -= 1
|
1365
|
+
cs = stack[top]
|
1322
1366
|
_goto_level = _again
|
1323
1367
|
next
|
1324
1368
|
end
|
1325
1369
|
|
1326
1370
|
end
|
1327
1371
|
end
|
1328
|
-
when
|
1329
|
-
# line
|
1372
|
+
when 84 then
|
1373
|
+
# line 276 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
|
1330
1374
|
begin
|
1331
1375
|
te = p+1
|
1332
1376
|
begin
|
@@ -1341,8 +1385,8 @@ te = p+1
|
|
1341
1385
|
|
1342
1386
|
end
|
1343
1387
|
end
|
1344
|
-
when
|
1345
|
-
# line
|
1388
|
+
when 91 then
|
1389
|
+
# line 282 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
|
1346
1390
|
begin
|
1347
1391
|
te = p+1
|
1348
1392
|
begin
|
@@ -1356,8 +1400,8 @@ te = p+1
|
|
1356
1400
|
|
1357
1401
|
end
|
1358
1402
|
end
|
1359
|
-
when
|
1360
|
-
# line
|
1403
|
+
when 81 then
|
1404
|
+
# line 287 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
|
1361
1405
|
begin
|
1362
1406
|
te = p+1
|
1363
1407
|
begin
|
@@ -1387,8 +1431,8 @@ te = p+1
|
|
1387
1431
|
|
1388
1432
|
end
|
1389
1433
|
end
|
1390
|
-
when
|
1391
|
-
# line
|
1434
|
+
when 87 then
|
1435
|
+
# line 308 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
|
1392
1436
|
begin
|
1393
1437
|
te = p+1
|
1394
1438
|
begin
|
@@ -1413,8 +1457,8 @@ te = p+1
|
|
1413
1457
|
|
1414
1458
|
end
|
1415
1459
|
end
|
1416
|
-
when
|
1417
|
-
# line
|
1460
|
+
when 28 then
|
1461
|
+
# line 324 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
|
1418
1462
|
begin
|
1419
1463
|
te = p+1
|
1420
1464
|
begin
|
@@ -1433,8 +1477,8 @@ te = p+1
|
|
1433
1477
|
|
1434
1478
|
end
|
1435
1479
|
end
|
1436
|
-
when
|
1437
|
-
# line
|
1480
|
+
when 97 then
|
1481
|
+
# line 334 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
|
1438
1482
|
begin
|
1439
1483
|
te = p+1
|
1440
1484
|
begin
|
@@ -1448,8 +1492,8 @@ te = p+1
|
|
1448
1492
|
|
1449
1493
|
end
|
1450
1494
|
end
|
1451
|
-
when
|
1452
|
-
# line
|
1495
|
+
when 24 then
|
1496
|
+
# line 343 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
|
1453
1497
|
begin
|
1454
1498
|
te = p+1
|
1455
1499
|
begin
|
@@ -1463,8 +1507,8 @@ te = p+1
|
|
1463
1507
|
|
1464
1508
|
end
|
1465
1509
|
end
|
1466
|
-
when
|
1467
|
-
# line
|
1510
|
+
when 26 then
|
1511
|
+
# line 348 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
|
1468
1512
|
begin
|
1469
1513
|
te = p+1
|
1470
1514
|
begin
|
@@ -1478,42 +1522,42 @@ te = p+1
|
|
1478
1522
|
|
1479
1523
|
end
|
1480
1524
|
end
|
1481
|
-
when
|
1482
|
-
# line
|
1525
|
+
when 85 then
|
1526
|
+
# line 353 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
|
1483
1527
|
begin
|
1484
1528
|
te = p+1
|
1485
1529
|
begin
|
1486
1530
|
p = p - 1;
|
1487
|
-
cs = ((in_set? ?
|
1531
|
+
cs = ((in_set? ? 138 : 119));
|
1488
1532
|
begin
|
1489
1533
|
stack[top] = cs
|
1490
1534
|
top+= 1
|
1491
|
-
cs =
|
1535
|
+
cs = 136
|
1492
1536
|
_goto_level = _again
|
1493
1537
|
next
|
1494
1538
|
end
|
1495
1539
|
|
1496
1540
|
end
|
1497
1541
|
end
|
1498
|
-
when
|
1499
|
-
# line
|
1542
|
+
when 86 then
|
1543
|
+
# line 359 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
|
1500
1544
|
begin
|
1501
1545
|
te = p+1
|
1502
1546
|
begin
|
1503
1547
|
p = p - 1;
|
1504
|
-
cs = ((in_set? ?
|
1548
|
+
cs = ((in_set? ? 138 : 119));
|
1505
1549
|
begin
|
1506
1550
|
stack[top] = cs
|
1507
1551
|
top+= 1
|
1508
|
-
cs =
|
1552
|
+
cs = 137
|
1509
1553
|
_goto_level = _again
|
1510
1554
|
next
|
1511
1555
|
end
|
1512
1556
|
|
1513
1557
|
end
|
1514
1558
|
end
|
1515
|
-
when
|
1516
|
-
# line
|
1559
|
+
when 22 then
|
1560
|
+
# line 365 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
|
1517
1561
|
begin
|
1518
1562
|
te = p+1
|
1519
1563
|
begin
|
@@ -1527,8 +1571,8 @@ te = p+1
|
|
1527
1571
|
|
1528
1572
|
end
|
1529
1573
|
end
|
1530
|
-
when
|
1531
|
-
# line
|
1574
|
+
when 90 then
|
1575
|
+
# line 282 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
|
1532
1576
|
begin
|
1533
1577
|
te = p
|
1534
1578
|
p = p - 1; begin
|
@@ -1542,8 +1586,8 @@ p = p - 1; begin
|
|
1542
1586
|
|
1543
1587
|
end
|
1544
1588
|
end
|
1545
|
-
when
|
1546
|
-
# line
|
1589
|
+
when 96 then
|
1590
|
+
# line 334 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
|
1547
1591
|
begin
|
1548
1592
|
te = p
|
1549
1593
|
p = p - 1; begin
|
@@ -1557,8 +1601,8 @@ p = p - 1; begin
|
|
1557
1601
|
|
1558
1602
|
end
|
1559
1603
|
end
|
1560
|
-
when
|
1561
|
-
# line
|
1604
|
+
when 93 then
|
1605
|
+
# line 343 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
|
1562
1606
|
begin
|
1563
1607
|
te = p
|
1564
1608
|
p = p - 1; begin
|
@@ -1572,8 +1616,8 @@ p = p - 1; begin
|
|
1572
1616
|
|
1573
1617
|
end
|
1574
1618
|
end
|
1575
|
-
when
|
1576
|
-
# line
|
1619
|
+
when 95 then
|
1620
|
+
# line 348 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
|
1577
1621
|
begin
|
1578
1622
|
te = p
|
1579
1623
|
p = p - 1; begin
|
@@ -1587,8 +1631,8 @@ p = p - 1; begin
|
|
1587
1631
|
|
1588
1632
|
end
|
1589
1633
|
end
|
1590
|
-
when
|
1591
|
-
# line
|
1634
|
+
when 88 then
|
1635
|
+
# line 365 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
|
1592
1636
|
begin
|
1593
1637
|
te = p
|
1594
1638
|
p = p - 1; begin
|
@@ -1602,8 +1646,8 @@ p = p - 1; begin
|
|
1602
1646
|
|
1603
1647
|
end
|
1604
1648
|
end
|
1605
|
-
when
|
1606
|
-
# line
|
1649
|
+
when 21 then
|
1650
|
+
# line 365 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
|
1607
1651
|
begin
|
1608
1652
|
begin p = ((te))-1; end
|
1609
1653
|
begin
|
@@ -1617,7 +1661,7 @@ p = p - 1; begin
|
|
1617
1661
|
|
1618
1662
|
end
|
1619
1663
|
end
|
1620
|
-
when
|
1664
|
+
when 89 then
|
1621
1665
|
# line 1 "NONE"
|
1622
1666
|
begin
|
1623
1667
|
case act
|
@@ -1648,8 +1692,8 @@ p = p - 1; begin
|
|
1648
1692
|
end
|
1649
1693
|
end
|
1650
1694
|
end
|
1651
|
-
when
|
1652
|
-
# line
|
1695
|
+
when 31 then
|
1696
|
+
# line 375 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
|
1653
1697
|
begin
|
1654
1698
|
te = p+1
|
1655
1699
|
begin
|
@@ -1658,8 +1702,8 @@ te = p+1
|
|
1658
1702
|
emit(:conditional, :condition_close, ')')
|
1659
1703
|
end
|
1660
1704
|
end
|
1661
|
-
when
|
1662
|
-
# line
|
1705
|
+
when 98 then
|
1706
|
+
# line 381 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
|
1663
1707
|
begin
|
1664
1708
|
te = p+1
|
1665
1709
|
begin
|
@@ -1667,15 +1711,15 @@ te = p+1
|
|
1667
1711
|
begin
|
1668
1712
|
stack[top] = cs
|
1669
1713
|
top+= 1
|
1670
|
-
cs =
|
1714
|
+
cs = 119
|
1671
1715
|
_goto_level = _again
|
1672
1716
|
next
|
1673
1717
|
end
|
1674
1718
|
|
1675
1719
|
end
|
1676
1720
|
end
|
1677
|
-
when
|
1678
|
-
# line
|
1721
|
+
when 99 then
|
1722
|
+
# line 381 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
|
1679
1723
|
begin
|
1680
1724
|
te = p
|
1681
1725
|
p = p - 1; begin
|
@@ -1683,15 +1727,15 @@ p = p - 1; begin
|
|
1683
1727
|
begin
|
1684
1728
|
stack[top] = cs
|
1685
1729
|
top+= 1
|
1686
|
-
cs =
|
1730
|
+
cs = 119
|
1687
1731
|
_goto_level = _again
|
1688
1732
|
next
|
1689
1733
|
end
|
1690
1734
|
|
1691
1735
|
end
|
1692
1736
|
end
|
1693
|
-
when
|
1694
|
-
# line
|
1737
|
+
when 30 then
|
1738
|
+
# line 381 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
|
1695
1739
|
begin
|
1696
1740
|
begin p = ((te))-1; end
|
1697
1741
|
begin
|
@@ -1699,23 +1743,23 @@ p = p - 1; begin
|
|
1699
1743
|
begin
|
1700
1744
|
stack[top] = cs
|
1701
1745
|
top+= 1
|
1702
|
-
cs =
|
1746
|
+
cs = 119
|
1703
1747
|
_goto_level = _again
|
1704
1748
|
next
|
1705
1749
|
end
|
1706
1750
|
|
1707
1751
|
end
|
1708
1752
|
end
|
1709
|
-
when
|
1710
|
-
# line
|
1753
|
+
when 37 then
|
1754
|
+
# line 394 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
|
1711
1755
|
begin
|
1712
1756
|
te = p+1
|
1713
1757
|
begin
|
1714
1758
|
emit(:meta, :dot, copy(data, ts, te))
|
1715
1759
|
end
|
1716
1760
|
end
|
1717
|
-
when
|
1718
|
-
# line
|
1761
|
+
when 42 then
|
1762
|
+
# line 398 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
|
1719
1763
|
begin
|
1720
1764
|
te = p+1
|
1721
1765
|
begin
|
@@ -1726,32 +1770,32 @@ te = p+1
|
|
1726
1770
|
end
|
1727
1771
|
end
|
1728
1772
|
end
|
1729
|
-
when
|
1730
|
-
# line
|
1773
|
+
when 41 then
|
1774
|
+
# line 408 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
|
1731
1775
|
begin
|
1732
1776
|
te = p+1
|
1733
1777
|
begin
|
1734
1778
|
emit(:anchor, :bol, copy(data, ts, te))
|
1735
1779
|
end
|
1736
1780
|
end
|
1737
|
-
when
|
1738
|
-
# line
|
1781
|
+
when 34 then
|
1782
|
+
# line 412 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
|
1739
1783
|
begin
|
1740
1784
|
te = p+1
|
1741
1785
|
begin
|
1742
1786
|
emit(:anchor, :eol, copy(data, ts, te))
|
1743
1787
|
end
|
1744
1788
|
end
|
1745
|
-
when
|
1746
|
-
# line
|
1789
|
+
when 62 then
|
1790
|
+
# line 416 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
|
1747
1791
|
begin
|
1748
1792
|
te = p+1
|
1749
1793
|
begin
|
1750
1794
|
emit(:keep, :mark, copy(data, ts, te))
|
1751
1795
|
end
|
1752
1796
|
end
|
1753
|
-
when
|
1754
|
-
# line
|
1797
|
+
when 61 then
|
1798
|
+
# line 420 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
|
1755
1799
|
begin
|
1756
1800
|
te = p+1
|
1757
1801
|
begin
|
@@ -1765,16 +1809,16 @@ te = p+1
|
|
1765
1809
|
end
|
1766
1810
|
end
|
1767
1811
|
end
|
1768
|
-
when
|
1769
|
-
# line
|
1812
|
+
when 40 then
|
1813
|
+
# line 431 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
|
1770
1814
|
begin
|
1771
1815
|
te = p+1
|
1772
1816
|
begin
|
1773
1817
|
append_literal(data, ts, te)
|
1774
1818
|
end
|
1775
1819
|
end
|
1776
|
-
when
|
1777
|
-
# line
|
1820
|
+
when 51 then
|
1821
|
+
# line 446 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
|
1778
1822
|
begin
|
1779
1823
|
te = p+1
|
1780
1824
|
begin
|
@@ -1787,15 +1831,15 @@ te = p+1
|
|
1787
1831
|
begin
|
1788
1832
|
stack[top] = cs
|
1789
1833
|
top+= 1
|
1790
|
-
cs =
|
1834
|
+
cs = 160
|
1791
1835
|
_goto_level = _again
|
1792
1836
|
next
|
1793
1837
|
end
|
1794
1838
|
|
1795
1839
|
end
|
1796
1840
|
end
|
1797
|
-
when
|
1798
|
-
# line
|
1841
|
+
when 52 then
|
1842
|
+
# line 477 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
|
1799
1843
|
begin
|
1800
1844
|
te = p+1
|
1801
1845
|
begin
|
@@ -1806,8 +1850,8 @@ te = p+1
|
|
1806
1850
|
emit_options(text)
|
1807
1851
|
end
|
1808
1852
|
end
|
1809
|
-
when
|
1810
|
-
# line
|
1853
|
+
when 50 then
|
1854
|
+
# line 491 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
|
1811
1855
|
begin
|
1812
1856
|
te = p+1
|
1813
1857
|
begin
|
@@ -1820,7 +1864,7 @@ te = p+1
|
|
1820
1864
|
end
|
1821
1865
|
end
|
1822
1866
|
when 6 then
|
1823
|
-
# line
|
1867
|
+
# line 508 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
|
1824
1868
|
begin
|
1825
1869
|
te = p+1
|
1826
1870
|
begin
|
@@ -1839,78 +1883,48 @@ te = p+1
|
|
1839
1883
|
emit(:group, :named_sq, text)
|
1840
1884
|
|
1841
1885
|
end
|
1886
|
+
end
|
1887
|
+
end
|
1888
|
+
when 10 then
|
1889
|
+
# line 549 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
|
1890
|
+
begin
|
1891
|
+
te = p+1
|
1892
|
+
begin
|
1893
|
+
case text = copy(data, ts, te)
|
1894
|
+
when /^\\k(<>|'')/
|
1895
|
+
validation_error(:backref, 'backreference', 'ref ID is empty')
|
1896
|
+
when /^\\k(.)[^\p{digit}\-][^+\-]*\D$/
|
1897
|
+
emit(:backref, $1 == '<' ? :name_ref_ab : :name_ref_sq, text)
|
1898
|
+
when /^\\k(.)\d+\D$/
|
1899
|
+
emit(:backref, $1 == '<' ? :number_ref_ab : :number_ref_sq, text)
|
1900
|
+
when /^\\k(.)-\d+\D$/
|
1901
|
+
emit(:backref, $1 == '<' ? :number_rel_ref_ab : :number_rel_ref_sq, text)
|
1902
|
+
when /^\\k(.)[^\p{digit}\-].*[+\-]\d+\D$/
|
1903
|
+
emit(:backref, $1 == '<' ? :name_recursion_ref_ab : :name_recursion_ref_sq, text)
|
1904
|
+
when /^\\k(.)-?\d+[+\-]\d+\D$/
|
1905
|
+
emit(:backref, $1 == '<' ? :number_recursion_ref_ab : :number_recursion_ref_sq, text)
|
1906
|
+
end
|
1842
1907
|
end
|
1843
1908
|
end
|
1844
1909
|
when 9 then
|
1845
|
-
# line
|
1910
|
+
# line 568 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
|
1846
1911
|
begin
|
1847
1912
|
te = p+1
|
1848
1913
|
begin
|
1849
1914
|
case text = copy(data, ts, te)
|
1850
|
-
when /^\\(
|
1851
|
-
validation_error(:backref, '
|
1852
|
-
|
1853
|
-
|
1854
|
-
|
1855
|
-
|
1856
|
-
|
1857
|
-
|
1858
|
-
else
|
1859
|
-
emit(:backref, :name_call_ab, text)
|
1860
|
-
end
|
1861
|
-
|
1862
|
-
when /^\\([gk])'[^\p{digit}+\-'][^'+\-]*'/ # single quotes
|
1863
|
-
if $1 == 'k'
|
1864
|
-
emit(:backref, :name_ref_sq, text)
|
1865
|
-
else
|
1866
|
-
emit(:backref, :name_call_sq, text)
|
1867
|
-
end
|
1868
|
-
|
1869
|
-
when /^\\([gk])<\d+>/ # angle-brackets
|
1870
|
-
if $1 == 'k'
|
1871
|
-
emit(:backref, :number_ref_ab, text)
|
1872
|
-
else
|
1873
|
-
emit(:backref, :number_call_ab, text)
|
1874
|
-
end
|
1875
|
-
|
1876
|
-
when /^\\([gk])'\d+'/ # single quotes
|
1877
|
-
if $1 == 'k'
|
1878
|
-
emit(:backref, :number_ref_sq, text)
|
1879
|
-
else
|
1880
|
-
emit(:backref, :number_call_sq, text)
|
1881
|
-
end
|
1882
|
-
|
1883
|
-
when /^\\(?:g<\+|g<-|(k)<-)\d+>/ # angle-brackets
|
1884
|
-
if $1 == 'k'
|
1885
|
-
emit(:backref, :number_rel_ref_ab, text)
|
1886
|
-
else
|
1887
|
-
emit(:backref, :number_rel_call_ab, text)
|
1888
|
-
end
|
1889
|
-
|
1890
|
-
when /^\\(?:g'\+|g'-|(k)'-)\d+'/ # single quotes
|
1891
|
-
if $1 == 'k'
|
1892
|
-
emit(:backref, :number_rel_ref_sq, text)
|
1893
|
-
else
|
1894
|
-
emit(:backref, :number_rel_call_sq, text)
|
1895
|
-
end
|
1896
|
-
|
1897
|
-
when /^\\k<[^\p{digit}+\->][^>]*[+\-]\d+>/ # angle-brackets
|
1898
|
-
emit(:backref, :name_recursion_ref_ab, text)
|
1899
|
-
|
1900
|
-
when /^\\k'[^\p{digit}+\-'][^']*[+\-]\d+'/ # single-quotes
|
1901
|
-
emit(:backref, :name_recursion_ref_sq, text)
|
1902
|
-
|
1903
|
-
when /^\\([gk])<[+\-]?\d+[+\-]\d+>/ # angle-brackets
|
1904
|
-
emit(:backref, :number_recursion_ref_ab, text)
|
1905
|
-
|
1906
|
-
when /^\\([gk])'[+\-]?\d+[+\-]\d+'/ # single-quotes
|
1907
|
-
emit(:backref, :number_recursion_ref_sq, text)
|
1908
|
-
|
1915
|
+
when /^\\g(<>|'')/
|
1916
|
+
validation_error(:backref, 'subexpression call', 'ref ID is empty')
|
1917
|
+
when /^\\g(.)[^\p{digit}+\->][^+\-]*/
|
1918
|
+
emit(:backref, $1 == '<' ? :name_call_ab : :name_call_sq, text)
|
1919
|
+
when /^\\g(.)\d+\D$/
|
1920
|
+
emit(:backref, $1 == '<' ? :number_call_ab : :number_call_sq, text)
|
1921
|
+
when /^\\g(.)[+-]\d+/
|
1922
|
+
emit(:backref, $1 == '<' ? :number_rel_call_ab : :number_rel_call_sq, text)
|
1909
1923
|
end
|
1910
1924
|
end
|
1911
1925
|
end
|
1912
|
-
when
|
1913
|
-
# line
|
1926
|
+
when 59 then
|
1927
|
+
# line 584 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
|
1914
1928
|
begin
|
1915
1929
|
te = p+1
|
1916
1930
|
begin
|
@@ -1921,8 +1935,8 @@ te = p+1
|
|
1921
1935
|
end
|
1922
1936
|
end
|
1923
1937
|
end
|
1924
|
-
when
|
1925
|
-
# line
|
1938
|
+
when 55 then
|
1939
|
+
# line 592 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
|
1926
1940
|
begin
|
1927
1941
|
te = p+1
|
1928
1942
|
begin
|
@@ -1933,8 +1947,8 @@ te = p+1
|
|
1933
1947
|
end
|
1934
1948
|
end
|
1935
1949
|
end
|
1936
|
-
when
|
1937
|
-
# line
|
1950
|
+
when 57 then
|
1951
|
+
# line 600 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
|
1938
1952
|
begin
|
1939
1953
|
te = p+1
|
1940
1954
|
begin
|
@@ -1945,16 +1959,16 @@ te = p+1
|
|
1945
1959
|
end
|
1946
1960
|
end
|
1947
1961
|
end
|
1948
|
-
when
|
1949
|
-
# line
|
1962
|
+
when 65 then
|
1963
|
+
# line 608 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
|
1950
1964
|
begin
|
1951
1965
|
te = p+1
|
1952
1966
|
begin
|
1953
1967
|
emit(:quantifier, :interval, copy(data, ts, te))
|
1954
1968
|
end
|
1955
1969
|
end
|
1956
|
-
when
|
1957
|
-
# line
|
1970
|
+
when 46 then
|
1971
|
+
# line 623 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
|
1958
1972
|
begin
|
1959
1973
|
te = p+1
|
1960
1974
|
begin
|
@@ -1968,8 +1982,8 @@ te = p+1
|
|
1968
1982
|
end
|
1969
1983
|
end
|
1970
1984
|
end
|
1971
|
-
when
|
1972
|
-
# line
|
1985
|
+
when 49 then
|
1986
|
+
# line 477 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
|
1973
1987
|
begin
|
1974
1988
|
te = p
|
1975
1989
|
p = p - 1; begin
|
@@ -1980,8 +1994,8 @@ p = p - 1; begin
|
|
1980
1994
|
emit_options(text)
|
1981
1995
|
end
|
1982
1996
|
end
|
1983
|
-
when
|
1984
|
-
# line
|
1997
|
+
when 53 then
|
1998
|
+
# line 491 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
|
1985
1999
|
begin
|
1986
2000
|
te = p
|
1987
2001
|
p = p - 1; begin
|
@@ -1993,8 +2007,8 @@ p = p - 1; begin
|
|
1993
2007
|
end
|
1994
2008
|
end
|
1995
2009
|
end
|
1996
|
-
when
|
1997
|
-
# line
|
2010
|
+
when 47 then
|
2011
|
+
# line 526 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
|
1998
2012
|
begin
|
1999
2013
|
te = p
|
2000
2014
|
p = p - 1; begin
|
@@ -2002,8 +2016,8 @@ p = p - 1; begin
|
|
2002
2016
|
emit(:group, :capture, text)
|
2003
2017
|
end
|
2004
2018
|
end
|
2005
|
-
when
|
2006
|
-
# line
|
2019
|
+
when 58 then
|
2020
|
+
# line 584 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
|
2007
2021
|
begin
|
2008
2022
|
te = p
|
2009
2023
|
p = p - 1; begin
|
@@ -2014,8 +2028,8 @@ p = p - 1; begin
|
|
2014
2028
|
end
|
2015
2029
|
end
|
2016
2030
|
end
|
2017
|
-
when
|
2018
|
-
# line
|
2031
|
+
when 54 then
|
2032
|
+
# line 592 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
|
2019
2033
|
begin
|
2020
2034
|
te = p
|
2021
2035
|
p = p - 1; begin
|
@@ -2026,8 +2040,8 @@ p = p - 1; begin
|
|
2026
2040
|
end
|
2027
2041
|
end
|
2028
2042
|
end
|
2029
|
-
when
|
2030
|
-
# line
|
2043
|
+
when 56 then
|
2044
|
+
# line 600 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
|
2031
2045
|
begin
|
2032
2046
|
te = p
|
2033
2047
|
p = p - 1; begin
|
@@ -2038,39 +2052,39 @@ p = p - 1; begin
|
|
2038
2052
|
end
|
2039
2053
|
end
|
2040
2054
|
end
|
2041
|
-
when
|
2042
|
-
# line
|
2055
|
+
when 64 then
|
2056
|
+
# line 608 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
|
2043
2057
|
begin
|
2044
2058
|
te = p
|
2045
2059
|
p = p - 1; begin
|
2046
2060
|
emit(:quantifier, :interval, copy(data, ts, te))
|
2047
2061
|
end
|
2048
2062
|
end
|
2049
|
-
when
|
2050
|
-
# line
|
2063
|
+
when 63 then
|
2064
|
+
# line 613 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
|
2051
2065
|
begin
|
2052
2066
|
te = p
|
2053
2067
|
p = p - 1; begin
|
2054
2068
|
append_literal(data, ts, te)
|
2055
2069
|
end
|
2056
2070
|
end
|
2057
|
-
when
|
2058
|
-
# line
|
2071
|
+
when 60 then
|
2072
|
+
# line 619 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
|
2059
2073
|
begin
|
2060
2074
|
te = p
|
2061
2075
|
p = p - 1; begin
|
2062
2076
|
begin
|
2063
2077
|
stack[top] = cs
|
2064
2078
|
top+= 1
|
2065
|
-
cs =
|
2079
|
+
cs = 146
|
2066
2080
|
_goto_level = _again
|
2067
2081
|
next
|
2068
2082
|
end
|
2069
2083
|
|
2070
2084
|
end
|
2071
2085
|
end
|
2072
|
-
when
|
2073
|
-
# line
|
2086
|
+
when 45 then
|
2087
|
+
# line 623 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
|
2074
2088
|
begin
|
2075
2089
|
te = p
|
2076
2090
|
p = p - 1; begin
|
@@ -2084,8 +2098,8 @@ p = p - 1; begin
|
|
2084
2098
|
end
|
2085
2099
|
end
|
2086
2100
|
end
|
2087
|
-
when
|
2088
|
-
# line
|
2101
|
+
when 44 then
|
2102
|
+
# line 633 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
|
2089
2103
|
begin
|
2090
2104
|
te = p
|
2091
2105
|
p = p - 1; begin
|
@@ -2096,8 +2110,8 @@ p = p - 1; begin
|
|
2096
2110
|
end
|
2097
2111
|
end
|
2098
2112
|
end
|
2099
|
-
when
|
2100
|
-
# line
|
2113
|
+
when 43 then
|
2114
|
+
# line 644 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
|
2101
2115
|
begin
|
2102
2116
|
te = p
|
2103
2117
|
p = p - 1; begin
|
@@ -2105,7 +2119,7 @@ p = p - 1; begin
|
|
2105
2119
|
end
|
2106
2120
|
end
|
2107
2121
|
when 3 then
|
2108
|
-
# line
|
2122
|
+
# line 477 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
|
2109
2123
|
begin
|
2110
2124
|
begin p = ((te))-1; end
|
2111
2125
|
begin
|
@@ -2116,8 +2130,8 @@ p = p - 1; begin
|
|
2116
2130
|
emit_options(text)
|
2117
2131
|
end
|
2118
2132
|
end
|
2119
|
-
when
|
2120
|
-
# line
|
2133
|
+
when 11 then
|
2134
|
+
# line 613 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
|
2121
2135
|
begin
|
2122
2136
|
begin p = ((te))-1; end
|
2123
2137
|
begin
|
@@ -2125,14 +2139,14 @@ p = p - 1; begin
|
|
2125
2139
|
end
|
2126
2140
|
end
|
2127
2141
|
when 8 then
|
2128
|
-
# line
|
2142
|
+
# line 619 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
|
2129
2143
|
begin
|
2130
2144
|
begin p = ((te))-1; end
|
2131
2145
|
begin
|
2132
2146
|
begin
|
2133
2147
|
stack[top] = cs
|
2134
2148
|
top+= 1
|
2135
|
-
cs =
|
2149
|
+
cs = 146
|
2136
2150
|
_goto_level = _again
|
2137
2151
|
next
|
2138
2152
|
end
|
@@ -2169,21 +2183,21 @@ end
|
|
2169
2183
|
when '(?<!'; emit(:assertion, :nlookbehind, text)
|
2170
2184
|
end
|
2171
2185
|
end
|
2172
|
-
when
|
2186
|
+
when 55 then
|
2173
2187
|
begin begin p = ((te))-1; end
|
2174
2188
|
|
2175
2189
|
append_literal(data, ts, te)
|
2176
2190
|
end
|
2177
2191
|
end
|
2178
2192
|
end
|
2179
|
-
when
|
2180
|
-
# line
|
2193
|
+
when 77 then
|
2194
|
+
# line 147 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
|
2181
2195
|
begin
|
2182
2196
|
|
2183
2197
|
text = copy(data, ts ? ts-1 : 0, -1)
|
2184
2198
|
raise PrematureEndError.new( text )
|
2185
2199
|
end
|
2186
|
-
# line
|
2200
|
+
# line 221 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
|
2187
2201
|
begin
|
2188
2202
|
te = p
|
2189
2203
|
p = p - 1; begin
|
@@ -2191,21 +2205,21 @@ p = p - 1; begin
|
|
2191
2205
|
begin
|
2192
2206
|
stack[top] = cs
|
2193
2207
|
top+= 1
|
2194
|
-
cs =
|
2208
|
+
cs = 138
|
2195
2209
|
_goto_level = _again
|
2196
2210
|
next
|
2197
2211
|
end
|
2198
2212
|
|
2199
2213
|
end
|
2200
2214
|
end
|
2201
|
-
when
|
2202
|
-
# line
|
2215
|
+
when 18 then
|
2216
|
+
# line 147 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
|
2203
2217
|
begin
|
2204
2218
|
|
2205
2219
|
text = copy(data, ts ? ts-1 : 0, -1)
|
2206
2220
|
raise PrematureEndError.new( text )
|
2207
2221
|
end
|
2208
|
-
# line
|
2222
|
+
# line 221 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
|
2209
2223
|
begin
|
2210
2224
|
begin p = ((te))-1; end
|
2211
2225
|
begin
|
@@ -2213,21 +2227,21 @@ p = p - 1; begin
|
|
2213
2227
|
begin
|
2214
2228
|
stack[top] = cs
|
2215
2229
|
top+= 1
|
2216
|
-
cs =
|
2230
|
+
cs = 138
|
2217
2231
|
_goto_level = _again
|
2218
2232
|
next
|
2219
2233
|
end
|
2220
2234
|
|
2221
2235
|
end
|
2222
2236
|
end
|
2223
|
-
when
|
2224
|
-
# line
|
2237
|
+
when 92 then
|
2238
|
+
# line 147 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
|
2225
2239
|
begin
|
2226
2240
|
|
2227
2241
|
text = copy(data, ts ? ts-1 : 0, -1)
|
2228
2242
|
raise PrematureEndError.new( text )
|
2229
2243
|
end
|
2230
|
-
# line
|
2244
|
+
# line 343 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
|
2231
2245
|
begin
|
2232
2246
|
te = p
|
2233
2247
|
p = p - 1; begin
|
@@ -2241,14 +2255,14 @@ p = p - 1; begin
|
|
2241
2255
|
|
2242
2256
|
end
|
2243
2257
|
end
|
2244
|
-
when
|
2245
|
-
# line
|
2258
|
+
when 94 then
|
2259
|
+
# line 147 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
|
2246
2260
|
begin
|
2247
2261
|
|
2248
2262
|
text = copy(data, ts ? ts-1 : 0, -1)
|
2249
2263
|
raise PrematureEndError.new( text )
|
2250
2264
|
end
|
2251
|
-
# line
|
2265
|
+
# line 348 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
|
2252
2266
|
begin
|
2253
2267
|
te = p
|
2254
2268
|
p = p - 1; begin
|
@@ -2262,14 +2276,14 @@ p = p - 1; begin
|
|
2262
2276
|
|
2263
2277
|
end
|
2264
2278
|
end
|
2265
|
-
when
|
2266
|
-
# line
|
2279
|
+
when 25 then
|
2280
|
+
# line 147 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
|
2267
2281
|
begin
|
2268
2282
|
|
2269
2283
|
text = copy(data, ts ? ts-1 : 0, -1)
|
2270
2284
|
raise PrematureEndError.new( text )
|
2271
2285
|
end
|
2272
|
-
# line
|
2286
|
+
# line 343 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
|
2273
2287
|
begin
|
2274
2288
|
begin p = ((te))-1; end
|
2275
2289
|
begin
|
@@ -2283,14 +2297,14 @@ p = p - 1; begin
|
|
2283
2297
|
|
2284
2298
|
end
|
2285
2299
|
end
|
2286
|
-
when
|
2287
|
-
# line
|
2300
|
+
when 27 then
|
2301
|
+
# line 147 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
|
2288
2302
|
begin
|
2289
2303
|
|
2290
2304
|
text = copy(data, ts ? ts-1 : 0, -1)
|
2291
2305
|
raise PrematureEndError.new( text )
|
2292
2306
|
end
|
2293
|
-
# line
|
2307
|
+
# line 348 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
|
2294
2308
|
begin
|
2295
2309
|
begin p = ((te))-1; end
|
2296
2310
|
begin
|
@@ -2304,14 +2318,14 @@ p = p - 1; begin
|
|
2304
2318
|
|
2305
2319
|
end
|
2306
2320
|
end
|
2307
|
-
when
|
2308
|
-
# line
|
2321
|
+
when 29 then
|
2322
|
+
# line 153 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
|
2309
2323
|
begin
|
2310
2324
|
|
2311
2325
|
text = copy(data, ts ? ts-1 : 0, -1)
|
2312
2326
|
validation_error(:sequence, 'sequence', text)
|
2313
2327
|
end
|
2314
|
-
# line
|
2328
|
+
# line 339 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
|
2315
2329
|
begin
|
2316
2330
|
te = p+1
|
2317
2331
|
begin
|
@@ -2325,21 +2339,21 @@ te = p+1
|
|
2325
2339
|
end
|
2326
2340
|
end
|
2327
2341
|
when 5 then
|
2328
|
-
# line
|
2342
|
+
# line 160 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
|
2329
2343
|
begin
|
2330
2344
|
self.group_depth = group_depth - 1 end
|
2331
|
-
# line
|
2345
|
+
# line 462 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
|
2332
2346
|
begin
|
2333
2347
|
te = p+1
|
2334
2348
|
begin
|
2335
2349
|
emit(:group, :comment, copy(data, ts, te))
|
2336
2350
|
end
|
2337
2351
|
end
|
2338
|
-
when
|
2339
|
-
# line
|
2352
|
+
when 36 then
|
2353
|
+
# line 160 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
|
2340
2354
|
begin
|
2341
2355
|
self.group_depth = group_depth - 1 end
|
2342
|
-
# line
|
2356
|
+
# line 531 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
|
2343
2357
|
begin
|
2344
2358
|
te = p+1
|
2345
2359
|
begin
|
@@ -2357,11 +2371,11 @@ te = p+1
|
|
2357
2371
|
end
|
2358
2372
|
end
|
2359
2373
|
end
|
2360
|
-
when
|
2361
|
-
# line
|
2374
|
+
when 38 then
|
2375
|
+
# line 161 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
|
2362
2376
|
begin
|
2363
2377
|
self.set_depth = set_depth + 1 end
|
2364
|
-
# line
|
2378
|
+
# line 437 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
|
2365
2379
|
begin
|
2366
2380
|
te = p+1
|
2367
2381
|
begin
|
@@ -2369,18 +2383,18 @@ te = p+1
|
|
2369
2383
|
begin
|
2370
2384
|
stack[top] = cs
|
2371
2385
|
top+= 1
|
2372
|
-
cs =
|
2386
|
+
cs = 138
|
2373
2387
|
_goto_level = _again
|
2374
2388
|
next
|
2375
2389
|
end
|
2376
2390
|
|
2377
2391
|
end
|
2378
2392
|
end
|
2379
|
-
when
|
2380
|
-
# line
|
2393
|
+
when 71 then
|
2394
|
+
# line 162 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
|
2381
2395
|
begin
|
2382
2396
|
self.set_depth = set_depth - 1 end
|
2383
|
-
# line
|
2397
|
+
# line 168 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
|
2384
2398
|
begin
|
2385
2399
|
te = p+1
|
2386
2400
|
begin
|
@@ -2395,7 +2409,7 @@ te = p+1
|
|
2395
2409
|
|
2396
2410
|
else
|
2397
2411
|
begin
|
2398
|
-
cs =
|
2412
|
+
cs = 119
|
2399
2413
|
_goto_level = _again
|
2400
2414
|
next
|
2401
2415
|
end
|
@@ -2403,11 +2417,11 @@ te = p+1
|
|
2403
2417
|
end
|
2404
2418
|
end
|
2405
2419
|
end
|
2406
|
-
when
|
2407
|
-
# line
|
2420
|
+
when 76 then
|
2421
|
+
# line 162 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
|
2408
2422
|
begin
|
2409
2423
|
self.set_depth = set_depth - 1 end
|
2410
|
-
# line
|
2424
|
+
# line 177 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
|
2411
2425
|
begin
|
2412
2426
|
te = p+1
|
2413
2427
|
begin # special case, emits two tokens
|
@@ -2423,7 +2437,7 @@ te = p+1
|
|
2423
2437
|
|
2424
2438
|
else
|
2425
2439
|
begin
|
2426
|
-
cs =
|
2440
|
+
cs = 119
|
2427
2441
|
_goto_level = _again
|
2428
2442
|
next
|
2429
2443
|
end
|
@@ -2431,11 +2445,11 @@ te = p+1
|
|
2431
2445
|
end
|
2432
2446
|
end
|
2433
2447
|
end
|
2434
|
-
when
|
2435
|
-
# line
|
2448
|
+
when 20 then
|
2449
|
+
# line 162 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
|
2436
2450
|
begin
|
2437
2451
|
self.set_depth = set_depth - 1 end
|
2438
|
-
# line
|
2452
|
+
# line 226 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
|
2439
2453
|
begin
|
2440
2454
|
te = p+1
|
2441
2455
|
begin
|
@@ -2451,28 +2465,28 @@ te = p+1
|
|
2451
2465
|
emit(type, class_name.to_sym, text)
|
2452
2466
|
end
|
2453
2467
|
end
|
2454
|
-
when
|
2468
|
+
when 69 then
|
2455
2469
|
# line 1 "NONE"
|
2456
2470
|
begin
|
2457
2471
|
te = p+1
|
2458
2472
|
end
|
2459
|
-
# line
|
2473
|
+
# line 161 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
|
2460
2474
|
begin
|
2461
2475
|
self.set_depth = set_depth + 1 end
|
2462
|
-
when
|
2476
|
+
when 83 then
|
2463
2477
|
# line 1 "NONE"
|
2464
2478
|
begin
|
2465
2479
|
te = p+1
|
2466
2480
|
end
|
2467
|
-
# line
|
2481
|
+
# line 276 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
|
2468
2482
|
begin
|
2469
2483
|
act = 16; end
|
2470
|
-
when
|
2484
|
+
when 82 then
|
2471
2485
|
# line 1 "NONE"
|
2472
2486
|
begin
|
2473
2487
|
te = p+1
|
2474
2488
|
end
|
2475
|
-
# line
|
2489
|
+
# line 282 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
|
2476
2490
|
begin
|
2477
2491
|
act = 17; end
|
2478
2492
|
when 7 then
|
@@ -2480,7 +2494,7 @@ act = 17; end
|
|
2480
2494
|
begin
|
2481
2495
|
te = p+1
|
2482
2496
|
end
|
2483
|
-
# line
|
2497
|
+
# line 491 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
|
2484
2498
|
begin
|
2485
2499
|
act = 41; end
|
2486
2500
|
when 2 then
|
@@ -2488,34 +2502,34 @@ act = 41; end
|
|
2488
2502
|
begin
|
2489
2503
|
te = p+1
|
2490
2504
|
end
|
2491
|
-
# line
|
2505
|
+
# line 644 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
|
2492
2506
|
begin
|
2493
|
-
act =
|
2494
|
-
when
|
2507
|
+
act = 55; end
|
2508
|
+
when 48 then
|
2495
2509
|
# line 1 "NONE"
|
2496
2510
|
begin
|
2497
2511
|
te = p+1
|
2498
2512
|
end
|
2499
|
-
# line
|
2513
|
+
# line 160 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
|
2500
2514
|
begin
|
2501
2515
|
self.group_depth = group_depth - 1 end
|
2502
|
-
# line
|
2516
|
+
# line 159 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
|
2503
2517
|
begin
|
2504
2518
|
self.group_depth = group_depth + 1 end
|
2505
|
-
# line
|
2519
|
+
# line 477 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
|
2506
2520
|
begin
|
2507
2521
|
act = 40; end
|
2508
|
-
# line
|
2522
|
+
# line 2522 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner.rb"
|
2509
2523
|
end
|
2510
2524
|
end
|
2511
2525
|
end
|
2512
2526
|
if _goto_level <= _again
|
2513
2527
|
case _re_scanner_to_state_actions[cs]
|
2514
|
-
when
|
2528
|
+
when 66 then
|
2515
2529
|
# line 1 "NONE"
|
2516
2530
|
begin
|
2517
2531
|
ts = nil; end
|
2518
|
-
when
|
2532
|
+
when 32 then
|
2519
2533
|
# line 1 "NONE"
|
2520
2534
|
begin
|
2521
2535
|
ts = nil; end
|
@@ -2523,7 +2537,7 @@ ts = nil; end
|
|
2523
2537
|
begin
|
2524
2538
|
act = 0
|
2525
2539
|
end
|
2526
|
-
# line
|
2540
|
+
# line 2540 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner.rb"
|
2527
2541
|
end
|
2528
2542
|
|
2529
2543
|
if cs == 0
|
@@ -2544,20 +2558,20 @@ act = 0
|
|
2544
2558
|
next;
|
2545
2559
|
end
|
2546
2560
|
case _re_scanner_eof_actions[cs]
|
2547
|
-
when
|
2561
|
+
when 12 then
|
2548
2562
|
# line 8 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/property.rl"
|
2549
2563
|
begin
|
2550
2564
|
|
2551
2565
|
raise PrematureEndError.new('unicode property')
|
2552
2566
|
end
|
2553
|
-
when
|
2554
|
-
# line
|
2567
|
+
when 23 then
|
2568
|
+
# line 147 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
|
2555
2569
|
begin
|
2556
2570
|
|
2557
2571
|
text = copy(data, ts ? ts-1 : 0, -1)
|
2558
2572
|
raise PrematureEndError.new( text )
|
2559
2573
|
end
|
2560
|
-
# line
|
2574
|
+
# line 2574 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner.rb"
|
2561
2575
|
end
|
2562
2576
|
end
|
2563
2577
|
|
@@ -2568,7 +2582,7 @@ act = 0
|
|
2568
2582
|
end
|
2569
2583
|
end
|
2570
2584
|
|
2571
|
-
# line
|
2585
|
+
# line 741 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
|
2572
2586
|
|
2573
2587
|
# to avoid "warning: assigned but unused variable - testEof"
|
2574
2588
|
testEof = testEof
|
@@ -2591,14 +2605,13 @@ end
|
|
2591
2605
|
|
2592
2606
|
# lazy-load property maps when first needed
|
2593
2607
|
require 'yaml'
|
2594
|
-
PROP_MAPS_DIR = File.expand_path('../scanner/properties', __FILE__)
|
2595
2608
|
|
2596
2609
|
def self.short_prop_map
|
2597
|
-
@short_prop_map ||= YAML.load_file("#{
|
2610
|
+
@short_prop_map ||= YAML.load_file("#{__dir__}/scanner/properties/short.yml")
|
2598
2611
|
end
|
2599
2612
|
|
2600
2613
|
def self.long_prop_map
|
2601
|
-
@long_prop_map ||= YAML.load_file("#{
|
2614
|
+
@long_prop_map ||= YAML.load_file("#{__dir__}/scanner/properties/long.yml")
|
2602
2615
|
end
|
2603
2616
|
|
2604
2617
|
# Emits an array with the details of the scanned pattern
|