anchor.diff:  
   -spec handle_shuffle(state_active(),
           {RemoteNode :: comm:mypid() | ignore, RemoteEpoch :: non_neg_integer(),
  -         RemoteCentroids :: dc_centroids:centroids()})
  -     -> state_active().
  -    handle_shuffle({Centroids, Epoch, ResetTriggerState, ClusterTriggerState}, {RemoteNode, RemoteEpoch, RemoteCentroids}) ->
  +         RemoteCentroids :: dc_centroids:centroids()}) -> state_active().
  +handle_shuffle(#state_active{
  +        centroids=Centroids
  +        , local_epoch=Epoch
  +        , reset_trigger_state=ResetTriggerState
  +        , cluster_trigger_state=ClusterTriggerState
  +        , radius=Radius
  +    } = State, {RemoteNode, RemoteEpoch, RemoteCentroids}) ->
       % Check the epoch to swallow old messages and delete old state:
       %
       % - if the local epoch is less than the remote epoch, we didn't see a certain wave yet and
  
positive.code:                 ignore -> ok;
                  R -> comm:send(R, {clustering_shuffle_reply, comm:this(), Centroids, Epoch})
              end,
              {Epoch, cluster(Centroids, RemoteCentroids)}
      end,
      case NewEpoch of % reset needed?
          Epoch -> {NewCentroids, Epoch, ResetTriggerState, ClusterTriggerState};
          _Else ->
              NewResetTriggerState = trigger:next(ResetTriggerState),
              NewClusterTriggerState = trigger:next(ClusterTriggerState),
              % Note: NewEpoch - 1 because we will increment it in the handler for the
              % vivaldi reply
              {NewCentroids, NewEpoch - 1, NewResetTriggerState, NewClusterTriggerState}
      end
      .
  
negative.code:     {cy_cache, [node:node_type()]} |
      {clustering_shuffle, comm:mypid(), dc_centroids:centroids(), non_neg_integer()} |
      {clustering_shuffle_reply, comm:mypid(), dc_centroids:centroids(), non_neg_integer()} |
      {query_clustering, comm:mypid()} |
      {query_epoch, comm:mypid()}
  ).
  
  %% @doc Sends an initialization message to the node's dc_clustering process.
  -spec activate() -> ok | ignore.
  