return heapq.merge(iterator_mergesort((next(iterator) for _ in range(size /
    2)), size / 2), iterator_mergesort(iterator, size - size / 2)
    ) if size >= 2 else iterator
A Python Segmentation Fault?