Sindbad~EG File Manager

Current Path : /usr/local/lib/python3.12/site-packages/pytweening/__pycache__/
Upload File :
Current File : //usr/local/lib/python3.12/site-packages/pytweening/__pycache__/__init__.cpython-312.pyc

�

%ٜg�����ddlmZddlZ	ddlmZmZmZdZd�Z	d�Z
d�Zd�Zd	�Z
d
�Zd�Zd�Zd
�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Z d�Z!d�Z"d�Z#d �Z$d!�Z%dLd"�Z&dLd#�Z'dLd$�Z(dLd%�Z)dLd&�Z*dLd'�Z+d(�Z,d)�Z-d*�Z.d+�Z/d,�Z0d-�Z1d.�Z2d/�Z3d0�Z4d1�Z5d2�Z6d3�Z7d4�Z8d5�Z9d6�Z:d7�Z;d8�Z<d9�Z=	dMd:�Z>dMd;�Z?	dMd<�Z@dMd=�ZA	dNd>�ZBdNd?�ZCdOd@�ZDdOdA�ZEdOdB�ZFdOdC�ZGdOdD�ZHdOdE�ZIdF�ZJdG�ZKdH�ZLdI�ZMdJ�ZNdK�ZOy#e$rY��wxYw)P�)�divisionN)�List�Tuple�Unionz1.2.0c��t|�t|�t|�t|�f\}}}}g}t||z
�t||z
�kD}|r||}}||}}d}||kDr
||}}||}}d}||z
}t||z
�}t|dz�}	|}
d}||krd}nd}t||dz�D]@}|r|j|
|f�n|j||
f�|	|z}	|	dks�7|
|z
}
|	|z
}	�B|r|j	�|S)a0Returns a list of (x, y) tuples of every point on a line between
    (x1, y1) and (x2, y2). The x and y values inside the tuple are integers.

    Line generated with the Bresenham algorithm.

    Args:
      x1 (int, float): The x coordinate of the line's start point.
      y1 (int, float): The y coordinate of the line's start point.
      x2 (int, float): The x coordinate of the line's end point.
      y2 (int, float): The y coordiante of the line's end point.

    Returns:
      [(x1, y1), (x2, y2), (x3, y3), ...]

    Example:
    >>> getLine(0, 0, 6, 6)
    [(0, 0), (1, 1), (2, 2), (3, 3), (4, 4), (5, 5), (6, 6)]
    >>> getLine(0, 0, 3, 6)
    [(0, 0), (0, 1), (1, 2), (1, 3), (2, 4), (2, 5), (3, 6)]
    >>> getLine(3, 3, -3, -3)
    [(3, 3), (2, 2), (1, 1), (0, 0), (-1, -1), (-2, -2), (-3, -3)]
    FT�N����r)�int�abs�range�append�reverse)
�x1�y1�x2�y2�points�issteep�rev�deltax�deltay�error�y�ystep�xs
             �>/usr/local/lib/python3.12/site-packages/pytweening/__init__.py�getLiners-��.��W�c�"�g�s�2�w��B��7�N�B��B��
�F��"�r�'�l�S��b��\�)�G���R�B���R�B��
�C�	�B�w��R�B���R�B����
�"�W�F�
��b��\�F����
�O�E�
�A��E�	�B�w�����
�2�r�A�v�
����M�M�1�a�&�!��M�M�1�a�&�!�
�����1�9�
��J�A��V�O�E��������M�c�.�||z
|z|z||z
|z|zfS)a#Returns the (x, y) tuple of the point that has progressed a proportion
    n along the line defined by the two x, y coordinates.

    Args:
      startX (int, float): The x coordinate of the line's start point.
      startY (int, float): The y coordinate of the line's start point.
      endX (int, float): The x coordinate of the line's end point.
      endY (int, float): The y coordinate of the line's end point.
      n (int, float): Progress along the line. 0.0 is the start point, 1.0 is the end point. 0.5 is the midpoint. This value can be less than 0.0 or greater than 1.0.

    Returns:
      Tuple of floats for the x, y coordinate of the point.

    Example:
    >>> getPointOnLine(0, 0, 6, 6, 0)
    (0, 0)
    >>> getPointOnLine(0, 0, 6, 6, 1)
    (6, 6)
    >>> getPointOnLine(0, 0, 6, 6, 0.5)
    (3.0, 3.0)
    >>> getPointOnLine(0, 0, 6, 6, 0.75)
    (4.5, 4.5)
    >>> getPointOnLine(3, 3, -3, -3, 0.5)
    (0.0, 0.0)
    >>> getPointOnLine(3, 3, -3, -3, 0.25)
    (1.5, 1.5)
    >>> getPointOnLine(3, 3, -3, -3, 0.75)
    (-1.5, -1.5)
    �)�startX�startY�endX�endY�ns     r�getPointOnLiner'Hs,��@�V�m�q�
 �F�*�d�V�m�q�-@�F�,J�K�Krc'�K�|dg|���}||z
