public void DequeueAny(PseudoNode item) { //Remove from the all list. var animal = All.Dequeue(); //Then remove from either the dog list or cat list. if (animal.Type == Animal.Cat) { Cats.DequeueAny(animal); } else { Dogs.DequeueAny(animal); } }