anchor.diff:      ;
   
   classBody
  -    : '{' declarationsAndStatements '}'
  -    -> ^(CLASS_BODY declarationsAndStatements?) //note: the ? is needed here!
  +    : '{' classDeclarationsAndStatements '}'
  +    -> ^(CLASS_BODY classDeclarationsAndStatements?) //note: the ? is needed here!
       ;
   
   extendedType
  
positive.code:       ( 
            declarationStart
          | annotationName
          | annotationArguments annotatedDeclarationStart
        )
      ;
  
  
negative.code:     ;
      
  block
      : '{' blockDeclarationsAndStatements '}'
      -> ^(BLOCK blockDeclarationsAndStatements?) //note: the first ? is needed here!
      ;
  
  blockDeclarationsAndStatements
      : 
      (
          controlStructure
        | (specificationStatementStart) => specificationStatement
        | (annotatedDeclarationStart) => annotatedDeclaration
        | (expressionStatement) => expressionStatement
      )*
      (directiveStatement | expressions)?
      ;
  
  classDeclarationsAndStatements
      : 
      (
          controlStructure
        | (specificationStatementStart) => specificationStatement
        | (annotatedDeclarationStart) => annotatedDeclaration
        | expressionStatement
      )*
      ;
  
  