public void Dispose()
{
var stopwatch = Stopwatch.StartNew();
logger?.Info("Shutting down");
// shutdown
viewModel?.Dispose();
dummyMonitor?.Dispose();
bitSharpNode?.Dispose();
logger?.Info($"Finished shutting down: {stopwatch.Elapsed.TotalSeconds:N2}s");
}