::= [] [] [] [] [] [] [] EOF ::= FUNCTIONBLOCK LBRACE * RBRACE ::= DATABLOCK LBRACE * RBRACE ::= TRANSFORMEDDATABLOCK LBRACE * RBRACE ::= PARAMETERSBLOCK LBRACE * RBRACE ::= TRANSFORMEDPARAMETERSBLOCK LBRACE * RBRACE ::= MODELBLOCK LBRACE * RBRACE ::= GENERATEDQUANTITIESBLOCK LBRACE * RBRACE ::= IDENTIFIER | TRUNCATE | OFFSET | MULTIPLIER | LOWER | UPPER | ARRAY ::= | FUNCTIONBLOCK | DATABLOCK | PARAMETERSBLOCK | MODELBLOCK | RETURN | IF | ELSE | WHILE | FOR | IN | BREAK | CONTINUE | VOID | INT | REAL | VECTOR | ROWVECTOR | MATRIX | ORDERED | POSITIVEORDERED | SIMPLEX | UNITVECTOR | CHOLESKYFACTORCORR | CHOLESKYFACTORCOV | CORRMATRIX | COVMATRIX | PRINT | REJECT | TARGET | GETLP | PROFILE ::= LPAREN [ (COMMA )*] RPAREN ::= VOID | ::= [DATABLOCK] ::= x ::= ARRAY )> | [] ::= INT | REAL | VECTOR | ROWVECTOR | MATRIX ::= LBRACK COMMA* RBRACK ::= UNREACHABLE ::= [ASSIGN rhs] ::= ::= type_rule SEMICOLON | [] type_rule (COMMA )* SEMICOLON ::= , )> ::= , )> ::= , )> ::= INT | REAL | VECTOR LBRACK RBRACK | ROWVECTOR LBRACK RBRACK | MATRIX LBRACK COMMA RBRACK ::= INT [LABRACK RABRACK] | REAL | VECTOR LBRACK RBRACK | ROWVECTOR LBRACK RBRACK | MATRIX LBRACK COMMA RBRACK | ORDERED LBRACK RBRACK | POSITIVEORDERED LBRACK RBRACK | SIMPLEX LBRACK RBRACK | UNITVECTOR LBRACK RBRACK | CHOLESKYFACTORCORR LBRACK RBRACK | CHOLESKYFACTORCOV LBRACK [COMMA ] RBRACK | CORRMATRIX LBRACK RBRACK | COVMATRIX LBRACK RBRACK ::= [LABRACK RABRACK] | LABRACK RABRACK ::= LOWER ASSIGN COMMA UPPER ASSIGN | UPPER ASSIGN COMMA LOWER ASSIGN | LOWER ASSIGN | UPPER ASSIGN ::= OFFSET ASSIGN COMMA MULTIPLIER ASSIGN | MULTIPLIER ASSIGN COMMA OFFSET ASSIGN | OFFSET ASSIGN | MULTIPLIER ASSIGN ::= LBRACK (COMMA )* RBRACK ::= | ::= QMARK COLON | | | | LBRACK RBRACK | ::= | | | LBRACK RBRACK | | ::= INTNUMERAL | REALNUMERAL | LBRACE (COMMA )* RBRACE | LBRACK [ (COMMA )*] RBRACK | LPAREN [ (COMMA )*] RPAREN | TARGET LPAREN RPAREN | GETLP LPAREN RPAREN | LPAREN BAR [ (COMMA )*] RPAREN | LPAREN RPAREN ::= BANG | MINUS | PLUS ::= TRANSPOSE ::= | ::= PLUS | MINUS | TIMES | DIVIDE | IDIVIDE | MODULO | LDIVIDE | ELTTIMES | ELTDIVIDE | HAT | ELTPOW ::= OR | AND | EQUALS | NEQUALS | LABRACK | LEQ | RABRACK | GEQ ::= epsilon | COLON | | COLON | COLON | COLON | COMMA ::= | | COMMA ::= | LBRACK RBRACK ::= | ::= SEMICOLON | LPAREN [ (COMMA )*] RPAREN SEMICOLON | INCREMENTLOGPROB LPAREN RPAREN SEMICOLON | TILDE LPAREN [ (COMMA )*] RPAREN [] SEMICOLON | TARGET PLUSASSIGN SEMICOLON | BREAK SEMICOLON | CONTINUE SEMICOLON | PRINT LPAREN RPAREN SEMICOLON | REJECT LPAREN RPAREN SEMICOLON | RETURN SEMICOLON | RETURN SEMICOLON | SEMICOLON ::= ASSIGN | ARROWASSIGN | PLUSASSIGN | MINUSASSIGN | TIMESASSIGN | DIVIDEASSIGN | ELTTIMESASSIGN | ELTDIVIDEASSIGN ::= STRINGLITERAL ::= TRUNCATE LBRACK [] COMMA [] RBRACK ::= IF LPAREN RPAREN ELSE | IF LPAREN RPAREN | WHILE LPAREN RPAREN | FOR LPAREN IN COLON RPAREN | FOR LPAREN IN RPAREN | PROFILE LPAREN RPAREN LBRACE * RBRACE | LBRACE * RBRACE ::= | ::= |