Adding a semaphore so that participants are not double-assigned