anchor.diff:  %%%===================================================================
   %%% functions manipulating Vizceral map
   %%%===================================================================
  -new() ->
  -    entity(global, "edge", [], #{connections => []}).
  +new(EntryNode) ->
  +    entity(global, "edge", [], #{connections => [], entryNode => EntryNode}).
   
   entity(Renderer, Name, Nodes, Additional) ->
       Map = #{
  
positive.code:   maps:merge(To, #{connections => [New | Connections]}).
  
  push_region_connection(Source, Target, {N, W, D}, Additional, Vizceral) ->
    %% Will crash on nonexisting
    pull_region(Source, Vizceral),
    pull_region(Target, Vizceral),
    push_connection(Source, Target, {N, W, D}, Additional, Vizceral).
  
  push_focused_connection(S, T, RN, NWD, Vizceral) ->
      push_focused_connection(S, T, RN, NWD, #{}, Vizceral).
  
negative.code:         {NodeName, [{owner,_}, {state,up}, {address, _}, {type,normal},
                      {in,NodeIn}, {out,NodeOut}]} <- NodesInfo].
  
  update_traffic_graph(EntryNode, OldCounters, Vizceral) ->
      %% traverse all connected nodes and read their net_kernel counters
      NewCounters = get_traffic_counters(),
  
      %% start creating a map, which represents the Vizceral JSON document
      %% region named <<"INTERNET">> represents the observed node
      V1 = push_region(EntryNode, Vizceral),
  
      %% add as many regions as there are nodes in the cluster
      V2 = lists:foldl(fun({Node,_,_}, V) ->
  