diff --git a/parser.src/DynareBison.cc b/parser.src/DynareBison.cc index 19d0f4193..db5bcaa9a 100644 --- a/parser.src/DynareBison.cc +++ b/parser.src/DynareBison.cc @@ -395,852 +395,862 @@ namespace yy switch (yyn) { case 48: -#line 151 "DynareBison.yy" +#line 152 "DynareBison.yy" { driver.dsample((yysemantic_stack_[(3) - (2)].string_val)); ;} break; case 49: -#line 153 "DynareBison.yy" +#line 154 "DynareBison.yy" { driver.dsample((yysemantic_stack_[(4) - (2)].string_val), (yysemantic_stack_[(4) - (3)].string_val)); ;} break; case 50: -#line 156 "DynareBison.yy" +#line 157 "DynareBison.yy" { driver.rplot(); ;} break; case 55: -#line 167 "DynareBison.yy" +#line 168 "DynareBison.yy" { driver.declare_endogenous((yysemantic_stack_[(2) - (2)].string_val)); ;} break; case 56: -#line 169 "DynareBison.yy" +#line 170 "DynareBison.yy" { driver.declare_endogenous((yysemantic_stack_[(3) - (3)].string_val)); ;} break; case 57: -#line 171 "DynareBison.yy" +#line 172 "DynareBison.yy" { driver.declare_endogenous((yysemantic_stack_[(1) - (1)].string_val)); ;} break; case 58: -#line 173 "DynareBison.yy" +#line 174 "DynareBison.yy" { driver.declare_endogenous((yysemantic_stack_[(3) - (2)].string_val), (yysemantic_stack_[(3) - (3)].string_val)); ;} break; case 59: -#line 175 "DynareBison.yy" +#line 176 "DynareBison.yy" { driver.declare_endogenous((yysemantic_stack_[(4) - (3)].string_val), (yysemantic_stack_[(4) - (4)].string_val)); ;} break; case 60: -#line 177 "DynareBison.yy" +#line 178 "DynareBison.yy" { driver.declare_endogenous((yysemantic_stack_[(2) - (1)].string_val), (yysemantic_stack_[(2) - (2)].string_val)); ;} break; case 61: -#line 181 "DynareBison.yy" +#line 182 "DynareBison.yy" { driver.declare_exogenous((yysemantic_stack_[(2) - (2)].string_val)); ;} break; case 62: -#line 183 "DynareBison.yy" +#line 184 "DynareBison.yy" { driver.declare_exogenous((yysemantic_stack_[(3) - (3)].string_val)); ;} break; case 63: -#line 185 "DynareBison.yy" +#line 186 "DynareBison.yy" { driver.declare_exogenous((yysemantic_stack_[(1) - (1)].string_val)); ;} break; case 64: -#line 187 "DynareBison.yy" +#line 188 "DynareBison.yy" { driver.declare_exogenous((yysemantic_stack_[(3) - (2)].string_val), (yysemantic_stack_[(3) - (3)].string_val)); ;} break; case 65: -#line 189 "DynareBison.yy" +#line 190 "DynareBison.yy" { driver.declare_exogenous((yysemantic_stack_[(4) - (3)].string_val), (yysemantic_stack_[(4) - (4)].string_val)); ;} break; case 66: -#line 191 "DynareBison.yy" +#line 192 "DynareBison.yy" { driver.declare_exogenous((yysemantic_stack_[(2) - (1)].string_val), (yysemantic_stack_[(2) - (2)].string_val)); ;} break; case 67: -#line 195 "DynareBison.yy" +#line 196 "DynareBison.yy" { driver.declare_exogenous_det((yysemantic_stack_[(2) - (2)].string_val)); ;} break; case 68: -#line 197 "DynareBison.yy" +#line 198 "DynareBison.yy" { driver.declare_exogenous_det((yysemantic_stack_[(3) - (3)].string_val)); ;} break; case 69: -#line 199 "DynareBison.yy" +#line 200 "DynareBison.yy" { driver.declare_exogenous_det((yysemantic_stack_[(1) - (1)].string_val)); ;} break; case 70: -#line 201 "DynareBison.yy" +#line 202 "DynareBison.yy" { driver.declare_exogenous_det((yysemantic_stack_[(3) - (2)].string_val), (yysemantic_stack_[(3) - (3)].string_val)); ;} break; case 71: -#line 203 "DynareBison.yy" +#line 204 "DynareBison.yy" { driver.declare_exogenous_det((yysemantic_stack_[(4) - (3)].string_val), (yysemantic_stack_[(4) - (4)].string_val)); ;} break; case 72: -#line 205 "DynareBison.yy" +#line 206 "DynareBison.yy" { driver.declare_exogenous_det((yysemantic_stack_[(2) - (1)].string_val), (yysemantic_stack_[(2) - (2)].string_val)); ;} break; case 73: -#line 209 "DynareBison.yy" +#line 210 "DynareBison.yy" { driver.declare_parameter((yysemantic_stack_[(2) - (2)].string_val)); ;} break; case 74: -#line 211 "DynareBison.yy" +#line 212 "DynareBison.yy" { driver.declare_parameter((yysemantic_stack_[(3) - (3)].string_val)); ;} break; case 75: -#line 213 "DynareBison.yy" +#line 214 "DynareBison.yy" { driver.declare_parameter((yysemantic_stack_[(1) - (1)].string_val)); ;} break; case 76: -#line 215 "DynareBison.yy" +#line 216 "DynareBison.yy" { driver.declare_parameter((yysemantic_stack_[(3) - (2)].string_val), (yysemantic_stack_[(3) - (3)].string_val)); ;} break; case 77: -#line 217 "DynareBison.yy" +#line 218 "DynareBison.yy" { driver.declare_parameter((yysemantic_stack_[(4) - (3)].string_val), (yysemantic_stack_[(4) - (4)].string_val)); ;} break; case 78: -#line 219 "DynareBison.yy" +#line 220 "DynareBison.yy" { driver.declare_parameter((yysemantic_stack_[(2) - (1)].string_val), (yysemantic_stack_[(2) - (2)].string_val)); ;} break; case 79: -#line 223 "DynareBison.yy" +#line 224 "DynareBison.yy" { driver.periods((yysemantic_stack_[(3) - (2)].string_val)); ;} break; case 80: -#line 225 "DynareBison.yy" +#line 226 "DynareBison.yy" { driver.periods((yysemantic_stack_[(4) - (3)].string_val)); ;} break; case 81: -#line 229 "DynareBison.yy" +#line 230 "DynareBison.yy" { driver.cutoff((yysemantic_stack_[(3) - (2)].string_val)); ;} break; case 82: -#line 231 "DynareBison.yy" +#line 232 "DynareBison.yy" { driver.cutoff((yysemantic_stack_[(4) - (3)].string_val)); ;} break; case 83: -#line 235 "DynareBison.yy" +#line 236 "DynareBison.yy" { driver.markowitz((yysemantic_stack_[(3) - (2)].string_val)); ;} break; case 84: -#line 237 "DynareBison.yy" +#line 238 "DynareBison.yy" { driver.markowitz((yysemantic_stack_[(4) - (3)].string_val)); ;} break; case 85: -#line 241 "DynareBison.yy" +#line 242 "DynareBison.yy" { driver.init_param((yysemantic_stack_[(4) - (1)].string_val), (yysemantic_stack_[(4) - (3)].node_val)); ;} break; case 86: -#line 244 "DynareBison.yy" +#line 245 "DynareBison.yy" { (yyval.node_val) = (yysemantic_stack_[(3) - (2)].node_val);;} break; case 87: -#line 246 "DynareBison.yy" +#line 247 "DynareBison.yy" { (yyval.node_val) = driver.add_expression_variable((yysemantic_stack_[(1) - (1)].string_val)); ;} break; case 88: -#line 248 "DynareBison.yy" +#line 249 "DynareBison.yy" { (yyval.node_val) = driver.add_constant((yysemantic_stack_[(1) - (1)].string_val)); ;} break; case 89: -#line 250 "DynareBison.yy" +#line 251 "DynareBison.yy" { (yyval.node_val) = driver.add_constant((yysemantic_stack_[(1) - (1)].string_val)); ;} break; case 90: -#line 252 "DynareBison.yy" +#line 253 "DynareBison.yy" { (yyval.node_val) = driver.add_plus((yysemantic_stack_[(3) - (1)].node_val), (yysemantic_stack_[(3) - (3)].node_val)); ;} break; case 91: -#line 254 "DynareBison.yy" +#line 255 "DynareBison.yy" { (yyval.node_val) = driver.add_minus((yysemantic_stack_[(3) - (1)].node_val), (yysemantic_stack_[(3) - (3)].node_val)); ;} break; case 92: -#line 256 "DynareBison.yy" +#line 257 "DynareBison.yy" { (yyval.node_val) = driver.add_divide((yysemantic_stack_[(3) - (1)].node_val), (yysemantic_stack_[(3) - (3)].node_val)); ;} break; case 93: -#line 258 "DynareBison.yy" +#line 259 "DynareBison.yy" { (yyval.node_val) = driver.add_times((yysemantic_stack_[(3) - (1)].node_val), (yysemantic_stack_[(3) - (3)].node_val)); ;} break; case 94: -#line 260 "DynareBison.yy" +#line 261 "DynareBison.yy" { (yyval.node_val) = driver.add_power((yysemantic_stack_[(3) - (1)].node_val), (yysemantic_stack_[(3) - (3)].node_val)); ;} break; case 95: -#line 262 "DynareBison.yy" +#line 263 "DynareBison.yy" { (yyval.node_val) = driver.add_less((yysemantic_stack_[(3) - (1)].node_val), (yysemantic_stack_[(3) - (3)].node_val)); ;} break; case 96: -#line 264 "DynareBison.yy" +#line 265 "DynareBison.yy" { (yyval.node_val) = driver.add_greater((yysemantic_stack_[(3) - (1)].node_val), (yysemantic_stack_[(3) - (3)].node_val)); ;} break; case 97: -#line 266 "DynareBison.yy" +#line 267 "DynareBison.yy" { (yyval.node_val) = driver.add_less_equal((yysemantic_stack_[(3) - (1)].node_val), (yysemantic_stack_[(3) - (3)].node_val)); ;} break; case 98: -#line 268 "DynareBison.yy" +#line 269 "DynareBison.yy" { (yyval.node_val) = driver.add_greater_equal((yysemantic_stack_[(3) - (1)].node_val), (yysemantic_stack_[(3) - (3)].node_val)); ;} break; case 99: -#line 270 "DynareBison.yy" +#line 271 "DynareBison.yy" { (yyval.node_val) = driver.add_equal_equal((yysemantic_stack_[(3) - (1)].node_val), (yysemantic_stack_[(3) - (3)].node_val)); ;} break; case 100: -#line 272 "DynareBison.yy" +#line 273 "DynareBison.yy" { (yyval.node_val) = driver.add_different((yysemantic_stack_[(3) - (1)].node_val), (yysemantic_stack_[(3) - (3)].node_val)); ;} break; case 101: -#line 274 "DynareBison.yy" +#line 275 "DynareBison.yy" { (yyval.node_val) = driver.add_uminus((yysemantic_stack_[(2) - (2)].node_val)); ;} break; case 102: -#line 276 "DynareBison.yy" +#line 277 "DynareBison.yy" { (yyval.node_val) = (yysemantic_stack_[(2) - (2)].node_val); ;} break; case 103: -#line 278 "DynareBison.yy" +#line 279 "DynareBison.yy" { (yyval.node_val) = driver.add_exp((yysemantic_stack_[(4) - (3)].node_val)); ;} break; case 104: -#line 280 "DynareBison.yy" +#line 281 "DynareBison.yy" { (yyval.node_val) = driver.add_log((yysemantic_stack_[(4) - (3)].node_val)); ;} break; case 105: -#line 282 "DynareBison.yy" +#line 283 "DynareBison.yy" { (yyval.node_val) = driver.add_log10((yysemantic_stack_[(4) - (3)].node_val)); ;} break; case 106: -#line 284 "DynareBison.yy" +#line 285 "DynareBison.yy" { (yyval.node_val) = driver.add_sin((yysemantic_stack_[(4) - (3)].node_val)); ;} break; case 107: -#line 286 "DynareBison.yy" +#line 287 "DynareBison.yy" { (yyval.node_val) = driver.add_cos((yysemantic_stack_[(4) - (3)].node_val)); ;} break; case 108: -#line 288 "DynareBison.yy" +#line 289 "DynareBison.yy" { (yyval.node_val) = driver.add_tan((yysemantic_stack_[(4) - (3)].node_val)); ;} break; case 109: -#line 290 "DynareBison.yy" +#line 291 "DynareBison.yy" { (yyval.node_val) = driver.add_asin((yysemantic_stack_[(4) - (3)].node_val)); ;} break; case 110: -#line 292 "DynareBison.yy" +#line 293 "DynareBison.yy" { (yyval.node_val) = driver.add_acos((yysemantic_stack_[(4) - (3)].node_val)); ;} break; case 111: -#line 294 "DynareBison.yy" +#line 295 "DynareBison.yy" { (yyval.node_val) = driver.add_atan((yysemantic_stack_[(4) - (3)].node_val)); ;} break; case 112: -#line 296 "DynareBison.yy" +#line 297 "DynareBison.yy" { (yyval.node_val) = driver.add_sqrt((yysemantic_stack_[(4) - (3)].node_val)); ;} break; case 113: -#line 298 "DynareBison.yy" +#line 299 "DynareBison.yy" { (yyval.node_val) = driver.add_max((yysemantic_stack_[(6) - (3)].node_val) , (yysemantic_stack_[(6) - (5)].node_val)); ;} break; case 114: -#line 300 "DynareBison.yy" +#line 301 "DynareBison.yy" { (yyval.node_val) = driver.add_min((yysemantic_stack_[(6) - (3)].node_val) , (yysemantic_stack_[(6) - (5)].node_val)); ;} break; case 115: -#line 302 "DynareBison.yy" +#line 303 "DynareBison.yy" { (yyval.node_val) = driver.add_unknown_function((yysemantic_stack_[(4) - (1)].string_val)); ;} break; case 116: -#line 306 "DynareBison.yy" - { driver.add_unknown_function_arg((yysemantic_stack_[(1) - (1)].node_val)); ;} +#line 305 "DynareBison.yy" + { (yyval.node_val) = driver.add_normcdf((yysemantic_stack_[(8) - (3)].node_val),(yysemantic_stack_[(8) - (5)].node_val),(yysemantic_stack_[(8) - (7)].node_val));;} break; case 117: -#line 308 "DynareBison.yy" - { driver.add_unknown_function_arg((yysemantic_stack_[(3) - (3)].node_val)); ;} +#line 309 "DynareBison.yy" + { driver.add_unknown_function_arg((yysemantic_stack_[(1) - (1)].node_val)); ;} break; case 118: -#line 312 "DynareBison.yy" - { driver.end_initval(); ;} +#line 311 "DynareBison.yy" + { driver.add_unknown_function_arg((yysemantic_stack_[(3) - (3)].node_val)); ;} break; case 119: -#line 314 "DynareBison.yy" +#line 315 "DynareBison.yy" { driver.end_initval(); ;} break; case 120: #line 317 "DynareBison.yy" - { driver.init_val_filename((yysemantic_stack_[(3) - (3)].string_val)); ;} + { driver.end_initval(); ;} break; case 121: -#line 319 "DynareBison.yy" +#line 320 "DynareBison.yy" + { driver.init_val_filename((yysemantic_stack_[(3) - (3)].string_val)); ;} + break; + + case 122: +#line 322 "DynareBison.yy" { driver.end_endval(); ;} break; - case 124: -#line 325 "DynareBison.yy" + case 125: +#line 328 "DynareBison.yy" { driver.init_val((yysemantic_stack_[(4) - (1)].string_val), (yysemantic_stack_[(4) - (3)].node_val)); ;} break; - case 125: -#line 327 "DynareBison.yy" + case 126: +#line 330 "DynareBison.yy" { driver.end_histval(); ;} break; - case 128: -#line 333 "DynareBison.yy" + case 129: +#line 336 "DynareBison.yy" { driver.hist_val((yysemantic_stack_[(7) - (1)].string_val), (yysemantic_stack_[(7) - (3)].string_val), (yysemantic_stack_[(7) - (6)].node_val)); ;} break; - case 131: -#line 340 "DynareBison.yy" + case 132: +#line 343 "DynareBison.yy" { driver.init_compiler(0); ;} break; - case 132: -#line 342 "DynareBison.yy" + case 133: +#line 345 "DynareBison.yy" { driver.init_compiler(1); ;} break; - case 133: -#line 344 "DynareBison.yy" + case 134: +#line 347 "DynareBison.yy" { driver.init_compiler(2); ;} break; - case 136: -#line 349 "DynareBison.yy" - { driver.begin_model(); ;} - break; - case 137: -#line 350 "DynareBison.yy" - { driver.reset_data_tree(); ;} +#line 352 "DynareBison.yy" + { driver.begin_model(); ;} break; case 138: -#line 351 "DynareBison.yy" - { driver.begin_model(); ;} +#line 353 "DynareBison.yy" + { driver.reset_data_tree(); ;} break; case 139: -#line 352 "DynareBison.yy" - { driver.reset_data_tree(); ;} +#line 354 "DynareBison.yy" + { driver.begin_model(); ;} break; case 140: -#line 353 "DynareBison.yy" - { driver.begin_model(); driver.use_dll(); ;} - break; - - case 141: -#line 354 "DynareBison.yy" +#line 355 "DynareBison.yy" { driver.reset_data_tree(); ;} break; - case 142: + case 141: #line 356 "DynareBison.yy" - { driver.begin_model(); driver.sparse_dll(); ;} + { driver.begin_model(); driver.use_dll(); ;} break; - case 143: + case 142: #line 357 "DynareBison.yy" { driver.reset_data_tree(); ;} break; - case 144: -#line 358 "DynareBison.yy" + case 143: +#line 359 "DynareBison.yy" { driver.begin_model(); driver.sparse_dll(); ;} break; - case 145: -#line 359 "DynareBison.yy" + case 144: +#line 360 "DynareBison.yy" { driver.reset_data_tree(); ;} break; - case 150: -#line 369 "DynareBison.yy" - { (yyval.node_val) = driver.add_model_equal((yysemantic_stack_[(4) - (1)].node_val), (yysemantic_stack_[(4) - (3)].node_val)); ;} + case 145: +#line 361 "DynareBison.yy" + { driver.begin_model(); driver.sparse_dll(); ;} + break; + + case 146: +#line 362 "DynareBison.yy" + { driver.reset_data_tree(); ;} break; case 151: -#line 371 "DynareBison.yy" - { (yyval.node_val) = driver.add_model_equal_with_zero_rhs((yysemantic_stack_[(2) - (1)].node_val)); ;} +#line 372 "DynareBison.yy" + { (yyval.node_val) = driver.add_model_equal((yysemantic_stack_[(4) - (1)].node_val), (yysemantic_stack_[(4) - (3)].node_val)); ;} break; case 152: -#line 375 "DynareBison.yy" +#line 374 "DynareBison.yy" + { (yyval.node_val) = driver.add_model_equal_with_zero_rhs((yysemantic_stack_[(2) - (1)].node_val)); ;} + break; + + case 153: +#line 378 "DynareBison.yy" { (yyval.node_val) = (yysemantic_stack_[(3) - (2)].node_val);;} break; - case 154: -#line 378 "DynareBison.yy" - { (yyval.node_val) = driver.add_constant((yysemantic_stack_[(1) - (1)].string_val)); ;} - break; - case 155: -#line 380 "DynareBison.yy" +#line 381 "DynareBison.yy" { (yyval.node_val) = driver.add_constant((yysemantic_stack_[(1) - (1)].string_val)); ;} break; case 156: -#line 382 "DynareBison.yy" - { (yyval.node_val) = driver.add_plus((yysemantic_stack_[(3) - (1)].node_val), (yysemantic_stack_[(3) - (3)].node_val)); ;} +#line 383 "DynareBison.yy" + { (yyval.node_val) = driver.add_constant((yysemantic_stack_[(1) - (1)].string_val)); ;} break; case 157: -#line 384 "DynareBison.yy" - { (yyval.node_val) = driver.add_minus((yysemantic_stack_[(3) - (1)].node_val), (yysemantic_stack_[(3) - (3)].node_val)); ;} +#line 385 "DynareBison.yy" + { (yyval.node_val) = driver.add_plus((yysemantic_stack_[(3) - (1)].node_val), (yysemantic_stack_[(3) - (3)].node_val)); ;} break; case 158: -#line 386 "DynareBison.yy" - { (yyval.node_val) = driver.add_divide((yysemantic_stack_[(3) - (1)].node_val), (yysemantic_stack_[(3) - (3)].node_val)); ;} +#line 387 "DynareBison.yy" + { (yyval.node_val) = driver.add_minus((yysemantic_stack_[(3) - (1)].node_val), (yysemantic_stack_[(3) - (3)].node_val)); ;} break; case 159: -#line 388 "DynareBison.yy" - { (yyval.node_val) = driver.add_times((yysemantic_stack_[(3) - (1)].node_val), (yysemantic_stack_[(3) - (3)].node_val)); ;} +#line 389 "DynareBison.yy" + { (yyval.node_val) = driver.add_divide((yysemantic_stack_[(3) - (1)].node_val), (yysemantic_stack_[(3) - (3)].node_val)); ;} break; case 160: -#line 390 "DynareBison.yy" - { (yyval.node_val) = driver.add_less((yysemantic_stack_[(3) - (1)].node_val), (yysemantic_stack_[(3) - (3)].node_val)); ;} +#line 391 "DynareBison.yy" + { (yyval.node_val) = driver.add_times((yysemantic_stack_[(3) - (1)].node_val), (yysemantic_stack_[(3) - (3)].node_val)); ;} break; case 161: -#line 392 "DynareBison.yy" - { (yyval.node_val) = driver.add_greater((yysemantic_stack_[(3) - (1)].node_val), (yysemantic_stack_[(3) - (3)].node_val)); ;} +#line 393 "DynareBison.yy" + { (yyval.node_val) = driver.add_less((yysemantic_stack_[(3) - (1)].node_val), (yysemantic_stack_[(3) - (3)].node_val)); ;} break; case 162: -#line 394 "DynareBison.yy" - { (yyval.node_val) = driver.add_less_equal((yysemantic_stack_[(3) - (1)].node_val), (yysemantic_stack_[(3) - (3)].node_val)); ;} +#line 395 "DynareBison.yy" + { (yyval.node_val) = driver.add_greater((yysemantic_stack_[(3) - (1)].node_val), (yysemantic_stack_[(3) - (3)].node_val)); ;} break; case 163: -#line 396 "DynareBison.yy" - { (yyval.node_val) = driver.add_greater_equal((yysemantic_stack_[(3) - (1)].node_val), (yysemantic_stack_[(3) - (3)].node_val)); ;} +#line 397 "DynareBison.yy" + { (yyval.node_val) = driver.add_less_equal((yysemantic_stack_[(3) - (1)].node_val), (yysemantic_stack_[(3) - (3)].node_val)); ;} break; case 164: -#line 398 "DynareBison.yy" - { (yyval.node_val) = driver.add_equal_equal((yysemantic_stack_[(3) - (1)].node_val), (yysemantic_stack_[(3) - (3)].node_val)); ;} +#line 399 "DynareBison.yy" + { (yyval.node_val) = driver.add_greater_equal((yysemantic_stack_[(3) - (1)].node_val), (yysemantic_stack_[(3) - (3)].node_val)); ;} break; case 165: -#line 400 "DynareBison.yy" - { (yyval.node_val) = driver.add_different((yysemantic_stack_[(3) - (1)].node_val), (yysemantic_stack_[(3) - (3)].node_val)); ;} +#line 401 "DynareBison.yy" + { (yyval.node_val) = driver.add_equal_equal((yysemantic_stack_[(3) - (1)].node_val), (yysemantic_stack_[(3) - (3)].node_val)); ;} break; case 166: -#line 402 "DynareBison.yy" - { (yyval.node_val) = driver.add_power((yysemantic_stack_[(3) - (1)].node_val), (yysemantic_stack_[(3) - (3)].node_val)); ;} +#line 403 "DynareBison.yy" + { (yyval.node_val) = driver.add_different((yysemantic_stack_[(3) - (1)].node_val), (yysemantic_stack_[(3) - (3)].node_val)); ;} break; case 167: -#line 404 "DynareBison.yy" - { (yyval.node_val) = driver.add_uminus((yysemantic_stack_[(2) - (2)].node_val)); ;} +#line 405 "DynareBison.yy" + { (yyval.node_val) = driver.add_power((yysemantic_stack_[(3) - (1)].node_val), (yysemantic_stack_[(3) - (3)].node_val)); ;} break; case 168: -#line 406 "DynareBison.yy" - { (yyval.node_val) = (yysemantic_stack_[(2) - (2)].node_val); ;} +#line 407 "DynareBison.yy" + { (yyval.node_val) = driver.add_uminus((yysemantic_stack_[(2) - (2)].node_val)); ;} break; case 169: -#line 408 "DynareBison.yy" - { (yyval.node_val) = driver.add_exp((yysemantic_stack_[(4) - (3)].node_val)); ;} +#line 409 "DynareBison.yy" + { (yyval.node_val) = (yysemantic_stack_[(2) - (2)].node_val); ;} break; case 170: -#line 410 "DynareBison.yy" - { (yyval.node_val) = driver.add_log((yysemantic_stack_[(4) - (3)].node_val)); ;} +#line 411 "DynareBison.yy" + { (yyval.node_val) = driver.add_exp((yysemantic_stack_[(4) - (3)].node_val)); ;} break; case 171: -#line 412 "DynareBison.yy" - { (yyval.node_val) = driver.add_log10((yysemantic_stack_[(4) - (3)].node_val)); ;} +#line 413 "DynareBison.yy" + { (yyval.node_val) = driver.add_log((yysemantic_stack_[(4) - (3)].node_val)); ;} break; case 172: -#line 414 "DynareBison.yy" - { (yyval.node_val) = driver.add_sin((yysemantic_stack_[(4) - (3)].node_val)); ;} +#line 415 "DynareBison.yy" + { (yyval.node_val) = driver.add_log10((yysemantic_stack_[(4) - (3)].node_val)); ;} break; case 173: -#line 416 "DynareBison.yy" - { (yyval.node_val) = driver.add_cos((yysemantic_stack_[(4) - (3)].node_val)); ;} +#line 417 "DynareBison.yy" + { (yyval.node_val) = driver.add_sin((yysemantic_stack_[(4) - (3)].node_val)); ;} break; case 174: -#line 418 "DynareBison.yy" - { (yyval.node_val) = driver.add_tan((yysemantic_stack_[(4) - (3)].node_val)); ;} +#line 419 "DynareBison.yy" + { (yyval.node_val) = driver.add_cos((yysemantic_stack_[(4) - (3)].node_val)); ;} break; case 175: -#line 420 "DynareBison.yy" - { (yyval.node_val) = driver.add_asin((yysemantic_stack_[(4) - (3)].node_val)); ;} +#line 421 "DynareBison.yy" + { (yyval.node_val) = driver.add_tan((yysemantic_stack_[(4) - (3)].node_val)); ;} break; case 176: -#line 422 "DynareBison.yy" - { (yyval.node_val) = driver.add_acos((yysemantic_stack_[(4) - (3)].node_val)); ;} +#line 423 "DynareBison.yy" + { (yyval.node_val) = driver.add_asin((yysemantic_stack_[(4) - (3)].node_val)); ;} break; case 177: -#line 424 "DynareBison.yy" - { (yyval.node_val) = driver.add_atan((yysemantic_stack_[(4) - (3)].node_val)); ;} +#line 425 "DynareBison.yy" + { (yyval.node_val) = driver.add_acos((yysemantic_stack_[(4) - (3)].node_val)); ;} break; case 178: -#line 426 "DynareBison.yy" - { (yyval.node_val) = driver.add_sqrt((yysemantic_stack_[(4) - (3)].node_val)); ;} +#line 427 "DynareBison.yy" + { (yyval.node_val) = driver.add_atan((yysemantic_stack_[(4) - (3)].node_val)); ;} break; case 179: -#line 428 "DynareBison.yy" - { (yyval.node_val) = driver.add_max((yysemantic_stack_[(6) - (3)].node_val) , (yysemantic_stack_[(6) - (5)].node_val)); ;} +#line 429 "DynareBison.yy" + { (yyval.node_val) = driver.add_sqrt((yysemantic_stack_[(4) - (3)].node_val)); ;} break; case 180: -#line 430 "DynareBison.yy" - { (yyval.node_val) = driver.add_min((yysemantic_stack_[(6) - (3)].node_val) , (yysemantic_stack_[(6) - (5)].node_val)); ;} +#line 431 "DynareBison.yy" + { (yyval.node_val) = driver.add_max((yysemantic_stack_[(6) - (3)].node_val) , (yysemantic_stack_[(6) - (5)].node_val)); ;} break; case 181: -#line 434 "DynareBison.yy" - { driver.declare_and_init_model_local_variable((yysemantic_stack_[(5) - (2)].string_val), (yysemantic_stack_[(5) - (4)].node_val)); ;} +#line 433 "DynareBison.yy" + { (yyval.node_val) = driver.add_min((yysemantic_stack_[(6) - (3)].node_val) , (yysemantic_stack_[(6) - (5)].node_val)); ;} break; case 182: -#line 437 "DynareBison.yy" - { (yyval.node_val) = driver.add_model_variable((yysemantic_stack_[(1) - (1)].string_val)); ;} +#line 435 "DynareBison.yy" + { (yyval.node_val) = driver.add_normcdf((yysemantic_stack_[(8) - (3)].node_val),(yysemantic_stack_[(8) - (5)].node_val),(yysemantic_stack_[(8) - (7)].node_val));;} break; case 183: #line 439 "DynareBison.yy" - { (yyval.node_val) = driver.add_model_variable((yysemantic_stack_[(4) - (1)].string_val), (yysemantic_stack_[(4) - (3)].string_val)); ;} + { driver.declare_and_init_model_local_variable((yysemantic_stack_[(5) - (2)].string_val), (yysemantic_stack_[(5) - (4)].node_val)); ;} break; case 184: #line 442 "DynareBison.yy" - { driver.end_shocks(); ;} + { (yyval.node_val) = driver.add_model_variable((yysemantic_stack_[(1) - (1)].string_val)); ;} break; case 185: #line 444 "DynareBison.yy" + { (yyval.node_val) = driver.add_model_variable((yysemantic_stack_[(4) - (1)].string_val), (yysemantic_stack_[(4) - (3)].string_val)); ;} + break; + + case 186: +#line 447 "DynareBison.yy" + { driver.end_shocks(); ;} + break; + + case 187: +#line 449 "DynareBison.yy" { driver.end_mshocks(); ;} break; - case 188: -#line 451 "DynareBison.yy" + case 190: +#line 456 "DynareBison.yy" { driver.add_det_shock((yysemantic_stack_[(9) - (2)].string_val)); ;} break; - case 189: -#line 453 "DynareBison.yy" + case 191: +#line 458 "DynareBison.yy" { driver.add_stderr_shock((yysemantic_stack_[(6) - (2)].string_val), (yysemantic_stack_[(6) - (5)].node_val)); ;} break; - case 190: -#line 455 "DynareBison.yy" + case 192: +#line 460 "DynareBison.yy" { driver.add_var_shock((yysemantic_stack_[(5) - (2)].string_val), (yysemantic_stack_[(5) - (4)].node_val)); ;} break; - case 191: -#line 457 "DynareBison.yy" + case 193: +#line 462 "DynareBison.yy" { driver.add_covar_shock((yysemantic_stack_[(7) - (2)].string_val), (yysemantic_stack_[(7) - (4)].string_val), (yysemantic_stack_[(7) - (6)].node_val)); ;} break; - case 192: -#line 459 "DynareBison.yy" + case 194: +#line 464 "DynareBison.yy" { driver.add_correl_shock((yysemantic_stack_[(7) - (2)].string_val), (yysemantic_stack_[(7) - (4)].string_val), (yysemantic_stack_[(7) - (6)].node_val)); ;} break; - case 193: -#line 463 "DynareBison.yy" + case 195: +#line 468 "DynareBison.yy" { driver.add_period((yysemantic_stack_[(3) - (3)].string_val)); ;} break; - case 194: -#line 465 "DynareBison.yy" + case 196: +#line 470 "DynareBison.yy" { driver.add_period((yysemantic_stack_[(5) - (3)].string_val), (yysemantic_stack_[(5) - (5)].string_val)); ;} break; - case 195: -#line 467 "DynareBison.yy" + case 197: +#line 472 "DynareBison.yy" { driver.add_period((yysemantic_stack_[(3) - (1)].string_val), (yysemantic_stack_[(3) - (3)].string_val)); ;} break; - case 196: -#line 469 "DynareBison.yy" + case 198: +#line 474 "DynareBison.yy" { driver.add_period((yysemantic_stack_[(1) - (1)].string_val)); ;} break; - case 197: -#line 473 "DynareBison.yy" + case 199: +#line 478 "DynareBison.yy" { driver.do_sigma_e(); ;} break; - case 198: -#line 477 "DynareBison.yy" + case 200: +#line 482 "DynareBison.yy" {driver.add_value((yysemantic_stack_[(3) - (3)].node_val));;} break; - case 199: -#line 479 "DynareBison.yy" + case 201: +#line 484 "DynareBison.yy" {driver.add_value((yysemantic_stack_[(1) - (1)].node_val));;} break; - case 200: -#line 483 "DynareBison.yy" - { driver.end_of_row(); ;} - break; - - case 201: -#line 485 "DynareBison.yy" - { driver.end_of_row(); ;} - break; - case 202: -#line 489 "DynareBison.yy" - { driver.add_to_row((yysemantic_stack_[(5) - (4)].node_val)); ;} +#line 488 "DynareBison.yy" + { driver.end_of_row(); ;} break; case 203: -#line 491 "DynareBison.yy" - { driver.add_to_row_const((yysemantic_stack_[(3) - (3)].string_val)); ;} +#line 490 "DynareBison.yy" + { driver.end_of_row(); ;} break; case 204: -#line 493 "DynareBison.yy" - { driver.add_to_row_const((yysemantic_stack_[(3) - (3)].string_val)); ;} +#line 494 "DynareBison.yy" + { driver.add_to_row((yysemantic_stack_[(5) - (4)].node_val)); ;} break; case 205: -#line 495 "DynareBison.yy" - { driver.add_to_row((yysemantic_stack_[(4) - (3)].node_val)); ;} +#line 496 "DynareBison.yy" + { driver.add_to_row_const((yysemantic_stack_[(3) - (3)].string_val)); ;} break; case 206: -#line 497 "DynareBison.yy" - { driver.add_to_row_const((yysemantic_stack_[(2) - (2)].string_val)); ;} +#line 498 "DynareBison.yy" + { driver.add_to_row_const((yysemantic_stack_[(3) - (3)].string_val)); ;} break; case 207: -#line 499 "DynareBison.yy" - { driver.add_to_row_const((yysemantic_stack_[(2) - (2)].string_val)); ;} +#line 500 "DynareBison.yy" + { driver.add_to_row((yysemantic_stack_[(4) - (3)].node_val)); ;} break; case 208: -#line 501 "DynareBison.yy" - { driver.add_to_row((yysemantic_stack_[(3) - (2)].node_val)); ;} +#line 502 "DynareBison.yy" + { driver.add_to_row_const((yysemantic_stack_[(2) - (2)].string_val)); ;} break; case 209: -#line 503 "DynareBison.yy" - { driver.add_to_row_const((yysemantic_stack_[(1) - (1)].string_val)); ;} +#line 504 "DynareBison.yy" + { driver.add_to_row_const((yysemantic_stack_[(2) - (2)].string_val)); ;} break; case 210: -#line 505 "DynareBison.yy" - { driver.add_to_row_const((yysemantic_stack_[(1) - (1)].string_val)); ;} +#line 506 "DynareBison.yy" + { driver.add_to_row((yysemantic_stack_[(3) - (2)].node_val)); ;} break; case 211: -#line 509 "DynareBison.yy" - { driver.steady(); ;} +#line 508 "DynareBison.yy" + { driver.add_to_row_const((yysemantic_stack_[(1) - (1)].string_val)); ;} break; case 212: -#line 511 "DynareBison.yy" +#line 510 "DynareBison.yy" + { driver.add_to_row_const((yysemantic_stack_[(1) - (1)].string_val)); ;} + break; + + case 213: +#line 514 "DynareBison.yy" { driver.steady(); ;} break; - case 216: -#line 521 "DynareBison.yy" + case 214: +#line 516 "DynareBison.yy" + { driver.steady(); ;} + break; + + case 218: +#line 526 "DynareBison.yy" { driver.check(); ;} break; - case 217: -#line 523 "DynareBison.yy" + case 219: +#line 528 "DynareBison.yy" { driver.check(); ;} break; - case 221: -#line 533 "DynareBison.yy" + case 223: +#line 538 "DynareBison.yy" { driver.simulate(); ;} break; - case 222: -#line 535 "DynareBison.yy" + case 224: +#line 540 "DynareBison.yy" { driver.simulate(); ;} break; - case 227: -#line 547 "DynareBison.yy" - { driver.stoch_simul(); ;} - break; - - case 228: -#line 549 "DynareBison.yy" - { driver.stoch_simul(); ;} - break; - case 229: -#line 551 "DynareBison.yy" +#line 552 "DynareBison.yy" { driver.stoch_simul(); ;} break; case 230: -#line 553 "DynareBison.yy" +#line 554 "DynareBison.yy" { driver.stoch_simul(); ;} break; - case 256: -#line 586 "DynareBison.yy" - { driver.add_tmp_var((yysemantic_stack_[(2) - (2)].string_val)); ;} + case 231: +#line 556 "DynareBison.yy" + { driver.stoch_simul(); ;} break; - case 257: -#line 588 "DynareBison.yy" - { driver.add_tmp_var((yysemantic_stack_[(4) - (2)].string_val), (yysemantic_stack_[(4) - (4)].string_val)); ;} + case 232: +#line 558 "DynareBison.yy" + { driver.stoch_simul(); ;} break; case 258: -#line 590 "DynareBison.yy" - { driver.add_tmp_var((yysemantic_stack_[(3) - (3)].string_val)); ;} +#line 591 "DynareBison.yy" + { driver.add_tmp_var((yysemantic_stack_[(2) - (2)].string_val)); ;} break; case 259: -#line 592 "DynareBison.yy" - { driver.add_tmp_var((yysemantic_stack_[(5) - (3)].string_val), (yysemantic_stack_[(5) - (5)].string_val)); ;} +#line 593 "DynareBison.yy" + { driver.add_tmp_var((yysemantic_stack_[(4) - (2)].string_val), (yysemantic_stack_[(4) - (4)].string_val)); ;} break; case 260: -#line 594 "DynareBison.yy" - { driver.add_tmp_var((yysemantic_stack_[(1) - (1)].string_val)); ;} +#line 595 "DynareBison.yy" + { driver.add_tmp_var((yysemantic_stack_[(3) - (3)].string_val)); ;} break; case 261: -#line 596 "DynareBison.yy" - { driver.add_tmp_var((yysemantic_stack_[(3) - (1)].string_val), (yysemantic_stack_[(3) - (3)].string_val)); ;} +#line 597 "DynareBison.yy" + { driver.add_tmp_var((yysemantic_stack_[(5) - (3)].string_val), (yysemantic_stack_[(5) - (5)].string_val)); ;} break; case 262: -#line 600 "DynareBison.yy" - { (yyval.string_val) = (yysemantic_stack_[(2) - (2)].string_val); ;} +#line 599 "DynareBison.yy" + { driver.add_tmp_var((yysemantic_stack_[(1) - (1)].string_val)); ;} break; case 263: -#line 602 "DynareBison.yy" - { (yysemantic_stack_[(2) - (2)].string_val)->insert(0, "-"); (yyval.string_val) = (yysemantic_stack_[(2) - (2)].string_val); ;} +#line 601 "DynareBison.yy" + { driver.add_tmp_var((yysemantic_stack_[(3) - (1)].string_val), (yysemantic_stack_[(3) - (3)].string_val)); ;} break; case 264: -#line 604 "DynareBison.yy" - { (yyval.string_val) = (yysemantic_stack_[(1) - (1)].string_val); ;} - break; - - case 265: -#line 608 "DynareBison.yy" +#line 605 "DynareBison.yy" { (yyval.string_val) = (yysemantic_stack_[(2) - (2)].string_val); ;} break; - case 266: -#line 610 "DynareBison.yy" + case 265: +#line 607 "DynareBison.yy" { (yysemantic_stack_[(2) - (2)].string_val)->insert(0, "-"); (yyval.string_val) = (yysemantic_stack_[(2) - (2)].string_val); ;} break; - case 267: -#line 612 "DynareBison.yy" + case 266: +#line 609 "DynareBison.yy" { (yyval.string_val) = (yysemantic_stack_[(1) - (1)].string_val); ;} break; + case 267: +#line 613 "DynareBison.yy" + { (yyval.string_val) = (yysemantic_stack_[(2) - (2)].string_val); ;} + break; + case 268: #line 615 "DynareBison.yy" - { driver.estimated_params(); ;} + { (yysemantic_stack_[(2) - (2)].string_val)->insert(0, "-"); (yyval.string_val) = (yysemantic_stack_[(2) - (2)].string_val); ;} break; case 269: -#line 618 "DynareBison.yy" - { driver.add_estimated_params_element(); ;} +#line 617 "DynareBison.yy" + { (yyval.string_val) = (yysemantic_stack_[(1) - (1)].string_val); ;} break; case 270: #line 620 "DynareBison.yy" + { driver.estimated_params(); ;} + break; + + case 271: +#line 623 "DynareBison.yy" { driver.add_estimated_params_element(); ;} break; case 272: -#line 626 "DynareBison.yy" +#line 625 "DynareBison.yy" + { driver.add_estimated_params_element(); ;} + break; + + case 274: +#line 631 "DynareBison.yy" { driver.estim_params.type = 1; driver.estim_params.name = *(yysemantic_stack_[(2) - (2)].string_val); @@ -1248,8 +1258,8 @@ namespace yy ;} break; - case 273: -#line 632 "DynareBison.yy" + case 275: +#line 637 "DynareBison.yy" { driver.estim_params.type = 2; driver.estim_params.name = *(yysemantic_stack_[(1) - (1)].string_val); @@ -1257,8 +1267,8 @@ namespace yy ;} break; - case 274: -#line 638 "DynareBison.yy" + case 276: +#line 643 "DynareBison.yy" { driver.estim_params.type = 3; driver.estim_params.name = *(yysemantic_stack_[(4) - (2)].string_val); @@ -1268,16 +1278,16 @@ namespace yy ;} break; - case 275: -#line 648 "DynareBison.yy" + case 277: +#line 653 "DynareBison.yy" { driver.estim_params.prior = *(yysemantic_stack_[(3) - (1)].string_val); delete (yysemantic_stack_[(3) - (1)].string_val); ;} break; - case 276: -#line 653 "DynareBison.yy" + case 278: +#line 658 "DynareBison.yy" { driver.estim_params.init_val = *(yysemantic_stack_[(5) - (1)].string_val); driver.estim_params.prior = *(yysemantic_stack_[(5) - (3)].string_val); @@ -1286,8 +1296,8 @@ namespace yy ;} break; - case 277: -#line 660 "DynareBison.yy" + case 279: +#line 665 "DynareBison.yy" { driver.estim_params.init_val = *(yysemantic_stack_[(9) - (1)].string_val); driver.estim_params.low_bound = *(yysemantic_stack_[(9) - (3)].string_val); @@ -1300,16 +1310,16 @@ namespace yy ;} break; - case 278: -#line 671 "DynareBison.yy" + case 280: +#line 676 "DynareBison.yy" { driver.estim_params.init_val = *(yysemantic_stack_[(1) - (1)].string_val); delete (yysemantic_stack_[(1) - (1)].string_val); ;} break; - case 279: -#line 676 "DynareBison.yy" + case 281: +#line 681 "DynareBison.yy" { driver.estim_params.init_val = *(yysemantic_stack_[(5) - (1)].string_val); driver.estim_params.low_bound = *(yysemantic_stack_[(5) - (3)].string_val); @@ -1320,8 +1330,8 @@ namespace yy ;} break; - case 280: -#line 687 "DynareBison.yy" + case 282: +#line 692 "DynareBison.yy" { driver.estim_params.mean = *(yysemantic_stack_[(3) - (1)].string_val); driver.estim_params.std = *(yysemantic_stack_[(3) - (3)].string_val); @@ -1330,8 +1340,8 @@ namespace yy ;} break; - case 281: -#line 694 "DynareBison.yy" + case 283: +#line 699 "DynareBison.yy" { driver.estim_params.mean = *(yysemantic_stack_[(5) - (1)].string_val); driver.estim_params.std = *(yysemantic_stack_[(5) - (3)].string_val); @@ -1342,8 +1352,8 @@ namespace yy ;} break; - case 282: -#line 703 "DynareBison.yy" + case 284: +#line 708 "DynareBison.yy" { driver.estim_params.mean = *(yysemantic_stack_[(7) - (1)].string_val); driver.estim_params.std = *(yysemantic_stack_[(7) - (3)].string_val); @@ -1356,8 +1366,8 @@ namespace yy ;} break; - case 283: -#line 714 "DynareBison.yy" + case 285: +#line 719 "DynareBison.yy" { driver.estim_params.mean = *(yysemantic_stack_[(9) - (1)].string_val); driver.estim_params.std = *(yysemantic_stack_[(9) - (3)].string_val); @@ -1372,23 +1382,23 @@ namespace yy ;} break; - case 284: -#line 729 "DynareBison.yy" + case 286: +#line 734 "DynareBison.yy" { driver.estimated_params_init(); ;} break; - case 285: -#line 732 "DynareBison.yy" - { driver.add_estimated_params_element(); ;} - break; - - case 286: -#line 734 "DynareBison.yy" - { driver.add_estimated_params_element(); ;} - break; - case 287: -#line 738 "DynareBison.yy" +#line 737 "DynareBison.yy" + { driver.add_estimated_params_element(); ;} + break; + + case 288: +#line 739 "DynareBison.yy" + { driver.add_estimated_params_element(); ;} + break; + + case 289: +#line 743 "DynareBison.yy" { driver.estim_params.type = 1; driver.estim_params.name = *(yysemantic_stack_[(5) - (2)].string_val); @@ -1398,8 +1408,8 @@ namespace yy ;} break; - case 288: -#line 746 "DynareBison.yy" + case 290: +#line 751 "DynareBison.yy" { driver.estim_params.type = 3; driver.estim_params.name = *(yysemantic_stack_[(7) - (2)].string_val); @@ -1411,8 +1421,8 @@ namespace yy ;} break; - case 289: -#line 756 "DynareBison.yy" + case 291: +#line 761 "DynareBison.yy" { driver.estim_params.type = 2; driver.estim_params.name = *(yysemantic_stack_[(4) - (1)].string_val); @@ -1422,23 +1432,23 @@ namespace yy ;} break; - case 290: -#line 766 "DynareBison.yy" + case 292: +#line 771 "DynareBison.yy" { driver.estimated_params_bounds(); ;} break; - case 291: -#line 769 "DynareBison.yy" - { driver.add_estimated_params_element(); ;} - break; - - case 292: -#line 771 "DynareBison.yy" - { driver.add_estimated_params_element(); ;} - break; - case 293: -#line 775 "DynareBison.yy" +#line 774 "DynareBison.yy" + { driver.add_estimated_params_element(); ;} + break; + + case 294: +#line 776 "DynareBison.yy" + { driver.add_estimated_params_element(); ;} + break; + + case 295: +#line 780 "DynareBison.yy" { driver.estim_params.type = 1; driver.estim_params.name = *(yysemantic_stack_[(7) - (2)].string_val); @@ -1450,8 +1460,8 @@ namespace yy ;} break; - case 294: -#line 785 "DynareBison.yy" + case 296: +#line 790 "DynareBison.yy" { driver.estim_params.type = 3; driver.estim_params.name = *(yysemantic_stack_[(9) - (2)].string_val); @@ -1465,8 +1475,8 @@ namespace yy ;} break; - case 295: -#line 797 "DynareBison.yy" + case 297: +#line 802 "DynareBison.yy" { driver.estim_params.type = 2; driver.estim_params.name = *(yysemantic_stack_[(6) - (1)].string_val); @@ -1478,883 +1488,883 @@ namespace yy ;} break; - case 296: -#line 809 "DynareBison.yy" + case 298: +#line 814 "DynareBison.yy" { (yyval.string_val) = new string("1"); ;} break; - case 297: -#line 811 "DynareBison.yy" + case 299: +#line 816 "DynareBison.yy" { (yyval.string_val) = new string("2"); ;} break; - case 298: -#line 813 "DynareBison.yy" - { (yyval.string_val) = new string("3"); ;} - break; - - case 299: -#line 815 "DynareBison.yy" - { (yyval.string_val) = new string("4"); ;} - break; - case 300: -#line 817 "DynareBison.yy" - { (yyval.string_val) = new string("5"); ;} +#line 818 "DynareBison.yy" + { (yyval.string_val) = new string("3"); ;} break; case 301: #line 820 "DynareBison.yy" + { (yyval.string_val) = new string("4"); ;} + break; + + case 302: +#line 822 "DynareBison.yy" + { (yyval.string_val) = new string("5"); ;} + break; + + case 303: +#line 825 "DynareBison.yy" { (yyval.string_val) = new string("NaN"); ;} break; - case 305: -#line 825 "DynareBison.yy" - { (yysemantic_stack_[(2) - (2)].string_val)->insert(0, "-"); (yyval.string_val) = (yysemantic_stack_[(2) - (2)].string_val); ;} - break; - - case 306: -#line 827 "DynareBison.yy" - { (yysemantic_stack_[(2) - (2)].string_val)->insert(0, "-"); (yyval.string_val) = (yysemantic_stack_[(2) - (2)].string_val); ;} - break; - case 307: -#line 831 "DynareBison.yy" - { driver.run_estimation(); ;} +#line 830 "DynareBison.yy" + { (yysemantic_stack_[(2) - (2)].string_val)->insert(0, "-"); (yyval.string_val) = (yysemantic_stack_[(2) - (2)].string_val); ;} break; case 308: -#line 833 "DynareBison.yy" - { driver.run_estimation(); ;} +#line 832 "DynareBison.yy" + { (yysemantic_stack_[(2) - (2)].string_val)->insert(0, "-"); (yyval.string_val) = (yysemantic_stack_[(2) - (2)].string_val); ;} break; case 309: -#line 835 "DynareBison.yy" +#line 836 "DynareBison.yy" { driver.run_estimation(); ;} break; case 310: -#line 837 "DynareBison.yy" +#line 838 "DynareBison.yy" { driver.run_estimation(); ;} break; - case 352: -#line 886 "DynareBison.yy" + case 311: +#line 840 "DynareBison.yy" + { driver.run_estimation(); ;} + break; + + case 312: +#line 842 "DynareBison.yy" + { driver.run_estimation(); ;} + break; + + case 354: +#line 891 "DynareBison.yy" { driver.run_prior_analysis(); ;} break; - case 353: -#line 888 "DynareBison.yy" + case 355: +#line 893 "DynareBison.yy" { driver.run_prior_analysis(); ;} break; - case 369: -#line 911 "DynareBison.yy" - { driver.run_posterior_analysis(); ;} - break; - - case 370: -#line 913 "DynareBison.yy" - { driver.run_posterior_analysis(); ;} - break; - case 371: -#line 917 "DynareBison.yy" - { driver.optim_options_string((yysemantic_stack_[(7) - (2)].string_val), (yysemantic_stack_[(7) - (6)].string_val)); ;} +#line 916 "DynareBison.yy" + { driver.run_posterior_analysis(); ;} break; case 372: -#line 919 "DynareBison.yy" +#line 918 "DynareBison.yy" + { driver.run_posterior_analysis(); ;} + break; + + case 373: +#line 922 "DynareBison.yy" + { driver.optim_options_string((yysemantic_stack_[(7) - (2)].string_val), (yysemantic_stack_[(7) - (6)].string_val)); ;} + break; + + case 374: +#line 924 "DynareBison.yy" { driver.optim_options_num((yysemantic_stack_[(5) - (2)].string_val), (yysemantic_stack_[(5) - (5)].string_val)); ;} break; - case 375: -#line 926 "DynareBison.yy" + case 377: +#line 931 "DynareBison.yy" { driver.set_varobs(); ;} break; - case 376: -#line 928 "DynareBison.yy" + case 378: +#line 933 "DynareBison.yy" { driver.set_trends(); ;} break; - case 379: -#line 934 "DynareBison.yy" - { driver.set_trend_element((yysemantic_stack_[(5) - (1)].string_val), (yysemantic_stack_[(5) - (3)].node_val)); ;} - break; - - case 380: -#line 936 "DynareBison.yy" - { driver.set_unit_root_vars(); ;} - break; - case 381: -#line 938 "DynareBison.yy" - { driver.optim_weights(); ;} +#line 939 "DynareBison.yy" + { driver.set_trend_element((yysemantic_stack_[(5) - (1)].string_val), (yysemantic_stack_[(5) - (3)].node_val)); ;} break; case 382: #line 941 "DynareBison.yy" - { driver.set_optim_weights((yysemantic_stack_[(4) - (2)].string_val), (yysemantic_stack_[(4) - (3)].node_val)); ;} + { driver.set_unit_root_vars(); ;} break; case 383: #line 943 "DynareBison.yy" - { driver.set_optim_weights((yysemantic_stack_[(6) - (2)].string_val), (yysemantic_stack_[(6) - (4)].string_val), (yysemantic_stack_[(6) - (5)].node_val)); ;} + { driver.optim_weights(); ;} break; case 384: -#line 945 "DynareBison.yy" - { driver.set_optim_weights((yysemantic_stack_[(3) - (1)].string_val), (yysemantic_stack_[(3) - (2)].node_val)); ;} +#line 946 "DynareBison.yy" + { driver.set_optim_weights((yysemantic_stack_[(4) - (2)].string_val), (yysemantic_stack_[(4) - (3)].node_val)); ;} break; case 385: -#line 947 "DynareBison.yy" - { driver.set_optim_weights((yysemantic_stack_[(5) - (1)].string_val), (yysemantic_stack_[(5) - (3)].string_val), (yysemantic_stack_[(5) - (4)].node_val)); ;} +#line 948 "DynareBison.yy" + { driver.set_optim_weights((yysemantic_stack_[(6) - (2)].string_val), (yysemantic_stack_[(6) - (4)].string_val), (yysemantic_stack_[(6) - (5)].node_val)); ;} break; case 386: #line 950 "DynareBison.yy" - { driver.set_osr_params(); ;} + { driver.set_optim_weights((yysemantic_stack_[(3) - (1)].string_val), (yysemantic_stack_[(3) - (2)].node_val)); ;} break; case 387: -#line 953 "DynareBison.yy" - { driver.run_osr(); ;} +#line 952 "DynareBison.yy" + { driver.set_optim_weights((yysemantic_stack_[(5) - (1)].string_val), (yysemantic_stack_[(5) - (3)].string_val), (yysemantic_stack_[(5) - (4)].node_val)); ;} break; case 388: #line 955 "DynareBison.yy" - { driver.run_osr(); ;} + { driver.set_osr_params(); ;} break; case 389: -#line 957 "DynareBison.yy" +#line 958 "DynareBison.yy" { driver.run_osr(); ;} break; case 390: -#line 959 "DynareBison.yy" - {driver.run_osr(); ;} +#line 960 "DynareBison.yy" + { driver.run_osr(); ;} break; case 391: #line 962 "DynareBison.yy" + { driver.run_osr(); ;} + break; + + case 392: +#line 964 "DynareBison.yy" + {driver.run_osr(); ;} + break; + + case 393: +#line 967 "DynareBison.yy" { driver.run_calib_var(); ;} break; - case 394: -#line 969 "DynareBison.yy" - { driver.set_calib_var((yysemantic_stack_[(5) - (1)].string_val), (yysemantic_stack_[(5) - (2)].string_val), (yysemantic_stack_[(5) - (4)].node_val)); ;} - break; - - case 395: -#line 971 "DynareBison.yy" - { driver.set_calib_covar((yysemantic_stack_[(7) - (1)].string_val), (yysemantic_stack_[(7) - (3)].string_val), (yysemantic_stack_[(7) - (4)].string_val), (yysemantic_stack_[(7) - (6)].node_val)); ;} - break; - case 396: -#line 973 "DynareBison.yy" - { driver.set_calib_ac((yysemantic_stack_[(9) - (2)].string_val), (yysemantic_stack_[(9) - (4)].string_val), (yysemantic_stack_[(9) - (6)].string_val), (yysemantic_stack_[(9) - (8)].node_val)); ;} +#line 974 "DynareBison.yy" + { driver.set_calib_var((yysemantic_stack_[(5) - (1)].string_val), (yysemantic_stack_[(5) - (2)].string_val), (yysemantic_stack_[(5) - (4)].node_val)); ;} break; case 397: #line 976 "DynareBison.yy" - { (yyval.string_val) = new string("1"); ;} + { driver.set_calib_covar((yysemantic_stack_[(7) - (1)].string_val), (yysemantic_stack_[(7) - (3)].string_val), (yysemantic_stack_[(7) - (4)].string_val), (yysemantic_stack_[(7) - (6)].node_val)); ;} break; case 398: #line 978 "DynareBison.yy" - { (yyval.string_val) = (yysemantic_stack_[(3) - (2)].string_val); ;} + { driver.set_calib_ac((yysemantic_stack_[(9) - (2)].string_val), (yysemantic_stack_[(9) - (4)].string_val), (yysemantic_stack_[(9) - (6)].string_val), (yysemantic_stack_[(9) - (8)].node_val)); ;} break; case 399: -#line 980 "DynareBison.yy" - { (yyval.string_val) = (yysemantic_stack_[(3) - (2)].string_val); ;} +#line 981 "DynareBison.yy" + { (yyval.string_val) = new string("1"); ;} break; case 400: -#line 984 "DynareBison.yy" - { driver.run_calib(0); ;} +#line 983 "DynareBison.yy" + { (yyval.string_val) = (yysemantic_stack_[(3) - (2)].string_val); ;} break; case 401: -#line 986 "DynareBison.yy" - { driver.run_calib(1); ;} +#line 985 "DynareBison.yy" + { (yyval.string_val) = (yysemantic_stack_[(3) - (2)].string_val); ;} break; case 402: -#line 990 "DynareBison.yy" - { driver.run_dynatype((yysemantic_stack_[(5) - (3)].string_val)); ;} +#line 989 "DynareBison.yy" + { driver.run_calib(0); ;} break; case 403: -#line 992 "DynareBison.yy" - { driver.run_dynatype((yysemantic_stack_[(6) - (3)].string_val)); ;} +#line 991 "DynareBison.yy" + { driver.run_calib(1); ;} break; case 404: -#line 994 "DynareBison.yy" - { driver.run_dynatype((yysemantic_stack_[(3) - (2)].string_val)); ;} +#line 995 "DynareBison.yy" + { driver.run_dynatype((yysemantic_stack_[(5) - (3)].string_val)); ;} break; case 405: -#line 996 "DynareBison.yy" - { driver.run_dynatype((yysemantic_stack_[(7) - (3)].string_val), (yysemantic_stack_[(7) - (5)].string_val)); ;} +#line 997 "DynareBison.yy" + { driver.run_dynatype((yysemantic_stack_[(6) - (3)].string_val)); ;} break; case 406: -#line 998 "DynareBison.yy" - { driver.run_dynatype((yysemantic_stack_[(8) - (3)].string_val), (yysemantic_stack_[(8) - (5)].string_val)); ;} +#line 999 "DynareBison.yy" + { driver.run_dynatype((yysemantic_stack_[(3) - (2)].string_val)); ;} break; case 407: -#line 1000 "DynareBison.yy" - { driver.run_dynatype((yysemantic_stack_[(5) - (2)].string_val),(yysemantic_stack_[(5) - (4)].string_val)); ;} +#line 1001 "DynareBison.yy" + { driver.run_dynatype((yysemantic_stack_[(7) - (3)].string_val), (yysemantic_stack_[(7) - (5)].string_val)); ;} break; case 408: -#line 1004 "DynareBison.yy" - { driver.run_dynasave((yysemantic_stack_[(5) - (3)].string_val)); ;} +#line 1003 "DynareBison.yy" + { driver.run_dynatype((yysemantic_stack_[(8) - (3)].string_val), (yysemantic_stack_[(8) - (5)].string_val)); ;} break; case 409: -#line 1006 "DynareBison.yy" - { driver.run_dynasave((yysemantic_stack_[(6) - (3)].string_val)); ;} +#line 1005 "DynareBison.yy" + { driver.run_dynatype((yysemantic_stack_[(5) - (2)].string_val),(yysemantic_stack_[(5) - (4)].string_val)); ;} break; case 410: -#line 1008 "DynareBison.yy" - { driver.run_dynasave((yysemantic_stack_[(3) - (2)].string_val)); ;} +#line 1009 "DynareBison.yy" + { driver.run_dynasave((yysemantic_stack_[(5) - (3)].string_val)); ;} break; case 411: -#line 1010 "DynareBison.yy" - { driver.run_dynasave((yysemantic_stack_[(7) - (3)].string_val), (yysemantic_stack_[(7) - (5)].string_val)); ;} +#line 1011 "DynareBison.yy" + { driver.run_dynasave((yysemantic_stack_[(6) - (3)].string_val)); ;} break; case 412: -#line 1012 "DynareBison.yy" - { driver.run_dynasave((yysemantic_stack_[(8) - (3)].string_val), (yysemantic_stack_[(8) - (5)].string_val)); ;} +#line 1013 "DynareBison.yy" + { driver.run_dynasave((yysemantic_stack_[(3) - (2)].string_val)); ;} break; case 413: -#line 1014 "DynareBison.yy" - { driver.run_dynasave((yysemantic_stack_[(5) - (2)].string_val), (yysemantic_stack_[(5) - (4)].string_val)); ;} +#line 1015 "DynareBison.yy" + { driver.run_dynasave((yysemantic_stack_[(7) - (3)].string_val), (yysemantic_stack_[(7) - (5)].string_val)); ;} break; case 414: -#line 1018 "DynareBison.yy" +#line 1017 "DynareBison.yy" + { driver.run_dynasave((yysemantic_stack_[(8) - (3)].string_val), (yysemantic_stack_[(8) - (5)].string_val)); ;} + break; + + case 415: +#line 1019 "DynareBison.yy" + { driver.run_dynasave((yysemantic_stack_[(5) - (2)].string_val), (yysemantic_stack_[(5) - (4)].string_val)); ;} + break; + + case 416: +#line 1023 "DynareBison.yy" { driver.run_model_comparison(); ;} break; - case 420: -#line 1030 "DynareBison.yy" + case 422: +#line 1035 "DynareBison.yy" { driver.add_mc_filename((yysemantic_stack_[(1) - (1)].string_val)); ;} break; - case 421: -#line 1032 "DynareBison.yy" + case 423: +#line 1037 "DynareBison.yy" { driver.add_mc_filename((yysemantic_stack_[(3) - (3)].string_val)); ;} break; - case 422: -#line 1034 "DynareBison.yy" + case 424: +#line 1039 "DynareBison.yy" { driver.add_mc_filename((yysemantic_stack_[(4) - (1)].string_val), (yysemantic_stack_[(4) - (3)].string_val)); ;} break; - case 423: -#line 1036 "DynareBison.yy" + case 425: +#line 1041 "DynareBison.yy" { driver.add_mc_filename((yysemantic_stack_[(6) - (3)].string_val), (yysemantic_stack_[(6) - (5)].string_val)); ;} break; - case 424: -#line 1040 "DynareBison.yy" + case 426: +#line 1045 "DynareBison.yy" { (yyval.string_val) = (yysemantic_stack_[(1) - (1)].string_val); ;} break; - case 425: -#line 1042 "DynareBison.yy" - { (yysemantic_stack_[(2) - (1)].string_val)->append(*(yysemantic_stack_[(2) - (2)].string_val)); delete (yysemantic_stack_[(2) - (2)].string_val); (yyval.string_val) = (yysemantic_stack_[(2) - (1)].string_val); ;} - break; - case 427: #line 1047 "DynareBison.yy" - { (yyval.string_val) = new string("\\"); ;} - break; - - case 428: -#line 1049 "DynareBison.yy" - { (yyval.string_val) = new string("/"); ;} + { (yysemantic_stack_[(2) - (1)].string_val)->append(*(yysemantic_stack_[(2) - (2)].string_val)); delete (yysemantic_stack_[(2) - (2)].string_val); (yyval.string_val) = (yysemantic_stack_[(2) - (1)].string_val); ;} break; case 429: -#line 1051 "DynareBison.yy" - { (yyval.string_val) = new string(":"); ;} +#line 1052 "DynareBison.yy" + { (yyval.string_val) = new string("\\"); ;} break; case 430: -#line 1053 "DynareBison.yy" - { (yyval.string_val) = new string("."); ;} +#line 1054 "DynareBison.yy" + { (yyval.string_val) = new string("/"); ;} break; case 431: #line 1056 "DynareBison.yy" - { driver.begin_planner_objective(); ;} + { (yyval.string_val) = new string(":"); ;} break; case 432: -#line 1057 "DynareBison.yy" - { driver.end_planner_objective((yysemantic_stack_[(3) - (3)].node_val)); ;} +#line 1058 "DynareBison.yy" + { (yyval.string_val) = new string("."); ;} + break; + + case 433: +#line 1061 "DynareBison.yy" + { driver.begin_planner_objective(); ;} break; case 434: -#line 1060 "DynareBison.yy" - { driver.ramsey_policy(); ;} - break; - - case 435: #line 1062 "DynareBison.yy" - { driver.ramsey_policy(); ;} + { driver.end_planner_objective((yysemantic_stack_[(3) - (3)].node_val)); ;} break; case 436: -#line 1064 "DynareBison.yy" +#line 1065 "DynareBison.yy" { driver.ramsey_policy(); ;} break; case 437: -#line 1066 "DynareBison.yy" +#line 1067 "DynareBison.yy" { driver.ramsey_policy(); ;} break; - case 461: -#line 1103 "DynareBison.yy" + case 438: +#line 1069 "DynareBison.yy" + { driver.ramsey_policy(); ;} + break; + + case 439: +#line 1071 "DynareBison.yy" + { driver.ramsey_policy(); ;} + break; + + case 463: +#line 1108 "DynareBison.yy" { driver.bvar_density((yysemantic_stack_[(3) - (2)].string_val)); ;} break; - case 462: -#line 1105 "DynareBison.yy" + case 464: +#line 1110 "DynareBison.yy" { driver.bvar_density((yysemantic_stack_[(6) - (5)].string_val)); ;} break; - case 469: -#line 1119 "DynareBison.yy" + case 471: +#line 1124 "DynareBison.yy" { driver.bvar_forecast((yysemantic_stack_[(3) - (2)].string_val)); ;} break; - case 470: -#line 1121 "DynareBison.yy" + case 472: +#line 1126 "DynareBison.yy" { driver.bvar_forecast((yysemantic_stack_[(6) - (5)].string_val)); ;} break; - case 471: -#line 1125 "DynareBison.yy" + case 473: +#line 1130 "DynareBison.yy" { driver.dynare_sensitivity(); ;} break; - case 472: -#line 1127 "DynareBison.yy" + case 474: +#line 1132 "DynareBison.yy" { driver.dynare_sensitivity(); ;} break; - case 504: -#line 1167 "DynareBison.yy" - { driver.option_num("dr_algo", (yysemantic_stack_[(3) - (3)].string_val)); ;} - break; - - case 505: -#line 1168 "DynareBison.yy" - { driver.option_num("solve_algo", (yysemantic_stack_[(3) - (3)].string_val)); ;} - break; - case 506: -#line 1169 "DynareBison.yy" - { driver.option_num("simul_algo", (yysemantic_stack_[(3) - (3)].string_val)); ;} +#line 1172 "DynareBison.yy" + { driver.option_num("dr_algo", (yysemantic_stack_[(3) - (3)].string_val)); ;} break; case 507: -#line 1170 "DynareBison.yy" - { driver.linear(); ;} +#line 1173 "DynareBison.yy" + { driver.option_num("solve_algo", (yysemantic_stack_[(3) - (3)].string_val)); ;} break; case 508: -#line 1171 "DynareBison.yy" - { driver.option_num("order", (yysemantic_stack_[(3) - (3)].string_val)); ;} +#line 1174 "DynareBison.yy" + { driver.option_num("simul_algo", (yysemantic_stack_[(3) - (3)].string_val)); ;} break; case 509: -#line 1172 "DynareBison.yy" - { driver.option_num("replic", (yysemantic_stack_[(3) - (3)].string_val)); ;} +#line 1175 "DynareBison.yy" + { driver.linear(); ;} break; case 510: -#line 1173 "DynareBison.yy" - { driver.option_num("drop", (yysemantic_stack_[(3) - (3)].string_val)); ;} +#line 1176 "DynareBison.yy" + { driver.option_num("order", (yysemantic_stack_[(3) - (3)].string_val)); ;} break; case 511: -#line 1174 "DynareBison.yy" - { driver.option_num("ar", (yysemantic_stack_[(3) - (3)].string_val)); ;} +#line 1177 "DynareBison.yy" + { driver.option_num("replic", (yysemantic_stack_[(3) - (3)].string_val)); ;} break; case 512: -#line 1175 "DynareBison.yy" - { driver.option_num("nocorr", "1"); ;} +#line 1178 "DynareBison.yy" + { driver.option_num("drop", (yysemantic_stack_[(3) - (3)].string_val)); ;} break; case 513: -#line 1176 "DynareBison.yy" - { driver.option_num("nofunctions", "1"); ;} +#line 1179 "DynareBison.yy" + { driver.option_num("ar", (yysemantic_stack_[(3) - (3)].string_val)); ;} break; case 514: -#line 1177 "DynareBison.yy" - { driver.option_num("nomoments", "1"); ;} +#line 1180 "DynareBison.yy" + { driver.option_num("nocorr", "1"); ;} break; case 515: -#line 1178 "DynareBison.yy" - { driver.option_num("irf", (yysemantic_stack_[(3) - (3)].string_val)); ;} +#line 1181 "DynareBison.yy" + { driver.option_num("nofunctions", "1"); ;} break; case 516: -#line 1179 "DynareBison.yy" - { driver.option_num("hp_filter", (yysemantic_stack_[(3) - (3)].string_val)); ;} +#line 1182 "DynareBison.yy" + { driver.option_num("nomoments", "1"); ;} break; case 517: -#line 1180 "DynareBison.yy" - { driver.option_num("hp_ngrid", (yysemantic_stack_[(3) - (3)].string_val)); ;} +#line 1183 "DynareBison.yy" + { driver.option_num("irf", (yysemantic_stack_[(3) - (3)].string_val)); ;} break; case 518: -#line 1182 "DynareBison.yy" - { driver.option_num("periods", (yysemantic_stack_[(3) - (3)].string_val)); driver.option_num("simul", "1"); ;} +#line 1184 "DynareBison.yy" + { driver.option_num("hp_filter", (yysemantic_stack_[(3) - (3)].string_val)); ;} break; case 519: -#line 1183 "DynareBison.yy" - { driver.option_num("cutoff", (yysemantic_stack_[(3) - (3)].string_val)); ;} +#line 1185 "DynareBison.yy" + { driver.option_num("hp_ngrid", (yysemantic_stack_[(3) - (3)].string_val)); ;} break; case 520: -#line 1184 "DynareBison.yy" - { driver.option_num("markowitz", (yysemantic_stack_[(3) - (3)].string_val)); ;} +#line 1187 "DynareBison.yy" + { driver.option_num("periods", (yysemantic_stack_[(3) - (3)].string_val)); driver.option_num("simul", "1"); ;} break; case 521: -#line 1185 "DynareBison.yy" - { driver.option_num("simul", "1"); ;} +#line 1188 "DynareBison.yy" + { driver.option_num("cutoff", (yysemantic_stack_[(3) - (3)].string_val)); ;} break; case 522: -#line 1186 "DynareBison.yy" - { driver.option_num("simul_seed", (yysemantic_stack_[(3) - (3)].string_val));} +#line 1189 "DynareBison.yy" + { driver.option_num("markowitz", (yysemantic_stack_[(3) - (3)].string_val)); ;} break; case 523: -#line 1187 "DynareBison.yy" - { driver.option_num("qz_criterium", (yysemantic_stack_[(3) - (3)].string_val)) ;} +#line 1190 "DynareBison.yy" + { driver.option_num("simul", "1"); ;} break; case 524: -#line 1188 "DynareBison.yy" - { driver.option_str("datafile", (yysemantic_stack_[(3) - (3)].string_val)); ;} +#line 1191 "DynareBison.yy" + { driver.option_num("simul_seed", (yysemantic_stack_[(3) - (3)].string_val));} break; case 525: -#line 1190 "DynareBison.yy" - { driver.option_num("nobs", (yysemantic_stack_[(3) - (3)].string_val)); ;} +#line 1192 "DynareBison.yy" + { driver.option_num("qz_criterium", (yysemantic_stack_[(3) - (3)].string_val)) ;} break; case 526: -#line 1192 "DynareBison.yy" - { driver.option_num("nobs", (yysemantic_stack_[(3) - (3)].string_val)); ;} +#line 1193 "DynareBison.yy" + { driver.option_str("datafile", (yysemantic_stack_[(3) - (3)].string_val)); ;} break; case 527: -#line 1194 "DynareBison.yy" - { driver.option_num("first_obs", (yysemantic_stack_[(3) - (3)].string_val)); ;} +#line 1195 "DynareBison.yy" + { driver.option_num("nobs", (yysemantic_stack_[(3) - (3)].string_val)); ;} break; case 528: -#line 1195 "DynareBison.yy" - { driver.option_num("prefilter", (yysemantic_stack_[(3) - (3)].string_val)); ;} +#line 1197 "DynareBison.yy" + { driver.option_num("nobs", (yysemantic_stack_[(3) - (3)].string_val)); ;} break; case 529: -#line 1196 "DynareBison.yy" - { driver.option_num("presample", (yysemantic_stack_[(3) - (3)].string_val)); ;} +#line 1199 "DynareBison.yy" + { driver.option_num("first_obs", (yysemantic_stack_[(3) - (3)].string_val)); ;} break; case 530: -#line 1197 "DynareBison.yy" - { driver.option_num("lik_algo", (yysemantic_stack_[(3) - (3)].string_val)); ;} +#line 1200 "DynareBison.yy" + { driver.option_num("prefilter", (yysemantic_stack_[(3) - (3)].string_val)); ;} break; case 531: -#line 1198 "DynareBison.yy" - { driver.option_num("lik_init", (yysemantic_stack_[(3) - (3)].string_val)); ;} +#line 1201 "DynareBison.yy" + { driver.option_num("presample", (yysemantic_stack_[(3) - (3)].string_val)); ;} break; case 532: -#line 1200 "DynareBison.yy" - { driver.option_num("nograph","1"); ;} +#line 1202 "DynareBison.yy" + { driver.option_num("lik_algo", (yysemantic_stack_[(3) - (3)].string_val)); ;} break; case 533: -#line 1202 "DynareBison.yy" - { driver.option_num("nograph", "0"); ;} +#line 1203 "DynareBison.yy" + { driver.option_num("lik_init", (yysemantic_stack_[(3) - (3)].string_val)); ;} break; case 534: -#line 1204 "DynareBison.yy" - { driver.option_num("conf_sig", (yysemantic_stack_[(3) - (3)].string_val)); ;} +#line 1205 "DynareBison.yy" + { driver.option_num("nograph","1"); ;} break; case 535: -#line 1205 "DynareBison.yy" - { driver.option_num("mh_replic", (yysemantic_stack_[(3) - (3)].string_val)); ;} +#line 1207 "DynareBison.yy" + { driver.option_num("nograph", "0"); ;} break; case 536: -#line 1206 "DynareBison.yy" - { driver.option_num("mh_drop", (yysemantic_stack_[(3) - (3)].string_val)); ;} +#line 1209 "DynareBison.yy" + { driver.option_num("conf_sig", (yysemantic_stack_[(3) - (3)].string_val)); ;} break; case 537: -#line 1207 "DynareBison.yy" - { driver.option_num("mh_jscale", (yysemantic_stack_[(3) - (3)].string_val)); ;} +#line 1210 "DynareBison.yy" + { driver.option_num("mh_replic", (yysemantic_stack_[(3) - (3)].string_val)); ;} + break; + + case 538: +#line 1211 "DynareBison.yy" + { driver.option_num("mh_drop", (yysemantic_stack_[(3) - (3)].string_val)); ;} break; case 539: -#line 1209 "DynareBison.yy" - { driver.option_num("mh_init_scale", (yysemantic_stack_[(3) - (3)].string_val)); ;} - break; - - case 540: -#line 1210 "DynareBison.yy" - { driver.option_str("mode_file", (yysemantic_stack_[(3) - (3)].string_val)); ;} +#line 1212 "DynareBison.yy" + { driver.option_num("mh_jscale", (yysemantic_stack_[(3) - (3)].string_val)); ;} break; case 541: -#line 1211 "DynareBison.yy" - { driver.option_num("mode_compute", (yysemantic_stack_[(3) - (3)].string_val)); ;} +#line 1214 "DynareBison.yy" + { driver.option_num("mh_init_scale", (yysemantic_stack_[(3) - (3)].string_val)); ;} break; case 542: -#line 1212 "DynareBison.yy" - { driver.option_num("mode_check", "1"); ;} +#line 1215 "DynareBison.yy" + { driver.option_str("mode_file", (yysemantic_stack_[(3) - (3)].string_val)); ;} break; case 543: -#line 1213 "DynareBison.yy" - { driver.option_num("prior_trunc", (yysemantic_stack_[(3) - (3)].string_val)); ;} +#line 1216 "DynareBison.yy" + { driver.option_num("mode_compute", (yysemantic_stack_[(3) - (3)].string_val)); ;} break; case 544: -#line 1214 "DynareBison.yy" - { driver.option_num("mh_mode", (yysemantic_stack_[(3) - (3)].string_val)); ;} +#line 1217 "DynareBison.yy" + { driver.option_num("mode_check", "1"); ;} break; case 545: -#line 1215 "DynareBison.yy" - { driver.option_num("mh_nblck", (yysemantic_stack_[(3) - (3)].string_val)); ;} +#line 1218 "DynareBison.yy" + { driver.option_num("prior_trunc", (yysemantic_stack_[(3) - (3)].string_val)); ;} break; case 546: -#line 1216 "DynareBison.yy" - { driver.option_num("load_mh_file", "1"); ;} +#line 1219 "DynareBison.yy" + { driver.option_num("mh_mode", (yysemantic_stack_[(3) - (3)].string_val)); ;} break; case 547: -#line 1217 "DynareBison.yy" - { driver.option_num("loglinear", "1"); ;} +#line 1220 "DynareBison.yy" + { driver.option_num("mh_nblck", (yysemantic_stack_[(3) - (3)].string_val)); ;} break; case 548: -#line 1218 "DynareBison.yy" - { driver.option_num("nodiagnostic", "1"); ;} +#line 1221 "DynareBison.yy" + { driver.option_num("load_mh_file", "1"); ;} break; case 549: -#line 1219 "DynareBison.yy" - { driver.option_num("bayesian_irf", "1"); ;} +#line 1222 "DynareBison.yy" + { driver.option_num("loglinear", "1"); ;} break; case 550: -#line 1220 "DynareBison.yy" - { driver.option_num("TeX", "1"); ;} +#line 1223 "DynareBison.yy" + { driver.option_num("nodiagnostic", "1"); ;} break; case 551: -#line 1221 "DynareBison.yy" - { driver.option_num("forecast", (yysemantic_stack_[(3) - (3)].string_val)); ;} +#line 1224 "DynareBison.yy" + { driver.option_num("bayesian_irf", "1"); ;} break; case 552: -#line 1222 "DynareBison.yy" - { driver.option_num("smoother", "1"); ;} +#line 1225 "DynareBison.yy" + { driver.option_num("TeX", "1"); ;} break; case 553: -#line 1223 "DynareBison.yy" - { driver.option_num("moments_varendo", "1"); ;} +#line 1226 "DynareBison.yy" + { driver.option_num("forecast", (yysemantic_stack_[(3) - (3)].string_val)); ;} break; case 554: -#line 1224 "DynareBison.yy" - { driver.option_num("filtered_vars", "1"); ;} +#line 1227 "DynareBison.yy" + { driver.option_num("smoother", "1"); ;} break; case 555: -#line 1225 "DynareBison.yy" - { driver.option_num("relative_irf", "1"); ;} +#line 1228 "DynareBison.yy" + { driver.option_num("moments_varendo", "1"); ;} break; case 556: -#line 1226 "DynareBison.yy" - { driver.option_num("kalman_algo", (yysemantic_stack_[(3) - (3)].string_val)); ;} +#line 1229 "DynareBison.yy" + { driver.option_num("filtered_vars", "1"); ;} break; case 557: -#line 1227 "DynareBison.yy" - { driver.option_num("kalman_tol", (yysemantic_stack_[(3) - (3)].string_val)); ;} +#line 1230 "DynareBison.yy" + { driver.option_num("relative_irf", "1"); ;} break; case 558: -#line 1229 "DynareBison.yy" - { driver.option_str("model_comparison_approximation", "Laplace"); ;} +#line 1231 "DynareBison.yy" + { driver.option_num("kalman_algo", (yysemantic_stack_[(3) - (3)].string_val)); ;} break; case 559: -#line 1231 "DynareBison.yy" - { driver.option_str("model_comparison_approximation", "MODIFIEDHARMONICMEAN"); ;} +#line 1232 "DynareBison.yy" + { driver.option_num("kalman_tol", (yysemantic_stack_[(3) - (3)].string_val)); ;} break; case 560: -#line 1233 "DynareBison.yy" - { driver.option_num("noprint", "0"); ;} +#line 1234 "DynareBison.yy" + { driver.option_str("model_comparison_approximation", "Laplace"); ;} break; case 561: -#line 1234 "DynareBison.yy" - { driver.option_num("noprint", "1"); ;} +#line 1236 "DynareBison.yy" + { driver.option_str("model_comparison_approximation", "MODIFIEDHARMONICMEAN"); ;} break; case 562: -#line 1235 "DynareBison.yy" - { driver.option_str("xls_sheet", (yysemantic_stack_[(3) - (3)].string_val)); ;} +#line 1238 "DynareBison.yy" + { driver.option_num("noprint", "0"); ;} break; case 563: -#line 1236 "DynareBison.yy" - { driver.option_str("xls_range", (yysemantic_stack_[(3) - (3)].string_val)); ;} +#line 1239 "DynareBison.yy" + { driver.option_num("noprint", "1"); ;} break; case 564: -#line 1237 "DynareBison.yy" - { driver.option_num("filter_step_ahead", (yysemantic_stack_[(3) - (3)].string_val)); ;} +#line 1240 "DynareBison.yy" + { driver.option_str("xls_sheet", (yysemantic_stack_[(3) - (3)].string_val)); ;} break; case 565: -#line 1238 "DynareBison.yy" - { driver.option_num("noconstant", "0"); ;} +#line 1241 "DynareBison.yy" + { driver.option_str("xls_range", (yysemantic_stack_[(3) - (3)].string_val)); ;} break; case 566: -#line 1239 "DynareBison.yy" - { driver.option_num("noconstant", "1"); ;} +#line 1242 "DynareBison.yy" + { driver.option_num("filter_step_ahead", (yysemantic_stack_[(3) - (3)].string_val)); ;} break; case 567: -#line 1240 "DynareBison.yy" - { driver.option_num("mh_recover", "1"); ;} +#line 1243 "DynareBison.yy" + { driver.option_num("noconstant", "0"); ;} break; case 568: -#line 1241 "DynareBison.yy" - { driver.option_num("planner_discount",(yysemantic_stack_[(3) - (3)].string_val)); ;} +#line 1244 "DynareBison.yy" + { driver.option_num("noconstant", "1"); ;} break; case 569: -#line 1243 "DynareBison.yy" - { driver.option_num("bvar_prior_tau", (yysemantic_stack_[(3) - (3)].string_val)); ;} +#line 1245 "DynareBison.yy" + { driver.option_num("mh_recover", "1"); ;} break; case 570: -#line 1244 "DynareBison.yy" - { driver.option_num("bvar_prior_decay", (yysemantic_stack_[(3) - (3)].string_val)); ;} +#line 1246 "DynareBison.yy" + { driver.option_num("planner_discount",(yysemantic_stack_[(3) - (3)].string_val)); ;} break; case 571: -#line 1245 "DynareBison.yy" - { driver.option_num("bvar_prior_lambda", (yysemantic_stack_[(3) - (3)].string_val)); ;} +#line 1248 "DynareBison.yy" + { driver.option_num("bvar_prior_tau", (yysemantic_stack_[(3) - (3)].string_val)); ;} break; case 572: -#line 1246 "DynareBison.yy" - { driver.option_num("bvar_prior_mu", (yysemantic_stack_[(3) - (3)].string_val)); ;} +#line 1249 "DynareBison.yy" + { driver.option_num("bvar_prior_decay", (yysemantic_stack_[(3) - (3)].string_val)); ;} break; case 573: -#line 1247 "DynareBison.yy" - { driver.option_num("bvar_prior_omega", (yysemantic_stack_[(3) - (3)].string_val)); ;} +#line 1250 "DynareBison.yy" + { driver.option_num("bvar_prior_lambda", (yysemantic_stack_[(3) - (3)].string_val)); ;} break; case 574: -#line 1248 "DynareBison.yy" - { driver.option_num("bvar_prior_flat", "1"); ;} +#line 1251 "DynareBison.yy" + { driver.option_num("bvar_prior_mu", (yysemantic_stack_[(3) - (3)].string_val)); ;} break; case 575: -#line 1249 "DynareBison.yy" - { driver.option_num("bvar_prior_train", (yysemantic_stack_[(3) - (3)].string_val)); ;} +#line 1252 "DynareBison.yy" + { driver.option_num("bvar_prior_omega", (yysemantic_stack_[(3) - (3)].string_val)); ;} break; case 576: -#line 1250 "DynareBison.yy" - { driver.option_num("bvar_replic", (yysemantic_stack_[(3) - (3)].string_val)); ;} +#line 1253 "DynareBison.yy" + { driver.option_num("bvar_prior_flat", "1"); ;} break; case 577: -#line 1252 "DynareBison.yy" - { driver.option_num("identification", (yysemantic_stack_[(3) - (3)].string_val)); ;} +#line 1254 "DynareBison.yy" + { driver.option_num("bvar_prior_train", (yysemantic_stack_[(3) - (3)].string_val)); ;} break; case 578: -#line 1253 "DynareBison.yy" - { driver.option_num("morris", (yysemantic_stack_[(3) - (3)].string_val)); ;} +#line 1255 "DynareBison.yy" + { driver.option_num("bvar_replic", (yysemantic_stack_[(3) - (3)].string_val)); ;} break; case 579: -#line 1254 "DynareBison.yy" - { driver.option_num("stab", (yysemantic_stack_[(3) - (3)].string_val)); ;} +#line 1257 "DynareBison.yy" + { driver.option_num("identification", (yysemantic_stack_[(3) - (3)].string_val)); ;} break; case 580: -#line 1255 "DynareBison.yy" - { driver.option_num("redform", (yysemantic_stack_[(3) - (3)].string_val)); ;} +#line 1258 "DynareBison.yy" + { driver.option_num("morris", (yysemantic_stack_[(3) - (3)].string_val)); ;} break; case 581: -#line 1256 "DynareBison.yy" - { driver.option_num("pprior", (yysemantic_stack_[(3) - (3)].string_val)); ;} +#line 1259 "DynareBison.yy" + { driver.option_num("stab", (yysemantic_stack_[(3) - (3)].string_val)); ;} break; case 582: -#line 1257 "DynareBison.yy" - { driver.option_num("prior_range", (yysemantic_stack_[(3) - (3)].string_val)); ;} +#line 1260 "DynareBison.yy" + { driver.option_num("redform", (yysemantic_stack_[(3) - (3)].string_val)); ;} break; case 583: -#line 1258 "DynareBison.yy" - { driver.option_num("ppost", (yysemantic_stack_[(3) - (3)].string_val)); ;} +#line 1261 "DynareBison.yy" + { driver.option_num("pprior", (yysemantic_stack_[(3) - (3)].string_val)); ;} break; case 584: -#line 1259 "DynareBison.yy" - { driver.option_num("ilptau", (yysemantic_stack_[(3) - (3)].string_val)); ;} +#line 1262 "DynareBison.yy" + { driver.option_num("prior_range", (yysemantic_stack_[(3) - (3)].string_val)); ;} break; case 585: -#line 1260 "DynareBison.yy" - { driver.option_num("glue", (yysemantic_stack_[(3) - (3)].string_val)); ;} +#line 1263 "DynareBison.yy" + { driver.option_num("ppost", (yysemantic_stack_[(3) - (3)].string_val)); ;} break; case 586: -#line 1261 "DynareBison.yy" - { driver.option_num("morris_nliv", (yysemantic_stack_[(3) - (3)].string_val)); ;} +#line 1264 "DynareBison.yy" + { driver.option_num("ilptau", (yysemantic_stack_[(3) - (3)].string_val)); ;} break; case 587: -#line 1262 "DynareBison.yy" - { driver.option_num("morris_ntra", (yysemantic_stack_[(3) - (3)].string_val)); ;} +#line 1265 "DynareBison.yy" + { driver.option_num("glue", (yysemantic_stack_[(3) - (3)].string_val)); ;} break; case 588: -#line 1263 "DynareBison.yy" - { driver.option_num("identification", (yysemantic_stack_[(3) - (3)].string_val)); ;} +#line 1266 "DynareBison.yy" + { driver.option_num("morris_nliv", (yysemantic_stack_[(3) - (3)].string_val)); ;} break; case 589: -#line 1264 "DynareBison.yy" - { driver.option_num("identification", (yysemantic_stack_[(3) - (3)].string_val)); ;} +#line 1267 "DynareBison.yy" + { driver.option_num("morris_ntra", (yysemantic_stack_[(3) - (3)].string_val)); ;} break; case 590: -#line 1265 "DynareBison.yy" - { driver.option_num("load_rmse", (yysemantic_stack_[(3) - (3)].string_val)); ;} - break; - - case 591: -#line 1266 "DynareBison.yy" - { driver.option_num("load_stab", (yysemantic_stack_[(3) - (3)].string_val)); ;} - break; - - case 592: -#line 1267 "DynareBison.yy" +#line 1268 "DynareBison.yy" { driver.option_num("identification", (yysemantic_stack_[(3) - (3)].string_val)); ;} break; + case 591: +#line 1269 "DynareBison.yy" + { driver.option_num("identification", (yysemantic_stack_[(3) - (3)].string_val)); ;} + break; + + case 592: +#line 1270 "DynareBison.yy" + { driver.option_num("load_rmse", (yysemantic_stack_[(3) - (3)].string_val)); ;} + break; + case 593: -#line 1268 "DynareBison.yy" - { driver.option_num("ksstat", (yysemantic_stack_[(3) - (3)].string_val)); ;} +#line 1271 "DynareBison.yy" + { driver.option_num("load_stab", (yysemantic_stack_[(3) - (3)].string_val)); ;} break; case 594: -#line 1269 "DynareBison.yy" - { driver.option_num("logtrans_redform", (yysemantic_stack_[(3) - (3)].string_val)); ;} +#line 1272 "DynareBison.yy" + { driver.option_num("identification", (yysemantic_stack_[(3) - (3)].string_val)); ;} break; case 595: -#line 1270 "DynareBison.yy" - { driver.option_num("threshold_redfor",(yysemantic_stack_[(3) - (3)].string_val)); ;} +#line 1273 "DynareBison.yy" + { driver.option_num("ksstat", (yysemantic_stack_[(3) - (3)].string_val)); ;} break; case 596: -#line 1272 "DynareBison.yy" - { driver.option_num("ksstat_redfrom", (yysemantic_stack_[(3) - (3)].string_val)); ;} +#line 1274 "DynareBison.yy" + { driver.option_num("logtrans_redform", (yysemantic_stack_[(3) - (3)].string_val)); ;} break; case 597: -#line 1273 "DynareBison.yy" - { driver.option_num("alpha2_redform", (yysemantic_stack_[(3) - (3)].string_val)); ;} +#line 1275 "DynareBison.yy" + { driver.option_num("threshold_redfor",(yysemantic_stack_[(3) - (3)].string_val)); ;} break; case 598: -#line 1279 "DynareBison.yy" - { driver.option_num("rmse", (yysemantic_stack_[(3) - (3)].string_val)); ;} +#line 1277 "DynareBison.yy" + { driver.option_num("ksstat_redfrom", (yysemantic_stack_[(3) - (3)].string_val)); ;} break; case 599: -#line 1280 "DynareBison.yy" - { driver.option_num("lik_only", (yysemantic_stack_[(3) - (3)].string_val)); ;} +#line 1278 "DynareBison.yy" + { driver.option_num("alpha2_redform", (yysemantic_stack_[(3) - (3)].string_val)); ;} break; case 600: #line 1284 "DynareBison.yy" - { driver.option_num("pfilt_rmse", (yysemantic_stack_[(3) - (3)].string_val)); ;} + { driver.option_num("rmse", (yysemantic_stack_[(3) - (3)].string_val)); ;} break; case 601: #line 1285 "DynareBison.yy" - { driver.option_num("istart_rmse", (yysemantic_stack_[(3) - (3)].string_val)); ;} + { driver.option_num("lik_only", (yysemantic_stack_[(3) - (3)].string_val)); ;} break; case 602: -#line 1286 "DynareBison.yy" - { driver.option_num("alpha_rmse", (yysemantic_stack_[(3) - (3)].string_val)); ;} +#line 1289 "DynareBison.yy" + { driver.option_num("pfilt_rmse", (yysemantic_stack_[(3) - (3)].string_val)); ;} break; case 603: -#line 1287 "DynareBison.yy" - { driver.option_num("alpha2_rmse", (yysemantic_stack_[(3) - (3)].string_val)); ;} +#line 1290 "DynareBison.yy" + { driver.option_num("istart_rmse", (yysemantic_stack_[(3) - (3)].string_val)); ;} break; case 604: #line 1291 "DynareBison.yy" + { driver.option_num("alpha_rmse", (yysemantic_stack_[(3) - (3)].string_val)); ;} + break; + + case 605: +#line 1292 "DynareBison.yy" + { driver.option_num("alpha2_rmse", (yysemantic_stack_[(3) - (3)].string_val)); ;} + break; + + case 606: +#line 1296 "DynareBison.yy" { (yysemantic_stack_[(3) - (1)].string_val)->append(":"); (yysemantic_stack_[(3) - (1)].string_val)->append(*(yysemantic_stack_[(3) - (3)].string_val)); @@ -2363,8 +2373,8 @@ namespace yy ;} break; - case 606: -#line 1300 "DynareBison.yy" + case 608: +#line 1305 "DynareBison.yy" { (yysemantic_stack_[(3) - (1)].string_val)->append(":"); (yysemantic_stack_[(3) - (1)].string_val)->append(*(yysemantic_stack_[(3) - (3)].string_val)); @@ -2373,13 +2383,13 @@ namespace yy ;} break; - case 607: -#line 1309 "DynareBison.yy" + case 609: +#line 1314 "DynareBison.yy" { (yysemantic_stack_[(2) - (2)].string_val)->insert(0, "["); (yyval.string_val) = (yysemantic_stack_[(2) - (2)].string_val);;} break; - case 608: -#line 1311 "DynareBison.yy" + case 610: +#line 1316 "DynareBison.yy" { (yysemantic_stack_[(2) - (1)].string_val)->append(" "); (yysemantic_stack_[(2) - (1)].string_val)->append(*(yysemantic_stack_[(2) - (2)].string_val)); @@ -2388,14 +2398,14 @@ namespace yy ;} break; - case 609: -#line 1319 "DynareBison.yy" + case 611: +#line 1324 "DynareBison.yy" { (yysemantic_stack_[(2) - (1)].string_val)->append("]"); (yyval.string_val) = (yysemantic_stack_[(2) - (1)].string_val); ;} break; /* Line 675 of lalr1.cc. */ -#line 2399 "DynareBison.cc" +#line 2409 "DynareBison.cc" default: break; } YY_SYMBOL_PRINT ("-> $$ =", yyr1_[yyn], &yyval, &yyloc); @@ -2602,136 +2612,137 @@ namespace yy /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing STATE-NUM. */ - const short int parser::yypact_ninf_ = -1090; + const short int parser::yypact_ninf_ = -1102; const short int parser::yypact_[] = { - 914, 18, 28, 107, -107, 393, 92, 44, 29, 34, - -66, 4, -64, -38, -4, 105, 415, 263, 417, -58, - 109, 122, 179, 210, 24, 338, 345, 96, -1090, 247, - 250, 338, 235, 418, 426, 431, 82, 88, 338, 391, - 398, 412, 338, 434, 759, -1090, -1090, -1090, -1090, -1090, - -1090, -1090, -1090, -1090, -1090, -1090, -1090, -1090, -1090, -1090, - -1090, -1090, -1090, -1090, -1090, -1090, -1090, -1090, -1090, -1090, - -1090, -1090, -1090, -1090, -1090, -1090, -1090, -1090, -1090, -1090, - -1090, -1090, -1090, -1090, -1090, -1090, -1090, -1090, -1090, -1090, - 312, 1248, 332, 662, -1090, 475, 100, -1090, 424, 523, - 422, 27, -75, 541, 103, 555, 558, 608, -1090, 1225, - -1, 385, 440, 537, 563, 558, 617, 614, 461, -1090, - 334, 35, 155, 1055, 579, 580, -1090, 1363, 6, 201, - 540, 212, 612, 468, 1082, 780, 780, 217, 155, 464, - -1090, 68, -1090, 424, -1090, 1363, 219, -1090, 1310, 229, - 233, 553, 257, 554, 261, 559, 262, 275, -1090, 1944, - -1090, -1090, -1090, 636, -1090, 648, 651, 653, 659, 661, - -1090, 664, 667, 668, -1090, 669, 671, 673, 674, -1090, - 551, 507, -1090, -1090, -1090, -1090, -1090, -1090, -1090, -1090, - -1090, -1090, -1090, -1090, -1090, -1090, -1090, -1090, -1090, 676, - 677, 679, -1090, 569, 514, -1090, -1090, -1090, 517, 637, - -55, 408, -1090, 687, -36, -1090, -1090, 522, -1090, 532, - -1090, -1090, 650, -80, -1090, 652, 251, 700, 69, -1090, - 654, -1090, 702, -1090, -1090, 705, 706, 708, 709, 710, - -1090, -1090, 711, 712, 715, 716, 717, 718, -1090, -1090, - 724, 725, -1090, -1090, -1090, 727, 728, -1090, -1090, -27, - -1090, -1090, -1090, -1090, -1090, -1090, -1090, -1090, -1090, -1090, - -1090, -1090, -1090, -1090, -1090, -1090, -1090, -1090, -1090, -1090, - -1090, -1090, -1090, -1090, -1090, -1090, -1090, -1090, -1090, -1090, - -1090, -1090, -1090, -1090, -1090, -1090, -1090, -1090, -1090, -1090, - 729, 681, -1090, 686, -1090, 688, 444, -1090, 628, 692, - 631, 697, 479, -1090, 698, 638, 699, 576, -1090, 584, - 78, -1090, 81, 753, 589, 602, -1090, 911, -1090, -26, - 601, 603, 770, -1090, -1090, -25, -1090, -1090, -1090, -1090, - 723, 726, 140, -1090, -1090, -1090, 607, 610, 611, 1055, - 1055, 613, 615, 616, 618, 621, 624, 625, 627, 630, - 632, 1055, 1020, 634, 118, -1090, 934, 234, 779, 781, - 795, 805, 814, 822, -1090, -1090, -1090, 829, 830, 831, - -1090, 834, -1090, 835, 841, 675, -1090, -1090, -1090, -1090, - -1090, -1090, -1090, -1090, -1090, -1090, -1090, -1090, -1090, -1090, - -1090, -1090, -1090, -1090, -1090, -1090, -1090, -1090, -1090, -1090, - -1090, -1090, 749, 796, -1090, 678, -1090, -1090, -1090, 682, - 684, 689, 1082, 1082, 694, 696, 701, 707, 714, 719, - 720, 730, 734, 736, 1082, 1928, -1090, -21, -1090, -1090, - -1090, -1090, -1090, -1090, -1090, -1090, -1090, -1090, -1090, -1090, - -1090, -1090, -7, -1090, 386, 32, 281, -1090, -1090, -1090, - 282, -1090, -1090, 285, -1090, -1090, 853, -1090, 286, -1090, - -1090, -1090, -1090, -1090, 762, 816, -1090, -1090, 773, 818, - -1090, -1090, 776, 823, -1090, -1090, 873, 875, 876, 877, - 878, 879, 884, 885, 890, 891, 892, 894, 895, 896, - 904, 906, 907, 908, 912, 919, 921, 922, 923, 924, - 925, 926, 927, 746, 819, -1090, -1090, -1090, -1090, -1090, - -1090, -1090, -1090, -1090, -1090, -1090, -1090, -1090, -1090, -1090, - -1090, -1090, -1090, -1090, -1090, -1090, -1090, -1090, -1090, -1090, - -1090, -1090, 404, 357, 404, 915, 357, 916, 883, 917, - 26, 918, 928, 888, 898, 1248, 930, 931, 404, 933, - 662, 935, 774, 778, 905, 406, 941, -1090, -1090, 937, - 424, 790, -1090, -1090, 798, 49, 913, 800, 54, 920, - 1055, -1090, -1090, -1090, 797, 943, 949, 952, 953, 954, - 404, 404, 404, 957, 959, 967, 971, 942, 832, 404, - 1225, 58, 947, 990, 886, -1090, -1090, -1090, 389, 887, - 71, 889, -1090, -1090, 893, 71, 897, -1090, -1090, 384, - -1090, -1090, -1090, 958, 840, -1090, 961, 33, -1090, 243, - -1090, 587, -1090, 845, 850, 365, 35, 90, 909, 37, - -1090, -1090, 1055, 1055, 1055, 900, 456, 1055, 1055, 1055, - 1055, 1055, 1055, 1055, 1055, 1055, 1055, 703, 1055, 1055, - 1055, 1055, 1055, 1055, 1055, 1055, 1055, 1055, 1055, -1090, - 1055, -1090, -1090, 969, 1702, -1090, 1032, 983, 404, 1001, - 1003, 1004, 1007, 1008, 1009, 404, 1010, 1021, 1022, 62, - -1090, 945, -1090, 1082, 1082, 384, 932, 462, 1082, 1082, - 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1002, 1082, - 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, - 899, 780, 64, 70, -1090, -1090, -1090, 1055, 395, 25, - 68, 902, 424, 903, 1363, 75, 404, 1310, 85, -1090, - 950, -1090, 968, -1090, 973, 1024, 1033, 1044, 1052, 1054, - 1056, 1057, 1058, 1059, 1061, 1064, 1065, 1066, 1067, 1069, - 404, 404, 1070, 797, 404, 404, 1071, 1072, 404, 1074, - 404, 404, 929, 1944, -1090, -1090, -1090, -1090, 1084, 1087, - -1090, -1090, -1090, -1090, -1090, -1090, -1090, -1090, 1079, 15, - -1090, -1090, -1090, -1090, 948, -1090, -1090, 936, -1090, -1090, - -1090, -1090, 939, -1090, 1080, 940, 955, 970, 1055, -1090, - -1090, -1090, -1090, -1090, 278, 972, -1090, -1090, 292, 974, - 1721, -1090, -1090, -1090, -1090, -1090, -1090, -1090, -1090, -1090, - -1090, -1090, -1090, -1090, -1090, 963, -1090, -1090, -1090, 293, - -1090, 1050, 1073, -1090, -1090, -1090, -1090, -1090, -1090, -1090, - -1090, 493, 975, 992, 1014, 1090, 1035, 71, 1098, 982, - 71, -1090, 1102, 1131, 991, -1090, 558, 1160, -1090, -1090, - -1090, 1082, -1090, -1090, -1090, 1161, -1090, 299, -1090, -1090, - -1090, 996, -1090, -1090, -1090, -1090, -1090, -1090, -1090, -1090, - -1090, -1090, 260, 59, -1090, 1114, 1055, 1115, 189, 1946, - 2006, 2042, 344, 1232, 1297, 1343, 1360, 1372, 1384, 1400, - 1412, 1429, 1441, -1090, 501, 501, 501, 501, 501, 501, - 456, 456, 900, 900, 1049, 1457, 1055, -1090, 1120, 1735, - -1090, -1090, -1090, -1090, -1090, -1090, -1090, -1090, -1090, -1090, - -1090, -1090, -1090, 294, -1090, 2018, 2030, 1015, 1469, 1481, - 1498, 1514, 1526, 1538, 1550, 1564, 1583, 1595, -1090, 543, - 543, 543, 543, 543, 543, 462, 462, 932, 932, 1049, - -1090, -1090, -1090, 305, -1090, 310, 1607, 32, 1005, -1090, - -1090, 40, 1055, -1090, -1090, -1090, -1090, -1090, -1090, 320, - -1090, -1090, -1090, 321, -1090, -1090, -1090, -1090, -1090, -1090, - -1090, -1090, -1090, -1090, -1090, -1090, -1090, -1090, -1090, -1090, - -1090, -1090, -1090, -1090, -1090, -1090, -1090, -1090, -1090, -1090, - -1090, -1090, -1090, -1090, -1090, -1090, -1090, -1090, 1012, -1090, - -1090, -1090, 1123, -1090, -1090, 1016, 1185, -1090, -1090, 1747, - -1090, 91, -1090, 101, -1090, 1138, -1090, 352, -1090, -1090, - -1090, -1090, -1090, -1090, 71, 389, 1078, 71, 1081, 1085, - -1090, 1025, -1090, -1090, 1190, 413, 1082, 1763, 404, 587, - -1090, 911, 911, 911, 90, -1090, 71, -1090, 1193, 1782, - 1198, 1191, 1055, 1055, 1055, 1055, -1090, -1090, -1090, -1090, - -1090, -1090, -1090, -1090, -1090, -1090, -1090, 1045, 1802, 1055, - -1090, -1090, 1082, 1082, -1090, -1090, -1090, -1090, -1090, -1090, - -1090, -1090, -1090, -1090, -1090, -1090, -1090, -1090, 25, -1090, - -1090, -1090, 1055, 1621, -1090, -1090, 1192, -1090, 940, 1055, - -1090, -1090, 328, -1090, 341, 1041, 963, -1090, -1090, 1105, - 1107, 1108, 71, 1068, 71, 71, -1090, 1055, -1090, 1818, - -1090, -1090, -1090, 1075, 56, 196, 213, 72, 1053, 1055, - -1090, 1055, 1094, 270, 1830, 1633, 1652, 2042, -1090, -1090, - 1845, 1664, 1678, 1690, -1090, -1090, 1220, 1857, -1090, -1090, - 1112, -1090, 71, 71, 71, 1126, -1090, 1076, 1077, 1873, - -1090, 911, -1090, -1090, -1090, 71, -1090, 1885, 1900, 1221, - 1226, 1151, -1090, -1090, -1090, -1090, -1090, -1090, -1090, 1055, - -1090, 48, 1141, -1090, 1144, 71, -1090, -1090, -1090, 571, - 1100, -1090, -1090, -1090, 1099, 1055, 1912, 1222, -1090, 71, - 104, 1104, -1090, -1090, 1254, 2042, 280, -1090, 1101, 1164, - 1167, -1090, -1090, 1055, -1090, -1090, 71, 71, 2042, 1171, - -1090, 71, -1090 + 979, 37, 47, 84, -118, 334, 87, 71, 25, 27, + -53, 72, 57, 74, 115, 160, 375, 91, 406, 80, + 183, 269, 228, 235, 78, 267, 360, 102, -1102, 245, + 248, 267, 263, 435, 430, 441, 86, 88, 267, 391, + 405, 409, 267, 446, 844, -1102, -1102, -1102, -1102, -1102, + -1102, -1102, -1102, -1102, -1102, -1102, -1102, -1102, -1102, -1102, + -1102, -1102, -1102, -1102, -1102, -1102, -1102, -1102, -1102, -1102, + -1102, -1102, -1102, -1102, -1102, -1102, -1102, -1102, -1102, -1102, + -1102, -1102, -1102, -1102, -1102, -1102, -1102, -1102, -1102, -1102, + 295, 640, 305, 1341, -1102, 513, 225, -1102, 462, 551, + 419, 51, 154, 544, 333, 556, 566, 582, -1102, 1242, + 12, 358, 368, 403, 574, 566, 619, 621, 464, -1102, + 341, 533, 129, 1074, 585, 590, -1102, 1445, 52, 210, + 548, 227, 626, 479, 1098, 655, 655, 229, 129, 475, + -1102, 93, -1102, 462, -1102, 1445, 234, -1102, 1345, 264, + 293, 562, 299, 564, 300, 565, 302, 306, -1102, 2094, + -1102, -1102, -1102, 649, -1102, 659, 660, 664, 666, 667, + -1102, 671, 673, 676, -1102, 677, 678, 679, 680, -1102, + 571, 494, -1102, -1102, -1102, -1102, -1102, -1102, -1102, -1102, + -1102, -1102, -1102, -1102, -1102, -1102, -1102, -1102, -1102, 684, + 686, 687, -1102, 576, 520, -1102, -1102, -1102, 524, 641, + -46, 109, -1102, 695, -37, -1102, -1102, 529, -1102, 530, + -1102, -1102, 650, 415, -1102, 651, 420, 701, 279, -1102, + 656, -1102, 704, -1102, -1102, 706, 722, 724, 726, 733, + -1102, -1102, 741, 744, 746, 748, 749, 750, -1102, -1102, + 751, 752, -1102, -1102, -1102, 754, 755, -1102, -1102, -29, + -1102, -1102, -1102, -1102, -1102, -1102, -1102, -1102, -1102, -1102, + -1102, -1102, -1102, -1102, -1102, -1102, -1102, -1102, -1102, -1102, + -1102, -1102, -1102, -1102, -1102, -1102, -1102, -1102, -1102, -1102, + -1102, -1102, -1102, -1102, -1102, -1102, -1102, -1102, -1102, -1102, + 756, 710, -1102, 711, -1102, 712, 408, -1102, 653, 714, + 654, 719, 450, -1102, 720, 658, 723, 587, -1102, 605, + 354, -1102, 400, 774, 606, 612, -1102, 663, -1102, 149, + 611, 623, 781, -1102, -1102, 150, -1102, -1102, -1102, -1102, + 742, 745, 172, -1102, -1102, -1102, 625, 627, 630, 631, + 1074, 1074, 632, 633, 634, 635, 636, 637, 638, 639, + 645, 646, 1074, 1816, 647, 402, -1102, 977, 499, 809, + 816, 817, 820, 821, 822, -1102, -1102, -1102, 823, 824, + 825, -1102, 826, -1102, 827, 832, 665, -1102, -1102, -1102, + -1102, -1102, -1102, -1102, -1102, -1102, -1102, -1102, -1102, -1102, + -1102, -1102, -1102, -1102, -1102, -1102, -1102, -1102, -1102, -1102, + -1102, -1102, -1102, 743, 788, -1102, 675, -1102, -1102, -1102, + 670, 681, 682, 683, 1098, 1098, 685, 689, 691, 696, + 697, 698, 699, 700, 702, 703, 1098, 2105, -1102, 246, + -1102, -1102, -1102, -1102, -1102, -1102, -1102, -1102, -1102, -1102, + -1102, -1102, -1102, -1102, 259, -1102, 328, 33, 287, -1102, + -1102, -1102, 292, -1102, -1102, 309, -1102, -1102, 852, -1102, + 311, -1102, -1102, -1102, -1102, -1102, 761, 795, -1102, -1102, + 762, 814, -1102, -1102, 776, 828, -1102, -1102, 872, 873, + 875, 876, 879, 880, 881, 882, 883, 884, 885, 886, + 890, 891, 892, 894, 895, 896, 897, 898, 899, 901, + 902, 903, 905, 907, 913, 747, 802, -1102, -1102, -1102, + -1102, -1102, -1102, -1102, -1102, -1102, -1102, -1102, -1102, -1102, + -1102, -1102, -1102, -1102, -1102, -1102, -1102, -1102, -1102, -1102, + -1102, -1102, -1102, -1102, 99, 167, 99, 908, 167, 909, + 866, 910, 36, 911, 912, 870, 887, 640, 916, 919, + 99, 920, 1341, 923, 764, 753, 900, 425, 940, -1102, + -1102, 928, 462, 780, -1102, -1102, 783, 55, 906, 784, + 63, 917, 1074, -1102, -1102, -1102, 787, 930, 934, 938, + 942, 943, 99, 99, 99, 944, 949, 950, 951, 924, + 803, 99, 1242, 66, 935, 972, 865, -1102, -1102, -1102, + 79, 877, 61, 888, -1102, -1102, 889, 61, 893, -1102, + -1102, 153, -1102, -1102, -1102, 936, 830, -1102, 939, 29, + -1102, 275, -1102, 81, -1102, 831, 835, 69, 533, 50, + 937, 45, -1102, -1102, 1074, 1074, 1074, 1074, 869, 416, + 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, + 1017, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, + 1074, 1074, -1102, 1074, -1102, -1102, 945, 1828, -1102, 1045, + 973, 99, 981, 985, 986, 988, 989, 992, 99, 993, + 994, 995, 70, -1102, 921, -1102, 1098, 1098, 153, 1074, + 932, 522, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, + 1098, 1098, 1266, 1098, 1098, 1098, 1098, 1098, 1098, 1098, + 1098, 1098, 1098, 1098, 848, 655, 76, 90, -1102, -1102, + -1102, 1074, 434, 32, 93, 850, 462, 851, 1445, 96, + 99, 1345, 97, -1102, 926, -1102, 927, -1102, 955, 1003, + 1007, 1024, 1033, 1037, 1038, 1043, 1044, 1046, 1047, 1048, + 1051, 1053, 1054, 1055, 99, 99, 1057, 787, 99, 99, + 1064, 1067, 99, 1068, 99, 99, 941, 2094, -1102, -1102, + -1102, -1102, 1078, 1079, -1102, -1102, -1102, -1102, -1102, -1102, + -1102, -1102, 1075, 21, -1102, -1102, -1102, -1102, 946, -1102, + -1102, 948, -1102, -1102, -1102, -1102, 952, -1102, 1077, 953, + 965, 967, 1074, -1102, -1102, -1102, -1102, -1102, 307, 969, + -1102, -1102, 320, 970, 1849, -1102, -1102, -1102, -1102, -1102, + -1102, -1102, -1102, -1102, -1102, -1102, -1102, -1102, -1102, 966, + -1102, -1102, -1102, 321, -1102, 1060, 1061, -1102, -1102, -1102, + -1102, -1102, -1102, -1102, -1102, 521, 974, 1000, 1006, 1071, + 1030, 61, 1094, 983, 61, -1102, 1088, 1126, 982, -1102, + 566, 1146, -1102, -1102, -1102, 1098, -1102, -1102, -1102, 1148, + -1102, 312, -1102, -1102, -1102, 987, -1102, -1102, -1102, -1102, + -1102, -1102, -1102, -1102, -1102, -1102, -41, -9, -1102, 1103, + 1074, 1104, -3, 922, 2090, 2228, 313, 2156, 1366, 1378, + 1435, 1447, 1459, 1471, 1483, 1504, 1516, 1528, -1102, 538, + 538, 538, 538, 538, 538, 416, 416, 869, 869, 1042, + 1540, 1074, -1102, 1106, 1861, -1102, -1102, -1102, -1102, -1102, + -1102, -1102, -1102, -1102, -1102, -1102, -1102, -1102, 324, -1102, + 2168, 2180, 1004, 2192, 1552, 1573, 1585, 1597, 1609, 1621, + 1642, 1654, 1666, 1678, -1102, 622, 622, 622, 622, 622, + 622, 522, 522, 932, 932, 1042, -1102, -1102, -1102, 326, + -1102, 329, 1690, 33, 996, -1102, -1102, 35, 1074, -1102, + -1102, -1102, -1102, -1102, -1102, 338, -1102, -1102, -1102, 371, + -1102, -1102, -1102, -1102, -1102, -1102, -1102, -1102, -1102, -1102, + -1102, -1102, -1102, -1102, -1102, -1102, -1102, -1102, -1102, -1102, + -1102, -1102, -1102, -1102, -1102, -1102, -1102, -1102, -1102, -1102, + -1102, -1102, -1102, -1102, 990, -1102, -1102, -1102, 1107, -1102, + -1102, 1005, 1162, -1102, -1102, 1883, -1102, 98, -1102, 123, + -1102, 1127, -1102, 317, -1102, -1102, -1102, -1102, -1102, -1102, + 61, 79, 1063, 61, 1065, 1069, -1102, 1013, -1102, -1102, + 1182, 500, 1098, 1895, 99, 81, -1102, 663, 663, 663, + 50, -1102, 61, -1102, 1183, 1916, 1184, 1167, 1074, 1074, + 1074, 1074, -1102, 1074, -1102, -1102, -1102, -1102, -1102, -1102, + -1102, -1102, -1102, -1102, 1022, 1928, 1074, -1102, -1102, 1098, + 1098, -1102, 1074, -1102, -1102, -1102, -1102, -1102, -1102, -1102, + -1102, -1102, -1102, -1102, -1102, -1102, 32, -1102, -1102, -1102, + 1074, 1711, -1102, -1102, 1172, -1102, 953, 1074, -1102, -1102, + 373, -1102, 414, 1018, 966, -1102, -1102, 1091, 1092, 1093, + 61, 1039, 61, 61, -1102, 1074, -1102, 1950, -1102, -1102, + -1102, 1040, 64, 211, 240, 60, 1041, 1074, -1102, 1074, + 1020, -31, 1962, 1723, 1735, 2228, 2204, -1102, -1102, 1983, + 1747, 1759, 2216, 1780, -1102, -1102, 1209, 1995, -1102, -1102, + 1114, -1102, 61, 61, 61, 1115, -1102, 1049, 1066, 2017, + -1102, 663, -1102, -1102, -1102, 61, -1102, 2029, 2050, 1197, + 1210, 1134, -1102, -1102, -1102, 1074, -1102, -1102, -1102, 1074, + -1102, 1074, -1102, 28, 1123, -1102, 1124, 61, -1102, -1102, + -1102, 594, 1070, -1102, -1102, -1102, 1072, 1074, 1792, 1804, + 2062, 1188, -1102, 61, 75, 1073, -1102, -1102, 1220, 2228, + 156, -1102, -1102, -1102, 1080, 1129, 1132, -1102, -1102, 1074, + -1102, -1102, 61, 61, 2228, 1133, -1102, 61, -1102 }; /* YYDEFACT[S] -- default rule to reduce with in state S when YYTABLE @@ -2742,159 +2753,160 @@ namespace yy { 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, 431, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 433, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 4, 29, 30, 45, 46, 47, 44, 5, 6, 7, 12, 9, 10, 11, 8, 13, 14, 15, 16, 17, 18, 19, 23, 25, 24, 20, 21, 22, 26, 27, 28, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, - 0, 0, 0, 0, 400, 0, 0, 216, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 260, 307, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 136, - 0, 0, 0, 0, 0, 0, 387, 0, 0, 0, + 0, 0, 0, 0, 402, 0, 0, 218, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 262, 309, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 137, + 0, 0, 0, 0, 0, 0, 389, 0, 0, 0, 75, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 221, 0, 211, 0, 227, 0, 0, 434, 0, 0, - 0, 57, 0, 63, 0, 69, 0, 0, 471, 0, - 1, 3, 461, 0, 574, 0, 0, 0, 0, 0, - 565, 0, 0, 0, 566, 0, 0, 0, 0, 449, - 460, 0, 450, 455, 453, 456, 454, 451, 452, 457, - 458, 442, 443, 444, 445, 446, 447, 448, 469, 0, - 0, 0, 463, 468, 0, 465, 464, 466, 0, 0, - 397, 0, 393, 0, 0, 219, 220, 0, 81, 0, - 48, 410, 0, 0, 404, 0, 0, 0, 0, 123, - 0, 549, 0, 554, 533, 0, 0, 0, 0, 0, - 546, 547, 0, 0, 0, 0, 0, 0, 567, 542, - 0, 0, 553, 548, 532, 0, 0, 552, 550, 0, - 312, 348, 337, 313, 314, 315, 316, 317, 318, 319, - 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, - 330, 331, 332, 333, 334, 335, 336, 338, 339, 340, - 341, 342, 343, 344, 345, 346, 347, 349, 350, 351, - 256, 0, 309, 0, 273, 0, 0, 270, 0, 0, - 0, 0, 0, 292, 0, 0, 0, 0, 286, 0, - 0, 127, 0, 0, 0, 0, 83, 0, 507, 0, - 0, 0, 0, 561, 560, 0, 416, 417, 418, 419, - 0, 0, 0, 187, 88, 89, 0, 0, 87, 0, + 223, 0, 213, 0, 229, 0, 0, 436, 0, 0, + 0, 57, 0, 63, 0, 69, 0, 0, 473, 0, + 1, 3, 463, 0, 576, 0, 0, 0, 0, 0, + 567, 0, 0, 0, 568, 0, 0, 0, 0, 451, + 462, 0, 452, 457, 455, 458, 456, 453, 454, 459, + 460, 444, 445, 446, 447, 448, 449, 450, 471, 0, + 0, 0, 465, 470, 0, 467, 466, 468, 0, 0, + 399, 0, 395, 0, 0, 221, 222, 0, 81, 0, + 48, 412, 0, 0, 406, 0, 0, 0, 0, 124, + 0, 551, 0, 556, 535, 0, 0, 0, 0, 0, + 548, 549, 0, 0, 0, 0, 0, 0, 569, 544, + 0, 0, 555, 550, 534, 0, 0, 554, 552, 0, + 314, 350, 339, 315, 316, 317, 318, 319, 320, 321, + 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, + 332, 333, 334, 335, 336, 337, 338, 340, 341, 342, + 343, 344, 345, 346, 347, 348, 349, 351, 352, 353, + 258, 0, 311, 0, 275, 0, 0, 272, 0, 0, + 0, 0, 0, 294, 0, 0, 0, 0, 288, 0, + 0, 128, 0, 0, 0, 0, 83, 0, 509, 0, + 0, 0, 0, 563, 562, 0, 418, 419, 420, 421, + 0, 0, 0, 189, 88, 89, 0, 0, 87, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 378, 0, 0, 0, 0, - 0, 0, 0, 0, 512, 513, 514, 0, 0, 0, - 555, 0, 521, 0, 0, 0, 233, 234, 235, 236, - 237, 238, 239, 240, 241, 242, 243, 245, 247, 248, - 249, 250, 251, 252, 253, 244, 246, 254, 255, 389, - 386, 78, 73, 0, 54, 0, 79, 154, 155, 0, - 0, 182, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 432, 153, 0, 355, 360, - 356, 357, 358, 359, 361, 362, 363, 364, 365, 366, - 367, 368, 0, 50, 0, 0, 0, 224, 225, 226, - 0, 214, 215, 0, 232, 229, 0, 440, 0, 439, - 441, 436, 380, 60, 55, 0, 51, 66, 61, 0, - 52, 72, 67, 0, 53, 375, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 380, 0, 0, 0, + 0, 0, 0, 0, 0, 514, 515, 516, 0, 0, + 0, 557, 0, 523, 0, 0, 0, 235, 236, 237, + 238, 239, 240, 241, 242, 243, 244, 245, 247, 249, + 250, 251, 252, 253, 254, 255, 246, 248, 256, 257, + 391, 388, 78, 73, 0, 54, 0, 79, 155, 156, + 0, 0, 184, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 434, 154, 0, + 357, 362, 358, 359, 360, 361, 363, 364, 365, 366, + 367, 368, 369, 370, 0, 50, 0, 0, 0, 226, + 227, 228, 0, 216, 217, 0, 234, 231, 0, 442, + 0, 441, 443, 438, 382, 60, 55, 0, 51, 66, + 61, 0, 52, 72, 67, 0, 53, 377, 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, 474, 475, 476, 477, 478, 479, + 0, 0, 0, 0, 0, 0, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, - 490, 491, 492, 501, 493, 494, 495, 496, 497, 498, - 499, 500, 0, 0, 0, 0, 0, 0, 0, 0, + 490, 491, 492, 493, 494, 503, 495, 496, 497, 498, + 499, 500, 501, 502, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 391, 392, 0, - 0, 0, 82, 49, 0, 0, 0, 0, 0, 0, - 0, 121, 122, 261, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 393, + 394, 0, 0, 0, 82, 49, 0, 0, 0, 0, + 0, 0, 0, 122, 123, 263, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 258, 0, 272, 268, 269, 301, 0, - 301, 0, 290, 291, 0, 301, 0, 284, 285, 0, - 125, 126, 118, 0, 0, 84, 0, 0, 148, 0, - 149, 0, 144, 0, 0, 0, 0, 0, 0, 0, - 185, 186, 0, 0, 0, 101, 102, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, - 0, 376, 377, 0, 0, 381, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 76, 74, 80, 0, 0, 0, 167, 168, 0, 0, + 0, 0, 0, 0, 0, 260, 0, 274, 270, 271, + 303, 0, 303, 0, 292, 293, 0, 303, 0, 286, + 287, 0, 126, 127, 119, 0, 0, 84, 0, 0, + 149, 0, 150, 0, 145, 0, 0, 0, 0, 0, + 0, 0, 187, 188, 0, 0, 0, 0, 101, 102, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 184, 209, 210, 0, 0, 201, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 58, - 56, 64, 62, 70, 68, 0, 0, 0, 0, 0, + 0, 0, 85, 0, 378, 379, 0, 0, 383, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 76, 74, 80, 0, 0, 0, 0, + 168, 169, 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, 186, 211, + 212, 0, 0, 203, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 58, 56, 64, 62, 70, 68, 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, 503, 502, 570, 267, 0, 0, - 571, 572, 573, 569, 575, 524, 527, 526, 0, 0, - 525, 528, 529, 562, 0, 563, 459, 0, 576, 534, - 551, 467, 0, 401, 0, 397, 0, 0, 0, 505, - 218, 217, 413, 408, 0, 0, 407, 402, 0, 0, - 0, 564, 515, 556, 557, 530, 531, 536, 539, 537, - 544, 545, 535, 541, 540, 0, 543, 311, 308, 0, - 257, 0, 0, 296, 303, 297, 302, 299, 304, 298, - 300, 0, 0, 0, 278, 0, 0, 301, 0, 0, - 301, 264, 0, 0, 0, 120, 0, 0, 137, 146, - 147, 0, 151, 132, 131, 0, 133, 0, 130, 134, - 135, 0, 140, 138, 558, 559, 415, 426, 428, 429, - 430, 427, 0, 420, 424, 0, 0, 0, 0, 0, - 0, 116, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 86, 100, 99, 98, 97, 96, 95, - 91, 90, 92, 93, 94, 0, 0, 384, 0, 0, - 511, 519, 504, 510, 516, 517, 508, 518, 523, 509, - 506, 522, 388, 0, 77, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 152, 165, - 164, 163, 162, 161, 160, 157, 156, 158, 159, 166, - 433, 354, 352, 0, 369, 0, 0, 0, 0, 206, - 207, 0, 0, 223, 222, 213, 212, 231, 228, 0, - 568, 438, 435, 0, 59, 65, 71, 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, 472, 473, 266, 265, 605, 607, - 609, 608, 0, 462, 470, 0, 0, 399, 398, 0, - 409, 0, 403, 0, 124, 0, 373, 0, 310, 259, - 274, 306, 305, 271, 301, 301, 0, 301, 0, 0, - 289, 0, 263, 262, 0, 0, 0, 0, 0, 0, - 142, 0, 0, 0, 0, 414, 301, 425, 0, 0, - 0, 0, 0, 0, 0, 0, 115, 103, 104, 105, - 106, 107, 108, 109, 110, 111, 112, 0, 0, 0, - 382, 390, 0, 0, 183, 169, 170, 171, 172, 173, - 174, 175, 176, 177, 178, 353, 370, 208, 200, 197, - 203, 204, 0, 0, 230, 437, 0, 604, 397, 0, - 394, 411, 0, 405, 0, 0, 0, 538, 275, 0, - 0, 0, 301, 0, 301, 301, 287, 0, 119, 0, - 150, 520, 129, 0, 0, 0, 0, 421, 0, 0, - 190, 0, 196, 0, 0, 0, 0, 117, 379, 385, - 0, 0, 0, 0, 205, 606, 0, 0, 412, 406, - 0, 374, 301, 301, 301, 0, 295, 0, 0, 0, - 181, 0, 145, 141, 139, 301, 422, 0, 0, 0, - 0, 0, 189, 113, 114, 383, 179, 180, 202, 0, - 395, 301, 280, 276, 279, 301, 293, 288, 128, 0, - 0, 192, 191, 195, 193, 0, 0, 0, 372, 301, - 0, 0, 143, 423, 0, 199, 0, 396, 0, 281, - 0, 294, 194, 0, 188, 371, 301, 301, 198, 282, - 277, 301, 283 + 0, 0, 0, 0, 0, 0, 0, 0, 505, 504, + 572, 269, 0, 0, 573, 574, 575, 571, 577, 526, + 529, 528, 0, 0, 527, 530, 531, 564, 0, 565, + 461, 0, 578, 536, 553, 469, 0, 403, 0, 399, + 0, 0, 0, 507, 220, 219, 415, 410, 0, 0, + 409, 404, 0, 0, 0, 566, 517, 558, 559, 532, + 533, 538, 541, 539, 546, 547, 537, 543, 542, 0, + 545, 313, 310, 0, 259, 0, 0, 298, 305, 299, + 304, 301, 306, 300, 302, 0, 0, 0, 280, 0, + 0, 303, 0, 0, 303, 266, 0, 0, 0, 121, + 0, 0, 138, 147, 148, 0, 152, 133, 132, 0, + 134, 0, 131, 135, 136, 0, 141, 139, 560, 561, + 417, 428, 430, 431, 432, 429, 0, 422, 426, 0, + 0, 0, 0, 0, 0, 117, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 86, 100, + 99, 98, 97, 96, 95, 91, 90, 92, 93, 94, + 0, 0, 386, 0, 0, 513, 521, 506, 512, 518, + 519, 510, 520, 525, 511, 508, 524, 390, 0, 77, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 153, 166, 165, 164, 163, 162, + 161, 158, 157, 159, 160, 167, 435, 356, 354, 0, + 371, 0, 0, 0, 0, 208, 209, 0, 0, 225, + 224, 215, 214, 233, 230, 0, 570, 440, 437, 0, + 59, 65, 71, 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, + 474, 475, 268, 267, 607, 609, 611, 610, 0, 464, + 472, 0, 0, 401, 400, 0, 411, 0, 405, 0, + 125, 0, 375, 0, 312, 261, 276, 308, 307, 273, + 303, 303, 0, 303, 0, 0, 291, 0, 265, 264, + 0, 0, 0, 0, 0, 0, 143, 0, 0, 0, + 0, 416, 303, 427, 0, 0, 0, 0, 0, 0, + 0, 0, 115, 0, 103, 104, 105, 106, 107, 108, + 109, 110, 111, 112, 0, 0, 0, 384, 392, 0, + 0, 185, 0, 170, 171, 172, 173, 174, 175, 176, + 177, 178, 179, 355, 372, 210, 202, 199, 205, 206, + 0, 0, 232, 439, 0, 606, 399, 0, 396, 413, + 0, 407, 0, 0, 0, 540, 277, 0, 0, 0, + 303, 0, 303, 303, 289, 0, 120, 0, 151, 522, + 130, 0, 0, 0, 0, 423, 0, 0, 192, 0, + 198, 0, 0, 0, 0, 118, 0, 381, 387, 0, + 0, 0, 0, 0, 207, 608, 0, 0, 414, 408, + 0, 376, 303, 303, 303, 0, 297, 0, 0, 0, + 183, 0, 146, 142, 140, 303, 424, 0, 0, 0, + 0, 0, 191, 113, 114, 0, 385, 180, 181, 0, + 204, 0, 397, 303, 282, 278, 281, 303, 295, 290, + 129, 0, 0, 194, 193, 197, 195, 0, 0, 0, + 0, 0, 374, 303, 0, 0, 144, 425, 0, 201, + 0, 116, 182, 398, 0, 283, 0, 296, 196, 0, + 190, 373, 303, 303, 200, 284, 279, 303, 285 }; /* YYPGOTO[NTERM-NUM]. */ const short int parser::yypgoto_[] = { - -1090, -1090, 1272, -1090, -1090, -1090, -1090, -1090, -1090, -1090, - -1090, -1090, -1090, -1090, -1090, -1090, -1090, -1090, -330, -1090, - -1090, -1090, -1090, -110, -226, -1090, -1090, 997, -1090, 249, - -1090, -1090, -1090, -1090, -1090, -1090, -970, -618, -131, -565, - -1090, -1090, -1090, 1182, -257, -1090, -1090, -1090, -1090, 346, - -1090, -1090, 590, -1090, -1090, 751, -1090, -1090, 594, -1090, - -1090, -116, -24, 640, 783, -1090, -1090, 1019, -1090, -1090, - -1089, -1090, -1090, 1023, -1090, -1090, 1026, -987, -587, -1090, - -1090, 731, -1090, 1203, 605, -1090, 205, -1090, -1090, -1090, - -1090, 980, -1090, -1090, -1090, -1090, -1090, -1090, -1090, 1134, - -747, -1090, -1090, -1090, -1090, -1090, 713, -1090, 272, -830, - -1090, -1090, -1090, -1090, -1090, 620, -1090, -46, 792, -1090, - -1090, 793, -1090, -1090, 581, -1090, -519, -1090, -94, -1090, - 1235, -1090, -1090, -1090, -1090, -1090, -1090, -1090, -101, -1090, - -1090, -125, -585, -1090, -1090, -1090, -1090, -103, -87, -79, - -77, -76, -1090, -1090, -92, -53, -1090, -1090, -1090, -1090, - -1090, -1090, -1090, -1090, -72, -1090, -1090, -1090, -1090, -1090, - -68, -67, -48, -61, -57, -54, -1090, -1090, -1090, -1090, - -111, -95, -85, -82, -52, -50, -44, -1090, -1090, -1090, - -1090, -1090, -1090, -1090, -1090, -1090, -1090, -1090, -1090, -1090, - -1090, -1090, -1090, -1090, -1090, -1090, -1090, -1090, -1090, -1090, - -1090, -1090, -1090, -1090, -1090, -1090, -1090, -1090, -1090, -1090, - -1090, -1090, -1090, -1090, -1090, 573, -1090, -524 + -1102, -1102, 1235, -1102, -1102, -1102, -1102, -1102, -1102, -1102, + -1102, -1102, -1102, -1102, -1102, -1102, -1102, -1102, -326, -1102, + -1102, -1102, -1102, -112, -226, -1102, -1102, 960, -1102, 209, + -1102, -1102, -1102, -1102, -1102, -1102, -988, -620, -119, -602, + -1102, -1102, -1102, 1151, -242, -1102, -1102, -1102, -1102, 303, + -1102, -1102, 554, -1102, -1102, 721, -1102, -1102, 557, -1102, + -1102, -122, -24, 596, 757, -1102, -1102, 1008, -1102, -1102, + -1101, -1102, -1102, 975, -1102, -1102, 1009, -998, -584, -1102, + -1102, 716, -1102, 1166, 573, -1102, 162, -1102, -1102, -1102, + -1102, 954, -1102, -1102, -1102, -1102, -1102, -1102, -1102, 1109, + -760, -1102, -1102, -1102, -1102, -1102, 690, -1102, 242, -831, + -1102, -1102, -1102, -1102, -1102, 583, -1102, -59, 768, -1102, + -1102, 770, -1102, -1102, 553, -1102, -525, -1102, -92, -1102, + 1213, -1102, -1102, -1102, -1102, -1102, -1102, -1102, -105, -1102, + -1102, -121, -583, -1102, -1102, -1102, -1102, -101, -80, -77, + -65, -62, -1102, -1102, -98, -54, -1102, -1102, -1102, -1102, + -1102, -1102, -1102, -1102, -57, -1102, -1102, -1102, -1102, -1102, + -56, -55, -45, -52, -51, -50, -1102, -1102, -1102, -1102, + -111, -99, -93, -90, -48, -47, -44, -1102, -1102, -1102, + -1102, -1102, -1102, -1102, -1102, -1102, -1102, -1102, -1102, -1102, + -1102, -1102, -1102, -1102, -1102, -1102, -1102, -1102, -1102, -1102, + -1102, -1102, -1102, -1102, -1102, -1102, -1102, -1102, -1102, -1102, + -1102, -1102, -1102, -1102, -1102, 541, -1102, -530 }; /* YYDEFGOTO[NTERM-NUM]. */ @@ -2902,28 +2914,28 @@ namespace yy parser::yydefgoto_[] = { -1, 44, 45, 46, 47, 48, 49, 50, 51, 52, - 152, 154, 156, 131, 53, 54, 55, 56, 362, 902, - 57, 324, 58, 228, 229, 59, 320, 321, 877, 878, - 60, 327, 1073, 1072, 1153, 881, 627, 628, 629, 630, - 436, 61, 62, 342, 343, 1163, 63, 1236, 728, 729, - 64, 460, 461, 65, 214, 215, 66, 456, 457, 67, - 463, 467, 110, 864, 780, 68, 306, 307, 308, 852, - 1138, 69, 317, 318, 70, 312, 313, 853, 1139, 71, - 259, 260, 72, 437, 438, 73, 1046, 1047, 74, 75, - 364, 365, 76, 77, 367, 78, 79, 80, 211, 212, - 566, 81, 82, 83, 84, 335, 336, 892, 893, 894, - 85, 134, 720, 86, 468, 469, 179, 180, 181, 87, - 203, 204, 88, 89, 513, 514, 776, 386, 387, 388, - 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, - 399, 400, 401, 880, 402, 403, 404, 182, 183, 184, - 185, 186, 268, 269, 405, 441, 272, 273, 274, 275, - 276, 277, 278, 279, 442, 281, 282, 283, 284, 285, - 443, 444, 445, 446, 447, 448, 406, 292, 293, 337, - 407, 408, 187, 188, 451, 189, 190, 299, 470, 191, - 192, 193, 194, 195, 196, 197, 207, 515, 516, 517, - 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, - 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, - 538, 539, 540, 541, 795, 1029, 789, 790 + 152, 154, 156, 131, 53, 54, 55, 56, 363, 906, + 57, 324, 58, 228, 229, 59, 320, 321, 881, 882, + 60, 327, 1079, 1078, 1161, 885, 629, 630, 631, 632, + 438, 61, 62, 342, 343, 1171, 63, 1250, 732, 733, + 64, 462, 463, 65, 214, 215, 66, 458, 459, 67, + 465, 469, 110, 868, 784, 68, 306, 307, 308, 856, + 1146, 69, 317, 318, 70, 312, 313, 857, 1147, 71, + 259, 260, 72, 439, 440, 73, 1052, 1053, 74, 75, + 365, 366, 76, 77, 368, 78, 79, 80, 211, 212, + 568, 81, 82, 83, 84, 335, 336, 896, 897, 898, + 85, 134, 724, 86, 470, 471, 179, 180, 181, 87, + 203, 204, 88, 89, 515, 516, 780, 387, 388, 389, + 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, + 400, 401, 402, 884, 403, 404, 405, 182, 183, 184, + 185, 186, 268, 269, 406, 443, 272, 273, 274, 275, + 276, 277, 278, 279, 444, 281, 282, 283, 284, 285, + 445, 446, 447, 448, 449, 450, 407, 292, 293, 337, + 408, 409, 187, 188, 453, 189, 190, 299, 472, 191, + 192, 193, 194, 195, 196, 197, 207, 517, 518, 519, + 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, + 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, + 540, 541, 542, 543, 799, 1035, 793, 794 }; /* YYTABLE[YYPACT[STATE-NUM]]. What to do in state STATE-NUM. If @@ -2933,452 +2945,488 @@ namespace yy const short int parser::yytable_[] = { - 128, 129, 582, 435, 216, 322, 263, 137, 262, 869, - 338, 385, 146, 149, 150, 261, 458, 270, 157, 645, - 646, 854, 264, 856, 294, 781, 339, 295, 859, 464, - 265, 657, 266, 267, 439, 439, 674, 280, 459, 799, - 205, 286, 287, 440, 440, 206, 879, 202, 289, 462, - 449, 449, 290, 450, 450, 291, 271, 296, 1036, 297, - 821, 288, 870, 1077, 868, 298, 1028, 979, 1140, 90, - 896, 827, 828, 829, 725, 417, 980, 787, 219, 92, - 836, 300, 1120, 726, 418, 641, 107, 1192, 300, 564, - 844, 1121, 96, 171, 1213, 101, 582, 419, 417, 846, - 581, 1154, 1155, 1156, 209, 420, 107, 418, 570, 620, - 843, 102, 622, 844, 332, 421, 104, 600, 631, 636, - 419, 575, 846, 721, 221, 99, 333, 576, 420, 132, - 848, 107, 222, 106, 100, 111, 107, 721, 421, 334, - 107, 887, 121, 301, 107, 565, 107, 133, 845, 671, - 301, 227, 107, 848, 887, 123, 847, 107, 1250, 931, - 319, 112, 340, 227, 107, 571, 938, 107, 378, 981, - 107, 640, 887, 107, 601, 632, 637, 340, 422, 423, - 722, 897, 210, 107, 424, 425, 426, 427, 428, 429, - 430, 431, 432, 851, 723, 113, 849, 641, 302, 433, - 363, 422, 423, 108, 109, 409, 888, 424, 425, 426, - 427, 428, 429, 430, 431, 432, 851, 990, 91, 888, - 1030, 1219, 433, 126, 127, 982, 220, 1193, 93, 103, - 788, 850, 727, 434, 105, 626, 898, 888, 417, 1015, - 1122, 1012, 1013, 1240, 1194, 1016, 1017, 418, 813, 1020, - 820, 1022, 1023, 817, 1227, 417, 434, 838, 626, 1076, - 419, 942, 889, 972, 418, 675, 890, 891, 420, 974, - 1058, 341, 1195, 1061, 988, 889, 871, 419, 421, 890, - 891, 144, 145, 300, 992, 420, 341, 147, 148, 1081, - 1131, 696, 697, 889, 412, 421, 117, 890, 891, 300, - 1133, 300, 224, 708, 114, 118, 94, 95, 122, 1082, - 225, 300, 899, 900, 901, 300, 676, 903, 904, 905, - 906, 907, 908, 909, 910, 911, 912, 1077, 914, 915, - 916, 917, 918, 919, 920, 921, 922, 923, 924, 474, - 925, 422, 423, 478, 482, 301, 929, 424, 425, 426, - 427, 428, 429, 430, 431, 432, 413, 300, 422, 423, - 300, 301, 433, 301, 424, 425, 426, 427, 428, 429, - 430, 431, 432, 301, 300, 300, 300, 301, 124, 433, - 709, 1176, 710, 711, 712, 713, 714, 300, 715, 716, - 717, 718, 300, 719, 328, 843, 434, 976, 626, 777, - 410, 475, 300, 300, 1074, 479, 483, 303, 340, 125, - 300, 414, 209, 434, 1200, 626, 453, 724, 465, 301, - 107, 884, 301, 300, 1243, 730, 732, 130, 471, 734, - 737, 844, 472, 845, 138, 861, 301, 301, 301, 567, - 846, 847, 872, 1069, 1148, 885, 774, 135, 806, 301, - 136, 139, 578, 329, 301, 775, 476, 807, 579, 1075, - 480, 484, 309, 330, 301, 301, 303, 304, 1141, 1201, - 1143, 848, 301, 151, 485, 606, 216, 1040, 1039, 1244, - 153, 849, 731, 733, 879, 301, 735, 738, 1085, 1158, - 210, 1042, 1048, 1101, 155, 227, 1136, 263, 208, 262, - 1070, 309, 778, 779, 1115, 305, 261, 205, 270, 1116, - 612, 162, 206, 264, 202, 294, 850, 341, 295, 1124, - 1125, 265, 310, 266, 267, 338, 304, 1178, 280, 862, - 863, 198, 286, 287, 851, 1051, 869, 869, 869, 289, - 1179, 339, 213, 290, 1052, 1086, 291, 271, 296, 1151, - 297, 814, 288, 1137, 818, 1185, 298, 1187, 1188, 314, - 311, 310, 945, 946, 305, 217, 1079, 948, 949, 950, - 951, 952, 953, 954, 955, 956, 957, 839, 959, 960, - 961, 962, 963, 964, 965, 966, 967, 968, 969, 870, - 870, 870, 97, 98, 977, 1212, 1098, 1214, 314, 311, - 978, 869, 1232, 666, 667, 458, 668, 617, 1220, 717, - 718, 369, 719, 417, 115, 116, 119, 120, 987, 315, - 439, 218, 418, 223, 1228, 140, 141, 459, 1231, 440, - 142, 143, 873, 158, 159, 419, 449, 226, 462, 450, - 227, 230, 1239, 420, 874, 319, 664, 665, 666, 667, - 875, 668, 1123, 421, 870, 323, 325, 316, 315, 1249, - 326, 363, 366, 415, 1252, 943, 411, 416, 455, 542, - 876, 163, 164, 165, 166, 167, 168, 169, 199, 473, - 477, 543, 200, 170, 544, 481, 545, 171, 715, 716, - 717, 718, 546, 719, 547, 555, 316, 548, 973, 975, - 549, 550, 551, 172, 552, 201, 553, 554, 556, 557, - 558, 989, 559, 560, 993, 561, 422, 423, 562, 563, - 569, 572, 424, 425, 426, 427, 428, 429, 430, 431, - 432, 573, 574, 580, 577, 584, 583, 433, 585, 586, - 1067, 587, 588, 589, 590, 591, 173, 174, 592, 593, - 594, 595, 1164, 1165, 1166, 1167, 1065, 596, 597, 160, - 598, 599, 602, 603, 175, 176, 1, 2, 604, 1170, - 605, 434, 608, 626, 609, 610, 3, 4, 5, 611, - 614, 616, 615, 6, 619, 231, 623, 7, 8, 9, - 624, 10, 1173, 11, 12, 13, 14, 177, 178, 1177, - 200, 625, 633, 635, 634, 638, 15, 642, 639, 16, - 643, 644, 677, 647, 678, 648, 649, 1189, 650, 232, - 233, 651, 17, 201, 652, 653, 234, 654, 679, 1197, - 655, 1198, 656, 235, 670, 18, 19, 20, 680, 582, - 658, 21, 659, 660, 661, 662, 663, 681, 664, 665, - 666, 667, 22, 668, 23, 682, 24, 25, 26, 27, - 28, 252, 683, 684, 685, 29, 30, 686, 687, 254, - 31, 32, 33, 34, 688, 690, 689, 692, 691, 1226, - 35, 36, 693, 37, 694, 256, 736, 38, 739, 695, - 39, 40, 41, 42, 698, 1235, 699, 257, 740, 741, - 742, 700, 743, 258, 913, 744, 745, 701, 746, 747, - 748, 749, 750, 1248, 702, 177, 178, 751, 752, 703, - 704, 1, 2, 753, 754, 755, 43, 756, 757, 758, - 705, 3, 4, 5, 706, 1149, 707, 759, 6, 760, - 761, 762, 7, 8, 9, 763, 10, 772, 11, 12, - 13, 14, 764, 417, 765, 766, 767, 768, 769, 770, - 771, 15, 418, 773, 16, 785, 782, 784, 786, 791, - 793, 1171, 1172, 803, 808, 419, 344, 17, 804, 792, - 794, 797, 798, 420, 800, 345, 802, 805, 809, 811, - 18, 19, 20, 421, 822, 815, 21, 812, 346, 816, - 823, 788, 819, 824, 825, 826, 347, 22, 830, 23, - 831, 24, 25, 26, 27, 28, 348, 1132, 832, 1134, - 29, 30, 833, 841, 834, 31, 32, 33, 34, 840, - 842, 855, 835, 857, 930, 35, 36, 858, 37, 866, - 865, 860, 38, 867, 882, 39, 40, 41, 42, 883, - 668, 926, 932, 895, 933, 934, 422, 423, 935, 936, - 937, 939, 424, 425, 426, 427, 428, 429, 430, 431, - 432, 944, 940, 941, 344, 997, 994, 433, 673, 349, - 350, 43, 719, 345, 998, 351, 352, 353, 354, 355, - 356, 357, 358, 359, 995, 999, 346, 344, 970, 996, - 360, 984, 986, 1000, 347, 1001, 345, 1002, 1003, 1004, - 1005, 434, 1006, 626, 348, 1007, 1008, 1009, 1010, 346, - 1011, 1014, 1018, 1019, 417, 1021, 1026, 347, 1024, 1027, - 1028, 1035, 1049, 418, 361, 1033, 1054, 348, 1034, 709, - 565, 710, 711, 712, 713, 714, 419, 715, 716, 717, - 718, 1032, 719, 1062, 420, 1050, 1037, 658, 1055, 659, - 660, 661, 662, 663, 421, 664, 665, 666, 667, 1045, - 668, 1038, 1056, 1041, 1053, 1043, 928, 349, 350, 1057, - 1059, 1060, 1063, 351, 352, 353, 354, 355, 356, 357, - 358, 359, 1064, 1066, 1068, 1071, 1078, 1080, 360, -1, - 349, 350, 1099, 958, 1119, 1127, 351, 352, 353, 354, - 355, 356, 357, 358, 359, 1126, 1104, 1128, 1129, 669, - 1135, 360, 1142, 1147, 1146, 1144, 1159, 422, 423, 1145, - 231, 1161, 361, 424, 425, 426, 427, 428, 429, 430, - 431, 432, 1162, 1175, 1168, 200, 170, 1180, 433, 1182, - 171, 1183, 1184, 1209, 1196, 361, 1211, 163, 164, 165, - 166, 167, 168, 169, 232, 233, 172, 1186, 201, 170, - 1215, 234, 1223, 171, 1191, 1216, 1217, 1224, 235, 236, - 237, 1225, 434, 238, 239, 1229, 240, 241, 1230, 172, - 242, 243, 244, 245, 246, 247, 248, 1199, 249, 250, - 251, 1233, 1234, 1241, 1238, 1242, 252, 1245, 1246, 173, - 174, 1247, 253, 368, 254, 1251, 161, 621, 1152, 255, - 454, 810, 985, 1118, 983, 607, 971, 175, 176, 783, - 256, 837, 173, 174, 369, 947, 370, 371, 613, 452, - 618, 1181, 257, 213, 672, 568, 1157, 796, 258, 886, - 175, 176, 0, 801, 1025, 331, 234, 991, 372, 373, - 177, 178, 1031, 235, 0, 0, 368, 0, 0, 658, - 328, 659, 660, 661, 662, 663, 0, 664, 665, 666, - 667, 0, 668, 177, 178, 0, 0, 369, 0, 370, - 371, 0, 0, 0, 0, 0, 374, 0, 375, 254, - 376, 333, 0, 0, 0, 0, 377, 0, 0, 234, - 378, 372, 373, 0, 334, 0, 235, 0, 379, 380, - 381, 0, 0, 328, 382, 383, 384, 0, 213, 0, - 0, 0, 0, 1087, 658, 466, 659, 660, 661, 662, - 663, 0, 664, 665, 666, 667, 0, 668, 0, 374, - 0, 375, 254, 376, 333, 0, 0, 0, 0, 377, - 0, 0, 0, 378, 0, 0, 0, 334, 0, 0, - 0, 379, 380, 381, 0, 0, 0, 382, 383, 384, - 658, 213, 659, 660, 661, 662, 663, 0, 664, 665, - 666, 667, 0, 668, 0, 0, 0, 658, 1088, 659, - 660, 661, 662, 663, 0, 664, 665, 666, 667, 658, - 668, 659, 660, 661, 662, 663, 0, 664, 665, 666, - 667, 658, 668, 659, 660, 661, 662, 663, 0, 664, - 665, 666, 667, 0, 668, 0, 0, 658, 0, 659, - 660, 661, 662, 663, 1089, 664, 665, 666, 667, 658, - 668, 659, 660, 661, 662, 663, 0, 664, 665, 666, - 667, 1090, 668, 0, 0, 0, 658, 0, 659, 660, - 661, 662, 663, 1091, 664, 665, 666, 667, 658, 668, - 659, 660, 661, 662, 663, 1092, 664, 665, 666, 667, - 0, 668, 0, 0, 658, 0, 659, 660, 661, 662, - 663, 1093, 664, 665, 666, 667, 709, 668, 710, 711, - 712, 713, 714, 1094, 715, 716, 717, 718, 709, 719, - 710, 711, 712, 713, 714, 0, 715, 716, 717, 718, - 1095, 719, 0, 0, 0, 709, 0, 710, 711, 712, - 713, 714, 1096, 715, 716, 717, 718, 0, 719, 0, - 0, 709, 0, 710, 711, 712, 713, 714, 1097, 715, - 716, 717, 718, 709, 719, 710, 711, 712, 713, 714, - 1105, 715, 716, 717, 718, 709, 719, 710, 711, 712, - 713, 714, 1106, 715, 716, 717, 718, 709, 719, 710, - 711, 712, 713, 714, 0, 715, 716, 717, 718, 1107, - 719, 709, 0, 710, 711, 712, 713, 714, 0, 715, - 716, 717, 718, 0, 719, 1108, 0, 0, 0, 0, - 709, 0, 710, 711, 712, 713, 714, 1109, 715, 716, - 717, 718, 709, 719, 710, 711, 712, 713, 714, 1110, - 715, 716, 717, 718, 658, 719, 659, 660, 661, 662, - 663, 1111, 664, 665, 666, 667, 0, 668, 658, 0, - 659, 660, 661, 662, 663, 1112, 664, 665, 666, 667, - 658, 668, 659, 660, 661, 662, 663, 0, 664, 665, - 666, 667, 0, 668, 1113, 0, 0, 0, 0, 658, - 0, 659, 660, 661, 662, 663, 1114, 664, 665, 666, - 667, 709, 668, 710, 711, 712, 713, 714, 1117, 715, - 716, 717, 718, 0, 719, 709, 0, 710, 711, 712, - 713, 714, 1174, 715, 716, 717, 718, 658, 719, 659, - 660, 661, 662, 663, 1203, 664, 665, 666, 667, 658, - 668, 659, 660, 661, 662, 663, 0, 664, 665, 666, - 667, 0, 668, 1204, 0, 0, 0, 0, 658, 0, - 659, 660, 661, 662, 663, 1206, 664, 665, 666, 667, - 0, 668, 658, 0, 659, 660, 661, 662, 663, 1207, - 664, 665, 666, 667, 658, 668, 659, 660, 661, 662, - 663, 1208, 664, 665, 666, 667, 0, 668, 0, 0, - 709, 927, 710, 711, 712, 713, 714, 0, 715, 716, - 717, 718, 0, 719, 0, 0, 0, 0, 0, 658, - 1044, 659, 660, 661, 662, 663, 0, 664, 665, 666, - 667, 0, 668, 0, 1100, 0, 0, 0, 0, 658, - 0, 659, 660, 661, 662, 663, 1130, 664, 665, 666, - 667, 0, 668, 0, 0, 709, 0, 710, 711, 712, - 713, 714, 1150, 715, 716, 717, 718, 658, 719, 659, - 660, 661, 662, 663, 0, 664, 665, 666, 667, 0, - 668, 1160, 658, 0, 659, 660, 661, 662, 663, 0, - 664, 665, 666, 667, 658, 668, 659, 660, 661, 662, - 663, 1169, 664, 665, 666, 667, 0, 668, 0, 0, - 658, 0, 659, 660, 661, 662, 663, 1190, 664, 665, - 666, 667, 658, 668, 659, 660, 661, 662, 663, 1202, - 664, 665, 666, 667, 0, 668, 0, 658, 0, 659, - 660, 661, 662, 663, 1205, 664, 665, 666, 667, 658, - 668, 659, 660, 661, 662, 663, 1210, 664, 665, 666, - 667, 0, 668, 0, 0, 709, 0, 710, 711, 712, - 713, 714, 1218, 715, 716, 717, 718, 0, 719, 0, - 0, 0, 0, 658, 1221, 659, 660, 661, 662, 663, - 1083, 664, 665, 666, 667, 0, 668, 0, 0, 1222, + 128, 129, 584, 322, 262, 386, 216, 137, 263, 873, + 338, 270, 146, 149, 150, 437, 294, 261, 157, 295, + 460, 785, 339, 466, 648, 649, 858, 874, 860, 264, + 441, 441, 265, 863, 202, 803, 660, 442, 442, 205, + 461, 677, 451, 451, 266, 452, 452, 267, 206, 1042, + 883, 464, 280, 286, 287, 271, 825, 289, 290, 291, + 872, 296, 297, 1148, 288, 298, 1083, 831, 832, 833, + 848, 418, 1034, 891, 985, 729, 840, 1128, 900, 850, + 419, 847, 96, 986, 730, 847, 1129, 791, 90, 1162, + 1163, 1164, 1225, 420, 300, 1202, 584, 1087, 92, 566, + 643, 421, 219, 848, 1080, 370, 418, 102, 572, 104, + 852, 422, 850, 209, 1210, 419, 602, 1088, 171, 849, + 99, 848, 101, 849, 117, 888, 877, 851, 420, 100, + 850, 851, 891, 118, 300, 132, 421, 107, 878, 892, + 569, 778, 891, 852, 879, 107, 422, 106, 107, 889, + 779, 340, 107, 133, 107, 567, 936, 301, 107, 1081, + 107, 852, 1266, 943, 880, 573, 423, 853, 107, 1211, + 107, 853, 107, 603, 855, 424, 425, 987, 107, 107, + 107, 426, 427, 428, 429, 430, 431, 432, 433, 434, + 901, 210, 1082, 379, 340, 893, 435, 301, 892, 894, + 895, 423, 854, 642, 865, 107, 854, 855, 892, 781, + 424, 425, 302, 1231, 643, 996, 426, 427, 428, 429, + 430, 431, 432, 433, 434, 855, 103, 1036, 105, 209, + 436, 435, 628, 988, 731, 1241, 1130, 1021, 91, 1018, + 1019, 792, 1203, 1022, 1023, 902, 1256, 1026, 93, 1028, + 1029, 220, 410, 418, 893, 817, 824, 111, 894, 895, + 341, 1205, 419, 821, 893, 436, 842, 628, 894, 895, + 947, 1204, 108, 109, 112, 420, 978, 1064, 126, 127, + 1067, 121, 418, 421, 94, 95, 144, 145, 147, 148, + 980, 419, 300, 422, 633, 638, 994, 998, 1139, 866, + 867, 1259, 123, 341, 420, 700, 701, 210, 875, 413, + 583, 300, 421, 782, 783, 113, 300, 712, 903, 904, + 905, 907, 422, 1141, 908, 909, 910, 911, 912, 913, + 914, 915, 916, 917, 1083, 919, 920, 921, 922, 923, + 924, 925, 926, 927, 928, 929, 300, 930, 423, 107, + 340, 634, 639, 934, 221, 301, 1260, 424, 425, 728, + 114, 227, 222, 426, 427, 428, 429, 430, 431, 432, + 433, 434, 414, 953, 301, 300, 1186, 423, 435, 301, + 303, 476, 480, 122, 484, 622, 424, 425, 300, 300, + 309, 725, 426, 427, 428, 429, 430, 431, 432, 433, + 434, 328, 300, 300, 725, 982, 300, 435, 300, 301, + 411, 300, 436, 713, 628, 714, 715, 716, 717, 718, + 300, 719, 720, 721, 722, 314, 723, 415, 124, 455, + 303, 624, 734, 674, 467, 125, 319, 736, 301, 608, + 304, 436, 130, 628, 477, 481, 135, 485, 726, 136, + 310, 301, 301, 300, 738, 300, 741, 1075, 1091, 341, + 329, 727, 1144, 138, 473, 301, 301, 810, 139, 301, + 330, 301, 309, 151, 301, 876, 811, 1149, 305, 1151, + 216, 614, 227, 301, 364, 315, 1045, 153, 311, 735, + 304, 155, 883, 474, 737, 162, 300, 262, 1166, 478, + 482, 263, 486, 202, 270, 198, 487, 1046, 205, 294, + 261, 739, 295, 742, 1076, 1092, 301, 206, 301, 1145, + 1048, 1054, 264, 316, 1108, 265, 1123, 338, 305, 1124, + 678, 1156, 310, 224, 97, 98, 208, 266, 1132, 339, + 267, 225, 873, 873, 873, 280, 286, 287, 271, 1159, + 289, 290, 291, 818, 296, 297, 822, 288, 298, 301, + 874, 874, 874, 1057, 669, 670, 1195, 671, 1197, 1198, + 311, 1133, 1058, 1188, 1085, 115, 116, 950, 951, 843, + 213, 679, 227, 954, 955, 956, 957, 958, 959, 960, + 961, 962, 963, 217, 965, 966, 967, 968, 969, 970, + 971, 972, 973, 974, 975, 1105, 119, 120, 1224, 314, + 1226, 873, 332, 460, 1189, 230, 993, 577, 619, 218, + 441, 1232, 580, 578, 333, 1246, 223, 442, 581, 874, + 140, 141, 451, 461, 983, 452, 418, 334, 226, 1242, + 984, 142, 143, 1245, 464, 419, 158, 159, 227, 163, + 164, 165, 166, 167, 168, 169, 319, 323, 420, 1255, + 231, 170, 1131, 325, 326, 171, 421, 364, 948, 315, + 721, 722, 367, 723, 412, 200, 422, 416, 1265, 417, + 457, 172, 544, 1268, 667, 668, 669, 670, 475, 671, + 479, 483, 545, 546, 232, 233, 558, 547, 201, 548, + 549, 234, 979, 981, 550, 418, 551, 316, 235, 552, + 553, 554, 555, 556, 419, 995, 557, 559, 999, 560, + 561, 562, 563, 565, 173, 174, 564, 420, 571, 574, + 575, 423, 576, 579, 582, 421, 252, 586, 585, 587, + 424, 425, 175, 176, 254, 422, 426, 427, 428, 429, + 430, 431, 432, 433, 434, 588, 1073, 589, 1071, 590, + 256, 435, 1172, 1173, 1174, 1175, 591, 1176, 719, 720, + 721, 722, 257, 723, 592, 177, 178, 593, 258, 594, + 1179, 595, 596, 597, 598, 599, 1182, 600, 601, 604, + 177, 178, 605, 606, 607, 436, 611, 628, 610, 612, + 423, 613, 616, 617, 1183, 618, 621, 625, 626, 424, + 425, 1187, 627, 635, 637, 426, 427, 428, 429, 430, + 431, 432, 433, 434, 640, 636, 644, 641, 645, 1199, + 435, 646, 647, 650, 651, 652, 653, 654, 655, 656, + 657, 1207, 680, 1208, 160, 584, 658, 659, 673, 681, + 682, 1, 2, 683, 684, 685, 686, 687, 688, 689, + 690, 3, 4, 5, 436, 691, 628, 692, 6, 693, + 694, 696, 7, 8, 9, 695, 10, 744, 11, 12, + 13, 14, 697, 698, 699, 740, 702, 743, 745, 1238, + 703, 15, 704, 1239, 16, 1240, 746, 705, 706, 707, + 708, 709, 747, 710, 711, 749, 750, 17, 751, 752, + 748, 1249, 753, 754, 755, 756, 757, 758, 759, 760, + 18, 19, 20, 761, 762, 763, 21, 764, 765, 766, + 767, 768, 769, 1264, 770, 771, 772, 22, 773, 23, + 774, 24, 25, 26, 27, 28, 775, 777, 789, 776, + 29, 30, 797, 1157, 808, 31, 32, 33, 34, 786, + 788, 790, 795, 796, 807, 35, 36, 801, 37, 798, + 802, 804, 38, 812, 806, 39, 40, 41, 42, 813, + 815, 826, 809, 816, 820, 827, 1, 2, 819, 828, + 1180, 1181, 792, 829, 830, 834, 3, 4, 5, 823, + 835, 836, 837, 6, 839, 845, 838, 7, 8, 9, + 846, 10, 43, 11, 12, 13, 14, 844, 869, 344, + 671, 871, 859, 1140, 935, 1142, 15, 931, 345, 16, + 870, 886, 937, 861, 862, 887, 938, 939, 864, 940, + 941, 346, 17, 942, 944, 945, 946, 949, 976, 347, + 990, 992, 1000, 1001, 1003, 18, 19, 20, 1004, 348, + 661, 21, 662, 663, 664, 665, 666, 1089, 667, 668, + 669, 670, 22, 671, 23, 1005, 24, 25, 26, 27, + 28, 1002, 899, 723, 1006, 29, 30, 344, 1007, 1008, + 31, 32, 33, 34, 1009, 1010, 345, 1011, 1012, 1013, + 35, 36, 1014, 37, 1015, 1016, 1017, 38, 1020, 346, + 39, 40, 41, 42, 349, 1024, 344, 347, 1025, 1027, + 1032, 1033, 676, 350, 351, 345, 1034, 348, 1041, 352, + 353, 354, 355, 356, 357, 358, 359, 360, 346, 1068, + 418, 1030, 1055, 1056, 361, 1060, 347, 43, 1039, 419, + 1038, 1061, 1040, 1062, 567, 661, 348, 662, 663, 664, + 665, 666, 420, 667, 668, 669, 670, 1043, 671, 1044, + 421, 1047, 1049, 1051, 1059, 1063, 1065, 1069, 362, 1072, + 422, 1074, 349, 1066, 1070, 1084, 1086, 1077, 1106, 1135, + 933, 350, 351, -1, 1134, 1137, 1127, 352, 353, 354, + 355, 356, 357, 358, 359, 360, 1111, 1136, 1150, 1143, + 1152, 349, 361, 1154, 1153, 1155, 1167, 1169, 1170, 918, + 350, 351, 1177, 1185, 1209, 1190, 352, 353, 354, 355, + 356, 357, 358, 359, 360, 423, 1192, 1193, 1194, 1196, + 1201, 361, 1221, 1206, 424, 425, 362, 231, 1235, 1228, + 426, 427, 428, 429, 430, 431, 432, 433, 434, 1223, + 1227, 1236, 200, 170, 1237, 435, 1229, 171, 1243, 1244, + 1254, 1258, 1247, 1257, 1262, 362, 1248, 1263, 1267, 161, + 623, 232, 233, 172, 1160, 201, 1126, 1261, 234, 456, + 991, 989, 620, 814, 952, 235, 236, 237, 977, 436, + 238, 239, 454, 240, 241, 787, 1191, 242, 243, 244, + 245, 246, 247, 248, 609, 249, 250, 251, 841, 675, + 570, 615, 1165, 252, 997, 800, 173, 174, 890, 253, + 1031, 254, 805, 331, 1037, 0, 255, 0, 0, 0, + 0, 0, 0, 0, 175, 176, 0, 256, 369, 0, + 163, 164, 165, 166, 167, 168, 169, 199, 0, 257, + 213, 200, 170, 0, 0, 258, 171, 0, 0, 370, + 0, 371, 372, 0, 0, 0, 0, 177, 178, 0, + 0, 0, 172, 0, 201, 0, 0, 0, 0, 0, + 0, 234, 0, 373, 374, 0, 0, 0, 235, 0, + 0, 0, 0, 0, 713, 328, 714, 715, 716, 717, + 718, 0, 719, 720, 721, 722, 0, 723, 0, 0, + 0, 0, 0, 0, 0, 173, 174, 0, 0, 0, + 0, 375, 0, 376, 254, 377, 333, 0, 0, 0, + 0, 378, 0, 175, 176, 379, 0, 0, 369, 334, + 0, 0, 0, 380, 381, 382, 0, 0, 0, 383, + 384, 385, 0, 213, 0, 0, 0, 0, 964, 370, + 468, 371, 372, 0, 0, 0, 177, 178, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 1237, 486, 487, 488, 489, 490, 491, 492, 493, - 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, - 504, 505, 506, 0, 0, 0, 507, 508, 0, 509, - 510, 511, 512, 658, 0, 659, 660, 661, 662, 663, - 1084, 664, 665, 666, 667, 709, 668, 710, 711, 712, - 713, 714, 1102, 715, 716, 717, 718, 709, 719, 710, - 711, 712, 713, 714, 1103, 715, 716, 717, 718, 658, - 719, 659, 660, 661, 662, 663, 0, 664, 665, 666, - 667, 0, 668 + 0, 234, 0, 373, 374, 0, 0, 0, 235, 0, + 0, 0, 0, 0, 661, 328, 662, 663, 664, 665, + 666, 0, 667, 668, 669, 670, 661, 671, 662, 663, + 664, 665, 666, 0, 667, 668, 669, 670, 0, 671, + 0, 375, 0, 376, 254, 377, 333, 0, 0, 0, + 0, 378, 0, 0, 0, 379, 0, 0, 0, 334, + 0, 0, 0, 380, 381, 382, 0, 0, 0, 383, + 384, 385, 0, 213, 0, 0, 0, 0, 1094, 0, + 0, 0, 0, 661, 0, 662, 663, 664, 665, 666, + 1095, 667, 668, 669, 670, 661, 671, 662, 663, 664, + 665, 666, 0, 667, 668, 669, 670, 661, 671, 662, + 663, 664, 665, 666, 0, 667, 668, 669, 670, 661, + 671, 662, 663, 664, 665, 666, 0, 667, 668, 669, + 670, 661, 671, 662, 663, 664, 665, 666, 0, 667, + 668, 669, 670, 0, 671, 0, 0, 1096, 0, 0, + 0, 0, 661, 0, 662, 663, 664, 665, 666, 1097, + 667, 668, 669, 670, 661, 671, 662, 663, 664, 665, + 666, 1098, 667, 668, 669, 670, 661, 671, 662, 663, + 664, 665, 666, 1099, 667, 668, 669, 670, 661, 671, + 662, 663, 664, 665, 666, 1100, 667, 668, 669, 670, + 713, 671, 714, 715, 716, 717, 718, 0, 719, 720, + 721, 722, 0, 723, 0, 0, 1101, 0, 0, 0, + 0, 713, 0, 714, 715, 716, 717, 718, 1102, 719, + 720, 721, 722, 713, 723, 714, 715, 716, 717, 718, + 1103, 719, 720, 721, 722, 713, 723, 714, 715, 716, + 717, 718, 1104, 719, 720, 721, 722, 713, 723, 714, + 715, 716, 717, 718, 1113, 719, 720, 721, 722, 713, + 723, 714, 715, 716, 717, 718, 0, 719, 720, 721, + 722, 0, 723, 0, 0, 1114, 0, 0, 0, 0, + 713, 0, 714, 715, 716, 717, 718, 1115, 719, 720, + 721, 722, 713, 723, 714, 715, 716, 717, 718, 1116, + 719, 720, 721, 722, 713, 723, 714, 715, 716, 717, + 718, 1117, 719, 720, 721, 722, 713, 723, 714, 715, + 716, 717, 718, 1118, 719, 720, 721, 722, 661, 723, + 662, 663, 664, 665, 666, 0, 667, 668, 669, 670, + 0, 671, 0, 0, 1119, 0, 0, 0, 0, 661, + 0, 662, 663, 664, 665, 666, 1120, 667, 668, 669, + 670, 661, 671, 662, 663, 664, 665, 666, 1121, 667, + 668, 669, 670, 661, 671, 662, 663, 664, 665, 666, + 1122, 667, 668, 669, 670, 713, 671, 714, 715, 716, + 717, 718, 1125, 719, 720, 721, 722, 713, 723, 714, + 715, 716, 717, 718, 0, 719, 720, 721, 722, 0, + 723, 0, 0, 1184, 0, 0, 0, 0, 661, 0, + 662, 663, 664, 665, 666, 1213, 667, 668, 669, 670, + 661, 671, 662, 663, 664, 665, 666, 1214, 667, 668, + 669, 670, 661, 671, 662, 663, 664, 665, 666, 1217, + 667, 668, 669, 670, 661, 671, 662, 663, 664, 665, + 666, 1218, 667, 668, 669, 670, 661, 671, 662, 663, + 664, 665, 666, 0, 667, 668, 669, 670, 0, 671, + 0, 0, 1220, 0, 0, 0, 0, 661, 0, 662, + 663, 664, 665, 666, 1251, 667, 668, 669, 670, 661, + 671, 662, 663, 664, 665, 666, 1252, 667, 668, 669, + 670, 0, 671, 0, 0, 0, 672, 0, 0, 0, + 0, 661, 0, 662, 663, 664, 665, 666, 932, 667, + 668, 669, 670, 713, 671, 714, 715, 716, 717, 718, + 0, 719, 720, 721, 722, 0, 723, 0, 0, 1050, + 0, 0, 0, 0, 661, 0, 662, 663, 664, 665, + 666, 1107, 667, 668, 669, 670, 661, 671, 662, 663, + 664, 665, 666, 0, 667, 668, 669, 670, 0, 671, + 0, 0, 0, 1138, 0, 0, 0, 0, 713, 0, + 714, 715, 716, 717, 718, 1158, 719, 720, 721, 722, + 661, 723, 662, 663, 664, 665, 666, 0, 667, 668, + 669, 670, 0, 671, 0, 0, 1168, 0, 0, 0, + 0, 661, 0, 662, 663, 664, 665, 666, 1178, 667, + 668, 669, 670, 661, 671, 662, 663, 664, 665, 666, + 0, 667, 668, 669, 670, 0, 671, 0, 0, 0, + 1200, 0, 0, 0, 0, 661, 0, 662, 663, 664, + 665, 666, 1212, 667, 668, 669, 670, 661, 671, 662, + 663, 664, 665, 666, 0, 667, 668, 669, 670, 0, + 671, 0, 0, 1216, 0, 0, 0, 0, 661, 0, + 662, 663, 664, 665, 666, 1222, 667, 668, 669, 670, + 661, 671, 662, 663, 664, 665, 666, 0, 667, 668, + 669, 670, 0, 671, 0, 0, 0, 1230, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 661, 1233, + 662, 663, 664, 665, 666, 1090, 667, 668, 669, 670, + 0, 671, 0, 713, 0, 714, 715, 716, 717, 718, + 1234, 719, 720, 721, 722, 0, 723, 0, 0, 0, + 0, 0, 1253, 488, 489, 490, 491, 492, 493, 494, + 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, + 505, 506, 507, 508, 0, 0, 0, 509, 510, 0, + 511, 512, 513, 514, 661, 0, 662, 663, 664, 665, + 666, 1093, 667, 668, 669, 670, 713, 671, 714, 715, + 716, 717, 718, 1109, 719, 720, 721, 722, 713, 723, + 714, 715, 716, 717, 718, 1110, 719, 720, 721, 722, + 661, 723, 662, 663, 664, 665, 666, 1112, 667, 668, + 669, 670, 661, 671, 662, 663, 664, 665, 666, 1215, + 667, 668, 669, 670, 661, 671, 662, 663, 664, 665, + 666, 1219, 667, 668, 669, 670, 661, 671, 662, 663, + 664, 665, 666, 0, 667, 668, 669, 670, 0, 671 }; /* YYCHECK. */ const short int parser::yycheck_[] = { - 24, 25, 228, 134, 98, 115, 109, 31, 109, 627, - 121, 127, 36, 37, 38, 109, 141, 109, 42, 349, - 350, 608, 109, 610, 109, 544, 121, 109, 615, 145, - 109, 361, 109, 109, 135, 136, 366, 109, 141, 558, - 93, 109, 109, 135, 136, 93, 631, 93, 109, 143, - 135, 136, 109, 135, 136, 109, 109, 109, 805, 109, - 584, 109, 627, 893, 31, 109, 51, 42, 1055, 51, - 33, 590, 591, 592, 42, 42, 51, 51, 51, 51, - 599, 82, 42, 51, 51, 342, 82, 31, 82, 144, - 42, 51, 199, 25, 1183, 51, 322, 64, 42, 51, - 31, 1071, 1072, 1073, 4, 72, 82, 51, 144, 31, - 6, 82, 31, 42, 79, 82, 82, 144, 144, 144, - 64, 201, 51, 144, 199, 33, 91, 207, 72, 33, - 82, 82, 207, 199, 42, 199, 82, 144, 82, 104, - 82, 82, 200, 144, 82, 200, 82, 51, 44, 31, - 144, 82, 82, 82, 82, 33, 52, 82, 1247, 678, - 82, 199, 22, 82, 82, 201, 685, 82, 100, 144, - 82, 31, 82, 82, 201, 201, 201, 22, 145, 146, - 201, 144, 82, 82, 151, 152, 153, 154, 155, 156, - 157, 158, 159, 145, 201, 199, 92, 454, 199, 166, - 82, 145, 146, 199, 200, 199, 147, 151, 152, 153, - 154, 155, 156, 157, 158, 159, 145, 736, 200, 147, - 205, 1191, 166, 199, 200, 200, 199, 31, 200, 200, - 204, 127, 200, 200, 200, 202, 199, 147, 42, 763, - 200, 760, 761, 1230, 31, 764, 765, 51, 199, 768, - 580, 770, 771, 199, 206, 42, 200, 199, 202, 200, - 64, 199, 203, 199, 51, 31, 207, 208, 72, 199, - 857, 131, 200, 860, 199, 203, 33, 64, 82, 207, - 208, 199, 200, 82, 199, 72, 131, 199, 200, 100, - 199, 422, 423, 203, 82, 82, 33, 207, 208, 82, - 199, 82, 199, 434, 199, 42, 199, 200, 199, 120, - 207, 82, 642, 643, 644, 82, 82, 647, 648, 649, - 650, 651, 652, 653, 654, 655, 656, 1157, 658, 659, - 660, 661, 662, 663, 664, 665, 666, 667, 668, 82, - 670, 145, 146, 82, 82, 144, 676, 151, 152, 153, - 154, 155, 156, 157, 158, 159, 144, 82, 145, 146, - 82, 144, 166, 144, 151, 152, 153, 154, 155, 156, - 157, 158, 159, 144, 82, 82, 82, 144, 199, 166, - 137, 1128, 139, 140, 141, 142, 143, 82, 145, 146, - 147, 148, 82, 150, 60, 6, 200, 727, 202, 42, - 199, 144, 82, 82, 144, 144, 144, 22, 22, 199, - 82, 199, 4, 200, 144, 202, 199, 31, 199, 144, - 82, 56, 144, 82, 144, 144, 144, 82, 199, 144, - 144, 42, 199, 44, 199, 51, 144, 144, 144, 31, - 51, 52, 199, 144, 31, 80, 42, 200, 42, 144, - 200, 33, 201, 119, 144, 51, 199, 51, 207, 199, - 199, 199, 22, 129, 144, 144, 22, 82, 1055, 199, - 1057, 82, 144, 82, 199, 31, 570, 199, 808, 199, - 82, 92, 201, 201, 1069, 144, 201, 201, 144, 1076, - 82, 199, 199, 199, 82, 82, 144, 600, 23, 600, - 201, 22, 145, 146, 199, 120, 600, 560, 600, 199, - 31, 199, 560, 600, 560, 600, 127, 131, 600, 199, - 199, 600, 82, 600, 600, 636, 82, 199, 600, 145, - 146, 199, 600, 600, 145, 42, 1154, 1155, 1156, 600, - 199, 636, 118, 600, 51, 201, 600, 600, 600, 1068, - 600, 575, 600, 201, 578, 1142, 600, 1144, 1145, 22, - 120, 82, 693, 694, 120, 42, 896, 698, 699, 700, - 701, 702, 703, 704, 705, 706, 707, 601, 709, 710, - 711, 712, 713, 714, 715, 716, 717, 718, 719, 1154, - 1155, 1156, 199, 200, 199, 1182, 926, 1184, 22, 120, - 205, 1219, 31, 147, 148, 730, 150, 31, 1195, 147, - 148, 24, 150, 42, 199, 200, 199, 200, 734, 82, - 721, 199, 51, 82, 1211, 199, 200, 730, 1215, 721, - 199, 200, 45, 199, 200, 64, 721, 82, 732, 721, - 82, 33, 1229, 72, 57, 82, 145, 146, 147, 148, - 63, 150, 982, 82, 1219, 38, 42, 120, 82, 1246, - 199, 82, 82, 51, 1251, 689, 126, 199, 204, 33, - 83, 9, 10, 11, 12, 13, 14, 15, 16, 126, - 126, 33, 20, 21, 33, 126, 33, 25, 145, 146, - 147, 148, 33, 150, 33, 144, 120, 33, 722, 723, - 33, 33, 33, 41, 33, 43, 33, 33, 201, 33, - 33, 735, 33, 144, 738, 201, 145, 146, 201, 82, - 33, 199, 151, 152, 153, 154, 155, 156, 157, 158, - 159, 199, 82, 33, 82, 33, 82, 166, 33, 33, - 871, 33, 33, 33, 33, 33, 84, 85, 33, 33, - 33, 33, 1082, 1083, 1084, 1085, 866, 33, 33, 0, - 33, 33, 33, 82, 102, 103, 7, 8, 82, 1099, - 82, 200, 144, 202, 82, 144, 17, 18, 19, 82, - 82, 82, 144, 24, 200, 5, 33, 28, 29, 30, - 201, 32, 1122, 34, 35, 36, 37, 135, 136, 1129, - 20, 199, 201, 33, 201, 82, 47, 200, 82, 50, - 200, 200, 33, 200, 33, 200, 200, 1147, 200, 39, - 40, 200, 63, 43, 200, 200, 46, 200, 33, 1159, - 200, 1161, 200, 53, 200, 76, 77, 78, 33, 1065, - 137, 82, 139, 140, 141, 142, 143, 33, 145, 146, - 147, 148, 93, 150, 95, 33, 97, 98, 99, 100, - 101, 81, 33, 33, 33, 106, 107, 33, 33, 89, - 111, 112, 113, 114, 33, 126, 201, 199, 82, 1209, - 121, 122, 200, 124, 200, 105, 33, 128, 126, 200, - 131, 132, 133, 134, 200, 1225, 200, 117, 82, 126, - 82, 200, 126, 123, 201, 82, 33, 200, 33, 33, - 33, 33, 33, 1243, 200, 135, 136, 33, 33, 200, - 200, 7, 8, 33, 33, 33, 167, 33, 33, 33, - 200, 17, 18, 19, 200, 1066, 200, 33, 24, 33, - 33, 33, 28, 29, 30, 33, 32, 201, 34, 35, - 36, 37, 33, 42, 33, 33, 33, 33, 33, 33, - 33, 47, 51, 144, 50, 82, 51, 51, 51, 51, - 82, 1102, 1103, 199, 33, 64, 42, 63, 200, 51, - 82, 51, 51, 72, 51, 51, 51, 82, 51, 199, - 76, 77, 78, 82, 51, 82, 82, 199, 64, 199, - 51, 204, 82, 51, 51, 51, 72, 93, 51, 95, - 51, 97, 98, 99, 100, 101, 82, 1041, 51, 1043, - 106, 107, 51, 33, 82, 111, 112, 113, 114, 82, - 144, 144, 200, 144, 51, 121, 122, 144, 124, 199, - 82, 144, 128, 82, 199, 131, 132, 133, 134, 199, - 150, 82, 51, 144, 51, 51, 145, 146, 51, 51, - 51, 51, 151, 152, 153, 154, 155, 156, 157, 158, - 159, 126, 51, 51, 42, 51, 126, 166, 144, 145, - 146, 167, 150, 51, 51, 151, 152, 153, 154, 155, - 156, 157, 158, 159, 126, 51, 64, 42, 199, 126, - 166, 199, 199, 51, 72, 51, 51, 51, 51, 51, - 51, 200, 51, 202, 82, 51, 51, 51, 51, 64, - 51, 51, 51, 51, 42, 51, 42, 72, 199, 42, - 51, 51, 82, 51, 200, 199, 144, 82, 199, 137, - 200, 139, 140, 141, 142, 143, 64, 145, 146, 147, - 148, 203, 150, 51, 72, 82, 201, 137, 144, 139, - 140, 141, 142, 143, 82, 145, 146, 147, 148, 206, - 150, 201, 82, 201, 199, 201, 144, 145, 146, 144, - 82, 199, 51, 151, 152, 153, 154, 155, 156, 157, - 158, 159, 201, 33, 33, 199, 82, 82, 166, 150, - 145, 146, 82, 201, 199, 82, 151, 152, 153, 154, - 155, 156, 157, 158, 159, 203, 201, 201, 33, 199, - 82, 166, 144, 33, 199, 144, 33, 145, 146, 144, - 5, 33, 200, 151, 152, 153, 154, 155, 156, 157, - 158, 159, 51, 51, 199, 20, 21, 206, 166, 144, - 25, 144, 144, 33, 201, 200, 144, 9, 10, 11, - 12, 13, 14, 15, 39, 40, 41, 199, 43, 21, - 144, 46, 51, 25, 199, 199, 199, 51, 53, 54, - 55, 130, 200, 58, 59, 144, 61, 62, 144, 41, - 65, 66, 67, 68, 69, 70, 71, 203, 73, 74, - 75, 201, 203, 199, 82, 51, 81, 206, 144, 84, - 85, 144, 87, 3, 89, 144, 44, 320, 1069, 94, - 138, 570, 732, 977, 730, 306, 721, 102, 103, 546, - 105, 600, 84, 85, 24, 695, 26, 27, 312, 136, - 317, 1136, 117, 118, 364, 211, 1074, 555, 123, 636, - 102, 103, -1, 560, 773, 120, 46, 737, 48, 49, - 135, 136, 789, 53, -1, -1, 3, -1, -1, 137, - 60, 139, 140, 141, 142, 143, -1, 145, 146, 147, - 148, -1, 150, 135, 136, -1, -1, 24, -1, 26, - 27, -1, -1, -1, -1, -1, 86, -1, 88, 89, - 90, 91, -1, -1, -1, -1, 96, -1, -1, 46, - 100, 48, 49, -1, 104, -1, 53, -1, 108, 109, - 110, -1, -1, 60, 114, 115, 116, -1, 118, -1, - -1, -1, -1, 201, 137, 125, 139, 140, 141, 142, - 143, -1, 145, 146, 147, 148, -1, 150, -1, 86, - -1, 88, 89, 90, 91, -1, -1, -1, -1, 96, - -1, -1, -1, 100, -1, -1, -1, 104, -1, -1, - -1, 108, 109, 110, -1, -1, -1, 114, 115, 116, - 137, 118, 139, 140, 141, 142, 143, -1, 145, 146, - 147, 148, -1, 150, -1, -1, -1, 137, 201, 139, - 140, 141, 142, 143, -1, 145, 146, 147, 148, 137, - 150, 139, 140, 141, 142, 143, -1, 145, 146, 147, - 148, 137, 150, 139, 140, 141, 142, 143, -1, 145, - 146, 147, 148, -1, 150, -1, -1, 137, -1, 139, - 140, 141, 142, 143, 201, 145, 146, 147, 148, 137, - 150, 139, 140, 141, 142, 143, -1, 145, 146, 147, - 148, 201, 150, -1, -1, -1, 137, -1, 139, 140, - 141, 142, 143, 201, 145, 146, 147, 148, 137, 150, - 139, 140, 141, 142, 143, 201, 145, 146, 147, 148, - -1, 150, -1, -1, 137, -1, 139, 140, 141, 142, - 143, 201, 145, 146, 147, 148, 137, 150, 139, 140, - 141, 142, 143, 201, 145, 146, 147, 148, 137, 150, - 139, 140, 141, 142, 143, -1, 145, 146, 147, 148, - 201, 150, -1, -1, -1, 137, -1, 139, 140, 141, - 142, 143, 201, 145, 146, 147, 148, -1, 150, -1, - -1, 137, -1, 139, 140, 141, 142, 143, 201, 145, - 146, 147, 148, 137, 150, 139, 140, 141, 142, 143, - 201, 145, 146, 147, 148, 137, 150, 139, 140, 141, - 142, 143, 201, 145, 146, 147, 148, 137, 150, 139, - 140, 141, 142, 143, -1, 145, 146, 147, 148, 201, - 150, 137, -1, 139, 140, 141, 142, 143, -1, 145, - 146, 147, 148, -1, 150, 201, -1, -1, -1, -1, - 137, -1, 139, 140, 141, 142, 143, 201, 145, 146, - 147, 148, 137, 150, 139, 140, 141, 142, 143, 201, - 145, 146, 147, 148, 137, 150, 139, 140, 141, 142, - 143, 201, 145, 146, 147, 148, -1, 150, 137, -1, - 139, 140, 141, 142, 143, 201, 145, 146, 147, 148, - 137, 150, 139, 140, 141, 142, 143, -1, 145, 146, - 147, 148, -1, 150, 201, -1, -1, -1, -1, 137, - -1, 139, 140, 141, 142, 143, 201, 145, 146, 147, - 148, 137, 150, 139, 140, 141, 142, 143, 201, 145, - 146, 147, 148, -1, 150, 137, -1, 139, 140, 141, - 142, 143, 201, 145, 146, 147, 148, 137, 150, 139, - 140, 141, 142, 143, 201, 145, 146, 147, 148, 137, - 150, 139, 140, 141, 142, 143, -1, 145, 146, 147, - 148, -1, 150, 201, -1, -1, -1, -1, 137, -1, - 139, 140, 141, 142, 143, 201, 145, 146, 147, 148, - -1, 150, 137, -1, 139, 140, 141, 142, 143, 201, - 145, 146, 147, 148, 137, 150, 139, 140, 141, 142, - 143, 201, 145, 146, 147, 148, -1, 150, -1, -1, - 137, 199, 139, 140, 141, 142, 143, -1, 145, 146, - 147, 148, -1, 150, -1, -1, -1, -1, -1, 137, - 199, 139, 140, 141, 142, 143, -1, 145, 146, 147, - 148, -1, 150, -1, 199, -1, -1, -1, -1, 137, - -1, 139, 140, 141, 142, 143, 199, 145, 146, 147, - 148, -1, 150, -1, -1, 137, -1, 139, 140, 141, - 142, 143, 199, 145, 146, 147, 148, 137, 150, 139, - 140, 141, 142, 143, -1, 145, 146, 147, 148, -1, - 150, 199, 137, -1, 139, 140, 141, 142, 143, -1, - 145, 146, 147, 148, 137, 150, 139, 140, 141, 142, - 143, 199, 145, 146, 147, 148, -1, 150, -1, -1, - 137, -1, 139, 140, 141, 142, 143, 199, 145, 146, - 147, 148, 137, 150, 139, 140, 141, 142, 143, 199, - 145, 146, 147, 148, -1, 150, -1, 137, -1, 139, - 140, 141, 142, 143, 199, 145, 146, 147, 148, 137, - 150, 139, 140, 141, 142, 143, 199, 145, 146, 147, - 148, -1, 150, -1, -1, 137, -1, 139, 140, 141, - 142, 143, 199, 145, 146, 147, 148, -1, 150, -1, - -1, -1, -1, 137, 199, 139, 140, 141, 142, 143, - 144, 145, 146, 147, 148, -1, 150, -1, -1, 199, + 24, 25, 228, 115, 109, 127, 98, 31, 109, 629, + 121, 109, 36, 37, 38, 134, 109, 109, 42, 109, + 141, 546, 121, 145, 350, 351, 610, 629, 612, 109, + 135, 136, 109, 617, 93, 560, 362, 135, 136, 93, + 141, 367, 135, 136, 109, 135, 136, 109, 93, 809, + 633, 143, 109, 109, 109, 109, 586, 109, 109, 109, + 31, 109, 109, 1061, 109, 109, 897, 592, 593, 594, + 42, 42, 51, 82, 42, 42, 601, 42, 33, 51, + 51, 6, 200, 51, 51, 6, 51, 51, 51, 1077, + 1078, 1079, 1193, 64, 82, 31, 322, 100, 51, 145, + 342, 72, 51, 42, 145, 24, 42, 82, 145, 82, + 82, 82, 51, 4, 145, 51, 145, 120, 25, 44, + 33, 42, 51, 44, 33, 56, 45, 52, 64, 42, + 51, 52, 82, 42, 82, 33, 72, 82, 57, 148, + 31, 42, 82, 82, 63, 82, 82, 200, 82, 80, + 51, 22, 82, 51, 82, 201, 681, 145, 82, 200, + 82, 82, 1263, 688, 83, 202, 137, 92, 82, 200, + 82, 92, 82, 202, 146, 146, 147, 145, 82, 82, + 82, 152, 153, 154, 155, 156, 157, 158, 159, 160, + 145, 82, 201, 100, 22, 204, 167, 145, 148, 208, + 209, 137, 127, 31, 51, 82, 127, 146, 148, 42, + 146, 147, 200, 1201, 456, 740, 152, 153, 154, 155, + 156, 157, 158, 159, 160, 146, 201, 206, 201, 4, + 201, 167, 203, 201, 201, 207, 201, 767, 201, 764, + 765, 205, 31, 768, 769, 200, 1244, 772, 201, 774, + 775, 200, 200, 42, 204, 200, 582, 200, 208, 209, + 131, 201, 51, 200, 204, 201, 200, 203, 208, 209, + 200, 31, 200, 201, 200, 64, 200, 861, 200, 201, + 864, 201, 42, 72, 200, 201, 200, 201, 200, 201, + 200, 51, 82, 82, 145, 145, 200, 200, 200, 146, + 147, 145, 33, 131, 64, 424, 425, 82, 33, 82, + 31, 82, 72, 146, 147, 200, 82, 436, 644, 645, + 646, 647, 82, 200, 650, 651, 652, 653, 654, 655, + 656, 657, 658, 659, 1165, 661, 662, 663, 664, 665, + 666, 667, 668, 669, 670, 671, 82, 673, 137, 82, + 22, 202, 202, 679, 200, 145, 200, 146, 147, 31, + 200, 82, 208, 152, 153, 154, 155, 156, 157, 158, + 159, 160, 145, 699, 145, 82, 1136, 137, 167, 145, + 22, 82, 82, 200, 82, 31, 146, 147, 82, 82, + 22, 145, 152, 153, 154, 155, 156, 157, 158, 159, + 160, 60, 82, 82, 145, 731, 82, 167, 82, 145, + 200, 82, 201, 138, 203, 140, 141, 142, 143, 144, + 82, 146, 147, 148, 149, 22, 151, 200, 200, 200, + 22, 31, 145, 31, 200, 200, 82, 145, 145, 31, + 82, 201, 82, 203, 145, 145, 201, 145, 202, 201, + 82, 145, 145, 82, 145, 82, 145, 145, 145, 131, + 119, 202, 145, 200, 200, 145, 145, 42, 33, 145, + 129, 145, 22, 82, 145, 200, 51, 1061, 120, 1063, + 572, 31, 82, 145, 82, 82, 812, 82, 120, 202, + 82, 82, 1075, 200, 202, 200, 82, 602, 1082, 200, + 200, 602, 200, 562, 602, 200, 200, 200, 562, 602, + 602, 202, 602, 202, 202, 202, 145, 562, 145, 202, + 200, 200, 602, 120, 200, 602, 200, 638, 120, 200, + 31, 31, 82, 200, 200, 201, 23, 602, 200, 638, + 602, 208, 1162, 1163, 1164, 602, 602, 602, 602, 1074, + 602, 602, 602, 577, 602, 602, 580, 602, 602, 145, + 1162, 1163, 1164, 42, 148, 149, 1150, 151, 1152, 1153, + 120, 200, 51, 200, 900, 200, 201, 696, 697, 603, + 118, 82, 82, 702, 703, 704, 705, 706, 707, 708, + 709, 710, 711, 42, 713, 714, 715, 716, 717, 718, + 719, 720, 721, 722, 723, 931, 200, 201, 1192, 22, + 1194, 1231, 79, 734, 200, 33, 738, 202, 31, 200, + 725, 1205, 202, 208, 91, 31, 82, 725, 208, 1231, + 200, 201, 725, 734, 200, 725, 42, 104, 82, 1223, + 206, 200, 201, 1227, 736, 51, 200, 201, 82, 9, + 10, 11, 12, 13, 14, 15, 82, 38, 64, 1243, + 5, 21, 988, 42, 200, 25, 72, 82, 692, 82, + 148, 149, 82, 151, 126, 20, 82, 51, 1262, 200, + 205, 41, 33, 1267, 146, 147, 148, 149, 126, 151, + 126, 126, 33, 33, 39, 40, 202, 33, 43, 33, + 33, 46, 726, 727, 33, 42, 33, 120, 53, 33, + 33, 33, 33, 33, 51, 739, 145, 33, 742, 33, + 33, 145, 202, 82, 84, 85, 202, 64, 33, 200, + 200, 137, 82, 82, 33, 72, 81, 33, 82, 33, + 146, 147, 102, 103, 89, 82, 152, 153, 154, 155, + 156, 157, 158, 159, 160, 33, 875, 33, 870, 33, + 105, 167, 1088, 1089, 1090, 1091, 33, 1093, 146, 147, + 148, 149, 117, 151, 33, 135, 136, 33, 123, 33, + 1106, 33, 33, 33, 33, 33, 1112, 33, 33, 33, + 135, 136, 82, 82, 82, 201, 82, 203, 145, 145, + 137, 82, 82, 145, 1130, 82, 201, 33, 202, 146, + 147, 1137, 200, 202, 33, 152, 153, 154, 155, 156, + 157, 158, 159, 160, 82, 202, 201, 82, 201, 1155, + 167, 201, 201, 201, 201, 201, 201, 201, 201, 201, + 201, 1167, 33, 1169, 0, 1071, 201, 201, 201, 33, + 33, 7, 8, 33, 33, 33, 33, 33, 33, 33, + 33, 17, 18, 19, 201, 33, 203, 202, 24, 126, + 82, 201, 28, 29, 30, 200, 32, 82, 34, 35, + 36, 37, 201, 201, 201, 33, 201, 126, 126, 1215, + 201, 47, 201, 1219, 50, 1221, 82, 201, 201, 201, + 201, 201, 126, 201, 201, 33, 33, 63, 33, 33, + 82, 1237, 33, 33, 33, 33, 33, 33, 33, 33, + 76, 77, 78, 33, 33, 33, 82, 33, 33, 33, + 33, 33, 33, 1259, 33, 33, 33, 93, 33, 95, + 33, 97, 98, 99, 100, 101, 33, 145, 82, 202, + 106, 107, 82, 1072, 201, 111, 112, 113, 114, 51, + 51, 51, 51, 51, 200, 121, 122, 51, 124, 82, + 51, 51, 128, 33, 51, 131, 132, 133, 134, 51, + 200, 51, 82, 200, 200, 51, 7, 8, 82, 51, + 1109, 1110, 205, 51, 51, 51, 17, 18, 19, 82, + 51, 51, 51, 24, 201, 33, 82, 28, 29, 30, + 145, 32, 168, 34, 35, 36, 37, 82, 82, 42, + 151, 82, 145, 1047, 51, 1049, 47, 82, 51, 50, + 200, 200, 51, 145, 145, 200, 51, 51, 145, 51, + 51, 64, 63, 51, 51, 51, 51, 126, 200, 72, + 200, 200, 126, 126, 51, 76, 77, 78, 51, 82, + 138, 82, 140, 141, 142, 143, 144, 145, 146, 147, + 148, 149, 93, 151, 95, 51, 97, 98, 99, 100, + 101, 126, 145, 151, 51, 106, 107, 42, 51, 51, + 111, 112, 113, 114, 51, 51, 51, 51, 51, 51, + 121, 122, 51, 124, 51, 51, 51, 128, 51, 64, + 131, 132, 133, 134, 137, 51, 42, 72, 51, 51, + 42, 42, 145, 146, 147, 51, 51, 82, 51, 152, + 153, 154, 155, 156, 157, 158, 159, 160, 64, 51, + 42, 200, 82, 82, 167, 145, 72, 168, 200, 51, + 204, 145, 200, 82, 201, 138, 82, 140, 141, 142, + 143, 144, 64, 146, 147, 148, 149, 202, 151, 202, + 72, 202, 202, 207, 200, 145, 82, 51, 201, 33, + 82, 33, 137, 200, 202, 82, 82, 200, 82, 82, + 145, 146, 147, 151, 204, 33, 200, 152, 153, 154, + 155, 156, 157, 158, 159, 160, 202, 202, 145, 82, + 145, 137, 167, 200, 145, 33, 33, 33, 51, 202, + 146, 147, 200, 51, 204, 207, 152, 153, 154, 155, + 156, 157, 158, 159, 160, 137, 145, 145, 145, 200, + 200, 167, 33, 202, 146, 147, 201, 5, 51, 200, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 145, + 145, 51, 20, 21, 130, 167, 200, 25, 145, 145, + 82, 51, 202, 200, 145, 201, 204, 145, 145, 44, + 320, 39, 40, 41, 1075, 43, 983, 207, 46, 138, + 736, 734, 317, 572, 698, 53, 54, 55, 725, 201, + 58, 59, 136, 61, 62, 548, 1144, 65, 66, 67, + 68, 69, 70, 71, 306, 73, 74, 75, 602, 365, + 211, 312, 1080, 81, 741, 557, 84, 85, 638, 87, + 777, 89, 562, 120, 793, -1, 94, -1, -1, -1, + -1, -1, -1, -1, 102, 103, -1, 105, 3, -1, + 9, 10, 11, 12, 13, 14, 15, 16, -1, 117, + 118, 20, 21, -1, -1, 123, 25, -1, -1, 24, + -1, 26, 27, -1, -1, -1, -1, 135, 136, -1, + -1, -1, 41, -1, 43, -1, -1, -1, -1, -1, + -1, 46, -1, 48, 49, -1, -1, -1, 53, -1, + -1, -1, -1, -1, 138, 60, 140, 141, 142, 143, + 144, -1, 146, 147, 148, 149, -1, 151, -1, -1, + -1, -1, -1, -1, -1, 84, 85, -1, -1, -1, + -1, 86, -1, 88, 89, 90, 91, -1, -1, -1, + -1, 96, -1, 102, 103, 100, -1, -1, 3, 104, + -1, -1, -1, 108, 109, 110, -1, -1, -1, 114, + 115, 116, -1, 118, -1, -1, -1, -1, 202, 24, + 125, 26, 27, -1, -1, -1, 135, 136, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 199, 168, 169, 170, 171, 172, 173, 174, 175, + -1, 46, -1, 48, 49, -1, -1, -1, 53, -1, + -1, -1, -1, -1, 138, 60, 140, 141, 142, 143, + 144, -1, 146, 147, 148, 149, 138, 151, 140, 141, + 142, 143, 144, -1, 146, 147, 148, 149, -1, 151, + -1, 86, -1, 88, 89, 90, 91, -1, -1, -1, + -1, 96, -1, -1, -1, 100, -1, -1, -1, 104, + -1, -1, -1, 108, 109, 110, -1, -1, -1, 114, + 115, 116, -1, 118, -1, -1, -1, -1, 202, -1, + -1, -1, -1, 138, -1, 140, 141, 142, 143, 144, + 202, 146, 147, 148, 149, 138, 151, 140, 141, 142, + 143, 144, -1, 146, 147, 148, 149, 138, 151, 140, + 141, 142, 143, 144, -1, 146, 147, 148, 149, 138, + 151, 140, 141, 142, 143, 144, -1, 146, 147, 148, + 149, 138, 151, 140, 141, 142, 143, 144, -1, 146, + 147, 148, 149, -1, 151, -1, -1, 202, -1, -1, + -1, -1, 138, -1, 140, 141, 142, 143, 144, 202, + 146, 147, 148, 149, 138, 151, 140, 141, 142, 143, + 144, 202, 146, 147, 148, 149, 138, 151, 140, 141, + 142, 143, 144, 202, 146, 147, 148, 149, 138, 151, + 140, 141, 142, 143, 144, 202, 146, 147, 148, 149, + 138, 151, 140, 141, 142, 143, 144, -1, 146, 147, + 148, 149, -1, 151, -1, -1, 202, -1, -1, -1, + -1, 138, -1, 140, 141, 142, 143, 144, 202, 146, + 147, 148, 149, 138, 151, 140, 141, 142, 143, 144, + 202, 146, 147, 148, 149, 138, 151, 140, 141, 142, + 143, 144, 202, 146, 147, 148, 149, 138, 151, 140, + 141, 142, 143, 144, 202, 146, 147, 148, 149, 138, + 151, 140, 141, 142, 143, 144, -1, 146, 147, 148, + 149, -1, 151, -1, -1, 202, -1, -1, -1, -1, + 138, -1, 140, 141, 142, 143, 144, 202, 146, 147, + 148, 149, 138, 151, 140, 141, 142, 143, 144, 202, + 146, 147, 148, 149, 138, 151, 140, 141, 142, 143, + 144, 202, 146, 147, 148, 149, 138, 151, 140, 141, + 142, 143, 144, 202, 146, 147, 148, 149, 138, 151, + 140, 141, 142, 143, 144, -1, 146, 147, 148, 149, + -1, 151, -1, -1, 202, -1, -1, -1, -1, 138, + -1, 140, 141, 142, 143, 144, 202, 146, 147, 148, + 149, 138, 151, 140, 141, 142, 143, 144, 202, 146, + 147, 148, 149, 138, 151, 140, 141, 142, 143, 144, + 202, 146, 147, 148, 149, 138, 151, 140, 141, 142, + 143, 144, 202, 146, 147, 148, 149, 138, 151, 140, + 141, 142, 143, 144, -1, 146, 147, 148, 149, -1, + 151, -1, -1, 202, -1, -1, -1, -1, 138, -1, + 140, 141, 142, 143, 144, 202, 146, 147, 148, 149, + 138, 151, 140, 141, 142, 143, 144, 202, 146, 147, + 148, 149, 138, 151, 140, 141, 142, 143, 144, 202, + 146, 147, 148, 149, 138, 151, 140, 141, 142, 143, + 144, 202, 146, 147, 148, 149, 138, 151, 140, 141, + 142, 143, 144, -1, 146, 147, 148, 149, -1, 151, + -1, -1, 202, -1, -1, -1, -1, 138, -1, 140, + 141, 142, 143, 144, 202, 146, 147, 148, 149, 138, + 151, 140, 141, 142, 143, 144, 202, 146, 147, 148, + 149, -1, 151, -1, -1, -1, 200, -1, -1, -1, + -1, 138, -1, 140, 141, 142, 143, 144, 200, 146, + 147, 148, 149, 138, 151, 140, 141, 142, 143, 144, + -1, 146, 147, 148, 149, -1, 151, -1, -1, 200, + -1, -1, -1, -1, 138, -1, 140, 141, 142, 143, + 144, 200, 146, 147, 148, 149, 138, 151, 140, 141, + 142, 143, 144, -1, 146, 147, 148, 149, -1, 151, + -1, -1, -1, 200, -1, -1, -1, -1, 138, -1, + 140, 141, 142, 143, 144, 200, 146, 147, 148, 149, + 138, 151, 140, 141, 142, 143, 144, -1, 146, 147, + 148, 149, -1, 151, -1, -1, 200, -1, -1, -1, + -1, 138, -1, 140, 141, 142, 143, 144, 200, 146, + 147, 148, 149, 138, 151, 140, 141, 142, 143, 144, + -1, 146, 147, 148, 149, -1, 151, -1, -1, -1, + 200, -1, -1, -1, -1, 138, -1, 140, 141, 142, + 143, 144, 200, 146, 147, 148, 149, 138, 151, 140, + 141, 142, 143, 144, -1, 146, 147, 148, 149, -1, + 151, -1, -1, 200, -1, -1, -1, -1, 138, -1, + 140, 141, 142, 143, 144, 200, 146, 147, 148, 149, + 138, 151, 140, 141, 142, 143, 144, -1, 146, 147, + 148, 149, -1, 151, -1, -1, -1, 200, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 138, 200, + 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, + -1, 151, -1, 138, -1, 140, 141, 142, 143, 144, + 200, 146, 147, 148, 149, -1, 151, -1, -1, -1, + -1, -1, 200, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, - 186, 187, 188, -1, -1, -1, 192, 193, -1, 195, - 196, 197, 198, 137, -1, 139, 140, 141, 142, 143, - 144, 145, 146, 147, 148, 137, 150, 139, 140, 141, - 142, 143, 144, 145, 146, 147, 148, 137, 150, 139, - 140, 141, 142, 143, 144, 145, 146, 147, 148, 137, - 150, 139, 140, 141, 142, 143, -1, 145, 146, 147, - 148, -1, 150 + 186, 187, 188, 189, -1, -1, -1, 193, 194, -1, + 196, 197, 198, 199, 138, -1, 140, 141, 142, 143, + 144, 145, 146, 147, 148, 149, 138, 151, 140, 141, + 142, 143, 144, 145, 146, 147, 148, 149, 138, 151, + 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, + 138, 151, 140, 141, 142, 143, 144, 145, 146, 147, + 148, 149, 138, 151, 140, 141, 142, 143, 144, 145, + 146, 147, 148, 149, 138, 151, 140, 141, 142, 143, + 144, 145, 146, 147, 148, 149, 138, 151, 140, 141, + 142, 143, 144, -1, 146, 147, 148, 149, -1, 151 }; /* STOS_[STATE-NUM] -- The (internal number of the) accessing @@ -3390,128 +3438,129 @@ namespace yy 32, 34, 35, 36, 37, 47, 50, 63, 76, 77, 78, 82, 93, 95, 97, 98, 99, 100, 101, 106, 107, 111, 112, 113, 114, 121, 122, 124, 128, 131, - 132, 133, 134, 167, 210, 211, 212, 213, 214, 215, - 216, 217, 218, 223, 224, 225, 226, 229, 231, 234, - 239, 250, 251, 255, 259, 262, 265, 268, 274, 280, - 283, 288, 291, 294, 297, 298, 301, 302, 304, 305, - 306, 310, 311, 312, 313, 319, 322, 328, 331, 332, - 51, 200, 51, 200, 199, 200, 199, 199, 200, 33, - 42, 51, 82, 200, 82, 200, 199, 82, 199, 200, - 271, 199, 199, 199, 199, 199, 200, 33, 42, 199, - 200, 200, 199, 33, 199, 199, 199, 200, 271, 271, - 82, 222, 33, 51, 320, 200, 200, 271, 199, 33, - 199, 200, 199, 200, 199, 200, 271, 199, 200, 271, - 271, 82, 219, 82, 220, 82, 221, 271, 199, 200, - 0, 211, 199, 9, 10, 11, 12, 13, 14, 15, - 21, 25, 41, 84, 85, 102, 103, 135, 136, 325, - 326, 327, 356, 357, 358, 359, 360, 391, 392, 394, - 395, 398, 399, 400, 401, 402, 403, 404, 199, 16, - 20, 43, 326, 329, 330, 364, 381, 405, 23, 4, - 82, 307, 308, 118, 263, 264, 337, 42, 199, 51, - 199, 199, 207, 82, 199, 207, 82, 82, 232, 233, + 132, 133, 134, 168, 211, 212, 213, 214, 215, 216, + 217, 218, 219, 224, 225, 226, 227, 230, 232, 235, + 240, 251, 252, 256, 260, 263, 266, 269, 275, 281, + 284, 289, 292, 295, 298, 299, 302, 303, 305, 306, + 307, 311, 312, 313, 314, 320, 323, 329, 332, 333, + 51, 201, 51, 201, 200, 201, 200, 200, 201, 33, + 42, 51, 82, 201, 82, 201, 200, 82, 200, 201, + 272, 200, 200, 200, 200, 200, 201, 33, 42, 200, + 201, 201, 200, 33, 200, 200, 200, 201, 272, 272, + 82, 223, 33, 51, 321, 201, 201, 272, 200, 33, + 200, 201, 200, 201, 200, 201, 272, 200, 201, 272, + 272, 82, 220, 82, 221, 82, 222, 272, 200, 201, + 0, 212, 200, 9, 10, 11, 12, 13, 14, 15, + 21, 25, 41, 84, 85, 102, 103, 135, 136, 326, + 327, 328, 357, 358, 359, 360, 361, 392, 393, 395, + 396, 399, 400, 401, 402, 403, 404, 405, 200, 16, + 20, 43, 327, 330, 331, 365, 382, 406, 23, 4, + 82, 308, 309, 118, 264, 265, 338, 42, 200, 51, + 200, 200, 208, 82, 200, 208, 82, 82, 233, 234, 33, 5, 39, 40, 46, 53, 54, 55, 58, 59, 61, 62, 65, 66, 67, 68, 69, 70, 71, 73, - 74, 75, 81, 87, 89, 94, 105, 117, 123, 289, - 290, 337, 347, 356, 357, 358, 359, 360, 361, 362, - 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, - 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, - 383, 384, 386, 387, 391, 392, 393, 394, 395, 396, - 82, 144, 199, 22, 82, 120, 275, 276, 277, 22, - 82, 120, 284, 285, 22, 82, 120, 281, 282, 82, - 235, 236, 232, 38, 230, 42, 199, 240, 60, 119, - 129, 339, 79, 91, 104, 314, 315, 388, 389, 390, - 22, 131, 252, 253, 42, 51, 64, 72, 82, 145, - 146, 151, 152, 153, 154, 155, 156, 157, 158, 159, - 166, 200, 227, 82, 299, 300, 82, 303, 3, 24, - 26, 27, 48, 49, 86, 88, 90, 96, 100, 108, - 109, 110, 114, 115, 116, 270, 336, 337, 338, 339, + 74, 75, 81, 87, 89, 94, 105, 117, 123, 290, + 291, 338, 348, 357, 358, 359, 360, 361, 362, 363, + 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, + 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, + 384, 385, 387, 388, 392, 393, 394, 395, 396, 397, + 82, 145, 200, 22, 82, 120, 276, 277, 278, 22, + 82, 120, 285, 286, 22, 82, 120, 282, 283, 82, + 236, 237, 233, 38, 231, 42, 200, 241, 60, 119, + 129, 340, 79, 91, 104, 315, 316, 389, 390, 391, + 22, 131, 253, 254, 42, 51, 64, 72, 82, 137, + 146, 147, 152, 153, 154, 155, 156, 157, 158, 159, + 160, 167, 201, 228, 82, 300, 301, 82, 304, 3, + 24, 26, 27, 48, 49, 86, 88, 90, 96, 100, + 108, 109, 110, 114, 115, 116, 271, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, - 350, 351, 353, 354, 355, 363, 385, 389, 390, 199, - 199, 126, 82, 144, 199, 51, 199, 42, 51, 64, - 72, 82, 145, 146, 151, 152, 153, 154, 155, 156, - 157, 158, 159, 166, 200, 247, 249, 292, 293, 347, - 363, 364, 373, 379, 380, 381, 382, 383, 384, 391, - 392, 393, 292, 199, 252, 204, 266, 267, 350, 356, - 260, 261, 337, 269, 270, 199, 125, 270, 323, 324, - 397, 199, 199, 126, 82, 144, 199, 126, 82, 144, - 199, 126, 82, 144, 199, 199, 168, 169, 170, 171, - 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, - 182, 183, 184, 185, 186, 187, 188, 192, 193, 195, - 196, 197, 198, 333, 334, 406, 407, 408, 409, 410, - 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, - 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, - 431, 432, 33, 33, 33, 33, 33, 33, 33, 33, - 33, 33, 33, 33, 33, 144, 201, 33, 33, 33, - 144, 201, 201, 82, 144, 200, 309, 31, 308, 33, - 144, 201, 199, 199, 82, 201, 207, 82, 201, 207, - 33, 31, 233, 82, 33, 33, 33, 33, 33, 33, + 350, 351, 352, 354, 355, 356, 364, 386, 390, 391, + 200, 200, 126, 82, 145, 200, 51, 200, 42, 51, + 64, 72, 82, 137, 146, 147, 152, 153, 154, 155, + 156, 157, 158, 159, 160, 167, 201, 248, 250, 293, + 294, 348, 364, 365, 374, 380, 381, 382, 383, 384, + 385, 392, 393, 394, 293, 200, 253, 205, 267, 268, + 351, 357, 261, 262, 338, 270, 271, 200, 125, 271, + 324, 325, 398, 200, 200, 126, 82, 145, 200, 126, + 82, 145, 200, 126, 82, 145, 200, 200, 169, 170, + 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, + 181, 182, 183, 184, 185, 186, 187, 188, 189, 193, + 194, 196, 197, 198, 199, 334, 335, 407, 408, 409, + 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, + 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, + 430, 431, 432, 433, 33, 33, 33, 33, 33, 33, + 33, 33, 33, 33, 33, 33, 33, 145, 202, 33, + 33, 33, 145, 202, 202, 82, 145, 201, 310, 31, + 309, 33, 145, 202, 200, 200, 82, 202, 208, 82, + 202, 208, 33, 31, 234, 82, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, - 144, 201, 33, 82, 82, 82, 31, 276, 144, 82, - 144, 82, 31, 285, 82, 144, 82, 31, 282, 200, - 31, 236, 31, 33, 201, 199, 202, 245, 246, 247, - 248, 144, 201, 201, 201, 33, 144, 201, 82, 82, - 31, 253, 200, 200, 200, 227, 227, 200, 200, 200, - 200, 200, 200, 200, 200, 200, 200, 227, 137, 139, - 140, 141, 142, 143, 145, 146, 147, 148, 150, 199, - 200, 31, 300, 144, 227, 31, 82, 33, 33, 33, - 33, 33, 33, 33, 33, 33, 33, 33, 33, 201, - 126, 82, 199, 200, 200, 200, 247, 247, 200, 200, - 200, 200, 200, 200, 200, 200, 200, 200, 247, 137, - 139, 140, 141, 142, 143, 145, 146, 147, 148, 150, - 321, 144, 201, 201, 31, 42, 51, 200, 257, 258, - 144, 201, 144, 201, 144, 201, 33, 144, 201, 126, - 82, 126, 82, 126, 82, 33, 33, 33, 33, 33, + 33, 33, 145, 202, 33, 82, 82, 82, 31, 277, + 145, 82, 145, 82, 31, 286, 82, 145, 82, 31, + 283, 201, 31, 237, 31, 33, 202, 200, 203, 246, + 247, 248, 249, 145, 202, 202, 202, 33, 145, 202, + 82, 82, 31, 254, 201, 201, 201, 201, 228, 228, + 201, 201, 201, 201, 201, 201, 201, 201, 201, 201, + 228, 138, 140, 141, 142, 143, 144, 146, 147, 148, + 149, 151, 200, 201, 31, 301, 145, 228, 31, 82, + 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, + 33, 33, 202, 126, 82, 200, 201, 201, 201, 201, + 248, 248, 201, 201, 201, 201, 201, 201, 201, 201, + 201, 201, 248, 138, 140, 141, 142, 143, 144, 146, + 147, 148, 149, 151, 322, 145, 202, 202, 31, 42, + 51, 201, 258, 259, 145, 202, 145, 202, 145, 202, + 33, 145, 202, 126, 82, 126, 82, 126, 82, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, - 33, 33, 201, 144, 42, 51, 335, 42, 145, 146, - 273, 335, 51, 273, 51, 82, 51, 51, 204, 435, - 436, 51, 51, 82, 82, 433, 327, 51, 51, 335, - 51, 330, 51, 199, 200, 82, 42, 51, 33, 51, - 264, 199, 199, 199, 271, 82, 199, 199, 271, 82, - 227, 436, 51, 51, 51, 51, 51, 335, 335, 335, - 51, 51, 51, 51, 82, 200, 335, 290, 199, 271, - 82, 33, 144, 6, 42, 44, 51, 52, 82, 92, - 127, 145, 278, 286, 287, 144, 287, 144, 144, 287, - 144, 51, 145, 146, 272, 82, 199, 82, 31, 246, - 248, 33, 199, 45, 57, 63, 83, 237, 238, 351, - 352, 244, 199, 199, 56, 80, 315, 82, 147, 203, - 207, 208, 316, 317, 318, 144, 33, 144, 199, 227, - 227, 227, 228, 227, 227, 227, 227, 227, 227, 227, - 227, 227, 227, 201, 227, 227, 227, 227, 227, 227, - 227, 227, 227, 227, 227, 227, 82, 199, 144, 227, - 51, 335, 51, 51, 51, 51, 51, 51, 335, 51, - 51, 51, 199, 271, 126, 247, 247, 272, 247, 247, - 247, 247, 247, 247, 247, 247, 247, 247, 201, 247, - 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, - 199, 293, 199, 271, 199, 271, 227, 199, 205, 42, - 51, 144, 200, 267, 199, 261, 199, 270, 199, 271, - 335, 324, 199, 271, 126, 126, 126, 51, 51, 51, - 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, - 51, 51, 335, 335, 51, 436, 335, 335, 51, 51, - 335, 51, 335, 335, 199, 333, 42, 42, 51, 434, - 205, 434, 203, 199, 199, 51, 309, 201, 201, 227, - 199, 201, 199, 201, 199, 206, 295, 296, 199, 82, - 82, 42, 51, 199, 144, 144, 82, 144, 287, 82, - 199, 287, 51, 51, 201, 232, 33, 247, 33, 144, - 201, 199, 242, 241, 144, 199, 200, 318, 82, 227, - 82, 100, 120, 144, 144, 144, 201, 201, 201, 201, - 201, 201, 201, 201, 201, 201, 201, 201, 227, 82, - 199, 199, 144, 144, 201, 201, 201, 201, 201, 201, - 201, 201, 201, 201, 201, 199, 199, 201, 258, 199, - 42, 51, 200, 227, 199, 199, 203, 82, 201, 33, - 199, 199, 271, 199, 271, 82, 144, 201, 279, 287, - 286, 287, 144, 287, 144, 144, 199, 33, 31, 247, - 199, 335, 238, 243, 245, 245, 245, 317, 287, 33, - 199, 33, 51, 254, 227, 227, 227, 227, 199, 199, - 227, 247, 247, 227, 201, 51, 309, 227, 199, 199, - 206, 295, 144, 144, 144, 287, 199, 287, 287, 227, - 199, 199, 31, 31, 31, 200, 201, 227, 227, 203, - 144, 199, 199, 201, 201, 199, 201, 201, 201, 33, - 199, 144, 287, 279, 287, 144, 199, 199, 199, 245, - 287, 199, 199, 51, 51, 130, 227, 206, 287, 144, - 144, 287, 31, 201, 203, 227, 256, 199, 82, 287, - 286, 199, 51, 144, 199, 206, 144, 144, 227, 287, - 279, 144, 287 + 33, 33, 33, 33, 33, 33, 202, 145, 42, 51, + 336, 42, 146, 147, 274, 336, 51, 274, 51, 82, + 51, 51, 205, 436, 437, 51, 51, 82, 82, 434, + 328, 51, 51, 336, 51, 331, 51, 200, 201, 82, + 42, 51, 33, 51, 265, 200, 200, 200, 272, 82, + 200, 200, 272, 82, 228, 437, 51, 51, 51, 51, + 51, 336, 336, 336, 51, 51, 51, 51, 82, 201, + 336, 291, 200, 272, 82, 33, 145, 6, 42, 44, + 51, 52, 82, 92, 127, 146, 279, 287, 288, 145, + 288, 145, 145, 288, 145, 51, 146, 147, 273, 82, + 200, 82, 31, 247, 249, 33, 200, 45, 57, 63, + 83, 238, 239, 352, 353, 245, 200, 200, 56, 80, + 316, 82, 148, 204, 208, 209, 317, 318, 319, 145, + 33, 145, 200, 228, 228, 228, 229, 228, 228, 228, + 228, 228, 228, 228, 228, 228, 228, 228, 202, 228, + 228, 228, 228, 228, 228, 228, 228, 228, 228, 228, + 228, 82, 200, 145, 228, 51, 336, 51, 51, 51, + 51, 51, 51, 336, 51, 51, 51, 200, 272, 126, + 248, 248, 273, 228, 248, 248, 248, 248, 248, 248, + 248, 248, 248, 248, 202, 248, 248, 248, 248, 248, + 248, 248, 248, 248, 248, 248, 200, 294, 200, 272, + 200, 272, 228, 200, 206, 42, 51, 145, 201, 268, + 200, 262, 200, 271, 200, 272, 336, 325, 200, 272, + 126, 126, 126, 51, 51, 51, 51, 51, 51, 51, + 51, 51, 51, 51, 51, 51, 51, 51, 336, 336, + 51, 437, 336, 336, 51, 51, 336, 51, 336, 336, + 200, 334, 42, 42, 51, 435, 206, 435, 204, 200, + 200, 51, 310, 202, 202, 228, 200, 202, 200, 202, + 200, 207, 296, 297, 200, 82, 82, 42, 51, 200, + 145, 145, 82, 145, 288, 82, 200, 288, 51, 51, + 202, 233, 33, 248, 33, 145, 202, 200, 243, 242, + 145, 200, 201, 319, 82, 228, 82, 100, 120, 145, + 145, 145, 202, 145, 202, 202, 202, 202, 202, 202, + 202, 202, 202, 202, 202, 228, 82, 200, 200, 145, + 145, 202, 145, 202, 202, 202, 202, 202, 202, 202, + 202, 202, 202, 200, 200, 202, 259, 200, 42, 51, + 201, 228, 200, 200, 204, 82, 202, 33, 200, 200, + 272, 200, 272, 82, 145, 202, 280, 288, 287, 288, + 145, 288, 145, 145, 200, 33, 31, 248, 200, 336, + 239, 244, 246, 246, 246, 318, 288, 33, 200, 33, + 51, 255, 228, 228, 228, 228, 228, 200, 200, 228, + 248, 248, 228, 228, 202, 51, 310, 228, 200, 200, + 207, 296, 145, 145, 145, 288, 200, 288, 288, 228, + 200, 200, 31, 31, 31, 201, 202, 228, 228, 204, + 145, 200, 200, 202, 202, 145, 200, 202, 202, 145, + 202, 33, 200, 145, 288, 280, 288, 145, 200, 200, + 200, 246, 288, 200, 200, 51, 51, 130, 228, 228, + 228, 207, 288, 145, 145, 288, 31, 202, 204, 228, + 257, 202, 202, 200, 82, 288, 287, 200, 51, 145, + 200, 207, 145, 145, 228, 288, 280, 145, 288 }; #if YYDEBUG @@ -3539,8 +3588,8 @@ namespace yy 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, - 445, 446, 447, 448, 449, 450, 451, 452, 453, 59, - 40, 41, 35, 58, 91, 93, 39, 46, 92 + 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, + 59, 40, 41, 35, 58, 91, 93, 39, 46, 92 }; #endif @@ -3548,67 +3597,68 @@ namespace yy const unsigned short int parser::yyr1_[] = { - 0, 209, 210, 210, 211, 211, 211, 211, 211, 211, - 211, 211, 211, 211, 211, 211, 211, 211, 211, 211, - 211, 211, 211, 211, 211, 211, 211, 211, 211, 211, - 211, 211, 211, 211, 211, 211, 211, 211, 211, 211, - 211, 211, 211, 211, 212, 212, 212, 212, 213, 213, - 214, 215, 216, 217, 218, 219, 219, 219, 219, 219, - 219, 220, 220, 220, 220, 220, 220, 221, 221, 221, - 221, 221, 221, 222, 222, 222, 222, 222, 222, 223, - 223, 224, 224, 225, 225, 226, 227, 227, 227, 227, - 227, 227, 227, 227, 227, 227, 227, 227, 227, 227, - 227, 227, 227, 227, 227, 227, 227, 227, 227, 227, - 227, 227, 227, 227, 227, 227, 228, 228, 229, 229, - 230, 231, 232, 232, 233, 234, 235, 235, 236, 237, - 237, 238, 238, 238, 238, 238, 240, 239, 241, 239, - 242, 239, 243, 239, 244, 239, 245, 245, 245, 245, - 246, 246, 247, 247, 247, 247, 247, 247, 247, 247, - 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, - 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, - 247, 248, 249, 249, 250, 251, 252, 252, 253, 253, - 253, 253, 253, 254, 254, 254, 254, 255, 256, 256, - 257, 257, 258, 258, 258, 258, 258, 258, 258, 258, - 258, 259, 259, 260, 260, 261, 262, 262, 263, 263, - 264, 265, 265, 266, 266, 267, 267, 268, 268, 268, - 268, 269, 269, 270, 270, 270, 270, 270, 270, 270, - 270, 270, 270, 270, 270, 270, 270, 270, 270, 270, - 270, 270, 270, 270, 270, 270, 271, 271, 271, 271, - 271, 271, 272, 272, 272, 273, 273, 273, 274, 275, - 275, 276, 277, 277, 277, 278, 278, 278, 278, 278, - 279, 279, 279, 279, 280, 281, 281, 282, 282, 282, - 283, 284, 284, 285, 285, 285, 286, 286, 286, 286, - 286, 287, 287, 287, 287, 287, 287, 288, 288, 288, - 288, 289, 289, 290, 290, 290, 290, 290, 290, 290, - 290, 290, 290, 290, 290, 290, 290, 290, 290, 290, - 290, 290, 290, 290, 290, 290, 290, 290, 290, 290, - 290, 290, 290, 290, 290, 290, 290, 290, 290, 290, - 290, 290, 291, 291, 292, 292, 293, 293, 293, 293, - 293, 293, 293, 293, 293, 293, 293, 293, 293, 294, - 294, 295, 295, 296, 296, 297, 298, 299, 299, 300, - 301, 302, 303, 303, 303, 303, 304, 305, 305, 305, - 305, 306, 307, 307, 308, 308, 308, 309, 309, 309, - 310, 310, 311, 311, 311, 311, 311, 311, 312, 312, - 312, 312, 312, 312, 313, 314, 314, 315, 315, 315, - 316, 316, 316, 316, 317, 317, 318, 318, 318, 318, - 318, 320, 321, 319, 322, 322, 322, 322, 323, 323, - 324, 324, 325, 325, 325, 325, 325, 325, 325, 326, - 326, 326, 326, 326, 326, 326, 326, 326, 326, 327, - 327, 328, 328, 329, 329, 329, 329, 330, 330, 331, - 331, 332, 332, 333, 333, 334, 334, 334, 334, 334, - 334, 334, 334, 334, 334, 334, 334, 334, 334, 334, - 334, 334, 334, 334, 334, 334, 334, 334, 334, 334, - 334, 334, 335, 335, 336, 337, 338, 339, 340, 341, - 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, - 352, 353, 354, 355, 356, 357, 357, 358, 359, 360, - 361, 362, 363, 363, 364, 365, 366, 367, 368, 369, - 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, - 380, 381, 382, 383, 384, 385, 386, 387, 388, 388, - 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, - 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, - 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, - 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, - 429, 430, 431, 432, 433, 434, 434, 435, 435, 436 + 0, 210, 211, 211, 212, 212, 212, 212, 212, 212, + 212, 212, 212, 212, 212, 212, 212, 212, 212, 212, + 212, 212, 212, 212, 212, 212, 212, 212, 212, 212, + 212, 212, 212, 212, 212, 212, 212, 212, 212, 212, + 212, 212, 212, 212, 213, 213, 213, 213, 214, 214, + 215, 216, 217, 218, 219, 220, 220, 220, 220, 220, + 220, 221, 221, 221, 221, 221, 221, 222, 222, 222, + 222, 222, 222, 223, 223, 223, 223, 223, 223, 224, + 224, 225, 225, 226, 226, 227, 228, 228, 228, 228, + 228, 228, 228, 228, 228, 228, 228, 228, 228, 228, + 228, 228, 228, 228, 228, 228, 228, 228, 228, 228, + 228, 228, 228, 228, 228, 228, 228, 229, 229, 230, + 230, 231, 232, 233, 233, 234, 235, 236, 236, 237, + 238, 238, 239, 239, 239, 239, 239, 241, 240, 242, + 240, 243, 240, 244, 240, 245, 240, 246, 246, 246, + 246, 247, 247, 248, 248, 248, 248, 248, 248, 248, + 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, + 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, + 248, 248, 248, 249, 250, 250, 251, 252, 253, 253, + 254, 254, 254, 254, 254, 255, 255, 255, 255, 256, + 257, 257, 258, 258, 259, 259, 259, 259, 259, 259, + 259, 259, 259, 260, 260, 261, 261, 262, 263, 263, + 264, 264, 265, 266, 266, 267, 267, 268, 268, 269, + 269, 269, 269, 270, 270, 271, 271, 271, 271, 271, + 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, + 271, 271, 271, 271, 271, 271, 271, 271, 272, 272, + 272, 272, 272, 272, 273, 273, 273, 274, 274, 274, + 275, 276, 276, 277, 278, 278, 278, 279, 279, 279, + 279, 279, 280, 280, 280, 280, 281, 282, 282, 283, + 283, 283, 284, 285, 285, 286, 286, 286, 287, 287, + 287, 287, 287, 288, 288, 288, 288, 288, 288, 289, + 289, 289, 289, 290, 290, 291, 291, 291, 291, 291, + 291, 291, 291, 291, 291, 291, 291, 291, 291, 291, + 291, 291, 291, 291, 291, 291, 291, 291, 291, 291, + 291, 291, 291, 291, 291, 291, 291, 291, 291, 291, + 291, 291, 291, 291, 292, 292, 293, 293, 294, 294, + 294, 294, 294, 294, 294, 294, 294, 294, 294, 294, + 294, 295, 295, 296, 296, 297, 297, 298, 299, 300, + 300, 301, 302, 303, 304, 304, 304, 304, 305, 306, + 306, 306, 306, 307, 308, 308, 309, 309, 309, 310, + 310, 310, 311, 311, 312, 312, 312, 312, 312, 312, + 313, 313, 313, 313, 313, 313, 314, 315, 315, 316, + 316, 316, 317, 317, 317, 317, 318, 318, 319, 319, + 319, 319, 319, 321, 322, 320, 323, 323, 323, 323, + 324, 324, 325, 325, 326, 326, 326, 326, 326, 326, + 326, 327, 327, 327, 327, 327, 327, 327, 327, 327, + 327, 328, 328, 329, 329, 330, 330, 330, 330, 331, + 331, 332, 332, 333, 333, 334, 334, 335, 335, 335, + 335, 335, 335, 335, 335, 335, 335, 335, 335, 335, + 335, 335, 335, 335, 335, 335, 335, 335, 335, 335, + 335, 335, 335, 335, 336, 336, 337, 338, 339, 340, + 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, + 351, 352, 353, 354, 355, 356, 357, 358, 358, 359, + 360, 361, 362, 363, 364, 364, 365, 366, 367, 368, + 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, + 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, + 389, 389, 390, 391, 392, 393, 394, 395, 396, 397, + 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, + 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, + 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, + 428, 429, 430, 431, 432, 433, 434, 435, 435, 436, + 436, 437 }; /* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN. */ @@ -3626,56 +3676,57 @@ namespace yy 4, 3, 4, 3, 4, 4, 3, 1, 1, 1, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 6, 6, 4, 1, 3, 4, 7, - 3, 4, 2, 1, 4, 4, 2, 1, 7, 3, - 1, 1, 1, 1, 1, 1, 0, 5, 0, 8, - 0, 8, 0, 10, 0, 8, 2, 2, 1, 1, - 4, 2, 3, 1, 1, 1, 3, 3, 3, 3, - 3, 3, 3, 3, 3, 3, 3, 2, 2, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 6, - 6, 5, 1, 4, 4, 4, 2, 1, 9, 6, - 5, 7, 7, 3, 5, 3, 1, 6, 3, 1, - 3, 1, 5, 3, 3, 4, 2, 2, 3, 1, - 1, 2, 5, 3, 1, 1, 2, 5, 3, 1, - 1, 2, 5, 3, 1, 1, 1, 2, 5, 3, - 6, 3, 1, 1, 1, 1, 1, 1, 1, 1, + 4, 4, 4, 6, 6, 4, 8, 1, 3, 4, + 7, 3, 4, 2, 1, 4, 4, 2, 1, 7, + 3, 1, 1, 1, 1, 1, 1, 0, 5, 0, + 8, 0, 8, 0, 10, 0, 8, 2, 2, 1, + 1, 4, 2, 3, 1, 1, 1, 3, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, + 6, 6, 8, 5, 1, 4, 4, 4, 2, 1, + 9, 6, 5, 7, 7, 3, 5, 3, 1, 6, + 3, 1, 3, 1, 5, 3, 3, 4, 2, 2, + 3, 1, 1, 2, 5, 3, 1, 1, 2, 5, + 3, 1, 1, 2, 5, 3, 1, 1, 1, 2, + 5, 3, 6, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 2, 4, 3, 5, - 1, 3, 2, 2, 1, 2, 2, 1, 4, 2, - 1, 4, 2, 1, 4, 3, 5, 9, 1, 5, - 3, 5, 7, 9, 4, 2, 1, 5, 7, 4, - 4, 2, 1, 7, 9, 6, 1, 1, 1, 1, - 1, 0, 1, 1, 1, 2, 2, 2, 5, 3, - 6, 3, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 2, 4, + 3, 5, 1, 3, 2, 2, 1, 2, 2, 1, + 4, 2, 1, 4, 2, 1, 4, 3, 5, 9, + 1, 5, 3, 5, 7, 9, 4, 2, 1, 5, + 7, 4, 4, 2, 1, 7, 9, 6, 1, 1, + 1, 1, 1, 0, 1, 1, 1, 2, 2, 2, + 5, 3, 6, 3, 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, 5, 6, 3, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 5, - 6, 7, 5, 1, 3, 3, 4, 2, 1, 5, - 3, 4, 4, 6, 3, 5, 3, 2, 5, 3, - 6, 4, 2, 1, 5, 7, 9, 0, 3, 3, - 2, 5, 5, 6, 3, 7, 8, 5, 5, 6, - 3, 7, 8, 5, 6, 3, 1, 1, 1, 1, - 1, 3, 4, 6, 1, 2, 1, 1, 1, 1, - 1, 0, 0, 5, 2, 5, 3, 6, 3, 1, + 1, 1, 1, 1, 5, 6, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, - 1, 3, 6, 1, 1, 1, 1, 3, 1, 3, - 6, 2, 5, 3, 1, 1, 1, 1, 1, 1, + 1, 5, 6, 7, 5, 1, 3, 3, 4, 2, + 1, 5, 3, 4, 4, 6, 3, 5, 3, 2, + 5, 3, 6, 4, 2, 1, 5, 7, 9, 0, + 3, 3, 2, 5, 5, 6, 3, 7, 8, 5, + 5, 6, 3, 7, 8, 5, 6, 3, 1, 1, + 1, 1, 1, 3, 4, 6, 1, 2, 1, 1, + 1, 1, 1, 0, 0, 5, 2, 5, 3, 6, + 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 3, 1, 3, 6, 1, 1, 1, 1, 3, + 1, 3, 6, 2, 5, 3, 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, 3, 3, 3, 1, 3, 3, - 3, 3, 1, 1, 1, 3, 3, 3, 3, 3, - 3, 1, 3, 3, 3, 3, 3, 3, 3, 3, - 3, 3, 1, 1, 3, 3, 3, 3, 5, 3, - 3, 3, 1, 3, 3, 3, 1, 1, 1, 1, - 1, 3, 1, 1, 1, 1, 3, 3, 3, 3, - 1, 1, 3, 3, 3, 1, 1, 1, 3, 3, - 3, 3, 3, 3, 1, 3, 3, 3, 3, 3, + 1, 1, 1, 1, 1, 1, 3, 3, 3, 1, + 3, 3, 3, 3, 1, 1, 1, 3, 3, 3, + 3, 3, 3, 1, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 1, 1, 3, 3, 3, 3, + 5, 3, 3, 3, 1, 3, 3, 3, 1, 1, + 1, 1, 1, 3, 1, 1, 1, 1, 3, 3, + 3, 3, 1, 1, 3, 3, 3, 1, 1, 1, + 3, 3, 3, 3, 3, 3, 1, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, - 3, 3, 3, 3, 3, 1, 3, 2, 2, 2 + 3, 3, 3, 3, 3, 3, 3, 1, 3, 2, + 2, 2 }; #if YYDEBUG || YYERROR_VERBOSE || YYTOKEN_TABLE @@ -3711,31 +3762,31 @@ namespace yy "SOLVE_ALGO", "SPARSE_DLL", "STDERR", "STEADY", "STOCH_SIMUL", "TEX", "RAMSEY_POLICY", "PLANNER_DISCOUNT", "TEX_NAME", "UNIFORM_PDF", "UNIT_ROOT_VARS", "USE_DLL", "VALUES", "VAR", "VAREXO", "VAREXO_DET", - "VAROBS", "XLS_SHEET", "XLS_RANGE", "EXCLAMATION_EQUAL", "EXCLAMATION", - "EQUAL_EQUAL", "GREATER_EQUAL", "LESS_EQUAL", "GREATER", "LESS", "COMMA", - "MINUS", "PLUS", "DIVIDE", "TIMES", "UMINUS", "POWER", "EXP", "LOG", - "LOG10", "SIN", "COS", "TAN", "ASIN", "ACOS", "ATAN", "SINH", "COSH", - "TANH", "ASINH", "ACOSH", "ATANH", "SQRT", "DYNARE_SENSITIVITY", - "IDENTIFICATION", "MORRIS", "STAB", "REDFORM", "PPRIOR", "PRIOR_RANGE", - "PPOST", "ILPTAU", "GLUE", "MORRIS_NLIV", "MORRIS_NTRA", "NSAM", - "LOAD_REDFORM", "LOAD_RMSE", "LOAD_STAB", "ALPHA2_STAB", "KSSTAT", - "LOGTRANS_REDFORM", "THRESHOLD_REDFORM", "KSSTAT_REDFORM", - "ALPHA2_REDFORM", "NAMENDO", "NAMLAGENDO", "NAMEXO", "RMSE", "LIK_ONLY", - "VAR_RMSE", "PFILT_RMSE", "ISTART_RMSE", "ALPHA_RMSE", "ALPHA2_RMSE", - "';'", "'('", "')'", "'#'", "':'", "'['", "']'", "'''", "'.'", "'\\\\'", - "$accept", "statement_list", "statement", "declaration", "dsample", - "rplot", "var", "varexo", "varexo_det", "parameters", "var_list", - "varexo_list", "varexo_det_list", "parameter_list", "periods", "cutoff", - "markowitz", "init_param", "expression", "comma_expression", "initval", - "initval_option", "endval", "initval_list", "initval_elem", "histval", - "histval_list", "histval_elem", "model_sparse_options_list", - "model_sparse_options", "model", "@1", "@2", "@3", "@4", "@5", - "equation_list", "equation", "hand_side", "pound_expression", - "model_var", "shocks", "mshocks", "shock_list", "shock_elem", - "period_list", "sigma_e", "value_list", "triangular_matrix", - "triangular_row", "steady", "steady_options_list", "steady_options", - "check", "check_options_list", "check_options", "simul", - "simul_options_list", "simul_options", "stoch_simul", + "VAROBS", "XLS_SHEET", "XLS_RANGE", "NORMCDF", "EXCLAMATION_EQUAL", + "EXCLAMATION", "EQUAL_EQUAL", "GREATER_EQUAL", "LESS_EQUAL", "GREATER", + "LESS", "COMMA", "MINUS", "PLUS", "DIVIDE", "TIMES", "UMINUS", "POWER", + "EXP", "LOG", "LOG10", "SIN", "COS", "TAN", "ASIN", "ACOS", "ATAN", + "SINH", "COSH", "TANH", "ASINH", "ACOSH", "ATANH", "SQRT", + "DYNARE_SENSITIVITY", "IDENTIFICATION", "MORRIS", "STAB", "REDFORM", + "PPRIOR", "PRIOR_RANGE", "PPOST", "ILPTAU", "GLUE", "MORRIS_NLIV", + "MORRIS_NTRA", "NSAM", "LOAD_REDFORM", "LOAD_RMSE", "LOAD_STAB", + "ALPHA2_STAB", "KSSTAT", "LOGTRANS_REDFORM", "THRESHOLD_REDFORM", + "KSSTAT_REDFORM", "ALPHA2_REDFORM", "NAMENDO", "NAMLAGENDO", "NAMEXO", + "RMSE", "LIK_ONLY", "VAR_RMSE", "PFILT_RMSE", "ISTART_RMSE", + "ALPHA_RMSE", "ALPHA2_RMSE", "';'", "'('", "')'", "'#'", "':'", "'['", + "']'", "'''", "'.'", "'\\\\'", "$accept", "statement_list", "statement", + "declaration", "dsample", "rplot", "var", "varexo", "varexo_det", + "parameters", "var_list", "varexo_list", "varexo_det_list", + "parameter_list", "periods", "cutoff", "markowitz", "init_param", + "expression", "comma_expression", "initval", "initval_option", "endval", + "initval_list", "initval_elem", "histval", "histval_list", + "histval_elem", "model_sparse_options_list", "model_sparse_options", + "model", "@1", "@2", "@3", "@4", "@5", "equation_list", "equation", + "hand_side", "pound_expression", "model_var", "shocks", "mshocks", + "shock_list", "shock_elem", "period_list", "sigma_e", "value_list", + "triangular_matrix", "triangular_row", "steady", "steady_options_list", + "steady_options", "check", "check_options_list", "check_options", + "simul", "simul_options_list", "simul_options", "stoch_simul", "stoch_simul_options_list", "stoch_simul_options", "tmp_var_list", "signed_integer", "signed_float", "estimated_params", "estimated_list", "estimated_elem", "estimated_elem1", "estimated_elem2", @@ -3789,217 +3840,219 @@ namespace yy const parser::rhs_number_type parser::yyrhs_[] = { - 210, 0, -1, 211, -1, 210, 211, -1, 212, -1, - 223, -1, 224, -1, 225, -1, 239, -1, 229, -1, - 231, -1, 234, -1, 226, -1, 250, -1, 251, -1, - 255, -1, 259, -1, 262, -1, 265, -1, 268, -1, - 288, -1, 291, -1, 294, -1, 274, -1, 283, -1, - 280, -1, 297, -1, 298, -1, 301, -1, 213, -1, - 214, -1, 302, -1, 304, -1, 305, -1, 306, -1, - 310, -1, 311, -1, 312, -1, 313, -1, 319, -1, - 322, -1, 328, -1, 331, -1, 332, -1, 218, -1, - 215, -1, 216, -1, 217, -1, 28, 51, 199, -1, - 28, 51, 51, 199, -1, 111, 271, 199, -1, 131, - 219, 199, -1, 132, 220, 199, -1, 133, 221, 199, - -1, 99, 222, 199, -1, 219, 82, -1, 219, 144, - 82, -1, 82, -1, 219, 82, 126, -1, 219, 144, - 82, 126, -1, 82, 126, -1, 220, 82, -1, 220, - 144, 82, -1, 82, -1, 220, 82, 126, -1, 220, - 144, 82, 126, -1, 82, 126, -1, 221, 82, -1, - 221, 144, 82, -1, 82, -1, 221, 82, 126, -1, - 221, 144, 82, 126, -1, 82, 126, -1, 222, 82, - -1, 222, 144, 82, -1, 82, -1, 222, 82, 126, - -1, 222, 144, 82, 126, -1, 82, 126, -1, 100, - 51, 199, -1, 100, 33, 51, 199, -1, 24, 42, - 199, -1, 24, 33, 42, 199, -1, 63, 42, 199, - -1, 63, 33, 42, 199, -1, 82, 33, 227, 199, - -1, 200, 227, 201, -1, 82, -1, 42, -1, 51, - -1, 227, 146, 227, -1, 227, 145, 227, -1, 227, - 147, 227, -1, 227, 148, 227, -1, 227, 150, 227, - -1, 227, 143, 227, -1, 227, 142, 227, -1, 227, - 141, 227, -1, 227, 140, 227, -1, 227, 139, 227, - -1, 227, 137, 227, -1, 145, 227, -1, 146, 227, - -1, 151, 200, 227, 201, -1, 152, 200, 227, 201, - -1, 153, 200, 227, 201, -1, 154, 200, 227, 201, - -1, 155, 200, 227, 201, -1, 156, 200, 227, 201, - -1, 157, 200, 227, 201, -1, 158, 200, 227, 201, - -1, 159, 200, 227, 201, -1, 166, 200, 227, 201, - -1, 64, 200, 227, 144, 227, 201, -1, 72, 200, - 227, 144, 227, 201, -1, 82, 200, 228, 201, -1, - 227, -1, 228, 144, 227, -1, 50, 199, 232, 31, - -1, 50, 200, 230, 201, 199, 232, 31, -1, 38, - 33, 82, -1, 32, 199, 232, 31, -1, 232, 233, - -1, 233, -1, 82, 33, 227, 199, -1, 47, 199, - 235, 31, -1, 235, 236, -1, 236, -1, 82, 200, - 272, 201, 33, 227, 199, -1, 237, 144, 238, -1, - 238, -1, 57, -1, 45, -1, 83, -1, 351, -1, - 352, -1, -1, 76, 199, 240, 245, 31, -1, -1, - 76, 200, 339, 201, 199, 241, 245, 31, -1, -1, - 76, 200, 129, 201, 199, 242, 245, 31, -1, -1, - 76, 200, 119, 144, 237, 201, 243, 199, 245, 31, - -1, -1, 76, 200, 119, 201, 244, 199, 245, 31, - -1, 245, 246, -1, 245, 248, -1, 246, -1, 248, - -1, 247, 33, 247, 199, -1, 247, 199, -1, 200, - 247, 201, -1, 249, -1, 42, -1, 51, -1, 247, - 146, 247, -1, 247, 145, 247, -1, 247, 147, 247, - -1, 247, 148, 247, -1, 247, 143, 247, -1, 247, - 142, 247, -1, 247, 141, 247, -1, 247, 140, 247, - -1, 247, 139, 247, -1, 247, 137, 247, -1, 247, - 150, 247, -1, 145, 247, -1, 146, 247, -1, 151, - 200, 247, 201, -1, 152, 200, 247, 201, -1, 153, - 200, 247, 201, -1, 154, 200, 247, 201, -1, 155, - 200, 247, 201, -1, 156, 200, 247, 201, -1, 157, - 200, 247, 201, -1, 158, 200, 247, 201, -1, 159, - 200, 247, 201, -1, 166, 200, 247, 201, -1, 64, - 200, 247, 144, 247, 201, -1, 72, 200, 247, 144, - 247, 201, -1, 202, 82, 33, 247, 199, -1, 82, - -1, 82, 200, 272, 201, -1, 112, 199, 252, 31, - -1, 78, 199, 252, 31, -1, 252, 253, -1, 253, - -1, 131, 82, 199, 100, 254, 199, 130, 256, 199, - -1, 131, 82, 199, 120, 227, 199, -1, 131, 82, - 33, 227, 199, -1, 131, 82, 144, 82, 33, 227, - 199, -1, 22, 82, 144, 82, 33, 227, 199, -1, - 254, 144, 51, -1, 254, 144, 51, 203, 51, -1, - 51, 203, 51, -1, 51, -1, 113, 33, 204, 257, - 205, 199, -1, 256, 144, 227, -1, 227, -1, 257, - 199, 258, -1, 258, -1, 258, 144, 200, 227, 201, - -1, 258, 144, 42, -1, 258, 144, 51, -1, 258, - 200, 227, 201, -1, 258, 42, -1, 258, 51, -1, - 200, 227, 201, -1, 42, -1, 51, -1, 121, 199, - -1, 121, 200, 260, 201, 199, -1, 260, 144, 261, - -1, 261, -1, 337, -1, 19, 199, -1, 19, 200, - 263, 201, 199, -1, 263, 144, 264, -1, 264, -1, - 337, -1, 114, 199, -1, 114, 200, 266, 201, 199, - -1, 266, 144, 267, -1, 267, -1, 350, -1, 356, - -1, 122, 199, -1, 122, 200, 269, 201, 199, -1, - 122, 271, 199, -1, 122, 200, 269, 201, 271, 199, - -1, 269, 144, 270, -1, 270, -1, 336, -1, 337, - -1, 338, -1, 339, -1, 340, -1, 341, -1, 342, - -1, 343, -1, 344, -1, 345, -1, 346, -1, 363, - -1, 347, -1, 385, -1, 348, -1, 349, -1, 350, - -1, 351, -1, 353, -1, 354, -1, 355, -1, 389, - -1, 390, -1, 271, 82, -1, 271, 82, 33, 82, - -1, 271, 144, 82, -1, 271, 144, 82, 33, 82, - -1, 82, -1, 82, 33, 82, -1, 146, 51, -1, - 145, 51, -1, 51, -1, 146, 42, -1, 145, 42, - -1, 42, -1, 35, 199, 275, 31, -1, 275, 276, - -1, 276, -1, 277, 144, 278, 199, -1, 120, 82, - -1, 82, -1, 22, 82, 144, 82, -1, 286, 144, - 279, -1, 287, 144, 286, 144, 279, -1, 287, 144, - 287, 144, 287, 144, 286, 144, 279, -1, 287, -1, - 287, 144, 287, 144, 287, -1, 287, 144, 287, -1, - 287, 144, 287, 144, 287, -1, 287, 144, 287, 144, - 287, 144, 287, -1, 287, 144, 287, 144, 287, 144, - 287, 144, 287, -1, 37, 199, 281, 31, -1, 281, - 282, -1, 282, -1, 120, 82, 144, 287, 199, -1, - 22, 82, 144, 82, 144, 287, 199, -1, 82, 144, - 287, 199, -1, 36, 199, 284, 31, -1, 284, 285, - -1, 285, -1, 120, 82, 144, 287, 144, 287, 199, - -1, 22, 82, 144, 82, 144, 287, 144, 287, 199, - -1, 82, 144, 287, 144, 287, 199, -1, 6, -1, - 44, -1, 92, -1, 52, -1, 127, -1, -1, 51, - -1, 42, -1, 82, -1, 145, 51, -1, 145, 42, - -1, 34, 199, -1, 34, 200, 289, 201, 199, -1, - 34, 271, 199, -1, 34, 200, 289, 201, 271, 199, - -1, 289, 144, 290, -1, 290, -1, 356, -1, 357, - -1, 358, -1, 359, -1, 360, -1, 361, -1, 362, - -1, 363, -1, 364, -1, 365, -1, 366, -1, 367, - -1, 368, -1, 369, -1, 370, -1, 371, -1, 372, - -1, 373, -1, 374, -1, 375, -1, 376, -1, 377, - -1, 378, -1, 379, -1, 347, -1, 380, -1, 381, - -1, 382, -1, 383, -1, 384, -1, 386, -1, 387, - -1, 391, -1, 392, -1, 393, -1, 337, -1, 394, - -1, 395, -1, 396, -1, 106, 200, 292, 201, 199, - -1, 106, 200, 292, 201, 271, 199, -1, 292, 144, - 293, -1, 293, -1, 363, -1, 364, -1, 373, -1, - 379, -1, 347, -1, 380, -1, 381, -1, 382, -1, - 383, -1, 384, -1, 391, -1, 392, -1, 393, -1, - 107, 200, 292, 201, 199, -1, 107, 200, 292, 201, - 271, 199, -1, 206, 82, 206, 144, 206, 82, 206, - -1, 206, 82, 206, 144, 287, -1, 295, -1, 296, - 144, 295, -1, 134, 271, 199, -1, 93, 199, 299, - 31, -1, 299, 300, -1, 300, -1, 82, 200, 227, - 201, 199, -1, 128, 271, 199, -1, 95, 199, 303, - 31, -1, 303, 82, 227, 199, -1, 303, 82, 144, - 82, 227, 199, -1, 82, 227, 199, -1, 82, 144, - 82, 227, 199, -1, 98, 271, 199, -1, 97, 199, - -1, 97, 200, 270, 201, 199, -1, 97, 271, 199, - -1, 97, 200, 270, 201, 271, 199, -1, 18, 199, - 307, 31, -1, 307, 308, -1, 308, -1, 82, 309, - 33, 227, 199, -1, 82, 144, 82, 309, 33, 227, - 199, -1, 4, 82, 200, 51, 201, 309, 33, 227, - 199, -1, -1, 200, 51, 201, -1, 200, 42, 201, - -1, 17, 199, -1, 17, 200, 23, 201, 199, -1, - 30, 200, 82, 201, 199, -1, 30, 200, 82, 201, - 271, 199, -1, 30, 82, 199, -1, 30, 200, 82, - 207, 82, 201, 199, -1, 30, 200, 82, 207, 82, - 201, 271, 199, -1, 30, 82, 207, 82, 199, -1, - 29, 200, 82, 201, 199, -1, 29, 200, 82, 201, - 271, 199, -1, 29, 82, 199, -1, 29, 200, 82, - 207, 82, 201, 199, -1, 29, 200, 82, 207, 82, - 201, 271, 199, -1, 29, 82, 207, 82, 199, -1, - 77, 200, 314, 201, 316, 199, -1, 314, 144, 315, - -1, 315, -1, 388, -1, 389, -1, 390, -1, 317, - -1, 316, 144, 317, -1, 317, 200, 287, 201, -1, - 316, 144, 317, 200, 287, 201, -1, 318, -1, 317, - 318, -1, 82, -1, 208, -1, 147, -1, 203, -1, - 207, -1, -1, -1, 101, 320, 247, 321, 199, -1, - 124, 199, -1, 124, 200, 323, 201, 199, -1, 124, - 271, 199, -1, 124, 200, 323, 201, 271, 199, -1, - 323, 144, 324, -1, 324, -1, 270, -1, 397, -1, - 398, -1, 399, -1, 400, -1, 401, -1, 402, -1, - 403, -1, 404, -1, 325, -1, 356, -1, 391, -1, - 392, -1, 358, -1, 360, -1, 357, -1, 359, -1, - 394, -1, 395, -1, 326, 144, 327, -1, 326, -1, - 7, 51, 199, -1, 7, 200, 327, 201, 51, 199, - -1, 326, -1, 381, -1, 364, -1, 405, -1, 329, - 144, 330, -1, 329, -1, 8, 51, 199, -1, 8, - 200, 330, 201, 51, 199, -1, 167, 199, -1, 167, - 200, 333, 201, 199, -1, 334, 144, 333, -1, 334, - -1, 406, -1, 407, -1, 408, -1, 409, -1, 410, - -1, 411, -1, 412, -1, 413, -1, 414, -1, 415, - -1, 416, -1, 417, -1, 418, -1, 419, -1, 420, - -1, 421, -1, 422, -1, 423, -1, 425, -1, 426, - -1, 427, -1, 428, -1, 429, -1, 430, -1, 431, - -1, 432, -1, 424, -1, 51, -1, 42, -1, 26, - 33, 51, -1, 118, 33, 51, -1, 115, 33, 51, - -1, 60, -1, 96, 33, 51, -1, 110, 33, 51, - -1, 27, 33, 51, -1, 3, 33, 51, -1, 86, - -1, 88, -1, 90, -1, 53, 33, 51, -1, 48, - 33, 51, -1, 49, 33, 51, -1, 100, 33, 51, - -1, 24, 33, 335, -1, 63, 33, 335, -1, 114, - -1, 116, 33, 51, -1, 108, 33, 335, -1, 25, - 33, 82, -1, 84, 33, 436, -1, 84, 33, 51, - -1, 41, 33, 51, -1, 102, 33, 51, -1, 103, - 33, 51, -1, 58, 33, 51, -1, 59, 33, 51, - -1, 89, -1, 46, -1, 20, 33, 335, -1, 70, - 33, 51, -1, 65, 33, 335, -1, 67, 33, 335, - -1, 94, 33, 200, 296, 201, -1, 66, 33, 335, - -1, 75, 33, 82, -1, 74, 33, 51, -1, 73, - -1, 105, 33, 335, -1, 68, 33, 51, -1, 69, - 33, 51, -1, 61, -1, 62, -1, 87, -1, 5, - -1, 123, -1, 43, 33, 51, -1, 117, -1, 81, - -1, 40, -1, 109, -1, 54, 33, 51, -1, 55, - 33, 51, -1, 79, 33, 56, -1, 79, 33, 80, - -1, 104, -1, 91, -1, 135, 33, 82, -1, 136, - 33, 433, -1, 39, 33, 436, -1, 21, -1, 85, - -1, 71, -1, 125, 33, 335, -1, 14, 33, 273, - -1, 9, 33, 335, -1, 11, 33, 273, -1, 12, - 33, 335, -1, 13, 33, 51, -1, 10, -1, 15, - 33, 51, -1, 16, 33, 51, -1, 168, 33, 51, - -1, 169, 33, 51, -1, 170, 33, 51, -1, 171, - 33, 51, -1, 172, 33, 51, -1, 173, 33, 51, - -1, 174, 33, 51, -1, 175, 33, 51, -1, 176, - 33, 51, -1, 177, 33, 51, -1, 178, 33, 51, - -1, 179, 33, 51, -1, 180, 33, 51, -1, 181, - 33, 51, -1, 182, 33, 51, -1, 183, 33, 335, - -1, 184, 33, 335, -1, 185, 33, 51, -1, 186, - 33, 436, -1, 187, 33, 335, -1, 188, 33, 335, - -1, 192, 33, 51, -1, 193, 33, 51, -1, 195, - 33, 335, -1, 196, 33, 51, -1, 197, 33, 335, - -1, 198, 33, 335, -1, 82, 203, 82, -1, 51, - -1, 51, 203, 51, -1, 204, 434, -1, 435, 434, - -1, 435, 205, -1 + 211, 0, -1, 212, -1, 211, 212, -1, 213, -1, + 224, -1, 225, -1, 226, -1, 240, -1, 230, -1, + 232, -1, 235, -1, 227, -1, 251, -1, 252, -1, + 256, -1, 260, -1, 263, -1, 266, -1, 269, -1, + 289, -1, 292, -1, 295, -1, 275, -1, 284, -1, + 281, -1, 298, -1, 299, -1, 302, -1, 214, -1, + 215, -1, 303, -1, 305, -1, 306, -1, 307, -1, + 311, -1, 312, -1, 313, -1, 314, -1, 320, -1, + 323, -1, 329, -1, 332, -1, 333, -1, 219, -1, + 216, -1, 217, -1, 218, -1, 28, 51, 200, -1, + 28, 51, 51, 200, -1, 111, 272, 200, -1, 131, + 220, 200, -1, 132, 221, 200, -1, 133, 222, 200, + -1, 99, 223, 200, -1, 220, 82, -1, 220, 145, + 82, -1, 82, -1, 220, 82, 126, -1, 220, 145, + 82, 126, -1, 82, 126, -1, 221, 82, -1, 221, + 145, 82, -1, 82, -1, 221, 82, 126, -1, 221, + 145, 82, 126, -1, 82, 126, -1, 222, 82, -1, + 222, 145, 82, -1, 82, -1, 222, 82, 126, -1, + 222, 145, 82, 126, -1, 82, 126, -1, 223, 82, + -1, 223, 145, 82, -1, 82, -1, 223, 82, 126, + -1, 223, 145, 82, 126, -1, 82, 126, -1, 100, + 51, 200, -1, 100, 33, 51, 200, -1, 24, 42, + 200, -1, 24, 33, 42, 200, -1, 63, 42, 200, + -1, 63, 33, 42, 200, -1, 82, 33, 228, 200, + -1, 201, 228, 202, -1, 82, -1, 42, -1, 51, + -1, 228, 147, 228, -1, 228, 146, 228, -1, 228, + 148, 228, -1, 228, 149, 228, -1, 228, 151, 228, + -1, 228, 144, 228, -1, 228, 143, 228, -1, 228, + 142, 228, -1, 228, 141, 228, -1, 228, 140, 228, + -1, 228, 138, 228, -1, 146, 228, -1, 147, 228, + -1, 152, 201, 228, 202, -1, 153, 201, 228, 202, + -1, 154, 201, 228, 202, -1, 155, 201, 228, 202, + -1, 156, 201, 228, 202, -1, 157, 201, 228, 202, + -1, 158, 201, 228, 202, -1, 159, 201, 228, 202, + -1, 160, 201, 228, 202, -1, 167, 201, 228, 202, + -1, 64, 201, 228, 145, 228, 202, -1, 72, 201, + 228, 145, 228, 202, -1, 82, 201, 229, 202, -1, + 137, 201, 228, 145, 228, 145, 228, 202, -1, 228, + -1, 229, 145, 228, -1, 50, 200, 233, 31, -1, + 50, 201, 231, 202, 200, 233, 31, -1, 38, 33, + 82, -1, 32, 200, 233, 31, -1, 233, 234, -1, + 234, -1, 82, 33, 228, 200, -1, 47, 200, 236, + 31, -1, 236, 237, -1, 237, -1, 82, 201, 273, + 202, 33, 228, 200, -1, 238, 145, 239, -1, 239, + -1, 57, -1, 45, -1, 83, -1, 352, -1, 353, + -1, -1, 76, 200, 241, 246, 31, -1, -1, 76, + 201, 340, 202, 200, 242, 246, 31, -1, -1, 76, + 201, 129, 202, 200, 243, 246, 31, -1, -1, 76, + 201, 119, 145, 238, 202, 244, 200, 246, 31, -1, + -1, 76, 201, 119, 202, 245, 200, 246, 31, -1, + 246, 247, -1, 246, 249, -1, 247, -1, 249, -1, + 248, 33, 248, 200, -1, 248, 200, -1, 201, 248, + 202, -1, 250, -1, 42, -1, 51, -1, 248, 147, + 248, -1, 248, 146, 248, -1, 248, 148, 248, -1, + 248, 149, 248, -1, 248, 144, 248, -1, 248, 143, + 248, -1, 248, 142, 248, -1, 248, 141, 248, -1, + 248, 140, 248, -1, 248, 138, 248, -1, 248, 151, + 248, -1, 146, 248, -1, 147, 248, -1, 152, 201, + 248, 202, -1, 153, 201, 248, 202, -1, 154, 201, + 248, 202, -1, 155, 201, 248, 202, -1, 156, 201, + 248, 202, -1, 157, 201, 248, 202, -1, 158, 201, + 248, 202, -1, 159, 201, 248, 202, -1, 160, 201, + 248, 202, -1, 167, 201, 248, 202, -1, 64, 201, + 248, 145, 248, 202, -1, 72, 201, 248, 145, 248, + 202, -1, 137, 201, 228, 145, 228, 145, 228, 202, + -1, 203, 82, 33, 248, 200, -1, 82, -1, 82, + 201, 273, 202, -1, 112, 200, 253, 31, -1, 78, + 200, 253, 31, -1, 253, 254, -1, 254, -1, 131, + 82, 200, 100, 255, 200, 130, 257, 200, -1, 131, + 82, 200, 120, 228, 200, -1, 131, 82, 33, 228, + 200, -1, 131, 82, 145, 82, 33, 228, 200, -1, + 22, 82, 145, 82, 33, 228, 200, -1, 255, 145, + 51, -1, 255, 145, 51, 204, 51, -1, 51, 204, + 51, -1, 51, -1, 113, 33, 205, 258, 206, 200, + -1, 257, 145, 228, -1, 228, -1, 258, 200, 259, + -1, 259, -1, 259, 145, 201, 228, 202, -1, 259, + 145, 42, -1, 259, 145, 51, -1, 259, 201, 228, + 202, -1, 259, 42, -1, 259, 51, -1, 201, 228, + 202, -1, 42, -1, 51, -1, 121, 200, -1, 121, + 201, 261, 202, 200, -1, 261, 145, 262, -1, 262, + -1, 338, -1, 19, 200, -1, 19, 201, 264, 202, + 200, -1, 264, 145, 265, -1, 265, -1, 338, -1, + 114, 200, -1, 114, 201, 267, 202, 200, -1, 267, + 145, 268, -1, 268, -1, 351, -1, 357, -1, 122, + 200, -1, 122, 201, 270, 202, 200, -1, 122, 272, + 200, -1, 122, 201, 270, 202, 272, 200, -1, 270, + 145, 271, -1, 271, -1, 337, -1, 338, -1, 339, + -1, 340, -1, 341, -1, 342, -1, 343, -1, 344, + -1, 345, -1, 346, -1, 347, -1, 364, -1, 348, + -1, 386, -1, 349, -1, 350, -1, 351, -1, 352, + -1, 354, -1, 355, -1, 356, -1, 390, -1, 391, + -1, 272, 82, -1, 272, 82, 33, 82, -1, 272, + 145, 82, -1, 272, 145, 82, 33, 82, -1, 82, + -1, 82, 33, 82, -1, 147, 51, -1, 146, 51, + -1, 51, -1, 147, 42, -1, 146, 42, -1, 42, + -1, 35, 200, 276, 31, -1, 276, 277, -1, 277, + -1, 278, 145, 279, 200, -1, 120, 82, -1, 82, + -1, 22, 82, 145, 82, -1, 287, 145, 280, -1, + 288, 145, 287, 145, 280, -1, 288, 145, 288, 145, + 288, 145, 287, 145, 280, -1, 288, -1, 288, 145, + 288, 145, 288, -1, 288, 145, 288, -1, 288, 145, + 288, 145, 288, -1, 288, 145, 288, 145, 288, 145, + 288, -1, 288, 145, 288, 145, 288, 145, 288, 145, + 288, -1, 37, 200, 282, 31, -1, 282, 283, -1, + 283, -1, 120, 82, 145, 288, 200, -1, 22, 82, + 145, 82, 145, 288, 200, -1, 82, 145, 288, 200, + -1, 36, 200, 285, 31, -1, 285, 286, -1, 286, + -1, 120, 82, 145, 288, 145, 288, 200, -1, 22, + 82, 145, 82, 145, 288, 145, 288, 200, -1, 82, + 145, 288, 145, 288, 200, -1, 6, -1, 44, -1, + 92, -1, 52, -1, 127, -1, -1, 51, -1, 42, + -1, 82, -1, 146, 51, -1, 146, 42, -1, 34, + 200, -1, 34, 201, 290, 202, 200, -1, 34, 272, + 200, -1, 34, 201, 290, 202, 272, 200, -1, 290, + 145, 291, -1, 291, -1, 357, -1, 358, -1, 359, + -1, 360, -1, 361, -1, 362, -1, 363, -1, 364, + -1, 365, -1, 366, -1, 367, -1, 368, -1, 369, + -1, 370, -1, 371, -1, 372, -1, 373, -1, 374, + -1, 375, -1, 376, -1, 377, -1, 378, -1, 379, + -1, 380, -1, 348, -1, 381, -1, 382, -1, 383, + -1, 384, -1, 385, -1, 387, -1, 388, -1, 392, + -1, 393, -1, 394, -1, 338, -1, 395, -1, 396, + -1, 397, -1, 106, 201, 293, 202, 200, -1, 106, + 201, 293, 202, 272, 200, -1, 293, 145, 294, -1, + 294, -1, 364, -1, 365, -1, 374, -1, 380, -1, + 348, -1, 381, -1, 382, -1, 383, -1, 384, -1, + 385, -1, 392, -1, 393, -1, 394, -1, 107, 201, + 293, 202, 200, -1, 107, 201, 293, 202, 272, 200, + -1, 207, 82, 207, 145, 207, 82, 207, -1, 207, + 82, 207, 145, 288, -1, 296, -1, 297, 145, 296, + -1, 134, 272, 200, -1, 93, 200, 300, 31, -1, + 300, 301, -1, 301, -1, 82, 201, 228, 202, 200, + -1, 128, 272, 200, -1, 95, 200, 304, 31, -1, + 304, 82, 228, 200, -1, 304, 82, 145, 82, 228, + 200, -1, 82, 228, 200, -1, 82, 145, 82, 228, + 200, -1, 98, 272, 200, -1, 97, 200, -1, 97, + 201, 271, 202, 200, -1, 97, 272, 200, -1, 97, + 201, 271, 202, 272, 200, -1, 18, 200, 308, 31, + -1, 308, 309, -1, 309, -1, 82, 310, 33, 228, + 200, -1, 82, 145, 82, 310, 33, 228, 200, -1, + 4, 82, 201, 51, 202, 310, 33, 228, 200, -1, + -1, 201, 51, 202, -1, 201, 42, 202, -1, 17, + 200, -1, 17, 201, 23, 202, 200, -1, 30, 201, + 82, 202, 200, -1, 30, 201, 82, 202, 272, 200, + -1, 30, 82, 200, -1, 30, 201, 82, 208, 82, + 202, 200, -1, 30, 201, 82, 208, 82, 202, 272, + 200, -1, 30, 82, 208, 82, 200, -1, 29, 201, + 82, 202, 200, -1, 29, 201, 82, 202, 272, 200, + -1, 29, 82, 200, -1, 29, 201, 82, 208, 82, + 202, 200, -1, 29, 201, 82, 208, 82, 202, 272, + 200, -1, 29, 82, 208, 82, 200, -1, 77, 201, + 315, 202, 317, 200, -1, 315, 145, 316, -1, 316, + -1, 389, -1, 390, -1, 391, -1, 318, -1, 317, + 145, 318, -1, 318, 201, 288, 202, -1, 317, 145, + 318, 201, 288, 202, -1, 319, -1, 318, 319, -1, + 82, -1, 209, -1, 148, -1, 204, -1, 208, -1, + -1, -1, 101, 321, 248, 322, 200, -1, 124, 200, + -1, 124, 201, 324, 202, 200, -1, 124, 272, 200, + -1, 124, 201, 324, 202, 272, 200, -1, 324, 145, + 325, -1, 325, -1, 271, -1, 398, -1, 399, -1, + 400, -1, 401, -1, 402, -1, 403, -1, 404, -1, + 405, -1, 326, -1, 357, -1, 392, -1, 393, -1, + 359, -1, 361, -1, 358, -1, 360, -1, 395, -1, + 396, -1, 327, 145, 328, -1, 327, -1, 7, 51, + 200, -1, 7, 201, 328, 202, 51, 200, -1, 327, + -1, 382, -1, 365, -1, 406, -1, 330, 145, 331, + -1, 330, -1, 8, 51, 200, -1, 8, 201, 331, + 202, 51, 200, -1, 168, 200, -1, 168, 201, 334, + 202, 200, -1, 335, 145, 334, -1, 335, -1, 407, + -1, 408, -1, 409, -1, 410, -1, 411, -1, 412, + -1, 413, -1, 414, -1, 415, -1, 416, -1, 417, + -1, 418, -1, 419, -1, 420, -1, 421, -1, 422, + -1, 423, -1, 424, -1, 426, -1, 427, -1, 428, + -1, 429, -1, 430, -1, 431, -1, 432, -1, 433, + -1, 425, -1, 51, -1, 42, -1, 26, 33, 51, + -1, 118, 33, 51, -1, 115, 33, 51, -1, 60, + -1, 96, 33, 51, -1, 110, 33, 51, -1, 27, + 33, 51, -1, 3, 33, 51, -1, 86, -1, 88, + -1, 90, -1, 53, 33, 51, -1, 48, 33, 51, + -1, 49, 33, 51, -1, 100, 33, 51, -1, 24, + 33, 336, -1, 63, 33, 336, -1, 114, -1, 116, + 33, 51, -1, 108, 33, 336, -1, 25, 33, 82, + -1, 84, 33, 437, -1, 84, 33, 51, -1, 41, + 33, 51, -1, 102, 33, 51, -1, 103, 33, 51, + -1, 58, 33, 51, -1, 59, 33, 51, -1, 89, + -1, 46, -1, 20, 33, 336, -1, 70, 33, 51, + -1, 65, 33, 336, -1, 67, 33, 336, -1, 94, + 33, 201, 297, 202, -1, 66, 33, 336, -1, 75, + 33, 82, -1, 74, 33, 51, -1, 73, -1, 105, + 33, 336, -1, 68, 33, 51, -1, 69, 33, 51, + -1, 61, -1, 62, -1, 87, -1, 5, -1, 123, + -1, 43, 33, 51, -1, 117, -1, 81, -1, 40, + -1, 109, -1, 54, 33, 51, -1, 55, 33, 51, + -1, 79, 33, 56, -1, 79, 33, 80, -1, 104, + -1, 91, -1, 135, 33, 82, -1, 136, 33, 434, + -1, 39, 33, 437, -1, 21, -1, 85, -1, 71, + -1, 125, 33, 336, -1, 14, 33, 274, -1, 9, + 33, 336, -1, 11, 33, 274, -1, 12, 33, 336, + -1, 13, 33, 51, -1, 10, -1, 15, 33, 51, + -1, 16, 33, 51, -1, 169, 33, 51, -1, 170, + 33, 51, -1, 171, 33, 51, -1, 172, 33, 51, + -1, 173, 33, 51, -1, 174, 33, 51, -1, 175, + 33, 51, -1, 176, 33, 51, -1, 177, 33, 51, + -1, 178, 33, 51, -1, 179, 33, 51, -1, 180, + 33, 51, -1, 181, 33, 51, -1, 182, 33, 51, + -1, 183, 33, 51, -1, 184, 33, 336, -1, 185, + 33, 336, -1, 186, 33, 51, -1, 187, 33, 437, + -1, 188, 33, 336, -1, 189, 33, 336, -1, 193, + 33, 51, -1, 194, 33, 51, -1, 196, 33, 336, + -1, 197, 33, 51, -1, 198, 33, 336, -1, 199, + 33, 336, -1, 82, 204, 82, -1, 51, -1, 51, + 204, 51, -1, 205, 435, -1, 436, 435, -1, 436, + 206, -1 }; /* YYPRHS[YYN] -- Index of the first RHS symbol of rule number YYN in @@ -4018,123 +4071,125 @@ namespace yy 213, 218, 222, 227, 231, 236, 241, 245, 247, 249, 251, 255, 259, 263, 267, 271, 275, 279, 283, 287, 291, 295, 298, 301, 306, 311, 316, 321, 326, 331, - 336, 341, 346, 351, 358, 365, 370, 372, 376, 381, - 389, 393, 398, 401, 403, 408, 413, 416, 418, 426, - 430, 432, 434, 436, 438, 440, 442, 443, 449, 450, - 459, 460, 469, 470, 481, 482, 491, 494, 497, 499, - 501, 506, 509, 513, 515, 517, 519, 523, 527, 531, - 535, 539, 543, 547, 551, 555, 559, 563, 566, 569, - 574, 579, 584, 589, 594, 599, 604, 609, 614, 619, - 626, 633, 639, 641, 646, 651, 656, 659, 661, 671, - 678, 684, 692, 700, 704, 710, 714, 716, 723, 727, - 729, 733, 735, 741, 745, 749, 754, 757, 760, 764, - 766, 768, 771, 777, 781, 783, 785, 788, 794, 798, - 800, 802, 805, 811, 815, 817, 819, 821, 824, 830, - 834, 841, 845, 847, 849, 851, 853, 855, 857, 859, - 861, 863, 865, 867, 869, 871, 873, 875, 877, 879, - 881, 883, 885, 887, 889, 891, 893, 896, 901, 905, - 911, 913, 917, 920, 923, 925, 928, 931, 933, 938, - 941, 943, 948, 951, 953, 958, 962, 968, 978, 980, - 986, 990, 996, 1004, 1014, 1019, 1022, 1024, 1030, 1038, - 1043, 1048, 1051, 1053, 1061, 1071, 1078, 1080, 1082, 1084, - 1086, 1088, 1089, 1091, 1093, 1095, 1098, 1101, 1104, 1110, - 1114, 1121, 1125, 1127, 1129, 1131, 1133, 1135, 1137, 1139, - 1141, 1143, 1145, 1147, 1149, 1151, 1153, 1155, 1157, 1159, - 1161, 1163, 1165, 1167, 1169, 1171, 1173, 1175, 1177, 1179, - 1181, 1183, 1185, 1187, 1189, 1191, 1193, 1195, 1197, 1199, - 1201, 1203, 1205, 1211, 1218, 1222, 1224, 1226, 1228, 1230, - 1232, 1234, 1236, 1238, 1240, 1242, 1244, 1246, 1248, 1250, - 1256, 1263, 1271, 1277, 1279, 1283, 1287, 1292, 1295, 1297, - 1303, 1307, 1312, 1317, 1324, 1328, 1334, 1338, 1341, 1347, - 1351, 1358, 1363, 1366, 1368, 1374, 1382, 1392, 1393, 1397, - 1401, 1404, 1410, 1416, 1423, 1427, 1435, 1444, 1450, 1456, - 1463, 1467, 1475, 1484, 1490, 1497, 1501, 1503, 1505, 1507, - 1509, 1511, 1515, 1520, 1527, 1529, 1532, 1534, 1536, 1538, - 1540, 1542, 1543, 1544, 1550, 1553, 1559, 1563, 1570, 1574, - 1576, 1578, 1580, 1582, 1584, 1586, 1588, 1590, 1592, 1594, - 1596, 1598, 1600, 1602, 1604, 1606, 1608, 1610, 1612, 1614, - 1618, 1620, 1624, 1631, 1633, 1635, 1637, 1639, 1643, 1645, - 1649, 1656, 1659, 1665, 1669, 1671, 1673, 1675, 1677, 1679, - 1681, 1683, 1685, 1687, 1689, 1691, 1693, 1695, 1697, 1699, - 1701, 1703, 1705, 1707, 1709, 1711, 1713, 1715, 1717, 1719, - 1721, 1723, 1725, 1727, 1729, 1733, 1737, 1741, 1743, 1747, - 1751, 1755, 1759, 1761, 1763, 1765, 1769, 1773, 1777, 1781, - 1785, 1789, 1791, 1795, 1799, 1803, 1807, 1811, 1815, 1819, - 1823, 1827, 1831, 1833, 1835, 1839, 1843, 1847, 1851, 1857, - 1861, 1865, 1869, 1871, 1875, 1879, 1883, 1885, 1887, 1889, - 1891, 1893, 1897, 1899, 1901, 1903, 1905, 1909, 1913, 1917, - 1921, 1923, 1925, 1929, 1933, 1937, 1939, 1941, 1943, 1947, - 1951, 1955, 1959, 1963, 1967, 1969, 1973, 1977, 1981, 1985, - 1989, 1993, 1997, 2001, 2005, 2009, 2013, 2017, 2021, 2025, - 2029, 2033, 2037, 2041, 2045, 2049, 2053, 2057, 2061, 2065, - 2069, 2073, 2077, 2081, 2085, 2089, 2091, 2095, 2098, 2101 + 336, 341, 346, 351, 358, 365, 370, 379, 381, 385, + 390, 398, 402, 407, 410, 412, 417, 422, 425, 427, + 435, 439, 441, 443, 445, 447, 449, 451, 452, 458, + 459, 468, 469, 478, 479, 490, 491, 500, 503, 506, + 508, 510, 515, 518, 522, 524, 526, 528, 532, 536, + 540, 544, 548, 552, 556, 560, 564, 568, 572, 575, + 578, 583, 588, 593, 598, 603, 608, 613, 618, 623, + 628, 635, 642, 651, 657, 659, 664, 669, 674, 677, + 679, 689, 696, 702, 710, 718, 722, 728, 732, 734, + 741, 745, 747, 751, 753, 759, 763, 767, 772, 775, + 778, 782, 784, 786, 789, 795, 799, 801, 803, 806, + 812, 816, 818, 820, 823, 829, 833, 835, 837, 839, + 842, 848, 852, 859, 863, 865, 867, 869, 871, 873, + 875, 877, 879, 881, 883, 885, 887, 889, 891, 893, + 895, 897, 899, 901, 903, 905, 907, 909, 911, 914, + 919, 923, 929, 931, 935, 938, 941, 943, 946, 949, + 951, 956, 959, 961, 966, 969, 971, 976, 980, 986, + 996, 998, 1004, 1008, 1014, 1022, 1032, 1037, 1040, 1042, + 1048, 1056, 1061, 1066, 1069, 1071, 1079, 1089, 1096, 1098, + 1100, 1102, 1104, 1106, 1107, 1109, 1111, 1113, 1116, 1119, + 1122, 1128, 1132, 1139, 1143, 1145, 1147, 1149, 1151, 1153, + 1155, 1157, 1159, 1161, 1163, 1165, 1167, 1169, 1171, 1173, + 1175, 1177, 1179, 1181, 1183, 1185, 1187, 1189, 1191, 1193, + 1195, 1197, 1199, 1201, 1203, 1205, 1207, 1209, 1211, 1213, + 1215, 1217, 1219, 1221, 1223, 1229, 1236, 1240, 1242, 1244, + 1246, 1248, 1250, 1252, 1254, 1256, 1258, 1260, 1262, 1264, + 1266, 1268, 1274, 1281, 1289, 1295, 1297, 1301, 1305, 1310, + 1313, 1315, 1321, 1325, 1330, 1335, 1342, 1346, 1352, 1356, + 1359, 1365, 1369, 1376, 1381, 1384, 1386, 1392, 1400, 1410, + 1411, 1415, 1419, 1422, 1428, 1434, 1441, 1445, 1453, 1462, + 1468, 1474, 1481, 1485, 1493, 1502, 1508, 1515, 1519, 1521, + 1523, 1525, 1527, 1529, 1533, 1538, 1545, 1547, 1550, 1552, + 1554, 1556, 1558, 1560, 1561, 1562, 1568, 1571, 1577, 1581, + 1588, 1592, 1594, 1596, 1598, 1600, 1602, 1604, 1606, 1608, + 1610, 1612, 1614, 1616, 1618, 1620, 1622, 1624, 1626, 1628, + 1630, 1632, 1636, 1638, 1642, 1649, 1651, 1653, 1655, 1657, + 1661, 1663, 1667, 1674, 1677, 1683, 1687, 1689, 1691, 1693, + 1695, 1697, 1699, 1701, 1703, 1705, 1707, 1709, 1711, 1713, + 1715, 1717, 1719, 1721, 1723, 1725, 1727, 1729, 1731, 1733, + 1735, 1737, 1739, 1741, 1743, 1745, 1747, 1751, 1755, 1759, + 1761, 1765, 1769, 1773, 1777, 1779, 1781, 1783, 1787, 1791, + 1795, 1799, 1803, 1807, 1809, 1813, 1817, 1821, 1825, 1829, + 1833, 1837, 1841, 1845, 1849, 1851, 1853, 1857, 1861, 1865, + 1869, 1875, 1879, 1883, 1887, 1889, 1893, 1897, 1901, 1903, + 1905, 1907, 1909, 1911, 1915, 1917, 1919, 1921, 1923, 1927, + 1931, 1935, 1939, 1941, 1943, 1947, 1951, 1955, 1957, 1959, + 1961, 1965, 1969, 1973, 1977, 1981, 1985, 1987, 1991, 1995, + 1999, 2003, 2007, 2011, 2015, 2019, 2023, 2027, 2031, 2035, + 2039, 2043, 2047, 2051, 2055, 2059, 2063, 2067, 2071, 2075, + 2079, 2083, 2087, 2091, 2095, 2099, 2103, 2107, 2109, 2113, + 2116, 2119 }; /* YYRLINE[YYN] -- Source line where rule number YYN was defined. */ const unsigned short int parser::yyrline_[] = { - 0, 97, 97, 98, 101, 102, 103, 104, 105, 106, - 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, - 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, - 137, 138, 139, 140, 143, 144, 145, 146, 150, 152, - 156, 158, 160, 162, 164, 166, 168, 170, 172, 174, - 176, 180, 182, 184, 186, 188, 190, 194, 196, 198, - 200, 202, 204, 208, 210, 212, 214, 216, 218, 222, - 224, 228, 230, 234, 236, 241, 243, 245, 247, 249, - 251, 253, 255, 257, 259, 261, 263, 265, 267, 269, - 271, 273, 275, 277, 279, 281, 283, 285, 287, 289, - 291, 293, 295, 297, 299, 301, 305, 307, 311, 313, - 317, 319, 321, 322, 325, 327, 329, 330, 333, 335, - 336, 339, 341, 343, 345, 346, 349, 349, 351, 351, - 353, 353, 356, 355, 358, 358, 362, 363, 364, 365, - 368, 370, 374, 376, 377, 379, 381, 383, 385, 387, - 389, 391, 393, 395, 397, 399, 401, 403, 405, 407, - 409, 411, 413, 415, 417, 419, 421, 423, 425, 427, - 429, 433, 436, 438, 442, 444, 446, 447, 450, 452, - 454, 456, 458, 462, 464, 466, 468, 473, 476, 478, - 482, 484, 488, 490, 492, 494, 496, 498, 500, 502, - 504, 508, 510, 514, 515, 518, 520, 522, 526, 527, - 530, 532, 534, 538, 539, 542, 543, 546, 548, 550, - 552, 556, 557, 560, 561, 562, 563, 564, 565, 566, - 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, - 577, 578, 579, 580, 581, 582, 585, 587, 589, 591, - 593, 595, 599, 601, 603, 607, 609, 611, 615, 617, - 619, 623, 625, 631, 637, 647, 652, 659, 670, 675, - 686, 693, 702, 713, 728, 731, 733, 737, 745, 755, - 765, 768, 770, 774, 784, 796, 808, 810, 812, 814, - 816, 820, 821, 822, 823, 824, 826, 830, 832, 834, - 836, 840, 841, 844, 845, 846, 847, 848, 849, 850, - 851, 852, 853, 854, 855, 856, 857, 858, 859, 860, - 861, 862, 863, 864, 865, 866, 867, 868, 869, 870, - 871, 872, 873, 874, 875, 876, 877, 878, 879, 880, - 881, 882, 885, 887, 891, 892, 895, 896, 897, 898, - 899, 900, 901, 902, 903, 904, 905, 906, 907, 910, - 912, 916, 918, 922, 923, 926, 928, 930, 931, 934, - 936, 938, 940, 942, 944, 946, 950, 952, 954, 956, - 958, 962, 964, 965, 968, 970, 972, 976, 977, 979, - 983, 985, 989, 991, 993, 995, 997, 999, 1003, 1005, - 1007, 1009, 1011, 1013, 1017, 1020, 1021, 1024, 1025, 1026, - 1029, 1031, 1033, 1035, 1039, 1041, 1045, 1046, 1048, 1050, - 1052, 1056, 1057, 1056, 1059, 1061, 1063, 1065, 1069, 1070, - 1073, 1074, 1077, 1078, 1079, 1080, 1081, 1082, 1083, 1086, - 1087, 1088, 1089, 1090, 1091, 1092, 1093, 1094, 1095, 1098, - 1099, 1102, 1104, 1108, 1109, 1110, 1111, 1114, 1115, 1118, - 1120, 1124, 1126, 1130, 1131, 1134, 1135, 1136, 1137, 1138, - 1139, 1140, 1141, 1142, 1143, 1144, 1145, 1146, 1147, 1148, - 1149, 1150, 1151, 1152, 1153, 1154, 1155, 1156, 1157, 1158, - 1159, 1160, 1163, 1164, 1167, 1168, 1169, 1170, 1171, 1172, - 1173, 1174, 1175, 1176, 1177, 1178, 1179, 1180, 1181, 1183, - 1184, 1185, 1186, 1187, 1188, 1189, 1191, 1194, 1195, 1196, - 1197, 1198, 1199, 1201, 1204, 1205, 1206, 1207, 1208, 1209, - 1210, 1211, 1212, 1213, 1214, 1215, 1216, 1217, 1218, 1219, - 1220, 1221, 1222, 1223, 1224, 1225, 1226, 1227, 1228, 1230, - 1233, 1234, 1235, 1236, 1237, 1238, 1239, 1240, 1241, 1243, - 1244, 1245, 1246, 1247, 1248, 1249, 1250, 1252, 1253, 1254, - 1255, 1256, 1257, 1258, 1259, 1260, 1261, 1262, 1263, 1264, - 1265, 1266, 1267, 1268, 1269, 1270, 1272, 1273, 1279, 1280, - 1284, 1285, 1286, 1287, 1290, 1298, 1299, 1308, 1310, 1319 + 0, 98, 98, 99, 102, 103, 104, 105, 106, 107, + 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, + 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, + 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, + 138, 139, 140, 141, 144, 145, 146, 147, 151, 153, + 157, 159, 161, 163, 165, 167, 169, 171, 173, 175, + 177, 181, 183, 185, 187, 189, 191, 195, 197, 199, + 201, 203, 205, 209, 211, 213, 215, 217, 219, 223, + 225, 229, 231, 235, 237, 242, 244, 246, 248, 250, + 252, 254, 256, 258, 260, 262, 264, 266, 268, 270, + 272, 274, 276, 278, 280, 282, 284, 286, 288, 290, + 292, 294, 296, 298, 300, 302, 304, 308, 310, 314, + 316, 320, 322, 324, 325, 328, 330, 332, 333, 336, + 338, 339, 342, 344, 346, 348, 349, 352, 352, 354, + 354, 356, 356, 359, 358, 361, 361, 365, 366, 367, + 368, 371, 373, 377, 379, 380, 382, 384, 386, 388, + 390, 392, 394, 396, 398, 400, 402, 404, 406, 408, + 410, 412, 414, 416, 418, 420, 422, 424, 426, 428, + 430, 432, 434, 438, 441, 443, 447, 449, 451, 452, + 455, 457, 459, 461, 463, 467, 469, 471, 473, 478, + 481, 483, 487, 489, 493, 495, 497, 499, 501, 503, + 505, 507, 509, 513, 515, 519, 520, 523, 525, 527, + 531, 532, 535, 537, 539, 543, 544, 547, 548, 551, + 553, 555, 557, 561, 562, 565, 566, 567, 568, 569, + 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, + 580, 581, 582, 583, 584, 585, 586, 587, 590, 592, + 594, 596, 598, 600, 604, 606, 608, 612, 614, 616, + 620, 622, 624, 628, 630, 636, 642, 652, 657, 664, + 675, 680, 691, 698, 707, 718, 733, 736, 738, 742, + 750, 760, 770, 773, 775, 779, 789, 801, 813, 815, + 817, 819, 821, 825, 826, 827, 828, 829, 831, 835, + 837, 839, 841, 845, 846, 849, 850, 851, 852, 853, + 854, 855, 856, 857, 858, 859, 860, 861, 862, 863, + 864, 865, 866, 867, 868, 869, 870, 871, 872, 873, + 874, 875, 876, 877, 878, 879, 880, 881, 882, 883, + 884, 885, 886, 887, 890, 892, 896, 897, 900, 901, + 902, 903, 904, 905, 906, 907, 908, 909, 910, 911, + 912, 915, 917, 921, 923, 927, 928, 931, 933, 935, + 936, 939, 941, 943, 945, 947, 949, 951, 955, 957, + 959, 961, 963, 967, 969, 970, 973, 975, 977, 981, + 982, 984, 988, 990, 994, 996, 998, 1000, 1002, 1004, + 1008, 1010, 1012, 1014, 1016, 1018, 1022, 1025, 1026, 1029, + 1030, 1031, 1034, 1036, 1038, 1040, 1044, 1046, 1050, 1051, + 1053, 1055, 1057, 1061, 1062, 1061, 1064, 1066, 1068, 1070, + 1074, 1075, 1078, 1079, 1082, 1083, 1084, 1085, 1086, 1087, + 1088, 1091, 1092, 1093, 1094, 1095, 1096, 1097, 1098, 1099, + 1100, 1103, 1104, 1107, 1109, 1113, 1114, 1115, 1116, 1119, + 1120, 1123, 1125, 1129, 1131, 1135, 1136, 1139, 1140, 1141, + 1142, 1143, 1144, 1145, 1146, 1147, 1148, 1149, 1150, 1151, + 1152, 1153, 1154, 1155, 1156, 1157, 1158, 1159, 1160, 1161, + 1162, 1163, 1164, 1165, 1168, 1169, 1172, 1173, 1174, 1175, + 1176, 1177, 1178, 1179, 1180, 1181, 1182, 1183, 1184, 1185, + 1186, 1188, 1189, 1190, 1191, 1192, 1193, 1194, 1196, 1199, + 1200, 1201, 1202, 1203, 1204, 1206, 1209, 1210, 1211, 1212, + 1213, 1214, 1215, 1216, 1217, 1218, 1219, 1220, 1221, 1222, + 1223, 1224, 1225, 1226, 1227, 1228, 1229, 1230, 1231, 1232, + 1233, 1235, 1238, 1239, 1240, 1241, 1242, 1243, 1244, 1245, + 1246, 1248, 1249, 1250, 1251, 1252, 1253, 1254, 1255, 1257, + 1258, 1259, 1260, 1261, 1262, 1263, 1264, 1265, 1266, 1267, + 1268, 1269, 1270, 1271, 1272, 1273, 1274, 1275, 1277, 1278, + 1284, 1285, 1289, 1290, 1291, 1292, 1295, 1303, 1304, 1313, + 1315, 1324 }; // Print the state stack on the debug stream. @@ -4177,13 +4232,13 @@ namespace yy 0, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 202, 2, 2, 2, 206, - 200, 201, 2, 2, 2, 2, 207, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 203, 199, + 2, 2, 2, 2, 2, 203, 2, 2, 2, 207, + 201, 202, 2, 2, 2, 2, 208, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 204, 200, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 204, 208, 205, 2, 2, 2, 2, 2, 2, + 2, 205, 209, 206, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, @@ -4219,7 +4274,7 @@ namespace yy 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, - 195, 196, 197, 198 + 195, 196, 197, 198, 199 }; if ((unsigned int) t <= yyuser_token_number_max_) return translate_table[t]; @@ -4228,20 +4283,20 @@ namespace yy } const int parser::yyeof_ = 0; - const int parser::yylast_ = 2192; + const int parser::yylast_ = 2379; const int parser::yynnts_ = 228; const int parser::yyempty_ = -2; const int parser::yyfinal_ = 160; const int parser::yyterror_ = 1; const int parser::yyerrcode_ = 256; - const int parser::yyntokens_ = 209; + const int parser::yyntokens_ = 210; - const unsigned int parser::yyuser_token_number_max_ = 453; + const unsigned int parser::yyuser_token_number_max_ = 454; const parser::token_number_type parser::yyundef_token_ = 2; } // namespace yy -#line 1321 "DynareBison.yy" +#line 1326 "DynareBison.yy" void