Added tokens.peek() to simplify parsing