anchor.diff:  set_sub(S = #state{monref_idx = Mon,clients = Clients},{ClientId,NewQoS,NewSeq,NewPid}) ->
       MonRef = monitor(process,NewPid),
       Mon1 = orddict:store(MonRef,ClientId,Mon),
  -    NewReg = #client_reg{seq = NewSeq,
  +    NewReg = #client_sub{client_seq = NewSeq,
                            qos = NewQoS,
                            pid = NewPid,
                            monref = MonRef},
  
positive.code:                 mqtt_sub_repo:clear_sub_pid(Filter,ClientId),
                  Clients1 = orddict:update(ClientId,
                                  fun(Reg) ->
                                      Reg#client_reg{monref = undefined,
                                                     pid = undefined}
                                  end,
                                  Clients),
  
negative.code: handle_call(get_live_clients, _From, S = #state{clients = Clients}) ->
      ClientPids = [
          {ClientId,QoS,Pid} ||
          {ClientId,#client_sub{pid = Pid,qos = QoS}} <- orddict:to_list(Clients), Pid =/= undefined],
      {reply, ClientPids, S};
  
  handle_call(_Request, _From, State) ->
  