anchor.diff:  createTableHeader:
   	CREATE ((GLOBAL | LOCAL)? (TEMPORARY | TEMP) | UNLOGGED)? TABLE (IF NOT EXISTS)? tableName
   	;
  -	
  +
   createDefinitions:
      LEFT_PAREN (createDefinition (COMMA createDefinition)*)? RIGHT_PAREN
      ;
  -   
  +
   createDefinition:
    	(columnName dataType collateClause? columnConstraint*)
       | tableConstraint
       | LIKE tableName likeOption*
    	;
  - 		
  +
   inheritClause:
  -	INHERITS LEFT_PAREN tableName (COMMA tableName)* RIGHT_PAREN 
  +	INHERITS LEFT_PAREN tableName (COMMA tableName)* RIGHT_PAREN
   	;
   
   partitionClause:
  -	PARTITION BY (RANGE | LIST) LEFT_PAREN partitionClauseParam (COMMA partitionClauseParam)* RIGHT_PAREN 
  -	;
  -	
  +	PARTITION BY (RANGE | LIST) LEFT_PAREN partitionClauseParam (COMMA partitionClauseParam)* RIGHT_PAREN
  +	;
  +
   partitionClauseParam:
  -	(columnName | expr) collateClause? opclass? 
  +	(columnName | LEFT_PAREN simpleExpr RIGHT_PAREN) collateClause? opclass?
   	;
   
   tableWithClause:
   	withStorageParameters
  -	|(WITH OIDS) 
  +	|(WITH OIDS)
   	|(WITHOUT OIDS)
   	;
   
   commitClause:
  -	ON COMMIT (PRESERVE ROWS | DELETE ROWS | DROP) 
  +	ON COMMIT (PRESERVE ROWS | DELETE ROWS | DROP)
   	;
   
   tableSpaceClause:
   	TABLESPACE tablespaceName
   	;
  -	
  -createTypeTable:	
  -	createTableHeader 
  +
  +createTypeTable:
  +	createTableHeader
   	typeNameClause
   	createDefinition1s?
   	partitionClause?
  
positive.code: 	|HOUR
  	|MINUTE
  	|SECOND
  	;		
  numericPrecision:
  	LEFT_PAREN NUMBER (COMMA NUMBER)? RIGHT_PAREN
  	;
  		
  defaultExpr: 
  	CURRENT_TIMESTAMP
  	|expr;
  
  exprsWithParen:
  	LEFT_PAREN exprs RIGHT_PAREN
  	;
  	
  exprWithParen:
  	LEFT_PAREN expr RIGHT_PAREN
  	;
  	
  collateClause:
  	COLLATE collationName
  	;
  	
  columnConstraint:
  	constraintClause?
  	columnConstraintOption
  	constraintOptionalParam
  	;
  	
  columnConstraintOption:
  	(NOT NULL)
  	|NULL 
    	|checkOption
    	|(DEFAULT defaultExpr)
      |(GENERATED ( ALWAYS | BY DEFAULT ) AS IDENTITY ( LEFT_PAREN sequenceOptions RIGHT_PAREN )?) 
      |(UNIQUE indexParameters) 
      |(PRIMARY KEY indexParameters)
      |(REFERENCES tableName (LEFT_PAREN columnName RIGHT_PAREN)? (MATCH FULL | MATCH PARTIAL | MATCH SIMPLE)?(ON DELETE action )? (ON UPDATE action )?) 
  	;
  	
  checkOption:
  	CHECK exprWithParen (NO INHERIT )?
  	;
  
negative.code: extensionName:
  	ID
  	;
  
  excludeParam:
  	excludeElement WITH operator
  	;
  
  excludeElement:
  	(columnName | exprWithParen) opclass? (ASC | DESC)? (NULLS (FIRST | LAST))?
  	;
  
  operator:
  	SAFE_EQ
  	|EQ_OR_ASSIGN
  