|z|z||z
|z|zf��|}|dzdkr/||g|���}||z
|z|z||z
|z|zf��||z
}|dzdkr�/|dg|���}||z
|z|z||z
|z|zf��y�w)Ngg�<g�?r!)	r"r#r$r%�intervalSize�tweeningFunc�args�tir&s	         r�
_iterTweenr-ks�����	�c�	!�D�	!�B�
�F�]�b� �F�*�d�V�m�r�-A�V�,K�
L�L��A��$�
$�s�
*�
�!�
#�d�
#�����"�$��.�$��-�2�1E��0O�P�P�	�\����$�
$�s�
*�

�c�	!�D�	!�B�
�F�]�b� �F�*�d�V�m�r�-A�V�,K�
L�L�s�AA?�"A?c��|S)z�Constant speed tween function.

    Example:
    >>> linear(0.0)
    0.0
    >>> linear(0.2)
    0.2
    >>> linear(0.4)
    0.4
    >>> linear(0.6)
    0.6
    >>> linear(0.8)
    0.8
    >>> linear(1.0)
    1.0
    r!�r&s r�linearr0{s	��"
�Hrc
�<�tt|||||t��S)z�Returns an iterator of a linear tween between the start and end points, incrementing the
    interpolation factor by intervalSize each time. Guaranteed to return the point for 0.0 first
    and 1.0 last no matter the intervalSize.)�iterr-r0�r"r#r$r%r)s     r�
iterLinearr4�s���
�6�6�4��|�V�L�M�Mrc��|dzS)aStart slow and accelerate (Quadratic function).

    Args:
      n (int, float): The time progress, starting at 0.0 and ending at 1.0.

    Returns:
      (float) The line progress, starting at 0.0 and ending at 1.0. Suitable for passing to getPointOnLine().
    rr!r/s r�
easeInQuadr6��
��
�a�4�Krc
�<�tt|||||t��S)z�Returns an iterator of a easeInQuad tween between the start and end points, incrementing the
    interpolation factor by intervalSize each time. Guaranteed to return the point for 0.0 first
    and 1.0 last no matter the intervalSize.)r2r-r6r3s     r�iterEaseInQuadr9�����
�6�6�4��|�Z�P�Q�Qrc��||dz
zS)aStarts fast and decelerates to stop. (Quadratic function.)

    Args:
      n (int, float): The time progress, starting at 0.0 and ending at 1.0.

    Returns:
      (float) The line progress, starting at 0.0 and ending at 1.0. Suitable for passing to getPointOnLine().
    rr!r/s r�easeOutQuadr<�s��
�2��Q��<�rc
�<�tt|||||t��S)z�Returns an iterator of a easeOutQuad tween between the start and end points, incrementing the
    interpolation factor by intervalSize each time. Guaranteed to return the point for 0.0 first
    and 1.0 last no matter the intervalSize.)r2r-r<r3s     r�iterEaseOutQuadr>�����
�6�6�4��|�[�Q�R�Rrc�H�|dkrd|dzzS|dzdz
}d||dz
zdz
zS)a&Accelerates, reaches the midpoint, and then decelerates. (Quadratic function.)

    Args:
      n (int, float): The time progress, starting at 0.0 and ending at 1.0.

    Returns:
      (float) The line progress, starting at 0.0 and ending at 1.0. Suitable for passing to getPointOnLine().
    ��?rr	��r!r/s r�
easeInOutQuadrC�s<��	�3�w��1�a�4�x��
��E�A�I���q�A��E�{�Q��'�'rc
�<�tt|||||t��S)z�Returns an iterator of a easeInOutQuad tween between the start and end points, incrementing the
    interpolation factor by intervalSize each time. Guaranteed to return the point for 0.0 first
    and 1.0 last no matter the intervalSize.)r2r-rCr3s     r�iterEaseInOutQuadrE�����
