modular and well optimized as now it reads the file only once