refactored to decouple dependencies due to FileParse's derived classes