class_docstr: Context that providing API that can be
  used inside `tile` and `execute`.
code: def __init__(
      self,
      session_id: str = None,
      supervisor_address: str = None,
      worker_address: str = None,
      local_address: str = None,
      band: BandType = None,
  ):
      if session_id is None:
          # try to get session id from environment
          session_id = os.environ.get("MARS_SESSION_ID")
          if session_id is None:
              raise ValueError(
                  "session_id should be provided to create a context"
              )
      if supervisor_address is None:
          # try to get supervisor address from environment
          supervisor_address = os.environ.get("MARS_SUPERVISOR_ADDRESS")
          if supervisor_address is None:
              raise ValueError(
                  "supervisor_address should be provided to create a context"
              )
  
      self.session_id = session_id
      self.supervisor_address = supervisor_address
      self.worker_address = worker_address
      self.local_address = local_address
      self.band = band
  
imports: import os
  from abc import ABC, abstractmethod
  from typing import List, Dict
  from ..typing import BandType, SessionType
  from ..storage.base import StorageLevel
  from ..utils import classproperty
label_desc: Use image node_id 1 to create a new Context object from inherited base classes: ABC with example: obj = Context(session_id, supervisor_address, worker_address, local_address, band)