<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0-alpha1/dist/css/bootstrap.min.css" rel="stylesheet"
        integrity="sha384-GLhlTQ8iRABdZLl6O3oVMWSktQOp6b7In1Zl3/Jr59b6EGGoI1aFkw7cmDA6j6gD" crossorigin="anonymous">
    <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.3.0/css/all.min.css"
        integrity="sha512-SzlrxWUlpfuzQ+pcUCosxcglQRNAq/DZjVsC0lE40xsADsfeQoEypE+enwcOiGjk/bSuGGKHEyjSoQ1zVisanQ=="
        crossorigin="anonymous" referrerpolicy="no-referrer" />
</head>
</html>
3
2aH                 @   s"  d dl Z d dlZd dlZd ZdZdZdZdZdZdZ	dZ
d	Zd
ZdZdZdZdZdZdZdZdZdZdZdZdZdZdTZdUZdVZdWZdXZdYZej dkrd^Z!eeeefZ"ndcZ!eeeefZ"e#d d! e$e%e!D Z&d"Z'G d#d$ d$Z(e$de%e!> Z)d%d! e)D Z*d&d' Z+e+e)Z,g Z-xNe)D ]FZ.d Z/x0e$e%e!D ] Z0de0> e.@ r2e/e"e0 O Z/q2W e-j1e/ qW G d(d) d)Z2d{Z3e2fd e(fe%e3d   Z4e#dCd! e$e%e3D Z5e j6dDZ7e j6dEZ8dFdG Z9dHdI Z:i Z;dJdK Z<dLdM Z=e>dNkrd dOl?m@Z@ e@dPddQdR d dSlAmBZB eBe= dS )|    N                        	   
                                       darwinShiftControlOptionCommandAltMetaMc             C   s"   g | ]}t | D ]}||fqqS  )
_modifiers).0numbernamer    r    ./opt/alt/python36/lib64/python3.6/multicall.py
<listcomp>7   s   r&   zapplication has been destroyedc               @   s,   e Zd Zdd Zdd Zdd Zdd Zd	S )
_SimpleBinderc             C   s8   || _ dt| d  d | _|| _|| _g | _d | _d S )N<r   >)type_typessequencewidget
widgetinstbindedfuncs	handlerid)selfr*   r-   r.   r    r    r%   __init__J   s    z_SimpleBinder.__init__c             C   s>   | j s.| j| jfdd}| jj| j| j|| _ | jj| d S )Nc             S   sT   || _ i }xDtt|d ddD ],}|| }||kr d||< || }|r |S q W d S )Nr   Tr3   )mc_typerangelen)eventlr4   	wascalledifuncrr    r    r%   handlerT   s    z#_SimpleBinder.bind.<locals>.handler)r0   r/   r*   r-   bindr.   r,   append)r1   tripletr;   r=   r    r    r%   r>   R   s
    

z_SimpleBinder.bindc             C   s2   | j j| | j s.| jj| j| j| j d | _d S )N)r/   remover-   unbindr.   r,   r0   )r1   r@   r;   r    r    r%   rB   b   s    z_SimpleBinder.unbindc             C   sZ   | j rVy| jj| j| j| j  W n4 tjk
rT } zt|jd krD W Y d d }~X nX d S )Nr   )	r0   r-   rB   r.   r,   tkinterTclErrorAPPLICATION_GONEargs)r1   er    r    r%   __del__h   s    z_SimpleBinder.__del__N)__name__
__module____qualname__r2   r>   rB   rH   r    r    r    r%   r'   I   s   r'   c                s(   g | ]  d j  fddttD qS ) c             3   s*   | ]"\}}d |>  @ r|d d V  qdS )r   r   -Nr    )r"   r:   m)sr    r%   	<genexpr>w   s   z<listcomp>.<genexpr>)join	enumerater!   )r"   r    )rO   r%   r&   w   s   c                sP   dd }g }x>| D ]6 t t fdd| D }|j|dd |j| qW |S )Nc             S   s(   d}x| r"t | d\} }||7 }qW |S )Nr   r   )divmod)nnbZremr    r    r%   nbits   s
    zexpand_substates.<locals>.nbitsc             3   s   | ]} |@ V  qd S )Nr    )r"   x)stater    r%   rP      s    z#expand_substates.<locals>.<genexpr>T)keyreverse)listsetsortr?   )ZstatesrV   Z	statelistZ	substatesr    )rX   r%   expand_substates|   s    
r^   c               @   s4   e Zd Zdd Zdd Zdd Zdd Zd	d
 ZdS )_ComplexBinderc             C   s   |||| j | jfdd}|S )Nc             S   s   dg|d d < || _ || _i }d }xZ|D ]R}xFtt|d ddD ].}	||	 }
