      void update(const Key& key, const Value& value)    {       if (get(owner, key) == process_id(process_group)) {        Derived* derived = static_cast<Derived*>(this);        derived->receive_update(get(owner, key), key, value);      }      else 