{ Problem: }  { Deadlock occurs if you use a semaphore for the individual ingredients. }  

{ Solution: }  { Use a semaphore for each combination of ingredients. }