anchor.diff:  basic_operations_test(Config) ->
       [Worker1, Worker2] = ?config(op_worker_nodes, Config),
   
  -    {A1, U1} = ?call(Worker1, create, [{path, <<"/">>}, #file_meta{name = <<"spaces">>, is_scope = true}]),
  -    {A2, U2} = ?call(Worker2, create, [{path, <<"/spaces">>}, #file_meta{name = <<"Space 1">>, is_scope = true}]),
  -    {A3, U3} = ?call(Worker1, create, [{path, <<"/spaces/Space 1">>}, #file_meta{name = <<"dir1">>}]),
  +    {{A1, U1}, CreateLevel0} = ?call_with_time(Worker1, create, [{path, <<"/">>}, #file_meta{name = <<"spaces">>, is_scope = true}]),
  +    {{A2, U2}, CreateLevel1} = ?call_with_time(Worker2, create, [{path, <<"/spaces">>}, #file_meta{name = <<"Space 1">>, is_scope = true}]),
  +    {{A3, U3}, CreateLevel2} = ?call_with_time(Worker1, create, [{path, <<"/spaces/Space 1">>}, #file_meta{name = <<"dir1">>}]),
       {A4, U4} = ?call(Worker1, create, [{path, <<"/spaces/Space 1/dir1">>}, #file_meta{name = <<"file1">>}]),
       {A20, U20} = ?call(Worker1, create, [{path, <<"/spaces/Space 1">>}, #file_meta{name = <<"dir2">>}]),
       {A21, U21} = ?call(Worker1, create, [{path, <<"/spaces/Space 1/dir2">>}, #file_meta{name = <<"file1">>}]),
  
positive.code:     ?assertMatch({ok, #document{value = #file_meta{name = <<"dir1">>}}},    {A7, U7}),
      ?assertMatch({ok, #document{value = #file_meta{name = <<"file1">>}}},   {A8, U8}),
  
      {A30, U30} = ?call(Worker1, gen_path, [{path, <<"/spaces/Space 1/dir2/file1">>}]),
      {A31, U31} = ?call(Worker2, gen_path, [{path, <<"/spaces/Space 1/dir2/file2">>}]),
      {A32, U32} = ?call(Worker2, gen_path, [{path, <<"/spaces/Space 1/dir2/file3">>}]),
      ?assertMatch({ok, <<"/spaces/Space 1/dir2/file1">>}, {A30, U30}),
      ?assertMatch({ok, <<"/spaces/Space 1/dir2/file2">>}, {A31, U31}),
      ?assertMatch({ok, <<"/spaces/Space 1/dir2/file3">>}, {A32, U32}),
  
  
      {A9, U9} =   ?call(Worker1, get_scope, [U14]),
      {A10, U10} = ?call(Worker1, get_scope, [U5]),
      {A11, U11} = ?call(Worker2, get_scope, [U6]),
      {A12, U12} = ?call(Worker1, get_scope, [U7]),
      {A13, U13} = ?call(Worker2, get_scope, [U8]),
      ?assertMatch({ok, #document{key = <<"">>}},         {A9, U9}),
  
negative.code: 
  %%%===================================================================
  %%% Internal functions
  %%%===================================================================
  
  exec_and_check_time(Mod, M, A) ->
      BeforeProcessing = os:timestamp(),
      Ans = erlang:apply(Mod, M, A),
      AfterProcessing = os:timestamp(),
      {Ans, timer:now_diff(AfterProcessing, BeforeProcessing)}.
  
  create_deep_tree(Worker) ->
      create_deep_tree(Worker, "/spaces/Space 1", 18).
  
  create_deep_tree(Worker, Prefix, 1) ->
      {{A, U}, Time} = ?call_with_time(Worker, create, [{path, list_to_binary(Prefix)}, #file_meta{name = <<"1">>}]),
      ?assertMatch({ok, _}, {A, U}),
      {list_to_binary(Prefix++"/1"), Time};
  
  create_deep_tree(Worker, Prefix, Num) ->
      StringNum = integer_to_list(Num),
      {A, U} = ?call(Worker, create, [{path, list_to_binary(Prefix)}, #file_meta{name = list_to_binary(StringNum)}]),
      ?assertMatch({ok, _}, {A, U}),
      create_deep_tree(Worker, Prefix++"/"++StringNum, Num-1).
  