anchor.diff:      {$crtrst = new CreateTriggerStatement($trigger_name.text,$table_name.text,$class_name.text);}
       ;
   
  -
   createTableStatement returns [CreateTableStatement crtast]
   @init{
       LinkedHashMap<String, String> columns = new LinkedHashMap<>();
  
positive.code:     (T_IF T_NOT T_EXISTS {ifNotExists = true;})?
      tablename=getTableID
      T_START_PARENTHESIS (            
                  ident_column1=(T_IDENT | T_LUCENE | T_KEY) type1=getDataType (T_PRIMARY T_KEY)? {columns.put($ident_column1.text,type1); primaryKeyType=1;}
                  (   
                      ( T_COMMA ident_columN=(T_IDENT | T_LUCENE | T_KEY) typeN=getDataType (T_PRIMARY T_KEY {primaryKeyType=1;columnNumberPK=columnNumberPK_inter +1;})? {columns.put($ident_columN.text,typeN);columnNumberPK_inter+=1;})
                      |(  
                          T_COMMA T_PRIMARY T_KEY T_START_PARENTHESIS
                          (
                              (   primaryK=(T_IDENT | T_LUCENE | T_KEY) {primaryKey.add($primaryK.text);primaryKeyType=2;}
                             
                                  (T_COMMA partitionKN=(T_IDENT | T_LUCENE | T_KEY) {primaryKey.add($partitionKN.text);})*
                              )
                              |(
                                  T_START_PARENTHESIS partitionK=(T_IDENT | T_LUCENE | T_KEY) {primaryKey.add($partitionK.text);primaryKeyType=3;}
                                      (T_COMMA partitionKN=(T_IDENT | T_LUCENE | T_KEY) {primaryKey.add($partitionKN.text);})*
                                  T_END_PARENTHESIS 
                                  (T_COMMA clusterKN=(T_IDENT | T_LUCENE | T_KEY) {clusterKey.add($clusterKN.text);})*
  
                              )
                          )
                         T_END_PARENTHESIS 
                     )
                  )* 
           )             
      T_END_PARENTHESIS (T_WITH {withProperties=true;} properties=getMetaProperties)?
      {
          $crtast = new CreateTableStatement(tablename, columns, primaryKey, clusterKey, primaryKeyType, columnNumberPK);
  
negative.code: (T_WITH T_OPTIONS T_EQUAL T_START_SBRACKET key=T_IDENT T_COLON value=getValueProperty {$cis.addOption($key.text, value);}
  		(T_AND key=T_IDENT T_COLON value=getValueProperty {$cis.addOption($key.text, value);} )* T_END_SBRACKET
  */
  
  getField returns [String newField]:
      (unitField=getUnits {$newField = unitField;}
      |fieldToken=(T_IDENT | T_LUCENE | T_KEY) {$newField = $fieldToken.text;})
  ;
  
  getUnits returns [String newUnit]:
      unitToken=(T_SEC
      | T_SECS
      | T_SECONDS
      | T_MIN
      | T_MINS
      | T_MINUTES
      | T_HOUR
      | T_HOURS
      | T_DAY
      | T_DAYS)
      {$newUnit = $unitToken.text;}
  ;
  
  updateTableStatement returns [UpdateTableStatement pdtbst]
      @init{
  