========================================== parses multiple statements ========================================== var x = {}; {}; --- (program (statement (assignment (identifier) (expression (literal (object))))) (statement (expression (literal (object))))) ========================================== parses if statements ========================================== if (duh) { var x = 2; } --- (program (statement (if_statement (expression (identifier)) (statement_block (statement (assignment (identifier) (expression (literal (number)))))))))