Ë
    	š„js
  ã                   óV   — d Z ddlmZmZ ddlmZ g d¢Z G d„ dej                  «      Zy)	zŸ
Warn about features that are not present in Python 2.5, giving a message that
points to the earliest version of Python 2.x (or 3.x, if none) that supports it
é   )ÚFeatureÚFeaturesé    )Ú
fixer_base))Ú
memoryviewz4power < 'memoryview' trailer < '(' any* ')' > any* >z2.7)Únumbersz…import_from< 'from' 'numbers' 'import' any* > |
           import_name< 'import' ('numbers' dotted_as_names< any* 'numbers' any* >) >ú2.6)Úabczyimport_name< 'import' ('abc' dotted_as_names< any* 'abc' any* >) > |
           import_from< 'from' 'abc' 'import' any* >r	   )Úiozvimport_name< 'import' ('io' dotted_as_names< any* 'io' any* >) > |
           import_from< 'from' 'io' 'import' any* >r	   )Úbinz+power< 'bin' trailer< '(' any* ')' > any* >r	   )Ú
formattingz<power< any trailer< '.' 'format' > trailer< '(' any* ')' > >r	   )Únonlocalzglobal_stmt< 'nonlocal' any* >ú3.0)Úwith_tracebackztrailer< '.' 'with_traceback' >r   c                   óº   ‡— e Zd ZdZ e«       Z eeD � ����cg c]  \  }}}t        |||«      ‘Œ c}}}}} «      Z	e	j                  Z
ˆfd„Zd„ ZˆxZS c c}}}}} w )ÚFixFeaturesé	   c                 óV   •— t         t        | �  |«      }	 |d= |S # t        $ r Y |S w xY w)NÚnode)Úsuperr   ÚmatchÚ	Exception)Úselfr   Úto_retÚ	__class__s      €úW/var/www/html/GAP/venv/lib/python3.12/site-packages/libpasteurize/fixes/fix_features.pyr   zFixFeatures.match@   sB   ø€ Ü”{ DÑ/°Ó5ˆð	Ø�w�ð
 ˆøô	 ò 	ð Øˆð		ús   – ›	(§(c                 ó  — |D ]{  }|| j                   v rŒ| j                  |   }|j                  dk\  r| j                  }n| j                  } |||j                  «       ¬«       | j                   j                  |«       Œ} y )NÚ3)Úreason)Úfeatures_warnedÚfeaturesÚversionÚcannot_convertÚwarningÚmessage_textÚadd)r   r   ÚresultsÚfeature_nameÚcurr_featureÚfails         r   Ú	transformzFixFeatures.transformK   sy   € Ø#ò 
	7ˆLØ˜t×3Ñ3Ñ3Øà#Ÿ}™}¨\Ñ:�Ø×'Ñ'¨4Ò/Ø×.Ñ.‘DàŸ<™<�DÙ�T ,×";Ñ";Ó"=Õ>Ø×$Ñ$×(Ñ(¨Õ6ñ
	7ó    )Ú__name__Ú
__module__Ú__qualname__Ú	run_orderÚsetr    r   ÚFEATURESr   r!   ÚPATTERNr   r+   Ú__classcell__)Ú.0ÚnameÚpatternr"   r   r   s   00000@r   r   r   3   sh   ø„ à€Iñ “e€Oñ Ø:B÷Dò DÙ 6  g¨wô !  w°Õ8ö Dó E€Hð ×Ñ€Gô	ö7ùö!Ds   ™Ar   N)	Ú__doc__Úfeature_baser   r   Úlib2to3r   r2   ÚBaseFixr   © r,   r   ú<module>r=      s,   ðñ÷
 ,Ý ò(€ôT#7�*×$Ñ$õ #7r,   