#1 Now handles the case when there are no free slots