anchor.diff:        end
     end.
   
  -filter_sleeping([], AvailableActors) -> AvailableActors;
  -filter_sleeping([#event{actor = Actor}|Sleeping], AvailableActors) ->
  +filter_sleep_set([], AvailableActors) -> AvailableActors;
  +filter_sleep_set([#event{actor = Actor}|SleepSet], AvailableActors) ->
     NewAvailableActors =
       case ?is_channel(Actor) of
         true -> lists:keydelete(Actor, 1, AvailableActors);
         false -> lists:delete(Actor, AvailableActors)
       end,
  -  filter_sleeping(Sleeping, NewAvailableActors).
  +  filter_sleep_set(SleepSet, NewAvailableActors).
   
   schedule_sort([], _State) -> [];
   schedule_sort(Actors, State) ->
  
positive.code:        index       = Index + 1,
         previous_actor = Actor,
         scheduling_bound = NewSchedulingBound,
         sleeping    = NextSleeping,
         wakeup_tree = NextWakeupTree
        },
    NewLastTrace =
  
negative.code: free_schedule_1(_Event, [], State) ->
    %% Nothing to do, trace is completely explored
    #scheduler_state{logger = _Logger, trace = [Last|_]} = State,
    #trace_state{actors = Actors, sleep_set = SleepSet} = Last,
    NewErrors =
      case SleepSet =/= [] of
        true ->
          ?debug(_Logger, "Sleep set block:~n ~p~n", [SleepSet]),
          [{sleep_set_block, {State#scheduler_state.origin, SleepSet}}];
        false ->
          case concuerror_callback:collect_deadlock_info(Actors) of
            [] -> [];
  