HOME


Mini Shell 1.0
Redirecting to https://devs.lapieza.net/iniciar-sesion Redirecting to https://devs.lapieza.net/iniciar-sesion.
DIR: /lib/python3/dist-packages/reportbug/ui/__pycache__/
Upload File :
Current File : //lib/python3/dist-packages/reportbug/ui/__pycache__/text_ui.cpython-311.pyc
�

�&=d�����ddlZddlZddlZddlZddlZddlZddlZddlZddlZddl	Z	ddl
mZ	ddlZn
#e
$rdZYnwxYwddlmZmZddlmZmZmZmZmZddlmZddlZej���ZdZ	ejd�����\Z Z!e"e ��pde"e!��pd	cZ#Z$n#e%$rd
\Z#Z$YnwxYwd�Z&e&Z'e&Z(d�Z)d,d�Z*e�-ej+d��	ej,d��n#e%$rYnwxYwd�Z-Gd�de.��Z/d-d�Z0d.d�Z1d/d�Z2d�Z3e3Z4		d0d�Z5d�Z6d1d�Z7d�Z8d2d�Z9d-d�Z:		d3d �Z;		d4d"�Z<				d5d#�Z=d$�Z>d%�Z?d&�Z@d/d'�ZAd6d)�ZBd*�ZCd+�ZDdS)7�N)�suppress)�debbugs�	hiermatch)�NoReport�	NoPackage�NoBugs�
QuertBTSError�InvalidRegex)�launch_browserzus-asciiz	stty size��O)rr
c��tsdS|r||z}tj�|��tj���dS�N)�ISATTY�sys�stderr�write�flush)�message�argss  �6/usr/lib/python3/dist-packages/reportbug/ui/text_ui.py�ewriter8sP�������!��D�.���J���W�����J��������c��	tj��}n$#t$rtjd��YnwxYwtj|��S)N�/)�os�getcwd�OSError�chdir�system)�cmdline�_s  rr r GsP����I�K�K��������
���
�
�
�
�
�����
�9�W���s��7�7�c���|s
tdz
}|rd|z}nd}d�|�����}|s|dzStj||||���}|�d��r|S|dzS)z.Wrapper for textwrap.fill to the existing API.�� r#�
)�width�initial_indent�subsequent_indent)�columns�join�split�textwrap�fill�endswith)�text�	starttext�indent�linelen�si�outputs      r�indent_wrap_textr7Os������A�+��
��
�6�\���
���8�8�D�J�J�L�L�!�!�D�� ��4���
�]�4�w�y�-/�1�1�1�F�
���t�����
��D�=�rz
tab: completer&c	
�0�	t|��}||vr(d|cxkrt|��krnn||dz
}tj�|tj|||||��||��dS#t$rtd|��YdSwxYw)Nr%�Invalid report number: %s
)	�int�len�	reportbug�utils�launch_mbox_readerr�get_report_url�
ValueErrorr)	�mbox_reader_cmd�bts�bugs�number�mirrors�archived�mbox�
http_proxy�timeouts	         r�_launch_mbox_readerrJns���	��V��������!�v�":�":�":�":��T���":�":�":�":�":��&�1�*�%�F���*�*�?�+2�+A�#�v�w�X`�bf�+g�+g�+5�w�	@�	@�	@�	@�	@�������,��	�	�	�	�	�	����s�A3A7�7B�Bc��eZdZdd�Zd�ZdS)�
our_completerNc�j�d|_|r)ttt|����|_dSdSr)�completions�tuple�map�str)�selfrNs  r�__init__zour_completer.__init__}s<������	<�$�S��k�%:�%:�;�;�D����	<�	<rc�v��|jsdS�fd�|jD��}|t|��kr||SdS)Nc�>��g|]}|�����|��S���
startswith)�.0�xr1s  �r�
<listcomp>z*our_completer.complete.<locals>.<listcomp>�s*���F�F�F�!�1�<�<��3E�3E�F�A�F�F�Fr)rNr;)rRr1�i�matchings `  r�completezour_completer.complete�sO�����	��4�F�F�F�F�t�/�F�F�F���s�8�}�}����A�;���4rr)�__name__�
__module__�__qualname__rSr^rVrrrLrL|s7������<�<�<�<�
����rrLc��tj���}|stj�|��tj���tr.|r|st|��j}|rt
j	|��	|rt|��}nt��}n$#t$rtd��t�wxYwtrt
j	d��|���S)Nz
User interrupt (^D).
)r�stdout�isattyrrr�readlinerLr^�
set_completer�input�EOFErrorr�
SystemExit�strip)�promptrN�	completer�istty�rets     r�
our_raw_inputro�s���J�����E��!��
���� � � ��J�������.��	<�y�	<�%�k�2�2�;�I��	.��"�9�-�-�-���	���-�-�C�C��'�'�C��������)�*�*�*��������%���t�$�$�$��9�9�;�;�s� B5�5!CFc	��d}|D]}|tjvr|}n�|si}d|vr|dz}|���}|ddkr
|dd�}|r"|dzd�|��zdzdz}n@t	|dzd�|��zdz�����dz}t
||��}	|r�|	r$|	dd	kr|	d
d�}	|	r|	dd	k�t|t��r-	tt|	����S#t$rYn�wxYw	t|	��}
|
|vrt|
��St|��}|���dd�tt|����z}n#ttf$rYnwxYw|	s|}	|	d}	|	dkr�d
|d<|D]x}	|	tjvrd}nd}||�|	|�|	���d����z
}t#t	|dzd|	zd�����yt%|||||��S|	���|vs|	���|vr|	���S|rt#t	|����nt#d��t%|||||��S)Nr#�?���� [�|z]?r&r�#r%z(Only the following entries are allowed: �, zDisplay this help.z
(default) zNo help for this option.r'z%s - �zInvalid selection.
)�string�ascii_uppercase�rstripr,r7rjro�
isinstancer:rQr@�list�sortrP�	TypeError�get�lowerr�select_options�upper)
�msg�ok�help�
allow_numbers�nowrap�err_message�option�default�longmsg�chrD�nums�descs
             rr�r��sG���K������V�+�+�+��G��E�,�����
�"�}�}�
�#�X��

�*�*�,�,�C�
�2�w�#�~�~��#�2�#�h��
�S���*�s�x�x��|�|�+�d�2�S�8���"�3��:�������#<�t�#C�D�D�J�J�L�L�s�R��	�w�
�	.�	.�B����	�R��U�c�\�\��A�B�B��B��	�R��U�c�\�\��m�S�)�)�	�
��3�r�7�7�|�|�#���
�
�
���
����

��R�����]�*�*��v�;�;�&��
�.�.�D��I�I�K�K�K�"L�"&�)�)�C��T�N�N�";�";�#<�K�K���	�*�
�
�
���
������
��	�A��B�	�S�y�y�(��S�	��	C�	C�B��V�+�+�+�#������D�H�H�R����"�(�(�*�*�*D�"F�"F�G�G�
G�D��#�D�4�K��2��q�A�A�B�B�B�B��c�2�t�]�F�C�C�C�
�(�(�*�*��
�
����
�
�b� 0� 0��x�x�z�z��	�'����,�,�-�-�-�-��%�&�&�&��#�r�4���?�?�?s+�D�
D,�+D,�0!F!�AF!�!F5�4F5Tc�d�|rd}nd}t||||dd�|���}|dkrt�|dkS)z"Return True for yes, False for no.�Ynq�yNqzQuit.)�y�n�q)r�r�r�)r�ri)r��yeshelp�nohelpr�r�r��ress       r�yes_nor��sV����
���
��
��b��f�7�"K�"K� &�(�(�(�C�
�c�z�z����3�J�rc����|r||z}n|}tdz
�d��fd�|���D����}|���dz}t	|��dS)Nr%r'c3�D�K�|]}tj|����V��dS))r(N)r.r/)rY�parr4s  �r�	<genexpr>zlong_message.<locals>.<genexpr>s2�����V�V�C�h�m�C�w�7�7�7�V�V�V�V�V�Vr)r+r,�
splitlinesrzr)r1r�mtextr4s   @r�long_messager��sw������t��������k�G��I�I�V�V�V�V�5�CS�CS�CU�CU�V�V�V�V�V�E��L�L�N�N�T�!�E�
�5�M�M�M�M�Mrc�:�|rPt|��dtzdzkr2|s0|r|�d|�d�}t|||��p|}nZt|||��}nH|rtt	|����|rtd|z||��p|}ntd||��}|S)N��rsz]: z[%s]> z> )r;r+rorr7)rk�options�title�empty_ok�force_promptr�rl�responses        r�
get_stringr�s���
�?�3�v�;�;��W��q��0�0�,�0��	A�$*�F�F�G�G�G�4�F�$�V�W�i�@�@�K�G�H�H�$�V�W�i�@�@�H�H��	-��#�F�+�+�,�,�,��	?�$�X��%7��)�L�L�W�PW�H�H�$�T�7�I�>�>�H��Orc��td��tt|dz����g}	tdd������}|sn|�|���<td��|S)Nr'z+  Press ENTER on a blank line to continue.
r%r#T)r�)rr7r�rj�append)rkrn�entrys   r�
get_multiliner�s���
�4�L�L�L�
��F�%S�S�T�T�U�U�U�
�C���2�D�1�1�1�7�7�9�9���	���
�
�5����	�
�4�L�L�L��Jrc�*�tj|��Sr)�getpass)rks r�get_passwordr�(s���?�6�"�"�"rc�:�tj�|��}tj�|��}t	j|dz��}|sdS|t|��kr.||}tj�|��r|dzS|SdS)N�*r)r�path�
expanduser�
expandvars�globr;�isdir)r1r\�pathsr�s    r�FilenameCompleterr�,s���
�7���d�#�#�D�
�7���d�#�#�D��I�d�S�j�!�!�E����t��3�u�:�:�~�~��a���
�7�=�=����	��3�;�����trc�4�t||||t���S)N)r�r�r�rl)r�r�)rkr�r�r�s    r�get_filenamer�<s)���f�E��%�1B�D�D�D�Drc
�0�t||||||dd���S)NTF)r��order�extras�multipler�)�menu)r�r�rkr�r�r�s      r�select_multipler�As*����W�f�E��v���/�/�/�/rc
��i}
|sg}nt|��}|rt|dz��tt|t���dz��t	|t
��r�|���}|r}g}|D]&}||vr |�|||f��||=�'t|�����}|�	��|D]}
|�|
���|}n5t|�����}|�	��|r|�d��d}|dgz
}d�|D��}||z}ttttt|������tdz��}ttjtjt|��d	z������}d	}|D][\}}t|||zdzd
|||||fz���}t|��t|��dkrtd��|d	z
}�\t|��dkrtd��|r|d
z
}	|r	|d|zz}n|}t%||��}|s|}	t|��}d	|cxkrt|��krnn||d	z
d}n#t&t(f$rYnwxYw||vs||kr�|r�|r�|dkr!t|
�����S|dkrt|
��dkrgSi}
n|
�|��r|
|=nd	|
|<tdd�t|
�������z��t|
��rd}nd}��C|S|r|r|S|	r|sdStd����a)N�

)r4r')�noner#r��donec��g|]
}|d��S)rrV�rYrZs  rr[zmenu.<locals>.<listcomp>ms��%�%�%��q��t�%�%�%rr�r%z%*d %-*.*s  )r3r2�z(one at a time) z[%s] rz- selected: %s
rvzInvalid entry.
)r|rr7r+r{�dict�copyr��itemsr}�min�maxrPr;r:�math�ceil�log10ror@r~�keysrr,)r�r�rkr�r��any_okr�r�r�r��selected�olist�keyr��allowed�maxlen_name�digitsr\�namer�r1�apromptr��nums                        rr�r�Fs]���H�������f�������u�v�~����
��C��1�1�1�D�8�9�9�9��'�4� � ���,�,�.�.���	��E��
%�
%���'�>�>��L�L�#�w�s�|�!4�5�5�5������7�=�=�?�?�+�+�G��L�L�N�N�N�!�
%�
%�����V�$�$�$�$��G�G��7�=�=�?�?�+�+�G��L�L�N�N�N������|�$�$�$����6�(���%�%�W�%�%�%�G����G��c�$�s�3��0�0�1�1�2�2�G�q�L�A�A�K�
���4�:�c�'�l�l�Q�&6�7�7�8�8�
9�
9�F�	�A����
��d���k�F�.B�Q�.F�+9�V�Q��U`�bf�<g�+g�j�j�j���t�����w�<�<�!����4�L�L�L�	�Q����
�7�|�|�q����t�����%��$�$��,#��	��w��0�0�G�G��G� ��'�2�2���	��H�	��h�-�-�C��C�'�'�'�'�3�w�<�<�'�'�'�'�'�"�3��7�+�A�.�����I�&�	�	�	��D�	�����w���8�w�#6�#6�8�#6��
 ��v�%�%���
