anchor.diff:      ;
   
   tryBlock
  -    : 'try' ('(' resource ')')? block
  -    -> ^(TRY_STMT resource? ^(TRY_BLOCK block))
  +    : 'try'^ ('('! resource ')'!)? block
       ;
   
   catchBlock
  -    : 'catch' '(' variable ')' block
  -    -> ^(CATCH_STMT variable ^(CATCH_BLOCK block))
  +    : 'catch'^ '('! variable ')'! block
       ;
   
   finallyBlock
  -    : 'finally' block
  -    -> ^(FINALLY_BLOCK block)
  +    : 'finally'^ block
       ;
   
   resource
  
positive.code:     ;
  
  setterDeclaration
      : 'assign' memberName block
      ;
  
  typedMethodOrAttributeDeclaration
  
negative.code: 
  typeParameter
      : ordinaryTypeParameter '...'? 
      //| '#'! dimensionalTypeParameter
      ;
  
  ordinaryTypeParameter
  