fd ddlZddlZddlZddlZddlZddlZddlZddlZddlZddl Z ddl Z ddl Z ddl Z ddl Z ddlZddlZddlmZGddeZgdZdZdZGdd eZGd d eZGd d eZdZGddejejZeFgdZ e D].Z!ee"ede!zj#dzz Z/eej$jz Z[ [!d"dZ%d"dZ&dZ'dZ(dddZ)d#dZ*dZ+dZ,dZ-dZ.dZ/d Z0e1d!krddl2Z2e2j0dSdS)$N)UnionceZdZ dS)RestartN)__name__ __module__ __qualname__*/opt/alt/python311/lib64/python3.11/pdb.pyrrZsLDr r) runpmPdbrunevalrunctxruncall set_trace post_mortemhelpcZtjdtj|z} tj|}n#t $rYdSwxYw|5t |dD]-\}}||r|||fccdddS. dddn #1swxYwYdS)Nzdef\s+%s\s*[(])start)recompileescapetokenizeopenOSError enumeratematch)funcnamefilenamecrefplinenolines r find_functionr&as1 *&8)<)<< = =C ]8 $ $ tt 22%b222 2 2LFDyy 2611122222222 2 2222222222222222 4s)A A A2B B  B$'B$cttj|}||D]\}}||kr|cSdSNr)listdisfindlinestartsreverse)codelasti linestartsir$s r lasti2linenor1ns[c(..//J 6 A::MMM  1r ceZdZ dZdS)_rstrc|SNr selfs r __repr__z_rstr.__repr__ys r N)rrrr8r r r r3r3ws&-r r3cfeZdZfdZdZedZedZedZxZ S) _ScriptTargetct|tj|}||_|Sr5)super__new__ospathrealpathorig)clsvalres __class__s r r=z_ScriptTarget.__new__~s8ggooc27#3#3C#8#899 r ctj|s*td|jdt jdtj|r*td|jdt jdtj|t jd<dS)NzError:zdoes not existrzis a directoryr) r>r?existsprintrAsysexitisdirdirnamer6s r checkz_ScriptTarget.checksw~~d##  (DI'7 8 8 8 HQKKK 7==    (DI'7 8 8 8 HQKKKgood++ r c|Sr5r r6s r r!z_ScriptTarget.filenames r c2td|tdS)N__main__)r__file__ __builtins____spec__)dictrRr6s r namespacez_ScriptTarget.namespaces%%     r ctj|5}d|d|dcdddS#1swxYwYdS)Nz exec(compile(z, z , 'exec')))io open_coderead)r7r#s r r-z_ScriptTarget.codes \$   E2D27799DD$DDD E E E E E E E E E E E E E E E E E Es=AA) rrrr=rMpropertyr!rUr- __classcell__)rEs@r r:r:}s , , ,X  X EEXEEEEEr r:ceZdZdZejdZedZedZ edZ edZ dS) _ModuleTargetc |jdS#t$r1}td|tjdYd}~dSd}~wt $r+t jtjdYdSwxYw)Nz ImportError: r)_details ImportErrorrHrIrJ Exception traceback print_exc)r7es r rMz_ModuleTarget.checks  MMMM    %!%% & & & HQKKKKKKKKK      ! ! ! HQKKKKKK s A9&A4A98A9c4ddl}||Sr()runpy_get_module_details)r7rfs r r_z_ModuleTarget._detailss ((...r c|jjSr5)r- co_filenamer6s r r!z_ModuleTarget.filenames y$$r c|j\}}}|Sr5r_r7namespecr-s r r-z_ModuleTarget.code=dD r c|j\}}}|Sr5rkrls r _specz_ModuleTarget._specror ctdtjtj|j|jj|jj|jtS)NrP)rrQ __package__ __loader__rSrR) rTr>r?normcaseabspathr!rqparentloaderrRr6s r rUz_ModuleTarget.namespacesWW%%bgoodm&D&DEE )z(Z%     r N) rrrrM functoolscached_propertyr_rZr!r-rqrUr r r r]r]s///%%X%XX  X   r r]z -> ceZdZdZ dXdZdZdZdZd Zd Z d Z d Z d Z dZ dZdZdZdZdZdZdZdZdZdZdZdZdZdZeZdYdZdZeZeZ eZ!d Z"eZ#d!Z$d"Z%d#Z&eZ'd$Z(eZ)d%Z*eZ+d&Z,eZ-d'Z.e.Z/eZ0eZ1d(Z2e2Z3e2Z4d)Z5d*Z6e6Z7d+Z8e8Z9d,Z:e:Z;d-Ze>Z?d/Z@e@ZAd0ZBeBZCd1ZDeDxZEZFd2ZGeGZHd3ZIeZJd4ZKeKZLeKZMd5ZNd6ZOeOZPd7ZQeQZRd8ZSdZd9ZTd:ZUd;ZVd<ZWd=ZXd>ZYeZZeZ[eZ\d?Z]e]Z^d@Z_e_Z`dAZaeZbd[dCZcdDZdeZedEZfeZgdFZhdGZidHZjdIZkdJZldKZmgdLZndMZoepfdNZqdOZrerZsdPZtdQZudRZvdSewexeyffdTZzdUe{fdVZ|dWZ}dS)\rNtabFTcrtj||tj||||t jd|rd|_d|_i|_ i|_ d|_ d|_ i|_ ddl}|dn#t $rYnwxYwd|_||_g|_|r t)t*jdd 5}|j|dddn #1swxYwYn#t2$rYnwxYw t)d d 5}|j|dddn #1swxYwYn#t2$rYnwxYwi|_i|_i|_d|_d|_dS) N)skipzpdb.Pdbrz(Pdb) Fz `@#$%^&*()=+[{]}\|;:'",<>?z~/.pdbrczutf-8)encodingz.pdbrc)bdbBdb__init__cmdCmdrIaudit use_rawinputpromptaliases displaying mainpyfile_wait_for_mainpyfile tb_linenoreadlineset_completer_delimsr` allow_kbdintnosigintrcLinesrr>r? expanduserextendrcommandscommands_dopromptcommands_silentcommands_defining commands_bnum) r7 completekeystdinstdoutr~rreadrcrrcFiles r rz Pdb.__init__sk D))) {E6::: )  " !D   $)!  OOO  ) )*M N N N N    D !     "',,Z887KKK0vL''///000000000000000     (W5550L''///000000000000000     !#!!&!s~ B&& B32B3.D/<D# D/#D''D/*D'+D// D<;D<FE8, F8E<<F?E<F FFc|jrt|d|||dS)Nz- Program interrupted. (Use 'cont' to resume).)rKeyboardInterruptmessageset_stepr)r7signumframes r sigint_handlerzPdb.sigint_handler sK   $# # EFFF  ur cltj||dSr5)rrresetforgetr6s r rz Pdb.resets'  d r cpd|_g|_d|_d|_|jdSr()r$stackcurindexcurframerclearr6s r rz Pdb.forgets8     r c||||\|_|_|r7t |jj|j}||j|j<|j }|7|j|jd|_ |j j |_ |j rd|j D|_g|_ dSdS)Nrcg|]?}||d=|@S)#)strip startswith).0r%s r zPdb.setup..,sT::<<(, (?(?(D(Dr )r get_stackrrr1tb_framef_codetb_lastirtb_nextrf_localscurframe_localsrcmdqueue)r7ftbr$s r setupz Pdb.setups $(NN1b$9$9! DM ""+"4bkBBF*0DN2; 'B   4=1!4  $}5 < !%DMDLLL   r c |jrdS||r-|d||ddSdS)Nz--Call--)r stop_herer interaction)r7r argument_lists r user_callz Pdb.user_call4sc 7  $  F >>%  * LL $ $ $   UD ) ) ) ) ) * *r c |jr<|j||jjks |jdkrdSd|_||r||ddSdS)NrF)rrcanonicrrif_lineno bp_commandsr)r7rs r user_linez Pdb.user_line=sI  $ .4<< 0H#I#III>Q&&(-D %   E " " *   UD ) ) ) ) ) * *r c t|ddr|j|jvr|j}d|_|j}||d|j|D]}||||_|j|s%||j|j |j |r| | dSdS)N currentbpFrr) getattrrrlastcmdronecmdrprint_stack_entryrrr_cmdloopr)r7rr lastcmd_backr%s r rzPdb.bp_commandsGs  4e , , ~..IDN  " "4:dm#< = = =  s)A AAcT |$|t|dSdSr5)rrepr)r7objs r displayhookzPdb.displayhooks3  ? LLc # # # # # ?r c*|dddkr |dd}|j}|jj} t|dzdd}tj}tj}tj} |jt_|jt_|jt_t||||t_|t_|t_dS#|t_|t_|t_wxYw#| YdSxYw)Nr! zsingle) rr f_globalsrrIrrrexec _error_exc)r7r%localsglobalsr- save_stdout save_stdinsave_displayhooks r defaultz Pdb.defaults 8s??48D%-) 4$; 8< % 17>>$-- -**400 0r c ||\}}}|sdS|dkrd|j|j<dS|dkrdS|j|j}|r||dz|zn|| t |d|z}n#t $r |j}YnwxYw|j|j vrd|j |j<dSdS)NFsilentTendrdo_) parselinerrrappendrAttributeErrorrrcommands_resumingr)r7r%rargcmdlistfuncs r rzPdb.handle_command_defsF--S$ 5 (??7;D !3 45 E\\4- 23  NN3s73; ' ' ' ' NN3    4--DD   D "4#5 64usBB,+B,c2t||jdS)NfilerHrr7msgs r rz Pdb.messages c $$$$$$r c4td||jdS)Nz***r&r(r)s r errorz Pdb.errors eSt{++++++r c8|drgS |||||}n#t$rg}YnwxYwt jt j|dz}|D]}t j|r| |dz:t j |r?| dr| |dz|S)N):,*/).pyz.pywr.) rendswith_complete_expressionraglobrr>r?rKrisfilelower)r7textr%begidxendidxretglobsfns r _complete_locationzPdb._complete_location s ::<<  , , I ++D$GGCC   CCC  $+d++c122 % %Bw}}R   % 28$$$$## % (;(;O(L(L % 28$$$ sA AAcXfdttjjDS)Nc|g|]8\}}|t|)t|9Sr5)r r)rr0bpr8s r rz*Pdb._complete_bpnumber..$sG???51b>c!ff&7&7&=&=>A!>>r )rr Breakpoint bpbynumberr7r8r%r9r:s ` r _complete_bpnumberzPdb._complete_bpnumber s:????Icn.G$H$H??? ?r c |jsgSi|jj|j}dvrd |d}ddD]}t ||}n#t t f$rgcYSwxYwddddz  fdt|DSfd| DS)N.rrrcPg|]"}|d|z#S)rr)rndottedrs r rz,Pdb._complete_expression..;s2MMM1ALL4L4LMFQJMMMr c>g|]}||Sr rI)rrJr8s r rz,Pdb._complete_expression..>s*???!ALL,>,>?A???r ) rrrr rKeyErrorr r dirkeys) r7r8r%r9r:nsrpartrKrs ` @@r r4zPdb._complete_expression's} IA ' @4+? @ $;;ZZ__F m"1R4L--D!#t,,CC-n-     XXfSbSk**S0FMMMMMCMMM M@???rwwyy??? ?s+A((A>=A>c` |s"ttjjdz }n. t |}n#|dYdSxYw ||n0#t$r#}|d|zYd}~dSd}~wwxYw||_||j vr'|j ||j ||j |f}nd}g|j |<d|j |<d|j |<|j }d|_ d|_ |np#t$rc|r1|d|j |<|d|j |<|d|j |<n|j |=|j |=|j |=|d YnwxYwd|_ ||_ dS#d|_ ||_ wxYw) Nrz.Usage: commands [bnum] ... endzcannot set commands: %sTFz(com) rr z1command definition aborted, old commands restored)lenrrBrCintr,get_bpbynumberrrrrrrrrr)r7r"bnumerrold_command_defs prompt_backs r do_commandszPdb.do_commandsDs%# H s~011A5DD 3xx  MNNN     % % % %    JJ036 7 7 7 FFFFF " 4= $ d 3 $ 6t < $ 4T : <   $   d'+t$%*T"k  !% & LLNNNN L L L /&6q&9 d#/?/B&t,-=a-@$T**M$'*40(. JJJ K K K K K L&+D "%DKKK&+D "%DK % % % %sL7AA++ B5BBDFA*F F F  FF-rc |s[|jrR|dtjjD]+}|r'||,dSd}d}d}|d}|dkr;||dzd}|d|}| d}d} |dkr|d|}| |} | s| d|zdS| }||dzd} t|}n#t$r| d|zYdSwxYw t|}n#t$r t||jj|j} n #|} YnxYw t%| dr| j} | j} | j} | j}| j}nO#||\} }}| s| d |zYYdS| } t|}YnxYwYnwxYw|s|}|||}|rz|||||| }|r| |dS|||d }|d |j|j|jfzdSdS) Nz!Num Type Disp Enb Wherer/rrr.z%r not found from sys.pathzBad lineno: %s__func__zJThe specified object %r is not a function or was not found along sys.path.rzBreakpoint %d at %s:%d) breaksrrrBrCbpformatrrrrfind lookupmoduler,rTrevalrrrhasattrr\__code__co_nameco_firstlinenorilineinfo defaultFile checkline set_break get_breaksnumberr'r%)r7r" temporaryrAr!r$condcommacolonr rr$r-oklnr%rWs r do_breakz Pdb.do_breaks~  { 4 @AAA.344B4 R[[]]333 F  199uQwxx=''))Dfuf+$$&&C # A::6E6{))++H!!(++A  7(BCCCeAghh-&&((C S    +c1222   %S % % % $ 7 $ 466DDDDD%tZ00-#}=D $|H!0F#/HH%)-s););&R2 $FHK$LMMM!H WWFFF1 %2 *''))H~~h//  <..4D(KKC < 3__Xt44R8 5 i"':;<<<<< < )rrrir)r7r!s r rgzPdb.defaultFiles0+='3 z ! !do !Hr c4 ||ddSNr)rrr7r"s r do_tbreakz Pdb.do_tbreaks#  c1r cDd}|d}t|dkr|d}n0t|dkr|d}n|S|dkr|S|d}|ddkr|d=t|dkr|S|}t|dkr |d}n'||d}|r|}|d}t ||} | p|S) N)NNN'rrrrGr7)r rSrrgr`r&) r7 identifierfailedidstringidpartsfnameitemranswers r rfz Pdb.lineinfo s)###C(( x==A  !""$$BB ]]a  !""$$BBM 88F]  8v  a5zzQ   "" u::??8DD!!%(++A 8DtU++r cH t|dd}|r|jnd}tj|||}|s|ddS|}|r(|ddks|dddks|dddkr|ddS|S) Nrz End of filerrrzz"""z'''zBlank or comment)rr linecachegetlinerrr,)r7r!r$rr<r%s r rhz Pdb.checkline,s j$//#(2d 6599  LL ' ' '1zz|| aC2A2h%D!H$5$5 JJ) * * *1 r c |}|D]p} ||}||d|zE#t$r}||Yd}~id}~wwxYwdS)Nz Enabled %s)r rUenablerrr,r7r"rr0rArWs r do_enablez Pdb.do_enableBs yy{{ 0 0A 0((++  \B.////     3  0 0A B'BBc |}|D]p} ||}||d|zE#t$r}||Yd}~id}~wwxYwdS)Nz Disabled %s)r rUdisablerrr,rs r do_disablezPdb.do_disableSs yy{{ 1 1A 1((++  ]R/0000     3  1 1rc |dd} |d}n#t$rd}YnwxYw ||d}||_|s|d|jzdS|d|jzdS#t$r|dYdSt$r }||Yd}~dSd}~wwxYw)Nrrrz#Breakpoint %d is now unconditional.z$New condition set for breakpoint %d.Breakpoint number expected) r  IndexErrorrUrrmrrkr,r)r7r"rrmrArWs r do_conditionzPdb.do_conditiongs1 yya   7DD   DDD  Q$$T!W]]__55B BG Q BRYNOOOOO CbiOPPPPP 5 5 5 JJ3 4 4 4 4 4 4    JJsOOOOOOOOO s)" 11-B))C4 C4C//C4c> |} t|d}n #d}YnxYw ||d}||_|dkr/|dkrd|z}nd}|d||jfzdS|d|jzdS#t$r|dYdSt$r }||Yd}~dSd}~wwxYw)Nrrz %d crossingsz 1 crossingz%Will ignore next %s of breakpoint %d.z-Will stop next time breakpoint %d is reached.r) r rTrrUignorerrkrr,r)r7r"rcountrAcountstrrWs r do_ignorez Pdb.do_ignoresc yy{{ Q ((EE EEE *$$T!W]]__55B BIqyy199-5HH+H D& 2344444 L!y)***** 5 5 5 JJ3 4 4 4 4 4 4    JJsOOOOOOOOO s''?A -CD3 D<DDc |s td}n#t$rd}YnwxYw|}|dvrLdtjjD}||D]}|d|zdSd|vr| d}|d|}||dzd} t|}| ||dd}| ||}n#t$rd|z}YnwxYw|r||n|D]}|d|zdS|} | D]q} ||}|||d|zF#t$r}||Yd}~jd}~wwxYwdS) NzClear all breaks? no)yyescg|]}||Sr r )rrAs r rz Pdb.do_clear..sGGGBG"GGGr z Deleted %sr.rzInvalid line number (%s))inputEOFErrorrr7rrBrCclear_all_breaksrr_rTrj clear_breakrr,r rUclear_bpbynumber) r7r"replybplistrAr0r!r$rW numberlists r do_clearz Pdb.do_clears]   233    KKMM''))E $$GGs~'@GGG%%''' 44BLL!23333 F #:: #A2A2wHacdd)C 9S6::111=&&x88  7 7 7036 7  4 3 44BLL!23333 FYY[[  0 0A 0((++%%a((( \B.////     3  0 0s6 $$DD&%D&9F<< G%G  G%c0 |dSr5)print_stack_tracervs r do_wherez Pdb.do_wheres!      r c||_|j|jd|_|jj|_||j|jd|_dSr()rrrrrrr$)r7rks r _select_framezPdb._select_framesS  4=1!4 #}5 tz$-8999 r c0 |jdkr|ddS t|pd}n)#t$r|d|zYdSwxYw|dkrd}nt d|j|z }||dS)Nrz Oldest framerInvalid frame count (%s))rr,rTrmaxrr7r"rnewframes r do_upz Pdb.do_ups  =A   JJ~ & & & F qMMEE    JJ1C7 8 8 8 FF  199HH1dme344H 8$$$$$s7"AAc |jdzt|jkr|ddS t |pd}n)#t $r|d|zYdSwxYw|dkrt|jdz }n-t t|jdz |j|z}||dS)Nrz Newest framerr)rrSrr,rTrminrrs r do_downz Pdb.do_downs  =1 DJ / / JJ~ & & & F qMMEE    JJ1C7 8 8 8 FF  1994:*HH3tz??Q. 0EFFH 8$$$$$sA "A21A2c  |rb t|}n)#t$r|d|zYdSwxYw||jjkr|ddSnd}||j|dS)NError in argument: %rz7"until" line number is smaller than current line numberr)rTrr,rr set_until)r7r"r$s r do_untilz Pdb.do_untils    S    2S8999 /// )***0 F t}f---qs ";;c0 |dSru)rrvs r do_stepz Pdb.do_step*s qr c< ||jdSru)set_nextrrvs r do_nextz Pdb.do_next4s"  dm$$$qr c |r}ddl}tjdd} ||t_n3#t$r&}|d|d|Yd}~dSd}~wwxYw|tjdd<t )Nrrz Cannot run r)shlexrIargvr rr,r)r7r"rargv0rds r do_runz Pdb.do_run=s  ! LLLHQqSME  ;;s++    ###qq9::: !CHRaRL s= A-A((A-c< ||jdSru) set_returnrrvs r do_returnz Pdb.do_returnRs"   &&&qr c |js@ tjtj|jt_n#t $rYnwxYw|dSru)rrrrrrr set_continuervs r do_continuezPdb.do_continueZsr }  M&-1DEE,,       qs.9 AAc |jdzt|jkr|ddS t |} ||j_|j|jd|f|j|j<||j|jdS#t$r#}|d|zYd}~dSd}~wwxYw#t$r|dYdSwxYw)Nrz)You can only jump within the bottom framerzJump failed: %sz)The 'jump' command requires a line number) rrSrr,rTrrrr)r7r"rds r do_jumpz Pdb.do_jumpls&  =1 DJ / / JJB C C C F 2c((C 2*- &,0Jt},Ea,H#,M 4=)&&tz$-'@AAAAA 2 2 2 ,q0111111111 2 D D D JJB C C C C C C Ds*C AB$$ C.C  CC76C7c tjd|jj}|j}t |j|j|j}d|j z|_ | d tj |j |||fn$#t$r|YnwxYw| dtj|j|j|_dS)Nz(%s) zENTERING RECURSIVE DEBUGGERzLEAVING RECURSIVE DEBUGGER)rIsettracerrrrrrrrrr call_tracingr rartrace_dispatchr)r7r"rrps r do_debugz Pdb.do_debugs T-)%  $*dk : :T[..000 2333   QUS'6$: ; ; ; ;    OO       1222 T()))y sBB?>B?c> d|_|dS)NTr)_user_requested_quitset_quitrvs r do_quitz Pdb.do_quits# %)! qr ch |dd|_|dS)NrTr)rrrrvs r do_EOFz Pdb.do_EOFs5  R$(! qr c  |jj}|j}|j|jz}|jt jzr|dz}|jt jzr|dz}t|D]`}|j |}||vr5| |d| |||H| |dadS)Nr = z = *** undefined ***) rrr co_argcountco_kwonlyargcountco_flagsinspect CO_VARARGSCO_VARKEYWORDSrange co_varnamesrr)r7r"corTrJr0rms r do_argsz Pdb.do_argss ] !# NR1 1 ;+ +41Q ;/ /8QqSq A AA>!$Dt|| $$$T D0Q0Q0QRSSSS ?@@@@  A Ar c d|jvr6|||jdddS|ddS)NrretvalzNot yet returned!)rrrr,rvs r do_retvalz Pdb.do_retvals^  4/ / / LL)=l)KXVV W W W W W JJ* + + + + +r cx t||jj|jS#|xYwr5)rarrrrrvs r _getvalz Pdb._getvals= T]4d6JKK K  OO    s"9c2 | t||jj|jSt||j|jS#t jdd}tj|d }td|zcYSxYw)Nr rz** raised %s **) rarrrrrIrrbrrr3)r7r"rrrWs r rzPdb._getval_excepts 2}C!8$:NOOOC%.AAA 2|~~bqb)H18>"1"% 92H=bAGGIIJJJJJr c ||}n#YdSxYw |||dS#|YdSxYwr5)rrr)r7r"r$rCs r _msg_val_funczPdb._msg_val_funcsq ,,s##CC  FF  LLc # # # # #  OO      sAAc  t|S#t$r3}td|d||dcYd}~Sd}~wwxYw)Nz *** repr(z ) failed: z ***)rrar3 _format_exc)r7rrrds r rzPdb._safe_reprsv P99  P P PNTNNT5E5Ea5H5HNNNOO O O O O O O Ps A(A A Ac> ||tdSr5)rrrvs r do_pzPdb.do_ps%  3%%%%%r cH ||tjdSr5)rpprintpformatrvs r do_ppz Pdb.do_pps'  3/////r c` d|_d}|r|dkr d|vrf|d\}}t|}t|}||kr||z}n4t|}t d|dz }n^#t $r|d|zYdSwxYw|j|dkrt d|jj dz }n |jdz}||dz}|jj j }| dr6|jj d }t|t r|}||} t%j||jj }|||dz ||||jt+|t-||_t-||kr|d dSdS#t0$rYdSwxYw) Nr)rGr/rr zz>> ) rrrrr rjustrSrr) r7rrr]rcurrent_lineno exc_linenor$r%ss r rzPdb._print_lines\s%  -"^N++E266JJ*, ,NZ%eU33 3 3LFDF !!!$$A1vvzzSSS''T :%%T  LLTDKKMM1 2 2 2 2 3 3r c ||}n#YdSxYwd} |jj}n#t$rYnwxYw|r|d|jzdS |j}n#t$rYnwxYw|r|d|jzdS|jtur'|d|jd|j dS|t|dS)Nz Method %sz Function %szClass rG) rr\rcrarrdrEtyperr)r7r"valuer-s r do_whatisz Pdb.do_whatisqs7  LL%%EE  FF >*DD    D    LLt|3 4 4 4 F >DD    D    LL5 6 6 6 F ?d " " LLL%*:*:*:E>#A++ A87A8c  |s}|d|j|jiD]3\}}||d|||4dS||}||j|ji|<|d|d|||dS)NzCurrently displaying:rr)rrrrrrr setdefault)r7r"keyrCs r do_displayzPdb.do_displays  N LL0 1 1 1 O// rBBHHJJ J JS dooc3.G.G.GHIIII J J%%c**CADDO & &t}b 9 9# > LLLSSS$//#s2K2K2KL M M M M Mr c |rM |j|ji|=dS#t$r|d|zYdSwxYw|j|jddS)Nznot displaying %s)rrrrMr,poprvs r do_undisplayzPdb.do_undisplays  5 6O'' r::3??? 6 6 6 .4555555 6 O   t 4 4 4 4 4s!("A Ac\fd|j|jiDS)Nc>g|]}||Sr rI)rrdr8s r rz*Pdb.complete_undisplay..s9'''a<<%%''''r )rrrrDs ` r complete_undisplayzPdb.complete_undisplaysA''''4?..t}bAA''' 'r c^ i|jj|j}tjd|dS)Nz *interactive*)local)rrrr-interact)r7r"rPs r do_interactzPdb.do_interacts< A ' @4+? @ oR000000r c< |}t|dkrRt|j}|D]'}||d|j|(dSt|dkrc|d|jvr3||dd|j|ddS|d|dddSd|dd|j|d<dS)NrrrzUnknown alias 'ryr)r rSsortedrrOrr,r )r7r"rrOrs r do_aliasz Pdb.do_aliass# .yy{{ t99>>$,++--..D G G %%%e1D1DEFFFF F t99>>Aw$,&& $q'''4<Q3H3HIJJJJJ 7T!W77788888$'HHT!""X$6$6DLa ! ! !r c |}t|dkrdS|d|jvr|j|d=dSdSr()r rSr)r7r"rs r do_unaliaszPdb.do_unaliassV yy{{ t99>>66 7dl " " T!W%%% # "r c*fd|jDS)Nc>g|]}||Sr rI)rar8s r rz(Pdb.complete_unalias..s*>>>a1<<+=+=>>>>r )rrDs ` r complete_unaliaszPdb.complete_unaliass>>>>4<>>>>r )rrrrrrch |jD]}||dS#t$rYdSwxYwr5)rrr)r7 frame_linenos r rzPdb.print_stack_traces[  $  5 5 &&|4444 5 5     DD s # 11c|\}}||jurd}nd}|||||zdS)Nz> z )rrformat_stack_entry)r7r) prompt_prefixrr$rs r rzPdb.print_stack_entrysd$ v DM ! !FFF V,,\=IIJ K K K K Kr c |s tj||S t|d|z}|S#t$rt|d|z}YnwxYw t jjdkr|d|zdS|j |d|zdS| |j dS#t$r|d|zYdSwxYw)Nhelp_rr zJNo help for %r; please do not run Python with -OO if you need command helpz&No help for %r; __doc__ string missingzNo help for %r) rrdo_helprr rIflagsoptimizer,__doc__rr)r7r"topiccommands r r/z Pdb.do_helpsG  .7??4-- - 3 5gm44uww! 5 5 5!$ 44 5y!Q&& 68;<===& CcIJJJ LL//11 2 2 2 2 2 / / / JJ'#- . . . . . . /s)AA# C%"A##C%%"D  D cn ||jjpddS)Nr)r help_execr2rr6s r r6z Pdb.help_exec0s7  dn,299;;<<<<r?isabsrGr rIrrsplitextislinkreadlink)r7r!rrootextrLfullnames r r`zPdb.lookupmoduleAsX 7== " " x(@(@ O GLL!h / / GNN1   $,,q//T_"D"DHG$$X.. c "99%'H 7== " " Ox  G'..)) /+g..'..)) /w||GX66Hw~~h''  tr targetc d|_d|_||j|_ddl}|j|j|j | |j dS)NTFr) rrrr!rrP__dict__rupdaterUr r-)r7rArPs r _runzPdb._runYs} %)!$)!,,v77 !!!  !1222 r exccZtj|dS)Nr)rbrr)r7rFs r rzPdb._format_excms$.s33B7==???r cXtj|\}}td|}||fSru)rgetsourcelinesr)r7rrr$s r rzPdb._getsourcelinesps/  .s33 vQf}r )r|NNNFT)rr5)r N)~rrrrrrrrrrrrrrrrrrrrrrrr,r>rEr4rZcomplete_commandsrrrgdo_bcomplete_break complete_brwcomplete_tbreakrfrhrcomplete_enablercomplete_disablercomplete_conditionrcomplete_ignorerdo_clcomplete_clear complete_clrdo_wdo_btrrdo_urdo_drdo_untrdo_srdo_nr do_restartrdo_rrdo_cdo_contrdo_jrcomplete_debugrdo_qdo_exitrrdo_ardo_rvrrrrrrrcomplete_print complete_p complete_pprdo_lrdo_llrcomplete_sourcerrcomplete_whatisrcomplete_displayrrrr!r#r'r!r line_prefixrr/do_hr6r8r`rr]r:rE BaseExceptionrrr r r rrs2#HL(,,",",","^2******0&&&///( 6 6 6 D D D $$$*2 1 1 18%%%,,, &???@@@:Q&Q&Q&f+Z<Z<Z<Z(@}@@@@r r)"rwheredownupbreaktbreakrrrr conditionrstepruntiljumpreturnrr continuer)longlistrrppwhatissourcedisplay undisplayrrunaliasdebugquitrz cLt|||dSr5)rr  statementrrs r r r s"EEIIi&)))))r cHt|||Sr5)rr) expressionrrs r rrs 55==Wf 5 55r c(t|||dSr5)r rs r rrs 7F#####r c4tj|i|Sr5)rr)rkwdss r rrs 355=$ '$ ' ''r )headerct}||j||jtjjdSr5)rrrrI _getframef_back)rpdbs r rrsD %%C  FCM#-//()))))r c|tjd}|tdt}||d|dS)Nr zAA valid traceback must be passed if no exception is being handled)rIrrrrr)trs r rrsgy LNN1 y677 7 AGGIIIMM$r c8ttjdSr5)rrIlast_tracebackr r r r r s"#####r zimport x; x.main()c.ttdSr5)r TESTCMDr r r testrsLLLLLr cBddl}|tdSr()pydocpagerr2)rs r rrs#LLL KKr ausage: pdb.py [-c command] ... [-m module | pyfile] [arg] ... Debug the Python program given by pyfile. Alternatively, an executable module or package to debug can be specified using the -m switch. Initial commands are read from .pdbrc files in your home directory and in the current directory, if they exist. Commands supplied with -c are executed after commands from .pdbrc files. To let the script run until an exception occurs, use "-c continue". To let the script run up to a given line X in the debugged file, use "-c 'until X'".c 8ddl}|tjdddddg\}}|s(tttjdt d|Dr'tttjd|D}t d |D}|rtnt}||d}| |tjdd<t}|j | |j ||jrdStd n>#t$rKtd |d tddtjddzYnt"$r:tddttjdYnt&$r*t)jtjdYnvt)jtdtdtjd}|jd|td|zdzYnxYwk)Nrrzmhc:rzcommand=r c3$K|] \}}|dvV dS))z-hz--helpNr roptoptargs r zmain..s, ; ;{sF3" " ; ; ; ; ; ;r c g|] \}}|dv | S))z-cz --commandr rs r rzmain..s'MMM;3#9L2L2L2L2L2Lr c3$K|] \}}|dvV dS))z-mNr rs r rzmain..s*AA[S&3&=AAAAAAr Tz*The program finished and will be restarted Restartingzwith arguments:rrz/The program exited via sys.exit(). Exit status:)rz2Uncaught exception. Entering post mortem debuggingz1Running 'cont' or 'step' will restart the programz#Post mortem debugger finished. The z will be restarted)getoptrIrrH_usagerJanyr]r:rMrrrrErrr  SystemExitr SyntaxErrorrbrcr) roptsrrmodule_indicatedrBrArrs r mainrsMMMsx|Vfj5IJJJD$  f    ; ;d ; ; ;;; f   MM$MMMHAADAAAAA+ >--C Sa\\F LLNNNCHQQQK %%CKx   ( ( CHV   '  > ? ? ? ? 1 1 1 ,(9 : : : $#(122,/// 0 0 0 0 0 % % % C M M M M #,..# $ $ $ $ $      ! ! ! HQKKKKK (   ! ! ! F G G G E F F F q!A COD! $ $ $ 7&@&' ( ( ( ( (-(s'2E EAJ0AJ20J$A1JrP)NNr5)3r>rWrrIrrr*r-r5rrrrryrbrtypingrrar__all__r&r1r r3r:r]rorrrr2 _help_order_commandrrr6r rrrrrr rrrrrrrr r r rs<?F      i    " " "      C %E%E%E%E%EC%E%E%EP' ' ' ' ' C' ' ' ^ bbbbb#'37bbbL- K KK773 0119??AAFJJ s}$$GX ****6666$$$(((*****    $$$   4(4(4(p zJJJ CHJJJJJr