Ë
    Eü´j)  ã                   óH   — d dl mZ d dlmZ d dlmZ e G d„ de«      «       Zy)é    )Ú	dataclass)ÚClip)ÚEffectc                   ó>   — e Zd ZU dZdZeed<   dZeed<   de	de	fd„Z
y)ÚLoopaf  
    Returns a clip that plays the current clip in an infinite loop.
    Ideal for clips coming from GIFs.

    Parameters
    ----------

    n
      Number of times the clip should be played. If `None` the
      the clip will loop indefinitely (i.e. with no set duration).

    duration
      Total duration of the clip. Can be specified instead of n.
    NÚnÚdurationÚclipÚreturnc                 ó  ‡— |j                   €t        d«      ‚|j                   Š|j                  ˆfd„ddg¬«      }| j                  r| j                  ‰z  | _         | j                   r|j	                  | j                   «      }|S )zApply the effect to the clip.zAttribute 'duration' not setc                 ó   •— | ‰z  S )N© )ÚtÚprevious_durations    €úS/root/workspace/ytshorts/venv/lib/python3.12/site-packages/moviepy/video/fx/Loop.pyú<lambda>zLoop.apply.<locals>.<lambda>"   s   ø€ �aÐ+Ñ+€ ó    ÚmaskÚaudio)Úapply_to)r	   Ú
ValueErrorÚtime_transformr   Úwith_duration)Úselfr
   r   s     @r   Úapplyz
Loop.apply   s|   ø€ à�=‰=Ð ÜÐ;Ó<Ð<à ŸM™MÐØ×"Ñ"Û+°v¸wÐ6Gð #ó 
ˆð �6Š6Ø ŸF™FÐ%6Ñ6ˆDŒMà�=Š=Ø×%Ñ% d§m¡mÓ4ˆDàˆr   )Ú__name__Ú
__module__Ú__qualname__Ú__doc__r   ÚintÚ__annotations__r	   Úfloatr   r   r   r   r   r   r      s/   … ñð €A€sƒMØ€HˆeÓð˜$ð  4ô r   r   N)Údataclassesr   Úmoviepy.Clipr   Úmoviepy.Effectr   r   r   r   r   ú<module>r&      s)   ðÝ !å Ý !ð ô#ˆ6ó #ó ñ#r   