mail 2.6.6 → 2.7.0.rc1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (105) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.rdoc +25 -6
  3. data/Dependencies.txt +0 -1
  4. data/Gemfile +5 -8
  5. data/MIT-LICENSE +1 -1
  6. data/README.md +22 -11
  7. data/Rakefile +0 -6
  8. data/lib/mail.rb +2 -10
  9. data/lib/mail/attachments_list.rb +3 -2
  10. data/lib/mail/body.rb +3 -3
  11. data/lib/mail/core_extensions/smtp.rb +19 -16
  12. data/lib/mail/core_extensions/string.rb +0 -4
  13. data/lib/mail/elements/address.rb +9 -4
  14. data/lib/mail/elements/address_list.rb +10 -18
  15. data/lib/mail/elements/content_disposition_element.rb +8 -15
  16. data/lib/mail/elements/content_location_element.rb +5 -10
  17. data/lib/mail/elements/content_transfer_encoding_element.rb +5 -10
  18. data/lib/mail/elements/content_type_element.rb +8 -19
  19. data/lib/mail/elements/date_time_element.rb +6 -14
  20. data/lib/mail/elements/envelope_from_element.rb +14 -21
  21. data/lib/mail/elements/message_ids_element.rb +8 -12
  22. data/lib/mail/elements/mime_version_element.rb +6 -14
  23. data/lib/mail/elements/phrase_list.rb +6 -9
  24. data/lib/mail/elements/received_element.rb +9 -15
  25. data/lib/mail/encodings.rb +12 -14
  26. data/lib/mail/field.rb +7 -4
  27. data/lib/mail/fields/common/parameter_hash.rb +1 -1
  28. data/lib/mail/fields/content_type_field.rb +2 -7
  29. data/lib/mail/fields/unstructured_field.rb +2 -2
  30. data/lib/mail/header.rb +1 -0
  31. data/lib/mail/message.rb +23 -25
  32. data/lib/mail/multibyte.rb +51 -0
  33. data/lib/mail/multibyte/chars.rb +27 -27
  34. data/lib/mail/network/delivery_methods/exim.rb +10 -6
  35. data/lib/mail/network/delivery_methods/sendmail.rb +2 -6
  36. data/lib/mail/network/delivery_methods/smtp.rb +14 -6
  37. data/lib/mail/parsers.rb +16 -24
  38. data/lib/mail/parsers/address_lists_parser.rb +15321 -112
  39. data/lib/mail/parsers/address_lists_parser.rl +166 -0
  40. data/lib/mail/parsers/content_disposition_parser.rb +698 -55
  41. data/lib/mail/parsers/content_disposition_parser.rl +76 -0
  42. data/lib/mail/parsers/content_location_parser.rb +565 -23
  43. data/lib/mail/parsers/content_location_parser.rl +65 -0
  44. data/lib/mail/parsers/content_transfer_encoding_parser.rb +410 -22
  45. data/lib/mail/parsers/content_transfer_encoding_parser.rl +58 -0
  46. data/lib/mail/parsers/content_type_parser.rb +841 -54
  47. data/lib/mail/parsers/content_type_parser.rl +77 -0
  48. data/lib/mail/parsers/date_time_parser.rb +773 -26
  49. data/lib/mail/parsers/date_time_parser.rl +56 -0
  50. data/lib/mail/parsers/envelope_from_parser.rb +2051 -36
  51. data/lib/mail/parsers/envelope_from_parser.rl +76 -0
  52. data/lib/mail/parsers/message_ids_parser.rb +1494 -25
  53. data/lib/mail/parsers/message_ids_parser.rl +76 -0
  54. data/lib/mail/parsers/mime_version_parser.rb +393 -26
  55. data/lib/mail/parsers/mime_version_parser.rl +55 -0
  56. data/lib/mail/parsers/phrase_lists_parser.rb +529 -19
  57. data/lib/mail/parsers/phrase_lists_parser.rl +77 -0
  58. data/lib/mail/parsers/received_parser.rb +4711 -38
  59. data/lib/mail/parsers/received_parser.rl +78 -0
  60. data/lib/mail/parsers/rfc2045_content_transfer_encoding.rl +12 -0
  61. data/lib/mail/parsers/rfc2045_content_type.rl +24 -0
  62. data/lib/mail/parsers/rfc2045_mime.rl +15 -0
  63. data/lib/mail/parsers/rfc2183_content_disposition.rl +14 -0
  64. data/lib/mail/parsers/rfc5234_abnf_core_rules.rl +16 -0
  65. data/lib/mail/parsers/rfc5322.rl +57 -0
  66. data/lib/mail/parsers/rfc5322_address.rl +70 -0
  67. data/lib/mail/parsers/{ragel/date_time.rl → rfc5322_date_time.rl} +7 -1
  68. data/lib/mail/parsers/rfc5322_lexical_tokens.rl +56 -0
  69. data/lib/mail/part.rb +1 -1
  70. data/lib/mail/parts_list.rb +5 -6
  71. data/lib/mail/utilities.rb +4 -2
  72. data/lib/mail/version.rb +3 -3
  73. data/lib/mail/version_specific/ruby_1_8.rb +28 -2
  74. data/lib/mail/version_specific/ruby_1_9.rb +48 -8
  75. metadata +28 -45
  76. data/lib/mail/core_extensions/string/access.rb +0 -146
  77. data/lib/mail/core_extensions/string/multibyte.rb +0 -79
  78. data/lib/mail/parsers/ragel.rb +0 -18
  79. data/lib/mail/parsers/ragel/common.rl +0 -185
  80. data/lib/mail/parsers/ragel/parser_info.rb +0 -61
  81. data/lib/mail/parsers/ragel/ruby.rb +0 -40
  82. data/lib/mail/parsers/ragel/ruby/machines/address_lists_machine.rb +0 -14864
  83. data/lib/mail/parsers/ragel/ruby/machines/address_lists_machine.rb.rl +0 -37
  84. data/lib/mail/parsers/ragel/ruby/machines/content_disposition_machine.rb +0 -751
  85. data/lib/mail/parsers/ragel/ruby/machines/content_disposition_machine.rb.rl +0 -37
  86. data/lib/mail/parsers/ragel/ruby/machines/content_location_machine.rb +0 -614
  87. data/lib/mail/parsers/ragel/ruby/machines/content_location_machine.rb.rl +0 -37
  88. data/lib/mail/parsers/ragel/ruby/machines/content_transfer_encoding_machine.rb +0 -447
  89. data/lib/mail/parsers/ragel/ruby/machines/content_transfer_encoding_machine.rb.rl +0 -37
  90. data/lib/mail/parsers/ragel/ruby/machines/content_type_machine.rb +0 -825
  91. data/lib/mail/parsers/ragel/ruby/machines/content_type_machine.rb.rl +0 -37
  92. data/lib/mail/parsers/ragel/ruby/machines/date_time_machine.rb +0 -817
  93. data/lib/mail/parsers/ragel/ruby/machines/date_time_machine.rb.rl +0 -37
  94. data/lib/mail/parsers/ragel/ruby/machines/envelope_from_machine.rb +0 -2149
  95. data/lib/mail/parsers/ragel/ruby/machines/envelope_from_machine.rb.rl +0 -37
  96. data/lib/mail/parsers/ragel/ruby/machines/message_ids_machine.rb +0 -1570
  97. data/lib/mail/parsers/ragel/ruby/machines/message_ids_machine.rb.rl +0 -37
  98. data/lib/mail/parsers/ragel/ruby/machines/mime_version_machine.rb +0 -440
  99. data/lib/mail/parsers/ragel/ruby/machines/mime_version_machine.rb.rl +0 -37
  100. data/lib/mail/parsers/ragel/ruby/machines/phrase_lists_machine.rb +0 -564
  101. data/lib/mail/parsers/ragel/ruby/machines/phrase_lists_machine.rb.rl +0 -37
  102. data/lib/mail/parsers/ragel/ruby/machines/rb_actions.rl +0 -51
  103. data/lib/mail/parsers/ragel/ruby/machines/received_machine.rb +0 -5144
  104. data/lib/mail/parsers/ragel/ruby/machines/received_machine.rb.rl +0 -37
  105. data/lib/mail/parsers/ragel/ruby/parser.rb.rl.erb +0 -37
@@ -0,0 +1,76 @@
1
+ # frozen_string_literal: true
2
+ require 'mail/utilities'
3
+
4
+ %%{
5
+ machine envelope_from;
6
+
7
+ # Address
8
+ action address_s { address_s = p }
9
+ action address_e { envelope_from.address = data[address_s..(p-1)].rstrip }
10
+
11
+ # ctime_date
12
+ action ctime_date_s { ctime_date_s = p }
13
+ action ctime_date_e { envelope_from.ctime_date = data[ctime_date_s..(p-1)] }
14
+
15
+ # No-op actions
16
+ action angle_addr_s {}
17
+ action comment_e {}
18
+ action comment_s {}
19
+ action domain_e {}
20
+ action domain_s {}
21
+ action local_dot_atom_e {}
22
+ action local_dot_atom_pre_comment_e {}
23
+ action local_dot_atom_pre_comment_s {}
24
+ action local_dot_atom_s {}
25
+ action phrase_s {}
26
+ action phrase_e {}
27
+ action qstr_e {}
28
+ action qstr_s {}
29
+ action date_s {}
30
+ action date_e {}
31
+ action time_s {}
32
+ action time_e {}
33
+ action local_quoted_string_s {}
34
+ action local_quoted_string_e {}
35
+ action obs_domain_list_s {}
36
+ action obs_domain_list_e {}
37
+ action group_name_s {}
38
+ action group_name_e {}
39
+ action msg_id_s {}
40
+ action msg_id_e {}
41
+ action received_tokens_s {}
42
+ action received_tokens_e {}
43
+
44
+ include rfc5322 "rfc5322.rl";
45
+ main := envelope_from;
46
+ }%%
47
+
48
+ module Mail::Parsers
49
+ module EnvelopeFromParser
50
+ EnvelopeFromStruct = Struct.new(:address, :ctime_date, :error)
51
+
52
+ %%write data noprefix;
53
+
54
+ def self.parse(data)
55
+ envelope_from = EnvelopeFromStruct.new
56
+ return envelope_from if Mail::Utilities.blank?(data)
57
+
58
+ # Parser state
59
+ address_s = ctime_date_s = nil
60
+
61
+ # 5.1 Variables Used by Ragel
62
+ p = 0
63
+ eof = pe = data.length
64
+ stack = []
65
+
66
+ %%write init;
67
+ %%write exec;
68
+
69
+ if p != eof || cs < %%{ write first_final; }%%
70
+ raise Mail::Field::ParseError.new(Mail::EnvelopeFromElement, data, "Only able to parse up to #{data[0..p]}")
71
+ end
72
+
73
+ envelope_from
74
+ end
75
+ end
76
+ end
@@ -1,39 +1,1508 @@
1
+
1
2
  # frozen_string_literal: true
3
+ require 'mail/utilities'
4
+
5
+
6
+
7
+
2
8
  module Mail::Parsers
3
- class MessageIdsParser
4
- def parse(s)
5
- if Mail::Utilities.blank?(s)
6
- return MessageIdsStruct.new
7
- end
9
+ module MessageIdsParser
10
+ MessageIdsStruct = Struct.new(:message_ids, :error)
8
11
 
9
- message_ids = MessageIdsStruct.new([])
12
+
13
+ class << self
14
+ attr_accessor :_trans_keys
15
+ private :_trans_keys, :_trans_keys=
16
+ end
17
+ self._trans_keys = [
18
+ 0, 0, 9, 60, 10, 10,
19
+ 9, 32, 9, 60, 9,
20
+ 126, 9, 126, 10, 10,
21
+ 9, 32, 9, 126, 9, 64,
22
+ 10, 10, 9, 32, 9,
23
+ 64, 9, 126, 10, 10,
24
+ 9, 32, 9, 126, 9, 64,
25
+ 10, 10, 9, 32, 9,
26
+ 64, 9, 126, 9, 126,
27
+ 10, 10, 9, 32, 9, 126,
28
+ 9, 62, 10, 10, 9,
29
+ 32, 9, 62, 9, 126,
30
+ 10, 10, 9, 32, 9, 126,
31
+ 10, 10, 9, 32, 9,
32
+ 126, 1, 127, 1, 127,
33
+ 10, 10, 9, 32, 9, 126,
34
+ 9, 62, 10, 10, 9,
35
+ 32, 9, 62, 33, 126,
36
+ 0, 127, 10, 10, 9, 32,
37
+ 9, 126, 9, 126, 1,
38
+ 127, 10, 10, 9, 32,
39
+ 0, 127, 9, 126, 9, 126,
40
+ 33, 126, 33, 126, 1,
41
+ 127, 1, 127, 10, 10,
42
+ 9, 32, -128, -1, 9, 126,
43
+ 1, 127, 1, 127, 10,
44
+ 10, 9, 32, 9, 126,
45
+ 9, 64, 10, 10, 9, 32,
46
+ 9, 64, -128, -1, 10,
47
+ 10, 9, 32, 9, 126,
48
+ 9, 126, 10, 10, 9, 32,
49
+ 9, 126, 1, 127, 1,
50
+ 127, 10, 10, 9, 32,
51
+ 9, 126, -128, -1, 1, 127,
52
+ 10, 10, 9, 32, 1,
53
+ 127, 1, 127, 10, 10,
54
+ 9, 32, 9, 126, 9, 64,
55
+ 10, 10, 9, 32, 9,
56
+ 64, -128, -1, 1, 127,
57
+ 10, 10, 9, 32, 9, 64,
58
+ 10, 10, 9, 32, 9,
59
+ 64, 9, 126, 33, 126,
60
+ 1, 127, 1, 127, 10, 10,
61
+ 9, 32, 0, 127, 9,
62
+ 60, 9, 60, 9, 60,
63
+ 0, 0, 0
64
+ ]
10
65
 
