� ��^i���dZdZ ddlZddlmZeej��ZddlmZddlmZmZm Z m Z ej Z Gd�de��Z ejjZejge_eje_ejjZeje e ��ge_eje_ejjZejejge_eje_ejjZeje ge_eje_ejjZeje eje e ej��ge_eje_ejjZ ejejeje e ej��ge _eje _ejj!Z"ej#ge"_eje"_d �Z$d �Z%efd �Zd �Zdd�Zd�Z&d�Zd�Z'dS#e(e)f$r dZd�Zd�Z%YdSwxYw)i����i�����N)� LibraryLoader)�wintypes)�byref� Structure�c_char�POINTERc�N�eZdZdZdefdefdejfdejfdefgZd�Z dS) �CONSOLE_SCREEN_BUFFER_INFOzstruct in wincon.h.�dwSize�dwCursorPosition� wAttributes�srWindow�dwMaximumWindowSizec ���d|jj|jj|jj|jj|j|jj|jj|jj|jj |j j|j jf zS)Nz"(%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d)) r �Y�Xr r r�Top�Left�Bottom�Rightr)�selfs ��/builddir/build/BUILDROOT/alt-python311-pip-21.3.1-4.el8.x86_64/opt/alt/python311/lib/python3.11/site-packages/pip/_vendor/colorama/win32.py�__str__z"CONSOLE_SCREEN_BUFFER_INFO.__str__sf��7�� � �t�{�}��'�)�4�+@�+B��"��-�#�T�]�%7���9M�t�}�Ob��*�,�d�.F�.H� ;�� �N) �__name__� __module__� __qualname__�__doc__�COORDr�WORD� SMALL_RECT�_fields_r�rrr r s]������!�!� �u� � �� '� �H�M� *� ��,� -� "�E� *�  �� � � � � rr c�v�t��}t|t|����}t|��S�N)r �_GetConsoleScreenBufferInfor�bool)�handle�csbi�successs r� _winapi_testr+\s3��)�+�+��-� �E�$�K�K�!�!���G�}�}�rc��td�tt��tt��fD����S)Nc3�4K�|]}t|��V��dSr%)r+)�.0�hs r� zwinapi_test..cs@����C�C�q�<��?�?�C�C�C�C�C�Cr)�any� _GetStdHandle�STDOUT�STDERRr#rr� winapi_testr5bsM���C�C�!�&�)�)�=��+@�+@�A�C�C�C�C�C� Crc�z�t|��}t��}t|t|����}|Sr%)r2r r&r)� stream_idr(r)r*s r�GetConsoleScreenBufferInfor8fs9���y�)�)��)�+�+��-� �E�$�K�K�!�!��� rc�@�t|��}t||��Sr%)r2�_SetConsoleTextAttribute)r7�attrsr(s r�SetConsoleTextAttributer<ms���y�)�)��'���6�6�6rTc�L�t|�}|jdks |jdkrdSt|jdz |jdz ��}|rCtt��j}|xj|jz c_|xj|jz c_t|��}t||��S)Nr�) rrrr8r3rrrr2�_SetConsoleCursorPosition)r7�position�adjust�adjusted_position�srr(s r�SetConsoleCursorPositionrDqs����(�#�� �:��?�?�h�j�A�o�o� �F�"�(�*�q�.�(�*�q�.�A�A�� � +�+�F�3�3�<�B� � � �2�6� )� � � � � �2�7� *� � ��y�)�)��(��1B�C�C�Crc ��t|��}t|�����}tj|��}tjd��}t ||||t |����}|jS)Nr)r2r�encoder�DWORD�_FillConsoleOutputCharacterAr�value)r7�char�length�startr(� num_writtenr*s r�FillConsoleOutputCharacterrN�sm���y�)�)���d�k�k�m�m�$�$�����'�'���n�Q�'�'� �.� �D�&�%��{�);�);�=�=��� � rc ���t|��}tj|��}tj|��}tjd��}t ||||t |����S)za FillConsoleOutputAttribute( hConsole, csbi.wAttributes, dwConSize, coordScreen, &cCharsWritten )r)r2rr rG�_FillConsoleOutputAttributer)r7�attrrKrLr(� attributerMs r�FillConsoleOutputAttributerS�sd���y�)�)���M�$�'�'� ����'�'���n�Q�'�'� �*� �I�v�u�e�K�.@�.@�B�B� Brc� �t|��Sr%)�_SetConsoleTitleW)�titles r�SetConsoleTitlerW�s�� ��'�'�'rc��dSr%r#��_s r�r[s���rc��dSr%r#rYs rr[r[s��T�r)T)*r3r4�ctypesr�WinDLL�windllrrrrr�_COORDrr �kernel32� GetStdHandler2rG�argtypes�HANDLE�restyper8r&�BOOLr<r:r rDr?�FillConsoleOutputCharacterArHrSrP�SetConsoleTitleWrU�LPCWSTRr+r5rNrW�AttributeError� ImportErrorr#rr�rls��� �� ��Q(��M�M�M�$�$�$�$�$�$� �]�6�=� )� )�F������� 9�8�8�8�8�8�8�8�8�8�8�8� �O�E������Y����$�O�0�M����M��%�O�M��"(�/�"L������*�+�+�,��(�+3�-��'�%��F����� �)��%�(0�}��$� &�� H���� �*��&�)1� ��%�#)�?�#N� ������ ������� -� �)�,4�=� �(�"(�/�"L����� ��� ������� ,��(�+3�-��'���8����"���!)� ������ C�C�C�.4�����7�7�7�D�D�D�D�$!�!�!�B�B�B�(�(�(�(�(��W � �$�"�"�"� �F�-�o��!�/�K�K�K�K�"���s� F+�+F>�=F>