docs: def update_safety_check(first_dict: MutableMapping[K, V],
                          second_dict: Mapping[K, V],
                          compat: Callable[[V, V], bool] = equivalent) -> None:
      """Check the safety of updating one dictionary with another.
  
      Raises ValueError if dictionaries have non-compatible values for any key,
      where compatibility is determined by identity (they are the same item) or
      the `compat` function.
  
      Parameters
      ----------
      first_dict, second_dict : dict-like
          All items in the second dictionary are checked against for conflicts
          against items in the first dictionary.
      compat : function, optional
          Binary operator to determine if two values are compatible. By default,
          checks for equivalence.
      """
      for k, v in second_dict.items():
          if k in first_dict and not compat(v, first_dict[k]):
              raise ValueError('unsafe to merge dictionaries without '
                               'overriding values; conflicting key %r' % k)