
    B-j                     ~    d Z ddlZddlmZ ddgiZg dZdedd	Zd
deddZddefdZ	defdZ
defdZdefdZy)z#
Thin wrappers around `itertools`.
    N   )tqdmzgithub.com/	casperdcl)chainproductpermutationscombinationscombinations_with_replacementbatched)total
tqdm_classc                     | 	 t        t        t        |            }  |t        j                  | fd| i|S # t        t        f$ r Y ,w xY w)z Equivalent of `itertools.chain`.r   )summaplen	TypeErrorAttributeError	itertoolsr   )r   r   	iterableskwargss       d/Users/jameslopez/projects/TradingBot25/.venv/lib/python3.12/site-packages/tqdm/contrib/itertools.pyr   r      sV    }	C+,E iooy1II&II >* 		s   8 A
	A
   )repeatr   r   c              /      K   |-	 t        t        t        |            }d}|D ]  }||z  }	 || z  } |t        j                  |d| ifd|i|D ]  }|  y# t        t        f$ r Y 9w xY ww)z"Equivalent of `itertools.product`.Nr   r   r   )listr   r   r   r   r   r   )r   r   r   r   r   lensis          r   r   r      s     }	C+,D E
 fE	))9DVD\E\U[\ ] >* 		s'   A/A ;A/A,)A/+A,,A/c                     |7	 t        |       }||n|}||kD  rd}nd}t        |||z
  d      D ]  }||z  }	 	  |t	        j
                  | |      fd|i|S # t        t        f$ r Y 0w xY w)z'Equivalent of `itertools.permutations`.r   r   r   )r   ranger   r   r   r   iterablerr   r   r   nr   s          r   r   r   '   s    }	HA YAA1uq!A#r*AQJE +i,,Xq9QQ&QQ >* 		s   A A+*A+c                    |J	 t        |       }||kD  rd}n6d}t        |||z
  d      D ]  }||z  }	 t        d|dz         D ]  }||z  }	 	  |t	        j
                  | |      fd|i|S # t        t        f$ r Y 0w xY w)z'Equivalent of `itertools.combinations`.r   r   r   r   )r   r    r   r   r   r	   r!   s          r   r	   r	   9   s    }	 HA 1uq!A#r*AQJE +q!A#AaKE 'i,,Xq9QQ&QQ >* 		s   A, ,A>=A>c                     |H	 t        |       }d}t        ||z   dz
  |dz
  d      D ]  }||z  }	 t        d|dz         D ]  }||z  }	 	  |t	        j
                  | |      fd|i|S # t        t        f$ r Y 0w xY w)z8Equivalent of `itertools.combinations_with_replacement`.r   r   r   )r   r    r   r   r   r
   r!   s          r   r
   r
   L   s    }		HA E1Q3q5!A#r*
 +1ac]! #i==hJbRWb[abb >* 		s   A* *A<;A<c                     |	 t        |       } |t        j                  | |      f||||z   dz
  |z  ndd|S # t        t        f$ r Y >w xY w)z"Equivalent of `itertools.batched`.Nr   )
unit_scaler   )r   r   r   r   r   )r"   r$   r   r   r   s        r   r   r   \   sr    }	ME i''!4  050AU1WQY1,t     >* 		s   < AA)__doc__r   autor   	tqdm_auto
__author____all__r   r   r   r	   r
   r        r   <module>r0      sv     $k]+
d !Y J  !   ") R$ %)Y R& 6:i c   $	 	 r/   