3
/*^ED                 @   s  d Z ddlZddlZddlmZ ddlmZ ddlmZm	Z	 erTej
 d Zej
Znej d ZejZdddd	d	d
d
d
d
d
d
dddddddddddddddddddddddddddddddddddddddddddd6ZdZededededggedgZede	gZed edeedggZed!ed"ed ed#g gggZd$d% Zed&eded'd(dd)d*ged+ed,d-dd)d*ggZdZd.Zddd1Zi ZddddddddddddddddddddddddddddddddNddddddddddddd ddddddddd	d\dded] fd
fd^dded] fdfd^dded] fdfd^dded] fdfddddd_ded`ffdaded`ffdddcded`ffdddddiddedj fdfddddiddedj fdfd d!d"d#d&d'd*d,d-d.d/dtdedu fdedu ffd0d2d5d7d<dzd=ddedj fd>fd@dCdFdJdLdNdOdPdQdRdSdTdded`ffdded`ffdUdVdWdXdYdZd[d\d]d_d`dbdcdddedfdgdhdidjdkdlddedj ffdmdndodpdqdrdsdtdudvdwdxdydzd|d~dddddddddddddddddddedkffdddedkffddddddded`ffdddZefZeddfZedfZeeeeedZdd% Zejdej Z!dS (  zGConstants and initial table values used in pysource.py and fragments.py    N)
SyntaxTree)PYTHON3)Token	NoneToken   (   &                                 
                  )6Z
named_expryieldZ
yield_fromZ	_mklambdaZmklambdaif_expif_exp_lambdaif_exp_not_lambda
if_exp_notif_exp_true
if_exp_retorret_orandret_andnot	unary_notZcompare
BINARY_AND	BINARY_OR
BINARY_XORBINARY_LSHIFTBINARY_RSHIFT
BINARY_ADDBINARY_SUBTRACTBINARY_DIVIDEBINARY_FLOOR_DIVIDEBINARY_MATRIX_MULTIPLYBINARY_MODULOBINARY_MULTIPLYBINARY_TRUE_DIVIDEunary_opBINARY_POWERZ
await_expr	attributeZbuildslice2Zbuildslice3calldelete_subscriptslice0slice1slice2slice3store_subscript	subscript
subscript2dictZ	dict_compZgenerator_explistZ	list_compZset_compZset_comp_exprunary_convertP   returnZret_exprexprLOAD_LOCALSRETURN_VALUEstmtZstmtsZsstmtpassc             C   s8   t dt dt dt|| | dgt dtdddgggS )	NrG   assignrD   )pattrattrstore
STORE_NAME__doc__)rJ   )r   r   )Z
doc_stringZdoc_load rO   X/home/psgendb/BIRCHDEV/python/lib/python3.6/site-packages/uncompyle6/semantics/consts.py<lambda>   s   rQ   rI   	LOAD_NAME__name__T)rJ   offsethas_argrL   rM   
__module__ %c.%[1]{pattr}%|del %c.%[-1]{pattr}
)
STORE_ATTRDELETE_ATTR+-*/@//%%**<<>>&|^+=-=*=@=/=//=%%=**=<<=>>=&=|=^=%c %c %cbinary_operator~%c%cunary_operatornot %c`%c`iter(%c)%c[:]%c[%p:]d   %c[:%p]	%c[%p:%p]%{pattr}locals()%|del %{pattr}
z%|del %p[%c]
r=   z%p[%c]z%C%,, z(%C%,)(%c).%[1]{pattr}z[%C]%P%c for %c in %c%c if %p%c   z if not %p%cr%     if %c%c%c:%c
%|%c = %p
   %|%c %c %c
%|%c.%[2]{pattr} %c %c
%c = %c	%c and %cz%p or %pr    %c or %c%p if %c else %c%p if 1 else %c%p if %p else %pz%p if not %p else %p%p if not %c else %c$%p %[-1]{pattr.replace("-", " ")} %p   %p %p   #%[3]{pattr.replace("-", " ")} %p %p %[1]{pattr.replace("-", " ")} %p

