class_docstr: Chain two or more waiting strategies.
  
  If all strategies are exhausted, the very last strategy is used
  thereafter.
  
  For example::
  
      @retry(wait=wait_chain(*[wait_fixed(1) for i in range(3)] +
                             [wait_fixed(2) for j in range(5)] +
                             [wait_fixed(5) for k in range(4)))
      def wait_chained():
          print("Wait 1s for 3 attempts, 2s for 5 attempts and 5s
                 thereafter.")
class_docstr_tok: ["Chain","two","or","more","waiting","strategies",".","If","all","strategies","are","exhausted",",","the","very","last","strategy","is","used","thereafter",".","For","example",":",":","@","retry","(","wait=wait_chain","(","*","[","wait_fixed","(","1",")","for","i","in","range","(","3",")","]","+","[","wait_fixed","(","2",")","for","j","in","range","(","5",")","]","+","[","wait_fixed","(","5",")","for","k","in","range","(","4",")",")",")","def","wait_chained","(",")",":","print","(","``","Wait","1s","for","3","attempts",",","2s","for","5","attempts","and","5s","thereafter",".","''",")"]
code: def __init__(self, *strategies: wait_base) -> None:
      self.strategies = strategies
  
imports: import abc
  import random
  import typing
  from tenacity import _utils
label_desc: Use image node_id 1 to create a new wait_chain object from inherited base classes: wait_base with example: obj = wait_chain()