private void PushWork() { if (Machines.ContainsValue(true) && ReadyItems.Count() != 0) { var key = Machines.First(X => X.Value == true).Key; Machines.Remove(key); var m = new MachineAgent.Work(ReadyItems.Dequeue(), key); Machines.Add(key, false); _SimulationContext.Tell(m, Sender); } ; }