anchor.diff:      Req :: term(),
       State :: #hander_state{}.
   %% ====================================================================
  -websocket_handle({binary, Data}, Req, #hander_state{peer_dn = DnString, peer_type = PeerType} = State) ->
  +websocket_handle({binary, Data}, Req, #hander_state{peer_type = PeerType} = State) ->
       try
           Request =
               case PeerType of
  -                provider -> decode_providermsg_pb(Data, DnString);
  -                user     -> decode_clustermsg_pb(Data, DnString)
  +                provider -> decode_providermsg_pb(Data);
  +                user     -> decode_clustermsg_pb(Data)
               end,
   
           ?debug("Received request: ~p", [Request]),
  
positive.code:     FuseID1 = case FuseID of undefined -> "cluster_fid"; _ -> FuseID end,
      case MsgType of
          "clustermsg" ->
              {pull, FuseID1, decode_clustermsg_pb(Input, DN)};
          "answer" ->
              {push, FuseID1, decode_answer_pb(Input, DN)}
      end.
  
  
  
negative.code: %%      In case of 'pull' message - InputMessage is decoded with decode_clustermsg_pb/2. <br/>
  %%      In case of 'push' message - InputMessage is decoded with decode_answermsg_pb/2.
  %% @end
  -spec decode_providermsg_pb(MsgBytes :: binary()) -> Result when
      Result :: {pull | push, FuseId :: binary(), InputMessage :: term()}.
  %% ====================================================================
  decode_providermsg_pb(MsgBytes) ->
      DecodedBytes = try
          communication_protocol_pb:decode_providermsg(MsgBytes)
                     catch
  