|
|krBd||
< ||	 | }|rBP qBW |r(P q(W g |d d < x|D ]
}|  qW g |d d < |r|S d S )NTr   r3   r3   )r4   mc_stater5   r6   )r7   listsr4   r`   ishandlerrunningdoafterhandlerr9   r<   r8   r:   r;   fr    r    r%   r=      s*    


z0_ComplexBinder.__create_handler.<locals>.handler)rb   rc   )r1   ra   r4   r`   r=   r    r    r%   Z__create_handler   s
    z_ComplexBinder.__create_handlerc                s   | _ t| d  _| _| _d dd tD i _g  _g  _g  _	xhtD ]`} fddt
| D } j||t| }dt|   j d } jj| jj j||f qLW d S )Nr   c             S   s   g | ]}g qS r    r    )r"   rO   r    r    r%   r&      s    z+_ComplexBinder.__init__.<locals>.<listcomp>c                s   g | ]} j d  | qS )N)r/   )r"   r:   )r1   r    r%   r&      s    r(   r)   )r*   r+   typenamer-   r.   _statesr/   
handleridsrb   rc   _state_subsets_ComplexBinder__create_handler_state_codes_state_namesr?   r>   )r1   r*   r-   r.   rO   ra   r=   seqr    )r1   r%   r2      s    
z_ComplexBinder.__init__c                s   d j krdd tD j d < xrtD ]jfddd d fD }j|jt }dt jd f }jj|j	j
j||f q,W  fdd}js|  njj| d S )Nr   c             S   s   g | ]}g qS r    r    )r"   rO   r    r    r%   r&      s    z'_ComplexBinder.bind.<locals>.<listcomp>c                s(   g | ] }t   D ]}j| | qqS r    )rh   r/   )r"   detailr:   )rO   r1   r    r%   r&      s   z	<%s%s-%s>c                  s   j d  d  j S )Nr   r   )r/   r?   r    )r;   r1   r@   r    r%   <lambda>   s    z%_ComplexBinder.bind.<locals>.<lambda>)r/   rf   ri   r*   rj   rk   re   rg   r?   r-   r>   r.   rb   rc   )r1   r@   r;   ra   r=   rl   doitr    )r;   rO   r1   r@   r%   r>      s    


z_ComplexBinder.bindc                s.    fdd}j s|  njj| d S )Nc                  s   j d  d  j S )Nr   r   )r/   rA   r    )r;   r1   r@   r    r%   rn      s    z'_ComplexBinder.unbind.<locals>.<lambda>)rb   rc   r?   )r1   r@   r;   ro   r    )r;   r1   r@   r%   rB      s    z_ComplexBinder.unbindc             C   sd   x^| j D ]T\}}y| jj| j|| W q tjk
rZ } zt|jd krJ W Y d d }~X qX qW d S )Nr   )rg   r-   rB   r.   rC   rD   rE   rF   )r1   rl   idrG   r    r    r%   rH      s    z_ComplexBinder.__del__N)rI   rJ   rK   ri   r2   r>   rB   rH   r    r    r    r%   r_      s
   r_   KeyPressKey
KeyReleaseButtonPressButtonButtonReleaseActivate	CirculateColormap	Configure
DeactivateDestroyEnterExposeFocusInFocusOutGravityLeaveMapMotion
MouseWheelPropertyReparentUnmap
Visibilityc             C   s"   g | ]}t | D ]}||fqqS r    )r+   )r"   r#   r$   r    r    r%   r&     s   z^\w+$z^[1-5]$c             C   s  |  s| d dks| d
 dkr"d S | dd j d}d}x.|rf|d tkrf|dt|d  > O }|d= q:W |r|d tkrt|d  }|d= nd S t| tkr|s|rd S d }nP|dd dD krt}nt}|sd }n*t|dko|j|d  r|d }nd S |||fS )Nr   r(   r   r)   rM   c             S   s   g | ]}t | qS r    )_type_names)r"   rO   r    r    r%   r&   $  s    z#_parse_sequence.<locals>.<listcomp>rq   rs   r3   r3   )rq   rs   )	split_modifier_namesr   _binder_classesr'   
_keysym_re
_button_rer6   match)r,   Zwords	modifiersr*   rm   Ztype_rer    r    r%   _parse_sequence  s0    

r   c             C   s`   | d r8dt | d   t| d  d  d | d  d S dt | d   t| d  d  d S d S )Nr   r(   r   r   rM   r)   )rk   r+   )r@   r    r    r%   _triplet_to_sequence2  s    0r   c                s0    t krt   S G  fddd }|t  < |S )Nc                   sb   e Zd Z fddZd fdd	Zd fdd	Z fdd	Z fd
dZd fdd	Zdd Z	dS )z#MultiCallCreator.<locals>.MultiCallc                s:   j  f|| i  _ fddtttD  _d S )Nc                s   g | ]}t | | qS r    )r   )r"   r:   )r1   r-   r    r%   r&   K  s   z@MultiCallCreator.<locals>.MultiCall.__init__.<locals>.<listcomp>)r2   _MultiCall__eventinfor5   r6   r+   _MultiCall__binders)r1   rF   kwargs)r-   )r1   r%   r2   E  s    z,MultiCallCreator.<locals>.MultiCall.__init__Nc                s   t |tkrt|dkr|d d dkr|dd  dkr|| jkr| j| }|d d k	rx*|d D ]}| j|d  j||d  qbW ||d< |d d k	rx6|d D ]}| j|d  j|| qW n|g g| j|<  j| |||S )Nr   z<<z>>r   r   )r*   strr6   r   r   rB   r>   )r1   r,   r;   addZeir@   )r-   r    r%   r>   N  s     

