'od.popitem() -> (k, v), return and remove a (key, value) pair.
Pairs are returned in LIFO order if last is true or FIFO order if false.'

def popitem(self, last=True):

    if (not self):
        raise KeyError('dictionary    is    empty')
    key = next((reversed(self) if last else iter(self)))
    value = self.pop(key)
    return (key, value)