�6�6�4��|�]�S�T�Trc��|dzS)aStarts fast and decelerates. (Cubic function.)

    Args:
      n (int, float): The time progress, starting at 0.0 and ending at 1.0.

    Returns:
      (float) The line progress, starting at 0.0 and ending at 1.0. Suitable for passing to getPointOnLine().
    �r!r/s r�easeInCubicrI�r7rc
�<�tt|||||t��S)z�Returns an iterator of a easeInCubic tween between the start and end points, incrementing the
    interpolation factor by intervalSize each time. Guaranteed to return the point for 0.0 first
    and 1.0 last no matter the intervalSize.)r2r-rIr3s     r�iterEaseInCubicrK�r?rc��|dz}|dzdzS)aStarts fast and decelerates to stop. (Cubic function.)

    Args:
      n (int, float): The time progress, starting at 0.0 and ending at 1.0.

    Returns:
      (float) The line progress, starting at 0.0 and ending at 1.0. Suitable for passing to getPointOnLine().
    r	rHr!r/s r�easeOutCubicrM������F�A��a�4�!�8�Orc
�<�tt|||||t��S)z�Returns an iterator of a easeOutCubic tween between the start and end points, incrementing the
    interpolation factor by intervalSize each time. Guaranteed to return the point for 0.0 first
    and 1.0 last no matter the intervalSize.)r2r-rMr3s     r�iterEaseOutCubicrP�����
�6�6�4��|�\�R�S�Src�F�|dz}|dkrd|dzzS|dz}d|dzdzzS)a"Accelerates, reaches the midpoint, and then decelerates. (Cubic function.)

    Args:
      n (int, float): The time progress, starting at 0.0 and ending at 1.0.

    Returns:
      (float) The line progress, starting at 0.0 and ending at 1.0. Suitable for passing to getPointOnLine().
    rr	rArHr!r/s r�easeInOutCubicrS��>����F�A��1�u��Q��T�z��	�Q����a��d�Q�h��rc
�<�tt|||||t��S)z�Returns an iterator of a easeInOutCubic tween between the start and end points, incrementing the
    interpolation factor by intervalSize each time. Guaranteed to return the point for 0.0 first
    and 1.0 last no matter the intervalSize.)r2r-rSr3s     r�iterEaseInOutCubicrV����
�6�6�4��|�^�T�U�Urc��|dzS)aStarts fast and decelerates. (Quartic function.)

    Args:
      n (int, float): The time progress, starting at 0.0 and ending at 1.0.

    Returns:
      (float) The line progress, starting at 0.0 and ending at 1.0. Suitable for passing to getPointOnLine().
    �r!r/s r�easeInQuartrZr7rc
�<�tt|||||t��S)z�Returns an iterator of a easeInQuart tween between the start and end points, incrementing the
    interpolation factor by intervalSize each time. Guaranteed to return the point for 0.0 first
    and 1.0 last no matter the intervalSize.)r2r-rZr3s     r�iterEaseInQuartr\r?rc��|dz}|dzdz
S)aStarts fast and decelerates to stop. (Quartic function.)

    Args:
      n (int, float): The time progress, starting at 0.0 and ending at 1.0.

    Returns:
      (float) The line progress, starting at 0.0 and ending at 1.0. Suitable for passing to getPointOnLine().
    r	rYr!r/s r�easeOutQuartr^%s����F�A�
