implemented shallow copy for vec3,4