code: def setup(self, kwargs):
      self.kwargs = kwargs
  
      # built up login settings
      login_settings: Settings = wandb.Settings()
      settings_param = kwargs.pop("_settings", None)
      # note that this case does not come up anywhere except for the tests
      if settings_param is not None:
          if isinstance(settings_param, Settings):
              login_settings._apply_settings(settings_param)
          elif isinstance(settings_param, dict):
              login_settings.update(settings_param, source=Source.LOGIN)
      _logger = wandb.setup()._get_logger()
      # Do not save relogin into settings as we just want to relogin once
      self._relogin = kwargs.pop("relogin", None)
      login_settings._apply_login(kwargs, _logger=_logger)
  
      # make sure they are applied globally
      self._wl = wandb.setup(settings=login_settings)
      self._settings = self._wl.settings
  
imports: import enum
  import os
  import sys
  from typing import Dict, Optional, Tuple
  import click
  import wandb
  from wandb.errors import AuthenticationError, UsageError
  from wandb.old.settings import Settings
  from ..apis import InternalApi
  from .internal.internal_api import Api
  from .lib import apikey
  from .wandb_settings import Settings, Source
label_desc: Use image node_id 2 for calling the _WandbLogin obj's underlying member method code with example usage: obj.setup(kwargs) without return types