code: def _dict_compare(d1, d2):
      
      keys_added = set(d2.keys()) - set(d1.keys())
      keys_changed = [k for k in d1.keys() if k in d2.keys() and d1[k] != d2[k]]
      return list(keys_added) + keys_changed
docs: We care if one of two things happens:
  
        * d2 has added a new key
        * a (value for the same key) in d2 has a different value than d1
  
      We don't care if this stuff happens:
  
        * A key is deleted from the dict
  
      Should return a list of keys that either have been added or have a different value than they used to