��T�A�X�;�rc
�<�tt|||||t��S)z�Returns an iterator of a easeOutQuart tween between the start and end points, incrementing the
    interpolation factor by intervalSize each time. Guaranteed to return the point for 0.0 first
    and 1.0 last no matter the intervalSize.)r2r-r^r3s     r�iterEaseOutQuartr`2rQrc�F�|dz}|dkrd|dzzS|dz}d|dzdz
zS)a$Accelerates, reaches the midpoint, and then decelerates. (Quartic function.)

    Args:
      n (int, float): The time progress, starting at 0.0 and ending at 1.0.

    Returns:
      (float) The line progress, starting at 0.0 and ending at 1.0. Suitable for passing to getPointOnLine().
    rr	rArYrBr!r/s r�easeInOutQuartrb9s>����F�A��1�u��Q��T�z��	�Q����q�!�t�a�x� � rc
�<�tt|||||t��S)z�Returns an iterator of a easeInOutQuart tween between the start and end points, incrementing the
    interpolation factor by intervalSize each time. Guaranteed to return the point for 0.0 first
    and 1.0 last no matter the intervalSize.)r2r-rbr3s     r�iterEaseInOutQuartrdJrWrc��|dzS)aStarts fast and decelerates. (Quintic function.)

    Args:
      n (int, float): The time progress, starting at 0.0 and ending at 1.0.

    Returns:
      (float) The line progress, starting at 0.0 and ending at 1.0. Suitable for passing to getPointOnLine().
    �r!r/s r�easeInQuintrgQr7rc
�<�tt|||||t��S)z�Returns an iterator of a easeInQuint tween between the start and end points, incrementing the
    interpolation factor by intervalSize each time. Guaranteed to return the point for 0.0 first
    and 1.0 last no matter the intervalSize.)r2r-rgr3s     r�iterEaseInQuintri]r?rc��|dz}|dzdzS)aStarts fast and decelerates to stop. (Quintic function.)

    Args:
      n (int, float): The time progress, starting at 0.0 and ending at 1.0.

    Returns:
      (float) The line progress, starting at 0.0 and ending at 1.0. Suitable for passing to getPointOnLine().
    r	rfr!r/s r�easeOutQuintrkdrNrc
�<�tt|||||t��S)z�Returns an iterator of a easeOutQuint tween between the start and end points, incrementing the
    interpolation factor by intervalSize each time. Guaranteed to return the point for 0.0 first
    and 1.0 last no matter the intervalSize.)r2r-rkr3s     r�iterEaseOutQuintrmqrQrc�F�|dz}|dkrd|dzzS|dz}d|dzdzzS)a$Accelerates, reaches the midpoint, and then decelerates. (Quintic function.)

    Args:
      n (int, float): The time progress, starting at 0.0 and ending at 1.0.

    Returns:
      (float) The line progress, starting at 0.0 and ending at 1.0. Suitable for passing to getPointOnLine().
    rr	rArfr!r/s r�easeInOutQuintroxrTrc
�<�tt|||||t��S)z�Returns an iterator of a easeInOutQuint tween between the start and end points, incrementing the
    interpolation factor by intervalSize each time. Guaranteed to return the point for 0.0 first
    and 1.0 last no matter the intervalSize.)r2r-ror3s     r�iterEaseInOutQuintrq�rWrc�X�t|ttf�r|dkrtd��||zS)a`Starts fast and decelerates. (Polynomial function with custom degree.)

    Args:
      n (int, float): The time progress, starting at 0.0 and ending at 1.0.
      degree (int, float): The degree of the polynomial function.

    Returns:
      (float) The line progress, starting at 0.0 and ending at 1.0. Suitable for passing to getPointOnLine().
    r�*degree argument must be a positive number.)�
isinstancer�float�
ValueError�r&�degrees  r�
easeInPolyry�s.���f�s�E�l�+�v��z��E�F�F��f�9�rc�>�tt|||||t|��S)z�Returns an iterator of a easeInPoly tween between the start and end points, incrementing the
    interpolation factor by intervalSize each time. Guaranteed to return the point for 0.0 first
    and 1.0 last no matter the intervalSize.)r2r-ry�r"r#r$r%r)rxs      r�iterEaseInPolyr|�s!���
