regexp_parser 1.7.1 → 1.8.2

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: dd872b22bf04a288790ef0f73df9041f14fb88a08c2a03852d9dbbc238b452d6
4
- data.tar.gz: 4641097a24b5fa0f7b0c8e5aacc152587fe8b15d30f3f78bbec8157887b8b897
3
+ metadata.gz: 2d1c795eb67eee01aa7976a672349b9a0c7f6364262ffb8f53488f6d9949db07
4
+ data.tar.gz: a38fddc769f16841e54f5dde90535e31ef7145e5bd41560ccf70443968495493
5
5
  SHA512:
6
- metadata.gz: 858570df4a7047a2d8b09555b56de28a66ca4f8022e596c249900f5312f8e7fb9376384ca816bc3c08f3e324930702ad410a28b5be680adea6867e1f8075441e
7
- data.tar.gz: 0d70e7b4f18739826bb334fb305e335e44a354ae302214ca3c1884f66ace8680e48a9e4c64b890b220b82056da761084413c8b9b8c5e363382f5cf165b3d3448
6
+ metadata.gz: 8dfcd3ba9f2a09370142e892184ccb9a1a973e24dea691582ca43cc670589dd7050eb30dbd924ae9e0584d124183dc2f62adca475628a726ecffaa22fcfb8903
7
+ data.tar.gz: cd23a308e4d62af9a07bbec164c96ca3213de5a4f686c450fc90bca56387faa88febb8a3387e810d0fd8b78e06b191bd76777fe8b3f3cda9da5582b9009d1144
@@ -1,5 +1,43 @@
1
1
  ## [Unreleased]
2
2
 
