// concrete: // | File // | IfStatement // | ConditionalExpression // | If:'"if"' // | LiteralExpression // | True:'"true"' // | Block // | LeftBrace:'"{"' // | ExpressionStatement // | LiteralExpression // | String:'"\"discarded\""' // | Semicolon:'";"' // | ExpressionStatement // | LiteralExpression // | Number:'"23"' // | RightBrace:'"}"' // | Else:'"else"' // | Block // | LeftBrace:'"{"' // | ExpressionStatement // | LiteralExpression // | Number:'"45"' // | RightBrace:'"}"' // if true { "discarded"; 23 } else { 45 }