�6�6�4��|�Z�QW�X�Y�Yrc�v�t|ttf�r|dkrtd��dt	|dz
|z�z
S)�hStarts fast and decelerates to stop. (Polynomial function with custom degree.)

    Args:
      n (int, float): The time progress, starting at 0.0 and ending at 1.0.
      degree (int, float): The degree of the polynomial function.

    Returns:
      (float) The line progress, starting at 0.0 and ending at 1.0. Suitable for passing to getPointOnLine().
    rrsr	�rtrrurvrrws  r�easeOutPolyr��s=���f�s�E�l�+�v��z��E�F�F��s�A��E�f�$�%�%�%rc�>�tt|||||t|��S)z�Returns an iterator of a easeOutPoly tween between the start and end points, incrementing the
    interpolation factor by intervalSize each time. Guaranteed to return the point for 0.0 first
    and 1.0 last no matter the intervalSize.)r2r-r�r{s      r�iterEaseOutPolyr��s!���
�6�6�4��|�[�RX�Y�Z�Zrc��t|ttf�r|dkrtd��|dz}|dkrd||zzS|dz}ddt	||z�zz
S)r~rrsrr	rArrws  r�
easeInOutPolyr��sc���f�s�E�l�+�v��z��E�F�F���F�A��1�u��Q��Y���	�Q����3��Q��Y��'�'�'rc�>�tt|||||t|��S)z�Returns an iterator of a easeInOutPoly tween between the start and end points, incrementing the
    interpolation factor by intervalSize each time. Guaranteed to return the point for 0.0 first
    and 1.0 last no matter the intervalSize.)r2r-r�r{s      r�iterEaseInOutPolyr��s!���
�6�6�4��|�]�TZ�[�\�\rc�`�dtj|tjzdz�zdzS)aA sinusoidal tween function that begins slow and then accelerates.

    Args:
      n (int, float): The time progress, starting at 0.0 and ending at 1.0.

    Returns:
      (float) The line progress, starting at 0.0 and ending at 1.0. Suitable for passing to getPointOnLine().
    r
rr	��math�cos�pir/s r�
easeInSiner��s)�������T�W�W��q��)�)�A�-�-rc
�<�tt|||||t��S)z�Returns an iterator of a easeInSine tween between the start and end points, incrementing the
    interpolation factor by intervalSize each time. Guaranteed to return the point for 0.0 first
    and 1.0 last no matter the intervalSize.)r2r-r�r3s     r�iterEaseInSiner��r:rc�T�tj|tjzdz�S)aA sinusoidal tween function that begins fast and then decelerates.

    Args:
      n (int, float): The time progress, starting at 0.0 and ending at 1.0.

    Returns:
      (float) The line progress, starting at 0.0 and ending at 1.0. Suitable for passing to getPointOnLine().
    r)r��sinr�r/s r�easeOutSiner��s���8�8�A����K�!�O�$�$rc
�<�tt|||||t��S)z�Returns an iterator of a easeOutSine tween between the start and end points, incrementing the
    interpolation factor by intervalSize each time. Guaranteed to return the point for 0.0 first
    and 1.0 last no matter the intervalSize.)r2r-r�r3s     r�iterEaseOutSiner��r?rc�Z�dtjtj|z�dz
zS)a1A sinusoidal tween function that accelerates, reaches the midpoint, and then decelerates.

    Args:
      n (int, float): The time progress, starting at 0.0 and ending at 1.0.

    Returns:
      (float) The line progress, starting at 0.0 and ending at 1.0. Suitable for passing to getPointOnLine().
    rBr	r�r/s r�
easeInOutSiner��s%���4�8�8�D�G�G�a�K�(�1�,�-�-rc
�<�tt|||||t��S)z�Returns an iterator of a easeInOutSine tween between the start and end points, incrementing the
    interpolation factor by intervalSize each time. Guaranteed to return the point for 0.0 first
    and 1.0 last no matter the intervalSize.)r2r-r�r3s     r�iterEaseInOutSiner�
rFrc�$�|dk(rydd|dz
zzS)aAn exponential tween function that begins slow and then accelerates.

    Args:
      n (int, float): The time progress, starting at 0.0 and ending at 1.0.

    Returns:
      (float) The line progress, starting at 0.0 and ending at 1.0. Suitable for passing to getPointOnLine().
    rr�
r	r!r/s r�
easeInExpor�s!��	�A�v���R�1�q�5�\�"�"rc
�<�tt|||||t��S)z�Returns an iterator of a easeInExpo tween between the start and end points, incrementing the
    interpolation factor by intervalSize each time. Guaranteed to return the point for 0.0 first
    and 1.0 last no matter the intervalSize.)r2r-r�r3s     r�iterEaseInExpor� r:rc�&�|dk(rydd|zzdzS)aAn exponential tween function that begins fast and then decelerates.

    Args:
      n (int, float): The time progress, starting at 0.0 and ending at 1.0.

    Returns:
      (float) The line progress, starting at 0.0 and ending at 1.0. Suitable for passing to getPointOnLine().
    r	r���r!r/s r�easeOutExpor�'s$��	�A�v���s�Q�w�� �1�$�$rc
�<�tt|||||t��S)z�Returns an iterator of a easeOutExpo tween between the start and end points, incrementing the
    interpolation factor by intervalSize each time. Guaranteed to return the point for 0.0 first
    and 1.0 last no matter the intervalSize.)r2r-r�r3s     r�iterEaseOutExpor�6r?rc�v�|dk(ry|dk(ry|dz}|dkrddd|dz
zzzS|dz}dddd|zzzdzzS)a3An exponential tween function that accelerates, reaches the midpoint, and then decelerates.

    Args:
      n (int, float): The time progress, starting at 0.0 and ending at 1.0.

    Returns:
      (float) The line progress, starting at 0.0 and ending at 1.0. Suitable for passing to getPointOnLine().
    rr	rrAr�r
r�r!r/s r�
easeInOutExpor�=sf��	�A�v��	
�a���	�Q����q�5���r�Q��U�|�,�,�,�
��F�A��"��c�A�g��/�!�3�4�4rc
�<�tt|||||t��S)z�Returns an iterator of a easeInOutExpo tween between the start and end points, incrementing the
    interpolation factor by intervalSize each time. Guaranteed to return the point for 0.0 first
    and 1.0 last no matter the intervalSize.)r2r-r�r3s     r�iterEaseInOutExpor�TrFrc�D�dtjd||zz
�dz
zS)aA circular tween function that begins slow and then accelerates.

    Args:
      n (int, float): The time progress, starting at 0.0 and ending at 1.0.

    Returns:
      (float) The line progress, starting at 0.0 and ending at 1.0. Suitable for passing to getPointOnLine().
    r
r	�r��sqrtr/s r�
easeInCircr�[s%������1�q�1�u�9�%��)�*�*rc
�<�tt|||||t��S)z�Returns an iterator of a easeInCirc tween between the start and end points, incrementing the
    interpolation factor by intervalSize each time. Guaranteed to return the point for 0.0 first
    and 1.0 last no matter the intervalSize.)r2r-r�r3s     r�iterEaseInCircr�gr:rc�B�|dz}tjd||zz
�S)aA circular tween function that begins fast and then decelerates.

    Args:
      n (int, float): The time progress, starting at 0.0 and ending at 1.0.

    Returns:
      (float) The line progress, starting at 0.0 and ending at 1.0. Suitable for passing to getPointOnLine().
    r	r�r/s r�easeOutCircr�ns$����F�A��9�9�Q�!�a�%�[�!�!rc
�<�tt|||||t��S)z�Returns an iterator of a easeOutCirc tween between the start and end points, incrementing the
    interpolation factor by intervalSize each time. Guaranteed to return the point for 0.0 first
    and 1.0 last no matter the intervalSize.)r2r-r�r3s     r�iterEaseOutCircr�{r?rc��|dz}|dkr!dtjd|dzz
�dz
zS|dz}dtjd|dzz
�dzzS)a/A circular tween function that accelerates, reaches the midpoint, and then decelerates.

    Args:
      n (int, float): The time progress, starting at 0.0 and ending at 1.0.

    Returns:
      (float) The line progress, starting at 0.0 and ending at 1.0. Suitable for passing to getPointOnLine().
    rr	rBrAr�r/s r�
easeInOutCircr��s_����F�A��1�u��t�y�y��Q��T��*�Q�.�/�/�	�Q����d�i�i��A�q�D��)�A�-�.�.rc
�<�tt|||||t��S)z�Returns an iterator of a easeInOutCirc tween between the start and end points, incrementing the
    interpolation factor by intervalSize each time. Guaranteed to return the point for 0.0 first
    and 1.0 last no matter the intervalSize.)r2r-r�r3s     r�iterEaseInOutCircr��rFrc�*�dtd|z
||��z
S)a<An elastic tween function that begins with an increasing wobble and then snaps into the destination.

    Args:
      n (int, float): The time progress, starting at 0.0 and ending at 1.0.

    Returns:
      (float) The line progress, starting at 0.0 and ending at 1.0. Suitable for passing to getPointOnLine().
    r	��	amplitude�period)�easeOutElastic�r&r�r�s   r�
easeInElasticr��s��
�~�a�!�e�y��H�H�Hrc�@�tt|||||t||��S)z�Returns an iterator of a easeInElastic tween between the start and end points, incrementing the
    interpolation factor by intervalSize each time. Guaranteed to return the point for 0.0 first
    and 1.0 last no matter the intervalSize.)r2r-r��r"r#r$r%r)r�r�s       r�iterEaseInElasticr��s$���
�6�6�4��|�]�T]�_e�f�g�grc��|dkrd}|dz}n/|dtjzztjd|z�z}|dd|zzztj||z
dtjz|zz�zdzS)a?An elastic tween function that overshoots the destination and then "rubber bands" into the destination.

    Args:
      n (int, float): The time progress, starting at 0.0 and ending at 1.0.

    Returns:
      (float) The line progress, starting at 0.0 and ending at 1.0. Suitable for passing to getPointOnLine().
    r	rYrr�)r�r��asinr�)r&r�r��ss    rr�r��sz���1�}��	��Q�J���a�$�'�'�k�"�T�Y�Y�q�9�}�%=�=���q�S�1�W�~�%����!�a�%�A����K�&�<P�1Q�(R�R�UV�V�Vrc�@�tt|||||t||��S)z�Returns an iterator of a easeOutElastic tween between the start and end points, incrementing the
    interpolation factor by intervalSize each time. Guaranteed to return the point for 0.0 first
    and 1.0 last no matter the intervalSize.)r2r-r�r�s       r�iterEaseOutElasticr��s$���
�6�6�4��|�^�U^�`f�g�h�hrc�f�|dz}|dkrt|||��dzSt|dz
||��dzdzS)aAn elastic tween function wobbles towards the midpoint.

    Args:
      n (int, float): The time progress, starting at 0.0 and ending at 1.0.

    Returns:
      (float) The line progress, starting at 0.0 and ending at 1.0. Suitable for passing to getPointOnLine().
    rr	r�rA)r�r�r�s   r�easeInOutElasticr��sE����F�A��1�u��Q�)�F�C�a�G�G��a�!�e�y��H�1�L�s�R�Rrc�@�tt|||||t||��S)z�Returns an iterator of a easeInOutElastic tween between the start and end points, incrementing the
    interpolation factor by intervalSize each time. Guaranteed to return the point for 0.0 first
    and 1.0 last no matter the intervalSize.)r2r-r�r�s       r�iterEaseInOutElasticr��s%���
