#pragma once #include namespace math { namespace matrix { template class matrix; }} namespace math { namespace vector { template class vector; }} namespace math { namespace matrix { namespace concat_strategy { struct { } horizonal; using horizontal_concat_t = decltype(horizonal); struct { } vertical; using vertical_concat_t = decltype(vertical); struct { } diagonal; using diagonal_concat_t = decltype(diagonal); }}}