�
���0�0�0���'�'��8�}�}��)�)�!�	�#%����\�\�(�+�+�+� ��*�*�)*�H�X�&��)�D�I�I�d�8�=�=�?�?�6K�6K�,L�,L�L�M�M�M��x�=�=�%�$�G�G�$�G�����	�h�	��O�
�	�h�	��F��!�"�"�"�Y,#s�=K�K$�#K$�noc

���tj|}
td||
d��	tj||||d||���}n#t$rd}YnwxYw|std|��t
�|\}}
|js*|jr#td��tj	d��d}d	}	|rd
||j
|
|fz}nd|j
�d|
d��}|sztt��5tjd
tjd���5}|�|��ddd��n#1swxYwYddd��n#1swxYwYd	}d}|dzt#|
��krd|���z}|rd|z}t'd|ddddddddd�t)t+dt#|
��dz�������}|dkr|S|dkrt,�|d kr't/tj||||����d!}n_|d"kr;t2j�|	tj||||d!��||��d!}n|d#krn|d$kr|dz
}n|dkr|dz}���dS)%Nz5Retrieving report #%d from %s bug tracking system...
r�r%)rE�	followupsrHrFzNo report available: #%s
z*Cannot retrieve bug's package, exiting...
rrrFzFollowup %d - %s

