blob: a86ef9a5009f3dd7a047ae78bd805e89e0c74154 [file] [log] [blame]
Janis Danisevskis53e448c2016-03-31 13:35:25 +01001# There are two sorts of patterns in this test. A number of them are
2# representative patterns whose lengths and offsets are checked. This is just a
3# doublecheck test to ensure the sizes don't go horribly wrong when something
4# is changed. The operation of these patterns is checked in other tests.
5#
6# This file also contains tests whose output varies with code unit size and/or
7# link size. Unicode support is required for these tests. There are separate
8# output files for each code unit size and link size.
Nick Kralevichf73ff172014-09-27 12:41:49 -07009
Janis Danisevskis53e448c2016-03-31 13:35:25 +010010#pattern fullbincode,memory
11
12/((?i)b)/
Nick Kralevichf73ff172014-09-27 12:41:49 -070013Memory allocation (code space): 48
14------------------------------------------------------------------
15 0 9 Bra
16 2 5 CBra 1
17 5 /i b
18 7 5 Ket
19 9 9 Ket
20 11 End
21------------------------------------------------------------------
22
Janis Danisevskis53e448c2016-03-31 13:35:25 +010023/(?s)(.*X|^B)/
Nick Kralevichf73ff172014-09-27 12:41:49 -070024Memory allocation (code space): 76
25------------------------------------------------------------------
26 0 16 Bra
27 2 7 CBra 1
28 5 AllAny*
29 7 X
30 9 5 Alt
31 11 ^
32 12 B
33 14 12 Ket
34 16 16 Ket
35 18 End
36------------------------------------------------------------------
37
Janis Danisevskis53e448c2016-03-31 13:35:25 +010038/(?s:.*X|^B)/
Nick Kralevichf73ff172014-09-27 12:41:49 -070039Memory allocation (code space): 72
40------------------------------------------------------------------
41 0 15 Bra
42 2 6 Bra
43 4 AllAny*
44 6 X
45 8 5 Alt
46 10 ^
47 11 B
48 13 11 Ket
49 15 15 Ket
50 17 End
51------------------------------------------------------------------
52
Janis Danisevskis53e448c2016-03-31 13:35:25 +010053/^[[:alnum:]]/
Nick Kralevichf73ff172014-09-27 12:41:49 -070054Memory allocation (code space): 60
55------------------------------------------------------------------
56 0 12 Bra
57 2 ^
58 3 [0-9A-Za-z]
59 12 12 Ket
60 14 End
61------------------------------------------------------------------
62
Janis Danisevskis53e448c2016-03-31 13:35:25 +010063/#/Ix
Nick Kralevichf73ff172014-09-27 12:41:49 -070064Memory allocation (code space): 20
65------------------------------------------------------------------
66 0 2 Bra
67 2 2 Ket
68 4 End
69------------------------------------------------------------------
Elliott Hughes0c26e192019-08-07 12:24:46 -070070Capture group count = 0
Nick Kralevichf73ff172014-09-27 12:41:49 -070071May match empty string
72Options: extended
Janis Danisevskis53e448c2016-03-31 13:35:25 +010073Subject length lower bound = 0
Nick Kralevichf73ff172014-09-27 12:41:49 -070074
Janis Danisevskis53e448c2016-03-31 13:35:25 +010075/a#/Ix
Nick Kralevichf73ff172014-09-27 12:41:49 -070076Memory allocation (code space): 28
77------------------------------------------------------------------
78 0 4 Bra
79 2 a
80 4 4 Ket
81 6 End
82------------------------------------------------------------------
Elliott Hughes0c26e192019-08-07 12:24:46 -070083Capture group count = 0
Nick Kralevichf73ff172014-09-27 12:41:49 -070084Options: extended
Janis Danisevskis53e448c2016-03-31 13:35:25 +010085First code unit = 'a'
86Subject length lower bound = 1
Nick Kralevichf73ff172014-09-27 12:41:49 -070087
Janis Danisevskis53e448c2016-03-31 13:35:25 +010088/x?+/
Nick Kralevichf73ff172014-09-27 12:41:49 -070089Memory allocation (code space): 28
90------------------------------------------------------------------
91 0 4 Bra
92 2 x?+
93 4 4 Ket
94 6 End
95------------------------------------------------------------------
96
Janis Danisevskis53e448c2016-03-31 13:35:25 +010097/x++/
Nick Kralevichf73ff172014-09-27 12:41:49 -070098Memory allocation (code space): 28
99------------------------------------------------------------------
100 0 4 Bra
101 2 x++
102 4 4 Ket
103 6 End
104------------------------------------------------------------------
105
Janis Danisevskis53e448c2016-03-31 13:35:25 +0100106/x{1,3}+/
Nick Kralevichf73ff172014-09-27 12:41:49 -0700107Memory allocation (code space): 40
108------------------------------------------------------------------
109 0 7 Bra
110 2 x
111 4 x{0,2}+
112 7 7 Ket
113 9 End
114------------------------------------------------------------------
115
Janis Danisevskis53e448c2016-03-31 13:35:25 +0100116/(x)*+/
Nick Kralevichf73ff172014-09-27 12:41:49 -0700117Memory allocation (code space): 52
118------------------------------------------------------------------
119 0 10 Bra
120 2 Braposzero
121 3 5 CBraPos 1
122 6 x
123 8 5 KetRpos
124 10 10 Ket
125 12 End
126------------------------------------------------------------------
127
Janis Danisevskis53e448c2016-03-31 13:35:25 +0100128/^((a+)(?U)([ab]+)(?-U)([bc]+)(\w*))/
Nick Kralevichf73ff172014-09-27 12:41:49 -0700129Memory allocation (code space): 220
130------------------------------------------------------------------
131 0 52 Bra
132 2 ^
133 3 47 CBra 1
134 6 5 CBra 2
135 9 a+
136 11 5 Ket
137 13 13 CBra 3
138 16 [ab]+?
139 26 13 Ket
140 28 13 CBra 4
141 31 [bc]+
142 41 13 Ket
143 43 5 CBra 5
144 46 \w*+
145 48 5 Ket
146 50 47 Ket
147 52 52 Ket
148 54 End
149------------------------------------------------------------------
150
Janis Danisevskis53e448c2016-03-31 13:35:25 +0100151"8J\$WE\<\.rX\+ix\[d1b\!H\#\?vV0vrK\:ZH1\=2M\>iV\;\?aPhFB\<\*vW\@QW\@sO9\}cfZA\-i\'w\%hKd6gt1UJP\,15_\#QY\$M\^Mss_U\/\]\&LK9\[5vQub\^w\[KDD\<EjmhUZ\?\.akp2dF\>qmj\;2\}YWFdYx\.Ap\]hjCPTP\(n28k\+3\;o\&WXqs\/gOXdr\$\:r\'do0\;b4c\(f_Gr\=\"\\4\)\[01T7ajQJvL\$W\~mL_sS\/4h\:x\*\[ZN\=KLs\&L5zX\/\/\>it\,o\:aU\(\;Z\>pW\&T7oP\'2K\^E\:x9\'c\[\%z\-\,64JQ5AeH_G\#KijUKghQw\^\\vea3a\?kka_G\$8\#\`\*kynsxzBLru\'\]k_\[7FrVx\}\^\=\$blx\>s\-N\%j\;D\*aZDnsw\:YKZ\%Q\.Kne9\#hP\?\+b3\(SOvL\,\^\;\&u5\@\?5C5Bhb\=m\-vEh_L15Jl\]U\)0RP6\{q\%L\^_z5E\'Dw6X\b"
Nick Kralevichf73ff172014-09-27 12:41:49 -0700152Memory allocation (code space): 3296
153------------------------------------------------------------------
154 0 821 Bra
155 2 8J$WE<.rX+ix[d1b!H#?vV0vrK:ZH1=2M>iV;?aPhFB<*vW@QW@sO9}cfZA-i'w%hKd6gt1UJP,15_#QY$M^Mss_U/]&LK9[5vQub^w[KDD<EjmhUZ?.akp2dF>qmj;2}YWFdYx.Ap]hjCPTP(n28k+3;o&WXqs/gOXdr$:r'do0;b4c(f_Gr="\4)[01T7ajQJvL$W~mL_sS/4h:x*[ZN=KLs&L5zX//>it,o:aU(;Z>pW&T7oP'2K^E:x9'c[%z-,64JQ5AeH_G#KijUKghQw^\vea3a?kka_G$8#`*kynsxzBLru']k_[7FrVx}^=$blx>s-N%j;D*aZDnsw:YKZ%Q.Kne9#hP?+b3(SOvL,^;&u5@?5C5Bhb=m-vEh_L15Jl]U)0RP6{q%L^_z5E'Dw6X
156820 \b
157821 821 Ket
158823 End
159------------------------------------------------------------------
160
Janis Danisevskis53e448c2016-03-31 13:35:25 +0100161"\$\<\.X\+ix\[d1b\!H\#\?vV0vrK\:ZH1\=2M\>iV\;\?aPhFB\<\*vW\@QW\@sO9\}cfZA\-i\'w\%hKd6gt1UJP\,15_\#QY\$M\^Mss_U\/\]\&LK9\[5vQub\^w\[KDD\<EjmhUZ\?\.akp2dF\>qmj\;2\}YWFdYx\.Ap\]hjCPTP\(n28k\+3\;o\&WXqs\/gOXdr\$\:r\'do0\;b4c\(f_Gr\=\"\\4\)\[01T7ajQJvL\$W\~mL_sS\/4h\:x\*\[ZN\=KLs\&L5zX\/\/\>it\,o\:aU\(\;Z\>pW\&T7oP\'2K\^E\:x9\'c\[\%z\-\,64JQ5AeH_G\#KijUKghQw\^\\vea3a\?kka_G\$8\#\`\*kynsxzBLru\'\]k_\[7FrVx\}\^\=\$blx\>s\-N\%j\;D\*aZDnsw\:YKZ\%Q\.Kne9\#hP\?\+b3\(SOvL\,\^\;\&u5\@\?5C5Bhb\=m\-vEh_L15Jl\]U\)0RP6\{q\%L\^_z5E\'Dw6X\b"
Nick Kralevichf73ff172014-09-27 12:41:49 -0700162Memory allocation (code space): 3256
163------------------------------------------------------------------
164 0 811 Bra
165 2 $<.X+ix[d1b!H#?vV0vrK:ZH1=2M>iV;?aPhFB<*vW@QW@sO9}cfZA-i'w%hKd6gt1UJP,15_#QY$M^Mss_U/]&LK9[5vQub^w[KDD<EjmhUZ?.akp2dF>qmj;2}YWFdYx.Ap]hjCPTP(n28k+3;o&WXqs/gOXdr$:r'do0;b4c(f_Gr="\4)[01T7ajQJvL$W~mL_sS/4h:x*[ZN=KLs&L5zX//>it,o:aU(;Z>pW&T7oP'2K^E:x9'c[%z-,64JQ5AeH_G#KijUKghQw^\vea3a?kka_G$8#`*kynsxzBLru']k_[7FrVx}^=$blx>s-N%j;D*aZDnsw:YKZ%Q.Kne9#hP?+b3(SOvL,^;&u5@?5C5Bhb=m-vEh_L15Jl]U)0RP6{q%L^_z5E'Dw6X
166810 \b
167811 811 Ket
168813 End
169------------------------------------------------------------------
170
Janis Danisevskis53e448c2016-03-31 13:35:25 +0100171/(a(?1)b)/
Nick Kralevichf73ff172014-09-27 12:41:49 -0700172Memory allocation (code space): 64
173------------------------------------------------------------------
174 0 13 Bra
175 2 9 CBra 1
176 5 a
177 7 2 Recurse
178 9 b
179 11 9 Ket
180 13 13 Ket
181 15 End
182------------------------------------------------------------------
183
Janis Danisevskis53e448c2016-03-31 13:35:25 +0100184/(a(?1)+b)/
Nick Kralevichf73ff172014-09-27 12:41:49 -0700185Memory allocation (code space): 80
186------------------------------------------------------------------
187 0 17 Bra
188 2 13 CBra 1
189 5 a
Elliott Hughes9bc971b2018-07-27 13:23:14 -0700190 7 4 SBra
Nick Kralevichf73ff172014-09-27 12:41:49 -0700191 9 2 Recurse
192 11 4 KetRmax
193 13 b
194 15 13 Ket
195 17 17 Ket
196 19 End
197------------------------------------------------------------------
198
Janis Danisevskis53e448c2016-03-31 13:35:25 +0100199/a(?P<name1>b|c)d(?P<longername2>e)/
200Memory allocation (code space): 108
Nick Kralevichf73ff172014-09-27 12:41:49 -0700201------------------------------------------------------------------
202 0 24 Bra
203 2 a
204 4 5 CBra 1
205 7 b
206 9 4 Alt
207 11 c
208 13 9 Ket
209 15 d
210 17 5 CBra 2
211 20 e
212 22 5 Ket
213 24 24 Ket
214 26 End
215------------------------------------------------------------------
216
Janis Danisevskis53e448c2016-03-31 13:35:25 +0100217/(?:a(?P<c>c(?P<d>d)))(?P<a>a)/
218Memory allocation (code space): 128
Nick Kralevichf73ff172014-09-27 12:41:49 -0700219------------------------------------------------------------------
220 0 29 Bra
221 2 18 Bra
222 4 a
223 6 12 CBra 1
224 9 c
225 11 5 CBra 2
226 14 d
227 16 5 Ket
228 18 12 Ket
229 20 18 Ket
230 22 5 CBra 3
231 25 a
232 27 5 Ket
233 29 29 Ket
234 31 End
235------------------------------------------------------------------
236
Janis Danisevskis53e448c2016-03-31 13:35:25 +0100237/(?P<a>a)...(?P=a)bbb(?P>a)d/
238Memory allocation (code space): 108
Nick Kralevichf73ff172014-09-27 12:41:49 -0700239------------------------------------------------------------------
240 0 24 Bra
241 2 5 CBra 1
242 5 a
243 7 5 Ket
244 9 Any
245 10 Any
246 11 Any
247 12 \1
248 14 bbb
249 20 2 Recurse
250 22 d
251 24 24 Ket
252 26 End
253------------------------------------------------------------------
254
Janis Danisevskis53e448c2016-03-31 13:35:25 +0100255/abc(?C255)de(?C)f/
Nick Kralevichf73ff172014-09-27 12:41:49 -0700256Memory allocation (code space): 100
257------------------------------------------------------------------
258 0 22 Bra
259 2 abc
260 8 Callout 255 10 1
261 12 de
262 16 Callout 0 16 1
263 20 f
264 22 22 Ket
265 24 End
266------------------------------------------------------------------
267
Janis Danisevskis53e448c2016-03-31 13:35:25 +0100268/abcde/auto_callout
Nick Kralevichf73ff172014-09-27 12:41:49 -0700269Memory allocation (code space): 156
270------------------------------------------------------------------
271 0 36 Bra
272 2 Callout 255 0 1
273 6 a
274 8 Callout 255 1 1
275 12 b
276 14 Callout 255 2 1
277 18 c
278 20 Callout 255 3 1
279 24 d
280 26 Callout 255 4 1
281 30 e
282 32 Callout 255 5 0
283 36 36 Ket
284 38 End
285------------------------------------------------------------------
286
Janis Danisevskis53e448c2016-03-31 13:35:25 +0100287/\x{100}/utf
Nick Kralevichf73ff172014-09-27 12:41:49 -0700288Memory allocation (code space): 28
289------------------------------------------------------------------
290 0 4 Bra
291 2 \x{100}
292 4 4 Ket
293 6 End
294------------------------------------------------------------------
295
Janis Danisevskis53e448c2016-03-31 13:35:25 +0100296/\x{1000}/utf
Nick Kralevichf73ff172014-09-27 12:41:49 -0700297Memory allocation (code space): 28
298------------------------------------------------------------------
299 0 4 Bra
300 2 \x{1000}
301 4 4 Ket
302 6 End
303------------------------------------------------------------------
304
Janis Danisevskis53e448c2016-03-31 13:35:25 +0100305/\x{10000}/utf
Nick Kralevichf73ff172014-09-27 12:41:49 -0700306Memory allocation (code space): 28
307------------------------------------------------------------------
308 0 4 Bra
309 2 \x{10000}
310 4 4 Ket
311 6 End
312------------------------------------------------------------------
313
Janis Danisevskis53e448c2016-03-31 13:35:25 +0100314/\x{100000}/utf
Nick Kralevichf73ff172014-09-27 12:41:49 -0700315Memory allocation (code space): 28
316------------------------------------------------------------------
317 0 4 Bra
318 2 \x{100000}
319 4 4 Ket
320 6 End
321------------------------------------------------------------------
322
Janis Danisevskis53e448c2016-03-31 13:35:25 +0100323/\x{10ffff}/utf
Nick Kralevichf73ff172014-09-27 12:41:49 -0700324Memory allocation (code space): 28
325------------------------------------------------------------------
326 0 4 Bra
327 2 \x{10ffff}
328 4 4 Ket
329 6 End
330------------------------------------------------------------------
331
Janis Danisevskis53e448c2016-03-31 13:35:25 +0100332/\x{110000}/utf
333Failed: error 134 at offset 9: character code point value in \x{} or \o{} is too large
Nick Kralevichf73ff172014-09-27 12:41:49 -0700334
Janis Danisevskis53e448c2016-03-31 13:35:25 +0100335/[\x{ff}]/utf
Nick Kralevichf73ff172014-09-27 12:41:49 -0700336Memory allocation (code space): 28
337------------------------------------------------------------------
338 0 4 Bra
339 2 \x{ff}
340 4 4 Ket
341 6 End
342------------------------------------------------------------------
343
Janis Danisevskis53e448c2016-03-31 13:35:25 +0100344/[\x{100}]/utf
Nick Kralevichf73ff172014-09-27 12:41:49 -0700345Memory allocation (code space): 28
346------------------------------------------------------------------
347 0 4 Bra
348 2 \x{100}
349 4 4 Ket
350 6 End
351------------------------------------------------------------------
352
Janis Danisevskis53e448c2016-03-31 13:35:25 +0100353/\x80/utf
Nick Kralevichf73ff172014-09-27 12:41:49 -0700354Memory allocation (code space): 28
355------------------------------------------------------------------
356 0 4 Bra
Janis Danisevskis53e448c2016-03-31 13:35:25 +0100357 2 \x{80}
Nick Kralevichf73ff172014-09-27 12:41:49 -0700358 4 4 Ket
359 6 End
360------------------------------------------------------------------
361
Janis Danisevskis53e448c2016-03-31 13:35:25 +0100362/\xff/utf
Nick Kralevichf73ff172014-09-27 12:41:49 -0700363Memory allocation (code space): 28
364------------------------------------------------------------------
365 0 4 Bra
366 2 \x{ff}
367 4 4 Ket
368 6 End
369------------------------------------------------------------------
370
Janis Danisevskis53e448c2016-03-31 13:35:25 +0100371/\x{0041}\x{2262}\x{0391}\x{002e}/I,utf
Nick Kralevichf73ff172014-09-27 12:41:49 -0700372Memory allocation (code space): 52
373------------------------------------------------------------------
374 0 10 Bra
375 2 A\x{2262}\x{391}.
376 10 10 Ket
377 12 End
378------------------------------------------------------------------
Elliott Hughes0c26e192019-08-07 12:24:46 -0700379Capture group count = 0
Nick Kralevichf73ff172014-09-27 12:41:49 -0700380Options: utf
Janis Danisevskis53e448c2016-03-31 13:35:25 +0100381First code unit = 'A'
382Last code unit = '.'
383Subject length lower bound = 4
384
385/\x{D55c}\x{ad6d}\x{C5B4}/I,utf
Nick Kralevichf73ff172014-09-27 12:41:49 -0700386Memory allocation (code space): 44
387------------------------------------------------------------------
388 0 8 Bra
389 2 \x{d55c}\x{ad6d}\x{c5b4}
390 8 8 Ket
391 10 End
392------------------------------------------------------------------
Elliott Hughes0c26e192019-08-07 12:24:46 -0700393Capture group count = 0
Nick Kralevichf73ff172014-09-27 12:41:49 -0700394Options: utf
Janis Danisevskis53e448c2016-03-31 13:35:25 +0100395First code unit = \x{d55c}
396Last code unit = \x{c5b4}
397Subject length lower bound = 3
Nick Kralevichf73ff172014-09-27 12:41:49 -0700398
Janis Danisevskis53e448c2016-03-31 13:35:25 +0100399/\x{65e5}\x{672c}\x{8a9e}/I,utf
Nick Kralevichf73ff172014-09-27 12:41:49 -0700400Memory allocation (code space): 44
401------------------------------------------------------------------
402 0 8 Bra
403 2 \x{65e5}\x{672c}\x{8a9e}
404 8 8 Ket
405 10 End
406------------------------------------------------------------------
Elliott Hughes0c26e192019-08-07 12:24:46 -0700407Capture group count = 0
Nick Kralevichf73ff172014-09-27 12:41:49 -0700408Options: utf
Janis Danisevskis53e448c2016-03-31 13:35:25 +0100409First code unit = \x{65e5}
410Last code unit = \x{8a9e}
411Subject length lower bound = 3
Nick Kralevichf73ff172014-09-27 12:41:49 -0700412
Janis Danisevskis53e448c2016-03-31 13:35:25 +0100413/[\x{100}]/utf
Nick Kralevichf73ff172014-09-27 12:41:49 -0700414Memory allocation (code space): 28
415------------------------------------------------------------------
416 0 4 Bra
417 2 \x{100}
418 4 4 Ket
419 6 End
420------------------------------------------------------------------
421
Janis Danisevskis53e448c2016-03-31 13:35:25 +0100422/[Z\x{100}]/utf
Nick Kralevichf73ff172014-09-27 12:41:49 -0700423Memory allocation (code space): 76
424------------------------------------------------------------------
425 0 16 Bra
426 2 [Z\x{100}]
427 16 16 Ket
428 18 End
429------------------------------------------------------------------
430
Janis Danisevskis53e448c2016-03-31 13:35:25 +0100431/^[\x{100}\E-\Q\E\x{150}]/utf
Nick Kralevichf73ff172014-09-27 12:41:49 -0700432Memory allocation (code space): 52
433------------------------------------------------------------------
434 0 10 Bra
435 2 ^
436 3 [\x{100}-\x{150}]
437 10 10 Ket
438 12 End
439------------------------------------------------------------------
440
Janis Danisevskis53e448c2016-03-31 13:35:25 +0100441/^[\QĀ\E-\QŐ\E]/utf
Nick Kralevichf73ff172014-09-27 12:41:49 -0700442Memory allocation (code space): 52
443------------------------------------------------------------------
444 0 10 Bra
445 2 ^
446 3 [\x{100}-\x{150}]
447 10 10 Ket
448 12 End
449------------------------------------------------------------------
450
Janis Danisevskis53e448c2016-03-31 13:35:25 +0100451/^[\QĀ\E-\QŐ\E/utf
452Failed: error 106 at offset 13: missing terminating ] for character class
Nick Kralevichf73ff172014-09-27 12:41:49 -0700453
Janis Danisevskis53e448c2016-03-31 13:35:25 +0100454/[\p{L}]/
Nick Kralevichf73ff172014-09-27 12:41:49 -0700455Memory allocation (code space): 48
456------------------------------------------------------------------
457 0 9 Bra
458 2 [\p{L}]
459 9 9 Ket
460 11 End
461------------------------------------------------------------------
462
Janis Danisevskis53e448c2016-03-31 13:35:25 +0100463/[\p{^L}]/
Nick Kralevichf73ff172014-09-27 12:41:49 -0700464Memory allocation (code space): 48
465------------------------------------------------------------------
466 0 9 Bra
467 2 [\P{L}]
468 9 9 Ket
469 11 End
470------------------------------------------------------------------
471
Janis Danisevskis53e448c2016-03-31 13:35:25 +0100472/[\P{L}]/
Nick Kralevichf73ff172014-09-27 12:41:49 -0700473Memory allocation (code space): 48
474------------------------------------------------------------------
475 0 9 Bra
476 2 [\P{L}]
477 9 9 Ket
478 11 End
479------------------------------------------------------------------
480
Janis Danisevskis53e448c2016-03-31 13:35:25 +0100481/[\P{^L}]/
Nick Kralevichf73ff172014-09-27 12:41:49 -0700482Memory allocation (code space): 48
483------------------------------------------------------------------
484 0 9 Bra
485 2 [\p{L}]
486 9 9 Ket
487 11 End
488------------------------------------------------------------------
489
Janis Danisevskis53e448c2016-03-31 13:35:25 +0100490/[abc\p{L}\x{0660}]/utf
Nick Kralevichf73ff172014-09-27 12:41:49 -0700491Memory allocation (code space): 88
492------------------------------------------------------------------
493 0 19 Bra
494 2 [a-c\p{L}\x{660}]
495 19 19 Ket
496 21 End
497------------------------------------------------------------------
498
Janis Danisevskis53e448c2016-03-31 13:35:25 +0100499/[\p{Nd}]/utf
Nick Kralevichf73ff172014-09-27 12:41:49 -0700500Memory allocation (code space): 48
501------------------------------------------------------------------
502 0 9 Bra
503 2 [\p{Nd}]
504 9 9 Ket
505 11 End
506------------------------------------------------------------------
507
Janis Danisevskis53e448c2016-03-31 13:35:25 +0100508/[\p{Nd}+-]+/utf
Nick Kralevichf73ff172014-09-27 12:41:49 -0700509Memory allocation (code space): 84
510------------------------------------------------------------------
511 0 18 Bra
512 2 [+\-\p{Nd}]++
513 18 18 Ket
514 20 End
515------------------------------------------------------------------
516
Janis Danisevskis53e448c2016-03-31 13:35:25 +0100517/A\x{391}\x{10427}\x{ff3a}\x{1fb0}/i,utf
Nick Kralevichf73ff172014-09-27 12:41:49 -0700518Memory allocation (code space): 60
519------------------------------------------------------------------
520 0 12 Bra
521 2 /i A\x{391}\x{10427}\x{ff3a}\x{1fb0}
522 12 12 Ket
523 14 End
524------------------------------------------------------------------
525
Janis Danisevskis53e448c2016-03-31 13:35:25 +0100526/A\x{391}\x{10427}\x{ff3a}\x{1fb0}/utf
Nick Kralevichf73ff172014-09-27 12:41:49 -0700527Memory allocation (code space): 60
528------------------------------------------------------------------
529 0 12 Bra
530 2 A\x{391}\x{10427}\x{ff3a}\x{1fb0}
531 12 12 Ket
532 14 End
533------------------------------------------------------------------
534
Janis Danisevskis53e448c2016-03-31 13:35:25 +0100535/[\x{105}-\x{109}]/i,utf
Nick Kralevichf73ff172014-09-27 12:41:49 -0700536Memory allocation (code space): 48
537------------------------------------------------------------------
538 0 9 Bra
539 2 [\x{104}-\x{109}]
540 9 9 Ket
541 11 End
542------------------------------------------------------------------
543
Janis Danisevskis53e448c2016-03-31 13:35:25 +0100544/( ( (?(1)0|) )* )/x
Nick Kralevichf73ff172014-09-27 12:41:49 -0700545Memory allocation (code space): 104
546------------------------------------------------------------------
547 0 23 Bra
548 2 19 CBra 1
549 5 Brazero
550 6 13 SCBra 2
551 9 6 Cond
552 11 1 Cond ref
553 13 0
554 15 2 Alt
555 17 8 Ket
556 19 13 KetRmax
557 21 19 Ket
558 23 23 Ket
559 25 End
560------------------------------------------------------------------
561
Janis Danisevskis53e448c2016-03-31 13:35:25 +0100562/( (?(1)0|)* )/x
Nick Kralevichf73ff172014-09-27 12:41:49 -0700563Memory allocation (code space): 84
564------------------------------------------------------------------
565 0 18 Bra
566 2 14 CBra 1
567 5 Brazero
568 6 6 SCond
569 8 1 Cond ref
570 10 0
571 12 2 Alt
572 14 8 KetRmax
573 16 14 Ket
574 18 18 Ket
575 20 End
576------------------------------------------------------------------
577
Janis Danisevskis53e448c2016-03-31 13:35:25 +0100578/[a]/
Nick Kralevichf73ff172014-09-27 12:41:49 -0700579Memory allocation (code space): 28
580------------------------------------------------------------------
581 0 4 Bra
582 2 a
583 4 4 Ket
584 6 End
585------------------------------------------------------------------
586
Janis Danisevskis53e448c2016-03-31 13:35:25 +0100587/[a]/utf
Nick Kralevichf73ff172014-09-27 12:41:49 -0700588Memory allocation (code space): 28
589------------------------------------------------------------------
590 0 4 Bra
591 2 a
592 4 4 Ket
593 6 End
594------------------------------------------------------------------
595
Janis Danisevskis53e448c2016-03-31 13:35:25 +0100596/[\xaa]/
Nick Kralevichf73ff172014-09-27 12:41:49 -0700597Memory allocation (code space): 28
598------------------------------------------------------------------
599 0 4 Bra
600 2 \x{aa}
601 4 4 Ket
602 6 End
603------------------------------------------------------------------
604
Janis Danisevskis53e448c2016-03-31 13:35:25 +0100605/[\xaa]/utf
Nick Kralevichf73ff172014-09-27 12:41:49 -0700606Memory allocation (code space): 28
607------------------------------------------------------------------
608 0 4 Bra
609 2 \x{aa}
610 4 4 Ket
611 6 End
612------------------------------------------------------------------
613
Janis Danisevskis53e448c2016-03-31 13:35:25 +0100614/[^a]/
Nick Kralevichf73ff172014-09-27 12:41:49 -0700615Memory allocation (code space): 28
616------------------------------------------------------------------
617 0 4 Bra
618 2 [^a]
619 4 4 Ket
620 6 End
621------------------------------------------------------------------
622
Janis Danisevskis53e448c2016-03-31 13:35:25 +0100623/[^a]/utf
Nick Kralevichf73ff172014-09-27 12:41:49 -0700624Memory allocation (code space): 28
625------------------------------------------------------------------
626 0 4 Bra
627 2 [^a]
628 4 4 Ket
629 6 End
630------------------------------------------------------------------
631
Janis Danisevskis53e448c2016-03-31 13:35:25 +0100632/[^\xaa]/
Nick Kralevichf73ff172014-09-27 12:41:49 -0700633Memory allocation (code space): 28
634------------------------------------------------------------------
635 0 4 Bra
636 2 [^\x{aa}]
637 4 4 Ket
638 6 End
639------------------------------------------------------------------
640
Janis Danisevskis53e448c2016-03-31 13:35:25 +0100641/[^\xaa]/utf
Nick Kralevichf73ff172014-09-27 12:41:49 -0700642Memory allocation (code space): 28
643------------------------------------------------------------------
644 0 4 Bra
645 2 [^\x{aa}]
646 4 4 Ket
647 6 End
648------------------------------------------------------------------
649
Janis Danisevskis53e448c2016-03-31 13:35:25 +0100650#pattern -memory
651
652/[^\d]/utf,ucp
Nick Kralevichf73ff172014-09-27 12:41:49 -0700653------------------------------------------------------------------
654 0 9 Bra
655 2 [^\p{Nd}]
656 9 9 Ket
657 11 End
658------------------------------------------------------------------
659
Janis Danisevskis53e448c2016-03-31 13:35:25 +0100660/[[:^alpha:][:^cntrl:]]+/utf,ucp
Nick Kralevichf73ff172014-09-27 12:41:49 -0700661------------------------------------------------------------------
Janis Danisevskis53e448c2016-03-31 13:35:25 +0100662 0 13 Bra
663 2 [\P{L}\P{Cc}]++
664 13 13 Ket
665 15 End
Nick Kralevichf73ff172014-09-27 12:41:49 -0700666------------------------------------------------------------------
667
Janis Danisevskis53e448c2016-03-31 13:35:25 +0100668/[[:^cntrl:][:^alpha:]]+/utf,ucp
Nick Kralevichf73ff172014-09-27 12:41:49 -0700669------------------------------------------------------------------
Janis Danisevskis53e448c2016-03-31 13:35:25 +0100670 0 13 Bra
671 2 [\P{Cc}\P{L}]++
672 13 13 Ket
673 15 End
Nick Kralevichf73ff172014-09-27 12:41:49 -0700674------------------------------------------------------------------
675
Janis Danisevskis53e448c2016-03-31 13:35:25 +0100676/[[:alpha:]]+/utf,ucp
Nick Kralevichf73ff172014-09-27 12:41:49 -0700677------------------------------------------------------------------
678 0 10 Bra
679 2 [\p{L}]++
680 10 10 Ket
681 12 End
682------------------------------------------------------------------
683
Janis Danisevskis53e448c2016-03-31 13:35:25 +0100684/[[:^alpha:]\S]+/utf,ucp
Nick Kralevichf73ff172014-09-27 12:41:49 -0700685------------------------------------------------------------------
686 0 13 Bra
687 2 [\P{L}\P{Xsp}]++
688 13 13 Ket
689 15 End
690------------------------------------------------------------------
691
Janis Danisevskis53e448c2016-03-31 13:35:25 +0100692/abc(d|e)(*THEN)x(123(*THEN)4|567(b|q)(*THEN)xx)/
Nick Kralevichf73ff172014-09-27 12:41:49 -0700693------------------------------------------------------------------
694 0 60 Bra
695 2 abc
696 8 5 CBra 1
697 11 d
698 13 4 Alt
699 15 e
700 17 9 Ket
701 19 *THEN
702 20 x
703 22 12 CBra 2
704 25 123
705 31 *THEN
706 32 4
707 34 24 Alt
708 36 567
709 42 5 CBra 3
710 45 b
711 47 4 Alt
712 49 q
713 51 9 Ket
714 53 *THEN
715 54 xx
716 58 36 Ket
717 60 60 Ket
718 62 End
719------------------------------------------------------------------
720
Janis Danisevskis53e448c2016-03-31 13:35:25 +0100721/(((a\2)|(a*)\g<-1>))*a?/
Nick Kralevichf73ff172014-09-27 12:41:49 -0700722------------------------------------------------------------------
723 0 39 Bra
724 2 Brazero
725 3 32 SCBra 1
726 6 27 Once
727 8 12 CBra 2
728 11 7 CBra 3
729 14 a
730 16 \2
731 18 7 Ket
732 20 11 Alt
733 22 5 CBra 4
734 25 a*
735 27 5 Ket
736 29 22 Recurse
737 31 23 Ket
738 33 27 Ket
739 35 32 KetRmax
740 37 a?+
741 39 39 Ket
742 41 End
743------------------------------------------------------------------
744
Janis Danisevskis53e448c2016-03-31 13:35:25 +0100745/((?+1)(\1))/
Elliott Hughes8366e8b2015-08-14 20:48:15 -0700746------------------------------------------------------------------
747 0 20 Bra
748 2 16 Once
749 4 12 CBra 1
750 7 9 Recurse
751 9 5 CBra 2
752 12 \1
753 14 5 Ket
754 16 12 Ket
755 18 16 Ket
756 20 20 Ket
757 22 End
758------------------------------------------------------------------
759
Janis Danisevskis53e448c2016-03-31 13:35:25 +0100760"(?1)(?#?'){2}(a)"
Elliott Hughes0ea98832015-12-04 23:18:20 -0800761------------------------------------------------------------------
Elliott Hughes9bc971b2018-07-27 13:23:14 -0700762 0 13 Bra
763 2 6 Recurse
764 4 6 Recurse
765 6 5 CBra 1
766 9 a
767 11 5 Ket
768 13 13 Ket
769 15 End
Elliott Hughes0ea98832015-12-04 23:18:20 -0800770------------------------------------------------------------------
771
Janis Danisevskis53e448c2016-03-31 13:35:25 +0100772/.((?2)(?R)|\1|$)()/
773------------------------------------------------------------------
774 0 28 Bra
775 2 Any
776 3 18 Once
777 5 7 CBra 1
778 8 23 Recurse
779 10 0 Recurse
780 12 4 Alt
781 14 \1
782 16 3 Alt
783 18 $
784 19 14 Ket
785 21 18 Ket
786 23 3 CBra 2
787 26 3 Ket
788 28 28 Ket
789 30 End
790------------------------------------------------------------------
791
792/.((?3)(?R)()(?2)|\1|$)()/
793------------------------------------------------------------------
794 0 35 Bra
795 2 Any
796 3 25 Once
797 5 14 CBra 1
798 8 30 Recurse
799 10 0 Recurse
800 12 3 CBra 2
801 15 3 Ket
802 17 12 Recurse
803 19 4 Alt
804 21 \1
805 23 3 Alt
806 25 $
807 26 21 Ket
808 28 25 Ket
809 30 3 CBra 3
810 33 3 Ket
811 35 35 Ket
812 37 End
813------------------------------------------------------------------
814
815/(?1)()((((((\1++))\x85)+)|))/
816------------------------------------------------------------------
817 0 50 Bra
818 2 4 Recurse
819 4 3 CBra 1
820 7 3 Ket
821 9 39 CBra 2
822 12 32 CBra 3
823 15 27 CBra 4
824 18 22 CBra 5
825 21 15 CBra 6
826 24 10 CBra 7
827 27 5 Once
828 29 \1+
829 32 5 Ket
830 34 10 Ket
831 36 15 Ket
832 38 \x{85}
833 40 22 KetRmax
834 42 27 Ket
835 44 2 Alt
836 46 34 Ket
837 48 39 Ket
838 50 50 Ket
839 52 End
840------------------------------------------------------------------
841
842# Check the absolute limit on nesting (?| etc. This varies with code unit
843# width because the workspace is a different number of bytes. It will fail
844# with link size 2 in 8-bit and 16-bit but not in 32-bit.
845
846/(?|(?|(?J:(?|(?x:(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|
847)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))
848/parens_nest_limit=1000,-fullbincode
849
850# Use "expand" to create some very long patterns with nested parentheses, in
851# order to test workspace overflow. Again, this varies with code unit width,
Elliott Hughes9bc971b2018-07-27 13:23:14 -0700852# and even when it fails in two modes, the error offset differs. It also varies
Janis Danisevskis53e448c2016-03-31 13:35:25 +0100853# with link size - hence multiple tests with different values.
854
Elliott Hughes9bc971b2018-07-27 13:23:14 -0700855/(?'ABC'\[[bar](]{792}*THEN:\[A]{255}\[)]{793}/expand,-fullbincode,parens_nest_limit=1000
Janis Danisevskis53e448c2016-03-31 13:35:25 +0100856
Elliott Hughes9bc971b2018-07-27 13:23:14 -0700857/(?'ABC'\[[bar](]{793}*THEN:\[A]{255}\[)]{794}/expand,-fullbincode,parens_nest_limit=1000
Janis Danisevskis53e448c2016-03-31 13:35:25 +0100858
Elliott Hughes9bc971b2018-07-27 13:23:14 -0700859/(?'ABC'\[[bar](]{1793}*THEN:\[A]{255}\[)]{1794}/expand,-fullbincode,parens_nest_limit=2000
860Failed: error 186 at offset 12820: regular expression is too complicated
Janis Danisevskis53e448c2016-03-31 13:35:25 +0100861
862/(?(1)(?1)){8,}+()/debug
863------------------------------------------------------------------
864 0 79 Bra
865 2 70 Once
866 4 6 Cond
867 6 1 Cond ref
868 8 74 Recurse
869 10 6 Ket
870 12 6 Cond
871 14 1 Cond ref
872 16 74 Recurse
873 18 6 Ket
874 20 6 Cond
875 22 1 Cond ref
876 24 74 Recurse
877 26 6 Ket
878 28 6 Cond
879 30 1 Cond ref
880 32 74 Recurse
881 34 6 Ket
882 36 6 Cond
883 38 1 Cond ref
884 40 74 Recurse
885 42 6 Ket
886 44 6 Cond
887 46 1 Cond ref
888 48 74 Recurse
889 50 6 Ket
890 52 6 Cond
891 54 1 Cond ref
892 56 74 Recurse
893 58 6 Ket
894 60 10 SBraPos
895 62 6 SCond
896 64 1 Cond ref
897 66 74 Recurse
898 68 6 Ket
899 70 10 KetRpos
900 72 70 Ket
901 74 3 CBra 1
902 77 3 Ket
903 79 79 Ket
904 81 End
905------------------------------------------------------------------
Elliott Hughes0c26e192019-08-07 12:24:46 -0700906Capture group count = 1
Janis Danisevskis53e448c2016-03-31 13:35:25 +0100907Max back reference = 1
908May match empty string
909Subject length lower bound = 0
910 abcd
911 0:
912 1:
913
914/(?(1)|a(?1)b){2,}+()/debug
915------------------------------------------------------------------
916 0 43 Bra
917 2 34 Once
918 4 4 Cond
919 6 1 Cond ref
920 8 8 Alt
921 10 a
922 12 38 Recurse
923 14 b
924 16 12 Ket
925 18 16 SBraPos
926 20 4 SCond
927 22 1 Cond ref
928 24 8 Alt
929 26 a
930 28 38 Recurse
931 30 b
932 32 12 Ket
933 34 16 KetRpos
934 36 34 Ket
935 38 3 CBra 1
936 41 3 Ket
937 43 43 Ket
938 45 End
939------------------------------------------------------------------
Elliott Hughes0c26e192019-08-07 12:24:46 -0700940Capture group count = 1
Janis Danisevskis53e448c2016-03-31 13:35:25 +0100941Max back reference = 1
942May match empty string
943Subject length lower bound = 0
944 abcde
945No match
946
947/((?1)(?2)(?3)(?4)(?5)(?6)(?7)(?8)(?9)(?9)(?8)(?7)(?6)(?5)(?4)(?3)(?2)(?1)(?0)){2,}()()()()()()()()()/debug
948------------------------------------------------------------------
949 0 133 Bra
950 2 41 CBra 1
951 5 2 Recurse
952 7 88 Recurse
953 9 93 Recurse
954 11 98 Recurse
955 13 103 Recurse
956 15 108 Recurse
957 17 113 Recurse
958 19 118 Recurse
959 21 123 Recurse
960 23 123 Recurse
961 25 118 Recurse
962 27 113 Recurse
963 29 108 Recurse
964 31 103 Recurse
965 33 98 Recurse
966 35 93 Recurse
967 37 88 Recurse
968 39 2 Recurse
969 41 0 Recurse
970 43 41 Ket
971 45 41 SCBra 1
972 48 2 Recurse
973 50 88 Recurse
974 52 93 Recurse
975 54 98 Recurse
976 56 103 Recurse
977 58 108 Recurse
978 60 113 Recurse
979 62 118 Recurse
980 64 123 Recurse
981 66 123 Recurse
982 68 118 Recurse
983 70 113 Recurse
984 72 108 Recurse
985 74 103 Recurse
986 76 98 Recurse
987 78 93 Recurse
988 80 88 Recurse
989 82 2 Recurse
990 84 0 Recurse
991 86 41 KetRmax
992 88 3 CBra 2
993 91 3 Ket
994 93 3 CBra 3
995 96 3 Ket
996 98 3 CBra 4
997101 3 Ket
998103 3 CBra 5
999106 3 Ket
1000108 3 CBra 6
1001111 3 Ket
1002113 3 CBra 7
1003116 3 Ket
1004118 3 CBra 8
1005121 3 Ket
1006123 3 CBra 9
1007126 3 Ket
1008128 3 CBra 10
1009131 3 Ket
1010133 133 Ket
1011135 End
1012------------------------------------------------------------------
Elliott Hughes0c26e192019-08-07 12:24:46 -07001013Capture group count = 10
Janis Danisevskis53e448c2016-03-31 13:35:25 +01001014May match empty string
1015Subject length lower bound = 0
1016
Janis Danisevskis8b979b22016-08-15 16:09:16 +01001017/([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00](*ACCEPT)/
1018Failed: error 114 at offset 509: missing closing parenthesis
1019
1020/([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00](*ACCEPT)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))/-fullbincode
1021
Janis Danisevskis53e448c2016-03-31 13:35:25 +01001022# End of testinput8