grthtrhthjhtyjytjytkergtrhtrjytjerhrfh4:24 29/09/2026B 1º'jÙ¥·Üã@sŠddlZddlZejdedd�dZGdd„dƒZGdd„dƒZGd d „d ƒZGd d „d eƒZGd d„deƒZ ddd„Z e dkr†e ƒdS)éNz"the formatter module is deprecatedé)Ú stacklevelc@s¤eZdZd'dd„Zdd„Zdd„Zdd „Zd(d d „Zd d „Zdd„Z dd„Z dd„Z dd„Z dd„Z dd„Zdd„Zdd„Zdd„Zd d!„Zd)d#d$„Zd*d%d&„ZdS)+Ú NullFormatterNcCs|dkrtƒ}||_dS)N)Ú NullWriterÚwriter)Úselfr©rú./opt/alt/python37/lib64/python3.7/formatter.pyÚ__init__)szNullFormatter.__init__cCsdS)Nr)rÚ blanklinerrr Ú end_paragraph-ózNullFormatter.end_paragraphcCsdS)Nr)rrrr Úadd_line_break.r zNullFormatter.add_line_breakcOsdS)Nr)rÚargsÚkwrrr Ú add_hor_rule/r zNullFormatter.add_hor_rulecCsdS)Nr)rÚformatÚcounterr rrr Úadd_label_data0r zNullFormatter.add_label_datacCsdS)Nr)rÚdatarrr Úadd_flowing_data1r zNullFormatter.add_flowing_datacCsdS)Nr)rrrrr Úadd_literal_data2r zNullFormatter.add_literal_datacCsdS)Nr)rrrr Úflush_softspace3r zNullFormatter.flush_softspacecCsdS)Nr)rÚalignrrr Úpush_alignment4r zNullFormatter.push_alignmentcCsdS)Nr)rrrr Ú pop_alignment5r zNullFormatter.pop_alignmentcCsdS)Nr)rÚxrrr Ú push_font6r zNullFormatter.push_fontcCsdS)Nr)rrrr Úpop_font7r zNullFormatter.pop_fontcCsdS)Nr)rÚmarginrrr Ú push_margin8r zNullFormatter.push_margincCsdS)Nr)rrrr Ú pop_margin9r zNullFormatter.pop_margincCsdS)Nr)rÚspacingrrr Ú set_spacing:r zNullFormatter.set_spacingcGsdS)Nr)rÚstylesrrr Ú push_style;r zNullFormatter.push_styleécCsdS)Nr)rÚnrrr Ú pop_style<r zNullFormatter.pop_stylecCsdS)Nr)rÚflagrrr Úassert_line_data=r zNullFormatter.assert_line_data)N)N)r&)r&)Ú__name__Ú __module__Ú __qualname__r r rrrrrrrrrrr r!r#r%r(r*rrrr rs$   rc@sºeZdZdd„Zdd„Zdd„Zdd„Zd-d d „Zd d „Zdd„Z dd„Z dd„Z dd„Z dd„Z dd„Zdd„Zdd„Zdd„Zd d!„Zd"d#„Zd$d%„Zd&d'„Zd.d)d*„Zd/d+d,„Zd S)0ÚAbstractFormattercCsR||_d|_g|_g|_g|_d|_g|_d|_d|_d|_ d|_ d|_ d|_ dS)Nr&r) rrÚ align_stackÚ font_stackÚ margin_stackr"Ú style_stackÚnospaceÚ softspaceÚpara_endÚparskipÚ hard_breakÚ have_label)rrrrr r NszAbstractFormatter.__init__cCs`|js|j ¡d|_|j|krD|jsD|j ||j¡||_d|_d|_|_|_d|_dS)Nrr&) r7rÚsend_line_breakr8r6Úsend_paragraphr3r5r4)rr rrr r ]s zAbstractFormatter.end_paragraphcCs8|js"|js"|j ¡d|_|_d|_|_d|_dS)Nrr&)r7r5rr9r8r6r3r4)rrrr rhs     z AbstractFormatter.add_line_breakcOsF|js|j ¡|jj||Žd|_|_d|_|_|_|_dS)Nr&r) r7rr9Ú send_hor_ruler3r8r5r4r6)rrrrrr ros   zAbstractFormatter.add_hor_ruleNcCs„|js |js|j ¡|js0|j |r*dp,d¡t|tƒrP|j |  ||¡¡n |j |¡d|_ |_|_|_d|_ |_ dS)Nr&r) r8r7rr9r5r:Ú isinstanceÚstrÚsend_label_dataÚformat_counterr3r4r6)rrrr rrr rvs    z AbstractFormatter.add_label_datacCsxd}xn|D]f}|dkr$|d|}q |dkrF|dkrp|| ||¡}q |dkrh|dkrp|| ||¡}q ||}q W|S)NÚÚ1z%dZaArZiI)Ú format_letterÚ format_roman)rrrÚlabelÚcrrr r?‚s  z AbstractFormatter.format_countercCs@d}x6|dkr:t|ddƒ\}}tt|ƒ|ƒ}||}qW|S)Nr@rr&é)ÚdivmodÚchrÚord)rÚcaserrDrÚsrrr rB‘s   zAbstractFormatter.format_letterc CsÌddddg}dddg}d\}}x˜|d kr¶t|d ƒ\}}|d krX||||d |}nT|d krv|||||}n6|dkr�||}|d}nd}||||}||}|d }q W|dkrÈ| ¡S|S)NÚirrEÚmÚvÚlÚd)r@rré é r&éér@ÚI)rGÚupper) rrJrZonesZfivesrDÚindexrrKrrr rCœs&     zAbstractFormatter.format_romancCsª|sdS|dd… ¡}|dd… ¡}d | ¡¡}|jrD|sDdS|sN|jrv|sh|jsdd|_d|_dS|jsvd|}d|_|_|_|_|_||_|j   |¡dS)Nr&éÿÿÿÿú r) ÚisspaceÚjoinÚsplitr3r4r6r7r5r8rÚsend_flowing_data)rrZprespaceZ postspacerrr r´s$  z"AbstractFormatter.add_flowing_datacCsZ|sdS|jr|j d¡|dd…dk|_d|_|_|_|_|_|j |¡dS)NrYrXÚ r) r4rr]r7r3r5r6r8Úsend_literal_data)rrrrr rÈs z"AbstractFormatter.add_literal_datacCs:|jr6d|_|_|_|_|_d|_|j d¡dS)Nrr&rY)r4r7r5r6r8r3rr])rrrr rÑsz!AbstractFormatter.flush_softspacecCs@|r.||jkr.|j |¡||_|j |¡n|j |j¡dS)N)rrÚ new_alignmentr/Úappend)rrrrr rØs  z AbstractFormatter.push_alignmentcCsH|jr|jd=|jr2|jd|_}|j |¡nd|_|j d¡dS)NrX)r/rrr`)rrrrr ràszAbstractFormatter.pop_alignmentc Cs¦|\}}}}|jr6d|_|_|_d|_|j d¡|jr~|jd\}}}} |tkrZ|}|tkrf|}|tkrr|}|tkr~| }||||f}|j |¡|j  |¡dS)Nrr&rYrX) r4r7r5r3rr]r0ÚAS_ISraÚnew_font) rÚfontÚsizerLÚbÚttZcsizeZciÚcbZcttrrr rês$    zAbstractFormatter.push_fontcCs4|jr|jd=|jr |jd}nd}|j |¡dS)NrX)r0rrc)rrdrrr rús  zAbstractFormatter.pop_fontcCsB|j |¡dd„|jDƒ}|s,|r,|d}|j |t|ƒ¡dS)NcSsg|] }|r|‘qSrr)Ú.0rMrrr ú sz1AbstractFormatter.push_margin..rX)r1rarÚ new_marginÚlen)rrÚfstackrrr r s  zAbstractFormatter.push_margincCsF|jr|jd=dd„|jDƒ}|r,|d}nd}|j |t|ƒ¡dS)NrXcSsg|] }|r|‘qSrr)rirMrrr rj sz0AbstractFormatter.pop_margin..)r1rrkrl)rrmrrrr r! s zAbstractFormatter.pop_margincCs||_|j |¡dS)N)r"rÚ new_spacing)rr"rrr r#szAbstractFormatter.set_spacingcGsZ|jr*d|_|_|_d|_|j d¡x|D]}|j |¡q0W|j t |jƒ¡dS)Nrr&rY) r4r7r5r3rr]r2raÚ new_stylesÚtuple)rr$Zstylerrr r%s  zAbstractFormatter.push_styler&cCs$|j| d…=|j t|jƒ¡dS)N)r2rrorp)rr'rrr r(!szAbstractFormatter.pop_stylecCs$| |_|_d|_|_|_dS)Nr)r3r7r5r6r8)rr)rrr r*%sz"AbstractFormatter.assert_line_data)N)r&)r&)r+r,r-r r rrrr?rBrCrrrrrrrr r!r#r%r(r*rrrr r.@s*        r.c@steZdZdd„Zdd„Zdd„Zdd„Zd d „Zd d „Zd d„Z dd„Z dd„Z dd„Z dd„Z dd„Zdd„ZdS)rcCsdS)Nr)rrrr r 2r zNullWriter.__init__cCsdS)Nr)rrrr Úflush3r zNullWriter.flushcCsdS)Nr)rrrrr r`4r zNullWriter.new_alignmentcCsdS)Nr)rrdrrr rc5r zNullWriter.new_fontcCsdS)Nr)rrÚlevelrrr rk6r zNullWriter.new_margincCsdS)Nr)rr"rrr rn7r zNullWriter.new_spacingcCsdS)Nr)rr$rrr ro8r zNullWriter.new_stylescCsdS)Nr)rr rrr r:9r zNullWriter.send_paragraphcCsdS)Nr)rrrr r9:r zNullWriter.send_line_breakcOsdS)Nr)rrrrrr r;;r zNullWriter.send_hor_rulecCsdS)Nr)rrrrr r><r zNullWriter.send_label_datacCsdS)Nr)rrrrr r]=r zNullWriter.send_flowing_datacCsdS)Nr)rrrrr r_>r zNullWriter.send_literal_dataN)r+r,r-r rqr`rcrkrnror:r9r;r>r]r_rrrr r*src@sdeZdZdd„Zdd„Zdd„Zdd„Zd d „Zd d „Zd d„Z dd„Z dd„Z dd„Z dd„Z dS)ÚAbstractWritercCstd|fƒdS)Nznew_alignment(%r))Úprint)rrrrr r`IszAbstractWriter.new_alignmentcCstd|fƒdS)Nz new_font(%r))rt)rrdrrr rcLszAbstractWriter.new_fontcCstd||fƒdS)Nznew_margin(%r, %d))rt)rrrrrrr rkOszAbstractWriter.new_margincCstd|fƒdS)Nznew_spacing(%r))rt)rr"rrr rnRszAbstractWriter.new_spacingcCstd|fƒdS)Nznew_styles(%r))rt)rr$rrr roUszAbstractWriter.new_stylescCstd|fƒdS)Nzsend_paragraph(%r))rt)rr rrr r:XszAbstractWriter.send_paragraphcCs tdƒdS)Nzsend_line_break())rt)rrrr r9[szAbstractWriter.send_line_breakcOs tdƒdS)Nzsend_hor_rule())rt)rrrrrr r;^szAbstractWriter.send_hor_rulecCstd|fƒdS)Nzsend_label_data(%r))rt)rrrrr r>aszAbstractWriter.send_label_datacCstd|fƒdS)Nzsend_flowing_data(%r))rt)rrrrr r]dsz AbstractWriter.send_flowing_datacCstd|fƒdS)Nzsend_literal_data(%r))rt)rrrrr r_gsz AbstractWriter.send_literal_dataN)r+r,r-r`rcrkrnror:r9r;r>r]r_rrrr rsAsrsc@sFeZdZddd„Zdd„Zdd„Zd d „Zd d „Zd d„Zdd„Z dS)Ú DumbWriterNéHcCs(|ptj|_||_t |¡| ¡dS)N)ÚsysÚstdoutÚfileÚmaxcolrr Úreset)rryrzrrr r ts  zDumbWriter.__init__cCsd|_d|_dS)Nr)ÚcolÚatbreak)rrrr r{zszDumbWriter.resetcCs |j d|¡d|_d|_dS)Nr^r)ryÚwriter|r})rr rrr r:~szDumbWriter.send_paragraphcCs|j d¡d|_d|_dS)Nr^r)ryr~r|r})rrrr r9ƒs zDumbWriter.send_line_breakcOs:|j d¡|j d|j¡|j d¡d|_d|_dS)Nr^ú-r)ryr~rzr|r})rrrrrr r;ˆs   zDumbWriter.send_hor_rulecCsV|j |¡| d¡}|dkr4d|_||dd…}| ¡}|jt|ƒ|_d|_dS)Nr^rr&)ryr~Úrfindr|Ú expandtabsrlr})rrrLrrr r_�s  zDumbWriter.send_literal_datacCs¢|sdS|jp|d ¡}|j}|j}|jj}xZ| ¡D]N}|rn|t|ƒ|kr^|dƒd}n|dƒ|d}||ƒ|t|ƒ}d}q8W||_|d ¡|_dS)Nrr^rYr&rX)r}rZr|rzryr~r\rl)rrr}r|rzr~Zwordrrr r]™s$ zDumbWriter.send_flowing_data)Nrv) r+r,r-r r{r:r9r;r_r]rrrr ruks  rucCs˜tƒ}t|ƒ}|dk r t|ƒ}n$tjdd…r>ttjdƒ}ntj}z0x*|D]"}|dkrd| d¡qL| |¡qLWWd|tjk rˆ| ¡X| d¡dS)Nr&r^r) rur.ÚopenrwÚargvÚstdinr rÚclose)ryÚwÚfÚfpÚlinerrr Útest®s     rŠÚ__main__)N) rwÚwarningsÚwarnÚDeprecationWarningrbrr.rrsrurŠr+rrrr Ús"k*C