'D.popitem() -> (k, v), remove and return some (key, value) pair
as a 2-tuple; but raise KeyError if D is empty.'

def popitem(self):

    try:
        key = next(iter(self))
    except StopIteration:
        raise KeyError
    value = self[key]
    del self[key]
    return (key, value)
