def pop(self, *args) -> Any:
        """pop property in data and metainfo as the same as python."""
        assert len(args) < 3, '``pop`` get more than 2 arguments'
        name = args[0]
        if name in self._metainfo_fields:
            self._metainfo_fields.remove(name)
            return self.__dict__.pop(*args)

        elif name in self._data_fields:
            self._data_fields.remove(name)
            return [level.pop(*args) for level in self.levels()]

        # with default value
        elif len(args) == 2:
            return args[1]
        else:
            # don't just use 'self.__dict__.pop(*args)' for only popping key in
            # metainfo or data
            raise KeyError(f'{args[0]} is not contained in metainfo or data')
pop property in data and metainfo as the same as python.
mmpose/mmpose/structures/multilevel_pixel_data.py