anchor.diff:  -spec await_open_file(torrent_id(), file_path()) -> {ok, pid()}.
   await_open_file(TorrentID, Path) ->
       Name = {etorrent, TorrentID, Path, file, open},
  +    error_logger:info_msg("~w awaiting open file ~w", [self(), Path]),
       {FilePid, undefined} = gproc:await({n, l, Name}),
  +    error_logger:info_msg("~w open file alive ~w", [self(), Path]),
       {ok, FilePid}.
   
   %%
  
positive.code: -spec await_directory(torrent_id()) -> {ok, pid()}.
  await_directory(TorrentID) ->
      Name = {etorrent, TorrentID, directory},
      {DirPid, undefined} = gproc:await({n, l, Name}),
      {ok, DirPid}.
  
  %%
  
negative.code: -spec await_file_server(torrent_id(), file_path()) -> {ok, pid()}.
  await_file_server(TorrentID, Path) ->
      Name = {etorrent, TorrentID, Path, file},
      error_logger:info_msg("~w awaiting file ~w", [self(), Path]),
      {FilePid, undefined} = gproc:await({n, l, Name}),
      error_logger:info_msg("~w file alive ~w", [self(), Path]),
      {ok, FilePid}.
  
  %%
  