List<SeatDesignation> seatDesignationList = createSeatDesignationList(manners2009);
// Assign one guest at a time
List<Seat> undesignatedSeatList = manners2009.getSeatList();
for (SeatDesignation seatDesignation : seatDesignationList) {
Score bestScore = DefaultSimpleScore.valueOf(Integer.MIN_VALUE);
Seat bestSeat = null;
FactHandle seatDesignationHandle = null;
// Try every seat for that guest
// TODO by reordening the seats so index 0 has a different table then index 1 and so on,
// this will probably be faster because perfectMatch will be true sooner