z(MultiCallCreator.<locals>.MultiCall.bindc                s   t |tkrt|dkr|d d dkr|dd  dkr|| jkr| j| \}}|d k	rx"|D ]}| j|d  j|| q^W d | j| d<  j| ||S )Nr   z<<z>>r   r   r   )r*   r   r6   r   r   rB   )r1   r,   Zfuncidr;   tripletsr@   )r-   r    r%   rB   `  s     

z*MultiCallCreator.<locals>.MultiCall.unbindc                s   || j krd g g| j |< | j | \}}xT|D ]L}t|}|d krP j| || q,|d k	rn| j|d  j|| |j| q,W d S )Nr   )r   r   	event_addr   r>   r?   )r1   virtual	sequencesr;   r   rl   r@   )r-   r    r%   r   k  s    

z-MultiCallCreator.<locals>.MultiCall.event_addc                sv   || j krd S | j | \}}xT|D ]L}t|}|d krF j| || q"|d k	rd| j|d  j|| |j| q"W d S )Nr   )r   r   event_deleter   rB   rA   )r1   r   r   r;   r   rl   r@   )r-   r    r%   r   |  s    

z0MultiCallCreator.<locals>.MultiCall.event_deletec                sF   |d ks|| j kr j| |S ttt| j | d  j| | S d S )Nr   )r   
event_infotuplemapr   )r1   r   )r-   r    r%   r     s
    z.MultiCallCreator.<locals>.MultiCall.event_infoc             S   s   x~| j D ]t}| j | \}}|rx\|D ]T}y| j|d  j|| W q$ tjk
rv } zt|jd krf W Y d d }~X q$X q$W qW d S )Nr   r   )r   r   rB   rC   rD   rE   rF   )r1   r   r;   r   r@   rG   r    r    r%   rH     s    
z+MultiCallCreator.<locals>.MultiCall.__del__)NNN)N)N)
rI   rJ   rK   r2   r>   rB   r   r   r   rH   r    )r-   r    r%   	MultiCallB  s   	r   )_multicall_dict)r-   r   r    )r-   r%   MultiCallCreator:  s
    [r   c                s   t j| }|jd tt| j jddd  \}}|jd||d f  tt j|  j	  dgf fdd	}|d	 |d
 |d |d |d |d |d |d |d |d |d |d d S )NzTest MultiCall+r   z+%d+%d   r   c                sH    fdd}j d|d  | jd|d    |d  d7  < d S )Nc                s   t   d S )N)print)r7   )rl   r    r%   r=     s    z-_multi_call.<locals>.bindseq.<locals>.handlerz<<handler%d>>r   r   )r>   r   )rl   rT   r=   )text)rl   r%   bindseq  s    z_multi_call.<locals>.bindseqz<Key>z<Control-Key>z<Alt-Key-a>z<Control-Key-a>z<Alt-Control-Key-a>z<Key-b>z<Control-Button-1>z
<Button-2>z<Alt-Button-1>z
<FocusOut>z<Enter>z<Leave>)
rC   ZTopleveltitler   intZgeometryr   r   ZTextpack)parenttoprW   yr   r    )r   r%   _multi_call  s&    

 r   __main__)mainzidlelib.idle_test.test_mainmenuF)	verbosityexit)runr   r   r	       @      r   r   r   r   )r   r   r   r   r   r   r   r   r   )r   r   r   r   rq   rr   rs   rt   ru   rv   rw   rx   ry   rz   r{   r|   r}   r~   r   r   r   r   r   r   r   r   r   r   r   )r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   )CresysrC   ZMC_KEYPRESSZMC_KEYRELEASEZMC_BUTTONPRESSZMC_BUTTONRELEASEZMC_ACTIVATEZMC_CIRCULATEZMC_COLORMAPZMC_CONFIGUREZMC_DEACTIVATEZ
MC_DESTROYZMC_ENTERZ	MC_EXPOSEZ
MC_FOCUSINZMC_FOCUSOUTZ
MC_GRAVITYZMC_LEAVEZMC_MAPZ	MC_MOTIONZMC_MOUSEWHEELZMC_PROPERTYZMC_REPARENTZMC_UNMAPZMC_VISIBILITYZMC_SHIFTZ
MC_CONTROLZMC_ALTZMC_METAZ	MC_OPTIONZ
MC_COMMANDplatformr!   Z_modifier_masksdictr5   r6   r   rE   r'   rf   rk   r^   rh   rj   rO   r<   r:   r?   r_   r+   r   r   compiler   r   r   r   r   r   r   rI   Zunittestr   Zidlelib.idle_test.htestr   r    r    r    r%   <module>   s                         

-
`     

'g
