#define has__EXTRA_PARAMS , uint64_t search
#define has__EXTRA_PASS   ,          search

#define has__FIRST_STATEMENT \
	do { \
		if(equals(a, expr, search)) { \
      return true; \
		} \
	} while(0);

#define has__REAL         
#define has__VARIABLE     
#define has__BOOLEAN      
#define has__UNDEFINED    
#define has__SMALLINT     
#define has__LARGEINT     
#define has__FRACTION     
#define has__POWER        
#define has__SUM          
#define has__PRODUCT      
#define has__EQUALS       
#define has__NOT_EQUALS   
#define has__LESS_THAN    
#define has__GREATER_THAN 
#define has__INVALID      

ANY(has)

uint64_t solver_Algebra_has(struct solver_Algebra *a, uint64_t expr, uint64_t search) {
  return has(a, expr, search);
}