anchor.diff:  handle_cast(_Msg, S) ->
       {noreply, S}.
   
  +handle_info({adjust_down_list, FLU}, #state{active_unfit=ActiveUnfit}=S) ->
  +    io:format(user, "ADJUST: ~w: {adjust_down_list, ~w}\n", [S#state.my_flu_name,FLU]),
  +    NewUnfit = make_unfit_list(S),
  +    Added_to_new     = NewUnfit -- ActiveUnfit,
  +    Dropped_from_new = ActiveUnfit -- NewUnfit,
  +    case {lists:member(FLU,Added_to_new), lists:member(FLU,Dropped_from_new)} of
  +        {true, true} ->
  +            error({bad, ?MODULE, ?LINE, FLU, ActiveUnfit, NewUnfit});
  +        {true, false} ->
  +            {noreply, S#state{active_unfit=lists:usort(ActiveUnfit ++ [FLU])}};
  +        {false, true} ->
  +            {noreply, S#state{active_unfit=ActiveUnfit -- [FLU]}};
  +        {false, false} ->
  +            {noreply, S}
  +    end;
   handle_info(_Info, S) ->
       {noreply, S}.
   
  
positive.code: 
  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  
  make_unfit_list(S) ->
      Now = erlang:now(),
      F = fun({Server, {UpdateTime, DownList, _Props}}, Acc) ->
                  case timer:now_diff(Now, UpdateTime) div (1000*1000) of
  
negative.code:     io:format(user, "send_spam: ~w: sent to ~w\n", [MyFluName, Sent]),
      ok.
  
  calc_unfit(All_list, HosedAnnotations) ->
      G = digraph:new(),
      [digraph:add_vertex(G, V) || V <- All_list],
      [digraph:add_edge(G, V1, V2) || {V1, problem_with, V2} <- HosedAnnotations],
      calc_unfit2(lists:sort(digraph:vertices(G)), G).
  
  calc_unfit2([], G) ->
      digraph:delete(G),
      [];
  calc_unfit2([H|T], G) ->
      case digraph:in_degree(G, H) of
          0 ->
              calc_unfit2(T, G);
          1 ->
              Neighbors = digraph:in_neighbours(G, H),
              case [V || V <- Neighbors, digraph:in_degree(G, V) == 1] of
                  [AlsoOne|_] ->
                      %% TODO: be smarter here about the choice of which is down.
                      [H|calc_unfit2(T -- [AlsoOne], G)];
                  [] ->
                      %% H is "on the end", e.g. 1-2-1, so it's OK.
                      calc_unfit2(T, G)
              end;
          N when N > 1 ->
              [H|calc_unfit2(T, G)]
      end.
  
  do_incoming_spam(Author, Map,
  