blob: 33fd6e3ef74b5ee985eb0aacd298f538312555bf [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): 17
14------------------------------------------------------------------
15 0 13 Bra
16 3 7 CBra 1
17 8 /i b
18 10 7 Ket
19 13 13 Ket
20 16 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): 25
25------------------------------------------------------------------
26 0 21 Bra
27 3 9 CBra 1
28 8 AllAny*
29 10 X
30 12 6 Alt
31 15 ^
32 16 B
33 18 15 Ket
34 21 21 Ket
35 24 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): 23
40------------------------------------------------------------------
41 0 19 Bra
42 3 7 Bra
43 6 AllAny*
44 8 X
45 10 6 Alt
46 13 ^
47 14 B
48 16 13 Ket
49 19 19 Ket
50 22 End
51------------------------------------------------------------------
52
Janis Danisevskis53e448c2016-03-31 13:35:25 +010053/^[[:alnum:]]/
Nick Kralevichf73ff172014-09-27 12:41:49 -070054Memory allocation (code space): 41
55------------------------------------------------------------------
56 0 37 Bra
57 3 ^
58 4 [0-9A-Za-z]
59 37 37 Ket
60 40 End
61------------------------------------------------------------------
62
Janis Danisevskis53e448c2016-03-31 13:35:25 +010063/#/Ix
Nick Kralevichf73ff172014-09-27 12:41:49 -070064Memory allocation (code space): 7
65------------------------------------------------------------------
66 0 3 Bra
67 3 3 Ket
68 6 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): 9
77------------------------------------------------------------------
78 0 5 Bra
79 3 a
80 5 5 Ket
81 8 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): 9
90------------------------------------------------------------------
91 0 5 Bra
92 3 x?+
93 5 5 Ket
94 8 End
95------------------------------------------------------------------
96
Janis Danisevskis53e448c2016-03-31 13:35:25 +010097/x++/
Nick Kralevichf73ff172014-09-27 12:41:49 -070098Memory allocation (code space): 9
99------------------------------------------------------------------
100 0 5 Bra
101 3 x++
102 5 5 Ket
103 8 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): 13
108------------------------------------------------------------------
109 0 9 Bra
110 3 x
111 5 x{0,2}+
112 9 9 Ket
113 12 End
114------------------------------------------------------------------
115
Janis Danisevskis53e448c2016-03-31 13:35:25 +0100116/(x)*+/
Nick Kralevichf73ff172014-09-27 12:41:49 -0700117Memory allocation (code space): 18
118------------------------------------------------------------------
119 0 14 Bra
120 3 Braposzero
121 4 7 CBraPos 1
122 9 x
123 11 7 KetRpos
124 14 14 Ket
125 17 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): 120
130------------------------------------------------------------------
131 0 116 Bra
132 3 ^
133 4 109 CBra 1
134 9 7 CBra 2
135 14 a+
136 16 7 Ket
137 19 39 CBra 3
138 24 [ab]+?
139 58 39 Ket
140 61 39 CBra 4
141 66 [bc]+
142100 39 Ket
143103 7 CBra 5
144108 \w*+
145110 7 Ket
146113 109 Ket
147116 116 Ket
148119 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): 826
153------------------------------------------------------------------
154 0 822 Bra
155 3 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
156821 \b
157822 822 Ket
158825 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): 816
163------------------------------------------------------------------
164 0 812 Bra
165 3 $<.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
166811 \b
167812 812 Ket
168815 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): 22
173------------------------------------------------------------------
174 0 18 Bra
175 3 12 CBra 1
176 8 a
177 10 3 Recurse
178 13 b
179 15 12 Ket
180 18 18 Ket
181 21 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): 28
186------------------------------------------------------------------
187 0 24 Bra
188 3 18 CBra 1
189 8 a
Elliott Hughes9bc971b2018-07-27 13:23:14 -0700190 10 6 SBra
Nick Kralevichf73ff172014-09-27 12:41:49 -0700191 13 3 Recurse
192 16 6 KetRmax
193 19 b
194 21 18 Ket
195 24 24 Ket
196 27 End
197------------------------------------------------------------------
198
Janis Danisevskis53e448c2016-03-31 13:35:25 +0100199/a(?P<name1>b|c)d(?P<longername2>e)/
Nick Kralevichf73ff172014-09-27 12:41:49 -0700200Memory allocation (code space): 36
201------------------------------------------------------------------
202 0 32 Bra
203 3 a
204 5 7 CBra 1
205 10 b
206 12 5 Alt
207 15 c
208 17 12 Ket
209 20 d
210 22 7 CBra 2
211 27 e
212 29 7 Ket
213 32 32 Ket
214 35 End
215------------------------------------------------------------------
216
Janis Danisevskis53e448c2016-03-31 13:35:25 +0100217/(?:a(?P<c>c(?P<d>d)))(?P<a>a)/
Nick Kralevichf73ff172014-09-27 12:41:49 -0700218Memory allocation (code space): 45
219------------------------------------------------------------------
220 0 41 Bra
221 3 25 Bra
222 6 a
223 8 17 CBra 1
224 13 c
225 15 7 CBra 2
226 20 d
227 22 7 Ket
228 25 17 Ket
229 28 25 Ket
230 31 7 CBra 3
231 36 a
232 38 7 Ket
233 41 41 Ket
234 44 End
235------------------------------------------------------------------
236
Janis Danisevskis53e448c2016-03-31 13:35:25 +0100237/(?P<a>a)...(?P=a)bbb(?P>a)d/
238Memory allocation (code space): 34
Nick Kralevichf73ff172014-09-27 12:41:49 -0700239------------------------------------------------------------------
240 0 30 Bra
241 3 7 CBra 1
242 8 a
243 10 7 Ket
244 13 Any
245 14 Any
246 15 Any
247 16 \1
248 19 bbb
249 25 3 Recurse
250 28 d
251 30 30 Ket
252 33 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): 31
257------------------------------------------------------------------
258 0 27 Bra
259 3 abc
260 9 Callout 255 10 1
261 15 de
262 19 Callout 0 16 1
263 25 f
264 27 27 Ket
265 30 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): 53
270------------------------------------------------------------------
271 0 49 Bra
272 3 Callout 255 0 1
273 9 a
274 11 Callout 255 1 1
275 17 b
276 19 Callout 255 2 1
277 25 c
278 27 Callout 255 3 1
279 33 d
280 35 Callout 255 4 1
281 41 e
282 43 Callout 255 5 0
283 49 49 Ket
284 52 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): 10
289------------------------------------------------------------------
290 0 6 Bra
291 3 \x{100}
292 6 6 Ket
293 9 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): 11
298------------------------------------------------------------------
299 0 7 Bra
300 3 \x{1000}
301 7 7 Ket
302 10 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): 12
307------------------------------------------------------------------
308 0 8 Bra
309 3 \x{10000}
310 8 8 Ket
311 11 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): 12
316------------------------------------------------------------------
317 0 8 Bra
318 3 \x{100000}
319 8 8 Ket
320 11 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): 12
325------------------------------------------------------------------
326 0 8 Bra
327 3 \x{10ffff}
328 8 8 Ket
329 11 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): 10
337------------------------------------------------------------------
338 0 6 Bra
339 3 \x{ff}
340 6 6 Ket
341 9 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): 10
346------------------------------------------------------------------
347 0 6 Bra
348 3 \x{100}
349 6 6 Ket
350 9 End
351------------------------------------------------------------------
352
Janis Danisevskis53e448c2016-03-31 13:35:25 +0100353/\x80/utf
Nick Kralevichf73ff172014-09-27 12:41:49 -0700354Memory allocation (code space): 10
355------------------------------------------------------------------
356 0 6 Bra
357 3 \x{80}
358 6 6 Ket
359 9 End
360------------------------------------------------------------------
361
Janis Danisevskis53e448c2016-03-31 13:35:25 +0100362/\xff/utf
Nick Kralevichf73ff172014-09-27 12:41:49 -0700363Memory allocation (code space): 10
364------------------------------------------------------------------
365 0 6 Bra
366 3 \x{ff}
367 6 6 Ket
368 9 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): 18
373------------------------------------------------------------------
374 0 14 Bra
375 3 A\x{2262}\x{391}.
376 14 14 Ket
377 17 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): 19
387------------------------------------------------------------------
388 0 15 Bra
389 3 \x{d55c}\x{ad6d}\x{c5b4}
390 15 15 Ket
391 18 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 = \xed
396Last code unit = \xb4
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): 19
401------------------------------------------------------------------
402 0 15 Bra
403 3 \x{65e5}\x{672c}\x{8a9e}
404 15 15 Ket
405 18 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 = \xe6
410Last code unit = \x9e
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): 10
415------------------------------------------------------------------
416 0 6 Bra
417 3 \x{100}
418 6 6 Ket
419 9 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): 47
424------------------------------------------------------------------
425 0 43 Bra
426 3 [Z\x{100}]
427 43 43 Ket
428 46 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): 18
433------------------------------------------------------------------
434 0 14 Bra
435 3 ^
436 4 [\x{100}-\x{150}]
437 14 14 Ket
438 17 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): 18
443------------------------------------------------------------------
444 0 14 Bra
445 3 ^
446 4 [\x{100}-\x{150}]
447 14 14 Ket
448 17 End
449------------------------------------------------------------------
450
Janis Danisevskis53e448c2016-03-31 13:35:25 +0100451/^[\QĀ\E-\QŐ\E/utf
452Failed: error 106 at offset 15: 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): 15
456------------------------------------------------------------------
457 0 11 Bra
458 3 [\p{L}]
459 11 11 Ket
460 14 End
461------------------------------------------------------------------
462
Janis Danisevskis53e448c2016-03-31 13:35:25 +0100463/[\p{^L}]/
Nick Kralevichf73ff172014-09-27 12:41:49 -0700464Memory allocation (code space): 15
465------------------------------------------------------------------
466 0 11 Bra
467 3 [\P{L}]
468 11 11 Ket
469 14 End
470------------------------------------------------------------------
471
Janis Danisevskis53e448c2016-03-31 13:35:25 +0100472/[\P{L}]/
Nick Kralevichf73ff172014-09-27 12:41:49 -0700473Memory allocation (code space): 15
474------------------------------------------------------------------
475 0 11 Bra
476 3 [\P{L}]
477 11 11 Ket
478 14 End
479------------------------------------------------------------------
480
Janis Danisevskis53e448c2016-03-31 13:35:25 +0100481/[\P{^L}]/
Nick Kralevichf73ff172014-09-27 12:41:49 -0700482Memory allocation (code space): 15
483------------------------------------------------------------------
484 0 11 Bra
485 3 [\p{L}]
486 11 11 Ket
487 14 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): 50
492------------------------------------------------------------------
493 0 46 Bra
494 3 [a-c\p{L}\x{660}]
495 46 46 Ket
496 49 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): 15
501------------------------------------------------------------------
502 0 11 Bra
503 3 [\p{Nd}]
504 11 11 Ket
505 14 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): 48
510------------------------------------------------------------------
511 0 44 Bra
512 3 [+\-\p{Nd}]++
513 44 44 Ket
514 47 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): 25
519------------------------------------------------------------------
520 0 21 Bra
521 3 /i A\x{391}\x{10427}\x{ff3a}\x{1fb0}
522 21 21 Ket
523 24 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): 25
528------------------------------------------------------------------
529 0 21 Bra
530 3 A\x{391}\x{10427}\x{ff3a}\x{1fb0}
531 21 21 Ket
532 24 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): 17
537------------------------------------------------------------------
538 0 13 Bra
539 3 [\x{104}-\x{109}]
540 13 13 Ket
541 16 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): 38
546------------------------------------------------------------------
547 0 34 Bra
548 3 28 CBra 1
549 8 Brazero
550 9 19 SCBra 2
551 14 8 Cond
552 17 1 Cond ref
553 20 0
554 22 3 Alt
555 25 11 Ket
556 28 19 KetRmax
557 31 28 Ket
558 34 34 Ket
559 37 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): 30
564------------------------------------------------------------------
565 0 26 Bra
566 3 20 CBra 1
567 8 Brazero
568 9 8 SCond
569 12 1 Cond ref
570 15 0
571 17 3 Alt
572 20 11 KetRmax
573 23 20 Ket
574 26 26 Ket
575 29 End
576------------------------------------------------------------------
577
Janis Danisevskis53e448c2016-03-31 13:35:25 +0100578/[a]/
Nick Kralevichf73ff172014-09-27 12:41:49 -0700579Memory allocation (code space): 9
580------------------------------------------------------------------
581 0 5 Bra
582 3 a
583 5 5 Ket
584 8 End
585------------------------------------------------------------------
586
Janis Danisevskis53e448c2016-03-31 13:35:25 +0100587/[a]/utf
Nick Kralevichf73ff172014-09-27 12:41:49 -0700588Memory allocation (code space): 9
589------------------------------------------------------------------
590 0 5 Bra
591 3 a
592 5 5 Ket
593 8 End
594------------------------------------------------------------------
595
Janis Danisevskis53e448c2016-03-31 13:35:25 +0100596/[\xaa]/
Nick Kralevichf73ff172014-09-27 12:41:49 -0700597Memory allocation (code space): 9
598------------------------------------------------------------------
599 0 5 Bra
600 3 \x{aa}
601 5 5 Ket
602 8 End
603------------------------------------------------------------------
604
Janis Danisevskis53e448c2016-03-31 13:35:25 +0100605/[\xaa]/utf
Nick Kralevichf73ff172014-09-27 12:41:49 -0700606Memory allocation (code space): 10
607------------------------------------------------------------------
608 0 6 Bra
609 3 \x{aa}
610 6 6 Ket
611 9 End
612------------------------------------------------------------------
613
Janis Danisevskis53e448c2016-03-31 13:35:25 +0100614/[^a]/
Nick Kralevichf73ff172014-09-27 12:41:49 -0700615Memory allocation (code space): 9
616------------------------------------------------------------------
617 0 5 Bra
618 3 [^a]
619 5 5 Ket
620 8 End
621------------------------------------------------------------------
622
Janis Danisevskis53e448c2016-03-31 13:35:25 +0100623/[^a]/utf
Nick Kralevichf73ff172014-09-27 12:41:49 -0700624Memory allocation (code space): 9
625------------------------------------------------------------------
626 0 5 Bra
627 3 [^a]
628 5 5 Ket
629 8 End
630------------------------------------------------------------------
631
Janis Danisevskis53e448c2016-03-31 13:35:25 +0100632/[^\xaa]/
Nick Kralevichf73ff172014-09-27 12:41:49 -0700633Memory allocation (code space): 9
634------------------------------------------------------------------
635 0 5 Bra
636 3 [^\x{aa}]
637 5 5 Ket
638 8 End
639------------------------------------------------------------------
640
Janis Danisevskis53e448c2016-03-31 13:35:25 +0100641/[^\xaa]/utf
Nick Kralevichf73ff172014-09-27 12:41:49 -0700642Memory allocation (code space): 10
643------------------------------------------------------------------
644 0 6 Bra
645 3 [^\x{aa}]
646 6 6 Ket
647 9 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 11 Bra
655 3 [^\p{Nd}]
656 11 11 Ket
657 14 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 15 Bra
663 3 [\P{L}\P{Cc}]++
664 15 15 Ket
665 18 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 15 Bra
671 3 [\P{Cc}\P{L}]++
672 15 15 Ket
673 18 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 12 Bra
679 3 [\p{L}]++
680 12 12 Ket
681 15 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 15 Bra
687 3 [\P{L}\P{Xsp}]++
688 15 15 Ket
689 18 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 73 Bra
695 3 abc
696 9 7 CBra 1
697 14 d
698 16 5 Alt
699 19 e
700 21 12 Ket
701 24 *THEN
702 25 x
703 27 14 CBra 2
704 32 123
705 38 *THEN
706 39 4
707 41 29 Alt
708 44 567
709 50 7 CBra 3
710 55 b
711 57 5 Alt
712 60 q
713 62 12 Ket
714 65 *THEN
715 66 xx
716 70 43 Ket
717 73 73 Ket
718 76 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 57 Bra
724 3 Brazero
725 4 48 SCBra 1
726 9 40 Once
727 12 18 CBra 2
728 17 10 CBra 3
729 22 a
730 24 \2
731 27 10 Ket
732 30 16 Alt
733 33 7 CBra 4
734 38 a*
735 40 7 Ket
736 43 33 Recurse
737 46 34 Ket
738 49 40 Ket
739 52 48 KetRmax
740 55 a?+
741 57 57 Ket
742 60 End
743------------------------------------------------------------------
744
Janis Danisevskis53e448c2016-03-31 13:35:25 +0100745/((?+1)(\1))/
Elliott Hughes8366e8b2015-08-14 20:48:15 -0700746------------------------------------------------------------------
747 0 31 Bra
748 3 25 Once
749 6 19 CBra 1
750 11 14 Recurse
751 14 8 CBra 2
752 19 \1
753 22 8 Ket
754 25 19 Ket
755 28 25 Ket
756 31 31 Ket
757 34 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 19 Bra
763 3 9 Recurse
764 6 9 Recurse
765 9 7 CBra 1
766 14 a
767 16 7 Ket
768 19 19 Ket
769 22 End
Elliott Hughes0ea98832015-12-04 23:18:20 -0800770------------------------------------------------------------------
771
Janis Danisevskis53e448c2016-03-31 13:35:25 +0100772/.((?2)(?R)|\1|$)()/
773------------------------------------------------------------------
774 0 42 Bra
775 3 Any
776 4 27 Once
777 7 11 CBra 1
778 12 34 Recurse
779 15 0 Recurse
780 18 6 Alt
781 21 \1
782 24 4 Alt
783 27 $
784 28 21 Ket
785 31 27 Ket
786 34 5 CBra 2
787 39 5 Ket
788 42 42 Ket
789 45 End
790------------------------------------------------------------------
791
792/.((?3)(?R)()(?2)|\1|$)()/
793------------------------------------------------------------------
794 0 53 Bra
795 3 Any
796 4 38 Once
797 7 22 CBra 1
798 12 45 Recurse
799 15 0 Recurse
800 18 5 CBra 2
801 23 5 Ket
802 26 18 Recurse
803 29 6 Alt
804 32 \1
805 35 4 Alt
806 38 $
807 39 32 Ket
808 42 38 Ket
809 45 5 CBra 3
810 50 5 Ket
811 53 53 Ket
812 56 End
813------------------------------------------------------------------
814
815/(?1)()((((((\1++))\x85)+)|))/
816------------------------------------------------------------------
817 0 77 Bra
818 3 6 Recurse
819 6 5 CBra 1
820 11 5 Ket
821 14 60 CBra 2
822 19 49 CBra 3
823 24 41 CBra 4
824 29 33 CBra 5
825 34 23 CBra 6
826 39 15 CBra 7
827 44 7 Once
828 47 \1+
829 51 7 Ket
830 54 15 Ket
831 57 23 Ket
832 60 \x{85}
833 62 33 KetRmax
834 65 41 Ket
835 68 3 Alt
836 71 52 Ket
837 74 60 Ket
838 77 77 Ket
839 80 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
Elliott Hughes9bc971b2018-07-27 13:23:14 -0700849Failed: error 184 at offset 1504: (?| and/or (?J: or (?x: parentheses are too deeply nested
Janis Danisevskis53e448c2016-03-31 13:35:25 +0100850
851# Use "expand" to create some very long patterns with nested parentheses, in
852# order to test workspace overflow. Again, this varies with code unit width,
Elliott Hughes9bc971b2018-07-27 13:23:14 -0700853# and even when it fails in two modes, the error offset differs. It also varies
Janis Danisevskis53e448c2016-03-31 13:35:25 +0100854# with link size - hence multiple tests with different values.
855
Elliott Hughes9bc971b2018-07-27 13:23:14 -0700856/(?'ABC'\[[bar](]{792}*THEN:\[A]{255}\[)]{793}/expand,-fullbincode,parens_nest_limit=1000
Janis Danisevskis53e448c2016-03-31 13:35:25 +0100857
Elliott Hughes9bc971b2018-07-27 13:23:14 -0700858/(?'ABC'\[[bar](]{793}*THEN:\[A]{255}\[)]{794}/expand,-fullbincode,parens_nest_limit=1000
Janis Danisevskis53e448c2016-03-31 13:35:25 +0100859
Elliott Hughes9bc971b2018-07-27 13:23:14 -0700860/(?'ABC'\[[bar](]{1793}*THEN:\[A]{255}\[)]{1794}/expand,-fullbincode,parens_nest_limit=2000
861Failed: error 186 at offset 12820: regular expression is too complicated
Janis Danisevskis53e448c2016-03-31 13:35:25 +0100862
863/(?(1)(?1)){8,}+()/debug
864------------------------------------------------------------------
865 0 119 Bra
866 3 105 Once
867 6 9 Cond
868 9 1 Cond ref
869 12 111 Recurse
870 15 9 Ket
871 18 9 Cond
872 21 1 Cond ref
873 24 111 Recurse
874 27 9 Ket
875 30 9 Cond
876 33 1 Cond ref
877 36 111 Recurse
878 39 9 Ket
879 42 9 Cond
880 45 1 Cond ref
881 48 111 Recurse
882 51 9 Ket
883 54 9 Cond
884 57 1 Cond ref
885 60 111 Recurse
886 63 9 Ket
887 66 9 Cond
888 69 1 Cond ref
889 72 111 Recurse
890 75 9 Ket
891 78 9 Cond
892 81 1 Cond ref
893 84 111 Recurse
894 87 9 Ket
895 90 15 SBraPos
896 93 9 SCond
897 96 1 Cond ref
898 99 111 Recurse
899102 9 Ket
900105 15 KetRpos
901108 105 Ket
902111 5 CBra 1
903116 5 Ket
904119 119 Ket
905122 End
906------------------------------------------------------------------
Elliott Hughes0c26e192019-08-07 12:24:46 -0700907Capture group count = 1
Janis Danisevskis53e448c2016-03-31 13:35:25 +0100908Max back reference = 1
909May match empty string
910Subject length lower bound = 0
911 abcd
912 0:
913 1:
914
915/(?(1)|a(?1)b){2,}+()/debug
916------------------------------------------------------------------
917 0 61 Bra
918 3 47 Once
919 6 6 Cond
920 9 1 Cond ref
921 12 10 Alt
922 15 a
923 17 53 Recurse
924 20 b
925 22 16 Ket
926 25 22 SBraPos
927 28 6 SCond
928 31 1 Cond ref
929 34 10 Alt
930 37 a
931 39 53 Recurse
932 42 b
933 44 16 Ket
934 47 22 KetRpos
935 50 47 Ket
936 53 5 CBra 1
937 58 5 Ket
938 61 61 Ket
939 64 End
940------------------------------------------------------------------
Elliott Hughes0c26e192019-08-07 12:24:46 -0700941Capture group count = 1
Janis Danisevskis53e448c2016-03-31 13:35:25 +0100942Max back reference = 1
943May match empty string
944Subject length lower bound = 0
945 abcde
946No match
947
948/((?1)(?2)(?3)(?4)(?5)(?6)(?7)(?8)(?9)(?9)(?8)(?7)(?6)(?5)(?4)(?3)(?2)(?1)(?0)){2,}()()()()()()()()()/debug
949------------------------------------------------------------------
950 0 205 Bra
951 3 62 CBra 1
952 8 3 Recurse
953 11 133 Recurse
954 14 141 Recurse
955 17 149 Recurse
956 20 157 Recurse
957 23 165 Recurse
958 26 173 Recurse
959 29 181 Recurse
960 32 189 Recurse
961 35 189 Recurse
962 38 181 Recurse
963 41 173 Recurse
964 44 165 Recurse
965 47 157 Recurse
966 50 149 Recurse
967 53 141 Recurse
968 56 133 Recurse
969 59 3 Recurse
970 62 0 Recurse
971 65 62 Ket
972 68 62 SCBra 1
973 73 3 Recurse
974 76 133 Recurse
975 79 141 Recurse
976 82 149 Recurse
977 85 157 Recurse
978 88 165 Recurse
979 91 173 Recurse
980 94 181 Recurse
981 97 189 Recurse
982100 189 Recurse
983103 181 Recurse
984106 173 Recurse
985109 165 Recurse
986112 157 Recurse
987115 149 Recurse
988118 141 Recurse
989121 133 Recurse
990124 3 Recurse
991127 0 Recurse
992130 62 KetRmax
993133 5 CBra 2
994138 5 Ket
995141 5 CBra 3
996146 5 Ket
997149 5 CBra 4
998154 5 Ket
999157 5 CBra 5
1000162 5 Ket
1001165 5 CBra 6
1002170 5 Ket
1003173 5 CBra 7
1004178 5 Ket
1005181 5 CBra 8
1006186 5 Ket
1007189 5 CBra 9
1008194 5 Ket
1009197 5 CBra 10
1010202 5 Ket
1011205 205 Ket
1012208 End
1013------------------------------------------------------------------
Elliott Hughes0c26e192019-08-07 12:24:46 -07001014Capture group count = 10
Janis Danisevskis53e448c2016-03-31 13:35:25 +01001015May match empty string
1016Subject length lower bound = 0
1017
Janis Danisevskis8b979b22016-08-15 16:09:16 +01001018/([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)/
1019Failed: error 114 at offset 509: missing closing parenthesis
1020
1021/([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
1022
Janis Danisevskis53e448c2016-03-31 13:35:25 +01001023# End of testinput8