working on the data handling