code: def copy(self):
          
          from copy import deepcopy
          cp = type(self)()
          cp._metainfo = deepcopy(self._metainfo)
          return cp
docs: Return a new object with the same metainfo
  
          Internally, this simply copies the internal metainfo dictionary with
          :func:`copy.deepcopy` and gives it to the new instance.