def cell_neighbors(cell):
    """ Returns direct neighbors of an hexagonal cell.
    
        The elegant way to perform this operation would be to add
        the directions to the given cell, but for speed reasons
        the full precomputed set is used instead.
    """
    return [
            (cell[0]+1, cell[1]),
            (cell[0]+1, cell[1]-1),
            (cell[0], cell[1]-1),
            (cell[0]-1, cell[1]),
            (cell[0]-1, cell[1]+1),
            (cell[0], cell[1]+1)
        ]