private bool TryGrow() { int currentCount = availableItems.Count; if (currentCount == 0) { for (int i = 0; i < growValue; i++) { var item = factory.Create(); items.Add(item); availableItems.Push(item); } return(true); } return(false); }