refactor parse compfile