readd specific semaphore code