add AST