anchor.diff:  RBRACKET: ']' ;
   Identifier3 : IdentStart IdentPart* -> type(Identifier);
   SPACETABNEWLINE2: [ \t\r\n]+ -> skip ;
  -CLOSEBACKTICK2: '`' -> skip, mode(IN_THE_MIDDLE_OF_LINE) ;
  +CLOSEBACKTICK2: '`' -> skip, mode(DEFAULT_MODE) ;
   
   mode EXPECT_CLASS;
   OPENBACKTICK4: '`' -> skip, mode(CLASS) ;
  
positive.code: DOT2: '.' -> type(DOT) ;
  Identifier4 : IdentStart IdentPart* -> type(Identifier) ;
  SPACETABNEWLINE4: [ \t\r\n]+ -> skip ;
  CLOSEBACKTICK3: '`' -> skip, mode(IN_THE_MIDDLE_OF_LINE) ;
  
  mode AFTER_AN_INSTANCE;
  OF: 'of' ;
  
negative.code: 
  mode IN_TABLE_NAME;
  SingleQuoteName: ~[\]\r\n]* ;
  RBRACKET2: ']' -> skip, mode(DEFAULT_MODE) ;
  
  mode IN_FILE_NAME;
  SingleQuoteName2: (~['\r\n]|'\'\'')* -> type(SingleQuoteName) ;
  CLOSESINGLEQUOTE2: '\'' -> skip, mode(DEFAULT_MODE) ;
  
  mode IN_BOOK_NAME;
  SingleQuoteName3: (~['\r\n]|'\'\'')* -> type(SingleQuoteName) ;
  CLOSESINGLEQUOTE3: '\'' -> skip, mode(DEFAULT_MODE) ;
  
  mode ABBREVIATION;
  ShortName: ~[\]\r\n]* ;
  