From b84d172048980f140d3e33858ace164a584011e1 Mon Sep 17 00:00:00 2001 From: overweight <5324761+overweight@user.noreply.gitee.com> Date: Mon, 30 Sep 2019 10:53:16 -0400 Subject: [PATCH] Package init --- 0000-iotop-0.6-noendcurses.patch | 21 ++++++++ 0001-iotop-0.6-python3.patch | 9 ++++ 0002-iotop-python3build.patch | 32 +++++++++++ 0003-iotop-0.3.2-batchprintutf8.patch | 12 +++++ 6000-iotop-0.6-splitline.patch | 18 +++++++ 6001-iotop-0.3.2-ppcprio.patch | 21 ++++++++ 6002-iotop-0.6-aarch64prio.patch | 19 +++++++ iotop-0.6.tar.bz2 | Bin 0 -> 29779 bytes iotop.spec | 73 ++++++++++++++++++++++++++ 9 files changed, 205 insertions(+) create mode 100644 0000-iotop-0.6-noendcurses.patch create mode 100644 0001-iotop-0.6-python3.patch create mode 100644 0002-iotop-python3build.patch create mode 100644 0003-iotop-0.3.2-batchprintutf8.patch create mode 100644 6000-iotop-0.6-splitline.patch create mode 100644 6001-iotop-0.3.2-ppcprio.patch create mode 100644 6002-iotop-0.6-aarch64prio.patch create mode 100644 iotop-0.6.tar.bz2 create mode 100644 iotop.spec diff --git a/0000-iotop-0.6-noendcurses.patch b/0000-iotop-0.6-noendcurses.patch new file mode 100644 index 0000000..b3529d4 --- /dev/null +++ b/0000-iotop-0.6-noendcurses.patch @@ -0,0 +1,21 @@ +diff -up iotop-0.6/iotop/ui.py.noendcurses iotop-0.6/iotop/ui.py +--- iotop-0.6/iotop/ui.py.noendcurses 2014-12-03 17:50:38.941430261 +0100 ++++ iotop-0.6/iotop/ui.py 2014-12-03 17:51:40.108064465 +0100 +@@ -520,6 +525,17 @@ Please do not file bugs on iotop about t + sys.exit(1) + else: + raise ++ except curses.error as e: ++ stre = str(e) ++ if stre.find('ERR')>=0 and ( ++ stre.find('nocbreak()')>=0 or stre.find('endwin()')>=0 ++ ): ++ pass ++ # endwin and nocbreak can cause error (and raise hard to catch ++ # exception) if iotop was running in the terminal and that ++ # terminal got closed while iotop was still running ++ else: ++ raise + + # + # Profiling diff --git a/0001-iotop-0.6-python3.patch b/0001-iotop-0.6-python3.patch new file mode 100644 index 0000000..550a194 --- /dev/null +++ b/0001-iotop-0.6-python3.patch @@ -0,0 +1,9 @@ +diff -ru iotop-0.6.orign/sbin/iotop iotop-0.6/sbin/iotop +--- iotop-0.6.orign/sbin/iotop 2013-05-27 00:44:18.000000000 +0200 ++++ iotop-0.6/sbin/iotop 2015-11-15 22:47:24.468058681 +0100 +@@ -1,4 +1,4 @@ +-#!/usr/bin/python ++#!/usr/bin/python3 + # iotop: Display I/O usage of processes in a top like UI + # Copyright (c) 2007, 2008 Guillaume Chazarain , GPLv2 + # See iotop --help for some help diff --git a/0002-iotop-python3build.patch b/0002-iotop-python3build.patch new file mode 100644 index 0000000..55b73db --- /dev/null +++ b/0002-iotop-python3build.patch @@ -0,0 +1,32 @@ +From 99c8d7cedce81f17b851954d94bfa73787300599 Mon Sep 17 00:00:00 2001 +From: Christophe Vu-Brugier +Date: Fri, 17 Oct 2014 13:49:31 +0200 +Subject: [PATCH] Fix build error with Python 3 caused by itervalues() in + setup.py + +The itervalues() method is not available in Python 3. As a +consequence, this patch replaces the call to itervalues() in setup.py +with a call to values() which works on both Python 2 and Python 3. + +Signed-off-by: Christophe Vu-Brugier +Signed-off-by: Paul Wise +--- + setup.py | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/setup.py b/setup.py +index 7150102..9de6068 100755 +--- a/setup.py ++++ b/setup.py +@@ -7,7 +7,7 @@ from iotop.version import VERSION + # Dirty hack to make setup.py install the iotop script to sbin/ instead of bin/ + # while still honoring the choice of installing into local/ or not. + if hasattr(distutils_install, 'INSTALL_SCHEMES'): +- for d in distutils_install.INSTALL_SCHEMES.itervalues(): ++ for d in distutils_install.INSTALL_SCHEMES.values(): + if d.get('scripts', '').endswith('/bin'): + d['scripts'] = d['scripts'][:-len('/bin')] + '/sbin' + +-- +2.4.10.GIT + diff --git a/0003-iotop-0.3.2-batchprintutf8.patch b/0003-iotop-0.3.2-batchprintutf8.patch new file mode 100644 index 0000000..4e63bc0 --- /dev/null +++ b/0003-iotop-0.3.2-batchprintutf8.patch @@ -0,0 +1,12 @@ +diff -up iotop-0.6/iotop/ui.py.batchprintutf8 iotop-0.6/iotop/ui.py +--- iotop-0.6/iotop/ui.py.batchprintutf8 2016-11-14 11:21:23.690185257 +0100 ++++ iotop-0.6/iotop/ui.py 2016-11-14 11:23:26.511040007 +0100 +@@ -444,7 +444,7 @@ class IOTopUI(object): + if self.options.quiet <= int(first_time): + print(''.join(titles)) + for l in lines: +- print(l) ++ print(l.encode('utf-8')) + sys.stdout.flush() + else: + self.win.erase() diff --git a/6000-iotop-0.6-splitline.patch b/6000-iotop-0.6-splitline.patch new file mode 100644 index 0000000..b35ea12 --- /dev/null +++ b/6000-iotop-0.6-splitline.patch @@ -0,0 +1,18 @@ +diff -up iotop-0.6/iotop/data.py.splitline iotop-0.6/iotop/data.py +--- iotop-0.6/iotop/data.py.splitline 2013-05-27 00:44:18.000000000 +0200 ++++ iotop-0.6/iotop/data.py 2018-07-09 16:08:04.135771959 +0200 +@@ -193,7 +193,13 @@ def parse_proc_pid_status(pid): + result_dict = {} + try: + for line in open('/proc/%d/status' % pid): +- key, value = line.split(':\t', 1) ++ try: ++ key, value = line.split(':', 1) ++ except ValueError: ++ # Ignore lines that are not formatted correctly as ++ # some downstream kernels may have weird lines and ++ # the needed fields are probably formatted correctly. ++ continue + result_dict[key] = value.strip() + except IOError: + pass # No such process diff --git a/6001-iotop-0.3.2-ppcprio.patch b/6001-iotop-0.3.2-ppcprio.patch new file mode 100644 index 0000000..10aacaf --- /dev/null +++ b/6001-iotop-0.3.2-ppcprio.patch @@ -0,0 +1,21 @@ +diff -up iotop-0.6/iotop/ioprio.py.ppcprio iotop-0.6/iotop/ioprio.py +--- iotop-0.6/iotop/ioprio.py.ppcprio 2018-08-02 15:17:46.523099123 +0200 ++++ iotop-0.6/iotop/ioprio.py 2018-08-02 15:19:45.671660952 +0200 +@@ -32,7 +32,7 @@ IOPRIO_GET_ARCH_SYSCALL = [ + ('i*86', '*', 290), + ('ia64*', '*', 1275), + ('parisc*', '*', 268), +- ('powerpc*', '*', 274), ++ ('ppc*', '*', 274), + ('s390*', '*', 283), + ('sparc*', '*', 218), + ('sh*', '*', 289), +@@ -46,7 +46,7 @@ IOPRIO_SET_ARCH_SYSCALL = [ + ('i*86', '*', 289), + ('ia64*', '*', 1274), + ('parisc*', '*', 267), +- ('powerpc*', '*', 273), ++ ('ppc*', '*', 273), + ('s390*', '*', 282), + ('sparc*', '*', 196), + ('sh*', '*', 288), diff --git a/6002-iotop-0.6-aarch64prio.patch b/6002-iotop-0.6-aarch64prio.patch new file mode 100644 index 0000000..8e04729 --- /dev/null +++ b/6002-iotop-0.6-aarch64prio.patch @@ -0,0 +1,19 @@ +diff -urN iotop-0.6.orig/iotop/ioprio.py iotop-0.6/iotop/ioprio.py +--- iotop-0.6.orig/iotop/ioprio.py 2013-05-27 00:44:18.000000003 +0200 ++++ iotop-0.6/iotop/ioprio.py 2018-08-01 15:12:59.460788725 +0200 +@@ -27,6 +27,7 @@ + # 'x86_64' but it will use the i386 syscall number, that's why we consider both + # the architecture name and the word size. + IOPRIO_GET_ARCH_SYSCALL = [ ++ ('aarch64', '*', 31), + ('alpha', '*', 443), + ('arm*', '*', 315), + ('i*86', '*', 290), +@@ -41,6 +42,7 @@ + ] + + IOPRIO_SET_ARCH_SYSCALL = [ ++ ('aarch64', '*', 30), + ('alpha', '*', 442), + ('arm*', '*', 314), + ('i*86', '*', 289), diff --git a/iotop-0.6.tar.bz2 b/iotop-0.6.tar.bz2 new file mode 100644 index 0000000000000000000000000000000000000000..cfbb25ef72e2b94e2f98d69377413b85c42dbed5 GIT binary patch literal 29779 zcmV($K;yqcT4*^jL0KkKS?XAtApna}|NZ~>-@bqU|NsC0|NsC0|NjCY004wS0YC@> z0Rn&sV3XeW);a6sYOlWcy_>D5d*_4bW48AA`+V#=Ztkwb1KaK>`V?Pz(zeP`R8UH) zsFUZh%78pUqJTYTUsuZ7hyFl(0=a)v;VljIwE`s;gheII+_^zMB3 zbMKw5>$|yWF3k6P+38*ozWN!S^XI3!Tgs}RZuwqv9hT3V4`Zu_ti{!|`|rEO(YMz@(n-rnw= z*ROe7y(-uPHu_@dOGc|~Z7e>zYjvel-xp&dF$m^}#zURPEeQ&AD z>^!c?I@@(aE490vS8GK~tqQi_tz;qg4DxYMz8?=`l=YJd+J4r1djVw3-G$+JU1J zK@vg)1OQDm6A?2=(@iI%N$F22ewvz_)JN)=G>_FkR5S*I(HNQoL6L^1^eTTMr}!W9 z1Nnd3bMRcl?)?9=`2I3%uaQINklm&b<0Kl35-bupKqNK#-_=L;XY2iWqgVCylKA{U zhNcI4q(IqHXvql3q*TUSxtD#q6sgkt_C?l74nQ42M2f`~kYpe*gB2nwk^+Q)F%kVM zO12mw1xPRmfSMV2oM`?6gkG@UM! z=rpb?{jYe+AIHvH3h=Zq7 zhCiQ22-y2Sb8&9gOsLSLwa>+jw$*2hKV-rI$^)1o__EUqp%;W3PazMO){5G{mXZ47 zk7N5YVspzy7JUQ>h_9uq9{0E6AINHkvZyk9IwJDLU9Zw8HIv8W_ORDOmoa)fy^@JkiP^x2;)5{B@T8%$9@8d>En?w*_y4ENORg zz8`%wC-jkH<#vZu*9La!%N?a_839_1GYS|8L7AhCLVej=X+sAJJpD~NuH3~ei_ABUlyXDz zRC}v+KVkY$-&BDkc8yG?g$r9m!|U`9*x2W>X)y2WEej ze!>$_6x&>!IJ*3uI1oKoQNxZA8-5v8QU-rs_Qy;rCE`1IP?*If$+xnMR%^S$m(yjw z-Sk6s?%gV;N6$i;MxG|g_OWcvm#5p}LaSYRWPoy!_Yxf93~Zobq$>~-BYo~ZXfowN z0eXWM#nLg%Ac|!*b6B}Ht!|I$bVKH-z;E&7HV&JyVjHW54hT;DBrzb$MIMmQ?dX4V z!qEZ{2L^%Gwm#Sj-L}Z=X`npiiwSeqeGw2bfR2zXHO>YON(lEaZM30z5m>dTK_{_8 zW~~M!bC(;4!Rje`&kgdrT+R+M!xBAiTl#MX-kpqdno#h*{HQ&>xMhlh`Op=D;`S&G zEJZV8P8&KT*cChFu;l)ys|`@nVU>P;1UfpmhvU%42~h*YsT16SAn>g{LEvw`4%tjL z(L*0=%SZQ2B(XXC0*Av#H61FTS3fiYLzac5Mi7A{#1JFjzqIOXQU9CShkLSfPWE^t z(&hC%qD>&ZjO5}>U{}w!PFk1zTDcgLc9}|p&W8z}d$Zf|+Zc$4FB9>4vu%-M*~xPa zA5MAQA_$T@`S1_J#WqGV5BA!V$Fjiccvy8es>XfqDieHu$>nUd0QW~8nhMrXo*ZcT z?Lla9>MNg${iw(%%O4c_I3Lk^uSdUQ9w8GTln{aD)mx;UIeN)DS#bQn&{o z%i!^yfO;?Xp}>C5nm0Sro>`Bag^~_q$MzBx89SJx)7 zt$!f$dw$KslD@TPBU4G*pF6fRZSOS$#&^8nZK~%dlC?Y4N>V{%IWS%_@ZQEf0$v@{ zs|$RcUky6+Q{--<*S}h-yR6s%tO9{4zaZA0FZ%iF(anV-Al>f#X}9&^YfL#&`b1-% zS3fATLF6+&*+ezBwzg4smrHe;C{Rh1yn$7%4kYHRCl#B5ryL*8yNeAz2~Qm~wryr! zC_%X&XlQBU`W2zMd+Nluz1ZQ)vx+T`zAz)Ow^lgUm$$R(dipo-G5vJaa{ja4zw>-z{hQ}Z15e;!{B8plp`J3PL z#5AG^na%(Jpb%WpPqV%2@Tfh@-QC>a#=yD{VMLr?gE@DIu;1e1;Kp;jURK_)F};@C zdA(D}P~s>+c7szaJ3F#I$3z{x!Nv;r}Y0n^wnkgsNJP~#3LFRgX`Rw z%J|7o(~->ChM8r+ls#BHe++fvgCY_@@F<&}T}qry^ypcO05HX^aDy2K!&h{fO~2HF zr#OX-N43s&bmX%?whwX~o_IE=qL#dt*dd+3Uv&XCN|d`8QYtA>Iq;9YA(UGkFiD#r zPOsX^Gg>ZCzee8h;(M1q>tT8T)pt%sN8gniL}SEbsu7Z~7dyr}>K}&XhQ(Q$M}xRp z#}CWVyP8FhUmRjvr1A841^3AG(m0Xp?2Z94s2QmmY%QOh$9rbf-&|m8ckb%uk9a_V z#LOr)F;hs2S<{_s?g0eQ50Iu^T0jgafJJs~lo%2oavqCnk8uaWsZl^Ho&dZDnkMLY zCv_*tPo&%6G4c@!sC#>sF3o7r=j83K{>rT$%`IlEZ|XOWXXxY4mfuZdDuv++?xD1I zoe?+{WoNu1a6HV~Q9%Iu)2-}}AtW#!_kjSboBG%`q@|3I*M6~7ot}KW*lX0iD0#$3 zXyY8@=tMw>IaBwec*tb?RuE60WC^T>e%P6nTKc@%za{9>W;{PLj}I3O=OVuYD$m1} zR=N1Z`gZ~x=e_UBm`GqXoh|Lm$Hs3B#!^jn_?HybHb)%qJn(bBbK({{4~t{;6BQ4u zw7SG&NLy{w&3?ELIL7e2l<(jiV`wAOImHnp?TFLRx-DvQ7<_}|c2PUXRKC=ids$lQ zAuexq>a6P!34UDz2S#QVE9|<^ow6B4rVJ-S2r>J7OXYOn*MsZTpw~Kp4j-o-d6!pc zog}IXNzB#sD2*LOJk3_TX-d$eQ7Yuo)K*!2=DKZ zcI(Gibk*HskGsg=8Rq8cVU5oiO&4y=m=Gc$-&{jT%?MS1qEtLIF^}#aOehHu;nin3 z)pI-OGqqBmhy)IbITgLRbW< zVnrgVr{gAevo*?kfdlO#L%CEVKF7x3BY<2jXUrY?k0g7th#aUGCATZ<(Nl0D9_W42 zlyu+S=`+m6LmoZ;dw9Ax;h|OPX~-Ljkm8DE*1O$Ea!5zJkCS&V1|7my12O3xoj*)A zU&pAYisR3i+qjIpN)&<#U{P`_3l?aM9QPGzGudQ-P^zk`s*0t~kyA?pDBGVMB9vgc zKGAm|+qZgKU${QR<`EePoYEsiCr_I^J|9gMI)}(I9_up$mrkZ!lh)1j-#elQ4(E%! zd$0fjNO0fLyA8wQ-&L2KHL9Hzgq!PeMzI<<`(oER%IxD}>S zn0f*Qh2s(>KmaHVa7y-Vy|BDtVxrg_1vHRjT5z z4n}Q*a=ypkob_dvB)7R(!c>jqJ*`mctB{~8^L-WQ) zM5q%eFEDH$4xfgS274K=qlb>PqOESRn5b|9^&dO>SObwVT=Ly`$nQX>E|{R())Tl+ z;ixGb7x=qSBIthmdt)L2+6%yf%EGu? zlEb34uVw@~y!Liy#mjvYAl+ohR~K_u9EKN2%{dfB;&Eqcfo%S=d@md)7u$D*yh3bP z_bzS-77}IYN`ZPx&|I#{u>=J8Arpi1>vhV?@iUPX9r#EdJLRl2t7R1GjqL${M+#Mb z+byf3;bC;HCirc7&zV9D!9*V^RRdg>Q-j2D3^-9zTytap< zvdb)^86z>t+NdsADEw=;J{AfYSX#z6Eyb+LI@WYyK@x&m(4N0%Nu0qn)4iSNmJ}-naU+^oP?UGfyFmhncljp!Y@8_-3hkTUYvdz^uww7aA<9{E zsnneQ&FRp2F8oV(+CI6qZmv4oYc;zP6gY|YV-0(UA8;Iy7@{=wP{|tbDtNi!t{G)7 z8&cSU_8z?%kT)5V3>=k|kwuilYgdI(x3z*{hRT9UyppI7X~oy~PBe?*9>UoYInQ{D z(NDvIoBbcRBcLyBupD*PP*RU~X=;ow1K7FJCw6o60lgHcA`6M`R2!JBAljnAU|Ze9 z$_&g3mMyFT1p^gj4SYw`g`s|q_VmZoD7oF~*NKTd@;`*(&{F!o&eTN4N7BBVQPKh7 z6`u3S*m-3koMM*2V6=68G)(&QPpQ>hScjK?U&tjXYt&Z9mmPVGajr{xTYQIBOVt$FgHUW z0t#jLazG-K#)Qs{_KFg#9~&y06q;<((%H2YtcR8Y+k7!j-2q(ZRnYb{tBK)Vg~u2` zqS8j#SzWsNlm;RIVO?!}t!W^LVQVNlEyZG!MV=B_NQBho$x!Nxk zL(*x!Qw`mD6mzyAI7Xa|?1Gj%n`>V!EXWc;gB2eS!PHes=DaiIKpIpL46*PnGOLcG z6KGYC)6CyQD1>%JlB-*27vqr%vSx}LWOZjI3ie6Pa|#6|o4DciH)9RjVDdg&IP$XX zQvi<#7bC=vh(og3mdhJxX#kuEOcmj_z(ikNw7a=3=dvU`KQ>9qRgLJw@5f#A4ITX2 zG-I|l@;e#K4=6#x)2*&C-LOQd4)0XJ-4V3T#4{E}0^3@bwsMMjFitF%&xV04DI$=1 zDq-VYtH)mk40U0C1bdKf+8D)oskJdSJ`2R{&~i|Y+o=^mj^xhSBBkYFw}Elq7~ z0@M!W5r75`kaO$|WiK!3UV2dKd;Fh+@m;H6(l1PBnc#Y)axy!NrS7PmFN;_y3=D;L z9wCE3?Mqoy77RI1qRtq1_|@v?KvTmlrpnPg>!_)zAsYKnOBnk~%}k@)LqibIjG>|t ze|?z_?gb6iJdIbp2n7nSP@*NLCDwGWBrzruhI3^jq2Y8qEHlw} z7%(|ELHcT>q7S`&sLTqrD+~Uvl0YJP5W{q_P)0H+A}kaXh={8qDoGYXF(SD92eWpwT{^h$Cv#PmrZTP>ShpQA zL;BMK@Pf)i5)R$mNmS^ft@k0aEG2xyOhvGL@pd|no(1vBd`4tqHre>F@H zvBJLL1BP3|-etS_!LO;5b`m@|&iz1BAi)rYkVMn6v@DHt-A7C4pin_{qSsBUX6dsvWkKgQBy8^xJv|GV#J%TJcHa!a=vyt51fpASOhHNc0ecY>*$B z$L7DVI**@R^mZhUVZ#*1{{jWmpyNkBSy5aMp?Z{H}_tdYQd4RV&eo!1BH*#w`8I_1;DOS6VNaq z7~3flqgbz(z2*gW=RJ;ZVwrqEVd=o8LJvYIyKjb>DpfS2!QCu_uPQol7Jo4ma6I?( zZy;nY5Iw|+?7=~dJ)U#`>Uye=$r`fs37?xzPvLaZbq~u^)IyF2$qm4j@8TN@<+IOF z!rlcdtA$HkU89~Fhc{M7cV(YG?-J8X^t<^Ak6(wa!qDRm&ZSdg_?aeTCnvJ2KLv^f z3X5zoLii4Pp82*_NzWfO?Tpx8kC}1zwN2v*_4i~Kcv$u@A?J08 z5NIsNIm^+q2>H}#Bb*X5=V(iJrmZav$BP8kNWiyk`IyG2L0bA06`hcTy}M_>NDSB> zj=aNs-piU}>TTLn?hx}$`W;OO=td8s4JmKeJx0D8iKy1&h`OW~4*>?xH*VE%1;OsszJBygC=)kW+IyVqo+U*`ao?464`Hd#J#rN> z=hETAz>YnWd>S4h0*<@0M55&Mb+QI(d0k-vKqG#2-Z5`fT$b?gaKwz#4J(PBoPK!q z^;_Gp+01&*OF%tYlaF(Ak?z%-&tY71zWYxOcb@QB0X}ntWUi}mtP~ftSQF>uBv_Xl z_V7@3o$`MFHrt#E@71--DClfHgX-|IX88&m25YxnMUACYG@Wf{&bgkJk>vw9PgxwG zJt;^T+GGXGXs4KE24hY%etanRV`D!I1xC<>0KaA3&~+ZQ1n-W6IZ!e{^|rJxqwDfF zR+-j+R8gCPP>wsPACF;k&^2{*!0Z87Ug`pt0+cZ3pkKxU&*G0ArGC{!DF zt(M3GWr!FS$5li&g@>jVn_!R1r&Q+{Tm-_nqXO=H92HdyLpz!*O`*~L}7@XPA z?sO5V7J&-UkYeX0d6#ztAmkJ9U6O1uL0yA(3l8eFrz6}mP1x+X@w&abS`UO+hYjCkCYFRz1G@r+>6&|-9|EU^v)_ZdK|@_^ZJf(YXY zo{q%@;iqxS3vJkqm30Pe&wJg?QieCHOkvTqrLK2QH%72}am0w#M$Z)$gDm`v&9EQE zhV9pGD;eupi^GlVLp8W`6*R~Wb9>GxXmnRHGr2NHP-q-AxVdRHr-`PoDq(5#=XraO zx~ZoTH7j;)O1%s^>iNF!OpmJ(^Sn9A^G+<=(#|cxq_Kdwb?Dql2swbxWNLH8QNL{K zYcDz>fo0x+$l6=o*PZ<0)ZLe7wzM^gP`0}coiM>96}6fK16|?=Hj*-fh)3LD+iwHQ z)1EFtv-Jf>!vgon#HsY&Qh_eY-V?<5HhImM0-6zXlVuiM+Uk6pI*>Zhqgi!S-F3*{ zvWPH;oww=H(#Jw4Qd5JiJ)(i|UmrPuwrD@W3N^*%&`dphipu@;pBCl|{7ct~(dT~L zV}Gta?2d2TrI-vAZ$ql|s?R%Ni{h@Z-9d!(tzE?#3AJBy4J2sBS8-A8^kr4=2h~>i zqKQDLpi04SrIjErDAA(G0L|;kglAi`q&Hn5lbm@W7Xr(veAu@fHI4jn<>ss8>)3Tc zQee1kXN`yM7|UCtWVNt{X>N)+tkj@7mtSg_n>5ts46Y6KA)(<)0#~n&8?RdNWn7T74s+AMmyM}sGPc#eEW}s8%wqMK3)3}z3`{I}YnFUho%&6N(fy<` zC)~Ir-JUhp*rC)hC*3Y)7J)cxpzYVTKP*kuA6}+C1^jjh@xS4JmM)!lUQ<}J+qkFmHYDdpIE5L?%SujR&uLrvsf3OuoeghZ=?sDT7KN~;D4^GX2f{B@D#>ATEs z@q7Dkqbm%|EJwxQf*XYkD?@z@aH0sqIW6`+XQ8r{vrB^A_$it=7_c%dwt>MfCTY# zI~VV#i=~VR5|Tf@Zevk}1pU}rK!?(xaf=8E$dEKYY{mL*AGL%j&){-I!22K(13*?z zO;({I!7Zz;=Z=g3>`6aM`{OTrNUA@q{!s95YB3=Y)PV{WLJ)tL9YqF@KVR|pZnvk* zwGGFf6=rDY_;YuE8XrdM@Sl*^m=XKu>vfN?{W2EXK>CmKym!ywnXXg_%hIFt@h~tC zXQUDA@nyR2o`DaS+Ze=WDMf!m$eEzK6+#FoJ4bjo<8cj8jvvUbXY2WPTes5x!PL|3 z!%qjj{;t0-;FF(tHn$P%?4yMhST6n! zK0e>CZFc{>e?avQ)<5CwB@_(djbBmyJmEO|KR0|czxMz&0zH6$I|x8X8n}M0=1nM< zlB_!TVZ)Z+eZp?V-rt+~KZ&9M7>m?{;T>KUhTy&K!_MWc+vE^L@qV4qXI9wUl4_+=AsIq@!utWiU!s#!_2L5l^|zH|IZTov%kf z#qQ6@oE+3=R6tiyoihd_P$C`Pwa#V!R}Bv2+fJ}$w5e?^MI0!$8CKm5IAAft#Kf~1 zXYU6u-9Kj=I|nW_rW6@N0Zzfl*&2;QAZG%sJA3%PZ-H;Y!*lp8Z;tRkQ!x8#(cG&m zC?jX=R{o{9b;SZLtV5$U+Ew2HG0S$ec0k-qm)-KZOMC;DuyBm}!cyL~1`QMTaa-uS zG$KP>HXlLT4R93>;s=k-@($3!2>B=#O%N@B2nzsy(v9d(EkHtj1#6Lezjm~l?Hn64 zT8<|hzeTHzJIyHA?JIZtt{Vqt`t(3Z@tL}he2#?>-F@3!qR}W^N<(2{F6u*5ij7!%gFK9AI4_&K1mbHGvddtEuvC3PE9zzH0lYVHL}%f~DsQKc099ntaRQIR zQVq&WeQ0i!s}}@Q6)6jowexABEUocV6A&xk?6iD;vOfs;k5}s#(d~N8pP`lCqzMf9 z&K>*warCp@oN6W892$7sr2HO5N3iTKxsJk$SRtyOS&i4%`0I}fd&^Lr9ScigWYtH}9_)fquLr0jJR7xbM%~ zagCJ~4S?s{kkWRuGpnU{v)#$7EA?FQ%{=dHHG`J1qvjHKjik3Lz+UHL*2y zP$1WeyDryV8~bo$KcCR{>||Q85#AnE>^u9*@Fleq#@yaaLuBK|{XPd}okTR|c&z3T znWEj?LAvR=I-KtTltnUOUEnd&3PTE3Y(UAf4Yc*Js3Wk zz6!O@$|D7u{ETn9V9*SWca82%6e5iFE=I;S!rHZ)Sy9&`AY8mXSH*OsfXvC~hyXSE zWt=5oSaw#fnDf&7)1zDTZh`D7#pew?F>?7&pYx1kB8wn`!U67%v!v`h3N-*i83*CF z>l-fo-)t>pPY9%Yv4kMjDQ;4V#5DUPXrKV~G)Cc{d?fX`nHy2x>A#QB-t&dS6BRLi zOW|j55HP==&m2w@4wY>B5@2{|ShdGSAD4m0$&t$X@jVA~U|PY#9xJM70a2pPw8^4G zb^upFNEuXhGPf?rBG2Yy1tt}Za}0>+cpVz9Wyd%5a-CRB{(UcJ$LMKelzJRK2AJb_ z*8P6JUw;0{$bCpTxcX@W_&ClnMnyWkb z*tBpG6uy;3#)vuMsd!t$$2mnb5i&)UcTV?u8d@eCzA8d^2D!V61=oPZO8#)xRR3@&oAF?8{#XEU?ji&cFeLTs}`L{C}oN;*x)3U*k{K%v4dW0an^1 zWM*@2YMVpD;qDlGKLKX*-?;?9!Ud#)nhL<#cehYBOxSdW#@O#2w~==ni88moDP*$# zD+Q>)ojT=sug~T`j5m^(9_%UXYII)C$F*{sj}xX%P1@Ot@Ztw^6S*E-@2HvEBefoM~Q~z zQ|xPC!*modV)1=V{<(qnek^0*vWXWk6n4Fy8b0P4Cnnr?6=M%ssndeC@`|t)TG53* zKSe+a0#t>U)_Zq?$>|7Tu*+Q}6FtiedQ7$CIrt|x*yf!rR+!a-up2C|_4yDyks|?3 z8M#|B{gh7y@xO16JR9BQ*Pf@`Z0wc}9!gr=^1XbTGQzFYS6I5%?|!Q|qsZbAfztN& zNGp-Uy%a#A+cW+WFlG+a01k7NcY)(ZHR>8|lR+d1#fUQ`>)pwS{D?=+^ZiP&miiry z-j4eQ+dl@Rb{&*-2m!C zM**bhP_$LV1dv3iqHy!Qo4~9rN%~`<5dGW_+)cAx@Y-g*y4Aw{1l`I{hPj(_hP5<( z@Ju%YD(i+>8N3vJ#<=Wmo&-s8ark`pa!cRs*xdN;o~CPJ)Lq^pYgBymzHoJF-cA*<8F_*y1iZ z(_{$1w4j%&K;xdzzcqVWa`km2U|#5yj>Y0_$=YDWO|7k!lBU6>9urBYOw&eOvzD2d z8#NPFgAxYf7a1Uo5g15=2}}}XrqLj!5@gXRAcBqJ?ZZv7T&gIRexF5j4vx!}W*hU% zfo*}(%m=q1a06s^IL>wI-I2)a;P;_Olt{=;&gR$^kuyiIVCU13#$(3zCA23z!maJd zIc-;eM5kv@08c-)dQ|I9OwvVI&0+C` zkomZp!;FBwkEFqP8Wu`wr5N`)7Z1O%hoHH?O4`>7vz#m5al!iVT(rbd4(lOu#`A;( zbGNhN6F)|O1dzjU9)S@A)@%rffqg!{uSd`HeUCie2fOF`DD|*2@BGw#s1ZNC6yHE6 ze>DItL)5L2e?7z~9+gNaWT|Bg0%O|ujukzb8S9{_>w@ip_BaOYgy0GIYzer*B9KKu zL6Ru|NelSC_fFk_+!71~KtMqRRt2^hN%L%u5;L8$lpQgq;;;A6H$~Ka&}OrDy?Y z5)Ok+w75~rfQHu)xn%0&%Nt=dVMa-4l2I%?=~L+olo&x^C2Mtk&XrDolV(Q!zcr0$ zO@Ny$HTbyjRJ6whddMdDNNzojZAP<>z~K=I)(Dqtx;>#T2MpVliy9{la0GcTGH3u3aYU zYtTr+A`Z)o$MMz-8ju>vksSVA?E@$FDt*{s|yKq=S(`T`1 z5F;8`f^Ds~?Q_~G)fW~e%vN^Pz77u2w!CTOq7~Hnx?$~N^XhLeeOJIFt5Pc77d5Y;`x}91BTaCjg z&s-~L!nM*E%3{rKrL7tC^+qqQnz~>)9zwVvmr$UgDxfJr5s}orD5UbwnT61-fCeD~ zCG)GUv7|%{uERb}>vSKrq6ZQb2FHKAfC?BRx6UzP%`Jh(zdt?LI8q^?J3ld5qPlTv%@5; z=xYO7oZ$IT3!g-E(Tvp&mrt_(c_gTX%>?8$FvfM1M2JN~gOoG@j(F)n0D|vH*jwXg z4Nb+vGMnoPyOz4eUm$tClsG%lY?A9RSemLtLEiDi zzPZ(SXjnF9=6KJ+Aa2~28@0sNCG38M;8rAgev5Q2fO)S5_Tc$URZ7dK^>VQAB)k75 zL;@qPzqz%9nhWD+fsj+F0RCtCN7(r=!40yI_os3eI|;f7!;=c>A-`?ktqc>GoRfsC zuG~Jng+s|EpyG1;w3dzFNa7m9c2pc9o1@{nTco|X{Wuz(f;!h)=HADIA?QD3Fb)8O zxDmUBe~&BvK`@CxB!#cFdkS)%D`mJxv%FzpOshT(KPc3$nh(#wBV0X3=nS$;ro-O# z^ZaLmLI$V|f(XxLC~E!ccf>J1dMrYc10(pLA7ku(OJRhR;{AHpKJVqAnuTx5ruSs5 zk+hA*B34S`31->L|A$i{(E!V;2A~or^^lPO-2^{G0+$>XC9oLBf$U|3O7 za*hBw`!)^0egSu0agrq3KB72~*6%Pu6qn3J-@+n?#mnTdW%wLkoXeiGkA|!Fnv{Q3 zdq?eYk$-TVop=81PvU`&kjO1&Q=mji>5m;775vyAQZ6)YdW`0_P|+7`?Y z-1B#VZM4ZM5fA57xRw)B58)kQg{~&iH(LIh(Ap!QS|-!;X|T(LK>gfBwz}j^k^$6? zUHLP=eWfyn&=y5D!_W1-v+&xb{|Z{)KwLj}N|T^H&35S9^0zJ@z3PMfW9u^t*(Q(i z^7d?OM+h}W=$qh`7qpkhz^2tlODY|~wyn?(*D~*K1jm8x_OC|8F?)q;uI*6XCD<>| zuyKje4%(I7FO_~c4F_|)fNgAN`%^duP%zv%Z^r%EF1VnM(Sf82i$o2&oN{Zx<4uEu z7)_OpoG?;E$xTl?>@@+Z=l8Aaod@hNB=L$1kin37M|D2W+emVk(A4aADY3tpVZ4Mr z;k6V|5-^BWJ3yr-e8oxt8iz;^#EjK5m~FqmYyP$V2}4cP4q}>d@yDC%GyrC}@>n;P z89v&S)NNe@GdNFe=EP)RgiDGXb@X`ppZ*juOG2?#?A~GWfI^J+;4e0uoPa>af|TLD z`Q#8#j){}^)X*b1&4DLDprb;nw^Z-q5+$7k1t5Yxy?AmsSg}S3GBA6dsuy-Bthets z4!RBJ1nNUgM*kwBbVAmKLU1^xp3igJx6pJGu&QtNVMOzDqX=55#Zfa4 zV!*)n#J@?zA5oXp-*c!u_ClmP1TR^Sjm#DUue!ekxN1!#ee6qsedz!LI3Dauo1#=e zHMwx(VdE3p@=|r`D?SrbwKjEKvcq_DVWE`G>V1! zP%gP`fv0qpK|CBwpOWYlxp3id4;Bbo9hU>W;A~2RUiuO(c?i_J4Z;W@p2Q-4tFdTZ zpi@$`p|D$lbHXkWY{hls>f4s>PjoUP3Xj7f={NQInvw%)@` z?~;BBqh8WNLJvCx>#8bN{j&=O81%LforW#f;kTE64TEnDy*rNJaUYh!)r50bny; ziS7GQslvM~S8N{<-N5A@iBfS|d9-D`<(DG>ft)H8?adtfF}NKgs5vGxiBzP<=f`0K zK?_|IS{n*wAW|iQ*%*>UU$(tYS>Bv|Y%Kf!+$Qsg^g5KuPQp__+G^H9gVG7*)rK<> zBX;{??#d^CP2LNQf_SLUJimp-%2^JF)8&14@44*u8bZfYOd|!64boATW-uHM{}jm& zaiP6WZV>SJ2Pf3JweQqOdBqB3HR;!${0r;K{;cxLyHz^3^VdGHjFNc6DQS&EWWKxl z2Q{Ltg5kq$FA(*I4Av$l&$OI^CWcgz@Y; zj3nOd$0%T)9WA}Maggz=(#@k|+U8;hN#;^`2PK2sL7CO_>DjExJXfHFx6)ZImxPkZ z$9*>fDb-%c6Lj&vY-S#|eT<*hc(;KK&?nZELPa2C;`Yhq_#u0&iu>G27H5WF%=Hn$ z51b=2#?qvh0w3Jnp4bdNC}t;(yH7eE0d754%G|@#6xP`3_ixJEC3zGX=f3=lC#cA{ z54$Zr;B^M795zb~O$Fj@MuE(5T-Z$P9T8{L=nttnc4)`T3AiVUp}{*3T0_*NK=B~w z=3i*Vspe5G<+_qVs)tOh;+0QZ94dBFxu$)Z=!H1*`djr4XheAC< z`>uEg0mxzMMDKX1rhBu1#t=B9Pfn-@fZa3k&aWhf+sC$c7Dfo^?zQs^nVxVt8uLK! zVP2TUtP-I-Ha6wy1(51<(cOMHnFoH_l(~#dCu9~MYE?!N7(w<&z5(U>f{T#hFhD=; zi~B+k)Z&d}P6^Nb3Fj{T8d7I_)rEF-}5 zK@fmYF0oXo8v?659CmaICX50C0P=P|hWlMhXe-we+O% zaXprpf|9Z);hW|o#q5E8_B0x7$b5qZ4bV3`f(cEb{r=;L;P%{mI5~m*=s~oe~8M^iNqR~U^JS`r~8d)O|XEEQ{gXfOp0Ped6|+8Q)cq7e6xc(VNW94p0b0|zh3 zT^*TwE@TityBB}gN3tHiu;JX?N`|AR`vJcc1W+LM!x37KPq*K@J)>-{{D+5&M=KsB zrZHm2Dx`yGK7>5n&j&zg&~gK_K*NC%H{nno`cGpGgbgGfK=;qDR6Wi{w4w z@`XxIoLaEuKQ}*Paxg+sq=hY ze~!Kr!FaY0=KemneuX^S{&>>bIGRs>KUqN`HFD}`VXf9R?Q@xzzkQE)*mn+mh8 zwsnOM4OzXbYeM=gjKm$rDaU<#+BuxK@%{zVqE8=eb7=%LVlX7Gt!uO6&^llww z*k<;vwn@r)%v8X$&T4Pk(bbVjmz15H&YCv@#8F>;yLcWb)6Ft|;~@2hW3!+({1Mp87@ZX3}cMlor0KT>~~D#HZwdDb0myjrSMda;E`k@_ETG(8+Js{ zi`R(OrkaX`Vs=G4w8={$vM+QjVL+TTq-Uu;2lXtba6=*}`(OxvAJ6)KKPl7Ld_m$g zq7Ul_hLmU)dDrr9l?@qdr&0CuJT#@Xw+67dn5G=M>tXSqha_v$Jx{{cOp2q~B%c42 z44cEeqS#mG*0oJ$HvK*W*-^K!FifwEKWP;4DDXd)Yw0NLPrKhizytNe?T;;Y!cZTA z63S5)Bt1;;H}zEt*ud(^0_R}p0F;1vX!QPD{T|nyK3AtBo_T@s&vqhBC*|UoEo&k=r`M9J#@uwN;3eSw9^#I& z{O6vL1o}eux)}|XFp|-wMLy$Zty#giM0>V+`AcL44jH4P+ZQ+2HFjk6c1Kz$UVTwPZ`sFmGhq| zn+#Fc%W^2g1V%YZIV^=AS!J(%V$mh|Io{tKYYnnaG!j)14jeQ#XRHr#%P)ND+P_jJ zXnH!t{oxQTz~c~H;3tq4))&he7@tE*!Vg>*sY#LWO%D*Cx*XxCYvf;BZ-M2u+a4%^ zQipqZ5}UrOrSAZ{ima%*IA(^Kw|w!_!l5(|sAFxwxF9EteBdQVSTTx)K&XU0A((9+ zgo@nKb*gQ(*K|n0edu(1oq1`~;A5cSqHrGGVX1-0G4d@J<4DkBBl{2zEJv%lfvF>q zY#7sEFmg^F)8f`bWMrE}I*rFAPFhZaAzeXK|3U&hpL}})8uoYiPCYUAojsiz29io8 z>dGpM5Q+*gF^6b%STCNMvi>l`2_5{n?>1}T*m{i{n*B@$#_aPX{Olp=RAfo*wPL{| z*W%A5J50;~q51JKGQEQ3?yu<+dZ;lbA$Uo47BvgT|)&_x3W zfzt$ltoY>zc2+RC80YVLWWx>GnVjWmQL>mZV!^dQELJHMj3D^KK5Z19b0*|(3k5I= z7?69_KU9)HQCMFY5d=tjygswG-!~CeevNBKr`>fIv#`+}Zek@{O9o^@&@FzDEG9C) z8@S^JVNn!daF&L`j31VQfN#2zwplT51iTm`!dP*e>*K^y3$kG;s%#p%r$oYDFb&u; zX)3g*w9mf?^Lv=3#UsAsDcO;~QCo9{4mxTYU6f`30jBawq^!q~=b} zX@xq)!<=*I{$H2n^}|GHcde}NU0tk_IRVlF+5_ep*A?%K_;gA_WbJtU6r4IcL3(}7 zkAB)JEAmCDPst)|m?+mem`DHR9QR;ePGyN^} zd$D=@_xqo5K40dj#6zDRJ@BkiV4~cZqR|BCGbc=^@Mz?5@fQ6eZRs$&eBRY&2XkA% z`mfb>x5jo(HbzDqzhigva%(9Eu0Nt3vMgtFM4RBB(Y~K3uS%$KC{55F=qt%PNv0bb zXeLumGFv|%cOyNQpWd(~V0}i0Qk{o+_>YkEn(Lh5L%X?|LwYn2J-+XJpEu!!eQM6m zwT)PhEW-}a3IxCf5qb{>DD+`O83iCff!7v~AHkBDT=I&T4YHO3ua&c66r3T~1$(k~ z!}?k9jf^BX;`aMEjj>F_hGDBAbXeCVima|+V}`9q8&}y(STP|aHWwsu7yy(QPuK{2 z#27+FW*R=JmRZ!33f7C05F8>4Oy$K7Grws3Ejnj*jMb@Xy;5y~Y}IOFIICgA2w0$Z zoM4wA_7QLjr>RpgvD4qwrmwS#R;1)+V+&i1OUrJg!=3FR&}CXQDN0CNL31id%2)}% zD4ozb5IwA!ivao>%~g_~CBGcb*m#K30Z`+Qzsu}BTgN8$;C6}8Cu0lXgD4sk>Q?auDGVzEDZ*e*JvA_YrtlH z4Sfmo?rQ^u;+&l7SU~(KF{$C(;W2n%zVw}m-W)>nOo&&cNyE(nH#Er0)`=nQ^ZI@T zZeaydvZa<-6@ida9WaIf>Xnj%+A9izFp3aJWtGPxfGD3j5|j{P2!l=8jZo=_C`f;R z`fqC#Rmkn(ybm=!MIzoCvIE35t_W)+r|&3%v#nHOzrJc~>7{gY zj2gnq&{L8YL2pc>48ttvxpsE6nUJuUz#MUf$WY2vR^e_#E*A@yZ<32`WkTU8W~o}~ z?Qz1yq&RlV4bkITcZSVch6zj)9N2V7Z=eixG10b-4{S}dTU{%bT~bLP3nJXc9#SI}^+O)z=CK{Tli*kjx zDmi3QRo>LnO*1W>%@I~qt<~G}JIviNhWDlJxW$~|A{&TYOeG3A>N^JkBA+< zpGP2|f*cWSL`;9Q`OEx^URJO3_}p)m2#*{M*wgHfhxeI!|}D%)?)0y@U6$kC-3Xtaz6q0JU}ST-b7E24?D!dMvy5fB~9MO~nM z(09z1FE|2a4jh0s%lmvyvmyeS7gTaM9ko4}aQ$^4j6>asCD#itQ2hiRjN;MEM9R(= zAdZA&PhhsIN(R;V;=*y!u3*gt7I>v`GdMidXmEIIjV*(1lwA;DDx4jZk&OpU=t}}- z%!tNiK_SjhYzhSf5+tUW$!n1I9ET6e>}#dQr%Ws|w+%zDRs(ocUaAP^snQG}a_kxt zpouNLkt3tQg4QFW3xWW?R3*=Ua7N1{4gL%!Uw|Lc|V4xM9H-No_?KFfGEe z8q&SzjFb+#g|yDY)J|wBUl)>KveI5Ev39gB!y*+2}?H6m(Oe z0Q0AGlYJ;%@u~@#OwK9nM+&G&jH&>|EZZy~yo#rqIpm#gww6X!B$9yid$K`6Br&nI z?q&K5aKLN{9196h-auiA%ZhK?27A*w3JTmiuHZM!ZaH;wimkgig@{F$*lyIK@r=UQ zK^DT!YbG&{+$rm=Sz3`MEukbS7%j_U*c+O*&@K)vA%ykIjVTIURut*GFx;Di0;3Fa zXJxI9%gG%8fSm&cWK>CL2zwOBS1cDhW&@%{TGE497O_cGvPEN=z&pLIoGTFWLC=#i ztZ7NQLtWCMSQ5hqh}P}mk3tze13+;>inqeru*e$%Mx##sV>l(YoJo-G90*l6Dy!vWqkLTMUaj;!#R;mrENGiarM6}vmS{oRJ8XcpcF2Oc-gp@p})tK(N zRU`r$#yEGBT3XqM_ZKnWA)}nnc4oZh2kvQ^}_D#VgYxVH|4()XCodVzl58F&Gpvi zk!_=@8d&VZrWAYK*nEfzGI^?4f*iC=a)Fc&QSYUbA@!RfkCcZS-W*!D5V>_EP9!Vb zQ!?3t60-=&3wMDJ^0!nO9r$!Kd0Tq$NVAGGfCg<&cV%Wi9xU&YuQf?k2`h!{6$7*g z!$BL6Fh?M$AqHDl8ro@al}~&f7-8He^>A_x%JheoSUgRJ%A1bzyXdumDGH;7%6%LF zpv0Ws5s^Q9^oI$BZ_iFDfztqAxd82g^ar>2;obf@-|WjE6hYcuzJMWKj! z1G42CKBOca1?}o;9XotYlB3@+szQLWq1TS68r0v=3BNG$EP?}vm*xF4^FNZ0cOQQ? zcJ*!2q11Q1FLAth0myj=P%lpRfzxSIpBphCMhA!4fHLBDiO%}?cJ&r81{c0b38wNa zE@?}`y)>?_P{X|)rA*sFnwc@SWyUEK#EhbX_(*_BOiGvxn$tt+;|zQgI+_Lspx2%5 z7BjbzZ1MDf^dNL+|Ei}Ddv(psBcKi7h=>OO?eml2-USTDKG?t$VPNzH#lpfxay3}S zM7>qu;RFJv9RV`|W6{@AOqOw0WzZYJ4aP7Ij=kQ*KX0V1bNH89b z2mx5Dwls-d$2~pV?QFWjju8FQCVA+oU`Qm|B~@@k1A^>3tvyQ07|N|wJJZ1R}Vk+^F*c43($%_yXQ9f5`D6yH!Xebed2OvVQhFO@tS(Sw?E-hJ5^%8+B4iQux zo7wD?5s?Ih3G{nyuy)HRLL*U}5+xY?CarlNp20gSL!6XfnAVG{_RMhOD&Yr#Rfu5~ zvJnIE!<4!YkFgG(XMytkv$*^JIb58w=x8&;m(6;O5c)I4o27S`F%cKQ=y|LkK#yfT zFS(l=6W9{4pW$N`DiDKrN~zeBz9h=#sdPR2V=61v&(FZvzC{tNY4Tc{n>ainpmsdQ z*d^3KhBwa=BFdn9F0|^oP^H7EA0quMsqN61*oHc14DDwC z?PPLU)HANl=SMIy2?KNq9ZWM#Wbq8sK|sK>ORT&pY~GSHThtnCyI$5P6QU4+fCvDT zAsC{G1=A{XiO*{iHg8!agTLzQKswao15dt(aP(yB-U|s*4YoGWgzo;P3dmb96@{`>?wnN9~ynL>TlfdRtQh zCwtrzq%?ElNwh{HaVouAgu(o}gTKX*v@&|+fkf+aQclQR?cjKZ2#7IchlfZW9&9EM zN8o#X!s=*!!Yh!X-A!iHw>HN9NEe3y`+j>JlYu9<>U0Oy3<0rF$n2aaghxC%ht2Z+ zZBbu}iflH+Cw^S;Y|XaS!Qb+XnD9HGXWL2RU?%;Bk(}S?bH?z`d^CaT1_|%7p#?o+ z2kr<6fw#@=`~JUOqEFdue{e#&>4tdx*^c|zV8rDhC_=-QS<6|KhMX0U!AJVpnNf9< z7&$GVi6yFA9jS&`sJ0nQz(i!0T2v%|UZzQ{7RzOYfTXAh0#*$Y(V<2J*%Yjmg)LA} zf`vl?5{#i(Gb0s6zqrkgi6Cr{s6fZj1Ol*BBoG5VUpeOcJ=wU|-{1B%>VD_+0ELH# zA3$~wZ;FDblwDF9Y&G%v+ta@+n9EG!v)zTfn0W4fUUYuQ^x7C9C}`5n%OGTiHi+mQ z73Ky_%@hht3u=@+@DQjuJM+b#N^#Vxb#uXvH3F;ORv;A*%Bl(v;r*-ey?)9U>moF& zgZ)+lSRLsj`A;?qLje{U6_Jb;#$#JNfxo zE_4d-vihUKA$Aomfea8V#skI^b&>ks2EocYZ$R{h^o(0)3*we;mjgox z9SR-VJ3@ws!cEPsVQo-G+ZIGEsG^ERfQuotJi7J4lf1sj?sFcT&pF2H5uC`3sYWQE zkyTitlcgz#!*-xteI`J7TXmPq_C{1jFih3nPG6DY%V4o?3z%*qCu4sv`Iyx zR9Y+xC-xbg^juD(S@F)70p?gdwDno3AZl0mf)WRjFtARtgJk&d7o3p&^cF~>z!5#| zSp%{sMv4gQ5mSZFKX_5N)`Q;_Rs>L46jDG{kWc|ZWELYJk|E1l3qTnZ#73e>sK}sL zf|K-J3N=F&if#-{9+Dr4NmdhlK~9NN`jJU#XR8Szz7$Kdl5@g{!$$Y6+suaP<;##m ze!#PuPv_CYwH8v@IU<6R2%;#gQB{hukYNZ&2DeQAtUOcEuwaH|8J1lSSl|%$;wa+M zSY2n+3eG}OU3)EH2n@n9DI|oKDum@`>L$q%O~{7((wY<<)m}5s!9*dHG|`*+UvaVS zvFm80|A*VbGP%njM5AoC>Ic1%?(6hCI*1nb6#=hP0`ldY7@n+$@U%aanm3X_=e7Yp z>sX+>yg$Q~q~GmL(0NbvdCzM(4~47oxHuWTouC|&D1#9cQY?Ugp|Ey@Js~89Pv-8v z?aoJh1E8}t$W^z;)2AgLzn2jac2%&?Te~7N)r1ix4)AQ~_|;laL05Nn$i`X&`bsyG}jzT)1H`?1m=)5I7y2ti7%ljU1R}Wm|_3 zfzDrNavb3L1_`KnIyxrTH{TqF*lyUzG-pT@JzI0{gVH|zd%ra?2aVZr*+jOT+@>un z$}ZI+9ja_UHuiC~U6{m8T(C-va^2j)Lpqe+_P#M1qL(S`=i>n7(L>!CCm{YK>AG>l zeVpLjvk>*LsGgz;Z>EdIaO?{}NKDvx0j<#R+d^juL=inV@mH3q$OaZ9MT&$pkVJ>I z;Wgnor2HQyAr*SJ2&rFM7j=;cH{Z7di4en=Iu$60^mGLdMY{W!z9)EmXipa5Qi^I4 zMUv8>d(fxBE7>{!Ib?=JFvpaR7S78xv_ zf2JaS5b4z~!QV1CqIhQT2xe017_nDmbk)(3f*5No50S0RbWXG#gQ z9ijl6fk2F6paZjy1g10;11m44n76^QYT|mx;^Q@)EHWr1w*4ter zZLN%r6m3G1gxzxrVo{B2Z8I%=o5z%RI##oG>bbd;qd^9W*k&y4D;|(Mj`bfd>CGKt zuhTe~50v(_dbdjtcqdi^efd#SJ^ANW9xQ>oJV5&doJ3M(EU{0{+^5Xbu+$7>{P&ky zPlS*z&wLY)R)J(Y!>#-vVJ;i87wh9eB1BRm1P+@YgXkfsN#CM}XQ5D0MHGyS7@~|| z42Y`)K}aM)86w3{Rahw$Rge||77INflC@`Bw5BI|1ew zy-lb`{@wN8>^pZ2DgIVf5ATU91E?aMw6A3}nKgJ#coH3^c-nD0Z1bd8K^d%Ds9{I` z|GWDCv-^55{(t^%@&A9~!~fjt`MW2WleLBOEJ);1j?YZot)M(pb@*&|4ECHT`n?}* zek+b=!aO)~K=O)*$^9@&2c^ra%8tj(sXX%X@)lKtNF@Wnd^!*|^jYn{iM>o~K@qA1*=eHPISfJG+_u4$uBR*{^Sc=AIFOf?;kIpr;)YIt$)*fW zlobk_69X4jho%Fx_fG3(WT9T+A>SVI$WRI&IyHZNtjTNq88_8Zchki9x4QXu`I;x} zop{q1zsSJ$GtyB?X*|nIA z!!X->vM4BNh0~cqM=em@lOk=kG1_KpB=Aj$&CuJ>(}fGR1$Ji!h*j1m7#KhyhKX|F zNn`(8o7y;=t@*HMepS}wI*bL20+Izlrhv>o1@HjiG*^h;2jk=xk6<0z`JLVy_Wk|H z0jVx~QAq$O$}aQb&mJa3AtXJ#93GKI2&_?6fXIXxJ>A^-0jpFBAy8XkM8TId=WvFv z*G%Jlz$euGLt`&KS1hAJI82-Ix^8mit`y5naMoP_w>c%+?Z%3-H76T6xux9X>E4`d zw%NNko0Ef-+(7B(Jiv$@hTP~(B<_eD$U;qKvxfGD#p&ppFg8PT$ofZ@&+HyY`zbLX zpsBXm`#-l+yIZ+FsMAnAULLR0>+_fzwKsNkx3Jp~#T~`&xIT9MCOz9dT~CaV{xbgc zgM^F}0m~Yfd1K^{cI6yP4MNr7rNqJI=eUJ@g5G)ywf_ zlo-Z-D0}7jO*Lw^lvjOua@04~D!cc19}Gt>2~TiHZR?Yn@5fk}+{7UwC&Z$BBe_hk z5bTF`f^{L96#3nzt&pNj2s~#Mlvhp z54<}d9j?DNv^oIg927*TEPD9p!BC4_la5^e5G;a?%O)l2N=AV({*SB*e zkCgJnHE_1W0Rx5eN?{U3L`v2e`I3Wf+n7(B>Rsn7qGC1JxD4gmz8w+nn1+~H?KZO= zf}?mfV}`M+Qbd4`_+fR z27ef9Fd_N+K4>1~@DLMWNhbU~1h$@AUk_DW$#Q+@B%M6MjigUSrJsCDxkU6fFxq+s z!qJ)!if5h6iN5S1=ME7W6T}yJz)1+k68!K3pLvLah{4!|kV_mWjVvxDGPa7PD6Fx9 z#sV=aK^aL16yjwAR7lU2=e;$#PMGUL5&-dG=1k4C*g73{X^QP;NrWHhS5vt8q^3ZB zMhxtwJe9_`v9*i`gc9LkjLnjZQ1SRgxuBXF3sg$Pp`mgUm*SvGgYYmjh<30~j9&H{ z<2!Y*fp+@@SVAdSAQ!3(3PgnsTo5Gx1W4u*0ta39!+y}HM%v{iw%t0{)z7y4we8WC zf~DhmdtJ4oe9rYqi<@(FSq@E=H644J)W*~Sx8C6QODM)WGnyu$QecwB2T0+WzG?xC z&`BZfHG#!6!ZZ=0vx=xCOw?dOXj3!@5-JNgykNMNK4XpZcWDvezh#*@Glyd|Oq`H1 zFhG$d1!9aYGfXzC4M37ak`O{GP)RBS14bdjM!^CU=(H>v3Tmx~Qll)?!KPZ zDoX^ml7b5aM$wH(M&$tm83OlUSpYhWmP%@g{e@lZ8vFj^3}l=^?ch;d%q*pW_lz$*hxhvIV$L}L+v zra0IeA)+RN8YUDCIFK+j8KB67W*T7)7)=;rQszkpWEEl)NeM+kRalCm$TA?tA<=~) z2^ji&6*%d|)@CN<@z*pQ8?w1G@HG{#099NA^{*OMS?7S#W98?f#4|#>$e)Dn}oMIk7f8+ z+7D*~U3%wLyC`?UE$zgs6tEYW3v3K12^9!B9w$d=ctD*+iYTxew`GWMv8^>h4_uH> zeIS8k%?O6zF%Rr2iJ}p9es=#n40sy3q`LEx10;hWNRH?L!VdBeZ1l`A@r&#T!(e&@ z(C;48BZqFo;;fvI4oozZW|(&#iU#kYH$fmSlJE^CB8!rUMg~+?DQe8C2pw1zAy^_s zF8bNiA}Ej>C}Sohtz^JLn2gAZVsuNDeJM2R7~3BfKNeaubW zgDos}3?`ihK-8g1OCxBvl*M5{)C&gRZgd@x=ETg;H$o$AszL~C6($GS03;B^UuWPC zhvfP>diI6*VUu(&uO8boO7dvvnm|w#?@BNgSvda}XL(Ak)qH}pJh ztY+;|pRcy!tI53R6@^C}AKNAhz;4!=FKTQ-OPXeBeX5Fviv>5dFKI|@Xt~|B&YXHq z>wBB7p5mq(x&d;ySfxUY&W(pz`#3ze*KYdlc}(Y$5|UK0u}E*$lz0&UKN7xwn4r#X zA0UBZC6J^}h>a`jy?{X6-H14KEO;Ip13#*Vnn?Y4R1z^E2@(M7NDkjOJRTdw)LkNh z@qr*GrVN1~jEankThtJ!F@FEI;bi?kVe<}X`q#XQMIYK8C#4evMCkjE&Rekd!pY1! zUggKl5+A&B(051E$3*cBK=*|Kuv)l0X-$&!K^-74oMViwk^~ar)J?oZ5sNo}!Lcm) zoiNUXC$`Y{!bNN-cyWT~8k9#Ur4CC8S_=jOBnGmoAdD77V2l84sL>fdRzi{}D5@Vx z+PbV1yOCxiu4IqpO%u2dH!*=j)$Z_nU6m2jC`$9oqrb zI=uTMQAy1U1NaUxPBEnVvk$0kstP5Q2gA4AJ5YO-Ty!21D_21uZEjkqTq;xZ4a4|$7;!@URQVgRP_K7l{#5nx4Ns;CJW1F*zTX%odI zb=WLBJhFS*J)#^l1i_DW?0|7o`tobnn3v_s$3Op<8BgL9eyw_}}hvuR3J73mdajI$Nhb0-%A2}sB z)jFvD+jt&Nw4K2F!1i{?l7MOf)3%on_#6jJmZ2u$02Eo@ zMBAJKt=xh&#tC6ltSHcgYiLq7?%braVUrCqG}r5vxx&UTPxEwNT{7S2vT7PY)7+h? zc85qAV82n|SEI8F>0XZi667heon{m=%CcW*;&r9t{|Lkqx!jk}O%vTt_8MlvRR) zs;YRw-6y>#wtOFNjHkTVw|$z>Ayqy>FR0NCw6uhN-{#n6^fWRf07#K4nUKaTAq~S) zNoM-Nr$`YRhN^t*jyRV&V6r+4NF;kJTWnLDWaV{CX``(ntSc5a zGQ|XeFyrrKQlq(On0XMc8x+MB<7CkM3Nmf8V@e2uL146qORcj2Tnh>s&pgk~ETOG! zl43%k9+eBcgv`T1iXDR&OP3x&We>IfR=*GR?_k;6MKZaxaH^=QPz&SA3 z0XRYbU9caZcZM^aV9&fxfHdt~{B*xf6xQmfU6WX?L`DH!_X-<*7bmPZHUt6GGzh_| z>?I*E84=B4A(&;kB@u%ZViqwhxRAEW>f)C$(R8j%vtHedHfKoJ8ZffS_zituE=z@w zL!BqgVp_)VLKgH*SWyfEBhMuXXeq>eIDWPVHy(R#r$kfBmxwur>^L%tk1k~AHQ1TV z<=I9K-;va&-QGjEAOzzTv;z2WoT;srt>FSf1K{pv#(5z-+V^#{5>t+K=efU8}4e%vR$>gjt&j~rK7w&vkF^m&?K z0jL{=T?z_N{m2q47{O79ssf5d6-H=B!o)!Y(-e#8xr=qa8bpaKOkj7_6egIYnn^^gg+MU0pICx2vSck36cJmgl3bFcA!S6BA+}xQ4~mcoCO3iL5c#6~ z2*Sk{kDLyJEt%O#))P8V$7*L?Y{6xK3Mb??hVFg6{|-9vJ^bQuebv7LPLPsuwth33 z=3&3eA>H1)ki@xgdoRoK1opo`sR5Pe;%sYb;8(P zTm1R_VUptN^JU~T3ughFShR%@D2xIrLN{FMh32Vg(*al{QrA&Krx*`jbtgi2 z*isB#68W0$EECyOY=uiQ- zL8*~MFKSXH9H?RuNNp{+5;E9J5-%09_%5Xc<%Tk^D?nv>9NtoHp+$^~9J1U%TFTvK zvJ4D9?$2u(mUmYhRTQdC2nA)`bxPNkmp2xOcEa}y)x2Fgef0yRZ>9Gu#O)fC1_|KJ zM83*HK!i>eC=myB18;`n5ENO2MD4p{^sH9I1}1WBV4?Wdo~cw5&K}i**okWtYln@9 zVGl@4QRwuVOn|vz3<7HHs_2Ysh+x4746SUc&{A#!fT87Bwb?sE!bVrNV^4a;-U^Wg z51c|H=oubXZMGvAk#Esu42TkBT!I$qY^Qz011ox1I4!Y@+BqSg7dzT?d71@SzZh(p zIVBi}J)Bqzt_oAHeX)QPt`d+aXAu;M3L%Bm6d**N`n{@EDL5&i-ac5M`5vxCYlpx_ zMuBG$h{_z|?v>2*05BZ|vKZHzD7~ENA3H}Ipame3gH{p~l%;s=X?+0db~}>Af&*p( zXqq(GLho9d#}fh+(&9HZbAg#@ArdPo9MaTl8&3F0Gp>sqkUi%Qf$;a|$olB3Z`p2i zvq&0<5Z?aZ#`oO%=G~pMc^Pj-uX-ht_PxD7vm|dA9lo;LoAB^z$$4&4;l@~0-+K;B z));JtlqjO}S$R@cHG!jGk!MdK44P@=a$V3jQZ718*i;lS!z9rOsjou}Fm?`PJfPYg zQ$2R@v90QgQ+>-+N;1IpZ+6f#+x{}eKS24%N&IiH$sr3D(lA6zZ5C5vg@#aO30(j6 zF%R8%&9Fj~cK}eSQnDjVnV8H+Hvb;Kd*Oe(een8uN`B5)cX42lwWGBJ75 zdnv1!F)jY)8rHC|Wy_Y7Tfv4bVjzFg{|UCczmtPohSH0LsrUZ}!+)RXp76mfKA1A8 zfnq1Zd*{UgQbqyuYmHzW#NX(qoI@EZNVq8^Vxl0%F!~||`^Q!fHT2ju%a(Rbo(;k! z1L^ZnAsGPr^Jcec#X!$|I9wz+CEH7SOctzC!89)muKs5I3*cyZlAW+j=AWgdV+Wrz zoSzb}uPZ!Dn|_MuY}MSW?(4B+cXOS^FoiKY%N17+^REE11Bm2UsSv1%C+alh8qQpI zagO}R5>?oom|uI^qH5!}mnp$?IiG=46hTo?iMOI>BeGxrDPiRSggMCvu==LE1I2^E z>f^A(2}L>(vn@~{z&oHeZx+&^XOq@i@RN=d={iArwGQ(VculwRC$u&^6jh2wAgGW= zKuDmnMV(s}7>Nb~#SsA+2s_fG7D)sdh7}{7U}Up5GF(avwyK~k!3Rijn3FXUu*6Qq zfdE7(YA|giQ3&iNpoKRe8X)`3xKz~N0Esao*L{2Eporp*s(Uk|^7g%cs2@J0*mflJ zxXdpsx_9Nw(mF5=jsPi%gGh}ub|wU&f#nR;1q#U23|EhP-D3*q+2Etd;{&ZsLoSx2 zaIt{iUmO#taWFiKGVN66FCyb`~`PJ{o7rZI$=IpBOOP0p#C4vF{_y*SNiD;4}L*673KYK%0 z3p)(KB^IT&7cwGAQH5ayk_)fZBX`sfnd!9o&dgV<6Q$V&^v8wD*_xi5ONi0s-8h&@!Q;Gs0Dh(pIg@|TYdU$O`#0U`T7j2rBBIIh~ZZ4{r zG!#9rk*TKD0c<-KC@q$)MztAey#}?nXQE9)0b&$gMNs5wxe-WoPH_)kb@f=#z9~9r zBAo^kW<(UDE7jF>bhO!7QoWGdeaCc=j2#=J0USJ5DiaF0fyeq5JP%|WqqGQPc`Rw2bl3}^$Y6JGOr158+uFmG z5HQ&+E=dbU7&B^9X^`6Nn;JGLO+>9(Br7Od2t
EJHF+-`?y_`EnkH^RfQHEjB#_F;DZCt& zW<$Gd_bt>{PuJdC{W32$CTns~{(2L(U*t2_mIHDk_bl$W&F4QCR?5ib)ESk4x=a z*A^@mTa1}HGHnuarwqnVE6Q8|(g?+X3k)m>bg5`d!!TjX)z7%Rg7lqK9UiQ#eT^#} zH^^&|^b3LFonwd~X`$NsJX<}!5e*Z?E6t|IVjfg?Y0rIdI&ET5Qco}63mtuCW?0jn zs6dAO^w*5`T%k8T2cjDqE0pWwN$A2)EyDaN9xOArerC5eRB7-hhjBZt?!O+aQrAi> zb^(b2!0wvoJMpo-(-wd!Pyld%bTwPwpl2Il6*_N3#@(%rGVYpGRLwY~g2MrV2?a=H zOuCSW@eqgt1tdUXqA`{X7FDpaQ&?cS(SdLcIuli~w3MV3EunNcGb0OwN?g&Yb3<^h zty3WlAXHky8WKrxeqF;jiOb0OPg&nRo{TfUyzS{hRa6#zs*7#*H%un(w8l_i4|2(l`KiAMm+CKM}@ zmUHg66UaX#HKdU{=%j~-hlQ%tZXW~=4}jCe8Y_fnMN}Xvz(8af6jCeZ3Iyf#2deCP zsAd%$Kv)s5L4+tGr9qCDEG?DeRiz5(S-LbQF(ykyPNNbQ`jN*oa z3P?>k9f{jyDVZcNV1!bVLBkCJK8y^JV-$plFd!zIfOl3&tU<;kG-{+QD6}K4XnIvk zsnnTZHGpu1O`8T8b0oI?dMT+x%5m?NY3{>^P?pMFCba+vYWWbg`jyzA9ra#*Jh0n>f9SnERL6V#~CN#^td&R*mR-A=pdX#RF(k7 zJYnE3fCv5QMThiv;DXdB5mBE;|mC5NM3@9j4>Ka0nNYj-2p#*L?^7%0BacqNP4Gl z6X5(4Y+I+q*4t(j9G>IdUwC@uEP#}cc|XULuNa>CI$-&5!x ziS7bGh<=qwaZfWMcFF0*WO4_??EhjLOgRU;ztj)W%b}zfNChgWGJ8#s{sZBom^^~P9;FLQRv^;G zl9sI=nOuUkvMkEV2^JDoYGacEag(A#^lfO!V_8t~Bz}K}u;TayFW!!@>DXh*&xS?= zlX<$v8QY}G2Om+GZw=)wf?^$<=g++!XEj*F1|~45vO*w2C75_bzvZI?+l<9BfsmWJ zz~vPW!`1xtzg9t$j0|=HVM#K{zIZeJMISKFa zwX&SPPoo)E!%P}Xun-KKL3wiAl@PkfSPNRah@+sf0)oBaVzmu|DOP=@2^$+~h|bi$ z2pWJ#F&K%F$__MUDFK^O$Ov3v0&i`wRcPf6>QQjeqvqE5rt*5Gn%2(RQ0caXt0U^5 ztrumGdiwWy;{b~0a(JrF5-ftYgUnVOhR8hJGd8Gd4KRRd46%T~vw9gh8e#}Q7Dfp# z-dV^OS#dnAs5Sttp?T2&q$rRXLP8uWSfXMm+jIpBAT}Gwb*M9emvN?>T^&d>mh*CB z09XqbeMm@i%OW;znVDk4L1nm7r_Q72_8FHmG&{dvw+45^cG@~Iyt4(m@+F!w)^CP_ zzKD`2`aSAIu@j03?GZrfri#|7tvKyus$wK!1Fr~gsasGv_8KH4w%Pq7t0{x0N-aG@d8u{1&mcHngY literal 0 HcmV?d00001 diff --git a/iotop.spec b/iotop.spec new file mode 100644 index 0000000..88ce274 --- /dev/null +++ b/iotop.spec @@ -0,0 +1,73 @@ +Name: iotop +Version: 0.6 +Release: 19 +Summary: Simple top-like I/O monitor +License: GPLv2+ +URL: http://guichaz.free.fr/iotop/ + +Source0: http://guichaz.free.fr/iotop/files/%{name}-%{version}.tar.bz2 + +BuildArch: noarch +BuildRequires: python3-devel git + +Patch0000: 0000-iotop-0.6-noendcurses.patch +Patch0001: 0001-iotop-0.6-python3.patch +Patch0002: 0002-iotop-python3build.patch +Patch0003: 0003-iotop-0.3.2-batchprintutf8.patch +Patch6000: 6000-iotop-0.6-splitline.patch +Patch6001: 6001-iotop-0.3.2-ppcprio.patch +Patch6002: 6002-iotop-0.6-aarch64prio.patch + +%description +iotop watches I/O usage information output by the Linux kernel (requires 2.6.20 or later) and +displays a table of current I/O usage by processes or threads on the system. At least the +CONFIG_TASK_DELAY_ACCT, CONFIG_TASK_IO_ACCOUNTING, CONFIG_TASKSTATS and CONFIG_VM_EVENT_COUNTERS +options need to be enabled in your Linux kernel build configuration. + +iotop displays columns for the I/O bandwidth read and written by each process/thread during the +sampling period. It also displays the percentage of time the thread/process spent while swapping in and +while waiting on I/O. For each process, its I/O priority (class/level) is shown. + +%package help +Summary: Including man files for iotop +Requires: man + +%description help +This contains man files for the using of iotop + +%prep +%autosetup -n %{name}-%{version} -p1 -S git + +%build +%py3_build + +%install +%py3_install + +%files +%doc README +%license COPYING +%{python3_sitelib}/* +%{_sbindir}/iotop + +%files help +%{_mandir}/man8/iotop.* + +%changelog +* Sat Aug 31 2019 Miaohe Lin - 0.6-19 +- Type:enhancemnet +- ID:NA +- SUG:NA +- DESC:openEuler Debranding + +* Wed Aug 21 2019 wubo - 0.6-18.h2 +- change patch name + +* Mon Feb 11 2019 wangjia - 0.6-18.h1 +- Type:bugfix +- ID:NA +- SUG:NA +- DESC:fix prio field for ppc and aarch64 + fix data value unpack with latest kernels +- Package init +