public void FindContest() { var filter = IO.GetFilter(); var idx = 0; var nextContestIndex = NextContest(filter, idx); do { var contestIdx = nextContestIndex.GetAwaiter().GetResult(); if (contestIdx == -1) { IO.NotFound(); Environment.Exit(1); } idx = contestIdx + 1; IO.DisplayContest(_contests[contestIdx]); nextContestIndex = NextContest(filter, idx); } while(IO.AnotherContest()); }