Assignment 2 AST