%|def %c


%c%|@%c
%c	%|def %c
%[0]{pattr}=%cz%D%|print %c%c,
%|print %c%c
, %c%|print
%|print >> %c, %c,
%|print >> %c, %c
%|print >> %c
%C%|"%%s" %% %c
%|%p
%|break
%|continue
%|raise
%|raise %c
%|raise %c, %c, %c
%|return %c

return %c
%|if %c:
%+%c%-znot %p%|if %c:
%+%c%-%|else:
%+%c%-%|if %c:
%+%c%-%c%|elif %c:
%+%c%-%c%|elif %c:
%+%c%-%|elif %c:
%+%c%-%|else:
%+%c%-%|if %c:
%+%c%-%|else:
%+%c%-

!%|elif %c:
%+%c%-%|else:
%+%c%-

%|while True:
%+%c%-

%|while %c:
%+%c%-

%|while 1:
%+%c%-

!%|while 1:
%+%c%-%|else:
%+%c%-

"%|while %c:
%+%c%-%|else:
%+%c%-

 %|while %c:
%+%c%-%|else:
%+%c%-%|for %c in %c:
%+%c%-

	for_block&%|for %c in %c:
%+%c%-%|else:
%+%c%-

$%|for %c in %c:
%+%c%-%|else:
%+%c%-%|try:
%+%c%-%c

%|try:
%+%c%-%c%|else:
%+%c%-

%|try:
%+%c%-%c%|else:
%+%c%-%c%-%c%+%c%-%c%|else:
%+%c %|try:
%+%c%-%|finally:
%+%c%-

   %|except:
%+%c%-%|except %c:
%|except %c as %c:
z%+%c%-%C%|pass
%c: %c%|import %c
%|from %[2]{pattr} import %c

