restructured "vector" for datastructure