added ability to accept its data from file.data