public static CounterValues EvaluateMatrix(this string[,] matrix, int length = 7)
        {
            var horizontalRows = EvaluateRows(i => matrix.GetHorizontalOrVertical(i));
            var verticalRows   = EvaluateRows(i => matrix.GetHorizontalOrVertical(i, false));
            var diagonalRows   = matrix.EvaluateDiagonalRows(length);
            var counterFinal   = CreateReport(horizontalRows, verticalRows, diagonalRows);

            return(counterFinal);
        }