Ë
    rPêjó  ã                   ó:   — d dl mZ  edg d¢«      Z G d„ d«      Zy)é    )Ú
namedtupleÚCubicParams©Úw_maxÚkÚ	last_failc                   ó8   — e Zd ZdZdZeefd„Zd„ Zd„ Zd„ Zd„ Z	y)	ÚCubicCalculatorgš™™™™™Ù?gffffffæ?c                 óf   — || _         || _        || _        | j                  «       | _        || _        y ©N)Ú_w_maxÚ_scale_constantÚ_betaÚ_calculate_zero_pointÚ_kÚ
_last_fail)ÚselfÚstarting_max_rateÚ
start_timeÚscale_constantÚbetas        ú`/home/oem/CyberBrain26-unified/.venv/lib/python3.12/site-packages/botocore/retries/throttling.pyÚ__init__zCubicCalculator.__init__
   s1   € ð (ˆŒØ-ˆÔØˆŒ
Ø×,Ñ,Ó.ˆŒØ$ˆ�ó    c                 ób   — | j                   d| j                  z
  z  | j                  z  }|dz  }|S )Né   gUUUUUUÕ?)r   r   r   )r   Úscaled_valuer   s      r   r   z%CubicCalculator._calculate_zero_point   s2   € ØŸ™ q¨4¯:©:¡~Ñ6¸$×:NÑ:NÑNˆØ˜WÑ%ˆØˆr   c                 ó|   — || j                   z
  }| j                  || j                  z
  dz  z  | j                  z   }|S )Né   )r   r   r   r   )r   Ú	timestampÚdtÚnew_rates       r   Úsuccess_receivedz CubicCalculator.success_received   s;   € Ø˜Ÿ™Ñ(ˆØ×'Ñ'¨2°·±©<¸AÑ*=Ñ=ÀÇÁÑKˆØˆr   c                 óf   — || _         | j                  «       | _        || _        || j                  z  S r   )r   r   r   r   r   )r   Úcurrent_rater    s      r   Úerror_receivedzCubicCalculator.error_received!   s1   € ð
 #ˆŒØ×,Ñ,Ó.ˆŒØ#ˆŒØ˜dŸj™jÑ(Ð(r   c                 óZ   — t        | j                  | j                  | j                  ¬«      S )aX  Return a read-only object of the current cubic parameters.

        These parameters are intended to be used for debug/troubleshooting
        purposes.  These object is a read-only snapshot and cannot be used
        to modify the behavior of the CUBIC calculations.

        New parameters may be added to this object in the future.

        r   )r   r   r   r   )r   s    r   Úget_params_snapshotz#CubicCalculator.get_params_snapshot+   s$   € ô Ø—+‘+ §¡°D·O±Oô
ð 	
r   N)
Ú__name__Ú
__module__Ú__qualname__Ú_SCALE_CONSTANTÚ_BETAr   r   r#   r&   r(   © r   r   r
   r
      s-   „ Ø€OØ€Eð 'Øó%òò
ò
)ó
r   r
   N)Úcollectionsr   r   r
   r.   r   r   ú<module>r0      s   ðÝ "á˜Ò(CÓD€÷1
ò 1
r   