class_docstr: Wait strategy that applies exponential backoff.
  
  It allows for a customized multiplier and an ability to restrict the
  upper and lower limits to some maximum and minimum value.
  
  The intervals are fixed (i.e. there is no jitter), so this strategy is
  suitable for balancing retries against latency when a required resource is
  unavailable for an unknown duration, but *not* suitable for resolving
  contention between multiple processes for a shared resource. Use
  wait_random_exponential for the latter case.
code: def __init__(
      self, multiplier=1, max=_utils.MAX_WAIT, exp_base=2, min=0
  ):  # noqa
      self.multiplier = multiplier
      self.min = min
      self.max = max
      self.exp_base = exp_base
  
imports: import abc
  import random
  import six
  from tenacity import _utils
label_desc: Use image node_id 1 to create a new wait_exponential object from inherited base classes: wait_base with example: obj = wait_exponential(multiplier, max, exp_base, min)