o
    Š�bc   ã                   @   s>   d Z ddlmZ ddlmZ ddlmZ G dd„ dejƒZdS )z-Fixer that turns 1L into 1, 0755 into 0o755.
é   )Útoken)Ú
fixer_base)ÚNumberc                   @   s"   e Zd ZejZdd„ Zdd„ ZdS )ÚFixNumliteralsc                 C   s   |j  d¡p|j d dv S )NÚ0éÿÿÿÿÚLl)ÚvalueÚ
startswith)ÚselfÚnode© r   ú4/usr/lib/python3.10/lib2to3/fixes/fix_numliterals.pyÚmatch   s   zFixNumliterals.matchc                 C   s`   |j }|d dv r|d d… }n| d¡r)| ¡ r)tt|ƒƒdkr)d|dd …  }t||jd�S )Nr   r   r   é   Ú0o)Úprefix)r	   r
   ÚisdigitÚlenÚsetr   r   )r   r   ÚresultsÚvalr   r   r   Ú	transform   s   "zFixNumliterals.transformN)Ú__name__Ú
__module__Ú__qualname__r   ÚNUMBERÚ_accept_typer   r   r   r   r   r   r      s    r   N)	Ú__doc__Úpgen2r   Ú r   Ú
fixer_utilr   ÚBaseFixr   r   r   r   r   Ú<module>   s
    