added functionality to deal with different data sets