a :jg? @sddlZddlTddlmZddlmZddlmZmZmZm Z m Z m Z dddZ Gd d d eZee_ ejZdd d ZddZdddZeeeeeeeeeeiZedddeZeZeZeZddZddZddZddZdS)N)*)Log) _global_log)red_text default_text cyan_text green_text is_sequence is_stringcCs6t|r|ddS|r2t|r2tdd|DS|S)N%z%%cSsg|]}t|ddqS)r)flag) _fix_args).0ar=/usr/local/lib/python3.9/site-packages/numpy/distutils/log.py z_fix_args..)r replacer tuple)argsr rrrr s   rc@seZdZddZddZdS)rcCs8||jkr4|r|t|}tt||tjdSN) thresholdrprint_global_color_mapsysstdoutflush)selflevelmsgrrrr_logs   zLog._logcGs>t|jkr:|r$tt|t|n tt|tjdS)zc If we log WARN messages, log this message as a 'nice' anti-warn message. N)WARNrrrrrrr)rr!rrrrgood s   zLog.goodN)__name__ __module__ __qualname__r"r$rrrrrs rFcCs>tj}|tks|r*|t_|tkr:tdntd||f|S)Nz[set_threshold: setting threshold to DEBUG level, it can be changed only with force argumentz?set_threshold: not changing threshold from DEBUG level %s to %s)rrDEBUGinfo)r force prev_levelrrr set_threshold2s  r,cCstjSr)rrrrrr get_threshold@sr-c Csttj}|dkrtt|n:|dkr.tt|n&|dkrBtt|n|dkrTtt|tdtdtdtdtdi|dS)Nrr ) rrr,ERRORr#INFOr(FATALget)vr*r+rrr set_verbosityCs    r6T)r*cOs td|g|Ri|dS)NzERROR: )_errorr!rkwrrrerrorbsr:cOs td|g|Ri|dS)NzWARN: )_warnr8rrrwarnfsr<cOs td|g|Ri|dS)NzINFO: )_infor8rrrr)jsr)cOs td|g|Ri|dS)NzDEBUG: )_debugr8rrrdebugnsr?)r )F)F) rZ distutils.logrZold_LogrZnumpy.distutils.misc_utilrrrrr r r __class__r$r,r-r6r(r2r#r1r3rr:r7r<r;r)r=r?r>rrrrs4