Merge lp:~zorba-coders/zorba/bug-1192246 into lp:zorba

Proposed by Paul J. Lucas
Status: Merged
Approved by: Paul J. Lucas
Approved revision: 11631
Merged at revision: 11637
Proposed branch: lp:~zorba-coders/zorba/bug-1192246
Merge into: lp:zorba
Diff against target: 1830 lines (+1189/-76)
65 files modified
ChangeLog (+1/-0)
modules/atomic/string.xq (+81/-0)
src/functions/pregenerated/func_strings.cpp (+37/-0)
src/functions/pregenerated/func_strings.h (+15/-0)
src/functions/pregenerated/function_enum.h (+2/-0)
src/runtime/pregenerated/iterator_enum.h (+1/-0)
src/runtime/spec/strings/strings.xml (+22/-1)
src/runtime/strings/pregenerated/strings.cpp (+28/-0)
src/runtime/strings/pregenerated/strings.h (+32/-0)
src/runtime/strings/strings_impl.cpp (+287/-49)
src/runtime/visitors/pregenerated/planiter_visitor.h (+5/-0)
src/runtime/visitors/pregenerated/printer_visitor.cpp (+14/-0)
src/runtime/visitors/pregenerated/printer_visitor.h (+3/-0)
src/util/icu_regex.cpp (+12/-3)
src/util/icu_regex.h (+20/-7)
src/util/zorba_regex.cpp (+2/-4)
src/util/zorba_regex.h (+4/-4)
test/rbkt/ExpQueryResults/zorba/string/AnalyzeString/json-analyze-string-01.xml.res (+7/-0)
test/rbkt/ExpQueryResults/zorba/string/AnalyzeString/json-analyze-string-02.xml.res (+7/-0)
test/rbkt/ExpQueryResults/zorba/string/AnalyzeString/json-analyze-string-03.xml.res (+3/-0)
test/rbkt/ExpQueryResults/zorba/string/AnalyzeString/json-analyze-string-04.xml.res (+13/-0)
test/rbkt/ExpQueryResults/zorba/string/AnalyzeString/json-analyze-string-05.xml.res (+9/-0)
test/rbkt/ExpQueryResults/zorba/string/AnalyzeString/json-analyze-string-06.xml.res (+483/-0)
test/rbkt/ExpQueryResults/zorba/string/AnalyzeString/json-analyze-string-07.xml.res (+5/-0)
test/rbkt/ExpQueryResults/zorba/string/AnalyzeString/json-analyze-string-08.xml.res (+5/-0)
test/rbkt/ExpQueryResults/zorba/string/AnalyzeString/json-analyze-string-09.xml.res (+5/-0)
test/rbkt/ExpQueryResults/zorba/string/AnalyzeString/json-analyze-string-11.xml.res (+1/-0)
test/rbkt/ExpQueryResults/zorba/string/AnalyzeString/json-analyze-string-12.xml.res (+3/-0)
test/rbkt/ExpQueryResults/zorba/string/AnalyzeString/json-analyze-string-13.xml.res (+3/-0)
test/rbkt/ExpQueryResults/zorba/string/AnalyzeString/json-analyze-string-14.xml.res (+3/-0)
test/rbkt/ExpQueryResults/zorba/string/AnalyzeString/json-analyze-string-15.xml.res (+3/-0)
test/rbkt/Queries/zorba/string/AnalyzeString/analyze_string12.xq (+1/-1)
test/rbkt/Queries/zorba/string/AnalyzeString/analyze_string13.xq (+0/-1)
test/rbkt/Queries/zorba/string/AnalyzeString/analyze_string2.xq (+1/-1)
test/rbkt/Queries/zorba/string/AnalyzeString/analyze_string3.xq (+1/-1)
test/rbkt/Queries/zorba/string/AnalyzeString/analyze_string4.xq (+2/-3)
test/rbkt/Queries/zorba/string/AnalyzeString/analyze_string7.xq (+1/-1)
test/rbkt/Queries/zorba/string/AnalyzeString/json-analyze-string-01.jq (+3/-0)
test/rbkt/Queries/zorba/string/AnalyzeString/json-analyze-string-01.spec (+1/-0)
test/rbkt/Queries/zorba/string/AnalyzeString/json-analyze-string-02.jq (+3/-0)
test/rbkt/Queries/zorba/string/AnalyzeString/json-analyze-string-02.spec (+1/-0)
test/rbkt/Queries/zorba/string/AnalyzeString/json-analyze-string-03.jq (+3/-0)
test/rbkt/Queries/zorba/string/AnalyzeString/json-analyze-string-03.spec (+1/-0)
test/rbkt/Queries/zorba/string/AnalyzeString/json-analyze-string-04.jq (+4/-0)
test/rbkt/Queries/zorba/string/AnalyzeString/json-analyze-string-04.spec (+1/-0)
test/rbkt/Queries/zorba/string/AnalyzeString/json-analyze-string-05.jq (+4/-0)
test/rbkt/Queries/zorba/string/AnalyzeString/json-analyze-string-05.spec (+1/-0)
test/rbkt/Queries/zorba/string/AnalyzeString/json-analyze-string-06.jq (+5/-0)
test/rbkt/Queries/zorba/string/AnalyzeString/json-analyze-string-06.spec (+1/-0)
test/rbkt/Queries/zorba/string/AnalyzeString/json-analyze-string-07.jq (+5/-0)
test/rbkt/Queries/zorba/string/AnalyzeString/json-analyze-string-07.spec (+1/-0)
test/rbkt/Queries/zorba/string/AnalyzeString/json-analyze-string-08.jq (+5/-0)
test/rbkt/Queries/zorba/string/AnalyzeString/json-analyze-string-08.spec (+1/-0)
test/rbkt/Queries/zorba/string/AnalyzeString/json-analyze-string-09.jq (+5/-0)
test/rbkt/Queries/zorba/string/AnalyzeString/json-analyze-string-09.spec (+1/-0)
test/rbkt/Queries/zorba/string/AnalyzeString/json-analyze-string-11.jq (+4/-0)
test/rbkt/Queries/zorba/string/AnalyzeString/json-analyze-string-11.spec (+1/-0)
test/rbkt/Queries/zorba/string/AnalyzeString/json-analyze-string-12.jq (+3/-0)
test/rbkt/Queries/zorba/string/AnalyzeString/json-analyze-string-12.spec (+1/-0)
test/rbkt/Queries/zorba/string/AnalyzeString/json-analyze-string-13.jq (+3/-0)
test/rbkt/Queries/zorba/string/AnalyzeString/json-analyze-string-13.spec (+1/-0)
test/rbkt/Queries/zorba/string/AnalyzeString/json-analyze-string-14.jq (+3/-0)
test/rbkt/Queries/zorba/string/AnalyzeString/json-analyze-string-14.spec (+1/-0)
test/rbkt/Queries/zorba/string/AnalyzeString/json-analyze-string-15.jq (+3/-0)
test/rbkt/Queries/zorba/string/AnalyzeString/json-analyze-string-15.spec (+1/-0)
To merge this branch: bzr merge lp:~zorba-coders/zorba/bug-1192246
Reviewer Review Type Date Requested Status
Matthias Brantner Approve
Paul J. Lucas Approve
Review via email: mp+186942@code.launchpad.net

Commit message

Added JSONiq version of analyze-string.

Description of the change

Added JSONiq version of analyze-string.

To post a comment you must log in.
Revision history for this message
Paul J. Lucas (paul-lucas) :
review: Approve
Revision history for this message
Zorba Build Bot (zorba-buildbot) wrote :

Validation queue starting for the following merge proposals:
https://code.launchpad.net/~zorba-coders/zorba/bug-1192246/+merge/186942

Progress dashboard at http://jenkins.lambda.nu/view/ValidationQueue

Revision history for this message
Zorba Build Bot (zorba-buildbot) wrote :

Validation queue result for https://code.launchpad.net/~zorba-coders/zorba/bug-1192246/+merge/186942

Stage "TestZorbaUbuntu" failed.
11 tests failed (8550 total tests run).

Check test results at http://jenkins.lambda.nu/job/TestZorbaUbuntu/324/testReport/ to view the results.

lp:~zorba-coders/zorba/bug-1192246 updated
11632. By Paul J. Lucas

Added missing file.

11633. By Paul J. Lucas

Added extra function signature.

Revision history for this message
Zorba Build Bot (zorba-buildbot) wrote :

Validation queue starting for the following merge proposals:
https://code.launchpad.net/~zorba-coders/zorba/bug-1192246/+merge/186942

Progress dashboard at http://jenkins.lambda.nu/view/ValidationQueue

Revision history for this message
Zorba Build Bot (zorba-buildbot) wrote :

Voting criteria failed for the following merge proposals:

https://code.launchpad.net/~zorba-coders/zorba/bug-1192246/+merge/186942 :
Votes: {'Approve': 1}

Revision history for this message
Zorba Build Bot (zorba-buildbot) wrote :

Validation queue result for https://code.launchpad.net/~zorba-coders/zorba/bug-1192246/+merge/186942

Stage "CommitZorba" failed.

Check console output at http://jenkins.lambda.nu/job/CommitZorba/199/console to view the results.

Revision history for this message
Matthias Brantner (matthias-brantner) :
review: Approve
Revision history for this message
Zorba Build Bot (zorba-buildbot) wrote :

Validation queue starting for the following merge proposals:
https://code.launchpad.net/~zorba-coders/zorba/bug-1192246/+merge/186942

Progress dashboard at http://jenkins.lambda.nu/view/ValidationQueue

Revision history for this message
Zorba Build Bot (zorba-buildbot) wrote :

