#include <iostream>
#include <vector>

template <typename T>
void printVar(const T& v)
{
    std::cout << v;
}

template <typename T>
void printVar(const std::vector<T>& v)
{
    for (auto i = v.cbegin(); i != v.cend(); ++i)
    {
        printVar(*i);
    }
}

int main()
{
    std::vector<std::vector<std::vector<int>>> v;
    v.push_back(std::vector<std::vector<int>>(2, std::vector<int>(5, 3)));
    printVar(v);
}