§
    Â&=dâ  ã                   ó  — d dl Z d dlZd dlZdd„Z e¦   «         Ze j        e j        z  e j        z  Z e	e d¦  «        r
ee j
        z  Z e	e d¦  «        r
ee j        z  ZeZ e	e d¦  «        r
ee j        z  Zdd„Zd	edd
ddfd„Zd„ ZdS )é    Nc                 óÜ   — dg}| r|                      | ¦  «         |r|                      |¦  «         |                      t          j        d¦  «        ¦  «         d                     |¦  «        S )a)  
    Generate filename prefix for a temporary file

    Parameters
    ----------
    package : str, optional
        package name, will be included in prefix if given
    extra : str, optional
        extra string to include in prefix

    Returns
    -------
    str
        filename prefix
    Ú	reportbugz%Y%m%d%H%M%S-ú-)ÚappendÚtimeÚstrftimeÚjoin)ÚpackageÚextraÚplists      ú5/usr/lib/python3/dist-packages/reportbug/tempfiles.pyÚtempfile_prefixr      sk   € ð  ˆM€EØð Ø�Š�WÑÔÐØð Ø�Š�UÑÔÐØ	‡L‚L•”˜Ñ/Ô/Ñ0Ô0Ð0Ø�8Š8�E‰?Œ?Ðó    ÚO_NOINHERITÚ
O_NOFOLLOWÚO_BINARYúw+béÿÿÿÿc                 óì   — d|v rt          j        | t          d¦  «        }nt          j        | t          d¦  «        }	 t          j        |||¦  «        S # t
          $ r t          j        |¦  «         ‚ w xY w)a  
    Wrapper for open() setting some flags

    Parameters
    ----------
    filename : str
        file name
    mode : str, optional
        open mode
    bufsize : int, optional
        buffer size in bytes

    Returns
    -------
    an open file object
    Úbi€  )ÚosÚopenÚ_bin_openflagsÚ_text_openflagsÚfdopenÚ	ExceptionÚclose)ÚfilenameÚmodeÚbufsizeÚfds       r   Úopen_write_safer"   E   sy   € ð" ˆd€{€{ÝŒW�X�~¨uÑ5Ô5ˆˆåŒW�X�°Ñ6Ô6ˆðÝŒy˜˜T 7Ñ+Ô+Ð+øÝð ð ð Ý
Œ�‰ŒˆØðøøøs   ½A Á A3Ú Tzw+c                 ój   — t          j        | |||¦  «        \  }}t          j        |||¦  «        }||fS )a“  
    Wrapper for tempfile.mkstemp

    Main differences are that text defaults to True, and it returns a
    Python file object instead of an os-level file descriptor.

    Parameters
    ----------
    suffix : str, optional
    prefix : str
    dir : str
    text : bool
    mode : str
    bufsize : int

    Returns
    -------
    (file object, str)
        tuple with file object and file name
    )ÚtempfileÚmkstempr   r   )	ÚsuffixÚprefixÚdirÚtextr   r    Úfhr   r!   s	            r   ÚTempFiler,   d   s;   € õ, Ô# F¨F°C¸Ñ>Ô>�L€BˆÝ	Œ�2�t˜WÑ	%Ô	%€BØ�ˆ>Ðr   c                 óp   — t           j                             | ¦  «        rt          j        | ¦  «         dS dS )zß
    Clean up a temporary file

    Removes (unlinks) the named file if it exists.

    Parameters
    ----------
    temp_filename : str
        Full filename of the file to clean up.

    Returns
    -------
    None
    N)r   ÚpathÚexistsÚunlink)Útemp_filenames    r   Úcleanup_temp_filer2      s:   € õ 
„w‡~‚~�mÑ$Ô$ð !Ý
Œ	�-Ñ Ô Ð Ð Ð ð!ð !r   )NN)r   r   )r   r%   r   r   ÚtemplateÚO_RDWRÚO_CREATÚO_EXCLr   Úhasattrr   r   r   r   r"   r,   r2   © r   r   ú<module>r9      s  ðð. 
€	€	€	Ø €€€Ø €€€ðð ð ð ð2 ˆ?ÑÔ€ð ”)˜bœjÑ(¨2¬9Ñ4€Ø
€7ˆ2ˆ}ÑÔð &Ø�r”~Ñ%€OØ
€7ˆ2ˆ|ÑÔð %Ø�r”}Ñ$€Oà €Ø
€7ˆ2ˆzÑÔð "Ø�b”kÑ!€Nð
ð ð ð ð> ˜x¨T¸Ø ðð ð ð ð6!ð !ð !ð !ð !r   