temp version new vector3d