anchor.diff:  COMMA : ',' ;
   
   COLON : ':' ;
  +
  +
  +NOBRACE :  (~('{'|'}'));
  
positive.code:     @init {
          initNameSpace(ctx,SCOPE_TOP(NameSpace));
      }
  	:	pbj_header? (importrule|message|enum_def|flags_def|option_assignment)* (package (importrule|message|enum_def|flags_def|option_assignment)*)?
      {
      }
  	;
  
negative.code:         }
  	;
  
  service: (SERVICE IDENTIFIER BLOCK_OPEN service_block* BLOCK_CLOSE -> )
    {
       fprintf(stderr,"warning: ignoring service \%s\n",$IDENTIFIER.text->chars);
    };
  service_block : RPC IDENTIFIER PAREN_OPEN service_args? PAREN_CLOSE RETURNS PAREN_OPEN IDENTIFIER PAREN_CLOSE ITEM_TERMINATOR ;
  
  service_args :IDENTIFIER (COMMA service_args)? ;
  
  //NOBRACE* ( BLOCK_OPEN service_block BLOCK_CLOSE NOBRACE*)? {};
  message
      scope {
          int isExtension;        
  