anchor.diff:  relationalExpression
     : addingExpression ((EQUAL^|NOT_EQUAL^|GET^|GETEQ^|LET^|LETEQ^|SAMEAS^) addingExpression)*
     ;
  -
   
   logicalExpression
      : relationalExpression ((AND^|OR^) relationalExpression)*
   	 ;
  -	 
  +//logicalExpression
  + //  : relationalExpression ((AND^|OR^) relationalExpression)*
  +//   ;	 
  +
   unaryExpression
  -	: NOT^ LPARA! logicalExpression RPARA! SEMICOL!
  -  
  -	;
  -	 
  +  : (NOT^)*  LPARA! logicalExpression RPARA! 
  + // : (NOT^)*   logicalExpression 
  +  ;
  +
  +combinationalExpression
  +: unaryExpression ((AND^|OR^) unaryExpression)*
  +;
   expression
   	//: relational
     //:constantValue
     //|primitiveElement
     //|addingExpression
     //|multiplyingExpression
  -  : unaryExpression
  -  |logicalExpression
  -  |edge_expression
  -  ;
  +  //:  unaryExpression 
  + // | logicalExpression
  +  :combinationalExpression
  +  | logicalExpression
  +   ;
   
   
   constantValue
  -	: INT | ID
  +	: INT | ID | UNIFORM
   	;
   
   wait_statement
   	: WAIT^ LPARA! expression RPARA! SEMICOL!
  -	| WAIT^ LPARA! expression COMMA!  expression RPARA! SEMICOL!
  +	| WAIT^ LPARA! expression COMMA!  expression (GET expression)* RPARA! SEMICOL!
   	;
   		
   	
  
positive.code: 
  @header {
    package lpn.parser.properties;
    
   // package antlrPackage;
  }
  
  @lexer::header { 
  
negative.code: :'assertUntil'
  ;
  
  WAIT_POSEDGE
  : 'waitPosedge'
  ;
  
  
  