From 88b857d814318e3f4e881fe562ccc8254146bf08 Mon Sep 17 00:00:00 2001
From: Erik Verbruggen <erik.verbruggen@nokia.com>
Date: Mon, 18 Jan 2010 10:09:38 +0100
Subject: [PATCH] Incorporated a73a9b168570d205185b370bcd24b4d0435530e4 from
 kinetic-declarativeui.

Fixed the parser to start with the correct rule when requested to parse JS Source Elements.
---
 src/shared/qmljs/parser/qmljs.g          |    2 +-
 src/shared/qmljs/parser/qmljsgrammar.cpp | 1300 +++++++++++-----------
 src/shared/qmljs/parser/qmljsgrammar_p.h |    4 +-
 3 files changed, 672 insertions(+), 634 deletions(-)

diff --git a/src/shared/qmljs/parser/qmljs.g b/src/shared/qmljs/parser/qmljs.g
index 49590e8ea2e..ec9a95611b3 100644
--- a/src/shared/qmljs/parser/qmljs.g
+++ b/src/shared/qmljs/parser/qmljs.g
@@ -541,7 +541,7 @@ case $rule_number: {
 } break;
 ./
 
-TopLevel: T_FEED_JS_SOURCE_ELEMENT Expression ;
+TopLevel: T_FEED_JS_SOURCE_ELEMENT SourceElement ;
 /.
 case $rule_number: {
   sym(1).Node = sym(2).Node;
diff --git a/src/shared/qmljs/parser/qmljsgrammar.cpp b/src/shared/qmljs/parser/qmljsgrammar.cpp
index 5d6eb022898..c0209fc3912 100644
--- a/src/shared/qmljs/parser/qmljsgrammar.cpp
+++ b/src/shared/qmljs/parser/qmljsgrammar.cpp
@@ -57,40 +57,40 @@ const char *const QmlJSGrammar::spell [] = {
   "import", "as", 0, 0, 0, 0, 0, 0, 0};
 
 const short QmlJSGrammar::lhs [] = {
-  99, 99, 99, 99, 99, 100, 104, 104, 107, 107, 
-  109, 108, 108, 108, 108, 108, 108, 108, 108, 111, 
-  106, 105, 114, 114, 115, 115, 116, 116, 113, 103, 
-  103, 103, 103, 103, 103, 103, 122, 122, 122, 123, 
-  123, 124, 124, 103, 103, 103, 103, 103, 103, 103, 
-  103, 103, 103, 103, 103, 103, 103, 103, 103, 103, 
-  103, 112, 112, 112, 112, 127, 127, 127, 127, 127, 
-  127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 
-  127, 127, 127, 117, 129, 129, 129, 129, 128, 128, 
-  131, 131, 133, 133, 133, 133, 133, 133, 134, 134, 
-  134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 
-  134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 
-  134, 134, 134, 134, 134, 134, 134, 134, 134, 135, 
-  135, 110, 110, 110, 110, 110, 138, 138, 139, 139, 
-  139, 139, 137, 137, 140, 140, 141, 141, 142, 142, 
-  142, 143, 143, 143, 143, 143, 143, 143, 143, 143, 
-  143, 144, 144, 144, 144, 145, 145, 145, 146, 146, 
-  146, 146, 147, 147, 147, 147, 147, 147, 147, 148, 
-  148, 148, 148, 148, 148, 149, 149, 149, 149, 149, 
-  150, 150, 150, 150, 150, 151, 151, 152, 152, 153, 
-  153, 154, 154, 155, 155, 156, 156, 157, 157, 158, 
-  158, 159, 159, 160, 160, 161, 161, 162, 162, 132, 
-  132, 163, 163, 164, 164, 164, 164, 164, 164, 164, 
-  164, 164, 164, 164, 164, 102, 102, 165, 165, 166, 
-  166, 167, 167, 101, 101, 101, 101, 101, 101, 101, 
-  101, 101, 101, 101, 101, 101, 101, 101, 118, 179, 
-  179, 178, 178, 126, 126, 180, 180, 181, 181, 183, 
-  183, 182, 184, 187, 185, 185, 188, 186, 186, 119, 
-  120, 120, 121, 121, 168, 168, 168, 168, 168, 168, 
-  168, 169, 169, 169, 169, 170, 170, 170, 170, 171, 
-  171, 172, 174, 189, 189, 192, 192, 190, 190, 193, 
-  191, 173, 173, 173, 175, 175, 176, 176, 176, 194, 
-  195, 177, 177, 125, 136, 199, 199, 196, 196, 197, 
-  197, 200, 201, 201, 202, 202, 198, 198, 130, 130, 
+  99, 99, 99, 99, 99, 100, 105, 105, 108, 108, 
+  110, 109, 109, 109, 109, 109, 109, 109, 109, 112, 
+  107, 106, 115, 115, 116, 116, 117, 117, 114, 104, 
+  104, 104, 104, 104, 104, 104, 123, 123, 123, 124, 
+  124, 125, 125, 104, 104, 104, 104, 104, 104, 104, 
+  104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 
+  104, 113, 113, 113, 113, 128, 128, 128, 128, 128, 
+  128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 
+  128, 128, 128, 118, 130, 130, 130, 130, 129, 129, 
+  132, 132, 134, 134, 134, 134, 134, 134, 135, 135, 
+  135, 135, 135, 135, 135, 135, 135, 135, 135, 135, 
+  135, 135, 135, 135, 135, 135, 135, 135, 135, 135, 
+  135, 135, 135, 135, 135, 135, 135, 135, 135, 136, 
+  136, 111, 111, 111, 111, 111, 139, 139, 140, 140, 
+  140, 140, 138, 138, 141, 141, 142, 142, 143, 143, 
+  143, 144, 144, 144, 144, 144, 144, 144, 144, 144, 
+  144, 145, 145, 145, 145, 146, 146, 146, 147, 147, 
+  147, 147, 148, 148, 148, 148, 148, 148, 148, 149, 
+  149, 149, 149, 149, 149, 150, 150, 150, 150, 150, 
+  151, 151, 151, 151, 151, 152, 152, 153, 153, 154, 
+  154, 155, 155, 156, 156, 157, 157, 158, 158, 159, 
+  159, 160, 160, 161, 161, 162, 162, 163, 163, 133, 
+  133, 164, 164, 165, 165, 165, 165, 165, 165, 165, 
+  165, 165, 165, 165, 165, 102, 102, 166, 166, 167, 
+  167, 168, 168, 101, 101, 101, 101, 101, 101, 101, 
+  101, 101, 101, 101, 101, 101, 101, 101, 119, 180, 
+  180, 179, 179, 127, 127, 181, 181, 182, 182, 184, 
+  184, 183, 185, 188, 186, 186, 189, 187, 187, 120, 
+  121, 121, 122, 122, 169, 169, 169, 169, 169, 169, 
+  169, 170, 170, 170, 170, 171, 171, 171, 171, 172, 
+  172, 173, 175, 190, 190, 193, 193, 191, 191, 194, 
+  192, 174, 174, 174, 176, 176, 177, 177, 177, 195, 
+  196, 178, 178, 126, 137, 200, 200, 197, 197, 198, 
+  198, 201, 202, 202, 103, 103, 199, 199, 131, 131, 
   203};
 
 const short QmlJSGrammar::rhs [] = {
@@ -197,252 +197,259 @@ const short QmlJSGrammar::action_default [] = {
   22, 6, 341};
 
 const short QmlJSGrammar::goto_default [] = {
-  6, 613, 356, 194, 503, 612, 631, 607, 611, 609, 
-  614, 21, 610, 17, 502, 604, 595, 557, 504, 189, 
-  193, 195, 199, 520, 546, 545, 198, 230, 25, 472, 
-  471, 354, 353, 8, 352, 355, 105, 16, 143, 23, 
-  12, 142, 18, 24, 55, 22, 7, 27, 26, 267, 
-  14, 261, 9, 257, 11, 259, 10, 258, 19, 265, 
-  20, 266, 13, 260, 256, 297, 409, 262, 263, 200, 
-  191, 190, 202, 231, 201, 206, 227, 228, 192, 358, 
-  357, 229, 461, 460, 319, 320, 463, 322, 462, 321, 
-  417, 421, 424, 420, 419, 439, 440, 183, 197, 179, 
-  182, 196, 204, 203, 0};
+  6, 613, 356, 194, 203, 503, 612, 631, 607, 611, 
+  609, 614, 21, 610, 17, 502, 604, 595, 557, 504, 
+  189, 193, 195, 199, 520, 546, 545, 198, 230, 25, 
+  472, 471, 354, 353, 8, 352, 355, 105, 16, 143, 
+  23, 12, 142, 18, 24, 55, 22, 7, 27, 26, 
+  267, 14, 261, 9, 257, 11, 259, 10, 258, 19, 
+  265, 20, 266, 13, 260, 256, 297, 409, 262, 263, 
+  200, 191, 190, 202, 231, 201, 206, 227, 228, 192, 
+  358, 357, 229, 461, 460, 319, 320, 463, 322, 462, 
+  321, 417, 421, 424, 420, 419, 439, 440, 183, 197, 
+  179, 182, 196, 204, 0};
 
 const short QmlJSGrammar::action_index [] = {
-  316, 1136, 1136, 2148, 870, -77, 22, 108, -99, 54, 
-  18, -20, 166, -99, 307, 40, -99, -99, 510, 30, 
-  84, 184, 270, -99, -99, -99, 511, 171, 1136, -99, 
-  -99, -99, 269, -99, 1958, 1407, 1136, 1136, 1136, -99, 
-  585, 1136, -99, -99, 1136, 1136, -99, -99, -99, -99, 
-  -99, 1136, -99, 1136, 1136, -99, 1136, 1136, 122, 270, 
-  -99, -99, 1136, 1136, 1136, -99, -99, -99, 270, 1136, 
-  302, 1136, 1136, 1136, 1136, 511, 1136, 1136, 1136, 1136, 
-  1136, 1136, 176, 1136, 1136, 1136, 93, 95, 92, 208, 
-  217, 236, 242, 241, 511, 511, 511, 1136, -5, 1136, 
-  86, 1863, 1136, 1136, -99, -99, -99, -99, -99, -99, 
+  336, 1295, 2402, 2307, 1029, -1, 68, 106, -99, 62, 
+  24, -9, 266, -99, 315, 69, -99, -99, 582, 92, 
+  95, 176, 142, -99, -99, -99, 583, 186, 1295, -99, 
+  -99, -99, 341, -99, 2117, 1566, 1295, 1295, 1295, -99, 
+  932, 1295, -99, -99, 1295, 1295, -99, -99, -99, -99, 
+  -99, 1295, -99, 1295, 1295, -99, 1295, 1295, 105, 217, 
+  -99, -99, 1295, 1295, 1295, -99, -99, -99, 235, 1295, 
+  431, 1295, 1295, 1295, 1295, 435, 1295, 1295, 1295, 1295, 
+  1295, 1295, 213, 1295, 1295, 1295, 128, 102, 93, 241, 
+  240, 219, 218, 237, 482, 450, 492, 1295, 16, 1295, 
+  182, 2022, 1295, 1295, -99, -99, -99, -99, -99, -99, 
   -99, -99, -99, -99, -99, -99, -99, -99, -99, -99, 
   -99, -99, -99, -99, -99, -99, -99, -99, -99, -99, 
-  -99, -99, -99, -99, -99, -99, -99, -99, 132, 1136, 
-  -99, -99, 53, 8, -99, 1136, -99, -99, 1136, -99, 
+  -99, -99, -99, -99, -99, -99, -99, -99, 114, 1295, 
+  -99, -99, 46, -10, -99, 1295, -99, -99, 1295, -99, 
   -99, -99, -99, -99, -99, -99, -99, -99, -99, -99, 
-  -99, -99, 1136, -24, 1136, 1136, 27, 37, 1136, -99, 
-  1863, 1136, 1136, -99, 110, -99, -25, -99, -99, -2, 
-  -99, 339, 52, 4, -99, 325, -99, 29, 2243, -99, 
-  -99, -99, -99, -99, 196, -99, -99, -39, -99, -99, 
-  -99, -99, -99, -99, 2243, -99, -99, 416, -99, 405, 
-  91, 2148, 60, 335, 76, 41, 2433, 73, 1136, -99, 
-  74, 58, 1136, 49, -99, 57, 31, -99, -99, 272, 
-  -99, -99, -99, -99, -99, -99, 129, -99, -99, -99, 
-  -99, 118, -99, -99, -99, -99, -99, -99, 38, 62, 
-  1136, 109, 101, -99, -99, 1316, -99, 183, 36, 35, 
-  -99, 304, 61, 25, 547, 63, 111, 394, 262, 299, 
-  1136, 435, 1136, 1136, 1136, 1136, 398, 1136, 1136, 1136, 
-  1136, 1136, 209, 202, 186, 214, 218, 423, 404, 433, 
-  1136, -3, 1136, 70, 1136, -99, 607, 1136, -99, 1136, 
-  64, 12, 1136, 50, 2148, -99, 1136, 146, 2148, -99, 
-  1136, 43, 1136, 1136, 97, 98, 1136, -99, 89, 128, 
-  78, -99, -99, 1136, -99, 275, 1136, -99, 34, 1136, 
-  -40, 2148, -99, 1136, 133, 2148, -99, -17, 305, -43, 
-  -18, 2243, -41, -99, 2148, -99, 1136, 114, 2148, 11, 
-  2148, -99, 19, 20, -30, -99, -99, 2148, -45, 430, 
-  85, 450, 96, 1136, 2148, -7, -31, 384, 5, -27, 
-  773, 0, -1, -99, 1228, -99, 1, -32, 16, 1136, 
-  23, 24, 1136, 47, 1136, 17, 15, 1136, -99, 2053, 
-  51, -99, -99, -99, -99, -99, -99, 1136, -99, -99, 
-  -99, -99, 256, -99, 1136, -10, -99, 2148, -99, 68, 
-  -99, -99, 2148, -99, 1136, 117, 3, -99, 28, -99, 
-  26, 113, 1136, -99, 32, 33, -99, -8, -99, 2148, 
-  -99, 120, 2148, -99, 170, -99, -99, 106, 2148, 21, 
-  -99, 7, 6, -99, 295, -15, 9, -99, -99, -99, 
-  -99, 1136, 134, 2148, -99, 1136, 152, 2148, -99, -16, 
-  -99, 189, -99, -99, 1136, -99, -99, 290, -99, -99, 
-  -99, 131, 1498, -99, -99, 1680, -99, -99, 1589, -99, 
-  -99, -99, -99, -99, -99, 116, -99, -99, -99, -99, 
-  -99, -99, -99, 48, -99, -99, 136, -55, 781, 142, 
-  -64, -26, -99, -99, 112, -99, 243, -99, -99, -99, 
-  -11, 160, -99, 1136, -99, 164, -99, -99, 263, 66, 
-  75, 187, 87, 79, 88, -99, -99, 198, -99, 1136, 
-  -99, 215, -99, -99, 179, 56, 71, 1136, 222, -99, 
-  -99, 234, -99, 219, -99, 55, 10, 246, 178, 315, 
-  -99, 124, -99, -99, -99, 1768, 1048, -99, -99, -99, 
-  -99, -99, 354, 2338, 1407, 13, 458, 85, 440, 121, 
-  1136, 2148, 14, 2, 348, 42, 65, 666, 82, 81, 
-  -99, 1228, -99, 83, 39, 72, 1136, 90, 67, 1136, 
-  100, 1136, 80, 77, 273, 139, -99, 69, 694, -99, 
-  -99, -99, -99, -99, 959, -99, -99, -99, 781, -99, 
-  255, -38, 694, -99, -99, 158, 330, -99, 224, -99, 
-  59, -99, -99, 264, -99, -99, 94, -99, -99, -99, 
+  -99, -99, 1295, 44, 1295, 1295, 76, 66, 1295, -99, 
+  2022, 1295, 1295, -99, 100, -99, -12, -99, -99, 7, 
+  -99, 314, 29, -26, -99, 296, -99, 3, 2402, -99, 
+  -99, -99, -99, -99, 245, -99, -99, -2, -99, -99, 
+  -99, -99, -99, -99, 2402, -99, -99, 505, -99, 479, 
+  134, 2307, -35, 291, 84, -30, 2592, 35, 1295, -99, 
+  34, 4, 1295, -25, -99, 65, 61, -99, -99, 337, 
+  -99, -99, -99, -99, -99, -99, 101, -99, -99, -99, 
+  -99, 141, -99, -99, -99, -99, -99, -99, -51, -11, 
+  1295, 111, 64, -99, -99, 1475, -99, 82, 38, 14, 
+  -99, 290, 73, 15, 619, 83, 57, 420, 246, 264, 
+  1295, 299, 1295, 1295, 1295, 1295, 507, 1295, 1295, 1295, 
+  1295, 1295, 195, 198, 192, 189, 225, 507, 410, 416, 
+  1295, 1, 1295, 74, 1295, -99, 679, 1295, -99, 1295, 
+  63, 5, 1295, 52, 2307, -99, 1295, 144, 2307, -99, 
+  1295, 54, 1295, 1295, 94, 96, 1295, -99, 88, 98, 
+  86, -99, -99, 1295, -99, 358, 1295, -99, -43, 1295, 
+  -44, 2307, -99, 1295, 107, 2307, -99, -15, 354, -36, 
+  -5, 2402, -28, -99, 2307, -99, 1295, 130, 2307, -4, 
+  2307, -99, 8, -8, -53, -99, -99, 2307, -52, 433, 
+  2, 436, 123, 1295, 2307, 0, -31, 425, 13, -3, 
+  845, 22, 42, -99, 1387, -99, 37, 11, 45, 1295, 
+  49, 27, 1295, 51, 1295, 26, 23, 1295, -99, 2212, 
+  48, -99, -99, -99, -99, -99, -99, 1295, -99, -99, 
+  -99, -99, 350, -99, 1295, -29, -99, 2307, -99, 103, 
+  -99, -99, 2307, -99, 1295, 113, 6, -99, 33, -99, 
+  17, 119, 1295, -99, 25, 28, -99, -23, -99, 2307, 
+  -99, 124, 2307, -99, 173, -99, -99, 121, 2307, 41, 
+  -99, -22, 18, -99, 344, 50, 85, -99, -99, -99, 
+  -99, 1295, 140, 2307, -99, 1295, 129, 2307, -99, 47, 
+  -99, 147, -99, -99, 1295, -99, -99, 274, -99, -99, 
+  -99, 122, 1657, -99, -99, 1839, -99, -99, 1748, -99, 
+  -99, -99, -99, -99, -99, 120, -99, -99, -99, -99, 
+  -99, -99, -99, -99, -99, -99, 160, -62, 657, 153, 
+  -56, -18, -99, -99, 133, -99, 229, -99, -99, -99, 
+  -16, 199, -99, 1295, -99, 180, -99, -99, 261, 72, 
+  71, 197, 89, 70, 115, -99, -99, 208, -99, 1295, 
+  -99, 193, -99, -99, 202, 40, 60, 1295, 224, -99, 
+  -99, 251, -99, 230, -99, 79, 30, 281, 253, 348, 
+  -99, 125, -99, -99, -99, 1927, 1118, -99, -99, -99, 
+  -99, -99, 335, 2497, 1566, 90, 497, 58, 489, 136, 
+  1295, 2307, 81, 9, 370, 39, -13, 766, 10, 75, 
+  -99, 1387, -99, 77, 43, 67, 1295, 91, 87, 1295, 
+  97, 1295, 80, 78, 361, 116, -99, -14, 853, -99, 
+  -99, -99, -99, -99, 1207, -99, -99, -99, 940, -99, 
+  276, -33, 738, -99, -99, 135, 325, -99, 228, -99, 
+  99, -99, -99, 285, -99, -99, 131, -99, -99, -99, 
   -99, -99, -99, 
 
-  -105, 12, 13, 16, 226, -105, -105, -105, -105, -105, 
-  -105, -105, -105, -105, -105, -105, -105, -105, -57, -105, 
-  -105, -105, -105, -105, -105, -105, -105, -105, 68, -105, 
-  -105, -105, -2, -105, -105, -14, 25, 80, 84, -105, 
-  136, 178, -105, -105, 173, 170, -105, -105, -105, -105, 
-  -105, 139, -105, 165, 132, -105, 128, 124, -105, -105, 
-  -105, -105, 146, 142, 145, -105, -105, -105, -105, 143, 
-  -105, 149, 153, 158, 150, -105, 135, 118, 177, 157, 
-  161, 179, -105, 85, 73, 117, -105, -105, -105, -105, 
-  -105, -105, -105, -105, -105, -105, -105, 94, -105, 97, 
-  -105, 183, 79, 64, -105, -105, -105, -105, -105, -105, 
+  -105, 6, 90, 3, 224, -105, -105, -105, -105, -105, 
+  -105, -105, -105, -105, -105, -105, -105, -105, -40, -105, 
+  -105, -105, -105, -105, -105, -105, -105, -105, 58, -105, 
+  -105, -105, 1, -105, -105, -24, 13, 80, 87, -105, 
+  151, 175, -105, -105, 172, 169, -105, -105, -105, -105, 
+  -105, 140, -105, 133, 159, -105, 131, 108, -105, -105, 
+  -105, -105, 153, 143, 147, -105, -105, -105, -105, 136, 
+  -105, 146, 154, 157, 150, -105, 124, 132, 123, 176, 
+  173, 162, -105, 103, 84, 73, -105, -105, -105, -105, 
+  -105, -105, -105, -105, -105, -105, -105, 104, -105, 96, 
+  -105, 270, 9, 56, -105, -105, -105, -105, -105, -105, 
   -105, -105, -105, -105, -105, -105, -105, -105, -105, -105, 
   -105, -105, -105, -105, -105, -105, -105, -105, -105, -105, 
-  -105, -105, -105, -105, -105, -105, -105, -105, -105, 56, 
-  -105, -105, -105, -105, -105, 15, -105, -105, 37, -105, 
+  -105, -105, -105, -105, -105, -105, -105, -105, -105, 17, 
+  -105, -105, -105, -105, -105, 22, -105, -105, 19, -105, 
   -105, -105, -105, -105, -105, -105, -105, -105, -105, -105, 
-  -105, -105, 65, -105, 67, 53, -105, -105, 40, -105, 
-  212, 52, 172, -105, -105, -105, -105, -105, -105, -105, 
-  -105, -11, -105, -105, -105, 46, -105, -105, 55, -105, 
+  -105, -105, 61, -105, 65, 50, -105, -105, 35, -105, 
+  226, 52, 106, -105, -105, -105, -105, -105, -105, -105, 
+  -105, -10, -105, -105, -105, 46, -105, -105, 57, -105, 
   -105, -105, -105, -105, -105, -105, -105, -105, -105, -105, 
-  -105, -105, -105, -105, 99, -105, -105, 38, -105, 36, 
-  -105, 42, -105, 71, -105, -105, -105, -105, 74, -105, 
-  -105, -105, 72, 57, -105, -105, -105, -105, -105, -8, 
+  -105, -105, -105, -105, 91, -105, -105, 34, -105, 33, 
+  -105, 31, -105, 66, -105, -105, -105, -105, 179, -105, 
+  -105, -105, 71, 53, -105, -105, -105, -105, -105, -6, 
   -105, -105, -105, -105, -105, -105, -105, -105, -105, -105, 
   -105, -105, -105, -105, -105, -105, -105, -105, -105, -105, 
-  10, -105, -105, -105, -105, 109, -105, -105, -105, -105, 
-  -105, -105, -105, -105, -105, -105, -105, -105, -105, 8, 
-  185, -105, 231, 241, 250, 242, -105, 115, 87, 108, 
-  98, 95, -105, -105, -105, -105, -105, -105, -105, -105, 
-  196, -105, 188, -105, 215, -105, -105, 218, -105, 113, 
-  -105, -105, 114, -105, 23, -105, 6, -105, 100, -105, 
-  219, -105, 187, 207, -105, -105, 208, -105, -105, -105, 
-  -105, -105, -105, 181, -105, 83, 92, -105, -105, 101, 
-  -105, 76, -105, 77, -105, 70, -105, -105, 75, -105, 
-  -105, 96, -105, -105, 69, -105, 82, -105, 28, -105, 
-  43, -105, -105, -105, -105, -105, -105, 51, -105, 34, 
-  -105, 29, -105, 169, 35, -105, -105, 45, -105, -105, 
-  81, -105, -105, -105, 59, -105, -105, -105, -105, 66, 
-  -105, 48, 110, -105, 102, -105, -105, 41, -105, 47, 
-  -105, -105, -105, -105, -105, -105, -105, 50, -105, -105, 
-  -105, -105, -105, -105, 105, -105, -105, 54, -105, -105, 
-  -105, -105, 58, -105, 62, -105, -105, -105, -105, -105, 
-  -26, -105, 63, -105, -27, -105, -105, -105, -105, -16, 
-  -105, -105, -18, -105, -105, -105, -105, -105, -105, -58, 
-  -105, -105, 31, -105, 30, -105, 20, -105, -105, -105, 
-  -105, 33, -105, 39, -105, 49, -105, 44, -105, -105, 
-  -105, -105, -105, -105, 21, -105, -105, 78, -105, -105, 
-  -105, -105, 61, -105, -105, 248, -105, -105, 60, -105, 
+  28, -105, -105, -105, -105, 112, -105, -105, -105, -105, 
+  -105, -105, -105, -105, -105, -105, -105, -105, -105, -8, 
+  187, -105, 218, 240, 237, 228, -105, 110, 109, 86, 
+  100, 93, -105, -105, -105, -105, -105, -105, -105, -105, 
+  185, -105, 195, -105, 199, -105, -105, 202, -105, 114, 
+  -105, -105, 141, -105, 30, -105, 26, -105, 25, -105, 
+  212, -105, 186, 183, -105, -105, 210, -105, -105, -105, 
+  -105, -105, -105, 189, -105, 82, 94, -105, -105, 102, 
+  -105, 76, -105, 78, -105, 74, -105, -105, 75, -105, 
+  -105, 85, -105, -105, 69, -105, 79, -105, 81, -105, 
+  42, -105, -105, -105, -105, -105, -105, 47, -105, 29, 
+  -105, 63, -105, 164, 37, -105, -105, 36, -105, -105, 
+  130, -105, -105, -105, 60, -105, -105, -105, -105, 67, 
+  -105, 48, 119, -105, 92, -105, -105, 38, -105, 40, 
+  -105, -105, -105, -105, -105, -105, -105, 45, -105, -105, 
+  -105, -105, -105, -105, 99, -105, -105, 55, -105, -105, 
+  -105, -105, 59, -105, 64, -105, -105, -105, -105, -105, 
+  -29, -105, 62, -105, -30, -105, -105, -105, -105, -16, 
+  -105, -105, -26, -105, -105, -105, -105, -105, -105, -56, 
+  -105, -105, 20, -105, 23, -105, 18, -105, -105, -105, 
+  -105, 39, -105, 44, -105, 49, -105, 43, -105, -105, 
+  -105, -105, -105, -105, 24, -105, -105, 72, -105, -105, 
+  -105, -105, 51, -105, -105, 193, -105, -105, 54, -105, 
   -105, -105, -105, -105, -105, -105, -105, -105, -105, -105, 
-  -105, -105, -105, -105, -105, -105, -105, -105, 22, -105, 
-  -105, -105, -105, -105, -105, -105, -22, -105, -105, -105, 
+  -105, -105, -105, -105, -105, -105, -105, -105, -1, -105, 
+  -105, -105, -105, -105, -105, -105, -17, -105, -105, -105, 
   -105, -105, -105, 32, -105, -105, -105, -105, -105, -105, 
-  -105, -19, -105, -105, -105, -105, -105, -105, -105, 3, 
-  -105, -105, -105, -105, -20, -105, -105, -3, -105, -105, 
-  -105, -105, -105, 9, -105, -105, -105, 14, 0, 11, 
-  -105, -105, -105, -105, -105, 293, 282, -105, -105, -105, 
-  -105, -105, -105, -105, 284, 17, 18, -105, -6, -105, 
-  169, 24, -105, -105, 27, -105, -105, 205, -105, -105, 
-  -105, 26, -105, -105, -105, -105, 19, -105, -7, 88, 
-  -105, 91, -105, -105, -105, -105, -105, -105, 245, -105, 
-  -105, -105, -105, -105, 292, -105, -105, -105, -1, -105, 
-  -105, 5, 342, -105, -105, -105, 4, -105, -105, -105, 
-  -105, -105, -105, 7, -105, -105, -105, -105, -105, -105, 
+  -105, -22, -105, -105, -105, -105, -105, -105, -105, -2, 
+  -105, -105, -105, -105, -11, -105, -105, 21, -105, -105, 
+  -105, -105, -105, 12, -105, -105, -105, 14, 10, 8, 
+  -105, -105, -105, -105, -105, 295, 284, -105, -105, -105, 
+  -105, -105, -105, -105, 267, 2, 0, -105, 4, -105, 
+  168, 15, -105, -105, 7, -105, -105, 182, -105, -105, 
+  -105, 16, -105, -105, -105, -105, 27, -105, 5, 68, 
+  -105, 83, -105, -105, -105, -105, -105, -105, 262, -105, 
+  -105, -105, -105, -105, 370, -105, -105, -105, 11, -105, 
+  -105, -7, 95, -105, -105, -105, -14, -105, -105, -105, 
+  -105, -105, -105, 77, -105, -105, -105, -105, -105, -105, 
   -105, -105, -105};
 
 const short QmlJSGrammar::action_info [] = {
-  -107, 464, 534, 541, 414, 255, -97, -115, -96, 346, 
-  401, 506, -93, 608, 343, 341, 234, 340, 511, 338, 
-  331, -107, 632, -118, 97, 399, 387, 350, 389, 162, 
-  -120, 422, 162, 422, 181, 177, 418, 422, 255, 438, 
-  429, 442, 438, 444, 168, 446, 556, 428, 139, -93, 
-  406, 455, 608, 451, -123, 69, 139, 438, 397, 99, 
-  185, 145, 188, 548, 187, 310, 97, 455, 147, 294, 
-  551, 270, 139, 302, 99, 414, 292, 346, 537, -118, 
-  407, 412, 438, 344, 290, 536, 299, 69, -97, -115, 
-  -96, 290, -126, 451, 414, 329, 255, -120, 250, 310, 
-  438, 346, 556, 521, 527, 316, 323, -123, 524, 333, 
-  304, 523, 441, 455, 292, 249, 451, 139, 139, 555, 
-  622, 621, 139, 425, 139, 139, 442, 432, 139, 411, 
-  410, 0, 56, 56, 164, 56, 325, 0, 165, 475, 
-  139, 139, 139, 57, 57, 556, 57, 598, 56, 526, 
-  525, 170, 247, 246, 139, 628, 627, 247, 246, 57, 
-  139, 312, 254, 253, 60, 313, 175, 513, 426, 252, 
-  171, 519, 139, 170, 348, 61, 486, 416, 139, 245, 
-  244, 101, 247, 246, 270, 553, 552, 476, 140, 326, 
-  240, 239, 171, 335, 453, 599, 83, 467, 84, 170, 
-  102, 83, 103, 84, 139, 529, 308, 507, 507, 85, 
-  0, 83, 457, 84, 85, 0, 507, 509, 171, 0, 
-  172, 514, 512, 139, 85, 517, 516, 83, 508, 84, 
-  139, 436, 435, 83, 83, 84, 84, 0, 0, 83, 
-  85, 84, 83, 83, 84, 84, 85, 85, 507, 0, 
-  468, 466, 85, 509, 509, 85, 85, 233, 232, 530, 
-  528, 83, 509, 84, 508, 508, 83, 83, 84, 84, 
-  543, 170, 507, 508, 85, 33, 533, 532, 170, 85, 
-  85, 0, 62, 540, 539, 625, 624, 83, 170, 84, 
-  171, 0, 404, 33, 509, 544, 542, 171, 33, 404, 
-  85, 33, 618, 0, 33, 508, -84, 171, 0, 172, 
-  0, 0, 46, 48, 47, 623, 619, 617, 509, 33, 
-  71, 72, 272, 273, 33, 71, 72, 63, 33, 508, 
-  46, 48, 47, 64, 33, 46, 48, 47, 46, 48, 
-  47, 46, 48, 47, 33, 0, 616, 73, 74, 274, 
-  275, 0, 73, 74, 33, 0, 46, 48, 47, 33, 
-  0, 46, 48, 47, 33, 46, 48, 47, 33, 170, 
-  0, 46, 48, 47, 0, 0, 0, 33, 0, 0, 
-  0, 46, 48, 47, -337, 0, 0, -84, 171, 0, 
-  172, 46, 48, 47, 0, 0, 46, 48, 47, 0, 
-  0, 46, 48, 47, 0, 46, 48, 47, 5, 4, 
-  3, 1, 2, 33, 46, 48, 47, 277, 278, 0, 
-  -337, 277, 278, 0, 0, 0, 279, 277, 278, 280, 
-  279, 281, 0, 280, 33, 281, 279, 0, 0, 280, 
-  0, 281, 0, 0, 0, 33, 277, 278, 0, 0, 
-  46, 48, 47, 272, 273, 279, 277, 278, 280, 33, 
-  281, 0, 0, 0, 0, 279, 243, 242, 280, 33, 
-  281, 46, 48, 47, 0, 0, 0, 238, 237, 33, 
-  274, 275, 46, 48, 47, 0, 0, 33, 0, 0, 
-  0, 238, 237, 0, 0, 0, 46, 48, 47, 0, 
-  0, 243, 242, 0, 0, 0, 46, 48, 47, 0, 
-  0, 243, 242, 149, 0, 0, 46, 48, 47, 238, 
-  237, 0, 0, 150, 46, 48, 47, 151, 0, 0, 
-  0, 0, 0, 0, 76, 77, 152, 0, 153, 0, 
-  0, 0, 78, 79, 0, 0, 80, 0, 81, 154, 
-  149, 155, 60, 0, 0, 0, 0, 0, 0, 156, 
-  150, 0, 157, 61, 151, 0, 0, 0, 158, 0, 
-  0, 0, 0, 152, 159, 153, 0, 0, 306, 0, 
-  0, 0, 0, 0, 0, 0, 154, 0, 155, 60, 
-  160, 0, 0, 0, 0, 0, 156, 29, 30, 157, 
-  61, 0, 0, 0, 0, 158, 0, 32, 0, 0, 
-  149, 159, 0, 0, 33, 0, 0, 0, 34, 35, 
-  150, 36, 0, 0, 151, 0, 0, 160, 40, 0, 
-  0, 0, 43, 152, 0, 153, 0, 0, 0, 0, 
-  0, 0, 0, 0, 0, 0, 154, 0, 155, 60, 
-  49, 46, 48, 47, 0, 50, 156, 0, 0, 157, 
-  61, 0, 0, 0, 0, 158, 42, 52, 31, 0, 
-  0, 159, 39, 0, 0, 0, 0, 0, 29, 30, 
-  0, 0, 0, 0, 0, 0, 0, 160, 32, 0, 
+  389, 255, 399, 401, 506, 255, 346, -107, 438, -126, 
+  534, 541, 350, 511, 444, 387, 331, -115, 329, 556, 
+  -93, 338, 422, 346, 340, 250, 249, 343, 341, -115, 
+  422, 406, 428, 346, 187, 429, 188, 185, 422, 418, 
+  414, 412, 407, 181, -96, 255, -93, 414, 177, -97, 
+  147, 438, -118, 234, 145, 397, -120, 608, -123, 455, 
+  438, 442, 451, 69, 464, -126, 302, 537, 632, 536, 
+  99, 139, 97, 168, -118, 270, 299, 139, 162, 414, 
+  292, 294, -97, 270, -96, 310, 290, 548, -107, 608, 
+  551, 344, 97, 292, 162, 99, 310, 455, -120, 524, 
+  527, 451, 290, 316, -123, 323, 325, 312, 139, 521, 
+  446, 313, 304, 523, 455, 139, 451, 333, 438, 139, 
+  438, 139, 139, 556, 598, 254, 253, 441, 139, 425, 
+  475, 432, 139, 56, 0, 0, 0, 139, 139, 0, 
+  555, 442, 56, 0, 57, 164, 56, 60, 139, 165, 
+  170, 0, 139, 57, 62, 467, 175, 57, 61, 326, 
+  622, 621, 240, 239, 411, 410, 556, 335, 56, 171, 
+  140, 252, 599, 416, 426, 170, 526, 525, 476, 57, 
+  486, 139, 519, 69, 247, 246, 553, 552, 139, 457, 
+  348, 170, 628, 627, 171, 247, 246, 247, 246, 63, 
+  453, 139, 245, 244, 308, 64, 513, 0, 468, 466, 
+  171, 83, 172, 84, 83, 529, 84, 83, 0, 84, 
+  83, 0, 84, 83, 85, 84, 507, 85, 509, 62, 
+  85, 507, 139, 85, 436, 435, 85, 0, 83, 508, 
+  84, 517, 516, 83, 83, 84, 84, 62, 0, 0, 
+  83, 85, 84, 139, 533, 532, 85, 85, 507, 507, 
+  514, 512, 83, 85, 84, 83, 83, 84, 84, 530, 
+  528, 83, 509, 84, 63, 85, 170, 509, 85, 85, 
+  64, 101, 507, 508, 85, 540, 539, 543, 508, 625, 
+  624, 0, 63, 33, 0, 171, 0, 404, 64, 0, 
+  102, 0, 103, 33, 509, 509, 233, 232, 272, 273, 
+  33, 0, 544, 542, 33, 508, 508, 272, 273, 623, 
+  33, 0, 0, 618, 0, 33, 0, 0, 509, 0, 
+  46, 48, 47, 71, 72, 274, 275, 619, 617, 508, 
+  46, 48, 47, 33, 274, 275, 0, 46, 48, 47, 
+  170, 46, 48, 47, 33, 0, 0, 46, 48, 47, 
+  73, 74, 46, 48, 47, 170, 33, 616, -84, 171, 
+  33, 172, 0, 33, 0, 0, 170, 33, 0, 0, 
+  46, 48, 47, 33, 171, 0, 404, 33, 0, 0, 
+  0, 46, 48, 47, -84, 171, 0, 172, 0, 33, 
+  0, 0, 0, 46, 48, 47, -337, 46, 48, 47, 
+  46, 48, 47, 0, 46, 48, 47, 0, 0, 0, 
+  46, 48, 47, 0, 46, 48, 47, 0, 5, 4, 
+  3, 1, 2, 277, 278, 0, 46, 48, 47, 277, 
+  278, 0, 279, 277, 278, 280, 0, 281, 279, 71, 
+  72, 280, 279, 281, 33, 280, 0, 281, 76, 77, 
+  0, -337, 33, 0, 0, 33, 78, 79, 0, 0, 
+  80, 0, 81, 76, 77, 0, 73, 74, 0, 0, 
+  0, 78, 79, 0, 0, 80, 0, 81, 0, 0, 
+  0, 46, 48, 47, 238, 237, 0, 243, 242, 46, 
+  48, 47, 46, 48, 47, 76, 77, 0, 33, 0, 
+  0, 0, 0, 78, 79, 76, 77, 80, 33, 81, 
+  0, 0, 0, 78, 79, 0, 33, 80, 0, 81, 
+  277, 278, 0, 0, 33, 0, 0, 0, 0, 279, 
+  243, 242, 280, 0, 281, 46, 48, 47, 0, 0, 
+  243, 242, 0, 0, 0, 46, 48, 47, 238, 237, 
+  0, 0, 0, 46, 48, 47, 238, 237, 0, 0, 
+  0, 46, 48, 47, 0, 0, 0, 0, 0, 0, 
+  0, 0, 0, 0, 0, 149, 0, 0, 0, 0, 
+  0, 0, 0, 0, 0, 150, 0, 0, 0, 151, 
+  0, 0, 0, 0, 0, 0, 76, 77, 152, 0, 
+  153, 0, 0, 0, 78, 79, 0, 0, 80, 0, 
+  81, 154, 149, 155, 60, 0, 0, 0, 0, 0, 
+  0, 156, 150, 0, 157, 61, 151, 0, 0, 0, 
+  158, 0, 0, 0, 0, 152, 159, 153, 0, 0, 
+  306, 0, 0, 0, 0, 0, 0, 0, 154, 0, 
+  155, 60, 160, 0, 0, 0, 0, 0, 156, 29, 
+  30, 157, 61, 0, 0, 0, 0, 158, 0, 32, 
+  0, 0, 149, 159, 0, 0, 33, 0, 0, 0, 
+  34, 35, 150, 36, 0, 0, 151, 0, 0, 160, 
+  498, 0, 0, 0, 43, 152, 0, 153, 0, 0, 
+  0, 0, 0, 0, 0, 0, 0, 0, 154, 0, 
+  155, 60, 49, 46, 48, 47, 0, 50, 156, 0, 
+  0, 157, 61, 0, 0, 0, 0, 158, 42, 52, 
+  31, 0, 0, 159, 39, 0, 0, 0, 0, 0, 
+  29, 30, 0, 0, 0, 0, 0, 0, 0, 160, 
+  32, 0, 0, 0, 0, 0, 0, 33, 0, 0, 
+  0, 34, 35, 0, 36, 0, 0, 0, 29, 30, 
+  0, 498, 0, 0, 0, 43, 0, 0, 32, 0, 
   0, 0, 0, 0, 0, 33, 0, 0, 0, 34, 
-  35, 0, 36, 0, 0, 0, 29, 30, 0, 40, 
-  0, 0, 0, 43, 0, 0, 32, 0, 0, 0, 
-  0, 0, 0, 33, 0, 0, 0, 34, 35, 0, 
-  36, 49, 46, 48, 47, 0, 50, 498, 0, 0, 
-  0, 43, 0, 0, 0, 0, 0, 42, 52, 31, 
-  0, 0, 0, 39, 0, 0, 0, 0, 0, 49, 
-  46, 48, 47, 0, 50, 0, 0, 0, 0, 0, 
-  0, 0, 0, 0, 0, 42, 52, 31, 0, 0, 
-  0, 39, 0, 0, 0, 29, 30, 0, 0, 0, 
-  0, 0, 0, 29, 30, 32, 0, 0, 0, 0, 
-  0, 0, 33, 32, 0, 0, 34, 35, 0, 36, 
-  33, 0, 0, 0, 34, 35, 40, 36, 0, 0, 
-  43, 0, 0, 0, 498, 0, 0, 0, 43, 0, 
-  0, 0, 0, 0, 0, 0, 0, 0, 49, 46, 
-  48, 47, 0, 50, 0, 0, 49, 46, 48, 47, 
-  0, 50, 0, 0, 42, 52, 31, 0, 0, 0, 
-  39, 0, 42, 52, 31, 0, 0, 0, 39, 0, 
-  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-  497, 0, 29, 30, 0, 0, 0, 0, 0, 0, 
-  0, 0, 213, 0, 0, 0, 0, 0, 0, 33, 
-  0, 0, 0, 34, 35, 0, 36, 0, 0, 0, 
+  35, 0, 36, 49, 46, 48, 47, 0, 50, 40, 
+  0, 0, 0, 43, 0, 0, 0, 0, 0, 42, 
+  52, 31, 0, 0, 0, 39, 0, 0, 0, 0, 
+  0, 49, 46, 48, 47, 0, 50, 0, 0, 0, 
+  0, 0, 0, 0, 0, 0, 0, 42, 52, 31, 
+  0, 0, 0, 39, 0, 0, 0, 29, 30, 0, 
+  0, 0, 0, 0, 0, 29, 30, 32, 0, 0, 
+  0, 0, 0, 0, 33, 32, 0, 0, 34, 35, 
+  0, 36, 33, 0, 0, 0, 34, 35, 40, 36, 
+  0, 0, 43, 0, 0, 0, 498, 0, 0, 0, 
+  43, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+  49, 46, 48, 47, 0, 50, 0, 0, 49, 46, 
+  48, 47, 0, 50, 0, 0, 42, 52, 31, 0, 
+  0, 0, 39, 0, 42, 52, 31, 0, 0, 0, 
+  39, 0, 0, 0, 29, 30, 0, 0, 0, 0, 
+  0, 0, 29, 30, 32, 0, 0, 0, 0, 0, 
+  0, 33, 32, 0, 0, 34, 35, 0, 36, 33, 
+  0, 0, 0, 34, 35, 40, 36, 0, 0, 43, 
   0, 0, 0, 498, 0, 0, 0, 43, 0, 0, 
-  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-  0, 0, 0, 0, 0, 49, 499, 501, 500, 0, 
-  50, 0, 0, 0, 0, 224, 0, 0, 0, 0, 
-  0, 42, 52, 31, 208, 0, 0, 39, 0, 0, 
+  0, 0, 0, 0, 0, 0, 0, 49, 46, 48, 
+  47, 0, 50, 0, 0, 49, 46, 48, 47, 0, 
+  50, 0, 0, 42, 52, 31, 0, 0, 0, 39, 
+  0, 42, 52, 31, 0, 0, 0, 39, 0, 0, 
   0, 0, 0, 0, 0, 0, 0, 0, 0, 497, 
   0, 29, 30, 0, 0, 0, 0, 0, 0, 0, 
   0, 213, 0, 0, 0, 0, 0, 0, 33, 0, 
   0, 0, 34, 35, 0, 36, 0, 0, 0, 0, 
   0, 0, 498, 0, 0, 0, 43, 0, 0, 0, 
-  0, 0, 0, 0, 605, 0, 0, 0, 0, 0, 
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
   0, 0, 0, 0, 49, 499, 501, 500, 0, 50, 
   0, 0, 0, 0, 224, 0, 0, 0, 0, 0, 
   42, 52, 31, 208, 0, 0, 39, 0, 0, 0, 
@@ -455,39 +462,57 @@ const short QmlJSGrammar::action_info [] = {
   0, 0, 0, 49, 499, 501, 500, 0, 50, 0, 
   0, 0, 0, 224, 0, 0, 0, 0, 0, 42, 
   52, 31, 208, 0, 0, 39, 0, 0, 0, 0, 
-  0, 0, 0, 0, 0, 0, 0, 28, 29, 30, 
-  0, 0, 0, 0, 0, 0, 0, 0, 32, 0, 
-  0, 0, 0, 0, 0, 33, 0, 0, 0, 34, 
-  35, 0, 36, 0, 0, 0, 37, 0, 38, 40, 
-  41, 0, 0, 43, 0, 0, 0, 44, 0, 45, 
+  0, 0, 0, 0, 0, 0, 0, 497, 0, 29, 
+  30, 0, 0, 0, 0, 0, 0, 0, 0, 213, 
+  0, 0, 0, 0, 0, 0, 33, 0, 0, 0, 
+  34, 35, 0, 36, 0, 0, 0, 0, 0, 0, 
+  498, 0, 0, 0, 43, 0, 0, 0, 0, 0, 
+  0, 0, 605, 0, 0, 0, 0, 0, 0, 0, 
+  0, 0, 49, 499, 501, 500, 0, 50, 0, 0, 
+  0, 0, 224, 0, 0, 0, 0, 0, 42, 52, 
+  31, 208, 0, 0, 39, 0, 0, 0, 0, 0, 
+  0, 0, 0, 0, 0, 0, 28, 29, 30, 0, 
+  0, 0, 0, 0, 0, 0, 0, 32, 0, 0, 
+  0, 0, 0, 0, 33, 0, 0, 0, 34, 35, 
+  0, 36, 0, 0, 0, 37, 0, 38, 40, 41, 
+  0, 0, 43, 0, 0, 0, 44, 0, 45, 0, 
   0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-  0, 49, 46, 48, 47, 0, 50, 0, 51, 0, 
-  53, 0, 54, 0, 0, 0, 0, 42, 52, 31, 
-  0, 0, 0, 39, 0, 0, 0, 0, 0, 0, 
-  0, 0, 0, 0, 0, -116, 0, 0, 0, 28, 
-  29, 30, 0, 0, 0, 0, 0, 0, 0, 0, 
-  32, 0, 0, 0, 0, 0, 0, 33, 0, 0, 
-  0, 34, 35, 0, 36, 0, 0, 0, 37, 0, 
-  38, 40, 41, 0, 0, 43, 0, 0, 0, 44, 
-  0, 45, 0, 0, 0, 0, 0, 0, 0, 0, 
-  0, 0, 0, 49, 46, 48, 47, 0, 50, 0, 
-  51, 0, 53, 0, 54, 0, 0, 0, 0, 42, 
-  52, 31, 0, 0, 0, 39, 0, 0, 0, 0, 
-  0, 0, 0, 0, 0, 0, 0, 28, 29, 30, 
+  49, 46, 48, 47, 0, 50, 0, 51, 0, 53, 
+  0, 54, 0, 0, 0, 0, 42, 52, 31, 0, 
+  0, 0, 39, 0, 0, 0, 0, 0, 0, 0, 
+  0, 0, 0, 0, -116, 0, 0, 0, 28, 29, 
+  30, 0, 0, 0, 0, 0, 0, 0, 0, 32, 
+  0, 0, 0, 0, 0, 0, 33, 0, 0, 0, 
+  34, 35, 0, 36, 0, 0, 0, 37, 0, 38, 
+  40, 41, 0, 0, 43, 0, 0, 0, 44, 0, 
+  45, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+  0, 0, 49, 46, 48, 47, 0, 50, 0, 51, 
+  0, 53, 0, 54, 0, 0, 0, 0, 42, 52, 
+  31, 0, 0, 0, 39, 0, 0, 0, 0, 0, 
+  0, 0, 0, 0, 0, 0, 28, 29, 30, 0, 
+  0, 0, 0, 0, 0, 0, 0, 32, 0, 0, 
+  0, 0, 0, 0, 33, 0, 0, 0, 34, 35, 
+  0, 36, 0, 0, 0, 37, 0, 38, 40, 41, 
+  0, 0, 43, 0, 0, 0, 44, 0, 45, 0, 
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+  49, 46, 48, 47, 0, 50, 0, 51, 0, 53, 
+  269, 54, 0, 0, 0, 0, 42, 52, 31, 0, 
+  0, 0, 39, 0, 0, 0, 0, 0, 0, 0, 
+  0, 0, 0, 0, 473, 0, 0, 28, 29, 30, 
   0, 0, 0, 0, 0, 0, 0, 0, 32, 0, 
   0, 0, 0, 0, 0, 33, 0, 0, 0, 34, 
   35, 0, 36, 0, 0, 0, 37, 0, 38, 40, 
   41, 0, 0, 43, 0, 0, 0, 44, 0, 45, 
-  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+  0, 0, 474, 0, 0, 0, 0, 0, 0, 0, 
   0, 49, 46, 48, 47, 0, 50, 0, 51, 0, 
-  53, 269, 54, 0, 0, 0, 0, 42, 52, 31, 
+  53, 0, 54, 0, 0, 0, 0, 42, 52, 31, 
   0, 0, 0, 39, 0, 0, 0, 0, 0, 0, 
-  0, 0, 0, 0, 0, 473, 0, 0, 28, 29, 
+  0, 0, 0, 0, 0, 481, 0, 0, 28, 29, 
   30, 0, 0, 0, 0, 0, 0, 0, 0, 32, 
   0, 0, 0, 0, 0, 0, 33, 0, 0, 0, 
   34, 35, 0, 36, 0, 0, 0, 37, 0, 38, 
   40, 41, 0, 0, 43, 0, 0, 0, 44, 0, 
-  45, 0, 0, 474, 0, 0, 0, 0, 0, 0, 
+  45, 0, 0, 484, 0, 0, 0, 0, 0, 0, 
   0, 0, 49, 46, 48, 47, 0, 50, 0, 51, 
   0, 53, 0, 54, 0, 0, 0, 0, 42, 52, 
   31, 0, 0, 0, 39, 0, 0, 0, 0, 0, 
@@ -496,255 +521,256 @@ const short QmlJSGrammar::action_info [] = {
   32, 0, 0, 0, 0, 0, 0, 33, 0, 0, 
   0, 34, 35, 0, 36, 0, 0, 0, 37, 0, 
   38, 40, 41, 0, 0, 43, 0, 0, 0, 44, 
-  0, 45, 0, 0, 484, 0, 0, 0, 0, 0, 
+  0, 45, 0, 0, 482, 0, 0, 0, 0, 0, 
   0, 0, 0, 49, 46, 48, 47, 0, 50, 0, 
   51, 0, 53, 0, 54, 0, 0, 0, 0, 42, 
   52, 31, 0, 0, 0, 39, 0, 0, 0, 0, 
-  0, 0, 0, 0, 0, 0, 0, 481, 0, 0, 
+  0, 0, 0, 0, 0, 0, 0, 473, 0, 0, 
   28, 29, 30, 0, 0, 0, 0, 0, 0, 0, 
   0, 32, 0, 0, 0, 0, 0, 0, 33, 0, 
   0, 0, 34, 35, 0, 36, 0, 0, 0, 37, 
   0, 38, 40, 41, 0, 0, 43, 0, 0, 0, 
-  44, 0, 45, 0, 0, 482, 0, 0, 0, 0, 
+  44, 0, 45, 0, 0, 479, 0, 0, 0, 0, 
   0, 0, 0, 0, 49, 46, 48, 47, 0, 50, 
   0, 51, 0, 53, 0, 54, 0, 0, 0, 0, 
   42, 52, 31, 0, 0, 0, 39, 0, 0, 0, 
-  0, 0, 0, 0, 0, 0, 0, 0, 473, 0, 
-  0, 28, 29, 30, 0, 0, 0, 0, 0, 0, 
-  0, 0, 32, 0, 0, 0, 0, 0, 0, 33, 
-  0, 0, 0, 34, 35, 0, 36, 0, 0, 0, 
-  37, 0, 38, 40, 41, 0, 0, 43, 0, 0, 
-  0, 44, 0, 45, 0, 0, 479, 0, 0, 0, 
-  0, 0, 0, 0, 0, 49, 46, 48, 47, 0, 
-  50, 0, 51, 0, 53, 0, 54, 0, 0, 0, 
-  0, 42, 52, 31, 0, 0, 0, 39, 0, 0, 
-  0, 0, 0, 0, 0, 0, 0, 0, 0, 28, 
-  29, 30, 0, 0, 0, 0, 0, 0, 0, 0, 
-  32, 0, 0, 0, 0, 0, 0, 33, 215, 0, 
-  0, 563, 564, 0, 36, 0, 0, 0, 37, 0, 
-  38, 40, 41, 0, 0, 43, 0, 0, 0, 44, 
-  0, 45, 0, 0, 0, 0, 0, 0, 0, 219, 
-  0, 0, 0, 49, 46, 48, 47, 0, 50, 0, 
-  51, 0, 53, 0, 54, 0, 0, 0, 0, 42, 
-  52, 31, 0, 0, 0, 39, 0, 0, 0, 0, 
-  0, 0, 0, 0, 0, 0, 0, 107, 108, 109, 
-  0, 0, 111, 113, 114, 0, 0, 115, 0, 116, 
-  0, 0, 0, 118, 119, 120, 0, 0, 0, 0, 
-  0, 0, 33, 121, 122, 123, 0, 0, 0, 0, 
-  0, 0, 0, 0, 0, 0, 124, 0, 0, 0, 
+  0, 0, 0, 0, 0, 0, 0, 0, 28, 29, 
+  30, 0, 0, 0, 0, 0, 0, 0, 0, 32, 
+  0, 0, 0, 0, 0, 0, 33, 215, 0, 0, 
+  563, 564, 0, 36, 0, 0, 0, 37, 0, 38, 
+  40, 41, 0, 0, 43, 0, 0, 0, 44, 0, 
+  45, 0, 0, 0, 0, 0, 0, 0, 219, 0, 
+  0, 0, 49, 46, 48, 47, 0, 50, 0, 51, 
+  0, 53, 0, 54, 0, 0, 0, 0, 42, 52, 
+  31, 0, 0, 0, 39, 0, 0, 0, 0, 0, 
+  0, 0, 0, 0, 0, 0, 107, 108, 109, 0, 
+  0, 111, 113, 114, 0, 0, 115, 0, 116, 0, 
+  0, 0, 118, 119, 120, 0, 0, 0, 0, 0, 
+  0, 33, 121, 122, 123, 0, 0, 0, 0, 0, 
+  0, 0, 0, 0, 0, 124, 0, 0, 0, 0, 
   0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-  0, 0, 127, 0, 0, 0, 0, 0, 0, 46, 
-  48, 47, 128, 129, 130, 0, 132, 133, 134, 135, 
-  136, 137, 0, 0, 125, 131, 117, 110, 112, 126, 
+  0, 127, 0, 0, 0, 0, 0, 0, 46, 48, 
+  47, 128, 129, 130, 0, 132, 133, 134, 135, 136, 
+  137, 0, 0, 125, 131, 117, 110, 112, 126, 0, 
   0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-  0, 0, 107, 108, 109, 0, 0, 111, 113, 114, 
-  0, 0, 115, 0, 116, 0, 0, 0, 118, 119, 
-  120, 0, 0, 0, 0, 0, 0, 391, 121, 122, 
-  123, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-  0, 124, 0, 0, 0, 392, 0, 0, 0, 0, 
-  0, 0, 0, 0, 0, 0, 0, 127, 0, 0, 
-  0, 0, 0, 396, 393, 395, 0, 128, 129, 130, 
-  0, 132, 133, 134, 135, 136, 137, 0, 0, 125, 
-  131, 117, 110, 112, 126, 0, 0, 0, 0, 0, 
-  0, 0, 0, 0, 0, 0, 0, 107, 108, 109, 
-  0, 0, 111, 113, 114, 0, 0, 115, 0, 116, 
-  0, 0, 0, 118, 119, 120, 0, 0, 0, 0, 
-  0, 0, 391, 121, 122, 123, 0, 0, 0, 0, 
-  0, 0, 0, 0, 0, 0, 124, 0, 0, 0, 
-  392, 0, 0, 0, 0, 0, 0, 0, 394, 0, 
-  0, 0, 127, 0, 0, 0, 0, 0, 396, 393, 
-  395, 0, 128, 129, 130, 0, 132, 133, 134, 135, 
-  136, 137, 0, 0, 125, 131, 117, 110, 112, 126, 
+  0, 107, 108, 109, 0, 0, 111, 113, 114, 0, 
+  0, 115, 0, 116, 0, 0, 0, 118, 119, 120, 
+  0, 0, 0, 0, 0, 0, 391, 121, 122, 123, 
   0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-  0, 0, 207, 0, 0, 0, 0, 209, 0, 28, 
-  29, 30, 211, 0, 0, 0, 0, 0, 0, 212, 
-  32, 0, 0, 0, 0, 0, 0, 214, 215, 0, 
-  0, 216, 35, 0, 36, 0, 0, 0, 37, 0, 
-  38, 40, 41, 0, 0, 43, 0, 0, 0, 44, 
-  0, 45, 0, 0, 0, 0, 0, 218, 0, 219, 
-  0, 0, 0, 49, 217, 220, 47, 221, 50, 222, 
-  51, 223, 53, 224, 54, 225, 226, 0, 0, 42, 
-  52, 31, 208, 210, 0, 39, 0, 0, 0, 0, 
-  0, 0, 0, 0, 0, 0, 0, 207, 0, 0, 
-  0, 0, 209, 0, 28, 29, 30, 211, 0, 0, 
-  0, 0, 0, 0, 212, 213, 0, 0, 0, 0, 
-  0, 0, 214, 215, 0, 0, 216, 35, 0, 36, 
-  0, 0, 0, 37, 0, 38, 40, 41, 0, 0, 
-  43, 0, 0, 0, 44, 0, 45, 0, 0, 0, 
-  0, 0, 218, 0, 219, 0, 0, 0, 49, 217, 
-  220, 47, 221, 50, 222, 51, 223, 53, 224, 54, 
-  225, 226, 0, 0, 42, 52, 31, 208, 210, 0, 
-  39, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-  0, 0, 566, 108, 109, 0, 0, 568, 113, 570, 
-  29, 30, 571, 0, 116, 0, 0, 0, 118, 573, 
-  574, 0, 0, 0, 0, 0, 0, 575, 576, 122, 
-  123, 216, 35, 0, 36, 0, 0, 0, 37, 0, 
-  38, 577, 41, 0, 0, 579, 0, 0, 0, 44, 
-  0, 45, 0, 0, 0, 0, 0, 581, 0, 219, 
-  0, 0, 0, 583, 580, 582, 47, 584, 585, 586, 
-  51, 588, 589, 590, 591, 592, 593, 0, 0, 578, 
-  587, 572, 567, 569, 126, 39, 0, 0, 0, 0, 
-  0, 0, 0, 0, 0, 0, 0, 359, 108, 109, 
-  0, 0, 361, 113, 363, 29, 30, 364, 0, 116, 
-  0, 0, 0, 118, 366, 367, 0, 0, 0, 0, 
-  0, 0, 368, 369, 122, 123, 216, 35, 0, 36, 
-  0, 0, 0, 37, 0, 38, 370, 41, 0, 0, 
-  372, 0, 0, 0, 44, 0, 45, 0, -262, 0, 
-  0, 0, 374, 0, 219, 0, 0, 0, 376, 373, 
-  375, 47, 377, 378, 379, 51, 381, 382, 383, 384, 
-  385, 386, 0, 0, 371, 380, 365, 360, 362, 126, 
-  39, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-  0, 0, 
+  124, 0, 0, 0, 392, 0, 0, 0, 0, 0, 
+  0, 0, 0, 0, 0, 0, 127, 0, 0, 0, 
+  0, 0, 396, 393, 395, 0, 128, 129, 130, 0, 
+  132, 133, 134, 135, 136, 137, 0, 0, 125, 131, 
+  117, 110, 112, 126, 0, 0, 0, 0, 0, 0, 
+  0, 0, 0, 0, 0, 0, 107, 108, 109, 0, 
+  0, 111, 113, 114, 0, 0, 115, 0, 116, 0, 
+  0, 0, 118, 119, 120, 0, 0, 0, 0, 0, 
+  0, 391, 121, 122, 123, 0, 0, 0, 0, 0, 
+  0, 0, 0, 0, 0, 124, 0, 0, 0, 392, 
+  0, 0, 0, 0, 0, 0, 0, 394, 0, 0, 
+  0, 127, 0, 0, 0, 0, 0, 396, 393, 395, 
+  0, 128, 129, 130, 0, 132, 133, 134, 135, 136, 
+  137, 0, 0, 125, 131, 117, 110, 112, 126, 0, 
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+  0, 207, 0, 0, 0, 0, 209, 0, 28, 29, 
+  30, 211, 0, 0, 0, 0, 0, 0, 212, 32, 
+  0, 0, 0, 0, 0, 0, 214, 215, 0, 0, 
+  216, 35, 0, 36, 0, 0, 0, 37, 0, 38, 
+  40, 41, 0, 0, 43, 0, 0, 0, 44, 0, 
+  45, 0, 0, 0, 0, 0, 218, 0, 219, 0, 
+  0, 0, 49, 217, 220, 47, 221, 50, 222, 51, 
+  223, 53, 224, 54, 225, 226, 0, 0, 42, 52, 
+  31, 208, 210, 0, 39, 0, 0, 0, 0, 0, 
+  0, 0, 0, 0, 0, 0, 207, 0, 0, 0, 
+  0, 209, 0, 28, 29, 30, 211, 0, 0, 0, 
+  0, 0, 0, 212, 213, 0, 0, 0, 0, 0, 
+  0, 214, 215, 0, 0, 216, 35, 0, 36, 0, 
+  0, 0, 37, 0, 38, 40, 41, 0, 0, 43, 
+  0, 0, 0, 44, 0, 45, 0, 0, 0, 0, 
+  0, 218, 0, 219, 0, 0, 0, 49, 217, 220, 
+  47, 221, 50, 222, 51, 223, 53, 224, 54, 225, 
+  226, 0, 0, 42, 52, 31, 208, 210, 0, 39, 
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+  0, 566, 108, 109, 0, 0, 568, 113, 570, 29, 
+  30, 571, 0, 116, 0, 0, 0, 118, 573, 574, 
+  0, 0, 0, 0, 0, 0, 575, 576, 122, 123, 
+  216, 35, 0, 36, 0, 0, 0, 37, 0, 38, 
+  577, 41, 0, 0, 579, 0, 0, 0, 44, 0, 
+  45, 0, 0, 0, 0, 0, 581, 0, 219, 0, 
+  0, 0, 583, 580, 582, 47, 584, 585, 586, 51, 
+  588, 589, 590, 591, 592, 593, 0, 0, 578, 587, 
+  572, 567, 569, 126, 39, 0, 0, 0, 0, 0, 
+  0, 0, 0, 0, 0, 0, 359, 108, 109, 0, 
+  0, 361, 113, 363, 29, 30, 364, 0, 116, 0, 
+  0, 0, 118, 366, 367, 0, 0, 0, 0, 0, 
+  0, 368, 369, 122, 123, 216, 35, 0, 36, 0, 
+  0, 0, 37, 0, 38, 370, 41, 0, 0, 372, 
+  0, 0, 0, 44, 0, 45, 0, -262, 0, 0, 
+  0, 374, 0, 219, 0, 0, 0, 376, 373, 375, 
+  47, 377, 378, 379, 51, 381, 382, 383, 384, 385, 
+  386, 0, 0, 371, 380, 365, 360, 362, 126, 39, 
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+  0, 
 
-  538, 510, 184, 535, 522, 459, 531, 241, 148, 307, 
-  615, 180, 437, 251, 629, 15, 493, 620, 494, 470, 
-  626, 318, 434, 549, 550, 305, 248, 554, 485, 300, 
-  349, 236, 547, 518, 601, 515, 452, 248, 443, 447, 
-  180, 454, 241, 445, 248, 351, 458, 236, 146, 241, 
-  448, 236, 456, 400, 465, 174, 408, 205, 180, 186, 
-  413, 433, 300, 430, 427, 415, 431, 437, 423, 434, 
-  161, 345, 336, 169, 388, 434, 437, 300, 332, 0, 
-  334, 390, 138, 398, 337, 347, 167, 0, 184, 141, 
-  0, 459, 402, 480, 483, 300, 318, 144, 205, 0, 
-  0, 205, 309, 0, 300, 0, 0, 58, 0, 58, 
-  58, 0, 178, 0, 0, 58, 300, 300, 0, 87, 
-  403, 163, 58, 0, 487, 166, 58, 58, 488, 58, 
-  58, 86, 449, 58, 283, 450, 58, 58, 144, 58, 
-  58, 0, 286, 405, 58, 285, 450, 402, 98, 100, 
-  58, 264, 58, 0, 449, 284, 268, 58, 328, 58, 
-  58, 469, 282, 88, 0, 89, 58, 330, 327, 68, 
-  58, 0, 339, 59, 58, 403, 450, 58, 0, 301, 
-  303, 58, 82, 492, 58, 58, 66, 58, 58, 67, 
-  65, 58, 58, 70, 342, 58, 104, 75, 96, 58, 
-  58, 94, 235, 58, 91, 144, 95, 58, 92, 449, 
-  176, 58, 58, 178, 491, 58, 402, 490, 106, 58, 
-  58, 58, 489, 296, 90, 104, 93, 58, 268, 58, 
-  58, 0, 268, 0, 268, 268, 271, 496, 58, 0, 
-  0, 293, 0, 268, 403, 324, 314, 106, 173, 296, 
-  296, 291, 495, 505, 268, 268, 496, 296, 0, 600, 
-  296, 58, 268, 597, 0, 268, 268, 0, 0, 0, 
-  0, 315, 317, 58, 0, 0, 311, 478, 268, 295, 
-  276, 477, 298, 58, 58, 0, 603, 0, 268, 268, 
-  287, 289, 58, 496, 0, 594, 606, 268, 596, 288, 
-  0, 0, 597, 496, 562, 0, 0, 0, 495, 505, 
-  0, 565, 558, 559, 560, 561, 0, 470, 495, 505, 
+  620, 531, 522, 629, 184, 494, 318, 510, 459, 15, 
+  470, 518, 138, 535, 236, 180, 485, 248, 241, 300, 
+  601, 180, 550, 615, 538, 437, 148, 309, 554, 307, 
+  434, 251, 305, 248, 549, 515, 547, 445, 447, 248, 
+  448, 443, 452, 236, 351, 458, 454, 241, 236, 400, 
+  180, 141, 456, 161, 433, 174, 146, 408, 465, 205, 
+  186, 413, 427, 300, 430, 431, 423, 415, 437, 169, 
+  434, 345, 388, 437, 434, 390, 336, 241, 332, 398, 
+  337, 334, 347, 349, 167, 483, 459, 205, 480, 184, 
+  144, 626, 205, 205, 493, 235, 318, 300, 0, 0, 
+  0, 58, 0, 178, 58, 300, 0, 496, 58, 0, 
+  630, 58, 0, 449, 597, 0, 58, 300, 163, 0, 
+  88, 0, 0, 58, 166, 487, 58, 58, 450, 58, 
+  58, 87, 488, 144, 284, 58, 58, 450, 405, 58, 
+  144, 286, 402, 58, 300, 176, 58, 58, 285, 100, 
+  86, 58, 58, 58, 68, 264, 469, 283, 282, 98, 
+  268, 328, 58, 402, 449, 0, 58, 58, 327, 330, 
+  403, 90, 82, 339, 58, 58, 58, 59, 449, 58, 
+  89, 301, 300, 58, 342, 492, 58, 70, 66, 58, 
+  58, 403, 67, 58, 402, 75, 58, 58, 65, 96, 
+  58, 0, 58, 94, 450, 58, 95, 58, 303, 178, 
+  93, 58, 58, 178, 491, 58, 58, 490, 58, 58, 
+  489, 92, 403, 478, 91, 0, 296, 477, 58, 58, 
+  58, 268, 296, 268, 268, 268, 496, 268, 58, 271, 
+  104, 291, 296, 268, 0, 296, 314, 268, 315, 293, 
+  268, 495, 505, 296, 324, 58, 0, 0, 268, 0, 
+  268, 58, 106, 173, 295, 0, 268, 298, 276, 0, 
+  311, 58, 0, 0, 496, 317, 268, 600, 289, 594, 
+  58, 597, 596, 58, 104, 268, 597, 288, 268, 603, 
+  287, 0, 0, 0, 0, 0, 496, 0, 0, 0, 
+  0, 470, 0, 0, 0, 0, 106, 562, 0, 0, 
+  0, 495, 505, 0, 565, 558, 559, 560, 561, 0, 
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
   0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
   0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
   0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-  0, 0, 0, 496, 0, 0, 630, 0, 0, 0, 
-  597, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
   0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+  0, 0, 0, 0, 0, 606, 0, 0, 0, 0, 
+  0, 0, 496, 0, 0, 0, 0, 0, 0, 0, 
+  0, 0, 0, 0, 0, 0, 0, 495, 505, 0, 
   0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
   0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
   0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
   0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
   0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
   0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-  0, 0, 0, 0, 0, 0, 0};
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+  0, 0, 0, 0, 0};
 
 const short QmlJSGrammar::action_check [] = {
-  7, 17, 66, 29, 36, 36, 7, 7, 7, 36, 
-  55, 66, 7, 90, 55, 33, 55, 60, 29, 36, 
-  60, 7, 0, 7, 48, 55, 7, 16, 8, 2, 
-  7, 5, 2, 5, 36, 60, 33, 5, 36, 33, 
-  7, 20, 33, 36, 7, 60, 33, 55, 8, 7, 
-  60, 36, 90, 36, 7, 1, 8, 33, 7, 79, 
-  8, 8, 33, 8, 60, 2, 48, 36, 60, 8, 
-  60, 1, 8, 61, 79, 36, 79, 36, 7, 7, 
-  7, 7, 33, 7, 48, 29, 61, 1, 7, 7, 
-  7, 48, 7, 36, 36, 61, 36, 7, 36, 2, 
-  33, 36, 33, 37, 29, 7, 17, 7, 29, 31, 
-  60, 24, 6, 36, 79, 77, 36, 8, 8, 7, 
-  61, 62, 8, 10, 8, 8, 20, 7, 8, 61, 
-  62, -1, 40, 40, 50, 40, 8, -1, 54, 8, 
-  8, 8, 8, 51, 51, 33, 51, 8, 40, 61, 
-  62, 15, 61, 62, 8, 61, 62, 61, 62, 51, 
-  8, 50, 61, 62, 42, 54, 56, 7, 55, 60, 
-  34, 29, 8, 15, 60, 53, 60, 60, 8, 61, 
-  62, 15, 61, 62, 1, 61, 62, 56, 56, 61, 
-  61, 62, 34, 60, 60, 56, 25, 8, 27, 15, 
-  34, 25, 36, 27, 8, 7, 60, 29, 29, 38, 
-  -1, 25, 60, 27, 38, -1, 29, 75, 34, -1, 
-  36, 61, 62, 8, 38, 61, 62, 25, 86, 27, 
-  8, 61, 62, 25, 25, 27, 27, -1, -1, 25, 
-  38, 27, 25, 25, 27, 27, 38, 38, 29, -1, 
-  61, 62, 38, 75, 75, 38, 38, 61, 62, 61, 
-  62, 25, 75, 27, 86, 86, 25, 25, 27, 27, 
-  36, 15, 29, 86, 38, 29, 61, 62, 15, 38, 
-  38, -1, 12, 61, 62, 61, 62, 25, 15, 27, 
-  34, -1, 36, 29, 75, 61, 62, 34, 29, 36, 
-  38, 29, 47, -1, 29, 86, 33, 34, -1, 36, 
-  -1, -1, 66, 67, 68, 91, 61, 62, 75, 29, 
-  18, 19, 18, 19, 29, 18, 19, 57, 29, 86, 
-  66, 67, 68, 63, 29, 66, 67, 68, 66, 67, 
-  68, 66, 67, 68, 29, -1, 91, 45, 46, 45, 
-  46, -1, 45, 46, 29, -1, 66, 67, 68, 29, 
-  -1, 66, 67, 68, 29, 66, 67, 68, 29, 15, 
-  -1, 66, 67, 68, -1, -1, -1, 29, -1, -1, 
-  -1, 66, 67, 68, 36, -1, -1, 33, 34, -1, 
-  36, 66, 67, 68, -1, -1, 66, 67, 68, -1, 
-  -1, 66, 67, 68, -1, 66, 67, 68, 92, 93, 
-  94, 95, 96, 29, 66, 67, 68, 23, 24, -1, 
-  36, 23, 24, -1, -1, -1, 32, 23, 24, 35, 
-  32, 37, -1, 35, 29, 37, 32, -1, -1, 35, 
-  -1, 37, -1, -1, -1, 29, 23, 24, -1, -1, 
-  66, 67, 68, 18, 19, 32, 23, 24, 35, 29, 
-  37, -1, -1, -1, -1, 32, 61, 62, 35, 29, 
-  37, 66, 67, 68, -1, -1, -1, 61, 62, 29, 
-  45, 46, 66, 67, 68, -1, -1, 29, -1, -1, 
-  -1, 61, 62, -1, -1, -1, 66, 67, 68, -1, 
-  -1, 61, 62, -1, -1, -1, 66, 67, 68, -1, 
-  -1, 61, 62, 3, -1, -1, 66, 67, 68, 61, 
-  62, -1, -1, 13, 66, 67, 68, 17, -1, -1, 
-  -1, -1, -1, -1, 23, 24, 26, -1, 28, -1, 
-  -1, -1, 31, 32, -1, -1, 35, -1, 37, 39, 
-  3, 41, 42, -1, -1, -1, -1, -1, -1, 49, 
-  13, -1, 52, 53, 17, -1, -1, -1, 58, -1, 
-  -1, -1, -1, 26, 64, 28, -1, -1, 31, -1, 
-  -1, -1, -1, -1, -1, -1, 39, -1, 41, 42, 
-  80, -1, -1, -1, -1, -1, 49, 12, 13, 52, 
-  53, -1, -1, -1, -1, 58, -1, 22, -1, -1, 
-  3, 64, -1, -1, 29, -1, -1, -1, 33, 34, 
-  13, 36, -1, -1, 17, -1, -1, 80, 43, -1, 
-  -1, -1, 47, 26, -1, 28, -1, -1, -1, -1, 
-  -1, -1, -1, -1, -1, -1, 39, -1, 41, 42, 
-  65, 66, 67, 68, -1, 70, 49, -1, -1, 52, 
-  53, -1, -1, -1, -1, 58, 81, 82, 83, -1, 
-  -1, 64, 87, -1, -1, -1, -1, -1, 12, 13, 
-  -1, -1, -1, -1, -1, -1, -1, 80, 22, -1, 
+  8, 36, 55, 55, 66, 36, 36, 7, 33, 7, 
+  66, 29, 16, 29, 36, 7, 60, 7, 61, 33, 
+  7, 36, 5, 36, 60, 36, 77, 55, 33, 7, 
+  5, 60, 55, 36, 60, 7, 33, 8, 5, 33, 
+  36, 7, 7, 36, 7, 36, 7, 36, 60, 7, 
+  60, 33, 7, 55, 8, 7, 7, 90, 7, 36, 
+  33, 20, 36, 1, 17, 7, 61, 7, 0, 29, 
+  79, 8, 48, 7, 7, 1, 61, 8, 2, 36, 
+  79, 8, 7, 1, 7, 2, 48, 8, 7, 90, 
+  60, 7, 48, 79, 2, 79, 2, 36, 7, 29, 
+  29, 36, 48, 7, 7, 17, 8, 50, 8, 37, 
+  60, 54, 60, 24, 36, 8, 36, 31, 33, 8, 
+  33, 8, 8, 33, 8, 61, 62, 6, 8, 10, 
+  8, 7, 8, 40, -1, -1, -1, 8, 8, -1, 
+  7, 20, 40, -1, 51, 50, 40, 42, 8, 54, 
+  15, -1, 8, 51, 12, 8, 56, 51, 53, 61, 
+  61, 62, 61, 62, 61, 62, 33, 60, 40, 34, 
+  56, 60, 56, 60, 55, 15, 61, 62, 56, 51, 
+  60, 8, 29, 1, 61, 62, 61, 62, 8, 60, 
+  60, 15, 61, 62, 34, 61, 62, 61, 62, 57, 
+  60, 8, 61, 62, 60, 63, 7, -1, 61, 62, 
+  34, 25, 36, 27, 25, 7, 27, 25, -1, 27, 
+  25, -1, 27, 25, 38, 27, 29, 38, 75, 12, 
+  38, 29, 8, 38, 61, 62, 38, -1, 25, 86, 
+  27, 61, 62, 25, 25, 27, 27, 12, -1, -1, 
+  25, 38, 27, 8, 61, 62, 38, 38, 29, 29, 
+  61, 62, 25, 38, 27, 25, 25, 27, 27, 61, 
+  62, 25, 75, 27, 57, 38, 15, 75, 38, 38, 
+  63, 15, 29, 86, 38, 61, 62, 36, 86, 61, 
+  62, -1, 57, 29, -1, 34, -1, 36, 63, -1, 
+  34, -1, 36, 29, 75, 75, 61, 62, 18, 19, 
+  29, -1, 61, 62, 29, 86, 86, 18, 19, 91, 
+  29, -1, -1, 47, -1, 29, -1, -1, 75, -1, 
+  66, 67, 68, 18, 19, 45, 46, 61, 62, 86, 
+  66, 67, 68, 29, 45, 46, -1, 66, 67, 68, 
+  15, 66, 67, 68, 29, -1, -1, 66, 67, 68, 
+  45, 46, 66, 67, 68, 15, 29, 91, 33, 34, 
+  29, 36, -1, 29, -1, -1, 15, 29, -1, -1, 
+  66, 67, 68, 29, 34, -1, 36, 29, -1, -1, 
+  -1, 66, 67, 68, 33, 34, -1, 36, -1, 29, 
+  -1, -1, -1, 66, 67, 68, 36, 66, 67, 68, 
+  66, 67, 68, -1, 66, 67, 68, -1, -1, -1, 
+  66, 67, 68, -1, 66, 67, 68, -1, 92, 93, 
+  94, 95, 96, 23, 24, -1, 66, 67, 68, 23, 
+  24, -1, 32, 23, 24, 35, -1, 37, 32, 18, 
+  19, 35, 32, 37, 29, 35, -1, 37, 23, 24, 
+  -1, 36, 29, -1, -1, 29, 31, 32, -1, -1, 
+  35, -1, 37, 23, 24, -1, 45, 46, -1, -1, 
+  -1, 31, 32, -1, -1, 35, -1, 37, -1, -1, 
+  -1, 66, 67, 68, 61, 62, -1, 61, 62, 66, 
+  67, 68, 66, 67, 68, 23, 24, -1, 29, -1, 
+  -1, -1, -1, 31, 32, 23, 24, 35, 29, 37, 
+  -1, -1, -1, 31, 32, -1, 29, 35, -1, 37, 
+  23, 24, -1, -1, 29, -1, -1, -1, -1, 32, 
+  61, 62, 35, -1, 37, 66, 67, 68, -1, -1, 
+  61, 62, -1, -1, -1, 66, 67, 68, 61, 62, 
+  -1, -1, -1, 66, 67, 68, 61, 62, -1, -1, 
+  -1, 66, 67, 68, -1, -1, -1, -1, -1, -1, 
+  -1, -1, -1, -1, -1, 3, -1, -1, -1, -1, 
+  -1, -1, -1, -1, -1, 13, -1, -1, -1, 17, 
+  -1, -1, -1, -1, -1, -1, 23, 24, 26, -1, 
+  28, -1, -1, -1, 31, 32, -1, -1, 35, -1, 
+  37, 39, 3, 41, 42, -1, -1, -1, -1, -1, 
+  -1, 49, 13, -1, 52, 53, 17, -1, -1, -1, 
+  58, -1, -1, -1, -1, 26, 64, 28, -1, -1, 
+  31, -1, -1, -1, -1, -1, -1, -1, 39, -1, 
+  41, 42, 80, -1, -1, -1, -1, -1, 49, 12, 
+  13, 52, 53, -1, -1, -1, -1, 58, -1, 22, 
+  -1, -1, 3, 64, -1, -1, 29, -1, -1, -1, 
+  33, 34, 13, 36, -1, -1, 17, -1, -1, 80, 
+  43, -1, -1, -1, 47, 26, -1, 28, -1, -1, 
+  -1, -1, -1, -1, -1, -1, -1, -1, 39, -1, 
+  41, 42, 65, 66, 67, 68, -1, 70, 49, -1, 
+  -1, 52, 53, -1, -1, -1, -1, 58, 81, 82, 
+  83, -1, -1, 64, 87, -1, -1, -1, -1, -1, 
+  12, 13, -1, -1, -1, -1, -1, -1, -1, 80, 
+  22, -1, -1, -1, -1, -1, -1, 29, -1, -1, 
+  -1, 33, 34, -1, 36, -1, -1, -1, 12, 13, 
+  -1, 43, -1, -1, -1, 47, -1, -1, 22, -1, 
   -1, -1, -1, -1, -1, 29, -1, -1, -1, 33, 
-  34, -1, 36, -1, -1, -1, 12, 13, -1, 43, 
-  -1, -1, -1, 47, -1, -1, 22, -1, -1, -1, 
-  -1, -1, -1, 29, -1, -1, -1, 33, 34, -1, 
-  36, 65, 66, 67, 68, -1, 70, 43, -1, -1, 
-  -1, 47, -1, -1, -1, -1, -1, 81, 82, 83, 
-  -1, -1, -1, 87, -1, -1, -1, -1, -1, 65, 
-  66, 67, 68, -1, 70, -1, -1, -1, -1, -1, 
-  -1, -1, -1, -1, -1, 81, 82, 83, -1, -1, 
-  -1, 87, -1, -1, -1, 12, 13, -1, -1, -1, 
-  -1, -1, -1, 12, 13, 22, -1, -1, -1, -1, 
-  -1, -1, 29, 22, -1, -1, 33, 34, -1, 36, 
-  29, -1, -1, -1, 33, 34, 43, 36, -1, -1, 
-  47, -1, -1, -1, 43, -1, -1, -1, 47, -1, 
-  -1, -1, -1, -1, -1, -1, -1, -1, 65, 66, 
-  67, 68, -1, 70, -1, -1, 65, 66, 67, 68, 
-  -1, 70, -1, -1, 81, 82, 83, -1, -1, -1, 
-  87, -1, 81, 82, 83, -1, -1, -1, 87, -1, 
-  -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 
-  10, -1, 12, 13, -1, -1, -1, -1, -1, -1, 
-  -1, -1, 22, -1, -1, -1, -1, -1, -1, 29, 
-  -1, -1, -1, 33, 34, -1, 36, -1, -1, -1, 
+  34, -1, 36, 65, 66, 67, 68, -1, 70, 43, 
+  -1, -1, -1, 47, -1, -1, -1, -1, -1, 81, 
+  82, 83, -1, -1, -1, 87, -1, -1, -1, -1, 
+  -1, 65, 66, 67, 68, -1, 70, -1, -1, -1, 
+  -1, -1, -1, -1, -1, -1, -1, 81, 82, 83, 
+  -1, -1, -1, 87, -1, -1, -1, 12, 13, -1, 
+  -1, -1, -1, -1, -1, 12, 13, 22, -1, -1, 
+  -1, -1, -1, -1, 29, 22, -1, -1, 33, 34, 
+  -1, 36, 29, -1, -1, -1, 33, 34, 43, 36, 
+  -1, -1, 47, -1, -1, -1, 43, -1, -1, -1, 
+  47, -1, -1, -1, -1, -1, -1, -1, -1, -1, 
+  65, 66, 67, 68, -1, 70, -1, -1, 65, 66, 
+  67, 68, -1, 70, -1, -1, 81, 82, 83, -1, 
+  -1, -1, 87, -1, 81, 82, 83, -1, -1, -1, 
+  87, -1, -1, -1, 12, 13, -1, -1, -1, -1, 
+  -1, -1, 12, 13, 22, -1, -1, -1, -1, -1, 
+  -1, 29, 22, -1, -1, 33, 34, -1, 36, 29, 
+  -1, -1, -1, 33, 34, 43, 36, -1, -1, 47, 
   -1, -1, -1, 43, -1, -1, -1, 47, -1, -1, 
-  -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 
-  -1, -1, -1, -1, -1, 65, 66, 67, 68, -1, 
-  70, -1, -1, -1, -1, 75, -1, -1, -1, -1, 
-  -1, 81, 82, 83, 84, -1, -1, 87, -1, -1, 
+  -1, -1, -1, -1, -1, -1, -1, 65, 66, 67, 
+  68, -1, 70, -1, -1, 65, 66, 67, 68, -1, 
+  70, -1, -1, 81, 82, 83, -1, -1, -1, 87, 
+  -1, 81, 82, 83, -1, -1, -1, 87, -1, -1, 
   -1, -1, -1, -1, -1, -1, -1, -1, -1, 10, 
   -1, 12, 13, -1, -1, -1, -1, -1, -1, -1, 
   -1, 22, -1, -1, -1, -1, -1, -1, 29, -1, 
   -1, -1, 33, 34, -1, 36, -1, -1, -1, -1, 
   -1, -1, 43, -1, -1, -1, 47, -1, -1, -1, 
-  -1, -1, -1, -1, 55, -1, -1, -1, -1, -1, 
+  -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 
   -1, -1, -1, -1, 65, 66, 67, 68, -1, 70, 
   -1, -1, -1, -1, 75, -1, -1, -1, -1, -1, 
   81, 82, 83, 84, -1, -1, 87, -1, -1, -1, 
@@ -757,32 +783,50 @@ const short QmlJSGrammar::action_check [] = {
   -1, -1, -1, 65, 66, 67, 68, -1, 70, -1, 
   -1, -1, -1, 75, -1, -1, -1, -1, -1, 81, 
   82, 83, 84, -1, -1, 87, -1, -1, -1, -1, 
-  -1, -1, -1, -1, -1, -1, -1, 11, 12, 13, 
-  -1, -1, -1, -1, -1, -1, -1, -1, 22, -1, 
-  -1, -1, -1, -1, -1, 29, -1, -1, -1, 33, 
-  34, -1, 36, -1, -1, -1, 40, -1, 42, 43, 
-  44, -1, -1, 47, -1, -1, -1, 51, -1, 53, 
+  -1, -1, -1, -1, -1, -1, -1, 10, -1, 12, 
+  13, -1, -1, -1, -1, -1, -1, -1, -1, 22, 
+  -1, -1, -1, -1, -1, -1, 29, -1, -1, -1, 
+  33, 34, -1, 36, -1, -1, -1, -1, -1, -1, 
+  43, -1, -1, -1, 47, -1, -1, -1, -1, -1, 
+  -1, -1, 55, -1, -1, -1, -1, -1, -1, -1, 
+  -1, -1, 65, 66, 67, 68, -1, 70, -1, -1, 
+  -1, -1, 75, -1, -1, -1, -1, -1, 81, 82, 
+  83, 84, -1, -1, 87, -1, -1, -1, -1, -1, 
+  -1, -1, -1, -1, -1, -1, 11, 12, 13, -1, 
+  -1, -1, -1, -1, -1, -1, -1, 22, -1, -1, 
+  -1, -1, -1, -1, 29, -1, -1, -1, 33, 34, 
+  -1, 36, -1, -1, -1, 40, -1, 42, 43, 44, 
+  -1, -1, 47, -1, -1, -1, 51, -1, 53, -1, 
   -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 
-  -1, 65, 66, 67, 68, -1, 70, -1, 72, -1, 
-  74, -1, 76, -1, -1, -1, -1, 81, 82, 83, 
-  -1, -1, -1, 87, -1, -1, -1, -1, -1, -1, 
-  -1, -1, -1, -1, -1, 7, -1, -1, -1, 11, 
-  12, 13, -1, -1, -1, -1, -1, -1, -1, -1, 
-  22, -1, -1, -1, -1, -1, -1, 29, -1, -1, 
-  -1, 33, 34, -1, 36, -1, -1, -1, 40, -1, 
-  42, 43, 44, -1, -1, 47, -1, -1, -1, 51, 
-  -1, 53, -1, -1, -1, -1, -1, -1, -1, -1, 
-  -1, -1, -1, 65, 66, 67, 68, -1, 70, -1, 
-  72, -1, 74, -1, 76, -1, -1, -1, -1, 81, 
-  82, 83, -1, -1, -1, 87, -1, -1, -1, -1, 
-  -1, -1, -1, -1, -1, -1, -1, 11, 12, 13, 
+  65, 66, 67, 68, -1, 70, -1, 72, -1, 74, 
+  -1, 76, -1, -1, -1, -1, 81, 82, 83, -1, 
+  -1, -1, 87, -1, -1, -1, -1, -1, -1, -1, 
+  -1, -1, -1, -1, 7, -1, -1, -1, 11, 12, 
+  13, -1, -1, -1, -1, -1, -1, -1, -1, 22, 
+  -1, -1, -1, -1, -1, -1, 29, -1, -1, -1, 
+  33, 34, -1, 36, -1, -1, -1, 40, -1, 42, 
+  43, 44, -1, -1, 47, -1, -1, -1, 51, -1, 
+  53, -1, -1, -1, -1, -1, -1, -1, -1, -1, 
+  -1, -1, 65, 66, 67, 68, -1, 70, -1, 72, 
+  -1, 74, -1, 76, -1, -1, -1, -1, 81, 82, 
+  83, -1, -1, -1, 87, -1, -1, -1, -1, -1, 
+  -1, -1, -1, -1, -1, -1, 11, 12, 13, -1, 
+  -1, -1, -1, -1, -1, -1, -1, 22, -1, -1, 
+  -1, -1, -1, -1, 29, -1, -1, -1, 33, 34, 
+  -1, 36, -1, -1, -1, 40, -1, 42, 43, 44, 
+  -1, -1, 47, -1, -1, -1, 51, -1, 53, -1, 
+  -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 
+  65, 66, 67, 68, -1, 70, -1, 72, -1, 74, 
+  75, 76, -1, -1, -1, -1, 81, 82, 83, -1, 
+  -1, -1, 87, -1, -1, -1, -1, -1, -1, -1, 
+  -1, -1, -1, -1, 8, -1, -1, 11, 12, 13, 
   -1, -1, -1, -1, -1, -1, -1, -1, 22, -1, 
   -1, -1, -1, -1, -1, 29, -1, -1, -1, 33, 
   34, -1, 36, -1, -1, -1, 40, -1, 42, 43, 
   44, -1, -1, 47, -1, -1, -1, 51, -1, 53, 
-  -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 
+  -1, -1, 56, -1, -1, -1, -1, -1, -1, -1, 
   -1, 65, 66, 67, 68, -1, 70, -1, 72, -1, 
-  74, 75, 76, -1, -1, -1, -1, 81, 82, 83, 
+  74, -1, 76, -1, -1, -1, -1, 81, 82, 83, 
   -1, -1, -1, 87, -1, -1, -1, -1, -1, -1, 
   -1, -1, -1, -1, -1, 8, -1, -1, 11, 12, 
   13, -1, -1, -1, -1, -1, -1, -1, -1, 22, 
@@ -811,130 +855,124 @@ const short QmlJSGrammar::action_check [] = {
   -1, -1, -1, -1, 65, 66, 67, 68, -1, 70, 
   -1, 72, -1, 74, -1, 76, -1, -1, -1, -1, 
   81, 82, 83, -1, -1, -1, 87, -1, -1, -1, 
-  -1, -1, -1, -1, -1, -1, -1, -1, 8, -1, 
-  -1, 11, 12, 13, -1, -1, -1, -1, -1, -1, 
-  -1, -1, 22, -1, -1, -1, -1, -1, -1, 29, 
-  -1, -1, -1, 33, 34, -1, 36, -1, -1, -1, 
-  40, -1, 42, 43, 44, -1, -1, 47, -1, -1, 
-  -1, 51, -1, 53, -1, -1, 56, -1, -1, -1, 
-  -1, -1, -1, -1, -1, 65, 66, 67, 68, -1, 
-  70, -1, 72, -1, 74, -1, 76, -1, -1, -1, 
-  -1, 81, 82, 83, -1, -1, -1, 87, -1, -1, 
-  -1, -1, -1, -1, -1, -1, -1, -1, -1, 11, 
-  12, 13, -1, -1, -1, -1, -1, -1, -1, -1, 
-  22, -1, -1, -1, -1, -1, -1, 29, 30, -1, 
-  -1, 33, 34, -1, 36, -1, -1, -1, 40, -1, 
-  42, 43, 44, -1, -1, 47, -1, -1, -1, 51, 
-  -1, 53, -1, -1, -1, -1, -1, -1, -1, 61, 
-  -1, -1, -1, 65, 66, 67, 68, -1, 70, -1, 
-  72, -1, 74, -1, 76, -1, -1, -1, -1, 81, 
-  82, 83, -1, -1, -1, 87, -1, -1, -1, -1, 
-  -1, -1, -1, -1, -1, -1, -1, 4, 5, 6, 
-  -1, -1, 9, 10, 11, -1, -1, 14, -1, 16, 
-  -1, -1, -1, 20, 21, 22, -1, -1, -1, -1, 
-  -1, -1, 29, 30, 31, 32, -1, -1, -1, -1, 
-  -1, -1, -1, -1, -1, -1, 43, -1, -1, -1, 
+  -1, -1, -1, -1, -1, -1, -1, -1, 11, 12, 
+  13, -1, -1, -1, -1, -1, -1, -1, -1, 22, 
+  -1, -1, -1, -1, -1, -1, 29, 30, -1, -1, 
+  33, 34, -1, 36, -1, -1, -1, 40, -1, 42, 
+  43, 44, -1, -1, 47, -1, -1, -1, 51, -1, 
+  53, -1, -1, -1, -1, -1, -1, -1, 61, -1, 
+  -1, -1, 65, 66, 67, 68, -1, 70, -1, 72, 
+  -1, 74, -1, 76, -1, -1, -1, -1, 81, 82, 
+  83, -1, -1, -1, 87, -1, -1, -1, -1, -1, 
+  -1, -1, -1, -1, -1, -1, 4, 5, 6, -1, 
+  -1, 9, 10, 11, -1, -1, 14, -1, 16, -1, 
+  -1, -1, 20, 21, 22, -1, -1, -1, -1, -1, 
+  -1, 29, 30, 31, 32, -1, -1, -1, -1, -1, 
+  -1, -1, -1, -1, -1, 43, -1, -1, -1, -1, 
   -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 
-  -1, -1, 59, -1, -1, -1, -1, -1, -1, 66, 
-  67, 68, 69, 70, 71, -1, 73, 74, 75, 76, 
-  77, 78, -1, -1, 81, 82, 83, 84, 85, 86, 
+  -1, 59, -1, -1, -1, -1, -1, -1, 66, 67, 
+  68, 69, 70, 71, -1, 73, 74, 75, 76, 77, 
+  78, -1, -1, 81, 82, 83, 84, 85, 86, -1, 
   -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 
-  -1, -1, 4, 5, 6, -1, -1, 9, 10, 11, 
-  -1, -1, 14, -1, 16, -1, -1, -1, 20, 21, 
-  22, -1, -1, -1, -1, -1, -1, 29, 30, 31, 
-  32, -1, -1, -1, -1, -1, -1, -1, -1, -1, 
-  -1, 43, -1, -1, -1, 47, -1, -1, -1, -1, 
-  -1, -1, -1, -1, -1, -1, -1, 59, -1, -1, 
-  -1, -1, -1, 65, 66, 67, -1, 69, 70, 71, 
-  -1, 73, 74, 75, 76, 77, 78, -1, -1, 81, 
-  82, 83, 84, 85, 86, -1, -1, -1, -1, -1, 
-  -1, -1, -1, -1, -1, -1, -1, 4, 5, 6, 
-  -1, -1, 9, 10, 11, -1, -1, 14, -1, 16, 
-  -1, -1, -1, 20, 21, 22, -1, -1, -1, -1, 
-  -1, -1, 29, 30, 31, 32, -1, -1, -1, -1, 
-  -1, -1, -1, -1, -1, -1, 43, -1, -1, -1, 
-  47, -1, -1, -1, -1, -1, -1, -1, 55, -1, 
-  -1, -1, 59, -1, -1, -1, -1, -1, 65, 66, 
-  67, -1, 69, 70, 71, -1, 73, 74, 75, 76, 
-  77, 78, -1, -1, 81, 82, 83, 84, 85, 86, 
+  -1, 4, 5, 6, -1, -1, 9, 10, 11, -1, 
+  -1, 14, -1, 16, -1, -1, -1, 20, 21, 22, 
+  -1, -1, -1, -1, -1, -1, 29, 30, 31, 32, 
   -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 
-  -1, -1, 4, -1, -1, -1, -1, 9, -1, 11, 
-  12, 13, 14, -1, -1, -1, -1, -1, -1, 21, 
-  22, -1, -1, -1, -1, -1, -1, 29, 30, -1, 
-  -1, 33, 34, -1, 36, -1, -1, -1, 40, -1, 
-  42, 43, 44, -1, -1, 47, -1, -1, -1, 51, 
-  -1, 53, -1, -1, -1, -1, -1, 59, -1, 61, 
-  -1, -1, -1, 65, 66, 67, 68, 69, 70, 71, 
-  72, 73, 74, 75, 76, 77, 78, -1, -1, 81, 
-  82, 83, 84, 85, -1, 87, -1, -1, -1, -1, 
-  -1, -1, -1, -1, -1, -1, -1, 4, -1, -1, 
-  -1, -1, 9, -1, 11, 12, 13, 14, -1, -1, 
-  -1, -1, -1, -1, 21, 22, -1, -1, -1, -1, 
-  -1, -1, 29, 30, -1, -1, 33, 34, -1, 36, 
-  -1, -1, -1, 40, -1, 42, 43, 44, -1, -1, 
-  47, -1, -1, -1, 51, -1, 53, -1, -1, -1, 
-  -1, -1, 59, -1, 61, -1, -1, -1, 65, 66, 
-  67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 
-  77, 78, -1, -1, 81, 82, 83, 84, 85, -1, 
-  87, -1, -1, -1, -1, -1, -1, -1, -1, -1, 
-  -1, -1, 4, 5, 6, -1, -1, 9, 10, 11, 
-  12, 13, 14, -1, 16, -1, -1, -1, 20, 21, 
-  22, -1, -1, -1, -1, -1, -1, 29, 30, 31, 
-  32, 33, 34, -1, 36, -1, -1, -1, 40, -1, 
-  42, 43, 44, -1, -1, 47, -1, -1, -1, 51, 
-  -1, 53, -1, -1, -1, -1, -1, 59, -1, 61, 
-  -1, -1, -1, 65, 66, 67, 68, 69, 70, 71, 
-  72, 73, 74, 75, 76, 77, 78, -1, -1, 81, 
-  82, 83, 84, 85, 86, 87, -1, -1, -1, -1, 
-  -1, -1, -1, -1, -1, -1, -1, 4, 5, 6, 
-  -1, -1, 9, 10, 11, 12, 13, 14, -1, 16, 
-  -1, -1, -1, 20, 21, 22, -1, -1, -1, -1, 
-  -1, -1, 29, 30, 31, 32, 33, 34, -1, 36, 
-  -1, -1, -1, 40, -1, 42, 43, 44, -1, -1, 
-  47, -1, -1, -1, 51, -1, 53, -1, 55, -1, 
-  -1, -1, 59, -1, 61, -1, -1, -1, 65, 66, 
-  67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 
-  77, 78, -1, -1, 81, 82, 83, 84, 85, 86, 
-  87, -1, -1, -1, -1, -1, -1, -1, -1, -1, 
-  -1, -1, 
+  43, -1, -1, -1, 47, -1, -1, -1, -1, -1, 
+  -1, -1, -1, -1, -1, -1, 59, -1, -1, -1, 
+  -1, -1, 65, 66, 67, -1, 69, 70, 71, -1, 
+  73, 74, 75, 76, 77, 78, -1, -1, 81, 82, 
+  83, 84, 85, 86, -1, -1, -1, -1, -1, -1, 
+  -1, -1, -1, -1, -1, -1, 4, 5, 6, -1, 
+  -1, 9, 10, 11, -1, -1, 14, -1, 16, -1, 
+  -1, -1, 20, 21, 22, -1, -1, -1, -1, -1, 
+  -1, 29, 30, 31, 32, -1, -1, -1, -1, -1, 
+  -1, -1, -1, -1, -1, 43, -1, -1, -1, 47, 
+  -1, -1, -1, -1, -1, -1, -1, 55, -1, -1, 
+  -1, 59, -1, -1, -1, -1, -1, 65, 66, 67, 
+  -1, 69, 70, 71, -1, 73, 74, 75, 76, 77, 
+  78, -1, -1, 81, 82, 83, 84, 85, 86, -1, 
+  -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 
+  -1, 4, -1, -1, -1, -1, 9, -1, 11, 12, 
+  13, 14, -1, -1, -1, -1, -1, -1, 21, 22, 
+  -1, -1, -1, -1, -1, -1, 29, 30, -1, -1, 
+  33, 34, -1, 36, -1, -1, -1, 40, -1, 42, 
+  43, 44, -1, -1, 47, -1, -1, -1, 51, -1, 
+  53, -1, -1, -1, -1, -1, 59, -1, 61, -1, 
+  -1, -1, 65, 66, 67, 68, 69, 70, 71, 72, 
+  73, 74, 75, 76, 77, 78, -1, -1, 81, 82, 
+  83, 84, 85, -1, 87, -1, -1, -1, -1, -1, 
+  -1, -1, -1, -1, -1, -1, 4, -1, -1, -1, 
+  -1, 9, -1, 11, 12, 13, 14, -1, -1, -1, 
+  -1, -1, -1, 21, 22, -1, -1, -1, -1, -1, 
+  -1, 29, 30, -1, -1, 33, 34, -1, 36, -1, 
+  -1, -1, 40, -1, 42, 43, 44, -1, -1, 47, 
+  -1, -1, -1, 51, -1, 53, -1, -1, -1, -1, 
+  -1, 59, -1, 61, -1, -1, -1, 65, 66, 67, 
+  68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 
+  78, -1, -1, 81, 82, 83, 84, 85, -1, 87, 
+  -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 
+  -1, 4, 5, 6, -1, -1, 9, 10, 11, 12, 
+  13, 14, -1, 16, -1, -1, -1, 20, 21, 22, 
+  -1, -1, -1, -1, -1, -1, 29, 30, 31, 32, 
+  33, 34, -1, 36, -1, -1, -1, 40, -1, 42, 
+  43, 44, -1, -1, 47, -1, -1, -1, 51, -1, 
+  53, -1, -1, -1, -1, -1, 59, -1, 61, -1, 
+  -1, -1, 65, 66, 67, 68, 69, 70, 71, 72, 
+  73, 74, 75, 76, 77, 78, -1, -1, 81, 82, 
+  83, 84, 85, 86, 87, -1, -1, -1, -1, -1, 
+  -1, -1, -1, -1, -1, -1, 4, 5, 6, -1, 
+  -1, 9, 10, 11, 12, 13, 14, -1, 16, -1, 
+  -1, -1, 20, 21, 22, -1, -1, -1, -1, -1, 
+  -1, 29, 30, 31, 32, 33, 34, -1, 36, -1, 
+  -1, -1, 40, -1, 42, 43, 44, -1, -1, 47, 
+  -1, -1, -1, 51, -1, 53, -1, 55, -1, -1, 
+  -1, 59, -1, 61, -1, -1, -1, 65, 66, 67, 
+  68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 
+  78, -1, -1, 81, 82, 83, 84, 85, 86, 87, 
+  -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 
+  -1, 
 
-  3, 23, 13, 23, 23, 13, 3, 13, 65, 3, 
-  11, 13, 19, 3, 9, 3, 3, 13, 2, 33, 
-  13, 13, 3, 23, 13, 2, 2, 13, 3, 3, 
-  2, 13, 23, 11, 17, 3, 3, 2, 96, 19, 
-  13, 2, 13, 13, 2, 2, 2, 13, 33, 13, 
-  19, 13, 3, 2, 33, 3, 2, 2, 13, 13, 
-  2, 79, 3, 79, 91, 3, 3, 19, 94, 3, 
-  33, 2, 2, 33, 33, 3, 19, 3, 2, -1, 
-  3, 34, 3, 33, 13, 3, 33, -1, 13, 33, 
-  -1, 13, 11, 33, 33, 3, 13, 33, 2, -1, 
-  -1, 2, 2, -1, 3, -1, -1, 42, -1, 42, 
-  42, -1, 44, -1, -1, 42, 3, 3, -1, 46, 
-  39, 56, 42, -1, 44, 58, 42, 42, 44, 42, 
-  42, 46, 44, 42, 47, 44, 42, 42, 33, 42, 
-  42, -1, 47, 38, 42, 47, 44, 11, 54, 52, 
-  42, 42, 42, -1, 44, 47, 47, 42, 66, 42, 
-  42, 83, 47, 46, -1, 47, 42, 66, 85, 45, 
-  42, -1, 97, 45, 42, 39, 44, 42, -1, 66, 
-  66, 42, 47, 44, 42, 42, 44, 42, 42, 44, 
-  44, 42, 42, 50, 98, 42, 13, 48, 48, 42, 
-  42, 48, 103, 42, 47, 33, 48, 42, 47, 44, 
-  38, 42, 42, 44, 44, 42, 11, 44, 35, 42, 
-  42, 42, 44, 42, 47, 13, 47, 42, 47, 42, 
-  42, -1, 47, -1, 47, 47, 51, 11, 42, -1, 
-  -1, 53, -1, 47, 39, 64, 59, 35, 36, 42, 
-  42, 55, 26, 27, 47, 47, 11, 42, -1, 14, 
-  42, 42, 47, 18, -1, 47, 47, -1, -1, -1, 
-  -1, 64, 64, 42, -1, -1, 57, 29, 47, 64, 
-  49, 33, 64, 42, 42, -1, 4, -1, 47, 47, 
-  49, 49, 42, 11, -1, 11, 4, 47, 14, 49, 
-  -1, -1, 18, 11, 11, -1, -1, -1, 26, 27, 
-  -1, 18, 19, 20, 21, 22, -1, 33, 26, 27, 
+  14, 3, 24, 10, 14, 2, 14, 24, 14, 3, 
+  34, 12, 3, 24, 14, 14, 3, 2, 14, 3, 
+  18, 14, 14, 12, 3, 20, 66, 2, 14, 3, 
+  3, 3, 2, 2, 24, 3, 24, 14, 20, 2, 
+  20, 97, 3, 14, 2, 2, 2, 14, 14, 2, 
+  14, 34, 3, 34, 80, 3, 34, 2, 34, 2, 
+  14, 2, 92, 3, 80, 3, 95, 3, 20, 34, 
+  3, 2, 34, 20, 3, 35, 2, 14, 2, 34, 
+  14, 3, 3, 2, 34, 34, 14, 2, 34, 14, 
+  34, 14, 2, 2, 4, 4, 14, 3, -1, -1, 
+  -1, 43, -1, 45, 43, 3, -1, 12, 43, -1, 
+  15, 43, -1, 45, 19, -1, 43, 3, 57, -1, 
+  47, -1, -1, 43, 59, 45, 43, 43, 45, 43, 
+  43, 47, 45, 34, 48, 43, 43, 45, 39, 43, 
+  34, 48, 12, 43, 3, 39, 43, 43, 48, 53, 
+  47, 43, 43, 43, 46, 43, 84, 48, 48, 55, 
+  48, 67, 43, 12, 45, -1, 43, 43, 86, 67, 
+  40, 48, 48, 98, 43, 43, 43, 46, 45, 43, 
+  48, 67, 3, 43, 99, 45, 43, 51, 45, 43, 
+  43, 40, 45, 43, 12, 49, 43, 43, 45, 49, 
+  43, -1, 43, 49, 45, 43, 49, 43, 67, 45, 
+  48, 43, 43, 45, 45, 43, 43, 45, 43, 43, 
+  45, 48, 40, 30, 48, -1, 43, 34, 43, 43, 
+  43, 48, 43, 48, 48, 48, 12, 48, 43, 52, 
+  14, 56, 43, 48, -1, 43, 60, 48, 65, 54, 
+  48, 27, 28, 43, 65, 43, -1, -1, 48, -1, 
+  48, 43, 36, 37, 65, -1, 48, 65, 50, -1, 
+  58, 43, -1, -1, 12, 65, 48, 15, 50, 12, 
+  43, 19, 15, 43, 14, 48, 19, 50, 48, 5, 
+  50, -1, -1, -1, -1, -1, 12, -1, -1, -1, 
+  -1, 34, -1, -1, -1, -1, 36, 12, -1, -1, 
+  -1, 27, 28, -1, 19, 20, 21, 22, 23, -1, 
+  -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 
+  -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 
   -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 
   -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 
   -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 
-  -1, -1, -1, 11, -1, -1, 14, -1, -1, -1, 
-  18, -1, -1, -1, -1, -1, -1, -1, -1, -1, 
+  -1, -1, -1, -1, -1, 5, -1, -1, -1, -1, 
+  -1, -1, 12, -1, -1, -1, -1, -1, -1, -1, 
+  -1, -1, -1, -1, -1, -1, -1, 27, 28, -1, 
   -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 
   -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 
   -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 
@@ -942,6 +980,6 @@ const short QmlJSGrammar::action_check [] = {
   -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 
   -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 
   -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 
-  -1, -1, -1, -1, -1, -1, -1};
+  -1, -1, -1, -1, -1};
 
 QT_END_NAMESPACE
diff --git a/src/shared/qmljs/parser/qmljsgrammar_p.h b/src/shared/qmljs/parser/qmljsgrammar_p.h
index 469ed92f6e9..74fc7aad965 100644
--- a/src/shared/qmljs/parser/qmljsgrammar_p.h
+++ b/src/shared/qmljs/parser/qmljsgrammar_p.h
@@ -169,8 +169,8 @@ public:
     NON_TERMINAL_COUNT = 105,
 
     GOTO_INDEX_OFFSET = 633,
-    GOTO_INFO_OFFSET = 2532,
-    GOTO_CHECK_OFFSET = 2532
+    GOTO_INFO_OFFSET = 2691,
+    GOTO_CHECK_OFFSET = 2691
   };
 
   static const char  *const    spell [];
-- 
GitLab