code: def __init__(
      self,
      tokens: Tokens,
      cloud_credentials: Optional[CloudCredentials],
      deploy_config: DeployConfig,
      authorize_target: bool,
  ):
      self._tokens = tokens
      self._cloud_credentials = cloud_credentials
      self._deploy_config = deploy_config
      self._authorize_target = authorize_target
  
imports: from typing import Any, Optional, Dict, Tuple, List
  from contextlib import asynccontextmanager
  from dataclasses import dataclass
  from enum import Enum
  import os
  import json
  import aiohttp
  from hailtop import httpx
  from hailtop.aiocloud.common.credentials import CloudCredentials
  from hailtop.aiocloud.common import Session
  from hailtop.aiocloud.aiogoogle import GoogleCredentials
  from hailtop.aiocloud.aioazure import AzureCredentials
  from hailtop.config import get_deploy_config, DeployConfig, get_user_identity_config_path
  from hailtop.utils import async_to_blocking, retry_transient_errors
  from .tokens import get_tokens, Tokens
  from .flow import GoogleFlow, AzureFlow
label_desc: Use image node_id 1 to create a new HailCredentials object from inherited base classes: CloudCredentials with example: obj = HailCredentials(tokens, cloud_credentials, deploy_config, authorize_target)