public void Dispose() { engine.StateChanged -= Engine_StateChanged; vm?.Dispose(); logView?.Dispose(); }