added file reading