anchor.diff:  
   publisher_loop(Client, Nodes) ->
       receive
  -        {scheduled, {publish_item, ItemId}} ->
  -            publish(Client, Nodes, ItemId),
  -            schedule({publish_item, ItemId + 1}, ?DELAY_BETWEEN_MESSAGES)
  +        {scheduled, publish_item} ->
  +            publish(Client, Nodes),
  +            schedule(publish_item, ?DELAY_BETWEEN_MESSAGES)
       end,
       publisher_loop(Client, Nodes).
   
  -publish(Client, Nodes, ItemId) ->
  -    lager:debug("Published ~p ~p ~n", [ItemId, Nodes]),
  -    ItemIdBin = integer_to_binary(ItemId),
  -    [ publish_pubsub_item(Client, <<"item_", ItemIdBin/binary>>, Node) || Node <- Nodes ].
  +publish(Client, Nodes) ->
  +    lager:debug("Published ~p ~n", [Nodes]),
  +    [ publish_pubsub_item(Client, Node) || Node <- Nodes ].
   
   %% --- Subscriber -------------------------------------------------------------------------------------------
   subscriber_start(Client) ->
  
positive.code: -define(NODE_CREATE_SUCCESS_COUTER, [amoc, counters, node_create_success]).
  -define(SUBSCRIBE_SUCCESS_COUTER, [amoc, counters, subscribe_success]).
  -define(PUBLISH_SUCCESS_COUTER, [amoc, counters, publish_success]).
  
  -export([init/0]).
  -export([start/1]).
  
negative.code:             exit(connection_failed)
          end.
  
  publish_pubsub_item(Client, Node) ->
      Id = id(Client, Node, <<"publish">>),
      ItemId = integer_to_binary(os:system_time(microsecond)),
      Request = escalus_pubsub_stanza:publish(Client, ItemId, item_content(), Id, Node),
      escalus:send(Client, Request),
      {PublishTime, PublishResult} = timer:tc(
  