def pop(self, key):
        if key not in self:
            raise KeyError(key)
        if self.minimum_fields == 'required' and not self[key].optional:
            raise TypeError('May not pop required key %r on %s %r' %
                            (key, type(self).__name__, self.name))
        return dict.pop(self, key)
dataset/ETHPy150Open jek/flatland/flatland/schema/containers.py/SparseDict.pop/original