1# Test data file for JavaScriptCore::RegExp functional test.
2# The format of this file is:
3# # comment line
4# /{pattern}/{flags}
5#  "{string}", {offset}, {return-value}, {match-offset-vector}
6# Both the pattern and string accept backslash escapes.
7#
8/A/
9 "A", 0, 0, (0, 1)
10 "A2", 0, 0, (0, 1)
11/A2/
12 "A2", 0, 0, (0, 2)
13/\\u0041/
14 "A", 0, 0, (0, 1)
15/\\u00412/
16 "A2", 0, 0, (0, 2)
17/abc/
18 "abc", 0, 0, (0, 3)
19 "xabcy", 0, 1, (1, 4)
20 "ababc", 0, 2, (2, 5)
21 "xbc", 0, -1, (-1, -1)
22 "axc", 0, -1, (-1, -1)
23 "abx", 0, -1, (-1, -1)
24 "b", 0, -1, (-1, -1)
25/a|ab/
26 "abc", 0, 0, (0, 1)
27/(a|d|q|)x/i
28 "bcaDxqy", 0, 3, (3, 5, 3, 4)
29/(a|(e|q))(x|y)/
30 "bcaddxqy", 0, 6, (6, 8, 6, 7, 6, 7, 7, 8)
31/a*b/
32 "aaadaabaaa", 0, 4, (4, 7)
33 "xxx", 0, -1, (4, 4)
34/[^abc]def[abc]+/
35 "abxdefbb", 0, 2, (2, 8)
36/(a*)baa/
37 "ccdaaabaxaabaa", 0, 9, (9, 14, 9, 11)
38 "aabaa", 0, 0, (0, 5, 0, 2)
39/q(a|b)*q/
40 "xxqababqyy", 0, 2, (2, 8, 6, 7)
41/(a(.|[^d])c)*/
42 "adcaxc", 0, 0, (0, 6, 3, 6, 4, 5)
43/(a*)b\\1/
44 "abaaaxaabaayy", 0, 0, (0, 3, 0, 1)
45 "cccdaaabaxaabaayy", 0, 6, (6, 9, 6, 7)
46 "cccdaaabqxaabaayy", 0, 7, (7, 8, 7, 7)
47/x1g/
48 "x1g", 0, 0, (0, 3)
49/^x/
50 "x412", 0, 0, (0, 1)
51/\\u001g/
52 "u001g", 0, 0, (0, 5)
53/34/g
54 "343443444", 0, 0, (0, 2)
55 "343443444", 2, 2, (2, 4)
56 "343443444", 4, 5, (5, 7)
57 "343443444", 7, -1, (-1, -1)
58/\\d{1}/g
59 "123456abcde7890", 0, 0, (0, 1)
60 "123456abcde7890", 1, 1, (1, 2)
61 "123456abcde7890", 2, 2, (2, 3)
62 "123456abcde7890", 3, 3, (3, 4)
63 "123456abcde7890", 4, 4, (4, 5)
64 "123456abcde7890", 5, 5, (5, 6)
65 "123456abcde7890", 6, 11, (11, 12)
66 "123456abcde7890", 12, 12, (12, 13)
67 "123456abcde7890", 13, 13, (13, 14)
68 "123456abcde7890", 14, 14, (14, 15)
69 "123456abcde7890", 15, -1, (-1, -1)
70/\\d{2}/g
71 "123456abcde7890", 0, 0, (0, 2)
72 "123456abcde7890", 2, 2, (2, 4)
73 "123456abcde7890", 4, 4, (4, 6)
74 "123456abcde7890", 6, 11, (11, 13)
75 "123456abcde7890", 13, 13, (13, 15)
76 "123456abcde7890", 15, -1, (-1, -1)
77/\\D{2}/g
78 "123456abcde7890", 0, 6, (6, 8)
79 "123456abcde7890", 8, 8, (8, 10)
80 "123456abcde7890", 10, -1, (-1, -1)
81/([\\d]{5})([-\\ ]?[\\d]{4})?$/
82 "Boston, Mass. 02134", 0, 14, (14, 19, 14, 19, -1, -1)
83/l/
84 "hello", 0, 2, (2, 3)
85 "hello", 3, 3, (3, 4)
86 "hello", 4, -1, (-1, -1)
87/\\s/g
88 "x, x, x, x", 0, 2, (2, 3)
89 "x, x, x, x", 3, 5, (5, 6)
90 "x, x, x, x", 6, 8, (8, 9)
91 "x, x, x, x", 9, -1, (-1, -1)
92/((a)|(ab))((c)|(bc))/
93 "abc", 0, 0, (0, 3, 0, 1, 0, 1, -1, -1, 1, 3, -1, -1, 1, 3)
94/a[a-z]{2,4}/
95 "abcdefghi", 0, 0, (0, 5)
96/a[a-z]{2,4}?/
97 "abcdefghi", 0, 0, (0, 3)
98/(aa|aabaac|ba|b|c)*/
99 "aabaac", 0, 0, (0, 4, 2, 4)
100/^(a+)\\1*,\\1+$/
101 "aaaaaaaaaa,aaaaaaaaaaaaaaa", 0, 0, (0, 26, 0, 5)
102/(z)((a+)?(b+)?(c))*/
103 "zaacbbbcac", 0, 0, (0, 10, 0, 1, 8, 10, 8, 9, -1, -1, 9, 10)
104/(a*)*/
105 "b", 0, 0, (0, 0, -1, -1)
106 "ab", 0, 0, (0, 1, 0, 1)
107/(a*)b\\1+/
108 "baaaac", 0, 0, (0, 1, 0, 0)
109/(?=(a+))/
110 "baaabac", 0, 1, (1, 1, 1, 4)
111/(?=(a+))a*b\\1/
112 "baaabac", 0, 3, (3, 6, 3, 4)
113/(.*?)a(?!(a+)b\\2c)\\2(.*)/
114 "baaabaac", 0, 0, (0, 8, 0, 2, -1, -1, 3, 8)
115/\\w\\s\\w/g
116 "a b c d e", 0, 0, (0, 3)
117 "a b c d e", 3, 4, (4, 7)
118 "a b c d e", 7, -1, (-1, -1)
119/\\d\\d\\d/g
120 "12345678", 0, 0, (0, 3)
121 "12345678", 3, 3, (3, 6)
122 "12345678", 6, -1, (-1, -1)
123/abc/gi
124 "AbcaBcabC", 0, 0, (0, 3)
125 "AbcaBcabC", 3, 3, (3, 6)
126 "AbcaBcabC", 6, 6, (6, 9)
127 "AbcaBcabC", 9, -1, (-1, -1)
128/abc/i
129 "AbcaBcabC", 0, 0, (0, 3)
130 "ABC", 0, 0, (0, 3)
131 "XABCY", 0, 1, (1, 4)
132 "ABABC", 0, 2, (2, 5)
133 "XBC", 0, -1, (-1, -1)
134 "AXC", 0, -1, (-1, -1)
135 "ABX", 0, -1, (-1, -1)
136 "aaxabxbaxbbx", 0, -1, (-1, -1)
137/ab*c/
138 "abc", 0, 0, (0, 3)
139/ab*bc/
140 "abc", 0, 0, (0, 3)
141 "abbc", 0, 0, (0, 4)
142 "abbbbc", 0, 0, (0, 6)
143/.{1}/
144 "abbbbc", 0, 0, (0, 1)
145/.{3,4}/
146 "abbbbc", 0, 0, (0, 4)
147/ab{0,}bc/
148 "abbbbc", 0, 0, (0, 6)
149/ab+bc/
150 "abbc", 0, 0, (0, 4)
151 "abbbbc", 0, 0, (0, 6)
152 "abc", 0, -1, (0, 9)
153 "abq", 0, -1, (0, 9)
154 "abc", 0, -1, (0, -1)
155 "abq", 0, -1, (0, -1)
156/ab{1,}bc/
157 "abbbbc", 0, 0, (0, 6)
158 "abq", 0, -1, (0, 9)
159/ab{1,3}bc/
160 "abbbbc", 0, 0, (0, 6)
161 "abbbc", 0, 0, (0, 5)
162 "abbc", 0, 0, (0, 4)
163 "abc", 0, -1, (0, -1)
164 "abbbbbc", 0, -1, (4, -1)
165/ab{3,4}bc/
166 "abbbbc", 0, 0, (0, 6)
167/ab?bc/
168 "abbc", 0, 0, (0, 4)
169 "abc", 0, 0, (0, 3)
170 "abbbbc", 0, -1, (4, 9)
171/ab{0,1}bc/
172 "abc", 0, 0, (0, 3)
173/ab?c/
174 "abc", 0, 0, (0, 3)
175/ab{0,1}c/
176 "abc", 0, 0, (0, 3)
177/^abc$/
178 "abc", 0, 0, (0, 3)
179 "abcc", 0, -1, (-1, -1)
180 "aabc", 0, -1, (-1, -1)
181 "abbbbc", 0, -1, (-1, -1)
182 "qqq\nabc", 0, -1, (-1, -1)
183 "abc\nzzz", 0, -1, (-1, -1)
184 "qqq\nabc\nzzz", 0, -1, (-1, -1)
185/^abc/
186 "abcc", 0, 0, (0, 3)
187 "abcdefghi", 0, 0, (0, 3)
188 "abc", 0, 0, (0, 3)
189 "xyzabc", 0, -1, (-1, -1)
190/abc$/
191 "aabc", 0, 1, (1, 4)
192 "aabcd", 0, -1, (-1, -1)
193 "abc", 0, 0, (0, 3)
194 "abc\n", 0, -1, (-1, -1)
195 "abc\ndef", 0, -1, (-1, -1)
196/^/
197 "abc", 0, 0, (0, 0)
198 "test", 0, 0, (0, 0)
199/$/
200 "abc", 0, 3, (3, 3)
201 "a\nb\n", 0, 4, (4, 4)
202 "b\na\n", 0, 4, (4, 4)
203 "b\na", 0, 3, (3, 3)
204 "xxx", 0, 3, (3, 3)
205 "xxxx", 0, 4, (4, 4)
206/a.c/
207 "abc", 0, 0, (0, 3)
208 "axc", 0, 0, (0, 3)
209/a.*c/
210 "axyzc", 0, 0, (0, 5)
211 "axyzd", 0, -1, (4, 10)
212/a[bc]d/
213 "abd", 0, 0, (0, 3)
214 "abc", 0, -1, (-1, -1)
215 "axyzd", 0, -1, (-1, -1)
216/a[b-d]e/
217 "ace", 0, 0, (0, 3)
218 "abd", 0, -1, (-1, -1)
219/a[b-d]/
220 "aac", 0, 1, (1, 3)
221/a[-b]/
222 "a-", 0, 0, (0, 2)
223/a[b-]/
224 "a-", 0, 0, (0, 2)
225/a]/
226 "a]", 0, 0, (0, 2)
227/a[^bc]d/
228 "aed", 0, 0, (0, 3)
229 "abd", 0, -1, (-1, -1)
230/a[^-b]c/
231 "adc", 0, 0, (0, 3)
232 "a-c", 0, -1, (-1, -1)
233/\\ba\\b/
234 "a-", 0, 0, (0, 1)
235 "-a", 0, 1, (1, 2)
236 "-a-", 0, 1, (1, 2)
237/\\By\\b/
238 "xy", 0, 1, (1, 2)
239/\\by\\B/
240 "yz", 0, 0, (0, 1)
241/\\By\\B/
242 "xyz", 0, 1, (1, 2)
243/a\\Sb/
244 "a-b", 0, 0, (0, 3)
245 "a\tb a b a-b", 0, 8, (8, 11)
246 "a b", 0, -1, (-1, -1)
247/\\d/
248 "1", 0, 0, (0, 1)
249 "-", 0, -1, (-1, -1)
250 "_abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ\f\n\r\t\v~`!@#$%^&*()-+={[}]|\\:;'<,>./? \"", 0, -1, (-1, -1)
251 "ab1cd", 0, 2, (2, 3)
252 "ab2cd", 0, 2, (2, 3)
253 "ab3cd", 0, 2, (2, 3)
254 "ab4cd", 0, 2, (2, 3)
255 "ab5cd", 0, 2, (2, 3)
256 "ab6cd", 0, 2, (2, 3)
257 "ab7cd", 0, 2, (2, 3)
258 "ab8cd", 0, 2, (2, 3)
259 "ab9cd", 0, 2, (2, 3)
260 "ab0cd", 0, 2, (2, 3)
261 "\u01003", 0, 1, (1, 2)
262/\\D/
263 "-", 0, 0, (0, 1)
264 "1", 0, -1, (-1, -1)
265 "1234567890", 0, -1, (-1, -1)
266 "12_34", 0, 2, (2, 3)
267 "12a34", 0, 2, (2, 3)
268 "12b34", 0, 2, (2, 3)
269 "1X2", 0, 1, (1, 2)
270 "1\u01002", 0, 1, (1, 2)
271/[\\w]/
272 "a", 0, 0, (0, 1)
273 "-", 0, -1, (-1, -1)
274/[\\W]/
275 "-", 0, 0, (0, 1)
276 "a", 0, -1, (-1, -1)
277/a[\\S]b/
278 "a-b", 0, 0, (0, 3)
279 "a b", 0, -1, (-1, -1)
280/[\\d]/
281 "1", 0, 0, (0, 1)
282 "-", 0, -1, (-1, -1)
283/[\\D]/
284 "-", 0, 0, (0, 1)
285 "1", 0, -1, (-1, -1)
286/ab|cd/
287 "abc", 0, 0, (0, 2)
288 "abcd", 0, 0, (0, 2)
289/()ef/
290 "def", 0, 1, (1, 3, 1, 1)
291/a\\(b/
292 "a(b", 0, 0, (0, 3)
293/a\\(*b/
294 "ab", 0, 0, (0, 2)
295 "a((b", 0, 0, (0, 4)
296/a\\\\b/
297 "a\\b", 0, 0, (0, 3)
298 "a\b", 0, -1, (-1, -1)
299/((a))/
300 "abc", 0, 0, (0, 1, 0, 1, 0, 1)
301/(a)b(c)/
302 "abc", 0, 0, (0, 3, 0, 1, 2, 3)
303/a+b+c/
304 "aabbabc", 0, 4, (4, 7)
305/a{1,}b{1,}c/
306 "aabbabc", 0, 4, (4, 7)
307/a.+?c/
308 "abcabc", 0, 0, (0, 3)
309/(a+|b)*/
310 "ab", 0, 0, (0, 2, 1, 2)
311/(a+|b){0,}/
312 "ab", 0, 0, (0, 2, 1, 2)
313/(a+|b)+/
314 "ab", 0, 0, (0, 2, 1, 2)
315/(a+|b){1,}/
316 "ab", 0, 0, (0, 2, 1, 2)
317/(a+|b)?/
318 "ab", 0, 0, (0, 1, 0, 1)
319/(a+|b){0,1}/
320 "ab", 0, 0, (0, 1, 0, 1)
321/[^ab]*/
322 "cde", 0, 0, (0, 3)
323/([abc])*d/
324 "abbbcd", 0, 0, (0, 6, 4, 5)
325/([abc])*bcd/
326 "abcd", 0, 0, (0, 4, 0, 1)
327/a|b|c|d|e/
328 "e", 0, 0, (0, 1)
329/(a|b|c|d|e)f/
330 "ef", 0, 0, (0, 2, 0, 1)
331/abcd*efg/
332 "abcdefg", 0, 0, (0, 7)
333/ab*/
334 "xabyabbbz", 0, 1, (1, 3)
335 "xayabbbz", 0, 1, (1, 2)
336/(ab|cd)e/
337 "abcde", 0, 2, (2, 5, 2, 4)
338/[abhgefdc]ij/
339 "hij", 0, 0, (0, 3)
340/(abc|)ef/
341 "abcdef", 0, 4, (4, 6, 4, 4)
342/(a|b)c*d/
343 "abcd", 0, 1, (1, 4, 1, 2)
344/(ab|ab*)bc/
345 "abc", 0, 0, (0, 3, 0, 1)
346/a([bc]*)c*/
347 "abc", 0, 0, (0, 3, 1, 3)
348/a([bc]*)(c*d)/
349 "abcd", 0, 0, (0, 4, 1, 3, 3, 4)
350/a([bc]+)(c*d)/
351 "abcd", 0, 0, (0, 4, 1, 3, 3, 4)
352/a([bc]*)(c+d)/
353 "abcd", 0, 0, (0, 4, 1, 2, 2, 4)
354/a[bcd]*dcdcde/
355 "adcdcde", 0, 0, (0, 7)
356/(ab|a)b*c/
357 "abc", 0, 0, (0, 3, 0, 2)
358/((a)(b)c)(d)/
359 "abcd", 0, 0, (0, 4, 0, 3, 0, 1, 1, 2, 3, 4)
360/[a-zA-Z_][a-zA-Z0-9_]*/
361 "alpha", 0, 0, (0, 5)
362/^a(bc+|b[eh])g|.h$/
363 "abh", 0, 1, (1, 3, -1, -1)
364/(bc+d$|ef*g.|h?i(j|k))/
365 "effgz", 0, 0, (0, 5, 0, 5, -1, -1)
366 "ij", 0, 0, (0, 2, 0, 2, 1, 2)
367 "reffgz", 0, 1, (1, 6, 1, 6, -1, -1)
368 "effg", 0, -1, (3, 10, -1, -1, -1, -1)
369 "bcdd", 0, -1, (3, 10, -1, -1, -1, -1)
370 "effg", 0, -1, (3, -1, -1, -1, -1, -1)
371 "bcdd", 0, -1, (3, -1, -1, -1, -1, -1)
372/((((((((((a))))))))))/
373 "a", 0, 0, (0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1)
374 "a!", 0, 0, (0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1)
375/((((((((((a))))))))))\\10/
376 "aa", 0, 0, (0, 2, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1)
377/(((((((((a)))))))))/
378 "a", 0, 0, (0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1)
379/(.*)c(.*)/
380 "abcde", 0, 0, (0, 5, 0, 2, 3, 5)
381/abcd/
382 "abcd", 0, 0, (0, 4)
383/a(bc)d/
384 "abcd", 0, 0, (0, 4, 1, 3)
385/a[-]?c/
386 "ac", 0, 0, (0, 2)
387/(abc)\\1/
388 "abcabc", 0, 0, (0, 6, 0, 3)
389/([a-c]*)\\1/
390 "abcabc", 0, 0, (0, 6, 0, 3)
391/(a)|\\1/
392 "a", 0, 0, (0, 1, 0, 1)
393 "x", 0, 0, (0, 0, -1, -1)
394 "ab", 0, 0, (0, 1, 0, 1)
395/(([a-c])b*?\\2)*/
396 "ababbbcbc", 0, 0, (0, 5, 3, 5, 3, 4)
397/(([a-c])b*?\\2){3}/
398 "ababbbcbc", 0, 0, (0, 9, 6, 9, 6, 7)
399/ab*c/i
400 "ABC", 0, 0, (0, 3)
401/ab*bc/i
402 "ABC", 0, 0, (0, 3)
403 "ABBC", 0, 0, (0, 4)
404/ab*?bc/i
405 "ABBBBC", 0, 0, (0, 6)
406/ab{0,}?bc/i
407 "ABBBBC", 0, 0, (0, 6)
408/ab+?bc/i
409 "ABBC", 0, 0, (0, 4)
410/ab+bc/i
411 "ABBBBC", 0, 0, (0, 6)
412 "ABC", 0, -1, (0, 10)
413 "ABQ", 0, -1, (0, 10)
414 "ABC", 0, -1, (0, -1)
415 "ABQ", 0, -1, (0, -1)
416/ab{1,}?bc/i
417 "ABBBBC", 0, 0, (0, 6)
418/ab{1,3}?bc/i
419 "ABBBBC", 0, 0, (0, 6)
420/ab{3,4}?bc/i
421 "ABBBBC", 0, 0, (0, 6)
422/ab??bc/i
423 "ABBC", 0, 0, (0, 4)
424 "ABC", 0, 0, (0, 3)
425 "ABBBBC", 0, -1, (4, 10)
426/ab{0,1}?bc/i
427 "ABC", 0, 0, (0, 3)
428/ab??c/i
429 "ABC", 0, 0, (0, 3)
430/ab{0,1}?c/i
431 "ABC", 0, 0, (0, 3)
432/^abc$/i
433 "ABC", 0, 0, (0, 3)
434 "ABCC", 0, -1, (-1, -1)
435 "AABC", 0, -1, (-1, -1)
436 "ABBBBC", 0, -1, (-1, -1)
437/^abc/i
438 "ABCC", 0, 0, (0, 3)
439/abc$/i
440 "AABC", 0, 1, (1, 4)
441/^/i
442 "ABC", 0, 0, (0, 0)
443/$/i
444 "ABC", 0, 3, (3, 3)
445/a.c/i
446 "ABC", 0, 0, (0, 3)
447 "AXC", 0, 0, (0, 3)
448/a.*?c/i
449 "AXYZC", 0, 0, (0, 5)
450 "ABCABC", 0, 0, (0, 3)
451/a[bc]d/i
452 "ABD", 0, 0, (0, 3)
453 "ABC", 0, -1, (-1, -1)
454/a[b-d]e/i
455 "ACE", 0, 0, (0, 3)
456 "ABD", 0, -1, (-1, -1)
457 "ABC", 0, -1, (-1, -1)
458/a[b-d]/i
459 "AAC", 0, 1, (1, 3)
460/a[-b]/i
461 "A-", 0, 0, (0, 2)
462/a[b-]/i
463 "A-", 0, 0, (0, 2)
464/a]/i
465 "A]", 0, 0, (0, 2)
466/a[^bc]d/i
467 "AED", 0, 0, (0, 3)
468 "ABD", 0, -1, (-1, -1)
469/a[^-b]c/i
470 "ADC", 0, 0, (0, 3)
471 "A-C", 0, -1, (-1, -1)
472 "ABD", 0, -1, (-1, -1)
473/ab|cd/i
474 "ABC", 0, 0, (0, 2)
475 "ABCD", 0, 0, (0, 2)
476/()ef/i
477 "DEF", 0, 1, (1, 3, 1, 1)
478/a\\(b/i
479 "A(B", 0, 0, (0, 3)
480/a\\(*b/i
481 "AB", 0, 0, (0, 2)
482 "A((B", 0, 0, (0, 4)
483/a\\\\b/i
484 "A\\B", 0, 0, (0, 3)
485 "AB", 0, -1, (-1, -1)
486/((a))/i
487 "ABC", 0, 0, (0, 1, 0, 1, 0, 1)
488/(a)b(c)/i
489 "ABC", 0, 0, (0, 3, 0, 1, 2, 3)
490/a+b+c/i
491 "AABBABC", 0, 4, (4, 7)
492/a{1,}b{1,}c/i
493 "AABBABC", 0, 4, (4, 7)
494/a.+?c/i
495 "ABCABC", 0, 0, (0, 3)
496/a.{0,5}?c/i
497 "ABCABC", 0, 0, (0, 3)
498/(a+|b)*/i
499 "AB", 0, 0, (0, 2, 1, 2)
500/(a+|b){0,}/i
501 "AB", 0, 0, (0, 2, 1, 2)
502/(a+|b)+/i
503 "AB", 0, 0, (0, 2, 1, 2)
504/(a+|b){1,}/i
505 "AB", 0, 0, (0, 2, 1, 2)
506/(a+|b)?/i
507 "AB", 0, 0, (0, 1, 0, 1)
508/(a+|b){0,1}/i
509 "AB", 0, 0, (0, 1, 0, 1)
510/(a+|b){0,1}?/i
511 "AB", 0, 0, (0, 0, -1, -1)
512/[^ab]*/i
513 "CDE", 0, 0, (0, 3)
514/([abc])*d/i
515 "ABBBCD", 0, 0, (0, 6, 4, 5)
516/([abc])*bcd/i
517 "ABCD", 0, 0, (0, 4, 0, 1)
518/a|b|c|d|e/i
519 "E", 0, 0, (0, 1)
520/(a|b|c|d|e)f/i
521 "EF", 0, 0, (0, 2, 0, 1)
522/abcd*efg/i
523 "ABCDEFG", 0, 0, (0, 7)
524/ab*/i
525 "XABYABBBZ", 0, 1, (1, 3)
526 "XAYABBBZ", 0, 1, (1, 2)
527/(ab|cd)e/i
528 "ABCDE", 0, 2, (2, 5, 2, 4)
529/[abhgefdc]ij/i
530 "HIJ", 0, 0, (0, 3)
531/(abc|)ef/i
532 "ABCDEF", 0, 4, (4, 6, 4, 4)
533/(a|b)c*d/i
534 "ABCD", 0, 1, (1, 4, 1, 2)
535/(ab|ab*)bc/i
536 "ABC", 0, 0, (0, 3, 0, 1)
537/a([bc]*)c*/i
538 "ABC", 0, 0, (0, 3, 1, 3)
539/a([bc]*)(c*d)/i
540 "ABCD", 0, 0, (0, 4, 1, 3, 3, 4)
541/a([bc]+)(c*d)/i
542 "ABCD", 0, 0, (0, 4, 1, 3, 3, 4)
543/a([bc]*)(c+d)/i
544 "ABCD", 0, 0, (0, 4, 1, 2, 2, 4)
545/a[bcd]*dcdcde/i
546 "ADCDCDE", 0, 0, (0, 7)
547/(ab|a)b*c/i
548 "ABC", 0, 0, (0, 3, 0, 2)
549/((a)(b)c)(d)/i
550 "ABCD", 0, 0, (0, 4, 0, 3, 0, 1, 1, 2, 3, 4)
551/[a-zA-Z_][a-zA-Z0-9_]*/i
552 "ALPHA", 0, 0, (0, 5)
553/^a(bc+|b[eh])g|.h$/i
554 "ABH", 0, 1, (1, 3, -1, -1)
555/(bc+d$|ef*g.|h?i(j|k))/i
556 "EFFGZ", 0, 0, (0, 5, 0, 5, -1, -1)
557 "IJ", 0, 0, (0, 2, 0, 2, 1, 2)
558 "REFFGZ", 0, 1, (1, 6, 1, 6, -1, -1)
559 "EFFG", 0, -1, (3, 10, -1, -1, -1, -1)
560 "BCDD", 0, -1, (3, 10, -1, -1, -1, -1)
561 "ADCDCDE", 0, -1, (6, -1, -1, -1, -1, -1)
562 "EFFG", 0, -1, (3, -1, -1, -1, -1, -1)
563 "BCDD", 0, -1, (3, -1, -1, -1, -1, -1)
564/((((((((((a))))))))))/i
565 "A", 0, 0, (0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1)
566 "A!", 0, 0, (0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1)
567/((((((((((a))))))))))\\10/i
568 "AA", 0, 0, (0, 2, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1)
569/(((((((((a)))))))))/i
570 "A", 0, 0, (0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1)
571/(?:(?:(?:(?:(?:(?:(?:(?:(?:(a))))))))))/i
572 "A", 0, 0, (0, 1, 0, 1)
573/(?:(?:(?:(?:(?:(?:(?:(?:(?:(a|b|c))))))))))/i
574 "C", 0, 0, (0, 1, 0, 1)
575/(.*)c(.*)/i
576 "ABCDE", 0, 0, (0, 5, 0, 2, 3, 5)
577/abcd/i
578 "ABCD", 0, 0, (0, 4)
579/a(bc)d/i
580 "ABCD", 0, 0, (0, 4, 1, 3)
581/a[-]?c/i
582 "AC", 0, 0, (0, 2)
583/(abc)\\1/i
584 "ABCABC", 0, 0, (0, 6, 0, 3)
585 "abcabc", 0, 0, (0, 6, 0, 3)
586 "ABCabc", 0, 0, (0, 6, 0, 3)
587 "abcABC", 0, 0, (0, 6, 0, 3)
588/([a-c]*)\\1/i
589 "ABCABC", 0, 0, (0, 6, 0, 3)
590/a(?!b)./
591 "abad", 0, 2, (2, 4)
592/a(?=d)./
593 "abad", 0, 2, (2, 4)
594/a(?=c|d)./
595 "abad", 0, 2, (2, 4)
596/a(?:b|c|d)(.)/
597 "ace", 0, 0, (0, 3, 2, 3)
598/a(?:b|c|d)*(.)/
599 "ace", 0, 0, (0, 3, 2, 3)
600/a(?:b|c|d)+?(.)/
601 "ace", 0, 0, (0, 3, 2, 3)
602 "acdbcdbe", 0, 0, (0, 3, 2, 3)
603/a(?:b|c|d)+(.)/
604 "acdbcdbe", 0, 0, (0, 8, 7, 8)
605/a(?:b|c|d){2}(.)/
606 "acdbcdbe", 0, 0, (0, 4, 3, 4)
607/a(?:b|c|d){4,5}(.)/
608 "acdbcdbe", 0, 0, (0, 7, 6, 7)
609/a(?:b|c|d){4,5}?(.)/
610 "acdbcdbe", 0, 0, (0, 6, 5, 6)
611/((foo)|(bar))*/
612 "foobar", 0, 0, (0, 6, 3, 6, -1, -1, 3, 6)
613/a(?:b|c|d){6,7}(.)/
614 "acdbcdbe", 0, 0, (0, 8, 7, 8)
615/a(?:b|c|d){6,7}?(.)/
616 "acdbcdbe", 0, 0, (0, 8, 7, 8)
617/a(?:b|c|d){5,6}(.)/
618 "acdbcdbe", 0, 0, (0, 8, 7, 8)
619/a(?:b|c|d){5,6}?(.)/
620 "acdbcdbe", 0, 0, (0, 7, 6, 7)
621/a(?:b|c|d){5,7}(.)/
622 "acdbcdbe", 0, 0, (0, 8, 7, 8)
623/a(?:b|c|d){5,7}?(.)/
624 "acdbcdbe", 0, 0, (0, 7, 6, 7)
625/a(?:b|(c|e){1,2}?|d)+?(.)/
626 "ace", 0, 0, (0, 3, 1, 2, 2, 3)
627/^(.+)?B/
628 "AB", 0, 0, (0, 2, 0, 1)
629/^([^a-z])|(\\^)$/
630 ".", 0, 0, (0, 1, 0, 1, -1, -1)
631/^[<>]&/
632 "<&OUT", 0, 0, (0, 2)
633/((a{4})+)/
634 "aaaaaaaaa", 0, 0, (0, 8, 0, 8, 4, 8)
635/(((aa){2})+)/
636 "aaaaaaaaaa", 0, 0, (0, 8, 0, 8, 4, 8, 6, 8)
637/(((a{2}){2})+)/
638 "aaaaaaaaaa", 0, 0, (0, 8, 0, 8, 4, 8, 6, 8)
639/(?:(f)(o)(o)|(b)(a)(r))*/
640 "foobar", 0, 0, (0, 6, -1, -1, -1, -1, -1, -1, 3, 4, 4, 5, 5, 6)
641/(?:..)*a/
642 "aba", 0, 0, (0, 3)
643/(?:..)*?a/
644 "aba", 0, 0, (0, 1)
645/^(?:b|a(?=(.)))*\\1/
646 "abc", 0, 0, (0, 2, -1, -1)
647/^(){3,5}/
648 "abc", 0, 0, (0, 0, 0, 0)
649/^(a+)*ax/
650 "aax", 0, 0, (0, 3, 0, 1)
651/^((a|b)+)*ax/
652 "aax", 0, 0, (0, 3, 0, 1, 0, 1)
653/^((a|bc)+)*ax/
654 "aax", 0, 0, (0, 3, 0, 1, 0, 1)
655/(a|x)*ab/
656 "cab", 0, 1, (1, 3, -1, -1)
657/(a)*ab/
658 "cab", 0, 1, (1, 3, -1, -1)
659/(?:c|d)(?:)(?:a(?:)(?:b)(?:b(?:))(?:b(?:)(?:b)))/
660 "cabbbb", 0, 0, (0, 6)
661/(?:c|d)(?:)(?:aaaaaaaa(?:)(?:bbbbbbbb)(?:bbbbbbbb(?:))(?:bbbbbbbb(?:)(?:bbbbbbbb)))/
662 "caaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb", 0, 0, (0, 41)
663/(ab)\\d\\1/i
664 "Ab4ab", 0, 0, (0, 5, 0, 2)
665 "ab4Ab", 0, 0, (0, 5, 0, 2)
666/foo\\w*\\d{4}baz/
667 "foobar1234baz", 0, 0, (0, 13)
668/x(~~)*(?:(?:F)?)?/
669 "x~~", 0, 0, (0, 3, 1, 3)
670/(?=(a+?))(\\1ab)/
671 "aaab", 0, 1, (1, 4, 1, 2, 1, 4)
672/(\\w+:)+/
673 "one:", 0, 0, (0, 4, 0, 4)
674/([\\w:]+::)?(\\w+)$/
675 "abcd", 0, 0, (0, 4, -1, -1, 0, 4)
676 "xy:z:::abcd", 0, 0, (0, 11, 0, 7, 7, 11)
677 "abcd:", 0, -1, (6, 11, -1, -1, -1, -1)
678 "abcd:", 0, -1, (6, -1, -1, -1, -1, -1)
679/^[^bcd]*(c+)/
680 "aexycd", 0, 0, (0, 5, 4, 5)
681/(a*)b+/
682 "caab", 0, 1, (1, 4, 1, 3)
683/([[:]+)/
684 "a:[b]:", 0, 1, (1, 3, 1, 3)
685/([[=]+)/
686 "a=[b]=", 0, 1, (1, 3, 1, 3)
687/([[.]+)/
688 "a.[b].", 0, 1, (1, 3, 1, 3)
689/$/m
690 "a\nb\n", 0, 1, (1, 1)
691 "b\na\n", 0, 1, (1, 1)
692 "b\na", 0, 1, (1, 1)
693/a$/
694 "b\na", 0, 2, (2, 3)
695 "a\nb\n", 0, -1, (-1, -1)
696 "aaab", 0, -1, (-1, -1)
697/a$/m
698 "a\nb\n", 0, 0, (0, 1)
699 "b\na\n", 0, 2, (2, 3)
700 "b\na", 0, 2, (2, 3)
701/aa$/
702 "b\naa", 0, 2, (2, 4)
703 "aa\nb\n", 0, -1, (-1, -1)
704 "ac\nb\n", 0, -1, (-1, -1)
705 "b\nac\n", 0, -1, (-1, -1)
706 "b\nac", 0, -1, (-1, -1)
707 "ca\nb\n", 0, -1, (-1, -1)
708 "b\nca\n", 0, -1, (-1, -1)
709 "b\nca", 0, -1, (-1, -1)
710/aa$/m
711 "aa\nb\n", 0, 0, (0, 2)
712 "b\naa\n", 0, 2, (2, 4)
713 "b\naa", 0, 2, (2, 4)
714 "ac\nb\n", 0, -1, (-1, -1)
715 "b\nac\n", 0, -1, (-1, -1)
716 "b\nac", 0, -1, (-1, -1)
717 "ca\nb\n", 0, -1, (-1, -1)
718 "b\nca\n", 0, -1, (-1, -1)
719 "b\nca", 0, -1, (-1, -1)
720/ab$/
721 "b\nab", 0, 2, (2, 4)
722 "ab\nb\n", 0, -1, (-1, -1)
723 "ac\nb\n", 0, -1, (-1, -1)
724 "b\nac\n", 0, -1, (-1, -1)
725 "b\nac", 0, -1, (-1, -1)
726 "ca\nb\n", 0, -1, (-1, -1)
727 "b\nca\n", 0, -1, (-1, -1)
728 "b\nca", 0, -1, (-1, -1)
729/ab$/m
730 "ab\nb\n", 0, 0, (0, 2)
731 "b\nab\n", 0, 2, (2, 4)
732 "b\nab", 0, 2, (2, 4)
733 "ac\nb\n", 0, -1, (-1, -1)
734 "b\nac\n", 0, -1, (-1, -1)
735 "b\nac", 0, -1, (-1, -1)
736 "ca\nb\n", 0, -1, (-1, -1)
737 "b\nca\n", 0, -1, (-1, -1)
738 "b\nca", 0, -1, (-1, -1)
739/abb$/
740 "b\nabb", 0, 2, (2, 5)
741 "abb\nb\n", 0, -1, (-1, -1)
742 "ac\nb\n", 0, -1, (-1, -1)
743 "b\nac\n", 0, -1, (-1, -1)
744 "b\nac", 0, -1, (-1, -1)
745 "ca\nb\n", 0, -1, (-1, -1)
746 "b\nca\n", 0, -1, (-1, -1)
747 "b\nca", 0, -1, (-1, -1)
748/abb$/m
749 "abb\nb\n", 0, 0, (0, 3)
750 "b\nabb\n", 0, 2, (2, 5)
751 "b\nabb", 0, 2, (2, 5)
752 "ac\nb\n", 0, -1, (-1, -1)
753 "b\nac\n", 0, -1, (-1, -1)
754 "b\nac", 0, -1, (-1, -1)
755 "ca\nb\n", 0, -1, (-1, -1)
756 "b\nca\n", 0, -1, (-1, -1)
757 "b\nca", 0, -1, (-1, -1)
758/(^|x)(c)/
759 "ca", 0, 0, (0, 1, 0, 0, 0, 1)
760/foo.bart/
761 "foo.bart", 0, 0, (0, 8)
762/^d[x][x][x]/m
763 "abcd\ndxxx", 0, 5, (5, 9)
764/tt+$/
765 "xxxtt", 0, 3, (3, 5)
766/(\\d+\\.\\d+)/
767 "3.1415926", 0, 0, (0, 9, 0, 9)
768/\\.c(pp|xx|c)?$/i
769 "IO.c", 0, 2, (2, 4, -1, -1)
770 "Changes", 0, -1, (6, 11, -1, -1)
771/(\\.c(pp|xx|c)?$)/i
772 "IO.c", 0, 2, (2, 4, 2, 4, -1, -1)
773/(^|a)b/
774 "ab", 0, 0, (0, 2, 0, 1)
775/^([ab]*?)(b)?(c)$/
776 "abac", 0, 0, (0, 4, 0, 3, -1, -1, 3, 4)
777/^(?:.,){2}c/i
778 "a,b,c", 0, 0, (0, 5)
779/^(.,){2}c/i
780 "a,b,c", 0, 0, (0, 5, 2, 4)
781/^(?:[^,]*,){2}c/
782 "a,b,c", 0, 0, (0, 5)
783/^([^,]*,){2}c/
784 "a,b,c", 0, 0, (0, 5, 2, 4)
785/^([^,]*,){3}d/
786 "aaa,b,c,d", 0, 0, (0, 9, 6, 8)
787/^([^,]*,){3,}d/
788 "aaa,b,c,d", 0, 0, (0, 9, 6, 8)
789/^([^,]*,){0,3}d/
790 "aaa,b,c,d", 0, 0, (0, 9, 6, 8)
791/^([^,]{1,3},){3}d/i
792 "aaa,b,c,d", 0, 0, (0, 9, 6, 8)
793/^([^,]{1,3},){3,}d/
794 "aaa,b,c,d", 0, 0, (0, 9, 6, 8)
795/^([^,]{1,3},){0,3}d/
796 "aaa,b,c,d", 0, 0, (0, 9, 6, 8)
797/^([^,]{1,},){3}d/
798 "aaa,b,c,d", 0, 0, (0, 9, 6, 8)
799/^([^,]{1,},){3,}d/
800 "aaa,b,c,d", 0, 0, (0, 9, 6, 8)
801/^([^,]{1,},){0,3}d/
802 "aaa,b,c,d", 0, 0, (0, 9, 6, 8)
803/^([^,]{0,3},){3}d/i
804 "aaa,b,c,d", 0, 0, (0, 9, 6, 8)
805/^([^,]{0,3},){3,}d/
806 "aaa,b,c,d", 0, 0, (0, 9, 6, 8)
807/^([^,]{0,3},){0,3}d/
808 "aaa,b,c,d", 0, 0, (0, 9, 6, 8)
809/^(a(b)?)+$/
810 "aba", 0, 0, (0, 3, 2, 3, -1, -1)
811/^(aa(bb)?)+$/
812 "aabbaa", 0, 0, (0, 6, 4, 6, -1, -1)
813/^.{9}abc.*\\n/m
814 "123\nabcabcabcabc\n", 0, 4, (4, 17)
815/^(a)?a$/
816 "a", 0, 0, (0, 1, -1, -1)
817/^(a\\1?)(a\\1?)(a\\2?)(a\\3?)$/
818 "aaaaaa", 0, 0, (0, 6, 0, 1, 1, 3, 3, 4, 4, 6)
819 "a", 0, -1, (-1, -1, -1, -1, -1, -1, -1, -1, -1, -1)
820 "aa", 0, -1, (-1, -1, -1, -1, -1, -1, -1, -1, -1, -1)
821 "aaa", 0, -1, (-1, -1, -1, -1, -1, -1, -1, -1, -1, -1)
822 "aaaa", 0, 0, (0, 4, 0, 1, 1, 2, 2, 3, 3, 4)
823 "aaaaa", 0, 0, (0, 5, 0, 1, 1, 3, 3, 4, 4, 5)
824 "aaaaaaa", 0, 0, (0, 7, 0, 1, 1, 3, 3, 6, 6, 7)
825 "aaaaaaaa", 0, -1, (-1, -1, -1, -1, -1, -1, -1, -1, -1, -1)
826 "aaaaaaaaa", 0, -1, (-1, -1, -1, -1, -1, -1, -1, -1, -1, -1)
827 "aaaaaaaaaa", 0, 0, (0, 10, 0, 1, 1, 3, 3, 6, 6, 10)
828 "aaaaaaaaaaa", 0, -1, (-1, -1, -1, -1, -1, -1, -1, -1, -1, -1)
829 "aaaaaaaaaaaa", 0, -1, (-1, -1, -1, -1, -1, -1, -1, -1, -1, -1)
830 "aaaaaaaaaaaaa", 0, -1, (-1, -1, -1, -1, -1, -1, -1, -1, -1, -1)
831 "aaaaaaaaaaaaaa", 0, -1, (-1, -1, -1, -1, -1, -1, -1, -1, -1, -1)
832 "aaaaaaaaaaaaaaa", 0, -1, (-1, -1, -1, -1, -1, -1, -1, -1, -1, -1)
833 "aaaaaaaaaaaaaaaa", 0, -1, (-1, -1, -1, -1, -1, -1, -1, -1, -1, -1)
834/^(0+)?(?:x(1))?/
835 "x1", 0, 0, (0, 2, -1, -1, 1, 2)
836/^([0-9a-fA-F]+)(?:x([0-9a-fA-F]+)?)(?:x([0-9a-fA-F]+))?/
837 "012cxx0190", 0, 0, (0, 10, 0, 4, -1, -1, 6, 10)
838/^(b+?|a){1,2}c/
839 "bbbac", 0, 0, (0, 5, 3, 4)
840 "bbbbac", 0, 0, (0, 6, 4, 5)
841/((?:aaaa|bbbb)cccc)?/
842 "aaaacccc", 0, 0, (0, 8, 0, 8)
843 "bbbbcccc", 0, 0, (0, 8, 0, 8)
844/ab{4,5}bc/
845 "abbbbc", 0, -1, (0, 9)
846 "abq", 0, -1, (0, -1)
847 "abbbbc", 0, -1, (0, -1)
848/a[^]b]c/
849 "a]c", 0, -1, (-1, -1)
850/\\by\\b/
851 "xy", 0, -1, (-1, -1)
852 "yz", 0, -1, (-1, -1)
853 "xyz", 0, -1, (-1, -1)
854/\\Ba\\B/
855 "a-", 0, -1, (-1, -1)
856 "-a", 0, -1, (-1, -1)
857 "-a-", 0, -1, (-1, -1)
858/a\\sb/
859 "a-b", 0, -1, (-1, -1)
860 "a b", 0, 0, (0, 3)
861/a[\\s]b/
862 "a-b", 0, -1, (-1, -1)
863 "a b", 0, 0, (0, 3)
864/$b/
865 "b", 0, -1, (-1, -1)
866/^(ab|cd)e/
867 "abcde", 0, -1, (0, 10, -1, -1)
868/a[bcd]+dcdcde/
869 "adcdcde", 0, -1, (0, 10)
870 "abcde", 0, -1, (0, -1)
871 "adcdcde", 0, -1, (0, -1)
872/[k]/
873 "ab", 0, -1, (-1, -1)
874/((\\3|b)\\2(a)x)+/
875 "aaxabxbaxbbx", 0, 1, (1, 3, 1, 3, 1, 1, 1, 2)
876 "aaaxabaxbaaxbbax", 0, 2, (2, 4, 2, 4, 2, 2, 2, 3)
877/ab{1,}bc/i
878 "ABQ", 0, -1, (0, 10)
879/ab{4,5}?bc/i
880 "ABBBBC", 0, -1, (0, 10)
881 "ABQ", 0, -1, (0, -1)
882 "ABBBBC", 0, -1, (0, -1)
883/a.*c/i
884 "AXYZD", 0, -1, (4, 10)
885 "AABC", 0, 0, (0, 4)
886 "AXYZD", 0, -1, (4, -1)
887/a[^]b]c/i
888 "A]C", 0, -1, (-1, -1)
889/$b/i
890 "B", 0, -1, (-1, -1)
891 "A]C", 0, -1, (-1, -1)
892/^(ab|cd)e/i
893 "ABCDE", 0, -1, (0, 10, -1, -1)
894 "ABCDE", 0, -1, (0, -1, -1, -1)
895/a[bcd]+dcdcde/i
896 "ADCDCDE", 0, -1, (0, 10)
897/[k]/i
898 "AB", 0, -1, (-1, -1)
899/^(a\\1?){4}$/
900 "aaaaaaaaa", 0, -1, (-1, -1, -1, -1)
901 "aaaaaaaaaaa", 0, -1, (-1, -1, -1, -1)
902 "a", 0, -1, (-1, -1, -1, -1)
903 "aa", 0, -1, (-1, -1, -1, -1)
904 "aaa", 0, -1, (-1, -1, -1, -1)
905 "aaaa", 0, 0, (0, 4, 3, 4)
906 "aaaaa", 0, -1, (-1, -1, -1, -1)
907 "aaaaaaa", 0, -1, (-1, -1, -1, -1)
908 "aaaaaaaa", 0, -1, (-1, -1, -1, -1)
909 "aaaaaaaaaa", 0, -1, (-1, -1, -1, -1)
910 "aaaaaaaaaaaa", 0, -1, (-1, -1, -1, -1)
911 "aaaaaaaaaaaaa", 0, -1, (-1, -1, -1, -1)
912 "aaaaaaaaaaaaaa", 0, -1, (-1, -1, -1, -1)
913 "aaaaaaaaaaaaaaa", 0, -1, (-1, -1, -1, -1)
914 "aaaaaaaaaaaaaaaa", 0, -1, (-1, -1, -1, -1)
915 "AB", 0, -1, (-1, -1, -1, -1)
916/^(?:a?b?)*$/
917 "a--", 0, -1, (-1, -1)
918 "", 0, 0, (0, 0)
919 "a", 0, 0, (0, 1)
920 "ab", 0, 0, (0, 2)
921 "aaa", 0, 0, (0, 3)
922 "dbcb", 0, -1, (-1, -1)
923 "aa--", 0, -1, (-1, -1)
924/^b/
925 "a\nb\nc\n", 0, -1, (-1, -1)
926/()^b/
927 "a\nb\nc\n", 0, -1, (7, 10, -1, -1)
928 "a\nb\nc\n", 0, -1, (7, -1, -1, -1)
929/^(?=(a+?))\\1ab/
930 "aaab", 0, -1, (-1, -1, 0, 1)
931/(>a+)ab/
932 "aaab", 0, -1, (1, 11, -1, -1)
933/a\\Z/
934 "a\nb\n", 0, -1, (-1, -1)
935/a\\z/
936 "a\nb\n", 0, -1, (-1, -1)
937 "b\na\n", 0, -1, (-1, -1)
938 "az", 0, 0, (0, 2)
939/a\\z/m
940 "a\nb\n", 0, -1, (-1, -1)
941 "b\na\n", 0, -1, (-1, -1)
942/aa\\Z/
943 "aa\nb\n", 0, -1, (-1, -1)
944 "ac\nb\n", 0, -1, (-1, -1)
945 "b\nac\n", 0, -1, (-1, -1)
946 "b\nac", 0, -1, (-1, -1)
947 "ca\nb\n", 0, -1, (-1, -1)
948 "b\nca\n", 0, -1, (-1, -1)
949 "b\nca", 0, -1, (-1, -1)
950/aa\\z/
951 "aa\nb\n", 0, -1, (-1, -1)
952 "b\naa\n", 0, -1, (-1, -1)
953 "ac\nb\n", 0, -1, (-1, -1)
954 "b\nac\n", 0, -1, (-1, -1)
955 "b\nac", 0, -1, (-1, -1)
956 "ca\nb\n", 0, -1, (-1, -1)
957 "b\nca\n", 0, -1, (-1, -1)
958 "b\nca", 0, -1, (-1, -1)
959/aa\\z/m
960 "aa\nb\n", 0, -1, (-1, -1)
961 "b\naa\n", 0, -1, (-1, -1)
962 "ac\nb\n", 0, -1, (-1, -1)
963 "b\nac\n", 0, -1, (-1, -1)
964 "b\nac", 0, -1, (-1, -1)
965 "ca\nb\n", 0, -1, (-1, -1)
966 "b\nca\n", 0, -1, (-1, -1)
967 "b\nca", 0, -1, (-1, -1)
968/aa\\Z/m
969 "ac\nb\n", 0, -1, (-1, -1)
970 "b\nac\n", 0, -1, (-1, -1)
971 "b\nac", 0, -1, (-1, -1)
972 "ca\nb\n", 0, -1, (-1, -1)
973 "b\nca\n", 0, -1, (-1, -1)
974 "b\nca", 0, -1, (-1, -1)
975/ab\\Z/
976 "ab\nb\n", 0, -1, (-1, -1)
977 "ac\nb\n", 0, -1, (-1, -1)
978 "b\nac\n", 0, -1, (-1, -1)
979 "b\nac", 0, -1, (-1, -1)
980 "ca\nb\n", 0, -1, (-1, -1)
981 "b\nca\n", 0, -1, (-1, -1)
982 "b\nca", 0, -1, (-1, -1)
983/ab\\z/
984 "ab\nb\n", 0, -1, (-1, -1)
985 "b\nab\n", 0, -1, (-1, -1)
986 "ac\nb\n", 0, -1, (-1, -1)
987 "b\nac\n", 0, -1, (-1, -1)
988 "b\nac", 0, -1, (-1, -1)
989 "ca\nb\n", 0, -1, (-1, -1)
990 "b\nca\n", 0, -1, (-1, -1)
991 "b\nca", 0, -1, (-1, -1)
992/ab\\z/m
993 "ab\nb\n", 0, -1, (-1, -1)
994 "b\nab\n", 0, -1, (-1, -1)
995 "ac\nb\n", 0, -1, (-1, -1)
996 "b\nac\n", 0, -1, (-1, -1)
997 "b\nac", 0, -1, (-1, -1)
998 "ca\nb\n", 0, -1, (-1, -1)
999 "b\nca\n", 0, -1, (-1, -1)
1000 "b\nca", 0, -1, (-1, -1)
1001/ab\\Z/m
1002 "ac\nb\n", 0, -1, (-1, -1)
1003 "b\nac\n", 0, -1, (-1, -1)
1004 "b\nac", 0, -1, (-1, -1)
1005 "ca\nb\n", 0, -1, (-1, -1)
1006 "b\nca\n", 0, -1, (-1, -1)
1007 "b\nca", 0, -1, (-1, -1)
1008/abb\\Z/
1009 "abb\nb\n", 0, -1, (-1, -1)
1010 "ac\nb\n", 0, -1, (-1, -1)
1011 "b\nac\n", 0, -1, (-1, -1)
1012 "b\nac", 0, -1, (-1, -1)
1013 "ca\nb\n", 0, -1, (-1, -1)
1014 "b\nca\n", 0, -1, (-1, -1)
1015 "b\nca", 0, -1, (-1, -1)
1016/abb\\z/
1017 "abb\nb\n", 0, -1, (-1, -1)
1018 "b\nabb\n", 0, -1, (-1, -1)
1019 "ac\nb\n", 0, -1, (-1, -1)
1020 "b\nac\n", 0, -1, (-1, -1)
1021 "b\nac", 0, -1, (-1, -1)
1022 "ca\nb\n", 0, -1, (-1, -1)
1023 "b\nca\n", 0, -1, (-1, -1)
1024 "b\nca", 0, -1, (-1, -1)
1025/abb\\z/m
1026 "abb\nb\n", 0, -1, (-1, -1)
1027 "b\nabb\n", 0, -1, (-1, -1)
1028 "ac\nb\n", 0, -1, (-1, -1)
1029 "b\nac\n", 0, -1, (-1, -1)
1030 "b\nac", 0, -1, (-1, -1)
1031 "ca\nb\n", 0, -1, (-1, -1)
1032 "b\nca\n", 0, -1, (-1, -1)
1033 "b\nca", 0, -1, (-1, -1)
1034/abb\\Z/m
1035 "ac\nb\n", 0, -1, (-1, -1)
1036 "b\nac\n", 0, -1, (-1, -1)
1037 "b\nac", 0, -1, (-1, -1)
1038 "ca\nb\n", 0, -1, (-1, -1)
1039 "b\nca\n", 0, -1, (-1, -1)
1040 "b\nca", 0, -1, (-1, -1)
1041