anchor.diff:                    {map, [Work], Workers}
             end,
   
  -    Workflow = {pipe, [{seq, TMGLS},
  -                       Map,
  -                       Shuffle]},
  +    Workflow = {pipe, [{seq, TMGLS}, Map]},
   
  -    [FinalIslands] = skel:do([{feedback,
  +    FinalIslands = skel:do([{feedback,
                                  [Workflow],
                                  _While = fun(_Agents) ->
                                                   os:timestamp() < EndTime
                                           end}],
                                [Population]),
       _FinalAgents =
  -        [Agent || {_Island, Agent} <- FinalIslands].
  +        [Agent || {_Island, Agent} <- lists:flatten(FinalIslands)].
   
   
   %% ====================================================================
  
positive.code:             end,
  
      TMGLS = fun (Agents) ->
                      Tagged = lists:map(TagFun,
                                         Agents),
                      Migrated = lists:map(MigrateFun,
                                           Tagged),
                      Grouped = GroupFun(Migrated),
                      LogFun(Grouped),
                      Split(Grouped)
              end,
  
  
      Work = {seq, fun({{Home, Behaviour}, Agents}) ->
                           seed_random_once_per_process(),
  
negative.code:                          [{Home, A} || A <- NewAgents]
                   end },
  
      Map = case Cf#config.skel_pull of
                enable ->
                    {map, [Work], Workers, pull};
  