imperfect file