public override void Dispose() { BeforeDestruct(); impl.Destruct(Native); Native.Dispose(); AfterDestruct(); }