protected object GetObject(int index)
        {
            PoolItem item = null;
            object   obj2;

            try
            {
                item = this.GetItem(index);
                item.Accesse();
                obj2 = this.Unwrap(item);
            }
            catch (NullReferenceException)
            {
                throw new IndexOutOfRangeException("cann't found item by special index.");
            }
            return(obj2);
        }