%szOriginal report - r��sensible-pager�ignore��stdin�errors�xOrbeq�N�pzWhat do you want to do now?zProvide extra information.z/Show other bug reports (return to bug listing).zShow next message (followup).z!Show previous message (followup).zRedisplay this message.z&Launch e-mail client to read full log.z$Launch web browser to read full log.�I'm bored; quit please.)rZ�or�r��r�e�br��r�rZr�r�Tr�r�r�)r�SYSTEMSr�
get_report�	Exceptionr�package�sourcer�exit�subjectr�BrokenPipeError�
subprocess�Popen�PIPE�communicater;r�r�r|�rangerrr?r<r=r>)rDr rErHrI�screen�	queryonlyr�rFrA�sysinfo�info�buginfo�messages�current_message�
skip_pagerr1�fdr�rZs                    r�show_reportr�s����o�f�%�G�
�C��7�6�?�$�$�$���!�&�'�6�7�,-�*�x�Y�Y�Y�������������������+�V�4�4�4�����G�X�
�O��7�>���=�>�>�>��������O��J�0!��	Q�+����/7��/H�/J�J�D�D�	Q�4;�?�?�?�H�Q�K�K�P�D��	)��/�*�*�
)�
)��%�&6�j�o�V^�_�_�_�)�ce��N�N�4�(�(�(�)�)�)�)�)�)�)�)�)�)�)����)�)�)�)�
)�
)�
)�
)�
)�
)�
)�
)�
)�
)�
)����
)�
)�
)�
)��
����a��3�x�=�=�0�0��G�M�M�O�O�+�G��	$��G�m�G��8�'�!=�!R�!@�!D�!:�!I�!G�!:�<�<�*.�e�A�s�8�}�}�q�7H�.I�.I�)J�)J�	
L�	
L�	
L��
��8�8��N�
�#�X�X��N�
�#�X�X��7�1�����3�3�
4�
4�
4��J�J�
�#�X�X��O�.�.��/6�/E�f�f�V]�_g�im�/n�/n�/9�7�
D�
D�
D��J�J�
�#�X�X��
�#�X�X��q� �O�O�
�#�X�X��q� �O�a0!�b�FsG�A�A�A�,"E�D0�$E�0D4	�4E�7D4	�8E�E�Ec� ��tj|�d��}|s(tdtj|d��dSd}|	rd}t	|t
��r)t
dtj|d||��nEt
dtj|dd�d�|D����|��g}	tj|||||
|	||�	��\}}}nM#t$r@}d
tj|d�dt|���d�}t|���d}~wwxYw	|s|�t�t�g}|r.g}|D]'}|d
D]}|�|j����(|S|rD|D]-}|d
D]"}d|j|jfz}t#|���#�.t%jd��|D]�}|d}i�|d
D]$}d}|jdkrd}|j�|���|j<�%t+����|���}|�|�fd�|D��f��|�|����|}|s|�t�t�|d
krtd|��ntd|��t	|t0��rd�|D��d}d}	t3||||||||||||	|
�
�
S#t$rt
d��t�wxYw)N�btsrootz7%s bug tracking system has no web URL; bypassing query
r�r#z	 (source)z'Querying %s BTS for reports on %s%s...
r&c�,�g|]}t|����SrV)rQr�s  rr[z$handle_bts_query.<locals>.<listcomp>s��7�7�7�!�s�1�v�v�7�7�7r)rE�versionr�rHrFzUnable to connect to z BTS (error: "z"); r%z#%d  %srr�z  [RESOLVED])�reversec�N��g|]!}d�d|���|����"S)z	{:>8}  {}ru)�format)rY�k�bugs_news  �rr[z$handle_bts_query.<locals>.<listcomp>HsJ���.E�.E�.E�23�/:�.@�.@��Q���(�ST�+�.V�.V�.E�.E�.Erz%d bug report found:

