anchor.diff:                  priority = Priority,
                   interval = Interval,
                   preempt_mode = Preempt,
  -                master_down_interval = master_down_time(Interval, Priority)
  +                master_down_interval = master_down_time(Interval, Priority),
  +                module = Module
                  },
                0}
       end.
  
positive.code:           master_down_interval = ?VRRP_ADVERT_INTERVAL_DEFAULT,
            %% Timers
            master_down_timer = undef,
            adver_timer = undef
           }).
  
  %%%===================================================================
  
negative.code:     erlang:link(InterfacePid),
      State#state{interface_pid = InterfacePid, our_ip = IPInt}.
  
  become_master(#state{module = undef, id = Id} = State) ->
      io:format("Becoming Master for ID ~p~n", [Id]),
      %% Just doing the FSM, no module to inform...
      send_advert(State);
  become_master(#state{family = Family, id = Id, vip = VIPs, module = Module} = State) ->
      io:format("Becoming Master for ID ~p~n", [Id]),
      Module:become_master(Family, Id, VIPs),
      send_advert(State).
  
  become_backup(#state{module = undef} = State) ->
      start_timer(master_down_timer, State);
  become_backup(#state{family = Family, id = Id, vip = VIPs, module = Module} = State) ->
      %% Remove MAC from tables
      Module:become_backup(Family, Id, VIPs),
      %% Start master_down_timerDate: Wed, 6 Sep 2017 04:31:30 +1200
      start_timer(master_down_timer, State).
  
  send_advert(State) ->
  