public T GetParent <T>(IntPtr self) { IntPtr handle = ObjC.GetVariableValue(self, ivar); return((T)GCHandle.FromIntPtr(handle).Target !); }