anchor.diff:       {isElementSeparator()}?
           ( {isPrevTokenElementSeparator()}? FILLER            //just echo
           | FILLER {System.err.println("inserting comma before " + input.LT(1));}-> template(filler={$text}) ",<filler>")    //insert comma
  +  ;
  +
  +quiet_element_separator_list :
  +     quiet_element_separator_filler* quiet_element_separator_comma? quiet_element_separator_filler*
  +  ;
  +
  +quiet_element_separator_comma :
  +     COMMA {System.err.println("deleting comma " + retval.start);}-> template() "" //delete comma
  +  ;
  +
  +quiet_element_separator_filler :
  +     {isElementSeparator()}? FILLER //just echo
     ;
   
   input_params :
  
positive.code:   |  SEMICOLON
    ;
  
  element_list :
       element (element_separator_list element)*
    ;
  
negative.code:   ;
  
  element_separator_comma :
       {isPrevTokenElementSeparator()}? COMMA {System.err.println("deleting comma " + retval.start);}-> template() "" //delete comma
    |  COMMA                                                   //just echo
    ;
  
  