� c��j_ ��j�dZd dd�d�Zd dd�d�Zd dd�d�Zd dd�d�Z ddl�eZeZy#e$rY� wxYw) zBisection algorithms.�N��keyc�v�|�t||||�}nt|||�|||��}|j||�y)a7Insert item x in list a, and keep it sorted assuming a is sorted. If x is already in a, insert it to the right of the rightmost x. Optional args lo (default 0) and hi (default len(a)) bound the slice of a to be searched. A custom key function can be supplied to customize the sort order. Nr)� bisect_right�insert��a�x�lo�hirs �/usr/lib64/python3.12/bisect.py� insort_rightrs<�� �{� �!�Q��B� '�� �!�S��V�R��� 5���H�H�R��O�c���|dkr td��|� t|�}|�%||kr||zdz}|||kr|}n|dz}||kr�|S||kr$||zdz}||||�kr|}n|dz}||kr�$|S)a�Return the index where to insert item x in list a, assuming a is sorted. The return value i is such that all e in a[:i] have e <= x, and all e in a[i:] have e > x. So if x already appears in the list, a.insert(i, x) will insert just after the rightmost x already there. Optional args lo (default 0) and hi (default len(a)) bound the slice of a to be searched. A custom key function can be supplied to customize the sort order. r�lo must be non-negative���� ValueError�len�r r r r r�mids r rrs��� �A�v��2�3�3� �z� ��V�� �{��2�g���7�q�.�C��1�S�6�z����1�W�� �2�g� �I� �2�g���7�q�.�C��3�q��v�;�����1�W�� �2�g� �Irc�v�|�t||||�}nt|||�|||��}|j||�y)a5Insert item x in list a, and keep it sorted assuming a is sorted. If x is already in a, insert it to the left of the leftmost x. Optional args lo (default 0) and hi (default len(a)) bound the slice of a to be searched. A custom key function can be supplied to customize the sort order. Nr)� bisect_leftrrs r � insort_leftr9s<�� �{� ��A�r�2� &�� ��C��F�B��� 4���H�H�R��Orc���|dkr td��|� t|�}|�%||kr||zdz}|||kr|dz}n|}||kr�|S||kr$||zdz}|||�|kr|dz}n|}||kr�$|S)a�Return the index where to insert item x in list a, assuming a is sorted. The return value i is such that all e in a[:i] have e < x, and all e in a[i:] have e >= x. So if x already appears in the list, a.insert(i, x) will insert just before the leftmost x already there. Optional args lo (default 0) and hi (default len(a)) bound the slice of a to be searched. A custom key function can be supplied to customize the sort order. rrrrrrs r rrJs��� �A�v��2�3�3� �z� ��V�� �{��2�g���7�q�.�C���v��z��1�W���� �2�g� �I� �2�g���7�q�.�C��1�S�6�{�Q���1�W���� �2�g� �Ir)�*)rN) �__doc__rrrr�_bisect� ImportError�bisect�insort�rr �r$sb����T��"!�T�!�H�D��"!�D�!�J �� �� ��� � �� �s �*�2�2