3
+ ### [1.8.2] - 2020-10-11 - [Janosch Müller](mailto:janosch84@gmail.com)
4
+
5
+ ### Fixed
6
+
7
+ - fix `FrozenError` in `Expression::Base#repetitions` on Ruby 3.0
8
+ * thanks to [Thomas Walpole](https://github.com/twalpole)
9
+ - removed "unknown future version" warning on Ruby 3.0
10
+
11
+ ### [1.8.1] - 2020-09-28 - [Janosch Müller](mailto:janosch84@gmail.com)
12
+
13
+ ### Fixed
14
+
15
+ - fixed scanning of comment-like text in normal mode
16
+ * this was an old bug, but had become more prevalent in v1.8.0
17
+ * thanks to [Tietew](https://github.com/Tietew) for the report
18
+ - specified correct minimum Ruby version in gemspec
19
+ * it said 1.9 but really required 2.0 as of v1.8.0
20
+
21
+ ### [1.8.0] - 2020-09-20 - [Janosch Müller](mailto:janosch84@gmail.com)
22
+
23
+ ### Changed
24
+
25
+ - dropped support for running on Ruby 1.9.x
26
+
27
+ ### Added
28
+
29
+ - regexp flags can now be passed when parsing a `String` as regexp body
30
+ * see the [README](/README.md#usage) for details
31
+ * thanks to [Owen Stephens](https://github.com/owst)
32
+ - bare occurrences of `\g` and `\k` are now allowed and scanned as literal escapes
33
+ * matches Onigmo behavior
34
+ * thanks for the report to [Marc-André Lafortune](https://github.com/marcandre)
35
+
36
+ ### Fixed
37
+
38
+ - fixed parsing comments without preceding space or trailing newline in x-mode
39
+ * thanks to [Owen Stephens](https://github.com/owst)
40
+
3
41
  ### [1.7.1] - 2020-06-07 - [Ammar Ali](mailto:ammarabuali@gmail.com)
4
42
 
5
43
  ### Fixed
data/README.md CHANGED
@@ -8,8 +8,8 @@ A Ruby gem for tokenizing, parsing, and transforming regular expressions.
8
8
  * A scanner/tokenizer based on [Ragel](http://www.colm.net/open-source/ragel/)
9
9
  * A lexer that produces a "stream" of token objects.
10
10
  * A parser that produces a "tree" of Expression objects (OO API)
11
- * Runs on Ruby 1.9, 2.x, and JRuby (1.9 mode) runtimes.
12
- * Recognizes Ruby 1.8, 1.9, and 2.x regular expressions [See Supported Syntax](#supported-syntax)
11
+ * Runs on Ruby 2.x, 3.x and JRuby runtimes
12
+ * Recognizes Ruby 1.8, 1.9, 2.x and 3.x regular expressions [See Supported Syntax](#supported-syntax)
13
13
 
14
14
 
15
15
  _For examples of regexp_parser in use, see [Example Projects](#example-projects)._
@@ -18,7 +18,7 @@ _For examples of regexp_parser in use, see [Example Projects](#example-projects)
18
18
  ---
19
19
  ## Requirements
20
20
 
21
- * Ruby >= 1.9
21
+ * Ruby >= 2.0
22
22
  * Ragel >= 6.0, but only if you want to build the gem or work on the scanner.
23
23
 
24
24
 
@@ -72,6 +72,17 @@ called with the results as follows:
72
72
  * **Parser**: after completion, the block gets passed the root expression.
73
73
  _The result of the block is returned._
74
74
 
75
+ All three methods accept either a `Regexp` or `String` (containing the pattern)
76
+ - if a String is passed, `options` can be supplied:
77
+
78
+ ```ruby
79
+ require 'regexp_parser'
80
+
81
+ Regexp::Parser.parse(
82
+ "a+ # Recognises a and A...",
83
+ options: ::Regexp::EXTENDED | ::Regexp::IGNORECASE
84
+ )
85
+ ```
75
86
 
76
87
  ---
77
88
  ## Components
@@ -306,7 +317,7 @@ Expression class. See the next section for details._
306
317
 
307
318
  ## Supported Syntax
308
319
  The three modules support all the regular expression syntax features of Ruby 1.8,
309
- 1.9, and 2.x:
320
+ 1.9, 2.x and 3.x:
310
321
 
311
322
  _Note that not all of these are available in all versions of Ruby_
312
323
 
@@ -429,13 +440,17 @@ rake install
429
440
  ## Example Projects
430
441
  Projects using regexp_parser.
431
442
 
443
+ - [capybara](https://github.com/teamcapybara/capybara) is an integration testing tool that uses regexp_parser to convert Regexps to css/xpath selectors.
444
+
445
+ - [js_regex](https://github.com/janosch-x/js_regex) converts Ruby regular expressions to JavaScript-compatible regular expressions.
446
+
432
447
  - [meta_re](https://github.com/ammar/meta_re) is a regular expression preprocessor with alias support.
433
448
 
434
449
  - [mutant](https://github.com/mbj/mutant) (before v0.9.0) manipulates your regular expressions (amongst others) to see if your tests cover their behavior.
435
450
 
436
- - [twitter-cldr-rb](https://github.com/twitter/twitter-cldr-rb) uses regexp_parser to generate examples of postal codes.
451
+ - [rubocop](https://github.com/rubocop-hq/rubocop) is a linter for Ruby that uses regexp_parser to lint Regexps.
437
452
 
438
- - [js_regex](https://github.com/janosch-x/js_regex) converts Ruby regular expressions to JavaScript-compatible regular expressions.
453
+ - [twitter-cldr-rb](https://github.com/twitter/twitter-cldr-rb) is a localization helper that uses regexp_parser to generate examples of postal codes.
439
454
 
440
455
 
441
456
  ## References
@@ -464,4 +479,4 @@ Documentation and books used while working on this project.
464
479
 
465
480
  ---
466
481
  ##### Copyright
467
- _Copyright (c) 2010-2019 Ammar Ali. See LICENSE file for details._
482
+ _Copyright (c) 2010-2020 Ammar Ali. See LICENSE file for details._
@@ -80,8 +80,12 @@ module Regexp::Expression
80
80
  return 1..1 unless quantified?
81
81
  min = quantifier.min
82
82
  max = quantifier.max < 0 ? Float::INFINITY : quantifier.max
83
- # fix Range#minmax - https://bugs.ruby-lang.org/issues/15807
84
- (min..max).tap { |r| r.define_singleton_method(:minmax) { [min, max] } }
83
+ range = min..max
84
+ # fix Range#minmax on old Rubies - https://bugs.ruby-lang.org/issues/15807
85
+ if RUBY_VERSION.to_f < 2.7
86
+ range.define_singleton_method(:minmax) { [min, max] }
87
+ end
88
+ range
85
89
  end
86
90
 
87
91
  def greedy?
@@ -11,11 +11,11 @@ class Regexp::Lexer
11
11
 
12
12
  CLOSING_TOKENS = [:close].freeze
13
13
 
14
- def self.lex(input, syntax = "ruby/#{RUBY_VERSION}", &block)
15
- new.lex(input, syntax, &block)
14
+ def self.lex(input, syntax = "ruby/#{RUBY_VERSION}", options: nil, &block)
15
+ new.lex(input, syntax, options: options, &block)
16
16
  end
17
17
 
18
- def lex(input, syntax = "ruby/#{RUBY_VERSION}", &block)
18
+ def lex(input, syntax = "ruby/#{RUBY_VERSION}", options: nil, &block)
19
19
  syntax = Regexp::Syntax.new(syntax)
20
20
 
21
21
  self.tokens = []
@@ -25,7 +25,7 @@ class Regexp::Lexer
25
25
  self.shift = 0
26
26
 
27
27
  last = nil
28
- Regexp::Scanner.scan(input) do |type, token, text, ts, te|
28
+ Regexp::Scanner.scan(input, options: options) do |type, token, text, ts, te|
29
29
  type, token = *syntax.normalize(type, token)
30
30
  syntax.check! type, token
31
31
 
@@ -18,12 +18,12 @@ class Regexp::Parser
18
18
  end
19
19
  end
20
20
 
21
- def self.parse(input, syntax = "ruby/#{RUBY_VERSION}", &block)
22
- new.parse(input, syntax, &block)
21
+ def self.parse(input, syntax = "ruby/#{RUBY_VERSION}", options: nil, &block)
22
+ new.parse(input, syntax, options: options, &block)
23
23
  end
24
24
 
25
- def parse(input, syntax = "ruby/#{RUBY_VERSION}", &block)
26
- root = Root.build(options_from_input(input))
25
+ def parse(input, syntax = "ruby/#{RUBY_VERSION}", options: nil, &block)
26
+ root = Root.build(extract_options(input, options))
27
27
 
28
28
  self.root = root
29
29
  self.node = root
@@ -35,7 +35,7 @@ class Regexp::Parser
35
35
 
36
36
  self.captured_group_counts = Hash.new(0)
37
37
 
38
- Regexp::Lexer.scan(input, syntax) do |token|
38
+ Regexp::Lexer.scan(input, syntax, options: options) do |token|
39
39
  parse_token(token)
40
40
  end
41
41
 
@@ -54,14 +54,20 @@ class Regexp::Parser
54
54
  :options_stack, :switching_options, :conditional_nesting,
55
55
  :captured_group_counts
56
56
 
57
- def options_from_input(input)
58
- return {} unless input.is_a?(::Regexp)
57
+ def extract_options(input, options)
58
+ if options && !input.is_a?(String)
59
+ raise ArgumentError, 'options cannot be supplied unless parsing a String'
60
+ end
61
+
62
+ options = input.options if input.is_a?(::Regexp)
63
+
64
+ return {} unless options
59
65
 
60
- options = {}
61
- options[:i] = true if input.options & ::Regexp::IGNORECASE != 0
62
- options[:m] = true if input.options & ::Regexp::MULTILINE != 0
63
- options[:x] = true if input.options & ::Regexp::EXTENDED != 0
64
- options
66
+ enabled_options = {}
67
+ enabled_options[:i] = true if options & ::Regexp::IGNORECASE != 0
68
+ enabled_options[:m] = true if options & ::Regexp::MULTILINE != 0
69
+ enabled_options[:x] = true if options & ::Regexp::EXTENDED != 0
70
+ enabled_options
65
71
  end
66
72
 
67
73
  def nest(exp)
@@ -1,8 +1,8 @@
1
1
  # -*- warn-indent:false; -*-
2
2
 
3
- # line 1 "/Users/ammar/src/code/ruby/projects/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
3
+ # line 1 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
4
4
 
5
- # line 676 "/Users/ammar/src/code/ruby/projects/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
5
+ # line 678 "/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
@@ -67,21 +67,16 @@ class Regexp::Scanner
67
67
  #
68
68
  # This method may raise errors if a syntax error is encountered.
69
69
  # --------------------------------------------------------------------------
70
- def self.scan(input_object, &block)
71
- new.scan(input_object, &block)
70
+ def self.scan(input_object, options: nil, &block)
71
+ new.scan(input_object, options: options, &block)
72
72
  end
73
73
 
74
- def scan(input_object, &block)
74
+ def scan(input_object, options: nil, &block)
75
75
  self.literal = nil
76
76
  stack = []
77
77
 
78
- if input_object.is_a?(Regexp)
79
- input = input_object.source
80
- self.free_spacing = (input_object.options & Regexp::EXTENDED != 0)
81
- else
82
- input = input_object
83
- self.free_spacing = false
84
- end
78
+ input = input_object.is_a?(Regexp) ? input_object.source : input_object
79
+ self.free_spacing = free_spacing?(input_object, options)
85
80
  self.spacing_stack = [{:free_spacing => free_spacing, :depth => 0}]
86
81
 
87
82
  data = input.unpack("c*") if input.is_a?(String)
@@ -95,7 +90,7 @@ class Regexp::Scanner
95
90
  self.conditional_stack = []
96
91
 
97
92
 
98
- # line 98 "/Users/ammar/src/code/ruby/projects/regexp_parser/lib/regexp_parser/scanner.rb"
93
+ # line 93 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner.rb"
99
94
  class << self
100
95
  attr_accessor :_re_scanner_trans_keys
101
96
  private :_re_scanner_trans_keys, :_re_scanner_trans_keys=
@@ -103,63 +98,62 @@ end
103
98
  self._re_scanner_trans_keys = [
104
99
  0, 0, -128, -65, -128, -65,
105
100
  -128, -65, -128, -65, -128,
106
- -65, -128, -65, 10, 10,
107
- 41, 41, 39, 122, 33, 122,
108
- 48, 122, 39, 60, 39,
109
- 122, 48, 57, 39, 57,
110
- 48, 57, 39, 57, 39, 122,
111
- 43, 122, 48, 57, 48,
112
- 62, 48, 57, 43, 62,
113
- 43, 122, 48, 57, 48, 125,
114
- 44, 125, 123, 123, 9,
115
- 122, 9, 125, 9, 122,
116
- -128, -65, -128, -65, 38, 38,
117
- 45, 122, 45, 122, 93,
118
- 93, 94, 120, 97, 120,
119
- 108, 115, 110, 112, 117, 117,
120
- 109, 109, 58, 58, 93,
121
- 93, 104, 104, 97, 97,
122
- 99, 99, 105, 105, 105, 105,
123
- 108, 108, 97, 97, 110,
124
- 110, 107, 107, 110, 110,
125
- 116, 116, 114, 114, 108, 108,
126
- 105, 105, 103, 103, 105,
127
- 105, 116, 116, 114, 114,
128
- 97, 97, 112, 112, 104, 104,
129
- 111, 111, 119, 119, 101,
130
- 101, 114, 114, 114, 117,
131
- 105, 105, 110, 110, 110, 110,
132
- 99, 99, 112, 112, 97,
133
- 97, 99, 99, 101, 101,
134
- 112, 112, 112, 112, 111, 111,
135
- 114, 114, 100, 100, 100,
136
- 100, 65, 122, 61, 61,
137
- 93, 93, 45, 45, 92, 92,
138
- 92, 92, 45, 45, 92,
139
- 92, 92, 92, 48, 123,
101
+ -65, -128, -65, 41, 41,
102
+ 39, 122, 33, 122, 48, 122,
103
+ 39, 60, 39, 122, 48,
104
+ 57, 39, 57, 48, 57,
105
+ 39, 57, 39, 122, 43, 122,
106
+ 48, 57, 48, 62, 48,
107
+ 57, 43, 62, 43, 122,
108
+ 48, 57, 48, 125, 44, 125,
109
+ 123, 123, 9, 122, 9,
110
+ 125, 9, 122, -128, -65,
111
+ -128, -65, 38, 38, 45, 122,
112
+ 45, 122, 93, 93, 94,
113
+ 120, 97, 120, 108, 115,
114
+ 110, 112, 117, 117, 109, 109,
115
+ 58, 58, 93, 93, 104,
116
+ 104, 97, 97, 99, 99,
117
+ 105, 105, 105, 105, 108, 108,
118
+ 97, 97, 110, 110, 107,
119
+ 107, 110, 110, 116, 116,
120
+ 114, 114, 108, 108, 105, 105,
121
+ 103, 103, 105, 105, 116,
122
+ 116, 114, 114, 97, 97,
123
+ 112, 112, 104, 104, 111, 111,
124
+ 119, 119, 101, 101, 114,
125
+ 114, 114, 117, 105, 105,
126
+ 110, 110, 110, 110, 99, 99,
127
+ 112, 112, 97, 97, 99,
128
+ 99, 101, 101, 112, 112,
129
+ 112, 112, 111, 111, 114, 114,
130
+ 100, 100, 100, 100, 65,
131
+ 122, 61, 61, 93, 93,
132
+ 45, 45, 92, 92, 92, 92,
133
+ 45, 45, 92, 92, 92,
134
+ 92, 48, 123, 48, 102,
140
135
  48, 102, 48, 102, 48, 102,
141
- 48, 102, 9, 125, 9,
136
+ 9, 125, 9, 125, 9,
142
137
  125, 9, 125, 9, 125,
143
- 9, 125, 9, 125, 48, 123,
144
- 41, 41, 39, 122, 41,
145
- 57, 48, 122, -128, 127,
146
- -62, -33, -32, -17, -16, -12,
147
- 1, 127, 1, 127, 9,
148
- 32, 33, 126, 10, 126,
149
- 63, 63, 33, 126, 33, 126,
150
- 43, 63, 43, 63, 43,
151
- 63, 65, 122, 44, 57,
152
- 43, 63, 68, 119, 80, 112,
153
- -62, 125, -128, -65, -128,
154
- -65, -128, -65, 38, 38,
155
- 38, 93, 46, 61, 48, 122,
156
- 36, 125, 48, 55, 48,
157
- 55, 77, 77, 45, 45,
158
- 0, 0, 67, 99, 45, 45,
159
- 0, 0, 92, 92, 48,
160
- 102, 39, 60, 39, 122,
161
- 49, 57, 41, 57, 48, 122,
162
- 0
138
+ 9, 125, 48, 123, 41, 41,
139
+ 39, 122, 41, 57, 48,
140
+ 122, -128, 127, -62, -33,
141
+ -32, -17, -16, -12, 1, 127,
142
+ 1, 127, 9, 32, 33,
143
+ 126, 10, 10, 63, 63,
144
+ 33, 126, 33, 126, 43, 63,
145
+ 43, 63, 43, 63, 65,
146
+ 122, 44, 57, 43, 63,
147
+ 68, 119, 80, 112, -62, 125,
148
+ -128, -65, -128, -65, -128,
149
+ -65, 38, 38, 38, 93,
150
+ 46, 61, 48, 122, 36, 125,
151
+ 48, 55, 48, 55, 77,
152
+ 77, 45, 45, 0, 0,
153
+ 67, 99, 45, 45, 0, 0,
154
+ 92, 92, 48, 102, 39,
155
+ 60, 39, 122, 49, 57,
156
+ 41, 57, 48, 122, 0
163
157
  ]
164
158
 
165
159
  class << self
@@ -168,25 +162,25 @@ class << self
168
162
  end
169
163
  self._re_scanner_key_spans = [
170
164
  0, 64, 64, 64, 64, 64, 64, 1,
171
- 1, 84, 90, 75, 22, 84, 10, 19,
172
- 10, 19, 84, 80, 10, 15, 10, 20,
173
- 80, 10, 78, 82, 1, 114, 117, 114,
174
- 64, 64, 1, 78, 78, 1, 27, 24,
175
- 8, 3, 1, 1, 1, 1, 1, 1,
165
+ 84, 90, 75, 22, 84, 10, 19, 10,
166
+ 19, 84, 80, 10, 15, 10, 20, 80,
167
+ 10, 78, 82, 1, 114, 117, 114, 64,
168
+ 64, 1, 78, 78, 1, 27, 24, 8,
169
+ 3, 1, 1, 1, 1, 1, 1, 1,
176
170
  1, 1, 1, 1, 1, 1, 1, 1,
177
171
  1, 1, 1, 1, 1, 1, 1, 1,
178
- 1, 1, 1, 1, 1, 1, 1, 4,
172
+ 1, 1, 1, 1, 1, 1, 4, 1,
179
173
  1, 1, 1, 1, 1, 1, 1, 1,
180
- 1, 1, 1, 1, 1, 1, 58, 1,
181
- 1, 1, 1, 1, 1, 1, 1, 76,
182
- 55, 55, 55, 55, 117, 117, 117, 117,
183
- 117, 117, 76, 1, 84, 17, 75, 256,
184
- 30, 16, 5, 127, 127, 24, 94, 117,
185
- 1, 94, 94, 21, 21, 21, 58, 14,
186
- 21, 52, 33, 188, 64, 64, 64, 1,
187
- 56, 16, 75, 90, 8, 8, 1, 1,
188
- 0, 33, 1, 0, 1, 55, 22, 84,
189
- 9, 17, 75
174
+ 1, 1, 1, 1, 1, 58, 1, 1,
175
+ 1, 1, 1, 1, 1, 1, 76, 55,
176
+ 55, 55, 55, 117, 117, 117, 117, 117,
177
+ 117, 76, 1, 84, 17, 75, 256, 30,
178
+ 16, 5, 127, 127, 24, 94, 1, 1,
179
+ 94, 94, 21, 21, 21, 58, 14, 21,
180
+ 52, 33, 188, 64, 64, 64, 1, 56,
181
+ 16, 75, 90, 8, 8, 1, 1, 0,
182
+ 33, 1, 0, 1, 55, 22, 84, 9,
183
+ 17, 75
190
184
  ]
191
185
 
192
186
  class << self
@@ -195,25 +189,25 @@ class << self
195
189
  end
196
190
  self._re_scanner_index_offsets = [
197
191
  0, 0, 65, 130, 195, 260, 325, 390,
198
- 392, 394, 479, 570, 646, 669, 754, 765,
199
- 785, 796, 816, 901, 982, 993, 1009, 1020,
200
- 1041, 1122, 1133, 1212, 1295, 1297, 1412, 1530,
201
- 1645, 1710, 1775, 1777, 1856, 1935, 1937, 1965,
202
- 1990, 1999, 2003, 2005, 2007, 2009, 2011, 2013,
192
+ 392, 477, 568, 644, 667, 752, 763, 783,
193
+ 794, 814, 899, 980, 991, 1007, 1018, 1039,
194
+ 1120, 1131, 1210, 1293, 1295, 1410, 1528, 1643,
195
+ 1708, 1773, 1775, 1854, 1933, 1935, 1963, 1988,
196
+ 1997, 2001, 2003, 2005, 2007, 2009, 2011, 2013,
203
197
  2015, 2017, 2019, 2021, 2023, 2025, 2027, 2029,
204
198
  2031, 2033, 2035, 2037, 2039, 2041, 2043, 2045,
205
- 2047, 2049, 2051, 2053, 2055, 2057, 2059, 2061,
199
+ 2047, 2049, 2051, 2053, 2055, 2057, 2059, 2064,
206
200
  2066, 2068, 2070, 2072, 2074, 2076, 2078, 2080,
207
- 2082, 2084, 2086, 2088, 2090, 2092, 2094, 2153,
208
- 2155, 2157, 2159, 2161, 2163, 2165, 2167, 2169,
209
- 2246, 2302, 2358, 2414, 2470, 2588, 2706, 2824,
210
- 2942, 3060, 3178, 3255, 3257, 3342, 3360, 3436,
211
- 3693, 3724, 3741, 3747, 3875, 4003, 4028, 4123,
212
- 4241, 4243, 4338, 4433, 4455, 4477, 4499, 4558,
213
- 4573, 4595, 4648, 4682, 4871, 4936, 5001, 5066,
214
- 5068, 5125, 5142, 5218, 5309, 5318, 5327, 5329,
215
- 5331, 5332, 5366, 5368, 5369, 5371, 5427, 5450,
216
- 5535, 5545, 5563
201
+ 2082, 2084, 2086, 2088, 2090, 2092, 2151, 2153,
202
+ 2155, 2157, 2159, 2161, 2163, 2165, 2167, 2244,
203
+ 2300, 2356, 2412, 2468, 2586, 2704, 2822, 2940,
204
+ 3058, 3176, 3253, 3255, 3340, 3358, 3434, 3691,
205
+ 3722, 3739, 3745, 3873, 4001, 4026, 4121, 4123,
206
+ 4125, 4220, 4315, 4337, 4359, 4381, 4440, 4455,
207
+ 4477, 4530, 4564, 4753, 4818, 4883, 4948, 4950,
208
+ 5007, 5024, 5100, 5191, 5200, 5209, 5211, 5213,
209
+ 5214, 5248, 5250, 5251, 5253, 5309, 5332, 5417,
210
+ 5427, 5445
217
211
  ]
218
212
 
219
213
  class << self
@@ -270,662 +264,648 @@ self._re_scanner_indicies = [
270
264
  6, 6, 6, 6, 6, 6, 6, 6,
271
265
  6, 6, 6, 6, 6, 6, 6, 6,
272
266
  6, 6, 6, 6, 6, 0, 9, 8,
273
- 12, 11, 13, 10, 10, 10, 10, 10,
274
- 10, 10, 10, 14, 14, 14, 14, 14,
275
- 14, 14, 14, 14, 14, 10, 10, 10,
276
- 10, 10, 10, 10, 14, 14, 14, 14,
267
+ 10, 7, 7, 7, 7, 7, 7, 7,
268
+ 7, 11, 11, 11, 11, 11, 11, 11,
269
+ 11, 11, 11, 7, 7, 7, 7, 7,
270
+ 7, 7, 11, 11, 11, 11, 11, 11,
271
+ 11, 11, 11, 11, 11, 11, 11, 11,
272
+ 11, 11, 11, 11, 11, 11, 11, 11,
273
+ 11, 11, 11, 11, 7, 7, 7, 7,
274
+ 11, 7, 11, 11, 11, 11, 11, 11,
275
+ 11, 11, 11, 11, 11, 11, 11, 11,
276
+ 11, 11, 11, 11, 11, 11, 11, 11,
277
+ 11, 11, 11, 11, 7, 12, 7, 7,
278
+ 7, 7, 7, 7, 7, 7, 7, 7,
279
+ 7, 7, 7, 7, 13, 13, 13, 13,
280
+ 13, 13, 13, 13, 13, 13, 7, 7,
281
+ 7, 12, 10, 7, 7, 13, 13, 13,
282
+ 13, 13, 13, 13, 13, 13, 13, 13,
283
+ 13, 13, 13, 13, 13, 13, 13, 13,
284
+ 13, 13, 13, 13, 13, 13, 13, 7,
285
+ 7, 7, 7, 13, 7, 13, 13, 13,
286
+ 13, 13, 13, 13, 13, 13, 13, 13,
287
+ 13, 13, 13, 13, 13, 13, 13, 13,
288
+ 13, 13, 13, 13, 13, 13, 13, 7,
289
+ 13, 13, 13, 13, 13, 13, 13, 13,
290
+ 13, 13, 7, 7, 7, 7, 10, 7,
291
+ 7, 13, 13, 13, 13, 13, 13, 13,
292
+ 13, 13, 13, 13, 13, 13, 13, 13,
293
+ 13, 13, 13, 13, 13, 13, 13, 13,
294
+ 13, 13, 13, 7, 7, 7, 7, 13,
295
+ 7, 13, 13, 13, 13, 13, 13, 13,
296
+ 13, 13, 13, 13, 13, 13, 13, 13,
297
+ 13, 13, 13, 13, 13, 13, 13, 13,
298
+ 13, 13, 13, 7, 15, 14, 14, 14,
277
299
  14, 14, 14, 14, 14, 14, 14, 14,
278
300
  14, 14, 14, 14, 14, 14, 14, 14,
279
- 14, 14, 14, 14, 14, 14, 10, 10,
280
- 10, 10, 14, 10, 14, 14, 14, 14,
281
- 14, 14, 14, 14, 14, 14, 14, 14,
282
- 14, 14, 14, 14, 14, 14, 14, 14,
283
- 14, 14, 14, 14, 14, 14, 10, 15,
284
- 10, 10, 10, 10, 10, 10, 10, 10,
285
- 10, 10, 10, 10, 10, 10, 16, 16,
286
- 16, 16, 16, 16, 16, 16, 16, 16,
287
- 10, 10, 10, 15, 13, 10, 10, 16,
288
- 16, 16, 16, 16, 16, 16, 16, 16,
289
- 16, 16, 16, 16, 16, 16, 16, 16,
290
- 16, 16, 16, 16, 16, 16, 16, 16,
291
- 16, 10, 10, 10, 10, 16, 10, 16,
292
- 16, 16, 16, 16, 16, 16, 16, 16,
293
- 16, 16, 16, 16, 16, 16, 16, 16,
294
- 16, 16, 16, 16, 16, 16, 16, 16,
295
- 16, 10, 16, 16, 16, 16, 16, 16,
296
- 16, 16, 16, 16, 10, 10, 10, 10,
297
- 13, 10, 10, 16, 16, 16, 16, 16,
298
- 16, 16, 16, 16, 16, 16, 16, 16,
299
- 16, 16, 16, 16, 16, 16, 16, 16,
300
- 16, 16, 16, 16, 16, 10, 10, 10,
301
- 10, 16, 10, 16, 16, 16, 16, 16,
302
- 16, 16, 16, 16, 16, 16, 16, 16,
303
- 16, 16, 16, 16, 16, 16, 16, 16,
304
- 16, 16, 16, 16, 16, 10, 18, 17,
305
- 17, 17, 17, 17, 17, 17, 17, 17,
306
- 17, 17, 17, 17, 17, 17, 17, 17,
307
- 17, 17, 17, 19, 17, 20, 17, 17,
308
- 17, 21, 17, 22, 17, 17, 23, 23,
309
- 23, 23, 23, 23, 23, 23, 23, 23,
310
- 17, 17, 17, 17, 17, 17, 17, 23,
311
- 23, 23, 23, 23, 23, 23, 23, 23,
312
- 23, 23, 23, 23, 23, 23, 23, 23,
313
- 23, 23, 23, 23, 23, 23, 23, 23,
314
- 23, 17, 17, 17, 17, 23, 17, 23,
315
- 23, 23, 23, 23, 23, 23, 23, 23,
316
- 23, 23, 23, 23, 23, 23, 23, 23,
317
- 23, 23, 23, 23, 23, 23, 23, 23,
318
- 23, 17, 24, 24, 24, 24, 24, 24,
319
- 24, 24, 24, 24, 17, 20, 17, 17,
320
- 17, 17, 17, 17, 17, 17, 24, 24,
321
- 24, 24, 24, 24, 24, 24, 24, 24,
322
- 17, 24, 25, 25, 25, 25, 25, 25,
323
- 25, 25, 25, 17, 20, 17, 17, 17,
324
- 21, 17, 21, 17, 17, 25, 25, 25,
325
- 25, 25, 25, 25, 25, 25, 25, 17,
326
- 20, 17, 17, 17, 21, 17, 21, 17,
327
- 17, 23, 23, 23, 23, 23, 23, 23,
328
- 23, 23, 23, 17, 17, 17, 17, 17,
329
- 17, 17, 23, 23, 23, 23, 23, 23,
330
- 23, 23, 23, 23, 23, 23, 23, 23,
331
- 23, 23, 23, 23, 23, 23, 23, 23,
332
- 23, 23, 23, 23, 17, 17, 17, 17,
333
- 23, 17, 23, 23, 23, 23, 23, 23,
334
- 23, 23, 23, 23, 23, 23, 23, 23,
335
- 23, 23, 23, 23, 23, 23, 23, 23,
336
- 23, 23, 23, 23, 17, 26, 17, 27,
337
- 17, 17, 28, 28, 28, 28, 28, 28,
338
- 28, 28, 28, 28, 17, 17, 17, 17,
339
- 20, 17, 17, 28, 28, 28, 28, 28,
301
+ 14, 16, 14, 17, 14, 14, 14, 18,
302
+ 14, 19, 14, 14, 20, 20, 20, 20,
303
+ 20, 20, 20, 20, 20, 20, 14, 14,
304
+ 14, 14, 14, 14, 14, 20, 20, 20,
305
+ 20, 20, 20, 20, 20, 20, 20, 20,
306
+ 20, 20, 20, 20, 20, 20, 20, 20,
307
+ 20, 20, 20, 20, 20, 20, 20, 14,
308
+ 14, 14, 14, 20, 14, 20, 20, 20,
309
+ 20, 20, 20, 20, 20, 20, 20, 20,
310
+ 20, 20, 20, 20, 20, 20, 20, 20,
311
+ 20, 20, 20, 20, 20, 20, 20, 14,
312
+ 21, 21, 21, 21, 21, 21, 21, 21,
313
+ 21, 21, 14, 17, 14, 14, 14, 14,
314
+ 14, 14, 14, 14, 21, 21, 21, 21,
315
+ 21, 21, 21, 21, 21, 21, 14, 21,
316
+ 22, 22, 22, 22, 22, 22, 22, 22,
317
+ 22, 14, 17, 14, 14, 14, 18, 14,
318
+ 18, 14, 14, 22, 22, 22, 22, 22,
319
+ 22, 22, 22, 22, 22, 14, 17, 14,
320
+ 14, 14, 18, 14, 18, 14, 14, 20,
321
+ 20, 20, 20, 20, 20, 20, 20, 20,
322
+ 20, 14, 14, 14, 14, 14, 14, 14,
323
+ 20, 20, 20, 20, 20, 20, 20, 20,
324
+ 20, 20, 20, 20, 20, 20, 20, 20,
325
+ 20, 20, 20, 20, 20, 20, 20, 20,
326
+ 20, 20, 14, 14, 14, 14, 20, 14,
327
+ 20, 20, 20, 20, 20, 20, 20, 20,
328
+ 20, 20, 20, 20, 20, 20, 20, 20,
329
+ 20, 20, 20, 20, 20, 20, 20, 20,
330
+ 20, 20, 14, 23, 14, 24, 14, 14,
331
+ 25, 25, 25, 25, 25, 25, 25, 25,
332
+ 25, 25, 14, 14, 14, 14, 17, 14,
333
+ 14, 25, 25, 25, 25, 25, 25, 25,
334
+ 25, 25, 25, 25, 25, 25, 25, 25,
335
+ 25, 25, 25, 25, 25, 25, 25, 25,
336
+ 25, 25, 25, 14, 14, 14, 14, 25,
337
+ 14, 25, 25, 25, 25, 25, 25, 25,
338
+ 25, 25, 25, 25, 25, 25, 25, 25,
339
+ 25, 25, 25, 25, 25, 25, 25, 25,
340
+ 25, 25, 25, 14, 26, 26, 26, 26,
341
+ 26, 26, 26, 26, 26, 26, 14, 26,
342
+ 26, 26, 26, 26, 26, 26, 26, 26,
343
+ 26, 14, 14, 14, 14, 17, 14, 26,
344
+ 27, 27, 27, 27, 27, 27, 27, 27,
345
+ 27, 14, 23, 14, 23, 14, 14, 27,
346
+ 27, 27, 27, 27, 27, 27, 27, 27,
347
+ 27, 14, 14, 14, 14, 17, 14, 23,
348
+ 14, 23, 14, 14, 25, 25, 25, 25,
349
+ 25, 25, 25, 25, 25, 25, 14, 14,
350
+ 14, 14, 17, 14, 14, 25, 25, 25,
351
+ 25, 25, 25, 25, 25, 25, 25, 25,
352
+ 25, 25, 25, 25, 25, 25, 25, 25,
353
+ 25, 25, 25, 25, 25, 25, 25, 14,
354
+ 14, 14, 14, 25, 14, 25, 25, 25,
355
+ 25, 25, 25, 25, 25, 25, 25, 25,
356
+ 25, 25, 25, 25, 25, 25, 25, 25,
357
+ 25, 25, 25, 25, 25, 25, 25, 14,
358
+ 29, 29, 29, 29, 29, 29, 29, 29,
359
+ 29, 29, 28, 29, 29, 29, 29, 29,
360
+ 29, 29, 29, 29, 29, 28, 28, 28,
340
361
  28, 28, 28, 28, 28, 28, 28, 28,
341
362
  28, 28, 28, 28, 28, 28, 28, 28,
342
- 28, 28, 28, 28, 28, 17, 17, 17,
343
- 17, 28, 17, 28, 28, 28, 28, 28,
344
363
  28, 28, 28, 28, 28, 28, 28, 28,
345
364
  28, 28, 28, 28, 28, 28, 28, 28,
346
- 28, 28, 28, 28, 28, 17, 29, 29,
347
- 29, 29, 29, 29, 29, 29, 29, 29,
348
- 17, 29, 29, 29, 29, 29, 29, 29,
349
- 29, 29, 29, 17, 17, 17, 17, 20,
350
- 17, 29, 30, 30, 30, 30, 30, 30,
351
- 30, 30, 30, 17, 26, 17, 26, 17,
352
- 17, 30, 30, 30, 30, 30, 30, 30,
353
- 30, 30, 30, 17, 17, 17, 17, 20,
354
- 17, 26, 17, 26, 17, 17, 28, 28,
355
365
  28, 28, 28, 28, 28, 28, 28, 28,
356
- 17, 17, 17, 17, 20, 17, 17, 28,
357
366
  28, 28, 28, 28, 28, 28, 28, 28,
358
367
  28, 28, 28, 28, 28, 28, 28, 28,
359
368
  28, 28, 28, 28, 28, 28, 28, 28,
360
- 28, 17, 17, 17, 17, 28, 17, 28,
369
+ 30, 28, 29, 28, 28, 28, 31, 31,
370
+ 31, 31, 31, 31, 31, 31, 31, 31,
361
371
  28, 28, 28, 28, 28, 28, 28, 28,
362
372
  28, 28, 28, 28, 28, 28, 28, 28,
363
373
  28, 28, 28, 28, 28, 28, 28, 28,
364
- 28, 17, 32, 32, 32, 32, 32, 32,
365
- 32, 32, 32, 32, 31, 32, 32, 32,
366
- 32, 32, 32, 32, 32, 32, 32, 31,
367
- 31, 31, 31, 31, 31, 31, 31, 31,
368
- 31, 31, 31, 31, 31, 31, 31, 31,
369
- 31, 31, 31, 31, 31, 31, 31, 31,
370
- 31, 31, 31, 31, 31, 31, 31, 31,
371
- 31, 31, 31, 31, 31, 31, 31, 31,
372
- 31, 31, 31, 31, 31, 31, 31, 31,
373
- 31, 31, 31, 31, 31, 31, 31, 31,
374
- 31, 31, 31, 31, 31, 31, 31, 31,
375
- 31, 31, 33, 31, 32, 31, 31, 31,
374
+ 28, 28, 28, 28, 28, 28, 28, 28,
375
+ 28, 28, 28, 28, 28, 28, 28, 28,
376
+ 28, 28, 28, 28, 28, 28, 28, 28,
377
+ 28, 28, 28, 28, 28, 28, 28, 28,
378
+ 28, 28, 28, 28, 28, 28, 28, 28,
379
+ 28, 28, 28, 30, 28, 32, 33, 34,
380
+ 34, 34, 34, 34, 33, 33, 33, 33,
381
+ 33, 33, 33, 33, 33, 33, 33, 33,
382
+ 33, 33, 33, 33, 33, 33, 34, 33,
383
+ 33, 33, 33, 33, 33, 33, 33, 33,
384
+ 33, 33, 33, 34, 34, 33, 34, 34,
376
385
  34, 34, 34, 34, 34, 34, 34, 34,
377
- 34, 34, 31, 31, 31, 31, 31, 31,
378
- 31, 31, 31, 31, 31, 31, 31, 31,
379
- 31, 31, 31, 31, 31, 31, 31, 31,
380
- 31, 31, 31, 31, 31, 31, 31, 31,
381
- 31, 31, 31, 31, 31, 31, 31, 31,
382
- 31, 31, 31, 31, 31, 31, 31, 31,
383
- 31, 31, 31, 31, 31, 31, 31, 31,
384
- 31, 31, 31, 31, 31, 31, 31, 31,
385
- 31, 31, 31, 31, 31, 33, 31, 35,
386
- 36, 37, 37, 37, 37, 37, 36, 36,
387
- 36, 36, 36, 36, 36, 36, 36, 36,
388
- 36, 36, 36, 36, 36, 36, 36, 36,
389
- 37, 36, 36, 36, 36, 36, 36, 36,
390
- 36, 36, 36, 36, 36, 37, 37, 36,
391
- 37, 37, 37, 37, 37, 37, 37, 37,
392
- 37, 37, 36, 36, 36, 37, 36, 36,
393
- 36, 37, 37, 37, 37, 37, 37, 37,
394
- 37, 37, 37, 37, 37, 37, 37, 37,
395
- 37, 37, 37, 37, 37, 37, 37, 37,
396
- 37, 37, 37, 36, 36, 36, 38, 37,
397
- 36, 37, 37, 37, 37, 37, 37, 37,
398
- 37, 37, 37, 37, 37, 37, 37, 37,
399
- 37, 37, 37, 37, 37, 37, 37, 37,
400
- 37, 37, 37, 36, 37, 37, 37, 37,
401
- 37, 36, 36, 36, 36, 36, 36, 36,
402
- 36, 36, 36, 36, 36, 36, 36, 36,
403
- 36, 36, 36, 37, 36, 36, 36, 36,
404
- 36, 36, 36, 36, 36, 36, 36, 36,
405
- 37, 37, 36, 37, 37, 37, 37, 37,
406
- 37, 37, 37, 37, 37, 36, 36, 36,
407
- 37, 36, 36, 36, 37, 37, 37, 37,
408
- 37, 37, 37, 37, 37, 37, 37, 37,
409
- 37, 37, 37, 37, 37, 37, 37, 37,
410
- 37, 37, 37, 37, 37, 37, 36, 36,
411
- 36, 36, 37, 36, 37, 37, 37, 37,
412
- 37, 37, 37, 37, 37, 37, 37, 37,
413
- 37, 37, 37, 37, 37, 37, 37, 37,
414
- 37, 37, 37, 37, 37, 37, 36, 36,
415
- 39, 36, 37, 37, 37, 37, 37, 36,
416
- 36, 36, 36, 36, 36, 36, 36, 36,
417
- 36, 36, 36, 36, 36, 36, 36, 36,
418
- 36, 37, 36, 36, 36, 36, 36, 36,
419
- 36, 36, 36, 36, 36, 36, 37, 37,
420
- 36, 37, 37, 37, 37, 37, 37, 37,
421
- 37, 37, 37, 36, 36, 36, 37, 36,
422
- 36, 36, 37, 37, 37, 37, 37, 37,
423
- 37, 37, 37, 37, 37, 37, 37, 37,
424
- 37, 37, 37, 37, 37, 37, 37, 37,
425
- 37, 37, 37, 37, 36, 36, 36, 36,
426
- 37, 36, 37, 37, 37, 37, 37, 37,
427
- 37, 37, 37, 37, 37, 37, 37, 37,
428
- 37, 37, 37, 37, 37, 37, 37, 37,
429
- 37, 37, 37, 37, 36, 41, 41, 41,
430
- 41, 41, 41, 41, 41, 41, 41, 41,
431
- 41, 41, 41, 41, 41, 41, 41, 41,
432
- 41, 41, 41, 41, 41, 41, 41, 41,
433
- 41, 41, 41, 41, 41, 41, 41, 41,
434
- 41, 41, 41, 41, 41, 41, 41, 41,
435
- 41, 41, 41, 41, 41, 41, 41, 41,
436
- 41, 41, 41, 41, 41, 41, 41, 41,
437
- 41, 41, 41, 41, 41, 40, 42, 42,
438
- 42, 42, 42, 42, 42, 42, 42, 42,
439
- 42, 42, 42, 42, 42, 42, 42, 42,
440
- 42, 42, 42, 42, 42, 42, 42, 42,
441
- 42, 42, 42, 42, 42, 42, 42, 42,
442
- 42, 42, 42, 42, 42, 42, 42, 42,
443
- 42, 42, 42, 42, 42, 42, 42, 42,
444
- 42, 42, 42, 42, 42, 42, 42, 42,
445
- 42, 42, 42, 42, 42, 42, 40, 44,
446
- 43, 47, 46, 46, 46, 46, 46, 46,
447
- 46, 46, 46, 46, 46, 46, 46, 46,
448
- 46, 46, 46, 46, 46, 47, 47, 47,
449
- 47, 47, 47, 47, 47, 47, 47, 47,
450
- 47, 47, 47, 47, 47, 47, 47, 47,
451
- 47, 47, 47, 47, 47, 47, 47, 46,
452
- 46, 46, 46, 46, 46, 47, 47, 47,
453
- 47, 47, 47, 47, 47, 47, 47, 47,
454
- 47, 47, 47, 47, 47, 47, 47, 47,
455
- 47, 47, 47, 47, 47, 47, 47, 46,
456
- 47, 48, 46, 46, 46, 46, 46, 46,
457
- 46, 46, 46, 46, 46, 46, 46, 46,
458
- 46, 46, 46, 46, 47, 47, 47, 47,
459
- 47, 47, 47, 47, 47, 47, 47, 47,
460
- 47, 47, 47, 47, 47, 47, 47, 47,
461
- 47, 47, 47, 47, 47, 47, 46, 46,
462
- 46, 46, 46, 46, 47, 47, 47, 47,
463
- 47, 47, 47, 47, 47, 47, 47, 47,
464
- 47, 47, 47, 47, 47, 47, 47, 47,
465
- 47, 47, 47, 47, 47, 47, 46, 49,
466
- 46, 50, 46, 46, 51, 52, 53, 54,
467
- 46, 46, 55, 46, 46, 46, 46, 56,
468
- 46, 46, 46, 57, 46, 46, 58, 46,
469
- 59, 46, 60, 61, 46, 51, 52, 53,
470
- 54, 46, 46, 55, 46, 46, 46, 46,
471
- 56, 46, 46, 46, 57, 46, 46, 58,
472
- 46, 59, 46, 60, 61, 46, 62, 46,
473
- 46, 46, 46, 46, 46, 63, 46, 64,
474
- 46, 65, 46, 66, 46, 67, 46, 68,
475
- 46, 69, 46, 70, 46, 67, 46, 71,
476
- 46, 72, 46, 67, 46, 73, 46, 74,
477
- 46, 75, 46, 67, 46, 76, 46, 77,
478
- 46, 78, 46, 67, 46, 79, 46, 80,
479
- 46, 81, 46, 67, 46, 82, 46, 83,
480
- 46, 84, 46, 67, 46, 85, 46, 86,
481
- 46, 87, 46, 67, 46, 88, 46, 46,
482
- 89, 46, 90, 46, 81, 46, 91, 46,
483
- 81, 46, 92, 46, 93, 46, 94, 46,
484
- 67, 46, 95, 46, 86, 46, 96, 46,
485
- 97, 46, 67, 46, 54, 46, 98, 98,
486
- 98, 98, 98, 98, 98, 98, 98, 98,
487
- 98, 98, 98, 98, 98, 98, 98, 98,
488
- 98, 98, 98, 98, 98, 98, 98, 98,
489
- 46, 46, 46, 46, 46, 46, 98, 98,
490
- 98, 98, 98, 98, 98, 98, 98, 98,
491
- 98, 98, 98, 98, 98, 98, 98, 98,
492
- 98, 98, 98, 98, 98, 98, 98, 98,
493
- 46, 99, 46, 100, 46, 101, 36, 103,
494
- 102, 105, 102, 106, 36, 108, 107, 110,
495
- 107, 111, 111, 111, 111, 111, 111, 111,
496
- 111, 111, 111, 36, 36, 36, 36, 36,
497
- 36, 36, 111, 111, 111, 111, 111, 111,
498
- 36, 36, 36, 36, 36, 36, 36, 36,
499
- 36, 36, 36, 36, 36, 36, 36, 36,
500
- 36, 36, 36, 36, 36, 36, 36, 36,
501
- 36, 36, 111, 111, 111, 111, 111, 111,
502
- 36, 36, 36, 36, 36, 36, 36, 36,
503
- 36, 36, 36, 36, 36, 36, 36, 36,
504
- 36, 36, 36, 36, 112, 36, 113, 113,
505
- 113, 113, 113, 113, 113, 113, 113, 113,
506
- 36, 36, 36, 36, 36, 36, 36, 113,
507
- 113, 113, 113, 113, 113, 36, 36, 36,
508
- 36, 36, 36, 36, 36, 36, 36, 36,
509
- 36, 36, 36, 36, 36, 36, 36, 36,
510
- 36, 36, 36, 36, 36, 36, 36, 113,
511
- 113, 113, 113, 113, 113, 36, 114, 114,
512
- 114, 114, 114, 114, 114, 114, 114, 114,
513
- 36, 36, 36, 36, 36, 36, 36, 114,
514
- 114, 114, 114, 114, 114, 36, 36, 36,
515
- 36, 36, 36, 36, 36, 36, 36, 36,
516
- 36, 36, 36, 36, 36, 36, 36, 36,
517
- 36, 36, 36, 36, 36, 36, 36, 114,
518
- 114, 114, 114, 114, 114, 36, 115, 115,
519
- 115, 115, 115, 115, 115, 115, 115, 115,
520
- 36, 36, 36, 36, 36, 36, 36, 115,
521
- 115, 115, 115, 115, 115, 36, 36, 36,
522
- 36, 36, 36, 36, 36, 36, 36, 36,
523
- 36, 36, 36, 36, 36, 36, 36, 36,
524
- 36, 36, 36, 36, 36, 36, 36, 115,
525
- 115, 115, 115, 115, 115, 36, 116, 116,
386
+ 33, 33, 33, 34, 33, 33, 33, 34,
387
+ 34, 34, 34, 34, 34, 34, 34, 34,
388
+ 34, 34, 34, 34, 34, 34, 34, 34,
389
+ 34, 34, 34, 34, 34, 34, 34, 34,
390
+ 34, 33, 33, 33, 35, 34, 33, 34,
391
+ 34, 34, 34, 34, 34, 34, 34, 34,
392
+ 34, 34, 34, 34, 34, 34, 34, 34,
393
+ 34, 34, 34, 34, 34, 34, 34, 34,
394
+ 34, 33, 34, 34, 34, 34, 34, 33,
395
+ 33, 33, 33, 33, 33, 33, 33, 33,
396
+ 33, 33, 33, 33, 33, 33, 33, 33,
397
+ 33, 34, 33, 33, 33, 33, 33, 33,
398
+ 33, 33, 33, 33, 33, 33, 34, 34,
399
+ 33, 34, 34, 34, 34, 34, 34, 34,
400
+ 34, 34, 34, 33, 33, 33, 34, 33,
401
+ 33, 33, 34, 34, 34, 34, 34, 34,
402
+ 34, 34, 34, 34, 34, 34, 34, 34,
403
+ 34, 34, 34, 34, 34, 34, 34, 34,
404
+ 34, 34, 34, 34, 33, 33, 33, 33,
405
+ 34, 33, 34, 34, 34, 34, 34, 34,
406
+ 34, 34, 34, 34, 34, 34, 34, 34,
407
+ 34, 34, 34, 34, 34, 34, 34, 34,
408
+ 34, 34, 34, 34, 33, 33, 36, 33,
409
+ 34, 34, 34, 34, 34, 33, 33, 33,
410
+ 33, 33, 33, 33, 33, 33, 33, 33,
411
+ 33, 33, 33, 33, 33, 33, 33, 34,
412
+ 33, 33, 33, 33, 33, 33, 33, 33,
413
+ 33, 33, 33, 33, 34, 34, 33, 34,
414
+ 34, 34, 34, 34, 34, 34, 34, 34,
415
+ 34, 33, 33, 33, 34, 33, 33, 33,
416
+ 34, 34, 34, 34, 34, 34, 34, 34,
417
+ 34, 34, 34, 34, 34, 34, 34, 34,
418
+ 34, 34, 34, 34, 34, 34, 34, 34,
419
+ 34, 34, 33, 33, 33, 33, 34, 33,
420
+ 34, 34, 34, 34, 34, 34, 34, 34,
421
+ 34, 34, 34, 34, 34, 34, 34, 34,
422
+ 34, 34, 34, 34, 34, 34, 34, 34,
423
+ 34, 34, 33, 38, 38, 38, 38, 38,
424
+ 38, 38, 38, 38, 38, 38, 38, 38,
425
+ 38, 38, 38, 38, 38, 38, 38, 38,
426
+ 38, 38, 38, 38, 38, 38, 38, 38,
427
+ 38, 38, 38, 38, 38, 38, 38, 38,
428
+ 38, 38, 38, 38, 38, 38, 38, 38,
429
+ 38, 38, 38, 38, 38, 38, 38, 38,
430
+ 38, 38, 38, 38, 38, 38, 38, 38,
431
+ 38, 38, 38, 37, 39, 39, 39, 39,
432
+ 39, 39, 39, 39, 39, 39, 39, 39,
433
+ 39, 39, 39, 39, 39, 39, 39, 39,
434
+ 39, 39, 39, 39, 39, 39, 39, 39,
435
+ 39, 39, 39, 39, 39, 39, 39, 39,
436
+ 39, 39, 39, 39, 39, 39, 39, 39,
437
+ 39, 39, 39, 39, 39, 39, 39, 39,
438
+ 39, 39, 39, 39, 39, 39, 39, 39,
439
+ 39, 39, 39, 39, 37, 41, 40, 44,
440
+ 43, 43, 43, 43, 43, 43, 43, 43,
441
+ 43, 43, 43, 43, 43, 43, 43, 43,
442
+ 43, 43, 43, 44, 44, 44, 44, 44,
443
+ 44, 44, 44, 44, 44, 44, 44, 44,
444
+ 44, 44, 44, 44, 44, 44, 44, 44,
445
+ 44, 44, 44, 44, 44, 43, 43, 43,
446
+ 43, 43, 43, 44, 44, 44, 44, 44,
447
+ 44, 44, 44, 44, 44, 44, 44, 44,
448
+ 44, 44, 44, 44, 44, 44, 44, 44,
449
+ 44, 44, 44, 44, 44, 43, 44, 45,
450
+ 43, 43, 43, 43, 43, 43, 43, 43,
451
+ 43, 43, 43, 43, 43, 43, 43, 43,
452
+ 43, 43, 44, 44, 44, 44, 44, 44,
453
+ 44, 44, 44, 44, 44, 44, 44, 44,
454
+ 44, 44, 44, 44, 44, 44, 44, 44,
455
+ 44, 44, 44, 44, 43, 43, 43, 43,
456
+ 43, 43, 44, 44, 44, 44, 44, 44,
457
+ 44, 44, 44, 44, 44, 44, 44, 44,
458
+ 44, 44, 44, 44, 44, 44, 44, 44,
459
+ 44, 44, 44, 44, 43, 46, 43, 47,
460
+ 43, 43, 48, 49, 50, 51, 43, 43,
461
+ 52, 43, 43, 43, 43, 53, 43, 43,
462
+ 43, 54, 43, 43, 55, 43, 56, 43,
463
+ 57, 58, 43, 48, 49, 50, 51, 43,
464
+ 43, 52, 43, 43, 43, 43, 53, 43,
465
+ 43, 43, 54, 43, 43, 55, 43, 56,
466
+ 43, 57, 58, 43, 59, 43, 43, 43,
467
+ 43, 43, 43, 60, 43, 61, 43, 62,
468
+ 43, 63, 43, 64, 43, 65, 43, 66,
469
+ 43, 67, 43, 64, 43, 68, 43, 69,
470
+ 43, 64, 43, 70, 43, 71, 43, 72,
471
+ 43, 64, 43, 73, 43, 74, 43, 75,
472
+ 43, 64, 43, 76, 43, 77, 43, 78,
473
+ 43, 64, 43, 79, 43, 80, 43, 81,
474
+ 43, 64, 43, 82, 43, 83, 43, 84,
475
+ 43, 64, 43, 85, 43, 43, 86, 43,
476
+ 87, 43, 78, 43, 88, 43, 78, 43,
477
+ 89, 43, 90, 43, 91, 43, 64, 43,
478
+ 92, 43, 83, 43, 93, 43, 94, 43,
479
+ 64, 43, 51, 43, 95, 95, 95, 95,
480
+ 95, 95, 95, 95, 95, 95, 95, 95,
481
+ 95, 95, 95, 95, 95, 95, 95, 95,
482
+ 95, 95, 95, 95, 95, 95, 43, 43,
483
+ 43, 43, 43, 43, 95, 95, 95, 95,
484
+ 95, 95, 95, 95, 95, 95, 95, 95,
485
+ 95, 95, 95, 95, 95, 95, 95, 95,
486
+ 95, 95, 95, 95, 95, 95, 43, 96,
487
+ 43, 97, 43, 98, 33, 100, 99, 102,
488
+ 99, 103, 33, 105, 104, 107, 104, 108,
489
+ 108, 108, 108, 108, 108, 108, 108, 108,
490
+ 108, 33, 33, 33, 33, 33, 33, 33,
491
+ 108, 108, 108, 108, 108, 108, 33, 33,
492
+ 33, 33, 33, 33, 33, 33, 33, 33,
493
+ 33, 33, 33, 33, 33, 33, 33, 33,
494
+ 33, 33, 33, 33, 33, 33, 33, 33,
495
+ 108, 108, 108, 108, 108, 108, 33, 33,
496
+ 33, 33, 33, 33, 33, 33, 33, 33,
497
+ 33, 33, 33, 33, 33, 33, 33, 33,
498
+ 33, 33, 109, 33, 110, 110, 110, 110,
499
+ 110, 110, 110, 110, 110, 110, 33, 33,
500
+ 33, 33, 33, 33, 33, 110, 110, 110,
501
+ 110, 110, 110, 33, 33, 33, 33, 33,
502
+ 33, 33, 33, 33, 33, 33, 33, 33,
503
+ 33, 33, 33, 33, 33, 33, 33, 33,
504
+ 33, 33, 33, 33, 33, 110, 110, 110,
505
+ 110, 110, 110, 33, 111, 111, 111, 111,
506
+ 111, 111, 111, 111, 111, 111, 33, 33,
507
+ 33, 33, 33, 33, 33, 111, 111, 111,
508
+ 111, 111, 111, 33, 33, 33, 33, 33,
509
+ 33, 33, 33, 33, 33, 33, 33, 33,
510
+ 33, 33, 33, 33, 33, 33, 33, 33,
511
+ 33, 33, 33, 33, 33, 111, 111, 111,
512
+ 111, 111, 111, 33, 112, 112, 112, 112,
513
+ 112, 112, 112, 112, 112, 112, 33, 33,
514
+ 33, 33, 33, 33, 33, 112, 112, 112,
515
+ 112, 112, 112, 33, 33, 33, 33, 33,
516
+ 33, 33, 33, 33, 33, 33, 33, 33,
517
+ 33, 33, 33, 33, 33, 33, 33, 33,
518
+ 33, 33, 33, 33, 33, 112, 112, 112,
519
+ 112, 112, 112, 33, 113, 113, 113, 113,
520
+ 113, 113, 113, 113, 113, 113, 33, 33,
521
+ 33, 33, 33, 33, 33, 113, 113, 113,
522
+ 113, 113, 113, 33, 33, 33, 33, 33,
523
+ 33, 33, 33, 33, 33, 33, 33, 33,
524
+ 33, 33, 33, 33, 33, 33, 33, 33,
525
+ 33, 33, 33, 33, 33, 113, 113, 113,
526
+ 113, 113, 113, 33, 109, 109, 109, 109,
527
+ 109, 33, 33, 33, 33, 33, 33, 33,
528
+ 33, 33, 33, 33, 33, 33, 33, 33,
529
+ 33, 33, 33, 109, 33, 33, 33, 33,
530
+ 33, 33, 33, 33, 33, 33, 33, 33,
531
+ 33, 33, 33, 114, 114, 114, 114, 114,
532
+ 114, 114, 114, 114, 114, 33, 33, 33,
533
+ 33, 33, 33, 33, 114, 114, 114, 114,
534
+ 114, 114, 33, 33, 33, 33, 33, 33,
535
+ 33, 33, 33, 33, 33, 33, 33, 33,
536
+ 33, 33, 33, 33, 33, 33, 33, 33,
537
+ 33, 33, 33, 33, 114, 114, 114, 114,
538
+ 114, 114, 33, 33, 33, 33, 33, 33,
539
+ 33, 33, 33, 33, 33, 33, 33, 33,
540
+ 33, 33, 33, 33, 33, 33, 33, 33,
541
+ 112, 33, 109, 109, 109, 109, 109, 33,
542
+ 33, 33, 33, 33, 33, 33, 33, 33,
543
+ 33, 33, 33, 33, 33, 33, 33, 33,
544
+ 33, 109, 33, 33, 33, 33, 33, 33,
545
+ 33, 33, 33, 33, 33, 33, 33, 33,
546
+ 33, 115, 115, 115, 115, 115, 115, 115,
547
+ 115, 115, 115, 33, 33, 33, 33, 33,
548
+ 33, 33, 115, 115, 115, 115, 115, 115,
549
+ 33, 33, 33, 33, 33, 33, 33, 33,
550
+ 33, 33, 33, 33, 33, 33, 33, 33,
551
+ 33, 33, 33, 33, 33, 33, 33, 33,
552
+ 33, 33, 115, 115, 115, 115, 115, 115,
553
+ 33, 33, 33, 33, 33, 33, 33, 33,
554
+ 33, 33, 33, 33, 33, 33, 33, 33,
555
+ 33, 33, 33, 33, 33, 33, 112, 33,
556
+ 109, 109, 109, 109, 109, 33, 33, 33,
557
+ 33, 33, 33, 33, 33, 33, 33, 33,
558
+ 33, 33, 33, 33, 33, 33, 33, 109,
559
+ 33, 33, 33, 33, 33, 33, 33, 33,
560
+ 33, 33, 33, 33, 33, 33, 33, 116,
526
561
  116, 116, 116, 116, 116, 116, 116, 116,
527
- 36, 36, 36, 36, 36, 36, 36, 116,
528
- 116, 116, 116, 116, 116, 36, 36, 36,
529
- 36, 36, 36, 36, 36, 36, 36, 36,
530
- 36, 36, 36, 36, 36, 36, 36, 36,
531
- 36, 36, 36, 36, 36, 36, 36, 116,
532
- 116, 116, 116, 116, 116, 36, 112, 112,
533
- 112, 112, 112, 36, 36, 36, 36, 36,
534
- 36, 36, 36, 36, 36, 36, 36, 36,
535
- 36, 36, 36, 36, 36, 112, 36, 36,
536
- 36, 36, 36, 36, 36, 36, 36, 36,
537
- 36, 36, 36, 36, 36, 117, 117, 117,
538
- 117, 117, 117, 117, 117, 117, 117, 36,
539
- 36, 36, 36, 36, 36, 36, 117, 117,
540
- 117, 117, 117, 117, 36, 36, 36, 36,
541
- 36, 36, 36, 36, 36, 36, 36, 36,
542
- 36, 36, 36, 36, 36, 36, 36, 36,
543
- 36, 36, 36, 36, 36, 36, 117, 117,
544
- 117, 117, 117, 117, 36, 36, 36, 36,
545
- 36, 36, 36, 36, 36, 36, 36, 36,
546
- 36, 36, 36, 36, 36, 36, 36, 36,
547
- 36, 36, 115, 36, 112, 112, 112, 112,
548
- 112, 36, 36, 36, 36, 36, 36, 36,
549
- 36, 36, 36, 36, 36, 36, 36, 36,
550
- 36, 36, 36, 112, 36, 36, 36, 36,
551
- 36, 36, 36, 36, 36, 36, 36, 36,
552
- 36, 36, 36, 118, 118, 118, 118, 118,
553
- 118, 118, 118, 118, 118, 36, 36, 36,
554
- 36, 36, 36, 36, 118, 118, 118, 118,
555
- 118, 118, 36, 36, 36, 36, 36, 36,
556
- 36, 36, 36, 36, 36, 36, 36, 36,
557
- 36, 36, 36, 36, 36, 36, 36, 36,
558
- 36, 36, 36, 36, 118, 118, 118, 118,
559
- 118, 118, 36, 36, 36, 36, 36, 36,
560
- 36, 36, 36, 36, 36, 36, 36, 36,
561
- 36, 36, 36, 36, 36, 36, 36, 36,
562
- 115, 36, 112, 112, 112, 112, 112, 36,
563
- 36, 36, 36, 36, 36, 36, 36, 36,
564
- 36, 36, 36, 36, 36, 36, 36, 36,
565
- 36, 112, 36, 36, 36, 36, 36, 36,
566
- 36, 36, 36, 36, 36, 36, 36, 36,
567
- 36, 119, 119, 119, 119, 119, 119, 119,
568
- 119, 119, 119, 36, 36, 36, 36, 36,
569
- 36, 36, 119, 119, 119, 119, 119, 119,
570
- 36, 36, 36, 36, 36, 36, 36, 36,
571
- 36, 36, 36, 36, 36, 36, 36, 36,
572
- 36, 36, 36, 36, 36, 36, 36, 36,
573
- 36, 36, 119, 119, 119, 119, 119, 119,
574
- 36, 36, 36, 36, 36, 36, 36, 36,
575
- 36, 36, 36, 36, 36, 36, 36, 36,
576
- 36, 36, 36, 36, 36, 36, 115, 36,
577
- 112, 112, 112, 112, 112, 36, 36, 36,
578
- 36, 36, 36, 36, 36, 36, 36, 36,
579
- 36, 36, 36, 36, 36, 36, 36, 112,
580
- 36, 36, 36, 36, 36, 36, 36, 36,
581
- 36, 36, 36, 36, 36, 36, 36, 120,
562
+ 116, 33, 33, 33, 33, 33, 33, 33,
563
+ 116, 116, 116, 116, 116, 116, 33, 33,
564
+ 33, 33, 33, 33, 33, 33, 33, 33,
565
+ 33, 33, 33, 33, 33, 33, 33, 33,
566
+ 33, 33, 33, 33, 33, 33, 33, 33,
567
+ 116, 116, 116, 116, 116, 116, 33, 33,
568
+ 33, 33, 33, 33, 33, 33, 33, 33,
569
+ 33, 33, 33, 33, 33, 33, 33, 33,
570
+ 33, 33, 33, 33, 112, 33, 109, 109,
571
+ 109, 109, 109, 33, 33, 33, 33, 33,
572
+ 33, 33, 33, 33, 33, 33, 33, 33,
573
+ 33, 33, 33, 33, 33, 109, 33, 33,
574
+ 33, 33, 33, 33, 33, 33, 33, 33,
575
+ 33, 33, 33, 33, 33, 117, 117, 117,
576
+ 117, 117, 117, 117, 117, 117, 117, 33,
577
+ 33, 33, 33, 33, 33, 33, 117, 117,
578
+ 117, 117, 117, 117, 33, 33, 33, 33,
579
+ 33, 33, 33, 33, 33, 33, 33, 33,
580
+ 33, 33, 33, 33, 33, 33, 33, 33,
581
+ 33, 33, 33, 33, 33, 33, 117, 117,
582
+ 117, 117, 117, 117, 33, 33, 33, 33,
583
+ 33, 33, 33, 33, 33, 33, 33, 33,
584
+ 33, 33, 33, 33, 33, 33, 33, 33,
585
+ 33, 33, 112, 33, 109, 109, 109, 109,
586
+ 109, 33, 33, 33, 33, 33, 33, 33,
587
+ 33, 33, 33, 33, 33, 33, 33, 33,
588
+ 33, 33, 33, 109, 33, 33, 33, 33,
589
+ 33, 33, 33, 33, 33, 33, 33, 33,
590
+ 33, 33, 33, 118, 118, 118, 118, 118,
591
+ 118, 118, 118, 118, 118, 33, 33, 33,
592
+ 33, 33, 33, 33, 118, 118, 118, 118,
593
+ 118, 118, 33, 33, 33, 33, 33, 33,
594
+ 33, 33, 33, 33, 33, 33, 33, 33,
595
+ 33, 33, 33, 33, 33, 33, 33, 33,
596
+ 33, 33, 33, 33, 118, 118, 118, 118,
597
+ 118, 118, 33, 33, 33, 33, 33, 33,
598
+ 33, 33, 33, 33, 33, 33, 33, 33,
599
+ 33, 33, 33, 33, 33, 33, 33, 33,
600
+ 112, 33, 109, 109, 109, 109, 109, 33,
601
+ 33, 33, 33, 33, 33, 33, 33, 33,
602
+ 33, 33, 33, 33, 33, 33, 33, 33,
603
+ 33, 109, 33, 33, 33, 33, 33, 33,
604
+ 33, 33, 33, 33, 33, 33, 33, 33,
605
+ 33, 33, 33, 33, 33, 33, 33, 33,
606
+ 33, 33, 33, 33, 33, 33, 33, 33,
607
+ 33, 33, 33, 33, 33, 33, 33, 33,
608
+ 33, 33, 33, 33, 33, 33, 33, 33,
609
+ 33, 33, 33, 33, 33, 33, 33, 33,
610
+ 33, 33, 33, 33, 33, 33, 33, 33,
611
+ 33, 33, 33, 33, 33, 33, 33, 33,
612
+ 33, 33, 33, 33, 33, 33, 33, 33,
613
+ 33, 33, 33, 33, 33, 33, 33, 33,
614
+ 33, 33, 33, 33, 33, 33, 112, 33,
582
615
  120, 120, 120, 120, 120, 120, 120, 120,
583
- 120, 36, 36, 36, 36, 36, 36, 36,
584
- 120, 120, 120, 120, 120, 120, 36, 36,
585
- 36, 36, 36, 36, 36, 36, 36, 36,
586
- 36, 36, 36, 36, 36, 36, 36, 36,
587
- 36, 36, 36, 36, 36, 36, 36, 36,
588
- 120, 120, 120, 120, 120, 120, 36, 36,
589
- 36, 36, 36, 36, 36, 36, 36, 36,
590
- 36, 36, 36, 36, 36, 36, 36, 36,
591
- 36, 36, 36, 36, 115, 36, 112, 112,
592
- 112, 112, 112, 36, 36, 36, 36, 36,
593
- 36, 36, 36, 36, 36, 36, 36, 36,
594
- 36, 36, 36, 36, 36, 112, 36, 36,
595
- 36, 36, 36, 36, 36, 36, 36, 36,
596
- 36, 36, 36, 36, 36, 121, 121, 121,
597
- 121, 121, 121, 121, 121, 121, 121, 36,
598
- 36, 36, 36, 36, 36, 36, 121, 121,
599
- 121, 121, 121, 121, 36, 36, 36, 36,
600
- 36, 36, 36, 36, 36, 36, 36, 36,
601
- 36, 36, 36, 36, 36, 36, 36, 36,
602
- 36, 36, 36, 36, 36, 36, 121, 121,
603
- 121, 121, 121, 121, 36, 36, 36, 36,
604
- 36, 36, 36, 36, 36, 36, 36, 36,
605
- 36, 36, 36, 36, 36, 36, 36, 36,
606
- 36, 36, 115, 36, 112, 112, 112, 112,
607
- 112, 36, 36, 36, 36, 36, 36, 36,
608
- 36, 36, 36, 36, 36, 36, 36, 36,
609
- 36, 36, 36, 112, 36, 36, 36, 36,
610
- 36, 36, 36, 36, 36, 36, 36, 36,
611
- 36, 36, 36, 36, 36, 36, 36, 36,
612
- 36, 36, 36, 36, 36, 36, 36, 36,
613
- 36, 36, 36, 36, 36, 36, 36, 36,
614
- 36, 36, 36, 36, 36, 36, 36, 36,
615
- 36, 36, 36, 36, 36, 36, 36, 36,
616
- 36, 36, 36, 36, 36, 36, 36, 36,
617
- 36, 36, 36, 36, 36, 36, 36, 36,
618
- 36, 36, 36, 36, 36, 36, 36, 36,
619
- 36, 36, 36, 36, 36, 36, 36, 36,
620
- 36, 36, 36, 36, 36, 36, 36, 36,
621
- 115, 36, 123, 123, 123, 123, 123, 123,
622
- 123, 123, 123, 123, 122, 122, 122, 122,
623
- 122, 122, 122, 123, 123, 123, 123, 123,
624
- 123, 122, 122, 122, 122, 122, 122, 122,
625
- 122, 122, 122, 122, 122, 122, 122, 122,
626
- 122, 122, 122, 122, 122, 122, 122, 122,
627
- 122, 122, 122, 123, 123, 123, 123, 123,
628
- 123, 122, 122, 122, 122, 122, 122, 122,
629
- 122, 122, 122, 122, 122, 122, 122, 122,
630
- 122, 122, 122, 122, 122, 36, 122, 125,
631
- 124, 126, 124, 124, 124, 124, 124, 124,
632
- 124, 124, 127, 127, 127, 127, 127, 127,
633
- 127, 127, 127, 127, 124, 124, 124, 124,
634
- 124, 124, 124, 127, 127, 127, 127, 127,
616
+ 120, 120, 119, 119, 119, 119, 119, 119,
617
+ 119, 120, 120, 120, 120, 120, 120, 119,
618
+ 119, 119, 119, 119, 119, 119, 119, 119,
619
+ 119, 119, 119, 119, 119, 119, 119, 119,
620
+ 119, 119, 119, 119, 119, 119, 119, 119,
621
+ 119, 120, 120, 120, 120, 120, 120, 119,
622
+ 119, 119, 119, 119, 119, 119, 119, 119,
623
+ 119, 119, 119, 119, 119, 119, 119, 119,
624
+ 119, 119, 119, 33, 119, 122, 121, 123,
625
+ 121, 121, 121, 121, 121, 121, 121, 121,
626
+ 124, 124, 124, 124, 124, 124, 124, 124,
627
+ 124, 124, 121, 121, 121, 121, 121, 121,
628
+ 121, 124, 124, 124, 124, 124, 124, 124,
629
+ 124, 124, 124, 124, 124, 124, 124, 124,
630
+ 124, 124, 124, 124, 124, 124, 124, 124,
631
+ 124, 124, 124, 121, 121, 121, 121, 124,
632
+ 121, 124, 124, 124, 124, 124, 124, 124,
633
+ 124, 124, 124, 124, 124, 124, 124, 124,
634
+ 124, 124, 124, 124, 124, 124, 124, 124,
635
+ 124, 124, 124, 121, 122, 121, 121, 121,
636
+ 121, 121, 121, 125, 125, 125, 125, 125,
637
+ 125, 125, 125, 125, 125, 121, 126, 126,
638
+ 126, 126, 126, 126, 126, 126, 126, 126,
639
+ 121, 121, 121, 121, 123, 121, 121, 126,
640
+ 126, 126, 126, 126, 126, 126, 126, 126,
641
+ 126, 126, 126, 126, 126, 126, 126, 126,
642
+ 126, 126, 126, 126, 126, 126, 126, 126,
643
+ 126, 121, 121, 121, 121, 126, 121, 126,
644
+ 126, 126, 126, 126, 126, 126, 126, 126,
645
+ 126, 126, 126, 126, 126, 126, 126, 126,
646
+ 126, 126, 126, 126, 126, 126, 126, 126,
647
+ 126, 121, 33, 33, 33, 33, 33, 33,
648
+ 33, 33, 33, 33, 33, 33, 33, 33,
649
+ 33, 33, 33, 33, 33, 33, 33, 33,
650
+ 33, 33, 33, 33, 33, 33, 33, 33,
651
+ 33, 33, 33, 33, 33, 33, 33, 33,
652
+ 33, 33, 33, 33, 33, 33, 33, 33,
653
+ 33, 33, 33, 33, 33, 33, 33, 33,
654
+ 33, 33, 33, 33, 33, 33, 33, 33,
655
+ 33, 33, 33, 33, 127, 127, 127, 127,
635
656
  127, 127, 127, 127, 127, 127, 127, 127,
636
657
  127, 127, 127, 127, 127, 127, 127, 127,
637
- 127, 127, 127, 127, 127, 124, 124, 124,
638
- 124, 127, 124, 127, 127, 127, 127, 127,
639
658
  127, 127, 127, 127, 127, 127, 127, 127,
640
- 127, 127, 127, 127, 127, 127, 127, 127,
641
- 127, 127, 127, 127, 127, 124, 125, 124,
642
- 124, 124, 124, 124, 124, 128, 128, 128,
643
- 128, 128, 128, 128, 128, 128, 128, 124,
644
- 129, 129, 129, 129, 129, 129, 129, 129,
645
- 129, 129, 124, 124, 124, 124, 126, 124,
646
- 124, 129, 129, 129, 129, 129, 129, 129,
647
- 129, 129, 129, 129, 129, 129, 129, 129,
648
- 129, 129, 129, 129, 129, 129, 129, 129,
649
- 129, 129, 129, 124, 124, 124, 124, 129,
650
- 124, 129, 129, 129, 129, 129, 129, 129,
651
- 129, 129, 129, 129, 129, 129, 129, 129,
652
- 129, 129, 129, 129, 129, 129, 129, 129,
653
- 129, 129, 129, 124, 36, 36, 36, 36,
654
- 36, 36, 36, 36, 36, 36, 36, 36,
655
- 36, 36, 36, 36, 36, 36, 36, 36,
656
- 36, 36, 36, 36, 36, 36, 36, 36,
657
- 36, 36, 36, 36, 36, 36, 36, 36,
658
- 36, 36, 36, 36, 36, 36, 36, 36,
659
- 36, 36, 36, 36, 36, 36, 36, 36,
660
- 36, 36, 36, 36, 36, 36, 36, 36,
661
- 36, 36, 36, 36, 36, 36, 130, 130,
662
- 130, 130, 130, 130, 130, 130, 130, 130,
659
+ 127, 127, 128, 128, 128, 128, 128, 128,
660
+ 128, 128, 128, 128, 128, 128, 128, 128,
661
+ 128, 128, 129, 129, 129, 129, 129, 33,
662
+ 33, 33, 33, 33, 33, 33, 33, 33,
663
+ 33, 33, 33, 130, 130, 130, 130, 130,
664
+ 130, 130, 130, 131, 131, 131, 131, 131,
663
665
  130, 130, 130, 130, 130, 130, 130, 130,
664
666
  130, 130, 130, 130, 130, 130, 130, 130,
665
- 130, 130, 130, 130, 131, 131, 131, 131,
666
- 131, 131, 131, 131, 131, 131, 131, 131,
667
- 131, 131, 131, 131, 132, 132, 132, 132,
668
- 132, 36, 36, 36, 36, 36, 36, 36,
669
- 36, 36, 36, 36, 36, 133, 133, 133,
670
- 133, 133, 133, 133, 133, 134, 134, 134,
671
- 134, 134, 133, 133, 133, 133, 133, 133,
667
+ 130, 130, 132, 133, 133, 134, 135, 133,
668
+ 133, 133, 136, 137, 138, 139, 133, 133,
669
+ 140, 133, 133, 133, 133, 133, 133, 133,
672
670
  133, 133, 133, 133, 133, 133, 133, 133,
673
- 133, 133, 133, 133, 135, 136, 136, 137,
674
- 138, 136, 136, 136, 139, 140, 141, 142,
675
- 136, 136, 143, 136, 136, 136, 136, 136,
676
- 136, 136, 136, 136, 136, 136, 136, 136,
677
- 136, 136, 136, 144, 136, 136, 136, 136,
678
- 136, 136, 136, 136, 136, 136, 136, 136,
679
- 136, 136, 136, 136, 136, 136, 136, 136,
680
- 136, 136, 136, 136, 136, 136, 136, 145,
681
- 146, 147, 148, 136, 136, 136, 136, 136,
682
- 136, 136, 136, 136, 136, 136, 136, 136,
683
- 136, 136, 136, 136, 136, 136, 136, 136,
684
- 136, 136, 136, 136, 136, 136, 136, 149,
685
- 150, 147, 136, 133, 136, 130, 130, 130,
671
+ 133, 141, 133, 133, 133, 133, 133, 133,
672
+ 133, 133, 133, 133, 133, 133, 133, 133,
673
+ 133, 133, 133, 133, 133, 133, 133, 133,
674
+ 133, 133, 133, 133, 133, 142, 143, 144,
675
+ 145, 133, 133, 133, 133, 133, 133, 133,
676
+ 133, 133, 133, 133, 133, 133, 133, 133,
677
+ 133, 133, 133, 133, 133, 133, 133, 133,
678
+ 133, 133, 133, 133, 133, 146, 147, 144,
679
+ 133, 130, 133, 127, 127, 127, 127, 127,
680
+ 127, 127, 127, 127, 127, 127, 127, 127,
681
+ 127, 127, 127, 127, 127, 127, 127, 127,
682
+ 127, 127, 127, 127, 127, 127, 127, 127,
683
+ 127, 148, 128, 128, 128, 128, 128, 128,
684
+ 128, 128, 128, 128, 128, 128, 128, 128,
685
+ 128, 128, 148, 129, 129, 129, 129, 129,
686
+ 148, 130, 130, 130, 130, 130, 130, 130,
687
+ 130, 130, 130, 130, 130, 130, 130, 130,
686
688
  130, 130, 130, 130, 130, 130, 130, 130,
687
689
  130, 130, 130, 130, 130, 130, 130, 130,
690
+ 148, 148, 148, 148, 148, 148, 148, 148,
691
+ 148, 148, 148, 148, 148, 148, 148, 148,
692
+ 148, 148, 148, 148, 148, 148, 148, 148,
693
+ 148, 148, 148, 148, 148, 148, 148, 148,
694
+ 148, 148, 148, 148, 148, 148, 148, 148,
695
+ 148, 148, 148, 148, 148, 148, 148, 148,
696
+ 148, 148, 148, 148, 148, 148, 148, 148,
697
+ 148, 148, 148, 148, 148, 148, 148, 148,
698
+ 148, 148, 148, 148, 148, 148, 148, 148,
699
+ 148, 148, 148, 148, 148, 148, 148, 148,
700
+ 148, 148, 148, 148, 148, 148, 148, 148,
701
+ 148, 148, 148, 148, 148, 148, 148, 130,
702
+ 148, 130, 130, 130, 130, 130, 130, 130,
703
+ 130, 131, 131, 131, 131, 131, 130, 130,
688
704
  130, 130, 130, 130, 130, 130, 130, 130,
689
- 130, 130, 130, 151, 131, 131, 131, 131,
690
- 131, 131, 131, 131, 131, 131, 131, 131,
691
- 131, 131, 131, 131, 151, 132, 132, 132,
692
- 132, 132, 151, 133, 133, 133, 133, 133,
705
+ 130, 130, 130, 130, 130, 130, 130, 130,
706
+ 132, 149, 149, 149, 149, 149, 149, 149,
707
+ 149, 149, 149, 149, 149, 149, 149, 149,
708
+ 149, 149, 149, 149, 149, 149, 149, 149,
709
+ 149, 149, 149, 149, 149, 149, 149, 149,
710
+ 149, 149, 149, 149, 149, 149, 149, 149,
711
+ 149, 149, 149, 149, 149, 149, 149, 149,
712
+ 149, 149, 149, 149, 149, 149, 149, 149,
713
+ 149, 149, 149, 149, 149, 149, 149, 149,
714
+ 149, 149, 149, 149, 149, 149, 149, 149,
715
+ 149, 149, 149, 149, 149, 149, 149, 149,
716
+ 149, 149, 149, 149, 149, 149, 149, 149,
717
+ 149, 149, 149, 149, 149, 149, 149, 130,
718
+ 149, 132, 132, 132, 132, 132, 149, 149,
719
+ 149, 149, 149, 149, 149, 149, 149, 149,
720
+ 149, 149, 149, 149, 149, 149, 149, 149,
721
+ 132, 149, 133, 133, 148, 148, 133, 133,
722
+ 133, 148, 148, 148, 148, 133, 133, 148,
693
723
  133, 133, 133, 133, 133, 133, 133, 133,
694
724
  133, 133, 133, 133, 133, 133, 133, 133,
725
+ 148, 133, 133, 133, 133, 133, 133, 133,
695
726
  133, 133, 133, 133, 133, 133, 133, 133,
696
- 133, 133, 151, 151, 151, 151, 151, 151,
697
- 151, 151, 151, 151, 151, 151, 151, 151,
698
- 151, 151, 151, 151, 151, 151, 151, 151,
699
- 151, 151, 151, 151, 151, 151, 151, 151,
700
- 151, 151, 151, 151, 151, 151, 151, 151,
701
- 151, 151, 151, 151, 151, 151, 151, 151,
702
- 151, 151, 151, 151, 151, 151, 151, 151,
703
- 151, 151, 151, 151, 151, 151, 151, 151,
704
- 151, 151, 151, 151, 151, 151, 151, 151,
705
- 151, 151, 151, 151, 151, 151, 151, 151,
706
- 151, 151, 151, 151, 151, 151, 151, 151,
707
- 151, 151, 151, 151, 151, 151, 151, 151,
708
- 151, 133, 151, 133, 133, 133, 133, 133,
709
- 133, 133, 133, 134, 134, 134, 134, 134,
710
727
  133, 133, 133, 133, 133, 133, 133, 133,
728
+ 133, 133, 133, 133, 148, 148, 148, 148,
711
729
  133, 133, 133, 133, 133, 133, 133, 133,
712
- 133, 133, 135, 152, 152, 152, 152, 152,
713
- 152, 152, 152, 152, 152, 152, 152, 152,
714
- 152, 152, 152, 152, 152, 152, 152, 152,
715
- 152, 152, 152, 152, 152, 152, 152, 152,
716
- 152, 152, 152, 152, 152, 152, 152, 152,
717
- 152, 152, 152, 152, 152, 152, 152, 152,
718
- 152, 152, 152, 152, 152, 152, 152, 152,
719
- 152, 152, 152, 152, 152, 152, 152, 152,
720
- 152, 152, 152, 152, 152, 152, 152, 152,
721
- 152, 152, 152, 152, 152, 152, 152, 152,
722
- 152, 152, 152, 152, 152, 152, 152, 152,
723
- 152, 152, 152, 152, 152, 152, 152, 152,
724
- 152, 133, 152, 135, 135, 135, 135, 135,
725
- 152, 152, 152, 152, 152, 152, 152, 152,
726
- 152, 152, 152, 152, 152, 152, 152, 152,
727
- 152, 152, 135, 152, 136, 136, 136, 151,
728
- 136, 136, 136, 151, 151, 151, 151, 136,
729
- 136, 151, 136, 136, 136, 136, 136, 136,
730
- 136, 136, 136, 136, 136, 136, 136, 136,
731
- 136, 136, 151, 136, 136, 136, 136, 136,
732
- 136, 136, 136, 136, 136, 136, 136, 136,
733
- 136, 136, 136, 136, 136, 136, 136, 136,
734
- 136, 136, 136, 136, 136, 136, 151, 151,
735
- 151, 151, 136, 136, 136, 136, 136, 136,
736
- 136, 136, 136, 136, 136, 136, 136, 136,
737
- 136, 136, 136, 136, 136, 136, 136, 136,
738
- 136, 136, 136, 136, 136, 136, 151, 151,
739
- 151, 136, 151, 9, 8, 8, 8, 8,
740
- 8, 8, 8, 8, 8, 8, 8, 8,
741
- 8, 8, 8, 8, 8, 8, 8, 8,
742
- 8, 8, 137, 137, 137, 8, 137, 137,
743
- 137, 8, 8, 8, 8, 137, 137, 8,
744
- 137, 137, 137, 137, 137, 137, 137, 137,
745
- 137, 137, 137, 137, 137, 137, 137, 137,
746
- 8, 137, 137, 137, 137, 137, 137, 137,
747
- 137, 137, 137, 137, 137, 137, 137, 137,
748
- 137, 137, 137, 137, 137, 137, 137, 137,
749
- 137, 137, 137, 137, 8, 8, 8, 8,
750
- 137, 137, 137, 137, 137, 137, 137, 137,
751
- 137, 137, 137, 137, 137, 137, 137, 137,
752
- 137, 137, 137, 137, 137, 137, 137, 137,
753
- 137, 137, 137, 137, 8, 8, 8, 137,
754
- 8, 154, 153, 15, 156, 11, 156, 156,
755
- 156, 14, 157, 155, 156, 156, 156, 156,
756
- 156, 156, 156, 156, 156, 156, 156, 156,
757
- 156, 156, 156, 156, 13, 156, 158, 15,
758
- 13, 156, 156, 156, 156, 156, 156, 156,
759
- 156, 156, 156, 156, 156, 156, 156, 156,
760
- 156, 156, 156, 156, 156, 156, 156, 156,
761
- 156, 156, 156, 156, 156, 156, 156, 156,
762
- 156, 156, 156, 156, 156, 156, 156, 156,
763
- 156, 156, 156, 156, 156, 156, 156, 156,
764
- 156, 156, 156, 156, 156, 156, 156, 156,
765
- 156, 156, 156, 156, 156, 156, 156, 156,
766
- 13, 156, 155, 156, 155, 156, 156, 156,
767
- 155, 155, 155, 156, 156, 156, 156, 156,
768
- 156, 156, 156, 156, 156, 156, 156, 156,
769
- 156, 156, 156, 159, 156, 155, 155, 155,
770
- 156, 156, 156, 156, 156, 156, 156, 156,
771
- 156, 156, 156, 156, 156, 156, 156, 156,
772
- 156, 156, 156, 156, 156, 156, 156, 156,
773
- 156, 156, 156, 156, 156, 156, 156, 156,
774
- 156, 156, 156, 156, 156, 156, 156, 156,
775
- 156, 156, 156, 156, 156, 156, 156, 156,
776
- 156, 156, 156, 156, 156, 156, 156, 156,
777
- 156, 156, 156, 156, 156, 156, 156, 155,
778
- 156, 161, 160, 160, 160, 160, 160, 160,
779
- 160, 160, 160, 160, 160, 160, 160, 160,
780
- 160, 160, 160, 160, 160, 161, 160, 163,
781
- 162, 162, 162, 162, 162, 162, 162, 162,
782
- 162, 162, 162, 162, 162, 162, 162, 162,
783
- 162, 162, 162, 163, 162, 165, 164, 164,
784
- 164, 164, 164, 164, 164, 164, 164, 164,
785
- 164, 164, 164, 164, 164, 164, 164, 164,
786
- 164, 165, 164, 167, 167, 166, 166, 166,
787
- 166, 167, 166, 166, 166, 168, 166, 166,
788
- 166, 166, 166, 166, 166, 166, 166, 166,
789
- 166, 166, 166, 166, 167, 166, 166, 166,
790
- 166, 166, 166, 166, 167, 166, 166, 166,
791
- 166, 169, 166, 166, 166, 169, 166, 166,
792
- 166, 166, 166, 166, 166, 166, 166, 166,
793
- 166, 166, 166, 166, 167, 166, 171, 170,
794
- 170, 170, 34, 34, 34, 34, 34, 34,
795
- 34, 34, 34, 34, 170, 173, 172, 172,
796
- 172, 172, 172, 172, 172, 172, 172, 172,
797
- 172, 172, 172, 172, 172, 172, 172, 172,
798
- 172, 173, 172, 174, 36, 36, 36, 174,
799
- 36, 36, 36, 36, 36, 36, 36, 36,
800
- 36, 174, 174, 36, 36, 36, 174, 174,
801
- 36, 36, 36, 36, 36, 36, 36, 36,
802
- 36, 36, 36, 174, 36, 36, 36, 174,
803
- 36, 36, 36, 36, 36, 36, 36, 36,
804
- 36, 36, 174, 36, 36, 36, 174, 36,
805
- 175, 36, 36, 36, 36, 36, 36, 36,
806
- 36, 36, 36, 36, 36, 36, 36, 36,
807
- 36, 36, 36, 36, 36, 36, 36, 36,
808
- 36, 36, 36, 36, 36, 36, 36, 36,
809
- 175, 36, 176, 176, 176, 176, 176, 176,
810
- 176, 176, 176, 176, 176, 176, 176, 176,
811
- 176, 176, 176, 176, 176, 176, 176, 176,
730
+ 133, 133, 133, 133, 133, 133, 133, 133,
731
+ 133, 133, 133, 133, 133, 133, 133, 133,
732
+ 133, 133, 133, 133, 148, 148, 148, 133,
733
+ 148, 151, 134, 153, 152, 12, 155, 8,
734
+ 155, 155, 155, 11, 156, 154, 155, 155,
735
+ 155, 155, 155, 155, 155, 155, 155, 155,
736
+ 155, 155, 155, 155, 155, 155, 10, 155,
737
+ 157, 12, 10, 155, 155, 155, 155, 155,
738
+ 155, 155, 155, 155, 155, 155, 155, 155,
739
+ 155, 155, 155, 155, 155, 155, 155, 155,
740
+ 155, 155, 155, 155, 155, 155, 155, 155,
741
+ 155, 155, 155, 155, 155, 155, 155, 155,
742
+ 155, 155, 155, 155, 155, 155, 155, 155,
743
+ 155, 155, 155, 155, 155, 155, 155, 155,
744
+ 155, 155, 155, 155, 155, 155, 155, 155,
745
+ 155, 155, 10, 155, 154, 155, 154, 155,
746
+ 155, 155, 154, 154, 154, 155, 155, 155,
747
+ 155, 155, 155, 155, 155, 155, 155, 155,
748
+ 155, 155, 155, 155, 155, 158, 155, 154,
749
+ 154, 154, 155, 155, 155, 155, 155, 155,
750
+ 155, 155, 155, 155, 155, 155, 155, 155,
751
+ 155, 155, 155, 155, 155, 155, 155, 155,
752
+ 155, 155, 155, 155, 155, 155, 155, 155,
753
+ 155, 155, 155, 155, 155, 155, 155, 155,
754
+ 155, 155, 155, 155, 155, 155, 155, 155,
755
+ 155, 155, 155, 155, 155, 155, 155, 155,
756
+ 155, 155, 155, 155, 155, 155, 155, 155,
757
+ 155, 154, 155, 160, 159, 159, 159, 159,
758
+ 159, 159, 159, 159, 159, 159, 159, 159,
759
+ 159, 159, 159, 159, 159, 159, 159, 160,
760
+ 159, 162, 161, 161, 161, 161, 161, 161,
761
+ 161, 161, 161, 161, 161, 161, 161, 161,
762
+ 161, 161, 161, 161, 161, 162, 161, 164,
763
+ 163, 163, 163, 163, 163, 163, 163, 163,
764
+ 163, 163, 163, 163, 163, 163, 163, 163,
765
+ 163, 163, 163, 164, 163, 166, 166, 165,
766
+ 165, 165, 165, 166, 165, 165, 165, 167,
767
+ 165, 165, 165, 165, 165, 165, 165, 165,
768
+ 165, 165, 165, 165, 165, 165, 166, 165,
769
+ 165, 165, 165, 165, 165, 165, 166, 165,
770
+ 165, 165, 165, 168, 165, 165, 165, 168,
771
+ 165, 165, 165, 165, 165, 165, 165, 165,
772
+ 165, 165, 165, 165, 165, 165, 166, 165,
773
+ 170, 169, 169, 169, 31, 31, 31, 31,
774
+ 31, 31, 31, 31, 31, 31, 169, 172,
775
+ 171, 171, 171, 171, 171, 171, 171, 171,
776
+ 171, 171, 171, 171, 171, 171, 171, 171,
777
+ 171, 171, 171, 172, 171, 173, 33, 33,
778
+ 33, 173, 33, 33, 33, 33, 33, 33,
779
+ 33, 33, 33, 173, 173, 33, 33, 33,
780
+ 173, 173, 33, 33, 33, 33, 33, 33,
781
+ 33, 33, 33, 33, 33, 173, 33, 33,
782
+ 33, 173, 33, 33, 33, 33, 33, 33,
783
+ 33, 33, 33, 33, 173, 33, 33, 33,
784
+ 173, 33, 174, 33, 33, 33, 33, 33,
785
+ 33, 33, 33, 33, 33, 33, 33, 33,
786
+ 33, 33, 33, 33, 33, 33, 33, 33,
787
+ 33, 33, 33, 33, 33, 33, 33, 33,
788
+ 33, 33, 174, 33, 175, 175, 175, 175,
789
+ 175, 175, 175, 175, 175, 175, 175, 175,
790
+ 175, 175, 175, 175, 175, 175, 175, 175,
791
+ 175, 175, 175, 175, 175, 175, 175, 175,
792
+ 175, 175, 176, 176, 176, 176, 176, 176,
812
793
  176, 176, 176, 176, 176, 176, 176, 176,
813
- 177, 177, 177, 177, 177, 177, 177, 177,
814
- 177, 177, 177, 177, 177, 177, 177, 177,
815
- 178, 178, 178, 178, 178, 41, 41, 41,
816
- 41, 41, 41, 41, 41, 41, 41, 41,
817
- 41, 41, 41, 41, 41, 41, 41, 41,
818
- 41, 41, 41, 41, 41, 41, 41, 41,
819
- 41, 41, 41, 41, 41, 41, 41, 41,
820
- 41, 41, 41, 41, 41, 41, 41, 41,
821
- 41, 41, 41, 41, 179, 41, 180, 41,
822
- 179, 179, 179, 179, 41, 181, 179, 41,
823
- 41, 41, 41, 41, 41, 41, 41, 41,
824
- 41, 41, 41, 41, 41, 41, 41, 179,
825
- 41, 41, 41, 41, 41, 41, 41, 41,
826
- 41, 41, 41, 41, 41, 41, 41, 41,
827
- 41, 41, 41, 41, 41, 41, 41, 41,
828
- 41, 41, 41, 182, 183, 184, 185, 41,
829
- 41, 41, 41, 41, 41, 41, 41, 41,
830
- 41, 41, 41, 41, 41, 41, 41, 41,
831
- 41, 41, 41, 41, 41, 41, 41, 41,
832
- 41, 41, 41, 179, 179, 179, 41, 41,
833
- 41, 41, 41, 41, 41, 41, 41, 41,
834
- 41, 41, 41, 41, 41, 41, 41, 41,
835
- 41, 41, 41, 41, 41, 41, 41, 41,
836
- 41, 41, 41, 41, 41, 41, 41, 41,
837
- 41, 41, 41, 41, 41, 41, 41, 41,
838
- 41, 41, 41, 41, 41, 41, 41, 41,
839
- 41, 41, 41, 41, 41, 41, 41, 41,
840
- 41, 41, 41, 41, 41, 41, 41, 186,
841
- 42, 42, 42, 42, 42, 42, 42, 42,
842
- 42, 42, 42, 42, 42, 42, 42, 42,
843
- 42, 42, 42, 42, 42, 42, 42, 42,
844
- 42, 42, 42, 42, 42, 42, 42, 42,
845
- 42, 42, 42, 42, 42, 42, 42, 42,
846
- 42, 42, 42, 42, 42, 42, 42, 42,
847
- 42, 42, 42, 42, 42, 42, 42, 42,
848
- 42, 42, 42, 42, 42, 42, 42, 42,
849
- 186, 187, 187, 187, 187, 187, 187, 187,
850
- 187, 187, 187, 187, 187, 187, 187, 187,
851
- 187, 187, 187, 187, 187, 187, 187, 187,
852
- 187, 187, 187, 187, 187, 187, 187, 187,
853
- 187, 187, 187, 187, 187, 187, 187, 187,
854
- 187, 187, 187, 187, 187, 187, 187, 187,
855
- 187, 187, 187, 187, 187, 187, 187, 187,
856
- 187, 187, 187, 187, 187, 187, 187, 187,
857
- 187, 186, 188, 186, 190, 189, 189, 189,
858
- 189, 189, 189, 189, 189, 189, 189, 189,
859
- 189, 189, 189, 189, 189, 189, 189, 189,
860
- 189, 189, 189, 189, 189, 189, 189, 189,
861
- 189, 189, 189, 189, 189, 189, 189, 189,
862
- 189, 189, 189, 189, 189, 189, 189, 189,
863
- 189, 189, 189, 189, 189, 189, 189, 189,
864
- 189, 189, 189, 191, 189, 194, 193, 193,
865
- 193, 193, 193, 193, 193, 193, 193, 193,
866
- 193, 195, 193, 193, 196, 193, 198, 198,
867
- 198, 198, 198, 198, 198, 198, 198, 198,
868
- 197, 197, 197, 197, 197, 197, 197, 198,
869
- 198, 198, 197, 197, 197, 198, 197, 197,
870
- 197, 198, 197, 198, 197, 197, 197, 197,
871
- 198, 197, 197, 197, 197, 197, 198, 197,
872
- 198, 197, 197, 197, 197, 197, 197, 197,
873
- 197, 198, 197, 197, 197, 198, 197, 197,
874
- 197, 198, 197, 197, 197, 197, 197, 197,
794
+ 176, 176, 177, 177, 177, 177, 177, 38,
795
+ 38, 38, 38, 38, 38, 38, 38, 38,
796
+ 38, 38, 38, 38, 38, 38, 38, 38,
797
+ 38, 38, 38, 38, 38, 38, 38, 38,
798
+ 38, 38, 38, 38, 38, 38, 38, 38,
799
+ 38, 38, 38, 38, 38, 38, 38, 38,
800
+ 38, 38, 38, 38, 38, 38, 178, 38,
801
+ 179, 38, 178, 178, 178, 178, 38, 180,
802
+ 178, 38, 38, 38, 38, 38, 38, 38,
803
+ 38, 38, 38, 38, 38, 38, 38, 38,
804
+ 38, 178, 38, 38, 38, 38, 38, 38,
805
+ 38, 38, 38, 38, 38, 38, 38, 38,
806
+ 38, 38, 38, 38, 38, 38, 38, 38,
807
+ 38, 38, 38, 38, 38, 181, 182, 183,
808
+ 184, 38, 38, 38, 38, 38, 38, 38,
809
+ 38, 38, 38, 38, 38, 38, 38, 38,
810
+ 38, 38, 38, 38, 38, 38, 38, 38,
811
+ 38, 38, 38, 38, 38, 178, 178, 178,
812
+ 38, 38, 38, 38, 38, 38, 38, 38,
813
+ 38, 38, 38, 38, 38, 38, 38, 38,
814
+ 38, 38, 38, 38, 38, 38, 38, 38,
815
+ 38, 38, 38, 38, 38, 38, 38, 38,
816
+ 38, 38, 38, 38, 38, 38, 38, 38,
817
+ 38, 38, 38, 38, 38, 38, 38, 38,
818
+ 38, 38, 38, 38, 38, 38, 38, 38,
819
+ 38, 38, 38, 38, 38, 38, 38, 38,
820
+ 38, 185, 39, 39, 39, 39, 39, 39,
821
+ 39, 39, 39, 39, 39, 39, 39, 39,
822
+ 39, 39, 39, 39, 39, 39, 39, 39,
823
+ 39, 39, 39, 39, 39, 39, 39, 39,
824
+ 39, 39, 39, 39, 39, 39, 39, 39,
825
+ 39, 39, 39, 39, 39, 39, 39, 39,
826
+ 39, 39, 39, 39, 39, 39, 39, 39,
827
+ 39, 39, 39, 39, 39, 39, 39, 39,
828
+ 39, 39, 185, 186, 186, 186, 186, 186,
829
+ 186, 186, 186, 186, 186, 186, 186, 186,
830
+ 186, 186, 186, 186, 186, 186, 186, 186,
831
+ 186, 186, 186, 186, 186, 186, 186, 186,
832
+ 186, 186, 186, 186, 186, 186, 186, 186,
833
+ 186, 186, 186, 186, 186, 186, 186, 186,
834
+ 186, 186, 186, 186, 186, 186, 186, 186,
835
+ 186, 186, 186, 186, 186, 186, 186, 186,
836
+ 186, 186, 186, 185, 187, 185, 189, 188,
837
+ 188, 188, 188, 188, 188, 188, 188, 188,
838
+ 188, 188, 188, 188, 188, 188, 188, 188,
839
+ 188, 188, 188, 188, 188, 188, 188, 188,
840
+ 188, 188, 188, 188, 188, 188, 188, 188,
841
+ 188, 188, 188, 188, 188, 188, 188, 188,
842
+ 188, 188, 188, 188, 188, 188, 188, 188,
843
+ 188, 188, 188, 188, 188, 190, 188, 193,
844
+ 192, 192, 192, 192, 192, 192, 192, 192,
845
+ 192, 192, 192, 194, 192, 192, 195, 192,
875
846
  197, 197, 197, 197, 197, 197, 197, 197,
876
- 198, 197, 200, 199, 199, 199, 200, 200,
877
- 200, 200, 199, 199, 200, 199, 201, 202,
878
- 202, 202, 202, 202, 202, 202, 203, 203,
879
- 199, 199, 199, 199, 199, 200, 199, 36,
880
- 36, 204, 205, 199, 199, 36, 205, 199,
881
- 199, 36, 199, 206, 199, 199, 207, 199,
882
- 205, 205, 199, 199, 199, 205, 205, 199,
883
- 36, 200, 200, 200, 200, 199, 199, 208,
884
- 208, 101, 205, 208, 208, 36, 205, 199,
885
- 199, 36, 199, 199, 208, 199, 207, 199,
886
- 208, 205, 208, 209, 208, 205, 210, 199,
887
- 36, 200, 200, 200, 199, 212, 212, 212,
888
- 212, 212, 212, 212, 212, 211, 214, 214,
889
- 214, 214, 214, 214, 214, 214, 213, 216,
890
- 102, 218, 217, 102, 220, 107, 107, 107,
891
- 107, 107, 107, 107, 107, 107, 107, 107,
892
- 107, 107, 107, 107, 107, 107, 107, 107,
893
- 107, 107, 107, 107, 107, 107, 107, 107,
894
- 107, 107, 107, 107, 221, 107, 223, 222,
895
- 107, 110, 107, 226, 226, 226, 226, 226,
896
- 226, 226, 226, 226, 226, 225, 225, 225,
897
- 225, 225, 225, 225, 226, 226, 226, 226,
898
- 226, 226, 225, 225, 225, 225, 225, 225,
899
- 225, 225, 225, 225, 225, 225, 225, 225,
900
- 225, 225, 225, 225, 225, 225, 225, 225,
901
- 225, 225, 225, 225, 226, 226, 226, 226,
902
- 226, 226, 225, 228, 227, 227, 227, 227,
903
- 227, 229, 227, 227, 227, 230, 230, 230,
904
- 230, 230, 230, 230, 230, 230, 227, 227,
905
- 231, 227, 126, 232, 232, 232, 232, 232,
906
- 232, 232, 232, 127, 127, 127, 127, 127,
907
- 127, 127, 127, 127, 127, 232, 232, 232,
908
- 232, 232, 232, 232, 127, 127, 127, 127,
909
- 127, 127, 127, 127, 127, 127, 127, 127,
910
- 127, 127, 127, 127, 127, 127, 127, 127,
911
- 127, 127, 127, 127, 127, 127, 232, 232,
912
- 232, 232, 127, 232, 127, 127, 127, 127,
913
- 127, 127, 127, 127, 127, 127, 127, 127,
914
- 127, 127, 127, 127, 127, 127, 127, 127,
915
- 127, 127, 127, 127, 127, 127, 232, 128,
916
- 128, 128, 128, 128, 128, 128, 128, 128,
917
- 232, 125, 232, 232, 232, 232, 232, 232,
918
- 128, 128, 128, 128, 128, 128, 128, 128,
919
- 128, 128, 232, 129, 129, 129, 129, 129,
920
- 129, 129, 129, 129, 129, 232, 232, 232,
921
- 232, 126, 232, 232, 129, 129, 129, 129,
922
- 129, 129, 129, 129, 129, 129, 129, 129,
923
- 129, 129, 129, 129, 129, 129, 129, 129,
924
- 129, 129, 129, 129, 129, 129, 232, 232,
925
- 232, 232, 129, 232, 129, 129, 129, 129,
926
- 129, 129, 129, 129, 129, 129, 129, 129,
927
- 129, 129, 129, 129, 129, 129, 129, 129,
928
- 129, 129, 129, 129, 129, 129, 232, 0
847
+ 197, 197, 196, 196, 196, 196, 196, 196,
848
+ 196, 197, 197, 197, 196, 196, 196, 197,
849
+ 196, 196, 196, 197, 196, 197, 196, 196,
850
+ 196, 196, 197, 196, 196, 196, 196, 196,
851
+ 197, 196, 197, 196, 196, 196, 196, 196,
852
+ 196, 196, 196, 197, 196, 196, 196, 197,
853
+ 196, 196, 196, 197, 196, 196, 196, 196,
854
+ 196, 196, 196, 196, 196, 196, 196, 196,
855
+ 196, 196, 197, 196, 199, 198, 198, 198,
856
+ 199, 199, 199, 199, 198, 198, 199, 198,
857
+ 200, 201, 201, 201, 201, 201, 201, 201,
858
+ 202, 202, 198, 198, 198, 198, 198, 199,
859
+ 198, 33, 33, 203, 204, 198, 198, 33,
860
+ 204, 198, 198, 33, 198, 205, 198, 198,
861
+ 206, 198, 204, 204, 198, 198, 198, 204,
862
+ 204, 198, 33, 199, 199, 199, 199, 198,
863
+ 198, 207, 207, 98, 204, 207, 207, 198,
864
+ 204, 198, 198, 198, 198, 198, 207, 198,
865
+ 206, 198, 207, 204, 207, 208, 207, 204,
866
+ 209, 198, 33, 199, 199, 199, 198, 211,
867
+ 211, 211, 211, 211, 211, 211, 211, 210,
868
+ 213, 213, 213, 213, 213, 213, 213, 213,
869
+ 212, 215, 99, 217, 216, 99, 219, 104,
870
+ 104, 104, 104, 104, 104, 104, 104, 104,
871
+ 104, 104, 104, 104, 104, 104, 104, 104,
872
+ 104, 104, 104, 104, 104, 104, 104, 104,
873
+ 104, 104, 104, 104, 104, 104, 220, 104,
874
+ 222, 221, 104, 107, 104, 225, 225, 225,
875
+ 225, 225, 225, 225, 225, 225, 225, 224,
876
+ 224, 224, 224, 224, 224, 224, 225, 225,
877
+ 225, 225, 225, 225, 224, 224, 224, 224,
878
+ 224, 224, 224, 224, 224, 224, 224, 224,
879
+ 224, 224, 224, 224, 224, 224, 224, 224,
880
+ 224, 224, 224, 224, 224, 224, 225, 225,
881
+ 225, 225, 225, 225, 224, 227, 226, 226,
882
+ 226, 226, 226, 228, 226, 226, 226, 229,
883
+ 229, 229, 229, 229, 229, 229, 229, 229,
884
+ 226, 226, 230, 226, 123, 231, 231, 231,
885
+ 231, 231, 231, 231, 231, 124, 124, 124,
886
+ 124, 124, 124, 124, 124, 124, 124, 231,
887
+ 231, 231, 231, 231, 231, 231, 124, 124,
888
+ 124, 124, 124, 124, 124, 124, 124, 124,
889
+ 124, 124, 124, 124, 124, 124, 124, 124,
890
+ 124, 124, 124, 124, 124, 124, 124, 124,
891
+ 231, 231, 231, 231, 124, 231, 124, 124,
892
+ 124, 124, 124, 124, 124, 124, 124, 124,
893
+ 124, 124, 124, 124, 124, 124, 124, 124,
894
+ 124, 124, 124, 124, 124, 124, 124, 124,
895
+ 231, 125, 125, 125, 125, 125, 125, 125,
896
+ 125, 125, 231, 122, 231, 231, 231, 231,
897
+ 231, 231, 125, 125, 125, 125, 125, 125,
898
+ 125, 125, 125, 125, 231, 126, 126, 126,
899
+ 126, 126, 126, 126, 126, 126, 126, 231,
900
+ 231, 231, 231, 123, 231, 231, 126, 126,
901
+ 126, 126, 126, 126, 126, 126, 126, 126,
902
+ 126, 126, 126, 126, 126, 126, 126, 126,
903
+ 126, 126, 126, 126, 126, 126, 126, 126,
904
+ 231, 231, 231, 231, 126, 231, 126, 126,
905
+ 126, 126, 126, 126, 126, 126, 126, 126,
906
+ 126, 126, 126, 126, 126, 126, 126, 126,
907
+ 126, 126, 126, 126, 126, 126, 126, 126,
908
+ 231, 0
929
909
  ]
930
910
 
931
911
  class << self
@@ -933,36 +913,35 @@ class << self
933
913
  private :_re_scanner_trans_targs, :_re_scanner_trans_targs=
934
914
  end
935
915
  self._re_scanner_trans_targs = [
936
- 111, 112, 3, 113, 5, 6, 114, 111,
937
- 7, 111, 111, 8, 111, 111, 9, 111,
938
- 11, 111, 13, 19, 111, 14, 16, 18,
939
- 15, 17, 20, 22, 24, 21, 23, 111,
940
- 26, 128, 27, 29, 0, 30, 31, 130,
941
- 131, 131, 32, 131, 131, 131, 131, 36,
942
- 37, 131, 39, 40, 51, 55, 59, 63,
943
- 67, 71, 76, 80, 82, 85, 41, 48,
944
- 42, 46, 43, 44, 45, 131, 47, 49,
945
- 50, 52, 53, 54, 56, 57, 58, 60,
946
- 61, 62, 64, 65, 66, 68, 69, 70,
947
- 72, 74, 73, 75, 77, 78, 79, 81,
948
- 83, 84, 87, 88, 131, 90, 139, 142,
949
- 139, 144, 93, 139, 145, 139, 147, 96,
950
- 99, 97, 98, 139, 100, 101, 102, 103,
951
- 104, 105, 139, 149, 150, 150, 107, 108,
952
- 109, 110, 1, 2, 4, 115, 116, 117,
953
- 118, 119, 111, 120, 111, 123, 124, 111,
954
- 125, 111, 126, 111, 111, 127, 111, 111,
955
- 111, 111, 121, 111, 122, 111, 10, 111,
956
- 111, 111, 111, 111, 111, 111, 111, 111,
957
- 111, 12, 111, 25, 111, 111, 129, 28,
958
- 132, 133, 134, 131, 135, 136, 137, 131,
959
- 131, 131, 131, 33, 131, 131, 34, 131,
960
- 131, 131, 35, 38, 86, 138, 138, 139,
961
- 139, 140, 140, 139, 89, 139, 92, 139,
962
- 139, 95, 106, 139, 141, 139, 139, 139,
963
- 143, 139, 91, 139, 146, 148, 139, 94,
964
- 139, 139, 139, 150, 151, 152, 153, 154,
965
- 150
916
+ 110, 111, 3, 112, 5, 6, 113, 110,
917
+ 7, 110, 110, 8, 110, 10, 110, 12,
918
+ 18, 110, 13, 15, 17, 14, 16, 19,
919
+ 21, 23, 20, 22, 110, 25, 127, 26,
920
+ 28, 0, 29, 30, 129, 130, 130, 31,
921
+ 130, 130, 130, 130, 35, 36, 130, 38,
922
+ 39, 50, 54, 58, 62, 66, 70, 75,
923
+ 79, 81, 84, 40, 47, 41, 45, 42,
924
+ 43, 44, 130, 46, 48, 49, 51, 52,
925
+ 53, 55, 56, 57, 59, 60, 61, 63,
926
+ 64, 65, 67, 68, 69, 71, 73, 72,
927
+ 74, 76, 77, 78, 80, 82, 83, 86,
928
+ 87, 130, 89, 138, 141, 138, 143, 92,
929
+ 138, 144, 138, 146, 95, 98, 96, 97,
930
+ 138, 99, 100, 101, 102, 103, 104, 138,
931
+ 148, 149, 149, 106, 107, 108, 109, 1,
932
+ 2, 4, 114, 115, 116, 117, 118, 110,
933
+ 119, 110, 122, 123, 110, 124, 110, 125,
934
+ 110, 110, 126, 110, 110, 110, 110, 110,
935
+ 110, 120, 110, 121, 110, 9, 110, 110,
936
+ 110, 110, 110, 110, 110, 110, 110, 110,
937
+ 11, 110, 24, 110, 110, 128, 27, 131,
938
+ 132, 133, 130, 134, 135, 136, 130, 130,
939
+ 130, 130, 32, 130, 130, 33, 130, 130,
940
+ 130, 34, 37, 85, 137, 137, 138, 138,
941
+ 139, 139, 138, 88, 138, 91, 138, 138,
942
+ 94, 105, 138, 140, 138, 138, 138, 142,
943
+ 138, 90, 138, 145, 147, 138, 93, 138,
944
+ 138, 138, 149, 150, 151, 152, 153, 149
966
945
  ]
967
946
 
968
947
  class << self
@@ -971,35 +950,34 @@ class << self
971
950
  end
972
951
  self._re_scanner_trans_actions = [
973
952
  1, 2, 0, 2, 0, 0, 2, 3,
974
- 0, 4, 5, 6, 7, 8, 0, 9,
975
- 0, 10, 0, 0, 11, 0, 0, 0,
976
- 0, 0, 0, 0, 0, 0, 0, 12,
977
- 0, 0, 0, 0, 0, 0, 0, 14,
978
- 15, 16, 0, 17, 18, 19, 20, 0,
979
- 0, 21, 0, 0, 0, 0, 0, 0,
953
+ 4, 5, 6, 0, 7, 0, 8, 0,
954
+ 0, 9, 0, 0, 0, 0, 0, 0,
955
+ 0, 0, 0, 0, 10, 0, 0, 0,
956
+ 0, 0, 0, 0, 12, 13, 14, 0,
957
+ 15, 16, 17, 18, 0, 0, 19, 0,
980
958
  0, 0, 0, 0, 0, 0, 0, 0,
981
- 0, 0, 0, 0, 0, 22, 0, 0,
982
959
  0, 0, 0, 0, 0, 0, 0, 0,
960
+ 0, 0, 20, 0, 0, 0, 0, 0,
983
961
  0, 0, 0, 0, 0, 0, 0, 0,
984
962
  0, 0, 0, 0, 0, 0, 0, 0,
985
- 0, 0, 0, 0, 23, 0, 25, 0,
986
- 26, 0, 0, 27, 0, 28, 0, 0,
987
- 0, 0, 0, 29, 0, 0, 0, 0,
988
- 0, 0, 30, 0, 31, 32, 0, 0,
989
963
  0, 0, 0, 0, 0, 0, 0, 0,
990
- 0, 35, 36, 37, 38, 0, 0, 39,
991
- 0, 40, 35, 41, 42, 35, 43, 44,
992
- 45, 46, 47, 48, 0, 49, 0, 50,
993
- 51, 52, 53, 54, 55, 56, 57, 58,
994
- 59, 0, 60, 0, 61, 62, 64, 0,
995
- 0, 35, 35, 65, 0, 35, 66, 67,
996
- 68, 69, 70, 0, 71, 72, 0, 73,
997
- 74, 75, 0, 0, 0, 76, 77, 78,
998
- 79, 80, 81, 82, 0, 83, 0, 84,
999
- 85, 0, 0, 86, 0, 87, 88, 89,
1000
- 35, 90, 0, 91, 35, 0, 92, 0,
1001
- 93, 94, 95, 96, 35, 35, 35, 35,
1002
- 97
964
+ 0, 21, 0, 23, 0, 24, 0, 0,
965
+ 25, 0, 26, 0, 0, 0, 0, 0,
966
+ 27, 0, 0, 0, 0, 0, 0, 28,
967
+ 0, 29, 30, 0, 0, 0, 0, 0,
968
+ 0, 0, 0, 0, 0, 0, 0, 33,
969
+ 34, 35, 0, 0, 36, 0, 37, 38,
970
+ 39, 40, 38, 41, 42, 43, 44, 45,
971
+ 46, 47, 48, 0, 49, 0, 50, 51,
972
+ 52, 53, 54, 55, 56, 57, 58, 59,
973
+ 0, 60, 0, 61, 62, 64, 0, 0,
974
+ 38, 38, 65, 0, 38, 66, 67, 68,
975
+ 69, 70, 0, 71, 72, 0, 73, 74,
976
+ 75, 0, 0, 0, 76, 77, 78, 79,
977
+ 80, 81, 82, 0, 83, 0, 84, 85,
978
+ 0, 0, 86, 0, 87, 88, 89, 38,
979
+ 90, 0, 91, 38, 0, 92, 0, 93,
980
+ 94, 95, 96, 38, 38, 38, 38, 97
1003
981
  ]
1004
982
 
1005
983
  class << self
@@ -1020,13 +998,13 @@ self._re_scanner_to_state_actions = [
1020
998
  0, 0, 0, 0, 0, 0, 0, 0,
1021
999
  0, 0, 0, 0, 0, 0, 0, 0,
1022
1000
  0, 0, 0, 0, 0, 0, 0, 0,
1023
- 0, 0, 0, 0, 0, 0, 0, 33,
1001
+ 0, 0, 0, 0, 0, 0, 31, 0,
1024
1002
  0, 0, 0, 0, 0, 0, 0, 0,
1025
1003
  0, 0, 0, 0, 0, 0, 0, 0,
1026
- 0, 63, 63, 63, 0, 0, 0, 0,
1027
- 0, 0, 63, 63, 0, 0, 0, 0,
1028
- 0, 0, 0, 0, 0, 0, 63, 0,
1029
- 0, 0, 0
1004
+ 63, 63, 63, 0, 0, 0, 0, 0,
1005
+ 0, 63, 63, 0, 0, 0, 0, 0,
1006
+ 0, 0, 0, 0, 0, 63, 0, 0,
1007
+ 0, 0
1030
1008
  ]
1031
1009
 
1032
1010
  class << self
@@ -1047,13 +1025,13 @@ self._re_scanner_from_state_actions = [
1047
1025
  0, 0, 0, 0, 0, 0, 0, 0,
1048
1026
  0, 0, 0, 0, 0, 0, 0, 0,
1049
1027
  0, 0, 0, 0, 0, 0, 0, 0,
1050
- 0, 0, 0, 0, 0, 0, 0, 34,
1028
+ 0, 0, 0, 0, 0, 0, 32, 0,
1051
1029
  0, 0, 0, 0, 0, 0, 0, 0,
1052
1030
  0, 0, 0, 0, 0, 0, 0, 0,
1053
- 0, 34, 34, 34, 0, 0, 0, 0,
1054
- 0, 0, 34, 34, 0, 0, 0, 0,
1055
- 0, 0, 0, 0, 0, 0, 34, 0,
1056
- 0, 0, 0
1031
+ 32, 32, 32, 0, 0, 0, 0, 0,
1032
+ 0, 32, 32, 0, 0, 0, 0, 0,
1033
+ 0, 0, 0, 0, 0, 32, 0, 0,
1034
+ 0, 0
1057
1035
  ]
1058
1036
 
1059
1037
  class << self
@@ -1064,7 +1042,7 @@ self._re_scanner_eof_actions = [
1064
1042
  0, 0, 0, 0, 0, 0, 0, 0,
1065
1043
  0, 0, 0, 0, 0, 0, 0, 0,
1066
1044
  0, 0, 0, 0, 0, 0, 0, 0,
1067
- 0, 0, 0, 0, 13, 13, 13, 13,
1045
+ 0, 0, 0, 11, 11, 11, 11, 0,
1068
1046
  0, 0, 0, 0, 0, 0, 0, 0,
1069
1047
  0, 0, 0, 0, 0, 0, 0, 0,
1070
1048
  0, 0, 0, 0, 0, 0, 0, 0,
@@ -1072,15 +1050,15 @@ self._re_scanner_eof_actions = [
1072
1050
  0, 0, 0, 0, 0, 0, 0, 0,
1073
1051
  0, 0, 0, 0, 0, 0, 0, 0,
1074
1052
  0, 0, 0, 0, 0, 0, 0, 0,
1075
- 0, 24, 24, 0, 24, 24, 0, 24,
1076
- 24, 24, 24, 24, 24, 24, 24, 24,
1077
- 24, 24, 24, 0, 0, 0, 0, 0,
1053
+ 22, 22, 0, 22, 22, 0, 22, 22,
1054
+ 22, 22, 22, 22, 22, 22, 22, 22,
1055
+ 22, 22, 0, 0, 0, 0, 0, 0,
1078
1056
  0, 0, 0, 0, 0, 0, 0, 0,
1079
1057
  0, 0, 0, 0, 0, 0, 0, 0,
1080
- 0, 0, 0, 24, 0, 0, 0, 0,
1081
- 0, 0, 0, 24, 0, 0, 0, 0,
1058
+ 0, 0, 22, 0, 0, 0, 0, 0,
1059
+ 0, 0, 22, 0, 0, 0, 0, 0,
1082
1060
  0, 0, 0, 0, 0, 0, 0, 0,
1083
- 0, 0, 0
1061
+ 0, 0
1084
1062
  ]
1085
1063
 
1086
1064
  class << self
@@ -1089,35 +1067,35 @@ class << self
1089
1067
  end
1090
1068
  self._re_scanner_eof_trans = [
1091
1069
  0, 1, 1, 1, 1, 1, 1, 8,
1092
- 11, 11, 11, 11, 18, 18, 18, 18,
1093
- 18, 18, 18, 18, 18, 18, 18, 18,
1094
- 18, 32, 32, 32, 0, 0, 0, 0,
1095
- 41, 41, 44, 46, 46, 46, 46, 46,
1096
- 46, 46, 46, 46, 46, 46, 46, 46,
1097
- 46, 46, 46, 46, 46, 46, 46, 46,
1098
- 46, 46, 46, 46, 46, 46, 46, 46,
1099
- 46, 46, 46, 46, 46, 46, 46, 46,
1100
- 46, 46, 46, 46, 46, 46, 46, 46,
1101
- 46, 46, 46, 46, 46, 46, 46, 46,
1102
- 46, 0, 0, 105, 0, 0, 110, 0,
1070
+ 8, 8, 8, 15, 15, 15, 15, 15,
1071
+ 15, 15, 15, 15, 15, 15, 15, 15,
1072
+ 29, 29, 29, 0, 0, 0, 0, 38,
1073
+ 38, 41, 43, 43, 43, 43, 43, 43,
1074
+ 43, 43, 43, 43, 43, 43, 43, 43,
1075
+ 43, 43, 43, 43, 43, 43, 43, 43,
1076
+ 43, 43, 43, 43, 43, 43, 43, 43,
1077
+ 43, 43, 43, 43, 43, 43, 43, 43,
1078
+ 43, 43, 43, 43, 43, 43, 43, 43,
1079
+ 43, 43, 43, 43, 43, 43, 43, 43,
1080
+ 0, 0, 102, 0, 0, 107, 0, 0,
1103
1081
  0, 0, 0, 0, 0, 0, 0, 0,
1104
- 0, 0, 0, 125, 125, 125, 125, 0,
1105
- 152, 152, 152, 152, 153, 153, 152, 152,
1106
- 154, 156, 156, 161, 163, 165, 167, 171,
1107
- 173, 0, 0, 0, 187, 187, 187, 187,
1108
- 190, 193, 0, 0, 212, 214, 216, 216,
1109
- 216, 220, 220, 220, 220, 225, 0, 233,
1110
- 233, 233, 233
1082
+ 0, 0, 122, 122, 122, 122, 0, 149,
1083
+ 149, 149, 149, 150, 150, 149, 151, 153,
1084
+ 155, 155, 160, 162, 164, 166, 170, 172,
1085
+ 0, 0, 0, 186, 186, 186, 186, 189,
1086
+ 192, 0, 0, 211, 213, 215, 215, 215,
1087
+ 219, 219, 219, 219, 224, 0, 232, 232,
1088
+ 232, 232
1111
1089
  ]
1112
1090
 
1113
1091
  class << self
1114
1092
  attr_accessor :re_scanner_start
1115
1093
  end
1116
- self.re_scanner_start = 111;
1094
+ self.re_scanner_start = 110;
1117
1095
  class << self
1118
1096
  attr_accessor :re_scanner_first_final
1119
1097
  end
1120
- self.re_scanner_first_final = 111;
1098
+ self.re_scanner_first_final = 110;
1121
1099
  class << self
1122
1100
  attr_accessor :re_scanner_error
1123
1101
  end
@@ -1126,36 +1104,36 @@ self.re_scanner_error = 0;
1126
1104
  class << self
1127
1105
  attr_accessor :re_scanner_en_char_type
1128
1106
  end
1129
- self.re_scanner_en_char_type = 129;
1107
+ self.re_scanner_en_char_type = 128;
1130
1108
  class << self
1131
1109
  attr_accessor :re_scanner_en_unicode_property
1132
1110
  end
1133
- self.re_scanner_en_unicode_property = 130;
1111
+ self.re_scanner_en_unicode_property = 129;
1134
1112
  class << self
1135
1113
  attr_accessor :re_scanner_en_character_set
1136
1114
  end
1137
- self.re_scanner_en_character_set = 131;
1115
+ self.re_scanner_en_character_set = 130;
1138
1116
  class << self
1139
1117
  attr_accessor :re_scanner_en_set_escape_sequence
1140
1118
  end
1141
- self.re_scanner_en_set_escape_sequence = 138;
1119
+ self.re_scanner_en_set_escape_sequence = 137;
1142
1120
  class << self
1143
1121
  attr_accessor :re_scanner_en_escape_sequence
1144
1122
  end
1145
- self.re_scanner_en_escape_sequence = 139;
1123
+ self.re_scanner_en_escape_sequence = 138;
1146
1124
  class << self
1147
1125
  attr_accessor :re_scanner_en_conditional_expression
1148
1126
  end
1149
- self.re_scanner_en_conditional_expression = 150;
1127
+ self.re_scanner_en_conditional_expression = 149;
1150
1128
  class << self
1151
1129
  attr_accessor :re_scanner_en_main
1152
1130
  end
1153
- self.re_scanner_en_main = 111;
1131
+ self.re_scanner_en_main = 110;
1154
1132
 
1155
1133
 
1156
- # line 768 "/Users/ammar/src/code/ruby/projects/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
1134
+ # line 765 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
1157
1135
 
1158
- # line 1158 "/Users/ammar/src/code/ruby/projects/regexp_parser/lib/regexp_parser/scanner.rb"
1136
+ # line 1136 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner.rb"
1159
1137
  begin
1160
1138
  p ||= 0
1161
1139
  pe ||= data.length
@@ -1166,9 +1144,9 @@ begin
1166
1144
  act = 0
1167
1145
  end
1168
1146
 
1169
- # line 769 "/Users/ammar/src/code/ruby/projects/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
1147
+ # line 766 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
1170
1148
 
1171
- # line 1171 "/Users/ammar/src/code/ruby/projects/regexp_parser/lib/regexp_parser/scanner.rb"
1149
+ # line 1149 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner.rb"
1172
1150
  begin
1173
1151
  testEof = false
1174
1152
  _slen, _trans, _keys, _inds, _acts, _nacts = nil
@@ -1191,12 +1169,12 @@ begin
1191
1169
  end
1192
1170
  if _goto_level <= _resume
1193
1171
  case _re_scanner_from_state_actions[cs]
1194
- when 34 then
1172
+ when 32 then
1195
1173
  # line 1 "NONE"
1196
1174
  begin
1197
1175
  ts = p
1198
1176
  end
1199
- # line 1199 "/Users/ammar/src/code/ruby/projects/regexp_parser/lib/regexp_parser/scanner.rb"
1177
+ # line 1177 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner.rb"
1200
1178
  end
1201
1179
  _keys = cs << 1
1202
1180
  _inds = _re_scanner_index_offsets[cs]
@@ -1215,21 +1193,21 @@ ts = p
1215
1193
  cs = _re_scanner_trans_targs[_trans]
1216
1194
  if _re_scanner_trans_actions[_trans] != 0
1217
1195
  case _re_scanner_trans_actions[_trans]
1218
- when 37 then
1219
- # line 149 "/Users/ammar/src/code/ruby/projects/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
1196
+ when 34 then
1197
+ # line 149 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
1220
1198
  begin
1221
1199
  self.group_depth = group_depth + 1 end
1222
- when 6 then
1223
- # line 150 "/Users/ammar/src/code/ruby/projects/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
1200
+ when 4 then
1201
+ # line 150 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
1224
1202
  begin
1225
1203
  self.group_depth = group_depth - 1 end
1226
- when 35 then
1204
+ when 38 then
1227
1205
  # line 1 "NONE"
1228
1206
  begin
1229
1207
  te = p+1
1230
1208
  end
1231
1209
  when 64 then
1232
- # line 12 "/Users/ammar/src/code/ruby/projects/regexp_parser/lib/regexp_parser/scanner/char_type.rl"
1210
+ # line 12 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/char_type.rl"
1233
1211
  begin
1234
1212
  te = p+1
1235
1213
  begin
@@ -1254,8 +1232,8 @@ te = p+1
1254
1232
 
1255
1233
  end
1256
1234
  end
1257
- when 14 then
1258
- # line 16 "/Users/ammar/src/code/ruby/projects/regexp_parser/lib/regexp_parser/scanner/property.rl"
1235
+ when 12 then
1236
+ # line 16 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/property.rl"
1259
1237
  begin
1260
1238
  te = p+1
1261
1239
  begin
@@ -1278,8 +1256,8 @@ te = p+1
1278
1256
 
1279
1257
  end
1280
1258
  end
1281
- when 18 then
1282
- # line 177 "/Users/ammar/src/code/ruby/projects/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
1259
+ when 16 then
1260
+ # line 177 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
1283
1261
  begin
1284
1262
  te = p+1
1285
1263
  begin # special case, emits two tokens
@@ -1288,7 +1266,7 @@ te = p+1
1288
1266
  end
1289
1267
  end
1290
1268
  when 69 then
1291
- # line 182 "/Users/ammar/src/code/ruby/projects/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
1269
+ # line 182 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
1292
1270
  begin
1293
1271
  te = p+1
1294
1272
  begin
@@ -1301,7 +1279,7 @@ te = p+1
1301
1279
  end
1302
1280
  end
1303
1281
  when 71 then
1304
- # line 203 "/Users/ammar/src/code/ruby/projects/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
1282
+ # line 203 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
1305
1283
  begin
1306
1284
  te = p+1
1307
1285
  begin
@@ -1309,14 +1287,14 @@ te = p+1
1309
1287
  end
1310
1288
  end
1311
1289
  when 67 then
1312
- # line 207 "/Users/ammar/src/code/ruby/projects/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
1290
+ # line 207 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
1313
1291
  begin
1314
1292
  te = p+1
1315
1293
  begin
1316
1294
  begin
1317
1295
  stack[top] = cs
1318
1296
  top+= 1
1319
- cs = 138
1297
+ cs = 137
1320
1298
  _goto_level = _again
1321
1299
  next
1322
1300
  end
@@ -1324,15 +1302,15 @@ te = p+1
1324
1302
  end
1325
1303
  end
1326
1304
  when 65 then
1327
- # line 237 "/Users/ammar/src/code/ruby/projects/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
1305
+ # line 237 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
1328
1306
  begin
1329
1307
  te = p+1
1330
1308
  begin
1331
1309
  emit(:literal, :literal, *text(data, ts, te))
1332
1310
  end
1333
1311
  end
1334
- when 16 then
1335
- # line 245 "/Users/ammar/src/code/ruby/projects/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
1312
+ when 14 then
1313
+ # line 245 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
1336
1314
  begin
1337
1315
  te = p+1
1338
1316
  begin
@@ -1342,7 +1320,7 @@ te = p+1
1342
1320
  end
1343
1321
  end
1344
1322
  when 72 then
1345
- # line 191 "/Users/ammar/src/code/ruby/projects/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
1323
+ # line 191 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
1346
1324
  begin
1347
1325
  te = p
1348
1326
  p = p - 1; begin
@@ -1356,7 +1334,7 @@ p = p - 1; begin
1356
1334
  end
1357
1335
  end
1358
1336
  when 75 then
1359
- # line 211 "/Users/ammar/src/code/ruby/projects/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
1337
+ # line 211 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
1360
1338
  begin
1361
1339
  te = p
1362
1340
  p = p - 1; begin
@@ -1364,7 +1342,7 @@ p = p - 1; begin
1364
1342
  begin
1365
1343
  stack[top] = cs
1366
1344
  top+= 1
1367
- cs = 131
1345
+ cs = 130
1368
1346
  _goto_level = _again
1369
1347
  next
1370
1348
  end
@@ -1372,7 +1350,7 @@ p = p - 1; begin
1372
1350
  end
1373
1351
  end
1374
1352
  when 70 then
1375
- # line 245 "/Users/ammar/src/code/ruby/projects/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
1353
+ # line 245 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
1376
1354
  begin
1377
1355
  te = p
1378
1356
  p = p - 1; begin
@@ -1381,8 +1359,8 @@ p = p - 1; begin
1381
1359
  emit(:literal, :literal, char, *rest)
1382
1360
  end
1383
1361
  end
1384
- when 17 then
1385
- # line 191 "/Users/ammar/src/code/ruby/projects/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
1362
+ when 15 then
1363
+ # line 191 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
1386
1364
  begin
1387
1365
  begin p = ((te))-1; end
1388
1366
  begin
@@ -1395,8 +1373,8 @@ p = p - 1; begin
1395
1373
  end
1396
1374
  end
1397
1375
  end
1398
- when 20 then
1399
- # line 211 "/Users/ammar/src/code/ruby/projects/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
1376
+ when 18 then
1377
+ # line 211 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
1400
1378
  begin
1401
1379
  begin p = ((te))-1; end
1402
1380
  begin
@@ -1404,15 +1382,15 @@ p = p - 1; begin
1404
1382
  begin
1405
1383
  stack[top] = cs
1406
1384
  top+= 1
1407
- cs = 131
1385
+ cs = 130
1408
1386
  _goto_level = _again
1409
1387
  next
1410
1388
  end
1411
1389
 
1412
1390
  end
1413
1391
  end
1414
- when 15 then
1415
- # line 245 "/Users/ammar/src/code/ruby/projects/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
1392
+ when 13 then
1393
+ # line 245 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
1416
1394
  begin
1417
1395
  begin p = ((te))-1; end
1418
1396
  begin
@@ -1422,7 +1400,7 @@ p = p - 1; begin
1422
1400
  end
1423
1401
  end
1424
1402
  when 77 then
1425
- # line 255 "/Users/ammar/src/code/ruby/projects/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
1403
+ # line 255 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
1426
1404
  begin
1427
1405
  te = p+1
1428
1406
  begin
@@ -1437,16 +1415,16 @@ te = p+1
1437
1415
  end
1438
1416
  end
1439
1417
  when 76 then
1440
- # line 260 "/Users/ammar/src/code/ruby/projects/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
1418
+ # line 260 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
1441
1419
  begin
1442
1420
  te = p+1
1443
1421
  begin
1444
1422
  p = p - 1;
1445
- cs = 131;
1423
+ cs = 130;
1446
1424
  begin
1447
1425
  stack[top] = cs
1448
1426
  top+= 1
1449
- cs = 139
1427
+ cs = 138
1450
1428
  _goto_level = _again
1451
1429
  next
1452
1430
  end
@@ -1454,7 +1432,7 @@ te = p+1
1454
1432
  end
1455
1433
  end
1456
1434
  when 82 then
1457
- # line 271 "/Users/ammar/src/code/ruby/projects/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
1435
+ # line 271 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
1458
1436
  begin
1459
1437
  te = p+1
1460
1438
  begin
@@ -1470,7 +1448,7 @@ te = p+1
1470
1448
  end
1471
1449
  end
1472
1450
  when 88 then
1473
- # line 277 "/Users/ammar/src/code/ruby/projects/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
1451
+ # line 277 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
1474
1452
  begin
1475
1453
  te = p+1
1476
1454
  begin
@@ -1485,7 +1463,7 @@ te = p+1
1485
1463
  end
1486
1464
  end
1487
1465
  when 79 then
1488
- # line 282 "/Users/ammar/src/code/ruby/projects/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
1466
+ # line 282 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
1489
1467
  begin
1490
1468
  te = p+1
1491
1469
  begin
@@ -1516,7 +1494,7 @@ te = p+1
1516
1494
  end
1517
1495
  end
1518
1496
  when 85 then
1519
- # line 303 "/Users/ammar/src/code/ruby/projects/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
1497
+ # line 303 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
1520
1498
  begin
1521
1499
  te = p+1
1522
1500
  begin
@@ -1541,8 +1519,8 @@ te = p+1
1541
1519
 
1542
1520
  end
1543
1521
  end
1544
- when 29 then
1545
- # line 319 "/Users/ammar/src/code/ruby/projects/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
1522
+ when 27 then
1523
+ # line 319 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
1546
1524
  begin
1547
1525
  te = p+1
1548
1526
  begin
@@ -1562,7 +1540,7 @@ te = p+1
1562
1540
  end
1563
1541
  end
1564
1542
  when 95 then
1565
- # line 329 "/Users/ammar/src/code/ruby/projects/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
1543
+ # line 329 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
1566
1544
  begin
1567
1545
  te = p+1
1568
1546
  begin
@@ -1576,8 +1554,8 @@ te = p+1
1576
1554
 
1577
1555
  end
1578
1556
  end
1579
- when 25 then
1580
- # line 338 "/Users/ammar/src/code/ruby/projects/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
1557
+ when 23 then
1558
+ # line 338 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
1581
1559
  begin
1582
1560
  te = p+1
1583
1561
  begin
@@ -1591,8 +1569,8 @@ te = p+1
1591
1569
 
1592
1570
  end
1593
1571
  end
1594
- when 27 then
1595
- # line 343 "/Users/ammar/src/code/ruby/projects/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
1572
+ when 25 then
1573
+ # line 343 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
1596
1574
  begin
1597
1575
  te = p+1
1598
1576
  begin
@@ -1607,16 +1585,16 @@ te = p+1
1607
1585
  end
1608
1586
  end
1609
1587
  when 83 then
1610
- # line 348 "/Users/ammar/src/code/ruby/projects/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
1588
+ # line 348 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
1611
1589
  begin
1612
1590
  te = p+1
1613
1591
  begin
1614
1592
  p = p - 1;
1615
- cs = ((in_set? ? 131 : 111));
1593
+ cs = ((in_set? ? 130 : 110));
1616
1594
  begin
1617
1595
  stack[top] = cs
1618
1596
  top+= 1
1619
- cs = 129
1597
+ cs = 128
1620
1598
  _goto_level = _again
1621
1599
  next
1622
1600
  end
@@ -1624,16 +1602,16 @@ te = p+1
1624
1602
  end
1625
1603
  end
1626
1604
  when 84 then
1627
- # line 354 "/Users/ammar/src/code/ruby/projects/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
1605
+ # line 354 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
1628
1606
  begin
1629
1607
  te = p+1
1630
1608
  begin
1631
1609
  p = p - 1;
1632
- cs = ((in_set? ? 131 : 111));
1610
+ cs = ((in_set? ? 130 : 110));
1633
1611
  begin
1634
1612
  stack[top] = cs
1635
1613
  top+= 1
1636
- cs = 130
1614
+ cs = 129
1637
1615
  _goto_level = _again
1638
1616
  next
1639
1617
  end
@@ -1641,7 +1619,7 @@ te = p+1
1641
1619
  end
1642
1620
  end
1643
1621
  when 78 then
1644
- # line 360 "/Users/ammar/src/code/ruby/projects/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
1622
+ # line 360 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
1645
1623
  begin
1646
1624
  te = p+1
1647
1625
  begin
@@ -1656,7 +1634,7 @@ te = p+1
1656
1634
  end
1657
1635
  end
1658
1636
  when 87 then
1659
- # line 277 "/Users/ammar/src/code/ruby/projects/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
1637
+ # line 277 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
1660
1638
  begin
1661
1639
  te = p
1662
1640
  p = p - 1; begin
@@ -1671,7 +1649,7 @@ p = p - 1; begin
1671
1649
  end
1672
1650
  end
1673
1651
  when 94 then
1674
- # line 329 "/Users/ammar/src/code/ruby/projects/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
1652
+ # line 329 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
1675
1653
  begin
1676
1654
  te = p
1677
1655
  p = p - 1; begin
@@ -1686,7 +1664,7 @@ p = p - 1; begin
1686
1664
  end
1687
1665
  end
1688
1666
  when 90 then
1689
- # line 338 "/Users/ammar/src/code/ruby/projects/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
1667
+ # line 338 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
1690
1668
  begin
1691
1669
  te = p
1692
1670
  p = p - 1; begin
@@ -1701,7 +1679,7 @@ p = p - 1; begin
1701
1679
  end
1702
1680
  end
1703
1681
  when 92 then
1704
- # line 343 "/Users/ammar/src/code/ruby/projects/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
1682
+ # line 343 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
1705
1683
  begin
1706
1684
  te = p
1707
1685
  p = p - 1; begin
@@ -1746,8 +1724,8 @@ p = p - 1; begin
1746
1724
  end
1747
1725
  end
1748
1726
  end
1749
- when 32 then
1750
- # line 370 "/Users/ammar/src/code/ruby/projects/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
1727
+ when 30 then
1728
+ # line 370 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
1751
1729
  begin
1752
1730
  te = p+1
1753
1731
  begin
@@ -1757,7 +1735,7 @@ te = p+1
1757
1735
  end
1758
1736
  end
1759
1737
  when 96 then
1760
- # line 376 "/Users/ammar/src/code/ruby/projects/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
1738
+ # line 376 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
1761
1739
  begin
1762
1740
  te = p+1
1763
1741
  begin
@@ -1765,7 +1743,7 @@ te = p+1
1765
1743
  begin
1766
1744
  stack[top] = cs
1767
1745
  top+= 1
1768
- cs = 111
1746
+ cs = 110
1769
1747
  _goto_level = _again
1770
1748
  next
1771
1749
  end
@@ -1773,7 +1751,7 @@ te = p+1
1773
1751
  end
1774
1752
  end
1775
1753
  when 97 then
1776
- # line 376 "/Users/ammar/src/code/ruby/projects/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
1754
+ # line 376 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
1777
1755
  begin
1778
1756
  te = p
1779
1757
  p = p - 1; begin
@@ -1781,15 +1759,15 @@ p = p - 1; begin
1781
1759
  begin
1782
1760
  stack[top] = cs
1783
1761
  top+= 1
1784
- cs = 111
1762
+ cs = 110
1785
1763
  _goto_level = _again
1786
1764
  next
1787
1765
  end
1788
1766
 
1789
1767
  end
1790
1768
  end
1791
- when 31 then
1792
- # line 376 "/Users/ammar/src/code/ruby/projects/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
1769
+ when 29 then
1770
+ # line 376 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
1793
1771
  begin
1794
1772
  begin p = ((te))-1; end
1795
1773
  begin
@@ -1797,23 +1775,23 @@ p = p - 1; begin
1797
1775
  begin
1798
1776
  stack[top] = cs
1799
1777
  top+= 1
1800
- cs = 111
1778
+ cs = 110
1801
1779
  _goto_level = _again
1802
1780
  next
1803
1781
  end
1804
1782
 
1805
1783
  end
1806
1784
  end
1807
- when 39 then
1808
- # line 389 "/Users/ammar/src/code/ruby/projects/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
1785
+ when 36 then
1786
+ # line 389 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
1809
1787
  begin
1810
1788
  te = p+1
1811
1789
  begin
1812
1790
  emit(:meta, :dot, *text(data, ts, te))
1813
1791
  end
1814
1792
  end
1815
- when 43 then
1816
- # line 393 "/Users/ammar/src/code/ruby/projects/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
1793
+ when 41 then
1794
+ # line 393 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
1817
1795
  begin
1818
1796
  te = p+1
1819
1797
  begin
@@ -1824,16 +1802,16 @@ te = p+1
1824
1802
  end
1825
1803
  end
1826
1804
  end
1827
- when 42 then
1828
- # line 403 "/Users/ammar/src/code/ruby/projects/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
1805
+ when 40 then
1806
+ # line 403 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
1829
1807
  begin
1830
1808
  te = p+1
1831
1809
  begin
1832
1810
  emit(:anchor, :bol, *text(data, ts, te))
1833
1811
  end
1834
1812
  end
1835
- when 36 then
1836
- # line 407 "/Users/ammar/src/code/ruby/projects/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
1813
+ when 33 then
1814
+ # line 407 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
1837
1815
  begin
1838
1816
  te = p+1
1839
1817
  begin
@@ -1841,7 +1819,7 @@ te = p+1
1841
1819
  end
1842
1820
  end
1843
1821
  when 59 then
1844
- # line 411 "/Users/ammar/src/code/ruby/projects/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
1822
+ # line 411 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
1845
1823
  begin
1846
1824
  te = p+1
1847
1825
  begin
@@ -1849,7 +1827,7 @@ te = p+1
1849
1827
  end
1850
1828
  end
1851
1829
  when 58 then
1852
- # line 415 "/Users/ammar/src/code/ruby/projects/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
1830
+ # line 415 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
1853
1831
  begin
1854
1832
  te = p+1
1855
1833
  begin
@@ -1863,8 +1841,8 @@ te = p+1
1863
1841
  end
1864
1842
  end
1865
1843
  end
1866
- when 41 then
1867
- # line 426 "/Users/ammar/src/code/ruby/projects/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
1844
+ when 39 then
1845
+ # line 426 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
1868
1846
  begin
1869
1847
  te = p+1
1870
1848
  begin
@@ -1872,7 +1850,7 @@ te = p+1
1872
1850
  end
1873
1851
  end
1874
1852
  when 49 then
1875
- # line 441 "/Users/ammar/src/code/ruby/projects/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
1853
+ # line 441 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
1876
1854
  begin
1877
1855
  te = p+1
1878
1856
  begin
@@ -1885,7 +1863,7 @@ te = p+1
1885
1863
  begin
1886
1864
  stack[top] = cs
1887
1865
  top+= 1
1888
- cs = 150
1866
+ cs = 149
1889
1867
  _goto_level = _again
1890
1868
  next
1891
1869
  end
@@ -1893,7 +1871,7 @@ te = p+1
1893
1871
  end
1894
1872
  end
1895
1873
  when 50 then
1896
- # line 472 "/Users/ammar/src/code/ruby/projects/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
1874
+ # line 472 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
1897
1875
  begin
1898
1876
  te = p+1
1899
1877
  begin
@@ -1904,8 +1882,8 @@ te = p+1
1904
1882
  emit_options(text, ts, te)
1905
1883
  end
1906
1884
  end
1907
- when 9 then
1908
- # line 486 "/Users/ammar/src/code/ruby/projects/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
1885
+ when 7 then
1886
+ # line 486 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
1909
1887
  begin
1910
1888
  te = p+1
1911
1889
  begin
@@ -1917,8 +1895,8 @@ te = p+1
1917
1895
  end
1918
1896
  end
1919
1897
  end
1920
- when 8 then
1921
- # line 503 "/Users/ammar/src/code/ruby/projects/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
1898
+ when 6 then
1899
+ # line 503 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
1922
1900
  begin
1923
1901
  te = p+1
1924
1902
  begin
@@ -1939,8 +1917,8 @@ te = p+1
1939
1917
  end
1940
1918
  end
1941
1919
  end
1942
- when 11 then
1943
- # line 544 "/Users/ammar/src/code/ruby/projects/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
1920
+ when 9 then
1921
+ # line 544 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
1944
1922
  begin
1945
1923
  te = p+1
1946
1924
  begin
@@ -2006,7 +1984,7 @@ te = p+1
2006
1984
  end
2007
1985
  end
2008
1986
  when 56 then
2009
- # line 609 "/Users/ammar/src/code/ruby/projects/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
1987
+ # line 609 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
2010
1988
  begin
2011
1989
  te = p+1
2012
1990
  begin
@@ -2018,7 +1996,7 @@ te = p+1
2018
1996
  end
2019
1997
  end
2020
1998
  when 52 then
2021
- # line 617 "/Users/ammar/src/code/ruby/projects/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
1999
+ # line 617 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
2022
2000
  begin
2023
2001
  te = p+1
2024
2002
  begin
@@ -2030,7 +2008,7 @@ te = p+1
2030
2008
  end
2031
2009
  end
2032
2010
  when 54 then
2033
- # line 625 "/Users/ammar/src/code/ruby/projects/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
2011
+ # line 625 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
2034
2012
  begin
2035
2013
  te = p+1
2036
2014
  begin
@@ -2042,27 +2020,30 @@ te = p+1
2042
2020
  end
2043
2021
  end
2044
2022
  when 62 then
2045
- # line 633 "/Users/ammar/src/code/ruby/projects/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
2023
+ # line 633 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
2046
2024
  begin
2047
2025
  te = p+1
2048
2026
  begin
2049
2027
  emit(:quantifier, :interval, *text(data, ts, te))
2050
2028
  end
2051
2029
  end
2052
- when 4 then
2053
- # line 648 "/Users/ammar/src/code/ruby/projects/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
2030
+ when 45 then
2031
+ # line 648 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
2054
2032
  begin
2055
2033
  te = p+1
2056
2034
  begin
2057
2035
  if free_spacing
2058
2036
  emit(:free_space, :comment, *text(data, ts, te))
2059
2037
  else
2060
- append_literal(data, ts, te)
2038
+ # consume only the pound sign (#) and backtrack to do regular scanning
2039
+ append_literal(data, ts, ts + 1)
2040
+ begin p = (( ts + 1))-1; end
2041
+
2061
2042
  end
2062
2043
  end
2063
2044
  end
2064
2045
  when 48 then
2065
- # line 472 "/Users/ammar/src/code/ruby/projects/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
2046
+ # line 472 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
2066
2047
  begin
2067
2048
  te = p
2068
2049
  p = p - 1; begin
@@ -2074,7 +2055,7 @@ p = p - 1; begin
2074
2055
  end
2075
2056
  end
2076
2057
  when 46 then
2077
- # line 521 "/Users/ammar/src/code/ruby/projects/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
2058
+ # line 521 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
2078
2059
  begin
2079
2060
  te = p
2080
2061
  p = p - 1; begin
@@ -2083,7 +2064,7 @@ p = p - 1; begin
2083
2064
  end
2084
2065
  end
2085
2066
  when 55 then
2086
- # line 609 "/Users/ammar/src/code/ruby/projects/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
2067
+ # line 609 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
2087
2068
  begin
2088
2069
  te = p
2089
2070
  p = p - 1; begin
@@ -2095,7 +2076,7 @@ p = p - 1; begin
2095
2076
  end
2096
2077
  end
2097
2078
  when 51 then
2098
- # line 617 "/Users/ammar/src/code/ruby/projects/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
2079
+ # line 617 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
2099
2080
  begin
2100
2081
  te = p
2101
2082
  p = p - 1; begin
@@ -2107,7 +2088,7 @@ p = p - 1; begin
2107
2088
  end
2108
2089
  end
2109
2090
  when 53 then
2110
- # line 625 "/Users/ammar/src/code/ruby/projects/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
2091
+ # line 625 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
2111
2092
  begin
2112
2093
  te = p
2113
2094
  p = p - 1; begin
@@ -2119,7 +2100,7 @@ p = p - 1; begin
2119
2100
  end
2120
2101
  end
2121
2102
  when 61 then
2122
- # line 633 "/Users/ammar/src/code/ruby/projects/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
2103
+ # line 633 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
2123
2104
  begin
2124
2105
  te = p
2125
2106
  p = p - 1; begin
@@ -2127,7 +2108,7 @@ p = p - 1; begin
2127
2108
  end
2128
2109
  end
2129
2110
  when 60 then
2130
- # line 638 "/Users/ammar/src/code/ruby/projects/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
2111
+ # line 638 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
2131
2112
  begin
2132
2113
  te = p
2133
2114
  p = p - 1; begin
@@ -2135,22 +2116,37 @@ p = p - 1; begin
2135
2116
  end
2136
2117
  end
2137
2118
  when 57 then
2138
- # line 644 "/Users/ammar/src/code/ruby/projects/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
2119
+ # line 644 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
2139
2120
  begin
2140
2121
  te = p
2141
2122
  p = p - 1; begin
2142
2123
  begin
2143
2124
  stack[top] = cs
2144
2125
  top+= 1
2145
- cs = 139
2126
+ cs = 138
2146
2127
  _goto_level = _again
2147
2128
  next
2148
2129
  end
2149
2130
 
2150
2131
  end
2151
2132
  end
2152
- when 45 then
2153
- # line 656 "/Users/ammar/src/code/ruby/projects/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
2133
+ when 44 then
2134
+ # line 648 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
2135
+ begin
2136
+ te = p
2137
+ p = p - 1; begin
2138
+ if free_spacing
2139
+ emit(:free_space, :comment, *text(data, ts, te))
2140
+ else
2141
+ # consume only the pound sign (#) and backtrack to do regular scanning
2142
+ append_literal(data, ts, ts + 1)
2143
+ begin p = (( ts + 1))-1; end
2144
+
2145
+ end
2146
+ end
2147
+ end
2148
+ when 43 then
2149
+ # line 658 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
2154
2150
  begin
2155
2151
  te = p
2156
2152
  p = p - 1; begin
@@ -2161,16 +2157,16 @@ p = p - 1; begin
2161
2157
  end
2162
2158
  end
2163
2159
  end
2164
- when 44 then
2165
- # line 671 "/Users/ammar/src/code/ruby/projects/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
2160
+ when 42 then
2161
+ # line 673 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
2166
2162
  begin
2167
2163
  te = p
2168
2164
  p = p - 1; begin
2169
2165
  append_literal(data, ts, te)
2170
2166
  end
2171
2167
  end
2172
- when 5 then
2173
- # line 472 "/Users/ammar/src/code/ruby/projects/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
2168
+ when 3 then
2169
+ # line 472 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
2174
2170
  begin
2175
2171
  begin p = ((te))-1; end
2176
2172
  begin
@@ -2181,35 +2177,27 @@ p = p - 1; begin
2181
2177
  emit_options(text, ts, te)
2182
2178
  end
2183
2179
  end
2184
- when 12 then
2185
- # line 638 "/Users/ammar/src/code/ruby/projects/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
2180
+ when 10 then
2181
+ # line 638 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
2186
2182
  begin
2187
2183
  begin p = ((te))-1; end
2188
2184
  begin
2189
2185
  append_literal(data, ts, te)
2190
2186
  end
2191
2187
  end
2192
- when 10 then
2193
- # line 644 "/Users/ammar/src/code/ruby/projects/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
2188
+ when 8 then
2189
+ # line 644 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
2194
2190
  begin
2195
2191
  begin p = ((te))-1; end
2196
2192
  begin
2197
2193
  begin
2198
2194
  stack[top] = cs
2199
2195
  top+= 1
2200
- cs = 139
2196
+ cs = 138
2201
2197
  _goto_level = _again
2202
2198
  next
2203
2199
  end
2204
2200
 
2205
- end
2206
- end
2207
- when 3 then
2208
- # line 671 "/Users/ammar/src/code/ruby/projects/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
2209
- begin
2210
- begin p = ((te))-1; end
2211
- begin
2212
- append_literal(data, ts, te)
2213
2201
  end
2214
2202
  end
2215
2203
  when 1 then
@@ -2231,13 +2219,13 @@ end
2231
2219
  end
2232
2220
  end
2233
2221
  when 74 then
2234
- # line 137 "/Users/ammar/src/code/ruby/projects/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
2222
+ # line 137 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
2235
2223
  begin
2236
2224
 
2237
2225
  text = ts ? copy(data, ts-1..-1) : data.pack('c*')
2238
2226
  raise PrematureEndError.new( text )
2239
2227
  end
2240
- # line 211 "/Users/ammar/src/code/ruby/projects/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
2228
+ # line 211 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
2241
2229
  begin
2242
2230
  te = p
2243
2231
  p = p - 1; begin
@@ -2245,21 +2233,21 @@ p = p - 1; begin
2245
2233
  begin
2246
2234
  stack[top] = cs
2247
2235
  top+= 1
2248
- cs = 131
2236
+ cs = 130
2249
2237
  _goto_level = _again
2250
2238
  next
2251
2239
  end
2252
2240
 
2253
2241
  end
2254
2242
  end
2255
- when 19 then
2256
- # line 137 "/Users/ammar/src/code/ruby/projects/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
2243
+ when 17 then
2244
+ # line 137 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
2257
2245
  begin
2258
2246
 
2259
2247
  text = ts ? copy(data, ts-1..-1) : data.pack('c*')
2260
2248
  raise PrematureEndError.new( text )
2261
2249
  end
2262
- # line 211 "/Users/ammar/src/code/ruby/projects/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
2250
+ # line 211 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
2263
2251
  begin
2264
2252
  begin p = ((te))-1; end
2265
2253
  begin
@@ -2267,7 +2255,7 @@ p = p - 1; begin
2267
2255
  begin
2268
2256
  stack[top] = cs
2269
2257
  top+= 1
2270
- cs = 131
2258
+ cs = 130
2271
2259
  _goto_level = _again
2272
2260
  next
2273
2261
  end
@@ -2275,13 +2263,13 @@ p = p - 1; begin
2275
2263
  end
2276
2264
  end
2277
2265
  when 93 then
2278
- # line 137 "/Users/ammar/src/code/ruby/projects/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
2266
+ # line 137 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
2279
2267
  begin
2280
2268
 
2281
2269
  text = ts ? copy(data, ts-1..-1) : data.pack('c*')
2282
2270
  raise PrematureEndError.new( text )
2283
2271
  end
2284
- # line 329 "/Users/ammar/src/code/ruby/projects/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
2272
+ # line 329 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
2285
2273
  begin
2286
2274
  te = p
2287
2275
  p = p - 1; begin
@@ -2296,13 +2284,13 @@ p = p - 1; begin
2296
2284
  end
2297
2285
  end
2298
2286
  when 89 then
2299
- # line 137 "/Users/ammar/src/code/ruby/projects/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
2287
+ # line 137 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
2300
2288
  begin
2301
2289
 
2302
2290
  text = ts ? copy(data, ts-1..-1) : data.pack('c*')
2303
2291
  raise PrematureEndError.new( text )
2304
2292
  end
2305
- # line 338 "/Users/ammar/src/code/ruby/projects/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
2293
+ # line 338 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
2306
2294
  begin
2307
2295
  te = p
2308
2296
  p = p - 1; begin
@@ -2317,13 +2305,13 @@ p = p - 1; begin
2317
2305
  end
2318
2306
  end
2319
2307
  when 91 then
2320
- # line 137 "/Users/ammar/src/code/ruby/projects/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
2308
+ # line 137 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
2321
2309
  begin
2322
2310
 
2323
2311
  text = ts ? copy(data, ts-1..-1) : data.pack('c*')
2324
2312
  raise PrematureEndError.new( text )
2325
2313
  end
2326
- # line 343 "/Users/ammar/src/code/ruby/projects/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
2314
+ # line 343 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
2327
2315
  begin
2328
2316
  te = p
2329
2317
  p = p - 1; begin
@@ -2337,14 +2325,14 @@ p = p - 1; begin
2337
2325
 
2338
2326
  end
2339
2327
  end
2340
- when 26 then
2341
- # line 137 "/Users/ammar/src/code/ruby/projects/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
2328
+ when 24 then
2329
+ # line 137 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
2342
2330
  begin
2343
2331
 
2344
2332
  text = ts ? copy(data, ts-1..-1) : data.pack('c*')
2345
2333
  raise PrematureEndError.new( text )
2346
2334
  end
2347
- # line 338 "/Users/ammar/src/code/ruby/projects/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
2335
+ # line 338 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
2348
2336
  begin
2349
2337
  begin p = ((te))-1; end
2350
2338
  begin
@@ -2358,14 +2346,14 @@ p = p - 1; begin
2358
2346
 
2359
2347
  end
2360
2348
  end
2361
- when 28 then
2362
- # line 137 "/Users/ammar/src/code/ruby/projects/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
2349
+ when 26 then
2350
+ # line 137 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
2363
2351
  begin
2364
2352
 
2365
2353
  text = ts ? copy(data, ts-1..-1) : data.pack('c*')
2366
2354
  raise PrematureEndError.new( text )
2367
2355
  end
2368
- # line 343 "/Users/ammar/src/code/ruby/projects/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
2356
+ # line 343 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
2369
2357
  begin
2370
2358
  begin p = ((te))-1; end
2371
2359
  begin
@@ -2379,14 +2367,14 @@ p = p - 1; begin
2379
2367
 
2380
2368
  end
2381
2369
  end
2382
- when 30 then
2383
- # line 143 "/Users/ammar/src/code/ruby/projects/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
2370
+ when 28 then
2371
+ # line 143 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
2384
2372
  begin
2385
2373
 
2386
2374
  text = ts ? copy(data, ts-1..-1) : data.pack('c*')
2387
2375
  validation_error(:sequence, 'sequence', text)
2388
2376
  end
2389
- # line 334 "/Users/ammar/src/code/ruby/projects/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
2377
+ # line 334 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
2390
2378
  begin
2391
2379
  te = p+1
2392
2380
  begin
@@ -2399,22 +2387,22 @@ te = p+1
2399
2387
 
2400
2388
  end
2401
2389
  end
2402
- when 7 then
2403
- # line 150 "/Users/ammar/src/code/ruby/projects/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
2390
+ when 5 then
2391
+ # line 150 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
2404
2392
  begin
2405
2393
  self.group_depth = group_depth - 1 end
2406
- # line 457 "/Users/ammar/src/code/ruby/projects/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
2394
+ # line 457 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
2407
2395
  begin
2408
2396
  te = p+1
2409
2397
  begin
2410
2398
  emit(:group, :comment, *text(data, ts, te))
2411
2399
  end
2412
2400
  end
2413
- when 38 then
2414
- # line 150 "/Users/ammar/src/code/ruby/projects/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
2401
+ when 35 then
2402
+ # line 150 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
2415
2403
  begin
2416
2404
  self.group_depth = group_depth - 1 end
2417
- # line 526 "/Users/ammar/src/code/ruby/projects/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
2405
+ # line 526 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
2418
2406
  begin
2419
2407
  te = p+1
2420
2408
  begin
@@ -2432,11 +2420,11 @@ te = p+1
2432
2420
  end
2433
2421
  end
2434
2422
  end
2435
- when 40 then
2436
- # line 151 "/Users/ammar/src/code/ruby/projects/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
2423
+ when 37 then
2424
+ # line 151 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
2437
2425
  begin
2438
2426
  self.set_depth = set_depth + 1 end
2439
- # line 432 "/Users/ammar/src/code/ruby/projects/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
2427
+ # line 432 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
2440
2428
  begin
2441
2429
  te = p+1
2442
2430
  begin
@@ -2444,7 +2432,7 @@ te = p+1
2444
2432
  begin
2445
2433
  stack[top] = cs
2446
2434
  top+= 1
2447
- cs = 131
2435
+ cs = 130
2448
2436
  _goto_level = _again
2449
2437
  next
2450
2438
  end
@@ -2452,10 +2440,10 @@ te = p+1
2452
2440
  end
2453
2441
  end
2454
2442
  when 68 then
2455
- # line 152 "/Users/ammar/src/code/ruby/projects/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
2443
+ # line 152 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
2456
2444
  begin
2457
2445
  self.set_depth = set_depth - 1 end
2458
- # line 158 "/Users/ammar/src/code/ruby/projects/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
2446
+ # line 158 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
2459
2447
  begin
2460
2448
  te = p+1
2461
2449
  begin
@@ -2470,7 +2458,7 @@ te = p+1
2470
2458
 
2471
2459
  else
2472
2460
  begin
2473
- cs = 111
2461
+ cs = 110
2474
2462
  _goto_level = _again
2475
2463
  next
2476
2464
  end
@@ -2479,10 +2467,10 @@ te = p+1
2479
2467
  end
2480
2468
  end
2481
2469
  when 73 then
2482
- # line 152 "/Users/ammar/src/code/ruby/projects/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
2470
+ # line 152 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
2483
2471
  begin
2484
2472
  self.set_depth = set_depth - 1 end
2485
- # line 167 "/Users/ammar/src/code/ruby/projects/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
2473
+ # line 167 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
2486
2474
  begin
2487
2475
  te = p+1
2488
2476
  begin # special case, emits two tokens
@@ -2498,7 +2486,7 @@ te = p+1
2498
2486
 
2499
2487
  else
2500
2488
  begin
2501
- cs = 111
2489
+ cs = 110
2502
2490
  _goto_level = _again
2503
2491
  next
2504
2492
  end
@@ -2506,11 +2494,11 @@ te = p+1
2506
2494
  end
2507
2495
  end
2508
2496
  end
2509
- when 22 then
2510
- # line 152 "/Users/ammar/src/code/ruby/projects/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
2497
+ when 20 then
2498
+ # line 152 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
2511
2499
  begin
2512
2500
  self.set_depth = set_depth - 1 end
2513
- # line 216 "/Users/ammar/src/code/ruby/projects/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
2501
+ # line 216 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
2514
2502
  begin
2515
2503
  te = p+1
2516
2504
  begin
@@ -2526,22 +2514,22 @@ te = p+1
2526
2514
  emit(type, class_name.to_sym, text, ts, te)
2527
2515
  end
2528
2516
  end
2529
- when 21 then
2530
- # line 152 "/Users/ammar/src/code/ruby/projects/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
2517
+ when 19 then
2518
+ # line 152 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
2531
2519
  begin
2532
2520
  self.set_depth = set_depth - 1 end
2533
- # line 229 "/Users/ammar/src/code/ruby/projects/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
2521
+ # line 229 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
2534
2522
  begin
2535
2523
  te = p+1
2536
2524
  begin
2537
2525
  emit(:set, :collation, *text(data, ts, te))
2538
2526
  end
2539
2527
  end
2540
- when 23 then
2541
- # line 152 "/Users/ammar/src/code/ruby/projects/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
2528
+ when 21 then
2529
+ # line 152 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
2542
2530
  begin
2543
2531
  self.set_depth = set_depth - 1 end
2544
- # line 233 "/Users/ammar/src/code/ruby/projects/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
2532
+ # line 233 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
2545
2533
  begin
2546
2534
  te = p+1
2547
2535
  begin
@@ -2553,7 +2541,7 @@ te = p+1
2553
2541
  begin
2554
2542
  te = p+1
2555
2543
  end
2556
- # line 151 "/Users/ammar/src/code/ruby/projects/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
2544
+ # line 151 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
2557
2545
  begin
2558
2546
  self.set_depth = set_depth + 1 end
2559
2547
  when 81 then
@@ -2561,7 +2549,7 @@ te = p+1
2561
2549
  begin
2562
2550
  te = p+1
2563
2551
  end
2564
- # line 271 "/Users/ammar/src/code/ruby/projects/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
2552
+ # line 271 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
2565
2553
  begin
2566
2554
  act = 18; end
2567
2555
  when 80 then
@@ -2569,7 +2557,7 @@ act = 18; end
2569
2557
  begin
2570
2558
  te = p+1
2571
2559
  end
2572
- # line 277 "/Users/ammar/src/code/ruby/projects/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
2560
+ # line 277 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
2573
2561
  begin
2574
2562
  act = 19; end
2575
2563
  when 2 then
@@ -2577,7 +2565,7 @@ act = 19; end
2577
2565
  begin
2578
2566
  te = p+1
2579
2567
  end
2580
- # line 671 "/Users/ammar/src/code/ruby/projects/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
2568
+ # line 673 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
2581
2569
  begin
2582
2570
  act = 56; end
2583
2571
  when 47 then
@@ -2585,13 +2573,13 @@ act = 56; end
2585
2573
  begin
2586
2574
  te = p+1
2587
2575
  end
2588
- # line 150 "/Users/ammar/src/code/ruby/projects/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
2576
+ # line 150 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
2589
2577
  begin
2590
2578
  self.group_depth = group_depth - 1 end
2591
- # line 149 "/Users/ammar/src/code/ruby/projects/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
2579
+ # line 149 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
2592
2580
  begin
2593
2581
  self.group_depth = group_depth + 1 end
2594
- # line 2594 "/Users/ammar/src/code/ruby/projects/regexp_parser/lib/regexp_parser/scanner.rb"
2582
+ # line 2582 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner.rb"
2595
2583
  end
2596
2584
  end
2597
2585
  end
@@ -2601,7 +2589,7 @@ te = p+1
2601
2589
  # line 1 "NONE"
2602
2590
  begin
2603
2591
  ts = nil; end
2604
- when 33 then
2592
+ when 31 then
2605
2593
  # line 1 "NONE"
2606
2594
  begin
2607
2595
  ts = nil; end
@@ -2609,7 +2597,7 @@ ts = nil; end
2609
2597
  begin
2610
2598
  act = 0
2611
2599
  end
2612
- # line 2612 "/Users/ammar/src/code/ruby/projects/regexp_parser/lib/regexp_parser/scanner.rb"
2600
+ # line 2600 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner.rb"
2613
2601
  end
2614
2602
 
2615
2603
  if cs == 0
@@ -2630,20 +2618,20 @@ act = 0
2630
2618
  next;
2631
2619
  end
2632
2620
  case _re_scanner_eof_actions[cs]
2633
- when 13 then
2634
- # line 8 "/Users/ammar/src/code/ruby/projects/regexp_parser/lib/regexp_parser/scanner/property.rl"
2621
+ when 11 then
2622
+ # line 8 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/property.rl"
2635
2623
  begin
2636
2624
 
2637
2625
  raise PrematureEndError.new('unicode property')
2638
2626
  end
2639
- when 24 then
2640
- # line 137 "/Users/ammar/src/code/ruby/projects/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
2627
+ when 22 then
2628
+ # line 137 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
2641
2629
  begin
2642
2630
 
2643
2631
  text = ts ? copy(data, ts-1..-1) : data.pack('c*')
2644
2632
  raise PrematureEndError.new( text )
2645
2633
  end
2646
- # line 2646 "/Users/ammar/src/code/ruby/projects/regexp_parser/lib/regexp_parser/scanner.rb"
2634
+ # line 2634 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner.rb"
2647
2635
  end
2648
2636
  end
2649
2637
 
@@ -2654,7 +2642,7 @@ act = 0
2654
2642
  end
2655
2643
  end
2656
2644
 
2657
- # line 770 "/Users/ammar/src/code/ruby/projects/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
2645
+ # line 767 "/Users/jannoschmuller/code/regexp_parser/lib/regexp_parser/scanner/scanner.rl"
2658
2646
 
2659
2647
  # to avoid "warning: assigned but unused variable - testEof"
2660
2648
  testEof = testEof
@@ -2705,6 +2693,18 @@ end
2705
2693
  attr_accessor :tokens, :literal, :block, :free_spacing, :spacing_stack,
2706
2694
  :group_depth, :set_depth, :conditional_stack
2707
2695
 
2696
+ def free_spacing?(input_object, options)
2697
+ if options && !input_object.is_a?(String)
2698
+ raise ArgumentError, 'options cannot be supplied unless scanning a String'
2699
+ end
2700
+
2701
+ options = input_object.options if input_object.is_a?(::Regexp)
2702
+
2703
+ return false unless options
2704
+
2705
+ options & Regexp::EXTENDED != 0
2706
+ end
2707
+
2708
2708
  def in_group?
2709
2709
  group_depth > 0
2710
2710
  end