modified datastructure