a  ze @sDddlZddlZddlmZddlmZddZddZd d ZdS) N) base_futures) coroutinescCsnt|}|jrd|d<|dd|t|j}|dd|d|jdurj|dd |j|S) NZ cancellingrrzname=%rzcoro=<>z wait_for=) rZ_future_repr_infoZ _must_cancelinsertget_namerZ_format_coroutine_coroZ _fut_waiter)taskinfocororF/opt/bitninja-python-dojo/embedded/lib/python3.9/asyncio/base_tasks.py_task_repr_infos   rcCsg}t|jdr|jj}n0t|jdr0|jj}nt|jdrF|jj}nd}|dur|dur|durt|dkrlq|d8}|||j}qR|nH|jdur|jj }|dur|dur|dkrq|d8}||j |j }q|S)Ncr_framegi_frameag_framerr) hasattrr rrrappendf_backreverse _exception __traceback__tb_frametb_next)r limitZframesftbrrr_task_get_stacks6          rc Csg}t}|j|dD]Z}|j}|j}|j}|j} ||vrN||t|t |||j } | ||| | fq|j } |st d||dn2| durt d|d|dnt d|d|dtj||d| durt| j| D]} t | |ddqdS) N)rz No stack for )filezTraceback for z (most recent call last):z Stack for )r end)setZ get_stackf_linenof_code co_filenameco_nameadd linecache checkcachegetline f_globalsrrprint traceback print_listformat_exception_only __class__) r rr extracted_listcheckedrlinenocofilenamenamelineexcrrr_task_print_stack<s,  r:)r)r.r!rrrrr:rrrrs   #