anchor.diff:  	;
   	
   statementBlock
  - : '{' LTERM* '}'
  +        : '{' LTERM* '}' 
   	| '{' LTERM* (statementList->statementList) LTERM* '}' 
  -	;
  +
  +	; 
   	
   statementList
  -	: statement (LTERM* statement)* -> ^(SLIST statement+)
  +	: (LTERM* statement)+ -> ^(SLIST statement+)
   	;
   	
   variableStatement
  
positive.code: 	
  
  program
  	: a=LTERM* sourceElements LTERM* EOF -> ^(PROG sourceElements) // omitting LTERM and EOF
  
  	;
  
  
negative.code: ;
  
  multiplicativeExpression
  	: (unaryExpression  -> unaryExpression )(LTERM* multOps LTERM* unaryExpression -> ^(multOps $multiplicativeExpression unaryExpression))*
  	;
  
  
  postfixExpression
   : leftHandSideExpression '--' -> ^( MINUSMINUS leftHandSideExpression)
   | leftHandSideExpression '++' -> ^(PLUSPLUS leftHandSideExpression)
   |leftHandSideExpression  -> leftHandSideExpression
    
  ;
  
  