refactor AddParser