anchor.diff:      %% Waits enough for node 3 to sync but not for it to build a new chain
       wait_for_value({height, Length}, [new_node1], MiningTime * 3, Cfg),
       ct:log("Node 3 on same height"),
  -    Height3 = request(new_node1, [v2, 'block-by-height'], #{height => Length}, Cfg),
  -    ct:log("Node 3 at height ~p: ~p~n", [Length, Height3]),
  +    {ok, 200, Height3} = request(new_node1, 'GetBlockByHeight', #{height => Length}),
  +    ct:log("Node 3 at height ~p: ~p", [Length, Height3]),
   
       %% Checks node 3 is synchronized with nodes 1 and 2
       ?assertEqual(Height1, Height3),
  
positive.code:     MiningTime = round(timer:now_diff(EndTime, StartTime) * 1.5)
                   div (1000 * Length),
  
      Top1 = request(old_node1, [v2, 'top'], #{}, Cfg),
      ct:log("Node 1 top: ~p~n", [Top1]),
      Height1 = request(old_node1, [v2, 'block-by-height'], #{height => Length}, Cfg),
      ct:log("Node 1 at height ~p: ~p~n", [Length, Height1]),
      Height2 = request(old_node2, [v2, 'block-by-height'], #{height => Length}, Cfg),
      ct:log("Node 2 at height ~p: ~p~n", [Length, Height2]),
  
      %% Checks node 1 and 2 are synchronized
      ?assertEqual(Height1, Height2),
  
negative.code:     wait_for_value({height, Length * 3}, [net1_node1, net1_node2, net2_node1, net2_node2],
                      Length * 2 * ?MINING_TIMEOUT, Cfg),
  
      {ok, 200, B1} = request(net1_node1, 'GetBlockByHeight', #{height => Length * 3}),
      {ok, 200, B2} = request(net1_node2, 'GetBlockByHeight', #{height => Length * 3}),
      {ok, 200, B3} = request(net2_node1, 'GetBlockByHeight', #{height => Length * 3}),
      {ok, 200, B4} = request(net2_node2, 'GetBlockByHeight', #{height => Length * 3}),
  
      %% Check that the chain merged
      ?assertEqual(B1, B2),
  