code: def __init__(
      self,
      config: MarsExecutionConfig,
      task: Task,
      tile_context: TileContext,
      cluster_api: ClusterAPI,
      lifecycle_api: LifecycleAPI,
      scheduling_api: SchedulingAPI,
      meta_api: MetaAPI,
      resource_evaluator: ResourceEvaluator,
      ctx: ThreadedServiceContext,
  ):
      self._config = config
      self._task = task
      self._tileable_graph = task.tileable_graph
      self._raw_tile_context = tile_context.copy()
      self._tile_context = tile_context
      self._session_id = task.session_id
  
      # api
      self._cluster_api = cluster_api
      self._lifecycle_api = lifecycle_api
      self._scheduling_api = scheduling_api
      self._meta_api = meta_api
  
      self._stage_processors = []
      self._stage_tile_progresses = []
      self._cur_stage_processor = None
      self._result_tileables_lifecycle = None
      self._subtask_decref_events = dict()
      self._meta_updated_tileables = set()
  
      # Evaluate and initialize subtasks required resource.
      self._resource_evaluator = resource_evaluator
  
      # context
      self._ctx = ctx
  
imports: import asyncio
  import logging
  import sys
  from collections import defaultdict
  from typing import Dict, List, Optional, Set
  from .....None import oscar
  from .....core import ChunkGraph, TileContext
  from .....core.operand import Fetch, MapReduceOperand, OperandStage, ShuffleProxy
  from .....lib.aio import alru_cache
  from .....oscar.profiling import ProfilingData
  from .....resource import Resource
  from .....typing import TileableType, BandType
  from .....utils import Timer
  from ....context import ThreadedServiceContext
  from ....cluster.api import ClusterAPI
  from ....lifecycle.api import LifecycleAPI
  from ....meta.api import MetaAPI
  from ....scheduling import SchedulingAPI
  from ....subtask import Subtask, SubtaskResult, SubtaskStatus, SubtaskGraph
  from ...core import Task
  from ..api import TaskExecutor, register_executor_cls
  from ..utils import ResultTileablesLifecycle
  from .config import MarsExecutionConfig
  from .resource import ResourceEvaluator
  from .stage import TaskStageProcessor
label_desc: Use image node_id 1 to create a new MarsTaskExecutor object from inherited base classes: TaskExecutor with example: obj = MarsTaskExecutor(config, task, tile_context, cluster_api, lifecycle_api, scheduling_api, meta_api, resource_evaluator, ctx)