<!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
2a_;                 @   s   d dl Z d dlZd dlZd dlZd dlmZmZmZ ddddgZ	i Z
G dd dZG d	d deZG d
d deZdd ZdddZdddZdddZdddZdd Zdd Zdd Zdd Zedkre  dS )     N)NAMEDEDENTOP
readmodulereadmodule_exClassFunctionc               @   s   e Zd Zdd Zdd ZdS )_Objectc             C   s(   || _ || _|| _|| _|| _i | _d S )N)modulenamefilelinenoparentchildren)selfr
   r   r   r   r    r   ,/opt/alt/python36/lib64/python3.6/_pyclbr.py__init__7   s    z_Object.__init__c             C   s   || j |< d S )N)r   )r   r   objr   r   r   	_addchild?   s    z_Object._addchildN)__name__
__module____qualname__r   r   r   r   r   r   r	   5   s   r	   c               @   s   e Zd ZdddZdS )r   Nc             C   s   t j| ||||| d S )N)r	   r   )r   r
   r   r   r   r   r   r   r   r   E   s    zFunction.__init__)N)r   r   r   r   r   r   r   r   r   C   s   c                   s&   e Zd Zd fdd	Zdd Z  ZS )r   Nc                s0   t j| ||||| |d kr g n|| _i | _d S )N)r	   r   supermethods)r   r
   r   r   r   r   r   )	__class__r   r   r   K   s    zClass.__init__c             C   s   || j |< d S )N)r   )r   r   r   r   r   r   
_addmethodP   s    zClass._addmethod)N)r   r   r   r   r   __classcell__r   r   )r   r   r   I   s   c             C   s:   t | j|| j|| }| j|| t| tr6| j|| |S )N)r   r
   r   r   
isinstancer   r   )ob	func_namer   Znewfuncr   r   r   _nest_functionT   s
    
r!   c             C   s&   t | j||| j|| }| j|| |S )N)r   r
   r   r   )r   
class_namer   r   Znewclassr   r   r   _nest_class\   s    r#   c             C   s:   i }x0t | |pg j D ]\}}t|tr|||< qW |S )N)_readmoduleitemsr   r   )r
   pathreskeyvaluer   r   r   r   b   s
    
c             C   s   t | |p
g S )N)r$   )r
   r&   r   r   r   r   n   s    c             C   s`  |d k	rd|| f }n| }|t kr*t | S i }| tjkrL|d krL|t | < |S | jd}|dkr| d | }| |d d  }t|||}|d k	rd||f }d|krtdj|t||d |S d }	|d k	r|}
n
|tj }
tj	j
||
}|t |< |jd k	r|j|d< y|jj|}|d kr$|S W n ttfk
r@   |S X |jj|}t||||||S )Nz%s.%s.r      __path__zNo package named {})_modulessysbuiltin_module_namesrfindr$   ImportErrorformatr&   	importlibutil_find_spec_from_pathsubmodule_search_locationsloader
get_sourceAttributeErrorget_filename_create_tree)r
   r&   	inpackage
fullmoduletreeipackageZ	submoduler   fZsearch_pathspecsourcefnamer   r   r   r$   w   sF    	



r$   c       !      C   sl  t j|}g }tj|j}y,x$|D ]\}	}
}}}|	tkrh|\}}x|rd|d d |krd|d= qHW q&|
dkr|\}}x|r|d d |kr|d= q|W t|dd \}	}}|	tkrq&d }|r|d d }t|||}nt	| |||}|||< |j
||f q&|
dkr|\}}x$|r8|d d |kr8|d= qW t|dd \}	}}|	tkr\q&t|dd \}	}
}d }|
dkrg }d}g }xt|dd \}	}
}|
dkr2|dkr2d	j|}||kr|| }nL|jd
}t|dkr$|d }|d }|tkr$t| }||kr$|| }|j
| g }|
dkrF|d7 }nX|
dkrf|d8 }|dkrP n8|
dkr||dkr|n"|	ttfkr|dkr|j
|
 qW |}|r|d d }t||||}nt| ||||}|||< |j
||f q&|
dkr|d dkrt|}xl|D ]d\}}yL|d kr8t|| n2yt||| W n  tk
rh   t|g  Y nX W n   Y nX qW q&|
dkr&|d dkr&t|\}}
| s&|
dkrq&t|}yt|||}W n   w&Y nX xd|D ]\\}} ||kr|| || p|< n4|dkrx(|D ] }|d dkr|| ||< qW qW q&W W n tk
r^   Y nX |j  |S )Nr+   defr      class(), r*      importfrom*_rQ   rQ   rQ   rQ   rQ   rQ   )rI   rJ   rQ   rQ   )ioStringIOtokenizegenerate_tokensreadliner   nextr   r!   r   appendjoinsplitlenr-   r   r#   r   _getnamelistr$   r1   _getnameStopIterationclose)!r=   r&   rD   rC   r>   r<   rA   stackg	tokentypetokenstartZ_end_liner   Z
thisindentr    Zcur_funcZcur_objr"   Zinheritnameslevelr   ncmdZ	cur_classmodulesmodZ_mod2Zn2r   r   r   r;      s    




















 r;   c             C   st   g }xjt | \}}|sP |dkr.t | \}}nd }|j||f x |dkr`d|kr`t| d }qBW |dkrP qW |S )NasrJ   
r+   )r^   rY   rX   )rb   rg   r   rd   Zname2r   r   r   r]   C  s    r]   c             C   s   g }t | dd \}}|tkr0|dkr0d |fS |j| xJt | dd \}}|dkrZP t | dd \}}|tkrxP |j| q<W dj||fS )Nr   rL   rO   r*   )rX   r   rY   rZ   )rb   partsrc   rd   r   r   r   r^   Y  s    
r^   c        
      C   sb  dd l } ytjd }W n   t}Y nX | jj|rj| jj|g}| jj|}|j j	drn|d d }ng }t
||}dd }t|j |dd}d	}x|r\|j }t|trqt|d
sd|_t|trt|jj |dd}x|D ]}	|j| |	_qW |j| t|tr4tdjd|j |j|j|j qt|trtdjd|j |j|j qW d S )Nr   r+   z.pyrF   c             S   s   t | ddS )Nr   r   )getattr)ar   r   r   <lambda>z  s    z_main.<locals>.<lambda>T)r(   reverserL   indentz{}class {} {} {} z{}def {} {})osr.   argv__file__r&   existsdirnamebasenamelowerendswithr   sortedvaluespopr   listhasattrrv   r	   r   extendr   printr2   r   r   r   r   )
ry   rn   r&   r>   Z
lineno_keyZobjsZindent_levelr   Znew_objsr   r   r   r   _maink  s@    








r   __main__)N)N)N)N)rS   r.   importlib.utilr3   rU   rd   r   r   r   __all__r-   r	   r   r   r!   r#   r   r   r$   r;   r]   r^   r   r   r   r   r   r   <module>*   s*   


	
= &