11
- actions, error = Ragel.parse(:message_ids, s)
12
- if error
13
- raise Mail::Field::ParseError.new(Mail::MessageIdsElement, s, error)
14
- end
66
+ class << self
67
+ attr_accessor :_key_spans
68
+ private :_key_spans, :_key_spans=
69
+ end
70
+ self._key_spans = [
71
+ 0, 52, 1, 24, 52, 118, 118, 1,
72
+ 24, 118, 56, 1, 24, 56, 118, 1,
73
+ 24, 118, 56, 1, 24, 56, 118, 118,
74
+ 1, 24, 118, 54, 1, 24, 54, 118,
75
+ 1, 24, 118, 1, 24, 118, 127, 127,
76
+ 1, 24, 118, 54, 1, 24, 54, 94,
77
+ 128, 1, 24, 118, 118, 127, 1, 24,
78
+ 128, 118, 118, 94, 94, 127, 127, 1,
79
+ 24, 128, 118, 127, 127, 1, 24, 118,
80
+ 56, 1, 24, 56, 128, 1, 24, 118,
81
+ 118, 1, 24, 118, 127, 127, 1, 24,
82
+ 118, 128, 127, 1, 24, 127, 127, 1,
83
+ 24, 118, 56, 1, 24, 56, 128, 127,
84
+ 1, 24, 56, 1, 24, 56, 118, 94,
85
+ 127, 127, 1, 24, 128, 52, 52, 52,
86
+ 0
87
+ ]
88
+
89
+ class << self
90
+ attr_accessor :_index_offsets
91
+ private :_index_offsets, :_index_offsets=
92
+ end
93
+ self._index_offsets = [
94
+ 0, 0, 53, 55, 80, 133, 252, 371,
95
+ 373, 398, 517, 574, 576, 601, 658, 777,
96
+ 779, 804, 923, 980, 982, 1007, 1064, 1183,
97
+ 1302, 1304, 1329, 1448, 1503, 1505, 1530, 1585,
98
+ 1704, 1706, 1731, 1850, 1852, 1877, 1996, 2124,
99
+ 2252, 2254, 2279, 2398, 2453, 2455, 2480, 2535,
100
+ 2630, 2759, 2761, 2786, 2905, 3024, 3152, 3154,
101
+ 3179, 3308, 3427, 3546, 3641, 3736, 3864, 3992,
102
+ 3994, 4019, 4148, 4267, 4395, 4523, 4525, 4550,
103
+ 4669, 4726, 4728, 4753, 4810, 4939, 4941, 4966,
104
+ 5085, 5204, 5206, 5231, 5350, 5478, 5606, 5608,
105
+ 5633, 5752, 5881, 6009, 6011, 6036, 6164, 6292,
106
+ 6294, 6319, 6438, 6495, 6497, 6522, 6579, 6708,
107
+ 6836, 6838, 6863, 6920, 6922, 6947, 7004, 7123,
108
+ 7218, 7346, 7474, 7476, 7501, 7630, 7683, 7736,
109
+ 7789
110
+ ]
111
+
112
+ class << self
113
+ attr_accessor :_indicies
114
+ private :_indicies, :_indicies=
115
+ end
116
+ self._indicies = [
117
+ 0, 1, 1, 1, 2, 1, 1, 1,
118
+ 1, 1, 1, 1, 1, 1, 1, 1,
119
+ 1, 1, 1, 1, 1, 1, 1, 0,
120
+ 1, 1, 1, 1, 1, 1, 1, 3,
121
+ 1, 1, 1, 1, 1, 1, 1, 1,
122
+ 1, 1, 1, 1, 1, 1, 1, 1,
123
+ 1, 1, 1, 4, 1, 5, 1, 0,
124
+ 1, 1, 1, 1, 1, 1, 1, 1,
125
+ 1, 1, 1, 1, 1, 1, 1, 1,
126
+ 1, 1, 1, 1, 1, 1, 0, 1,
127
+ 6, 1, 1, 1, 7, 1, 1, 1,
128
+ 1, 1, 1, 1, 1, 1, 1, 1,
129
+ 1, 1, 1, 1, 1, 1, 1, 6,
130
+ 1, 1, 1, 1, 1, 1, 1, 8,
131
+ 1, 1, 1, 1, 1, 1, 1, 1,
132
+ 1, 1, 1, 1, 1, 1, 1, 1,
133
+ 1, 1, 1, 9, 1, 10, 1, 1,
134
+ 1, 11, 1, 1, 1, 1, 1, 1,
135
+ 1, 1, 1, 1, 1, 1, 1, 1,
136
+ 1, 1, 1, 1, 10, 12, 13, 12,
137
+ 12, 12, 12, 12, 14, 1, 12, 12,
138
+ 1, 12, 15, 12, 12, 12, 12, 12,
139
+ 12, 12, 12, 12, 12, 12, 1, 1,
140
+ 1, 12, 1, 12, 1, 12, 12, 12,
141
+ 12, 12, 12, 12, 12, 12, 12, 12,
142
+ 12, 12, 12, 12, 12, 12, 12, 12,
143
+ 12, 12, 12, 12, 12, 12, 12, 1,
144
+ 1, 1, 12, 12, 12, 12, 12, 12,
145
+ 12, 12, 12, 12, 12, 12, 12, 12,
146
+ 12, 12, 12, 12, 12, 12, 12, 12,
147
+ 12, 12, 12, 12, 12, 12, 12, 12,
148
+ 12, 12, 12, 1, 16, 1, 1, 1,
149
+ 17, 1, 1, 1, 1, 1, 1, 1,
150
+ 1, 1, 1, 1, 1, 1, 1, 1,
151
+ 1, 1, 1, 16, 12, 13, 12, 12,
152
+ 12, 12, 12, 18, 1, 12, 12, 1,
153
+ 12, 15, 12, 12, 12, 12, 12, 12,
154
+ 12, 12, 12, 12, 12, 1, 1, 1,
155
+ 12, 1, 12, 1, 12, 12, 12, 12,
156
+ 12, 12, 12, 12, 12, 12, 12, 12,
157
+ 12, 12, 12, 12, 12, 12, 12, 12,
158
+ 12, 12, 12, 12, 12, 12, 1, 1,
159
+ 1, 12, 12, 12, 12, 12, 12, 12,
160
+ 12, 12, 12, 12, 12, 12, 12, 12,
161
+ 12, 12, 12, 12, 12, 12, 12, 12,
162
+ 12, 12, 12, 12, 12, 12, 12, 12,
163
+ 12, 12, 1, 19, 1, 16, 1, 1,
164
+ 1, 1, 1, 1, 1, 1, 1, 1,
165
+ 1, 1, 1, 1, 1, 1, 1, 1,
166
+ 1, 1, 1, 1, 16, 1, 20, 1,
167
+ 1, 1, 21, 1, 1, 1, 1, 1,
168
+ 1, 1, 1, 1, 1, 1, 1, 1,
169
+ 1, 1, 1, 1, 1, 20, 22, 23,
170
+ 22, 22, 22, 22, 22, 24, 1, 22,
171
+ 22, 1, 22, 25, 22, 22, 22, 22,
172
+ 22, 22, 22, 22, 22, 22, 22, 1,
173
+ 1, 1, 22, 1, 22, 26, 22, 22,
174
+ 22, 22, 22, 22, 22, 22, 22, 22,
175
+ 22, 22, 22, 22, 22, 22, 22, 22,
176
+ 22, 22, 22, 22, 22, 22, 22, 22,
177
+ 1, 1, 1, 22, 22, 22, 22, 22,
178
+ 22, 22, 22, 22, 22, 22, 22, 22,
179
+ 22, 22, 22, 22, 22, 22, 22, 22,
180
+ 22, 22, 22, 22, 22, 22, 22, 22,
181
+ 22, 22, 22, 22, 1, 27, 1, 1,
182
+ 1, 28, 1, 1, 1, 1, 1, 1,
183
+ 1, 1, 1, 1, 1, 1, 1, 1,
184
+ 1, 1, 1, 1, 27, 1, 1, 1,
185
+ 1, 1, 1, 1, 29, 1, 1, 1,
186
+ 1, 1, 30, 1, 1, 1, 1, 1,
187
+ 1, 1, 1, 1, 1, 1, 1, 1,
188
+ 1, 1, 1, 1, 31, 1, 32, 1,
189
+ 27, 1, 1, 1, 1, 1, 1, 1,
190
+ 1, 1, 1, 1, 1, 1, 1, 1,
191
+ 1, 1, 1, 1, 1, 1, 1, 27,
192
+ 1, 33, 1, 1, 1, 34, 1, 1,
193
+ 1, 1, 1, 1, 1, 1, 1, 1,
194
+ 1, 1, 1, 1, 1, 1, 1, 1,
195
+ 33, 1, 1, 1, 1, 1, 1, 1,
196
+ 35, 1, 1, 1, 1, 1, 36, 1,
197
+ 1, 1, 1, 1, 1, 1, 1, 1,
198
+ 1, 1, 1, 1, 1, 1, 1, 1,
199
+ 37, 1, 30, 1, 1, 1, 38, 1,
200
+ 1, 1, 1, 1, 1, 1, 1, 1,
201
+ 1, 1, 1, 1, 1, 1, 1, 1,
202
+ 1, 30, 39, 40, 39, 39, 39, 39,
203
+ 39, 41, 1, 39, 39, 1, 39, 1,
204
+ 39, 39, 39, 39, 39, 39, 39, 39,
205
+ 39, 39, 39, 1, 1, 1, 39, 1,
206
+ 39, 1, 39, 39, 39, 39, 39, 39,
207
+ 39, 39, 39, 39, 39, 39, 39, 39,
208
+ 39, 39, 39, 39, 39, 39, 39, 39,
209
+ 39, 39, 39, 39, 1, 1, 1, 39,
210
+ 39, 39, 39, 39, 39, 39, 39, 39,
211
+ 39, 39, 39, 39, 39, 39, 39, 39,
212
+ 39, 39, 39, 39, 39, 39, 39, 39,
213
+ 39, 39, 39, 39, 39, 39, 39, 39,
214
+ 1, 42, 1, 30, 1, 1, 1, 1,
215
+ 1, 1, 1, 1, 1, 1, 1, 1,
216
+ 1, 1, 1, 1, 1, 1, 1, 1,
217
+ 1, 1, 30, 1, 43, 1, 1, 1,
218
+ 44, 1, 1, 1, 1, 1, 1, 1,
219
+ 1, 1, 1, 1, 1, 1, 1, 1,
220
+ 1, 1, 1, 43, 39, 1, 39, 39,
221
+ 39, 39, 39, 45, 1, 39, 39, 1,
222
+ 39, 30, 39, 39, 39, 39, 39, 39,
223
+ 39, 39, 39, 39, 39, 1, 1, 1,
224
+ 39, 1, 39, 46, 39, 39, 39, 39,
225
+ 39, 39, 39, 39, 39, 39, 39, 39,
226
+ 39, 39, 39, 39, 39, 39, 39, 39,
227
+ 39, 39, 39, 39, 39, 39, 1, 1,
228
+ 1, 39, 39, 39, 39, 39, 39, 39,
229
+ 39, 39, 39, 39, 39, 39, 39, 39,
230
+ 39, 39, 39, 39, 39, 39, 39, 39,
231
+ 39, 39, 39, 39, 39, 39, 39, 39,
232
+ 39, 39, 1, 43, 1, 1, 1, 44,
233
+ 1, 1, 1, 1, 1, 1, 1, 1,
234
+ 1, 1, 1, 1, 1, 1, 1, 1,
235
+ 1, 1, 43, 1, 1, 1, 1, 1,
236
+ 1, 1, 45, 1, 1, 1, 1, 1,
237
+ 30, 1, 1, 1, 1, 1, 1, 1,
238
+ 1, 1, 1, 1, 1, 1, 1, 1,
239
+ 1, 1, 46, 1, 47, 1, 43, 1,
240
+ 1, 1, 1, 1, 1, 1, 1, 1,
241
+ 1, 1, 1, 1, 1, 1, 1, 1,
242
+ 1, 1, 1, 1, 1, 43, 1, 48,
243
+ 1, 1, 1, 49, 1, 1, 1, 1,
244
+ 1, 1, 1, 1, 1, 1, 1, 1,
245
+ 1, 1, 1, 1, 1, 1, 48, 1,
246
+ 1, 1, 1, 1, 1, 1, 50, 1,
247
+ 1, 1, 1, 1, 36, 1, 1, 1,
248
+ 1, 1, 1, 1, 1, 1, 1, 1,
249
+ 1, 1, 1, 1, 1, 1, 51, 1,
250
+ 52, 1, 1, 1, 53, 1, 1, 1,
251
+ 1, 1, 1, 1, 1, 1, 1, 1,
252
+ 1, 1, 1, 1, 1, 1, 1, 52,
253
+ 54, 55, 54, 54, 54, 54, 54, 56,
254
+ 1, 54, 54, 1, 54, 57, 54, 54,
255
+ 54, 54, 54, 54, 54, 54, 54, 54,
256
+ 54, 1, 1, 1, 54, 1, 54, 58,
257
+ 54, 54, 54, 54, 54, 54, 54, 54,
258
+ 54, 54, 54, 54, 54, 54, 54, 54,
259
+ 54, 54, 54, 54, 54, 54, 54, 54,
260
+ 54, 54, 59, 1, 1, 54, 54, 54,
261
+ 54, 54, 54, 54, 54, 54, 54, 54,
262
+ 54, 54, 54, 54, 54, 54, 54, 54,
263
+ 54, 54, 54, 54, 54, 54, 54, 54,
264
+ 54, 54, 54, 54, 54, 54, 1, 60,
265
+ 1, 1, 1, 61, 1, 1, 1, 1,
266
+ 1, 1, 1, 1, 1, 1, 1, 1,
267
+ 1, 1, 1, 1, 1, 1, 60, 62,
268
+ 63, 62, 62, 62, 62, 62, 64, 1,
269
+ 62, 62, 1, 62, 65, 62, 62, 62,
270
+ 62, 62, 62, 62, 62, 62, 62, 62,
271
+ 1, 1, 1, 62, 1, 62, 1, 62,
272
+ 62, 62, 62, 62, 62, 62, 62, 62,
273
+ 62, 62, 62, 62, 62, 62, 62, 62,
274
+ 62, 62, 62, 62, 62, 62, 62, 62,
275
+ 62, 66, 1, 1, 62, 62, 62, 62,
276
+ 62, 62, 62, 62, 62, 62, 62, 62,
277
+ 62, 62, 62, 62, 62, 62, 62, 62,
278
+ 62, 62, 62, 62, 62, 62, 62, 62,
279
+ 62, 62, 62, 62, 62, 1, 67, 1,
280
+ 60, 1, 1, 1, 1, 1, 1, 1,
281
+ 1, 1, 1, 1, 1, 1, 1, 1,
282
+ 1, 1, 1, 1, 1, 1, 1, 60,
283
+ 1, 68, 1, 1, 1, 69, 1, 1,
284
+ 1, 1, 1, 1, 1, 1, 1, 1,
285
+ 1, 1, 1, 1, 1, 1, 1, 1,
286
+ 68, 62, 63, 62, 62, 62, 62, 62,
287
+ 70, 1, 62, 62, 1, 62, 71, 62,
288
+ 62, 62, 62, 62, 62, 62, 62, 62,
289
+ 62, 62, 1, 1, 1, 62, 72, 62,
290
+ 1, 62, 62, 62, 62, 62, 62, 62,
291
+ 62, 62, 62, 62, 62, 62, 62, 62,
292
+ 62, 62, 62, 62, 62, 62, 62, 62,
293
+ 62, 62, 62, 1, 1, 1, 62, 62,
294
+ 62, 62, 62, 62, 62, 62, 62, 62,
295
+ 62, 62, 62, 62, 62, 62, 62, 62,
296
+ 62, 62, 62, 62, 62, 62, 62, 62,
297
+ 62, 62, 62, 62, 62, 62, 62, 1,
298
+ 68, 1, 1, 1, 69, 1, 1, 1,
299
+ 1, 1, 1, 1, 1, 1, 1, 1,
300
+ 1, 1, 1, 1, 1, 1, 1, 68,
301
+ 1, 1, 1, 1, 1, 1, 1, 70,
302
+ 1, 1, 1, 1, 1, 73, 1, 1,
303
+ 1, 1, 1, 1, 1, 1, 1, 1,
304
+ 1, 1, 1, 1, 1, 72, 1, 74,
305
+ 1, 68, 1, 1, 1, 1, 1, 1,
306
+ 1, 1, 1, 1, 1, 1, 1, 1,
307
+ 1, 1, 1, 1, 1, 1, 1, 1,
308
+ 68, 1, 75, 1, 1, 1, 76, 1,
309
+ 1, 1, 1, 1, 1, 1, 1, 1,
310
+ 1, 1, 1, 1, 1, 1, 1, 1,
311
+ 1, 75, 1, 1, 1, 1, 1, 1,
312
+ 1, 77, 1, 1, 1, 1, 1, 78,
313
+ 1, 1, 1, 1, 1, 1, 1, 1,
314
+ 1, 1, 1, 1, 1, 1, 1, 79,
315
+ 1, 73, 1, 1, 1, 80, 1, 1,
316
+ 1, 1, 1, 1, 1, 1, 1, 1,
317
+ 1, 1, 1, 1, 1, 1, 1, 1,
318
+ 73, 81, 1, 81, 81, 81, 81, 81,
319
+ 82, 1, 81, 81, 1, 81, 1, 81,
320
+ 81, 81, 81, 81, 81, 81, 81, 81,
321
+ 81, 81, 1, 1, 1, 81, 1, 81,
322
+ 1, 81, 81, 81, 81, 81, 81, 81,
323
+ 81, 81, 81, 81, 81, 81, 81, 81,
324
+ 81, 81, 81, 81, 81, 81, 81, 81,
325
+ 81, 81, 81, 1, 1, 1, 81, 81,
326
+ 81, 81, 81, 81, 81, 81, 81, 81,
327
+ 81, 81, 81, 81, 81, 81, 81, 81,
328
+ 81, 81, 81, 81, 81, 81, 81, 81,
329
+ 81, 81, 81, 81, 81, 81, 81, 1,
330
+ 83, 1, 73, 1, 1, 1, 1, 1,
331
+ 1, 1, 1, 1, 1, 1, 1, 1,
332
+ 1, 1, 1, 1, 1, 1, 1, 1,
333
+ 1, 73, 1, 68, 1, 1, 1, 69,
334
+ 1, 1, 1, 1, 1, 1, 1, 1,
335
+ 1, 1, 1, 1, 1, 1, 1, 1,
336
+ 1, 1, 68, 81, 1, 81, 81, 81,
337
+ 81, 81, 70, 1, 81, 81, 1, 81,
338
+ 73, 81, 81, 81, 81, 81, 81, 81,
339
+ 81, 81, 81, 81, 1, 1, 1, 81,
340
+ 72, 81, 1, 81, 81, 81, 81, 81,
341
+ 81, 81, 81, 81, 81, 81, 81, 81,
342
+ 81, 81, 81, 81, 81, 81, 81, 81,
343
+ 81, 81, 81, 81, 81, 1, 1, 1,
344
+ 81, 81, 81, 81, 81, 81, 81, 81,
345
+ 81, 81, 81, 81, 81, 81, 81, 81,
346
+ 81, 81, 81, 81, 81, 81, 81, 81,
347
+ 81, 81, 81, 81, 81, 81, 81, 81,
348
+ 81, 1, 84, 1, 85, 1, 1, 1,
349
+ 1, 1, 1, 1, 1, 1, 1, 1,
350
+ 1, 1, 1, 1, 1, 1, 1, 1,
351
+ 1, 1, 1, 85, 1, 78, 1, 1,
352
+ 1, 86, 1, 1, 1, 1, 1, 1,
353
+ 1, 1, 1, 1, 1, 1, 1, 1,
354
+ 1, 1, 1, 1, 78, 87, 1, 87,
355
+ 87, 87, 87, 87, 88, 1, 87, 87,
356
+ 1, 87, 1, 87, 87, 87, 87, 87,
357
+ 87, 87, 87, 87, 87, 87, 1, 1,
358
+ 1, 87, 1, 87, 1, 87, 87, 87,
359
+ 87, 87, 87, 87, 87, 87, 87, 87,
360
+ 87, 87, 87, 87, 87, 87, 87, 87,
361
+ 87, 87, 87, 87, 87, 87, 87, 1,
362
+ 1, 1, 87, 87, 87, 87, 87, 87,
363
+ 87, 87, 87, 87, 87, 87, 87, 87,
364
+ 87, 87, 87, 87, 87, 87, 87, 87,
365
+ 87, 87, 87, 87, 87, 87, 87, 87,
366
+ 87, 87, 87, 1, 89, 89, 89, 89,
367
+ 89, 89, 89, 89, 63, 1, 89, 89,
368
+ 90, 89, 89, 89, 89, 89, 89, 89,
369
+ 89, 89, 89, 89, 89, 89, 89, 89,
370
+ 89, 89, 89, 63, 89, 1, 89, 89,
371
+ 89, 89, 89, 89, 89, 89, 89, 89,
372
+ 89, 89, 89, 89, 89, 89, 89, 89,
373
+ 89, 89, 89, 89, 89, 89, 89, 89,
374
+ 89, 89, 89, 89, 89, 89, 89, 89,
375
+ 89, 89, 89, 89, 89, 89, 89, 89,
376
+ 89, 89, 89, 89, 89, 89, 89, 89,
377
+ 89, 89, 89, 89, 89, 89, 89, 91,
378
+ 89, 89, 89, 89, 89, 89, 89, 89,
379
+ 89, 89, 89, 89, 89, 89, 89, 89,
380
+ 89, 89, 89, 89, 89, 89, 89, 89,
381
+ 89, 89, 89, 89, 89, 89, 89, 89,
382
+ 89, 89, 89, 1, 89, 89, 89, 89,
383
+ 89, 89, 89, 89, 89, 1, 89, 89,
384
+ 92, 89, 89, 89, 89, 89, 89, 89,
385
+ 89, 89, 89, 89, 89, 89, 89, 89,
386
+ 89, 89, 89, 89, 89, 93, 89, 89,
387
+ 89, 89, 89, 89, 89, 89, 89, 89,
388
+ 89, 89, 89, 89, 89, 89, 89, 89,
389
+ 89, 89, 89, 89, 89, 89, 89, 89,
390
+ 89, 89, 89, 89, 89, 89, 89, 89,
391
+ 89, 89, 89, 89, 89, 89, 89, 89,
392
+ 89, 89, 89, 89, 89, 89, 89, 89,
393
+ 89, 89, 89, 89, 89, 89, 89, 91,
394
+ 89, 89, 89, 89, 89, 89, 89, 89,
395
+ 89, 89, 89, 89, 89, 89, 89, 89,
396
+ 89, 89, 89, 89, 89, 89, 89, 89,
397
+ 89, 89, 89, 89, 89, 89, 89, 89,
398
+ 89, 89, 89, 1, 94, 1, 89, 1,
399
+ 1, 1, 1, 1, 1, 1, 1, 1,
400
+ 1, 1, 1, 1, 1, 1, 1, 1,
401
+ 1, 1, 1, 1, 1, 89, 1, 95,
402
+ 1, 1, 1, 96, 1, 1, 1, 1,
403
+ 1, 1, 1, 1, 1, 1, 1, 1,
404
+ 1, 1, 1, 1, 1, 1, 95, 93,
405
+ 63, 93, 93, 93, 93, 93, 97, 1,
406
+ 93, 93, 1, 93, 65, 93, 93, 93,
407
+ 93, 93, 93, 93, 93, 93, 93, 93,
408
+ 1, 1, 1, 93, 72, 93, 1, 93,
409
+ 93, 93, 93, 93, 93, 93, 93, 93,
410
+ 93, 93, 93, 93, 93, 93, 93, 93,
411
+ 93, 93, 93, 93, 93, 93, 93, 93,
412
+ 93, 1, 1, 1, 93, 93, 93, 93,
413
+ 93, 93, 93, 93, 93, 93, 93, 93,
414
+ 93, 93, 93, 93, 93, 93, 93, 93,
415
+ 93, 93, 93, 93, 93, 93, 93, 93,
416
+ 93, 93, 93, 93, 93, 1, 95, 1,
417
+ 1, 1, 96, 1, 1, 1, 1, 1,
418
+ 1, 1, 1, 1, 1, 1, 1, 1,
419
+ 1, 1, 1, 1, 1, 95, 1, 1,
420
+ 1, 1, 1, 1, 1, 97, 1, 1,
421
+ 1, 1, 1, 1, 1, 1, 1, 1,
422
+ 1, 1, 1, 1, 1, 1, 1, 1,
423
+ 1, 1, 1, 72, 1, 98, 1, 95,
424
+ 1, 1, 1, 1, 1, 1, 1, 1,
425
+ 1, 1, 1, 1, 1, 1, 1, 1,
426
+ 1, 1, 1, 1, 1, 1, 95, 1,
427
+ 99, 1, 1, 1, 100, 1, 1, 1,
428
+ 1, 1, 1, 1, 1, 1, 1, 1,
429
+ 1, 1, 1, 1, 1, 1, 1, 99,
430
+ 1, 1, 1, 1, 1, 1, 1, 101,
431
+ 1, 1, 1, 1, 1, 1, 1, 1,
432
+ 1, 1, 1, 1, 1, 1, 1, 1,
433
+ 1, 1, 1, 1, 1, 79, 1, 93,
434
+ 63, 93, 93, 93, 93, 93, 1, 1,
435
+ 93, 93, 1, 93, 65, 93, 93, 93,
436
+ 93, 93, 93, 93, 93, 93, 93, 93,
437
+ 1, 1, 1, 93, 1, 93, 1, 93,
438
+ 93, 93, 93, 93, 93, 93, 93, 93,
439
+ 93, 93, 93, 93, 93, 93, 93, 93,
440
+ 93, 93, 93, 93, 93, 93, 93, 93,
441
+ 93, 1, 1, 1, 93, 93, 93, 93,
442
+ 93, 93, 93, 93, 93, 93, 93, 93,
443
+ 93, 93, 93, 93, 93, 93, 93, 93,
444
+ 93, 93, 93, 93, 93, 93, 93, 93,
445
+ 93, 93, 93, 93, 93, 1, 89, 89,
446
+ 89, 89, 89, 89, 89, 89, 89, 89,
447
+ 89, 89, 89, 89, 89, 89, 89, 89,
448
+ 89, 89, 89, 89, 89, 89, 89, 89,
449
+ 89, 89, 89, 89, 89, 89, 89, 89,
450
+ 89, 89, 89, 89, 89, 89, 89, 89,
451
+ 89, 89, 89, 89, 89, 89, 89, 89,
452
+ 89, 89, 89, 89, 89, 89, 89, 89,
453
+ 89, 89, 89, 89, 89, 89, 89, 89,
454
+ 89, 89, 89, 89, 89, 89, 89, 89,
455
+ 89, 89, 89, 89, 89, 89, 89, 89,
456
+ 89, 89, 89, 89, 89, 89, 89, 89,
457
+ 89, 89, 89, 89, 89, 89, 89, 89,
458
+ 89, 89, 89, 89, 89, 89, 89, 89,
459
+ 89, 89, 89, 89, 89, 89, 89, 89,
460
+ 89, 89, 89, 89, 89, 89, 89, 89,
461
+ 89, 89, 89, 89, 89, 89, 1, 102,
462
+ 1, 63, 1, 1, 1, 1, 1, 1,
463
+ 1, 1, 1, 1, 1, 1, 1, 1,
464
+ 1, 1, 1, 1, 1, 1, 1, 1,
465
+ 63, 1, 73, 1, 1, 1, 80, 1,
466
+ 1, 1, 1, 1, 1, 1, 1, 1,
467
+ 1, 1, 1, 1, 1, 1, 1, 1,
468
+ 1, 73, 62, 63, 62, 62, 62, 62,
469
+ 62, 82, 1, 62, 62, 1, 62, 65,
470
+ 62, 62, 62, 62, 62, 62, 62, 62,
471
+ 62, 62, 62, 1, 1, 1, 62, 1,
472
+ 62, 1, 62, 62, 62, 62, 62, 62,
473
+ 62, 62, 62, 62, 62, 62, 62, 62,
474
+ 62, 62, 62, 62, 62, 62, 62, 62,
475
+ 62, 62, 62, 62, 1, 1, 1, 62,
476
+ 62, 62, 62, 62, 62, 62, 62, 62,
477
+ 62, 62, 62, 62, 62, 62, 62, 62,
478
+ 62, 62, 62, 62, 62, 62, 62, 62,
479
+ 62, 62, 62, 62, 62, 62, 62, 62,
480
+ 1, 103, 1, 1, 1, 104, 1, 1,
481
+ 1, 1, 1, 1, 1, 1, 1, 1,
482
+ 1, 1, 1, 1, 1, 1, 1, 1,
483
+ 103, 105, 106, 105, 105, 105, 105, 105,
484
+ 107, 1, 105, 105, 1, 105, 108, 105,
485
+ 105, 105, 105, 105, 105, 105, 105, 105,
486
+ 105, 105, 1, 1, 1, 105, 1, 105,
487
+ 1, 105, 105, 105, 105, 105, 105, 105,
488
+ 105, 105, 105, 105, 105, 105, 105, 105,
489
+ 105, 105, 105, 105, 105, 105, 105, 105,
490
+ 105, 105, 105, 109, 1, 1, 105, 105,
491
+ 105, 105, 105, 105, 105, 105, 105, 105,
492
+ 105, 105, 105, 105, 105, 105, 105, 105,
493
+ 105, 105, 105, 105, 105, 105, 105, 105,
494
+ 105, 105, 105, 105, 105, 105, 105, 1,
495
+ 66, 66, 66, 66, 66, 66, 66, 66,
496
+ 66, 1, 66, 66, 110, 66, 66, 66,
497
+ 66, 66, 66, 66, 66, 66, 66, 66,
498
+ 66, 66, 66, 66, 66, 66, 66, 66,
499
+ 66, 66, 66, 66, 66, 66, 66, 66,
500
+ 66, 66, 66, 66, 66, 66, 66, 66,
501
+ 66, 66, 66, 66, 66, 66, 66, 66,
502
+ 66, 66, 66, 66, 66, 66, 66, 66,
503
+ 66, 66, 66, 66, 66, 66, 66, 66,
504
+ 66, 66, 66, 66, 66, 66, 66, 66,
505
+ 66, 66, 66, 66, 66, 66, 66, 66,
506
+ 66, 66, 1, 111, 95, 66, 66, 66,
507
+ 66, 66, 66, 66, 66, 66, 66, 66,
508
+ 66, 66, 66, 66, 66, 66, 66, 66,
509
+ 66, 66, 66, 66, 66, 66, 66, 66,
510
+ 66, 66, 66, 66, 66, 66, 66, 1,
511
+ 112, 1, 66, 1, 1, 1, 1, 1,
512
+ 1, 1, 1, 1, 1, 1, 1, 1,
513
+ 1, 1, 1, 1, 1, 1, 1, 1,
514
+ 1, 66, 1, 66, 66, 66, 66, 66,
515
+ 66, 66, 66, 66, 66, 66, 66, 66,
516
+ 66, 66, 66, 66, 66, 66, 66, 66,
517
+ 66, 66, 66, 66, 66, 66, 66, 66,
518
+ 66, 66, 66, 66, 66, 66, 66, 66,
519
+ 66, 66, 66, 66, 66, 66, 66, 66,
520
+ 66, 66, 66, 66, 66, 66, 66, 66,
521
+ 66, 66, 66, 66, 66, 66, 66, 66,
522
+ 66, 66, 66, 66, 66, 66, 66, 66,
523
+ 66, 66, 66, 66, 66, 66, 66, 66,
524
+ 66, 66, 66, 66, 66, 66, 66, 66,
525
+ 66, 66, 66, 66, 66, 66, 66, 66,
526
+ 66, 66, 66, 66, 66, 66, 66, 66,
527
+ 66, 66, 66, 66, 66, 66, 66, 66,
528
+ 66, 66, 66, 66, 66, 66, 66, 66,
529
+ 66, 66, 66, 66, 66, 66, 66, 66,
530
+ 66, 66, 66, 1, 68, 1, 1, 1,
531
+ 69, 1, 1, 1, 1, 1, 1, 1,
532
+ 1, 1, 1, 1, 1, 1, 1, 1,
533
+ 1, 1, 1, 68, 113, 63, 113, 113,
534
+ 113, 113, 113, 70, 1, 113, 113, 1,
535
+ 113, 114, 113, 113, 113, 113, 113, 113,
536
+ 113, 113, 113, 113, 113, 1, 1, 1,
537
+ 113, 72, 113, 58, 113, 113, 113, 113,
538
+ 113, 113, 113, 113, 113, 113, 113, 113,
539
+ 113, 113, 113, 113, 113, 113, 113, 113,
540
+ 113, 113, 113, 113, 113, 113, 1, 1,
541
+ 1, 113, 113, 113, 113, 113, 113, 113,
542
+ 113, 113, 113, 113, 113, 113, 113, 113,
543
+ 113, 113, 113, 113, 113, 113, 113, 113,
544
+ 113, 113, 113, 113, 113, 113, 113, 113,
545
+ 113, 113, 1, 73, 1, 1, 1, 80,
546
+ 1, 1, 1, 1, 1, 1, 1, 1,
547
+ 1, 1, 1, 1, 1, 1, 1, 1,
548
+ 1, 1, 73, 113, 63, 113, 113, 113,
549
+ 113, 113, 82, 1, 113, 113, 1, 113,
550
+ 65, 113, 113, 113, 113, 113, 113, 113,
551
+ 113, 113, 113, 113, 1, 1, 1, 113,
552
+ 115, 113, 58, 113, 113, 113, 113, 113,
553
+ 113, 113, 113, 113, 113, 113, 113, 113,
554
+ 113, 113, 113, 113, 113, 113, 113, 113,
555
+ 113, 113, 113, 113, 113, 1, 1, 1,
556
+ 113, 113, 113, 113, 113, 113, 113, 113,
557
+ 113, 113, 113, 113, 113, 113, 113, 113,
558
+ 113, 113, 113, 113, 113, 113, 113, 113,
559
+ 113, 113, 113, 113, 113, 113, 113, 113,
560
+ 113, 1, 58, 1, 58, 58, 58, 58,
561
+ 58, 1, 1, 58, 58, 1, 58, 116,
562
+ 58, 58, 58, 58, 58, 58, 58, 58,
563
+ 58, 58, 58, 1, 1, 1, 58, 115,
564
+ 58, 58, 58, 58, 58, 58, 58, 58,
565
+ 58, 58, 58, 58, 58, 58, 58, 58,
566
+ 58, 58, 58, 58, 58, 58, 58, 58,
567
+ 58, 58, 58, 58, 1, 1, 1, 58,
568
+ 58, 58, 58, 58, 58, 58, 58, 58,
569
+ 58, 58, 58, 58, 58, 58, 58, 58,
570
+ 58, 58, 58, 58, 58, 58, 58, 58,
571
+ 58, 58, 58, 58, 58, 58, 58, 58,
572
+ 1, 58, 1, 58, 58, 58, 58, 58,
573
+ 1, 1, 58, 58, 1, 58, 1, 58,
574
+ 58, 58, 58, 58, 58, 58, 58, 58,
575
+ 58, 58, 1, 1, 1, 58, 115, 58,
576
+ 58, 58, 58, 58, 58, 58, 58, 58,
577
+ 58, 58, 58, 58, 58, 58, 58, 58,
578
+ 58, 58, 58, 58, 58, 58, 58, 58,
579
+ 58, 58, 58, 1, 1, 1, 58, 58,
580
+ 58, 58, 58, 58, 58, 58, 58, 58,
581
+ 58, 58, 58, 58, 58, 58, 58, 58,
582
+ 58, 58, 58, 58, 58, 58, 58, 58,
583
+ 58, 58, 58, 58, 58, 58, 58, 1,
584
+ 117, 117, 117, 117, 117, 117, 117, 117,
585
+ 117, 1, 117, 117, 118, 117, 117, 117,
586
+ 117, 117, 117, 117, 117, 117, 117, 117,
587
+ 117, 117, 117, 117, 117, 117, 117, 117,
588
+ 117, 119, 117, 117, 117, 117, 117, 117,
589
+ 117, 117, 117, 117, 117, 117, 117, 117,
590
+ 117, 117, 117, 117, 117, 117, 117, 117,
591
+ 117, 117, 117, 117, 117, 117, 117, 117,
592
+ 117, 117, 117, 117, 117, 117, 117, 117,
593
+ 117, 117, 117, 117, 117, 117, 117, 117,
594
+ 117, 117, 117, 117, 117, 117, 117, 117,
595
+ 117, 117, 117, 120, 117, 117, 117, 117,
596
+ 117, 117, 117, 117, 117, 117, 117, 117,
597
+ 117, 117, 117, 117, 117, 117, 117, 117,
598
+ 117, 117, 117, 117, 117, 117, 117, 117,
599
+ 117, 117, 117, 117, 117, 117, 117, 1,
600
+ 121, 121, 121, 121, 121, 121, 121, 121,
601
+ 121, 1, 121, 121, 122, 121, 121, 121,
602
+ 121, 121, 121, 121, 121, 121, 121, 121,
603
+ 121, 121, 121, 121, 121, 121, 121, 121,
604
+ 121, 123, 121, 121, 121, 121, 121, 121,
605
+ 121, 121, 121, 121, 121, 121, 121, 121,
606
+ 121, 121, 121, 121, 121, 121, 121, 121,
607
+ 121, 121, 121, 121, 121, 121, 121, 121,
608
+ 121, 121, 121, 121, 121, 121, 121, 121,
609
+ 121, 121, 121, 121, 121, 121, 121, 121,
610
+ 121, 121, 121, 121, 121, 121, 121, 121,
611
+ 121, 121, 121, 124, 121, 121, 121, 121,
612
+ 121, 121, 121, 121, 121, 121, 121, 121,
613
+ 121, 121, 121, 121, 121, 121, 121, 121,
614
+ 121, 121, 121, 121, 121, 121, 121, 121,
615
+ 121, 121, 121, 121, 121, 121, 121, 1,
616
+ 125, 1, 121, 1, 1, 1, 1, 1,
617
+ 1, 1, 1, 1, 1, 1, 1, 1,
618
+ 1, 1, 1, 1, 1, 1, 1, 1,
619
+ 1, 121, 1, 1, 1, 1, 1, 1,
620
+ 1, 1, 1, 1, 1, 1, 1, 1,
621
+ 1, 1, 1, 1, 1, 1, 1, 1,
622
+ 1, 1, 1, 1, 1, 1, 1, 1,
623
+ 1, 1, 1, 1, 1, 1, 1, 1,
624
+ 1, 1, 1, 1, 1, 1, 1, 1,
625
+ 1, 1, 1, 1, 1, 1, 1, 1,
626
+ 1, 1, 1, 1, 1, 1, 1, 1,
627
+ 1, 1, 1, 1, 1, 1, 1, 1,
628
+ 1, 1, 1, 1, 1, 1, 1, 1,
629
+ 1, 1, 1, 1, 1, 1, 1, 1,
630
+ 1, 1, 1, 1, 1, 1, 1, 1,
631
+ 1, 1, 1, 1, 1, 1, 1, 1,
632
+ 1, 1, 1, 1, 1, 1, 1, 1,
633
+ 1, 1, 1, 1, 1, 1, 1, 1,
634
+ 1, 1, 1, 1, 1, 1, 1, 1,
635
+ 1, 1, 1, 121, 36, 1, 1, 1,
636
+ 126, 1, 1, 1, 1, 1, 1, 1,
637
+ 1, 1, 1, 1, 1, 1, 1, 1,
638
+ 1, 1, 1, 36, 127, 128, 127, 127,
639
+ 127, 127, 127, 129, 1, 127, 127, 1,
640
+ 127, 1, 127, 127, 127, 127, 127, 127,
641
+ 127, 127, 127, 127, 127, 1, 1, 1,
642
+ 127, 1, 127, 1, 127, 127, 127, 127,
643
+ 127, 127, 127, 127, 127, 127, 127, 127,
644
+ 127, 127, 127, 127, 127, 127, 127, 127,
645
+ 127, 127, 127, 127, 127, 127, 1, 1,
646
+ 1, 127, 127, 127, 127, 127, 127, 127,
647
+ 127, 127, 127, 127, 127, 127, 127, 127,
648
+ 127, 127, 127, 127, 127, 127, 127, 127,
649
+ 127, 127, 127, 127, 127, 127, 127, 127,
650
+ 127, 127, 1, 130, 130, 130, 130, 130,
651
+ 130, 130, 130, 23, 1, 130, 130, 131,
652
+ 130, 130, 130, 130, 130, 130, 130, 130,
653
+ 130, 130, 130, 130, 130, 130, 130, 130,
654
+ 130, 130, 23, 130, 1, 130, 130, 130,
655
+ 130, 130, 130, 130, 130, 130, 130, 130,
656
+ 130, 130, 130, 130, 130, 130, 130, 130,
657
+ 130, 130, 130, 130, 130, 130, 130, 130,
658
+ 130, 130, 130, 130, 130, 130, 130, 130,
659
+ 130, 130, 130, 130, 130, 130, 130, 130,
660
+ 130, 130, 130, 130, 130, 130, 130, 130,
661
+ 130, 130, 130, 130, 130, 130, 132, 130,
662
+ 130, 130, 130, 130, 130, 130, 130, 130,
663
+ 130, 130, 130, 130, 130, 130, 130, 130,
664
+ 130, 130, 130, 130, 130, 130, 130, 130,
665
+ 130, 130, 130, 130, 130, 130, 130, 130,
666
+ 130, 130, 1, 130, 130, 130, 130, 130,
667
+ 130, 130, 130, 130, 1, 130, 130, 133,
668
+ 130, 130, 130, 130, 130, 130, 130, 130,
669
+ 130, 130, 130, 130, 130, 130, 130, 130,
670
+ 130, 130, 130, 130, 134, 130, 130, 130,
671
+ 130, 130, 130, 130, 130, 130, 130, 130,
672
+ 130, 130, 130, 130, 130, 130, 130, 130,
673
+ 130, 130, 130, 130, 130, 130, 130, 130,
674
+ 130, 130, 130, 130, 130, 130, 130, 130,
675
+ 130, 130, 130, 130, 130, 130, 130, 130,
676
+ 130, 130, 130, 130, 130, 130, 130, 130,
677
+ 130, 130, 130, 130, 130, 130, 132, 130,
678
+ 130, 130, 130, 130, 130, 130, 130, 130,
679
+ 130, 130, 130, 130, 130, 130, 130, 130,
680
+ 130, 130, 130, 130, 130, 130, 130, 130,
681
+ 130, 130, 130, 130, 130, 130, 130, 130,
682
+ 130, 130, 1, 135, 1, 130, 1, 1,
683
+ 1, 1, 1, 1, 1, 1, 1, 1,
684
+ 1, 1, 1, 1, 1, 1, 1, 1,
685
+ 1, 1, 1, 1, 130, 1, 136, 1,
686
+ 1, 1, 137, 1, 1, 1, 1, 1,
687
+ 1, 1, 1, 1, 1, 1, 1, 1,
688
+ 1, 1, 1, 1, 1, 136, 134, 23,
689
+ 134, 134, 134, 134, 134, 138, 1, 134,
690
+ 134, 1, 134, 134, 134, 134, 134, 134,
691
+ 134, 134, 134, 134, 134, 134, 134, 1,
692
+ 1, 1, 134, 1, 134, 26, 134, 134,
693
+ 134, 134, 134, 134, 134, 134, 134, 134,
694
+ 134, 134, 134, 134, 134, 134, 134, 134,
695
+ 134, 134, 134, 134, 134, 134, 134, 134,
696
+ 1, 1, 1, 134, 134, 134, 134, 134,
697
+ 134, 134, 134, 134, 134, 134, 134, 134,
698
+ 134, 134, 134, 134, 134, 134, 134, 134,
699
+ 134, 134, 134, 134, 134, 134, 134, 134,
700
+ 134, 134, 134, 134, 1, 139, 1, 1,
701
+ 1, 140, 1, 1, 1, 1, 1, 1,
702
+ 1, 1, 1, 1, 1, 1, 1, 1,
703
+ 1, 1, 1, 1, 139, 1, 1, 1,
704
+ 1, 1, 1, 1, 141, 1, 1, 1,
705
+ 1, 1, 1, 1, 1, 1, 1, 1,
706
+ 1, 1, 1, 1, 1, 1, 1, 1,
707
+ 1, 1, 1, 1, 31, 1, 142, 1,
708
+ 139, 1, 1, 1, 1, 1, 1, 1,
709
+ 1, 1, 1, 1, 1, 1, 1, 1,
710
+ 1, 1, 1, 1, 1, 1, 1, 139,
711
+ 1, 143, 1, 1, 1, 144, 1, 1,
712
+ 1, 1, 1, 1, 1, 1, 1, 1,
713
+ 1, 1, 1, 1, 1, 1, 1, 1,
714
+ 143, 1, 1, 1, 1, 1, 1, 1,
715
+ 145, 1, 1, 1, 1, 1, 1, 1,
716
+ 1, 1, 1, 1, 1, 1, 1, 1,
717
+ 1, 1, 1, 1, 1, 1, 1, 1,
718
+ 37, 1, 1, 1, 1, 1, 1, 1,
719
+ 1, 1, 1, 1, 1, 1, 1, 1,
720
+ 1, 1, 1, 1, 1, 1, 1, 1,
721
+ 1, 1, 1, 1, 1, 1, 1, 1,
722
+ 1, 1, 1, 1, 1, 1, 1, 1,
723
+ 1, 1, 1, 1, 1, 1, 1, 1,
724
+ 1, 1, 1, 1, 1, 1, 1, 1,
725
+ 1, 1, 1, 1, 1, 1, 1, 1,
726
+ 1, 1, 1, 1, 1, 1, 1, 1,
727
+ 1, 1, 1, 1, 1, 1, 1, 1,
728
+ 1, 1, 1, 1, 1, 1, 1, 1,
729
+ 1, 1, 1, 1, 1, 1, 1, 1,
730
+ 1, 1, 1, 1, 1, 1, 1, 1,
731
+ 1, 1, 1, 1, 1, 1, 1, 1,
732
+ 1, 1, 1, 1, 1, 1, 1, 1,
733
+ 1, 1, 1, 1, 1, 1, 1, 1,
734
+ 1, 1, 130, 146, 1, 23, 1, 1,
735
+ 1, 1, 1, 1, 1, 1, 1, 1,
736
+ 1, 1, 1, 1, 1, 1, 1, 1,
737
+ 1, 1, 1, 1, 23, 1, 147, 1,
738
+ 1, 1, 148, 1, 1, 1, 1, 1,
739
+ 1, 1, 1, 1, 1, 1, 1, 1,
740
+ 1, 1, 1, 1, 1, 147, 22, 149,
741
+ 22, 22, 22, 22, 22, 150, 1, 22,
742
+ 22, 1, 22, 134, 22, 22, 22, 22,
743
+ 22, 22, 22, 22, 22, 22, 22, 1,
744
+ 1, 1, 22, 1, 22, 26, 22, 22,
745
+ 22, 22, 22, 22, 22, 22, 22, 22,
746
+ 22, 22, 22, 22, 22, 22, 22, 22,
747
+ 22, 22, 22, 22, 22, 22, 22, 22,
748
+ 1, 1, 1, 22, 22, 22, 22, 22,
749
+ 22, 22, 22, 22, 22, 22, 22, 22,
750
+ 22, 22, 22, 22, 22, 22, 22, 22,
751
+ 22, 22, 22, 22, 22, 22, 22, 22,
752
+ 22, 22, 22, 22, 1, 151, 1, 1,
753
+ 1, 152, 1, 1, 1, 1, 1, 1,
754
+ 1, 1, 1, 1, 1, 1, 1, 1,
755
+ 1, 1, 1, 1, 151, 39, 40, 39,
756
+ 39, 39, 39, 39, 153, 1, 39, 39,
757
+ 1, 39, 1, 39, 39, 39, 39, 39,
758
+ 39, 39, 39, 39, 39, 39, 1, 1,
759
+ 1, 39, 1, 39, 31, 39, 39, 39,
760
+ 39, 39, 39, 39, 39, 39, 39, 39,
761
+ 39, 39, 39, 39, 39, 39, 39, 39,
762
+ 39, 39, 39, 39, 39, 39, 39, 1,
763
+ 1, 1, 39, 39, 39, 39, 39, 39,
764
+ 39, 39, 39, 39, 39, 39, 39, 39,
765
+ 39, 39, 39, 39, 39, 39, 39, 39,
766
+ 39, 39, 39, 39, 39, 39, 39, 39,
767
+ 39, 39, 39, 1, 154, 1, 151, 1,
768
+ 1, 1, 1, 1, 1, 1, 1, 1,
769
+ 1, 1, 1, 1, 1, 1, 1, 1,
770
+ 1, 1, 1, 1, 1, 151, 1, 155,
771
+ 1, 1, 1, 156, 1, 1, 1, 1,
772
+ 1, 1, 1, 1, 1, 1, 1, 1,
773
+ 1, 1, 1, 1, 1, 1, 155, 127,
774
+ 128, 127, 127, 127, 127, 127, 157, 1,
775
+ 127, 127, 1, 127, 1, 127, 127, 127,
776
+ 127, 127, 127, 127, 127, 127, 127, 127,
777
+ 1, 1, 1, 127, 1, 127, 37, 127,
778
+ 127, 127, 127, 127, 127, 127, 127, 127,
779
+ 127, 127, 127, 127, 127, 127, 127, 127,
780
+ 127, 127, 127, 127, 127, 127, 127, 127,
781
+ 127, 1, 1, 1, 127, 127, 127, 127,
782
+ 127, 127, 127, 127, 127, 127, 127, 127,
783
+ 127, 127, 127, 127, 127, 127, 127, 127,
784
+ 127, 127, 127, 127, 127, 127, 127, 127,
785
+ 127, 127, 127, 127, 127, 1, 158, 158,
786
+ 158, 158, 158, 158, 158, 158, 159, 1,
787
+ 158, 158, 160, 158, 158, 158, 158, 158,
788
+ 158, 158, 158, 158, 158, 158, 158, 158,
789
+ 158, 158, 158, 158, 158, 159, 158, 119,
790
+ 158, 158, 158, 158, 158, 158, 158, 158,
791
+ 158, 158, 158, 158, 158, 158, 158, 158,
792
+ 158, 158, 158, 158, 158, 158, 158, 158,
793
+ 158, 158, 158, 158, 158, 158, 158, 158,
794
+ 158, 158, 158, 158, 158, 158, 158, 158,
795
+ 158, 158, 158, 158, 158, 158, 158, 158,
796
+ 158, 158, 158, 158, 158, 158, 158, 158,
797
+ 158, 161, 158, 158, 158, 158, 158, 158,
798
+ 158, 158, 158, 158, 158, 158, 158, 158,
799
+ 158, 158, 158, 158, 158, 158, 158, 158,
800
+ 158, 158, 158, 158, 158, 158, 158, 158,
801
+ 158, 158, 158, 158, 158, 1, 162, 162,
802
+ 162, 162, 162, 162, 162, 162, 162, 1,
803
+ 162, 162, 163, 162, 162, 162, 162, 162,
804
+ 162, 162, 162, 162, 162, 162, 162, 162,
805
+ 162, 162, 162, 162, 162, 162, 162, 164,
806
+ 162, 162, 162, 162, 162, 162, 162, 162,
807
+ 162, 162, 162, 162, 162, 162, 162, 162,
808
+ 162, 162, 162, 162, 162, 162, 162, 162,
809
+ 162, 162, 162, 162, 162, 162, 162, 162,
810
+ 162, 162, 162, 162, 162, 162, 162, 162,
811
+ 162, 162, 162, 162, 162, 162, 162, 162,
812
+ 162, 162, 162, 162, 162, 162, 162, 162,
813
+ 162, 165, 162, 162, 162, 162, 162, 162,
814
+ 162, 162, 162, 162, 162, 162, 162, 162,
815
+ 162, 162, 162, 162, 162, 162, 162, 162,
816
+ 162, 162, 162, 162, 162, 162, 162, 162,
817
+ 162, 162, 162, 162, 162, 1, 166, 1,
818
+ 162, 1, 1, 1, 1, 1, 1, 1,
819
+ 1, 1, 1, 1, 1, 1, 1, 1,
820
+ 1, 1, 1, 1, 1, 1, 1, 162,
821
+ 1, 20, 1, 1, 1, 21, 1, 1,
822
+ 1, 1, 1, 1, 1, 1, 1, 1,
823
+ 1, 1, 1, 1, 1, 1, 1, 1,
824
+ 20, 134, 23, 134, 134, 134, 134, 134,
825
+ 24, 1, 134, 134, 1, 134, 25, 134,
826
+ 134, 134, 134, 134, 134, 134, 134, 134,
827
+ 134, 134, 1, 1, 1, 134, 1, 134,
828
+ 26, 134, 134, 134, 134, 134, 134, 134,
829
+ 134, 134, 134, 134, 134, 134, 134, 134,
830
+ 134, 134, 134, 134, 134, 134, 134, 134,
831
+ 134, 134, 134, 1, 1, 1, 134, 134,
832
+ 134, 134, 134, 134, 134, 134, 134, 134,
833
+ 134, 134, 134, 134, 134, 134, 134, 134,
834
+ 134, 134, 134, 134, 134, 134, 134, 134,
835
+ 134, 134, 134, 134, 134, 134, 134, 1,
836
+ 1, 1, 1, 1, 1, 1, 1, 1,
837
+ 1, 1, 1, 1, 1, 1, 1, 1,
838
+ 1, 1, 1, 1, 1, 1, 1, 1,
839
+ 1, 1, 1, 1, 1, 1, 1, 1,
840
+ 1, 1, 1, 1, 1, 1, 1, 1,
841
+ 1, 1, 1, 1, 1, 1, 1, 1,
842
+ 1, 1, 1, 1, 1, 1, 1, 1,
843
+ 1, 1, 1, 1, 1, 1, 1, 1,
844
+ 1, 1, 1, 1, 1, 1, 1, 1,
845
+ 1, 1, 1, 1, 1, 1, 1, 1,
846
+ 1, 1, 1, 1, 1, 1, 1, 1,
847
+ 1, 1, 1, 1, 1, 1, 1, 1,
848
+ 1, 1, 1, 1, 1, 1, 1, 1,
849
+ 1, 1, 1, 1, 1, 1, 1, 1,
850
+ 1, 1, 1, 1, 1, 1, 1, 1,
851
+ 1, 1, 1, 1, 1, 1, 1, 1,
852
+ 162, 162, 162, 162, 162, 162, 162, 162,
853
+ 162, 167, 1, 162, 162, 168, 162, 162,
854
+ 162, 162, 162, 162, 162, 162, 162, 162,
855
+ 162, 162, 162, 162, 162, 162, 162, 162,
856
+ 167, 162, 123, 162, 162, 162, 162, 162,
857
+ 162, 162, 162, 162, 162, 162, 162, 162,
858
+ 162, 162, 162, 162, 162, 162, 162, 162,
859
+ 162, 162, 162, 162, 162, 162, 162, 162,
860
+ 162, 162, 162, 162, 162, 162, 162, 162,
861
+ 162, 162, 162, 162, 162, 162, 162, 162,
862
+ 162, 162, 162, 162, 162, 162, 162, 162,
863
+ 162, 162, 162, 162, 165, 162, 162, 162,
864
+ 162, 162, 162, 162, 162, 162, 162, 162,
865
+ 162, 162, 162, 162, 162, 162, 162, 162,
866
+ 162, 162, 162, 162, 162, 162, 162, 162,
867
+ 162, 162, 162, 162, 162, 162, 162, 162,
868
+ 1, 169, 1, 167, 1, 1, 1, 1,
869
+ 1, 1, 1, 1, 1, 1, 1, 1,
870
+ 1, 1, 1, 1, 1, 1, 1, 1,
871
+ 1, 1, 167, 1, 170, 170, 170, 170,
872
+ 170, 170, 170, 170, 171, 1, 170, 170,
873
+ 172, 170, 170, 170, 170, 170, 170, 170,
874
+ 170, 170, 170, 170, 170, 170, 170, 170,
875
+ 170, 170, 170, 171, 170, 173, 170, 170,
876
+ 170, 170, 170, 170, 170, 170, 170, 170,
877
+ 170, 170, 170, 170, 170, 170, 170, 170,
878
+ 170, 170, 170, 170, 170, 170, 170, 170,
879
+ 170, 170, 170, 170, 170, 170, 170, 170,
880
+ 170, 170, 170, 170, 170, 170, 170, 170,
881
+ 170, 170, 170, 170, 170, 170, 170, 170,
882
+ 170, 170, 170, 170, 170, 170, 170, 174,
883
+ 170, 170, 170, 170, 170, 170, 170, 170,
884
+ 170, 170, 170, 170, 170, 170, 170, 170,
885
+ 170, 170, 170, 170, 170, 170, 170, 170,
886
+ 170, 170, 170, 170, 170, 170, 170, 170,
887
+ 170, 170, 170, 1, 175, 175, 175, 175,
888
+ 175, 175, 175, 175, 175, 1, 175, 175,
889
+ 176, 175, 175, 175, 175, 175, 175, 175,
890
+ 175, 175, 175, 175, 175, 175, 175, 175,
891
+ 175, 175, 175, 175, 175, 177, 175, 175,
892
+ 175, 175, 175, 175, 175, 175, 175, 175,
893
+ 175, 175, 175, 175, 175, 175, 175, 175,
894
+ 175, 175, 175, 175, 175, 175, 175, 175,
895
+ 175, 175, 175, 175, 175, 175, 175, 175,
896
+ 175, 175, 175, 175, 175, 175, 175, 175,
897
+ 175, 175, 175, 175, 175, 175, 175, 175,
898
+ 175, 175, 175, 175, 175, 175, 175, 178,
899
+ 175, 175, 175, 175, 175, 175, 175, 175,
900
+ 175, 175, 175, 175, 175, 175, 175, 175,
901
+ 175, 175, 175, 175, 175, 175, 175, 175,
902
+ 175, 175, 175, 175, 175, 175, 175, 175,
903
+ 175, 175, 175, 1, 179, 1, 175, 1,
904
+ 1, 1, 1, 1, 1, 1, 1, 1,
905
+ 1, 1, 1, 1, 1, 1, 1, 1,
906
+ 1, 1, 1, 1, 1, 175, 1, 180,
907
+ 1, 1, 1, 181, 1, 1, 1, 1,
908
+ 1, 1, 1, 1, 1, 1, 1, 1,
909
+ 1, 1, 1, 1, 1, 1, 180, 134,
910
+ 23, 134, 134, 134, 134, 134, 182, 1,
911
+ 134, 134, 1, 134, 25, 134, 134, 134,
912
+ 134, 134, 134, 134, 134, 134, 134, 134,
913
+ 1, 1, 1, 134, 1, 134, 183, 134,
914
+ 134, 134, 134, 134, 134, 134, 134, 134,
915
+ 134, 134, 134, 134, 134, 134, 134, 134,
916
+ 134, 134, 134, 134, 134, 134, 134, 134,
917
+ 134, 1, 1, 1, 134, 134, 134, 134,
918
+ 134, 134, 134, 134, 134, 134, 134, 134,
919
+ 134, 134, 134, 134, 134, 134, 134, 134,
920
+ 134, 134, 134, 134, 134, 134, 134, 134,
921
+ 134, 134, 134, 134, 134, 1, 184, 1,
922
+ 1, 1, 185, 1, 1, 1, 1, 1,
923
+ 1, 1, 1, 1, 1, 1, 1, 1,
924
+ 1, 1, 1, 1, 1, 184, 1, 1,
925
+ 1, 1, 1, 1, 1, 186, 1, 1,
926
+ 1, 1, 1, 30, 1, 1, 1, 1,
927
+ 1, 1, 1, 1, 1, 1, 1, 1,
928
+ 1, 1, 1, 1, 1, 187, 1, 188,
929
+ 1, 184, 1, 1, 1, 1, 1, 1,
930
+ 1, 1, 1, 1, 1, 1, 1, 1,
931
+ 1, 1, 1, 1, 1, 1, 1, 1,
932
+ 184, 1, 189, 1, 1, 1, 190, 1,
933
+ 1, 1, 1, 1, 1, 1, 1, 1,
934
+ 1, 1, 1, 1, 1, 1, 1, 1,
935
+ 1, 189, 1, 1, 1, 1, 1, 1,
936
+ 1, 191, 1, 1, 1, 1, 1, 36,
937
+ 1, 1, 1, 1, 1, 1, 1, 1,
938
+ 1, 1, 1, 1, 1, 1, 1, 1,
939
+ 1, 192, 1, 1, 1, 1, 1, 1,
940
+ 1, 1, 1, 1, 1, 1, 1, 1,
941
+ 1, 1, 1, 1, 1, 1, 1, 1,
942
+ 1, 1, 1, 1, 1, 1, 1, 1,
943
+ 1, 1, 1, 1, 1, 1, 1, 1,
944
+ 1, 1, 1, 1, 1, 1, 1, 1,
945
+ 1, 1, 1, 1, 1, 1, 1, 1,
946
+ 1, 1, 1, 1, 1, 1, 1, 1,
947
+ 1, 1, 1, 1, 1, 1, 1, 1,
948
+ 1, 1, 1, 1, 1, 1, 1, 1,
949
+ 1, 1, 1, 1, 1, 1, 1, 1,
950
+ 1, 1, 1, 1, 1, 1, 1, 1,
951
+ 1, 1, 1, 1, 1, 1, 1, 1,
952
+ 1, 1, 1, 1, 1, 1, 1, 1,
953
+ 1, 1, 1, 1, 1, 1, 1, 1,
954
+ 1, 1, 1, 1, 1, 1, 1, 1,
955
+ 1, 1, 1, 175, 175, 175, 175, 175,
956
+ 175, 175, 175, 175, 193, 1, 175, 175,
957
+ 194, 175, 175, 175, 175, 175, 175, 175,
958
+ 175, 175, 175, 175, 175, 175, 175, 175,
959
+ 175, 175, 175, 193, 175, 195, 175, 175,
960
+ 175, 175, 175, 175, 175, 175, 175, 175,
961
+ 175, 175, 175, 175, 175, 175, 175, 175,
962
+ 175, 175, 175, 175, 175, 175, 175, 175,
963
+ 175, 175, 175, 175, 175, 175, 175, 175,
964
+ 175, 175, 175, 175, 175, 175, 175, 175,
965
+ 175, 175, 175, 175, 175, 175, 175, 175,
966
+ 175, 175, 175, 175, 175, 175, 175, 178,
967
+ 175, 175, 175, 175, 175, 175, 175, 175,
968
+ 175, 175, 175, 175, 175, 175, 175, 175,
969
+ 175, 175, 175, 175, 175, 175, 175, 175,
970
+ 175, 175, 175, 175, 175, 175, 175, 175,
971
+ 175, 175, 175, 1, 196, 1, 193, 1,
972
+ 1, 1, 1, 1, 1, 1, 1, 1,
973
+ 1, 1, 1, 1, 1, 1, 1, 1,
974
+ 1, 1, 1, 1, 1, 193, 1, 197,
975
+ 1, 1, 1, 198, 1, 1, 1, 1,
976
+ 1, 1, 1, 1, 1, 1, 1, 1,
977
+ 1, 1, 1, 1, 1, 1, 197, 1,
978
+ 1, 1, 1, 1, 1, 1, 199, 1,
979
+ 1, 1, 1, 1, 30, 1, 1, 1,
980
+ 1, 1, 1, 1, 1, 1, 1, 1,
981
+ 1, 1, 1, 1, 1, 1, 200, 1,
982
+ 201, 1, 197, 1, 1, 1, 1, 1,
983
+ 1, 1, 1, 1, 1, 1, 1, 1,
984
+ 1, 1, 1, 1, 1, 1, 1, 1,
985
+ 1, 197, 1, 202, 1, 1, 1, 203,
986
+ 1, 1, 1, 1, 1, 1, 1, 1,
987
+ 1, 1, 1, 1, 1, 1, 1, 1,
988
+ 1, 1, 202, 1, 1, 1, 1, 1,
989
+ 1, 1, 204, 1, 1, 1, 1, 1,
990
+ 36, 1, 1, 1, 1, 1, 1, 1,
991
+ 1, 1, 1, 1, 1, 1, 1, 1,
992
+ 1, 1, 205, 1, 206, 1, 1, 1,
993
+ 207, 1, 1, 1, 1, 1, 1, 1,
994
+ 1, 1, 1, 1, 1, 1, 1, 1,
995
+ 1, 1, 1, 206, 208, 209, 208, 208,
996
+ 208, 208, 208, 210, 1, 208, 208, 1,
997
+ 208, 211, 208, 208, 208, 208, 208, 208,
998
+ 208, 208, 208, 208, 208, 1, 1, 1,
999
+ 208, 1, 208, 1, 208, 208, 208, 208,
1000
+ 208, 208, 208, 208, 208, 208, 208, 208,
1001
+ 208, 208, 208, 208, 208, 208, 208, 208,
1002
+ 208, 208, 208, 208, 208, 208, 1, 1,
1003
+ 1, 208, 208, 208, 208, 208, 208, 208,
1004
+ 208, 208, 208, 208, 208, 208, 208, 208,
1005
+ 208, 208, 208, 208, 208, 208, 208, 208,
1006
+ 208, 208, 208, 208, 208, 208, 208, 208,
1007
+ 208, 208, 1, 134, 23, 134, 134, 134,
1008
+ 134, 134, 1, 1, 134, 134, 1, 134,
1009
+ 212, 134, 134, 134, 134, 134, 134, 134,
1010
+ 134, 134, 134, 134, 1, 1, 1, 134,
1011
+ 1, 134, 1, 134, 134, 134, 134, 134,
1012
+ 134, 134, 134, 134, 134, 134, 134, 134,
1013
+ 134, 134, 134, 134, 134, 134, 134, 134,
1014
+ 134, 134, 134, 134, 134, 1, 1, 1,
1015
+ 134, 134, 134, 134, 134, 134, 134, 134,
1016
+ 134, 134, 134, 134, 134, 134, 134, 134,
1017
+ 134, 134, 134, 134, 134, 134, 134, 134,
1018
+ 134, 134, 134, 134, 134, 134, 134, 134,
1019
+ 134, 1, 213, 213, 213, 213, 213, 213,
1020
+ 213, 213, 213, 1, 213, 213, 214, 213,
1021
+ 213, 213, 213, 213, 213, 213, 213, 213,
1022
+ 213, 213, 213, 213, 213, 213, 213, 213,
1023
+ 213, 213, 213, 213, 213, 213, 213, 213,
1024
+ 213, 215, 216, 213, 213, 213, 213, 213,
1025
+ 213, 213, 213, 213, 213, 213, 213, 213,
1026
+ 213, 213, 213, 213, 213, 213, 213, 213,
1027
+ 213, 213, 213, 213, 213, 213, 213, 213,
1028
+ 213, 213, 213, 213, 213, 213, 213, 213,
1029
+ 213, 213, 213, 213, 213, 213, 213, 213,
1030
+ 213, 213, 213, 213, 213, 217, 213, 213,
1031
+ 213, 213, 213, 213, 213, 213, 213, 213,
1032
+ 213, 213, 213, 213, 213, 213, 213, 213,
1033
+ 213, 213, 213, 213, 213, 213, 213, 213,
1034
+ 213, 213, 213, 213, 213, 213, 213, 213,
1035
+ 213, 1, 218, 218, 218, 218, 218, 218,
1036
+ 218, 218, 218, 1, 218, 218, 219, 218,
1037
+ 218, 218, 218, 218, 218, 218, 218, 218,
1038
+ 218, 218, 218, 218, 218, 218, 218, 218,
1039
+ 218, 218, 218, 218, 218, 218, 218, 218,
1040
+ 218, 220, 221, 218, 218, 218, 218, 218,
1041
+ 218, 218, 218, 218, 218, 218, 218, 218,
1042
+ 218, 218, 218, 218, 218, 218, 218, 218,
1043
+ 218, 218, 218, 218, 218, 218, 218, 218,
1044
+ 218, 218, 218, 218, 218, 218, 218, 218,
1045
+ 218, 218, 218, 218, 218, 218, 218, 218,
1046
+ 218, 218, 218, 218, 218, 222, 218, 218,
1047
+ 218, 218, 218, 218, 218, 218, 218, 218,
1048
+ 218, 218, 218, 218, 218, 218, 218, 218,
1049
+ 218, 218, 218, 218, 218, 218, 218, 218,
1050
+ 218, 218, 218, 218, 218, 218, 218, 218,
1051
+ 218, 1, 223, 1, 218, 1, 1, 1,
1052
+ 1, 1, 1, 1, 1, 1, 1, 1,
1053
+ 1, 1, 1, 1, 1, 1, 1, 1,
1054
+ 1, 1, 1, 218, 1, 218, 218, 218,
1055
+ 218, 218, 218, 218, 218, 218, 218, 218,
1056
+ 218, 218, 218, 218, 218, 218, 218, 218,
1057
+ 218, 218, 218, 218, 218, 218, 218, 218,
1058
+ 218, 218, 218, 218, 218, 218, 218, 218,
1059
+ 218, 218, 218, 218, 218, 218, 218, 218,
1060
+ 218, 218, 218, 218, 218, 218, 218, 218,
1061
+ 218, 218, 218, 218, 218, 218, 218, 218,
1062
+ 218, 218, 218, 218, 218, 218, 218, 218,
1063
+ 218, 218, 218, 218, 218, 218, 218, 218,
1064
+ 218, 218, 218, 218, 218, 218, 218, 218,
1065
+ 218, 218, 218, 218, 218, 218, 218, 218,
1066
+ 218, 218, 218, 218, 218, 218, 218, 218,
1067
+ 218, 218, 218, 218, 218, 218, 218, 218,
1068
+ 218, 218, 218, 218, 218, 218, 218, 218,
1069
+ 218, 218, 218, 218, 218, 218, 218, 218,
1070
+ 218, 218, 218, 218, 218, 1, 224, 1,
1071
+ 1, 1, 225, 1, 1, 1, 1, 1,
1072
+ 1, 1, 1, 1, 1, 1, 1, 1,
1073
+ 1, 1, 1, 1, 1, 224, 1, 1,
1074
+ 1, 1, 1, 1, 1, 226, 1, 1,
1075
+ 1, 1, 1, 1, 1, 1, 1, 1,
1076
+ 1, 1, 1, 1, 1, 1, 1, 1,
1077
+ 1, 227, 1, 85, 1, 1, 1, 228,
1078
+ 1, 1, 1, 1, 1, 1, 1, 1,
1079
+ 1, 1, 1, 1, 1, 1, 1, 1,
1080
+ 1, 1, 85, 1, 1, 1, 1, 1,
1081
+ 1, 1, 229, 1, 1, 1, 1, 1,
1082
+ 1, 1, 1, 1, 1, 1, 1, 1,
1083
+ 1, 1, 1, 1, 1, 1, 4, 1,
1084
+ 230, 1, 1, 1, 231, 1, 1, 1,
1085
+ 1, 1, 1, 1, 1, 1, 1, 1,
1086
+ 1, 1, 1, 1, 1, 1, 1, 230,
1087
+ 1, 1, 1, 1, 1, 1, 1, 232,
1088
+ 1, 1, 1, 1, 1, 1, 1, 1,
1089
+ 1, 1, 1, 1, 1, 1, 1, 1,
1090
+ 1, 1, 1, 9, 1, 1, 0
1091
+ ]
1092
+
1093
+ class << self
1094
+ attr_accessor :_trans_targs
1095
+ private :_trans_targs, :_trans_targs=
1096
+ end
1097
+ self._trans_targs = [
1098
+ 1, 0, 2, 4, 5, 3, 1, 2,
1099
+ 4, 5, 6, 7, 9, 93, 110, 111,
1100
+ 6, 7, 110, 8, 10, 11, 9, 67,
1101
+ 13, 79, 22, 10, 11, 13, 14, 22,
1102
+ 12, 10, 11, 13, 14, 22, 15, 17,
1103
+ 61, 66, 16, 18, 19, 21, 22, 20,
1104
+ 18, 19, 21, 22, 23, 24, 57, 38,
1105
+ 52, 47, 59, 53, 23, 24, 26, 38,
1106
+ 52, 47, 53, 25, 27, 28, 30, 51,
1107
+ 117, 31, 29, 27, 28, 30, 31, 117,
1108
+ 32, 34, 37, 33, 36, 118, 32, 34,
1109
+ 37, 39, 49, 48, 40, 42, 41, 43,
1110
+ 44, 46, 45, 43, 44, 46, 50, 23,
1111
+ 24, 26, 38, 52, 47, 53, 54, 56,
1112
+ 55, 57, 58, 117, 60, 62, 63, 18,
1113
+ 65, 62, 63, 18, 65, 64, 15, 17,
1114
+ 61, 66, 68, 77, 76, 69, 71, 70,
1115
+ 72, 73, 75, 72, 73, 75, 74, 72,
1116
+ 73, 75, 78, 80, 81, 84, 83, 80,
1117
+ 81, 83, 82, 80, 81, 83, 85, 90,
1118
+ 91, 89, 85, 86, 88, 89, 87, 90,
1119
+ 91, 92, 94, 103, 104, 106, 102, 94,
1120
+ 95, 97, 102, 96, 98, 99, 101, 22,
1121
+ 98, 99, 101, 22, 100, 98, 99, 101,
1122
+ 22, 103, 104, 106, 105, 106, 107, 109,
1123
+ 22, 108, 106, 107, 109, 22, 6, 7,
1124
+ 9, 93, 110, 111, 111, 113, 114, 113,
1125
+ 120, 116, 113, 114, 113, 120, 116, 115,
1126
+ 118, 35, 119, 5, 35, 119, 118, 35,
1127
+ 119
1128
+ ]
1129
+
1130
+ class << self
1131
+ attr_accessor :_trans_actions
1132
+ private :_trans_actions, :_trans_actions=
1133
+ end
1134
+ self._trans_actions = [
1135
+ 0, 0, 0, 1, 2, 0, 3, 3,
1136
+ 4, 5, 6, 6, 6, 6, 7, 6,
1137
+ 0, 0, 1, 0, 8, 8, 0, 0,
1138
+ 9, 0, 10, 0, 0, 1, 0, 11,
1139
+ 0, 3, 3, 4, 3, 12, 0, 0,
1140
+ 0, 1, 0, 0, 0, 1, 0, 0,
1141
+ 3, 3, 4, 3, 13, 13, 13, 13,
1142
+ 14, 13, 0, 13, 0, 0, 0, 0,
1143
+ 1, 0, 0, 0, 0, 0, 1, 0,
1144
+ 15, 0, 0, 3, 3, 4, 3, 16,
1145
+ 0, 0, 1, 0, 0, 0, 3, 3,
1146
+ 4, 0, 0, 0, 0, 0, 0, 0,
1147
+ 0, 1, 0, 3, 3, 4, 0, 3,
1148
+ 3, 3, 3, 4, 3, 3, 0, 0,
1149
+ 0, 0, 0, 0, 0, 17, 17, 18,
1150
+ 17, 0, 0, 19, 0, 0, 3, 3,
1151
+ 3, 4, 0, 0, 0, 0, 0, 0,
1152
+ 8, 8, 9, 0, 0, 1, 0, 3,
1153
+ 3, 4, 0, 8, 8, 0, 9, 0,
1154
+ 0, 1, 0, 3, 3, 4, 17, 17,
1155
+ 17, 17, 0, 0, 19, 0, 0, 0,
1156
+ 0, 0, 17, 17, 17, 18, 17, 0,
1157
+ 0, 19, 0, 0, 8, 8, 9, 20,
1158
+ 0, 0, 1, 21, 0, 3, 3, 4,
1159
+ 22, 0, 0, 19, 0, 0, 0, 1,
1160
+ 23, 0, 3, 3, 4, 24, 3, 3,
1161
+ 25, 25, 4, 25, 0, 26, 26, 27,
1162
+ 28, 26, 0, 0, 1, 29, 0, 0,
1163
+ 30, 30, 31, 32, 0, 1, 3, 3,
1164
+ 4
1165
+ ]
15
1166
 
