[/\c@sHddlmZddlmZdddZddZdZdS( i(tunicode_literals(tlongiu c Csddddddddd g }|r0d }nd }d }d }t|d}|dkrgd}nx0||kr||kr|d}||}qjWt|tst|trd}n|dkrd}nd}|t|pd |||fS(uReturn a human-readable metric-like string representation of a number. :param number: the number to be converted to a human-readable form :param SI: If is 0, this function will use the convention that 1 kilobyte = 1024 bytes, otherwise, the convention that 1 kilobyte = 1000 bytes will be used :param space: string that will be placed between the number and the SI prefix :return: a human-readable metric-like string representation of *number* u ukuMuGuTuPuEuZuYg@@g@iiigu%i%s%sgfffff#@u%.1f%s%su%.0f%s%sN(tlentNonet isinstancetintRtfloat( tnumbertSItspacetsymbolststeptthreshtdeptht max_depthtformat((s2/usr/lib/python2.7/site-packages/dnf/cli/format.pyt format_numbers4        cCs|d ks|dkr)|r"dSdSno|tdkr?dSt|}|d}|d}|r|d}|d}d|||fSd||fSd S( uReturn a human-readable string representation of a number of seconds. The string will show seconds, minutes, and optionally hours. :param seconds: the number of seconds to convert to a human-readable form :param use_hours: If use_hours is 0, the representation will be in minutes and seconds. Otherwise, it will be in hours, minutes, and seconds :return: a human-readable string representation of *seconds* iu--:--:--u--:--uinfuInfinitei<u%02i:%02i:%02iu %02i:%02iN(RRR(tsecondst use_hourstminutesthours((s2/usr/lib/python2.7/site-packages/dnf/cli/format.pyt format_timeIs     cCsdjd|jDS(Nu css|]}d|VqdS(u N((t.0ts((s2/usr/lib/python2.7/site-packages/dnf/cli/format.pys hs(tjoint splitlines(R((s2/usr/lib/python2.7/site-packages/dnf/cli/format.pyt indent_blockgsN(t __future__Rt dnf.pycompRRRR(((s2/usr/lib/python2.7/site-packages/dnf/cli/format.pyts5