public override bool DoFlash(string[] flashSpec1, string[] flashSpec2, string solutionType, bool showWarning = false) { CasterLogger.Debug($"DoFlash for {flashSpec1} and {flashSpec2} in Solution type: {solutionType}"); try { PresentPhases = AllowedPhases; _capeThermoEquilibriumRoutine.CalcEquilibrium(flashSpec1, flashSpec2, solutionType); //_alreadyFlashed = true; } catch (Exception e) { if (showWarning) { MessageBox.Show("Flash failed. " + e.Message); } CasterLogger.ErrorFormatted("Flash failed. {0}", e.Message); Debug.WriteLine("Flash failed. {0}", e.Message); return(false); } CasterLogger.Debug($"Finish DoFlash"); return(true); }