�6�6�4��|�EU�W`�bh�i�j�jrc�$�||z|dz|z|z
zS)a+A tween function that backs up first at the start and then goes to the destination.

    Args:
      n (int, float): The time progress, starting at 0.0 and ending at 1.0.

    Returns:
      (float) The line progress, starting at 0.0 and ending at 1.0. Suitable for passing to getPointOnLine().
    r	r!�r&r�s  r�
easeInBackr��s��
�q�5�Q��U�a�K�!�O�$�$rc�>�tt|||||t|��S)z�Returns an iterator of a easeInBack tween between the start and end points, incrementing the
    interpolation factor by intervalSize each time. Guaranteed to return the point for 0.0 first
    and 1.0 last no matter the intervalSize.)r2r-r��r"r#r$r%r)r�s      r�iterEaseInBackr��s!���
�6�6�4��|�Z�QR�S�T�Trc�4�|dz}||z|dz|z|zzdzS)a6A tween function that overshoots the destination a little and then backs into the destination.

    Args:
      n (int, float): The time progress, starting at 0.0 and ending at 1.0.

    Returns:
      (float) The line progress, starting at 0.0 and ending at 1.0. Suitable for passing to getPointOnLine().
    r	r!r�s  r�easeOutBackr��s-����F�A��q�5�Q��U�a�K�!�O�$�q�(�(rc�>�tt|||||t|��S)z�Returns an iterator of a easeOutBack tween between the start and end points, incrementing the
    interpolation factor by intervalSize each time. Guaranteed to return the point for 0.0 first
    and 1.0 last no matter the intervalSize.)r2r-r�r�s      r�iterEaseOutBackr�s!���
�6�6�4��|�[�RS�T�U�Urc��|dz}|dkr|dz}d||z|dz|z|z
zzS|dz}|dz}d||z|dz|z|zzdzzS)a"A "back-in" tween function that overshoots both the start and destination.

    Args:
      n (int, float): The time progress, starting at 0.0 and ending at 1.0.

    Returns:
      (float) The line progress, starting at 0.0 and ending at 1.0. Suitable for passing to getPointOnLine().
    rr	gffffff�?rAr!r�s  r�
easeInOutBackr�st����F�A��1�u�	�U�
���a�!�e��A���{�Q��/�0�0�	�Q���	�U�
���a�!�e��A���{�Q��/�!�3�4�4rc�>�tt|||||t|��S)z�Returns an iterator of a easeInOutBack tween between the start and end points, incrementing the
    interpolation factor by intervalSize each time. Guaranteed to return the point for 0.0 first
    and 1.0 last no matter the intervalSize.)r2r-r�r�s      r�iterEaseInOutBackr�s!���
�6�6�4��|�]�TU�V�W�Wrc�$�dtd|z
�z
S)a)A bouncing tween function that begins bouncing and then jumps to the destination.

    Args:
      n (int, float): The time progress, starting at 0.0 and ending at 1.0.

    Returns:
      (float) The line progress, starting at 0.0 and ending at 1.0. Suitable for passing to getPointOnLine().
    r	)�
easeOutBouncer/s r�easeInBouncer�%s��
�}�Q��U�#�#�#rc
�<�tt|||||t��S)z�Returns an iterator of a easeInBounce tween between the start and end points, incrementing the
    interpolation factor by intervalSize each time. Guaranteed to return the point for 0.0 first
    and 1.0 last no matter the intervalSize.)r2r-r�r3s     r�iterEaseInBouncer�1rQrc��|dkrd|z|zS|dkr|dz}d|z|zdzS|dkr|dz}d|z|zdzS|d	z}d|z|zd
zS)a%A bouncing tween function that hits the destination and then bounces to rest.

    Args:
      n (int, float): The time progress, starting at 0.0 and ending at 1.0.

    Returns:
      (float) The line progress, starting at 0.0 and ending at 1.0. Suitable for passing to getPointOnLine().
    gF]t�E�?g@@gF]t�E�?gt�E]t�?g�?g]t�E�?g/�袋.�?g�?g־a���?g��?r!r/s rr�r�8s~��	�H�~���z�A�~��	
�h��	�Z�����z�A�~��$�$�	
�j�	�	�[�����z�A�~��&�&�	�[�����z�A�~��(�(rc
�<�tt|||||t��S)z�Returns an iterator of a easeOutBounce tween between the start and end points, incrementing the
    interpolation factor by intervalSize each time. Guaranteed to return the point for 0.0 first
    and 1.0 last no matter the intervalSize.)r2r-r�r3s     r�iterEaseOutBouncer�NrFrc�\�|dkrt|dz�dzSt|dzdz
�dzdzS)aA bouncing tween function that bounces at the start and end.

    Args:
      n (int, float): The time progress, starting at 0.0 and ending at 1.0.

    Returns:
      (float) The line progress, starting at 0.0 and ending at 1.0. Suitable for passing to getPointOnLine().
    rArr	)r�r�r/s r�easeInOutBouncer�Us<��	�3�w��A��E�"�S�(�(��Q��U�Q�Y�'�#�-��3�3rc
�<�tt|||||t��S)z�Returns an iterator of a easeInOutBounce tween between the start and end points, incrementing the
    interpolation factor by intervalSize each time. Guaranteed to return the point for 0.0 first
    and 1.0 last no matter the intervalSize.)r2r-r�r3s     r�iterEaseInOutBouncer�ds���
�6�6�4��|�_�U�V�Vr)r)r	g333333�?)r	rA)gaq8�9�?)P�
__future__rr��typingrrr�ImportError�__version__rr'r-r0r4r6r9r<r>rCrErIrKrMrPrSrVrZr\r^r`rbrdrgrirkrmrorqryr|r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r!rr�<module>r�s�����	�)�)���7�t L�F
M� 
�(N�	�R�	�S�
(� U�	�S�
�T� �"V�	�S�
�T�!�"V�	�S�
�T� �"V��Z�&�[�(�*]�	.�R�	%�S�	.�U�#�R�%�S�5�.U�	+�R�
"�S�/�"U��I�h��W�*i��S�$k�	%�U�
)�V�5�&X�	$�T�)�,U�4�W��{�	��	�s�
D�D�
D

Sindbad File Manager Version 1.0, Coded By Sindbad EG ~ The Terrorists