#include <type_traits>
#include <vector>

template <class T>
T initialize_vector(T value) {
  return value;
}

template <class T, class S, class... V>
auto initialize_vector(T value, S current_dim, V... dims) {
  auto a = initialize_vector(value, dims...);
  return std::vector<decltype(a)>(current_dim, a);
}