o 0¦i? ã @ sp d Z d ddœdd„Zd ddœdd„Zd ddœdd „Zd ddœd d„ZzddlT W n ey1 Y nw eZeZdS )zBisection algorithms.é N©Úkeyc C ó> |du rt | |||ƒ}nt | ||ƒ|||d�}| ||¡ dS )zïInsert 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. Nr )Úbisect_rightÚinsert©ÚaÚxÚloÚhir © r ú-/opt/alt/python310/lib64/python3.10/bisect.pyÚinsort_right s r c C s |dk rt dƒ‚|du rt| ƒ}|du r1||k r/|| d }|| | k r'|}n|d }||k s|S ||k rN|| d }||| | ƒk rF|}n|d }||k s5|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. r úlo must be non-negativeNé é ©Ú ValueErrorÚlen©r r r r r Zmidr r r r s&