anchor.diff:      ;
   
   blockStatement
  -    : localVariableDeclarationStatement
  +    : localVariableDeclaration ';'
       | statement
       | typeDeclaration
       ;
   
  -localVariableDeclarationStatement
  -    :  localVariableDeclaration ';'
  -    ;
  -
   localVariableDeclaration
       : variableModifier* typeType variableDeclarators
       ;
   
   statement
  -    : block
  +    : blockLabel=block
       | ASSERT expression (':' expression)? ';'
  -    | 'if' parExpression statement ('else' statement)?
  -    | 'for' '(' forControl ')' statement
  -    | 'while' parExpression statement
  -    | 'do' statement 'while' parExpression ';'
  -    | 'try' block (catchClause+ finallyBlock? | finallyBlock)
  -    | 'try' resourceSpecification block catchClause* finallyBlock?
  -    | 'switch' parExpression '{' switchBlockStatementGroup* switchLabel* '}'
  -    | 'synchronized' parExpression block
  -    | 'return' expression? ';'
  -    | 'throw' expression ';'
  -    | 'break' Identifier? ';'
  -    | 'continue' Identifier? ';'
  -    | ';'
  -    | statementExpression ';'
  -    | Identifier ':' statement
  +    | IF parExpression statement (ELSE statement)?
  +    | FOR '(' forControl ')' statement
  +    | WHILE parExpression statement
  +    | DO statement WHILE parExpression ';'
  +    | TRY block (catchClause+ finallyBlock? | finallyBlock)
  +    | TRY resourceSpecification block catchClause* finallyBlock?
  +    | SWITCH parExpression '{' switchBlockStatementGroup* switchLabel* '}'
  +    | SYNCHRONIZED parExpression block
  +    | RETURN expression? ';'
  +    | THROW expression ';'
  +    | BREAK Identifier? ';'
  +    | CONTINUE Identifier? ';'
  +    | SEMI
  +    | statementExpression=expression ';'
  +    | identifierLabel=Identifier ':' statement
       ;
   
   catchClause
  -    : 'catch' '(' variableModifier* catchType Identifier ')' block
  +    : CATCH '(' variableModifier* catchType Identifier ')' block
       ;
   
   catchType
  
positive.code:     ;
  
  arrayCreatorRest
      : '[' (   ']' ('[' ']')* arrayInitializer | expression ']' ('[' expression ']')* ('[' ']')*)
      ;
  
  classCreatorRest
  
negative.code:     ;
  
  finallyBlock
      : FINALLY block
      ;
  
  resourceSpecification
  