anchor.diff:  
   // Lexer
   // -----
  -WhiteSpace : [\t\n\0x11\0x12\r ] ;
  -NewLine: [\n\0x11\0x12\r] ;
  -Letter: [a-zA-Z] ;
  -UpperCase: [A-Z] ;
  -LowerCase: [a-z] ;
  -AlphaNumeric: [a-zA-Z0-9] ;
  -Number: [0-9] ;
  -NonZero: [1-9] ;
  -Bit: [01] ;
  -Hex: [0-9A-F] ;
  -XMLHex: [0-9A-Fa-f] ;
  -CString: ~[\"] ;
  -XMLCharacters: [\x09\x10\x13\x0020-\xD7FF\xE000-\xFFFD\x010000-\x10FFFF] ;
  -XMLCharCodes: '&#' Number* ';' ;
  -XMLCharHexCodes: '&#x' XMLHex* ';' ;
  -XMLCharAmpCodes: '&amp;' | '&lt;' | '&gt;' ;
  -XMLCharXMLCodes
  +WS : [\t\n\0x11\0x12\r ] ;
  +NEWLINE: [\n\0x11\0x12\r] ;
  +LETTER: [a-zA-Z] ;
  +UPPERCASE: [A-Z] ;
  +LOWERCASE: [a-z] ;
  +ALPHANUMERIC: [a-zA-Z0-9] ;
  +WITHZERO: [0-9] ;
  +NONZERO: [1-9] ;
  +BIT: [01] ;
  +HEX: [0-9A-F] ;
  +XMLHEX: [0-9A-Fa-f] ;
  +CSTRINGCHAR: ~[\"] ;
  +XMLCHARACTER: [\x09\x10\x13\x0020-\xD7FF\xE000-\xFFFD\x010000-\x10FFFF] ;
  +XMLCHARCODES: '&#' Number* ';' ;
  +XMLCHARHEXCODES: '&#x' XMLHex* ';' ;
  +XMLCHARAMPCODES: '&amp;' | '&lt;' | '&gt;' ;
  +XMLCHARXMLCODES
   	: '<nul/>' | '<soh/>' | '<stx/>' | '<etx/>' | '<eot/>' | '<enq/>' | '<ack/>' | '<bel/>' | '<bs/>'
   	| '<vt/>' | '<ff/>' | '<so/>' | '<si/>' | '<dle/>' | '<dc1/>' | '<dc2/>' | '<dc3/>' | '<dc4/>' | '<nak/>'
   	| '<syn/>' | '<etb/>' | '<can/>' | '<em/>' | '<sub/>' | '<esc/>' | '<is4/>' | '<is3/>' | '<is2/>' | '<is1/>' ;
   
  -SimpleStringCodes: [\x32-\x7E] ;
  -
  -TString: [0-9+-:.,/CDHMRPSTWYZ] ;
  -
  -UnicodeNonInteger
  +SIMPLESTRINGCODES: [\x32-\x7E] ;
  +
  +TSTRINGCHARACTER: [0-9+-:.,/CDHMRPSTWYZ] ;
  +
  +UNICODENONINTEGER
   	: [-._~0-9A-Za-z]
   	| [\x000000A0-\x0000DFFE]
   	| [\x0000F900-\x0000FDCF]
  
positive.code: 
  definitiveObjIdComponent: nameForm | definitiveNumberForm | definitiveNameAndNumberForm;
  
  definitiveNumberForm : number;
  
  definitiveNameAndNumberForm: identifier '(' definitiveNumberForm ')';
  
  encodingReferenceDefault: encodingreference 'INSTRUCTIONS' | ;
  
  TagDefault: 'EXPLICIT TAGS' | 'IMPLICIT TAGS' | 'AUTOMATIC TAGS' | ;
  
  ExtensionDefault: 'EXTENSIBILITY IMPLIED' | ;
  
  moduleBody: exports imports assignmentList | ;
  
  
negative.code: 	| 'DURATION' | 'INSTRUCTIONS' | 'RELATIVE-OID' | 'WITH'
  	| 'EMBEDDED' | 'INTEGER' | 'RELATIVE-OID-IRI' ;
  
  XMLASN1TYPENAME
  	: 'BIT_STRING' | 'BOOLEAN' | 'CHOICE' | 'DATE'
  	| 'DATE_TIME' | 'DURATION' | 'SEQUENCE' | 'ENUMERATED'
  	| 'INTEGER' | 'OID_IRI' | 'NULL' | 'OCTET_STRING'
  