anchor.diff:          {ok, TTopic} ->
               ok = SubscribeFun(TTopic),
               bridge_subscribe(Pid, Rest, SubscribeFun, [{{out, TTopic}, QoS,
  -                                                        list_to_binary(RemotePrefix)}|Acc]);
  +                                                        validate_prefix(RemotePrefix)}|Acc]);
           {error, Reason} ->
               error_logger:warning_msg("can't validate bridge topic conf ~p due to ~p",
                                        [BT, Reason]),
  
positive.code:       fun({{out, T}, QoS, RemotePrefix}) ->
                case vmq_topic:match(Topic, T) of
                    true ->
                        ok = gen_emqtt:publish(ClientPid, lists:flatten([RemotePrefix, Topic]) ,
                                               Payload, QoS);
                    false ->
                        ok
  
negative.code:       fun({{in, T}, LocalPrefix}) ->
                case vmq_topic:match(Topic, T) of
                    true ->
                        ok = PublishFun(routing_key(LocalPrefix, Topic), Payload);
                    false ->
                        ok
                end;
  