querybuilder 0.7.0 → 0.8.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/.gitignore +2 -1
- data/History.txt +8 -0
- data/Rakefile +3 -2
- data/lib/query_builder/info.rb +1 -1
- data/lib/query_builder/processor.rb +84 -13
- data/lib/query_builder/query.rb +32 -17
- data/lib/querybuilder_ext.c +937 -902
- data/lib/querybuilder_ext.rl +9 -1
- data/lib/querybuilder_rb.rb +704 -679
- data/lib/querybuilder_rb.rl +8 -1
- data/lib/querybuilder_syntax.rl +1 -1
- data/{tasks → lib/tasks}/build.rake +0 -0
- data/querybuilder.gemspec +6 -4
- data/test/database.rb +20 -0
- data/test/mock/dummy_processor.rb +17 -0
- data/test/querybuilder/basic.yml +4 -3
- data/test/querybuilder/errors.yml +9 -0
- data/test/querybuilder/filters.yml +10 -2
- data/test/querybuilder/joins.yml +5 -0
- data/test/test_helper.rb +1 -0
- metadata +6 -4
    
        data/lib/querybuilder_ext.rl
    CHANGED
    
    | @@ -209,6 +209,7 @@ void Init_querybuilder_ext() { | |
| 209 209 |  | 
| 210 210 | 
             
              action goto_expr_p {
         | 
| 211 211 | 
             
                // # remember current machine state 'cs'
         | 
| 212 | 
            +
                par_count = par_count + 1;
         | 
| 212 213 | 
             
                // last << [:par, cs]
         | 
| 213 214 | 
             
                tmp = rb_ary_new();
         | 
| 214 215 | 
             
                rb_ary_push(tmp, _par);
         | 
| @@ -225,6 +226,7 @@ void Init_querybuilder_ext() { | |
| 225 226 | 
             
                // pop_stack(stack, :par_close)
         | 
| 226 227 | 
             
                rb_funcall(self, _pop_stack, 2, stack, _par_close);
         | 
| 227 228 | 
             
                // # reset machine state 'cs'
         | 
| 229 | 
            +
                par_count = par_count - 1;
         | 
| 228 230 | 
             
                // cs = stack.last.delete_at(1)
         | 
| 229 231 | 
             
                tmp = rb_ary_entry(stack, -1);
         | 
| 230 232 | 
             
                tmp = rb_ary_delete_at(tmp, 1);
         | 
| @@ -388,6 +390,7 @@ VALUE rb_parse(VALUE self, VALUE arg) { | |
| 388 390 | 
             
              const char * data = RSTRING_PTR(tmp);
         | 
| 389 391 |  | 
| 390 392 | 
             
              int cs;
         | 
| 393 | 
            +
              int par_count = 0;
         | 
| 391 394 | 
             
              const char * p     = data;
         | 
| 392 395 | 
             
              const char * pe    = data + RSTRING_LEN(tmp);
         | 
| 393 396 | 
             
              const char * eof   = pe;
         | 
| @@ -407,12 +410,17 @@ VALUE rb_parse(VALUE self, VALUE arg) { | |
| 407 410 | 
             
              %% write init;
         | 
| 408 411 | 
             
              %% write exec;
         | 
| 409 412 |  | 
| 410 | 
            -
              // raise QueryBuilder::SyntaxError.new("Syntax error near #{data[p..- | 
| 413 | 
            +
              // raise QueryBuilder::SyntaxError.new("Syntax error near #{data[p..-2].inspect}.") if p != pe
         | 
| 411 414 | 
             
              if (p < pe) {
         | 
| 412 415 | 
             
                p = p - 3;
         | 
| 413 416 | 
             
                if (p < data) p = data;
         | 
| 414 417 | 
             
                rb_raise(rb_SyntaxError, "Syntax error near %s.", RSTRING_PTR(rb_str_inspect(rb_str_new(p , pe - p - 1))));
         | 
| 415 418 | 
             
              }
         | 
| 416 419 |  | 
| 420 | 
            +
              if (par_count > 0) {
         | 
| 421 | 
            +
                // raise QueryBuilder::SyntaxError.new("Missing closing parenthesis in #{data[0..-2].inspect}.")
         | 
| 422 | 
            +
                rb_raise(rb_SyntaxError, "Missing closing parenthesis in %s.", RSTRING_PTR(rb_str_inspect(rb_str_new(data , pe - data - 1))));
         | 
| 423 | 
            +
              }
         | 
| 424 | 
            +
             | 
| 417 425 | 
             
              return rb_ary_entry(stack, 0);
         | 
| 418 426 | 
             
            }
         | 
    
        data/lib/querybuilder_rb.rb
    CHANGED
    
    | @@ -3,7 +3,7 @@ | |
| 3 3 | 
             
            module QueryBuilder
         | 
| 4 4 | 
             
              class Parser
         | 
| 5 5 |  | 
| 6 | 
            -
            # line  | 
| 6 | 
            +
            # line 190 "querybuilder_rb.rl"
         | 
| 7 7 |  | 
| 8 8 |  | 
| 9 9 |  | 
| @@ -42,78 +42,78 @@ class << self | |
| 42 42 | 
             
            	private :_querybuilder_key_offsets, :_querybuilder_key_offsets=
         | 
| 43 43 | 
             
            end
         | 
| 44 44 | 
             
            self._querybuilder_key_offsets = [
         | 
| 45 | 
            -
            	0, 0,  | 
| 46 | 
            -
            	 | 
| 47 | 
            -
            	 | 
| 48 | 
            -
            	 | 
| 49 | 
            -
            	 | 
| 50 | 
            -
            	 | 
| 51 | 
            -
            	 | 
| 52 | 
            -
            	 | 
| 53 | 
            -
            	 | 
| 54 | 
            -
            	 | 
| 55 | 
            -
            	 | 
| 56 | 
            -
            	 | 
| 57 | 
            -
            	 | 
| 58 | 
            -
            	 | 
| 59 | 
            -
            	 | 
| 60 | 
            -
            	 | 
| 61 | 
            -
            	 | 
| 62 | 
            -
            	 | 
| 63 | 
            -
            	 | 
| 64 | 
            -
            	 | 
| 65 | 
            -
            	 | 
| 66 | 
            -
            	 | 
| 67 | 
            -
            	 | 
| 68 | 
            -
            	 | 
| 69 | 
            -
            	 | 
| 70 | 
            -
            	 | 
| 71 | 
            -
            	 | 
| 72 | 
            -
            	 | 
| 73 | 
            -
            	 | 
| 74 | 
            -
            	 | 
| 75 | 
            -
            	 | 
| 76 | 
            -
            	 | 
| 77 | 
            -
            	 | 
| 78 | 
            -
            	 | 
| 79 | 
            -
            	 | 
| 80 | 
            -
            	 | 
| 81 | 
            -
            	 | 
| 82 | 
            -
            	 | 
| 83 | 
            -
            	 | 
| 84 | 
            -
            	 | 
| 85 | 
            -
            	 | 
| 86 | 
            -
            	 | 
| 87 | 
            -
            	 | 
| 88 | 
            -
            	 | 
| 89 | 
            -
            	 | 
| 90 | 
            -
            	 | 
| 91 | 
            -
            	 | 
| 92 | 
            -
            	 | 
| 93 | 
            -
            	 | 
| 94 | 
            -
            	 | 
| 95 | 
            -
            	 | 
| 96 | 
            -
            	 | 
| 97 | 
            -
            	 | 
| 98 | 
            -
            	 | 
| 99 | 
            -
            	 | 
| 100 | 
            -
            	 | 
| 101 | 
            -
            	 | 
| 102 | 
            -
            	 | 
| 103 | 
            -
            	 | 
| 104 | 
            -
            	 | 
| 105 | 
            -
            	 | 
| 106 | 
            -
            	 | 
| 107 | 
            -
            	 | 
| 108 | 
            -
            	 | 
| 109 | 
            -
            	 | 
| 110 | 
            -
            	 | 
| 111 | 
            -
            	 | 
| 112 | 
            -
            	 | 
| 113 | 
            -
            	 | 
| 114 | 
            -
            	 | 
| 115 | 
            -
            	 | 
| 116 | 
            -
            	 | 
| 45 | 
            +
            	0, 0, 10, 14, 17, 18, 19, 22, 
         | 
| 46 | 
            +
            	32, 36, 39, 40, 41, 42, 52, 62, 
         | 
| 47 | 
            +
            	71, 72, 73, 74, 75, 78, 82, 83, 
         | 
| 48 | 
            +
            	92, 101, 112, 113, 114, 115, 116, 122, 
         | 
| 49 | 
            +
            	128, 130, 136, 142, 144, 149, 150, 151, 
         | 
| 50 | 
            +
            	152, 153, 154, 160, 166, 168, 173, 174, 
         | 
| 51 | 
            +
            	175, 176, 177, 178, 179, 180, 189, 198, 
         | 
| 52 | 
            +
            	207, 209, 210, 211, 212, 215, 219, 220, 
         | 
| 53 | 
            +
            	229, 238, 249, 250, 251, 255, 256, 257, 
         | 
| 54 | 
            +
            	258, 259, 268, 277, 288, 297, 306, 317, 
         | 
| 55 | 
            +
            	318, 321, 330, 339, 341, 345, 346, 347, 
         | 
| 56 | 
            +
            	348, 349, 352, 368, 370, 378, 394, 395, 
         | 
| 57 | 
            +
            	398, 401, 403, 403, 403, 412, 421, 430, 
         | 
| 58 | 
            +
            	445, 462, 464, 464, 468, 476, 477, 478, 
         | 
| 59 | 
            +
            	481, 497, 499, 510, 512, 522, 537, 538, 
         | 
| 60 | 
            +
            	539, 548, 549, 552, 555, 556, 557, 558, 
         | 
| 61 | 
            +
            	560, 563, 568, 569, 570, 571, 579, 581, 
         | 
| 62 | 
            +
            	582, 585, 590, 591, 592, 595, 597, 598, 
         | 
| 63 | 
            +
            	601, 602, 603, 604, 605, 606, 607, 608, 
         | 
| 64 | 
            +
            	609, 610, 611, 613, 614, 617, 621, 622, 
         | 
| 65 | 
            +
            	623, 625, 629, 630, 631, 632, 633, 634, 
         | 
| 66 | 
            +
            	636, 637, 638, 639, 640, 641, 644, 660, 
         | 
| 67 | 
            +
            	662, 670, 686, 687, 690, 693, 695, 695, 
         | 
| 68 | 
            +
            	695, 704, 713, 722, 737, 754, 756, 756, 
         | 
| 69 | 
            +
            	760, 768, 769, 770, 773, 789, 791, 802, 
         | 
| 70 | 
            +
            	804, 814, 829, 830, 831, 840, 841, 844, 
         | 
| 71 | 
            +
            	847, 848, 849, 850, 852, 855, 860, 861, 
         | 
| 72 | 
            +
            	862, 863, 871, 873, 874, 877, 882, 883, 
         | 
| 73 | 
            +
            	884, 887, 889, 890, 893, 894, 895, 896, 
         | 
| 74 | 
            +
            	897, 898, 899, 900, 901, 902, 903, 905, 
         | 
| 75 | 
            +
            	906, 909, 913, 914, 915, 917, 921, 922, 
         | 
| 76 | 
            +
            	923, 924, 925, 926, 928, 929, 930, 931, 
         | 
| 77 | 
            +
            	932, 933, 948, 949, 949, 950, 951, 952, 
         | 
| 78 | 
            +
            	967, 968, 968, 977, 978, 979, 980, 981, 
         | 
| 79 | 
            +
            	991, 1000, 1001, 1004, 1013, 1022, 1023, 1024, 
         | 
| 80 | 
            +
            	1025, 1026, 1029, 1045, 1047, 1055, 1071, 1072, 
         | 
| 81 | 
            +
            	1075, 1078, 1080, 1080, 1080, 1089, 1098, 1107, 
         | 
| 82 | 
            +
            	1122, 1139, 1141, 1141, 1145, 1153, 1154, 1155, 
         | 
| 83 | 
            +
            	1158, 1174, 1176, 1187, 1189, 1199, 1214, 1215, 
         | 
| 84 | 
            +
            	1216, 1225, 1226, 1229, 1232, 1233, 1234, 1235, 
         | 
| 85 | 
            +
            	1237, 1240, 1245, 1246, 1247, 1248, 1256, 1258, 
         | 
| 86 | 
            +
            	1259, 1262, 1267, 1268, 1269, 1272, 1274, 1275, 
         | 
| 87 | 
            +
            	1278, 1279, 1280, 1281, 1282, 1283, 1284, 1285, 
         | 
| 88 | 
            +
            	1286, 1287, 1288, 1290, 1291, 1294, 1298, 1299, 
         | 
| 89 | 
            +
            	1300, 1302, 1306, 1307, 1308, 1309, 1310, 1311, 
         | 
| 90 | 
            +
            	1313, 1314, 1315, 1316, 1317, 1318, 1333, 1334, 
         | 
| 91 | 
            +
            	1334, 1350, 1352, 1361, 1383, 1399, 1400, 1403, 
         | 
| 92 | 
            +
            	1406, 1408, 1408, 1408, 1418, 1427, 1436, 1452, 
         | 
| 93 | 
            +
            	1469, 1471, 1471, 1475, 1484, 1501, 1502, 1503, 
         | 
| 94 | 
            +
            	1506, 1507, 1509, 1510, 1513, 1518, 1519, 1520, 
         | 
| 95 | 
            +
            	1521, 1530, 1532, 1533, 1536, 1541, 1542, 1543, 
         | 
| 96 | 
            +
            	1546, 1547, 1548, 1549, 1550, 1551, 1552, 1554, 
         | 
| 97 | 
            +
            	1555, 1558, 1562, 1563, 1564, 1566, 1578, 1580, 
         | 
| 98 | 
            +
            	1591, 1607, 1608, 1609, 1619, 1620, 1621, 1622, 
         | 
| 99 | 
            +
            	1625, 1626, 1627, 1628, 1629, 1630, 1631, 1632, 
         | 
| 100 | 
            +
            	1633, 1634, 1635, 1636, 1637, 1638, 1639, 1640, 
         | 
| 101 | 
            +
            	1641, 1642, 1642, 1652, 1656, 1660, 1665, 1666, 
         | 
| 102 | 
            +
            	1667, 1668, 1678, 1688, 1695, 1696, 1699, 1708, 
         | 
| 103 | 
            +
            	1718, 1719, 1720, 1721, 1722, 1725, 1741, 1743, 
         | 
| 104 | 
            +
            	1752, 1775, 1791, 1792, 1795, 1798, 1800, 1800, 
         | 
| 105 | 
            +
            	1800, 1810, 1819, 1828, 1844, 1861, 1863, 1863, 
         | 
| 106 | 
            +
            	1867, 1876, 1894, 1895, 1896, 1899, 1900, 1902, 
         | 
| 107 | 
            +
            	1904, 1907, 1912, 1913, 1914, 1915, 1924, 1926, 
         | 
| 108 | 
            +
            	1927, 1930, 1935, 1936, 1937, 1940, 1941, 1942, 
         | 
| 109 | 
            +
            	1943, 1944, 1945, 1946, 1948, 1949, 1952, 1956, 
         | 
| 110 | 
            +
            	1957, 1958, 1960, 1972, 1974, 1985, 2001, 2002, 
         | 
| 111 | 
            +
            	2003, 2013, 2014, 2015, 2016, 2019, 2020, 2021, 
         | 
| 112 | 
            +
            	2022, 2023, 2024, 2025, 2026, 2027, 2028, 2029, 
         | 
| 113 | 
            +
            	2030, 2031, 2032, 2033, 2034, 2035, 2036, 2036, 
         | 
| 114 | 
            +
            	2045, 2054, 2065, 2072, 2078, 2083, 2087, 2090, 
         | 
| 115 | 
            +
            	2101, 2108, 2131, 2149, 2172, 2195, 2213, 2236, 
         | 
| 116 | 
            +
            	2247, 2258, 2281, 2299, 2322, 2322
         | 
| 117 117 | 
             
            ]
         | 
| 118 118 |  | 
| 119 119 | 
             
            class << self
         | 
| @@ -121,19 +121,20 @@ class << self | |
| 121 121 | 
             
            	private :_querybuilder_trans_keys, :_querybuilder_trans_keys=
         | 
| 122 122 | 
             
            end
         | 
| 123 123 | 
             
            self._querybuilder_trans_keys = [
         | 
| 124 | 
            -
            	32, 40, 95, 9, 10, 65, 90,  | 
| 125 | 
            -
            	122, 32, 41, 9, 10, 32, 9,  | 
| 126 | 
            -
            	110, 100, 32, 9, 10, 32, 40,  | 
| 127 | 
            -
            	9, 10, 65, 90, 97, 122,  | 
| 128 | 
            -
            	9, 10, 32, 9, 10, 114,  | 
| 129 | 
            -
            	 | 
| 130 | 
            -
            	 | 
| 131 | 
            -
            	 | 
| 132 | 
            -
            	 | 
| 133 | 
            -
            	 | 
| 134 | 
            -
            	9, 10,  | 
| 135 | 
            -
            	 | 
| 136 | 
            -
            	 | 
| 124 | 
            +
            	32, 40, 58, 95, 9, 10, 65, 90, 
         | 
| 125 | 
            +
            	97, 122, 32, 41, 9, 10, 32, 9, 
         | 
| 126 | 
            +
            	10, 110, 100, 32, 9, 10, 32, 40, 
         | 
| 127 | 
            +
            	58, 95, 9, 10, 65, 90, 97, 122, 
         | 
| 128 | 
            +
            	32, 41, 9, 10, 32, 9, 10, 114, 
         | 
| 129 | 
            +
            	111, 109, 32, 40, 58, 95, 9, 10, 
         | 
| 130 | 
            +
            	65, 90, 97, 122, 32, 40, 58, 95, 
         | 
| 131 | 
            +
            	9, 10, 65, 90, 97, 122, 32, 58, 
         | 
| 132 | 
            +
            	95, 9, 10, 65, 90, 97, 122, 114, 
         | 
| 133 | 
            +
            	111, 117, 112, 32, 9, 10, 32, 98, 
         | 
| 134 | 
            +
            	9, 10, 121, 32, 58, 95, 9, 10, 
         | 
| 135 | 
            +
            	65, 90, 97, 122, 32, 58, 95, 9, 
         | 
| 136 | 
            +
            	10, 65, 90, 97, 122, 32, 44, 46, 
         | 
| 137 | 
            +
            	58, 95, 9, 10, 65, 90, 97, 122, 
         | 
| 137 138 | 
             
            	105, 109, 105, 116, 32, 45, 9, 10, 
         | 
| 138 139 | 
             
            	48, 57, 32, 45, 9, 10, 48, 57, 
         | 
| 139 140 | 
             
            	48, 57, 32, 44, 9, 10, 48, 57, 
         | 
| @@ -142,129 +143,50 @@ self._querybuilder_trans_keys = [ | |
| 142 143 | 
             
            	101, 116, 32, 45, 9, 10, 48, 57, 
         | 
| 143 144 | 
             
            	32, 45, 9, 10, 48, 57, 48, 57, 
         | 
| 144 145 | 
             
            	32, 9, 10, 48, 57, 97, 103, 105, 
         | 
| 145 | 
            -
            	110, 97, 116, 101, 32, 95, 9,  | 
| 146 | 
            -
            	65, 90, 97, 122, 32,  | 
| 147 | 
            -
            	65, 90, 97, 122, 32,  | 
| 148 | 
            -
            	 | 
| 149 | 
            -
            	114,  | 
| 150 | 
            -
            	 | 
| 151 | 
            -
            	 | 
| 152 | 
            -
            	 | 
| 153 | 
            -
            	 | 
| 154 | 
            -
            	 | 
| 155 | 
            -
            	 | 
| 146 | 
            +
            	110, 97, 116, 101, 32, 58, 95, 9, 
         | 
| 147 | 
            +
            	10, 65, 90, 97, 122, 32, 58, 95, 
         | 
| 148 | 
            +
            	9, 10, 65, 90, 97, 122, 32, 58, 
         | 
| 149 | 
            +
            	95, 9, 10, 65, 90, 97, 122, 102, 
         | 
| 150 | 
            +
            	114, 100, 101, 114, 32, 9, 10, 32, 
         | 
| 151 | 
            +
            	98, 9, 10, 121, 32, 58, 95, 9, 
         | 
| 152 | 
            +
            	10, 65, 90, 97, 122, 32, 58, 95, 
         | 
| 153 | 
            +
            	9, 10, 65, 90, 97, 122, 32, 44, 
         | 
| 154 | 
            +
            	46, 58, 95, 9, 10, 65, 90, 97, 
         | 
| 155 | 
            +
            	122, 83, 67, 32, 44, 9, 10, 69, 
         | 
| 156 | 
            +
            	115, 99, 101, 32, 58, 95, 9, 10, 
         | 
| 157 | 
            +
            	65, 90, 97, 122, 32, 58, 95, 9, 
         | 
| 156 158 | 
             
            	10, 65, 90, 97, 122, 32, 44, 46, 
         | 
| 157 | 
            -
            	95, 9, 10, 65, 90, 97, 122,  | 
| 158 | 
            -
            	95, 9, 10, 65, 90, 97,  | 
| 159 | 
            -
            	 | 
| 160 | 
            -
            	 | 
| 161 | 
            -
            	 | 
| 162 | 
            -
            	10,  | 
| 163 | 
            -
            	 | 
| 164 | 
            -
            	 | 
| 165 | 
            -
            	 | 
| 166 | 
            -
            	 | 
| 167 | 
            -
            	 | 
| 168 | 
            -
            	 | 
| 169 | 
            -
            	 | 
| 159 | 
            +
            	58, 95, 9, 10, 65, 90, 97, 122, 
         | 
| 160 | 
            +
            	32, 58, 95, 9, 10, 65, 90, 97, 
         | 
| 161 | 
            +
            	122, 32, 58, 95, 9, 10, 65, 90, 
         | 
| 162 | 
            +
            	97, 122, 32, 44, 46, 58, 95, 9, 
         | 
| 163 | 
            +
            	10, 65, 90, 97, 122, 110, 32, 9, 
         | 
| 164 | 
            +
            	10, 32, 58, 95, 9, 10, 65, 90, 
         | 
| 165 | 
            +
            	97, 122, 32, 58, 95, 9, 10, 65, 
         | 
| 166 | 
            +
            	90, 97, 122, 102, 114, 32, 100, 9, 
         | 
| 167 | 
            +
            	10, 104, 101, 114, 101, 32, 9, 10, 
         | 
| 168 | 
            +
            	32, 34, 35, 39, 40, 45, 58, 95, 
         | 
| 169 | 
            +
            	9, 10, 48, 57, 65, 90, 97, 122, 
         | 
| 170 | 
            +
            	34, 92, 32, 43, 45, 61, 9, 10, 
         | 
| 171 | 
            +
            	60, 62, 32, 34, 35, 39, 40, 45, 
         | 
| 172 | 
            +
            	58, 95, 9, 10, 48, 57, 65, 90, 
         | 
| 170 173 | 
             
            	97, 122, 123, 34, 92, 125, 34, 92, 
         | 
| 171 174 | 
             
            	125, 34, 92, 32, 43, 45, 46, 61, 
         | 
| 172 | 
            -
            	9, 10, 60, 62, 32, 95, 9,  | 
| 173 | 
            -
            	65, 90, 97, 122, 32,  | 
| 174 | 
            -
            	65, 90, 97, 122, 32, 43,  | 
| 175 | 
            -
            	 | 
| 176 | 
            -
            	 | 
| 177 | 
            -
            	 | 
| 178 | 
            -
            	97, 122, 39, 92, 32, 41, 9, 10, 
         | 
| 179 | 
            -
            	32, 43, 45, 61, 9, 10, 60, 62, 
         | 
| 180 | 
            -
            	110, 100, 32, 9, 10, 32, 34, 35, 
         | 
| 181 | 
            -
            	39, 40, 45, 95, 9, 10, 48, 57, 
         | 
| 182 | 
            -
            	65, 90, 97, 122, 48, 57, 32, 43, 
         | 
| 183 | 
            -
            	45, 46, 61, 9, 10, 48, 57, 60, 
         | 
| 184 | 
            -
            	62, 48, 57, 32, 43, 45, 61, 9, 
         | 
| 185 | 
            -
            	10, 48, 57, 60, 62, 32, 43, 45, 
         | 
| 186 | 
            -
            	46, 61, 95, 9, 10, 60, 62, 65, 
         | 
| 187 | 
            -
            	90, 97, 122, 97, 121, 32, 43, 45, 
         | 
| 188 | 
            -
            	61, 115, 9, 10, 60, 62, 113, 32, 
         | 
| 189 | 
            -
            	9, 10, 101, 114, 116, 111, 117, 114, 
         | 
| 190 | 
            -
            	110, 115, 32, 9, 10, 32, 78, 110, 
         | 
| 191 | 
            -
            	9, 10, 85, 76, 76, 32, 43, 45, 
         | 
| 192 | 
            -
            	61, 9, 10, 60, 62, 111, 117, 116, 
         | 
| 193 | 
            -
            	32, 9, 10, 32, 78, 110, 9, 10, 
         | 
| 194 | 
            -
            	108, 108, 101, 105, 116, 107, 109, 101, 
         | 
| 195 | 
            -
            	97, 105, 111, 116, 99, 104, 110, 117, 
         | 
| 196 | 
            -
            	116, 101, 110, 116, 104, 101, 111, 116, 
         | 
| 197 | 
            -
            	32, 9, 10, 32, 108, 9, 10, 105, 
         | 
| 198 | 
            -
            	107, 102, 114, 32, 100, 9, 10, 101, 
         | 
| 199 | 
            -
            	99, 111, 110, 100, 101, 104, 101, 107, 
         | 
| 200 | 
            -
            	101, 114, 101, 32, 9, 10, 32, 34, 
         | 
| 201 | 
            -
            	35, 39, 40, 45, 95, 9, 10, 48, 
         | 
| 202 | 
            -
            	57, 65, 90, 97, 122, 34, 92, 32, 
         | 
| 203 | 
            -
            	43, 45, 61, 9, 10, 60, 62, 32, 
         | 
| 204 | 
            -
            	34, 35, 39, 40, 45, 95, 9, 10, 
         | 
| 205 | 
            -
            	48, 57, 65, 90, 97, 122, 123, 34, 
         | 
| 206 | 
            -
            	92, 125, 34, 92, 125, 34, 92, 32, 
         | 
| 207 | 
            -
            	43, 45, 46, 61, 9, 10, 60, 62, 
         | 
| 208 | 
            -
            	32, 95, 9, 10, 65, 90, 97, 122, 
         | 
| 209 | 
            -
            	32, 95, 9, 10, 65, 90, 97, 122, 
         | 
| 210 | 
            -
            	32, 43, 45, 46, 61, 95, 9, 10, 
         | 
| 211 | 
            -
            	60, 62, 65, 90, 97, 122, 32, 34, 
         | 
| 212 | 
            -
            	35, 39, 40, 45, 61, 95, 9, 10, 
         | 
| 175 | 
            +
            	9, 10, 60, 62, 32, 58, 95, 9, 
         | 
| 176 | 
            +
            	10, 65, 90, 97, 122, 32, 58, 95, 
         | 
| 177 | 
            +
            	9, 10, 65, 90, 97, 122, 32, 43, 
         | 
| 178 | 
            +
            	45, 46, 58, 61, 95, 9, 10, 60, 
         | 
| 179 | 
            +
            	62, 65, 90, 97, 122, 32, 34, 35, 
         | 
| 180 | 
            +
            	39, 40, 45, 58, 61, 95, 9, 10, 
         | 
| 213 181 | 
             
            	48, 57, 65, 90, 97, 122, 39, 92, 
         | 
| 214 182 | 
             
            	32, 41, 9, 10, 32, 43, 45, 61, 
         | 
| 215 183 | 
             
            	9, 10, 60, 62, 110, 100, 32, 9, 
         | 
| 216 | 
            -
            	10, 32, 34, 35, 39, 40, 45,  | 
| 217 | 
            -
            	9, 10, 48, 57, 65, 90, 97,  | 
| 218 | 
            -
            	48, 57, 32, 43, 45, 46, 61,  | 
| 219 | 
            -
            	10, 48, 57, 60, 62, 48, 57,  | 
| 220 | 
            -
            	43, 45, 61, 9, 10, 48, 57,  | 
| 221 | 
            -
            	62, 32, 43, 45, 46,  | 
| 222 | 
            -
            	10, 60, 62, 65, 90, 97, 122, 97, 
         | 
| 223 | 
            -
            	121, 32, 43, 45, 61, 115, 9, 10, 
         | 
| 224 | 
            -
            	60, 62, 113, 32, 9, 10, 101, 114, 
         | 
| 225 | 
            -
            	116, 111, 117, 114, 110, 115, 32, 9, 
         | 
| 226 | 
            -
            	10, 32, 78, 110, 9, 10, 85, 76, 
         | 
| 227 | 
            -
            	76, 32, 43, 45, 61, 9, 10, 60, 
         | 
| 228 | 
            -
            	62, 111, 117, 116, 32, 9, 10, 32, 
         | 
| 229 | 
            -
            	78, 110, 9, 10, 108, 108, 101, 105, 
         | 
| 230 | 
            -
            	116, 107, 109, 101, 97, 105, 111, 116, 
         | 
| 231 | 
            -
            	99, 104, 110, 117, 116, 101, 110, 116, 
         | 
| 232 | 
            -
            	104, 101, 111, 116, 32, 9, 10, 32, 
         | 
| 233 | 
            -
            	108, 9, 10, 105, 107, 102, 114, 32, 
         | 
| 234 | 
            -
            	100, 9, 10, 101, 99, 111, 110, 100, 
         | 
| 235 | 
            -
            	101, 104, 101, 107, 101, 97, 97, 32, 
         | 
| 236 | 
            -
            	43, 45, 46, 61, 95, 9, 10, 60, 
         | 
| 237 | 
            -
            	62, 65, 90, 97, 122, 101, 101, 97, 
         | 
| 238 | 
            -
            	97, 32, 43, 45, 46, 61, 95, 9, 
         | 
| 239 | 
            -
            	10, 60, 62, 65, 90, 97, 122, 101, 
         | 
| 240 | 
            -
            	32, 95, 9, 10, 65, 90, 97, 122, 
         | 
| 241 | 
            -
            	104, 114, 111, 109, 32, 40, 95, 9, 
         | 
| 242 | 
            -
            	10, 65, 90, 97, 122, 32, 95, 9, 
         | 
| 243 | 
            -
            	10, 65, 90, 97, 122, 110, 32, 9, 
         | 
| 244 | 
            -
            	10, 32, 95, 9, 10, 65, 90, 97, 
         | 
| 245 | 
            -
            	122, 32, 95, 9, 10, 65, 90, 97, 
         | 
| 246 | 
            -
            	122, 104, 101, 114, 101, 32, 9, 10, 
         | 
| 247 | 
            -
            	32, 34, 35, 39, 40, 45, 95, 9, 
         | 
| 248 | 
            -
            	10, 48, 57, 65, 90, 97, 122, 34, 
         | 
| 249 | 
            -
            	92, 32, 43, 45, 61, 9, 10, 60, 
         | 
| 250 | 
            -
            	62, 32, 34, 35, 39, 40, 45, 95, 
         | 
| 251 | 
            -
            	9, 10, 48, 57, 65, 90, 97, 122, 
         | 
| 252 | 
            -
            	123, 34, 92, 125, 34, 92, 125, 34, 
         | 
| 253 | 
            -
            	92, 32, 43, 45, 46, 61, 9, 10, 
         | 
| 254 | 
            -
            	60, 62, 32, 95, 9, 10, 65, 90, 
         | 
| 255 | 
            -
            	97, 122, 32, 95, 9, 10, 65, 90, 
         | 
| 256 | 
            -
            	97, 122, 32, 43, 45, 46, 61, 95, 
         | 
| 257 | 
            -
            	9, 10, 60, 62, 65, 90, 97, 122, 
         | 
| 258 | 
            -
            	32, 34, 35, 39, 40, 45, 61, 95, 
         | 
| 259 | 
            -
            	9, 10, 48, 57, 65, 90, 97, 122, 
         | 
| 260 | 
            -
            	39, 92, 32, 41, 9, 10, 32, 43, 
         | 
| 261 | 
            -
            	45, 61, 9, 10, 60, 62, 110, 100, 
         | 
| 262 | 
            -
            	32, 9, 10, 32, 34, 35, 39, 40, 
         | 
| 263 | 
            -
            	45, 95, 9, 10, 48, 57, 65, 90, 
         | 
| 264 | 
            -
            	97, 122, 48, 57, 32, 43, 45, 46, 
         | 
| 265 | 
            -
            	61, 9, 10, 48, 57, 60, 62, 48, 
         | 
| 266 | 
            -
            	57, 32, 43, 45, 61, 9, 10, 48, 
         | 
| 267 | 
            -
            	57, 60, 62, 32, 43, 45, 46, 61, 
         | 
| 184 | 
            +
            	10, 32, 34, 35, 39, 40, 45, 58, 
         | 
| 185 | 
            +
            	95, 9, 10, 48, 57, 65, 90, 97, 
         | 
| 186 | 
            +
            	122, 48, 57, 32, 43, 45, 46, 61, 
         | 
| 187 | 
            +
            	9, 10, 48, 57, 60, 62, 48, 57, 
         | 
| 188 | 
            +
            	32, 43, 45, 61, 9, 10, 48, 57, 
         | 
| 189 | 
            +
            	60, 62, 32, 43, 45, 46, 58, 61, 
         | 
| 268 190 | 
             
            	95, 9, 10, 60, 62, 65, 90, 97, 
         | 
| 269 191 | 
             
            	122, 97, 121, 32, 43, 45, 61, 115, 
         | 
| 270 192 | 
             
            	9, 10, 60, 62, 113, 32, 9, 10, 
         | 
| @@ -278,72 +200,159 @@ self._querybuilder_trans_keys = [ | |
| 278 200 | 
             
            	110, 116, 104, 101, 111, 116, 32, 9, 
         | 
| 279 201 | 
             
            	10, 32, 108, 9, 10, 105, 107, 102, 
         | 
| 280 202 | 
             
            	114, 32, 100, 9, 10, 101, 99, 111, 
         | 
| 281 | 
            -
            	110, 100, 101, 104, 101, 107, 101,  | 
| 282 | 
            -
            	 | 
| 203 | 
            +
            	110, 100, 101, 104, 101, 107, 101, 114, 
         | 
| 204 | 
            +
            	101, 32, 9, 10, 32, 34, 35, 39, 
         | 
| 205 | 
            +
            	40, 45, 58, 95, 9, 10, 48, 57, 
         | 
| 206 | 
            +
            	65, 90, 97, 122, 34, 92, 32, 43, 
         | 
| 207 | 
            +
            	45, 61, 9, 10, 60, 62, 32, 34, 
         | 
| 208 | 
            +
            	35, 39, 40, 45, 58, 95, 9, 10, 
         | 
| 209 | 
            +
            	48, 57, 65, 90, 97, 122, 123, 34, 
         | 
| 210 | 
            +
            	92, 125, 34, 92, 125, 34, 92, 32, 
         | 
| 211 | 
            +
            	43, 45, 46, 61, 9, 10, 60, 62, 
         | 
| 212 | 
            +
            	32, 58, 95, 9, 10, 65, 90, 97, 
         | 
| 213 | 
            +
            	122, 32, 58, 95, 9, 10, 65, 90, 
         | 
| 214 | 
            +
            	97, 122, 32, 43, 45, 46, 58, 61, 
         | 
| 215 | 
            +
            	95, 9, 10, 60, 62, 65, 90, 97, 
         | 
| 216 | 
            +
            	122, 32, 34, 35, 39, 40, 45, 58, 
         | 
| 217 | 
            +
            	61, 95, 9, 10, 48, 57, 65, 90, 
         | 
| 218 | 
            +
            	97, 122, 39, 92, 32, 41, 9, 10, 
         | 
| 219 | 
            +
            	32, 43, 45, 61, 9, 10, 60, 62, 
         | 
| 220 | 
            +
            	110, 100, 32, 9, 10, 32, 34, 35, 
         | 
| 221 | 
            +
            	39, 40, 45, 58, 95, 9, 10, 48, 
         | 
| 222 | 
            +
            	57, 65, 90, 97, 122, 48, 57, 32, 
         | 
| 223 | 
            +
            	43, 45, 46, 61, 9, 10, 48, 57, 
         | 
| 224 | 
            +
            	60, 62, 48, 57, 32, 43, 45, 61, 
         | 
| 225 | 
            +
            	9, 10, 48, 57, 60, 62, 32, 43, 
         | 
| 226 | 
            +
            	45, 46, 58, 61, 95, 9, 10, 60, 
         | 
| 227 | 
            +
            	62, 65, 90, 97, 122, 97, 121, 32, 
         | 
| 228 | 
            +
            	43, 45, 61, 115, 9, 10, 60, 62, 
         | 
| 229 | 
            +
            	113, 32, 9, 10, 101, 114, 116, 111, 
         | 
| 230 | 
            +
            	117, 114, 110, 115, 32, 9, 10, 32, 
         | 
| 231 | 
            +
            	78, 110, 9, 10, 85, 76, 76, 32, 
         | 
| 232 | 
            +
            	43, 45, 61, 9, 10, 60, 62, 111, 
         | 
| 233 | 
            +
            	117, 116, 32, 9, 10, 32, 78, 110, 
         | 
| 234 | 
            +
            	9, 10, 108, 108, 101, 105, 116, 107, 
         | 
| 235 | 
            +
            	109, 101, 97, 105, 111, 116, 99, 104, 
         | 
| 236 | 
            +
            	110, 117, 116, 101, 110, 116, 104, 101, 
         | 
| 237 | 
            +
            	111, 116, 32, 9, 10, 32, 108, 9, 
         | 
| 238 | 
            +
            	10, 105, 107, 102, 114, 32, 100, 9, 
         | 
| 239 | 
            +
            	10, 101, 99, 111, 110, 100, 101, 104, 
         | 
| 240 | 
            +
            	101, 107, 101, 97, 97, 32, 43, 45, 
         | 
| 241 | 
            +
            	46, 58, 61, 95, 9, 10, 60, 62, 
         | 
| 242 | 
            +
            	65, 90, 97, 122, 101, 101, 97, 97, 
         | 
| 243 | 
            +
            	32, 43, 45, 46, 58, 61, 95, 9, 
         | 
| 283 244 | 
             
            	10, 60, 62, 65, 90, 97, 122, 101, 
         | 
| 284 | 
            -
            	32,  | 
| 285 | 
            -
            	 | 
| 286 | 
            -
            	 | 
| 287 | 
            -
            	 | 
| 288 | 
            -
            	 | 
| 289 | 
            -
            	 | 
| 290 | 
            -
            	 | 
| 245 | 
            +
            	32, 58, 95, 9, 10, 65, 90, 97, 
         | 
| 246 | 
            +
            	122, 104, 114, 111, 109, 32, 40, 58, 
         | 
| 247 | 
            +
            	95, 9, 10, 65, 90, 97, 122, 32, 
         | 
| 248 | 
            +
            	58, 95, 9, 10, 65, 90, 97, 122, 
         | 
| 249 | 
            +
            	110, 32, 9, 10, 32, 58, 95, 9, 
         | 
| 250 | 
            +
            	10, 65, 90, 97, 122, 32, 58, 95, 
         | 
| 251 | 
            +
            	9, 10, 65, 90, 97, 122, 104, 101, 
         | 
| 252 | 
            +
            	114, 101, 32, 9, 10, 32, 34, 35, 
         | 
| 253 | 
            +
            	39, 40, 45, 58, 95, 9, 10, 48, 
         | 
| 254 | 
            +
            	57, 65, 90, 97, 122, 34, 92, 32, 
         | 
| 255 | 
            +
            	43, 45, 61, 9, 10, 60, 62, 32, 
         | 
| 256 | 
            +
            	34, 35, 39, 40, 45, 58, 95, 9, 
         | 
| 291 257 | 
             
            	10, 48, 57, 65, 90, 97, 122, 123, 
         | 
| 292 258 | 
             
            	34, 92, 125, 34, 92, 125, 34, 92, 
         | 
| 293 | 
            -
            	32,  | 
| 294 | 
            -
            	 | 
| 295 | 
            -
            	97, 122, 32, 95, 9, 10, 65,  | 
| 296 | 
            -
            	97, 122, 32,  | 
| 297 | 
            -
            	95, 9, 10, 60, 62, 65, 90, 97, 
         | 
| 298 | 
            -
            	122, 32, 34, 35, 39, 40, 45, 61, 
         | 
| 299 | 
            -
            	95, 9, 10, 48, 57, 65, 90, 97, 
         | 
| 300 | 
            -
            	122, 39, 92, 32, 41, 9, 10, 32, 
         | 
| 301 | 
            -
            	41, 43, 45, 61, 9, 10, 60, 62, 
         | 
| 302 | 
            -
            	32, 41, 43, 45, 61, 97, 101, 103, 
         | 
| 303 | 
            -
            	105, 108, 109, 110, 111, 9, 10, 60, 
         | 
| 304 | 
            -
            	62, 110, 100, 32, 9, 10, 113, 101, 
         | 
| 305 | 
            -
            	116, 115, 32, 9, 10, 32, 78, 110, 
         | 
| 306 | 
            -
            	9, 10, 85, 76, 76, 32, 41, 43, 
         | 
| 307 | 
            -
            	45, 61, 9, 10, 60, 62, 111, 117, 
         | 
| 308 | 
            -
            	116, 32, 9, 10, 32, 78, 110, 9, 
         | 
| 309 | 
            -
            	10, 108, 108, 101, 105, 116, 107, 101, 
         | 
| 310 | 
            -
            	97, 116, 99, 104, 101, 111, 116, 32, 
         | 
| 311 | 
            -
            	9, 10, 32, 108, 9, 10, 105, 114, 
         | 
| 312 | 
            -
            	48, 57, 32, 41, 43, 45, 46, 61, 
         | 
| 313 | 
            -
            	9, 10, 48, 57, 60, 62, 48, 57, 
         | 
| 314 | 
            -
            	32, 41, 43, 45, 61, 9, 10, 48, 
         | 
| 315 | 
            -
            	57, 60, 62, 32, 41, 43, 45, 46, 
         | 
| 259 | 
            +
            	32, 43, 45, 46, 61, 9, 10, 60, 
         | 
| 260 | 
            +
            	62, 32, 58, 95, 9, 10, 65, 90, 
         | 
| 261 | 
            +
            	97, 122, 32, 58, 95, 9, 10, 65, 
         | 
| 262 | 
            +
            	90, 97, 122, 32, 43, 45, 46, 58, 
         | 
| 316 263 | 
             
            	61, 95, 9, 10, 60, 62, 65, 90, 
         | 
| 317 | 
            -
            	97, 122,  | 
| 318 | 
            -
            	61,  | 
| 319 | 
            -
            	 | 
| 320 | 
            -
            	 | 
| 321 | 
            -
            	 | 
| 264 | 
            +
            	97, 122, 32, 34, 35, 39, 40, 45, 
         | 
| 265 | 
            +
            	58, 61, 95, 9, 10, 48, 57, 65, 
         | 
| 266 | 
            +
            	90, 97, 122, 39, 92, 32, 41, 9, 
         | 
| 267 | 
            +
            	10, 32, 43, 45, 61, 9, 10, 60, 
         | 
| 268 | 
            +
            	62, 110, 100, 32, 9, 10, 32, 34, 
         | 
| 269 | 
            +
            	35, 39, 40, 45, 58, 95, 9, 10, 
         | 
| 270 | 
            +
            	48, 57, 65, 90, 97, 122, 48, 57, 
         | 
| 271 | 
            +
            	32, 43, 45, 46, 61, 9, 10, 48, 
         | 
| 272 | 
            +
            	57, 60, 62, 48, 57, 32, 43, 45, 
         | 
| 273 | 
            +
            	61, 9, 10, 48, 57, 60, 62, 32, 
         | 
| 274 | 
            +
            	43, 45, 46, 58, 61, 95, 9, 10, 
         | 
| 275 | 
            +
            	60, 62, 65, 90, 97, 122, 97, 121, 
         | 
| 276 | 
            +
            	32, 43, 45, 61, 115, 9, 10, 60, 
         | 
| 277 | 
            +
            	62, 113, 32, 9, 10, 101, 114, 116, 
         | 
| 278 | 
            +
            	111, 117, 114, 110, 115, 32, 9, 10, 
         | 
| 279 | 
            +
            	32, 78, 110, 9, 10, 85, 76, 76, 
         | 
| 280 | 
            +
            	32, 43, 45, 61, 9, 10, 60, 62, 
         | 
| 281 | 
            +
            	111, 117, 116, 32, 9, 10, 32, 78, 
         | 
| 282 | 
            +
            	110, 9, 10, 108, 108, 101, 105, 116, 
         | 
| 283 | 
            +
            	107, 109, 101, 97, 105, 111, 116, 99, 
         | 
| 284 | 
            +
            	104, 110, 117, 116, 101, 110, 116, 104, 
         | 
| 285 | 
            +
            	101, 111, 116, 32, 9, 10, 32, 108, 
         | 
| 286 | 
            +
            	9, 10, 105, 107, 102, 114, 32, 100, 
         | 
| 287 | 
            +
            	9, 10, 101, 99, 111, 110, 100, 101, 
         | 
| 288 | 
            +
            	104, 101, 107, 101, 97, 97, 32, 43, 
         | 
| 289 | 
            +
            	45, 46, 58, 61, 95, 9, 10, 60, 
         | 
| 290 | 
            +
            	62, 65, 90, 97, 122, 101, 32, 34, 
         | 
| 291 | 
            +
            	35, 39, 40, 45, 58, 95, 9, 10, 
         | 
| 292 | 
            +
            	48, 57, 65, 90, 97, 122, 34, 92, 
         | 
| 293 | 
            +
            	32, 41, 43, 45, 61, 9, 10, 60, 
         | 
| 294 | 
            +
            	62, 32, 41, 43, 45, 61, 97, 100, 
         | 
| 295 | 
            +
            	101, 103, 104, 105, 108, 109, 110, 111, 
         | 
| 296 | 
            +
            	115, 119, 121, 9, 10, 60, 62, 32, 
         | 
| 297 | 
            +
            	34, 35, 39, 40, 45, 58, 95, 9, 
         | 
| 298 | 
            +
            	10, 48, 57, 65, 90, 97, 122, 123, 
         | 
| 299 | 
            +
            	34, 92, 125, 34, 92, 125, 34, 92, 
         | 
| 300 | 
            +
            	32, 41, 43, 45, 46, 61, 9, 10, 
         | 
| 301 | 
            +
            	60, 62, 32, 58, 95, 9, 10, 65, 
         | 
| 302 | 
            +
            	90, 97, 122, 32, 58, 95, 9, 10, 
         | 
| 303 | 
            +
            	65, 90, 97, 122, 32, 41, 43, 45, 
         | 
| 304 | 
            +
            	46, 58, 61, 95, 9, 10, 60, 62, 
         | 
| 305 | 
            +
            	65, 90, 97, 122, 32, 34, 35, 39, 
         | 
| 306 | 
            +
            	40, 45, 58, 61, 95, 9, 10, 48, 
         | 
| 307 | 
            +
            	57, 65, 90, 97, 122, 39, 92, 32, 
         | 
| 308 | 
            +
            	41, 9, 10, 32, 41, 43, 45, 61, 
         | 
| 309 | 
            +
            	9, 10, 60, 62, 32, 41, 43, 45, 
         | 
| 310 | 
            +
            	61, 97, 101, 103, 105, 108, 109, 110, 
         | 
| 311 | 
            +
            	111, 9, 10, 60, 62, 110, 100, 32, 
         | 
| 312 | 
            +
            	9, 10, 113, 101, 116, 115, 32, 9, 
         | 
| 313 | 
            +
            	10, 32, 78, 110, 9, 10, 85, 76, 
         | 
| 314 | 
            +
            	76, 32, 41, 43, 45, 61, 9, 10, 
         | 
| 315 | 
            +
            	60, 62, 111, 117, 116, 32, 9, 10, 
         | 
| 316 | 
            +
            	32, 78, 110, 9, 10, 108, 108, 101, 
         | 
| 317 | 
            +
            	105, 116, 107, 101, 97, 116, 99, 104, 
         | 
| 318 | 
            +
            	101, 111, 116, 32, 9, 10, 32, 108, 
         | 
| 319 | 
            +
            	9, 10, 105, 114, 48, 57, 32, 41, 
         | 
| 320 | 
            +
            	43, 45, 46, 61, 9, 10, 48, 57, 
         | 
| 321 | 
            +
            	60, 62, 48, 57, 32, 41, 43, 45, 
         | 
| 322 | 
            +
            	61, 9, 10, 48, 57, 60, 62, 32, 
         | 
| 323 | 
            +
            	41, 43, 45, 46, 58, 61, 95, 9, 
         | 
| 324 | 
            +
            	10, 60, 62, 65, 90, 97, 122, 97, 
         | 
| 325 | 
            +
            	121, 32, 41, 43, 45, 61, 115, 9, 
         | 
| 326 | 
            +
            	10, 60, 62, 111, 117, 114, 97, 105, 
         | 
| 327 | 
            +
            	111, 110, 117, 116, 101, 110, 116, 104, 
         | 
| 328 | 
            +
            	101, 99, 111, 110, 100, 101, 101, 107, 
         | 
| 329 | 
            +
            	101, 97, 32, 40, 58, 95, 9, 10, 
         | 
| 330 | 
            +
            	65, 90, 97, 122, 32, 41, 9, 10, 
         | 
| 331 | 
            +
            	32, 41, 9, 10, 32, 41, 102, 9, 
         | 
| 332 | 
            +
            	10, 114, 111, 109, 32, 40, 58, 95, 
         | 
| 322 333 | 
             
            	9, 10, 65, 90, 97, 122, 32, 41, 
         | 
| 323 | 
            -
            	 | 
| 324 | 
            -
            	102, 9, 10, 114, 111, 109, 32, 40, 
         | 
| 325 | 
            -
            	95, 9, 10, 65, 90, 97, 122, 32, 
         | 
| 326 | 
            -
            	41, 95, 9, 10, 65, 90, 97, 122, 
         | 
| 334 | 
            +
            	58, 95, 9, 10, 65, 90, 97, 122, 
         | 
| 327 335 | 
             
            	32, 41, 102, 105, 119, 9, 10, 110, 
         | 
| 328 | 
            -
            	32, 9, 10, 32, 95, 9, 10,  | 
| 329 | 
            -
            	90, 97, 122, 32, 41,  | 
| 330 | 
            -
            	65, 90, 97, 122, 104, 101,  | 
| 331 | 
            -
            	32, 9, 10, 32, 34, 35,  | 
| 332 | 
            -
            	 | 
| 333 | 
            -
            	 | 
| 334 | 
            -
            	 | 
| 335 | 
            -
            	 | 
| 336 | 
            -
            	 | 
| 337 | 
            -
            	 | 
| 338 | 
            -
            	 | 
| 339 | 
            -
            	 | 
| 340 | 
            -
            	92, 125, 34, 92,  | 
| 341 | 
            -
            	 | 
| 342 | 
            -
            	 | 
| 343 | 
            -
            	 | 
| 344 | 
            -
            	 | 
| 345 | 
            -
            	 | 
| 346 | 
            -
            	 | 
| 336 | 
            +
            	32, 9, 10, 32, 58, 95, 9, 10, 
         | 
| 337 | 
            +
            	65, 90, 97, 122, 32, 41, 58, 95, 
         | 
| 338 | 
            +
            	9, 10, 65, 90, 97, 122, 104, 101, 
         | 
| 339 | 
            +
            	114, 101, 32, 9, 10, 32, 34, 35, 
         | 
| 340 | 
            +
            	39, 40, 45, 58, 95, 9, 10, 48, 
         | 
| 341 | 
            +
            	57, 65, 90, 97, 122, 34, 92, 32, 
         | 
| 342 | 
            +
            	41, 43, 45, 61, 9, 10, 60, 62, 
         | 
| 343 | 
            +
            	32, 41, 43, 45, 61, 97, 100, 101, 
         | 
| 344 | 
            +
            	102, 103, 104, 105, 108, 109, 110, 111, 
         | 
| 345 | 
            +
            	115, 119, 121, 9, 10, 60, 62, 32, 
         | 
| 346 | 
            +
            	34, 35, 39, 40, 45, 58, 95, 9, 
         | 
| 347 | 
            +
            	10, 48, 57, 65, 90, 97, 122, 123, 
         | 
| 348 | 
            +
            	34, 92, 125, 34, 92, 125, 34, 92, 
         | 
| 349 | 
            +
            	32, 41, 43, 45, 46, 61, 9, 10, 
         | 
| 350 | 
            +
            	60, 62, 32, 58, 95, 9, 10, 65, 
         | 
| 351 | 
            +
            	90, 97, 122, 32, 58, 95, 9, 10, 
         | 
| 352 | 
            +
            	65, 90, 97, 122, 32, 41, 43, 45, 
         | 
| 353 | 
            +
            	46, 58, 61, 95, 9, 10, 60, 62, 
         | 
| 354 | 
            +
            	65, 90, 97, 122, 32, 34, 35, 39, 
         | 
| 355 | 
            +
            	40, 45, 58, 61, 95, 9, 10, 48, 
         | 
| 347 356 | 
             
            	57, 65, 90, 97, 122, 39, 92, 32, 
         | 
| 348 357 | 
             
            	41, 9, 10, 32, 41, 43, 45, 61, 
         | 
| 349 358 | 
             
            	9, 10, 60, 62, 32, 41, 43, 45, 
         | 
| @@ -360,49 +369,49 @@ self._querybuilder_trans_keys = [ | |
| 360 369 | 
             
            	32, 41, 43, 45, 46, 61, 9, 10, 
         | 
| 361 370 | 
             
            	48, 57, 60, 62, 48, 57, 32, 41, 
         | 
| 362 371 | 
             
            	43, 45, 61, 9, 10, 48, 57, 60, 
         | 
| 363 | 
            -
            	62, 32, 41, 43, 45, 46,  | 
| 364 | 
            -
            	9, 10, 60, 62, 65, 90, 97,  | 
| 365 | 
            -
            	97, 121, 32, 41, 43, 45, 61,  | 
| 366 | 
            -
            	9, 10, 60, 62, 111, 117, 114,  | 
| 367 | 
            -
            	105, 111, 110, 117, 116, 101, 110,  | 
| 368 | 
            -
            	104, 101, 99, 111, 110, 100, 101,  | 
| 369 | 
            -
            	107, 101, 97, 32, 97, 102, 103,  | 
| 370 | 
            -
            	111, 112, 9, 10, 32, 97, 102, 103, 
         | 
| 372 | 
            +
            	62, 32, 41, 43, 45, 46, 58, 61, 
         | 
| 373 | 
            +
            	95, 9, 10, 60, 62, 65, 90, 97, 
         | 
| 374 | 
            +
            	122, 97, 121, 32, 41, 43, 45, 61, 
         | 
| 375 | 
            +
            	115, 9, 10, 60, 62, 111, 117, 114, 
         | 
| 376 | 
            +
            	97, 105, 111, 110, 117, 116, 101, 110, 
         | 
| 377 | 
            +
            	116, 104, 101, 99, 111, 110, 100, 101, 
         | 
| 378 | 
            +
            	101, 107, 101, 97, 32, 97, 102, 103, 
         | 
| 371 379 | 
             
            	108, 111, 112, 9, 10, 32, 97, 102, 
         | 
| 372 | 
            -
            	103,  | 
| 373 | 
            -
            	 | 
| 374 | 
            -
            	 | 
| 375 | 
            -
            	 | 
| 376 | 
            -
            	 | 
| 377 | 
            -
            	 | 
| 378 | 
            -
            	112, 9, 10, 32,  | 
| 379 | 
            -
            	 | 
| 380 | 
            -
            	110, 111, 112, 115, 119, 121, 9, 10, 
         | 
| 381 | 
            -
            	60, 62, 32, 43, 45, 61, 97, 101, 
         | 
| 382 | 
            -
            	102, 103, 105, 108, 109, 110, 111, 112, 
         | 
| 383 | 
            -
            	9, 10, 60, 62, 32, 43, 45, 61, 
         | 
| 380 | 
            +
            	103, 108, 111, 112, 9, 10, 32, 97, 
         | 
| 381 | 
            +
            	102, 103, 105, 108, 111, 112, 119, 9, 
         | 
| 382 | 
            +
            	10, 32, 44, 108, 111, 112, 9, 10, 
         | 
| 383 | 
            +
            	32, 44, 111, 112, 9, 10, 32, 111, 
         | 
| 384 | 
            +
            	112, 9, 10, 32, 112, 9, 10, 32, 
         | 
| 385 | 
            +
            	9, 10, 32, 44, 65, 68, 97, 100, 
         | 
| 386 | 
            +
            	108, 111, 112, 9, 10, 32, 44, 108, 
         | 
| 387 | 
            +
            	111, 112, 9, 10, 32, 43, 45, 61, 
         | 
| 384 388 | 
             
            	97, 100, 101, 102, 103, 104, 105, 108, 
         | 
| 385 389 | 
             
            	109, 110, 111, 112, 115, 119, 121, 9, 
         | 
| 386 390 | 
             
            	10, 60, 62, 32, 43, 45, 61, 97, 
         | 
| 387 | 
            -
            	 | 
| 388 | 
            -
            	 | 
| 389 | 
            -
            	 | 
| 390 | 
            -
            	 | 
| 391 | 
            +
            	101, 102, 103, 105, 108, 109, 110, 111, 
         | 
| 392 | 
            +
            	112, 9, 10, 60, 62, 32, 43, 45, 
         | 
| 393 | 
            +
            	61, 97, 100, 101, 102, 103, 104, 105, 
         | 
| 394 | 
            +
            	108, 109, 110, 111, 112, 115, 119, 121, 
         | 
| 391 395 | 
             
            	9, 10, 60, 62, 32, 43, 45, 61, 
         | 
| 392 396 | 
             
            	97, 100, 101, 102, 103, 104, 105, 108, 
         | 
| 393 397 | 
             
            	109, 110, 111, 112, 115, 119, 121, 9, 
         | 
| 394 | 
            -
            	10, 60, 62, 32,  | 
| 395 | 
            -
            	 | 
| 396 | 
            -
            	 | 
| 397 | 
            -
            	 | 
| 398 | 
            -
            	 | 
| 399 | 
            -
            	 | 
| 400 | 
            -
            	 | 
| 401 | 
            -
            	 | 
| 402 | 
            -
            	 | 
| 398 | 
            +
            	10, 60, 62, 32, 43, 45, 61, 97, 
         | 
| 399 | 
            +
            	101, 102, 103, 105, 108, 109, 110, 111, 
         | 
| 400 | 
            +
            	112, 9, 10, 60, 62, 32, 43, 45, 
         | 
| 401 | 
            +
            	61, 97, 100, 101, 102, 103, 104, 105, 
         | 
| 402 | 
            +
            	108, 109, 110, 111, 112, 115, 119, 121, 
         | 
| 403 | 
            +
            	9, 10, 60, 62, 32, 97, 102, 103, 
         | 
| 404 | 
            +
            	105, 108, 111, 112, 119, 9, 10, 32, 
         | 
| 405 | 
            +
            	97, 102, 103, 105, 108, 111, 112, 119, 
         | 
| 406 | 
            +
            	9, 10, 32, 43, 45, 61, 97, 100, 
         | 
| 403 407 | 
             
            	101, 102, 103, 104, 105, 108, 109, 110, 
         | 
| 404 408 | 
             
            	111, 112, 115, 119, 121, 9, 10, 60, 
         | 
| 405 | 
            -
            	62,  | 
| 409 | 
            +
            	62, 32, 43, 45, 61, 97, 101, 102, 
         | 
| 410 | 
            +
            	103, 105, 108, 109, 110, 111, 112, 9, 
         | 
| 411 | 
            +
            	10, 60, 62, 32, 43, 45, 61, 97, 
         | 
| 412 | 
            +
            	100, 101, 102, 103, 104, 105, 108, 109, 
         | 
| 413 | 
            +
            	110, 111, 112, 115, 119, 121, 9, 10, 
         | 
| 414 | 
            +
            	60, 62, 0
         | 
| 406 415 | 
             
            ]
         | 
| 407 416 |  | 
| 408 417 | 
             
            class << self
         | 
| @@ -410,72 +419,72 @@ class << self | |
| 410 419 | 
             
            	private :_querybuilder_single_lengths, :_querybuilder_single_lengths=
         | 
| 411 420 | 
             
            end
         | 
| 412 421 | 
             
            self._querybuilder_single_lengths = [
         | 
| 413 | 
            -
            	0,  | 
| 414 | 
            -
            	2, 1, 1, 1, 1,  | 
| 415 | 
            -
            	1, 1, 1, 1, 1, 2, 1,  | 
| 416 | 
            -
            	 | 
| 422 | 
            +
            	0, 4, 2, 1, 1, 1, 1, 4, 
         | 
| 423 | 
            +
            	2, 1, 1, 1, 1, 4, 4, 3, 
         | 
| 424 | 
            +
            	1, 1, 1, 1, 1, 2, 1, 3, 
         | 
| 425 | 
            +
            	3, 5, 1, 1, 1, 1, 2, 2, 
         | 
| 417 426 | 
             
            	0, 2, 2, 0, 1, 1, 1, 1, 
         | 
| 418 427 | 
             
            	1, 1, 2, 2, 0, 1, 1, 1, 
         | 
| 419 | 
            -
            	1, 1, 1, 1, 1,  | 
| 420 | 
            -
            	2, 1, 1, 1, 1, 2, 1,  | 
| 421 | 
            -
            	 | 
| 422 | 
            -
            	1,  | 
| 423 | 
            -
            	1,  | 
| 424 | 
            -
            	1, 1,  | 
| 425 | 
            -
            	3, 2, 0, 0, 5,  | 
| 426 | 
            -
            	 | 
| 427 | 
            -
            	 | 
| 428 | 
            +
            	1, 1, 1, 1, 1, 3, 3, 3, 
         | 
| 429 | 
            +
            	2, 1, 1, 1, 1, 2, 1, 3, 
         | 
| 430 | 
            +
            	3, 5, 1, 1, 2, 1, 1, 1, 
         | 
| 431 | 
            +
            	1, 3, 3, 5, 3, 3, 5, 1, 
         | 
| 432 | 
            +
            	1, 3, 3, 2, 2, 1, 1, 1, 
         | 
| 433 | 
            +
            	1, 1, 8, 2, 4, 8, 1, 3, 
         | 
| 434 | 
            +
            	3, 2, 0, 0, 5, 3, 3, 7, 
         | 
| 435 | 
            +
            	9, 2, 0, 2, 4, 1, 1, 1, 
         | 
| 436 | 
            +
            	8, 0, 5, 0, 4, 7, 1, 1, 
         | 
| 428 437 | 
             
            	5, 1, 1, 3, 1, 1, 1, 2, 
         | 
| 429 438 | 
             
            	1, 3, 1, 1, 1, 4, 2, 1, 
         | 
| 430 439 | 
             
            	1, 3, 1, 1, 3, 2, 1, 3, 
         | 
| 431 440 | 
             
            	1, 1, 1, 1, 1, 1, 1, 1, 
         | 
| 432 441 | 
             
            	1, 1, 2, 1, 1, 2, 1, 1, 
         | 
| 433 442 | 
             
            	2, 2, 1, 1, 1, 1, 1, 2, 
         | 
| 434 | 
            -
            	1, 1, 1, 1, 1, 1,  | 
| 435 | 
            -
            	4,  | 
| 436 | 
            -
            	5,  | 
| 437 | 
            -
            	4, 1, 1, 1,  | 
| 438 | 
            -
            	4,  | 
| 443 | 
            +
            	1, 1, 1, 1, 1, 1, 8, 2, 
         | 
| 444 | 
            +
            	4, 8, 1, 3, 3, 2, 0, 0, 
         | 
| 445 | 
            +
            	5, 3, 3, 7, 9, 2, 0, 2, 
         | 
| 446 | 
            +
            	4, 1, 1, 1, 8, 0, 5, 0, 
         | 
| 447 | 
            +
            	4, 7, 1, 1, 5, 1, 1, 3, 
         | 
| 439 448 | 
             
            	1, 1, 1, 2, 1, 3, 1, 1, 
         | 
| 440 449 | 
             
            	1, 4, 2, 1, 1, 3, 1, 1, 
         | 
| 441 450 | 
             
            	3, 2, 1, 3, 1, 1, 1, 1, 
         | 
| 442 451 | 
             
            	1, 1, 1, 1, 1, 1, 2, 1, 
         | 
| 443 452 | 
             
            	1, 2, 1, 1, 2, 2, 1, 1, 
         | 
| 444 453 | 
             
            	1, 1, 1, 2, 1, 1, 1, 1, 
         | 
| 445 | 
            -
            	1,  | 
| 446 | 
            -
            	1, 0,  | 
| 447 | 
            -
            	 | 
| 448 | 
            -
            	1, 1,  | 
| 449 | 
            -
            	3, 2, 0, 0, 5,  | 
| 450 | 
            -
            	 | 
| 451 | 
            -
            	 | 
| 454 | 
            +
            	1, 7, 1, 0, 1, 1, 1, 7, 
         | 
| 455 | 
            +
            	1, 0, 3, 1, 1, 1, 1, 4, 
         | 
| 456 | 
            +
            	3, 1, 1, 3, 3, 1, 1, 1, 
         | 
| 457 | 
            +
            	1, 1, 8, 2, 4, 8, 1, 3, 
         | 
| 458 | 
            +
            	3, 2, 0, 0, 5, 3, 3, 7, 
         | 
| 459 | 
            +
            	9, 2, 0, 2, 4, 1, 1, 1, 
         | 
| 460 | 
            +
            	8, 0, 5, 0, 4, 7, 1, 1, 
         | 
| 452 461 | 
             
            	5, 1, 1, 3, 1, 1, 1, 2, 
         | 
| 453 462 | 
             
            	1, 3, 1, 1, 1, 4, 2, 1, 
         | 
| 454 463 | 
             
            	1, 3, 1, 1, 3, 2, 1, 3, 
         | 
| 455 464 | 
             
            	1, 1, 1, 1, 1, 1, 1, 1, 
         | 
| 456 465 | 
             
            	1, 1, 2, 1, 1, 2, 1, 1, 
         | 
| 457 466 | 
             
            	2, 2, 1, 1, 1, 1, 1, 2, 
         | 
| 458 | 
            -
            	1, 1, 1, 1, 1,  | 
| 459 | 
            -
            	 | 
| 460 | 
            -
            	2, 0, 0, 6,  | 
| 467 | 
            +
            	1, 1, 1, 1, 1, 7, 1, 0, 
         | 
| 468 | 
            +
            	8, 2, 5, 18, 8, 1, 3, 3, 
         | 
| 469 | 
            +
            	2, 0, 0, 6, 3, 3, 8, 9, 
         | 
| 461 470 | 
             
            	2, 0, 2, 5, 13, 1, 1, 1, 
         | 
| 462 471 | 
             
            	1, 2, 1, 1, 3, 1, 1, 1, 
         | 
| 463 472 | 
             
            	5, 2, 1, 1, 3, 1, 1, 3, 
         | 
| 464 473 | 
             
            	1, 1, 1, 1, 1, 1, 2, 1, 
         | 
| 465 474 | 
             
            	1, 2, 1, 1, 0, 6, 0, 5, 
         | 
| 466 | 
            -
            	 | 
| 475 | 
            +
            	8, 1, 1, 6, 1, 1, 1, 3, 
         | 
| 467 476 | 
             
            	1, 1, 1, 1, 1, 1, 1, 1, 
         | 
| 468 477 | 
             
            	1, 1, 1, 1, 1, 1, 1, 1, 
         | 
| 469 | 
            -
            	1, 0,  | 
| 470 | 
            -
            	1,  | 
| 471 | 
            -
            	1, 1, 1, 1, 1,  | 
| 472 | 
            -
            	19,  | 
| 473 | 
            -
            	6,  | 
| 478 | 
            +
            	1, 0, 4, 2, 2, 3, 1, 1, 
         | 
| 479 | 
            +
            	1, 4, 4, 5, 1, 1, 3, 4, 
         | 
| 480 | 
            +
            	1, 1, 1, 1, 1, 8, 2, 5, 
         | 
| 481 | 
            +
            	19, 8, 1, 3, 3, 2, 0, 0, 
         | 
| 482 | 
            +
            	6, 3, 3, 8, 9, 2, 0, 2, 
         | 
| 474 483 | 
             
            	5, 14, 1, 1, 1, 1, 2, 2, 
         | 
| 475 484 | 
             
            	1, 3, 1, 1, 1, 5, 2, 1, 
         | 
| 476 485 | 
             
            	1, 3, 1, 1, 3, 1, 1, 1, 
         | 
| 477 486 | 
             
            	1, 1, 1, 2, 1, 1, 2, 1, 
         | 
| 478 | 
            -
            	1, 0, 6, 0, 5,  | 
| 487 | 
            +
            	1, 0, 6, 0, 5, 8, 1, 1, 
         | 
| 479 488 | 
             
            	6, 1, 1, 1, 3, 1, 1, 1, 
         | 
| 480 489 | 
             
            	1, 1, 1, 1, 1, 1, 1, 1, 
         | 
| 481 490 | 
             
            	1, 1, 1, 1, 1, 1, 0, 7, 
         | 
| @@ -568,78 +577,78 @@ class << self | |
| 568 577 | 
             
            	private :_querybuilder_index_offsets, :_querybuilder_index_offsets=
         | 
| 569 578 | 
             
            end
         | 
| 570 579 | 
             
            self._querybuilder_index_offsets = [
         | 
| 571 | 
            -
            	0, 0,  | 
| 572 | 
            -
            	 | 
| 573 | 
            -
            	 | 
| 574 | 
            -
            	 | 
| 575 | 
            -
            	 | 
| 576 | 
            -
            	 | 
| 577 | 
            -
            	 | 
| 578 | 
            -
            	 | 
| 579 | 
            -
            	 | 
| 580 | 
            -
            	 | 
| 581 | 
            -
            	 | 
| 582 | 
            -
            	 | 
| 583 | 
            -
            	 | 
| 584 | 
            -
            	 | 
| 585 | 
            -
            	 | 
| 586 | 
            -
            	 | 
| 587 | 
            -
            	 | 
| 588 | 
            -
            	 | 
| 589 | 
            -
            	 | 
| 590 | 
            -
            	 | 
| 591 | 
            -
            	 | 
| 592 | 
            -
            	 | 
| 593 | 
            -
            	 | 
| 594 | 
            -
            	 | 
| 595 | 
            -
            	 | 
| 596 | 
            -
            	 | 
| 597 | 
            -
            	 | 
| 598 | 
            -
            	 | 
| 599 | 
            -
            	 | 
| 600 | 
            -
            	 | 
| 601 | 
            -
            	 | 
| 602 | 
            -
            	 | 
| 603 | 
            -
            	 | 
| 604 | 
            -
            	 | 
| 605 | 
            -
            	 | 
| 606 | 
            -
            	 | 
| 607 | 
            -
            	 | 
| 608 | 
            -
            	 | 
| 609 | 
            -
            	 | 
| 610 | 
            -
            	 | 
| 611 | 
            -
            	 | 
| 612 | 
            -
            	 | 
| 613 | 
            -
            	 | 
| 614 | 
            -
            	 | 
| 615 | 
            -
            	 | 
| 616 | 
            -
            	 | 
| 617 | 
            -
            	 | 
| 618 | 
            -
            	 | 
| 619 | 
            -
            	 | 
| 620 | 
            -
            	 | 
| 621 | 
            -
            	 | 
| 622 | 
            -
            	 | 
| 623 | 
            -
            	 | 
| 624 | 
            -
            	 | 
| 625 | 
            -
            	 | 
| 626 | 
            -
            	 | 
| 627 | 
            -
            	 | 
| 628 | 
            -
            	 | 
| 629 | 
            -
            	 | 
| 630 | 
            -
            	 | 
| 631 | 
            -
            	 | 
| 632 | 
            -
            	 | 
| 633 | 
            -
            	 | 
| 634 | 
            -
            	 | 
| 635 | 
            -
            	 | 
| 636 | 
            -
            	 | 
| 637 | 
            -
            	 | 
| 638 | 
            -
            	 | 
| 639 | 
            -
            	 | 
| 640 | 
            -
            	 | 
| 641 | 
            -
            	 | 
| 642 | 
            -
            	 | 
| 580 | 
            +
            	0, 0, 8, 12, 15, 17, 19, 22, 
         | 
| 581 | 
            +
            	30, 34, 37, 39, 41, 43, 51, 59, 
         | 
| 582 | 
            +
            	66, 68, 70, 72, 74, 77, 81, 83, 
         | 
| 583 | 
            +
            	90, 97, 106, 108, 110, 112, 114, 119, 
         | 
| 584 | 
            +
            	124, 126, 131, 136, 138, 142, 144, 146, 
         | 
| 585 | 
            +
            	148, 150, 152, 157, 162, 164, 168, 170, 
         | 
| 586 | 
            +
            	172, 174, 176, 178, 180, 182, 189, 196, 
         | 
| 587 | 
            +
            	203, 206, 208, 210, 212, 215, 219, 221, 
         | 
| 588 | 
            +
            	228, 235, 244, 246, 248, 252, 254, 256, 
         | 
| 589 | 
            +
            	258, 260, 267, 274, 283, 290, 297, 306, 
         | 
| 590 | 
            +
            	308, 311, 318, 325, 328, 332, 334, 336, 
         | 
| 591 | 
            +
            	338, 340, 343, 356, 359, 366, 379, 381, 
         | 
| 592 | 
            +
            	385, 389, 392, 393, 394, 402, 409, 416, 
         | 
| 593 | 
            +
            	428, 442, 445, 446, 450, 457, 459, 461, 
         | 
| 594 | 
            +
            	464, 477, 479, 488, 490, 498, 510, 512, 
         | 
| 595 | 
            +
            	514, 522, 524, 527, 531, 533, 535, 537, 
         | 
| 596 | 
            +
            	540, 543, 548, 550, 552, 554, 561, 564, 
         | 
| 597 | 
            +
            	566, 569, 574, 576, 578, 582, 585, 587, 
         | 
| 598 | 
            +
            	591, 593, 595, 597, 599, 601, 603, 605, 
         | 
| 599 | 
            +
            	607, 609, 611, 614, 616, 619, 623, 625, 
         | 
| 600 | 
            +
            	627, 630, 634, 636, 638, 640, 642, 644, 
         | 
| 601 | 
            +
            	647, 649, 651, 653, 655, 657, 660, 673, 
         | 
| 602 | 
            +
            	676, 683, 696, 698, 702, 706, 709, 710, 
         | 
| 603 | 
            +
            	711, 719, 726, 733, 745, 759, 762, 763, 
         | 
| 604 | 
            +
            	767, 774, 776, 778, 781, 794, 796, 805, 
         | 
| 605 | 
            +
            	807, 815, 827, 829, 831, 839, 841, 844, 
         | 
| 606 | 
            +
            	848, 850, 852, 854, 857, 860, 865, 867, 
         | 
| 607 | 
            +
            	869, 871, 878, 881, 883, 886, 891, 893, 
         | 
| 608 | 
            +
            	895, 899, 902, 904, 908, 910, 912, 914, 
         | 
| 609 | 
            +
            	916, 918, 920, 922, 924, 926, 928, 931, 
         | 
| 610 | 
            +
            	933, 936, 940, 942, 944, 947, 951, 953, 
         | 
| 611 | 
            +
            	955, 957, 959, 961, 964, 966, 968, 970, 
         | 
| 612 | 
            +
            	972, 974, 986, 988, 989, 991, 993, 995, 
         | 
| 613 | 
            +
            	1007, 1009, 1010, 1017, 1019, 1021, 1023, 1025, 
         | 
| 614 | 
            +
            	1033, 1040, 1042, 1045, 1052, 1059, 1061, 1063, 
         | 
| 615 | 
            +
            	1065, 1067, 1070, 1083, 1086, 1093, 1106, 1108, 
         | 
| 616 | 
            +
            	1112, 1116, 1119, 1120, 1121, 1129, 1136, 1143, 
         | 
| 617 | 
            +
            	1155, 1169, 1172, 1173, 1177, 1184, 1186, 1188, 
         | 
| 618 | 
            +
            	1191, 1204, 1206, 1215, 1217, 1225, 1237, 1239, 
         | 
| 619 | 
            +
            	1241, 1249, 1251, 1254, 1258, 1260, 1262, 1264, 
         | 
| 620 | 
            +
            	1267, 1270, 1275, 1277, 1279, 1281, 1288, 1291, 
         | 
| 621 | 
            +
            	1293, 1296, 1301, 1303, 1305, 1309, 1312, 1314, 
         | 
| 622 | 
            +
            	1318, 1320, 1322, 1324, 1326, 1328, 1330, 1332, 
         | 
| 623 | 
            +
            	1334, 1336, 1338, 1341, 1343, 1346, 1350, 1352, 
         | 
| 624 | 
            +
            	1354, 1357, 1361, 1363, 1365, 1367, 1369, 1371, 
         | 
| 625 | 
            +
            	1374, 1376, 1378, 1380, 1382, 1384, 1396, 1398, 
         | 
| 626 | 
            +
            	1399, 1412, 1415, 1423, 1444, 1457, 1459, 1463, 
         | 
| 627 | 
            +
            	1467, 1470, 1471, 1472, 1481, 1488, 1495, 1508, 
         | 
| 628 | 
            +
            	1522, 1525, 1526, 1530, 1538, 1554, 1556, 1558, 
         | 
| 629 | 
            +
            	1561, 1563, 1566, 1568, 1571, 1576, 1578, 1580, 
         | 
| 630 | 
            +
            	1582, 1590, 1593, 1595, 1598, 1603, 1605, 1607, 
         | 
| 631 | 
            +
            	1611, 1613, 1615, 1617, 1619, 1621, 1623, 1626, 
         | 
| 632 | 
            +
            	1628, 1631, 1635, 1637, 1639, 1641, 1651, 1653, 
         | 
| 633 | 
            +
            	1662, 1675, 1677, 1679, 1688, 1690, 1692, 1694, 
         | 
| 634 | 
            +
            	1698, 1700, 1702, 1704, 1706, 1708, 1710, 1712, 
         | 
| 635 | 
            +
            	1714, 1716, 1718, 1720, 1722, 1724, 1726, 1728, 
         | 
| 636 | 
            +
            	1730, 1732, 1733, 1741, 1745, 1749, 1754, 1756, 
         | 
| 637 | 
            +
            	1758, 1760, 1768, 1776, 1783, 1785, 1788, 1795, 
         | 
| 638 | 
            +
            	1803, 1805, 1807, 1809, 1811, 1814, 1827, 1830, 
         | 
| 639 | 
            +
            	1838, 1860, 1873, 1875, 1879, 1883, 1886, 1887, 
         | 
| 640 | 
            +
            	1888, 1897, 1904, 1911, 1924, 1938, 1941, 1942, 
         | 
| 641 | 
            +
            	1946, 1954, 1971, 1973, 1975, 1978, 1980, 1983, 
         | 
| 642 | 
            +
            	1986, 1989, 1994, 1996, 1998, 2000, 2008, 2011, 
         | 
| 643 | 
            +
            	2013, 2016, 2021, 2023, 2025, 2029, 2031, 2033, 
         | 
| 644 | 
            +
            	2035, 2037, 2039, 2041, 2044, 2046, 2049, 2053, 
         | 
| 645 | 
            +
            	2055, 2057, 2059, 2069, 2071, 2080, 2093, 2095, 
         | 
| 646 | 
            +
            	2097, 2106, 2108, 2110, 2112, 2116, 2118, 2120, 
         | 
| 647 | 
            +
            	2122, 2124, 2126, 2128, 2130, 2132, 2134, 2136, 
         | 
| 648 | 
            +
            	2138, 2140, 2142, 2144, 2146, 2148, 2150, 2151, 
         | 
| 649 | 
            +
            	2160, 2169, 2180, 2187, 2193, 2198, 2202, 2205, 
         | 
| 650 | 
            +
            	2216, 2223, 2245, 2262, 2284, 2306, 2323, 2345, 
         | 
| 651 | 
            +
            	2356, 2367, 2389, 2406, 2428, 2429
         | 
| 643 652 | 
             
            ]
         | 
| 644 653 |  | 
| 645 654 | 
             
            class << self
         | 
| @@ -647,18 +656,19 @@ class << self | |
| 647 656 | 
             
            	private :_querybuilder_indicies, :_querybuilder_indicies=
         | 
| 648 657 | 
             
            end
         | 
| 649 658 | 
             
            self._querybuilder_indicies = [
         | 
| 650 | 
            -
            	0, 2, 3, 0, 3, 3, 1,  | 
| 651 | 
            -
            	5, 4, 1, 7, 7, 6, 8,  | 
| 652 | 
            -
            	9, 1, 10, 10, 1, 11, 12,  | 
| 653 | 
            -
            	11, 13, 13, 1, 14, 15,  | 
| 654 | 
            -
            	16, 16, 6, 17, 1, 18,  | 
| 655 | 
            -
            	1,  | 
| 656 | 
            -
            	 | 
| 657 | 
            -
            	24,  | 
| 658 | 
            -
            	 | 
| 659 | 
            -
            	 | 
| 660 | 
            -
            	 | 
| 661 | 
            -
            	 | 
| 659 | 
            +
            	0, 2, 3, 3, 0, 3, 3, 1, 
         | 
| 660 | 
            +
            	4, 5, 4, 1, 7, 7, 6, 8, 
         | 
| 661 | 
            +
            	1, 9, 1, 10, 10, 1, 11, 12, 
         | 
| 662 | 
            +
            	13, 13, 11, 13, 13, 1, 14, 15, 
         | 
| 663 | 
            +
            	14, 1, 16, 16, 6, 17, 1, 18, 
         | 
| 664 | 
            +
            	1, 19, 1, 20, 21, 22, 22, 20, 
         | 
| 665 | 
            +
            	22, 22, 1, 23, 12, 24, 24, 23, 
         | 
| 666 | 
            +
            	24, 24, 1, 25, 24, 24, 25, 24, 
         | 
| 667 | 
            +
            	24, 6, 26, 1, 27, 1, 28, 1, 
         | 
| 668 | 
            +
            	29, 1, 30, 30, 1, 30, 31, 30, 
         | 
| 669 | 
            +
            	1, 32, 1, 33, 34, 34, 33, 34, 
         | 
| 670 | 
            +
            	34, 1, 35, 36, 36, 35, 36, 36, 
         | 
| 671 | 
            +
            	1, 37, 38, 39, 36, 36, 37, 36, 
         | 
| 662 672 | 
             
            	36, 6, 40, 1, 41, 1, 42, 1, 
         | 
| 663 673 | 
             
            	43, 1, 44, 45, 44, 46, 1, 47, 
         | 
| 664 674 | 
             
            	48, 47, 49, 1, 49, 1, 50, 51, 
         | 
| @@ -669,217 +679,225 @@ self._querybuilder_indicies = [ | |
| 669 679 | 
             
            	66, 1, 66, 1, 67, 67, 66, 6, 
         | 
| 670 680 | 
             
            	68, 1, 69, 1, 70, 1, 71, 1, 
         | 
| 671 681 | 
             
            	72, 1, 73, 1, 74, 1, 75, 76, 
         | 
| 672 | 
            -
            	75, 76, 76, 1, 77, 78,  | 
| 673 | 
            -
            	 | 
| 674 | 
            -
            	 | 
| 675 | 
            -
            	 | 
| 676 | 
            -
            	 | 
| 677 | 
            -
            	 | 
| 678 | 
            -
            	 | 
| 679 | 
            -
            	 | 
| 680 | 
            -
            	 | 
| 681 | 
            -
            	 | 
| 682 | 
            -
            	 | 
| 683 | 
            -
            	104,  | 
| 684 | 
            -
            	 | 
| 685 | 
            -
            	 | 
| 686 | 
            -
            	 | 
| 687 | 
            -
            	 | 
| 688 | 
            -
            	 | 
| 689 | 
            -
            	 | 
| 690 | 
            -
            	 | 
| 691 | 
            -
            	 | 
| 692 | 
            -
            	 | 
| 693 | 
            -
            	 | 
| 682 | 
            +
            	76, 75, 76, 76, 1, 77, 78, 78, 
         | 
| 683 | 
            +
            	77, 78, 78, 1, 79, 78, 78, 79, 
         | 
| 684 | 
            +
            	78, 78, 6, 56, 80, 1, 81, 1, 
         | 
| 685 | 
            +
            	82, 1, 83, 1, 84, 84, 1, 84, 
         | 
| 686 | 
            +
            	85, 84, 1, 86, 1, 87, 88, 88, 
         | 
| 687 | 
            +
            	87, 88, 88, 1, 89, 90, 90, 89, 
         | 
| 688 | 
            +
            	90, 90, 1, 91, 92, 93, 90, 90, 
         | 
| 689 | 
            +
            	91, 90, 90, 6, 94, 1, 95, 1, 
         | 
| 690 | 
            +
            	96, 97, 96, 6, 98, 1, 99, 1, 
         | 
| 691 | 
            +
            	95, 1, 100, 1, 101, 102, 102, 101, 
         | 
| 692 | 
            +
            	102, 102, 1, 103, 104, 104, 103, 104, 
         | 
| 693 | 
            +
            	104, 1, 105, 106, 107, 104, 104, 105, 
         | 
| 694 | 
            +
            	104, 104, 6, 108, 109, 109, 108, 109, 
         | 
| 695 | 
            +
            	109, 1, 110, 111, 111, 110, 111, 111, 
         | 
| 696 | 
            +
            	1, 112, 113, 114, 111, 111, 112, 111, 
         | 
| 697 | 
            +
            	111, 6, 115, 1, 116, 116, 1, 116, 
         | 
| 698 | 
            +
            	117, 117, 116, 117, 117, 1, 118, 117, 
         | 
| 699 | 
            +
            	117, 118, 117, 117, 6, 56, 119, 1, 
         | 
| 700 | 
            +
            	10, 81, 10, 1, 120, 1, 121, 1, 
         | 
| 701 | 
            +
            	122, 1, 123, 1, 124, 124, 1, 125, 
         | 
| 702 | 
            +
            	126, 127, 128, 129, 130, 132, 132, 125, 
         | 
| 703 | 
            +
            	131, 132, 132, 1, 134, 135, 133, 136, 
         | 
| 704 | 
            +
            	137, 137, 137, 136, 138, 6, 139, 140, 
         | 
| 705 | 
            +
            	141, 142, 143, 144, 146, 146, 139, 145, 
         | 
| 694 706 | 
             
            	146, 146, 1, 147, 1, 149, 150, 1, 
         | 
| 695 707 | 
             
            	148, 149, 150, 151, 148, 148, 152, 149, 
         | 
| 696 708 | 
             
            	149, 148, 136, 137, 137, 153, 137, 136, 
         | 
| 697 | 
            -
            	138, 6, 154, 155, 154, 155, 155,  | 
| 698 | 
            -
            	156, 157, 156, 157, 157, 1,  | 
| 699 | 
            -
            	 | 
| 700 | 
            -
            	 | 
| 701 | 
            -
            	 | 
| 702 | 
            -
            	 | 
| 703 | 
            -
            	 | 
| 704 | 
            -
            	 | 
| 705 | 
            -
            	 | 
| 706 | 
            -
            	 | 
| 707 | 
            -
            	 | 
| 708 | 
            -
            	 | 
| 709 | 
            -
            	 | 
| 710 | 
            -
            	 | 
| 711 | 
            -
            	 | 
| 712 | 
            -
            	 | 
| 713 | 
            -
            	 | 
| 714 | 
            -
            	1,  | 
| 715 | 
            -
            	 | 
| 716 | 
            -
            	 | 
| 717 | 
            -
            	 | 
| 718 | 
            -
            	 | 
| 719 | 
            -
            	 | 
| 720 | 
            -
            	1,  | 
| 721 | 
            -
            	1,  | 
| 722 | 
            -
            	1,  | 
| 723 | 
            -
            	 | 
| 724 | 
            -
            	 | 
| 725 | 
            -
            	 | 
| 726 | 
            -
            	 | 
| 727 | 
            -
            	 | 
| 728 | 
            -
            	1,  | 
| 729 | 
            -
            	 | 
| 730 | 
            -
            	 | 
| 731 | 
            -
            	 | 
| 732 | 
            -
            	 | 
| 709 | 
            +
            	138, 6, 154, 155, 155, 154, 155, 155, 
         | 
| 710 | 
            +
            	1, 156, 157, 157, 156, 157, 157, 1, 
         | 
| 711 | 
            +
            	158, 159, 159, 160, 157, 159, 157, 158, 
         | 
| 712 | 
            +
            	161, 157, 157, 6, 139, 140, 141, 142, 
         | 
| 713 | 
            +
            	143, 144, 146, 137, 146, 139, 145, 146, 
         | 
| 714 | 
            +
            	146, 1, 163, 164, 162, 162, 165, 166, 
         | 
| 715 | 
            +
            	165, 1, 167, 137, 137, 137, 167, 138, 
         | 
| 716 | 
            +
            	6, 168, 1, 169, 1, 170, 170, 1, 
         | 
| 717 | 
            +
            	171, 126, 127, 128, 172, 130, 173, 173, 
         | 
| 718 | 
            +
            	171, 131, 173, 173, 1, 131, 1, 174, 
         | 
| 719 | 
            +
            	175, 175, 176, 175, 174, 131, 177, 6, 
         | 
| 720 | 
            +
            	178, 1, 179, 180, 180, 180, 179, 178, 
         | 
| 721 | 
            +
            	181, 6, 182, 183, 183, 184, 173, 183, 
         | 
| 722 | 
            +
            	173, 182, 185, 173, 173, 6, 186, 1, 
         | 
| 723 | 
            +
            	187, 1, 188, 189, 189, 189, 191, 188, 
         | 
| 724 | 
            +
            	190, 6, 192, 1, 139, 139, 1, 192, 
         | 
| 725 | 
            +
            	26, 192, 1, 193, 1, 194, 1, 187, 
         | 
| 726 | 
            +
            	1, 115, 195, 1, 196, 196, 1, 197, 
         | 
| 727 | 
            +
            	198, 199, 197, 1, 200, 1, 201, 1, 
         | 
| 728 | 
            +
            	202, 1, 203, 204, 204, 204, 203, 205, 
         | 
| 729 | 
            +
            	6, 206, 207, 1, 208, 1, 209, 209, 
         | 
| 730 | 
            +
            	1, 209, 198, 199, 209, 1, 210, 1, 
         | 
| 731 | 
            +
            	202, 1, 192, 211, 192, 1, 212, 41, 
         | 
| 732 | 
            +
            	1, 192, 1, 213, 214, 215, 1, 216, 
         | 
| 733 | 
            +
            	1, 217, 1, 192, 1, 218, 1, 219, 
         | 
| 734 | 
            +
            	1, 220, 1, 187, 1, 221, 1, 222, 
         | 
| 735 | 
            +
            	1, 187, 1, 192, 223, 1, 224, 1, 
         | 
| 736 | 
            +
            	225, 225, 1, 226, 227, 226, 1, 228, 
         | 
| 737 | 
            +
            	1, 212, 1, 56, 229, 1, 170, 81, 
         | 
| 738 | 
            +
            	170, 1, 230, 1, 231, 1, 232, 1, 
         | 
| 739 | 
            +
            	233, 1, 187, 1, 234, 235, 1, 236, 
         | 
| 740 | 
            +
            	1, 187, 1, 237, 1, 238, 1, 239, 
         | 
| 741 | 
            +
            	1, 240, 240, 1, 241, 242, 243, 244, 
         | 
| 742 | 
            +
            	245, 246, 248, 248, 241, 247, 248, 248, 
         | 
| 743 | 
            +
            	1, 250, 251, 249, 252, 253, 253, 253, 
         | 
| 744 | 
            +
            	252, 254, 6, 255, 256, 257, 258, 259, 
         | 
| 745 | 
            +
            	260, 262, 262, 255, 261, 262, 262, 1, 
         | 
| 733 746 | 
             
            	263, 1, 265, 266, 1, 264, 265, 266, 
         | 
| 734 747 | 
             
            	267, 264, 264, 268, 265, 265, 264, 252, 
         | 
| 735 748 | 
             
            	253, 253, 269, 253, 252, 254, 6, 270, 
         | 
| 736 | 
            -
            	271, 270, 271, 271, 1, 272, 273,  | 
| 737 | 
            -
            	273, 273, 1, 274, 275, 275,  | 
| 738 | 
            -
            	 | 
| 739 | 
            -
            	 | 
| 740 | 
            -
            	 | 
| 741 | 
            -
            	 | 
| 742 | 
            -
            	 | 
| 743 | 
            -
            	 | 
| 744 | 
            -
            	 | 
| 745 | 
            -
            	 | 
| 746 | 
            -
            	 | 
| 747 | 
            -
            	 | 
| 748 | 
            -
            	 | 
| 749 | 
            -
            	 | 
| 750 | 
            -
            	 | 
| 751 | 
            -
            	 | 
| 752 | 
            -
            	 | 
| 753 | 
            -
            	 | 
| 754 | 
            -
            	1,  | 
| 755 | 
            -
            	 | 
| 756 | 
            -
            	 | 
| 757 | 
            -
            	 | 
| 758 | 
            -
            	308, 1,  | 
| 759 | 
            -
            	 | 
| 760 | 
            -
            	 | 
| 761 | 
            -
            	303, 1,  | 
| 762 | 
            -
            	 | 
| 763 | 
            -
            	 | 
| 764 | 
            -
            	 | 
| 765 | 
            -
            	1,  | 
| 766 | 
            -
            	 | 
| 767 | 
            -
            	 | 
| 768 | 
            -
            	 | 
| 769 | 
            -
            	 | 
| 749 | 
            +
            	271, 271, 270, 271, 271, 1, 272, 273, 
         | 
| 750 | 
            +
            	273, 272, 273, 273, 1, 274, 275, 275, 
         | 
| 751 | 
            +
            	276, 273, 275, 273, 274, 277, 273, 273, 
         | 
| 752 | 
            +
            	6, 255, 256, 257, 258, 259, 260, 262, 
         | 
| 753 | 
            +
            	253, 262, 255, 261, 262, 262, 1, 279, 
         | 
| 754 | 
            +
            	280, 278, 278, 281, 282, 281, 1, 283, 
         | 
| 755 | 
            +
            	253, 253, 253, 283, 254, 6, 284, 1, 
         | 
| 756 | 
            +
            	285, 1, 286, 286, 1, 287, 242, 243, 
         | 
| 757 | 
            +
            	244, 288, 246, 289, 289, 287, 247, 289, 
         | 
| 758 | 
            +
            	289, 1, 247, 1, 290, 291, 291, 292, 
         | 
| 759 | 
            +
            	291, 290, 247, 293, 6, 294, 1, 295, 
         | 
| 760 | 
            +
            	296, 296, 296, 295, 294, 297, 6, 298, 
         | 
| 761 | 
            +
            	299, 299, 300, 289, 299, 289, 298, 301, 
         | 
| 762 | 
            +
            	289, 289, 6, 302, 1, 303, 1, 304, 
         | 
| 763 | 
            +
            	305, 305, 305, 307, 304, 306, 6, 308, 
         | 
| 764 | 
            +
            	1, 255, 255, 1, 308, 26, 308, 1, 
         | 
| 765 | 
            +
            	309, 1, 310, 1, 303, 1, 115, 311, 
         | 
| 766 | 
            +
            	1, 312, 312, 1, 313, 314, 315, 313, 
         | 
| 767 | 
            +
            	1, 316, 1, 317, 1, 318, 1, 319, 
         | 
| 768 | 
            +
            	320, 320, 320, 319, 321, 6, 322, 323, 
         | 
| 769 | 
            +
            	1, 324, 1, 325, 325, 1, 325, 314, 
         | 
| 770 | 
            +
            	315, 325, 1, 326, 1, 318, 1, 308, 
         | 
| 771 | 
            +
            	327, 308, 1, 328, 41, 1, 308, 1, 
         | 
| 772 | 
            +
            	329, 330, 331, 1, 332, 1, 333, 1, 
         | 
| 773 | 
            +
            	308, 1, 334, 1, 335, 1, 336, 1, 
         | 
| 774 | 
            +
            	303, 1, 337, 1, 338, 1, 303, 1, 
         | 
| 775 | 
            +
            	308, 339, 1, 340, 1, 341, 341, 1, 
         | 
| 776 | 
            +
            	342, 343, 342, 1, 344, 1, 328, 1, 
         | 
| 777 | 
            +
            	56, 345, 1, 286, 81, 286, 1, 346, 
         | 
| 778 | 
            +
            	1, 347, 1, 348, 1, 349, 1, 303, 
         | 
| 779 | 
            +
            	1, 350, 235, 1, 351, 1, 303, 1, 
         | 
| 780 | 
            +
            	352, 1, 310, 1, 329, 1, 353, 299, 
         | 
| 781 | 
            +
            	299, 300, 248, 299, 248, 353, 301, 248, 
         | 
| 782 | 
            +
            	248, 6, 350, 1, 249, 354, 1, 194, 
         | 
| 783 | 
            +
            	1, 213, 1, 355, 183, 183, 184, 132, 
         | 
| 770 784 | 
             
            	183, 132, 355, 185, 132, 132, 6, 234, 
         | 
| 771 | 
            -
            	1, 133, 356, 13, 356, 13, 13,  | 
| 772 | 
            -
            	235, 1, 357, 1, 358, 1, 359,  | 
| 773 | 
            -
            	360, 361, 362, 360, 362, 362,  | 
| 774 | 
            -
            	 | 
| 775 | 
            -
            	 | 
| 776 | 
            -
            	 | 
| 777 | 
            -
            	 | 
| 778 | 
            -
            	1,  | 
| 779 | 
            -
            	 | 
| 780 | 
            -
            	 | 
| 781 | 
            -
            	 | 
| 782 | 
            -
            	 | 
| 783 | 
            -
            	 | 
| 784 | 
            -
            	397,  | 
| 785 | 
            -
            	 | 
| 786 | 
            -
            	 | 
| 787 | 
            -
            	 | 
| 788 | 
            -
            	 | 
| 789 | 
            -
            	 | 
| 790 | 
            -
            	 | 
| 791 | 
            -
            	 | 
| 792 | 
            -
            	1,  | 
| 793 | 
            -
            	 | 
| 794 | 
            -
            	 | 
| 795 | 
            -
            	379,  | 
| 796 | 
            -
            	 | 
| 797 | 
            -
            	 | 
| 798 | 
            -
            	 | 
| 799 | 
            -
            	 | 
| 800 | 
            -
            	1,  | 
| 801 | 
            -
            	 | 
| 802 | 
            -
            	 | 
| 803 | 
            -
            	 | 
| 804 | 
            -
            	 | 
| 805 | 
            -
            	 | 
| 806 | 
            -
            	 | 
| 807 | 
            -
            	 | 
| 808 | 
            -
            	1,  | 
| 809 | 
            -
            	1,  | 
| 810 | 
            -
            	1,  | 
| 811 | 
            -
            	 | 
| 812 | 
            -
            	 | 
| 813 | 
            -
            	 | 
| 814 | 
            -
            	 | 
| 815 | 
            -
            	1,  | 
| 816 | 
            -
            	1,  | 
| 817 | 
            -
            	 | 
| 818 | 
            -
            	 | 
| 819 | 
            -
            	 | 
| 820 | 
            -
            	 | 
| 821 | 
            -
            	 | 
| 822 | 
            -
            	 | 
| 823 | 
            -
            	 | 
| 824 | 
            -
            	 | 
| 785 | 
            +
            	1, 133, 356, 13, 13, 356, 13, 13, 
         | 
| 786 | 
            +
            	6, 235, 1, 357, 1, 358, 1, 359, 
         | 
| 787 | 
            +
            	1, 360, 361, 362, 362, 360, 362, 362, 
         | 
| 788 | 
            +
            	1, 363, 3, 3, 363, 3, 3, 6, 
         | 
| 789 | 
            +
            	364, 1, 365, 365, 1, 365, 366, 366, 
         | 
| 790 | 
            +
            	365, 366, 366, 1, 367, 366, 366, 367, 
         | 
| 791 | 
            +
            	366, 366, 6, 368, 1, 369, 1, 370, 
         | 
| 792 | 
            +
            	1, 371, 1, 372, 372, 1, 373, 374, 
         | 
| 793 | 
            +
            	375, 376, 377, 378, 380, 380, 373, 379, 
         | 
| 794 | 
            +
            	380, 380, 1, 382, 383, 381, 384, 385, 
         | 
| 795 | 
            +
            	385, 385, 384, 386, 6, 387, 388, 389, 
         | 
| 796 | 
            +
            	390, 391, 392, 394, 394, 387, 393, 394, 
         | 
| 797 | 
            +
            	394, 1, 395, 1, 397, 398, 1, 396, 
         | 
| 798 | 
            +
            	397, 398, 399, 396, 396, 400, 397, 397, 
         | 
| 799 | 
            +
            	396, 384, 385, 385, 401, 385, 384, 386, 
         | 
| 800 | 
            +
            	6, 402, 403, 403, 402, 403, 403, 1, 
         | 
| 801 | 
            +
            	404, 405, 405, 404, 405, 405, 1, 406, 
         | 
| 802 | 
            +
            	407, 407, 408, 405, 407, 405, 406, 409, 
         | 
| 803 | 
            +
            	405, 405, 6, 387, 388, 389, 390, 391, 
         | 
| 804 | 
            +
            	392, 394, 385, 394, 387, 393, 394, 394, 
         | 
| 805 | 
            +
            	1, 411, 412, 410, 410, 413, 414, 413, 
         | 
| 806 | 
            +
            	1, 415, 385, 385, 385, 415, 386, 6, 
         | 
| 807 | 
            +
            	416, 1, 417, 1, 418, 418, 1, 419, 
         | 
| 808 | 
            +
            	374, 375, 376, 420, 378, 421, 421, 419, 
         | 
| 809 | 
            +
            	379, 421, 421, 1, 379, 1, 422, 423, 
         | 
| 810 | 
            +
            	423, 424, 423, 422, 379, 425, 6, 426, 
         | 
| 811 | 
            +
            	1, 427, 428, 428, 428, 427, 426, 429, 
         | 
| 812 | 
            +
            	6, 430, 431, 431, 432, 421, 431, 421, 
         | 
| 813 | 
            +
            	430, 433, 421, 421, 6, 434, 1, 435, 
         | 
| 814 | 
            +
            	1, 436, 437, 437, 437, 439, 436, 438, 
         | 
| 815 | 
            +
            	6, 440, 1, 387, 387, 1, 440, 26, 
         | 
| 816 | 
            +
            	440, 1, 441, 1, 442, 1, 435, 1, 
         | 
| 817 | 
            +
            	364, 443, 1, 444, 444, 1, 445, 446, 
         | 
| 818 | 
            +
            	447, 445, 1, 448, 1, 449, 1, 450, 
         | 
| 819 | 
            +
            	1, 451, 452, 452, 452, 451, 453, 6, 
         | 
| 820 | 
            +
            	454, 455, 1, 456, 1, 457, 457, 1, 
         | 
| 821 | 
            +
            	457, 446, 447, 457, 1, 458, 1, 450, 
         | 
| 822 | 
            +
            	1, 440, 459, 440, 1, 460, 41, 1, 
         | 
| 823 | 
            +
            	440, 1, 461, 462, 463, 1, 464, 1, 
         | 
| 824 | 
            +
            	465, 1, 440, 1, 466, 1, 467, 1, 
         | 
| 825 | 
            +
            	468, 1, 435, 1, 469, 1, 470, 1, 
         | 
| 826 | 
            +
            	435, 1, 440, 471, 1, 472, 1, 473, 
         | 
| 827 | 
            +
            	473, 1, 474, 475, 474, 1, 476, 1, 
         | 
| 828 | 
            +
            	460, 1, 56, 477, 1, 418, 81, 418, 
         | 
| 829 | 
            +
            	1, 478, 1, 479, 1, 480, 1, 481, 
         | 
| 830 | 
            +
            	1, 435, 1, 482, 235, 1, 483, 1, 
         | 
| 831 | 
            +
            	435, 1, 484, 1, 442, 1, 461, 1, 
         | 
| 832 | 
            +
            	485, 431, 431, 432, 380, 431, 380, 485, 
         | 
| 833 | 
            +
            	433, 380, 380, 6, 482, 1, 381, 486, 
         | 
| 834 | 
            +
            	487, 488, 489, 490, 491, 493, 493, 486, 
         | 
| 835 | 
            +
            	492, 493, 493, 1, 495, 496, 494, 497, 
         | 
| 836 | 
            +
            	498, 499, 499, 499, 497, 500, 1, 497, 
         | 
| 837 | 
            +
            	498, 499, 499, 499, 501, 502, 503, 504, 
         | 
| 838 | 
            +
            	505, 506, 507, 508, 509, 510, 511, 512, 
         | 
| 839 | 
            +
            	513, 497, 500, 1, 514, 515, 516, 517, 
         | 
| 840 | 
            +
            	518, 519, 521, 521, 514, 520, 521, 521, 
         | 
| 825 841 | 
             
            	1, 522, 1, 524, 525, 1, 523, 524, 
         | 
| 826 842 | 
             
            	525, 526, 523, 523, 527, 524, 524, 523, 
         | 
| 827 843 | 
             
            	497, 498, 499, 499, 528, 499, 497, 500, 
         | 
| 828 | 
            -
            	1, 529, 530, 529, 530, 530, 1,  | 
| 829 | 
            -
            	532, 531, 532, 532, 1, 533,  | 
| 830 | 
            -
            	 | 
| 831 | 
            -
            	 | 
| 832 | 
            -
            	 | 
| 833 | 
            -
            	 | 
| 834 | 
            -
            	 | 
| 835 | 
            -
            	 | 
| 836 | 
            -
            	 | 
| 837 | 
            -
            	 | 
| 838 | 
            -
            	546, 1,  | 
| 839 | 
            -
            	 | 
| 840 | 
            -
            	 | 
| 841 | 
            -
            	 | 
| 842 | 
            -
            	 | 
| 843 | 
            -
            	 | 
| 844 | 
            -
            	 | 
| 845 | 
            -
            	1,  | 
| 846 | 
            -
            	 | 
| 847 | 
            -
            	 | 
| 848 | 
            -
            	 | 
| 849 | 
            -
            	 | 
| 850 | 
            -
            	 | 
| 851 | 
            -
            	 | 
| 852 | 
            -
            	 | 
| 853 | 
            -
            	 | 
| 854 | 
            -
            	1,  | 
| 855 | 
            -
            	1,  | 
| 856 | 
            -
            	1,  | 
| 857 | 
            -
            	1,  | 
| 858 | 
            -
            	1,  | 
| 859 | 
            -
            	 | 
| 860 | 
            -
            	 | 
| 861 | 
            -
            	 | 
| 862 | 
            -
            	 | 
| 863 | 
            -
            	 | 
| 844 | 
            +
            	1, 529, 530, 530, 529, 530, 530, 1, 
         | 
| 845 | 
            +
            	531, 532, 532, 531, 532, 532, 1, 533, 
         | 
| 846 | 
            +
            	534, 535, 535, 536, 532, 535, 532, 533, 
         | 
| 847 | 
            +
            	537, 532, 532, 1, 514, 515, 516, 517, 
         | 
| 848 | 
            +
            	518, 519, 521, 499, 521, 514, 520, 521, 
         | 
| 849 | 
            +
            	521, 1, 539, 540, 538, 538, 541, 542, 
         | 
| 850 | 
            +
            	541, 1, 543, 498, 499, 499, 499, 543, 
         | 
| 851 | 
            +
            	500, 1, 543, 498, 499, 499, 499, 501, 
         | 
| 852 | 
            +
            	503, 504, 506, 507, 544, 509, 510, 543, 
         | 
| 853 | 
            +
            	500, 1, 545, 1, 546, 1, 514, 514, 
         | 
| 854 | 
            +
            	1, 546, 1, 546, 546, 1, 547, 1, 
         | 
| 855 | 
            +
            	548, 548, 1, 549, 550, 551, 549, 1, 
         | 
| 856 | 
            +
            	552, 1, 553, 1, 554, 1, 555, 556, 
         | 
| 857 | 
            +
            	557, 557, 557, 555, 558, 1, 559, 560, 
         | 
| 858 | 
            +
            	1, 561, 1, 562, 562, 1, 562, 550, 
         | 
| 859 | 
            +
            	551, 562, 1, 563, 1, 554, 1, 546, 
         | 
| 860 | 
            +
            	564, 546, 1, 565, 1, 546, 1, 566, 
         | 
| 861 | 
            +
            	1, 567, 1, 568, 1, 546, 1, 546, 
         | 
| 862 | 
            +
            	569, 1, 570, 1, 571, 571, 1, 572, 
         | 
| 863 | 
            +
            	573, 572, 1, 564, 1, 546, 1, 492, 
         | 
| 864 | 
            +
            	1, 574, 575, 576, 576, 577, 576, 574, 
         | 
| 865 | 
            +
            	492, 578, 1, 579, 1, 580, 581, 582, 
         | 
| 866 | 
            +
            	582, 582, 580, 579, 583, 1, 584, 585, 
         | 
| 867 | 
            +
            	586, 586, 587, 493, 586, 493, 584, 588, 
         | 
| 868 | 
            +
            	493, 493, 1, 589, 1, 590, 1, 591, 
         | 
| 869 | 
            +
            	592, 593, 593, 593, 595, 591, 594, 1, 
         | 
| 870 | 
            +
            	596, 1, 597, 1, 590, 1, 566, 598, 
         | 
| 871 | 
            +
            	599, 1, 600, 1, 601, 1, 602, 1, 
         | 
| 872 | 
            +
            	590, 1, 603, 1, 604, 1, 590, 1, 
         | 
| 873 | 
            +
            	605, 1, 606, 1, 607, 1, 608, 1, 
         | 
| 874 | 
            +
            	590, 1, 609, 1, 610, 1, 590, 1, 
         | 
| 875 | 
            +
            	611, 1, 597, 1, 494, 612, 613, 614, 
         | 
| 876 | 
            +
            	614, 612, 614, 614, 1, 615, 616, 615, 
         | 
| 877 | 
            +
            	1, 617, 618, 617, 1, 617, 618, 619, 
         | 
| 878 | 
            +
            	617, 1, 620, 1, 621, 1, 622, 1, 
         | 
| 879 | 
            +
            	623, 624, 625, 625, 623, 625, 625, 1, 
         | 
| 880 | 
            +
            	626, 627, 614, 614, 626, 614, 614, 1, 
         | 
| 864 881 | 
             
            	628, 618, 619, 629, 630, 628, 1, 631, 
         | 
| 865 | 
            -
            	1, 632, 632, 1, 632, 633,  | 
| 866 | 
            -
            	633, 1, 634, 635, 633,  | 
| 867 | 
            -
            	 | 
| 868 | 
            -
            	1, 640, 640, 1, 641, 642,  | 
| 869 | 
            -
            	 | 
| 870 | 
            -
            	 | 
| 871 | 
            -
            	 | 
| 872 | 
            -
            	 | 
| 873 | 
            -
            	 | 
| 874 | 
            -
            	 | 
| 875 | 
            -
            	 | 
| 876 | 
            -
            	 | 
| 877 | 
            -
            	 | 
| 878 | 
            -
            	 | 
| 879 | 
            -
            	 | 
| 880 | 
            -
            	 | 
| 881 | 
            -
            	 | 
| 882 | 
            -
            	 | 
| 882 | 
            +
            	1, 632, 632, 1, 632, 633, 633, 632, 
         | 
| 883 | 
            +
            	633, 633, 1, 634, 635, 633, 633, 634, 
         | 
| 884 | 
            +
            	633, 633, 1, 636, 1, 637, 1, 638, 
         | 
| 885 | 
            +
            	1, 639, 1, 640, 640, 1, 641, 642, 
         | 
| 886 | 
            +
            	643, 644, 645, 646, 648, 648, 641, 647, 
         | 
| 887 | 
            +
            	648, 648, 1, 650, 651, 649, 652, 618, 
         | 
| 888 | 
            +
            	653, 653, 653, 652, 654, 1, 652, 618, 
         | 
| 889 | 
            +
            	653, 653, 653, 655, 656, 657, 619, 658, 
         | 
| 890 | 
            +
            	659, 660, 661, 662, 663, 664, 665, 666, 
         | 
| 891 | 
            +
            	667, 652, 654, 1, 668, 669, 670, 671, 
         | 
| 892 | 
            +
            	672, 673, 675, 675, 668, 674, 675, 675, 
         | 
| 893 | 
            +
            	1, 676, 1, 678, 679, 1, 677, 678, 
         | 
| 894 | 
            +
            	679, 680, 677, 677, 681, 678, 678, 677, 
         | 
| 895 | 
            +
            	652, 618, 653, 653, 682, 653, 652, 654, 
         | 
| 896 | 
            +
            	1, 683, 684, 684, 683, 684, 684, 1, 
         | 
| 897 | 
            +
            	685, 686, 686, 685, 686, 686, 1, 687, 
         | 
| 898 | 
            +
            	688, 689, 689, 690, 686, 689, 686, 687, 
         | 
| 899 | 
            +
            	691, 686, 686, 1, 668, 669, 670, 671, 
         | 
| 900 | 
            +
            	672, 673, 675, 653, 675, 668, 674, 675, 
         | 
| 883 901 | 
             
            	675, 1, 693, 694, 692, 692, 695, 696, 
         | 
| 884 902 | 
             
            	695, 1, 697, 618, 653, 653, 653, 697, 
         | 
| 885 903 | 
             
            	654, 1, 697, 618, 653, 653, 653, 655, 
         | 
| @@ -898,50 +916,50 @@ self._querybuilder_indicies = [ | |
| 898 916 | 
             
            	1, 647, 1, 728, 729, 730, 730, 731, 
         | 
| 899 917 | 
             
            	730, 728, 647, 732, 1, 733, 1, 734, 
         | 
| 900 918 | 
             
            	735, 736, 736, 736, 734, 733, 737, 1, 
         | 
| 901 | 
            -
            	738, 739, 740, 740, 741, 740, 648,  | 
| 902 | 
            -
            	742, 648, 648, 1, 743, 1, 744,  | 
| 903 | 
            -
            	745, 746, 747, 747, 747, 749, 745,  | 
| 904 | 
            -
            	1, 750, 1, 751, 1, 744, 1,  | 
| 905 | 
            -
            	752, 753, 1, 754, 1, 755, 1,  | 
| 906 | 
            -
            	1, 744, 1, 757, 1, 758, 1,  | 
| 907 | 
            -
            	1, 759, 1, 760, 1, 761, 1,  | 
| 908 | 
            -
            	1, 744, 1, 763, 1, 764, 1,  | 
| 909 | 
            -
            	1, 765, 1, 751, 1, 649, 7,  | 
| 910 | 
            -
            	767, 768, 769, 770, 771, 7, 6,  | 
| 911 | 
            -
            	766, 772, 768, 769, 770, 771, 16,  | 
| 912 | 
            -
            	773, 766, 772, 768, 774, 769, 770,  | 
| 913 | 
            -
            	775, 773, 6, 776, 35, 769, 777,  | 
| 914 | 
            -
            	776, 6, 778, 52, 779, 771, 778,  | 
| 915 | 
            -
            	780, 779, 771, 780, 6, 781, 771,  | 
| 916 | 
            -
            	6, 782, 782, 6, 783, 89, 98,  | 
| 917 | 
            -
            	100, 785, 769, 779, 771, 783, 6,  | 
| 918 | 
            -
            	89, 769, 779, 771, 786, 6, 136,  | 
| 919 | 
            +
            	738, 739, 740, 740, 741, 648, 740, 648, 
         | 
| 920 | 
            +
            	738, 742, 648, 648, 1, 743, 1, 744, 
         | 
| 921 | 
            +
            	1, 745, 746, 747, 747, 747, 749, 745, 
         | 
| 922 | 
            +
            	748, 1, 750, 1, 751, 1, 744, 1, 
         | 
| 923 | 
            +
            	720, 752, 753, 1, 754, 1, 755, 1, 
         | 
| 924 | 
            +
            	756, 1, 744, 1, 757, 1, 758, 1, 
         | 
| 925 | 
            +
            	744, 1, 759, 1, 760, 1, 761, 1, 
         | 
| 926 | 
            +
            	762, 1, 744, 1, 763, 1, 764, 1, 
         | 
| 927 | 
            +
            	744, 1, 765, 1, 751, 1, 649, 7, 
         | 
| 928 | 
            +
            	766, 767, 768, 769, 770, 771, 7, 6, 
         | 
| 929 | 
            +
            	16, 766, 772, 768, 769, 770, 771, 16, 
         | 
| 930 | 
            +
            	6, 773, 766, 772, 768, 774, 769, 770, 
         | 
| 931 | 
            +
            	771, 775, 773, 6, 776, 35, 769, 777, 
         | 
| 932 | 
            +
            	771, 776, 6, 778, 52, 779, 771, 778, 
         | 
| 933 | 
            +
            	6, 780, 779, 771, 780, 6, 781, 771, 
         | 
| 934 | 
            +
            	781, 6, 782, 782, 6, 783, 89, 98, 
         | 
| 935 | 
            +
            	784, 100, 785, 769, 779, 771, 783, 6, 
         | 
| 936 | 
            +
            	786, 89, 769, 779, 771, 786, 6, 136, 
         | 
| 937 | 
            +
            	137, 137, 137, 787, 788, 789, 772, 790, 
         | 
| 938 | 
            +
            	791, 792, 793, 794, 795, 796, 771, 797, 
         | 
| 939 | 
            +
            	798, 799, 136, 138, 6, 167, 137, 137, 
         | 
| 940 | 
            +
            	137, 787, 789, 772, 790, 792, 793, 800, 
         | 
| 941 | 
            +
            	795, 796, 771, 167, 138, 6, 801, 137, 
         | 
| 919 942 | 
             
            	137, 137, 787, 788, 789, 772, 790, 791, 
         | 
| 920 | 
            -
            	792, 793, 794, 795, 796, 771, 797,  | 
| 921 | 
            -
            	799,  | 
| 922 | 
            -
            	 | 
| 923 | 
            -
            	 | 
| 924 | 
            -
            	 | 
| 925 | 
            -
            	 | 
| 926 | 
            -
            	 | 
| 943 | 
            +
            	792, 793, 794, 795, 796, 771, 797, 802, 
         | 
| 944 | 
            +
            	799, 801, 138, 6, 252, 253, 253, 253, 
         | 
| 945 | 
            +
            	803, 804, 805, 772, 806, 807, 808, 809, 
         | 
| 946 | 
            +
            	810, 811, 812, 771, 813, 814, 815, 252, 
         | 
| 947 | 
            +
            	254, 6, 283, 253, 253, 253, 803, 805, 
         | 
| 948 | 
            +
            	772, 806, 808, 809, 816, 811, 812, 771, 
         | 
| 949 | 
            +
            	283, 254, 6, 817, 253, 253, 253, 803, 
         | 
| 927 950 | 
             
            	804, 805, 772, 806, 807, 808, 809, 810, 
         | 
| 928 | 
            -
            	811, 812, 771, 813,  | 
| 929 | 
            -
            	6,  | 
| 930 | 
            -
            	 | 
| 931 | 
            -
            	 | 
| 932 | 
            -
            	 | 
| 933 | 
            -
            	 | 
| 934 | 
            -
            	 | 
| 935 | 
            -
            	 | 
| 936 | 
            -
            	 | 
| 951 | 
            +
            	811, 812, 771, 813, 818, 815, 817, 254, 
         | 
| 952 | 
            +
            	6, 819, 766, 772, 768, 774, 769, 770, 
         | 
| 953 | 
            +
            	771, 820, 819, 6, 821, 766, 767, 768, 
         | 
| 954 | 
            +
            	822, 769, 770, 771, 823, 821, 6, 384, 
         | 
| 955 | 
            +
            	385, 385, 385, 824, 825, 826, 767, 827, 
         | 
| 956 | 
            +
            	828, 829, 830, 831, 832, 833, 771, 834, 
         | 
| 957 | 
            +
            	835, 836, 384, 386, 6, 415, 385, 385, 
         | 
| 958 | 
            +
            	385, 824, 826, 767, 827, 829, 830, 837, 
         | 
| 959 | 
            +
            	832, 833, 771, 415, 386, 6, 838, 385, 
         | 
| 937 960 | 
             
            	385, 385, 824, 825, 826, 767, 827, 828, 
         | 
| 938 | 
            -
            	829, 830, 831, 832, 833, 771, 834,  | 
| 939 | 
            -
            	836,  | 
| 940 | 
            -
            	824, 826, 767, 827, 829, 830, 837, 832, 
         | 
| 941 | 
            -
            	833, 771, 415, 386, 6, 838, 385, 385, 
         | 
| 942 | 
            -
            	385, 824, 825, 826, 767, 827, 828, 829, 
         | 
| 943 | 
            -
            	830, 831, 832, 833, 771, 834, 839, 836, 
         | 
| 944 | 
            -
            	838, 386, 6, 1, 1, 0
         | 
| 961 | 
            +
            	829, 830, 831, 832, 833, 771, 834, 839, 
         | 
| 962 | 
            +
            	836, 838, 386, 6, 1, 1, 0
         | 
| 945 963 | 
             
            ]
         | 
| 946 964 |  | 
| 947 965 | 
             
            class << self
         | 
| @@ -1274,7 +1292,7 @@ end | |
| 1274 1292 | 
             
            self.querybuilder_en_main = 1;
         | 
| 1275 1293 |  | 
| 1276 1294 |  | 
| 1277 | 
            -
            # line  | 
| 1295 | 
            +
            # line 193 "querybuilder_rb.rl"
         | 
| 1278 1296 |  | 
| 1279 1297 | 
             
                def self.parse(arg)
         | 
| 1280 1298 | 
             
                  if arg.kind_of?(Array)
         | 
| @@ -1282,22 +1300,23 @@ self.querybuilder_en_main = 1; | |
| 1282 1300 | 
             
                  else
         | 
| 1283 1301 | 
             
                    data = "#{arg}\n"
         | 
| 1284 1302 | 
             
                  end
         | 
| 1303 | 
            +
                  par_count = 0
         | 
| 1285 1304 | 
             
                  stack = [[:query]]
         | 
| 1286 1305 | 
             
                  last  = stack.last
         | 
| 1287 1306 | 
             
                  str_buf         = ""
         | 
| 1288 1307 | 
             
                  clause_state = :relation
         | 
| 1289 1308 | 
             
                  eof = 0;
         | 
| 1290 1309 |  | 
| 1291 | 
            -
            # line  | 
| 1310 | 
            +
            # line 1311 "querybuilder_rb.rb"
         | 
| 1292 1311 | 
             
            begin
         | 
| 1293 1312 | 
             
            	p ||= 0
         | 
| 1294 1313 | 
             
            	pe ||= data.length
         | 
| 1295 1314 | 
             
            	cs = querybuilder_start
         | 
| 1296 1315 | 
             
            end
         | 
| 1297 1316 |  | 
| 1298 | 
            -
            # line  | 
| 1317 | 
            +
            # line 207 "querybuilder_rb.rl"
         | 
| 1299 1318 |  | 
| 1300 | 
            -
            # line  | 
| 1319 | 
            +
            # line 1320 "querybuilder_rb.rb"
         | 
| 1301 1320 | 
             
            begin
         | 
| 1302 1321 | 
             
            	_klen, _trans, _keys, _acts, _nacts = nil
         | 
| 1303 1322 | 
             
            	_goto_level = 0
         | 
| @@ -1497,6 +1516,7 @@ when 16 then | |
| 1497 1516 | 
             
            		begin
         | 
| 1498 1517 |  | 
| 1499 1518 | 
             
                  # remember current machine state 'cs'
         | 
| 1519 | 
            +
                  par_count += 1
         | 
| 1500 1520 | 
             
                  last << [:par, cs]
         | 
| 1501 1521 | 
             
                  stack.push last.last
         | 
| 1502 1522 | 
             
                  last = last.last
         | 
| @@ -1509,11 +1529,12 @@ when 16 then | |
| 1509 1529 |  | 
| 1510 1530 | 
             
                		end
         | 
| 1511 1531 | 
             
            when 17 then
         | 
| 1512 | 
            -
            # line  | 
| 1532 | 
            +
            # line 97 "querybuilder_rb.rl"
         | 
| 1513 1533 | 
             
            		begin
         | 
| 1514 1534 |  | 
| 1515 1535 | 
             
                  pop_stack(stack, :par_close)
         | 
| 1516 1536 | 
             
                  # reset machine state 'cs'
         | 
| 1537 | 
            +
                  par_count -= 1
         | 
| 1517 1538 | 
             
                  cs = stack.last.delete_at(1)
         | 
| 1518 1539 | 
             
                  # one more time to remove [:par...] line
         | 
| 1519 1540 | 
             
                  stack.pop
         | 
| @@ -1522,7 +1543,7 @@ when 17 then | |
| 1522 1543 | 
             
                  p = p - 1;
         | 
| 1523 1544 | 
             
                		end
         | 
| 1524 1545 | 
             
            when 18 then
         | 
| 1525 | 
            -
            # line  | 
| 1546 | 
            +
            # line 109 "querybuilder_rb.rl"
         | 
| 1526 1547 | 
             
            		begin
         | 
| 1527 1548 |  | 
| 1528 1549 | 
             
                  # remember current machine state 'cs'
         | 
| @@ -1539,7 +1560,7 @@ when 18 then | |
| 1539 1560 |  | 
| 1540 1561 | 
             
                		end
         | 
| 1541 1562 | 
             
            when 19 then
         | 
| 1542 | 
            -
            # line  | 
| 1563 | 
            +
            # line 118 "querybuilder_rb.rl"
         | 
| 1543 1564 | 
             
            		begin
         | 
| 1544 1565 |  | 
| 1545 1566 | 
             
                  pop_stack(stack, :clause_par_close)
         | 
| @@ -1553,7 +1574,7 @@ when 19 then | |
| 1553 1574 | 
             
                  p = p - 1;
         | 
| 1554 1575 | 
             
                		end
         | 
| 1555 1576 | 
             
            when 20 then
         | 
| 1556 | 
            -
            # line  | 
| 1577 | 
            +
            # line 130 "querybuilder_rb.rl"
         | 
| 1557 1578 | 
             
            		begin
         | 
| 1558 1579 |  | 
| 1559 1580 | 
             
                  last = apply_op(stack, :scope)
         | 
| @@ -1561,53 +1582,53 @@ when 20 then | |
| 1561 1582 | 
             
                  str_buf = ""
         | 
| 1562 1583 | 
             
                		end
         | 
| 1563 1584 | 
             
            when 21 then
         | 
| 1564 | 
            -
            # line  | 
| 1585 | 
            +
            # line 136 "querybuilder_rb.rl"
         | 
| 1565 1586 | 
             
            		begin
         | 
| 1566 1587 |  | 
| 1567 1588 | 
             
                  last = apply_op(stack, :offset)
         | 
| 1568 1589 | 
             
                		end
         | 
| 1569 1590 | 
             
            when 22 then
         | 
| 1570 | 
            -
            # line  | 
| 1591 | 
            +
            # line 140 "querybuilder_rb.rl"
         | 
| 1571 1592 | 
             
            		begin
         | 
| 1572 1593 |  | 
| 1573 1594 | 
             
                  last << [:param, str_buf]
         | 
| 1574 1595 | 
             
                  str_buf = ""
         | 
| 1575 1596 | 
             
                		end
         | 
| 1576 1597 | 
             
            when 23 then
         | 
| 1577 | 
            -
            # line  | 
| 1598 | 
            +
            # line 145 "querybuilder_rb.rl"
         | 
| 1578 1599 | 
             
            		begin
         | 
| 1579 1600 |  | 
| 1580 1601 | 
             
                  last = apply_op(stack, :paginate)
         | 
| 1581 1602 | 
             
                		end
         | 
| 1582 1603 | 
             
            when 24 then
         | 
| 1583 | 
            -
            # line  | 
| 1604 | 
            +
            # line 149 "querybuilder_rb.rl"
         | 
| 1584 1605 | 
             
            		begin
         | 
| 1585 1606 |  | 
| 1586 1607 | 
             
                  last = apply_op(stack, :limit)
         | 
| 1587 1608 | 
             
                  str_buf = ""
         | 
| 1588 1609 | 
             
                		end
         | 
| 1589 1610 | 
             
            when 25 then
         | 
| 1590 | 
            -
            # line  | 
| 1611 | 
            +
            # line 154 "querybuilder_rb.rl"
         | 
| 1591 1612 | 
             
            		begin
         | 
| 1592 1613 |  | 
| 1593 1614 | 
             
                  last = apply_op(stack, :order)
         | 
| 1594 1615 | 
             
                  str_buf = ""
         | 
| 1595 1616 | 
             
                		end
         | 
| 1596 1617 | 
             
            when 26 then
         | 
| 1597 | 
            -
            # line  | 
| 1618 | 
            +
            # line 159 "querybuilder_rb.rl"
         | 
| 1598 1619 | 
             
            		begin
         | 
| 1599 1620 |  | 
| 1600 1621 | 
             
                  last = apply_op(stack, :group)
         | 
| 1601 1622 | 
             
                		end
         | 
| 1602 1623 | 
             
            when 27 then
         | 
| 1603 | 
            -
            # line  | 
| 1624 | 
            +
            # line 163 "querybuilder_rb.rl"
         | 
| 1604 1625 | 
             
            		begin
         | 
| 1605 1626 |  | 
| 1606 1627 | 
             
                  last = apply_op(stack, :from)
         | 
| 1607 1628 | 
             
                  clause_state = :relation
         | 
| 1608 1629 | 
             
                		end
         | 
| 1609 1630 | 
             
            when 28 then
         | 
| 1610 | 
            -
            # line  | 
| 1631 | 
            +
            # line 168 "querybuilder_rb.rl"
         | 
| 1611 1632 | 
             
            		begin
         | 
| 1612 1633 |  | 
| 1613 1634 | 
             
                  if clause_state == :relation
         | 
| @@ -1616,14 +1637,14 @@ when 28 then | |
| 1616 1637 | 
             
                  end
         | 
| 1617 1638 | 
             
                		end
         | 
| 1618 1639 | 
             
            when 29 then
         | 
| 1619 | 
            -
            # line  | 
| 1640 | 
            +
            # line 179 "querybuilder_rb.rl"
         | 
| 1620 1641 | 
             
            		begin
         | 
| 1621 1642 |  | 
| 1622 1643 | 
             
                  p = p - 3
         | 
| 1623 1644 | 
             
                  p = 0 if p < 0
         | 
| 1624 1645 | 
             
                  raise QueryBuilder::SyntaxError.new("Syntax error near #{data[p..-1].chomp.inspect}.")
         | 
| 1625 1646 | 
             
                		end
         | 
| 1626 | 
            -
            # line  | 
| 1647 | 
            +
            # line 1648 "querybuilder_rb.rb"
         | 
| 1627 1648 | 
             
            			end # action switch
         | 
| 1628 1649 | 
             
            		end
         | 
| 1629 1650 | 
             
            	end
         | 
| @@ -1652,14 +1673,14 @@ when 29 then | |
| 1652 1673 | 
             
            		__acts += 1
         | 
| 1653 1674 | 
             
            		case _querybuilder_actions[__acts - 1]
         | 
| 1654 1675 | 
             
            when 29 then
         | 
| 1655 | 
            -
            # line  | 
| 1676 | 
            +
            # line 179 "querybuilder_rb.rl"
         | 
| 1656 1677 | 
             
            		begin
         | 
| 1657 1678 |  | 
| 1658 1679 | 
             
                  p = p - 3
         | 
| 1659 1680 | 
             
                  p = 0 if p < 0
         | 
| 1660 1681 | 
             
                  raise QueryBuilder::SyntaxError.new("Syntax error near #{data[p..-1].chomp.inspect}.")
         | 
| 1661 1682 | 
             
                		end
         | 
| 1662 | 
            -
            # line  | 
| 1683 | 
            +
            # line 1684 "querybuilder_rb.rb"
         | 
| 1663 1684 | 
             
            		end # eof action switch
         | 
| 1664 1685 | 
             
            	end
         | 
| 1665 1686 | 
             
            	if _trigger_goto
         | 
| @@ -1673,12 +1694,16 @@ end | |
| 1673 1694 | 
             
            	end
         | 
| 1674 1695 | 
             
            	end
         | 
| 1675 1696 |  | 
| 1676 | 
            -
            # line  | 
| 1697 | 
            +
            # line 208 "querybuilder_rb.rl"
         | 
| 1677 1698 |  | 
| 1678 1699 | 
             
                  if p < pe
         | 
| 1679 1700 | 
             
                    p = p - 3
         | 
| 1680 1701 | 
             
                    p = 0 if p < 0
         | 
| 1681 | 
            -
                    raise QueryBuilder::SyntaxError.new("Syntax error near #{data[p..- | 
| 1702 | 
            +
                    raise QueryBuilder::SyntaxError.new("Syntax error near #{data[p..-2].inspect}.")
         | 
| 1703 | 
            +
                  end
         | 
| 1704 | 
            +
             | 
| 1705 | 
            +
                  if par_count > 0
         | 
| 1706 | 
            +
                    raise QueryBuilder::SyntaxError.new("Missing closing parenthesis in #{data[0..-2].inspect}.")
         | 
| 1682 1707 | 
             
                  end
         | 
| 1683 1708 | 
             
                  stack.first
         | 
| 1684 1709 | 
             
                end
         |