3 \& � @sbdZddlTddlZddlZdd�Zdd�ZyeWn e k rTdd lmZYnXd d �Z dS) z�curses The main package for curses support for Python. Normally used by importing the package, and perhaps a particular module inside it. import curses from curses import textpad curses.initscr() ... �)�*NcCstddl}ddl}ttjjdd�tjj�d�|j �}x:|j j �D],\}}|dd�dks`|d kr@t |||�q@W|S) NrZTERM�unknown)Zterm�fd�ZACS_�LINES�COLS)rr) �_curses�cursesZ setupterm�_os�environ�get�_sys� __stdout__�fileno�initscr�__dict__�items�setattr)rr �stdscr�key�value�r�'/usr/lib64/python3.6/curses/__init__.pyrsrcCs@ddl}ddl}|j�}t|d�r*|j|_t|d�r<|j|_|S)Nr�COLORS� COLOR_PAIRS)rr � start_color�hasattrrr)rr Zretvalrrrr*s  r�)�has_keycOsrzDt�}t�t�|jd�y t�Wn YnX||f|�|�Sdt�krl|jd�t�t�t�XdS)aWrapper function that initializes curses and calls another function, restoring normal keyboard/screen behavior on error. The callable object 'func' is then passed the main window 'stdscr' as its first argument, followed by any other arguments passed to wrapper(). rNrr) rZnoechoZcbreakZkeypadr�localsZechoZnocbreakZendwin)�func�args�kwdsrrrr�wrapper?s    r#) �__doc__r�osr �sysr rrr� NameErrorr#rrrr� s