code: def __init__(
      self,
      address: Optional[str] = None,
      create_cluster_if_needed: bool = False,
      cookies: Optional[Dict[str, Any]] = None,
      metadata: Optional[Dict[str, Any]] = None,
      headers: Optional[Dict[str, Any]] = None,
      verify: Optional[Union[str, bool]] = True,
  ):
      # Remove any trailing slashes
      if address is not None and address.endswith("/"):
          address = address.rstrip("/")
          logger.debug(
              "The submission address cannot contain trailing slashes. Removing "
              f'them from the requested submission address of "{address}".'
          )
  
      cluster_info = parse_cluster_info(
          address, create_cluster_if_needed, cookies, metadata, headers
      )
      self._address = cluster_info.address
      self._cookies = cluster_info.cookies
      self._default_metadata = cluster_info.metadata or {}
      # Headers used for all requests sent to job server, optional and only
      # needed for cases like authentication to remote cluster.
      self._headers = cluster_info.headers
      # Set SSL verify parameter for the requests library and create an ssl_context
      # object when needed for the aiohttp library.
      self._verify = verify
      if isinstance(self._verify, str):
          if os.path.isdir(self._verify):
              cafile, capath = None, self._verify
          elif os.path.isfile(self._verify):
              cafile, capath = self._verify, None
          else:
              raise FileNotFoundError(
                  f"Path to CA certificates: '{self._verify}', does not exist."
              )
          self._ssl_context = ssl.create_default_context(
              cafile=cafile, capath=capath
          )
      else:
          if self._verify is False:
              self._ssl_context = False
          else:
              self._ssl_context = None
  
imports: import dataclasses
  import importlib
  import logging
  import json
  import os
  import yaml
  from pathlib import Path
  import tempfile
  from typing import Any, Dict, List, Optional, Union
  import packaging.version
  import ray
  import ssl
  from ray._private.runtime_env.packaging import create_package, get_uri_for_directory, get_uri_for_package
  from ray._private.runtime_env.py_modules import upload_py_modules_if_needed
  from ray._private.runtime_env.working_dir import upload_working_dir_if_needed
  from ray.dashboard.modules.job.common import uri_to_http_components
  from ray.util.annotations import DeveloperAPI, PublicAPI
  from ray._private.utils import split_address
  from ray.autoscaler._private.cli_logger import cli_logger
label_desc: Use image node_id 1 to create a new SubmissionClient object  with example: obj = SubmissionClient(address, create_cluster_if_needed, cookies, metadata, headers, verify)