use native constructors in vecs