while loop AST