code: def _set_virtual(self, key, value):
          
          if key in self and key not in self._virtual_keys:
              return  # Do nothing for non-virtual keys.
  
          self._virtual_keys.add(key)
          if key in self and self[key] is not value:
              self._on_change(key, value)
          dict.__setitem__(self, key, value)
          for overlay in self._iter_overlays():
              overlay._set_virtual(key, value)
docs: Recursively set or update virtual keys. Do nothing if non-virtual
              value is present.