1167
+ class << self
1168
+ attr_accessor :_eof_actions
1169
+ private :_eof_actions, :_eof_actions=
1170
+ end
1171
+ self._eof_actions = [
1172
+ 0, 0, 0, 0, 0, 0, 0, 0,
1173
+ 0, 0, 0, 0, 0, 0, 0, 0,
1174
+ 0, 0, 0, 0, 0, 0, 0, 0,
1175
+ 0, 0, 0, 0, 0, 0, 0, 0,
1176
+ 0, 0, 0, 0, 0, 0, 0, 0,
1177
+ 0, 0, 0, 0, 0, 0, 0, 0,
1178
+ 0, 0, 0, 0, 0, 0, 0, 0,
1179
+ 0, 0, 0, 0, 0, 0, 0, 0,
1180
+ 0, 0, 0, 0, 0, 0, 0, 0,
1181
+ 0, 0, 0, 0, 0, 0, 0, 0,
1182
+ 0, 0, 0, 0, 0, 0, 0, 0,
1183
+ 0, 0, 0, 0, 0, 0, 0, 0,
1184
+ 0, 0, 0, 0, 0, 0, 0, 0,
1185
+ 0, 0, 0, 0, 0, 0, 0, 0,
1186
+ 0, 0, 0, 0, 0, 30, 0, 3,
1187
+ 0
1188
+ ]
1189
+
1190
+ class << self
1191
+ attr_accessor :start
1192
+ end
1193
+ self.start = 1;
1194
+ class << self
1195
+ attr_accessor :first_final
1196
+ end
1197
+ self.first_final = 117;
1198
+ class << self
1199
+ attr_accessor :error
1200
+ end
1201
+ self.error = 0;
1202
+
1203
+ class << self
1204
+ attr_accessor :en_comment_tail
1205
+ end
1206
+ self.en_comment_tail = 112;
1207
+ class << self
1208
+ attr_accessor :en_main
1209
+ end
1210
+ self.en_main = 1;
1211
+
1212
+
1213
+
1214
+ def self.parse(data)
1215
+ raise Mail::Field::ParseError.new(Mail::MessageIdsElement, data, 'nil is invalid') if data.nil?
1216
+
1217
+ # Parser state
1218
+ message_ids = MessageIdsStruct.new([])
16
1219
  msg_id_s = nil
