� c��jN. � � � d dl mZmZ d dlZd dlZd dlZd dlZd dlZd dlZddl m Z d� Z G d� de j � Z d� Zd d �Zy)� )�with_statement�print_functionN� )�refactorc �| � | j � } |j � }t j | |||ddd�� S )Nz (original)z(refactored)� )�lineterm)� splitlines�difflib�unified_diff)�a�b�filenames �%/usr/lib64/python3.12/lib2to3/main.py� diff_textsr s> � �/� ����A� ����A�����1�h�� ,�n�)+�-� -� c �: � � e Zd Z d� fd� Zd� Z� fd�Zd� Z� xZS )�StdoutRefactoringToolc �� �� || _ || _ |r2|j t j � s|t j z }|| _ || _ || _ t t | �+ |||� y �N)� nobackups� show_diffs�endswith�os�sep�_input_base_dir�_output_dir�_append_suffix�superr �__init__) �self�fixers�options�explicitr r �input_base_dir� output_dir� append_suffix� __class__s �r r zStdoutRefactoringTool.__init__$ sf �� � �$ #���$����.�"9�"9�"�&�&�"A��b�f�f�$�N�-���%���+��� �#�T�3�F�G�X�Nr c � � | j j |||f� | j j |g|��i |�� y r )�errors�append�logger�error)r! �msg�args�kwargss r � log_errorzStdoutRefactoringTool.log_errorA s9 � ������C��v�.�/�������#�/��/��/r c � �� |}| j rw|j | j � rAt j j | j |t | j � d � }nt d|�d| j ��� �| j r|| j z }||k7 rht j j |� }t j j |� s|rt j |� | j d||� | j sQ|dz }t j j |� r t j |� t j" ||� t$ t&