anchor.diff:  %% merkle tree sync messages
   %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
   
  -on({check_nodes, SenderPid, ToCheck}, State = #rr_recon_state{ struct = Tree }) ->    
  -    Result = [check_node(X, Tree) || X <- ToCheck], %afraid of parallel (util:par_map) which causes lots tree copies
  +on({check_nodes, SenderPid, ToCheck}, State = #rr_recon_state{ struct = Tree }) ->
  +    %not merkle_tree:is_merkle_tree(Tree) andalso
  +    %    ct:pal("Parter: ~p", [[{merkle_tree:get_hash(X), merkle_tree:get_interval(X)} || X <- Tree]]),
  +    {Result, RestTree} = check_node(ToCheck, Tree),
       comm:send(SenderPid, {check_nodes_response, Result}),
  -    State#rr_recon_state{ dest_recon_pid = SenderPid };
  +    State#rr_recon_state{ dest_recon_pid = SenderPid, struct = RestTree };
   
   on({check_nodes_response, CmpResults}, State =
          #rr_recon_state{ dest_recon_pid = DestReconPid,
  
positive.code: -type struct() :: bloom_recon_struct() |
                    merkle_tree:merkle_tree() |
                    art:art() |                        
                    [internal_params()].
  -type recon_dest() :: ?RT:key() | random.
  
  -record(rr_recon_state,
  
negative.code:                         ownerRemotePid = OwnerR,
                          struct = Tree }) ->
      SID = rr_recon_stats:get(session_id, Stats),
      {Req, Res, NStats, RTree} = process_tree_cmp_result(CmpResults, Tree, get_merkle_branch_factor(), Stats),
      %ct:pal("CmpRes=~p~nReq=~p~nRes=~p", [CmpResults, Req, Res]),
      Req =/= [] andalso
          comm:send(DestReconPid, {check_nodes, comm:this(), Req}),    
      {Leafs, Resolves} = lists:foldl(fun(Node, {AccL, AccR}) -> 
                                              {LCount, RCount} = resolve_node(Node, {SrcNode, SID, OwnerL, OwnerR}),
                                              {AccL + LCount, AccR + RCount}
                                      end, {0, 0}, Res),
      FStats = rr_recon_stats:inc([{tree_leafsSynced, Leafs}, 
                                   {resolve_started, Resolves}], NStats),
      CompLeft = rr_recon_stats:get(tree_compareLeft, FStats),
      if CompLeft =:= 0 ->
             %ct:pal("MERKLE - ~p", [FStats]),
             comm:send(DestReconPid, {shutdown, sync_finished_remote}),
             comm:send_local(self(), {shutdown, sync_finished});
         true -> ok
      end,
      State#rr_recon_state{ stats = FStats, struct = RTree }.
  
  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  
  