vec implemented