code: def __init__(
      self,
      python_callable: Callable,
      op_args: Sequence | None = None,
      op_kwargs: dict | None = None,
      conn_id: str | None = None,
      config_kwargs: dict | None = None,
      **kwargs,
  ):
      self.conn_id = conn_id
      self.config_kwargs = config_kwargs or {}
  
      signature = inspect.signature(python_callable)
      parameters = [
          param.replace(default=None)
          if param.name in SPARK_CONTEXT_KEYS
          else param
          for param in signature.parameters.values()
      ]
      # mypy does not understand __signature__ attribute
      # see https://github.com/python/mypy/issues/12472
      python_callable.__signature__ = signature.replace(parameters=parameters)  # type: ignore[attr-defined]
  
      kwargs_to_upstream = {
          "python_callable": python_callable,
          "op_args": op_args,
          "op_kwargs": op_kwargs,
      }
      super().__init__(
          kwargs_to_upstream=kwargs_to_upstream,
          python_callable=python_callable,
          op_args=op_args,
          op_kwargs=op_kwargs,
          **kwargs,
      )
  
file_path: airflow/airflow/providers/apache/spark/decorators/pyspark.py
imports: from __future__ import annotations
  import inspect
  from typing import TYPE_CHECKING, Any, Callable, Sequence
  from airflow.decorators.base import DecoratedOperator, TaskDecorator, task_decorator_factory
  from airflow.hooks.base import BaseHook
  from airflow.operators.python import PythonOperator
  from airflow.providers.apache.spark.hooks.spark_connect import SparkConnectHook
label_desc: Use image node_id 1 to create a new _PySparkDecoratedOperator object from inherited base classes: DecoratedOperator, PythonOperator with example: obj = _PySparkDecoratedOperator(python_callable, op_args, op_kwargs, conn_id, config_kwargs)