Ë
    rPêj‘  ã                   ó$   — d Z ddlZ G d„ d«      Zy)zRetry quota implementation.é    Nc                   ó8   — e Zd ZdZedfd„Zd„ Zd„ Zed„ «       Zy)Ú
RetryQuotaiô  Nc                 óZ   — || _         || _        |€t        j                  «       }|| _        y ©N)Ú_max_capacityÚ_available_capacityÚ	threadingÚLockÚ_lock)ÚselfÚinitial_capacityÚlocks      ú[/home/oem/CyberBrain26-unified/.venv/lib/python3.12/site-packages/botocore/retries/quota.pyÚ__init__zRetryQuota.__init__	   s*   € Ø-ˆÔØ#3ˆÔ Øˆ<Ü—>‘>Ó#ˆDØˆ�
ó    c                 ó¤   — | j                   5  || j                  kD  r
	 ddd«       y| xj                  |z  c_        	 ddd«       y# 1 sw Y   yxY w)zýAttempt to aquire a certain amount of capacity.

        If there's not sufficient amount of capacity available, ``False``
        is returned.  Otherwise, ``True`` is returned, which indicates that
        capacity was successfully allocated.

        NFT)r   r   )r   Úcapacity_amounts     r   ÚacquirezRetryQuota.acquire   sQ   € ð �Z‰Zñ 	Ø ×!9Ñ!9Ò9Ø÷	ð 	ð ×$Ò$¨Ñ7Õ$Ø÷		÷ 	ñ 	ús   �A§AÁAc                 óê   — | j                   | j                  k(  ry| j                  5  t        | j                   | j                  z
  |«      }| xj                  |z  c_        ddd«       y# 1 sw Y   yxY w)z­Release capacity back to the retry quota.

        The capacity being released will be truncated if necessary
        to ensure the max capacity is never exceeded.

        N)r   r   r   Úmin)r   r   Úamounts      r   ÚreleasezRetryQuota.release    sj   € ð ×Ñ ×!9Ñ!9Ò9ØØ�Z‰Zñ 	/ÜØ×"Ñ" T×%=Ñ%=Ñ=¸óˆFð ×$Ò$¨Ñ.Õ$÷		/÷ 	/ñ 	/ús   §9A)Á)A2c                 ó   — | j                   S r   )r   )r   s    r   Úavailable_capacityzRetryQuota.available_capacity4   s   € à×'Ñ'Ð'r   )	Ú__name__Ú
__module__Ú__qualname__ÚINITIAL_CAPACITYr   r   r   Úpropertyr   © r   r   r   r      s0   „ ØÐà(8¸tó òò /ð( ñ(ó ñ(r   r   )Ú__doc__r	   r   r    r   r   ú<module>r"      s   ðÙ !ã ÷0(ò 0(r   