protected async Task ShowResult() { if (ValidateTextbox()) { invalid = false; DayThree _challengeSolver = new DayThree(); await RefreshSlopesMap(); _slopeConfigurations.ForEach(sc => { sc.EncounteredTrees = _challengeSolver.CalculateSlopes(sc.StartPosition, sc.Move, sc.Jumps, _forestMap); }); if (_slopeConfigurations.Select(s => s.EncounteredTrees).Any(r => r > 1)) { double result = _slopeConfigurations .Select(s => s.EncounteredTrees).Aggregate(1.0, (acc, c) => (acc * c)); _productResult = Convert.ToInt64(result); _child.Show(); } else { invalid = true; } } else { invalid = true; } }