Update to use Vec<T>