17
- actions.each_slice(2) do |action_id, p|
18
- action = Mail::Parsers::Ragel::ACTIONS[action_id]
19
- case action
20
1220
 
21
- # Message Ids
22
- when :msg_id_s then msg_id_s = p
23
- when :msg_id_e
24
- message_ids.message_ids << s[msg_id_s..(p-1)].rstrip
1221
+ # 5.1 Variables Used by Ragel
1222
+ p = 0
1223
+ eof = pe = data.length
1224
+ stack = []
25
1225
 
26
- when :domain_e, :domain_s, :local_dot_atom_e,
27
- :local_dot_atom_pre_comment_e,
28
- :local_dot_atom_pre_comment_s,
29
- :local_dot_atom_s
1226
+
1227
+ begin
1228
+ p ||= 0
1229
+ pe ||= data.length
1230
+ cs = start
1231
+ top = 0
1232
+ end
30
1233
 
31
- # ignored actions
1234
+
1235
+ begin
1236
+ testEof = false
1237
+ _slen, _trans, _keys, _inds, _acts, _nacts = nil
1238
+ _goto_level = 0
1239
+ _resume = 10
1240
+ _eof_trans = 15
1241
+ _again = 20
1242
+ _test_eof = 30
1243
+ _out = 40
1244
+ while true
1245
+ if _goto_level <= 0
1246
+ if p == pe
1247
+ _goto_level = _test_eof
1248
+ next
1249
+ end
1250
+ if cs == 0
1251
+ _goto_level = _out
1252
+ next
1253
+ end
1254
+ end
1255
+ if _goto_level <= _resume
1256
+ _keys = cs << 1
1257
+ _inds = _index_offsets[cs]
1258
+ _slen = _key_spans[cs]
1259
+ _wide = data[p].ord
1260
+ _trans = if ( _slen > 0 &&
1261
+ _trans_keys[_keys] <= _wide &&
1262
+ _wide <= _trans_keys[_keys + 1]
1263
+ ) then
1264
+ _indicies[ _inds + _wide - _trans_keys[_keys] ]
1265
+ else
1266
+ _indicies[ _inds + _slen ]
1267
+ end
1268
+ cs = _trans_targs[_trans]
1269
+ if _trans_actions[_trans] != 0
1270
+ case _trans_actions[_trans]
1271
+ when 2 then
1272
+ begin
1273
+ msg_id_s = p end
1274
+ when 30 then
1275
+ begin
1276
+ message_ids.message_ids << data[msg_id_s..(p-1)].rstrip end
1277
+ when 3 then
1278
+ begin
1279
+ end
1280
+ when 26 then
1281
+ begin
1282
+ end
1283
+ when 15 then
1284
+ begin
1285
+ end
1286
+ when 13 then
1287
+ begin
1288
+ end
1289
+ when 11 then
1290
+ begin
1291
+ end
1292
+ when 8 then
1293
+ begin
1294
+ end
1295
+ when 6 then
1296
+ begin
1297
+ end
1298
+ when 19 then
1299
+ begin
1300
+ end
1301
+ when 17 then
1302
+ begin
1303
+ end
1304
+ when 23 then
1305
+ begin
1306
+ end
1307
+ when 1 then
1308
+ begin
1309
+ begin
1310
+ stack[top] = cs
1311
+ top+= 1
1312
+ cs = 112
1313
+ _goto_level = _again
1314
+ next
1315
+ end
1316
+ end
1317
+ when 29 then
1318
+ begin
1319
+ begin
1320
+ top -= 1
1321
+ cs = stack[top]
1322
+ _goto_level = _again
1323
+ next
1324
+ end
1325
+ end
1326
+ when 32 then
1327
+ begin
1328
+ message_ids.message_ids << data[msg_id_s..(p-1)].rstrip end
1329
+ begin
1330
+ msg_id_s = p end
1331
+ when 31 then
1332
+ begin
1333
+ message_ids.message_ids << data[msg_id_s..(p-1)].rstrip end
1334
+ begin
1335
+ begin
1336
+ stack[top] = cs
1337
+ top+= 1
1338
+ cs = 112
1339
+ _goto_level = _again
1340
+ next
1341
+ end
1342
+ end
1343
+ when 5 then
1344
+ begin
1345
+ end
1346
+ begin
1347
+ msg_id_s = p end
1348
+ when 16 then
1349
+ begin
1350
+ end
1351
+ begin
1352
+ end
1353
+ when 12 then
1354
+ begin
1355
+ end
1356
+ begin
1357
+ end
1358
+ when 25 then
1359
+ begin
1360
+ end
1361
+ begin
1362
+ end
1363
+ when 24 then
1364
+ begin
1365
+ end
1366
+ begin
1367
+ end
1368
+ when 4 then
1369
+ begin
1370
+ end
1371
+ begin
1372
+ begin
1373
+ stack[top] = cs
1374
+ top+= 1
1375
+ cs = 112
1376
+ _goto_level = _again
1377
+ next
1378
+ end
1379
+ end
1380
+ when 27 then
1381
+ begin
1382
+ end
1383
+ begin
1384
+ begin
1385
+ stack[top] = cs
1386
+ top+= 1
1387
+ cs = 112
1388
+ _goto_level = _again
1389
+ next
1390
+ end
1391
+ end
1392
+ when 28 then
1393
+ begin
1394
+ end
1395
+ begin
1396
+ begin
1397
+ top -= 1
1398
+ cs = stack[top]
1399
+ _goto_level = _again
1400
+ next
1401
+ end
1402
+ end
1403
+ when 14 then
1404
+ begin
1405
+ end
1406
+ begin
1407
+ begin
1408
+ stack[top] = cs
1409
+ top+= 1
1410
+ cs = 112
1411
+ _goto_level = _again
1412
+ next
1413
+ end
1414
+ end
1415
+ when 21 then
1416
+ begin
1417
+ end
1418
+ begin
1419
+ end
1420
+ when 10 then
1421
+ begin
1422
+ end
1423
+ begin
1424
+ end
1425
+ when 9 then
1426
+ begin
1427
+ end
1428
+ begin
1429
+ begin
1430
+ stack[top] = cs
1431
+ top+= 1
1432
+ cs = 112
1433
+ _goto_level = _again
1434
+ next
1435
+ end
1436
+ end
1437
+ when 7 then
1438
+ begin
1439
+ end
1440
+ begin
1441
+ begin
1442
+ stack[top] = cs
1443
+ top+= 1
1444
+ cs = 112
1445
+ _goto_level = _again
1446
+ next
1447
+ end
1448
+ end
1449
+ when 18 then
1450
+ begin
1451
+ end
1452
+ begin
1453
+ end
1454
+ when 22 then
1455
+ begin
1456
+ end
1457
+ begin
1458
+ end
1459
+ begin
1460
+ end
1461
+ when 20 then
1462
+ begin
1463
+ end
1464
+ begin
1465
+ end
1466
+ begin
1467
+ end
1468
+ end
1469
+ end
1470
+ end
1471
+ if _goto_level <= _again
1472
+ if cs == 0
1473
+ _goto_level = _out
1474
+ next
1475
+ end
1476
+ p += 1
1477
+ if p != pe
1478
+ _goto_level = _resume
1479
+ next
1480
+ end
1481
+ end
1482
+ if _goto_level <= _test_eof
1483
+ if p == eof
1484
+ case _eof_actions[cs]
1485
+ when 30 then
1486
+ begin
1487
+ message_ids.message_ids << data[msg_id_s..(p-1)].rstrip end
1488
+ when 3 then
1489
+ begin
1490
+ end
1491
+ end
1492
+ end
32
1493
 
33
- else
34
- raise Mail::Field::ParseError.new(Mail::MessageIdsElement, s, "Failed to process unknown action: #{action}")
35
- end
1494
+ end
1495
+ if _goto_level <= _out
1496
+ break
1497
+ end
1498
+ end
1499
+ end
1500
+
1501
+
1502
+ if p != eof || cs < 117
1503
+ raise Mail::Field::ParseError.new(Mail::MessageIdsElement, data, "Only able to parse up to #{data[0..p]}")
36
1504
  end
1505
+
37
1506
  message_ids
38
1507
  end
39
1508
  end