a �DOgU�@shddlZddlZddlZddlZgd�ZiZdd�Zddd�Zddd�Zdd d �Z dd d �Z d d�Z dS)�N)�getline� clearcache� checkcache� lazycachecCs t��dS)N)�cache�clear�rr�!/usr/lib64/python3.9/linecache.pyrsrcCs6t||�}d|kr"t|�kr2nn ||dSdS)N��)�getlines�len)�filename�lineno�module_globals�linesrrr rs  rcCsV|tvr(t|}t|�dkr(t|dSz t||�WStyPt�gYS0dS)Nr �)rr � updatecache� MemoryErrorr)rr�entryrrr r $s    r c Cs�|durtt���}n|tvr&|g}ndS|D]�}t|}t|�dkrHq.|\}}}}|dur^q.zt�|�}Wn"ty�t�|d�Yq.Yn0||jks�||j kr.t�|d�q.dS)Nr ) �listr�keysr �os�stat�OSError�pop�st_size�st_mtime)r� filenamesr�size�mtimer�fullnamerrrr r4s&     rc Cs|tvr$tt|�dkr$t�|d�|r<|�d�r@|�d�r@gS|}zt�|�}W�nt�yf|}t||�r�zt|d�}Wnt tfy�YnD0|dur�gYSt|�ddd�|� �D�|ft|<t|dYStj � |�r�gYSt j D]`}ztj �||�}Wnttf�y*Yq�Yn0zt�|�}W�qbWq�t�yVYq�0q�gYSYn0z8t�|��}|��}Wd�n1�s�0YWnt�y�gYS0|�r�|d�d ��s�|dd 7<|j|j} } | | ||ft|<|S) Nr �<�>rcSsg|] }|d�qS)� r)�.0�linerrr � p�zupdatecache..r�����r$)rr r� startswith�endswithrrrr� ImportError� splitlines�path�isabs�sys�join� TypeError�AttributeError�tokenize�open� readlinesrr) rrr!r�basename�data�dirname�fprrr rrr rPs\  �      , rcCs�|tvr tt|�dkrdSdS|r8|�d�r<|�d�rs   C