data manipulation improved