protected override void Dispose(bool disposing)
        {
            try
            {
                if (disposing)
                {
                    if (_wrapped != null && _ownership == Ownership.Dispose)
                    {
                        _wrapped.Dispose();
                    }

                    _wrapped = null;
                }
            }
            finally
            {
                base.Dispose(disposing);
            }
        }