private static Node generateRootWithGhostTutor(List<Tutor> tutors, List<Course> courses, List<Shift> shifts) {
    HashMap<Rank, Set<Course>> ghostCoursePreferences = new HashMap<>();
    ghostCoursePreferences.put(Rank.PREFER, new HashSet<>(courses));

    HashMap<Rank, Set<Shift>> ghostShiftPreferences = new HashMap<>();
    ghostShiftPreferences.put(Rank.PREFER, new HashSet<>(shifts));

    HashMap<Rank, Integer> ghostShiftFrequencyPreferences = new HashMap<>();
    ghostShiftFrequencyPreferences.put(Rank.PREFER, Integer.MAX_VALUE);

    TutorPreferences ghostTutorPreference = new TutorPreferences(ghostCoursePreferences, ghostShiftPreferences, ghostShiftFrequencyPreferences);
    Tutor ghostTutor = new Tutor(-1, "Ghost", "Tutor", ghostTutorPreference, TutorStatus.ACTIVE);

    tutors.add(ghostTutor);
    return generateRoot(tutors, courses, shifts);
}

        
main