def METHOD_NAME(
    dataset: str,
    config: str,
    split: str,
    app_config: AppConfig,
) -> SplitOptInOutUrlsCountJobRunner:
    processing_step_name = SplitOptInOutUrlsCountJobRunner.get_job_type()
    processing_graph = ProcessingGraph(
        {
            "dataset-level": {"input_type": "dataset"},
            "config-level": {"input_type": "dataset", "triggered_by": "dataset-level"},
            processing_step_name: {
                "input_type": "split",
                "job_runner_version": SplitOptInOutUrlsCountJobRunner.get_job_runner_version(),
                "triggered_by": "config-level",
            },
        }
    )
    return SplitOptInOutUrlsCountJobRunner(
        job_info={
            "type": SplitOptInOutUrlsCountJobRunner.get_job_type(),
            "params": {
                "dataset": dataset,
                "revision": "revision",
                "config": config,
                "split": split,
            },
            "job_id": "job_id",
            "priority": Priority.NORMAL,
            "difficulty": 50,
        },
        app_config=app_config,
        processing_step=processing_graph.get_processing_step(processing_step_name),
    )