anchor.diff:      try
           %% gproc:reg can only return true or throw
           true = gproc:reg({n, l, Name}),
  -        {next_state, down, reset_timer(save_status(?SAVE_MODE, down, State))}
  +        {next_state, down, reset_timer(create_status_record(?SAVE_MODE, down, State))}
       catch
           error:badarg ->
               %% When we start up from a previous run, we have two ways that the FSM might be started; 
  
positive.code: 
      case HeartBeats of
          ?POC_HB_THRESHOLD - 1 -> % transitioning up
              save_status(?SAVE_MODE, NodeStatus, State2),
              {next_state, up, State2#state{heartbeats=HeartBeats + 1}};
          ?POC_HB_THRESHOLD -> % up, only do something if status changes
              case NodeStatus of
                  CurStatus -> ok;
                  _Else -> save_status(?SAVE_MODE, NodeStatus, State2)
              end,
              {next_state, up, State2};
          _ -> % we're down, don't save state changes
  
negative.code: handle_info(down, down, State) ->
      {next_state, down, State};
  handle_info(down, _CurState, State) ->
      {next_state, down, update_status(?SAVE_MODE, down, State#state{heartbeats=0})};
  handle_info({timeout, _Ref, update_avg}, CurState, #state{heartbeat_rate=HRate}=State) ->
      {next_state, CurState, State#state{heartbeat_rate=eavg_tick(HRate)} };
  handle_info(no_heartbeats, _CurState, State) ->
      State1 = State#state{heartbeats=0, tref=undefined},
      update_status(?SAVE_MODE, down, State1),
      {next_state, down, State1};
  handle_info(Info, CurState, State) ->
      lager:error("Strange message ~p received in state ~p", [Info, CurState]),
  