private static Result Execute(int problemId) { var problemSolver = ProblemStore.Instance.Get<IProblemSolver<string>>(problemId); IActionRunner runner = new ActionRunner(); var answer = runner.Invoke<string>(problemSolver.Solve); return new Result(problemSolver.Title, answer, runner.TimeElapsed); }