anchor.diff:  
   fragment HEX_DIGIT: [0-9a-fA-F];
   
  -// bool
  -BOOLEAN_LITERAL: 'true' | 'false';
  -
  -SHEBANG
  -   : '#!' ~'\n' // TODO
  -   ;
  +//SHEBANG
  +//   : '#!' ~'\n' // TODO
  +//   ;
   
   LIFETIME_OR_LABEL: '\'' NON_KEYWORD_IDENTIFIER;
   
  -emmmm: EOF;
  +// entry point
  +crate: innerAttribute* item* EOF;
   
   identifierOrKeyword
      : // only ascii
  
positive.code:    ;
  
  function
     : functionQualifiers 'fn' identifier generics? '(' functionParameters? ')' functionReturnType? whereClause '?'
        blockExpression
     ;
  
  
negative.code: forLifetimes: 'for' '<' lifetimeParams '>';
  
  method
     : functionQualifiers 'fn' identifier generics? '(' selfParam
     (
        ',' functionParam
     )* ','? ')' functionReturnType? whereClause? blockExpression
     ;
  
  selfParam: outerAttribute* (shorthandSelf | typedSelf);
  shorthandSelf: ('&' lifetime?)? 'mut'? 'self';
  typedSelf: 'mut'? 'self' ':' type;
  
  visibility: 'pub' ( '(' ( 'crate' | 'self' | 'super' | 'in' simplePath) ')')?;
  