2bi 4SSKJrJrJr SSKJrJrJrJrJ r J r J r J r J r SSKJrJr SSKJrJr SSKJr SSKJrJr SSKJr SS KJr SS KJr SS KJ r J!r! SS K"J#r# SS K$J%r% SSK&J'r'J(r( SSK)J*r*J+r+ \(aSSK,J-r-J.r.J/r/J0r0J1r1J2r2 \"SS55r3\"SS55r4"SS\ 5r5"SS\5r6\7S:XGaSSK8J-r- SSK9J:r: SSK;J6r6 SSK\>RS#S$S%S&S'9 \>RS(S)S*9 \>RS+S!S,S-9 \>RS.S/S05 \>RS1S2S35 \>RS4S5S6S7S&S89 \>RS9S:S;5 S<\AS=S>4S?jrB\-"5r,\:"5rC\B"S@5 \,R\>SASB9 S&\>lE\B"SC5 \,R\>5 SD\>lF\B"SE5 \,R\>SASB9 S>\>lFSF\>lESGSH/\>lG\B"SI5 \,R\>SASB9 S>\>lFSF\>lESGSH/\>lGS\>lH\B"SJ5 \,R\>SASB9 S>\>lFSF\>lESGSH/\>lGS&\>lIS\>lH\B"SK5 \,R\>SASB9 S>S>S>5 g>g>!,(df  g>=f)L) dataclassfieldreplace) TYPE_CHECKINGDictIterableList NamedTupleOptionalSequenceTupleUnion)boxerrors)loop_first_last loop_last) pick_bool)ratio_distribute ratio_reduce)VerticalAlignMethod) JupyterMixin) Measurement)PaddingPaddingDimensions) is_renderable)Segment)Style StyleType)TextTextType)ConsoleConsoleOptions JustifyMethodOverflowMethodRenderableType RenderResultcn\rSrSr%SrSrS\S'SrS\S'Sr\ \S'Sr \ \S'Sr \ \S 'S r S \S 'S r S\S'SrS\S'Sr\\\S'Sr\\\S'Sr\\\S'Sr\\\S'Sr\\S'Sr\\S'\"\S9r\S\S'S#Sjr\S\S4S j5r\S\4S!j5r S"r!g)$Column&a: Defines a column within a ~Table. Args: title (Union[str, Text], optional): The title of the table rendered at the top. Defaults to None. caption (Union[str, Text], optional): The table caption rendered below. Defaults to None. width (int, optional): The width in characters of the table, or ``None`` to automatically fit. Defaults to None. min_width (Optional[int], optional): The minimum width of the table, or ``None`` for no minimum. Defaults to None. box (box.Box, optional): One of the constants in box.py used to draw the edges (see :ref:`appendix_box`), or ``None`` for no box lines. Defaults to box.HEAVY_HEAD. safe_box (Optional[bool], optional): Disable box characters that don't display on windows legacy terminal with *raster* fonts. Defaults to True. padding (PaddingDimensions, optional): Padding for cells (top, right, bottom, left). Defaults to (0, 1). collapse_padding (bool, optional): Enable collapsing of padding around cells. Defaults to False. pad_edge (bool, optional): Enable padding of edge cells. Defaults to True. expand (bool, optional): Expand the table to fit the available space if ``True``, otherwise the table width will be auto-calculated. Defaults to False. show_header (bool, optional): Show a header row. Defaults to True. show_footer (bool, optional): Show a footer row. Defaults to False. show_edge (bool, optional): Draw a box around the outside of the table. Defaults to True. show_lines (bool, optional): Draw lines between every row. Defaults to False. leading (bool, optional): Number of blank lines between rows (precludes ``show_lines``). Defaults to 0. style (Union[str, Style], optional): Default style for the table. Defaults to "none". row_styles (List[Union, str], optional): Optional list of row styles, if more than one style is given then the styles will alternate. Defaults to None. header_style (Union[str, Style], optional): Style of the header. Defaults to "table.header". footer_style (Union[str, Style], optional): Style of the footer. Defaults to "table.footer". border_style (Union[str, Style], optional): Style of the border. Defaults to None. title_style (Union[str, Style], optional): Style of the title. Defaults to None. caption_style (Union[str, Style], optional): Style of the caption. Defaults to None. title_justify (str, optional): Justify method for title. Defaults to "center". caption_justify (str, optional): Justify method for caption. Defaults to "center". highlight (bool, optional): Highlight cell contents (if str). Defaults to False. r&headerfooter header_style footer_stylestyleleftr$justifytoprverticalellipsisr%overflowNwidth min_width max_widthratioFno_wrapr_index)default_factory_cellsreturnc[U/S9$)zReturn a copy of this Column.r>)rselfs ڈ/builddir/build/BUILDROOT/alt-python313-pip-23.3.1-3.el8.x86_64/opt/alt/python313/lib/python3.13/site-packages/pip/_vendor/rich/table.pycopy Column.copyrstB''c#8# URShvN gN7f)z2Get all cells in the column, not including header.NrArBs rDcells Column.cellsvs;;s cURSL$)z!Check if this column is flexible.N)r:rBs rDflexibleColumn.flexible{szz%%rG)r?r))"__name__ __module__ __qualname____firstlineno____doc__r,__annotations__r-r.rr/r0r2r4r6r7r intr8r9r:r;boolr<rlistr>r rEpropertyrrIrL__static_attributes__rNrGrDr)r)&s(< "F !H!F !H L) - L) -E9-%G_%[&+H#+M!+H+E8C=\#Ix}#_#Ix}#_E8C=wGTRFCO%*4%@FD! "@(x 01&$&&rGr)c>\rSrSr%SrSr\\\S'Sr \ \S'Sr g)RowzInformation regarding a row.Nr0F end_sectionrN) rOrPrQrRrSr0r rrTr]rVrYrNrGrDr[r[s$&!%E8I % KLrGr[c<\rSrSr%Sr\\S'S\S'\\S'Srg) _CellzA single cell in a table.r0r& renderabler4rNN) rOrPrQrRrSrrTrrYrNrGrDr_r_s # !  !!"rGr_c7D\rSrSr%Sr\\\S'\\\S'SSSS\ RSSSSSSSSSS S SS S SSSS S SS.S\ \\ 4S\ \S\ \S\ \S\ \S\ \ R S\ \S\S\S\S\S\S\S\S\S\S\S \ \\S!\ \S"\ \S#\ \S$\ \S%\ \S&S'S(S'S)\S*S46S+jjr\S SSSS,.S\ \\ 4S\S\S\S\S*S4 S-jj5r\S*\4S.j5r\R4S\S*S4S/j5r\S*\4S0j5r\S*\4S1j5rS2S3S4\S*\4S5jrS2S3S6S7S*\4S8jr\S*\ \\\\44S9j5r!\!R4S\S*S4S:j5r!S]SSSS;S. S?S@SAS@S!\ \S"\ \S\ \SBS'SCSDSESFS\ \S\ \SG\ \SH\ \SI\S*S4SJjjjr"SSSK.SL\ S@S\ \SM\S*S4SNjjr#S^SOjr$S_SQjr%S2S3S6S7S*\\4SRjr&\SS\\ST\\SG\S*\\4SUj5r'S2S3SV\SW\S*\\(4SXjr)SV\S*\4SYjr*S2S3S6S7SW\S*\4SZjr+S2S3S6S7SS\\S*SP4S[jr,S\r-g)`Tablea A console renderable to draw a table. Args: *headers (Union[Column, str]): Column headers, either as a string, or :class:`~rich.table.Column` instance. title (Union[str, Text], optional): The title of the table rendered at the top. Defaults to None. caption (Union[str, Text], optional): The table caption rendered below. Defaults to None. width (int, optional): The width in characters of the table, or ``None`` to automatically fit. Defaults to None. min_width (Optional[int], optional): The minimum width of the table, or ``None`` for no minimum. Defaults to None. box (box.Box, optional): One of the constants in box.py used to draw the edges (see :ref:`appendix_box`), or ``None`` for no box lines. Defaults to box.HEAVY_HEAD. safe_box (Optional[bool], optional): Disable box characters that don't display on windows legacy terminal with *raster* fonts. Defaults to True. padding (PaddingDimensions, optional): Padding for cells (top, right, bottom, left). Defaults to (0, 1). collapse_padding (bool, optional): Enable collapsing of padding around cells. Defaults to False. pad_edge (bool, optional): Enable padding of edge cells. Defaults to True. expand (bool, optional): Expand the table to fit the available space if ``True``, otherwise the table width will be auto-calculated. Defaults to False. show_header (bool, optional): Show a header row. Defaults to True. show_footer (bool, optional): Show a footer row. Defaults to False. show_edge (bool, optional): Draw a box around the outside of the table. Defaults to True. show_lines (bool, optional): Draw lines between every row. Defaults to False. leading (bool, optional): Number of blank lines between rows (precludes ``show_lines``). Defaults to 0. style (Union[str, Style], optional): Default style for the table. Defaults to "none". row_styles (List[Union, str], optional): Optional list of row styles, if more than one style is given then the styles will alternate. Defaults to None. header_style (Union[str, Style], optional): Style of the header. Defaults to "table.header". footer_style (Union[str, Style], optional): Style of the footer. Defaults to "table.footer". border_style (Union[str, Style], optional): Style of the border. Defaults to None. title_style (Union[str, Style], optional): Style of the title. Defaults to None. caption_style (Union[str, Style], optional): Style of the caption. Defaults to None. title_justify (str, optional): Justify method for title. Defaults to "center". caption_justify (str, optional): Justify method for caption. Defaults to "center". highlight (bool, optional): Highlight cell contents (if str). Defaults to False. columnsrowsN)rrFTrnonez table.headerz table.footercenter)titlecaptionr7r8rsafe_boxpaddingcollapse_paddingpad_edgeexpand show_header show_footer show_edge show_linesleadingr0 row_stylesr.r/ border_style title_style caption_style title_justifycaption_justify highlightheadersrirjr7r8rrkrlrmrnrorprqrrrsrtr0rur.r/rvrwrxryr$rzr{r?c/Ul/UlXlX lX0lX@lXPlX`l[R"U5Ul Xl Xl Xl XlXlXlXlXlUUlU=(d SUlU=(d SUlUUlUUlUUlUUlUUlUUl=(d /5UlURR<nUHKn[?U[@5(aURCUS9 M)[EUR5Ul#U"U5 MM g)Nr+)r,)$rerfrirjr7r8rrkrunpack_paddingrn_expandrprqrrrsrtrmr0r.r/rvrwrxryrzr{rWruappend isinstancestr add_columnlenr<)rCrirjr7r8rrkrlrmrnrorprqrrrsrtr0rur.r/rvrwrxryrzr{r| append_columnr,s rD__init__Table.__init__s<&( !    " w/   &&"$ 0 (.B(.B(&*.;0?"/3J4D"/E ++ F&#&&v. #DLL 1 f% rG)rlrmrnroc  U"USUUSSSUUS.6$)ayGet a table with no lines, headers, or footer. Args: *headers (Union[Column, str]): Column headers, either as a string, or :class:`~rich.table.Column` instance. padding (PaddingDimensions, optional): Get padding around cells. Defaults to 0. collapse_padding (bool, optional): Enable collapsing of padding around cells. Defaults to True. pad_edge (bool, optional): Enable padding around edges of table. Defaults to False. expand (bool, optional): Expand the table to fit the available space if ``True``, otherwise the table width will be auto-calculated. Defaults to False. Returns: Table: A table instance. NF)rrlrmrprqrrrnrorN)clsrlrmrnror|s rDgrid Table.grids,* -  rGcDUR=(d URSL$)z-Setting a non-None self.width implies expand.N)rr7rBs rDro Table.expands||5tzz55rGcXlg)z Set expand.N)r)rCros rDror!s  rGcSnUR(aUR(aUS- nUR(aU[UR5S- - nU$)z'Get extra width to add to cell content.rr)rrrrre)rCr7s rD _extra_widthTable._extra_width&sC 88 QJE 88 S&* *E rGc,[UR5$)zGet the current number of rows.)rrfrBs rD row_countTable.row_count0s499~rGconsoler"indexc[R"5nUR(a6X1RURU[ UR5-5- nUR UR nUbX1RU5- nU$)zGet the current row style.)rnullru get_stylerrfr0)rCrrr0 row_styles rD get_row_styleTable.get_row_style5sp  ?? &&tus4???S7S'TU UEIIe$**  &&y1 1E rGoptionsr#c :URnURb URnUS:a [SS5$URn[ UR XR X4- 555nURnURVs/sHnU"XR U5U5PM nn[ SU55U-nURc[ SU55U-O URn [X5n U RUR5n U $s snf)Nrc38# UHoRv M g7fN)minimum.0 measurements rD )Table.__rich_measure__..UD| ##|c38# UHoRv M g7fr)maximumrs rDrrXrr) r9r7rrsum_calculate_column_widths update_width_measure_columnreclampr8) rCrrr9 extra_widthrcolumn measurements minimum_width maximum_widthrs rD__rich_measure__Table.__rich_measure__?s!%% :: ! I q=q!$ $''   ) )--i.EF  ..,, & G%9%9)%Df M&  D|D D{ R   " D|D D{ R  "-? !''7  s "DcUR$)zGet cell padding.)rrBs rDrl Table.padding`s}}rGc<[R"U5UlU$)zSet cell padding.)rr~r)rCrls rDrlres w/  rGr1r3r5) r.r/r0r2r4r6r7r8r9r:r;r,r&r-r2r4rr6r%r9r:r;c [[UR5UUU=(d SU=(d SU=(d SUUUU U U U U S9nURRU5 g)awAdd a column to the table. Args: header (RenderableType, optional): Text or renderable for the header. Defaults to "". footer (RenderableType, optional): Text or renderable for the footer. Defaults to "". header_style (Union[str, Style], optional): Style for the header, or None for default. Defaults to None. footer_style (Union[str, Style], optional): Style for the footer, or None for default. Defaults to None. style (Union[str, Style], optional): Style for the column cells, or None for default. Defaults to None. justify (JustifyMethod, optional): Alignment for cells. Defaults to "left". vertical (VerticalAlignMethod, optional): Vertical alignment, one of "top", "middle", or "bottom". Defaults to "top". overflow (OverflowMethod): Overflow method: "crop", "fold", "ellipsis". Defaults to "ellipsis". width (int, optional): Desired width of column in characters, or None to fit to contents. Defaults to None. min_width (Optional[int], optional): Minimum width of column, or ``None`` for no minimum. Defaults to None. max_width (Optional[int], optional): Maximum width of column, or ``None`` for no maximum. Defaults to None. ratio (int, optional): Flexible ratio for the column (requires ``Table.expand`` or ``Table.width``). Defaults to None. no_wrap (bool, optional): Set to ``True`` to disable wrapping of this column. r+)r<r,r-r.r/r0r2r4r6r7r8r9r:r;N)r)rrer)rCr,r-r.r/r0r2r4r6r7r8r9r:r;rs rDrTable.add_columnksdJt||$%+%++2  F#rGr0r] renderablesr]cS[SSSS4Sjn[U5nURn[U5[U5:a/UQS/[U5[U5- -Qn[ U5HupxU[U5:XaJ[US9n UR Hn U"U [ S55 M URRU 5 OXgn Uc U"U S5 Mp[U5(a U"X5 M[R"S [U5RS 35e UR R[XS 95 g) aAdd a row of renderables. Args: *renderables (None or renderable): Each cell in a row must be a renderable object (including str), or ``None`` for a blank cell. style (StyleType, optional): An optional style to apply to the entire row. Defaults to None. end_section (bool, optional): End a section and draw a line. Defaults to False. Raises: errors.NotRenderableError: If you add something that can't be rendered. rrar&r?Nc:URRU5 gr)r>r)rras rDadd_cellTable.add_row..add_cells MM  ,rG)r<r+zunable to render z1; a string or other renderable object is requiredr)r)rWrer enumeraterfr rrrNotRenderableErrortyperOr[) rCr0r]rrcell_renderablesrerrar_s rDadd_row Table.add_rows<$ -V -1A -d ->B+=N,,  3w< / ! 3w<#.>*??@  "++;!< EG $u-AVT"X.# ##F+ !$z**,//'Z(8(A(A'BBst"= 5BCrGcPUR(aSURSlgg)z2Add a new section (draw a line after current row).TN)rfr]rBs rD add_sectionTable.add_sections  99(,DIIbM % rGr'c #^^# UR(d[S5v gURnURb URnURnUR TUR X4- 55n[U5U-nURX`RSS9mS S[S[SSSS4UU4S jjjnUR(aCU"UR[R"URS 5UR S 9ShvN UR#TTU5ShvN UR$(aDU"UR$[R"UR&S 5UR(S 9ShvN ggNuN\N 7f)N )r7r{heighttextr0r2r$r?r'c>[U[5(aTRXSS9OUnTRUTR US9S9$)NF)r0r{r2)r)rr render_strrenderupdate)rr0r2 render_textrrender_optionss rDrender_annotation1Table.__rich_console__..render_annotationsZ dC((""4"F  >>^%:%:7%:%K" rGz table.title)r0r2z table.caption)rh)rerr9r7rrrrrr{r!rrir pick_firstrwry_renderrjrxrz) rCrrr9rwidths table_widthrrs ` @rD__rich_console__Table.__rich_console__sr||$-  %% :: ! I'' .. W)))*AB &kK/  (  JR  #, 7F     ::( &&t'7'7G**   <<@@@ <<( &&t'9'9?K,,      A s7DF F F&F'AF:F;FFFc URnURnUVs/sHoPRXU5PM nnUVs/sHowR=(d SPM nnURn UR n UR (Ga/UV s/sH*oR(dMU R=(d SPM, n n [U 5(a[Xd5VVs/sH$upuUR(aSO URPM& n nnUVs/sH>nUR(dMUR=(d SU "UR5-PM@ nnU[U 5- n[XU5n[U5n[!U5H-unnUR(dMU U[#U5-UU'M/ [U5nUU:aUR%UUVs/sH(oURSL=(a UR&(+PM* snU5n[U5nUU:a*UU- n[)US/[+U5-X5n[U5n[X5VVs/sH'unnURXR-U5U5PM) nnnUVs/sHowR=(d SPM nnUU:aUR (d UR.bnUUR.U - :a[UR.cUO[1UR.U - U5n[UU- U5n[UU5VVs/sH unnUU-PM nnnU$s snfs snfs sn fs snnfs snfs snfs snnfs snfs snnf)zNCalculate the widths of each column, including padding, not including borders.rrN)r9rerr_get_padding_widthrrorLr:anyzipr7r<rriterrnext_collapse_widthsr;rrrr8min)rCrrr9rer width_ranges_rangerget_padding_widthrcolratios fixed_widths flex_minimumflexible_width flex_widthsiter_flex_widthsrr excess_widthr7 _max_width pad_widths_widthpads rDrTable._calculate_column_widthss;%% ,,IP IPv 6 :  5AAL&..%A%LA 33'' ;;;07H<!>.~|T #' #4 %.w%7ME6(4U(;dCS>T(Tu &8&k  "**MTUW6,,$&=v~~+==WUF f+KY&*Y6 %lQC#f+4EvV!&k &)%9%9ME6$$W.B.B5.I6R%9 9EE fnn)) FE ) # NN &;$..;:V+W>>)+5yA  **{*BFKJ69&*6MN6M{vsfsl6MFN q BI   VFOs@MM M $M +MM(,M/M .M  M&*M+rwrapablec^ [U5nXC- n[U5(aU(aUS:a[S[X555m [U 4Sj[X555nT U- n[X5VV s/sHupUT :Xa U (aSOSPM n nn [U 5(aU(dU$[ XW5/[ U5-n [ XZX5n[U5nXC- nU(aUS:aMU$s sn nf)aReduce widths so that the total is under max_width. Args: widths (List[int]): List of widths. wrapable (List[bool]): List of booleans that indicate if a column may shrink. max_width (int): Maximum width to reduce to. Returns: List[int]: A new list of widths. rc3<# UHupU(dMUv M g7frrN)rr7 allow_wraps rDr)Table._collapse_widths..Ys!3H/eJEE3Hs  c3J># UHupU(aUT:waUOSv M g7f)rNrN)rr7r max_columns rDrr\s)(-B)(EZ,?EQF-Bs #r)rrmaxrrrr) rrrr9 total_widthrsecond_max_columncolumn_differencer7rr max_reducers @rDrTable._collapse_widthsGs&k ". x==,"2 !36v3H! %((-0-B(%!%/1B$B!.1-B-B)!J.:QAE-B6{{*;  ",BCc&kQ %lJO!&k *6 ',"2( s:C8 column_indexrc #B^^^^^^# URmURmURm[T5nUS:HmU[ UR 5S- :Hm0mS[ S[ S[[[[[44UUUUUU4Sjjn/nURnURnUR(aAU"UR=(d S5U"UR5-n U"XR45 U"UR=(d S5n URH n U"X45 M UR (aAU"UR"=(d S5U"UR"5-n U"XR$45 U(aY[&n [)U5HCupunn[+UU "UU"X55[-USS 5=(d UR.5v ME g UH3unn[+UU[-USS 5=(d UR.5v M5 g 7f) z3Get all the cells with padding and optional header.rr first_rowlast_rowr?c>TRX45nU(aU$T up4pVT (a*T (d[SXd- 5nU(d[SX5- 5nT (d$T (aSnT (aSnU(aSnU(aSnX4XV4nUTX4'U$)Nr)getr)r r cachedr3rightbottomr1r_padding_cacherm first_column last_columnrnrls rD get_padding%Table._get_cells..get_padding}s#''(=>F '. $C#q$,/D CL1FDECFF1H4 << # },fll].Jl9% &!# " && && &??OOG]]FCD)'DOOLJD t  t D ")C Oq)C Oy  ,y ! "''$$,D&2B2B]2R$$,D 392B2B]2R rGc# ^^^*^+^,^-# TRTR=(d S5nUTRTR=(d S5-nUU4Sj[TR55n[ [ U65nTR(a8TRRU[TRTR5S9OSnU(a!TR(dUR5OUn[R"5n TRn TRn TRn TR n TR"nTR$n[m*U(aT*"UR&U5T*"UR(U5T*"UR*U54T*"UR,U5T*"UR.U5T*"UR0U54T*"UR2U5T*"UR4U5T*"UR6U54/nU (aT*"UR9U5U5v U v O/nTR:nTRn[[=U55GHununnnU=(a U m,U=(a U m+T,(dT+(dTR>UU - OSnSn/nT,(dT+(a[@RB"5nOU"U"TU (aUS- OU55n[ UUU 5HunnnUREUURFURHURJSS9nTRMURNUU"UR5U-S9n[QU[SU55nURUU5 M [QSU55m-S[V[V[S S S [XS [@S [V[V[4 U*U+U,U-4Sjjn [ UUUU 5VV!VVs/sHAunn!nnT*R[U "UU!R\UU"U!R5U-5UU5PMC snnn!nUSS&U(aU(a%U (aT*"UR_USU S9U5v U v UU(aSO U(aSOSun"n#n$U$R`Rc5(aU$O)T*"U$R`URdU$R-5n%[gU5HLn&U (aU"v [iU5H un'n(U(U&ShvN U'(aMU%v M" U (aU#v U v MN O,[gU5Hn&UHn(U(U&ShvN M U v M U(a,U(a%U (aT*"UR_USU S9U5v U v U=(a URjn)U(dGMMU(dU(d U)(dGMeU(aGMoU (aU[SU5S- :aGMU (a T,(aGMU(aT*"UR_USU S9U-U5v OT*"UR_USU S9U5v U v GM U(a'U (aT*"URmU5U5v U v gggs snnn!nfGNvGN47f)Nr+c3L># UHupTRTX5v M g7fr)r)rrrrrCs rDr Table._render..s) (?$  OOG\ : :(?s!$)safer)r7r2r;r6rr0c38# UHn[U5v M g7fr)r)rrs rDrr1@s954SYY5rrr4rr7r0r?c>T(aSnO T(aSnUS:XaTRXTU5$US:XaTRXTU5$TRXTU5$)Nrr3middle) align_top align_middle align_bottom)rr4r7r0_Segment footer_row header_row row_heights rD align_cell!Table._render..align_cellBsd 'H$Hu$#--d:uMM)#00j%PP,,T*eLLrGfoot)edgerrheadmidrow)7rr0rvrrerWrr substituterrkrpget_plain_headed_boxrlinerqrrrsrt head_left head_right head_vertical foot_left foot_right foot_verticalmid_left mid_right mid_verticalget_toprrrfrrrr2r;r6 render_linesrarrrr rU set_shaper4get_rowrstripbackground_stylerangerr] get_bottom).rCrrr table_stylerv _column_cells row_cells_boxnew_linererprqrrrsrt box_segmentsrrrrrrow_cellrD max_heightrIrr7rrrlinesr>_cellr1r_dividerdividerline_no last_cell rendered_cellr]r:r;r<r=s.`` @@@@rDr Table._renders'' (8b9 "W%6%6t7H7H7NB%OO  (1$,,(? .2#}2E-F xx HH  i w7G7GH   /34;K;Kt((*QU<<>,,&& && NN __ ,, T^^\:T__l;T//> T^^\:T__l;T//> T]]L9T^^\:T.. =L"t||F3\BBL** %% .7 8R.S *E*E4.;J-+J#: %+-.  J/1EZ!JJL %!' 519O (+68W'E#tV!("NN"NN#__ "0" ,,OO"#DJJ/);- !SZ8  U#(F 9599J M4=) M/ M M  M d7m$  M M836fhw2W 3X.E5$""!%++.:   3X E!HK" VV) Dl#N(4%Q4aUV(X%eX  }}**,,! y'A'AHNN'R %Z0G " 4=e4D0 =#0#999(y")M5E!# "N 1 %Z0G). #0#999*/"N 1+LLiL@,1#//Ktw++(Uc)nq6H-H(ZZ& LLYLG'Q( ' LLYLG#Nk/Tn I4??62LA AN4I D::sXO Z(AY2 0CZY:  Z7Z Y= AZ,ZZZ* Z;BZ=Z)rrrvrrjrzrxrmrer/r.r{rtr8rnrurfrkrrrqrprsr0riryrwr7)r+r+)r?N)rr"rr#r?r').rOrPrQrRrSr r)rTr[r HEAVY_HEADrrr r!rUBoxrVrrrr classmethodrrXrosetterrrrrrr rlrrrrrrr_rrrrrYrNrGrDrcrcst>&\ s)O %)&*##'!$#'%+!& ! !48,:,:,0+/-1)1+37?& $?&!?&(# ?& } ?& C= ?&cgg ?&4.?&#?&?&?&?&?&?&?& !?&"#?&$%?&&Xi01'?&(y))?&*y)+?&,y)-?&.i(/?&0 *1?&2'3?&4)5?&67?&8 9?&B&'!%   $ #          @666 ]]Tdc3Ysy +; BsCc12 ^^0W$&#%5$ -1,0%)#)*/%/##'#'#5$ 5$!5$ y) 5$ y) 5$ "5$!5$(5$#5$}5$C=5$C=5$}5$5$ !5$t&*! -D/0-D "-D -D  -D^- . .+;. .`> >+;> c>@$#Y$*.t*$AD$ c$$LG G03G=CG %GR$s$s$&&"& &  &Pr r+;rEI#Yr rrGrc__main__)r")ReprHighlighter)rc)timerz Table renderzStar Wars MovieszRich example tabler)rirjrzReleased bright_cyancyanT)r.r0r;Titlemagentar3z Box Officegreen)r2r0z Dec 20, 2019z Star Wars: The Rise of Skywalkerz $952,110,690z May 25, 2018zSolo: A Star Wars Storyz $393,151,347z Dec 15, 2017z!Star Wars Ep. V111: The Last Jediz$1,332,539,889zon blackrz Dec 16, 2016zRogue One: A Star Wars Storyz$1,332,439,889rr?Nc[R5 [R[U55 [R5 gr)rprintruler{)rs rDr,r,s$ MMO LL4 ) MMOrGz Example Tablerhrz expand=True2zwidth=50Fdimrgzrow_styles=['dim', 'none']z%leading=1, row_styles=['dim', 'none']z+show_lines=True, row_styles=['dim', 'none'])J dataclassesrrrtypingrrrr r r r r rr+rr_looprr_pickr_ratiorralignrjupyterrmeasurerrlrrprotocolrsegmentrr0rrrr r!rr"r#r$r%r&r'r)r[r_rcrOpip._vendor.rich.consolepip._vendor.rich.highlighterrnpip._vendor.rich.table_timerrotablerrrr,r{rwror7rurtrsrNrGrDrs11   -2&! /##  W&W& W&t MM M#J#B LB J z0<5 ~ $(#   ]&$    2 wgF  .   n&?P  /      *      )#%  eX . } e z eX .  !6?+, eX .  !6? 67 eX .  !6? <= eX .O    s 'FJ  J