Push the value item onto the heap, maintaining the heap invariant.
        If the item is not hashable, a TypeError is raised.

def push(self, item):
        '''Push the value item onto the heap, maintaining the heap invariant.
        If the item is not hashable, a TypeError is raised.
        '''
        hash(item)
        heapq.heappush(self._items, item)