'This function exists so __len__ can be implemented more efficiently,
saving one list creation from an iterator.
Using this for Python 2\'s ``dict.keys`` behavior would be useless since
`dict.keys` in Python 2 returns a list, while we have a set here.'

def _keys_impl(self):

    rv = set()
    for d in self.dicts:
        rv.update(iterkeys(d))
    return rv
