#include <iostream>
#include <vector>
#include <iterator>

using namespace std;

template<typename Inverse>
void Diag(Inverse begin, Inverse end)
{
	for(auto row : &begin)
	{
		for(auto col : row)
		{
			
		}
	}
	
}


int main() {
	// your code goes here
	
	std::vector<std::vector<double> > vect = {
		{1, 2, 3},
		{4, 5, 6}, 
		{7, 8, 9}
	};
	
	Diag(std::begin(vect), std::end(vect));
	return 0;
}