refactor parser