�
M�gw � �\ � d dl Z d dlZd dlZd dl mZ d dlmZmZmZ d� Zd� Z d� Z
d� Zd� ZdS ) � N)� timedelta)�_init_wait_gen�_maybe_call�
_next_waitc �r � � t j � � � r� S t j � � � � fd�� � }|S )Nc � � �K � �| i |��S )N� )�args�kwargs�coro_or_funcs ��^/home/asafur/pinokio/api/open-webui.git/app/env/lib/python3.11/site-packages/backoff/_async.py�fz_ensure_coroutine.<locals>.f s �� � � ��<��0��0�0�0� )�asyncio�iscoroutinefunction� functools�wraps)r r s ` r
�_ensure_coroutiner
sO �� ��"�<�0�0� ��� ��� &� &� 1� 1� 1� 1�
'� &� 1��r c � � d� | D � � S )Nc �, � g | ]}t |� � ��S r )r )�.0r s r
�
<listcomp>z&_ensure_coroutines.<locals>.<listcomp> s! � �9�9�9�Q��a� � �9�9�9r r )�coros_or_funcss r
�_ensure_coroutinesr s � �9�9�.�9�9�9�9r c � �p K � |||||d�}|� |� � | D ]} ||� � � d {V �� �d S )N��targetr
r �tries�elapsed)�update) �handlersr r
r r r �extra�details�handlers r
�_call_handlersr% su � � � �
������ �G� �N�N�5����� � ���g�g������������ r c �H � ��������� � t �� � �t �� � �t �� � �t j �� � rJ �t j �� � rJ �t j � � � sJ �t j � � � �������� �� f
d�� � }
|
S )Nc � �� �
K � t �� � }t �� � }d}t j � � � }t ��� � } |dz
}t j t j � � � |z
� � }�| |||d�} �| i |��� d {V ��} �| � � r�||k }
|d uo||k }|
s|rt
�fi |�d| i��� d {V �� n� t || �
||� � }n'# t $ r t
�fi |�d| i��� d {V �� Y nOw xY wt
�fi |�| |d���� d {V �� t j
|� � � d {V �� ��t
�fi |�d| i��� d {V �� | S )Nr T� r �value)r) �wait�r �datetime�nowr r �
total_secondsr% r �
StopIterationr �sleep)r
r �max_tries_value�max_time_valuer �startr* r r# �ret�max_tries_exceeded�max_time_exceeded�seconds�jitter�max_time� max_tries�
on_backoff� on_giveup�
on_success� predicater �wait_gen�wait_gen_kwargss ����������r
�retryzretry_predicate.<locals>.retry7 sg �� � � � &�i�0�0��$�X�.�.�����!�%�%�'�'���h��8�8��, ��Q�J�E��-�h�.?�.C�.C�.E�.E��.M�N�N�G� �� ��"�� �G� ���/��/�/�/�/�/�/�/�/�C��y��~�~�
�&+��&>�"�%3�4�%?� &?�%,��%>� "� &� �):� �(��I�I�g�I�I�S�I�I�I�I�I�I�I�I�I�I���(��s�F�G�)7�9� 9�G�G��$� � � �(��I�I�g�I�I�S�I�I�I�I�I�I�I�I�I�I��E����� %�Z� 3� 3�7� 3�#�*1�3� 3� 3� 3� 3� 3� 3� 3� 3� 3� 3� �m�G�,�,�,�,�,�,�,�,�,��$�Z�F�F�7�F�F�#�F�F�F�F�F�F�F�F�F�F���
s �C- �-!D�D)r r r r r )r r? r>