added vector datastructures