private static @Nullable ProgramRunner<RunnerSettings> getRunner(@NotNull Executor executor, @NotNull RunConfiguration configuration) {
    if (executor instanceof ExecutorGroup<?>) {
      for (Executor childExecutor : ((ExecutorGroup<?>)executor).childExecutors()) {
        ProgramRunner<RunnerSettings> runner = ProgramRunner.getRunner(childExecutor.getId(), configuration);
        if (runner != null) {
          return runner;
        }
      }
    }
    return ProgramRunner.getRunner(executor.getId(), configuration);
  }
private static @Nullable ProgramRunner<RunnerSettings> getRunner(@NotNull Executor executor, @NotNull RunConfiguration configuration)