* file may not exist