z%d bug reports found:

c�L�g|]!}|�d���|dd���"S)zsrc:rwNrW)rYr�s  rr[z$handle_bts_query.<locals>.<listcomp>[s1��F�F�F�����f�1E�1E�F�q����u�F�F�FrTz No record of this package found.)rr�rrr{rQr�r,�get_reportsr��reprr	rrr��bug_numr��printrr��pending�sortedr��extendr|�browse_bugs)r�rBrIrErHr�r�r�rFr�rrG�buglistrA�latest_first�root�srcstrrC�count�	hierarchyr��errmsg�
hierarchy_new�mboxbuglistr��bugr��	entry_newr��bugs_numbersrs                              @r�handle_bts_queryr!s'����?�3��#�#�I�.�.�D����I���s�#�F�+�	-�	-�	-���
�F�
�����'�3���B��?��_�S�)�&�1�7�F�	D�	D�	D�	D�	�?��_�S�)�&�1��X�X�7�7�w�7�7�7�8�8�&�	B�	B�	B��D�$�$+�$7��W�c�7�G��j�8�%E�%E�%E�!���y�y���$�$�$�$�BI�/�RU�BV�W]�B^�B^�B^�`d�ef�`g�`g�`g�`g�h���F�#�#�#�����$����D��	�� ������
��	��K�"�
4�
4�� ��8�4�4�C��&�&�s�{�3�3�3�3�4����	�"�
�
�� ��8���C�#�s�{�C�K�&@�@�C��#�J�J�J�J��
�H�Q�K�K�K��	&�	&�E��a��I��H��Q�x�
E�
E�����;�&�(�(�)�D�36�+�+�t�t�(D����%�%�!�(�-�-�/�/�<�H�H�H�L�� � �)�.E�.E�.E�.E�7C�.E�.E�.E�"F�
G�
G�
G��K�K��%�%�%�%�"�	��	7�� �����
�a�Z�Z��-�u�5�5�5�5��.��6�6�6��g�t�$�$�	�F�F�g�F�F�F�q�I�G��F��9�e�T�3�	�"�J����"�F�O�=�=�	=�������7�8�8�8������s,� C>�>
E�;E�E�AK,�EK,�,!L
c
�
�	tj��}
n?#tj$r-}t|��t	jd��Yd}~nd}~wwxYwdx}}dx}}|d}g}t
tt
|������}dt|��zdz}|�r�|dz
}|dd�\}}|�d��r|dd�}|�d���t
|���r|dtdz
�}|tdz
d�}t
|��}d}|dkrd	}|r|�
d
|||fz��n|�
|dz��|D]9}|dz}|dz}|�
|||dt|z
dz
�fz���:||dks.|tt
||dzd��z
dz
k�rd
}||krd	}d}|rd}d|||fz}|dz} |r|dz} |ttd|dz����z}!dddddddddd�	}"|r|"ddd�dz|"d<	|D]!}#tj�|#���"t!| ||"|!���}$|$dkrg}�nb|$d kr(|rt#d!|
z��nt#d"|
z���p|$d#kr�w|$d$krt$�|$dkrdS|$d%kr�|rdSt
|��dkrd&}%nt'd'|!��}%|%r$|%dd(kr|%dd�}%|%r|%dd(k�|%rx	t)|%��}%|%|vr(d|%cxkrt
|��krnn||%dz
}%t+j|%|��dS#t.$rt1d)|%��Y�nJwxYwt$�|$d*kr5t3||||||||	|
|�
�
}&t5|&t��r|&d+vr���|&S|$d,kr(t'd-|!��}%t7||||%|d.d/||�	�	n�|$d0ks|$d1kr't
|��dkrd&}%nt'd2|!��}%n|$}%|%r$|%dd(kr|%dd�}%|%r|%dd(k�|%ry	t)|%��}%|%|vr(d|%cxkrt
|��krnn||%dz
}%t9|%|||||||	|�3�	�	}'|'r|'Sn #t.$rt1d)|%��YnwxYw���|dz}d}t
|����||dkrdS|dz}||}|r|�
d��|dz}|���dSdS)4Nr%r�  %�d) %s
r��:rr�sr#z %s: %d remain%s
r'r�� (s to skip rest)�	yNbmrqsfe�Nbmrqfe�(%d-%d/%d) �!Is the bug you found listed above�What would you like to do next�;Problem already reported; optionally add extra information.�.Problem not listed above; possibly check more.�-Open the complete bugs list in a web browser.�`Get more information about a bug (you can also enter a number
     without selecting "m" first).�Redisplay the last bugs shown.r��7Skip remaining problems; file a new report immediately.�'Open the report using an e-mail client.z Filter bug list using a pattern.)	r�r�r��mr�r�r&r��fr�� (skip to Next page).r�r�zhttps://bugs.debian.org/src:%s�https://bugs.debian.org/%sr�r�r��1�[Enter the number of the bug report you want to give more info on,
