code refactor for genericparser