fixing semaphores
fixing ordering
blah