@staticmethod
def __check_valid_range_tile_row_tle_column_for_matrix_entry(matrix_entry,
    tile_row, tile_column):
    """
        Checks to see if the tile_row and tile_column are in a valid range according to the tile matrix entry given.
        Will raise an exception if there is an invalid value.

        :param matrix_entry:
        :type matrix_entry: list of TileMatrixEntry

        :param tile_row: the y coordinate of the tile. 0 to tile_matrix matrix_height - 1
        :type tile_row: int

        :param tile_column: the x coordinate of the tile.  0 to tile_matrix matrix_width - 1
        :type tile_column: int
        """
    if tile_column < 0 or tile_column > matrix_entry[0].matrix_width - 1:
        raise ValueError(
            'tile_column {tile_column} needs to be within the range of the matrix_width [0, {width}]'
            .format(tile_column=tile_column, width=matrix_entry[0].
            matrix_width - 1))
    elif tile_row < 0 or tile_row > matrix_entry[0].matrix_height - 1:
        raise ValueError(
            'tile_row {tile_row} needs to be within the range of the matrix_height [0, {height}]'
            .format(tile_row=tile_row, height=matrix_entry[0].matrix_height -
            1))
