anchor.diff:      ok.
   
   
  -handle_call({add_task, Type, TaskName, StatusText}, {From, _}, Server) ->
  +handle_call({add_task, TaskStatus}, {From, _}, Server) ->
       case ets:lookup(?MODULE, From) of
       [] ->
  -        true = ets:insert(?MODULE, {From, {Type, TaskName, StatusText}}),
  +        true = ets:insert(?MODULE, {From, TaskStatus}),
           erlang:monitor(process, From),
           {reply, ok, Server};
       [_] ->
  
positive.code: code_change(_OldVsn, State, _Extra) ->
      {ok, State}.
  
  
negative.code: handle_call(all, _, Server) ->
      All = [
          [
              {type, Task#task_status.type},
              {task, Task#task_status.name},
              {started_on, Task#task_status.start_ts},
              {updated_on, Task#task_status.update_ts},
              {status, Task#task_status.status},
              {pid, ?l2b(pid_to_list(Pid))}
          ]
          ||
          {Pid, Task} <- ets:tab2list(?MODULE)
      ],
      {reply, All, Server}.
  
  
  handle_cast({update_status, Pid, StatusText}, Server) ->
      [{Pid, #task_status{name = TaskName} = Task}] = ets:lookup(?MODULE, Pid),
      ?LOG_DEBUG("New task status for ~s: ~s",[TaskName, StatusText]),
      NewTaskStatus = Task#task_status{status = StatusText, update_ts = now_ts()},
      true = ets:insert(?MODULE, {Pid, NewTaskStatus}),
      {noreply, Server};
  handle_cast(stop, State) ->
      {stop, normal, State}.
  