00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033
00034
00035
00036
00037
00038
00039
00040
00041
00042
00043
00044
00045
00046 #define YYBISON 1
00047
00048
00049 #define YYBISON_VERSION "2.4.1"
00050
00051
00052 #define YYSKELETON_NAME "yacc.c"
00053
00054
00055 #define YYPURE 1
00056
00057
00058 #define YYPUSH 0
00059
00060
00061 #define YYPULL 1
00062
00063
00064 #define YYLSP_NEEDED 1
00065
00066
00067 #define yyparse osolparse
00068 #define yylex osollex
00069 #define yyerror osolerror
00070 #define yylval osollval
00071 #define yychar osolchar
00072 #define yydebug osoldebug
00073 #define yynerrs osolnerrs
00074 #define yylloc osollloc
00075
00076
00077
00078
00079
00080
00081 #include "OSMathUtil.h"
00082 #include "OSParameters.h"
00083 #include "OSGeneral.h"
00084 #include "OSConfig.h"
00085 #include "OSErrorClass.h"
00086 #include "OSOption.h"
00087 #include "OSoLParserData.h"
00088 #include "OSgLParserData.h"
00089 #include "OSBase64.h"
00090
00091 #include <iostream>
00092 #include <sstream>
00093 #include <stdio.h>
00094
00095
00096
00097 #ifdef DEBUG
00098 #define YYDEBUG 1
00099 #endif
00100
00101 typedef struct yy_buffer_state *YY_BUFFER_STATE;
00102 YY_BUFFER_STATE osol_scan_string (const char *yy_str , void* yyscanner );
00103 int osollex_init(void** ptr_yy_globals);
00104 int osollex_destroy (void* yyscanner );
00105 int osolget_lineno( void* yyscanner);
00106 char *osolget_text (void* yyscanner );
00107 void osolset_lineno (int line_number , void* yyscanner );
00108 void osolset_extra (OSoLParserData* parserData , void* yyscanner );
00109 void yygetOSOption(const char *ch, OSOption* m_osoption, OSoLParserData *m_parserData, OSgLParserData *osglData ) throw(ErrorClass);
00110 void osol_empty_vectors( OSoLParserData* parserData);
00111 void osgl_empty_vectors( OSgLParserData* osglData);
00112
00113
00114
00115
00116
00117
00118
00119 #ifndef YYDEBUG
00120 # define YYDEBUG 0
00121 #endif
00122
00123
00124 #ifdef YYERROR_VERBOSE
00125 # undef YYERROR_VERBOSE
00126 # define YYERROR_VERBOSE 1
00127 #else
00128 # define YYERROR_VERBOSE 0
00129 #endif
00130
00131
00132 #ifndef YYTOKEN_TABLE
00133 # define YYTOKEN_TABLE 0
00134 #endif
00135
00136
00137
00138 #ifndef YYTOKENTYPE
00139 # define YYTOKENTYPE
00140
00141
00142 enum yytokentype {
00143 ATTRIBUTETEXT = 258,
00144 ELEMENTTEXT = 259,
00145 ITEMTEXT = 260,
00146 INTEGER = 261,
00147 DOUBLE = 262,
00148 QUOTE = 263,
00149 TWOQUOTES = 264,
00150 GREATERTHAN = 265,
00151 ENDOFELEMENT = 266,
00152 OSOLSTART = 267,
00153 OSOLSTARTEMPTY = 268,
00154 OSOLATTRIBUTETEXT = 269,
00155 OSOLEND = 270,
00156 NUMBEROFOTHEROPTIONSATT = 271,
00157 NUMBEROFENUMERATIONSATT = 272,
00158 NUMBEROFJOBIDSATT = 273,
00159 NUMBEROFPATHSATT = 274,
00160 NUMBEROFPATHPAIRSATT = 275,
00161 FROMATT = 276,
00162 TOATT = 277,
00163 MAKECOPYATT = 278,
00164 CATEGORYATT = 279,
00165 TYPEATT = 280,
00166 GROUPWEIGHTATT = 281,
00167 NUMBEROFPROCESSESATT = 282,
00168 NUMBEROFSOLVEROPTIONSATT = 283,
00169 NUMBEROFSOSATT = 284,
00170 NUMBEROFVARIABLESATT = 285,
00171 NUMBEROFOBJECTIVESATT = 286,
00172 NUMBEROFCONSTRAINTSATT = 287,
00173 NUMBEROFOTHERVARIABLEOPTIONSATT = 288,
00174 NUMBEROFOTHEROBJECTIVEOPTIONSATT = 289,
00175 NUMBEROFOTHERCONSTRAINTOPTIONSATT = 290,
00176 NUMBEROFITEMSATT = 291,
00177 NUMBEROFVARATT = 292,
00178 NUMBEROFOBJATT = 293,
00179 NUMBEROFCONATT = 294,
00180 NUMBEROFELATT = 295,
00181 NAMEATT = 296,
00182 IDXATT = 297,
00183 SOSIDXATT = 298,
00184 VALUEATT = 299,
00185 UNITATT = 300,
00186 DESCRIPTIONATT = 301,
00187 EMPTYTYPEATT = 302,
00188 EMPTYNAMEATT = 303,
00189 EMPTYCATEGORYATT = 304,
00190 EMPTYDESCRIPTIONATT = 305,
00191 EMPTYUNITATT = 306,
00192 EMPTYVALUEATT = 307,
00193 EMPTYLBVALUEATT = 308,
00194 EMPTYUBVALUEATT = 309,
00195 LBVALUEATT = 310,
00196 UBVALUEATT = 311,
00197 EMPTYLBDUALVALUEATT = 312,
00198 EMPTYUBDUALVALUEATT = 313,
00199 LBDUALVALUEATT = 314,
00200 UBDUALVALUEATT = 315,
00201 SOLVERATT = 316,
00202 EMPTYSOLVERATT = 317,
00203 WEIGHTATT = 318,
00204 EMPTYWEIGHTATT = 319,
00205 TRANSPORTTYPEATT = 320,
00206 LOCATIONTYPEATT = 321,
00207 HEADERSTART = 322,
00208 HEADEREND = 323,
00209 GENERALSTART = 324,
00210 GENERALEND = 325,
00211 SYSTEMSTART = 326,
00212 SYSTEMEND = 327,
00213 SERVICESTART = 328,
00214 SERVICEEND = 329,
00215 JOBSTART = 330,
00216 JOBEND = 331,
00217 OPTIMIZATIONSTART = 332,
00218 OPTIMIZATIONEND = 333,
00219 FILENAMESTART = 334,
00220 FILENAMEEND = 335,
00221 FILENAMEEMPTY = 336,
00222 FILENAMESTARTANDEND = 337,
00223 FILESOURCESTART = 338,
00224 FILESOURCEEND = 339,
00225 FILESOURCEEMPTY = 340,
00226 FILESOURCESTARTANDEND = 341,
00227 FILEDESCRIPTIONSTART = 342,
00228 FILEDESCRIPTIONEND = 343,
00229 FILEDESCRIPTIONEMPTY = 344,
00230 FILEDESCRIPTIONSTARTANDEND = 345,
00231 FILECREATORSTART = 346,
00232 FILECREATOREND = 347,
00233 FILECREATOREMPTY = 348,
00234 FILECREATORSTARTANDEND = 349,
00235 FILELICENCESTART = 350,
00236 FILELICENCEEND = 351,
00237 FILELICENCEEMPTY = 352,
00238 FILELICENCESTARTANDEND = 353,
00239 SERVICEURISTART = 354,
00240 SERVICEURIEND = 355,
00241 SERVICENAMESTART = 356,
00242 SERVICENAMEEND = 357,
00243 INSTANCENAMESTART = 358,
00244 INSTANCENAMEEND = 359,
00245 INSTANCELOCATIONSTART = 360,
00246 INSTANCELOCATIONEND = 361,
00247 JOBIDSTART = 362,
00248 JOBIDEND = 363,
00249 SOLVERTOINVOKESTART = 364,
00250 SOLVERTOINVOKEEND = 365,
00251 LICENSESTART = 366,
00252 LICENSEEND = 367,
00253 USERNAMESTART = 368,
00254 USERNAMEEND = 369,
00255 PASSWORDSTART = 370,
00256 PASSWORDEND = 371,
00257 CONTACTSTART = 372,
00258 CONTACTEND = 373,
00259 OTHEROPTIONSSTART = 374,
00260 OTHEROPTIONSEND = 375,
00261 OTHERSTART = 376,
00262 OTHEREND = 377,
00263 MINDISKSPACESTART = 378,
00264 MINDISKSPACEEND = 379,
00265 MINMEMORYSTART = 380,
00266 MINMEMORYEND = 381,
00267 MINCPUSPEEDSTART = 382,
00268 MINCPUSPEEDEND = 383,
00269 MINCPUNUMBERSTART = 384,
00270 MINCPUNUMBEREND = 385,
00271 SERVICETYPESTART = 386,
00272 SERVICETYPEEND = 387,
00273 MAXTIMESTART = 388,
00274 MAXTIMEEND = 389,
00275 REQUESTEDSTARTTIMESTART = 390,
00276 REQUESTEDSTARTTIMEEND = 391,
00277 DEPENDENCIESSTART = 392,
00278 DEPENDENCIESEND = 393,
00279 REQUIREDDIRECTORIESSTART = 394,
00280 REQUIREDDIRECTORIESEND = 395,
00281 REQUIREDFILESSTART = 396,
00282 REQUIREDFILESEND = 397,
00283 PATHSTART = 398,
00284 PATHEND = 399,
00285 PATHPAIRSTART = 400,
00286 PATHPAIREND = 401,
00287 DIRECTORIESTOMAKESTART = 402,
00288 DIRECTORIESTOMAKEEND = 403,
00289 FILESTOMAKESTART = 404,
00290 FILESTOMAKEEND = 405,
00291 DIRECTORIESTODELETESTART = 406,
00292 DIRECTORIESTODELETEEND = 407,
00293 FILESTODELETESTART = 408,
00294 FILESTODELETEEND = 409,
00295 INPUTDIRECTORIESTOMOVESTART = 410,
00296 INPUTDIRECTORIESTOMOVEEND = 411,
00297 INPUTFILESTOMOVESTART = 412,
00298 INPUTFILESTOMOVEEND = 413,
00299 OUTPUTDIRECTORIESTOMOVESTART = 414,
00300 OUTPUTDIRECTORIESTOMOVEEND = 415,
00301 OUTPUTFILESTOMOVESTART = 416,
00302 OUTPUTFILESTOMOVEEND = 417,
00303 PROCESSESTOKILLSTART = 418,
00304 PROCESSESTOKILLEND = 419,
00305 PROCESSSTART = 420,
00306 PROCESSEND = 421,
00307 VARIABLESSTART = 422,
00308 VARIABLESEND = 423,
00309 INITIALVARIABLEVALUESSTART = 424,
00310 INITIALVARIABLEVALUESEND = 425,
00311 VARSTART = 426,
00312 VAREND = 427,
00313 INITIALVARIABLEVALUESSTRINGSTART = 428,
00314 INITIALVARIABLEVALUESSTRINGEND = 429,
00315 INITIALBASISSTATUSSTART = 430,
00316 INITIALBASISSTATUSEND = 431,
00317 BASICSTART = 432,
00318 BASICEND = 433,
00319 ATUPPERSTART = 434,
00320 ATUPPEREND = 435,
00321 ATLOWERSTART = 436,
00322 ATLOWEREND = 437,
00323 SUPERBASICSTART = 438,
00324 SUPERBASICEND = 439,
00325 ISFREESTART = 440,
00326 ISFREEEND = 441,
00327 UNKNOWNSTART = 442,
00328 UNKNOWNEND = 443,
00329 INTEGERVARIABLEBRANCHINGWEIGHTSSTART = 444,
00330 INTEGERVARIABLEBRANCHINGWEIGHTSEND = 445,
00331 SOSVARIABLEBRANCHINGWEIGHTSSTART = 446,
00332 SOSVARIABLEBRANCHINGWEIGHTSEND = 447,
00333 SOSSTART = 448,
00334 SOSEND = 449,
00335 OBJECTIVESSTART = 450,
00336 OBJECTIVESEND = 451,
00337 INITIALOBJECTIVEVALUESSTART = 452,
00338 INITIALOBJECTIVEVALUESEND = 453,
00339 OBJSTART = 454,
00340 OBJEND = 455,
00341 INITIALOBJECTIVEBOUNDSSTART = 456,
00342 INITIALOBJECTIVEBOUNDSEND = 457,
00343 CONSTRAINTSSTART = 458,
00344 CONSTRAINTSEND = 459,
00345 INITIALCONSTRAINTVALUESSTART = 460,
00346 INITIALCONSTRAINTVALUESEND = 461,
00347 CONSTART = 462,
00348 CONEND = 463,
00349 INITIALDUALVALUESSTART = 464,
00350 INITIALDUALVALUESEND = 465,
00351 SOLVEROPTIONSSTART = 466,
00352 SOLVEROPTIONSEND = 467,
00353 SOLVEROPTIONSTART = 468,
00354 SOLVEROPTIONEND = 469,
00355 ENUMERATIONSTART = 470,
00356 ENUMERATIONEND = 471,
00357 ITEMEMPTY = 472,
00358 ITEMSTART = 473,
00359 ITEMEND = 474,
00360 ITEMSTARTANDEND = 475,
00361 BASE64START = 476,
00362 BASE64END = 477,
00363 INCRATT = 478,
00364 MULTATT = 479,
00365 SIZEOFATT = 480,
00366 ELSTART = 481,
00367 ELEND = 482,
00368 DUMMY = 483
00369 };
00370 #endif
00371
00372 #define ATTRIBUTETEXT 258
00373 #define ELEMENTTEXT 259
00374 #define ITEMTEXT 260
00375 #define INTEGER 261
00376 #define DOUBLE 262
00377 #define QUOTE 263
00378 #define TWOQUOTES 264
00379 #define GREATERTHAN 265
00380 #define ENDOFELEMENT 266
00381 #define OSOLSTART 267
00382 #define OSOLSTARTEMPTY 268
00383 #define OSOLATTRIBUTETEXT 269
00384 #define OSOLEND 270
00385 #define NUMBEROFOTHEROPTIONSATT 271
00386 #define NUMBEROFENUMERATIONSATT 272
00387 #define NUMBEROFJOBIDSATT 273
00388 #define NUMBEROFPATHSATT 274
00389 #define NUMBEROFPATHPAIRSATT 275
00390 #define FROMATT 276
00391 #define TOATT 277
00392 #define MAKECOPYATT 278
00393 #define CATEGORYATT 279
00394 #define TYPEATT 280
00395 #define GROUPWEIGHTATT 281
00396 #define NUMBEROFPROCESSESATT 282
00397 #define NUMBEROFSOLVEROPTIONSATT 283
00398 #define NUMBEROFSOSATT 284
00399 #define NUMBEROFVARIABLESATT 285
00400 #define NUMBEROFOBJECTIVESATT 286
00401 #define NUMBEROFCONSTRAINTSATT 287
00402 #define NUMBEROFOTHERVARIABLEOPTIONSATT 288
00403 #define NUMBEROFOTHEROBJECTIVEOPTIONSATT 289
00404 #define NUMBEROFOTHERCONSTRAINTOPTIONSATT 290
00405 #define NUMBEROFITEMSATT 291
00406 #define NUMBEROFVARATT 292
00407 #define NUMBEROFOBJATT 293
00408 #define NUMBEROFCONATT 294
00409 #define NUMBEROFELATT 295
00410 #define NAMEATT 296
00411 #define IDXATT 297
00412 #define SOSIDXATT 298
00413 #define VALUEATT 299
00414 #define UNITATT 300
00415 #define DESCRIPTIONATT 301
00416 #define EMPTYTYPEATT 302
00417 #define EMPTYNAMEATT 303
00418 #define EMPTYCATEGORYATT 304
00419 #define EMPTYDESCRIPTIONATT 305
00420 #define EMPTYUNITATT 306
00421 #define EMPTYVALUEATT 307
00422 #define EMPTYLBVALUEATT 308
00423 #define EMPTYUBVALUEATT 309
00424 #define LBVALUEATT 310
00425 #define UBVALUEATT 311
00426 #define EMPTYLBDUALVALUEATT 312
00427 #define EMPTYUBDUALVALUEATT 313
00428 #define LBDUALVALUEATT 314
00429 #define UBDUALVALUEATT 315
00430 #define SOLVERATT 316
00431 #define EMPTYSOLVERATT 317
00432 #define WEIGHTATT 318
00433 #define EMPTYWEIGHTATT 319
00434 #define TRANSPORTTYPEATT 320
00435 #define LOCATIONTYPEATT 321
00436 #define HEADERSTART 322
00437 #define HEADEREND 323
00438 #define GENERALSTART 324
00439 #define GENERALEND 325
00440 #define SYSTEMSTART 326
00441 #define SYSTEMEND 327
00442 #define SERVICESTART 328
00443 #define SERVICEEND 329
00444 #define JOBSTART 330
00445 #define JOBEND 331
00446 #define OPTIMIZATIONSTART 332
00447 #define OPTIMIZATIONEND 333
00448 #define FILENAMESTART 334
00449 #define FILENAMEEND 335
00450 #define FILENAMEEMPTY 336
00451 #define FILENAMESTARTANDEND 337
00452 #define FILESOURCESTART 338
00453 #define FILESOURCEEND 339
00454 #define FILESOURCEEMPTY 340
00455 #define FILESOURCESTARTANDEND 341
00456 #define FILEDESCRIPTIONSTART 342
00457 #define FILEDESCRIPTIONEND 343
00458 #define FILEDESCRIPTIONEMPTY 344
00459 #define FILEDESCRIPTIONSTARTANDEND 345
00460 #define FILECREATORSTART 346
00461 #define FILECREATOREND 347
00462 #define FILECREATOREMPTY 348
00463 #define FILECREATORSTARTANDEND 349
00464 #define FILELICENCESTART 350
00465 #define FILELICENCEEND 351
00466 #define FILELICENCEEMPTY 352
00467 #define FILELICENCESTARTANDEND 353
00468 #define SERVICEURISTART 354
00469 #define SERVICEURIEND 355
00470 #define SERVICENAMESTART 356
00471 #define SERVICENAMEEND 357
00472 #define INSTANCENAMESTART 358
00473 #define INSTANCENAMEEND 359
00474 #define INSTANCELOCATIONSTART 360
00475 #define INSTANCELOCATIONEND 361
00476 #define JOBIDSTART 362
00477 #define JOBIDEND 363
00478 #define SOLVERTOINVOKESTART 364
00479 #define SOLVERTOINVOKEEND 365
00480 #define LICENSESTART 366
00481 #define LICENSEEND 367
00482 #define USERNAMESTART 368
00483 #define USERNAMEEND 369
00484 #define PASSWORDSTART 370
00485 #define PASSWORDEND 371
00486 #define CONTACTSTART 372
00487 #define CONTACTEND 373
00488 #define OTHEROPTIONSSTART 374
00489 #define OTHEROPTIONSEND 375
00490 #define OTHERSTART 376
00491 #define OTHEREND 377
00492 #define MINDISKSPACESTART 378
00493 #define MINDISKSPACEEND 379
00494 #define MINMEMORYSTART 380
00495 #define MINMEMORYEND 381
00496 #define MINCPUSPEEDSTART 382
00497 #define MINCPUSPEEDEND 383
00498 #define MINCPUNUMBERSTART 384
00499 #define MINCPUNUMBEREND 385
00500 #define SERVICETYPESTART 386
00501 #define SERVICETYPEEND 387
00502 #define MAXTIMESTART 388
00503 #define MAXTIMEEND 389
00504 #define REQUESTEDSTARTTIMESTART 390
00505 #define REQUESTEDSTARTTIMEEND 391
00506 #define DEPENDENCIESSTART 392
00507 #define DEPENDENCIESEND 393
00508 #define REQUIREDDIRECTORIESSTART 394
00509 #define REQUIREDDIRECTORIESEND 395
00510 #define REQUIREDFILESSTART 396
00511 #define REQUIREDFILESEND 397
00512 #define PATHSTART 398
00513 #define PATHEND 399
00514 #define PATHPAIRSTART 400
00515 #define PATHPAIREND 401
00516 #define DIRECTORIESTOMAKESTART 402
00517 #define DIRECTORIESTOMAKEEND 403
00518 #define FILESTOMAKESTART 404
00519 #define FILESTOMAKEEND 405
00520 #define DIRECTORIESTODELETESTART 406
00521 #define DIRECTORIESTODELETEEND 407
00522 #define FILESTODELETESTART 408
00523 #define FILESTODELETEEND 409
00524 #define INPUTDIRECTORIESTOMOVESTART 410
00525 #define INPUTDIRECTORIESTOMOVEEND 411
00526 #define INPUTFILESTOMOVESTART 412
00527 #define INPUTFILESTOMOVEEND 413
00528 #define OUTPUTDIRECTORIESTOMOVESTART 414
00529 #define OUTPUTDIRECTORIESTOMOVEEND 415
00530 #define OUTPUTFILESTOMOVESTART 416
00531 #define OUTPUTFILESTOMOVEEND 417
00532 #define PROCESSESTOKILLSTART 418
00533 #define PROCESSESTOKILLEND 419
00534 #define PROCESSSTART 420
00535 #define PROCESSEND 421
00536 #define VARIABLESSTART 422
00537 #define VARIABLESEND 423
00538 #define INITIALVARIABLEVALUESSTART 424
00539 #define INITIALVARIABLEVALUESEND 425
00540 #define VARSTART 426
00541 #define VAREND 427
00542 #define INITIALVARIABLEVALUESSTRINGSTART 428
00543 #define INITIALVARIABLEVALUESSTRINGEND 429
00544 #define INITIALBASISSTATUSSTART 430
00545 #define INITIALBASISSTATUSEND 431
00546 #define BASICSTART 432
00547 #define BASICEND 433
00548 #define ATUPPERSTART 434
00549 #define ATUPPEREND 435
00550 #define ATLOWERSTART 436
00551 #define ATLOWEREND 437
00552 #define SUPERBASICSTART 438
00553 #define SUPERBASICEND 439
00554 #define ISFREESTART 440
00555 #define ISFREEEND 441
00556 #define UNKNOWNSTART 442
00557 #define UNKNOWNEND 443
00558 #define INTEGERVARIABLEBRANCHINGWEIGHTSSTART 444
00559 #define INTEGERVARIABLEBRANCHINGWEIGHTSEND 445
00560 #define SOSVARIABLEBRANCHINGWEIGHTSSTART 446
00561 #define SOSVARIABLEBRANCHINGWEIGHTSEND 447
00562 #define SOSSTART 448
00563 #define SOSEND 449
00564 #define OBJECTIVESSTART 450
00565 #define OBJECTIVESEND 451
00566 #define INITIALOBJECTIVEVALUESSTART 452
00567 #define INITIALOBJECTIVEVALUESEND 453
00568 #define OBJSTART 454
00569 #define OBJEND 455
00570 #define INITIALOBJECTIVEBOUNDSSTART 456
00571 #define INITIALOBJECTIVEBOUNDSEND 457
00572 #define CONSTRAINTSSTART 458
00573 #define CONSTRAINTSEND 459
00574 #define INITIALCONSTRAINTVALUESSTART 460
00575 #define INITIALCONSTRAINTVALUESEND 461
00576 #define CONSTART 462
00577 #define CONEND 463
00578 #define INITIALDUALVALUESSTART 464
00579 #define INITIALDUALVALUESEND 465
00580 #define SOLVEROPTIONSSTART 466
00581 #define SOLVEROPTIONSEND 467
00582 #define SOLVEROPTIONSTART 468
00583 #define SOLVEROPTIONEND 469
00584 #define ENUMERATIONSTART 470
00585 #define ENUMERATIONEND 471
00586 #define ITEMEMPTY 472
00587 #define ITEMSTART 473
00588 #define ITEMEND 474
00589 #define ITEMSTARTANDEND 475
00590 #define BASE64START 476
00591 #define BASE64END 477
00592 #define INCRATT 478
00593 #define MULTATT 479
00594 #define SIZEOFATT 480
00595 #define ELSTART 481
00596 #define ELEND 482
00597 #define DUMMY 483
00598
00599
00600
00601
00602 #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
00603 typedef union YYSTYPE
00604 {
00605
00606
00607 double dval;
00608 int ival;
00609 char* sval;
00610
00611
00612
00613 } YYSTYPE;
00614 # define YYSTYPE_IS_TRIVIAL 1
00615 # define yystype YYSTYPE
00616 # define YYSTYPE_IS_DECLARED 1
00617 #endif
00618
00619 #if ! defined YYLTYPE && ! defined YYLTYPE_IS_DECLARED
00620 typedef struct YYLTYPE
00621 {
00622 int first_line;
00623 int first_column;
00624 int last_line;
00625 int last_column;
00626 } YYLTYPE;
00627 # define yyltype YYLTYPE
00628 # define YYLTYPE_IS_DECLARED 1
00629 # define YYLTYPE_IS_TRIVIAL 1
00630 #endif
00631
00632
00633
00634
00635
00636
00637 void osolerror(YYLTYPE* type, OSOption *osoption, OSoLParserData *parserData, OSgLParserData *osglData, const char* errormsg ) ;
00638 int osollex(YYSTYPE* lvalp, YYLTYPE* llocp, void* scanner);
00639
00640 #define scanner parserData->scanner
00641
00642
00643
00644 #ifdef short
00645 # undef short
00646 #endif
00647
00648 #ifdef YYTYPE_UINT8
00649 typedef YYTYPE_UINT8 yytype_uint8;
00650 #else
00651 typedef unsigned char yytype_uint8;
00652 #endif
00653
00654 #ifdef YYTYPE_INT8
00655 typedef YYTYPE_INT8 yytype_int8;
00656 #elif (defined __STDC__ || defined __C99__FUNC__ \
00657 || defined __cplusplus || defined _MSC_VER)
00658 typedef signed char yytype_int8;
00659 #else
00660 typedef short int yytype_int8;
00661 #endif
00662
00663 #ifdef YYTYPE_UINT16
00664 typedef YYTYPE_UINT16 yytype_uint16;
00665 #else
00666 typedef unsigned short int yytype_uint16;
00667 #endif
00668
00669 #ifdef YYTYPE_INT16
00670 typedef YYTYPE_INT16 yytype_int16;
00671 #else
00672 typedef short int yytype_int16;
00673 #endif
00674
00675 #ifndef YYSIZE_T
00676 # ifdef __SIZE_TYPE__
00677 # define YYSIZE_T __SIZE_TYPE__
00678 # elif defined size_t
00679 # define YYSIZE_T size_t
00680 # elif ! defined YYSIZE_T && (defined __STDC__ || defined __C99__FUNC__ \
00681 || defined __cplusplus || defined _MSC_VER)
00682 # include <stddef.h>
00683 # define YYSIZE_T size_t
00684 # else
00685 # define YYSIZE_T unsigned int
00686 # endif
00687 #endif
00688
00689 #define YYSIZE_MAXIMUM ((YYSIZE_T) -1)
00690
00691 #ifndef YY_
00692 # if YYENABLE_NLS
00693 # if ENABLE_NLS
00694 # include <libintl.h>
00695 # define YY_(msgid) dgettext ("bison-runtime", msgid)
00696 # endif
00697 # endif
00698 # ifndef YY_
00699 # define YY_(msgid) msgid
00700 # endif
00701 #endif
00702
00703
00704 #if ! defined lint || defined __GNUC__
00705 # define YYUSE(e) ((void) (e))
00706 #else
00707 # define YYUSE(e)
00708 #endif
00709
00710
00711 #ifndef lint
00712 # define YYID(n) (n)
00713 #else
00714 #if (defined __STDC__ || defined __C99__FUNC__ \
00715 || defined __cplusplus || defined _MSC_VER)
00716 static int
00717 YYID (int yyi)
00718 #else
00719 static int
00720 YYID (yyi)
00721 int yyi;
00722 #endif
00723 {
00724 return yyi;
00725 }
00726 #endif
00727
00728 #if ! defined yyoverflow || YYERROR_VERBOSE
00729
00730
00731
00732 # ifdef YYSTACK_USE_ALLOCA
00733 # if YYSTACK_USE_ALLOCA
00734 # ifdef __GNUC__
00735 # define YYSTACK_ALLOC __builtin_alloca
00736 # elif defined __BUILTIN_VA_ARG_INCR
00737 # include <alloca.h>
00738 # elif defined _AIX
00739 # define YYSTACK_ALLOC __alloca
00740 # elif defined _MSC_VER
00741 # include <malloc.h>
00742 # define alloca _alloca
00743 # else
00744 # define YYSTACK_ALLOC alloca
00745 # if ! defined _ALLOCA_H && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \
00746 || defined __cplusplus || defined _MSC_VER)
00747 # include <stdlib.h>
00748 # ifndef _STDLIB_H
00749 # define _STDLIB_H 1
00750 # endif
00751 # endif
00752 # endif
00753 # endif
00754 # endif
00755
00756 # ifdef YYSTACK_ALLOC
00757
00758 # define YYSTACK_FREE(Ptr) do { ; } while (YYID (0))
00759 # ifndef YYSTACK_ALLOC_MAXIMUM
00760
00761
00762
00763
00764 # define YYSTACK_ALLOC_MAXIMUM 4032
00765 # endif
00766 # else
00767 # define YYSTACK_ALLOC YYMALLOC
00768 # define YYSTACK_FREE YYFREE
00769 # ifndef YYSTACK_ALLOC_MAXIMUM
00770 # define YYSTACK_ALLOC_MAXIMUM YYSIZE_MAXIMUM
00771 # endif
00772 # if (defined __cplusplus && ! defined _STDLIB_H \
00773 && ! ((defined YYMALLOC || defined malloc) \
00774 && (defined YYFREE || defined free)))
00775 # include <stdlib.h>
00776 # ifndef _STDLIB_H
00777 # define _STDLIB_H 1
00778 # endif
00779 # endif
00780 # ifndef YYMALLOC
00781 # define YYMALLOC malloc
00782 # if ! defined malloc && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \
00783 || defined __cplusplus || defined _MSC_VER)
00784 void *malloc (YYSIZE_T);
00785 # endif
00786 # endif
00787 # ifndef YYFREE
00788 # define YYFREE free
00789 # if ! defined free && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \
00790 || defined __cplusplus || defined _MSC_VER)
00791 void free (void *);
00792 # endif
00793 # endif
00794 # endif
00795 #endif
00796
00797
00798 #if (! defined yyoverflow \
00799 && (! defined __cplusplus \
00800 || (defined YYLTYPE_IS_TRIVIAL && YYLTYPE_IS_TRIVIAL \
00801 && defined YYSTYPE_IS_TRIVIAL && YYSTYPE_IS_TRIVIAL)))
00802
00803
00804 union yyalloc
00805 {
00806 yytype_int16 yyss_alloc;
00807 YYSTYPE yyvs_alloc;
00808 YYLTYPE yyls_alloc;
00809 };
00810
00811
00812 # define YYSTACK_GAP_MAXIMUM (sizeof (union yyalloc) - 1)
00813
00814
00815
00816 # define YYSTACK_BYTES(N) \
00817 ((N) * (sizeof (yytype_int16) + sizeof (YYSTYPE) + sizeof (YYLTYPE)) \
00818 + 2 * YYSTACK_GAP_MAXIMUM)
00819
00820
00821
00822 # ifndef YYCOPY
00823 # if defined __GNUC__ && 1 < __GNUC__
00824 # define YYCOPY(To, From, Count) \
00825 __builtin_memcpy (To, From, (Count) * sizeof (*(From)))
00826 # else
00827 # define YYCOPY(To, From, Count) \
00828 do \
00829 { \
00830 YYSIZE_T yyi; \
00831 for (yyi = 0; yyi < (Count); yyi++) \
00832 (To)[yyi] = (From)[yyi]; \
00833 } \
00834 while (YYID (0))
00835 # endif
00836 # endif
00837
00838
00839
00840
00841
00842
00843 # define YYSTACK_RELOCATE(Stack_alloc, Stack) \
00844 do \
00845 { \
00846 YYSIZE_T yynewbytes; \
00847 YYCOPY (&yyptr->Stack_alloc, Stack, yysize); \
00848 Stack = &yyptr->Stack_alloc; \
00849 yynewbytes = yystacksize * sizeof (*Stack) + YYSTACK_GAP_MAXIMUM; \
00850 yyptr += yynewbytes / sizeof (*yyptr); \
00851 } \
00852 while (YYID (0))
00853
00854 #endif
00855
00856
00857 #define YYFINAL 6
00858
00859 #define YYLAST 1270
00860
00861
00862 #define YYNTOKENS 233
00863
00864 #define YYNNTS 802
00865
00866 #define YYNRULES 1183
00867
00868 #define YYNSTATES 1639
00869
00870
00871 #define YYUNDEFTOK 2
00872 #define YYMAXUTOK 483
00873
00874 #define YYTRANSLATE(YYX) \
00875 ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)
00876
00877
00878 static const yytype_uint8 yytranslate[] =
00879 {
00880 0, 2, 2, 2, 2, 2, 2, 2, 2, 230,
00881 232, 2, 2, 231, 2, 2, 2, 2, 2, 2,
00882 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
00883 2, 2, 229, 2, 2, 2, 2, 2, 2, 2,
00884 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
00885 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
00886 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
00887 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
00888 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
00889 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
00890 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
00891 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
00892 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
00893 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
00894 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
00895 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
00896 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
00897 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
00898 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
00899 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
00900 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
00901 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
00902 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
00903 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
00904 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
00905 2, 2, 2, 2, 2, 2, 1, 2, 3, 4,
00906 5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
00907 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
00908 25, 26, 27, 28, 29, 30, 31, 32, 33, 34,
00909 35, 36, 37, 38, 39, 40, 41, 42, 43, 44,
00910 45, 46, 47, 48, 49, 50, 51, 52, 53, 54,
00911 55, 56, 57, 58, 59, 60, 61, 62, 63, 64,
00912 65, 66, 67, 68, 69, 70, 71, 72, 73, 74,
00913 75, 76, 77, 78, 79, 80, 81, 82, 83, 84,
00914 85, 86, 87, 88, 89, 90, 91, 92, 93, 94,
00915 95, 96, 97, 98, 99, 100, 101, 102, 103, 104,
00916 105, 106, 107, 108, 109, 110, 111, 112, 113, 114,
00917 115, 116, 117, 118, 119, 120, 121, 122, 123, 124,
00918 125, 126, 127, 128, 129, 130, 131, 132, 133, 134,
00919 135, 136, 137, 138, 139, 140, 141, 142, 143, 144,
00920 145, 146, 147, 148, 149, 150, 151, 152, 153, 154,
00921 155, 156, 157, 158, 159, 160, 161, 162, 163, 164,
00922 165, 166, 167, 168, 169, 170, 171, 172, 173, 174,
00923 175, 176, 177, 178, 179, 180, 181, 182, 183, 184,
00924 185, 186, 187, 188, 189, 190, 191, 192, 193, 194,
00925 195, 196, 197, 198, 199, 200, 201, 202, 203, 204,
00926 205, 206, 207, 208, 209, 210, 211, 212, 213, 214,
00927 215, 216, 217, 218, 219, 220, 221, 222, 223, 224,
00928 225, 226, 227, 228
00929 };
00930
00931 #if YYDEBUG
00932
00933
00934 static const yytype_uint16 yyprhs[] =
00935 {
00936 0, 0, 3, 7, 11, 13, 15, 16, 18, 20,
00937 22, 24, 28, 30, 31, 38, 39, 42, 44, 46,
00938 48, 50, 54, 60, 61, 63, 65, 67, 69, 71,
00939 75, 76, 78, 80, 82, 84, 86, 90, 91, 93,
00940 95, 97, 99, 101, 105, 106, 108, 110, 112, 114,
00941 116, 120, 121, 123, 125, 127, 129, 131, 135, 136,
00942 139, 141, 143, 145, 148, 150, 154, 156, 158, 161,
00943 163, 165, 167, 169, 171, 173, 175, 177, 179, 181,
00944 183, 186, 188, 190, 192, 195, 197, 201, 203, 206,
00945 208, 210, 212, 215, 217, 221, 223, 226, 228, 230,
00946 232, 235, 237, 241, 243, 247, 249, 250, 252, 256,
00947 258, 260, 263, 265, 269, 271, 274, 276, 278, 280,
00948 283, 285, 289, 291, 294, 296, 298, 300, 303, 305,
00949 309, 311, 314, 316, 318, 320, 323, 325, 329, 331,
00950 334, 336, 338, 340, 343, 345, 349, 351, 354, 356,
00951 358, 360, 363, 365, 369, 371, 375, 377, 378, 380,
00952 384, 386, 388, 391, 393, 397, 399, 403, 405, 407,
00953 409, 411, 414, 416, 420, 422, 424, 427, 431, 433,
00954 435, 436, 439, 441, 443, 445, 448, 450, 451, 454,
00955 456, 458, 460, 463, 465, 469, 471, 473, 476, 478,
00956 480, 482, 484, 486, 490, 492, 494, 495, 498, 500,
00957 502, 506, 508, 512, 514, 516, 517, 520, 522, 524,
00958 528, 530, 534, 536, 538, 539, 542, 544, 546, 550,
00959 552, 556, 558, 559, 561, 565, 567, 571, 573, 575,
00960 577, 579, 582, 584, 588, 590, 592, 595, 599, 601,
00961 603, 604, 607, 609, 611, 613, 616, 618, 619, 622,
00962 624, 626, 628, 631, 633, 637, 639, 641, 644, 646,
00963 648, 651, 653, 655, 657, 660, 662, 666, 668, 672,
00964 674, 676, 678, 680, 683, 685, 689, 691, 693, 696,
00965 700, 702, 704, 705, 708, 710, 712, 714, 717, 719,
00966 720, 723, 725, 727, 729, 732, 734, 738, 740, 742,
00967 745, 747, 749, 751, 753, 755, 757, 759, 761, 763,
00968 765, 767, 769, 771, 773, 775, 779, 781, 783, 785,
00969 787, 790, 792, 796, 798, 800, 803, 805, 807, 809,
00970 812, 814, 818, 820, 824, 826, 828, 830, 832, 835,
00971 837, 841, 843, 846, 851, 855, 857, 859, 861, 863,
00972 866, 868, 872, 874, 877, 882, 886, 888, 890, 892,
00973 894, 897, 899, 903, 905, 908, 913, 917, 919, 921,
00974 923, 925, 928, 930, 934, 936, 939, 944, 948, 950,
00975 952, 954, 956, 959, 961, 965, 967, 970, 975, 979,
00976 981, 983, 985, 987, 990, 992, 996, 998, 1001, 1003,
00977 1007, 1009, 1011, 1013, 1015, 1018, 1020, 1024, 1026, 1029,
00978 1031, 1035, 1037, 1039, 1041, 1043, 1046, 1048, 1052, 1054,
00979 1057, 1059, 1063, 1065, 1067, 1069, 1071, 1074, 1076, 1080,
00980 1082, 1085, 1087, 1091, 1093, 1095, 1097, 1099, 1102, 1104,
00981 1108, 1110, 1113, 1118, 1122, 1124, 1126, 1128, 1130, 1133,
00982 1135, 1139, 1141, 1144, 1149, 1153, 1155, 1157, 1159, 1161,
00983 1164, 1166, 1170, 1172, 1175, 1180, 1184, 1186, 1188, 1190,
00984 1192, 1195, 1197, 1201, 1203, 1205, 1208, 1212, 1214, 1216,
00985 1217, 1220, 1222, 1224, 1226, 1229, 1231, 1232, 1236, 1238,
00986 1240, 1241, 1244, 1246, 1248, 1250, 1252, 1254, 1256, 1260,
00987 1265, 1266, 1270, 1272, 1274, 1275, 1277, 1279, 1281, 1283,
00988 1287, 1294, 1295, 1299, 1301, 1303, 1305, 1307, 1310, 1312,
00989 1316, 1318, 1320, 1323, 1327, 1329, 1330, 1333, 1335, 1337,
00990 1340, 1342, 1343, 1347, 1349, 1351, 1353, 1355, 1358, 1360,
00991 1364, 1366, 1368, 1371, 1375, 1377, 1379, 1380, 1383, 1385,
00992 1387, 1390, 1392, 1393, 1396, 1398, 1400, 1402, 1404, 1408,
00993 1415, 1416, 1420, 1422, 1424, 1426, 1428, 1430, 1434, 1436,
00994 1437, 1441, 1443, 1445, 1447, 1449, 1451, 1455, 1457, 1458,
00995 1462, 1464, 1466, 1468, 1470, 1472, 1476, 1478, 1479, 1483,
00996 1485, 1487, 1489, 1491, 1493, 1497, 1499, 1500, 1504, 1506,
00997 1508, 1510, 1512, 1514, 1518, 1520, 1521, 1525, 1527, 1529,
00998 1531, 1533, 1535, 1539, 1541, 1542, 1546, 1548, 1550, 1552,
00999 1554, 1557, 1559, 1563, 1565, 1567, 1570, 1574, 1576, 1578,
01000 1579, 1582, 1584, 1586, 1589, 1591, 1592, 1596, 1598, 1603,
01001 1605, 1607, 1610, 1612, 1616, 1618, 1621, 1625, 1627, 1629,
01002 1630, 1633, 1635, 1637, 1639, 1641, 1643, 1646, 1648, 1652,
01003 1653, 1656, 1660, 1662, 1664, 1665, 1668, 1670, 1672, 1674,
01004 1676, 1678, 1680, 1682, 1684, 1686, 1688, 1691, 1693, 1697,
01005 1699, 1701, 1703, 1706, 1710, 1712, 1714, 1715, 1718, 1720,
01006 1722, 1724, 1726, 1728, 1731, 1733, 1734, 1738, 1740, 1742,
01007 1743, 1745, 1747, 1749, 1751, 1755, 1760, 1761, 1765, 1767,
01008 1769, 1771, 1773, 1776, 1778, 1782, 1784, 1786, 1789, 1793,
01009 1795, 1797, 1798, 1801, 1803, 1805, 1808, 1810, 1811, 1815,
01010 1817, 1819, 1821, 1823, 1826, 1828, 1832, 1834, 1836, 1839,
01011 1843, 1845, 1847, 1848, 1851, 1853, 1855, 1857, 1860, 1862,
01012 1863, 1866, 1868, 1870, 1872, 1874, 1878, 1885, 1886, 1890,
01013 1892, 1894, 1896, 1898, 1900, 1904, 1906, 1907, 1911, 1913,
01014 1915, 1917, 1919, 1921, 1925, 1927, 1928, 1932, 1934, 1936,
01015 1938, 1940, 1942, 1946, 1948, 1949, 1953, 1955, 1957, 1959,
01016 1961, 1963, 1967, 1969, 1970, 1974, 1976, 1978, 1980, 1982,
01017 1984, 1988, 1990, 1991, 1995, 1997, 1999, 2001, 2003, 2005,
01018 2009, 2011, 2012, 2015, 2019, 2021, 2023, 2024, 2027, 2029,
01019 2031, 2033, 2035, 2037, 2039, 2041, 2043, 2045, 2047, 2050,
01020 2052, 2056, 2058, 2060, 2062, 2065, 2069, 2071, 2073, 2074,
01021 2077, 2079, 2081, 2083, 2085, 2087, 2090, 2092, 2093, 2097,
01022 2099, 2101, 2102, 2104, 2106, 2108, 2110, 2114, 2119, 2120,
01023 2124, 2126, 2128, 2130, 2132, 2135, 2137, 2141, 2143, 2145,
01024 2148, 2152, 2154, 2155, 2158, 2160, 2162, 2165, 2167, 2168,
01025 2172, 2174, 2176, 2178, 2180, 2183, 2185, 2189, 2191, 2193,
01026 2196, 2200, 2202, 2204, 2205, 2208, 2210, 2212, 2214, 2217,
01027 2219, 2220, 2223, 2225, 2227, 2229, 2231, 2235, 2242, 2243,
01028 2247, 2249, 2251, 2253, 2255, 2257, 2261, 2263, 2264, 2268,
01029 2270, 2272, 2274, 2276, 2278, 2282, 2284, 2285, 2289, 2291,
01030 2293, 2295, 2297, 2299, 2303, 2305, 2306, 2310, 2312, 2314,
01031 2316, 2318, 2320, 2324, 2326, 2327, 2331, 2333, 2335, 2337,
01032 2339, 2341, 2345, 2347, 2348, 2352, 2354, 2356, 2358, 2360,
01033 2362, 2366, 2368, 2369, 2372, 2376, 2378, 2380, 2381, 2384,
01034 2386, 2388, 2390, 2392, 2394, 2396, 2398, 2400, 2402, 2404,
01035 2407, 2409, 2413, 2415, 2417, 2419, 2422, 2426, 2428, 2430,
01036 2431, 2434, 2436, 2438, 2440, 2442, 2444, 2447, 2449, 2450,
01037 2454, 2456, 2458, 2460, 2462, 2464, 2468, 2469, 2472, 2476,
01038 2478, 2480, 2482, 2485, 2487, 2489, 2491, 2493, 2495, 2497,
01039 2499, 2501, 2503, 2506, 2508, 2512, 2514, 2516, 2519, 2521,
01040 2523, 2525, 2527, 2529, 2533, 2535, 2539, 2541, 2543, 2544,
01041 2547, 2549, 2551, 2553, 2557, 2561, 2565, 2568, 2570, 2572,
01042 2574, 2576, 2578, 2582, 2584, 2586, 2588, 2590, 2594, 2596,
01043 2601, 2603, 2605, 2610, 2612, 2614, 2616, 2618, 2622, 2624,
01044 2626, 2628, 2630, 2635, 2637, 2639, 2641, 2643, 2647, 2649,
01045 2651, 2653, 2655, 2659, 2661, 2663, 2668, 2670, 2672, 2674,
01046 2676, 2680, 2682, 2684, 2686, 2688, 2692, 2694, 2696, 2698,
01047 2700, 2705, 2707, 2709, 2711, 2713, 2717, 2719, 2721, 2723,
01048 2725, 2729, 2734, 2739, 2744, 2749, 2754, 2759, 2764, 2769,
01049 2774, 2779, 2784, 2789, 2794, 2799, 2804, 2809, 2814, 2819,
01050 2821, 2824, 2828, 2830, 2832, 2833, 2836, 2838, 2840, 2842,
01051 2844, 2846, 2848, 2852, 2854, 2856, 2858, 2859, 2862, 2866,
01052 2868, 2870, 2871, 2874, 2876, 2878, 2882, 2886, 2891, 2893,
01053 2895, 2898, 2900, 2904, 2909, 2914, 2916, 2918, 2921, 2922,
01054 2925, 2927, 2929, 2931
01055 };
01056
01057
01058 static const yytype_int16 yyrhs[] =
01059 {
01060 234, 0, -1, 235, 242, 241, -1, 236, 237, 238,
01061 -1, 13, -1, 12, -1, -1, 14, -1, 239, -1,
01062 240, -1, 11, -1, 10, 242, 241, -1, 15, -1,
01063 -1, 243, 269, 355, 403, 431, 563, -1, -1, 244,
01064 245, -1, 67, -1, 246, -1, 247, -1, 11, -1,
01065 10, 248, 68, -1, 249, 253, 257, 261, 265, -1,
01066 -1, 250, -1, 251, -1, 252, -1, 82, -1, 81,
01067 -1, 79, 5, 80, -1, -1, 254, -1, 255, -1,
01068 256, -1, 86, -1, 85, -1, 83, 5, 84, -1,
01069 -1, 258, -1, 259, -1, 260, -1, 90, -1, 89,
01070 -1, 87, 5, 88, -1, -1, 262, -1, 263, -1,
01071 264, -1, 94, -1, 93, -1, 91, 5, 92, -1,
01072 -1, 266, -1, 267, -1, 268, -1, 98, -1, 97,
01073 -1, 95, 5, 96, -1, -1, 270, 271, -1, 69,
01074 -1, 272, -1, 273, -1, 10, 70, -1, 11, -1,
01075 10, 274, 70, -1, 275, -1, 276, -1, 275, 276,
01076 -1, 277, -1, 283, -1, 289, -1, 295, -1, 303,
01077 -1, 309, -1, 315, -1, 321, -1, 327, -1, 333,
01078 -1, 341, -1, 278, 279, -1, 99, -1, 280, -1,
01079 281, -1, 10, 100, -1, 11, -1, 10, 282, 100,
01080 -1, 4, -1, 284, 285, -1, 101, -1, 286, -1,
01081 287, -1, 10, 102, -1, 11, -1, 10, 288, 102,
01082 -1, 4, -1, 290, 291, -1, 103, -1, 292, -1,
01083 293, -1, 10, 104, -1, 11, -1, 10, 294, 104,
01084 -1, 4, -1, 296, 297, 299, -1, 105, -1, -1,
01085 298, -1, 66, 3, 8, -1, 300, -1, 301, -1,
01086 10, 106, -1, 11, -1, 10, 302, 106, -1, 4,
01087 -1, 304, 305, -1, 107, -1, 306, -1, 307, -1,
01088 10, 108, -1, 11, -1, 10, 308, 108, -1, 4,
01089 -1, 310, 311, -1, 109, -1, 312, -1, 313, -1,
01090 10, 110, -1, 11, -1, 10, 314, 110, -1, 4,
01091 -1, 316, 317, -1, 111, -1, 318, -1, 319, -1,
01092 10, 112, -1, 11, -1, 10, 320, 112, -1, 4,
01093 -1, 322, 323, -1, 113, -1, 324, -1, 325, -1,
01094 10, 114, -1, 11, -1, 10, 326, 114, -1, 4,
01095 -1, 328, 329, -1, 115, -1, 330, -1, 331, -1,
01096 10, 116, -1, 11, -1, 10, 332, 116, -1, 4,
01097 -1, 334, 335, 337, -1, 117, -1, -1, 336, -1,
01098 65, 3, 8, -1, 338, -1, 339, -1, 10, 118,
01099 -1, 11, -1, 10, 340, 118, -1, 4, -1, 342,
01100 343, 344, -1, 119, -1, 998, -1, 345, -1, 346,
01101 -1, 10, 120, -1, 11, -1, 10, 347, 120, -1,
01102 348, -1, 349, -1, 348, 349, -1, 350, 351, 354,
01103 -1, 121, -1, 352, -1, -1, 352, 353, -1, 957,
01104 -1, 984, -1, 940, -1, 10, 122, -1, 11, -1,
01105 -1, 356, 357, -1, 71, -1, 358, -1, 359, -1,
01106 10, 72, -1, 11, -1, 10, 360, 72, -1, 361,
01107 -1, 362, -1, 361, 362, -1, 363, -1, 370, -1,
01108 377, -1, 384, -1, 389, -1, 364, 365, 368, -1,
01109 123, -1, 366, -1, -1, 366, 367, -1, 980, -1,
01110 940, -1, 10, 369, 124, -1, 1031, -1, 371, 372,
01111 375, -1, 125, -1, 373, -1, -1, 373, 374, -1,
01112 980, -1, 940, -1, 10, 376, 126, -1, 1031, -1,
01113 378, 379, 382, -1, 127, -1, 380, -1, -1, 380,
01114 381, -1, 980, -1, 940, -1, 10, 383, 128, -1,
01115 1031, -1, 385, 386, 387, -1, 129, -1, -1, 940,
01116 -1, 10, 388, 130, -1, 6, -1, 390, 391, 392,
01117 -1, 119, -1, 998, -1, 393, -1, 394, -1, 10,
01118 120, -1, 11, -1, 10, 395, 120, -1, 396, -1,
01119 397, -1, 396, 397, -1, 398, 399, 402, -1, 121,
01120 -1, 400, -1, -1, 400, 401, -1, 957, -1, 984,
01121 -1, 940, -1, 10, 122, -1, 11, -1, -1, 404,
01122 405, -1, 73, -1, 406, -1, 407, -1, 10, 74,
01123 -1, 11, -1, 10, 408, 74, -1, 409, -1, 410,
01124 -1, 409, 410, -1, 411, -1, 417, -1, 412, 413,
01125 -1, 131, -1, 414, -1, 415, -1, 10, 132, -1,
01126 11, -1, 10, 416, 132, -1, 4, -1, 418, 419,
01127 420, -1, 119, -1, 998, -1, 421, -1, 422, -1,
01128 10, 120, -1, 11, -1, 10, 423, 120, -1, 424,
01129 -1, 425, -1, 424, 425, -1, 426, 427, 430, -1,
01130 121, -1, 428, -1, -1, 428, 429, -1, 957, -1,
01131 984, -1, 940, -1, 10, 122, -1, 11, -1, -1,
01132 432, 433, -1, 75, -1, 434, -1, 435, -1, 10,
01133 76, -1, 11, -1, 10, 436, 76, -1, 437, -1,
01134 438, -1, 437, 438, -1, 439, -1, 447, -1, 453,
01135 -1, 461, -1, 469, -1, 477, -1, 485, -1, 493,
01136 -1, 501, -1, 517, -1, 509, -1, 525, -1, 533,
01137 -1, 541, -1, 549, -1, 440, 441, 442, -1, 133,
01138 -1, 980, -1, 443, -1, 444, -1, 10, 134, -1,
01139 11, -1, 10, 445, 134, -1, 446, -1, 1031, -1,
01140 448, 449, -1, 135, -1, 450, -1, 451, -1, 10,
01141 136, -1, 11, -1, 10, 452, 136, -1, 4, -1,
01142 454, 455, 456, -1, 137, -1, 993, -1, 457, -1,
01143 458, -1, 10, 138, -1, 11, -1, 10, 459, 138,
01144 -1, 460, -1, 459, 460, -1, 107, 10, 4, 108,
01145 -1, 462, 463, 464, -1, 139, -1, 1001, -1, 465,
01146 -1, 466, -1, 10, 140, -1, 11, -1, 10, 467,
01147 140, -1, 468, -1, 467, 468, -1, 143, 10, 4,
01148 144, -1, 470, 471, 472, -1, 141, -1, 1001, -1,
01149 473, -1, 474, -1, 10, 142, -1, 11, -1, 10,
01150 475, 142, -1, 476, -1, 475, 476, -1, 143, 10,
01151 4, 144, -1, 478, 479, 480, -1, 147, -1, 1001,
01152 -1, 481, -1, 482, -1, 10, 148, -1, 11, -1,
01153 10, 483, 148, -1, 484, -1, 483, 484, -1, 143,
01154 10, 4, 144, -1, 486, 487, 488, -1, 149, -1,
01155 1001, -1, 489, -1, 490, -1, 10, 150, -1, 11,
01156 -1, 10, 491, 150, -1, 492, -1, 491, 492, -1,
01157 143, 10, 4, 144, -1, 494, 495, 496, -1, 155,
01158 -1, 1000, -1, 497, -1, 498, -1, 10, 156, -1,
01159 11, -1, 10, 499, 156, -1, 500, -1, 499, 500,
01160 -1, 927, -1, 502, 503, 504, -1, 157, -1, 1000,
01161 -1, 505, -1, 506, -1, 10, 158, -1, 11, -1,
01162 10, 507, 158, -1, 508, -1, 507, 508, -1, 927,
01163 -1, 510, 511, 512, -1, 161, -1, 1000, -1, 513,
01164 -1, 514, -1, 10, 162, -1, 11, -1, 10, 515,
01165 162, -1, 516, -1, 515, 516, -1, 927, -1, 518,
01166 519, 520, -1, 159, -1, 1000, -1, 521, -1, 522,
01167 -1, 10, 160, -1, 11, -1, 10, 523, 160, -1,
01168 524, -1, 523, 524, -1, 927, -1, 526, 527, 528,
01169 -1, 153, -1, 1001, -1, 529, -1, 530, -1, 10,
01170 154, -1, 11, -1, 10, 531, 154, -1, 532, -1,
01171 531, 532, -1, 143, 10, 4, 144, -1, 534, 535,
01172 536, -1, 151, -1, 1001, -1, 537, -1, 538, -1,
01173 10, 152, -1, 11, -1, 10, 539, 152, -1, 540,
01174 -1, 539, 540, -1, 143, 10, 4, 144, -1, 542,
01175 543, 544, -1, 163, -1, 1002, -1, 545, -1, 546,
01176 -1, 10, 164, -1, 11, -1, 10, 547, 164, -1,
01177 548, -1, 547, 548, -1, 165, 10, 4, 166, -1,
01178 550, 551, 552, -1, 119, -1, 998, -1, 553, -1,
01179 554, -1, 10, 120, -1, 11, -1, 10, 555, 120,
01180 -1, 556, -1, 557, -1, 556, 557, -1, 558, 559,
01181 562, -1, 121, -1, 560, -1, -1, 560, 561, -1,
01182 957, -1, 984, -1, 940, -1, 10, 122, -1, 11,
01183 -1, -1, 564, 565, 568, -1, 77, -1, 566, -1,
01184 -1, 566, 567, -1, 1005, -1, 989, -1, 995, -1,
01185 569, -1, 570, -1, 11, -1, 10, 571, 78, -1,
01186 572, 702, 804, 905, -1, -1, 573, 574, 576, -1,
01187 167, -1, 575, -1, -1, 999, -1, 577, -1, 578,
01188 -1, 11, -1, 10, 579, 168, -1, 580, 593, 607,
01189 655, 669, 684, -1, -1, 581, 582, 583, -1, 169,
01190 -1, 1004, -1, 584, -1, 585, -1, 10, 170, -1,
01191 11, -1, 10, 586, 170, -1, 587, -1, 588, -1,
01192 587, 588, -1, 589, 590, 592, -1, 171, -1, -1,
01193 590, 591, -1, 946, -1, 984, -1, 10, 172, -1,
01194 11, -1, -1, 594, 595, 596, -1, 173, -1, 1004,
01195 -1, 597, -1, 598, -1, 10, 174, -1, 11, -1,
01196 10, 599, 174, -1, 600, -1, 601, -1, 600, 601,
01197 -1, 602, 603, 606, -1, 171, -1, 604, -1, -1,
01198 604, 605, -1, 946, -1, 984, -1, 10, 172, -1,
01199 11, -1, -1, 608, 609, -1, 175, -1, 610, -1,
01200 611, -1, 11, -1, 10, 612, 176, -1, 613, 620,
01201 627, 634, 641, 648, -1, -1, 614, 615, 616, -1,
01202 177, -1, 990, -1, 617, -1, 618, -1, 11, -1,
01203 10, 619, 178, -1, 1016, -1, -1, 621, 622, 623,
01204 -1, 181, -1, 990, -1, 624, -1, 625, -1, 11,
01205 -1, 10, 626, 182, -1, 1016, -1, -1, 628, 629,
01206 630, -1, 179, -1, 990, -1, 631, -1, 632, -1,
01207 11, -1, 10, 633, 180, -1, 1016, -1, -1, 635,
01208 636, 637, -1, 185, -1, 990, -1, 638, -1, 639,
01209 -1, 11, -1, 10, 640, 186, -1, 1016, -1, -1,
01210 642, 643, 644, -1, 183, -1, 990, -1, 645, -1,
01211 646, -1, 11, -1, 10, 647, 184, -1, 1016, -1,
01212 -1, 649, 650, 651, -1, 187, -1, 990, -1, 652,
01213 -1, 653, -1, 11, -1, 10, 654, 188, -1, 1016,
01214 -1, -1, 656, 657, 658, -1, 189, -1, 1004, -1,
01215 659, -1, 660, -1, 10, 190, -1, 11, -1, 10,
01216 661, 190, -1, 662, -1, 663, -1, 662, 663, -1,
01217 664, 665, 668, -1, 171, -1, 666, -1, -1, 666,
01218 667, -1, 946, -1, 984, -1, 10, 172, -1, 11,
01219 -1, -1, 670, 671, 672, -1, 191, -1, 29, 8,
01220 6, 8, -1, 673, -1, 674, -1, 10, 192, -1,
01221 11, -1, 10, 675, 192, -1, 676, -1, 675, 676,
01222 -1, 677, 678, 681, -1, 193, -1, 679, -1, -1,
01223 679, 680, -1, 965, -1, 1004, -1, 944, -1, 682,
01224 -1, 683, -1, 10, 194, -1, 11, -1, 10, 662,
01225 194, -1, -1, 684, 685, -1, 686, 687, 690, -1,
01226 121, -1, 688, -1, -1, 688, 689, -1, 1004, -1,
01227 991, -1, 957, -1, 984, -1, 961, -1, 936, -1,
01228 968, -1, 940, -1, 691, -1, 692, -1, 10, 122,
01229 -1, 11, -1, 10, 693, 122, -1, 694, -1, 1006,
01230 -1, 695, -1, 694, 695, -1, 696, 697, 700, -1,
01231 171, -1, 698, -1, -1, 698, 699, -1, 946, -1,
01232 984, -1, 949, -1, 972, -1, 701, -1, 10, 172,
01233 -1, 11, -1, -1, 703, 704, 706, -1, 195, -1,
01234 705, -1, -1, 997, -1, 707, -1, 708, -1, 11,
01235 -1, 10, 709, 196, -1, 710, 724, 738, 786, -1,
01236 -1, 711, 712, 713, -1, 197, -1, 994, -1, 714,
01237 -1, 715, -1, 10, 198, -1, 11, -1, 10, 716,
01238 198, -1, 717, -1, 718, -1, 717, 718, -1, 719,
01239 720, 723, -1, 199, -1, 721, -1, -1, 721, 722,
01240 -1, 946, -1, 984, -1, 10, 200, -1, 11, -1,
01241 -1, 725, 726, 727, -1, 201, -1, 994, -1, 728,
01242 -1, 729, -1, 10, 202, -1, 11, -1, 10, 730,
01243 202, -1, 731, -1, 732, -1, 731, 732, -1, 733,
01244 734, 737, -1, 199, -1, 735, -1, -1, 735, 736,
01245 -1, 946, -1, 949, -1, 972, -1, 10, 200, -1,
01246 11, -1, -1, 739, 740, -1, 175, -1, 741, -1,
01247 742, -1, 11, -1, 10, 743, 176, -1, 744, 751,
01248 758, 765, 772, 779, -1, -1, 745, 746, 747, -1,
01249 177, -1, 990, -1, 748, -1, 749, -1, 11, -1,
01250 10, 750, 178, -1, 1016, -1, -1, 752, 753, 754,
01251 -1, 181, -1, 990, -1, 755, -1, 756, -1, 11,
01252 -1, 10, 757, 182, -1, 1016, -1, -1, 759, 760,
01253 761, -1, 179, -1, 990, -1, 762, -1, 763, -1,
01254 11, -1, 10, 764, 180, -1, 1016, -1, -1, 766,
01255 767, 768, -1, 185, -1, 990, -1, 769, -1, 770,
01256 -1, 11, -1, 10, 771, 186, -1, 1016, -1, -1,
01257 773, 774, 775, -1, 183, -1, 990, -1, 776, -1,
01258 777, -1, 11, -1, 10, 778, 184, -1, 1016, -1,
01259 -1, 780, 781, 782, -1, 187, -1, 990, -1, 783,
01260 -1, 784, -1, 11, -1, 10, 785, 188, -1, 1016,
01261 -1, -1, 786, 787, -1, 788, 789, 792, -1, 121,
01262 -1, 790, -1, -1, 790, 791, -1, 994, -1, 991,
01263 -1, 957, -1, 984, -1, 961, -1, 936, -1, 968,
01264 -1, 940, -1, 793, -1, 794, -1, 10, 122, -1,
01265 11, -1, 10, 795, 122, -1, 796, -1, 1006, -1,
01266 797, -1, 796, 797, -1, 798, 799, 802, -1, 199,
01267 -1, 800, -1, -1, 800, 801, -1, 946, -1, 984,
01268 -1, 949, -1, 972, -1, 803, -1, 10, 200, -1,
01269 11, -1, -1, 805, 806, 808, -1, 203, -1, 807,
01270 -1, -1, 996, -1, 809, -1, 810, -1, 11, -1,
01271 10, 811, 204, -1, 812, 825, 839, 887, -1, -1,
01272 813, 814, 815, -1, 205, -1, 988, -1, 816, -1,
01273 817, -1, 10, 206, -1, 11, -1, 10, 818, 206,
01274 -1, 819, -1, 820, -1, 819, 820, -1, 821, 822,
01275 824, -1, 207, -1, -1, 822, 823, -1, 946, -1,
01276 984, -1, 10, 208, -1, 11, -1, -1, 826, 827,
01277 828, -1, 209, -1, 988, -1, 829, -1, 830, -1,
01278 10, 210, -1, 11, -1, 10, 831, 210, -1, 832,
01279 -1, 833, -1, 832, 833, -1, 834, 835, 838, -1,
01280 207, -1, 836, -1, -1, 836, 837, -1, 946, -1,
01281 953, -1, 976, -1, 10, 208, -1, 11, -1, -1,
01282 840, 841, -1, 175, -1, 842, -1, 843, -1, 11,
01283 -1, 10, 844, 176, -1, 845, 852, 859, 866, 873,
01284 880, -1, -1, 846, 847, 848, -1, 177, -1, 990,
01285 -1, 849, -1, 850, -1, 11, -1, 10, 851, 178,
01286 -1, 1016, -1, -1, 853, 854, 855, -1, 181, -1,
01287 990, -1, 856, -1, 857, -1, 11, -1, 10, 858,
01288 182, -1, 1016, -1, -1, 860, 861, 862, -1, 179,
01289 -1, 990, -1, 863, -1, 864, -1, 11, -1, 10,
01290 865, 180, -1, 1016, -1, -1, 867, 868, 869, -1,
01291 185, -1, 990, -1, 870, -1, 871, -1, 11, -1,
01292 10, 872, 186, -1, 1016, -1, -1, 874, 875, 876,
01293 -1, 183, -1, 990, -1, 877, -1, 878, -1, 11,
01294 -1, 10, 879, 184, -1, 1016, -1, -1, 881, 882,
01295 883, -1, 187, -1, 990, -1, 884, -1, 885, -1,
01296 11, -1, 10, 886, 188, -1, 1016, -1, -1, 887,
01297 888, -1, 889, 890, 893, -1, 121, -1, 891, -1,
01298 -1, 891, 892, -1, 988, -1, 991, -1, 957, -1,
01299 984, -1, 961, -1, 936, -1, 968, -1, 940, -1,
01300 894, -1, 895, -1, 10, 122, -1, 11, -1, 10,
01301 896, 122, -1, 897, -1, 1006, -1, 898, -1, 897,
01302 898, -1, 899, 900, 903, -1, 207, -1, 901, -1,
01303 -1, 901, 902, -1, 946, -1, 984, -1, 949, -1,
01304 972, -1, 904, -1, 10, 208, -1, 11, -1, -1,
01305 906, 907, 908, -1, 211, -1, 1003, -1, 909, -1,
01306 910, -1, 11, -1, 10, 911, 212, -1, -1, 911,
01307 912, -1, 913, 914, 917, -1, 213, -1, 915, -1,
01308 916, -1, 915, 916, -1, 957, -1, 984, -1, 961,
01309 -1, 936, -1, 968, -1, 940, -1, 992, -1, 918,
01310 -1, 919, -1, 10, 214, -1, 11, -1, 10, 920,
01311 214, -1, 921, -1, 922, -1, 921, 922, -1, 923,
01312 -1, 924, -1, 925, -1, 220, -1, 217, -1, 218,
01313 926, 219, -1, 5, -1, 928, 929, 935, -1, 145,
01314 -1, 930, -1, -1, 930, 931, -1, 932, -1, 933,
01315 -1, 934, -1, 21, 3, 8, -1, 22, 3, 8,
01316 -1, 23, 3, 8, -1, 10, 146, -1, 11, -1,
01317 937, -1, 938, -1, 939, -1, 49, -1, 24, 3,
01318 1032, -1, 941, -1, 942, -1, 943, -1, 50, -1,
01319 46, 3, 1032, -1, 945, -1, 26, 8, 1031, 8,
01320 -1, 947, -1, 948, -1, 42, 1032, 6, 1032, -1,
01321 950, -1, 951, -1, 952, -1, 53, -1, 55, 3,
01322 1032, -1, 954, -1, 955, -1, 956, -1, 57, -1,
01323 59, 1032, 1031, 1032, -1, 958, -1, 959, -1, 960,
01324 -1, 48, -1, 41, 3, 1032, -1, 962, -1, 963,
01325 -1, 964, -1, 62, -1, 61, 3, 1032, -1, 966,
01326 -1, 967, -1, 43, 1032, 6, 1032, -1, 969, -1,
01327 970, -1, 971, -1, 47, -1, 25, 3, 8, -1,
01328 973, -1, 974, -1, 975, -1, 54, -1, 56, 3,
01329 1032, -1, 977, -1, 978, -1, 979, -1, 58, -1,
01330 60, 1032, 1031, 1032, -1, 981, -1, 982, -1, 983,
01331 -1, 51, -1, 45, 3, 8, -1, 985, -1, 986,
01332 -1, 987, -1, 52, -1, 44, 3, 8, -1, 39,
01333 1032, 6, 1032, -1, 32, 1032, 6, 1032, -1, 40,
01334 1032, 6, 1032, -1, 17, 1032, 6, 1032, -1, 36,
01335 1032, 6, 1032, -1, 18, 8, 6, 8, -1, 38,
01336 1032, 6, 1032, -1, 31, 1032, 6, 1032, -1, 35,
01337 1032, 6, 1032, -1, 34, 1032, 6, 1032, -1, 16,
01338 1032, 6, 1032, -1, 33, 1032, 6, 1032, -1, 20,
01339 8, 6, 8, -1, 19, 8, 6, 8, -1, 27,
01340 8, 6, 8, -1, 28, 1032, 6, 1032, -1, 37,
01341 1032, 6, 1032, -1, 30, 1032, 6, 1032, -1, 1007,
01342 -1, 1006, 1007, -1, 1008, 1009, 1012, -1, 215, -1,
01343 1010, -1, -1, 1010, 1011, -1, 990, -1, 984, -1,
01344 940, -1, 1013, -1, 1014, -1, 11, -1, 10, 1015,
01345 216, -1, 1016, -1, 1017, -1, 1024, -1, -1, 1017,
01346 1018, -1, 1019, 1020, 1023, -1, 226, -1, 1021, -1,
01347 -1, 1021, 1022, -1, 1030, -1, 1029, -1, 10, 6,
01348 227, -1, 221, 1025, 1026, -1, 225, 1032, 6, 1032,
01349 -1, 1027, -1, 1028, -1, 10, 222, -1, 11, -1,
01350 10, 4, 222, -1, 223, 1032, 6, 1032, -1, 224,
01351 1032, 6, 1032, -1, 6, -1, 7, -1, 1033, 8,
01352 -1, -1, 1033, 1034, -1, 229, -1, 230, -1, 231,
01353 -1, 232, -1
01354 };
01355
01356
01357 static const yytype_uint16 yyrline[] =
01358 {
01359 0, 163, 163, 164, 166, 173, 180, 180, 182, 182,
01360 184, 186, 188, 189, 192, 200, 200, 207, 216, 216,
01361 218, 220, 222, 224, 224, 226, 226, 228, 228, 230,
01362 236, 236, 238, 238, 240, 240, 242, 248, 248, 250,
01363 250, 252, 252, 254, 260, 260, 262, 262, 264, 264,
01364 266, 272, 272, 274, 274, 276, 276, 278, 289, 289,
01365 291, 307, 307, 309, 309, 311, 313, 315, 315, 318,
01366 319, 320, 321, 322, 323, 324, 325, 326, 327, 328,
01367 332, 334, 342, 342, 344, 344, 346, 348, 358, 360,
01368 366, 366, 368, 368, 370, 372, 381, 383, 389, 389,
01369 391, 391, 393, 395, 405, 412, 420, 421, 428, 434,
01370 434, 436, 436, 438, 440, 448, 450, 456, 456, 458,
01371 458, 460, 462, 471, 473, 480, 480, 482, 482, 484,
01372 486, 496, 498, 505, 505, 507, 507, 509, 511, 521,
01373 523, 529, 529, 531, 531, 533, 535, 545, 547, 553,
01374 553, 555, 555, 557, 559, 569, 576, 585, 586, 592,
01375 599, 599, 601, 601, 603, 605, 613, 615, 621, 629,
01376 633, 638, 638, 640, 642, 646, 646, 648, 655, 666,
01377 672, 672, 675, 679, 680, 683, 683, 692, 692, 694,
01378 704, 704, 706, 706, 708, 710, 712, 712, 715, 716,
01379 717, 718, 719, 723, 725, 735, 737, 737, 740, 741,
01380 744, 746, 754, 756, 766, 768, 768, 771, 772, 775,
01381 777, 786, 788, 798, 800, 800, 803, 804, 807, 809,
01382 818, 820, 828, 829, 831, 833, 844, 846, 853, 861,
01383 865, 870, 870, 872, 874, 878, 878, 880, 887, 898,
01384 903, 903, 906, 911, 912, 915, 915, 924, 924, 926,
01385 933, 933, 935, 935, 937, 939, 941, 941, 944, 945,
01386 949, 951, 957, 957, 959, 959, 961, 963, 974, 976,
01387 983, 991, 995, 1000, 1000, 1002, 1004, 1008, 1008, 1010,
01388 1017, 1028, 1033, 1033, 1036, 1041, 1042, 1045, 1045, 1053,
01389 1053, 1055, 1075, 1075, 1077, 1077, 1079, 1081, 1083, 1083,
01390 1086, 1087, 1088, 1089, 1090, 1091, 1092, 1093, 1094, 1095,
01391 1096, 1097, 1098, 1099, 1100, 1105, 1111, 1121, 1123, 1123,
01392 1125, 1125, 1127, 1129, 1131, 1138, 1140, 1146, 1146, 1148,
01393 1148, 1150, 1152, 1162, 1170, 1177, 1179, 1179, 1181, 1181,
01394 1183, 1189, 1189, 1191, 1202, 1210, 1216, 1218, 1218, 1220,
01395 1220, 1222, 1228, 1228, 1230, 1241, 1249, 1255, 1257, 1257,
01396 1259, 1259, 1261, 1267, 1267, 1269, 1279, 1287, 1293, 1295,
01397 1295, 1297, 1297, 1299, 1305, 1305, 1307, 1317, 1325, 1331,
01398 1333, 1333, 1335, 1335, 1337, 1343, 1343, 1345, 1356, 1369,
01399 1375, 1377, 1377, 1379, 1379, 1381, 1387, 1387, 1389, 1393,
01400 1406, 1412, 1414, 1414, 1416, 1416, 1418, 1424, 1424, 1426,
01401 1430, 1443, 1449, 1451, 1451, 1453, 1453, 1455, 1461, 1461,
01402 1463, 1467, 1480, 1486, 1488, 1488, 1490, 1490, 1492, 1498,
01403 1498, 1500, 1504, 1512, 1518, 1520, 1520, 1522, 1522, 1524,
01404 1530, 1530, 1532, 1543, 1551, 1557, 1559, 1559, 1561, 1561,
01405 1563, 1569, 1569, 1571, 1582, 1590, 1597, 1599, 1599, 1601,
01406 1601, 1603, 1609, 1609, 1611, 1623, 1625, 1631, 1639, 1643,
01407 1648, 1648, 1650, 1652, 1656, 1656, 1658, 1665, 1676, 1681,
01408 1681, 1684, 1689, 1690, 1693, 1693, 1701, 1701, 1703, 1711,
01409 1713, 1713, 1716, 1722, 1728, 1736, 1736, 1738, 1740, 1742,
01410 1749, 1749, 1751, 1757, 1764, 1764, 1769, 1769, 1771, 1773,
01411 1775, 1780, 1780, 1790, 1795, 1803, 1808, 1814, 1814, 1816,
01412 1818, 1820, 1820, 1823, 1828, 1836, 1836, 1839, 1850, 1857,
01413 1857, 1861, 1861, 1871, 1876, 1884, 1889, 1895, 1895, 1897,
01414 1899, 1901, 1901, 1904, 1909, 1918, 1924, 1924, 1927, 1937,
01415 1940, 1940, 1944, 1944, 1946, 1951, 1951, 1953, 1955, 1957,
01416 1960, 1960, 1968, 1974, 1981, 1981, 1983, 1985, 1987, 1991,
01417 1991, 2000, 2006, 2013, 2013, 2015, 2017, 2019, 2023, 2023,
01418 2031, 2037, 2044, 2044, 2046, 2048, 2050, 2054, 2054, 2062,
01419 2068, 2075, 2075, 2077, 2079, 2081, 2085, 2085, 2093, 2099,
01420 2106, 2106, 2108, 2110, 2112, 2116, 2116, 2124, 2130, 2137,
01421 2137, 2139, 2141, 2143, 2147, 2147, 2158, 2163, 2171, 2176,
01422 2182, 2182, 2184, 2186, 2190, 2190, 2192, 2197, 2206, 2212,
01423 2212, 2215, 2225, 2231, 2231, 2235, 2235, 2237, 2243, 2251,
01424 2255, 2260, 2260, 2262, 2264, 2264, 2266, 2280, 2290, 2298,
01425 2298, 2301, 2302, 2309, 2312, 2312, 2314, 2314, 2316, 2321,
01426 2321, 2323, 2328, 2350, 2367, 2367, 2370, 2374, 2378, 2379,
01427 2380, 2381, 2382, 2383, 2386, 2386, 2388, 2388, 2390, 2392,
01428 2392, 2394, 2394, 2397, 2410, 2423, 2425, 2425, 2428, 2438,
01429 2439, 2440, 2443, 2445, 2445, 2453, 2453, 2455, 2461, 2468,
01430 2468, 2473, 2473, 2475, 2477, 2479, 2483, 2483, 2494, 2500,
01431 2508, 2513, 2519, 2519, 2521, 2523, 2525, 2525, 2528, 2533,
01432 2542, 2548, 2548, 2551, 2561, 2568, 2568, 2571, 2571, 2584,
01433 2589, 2598, 2603, 2609, 2609, 2611, 2613, 2615, 2615, 2618,
01434 2623, 2635, 2642, 2642, 2645, 2655, 2660, 2666, 2666, 2670,
01435 2670, 2672, 2677, 2677, 2679, 2681, 2683, 2686, 2686, 2694,
01436 2700, 2707, 2707, 2709, 2711, 2713, 2716, 2716, 2724, 2730,
01437 2737, 2737, 2739, 2741, 2743, 2746, 2746, 2754, 2760, 2767,
01438 2767, 2769, 2771, 2773, 2776, 2776, 2784, 2790, 2797, 2797,
01439 2799, 2801, 2803, 2806, 2806, 2814, 2821, 2828, 2828, 2830,
01440 2832, 2834, 2838, 2838, 2846, 2852, 2859, 2859, 2861, 2863,
01441 2865, 2869, 2869, 2871, 2877, 2899, 2916, 2916, 2919, 2923,
01442 2927, 2928, 2929, 2930, 2931, 2932, 2935, 2935, 2937, 2937,
01443 2939, 2941, 2941, 2943, 2943, 2946, 2959, 2973, 2981, 2981,
01444 2984, 2994, 2995, 2996, 2999, 3001, 3001, 3009, 3009, 3011,
01445 3017, 3024, 3024, 3029, 3029, 3031, 3033, 3035, 3039, 3039,
01446 3050, 3055, 3063, 3068, 3074, 3074, 3076, 3078, 3080, 3080,
01447 3083, 3088, 3096, 3096, 3099, 3110, 3117, 3117, 3121, 3121,
01448 3134, 3139, 3148, 3153, 3159, 3159, 3161, 3163, 3165, 3165,
01449 3168, 3173, 3184, 3190, 3190, 3193, 3204, 3205, 3208, 3208,
01450 3212, 3212, 3214, 3219, 3219, 3221, 3223, 3225, 3228, 3228,
01451 3236, 3242, 3249, 3249, 3251, 3253, 3255, 3258, 3258, 3266,
01452 3272, 3279, 3279, 3281, 3283, 3285, 3289, 3289, 3297, 3303,
01453 3310, 3310, 3312, 3314, 3316, 3320, 3320, 3328, 3334, 3341,
01454 3341, 3343, 3345, 3347, 3351, 3351, 3359, 3365, 3372, 3372,
01455 3374, 3376, 3378, 3382, 3382, 3390, 3396, 3403, 3403, 3405,
01456 3407, 3409, 3413, 3413, 3415, 3421, 3443, 3460, 3460, 3463,
01457 3467, 3471, 3472, 3473, 3474, 3475, 3476, 3479, 3479, 3481,
01458 3481, 3483, 3485, 3485, 3487, 3487, 3490, 3503, 3516, 3518,
01459 3518, 3521, 3531, 3532, 3533, 3536, 3538, 3538, 3546, 3546,
01460 3548, 3550, 3558, 3563, 3569, 3571, 3573, 3573, 3577, 3596,
01461 3614, 3620, 3620, 3623, 3624, 3625, 3626, 3627, 3628, 3629,
01462 3636, 3640, 3645, 3645, 3647, 3649, 3651, 3651, 3653, 3660,
01463 3666, 3668, 3668, 3670, 3672, 3684, 3693, 3703, 3708, 3708,
01464 3711, 3712, 3713, 3715, 3724, 3733, 3742, 3742, 3748, 3755,
01465 3755, 3757, 3762, 3769, 3776, 3776, 3778, 3781, 3788, 3795,
01466 3802, 3809, 3811, 3817, 3824, 3824, 3826, 3831, 3838, 3844,
01467 3844, 3846, 3849, 3854, 3860, 3860, 3862, 3865, 3872, 3878,
01468 3878, 3880, 3883, 3890, 3896, 3898, 3906, 3912, 3912, 3914,
01469 3917, 3924, 3931, 3931, 3933, 3938, 3945, 3951, 3951, 3953,
01470 3956, 3963, 3969, 3969, 3971, 3974, 3981, 3987, 3987, 3989,
01471 3992, 4004, 4013, 4022, 4031, 4040, 4049, 4058, 4067, 4075,
01472 4081, 4087, 4093, 4099, 4110, 4119, 4129, 4135, 4144, 4164,
01473 4164, 4166, 4183, 4194, 4201, 4201, 4204, 4211, 4212, 4216,
01474 4216, 4218, 4220, 4222, 4239, 4244, 4246, 4246, 4248, 4250,
01475 4259, 4261, 4261, 4263, 4263, 4265, 4273, 4275, 4280, 4280,
01476 4282, 4282, 4284, 4307, 4315, 4329, 4330, 4337, 4339, 4339,
01477 4341, 4342, 4343, 4344
01478 };
01479 #endif
01480
01481 #if YYDEBUG || YYERROR_VERBOSE || YYTOKEN_TABLE
01482
01483
01484 static const char *const yytname[] =
01485 {
01486 "$end", "error", "$undefined", "ATTRIBUTETEXT", "ELEMENTTEXT",
01487 "ITEMTEXT", "INTEGER", "DOUBLE", "QUOTE", "TWOQUOTES", "GREATERTHAN",
01488 "ENDOFELEMENT", "OSOLSTART", "OSOLSTARTEMPTY", "OSOLATTRIBUTETEXT",
01489 "OSOLEND", "NUMBEROFOTHEROPTIONSATT", "NUMBEROFENUMERATIONSATT",
01490 "NUMBEROFJOBIDSATT", "NUMBEROFPATHSATT", "NUMBEROFPATHPAIRSATT",
01491 "FROMATT", "TOATT", "MAKECOPYATT", "CATEGORYATT", "TYPEATT",
01492 "GROUPWEIGHTATT", "NUMBEROFPROCESSESATT", "NUMBEROFSOLVEROPTIONSATT",
01493 "NUMBEROFSOSATT", "NUMBEROFVARIABLESATT", "NUMBEROFOBJECTIVESATT",
01494 "NUMBEROFCONSTRAINTSATT", "NUMBEROFOTHERVARIABLEOPTIONSATT",
01495 "NUMBEROFOTHEROBJECTIVEOPTIONSATT", "NUMBEROFOTHERCONSTRAINTOPTIONSATT",
01496 "NUMBEROFITEMSATT", "NUMBEROFVARATT", "NUMBEROFOBJATT", "NUMBEROFCONATT",
01497 "NUMBEROFELATT", "NAMEATT", "IDXATT", "SOSIDXATT", "VALUEATT", "UNITATT",
01498 "DESCRIPTIONATT", "EMPTYTYPEATT", "EMPTYNAMEATT", "EMPTYCATEGORYATT",
01499 "EMPTYDESCRIPTIONATT", "EMPTYUNITATT", "EMPTYVALUEATT",
01500 "EMPTYLBVALUEATT", "EMPTYUBVALUEATT", "LBVALUEATT", "UBVALUEATT",
01501 "EMPTYLBDUALVALUEATT", "EMPTYUBDUALVALUEATT", "LBDUALVALUEATT",
01502 "UBDUALVALUEATT", "SOLVERATT", "EMPTYSOLVERATT", "WEIGHTATT",
01503 "EMPTYWEIGHTATT", "TRANSPORTTYPEATT", "LOCATIONTYPEATT", "HEADERSTART",
01504 "HEADEREND", "GENERALSTART", "GENERALEND", "SYSTEMSTART", "SYSTEMEND",
01505 "SERVICESTART", "SERVICEEND", "JOBSTART", "JOBEND", "OPTIMIZATIONSTART",
01506 "OPTIMIZATIONEND", "FILENAMESTART", "FILENAMEEND", "FILENAMEEMPTY",
01507 "FILENAMESTARTANDEND", "FILESOURCESTART", "FILESOURCEEND",
01508 "FILESOURCEEMPTY", "FILESOURCESTARTANDEND", "FILEDESCRIPTIONSTART",
01509 "FILEDESCRIPTIONEND", "FILEDESCRIPTIONEMPTY",
01510 "FILEDESCRIPTIONSTARTANDEND", "FILECREATORSTART", "FILECREATOREND",
01511 "FILECREATOREMPTY", "FILECREATORSTARTANDEND", "FILELICENCESTART",
01512 "FILELICENCEEND", "FILELICENCEEMPTY", "FILELICENCESTARTANDEND",
01513 "SERVICEURISTART", "SERVICEURIEND", "SERVICENAMESTART", "SERVICENAMEEND",
01514 "INSTANCENAMESTART", "INSTANCENAMEEND", "INSTANCELOCATIONSTART",
01515 "INSTANCELOCATIONEND", "JOBIDSTART", "JOBIDEND", "SOLVERTOINVOKESTART",
01516 "SOLVERTOINVOKEEND", "LICENSESTART", "LICENSEEND", "USERNAMESTART",
01517 "USERNAMEEND", "PASSWORDSTART", "PASSWORDEND", "CONTACTSTART",
01518 "CONTACTEND", "OTHEROPTIONSSTART", "OTHEROPTIONSEND", "OTHERSTART",
01519 "OTHEREND", "MINDISKSPACESTART", "MINDISKSPACEEND", "MINMEMORYSTART",
01520 "MINMEMORYEND", "MINCPUSPEEDSTART", "MINCPUSPEEDEND",
01521 "MINCPUNUMBERSTART", "MINCPUNUMBEREND", "SERVICETYPESTART",
01522 "SERVICETYPEEND", "MAXTIMESTART", "MAXTIMEEND",
01523 "REQUESTEDSTARTTIMESTART", "REQUESTEDSTARTTIMEEND", "DEPENDENCIESSTART",
01524 "DEPENDENCIESEND", "REQUIREDDIRECTORIESSTART", "REQUIREDDIRECTORIESEND",
01525 "REQUIREDFILESSTART", "REQUIREDFILESEND", "PATHSTART", "PATHEND",
01526 "PATHPAIRSTART", "PATHPAIREND", "DIRECTORIESTOMAKESTART",
01527 "DIRECTORIESTOMAKEEND", "FILESTOMAKESTART", "FILESTOMAKEEND",
01528 "DIRECTORIESTODELETESTART", "DIRECTORIESTODELETEEND",
01529 "FILESTODELETESTART", "FILESTODELETEEND", "INPUTDIRECTORIESTOMOVESTART",
01530 "INPUTDIRECTORIESTOMOVEEND", "INPUTFILESTOMOVESTART",
01531 "INPUTFILESTOMOVEEND", "OUTPUTDIRECTORIESTOMOVESTART",
01532 "OUTPUTDIRECTORIESTOMOVEEND", "OUTPUTFILESTOMOVESTART",
01533 "OUTPUTFILESTOMOVEEND", "PROCESSESTOKILLSTART", "PROCESSESTOKILLEND",
01534 "PROCESSSTART", "PROCESSEND", "VARIABLESSTART", "VARIABLESEND",
01535 "INITIALVARIABLEVALUESSTART", "INITIALVARIABLEVALUESEND", "VARSTART",
01536 "VAREND", "INITIALVARIABLEVALUESSTRINGSTART",
01537 "INITIALVARIABLEVALUESSTRINGEND", "INITIALBASISSTATUSSTART",
01538 "INITIALBASISSTATUSEND", "BASICSTART", "BASICEND", "ATUPPERSTART",
01539 "ATUPPEREND", "ATLOWERSTART", "ATLOWEREND", "SUPERBASICSTART",
01540 "SUPERBASICEND", "ISFREESTART", "ISFREEEND", "UNKNOWNSTART",
01541 "UNKNOWNEND", "INTEGERVARIABLEBRANCHINGWEIGHTSSTART",
01542 "INTEGERVARIABLEBRANCHINGWEIGHTSEND", "SOSVARIABLEBRANCHINGWEIGHTSSTART",
01543 "SOSVARIABLEBRANCHINGWEIGHTSEND", "SOSSTART", "SOSEND",
01544 "OBJECTIVESSTART", "OBJECTIVESEND", "INITIALOBJECTIVEVALUESSTART",
01545 "INITIALOBJECTIVEVALUESEND", "OBJSTART", "OBJEND",
01546 "INITIALOBJECTIVEBOUNDSSTART", "INITIALOBJECTIVEBOUNDSEND",
01547 "CONSTRAINTSSTART", "CONSTRAINTSEND", "INITIALCONSTRAINTVALUESSTART",
01548 "INITIALCONSTRAINTVALUESEND", "CONSTART", "CONEND",
01549 "INITIALDUALVALUESSTART", "INITIALDUALVALUESEND", "SOLVEROPTIONSSTART",
01550 "SOLVEROPTIONSEND", "SOLVEROPTIONSTART", "SOLVEROPTIONEND",
01551 "ENUMERATIONSTART", "ENUMERATIONEND", "ITEMEMPTY", "ITEMSTART",
01552 "ITEMEND", "ITEMSTARTANDEND", "BASE64START", "BASE64END", "INCRATT",
01553 "MULTATT", "SIZEOFATT", "ELSTART", "ELEND", "DUMMY", "' '", "'\\t'",
01554 "'\\r'", "'\\n'", "$accept", "osoldoc", "osolStartEmpty", "osolStart",
01555 "osolAttributes", "osolContent", "osolEmpty", "osolLaden", "osolEnd",
01556 "osolBody", "headerElement", "headerElementStart",
01557 "headerElementContent", "headerElementEmpty", "headerElementLaden",
01558 "headerElementBody", "fileName", "fileNameContent", "fileNameEmpty",
01559 "fileNameLaden", "fileSource", "fileSourceContent", "fileSourceEmpty",
01560 "fileSourceLaden", "fileDescription", "fileDescriptionContent",
01561 "fileDescriptionEmpty", "fileDescriptionLaden", "fileCreator",
01562 "fileCreatorContent", "fileCreatorEmpty", "fileCreatorLaden",
01563 "fileLicence", "fileLicenceContent", "fileLicenceEmpty",
01564 "fileLicenceLaden", "generalElement", "generalElementStart",
01565 "generalElementContent", "generalElementEmpty", "generalElementLaden",
01566 "generalElementBody", "generalElementList", "generalChild", "serviceURI",
01567 "serviceURIStart", "serviceURIContent", "serviceURIEmpty",
01568 "serviceURILaden", "serviceURIBody", "serviceName", "serviceNameStart",
01569 "serviceNameContent", "serviceNameEmpty", "serviceNameLaden",
01570 "serviceNameBody", "instanceName", "instanceNameStart",
01571 "instanceNameContent", "instanceNameEmpty", "instanceNameLaden",
01572 "instanceNameBody", "instanceLocation", "instanceLocationStart",
01573 "instanceLocationAttributes", "locationTypeAttribute",
01574 "instanceLocationContent", "instanceLocationEmpty",
01575 "instanceLocationLaden", "instanceLocationBody", "jobID", "jobIDStart",
01576 "jobIDContent", "jobIDEmpty", "jobIDLaden", "jobIDBody",
01577 "solverToInvoke", "solverToInvokeStart", "solverToInvokeContent",
01578 "solverToInvokeEmpty", "solverToInvokeLaden", "solverToInvokeBody",
01579 "license", "licenseStart", "licenseContent", "licenseEmpty",
01580 "licenseLaden", "licensebody", "username", "usernameStart",
01581 "usernameContent", "usernameEmpty", "usernameLaden", "usernamebody",
01582 "password", "passwordStart", "passwordContent", "passwordEmpty",
01583 "passwordLaden", "passwordbody", "contact", "contactStart",
01584 "contactAttributes", "transportTypeAttribute", "contactContent",
01585 "contactContentEmpty", "contactContentLaden", "contactBody",
01586 "otherGeneralOptions", "otherGeneralOptionsStart",
01587 "otherGeneralOptionsAttributes", "otherGeneralOptionsContent",
01588 "otherGeneralOptionsEmpty", "otherGeneralOptionsLaden",
01589 "otherGeneralOptionsBody", "otherGeneralOptionArray",
01590 "otherGeneralOption", "otherGeneralOptionStart",
01591 "otherGeneralAttributes", "otherGeneralAttList", "otherGeneralAtt",
01592 "otherGeneralEnd", "systemElement", "systemElementStart",
01593 "systemElementContent", "systemElementEmpty", "systemElementLaden",
01594 "systemElementBody", "systemElementList", "systemChild", "minDiskSpace",
01595 "minDiskSpaceStart", "minDiskSpaceAttributes", "minDiskSpaceAttList",
01596 "minDiskSpaceAtt", "minDiskSpaceContent", "minDiskSpaceValue",
01597 "minMemorySize", "minMemoryStart", "minMemoryAttributes",
01598 "minMemoryAttList", "minMemoryAtt", "minMemoryContent", "minMemoryValue",
01599 "minCPUSpeed", "minCPUSpeedStart", "minCPUSpeedAttributes",
01600 "minCPUSpeedAttList", "minCPUSpeedAtt", "minCPUSpeedContent",
01601 "minCPUSpeedValue", "minCPUNumber", "minCPUNumberStart",
01602 "minCPUNumberAttributes", "minCPUNumberContent", "minCPUNumberValue",
01603 "otherSystemOptions", "otherSystemOptionsStart",
01604 "otherSystemOptionsAttributes", "otherSystemOptionsContent",
01605 "otherSystemOptionsEmpty", "otherSystemOptionsLaden",
01606 "otherSystemOptionsBody", "otherSystemOptionArray", "otherSystemOption",
01607 "otherSystemOptionStart", "otherSystemOptionAttributes",
01608 "otherSystemOptionAttList", "otherSystemOptionAtt",
01609 "otherSystemOptionEnd", "serviceElement", "serviceElementStart",
01610 "serviceElementContent", "serviceElementEmpty", "serviceElementLaden",
01611 "serviceElementBody", "serviceElementList", "serviceChild",
01612 "serviceType", "serviceTypeStart", "serviceTypeContent",
01613 "serviceTypeEmpty", "serviceTypeLaden", "serviceTypeBody",
01614 "otherServiceOptions", "otherServiceOptionsStart",
01615 "otherServiceOptionsAttributes", "otherServiceOptionsContent",
01616 "otherServiceOptionsEmpty", "otherServiceOptionsLaden",
01617 "otherServiceOptionsBody", "otherServiceOptionArray",
01618 "otherServiceOption", "otherServiceOptionStart",
01619 "otherServiceOptionAttributes", "otherServiceOptionAttList",
01620 "otherServiceOptionAtt", "otherServiceOptionEnd", "jobElement",
01621 "jobElementStart", "jobElementContent", "jobElementEmpty",
01622 "jobElementLaden", "jobElementBody", "jobElementList", "jobChild",
01623 "maxTime", "maxTimeStart", "maxTimeAttributes", "maxTimeContent",
01624 "maxTimeEmpty", "maxTimeLaden", "maxTimeBody", "maxTimeValue",
01625 "requestedStartTime", "requestedStartTimeStart",
01626 "requestedStartTimeContent", "requestedStartTimeEmpty",
01627 "requestedStartTimeLaden", "requestedStartTimeBody", "dependencies",
01628 "dependenciesStart", "dependenciesAttributes", "dependenciesContent",
01629 "dependenciesEmpty", "dependenciesLaden", "dependenciesList",
01630 "dependencyJobID", "requiredDirectories", "requiredDirectoriesStart",
01631 "requiredDirectoriesAttributes", "requiredDirectoriesContent",
01632 "requiredDirectoriesEmpty", "requiredDirectoriesLaden",
01633 "requiredDirectoriesList", "requiredDirectory", "requiredFiles",
01634 "requiredFilesStart", "requiredFilesAttributes", "requiredFilesContent",
01635 "requiredFilesEmpty", "requiredFilesLaden", "requiredFilesList",
01636 "requiredFile", "directoriesToMake", "directoriesToMakeStart",
01637 "directoriesToMakeAttributes", "directoriesToMakeContent",
01638 "directoriesToMakeEmpty", "directoriesToMakeLaden",
01639 "directoriesToMakeList", "directoryToMake", "filesToMake",
01640 "filesToMakeStart", "filesToMakeAttributes", "filesToMakeContent",
01641 "filesToMakeEmpty", "filesToMakeLaden", "filesToMakeList", "fileToMake",
01642 "inputDirectoriesToMove", "inputDirectoriesToMoveStart",
01643 "inputDirectoriesToMoveAttributes", "inputDirectoriesToMoveContent",
01644 "inputDirectoriesToMoveEmpty", "inputDirectoriesToMoveLaden",
01645 "inputDirectoriesToMoveList", "inputDirectoryToMove", "inputFilesToMove",
01646 "inputFilesToMoveStart", "inputFilesToMoveAttributes",
01647 "inputFilesToMoveContent", "inputFilesToMoveEmpty",
01648 "inputFilesToMoveLaden", "inputFilesToMoveList", "inputFileToMove",
01649 "outputFilesToMove", "outputFilesToMoveStart",
01650 "outputFilesToMoveAttributes", "outputFilesToMoveContent",
01651 "outputFilesToMoveEmpty", "outputFilesToMoveLaden",
01652 "outputFilesToMoveList", "outputFileToMove", "outputDirectoriesToMove",
01653 "outputDirectoriesToMoveStart", "outputDirectoriesToMoveAttributes",
01654 "outputDirectoriesToMoveContent", "outputDirectoriesToMoveEmpty",
01655 "outputDirectoriesToMoveLaden", "outputDirectoriesToMoveList",
01656 "outputDirectoryToMove", "filesToDelete", "filesToDeleteStart",
01657 "filesToDeleteAttributes", "filesToDeleteContent", "filesToDeleteEmpty",
01658 "filesToDeleteLaden", "filesToDeleteList", "fileToDelete",
01659 "directoriesToDelete", "directoriesToDeleteStart",
01660 "directoriesToDeleteAttributes", "directoriesToDeleteContent",
01661 "directoriesToDeleteEmpty", "directoriesToDeleteLaden",
01662 "directoriesToDeleteList", "directoryToDelete", "processesToKill",
01663 "processesToKillStart", "processesToKillAttributes",
01664 "processesToKillContent", "processesToKillEmpty", "processesToKillLaden",
01665 "processesToKillList", "processID", "otherJobOptions",
01666 "otherJobOptionsStart", "otherJobOptionsAttributes",
01667 "otherJobOptionsContent", "otherJobOptionsEmpty", "otherJobOptionsLaden",
01668 "otherJobOptionsBody", "otherJobOptionArray", "otherJobOption",
01669 "otherJobOptionStart", "otherJobOptionAttributes",
01670 "otherJobOptionAttList", "otherJobOptionAtt", "otherJobOptionEnd",
01671 "optimizationElement", "optimizationStart", "optimizationAttributes",
01672 "optimizationAttList", "optimizationATT", "optimizationContent",
01673 "optimizationEmpty", "optimizationLaden", "optimizationBody",
01674 "variables", "variablesStart", "variablesAttributes",
01675 "numberOfOtherVariableOptions", "variablesContent", "variablesEmpty",
01676 "variablesLaden", "variablesBody", "initialVariableValues",
01677 "initialVariableValuesStart", "initialVariableValuesAttributes",
01678 "initialVariableValuesContent", "initialVariableValuesEmpty",
01679 "initialVariableValuesLaden", "initialVariableValuesBody",
01680 "initVarValueArray", "initVarValue", "initVarValueStart",
01681 "initVarValueAttList", "initVarValueAtt", "initVarValueContent",
01682 "initialVariableValuesString", "initialVariableValuesStringStart",
01683 "initialVariableValuesStringAttributes",
01684 "initialVariableValuesStringContent", "initialVariableValuesStringEmpty",
01685 "initialVariableValuesStringLaden", "initialVariableValuesStringBody",
01686 "initVarValueStringArray", "initVarValueString",
01687 "initVarValueStringStart", "initVarValueStringAttributes",
01688 "initVarValueStringAttList", "initVarValueStringAtt",
01689 "initVarValueStringContent", "variableInitialBasis",
01690 "variableInitialBasisStart", "variableInitialBasisContent",
01691 "variableInitialBasisEmpty", "variableInitialBasisLaden",
01692 "variableInitialBasisBody", "variablesBasic", "variablesBasicStart",
01693 "variablesBasicNumberOfElATT", "variablesBasicContent",
01694 "variablesBasicEmpty", "variablesBasicLaden", "variablesBasicBody",
01695 "variablesAtLower", "variablesAtLowerStart",
01696 "variablesAtLowerNumberOfElATT", "variablesAtLowerContent",
01697 "variablesAtLowerEmpty", "variablesAtLowerLaden", "variablesAtLowerBody",
01698 "variablesAtUpper", "variablesAtUpperStart",
01699 "variablesAtUpperNumberOfElATT", "variablesAtUpperContent",
01700 "variablesAtUpperEmpty", "variablesAtUpperLaden", "variablesAtUpperBody",
01701 "variablesIsFree", "variablesIsFreeStart",
01702 "variablesIsFreeNumberOfElATT", "variablesIsFreeContent",
01703 "variablesIsFreeEmpty", "variablesIsFreeLaden", "variablesIsFreeBody",
01704 "variablesSuperbasic", "variablesSuperbasicStart",
01705 "variablesSuperbasicNumberOfElATT", "variablesSuperbasicContent",
01706 "variablesSuperbasicEmpty", "variablesSuperbasicLaden",
01707 "variablesSuperbasicBody", "variablesUnknown", "variablesUnknownStart",
01708 "variablesUnknownNumberOfElATT", "variablesUnknownContent",
01709 "variablesUnknownEmpty", "variablesUnknownLaden", "variablesUnknownBody",
01710 "integerVariableBranchingWeights",
01711 "integerVariableBranchingWeightsStart",
01712 "integerVariableBranchingWeightsAttributes",
01713 "integerVariableBranchingWeightsContent",
01714 "integerVariableBranchingWeightsEmpty",
01715 "integerVariableBranchingWeightsLaden",
01716 "integerVariableBranchingWeightsBody", "branchingWeightsArray",
01717 "branchingWeight", "branchingWeightStart", "branchingWeightAttributes",
01718 "branchingWeightAttList", "branchingWeightAtt", "branchingWeightContent",
01719 "sosVariableBranchingWeights", "sosVariableBranchingWeightsStart",
01720 "sosVariableBranchingWeightsAttributes",
01721 "sosVariableBranchingWeightsContent", "sosVariableBranchingWeightsEmpty",
01722 "sosVariableBranchingWeightsLaden", "sosWeightGroupArray",
01723 "sosWeightGroup", "sosWeightGroupStart", "sosWeightGroupAttributes",
01724 "sosWeightGroupAttList", "sosWeightGroupAtt", "sosWeightGroupContent",
01725 "sosWeightGroupEmpty", "sosWeightGroupLaden",
01726 "otherVariableOptionsArray", "otherVariableOption",
01727 "otherVariableOptionStart", "otherVariableOptionAttributes",
01728 "otherVariableOptionAttList", "otherVariableOptionATT",
01729 "otherVariableOptionContent", "otherVariableOptionEmpty",
01730 "otherVariableOptionLaden", "otherVariableOptionBody", "otherVarList",
01731 "otherVar", "otherVarStart", "otherVarAttributes", "otherVarAttList",
01732 "otherVarAtt", "otherVarContent", "otherVarEmpty", "objectives",
01733 "objectivesStart", "objectivesAttributes",
01734 "numberOfOtherObjectiveOptions", "objectivesContent", "objectivesEmpty",
01735 "objectivesLaden", "objectivesBody", "initialObjectiveValues",
01736 "initialObjectiveValuesStart", "initialObjectiveValuesAttributes",
01737 "initialObjectiveValuesContent", "initialObjectiveValuesEmpty",
01738 "initialObjectiveValuesLaden", "initialObjectiveValuesBody",
01739 "initObjValueArray", "initObjValue", "initObjValueStart",
01740 "initObjValueAttributes", "initObjValueAttList", "initObjValueAtt",
01741 "initObjValueContent", "initialObjectiveBounds",
01742 "initialObjectiveBoundsStart", "numberOfObjATT",
01743 "initialObjectiveBoundsContent", "initialObjectiveBoundsEmpty",
01744 "initialObjectiveBoundsLaden", "initialObjectiveBoundsBody",
01745 "initObjBoundArray", "initObjBound", "initObjBoundStart",
01746 "initObjBoundAttributes", "initObjBoundAttList", "initObjBoundAtt",
01747 "initObjBoundContent", "objectiveInitialBasis",
01748 "objectiveInitialBasisStart", "objectiveInitialBasisContent",
01749 "objectiveInitialBasisEmpty", "objectiveInitialBasisLaden",
01750 "objectiveInitialBasisBody", "objectivesBasic", "objectivesBasicStart",
01751 "objectivesBasicNumberOfElATT", "objectivesBasicContent",
01752 "objectivesBasicEmpty", "objectivesBasicLaden", "objectivesBasicBody",
01753 "objectivesAtLower", "objectivesAtLowerStart",
01754 "objectivesAtLowerNumberOfElATT", "objectivesAtLowerContent",
01755 "objectivesAtLowerEmpty", "objectivesAtLowerLaden",
01756 "objectivesAtLowerBody", "objectivesAtUpper", "objectivesAtUpperStart",
01757 "objectivesAtUpperNumberOfElATT", "objectivesAtUpperContent",
01758 "objectivesAtUpperEmpty", "objectivesAtUpperLaden",
01759 "objectivesAtUpperBody", "objectivesIsFree", "objectivesIsFreeStart",
01760 "objectivesIsFreeNumberOfElATT", "objectivesIsFreeContent",
01761 "objectivesIsFreeEmpty", "objectivesIsFreeLaden", "objectivesIsFreeBody",
01762 "objectivesSuperbasic", "objectivesSuperbasicStart",
01763 "objectivesSuperbasicNumberOfElATT", "objectivesSuperbasicContent",
01764 "objectivesSuperbasicEmpty", "objectivesSuperbasicLaden",
01765 "objectivesSuperbasicBody", "objectivesUnknown",
01766 "objectivesUnknownStart", "objectivesUnknownNumberOfElATT",
01767 "objectivesUnknownContent", "objectivesUnknownEmpty",
01768 "objectivesUnknownLaden", "objectivesUnknownBody",
01769 "otherObjectiveOptionsArray", "otherObjectiveOption",
01770 "otherObjectiveOptionStart", "otherObjectiveOptionAttributes",
01771 "otherObjectiveOptionAttList", "otherObjectiveOptionATT",
01772 "otherObjectiveOptionContent", "otherObjectiveOptionEmpty",
01773 "otherObjectiveOptionLaden", "otherObjectiveOptionBody", "otherObjList",
01774 "otherObj", "otherObjStart", "otherObjAttributes", "otherObjAttList",
01775 "otherObjAtt", "otherObjContent", "otherObjEmpty", "constraints",
01776 "constraintsStart", "constraintsAttributes",
01777 "numberOfOtherConstraintOptions", "constraintsContent",
01778 "constraintsEmpty", "constraintsLaden", "constraintsBody",
01779 "initialConstraintValues", "initialConstraintValuesStart",
01780 "initialConstraintValuesAttributes", "initialConstraintValuesContent",
01781 "initialConstraintValuesEmpty", "initialConstraintValuesLaden",
01782 "initialConstraintValuesBody", "initConValueArray", "initConValue",
01783 "initConValueStart", "initConValueAttList", "initConValueAtt",
01784 "initConValueContent", "initialDualValues", "initialDualValuesStart",
01785 "numberOfConATT", "initialDualValuesContent", "initialDualValuesEmpty",
01786 "initialDualValuesLaden", "initialDualValuesBody", "initDualValueArray",
01787 "initDualValue", "initDualValueStart", "initDualValueAttributes",
01788 "initDualValueAttList", "initDualValueAtt", "initDualValueContent",
01789 "slacksInitialBasis", "slacksInitialBasisStart",
01790 "slacksInitialBasisContent", "slacksInitialBasisEmpty",
01791 "slacksInitialBasisLaden", "slacksInitialBasisBody", "slacksBasic",
01792 "slacksBasicStart", "slacksBasicNumberOfElATT", "slacksBasicContent",
01793 "slacksBasicEmpty", "slacksBasicLaden", "slacksBasicBody",
01794 "slacksAtLower", "slacksAtLowerStart", "slacksAtLowerNumberOfElATT",
01795 "slacksAtLowerContent", "slacksAtLowerEmpty", "slacksAtLowerLaden",
01796 "slacksAtLowerBody", "slacksAtUpper", "slacksAtUpperStart",
01797 "slacksAtUpperNumberOfElATT", "slacksAtUpperContent",
01798 "slacksAtUpperEmpty", "slacksAtUpperLaden", "slacksAtUpperBody",
01799 "slacksIsFree", "slacksIsFreeStart", "slacksIsFreeNumberOfElATT",
01800 "slacksIsFreeContent", "slacksIsFreeEmpty", "slacksIsFreeLaden",
01801 "slacksIsFreeBody", "slacksSuperbasic", "slacksSuperbasicStart",
01802 "slacksSuperbasicNumberOfElATT", "slacksSuperbasicContent",
01803 "slacksSuperbasicEmpty", "slacksSuperbasicLaden", "slacksSuperbasicBody",
01804 "slacksUnknown", "slacksUnknownStart", "slacksUnknownNumberOfElATT",
01805 "slacksUnknownContent", "slacksUnknownEmpty", "slacksUnknownLaden",
01806 "slacksUnknownBody", "otherConstraintOptionsArray",
01807 "otherConstraintOption", "otherConstraintOptionStart",
01808 "otherConstraintOptionAttributes", "otherConstraintOptionAttList",
01809 "otherConstraintOptionATT", "otherConstraintOptionContent",
01810 "otherConstraintOptionEmpty", "otherConstraintOptionLaden",
01811 "otherConstraintOptionBody", "otherConList", "otherCon", "otherConStart",
01812 "otherConAttributes", "otherConAttList", "otherConAtt",
01813 "otherConContent", "otherConEmpty", "solverOptions",
01814 "solverOptionsStart", "numberOfSolverOptionsATT", "solverOptionsContent",
01815 "solverOptionsEmpty", "solverOptionsLaden", "solverOptionArray",
01816 "solverOption", "solverOptionStart", "solverOptionAttributes",
01817 "solverOptionAttList", "solverOptionATT", "solverOptionContent",
01818 "solverOptionEmpty", "solverOptionLaden", "solverOptionBody",
01819 "solverOptionItemArray", "solverOptionItem", "solverOptionItemContent",
01820 "solverOptionItemEmpty", "solverOptionItemLaden", "solverOptionItemBody",
01821 "PathPair", "PathPairStart", "PathPairAttributes", "PathPairAttList",
01822 "PathPairAttribute", "PathPairFromATT", "PathPairToATT",
01823 "PathPairMakeCopyATT", "PathPairEnd", "categoryAttribute", "categoryAtt",
01824 "categoryAttEmpty", "categoryAttContent", "descriptionAttribute",
01825 "descriptionAtt", "descriptionAttEmpty", "descriptionAttContent",
01826 "groupWeightAttribute", "groupWeightAtt", "idxAttribute", "idxAtt",
01827 "idxAttContent", "lbValueAttribute", "lbValueAtt", "lbValueAttEmpty",
01828 "lbValueAttContent", "lbDualValueAttribute", "lbDualValueAtt",
01829 "lbDualValueAttEmpty", "lbDualValueAttContent", "nameAttribute",
01830 "nameAtt", "nameAttEmpty", "nameAttContent", "solverAttribute",
01831 "solverAtt", "solverAttEmpty", "solverAttContent", "sosIdxAttribute",
01832 "sosIdxAtt", "sosIdxAttContent", "typeAttribute", "typeAtt",
01833 "typeAttEmpty", "typeAttContent", "ubValueAttribute", "ubValueAtt",
01834 "ubValueAttEmpty", "ubValueAttContent", "ubDualValueAttribute",
01835 "ubDualValueAtt", "ubDualValueAttEmpty", "ubDualValueAttContent",
01836 "unitAttribute", "unitAtt", "unitAttEmpty", "unitAttContent",
01837 "valueAttribute", "valueAtt", "valueAttEmpty", "valueAttContent",
01838 "numberOfConAttribute", "numberOfConstraintsAttribute",
01839 "numberOfElAttribute", "numberOfEnumerationsAttribute",
01840 "numberOfItemsAttribute", "numberOfJobIDsATT", "numberOfObjAttribute",
01841 "numberOfObjectivesAttribute", "numberOfOtherConstraintOptionsAttribute",
01842 "numberOfOtherObjectiveOptionsAttribute",
01843 "numberOfOtherOptionsAttribute", "numberOfOtherVariableOptionsAttribute",
01844 "numberOfPathPairsAttribute", "numberOfPathsAttribute",
01845 "numberOfProcessesATT", "numberOfSolverOptionsAttribute",
01846 "numberOfVarAttribute", "numberOfVariablesAttribute",
01847 "otherEnumerationList", "otherEnumeration", "otherEnumerationStart",
01848 "otherEnumerationAttributes", "otherEnumerationAttList",
01849 "otherEnumerationATT", "otherEnumerationContent",
01850 "otherEnumerationEmpty", "otherEnumerationLaden", "otherEnumerationBody",
01851 "osglIntArrayData", "osglIntVectorElArray", "osglIntVectorEl",
01852 "osglIntVectorElStart", "osglIntVectorElAttributes",
01853 "osglIntVectorElAttList", "osglIntVectorElAtt", "osglIntVectorElContent",
01854 "osglIntVectorBase64", "Base64SizeAttribute", "Base64Content",
01855 "Base64Empty", "Base64Laden", "osglIncrAttribute", "osglMultAttribute",
01856 "aNumber", "quote", "xmlWhiteSpace", "xmlWhiteSpaceChar", 0
01857 };
01858 #endif
01859
01860 # ifdef YYPRINT
01861
01862
01863 static const yytype_uint16 yytoknum[] =
01864 {
01865 0, 256, 257, 258, 259, 260, 261, 262, 263, 264,
01866 265, 266, 267, 268, 269, 270, 271, 272, 273, 274,
01867 275, 276, 277, 278, 279, 280, 281, 282, 283, 284,
01868 285, 286, 287, 288, 289, 290, 291, 292, 293, 294,
01869 295, 296, 297, 298, 299, 300, 301, 302, 303, 304,
01870 305, 306, 307, 308, 309, 310, 311, 312, 313, 314,
01871 315, 316, 317, 318, 319, 320, 321, 322, 323, 324,
01872 325, 326, 327, 328, 329, 330, 331, 332, 333, 334,
01873 335, 336, 337, 338, 339, 340, 341, 342, 343, 344,
01874 345, 346, 347, 348, 349, 350, 351, 352, 353, 354,
01875 355, 356, 357, 358, 359, 360, 361, 362, 363, 364,
01876 365, 366, 367, 368, 369, 370, 371, 372, 373, 374,
01877 375, 376, 377, 378, 379, 380, 381, 382, 383, 384,
01878 385, 386, 387, 388, 389, 390, 391, 392, 393, 394,
01879 395, 396, 397, 398, 399, 400, 401, 402, 403, 404,
01880 405, 406, 407, 408, 409, 410, 411, 412, 413, 414,
01881 415, 416, 417, 418, 419, 420, 421, 422, 423, 424,
01882 425, 426, 427, 428, 429, 430, 431, 432, 433, 434,
01883 435, 436, 437, 438, 439, 440, 441, 442, 443, 444,
01884 445, 446, 447, 448, 449, 450, 451, 452, 453, 454,
01885 455, 456, 457, 458, 459, 460, 461, 462, 463, 464,
01886 465, 466, 467, 468, 469, 470, 471, 472, 473, 474,
01887 475, 476, 477, 478, 479, 480, 481, 482, 483, 32,
01888 9, 13, 10
01889 };
01890 # endif
01891
01892
01893 static const yytype_uint16 yyr1[] =
01894 {
01895 0, 233, 234, 234, 235, 236, 237, 237, 238, 238,
01896 239, 240, 241, 241, 242, 243, 243, 244, 245, 245,
01897 246, 247, 248, 249, 249, 250, 250, 251, 251, 252,
01898 253, 253, 254, 254, 255, 255, 256, 257, 257, 258,
01899 258, 259, 259, 260, 261, 261, 262, 262, 263, 263,
01900 264, 265, 265, 266, 266, 267, 267, 268, 269, 269,
01901 270, 271, 271, 272, 272, 273, 274, 275, 275, 276,
01902 276, 276, 276, 276, 276, 276, 276, 276, 276, 276,
01903 277, 278, 279, 279, 280, 280, 281, 282, 283, 284,
01904 285, 285, 286, 286, 287, 288, 289, 290, 291, 291,
01905 292, 292, 293, 294, 295, 296, 297, 297, 298, 299,
01906 299, 300, 300, 301, 302, 303, 304, 305, 305, 306,
01907 306, 307, 308, 309, 310, 311, 311, 312, 312, 313,
01908 314, 315, 316, 317, 317, 318, 318, 319, 320, 321,
01909 322, 323, 323, 324, 324, 325, 326, 327, 328, 329,
01910 329, 330, 330, 331, 332, 333, 334, 335, 335, 336,
01911 337, 337, 338, 338, 339, 340, 341, 342, 343, 344,
01912 344, 345, 345, 346, 347, 348, 348, 349, 350, 351,
01913 352, 352, 353, 353, 353, 354, 354, 355, 355, 356,
01914 357, 357, 358, 358, 359, 360, 361, 361, 362, 362,
01915 362, 362, 362, 363, 364, 365, 366, 366, 367, 367,
01916 368, 369, 370, 371, 372, 373, 373, 374, 374, 375,
01917 376, 377, 378, 379, 380, 380, 381, 381, 382, 383,
01918 384, 385, 386, 386, 387, 388, 389, 390, 391, 392,
01919 392, 393, 393, 394, 395, 396, 396, 397, 398, 399,
01920 400, 400, 401, 401, 401, 402, 402, 403, 403, 404,
01921 405, 405, 406, 406, 407, 408, 409, 409, 410, 410,
01922 411, 412, 413, 413, 414, 414, 415, 416, 417, 418,
01923 419, 420, 420, 421, 421, 422, 423, 424, 424, 425,
01924 426, 427, 428, 428, 429, 429, 429, 430, 430, 431,
01925 431, 432, 433, 433, 434, 434, 435, 436, 437, 437,
01926 438, 438, 438, 438, 438, 438, 438, 438, 438, 438,
01927 438, 438, 438, 438, 438, 439, 440, 441, 442, 442,
01928 443, 443, 444, 445, 446, 447, 448, 449, 449, 450,
01929 450, 451, 452, 453, 454, 455, 456, 456, 457, 457,
01930 458, 459, 459, 460, 461, 462, 463, 464, 464, 465,
01931 465, 466, 467, 467, 468, 469, 470, 471, 472, 472,
01932 473, 473, 474, 475, 475, 476, 477, 478, 479, 480,
01933 480, 481, 481, 482, 483, 483, 484, 485, 486, 487,
01934 488, 488, 489, 489, 490, 491, 491, 492, 493, 494,
01935 495, 496, 496, 497, 497, 498, 499, 499, 500, 501,
01936 502, 503, 504, 504, 505, 505, 506, 507, 507, 508,
01937 509, 510, 511, 512, 512, 513, 513, 514, 515, 515,
01938 516, 517, 518, 519, 520, 520, 521, 521, 522, 523,
01939 523, 524, 525, 526, 527, 528, 528, 529, 529, 530,
01940 531, 531, 532, 533, 534, 535, 536, 536, 537, 537,
01941 538, 539, 539, 540, 541, 542, 543, 544, 544, 545,
01942 545, 546, 547, 547, 548, 549, 550, 551, 552, 552,
01943 553, 553, 554, 555, 556, 556, 557, 558, 559, 560,
01944 560, 561, 561, 561, 562, 562, 563, 563, 564, 565,
01945 566, 566, 567, 567, 567, 568, 568, 569, 570, 571,
01946 572, 572, 573, 574, 575, 575, 576, 576, 577, 578,
01947 579, 580, 580, 581, 582, 583, 583, 584, 584, 585,
01948 586, 587, 587, 588, 589, 590, 590, 591, 591, 592,
01949 592, 593, 593, 594, 595, 596, 596, 597, 597, 598,
01950 599, 600, 600, 601, 602, 603, 604, 604, 605, 605,
01951 606, 606, 607, 607, 608, 609, 609, 610, 611, 612,
01952 613, 613, 614, 615, 616, 616, 617, 618, 619, 620,
01953 620, 621, 622, 623, 623, 624, 625, 626, 627, 627,
01954 628, 629, 630, 630, 631, 632, 633, 634, 634, 635,
01955 636, 637, 637, 638, 639, 640, 641, 641, 642, 643,
01956 644, 644, 645, 646, 647, 648, 648, 649, 650, 651,
01957 651, 652, 653, 654, 655, 655, 656, 657, 658, 658,
01958 659, 659, 660, 661, 662, 662, 663, 664, 665, 666,
01959 666, 667, 667, 668, 668, 669, 669, 670, 671, 672,
01960 672, 673, 673, 674, 675, 675, 676, 677, 678, 679,
01961 679, 680, 680, 680, 681, 681, 682, 682, 683, 684,
01962 684, 685, 686, 687, 688, 688, 689, 689, 689, 689,
01963 689, 689, 689, 689, 690, 690, 691, 691, 692, 693,
01964 693, 694, 694, 695, 696, 697, 698, 698, 699, 699,
01965 699, 699, 700, 701, 701, 702, 702, 703, 704, 705,
01966 705, 706, 706, 707, 708, 709, 710, 710, 711, 712,
01967 713, 713, 714, 714, 715, 716, 717, 717, 718, 719,
01968 720, 721, 721, 722, 722, 723, 723, 724, 724, 725,
01969 726, 727, 727, 728, 728, 729, 730, 731, 731, 732,
01970 733, 734, 735, 735, 736, 736, 736, 737, 737, 738,
01971 738, 739, 740, 740, 741, 742, 743, 744, 744, 745,
01972 746, 747, 747, 748, 749, 750, 751, 751, 752, 753,
01973 754, 754, 755, 756, 757, 758, 758, 759, 760, 761,
01974 761, 762, 763, 764, 765, 765, 766, 767, 768, 768,
01975 769, 770, 771, 772, 772, 773, 774, 775, 775, 776,
01976 777, 778, 779, 779, 780, 781, 782, 782, 783, 784,
01977 785, 786, 786, 787, 788, 789, 790, 790, 791, 791,
01978 791, 791, 791, 791, 791, 791, 792, 792, 793, 793,
01979 794, 795, 795, 796, 796, 797, 798, 799, 800, 800,
01980 801, 801, 801, 801, 802, 803, 803, 804, 804, 805,
01981 806, 807, 807, 808, 808, 809, 810, 811, 812, 812,
01982 813, 814, 815, 815, 816, 816, 817, 818, 819, 819,
01983 820, 821, 822, 822, 823, 823, 824, 824, 825, 825,
01984 826, 827, 828, 828, 829, 829, 830, 831, 832, 832,
01985 833, 834, 835, 836, 836, 837, 837, 837, 838, 838,
01986 839, 839, 840, 841, 841, 842, 843, 844, 845, 845,
01987 846, 847, 848, 848, 849, 850, 851, 852, 852, 853,
01988 854, 855, 855, 856, 857, 858, 859, 859, 860, 861,
01989 862, 862, 863, 864, 865, 866, 866, 867, 868, 869,
01990 869, 870, 871, 872, 873, 873, 874, 875, 876, 876,
01991 877, 878, 879, 880, 880, 881, 882, 883, 883, 884,
01992 885, 886, 887, 887, 888, 889, 890, 891, 891, 892,
01993 892, 892, 892, 892, 892, 892, 892, 893, 893, 894,
01994 894, 895, 896, 896, 897, 897, 898, 899, 900, 901,
01995 901, 902, 902, 902, 902, 903, 904, 904, 905, 905,
01996 906, 907, 908, 908, 909, 910, 911, 911, 912, 913,
01997 914, 915, 915, 916, 916, 916, 916, 916, 916, 916,
01998 917, 917, 918, 918, 919, 920, 921, 921, 922, 923,
01999 923, 924, 924, 925, 926, 927, 928, 929, 930, 930,
02000 931, 931, 931, 932, 933, 934, 935, 935, 936, 937,
02001 937, 938, 939, 940, 941, 941, 942, 943, 944, 945,
02002 946, 947, 948, 949, 950, 950, 951, 952, 953, 954,
02003 954, 955, 956, 957, 958, 958, 959, 960, 961, 962,
02004 962, 963, 964, 965, 966, 967, 968, 969, 969, 970,
02005 971, 972, 973, 973, 974, 975, 976, 977, 977, 978,
02006 979, 980, 981, 981, 982, 983, 984, 985, 985, 986,
02007 987, 988, 989, 990, 991, 992, 993, 994, 995, 996,
02008 997, 998, 999, 1000, 1001, 1002, 1003, 1004, 1005, 1006,
02009 1006, 1007, 1008, 1009, 1010, 1010, 1011, 1011, 1011, 1012,
02010 1012, 1013, 1014, 1015, 1016, 1016, 1017, 1017, 1018, 1019,
02011 1020, 1021, 1021, 1022, 1022, 1023, 1024, 1025, 1026, 1026,
02012 1027, 1027, 1028, 1029, 1030, 1031, 1031, 1032, 1033, 1033,
02013 1034, 1034, 1034, 1034
02014 };
02015
02016
02017 static const yytype_uint8 yyr2[] =
02018 {
02019 0, 2, 3, 3, 1, 1, 0, 1, 1, 1,
02020 1, 3, 1, 0, 6, 0, 2, 1, 1, 1,
02021 1, 3, 5, 0, 1, 1, 1, 1, 1, 3,
02022 0, 1, 1, 1, 1, 1, 3, 0, 1, 1,
02023 1, 1, 1, 3, 0, 1, 1, 1, 1, 1,
02024 3, 0, 1, 1, 1, 1, 1, 3, 0, 2,
02025 1, 1, 1, 2, 1, 3, 1, 1, 2, 1,
02026 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
02027 2, 1, 1, 1, 2, 1, 3, 1, 2, 1,
02028 1, 1, 2, 1, 3, 1, 2, 1, 1, 1,
02029 2, 1, 3, 1, 3, 1, 0, 1, 3, 1,
02030 1, 2, 1, 3, 1, 2, 1, 1, 1, 2,
02031 1, 3, 1, 2, 1, 1, 1, 2, 1, 3,
02032 1, 2, 1, 1, 1, 2, 1, 3, 1, 2,
02033 1, 1, 1, 2, 1, 3, 1, 2, 1, 1,
02034 1, 2, 1, 3, 1, 3, 1, 0, 1, 3,
02035 1, 1, 2, 1, 3, 1, 3, 1, 1, 1,
02036 1, 2, 1, 3, 1, 1, 2, 3, 1, 1,
02037 0, 2, 1, 1, 1, 2, 1, 0, 2, 1,
02038 1, 1, 2, 1, 3, 1, 1, 2, 1, 1,
02039 1, 1, 1, 3, 1, 1, 0, 2, 1, 1,
02040 3, 1, 3, 1, 1, 0, 2, 1, 1, 3,
02041 1, 3, 1, 1, 0, 2, 1, 1, 3, 1,
02042 3, 1, 0, 1, 3, 1, 3, 1, 1, 1,
02043 1, 2, 1, 3, 1, 1, 2, 3, 1, 1,
02044 0, 2, 1, 1, 1, 2, 1, 0, 2, 1,
02045 1, 1, 2, 1, 3, 1, 1, 2, 1, 1,
02046 2, 1, 1, 1, 2, 1, 3, 1, 3, 1,
02047 1, 1, 1, 2, 1, 3, 1, 1, 2, 3,
02048 1, 1, 0, 2, 1, 1, 1, 2, 1, 0,
02049 2, 1, 1, 1, 2, 1, 3, 1, 1, 2,
02050 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
02051 1, 1, 1, 1, 1, 3, 1, 1, 1, 1,
02052 2, 1, 3, 1, 1, 2, 1, 1, 1, 2,
02053 1, 3, 1, 3, 1, 1, 1, 1, 2, 1,
02054 3, 1, 2, 4, 3, 1, 1, 1, 1, 2,
02055 1, 3, 1, 2, 4, 3, 1, 1, 1, 1,
02056 2, 1, 3, 1, 2, 4, 3, 1, 1, 1,
02057 1, 2, 1, 3, 1, 2, 4, 3, 1, 1,
02058 1, 1, 2, 1, 3, 1, 2, 4, 3, 1,
02059 1, 1, 1, 2, 1, 3, 1, 2, 1, 3,
02060 1, 1, 1, 1, 2, 1, 3, 1, 2, 1,
02061 3, 1, 1, 1, 1, 2, 1, 3, 1, 2,
02062 1, 3, 1, 1, 1, 1, 2, 1, 3, 1,
02063 2, 1, 3, 1, 1, 1, 1, 2, 1, 3,
02064 1, 2, 4, 3, 1, 1, 1, 1, 2, 1,
02065 3, 1, 2, 4, 3, 1, 1, 1, 1, 2,
02066 1, 3, 1, 2, 4, 3, 1, 1, 1, 1,
02067 2, 1, 3, 1, 1, 2, 3, 1, 1, 0,
02068 2, 1, 1, 1, 2, 1, 0, 3, 1, 1,
02069 0, 2, 1, 1, 1, 1, 1, 1, 3, 4,
02070 0, 3, 1, 1, 0, 1, 1, 1, 1, 3,
02071 6, 0, 3, 1, 1, 1, 1, 2, 1, 3,
02072 1, 1, 2, 3, 1, 0, 2, 1, 1, 2,
02073 1, 0, 3, 1, 1, 1, 1, 2, 1, 3,
02074 1, 1, 2, 3, 1, 1, 0, 2, 1, 1,
02075 2, 1, 0, 2, 1, 1, 1, 1, 3, 6,
02076 0, 3, 1, 1, 1, 1, 1, 3, 1, 0,
02077 3, 1, 1, 1, 1, 1, 3, 1, 0, 3,
02078 1, 1, 1, 1, 1, 3, 1, 0, 3, 1,
02079 1, 1, 1, 1, 3, 1, 0, 3, 1, 1,
02080 1, 1, 1, 3, 1, 0, 3, 1, 1, 1,
02081 1, 1, 3, 1, 0, 3, 1, 1, 1, 1,
02082 2, 1, 3, 1, 1, 2, 3, 1, 1, 0,
02083 2, 1, 1, 2, 1, 0, 3, 1, 4, 1,
02084 1, 2, 1, 3, 1, 2, 3, 1, 1, 0,
02085 2, 1, 1, 1, 1, 1, 2, 1, 3, 0,
02086 2, 3, 1, 1, 0, 2, 1, 1, 1, 1,
02087 1, 1, 1, 1, 1, 1, 2, 1, 3, 1,
02088 1, 1, 2, 3, 1, 1, 0, 2, 1, 1,
02089 1, 1, 1, 2, 1, 0, 3, 1, 1, 0,
02090 1, 1, 1, 1, 3, 4, 0, 3, 1, 1,
02091 1, 1, 2, 1, 3, 1, 1, 2, 3, 1,
02092 1, 0, 2, 1, 1, 2, 1, 0, 3, 1,
02093 1, 1, 1, 2, 1, 3, 1, 1, 2, 3,
02094 1, 1, 0, 2, 1, 1, 1, 2, 1, 0,
02095 2, 1, 1, 1, 1, 3, 6, 0, 3, 1,
02096 1, 1, 1, 1, 3, 1, 0, 3, 1, 1,
02097 1, 1, 1, 3, 1, 0, 3, 1, 1, 1,
02098 1, 1, 3, 1, 0, 3, 1, 1, 1, 1,
02099 1, 3, 1, 0, 3, 1, 1, 1, 1, 1,
02100 3, 1, 0, 3, 1, 1, 1, 1, 1, 3,
02101 1, 0, 2, 3, 1, 1, 0, 2, 1, 1,
02102 1, 1, 1, 1, 1, 1, 1, 1, 2, 1,
02103 3, 1, 1, 1, 2, 3, 1, 1, 0, 2,
02104 1, 1, 1, 1, 1, 2, 1, 0, 3, 1,
02105 1, 0, 1, 1, 1, 1, 3, 4, 0, 3,
02106 1, 1, 1, 1, 2, 1, 3, 1, 1, 2,
02107 3, 1, 0, 2, 1, 1, 2, 1, 0, 3,
02108 1, 1, 1, 1, 2, 1, 3, 1, 1, 2,
02109 3, 1, 1, 0, 2, 1, 1, 1, 2, 1,
02110 0, 2, 1, 1, 1, 1, 3, 6, 0, 3,
02111 1, 1, 1, 1, 1, 3, 1, 0, 3, 1,
02112 1, 1, 1, 1, 3, 1, 0, 3, 1, 1,
02113 1, 1, 1, 3, 1, 0, 3, 1, 1, 1,
02114 1, 1, 3, 1, 0, 3, 1, 1, 1, 1,
02115 1, 3, 1, 0, 3, 1, 1, 1, 1, 1,
02116 3, 1, 0, 2, 3, 1, 1, 0, 2, 1,
02117 1, 1, 1, 1, 1, 1, 1, 1, 1, 2,
02118 1, 3, 1, 1, 1, 2, 3, 1, 1, 0,
02119 2, 1, 1, 1, 1, 1, 2, 1, 0, 3,
02120 1, 1, 1, 1, 1, 3, 0, 2, 3, 1,
02121 1, 1, 2, 1, 1, 1, 1, 1, 1, 1,
02122 1, 1, 2, 1, 3, 1, 1, 2, 1, 1,
02123 1, 1, 1, 3, 1, 3, 1, 1, 0, 2,
02124 1, 1, 1, 3, 3, 3, 2, 1, 1, 1,
02125 1, 1, 3, 1, 1, 1, 1, 3, 1, 4,
02126 1, 1, 4, 1, 1, 1, 1, 3, 1, 1,
02127 1, 1, 4, 1, 1, 1, 1, 3, 1, 1,
02128 1, 1, 3, 1, 1, 4, 1, 1, 1, 1,
02129 3, 1, 1, 1, 1, 3, 1, 1, 1, 1,
02130 4, 1, 1, 1, 1, 3, 1, 1, 1, 1,
02131 3, 4, 4, 4, 4, 4, 4, 4, 4, 4,
02132 4, 4, 4, 4, 4, 4, 4, 4, 4, 1,
02133 2, 3, 1, 1, 0, 2, 1, 1, 1, 1,
02134 1, 1, 3, 1, 1, 1, 0, 2, 3, 1,
02135 1, 0, 2, 1, 1, 3, 3, 4, 1, 1,
02136 2, 1, 3, 4, 4, 1, 1, 2, 0, 2,
02137 1, 1, 1, 1
02138 };
02139
02140
02141
02142
02143 static const yytype_uint16 yydefact[] =
02144 {
02145 0, 5, 4, 0, 15, 6, 1, 17, 13, 58,
02146 0, 7, 0, 12, 2, 60, 187, 0, 23, 20,
02147 16, 18, 19, 15, 10, 3, 8, 9, 189, 257,
02148 0, 0, 64, 59, 61, 62, 0, 28, 27, 0,
02149 30, 24, 25, 26, 13, 259, 299, 0, 0, 193,
02150 188, 190, 191, 63, 81, 89, 97, 105, 116, 124,
02151 132, 140, 148, 156, 167, 0, 66, 67, 69, 0,
02152 70, 0, 71, 0, 72, 106, 73, 0, 74, 0,
02153 75, 0, 76, 0, 77, 0, 78, 157, 79, 0,
02154 0, 21, 0, 35, 34, 37, 31, 32, 33, 11,
02155 301, 496, 0, 0, 263, 258, 260, 261, 192, 237,
02156 204, 213, 222, 231, 0, 195, 196, 198, 206, 199,
02157 215, 200, 224, 201, 232, 202, 0, 65, 68, 0,
02158 85, 80, 82, 83, 0, 93, 88, 90, 91, 0,
02159 101, 96, 98, 99, 0, 0, 107, 0, 120, 115,
02160 117, 118, 0, 128, 123, 125, 126, 0, 136, 131,
02161 133, 134, 0, 144, 139, 141, 142, 0, 152, 147,
02162 149, 150, 0, 0, 158, 1178, 0, 168, 29, 0,
02163 0, 42, 41, 44, 38, 39, 40, 498, 14, 500,
02164 0, 305, 300, 302, 303, 262, 279, 271, 0, 265,
02165 266, 268, 0, 269, 0, 194, 197, 0, 205, 0,
02166 214, 0, 223, 0, 1066, 0, 233, 1063, 1064, 1065,
02167 0, 238, 87, 84, 0, 95, 92, 0, 103, 100,
02168 0, 0, 0, 112, 104, 109, 110, 122, 119, 0,
02169 130, 127, 0, 138, 135, 0, 146, 143, 0, 154,
02170 151, 0, 0, 0, 163, 155, 160, 161, 0, 0,
02171 0, 172, 166, 169, 170, 36, 0, 0, 49, 48,
02172 51, 45, 46, 47, 0, 499, 304, 476, 326, 336,
02173 344, 355, 366, 377, 388, 454, 443, 399, 410, 432,
02174 421, 465, 0, 307, 308, 310, 0, 311, 0, 312,
02175 0, 313, 0, 314, 0, 315, 0, 316, 0, 317,
02176 0, 318, 0, 320, 0, 319, 0, 321, 0, 322,
02177 0, 323, 0, 324, 0, 264, 267, 0, 275, 270,
02178 272, 273, 0, 280, 0, 203, 0, 1114, 207, 209,
02179 208, 1111, 1112, 1113, 0, 212, 216, 218, 217, 0,
02180 221, 225, 227, 226, 1178, 0, 230, 0, 242, 236,
02181 239, 240, 86, 94, 102, 108, 114, 111, 0, 121,
02182 129, 137, 145, 153, 159, 165, 162, 0, 1178, 1177,
02183 1180, 1181, 1182, 1183, 1179, 171, 178, 0, 174, 175,
02184 180, 43, 0, 0, 56, 55, 22, 52, 53, 54,
02185 510, 507, 497, 505, 506, 1178, 1178, 1178, 501, 503,
02186 504, 502, 306, 309, 0, 327, 0, 340, 335, 337,
02187 338, 0, 0, 345, 0, 0, 356, 0, 367, 0,
02188 378, 0, 389, 0, 0, 400, 0, 411, 0, 422,
02189 0, 433, 0, 444, 0, 455, 0, 0, 466, 0,
02190 477, 277, 274, 0, 0, 284, 278, 281, 282, 1175,
02191 1176, 0, 211, 0, 0, 220, 0, 229, 1067, 235,
02192 0, 241, 248, 0, 244, 245, 250, 113, 164, 1131,
02193 173, 176, 0, 179, 50, 0, 512, 0, 705, 514,
02194 0, 0, 0, 0, 331, 325, 328, 329, 342, 339,
02195 0, 0, 0, 349, 343, 346, 347, 0, 0, 360,
02196 354, 357, 358, 0, 371, 365, 368, 369, 0, 382,
02197 376, 379, 380, 0, 393, 387, 390, 391, 0, 0,
02198 404, 398, 401, 402, 0, 415, 409, 412, 413, 0,
02199 426, 420, 423, 424, 0, 437, 431, 434, 435, 0,
02200 448, 442, 445, 446, 0, 459, 453, 456, 457, 0,
02201 0, 470, 464, 467, 468, 0, 481, 475, 478, 479,
02202 276, 283, 290, 0, 286, 287, 292, 210, 1115, 219,
02203 228, 234, 243, 246, 0, 249, 0, 186, 177, 0,
02204 0, 1086, 1119, 181, 184, 182, 1083, 1084, 1085, 183,
02205 1116, 1117, 1118, 57, 508, 707, 857, 709, 1178, 0,
02206 513, 515, 1178, 1178, 1178, 330, 0, 333, 334, 341,
02207 0, 0, 348, 0, 351, 0, 359, 0, 0, 362,
02208 370, 0, 0, 373, 0, 381, 0, 384, 0, 392,
02209 0, 395, 0, 1046, 403, 0, 406, 408, 1048, 414,
02210 0, 417, 419, 425, 0, 428, 430, 436, 0, 439,
02211 441, 0, 447, 0, 450, 0, 458, 0, 461, 0,
02212 469, 0, 0, 472, 480, 487, 0, 483, 484, 489,
02213 285, 288, 0, 291, 0, 256, 247, 251, 254, 252,
02214 253, 185, 1178, 0, 859, 1008, 861, 1178, 0, 708,
02215 710, 0, 521, 518, 511, 516, 517, 1138, 1128, 1122,
02216 332, 1126, 0, 350, 352, 1134, 0, 361, 363, 0,
02217 372, 374, 0, 383, 385, 0, 394, 396, 1133, 405,
02218 407, 0, 1047, 416, 418, 427, 429, 438, 440, 0,
02219 449, 451, 0, 460, 462, 1135, 0, 471, 473, 482,
02220 485, 0, 488, 0, 298, 289, 293, 296, 294, 295,
02221 255, 1087, 1120, 1010, 509, 0, 1178, 0, 860, 862,
02222 0, 716, 713, 706, 711, 712, 1178, 523, 0, 541,
02223 0, 0, 0, 0, 0, 0, 0, 1057, 1045, 0,
02224 0, 0, 1049, 1050, 1051, 1052, 0, 0, 0, 0,
02225 495, 486, 490, 493, 491, 492, 297, 1178, 0, 1011,
02226 0, 868, 865, 858, 863, 864, 1178, 718, 0, 737,
02227 0, 1132, 519, 543, 562, 0, 1178, 0, 524, 353,
02228 364, 375, 386, 397, 1056, 0, 0, 0, 452, 463,
02229 474, 494, 0, 1016, 1014, 1009, 1012, 1013, 1178, 870,
02230 0, 888, 0, 1130, 714, 739, 759, 0, 1178, 0,
02231 719, 564, 624, 0, 0, 544, 0, 0, 528, 522,
02232 525, 526, 1053, 1054, 1055, 1178, 0, 1129, 866, 890,
02233 910, 0, 1178, 0, 871, 761, 821, 0, 0, 740,
02234 0, 0, 723, 717, 720, 721, 626, 645, 0, 570,
02235 567, 563, 565, 566, 0, 548, 542, 545, 546, 1178,
02236 527, 534, 0, 530, 531, 535, 1136, 1015, 1019, 1017,
02237 0, 912, 972, 0, 0, 891, 0, 0, 875, 869,
02238 872, 873, 715, 767, 764, 760, 762, 763, 0, 744,
02239 738, 741, 742, 1178, 722, 729, 0, 725, 726, 731,
02240 647, 669, 0, 0, 627, 572, 0, 579, 0, 554,
02241 547, 0, 550, 551, 556, 1137, 529, 532, 0, 0,
02242 0, 1178, 1099, 1061, 0, 1091, 0, 1020, 1021, 1026,
02243 1058, 1059, 1060, 1028, 1023, 1025, 1088, 1089, 1090, 1027,
02244 1096, 1097, 1098, 1024, 1029, 867, 918, 915, 911, 913,
02245 914, 0, 895, 889, 892, 893, 1178, 874, 881, 0,
02246 877, 878, 882, 824, 822, 826, 769, 0, 776, 0,
02247 750, 743, 0, 746, 747, 752, 1127, 724, 727, 0,
02248 730, 520, 0, 0, 0, 631, 625, 628, 629, 568,
02249 581, 588, 0, 1178, 0, 573, 549, 552, 0, 555,
02250 0, 540, 1178, 536, 533, 537, 1070, 1071, 538, 1178,
02251 0, 0, 1178, 0, 1033, 1018, 1030, 1031, 1022, 975,
02252 973, 977, 920, 0, 927, 0, 901, 894, 0, 897,
02253 898, 903, 1121, 876, 879, 0, 0, 825, 765, 778,
02254 785, 0, 0, 770, 745, 748, 0, 751, 0, 736,
02255 728, 732, 733, 734, 672, 670, 674, 0, 0, 652,
02256 646, 649, 650, 637, 630, 0, 633, 634, 639, 590,
02257 597, 0, 0, 582, 0, 1156, 576, 571, 574, 575,
02258 0, 561, 553, 557, 558, 559, 539, 0, 1062, 1100,
02259 1178, 1092, 1032, 1042, 0, 1041, 0, 1035, 1036, 1038,
02260 1039, 1040, 0, 976, 916, 929, 936, 0, 0, 921,
02261 896, 899, 0, 902, 0, 887, 883, 880, 884, 885,
02262 0, 839, 823, 836, 837, 1178, 827, 833, 835, 830,
02263 832, 834, 831, 829, 828, 787, 794, 0, 0, 779,
02264 1156, 773, 768, 771, 772, 0, 758, 749, 1076, 1104,
02265 0, 0, 753, 754, 755, 1073, 1074, 1075, 756, 1101,
02266 1102, 1103, 735, 0, 673, 0, 651, 657, 0, 654,
02267 659, 632, 635, 0, 638, 599, 606, 0, 0, 591,
02268 1156, 585, 580, 583, 584, 1178, 0, 0, 578, 1154,
02269 1155, 560, 1178, 1125, 1044, 0, 1034, 1037, 0, 990,
02270 974, 987, 988, 978, 984, 986, 981, 983, 985, 982,
02271 979, 980, 938, 945, 0, 0, 930, 1156, 924, 919,
02272 922, 923, 0, 909, 900, 1081, 1109, 1178, 1178, 904,
02273 905, 906, 1078, 1079, 1080, 907, 1106, 1107, 1108, 886,
02274 838, 846, 1142, 0, 841, 843, 848, 842, 1139, 1144,
02275 0, 796, 803, 0, 0, 788, 1156, 782, 777, 780,
02276 781, 0, 775, 757, 1178, 1178, 0, 687, 671, 684,
02277 685, 675, 681, 683, 678, 680, 682, 679, 677, 676,
02278 648, 653, 655, 0, 658, 0, 644, 636, 640, 641,
02279 642, 608, 615, 0, 0, 600, 1156, 594, 589, 592,
02280 593, 0, 587, 1123, 1178, 0, 577, 1159, 1157, 1161,
02281 1072, 1043, 989, 997, 0, 992, 994, 999, 993, 947,
02282 954, 0, 0, 939, 1156, 933, 928, 931, 932, 0,
02283 926, 908, 0, 0, 840, 844, 0, 847, 1140, 0,
02284 1143, 1178, 805, 812, 0, 0, 797, 1156, 791, 786,
02285 789, 790, 0, 784, 774, 1077, 1105, 686, 694, 0,
02286 689, 691, 696, 690, 0, 667, 656, 664, 665, 0,
02287 1178, 660, 663, 1068, 661, 1093, 1094, 662, 643, 617,
02288 569, 0, 0, 609, 1156, 603, 598, 601, 602, 0,
02289 596, 586, 0, 0, 1171, 1166, 1168, 1169, 0, 1160,
02290 991, 995, 0, 998, 956, 963, 0, 0, 948, 1156,
02291 942, 937, 940, 941, 0, 935, 925, 1178, 1178, 0,
02292 856, 845, 854, 849, 850, 852, 853, 851, 1156, 1151,
02293 1141, 1149, 1150, 1148, 1147, 1146, 1145, 1124, 814, 766,
02294 0, 0, 806, 1156, 800, 795, 798, 799, 0, 793,
02295 783, 688, 692, 0, 695, 666, 0, 0, 0, 0,
02296 618, 1156, 612, 607, 610, 611, 0, 605, 595, 1178,
02297 0, 1170, 0, 1158, 1178, 1178, 1162, 1164, 1163, 0,
02298 1007, 996, 1005, 1000, 1001, 1003, 1004, 1002, 965, 917,
02299 0, 0, 957, 1156, 951, 946, 949, 950, 0, 944,
02300 934, 1082, 1110, 855, 0, 1153, 0, 815, 1156, 809,
02301 804, 807, 808, 0, 802, 792, 0, 704, 693, 702,
02302 697, 698, 700, 701, 699, 668, 0, 1178, 1156, 621,
02303 616, 619, 620, 0, 614, 604, 1167, 1172, 0, 0,
02304 0, 1006, 0, 966, 1156, 960, 955, 958, 959, 0,
02305 953, 943, 1152, 1156, 818, 813, 816, 817, 0, 811,
02306 801, 703, 1069, 1095, 0, 623, 613, 1165, 1178, 1178,
02307 1156, 969, 964, 967, 968, 0, 962, 952, 0, 820,
02308 810, 622, 1173, 1174, 0, 971, 961, 819, 970
02309 };
02310
02311
02312 static const yytype_int16 yydefgoto[] =
02313 {
02314 -1, 3, 4, 5, 12, 25, 26, 27, 14, 8,
02315 9, 10, 20, 21, 22, 39, 40, 41, 42, 43,
02316 95, 96, 97, 98, 183, 184, 185, 186, 270, 271,
02317 272, 273, 396, 397, 398, 399, 16, 17, 33, 34,
02318 35, 65, 66, 67, 68, 69, 131, 132, 133, 224,
02319 70, 71, 136, 137, 138, 227, 72, 73, 141, 142,
02320 143, 230, 74, 75, 145, 146, 234, 235, 236, 368,
02321 76, 77, 149, 150, 151, 239, 78, 79, 154, 155,
02322 156, 242, 80, 81, 159, 160, 161, 245, 82, 83,
02323 164, 165, 166, 248, 84, 85, 169, 170, 171, 251,
02324 86, 87, 173, 174, 255, 256, 257, 377, 88, 89,
02325 176, 262, 263, 264, 387, 388, 389, 390, 482, 483,
02326 593, 588, 29, 30, 50, 51, 52, 114, 115, 116,
02327 117, 118, 207, 208, 338, 335, 461, 119, 120, 209,
02328 210, 346, 345, 464, 121, 122, 211, 212, 351, 350,
02329 466, 123, 124, 215, 356, 470, 125, 126, 220, 359,
02330 360, 361, 473, 474, 475, 476, 584, 585, 687, 686,
02331 46, 47, 105, 106, 107, 198, 199, 200, 201, 202,
02332 329, 330, 331, 453, 203, 204, 332, 456, 457, 458,
02333 573, 574, 575, 576, 682, 683, 756, 755, 101, 102,
02334 192, 193, 194, 292, 293, 294, 295, 296, 414, 495,
02335 496, 497, 616, 617, 297, 298, 418, 419, 420, 500,
02336 299, 300, 422, 504, 505, 506, 623, 624, 301, 302,
02337 425, 510, 511, 512, 628, 629, 303, 304, 427, 515,
02338 516, 517, 632, 633, 305, 306, 429, 520, 521, 522,
02339 636, 637, 307, 308, 431, 525, 526, 527, 640, 641,
02340 309, 310, 434, 531, 532, 533, 645, 646, 311, 312,
02341 436, 536, 537, 538, 650, 651, 313, 314, 438, 541,
02342 542, 543, 654, 655, 315, 316, 440, 546, 547, 548,
02343 658, 659, 317, 318, 442, 551, 552, 553, 663, 664,
02344 319, 320, 444, 556, 557, 558, 667, 668, 321, 322,
02345 447, 562, 563, 564, 672, 673, 323, 324, 449, 567,
02346 568, 569, 676, 677, 678, 679, 751, 752, 802, 801,
02347 188, 189, 274, 275, 408, 402, 403, 404, 487, 488,
02348 489, 609, 610, 704, 705, 706, 778, 779, 780, 827,
02349 869, 870, 871, 912, 913, 914, 915, 968, 1053, 1054,
02350 824, 825, 864, 906, 907, 908, 961, 962, 963, 964,
02351 1048, 1049, 1133, 1132, 862, 863, 901, 902, 903, 956,
02352 957, 958, 1044, 1127, 1128, 1129, 1237, 1041, 1042, 1122,
02353 1232, 1233, 1234, 1351, 1120, 1121, 1228, 1348, 1349, 1350,
02354 1439, 1226, 1227, 1344, 1436, 1437, 1438, 1516, 1342, 1343,
02355 1432, 1513, 1514, 1515, 1583, 1430, 1431, 1509, 1580, 1581,
02356 1582, 1614, 897, 898, 953, 1036, 1037, 1038, 1115, 1116,
02357 1117, 1118, 1223, 1224, 1338, 1337, 951, 952, 1033, 1110,
02358 1111, 1112, 1218, 1219, 1220, 1333, 1334, 1421, 1416, 1417,
02359 1418, 1031, 1105, 1106, 1213, 1214, 1321, 1318, 1319, 1320,
02360 1409, 1410, 1411, 1412, 1503, 1504, 1570, 1568, 1569, 606,
02361 607, 698, 699, 773, 774, 775, 818, 819, 820, 859,
02362 893, 894, 895, 946, 947, 948, 949, 1029, 1030, 1101,
02363 1100, 856, 857, 888, 940, 941, 942, 1022, 1023, 1024,
02364 1025, 1096, 1097, 1202, 1197, 886, 887, 935, 936, 937,
02365 1017, 1018, 1019, 1092, 1192, 1193, 1194, 1311, 1090, 1091,
02366 1188, 1308, 1309, 1310, 1402, 1186, 1187, 1304, 1399, 1400,
02367 1401, 1498, 1302, 1303, 1395, 1495, 1496, 1497, 1563, 1393,
02368 1394, 1491, 1560, 1561, 1562, 1608, 1489, 1490, 1556, 1605,
02369 1606, 1607, 1628, 932, 1014, 1015, 1086, 1087, 1176, 1172,
02370 1173, 1174, 1293, 1294, 1295, 1296, 1386, 1387, 1473, 1471,
02371 1472, 695, 696, 767, 768, 813, 814, 815, 850, 851,
02372 852, 883, 929, 930, 931, 1009, 1010, 1011, 1012, 1085,
02373 1166, 1167, 880, 881, 924, 1003, 1004, 1005, 1078, 1079,
02374 1080, 1081, 1162, 1163, 1279, 1274, 922, 923, 998, 999,
02375 1000, 1073, 1074, 1075, 1158, 1269, 1270, 1271, 1379, 1156,
02376 1157, 1265, 1376, 1377, 1378, 1464, 1263, 1264, 1372, 1461,
02377 1462, 1463, 1548, 1370, 1371, 1457, 1545, 1546, 1547, 1599,
02378 1455, 1456, 1541, 1596, 1597, 1598, 1625, 1539, 1540, 1592,
02379 1622, 1623, 1624, 1634, 995, 1070, 1071, 1152, 1153, 1253,
02380 1250, 1251, 1252, 1364, 1365, 1366, 1367, 1452, 1453, 1533,
02381 1531, 1532, 764, 765, 808, 845, 846, 847, 876, 919,
02382 920, 976, 977, 978, 1065, 1066, 1067, 1146, 1147, 1148,
02383 1149, 1150, 1151, 1245, 647, 648, 731, 732, 792, 793,
02384 794, 795, 788, 979, 980, 981, 982, 983, 217, 218,
02385 219, 1422, 1423, 1055, 1056, 1057, 1204, 1205, 1206, 1207,
02386 1281, 1282, 1283, 1284, 984, 596, 597, 598, 985, 986,
02387 987, 988, 1424, 1425, 1426, 989, 990, 991, 992, 1208,
02388 1209, 1210, 1211, 1285, 1286, 1287, 1288, 340, 341, 342,
02389 343, 993, 600, 601, 602, 884, 409, 1045, 1183, 994,
02390 423, 860, 410, 769, 700, 177, 611, 435, 426, 448,
02391 809, 828, 411, 1297, 1298, 1299, 1389, 1390, 1486, 1480,
02392 1481, 1482, 1554, 1238, 1239, 1358, 1359, 1448, 1449, 1526,
02393 1523, 1240, 1355, 1445, 1446, 1447, 1527, 1528, 462, 258,
02394 259, 384
02395 };
02396
02397
02398
02399 #define YYPACT_NINF -1365
02400 static const yytype_int16 yypact[] =
02401 {
02402 348, -1365, -1365, 47, 0, 186, -1365, -1365, 203, 151,
02403 359, -1365, 361, -1365, -1365, -1365, 174, 363, 20, -1365,
02404 -1365, -1365, -1365, 0, -1365, -1365, -1365, -1365, -1365, 200,
02405 366, 182, -1365, -1365, -1365, -1365, 273, -1365, -1365, 216,
02406 191, -1365, -1365, -1365, 203, -1365, 215, 373, -8, -1365,
02407 -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365,
02408 -1365, -1365, -1365, -1365, -1365, 230, 462, -1365, -1365, 384,
02409 -1365, 390, -1365, 394, -1365, 220, -1365, 396, -1365, 398,
02410 -1365, 400, -1365, 402, -1365, 409, -1365, 245, -1365, 296,
02411 249, -1365, 320, -1365, -1365, 233, -1365, -1365, -1365, -1365,
02412 -1365, 260, 411, -22, -1365, -1365, -1365, -1365, -1365, -1365,
02413 -1365, -1365, -1365, -1365, 279, 121, -1365, -1365, -1365, -1365,
02414 -1365, -1365, -1365, -1365, 211, -1365, 296, -1365, -1365, 31,
02415 -1365, -1365, -1365, -1365, 41, -1365, -1365, -1365, -1365, 37,
02416 -1365, -1365, -1365, -1365, 342, 418, -1365, 30, -1365, -1365,
02417 -1365, -1365, 27, -1365, -1365, -1365, -1365, 24, -1365, -1365,
02418 -1365, -1365, 18, -1365, -1365, -1365, -1365, 17, -1365, -1365,
02419 -1365, -1365, 354, 420, -1365, -1365, 422, -1365, -1365, 278,
02420 362, -1365, -1365, 241, -1365, -1365, -1365, -1365, -1365, -1365,
02421 38, -1365, -1365, -1365, -1365, -1365, -1365, -1365, 290, 92,
02422 -1365, -1365, 425, -1365, 296, -1365, -1365, 371, 257, 376,
02423 257, 382, 257, 412, -1365, 387, -1365, -1365, -1365, -1365,
02424 433, -1365, -1365, -1365, 324, -1365, -1365, 335, -1365, -1365,
02425 365, 438, 29, -1365, -1365, -1365, -1365, -1365, -1365, 331,
02426 -1365, -1365, 379, -1365, -1365, 364, -1365, -1365, 357, -1365,
02427 -1365, 367, 473, 16, -1365, -1365, -1365, -1365, 467, 5,
02428 334, -1365, -1365, -1365, -1365, -1365, 403, 488, -1365, -1365,
02429 229, -1365, -1365, -1365, 446, 93, -1365, -1365, -1365, -1365,
02430 -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365,
02431 -1365, -1365, 432, 333, -1365, -1365, 135, -1365, 449, -1365,
02432 477, -1365, 519, -1365, 519, -1365, 519, -1365, 519, -1365,
02433 512, -1365, 512, -1365, 512, -1365, 512, -1365, 519, -1365,
02434 519, -1365, 521, -1365, 296, -1365, -1365, 15, -1365, -1365,
02435 -1365, -1365, 454, -1365, 472, -1365, 541, -1365, -1365, -1365,
02436 -1365, -1365, -1365, -1365, 472, -1365, -1365, -1365, -1365, 472,
02437 -1365, -1365, -1365, -1365, -1365, 552, -1365, 377, -1365, -1365,
02438 -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365, 456, -1365,
02439 -1365, -1365, -1365, -1365, -1365, -1365, -1365, 448, -1365, -1365,
02440 -1365, -1365, -1365, -1365, -1365, -1365, -1365, 444, 451, -1365,
02441 -1365, -1365, 478, 569, -1365, -1365, -1365, -1365, -1365, -1365,
02442 415, -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365,
02443 -1365, -1365, -1365, -1365, 490, -1365, 12, -1365, -1365, -1365,
02444 -1365, 568, 492, -1365, 570, 494, -1365, 496, -1365, 500,
02445 -1365, 502, -1365, 572, 504, -1365, 509, -1365, 511, -1365,
02446 513, -1365, 517, -1365, 520, -1365, 583, 525, -1365, 536,
02447 -1365, -1365, -1365, 471, 430, -1365, -1365, -1365, -1365, -1365,
02448 -1365, 481, -1365, 718, 501, -1365, 599, -1365, -1365, -1365,
02449 601, -1365, -1365, 609, 607, -1365, -1365, -1365, -1365, -1365,
02450 -1365, -1365, 542, 181, -1365, 634, -1365, 657, 537, 703,
02451 731, 732, 733, 11, -1365, -1365, -1365, -1365, -1365, -1365,
02452 605, 734, -53, -1365, -1365, -1365, -1365, 736, 171, -1365,
02453 -1365, -1365, -1365, 414, -1365, -1365, -1365, -1365, 78, -1365,
02454 -1365, -1365, -1365, -82, -1365, -1365, -1365, -1365, 738, -29,
02455 -1365, -1365, -1365, -1365, -38, -1365, -1365, -1365, -1365, -92,
02456 -1365, -1365, -1365, -1365, -64, -1365, -1365, -1365, -1365, 61,
02457 -1365, -1365, -1365, -1365, 95, -1365, -1365, -1365, -1365, 739,
02458 419, -1365, -1365, -1365, -1365, 465, -1365, -1365, -1365, -1365,
02459 -1365, -1365, -1365, 626, 628, -1365, -1365, -1365, -1365, -1365,
02460 -1365, -1365, -1365, -1365, 577, 181, 625, -1365, -1365, 745,
02461 747, -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365,
02462 -1365, -1365, -1365, -1365, -1365, -1365, 548, 719, -1365, 579,
02463 -1365, -1365, -1365, -1365, -1365, -1365, 618, -1365, -1365, -1365,
02464 746, 748, -1365, -44, -1365, 749, -1365, 750, 206, -1365,
02465 -1365, 751, 450, -1365, 752, -1365, 112, -1365, 753, -1365,
02466 132, -1365, 756, -1365, -1365, 74, -1365, -1365, -1365, -1365,
02467 1, -1365, -1365, -1365, -62, -1365, -1365, -1365, -42, -1365,
02468 -1365, 755, -1365, 85, -1365, 757, -1365, 110, -1365, 758,
02469 -1365, 759, 431, -1365, -1365, -1365, 636, 638, -1365, -1365,
02470 -1365, -1365, 587, 181, 646, -1365, -1365, -1365, -1365, -1365,
02471 -1365, -1365, -1365, 762, -1365, 544, 737, -1365, 589, -1365,
02472 -1365, 765, 611, -1365, -1365, -1365, -1365, -1365, -1365, -1365,
02473 -1365, -1365, 769, -1365, -1365, -1365, 770, -1365, -1365, 771,
02474 -1365, -1365, 772, -1365, -1365, 773, -1365, -1365, -1365, -1365,
02475 -1365, 591, 283, -1365, -1365, -1365, -1365, -1365, -1365, 774,
02476 -1365, -1365, 775, -1365, -1365, -1365, 777, -1365, -1365, -1365,
02477 -1365, 598, 181, 661, -1365, -1365, -1365, -1365, -1365, -1365,
02478 -1365, -1365, -1365, -1365, -1365, 754, -1365, 600, -1365, -1365,
02479 778, 588, -1365, -1365, -1365, -1365, -1365, -1365, 620, 613,
02480 760, 679, 649, 651, 652, 655, 644, -1365, -1365, 786,
02481 789, 791, -1365, -1365, -1365, -1365, 659, 662, 632, 683,
02482 -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365, 602, -1365,
02483 794, 596, -1365, -1365, -1365, -1365, -1365, -1365, 612, 603,
02484 764, -1365, -1365, -1365, 640, 760, -1365, 604, -1365, -1365,
02485 -1365, -1365, -1365, -1365, -1365, 799, 801, 802, -1365, -1365,
02486 -1365, -1365, 805, -1365, -1365, -1365, -1365, -1365, -1365, -1365,
02487 614, 615, 780, -1365, -1365, -1365, 642, 764, -1365, 606,
02488 -1365, -1365, 624, 608, 610, -1365, 806, 453, -1365, -1365,
02489 -1365, -1365, -1365, -1365, -1365, -1365, 413, -1365, -1365, -1365,
02490 647, 780, -1365, 619, -1365, -1365, -1365, 621, 623, -1365,
02491 808, 437, -1365, -1365, -1365, -1365, -1365, 630, 760, 653,
02492 -1365, -1365, -1365, -1365, 176, -1365, -1365, -1365, -1365, -1365,
02493 -1365, -1365, 663, 665, -1365, -1365, -1365, -1365, -1365, -1365,
02494 493, -1365, -1365, 627, 629, -1365, 810, 435, -1365, -1365,
02495 -1365, -1365, 699, 667, -1365, -1365, -1365, -1365, -18, -1365,
02496 -1365, -1365, -1365, -1365, -1365, -1365, 631, 668, -1365, -1365,
02497 -1365, -1365, 796, 633, -1365, -1365, 669, 671, 783, -1365,
02498 -1365, 673, 675, -1365, -1365, -1365, -1365, -1365, 154, 824,
02499 825, -1365, -1365, -1365, 828, -1365, 635, 493, -1365, -1365,
02500 -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365,
02501 -1365, -1365, -1365, -1365, -1365, 711, 677, -1365, -1365, -1365,
02502 -1365, 145, -1365, -1365, -1365, -1365, -1365, -1365, -1365, 681,
02503 684, -1365, -1365, -1365, -1365, -1365, -1365, 686, 688, 783,
02504 -1365, -1365, 690, 695, -1365, -1365, -1365, -1365, -1365, 637,
02505 199, 713, 827, 639, -116, -1365, -1365, -1365, -1365, -1365,
02506 -1365, 692, 783, -1365, 641, -1365, -1365, -1365, 643, 199,
02507 693, -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365,
02508 829, 832, -1365, 101, -1365, -1365, -1365, -1365, -1365, -1365,
02509 -1365, -1365, -1365, 696, 697, 783, -1365, -1365, 700, 705,
02510 -1365, -1365, -1365, -1365, -1365, 172, 645, 292, -1365, -1365,
02511 702, 783, 648, -1365, -1365, -1365, 650, 114, 707, -1365,
02512 -1365, -1365, -1365, -1365, -1365, -1365, -1365, 833, 470, -1365,
02513 -1365, -1365, -1365, -1365, -1365, 709, 717, -1365, -1365, -1365,
02514 715, 783, 654, -1365, 834, 622, -1365, -1365, -1365, -1365,
02515 723, -1365, -1365, -1365, -1365, -1365, -1365, 835, -1365, -1365,
02516 -1365, -1365, -1365, -1365, 837, -1365, 716, -57, -1365, -1365,
02517 -1365, -1365, 656, 341, -1365, -1365, 722, 783, 658, -1365,
02518 -1365, -1365, 660, 150, 724, -1365, -1365, -1365, -1365, -1365,
02519 -86, -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365,
02520 -1365, -1365, -1365, -1365, -1365, -1365, 720, 783, 664, -1365,
02521 622, -1365, -1365, -1365, -1365, 721, -1365, -1365, -1365, -1365,
02522 845, 846, -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365,
02523 -1365, -1365, -1365, 666, 401, 842, -1365, -1365, 486, -1365,
02524 -1365, -1365, -1365, 670, 199, -1365, 725, 783, 672, -1365,
02525 622, -1365, -1365, -1365, -1365, -1365, 726, 735, -1365, 727,
02526 -1365, -1365, -1365, -1365, -1365, 728, -1365, -1365, -85, -1365,
02527 -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365,
02528 -1365, -1365, -1365, 729, 783, 674, -1365, 622, -1365, -1365,
02529 -1365, -1365, 730, -1365, -1365, -1365, -1365, -1365, -1365, -1365,
02530 -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365,
02531 -1365, -1365, -1365, 741, 740, -1365, -1365, 742, -1365, -1365,
02532 847, -1365, 743, 783, 676, -1365, 622, -1365, -1365, -1365,
02533 -1365, 744, -1365, -1365, -1365, -1365, -76, -1365, -1365, -1365,
02534 -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365,
02535 -1365, -1365, -1365, 678, 36, 761, -1365, -1365, -1365, -1365,
02536 -1365, -1365, 763, 783, 680, -1365, 622, -1365, -1365, -1365,
02537 -1365, 766, -1365, -1365, -1365, 682, -1365, -1365, -1365, -1365,
02538 -1365, -1365, -1365, -1365, 767, 768, -1365, -1365, 742, -1365,
02539 776, 783, 685, -1365, 622, -1365, -1365, -1365, -1365, 782,
02540 -1365, -1365, 472, 472, -1365, -1365, 687, 214, -1365, 689,
02541 25, -1365, -1365, 781, 783, 691, -1365, 622, -1365, -1365,
02542 -1365, -1365, 779, -1365, -1365, -1365, -1365, -1365, -1365, 793,
02543 784, -1365, -1365, 742, -122, -1365, -1365, -1365, -1365, 843,
02544 -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365,
02545 -1365, 783, 694, -1365, 622, -1365, -1365, -1365, -1365, 787,
02546 -1365, -1365, 849, 10, -1365, -1365, -1365, -1365, 848, 483,
02547 -1365, -1365, 698, 214, -1365, 790, 783, 701, -1365, 622,
02548 -1365, -1365, -1365, -1365, 788, -1365, -1365, -1365, -1365, 785,
02549 -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365, 622, -1365,
02550 -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365,
02551 783, 704, -1365, 622, -1365, -1365, -1365, -1365, 798, -1365,
02552 -1365, -1365, -1365, 706, 214, -1365, -112, 472, 850, 708,
02553 -1365, 622, -1365, -1365, -1365, -1365, 795, -1365, -1365, -1365,
02554 792, -1365, 851, -1365, -1365, -1365, -1365, -1365, -1365, 800,
02555 -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365,
02556 783, 710, -1365, 622, -1365, -1365, -1365, -1365, 803, -1365,
02557 -1365, -1365, -1365, -1365, 797, -1365, 712, -1365, 622, -1365,
02558 -1365, -1365, -1365, 804, -1365, -1365, 807, -1365, -1365, -1365,
02559 -1365, -1365, -1365, -1365, -1365, -1365, 852, -1365, 622, -1365,
02560 -1365, -1365, -1365, 809, -1365, -1365, -1365, -1365, 811, 853,
02561 855, -1365, 714, -1365, 622, -1365, -1365, -1365, -1365, 812,
02562 -1365, -1365, -1365, 622, -1365, -1365, -1365, -1365, 813, -1365,
02563 -1365, -1365, -1365, -1365, 814, -1365, -1365, -1365, -1365, -1365,
02564 622, -1365, -1365, -1365, -1365, 815, -1365, -1365, 816, -1365,
02565 -1365, -1365, -1365, -1365, 818, -1365, -1365, -1365, -1365
02566 };
02567
02568
02569 static const yytype_int16 yypgoto[] =
02570 {
02571 -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365, 820, 854,
02572 -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365,
02573 -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365,
02574 -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365,
02575 -1365, -1365, -1365, 817, -1365, -1365, -1365, -1365, -1365, -1365,
02576 -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365,
02577 -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365,
02578 -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365,
02579 -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365,
02580 -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365,
02581 -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365,
02582 -1365, -1365, -1365, -1365, -1365, -1365, 480, -1365, -1365, -1365,
02583 -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365, 819,
02584 -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365,
02585 -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365,
02586 -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365,
02587 -1365, -1365, -1365, -1365, 392, -1365, -1365, -1365, -1365, -1365,
02588 -1365, -1365, -1365, -1365, -1365, -1365, -1365, 821, -1365, -1365,
02589 -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365,
02590 -1365, -1365, 299, -1365, -1365, -1365, -1365, -1365, -1365, -1365,
02591 -1365, -1365, -1365, -1365, -1365, 581, -1365, -1365, -1365, -1365,
02592 -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365,
02593 -1365, -1365, -1365, -1365, -1365, -1365, -1365, 247, -1365, -1365,
02594 -1365, -1365, -1365, -1365, -1365, 248, -1365, -1365, -1365, -1365,
02595 -1365, -1365, -1365, 243, -1365, -1365, -1365, -1365, -1365, -1365,
02596 -1365, 244, -1365, -1365, -1365, -1365, -1365, -1365, -1365, 239,
02597 -1365, -1365, -1365, -1365, -1365, -1365, -1365, 237, -1365, -1365,
02598 -1365, -1365, -1365, -1365, -1365, 234, -1365, -1365, -1365, -1365,
02599 -1365, -1365, -1365, 231, -1365, -1365, -1365, -1365, -1365, -1365,
02600 -1365, 232, -1365, -1365, -1365, -1365, -1365, -1365, -1365, 235,
02601 -1365, -1365, -1365, -1365, -1365, -1365, -1365, 236, -1365, -1365,
02602 -1365, -1365, -1365, -1365, -1365, 224, -1365, -1365, -1365, -1365,
02603 -1365, -1365, -1365, -1365, 225, -1365, -1365, -1365, -1365, -1365,
02604 -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365,
02605 -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365,
02606 -1365, -1365, -1365, -1365, -1365, -16, -1365, -1365, -1365, -1365,
02607 -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365, -58, -1365,
02608 -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365,
02609 -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365,
02610 -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365,
02611 -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365,
02612 -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365,
02613 -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365, -503,
02614 -1107, -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365,
02615 -1365, -1365, -1365, -302, -1365, -1365, -1365, -1365, -1365, -1365,
02616 -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365,
02617 -1365, -1365, -493, -1365, -1365, -1365, -1365, -1365, -1365, -1365,
02618 -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365,
02619 -1365, -1365, -1365, -1365, -1365, -28, -1365, -1365, -1365, -1365,
02620 -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365, -105,
02621 -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365,
02622 -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365,
02623 -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365,
02624 -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365,
02625 -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365,
02626 -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365,
02627 -1365, -1365, -1365, -1365, -374, -1365, -1365, -1365, -1365, -1365,
02628 -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365,
02629 -1365, -1365, -1365, -1365, -1365, -1365, -1365, -87, -1365, -1365,
02630 -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365,
02631 -155, -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365,
02632 -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365,
02633 -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365,
02634 -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365,
02635 -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365,
02636 -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365,
02637 -1365, -1365, -1365, -1365, -1365, -440, -1365, -1365, -1365, -1365,
02638 -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365,
02639 -1365, -1365, -1365, -50, -1365, -1365, -1365, -1365, -1365, -216,
02640 -1365, -1365, -1365, -1365, -496, -1365, -1365, -1365, -1365, -1365,
02641 -1365, -1365, -1365, -1063, -1365, -1365, -1365, -124, -1365, -1365,
02642 -1365, -1365, -1365, -1019, -1365, -1365, -1364, -1365, -1365, -1365,
02643 -1365, -1365, -1365, -1365, -480, -1365, -1365, -1365, -1062, -1365,
02644 -1365, -1365, -1365, -1365, -1365, -1061, -1365, -1365, -1365, -1355,
02645 -1365, -1365, -1365, -1365, -1365, -1365, -1365, -168, -1365, -1365,
02646 -1365, -481, -1365, -1365, -1365, -873, -1365, -1015, -1102, -1365,
02647 -1365, -845, -1365, -1365, -1365, -111, -1365, -20, -130, -1365,
02648 -1365, -818, -1365, -1208, -1258, -1365, -1365, -1365, -1365, -1365,
02649 -1365, -1365, -1365, -1180, -1365, -1365, -1365, -1365, -1365, -1365,
02650 -1365, -1365, -1365, -1365, -1365, -1365, -1365, -1365, -343, -349,
02651 -1365, -1365
02652 };
02653
02654
02655
02656
02657
02658 #define YYTABLE_NINF -1
02659 static const yytype_uint16 yytable[] =
02660 {
02661 216, 465, 599, 595, 1093, 468, 467, 865, 925, 1222,
02662 1312, 1102, 889, 379, 1520, 221, 498, 459, 460, 451,
02663 375, 249, 246, 1475, 1177, 1180, 1181, 1123, 243, 479,
02664 1134, 240, 1476, 366, 237, 222, 1290, 1362, 652, 1388,
02665 1368, 228, 348, 656, 353, 225, 1407, 6, 660, 1113,
02666 1352, 1261, 195, 643, 621, 1113, 490, 491, 492, 1113,
02667 1159, 638, 1419, 621, 108, 1043, 1168, 7, 639, 590,
02668 653, 213, 1505, 826, 1114, 214, 1189, 592, 1203, 1420,
02669 954, 643, 1575, 643, 339, 622, 347, 1380, 352, 1535,
02670 1254, 1257, 1258, 333, 713, 1408, 657, 196, 1536, 36,
02671 735, 37, 38, 643, 690, 689, 1229, 643, 1413, 197,
02672 1388, 109, 1328, 1291, 276, 110, 643, 111, 737, 112,
02673 649, 113, 1363, 405, 406, 407, 1403, 644, 415, 1292,
02674 1292, 223, 247, 250, 376, 367, 244, 241, 238, 1292,
02675 1572, 229, 1266, 226, 1280, 615, 643, 452, 499, 1573,
02676 618, 1322, 1325, 1326, 652, 1388, 1052, 277, 656, 733,
02677 1143, 1144, 660, 1145, 1050, 1051, 1440, 1198, 1199, 1200,
02678 1201, 278, 1305, 279, 428, 280, 430, 281, 432, 282,
02679 336, 1020, 1164, 1165, 1021, 283, 337, 284, 443, 285,
02680 445, 286, 1052, 287, 1465, 288, 1052, 289, 590, 290,
02681 11, 291, 759, 758, 661, 1339, 592, 1275, 1276, 1277,
02682 1278, 196, 1345, 450, 1052, 662, 590, 1499, 13, 643,
02683 15, 634, 589, 197, 592, 590, 635, 213, 661, 591,
02684 729, 214, 1521, 592, 380, 381, 382, 383, 665, 740,
02685 109, 1052, 1184, 590, 110, 28, 111, 666, 112, 1373,
02686 113, 592, 53, 665, 1517, 634, 1052, 213, 590, 701,
02687 723, 214, 743, 707, 708, 709, 592, 1198, 1199, 1200,
02688 1201, 805, 804, 45, 92, 638, 93, 94, 90, 1549,
02689 1260, 54, 726, 55, 91, 56, 144, 57, 1396, 58,
02690 100, 59, 437, 60, 439, 61, 441, 62, 1555, 63,
02691 127, 64, 336, 213, 789, 790, 791, 214, 337, 1175,
02692 172, 626, 175, 1564, 627, 1142, 969, 970, 1143, 1144,
02693 180, 1145, 181, 182, 393, 179, 394, 395, 1433, 178,
02694 858, 1584, 267, 589, 268, 269, 590, 187, 213, 972,
02695 591, 973, 214, 761, 592, 231, 717, 959, 770, 627,
02696 960, 205, 1076, 974, 975, 1077, 1458, 252, 1175, 594,
02697 1, 2, 265, 1600, 325, 969, 970, 266, 1474, 18,
02698 19, 23, 24, 31, 32, 1485, 48, 49, 1609, 1492,
02699 882, 334, 589, 103, 104, 590, 344, 213, 972, 591,
02700 973, 214, 349, 592, 129, 130, 1329, 355, 1615, 1222,
02701 134, 135, 974, 975, 139, 140, 147, 148, 152, 153,
02702 157, 158, 162, 163, 1626, 354, 1510, 810, 1175, 167,
02703 168, 190, 191, 1629, 362, 969, 970, 821, 232, 233,
02704 253, 254, 260, 261, 1534, 327, 328, 363, 826, 369,
02705 1635, 1542, 589, 357, 358, 590, 365, 213, 972, 591,
02706 973, 214, 277, 592, 385, 386, 400, 401, 842, 416,
02707 417, 688, 974, 975, 454, 455, 278, 853, 279, 364,
02708 280, 372, 281, 378, 282, 1557, 371, 866, 459, 460,
02709 283, 374, 284, 373, 285, 1571, 286, 1058, 287, 370,
02710 288, 391, 289, 392, 290, 421, 291, 471, 472, 877,
02711 493, 494, 502, 503, 508, 509, 513, 514, 412, 890,
02712 518, 519, 523, 524, 529, 530, 1427, 969, 970, 534,
02713 535, 539, 540, 544, 545, 1593, 916, 549, 550, 971,
02714 554, 555, 433, 926, 589, 560, 561, 590, 424, 213,
02715 972, 591, 973, 214, 463, 592, 565, 566, 446, 1103,
02716 571, 572, 586, 587, 974, 975, 630, 631, 469, 757,
02717 965, 54, 477, 55, 480, 56, 478, 57, 1135, 58,
02718 484, 59, 386, 60, 485, 61, 501, 62, 507, 63,
02719 528, 64, 486, 670, 671, 674, 675, 684, 685, 702,
02720 703, 559, 720, 631, 1026, 747, 671, 753, 754, 771,
02721 772, 786, 787, 570, 1169, 577, 1182, 1179, 799, 800,
02722 811, 812, 843, 844, 867, 868, 891, 892, 899, 900,
02723 904, 905, 1061, 910, 911, 917, 918, 579, 803, 927,
02724 928, 933, 934, 938, 939, 944, 945, 996, 997, 1001,
02725 1002, 1007, 1008, 1034, 1035, 1063, 1064, 1098, 1099, 1108,
02726 1109, 1125, 1126, 1130, 1131, 1170, 1171, 1082, 1190, 1191,
02727 1195, 1196, 1216, 1217, 1230, 1231, 1248, 1249, 1267, 1268,
02728 1272, 1273, 1259, 1256, 1306, 1307, 1316, 1317, 1331, 1217,
02729 1335, 1336, 1346, 1347, 1374, 1375, 1397, 1398, 1414, 1415,
02730 1434, 1435, 1443, 1444, 1124, 1459, 1460, 1469, 1470, 1478,
02731 1479, 1493, 1494, 1137, 1511, 1512, 1524, 1525, 1529, 1530,
02732 1138, 1543, 1544, 1141, 1558, 1559, 1566, 1567, 1578, 1579,
02733 1594, 1595, 1603, 1604, 1620, 1621, 578, 580, 472, 582,
02734 603, 581, 605, 1327, 1324, 604, 608, 612, 613, 614,
02735 620, 619, 625, 1340, 642, 669, 680, 691, 692, 572,
02736 693, 694, 710, 697, 711, 763, 749, 715, 712, 675,
02737 716, 719, 722, 725, 728, 739, 745, 742, 760, 746,
02738 762, 776, 766, 781, 782, 783, 784, 785, 796, 797,
02739 777, 798, 807, 806, 816, 817, 823, 829, 822, 835,
02740 834, 1243, 836, 830, 837, 831, 832, 826, 840, 833,
02741 848, 849, 858, 838, 855, 841, 839, 872, 854, 873,
02742 874, 875, 909, 896, 943, 861, 1006, 885, 878, 882,
02743 1013, 950, 921, 1043, 879, 1032, 1300, 1059, 1060, 1027,
02744 955, 1062, 1069, 966, 1104, 1107, 911, 1139, 1140, 1215,
02745 1235, 1242, 1244, 1236, 1016, 1039, 959, 1046, 1314, 1315,
02746 1330, 1507, 1040, 1391, 1072, 1519, 1577, 1588, 1522, 1618,
02747 1612, 1619, 1088, 1384, 99, 1136, 583, 945, 481, 1089,
02748 714, 1119, 1154, 681, 413, 721, 718, 44, 1155, 727,
02749 724, 1185, 730, 128, 734, 736, 1353, 1083, 1113, 1450,
02750 738, 1008, 1094, 1360, 1020, 1241, 748, 967, 741, 1221,
02751 1225, 1262, 750, 744, 1047, 1301, 1477, 1212, 1341, 1484,
02752 1160, 1506, 1076, 1356, 1369, 1501, 1332, 1502, 1095, 1028,
02753 1385, 1313, 1404, 1084, 1161, 1451, 1392, 1068, 1382, 1383,
02754 1246, 1247, 1289, 1428, 206, 0, 0, 0, 1381, 1291,
02755 0, 0, 0, 0, 0, 0, 0, 1361, 1441, 0,
02756 1429, 1354, 0, 1357, 0, 1408, 0, 1292, 0, 1454,
02757 1466, 1500, 0, 1178, 0, 1405, 1406, 1518, 1488, 0,
02758 1550, 0, 1537, 0, 0, 1363, 0, 1538, 1565, 1611,
02759 0, 1585, 0, 1601, 0, 1553, 0, 0, 0, 0,
02760 1610, 0, 0, 1616, 0, 0, 0, 1630, 1627, 1636,
02761 0, 0, 1631, 0, 1637, 1442, 1638, 0, 1591, 0,
02762 0, 0, 0, 1602, 1587, 0, 0, 0, 0, 0,
02763 326, 0, 0, 1574, 0, 0, 0, 0, 0, 1255,
02764 0, 0, 0, 0, 0, 0, 0, 0, 1617, 1467,
02765 1468, 0, 1487, 0, 0, 0, 0, 0, 0, 0,
02766 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
02767 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
02768 0, 1508, 0, 0, 0, 0, 0, 0, 0, 0,
02769 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
02770 1323, 0, 0, 0, 0, 0, 0, 0, 0, 0,
02771 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
02772 0, 0, 0, 0, 0, 0, 0, 0, 1551, 1552,
02773 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
02774 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
02775 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
02776 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
02777 0, 0, 0, 0, 1576, 0, 0, 0, 0, 0,
02778 1586, 0, 0, 0, 0, 1589, 1590, 0, 0, 0,
02779 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
02780 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
02781 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
02782 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
02783 0, 0, 0, 0, 0, 0, 0, 0, 1613, 0,
02784 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
02785 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
02786 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
02787 0, 0, 0, 0, 0, 0, 1483, 0, 0, 1632,
02788 1633
02789 };
02790
02791 static const yytype_int16 yycheck[] =
02792 {
02793 124, 344, 483, 483, 1019, 354, 349, 825, 881, 1116,
02794 1190, 1030, 857, 8, 4, 126, 4, 6, 7, 4,
02795 4, 4, 4, 1387, 1087, 1087, 1087, 1042, 4, 378,
02796 1049, 4, 1387, 4, 4, 4, 122, 122, 534, 1297,
02797 1248, 4, 210, 539, 212, 4, 122, 0, 544, 171,
02798 1230, 1153, 74, 145, 107, 171, 405, 406, 407, 171,
02799 1075, 143, 26, 107, 72, 40, 1085, 67, 150, 44,
02800 162, 46, 194, 37, 190, 50, 1091, 52, 1097, 43,
02801 898, 145, 194, 145, 208, 138, 210, 1267, 212, 1453,
02802 1153, 1153, 1153, 204, 138, 171, 160, 119, 1453, 79,
02803 162, 81, 82, 145, 585, 585, 1121, 145, 1316, 131,
02804 1368, 119, 1214, 199, 76, 123, 145, 125, 160, 127,
02805 158, 129, 207, 30, 31, 32, 1306, 156, 296, 215,
02806 215, 100, 114, 116, 118, 106, 112, 110, 108, 215,
02807 1504, 104, 1157, 102, 1163, 134, 145, 132, 136, 1504,
02808 493, 1214, 1214, 1214, 650, 1413, 42, 119, 654, 158,
02809 217, 218, 658, 220, 10, 11, 1346, 53, 54, 55,
02810 56, 133, 1187, 135, 304, 137, 306, 139, 308, 141,
02811 45, 199, 10, 11, 202, 147, 51, 149, 318, 151,
02812 320, 153, 42, 155, 1374, 157, 42, 159, 44, 161,
02813 14, 163, 683, 683, 143, 1224, 52, 57, 58, 59,
02814 60, 119, 1227, 324, 42, 154, 44, 1397, 15, 145,
02815 69, 143, 41, 131, 52, 44, 148, 46, 143, 48,
02816 156, 50, 222, 52, 229, 230, 231, 232, 143, 154,
02817 119, 42, 1087, 44, 123, 71, 125, 152, 127, 1264,
02818 129, 52, 70, 143, 1434, 143, 42, 46, 44, 608,
02819 148, 50, 152, 612, 613, 614, 52, 53, 54, 55,
02820 56, 752, 752, 73, 83, 143, 85, 86, 5, 1459,
02821 1153, 99, 150, 101, 68, 103, 66, 105, 1303, 107,
02822 75, 109, 312, 111, 314, 113, 316, 115, 1478, 117,
02823 70, 119, 45, 46, 21, 22, 23, 50, 51, 17,
02824 65, 140, 16, 1493, 143, 214, 24, 25, 217, 218,
02825 87, 220, 89, 90, 95, 5, 97, 98, 1343, 80,
02826 38, 1511, 91, 41, 93, 94, 44, 77, 46, 47,
02827 48, 49, 50, 692, 52, 3, 140, 171, 697, 143,
02828 174, 72, 207, 61, 62, 210, 1371, 3, 17, 483,
02829 12, 13, 84, 1543, 74, 24, 25, 5, 1387, 10,
02830 11, 10, 11, 10, 11, 1390, 10, 11, 1558, 1394,
02831 39, 10, 41, 10, 11, 44, 10, 46, 47, 48,
02832 49, 50, 10, 52, 10, 11, 1214, 10, 1578, 1506,
02833 10, 11, 61, 62, 10, 11, 10, 11, 10, 11,
02834 10, 11, 10, 11, 1594, 3, 1431, 766, 17, 10,
02835 11, 10, 11, 1603, 100, 24, 25, 776, 10, 11,
02836 10, 11, 10, 11, 1453, 10, 11, 102, 37, 108,
02837 1620, 1456, 41, 10, 11, 44, 8, 46, 47, 48,
02838 49, 50, 119, 52, 120, 121, 10, 11, 807, 10,
02839 11, 585, 61, 62, 10, 11, 133, 816, 135, 104,
02840 137, 114, 139, 6, 141, 1490, 112, 826, 6, 7,
02841 147, 8, 149, 116, 151, 1504, 153, 968, 155, 110,
02842 157, 88, 159, 5, 161, 18, 163, 120, 121, 848,
02843 10, 11, 10, 11, 10, 11, 10, 11, 76, 858,
02844 10, 11, 10, 11, 10, 11, 1334, 24, 25, 10,
02845 11, 10, 11, 10, 11, 1540, 875, 10, 11, 36,
02846 10, 11, 20, 882, 41, 10, 11, 44, 19, 46,
02847 47, 48, 49, 50, 3, 52, 10, 11, 27, 1030,
02848 120, 121, 10, 11, 61, 62, 142, 143, 6, 683,
02849 909, 99, 106, 101, 120, 103, 118, 105, 1049, 107,
02850 92, 109, 121, 111, 5, 113, 8, 115, 8, 117,
02851 8, 119, 167, 164, 165, 120, 121, 10, 11, 10,
02852 11, 8, 142, 143, 943, 164, 165, 10, 11, 10,
02853 11, 10, 11, 132, 1085, 124, 1087, 1087, 10, 11,
02854 10, 11, 10, 11, 10, 11, 10, 11, 10, 11,
02855 10, 11, 971, 170, 171, 212, 213, 126, 752, 10,
02856 11, 10, 11, 10, 11, 198, 199, 10, 11, 10,
02857 11, 206, 207, 10, 11, 10, 11, 10, 11, 10,
02858 11, 10, 11, 10, 11, 10, 11, 1006, 10, 11,
02859 10, 11, 192, 193, 10, 11, 10, 11, 10, 11,
02860 10, 11, 1153, 1153, 10, 11, 10, 11, 192, 193,
02861 10, 11, 10, 11, 10, 11, 10, 11, 10, 11,
02862 10, 11, 10, 11, 1043, 10, 11, 10, 11, 10,
02863 11, 10, 11, 1052, 10, 11, 223, 224, 10, 11,
02864 1059, 10, 11, 1062, 10, 11, 10, 11, 10, 11,
02865 10, 11, 10, 11, 10, 11, 8, 128, 121, 120,
02866 96, 130, 195, 1214, 1214, 78, 33, 6, 6, 6,
02867 6, 136, 6, 1224, 6, 6, 120, 122, 3, 121,
02868 3, 203, 134, 34, 8, 211, 120, 8, 10, 121,
02869 10, 10, 10, 10, 8, 10, 8, 10, 122, 10,
02870 8, 6, 35, 4, 4, 4, 4, 4, 4, 4,
02871 169, 4, 28, 122, 6, 197, 173, 108, 168, 3,
02872 146, 1140, 3, 144, 3, 144, 144, 37, 166, 144,
02873 6, 205, 38, 144, 201, 122, 144, 8, 196, 8,
02874 8, 6, 6, 189, 6, 175, 6, 175, 204, 39,
02875 121, 191, 175, 40, 209, 29, 1175, 3, 3, 198,
02876 177, 3, 121, 170, 121, 8, 171, 8, 6, 6,
02877 6, 6, 5, 221, 177, 176, 171, 174, 3, 3,
02878 8, 8, 181, 6, 177, 6, 6, 6, 10, 6,
02879 8, 6, 176, 122, 44, 172, 474, 199, 388, 181,
02880 623, 179, 176, 574, 293, 632, 628, 23, 181, 640,
02881 636, 179, 645, 66, 650, 654, 1235, 206, 171, 122,
02882 658, 207, 202, 1242, 199, 172, 672, 913, 663, 190,
02883 185, 179, 677, 667, 962, 185, 1387, 200, 183, 1390,
02884 210, 1414, 207, 178, 185, 122, 1218, 1410, 1023, 947,
02885 1294, 200, 178, 1010, 1079, 1365, 183, 977, 1277, 1278,
02886 214, 1147, 208, 172, 115, -1, -1, -1, 208, 199,
02887 -1, -1, -1, -1, -1, -1, -1, 219, 182, -1,
02888 187, 225, -1, 226, -1, 171, -1, 215, -1, 183,
02889 178, 182, -1, 1087, -1, 1314, 1315, 180, 187, -1,
02890 182, -1, 1453, -1, -1, 207, -1, 187, 180, 172,
02891 -1, 186, -1, 180, -1, 200, -1, -1, -1, -1,
02892 186, -1, -1, 184, -1, -1, -1, 184, 186, 184,
02893 -1, -1, 188, -1, 188, 1354, 188, -1, 208, -1,
02894 -1, -1, -1, 216, 222, -1, -1, -1, -1, -1,
02895 199, -1, -1, 1504, -1, -1, -1, -1, -1, 1153,
02896 -1, -1, -1, -1, -1, -1, -1, -1, 227, 1382,
02897 1383, -1, 1391, -1, -1, -1, -1, -1, -1, -1,
02898 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
02899 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
02900 -1, 1420, -1, -1, -1, -1, -1, -1, -1, -1,
02901 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
02902 1214, -1, -1, -1, -1, -1, -1, -1, -1, -1,
02903 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
02904 -1, -1, -1, -1, -1, -1, -1, -1, 1467, 1468,
02905 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
02906 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
02907 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
02908 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
02909 -1, -1, -1, -1, 1507, -1, -1, -1, -1, -1,
02910 1519, -1, -1, -1, -1, 1524, 1525, -1, -1, -1,
02911 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
02912 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
02913 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
02914 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
02915 -1, -1, -1, -1, -1, -1, -1, -1, 1577, -1,
02916 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
02917 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
02918 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
02919 -1, -1, -1, -1, -1, -1, 1390, -1, -1, 1618,
02920 1619
02921 };
02922
02923
02924
02925 static const yytype_uint16 yystos[] =
02926 {
02927 0, 12, 13, 234, 235, 236, 0, 67, 242, 243,
02928 244, 14, 237, 15, 241, 69, 269, 270, 10, 11,
02929 245, 246, 247, 10, 11, 238, 239, 240, 71, 355,
02930 356, 10, 11, 271, 272, 273, 79, 81, 82, 248,
02931 249, 250, 251, 252, 242, 73, 403, 404, 10, 11,
02932 357, 358, 359, 70, 99, 101, 103, 105, 107, 109,
02933 111, 113, 115, 117, 119, 274, 275, 276, 277, 278,
02934 283, 284, 289, 290, 295, 296, 303, 304, 309, 310,
02935 315, 316, 321, 322, 327, 328, 333, 334, 341, 342,
02936 5, 68, 83, 85, 86, 253, 254, 255, 256, 241,
02937 75, 431, 432, 10, 11, 405, 406, 407, 72, 119,
02938 123, 125, 127, 129, 360, 361, 362, 363, 364, 370,
02939 371, 377, 378, 384, 385, 389, 390, 70, 276, 10,
02940 11, 279, 280, 281, 10, 11, 285, 286, 287, 10,
02941 11, 291, 292, 293, 66, 297, 298, 10, 11, 305,
02942 306, 307, 10, 11, 311, 312, 313, 10, 11, 317,
02943 318, 319, 10, 11, 323, 324, 325, 10, 11, 329,
02944 330, 331, 65, 335, 336, 16, 343, 998, 80, 5,
02945 87, 89, 90, 257, 258, 259, 260, 77, 563, 564,
02946 10, 11, 433, 434, 435, 74, 119, 131, 408, 409,
02947 410, 411, 412, 417, 418, 72, 362, 365, 366, 372,
02948 373, 379, 380, 46, 50, 386, 940, 941, 942, 943,
02949 391, 998, 4, 100, 282, 4, 102, 288, 4, 104,
02950 294, 3, 10, 11, 299, 300, 301, 4, 108, 308,
02951 4, 110, 314, 4, 112, 320, 4, 114, 326, 4,
02952 116, 332, 3, 10, 11, 337, 338, 339, 1032, 1033,
02953 10, 11, 344, 345, 346, 84, 5, 91, 93, 94,
02954 261, 262, 263, 264, 565, 566, 76, 119, 133, 135,
02955 137, 139, 141, 147, 149, 151, 153, 155, 157, 159,
02956 161, 163, 436, 437, 438, 439, 440, 447, 448, 453,
02957 454, 461, 462, 469, 470, 477, 478, 485, 486, 493,
02958 494, 501, 502, 509, 510, 517, 518, 525, 526, 533,
02959 534, 541, 542, 549, 550, 74, 410, 10, 11, 413,
02960 414, 415, 419, 998, 10, 368, 45, 51, 367, 940,
02961 980, 981, 982, 983, 10, 375, 374, 940, 980, 10,
02962 382, 381, 940, 980, 3, 10, 387, 10, 11, 392,
02963 393, 394, 100, 102, 104, 8, 4, 106, 302, 108,
02964 110, 112, 114, 116, 8, 4, 118, 340, 6, 8,
02965 229, 230, 231, 232, 1034, 120, 121, 347, 348, 349,
02966 350, 88, 5, 95, 97, 98, 265, 266, 267, 268,
02967 10, 11, 568, 569, 570, 30, 31, 32, 567, 989,
02968 995, 1005, 76, 438, 441, 980, 10, 11, 449, 450,
02969 451, 18, 455, 993, 19, 463, 1001, 471, 1001, 479,
02970 1001, 487, 1001, 20, 495, 1000, 503, 1000, 511, 1000,
02971 519, 1000, 527, 1001, 535, 1001, 27, 543, 1002, 551,
02972 998, 4, 132, 416, 10, 11, 420, 421, 422, 6,
02973 7, 369, 1031, 3, 376, 1031, 383, 1031, 1032, 6,
02974 388, 120, 121, 395, 396, 397, 398, 106, 118, 1032,
02975 120, 349, 351, 352, 92, 5, 167, 571, 572, 573,
02976 1032, 1032, 1032, 10, 11, 442, 443, 444, 4, 136,
02977 452, 8, 10, 11, 456, 457, 458, 8, 10, 11,
02978 464, 465, 466, 10, 11, 472, 473, 474, 10, 11,
02979 480, 481, 482, 10, 11, 488, 489, 490, 8, 10,
02980 11, 496, 497, 498, 10, 11, 504, 505, 506, 10,
02981 11, 512, 513, 514, 10, 11, 520, 521, 522, 10,
02982 11, 528, 529, 530, 10, 11, 536, 537, 538, 8,
02983 10, 11, 544, 545, 546, 10, 11, 552, 553, 554,
02984 132, 120, 121, 423, 424, 425, 426, 124, 8, 126,
02985 128, 130, 120, 397, 399, 400, 10, 11, 354, 41,
02986 44, 48, 52, 353, 940, 957, 958, 959, 960, 984,
02987 985, 986, 987, 96, 78, 195, 702, 703, 33, 574,
02988 575, 999, 6, 6, 6, 134, 445, 446, 1031, 136,
02989 6, 107, 138, 459, 460, 6, 140, 143, 467, 468,
02990 142, 143, 475, 476, 143, 148, 483, 484, 143, 150,
02991 491, 492, 6, 145, 156, 499, 500, 927, 928, 158,
02992 507, 508, 927, 162, 515, 516, 927, 160, 523, 524,
02993 927, 143, 154, 531, 532, 143, 152, 539, 540, 6,
02994 164, 165, 547, 548, 120, 121, 555, 556, 557, 558,
02995 120, 425, 427, 428, 10, 11, 402, 401, 940, 957,
02996 984, 122, 3, 3, 203, 804, 805, 34, 704, 705,
02997 997, 1032, 10, 11, 576, 577, 578, 1032, 1032, 1032,
02998 134, 8, 10, 138, 460, 8, 10, 140, 468, 10,
02999 142, 476, 10, 148, 484, 10, 150, 492, 8, 156,
03000 500, 929, 930, 158, 508, 162, 516, 160, 524, 10,
03001 154, 532, 10, 152, 540, 8, 10, 164, 548, 120,
03002 557, 559, 560, 10, 11, 430, 429, 940, 957, 984,
03003 122, 1032, 8, 211, 905, 906, 35, 806, 807, 996,
03004 1032, 10, 11, 706, 707, 708, 6, 169, 579, 580,
03005 581, 4, 4, 4, 4, 4, 10, 11, 935, 21,
03006 22, 23, 931, 932, 933, 934, 4, 4, 4, 10,
03007 11, 562, 561, 940, 957, 984, 122, 28, 907, 1003,
03008 1032, 10, 11, 808, 809, 810, 6, 197, 709, 710,
03009 711, 1032, 168, 173, 593, 594, 37, 582, 1004, 108,
03010 144, 144, 144, 144, 146, 3, 3, 3, 144, 144,
03011 166, 122, 1032, 10, 11, 908, 909, 910, 6, 205,
03012 811, 812, 813, 1032, 196, 201, 724, 725, 38, 712,
03013 994, 175, 607, 608, 595, 1004, 1032, 10, 11, 583,
03014 584, 585, 8, 8, 8, 6, 911, 1032, 204, 209,
03015 825, 826, 39, 814, 988, 175, 738, 739, 726, 994,
03016 1032, 10, 11, 713, 714, 715, 189, 655, 656, 10,
03017 11, 609, 610, 611, 10, 11, 596, 597, 598, 6,
03018 170, 171, 586, 587, 588, 589, 1032, 212, 213, 912,
03019 913, 175, 839, 840, 827, 988, 1032, 10, 11, 815,
03020 816, 817, 786, 10, 11, 740, 741, 742, 10, 11,
03021 727, 728, 729, 6, 198, 199, 716, 717, 718, 719,
03022 191, 669, 670, 657, 1004, 177, 612, 613, 614, 171,
03023 174, 599, 600, 601, 602, 1032, 170, 588, 590, 24,
03024 25, 36, 47, 49, 61, 62, 914, 915, 916, 936,
03025 937, 938, 939, 940, 957, 961, 962, 963, 964, 968,
03026 969, 970, 971, 984, 992, 887, 10, 11, 841, 842,
03027 843, 10, 11, 828, 829, 830, 6, 206, 207, 818,
03028 819, 820, 821, 121, 787, 788, 177, 743, 744, 745,
03029 199, 202, 730, 731, 732, 733, 1032, 198, 718, 720,
03030 721, 684, 29, 671, 10, 11, 658, 659, 660, 176,
03031 181, 620, 621, 40, 615, 990, 174, 601, 603, 604,
03032 10, 11, 42, 591, 592, 946, 947, 948, 984, 3,
03033 3, 1032, 3, 10, 11, 917, 918, 919, 916, 121,
03034 888, 889, 177, 844, 845, 846, 207, 210, 831, 832,
03035 833, 834, 1032, 206, 820, 822, 789, 790, 176, 181,
03036 751, 752, 746, 990, 202, 732, 734, 735, 10, 11,
03037 723, 722, 946, 984, 121, 685, 686, 8, 10, 11,
03038 672, 673, 674, 171, 190, 661, 662, 663, 664, 179,
03039 627, 628, 622, 990, 1032, 10, 11, 616, 617, 618,
03040 10, 11, 606, 605, 946, 984, 172, 1032, 1032, 8,
03041 6, 1032, 214, 217, 218, 220, 920, 921, 922, 923,
03042 924, 925, 890, 891, 176, 181, 852, 853, 847, 990,
03043 210, 833, 835, 836, 10, 11, 823, 824, 946, 984,
03044 10, 11, 792, 793, 794, 17, 791, 936, 940, 957,
03045 961, 968, 984, 991, 994, 179, 758, 759, 753, 990,
03046 10, 11, 747, 748, 749, 10, 11, 737, 53, 54,
03047 55, 56, 736, 946, 949, 950, 951, 952, 972, 973,
03048 974, 975, 200, 687, 688, 6, 192, 193, 675, 676,
03049 677, 190, 663, 665, 666, 185, 634, 635, 629, 990,
03050 10, 11, 623, 624, 625, 6, 221, 619, 1016, 1017,
03051 1024, 172, 6, 1032, 5, 926, 214, 922, 10, 11,
03052 893, 894, 895, 892, 936, 940, 957, 961, 968, 984,
03053 988, 991, 179, 859, 860, 854, 990, 10, 11, 848,
03054 849, 850, 10, 11, 838, 57, 58, 59, 60, 837,
03055 946, 953, 954, 955, 956, 976, 977, 978, 979, 208,
03056 122, 199, 215, 795, 796, 797, 798, 1006, 1007, 1008,
03057 1032, 185, 765, 766, 760, 990, 10, 11, 754, 755,
03058 756, 750, 1016, 200, 3, 3, 10, 11, 690, 691,
03059 692, 689, 936, 940, 957, 961, 968, 984, 991, 1004,
03060 8, 192, 676, 678, 679, 10, 11, 668, 667, 946,
03061 984, 183, 641, 642, 636, 990, 10, 11, 630, 631,
03062 632, 626, 1016, 1032, 225, 1025, 178, 226, 1018, 1019,
03063 1032, 219, 122, 207, 896, 897, 898, 899, 1006, 185,
03064 866, 867, 861, 990, 10, 11, 855, 856, 857, 851,
03065 1016, 208, 1032, 1032, 122, 797, 799, 800, 1007, 1009,
03066 1010, 6, 183, 772, 773, 767, 990, 10, 11, 761,
03067 762, 763, 757, 1016, 178, 1032, 1032, 122, 171, 693,
03068 694, 695, 696, 1006, 10, 11, 681, 682, 683, 26,
03069 43, 680, 944, 945, 965, 966, 967, 1004, 172, 187,
03070 648, 649, 643, 990, 10, 11, 637, 638, 639, 633,
03071 1016, 182, 1032, 10, 11, 1026, 1027, 1028, 1020, 1021,
03072 122, 898, 900, 901, 183, 873, 874, 868, 990, 10,
03073 11, 862, 863, 864, 858, 1016, 178, 1031, 1031, 10,
03074 11, 802, 803, 801, 946, 949, 972, 984, 10, 11,
03075 1012, 1013, 1014, 940, 984, 990, 1011, 1032, 187, 779,
03076 780, 774, 990, 10, 11, 768, 769, 770, 764, 1016,
03077 182, 122, 695, 697, 698, 194, 662, 8, 1032, 650,
03078 990, 10, 11, 644, 645, 646, 640, 1016, 180, 6,
03079 4, 222, 10, 1023, 223, 224, 1022, 1029, 1030, 10,
03080 11, 903, 904, 902, 946, 949, 972, 984, 187, 880,
03081 881, 875, 990, 10, 11, 869, 870, 871, 865, 1016,
03082 182, 1032, 1032, 200, 1015, 1016, 781, 990, 10, 11,
03083 775, 776, 777, 771, 1016, 180, 10, 11, 700, 701,
03084 699, 946, 949, 972, 984, 194, 1031, 6, 10, 11,
03085 651, 652, 653, 647, 1016, 186, 1032, 222, 6, 1032,
03086 1032, 208, 882, 990, 10, 11, 876, 877, 878, 872,
03087 1016, 180, 216, 10, 11, 782, 783, 784, 778, 1016,
03088 186, 172, 8, 1032, 654, 1016, 184, 227, 6, 6,
03089 10, 11, 883, 884, 885, 879, 1016, 186, 785, 1016,
03090 184, 188, 1032, 1032, 886, 1016, 184, 188, 188
03091 };
03092
03093 #define yyerrok (yyerrstatus = 0)
03094 #define yyclearin (yychar = YYEMPTY)
03095 #define YYEMPTY (-2)
03096 #define YYEOF 0
03097
03098 #define YYACCEPT goto yyacceptlab
03099 #define YYABORT goto yyabortlab
03100 #define YYERROR goto yyerrorlab
03101
03102
03103
03104
03105
03106
03107 #define YYFAIL goto yyerrlab
03108
03109 #define YYRECOVERING() (!!yyerrstatus)
03110
03111 #define YYBACKUP(Token, Value) \
03112 do \
03113 if (yychar == YYEMPTY && yylen == 1) \
03114 { \
03115 yychar = (Token); \
03116 yylval = (Value); \
03117 yytoken = YYTRANSLATE (yychar); \
03118 YYPOPSTACK (1); \
03119 goto yybackup; \
03120 } \
03121 else \
03122 { \
03123 yyerror (&yylloc, osoption, parserData, osglData, YY_("syntax error: cannot back up")); \
03124 YYERROR; \
03125 } \
03126 while (YYID (0))
03127
03128
03129 #define YYTERROR 1
03130 #define YYERRCODE 256
03131
03132
03133
03134
03135
03136
03137 #define YYRHSLOC(Rhs, K) ((Rhs)[K])
03138 #ifndef YYLLOC_DEFAULT
03139 # define YYLLOC_DEFAULT(Current, Rhs, N) \
03140 do \
03141 if (YYID (N)) \
03142 { \
03143 (Current).first_line = YYRHSLOC (Rhs, 1).first_line; \
03144 (Current).first_column = YYRHSLOC (Rhs, 1).first_column; \
03145 (Current).last_line = YYRHSLOC (Rhs, N).last_line; \
03146 (Current).last_column = YYRHSLOC (Rhs, N).last_column; \
03147 } \
03148 else \
03149 { \
03150 (Current).first_line = (Current).last_line = \
03151 YYRHSLOC (Rhs, 0).last_line; \
03152 (Current).first_column = (Current).last_column = \
03153 YYRHSLOC (Rhs, 0).last_column; \
03154 } \
03155 while (YYID (0))
03156 #endif
03157
03158
03159
03160
03161
03162
03163 #ifndef YY_LOCATION_PRINT
03164 # if YYLTYPE_IS_TRIVIAL
03165 # define YY_LOCATION_PRINT(File, Loc) \
03166 fprintf (File, "%d.%d-%d.%d", \
03167 (Loc).first_line, (Loc).first_column, \
03168 (Loc).last_line, (Loc).last_column)
03169 # else
03170 # define YY_LOCATION_PRINT(File, Loc) ((void) 0)
03171 # endif
03172 #endif
03173
03174
03175
03176
03177 #ifdef YYLEX_PARAM
03178 # define YYLEX yylex (&yylval, &yylloc, YYLEX_PARAM)
03179 #else
03180 # define YYLEX yylex (&yylval, &yylloc, scanner)
03181 #endif
03182
03183
03184 #if YYDEBUG
03185
03186 # ifndef YYFPRINTF
03187 # include <stdio.h>
03188 # define YYFPRINTF fprintf
03189 # endif
03190
03191 # define YYDPRINTF(Args) \
03192 do { \
03193 if (yydebug) \
03194 YYFPRINTF Args; \
03195 } while (YYID (0))
03196
03197 # define YY_SYMBOL_PRINT(Title, Type, Value, Location) \
03198 do { \
03199 if (yydebug) \
03200 { \
03201 YYFPRINTF (stderr, "%s ", Title); \
03202 yy_symbol_print (stderr, \
03203 Type, Value, Location, osoption, parserData, osglData); \
03204 YYFPRINTF (stderr, "\n"); \
03205 } \
03206 } while (YYID (0))
03207
03208
03209
03210
03211
03212
03213
03214 #if (defined __STDC__ || defined __C99__FUNC__ \
03215 || defined __cplusplus || defined _MSC_VER)
03216 static void
03217 yy_symbol_value_print (FILE *yyoutput, int yytype, YYSTYPE const * const yyvaluep, YYLTYPE const * const yylocationp, OSOption *osoption, OSoLParserData *parserData, OSgLParserData *osglData)
03218 #else
03219 static void
03220 yy_symbol_value_print (yyoutput, yytype, yyvaluep, yylocationp, osoption, parserData, osglData)
03221 FILE *yyoutput;
03222 int yytype;
03223 YYSTYPE const * const yyvaluep;
03224 YYLTYPE const * const yylocationp;
03225 OSOption *osoption;
03226 OSoLParserData *parserData;
03227 OSgLParserData *osglData;
03228 #endif
03229 {
03230 if (!yyvaluep)
03231 return;
03232 YYUSE (yylocationp);
03233 YYUSE (osoption);
03234 YYUSE (parserData);
03235 YYUSE (osglData);
03236 # ifdef YYPRINT
03237 if (yytype < YYNTOKENS)
03238 YYPRINT (yyoutput, yytoknum[yytype], *yyvaluep);
03239 # else
03240 YYUSE (yyoutput);
03241 # endif
03242 switch (yytype)
03243 {
03244 default:
03245 break;
03246 }
03247 }
03248
03249
03250
03251
03252
03253
03254 #if (defined __STDC__ || defined __C99__FUNC__ \
03255 || defined __cplusplus || defined _MSC_VER)
03256 static void
03257 yy_symbol_print (FILE *yyoutput, int yytype, YYSTYPE const * const yyvaluep, YYLTYPE const * const yylocationp, OSOption *osoption, OSoLParserData *parserData, OSgLParserData *osglData)
03258 #else
03259 static void
03260 yy_symbol_print (yyoutput, yytype, yyvaluep, yylocationp, osoption, parserData, osglData)
03261 FILE *yyoutput;
03262 int yytype;
03263 YYSTYPE const * const yyvaluep;
03264 YYLTYPE const * const yylocationp;
03265 OSOption *osoption;
03266 OSoLParserData *parserData;
03267 OSgLParserData *osglData;
03268 #endif
03269 {
03270 if (yytype < YYNTOKENS)
03271 YYFPRINTF (yyoutput, "token %s (", yytname[yytype]);
03272 else
03273 YYFPRINTF (yyoutput, "nterm %s (", yytname[yytype]);
03274
03275 YY_LOCATION_PRINT (yyoutput, *yylocationp);
03276 YYFPRINTF (yyoutput, ": ");
03277 yy_symbol_value_print (yyoutput, yytype, yyvaluep, yylocationp, osoption, parserData, osglData);
03278 YYFPRINTF (yyoutput, ")");
03279 }
03280
03281
03282
03283
03284
03285
03286 #if (defined __STDC__ || defined __C99__FUNC__ \
03287 || defined __cplusplus || defined _MSC_VER)
03288 static void
03289 yy_stack_print (yytype_int16 *yybottom, yytype_int16 *yytop)
03290 #else
03291 static void
03292 yy_stack_print (yybottom, yytop)
03293 yytype_int16 *yybottom;
03294 yytype_int16 *yytop;
03295 #endif
03296 {
03297 YYFPRINTF (stderr, "Stack now");
03298 for (; yybottom <= yytop; yybottom++)
03299 {
03300 int yybot = *yybottom;
03301 YYFPRINTF (stderr, " %d", yybot);
03302 }
03303 YYFPRINTF (stderr, "\n");
03304 }
03305
03306 # define YY_STACK_PRINT(Bottom, Top) \
03307 do { \
03308 if (yydebug) \
03309 yy_stack_print ((Bottom), (Top)); \
03310 } while (YYID (0))
03311
03312
03313
03314
03315
03316
03317 #if (defined __STDC__ || defined __C99__FUNC__ \
03318 || defined __cplusplus || defined _MSC_VER)
03319 static void
03320 yy_reduce_print (YYSTYPE *yyvsp, YYLTYPE *yylsp, int yyrule, OSOption *osoption, OSoLParserData *parserData, OSgLParserData *osglData)
03321 #else
03322 static void
03323 yy_reduce_print (yyvsp, yylsp, yyrule, osoption, parserData, osglData)
03324 YYSTYPE *yyvsp;
03325 YYLTYPE *yylsp;
03326 int yyrule;
03327 OSOption *osoption;
03328 OSoLParserData *parserData;
03329 OSgLParserData *osglData;
03330 #endif
03331 {
03332 int yynrhs = yyr2[yyrule];
03333 int yyi;
03334 unsigned long int yylno = yyrline[yyrule];
03335 YYFPRINTF (stderr, "Reducing stack by rule %d (line %lu):\n",
03336 yyrule - 1, yylno);
03337
03338 for (yyi = 0; yyi < yynrhs; yyi++)
03339 {
03340 YYFPRINTF (stderr, " $%d = ", yyi + 1);
03341 yy_symbol_print (stderr, yyrhs[yyprhs[yyrule] + yyi],
03342 &(yyvsp[(yyi + 1) - (yynrhs)])
03343 , &(yylsp[(yyi + 1) - (yynrhs)]) , osoption, parserData, osglData);
03344 YYFPRINTF (stderr, "\n");
03345 }
03346 }
03347
03348 # define YY_REDUCE_PRINT(Rule) \
03349 do { \
03350 if (yydebug) \
03351 yy_reduce_print (yyvsp, yylsp, Rule, osoption, parserData, osglData); \
03352 } while (YYID (0))
03353
03354
03355
03356 int yydebug;
03357 #else
03358 # define YYDPRINTF(Args)
03359 # define YY_SYMBOL_PRINT(Title, Type, Value, Location)
03360 # define YY_STACK_PRINT(Bottom, Top)
03361 # define YY_REDUCE_PRINT(Rule)
03362 #endif
03363
03364
03365
03366 #ifndef YYINITDEPTH
03367 # define YYINITDEPTH 200
03368 #endif
03369
03370
03371
03372
03373
03374
03375
03376
03377 #ifndef YYMAXDEPTH
03378 # define YYMAXDEPTH 10000
03379 #endif
03380
03381
03382
03383 #if YYERROR_VERBOSE
03384
03385 # ifndef yystrlen
03386 # if defined __GLIBC__ && defined _STRING_H
03387 # define yystrlen strlen
03388 # else
03389
03390 #if (defined __STDC__ || defined __C99__FUNC__ \
03391 || defined __cplusplus || defined _MSC_VER)
03392 static YYSIZE_T
03393 yystrlen (const char *yystr)
03394 #else
03395 static YYSIZE_T
03396 yystrlen (yystr)
03397 const char *yystr;
03398 #endif
03399 {
03400 YYSIZE_T yylen;
03401 for (yylen = 0; yystr[yylen]; yylen++)
03402 continue;
03403 return yylen;
03404 }
03405 # endif
03406 # endif
03407
03408 # ifndef yystpcpy
03409 # if defined __GLIBC__ && defined _STRING_H && defined _GNU_SOURCE
03410 # define yystpcpy stpcpy
03411 # else
03412
03413
03414 #if (defined __STDC__ || defined __C99__FUNC__ \
03415 || defined __cplusplus || defined _MSC_VER)
03416 static char *
03417 yystpcpy (char *yydest, const char *yysrc)
03418 #else
03419 static char *
03420 yystpcpy (yydest, yysrc)
03421 char *yydest;
03422 const char *yysrc;
03423 #endif
03424 {
03425 char *yyd = yydest;
03426 const char *yys = yysrc;
03427
03428 while ((*yyd++ = *yys++) != '\0')
03429 continue;
03430
03431 return yyd - 1;
03432 }
03433 # endif
03434 # endif
03435
03436 # ifndef yytnamerr
03437
03438
03439
03440
03441
03442
03443
03444 static YYSIZE_T
03445 yytnamerr (char *yyres, const char *yystr)
03446 {
03447 if (*yystr == '"')
03448 {
03449 YYSIZE_T yyn = 0;
03450 char const *yyp = yystr;
03451
03452 for (;;)
03453 switch (*++yyp)
03454 {
03455 case '\'':
03456 case ',':
03457 goto do_not_strip_quotes;
03458
03459 case '\\':
03460 if (*++yyp != '\\')
03461 goto do_not_strip_quotes;
03462
03463 default:
03464 if (yyres)
03465 yyres[yyn] = *yyp;
03466 yyn++;
03467 break;
03468
03469 case '"':
03470 if (yyres)
03471 yyres[yyn] = '\0';
03472 return yyn;
03473 }
03474 do_not_strip_quotes: ;
03475 }
03476
03477 if (! yyres)
03478 return yystrlen (yystr);
03479
03480 return yystpcpy (yyres, yystr) - yyres;
03481 }
03482 # endif
03483
03484
03485
03486
03487
03488
03489
03490
03491 static YYSIZE_T
03492 yysyntax_error (char *yyresult, int yystate, int yychar)
03493 {
03494 int yyn = yypact[yystate];
03495
03496 if (! (YYPACT_NINF < yyn && yyn <= YYLAST))
03497 return 0;
03498 else
03499 {
03500 int yytype = YYTRANSLATE (yychar);
03501 YYSIZE_T yysize0 = yytnamerr (0, yytname[yytype]);
03502 YYSIZE_T yysize = yysize0;
03503 YYSIZE_T yysize1;
03504 int yysize_overflow = 0;
03505 enum { YYERROR_VERBOSE_ARGS_MAXIMUM = 5 };
03506 char const *yyarg[YYERROR_VERBOSE_ARGS_MAXIMUM];
03507 int yyx;
03508
03509 # if 0
03510
03511
03512 YY_("syntax error, unexpected %s");
03513 YY_("syntax error, unexpected %s, expecting %s");
03514 YY_("syntax error, unexpected %s, expecting %s or %s");
03515 YY_("syntax error, unexpected %s, expecting %s or %s or %s");
03516 YY_("syntax error, unexpected %s, expecting %s or %s or %s or %s");
03517 # endif
03518 char *yyfmt;
03519 char const *yyf;
03520 static char const yyunexpected[] = "syntax error, unexpected %s";
03521 static char const yyexpecting[] = ", expecting %s";
03522 static char const yyor[] = " or %s";
03523 char yyformat[sizeof yyunexpected
03524 + sizeof yyexpecting - 1
03525 + ((YYERROR_VERBOSE_ARGS_MAXIMUM - 2)
03526 * (sizeof yyor - 1))];
03527 char const *yyprefix = yyexpecting;
03528
03529
03530
03531 int yyxbegin = yyn < 0 ? -yyn : 0;
03532
03533
03534 int yychecklim = YYLAST - yyn + 1;
03535 int yyxend = yychecklim < YYNTOKENS ? yychecklim : YYNTOKENS;
03536 int yycount = 1;
03537
03538 yyarg[0] = yytname[yytype];
03539 yyfmt = yystpcpy (yyformat, yyunexpected);
03540
03541 for (yyx = yyxbegin; yyx < yyxend; ++yyx)
03542 if (yycheck[yyx + yyn] == yyx && yyx != YYTERROR)
03543 {
03544 if (yycount == YYERROR_VERBOSE_ARGS_MAXIMUM)
03545 {
03546 yycount = 1;
03547 yysize = yysize0;
03548 yyformat[sizeof yyunexpected - 1] = '\0';
03549 break;
03550 }
03551 yyarg[yycount++] = yytname[yyx];
03552 yysize1 = yysize + yytnamerr (0, yytname[yyx]);
03553 yysize_overflow |= (yysize1 < yysize);
03554 yysize = yysize1;
03555 yyfmt = yystpcpy (yyfmt, yyprefix);
03556 yyprefix = yyor;
03557 }
03558
03559 yyf = YY_(yyformat);
03560 yysize1 = yysize + yystrlen (yyf);
03561 yysize_overflow |= (yysize1 < yysize);
03562 yysize = yysize1;
03563
03564 if (yysize_overflow)
03565 return YYSIZE_MAXIMUM;
03566
03567 if (yyresult)
03568 {
03569
03570
03571
03572 char *yyp = yyresult;
03573 int yyi = 0;
03574 while ((*yyp = *yyf) != '\0')
03575 {
03576 if (*yyp == '%' && yyf[1] == 's' && yyi < yycount)
03577 {
03578 yyp += yytnamerr (yyp, yyarg[yyi++]);
03579 yyf += 2;
03580 }
03581 else
03582 {
03583 yyp++;
03584 yyf++;
03585 }
03586 }
03587 }
03588 return yysize;
03589 }
03590 }
03591 #endif
03592
03593
03594
03595
03596
03597
03598
03599 #if (defined __STDC__ || defined __C99__FUNC__ \
03600 || defined __cplusplus || defined _MSC_VER)
03601 static void
03602 yydestruct (const char *yymsg, int yytype, YYSTYPE *yyvaluep, YYLTYPE *yylocationp, OSOption *osoption, OSoLParserData *parserData, OSgLParserData *osglData)
03603 #else
03604 static void
03605 yydestruct (yymsg, yytype, yyvaluep, yylocationp, osoption, parserData, osglData)
03606 const char *yymsg;
03607 int yytype;
03608 YYSTYPE *yyvaluep;
03609 YYLTYPE *yylocationp;
03610 OSOption *osoption;
03611 OSoLParserData *parserData;
03612 OSgLParserData *osglData;
03613 #endif
03614 {
03615 YYUSE (yyvaluep);
03616 YYUSE (yylocationp);
03617 YYUSE (osoption);
03618 YYUSE (parserData);
03619 YYUSE (osglData);
03620
03621 if (!yymsg)
03622 yymsg = "Deleting";
03623 YY_SYMBOL_PRINT (yymsg, yytype, yyvaluep, yylocationp);
03624
03625 switch (yytype)
03626 {
03627
03628 default:
03629 break;
03630 }
03631 }
03632
03633
03634 #ifdef YYPARSE_PARAM
03635 #if defined __STDC__ || defined __cplusplus
03636 int yyparse (void *YYPARSE_PARAM);
03637 #else
03638 int yyparse ();
03639 #endif
03640 #else
03641 #if defined __STDC__ || defined __cplusplus
03642 int yyparse (OSOption *osoption, OSoLParserData *parserData, OSgLParserData *osglData);
03643 #else
03644 int yyparse ();
03645 #endif
03646 #endif
03647
03648
03649
03650
03651
03652
03653
03654
03655
03656 #ifdef YYPARSE_PARAM
03657 #if (defined __STDC__ || defined __C99__FUNC__ \
03658 || defined __cplusplus || defined _MSC_VER)
03659 int
03660 yyparse (void *YYPARSE_PARAM)
03661 #else
03662 int
03663 yyparse (YYPARSE_PARAM)
03664 void *YYPARSE_PARAM;
03665 #endif
03666 #else
03667 #if (defined __STDC__ || defined __C99__FUNC__ \
03668 || defined __cplusplus || defined _MSC_VER)
03669 int
03670 yyparse (OSOption *osoption, OSoLParserData *parserData, OSgLParserData *osglData)
03671 #else
03672 int
03673 yyparse (osoption, parserData, osglData)
03674 OSOption *osoption;
03675 OSoLParserData *parserData;
03676 OSgLParserData *osglData;
03677 #endif
03678 #endif
03679 {
03680
03681 int yychar;
03682
03683
03684 YYSTYPE yylval;
03685
03686
03687 YYLTYPE yylloc;
03688
03689
03690 int yynerrs;
03691
03692 int yystate;
03693
03694 int yyerrstatus;
03695
03696
03697
03698
03699
03700
03701
03702
03703
03704
03705 yytype_int16 yyssa[YYINITDEPTH];
03706 yytype_int16 *yyss;
03707 yytype_int16 *yyssp;
03708
03709
03710 YYSTYPE yyvsa[YYINITDEPTH];
03711 YYSTYPE *yyvs;
03712 YYSTYPE *yyvsp;
03713
03714
03715 YYLTYPE yylsa[YYINITDEPTH];
03716 YYLTYPE *yyls;
03717 YYLTYPE *yylsp;
03718
03719
03720 YYLTYPE yyerror_range[2];
03721
03722 YYSIZE_T yystacksize;
03723
03724 int yyn;
03725 int yyresult;
03726
03727 int yytoken;
03728
03729
03730 YYSTYPE yyval;
03731 YYLTYPE yyloc;
03732
03733 #if YYERROR_VERBOSE
03734
03735 char yymsgbuf[128];
03736 char *yymsg = yymsgbuf;
03737 YYSIZE_T yymsg_alloc = sizeof yymsgbuf;
03738 #endif
03739
03740 #define YYPOPSTACK(N) (yyvsp -= (N), yyssp -= (N), yylsp -= (N))
03741
03742
03743
03744 int yylen = 0;
03745
03746 yytoken = 0;
03747 yyss = yyssa;
03748 yyvs = yyvsa;
03749 yyls = yylsa;
03750 yystacksize = YYINITDEPTH;
03751
03752 YYDPRINTF ((stderr, "Starting parse\n"));
03753
03754 yystate = 0;
03755 yyerrstatus = 0;
03756 yynerrs = 0;
03757 yychar = YYEMPTY;
03758
03759
03760
03761
03762
03763 yyssp = yyss;
03764 yyvsp = yyvs;
03765 yylsp = yyls;
03766
03767 #if YYLTYPE_IS_TRIVIAL
03768
03769 yylloc.first_line = yylloc.last_line = 1;
03770 yylloc.first_column = yylloc.last_column = 1;
03771 #endif
03772
03773 goto yysetstate;
03774
03775
03776
03777
03778 yynewstate:
03779
03780
03781 yyssp++;
03782
03783 yysetstate:
03784 *yyssp = yystate;
03785
03786 if (yyss + yystacksize - 1 <= yyssp)
03787 {
03788
03789 YYSIZE_T yysize = yyssp - yyss + 1;
03790
03791 #ifdef yyoverflow
03792 {
03793
03794
03795
03796 YYSTYPE *yyvs1 = yyvs;
03797 yytype_int16 *yyss1 = yyss;
03798 YYLTYPE *yyls1 = yyls;
03799
03800
03801
03802
03803
03804 yyoverflow (YY_("memory exhausted"),
03805 &yyss1, yysize * sizeof (*yyssp),
03806 &yyvs1, yysize * sizeof (*yyvsp),
03807 &yyls1, yysize * sizeof (*yylsp),
03808 &yystacksize);
03809
03810 yyls = yyls1;
03811 yyss = yyss1;
03812 yyvs = yyvs1;
03813 }
03814 #else
03815 # ifndef YYSTACK_RELOCATE
03816 goto yyexhaustedlab;
03817 # else
03818
03819 if (YYMAXDEPTH <= yystacksize)
03820 goto yyexhaustedlab;
03821 yystacksize *= 2;
03822 if (YYMAXDEPTH < yystacksize)
03823 yystacksize = YYMAXDEPTH;
03824
03825 {
03826 yytype_int16 *yyss1 = yyss;
03827 union yyalloc *yyptr =
03828 (union yyalloc *) YYSTACK_ALLOC (YYSTACK_BYTES (yystacksize));
03829 if (! yyptr)
03830 goto yyexhaustedlab;
03831 YYSTACK_RELOCATE (yyss_alloc, yyss);
03832 YYSTACK_RELOCATE (yyvs_alloc, yyvs);
03833 YYSTACK_RELOCATE (yyls_alloc, yyls);
03834 # undef YYSTACK_RELOCATE
03835 if (yyss1 != yyssa)
03836 YYSTACK_FREE (yyss1);
03837 }
03838 # endif
03839 #endif
03840
03841 yyssp = yyss + yysize - 1;
03842 yyvsp = yyvs + yysize - 1;
03843 yylsp = yyls + yysize - 1;
03844
03845 YYDPRINTF ((stderr, "Stack size increased to %lu\n",
03846 (unsigned long int) yystacksize));
03847
03848 if (yyss + yystacksize - 1 <= yyssp)
03849 YYABORT;
03850 }
03851
03852 YYDPRINTF ((stderr, "Entering state %d\n", yystate));
03853
03854 if (yystate == YYFINAL)
03855 YYACCEPT;
03856
03857 goto yybackup;
03858
03859
03860
03861
03862 yybackup:
03863
03864
03865
03866
03867
03868 yyn = yypact[yystate];
03869 if (yyn == YYPACT_NINF)
03870 goto yydefault;
03871
03872
03873
03874
03875 if (yychar == YYEMPTY)
03876 {
03877 YYDPRINTF ((stderr, "Reading a token: "));
03878 yychar = YYLEX;
03879 }
03880
03881 if (yychar <= YYEOF)
03882 {
03883 yychar = yytoken = YYEOF;
03884 YYDPRINTF ((stderr, "Now at end of input.\n"));
03885 }
03886 else
03887 {
03888 yytoken = YYTRANSLATE (yychar);
03889 YY_SYMBOL_PRINT ("Next token is", yytoken, &yylval, &yylloc);
03890 }
03891
03892
03893
03894 yyn += yytoken;
03895 if (yyn < 0 || YYLAST < yyn || yycheck[yyn] != yytoken)
03896 goto yydefault;
03897 yyn = yytable[yyn];
03898 if (yyn <= 0)
03899 {
03900 if (yyn == 0 || yyn == YYTABLE_NINF)
03901 goto yyerrlab;
03902 yyn = -yyn;
03903 goto yyreduce;
03904 }
03905
03906
03907
03908 if (yyerrstatus)
03909 yyerrstatus--;
03910
03911
03912 YY_SYMBOL_PRINT ("Shifting", yytoken, &yylval, &yylloc);
03913
03914
03915 yychar = YYEMPTY;
03916
03917 yystate = yyn;
03918 *++yyvsp = yylval;
03919 *++yylsp = yylloc;
03920 goto yynewstate;
03921
03922
03923
03924
03925
03926 yydefault:
03927 yyn = yydefact[yystate];
03928 if (yyn == 0)
03929 goto yyerrlab;
03930 goto yyreduce;
03931
03932
03933
03934
03935
03936 yyreduce:
03937
03938 yylen = yyr2[yyn];
03939
03940
03941
03942
03943
03944
03945
03946
03947
03948 yyval = yyvsp[1-yylen];
03949
03950
03951 YYLLOC_DEFAULT (yyloc, (yylsp - yylen), yylen);
03952 YY_REDUCE_PRINT (yyn);
03953 switch (yyn)
03954 {
03955 case 4:
03956
03957 {
03958 #ifdef DEBUG
03959 yydebug = 1;
03960 #endif
03961 }
03962 break;
03963
03964 case 5:
03965
03966 {
03967 #ifdef DEBUG
03968 yydebug = 1;
03969 #endif
03970 }
03971 break;
03972
03973 case 13:
03974
03975 { osolerror( NULL, osoption, parserData, osglData, "unexpected end of file, expecting </osol>");}
03976 break;
03977
03978 case 16:
03979
03980 {
03981 if(!osoption->setOptionHeader(osglData->fileName, osglData->source,
03982 osglData->description, osglData->fileCreator, osglData->licence) )
03983 osolerror( NULL, osoption, parserData, osglData, "setHeader failed");
03984 }
03985 break;
03986
03987 case 17:
03988
03989 {
03990 osglData->fileName = "";
03991 osglData->source = "";
03992 osglData->description = "";
03993 osglData->fileCreator = "";
03994 osglData->licence = "";
03995 }
03996 break;
03997
03998 case 29:
03999
04000 {
04001 osglData->fileName = (yyvsp[(2) - (3)].sval);
04002 free((yyvsp[(2) - (3)].sval));
04003 }
04004 break;
04005
04006 case 36:
04007
04008 {
04009 osglData->source = (yyvsp[(2) - (3)].sval);
04010 free((yyvsp[(2) - (3)].sval));
04011 }
04012 break;
04013
04014 case 43:
04015
04016 {
04017 osglData->description = (yyvsp[(2) - (3)].sval);
04018 free((yyvsp[(2) - (3)].sval));
04019 }
04020 break;
04021
04022 case 50:
04023
04024 {
04025 osglData->fileCreator = (yyvsp[(2) - (3)].sval);
04026 free((yyvsp[(2) - (3)].sval));
04027 }
04028 break;
04029
04030 case 57:
04031
04032 {
04033 osglData->licence = (yyvsp[(2) - (3)].sval);
04034 free((yyvsp[(2) - (3)].sval));
04035 }
04036 break;
04037
04038 case 60:
04039
04040 {
04041 parserData->serviceURIPresent = false;
04042 parserData->serviceNamePresent = false;
04043 parserData->instanceNamePresent = false;
04044 parserData->instanceLocationPresent = false;
04045 parserData->jobIDPresent = false;
04046 parserData->solverToInvokePresent = false;
04047 parserData->licensePresent = false;
04048 parserData->usernamePresent = false;
04049 parserData->passwordPresent = false;
04050 parserData->contactPresent = false;
04051 parserData->otherGeneralOptionsPresent = false;
04052 osoption->general = new GeneralOption();
04053 }
04054 break;
04055
04056 case 81:
04057
04058 { if (parserData->serviceURIPresent)
04059 osolerror( NULL, osoption, parserData, osglData, "only one <serviceURI> element allowed");
04060 else
04061 parserData->serviceURIPresent = true;
04062
04063 }
04064 break;
04065
04066 case 87:
04067
04068 {
04069 if (osoption->setServiceURI((yyvsp[(1) - (1)].sval)) == false)
04070 osolerror( NULL, osoption, parserData, osglData, "setServiceURI failed");
04071 free((yyvsp[(1) - (1)].sval));
04072 parserData->errorText = NULL;
04073 }
04074 break;
04075
04076 case 89:
04077
04078 { if (parserData->serviceNamePresent)
04079 osolerror(NULL, NULL, parserData, osglData, "only one serviceName element allowed");
04080 parserData->serviceNamePresent = true;
04081 }
04082 break;
04083
04084 case 95:
04085
04086 {
04087 osoption->setServiceName((yyvsp[(1) - (1)].sval));
04088 free((yyvsp[(1) - (1)].sval));
04089 parserData->errorText = NULL;
04090 }
04091 break;
04092
04093 case 97:
04094
04095 { if (parserData->instanceNamePresent)
04096 osolerror(NULL, NULL, parserData, osglData, "only one instanceName element allowed");
04097 parserData->instanceNamePresent = true;
04098 }
04099 break;
04100
04101 case 103:
04102
04103 {
04104 if (osoption->setInstanceName((yyvsp[(1) - (1)].sval)) == false)
04105 osolerror( NULL, osoption, parserData, osglData, "setInstanceName failed");
04106 free((yyvsp[(1) - (1)].sval));
04107 parserData->errorText = NULL;
04108 }
04109 break;
04110
04111 case 104:
04112
04113 {
04114 if (osoption->setInstanceLocation(parserData->tempStr,parserData->typeAttribute) == false)
04115 osolerror(NULL, NULL, parserData, osglData, "setInstanceLocation failed");
04116 parserData->errorText = NULL;
04117 }
04118 break;
04119
04120 case 105:
04121
04122 {
04123 if (parserData->instanceLocationPresent)
04124 osolerror(NULL, NULL, parserData, osglData, "only one instanceLocation element allowed");
04125 parserData->instanceLocationPresent = true;
04126 parserData->typeAttribute = "local";
04127 }
04128 break;
04129
04130 case 107:
04131
04132 {
04133 if (verifyLocationType(parserData->typeAttribute) == false)
04134 osolerror(NULL, NULL, parserData, osglData, "instance location type not recognized");
04135 parserData->errorText = NULL;
04136 }
04137 break;
04138
04139 case 108:
04140
04141 {
04142 parserData->typeAttribute = (yyvsp[(2) - (3)].sval);
04143 free((yyvsp[(2) - (3)].sval));
04144 }
04145 break;
04146
04147 case 114:
04148
04149 {
04150 parserData->tempStr = (yyvsp[(1) - (1)].sval);
04151 free((yyvsp[(1) - (1)].sval));
04152 }
04153 break;
04154
04155 case 116:
04156
04157 { if (parserData->jobIDPresent)
04158 osolerror(NULL, NULL, parserData, osglData, "only one jobID element allowed");
04159 parserData->jobIDPresent = true;
04160 }
04161 break;
04162
04163 case 122:
04164
04165 {
04166 if (osoption->setJobID((yyvsp[(1) - (1)].sval)) == false)
04167 osolerror( NULL, osoption, parserData, osglData, "setJobID failed");
04168 free((yyvsp[(1) - (1)].sval));
04169 parserData->errorText = NULL;
04170 }
04171 break;
04172
04173 case 124:
04174
04175 {
04176 if (parserData->solverToInvokePresent)
04177 osolerror(NULL, NULL, parserData, osglData, "only one solverToInvoke element allowed");
04178 parserData->solverToInvokePresent = true;
04179 }
04180 break;
04181
04182 case 130:
04183
04184 {
04185 if (osoption->setSolverToInvoke((yyvsp[(1) - (1)].sval)) == false)
04186 osolerror( NULL, osoption, parserData, osglData, "setSolverToInvoke failed");
04187 free((yyvsp[(1) - (1)].sval));
04188 parserData->errorText = NULL;
04189 }
04190 break;
04191
04192 case 132:
04193
04194 {
04195 if (parserData->licensePresent)
04196 osolerror( NULL, osoption, parserData, osglData, "only one <license> element allowed");
04197 parserData->licensePresent = true;
04198 }
04199 break;
04200
04201 case 138:
04202
04203 {
04204 if (osoption->setLicense((yyvsp[(1) - (1)].sval)) == false)
04205 osolerror( NULL, osoption, parserData, osglData, "setLicense failed");
04206 free((yyvsp[(1) - (1)].sval));
04207 parserData->errorText = NULL;
04208 }
04209 break;
04210
04211 case 140:
04212
04213 { if (parserData->usernamePresent)
04214 osolerror( NULL, osoption, parserData, osglData, "only one <username> element allowed");
04215 parserData->usernamePresent = true;
04216 }
04217 break;
04218
04219 case 146:
04220
04221 {
04222 if (osoption->setUserName((yyvsp[(1) - (1)].sval)) == false)
04223 osolerror( NULL, osoption, parserData, osglData, "setUsername failed");
04224 free((yyvsp[(1) - (1)].sval));
04225 parserData->errorText = NULL;
04226 }
04227 break;
04228
04229 case 148:
04230
04231 { if (parserData->passwordPresent)
04232 osolerror( NULL, osoption, parserData, osglData, "only one <password> element allowed");
04233 parserData->passwordPresent = true;
04234 }
04235 break;
04236
04237 case 154:
04238
04239 {
04240 if (osoption->setPassword((yyvsp[(1) - (1)].sval)) == false)
04241 osolerror( NULL, osoption, parserData, osglData, "setPassword failed");
04242 free((yyvsp[(1) - (1)].sval));
04243 parserData->errorText = NULL;
04244 }
04245 break;
04246
04247 case 155:
04248
04249 {
04250 if (osoption->setContact(parserData->tempStr,parserData->typeAttribute) == false)
04251 osolerror( NULL, osoption, parserData, osglData, "setContact failed");
04252 parserData->errorText = NULL;
04253 }
04254 break;
04255
04256 case 156:
04257
04258 {
04259 if (parserData->contactPresent)
04260 osolerror( NULL, osoption, parserData, osglData, "only one <contact> element allowed");
04261 parserData->contactPresent = true;
04262 parserData->typeAttribute = "osp";
04263 parserData->tempStr = "";
04264 }
04265 break;
04266
04267 case 158:
04268
04269 {
04270 if (verifyTransportType(parserData->typeAttribute) == false)
04271 osolerror(NULL, NULL, parserData, osglData, "transport type not recognized");
04272 }
04273 break;
04274
04275 case 159:
04276
04277 {
04278 parserData->typeAttribute = (yyvsp[(2) - (3)].sval);
04279 free((yyvsp[(2) - (3)].sval));
04280 }
04281 break;
04282
04283 case 165:
04284
04285 {
04286 parserData->tempStr = (yyvsp[(1) - (1)].sval);
04287 free((yyvsp[(1) - (1)].sval));
04288 }
04289 break;
04290
04291 case 167:
04292
04293 { if (parserData->otherGeneralOptionsPresent)
04294 osolerror(NULL, NULL, parserData, osglData, "only one <general> <other> element allowed");
04295 parserData->otherGeneralOptionsPresent = true;
04296 }
04297 break;
04298
04299 case 168:
04300
04301 {
04302 if (parserData->tempInt < 0) osolerror(NULL, NULL, parserData, osglData, "number of other general options cannot be negative");
04303 parserData->numberOf = parserData->tempInt;
04304 parserData->kounter = 0;
04305 }
04306 break;
04307
04308 case 169:
04309
04310 { if (parserData->numberOf > 0)
04311 osolerror(NULL, NULL, parserData, osglData, "expected at least one <other> element");
04312 }
04313 break;
04314
04315 case 170:
04316
04317 { if (parserData->kounter < parserData->numberOf - 1)
04318 osolerror(NULL, NULL, parserData, osglData, "fewer <other> elements than specified");
04319 }
04320 break;
04321
04322 case 177:
04323
04324 {
04325 parserData->kounter++;
04326 if (osoption->setAnOtherGeneralOption(parserData->nameAttribute, parserData->valueAttribute, parserData->descriptionAttribute) == false)
04327 osolerror(NULL, NULL, parserData, osglData, "setOtherGeneralOption failed");
04328 }
04329 break;
04330
04331 case 178:
04332
04333 { if (parserData->kounter >= parserData->numberOf)
04334 osolerror(NULL, NULL, parserData, osglData, "more <other> elements than specified");
04335 parserData->nameAttributePresent = false;
04336 parserData->valueAttributePresent = false;
04337 parserData->descriptionAttributePresent = false;
04338 parserData->nameAttribute = "";
04339 parserData->valueAttribute = "";
04340 parserData->descriptionAttribute = "";
04341 }
04342 break;
04343
04344 case 179:
04345
04346 {
04347 if (!parserData->nameAttributePresent)
04348 osolerror (NULL, NULL, parserData, osglData, "<other> must have name attribute");
04349 }
04350 break;
04351
04352 case 182:
04353
04354 { if (parserData->nameAttribute.length() == 0)
04355 osolerror(NULL, NULL, parserData, osglData, "otherOption name cannot be empty");
04356 }
04357 break;
04358
04359 case 189:
04360
04361 {
04362 parserData->minDiskSpacePresent = false;
04363 parserData->minMemoryPresent = false;
04364 parserData->minCPUSpeedPresent = false;
04365 parserData->minCPUNumberPresent = false;
04366 parserData->otherSystemOptionsPresent = false;
04367 osoption->system = new SystemOption();
04368 }
04369 break;
04370
04371 case 204:
04372
04373 { if (parserData->minDiskSpacePresent)
04374 osolerror(NULL, NULL, parserData, osglData, "only one minDiskSpace element allowed");
04375 parserData->minDiskSpacePresent = true;
04376 parserData->unitAttributePresent = false;
04377 parserData->descriptionAttributePresent = false;
04378 parserData->unitAttribute = "byte";
04379 parserData->descriptionAttribute = "";
04380 }
04381 break;
04382
04383 case 211:
04384
04385 {
04386 if (osoption->setMinDiskSpace(parserData->unitAttribute, parserData->descriptionAttribute, parserData->tempVal) == false)
04387 osolerror(NULL, NULL, parserData, osglData, "setMinDiskSpace failed");
04388 parserData->errorText = NULL;
04389 }
04390 break;
04391
04392 case 213:
04393
04394 { if (parserData->minMemoryPresent)
04395 osolerror(NULL, NULL, parserData, osglData, "only one minMemory element allowed");
04396 parserData->minMemoryPresent = true;
04397 parserData->unitAttributePresent = false;
04398 parserData->descriptionAttributePresent = false;
04399 parserData->unitAttribute = "byte";
04400 parserData->descriptionAttribute = "";
04401 }
04402 break;
04403
04404 case 220:
04405
04406 {
04407 if (osoption->setMinMemorySize(parserData->unitAttribute, parserData->descriptionAttribute, parserData->tempVal) == false)
04408 osolerror(NULL, NULL, parserData, osglData, "setMinMemorySize failed");
04409 parserData->errorText = NULL;
04410 }
04411 break;
04412
04413 case 222:
04414
04415 { if (parserData->minCPUSpeedPresent)
04416 osolerror(NULL, NULL, parserData, osglData, "only one minCPUSpeed element allowed");
04417 parserData->minCPUSpeedPresent = true;
04418 parserData->unitAttributePresent = false;
04419 parserData->descriptionAttributePresent = false;
04420 parserData->unitAttribute = "hertz";
04421 parserData->descriptionAttribute = "";
04422 }
04423 break;
04424
04425 case 229:
04426
04427 {
04428 if (osoption->setMinCPUSpeed(parserData->unitAttribute, parserData->descriptionAttribute, parserData->tempVal) == false)
04429 osolerror(NULL, NULL, parserData, osglData, "setMinCPUSpeed failed");
04430 parserData->errorText = NULL;
04431 }
04432 break;
04433
04434 case 231:
04435
04436 { if (parserData->minCPUNumberPresent)
04437 osolerror(NULL, NULL, parserData, osglData, "only one minCPUNumber element allowed");
04438 parserData->minCPUNumberPresent = true;
04439 parserData->descriptionAttributePresent = false;
04440 parserData->descriptionAttribute = "";
04441 }
04442 break;
04443
04444 case 235:
04445
04446 {
04447 if (osoption->setMinCPUNumber((yyvsp[(1) - (1)].ival), parserData->descriptionAttribute) == false)
04448 osolerror(NULL, NULL, parserData, osglData, "setMinCPUNumber failed");
04449
04450 parserData->errorText = NULL;
04451 }
04452 break;
04453
04454 case 237:
04455
04456 {
04457 if (parserData->otherSystemOptionsPresent)
04458 osolerror(NULL, NULL, parserData, osglData, "only one <system> <other> element allowed");
04459 parserData->otherSystemOptionsPresent = true;
04460 }
04461 break;
04462
04463 case 238:
04464
04465 {
04466 if (parserData->tempInt < 0) osolerror(NULL, NULL, parserData, osglData, "number of other system options cannot be negative");
04467 parserData->numberOf = parserData->tempInt;
04468 parserData->kounter = 0;
04469 }
04470 break;
04471
04472 case 239:
04473
04474 { if (parserData->numberOf > 0)
04475 osolerror(NULL, NULL, parserData, osglData, "expected at least one <other> element");
04476 }
04477 break;
04478
04479 case 240:
04480
04481 { if (parserData->kounter < parserData->numberOf - 1)
04482 osolerror(NULL, NULL, parserData, osglData, "fewer <other> elements than specified");
04483 }
04484 break;
04485
04486 case 247:
04487
04488 {
04489 parserData->kounter++;
04490 if (osoption->setAnOtherSystemOption(parserData->nameAttribute, parserData->valueAttribute, parserData->descriptionAttribute) == false)
04491 osolerror(NULL, NULL, parserData, osglData, "setOtherSystemOption failed");
04492 }
04493 break;
04494
04495 case 248:
04496
04497 { if (parserData->kounter >= parserData->numberOf)
04498 osolerror(NULL, NULL, parserData, osglData, "more <other> elements than specified");
04499 parserData->nameAttributePresent = false;
04500 parserData->valueAttributePresent = false;
04501 parserData->descriptionAttributePresent = false;
04502 parserData->nameAttribute = "";
04503 parserData->valueAttribute = "";
04504 parserData->descriptionAttribute = "";
04505 }
04506 break;
04507
04508 case 249:
04509
04510 { if (!parserData->nameAttributePresent)
04511 osolerror (NULL, NULL, parserData, osglData, "<other> must have name attribute");
04512 }
04513 break;
04514
04515 case 252:
04516
04517 {
04518 if (parserData->nameAttribute.length() == 0)
04519 osolerror(NULL, NULL, parserData, osglData, "otherOption name cannot be empty");
04520 }
04521 break;
04522
04523 case 259:
04524
04525 {
04526 parserData->serviceTypePresent = false;
04527 parserData->otherServiceOptionsPresent = false;
04528 osoption->service = new ServiceOption();
04529 }
04530 break;
04531
04532 case 271:
04533
04534 { if (parserData->serviceTypePresent)
04535 osolerror(NULL, NULL, parserData, osglData, "only one currentState element allowed");
04536 parserData->serviceTypePresent = true;
04537 }
04538 break;
04539
04540 case 277:
04541
04542 {
04543 parserData->tempStr = (yyvsp[(1) - (1)].sval);
04544 free((yyvsp[(1) - (1)].sval));
04545 if (osoption->setServiceType(parserData->tempStr) == false)
04546 osolerror(NULL, NULL, parserData, osglData, "setServiceType failed; current system state not recognized");
04547 parserData->errorText = NULL;
04548 }
04549 break;
04550
04551 case 279:
04552
04553 {
04554 if (parserData->otherServiceOptionsPresent)
04555 osolerror(NULL, NULL, parserData, osglData, "only one <service> <other> element allowed");
04556 parserData->otherServiceOptionsPresent = true;
04557 }
04558 break;
04559
04560 case 280:
04561
04562 {
04563 if (parserData->tempInt < 0) osolerror(NULL, NULL, parserData, osglData, "number of other service options cannot be negative");
04564 parserData->numberOf = parserData->tempInt;
04565 parserData->kounter = 0;
04566 }
04567 break;
04568
04569 case 281:
04570
04571 { if (parserData->numberOf > 0)
04572 osolerror(NULL, NULL, parserData, osglData, "expected at least one <other> element");
04573 }
04574 break;
04575
04576 case 282:
04577
04578 { if (parserData->kounter < parserData->numberOf - 1)
04579 osolerror(NULL, NULL, parserData, osglData, "fewer <other> elements than specified");
04580 }
04581 break;
04582
04583 case 289:
04584
04585 {
04586 parserData->kounter++;
04587 if (osoption->setAnOtherServiceOption(parserData->nameAttribute, parserData->valueAttribute, parserData->descriptionAttribute) == false)
04588 osolerror(NULL, NULL, parserData, osglData, "setOtherServiceOption failed");
04589 }
04590 break;
04591
04592 case 290:
04593
04594 { if (parserData->kounter >= parserData->numberOf)
04595 osolerror(NULL, NULL, parserData, osglData, "more <other> elements than specified");
04596 parserData->nameAttributePresent = false;
04597 parserData->valueAttributePresent = false;
04598 parserData->descriptionAttributePresent = false;
04599 parserData->nameAttribute = "";
04600 parserData->valueAttribute = "";
04601 parserData->descriptionAttribute = "";
04602 }
04603 break;
04604
04605 case 291:
04606
04607 { if (!parserData->nameAttributePresent)
04608 osolerror (NULL, NULL, parserData, osglData, "<other> must have name attribute");
04609 }
04610 break;
04611
04612 case 294:
04613
04614 {
04615 if (parserData->nameAttribute.length() == 0)
04616 osolerror(NULL, NULL, parserData, osglData, "otherOption name cannot be empty");
04617 }
04618 break;
04619
04620 case 301:
04621
04622 {
04623 parserData->maxTimePresent = false;
04624 parserData->requestedStartTimePresent = false;
04625 parserData->dependenciesPresent = false;
04626 parserData->requiredDirectoriesPresent = false;
04627 parserData->requiredFilesPresent = false;
04628 parserData->directoriesToMakePresent = false;
04629 parserData->filesToMakePresent = false;
04630 parserData->inputDirectoriesToMovePresent = false;
04631 parserData->inputFilesToMovePresent = false;
04632 parserData->outputDirectoriesToMovePresent = false;
04633 parserData->outputFilesToMovePresent = false;
04634 parserData->filesToDeletePresent = false;
04635 parserData->directoriesToDeletePresent = false;
04636 parserData->processesToKillPresent = false;
04637 parserData->otherJobOptionsPresent = false;
04638 osoption->job = new JobOption();
04639 }
04640 break;
04641
04642 case 325:
04643
04644 {
04645 if (osoption->setMaxTime(parserData->maxTimeValue, parserData->unitAttribute) == false)
04646 osolerror(NULL, NULL, parserData, osglData, "max time request could not be honored");
04647 }
04648 break;
04649
04650 case 326:
04651
04652 {
04653 if (parserData->maxTimePresent)
04654 osolerror( NULL, osoption, parserData, osglData, "only one <maxTime> element allowed");
04655 parserData->maxTimePresent = true;
04656 parserData->unitAttributePresent = false;
04657 parserData->unitAttribute = "second";
04658 parserData->maxTimeValue = OSDBL_MAX;
04659 }
04660 break;
04661
04662 case 334:
04663
04664 {
04665 parserData->maxTimeValue = parserData->tempVal;
04666 }
04667 break;
04668
04669 case 336:
04670
04671 { if (parserData->requestedStartTimePresent)
04672 osolerror(NULL, NULL, parserData, osglData, "only one requestedStartTime element allowed");
04673 parserData->requestedStartTimePresent = true;
04674 }
04675 break;
04676
04677 case 342:
04678
04679 {
04680 if (osoption->setRequestedStartTime((yyvsp[(1) - (1)].sval)) == false)
04681 osolerror(NULL, NULL, parserData, osglData, "setRequestedStartTime failed");
04682 free((yyvsp[(1) - (1)].sval));
04683 parserData->errorText = NULL;
04684 }
04685 break;
04686
04687 case 343:
04688
04689 {
04690 if (osoption->setJobDependencies(parserData->numberOf, parserData->jobDependencies) == false)
04691 osolerror (NULL, osoption, parserData, osglData, "set <job> <dependencies> failed");
04692 delete[] parserData->jobDependencies;
04693 parserData->jobDependencies = NULL;
04694 }
04695 break;
04696
04697 case 344:
04698
04699 {
04700 if (parserData->dependenciesPresent)
04701 osolerror( NULL, osoption, parserData, osglData, "only one <dependencies> element allowed");
04702 parserData->dependenciesPresent = true;
04703 }
04704 break;
04705
04706 case 350:
04707
04708 {
04709 if (parserData->kounter > parserData->numberOf)
04710 osolerror (NULL, osoption, parserData, osglData, "too few job IDs in <dependencies> element");
04711 }
04712 break;
04713
04714 case 353:
04715
04716 {
04717 if (parserData->kounter >= parserData->numberOf)
04718 osolerror (NULL, osoption, parserData, osglData, "too many job IDs in <dependencies> element");
04719 parserData->jobDependencies[parserData->kounter] = (yyvsp[(3) - (4)].sval);
04720 free((yyvsp[(3) - (4)].sval));
04721 parserData->kounter++;
04722 }
04723 break;
04724
04725 case 354:
04726
04727 {
04728 if (osoption->setRequiredDirectories(parserData->numberOf,parserData->paths) == false)
04729 osolerror (NULL, osoption, parserData, osglData, "set <requiredDirectories> failed");
04730 delete[] parserData->paths;
04731 parserData->paths = NULL;
04732 }
04733 break;
04734
04735 case 355:
04736
04737 { if (parserData->requiredDirectoriesPresent)
04738 osolerror( NULL, osoption, parserData, osglData, "only one <requiredDirectories> element allowed");
04739 parserData->requiredDirectoriesPresent = true;
04740 }
04741 break;
04742
04743 case 361:
04744
04745 {
04746 if (parserData->kounter > parserData->numberOf)
04747 osolerror (NULL, osoption, parserData, osglData, "too few paths in <requiredDirectories> element");
04748 }
04749 break;
04750
04751 case 364:
04752
04753 {
04754 if (parserData->kounter >= parserData->numberOf)
04755 osolerror (NULL, osoption, parserData, osglData, "too many paths in <requiredDirectories> element");
04756 parserData->paths[parserData->kounter] = (yyvsp[(3) - (4)].sval);
04757 free((yyvsp[(3) - (4)].sval));
04758 parserData->kounter++;
04759 }
04760 break;
04761
04762 case 365:
04763
04764 {
04765 if (osoption->setRequiredFiles(parserData->numberOf, parserData->paths) == false)
04766 osolerror (NULL, osoption, parserData, osglData, "set <requiredFiles> failed");
04767 delete[] parserData->paths;
04768 parserData->paths = NULL;
04769 }
04770 break;
04771
04772 case 366:
04773
04774 { if (parserData->requiredFilesPresent)
04775 osolerror( NULL, osoption, parserData, osglData, "only one <requiredFiles> element allowed");
04776 parserData->requiredFilesPresent = true;
04777 }
04778 break;
04779
04780 case 372:
04781
04782 {
04783 if (parserData->kounter > parserData->numberOf)
04784 osolerror (NULL, osoption, parserData, osglData, "too few paths in <requiredFiles> element");
04785 }
04786 break;
04787
04788 case 375:
04789
04790 {
04791 if (parserData->kounter >= parserData->numberOf)
04792 osolerror (NULL, osoption, parserData, osglData, "too many paths in <requiredFiles> element");
04793 parserData->paths[parserData->kounter] = (yyvsp[(3) - (4)].sval);
04794 free((yyvsp[(3) - (4)].sval));
04795 parserData->kounter++;
04796 }
04797 break;
04798
04799 case 376:
04800
04801 {
04802 if (osoption->setDirectoriesToMake(parserData->numberOf, parserData->paths) == false)
04803 osolerror (NULL, osoption, parserData, osglData, "set <directoriesToMake> failed");
04804 delete[] parserData->paths;
04805 parserData->paths = NULL;
04806 }
04807 break;
04808
04809 case 377:
04810
04811 { if (parserData->directoriesToMakePresent)
04812 osolerror( NULL, osoption, parserData, osglData, "only one <directoriesToMake> element allowed");
04813 parserData->directoriesToMakePresent = true;
04814 }
04815 break;
04816
04817 case 383:
04818
04819 {
04820 if (parserData->kounter > parserData->numberOf)
04821 osolerror (NULL, osoption, parserData, osglData, "too few paths in <directoriesToMake> element");
04822 }
04823 break;
04824
04825 case 386:
04826
04827 {
04828 if (parserData->kounter >= parserData->numberOf)
04829 osolerror (NULL, osoption, parserData, osglData, "too many paths in <directoriesToMake> element");
04830 parserData->paths[parserData->kounter] = (yyvsp[(3) - (4)].sval);
04831 free((yyvsp[(3) - (4)].sval));
04832 parserData->kounter++;
04833 }
04834 break;
04835
04836 case 387:
04837
04838 {
04839 if (osoption->setFilesToMake(parserData->numberOf, parserData->paths) == false)
04840 osolerror (NULL, osoption, parserData, osglData, "set <filesToMake> failed");
04841 delete[] parserData->paths;
04842 parserData->paths = NULL;
04843 }
04844 break;
04845
04846 case 388:
04847
04848 { if (parserData->filesToMakePresent)
04849 osolerror( NULL, osoption, parserData, osglData, "only one <filesToMake> element allowed");
04850 parserData->filesToMakePresent = true;
04851 }
04852 break;
04853
04854 case 394:
04855
04856 {
04857 if (parserData->kounter > parserData->numberOf)
04858 osolerror (NULL, osoption, parserData, osglData, "too few paths in <filesToMake> element");
04859 }
04860 break;
04861
04862 case 397:
04863
04864 {
04865 if (parserData->kounter >= parserData->numberOf)
04866 osolerror (NULL, osoption, parserData, osglData, "too many paths in <filesToMake> element");
04867 parserData->paths[parserData->kounter] = (yyvsp[(3) - (4)].sval);
04868 free((yyvsp[(3) - (4)].sval));
04869 parserData->kounter++;
04870 }
04871 break;
04872
04873 case 398:
04874
04875 {
04876 if (osoption->setPathPairs(ENUM_PATHPAIR_input_dir, parserData->fromPaths,
04877 parserData->toPaths, parserData->makeCopy, parserData->numberOfPathPairs) == false)
04878 osolerror (NULL, osoption, parserData, osglData, "set <inputDirectoriesToMove> failed");
04879 delete[] parserData->fromPaths;
04880 delete[] parserData->toPaths;
04881 delete[] parserData->makeCopy;
04882 parserData->fromPaths = NULL;
04883 parserData->toPaths = NULL;
04884 parserData->makeCopy = NULL;
04885 }
04886 break;
04887
04888 case 399:
04889
04890 { if (parserData->inputDirectoriesToMovePresent)
04891 osolerror( NULL, osoption, parserData, osglData, "only one <inputDirectoriesToMove> element allowed");
04892 parserData->inputDirectoriesToMovePresent = true;
04893 }
04894 break;
04895
04896 case 405:
04897
04898 {
04899 if (parserData->kounter > parserData->numberOfPathPairs)
04900 osolerror (NULL, osoption, parserData, osglData, "too few path pairs in <inputDirectoriesToMove> element");
04901 }
04902 break;
04903
04904 case 409:
04905
04906 {
04907 if (osoption->setPathPairs(ENUM_PATHPAIR_input_file, parserData->fromPaths,
04908 parserData->toPaths, parserData->makeCopy, parserData->numberOfPathPairs) == false)
04909 osolerror (NULL, osoption, parserData, osglData, "set <inputFilesToMove> failed");
04910 delete[] parserData->fromPaths;
04911 delete[] parserData->toPaths;
04912 delete[] parserData->makeCopy;
04913 parserData->fromPaths = NULL;
04914 parserData->toPaths = NULL;
04915 parserData->makeCopy = NULL;
04916 }
04917 break;
04918
04919 case 410:
04920
04921 { if (parserData->inputFilesToMovePresent)
04922 osolerror( NULL, osoption, parserData, osglData, "only one <inputFilesToMove> element allowed");
04923 parserData->inputFilesToMovePresent = true;
04924 }
04925 break;
04926
04927 case 416:
04928
04929 {
04930 if (parserData->kounter > parserData->numberOfPathPairs)
04931 osolerror (NULL, osoption, parserData, osglData, "too few path pairs in <inputFilesToMove> element");
04932 }
04933 break;
04934
04935 case 420:
04936
04937 {
04938 if (osoption->setPathPairs(ENUM_PATHPAIR_output_file, parserData->fromPaths,
04939 parserData->toPaths, parserData->makeCopy, parserData->numberOfPathPairs) == false)
04940 osolerror (NULL, osoption, parserData, osglData, "set <inputDirectoriesToMake> failed");
04941 delete[] parserData->fromPaths;
04942 delete[] parserData->toPaths;
04943 delete[] parserData->makeCopy;
04944 parserData->fromPaths = NULL;
04945 parserData->toPaths = NULL;
04946 parserData->makeCopy = NULL;
04947 }
04948 break;
04949
04950 case 421:
04951
04952 { if (parserData->outputFilesToMovePresent)
04953 osolerror( NULL, osoption, parserData, osglData, "only one <outputFilesToMove> element allowed");
04954 parserData->outputFilesToMovePresent = true;
04955 }
04956 break;
04957
04958 case 427:
04959
04960 {
04961 if (parserData->kounter > parserData->numberOfPathPairs)
04962 osolerror (NULL, osoption, parserData, osglData, "too few path pairs in <outputFilesToMake> element");
04963 }
04964 break;
04965
04966 case 431:
04967
04968 {
04969 if (osoption->setPathPairs(ENUM_PATHPAIR_output_dir, parserData->fromPaths,
04970 parserData->toPaths, parserData->makeCopy, parserData->numberOfPathPairs) == false)
04971 osolerror (NULL, osoption, parserData, osglData, "set <inputDirectoriesToMake> failed");
04972 delete[] parserData->fromPaths;
04973 delete[] parserData->toPaths;
04974 delete[] parserData->makeCopy;
04975 parserData->fromPaths = NULL;
04976 parserData->toPaths = NULL;
04977 parserData->makeCopy = NULL;
04978 }
04979 break;
04980
04981 case 432:
04982
04983 { if (parserData->outputDirectoriesToMovePresent)
04984 osolerror( NULL, osoption, parserData, osglData, "only one <outputDirectoriesToMove> element allowed");
04985 parserData->outputDirectoriesToMovePresent = true;
04986 }
04987 break;
04988
04989 case 438:
04990
04991 {
04992 if (parserData->kounter > parserData->numberOfPathPairs)
04993 osolerror (NULL, osoption, parserData, osglData, "too few path pairs in <outputDirectoriesToMake> element");
04994 }
04995 break;
04996
04997 case 442:
04998
04999 {
05000 if (osoption->setFilesToDelete(parserData->numberOf, parserData->paths) == false)
05001 osolerror (NULL, osoption, parserData, osglData, "set <filesToDelete> failed");
05002 delete[] parserData->paths;
05003 parserData->paths = NULL;
05004 }
05005 break;
05006
05007 case 443:
05008
05009 { if (parserData->filesToDeletePresent)
05010 osolerror( NULL, osoption, parserData, osglData, "only one <filesToDelete> element allowed");
05011 parserData->filesToDeletePresent = true;
05012 }
05013 break;
05014
05015 case 449:
05016
05017 {
05018 if (parserData->kounter > parserData->numberOf)
05019 osolerror (NULL, osoption, parserData, osglData, "too few paths in <filesToDelete> element");
05020 }
05021 break;
05022
05023 case 452:
05024
05025 {
05026 if (parserData->kounter >= parserData->numberOf)
05027 osolerror (NULL, osoption, parserData, osglData, "too many paths in <filesToDelete> element");
05028 parserData->paths[parserData->kounter] = (yyvsp[(3) - (4)].sval);
05029 free((yyvsp[(3) - (4)].sval));
05030 parserData->kounter++;
05031 }
05032 break;
05033
05034 case 453:
05035
05036 {
05037 if (osoption->setDirectoriesToDelete(parserData->numberOf, parserData->paths) == false)
05038 osolerror (NULL, osoption, parserData, osglData, "set <directoriesToDelete> failed");
05039 delete[] parserData->paths;
05040 parserData->paths = NULL;
05041 }
05042 break;
05043
05044 case 454:
05045
05046 { if (parserData->directoriesToDeletePresent)
05047 osolerror( NULL, osoption, parserData, osglData, "only one <directoriesToDelete> element allowed");
05048 parserData->directoriesToDeletePresent = true;
05049 }
05050 break;
05051
05052 case 460:
05053
05054 {
05055 if (parserData->kounter > parserData->numberOf)
05056 osolerror (NULL, osoption, parserData, osglData, "too few paths in <directoriesToDelete> element");
05057 }
05058 break;
05059
05060 case 463:
05061
05062 {
05063 if (parserData->kounter >= parserData->numberOf)
05064 osolerror (NULL, osoption, parserData, osglData, "too many paths in <directoriesToDelete> element");
05065 parserData->paths[parserData->kounter] = (yyvsp[(3) - (4)].sval);
05066 free((yyvsp[(3) - (4)].sval));
05067 parserData->kounter++;
05068 }
05069 break;
05070
05071 case 464:
05072
05073 {
05074 if (osoption->setProcessesToKill(parserData->numberOf, parserData->processesToKill) == false)
05075 osolerror (NULL, osoption, parserData, osglData, "set <processesToKill> failed");
05076 delete[] parserData->processesToKill;
05077 parserData->processesToKill = NULL;
05078 }
05079 break;
05080
05081 case 465:
05082
05083 {
05084 if (parserData->processesToKillPresent)
05085 osolerror( NULL, osoption, parserData, osglData, "only one <processesToKill> element allowed");
05086 parserData->processesToKillPresent = true;
05087 }
05088 break;
05089
05090 case 471:
05091
05092 {
05093 if (parserData->kounter > parserData->numberOf)
05094 osolerror (NULL, osoption, parserData, osglData, "too few process IDs in <processesToKill> element");
05095 }
05096 break;
05097
05098 case 474:
05099
05100 {
05101 if (parserData->kounter >= parserData->numberOf)
05102 osolerror (NULL, osoption, parserData, osglData, "too many process IDs in <processesToKill> element");
05103 parserData->processesToKill[parserData->kounter] = (yyvsp[(3) - (4)].sval);
05104 free((yyvsp[(3) - (4)].sval));
05105 parserData->kounter++;
05106 }
05107 break;
05108
05109 case 476:
05110
05111 { if (parserData->otherJobOptionsPresent)
05112 osolerror(NULL, NULL, parserData, osglData, "only one <job> <other> element allowed");
05113 parserData->otherJobOptionsPresent = true;
05114 }
05115 break;
05116
05117 case 477:
05118
05119 {
05120 if (parserData->tempInt < 0) osolerror(NULL, NULL, parserData, osglData, "number of other job options cannot be negative");
05121 parserData->numberOf = parserData->tempInt;
05122 parserData->kounter = 0;
05123 }
05124 break;
05125
05126 case 478:
05127
05128 { if (parserData->numberOf > 0)
05129 osolerror(NULL, NULL, parserData, osglData, "expected at least one <other> element");
05130 }
05131 break;
05132
05133 case 479:
05134
05135 { if (parserData->kounter < parserData->numberOf - 1)
05136 osolerror(NULL, NULL, parserData, osglData, "fewer <other> elements than specified");
05137 }
05138 break;
05139
05140 case 486:
05141
05142 {
05143 parserData->kounter++;
05144 if (osoption->setAnOtherJobOption(parserData->nameAttribute, parserData->valueAttribute, parserData->descriptionAttribute) == false)
05145 osolerror(NULL, NULL, parserData, osglData, "setOtherJobOption failed");
05146 }
05147 break;
05148
05149 case 487:
05150
05151 { if (parserData->kounter >= parserData->numberOf)
05152 osolerror(NULL, NULL, parserData, osglData, "more <other> elements than specified");
05153 parserData->nameAttributePresent = false;
05154 parserData->valueAttributePresent = false;
05155 parserData->descriptionAttributePresent = false;
05156 parserData->nameAttribute = "";
05157 parserData->valueAttribute = "";
05158 parserData->descriptionAttribute = "";
05159 }
05160 break;
05161
05162 case 488:
05163
05164 { if (!parserData->nameAttributePresent)
05165 osolerror (NULL, NULL, parserData, osglData, "<other> must have name attribute");
05166 }
05167 break;
05168
05169 case 491:
05170
05171 {
05172 if (parserData->nameAttribute.length() == 0)
05173 osolerror(NULL, NULL, parserData, osglData, "otherOption name cannot be empty");
05174 }
05175 break;
05176
05177 case 498:
05178
05179 {
05180 osoption->optimization = new OptimizationOption();
05181 parserData->numberOfVariablesPresent = false;
05182 parserData->numberOfObjectivesPresent = false;
05183 parserData->numberOfConstraintsPresent = false;
05184 }
05185 break;
05186
05187 case 502:
05188
05189 {
05190 parserData->numberOfVariables = parserData->tempInt;
05191 if (osoption->setNumberOfVariables(parserData->tempInt) == false)
05192 osolerror(NULL, NULL, parserData, osglData, "setNumberOfVariables failed");
05193 }
05194 break;
05195
05196 case 503:
05197
05198 {
05199 parserData->numberOfConstraints = parserData->tempInt;
05200 if (osoption->setNumberOfConstraints(parserData->tempInt) == false)
05201 osolerror(NULL, NULL, parserData, osglData, "setNumberOfConstraints failed");
05202 }
05203 break;
05204
05205 case 504:
05206
05207 {
05208 parserData->numberOfObjectives = parserData->tempInt;
05209 if (osoption->setNumberOfObjectives(parserData->tempInt) == false)
05210 osolerror(NULL, NULL, parserData, osglData, "setNumberOfObjectives failed");
05211 }
05212 break;
05213
05214 case 512:
05215
05216 {
05217 parserData->numberOfOtherVariableOptions = 0;
05218 osoption->optimization->variables = new VariableOption();
05219 }
05220 break;
05221
05222 case 513:
05223
05224 {
05225 if (osoption->setNumberOfOtherVariableOptions(parserData->numberOfOtherVariableOptions) == false)
05226 osolerror(NULL, NULL, parserData, osglData, "setNumberOfOtherVariableOptions failed");
05227 parserData->iOther = 0;
05228 }
05229 break;
05230
05231 case 515:
05232
05233 {
05234 parserData->numberOfOtherVariableOptions = parserData->tempInt;
05235 }
05236 break;
05237
05238 case 522:
05239
05240 {
05241 if (osoption->setInitVarValues(parserData->numberOfVar, parserData->idxArray, parserData->valArray) == false)
05242 osolerror (NULL, osoption, parserData, osglData, "set <initialVariableValues> failed");
05243 delete[] parserData->idxArray;
05244 delete[] parserData->valArray;
05245 parserData->idxArray = NULL;
05246 parserData->valArray = NULL;
05247 }
05248 break;
05249
05250 case 523:
05251
05252 {
05253 parserData->numberOfVarAttributePresent = false;
05254 }
05255 break;
05256
05257 case 524:
05258
05259 {
05260 parserData->kounter = 0;
05261 parserData->idxArray = new int[parserData->numberOfVar];
05262 parserData->valArray = new double[parserData->numberOfVar];
05263 }
05264 break;
05265
05266 case 525:
05267
05268 {
05269 if (parserData->numberOfVar > 0)
05270 osolerror(NULL, NULL, parserData, osglData, "expected at least one <var> element");
05271 }
05272 break;
05273
05274 case 526:
05275
05276 {
05277 if (parserData->kounter > parserData->numberOfVar)
05278 osolerror (NULL, osoption, parserData, osglData, "too few initial values in <initialVariableValues> element");
05279 }
05280 break;
05281
05282 case 533:
05283
05284 {
05285 parserData->kounter++;
05286 }
05287 break;
05288
05289 case 534:
05290
05291 {
05292 if (parserData->kounter >= parserData->numberOfVar)
05293 osolerror(NULL, NULL, parserData, osglData, "more <var> elements than specified");
05294 parserData->idxAttributePresent = false;
05295 parserData->valueAttributePresent = false;
05296 }
05297 break;
05298
05299 case 537:
05300
05301 {
05302 if (parserData->idxAttribute < 0)
05303 osolerror (NULL, osoption, parserData, osglData, "variable index must be nonnegative");
05304 if (osoption->optimization->numberOfVariables >= 0)
05305 {
05306 if (parserData->idxAttribute >= osoption->optimization->numberOfVariables)
05307 osolerror (NULL, osoption, parserData, osglData, "variable index exceeds upper limit");
05308 };
05309 parserData->idxArray[parserData->kounter] = parserData->idxAttribute;
05310 }
05311 break;
05312
05313 case 538:
05314
05315 {
05316 if (parserData->valueAttribute == "")
05317 osolerror (NULL, osoption, parserData, osglData, "expected an integer or floating point value");
05318 parserData->valArray[parserData->kounter] = os_strtod((parserData->valueAttribute).c_str(), NULL);
05319 }
05320 break;
05321
05322 case 542:
05323
05324 {
05325 if (osoption->setInitVarValuesString(parserData->numberOfVar, parserData->idxArray, parserData->valueString) == false)
05326 osolerror (NULL, osoption, parserData, osglData, "set <initialVariableValuesString> failed");
05327 delete[] parserData->idxArray;
05328 delete[] parserData->valueString;
05329 parserData->idxArray = NULL;
05330 parserData->valueString = NULL;
05331 }
05332 break;
05333
05334 case 543:
05335
05336 {
05337 parserData->numberOfVarAttributePresent = false;
05338 }
05339 break;
05340
05341 case 544:
05342
05343 {
05344 parserData->kounter = 0;
05345 parserData->idxArray = new int[parserData->numberOfVar];
05346 parserData->valueString = new std::string[parserData->numberOfVar];
05347 }
05348 break;
05349
05350 case 545:
05351
05352 {
05353 if (parserData->numberOfVar > 0)
05354 osolerror(NULL, NULL, parserData, osglData, "expected at least one <var> element");
05355 }
05356 break;
05357
05358 case 546:
05359
05360 {
05361 if (parserData->kounter != parserData->numberOfVar)
05362 osolerror(NULL, NULL, parserData, osglData, "fewer <var> elements than specified");
05363 }
05364 break;
05365
05366 case 553:
05367
05368 {
05369 parserData->kounter++;
05370 }
05371 break;
05372
05373 case 554:
05374
05375 {
05376 if (parserData->kounter >= parserData->numberOfVar)
05377 osolerror(NULL, NULL, parserData, osglData, "more <var> elements than specified");
05378 parserData->idxAttributePresent = false;
05379 parserData->valueAttributePresent = false;
05380 parserData->valueAttribute = "48r 87e WY EUV e7 df";
05381 }
05382 break;
05383
05384 case 555:
05385
05386 {
05387 parserData->idxArray[parserData->kounter] = parserData->idxAttribute;
05388 parserData->valueString[parserData->kounter] = parserData->valueAttribute;
05389 }
05390 break;
05391
05392 case 558:
05393
05394 {
05395 if (parserData->idxAttribute < 0)
05396 osolerror (NULL, osoption, parserData, osglData, "variable index must be nonnegative");
05397 if (osoption->optimization->numberOfVariables >= 0)
05398 {
05399 if (parserData->idxAttribute >= osoption->optimization->numberOfVariables)
05400 osolerror (NULL, osoption, parserData, osglData, "variable index exceeds upper limit");
05401 };
05402 }
05403 break;
05404
05405 case 564:
05406
05407 {
05408 osoption->optimization->variables->initialBasisStatus = new BasisStatus();
05409 }
05410 break;
05411
05412 case 571:
05413
05414 {
05415 if (osoption->setInitBasisStatus(ENUM_PROBLEM_COMPONENT_variables, ENUM_BASIS_STATUS_basic, osglData->osglIntArray, osglData->osglNumberOfEl) != true)
05416 osolerror(NULL, NULL, parserData, osglData, "set variables basic failed");
05417 delete[] osglData->osglIntArray;
05418 osglData->osglIntArray = NULL;
05419 }
05420 break;
05421
05422 case 572:
05423
05424 {
05425 osglData->osglNumberOfEl = 0;
05426 osglData->osglNumberOfElPresent= false;
05427 }
05428 break;
05429
05430 case 573:
05431
05432 {
05433 osglData->osglCounter = 0;
05434 osglData->osglNumberOfEl = parserData->numberOf;
05435 osglData->osglIntArray = new int[parserData->numberOf];
05436 }
05437 break;
05438
05439 case 580:
05440
05441 {
05442 if (osoption->setInitBasisStatus(ENUM_PROBLEM_COMPONENT_variables, ENUM_BASIS_STATUS_atLower, osglData->osglIntArray, osglData->osglNumberOfEl) != true)
05443 osolerror(NULL, NULL, parserData, osglData, "set variables atLower failed");
05444 delete[] osglData->osglIntArray;
05445 osglData->osglIntArray = NULL;
05446 }
05447 break;
05448
05449 case 581:
05450
05451 {
05452 osglData->osglNumberOfEl = 0;
05453 osglData->osglNumberOfElPresent= false;
05454 }
05455 break;
05456
05457 case 582:
05458
05459 {
05460 osglData->osglCounter = 0;
05461 osglData->osglNumberOfEl = parserData->numberOf;
05462 osglData->osglIntArray = new int[parserData->numberOf];
05463 }
05464 break;
05465
05466 case 589:
05467
05468 {
05469 if (osoption->setInitBasisStatus(ENUM_PROBLEM_COMPONENT_variables, ENUM_BASIS_STATUS_atUpper, osglData->osglIntArray, osglData->osglNumberOfEl) != true)
05470 osolerror(NULL, NULL, parserData, osglData, "set variables atUpper failed");
05471 delete[] osglData->osglIntArray;
05472 osglData->osglIntArray = NULL;
05473 }
05474 break;
05475
05476 case 590:
05477
05478 {
05479 osglData->osglNumberOfEl = 0;
05480 osglData->osglNumberOfElPresent= false;
05481 }
05482 break;
05483
05484 case 591:
05485
05486 {
05487 osglData->osglCounter = 0;
05488 osglData->osglNumberOfEl = parserData->numberOf;
05489 osglData->osglIntArray = new int[parserData->numberOf];
05490 }
05491 break;
05492
05493 case 598:
05494
05495 {
05496 if (osoption->setInitBasisStatus(ENUM_PROBLEM_COMPONENT_variables, ENUM_BASIS_STATUS_isFree, osglData->osglIntArray, osglData->osglNumberOfEl) != true)
05497 osolerror(NULL, NULL, parserData, osglData, "set variables isFree failed");
05498 delete[] osglData->osglIntArray;
05499 osglData->osglIntArray = NULL;
05500 }
05501 break;
05502
05503 case 599:
05504
05505 {
05506 osglData->osglNumberOfEl = 0;
05507 osglData->osglNumberOfElPresent= false;
05508 }
05509 break;
05510
05511 case 600:
05512
05513 {
05514 osglData->osglCounter = 0;
05515 osglData->osglNumberOfEl = parserData->numberOf;
05516 osglData->osglIntArray = new int[parserData->numberOf];
05517 }
05518 break;
05519
05520 case 607:
05521
05522 {
05523 if (osoption->setInitBasisStatus(ENUM_PROBLEM_COMPONENT_variables, ENUM_BASIS_STATUS_superbasic, osglData->osglIntArray, osglData->osglNumberOfEl) != true)
05524 osolerror(NULL, NULL, parserData, osglData, "set variables superbasic failed");
05525 delete[] osglData->osglIntArray;
05526 osglData->osglIntArray = NULL;
05527 }
05528 break;
05529
05530 case 608:
05531
05532 {
05533 osglData->osglNumberOfEl = 0;
05534 osglData->osglNumberOfElPresent= false;
05535 }
05536 break;
05537
05538 case 609:
05539
05540 {
05541 osglData->osglCounter = 0;
05542 osglData->osglNumberOfEl = parserData->numberOf;
05543 osglData->osglIntArray = new int[parserData->numberOf];
05544 }
05545 break;
05546
05547 case 616:
05548
05549 {
05550 if (osoption->setInitBasisStatus(ENUM_PROBLEM_COMPONENT_variables, ENUM_BASIS_STATUS_unknown, osglData->osglIntArray, osglData->osglNumberOfEl) != true)
05551 osolerror(NULL, NULL, parserData, osglData, "set variables unknown failed");
05552 delete[] osglData->osglIntArray;
05553 osglData->osglIntArray = NULL;
05554 }
05555 break;
05556
05557 case 617:
05558
05559 {
05560 osglData->osglNumberOfEl = 0;
05561 osglData->osglNumberOfElPresent= false;
05562 }
05563 break;
05564
05565 case 618:
05566
05567 {
05568 osglData->osglCounter = 0;
05569 osglData->osglNumberOfEl = parserData->numberOf;
05570 osglData->osglIntArray = new int[parserData->numberOf];
05571 }
05572 break;
05573
05574 case 625:
05575
05576 {
05577 if (osoption->setIntegerVariableBranchingWeights(parserData->numberOfVar, parserData->idxArray, parserData->valArray) == false)
05578 osolerror (NULL, osoption, parserData, osglData, "set <initialVariableValues> failed");
05579 delete[] parserData->idxArray;
05580 delete[] parserData->valArray;
05581 parserData->idxArray = NULL;
05582 parserData->valArray = NULL;
05583 }
05584 break;
05585
05586 case 626:
05587
05588 {
05589 parserData->numberOfVarAttributePresent = false;
05590 }
05591 break;
05592
05593 case 627:
05594
05595 {
05596 parserData->kounter = 0;
05597 parserData->idxArray = new int[parserData->numberOfVar];
05598 parserData->valArray = new double[parserData->numberOfVar];
05599 }
05600 break;
05601
05602 case 628:
05603
05604 {
05605 if (parserData->numberOfVar > 0)
05606 osolerror(NULL, NULL, parserData, osglData, "expected at least one <var> element");
05607 }
05608 break;
05609
05610 case 629:
05611
05612 {
05613 if (parserData->kounter != parserData->numberOfVar)
05614 osolerror(NULL, NULL, parserData, osglData, "fewer <var> elements than specified");
05615 }
05616 break;
05617
05618 case 636:
05619
05620 {
05621 parserData->kounter++;
05622 }
05623 break;
05624
05625 case 637:
05626
05627 {
05628 if (parserData->kounter >= parserData->numberOfVar)
05629 osolerror(NULL, NULL, parserData, osglData, "more <var> elements than specified");
05630 parserData->idxAttributePresent = false;
05631 parserData->valueAttributePresent = false;
05632 parserData->valueAttribute = "1.0";
05633 }
05634 break;
05635
05636 case 638:
05637
05638 {
05639 parserData->idxArray[parserData->kounter] = parserData->idxAttribute;
05640 parserData->valArray[parserData->kounter] = os_strtod((parserData->valueAttribute).c_str(), NULL);
05641 }
05642 break;
05643
05644 case 641:
05645
05646 {
05647 if (parserData->idxAttribute < 0)
05648 osolerror (NULL, osoption, parserData, osglData, "variable index must be nonnegative");
05649 if (osoption->optimization->numberOfVariables >= 0)
05650 {
05651 if (parserData->idxAttribute >= osoption->optimization->numberOfVariables)
05652 osolerror (NULL, osoption, parserData, osglData, "variable index exceeds upper limit");
05653 };
05654 }
05655 break;
05656
05657 case 642:
05658
05659 {
05660 if (parserData->valueAttribute == "")
05661 osolerror (NULL, osoption, parserData, osglData, "expected an integer or floating point value");
05662 }
05663 break;
05664
05665 case 647:
05666
05667 {
05668 parserData->sosIdxAttributePresent = false;
05669 parserData->currentSOS = 0;
05670 }
05671 break;
05672
05673 case 648:
05674
05675 {
05676 if ((yyvsp[(3) - (4)].ival) < 0)
05677 osolerror (NULL, osoption, parserData, osglData, "number of <sos> elements must be nonnegative");
05678 parserData->numberOfSOS = (yyvsp[(3) - (4)].ival);
05679 }
05680 break;
05681
05682 case 649:
05683
05684 { if (parserData->numberOfSOS > 0)
05685 osolerror(NULL, NULL, parserData, osglData, "expected at least one <sos> element");
05686 }
05687 break;
05688
05689 case 650:
05690
05691 { if (parserData->currentSOS != parserData->numberOfSOS)
05692 osolerror(NULL, NULL, parserData, osglData, "fewer <sos> elements than specified");
05693 }
05694 break;
05695
05696 case 656:
05697
05698 {
05699 if (!osoption->setAnotherSOSVariableBranchingWeight(parserData->sosIdx,
05700 parserData->numberOfVar, parserData->groupWeight,
05701 parserData->idxArray, parserData->valArray) )
05702 osolerror (NULL, osoption, parserData, osglData, "error processing SOS branching weights");
05703 delete[] parserData->idxArray;
05704 delete[] parserData->valArray;
05705 parserData->idxArray = NULL;
05706 parserData->valArray = NULL;
05707 parserData->currentSOS++;
05708 }
05709 break;
05710
05711 case 657:
05712
05713 { if (parserData->currentSOS >= parserData->numberOfSOS)
05714 osolerror(NULL, osoption, parserData, osglData, "too many SOS branching weights");
05715 parserData->sosIdxAttributePresent = false;
05716 parserData->groupWeightAttributePresent = false;
05717 parserData->numberOfVarAttributePresent = false;
05718 parserData->groupWeight = 1.0;
05719 parserData->numberOfSOSVar = 0;
05720 }
05721 break;
05722
05723 case 658:
05724
05725 {
05726 if (!parserData->sosIdxAttributePresent)
05727 osolerror (NULL, osoption, parserData, osglData, "SOS index required");
05728 if (!parserData->numberOfVarAttributePresent)
05729 osolerror (NULL, osoption, parserData, osglData, "numberOfVar required");
05730 }
05731 break;
05732
05733 case 662:
05734
05735 {
05736 parserData->kounter = 0;
05737 parserData->idxArray = new int[parserData->numberOfVar];
05738 parserData->valArray = new double[parserData->numberOfVar];
05739 parserData->numberOfVarAttributePresent = true;
05740 }
05741 break;
05742
05743 case 671:
05744
05745 {
05746 parserData->iOther++;
05747 }
05748 break;
05749
05750 case 672:
05751
05752 {
05753 if (parserData->iOther >= parserData->numberOfOtherVariableOptions)
05754 osolerror(NULL, NULL, parserData, osglData, "more <otherVariableOptions> than specified");
05755 parserData->numberOfVarAttributePresent = false;
05756 parserData->numberOfVar = 0;
05757 parserData->numberOfEnumerationsAttributePresent = false;
05758 parserData->numberOfEnumerations = 0;
05759 parserData->nameAttributePresent = false;
05760 parserData->valueAttributePresent = false;
05761 parserData->valueAttribute = "";
05762 parserData->solverAttributePresent = false;
05763 parserData->solverAttribute = "";
05764 parserData->categoryAttributePresent = false;
05765 parserData->categoryAttribute = "";
05766 parserData->typeAttributePresent = false;
05767 parserData->typeAttribute = "";
05768 parserData->descriptionAttributePresent = false;
05769 parserData->descriptionAttribute = "";
05770 parserData->otherOptionType = ENUM_PROBLEM_COMPONENT_variables;
05771 }
05772 break;
05773
05774 case 673:
05775
05776 {
05777 if (!parserData->nameAttributePresent)
05778 osolerror(NULL, NULL, parserData, osglData, "<other> element requires name attribute");
05779 if (!osoption->setOtherVariableOptionAttributes(
05780 parserData->iOther,
05781 parserData->numberOfVar,
05782 parserData->numberOfEnumerations,
05783 parserData->nameAttribute,
05784 parserData->valueAttribute,
05785 parserData->solverAttribute,
05786 parserData->categoryAttribute,
05787 parserData->typeAttribute,
05788 parserData->descriptionAttribute) )
05789 osolerror(NULL, NULL, parserData, osglData, "<other> element could not be initialed");
05790 }
05791 break;
05792
05793 case 676:
05794
05795 {
05796 parserData->kounter = 0;
05797 }
05798 break;
05799
05800 case 677:
05801
05802 {
05803 parserData->kounter = 0;
05804 }
05805 break;
05806
05807 case 693:
05808
05809 {
05810 if (!osoption->setOtherVariableOptionVar(
05811 parserData->iOther,
05812 parserData->kounter,
05813 parserData->idxAttribute,
05814 parserData->valueAttribute,
05815 parserData->lbValueAttribute,
05816 parserData->ubValueAttribute) )
05817 osolerror(NULL, NULL, parserData, osglData, "set other variable option <var> element failed");
05818 parserData->kounter++;
05819 }
05820 break;
05821
05822 case 694:
05823
05824 {
05825 if (parserData->kounter >= parserData->numberOfVar)
05826 osolerror(NULL, NULL, parserData, osglData, "more <var> elements than specified");
05827 parserData->idxAttributePresent = false;
05828 parserData->valueAttributePresent = false;
05829 parserData->valueAttribute = "";
05830 parserData->lbValueAttributePresent = false;
05831 parserData->lbValueAttribute = "";
05832 parserData->ubValueAttributePresent = false;
05833 parserData->ubValueAttribute = "";
05834 }
05835 break;
05836
05837 case 698:
05838
05839 {
05840 if (parserData->idxAttribute < 0)
05841 osolerror (NULL, osoption, parserData, osglData, "variable index must be nonnegative");
05842 if (osoption->optimization->numberOfVariables >= 0)
05843 {
05844 if (parserData->idxAttribute >= osoption->optimization->numberOfVariables)
05845 osolerror (NULL, osoption, parserData, osglData, "variable index exceeds upper limit");
05846 };
05847 }
05848 break;
05849
05850 case 707:
05851
05852 {
05853 parserData->numberOfOtherObjectiveOptions = 0;
05854 osoption->optimization->objectives = new ObjectiveOption();
05855 }
05856 break;
05857
05858 case 708:
05859
05860 {
05861 if (osoption->setNumberOfOtherObjectiveOptions(parserData->numberOfOtherObjectiveOptions) == false)
05862 osolerror(NULL, NULL, parserData, osglData, "setNumberOfOtherVariableOptions failed");
05863 parserData->iOther = 0;
05864 }
05865 break;
05866
05867 case 710:
05868
05869 {
05870 parserData->numberOfOtherObjectiveOptions = parserData->tempInt;
05871 }
05872 break;
05873
05874 case 717:
05875
05876 {
05877 if (osoption->setInitObjValues(parserData->numberOfObj, parserData->idxArray, parserData->valArray) == false)
05878 osolerror (NULL, osoption, parserData, osglData, "set <initialObjectiveValues> failed");
05879 delete[] parserData->idxArray;
05880 delete[] parserData->valArray;
05881 parserData->idxArray = NULL;
05882 parserData->valArray = NULL;
05883 }
05884 break;
05885
05886 case 718:
05887
05888 {
05889 parserData->numberOfObjAttributePresent = false;
05890 }
05891 break;
05892
05893 case 719:
05894
05895 {
05896 parserData->kounter = 0;
05897 parserData->idxArray = new int[parserData->numberOfObj];
05898 parserData->valArray = new double[parserData->numberOfObj];
05899 }
05900 break;
05901
05902 case 720:
05903
05904 {
05905 if (parserData->numberOfObj > 0)
05906 osolerror(NULL, NULL, parserData, osglData, "expected at least one <obj> element");
05907 }
05908 break;
05909
05910 case 721:
05911
05912 {
05913 if (parserData->kounter != parserData->numberOfObj)
05914 osolerror(NULL, NULL, parserData, osglData, "fewer <obj> elements than specified");
05915 }
05916 break;
05917
05918 case 728:
05919
05920 {
05921 parserData->kounter++;
05922 }
05923 break;
05924
05925 case 729:
05926
05927 {
05928 if (parserData->kounter >= parserData->numberOfObj)
05929 osolerror(NULL, NULL, parserData, osglData, "more <obj> elements than specified");
05930 parserData->idxAttributePresent = false;
05931 parserData->valueAttributePresent = false;
05932 parserData->idxAttribute = -1;
05933 }
05934 break;
05935
05936 case 730:
05937
05938 {
05939 parserData->idxArray[parserData->kounter] = parserData->idxAttribute;
05940 }
05941 break;
05942
05943 case 733:
05944
05945 {
05946 if (parserData->idxAttribute >= 0)
05947 osolerror (NULL, osoption, parserData, osglData, "objective index must be negative");
05948 if (osoption->optimization->numberOfObjectives >= 0)
05949 {
05950 if (parserData->idxAttribute < -osoption->optimization->numberOfObjectives)
05951 osolerror (NULL, osoption, parserData, osglData, "objective index exceeds limit");
05952 };
05953 }
05954 break;
05955
05956 case 734:
05957
05958 {
05959 if (parserData->valueAttribute == "")
05960 osolerror (NULL, osoption, parserData, osglData, "expected an integer or floating point value");
05961 parserData->valArray[parserData->kounter] = os_strtod((parserData->valueAttribute).c_str(), NULL);
05962 }
05963 break;
05964
05965 case 738:
05966
05967 {
05968 if (osoption->setInitObjBounds(parserData->numberOfObj, parserData->idxArray, parserData->lbValArray, parserData->ubValArray) == false)
05969 osolerror (NULL, osoption, parserData, osglData, "set <initialObjectiveBounds> failed");
05970 delete[] parserData->idxArray;
05971 delete[] parserData->lbValArray;
05972 delete[] parserData->ubValArray;
05973 parserData->idxArray = NULL;
05974 parserData->lbValArray = NULL;
05975 parserData->ubValArray = NULL;
05976 }
05977 break;
05978
05979 case 739:
05980
05981 {
05982 parserData->numberOfObjAttributePresent = false;
05983 }
05984 break;
05985
05986 case 740:
05987
05988 {
05989 parserData->kounter = 0;
05990 parserData->idxArray = new int[parserData->numberOfObj];
05991 parserData->lbValArray = new double[parserData->numberOfObj];
05992 parserData->ubValArray = new double[parserData->numberOfObj];
05993 }
05994 break;
05995
05996 case 741:
05997
05998 {
05999 if (parserData->numberOfObj > 0)
06000 osolerror(NULL, NULL, parserData, osglData, "expected at least one <obj> element");
06001 }
06002 break;
06003
06004 case 742:
06005
06006 {
06007 if (parserData->kounter != parserData->numberOfObj)
06008 osolerror(NULL, NULL, parserData, osglData, "fewer <obj> elements than specified");
06009 }
06010 break;
06011
06012 case 749:
06013
06014 {
06015 parserData->kounter++;
06016 }
06017 break;
06018
06019 case 750:
06020
06021 {
06022 if (parserData->kounter >= parserData->numberOfObj)
06023 osolerror(NULL, NULL, parserData, osglData, "more <obj> elements than specified");
06024 parserData->idxAttributePresent = false;
06025 parserData->lbValueAttributePresent = false;
06026 parserData->ubValueAttributePresent = false;
06027 parserData->idxAttribute = -1;
06028 parserData->lbValueAttribute = "-INF";
06029 parserData->ubValueAttribute = "INF";
06030 }
06031 break;
06032
06033 case 751:
06034
06035 {
06036 parserData->idxArray[parserData->kounter] = parserData->idxAttribute;
06037 parserData->lbValArray[parserData->kounter] = os_strtod((parserData->lbValueAttribute).c_str(), NULL);
06038 parserData->ubValArray[parserData->kounter] = os_strtod((parserData->ubValueAttribute).c_str(), NULL);
06039 }
06040 break;
06041
06042 case 754:
06043
06044 {
06045 if (parserData->idxAttribute >= 0)
06046 osolerror (NULL, osoption, parserData, osglData, "objective index must be nonnegative");
06047 if (osoption->optimization->numberOfObjectives >= 0)
06048 {
06049 if (parserData->idxAttribute < -osoption->optimization->numberOfVariables)
06050 osolerror (NULL, osoption, parserData, osglData, "objective index exceeds limit");
06051 };
06052 }
06053 break;
06054
06055 case 755:
06056
06057 {
06058 if (parserData->lbValueAttribute == "")
06059 osolerror (NULL, osoption, parserData, osglData, "expected an integer or floating point value");
06060 }
06061 break;
06062
06063 case 756:
06064
06065 {
06066 if (parserData->ubValueAttribute == "")
06067 osolerror (NULL, osoption, parserData, osglData, "expected an integer or floating point value");
06068 }
06069 break;
06070
06071 case 761:
06072
06073 {
06074 osoption->optimization->objectives->initialBasisStatus = new BasisStatus();
06075 }
06076 break;
06077
06078 case 768:
06079
06080 {
06081 if (osoption->setInitBasisStatus(ENUM_PROBLEM_COMPONENT_objectives, ENUM_BASIS_STATUS_basic, osglData->osglIntArray, osglData->osglNumberOfEl) != true)
06082 osolerror(NULL, NULL, parserData, osglData, "set objectives basic failed");
06083 delete[] osglData->osglIntArray;
06084 osglData->osglIntArray = NULL;
06085 }
06086 break;
06087
06088 case 769:
06089
06090 {
06091 osglData->osglNumberOfEl = 0;
06092 osglData->osglNumberOfElPresent= false;
06093 }
06094 break;
06095
06096 case 770:
06097
06098 {
06099 osglData->osglCounter = 0;
06100 osglData->osglNumberOfEl = parserData->numberOf;
06101 osglData->osglIntArray = new int[parserData->numberOf];
06102 }
06103 break;
06104
06105 case 777:
06106
06107 {
06108 if (osoption->setInitBasisStatus(ENUM_PROBLEM_COMPONENT_objectives, ENUM_BASIS_STATUS_atLower, osglData->osglIntArray, osglData->osglNumberOfEl) != true)
06109 osolerror(NULL, NULL, parserData, osglData, "set objectives atLower failed");
06110 delete[] osglData->osglIntArray;
06111 osglData->osglIntArray = NULL;
06112 }
06113 break;
06114
06115 case 778:
06116
06117 {
06118 osglData->osglNumberOfEl = 0;
06119 osglData->osglNumberOfElPresent= false;
06120 }
06121 break;
06122
06123 case 779:
06124
06125 {
06126 osglData->osglCounter = 0;
06127 osglData->osglNumberOfEl = parserData->numberOf;
06128 osglData->osglIntArray = new int[parserData->numberOf];
06129 }
06130 break;
06131
06132 case 786:
06133
06134 {
06135 if (osoption->setInitBasisStatus(ENUM_PROBLEM_COMPONENT_objectives, ENUM_BASIS_STATUS_atUpper, osglData->osglIntArray, osglData->osglNumberOfEl) != true)
06136 osolerror(NULL, NULL, parserData, osglData, "set objectives atUpper failed");
06137 delete[] osglData->osglIntArray;
06138 osglData->osglIntArray = NULL;
06139 }
06140 break;
06141
06142 case 787:
06143
06144 {
06145 osglData->osglNumberOfEl = 0;
06146 osglData->osglNumberOfElPresent= false;
06147 }
06148 break;
06149
06150 case 788:
06151
06152 {
06153 osglData->osglCounter = 0;
06154 osglData->osglNumberOfEl = parserData->numberOf;
06155 osglData->osglIntArray = new int[parserData->numberOf];
06156 }
06157 break;
06158
06159 case 795:
06160
06161 {
06162 if (osoption->setInitBasisStatus(ENUM_PROBLEM_COMPONENT_objectives, ENUM_BASIS_STATUS_isFree, osglData->osglIntArray, osglData->osglNumberOfEl) != true)
06163 osolerror(NULL, NULL, parserData, osglData, "set objectives isFree failed");
06164 delete[] osglData->osglIntArray;
06165 osglData->osglIntArray = NULL;
06166 }
06167 break;
06168
06169 case 796:
06170
06171 {
06172 osglData->osglNumberOfEl = 0;
06173 osglData->osglNumberOfElPresent= false;
06174 }
06175 break;
06176
06177 case 797:
06178
06179 {
06180 osglData->osglCounter = 0;
06181 osglData->osglNumberOfEl = parserData->numberOf;
06182 osglData->osglIntArray = new int[parserData->numberOf];
06183 }
06184 break;
06185
06186 case 804:
06187
06188 {
06189 if (osoption->setInitBasisStatus(ENUM_PROBLEM_COMPONENT_objectives, ENUM_BASIS_STATUS_superbasic, osglData->osglIntArray, osglData->osglNumberOfEl) != true)
06190 osolerror(NULL, NULL, parserData, osglData, "set objectives superbasic failed");
06191 delete[] osglData->osglIntArray;
06192 osglData->osglIntArray = NULL;
06193 }
06194 break;
06195
06196 case 805:
06197
06198 {
06199 osglData->osglNumberOfEl = 0;
06200 osglData->osglNumberOfElPresent= false;
06201 }
06202 break;
06203
06204 case 806:
06205
06206 {
06207 osglData->osglCounter = 0;
06208 osglData->osglNumberOfEl = parserData->numberOf;
06209 osglData->osglIntArray = new int[parserData->numberOf];
06210 }
06211 break;
06212
06213 case 813:
06214
06215 {
06216 if (osoption->setInitBasisStatus(ENUM_PROBLEM_COMPONENT_objectives, ENUM_BASIS_STATUS_unknown, osglData->osglIntArray, osglData->osglNumberOfEl) != true)
06217 osolerror(NULL, NULL, parserData, osglData, "set objectives unknown failed");
06218 delete[] osglData->osglIntArray;
06219 osglData->osglIntArray = NULL;
06220 }
06221 break;
06222
06223 case 814:
06224
06225 {
06226 osglData->osglNumberOfEl = 0;
06227 osglData->osglNumberOfElPresent= false;
06228 }
06229 break;
06230
06231 case 815:
06232
06233 {
06234 osglData->osglCounter = 0;
06235 osglData->osglNumberOfEl = parserData->numberOf;
06236 osglData->osglIntArray = new int[parserData->numberOf];
06237 }
06238 break;
06239
06240 case 823:
06241
06242 {
06243 parserData->iOther++;
06244 }
06245 break;
06246
06247 case 824:
06248
06249 {
06250 if (parserData->iOther >= parserData->numberOfOtherObjectiveOptions)
06251 osolerror(NULL, NULL, parserData, osglData, "more <otherObjectiveOptions> than specified");
06252 parserData->numberOfObjAttributePresent = false;
06253 parserData->numberOfObj = 0;
06254 parserData->numberOfEnumerationsAttributePresent = false;
06255 parserData->numberOfEnumerations = 0;
06256 parserData->nameAttributePresent = false;
06257 parserData->valueAttributePresent = false;
06258 parserData->valueAttribute = "";
06259 parserData->solverAttributePresent = false;
06260 parserData->solverAttribute = "";
06261 parserData->categoryAttributePresent = false;
06262 parserData->categoryAttribute = "";
06263 parserData->typeAttributePresent = false;
06264 parserData->typeAttribute = "";
06265 parserData->descriptionAttributePresent = false;
06266 parserData->descriptionAttribute = "";
06267 parserData->otherOptionType = ENUM_PROBLEM_COMPONENT_objectives;
06268 }
06269 break;
06270
06271 case 825:
06272
06273 { if(!parserData->nameAttributePresent)
06274 osolerror(NULL, NULL, parserData, osglData, "<other> element requires name attribute");
06275 if (!osoption->setOtherObjectiveOptionAttributes(
06276 parserData->iOther,
06277 parserData->numberOfObj,
06278 parserData->numberOfEnumerations,
06279 parserData->nameAttribute,
06280 parserData->valueAttribute,
06281 parserData->solverAttribute,
06282 parserData->categoryAttribute,
06283 parserData->typeAttribute,
06284 parserData->descriptionAttribute) )
06285 osolerror(NULL, NULL, parserData, osglData, "<other> element could not be initialed");
06286 }
06287 break;
06288
06289 case 828:
06290
06291 {
06292 parserData->kounter = 0;
06293 }
06294 break;
06295
06296 case 829:
06297
06298 {
06299 parserData->kounter = 0;
06300 }
06301 break;
06302
06303 case 845:
06304
06305 {
06306 if (!osoption->setOtherObjectiveOptionObj(
06307 parserData->iOther,
06308 parserData->kounter,
06309 parserData->idxAttribute,
06310 parserData->valueAttribute,
06311 parserData->lbValueAttribute,
06312 parserData->ubValueAttribute) )
06313 osolerror(NULL, NULL, parserData, osglData, "set other objective option <obj> element failed");
06314 parserData->kounter++;
06315 }
06316 break;
06317
06318 case 846:
06319
06320 {
06321 if (parserData->kounter >= parserData->numberOfObj)
06322 osolerror(NULL, NULL, parserData, osglData, "more <obj> elements than specified");
06323 parserData->idxAttributePresent = false;
06324 parserData->idxAttribute = -1;
06325 parserData->valueAttributePresent = false;
06326 parserData->valueAttribute = "";
06327 parserData->lbValueAttributePresent = false;
06328 parserData->lbValueAttribute = "";
06329 parserData->ubValueAttributePresent = false;
06330 parserData->ubValueAttribute = "";
06331 }
06332 break;
06333
06334 case 847:
06335
06336 {
06337 parserData->idxArray[parserData->kounter] = parserData->idxAttribute;
06338 parserData->valueString[parserData->kounter] = parserData->valueAttribute;
06339 parserData->lbValueString[parserData->kounter] = parserData->lbValueAttribute;
06340 parserData->ubValueString[parserData->kounter] = parserData->ubValueAttribute;
06341 }
06342 break;
06343
06344 case 850:
06345
06346 {
06347 if (parserData->idxAttribute >= 0)
06348 osolerror (NULL, osoption, parserData, osglData, "objective index must be negative");
06349 if (osoption->optimization->numberOfObjectives >= 0)
06350 {
06351 if (parserData->idxAttribute < -osoption->optimization->numberOfObjectives)
06352 osolerror (NULL, osoption, parserData, osglData, "objective index exceeds limit");
06353 };
06354 }
06355 break;
06356
06357 case 859:
06358
06359 {
06360 parserData->numberOfOtherConstraintOptions = 0;
06361 osoption->optimization->constraints = new ConstraintOption();
06362 }
06363 break;
06364
06365 case 860:
06366
06367 {
06368 if (osoption->setNumberOfOtherConstraintOptions(parserData->numberOfOtherConstraintOptions) == false)
06369 osolerror(NULL, NULL, parserData, osglData, "setNumberOfOtherConstraintOptions failed");
06370 parserData->iOther = 0;
06371 }
06372 break;
06373
06374 case 862:
06375
06376 {
06377 parserData->numberOfOtherConstraintOptions = parserData->tempInt;
06378 }
06379 break;
06380
06381 case 869:
06382
06383 {
06384 if (osoption->setInitConValues(parserData->numberOfCon, parserData->idxArray, parserData->valArray) == false)
06385 osolerror (NULL, osoption, parserData, osglData, "set <initialConstraintValues> failed");
06386 delete[] parserData->idxArray;
06387 delete[] parserData->valArray;
06388 parserData->idxArray = NULL;
06389 parserData->valArray = NULL;
06390 }
06391 break;
06392
06393 case 870:
06394
06395 {
06396 parserData->numberOfConAttributePresent = false;
06397 }
06398 break;
06399
06400 case 871:
06401
06402 {
06403 parserData->kounter = 0;
06404 parserData->idxArray = new int[parserData->numberOfCon];
06405 parserData->valArray = new double[parserData->numberOfCon];
06406 }
06407 break;
06408
06409 case 872:
06410
06411 {
06412 if (parserData->numberOfCon > 0)
06413 osolerror(NULL, NULL, parserData, osglData, "expected at least one <con element");
06414 }
06415 break;
06416
06417 case 873:
06418
06419 {
06420 if (parserData->kounter > parserData->numberOfCon)
06421 osolerror(NULL, NULL, parserData, osglData, "fewer <con> elements than specified");
06422 }
06423 break;
06424
06425 case 880:
06426
06427 {
06428 parserData->kounter++;
06429 }
06430 break;
06431
06432 case 881:
06433
06434 {
06435 if (parserData->kounter >= parserData->numberOfCon)
06436 osolerror(NULL, NULL, parserData, osglData, "more <con> elements than specified");
06437 parserData->idxAttributePresent = false;
06438 parserData->valueAttributePresent = false;
06439 }
06440 break;
06441
06442 case 884:
06443
06444 {
06445 if (parserData->idxAttribute < 0)
06446 osolerror (NULL, osoption, parserData, osglData, "constraint index must be nonnegative");
06447 if (osoption->optimization->numberOfConstraints >= 0)
06448 {
06449 if (parserData->idxAttribute >= osoption->optimization->numberOfConstraints)
06450 osolerror (NULL, osoption, parserData, osglData, "constraint index exceeds upper limit");
06451 };
06452 parserData->idxArray[parserData->kounter] = parserData->idxAttribute;
06453 }
06454 break;
06455
06456 case 885:
06457
06458 {
06459 if (parserData->valueAttribute == "")
06460 osolerror (NULL, osoption, parserData, osglData, "expected an integer or floating point value");
06461 parserData->valArray[parserData->kounter] = os_strtod((parserData->valueAttribute).c_str(), NULL);
06462 }
06463 break;
06464
06465 case 889:
06466
06467 {
06468 if (osoption->setInitDualValues(parserData->numberOfCon, parserData->idxArray, parserData->lbValArray, parserData->ubValArray) == false)
06469 osolerror (NULL, osoption, parserData, osglData, "set <initialConstraintValues> failed");
06470 delete[] parserData->idxArray;
06471 delete[] parserData->lbValArray;
06472 delete[] parserData->ubValArray;
06473 parserData->idxArray = NULL;
06474 parserData->lbValArray = NULL;
06475 parserData->ubValArray = NULL;
06476 }
06477 break;
06478
06479 case 890:
06480
06481 {
06482 parserData->numberOfConAttributePresent = false;
06483 }
06484 break;
06485
06486 case 891:
06487
06488 {
06489 parserData->kounter = 0;
06490 parserData->idxArray = new int[parserData->numberOfCon];
06491 parserData->lbValArray = new double[parserData->numberOfCon];
06492 parserData->ubValArray = new double[parserData->numberOfCon];
06493 }
06494 break;
06495
06496 case 892:
06497
06498 {
06499 if (parserData->numberOfCon > 0)
06500 osolerror(NULL, NULL, parserData, osglData, "expected at least one <con> element");
06501 }
06502 break;
06503
06504 case 893:
06505
06506 {
06507 if (parserData->kounter != parserData->numberOfCon)
06508 osolerror(NULL, NULL, parserData, osglData, "fewer <con> elements than specified");
06509 }
06510 break;
06511
06512 case 900:
06513
06514 {
06515 parserData->kounter++;
06516 }
06517 break;
06518
06519 case 901:
06520
06521 {
06522 if (parserData->kounter >= parserData->numberOfCon)
06523 osolerror(NULL, NULL, parserData, osglData, "more <con> elements than specified");
06524 parserData->idxAttributePresent = false;
06525 parserData->lbValueAttributePresent = false;
06526 parserData->ubValueAttributePresent = false;
06527 parserData->lbDualValue = 0;
06528 parserData->ubDualValue = 0;
06529 }
06530 break;
06531
06532 case 902:
06533
06534 {
06535 parserData->lbValArray[parserData->kounter] = parserData->lbDualValue;
06536 parserData->ubValArray[parserData->kounter] = parserData->ubDualValue;
06537 }
06538 break;
06539
06540 case 905:
06541
06542 {
06543 if (parserData->idxAttribute < 0)
06544 osolerror (NULL, osoption, parserData, osglData, "constraint index must be nonnegative");
06545 if (osoption->optimization->numberOfConstraints >= 0)
06546 {
06547 if (parserData->idxAttribute >= osoption->optimization->numberOfConstraints)
06548 osolerror (NULL, osoption, parserData, osglData, "constraint index exceeds upper limit");
06549 };
06550 parserData->idxArray[parserData->kounter] = parserData->idxAttribute;
06551 }
06552 break;
06553
06554 case 912:
06555
06556 {
06557 osoption->optimization->constraints->initialBasisStatus = new BasisStatus();
06558 }
06559 break;
06560
06561 case 919:
06562
06563 {
06564 if (osoption->setInitBasisStatus(ENUM_PROBLEM_COMPONENT_constraints, ENUM_BASIS_STATUS_basic, osglData->osglIntArray, osglData->osglNumberOfEl) != true)
06565 osolerror(NULL, NULL, parserData, osglData, "set slacks basic failed");
06566 delete[] osglData->osglIntArray;
06567 osglData->osglIntArray = NULL;
06568 }
06569 break;
06570
06571 case 920:
06572
06573 {
06574 osglData->osglNumberOfEl = 0;
06575 osglData->osglNumberOfElPresent= false;
06576 }
06577 break;
06578
06579 case 921:
06580
06581 {
06582 osglData->osglCounter = 0;
06583 osglData->osglNumberOfEl = parserData->numberOf;
06584 osglData->osglIntArray = new int[parserData->numberOf];
06585 }
06586 break;
06587
06588 case 928:
06589
06590 {
06591 if (osoption->setInitBasisStatus(ENUM_PROBLEM_COMPONENT_constraints, ENUM_BASIS_STATUS_atLower, osglData->osglIntArray, osglData->osglNumberOfEl) != true)
06592 osolerror(NULL, NULL, parserData, osglData, "set slacks atLower failed");
06593 delete[] osglData->osglIntArray;
06594 osglData->osglIntArray = NULL;
06595 }
06596 break;
06597
06598 case 929:
06599
06600 {
06601 osglData->osglNumberOfEl = 0;
06602 osglData->osglNumberOfElPresent= false;
06603 }
06604 break;
06605
06606 case 930:
06607
06608 {
06609 osglData->osglCounter = 0;
06610 osglData->osglNumberOfEl = parserData->numberOf;
06611 osglData->osglIntArray = new int[parserData->numberOf];
06612 }
06613 break;
06614
06615 case 937:
06616
06617 {
06618 if (osoption->setInitBasisStatus(ENUM_PROBLEM_COMPONENT_constraints, ENUM_BASIS_STATUS_atUpper, osglData->osglIntArray, osglData->osglNumberOfEl) != true)
06619 osolerror(NULL, NULL, parserData, osglData, "set slacks atUpper failed");
06620 delete[] osglData->osglIntArray;
06621 osglData->osglIntArray = NULL;
06622 }
06623 break;
06624
06625 case 938:
06626
06627 {
06628 osglData->osglNumberOfEl = 0;
06629 osglData->osglNumberOfElPresent= false;
06630 }
06631 break;
06632
06633 case 939:
06634
06635 {
06636 osglData->osglCounter = 0;
06637 osglData->osglNumberOfEl = parserData->numberOf;
06638 osglData->osglIntArray = new int[parserData->numberOf];
06639 }
06640 break;
06641
06642 case 946:
06643
06644 {
06645 if (osoption->setInitBasisStatus(ENUM_PROBLEM_COMPONENT_constraints, ENUM_BASIS_STATUS_isFree, osglData->osglIntArray, osglData->osglNumberOfEl) != true)
06646 osolerror(NULL, NULL, parserData, osglData, "set slacks isFree failed");
06647 delete[] osglData->osglIntArray;
06648 osglData->osglIntArray = NULL;
06649 }
06650 break;
06651
06652 case 947:
06653
06654 {
06655 osglData->osglNumberOfEl = 0;
06656 osglData->osglNumberOfElPresent= false;
06657 }
06658 break;
06659
06660 case 948:
06661
06662 {
06663 osglData->osglCounter = 0;
06664 osglData->osglNumberOfEl = parserData->numberOf;
06665 osglData->osglIntArray = new int[parserData->numberOf];
06666 }
06667 break;
06668
06669 case 955:
06670
06671 {
06672 if (osoption->setInitBasisStatus(ENUM_PROBLEM_COMPONENT_constraints, ENUM_BASIS_STATUS_superbasic, osglData->osglIntArray, osglData->osglNumberOfEl) != true)
06673 osolerror(NULL, NULL, parserData, osglData, "set variables superbasic failed");
06674 delete[] osglData->osglIntArray;
06675 osglData->osglIntArray = NULL;
06676 }
06677 break;
06678
06679 case 956:
06680
06681 {
06682 osglData->osglNumberOfEl = 0;
06683 osglData->osglNumberOfElPresent= false;
06684 }
06685 break;
06686
06687 case 957:
06688
06689 {
06690 osglData->osglCounter = 0;
06691 osglData->osglNumberOfEl = parserData->numberOf;
06692 osglData->osglIntArray = new int[parserData->numberOf];
06693 }
06694 break;
06695
06696 case 964:
06697
06698 {
06699 if (osoption->setInitBasisStatus(ENUM_PROBLEM_COMPONENT_constraints, ENUM_BASIS_STATUS_unknown, osglData->osglIntArray, osglData->osglNumberOfEl) != true)
06700 osolerror(NULL, NULL, parserData, osglData, "set slacks unknown failed");
06701 delete[] osglData->osglIntArray;
06702 osglData->osglIntArray = NULL;
06703 }
06704 break;
06705
06706 case 965:
06707
06708 {
06709 osglData->osglNumberOfEl = 0;
06710 osglData->osglNumberOfElPresent= false;
06711 }
06712 break;
06713
06714 case 966:
06715
06716 {
06717 osglData->osglCounter = 0;
06718 osglData->osglNumberOfEl = parserData->numberOf;
06719 osglData->osglIntArray = new int[parserData->numberOf];
06720 }
06721 break;
06722
06723 case 974:
06724
06725 {
06726 parserData->iOther++;
06727 }
06728 break;
06729
06730 case 975:
06731
06732 {
06733 if (parserData->iOther >= parserData->numberOfOtherConstraintOptions)
06734 osolerror(NULL, NULL, parserData, osglData, "more <otherConstraintOptions> than specified");
06735 parserData->numberOfConAttributePresent = false;
06736 parserData->numberOfCon = 0;
06737 parserData->numberOfEnumerationsAttributePresent = false;
06738 parserData->numberOfEnumerations = 0;
06739 parserData->nameAttributePresent = false;
06740 parserData->valueAttributePresent = false;
06741 parserData->valueAttribute = "";
06742 parserData->solverAttributePresent = false;
06743 parserData->solverAttribute = "";
06744 parserData->categoryAttributePresent = false;
06745 parserData->categoryAttribute = "";
06746 parserData->typeAttributePresent = false;
06747 parserData->typeAttribute = "";
06748 parserData->descriptionAttributePresent = false;
06749 parserData->descriptionAttribute = "";
06750 parserData->otherOptionType = ENUM_PROBLEM_COMPONENT_constraints;
06751 }
06752 break;
06753
06754 case 976:
06755
06756 {
06757 if(!parserData->nameAttributePresent)
06758 osolerror(NULL, NULL, parserData, osglData, "<other> element requires name attribute");
06759 if (!osoption->setOtherConstraintOptionAttributes(
06760 parserData->iOther,
06761 parserData->numberOfCon,
06762 parserData->numberOfEnumerations,
06763 parserData->nameAttribute,
06764 parserData->valueAttribute,
06765 parserData->solverAttribute,
06766 parserData->categoryAttribute,
06767 parserData->typeAttribute,
06768 parserData->descriptionAttribute) )
06769 osolerror(NULL, NULL, parserData, osglData, "<other> element could not be initialed");
06770 }
06771 break;
06772
06773 case 979:
06774
06775 {
06776 parserData->kounter = 0;
06777 }
06778 break;
06779
06780 case 980:
06781
06782 {
06783 parserData->kounter = 0;
06784 }
06785 break;
06786
06787 case 996:
06788
06789 {
06790 if (!osoption->setOtherConstraintOptionCon(
06791 parserData->iOther,
06792 parserData->kounter,
06793 parserData->idxAttribute,
06794 parserData->valueAttribute,
06795 parserData->lbValueAttribute,
06796 parserData->ubValueAttribute) )
06797 osolerror(NULL, NULL, parserData, osglData, "set other constraint option <con> element failed");
06798 parserData->kounter++;
06799 }
06800 break;
06801
06802 case 997:
06803
06804 {
06805 if (parserData->kounter >= parserData->numberOfCon)
06806 osolerror(NULL, NULL, parserData, osglData, "more <con> elements than specified");
06807 parserData->idxAttributePresent = false;
06808 parserData->valueAttributePresent = false;
06809 parserData->valueAttribute = "";
06810 parserData->lbValueAttributePresent = false;
06811 parserData->lbValueAttribute = "";
06812 parserData->ubValueAttributePresent = false;
06813 parserData->ubValueAttribute = "";
06814 }
06815 break;
06816
06817 case 1001:
06818
06819 {
06820 if (parserData->idxAttribute < 0)
06821 osolerror (NULL, osoption, parserData, osglData, "constraint index must be nonnegative");
06822 if (osoption->optimization->numberOfConstraints >= 0)
06823 {
06824 if (parserData->idxAttribute >= osoption->optimization->numberOfConstraints)
06825 osolerror (NULL, osoption, parserData, osglData, "constraint index exceeds upper limit");
06826 };
06827 }
06828 break;
06829
06830 case 1011:
06831
06832 {
06833 if (!osoption->setNumberOfSolverOptions(parserData->numberOfSolverOptions) )
06834 osolerror( NULL, osoption, parserData, osglData, "setNumberOfSolverOptions failed");
06835 parserData->iOption = 0;
06836 }
06837 break;
06838
06839 case 1012:
06840
06841 {
06842 if (parserData->numberOfSolverOptions > 0)
06843 osolerror(NULL, NULL, parserData, osglData, "expected at least one <solverOption> element");
06844 }
06845 break;
06846
06847 case 1013:
06848
06849 {
06850 if (parserData->iOption != parserData->numberOfSolverOptions)
06851 osolerror(NULL, NULL, parserData, osglData, "fewer <solverOption> elements than specified");
06852 }
06853 break;
06854
06855 case 1018:
06856
06857 {
06858 if (!osoption->setSolverOptionContent(
06859 parserData->iOption,
06860 parserData->numberOfItems,
06861 parserData->nameAttribute,
06862 parserData->valueAttribute,
06863 parserData->solverAttribute,
06864 parserData->categoryAttribute,
06865 parserData->typeAttribute,
06866 parserData->descriptionAttribute,
06867 parserData->itemList) )
06868 osolerror(NULL, NULL, parserData, osglData, "setSolverOptionContent failed");
06869 if (parserData->numberOfItems > 0)
06870 delete[] parserData->itemList;
06871 parserData->itemList = NULL;
06872 parserData->iOption++;
06873 }
06874 break;
06875
06876 case 1019:
06877
06878 {
06879 parserData->nameAttributePresent = false;
06880 parserData->valueAttributePresent = false;
06881 parserData->solverAttributePresent = false;
06882 parserData->categoryAttributePresent = false;
06883 parserData->typeAttributePresent = false;
06884 parserData->descriptionAttributePresent = false;
06885 parserData->numberOfItemsPresent = false;
06886 parserData->valueAttribute = "";
06887 parserData->solverAttribute = "";
06888 parserData->categoryAttribute = "";
06889 parserData->typeAttribute = "";
06890 parserData->descriptionAttribute = "";
06891 parserData->numberOfItems = 0;
06892 parserData->kounter = 0;
06893 }
06894 break;
06895
06896 case 1020:
06897
06898 {
06899 if (!parserData->nameAttributePresent)
06900 osolerror (NULL, osoption, parserData, osglData, "name attribute must be present");
06901 }
06902 break;
06903
06904 case 1029:
06905
06906 {
06907 parserData->itemList = new std::string[parserData->numberOfItems];
06908 }
06909 break;
06910
06911 case 1030:
06912
06913 { if (parserData->numberOfItems > 0)
06914 osolerror(NULL, NULL, parserData, osglData, "expected at least one <item> element");
06915 }
06916 break;
06917
06918 case 1031:
06919
06920 { if (parserData->kounter != parserData->numberOfItems)
06921 osolerror(NULL, NULL, parserData, osglData, "fewer <item> elements than specified");
06922 }
06923 break;
06924
06925 case 1038:
06926
06927 {
06928 parserData->itemList[parserData->kounter] = parserData->itemContent;
06929 parserData->kounter++;
06930 }
06931 break;
06932
06933 case 1039:
06934
06935 {
06936 if (parserData->kounter >= parserData->numberOfItems)
06937 osolerror(NULL, NULL, parserData, osglData, "more <item> elements than specified");
06938 parserData->itemContent = "";
06939 }
06940 break;
06941
06942 case 1044:
06943
06944 {
06945 if (parserData->kounter >= parserData->numberOfItems)
06946 osolerror(NULL, NULL, parserData, osglData, "more <item> elements than specified");
06947 parserData->itemContent = (yyvsp[(1) - (1)].sval);
06948 free((yyvsp[(1) - (1)].sval));
06949 }
06950 break;
06951
06952 case 1045:
06953
06954 {
06955 if (!parserData->pathPairFromPresent)
06956 osolerror (NULL, osoption, parserData, osglData, "\"from\" attribute must be present");
06957 if (!parserData->pathPairToPresent)
06958 osolerror (NULL, osoption, parserData, osglData, "\"to\" attribute must be present");
06959 parserData->kounter++;
06960 }
06961 break;
06962
06963 case 1046:
06964
06965 {
06966 if (parserData->kounter >= parserData->numberOfPathPairs)
06967 osolerror (NULL, osoption, parserData, osglData, "too many path pairs");
06968 parserData->pathPairFromPresent = false;
06969 parserData->pathPairToPresent = false;
06970 parserData->pathPairMakeCopyPresent = false;
06971 parserData->pathPairMakeCopy = false;
06972 }
06973 break;
06974
06975 case 1047:
06976
06977 {
06978 parserData->makeCopy[parserData->kounter] = parserData->pathPairMakeCopy;
06979 }
06980 break;
06981
06982 case 1053:
06983
06984 {
06985 if (parserData->pathPairFromPresent)
06986 osolerror( NULL, osoption, parserData, osglData, "only one \"from\" attribute allowed");
06987 parserData->pathPairFromPresent = true;
06988 parserData->fromPaths[parserData->kounter] = (yyvsp[(2) - (3)].sval);
06989 free((yyvsp[(2) - (3)].sval));
06990 }
06991 break;
06992
06993 case 1054:
06994
06995 {
06996 if (parserData->pathPairToPresent)
06997 osolerror( NULL, osoption, parserData, osglData, "only one \"to\" attribute allowed");
06998 parserData->pathPairToPresent = true;
06999 parserData->toPaths[parserData->kounter] = (yyvsp[(2) - (3)].sval);
07000 free((yyvsp[(2) - (3)].sval));
07001 }
07002 break;
07003
07004 case 1055:
07005
07006 {
07007 if (parserData->pathPairMakeCopyPresent)
07008 osolerror( NULL, osoption, parserData, osglData, "only one \"makeCopy\" attribute allowed");
07009 parserData->pathPairMakeCopyPresent = true;
07010 parserData->pathPairMakeCopy = (strcmp((yyvsp[(2) - (3)].sval),"true") == 0);
07011 free((yyvsp[(2) - (3)].sval));
07012 }
07013 break;
07014
07015 case 1058:
07016
07017 {
07018 if (parserData->categoryAttributePresent )
07019 osolerror(NULL, NULL, parserData, osglData, "only one category attribute allowed for this element");
07020 parserData->categoryAttributePresent = true;
07021 }
07022 break;
07023
07024 case 1061:
07025
07026 {
07027 parserData->categoryAttribute = "";
07028 }
07029 break;
07030
07031 case 1062:
07032
07033 {
07034 parserData->categoryAttribute = (yyvsp[(2) - (3)].sval);
07035 free((yyvsp[(2) - (3)].sval));
07036 }
07037 break;
07038
07039 case 1063:
07040
07041 {
07042 if (parserData->descriptionAttributePresent )
07043 osolerror(NULL, NULL, parserData, osglData, "only one description attribute allowed for this element");
07044 parserData->descriptionAttributePresent = true;
07045 }
07046 break;
07047
07048 case 1066:
07049
07050 { parserData->descriptionAttribute = ""; }
07051 break;
07052
07053 case 1067:
07054
07055 {
07056 parserData->descriptionAttribute = (yyvsp[(2) - (3)].sval);
07057 free((yyvsp[(2) - (3)].sval));
07058 }
07059 break;
07060
07061 case 1068:
07062
07063 {
07064 if (parserData->groupWeightAttributePresent )
07065 osolerror(NULL, NULL, parserData, osglData, "only one groupWeight attribute allowed for this element");
07066 parserData->groupWeightAttributePresent = true;
07067 }
07068 break;
07069
07070 case 1069:
07071
07072 {
07073 parserData->groupWeight = parserData->tempVal;
07074 }
07075 break;
07076
07077 case 1070:
07078
07079 {
07080 if (parserData->idxAttributePresent )
07081 osolerror(NULL, NULL, parserData, osglData, "only one idx attribute allowed for this element");
07082 parserData->idxAttributePresent = true;
07083 }
07084 break;
07085
07086 case 1072:
07087
07088 {
07089 parserData->idxAttribute = (yyvsp[(3) - (4)].ival);
07090 }
07091 break;
07092
07093 case 1073:
07094
07095 {
07096 if (parserData->lbValueAttributePresent )
07097 osolerror(NULL, NULL, parserData, osglData, "only one lb attribute allowed for this element");
07098 parserData->lbValueAttributePresent = true;
07099 }
07100 break;
07101
07102 case 1076:
07103
07104 {
07105 parserData->lbValueAttribute = "";
07106 }
07107 break;
07108
07109 case 1077:
07110
07111 {
07112 parserData->lbValueAttribute = (yyvsp[(2) - (3)].sval);
07113 free((yyvsp[(2) - (3)].sval));
07114 }
07115 break;
07116
07117 case 1078:
07118
07119 { if (parserData->lbValueAttributePresent )
07120 osolerror(NULL, NULL, parserData, osglData, "only one lb attribute allowed for this element");
07121 parserData->lbValueAttributePresent = true;
07122 }
07123 break;
07124
07125 case 1081:
07126
07127 { parserData->lbDualValue = 0.0; }
07128 break;
07129
07130 case 1082:
07131
07132 { parserData->lbDualValue = parserData->tempVal;}
07133 break;
07134
07135 case 1083:
07136
07137 { if (parserData->nameAttributePresent )
07138 osolerror(NULL, NULL, parserData, osglData, "only one name attribute allowed for this element");
07139 parserData->nameAttributePresent = true;
07140 }
07141 break;
07142
07143 case 1086:
07144
07145 { parserData->nameAttribute = ""; }
07146 break;
07147
07148 case 1087:
07149
07150 {
07151 parserData->nameAttribute = (yyvsp[(2) - (3)].sval);
07152 free((yyvsp[(2) - (3)].sval));
07153 }
07154 break;
07155
07156 case 1088:
07157
07158 { if (parserData->solverAttributePresent )
07159 osolerror(NULL, NULL, parserData, osglData, "only one solver attribute allowed for this element");
07160 parserData->solverAttributePresent = true;
07161 }
07162 break;
07163
07164 case 1091:
07165
07166 { parserData->solverAttribute = ""; }
07167 break;
07168
07169 case 1092:
07170
07171 {
07172 parserData->solverAttribute = (yyvsp[(2) - (3)].sval);
07173 free((yyvsp[(2) - (3)].sval));
07174 }
07175 break;
07176
07177 case 1093:
07178
07179 { if (parserData->sosIdxAttributePresent )
07180 osolerror(NULL, NULL, parserData, osglData, "only one sosIdx attribute allowed for this element");
07181 parserData->sosIdxAttributePresent = true;
07182 }
07183 break;
07184
07185 case 1095:
07186
07187 {
07188 if ((yyvsp[(3) - (4)].ival) < 0)
07189 osolerror (NULL, osoption, parserData, osglData, "SOS index must be nonnegative");
07190 parserData->sosIdx = (yyvsp[(3) - (4)].ival);
07191 }
07192 break;
07193
07194 case 1096:
07195
07196 { if (parserData->typeAttributePresent )
07197 osolerror(NULL, NULL, parserData, osglData, "only one type attribute allowed for this element");
07198 parserData->typeAttributePresent = true;
07199 }
07200 break;
07201
07202 case 1099:
07203
07204 { parserData->typeAttribute = ""; }
07205 break;
07206
07207 case 1100:
07208
07209 {
07210 parserData->typeAttribute = (yyvsp[(2) - (3)].sval);
07211 free((yyvsp[(2) - (3)].sval));
07212 }
07213 break;
07214
07215 case 1101:
07216
07217 {
07218 if (parserData->ubValueAttributePresent )
07219 osolerror(NULL, NULL, parserData, osglData, "only one ub attribute allowed for this element");
07220 parserData->ubValueAttributePresent = true;
07221 }
07222 break;
07223
07224 case 1104:
07225
07226 {
07227 parserData->ubValueAttribute = "";
07228 }
07229 break;
07230
07231 case 1105:
07232
07233 {
07234 parserData->ubValueAttribute = (yyvsp[(2) - (3)].sval);
07235 free((yyvsp[(2) - (3)].sval));
07236 }
07237 break;
07238
07239 case 1106:
07240
07241 { if (parserData->ubValueAttributePresent )
07242 osolerror(NULL, NULL, parserData, osglData, "only one ub attribute allowed for this element");
07243 parserData->ubValueAttributePresent = true;
07244 }
07245 break;
07246
07247 case 1109:
07248
07249 { parserData->ubDualValue = 0.0; }
07250 break;
07251
07252 case 1110:
07253
07254 {
07255 parserData->ubDualValue = parserData->tempVal;
07256 }
07257 break;
07258
07259 case 1111:
07260
07261 { if (parserData->unitAttributePresent )
07262 osolerror(NULL, NULL, parserData, osglData, "only one unit attribute allowed for this element");
07263 parserData->unitAttributePresent = true;
07264 }
07265 break;
07266
07267 case 1114:
07268
07269 { parserData->unitAttribute = ""; }
07270 break;
07271
07272 case 1115:
07273
07274 {
07275 parserData->unitAttribute = (yyvsp[(2) - (3)].sval);
07276 free((yyvsp[(2) - (3)].sval));
07277 }
07278 break;
07279
07280 case 1116:
07281
07282 { if (parserData->valueAttributePresent )
07283 osolerror(NULL, NULL, parserData, osglData, "only one value attribute allowed for this element");
07284 parserData->valueAttributePresent = true;
07285 }
07286 break;
07287
07288 case 1119:
07289
07290 { parserData->valueAttribute = ""; }
07291 break;
07292
07293 case 1120:
07294
07295 {
07296 parserData->valueAttribute = (yyvsp[(2) - (3)].sval);
07297 free((yyvsp[(2) - (3)].sval));
07298 }
07299 break;
07300
07301 case 1121:
07302
07303 {
07304 if (parserData->numberOfConAttributePresent)
07305 osolerror(NULL, NULL, parserData, osglData, "numberOfCon attribute previously set");
07306 if ((yyvsp[(3) - (4)].ival) < 0) osolerror(NULL, NULL, parserData, osglData, "number of <con> cannot be negative");
07307 parserData->numberOfConAttributePresent = true;
07308 parserData->numberOfCon = (yyvsp[(3) - (4)].ival);
07309 }
07310 break;
07311
07312 case 1122:
07313
07314 {
07315 if (parserData->numberOfConstraintsPresent)
07316 osolerror(NULL, NULL, parserData, osglData, "numberOfConstraints attribute previously set");
07317 if ((yyvsp[(3) - (4)].ival) < 0) osolerror(NULL, NULL, parserData, osglData, "number of constraints cannot be negative");
07318 parserData->numberOfConstraintsPresent = true;
07319 parserData->tempInt = (yyvsp[(3) - (4)].ival);
07320 }
07321 break;
07322
07323 case 1123:
07324
07325 {
07326 if (osglData->osglNumberOfElPresent)
07327 osolerror(NULL, NULL, parserData, osglData, "numberOfEl attribute previously set");
07328 if ((yyvsp[(3) - (4)].ival) < 0) osolerror(NULL, NULL, parserData, osglData, "number of <el> cannot be negative");
07329 osglData->osglNumberOfElPresent = true;
07330 parserData->numberOf = (yyvsp[(3) - (4)].ival);
07331 }
07332 break;
07333
07334 case 1124:
07335
07336 {
07337 if (parserData->numberOfEnumerationsAttributePresent)
07338 osolerror(NULL, NULL, parserData, osglData, "numberOfEnumerations attribute previously set");
07339 if ((yyvsp[(3) - (4)].ival) < 0) osolerror(NULL, NULL, parserData, osglData, "number of <enumeration> elements cannot be negative");
07340 parserData->numberOfEnumerationsAttributePresent = true;
07341 parserData->numberOfEnumerations = (yyvsp[(3) - (4)].ival);
07342 }
07343 break;
07344
07345 case 1125:
07346
07347 {
07348 if (parserData->numberOfItemsPresent )
07349 osolerror(NULL, NULL, parserData, osglData, "only one numberOfItems attribute allowed");
07350 if ((yyvsp[(3) - (4)].ival) < 0) osolerror(NULL, NULL, parserData, osglData, "number of items cannot be negative");
07351 parserData->numberOfItemsPresent = true;
07352 parserData->numberOfItems = (yyvsp[(3) - (4)].ival);
07353 }
07354 break;
07355
07356 case 1126:
07357
07358 {
07359 if ((yyvsp[(3) - (4)].ival) < 0)
07360 osolerror( NULL, osoption, parserData, osglData, "Number of job IDs cannot be negative");
07361 parserData->numberOf = (yyvsp[(3) - (4)].ival);
07362 parserData->kounter = 0;
07363 parserData->jobDependencies = new std::string[(yyvsp[(3) - (4)].ival)];
07364 }
07365 break;
07366
07367 case 1127:
07368
07369 {
07370 if (parserData->numberOfObjAttributePresent)
07371 osolerror(NULL, NULL, parserData, osglData, "numberOfObj attribute previously set");
07372 if ((yyvsp[(3) - (4)].ival) < 0) osolerror(NULL, NULL, parserData, osglData, "number of <obj> cannot be negative");
07373 parserData->numberOfObjAttributePresent = true;
07374 parserData->numberOfObj = (yyvsp[(3) - (4)].ival);
07375 }
07376 break;
07377
07378 case 1128:
07379
07380 { if (parserData->numberOfObjectivesPresent)
07381 osolerror(NULL, NULL, parserData, osglData, "numberOfObjectives attribute previously set");
07382 if ((yyvsp[(3) - (4)].ival) < 0) osolerror(NULL, NULL, parserData, osglData, "number of objectives cannot be negative");
07383 parserData->numberOfObjectivesPresent = true;
07384 parserData->tempInt = (yyvsp[(3) - (4)].ival);
07385 }
07386 break;
07387
07388 case 1129:
07389
07390 {
07391 if ((yyvsp[(3) - (4)].ival) < 0) osolerror(NULL, NULL, parserData, osglData, "number of other constraint options cannot be negative");
07392 parserData->tempInt = (yyvsp[(3) - (4)].ival);
07393 }
07394 break;
07395
07396 case 1130:
07397
07398 {
07399 if ((yyvsp[(3) - (4)].ival) < 0) osolerror(NULL, NULL, parserData, osglData, "number of other objective options cannot be negative");
07400 parserData->tempInt = (yyvsp[(3) - (4)].ival);
07401 }
07402 break;
07403
07404 case 1131:
07405
07406 {
07407 if ((yyvsp[(3) - (4)].ival) < 0) osolerror(NULL, NULL, parserData, osglData, "number of other options cannot be negative");
07408 parserData->tempInt = (yyvsp[(3) - (4)].ival);
07409 }
07410 break;
07411
07412 case 1132:
07413
07414 {
07415 if ((yyvsp[(3) - (4)].ival) < 0) osolerror(NULL, NULL, parserData, osglData, "number of other variable options cannot be negative");
07416 parserData->tempInt = (yyvsp[(3) - (4)].ival);
07417 }
07418 break;
07419
07420 case 1133:
07421
07422 {
07423 if ((yyvsp[(3) - (4)].ival) < 0)
07424 osolerror( NULL, osoption, parserData, osglData, "Number of path pairs cannot be negative");
07425 parserData->numberOfPathPairs = (yyvsp[(3) - (4)].ival);
07426 parserData->kounter = 0;
07427 parserData->fromPaths = new std::string[(yyvsp[(3) - (4)].ival)];
07428 parserData->toPaths = new std::string[(yyvsp[(3) - (4)].ival)];
07429 parserData->makeCopy = new bool[(yyvsp[(3) - (4)].ival)];
07430 }
07431 break;
07432
07433 case 1134:
07434
07435 {
07436 if ((yyvsp[(3) - (4)].ival) < 0)
07437 osolerror( NULL, osoption, parserData, osglData, "Number of paths cannot be negative");
07438 parserData->numberOf = (yyvsp[(3) - (4)].ival);
07439 parserData->kounter = 0;
07440 parserData->paths = new std::string[(yyvsp[(3) - (4)].ival)];
07441 }
07442 break;
07443
07444 case 1135:
07445
07446 {
07447 if ((yyvsp[(3) - (4)].ival) < 0)
07448 osolerror( NULL, osoption, parserData, osglData, "Number of job IDs cannot be negative");
07449 parserData->numberOf = (yyvsp[(3) - (4)].ival);
07450 parserData->kounter = 0;
07451 parserData->processesToKill = new std::string[(yyvsp[(3) - (4)].ival)];
07452 }
07453 break;
07454
07455 case 1136:
07456
07457 {
07458 if ((yyvsp[(3) - (4)].ival) < 0) osolerror(NULL, NULL, parserData, osglData, "number of solver options cannot be negative");
07459 parserData->numberOfSolverOptions = (yyvsp[(3) - (4)].ival);
07460 }
07461 break;
07462
07463 case 1137:
07464
07465 {
07466 if (parserData->numberOfVarAttributePresent)
07467 osolerror(NULL, NULL, parserData, osglData, "numberOfVar attribute previously set");
07468 if ((yyvsp[(3) - (4)].ival) < 0) osolerror(NULL, NULL, parserData, osglData, "number of <var> cannot be negative");
07469 parserData->numberOfVarAttributePresent = true;
07470 parserData->numberOfVar = (yyvsp[(3) - (4)].ival);
07471 }
07472 break;
07473
07474 case 1138:
07475
07476 { if (parserData->numberOfVariablesPresent)
07477 osolerror(NULL, NULL, parserData, osglData, "numberOfVariables attribute previously set");
07478 if ((yyvsp[(3) - (4)].ival) < 0) osolerror(NULL, NULL, parserData, osglData, "number of variables cannot be negative");
07479 parserData->numberOfVariablesPresent = true;
07480 parserData->tempInt = (yyvsp[(3) - (4)].ival);
07481 }
07482 break;
07483
07484 case 1141:
07485
07486 {
07487 if (!osoption->setOtherOptionEnumeration(parserData->otherOptionType,
07488 parserData->iOther,
07489 parserData->kounter,
07490 osglData->osglNumberOfEl,
07491 parserData->valueAttribute,
07492 parserData->descriptionAttribute,
07493 osglData->osglIntArray) )
07494 osolerror(NULL, NULL, parserData, osglData, "set <other> option enumeration failed");
07495
07496 delete[] osglData->osglIntArray;
07497 osglData->osglIntArray = NULL;
07498 osglData->osglNumberOfEl = 0;
07499 parserData->kounter++;
07500 }
07501 break;
07502
07503 case 1142:
07504
07505 {
07506 if (parserData->kounter >= parserData->numberOfEnumerations)
07507 osolerror(NULL, NULL, parserData, osglData, "more <enumeration> elements than specified");
07508 osglData->osglNumberOfElPresent = false;
07509 parserData->valueAttributePresent = false;
07510 parserData->descriptionAttributePresent = false;
07511 parserData->valueAttribute = "";
07512 parserData->descriptionAttribute = "";
07513 }
07514 break;
07515
07516 case 1143:
07517
07518 { if(!osglData->osglNumberOfElPresent)
07519 osolerror(NULL, NULL, parserData, osglData, "<other> element enumeration requires numberOfEl attribute");
07520 if(!parserData->valueAttributePresent)
07521 osolerror(NULL, NULL, parserData, osglData, "<other> element enumeration requires value attribute");
07522 }
07523 break;
07524
07525 case 1146:
07526
07527 {
07528 osglData->osglCounter = 0;
07529 osglData->osglNumberOfElPresent = true;
07530 osglData->osglNumberOfEl = parserData->numberOf;
07531 osglData->osglIntArray = new int[parserData->numberOf];
07532 }
07533 break;
07534
07535 case 1154:
07536
07537 {
07538 if (osglData->osglCounter < osglData->osglNumberOfEl)
07539 osolerror(NULL, NULL, parserData, osglData, "fewer data elements than specified");
07540 }
07541 break;
07542
07543 case 1159:
07544
07545 {
07546 osglData->osglMultPresent = false;
07547 osglData->osglIncrPresent = false;
07548 osglData->osglMult = 1;
07549 osglData->osglIncr = 0;
07550 }
07551 break;
07552
07553 case 1165:
07554
07555 {
07556 if (osglData->osglCounter + osglData->osglMult > osglData->osglNumberOfEl)
07557 osolerror(NULL, NULL, parserData, osglData, "more data elements than specified");
07558 for (int i=0; i<osglData->osglMult; i++)
07559 osglData->osglIntArray[osglData->osglCounter++] = (yyvsp[(2) - (3)].ival) + i*osglData->osglIncr;
07560 }
07561 break;
07562
07563 case 1167:
07564
07565 {
07566 osglData->osglSize = (yyvsp[(3) - (4)].ival);
07567 }
07568 break;
07569
07570 case 1172:
07571
07572 {
07573 char* b64string = (yyvsp[(2) - (3)].sval);
07574 if( b64string == NULL)
07575 osolerror(NULL, NULL, parserData, osglData, "base 64 data expected");
07576 if (osglData->osglSize != sizeof(int))
07577 osolerror(NULL, NULL, parserData, osglData, "base 64 encoded with a size of int different than on this machine");
07578
07579 std::string base64decodeddata = Base64::decodeb64( b64string );
07580 int base64decodeddatalength = base64decodeddata.length();
07581 int *intvec = NULL;
07582 if ( parserData->numberOf != (base64decodeddatalength/osglData->osglSize) )
07583 osolerror(NULL, NULL, parserData, osglData, "base 64 data length does not match numberOfEl");
07584 intvec = (int*)&base64decodeddata[0];
07585 for(int i = 0; i < (base64decodeddatalength/osglData->osglSize); i++)
07586 {
07587 osglData->osglIntArray[i] = *(intvec++);
07588 }
07589
07590 free((yyvsp[(2) - (3)].sval));
07591 }
07592 break;
07593
07594 case 1173:
07595
07596 {
07597 if (osglData->osglIncrPresent)
07598 osolerror(NULL, NULL, parserData, osglData, "only one incr attribute allowed");
07599 osglData->osglIncrPresent = true;
07600 osglData->osglIncr = (yyvsp[(3) - (4)].ival);
07601 }
07602 break;
07603
07604 case 1174:
07605
07606 {
07607 if (osglData->osglMultPresent)
07608 osolerror(NULL, NULL, parserData, osglData, "only one mult attribute allowed");
07609 if ((yyvsp[(3) - (4)].ival) <= 0) osolerror(NULL, NULL, parserData, osglData, "mult must be positive");
07610 osglData->osglMultPresent = true;
07611 osglData->osglMult = (yyvsp[(3) - (4)].ival);
07612 }
07613 break;
07614
07615 case 1175:
07616
07617 {parserData->tempVal = (yyvsp[(1) - (1)].ival);}
07618 break;
07619
07620 case 1176:
07621
07622 {parserData->tempVal = (yyvsp[(1) - (1)].dval);}
07623 break;
07624
07625
07626
07627 default: break;
07628 }
07629 YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc);
07630
07631 YYPOPSTACK (yylen);
07632 yylen = 0;
07633 YY_STACK_PRINT (yyss, yyssp);
07634
07635 *++yyvsp = yyval;
07636 *++yylsp = yyloc;
07637
07638
07639
07640
07641
07642 yyn = yyr1[yyn];
07643
07644 yystate = yypgoto[yyn - YYNTOKENS] + *yyssp;
07645 if (0 <= yystate && yystate <= YYLAST && yycheck[yystate] == *yyssp)
07646 yystate = yytable[yystate];
07647 else
07648 yystate = yydefgoto[yyn - YYNTOKENS];
07649
07650 goto yynewstate;
07651
07652
07653
07654
07655
07656 yyerrlab:
07657
07658 if (!yyerrstatus)
07659 {
07660 ++yynerrs;
07661 #if ! YYERROR_VERBOSE
07662 yyerror (&yylloc, osoption, parserData, osglData, YY_("syntax error"));
07663 #else
07664 {
07665 YYSIZE_T yysize = yysyntax_error (0, yystate, yychar);
07666 if (yymsg_alloc < yysize && yymsg_alloc < YYSTACK_ALLOC_MAXIMUM)
07667 {
07668 YYSIZE_T yyalloc = 2 * yysize;
07669 if (! (yysize <= yyalloc && yyalloc <= YYSTACK_ALLOC_MAXIMUM))
07670 yyalloc = YYSTACK_ALLOC_MAXIMUM;
07671 if (yymsg != yymsgbuf)
07672 YYSTACK_FREE (yymsg);
07673 yymsg = (char *) YYSTACK_ALLOC (yyalloc);
07674 if (yymsg)
07675 yymsg_alloc = yyalloc;
07676 else
07677 {
07678 yymsg = yymsgbuf;
07679 yymsg_alloc = sizeof yymsgbuf;
07680 }
07681 }
07682
07683 if (0 < yysize && yysize <= yymsg_alloc)
07684 {
07685 (void) yysyntax_error (yymsg, yystate, yychar);
07686 yyerror (&yylloc, osoption, parserData, osglData, yymsg);
07687 }
07688 else
07689 {
07690 yyerror (&yylloc, osoption, parserData, osglData, YY_("syntax error"));
07691 if (yysize != 0)
07692 goto yyexhaustedlab;
07693 }
07694 }
07695 #endif
07696 }
07697
07698 yyerror_range[0] = yylloc;
07699
07700 if (yyerrstatus == 3)
07701 {
07702
07703
07704
07705 if (yychar <= YYEOF)
07706 {
07707
07708 if (yychar == YYEOF)
07709 YYABORT;
07710 }
07711 else
07712 {
07713 yydestruct ("Error: discarding",
07714 yytoken, &yylval, &yylloc, osoption, parserData, osglData);
07715 yychar = YYEMPTY;
07716 }
07717 }
07718
07719
07720
07721 goto yyerrlab1;
07722
07723
07724
07725
07726
07727 yyerrorlab:
07728
07729
07730
07731
07732 if ( 0)
07733 goto yyerrorlab;
07734
07735 yyerror_range[0] = yylsp[1-yylen];
07736
07737
07738 YYPOPSTACK (yylen);
07739 yylen = 0;
07740 YY_STACK_PRINT (yyss, yyssp);
07741 yystate = *yyssp;
07742 goto yyerrlab1;
07743
07744
07745
07746
07747
07748 yyerrlab1:
07749 yyerrstatus = 3;
07750
07751 for (;;)
07752 {
07753 yyn = yypact[yystate];
07754 if (yyn != YYPACT_NINF)
07755 {
07756 yyn += YYTERROR;
07757 if (0 <= yyn && yyn <= YYLAST && yycheck[yyn] == YYTERROR)
07758 {
07759 yyn = yytable[yyn];
07760 if (0 < yyn)
07761 break;
07762 }
07763 }
07764
07765
07766 if (yyssp == yyss)
07767 YYABORT;
07768
07769 yyerror_range[0] = *yylsp;
07770 yydestruct ("Error: popping",
07771 yystos[yystate], yyvsp, yylsp, osoption, parserData, osglData);
07772 YYPOPSTACK (1);
07773 yystate = *yyssp;
07774 YY_STACK_PRINT (yyss, yyssp);
07775 }
07776
07777 *++yyvsp = yylval;
07778
07779 yyerror_range[1] = yylloc;
07780
07781
07782 YYLLOC_DEFAULT (yyloc, (yyerror_range - 1), 2);
07783 *++yylsp = yyloc;
07784
07785
07786 YY_SYMBOL_PRINT ("Shifting", yystos[yyn], yyvsp, yylsp);
07787
07788 yystate = yyn;
07789 goto yynewstate;
07790
07791
07792
07793
07794
07795 yyacceptlab:
07796 yyresult = 0;
07797 goto yyreturn;
07798
07799
07800
07801
07802 yyabortlab:
07803 yyresult = 1;
07804 goto yyreturn;
07805
07806 #if !defined(yyoverflow) || YYERROR_VERBOSE
07807
07808
07809
07810 yyexhaustedlab:
07811 yyerror (&yylloc, osoption, parserData, osglData, YY_("memory exhausted"));
07812 yyresult = 2;
07813
07814 #endif
07815
07816 yyreturn:
07817 if (yychar != YYEMPTY)
07818 yydestruct ("Cleanup: discarding lookahead",
07819 yytoken, &yylval, &yylloc, osoption, parserData, osglData);
07820
07821
07822 YYPOPSTACK (yylen);
07823 YY_STACK_PRINT (yyss, yyssp);
07824 while (yyssp != yyss)
07825 {
07826 yydestruct ("Cleanup: popping",
07827 yystos[*yyssp], yyvsp, yylsp, osoption, parserData, osglData);
07828 YYPOPSTACK (1);
07829 }
07830 #ifndef yyoverflow
07831 if (yyss != yyssa)
07832 YYSTACK_FREE (yyss);
07833 #endif
07834 #if YYERROR_VERBOSE
07835 if (yymsg != yymsgbuf)
07836 YYSTACK_FREE (yymsg);
07837 #endif
07838
07839 return YYID (yyresult);
07840 }
07841
07842
07843
07844
07845
07846 void osolerror(YYLTYPE* mytype, OSOption *osoption, OSoLParserData* parserData, OSgLParserData* osglData, const char* errormsg )
07847 {
07848 std::cout << "empty osol vectors in osolerror" << std::endl;
07849 osol_empty_vectors( parserData);
07850 std::cout << "empty osgl vectors in osolerror" << std::endl;
07851 osgl_empty_vectors( osglData);
07852 std::cout << "emptied all vectors in osolerror" << std::endl;
07853 std::ostringstream outStr;
07854 std::string error = errormsg;
07855 std::cout << "error defined and assigned" << std::endl;
07856 error = "OSoL input is either not valid or well formed: " + error;
07857 outStr << error << std::endl;
07858 outStr << "Error occurred when reading: " << osolget_text ( scanner ) << std::endl;
07859 outStr << "See line number: " << osolget_lineno( scanner) << std::endl;
07860 error = outStr.str();
07861
07862
07863
07864 std::cout << "error: " << error << std::endl;
07865 std::cout << "throw error" << std::endl;
07866
07867 throw ErrorClass( error);
07868 }
07869
07870 void yygetOSOption(const char *parsestring, OSOption *osoption, OSoLParserData *parserData, OSgLParserData *osglData) throw(ErrorClass){
07871 try{
07872 osol_scan_string( parsestring, scanner);
07873 osolset_lineno (1 , scanner );
07874
07875
07876
07877 if( osolparse( osoption, parserData, osglData) != 0) {
07878
07879 throw ErrorClass( "Error parsing the OSoL file");
07880 }
07881 }
07882 catch(const ErrorClass& eclass){
07883 throw ErrorClass( eclass.errormsg);
07884 }
07885 }
07886
07887
07888 void osol_empty_vectors( OSoLParserData* parserData){
07889
07890
07891
07892
07893
07894
07895
07896
07897
07898
07899
07900
07901
07902
07903
07904
07905
07906
07907
07908
07909
07910
07911
07912
07913
07914
07915
07916
07917
07918
07919
07920
07921
07922
07923
07924
07925
07926
07927 }
07928
07929