anchor.diff:  %% @spec terminate(Reason, StateName, State) -> void()
   %% @end
   %%--------------------------------------------------------------------
  -terminate(_Reason, 'MASTER', State) ->
  +terminate(_Reason, 'MASTER', #state{module = undef} = State) ->
       %% Resign, then shutdown..
       send_advert(State#state{priority = 0}),
  +    vrrp_interface_manager:remove(State#state.interface, State#state.id),
  +    ok;
  +terminate(_Reason, 'MASTER', #state{family = Family, id = Id, vip = VIPs, module = Module} = State) ->
  +    %% Resign, become slave, then shutdown..
  +    send_advert(State#state{priority = 0}),
  +    Module:become_slave(Family, Id, VIPs),
       vrrp_interface_manager:remove(State#state.interface, State#state.id),
       ok;
   terminate(_Reason, _Statename, State) ->
  
positive.code:     Priority = proplists:get_value(priority, Args, ?VRRP_PRIORITY_DEFAULT),
      Interval = proplists:get_value(interval, Args, ?VRRP_ADVERT_INTERVAL_DEFAULT),
      Preempt = proplists:get_value(preempt, Args, true),
      case set_family(IPs) of
          {error, mixed} ->
              {stop, "Mix of protected addresses"};
  
negative.code:                 priority = Priority,
                  interval = Interval,
                  preempt_mode = Preempt,
                  master_down_interval = master_down_time(Interval, Priority),
                  module = Module
                 },
               0}
      end.
  