updated vec.hpp