importlist%|from %[2]{pattr} import *
)r+   r,   r1   r-   r/   r2   r.   r0   r4   r)   r*   r&   r'   r(   INPLACE_ADDINPLACE_SUBTRACTINPLACE_MULTIPLYINPLACE_MATRIX_MULTIPLYZINPLACE_DIVIDEINPLACE_TRUE_DIVIDEINPLACE_FLOOR_DIVIDEINPLACE_MODULOINPLACE_POWERINPLACE_LSHIFTINPLACE_RSHIFTINPLACE_AND
INPLACE_ORINPLACE_XORZbin_opUNARY_POSITIVEUNARY_NEGATIVEUNARY_INVERTr3   r%   rA   Zget_iterr8   r9   r:   r;   IMPORT_FROMZIMPORT_NAME_ATTRr5   ZLOAD_STR	LOAD_FASTrR   ZLOAD_CLASSNAMELOAD_GLOBAL
LOAD_DEREFrE   ZLOAD_ASSERTDELETE_FASTDELETE_NAMEDELETE_GLOBALr7   r=   r>   r<   
STORE_FASTrM   STORE_GLOBALSTORE_DEREFunpackZunpack_w_parensZattribute_w_parensZstore_w_parensZunpack_listZbuild_tuple2Z	list_iterZlist_forZlist_ifZlist_if_notZlc_body	comp_itercomp_ifZcomp_if_notZ	comp_bodyZset_comp_bodyZgen_comp_bodyZdict_comp_bodyrI   Zaug_assign1Zaug_assign2Z
designListr"   r#   Zand2r    r!   r   r   r   r   r   r   Zcompare_singleZcompare_chainedZcompare_chained1Zcompare_chained2Zfunction_defZfunction_def_decoZ
mkfuncdecoZmkfuncdeco0ZclassdefdecoZclassdefdeco1kwargkwargsZkwargs1Zassert_expr_orZassert_expr_andZprint_items_stmtZprint_items_nl_stmtZ
print_itemZprint_nlZprint_toZprint_to_nlZprint_nl_toZprint_to_itemsZstring_at_beginningZ	call_stmtbreakcontinueZraise_stmt0Zraise_stmt1Zraise_stmt3rC   Zreturn_if_stmtZifstmtZ
iflaststmtZiflaststmtlZtesttrueZ
ifelsestmtZifelsestmtcZifelsestmtlZ
ifelifstmtZelifelifstmtZelifstmtZelifelsestmtZifelsestmtrZifelsestmtr2ZelifelsestmtrZelifelsestmtr2ZwhileTruestmtZ	whilestmtZ
while1stmtZwhile1elsestmtZwhileelsestmtZwhileelsestmt2ZwhileelselaststmtforZforelsestmtZforelselaststmtZforelselaststmtlZ
try_exceptZtryelsestmtZtryelsestmtcZtryelsestmtlZtf_try_exceptZtf_tryelsestmtZtryfinallystmtexceptZexcept_cond1Zexcept_cond2Zexcept_suiteZexcept_suite_finalizerH   r   ZkvZkv2importr   import_fromZimport_from_star)rG   r6   del_stmtrL   exprlistc             C   s   t dtd| dgS )NrD   r   )rJ   )r   r   )
param_namerO   rO   rP   rQ     s   z
            (?P<prefix> [^%]* )
            % ( \[ (?P<child> -? \d+ ) \] )?
                ((?P<type> [^{] ) |
                 ( [{] (?P<expr> [^}]* ) [}] ))
        z    )rX   r   )rY   r   )r\   )r]   )r^   )r_   )r`   )r_   )ra   )rb   )rc   )rd   )re   )rf   )rg   )rh   )ri   )rj   )rk   )rl   )rm   )rm   )rn   )ro   )rp   )rq   )rr   )rs   )rt   )ru   r  rw   r   rD   )rv   r   r  r  )r\   )r]   r   rz   r   rD   )ry   r  r  r   rD   )r{   r  r   rD   )r|   r  r   rD   )r}   r  r   rD   )r~   r	  r   rD   r   r   )r   r
  r  r   rD   r   r   )r   r  r  r   rD   r   r   r   r   )r   r  r  r  )r   )r   r   rD   )rX   r  )r   )r   )r   )r   )r   )r   )r   )r   )r   )r   )r   )r   rD   )r   rD   )r   rD   )r   rD   )r   )r   )r   )r   r   rD   )r   r  r   rD   )r   r  r  r   r  r   r   )r   r  )r   r   )r   r   r   r   r   rD   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   r   )r   r   r   )r   r   )r   r   r   r   rD   r   )r   r  r   r   r   rD   r   r   rD   )r   r  r  r   r   rD   r   )r   r  r   r   r   r   r   r  r  r   )r   r  r  r  )r   r   )r   r   r   rD   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   )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   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   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   r   r&  )r   r   r&  r&  )r   r   r   r&  r  )r   r   r   r  r&  )r   r   r   r&  r   rL   r   rD   r   r   )r   r+  r,  r-  r   rL   r   rD   r   r   r&  )r   r.  r/  r0  r&  r   rL   r   rD   r   r   r&  )r   r1  r2  r3  r&  r   rL   r   rD   r   r   r&  )r   r4  r5  r6  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   rD   r   rL   )r   r7  r8  )r   )r   )r   r   r   )r   r   r   )r   r   r   r   )r   r9  )r   r  r  )"rN   resysZuncompyle6.parsers.treenoder   
uncompyle6r   Zuncompyle6.scanners.tokr   r   maxsizeZminintZmaxintZ
PRECEDENCEZLINE_LENGTHZRETURN_LOCALSNONEZRETURN_NONEZPASSZASSIGN_DOC_STRINGZNAME_MODULEZTABZINDENT_PER_LEVELZTABLE_RZTABLE_R0ZTABLE_DIRECTZ
MAP_DIRECTZMAP_R0ZMAP_RZMAPZASSIGN_TUPLE_PARAMcompileVERBOSEescaperO   rO   rO   rP   <module>   sF                    

