MINI MINI MANI MO
3
  \m                 @   sJ  d dl Z d dl mZmZmZmZmZmZmZmZm	Z	m
Z
mZmZm
Z
mZ d dlZdddddgZdd ZG d	d
 d
Ze ZG dd deZG dd deZG d
d deZG dd deZedkrFd dlZd dlZeejd  Zej Z W dQ R X ee ej!j"ejd  d dZ#x0e#j$ D ]$Z%e#j&e%Z'e(e'e'j) e'j*  qW dS )    N)USE
DEF_GLOBAL	DEF_LOCAL	DEF_PARAM
DEF_IMPORT	DEF_BOUND	DEF_ANNOT	SCOPE_OFF
SCOPE_MASKFREELOCALGLOBAL_IMPLICITGLOBAL_EXPLICITCELLsymtableSymbolTableClassFunctionSymbolc             C   s   t j| ||}t||S )N)	_symtabler   _newSymbolTable)codefilenameZcompile_typetop r    /usr/lib64/python3.6/symtable.pyr      s    c               @   s$   e Zd Zdd Zdd Zdd ZdS )SymbolTableFactoryc             C   s   t j | _d S )N)weakrefWeakValueDictionary_SymbolTableFactory__memo)selfr   r   r   __init__   s    zSymbolTableFactory.__init__c             C   s6   |j tjkrt||S |j tjkr,t||S t||S )N)typer   
TYPE_FUNCTIONr   
TYPE_CLASSr   r   )r    tabler   r   r   r   new   s
    
zSymbolTableFactory.newc             C   s8   ||f}| j j|d }|d kr4| j|| }| j |<