or press ENTER to exit: #rur9r5��	FilterEnd�Topr��<Please enter the number of the bug you would like to view: #r�Tr4r\�APlease enter the number of the bug you would like more info on: #)r�r�r�rA)�locale�getpreferredencoding�Errorrrr�r;rQr0�rowsr�r+r|r�rrr�rrror:rr�r@r�search_bugsr{rJr)(rrrCrBr�rErHrIr�r�r�r�rAr"r��endcount�catcount�scount�
startcount�category�lastpager��linefmt�catname�reports�these�remain�rplural�report�skipmsgr��rstr�pstrr��helptext�linerZrD�retvalr�s(                                        rrrgs�����'�)�)�����<����
�c�
�
�
����������������������H�x���F�Z���|�H��H�
��S��Y�Y���
 �
 �F��c�&�k�k�!�I�-�G�
�Z ��!���#�A�a�C�=�������s�#�#�	#��c�r�c�l�G����s�#�#�	#��'�l�l�I	��I�T�A�X�I�&�E��d�Q�h�i�i�(�G���\�\�F��G���{�{����
0���� 4�!(�&�'� :�!;�<�<�<�<�����$��/�/�/��
U�
U���!���#�a�<������8�V�<Q�W�v�=M�PQ�=Q�<Q�5R�*S� S�T�T�T�T��9�R�=�(�(��4�#�i��1��&=�a�&@�"A�"A�A�A�E�F�F�-���u�$�$� �G�%���(�'�G�$�
�H�e�'D�D���A�A���C��"B�B�D���e�A�u�q�y�&9�&9�!:�!:�:��V�I�H�>�9�2�R�B�;�
=�
=���Q�$,�S�M�#�2�#�$6�9P�$P�H�S�M�U/� (�/�/���
�(�(��.�.�.�.�&�t�W�h�5<�>�>�>�A��C�x�x�#%����c���!�S�*�+K�g�+U�V�V�V�V�*�+G�'�+Q�R�R�R� ��c��� ��c���&���c������c���$�#�"�F��t�9�9��>�>�%(�F�F�%2�!<�=D�&F�&F�F�%�0����c�)9�)9�%+�A�B�B�Z�F�%�0����c�)9�)9�!�
+�/�),�V����#)��#5�#5�!�v�:R�:R�:R�:R��T���:R�:R�:R�:R�:R�-1�&�1�*�-=�F�'.�'9�&�'�'J�'J�1�'M� M��#-�/�/�/� &�'D�'-�!/�!/�!/�!/�!/�/����#+�N��c���!,�Y��Y��Q[�]d�fl�ns�-4�o�"G�"G��%�f�c�2�2�*�v�AU�7U�7U�$�#)�M��c���!.�/m�ov�!w�!w��+�O�S�$��,3�T�4��,3�5�5�5�5���8�8�q�C�x�x�"�4�y�y�A�~�~�),���)6�8X�Y`�*b�*b���&'�F�$�0����c�)9�)9�%+�A�B�B�Z�F�%�0����c�)9�)9�"�/�/�),�V����#)��#5�#5�!�v�:R�:R�:R�:R��T���:R�:R�:R�:R�:R�-1�&�1�*�-=�F�&1�&�#�w�2<�g�<E�9?�8=�BQ�'S�'S�'S��$'�!/�+.�J�!/��#-�/�/�/� &�'D�'-�!/�!/�!/�!/�!/�/����gU/�n&��\�
���S�'�l�l�I	�Z�y��}�$�$��E��a�<���X�&���	 ��O�O�D�!�!�!��a�Z�F�u�Z �Z �Z �Z �Z s:��A�#A
�
A�7AN
�
N+�*N+�<AS�S1�0S1c	�2�d�|D��}|rt|��}ndSg}tjd��}|pgD]Y}|dD]N}|�|��}|r5|�t|�d�������O�Z||fS)z.Find out bug count and bug # in the hierarchy.c�8�g|]}t|d����S)r%)r;)rYr\s  rr[z"proc_hierarchy.<locals>.<listcomp>s"��,�,�,�Q�s�1�Q�4�y�y�,�,�,r)rrz\ *\#(\d+)[ :]r%)�sum�re�compile�matchr�r:�group)r�lenlistrrC�expr�rr\s        r�proc_hierarchyr`s���-�,�)�,�,�,�G����G������t��D�
�*�&�
'�
'�C���b�1�1����8�	1�	1�C��I�I�c�N�N�E��
1����C����A���/�/�0�0�0��	1��$�;�rc
�z�		tj��}
n?#tj$r-}t|��t	jd��Yd}~nd}~wwxYwt
d��}|sdS	tj||��}
n #t$rt
d��YdSwxYwt|
��\}}|st
d��dSdx}}dx}}|
d}g}ttt|������}dt|��zd	z}|�r�|dz}|dd
�\}}|�
d��r|dd�}|�
d���t|��}t|���r|dtd
z
�}|td
z
d�}t|��}d
x}}|dkrd}|dkrd}|r|�d|||||fz��n|�d|||fz��|D]9}|dz}|dz}|�|||dt |z
dz
�fz���:||
dks.|tt|
|dzd��z
dz
k�r�d} ||krd} d}!|rd}!d|||fz}"|"dz}#|r|"dz}#|t#t%d|dz����z}$ddddddddd d!d"d#�}%| r|%d$dd�d%z|%d$<	|D]!}&tj�|&���"t+|#|!|%|$�&��}'|'d$krg}�nG|'d'krt-d(|z���n+|'d)kr�c|'d*krt.�|'d
krdS|'d+kr�|rdSt|��dkrd,}(nt
d-|$��}(|(r$|(dd.kr|(dd�}(|(r|(dd.k�|(rx	t1|(��}(|(|vr(d|(cxkrt|��krnn||(dz
}(t3j|(|��dS#t6$rt9d/|(��Y�nCwxYwt.�|'d0kr5t;|
|||||||||	�
�
})t=|)t��r|)d1vr���|)S|'d2krdS|'d3krd4S|'d5kr(t
d6|$��}(t?|	|||(|d7d8||�	�	n�|'d9ks|'d:krt
d;|$��}(n|'}(|(r$|(dd.kr|(dd�}(|(r|(dd.k�|(rx	t1|(��}(|(|vr(d|(cxkrt|��krnn||(dz
}(tA|(|||||||�<��}*|*r|*Sn #t6$rt9d/|(��YnwxYw���|dz}d}t|����||
dkrn,|dz
}|
|}|r|�d=��|dz
}|���dS)>z(Search for the bug list using a pattern.r%NzXEnter the search pattern (a Perl-compatible regular expression)
or press ENTER to exit: r;z4Invalid regular expression, press ENTER to continue.z(No match found, press ENTER to continue.rr#r$r�r%rrr&r#z %s: %d report%s (%d remain%s)
z %s: %d report%s
r�r'�yNbmrqsfute�	Nmbrqfuter*r+r,r-r.r/r0r1r�r2z)Filter (search) bug list using a pattern.zUp one level of filter.r3z)Top of the bug list (remove all filters).)r�r�r�r4r�r�r&r5�ur��tr�r6r�r�r7r�r�r�r8r9rur9r5r:rdrer<r�r=r�Tr4r\r>)r�r�r�r')!r?r@rArrr�ror�matched_hierarchyr
r`r;rQr0rBr�r+r|r�rrr�rrr:rr�r@rrCr{rJr)+�
hierarchyfullrBr�rErHrIr�r�r�rAr"r��patternrrrCrDrErFrGrHrIr�rJrKrL�totalrMrN�tpluralrOrPrQr�rRrSr�rTrUrZrDrVr�s+                                           rrCrC&sM��B���'�)�)�����<����
�c�
�
�
���������������������7�8�8�G����{���/�
�w�G�G�	�	�������L�M�M�M��{�{�����!��+�+�K�E�4����@�A�A�A��{���H�x���F�Z���|�H��H�
��S��Y�Y���
 �
 �F��c�&�k�k�!�I�-�G��_��!���#�A�a�C�=�������s�#�#�	#��c�r�c�l�G����s�#�#�	#��G�����'�l�l�M	��I�T�A�X�I�&�E��d�Q�h�i�i�(�G���\�\�F� #�#�G�g���z�z�����{�{����
;���� B�!(�%��&�'� J�!K�L�L�L�L���� 4�!(�%�� 9�!:�;�;�;� �
U�
U���!���#�a�<������8�V�<Q�W�v�=M�PQ�=Q�<Q�5R�*S� S�T�T�T�T��9�R�=�(�(��4�#�i��1��&=�a�&@�"A�"A�A�A�E�F�F�-���u�$�$� �G�'���*�)�G�$�
�H�e�'D�D���A�A���C��"B�B�D���e�A�u�q�y�&9�&9�!:�!:�:��V�I�H�>�9�2�R�D�2�B�D�F�F���Q�$,�S�M�#�2�#�$6�9P�$P�H�S�M�TN� (�/�/���
�(�(��.�.�.�.�&�t�W�h�5<�>�>�>�A��C�x�x�#%����c���&�'C�g�'M�N�N�N�N��c��� ��c���&���c������c���$�#�"�F��t�9�9��>�>�%(�F�F�%2�!<�=D�&F�&F�F�%�0����c�)9�)9�%+�A�B�B�Z�F�%�0����c�)9�)9�!�
+�/�),�V����#)��#5�#5�!�v�:R�:R�:R�:R��T���:R�:R�:R�:R�:R�-1�&�1�*�-=�F�'.�'9�&�'�'J�'J�1�'M� M��#-�/�/�/� &�'D�'-�!/�!/�!/�!/�!/�/����#+�N��c���!,�Y��Y��Q[�]d�fl�-2�G�_�"N�"N��%�f�c�2�2�*�v�AU�7U�7U�$�#)�M��c���*�{��c���$�u��c���!.�0O�PW�"Y�"Y��+�O�S�$��,3�T�4��W�V�V�V�V���8�8�q�C�x�x�%2�!A� '�&)�&)�F�F�
&'�F�$�0����c�)9�)9�%+�A�B�B�Z�F�%�0����c�)9�)9�"�
N�N�),�V����#)��#5�#5�!�v�:R�:R�:R�:R��T���:R�:R�:R�:R�:R�-1�&�1�*�-=�F�&1�&�#�w�2<�g�<E�9?�8=�	'?�'?�'?��
$'�!/�+.�J�!/��#-�N�N�N� &�'D�f� M� M� M� M� M�N����gTN�l&��\�
���[�'�l�l�M	�b�y��}�$�$���A�
���X�&���	��O�O�D�!�!�!��a�K�F��_�@�;sL��A�#A�A�*B�B�B�3AP	�	P'�&P'�2AU	�	U&�%U&c�p�|st|��dS|r|dz
}tj�dd��}t	t
��5t
j|tjd���5}|�	|��ddd��n#1swxYwYddd��dS#1swxYwYdS)Nz[
(You may need to press 'q' to exit your pager and continue using
reportbug at this point.)�PAGERr�r�r�)
rr�environrrrr�r�r�r�)r1�	use_pager�presubj�pagerr�s     r�display_reportrq�s6���p��t������	�p��o�o���J�N�N�7�$4�5�5�E�	�'�	�	� � �
�
�e�:�?�8�
L�
L�
L�	 �PQ�
�M�M�$����	 �	 �	 �	 �	 �	 �	 �	 �	 �	 �	 ����	 �	 �	 �	 � � � � � � � � � � � � ���� � � � � � s6�"B+�1B�B+�B	�B+�B	�B+�+B/�2B/�utf-8c��|std��|dfStj�|���d��}d}t|d���5}t
|��D]\}}|dkr|s|dz}�	ddd��n#1swxYwYd}	d|vrd	}	|r-|d
vrd|z}	n#|dvsd
|vrd|z}	n|dvrd|z}	n|dkrd|z}	d|vs|dkrtd|��ntd|��tj|�d|	�d|�d���}
|
rtd||
��tj�|��s$td|��tj
d��d|vrdSt|d���5}|���}ddd��n#1swxYwY||krtd��|||kfS)NzNo editor found!
r�backslashreplace)r�r'r�r#�vimz-f )�vi�nviru�elvis�gvim�kvimz-c :%d)z
elvis-tiny�	gnuclient�ee�pico�nano�zile�emacsz+%d)�jed�xjedz-g %d�katez	--line %d�&zASpawning %s in background; please press Enter when done editing.
zSpawning %s...
r&z '�'z)Warning: possible error exit from %s: %d
zBug report file %s removed!r%)Nr%z$No changes were made in the editor.
)rrr��basenamer-�open�	enumerater �existsrr��read)r�filename�editor�charset�edname�ourliner5�linenorU�opts�result�
newmessages            r�spawn_editorr��s������#�$�$�$���|��
�W�
�
�f�l�l�n�n�Q�/�
0�
0�F��G�	
�h�1�	2�	2�	2�%�a�'��l�l�	%�	%�N�V�T��t�|�|�G�|� �1�*���	%�%�%�%�%�%�%�%�%�%�%�%����%�%�%�%�
�D��������	)��B�B�B��g�%�D�D��Q�Q�Q��F�"�"��7�?�D�D�
��
&�
&��W�$�D�D�
�v�
�
���(�D�
�f�}�}��&�(�(���#�	%�	%�	%�	%�	�!�6�*�*�*�
�Y�v�v�v�t�t�t�X�X�X�>�
?�
?�F�
�M��;�V�V�L�L�L�
�7�>�>�(�#�#���,�h�7�7�7�������
�f�}�}��y�	
�h�1�	2�	2�	2��a��V�V�X�X�
��������������������W����6�7�7�7��
�g�-�.�.s$� #B�B�B�F(�(F,�/F,c��dS)NTrVrVrr�
initializer�4s���4rc�>�tj���Sr)rr�rdrVrr�	can_inputr�8s���9�����r)r#rN)NNN)NF)TF)NNFFr#Nr)NFr#)NNFNNFF)NFr#r�N)Nr#Fr#Nr�FNFNNF)rr)Errr�rZr�rxr�r�r.r?�
contextlibrre�ImportErrorr<rr�reportbug.exceptionsrrrr	r
�reportbug.urlutilsr�reportbug.utilsr�rdrr��	getoutputr-r��cr:rBr+r�r�log_message�display_failurer r7�parse_and_bind�set_completer_delimsrJ�objectrLror�r�r��
final_messager�r�r�r�r�r�r�rr!rr`rCrqr�r�r�rVrr�<module>r�sO��,�
�
�
�	�	�	�	�����	�	�	�	�����
�
�
�
�������������
�
�
�
���������O�O�O�O�������H�H�H�����)�(�(�(�(�(�(�(���������������.�-�-�-�-�-�����	��	�	�	�	��
����:���,�,�2�2�4�4�D�A�q��C��F�F�L�b�#�#�a�&�&�,�B�M�D�'�'�������M�D�'�'�'�������������������,���H��O�,�,�,�
�%��%�c�*�*�*�*���
�
�
���
������������F����"����2A@�A@�A@�A@�H����
�
�
��
�OT�%)�����&
�
�
�#�#�#�#�
�
�
� D�D�D�D�
/�/�/�/�
AF�;@�h�h�h�h�ZJL�/3�L�L�L�L�^FH�FJ�EI�8=�c�c�c�c�Lh �h �h �V���(E�E�E�P
 �
 �
 �
 �6/�6/�6/�6/�r�������s1�5�?�?�>AB?�?
C�C�0D�D	�D