U ifZP @ s d dl Z d dlZd dlZd dlZd dlT d dlmZ dddddd d ddd dge Z[ejejej e eefZ ed ZdedfedfedffZed ZdZdd ZdUdddddZdVddddZddddd d!d"d#d$d%d& Zd'd( Zd)d* Zd+d Zd,d- Zddd.dZed/d0Z d1e j!_"d2e j_"d3e j#_"d4e j$_"d5e j%_"d6e j&_"d7e j'_"d8e j(_"d9Z)d:Z*G d;d d e Z+dd<d=dZ,d>d? Z-d@dA Z.dWdBdCZ/dXdddEdZ0ddddFdGZ1dYdd dHdIdJZ2dKdL Z3e0Z4dMdN Z5dOd Z6dPd Z7G dQd dZ8dRdS Z9e:dTkre9 dS )Z N)*)__all__ code_infodisdisassembledistbdiscofindlinestarts findlabels show_codeget_instructionsInstructionBytecodeFORMAT_VALUE)N strreprascii MAKE_FUNCTION)defaultsZ kwdefaultsZannotationsZclosurec C s6 zt | |d}W n tk r0 t | |d}Y nX |S )Nevalexec)compileSyntaxError)sourcenamec r (/opt/alt/python38/lib64/python3.8/dis.py_try_compile s r filedepthc C sh | d krt |d d S t| dr&| j} t| dr8| j} n4t| drJ| j} n"t| dr\| j} nt| drl| j} t| drt| j }|D ]p\}}t |trtd| |d zt |||d W n0 tk r } ztd ||d W 5 d }~X Y nX t|d qnht| drt| ||d nLt | ttfr6t| |d n.t | trRt| ||d ntdt| j d S ) Nr! __func____code__gi_codeag_codecr_code__dict__zDisassembly of %s:r zSorry:co_code(don't know how to disassemble %s objects)r hasattrr$ r% r&