added function AST class