anchor.diff:  %%      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(), DN :: string()) -> Result when
  +-spec decode_providermsg_pb(MsgBytes :: binary()) -> Result when
       Result :: {pull | push, FuseId :: binary(), InputMessage :: term()}.
   %% ====================================================================
  -decode_providermsg_pb(MsgBytes, DN) ->
  +decode_providermsg_pb(MsgBytes) ->
       DecodedBytes = try
           communication_protocol_pb:decode_providermsg(MsgBytes)
                      catch
  
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:           end,
  
      TranslatedMsg = try
        records_translator:translate(Msg, DecoderName1)
      catch
        _:message_not_supported -> throw({message_not_supported, MsgId})
      end,
  