'Add the value found in Step 4 to every element of each covered
row, and subtract it from every element of each uncovered column.
Return to Step 4 without altering any stars, primes, or covered
lines.'

def __step6(self):

    minval = self.__find_smallest()
    for i in range(self.n):
        for j in range(self.n):
            if self.row_covered[i]:
                self.C[i][j] += minval
            if (not self.col_covered[j]):
                self.C[i][j] -= minval
    return 4
