finish AST