fixed lvalue conflict
started AST