anchor.diff:      | PublicKeyword | InternalKeyword | PrivateKeyword )* ;
   
   eventDefinition
  -  : 'event' identifier eventParameterList AnonymousKeyword? ';' ;
  +  : natSpec? 'event' identifier eventParameterList AnonymousKeyword? ';' ;
   
   enumValue
     : identifier ;
  
positive.code:   : identifier ( '(' expressionList? ')' )? ;
  
  functionDefinition
    : 'function' identifier? parameterList modifierList returnParameters? ( ';' | block ) ;
  
  returnParameters
    : 'returns' parameterList ;
  
negative.code:   | 'import' ('*' | identifier) ('as' identifier)? 'from' StringLiteral ';'
    | 'import' '{' importDeclaration ( ',' importDeclaration )* '}' 'from' StringLiteral ';' ;
  
  NatSpecSingleLine
    : ('///' .*? [\r\n]) + ;
  
  NatSpecMultiLine
    : '/**' .*? '*/' ;
  
  natSpec
    : NatSpecSingleLine
    | NatSpecMultiLine ;
  
  contractDefinition
    : natSpec? ( 'contract' | 'interface' | 'library' ) identifier
      ( 'is' inheritanceSpecifier (',' inheritanceSpecifier )* )?
      '{' contractPart* '}' ;
  
  