protected virtual void StartImpl() { stopped.Reset(); OnStart(); IsRunning = true; Started.Call(); started.Set(); }