anchor.diff:  %%     verb(" done\n", []),
   %%     ok.
   
  +%% copy_file_proc_checksum_fun(File, SrcS, DstS, _Verbose) ->
  +%%     fun(<<OffsetHex:16/binary, " ", LenHex:8/binary, " ",
  +%%           CSumHex:32/binary, "\n">>) ->
  +%%             <<Len:32/big>> = hexstr_to_bin(LenHex),
  +%%             DownloadChunkBin = <<OffsetHex/binary, " ", LenHex/binary, " ",
  +%%                                  File/binary, "\n">>,
  +%%             [Chunk] = escript_download_chunks(SrcS, {{{DownloadChunkBin}}},
  +%%                                               fun(_) -> ok end),
  +%%             CSum = hexstr_to_bin(CSumHex),
  +%%             CSum2 = checksum(Chunk),
  +%%             if Len == byte_size(Chunk), CSum == CSum2 ->
  +%%                     {_,_,_} = upload_chunk_write(DstS, OffsetHex, File, Chunk),
  +%%                     ok;
  +%%                true ->
  +%%                     io:format("ERROR: ~s ~s ~s csum/size error\n",
  +%%                               [File, OffsetHex, LenHex]),
  +%%                     error
  +%%             end;
  +%%        (_Else) ->
  +%%             ok
  +%%     end.
  +
   %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
   
   file_folder(Fun, Acc, Path) ->
  
positive.code: mbytes(Size) ->
      lists:flatten(io_lib:format("~.1.0f", [max(0.1, Size / (1024*1024))])).
  
  
negative.code: %% These macros assume there's a bound variable called Verb.
  -define(VERB(Fmt),       if Verb -> io:format(Fmt      ); true -> ok end).
  -define(VERB(Fmt, Args), if Verb -> io:format(Fmt, Args); true -> ok end).
  
  -ifdef(TEST).
  -compile(export_all).
  -endif. % TEST
  
  -export([repair_cp/4, repair_ap/6]).
  
  