code: def update(self, *args, **kwargs):
          
          if not self:
              self._dict_update(*args, **kwargs)
              self._list_update(self._iter())
              return
  
          if not kwargs and len(args) == 1 and isinstance(args[0], dict):
              pairs = args[0]
          else:
              pairs = dict(*args, **kwargs)
  
          if (10 * len(pairs)) > len(self):
              self._dict_update(pairs)
              self._list_clear()
              self._list_update(self._iter())
          else:
              for key in pairs:
                  self[key] = pairs[key]
docs: Update the dictionary with the key/value pairs from *other*, overwriting
          existing keys.
  
          *update* accepts either another dictionary object or an iterable of
          key/value pairs (as a tuple or other iterable of length two).  If
          keyword arguments are specified, the dictionary is then updated with
          those key/value pairs: ``d.update(red=1, blue=2)``.