Validation queue succeeded - proposal merged!

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'ChangeLog'
2--- ChangeLog 2013-09-12 21:53:44 +0000
3+++ ChangeLog 2013-09-24 00:49:11 +0000
4@@ -44,6 +44,7 @@
5 * Fixed bug #1194720 (castable as performance)
6 * Fixed bug #1189636 (transcoding hexBinary streambuf)
7 * Fixed bug in hoisting through try-catch expr
8+ * Fixed bug #1192246 (bring fn:analyze-string and fn:serialize to jsoniq)
9 * Fixed bug #1162631 (format-integer 'w' format of negative numbers)
10 * Fixed bug #1189840 (Need JSONiq CSV module)
11 * Fixed bug #1217140 (Support XQuery 3.0 item-separator serialization parameter)
12
13=== modified file 'modules/atomic/string.xq'
14--- modules/atomic/string.xq 2013-08-09 08:27:30 +0000
15+++ modules/atomic/string.xq 2013-09-24 00:49:11 +0000
16@@ -32,6 +32,85 @@
17 declare option ver:module-version "1.0";
18
19 (:~
20+ : Analyzes a string using a regular expression, returning sequence of JSON
21+ : objects that identify which parts of the input string matched or failed to
22+ : match the regular expression; and in the case of matched substrings, which
23+ : substrings matched each capturing group in the regular expression.
24+ : <p/>
25+ : This function behaves like
26+ : <a href="http://www.w3.org/TR/xpath-functions-30/#func-analyze-string"><code>fn:analyze-string</code></a>
27+ : but returns a JSON array rather than an XML element.
28+ :
29+ : @param $input The string to analyze. If the empty sequence, the function
30+ : behaves as if <code>$input</code> were a zero-length string.
31+ : @param $pattern The regular expression.
32+ : @param $flags The $flags argument is interpreted in the same way as for the
33+ : <a href="http://www.w3.org/TR/xpath-functions-30/#func-matches"><code>fn:matches</code></a>
34+ : function.
35+ : @return a JSON array of objects where each object contains a single
36+ : key/value pair.
37+ : Each key is either <code>match</code> or <code>non-match</code>.
38+ : For <code>non-match</code>,
39+ : the value is a string that is the part of <code>$input</code>
40+ : that did not match;
41+ : for <code>match</code>,
42+ : the value is either
43+ : a string that is the part of <code>$input</code> that matched
44+ : (when <code>$pattern</code> contains no capturing groups)
45+ : or an array containing values for both capturing groups
46+ : and other matches.
47+ : <p/>
48+ : Capturing group matches are themselves arrays
49+ : where the first element is the group number (1-based)
50+ : and subsequent elements are either
51+ : a string that is the part of <code>$input</code> that matched
52+ : or sub-arrays for nested capturing groups.
53+ :)
54+declare function string:analyze-string( $input as xs:string?,
55+ $pattern as xs:string,
56+ $flags as xs:string )
57+ as array() external;
58+
59+(:~
60+ : Analyzes a string using a regular expression, returning sequence of JSON
61+ : objects that identify which parts of the input string matched or failed to
62+ : match the regular expression; and in the case of matched substrings, which
63+ : substrings matched each capturing group in the regular expression.
64+ : <p/>
65+ : This function behaves like
66+ : <a href="http://www.w3.org/TR/xpath-functions-30/#func-analyze-string"><code>fn:analyze-string</code></a>
67+ : but returns a JSON array rather than an XML element.
68+ :
69+ : @param $input The string to analyze. If the empty sequence, the function
70+ : behaves as if <code>$input</code> were a zero-length string.
71+ : @param $pattern The regular expression.
72+ : @return a JSON array of objects where each object contains a single
73+ : key/value pair.
74+ : Each key is either <code>match</code> or <code>non-match</code>.
75+ : For <code>non-match</code>,
76+ : the value is a string that is the part of <code>$input</code>
77+ : that did not match;
78+ : for <code>match</code>,
79+ : the value is either
80+ : a string that is the part of <code>$input</code> that matched
81+ : (when <code>$pattern</code> contains no capturing groups)
82+ : or an array containing values for both capturing groups
83+ : and other matches.
84+ : <p/>
85+ : Capturing group matches are themselves arrays
86+ : where the first element is the group number (1-based)
87+ : and subsequent elements are either
88+ : a string that is the part of <code>$input</code> that matched
89+ : or sub-arrays for nested capturing groups.
90+ :)
91+declare function string:analyze-string( $input as xs:string?,
92+ $pattern as xs:string )
93+ as array()
94+{
95+ string:analyze-string( $input, $pattern, "" )
96+};
97+
98+(:~
99 : <p>This function materializes a streamable string.</p>
100 :
101 : <p>The drawback of a streamable (non-seekable) string is that
102@@ -102,3 +181,5 @@
103 declare function string:split(
104 $s as string,
105 $separator as string) as string* external;
106+
107+(: vim:set et sw=2 ts=2: :)
108
109=== modified file 'src/functions/pregenerated/func_strings.cpp'
110--- src/functions/pregenerated/func_strings.cpp 2013-08-09 09:20:54 +0000
111+++ src/functions/pregenerated/func_strings.cpp 2013-09-24 00:49:11 +0000
112@@ -300,6 +300,16 @@
113 return new FnAnalyzeStringIterator(sctx, loc, argv);
114 }
115
116+PlanIter_t fn_zorba_string_analyze_string::codegen(
117+ CompilerCB*,
118+ static_context* sctx,
119+ const QueryLoc& loc,
120+ std::vector<PlanIter_t>& argv,
121+ expr& ann) const
122+{
123+ return new StringAnalyzeStringIterator(sctx, loc, argv);
124+}
125+
126 PlanIter_t fn_zorba_string_materialize::codegen(
127 CompilerCB*,
128 static_context* sctx,
129@@ -863,6 +873,33 @@
130
131
132 {
133+ DECL_WITH_KIND(sctx, fn_zorba_string_analyze_string,
134+ (createQName("http://zorba.io/modules/string","","analyze-string"),
135+ GENV_TYPESYSTEM.STRING_TYPE_QUESTION,
136+ GENV_TYPESYSTEM.STRING_TYPE_ONE,
137+ GENV_TYPESYSTEM.JSON_ARRAY_TYPE_ONE),
138+ FunctionConsts::FN_ZORBA_STRING_ANALYZE_STRING_2);
139+
140+ }
141+
142+
143+
144+
145+ {
146+ DECL_WITH_KIND(sctx, fn_zorba_string_analyze_string,
147+ (createQName("http://zorba.io/modules/string","","analyze-string"),
148+ GENV_TYPESYSTEM.STRING_TYPE_QUESTION,
149+ GENV_TYPESYSTEM.STRING_TYPE_ONE,
150+ GENV_TYPESYSTEM.STRING_TYPE_ONE,
151+ GENV_TYPESYSTEM.JSON_ARRAY_TYPE_ONE),
152+ FunctionConsts::FN_ZORBA_STRING_ANALYZE_STRING_3);
153+
154+ }
155+
156+
157+
158+
159+ {
160 DECL_WITH_KIND(sctx, fn_zorba_string_materialize,
161 (createQName("http://zorba.io/modules/string","","materialize"),
162 GENV_TYPESYSTEM.STRING_TYPE_ONE,
163
164=== modified file 'src/functions/pregenerated/func_strings.h'
165--- src/functions/pregenerated/func_strings.h 2013-09-19 16:36:16 +0000
166+++ src/functions/pregenerated/func_strings.h 2013-09-24 00:49:11 +0000
167@@ -453,6 +453,21 @@
168 };
169
170
171+//fn-zorba-string:analyze-string
172+class fn_zorba_string_analyze_string : public function
173+{
174+public:
175+ fn_zorba_string_analyze_string(const signature& sig, FunctionConsts::FunctionKind kind)
176+ :
177+ function(sig, kind)
178+ {
179+
180+ }
181+
182+ CODEGEN_DECL();
183+};
184+
185+
186 //fn-zorba-string:materialize
187 class fn_zorba_string_materialize : public function
188 {
189
190=== modified file 'src/functions/pregenerated/function_enum.h'
191--- src/functions/pregenerated/function_enum.h 2013-09-09 23:47:17 +0000
192+++ src/functions/pregenerated/function_enum.h 2013-09-24 00:49:11 +0000
193@@ -498,6 +498,8 @@
194 FN_TOKENIZE_3,
195 FN_ANALYZE_STRING_2,
196 FN_ANALYZE_STRING_3,
197+ FN_ZORBA_STRING_ANALYZE_STRING_2,
198+ FN_ZORBA_STRING_ANALYZE_STRING_3,
199 FN_ZORBA_STRING_MATERIALIZE_1,
200 FN_ZORBA_STRING_IS_STREAMABLE_1,
201 FN_ZORBA_STRING_IS_SEEKABLE_1,
202
203=== modified file 'src/runtime/pregenerated/iterator_enum.h'
204--- src/runtime/pregenerated/iterator_enum.h 2013-09-09 23:47:17 +0000
205+++ src/runtime/pregenerated/iterator_enum.h 2013-09-24 00:49:11 +0000
206@@ -364,6 +364,7 @@
207 TYPE_FnReplaceIterator,
208 TYPE_FnTokenizeIterator,
209 TYPE_FnAnalyzeStringIterator,
210+ TYPE_StringAnalyzeStringIterator,
211 TYPE_StringMaterializeIterator,
212 TYPE_StringIsStreamableIterator,
213 TYPE_StringIsSeekableIterator,
214
215=== modified file 'src/runtime/spec/strings/strings.xml'
216--- src/runtime/spec/strings/strings.xml 2013-09-19 16:36:16 +0000
217+++ src/runtime/spec/strings/strings.xml 2013-09-24 00:49:11 +0000
218@@ -694,9 +694,29 @@
219
220 <!--
221 /*******************************************************************************
222- * http://zorba.io/modules/string
223+ * string:analyze-string
224 ********************************************************************************/
225 -->
226+
227+<zorba:iterator name="StringAnalyzeStringIterator">
228+ <zorba:description author="Zorba Team">
229+ string:analyse-string
230+ </zorba:description>
231+ <zorba:function>
232+ <zorba:signature localname="analyze-string" prefix="fn-zorba-string">
233+ <zorba:param>xs:string?</zorba:param> <!-- $input -->
234+ <zorba:param>xs:string</zorba:param> <!-- $pattern -->
235+ <zorba:output>array()</zorba:output>
236+ </zorba:signature>
237+ <zorba:signature localname="analyze-string" prefix="fn-zorba-string">
238+ <zorba:param>xs:string?</zorba:param> <!-- $input -->
239+ <zorba:param>xs:string</zorba:param> <!-- $pattern -->
240+ <zorba:param>xs:string</zorba:param> <!-- $flags -->
241+ <zorba:output>array()</zorba:output>
242+ </zorba:signature>
243+ </zorba:function>
244+</zorba:iterator>
245+
246 <!--
247 /*******************************************************************************
248 * string:materialize
249@@ -789,3 +809,4 @@
250 </zorba:iterator>
251
252 </zorba:iterators>
253+<!-- vim:set et sw=2 ts=2: -->
254
255=== modified file 'src/runtime/strings/pregenerated/strings.cpp'
256--- src/runtime/strings/pregenerated/strings.cpp 2013-07-11 22:08:29 +0000
257+++ src/runtime/strings/pregenerated/strings.cpp 2013-09-24 00:49:11 +0000
258@@ -774,6 +774,34 @@
259 // </FnAnalyzeStringIterator>
260
261
262+// <StringAnalyzeStringIterator>
263+SERIALIZABLE_CLASS_VERSIONS(StringAnalyzeStringIterator)
264+
265+void StringAnalyzeStringIterator::serialize(::zorba::serialization::Archiver& ar)
266+{
267+ serialize_baseclass(ar,
268+ (NaryBaseIterator<StringAnalyzeStringIterator, PlanIteratorState>*)this);
269+}
270+
271+
272+void StringAnalyzeStringIterator::accept(PlanIterVisitor& v) const
273+{
274+ v.beginVisit(*this);
275+
276+ std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
277+ std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
278+ for ( ; lIter != lEnd; ++lIter ){
279+ (*lIter)->accept(v);
280+ }
281+
282+ v.endVisit(*this);
283+}
284+
285+StringAnalyzeStringIterator::~StringAnalyzeStringIterator() {}
286+
287+// </StringAnalyzeStringIterator>
288+
289+
290 // <StringMaterializeIterator>
291 SERIALIZABLE_CLASS_VERSIONS(StringMaterializeIterator)
292
293
294=== modified file 'src/runtime/strings/pregenerated/strings.h'
295--- src/runtime/strings/pregenerated/strings.h 2013-07-11 22:08:29 +0000
296+++ src/runtime/strings/pregenerated/strings.h 2013-09-24 00:49:11 +0000
297@@ -902,6 +902,38 @@
298
299 /**
300 *
301+ * string:analyse-string
302+ *
303+ * Author: Zorba Team
304+ */
305+class StringAnalyzeStringIterator : public NaryBaseIterator<StringAnalyzeStringIterator, PlanIteratorState>
306+{
307+public:
308+ SERIALIZABLE_CLASS(StringAnalyzeStringIterator);
309+
310+ SERIALIZABLE_CLASS_CONSTRUCTOR2T(StringAnalyzeStringIterator,
311+ NaryBaseIterator<StringAnalyzeStringIterator, PlanIteratorState>);
312+
313+ void serialize( ::zorba::serialization::Archiver& ar);
314+
315+ StringAnalyzeStringIterator(
316+ static_context* sctx,
317+ const QueryLoc& loc,
318+ std::vector<PlanIter_t>& children)
319+ :
320+ NaryBaseIterator<StringAnalyzeStringIterator, PlanIteratorState>(sctx, loc, children)
321+ {}
322+
323+ virtual ~StringAnalyzeStringIterator();
324+
325+ void accept(PlanIterVisitor& v) const;
326+
327+ bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
328+};
329+
330+
331+/**
332+ *
333 * string:materialize
334 *
335 * Author: Zorba Team
336
337=== modified file 'src/runtime/strings/strings_impl.cpp'
338--- src/runtime/strings/strings_impl.cpp 2013-07-17 16:38:58 +0000
339+++ src/runtime/strings/strings_impl.cpp 2013-09-24 00:49:11 +0000
340@@ -56,6 +56,29 @@
341
342 namespace zorba {
343
344+///////////////////////////////////////////////////////////////////////////////
345+
346+static int count_capturing_groups( zstring const &regex ) {
347+ bool got_backslash = false;
348+ int n = 0;
349+ FOR_EACH( zstring, c, regex ) {
350+ if ( got_backslash )
351+ got_backslash = false;
352+ else
353+ switch ( *c ) {
354+ case '\\':
355+ got_backslash = true;
356+ break;
357+ case '(':
358+ if ( ztd::peek( regex, c ) != '?' )
359+ ++n;
360+ break;
361+ } // switch
362+ } // for
363+ return n;
364+}
365+
366+///////////////////////////////////////////////////////////////////////////////
367
368 /**
369 *______________________________________________________________________
370@@ -1572,18 +1595,9 @@
371 );
372
373 if ( flags.find( 'q' ) == zstring::npos ) {
374-
375- // count the number of capturing groups
376- bool got_paren = false;
377- int num_capturing_groups = 0;
378- FOR_EACH( zstring, c, pattern ) {
379- if ( got_paren && *c != '?' )
380- ++num_capturing_groups;
381- got_paren = *c == '(';
382- }
383-
384 bool got_backslash = false;
385 bool got_dollar = false;
386+ int const num_capturing_groups = count_capturing_groups( pattern );
387 zstring temp_replacement;
388 FOR_EACH( zstring, c, replacement ) {
389 if ( got_backslash ) {
390@@ -1867,7 +1881,7 @@
391 const char *&sin,
392 unicode::regex &rx,
393 int gparent,
394- std::vector<int> &group_parent,
395+ std::vector<int> const &group_parent,
396 int nr_pattern_groups,
397 int &i)
398 {
399@@ -1891,7 +1905,7 @@
400 int temp_endg;
401 match_startg = -1;
402 temp_endg = -1;
403- if(!rx.get_match_start_end_bytes(i+1, &match_startg, &temp_endg) && (gparent < 0))
404+ if(!rx.get_group_start_end(&match_startg, &temp_endg, i+1) && (gparent < 0))
405 continue;
406 #endif
407 if(match_endgood < match_startg)
408@@ -1977,36 +1991,36 @@
409 addGroupElement(match_elem, untyped_type_name, ns_binding, baseURI, match_start2, match_end2, match_end1_bytes, sin, rx, -1, group_parent, nr_pattern_groups, i);
410 }
411
412-static void computePatternGroupsParents(zstring &xquery_pattern, std::vector<int> &group_parent)
413-{
414- utf8_string<zstring> utf8_pattern(xquery_pattern);
415- utf8_string<zstring>::const_iterator c;
416- std::list<int> parents;
417- int i = 0;
418+static void calc_group_parents( zstring const &regex,
419+ std::vector<int> *group_parents ) {
420+ bool got_backslash = false;
421+ int group = 0;
422+ std::stack<bool> is_capturing;
423+ std::stack<int> parents;
424
425- for(c = utf8_pattern.begin(); c != utf8_pattern.end(); c++)
426- {
427- if(*c == '\\')
428- {
429- c++;
430- continue;
431- }
432- if(*c == '(')
433- {
434- //begin group
435- if(parents.size())
436- group_parent.push_back(parents.back());
437- else
438- group_parent.push_back(-1);
439- parents.push_back(i);
440- i++;
441- }
442- else if(*c == ')')
443- {
444- if(parents.size())
445- parents.pop_back();
446- }
447- }
448+ FOR_EACH( zstring, c, regex ) {
449+ if ( got_backslash )
450+ got_backslash = false;
451+ else
452+ switch ( *c ) {
453+ case '\\':
454+ got_backslash = true;
455+ break;
456+ case '(':
457+ if ( ztd::peek( regex, c ) != '?' ) {
458+ is_capturing.push( true );
459+ group_parents->push_back( parents.empty() ? -1 : parents.top() );
460+ parents.push( group++ );
461+ } else
462+ is_capturing.push( false );
463+ break;
464+ case ')':
465+ if ( is_capturing.top() && !parents.empty() )
466+ parents.pop();
467+ is_capturing.pop();
468+ break;
469+ } // switch
470+ } // for
471 }
472
473 bool FnAnalyzeStringIterator::nextImpl(
474@@ -2109,7 +2123,7 @@
475 rx.compile(lib_pattern, flags.c_str());
476 int nr_pattern_groups = rx.get_group_count();
477 std::vector<int> group_parent;
478- computePatternGroupsParents(xquery_pattern, group_parent);
479+ calc_group_parents(xquery_pattern, &group_parent);
480
481 //see if regex can match empty strings
482 bool reachedEnd = false;
483@@ -2180,12 +2194,8 @@
484 {
485 int match_start2;
486 int match_end2;
487-#ifndef ZORBA_NO_ICU
488- match_start2 = rx.get_group_start();
489- match_end2 = rx.get_group_end();
490-#else
491- rx.get_match_start_end_bytes(0, &match_start2, &match_end2);
492-#endif
493+
494+ rx.get_group_start_end(&match_start2, &match_end2);
495 ZORBA_ASSERT(match_start2 >= 0);
496
497 if(is_input_stream && reachedEnd && !instream->eof())
498@@ -2275,9 +2285,237 @@
499 *______________________________________________________________________
500 *
501 * http://zorba.io/modules/string
502+ * string:analyze-string
503+ */
504+
505+#define STREAM_ANALYZE_STRING 0
506+
507+static void add_json_substring( utf8_string<zstring const> const &u_input,
508+ int *start, int end,
509+ vector<store::Item_t> *items ) {
510+ zstring temp( u_input.substr( *start, end - *start ) );
511+ *start = end;
512+ store::Item_t item;
513+ GENV_ITEMFACTORY->createString( item, temp );
514+ items->push_back( item );
515+}
516+
517+static void add_json_group_match( utf8_string<zstring const> const &u_input,
518+ int m_start, int m_end,
519+ unicode::regex const &regex, int g_count,
520+ int g_parent, vector<int> const &g_parents,
521+ int *p_group, int *p_g_end_prev,
522+ vector<store::Item_t> *array_items ) {
523+ int &group = *p_group;
524+ int &g_end_prev = *p_g_end_prev;
525+ store::Item_t item;
526+
527+ for ( ++group; group < g_count; ++group ) {
528+ if ( g_parents[ group ] < g_parent ) {
529+ --group;
530+ break;
531+ }
532+
533+ int const group_1 = group + 1;
534+ int g_start, g_end;
535+ regex.get_group_start_end( &g_start, &g_end, group_1 );
536+ if ( g_start > m_start && g_start > g_end_prev ) {
537+ //
538+ // Add the substring between the end of the previous capturing group
539+ // match and this one.
540+ //
541+ add_json_substring( u_input, &g_end_prev, g_start, array_items );
542+ }
543+
544+ vector<store::Item_t> array_items2;
545+ GENV_ITEMFACTORY->createInteger( item, xs_integer( group_1 ) );
546+ array_items2.push_back( item );
547+
548+ if ( group_1 < g_count && g_parents[ group_1 ] > g_parent ) {
549+ //
550+ // The next capturing group is nested within this one.
551+ //
552+ add_json_group_match(
553+ u_input, m_start, m_end, regex, g_count, group, g_parents, &group,
554+ &g_end_prev, &array_items2
555+ );
556+ if ( g_end > g_end_prev ) {
557+ //
558+ // Add the substring between the end of the nested capturing group
559+ // match and this one.
560+ //
561+ add_json_substring( u_input, &g_end_prev, g_end, &array_items2 );
562+ }
563+ } else {
564+ //
565+ // Add the substring for this capturing group match.
566+ //
567+ add_json_substring( u_input, &g_start, g_end, &array_items2 );
568+ g_end_prev = g_start;
569+ }
570+
571+ GENV_ITEMFACTORY->createJSONArray( item, array_items2 );
572+ array_items->push_back( item );
573+ } // for
574+}
575+
576+static bool add_json_group_match( utf8_string<zstring const> const &u_input,
577+ int m_start, int m_end,
578+ unicode::regex const &regex, int g_count,
579+ vector<int> const &g_parents,
580+ store::Item_t *result ) {
581+ vector<store::Item_t> array_items;
582+ int group = -1, g_end_prev = 0;
583+ add_json_group_match(
584+ u_input, m_start, m_end, regex, g_count, -1, g_parents, &group, &g_end_prev,
585+ &array_items
586+ );
587+ if ( array_items.empty() )
588+ return false;
589+
590+ //
591+ // Add the substring between the end of the last capturing group and the end
592+ // of the match (if any).
593+ //
594+ int g_end_max = 0;
595+ for ( int group = 1; group <= g_count; ++group ) {
596+ int g_start, g_end;
597+ regex.get_group_start_end( &g_start, &g_end, group );
598+ if ( g_end > g_end_max )
599+ g_end_max = g_end;
600+ }
601+ if ( g_end_max && m_end > g_end_max )
602+ add_json_substring( u_input, &g_end_max, m_end, &array_items );
603+
604+ GENV_ITEMFACTORY->createJSONArray( *result, array_items );
605+ return true;
606+}
607+
608+static void add_json_match( utf8_string<zstring const> const &u_input,
609+ int m_start, int m_end,
610+ unicode::regex const &regex, int g_count,
611+ vector<int> const &g_parents,
612+ store::Item_t *result ) {
613+ store::Item_t item;
614+ vector<store::Item_t> keys, values;
615+
616+ zstring temp( "match" );
617+ GENV_ITEMFACTORY->createString( item, temp );
618+ keys.push_back( item );
619+
620+ if ( !add_json_group_match( u_input, m_start, m_end, regex, g_count,
621+ g_parents, &item ) ) {
622+ temp = u_input.substr( m_start, m_end - m_start );
623+ GENV_ITEMFACTORY->createString( item, temp );
624+ }
625+ values.push_back( item );
626+
627+ GENV_ITEMFACTORY->createJSONObject( *result, keys, values );
628+}
629+
630+static void add_json_non_match( utf8_string<zstring const> const &u_input,
631+ int m_start, int m_end,
632+ store::Item_t *result ) {
633+ store::Item_t item;
634+ vector<store::Item_t> keys, values;
635+
636+ zstring temp( "non-match" );
637+ GENV_ITEMFACTORY->createString( item, temp );
638+ keys.push_back( item );
639+
640+ temp = u_input.substr( m_start, m_end - m_start );
641+ GENV_ITEMFACTORY->createString( item, temp );
642+ values.push_back( item );
643+
644+ GENV_ITEMFACTORY->createJSONObject( *result, keys, values );
645+}
646+
647+bool StringAnalyzeStringIterator::nextImpl( store::Item_t& result,
648+ PlanState& planState ) const {
649+ vector<store::Item_t> array_items;
650+ int g_count;
651+ vector<int> g_parents;
652+ store::Item_t item;
653+ zstring input, pattern, lib_pattern, flags;
654+#if STREAM_ANALYZE_STRING
655+ istream *is;
656+ istringstream iss;
657+ mem_streambuf mbuf;
658+#endif
659+ int m_start, m_end, m_end_prev = 0;
660+ unicode::regex regex;
661+ utf8_string<zstring const> u_input;
662+ utf8_string<zstring const>::size_type u_size;
663+
664+ PlanIteratorState *state;
665+ DEFAULT_STACK_INIT(PlanIteratorState, state, planState);
666+
667+ consumeNext( item, theChildren[0].getp(), planState );
668+#if STREAM_ANALYZE_STRING
669+ if ( item->isStreamable() ) {
670+ is = &item->getStream();
671+ } else {
672+#endif
673+ item->getStringValue2( input );
674+ u_input.wrap( input );
675+ u_size = u_input.size();
676+#if STREAM_ANALYZE_STRING
677+ mbuf.set( input.data(), input.size() );
678+ iss.ios::rdbuf( &mbuf );
679+ is = &iss;
680+ }
681+#endif
682+ consumeNext( item, theChildren[1].getp(), planState );
683+ item->getStringValue2( pattern );
684+ if ( theChildren.size() > 2 ) {
685+ consumeNext( item, theChildren[2].getp(), planState );
686+ item->getStringValue2( flags );
687+ }
688+
689+ try {
690+ convert_xquery_re( pattern, &lib_pattern, flags.c_str() );
691+ regex.compile( lib_pattern, flags );
692+ }
693+ catch ( XQueryException &xe ) {
694+ set_source( xe, loc );
695+ throw;
696+ }
697+ if ( regex.match_part( "" ) ) // matching the empty string is illegal
698+ throw XQUERY_EXCEPTION(
699+ err::FORX0003,
700+ ERROR_PARAMS( pattern ),
701+ ERROR_LOC( loc )
702+ );
703+ g_count = regex.get_group_count();
704+ calc_group_parents( pattern, &g_parents );
705+
706+ regex.set_string( input.data(), input.size() );
707+ while ( regex.next_match() ) {
708+ regex.get_group_start_end( &m_start, &m_end );
709+ if ( m_start > m_end_prev ) {
710+ add_json_non_match( u_input, m_end_prev, m_start, &item );
711+ array_items.push_back( item );
712+ }
713+ add_json_match( u_input, m_start, m_end, regex, g_count, g_parents, &item );
714+ array_items.push_back( item );
715+ m_end_prev = m_end;
716+ }
717+ if ( m_end < u_size ) {
718+ add_json_non_match( u_input, m_end, u_size, &item );
719+ array_items.push_back( item );
720+ }
721+ GENV_ITEMFACTORY->createJSONArray( result, array_items );
722+
723+ STACK_PUSH( true, state );
724+ STACK_END( state );
725+}
726+
727+/**
728+ *______________________________________________________________________
729+ *
730+ * http://zorba.io/modules/string
731 * string:materialize
732 */
733-
734 bool StringMaterializeIterator::nextImpl(
735 store::Item_t& result,
736 PlanState& planState) const
737
738=== modified file 'src/runtime/visitors/pregenerated/planiter_visitor.h'
739--- src/runtime/visitors/pregenerated/planiter_visitor.h 2013-09-09 23:47:17 +0000
740+++ src/runtime/visitors/pregenerated/planiter_visitor.h 2013-09-24 00:49:11 +0000
741@@ -735,6 +735,8 @@
742
743 class FnAnalyzeStringIterator;
744
745+ class StringAnalyzeStringIterator;
746+
747 class StringMaterializeIterator;
748
749 class StringIsStreamableIterator;
750@@ -1810,6 +1812,9 @@
751 virtual void beginVisit ( const FnAnalyzeStringIterator& ) = 0;
752 virtual void endVisit ( const FnAnalyzeStringIterator& ) = 0;
753
754+ virtual void beginVisit ( const StringAnalyzeStringIterator& ) = 0;
755+ virtual void endVisit ( const StringAnalyzeStringIterator& ) = 0;
756+
757 virtual void beginVisit ( const StringMaterializeIterator& ) = 0;
758 virtual void endVisit ( const StringMaterializeIterator& ) = 0;
759
760
761=== modified file 'src/runtime/visitors/pregenerated/printer_visitor.cpp'
762--- src/runtime/visitors/pregenerated/printer_visitor.cpp 2013-09-09 23:47:17 +0000
763+++ src/runtime/visitors/pregenerated/printer_visitor.cpp 2013-09-24 00:49:11 +0000
764@@ -4812,6 +4812,20 @@
765 // </FnAnalyzeStringIterator>
766
767
768+// <StringAnalyzeStringIterator>
769+void PrinterVisitor::beginVisit ( const StringAnalyzeStringIterator& a) {
770+ thePrinter.startBeginVisit("StringAnalyzeStringIterator", ++theId);
771+ printCommons( &a, theId );
772+ thePrinter.endBeginVisit( theId );
773+}
774+
775+void PrinterVisitor::endVisit ( const StringAnalyzeStringIterator& ) {
776+ thePrinter.startEndVisit();
777+ thePrinter.endEndVisit();
778+}
779+// </StringAnalyzeStringIterator>
780+
781+
782 // <StringMaterializeIterator>
783 void PrinterVisitor::beginVisit ( const StringMaterializeIterator& a) {
784 thePrinter.startBeginVisit("StringMaterializeIterator", ++theId);
785
786=== modified file 'src/runtime/visitors/pregenerated/printer_visitor.h'
787--- src/runtime/visitors/pregenerated/printer_visitor.h 2013-09-09 23:47:17 +0000
788+++ src/runtime/visitors/pregenerated/printer_visitor.h 2013-09-24 00:49:11 +0000
789@@ -1113,6 +1113,9 @@
790 void beginVisit( const FnAnalyzeStringIterator& );
791 void endVisit ( const FnAnalyzeStringIterator& );
792
793+ void beginVisit( const StringAnalyzeStringIterator& );
794+ void endVisit ( const StringAnalyzeStringIterator& );
795+
796 void beginVisit( const StringMaterializeIterator& );
797 void endVisit ( const StringMaterializeIterator& );
798
799
800=== modified file 'src/util/icu_regex.cpp'
801--- src/util/icu_regex.cpp 2013-06-11 16:13:54 +0000
802+++ src/util/icu_regex.cpp 2013-09-24 00:49:11 +0000
803@@ -648,23 +648,32 @@
804 }
805 }
806
807-int regex::get_group_count() {
808+int regex::get_group_count() const {
809 ZORBA_ASSERT( matcher_ );
810 return matcher_->groupCount();
811 }
812
813-int regex::get_group_start( int group ) {
814+int regex::get_group_start( int group ) const {
815 ZORBA_ASSERT( matcher_ );
816 UErrorCode status = U_ZERO_ERROR;
817 return matcher_->start( group, status );
818 }
819
820-int regex::get_group_end( int group ) {
821+int regex::get_group_end( int group ) const {
822 ZORBA_ASSERT( matcher_ );
823 UErrorCode status = U_ZERO_ERROR;
824 return matcher_->end( group, status );
825 }
826
827+bool regex::get_group_start_end( int *start, int *end, int group ) const {
828+ int const temp = get_group_start( group );
829+ if ( temp == -1 )
830+ return false;
831+ *start = temp;
832+ *end = get_group_end( group );
833+ return true;
834+}
835+
836 bool regex::match_part( string const &s ) {
837 ZORBA_ASSERT( matcher_ );
838 matcher_->reset( s );
839
840=== modified file 'src/util/icu_regex.h'
841--- src/util/icu_regex.h 2013-06-01 00:30:39 +0000
842+++ src/util/icu_regex.h 2013-09-24 00:49:11 +0000
843@@ -428,7 +428,7 @@
844 *
845 * @return Returns said number.
846 */
847- int get_group_count();
848+ int get_group_count() const;
849
850 /**
851 * Gets the start character position of the matched capturing subgroup.
852@@ -438,17 +438,30 @@
853 * @return Returns the start position (zero-based) or -1 if \a group didn't
854 * match.
855 */
856- int get_group_start( int group = 0 );
857+ int get_group_start( int group = 0 ) const;
858
859 /**
860 * Gets the end character position of the matched group.
861 *
862 * @param group The ID of the capturing subgroup [1-N] where N is the result
863 * of get_group_count(), or 0 for the whole match.
864- * @return Returns the end position (zero-based) or -1 if \a group didn't
865- * match.
866- */
867- int get_group_end( int group = 0 );
868+ * @return Returns one past the end position (zero-based) or -1 if \a group
869+ * didn't match.
870+ */
871+ int get_group_end( int group = 0 ) const;
872+
873+ /**
874+ * Gets the start and end character positions of the matched group.
875+ *
876+ * @param start A pointer to an \c int to receive the start position
877+ * (zero-based) or -1 if \a group didn't match.
878+ * @param end A pointer to an \c int to receive one past the end position
879+ * (zero-based) or -1 if \a group didn't match.
880+ * @param group The ID of the capturing subgroup [1-N] where N is the result
881+ * of get_group_count(), or 0 for the whole match.
882+ * @return Returns \c true only if the group matched.
883+ */
884+ bool get_group_start_end( int *start, int *end, int group = 0 ) const;
885
886 /**
887 * Sets the string to work on, without doing matching yet.
888@@ -469,7 +482,7 @@
889 * <code>true</code>.)
890 * @return Returns \c true only if the next match was found.
891 */
892- bool next_match( bool *reached_end );
893+ bool next_match( bool *reached_end = nullptr );
894
895 /////////////////////////////////////////////////////////////////////////////
896
897
898=== modified file 'src/util/zorba_regex.cpp'
899--- src/util/zorba_regex.cpp 2013-04-12 04:34:41 +0000
900+++ src/util/zorba_regex.cpp 2013-09-24 00:49:11 +0000
901@@ -231,15 +231,13 @@
902 return retval;
903 }
904
905-int regex::get_group_count()
906+int regex::get_group_count() const
907 {
908 return (int)regex_matcher->get_indexed_regex_count();
909 }
910
911-bool regex::get_match_start_end_bytes( int groupId, int *start, int *end )
912+bool regex::get_group_start_end( int *start, int *end, int groupId ) const
913 {
914- *start = -1;
915- *end = -1;
916 if(groupId == 0)
917 {
918 *start = m_match_pos;
919
920=== modified file 'src/util/zorba_regex.h'
921--- src/util/zorba_regex.h 2013-06-01 00:30:39 +0000
922+++ src/util/zorba_regex.h 2013-09-24 00:49:11 +0000
923@@ -360,7 +360,7 @@
924 *
925 * @return the number of parenthesized groups in the regular expression
926 */
927- int get_group_count();
928+ int get_group_count() const;
929
930 /**
931 * Get the start position of the matched group.
932@@ -368,13 +368,13 @@
933 * If groupId is non-zero, then the start and end position of that group is returned.
934 * If that group has not been matched, false is returned.
935 *
936+ * @param start to return start position in bytes
937+ * @param end to return end position in bytes
938 * @param groupId the id of the group, either zero for the entire regex,
939 * or [1 .. group_count] for that specific group
940- * @param start to return start position in bytes
941- * @param end to return end position in bytes
942 * @return true if that group exists and has been matched
943 */
944- bool get_match_start_end_bytes( int groupId, int *start, int *end );
945+ bool get_group_start_end( int *start, int *end, int groupId ) const;
946
947 private:
948 regex_engine::CRegexXQuery_regex *regex_matcher;
949
950=== added file 'test/rbkt/ExpQueryResults/zorba/string/AnalyzeString/json-analyze-string-01.xml.res'
951--- test/rbkt/ExpQueryResults/zorba/string/AnalyzeString/json-analyze-string-01.xml.res 1970-01-01 00:00:00 +0000
952+++ test/rbkt/ExpQueryResults/zorba/string/AnalyzeString/json-analyze-string-01.xml.res 2013-09-24 00:49:11 +0000
953@@ -0,0 +1,7 @@
954+[ {
955+ "non-match" : "a"
956+}, {
957+ "match" : "b"
958+}, {
959+ "non-match" : "a"
960+} ]
961
962=== added file 'test/rbkt/ExpQueryResults/zorba/string/AnalyzeString/json-analyze-string-02.xml.res'
963--- test/rbkt/ExpQueryResults/zorba/string/AnalyzeString/json-analyze-string-02.xml.res 1970-01-01 00:00:00 +0000
964+++ test/rbkt/ExpQueryResults/zorba/string/AnalyzeString/json-analyze-string-02.xml.res 2013-09-24 00:49:11 +0000
965@@ -0,0 +1,7 @@
966+[ {
967+ "non-match" : "a"
968+}, {
969+ "match" : [ [ 1, "b" ], "a" ]
970+}, {
971+ "non-match" : "b"
972+} ]
973
974=== added file 'test/rbkt/ExpQueryResults/zorba/string/AnalyzeString/json-analyze-string-03.xml.res'
975--- test/rbkt/ExpQueryResults/zorba/string/AnalyzeString/json-analyze-string-03.xml.res 1970-01-01 00:00:00 +0000
976+++ test/rbkt/ExpQueryResults/zorba/string/AnalyzeString/json-analyze-string-03.xml.res 2013-09-24 00:49:11 +0000
977@@ -0,0 +1,3 @@
978+[ {
979+ "match" : [ [ 1, "b" ], "a", [ 2, "b" ] ]
980+} ]
981
982=== added file 'test/rbkt/ExpQueryResults/zorba/string/AnalyzeString/json-analyze-string-04.xml.res'
983--- test/rbkt/ExpQueryResults/zorba/string/AnalyzeString/json-analyze-string-04.xml.res 1970-01-01 00:00:00 +0000
984+++ test/rbkt/ExpQueryResults/zorba/string/AnalyzeString/json-analyze-string-04.xml.res 2013-09-24 00:49:11 +0000
985@@ -0,0 +1,13 @@
986+[ {
987+ "non-match" : "a"
988+}, {
989+ "match" : [ [ 1, "b" ], "a" ]
990+}, {
991+ "non-match" : "b\n"
992+}, {
993+ "match" : [ [ 1, "b" ], "a" ]
994+}, {
995+ "non-match" : "b"
996+}, {
997+ "match" : [ [ 1, "b" ], "a" ]
998+} ]
999
1000=== added file 'test/rbkt/ExpQueryResults/zorba/string/AnalyzeString/json-analyze-string-05.xml.res'
1001--- test/rbkt/ExpQueryResults/zorba/string/AnalyzeString/json-analyze-string-05.xml.res 1970-01-01 00:00:00 +0000
1002+++ test/rbkt/ExpQueryResults/zorba/string/AnalyzeString/json-analyze-string-05.xml.res 2013-09-24 00:49:11 +0000
1003@@ -0,0 +1,9 @@
1004+[ {
1005+ "non-match" : "ab"
1006+}, {
1007+ "match" : [ [ 1, "ab" ] ]
1008+}, {
1009+ "non-match" : "\nbba"
1010+}, {
1011+ "match" : [ [ 1, "a" ] ]
1012+} ]
1013
1014=== added file 'test/rbkt/ExpQueryResults/zorba/string/AnalyzeString/json-analyze-string-06.xml.res'
1015--- test/rbkt/ExpQueryResults/zorba/string/AnalyzeString/json-analyze-string-06.xml.res 1970-01-01 00:00:00 +0000
1016+++ test/rbkt/ExpQueryResults/zorba/string/AnalyzeString/json-analyze-string-06.xml.res 2013-09-24 00:49:11 +0000
1017@@ -0,0 +1,483 @@
1018+[ {
1019+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1020+}, {
1021+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1022+}, {
1023+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1024+}, {
1025+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1026+}, {
1027+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1028+}, {
1029+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1030+}, {
1031+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1032+}, {
1033+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1034+}, {
1035+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1036+}, {
1037+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1038+}, {
1039+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1040+}, {
1041+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1042+}, {
1043+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1044+}, {
1045+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1046+}, {
1047+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1048+}, {
1049+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1050+}, {
1051+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1052+}, {
1053+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1054+}, {
1055+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1056+}, {
1057+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1058+}, {
1059+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1060+}, {
1061+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1062+}, {
1063+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1064+}, {
1065+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1066+}, {
1067+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1068+}, {
1069+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1070+}, {
1071+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1072+}, {
1073+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1074+}, {
1075+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1076+}, {
1077+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1078+}, {
1079+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1080+}, {
1081+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1082+}, {
1083+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1084+}, {
1085+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1086+}, {
1087+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1088+}, {
1089+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1090+}, {
1091+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1092+}, {
1093+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1094+}, {
1095+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1096+}, {
1097+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1098+}, {
1099+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1100+}, {
1101+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1102+}, {
1103+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1104+}, {
1105+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1106+}, {
1107+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1108+}, {
1109+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1110+}, {
1111+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1112+}, {
1113+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1114+}, {
1115+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1116+}, {
1117+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1118+}, {
1119+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1120+}, {
1121+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1122+}, {
1123+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1124+}, {
1125+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1126+}, {
1127+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1128+}, {
1129+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1130+}, {
1131+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1132+}, {
1133+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1134+}, {
1135+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1136+}, {
1137+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1138+}, {
1139+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1140+}, {
1141+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1142+}, {
1143+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1144+}, {
1145+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1146+}, {
1147+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1148+}, {
1149+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1150+}, {
1151+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1152+}, {
1153+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1154+}, {
1155+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1156+}, {
1157+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1158+}, {
1159+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1160+}, {
1161+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1162+}, {
1163+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1164+}, {
1165+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1166+}, {
1167+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1168+}, {
1169+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1170+}, {
1171+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1172+}, {
1173+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1174+}, {
1175+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1176+}, {
1177+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1178+}, {
1179+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1180+}, {
1181+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1182+}, {
1183+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1184+}, {
1185+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1186+}, {
1187+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1188+}, {
1189+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1190+}, {
1191+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1192+}, {
1193+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1194+}, {
1195+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1196+}, {
1197+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1198+}, {
1199+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1200+}, {
1201+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1202+}, {
1203+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1204+}, {
1205+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1206+}, {
1207+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1208+}, {
1209+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1210+}, {
1211+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1212+}, {
1213+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1214+}, {
1215+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1216+}, {
1217+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1218+}, {
1219+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1220+}, {
1221+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1222+}, {
1223+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1224+}, {
1225+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1226+}, {
1227+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1228+}, {
1229+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1230+}, {
1231+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1232+}, {
1233+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1234+}, {
1235+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1236+}, {
1237+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1238+}, {
1239+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1240+}, {
1241+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1242+}, {
1243+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1244+}, {
1245+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1246+}, {
1247+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1248+}, {
1249+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1250+}, {
1251+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1252+}, {
1253+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1254+}, {
1255+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1256+}, {
1257+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1258+}, {
1259+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1260+}, {
1261+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1262+}, {
1263+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1264+}, {
1265+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1266+}, {
1267+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1268+}, {
1269+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1270+}, {
1271+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1272+}, {
1273+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1274+}, {
1275+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1276+}, {
1277+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1278+}, {
1279+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1280+}, {
1281+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1282+}, {
1283+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1284+}, {
1285+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1286+}, {
1287+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1288+}, {
1289+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1290+}, {
1291+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1292+}, {
1293+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1294+}, {
1295+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1296+}, {
1297+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1298+}, {
1299+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1300+}, {
1301+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1302+}, {
1303+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1304+}, {
1305+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1306+}, {
1307+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1308+}, {
1309+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1310+}, {
1311+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1312+}, {
1313+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1314+}, {
1315+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1316+}, {
1317+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1318+}, {
1319+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1320+}, {
1321+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1322+}, {
1323+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1324+}, {
1325+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1326+}, {
1327+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1328+}, {
1329+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1330+}, {
1331+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1332+}, {
1333+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1334+}, {
1335+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1336+}, {
1337+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1338+}, {
1339+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1340+}, {
1341+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1342+}, {
1343+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1344+}, {
1345+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1346+}, {
1347+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1348+}, {
1349+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1350+}, {
1351+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1352+}, {
1353+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1354+}, {
1355+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1356+}, {
1357+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1358+}, {
1359+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1360+}, {
1361+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1362+}, {
1363+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1364+}, {
1365+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1366+}, {
1367+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1368+}, {
1369+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1370+}, {
1371+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1372+}, {
1373+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1374+}, {
1375+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1376+}, {
1377+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1378+}, {
1379+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1380+}, {
1381+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1382+}, {
1383+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1384+}, {
1385+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1386+}, {
1387+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1388+}, {
1389+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1390+}, {
1391+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1392+}, {
1393+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1394+}, {
1395+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1396+}, {
1397+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1398+}, {
1399+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1400+}, {
1401+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1402+}, {
1403+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1404+}, {
1405+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1406+}, {
1407+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1408+}, {
1409+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1410+}, {
1411+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1412+}, {
1413+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1414+}, {
1415+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1416+}, {
1417+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1418+}, {
1419+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1420+}, {
1421+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1422+}, {
1423+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1424+}, {
1425+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1426+}, {
1427+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1428+}, {
1429+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1430+}, {
1431+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1432+}, {
1433+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1434+}, {
1435+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1436+}, {
1437+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1438+}, {
1439+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1440+}, {
1441+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1442+}, {
1443+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1444+}, {
1445+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1446+}, {
1447+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1448+}, {
1449+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1450+}, {
1451+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1452+}, {
1453+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1454+}, {
1455+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1456+}, {
1457+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1458+}, {
1459+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1460+}, {
1461+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1462+}, {
1463+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1464+}, {
1465+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1466+}, {
1467+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1468+}, {
1469+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1470+}, {
1471+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1472+}, {
1473+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1474+}, {
1475+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1476+}, {
1477+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1478+}, {
1479+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1480+}, {
1481+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1482+}, {
1483+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1484+}, {
1485+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1486+}, {
1487+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1488+}, {
1489+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1490+}, {
1491+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1492+}, {
1493+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1494+}, {
1495+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1496+}, {
1497+ "match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1498+}, {
1499+ "non-match" : "c"
1500+} ]
1501
1502=== added file 'test/rbkt/ExpQueryResults/zorba/string/AnalyzeString/json-analyze-string-07.xml.res'
1503--- test/rbkt/ExpQueryResults/zorba/string/AnalyzeString/json-analyze-string-07.xml.res 1970-01-01 00:00:00 +0000
1504+++ test/rbkt/ExpQueryResults/zorba/string/AnalyzeString/json-analyze-string-07.xml.res 2013-09-24 00:49:11 +0000
1505@@ -0,0 +1,5 @@
1506+[ {
1507+ "match" : [ "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb", [ 1, "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb" ] ]
1508+}, {
1509+ "non-match" : "c"
1510+} ]
1511
1512=== added file 'test/rbkt/ExpQueryResults/zorba/string/AnalyzeString/json-analyze-string-08.xml.res'
1513--- test/rbkt/ExpQueryResults/zorba/string/AnalyzeString/json-analyze-string-08.xml.res 1970-01-01 00:00:00 +0000
1514+++ test/rbkt/ExpQueryResults/zorba/string/AnalyzeString/json-analyze-string-08.xml.res 2013-09-24 00:49:11 +0000
1515@@ -0,0 +1,5 @@
1516+[ {
1517+ "non-match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1518+}, {
1519+ "match" : "c"
1520+} ]
1521
1522=== added file 'test/rbkt/ExpQueryResults/zorba/string/AnalyzeString/json-analyze-string-09.xml.res'
1523--- test/rbkt/ExpQueryResults/zorba/string/AnalyzeString/json-analyze-string-09.xml.res 1970-01-01 00:00:00 +0000
1524+++ test/rbkt/ExpQueryResults/zorba/string/AnalyzeString/json-analyze-string-09.xml.res 2013-09-24 00:49:11 +0000
1525@@ -0,0 +1,5 @@
1526+[ {
1527+ "non-match" : "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1528+}, {
1529+ "match" : "b"
1530+} ]
1531
1532=== added file 'test/rbkt/ExpQueryResults/zorba/string/AnalyzeString/json-analyze-string-11.xml.res'
1533--- test/rbkt/ExpQueryResults/zorba/string/AnalyzeString/json-analyze-string-11.xml.res 1970-01-01 00:00:00 +0000
1534+++ test/rbkt/ExpQueryResults/zorba/string/AnalyzeString/json-analyze-string-11.xml.res 2013-09-24 00:49:11 +0000
1535@@ -0,0 +1,1 @@
1536+[ ]
1537
1538=== added file 'test/rbkt/ExpQueryResults/zorba/string/AnalyzeString/json-analyze-string-12.xml.res'
1539--- test/rbkt/ExpQueryResults/zorba/string/AnalyzeString/json-analyze-string-12.xml.res 1970-01-01 00:00:00 +0000
1540+++ test/rbkt/ExpQueryResults/zorba/string/AnalyzeString/json-analyze-string-12.xml.res 2013-09-24 00:49:11 +0000
1541@@ -0,0 +1,3 @@
1542+[ {
1543+ "match" : [ [ 1, [ 2, "x" ], "y" ], "z" ]
1544+} ]
1545
1546=== added file 'test/rbkt/ExpQueryResults/zorba/string/AnalyzeString/json-analyze-string-13.xml.res'
1547--- test/rbkt/ExpQueryResults/zorba/string/AnalyzeString/json-analyze-string-13.xml.res 1970-01-01 00:00:00 +0000
1548+++ test/rbkt/ExpQueryResults/zorba/string/AnalyzeString/json-analyze-string-13.xml.res 2013-09-24 00:49:11 +0000
1549@@ -0,0 +1,3 @@
1550+[ {
1551+ "match" : [ [ 1, "x", [ 2, "y" ], "z" ] ]
1552+} ]
1553
1554=== added file 'test/rbkt/ExpQueryResults/zorba/string/AnalyzeString/json-analyze-string-14.xml.res'
1555--- test/rbkt/ExpQueryResults/zorba/string/AnalyzeString/json-analyze-string-14.xml.res 1970-01-01 00:00:00 +0000
1556+++ test/rbkt/ExpQueryResults/zorba/string/AnalyzeString/json-analyze-string-14.xml.res 2013-09-24 00:49:11 +0000
1557@@ -0,0 +1,3 @@
1558+[ {
1559+ "match" : [ "x", [ 1, "y", [ 2, "z" ] ] ]
1560+} ]
1561
1562=== added file 'test/rbkt/ExpQueryResults/zorba/string/AnalyzeString/json-analyze-string-15.xml.res'
1563--- test/rbkt/ExpQueryResults/zorba/string/AnalyzeString/json-analyze-string-15.xml.res 1970-01-01 00:00:00 +0000
1564+++ test/rbkt/ExpQueryResults/zorba/string/AnalyzeString/json-analyze-string-15.xml.res 2013-09-24 00:49:11 +0000
1565@@ -0,0 +1,3 @@
1566+[ {
1567+ "match" : [ "a", [ 1, "b", [ 2, "c" ], "d", [ 3, "e" ], "f" ], "g" ]
1568+} ]
1569
1570=== modified file 'test/rbkt/Queries/zorba/string/AnalyzeString/analyze_string12.xq'
1571--- test/rbkt/Queries/zorba/string/AnalyzeString/analyze_string12.xq 2013-02-07 17:24:36 +0000
1572+++ test/rbkt/Queries/zorba/string/AnalyzeString/analyze_string12.xq 2013-09-24 00:49:11 +0000
1573@@ -1,1 +1,1 @@
1574-fn:analyze-string("bacdeeg", "b(a(c)(d(e)(e)g))")
1575\ No newline at end of file
1576+fn:analyze-string("bacdeeg", "b(a(c)(d(e)(e)g))")
1577
1578=== modified file 'test/rbkt/Queries/zorba/string/AnalyzeString/analyze_string13.xq'
1579--- test/rbkt/Queries/zorba/string/AnalyzeString/analyze_string13.xq 2013-02-07 17:24:36 +0000
1580+++ test/rbkt/Queries/zorba/string/AnalyzeString/analyze_string13.xq 2013-09-24 00:49:11 +0000
1581@@ -10,4 +10,3 @@
1582 for $s in $search//fn:group[@nr=8]/fn:string()
1583 return ($s,"
1584 ")
1585-
1586
1587=== modified file 'test/rbkt/Queries/zorba/string/AnalyzeString/analyze_string2.xq'
1588--- test/rbkt/Queries/zorba/string/AnalyzeString/analyze_string2.xq 2013-02-07 17:24:36 +0000
1589+++ test/rbkt/Queries/zorba/string/AnalyzeString/analyze_string2.xq 2013-09-24 00:49:11 +0000
1590@@ -1,1 +1,1 @@
1591-fn:analyze-string("abab", "(b)a")
1592\ No newline at end of file
1593+fn:analyze-string("abab", "(b)a")
1594
1595=== modified file 'test/rbkt/Queries/zorba/string/AnalyzeString/analyze_string3.xq'
1596--- test/rbkt/Queries/zorba/string/AnalyzeString/analyze_string3.xq 2013-02-07 17:24:36 +0000
1597+++ test/rbkt/Queries/zorba/string/AnalyzeString/analyze_string3.xq 2013-09-24 00:49:11 +0000
1598@@ -1,1 +1,1 @@
1599-fn:analyze-string("bab", "(b)a(B)", "i")
1600\ No newline at end of file
1601+fn:analyze-string("bab", "(b)a(B)", "i")
1602
1603=== modified file 'test/rbkt/Queries/zorba/string/AnalyzeString/analyze_string4.xq'
1604--- test/rbkt/Queries/zorba/string/AnalyzeString/analyze_string4.xq 2013-02-07 17:24:36 +0000
1605+++ test/rbkt/Queries/zorba/string/AnalyzeString/analyze_string4.xq 2013-09-24 00:49:11 +0000
1606@@ -1,3 +1,2 @@
1607-fn:analyze-string(
1608-"abab
1609-babba", "(b)a", "m")
1610\ No newline at end of file
1611+fn:analyze-string( "abab
1612+babba", "(b)a", "m" )
1613
1614=== modified file 'test/rbkt/Queries/zorba/string/AnalyzeString/analyze_string7.xq'
1615--- test/rbkt/Queries/zorba/string/AnalyzeString/analyze_string7.xq 2013-02-07 17:24:36 +0000
1616+++ test/rbkt/Queries/zorba/string/AnalyzeString/analyze_string7.xq 2013-09-24 00:49:11 +0000
1617@@ -1,4 +1,4 @@
1618 (: read text file with 240 times aaa...aabbb....bb :)
1619 import module namespace file = "http://expath.org/ns/file";
1620
1621-fn:analyze-string(file:read-text(fn:resolve-uri("text_test1.txt")), "(a+b+)+")
1622\ No newline at end of file
1623+fn:analyze-string(file:read-text(fn:resolve-uri("text_test1.txt")), "(a+b+)+")
1624
1625=== added file 'test/rbkt/Queries/zorba/string/AnalyzeString/json-analyze-string-01.jq'
1626--- test/rbkt/Queries/zorba/string/AnalyzeString/json-analyze-string-01.jq 1970-01-01 00:00:00 +0000
1627+++ test/rbkt/Queries/zorba/string/AnalyzeString/json-analyze-string-01.jq 2013-09-24 00:49:11 +0000
1628@@ -0,0 +1,3 @@
1629+import module namespace s = "http://zorba.io/modules/string";
1630+
1631+s:analyze-string( "aba", "b" )
1632
1633=== added file 'test/rbkt/Queries/zorba/string/AnalyzeString/json-analyze-string-01.spec'
1634--- test/rbkt/Queries/zorba/string/AnalyzeString/json-analyze-string-01.spec 1970-01-01 00:00:00 +0000
1635+++ test/rbkt/Queries/zorba/string/AnalyzeString/json-analyze-string-01.spec 2013-09-24 00:49:11 +0000
1636@@ -0,0 +1,1 @@
1637+Serialization: indent=yes
1638
1639=== added file 'test/rbkt/Queries/zorba/string/AnalyzeString/json-analyze-string-02.jq'
1640--- test/rbkt/Queries/zorba/string/AnalyzeString/json-analyze-string-02.jq 1970-01-01 00:00:00 +0000
1641+++ test/rbkt/Queries/zorba/string/AnalyzeString/json-analyze-string-02.jq 2013-09-24 00:49:11 +0000
1642@@ -0,0 +1,3 @@
1643+import module namespace s = "http://zorba.io/modules/string";
1644+
1645+s:analyze-string( "abab", "(b)a" )
1646
1647=== added file 'test/rbkt/Queries/zorba/string/AnalyzeString/json-analyze-string-02.spec'
1648--- test/rbkt/Queries/zorba/string/AnalyzeString/json-analyze-string-02.spec 1970-01-01 00:00:00 +0000
1649+++ test/rbkt/Queries/zorba/string/AnalyzeString/json-analyze-string-02.spec 2013-09-24 00:49:11 +0000
1650@@ -0,0 +1,1 @@
1651+Serialization: indent=yes
1652
1653=== added file 'test/rbkt/Queries/zorba/string/AnalyzeString/json-analyze-string-03.jq'
1654--- test/rbkt/Queries/zorba/string/AnalyzeString/json-analyze-string-03.jq 1970-01-01 00:00:00 +0000
1655+++ test/rbkt/Queries/zorba/string/AnalyzeString/json-analyze-string-03.jq 2013-09-24 00:49:11 +0000
1656@@ -0,0 +1,3 @@
1657+import module namespace s = "http://zorba.io/modules/string";
1658+
1659+s:analyze-string( "bab", "(b)a(B)", "i" )
1660
1661=== added file 'test/rbkt/Queries/zorba/string/AnalyzeString/json-analyze-string-03.spec'
1662--- test/rbkt/Queries/zorba/string/AnalyzeString/json-analyze-string-03.spec 1970-01-01 00:00:00 +0000
1663+++ test/rbkt/Queries/zorba/string/AnalyzeString/json-analyze-string-03.spec 2013-09-24 00:49:11 +0000
1664@@ -0,0 +1,1 @@
1665+Serialization: indent=yes
1666
1667=== added file 'test/rbkt/Queries/zorba/string/AnalyzeString/json-analyze-string-04.jq'
1668--- test/rbkt/Queries/zorba/string/AnalyzeString/json-analyze-string-04.jq 1970-01-01 00:00:00 +0000
1669+++ test/rbkt/Queries/zorba/string/AnalyzeString/json-analyze-string-04.jq 2013-09-24 00:49:11 +0000
1670@@ -0,0 +1,4 @@
1671+import module namespace s = "http://zorba.io/modules/string";
1672+
1673+s:analyze-string( "abab
1674+babba", "(b)a", "m" )
1675
1676=== added file 'test/rbkt/Queries/zorba/string/AnalyzeString/json-analyze-string-04.spec'
1677--- test/rbkt/Queries/zorba/string/AnalyzeString/json-analyze-string-04.spec 1970-01-01 00:00:00 +0000
1678+++ test/rbkt/Queries/zorba/string/AnalyzeString/json-analyze-string-04.spec 2013-09-24 00:49:11 +0000
1679@@ -0,0 +1,1 @@
1680+Serialization: indent=yes
1681
1682=== added file 'test/rbkt/Queries/zorba/string/AnalyzeString/json-analyze-string-05.jq'
1683--- test/rbkt/Queries/zorba/string/AnalyzeString/json-analyze-string-05.jq 1970-01-01 00:00:00 +0000
1684+++ test/rbkt/Queries/zorba/string/AnalyzeString/json-analyze-string-05.jq 2013-09-24 00:49:11 +0000
1685@@ -0,0 +1,4 @@
1686+import module namespace s = "http://zorba.io/modules/string";
1687+
1688+s:analyze-string( "abab
1689+bbaa", "(ab|a)$", "m" )
1690
1691=== added file 'test/rbkt/Queries/zorba/string/AnalyzeString/json-analyze-string-05.spec'
1692--- test/rbkt/Queries/zorba/string/AnalyzeString/json-analyze-string-05.spec 1970-01-01 00:00:00 +0000
1693+++ test/rbkt/Queries/zorba/string/AnalyzeString/json-analyze-string-05.spec 2013-09-24 00:49:11 +0000
1694@@ -0,0 +1,1 @@
1695+Serialization: indent=yes
1696
1697=== added file 'test/rbkt/Queries/zorba/string/AnalyzeString/json-analyze-string-06.jq'
1698--- test/rbkt/Queries/zorba/string/AnalyzeString/json-analyze-string-06.jq 1970-01-01 00:00:00 +0000
1699+++ test/rbkt/Queries/zorba/string/AnalyzeString/json-analyze-string-06.jq 2013-09-24 00:49:11 +0000
1700@@ -0,0 +1,5 @@
1701+(: read text file with 240 times aaa...aabbb....bb :)
1702+import module namespace file = "http://expath.org/ns/file";
1703+import module namespace s = "http://zorba.io/modules/string";
1704+
1705+s:analyze-string( file:read-text( fn:resolve-uri( "text_test1.txt" ) ), "a+b+" )
1706
1707=== added file 'test/rbkt/Queries/zorba/string/AnalyzeString/json-analyze-string-06.spec'
1708--- test/rbkt/Queries/zorba/string/AnalyzeString/json-analyze-string-06.spec 1970-01-01 00:00:00 +0000
1709+++ test/rbkt/Queries/zorba/string/AnalyzeString/json-analyze-string-06.spec 2013-09-24 00:49:11 +0000
1710@@ -0,0 +1,1 @@
1711+Serialization: indent=yes
1712
1713=== added file 'test/rbkt/Queries/zorba/string/AnalyzeString/json-analyze-string-07.jq'
1714--- test/rbkt/Queries/zorba/string/AnalyzeString/json-analyze-string-07.jq 1970-01-01 00:00:00 +0000
1715+++ test/rbkt/Queries/zorba/string/AnalyzeString/json-analyze-string-07.jq 2013-09-24 00:49:11 +0000
1716@@ -0,0 +1,5 @@
1717+(: read text file with 240 times aaa...aabbb....bb :)
1718+import module namespace file = "http://expath.org/ns/file";
1719+import module namespace s = "http://zorba.io/modules/string";
1720+
1721+s:analyze-string( file:read-text( fn:resolve-uri( "text_test1.txt" ) ), "(a+b+)+" )
1722
1723=== added file 'test/rbkt/Queries/zorba/string/AnalyzeString/json-analyze-string-07.spec'
1724--- test/rbkt/Queries/zorba/string/AnalyzeString/json-analyze-string-07.spec 1970-01-01 00:00:00 +0000
1725+++ test/rbkt/Queries/zorba/string/AnalyzeString/json-analyze-string-07.spec 2013-09-24 00:49:11 +0000
1726@@ -0,0 +1,1 @@
1727+Serialization: indent=yes
1728
1729=== added file 'test/rbkt/Queries/zorba/string/AnalyzeString/json-analyze-string-08.jq'
1730--- test/rbkt/Queries/zorba/string/AnalyzeString/json-analyze-string-08.jq 1970-01-01 00:00:00 +0000
1731+++ test/rbkt/Queries/zorba/string/AnalyzeString/json-analyze-string-08.jq 2013-09-24 00:49:11 +0000
1732@@ -0,0 +1,5 @@
1733+(: read text file with 240 times aaa...aabbb....bb :)
1734+import module namespace file = "http://expath.org/ns/file";
1735+import module namespace s = "http://zorba.io/modules/string";
1736+
1737+s:analyze-string( file:read-text( fn:resolve-uri( "text_test1.txt" ) ), "c" )
1738
1739=== added file 'test/rbkt/Queries/zorba/string/AnalyzeString/json-analyze-string-08.spec'
1740--- test/rbkt/Queries/zorba/string/AnalyzeString/json-analyze-string-08.spec 1970-01-01 00:00:00 +0000
1741+++ test/rbkt/Queries/zorba/string/AnalyzeString/json-analyze-string-08.spec 2013-09-24 00:49:11 +0000
1742@@ -0,0 +1,1 @@
1743+Serialization: indent=yes
1744
1745=== added file 'test/rbkt/Queries/zorba/string/AnalyzeString/json-analyze-string-09.jq'
1746--- test/rbkt/Queries/zorba/string/AnalyzeString/json-analyze-string-09.jq 1970-01-01 00:00:00 +0000
1747+++ test/rbkt/Queries/zorba/string/AnalyzeString/json-analyze-string-09.jq 2013-09-24 00:49:11 +0000
1748@@ -0,0 +1,5 @@
1749+(: read text file with 240 times aaa...aabbb....bb :)
1750+import module namespace file = "http://expath.org/ns/file";
1751+import module namespace s = "http://zorba.io/modules/string";
1752+
1753+s:analyze-string( file:read-text( fn:resolve-uri( "text_test2.txt" ) ), "b$" )
1754
1755=== added file 'test/rbkt/Queries/zorba/string/AnalyzeString/json-analyze-string-09.spec'
1756--- test/rbkt/Queries/zorba/string/AnalyzeString/json-analyze-string-09.spec 1970-01-01 00:00:00 +0000
1757+++ test/rbkt/Queries/zorba/string/AnalyzeString/json-analyze-string-09.spec 2013-09-24 00:49:11 +0000
1758@@ -0,0 +1,1 @@
1759+Serialization: indent=yes
1760
1761=== added file 'test/rbkt/Queries/zorba/string/AnalyzeString/json-analyze-string-11.jq'
1762--- test/rbkt/Queries/zorba/string/AnalyzeString/json-analyze-string-11.jq 1970-01-01 00:00:00 +0000
1763+++ test/rbkt/Queries/zorba/string/AnalyzeString/json-analyze-string-11.jq 2013-09-24 00:49:11 +0000
1764@@ -0,0 +1,4 @@
1765+import module namespace s = "http://zorba.io/modules/string";
1766+declare default element namespace "dummy";
1767+
1768+s:analyze-string( "", "." )
1769
1770=== added file 'test/rbkt/Queries/zorba/string/AnalyzeString/json-analyze-string-11.spec'
1771--- test/rbkt/Queries/zorba/string/AnalyzeString/json-analyze-string-11.spec 1970-01-01 00:00:00 +0000
1772+++ test/rbkt/Queries/zorba/string/AnalyzeString/json-analyze-string-11.spec 2013-09-24 00:49:11 +0000
1773@@ -0,0 +1,1 @@
1774+Serialization: indent=yes
1775
1776=== added file 'test/rbkt/Queries/zorba/string/AnalyzeString/json-analyze-string-12.jq'
1777--- test/rbkt/Queries/zorba/string/AnalyzeString/json-analyze-string-12.jq 1970-01-01 00:00:00 +0000
1778+++ test/rbkt/Queries/zorba/string/AnalyzeString/json-analyze-string-12.jq 2013-09-24 00:49:11 +0000
1779@@ -0,0 +1,3 @@
1780+import module namespace s = "http://zorba.io/modules/string";
1781+
1782+s:analyze-string( "xyz", "((x)y)z" )
1783
1784=== added file 'test/rbkt/Queries/zorba/string/AnalyzeString/json-analyze-string-12.spec'
1785--- test/rbkt/Queries/zorba/string/AnalyzeString/json-analyze-string-12.spec 1970-01-01 00:00:00 +0000
1786+++ test/rbkt/Queries/zorba/string/AnalyzeString/json-analyze-string-12.spec 2013-09-24 00:49:11 +0000
1787@@ -0,0 +1,1 @@
1788+Serialization: indent=yes
1789
1790=== added file 'test/rbkt/Queries/zorba/string/AnalyzeString/json-analyze-string-13.jq'
1791--- test/rbkt/Queries/zorba/string/AnalyzeString/json-analyze-string-13.jq 1970-01-01 00:00:00 +0000
1792+++ test/rbkt/Queries/zorba/string/AnalyzeString/json-analyze-string-13.jq 2013-09-24 00:49:11 +0000
1793@@ -0,0 +1,3 @@
1794+import module namespace s = "http://zorba.io/modules/string";
1795+
1796+s:analyze-string( "xyz", "(x(y)z)" )
1797
1798=== added file 'test/rbkt/Queries/zorba/string/AnalyzeString/json-analyze-string-13.spec'
1799--- test/rbkt/Queries/zorba/string/AnalyzeString/json-analyze-string-13.spec 1970-01-01 00:00:00 +0000
1800+++ test/rbkt/Queries/zorba/string/AnalyzeString/json-analyze-string-13.spec 2013-09-24 00:49:11 +0000
1801@@ -0,0 +1,1 @@
1802+Serialization: indent=yes
1803
1804=== added file 'test/rbkt/Queries/zorba/string/AnalyzeString/json-analyze-string-14.jq'
1805--- test/rbkt/Queries/zorba/string/AnalyzeString/json-analyze-string-14.jq 1970-01-01 00:00:00 +0000
1806+++ test/rbkt/Queries/zorba/string/AnalyzeString/json-analyze-string-14.jq 2013-09-24 00:49:11 +0000
1807@@ -0,0 +1,3 @@
1808+import module namespace s = "http://zorba.io/modules/string";
1809+
1810+s:analyze-string( "xyz", "x(y(z))" )
1811
1812=== added file 'test/rbkt/Queries/zorba/string/AnalyzeString/json-analyze-string-14.spec'
1813--- test/rbkt/Queries/zorba/string/AnalyzeString/json-analyze-string-14.spec 1970-01-01 00:00:00 +0000
1814+++ test/rbkt/Queries/zorba/string/AnalyzeString/json-analyze-string-14.spec 2013-09-24 00:49:11 +0000
1815@@ -0,0 +1,1 @@
1816+Serialization: indent=yes
1817
1818=== added file 'test/rbkt/Queries/zorba/string/AnalyzeString/json-analyze-string-15.jq'
1819--- test/rbkt/Queries/zorba/string/AnalyzeString/json-analyze-string-15.jq 1970-01-01 00:00:00 +0000
1820+++ test/rbkt/Queries/zorba/string/AnalyzeString/json-analyze-string-15.jq 2013-09-24 00:49:11 +0000
1821@@ -0,0 +1,3 @@
1822+import module namespace s = "http://zorba.io/modules/string";
1823+
1824+s:analyze-string( "abcdefg", "a(b(c)d(e)f)g" )
1825
1826=== added file 'test/rbkt/Queries/zorba/string/AnalyzeString/json-analyze-string-15.spec'
1827--- test/rbkt/Queries/zorba/string/AnalyzeString/json-analyze-string-15.spec 1970-01-01 00:00:00 +0000
1828+++ test/rbkt/Queries/zorba/string/AnalyzeString/json-analyze-string-15.spec 2013-09-24 00:49:11 +0000
1829@@ -0,0 +1,1 @@
1830+Serialization: indent=yes

Subscribers

People subscribed via source and target branches