perl5/auto/CPAN/.packlist000064400000004717147205023560011114 0ustar00/usr/local/bin/cpan /usr/local/bin/cpan-mirrors /usr/local/share/man/man1/cpan-mirrors.1 /usr/local/share/man/man1/cpan.1 /usr/local/share/man/man3/App::Cpan.3pm /usr/local/share/man/man3/CPAN.3pm /usr/local/share/man/man3/CPAN::API::HOWTO.3pm /usr/local/share/man/man3/CPAN::Admin.3pm /usr/local/share/man/man3/CPAN::Debug.3pm /usr/local/share/man/man3/CPAN::Distroprefs.3pm /usr/local/share/man/man3/CPAN::FirstTime.3pm /usr/local/share/man/man3/CPAN::HandleConfig.3pm /usr/local/share/man/man3/CPAN::Kwalify.3pm /usr/local/share/man/man3/CPAN::Mirrors.3pm /usr/local/share/man/man3/CPAN::Nox.3pm /usr/local/share/man/man3/CPAN::Plugin.3pm /usr/local/share/man/man3/CPAN::Plugin::Specfile.3pm /usr/local/share/man/man3/CPAN::Queue.3pm /usr/local/share/man/man3/CPAN::Tarzip.3pm /usr/local/share/man/man3/CPAN::Version.3pm /usr/local/share/perl5/App/Cpan.pm /usr/local/share/perl5/CPAN.pm /usr/local/share/perl5/CPAN/API/HOWTO.pod /usr/local/share/perl5/CPAN/Admin.pm /usr/local/share/perl5/CPAN/Author.pm /usr/local/share/perl5/CPAN/Bundle.pm /usr/local/share/perl5/CPAN/CacheMgr.pm /usr/local/share/perl5/CPAN/Complete.pm /usr/local/share/perl5/CPAN/Debug.pm /usr/local/share/perl5/CPAN/DeferredCode.pm /usr/local/share/perl5/CPAN/Distribution.pm /usr/local/share/perl5/CPAN/Distroprefs.pm /usr/local/share/perl5/CPAN/Distrostatus.pm /usr/local/share/perl5/CPAN/Exception/RecursiveDependency.pm /usr/local/share/perl5/CPAN/Exception/blocked_urllist.pm /usr/local/share/perl5/CPAN/Exception/yaml_not_installed.pm /usr/local/share/perl5/CPAN/Exception/yaml_process_error.pm /usr/local/share/perl5/CPAN/FTP.pm /usr/local/share/perl5/CPAN/FTP/netrc.pm /usr/local/share/perl5/CPAN/FirstTime.pm /usr/local/share/perl5/CPAN/HTTP/Client.pm /usr/local/share/perl5/CPAN/HTTP/Credentials.pm /usr/local/share/perl5/CPAN/HandleConfig.pm /usr/local/share/perl5/CPAN/Index.pm /usr/local/share/perl5/CPAN/InfoObj.pm /usr/local/share/perl5/CPAN/Kwalify.pm /usr/local/share/perl5/CPAN/Kwalify/distroprefs.dd /usr/local/share/perl5/CPAN/Kwalify/distroprefs.yml /usr/local/share/perl5/CPAN/LWP/UserAgent.pm /usr/local/share/perl5/CPAN/Mirrors.pm /usr/local/share/perl5/CPAN/Module.pm /usr/local/share/perl5/CPAN/Nox.pm /usr/local/share/perl5/CPAN/Plugin.pm /usr/local/share/perl5/CPAN/Plugin/Specfile.pm /usr/local/share/perl5/CPAN/Prompt.pm /usr/local/share/perl5/CPAN/Queue.pm /usr/local/share/perl5/CPAN/Shell.pm /usr/local/share/perl5/CPAN/Tarzip.pm /usr/local/share/perl5/CPAN/URL.pm /usr/local/share/perl5/CPAN/Version.pm perl5/auto/CPAN/Meta/Requirements/.packlist000064400000000335147205023560014455 0ustar00/usr/local/share/man/man3/CPAN::Meta::Requirements.3pm /usr/local/share/man/man3/CPAN::Meta::Requirements::Range.3pm /usr/local/share/perl5/CPAN/Meta/Requirements.pm /usr/local/share/perl5/CPAN/Meta/Requirements/Range.pm perl5/auto/IO/Tty/Tty.so000055500000422610147205023560010767 0ustar00ELF>@@8 @$#tt 0|0| 0|  H|H| H| 888$$ptptpt Stdptptpt PtdqqqddQtdRtd0|0| 0| GNUTV6tѩQQ2@  245BE|qXoJ;d  eV. 4!p}uNk, F")<   ^ ,E7__gmon_start___ITM_deregisterTMCloneTable_ITM_registerTMCloneTable__cxa_finalizelibpthread.so.0PL_thr_keypthread_getspecificPerl_newSVivPerl_sv_2mortalPerl_sv_2pv_flagsPerl_stack_growPerl_croak_xs_usagePerl_croak_nocontextPerl_sv_2iv_flagsPerl_newSVpvn__stack_chk_failPerl_sv_2ioPerl_sv_newmortalPerl_PerlIO_filenottynamePerl_sv_setpv__errno_locationPerl_mg_setfcntl64closestrerrorPerl_warn_nocontextsigactionsigemptysetgrantptunlockptptsname_rptsnameopen64stderrfwrite__fprintf_chkPerl_get_svposix_openptPerl_newSVpvgetptopenpty__sprintf_chkPerl_sv_2bool_flagsboot_IO__TtyPerl_xs_handshakePerl_newXS_deffilePerl_gv_stashpvPerl_newCONSTSUBPerl_newSVPerl_xs_boot_epiloglibutil.so.1libperl.so.5.26libc.so.6_edata__bss_start_endGLIBC_2.2.5GLIBC_2.3.4GLIBC_2.28GLIBC_2.4 ui U ui ti 'ii 2ui 0| @8| @| @|      ) . 0p~ x~ ~ ~ ~ ~ ~ ~  ~  ~  ~  ~ ~ ~ ~ ~ ~ ~       ( 0 8 @ H P  X !` "h #p $x % & ' ( * + , - . / 1HHn HtH5Zm %[m hhhhhhhhqhah Qh Ah 1h !h hhhhhhhhhhqhahQhAh1h!hhhh h!h"h#h$h%h&h'qh(ah)Qh*Ah+1%j D%j D%j D%}j D%uj D%mj D%ej D%]j D%Uj D%Mj D%Ej D%=j D%5j D%-j D%%j D%j D%j D% j D%j D%i D%i D%i D%i D%i D%i D%i D%i D%i D%i D%i D%i D%i D%i D%i D%i D%}i D%ui D%mi D%ei D%]i D%Ui D%Mi D%Ei D%=i DH=ii Hbi H9tH&i Ht H=9i H52i H)HHH?HHtHh HtfD=h u+UH=h Ht H=e 9dh ]wAVIAUATUSHrh ;;H(;HPxHJHHxLc"HH@JH)HH;El$HMcH@N$I$HpHiAD$ ;% =ID$L DH@ H)H;H (AH;ILHW;HELHH;ILH%;HELH H;ILH;HELH0Hi;ILH;HEiH([]A\A]A^DS1LH;f.;)HHHHH5LLH=#T1 ff.AWAVIAUATUSH(H\f dH%(HD$1;;H(;HPxHJHHxD*IcH@HH)HE;EeMcaJ ;H@H $J@ % =3;H@N4$LHANj;EuMc;H@J@ % =;H@N4LHR;1A1fL$fD|$fDt$fD$Ht$H;HyHH;HdH@J,;U;HhJH,$H(HD$dH3%(`H([]A\A]A^A_H@JHDx ;1H@JHDp 1-AU;H@HcHT$HЋ@ % =HT$;H@H4Ht$Ht$H;L$AeMcL$H@J@ % =tW;L$<;H@J,-HH;L$bf HT$H@HHH v;;L$H@JH@ H5;QL{1@AVAUIATUSH2c ;;H(;HPxHJHHxLc2sH@JH)H2;EfMcM;N,H@J,6HH;L` ;H@@# H3HM;LH>Iċ;LHH;H@Nd(E@upIl$;;HhLH([]A\A]A^f.{;HhpH@H@HlMc%of.;9HHnyH5 FLf.~ U1SH1HgŅx;J+H[]ÐHaa 8t83HH=@OH[1]@HH @H9t#HJHOuHH)HDDHxuH)Hff.U1SHHHdH%(H$81H$txH9$tDH1HHH}1HDŽ$H$t2H$HH$8dH3 %(uHH[]f.HfAUATIUHSH1H&D` IEs;=_ ;L}uq5_ ;Hl}uF _ ;iHHH1#H=w1}tMA$y)N_ H1A$HOLGH[]A\A]H^ H=,CH;H^ 88H= MH1@H^ H=BHp;YmH2^ 8RQ8jH=cLH1y0@H^ H=bBH@H] H=QBH;HHH] 8F8H=LH1$HY] 8x8H=KH1H9] HHAH818H\ 8Ru1;H1[]A\A]D1H=K218HH=LH1fDAWAVAUATUSHHH-i\ dH%(H$1}}L8L|$}HPxHJHHxLc"H@JI)LH}Aj1H5@HiHHt3@ k< [ D$(D$,Ƅ$H$D$(HD$(Ht$,HHHt$H$LD$(}$Ƅ$H@ H+D$H}Lcd$(jLH?}ITLHLt$}Lcd$,IF3LH}ILIH_IFA$I!%t‹}DIT$LDII)HLH}ILt$LHI^}IFH\$HL$HH$dH3%(H[]A\A]A^A_f.?HHH@H5Y D$(D$,Ƅ$HY H=^>HfDHD$,HD$HD$(H$}(DuY E3D$(xHt$H<$H}z=+Y 1(H<$Ht$1E11I LAEx t$(}D$(D$,  X H==1ND$(xHt$H<$HU }fX RAp0Ll$0Lt$pAAƄ$ADH uHDH HHD<EH =LAD$@1ZDL$L1E@H <71LHZH=L1?D$(xHt$H<$HFEH <L1@L1EH <@1LHH=L1D$(xHt$H<$HuDL$E@LH *<1FDL$L1E@H <#1LHFH=L1+D$(xHt$H<$H2EH ;L1@L1EH ;@1LHH=mL1D$(Ht$H<$HX@Hff.@(HU H==:Hp;D$(f.[8tH=DH1D0U E두HHz %WDHT H=9H8H=DH1VfDHHC80DH=D1}2fHqT H=@9H`<c8|H=CH1 fDHt$H<$H.fHT H=8H:8 H=CH1fD}1HHfD}HHpfD}Ht$HH{HD$H57HBff.fAUATUSHH-R }SL8 H 8HH81}A$}}HH5g8H.}H?H5_8H}HH5R8H}HH5J8H}H5F8HX}H}H598Hy}I^HBLH}D1H}I/LHB;HH}H}ILH7HH}H}ILH7HH} H{}ILHk7HH{}sHF}I[LH<7HHF}>H}I&LH 7HH} 1H}ILH6HH} H}ILH6HH}Hu}ILH6HHu}mH@}IULHU6HH@}8H }I LH%6HH } H}ILH5HH}H}ILH5HH}1H}ILH5HHo}gH:}IOLHo5HH:}2H}ILHA5HH} H}ILH5HH}H}ILH4HH}Hf}I{LH4HHf}^H1}IFLH4HH1})H}ILHV4HH}1H }ILH(4HH} H}ILH3HH}H`}IuLH3HH`}X1H.}ICLH3HH.}& H}ILHo3HH} H}ILH>3HH}H}ILH3HH}1H}IrLH2HH]}U1H+}I@LHm6HH+}#1H9}ILH2HH}1H}ILHa2HH}H}ILH12HH}H]}IrLH7HH]}U1H+}I@LH7HH+}#1H9}ILH1HH}H}ILHp1HH}H}ILH@1HH}1H}IrLH1HH]}UH(}I=LH4HH(} H}ILH0HH}1H}ILH0HH}H}ILHZ0HH}HW}IlLH+0HHW}OH"}I7LH/HH"}H}ILH/HH}1H}ILH/HH}1H}ILHy/HH}HT}IiLHI/HHT}L1H"}I7LH/HH"}H}ILH.HH}H}ILH.HH}H}ILH.HH}{HN}IcLHY.HHN}FH}I.LH*.HH}H}ILH-HH}H}ILH-HH}1H}ILH-HH}}u1H}I`LHz-HHK}C1H}I.LHS-HH}H}ILH"-HH} H}ILH,HH}0Hz}ILH,HHz}r0HE}IZLH,HHE}=H}I%LH51HH}H}ILH1HH}@H}ILH+HH}Hq}ILH+HHq}i1H}ITLH+HH?}7H }ILHn+HH }1H}ILHD+HH}1H}ILH ,HH}1H}ILH*HHt}l1H}IWLH*HHB}:1HP}I%LH*HH}H}ILH./HH}H}ILH4*HH}Hq}ILH*HHq}i H<}IQLH)HH<}4H}ILH)HH}@H}ILH{)HH}H}ILHM)HH}Hh}I}LH )HHh}`H3}IHLH(HH3}+1H}ILH(HH}H}ILH(HH}H}ILHa(HH}1H}IzLH5(HHe}]H0}IELH (HH0}(H}ILH'HH}H}ILH'HH}H}ILH~'HH}H\}IqLHO'HH\}TH'}I E& L" 4 1 y@$ . (  . < !j_ j? @! O. lG.  L   ;  L LI3     #3   S :R5 uT#5 <U#5  V  6(v i5xy n yE { zy c |E !:y f -@f );0761E(C "EG11FDG j L'0)H H Zmm$  Z )"h #p ($x u+'  L k@  L qk*!Em4  L !J :' ( y@ P)H Z L)SJz^yh> (?f 8 7: &; ? A y 5$B y wC G 7I &J wK Oi 7Q &R S y {>T *U a c ( (d (^eivg Y G7[ ( V]f +h  l ?n &o y t5 v ( 6w y xE p35 <I5D_rtL5V1i @p!;y y L $  A+& y Y( y * y i0 y 2{ 5 |["H#yE"P $ `ZyZ(E S  H*&# v. 1 y 4   L@:%;%_!'$_>2 y57 y; y 9 .u 2A > zM j L M|0o$2k 4+ 7A Q0  4  7v 0 ~& >A9 <9=> !9; ;      '   #)   7   5:   &   u ) 4 ? J + U  `  k  v         j"9 4 ! :{- 7  j;  [< . ! L -. L 9> L =Y # > k0Y :Y - L =.W H<0 15  z = ;> @  'A iC y$ E ( J 0 y3N/8 0%P;@ V[H /\X "]h i.jW x Sg L _w L$> g / y &> g / y B  y !4 ;!6 y "!7 y   "-_3"._ 3#Y - # _ ;#  #y 8# 9 $b %$d _ J$e  $fy $gy )$h   $ :$ _f=$ $y(/$ _$D'$F _!0$G ->$Hy 7 %i 64%9 $%9 #%9 8% 9O7& & 9& "#&9 9/& - &!  j L%&% &' 9&( "#&)9 9/&*- &+ DIR'%4IV(v*UV(wLNV(ES- ) yW(/ OP(1 op(*b H*2 t"*2 t*K *I (*E  *E 3*E =*E m'*E K:*E *E 1*E *1" *1#COP(2 o!copP+yH+z2t"+z2t+zK+zI" (+zE  " +zE "3+zE "=+zE "m'+zE "K:+zE "+zE "1+zE +z1"+z1#+}E2$+I(M;+ _0+ 28b+ 2<$+xQ@9-+ ~QH(8  Q`* H*2 t"*2 t*K *I (*E  *E 3*E =*E m'*E K:*E *E 1*E *1" *1# * 2( 1* 20D'*I8n3*2@* KH*KP** 2X (< =P*CH*2t"*2t*K*I" (*E  " *E "3*E "=*E "m'*E "K:*E "*E "1*E *1"*1#* 2(1* 20* 28* 2@ * 2H+ (G P# (% .,#2$Iop,$2 .,%2 ,'2 6<,(2 ,**`( ,,20 ,-24 *=,/0`8 ,02@ ,12D +,32H 8,4P ,5X ',6`  ,82h ,:0`p n:,<0`x +,=0` ,A1 ,C; 0,E2 {#,HK g3,KB ,LB -,N2 ;,O2 U:,^1 ,`1 >,a1 4,b2 ',n1 +,u1 ;,z2 #,{2 .,}bT ,~2 /,6` \3,2%v;,*%,}2%,}2%t,B%,<` %; ,B`(%_%,:J0%},%8%",%P%m ,%h%t(,41% ,41&ISv,}2%R,H`%/,2&Ina,n%I, %, %%,2 %!,}2(&Irs,}20%h,28%,2@%,2H%;,P%6=,}2X%;,}2`%8,}2h%,2p%w,Rx%,R%/,[Q%,,}2`%e6,8h%,2p%7,2x%,2%#',2%,2%89,_% ,n%*,1%9,1%c ,2%,2%s1,2%,}2',N`' ,%_'D,/%_'@,=_'4,?'=,@_'D,B2'7,D2'i,Fy'E,Iy'O,J ' ,K2('y,L20'4,M28'v$,N_@'5,OH' ,P}2P'?,Q}2X',T}2`',U^`h'7,Vp' ,X2x' ,Y2y' ,Z2z' ,[2{' ,\2|' ,]2}',^2~',_2'b,a_',b}2',d',f2',h2',l2'8,oy',pd`',s2'{,t2',u2'3,v2' ,w2'>,z2'28,}2'J+,2',2'<,2'!,}2',}2'4,}2'2,2',j` ' ,28'7!,2@'V;,}2H',2P',2X'Z,2`',2h',2p'8,2x',_'B@,='1,2' ,2'&,2',2'>&,bT':,y',y'*,_'5,z`'w0,_',2'.!,}2'#,}2'O/,y',2'e?,2'5,2'),1',y',2'(:,2'%6,`'`0,2'33,`'',b ' ,=p' ,4Jx',I'?,I'(,='0,y'?,2',2',2'= ,2':,2'?,',',v'O2,v(Ian, 2'>, 2'$,2'#,2'.,2'B2,' ,_',_5'k,!`'.,##2`',%2d','[h'76,)}2p'3,+2x'D!,,I',.I'+,/I'w=,1I',3I'(9,6_'u!,7',8',92'P5,:1',;2'"8,=1'U.,>2'4,F2'9,G2' ,L^'O),N2',SS',Wy'$,Y2'2,[_'6,\}2'r ,a}2'7,b}2'+,c}2 ':,d}2 ',f}2 ',g}2 '(+,j}2 '0?,k}2( 'l,l}20 't/,m}28 ',",n}2@ '4,o}2H '),p}2P 'F(,r`X '=,s` '<,t`( '0,u}2 ' ,v}2 'B",w}2 '+,x}2 '",y}2 'I,z2 ',|2 'P+,}2E '1,~n ',` '?,1 '5,2 '>,2 '2,2 ',2 '9,` ']$,2 'd7,( ' ,2( '5,20 ' ,`8 '($,I@ ',IH '`4,`P 'H-,2X '[,2` ' ,G5h '-,`p 'X,`x '<,}2 ',}2 ' <,}2 '(,}2 '!,}2 ',}2 '|,H_ ',2 'n*,2 '|<, 'X,[ '(,[ '#,[ '',[ '%,[ 'o ,\ '[ ,2 '%,2 'M ,2 'Q ,2 '_ ,}2 '),2( '4,`0 '?,z`8 ',^@ '9,_ '=, ` ', y ',H[ ',"` '?,-I ',/n SV(O %%sv-% }+-( t&-2 2-2 -6AV(P %av-4& }+-h: t&-2 2-2 -9HV(Q @&hv-& }+-: t&-2 2-2 -n:CV(R &cv-& }+-9 t&-2 2-2 -^92(S &0-"'}+-8t&-22-2 -;GP(T .'gpP. ' :. }2 u#. I 2. = %. 2 D. 2 5. 2 `2. 2( X4. =0 . 28 T3.E@ %.E@ h&. <HGV(U 'gv-*( }+-X9 t&-2 2-2 -8!io-p(}+-;t&-22-2 -:d(W }(`+?((+C;U}:`+C)H+ 1!+ 1*3+ 16+ 2C+ 2/(+ 2 /+ bT7@+ B+ + 2(++T0w'(Z P) N0/) 7'/ < / V 7/ 1 r?/ j #/ 1 /  / }2 2/ _(XPV([ )!xpv -*.-2%-<g-n-<(\ '*(-|*.-2%-<g-n-<;-Y< (^ *0-*.-2%-<g-n-=;- Y< !- <(=(b * >(0 H+ .0 2 %0 < 020  ;0  &0 2 M(c U+ ^ 1+ .1 2 %1< *1n 1n(d +0-4,.-52%-5<g-5n-5@=;-6Y< !-7<(:(e , z?h2 , .22 %2< g2n 2J ,22 02J( "2J0 2K8 %2_@ 4 2$KH <2=P 622X 2e=\ 522`(h ,-^-.-_2%-_<g-_n-_=;-`Y< J-b8(@-o=0n)-q *8-r *@ )-s *H9-t _Pi/-u 2X-v _`8;-w 2h=4-x _p-y 2x 2-z jN-{ 1f'(i .- @/ x. `/ V ;/ V / 0V S8/ V 7/ V S>/ ^V( 6/ }V0 / V8ANY(j .)any(q/* ( (*(}2*8(2*(2*S(2*(2*x(2*(_* (*]6( 2*( 2* ( **( ;*q9( *.( 2*[( ]2*8( 23({/<(|1[j9(}(~ ((l /20(0&(7[( ;J( ;(B[p(1[ (1[( (m '0(-b|0/-c2 -d;(-e2:-f2-g2  (q 0 A30 3 3  3&@J 3' 2 03( 2PAD(r %\(s 0 (3+41 3,  ~3-nJ 3.  ; 3/I !30 2  (t A1 03L1 ?3M_ 33M2 "3MzJ 13M2 u-3M2 &3M2 C;3My$ *3M1( o3M1)I84SU84-1I164f1U16491I324y2U324E2+2 232,(2a:4324< 2]2(R2/(w 6>(y %}2}22'%4&{h222(C2 =51Z4 53y E56 _ 57 _ @658 _ 059 _ *5: _( 5; _0 5< _8 5= _@ 5@ _H 5A _P 5B _X -5Ds4` ;5Fy4h 5Hyp 5Iyt \&5J x 25M9 5NS 5O4 j55Q4 E=5Y t5[4 U5\4 =5]y4 5^ ( =5_  ;5`y  5b4=62-25+In42 j4 Lf4q4R4 j4 L|74Z44f-74T 74+8 y 5,4L85+8 yK85n9<65RS9>G5*59NZ5:7`,;58; 29&; _8&; 2+; 2,;k5.E-*6/J$///!/7//%//2/p /' /3 / /h ///A<-5HE-A6he1 u6 r41$ 8 %1% < d1)PHEK-6hek 1-6 -1.2 1/2 4154-87-_n-*g-;K-G]-}2d-8:-21-8T-8 -8 m(<8 .<2 %<< g<n <? #<? ;< ?( %<20 /;<28 "<@ <H <nP 8<?X &<2` 8<2d C1<(h L<2p *<2t D<?x <  <_ <}2 ((< >< < < <E )<E  <=87866"';5-X9-_n-*g-;K-G]-}2d-8:-21-8T-8 -8+-9-_n-*g-;K-G]-}2d-8:-21-8T-8 -8,-h:-_n-*g-;K-G]-}2d-8:-21-8T-8 -8*-:-_n-*g-;K-G]-}2d-8:-21-8T-8 -8H+0-;*-_*n-**g-;*K-G*]-}2*d-8*:-2*1-8*T-8* -8,0-<*-_*n-**g-;*K-G*]-}2*d-8*:-2*1-8*T-8* -81(-Y<*!- G*3- 2*/- E2*\>- 21;-<*>(- **I0- ;*=- <*J- 2u61@-<*J- <*$- nC)0-<*>-n*g -_0-=*>-n*g -_0-@=*>-n*g -_0-5e=*>-5n*g -5_L1-: 2=2=&r=|00-_=*>-_n*g -__0-l=*%-m=*z9-n ( 4=,=%== t<5> <1 ;/< 1 @0< 1t<>  (<&> X<'  '<(  0<) }2 +<* }2 Y <+  <-> |4<. 1 " A>> L 1<:> p<; $end<<  & ?<6?><ng <_ #h<? :<c@ <@ d<@ q7<@ <A ?<.A( <YA0 <<}A8 <A@ &<AH W<@P 8<AX :<2B`6??>>m(<87 <8@ p2<  <8@-<@2 ?c@222J@22@2?___}2(2i@2_@2?}2__2@>@@2}2@2?@A2?@.A2? 22ANA2? 2TA%NA4A22}A2?TA 2_A2}2A2?222A2}2A2?TA2A2(A2?A0A2 ?,B22y2? ?,B222A3P3@<,E:<hCL< 2*< 2 4cp<C+< 2< 2<,E 4me<uD(] < 2E0|< 28< 1< < 1>113@<E:<hC<hC+<$hCK < ?4cp<C p=<C$<2(4B<uD0 <_83<F:<hC;5< 2G/< 2 4me<uD3 < CF:< hCN< hC<  }2r>< _3<\F4val< y38<F:<hC<hC4me<uD4B<uD4cp<C B < 2$u < y(p <" y,<# _03(<&MG:<(hCS%<)hC4cp<*Cp=<+C<, _.5<- 2 b<. 2$3`<1H:<3hC4c1<4 y4c2<4y 4cp<5CL<6 2*<7 2.<8 2p <9 2 B <: 2$4A<;uD(4B<;uD04me<<uD89<=H@ <>HN 1$H L 3hKL*(-3 3!4J Z03"4J 3# :J 3$ :J003bJ83 bJZ3%hJ:JJtJ413MJc13M2#3M=2J>2ng 2_2J+22!2x.2K9"22v2=2$K,22 72<2FK=2=2(* }KB=*Isv*}2iv**uv*;v6*FK22K2K}K0*K*v*2*9* I*$*20* K*p* 2*P'*  I #0?1dL ?3 _ &?4 _ B5?6  :?7  1?8 _ ?9 _ 5?: _(  @*L '@, _ #@- _ $@.  5@/ 81AHM (AMM%4AVM% A[M%q.Ab*M%1Aij%`An;M jM6L j*M6L j;M6L jLM6Lw <HB+M B- _ I B. _ B/ B0 B1 !B2( 2B40 B68 >B8L@7PCh PqCj_? Ck CqPCu_Cv  CydL(bCz_H7C{ P.C}PXCY `RC_[C )CP3Cy9C_C +0C +C_C W(CP-Cy:C ';C_'C 'LCP'CK'C_H'^9C P' CPX'C `'%C_'3+C '?CP'zCLM'C_'C 'CP'CP'6C 'CP'*CP'C ' CP ')*C_('C 0'-C_8'=C @'h*C yHLdLY   K LMi'!CM21&Q921'}21(  + UQ g<+!UQ 8+"Z +# y <+$ 2 +%1Q +(Q+sQ.ngQH&(+'Q +( 2+* :J4cv++ =++- 2;+. 2 N"(+3+R +4 2+6 :J4cv+7 =4gv+9 25+: 2 0+uR +v 2"+x }2&+y 2$@+z }24cv+{ = W1+|R([Q0+R5svp+ 25gv+ 23+R4ary+ 24ix+ *3+S0+ 24ix+ *3+*S4cur+ *4end+ *3+QS4cur+ }24end+ }20+S5ary+R*- +R*2+S*8+*S=0+S+ S%+R*+}21+QSL+ :J(1+T<+2++ }200+bT*N+Q*4+Q*# ++R*$5+S*'+Sbd;X+;U7+ 1\+ 1+ 1x + 2@+ .+ )+ _+ }2 0/+  }2(M%+  _0G%+  _8+  _@f+  (H6+ ?P0`+@`U*!+A(*a;+BhT/0+U* + 2 +Ux+U6+U+ 2  + 2$J+ 2(+ 2,p(`U^'+`U2yV2}2<U220V2}2<V2y^V2}2<}226V2y}V2<AdV- D V$valD 5 D f D 2 D = DV 7(D"W D"W D }2 S$D _ <D _ D }2 VD V =D"Z D&Z 2D'5 'D(y D+y  D-y - D.Z gD/Z($psD0Z0 \/D4 28 D5 2< D6 _@ D7 _H .D8 1P w%D9 1Q g!D; 1R *D< 2S D= 2T \D> 2X 1D? 2`  D@ }2h DA 1p $DB 1r DC 2t DD }2x jDE 2 DF 2 DG ; =DH ; ?DI2 DJ 1 DK 1 (&DL 2 /DM 2 Y-DN }2 DOZ !DP }2 V$DQ _ ;DT _ ;DU _ DV _ >?DW _ xDX _ fDY _ (%D^ E2 :0D_ 1 %D` 1 RDa 1%)Db 2%Dc 8%>Dd 2%Df [%Dg [@%n8Dh 1T%%Di 1U%/Dj 1V%Dk 1W%3Dl bTX%Dm `%=Dn E2`%(Do E2d%p5Dr*h%H?Ds*p%Dtjx%"Dv2y8^#DxEx8DyEx8gDzE x81D{E x%h%D}2{%ND~ 1|4WV(W 5[ L 2%[ L =D4Wq/1[=[([(2w($[<($[H[r(Q[[[2y[2(R[[[2}2(S[8(U[[22\2}2(V\\#\2 q.\,#\N6(u.\7(w.\B(y.\({.\ (}.\+(.\ (.\6(.\(.\*(.\0(.\(.\ q\ L\4(\P (.\6(.\m(.\&(.\w8(.\(.\_)(.\i(.\ (.\l(.\@(.\T( 1E ( 1( 1 q] L@]<(](.\ q] L](](]3(5 ^,^3(^(=6(=(='(= -n^,W(c^(= ^,9(^(.\9#E(^//q/]8/U?/1/7./J#((5'<H(F_4pad(G_ %%_ L"(P2_8_H_222(aU_[_22t_222#(fK)(g__22_22T(h2_((i__2y_2_nP&(l\^(s`4fn(t 24ptr(u ($4(v_x.2UII%[ _^` Ly *z` L`2 (` L }2` L }2` L 1` L /2PM5)( }2a L"F.(1 (1E5*E&5 t_>a,4E3a _Va,d EcKa$E32 1{a,pa$E {a 1a,a-E aE .\ E {a 1a,a.E a%F&c2YF(2F-p2F12/F42(FK_57FL_5W!FXc2F[d`M=F\y5F]y8#Fa*-Fec2&Ffc2FiX Fc2"Fc2>Fy$Fy'-F_/F2 F;Fc2F%cF2 -c LyF c.(4[(6[.EG=d////$//!/f //0/! /) / /E> /3 /+/7// /'//V7/)/1/c(//`/o</z./@)///#/M9 "d Ld6G"d -Cd L3dG Cd 1dd LTdM(N dd 2d,vd!(bd(cd(dd7(ed'(fdz5(gd.EHf//8/C///C9/K8//!/A: /# / /! /l /s/ //@/n-/////q/@/m-/~/.//p//+/\*/# / !//"/. #/)$/%/!&/9'/)(/" )/9*/+/,',/3-/S./&//R0/&1/A32/63/@34/55/S6/#7/R8/#9/:/&;/3/ ?/@/>A/"B/&C/9D/E/F/ G/H/f2I/>J/K0(Zf5nv(ZG5u8(Zff 1f L((Zf0([g5nv([G5u8([ffF([g:|2 y  O< 8 Wg L;Gg;:*IWg}< H,E7= H2>cvH=A=? My@axM 2zA.+M 2BspM 2ANM 2CQ;R eD-\60E.o2Ep}2F-G-hHT eHQ1F-G-hHT fHQ1F-G-hHT}HQ pF-G.iHT0F.G&.JiHTsHQ ]iHR}F..G;.niHT3FF.G[.iHTsHQ fHR}Fc.Gp.iHT F{.G.jHTsHQ fHR}F.G.(jHT9F.G.`jHTsHQ %fHR}F.G.jHT4F.G.jHTsHQ +fHR}F/G/jHT5F/G//kHTsHQ 0fHR}F7/GA/F/G/,lHTsHQ CfHR}F/G/PlHT6F/G0lHTsHQ JfHR}F0G0lHT F 0G50lHTsHQ OfHR}F=0GJ0 mHT;FU0Gj0BmHTsHQ WfHR}Fr0G0fmHT7F0G0mHTsHQ ]fHR}F0G0mHT0F0G0mHTsHQ bfHR}F0G0nHT?F0G1VnHTsHQ jfHR}F1G1|nHT F&1G;1nHTsHQ qfHR}FC1GP1nHT<F[1Gp1oHTsHQ yfHR}Fx1G14oHT1F1G1loHTsHQ fHR}F1G1oHT F1G1oHTsHQ fHR}F1G1oHT8F1G2&pHTsHQ fHR}F2G$2JpHT2F/2GD2pHTsHQ fHR}FL2GV2pHT0Fa2Gv2pHTsHQ fHR}F~2G2qHT=F2G2:qHTsHQ fHR}F2G2^qHT2F2G2qHTsHQ fHR}F2G2qHT0F2G3qHTsHQ fHR}F3G'3rHT F23GG3PrHTsHQ fHR}FO3G\3vrHT Fg3G|3rHTsHQ fHR}F3G3rHT F3G3 sHTsHQ fHR}F3G30sHT0F3G3hsHTsHQ fHR}F3G3sHT0F4G4sHTsHQ wjHR}F4G'4sHT0F24GG4 tHTsHQ fHR}FO4GY4DtHT0Fd4Gy4|tHTsHQ fHR}F4G4tHTIF4G4tHTsHQ fHR}F4G4tHT4F4G44uHTsHQ lHR}F4G4XuHT0F5G5uHTsHQ lHR}F5G'5uHT0F25GG5uHTsHQ fHR}FO5G\5vHT4Fg5G|5HvHTsHQ fHR}F5G5mvHTF5G5vHTsHQ fHR}F5G5vHT0F5G5wHTsHQ fHR}F5G5%wHT?F6G6]wHTsHQ jHR}F 6G-6wHT F86GM6wHTsHQ fHR}FU6G_6wHT0Fj6G6xHTsHQ fHR}F6G6=xHT3F6G6uxHTsHQ gHR}F6G6xHTEF6G6xHTsHQ  gHR}F6G6xHTFF 7G7-yHTsHQ gHR}F&7G37SyHT F>7GS7yHTsHQ gHR}F[7Ge7yHT0Fp7G7yHTsHQ gHR}F7G7 zHT0F7G7CzHTsHQ %gHR}F7G7gzHTLF7G7zHTsHQ *gHR}F7G7zHT0F 8G8zHTsHQ 0gHR}F&8G38!{HT F>8GS8Y{HTsHQ 4gHR}F[8Gh8{HT Fs8G8{HTsHQ 8gHR}F8G8{HT F8G8|HTsHQ <GH<^HT0FS<Gh<HTsHQ gHR}Fp<Gz<HT0F<G<HTsHQ hHR}F<G<HT0F<G<NHTsHQ gHR}F<G<rHT0F<G<HTsHQ gHR}F=G=΃HT0F=G0=HTsHQ gHR}F8=GE=*HT8FP=Ge=bHTsHQ lHR}Fm=Gz=HT F=G=HTsHQ gHR}F=G=HT@F=G=HTsHQ gHR}F=G=AHT F=G>yHTsHQ gHR}F >G>HT F$>G9>ׅHTsHQ gHR}FA>GN>HT@FY>Gn>4HTsHQ gHR}Fv>G>ZHT F>G>HTsHQ gHR}F>G>HT>F>G>HTsHQ gHR}F>G>HT?F>G ?JHTsHQ gHR}F?G?nHT0F*?G??HTsHQ gHR}FG?GT?̇HT F_?Gt?HTsHQ gHR}F|?G?*HT F?G?bHTsHQ gHR}F?G?HT0F?G?HTsHQ hHR}F?G?HT F?G@HTsHQ hHR}F@G%@BHT F0@GE@zHTsHQ hHR}FM@GZ@HT2Fe@Gz@։HTsHQ hHR}F@G@HT F@G@4HTsHQ "hHR}F@G@ZHT F@G@HTsHQ (hHR}F@G@HT1FAGAHTsHQ /hHR}F!AG.AHTF9AGNAKHTsHQ 6hHR}FVAGcAoHT4FnAGAHTsHQ iHR}FIGIFHT @FIGI~HTsHQ EiHR}FIGIHT0FIG JښHTsHQ LiHR}FJGJHT0F&JG;J6HTsHQ SiHR}FCJGMJZHT0FXJGmJHTsHQ [iHR}FuJGJHT FJGJHTsHQ `iHR}FJGJHT FJGJNHTsHQ eiHR}FJGJtHT FJG KHTsHQ jiHR}FKG!KҜHT F,KGAK HTsHQ oiHR}FIKGSK.HT0F^KGsKfHTsHQ viHR}F{KGKHT TFKGKĝHTsHQ }iHR}FKGKHT TFKGK"HTsHQ iHR}FKGKHHT TFKGLHTsHQ iHR}FLG$LHT0F/LGDLܞHTsHQ iHR}FLLGYLHT2FdLGyL8HTsHQ iHR}FLGL\HT2FLGLHTsHQ iHR}FLGLHT3FLGLHTsHQ iHR}FLGLHT1FMGMLHTsHQ iHR}F MG*MpHT0F5MGJMHTsHQ iHR}FRMG_M̠HT1FjMGMHTsHQ iHR}FMGM(HT1FMGM`HTsHQ iHR}FMGMHT2FMGMHTsHQ iHR}FMGMHT0FNGNHTsHQ iHR}F#NG0N>HT TF;NGPNvHTsHQ iHR}FXNGeNHT TFpNGNԢHTsHQ iHR}FNGNHT TFNGN2HTsHQ iHR}FNGNXHT TFNGNHTsHQ iHR}FNGOHT0F OG!OHTsHQ jHR}F)OG6OHT TFAOGVOJHTsHQ  jHR}F^OGkOpHT TFvOGOHTsHQ jHR}FOGOΤHT TFOGOHTsHQ jHR}FOGO,HT TFOGOdHTsHQ #jHR}FOGPHT0FPG'PHTsHQ *jHR}F/PG9PHT0FDPGYPHTsHQ 3jHR}FaPGkP@HT0FvPGPxHTsHQ FbGbeHTsHQ CmHR}FcG cHT0FcG*cHTsHQ KmHR}F2cG?cHT4FJcG_cHTsHQ PmHR}FgcGqcAHT0F|cGcyHTsHQ VmHR}FcGcHT0FcGcHTsHQ ]mHR}FcGcHT FcIcHTsHQ dmHR}F,G-HU  HQ eHR eHX eF-F$-F,-GB- HT eHQ P#FJ-G`- HT eHQ Fh-G~- DHT eHQ `F-G- }HT eHQ PFdJdK{'P= '2A=>cv'=z? )y@sp) 2@ax) 2SGE.+) 2EN) 20.L0LE7 /}2lfBws`'FFFG$HT| F.G9'HT}FDGVHT|@% F`Gk'!HT}FvGMHT | % FG'rHT}FGHT|0%FG'HT|FFG4HT|HQ0HR2FG*A+HTvHQvHR4ITNHU pmHQ8Mw) uNFmFwFIA[HU~HT eK' `,G= 2>cv=%? y@sp 2@ax 2E.+ 2zEN 2L@rowyNH@colyE#yA8yE!}2kcOwsR'FF FG,h#HT~HQ2F=F_FnG~hgHT~HQ2FGuHTHQ8FG'HTvFF%FEFhFFGh$HTHQ2FFFG#hhHTvHQ2F5FWDE1"6FFM NFFFFvI[HU~HT mK5= 2,(>cv=me? y@sp 2@ax 2%  E.+ 2 EN 2 L0BE;g+ ' E! _e a E2 FF GhHTvF F5F=FPG[HT|FbFlGzHTvHQ|FFFFFIHTvDE16 FFM N  FFFI&[HU}HT (dKP#s = 2: 6 >cv=} s ? y@sp 2 @ax 2 E.+ 2  EN 2t f LLC:y|C); y|@rety C2 }E." }2m_M($+NNNt`NhTM5&PN+DBNrpIU&HU dHT1HQIPQQ'M+2N+`^NI+HU dHT1HQDG&BIHU0G'yHUwHT|HQ0HR0HX0G 'BHU}F4'G+;HUwHT|HQsF,F$,I5,HU oRO'O'+ _NNIb' HU eHT P5vS6|SC|QPQ[tnQhQuHBQM9'P0NVNJI&(HU}HT1HQ@HR &eHXHY|R9&(&(#NVDBNJrpII(HU~HT1HQ@HR 3eHXHY|Rb(b( NNIq( HU}HT R9((~NVNJI(HU}HT1HQ@HR @eHX|R9((NV75NJecI(HU~HT1HQ@HR LeHX|R(( ONNI( HU}HT R9))#NVNJI:)HU}HT1HQ@HR XeHXHY|R9:):)#INV*(NJXVI])HU~HT1HQ@HR eeHXHY|Rv)v) N}{NI) HU}HT R9))NVNJI)HU}HT1HQ@HR reHX|R9))NVNJKII)HU~HT1HQ@HR eHX|R)) NpnNI * HU}HT M*FN+NI+HU  eHT1HQIGV(dHUsHT~G(;HUwHT|HQsG(HUsHT~G);HUwHT|HQsGj)HUsHT~G);HUwHT|HQsG)3HUsHT~G'*;ZHUwHT|HQsIv+HU 0pMp*N+N?=I*HU dHT1HQBM+(,N+ecNI,HU dHT1HQDGZ$ EHU G$;lHUwHT|HQsF{&F&-G&;HUwHT|HQsF&G{';HUwHT|HQsF'F*-F*F*G*4HU xoF%+F,+G=+mHU pF+F+I+HU oF#G#HT dHQ0F$F$G$HT|F$G$'+HT|F %G%PHT|F#%F1%'Ft%G%:HTsHQ|F%G%'HT|F%FH,GU,GHTsHQ0Fp,G,GHTsHQ2F,I,AHT|HQ|HR3M#P uNF#F#F#G,[HUsHT dF,T+#yU:d`U);d`Uz7,_U09yV5AM4 hgBret  yWBbuf A>9 Bi yA:AA} yA5 y j L?XyY:d`Y);d`Yz7*_Y07yVAM4 hgWA21 _Z(,[fdd`W; y\w)[dst_[src[siz]d_]s]nX)hg[sigy[acthg]saf]osaf^ )TyY )Y(7)y_X2Y  2`dy9Y-d4YHd<_`Z"yd[__s"eYH"_`>(Y@/>(Y>yY>` (Y@/*YY`M@yYf@yY@_Y4@a0|NL`{Qc[GYT`HT0HQ3Ff`F~bNc.dFFeHU ma,RBN=fITQa;9Qkb^QugUa;NS}S~hidRRNNNuGCmHUAHT0HQ~Gky HUwGm-HUAHTwHQ0FazNNN:.gP@QM!PN+R P N ~ I !HU DdHT1HQEMp!TN+ N I!HU /dHT1HQDGBkHU0F F! G1 BHU}F'!F=!FO!FV!Gg!HU hnF!F!F!F!I!HU 0nRE E (N N"! !NG!E!IT HTvHQ PQs!k!M"4N+!!N!!I("HU qdHT1HQDFw G JHUvHTtF/"FF"FX"F_"Gp"HU oI#HU nR  uN%"#"NM"K"I HUvHT M! &qN+r"p"N""I"HU ZdHT1HQFR""(rN+""N""I"HT1HQ dHRvG HUsG  HU|F"F"F"G"OHU nF"F"`F-#F4#IH#HU @oHTvjJ`jLLK{jl l Kj!!K jKjKXj22KjKj++K/ j  Kj5>5>K j9898K je#e#Kn jKj99Kbj<<K jK k>>j66K j}'}'Kz j{{Kj@@lbb"% jKm""NlL$ jMjy y K1lT  mNj O jDDO jK ja+a+K~ l/(P j==a lS S  lL L  j O j||O lM6 j/6/6Ol<<Z % $ > &I: ; 9 I$ >  7I I  : ; 9  : ; 9 I8 I !I/  : ; 9  : ; 9  : ; 9 I< : ; 9  : ; 9 I'I'4: ;9 I?<&4: ; 9 I?< : ;9  : ;9 I8  : ; 9 : ; 9 I: ;9 I: ;9 I : ; 9  : ; 9 I 8 ! : ;9 " : ;9 I 8 # : ;9 $ : ; 9 I8 % : ; 9 I8& : ; 9 I8' : ;9 I8( : ;9 I8) : ;9 * : ;9 I+5I,!-: ; 9 .> I: ; 9 /( 0 : ;9 1 : ;9 2'I3 : ;9 4 : ;9 I8 5 : ;9 I6!I/7 : ;9 8 : ; 9 I 89> I: ;9 :4: ; 9 I;4: ; 9 I<.?: ;9 '@B=: ;9 IB>: ;9 IB?.?: ;9 'I<@4: ;9 IBA4: ;9 IB4: ;9 IC4: ;9 ID E4: ;9 IBF1G1HBI1JB1K.: ;9 '@BL UM1RBUX YW N1BO4: ;9 IP 1UQ41BR1RBX YW S41T.: ;9 'I U: ;9 IV W X.: ; 9 'I Y: ; 9 IZ.: ; 9 ' [: ; 9 I\.: ; 9 I ]4: ; 9 I^.?: ; 9 n'I 4_`.?: ; 9 'I 4a.1@Bb1RBUX Y W c 1Ud41eB1f1g1h1 i1RBX Y W j.?<n: ;9 k.?<nl.?<n: ; 9 m.?<n: ;  /usr/lib64/perl5/CORE/usr/include/bits/usr/include/sys/usr/include/bits/types/usr/lib/gcc/x86_64-redhat-linux/8/include/usr/include/usr/include/netinetTty.cinline.hTty.xsstring_fortified.hstdlib.hfcntl2.hstdio2.hxssubs.ctypes.htypes.htime_t.hstddef.h__sigset_t.hstruct_timespec.hthread-shared-types.hpthreadtypes.hstdint-uintn.h__locale_t.hlocale_t.hsetjmp.hsetjmp.h__sigval_t.hsiginfo_t.hsignal.hsigaction.hunistd.hgetopt_core.hsockaddr.hsocket.hin.hstat.htime.htime.herrno.hnetdb.hnetdb.hioctl-types.hdirent.hdirent.hperl.hmath.hop.hcop.hintrpvar.hsv.hgv.hmg.hav.hhv.hcv.hpad.hhandy.hstruct_FILE.hFILE.hstdio.hsys_errlist.hperlio.hiperlsys.hperly.hregexp.hutf8.hutil.hpwd.hgrp.hcrypt.hshadow.hreentr.hparser.hopcode.hperlvars.hmg_vtable.hoverload.hpatchlevel.hpthread.hproto.hpty.hstring.hstdlib.hfcntl.h PK  XXxX#  x.J < X tJtL<X~fXy<X1GXX-K-K-K~.J~X<~f(X~ Ks .XXyX#  y.J < XtJ<K<f  (>.~ Vg gY f~.< X -=XJ.]   <L.#02.JX<Jtfy"J[X_K  XXyX#  y.J < X JJ<KfW# us/ X#+J."X  N  X*X ~   ;= Xy< <y<X!t5555525555552555555525525552222552255255255552252555555522255555555252222255555555525525555555555555555522222222922225255555555555252555222555525552555525552555525555222229225255225225555222222255555555555555555525522522225252525292222252252555525555555522555525225H>><,XIlaststatvallong long intold_parserPL_locale_mutexblku_oldsaveixIorigargcIorigargvsi_errnokeeper__pad0tbl_arena_next_spent_sizeIin_utf8_CTYPE_localeptyminorsstrerrorhostentls_prevclose_parenPL_no_localize_reflex_stuffIlast_swash_hvxpvgv_readdir_ptrIstatcache_freeres_bufIcompilingIdbargsnew_perlblku_oldspsub_error_countxpvhvPERL_CONTEXT_asctime_bufferInumeric_standardsigngamprevcomppadIe_scriptsv_u_servent_structPL_sv_placeholderIpreambleavIDBcontrolmemsetxpvioxpvivtbl_maxsi_tidImy_cxt_sizeblku_old_tmpsfloorImain_rootxcv_outsideblku_type_PerlIO__localeshe_valuIutf8_totitle_spent_structnamed_buffwant_vtbl_hintselemPL_freqh_lengthop_firstIdoswitches_netent_sizethrhook_proc_tnext_branchPL_op_namePerl_newCONSTSUBblock_evals_port__in6_uPL_no_wrongrefin_port_tgp_refcntprev_markIdef_layerlistsaw_infix_sigilIrestartjmpenvsave_lastlocIwarn_locale_spent_bufferIcolorsmg_objje_old_delaymagicfallback_amgmulti_endPerlIO_list_sPerlIO_list_tCOPHHscream_posIargvgvdespatch_signals_proc_trshift_ass_amggetdate_errxio_flagsIsharehookold_regmatch_statexcv_xsubnextwordIminus_EXS_IO__Pty_pty_allocatesa_restorerIcheckavpad_1pad_2ImarkstackxpvnvconfigPL_bitcountIdump_re_max_lenxcv_flagsPL_warn_nlIstatusvalueIDBsingleutf8_substr__u6_addr8PL_warn_nosemipmopst_atimsival_intIlast_in_gvIreg_curpmshare_proc_tIhash_rand_bits_enabled_call_addrlong doubleop_privatelex_formbrackSVt_LAST__chsbu_dstrIrunopsIpsig_pend_ctime_bufferIcomppad_namePL_magic_vtablesImarkstack_maxptyfdsbu_iterssi_type_IO_wide_datainternalIreentrant_retintXS_IO__Tty_unpack_winsizeINonL1NonFinalFold__spinsmax_amg_codemysig_t__blkcnt_tPTR_TBL_txhv_max_protoent_size__ptsname_r_alias__bufPL_no_symrefIin_clean_objshent_hek_grent_ptr_getlogin_bufferxivu_eval_seenPL_curinterp__fd__locale_dataPL_hash_seedpos_flagsIstack_baseexecImax_intro_pendingposcacheop_pmstashstartuto_gv_amggroupsbu_strendsmart_amgre_scream_pos_data_scop_stashoffs_addrst_sizePL_opargssge_amgpthread_key_tIperldblastparensi_addr_lsbIinplace__locale_t_pkeyunlockptIDBlinewant_vtbl_nkeysPL_bincompat_optionssin_amgIsv_arenarootjumpPL_uudmapgp_egvnewvalpadnamestatesxio_bottom_gv_unused2Iphaseyylensubbegcos_amgXS_IO__Tty_pack_winsize_asctime_sizeIblockhooksend_shift__nusersPerl_get_svsbu_oldsaveix__path_pwent_ptrIosnamen_addrtypelex_casemodslex_brackstackboot_IO__Ttynumbered_buff_STOREIefloatsizePADLISTIpeeppPADNAMEIregex_padretopprogram_invocation_namexcv_padlist_uminmodsp_pwdpIutf8_foldclosuresPL_checkIsv_yesparenfloorPL_op_private_bitfieldssa_flagsbranchlikeJMPENVImain_startqr_anoncvIstashpad_archmy_perlPerl___notusedIenvgvIperlioIpadname_constPerl_xs_boot_epilogpow_ass_amgmult_ass_amgIregmatch_stateprev_rexstderrIisarevIutf8localeIsignalhook__ownerPL_Noop_optc2_utf8__ino64_tsa_family_tsockaddr_inarp__pthread_list_tsubcoffsetsvu_fpgrantptyy_stack_frameIdebstashtopwordwant_vtbl_ovrldreg_substr_datumsi_stackxpadl_maxInomemok__uint8_tsa_sigactionfirstposwant_vtbl_debugvarPerl_warn_nocontextIdiehookprev_recurse_locinputany_ptr_readdir64_ptr__open_aliasCLONE_PARAMSIcompcv_vtable_offsetconcat_ass_amglex_repltimespecPL_interp_size_5_18_0PerlInterpreterxpadnl_max_namedsigemptysetPL_check_mutexxpvlenu_pvILatin1st_nlinkIminus_Fre_eval_strIscopestack_ixsp_maxIscopestack_maxiter_amgIminus_aany_pvpIminus_cIminus_lIminus_nIminus_pIargvout_stackPL_op_seqIinitavPerl_newSVpvnPerl_newXS_deffilesin6_familytbl_itemsPerl_ophook_tcache_maskPL_no_dir_funcfirstcharsImaxsysfdIlocalizinglex_sharedservent_crypt_struct_bufferPL_op_private_labelsrxfreencmp_amg_IO_save_endpw_namesp_lstchgcurly_getlogin_sizenomethod_amgadd_amgPL_sig_nameIunicode__fmtblku_subqr_package__errno_locationneg_amgPerl_PerlIO_filenoPerl_mg_setIrestartop__timezonePL_thr_keygofs__mask_was_savedPERL_PHASE_CONSTRUCTIlastgotoprobecop_lineIsecondgv__locale_structsa_handlerwant_vtbl_vecinitializedXPVAVto_av_amgptsname_rSTRLENexitlistentryabs_amgop_ppaddrxpadnl_allocIcheckav_saveIdebug_pad_IO_backup_base__jmp_buf_tagconcat_amglex_flagsIendavblku_oldscopespIutf8_idcontIcomppad_name_fillmy_opIHasMultiCharFoldglobhook_ttmpXSoffXPVCVPL_sh_path_sys_errlistmin_offsetPL_hash_seed_setregnodestdinIperl_destruct_levelsi_cxixmg_virtualpadnamelistoptoptinterpreterPL_warn_reservedPMOPIstashpadixPerl_xs_handshakest_uidlongfoldsp_min_IO_read_endxcv_xsubanyPADOFFSETPL_valid_types_RVIstatbufsbxor_amgsbu_rflagsxpv_curxpadn_flagsIstderrgvxio_page_lenperl_memory_debug_header_IO_save_baseIin_clean_allmark_nameop_flagsold_regmatch_slab__ino_treg_substr_datalex_super_state_grent_structxcv_root_ucurlymsettingPL_uuemapPL_nanPL_magic_dataIcustom_op_descsPL_hexdigitsi_prevXPVGV_addr_bndsp_namp_IO_write_endlex_startsIsavestack__builtin___sprintf_chksi_codeImodcountprev_curlyxIsortstashPL_mod_latin1_ucIstdingvsvt_localsp_warnIcustom_opssbor_ass_amgCHECKPOINTXPVHVany_avsprintf_grent_buffersne_amglast_uni_IO_buf_baseXPVIOsp_expireXPVIV__uint16_tminlenretIofsgvIdelaymagic_gidxcv_gv_uIcollxfrm_multtbl_arena_endIsavestack_ixwant_vtbl_defelemPL_C_locale_objsockaddr_x25SVt_PVAVsin6_flowinfoxmg_magicsvu_gpany_dptrintuitIbody_rootssi_sigvalhek_lenIcollation_ixtokenbufwant_vtbl_packelemop_nextopline_tmgvtblPL_valid_types_NVXPL_runops_dbg_readdir64_sizeIutf8_xidcontsi_cxstackopenptyyyerrstatus_hostent_ptrsbu_rxxcv_padlist_IO_markerPL_revisionsvt_get_Boolsvu_iv__prevIsort_RealCmpsbu_rxtaintedseq_amgdiv_ass_amgop_moresib_flags2xpv_len_uopen_slaveIpatchlevel_pwent_structnextvalsvu_pvXPVNVany_gvmemcpynot_amgIhash_rand_bitssbu_orig_IO_lock_t__gid_t_IO_read_ptrIparserxpadlarr_dbgstack_max1runops_proc_tany_hvPL_subversionIpadlist_generationSVt_PVFM__environxpadnl_maxIdefoutgv_lowerIstatusvalue_posix_pwent_buffer__ctype_tolowersiginfo_tPerl_newSVivany_ivmax_offsetsv_flagsIchopsetIrpeeppoldcomppadPL_fold_localesbu_rxresSVt_PVGVIincgvsi_markoffxpadnl_fillwant_vtbl_arylenS_POPMARKPL_no_usymtv_nsecnexttypesig_slurpywant_vtbl_backrefIcurpm_underSVt_PVHVlshift_ass_amgSighandler_tpthread_getspecificsvu_hashin6addr_loopbacksvu_nvsband_amglex_inpatlast_lopsockaddr_ax25num_minorsPL_isa_DOESptr_tbl_arenanewfdSVt_PVIOSVt_PVIVfilteredIlastfdwant_vtbl_collxfrmPL_perlio_fd_refcntIeval_start_readdir_structIlast_swash_keyls_linestrPerl_check_t_readdir_size__alignPerl_gv_stashpvPADNAMELISTSVt_PVCVPERL_PHASE_START__srcxcv_hscxtany_u32Perl_croak_nocontexthandle_ctime_sizerepeat_ass_amgop_pmreplrootud_inoIsavestack_maxfprintfwant_vtbl_arylen_pIlocalpatchesIsv_rootSVt_PVLVp5rxXS_IO__Tty_ttynameop_next__saved_masksvu_rvsvu_rxsockaddr_eonany_opIcurstackSVt_PVMGIpadix_floorsi_statusxpadl_arrh_addrtype_strerror_sizeIdelaymagic_euidbufendPerl_newSVpvlex_inwhatany_pvPL_valid_types_PVXatan2_amgxnv_nvPL_phase_namessin_zeroIopfreehook_protoent_ptrIunitcheckavsvu_uvPerlIOlsa_masksgt_amgto_hv_amgprotoentmg_lenImemory_debug_headerPL_no_modifyany_svSVt_IVItop_envwant_vtbl_sigelem__blksize_t_IO_buf_endshort unsigned int_spent_ptrbool__amgItmps_stackyy_lexsharedoffsIseen_deprecated_macrowant_vtbl_substr_IO_codecvtIsv_undefIpsig_nameLEXSHAREDclone_paramsperl_drand48_tIgensymPL_foldIregmatch_slabop_redooprsfp_hostent_structstart_tmpxio_fmt_namesvt_lencop_hints__lenh_nameIerrorsPL_no_memxpvlenu_lenh_aliasesopen64_hostent_sizePL_Yesop_pmreplstarthent_refcountsaved_copylex_sub_inwhatany_uvItmps_floorPL_do_undumpIstrxfrm_is_behavedxpadl_iddec_amgint_amgIbasetimeIop_maskIsighandlerpunreferencedxpadnl_refcntfcntl64IUpperLatin1getptxio_ofp_hostent_buffercop_seqmulti_startop_pmreplroot_shortbufSVt_NVIDBtracemaxlenpre_prefixop_targIbeginavje_retresume_statePL_dollarzero_mutexIsv_constspw_dirlex_casestackop_lastopIsub_generationblku_evalfloatwant_vtbl_isaelemPL_versionPL_no_securityIutf8_foldable__countunsigned charsi_cxmaxmulti_open_killsubtr_ass_amgposix_openptst_rdevLOOPILB_invlist/root/.cpanm/work/1723041055.16365/IO-Tty-1.20SVt_PVwant_vtbl_dblinePerl_sv_setpvREENTRImess_svIglobalstashImin_intro_pendingPL_perlio_mutexexpectoldlocIcollxfrm_basewant_vtbl_envelemcopy_amgIutf8_perl_idcontcx_blkIstatnameRETVALmodulo_amgxnv_u__uid_tsin6_scope_idblku_gimmePL_valid_types_IVXst_ctimrecheck_utf8_validityIutf8_tofoldxcv_rootISB_invlistblock_format__sighandler_tin_addr_top_sibparenttz_dsttime__dataold_namesvlog_amg__builtin_fwritexpadn_type_uIAssigned_invlistpeep_tPL_my_ctx_mutexIsv_nominlen__off_tperl_phaseTty.csbxor_ass_amgd_reclenallocate_ptyPL_mmap_page_sizePERL_PHASE_DESTRUCTin_podPerl_stack_growgp_ioImultideref_pcIors_svstring_amgxpadn_protocvIevalseqIunlockhookregexp_enginemg_flagssubtr_amgIcurstashgr_passwdws_xpixelPerl_ppaddr_tgr_gidwant_vtbl_checkcallIstashpadmaxsi_overrun__clock_tSVt_NULLls_bufptrIbeginav_save__uint32_tIorigfilenamews_colxmg_hash_indexlast_lop_opInumeric_localcop_warningsPL_op_private_bitdef_ixIcop_seqmaxop_pmtargetgvPL_veto_cleanupform_lex_stateIstatgvIdestroyhookcoplinest_blocks_sys_siglistsbu_msbu_ssave_curlyxIcomppadsub_no_recoverlex_dojoinxmg_udirent64gp_cvgenPL_utf8skipxcv_fileSVt_PVNVitervar_ugp_flagsxiou_dirp_servent_bufferPL_op_mutexparen_namesIregistered_mrossi_uidpw_passwdsqrt_amglex_allbracketsopvalIcurcopdbblock_subpos_magic_old_offsetgp_file_heksv_refcntsockaddr_in6__nlink_ttbl_arysband_ass_amgxav_allocsi_fdnparensPL_no_funcxpadn_refcntscmp_amgIeval_rootold_eval_rootnamed_buff_iterst_gidIdowarnyycharIfirstgvrshift_amgmg_moremagicop_pmoffsetop_pmstashoffPERL_SIMGVTBLop_staticMAGICPerl_sv_newmortalItmps_maxoptargPL_latin1_lcwant_vtbl_packsockaddr_ipxIthreadhookPL_valid_types_IV_setblku_givwhengr_namemake_safe_fdop_typeIutf8_perl_idstartsublenblku_oldmarkspxivu_ivIutf8_swash_ptrs_netent_ptrwant_vtbl_regexpIpadname_undefpreamblingfcntlproto_perl_uppercx_uoutputIDBcvPL_sigfpe_savedtrieIlockhook__ctype_toupperPL_inf_xnvuPerl_keyword_plugin_txio_lines_leftcompflagssockaddr_isopthread_mutex_twant_vtbl_utf8Iin_load_modulePL_memory_wrapxio_pagestrlcpysigjmp_bufpow_amgwant_vtbl_hintsdiv_amgIlaststype__ctype_b__listh_addr_listmysignalIutf8_charname_continuein_my_stashwant_vtbl_regdataxpadn_len_IO_write_ptr_strerror_bufferlocal_patches__sigaction_handleradd_ass_amgdummyIunitcheckav_savePL_op_descsi_stimePL_no_aelemlastcloseparenshort intifmatchIdumpindentIoldnamepreambledop_code_listxhv_keysitersave_readdir64_struct_sys_nerrIAboveLatin1Iutf8_mark_servent_sizesi_signoIDBgvIlast_swash_tmpsPerl_sv_2bool_flags__namessv_anyblk_uxcv_startacceptedgvvalIWB_invlistolddepthIutf8cache_boundsprev_evalIpadixdefsv_savewant_vtbl_lvref_netent_bufferxcv_stashYYSTYPExcv_gvGNU C17 8.5.0 20210514 (Red Hat 8.5.0-22) -m64 -mtune=generic -march=x86-64 -g -g -O2 -fexceptions -fstack-protector-strong -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection=full -fwrapv -fno-strict-aliasing -fPIC -fplugin=gcc-annobin_markersPL_keyword_plugincop_hints_hashIcustom_op_nameslex_sub_replstdoutsle_amgxpadn_highre_scream_pos_datahek_hash_ttyname_bufferPL_hints_mutexIknown_layers__stream_netent_errnoItaintingPL_op_private_bitdefsIcurcopIstack_sp__ssize_tany_boolregmatch_info_auxPERL_PHASE_ENDPL_interp_sizeIcollation_standard__glibc_reservedwant_vtbl_taintlex_deferxmg_stashPL_runops_stdIorigalensbu_maxiterssockaddrIdebugrefcounted_heIcurpadPL_op_private_valid__time_t__daylightst_mtimwant_vtbl_uvars_protosbu_targd_type__destlogicalIforkprocesslex_bracketsxio_top_gvIutf8_tolowerPL_op_sequenceblku_oldcopperl_mutexIcurstackinfoIstart_envlex_fakeeoflex_sub_opstashesIstashcachexnv_linesmult_amgPL_use_safe_putenv_IO_write_basep_aliases_netent_structin_mynext_offxivu_uvsin_portpadnlImodglobalin6addr_anyICmdsockaddr_atregmatch_info_aux_evalxcv_start_uPL_no_helem_svwant_vtbl_envbasespIgenerationIGCB_invlistIstrtabxpadl_outidnamebuflenxpadn_lowblock_givwhenregexp_paren_pair__sizecrypt_datapprivatecv_flags_tcur_top_envxpadn_typestashIin_utf8_COLLATE_localeIlast_swash_slenstate_uPERL_PHASE_RUN_sigfaultop_sparelex_opst_inopw_gecos__pid_tparsed_subop_lastwant_vtbl_regdatumxio_typeyylvalsp_inactsockaddr_dlxav_fillhent_valIorigenvironIdelaymagic_egidgp_avftest_amgscream_oldsprint_debugmg_ptr_cur_columnPerl_newSVmaxpossa_familyptr_tblInumeric_namelazyiv_sifieldsSVCOMPARE_tSVt_REGEXPIpsig_ptrgp_cvxgv_stashnetentsaved_curcoptv_secblku_u16Iprofiledatasbor_amg__sigset_tgp_lineImainstackIcurpmop_pmflagsst_blksizexpadn_ourstashprogram_invocation_short_namePL_sig_numptr_tbl_ent_hostent_errnoop_slabbedscompl_amgIsublineIargvoutgvIwatchaddrIdefgv__buflenhek_keyPerlExitListEntryws_rowxio_bottom_nameold_signalgp_formIreentrant_bufferhent_nextcheck_ix__off64_tIunsafeIhintgvsockaddr_in__jmp_bufIDBsignalIutf8_charname_beginblku_formatPL_ppaddr__dirstreamsin_addrIXpvIregex_padavPL_perlio_debug_fdblku_loopcache_offsetwantedpw_uid_timerIstrxfrm_NUL_replacement__locksig_elemsPL_valid_types_NV_setnum_ptysgr_memIxsubfilenamegp_hvIpad_reset_pendingopterrdfoutgv_sigchldxcv_depthItaint_warnIArgvpw_shellsi_next_syscallPL_no_symref_svIexitlistptsnameIsubname_IO_read_basePL_warn_uninitany_i32Ihv_fetch_ent_mhUNOP_AUX_itemsvt_dup__pthread_mutex_sInumeric_radix_svPerl_sv_2ioPL_fold_latin1xcv_outside_seqPL_magic_vtable_namesPL_no_sock_funcIsplitstrxcv_heksvt_freesockaddr_ns__oflaglong long unsigned intsi_addrdirentwant_vtbl_posIbody_arenascheckstrnamebuf_grent_sizePL_csighandlerpSVt_INVLISTwant_vtbl_mglobIsortcopPL_warn_uninit_svsin_familyIsignalssbu_typesi_pidmg_privatedupeje_buflazysvItoptargetIstrxfrm_max_cpIerrgvPerl_sv_2pv_flagsinc_amgsvt_clearPERL_PHASE_CHECKnexttokePL_no_myglobItmps_ixIsig_pendingsubstrsany_svpintflagsdestroyable_proc_tIfdpidxpadlarr_allocivalany_dxptrn_netto_sv_amgws_ypixelPerl_croak_xs_usageop_pmtargetoffIcollation_nameIefloatbufto_cv_amgmagic_vtable_max_pwent_sizeoldvalany_longxiou_anylshift_amgIexit_flagsc1_utf8repeat_amgIglobhooksin6_portPL_block_typed_offxio_top_namemodulo_ass_amgIptr_tableIcolorset__jmpbufIfilemode__dev_t__kindIexitlistlensockaddr_unnumer_amgop_foldedIdelaymagicPL_charclassImarkstack_ptrblockpw_gidprev_yes_states_name_protoent_structop_compgp_svsvu_array__pthread_internal_listwhilemIsavebeginptymajorsIInBitmapmother_re__valn_aliases_sigsysttyfdextflagsxio_fmt_gvxpadn_gencop_fileIcurstnamecx_subst__u6_addr16Isv_countsvt_setIdefstashItaintedtz_minuteswestIbodytargetoldoldbufptrxav_maxxiv_u_protoent_bufferst_modesavearray_xivu_chainleave_opIutf8_xidstartre_eval_startperl_debug_padIstack_maxsvtypest_devInOutStream__u6_addr32je_prevwant_vtbl_svIclocktickPerl_sv_2iv_flags__syscall_slong_t__fprintf_chkIXPosix_ptrsIDBsubspwd__nextIutf8_idstartje_mustcatchnumbered_buff_LENGTHyy_parserblock_loopop_savefreeIscopestackIformtargetpad_offsetPL_perlio_fd_refcnt_sizes_aliaseslastcpIconstpadixmulti_closestatherelinesImy_cxt_listIPosix_ptrs_freeres_listxivu_namehek__pad5_ttyname_sizesin6_addrIwatchok_IO_FILE__stack_chk_failPL_my_cxt_index__tznamep_protoPerl_sv_2mortalwant_vtbl_isasvt_copyxnv_bm_tailsival_ptrmark_locsi_utimexpvavIsrand_calledoptindregexp_amg__mode_tsp_flagperl_keyIreplgvsa_dataIbreakable_sub_genrsfp_filtersIin_evalsuboffset__sigval_t_servent_ptrlex_re_reparsingIutf8_toupperlinestartsig_optelemsPERL_PHASE_INITIcv_has_evalmg_typexpvcvnumbered_buff_FETCHIrandom_stateIscopestack_namesi_bandxpadn_pvIcomppad_name_floorIdelaymagic_uidIwarnhookIlast_swash_klen_xmgu_sigpollslt_amgxio_dirpucur_text__elisionblku_oldpmImain_cvULUTLTPL\LLTnrPrLSP]UUT^T^"Vv`VV8=\=b|b]]|]=D| $ &3$p"DH| $ &3$p"=Dv| $ &3$p8v\\\'8P>U><UBTB^T^&T&5^5<THqV^c]c}\&\&5}5<\cj} $ &3$p"jn} $ &3$p"nxPu@VV!V&<V_&_5<_57P7^&^5<^sR!5<RrvPvVPV1!&1M^P@XUXU@\T\]T]bV:@\\x}^}~\e~f~}~ $ &3$p"~ $ &3$p"}v~ $ &3$p8\f\:\0PRVVEf1gxP 5 U5 sU 9 T9 S _T_nSnsTE l _l | |# E~ET|#T`S`Z|_s|\ a \a |_n|a e | $ &3$p"e i | $ &3$p"s P < \m\\.2\_mPmn3&Y `1&.02_1 P  S S SSS2S Y      & .   } Y S } S SS&S.S | 3 T3 Y ||P| ||&|.|  | 3 P3 Y w|#P#w ww&w.w  dpPf]]z]Pk^^z^.U d7Op  emt\t|||\&\H p p. pH Xp Xp. XpH  . H  .  &e] 3e^! !]B` @eB`]`~ Le`~^ ] Xe]  ee ^&5 &5]Vt reVt]t et^ ]  ep V d'?p dpJ \ PUSUTST\U PV'P'WV7TST\U`lUlUlUlQPll tq#ly tq#y tq#0UFSFfUfySy~U0WU S U S U ST \ T \ T \Q V Q V Q VP ]  ] ' P' ] ] Dd p O /d' ? p   V s' 8 P8 I T P T qd pn }  n } V Zd ph do p U'')8[bfMMO^!5<ggixEp 77EISTVW\ ' @  I ( J J M \ { mVp_ Y Vp &0#0X007XHVp&  '@8` P        d(dqqpt0| 8| @| H| X~  `  P d# 6 M e      P T/ PI Tp  `,  &  & 8 0|E h  R     J#B zY e J# , P#s  , d     5 D8| k @w0| ht d@| H| q X~   "6Igw  (<Ofy * ?R^n  3 ,E7@Mc}".annobin_Tty.c.annobin_Tty.c_end.annobin_Tty.c.hot.annobin_Tty.c_end.hot.annobin_Tty.c.unlikely.annobin_Tty.c_end.unlikely.annobin_Tty.c.startup.annobin_Tty.c_end.startup.annobin_Tty.c.exit.annobin_Tty.c_end.exit.annobin_XS_IO__Tty_unpack_winsize.start.annobin_XS_IO__Tty_unpack_winsize.endXS_IO__Tty_unpack_winsize.annobin_XS_IO__Tty_pack_winsize.start.annobin_XS_IO__Tty_pack_winsize.endXS_IO__Tty_pack_winsize.annobin_XS_IO__Tty_ttyname.start.annobin_XS_IO__Tty_ttyname.endXS_IO__Tty_ttyname.annobin_make_safe_fd.start.annobin_make_safe_fd.endmake_safe_fd.annobin_strlcpy.constprop.3.start.annobin_strlcpy.constprop.3.endstrlcpy.constprop.3.annobin_mysignal.constprop.4.start.annobin_mysignal.constprop.4.endmysignal.constprop.4.annobin_open_slave.constprop.2.start.annobin_open_slave.constprop.2.endopen_slave.constprop.2print_debug.annobin_XS_IO__Pty_pty_allocate.start.annobin_XS_IO__Pty_pty_allocate.endXS_IO__Pty_pty_allocate.annobin_boot_IO__Tty.start.annobin_boot_IO__Tty.endcrtstuff.cderegister_tm_clones__do_global_dtors_auxcompleted.7303__do_global_dtors_aux_fini_array_entryframe_dummy__frame_dummy_init_array_entry__FRAME_END___fini__dso_handle_DYNAMIC__GNU_EH_FRAME_HDR__TMC_END___GLOBAL_OFFSET_TABLE__initPerl_sv_2iv_flagsptsname@@GLIBC_2.2.5Perl_sv_2bool_flagsPerl_PerlIO_fileno__errno_location@@GLIBC_2.2.5Perl_stack_grow_ITM_deregisterTMCloneTablesigaction@@GLIBC_2.2.5Perl_newCONSTSUB_edataPerl_warn_nocontextPerl_newSV__stack_chk_fail@@GLIBC_2.4PL_thr_keyPerl_sv_setpvPerl_sv_2pv_flagsPerl_xs_boot_epilogclose@@GLIBC_2.2.5ptsname_r@@GLIBC_2.2.5getpt@@GLIBC_2.2.5unlockpt@@GLIBC_2.2.5sigemptyset@@GLIBC_2.2.5__gmon_start__Perl_croak_xs_usagePerl_gv_stashpvopenpty@@GLIBC_2.2.5Perl_newSVpvpthread_getspecific@@GLIBC_2.2.5Perl_get_svPerl_croak_nocontextPerl_newXS_deffilePerl_mg_setPerl_sv_2mortalttyname@@GLIBC_2.2.5__bss_startopen64@@GLIBC_2.2.5fcntl64@@GLIBC_2.28Perl_sv_2ioPerl_xs_handshakegrantpt@@GLIBC_2.2.5fwrite@@GLIBC_2.2.5__fprintf_chk@@GLIBC_2.3.4_ITM_registerTMCloneTableboot_IO__TtyPerl_newSVivstrerror@@GLIBC_2.2.5posix_openpt@@GLIBC_2.2.5Perl_newSVpvn__cxa_finalize@@GLIBC_2.2.5Perl_sv_newmortalstderr@@GLIBC_2.2.5__sprintf_chk@@GLIBC_2.3.4.symtab.strtab.shstrtab.note.gnu.build-id.gnu.hash.dynsym.dynstr.gnu.version.gnu.version_r.rela.dyn.rela.plt.init.plt.sec.text.fini.rodata.eh_frame_hdr.eh_frame.note.gnu.property.init_array.fini_array.data.rel.ro.dynamic.got.bss.comment.gnu.build.attributes.debug_aranges.debug_info.debug_abbrev.debug_line.debug_str.debug_loc.debug_ranges88$.o``48 @<Ho lUoP P d nB xs~Mdd 2(d(d` qqdqq|ptpt 0| 0|8| 8|@| @|H| H|X~ X~ 0-`0 ԍ0,8}^F'#R0JK@]-#hP "Y (vperl5/auto/IO/Tty/.packlist000064400000000422147205023560011447 0ustar00/usr/local/lib64/perl5/IO/Pty.pm /usr/local/lib64/perl5/IO/Tty.pm /usr/local/lib64/perl5/IO/Tty/Constant.pm /usr/local/lib64/perl5/auto/IO/Tty/Tty.so /usr/local/share/man/man3/IO::Pty.3pm /usr/local/share/man/man3/IO::Tty.3pm /usr/local/share/man/man3/IO::Tty::Constant.3pm perl5/auto/Expect/.packlist000064400000000106147205023560011607 0ustar00/usr/local/share/man/man3/Expect.3pm /usr/local/share/perl5/Expect.pm perl5/auto/HTTP/Tiny/.packlist000064400000000115147205023560012061 0ustar00/usr/local/share/man/man3/HTTP::Tiny.3pm /usr/local/share/perl5/HTTP/Tiny.pm perl5/auto/Canary/Stability/.packlist000064400000000133147205023560013540 0ustar00/usr/local/share/man/man3/Canary::Stability.3pm /usr/local/share/perl5/Canary/Stability.pm perl5/auto/common/sense/.packlist000064400000000173147205023560012770 0ustar00/usr/local/lib64/perl5/common/sense.pm /usr/local/lib64/perl5/common/sense.pod /usr/local/share/man/man3/common::sense.3pm perl5/auto/Types/Serialiser/.packlist000064400000000303147205023560013564 0ustar00/usr/local/share/man/man3/Types::Serialiser.3pm /usr/local/share/man/man3/Types::Serialiser::Error.3pm /usr/local/share/perl5/Types/Serialiser.pm /usr/local/share/perl5/Types/Serialiser/Error.pm perl5/auto/JSON/XS/XS.so000055500001147350147205023560010563 0ustar00ELF>#@@8 @$#pp 00 0  HH H 888$$PPP StdPPP Ptd000ddQtdRtd00 0 GNU7g`9E!p eT` TVBE|z6qXSvC oe{r6:* e/ p { ^CZj!Kgk'D5, -F"8PRd wH  @k __gmon_start___ITM_deregisterTMCloneTable_ITM_registerTMCloneTable__cxa_finalizelibpthread.so.0PL_thr_keypthread_getspecificPerl_sv_growPerl_croak_nocontextPerl_sv_2pv_flags__stack_chk_failmemcmppowPerl_sv_cmp_flagsPerl_newSVpvn_flagsPerl_sv_derived_fromPerl_sv_2mortalPerl_gv_stashpvPerl_croak_xs_usagePerl_stack_growPerl_sv_2iv_flagsPerl_newSVsvPerl_sv_chopPerl_sv_newmortalPerl_sv_setiv_mgPerl_sv_2uv_flagsPerl_sv_setuv_mgPerl_newSVPerl_newRV_noincPerl_sv_blessPerl_get_svPerl_utf8_lengthmemcpyPerl_newSVpvnPerl_utf8n_to_uvuniPerl_sv_free2Perl_hv_commonPerl_hv_placeholders_getPerl_newSV_typePerl_newSVnvPerl_av_pushPerl_hv_common_key_lenPerl_av_lenPerl_gv_stashsvPerl_gv_fetchmethod_autoloadPerl_push_scopePerl_savetmpsPerl_av_fetchPerl_call_svPerl_pop_scopePerl_newSVivPerl_grok_numberPerl_free_tmpsPerl_newSVuvPerl_markstack_growPerl_hv_iterinitPerl_hv_iternext_flagsPerl_hv_iterkeysvPerl_sv_utf8_upgrade_flags_growPerl_sv_upgradePerl_sv_utf8_downgradePerl_save_vptrPerl_pv_uni_displaymemmovePerl_block_gimmePL_utf8skipPL_hexdigit__sprintf_chkPerl_mg_getgcvtstrlen__snprintf_chkPerl_newRVmemsetPerl_hv_itervalqsortPerl_safesysreallocboot_JSON__XSPerl_xs_handshakePerl_newXS_deffilePerl_apply_attrs_stringPerl_newXS_flagsPerl_newSVpvPerl_get_cvPerl_xs_boot_epiloglibperl.so.5.26libc.so.6_edata__bss_start_endGLIBC_2.2.5GLIBC_2.14GLIBC_2.4GLIBC_2.3.4U ui |Zii ui |ti 0 P$8 $@ @    D J N Q` h p x                      ( 0 8 @  H !P "X #` $h %p &x ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; <( =0 >8 ?@ @H AP BX C` Eh Fp Gx H I K L M N O P R SHH HtH5Z %[ hhhhhhhhqhah Qh Ah 1h !h hhhhhhhhhhqhahQhAh1h!hhhh h!h"h#h$h%h&h'qh(ah)Qh*Ah+1h,!h-h.h/h0h1h2h3h4h5h6h7qh8ah9Qh:Ah;1h<!h=h>h?h@hAhBhChDhEhFhGqhHahIQhJAhK1hL!% D%} D%u D%m D%e D%] D%U D%M D%E D%= D%5 D%- D%% D% D% D% D% D% D% D% D% D% D% D% D% D% D% D% D% D% D% D% D% D%} D%u D%m D%e D%] D%U D%M D%E D%= D%5 D%- D%% D% D% D% D% D% D% D% D% D% D% D% D% D% D% D% D% D% D% D% D% D%} D%u D%m D%e D%] D%U D%M D%E D%= D%5 D%- D%% DH=Y HR H9tH Ht H=) H5" H)HHH?HHtH HtfD= u+UH= Ht H= d ]wATUH-b S}}}HPxHJHHx}HcH H Hq H^ Q}L`EITH[]A\USHHrhHHHr]HHw6Eu HEH9Xs6H 8HHH[H]l@HHHEH[]H=1ff.@SHW dH%(HD$1ʃ wIH$t8 HuFHHPHGH$Hu1t 0tGHt$dH34%(u6H[@H 8 HHHH$뢐1gUSHHHHyH@HcOHcPHpH9HHHGH)DH[]AAVAAUIATIUSEH11%HHHPH90< v<; E$<5EuOfA*:Hx=fH*Y[AXMAMA,$]A\A]A^A)E$H؃fHH H*Xf(fEt{A),$LLE$묐G<-<+PЀ w0HO11@HTPp@ vAA)ЅDDE$EJf1LLsE$f.HLLLE$Ef.Ѓ0 BHЃ0 ~+GHOPЀ 3XGHOPЀ D1H(dH%(HD$1?-HT$ Ht$HD$D$ t,A 1D$HD$dH3%(u*H(@HA 1_D$fWZf.AVAUIATUH-k SH}H@IIPuKL`IEHHIIQujHYqLH޹[H]A\A]A^6fDHcEdBHLAHA AD}IHcElHLAHA ADO}H^@}H8F@}L8 @AVAUIATUSH: ;;L y;HPxHJHHxLc2cH@JI)IAf;AnHcILhD;)H5ڕHH= 12H5LSAWAVAUATIUSHH ;;H(;HPxIHrHpxD2IcANH@L$HI)I$IDx(AEIcŋ;HH)jLcd$H@J@ ;LH@JH@@;/H@JH@HHH6 Hm;H9t7;H@J4Ht$Ht$HH [;H@JH@HHATA D9;H@ H)H;H;H@JHEwH(H[]A\A]A^A_D;HL$AMcMHL$H@J@ % =tI;HL$%;H@N,LHHL$EAA!=@;HL$H@JH@ @;HHHHfD;HL$H5EH@HL$iH=o1H5'LfAVIAUATUSH ;3;H();HPxHJHHxLc*HH@JH)HHR;EeHMcH@J@  ;H@JH@@;H@JH@HL(H H;I9t0;H@N,pH&LH;O;H@JH@L`I|$8t2I|$@t*(H@ H)H~KID$8;HHEID$@HEH([]A\A]A^f;H5HE;HHHHH=1H5TL@AWIAVAUATUSHH$ ;m;H(c;HPxIHJHHxD2JIcH@HI)IAEIcŋ;EfHMcH)H@J@ ;H@JH@@;H@JH@HL8H H+;I9t0;H@N;H@JHE+H(H[]A\A]A^A_f;AMc;H@J@ % =t);H@N,LH\H@JH@ D;HHHH5fD;qH5"HH=Q|1zH5GLff.AWAVAUIATUSHHı ; ;L ;HPxHJHHxLc2H@JI)IA;An;H@@#IHIċ;HcL,H@H@ ;~H@HH@@b;aH@HH@HL0Hh H;I9t03;H@L4$HڄLHB;;H@HH@H@h;H@Nt(AD$ %AEAL$ Il$Mf;;HhLH(H[]A\A]A^A_fk;L``H@H@M$;AH5H;HLHbH=y1(H5LIfAWAVIAUATUSHHt ;;H(;HPxHJHHxLc"HH@JH)HH;El$LeMcl;H@J@ % ='J;H@N,;1LHIŋ;HHrfHIƋ@ %_DAF IFH@@H;@@ @0H@ L)HL=s LL;L- MLHZ;IpLLH";IXLH;ID$AH(H[]A\A]A^A_#H@JLhf LH;Ig;LLHIHh f.LHk;IH5LfH9 SH8~HHHPH J [f.HL F IxJJI x=DBOEx.DRO ExH HHH IHL L fHYwHHff.H?1W vHH5ѭ H91t$tHHDf.UHSHHH 8fH9wHHHH[]}DHHHjHH[]AWAVAUATUSL$HH $L9uHXE1H/dH%(H$H@1HD$(ILl$0D$HD$fDLM\$7fD<\P_LHUHLI@H9ELu<"uL)MIHpH@H)H90IHHLIHX}"mM6AG IW%_DAG IH@D$tAO M4$g@UBDHLLL\$I,$hI,$IH H=L\$HUHHI@H9fIL)MH 8RHLHdI@ HUHH@ HUHHm@ HUHHU@ HUHH=@HUHH%@HUHHDHtID$I,$E1H$H@dH34%(LHX@[]A\A]A^A_fxC< 'AD$  HUHLDHLIHpMt$I)Iv ><H L\$8HL$LHAHHL$(L\$H1Hqf.THH)HHT$(H9uHHD$HUH=}\}uHLL\$I,$I,$HH$L\$HlLHuH L$LHHD$HCLH ?ȀCLH?ȀCD?ȀC"H=HuHH=LHD$H CLH?ȀCD?ȀCEN;;H@JH@LxAAH@McN,Mw;MtAVAVAE u<t%1 u;LHIG;pH@ H)H~t;HY;H@JHEFH(H[]A\A]A^A_@+L8P;H5sH;HHHHjfDLH H=i1H5sLff.AWIAVAUATUSHH$ ;m;H(c;HPxIHJHHxD*JIcH@HI)IAF;IcEeHMcH)AU;H@HcHHD$H@J@ ;H@JH@@;H@JH@HL8Hɟ H;I9t0;H@NfHi HH/; H.Au`IčFAE`A;E>IMA$H&< HoIEfD;IMtAT$~AT$Am`E1@HH/IƐH\$(dH3%(LH8[]A\A]A^A_f.O@HUA$HEH&< w!HsHJIMBH< ~<#LrHHO@ LIE$H& HnH E1IE;+UU;MAVAVE1DH-u HEHM0,0H @IEHHq@ v.߀E\HBIEJqՁu HBIEJ0 DHIESЀ vHH $8*$HIDH HH/; H~Au`IčFAE`A;EIUA$H&< w)Hs#HJIMBH< ~<#<] H&A$LhIH;eLLH'IE WHrdIEHGH)H}nullHH/H- }}HH8H2If.HGH)H }true H_XHH/H>HG 8HHImDHGH)H~ }fals HlE1IE;HyfE1IE%DHٖ DuH)Iԋ;A- H sHcH>fD#] ,HPIU@< #?H5HJIMBH< ~<#<]AEAE`HIUp H%HHIMPHf<#e H&A$<}0<"LyHqM}I9t>A<\t6<~2<"c LfD~\t"HH9uLIHuIE H,jIES#G :uHPIU@< w!HsHJIMBH< ~<#? LGH ;H$CHE1E1jHT$1LHRLj;H AW AWIE HGaIEfD#} ,uHHIM@< #{HqHQIUAH< ~<#<}NAEAE`HIMpgH`HHIMPHAf.HsHHIMPHTfD)<$HHIM@< #?H5HqIuAH< ~<#< <:HqIuA< w!HsHNIMFH< ~<#/ LzHHD$,;uHLLjLL$A$HNjL$Y^KH!_IEH"hE1IE DAEDHIEH wHIsfDAEUDHIUH< wHIsH=HQIUAHf.#()'HP$H&IU@< w!HsHJIMBH< ~<#c LH͑ IƋ;H@ L`A|$  LH%;H$1HH-IH# ;1HSfLHHD$H, ;;L(Ho;xH;iHxxL;LxxVL;& ;BLH+xHHA$Lc ;H@ L)HL9{ IEH<$ImHD$H IE~\E1H$HHD$ fDINj;LLHHKDIGL;<$uHD$H|$HHD$;H|$H8HD$;H@L`cLH;L;L BUb U;)AV8 AVIl$M4$SHIMAu`;LH¾IAEI}0t0I$HxHht;LHHH)HI}(;;H(Hi;rH;cHxxLg;L`xPL; ;AUi'UiUPEkdHcDHHIAUi/UkdUPHcAUkd0EBHcECPHciA0HHcWI?AE@HIE wHsEUi'UiUPEkdHcHEUi/UkdUPEUkd0EBEUB]0|HL$ IcHH艼tLt$ M1}-D)ƒ7H;$@HaE1IEDAEDHIEH wHIsfDAEdHfHIU< wIsfDHPIUHA< HYE1IEffDHHHIMPHfAEHHIMHH wIsdfAEHJIMHH< wIsmHXH HG;׻;E1ͻ}eXH_PHH/HH HI]PfHBHJIEB0< QDIMHHIp@ vf.IIAtHHFHavEN0AF4EHFx}HIc L>IIMtHHFH+:vEN0AF4Euo`H ~#AF4 zD˪H@@"<;謪H(HD$dH3%(H([]A\A]A^A_fD;yHT$LHTHT$IK1ɺLH٩IF(H\IV HrH=x HH H HHuH)IV( >tKAF4H<"u"fDt,HHp@<"<\u~HFuAF4HIVH+wIv(H9s HAV0AF4Z<R;fHT$LH(I~ R;HD$F;L81H=eD1QH5IL"fAVIAUATUSHHVt dH%(HD$1;菥;L 腥;HPxHJHHx*pHcLH@HH)HH:;DmIHc:;H@L4Ic(H@H@ ;H@HH@@;H@HH@HL(Ht H;I9t0Ĥ;H@L,赤HkGLHӢs;蔤;H@HH@Hh}HLL Hl;Ib;H(XH@ H)HLeAV % =}IFHH$IHI) ;HLH跤;ILHr;HEףH(HD$dH3%(H[]A\A]A^;詣1ҹLH臢AV I~df.If;iHHHVHfD;AH5EHXH=!<1J蕡H5RGLffDAVIAUATUSHq ;;L ٢;HPxHJHHx*ĢHcLH@HH)HHp;DmIHc莢;H@L4Ic|H@H@ );cH@HH@@ ;FH@HH@HL(HMr H;I9t0;H@L, HDLH';;H@HH@Hhѡ1LL H;I跡;H(譡H@ H)H~ALe;H蒡H([]A\A]A^fD;yH5*DH%<;YHHHFHH=::1cH5pEL脠@AWL<AVAUAATIUHSHH8HdH%(HD$(1HGH)I9HD$ L5NHD$L9r0@Hu<"tH<\t|HVHUHIL9P_v΍PIcL>DHEIT$H)H9HFHE\HEHPHU"HEIT$H)H9HFHE\HEHPHU\Z@HD$(dH3%(<H8[]A\A]A^A_DHMHEIT$H)H9HAHHE\HEHPHUr@HMHEIT$H)H9HAHHE\HEHPHUf@HMHEIT$H)H9HAHHE\HEHPHUnv@HMHEIT$H)H9 HAHHE\HEHPHUt6@HMHEIT$H)H9HAHHE\HEHPHUb@EHD$ HHuHEIT$H)H9CHFHE\HEHH HPHUuHEHPHUHl 42@0HuHFHEHHHuHFHEHHHuHFHEHȃH}HH+OHHL$舡HL$HUH4HuHHRHDHE7H9MhHHH}HEIT$ H)H9HH H ADD1HzHE H\$ eH}HH+OHHL$àHL$HUH4HuHHRHDHEHuEHFHELH)Hv7><w0C^ ;臏HH;IrLH;@ % =>MHH;H8HH轏;H#1HHHH=W010HHuLHCH+xHHH襒HSH<(H;HHRHDHCI$Al$ LH BHCL $H+xIHHYHSL $J< H;HHRHDHCrL-] A}UHH芌IAƋC9C` HH9S?HBH[ECAC`E1DAE9A}Ic1HHICuaMI7HmE9~HH9S;HBH,C@tH H9KHAH vfDC`H;D@HCMcH)I9L¾ L$L$LefD1ɺH51HXH H9KHAH HCH+Ck`H9'HEHE]'% =;Hz u$1ɺH5[0HyH+HC1ɺH5a0HUH{HѺH+OHH $$H $HHKHH HIHDHCH9hHEHE {`HCH+WS`CD$RH)McI9HL 诊H+HCLH+L#L9ciID$HA$ L-WZ A}螋1H/LH蚋H$HA}tA}L0hHPA}WHϊA}FHxxLA}Lxx1L;YA}LH+xHHAA}H@ L)HA}IHHXA}HD$ʊHt$HMA}HD$诊Ht$LH_A}IFHZ I舊L0H$A}H@LppLH A}ATL8I@ t H;hvHH9CHPH(HH9CqHPH"AD$I$HPID$HDH0H4xXH6HHcVL HtHHHH9CHPH"HH9CVHPH)HH9CHPH[EtYAn~<D)AIcHI4HH9SHBAH,D9uI7HIcHI)A}L8HH9CHPH]A}A}HXP׈H;XX{A}ĈH HCLLD$H+xHH<$HhL $HSLD$J<H;HHRHDHCL-W A}_1H,LH[H$HgA}5A}L0)HA}H萇A}HxxLA}LxxL;A}܇LH+xHHAA}‡H@ L)H}A}I襇HHA}HD$茇Ht$HA}HD$qHt$LH!A}IUL0H$A}H@L`=LHA}$L M4$AF t I;nA}ILHL H{H+WIԺL褊HKJ HH HIHDHCH{H+oHoHSHH+HHRHDHCH)U 8rHHHH{H+OHH $H $H{HH HHRHDHCH9H+OHH $҉H $HSHH HHRHDHCCCH{H+OHH $膉H $H{HH HHRHDHCH9 H+OHH $JH $HSHH HHRHDHC҃A}IH葆oH{HѺH+OHH $H $HsHHH6HvHD0HC1116H{LH+oH讈HSHH+HHRHDHCH{H+oHzH{HH+HHRHDHCH9`H+oHFHSHH+HHRHDHC0H{L+gLH{IL#HHRHDHCI9_L+gLއHSIL#HHRHDHC/A}LLHӁIA}ƒHI11H{H+GHHaHSHH+HHRHDHCHUH{H+GHH'HSHH+HHRHDHCHA},LLHI_A}H`IH{H+GHH谆HSHH+HHRHDHCHH{H+GHHvHSHH+HHRHDHCHHcVL H{H+GHH+HSHH+HHRHDHCHH{H+GHHHSHH+HHRHDHCHpHHo;HHHjH@k11HE1H@t*HH@HRHDH0HtxtH6HtHH=!1豁HE1H@t*HH@HRHDH0HtxtH6HtHH=!1j% =uFID$HƉH=#1DHH脂;HHHH@HO 8؀1LH迀HH4;H誀HH/H@iH=o1踀AWAVAUATUSHxdH%(H$h1G9G` HIH7H9wHFH-N I{AG}t CpHHxuTC uKI/IGH9HEIE}H$hdH3%( Hx[]A\A]A^A_}1HH~IHtAGAG`fIt$LC It$L}I1HHL~IHI7I9wHFI,AGE@tI7I9wHFI AGnfDAG`I?D,@IGMcH)I92L }M/5D~HHAC t=E1 A}t~1HHw}Hu}Z~HH~EKIcċ}Ll$`HD$A@$E1D D$$}A~1HH}HNIcAvIDHPHcBy$DI7I9wHFI AG(IGI/AGujAo`}x}HLHzH fIH+wIIWJ4(I7HHRHDIGH9<HEIE AO`IGI/QAW`AGRH)HcH9HH {IIGHIII9WHBI AG$Ht$H LzAGAG`Au{IcLMtIvC IvLEI7I9w8HFI,AGu^@tII9WbHBI AGDAG`I?D4@IGMcH)I9tL zM7RDII9W(HBI AG%IGLH+xIHHGIWJ<0I?HHRHDIGHH+wH IWH4(I7HHRHDIGIH+oH~IWHI/HHRHDIG@IH+wI~IJ4(I7HHRHDIGH9H+wIf~IWJ4(I7HHRHDIGfD}hzHLHj|HfIH+wI ~IJ4(I7HHRHDIGH9H+wI}IWJ4(I7HHRHDIGfD}y}Ho)D$oH)L$ oP )T$0oX0D$3)\$@o`@)d$PyH{{}yHx}sy}IhyIH {}QyHT$Ht$LHH fHt$xdH34%(H2H[]A\@HD$H D$Hl$t‹;tHH/rHEHpHH9pw]Hl$fDHҁH DH=1sfH4$H9t$t-HFH$ DHpH}ctHEDH|$H+wHBwH|$H4(H4$HHRHDHD$H9uH+wHwHT$H4(H4$HHRHDHD$fqfDAVIAUATUSHPHA dH%(HD$H1;r;L r;HPxHJHHxHc*rLH@HH)HH;DmIMcr;fH@J,D$HD$D$(D$8H$ZrHHL ;IBr;H(8rH@ H)H~4Le;HrH(HD$HdH3%(u1HP[]A\A]A^D;qHHHoHTpH5NL%qDAVIAUATUSHZ@ ;q;L q;HPxHJHHx*qHcLH@HH)HHp;DmIHcNq;H@L4Ic ;oLK H DHHB1p;o;o;oHrH5Ho;roHH5Ho;UoHH5Ho;8oH~H5Hbo;oH$|H5HEo;H@(nH{H5Ho;H@(nH{H5Hn;H@(@nH{H5Hn;H@( nH{H5Hn;H@(XnHa{H5Hn;H@(1nH:{H5H[n;H@( nH{H5H4n;H@(mHzH5nH n;H@(mHzH5XHm;H@(hmHzH5BHm;H@(nmHwzH5-Hm;H@(GmHPzH5Hqm;H@(@ mH)zH5HJm;H@( lHzH5H#m;H@(lHwH5Hl;H@(lHwH5Hl;H@(lHwH5Hl;H@(@]lHwH5Hl;H@( 6lH_wH5H`l;H@(lH8wH5H9l;H@(kHwH5Hl;H@(kHvH5Hk;H@(kHvH5qHk;H@(skHvH5_Hk;H@(LkHuvH5NHvk;H@(%kHNvH5<HOk;H@(@jH'vH5/H(k;H@( jHvH5#Hk;H@(jHH5Hj;jH\H5Hj;vjHH5Hj;YjHH5Hj;BBE A(D0J 0A(A BBBC @$KFEB A(A0D 0A(A BBBD H0FBE B(A0A8D` 8A0A(B BBBG @0FEB A(A0D@ 0A(A BBBD <tFEB A(A0c (A BBBG HBFB E(D0D8Gp 8A0A(B BBBF 0 ?BDA G0  AABI H4 BBB B(D0A8G` 8A0A(B BBBB H BBB B(A0A8G 8A0A(B BBBH 4 BAD GI  AABE @ pKFEB A(A0D 0A(A BBBF <H |FEB A(A0a (A BBBI , FAA v CEE GNUP$$@ UJZ  0 8 o`   H 8 oo8oooH  0@P`p 0@P`p 0@P`p 0@P`p 0@P`pGCC: (GNU) 8.5.0 20210514 (Red Hat 8.5.0-22)GA$3a1##GA$3a1GA$3a1GA$3a1#Y$ GA$3p1113`$GA$running gcc 8.5.0 20210514GA$annobin gcc 8.5.0 20210514GA$plugin name: gcc-annobin GA*GOW*GA*GA+stack_clashGA*cf_protection GA*FORTIFYGA+GLIBCXX_ASSERTIONSGA*GA!GA+omit_frame_pointerGA*GA!stack_realign GA*FORTIFY`$$GA+GLIBCXX_ASSERTIONS`$$ GA*FORTIFY$q%GA+GLIBCXX_ASSERTIONS$q% GA*FORTIFYq%9&GA+GLIBCXX_ASSERTIONSq%9& GA*FORTIFY9&&GA+GLIBCXX_ASSERTIONS9&& GA*FORTIFY&(GA+GLIBCXX_ASSERTIONS&( GA*FORTIFY(F)GA+GLIBCXX_ASSERTIONS(F) GA*FORTIFYF)|*GA+GLIBCXX_ASSERTIONSF)|* GA*FORTIFY|*K,GA+GLIBCXX_ASSERTIONS|*K, GA*FORTIFYK,-.GA+GLIBCXX_ASSERTIONSK,-. GA*FORTIFY-.0GA+GLIBCXX_ASSERTIONS-.0 GA*FORTIFY02GA+GLIBCXX_ASSERTIONS02 GA*FORTIFY24GA+GLIBCXX_ASSERTIONS24 GA*FORTIFY46GA+GLIBCXX_ASSERTIONS46 GA*FORTIFY6'9GA+GLIBCXX_ASSERTIONS6'9 GA*FORTIFY'9;GA+GLIBCXX_ASSERTIONS'9; GA*FORTIFY;=GA+GLIBCXX_ASSERTIONS;= GA*FORTIFY=7@GA+GLIBCXX_ASSERTIONS=7@ GA*FORTIFY7@BGA+GLIBCXX_ASSERTIONS7@B GA*FORTIFYBBGA+GLIBCXX_ASSERTIONSBB GA*FORTIFYBBCGA+GLIBCXX_ASSERTIONSBBC GA*FORTIFYBCCGA+GLIBCXX_ASSERTIONSBCC GA*FORTIFYCCGA+GLIBCXX_ASSERTIONSCC GA*FORTIFYCIGA+GLIBCXX_ASSERTIONSCI GA*FORTIFYIKGA+GLIBCXX_ASSERTIONSIK GA*FORTIFYK NGA+GLIBCXX_ASSERTIONSK N GA*FORTIFY NPGA+GLIBCXX_ASSERTIONS NP GA*FORTIFYP TGA+GLIBCXX_ASSERTIONSP T GA*FORTIFY TlGA+GLIBCXX_ASSERTIONS Tl GA*FORTIFYl^qGA+GLIBCXX_ASSERTIONSl^q GA*FORTIFY^qrGA+GLIBCXX_ASSERTIONS^qr GA*FORTIFYr^{GA+GLIBCXX_ASSERTIONSr^{ GA*FORTIFY^{~GA+GLIBCXX_ASSERTIONS^{~ GA*FORTIFY~GA+GLIBCXX_ASSERTIONS~ GA*FORTIFYGA+GLIBCXX_ASSERTIONS GA*FORTIFYϋGA+GLIBCXX_ASSERTIONSϋ GA*FORTIFYϋGA+GLIBCXX_ASSERTIONSϋ GA*FORTIFYxGA+GLIBCXX_ASSERTIONSx GA*FORTIFYx GA+GLIBCXX_ASSERTIONSx GA*FORTIFY [GA+GLIBCXX_ASSERTIONS [ GA*FORTIFY[<GA+GLIBCXX_ASSERTIONS[< GA*FORTIFY<GA+GLIBCXX_ASSERTIONS< GA$3p1113##GA$running gcc 8.5.0 20210514GA$annobin gcc 8.5.0 20210514GA$plugin name: gcc-annobin GA*GOW*GA*GA+stack_clashGA*cf_protection GA*FORTIFYGA+GLIBCXX_ASSERTIONSGA*GA!GA+omit_frame_pointerGA*GA!stack_realign GA$3p1113##GA$running gcc 8.5.0 20210514GA$annobin gcc 8.5.0 20210514GA$plugin name: gcc-annobin GA*GOW*GA*GA+stack_clashGA*cf_protection GA*FORTIFYGA+GLIBCXX_ASSERTIONSGA*GA!GA+omit_frame_pointerGA*GA!stack_realign GA$3p1113##GA$running gcc 8.5.0 20210514GA$annobin gcc 8.5.0 20210514GA$plugin name: gcc-annobin GA*GOW*GA*GA+stack_clashGA*cf_protection GA*FORTIFYGA+GLIBCXX_ASSERTIONSGA*GA!GA+omit_frame_pointerGA*GA!stack_realign GA$3p1113##GA$running gcc 8.5.0 20210514GA$annobin gcc 8.5.0 20210514GA$plugin name: gcc-annobin GA*GOW*GA*GA+stack_clashGA*cf_protection GA*FORTIFYGA+GLIBCXX_ASSERTIONSGA*GA!GA+omit_frame_pointerGA*GA!stack_realignGA$3a1GA$3a1GA$3a1GA$3a1,`$n;m1 a9`$88$48| @8=8=8$N %48\0'@nintB))L8;AS%LLS SFL+SG':7)4o#/Z 3C! q#f8$q@%O3lN4#_ S;  B SS9   9 # Z A R< T#<C U#<  V $=( v; x$ yLt zJ |L CA  mG m/ B8= 1L1( C & ENK7 FG G qS'/ H8 P atD)pZS 3/"h#p.$x"1'S 2P G S x#P *! XR  ;(S !](A' ( @w)H(mSW/S]\#E /Fy;8>: E+;;?A (B C;G1>I E+JK; O|>Q E+RS ET80U;ac /a.d /1^=e|a g; Y=[ /; ]mx1h ;lZGn",o ;tHv /<w  xL 1p35$<;DX_rtLL<V17iGp.ByS;$ 1& |( * 0 C9{ H|A../   JS@:/*J0*J t#ipq fs!F-$fE2 =<7 /; 8 @ 49@F qS #26   #*2l5 5#?2h8J J#T2_ _#i ;r>v6_ k;D  t t#&+ ~@_ M@E &@ # 2 + + #5 2i-@ @ #J 2.U U #_ 2=j j #t 2WA  # 27  # # %# :# O# d# #  # 0 # E # Z # o #  #"  #- &@ l;_ !8 {41  qB zC ( S4 S@ S E  k  6 7 4 S D. YC0 75 =B>v@ z,A C $$E ( J 09N68%*PB@[H5\XB&]hJ4j xZ Sf SwE 4 yE 4  4 B6 &7  W #  -f:.f ~9    f$B   ?  @ !b3 !!d f "!e !f6!g/!h   !y A! fD! !5! f&!D !F fF6!G E!HY=""@"w'"@05" 4 "! qSY*"%b"'@"(w'")@05"*4 "+ BDIR#n2_;9IV$vs9UV$wS9NV$E-82$% x$/ 9OP$1 Cop(&e&2&&2&K#&UJ--&L  - &L -F:&L -/D&L --&L -mA&L -&L -7&L g&1"&1#9COP$2 ]copP'ye'z2&'z2'zK#'zUJ7-'zL  7 'zL 7F:'zL 7/D'zL 7-'zL 7mA'zL 7'zL 77'zL g'z1"'z1# '}^2$'UJ(TB' f0!' +28Q#' +2<)'S@2' SHS$8  `&Le&2&&2&K#&UJ--&L  - &L -F:&L -/D&L --&L -mA&L -&L -7&L g&1"&1#?& 2(8& 20,&UJ89&+2@& LH&4LP0& 2X$$< Y&*DP&e&2&&2&K#&UJ7-&L  7 &L 7F:&L 7/D&L 7-&L 7mA&L 7&L 77&L g&1"&1#?& 2(8& 20!& 28& 2@$& 2H;$G f6 $$3(#2QIop($24(%2u('2=C((2 h(*Fb((,20(-24;D(/Lb8(02@(12D (32H.?(4P"(5X<-(6` $(8+2h(:LbpA(<Lbx8(=Lbi(A1(C 7(E2'(HK9(K3C(L3C3(N2B(O2wA(^ 2(`1F(a1{:(b2,(n1e1(u1B(z2h(({23(}~V(~25(Rb9(2}B(sN(2 (2Q(3C!(Xb 4 (^b(c*(J0?!($82'($PR ($h/.(M1 (M1^ISv(2(db5(2^Ina(( 1( *(2 %(2(^Irs(20-(28(2@(2H(PGD(2XB(2`>(2h(2p(Tx? (T5(wS"(2`<(8h(2pW>(2x(2,(2)(2?(f (0( 2O@(1\ (2(27(2(21(jb (Aa"(/Aa(=ap:(?8E(@f) (B+2}>(D+2{(FR(I\(J  (K2(W(L20 ;(M28M)(Nf@<(OH (P2PG(Q2X=(T2`@(Uzbh=(Vp(X2x(Y2y(Z2z ([2{(\2|(]2}H(^2~c(_2G (af(b2"(d(f2(h2(l27?(o(pb(s2(t2(u2e:(v2((w28F(z2>(}2 1(2v (2C(2(2#(2*;(2T(2_(b  (28%(2@]B(2H#(2P(2X(2`l(2hU(2pp?(2x"(fG(=(2 (2Q,(2(2+(~V1A((0(fw<(b6(fD(2 %(2 ((2F5(!(2 G(2_<(2/( 2((2JA(2<(b6(29(bI(  (=p(Jx7(UJkG(UJt.(=6((+2Z'(2O(2E (2C(2G( ((}8(}qIan( +2HF( +2)(+22((+24(+28(x (f"(s5|(!b4(#<2`L(%+2d(']h<()2p\:(+2x%(,UJ(.UJ1(/UJD(1UJ(3UJ?(6fZ%(7(8(9+2;(:1"(;2>(=164(>2;(F2A(G2 (L`$/(N2(SZ(W)(Y2.9([fG=(\2(a2#(b20(c2  B(d2 (f2 P(g2 0(j2 F(k2( (l20 k5(m28 p&(n2@ 4;(o2H /(p2P .(rbX D(sb C(tb( 7(u2 $(v2 &(w2 P1(x2 &(y2 !(z2 (|2 1(}E 7(~ (b G(1 *<(2 E(2 d9(2 I!(2 @(b #)(2 =(/  (2( y;(20  (b8 ((UJ@ X(UJH :(bP 3(2X (2`  ([5h 3(bp (bx C(2 *(2 C(2 -(2 %(2 %(2 (da (2 0(2 C( 3(] .(] ;((] v-(] *(] h (!^ T (2 4+(2 & (2 6 (2 r$(2 (2( t;(c0 IG(b8 (a@ @(b D( c (   (d] #(" c ;G(-CJ (/ 9SV$O $$Csv).%*1)/+)+2)+2 )69AV$P :%Cav){%*1)|:+)+2)+2 )99HV$Q %Chv)%*1);+)+2)+2 ):9CV$R %Ccv)&*1)9+)+2)+2 )r9]9$S "&&`)i&*1)8+)+2)+2 );9GP$T u&CgpP* $'A* 2'* OJn9* =** +2* +2$<* 2 8* 2(:* =0 * 28-9*L@-**L@+* <H9GV$U 0'Cgv)q'*1)l9+)+2)+2 )8]io)'*1);+)+2)+2 ) ;$W '&`'?'h.'CWW&A`'(' 1$&' 19' 2C' 2e' 2-' 2 5' ~VG' 3C' ' 2(11'2V0$-$Z ( _0+ ),+ <+ X>+ 2G+ qU(+ 1 + i+ 2 8+ f(9XPV$[ )]xpv )a)u4)2*)<)3)<t$\ n)&z())u4)2*)<)3) =B)m< $] )&[ ()%*u4)2*)<)3)/=,()m< y$^ 2*&0)*u4)2*)<)3)T=B) m< %) *<($_ *&0)+u4)2*)<)3)y=B)m< %)*<(h$b + E(, a+u4, 2*, <t8, B,  ,, 2 $c n+  -+u4- 2*-<0--7$d +&0)4 ,u4)52*)5<)53)5=B)6m< %)7*<(v$e -, !Gh. ,u4.2*.<.3.J1.2 6.K(.>K0.`K8*.f@ .KH.=Ph=.+2X.=\U<.2`d$h ,&j)^ .u4)_2*)_<)_3)_=B)`m< 9#)b8(G)o>0C/)q s8)r s@.)s sH@)t fP`5)u 2X!)v f`?B)w 2h:)x fp )y 2x:8)z q)){ 1-$i . . @+ .+ -XB+ -X!+ LX>+ -X=+ -X E+ zX(=+ X0+ -X89ANY$j .rany$/ $ /1 $2L?$2$2$2$2$2<$f$<$ 2$ +2$ s"$ @$ 3$ 2l$ v2?$ 2&+:${/C$|M]@$}i $~ /$l /&&90$30+$S]$ $ $^]$M] $M]( $m @0&r!()b05)c2:)dV.)e2\)f2")g2  $q 0 z/0; / /&J"/' +27/( +29PAD$r .%_$s 0 #(/+M1}/, /-J{/. K//UJ #/0 +2  $t Z1 0/L1bG/Mf9/M2&/MJ!7/M+2V3/M+2;,/M+2 JB/M$//M1(/M1)BI80ZBU8041BI160m1BU160@ 2BI3202BU320L+2s+272L2<A2A0L20< +2Av2/ k25$w 6/F$y  $2 22 $' .% {% 82A22/  2 AE11s4:1316 f17 f<18 f7619 f /1: f(O1; f0W1< f8f 1= f@A1@ fH1A fP01B fX21D4`C1F4h31Hp+1It+1J x81M@ 1NZs#1O4;1Q4VD1Y 6!1[4\1\4D1]4<1^ /E1_ *1` 1b4EE22t1+2 4 2q4S 423! 42Y 4q4S34 s4-334M 3404 5< 54504 455<J525>[5 >55Nn52 674\175?7 2p+7 fo+7 2J17 2175ZL)>6 ) 8  }# $ ;>  *  Y9 N W D  k h  RC)5BHE)U6Che- 6:-$ 8-% <-)BQBHEK)6Chek --6}3-.+2-/2:-541)L7r)f)s)H))2)8A)2.)8e)8 )8 (.88u482*8<838r?N(8P@ B8g?((+8206B8+28@'8@8H8PD?8V@X(,8+2`T?8+2dc78/h1 8+2pM08+2t 8\@x 8 8fw"82-8F8 8#8-#8L-.8L  8= L7 8 J6 i& O51)l9r)f)s)H))2)8A)2.)8e)8 )8 +1)9r)f)s)H))2)8A)2.)8e)8 )8  ,1)|:r)f)s)H))2)8A)2.)8e)8 )8 +1);r)f)s)H))2)8A)2.)8e)8 )8 a+3);r)f)s)H))2)8A)2.)8e)8 )8 ,3)*<r)f)s)H))2)8A)2.)8e)8 )8_.)m<k) t9) 26) ^2E) 2_B)<-) sn6) D) <4) 2 6_G)<[) <q))  (3) ="))f3)/="))f3)T="))f3)y="))f3)="))f3)5=")5)5fl7): +2A=2= % = 03)_>")_)_f3)l<>+)m<>%@)n / b;M><B>*9M> 8>:818 1e68 28^> ! (8&>8' 8( 8) 28* 2@ 8+  8-?:8. 1&8/?>&?S 978:[?_#8; Qend8< !8C 978D&? &g?18?"88f G(h8K@A8@8@u88VA 8lA 'G8A( 8A0D8A88B@j,8(BH8VAP>8MBXA8B`? K@ > [?(.8L7 8@88 8@ a38n@.g?@22+2 @.2@2m?fff2/+2 @.f6A2m?2ff726A @ A.2VA2m? BAAlA2m? \AAA2m?&22 rAAA2m?&2A $A A.2A2m?A&2 A.2B2m?2272 A.2(B2m?A72  B./GB2m?GB 30 .B.g?B222P@g?B+2+2 2 SB/P8h -Crex8i -C98j3Cw"8l2 8nf-8o  F8p ( 8q 0+8r<8pos8s @k8t 1H b@ 68uB/ 8| C68}C>8~Cp8D8 f 9C&5 x8C#8  8 fu8PXI Cf!8\D 8]&J8^DxC8^"D C48FC8 2/8ADA8C/8 DA8C1 8 +2M08 +2 cp8D/ 8DA8C1 8 +2M08 +2 cp8Du8D >/@8EA8C1 8 +2M08 +2 cp8DA18 +2}8 2 8E me8D(X 8 E08 +28Z8 2< 8 2>  2 1/@8FA8C8C18$CD 8g?cp8D D8D$8+2(B8D0 8f8/8^FA8C;8 2>58 2 me8D/ 8 FA8 C8 C]8  2E8 f/8Fval8 /88?GA8C8Cme8DB8Dcp8D ' 8 2$Z 8 ($8" ,8# f0/(8&GA8(CW*8)Ccp8*DD8+D 8, f;8- 2 8. 2$/`81rHA83Cc184 c284 cp85D1 86 +2M087 +2488 2$89 2 ' 8: 2$A8;D(B8;D0me8<D8[@8=rH@ 8>rHN1HS /h8AXI8B +2cp8CD1 8D +2M08E +2 c18F c28F98G fI%8H f $8I (min8J ,max8J0A8KD8B8KD@[@8LrHH 8MrHV3h8J48D68 9CEyes8(D} 8 ADz8D.8D8Ef08F08^F8F\*8$FB8/?G8?GO8NH5 8QCJ6JS !8_C!:KS q'/;/!J6/"Ju/# J{/$ J 0 01/J?/ J/%J J aJ J M11/MJ7/M2(/M=1.K"..f1.>K71.2..1.`K}&.2Q.=1.K1.2=.<1.Kv.=./1& KSD&UJXsv&2Xiv&sXuv&<&K.2K2 K K3&4Le#&2?& UJ)&23& YLM"& 2,&  UJ u(0;1L=;3 fL+;4 f;;6 A;7 7;8 f#;9 f <;: f(  <*M-<, fr(<- f(<. <+-NG>- f. >. fE>/>0>1 >2(_8>40j>68'F>8S@uP?h P?jf ?k ?qP ?uf?v  ?yL(#?zfH>?{ P?}PX!? `A#?f8"? b?P7:?#?fU? P6? 1?fT? .?Q3?A?y B?f? ? Q\?YL?fH @? Pm ?QX?3 ` +?f0? F?Q?M#?f?  ?Q?#Q9? $?#Q0?)Q?  ?)Q /?f(? 03?f8E? @0? H M L   y YL 3 M  %?-N 21-&dQ}8-'2\"-(  +-EQ-F Q79-G-H 2G-I 23-J +2dQ.2Q22+2 Q M.H-MgRG-O2&#-S2wD-T2HC-U +2 -V +2 -WgR Qisa-X2('-Y20`-Z=8 -[ +2@ Q\1-gR-h <F-i R < 8-lS-mmR'-n 2-o 87-p 2,-x 2I.-yS 7-{+2(-|+2, -+20 Q ' qSC'!qS>'"m#'# C'$ 2p'% 2 "S '("S'S24  S&+(''S '( 2'* Jcv'+ =\1'- 2B'. 2 &&('3GT '4 2'6 Jcv'7 =gv'9 2D<': 2 &0'uT 'v 2&'x 2\,'y 2G'z 2cv'{ = w7'|T( wS3'TEsvp' 2Egv' 2/'Tary' 2ix' s/'U6' 2ix' s/'FUcur' send' s/'mUcur' 2end' 23'UEary'T5 'T<9'U>'FU&$D0'VJ' V*'T0'27'mU*' J( L&+7'2VC'21' 230'~V'SI;'S($'GT;'U-'V &kBX'WW>' 1' 1' 2_ ' 2G' 4' ' f' 2 '5'  2(Q*'  f0<*'  f8'  f@D'  /Ho'g?P3`'@|W%'A'hB'BV&50'W2 ' 23'W/'X<'X' 2 $' 2$Q' 2(r' 2, ' |W -'|W.-X22< X.+2LX22< 3X.zX22<22 RX.X2<GB X  .;@ XQval@ 5#@ m@ 2  @ = @X (@>Y@>Y!@ 2)@ f C@ f@ 2 XT!@ XYD@"](@&]C8@'5,@(V@+ @-5 @.] @/](Qps@0]0S5@4 28 @5 2< @6 f@#@7 fHk4@8 1P{*@9 1QB%@; 1R0@< 2S@= 2TY@> 2X7@? 2`@@ 2h1@A 2p)@B 2r]@C 2t@D 2xY#@E 2@F 2$@G D@H F@I2@J 1"@K 2_+@L 25@M 2 3@N 2@O]$@P 2)@Q fB@T fB@U f@V fF@W fN@X fc@Y f*@^ ^2_6@_ 2)@` 1t@a 1/@b 2!@c 8eF@d 2j@f !]@g 1]@?@h 1T)@i 1U5@j 1V @k 1W9@l ~VX@m `D@n ^2`>.@o ^2d;@rshF@ssp@tqxJ&@v2y['@xLx[@yLx[@zL x[8@{L xl*@}2{p@~ 1| PY X DY51]S2A]SD@PY / M]2 Y]&$]6$2$$]C$$] d]$Q]] ].]2\$R] ]A]22f$S]]?$U^  ^.2!^22$V.^ 4^A?^2xJ^<?^<$uJ^`>$wJ^$yJ^B${J^$}J^$J^$J^<$J^$J^A0$J^6$J^$ $J^x^S^ "$^U$$J^=$J^$J^0,$J^!?$J^$J^4/$J^F"$J^| $J^#$J^$J^$ 1J$$ 1$$ 1x_S@_$_z$J^x`S_ $`$`$59`<.` :$9`!$M>Y=$M>$M>M-$M>4`<5$`.$M>`<@$` $J^vO'L$a  t ? ' 7 4 '$5&.CH$F1apad$G1a$AaS&$PNa TaAda22M9$aqa wa.2a222($fK,$ga a.2a22$hNa.$ia a.b2fBLs52%BX|2B[b^DB\;B]'Bas3Be|23Bf|2!BixB|2'B|2[EB)B2Ba5B2KB#B|22B$B249eS^B)e4$4]$6]ZLC=.f  $  (  $   6 t% j/  E 8$ 1 G> ~    Z-  = / '8 . H  ! C [4 / 5 N ?>fS.fx=C>f._fSOf'C _f1fSpf$N f2f<f/&$bf$cfC$df$ef-$ff;$gfZLDh  ? n   ? > "  cA (  %    "   53     2   43     1 d q 0 ^( $! 6"  # z/$ % %& @' b/(  ) D@* + ,, - P. ,/ O0 +1 92 3 94 5 6 j'7 8 i'9 ': H,; R:< Q:= a>  ? @ FA &B V+C c@D E F G H 8I FJ K3$ZhEnv$ZEu8$Zhh1hS.$Zh3$[/iEnv$[Eu8$[h i$[/iS,_ 2 @ S_2 8 S ` 2 0 S`2 ( Sp1a 2  ZLci - @ 5   ^! h! 4;Hp j:q+2:@r+2s u2>v2g)y2 Gz (({0*|44+!~289'~2@4ij/p jcur fend fsv2QjC3+2`h j/h bkcur fend ferrQjY<+2`E+2d)kZkS@`&%ok  wd$ @[}%  2!cv ==+   ax 2"'0 2sp 2' 2@XB  V[l _p /~Wyl _p /0Wl _p /`Wl _p /Wl _p /Wl _p /97Wm _p /^\ X-m _p /PXKm _p /Xim _p /Xm _p! /Xm _p# /Ym _p% /<:@Ym _p' /a_pYm _p) /Yn _p+ /Y;n _p- /ZYn _p/ /0Zwn _p1 /`Zn _p3 /?=Zn _p5 /dbZn _p7 /Zn _p9 / [ o _p; /P[+o _p= /[Io _p? /[go _pA /B@[o _pC /ge\o _pE /@\lq i 0] p _p /xv7 7T OQ0 .\sp!.=\-. 7 !7T Q1 .<\p!.=\-.  A7 U7T Q1ɸ7ݸ7 qT Q177>qT Q1u7 7T Q0V7z7qU  Q R X 7777rT Q `$7ı7GrT Q @@˱77rT Q 277rT Q 077rT Q 0.,7B7+sT &Q 0.S7i7dsT =Q 0.z77sT RQ 0.77sT jQ 0.Ȳ7޲7tT zQ 0.77HtT Q 0.7,7tT Q 0.=7S7tT Q 0.d7z7tT Q 0.77,uT Q 0.7ȳ7euT Q 0.ٳ77uT Q 0.77uT Q 0.'7=7vT +Q 0.N7d7IvT :Q P,u77vT VQ P,77vT qQ P,ô7ٴ7vT Q P,77-wT Q P,7'7fwT Q P,87N7wT Q P,_7u7wT Q P,77xT Q P,7õ7JxT Q P,Ե77xT 0Q P,77xT EQ P,"787xT _Q P,I7_7.yT zQ P,p77gyT Q ;77yT Q =77yT Q 09Ƕ7ݶ7zT Q 677KzT Q N77zT Q P747zT Q `;7Q7zT Q  ~X7n7/{T "Q `{u77h{T :Q r77{T OQ *7η8{T Q|R cX0շ77|T jQ 477W|T ~Q I7%7|T Q K,7S8|T Q R X Y0Z78@}T Q `qR X Y07x˹8(> `qKy%  2E A !cv = ~ +   sp 2 ax 2 0 27 3  2 )~@ 2 )~@QP j 9.qP*Q h~F.& $ `P*r7&r~~UvTwQ00r7:r7r7 r)8TvQvR1q7Ur7 /qP) #&/K I q7q7q7r68 r@8U~T j(9 K%  2r n !cv = +   sp 2$  ax 2 0 2d` 2@U9  2U@QF j 9.VG F.SQ`VƮ7ԮUvTwޮ77/7 B)8TvQvR177 /KU <&/xvA7K7a7L68 [@8U~T ( K}Ɔ%  2!cv =+   sp 2A? ax 2pd0 2 2OM` }< Ɔ5L _p; /5L _p< /5LՂ _p= /735 M _p> /qm50M) _p? / .L ; ..". .[U MM8T} .L < ..". . MM8T} .LP= L.mi.".. MM8T} .M> .1-.kg".. MM8T} .;M? ../+".@.ke MM8TvK7L72L7`L7oL7LZ8tT}Q L7L7L7L7M7;M7M7M7T Q1 Mg8U  5RMTm YM7dM7 /K0  }&/K7K7K7 N@8U}T  j(| I% | 2!cv| =E=+ ~  sp~ 2 ax~ 20~ 2a]~ 2` }< Ɔ5J _p2 /($ .J 2 .b^.". . kKM8T}4J7UJ7rJ7J7J7JZ8T}Q J7J7GK7[K7͈T Q1 {Kg8U   "m $""K7-K7 /I0 ~ K&/JHI7I7 J7 K@8U}T (fZ 4*% Z 2qm!cvZ =+ \  sp\ 2 ax\ 2@60\ 2\ 2  Ps}<` ƆFBT57u575757575Z8T}Q 57,67:6t8T}Q~u6768&T}Q0R26767WT Q1 6g8U  5M6mw ~|T67_67 /5 \ &/ 5757-57 6@8U}T ([)8 * % 8 2!cv8 = + :  sp: 2mk ax: 20: 2($: 2{yi%> 2}<? Ɔ0_p $/L.++ $K /QO*7+7"+7P+7_+7q+Z8T|Q +7+7+8T|+7+7,7,7.T Q1.,g8MU  <,g8U @5+mU vt+7+7 /*: ׎&/*7*7*7 K,@8U}T ( r]%  2!cv = +   sp 2o c ax 2! 0 2!! 2#""*ޔ}< Ɔ""@ 2"" +ԐFlen stru#q# cur## /tp+/##/$ $/7$1$ t8T|v7v8ƐT|QR2x,+X sv2$$@WD \u0,$$=0,*%|%T5uG>TGwGPGYGbGkTtx Hzg8U w7w~őT~Qw7w7+x7;xt8 TQy7y)8<TQR1 J{g8U  _.v,"|.:'0'q.''=s7Vs7ss7s7s7sZ8T~Q s7s7Ct7Pt88T}Q0t7t8bT|Q0 u7 u7(u8Uv7tv7v7v8ғT}Q2R0Bx7Sx7x7x8y7'y85T|Q2R0oy7y8fT Q0y7y8TQ}y7y7”T Q1 <{g8U  /r* &/&($(r7r7s7O{68 ^{@8U~T S(2 `{%  2M(I(!cv =((+   sp 2(( ax 2))0 2C*=* 2** -}< Ɔ**@ 2++p- sv2F+>+@WD@ ,}- ,++,++),++ }21H,~|7|~U~TvQw|7|7}7)}8-T|3}7>}8RT|w}7}8T~Q0R2}7 })8TvQvR2{7{7|7.|7\|7k|7}|Z8!T}Q |7I}7}7}7lT Q1 ~g8U  /{, &/-,+,{7{7{7 ~68 ~@8U~T d(x  ~% x 2T,P,!cvx =,,+ z  spz 2-, axz 2--0z 2q.k.z 2..@.5}< Ɔ/ /@ 2>/2/~7~7~7~777)Z8TT}Q 87O7_~U~TvQ0i7s7777T Q17)8TvQvR1 g8U  /G~.z ^&///=~7G~7\~7 @8U~T d(X `B% X 2//!cvX =*0"0+ Z  spZ 200 axZ 2g1Y10Z 222Z 2l2j2VН}<` Ɔ229 a 222ү7777H7W7iZ8T}Q x77,U~Tv77̰777T Q17)8TvQvR1 -g8U  /PVZ &/W3U3}777 <@8U~T (n@ Py%  2~3z3!cv =33+ !  sp! 2(44 ax! 2440! 255! 2551}<' Ɔ55 key( 27636 cb* 2s6o65Rz _p /66R7 R8T<5!R+ԟ_p /*R7 LR9T}QR0X0Y0 _p/66 .jS S.77.]7W7".`.77 SM8T} Q7(Q7AQ7^Q7Q7Q7QZ8ƠTQ Q7Q7nR7yR 9T}R7R7R97T}R7S9sT}QR0X0Y0S72S7ES7jS7wS7S)8סTvQvR1S7S7T Q1S7 Sg8U  /P`! Z&/77P7P7P7 T@8UT w(a  Nuܥ%  288!cv =`8X8+   sp 288 ax 2D9:90 299 2):!:j}< Ɔ:: cb 2::5QO _p /';#; .\O .a;];.;;".0.;; cPM8T~N7N7N7N7O7OZ8mTQ !O7BO7\O7O7O9T}O7O7O7O7P7#P7T Q17P7JP)8NTvQvR1 vPg8U  /=Np &/#<!<3N7=N7VN7 P@8UT `(= 6G%  2J<F<!cv =<<+   sp 2== ax 2r=f=0 2== 2O>M>,% >># 2>>}< Ɔ>> sL?H?L8787 9'9T|QvG77\77d749y77777777777Z8T~Q  87(8787878787T Q1 9g8U  5t8qm ??{8787 / 7 &/??77 77#77 '9@8U}T (z 09U%  2??!cv =@ @+   sp 2{@q@ ax 2@@0 2oAiA 2AAp}< Ɔ;B7B' +2979797:7 :72:Z8TQ A:7d:7:7:7:7:7:7:A9T}Q2;7';7:;)8ЪTvQvR1O;7c;7T Q1 v;g8U  /]90 F&/sBqBS97]97v97 ;@8UT (`C =G%  2BB!cv =BB+   sp 2mCgC ax 2CC0 2LDHD 2DD߭% +2DD# 2EE}< ƆMEIEѬ EEX?7@7 @N9T|QvW>7l>7t>49>7>7>7>7>7?Z8^T~Q ?77?7?7?7?7?7íT Q1 (@g8U  5?$m EE?7?7 />P M&/ FF>7>73>7 7@@8U}T (.@o ;UJ% o 21F-F!cvo =rFjF+ q  spq 2FF axq 2VGLG0q 2GGq 2;H3Hذ}<w ƆHH:@x +2HH <7&<7C<7q<7<7<Z8֯TQ <7<7<7<7=7<=7K=7[=A9NT}Q2e=7=7=)8TvQvR1=7=7T Q1 =g8U  /;q &/HH;7;7;7 =@8UT $(&Q P,% Q 2II!cvQ =`IXI+ S  spS 2II axS 2nJdJ0S 2JJS 28K6K ixT 2rKnK5,/ _pT /KK`q}<Z ƆKK,7,7-7/-7>-7P-Z8TQ _-7v-7-7-7-7-7-)8$T|Q|R1-7 .7UT Q1 .g8U  /},0S &/LLs,7},7,7 -.@8UT (5$ 0.϶% $ 2FLBL!cv$ =LL+ &  sp& 2LL ax& 2uMaM'0& 2& 2YNQN ix' 2NN5. _p' /7O1O]}<- ƆOO+. OO.7.7.7/73/7G/Z8[TQ V/7{/7/7/7/7/7 070[9ӵT}Q2?07_07r0)8TvQvR10707AT Q1 0g8U  /].& &/PPS.7].7v.7 0@8U|T (, 0%  28P4P!cv =yPqP+   sp 2PP ax 2QQ0 2+R'R 2~R|RP}< ƆRR=17V17s1717171Z8T}Q 1717"27727K27RT Q1W27j2)8TvQvR2 }2g8U  /0  Ǹ&/RR0707 17 2@8U~T (*2_% 2SS!cv=XSPS+  sp 2SS ax 2%2ZZ%Q Ɔ[k[%*".Si\Y\Fdec bk~ sv22]]0'?WD ,^&^ pg8U 0Q_p /( uni 2{^u^Fcop ~ ,Ep )&,^^,^^),_^ !q21H,s]o7eo49qo7o7o9o7o7o9MT}o7o7p9TvQ~R}XDY3p7p9mpg8U R}/q7 Aq8TvQ0R2 bm`'S<_8_"'~_x_D( $L(mm,-(__(__ n0UsH(sM0( $"0('``D( $ .Bo( S.``.``".(.aa YqM8Tvl7l8TsQ2R0l7l9TsQ~mU~m7m8Tv^n7in9Tsun7n85Tsn7n9_TsQ3n7n8TsQ0Bo7pg8U (q68IP%2T@!dec@aQa:VE JnT$\ee=iffuggTT)hhuT7 T8T<M$"iiD  $ .TP.5. jj.Cj?j"..jyj sfM8T|)jjkkkk)jllM$"@m8mD` $ Z#mm"mmN e% $ . [.nn.YnUn"..nn eM8T .g .nn.oo".0.[oSo giM8TOZU}ZU}Z7[9OT|QR0X0Y0 [7g7"`oooo \"pp"\pXpNf# $ c\ Kpp"0ppNf% $\cU}\7 \9T|QRX$YMp $"pq qN(d( $ g[ O|qxq"qqN`d  $)nsrqrr)`(s"s`7`7`7qk7yk9`7`7`9`7`9`7a7#a8ET~.a7Bu8u)K0Puu'j7:j7Nj7k7k9L.jj   /,v*vi7 j7j9j7 j9fj7j7j8AT~j7j7j:xTvQ3j7j7j7k7k7k9k7k:kg8U k7k9$T|k7k7 l)8TvQvR1si7~i:T|i7i+:T|Q0i7i:T|i7i8:Ti7 i9TvQ|R0X0Y0T73`7>`u9`T|i`7 t` 9T| F@U`$XsvOv=`exwroyIyG [UP>"zz"D{@{D $M@Gc$"@{}{D $ .U.{{.S|O|".0.|| fM8Tv .V`.||.B}>}"..}x} gM8 ]Nq}}"P ~~D  $) 2\~V~~~yo Ԁ)!5^7^7^7i7 i9 ._!u.MI.".!. WiM8Tv ._!v. .KG".". GiM8T~)0"ӃуL.lala w G /0^7;^E:lT|F^7S^Q:TvQ0f^7z^^:TQ R0^7^7^9^7^9_7b_7u_k:KT|QR1_7_7_:T|Q2_7_7_7}a7a7a7a7a9Jh7Rh:h7 h)8T}Q}RUJU}U7V7]|U}Ie7Se7h7 %8V`"7575=`"DR<QV>G^)g#ThZJ)up#gv"c7cw:sTvQ| $ &Rh7h:T~h7 h8T~=b7Hb:Tsb7b:T~8$8&0 $ &c),Uv*h7 ;h8TvQ|V)lUvV7 W:aw- W#$yk=#TWT)p$%W7 2W8T;M$UU$"$XTD % $)P%a W%d  "P&vnD& $ SY&q !ދڋ"&NP]( $W9U}W7 W:T|Qa7 au9T| UU}$X7/X7>X9TsX7X9Ts i.U 4i.2U Hk68 bkJw?42J*dec4@tag62val72:VE0)avX 2iY lenY 'y4Z 2sv[ 2'D` 2spe20'hLb0_pu/0_pv/,_pw /0;_p/,_p/Jm2*dec@sv2hv2:VE-0_p /0'2pfef0key20_p/,_p/,keyflen0ncb8he8,sp2'$0^'Lb,_p /0sp 2'$0' Lb,_p! /,_p./JP2%*decP@avR2:VE}0_pR /0'\ 2,_p~/Jy2*dec@'1'_# f:VEK,len ,uv1 '2 IF>2C&!dec>@kQ sv@2u^@A7z.B fzVEF0FbufF &~ curG f] chK4W/p A lob hib]C 6,H !Q,pdG,b6,HP Q,ɛǛG,hE0$UuTtHIu G0TtHIu=` @{'~],G ,C?x,n,b],,G0 ,x,n,B@3G7 LG:TvQ~R~X@<$= lenme cur͝ɝ 0D  *00*(0QM D:T}Qs F,UQsE7 E8T}Qs0I7AI8T Q0I68q7RS @J( (*dec(@d1*Zd2*Zd3*Zd4*Zcur+:VE9 4?'*dec@,ch q?B**dec@IE2;%9 2%Q ƆC9Fenc j~L(*(( 0UvH(v wpS+ `S"ZV (` T&p((Р̠(4( (B@ ,TvQ1{(̭PT'(ge(4(̭̭9((ء֡(ѭ4((75 ,TvQ1 -T-\Z).Tn.78TvQ1:7 h9T@7!8T|w;UwTv^g8-U X 68(~Ћ_!enc~_΢!sv~2u6`Flen str f̦Ȧ {(3@6c((D@(36(~z((Џ8((,* ,TvQ1 {(e6(SO((e6(˨Ǩ((5(A=(yw ,TvQ1e2UsT}7 Ì8T|QR274 i2 u+2֩)q nzqΫ(#@7 ((Э̭(xC( (WU ,T|Q6 ep7zsgC=p7)8T)@9*)9%ڕ777^7f9 {(9* (MI((:(Ŷ((:(;7(sq ɝ,TvQ1 {(0:+ ((طԷ(`:((NJ(w:(( ,TvQ1 {(m:- 8((%!(m:(_[((b:(չѹ( z,TvQ1 {(:. (40(rn( ;(((:("(ZX ,TvQ1 {(P;/ (}((;((51(:(ok( Ş,TvQ1);Ҽʼ {(ۗ;8f(HD((ۗ<(((@(62(om ,TwQ1ۗ;~Us ;Us {(@<A D((Ծо(p<( (JF((:(( @,TvQ1779ɕ7ѕ97=7H:TvV7c8Tq79 TQ|77:BT~Q3̖7mgUs7:7M)8T~Q~R2 g8U @)<߿)=67.7D77 9<7I7\7d977979^7{7:Tv78T791TQ|˙77:hT|Q27!7/;UsT~כ7ߛ:7)8T~Q~R1 g8U @5UsT Q4R0}7:ZTv78T|7:Tv̐7א8Tv78TvQ0R2g8U FUsT Q5R0uUsT Q4R07^:T|Q R07՘^:T|Q R07[9 TvQ2a7l:2Tvv7 8Tv)0=p)Uv7:Tv78T|ӑ7ޑ:Tv78Tv78ITvQ0R2 g8hU p7:Tv&7 18Tv 1`=gLM9?-=`=Xc {(p>@((\X(>(((48( (DB L,T|Q1 >D:mgS0?" (S?&((0,(ɜ/(hf( ޜ,T|Q1{(?'((4(9((#!(0(HF(mk ,T|Q1)p?q I@J xr@"@ ( A9(IC((iH((  ,TwQ4/͓͓/GC/~/ ޓ:T Qw hpAR d {(hB.|(HD((h@B(((@(62(om ̔,TwQ1 pB3 (B$(( (Q7(FB(} j,TwQ1{(B((4(A(((8(=9(vt ,TwQ1  C1 0C" ( C&( (MI(ɚ7(( ,TwQ1{(C'(( 4(Q(0.(VT( H(}y( ,TwQ167Fk:TvQ| $ &R0c;Us UsT Q4R0 'CUd@D",( (D&(fb((a/(( v,TvQ1{(D'($"(JH4(9(om((0(( ,TvQ1 <DU'0EUQ"0E ((`EF(('#(/2(_]( B,TvQ|4/11/// A:UvT Q| {(<EXe(([W(<E(((l4( (., ,TvQ1˒7֒E:Tv g8U D7O:TvY7d8T|~7:Tv78;Tv78jTvQ0R2ˏg8U 7!:Tv+%UsTv&71:Tv;7 F8Tv (H F(UQ((08(( E,TvQ/ (0F (,((hd(0H(( K,TvQF{3/@$\/$P/$D/L3/ŎŎ\/P/B@D/hf :TFQ1R o:U?z ;Uv7:T|Λ68 g83U QvH7 Z8T|Q0R2 j?%*enc_*sv2svt >6'D20'y4 20'$sp 20' Lb,i3,spG 2,'J Lb,'Dj ([F +!enc_!hv2w_ he8zpKW$ H:PL iQ3|l@r +{ hes8>,5:n sv27h9LT | $ &3$7 8T}5@ FcopzH7797977ǧ9 T~ϧ7;G U}TzQ8R P)7779+73: 0M  *$pM"ws (pM&a (((3('#(_] ,T~Q1{((N'((4(((=(((14((TR E,T~Q1 @Ng }w8N"N (JN (LH((ʨA(( ,TwQ~4/VV //CA/jh c:T Q~ 0O$ {(O.@ ( (IE(P(((88((1/ M,T~Q1 @P3XT (P (((3((@> ,T~Q1{(P(ec(4(=(((4((64 ժ,T~Q1pP1]YpQ" (p PQ&h(( (3(GC(} ,T~Q1{(ةQ'((4(ةة=(((4(<8(tr ,T~Q17)+:NTsQ0;U}TzQ8R @&Ѥ1UT~H~;U7 Ʀ&;TsQ~}7: Ts7+:5TsQ0Ƣ7 Ѣ:Ts {(Ӡ`F(((ӠF(=9({u(Х8(( ,TvQ1 {(,F('#(ea(,F(((8((86 ,TvQ1  G ?a[`G" (`G&(($ (3(^Z( -,T}Q1{(HH'((4(HH=((,*(Q4(SO( e,T}Q1 0H@pH"pH;7 (RH!(((@((DB ,T~Q}4/^^ /ig// k:T Q} HF {(I.b(VR((I(( (8(D@(|z գ,T}Q1 J3 (PJ (((Ц0(SO( ,T}Q1{(J((4(@((" ( 7(IE( ,T}Q1XJ1XJ" (XK&((XT(@0(( U,T}Q1{(p@K'((4(pp@(:8(`^(y7(( ,T}Q1 Q R"51 (`R&(ok((=/(( R,TvQ1{(lR'(-+(SQ4(ll9(xv((u0(( ,TvQ1 R- )S^Z"S (20S((0,( 2(hf( ,TvQs4/;;/// K:UvT Qs 7:ATsx7+:kTsQ01UT|H|ϡ;Uס7+:TsQ07&;TsQ|sg8U x688;S?I'P),%!ai&"!b)iq_)7h)3;R2)7*@;T~QsR|*7A*@; T~QsR}U*7m*7IJ3w@&H!a_wi62!b_w*iso cmpy a{8 b|8 la~ ! lb YW|&M;?\1*enc\_*he\8,svb 2lencstrd f?9*enc9_*av92i;len; ,svpH2?@,*enc,_?"*enc"_?*enc_?<3*enc_,'  ({(!enc_|!strf' !len+>8%z04 end f.' ch4n@/$@{' uch ],s/!,x,ZTn,b],@0,x,n,/-Ä7 ބ:TsQRX@<$ (0"(XR((B(( ,T (0"(D>((H(( ,T j/˃0"/A?{/om Y;T1Q R r (L01\#(((އB("(\Z ,T 6,U`1"#Q,G,|6,00@Q, ~ G,   (օ1K$(  (6 2 (g>(p l (   ,Tg8p$U Ts g8U  (1%(  ("  (P>(\ X (   h,T (2%(  (  (>(H D (   -,T (U02&(  (  (:(4 0 (n l  ,T (`2|&(  (  (:( (ZX Ά,T (Ձ2&(}((:( (FD ,T (2t'(oi((-:((20 B,T(U2([U((E:(( Z,T (1.m((IA((7(@<(xv ,T~Q|u68?(*enc_*chq? (*enc_*len,curbuf fJj)a9 j2IDU%)!svU2 svtW >6)Flen[` pv\ fVT&7 )&8TsQwR29&68IA(*!sAy@C`@\D\ negE)*V*UUT`Q\R0X:1)*{*UU#R0X:F)68} 9&/,iscO%,O\1bO;OEG'j/!j+ dig 1m+ _W neg'*+T}Q|R1(*+T}Q|R0 D(*T}Q|R1 &'d;a -$@ Kr6,>sv26WDfK],>s>ch#K9,>s>len'6{'4S~'f$-isv2F:O;O;+c-$` I---#=`- q%g8U c-$ --b\-=-0%7D%9TUK#->l1>l2dsum e(.>sv 2,kKt329.679dsv2e4_.6QƆk4jJE.*s.*off$ 1Jos.a o2*ao$.*bo1.e.6 2>sv2,drc+2KrF2/>sv2K23/6  2UAj/>__sAl>__nA6AlU"/>__s"l6"lU%>//675>/6>6!>U'/0675'/6'i6!'U/7067516o6!V.B60!.-.QOB7 B7TsQ1V7Br0$I$IV~tb$  n  z   !!GV(PCF21$($(C)V ,CP1),u!i!$,$,c.C 1."!.V"L".""hC81QT C8TvQsC7V?7 ##$ {( 3^2(p#l#(##(`3(##(9$5$(8(s$o$($$ ͊,TvQ1)3^3 $$gP"%% 3Us78<3TvQwR27 :Tv {(3n4(F%B%(%%(4(%%(%%(щ?(4&0&(l&j& ,TvQ1 {(:@4q4(&&(&&(:p4( ''(G'C'(T<('}'('' i,TvQ1 4r)!6'' (4g5((((V(R((`0(((((( u,TvQ1{( 5(((())4(:(9)7)(_)])(1())()) ,TvQ1 0P5p)7)) (056(**([*W*(0(**(** ,TvQ1{( 5(**(++4(  @(>+<+(d+b+()7(++(++ :,TvQ1ĉ7Usϋ68E`  FS S FOOF{$$F ddFkkF/ PF::F2  F''Fn JEJE??Fb$'$'FF J8J8F FF >>F EEF W GFh P F88Ft ]]F Fj"j"F FEEF++F F 6=6=F *-*-Fz 88F F1 CCF L/L/Fy5y5F**F F PPF! 77F g g F FP ((FU aaF|(|(F||FB OOF88F--FAAFFFFPkEkEFF%%FEP F1)1)FFFPFF6WG((F ..FW%%Gn0n0FW)EEG HqFFIIIH; >>F$$F ^^F PI@ W}sGpowpowJB1 : ; 9 I8 1B : ;9 I8 1 : ;9 I841B 1  I ( 1RBUX YW  4: ;9 IBI : ; 9 I : ;9 I4: ;9 IB U4: ;9 I?< : ; 9 I8 1.?<n: ;9 : ; 9 II4: ;9 I&I1RBUX YW 4: ; 9 I?<: ;9 I : ;9 I8 !I/  : ; 9 !: ;9 IB" 1U#7I$1%: ;9 IB& : ;9 '4: ;9 I(.: ;9 '@B) 1U*: ;9 I+.?: ;9 'I<, - : ; 9 I 8 .'I/ : ;9 0 1 : ; 9 2<3 : ;9 41RBX YW 5 6: ; 9 I7 : ;9 I 8 8$ > 9: ;9 I: : ;9 ; : ; 9 : ; 9 I?.: ;9 ' @4: ;9 IA'B: ; 9 IC : ; 9 D1UX YW E : ;9 IF4: ;9 IG 1H1BI.: ;9 'I@BJ.: ;9 'I K.: ; 9 'I L1RBX YW M1UX YW N1X YW O: ; 9 IBP.?<n: ; 9 Q : ; 9 I8 R!I/S4: ; 9 IT 1U.?: ; 9 'I 4V.1@BW.?<n: ; X : ; 9 IY : ; 9 Z> I: ; 9 [ : ; 9 I 8\ : ; 9 ] : ;9 ^ : ; 9 I8_ : ;9 ` Ua: ;9 Ib1RBUX Y W c1RBUX Y W d4: ; 9 Ie.: ; 9 ' f : ;9 g41hB1i: ; 9 IBj4: ; 9 IBk4: ; 9 Ilm% n$ > o p&q : ;9 I8r : ;9 s5It: ; 9 u : ;9 v> I: ;9 w.?: ;9 '@BxB1y4: ;9 I z : ;9 {1X YW |1RBX Y W }.: ; 9 '@B~.: ; 9 'I@B41B1.?<n.?<n: ; 9 Gv; /usr/lib64/perl5/CORE/usr/include/bits/usr/include/sys/usr/include/bits/types/usr/lib/gcc/x86_64-redhat-linux/8/include/usr/include/usr/include/netinetXS.cinline.hXS.xsstring_fortified.hstdio2.htypes.htypes.htime_t.hstddef.h__sigset_t.hstruct_timespec.hthread-shared-types.hpthreadtypes.hstdint-uintn.hstdint.h__locale_t.hlocale_t.hsetjmp.hsetjmp.h__sigval_t.hsiginfo_t.hsignal.hunistd.hgetopt_core.hsockaddr.hsocket.hin.hstat.htime.htime.herrno.hnetdb.hnetdb.hdirent.hdirent.hperl.hmath.hop.hcop.hintrpvar.hsv.hgv.hmg.hav.hhv.hcv.hpad.hhandy.hstruct_FILE.hFILE.hstdio.hsys_errlist.hperlio.hiperlsys.hperly.hregexp.hutf8.hutil.hpwd.hgrp.hcrypt.hshadow.hreentr.hparser.hopcode.hperlvars.hmg_vtable.hoverload.hpthread.hproto.hstdlib.hstring.hmathcalls.h `$K  =s !<Xo#  o<J . <X ~f   pr z.q  fu<[  fY Ig =  tJZKXp.tt %Y; rX>Z'J    g = WZX YvJKz _;=I KIMJ 9= >JK-Y[f|zJB .L-J:L;K <V>  L <J-XXL  K ...9ft sX KYJ U<J$<vXH5l&J<I$<<iJJ uY P.KXJ/ Et < < IX <zJK $]<HL$<t1JCu5gx OK !fJ J J = s 2  7tX.K  XXjX#  j.J < X JJ<K b  X .*8[5& \ 5u~ft!-K - KJfX ~. ~X<JJ.JnXJ<NtJ< XX*o ~X s 4K  XXjX#  j.J < X JJ<K c  X .*8[5& . }f KffX }. }X<fvX f<f t" }* t ;K  XXnX#  n. Jn< < XtJuJ Bfy P<z> X .*8[5& W }f KtfX }. }X<fv!f<f!t }* t =#K  XXmX#  m.J < X JJ<KeX X .*8[5&  }X)JJ}Jt X. ,XLn*(  ( yu @@~K  XXoX#  o.J < X tJtL#&>J#&>J#&>X#&>XK GM= F>j>r<t<  zX >  w.<Z  < oJ! J]E 2=yf~ 2zX9Jz 9  z2Jz<  ' >9/ yX y  < fJ<  J LJ  >  < Lt v   vJ  < v<  t KI<   K J<MMYI=J .J$ t ? >   ֐(/9<,JJJ(/9<,JJJ(/9<,JJJ(/9<,JJJ(/9<,JJJ$2.!J.JJ6 K =%J tJ<\.x v  tX xX=<>KX 5%"M%M"Y%K - t!8 x  iJ xJgt<gt<gfhf!xw >J xJgt<gf g  xtXSKtXxX   "LXXTtX XtX]tXXXx = X .*8[5&  \*   J <}JJptYK X O) J< X .*8[5&  \* | X J <|J i  f $J'ff J |X X|t g <. L  J X<  -fX |. |X<f|ZpXf <*|JptYKY{ J=np   J=7. imt  L {=Xp   =fm<J7.tX=<< ttK f t mJJKXtL kXJ=JKv,>tX=<< ttKD.D<X > tYY t>X}"K $  t4 t-;}r  <)X,*;  u  KX . J < < 1   t k<Jz qK I =;)r  <)J J <t<J7~ u qY I =s)X qY I =s)JttJ.tX  /;tX*  H v#! L|ּ t   L :v<l<XwX r<J ~tJ} t<Jw | qg I =s)J q I =s)JyX  ftw+=f tfK-Jq? tX? .?<X>uYY < fX ~XX Xvl< X `fJ-=XxX t/ Xf- ? GM!XX"fh : JYx cY g >y=Jim   X=7. iJz<  ZXJJ0tt.* 0X Z*X. yJ=fp.   X=7. imt  Z J  sX=<< G? XI==u)Lr#.IsJ f \-tytrJ W =;)Jzr W =s)XXXX#w(st /s .XXiX#  i.J < X tJfL< zXn.J zn X n KXz<=X.=< Y=- =J z.J zX<f... zJ.nX r} Ks .XXkX#  k. Jk< < XtJuJ Bfy P<z> X .*8[5& 8if<X{ J ) X K.J     %J"Xt.l!!tL+tnJ n<  < XoaJX< =J[JX<&=J ..JfJX<16:XJ:J=JE<INJQX<_KX<15:XJ:J=JE<INJQX<_LX<14:XJ:J=JE<INJQX<_MX<13:XJ:J=JE<INJQX<_NX<12:XJ:J=JE<INJQX<_=<$'=;K$s'=$J5'tu$J;Bt'<g$J;Bt'<g$JB'fiX'JuYIJK(<*<|B/- |tBX:e |J#$XXX'JuYIJK(<J #ZJ3}f+< I+<<#XX ~Xv  t ~f<gtA'Ju<(tt X} =IJYX f 'KYY(JWJK(<J-$J)'J0'KY(JWJK(<'JKYI<K(<'JKYI<K(<'JKYI<K(<'JKYI<K(<'JKYI<K(<'J<KYIJK(<~ >HJYt<gX'KY(JWJK(<~ u ?GJYt<gt<gXhXQX ~<~r  t<K "~r<  t<~r<  t< t0/J~r<'KWuYIJ=(<.)~<  t)~<  t<~r<'KWuYIJ=(<(~'KWuYIJ=(<'KWuYIJ=(<J~rKW=YIJ=(<'KWuYIJ=(<J~rKW=YIJ=(<f=; !|r<  J |<<<u|r<  t<A$0   - s .  ={ I<2K%;=%- = 1  mXJ..J<WJ.X5<WE<>J=>-U< <J.<J<WJ.X5<WE<>J=>-U< <J.<J<WJ.X5<WE<>J=>-U< <.5fJXW<>XW<><U< .<5X>     fX .{/<q 6{  ytyJ tt+~X>     tt J,X|'KWuYIJ=(<'KWuYIJ=(< J>  < /  tf J ,J(}'KWuYIJ=(<    tt J ,rX|'KWufYIJ=(<Ȑ'KufY(JIJ=(<} >~r<  t<^ LJ  Df <   YZ~r<  t<< Kh~<  t ~< <~JJ~<<|    9bq~<  tMt1'J~r  tJX X.K<e|'J=WKI=(<~  tJ'f ~J<~<|    ~<  >1( H>  KI9GKV? %I =X?<f |r<  t< |r<  t< ? ?  X|r<  t< |r<  t< |r<  t< \%J0,<|r<  <<*^ |r<  t< X|'KKYK(JWJ=(<@3( H>  9G?U@KJt I KZc ?|'JuXIJ=(<'KWKI<=(<)|'KWKKI<=(<J~rKKI<=(<p.Iuptv X ,s uX w.<tZ0>,wX.-XVrYYVYYvPWZWv $ &3$p"ZW^Wv $ &3$p"^WdWPPWZW|v $ &3$p8>XcXVW Y^ YY^YX]XP]XX\ Y6Y\MYrY\X Y^6YMY^YY^XXP6YDYP;WKWPYYUY[UYYTY~>=\D\%~~ $ &3$p"!~ $ &3$p"!,P(]D~]]%]C_D_PUUT$]$GTGq]qT]\^^^~VGVV~~ $ &3$p"~ $ &3$p"|~ $ &3$p8-VV@\q\ p}"## p}"##- v  v  G1P0NUNU0RTR_vTv_X}V}vx=V=BPBVqv^v~\v\v~v}~ $ &3$p"}~ $ &3$p"P\]]]B]Q_B_\fP]qPU UT_ T _c]c5 \5 L |S \ P \ ].3\3_|_ V V |3=| $ &3$p"=E| $ &3$p"3=}| $ &3$p8AP ^S ^3j Q J VS V.P U g U T [ \[ X TX g \ 1 V1 6 vx[  V  P g V % ^% U RU   ~[ k ~k ~ ' ' X ~X f Rf g 4  ][ ] ] g ]8  _[ _  _ g _4 < P< U |X f |  R[ r Rr   P  Pp U ,Up T ^ T ,^ V v vx V p V P,V ] } \ \\,} } $ &3$p" } $ &3$p" v} $ &3$p8 \ \ P0NUNU0RTR_T_XVvxmVmrPrVqv^v~\\~v}~ $ &3$p"}~ $ &3$p"P]][_)_Pr_T)hw$wPrw]qPU.UT^T^T.^LVLh\h|\P\.V#\#H|H]].|#*| $ &3$p"*.| $ &3$p"#*v| $ &3$p8-]]]PK^^P PUUTT03S37q78s0PGHUHISIJSJ&JU&J$LS6LLSLLSGHTH\IV\IITIITIoJVoJ LT L$LV$L6LT6LLVLLTGGQGI]IIQILK]LK LQ LL]LLQLL]\IjIPjIIVIIPIISIIPoJzJPzJ KV$L6LSLLVLLPLLSLLV HGHTQJ\JTsLLT KKPK LVLLVK LSLLSKKTLLTIOI~6LsL~I:I~AIOI~6LHL~IIPIIS$L6LSJJ~JJpJJ~LL~JJVLLVJJPLLPJJQJJvLLQ/0U00]00U00]00U01U11]1~2U~22]22U23]33U33]3"4U"4C4]C44U48]88U84:]4:;U; =] =P=UP=?]??U?@]@J@UJ@@]@@U@@]@.AU.A7A]7AAUAA]ABUBMC]MCpCUpCC]CCUCC]CCUC4D]4DTDUTDD]DDUDDUDD]DDUDD]DDUDF]FFUFG]00U0j0]n5u8]969]; =]?@]n@@]AA]BB]B!C]yCC]DF]FG];;P; =^ EF^FFPFG^GGPGG^)0,0P,0j0\n5u8\969\;#<\?@\n@@\AA\BB\B!C\yCC\DfE\)0,0P,0j0\n5u8\969\;#<\?@\n@@\AA\BB\B!C\yCC\DfE\Q0_0}n5x5}9*9}BB}w00\BB\w00PBBP00Q00|BBQi6|6P|66w6666w68J8PJ8u8AAwyCCP55_55P77PB/B_55T5577T7u8B/BT/BB55P5 6_66_77_n@@_AA_yCC_D E_6 6}6)6}77}n@@}66a6]@@]:6>6}U6Y6q66_AA_66PAAP66Q66AAQCC_D E_CCPDEPCCQCCCCqDEQ7u8_/BB_77p77]/B]B]77}77r8.8]]BB]8 8}"8&8r66}66}a7z7}??}7:7]?@] 77r.727}:<<V<<vx< =VFFVFF\FGVG GP G!GVZGhGV<<P< =\FF\ZGhG\k<<\FG\G!GPEEPEcF\5GLG\GG\;E?EP?EE_EFw!GZGwhGGwEFVF Fv FIFVIFMFpkFFV5GZGVhGhGVhGrGvxrGGVGGPcFgFPgFF\!G5G\LGZG\hGnG\EF_!GGG_GGLGPLGZG_hGG_FF^01U11]694:]4:;Uq>>]J@n@]@@U@@]AA]AA]BB]!CMC]CC]C4D]4DTDUTDfD]DDUDDU0A10A1X1PX11V69;Vq>>VJ@n@V@@0AAPAAVAAVBBV!CMC0CC0CfDVDDVDDV01011^699099P9;^q>>0J@n@0@@0AA0AAPAA^BB^BBT!CMC0CC0C"D0"DfD^DD^DD^01U161]!CMC]11}*1.1qj1y1}69I9}q>|>}J@b@}11V@@0BBVCC011PBBP11Q11vBBQ11^@@0BB^BBT11PBBP11Q11~11qBBQi99]C"D]m9q9}99q9X;\"DfD\DD\::0:::;_;:;9:w#"DfDw#DDw#9:P:_:_"D)DP)D4D_TDfD_==^:.:P.:;4DTDTD[DP[DfDDDDD4::]::}::P:::: 3$}"#:; 3$}"#;:; 3$}"#y;;\;;V4DOD]ODTDPDD]DD\e::_DD_DDP~;;VDDV~;;PDDP;;Q;;vDDQ;;^DD^;;PDDP;;Q;;~DDQ ==^ ==^1~2U~22]44U44]v=q>]>?]@J@U7AAUABUMC`CUCCUCC]fDD]1420{221440v=q>0>?0@J@07AwA0wAA1AB0CC0fDD011V11P12V44Vv=q>V>?V@J@V7AAVABVMC`CVCCVfDDV44Qv==Q=q>\>>Q>q?\q??|v-)CC|v-)fDD\W?s?PfDlDPDDP22U23]4n5]89]P=v=]AA]BB]22P23\4n5\89\P=v=\AA\BB\22P23\4n5\89\P=v=\AA\BB\33}3 3qK3Z3PZ33_4n5_89_AA_i33]44]M5n5]88]p33}44}M5b5}88}4&5]89]44q55}U!\!N!UN!P"\P"W"UW"C#\C#Y$UY$$\$$U$$\$-%U-%2%\2%h%U0!_!+"_W"$_$$P$-%_2%h%_0$"~W""~>#C#1C#o#~##1# $~ $Y$1Y$$~$$1$$~$ %~%-%~2%2%~2%h%1V! ^! 9 V9 = ^= V v ^ v !V !!~!!V!!^!!v!!V!!^!!v!!V!!^!!v!!V!!^!!v!!V!!^!!v!!V!!^!"v""V""^"+"VW""^""V""^"#V##vp"#"#vp"#"#,#vp",#/#p1$v"/#C#vp"C#c#Vc#g#vg#s#u#s#x#Vx#|#u#|##u#$V$$^$$V$$v$-%V2%h%V] S  s @ S 8!S8!>!s>!V!S!!S!!s!!S!!s!!S!!s!!S!!s!!S!!s!!S! "s "+"SW"x"Sx""s""S"#S##sp"#"#sp"#"#2#sp"C##S##s|#&$S&$Y$s}Y$$S$-%S2%H%SH%h%s~! P9 I P P v !v~!!v!!v!!v!!v!!v!"v"$"vW""P""P""vY$x$v$$P$$v$$P$$vx##P %%P%%q!E!PE!N!^C#w#Pw##^#"$P"$Y$^$$P$%P%%^%#%P#%-%^2%A%PA%h%^##^ $"$P"$Y$^$$P2%A%PA%h%^##S##s| $$S$&$s&$8$s~$$S2%>%S>%H%sH%h%S##^ ##S##s##s}""~Y$x$~""^Y$x$^""VY$x$V""~""^""V@ SV!!S""S$$SP ` T""T` r S` r ]` j t"j q U TUT"V"ʈUʈ V 3U3IVIU XTXSTSTFTUTaVV"WW3WW3W 13l1 W3lWIMTMlVNgPl:lWl1lW}TVP~,TpggUghSh?hU?hjSjkkUkklSllUl2mS2mmUmsSs tU tiwSiwwUwzSzzUz{S{{U{{S{*|U*|8|SpggTgh\h?hT?hh\hiTii\iiTi%j\%j5jT5jj\jkkTkkk\klTlIm\ImmTm,n\,n[nT[nn\nuTuu\u{T{{\{{T{{\{*|T*|8|\gh]kkk]gg"kkk"ggSkkkSgg1kkk1ggSkkkSkkTkkVkkPhh"kk"hhSkkShh1kk1hhSkkSkkTkkVkkPhiVn[nVhhPhivO&v'vO& hi"iP"i4ivO&v'vO& h 54iFiPFiXi!vO&v'vO& h 5 5XiniPniwi)vO&v'vO& h 5 5 5hiQi irP iivO&v'vO& hL%i1iR1i7iuP7iUiRUi[iuP[iwiRhi0iiTi%ivO&v'vO& hL%0.%i:iT:i=i uPvO&v'vO& hL%0.!0.=iIi8vO&v'vO& hL%0.vO&v'vO& h 5K%!0.IiaiTaifi tr!0.fiihvO&v'vO& hL%0.vO&v'vO& h 5K%!0.vO&v'vO& h 5 5J%!0.r!0.n[n0hh6n[n6hhSn[nS,n2nU2n6nT6n[n\7nRnPj.kVkglVllVmmVmmV[noVo/pV5ppVprV tuVuu^u vV@viwVixyVQydyVyyVzzVz{V{{V{|V*|8|VjjSjkkUklSllUllSm2mS2mmUmmS[nsSs tU tiwSnwwUwzSzzUz{S{{U{*|U*|8|SjjQkkQkkpmmQmmQ[njnQoop:qKqPKqlswyttPtuwvvPvvwvvPvvwwwwxywzzwz{wk-l\op\qjs\Qt~u\@viv\vv\ww\xy\zz\z?{\grkrPkrs^ww^yy^yz^z?{^Sqq^qr~pors_ww_xx^xxPxy^yy_yz_z?{_qor_x y_ yyPrr(Qyy(rrSQyySrr1Qyy1rrSQyySdyhyPhypyViyyPrr"yQy"rrSyQySrr1yQy1rrSyQyS*y.yP.y6yV/yEyP s$s"zDUDHTHi^I`P} ~]} ~ } ~}}_~_^_܁J_nڂ_}},^,}}_^_}}1^1}}_^_ptTt]uP}}_nڂ_}}1n1}}_n_T]Pڂ ڂ_ڂ1ڂ_Tڂ]тP~_܁J_~_܁J_~1܁1~_܁_T] PJ:J_J1J_%)T)J]*AP.__݄E__E_1݄ 1_݄ _VP E: E_ E1 E_-V&<P38__݄__݄_q3q33S݄S_݄_ńVԄPS  U U)T)J]JjTj}T}]T] T ]U(UT(T!Put Q'V R[[U[\V\\U\`V``U`&dV[[T[\S\ ]S ]]s]I]SI]_]s_]]S]]s]]S]]s] ^S ^^s^&dS[[Q[\\\&d\[[R[\]\\R\`]``R`&d][\_\\TQ"\&d_[\P*\T\PT\e\s\\P\\s\\P\]s$]0]P0]A]sd]p]Pp]]s]]P]]s]]P]^s$^=^P^_s__s ``P`;`sP`b`saasb3bsYbmbsbbsbbs=^`^R._k_R_ `RK`P`R``P``R``R&aBaRBananaaRaaRaaccR~ccRccd%dR`K`P```K`QP`b`Qb```K`SP``S\``\``\``ST^`^QaaQaa|T^`^VaaVaaTaaaaP__k_Q&aBaQBana| __k_V&anaV3a>aU>aBaTBanaCaeaPk__ rk__v``Q~ccQcc| ``V~ccVccTccccP`aREc~cRcdR`ava av# aaQEcNcvNc^cv#^c~cQccvc dRccvccv#c dQvaaQccQvaaVcEcVccRcEccjEQ[h0MP&_P&_GGIXvFFn.X_cD X    H J Q L ` X ]]_cfqf@8>BEH5H]]_cfqv P  AHLsuzZ_clny $"`"$$-%2%h% ! 1 = >!!$"`"""$$-%2%h%">#`$$$$""##`$x$x$$"" >!C#`$$$$-%2%h%###$ $&$.$`$$$2%H%P%h%###$= y S!!""I y ""` ` d g j r %%%%%&&&&'&&' '&&' '&&&&W'W'Y'h''())K(d(@)P)P(d(@)P)o((P)`)t((P)`)((`)p)((`)p)((p))((p))(())(())))))))**"*%*(*}++,*++,+++,],],_,c,f,q,,,,,,.////P/T/ //[/p///`/p///000Q0Q0p0p00p566:6:6U6U6666666 7 7.7.7777788"8"889@9; =? @p@@AABBB!CyCyCyCCCCDFFFFG000"0&0)0>0Q0Q0_0p5x59@9B C>0D0B Cw00B B|00B Bx5555566:6:6U6U666666+7.7~7777788"8"8x8p@@AA BByCyCyCCCCD Ex55566:6:6U6U66666677p@@AAyCyCyCCCCD Ex556 6 6)677p@@55{@@66:6:6U6U6a6@@6666AACCCCD E7777788"8"8x8/BB777777/B]B888"8"8.8]BB6666h7~7??7 7 7+7.7:7? @.< =FFF!GZGhGV<< G!G EFFF!GZGhGGEFFF!GZGhGGEE5GLG011*1*1j1j11111111@9m9m999y;y;~;~;;;;;; =P=q>>P@p@@@@@@@@AAAAABB!CMCCCCCCfDDDDD00011*1*161!CMC00011*1*161!CMC00)CMCX1j1j1y1@9I9q>>P@p@X1]1>>1111@@BBCC11BB11@ABBBB11BBBBV9e9i9m9m9999C"DV9e9m9999C"DV9[9D"D9y;y;~;~;;;;;; =P=CC"DfDDDDDP::DD~;~;~;;DD;;;;DD;; = =1244=q>>? @P@@AAABMC`CCCfDD44=q>>?CCfDD??q?fDD2223333p3p3344455p589P==AABB22222223333(355f5p5BB22BB03@3@3p3p3344455f589AA03@3i3p3p3344P5f58803@3p3344P5f588:3@38844455&589H.HsLLIII>IAIOI@LsLIII>IAIOI@LsLIITLsL~JJJJJJLL~JJLLJJJJLLJLLLKKLL;M;M=MLMoMuMuMuMyMMMMN7NMMMMMMMMMMN7NMMMMMMNNNNNNNNNNNR@RV5PP@RpR8TXTTTrPrPyPPPQRST TXTTTUUPVVVVVPQR S$S,ST TXTTTUUPVVVRRPVV;W;W=WKWqWwWwWzW~WXYY,X.X>XXXXXXYxYXXXX@YPYYYYYZ#Z#Z&Z*Z1[@[[[[[[``[[\\'\\\``dd&d[[[[\\(^^.___``acdd&d[[[[`K`P`~```[[[[P`~```G^`^aaR_k_&anak_k_t_y___``~cc`aEc~ccdvaacEcP\e\^._\\__\]bYb(]A]Ybbh]]bb]]bc]^ab>dAdQdedXff>dAdQd[dXffvdd ePe0fXfdddeedddeedde0fdde0feeeeg0g0gjgeeg0gee0gjgeeeefffgeeffeefggh@hphpkkggggpkkggpkkhhkkhhkkhin[nhhn[niijpkklmm[n.o.oooooppppvv(w(wiwnw0x0xxx{{{{8|iikloPpq tQtu@vivnwwxzz{{*|Cqswwxyyzz?{qqqxyrrQyyrrQyyrryQyrryQy s$szAccehؑؑڑݑ!(0LNXkÔΔՔܔÔܔ &(6LNQ8` 8    # 0P0 8 @ H H  H`  `$ ! #3 #I #` #{ # # # # `$ $ `$'@ 28 =0 H( R $n q% $ q% 9& % 9& & @&H &: (W &/g ( F) ( F) |* P), |* K,) *? K,d -. P, -. 0 0. 0 2I 0h 2 4 2_ 4 6 43 6[ '9 6G '9 ; 09U ; == ;US =| 7@ =G 7@ B @@N  B! B7 B6@ Bb BC Br  BC C PCF C: Cc CP C I C I K  I  K@  Na  K}u  N  P  Nu  P'  T^  Py  T  l  T    l  ^qV  l>  ^q%  rJ  `qKb  r  ^{  r  ^{  ~  `{-  ~O  o  ~        ϋ  ?  ϋ*  A  ЋK  U  n  x  x      [ K [? <_ `r <  # # $ 8  P$"0 ALO U@ bH k0~ H    5H_t  ,9K_v @ 4GWdvH  *;KW cr&=HXiu "!3KWr.annobin_XS.c.annobin_XS.c_end.annobin_XS.c.hot.annobin_XS.c_end.hot.annobin_XS.c.unlikely.annobin_XS.c_end.unlikely.annobin_XS.c.startup.annobin_XS.c_end.startup.annobin_XS.c.exit.annobin_XS.c_end.exit.annobin_XS_JSON__XS_CLONE.start.annobin_XS_JSON__XS_CLONE.endXS_JSON__XS_CLONEjson_stashbool_stashbool_falsebool_true.annobin_json_sv_grow.start.annobin_json_sv_grow.endjson_sv_grow.annobin_ref_bool_type.start.annobin_ref_bool_type.endref_bool_type.annobin_he_cmp_fast.start.annobin_he_cmp_fast.endhe_cmp_fast.annobin_json_atof_scan1.start.annobin_json_atof_scan1.endjson_atof_scan1.annobin_json_atof.start.annobin_json_atof.endjson_atof.annobin_he_cmp_slow.start.annobin_he_cmp_slow.endhe_cmp_slow.annobin_XS_JSON__XS_incr_text.start.annobin_XS_JSON__XS_incr_text.endXS_JSON__XS_incr_text.annobin_XS_JSON__XS_get_ascii.start.annobin_XS_JSON__XS_get_ascii.endXS_JSON__XS_get_ascii.annobin_XS_JSON__XS_ascii.start.annobin_XS_JSON__XS_ascii.endXS_JSON__XS_ascii.annobin_XS_JSON__XS_get_boolean_values.start.annobin_XS_JSON__XS_get_boolean_values.endXS_JSON__XS_get_boolean_values.annobin_XS_JSON__XS_boolean_values.start.annobin_XS_JSON__XS_boolean_values.endXS_JSON__XS_boolean_values.annobin_XS_JSON__XS_incr_skip.start.annobin_XS_JSON__XS_incr_skip.endXS_JSON__XS_incr_skip.annobin_XS_JSON__XS_get_max_size.start.annobin_XS_JSON__XS_get_max_size.endXS_JSON__XS_get_max_size.annobin_XS_JSON__XS_max_size.start.annobin_XS_JSON__XS_max_size.endXS_JSON__XS_max_size.annobin_XS_JSON__XS_max_depth.start.annobin_XS_JSON__XS_max_depth.endXS_JSON__XS_max_depth.annobin_XS_JSON__XS_get_max_depth.start.annobin_XS_JSON__XS_get_max_depth.endXS_JSON__XS_get_max_depth.annobin_XS_JSON__XS_new.start.annobin_XS_JSON__XS_new.endXS_JSON__XS_new.annobin_get_bool.start.annobin_get_bool.endget_bool.annobin_decode_4hex.isra.1.start.annobin_decode_4hex.isra.1.enddecode_4hex.isra.1decode_hexdigit.annobin_json_nonref.isra.5.part.6.start.annobin_json_nonref.isra.5.part.6.endjson_nonref.isra.5.part.6.annobin_ptr_to_index.isra.9.part.10.start.annobin_ptr_to_index.isra.9.part.10.endptr_to_index.isra.9.part.10.annobin_decode_str.start.annobin_decode_str.enddecode_str.annobin_XS_JSON__XS_incr_reset.start.annobin_XS_JSON__XS_incr_reset.endXS_JSON__XS_incr_reset.annobin_XS_JSON__XS_DESTROY.start.annobin_XS_JSON__XS_DESTROY.endXS_JSON__XS_DESTROY.annobin_XS_JSON__XS_filter_json_object.start.annobin_XS_JSON__XS_filter_json_object.endXS_JSON__XS_filter_json_object.annobin_XS_JSON__XS_filter_json_single_key_object.start.annobin_XS_JSON__XS_filter_json_single_key_object.endXS_JSON__XS_filter_json_single_key_object.annobin_decode_sv.start.annobin_decode_sv.enddecode_svsv_json.annobin_decode_json.start.annobin_decode_json.end.annobin_XS_JSON__XS_decode_json.start.annobin_XS_JSON__XS_decode_json.endXS_JSON__XS_decode_json.annobin_XS_JSON__XS_incr_parse.start.annobin_XS_JSON__XS_incr_parse.endXS_JSON__XS_incr_parse.annobin_XS_JSON__XS_decode_prefix.start.annobin_XS_JSON__XS_decode_prefix.endXS_JSON__XS_decode_prefix.annobin_XS_JSON__XS_decode.start.annobin_XS_JSON__XS_decode.endXS_JSON__XS_decode.annobin_encode_str.start.annobin_encode_str.endencode_str.annobin_encode_hk.isra.11.start.annobin_encode_hk.isra.11.endencode_hk.isra.11.annobin_encode_sv.start.annobin_encode_sv.endencode_svencode_hv.annobin_encode_hv.start.annobin_encode_hv.end.annobin_encode_json.start.annobin_encode_json.end.annobin_XS_JSON__XS_encode_json.start.annobin_XS_JSON__XS_encode_json.endXS_JSON__XS_encode_json.annobin_XS_JSON__XS_encode.start.annobin_XS_JSON__XS_encode.endXS_JSON__XS_encode.annobin_boot_JSON__XS.start.annobin_boot_JSON__XS.endcrtstuff.cderegister_tm_clones__do_global_dtors_auxcompleted.7303__do_global_dtors_aux_fini_array_entryframe_dummy__frame_dummy_init_array_entry__FRAME_END___fini__dso_handle_DYNAMIC__GNU_EH_FRAME_HDR__TMC_END___GLOBAL_OFFSET_TABLE__initPerl_sv_2iv_flags__snprintf_chk@@GLIBC_2.3.4Perl_hv_iterkeysvPerl_newRV_noincPerl_sv_2uv_flagsPerl_stack_grow_ITM_deregisterTMCloneTableqsort@@GLIBC_2.2.5Perl_sv_utf8_downgradePerl_sv_derived_fromPerl_av_lenPerl_pop_scope_edataPerl_newSVstrlen@@GLIBC_2.2.5__stack_chk_fail@@GLIBC_2.4Perl_sv_upgradePerl_sv_setiv_mgPL_thr_keyPerl_newSVnvPerl_sv_blessmemset@@GLIBC_2.2.5Perl_sv_chopPerl_sv_2pv_flagsPerl_xs_boot_epilogPerl_hv_iternext_flagsPerl_grok_numberPerl_get_cvboot_JSON__XSmemcmp@@GLIBC_2.2.5__gmon_start__Perl_newSVsvPerl_croak_xs_usagePerl_newSVpvn_flagsPerl_savetmpsPerl_sv_growPerl_sv_utf8_upgrade_flags_growmemcpy@@GLIBC_2.14Perl_gv_stashpvPerl_av_pushPerl_sv_cmp_flagsPerl_newSVpvpthread_getspecific@@GLIBC_2.2.5Perl_gv_fetchmethod_autoloadPerl_get_svPerl_croak_nocontextPerl_newXS_deffilePerl_pv_uni_displayPerl_gv_stashsvPerl_hv_iterinitPerl_newXS_flagsPerl_sv_2mortalPerl_mg_get__bss_startPerl_hv_commonPerl_newSVuvPerl_safesysreallocmemmove@@GLIBC_2.2.5Perl_xs_handshakegcvt@@GLIBC_2.2.5Perl_av_fetchPerl_utf8n_to_uvuniPerl_utf8_lengthpowPerl_free_tmpsPerl_markstack_growPerl_hv_common_key_lenPerl_newRVPerl_newSV_typePerl_block_gimmePL_hexdigitPerl_save_vptrPerl_call_svPerl_sv_setuv_mgPerl_sv_free2Perl_push_scope_ITM_registerTMCloneTablePerl_newSVivPerl_hv_itervalPerl_newSVpvn__cxa_finalize@@GLIBC_2.2.5Perl_sv_newmortalPerl_apply_attrs_stringPL_utf8skip__sprintf_chk@@GLIBC_2.3.4Perl_hv_placeholders_get.symtab.strtab.shstrtab.note.gnu.build-id.gnu.hash.dynsym.dynstr.gnu.version.gnu.version_r.rela.dyn.rela.plt.init.plt.sec.text.fini.rodata.eh_frame_hdr.eh_frame.note.gnu.property.init_array.fini_array.data.rel.ro.dynamic.got.bss.comment.gnu.build.attributes.debug_aranges.debug_info.debug_abbrev.debug_line.debug_str.debug_loc.debug_ranges88$.o``48 @@ HoUo88pdnB8xs~##E 000d PP 0 08 8@ @H HH H H 0-H`0 0, r;8vEFEMKvR0H] +hv7p]" kvperl5/auto/JSON/XS/.packlist000064400000000410147205023560011460 0ustar00/usr/local/bin/json_xs /usr/local/lib64/perl5/JSON/XS.pm /usr/local/lib64/perl5/JSON/XS/Boolean.pm /usr/local/lib64/perl5/auto/JSON/XS/XS.so /usr/local/share/man/man1/json_xs.1 /usr/local/share/man/man3/JSON::XS.3pm /usr/local/share/man/man3/JSON::XS::Boolean.3pm perl5/auto/local/lib/.packlist000064400000000551147205023560012223 0ustar00/usr/local/share/man/man3/POD2::DE::local::lib.3pm /usr/local/share/man/man3/POD2::PT_BR::local::lib.3pm /usr/local/share/man/man3/lib::core::only.3pm /usr/local/share/man/man3/local::lib.3pm /usr/local/share/perl5/POD2/DE/local/lib.pod /usr/local/share/perl5/POD2/PT_BR/local/lib.pod /usr/local/share/perl5/lib/core/only.pm /usr/local/share/perl5/local/lib.pm perl5/auto/Try/Tiny/.packlist000064400000000113147205023560012056 0ustar00/usr/local/share/man/man3/Try::Tiny.3pm /usr/local/share/perl5/Try/Tiny.pm perl5/auto/version/vxs/vxs.so000055500000533060147205023560012247 0ustar00ELF>0"@0@8 @$#nn yy y Xx {{ { 888$$xnxnxn Stdxnxnxn Ptd8e8e8eQtdRtdyy y XpGNU3[tO3L~lK@@ (@BCBE|qX}g.B vp$\q ]OR=J2,Ve@|i,  F"^+ > 2  \__gmon_start___ITM_deregisterTMCloneTable_ITM_registerTMCloneTable__cxa_finalizelibpthread.so.0Perl_hv_common_key_lenPerl_newSV_typePerl_newSVpvnPerl_newSVuvPerl_av_pushPerl_sv_catpvn_flagsPerl_sv_catpvf_nocontextPerl_sv_2iv_flagsPerl_sv_2uv_flagsPerl_newRV_noincPerl_newSVsvPerl_sv_blessPerl_gv_stashsvPerl_stack_growPerl_croakPerl_croak_xs_usagePerl_sv_isobjectPerl_sv_derived_from_pvnPerl_croak_nocontextPerl_av_fetchPerl_mg_sizePerl_ckwarnPerl_vwarner__stack_chk_failPerl_av_lenPerl_newSVpvfPerl_sv_catpvfPerl_sv_2mortal__snprintf_chkPerl_savepvnPerl_save_pushptrPL_charclassPerl_newSVrvPerl_sv_upgradePerl_newSVivPerl_savesvpvPerl_sv_2pv_flagsstrpbrksetlocalePerl_sv_setpvfPerl_safesysfreePerl_sv_insert_flagsPerl_mg_findPerl_newSVPerl_sv_free2Perl_savepvPerl_sv_setsv_flagsPerl_sv_setpvnmemmemmemmovePerl_sv_newmortalPerl_gv_stashpvnPerl_mg_getPerl_newSVpvn_flagsPerl_sv_2bool_flagsPerl_sv_mortalcopy_flagsboot_version__vxsPerl_xs_handshakePerl_newXSPerl_xs_boot_epiloglibperl.so.5.26libc.so.6_edata__bss_start_endGLIBC_2.2.5GLIBC_2.4GLIBC_2.3.4!ui Cii Oti Yy "y "y y y ^y Yy ^y `&y ^y My ^y Mz ^z 3z ^z 3 z  _(z  20z _8z  2@z 4_Hz p/Pz I_Xz T`z ehz Spz b_xz Qz u_z Qz _z Qz _z Lz _z Lz _z `&z _z `&z _z `&z _z `&{  `{ `&{ `{ `& { -`({ `&0{ ?`8{ `&@{ Q`H{ `&P{ d`X{ `&`{ |`h{ `&p{ `x{ ({ `{ U{ `{ U{ `{ '{ `{ 0({ `{ `#    8 >} } } ~ ~ ~ ~  ~  (~  0~  8~  @~  H~ P~ X~ `~ h~ p~ x~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~  ~ !~ "~ #~ $~ %~ & ' ( ) *  +( ,0 -8 .@ /H 0P 1X 2` 3h 4p 5x 6 7 9 : ; < = > ?HH!e HtH5c %c hhhhhhhhqhah Qh Ah 1h !h hhhhhhhhhhqhahQhAh1h!hhhh h!h"h#h$h%h&h'qh(ah)Qh*Ah+1h,!h-h.h/h0h1h2h3h4h5h6h7qh8ah9Qh:A%]_ D%U_ D%M_ D%E_ D%=_ D%5_ D%-_ D%%_ D%_ D%_ D% _ D%_ D%^ D%^ D%^ D%^ D%^ D%^ D%^ D%^ D%^ D%^ D%^ D%^ D%^ D%^ D%^ D%^ D%}^ D%u^ D%m^ D%e^ D%]^ D%U^ D%M^ D%E^ D%=^ D%5^ D%-^ D%%^ D%^ D%^ D% ^ D%^ D%] D%] D%] D%] D%] D%] D%] D%] D%] D%] D%] D%] D%] D%] D%] DH=] H] H9tHv] Ht H=] H5] H)HHH?HHtHM] HtfD=U] u+UH=*] Ht H=V Id-] ]wSF HtH^C < uIHE1HjH\:A &ZYHtHH@Htx u H[1[ff.AWAVAUATUSHHH(HCxHHHHHKxHKHcDpHH)HHD$ IcHH߽H H H)HL$HT$H5<HI IDHH@ H? HL` LHLHHtALHH8yLH58L19l$ tdHCE$.McJ4V % =XHHSH?J4V BHIG HLHHHHHjIA$HW8'MHA$H8H$XHhZHoHHHjIA$H2;Y^HD$@ tTHL HH LHHHHC H+D$H~;HD$HhHHH([]A\A]A^A_DHt$HIHt$HHHD$멁 uHH@ HH5:H1H/H56USHHHHCxHKH3HPHSxHcHHH)HH~JHHcH4t#HCE1HH6H4uH56H1;H5d6H58:H1ff.AVAUAATIUSHGxHH/HPHWxHcHHGHH)HHLuLStfE1LHH65tHHIvDLjE1HAZHhYHHPHDHUH+[]A\A]A^H=51HH55ff.H8 ff.H8ff.AVAUATUSHHHCxH+HKHPHHSxHcPHH)HHDHcHHL$L%E1LHH4HIt$E1HjH4A sZYHH@ LhAE < uE1Wf.IEH@HI9}_L1LHIHtGHHt?HC H)H~CHUAE AHMctLHHHfDH+[]A\A]A^@HHH-IHH=31H53ff.ATIUSHHHL$8LD$@LL$Ht7)D$P)L$`)T$p)$)$)$)$)$dH%(HD$1Hiu-1H[uHD$dH3%(uGH[]A\H$HLHD$HHD$ $D$0HD$kff.AWAVAUATUHSHHHHI MHHHE1A LjHa2H.E1ɹHHA H>2HLp$HHLLhXZLHHHD$IH$L9LNM1L1HHH0F % =HD` L1HHsH0F % =uYHP 1A9HA9~H[]A\A]A^A_@L9mH $H9L$!EDH;H#AXH<$H9|$11ۄ}HL$H<$H9H9]u&THHx HH9\$|Du@L1HHfH0F % =tĺHHHH9\$}H[]A\A]A^A_@H9$u0DHHx HH9$L1HHH0F % =tHHH5/H1zf.AWAVAUATUHSH*HHE1A HjH/H[ZHYHLhLHD$Aƃ&L11HH0F % =H@ HcH5P/H1IċD$L=0/+f.H@ HcLLH1A9|OLHc1HH0F % =tHfDH[fDHD$4)t+L-/fDALLHuHL[]A\A]A^A_HHH5/1[]A\A]A^A_H5".HfATUSHHHCxH+HKHPHHSxHcPHH)HHueHcHL$LtAE1LHH-t#It$HHHEHH+[]A\H=-1NH5-fAWAVAUATUHSHHHHE1jAHHH=0Y^HtHR- H1KHE1A HjH,HHL`XZM#LH8IH L11H\H0F % =H@ H5,H1)Љ1IML=,%fDHH LLH1HI9|pL1HHH0F % =tHfDH^fDuAHHH(,HL[]A\A]A^A_HH[H5,]A\A]A^A_H5+H1 ff.fATUSHHHCxHHsHHIHKxHcHHI)LH~vHcHHH,HH)HI6tFE1HHH*t(HuHxIT$HID$HH[]A\ H=*1H5w*fUSHHHHHHE1jA HHC*0^_Ht)H0H8F u H[]fHH[]fHHHjHL-E1AZHYHHt H[]"fH[]H5)H1t@ATUSHHHCxHHsHHIHKxHcHHI)LH~vHcHHH,HH)HItFE1HHHX)t(HuHIT$HID$HH[]A\|H= )1H5(rfAWAAVAUATUHSHHt$dH%(H$1F HD$HHx H\$`@1AL)@H HH0 HHHD$(+H1HB.Ll$(H|J AEHDD DIAEHDDtEE v-C AEIAAA MDIA$H‹u. փ@;tt%D=Dt }M9/A$E1D$ D$0HЋ@H\$HHR% == HD$HT$XHpH.E1ۀvAEuD$0MeD$ IA$IuA. A$E1AHЋցDDuIA$HЋցDDtuPƀ@Ƅ@t {]|$ ~ A|$. vMU HLT$@D\$8Ht$H%HHD$ HHIHD$D\$8LT$@AO EA EtBHLT$8HA$HjHt$(IH(:_AXLT$8D$0HcHLT$0E1HA$HjHt$(IH%_AXLT$0fAMH‹tIAH‹u_t%@=@|$ DLl$0MƒLd$HM!L;t$0T$@AD"d$@5fM1A1IM9wvA9@_t0AtADA9AA)D9~$H$H1|MNA qG$IEM9vHcHL$8BHt$HHL$8}AE<.(<_<,Ћ AAAZELfDH u_tMIL;t$0AD"d$@IEAdM1HD$8E1EM96A8@_9Dgfff0AAD)1Aԉ)1)9LIx_HHx Ht$H HHHD$(mXH\$H ?HQH A(f/*f HQFDH'H5#H1H&uuIuH="D$ u HHt$H!HHD$ HIHHD$AN E#MMIUAEEIՋ L1#fD<_tH Hȋ uރ<_tMIfDL@DH1H ']HD$8MDfDAU!IUEt`AEI"L<_MI-DADI<0ufIAE<0t멐AMIHȋ DLl$0Ld$HE5HD$EHHPH)H)H @H1H[Ht$HHHCHEM9hLLHL)O|$ u EHIA$HjHt$(HzgA]A^Ht$HHHA$jHt$(IH^.A$AYAZfDMLl$0EHD$MHHPH)H)H!f.AED$ D$0DIAAME!.@HD$ME1HHPH)H)HAT$It$HЋD$0E1E1t'FA<.W<_t#HuID$ EVHЋHADL$0fDAT$D$ It$E1HЋufLVLfHЋu<_"<.JL@H 3@Ll$(}fDHLT$8D\$0HHA$jHt$(IHbEAYAZD\$0LT$8HLT$0ELHHjHt$(IA$HY^LT$0Ht$HT$XHHǃ@;AƄ@A t0ׁDDA<}@A tHl6E1D$0A(f/!5HD$Lt$`@L@LH@(?uHcE1䋅~ H5`LHt%8.t.IH9@0 1H#HH€E1t@H=H€t%H=H€fDHD$H@(MHLH4I$Mt$HX~ Mt*L1LIHGHADHS<0t<.ELHF HHHD$(AM(AT$AT$ DHQ@A}vnHHA1jLJ1HHD$0vA_XHD$ :fED$ f.H @LLHLD$ L)*LD$ MDM9tÀ_uAD$HaHHDDDNDH\$VH6HHPHp(HA HHHD$(DH@@H{IHD$@ MHD$HOLHH@(I$Mt$HXDMDEu[VAHHЋD1fE?VD$ HHЋXC HY@H@H\$H Lt$`@@LlL?SHcLHnIA HHH޿IXAH5H=1>H5H1E15M0E%DAWAVAUATI1USHHLHH7u[AD$ L9tLHHHH!H1H@HHH[]A\A]A^A_E1LHHt H}HqHHIx HIHAN AD$ tMd$HE1LjH\AHZYHt7HVHLHjIA$HA[A_HE1ALjHHAYAZHt6HHHLjA$IHJ_AXHLE1jA HH!Y^HtOH0F % =tH@ HcHsHLHjIA$HXZHE1A LjHHA[A_Ht5H0HHLHjIA$H~kAYAZHA LHjE1ɹE1Hn>_AXHLx%fH@ HcHILHHLHI91L1LHH0F % =tHVLHLpLh(HHLLE % =LeHFLLHt0K4HpHH)HRHEHhHEHUH@AUH3 lH1A1jLfHHXZC1HHITfDLHHLHjIA$HY^Hff.ATUSHHHCxH+HKHPHHSxHcPHH)HHHcHHL$HH)LuE1LHH#StmHH5-Md$HHHGHHHH1LHHHHcHHEHH+[]A\H=1H5mAWAVAUATUSHHH/HOdH%(HD$1HGxHHPHWxHcIDhHH)HHHcHH)Ճtt@H=q1fAMcN4AF ^u3<t/%= t#HxHHHIHCMcHN,L0IEHHD` AHHH1HRHTL:Mt"zIHzHHDItHcrH4$HE1H@HTHHt.Rt HE1HtHcPE1D AALHH$IH u H=LtDLH߃LHHLmHLHH+HD$dH3%(H[]A\A]A^A_fDEe D% =u}IEM}H@H$A AAIHCMcJ4F % =uZHNH LH1B?DH$E1H1LHEe Iw@"1HH@LIO@LAF "fAWAVAUATUSHHHGxH/HOHPIHWxHcIԍBHI)IA[HIcL,HH)LO-E1LHH - HSAD$MmHLDDHHFE180A@HD}H= 1HH5 -ff.fAUATUSHHHGxHOL'HPHWxHcPHHcH,LH)HHHt~E1HHHO t`HuHoHHHIHELHHHELHHHHI$HL#H[]A\A];H=1HH5.ff.ATUSHHHCxHKH3HPHSxHcIHHI)LHcHH,хHHHH)IHtfE1HHHAqtHHuHHHHUHHHHIT$HID$HH[]A\EH=1H5;ff.AWL=7 AVAUATUSHH(H/HOdH%(HD$1HGxD$IHPHWxHcHHI)IIcHH)ՍPHcL,HD$AAE ulHII9tLHHaLHAtdLuHH+HD$dH3%(gH([]A\A]A^A_DVLHtLHHHIAuHT$HuH=LsL$LH߃LLHH^NfHLA@ u<t%= kLHLD$?LD$IEHHp t$HHH1HRHTL:MtzLIHcrHt$HH@HTHHtRtUHHuMMD$/DEu D% =ueIEM}H@HD$A MDt$HcPMDt D% D$HD$ME1@HT$LHLD$Eu LD$IDIHzHHDIH5 H1CLLD$LD$A@ M AWAVAUATUSHHHGxH/HPHWxHcHGIDbHH)H*McJ4J HL$F HF@ HL0MHA HE1jHL_AXHt Hx 1AFt#IHPIFHDHHt ptHHH5^ H1@L8LHHCNnumify() is lossy%d.%03d000%dsnprintfpanic: %s buffer overflow%.9f.,CC.UTF-8POSIXwidthInteger overflow in versionv.Infvinfv%sundefversion::vxslobj, robj, ...version::vxs::_VERSIONv5.26.0vxs.cvxs.xsversion::vxs::()version::vxs::newversion::vxs::parseversion::vxs::(""version::vxs::stringifyversion::vxs::(0+version::vxs::numifyversion::vxs::normalversion::vxs::to_decimalversion::vxs::(cmpversion::vxs::(<=>version::vxs::VCMPversion::vxs::(boolversion::vxs::booleanversion::vxs::(+version::vxs::(-version::vxs::(*version::vxs::(/version::vxs::(+=version::vxs::(-=version::vxs::(*=version::vxs::(/=version::vxs::(absversion::vxs::(nomethodversion::vxs::noopversion::vxs::is_alphaversion::vxs::qvversion::vxs::declareversion::vxs::is_qvversion::vxs::tupleversion::vxs::from_tupleValue %d in version is negativeoperation not supported with version objectInvalid version format (alpha without decimal)Invalid version format (trailing decimal)Invalid version format (multiple underscores)Invalid version format (version required)Invalid version format (misplaced underscore)Invalid version format (underscores before decimal)Invalid version format (fractional part required)Invalid version format (non-numeric data)Invalid version format (negative version number)Invalid version format (dotted-decimal versions require at least three parts)Integer overflow in version %dVersion string '%s' contains invalid data; ignoring: '%s'Usage: version::new(class, version)Usage: UNIVERSAL::VERSION(sv, ...)Cannot find version of an unblessed reference%2p does not define $%2p::VERSION--version check failed%2p version %-p required--this is only version %-p%-p defines neither package nor VERSION--version check failedversion::vxs::to_dotted_decimal_vaJ;H(@(l(@Thx\8xx8@DHxLx zRx $FJ w?:*3$"D(\pdAZM SA[ I CdFBB B(A0A8J`hHpBhH`LhHp[hA`O 8A0A(B BBBF LEAJ HܿBBE D(A0e8L@R8H0V (A BBBA \pp|HFBB A(A0}8M@X8A0 (A BBBE 0BDC J  AABD pBBB B(A0D8GPlXN`PXAP 8A0A(B BBBE  8D0A(B BBBE lxBBB B(A0D8DPRXN`UXDP8 8D0A(B BBBA D 8M0A(B BBBE ,dFAA  ABE xBBB B(A0D8D@RHMPYHA@_HNP\HA@ 8D0A(B BBBH D 8I0H(B BBBE ,hFAA  ABE dAAG R(K0[(A Y AAC D DAG D(M0V(D L AAG D AAE ,,`FAA  ABE \BEB B(A0D8GkKZBiKZB\NXBQK`Bo 8A0A(B BBBD K[CK]FLH[A^KZDK^BjJ[AMXA`BBB B(F0A8G@a 8D0A(B BBBD lHMPVHA@VHHP\HB@DHNPVHB@VHHP[HB@DHMPVHA@pHHP[HA@DHNPVHB@THHP\HB@DHNPXHB@'HLPSHA@{HHP[HA@,4FAA  ABE HdhFBB B(A0A8GP 8A0A(B BBBG H,FBB B(A0A8G@ 8A0A(B BBBK 8FBA A(G0 (A ABBE ,8dFAA  ABE Hh$PFIB B(A0A8G` 8A0A(B BBBF d(FBB B(A0A8GPoXN`UXBP 8A0A(B BBBC XJ`VXDP8pFNI H(I0N(G BBBGNU""y ^Y^`&^M^M^3^3 _ 2_ 24_p/I_TeSb_Qu_Q_Q_L_L_`&_`&_`&_`& ``&``&-``&?``&Q``&d``&|``&`(`U`U`'`0(``#U!  @]y y o` e } ( oo oo^ oE{  0@P`p 0@P`p 0@P`p 0@P`pGCC: (GNU) 8.5.0 20210514 (Red Hat 8.5.0-22)GA$3a10"0"GA$3a1GA$3a1@]H]GA$3a10"" GA$3p1113">]GA$running gcc 8.5.0 20210514GA$annobin gcc 8.5.0 20210514GA$plugin name: gcc-annobin GA*GOW*GA*GA+stack_clashGA*cf_protection GA*FORTIFYGA+GLIBCXX_ASSERTIONSGA*GA!GA+omit_frame_pointerGA*GA!stack_realign GA*FORTIFY"T#GA+GLIBCXX_ASSERTIONS"T# GA*FORTIFYT#_&GA+GLIBCXX_ASSERTIONST#_& GA*FORTIFY_&'GA+GLIBCXX_ASSERTIONS_&' GA*FORTIFY''GA+GLIBCXX_ASSERTIONS'' GA*FORTIFY'(GA+GLIBCXX_ASSERTIONS'( GA*FORTIFY(%(GA+GLIBCXX_ASSERTIONS(%( GA*FORTIFY%()GA+GLIBCXX_ASSERTIONS%() GA*FORTIFY)*GA+GLIBCXX_ASSERTIONS)* GA*FORTIFY*-GA+GLIBCXX_ASSERTIONS*- GA*FORTIFY-n/GA+GLIBCXX_ASSERTIONS-n/ GA*FORTIFYn/0GA+GLIBCXX_ASSERTIONSn/0 GA*FORTIFY02GA+GLIBCXX_ASSERTIONS02 GA*FORTIFY22GA+GLIBCXX_ASSERTIONS22 GA*FORTIFY23GA+GLIBCXX_ASSERTIONS23 GA*FORTIFY3n4GA+GLIBCXX_ASSERTIONS3n4 GA*FORTIFYn4KHGA+GLIBCXX_ASSERTIONSn4KH GA*FORTIFYKHLGA+GLIBCXX_ASSERTIONSKHL GA*FORTIFYLMGA+GLIBCXX_ASSERTIONSLM GA*FORTIFYMPGA+GLIBCXX_ASSERTIONSMP GA*FORTIFYPSGA+GLIBCXX_ASSERTIONSPS GA*FORTIFYSTGA+GLIBCXX_ASSERTIONSST GA*FORTIFYTUGA+GLIBCXX_ASSERTIONSTU GA*FORTIFYUYGA+GLIBCXX_ASSERTIONSUY GA*FORTIFYY\GA+GLIBCXX_ASSERTIONSY\ GA*FORTIFY\>]GA+GLIBCXX_ASSERTIONS\>] GA$3p11130"0"GA$running gcc 8.5.0 20210514GA$annobin gcc 8.5.0 20210514GA$plugin name: gcc-annobin GA*GOW*GA*GA+stack_clashGA*cf_protection GA*FORTIFYGA+GLIBCXX_ASSERTIONSGA*GA!GA+omit_frame_pointerGA*GA!stack_realign GA$3p11130"0"GA$running gcc 8.5.0 20210514GA$annobin gcc 8.5.0 20210514GA$plugin name: gcc-annobin GA*GOW*GA*GA+stack_clashGA*cf_protection GA*FORTIFYGA+GLIBCXX_ASSERTIONSGA*GA!GA+omit_frame_pointerGA*GA!stack_realign GA$3p11130"0"GA$running gcc 8.5.0 20210514GA$annobin gcc 8.5.0 20210514GA$plugin name: gcc-annobin GA*GOW*GA*GA+stack_clashGA*cf_protection GA*FORTIFYGA+GLIBCXX_ASSERTIONSGA*GA!GA+omit_frame_pointerGA*GA!stack_realign GA$3p11130"0"GA$running gcc 8.5.0 20210514GA$annobin gcc 8.5.0 20210514GA$plugin name: gcc-annobin GA*GOW*GA*GA+stack_clashGA*cf_protection GA*FORTIFYGA+GLIBCXX_ASSERTIONSGA*GA!GA+omit_frame_pointerGA*GA!stack_realignGA$3a1>]>]GA$3a1>]>]GA$3a1GA$3a1H]M],"N:Q. 7"N:"-9::" %-Z- '9inty& )E= L# E E LM LB E8) LB% t7 4 y& 1  j 0 g@ !eZ"e @# O0 lB1  L   >  L LD6    6  U N z>R0 T#0 @U#0r V 9(v 8xy "yE 0 zy |E =y Uf hDf ,6:1E(C $EB*4FG e  L',H 7((191 AA LY~BE&E5@(Y@(7c Zm&   ,"h s#p +$x ,.'$   L @ 44 L l44*!PD7n ~ L ]! ='b l( y@ )H ~ LU,SyB (-C 8% K;: (; ?V A y &B y C G K;I (J K O K;Q (R -S y BT 6-U a Kc ( r+d (^{e g YI :[ ( ]f z.h  lm Cn j)o y t lv ( k9w y Q xE p3H5"<o8D%_rtLV9V4i=DpI>ym y L $ c -& y {( y * y 0 y 5{ |y(co : L@'',Z.!c*$ZB2 y87 y; ywW 9 1Q 5 B V) ef L )ft3qq{ $5 7 .; I3  8  R  +)l 2= HA #  q c | |  *   +   t:   =   2   Q v   &  1 l <  G  R  ]  h  s  ~ o$ 8 ! {   ?  @  L  L  L A5   c35 5 -b L eA .3 @ 0 4 5  ? = ? >  @  ) A C y$ # E (  J 0 t6 N*8 ' P6@  [H 1 \X "$ ]h 41 j3 x NC L ZS L@B!C 1! yQ!BB!C 1! yS! ! y S"4 >?"6 y $"7 y   #-Z6#.Z 6$5 $ Z >$   $y p<$  %b % %d Z J %e  A%fy O%gy ,%h   % J>% Z5A% %y2% Z*%D%F Z3%G IB%Hy:&S u& J=& r%&9 2& - &! S ec L(&% u&' J=&( r%&)9 2&*- &+ SDIR'8IV(vUV(wLNV(E|") y (/ OP(1 &!op(* *%3 y$*%3 *]L !*J"**E  "> *E "6*E "@*E "7**E "=*E "*E "4*E *J2" *J2#COP(2 #copP+y[+z%3y$+z%3+z]L!+zJ$*+zE  $> +zE $6+zE $@+zE $7*+zE $=+zE $+zE $4+zE +zJ2"+zJ2#+}2$+J(>+ Z0 + 28!+ 2<.'+S@/+ TH (8 h `* *%3 y$*%3 *]L !*J"**E  "> *E "6*E "@*E "7**E "=*E "*E "4*E *J2" *J2# X* %3( 4* %30)*J8i6*2@f* iLHD*LP-* %3X #(< @P**%3y$*%3*]L!*J$**E  $> *E $6*E $@*E $7**E $=*E $*E $4*E *J2"*J2#X* %3(4* %30* %38* %3@^"* %3H (G % (4% 0,#3&Iop,$%3 1,%3 ,'3 ?,(3 ,*b( ,,|20 ,-|24 @,/b8 ],0|2@ s,1|2D ,33H ;,4P ,5X Y*,6` h",82h |,:bp >,<bx ,=b T,AJ2 },C 3,E3 %,HcL b6,KC ,LC 0,N+3 5?,O+3 >,^k2 f,`J2 C,aJ2 7,b3 ),nJ2 o.,u?2 +?,z3 Q&,{3 0,}V ,~3 2,b W6,3'?,',2'> ,2'*,C',b ' ,b('',J0'k,4%8'4%,4%P' ,4%h'1+,1' ,1(ISv,2',b'2,3(Ina,',b '0,b '',3 '#,2((Irs,20',38',3@'A,3H',4P'@,2X'M?,2`'v;,2h'F,%3p'#,Ux'r,U'2,S', ,2`'9,?9h',%3p';,%3x',3'),3',3'<,Z'K ,'x-,k2' =,J2' ,+3',+3'l4,+3'?,2)Z,b)_ ,a),/a),=8b)6,?)A,@Z),B2)9;,D2)0,Fy)R,Iy)\,J ) ,K3(),L30)7,M38)&,NZ@)8,O4H)< ,P2P)D,Q2X),T2`),Ubh)Y:,V4p),X+3x),Y+3y),Z+3z),[+3{),\+3|)H,]+3})a,^+3~)P,_+3),aZ),b2)!,d)\,f|2),h|2)R,l|2)<,oy),pb),s3)U,t3),u3)6,v3),w3)B,z3);,}3).,3) ,3)@,3),2)!,2)7,2)X,3)j,b ) ,38)G#,3@)>,2H)!,3P),3X),3`)g,3h),3p):<,3x)!,Z)}D,G>),%3)1 ,%3)),%3),%3)(,V)=,y)],y)-,Z)O9, c)o3,Z)I,3)>#,2)%,2)62,y),|2)C,+3)C9,+3),,k2),y),|2)=,|2)9,c)X3,3).6,c)H, ) ,G>p),Jx),J)C,J)+,G>)3,y),2)U%,+3),+3) ,+3),+3) D,})[,}),q)a5,q*Ian, 2)B, 2)S',2)&,2)w1,2)T5,) ,Z)%!,5)w,!c)1,#2`),%2d),' ^h)9,)2p)6,+|2x)T#,,J)(,.J).,/J)FA,1J) ,3J)<,6Z)#,7),8),92)8,:J2) ,;+3);,=J2) 1,>+3)~7,F+3)=,G+3) ,L0a)",,N+3)S,SS),Wy)',Y+3)5,[Z)9,\2)7,a2)M!,b2)-,c2 )>,d2 )B,f2 ),g2 )-,j2 )VC,k2( ) ,l20 )[2,m28 )@$,n2@ )7,o2H ),,p2P )+,r,cX )A,s","c )C,-J ),/ SV(O E%4%!sv-% 4.-( )-2 9-2 "-17AV(P %!av-% 4.-: )-2 9-2 "-a:HV(Q %%!hv-%& 4.-k; )-2 9-2 "-:CV(R 1&!cv-r& 4.-[: )-2 9-2 "-9 5(S &-&4.-39)-29-2 "-<GP(T &!gpP. ' j>. 2 %. J 5. G> (. 2 . 2 8. 3 r5. 3( G7. G>0 [ . 38"O6.E@"I(.E@ (. =HGV(U '!gv-' 4.-9 )-2 9-2 "-Q9#io-(4.-;)-29-2 "-q; (W !(J`+?>(y++CW.>`+(+ J2#+ J2%6+ k2C+ |2i+ |2*+ |2 2+ VrD+ C+ + |2(;.+V0 A*(Z (( Z0/o) )/ F= p/ Y R;/ k2 C/ e >&/ J2 3/  b/ 2 5/ Z(XPV([ |)#xpv -)_1-3'-=A--L= (\ ){(-%*_1-3'-=A--q=n?-< (] 2*(-*_1-3'-=A--=&-< h(^ *0-*_1-3'-=A--=n?- < #- <( (_ +0-g+_1-3'-=A--=n?-< #-<( (b t+ B(0 + _10 3 '0 = 050  f?0  `)0 3 *(c +  1, _11 3 '1= -1 1 u(d ,0-4,_1-53'-5=A-5-5>n?-6< #-7<( (e , Ch2 S- _123 '2= A2 2aK .23 32K( 2K0 2K8 (2Z@ 2KH 2G>P :22X 2*>\ '92|2` (h `-u-^k._1-_3'-_=A-_-_Y>n?-`< m!-bK9(UD-o~>0A,-q 8_-r @+-s HP=-t ZPP2-u 3X -v Z`>-w 3h77-x Zpx -y 3x 5-z e-{ J2 **(i }.k. @/ . / X #?/ X / X ;/ X k:/ X oB/ X( 9/ Y0 / X8ANY(j /+any(/,[ ( (,d(2,<(3,n(3,0(3,(3,(%3,~(Z,(,9( |2,.( 2,( , ( ,<( ,0( +3,g( 2,f<( M36({%0@(|]<(}b (~ ( u(l 2050(0B)(]( ( 8(](] (]( r (m 0(-b02-c3A&-dX+-eG3`-fG32!-g3 W (q 1 j3F1  3  73&K 3' 2 33( 2PAD(r % (s `1 {(3+1 3,  '3-3K 63.  3/J ?!30 2 f (t 1 i 03L?2 C3MZ 63M3 $3M?K 43M2 I03M2 )3M2 >3My$ ,3MJ2( I3MJ2)I84SU84-J2I164fZ2U1649k2I324y|2U324E2-2 22.2>42 4< 22(2 2(w 6  B(y 4%223'%3%+3G3G3(73 B514 @&53y 56 Z 57 Z 958 Z 359 Z ,5: Z( 5; Z0 r5< Z8 5= Z@ 5@ ZH M5A ZP 5B ZX /5D4` ?5F4h 05Hyp 5Iyt (5J x 55M9 5NS !5O4 85Q5 A5Y b5[5 5\%5 A5]4 ;5^ ( A5_  ?5`y 5b+5B6S3/5+r4S3 e5 L4_5 5 e;5 LM7G54/07G5 7G5-8 y :|5.q5 8|5-8 y 8|59<59>55 9N5:7.;$6a<; |2(; Z(; %3T.; 3.;50E-61&1k1!1#1:1K16(1151 1 1? 1 1 1#1B1?-06HE-6!he1 6 a71$ ?9 1% = 1)QHEK-6!hek 1-17 g01.2 1/|2 7154-7L-Z----2-39p>-3-99`-E9 -K9 *+<39 _1<3 '<= A< <? 7&<@ ><?( x(<30 ><28 ;%<@ <H g<P <<@X p)<2` <<2d <4<(h <2p K-<2t %<@x J < <Z <2 *< #C< < !<"!<E"+<E  = <G>7?96&5-9L-Z----2-39p>-3-99`-E9 -K9,-[:L-Z----2-39p>-3-99`-E9 -K9,-:L-Z----2-39p>-3-99`-E9 -K9g+-k;L-Z----2-39p>-3-99`-E9 -K9+2-;,L-Z,-,-,-,-2,-39,p>-3,-99,`-E9, -K9S-2-<,L-Z,-,-,-,-2,-39,p>-3,-99,`-E9, -K93+-<,- ,6- 3,2- 2,xB- +33?-=,*- ,A3- ,A- =,- +3637D-F=,V- F=,'- (2-q=,> -,,-Z2-=,> -,,-Z2-=,> -,,-Z2-=,> -,,-Z2->,> -,,-Z2-5*>,> -5,,-5Z E4-: 2G>G3G>%&7>02-_~>,> -_,,-_Z2-l>,R(-m>,<-n ( 4>.>(=> *<> A&<J2 < J2 83< k2*<> (<&U? <'  <(  <) 2 <* 2 <+  <-}? k7<. J2 $ <,<Z 0&h<@ e><(A #<eA p<A :<A <A C<A( 7 <B0 @<BB8 (<kB@ )<BH 3<AP ];<BX b><B`?@U??*+<7 z<@ 5<  <@T0<@4?(AG322A4|2eAG3?ZZZ2(2.A4ZAG3?2:ZZ2AAkA42AG3?AAG3?AAG3?22ABG3?2B@%BA4|2BBG3?B2$B42kBG3?222HB42BG3?B2qB4(BG3?B0B4?BG3 3y%3@?B22+3B5P<-D5< D;><-D< 2K-< 2 6cp<D5 <:E;><-D< 2K-< 2 6cp<D<:E>5@<E;><-D< 2K-< 2 6cp<DK.< 2< +3L <E 6me<:E( < E0Q< 28G< k2< < k2>k2J25@<F;><-D<-D.<$-D <?6cp<D ?A<D$<2(6B<:E0E <Z85<F;><-DX8< |2.2< |2 6me<:E5 < G;>< -D< -D<  2B< Z5<!G6val< y58<G;><-D<-D6me<:E6B<:E6cp<D  < +3$ < y("<" y,7<# Z05(<&H;><(-D'<)-D6cp<*D?A<+D2<, ZK8<- |2 7<. |2$5`<1H;><3-D6c1<4 y6c2<4y 6cp<5D<6 2K-<7 2|1<8 |2"<9 |2  <: +3$6A<;:E(6B<;:E06me<<:E8=<=H@E <>HN J2H L 5hKL'3 3!J R33"J p3# J v3$ JS1F13'KR<3 'K3%-KJJ9K13MaK\43M3&3MG>2K> 2,2Z2KA.2%32.2KM$2%3>2M>2K.23c:2=2 Lf2S>$2(* BLA*Jsv*2iv*uv*9* L4%3]LG3NLBL2*L,!*%3,<* J,_'*32* L, * %3,**  J ^&0?1)M ?3 Z (?4 Z _8?6  4>?7  4?8 Z I"?9 Z Z9?: Z( _ @*kM *@, Z [&@- Z &@.  8@/ 14AHM ~+AMM')AVM'U A[M'<1AbM'Aie''AnN eM8L eM8L eN8L eN8Lw @HB+N B- Z B. Z B/ B0 lB1 B2( 5B40 B68 BB8L@9PCh ZQCjZ Ck CqZQCuZKCv  Cy)M(7CzZH:C{ PC}`QXC5 `!CZZ C RCfQ6CyCZC #3C .CZmC +ClQ0CyQ>C )t?CZ)C )CrQ)6CL)eCZH)<C P) CxQX)'C `)\(CZ)-C )8CC~Q)CN)LCZ)C )CQ)CQ)C )#CQ)-CQ)C )c CQ ),CZ()LC 0)p0CZ8)AC @)-C yHkM)M5   L Nc 7#CN%31&Q951'2 1(  J)1ER }1F 8R 51G4 Q1H k2 D1I k2 k01J 2Q438RG332R O+H1MR FD1O3 Z!1S2 &A1T3 ?1U 2 1V 2 n 1WR &isa1X3( {%1Y30 1ZG>8 1[ 2@R.1gR1h ={C1i R= 81lS B1mR $1n 3 l1o ?9 1p |2 *1x |2 K+1yS 1{2( 1|2, 120>R ++ S @+!S b;+" "+# y @+$ +3 i+%k2S* +(S+S1S((+'[T +( %3+* J6cv++ G>f.+- |2?+. 3 b$(+3T +4 %3+6 J6cv+7 G>6gv+9 39+: 3 0+uU +v %3$+x 2)+y %3_D+z 26cv+{ G> P4+|U(S2+:U7svp+ 37gv+ 35+`U6ary+ 36ix+ 5+U3+ |26ix+ 5+U6cur+ 6end+ 5+U6cur+ 26end+ 22+V7ary+:U, +`U,5+U,i;+U@0+hV+ hV?(+U-+24+U+ J( 4+V?+%3.+ 220+V,*+T,7+[T,x"+T,A8+V,*+nV?X+WB;+ J26+ J2+ k2 + |2+ 1+ + Z+ 2 2+  2('+  Z0'+  Z8e+  Z@+  (H_+?P2`+@W,#+A>(,?+BV20+bX + 3"+bXm+hXc9+hXh+ |2 "+ |2$+ |2(+ |2,(W "*+W4yXG32F={X42XG32F=X4yXG32F=24|2X4yYG3F=BXk. D JY&valD $6 "D f D |2 D G> D Y (DY DY D 2 &D Z ?D Z QD 2 VYD VY@D"v] (D&v] 5D'$6 )D(y -D+y D-y D.|] D/|](&psD0|]0 C2D4 |28  D5 |2< ( D6 Z@ P"D7 ZH U1D8 J2P 'D9 J2Q w#D; J2R -D< +3S D= |2T D> %3X 4D? %3` D@ 2h sDA k2p 'DB k2r DC |2t DD 2x !DE |2 DF |2 "DG  YADH  ECDI+3 DJ J2 DK k2 (DL |2 2DM %3 "0DN 2 rDO] DP 2 &DQ Z \?DT Z Y?DU Z lDV Z dCDW Z MDX Z DY Z 'D^ 2 23D_ k2 'D` J2 Da J2',Db 3'Dc K9' CDd 3'DDf ]']Dg ]@';Dh J2T'}'Di J2U'2Dj J2V'vDk J2W'6Dl VX'Dm S`'jADn 2`'@+Do 2d'8Drh'nCDsp'fDtex'*$Dv+3y:%DxEx:TDyEx:DzE x:4D{E x''D}+3{'D~ J2|YJYY $6] L |2] L@DY/]4]v(^(G3($^@($^] (Q^ ^"^4y1^G3 5(R>^D^T^G32 (S^ '<(Un^t^4+3^G32 (V^^^G3 l^.^9(u^;(w^(y^({^(}^(^(^t9(^J(^?-(^3(^W(^ lb_ LR_4 (b_"(^I:(^B(^x)(^;(^(^2,(^h (^8 (^a(^(^( U2"( U2( U2 l:` L@*`1(:`(^ li` LY`Q (i`(i`(|5 `.`6(`(>:(>(>j*(> -`.(`G(> 4a.<=( a! (^;J%E(na1}1 1;1%14111%(|5?H(Fa6pad(Ga 4%a L $(PaaaG3%3 5(aaa4|2aG322 $(dM> e&(f]L (gb$b4%38bG3%3 )(ha +(iRbXb4yvbG3ZQ (l^(sb6fn(t M36ptr(u ( %7(vb.|2nXJJ] Zb L:y  c L4b2 (,c L 211 !1P1701111F1O1601111E111-1G& 1"!12"1 #1x,$1=%1#&1p='1`,(1 )1<*1+1),1-1.1S)/101R)11<62131;64151$61e%71#81d%91:1);16<16=1>1 ?16 @1BA1$B1(C1=D1WE1kF1 G1pH1x5I1BJ1]K2(Z^i7nv(Z7u8(Zci;i J2si L+(Z^i2([i7nv([7u8([cii;([iUh+]T 6i >i 54 Bai ij L j<>$"j y =\k>k G3 ?cvG>|@s yAax |2B- 3 Asp 3=;B# |2caC00k<>44 ^BB6kDend7k { E&]bFUvFR|G\okkFU FTvFQ ^FR ^H>]|FUUiI`#YpJk G3 KcvG>zpLsp3Lax|2M-35-M#|2M  22.Li ypjM   3Mf8  2 Mk0 3^XMc1 3M  2CPlL_p (60E#FUsFT;CnMG7$%mFUsFT|GE$CmFUsFTGg$xmFUsFT}FQ X]FR1FX2G{$mFU}FT Z]FQ|G$ɽmFUsFQ2G$ֽmFUsFQ2GD&nFUsFT aEQ&ɽFUsFQ2CSnL_p(E$FUsFT<NenO_p (NwnO_p(P׼#nQG#nFUsFT `FQ1G%nFUsFTG)% oFUsFTvFQ {]FR7FX$GP% ZoFUsFTvFQ ^]FR8FX$FY}Ga%yoFUsFTsG% oFUsFTvFQ `FR2FX$G%oFUsFTvG%$oFUsFQ|G%1pFUsFTFQ1G&>=pFUsFTFQFR1E_&KFT P]I!0( sJk G3JBKcvG>Lsp36 ( Lax|2 M-3$  M#|2 C@rM 2E A Liy | M1*3 R"3CqM 2 G(XqFUsFT|G(eqFUsFT|FQ {]FR7FX0E)rFU g]NqO_p(NqO_p(CdrM) 3  G1)>rFUsFT}FQ~FR0E)>FUsFTvFQvFR1NvrO_p(G( rFUsFQ {]FR7FX FY0Er)FUsFT}P׼I(rQf d E)KFT ]I 'sJk G3 KcvG> H(wFUUFTTFQ `FR2I%UPvJk G3  KcvG>v j Lsp3 Lax|2~M-3M#|2b^CgvLver2Lsv02MALrv2SlenM4`HMA& 2T0WkuLsv1 2C tMc1vpjGqWXuFUsFT}GX/uFUsFT}FQFR2GXTuFUsFT aEXFTGDVuFUsG_VuFUsFT~FQ}FRBGoVuFUsFT~FQ1GV̾uFU}FTVGV˯ vFUsFT}GVپ#vFUsGWLvFUsFTFR1!E"W$FUsFT~P׼U`vQUY%I1(wJk G3KcvG>H%(wFUUFTTFQ `FR5I$'(yJk G3`XKcv G>Kkey14F>J :yLsp3 Lax|2M-3)M#|2CxM 2zLret2CxM 2G]'XNxFUsFT~G{'exFUsFT~FQ {]FR7FX0E'rFU g]NxO_p(E' FUsFQ|FR}FX8FY0P׼('PyQ@>E'KFUTFT ]I`&zJk G3gcKcvG>Lsp3"Lax|2xnM-3M#|2NyRP׼i&yQOKG&XzFUsG&eEzFUsFQ {]FR7FX0G&jzFUsFT g]G&KzFT P]E'FUsFT 0aI qL"}Jk qG3KcvqG> Lsps3Laxs|2M-s3& M#s|2M t 2C{M x2@<G;MX{FUsFT|G]Me{FUsFT|FQ {]FR7FX0EMrFU g]C`|Lrsz 2xvC8|M 2HMپFUUGzMb|FUsFT ^FQ1GMپz|FUsGM˯|FUsGMپ|FUsGM|FUsFT|EMFUsP׼Ls}QEMKFT P]I%NQaJk NG3KcvNG>k a LspP3 LaxP|2=!1!M-P3!!M#P|2?";"CM U 2}"u"C g~M V2""GaQX~FUsFT}GQeK~FUsFT}FQ {]FR7FX0ESrFU g]VLrsX 2##LrvsY 2<#8#M#Z2{#s#M [##C~M l 2($&$HRپFUUGRXFUsFTGSR˯/FUsFTG^RپGFUsGR_FUsGRwFUsGReFUsFTFQ {]FR7FX0G9S FUsFT ^FQ1FR@?$GRSFUsFQ0ESFUsFQ2P׼QP>QM$K$ESKFUTFT p^I%>SJk >G3z$p$Kcv>G>$$Lsp@3w%k%Lax@|2&%M-@3l&d&M#@|2'&MU9A 2''C0lM F2''LrvF2( (C`ρM G2J(F(GTX~FUsFTvG1TeFUsFTvFQ {]FR7FX0ETrFU g]C!M J2((GyT$ FUsFT}HTپFUUGAT9FUsGLT˯QFUsEdT$FUsFT}P׼S@Q((ETKFUTFT ]I/TJk /G3((Kcv/G>P)F)Lsp13))Lax1|2**M-13/+'+M#1|2++MU92 2",,CM 72Z,X,Lrv72,~,C@&M 82,,G!UXՃFUsFTvG?Ue FUsFTvFQ {]FR7FX0EUrFU g]CrM :2,,GoU$\FUsHUپFUUGOU`FUsEZU˯FUsP׼T1ȄQ--EUKFT P]I!p/Jk !G31-'-Kcv!G>--Lsp#3..".Lax#|2..M-#3 //M##|2/z/CrLver( 20/C)M )2)0%0G/X؅FUsFT|G/e FUsFT|FQ {]FR7FX0E0rFU ]VM +2a0_0G/[FUsH0پFUUP׼/@#Q00E0KFT ]I  2Jk G300KcvG>/1%1Lsp311Lax|2e2_2M-322M#|2p3j3CEM  233C`M 233Gz2XFUsFTvG2eFUsFTvFQ {]FR7FX0E2rFU g]VM 24424G2`.FUsH2پFUUP׼52nQY4W4E2KFT P]I3]Jk G34|4KcvG>54Lsp35w5Lax|28626M-366M#|2C7=7CM   277CωM 277G 4X~FUsFTvG(4eFUsFTvFQ {]FR7FX0Eb4rFU g]VP M 288G84FUsHT4پFUUP׼3@AQ,8*8En4KFT P]WM>k G3W8O8?cvG>88Asp388Aax|2c9Y9B-399B#|2::Avs 2`;T;Arv 2;;B4I<1<Dlen BA& 2y=m=B 2>=CP׋B2>>UEPG~P#FUsFT~FQ Y^EPFUsFQ0FR"CBc1 v>>TO9B 2G?C?EOپFUsFT}X׼NaQ?}?GnNrFU cGNFUsGN0ȌFUsFT~FQ ]^FR5GNXFUsFT}GO˯FUsFT~GO*FUsFTFR|1!GO$HFUsFT}GPqFUsFT}FQwFR0GPFT~UPWz`Y>k `G3???cv`G>@ @Aspb3u@s@Aaxb|2@@B-b3AAB#b|2 BBApkgc 3qBiBAgvpd BBAgve 3BBAsvf 2LC,CB:+g4DDCAreq2SEAETYDB5*F(FEZFUsFT XdT0[A_p (QFMFGZX;FUsFTvGZepFUsFTvFQ {]FR7FX0G [˯FUsFTvG[پFUsG([ʏFUsFTvFQGT[ FUsFQ `FR2FX8FY0Gj[FUsFTvGx[:FUsFTG[پRFUsG[پpFUsFTvG[FUsFT dFX|GA\FUsFT dU\E\FUsFTT3Z BFFX׼Yb:QFFGY uFUsFT~FQ ^FR7FX FY0G#ZXFUsFTGWZ1FQ0GZIǑFUsFQ2GZXFUsFTGZFUsFTFQ0G[e=FUsFTFQ {]FR7FX0G\[FUsFTG\پsFUsGb\eFUsFTFQ {]FR7FX0G}\ǒFT dE\FT (d3iY xy*Jk x G3FFKlhvx2sGgGKrhvx2HGLi} HqHLl}|IrILm}IILr}JJM}~ |2pKTKM+ |2LLMp; |2!MMLlav 3MMLrav3MMC rL_p (7N1NN:O_p (E"+ FUvFT|FQ {]FR7FX FY0CpٔL_p (NNNO_p (EP+ FUvFTsFQ {]FR7FX FY0CLlsv2NNLrsv2 O OG+5FUvFT~FQsFR0G+^FUvFT}FQsFR0GE,ɽ{FUvFQ2E],ɽFUvFQ2C`Lrsv2GOCOGn-ܕFUvFT}FQsFR0E-ɽFUvFQ2C WLlsv2O}OG,=FUvFT~FQsFR0E,ɽFUvFQ2G*̞vFUvFTTG*̞FUvFTsGd+VFUvFT~Gw+VЖFUvFT}E-FUvFT ]Y:K22Jk KG3OOKvsK2PPLsvpP 3QQNeO_pX (CLpvZ 2QQHN3FUUNO_pf(G2̞ɗFUsFTTG 3 FUsFTvFQ ^]FR8FX FY0Gv3 >FUsFTvFQ `FR2FX8FY0Z3WFUU[3`E3FUsFT ]Y 2-`Jk G3!RRKvs2RRLi |2+S#SLlen |2SSMg|2RTJTLsv 2TTLav 3UUCL_p# (PULUNfO_p# (E- FUvFQ {]FR7FX FY0CLtsv+2UUG).ޙFUvFT}FQ0FR0E.ɽFUvFQ2CLtsv02UUG.b:FUvFT|FQG.iFUvFT}FQs $ &FR0E.ɽFUvFQ2G-̞FUvFTTG .VFUvFT}GY.oFUvFT ]G)/FUvFT|FQ}FR2FX2Z_/>FUUFT ^FQ0En/FUvFT ]Y2 0̞Jk G3VUKvs2VVLi OWIWLlenWWMg |2WWM 2 +3XXLsv 2jX`XLav 3XXN8O_p (C L_p(YYNgO_p(E0 FUvFTsFQ {]FR7FX FY0CPLtsv2QYMYG0FUvFT|FQ0FR0E1ɽFUvFQ2CLtsv2YYGN1bAFUvFT~FQGg1jFUvFT|FQsFR0E1ɽFUvFQ2G60̞FUvFTTGh0 ݝFUvFTsFQ `FR5FX8FY0G0FUvFT=FQ ]G0V%FUvFT|G1oJFUvFT ]G1FUvFT~FQ ]FR3FX2Z2FUUFT ^FQ1E2FUvFT ]Y2"dJk G3YYKvs2ZYLsv 2dZbZLsvp 3ZZNSO_p(E*# FTsFQ {]FR7FX FY0Yo g2p4Jk gG3ZZKverg2+\\Kqvg'+3q]S]M"l4^^Lsl4c`]`Lmgn``\>q6C Llenz``]<{~C 3Llen|ya a^44+| Q4a2aQba`aQaaE5|FUsFT@FQ1FR@FX ]FY E"HrFU ]FT ]G5VFUvFTsFQ:G%5{FUvFT~FQ:E@5FUvFT?FQ xcFR CjLlenaa]<~Lsv 2Eb=bLbufZbbC@MT ZKcEcMEccTZC>ҢLlen y,d*d_ZC QQdOdQd}dQddEC|FU~FT@FQ1FR@FX ^CFMS 4ddTG-Llen yrepe`GG( QeeQeeQeeEG|FU~FT@FQ1FR@FX ^GCFU1FT0GD#ߣFUvFT|FQ ^GDFU1FT}GDFU}GG,FUvEGFU1FTsGCǿkFU~FT ^EF#FUvFT|FQ ^NO_p4 (PE4 Q+f'fQefafa@bffEGԿFUvFT|GD*FUvFT~GEOFUvFT~FQ:EFFUvFT@CSlen@~G6FUvFQsG:ǥFUvFT~FQ:EBFUvFT~FQ~FR2PƸ@5 w ήcQggQhThQظjjV bkkbmmb"oob/wpOpb<DrrbIssbVuubccw7wbpAy+yb|Xz4zPƺ5` . Q{{Q׺b}B}Q)~~QrRQ"Q҃QbQ4V` b5b@[GbLX8bXӋbdj,dn@dv7eP b׏a~ bbe` 3b8"G7FUvFT;E;FUvFT;eй Nbչ7+e bْŒbb}eP¨bET9FUvFT?FQ 2^Es<FUvFT?FQ xcFR f</bG91FUvE9FUvFT~e,b1A#Gu=FUvFT0E=FUvFT~erbwzG=FUvFT}FQ|}G= FUvFT~FQ ^]FR8FX$G>DFUvFT}FQ~}GzEFUvFT~FQ0FR0FX `FY1EEFUvFT}FQ~}e?@pbDG?FUvFT N^FQ5G? FUvFTsFQ ^]FR8FX$G?=FUvFT1E? FUvFTsFQ T^FR4FX$G7FUvFT~FQ {]G7FUvFTFQ<G7ݫFUvFT1G8 FUvFT~FQ `FR5FX$G>8-FUvGf8 eFUvFT~FQ ,^FR5FX$GH;FUvFT Z^G;FUvFT~FQ {]G;ڬFUvFT~FQ<G=FUvFT~G"> 2FUvFT~FQ {]FR7FX$G?\FUvFT ^FQ1GD? FUvFT~FQ ^]FR8FX$GQ?FUvFT0Ga?ѭFUvFT~G@FUvFT1G(@ &FUvFT~FQ `FR2FX$G/BCFUvFT1GWB {FUvFT~FQ `FR2FX$GBFUvFT1EB FUvFT~FQ `FR5FX$G:FUvFT~G>&FUvFT0>0I, tIt ItIt I uItffI t99I"tG@G@I tB5B5I tIItI ti2i2ItIt**I t((((I t22It%%In t<<IbtI` tI t66IuIt??It;;I tl-l-ItG*G*Iz t 9 9I( t((ItQBQBI tI~vBBtItI t..I~ tc+c+I t I w (undef)t))Iw u4B4BItttI tI xAAt<:<:I( tAAI uJztA<A<I tI$ tCCK/t&%&%IF tJ,J,ItVVIZ tW W I ts&s&IU tu!u!I< x t44Kqt33I.tI% $ > &I: ; 9 I$ >   I7I  : ; 9  : ; 9 I8 I !I/  : ; 9  : ; 9  : ; 9 II : ;  : ; I8 < : ; 9  : ; 9 I'I4: ;9 I?<&4: ; 9 I?< : ;9  : ;9 I8  : ; 9 : ; 9 I: ;9 I : ;9 I! : ; 9 " : ; 9 I 8 # : ;9 $ : ;9 I 8 % : ;9 & : ; 9 I8 ' : ; 9 I8( : ; 9 I8) : ;9 I8* : ;9 I8+ : ;9 , : ;9 I-5I.!/: ; 9 0> I: ; 9 1( 2 : ;9 3 : ;9 4'I5 : ;9 6 : ;9 I8 7 : ;9 I8!I/9 : ;9 : : ; 9 I 8;> I: ;9 <4: ; 9 I=.?: ; 9 '@B>: ; 9 IB?: ; 9 IB@.?: ; 9 'I<A4: ; 9 IBB4: ; 9 IBC UD4: ; 9 IE1FBG1HB1I.: ;9 '@BJ: ;9 IBK: ;9 IBL4: ;9 IBM4: ;9 IBN O4: ;9 IP1RBUX YW Q1BR4: ;9 IS4: ;9 IT U1V UW.: ; 9 '@BX1RBUX Y W Y.: ;9 'I@BZB1[B1\ : ;9 ]4: ;9 I^1RBX YW _1RBUX YW `1RBX YW a 1Ub41Bc1d 1e 1Uf 1g.: ;9 'I h: ;9 Ii: ;9 Ij k.: ; 9 'I l: ; 9 Im: ; 9 In4: ; 9 Io4: ; 9 Ip : ; 9 qr.: ; 9 ' s.?: ; 9 'I 4t.?<n: ;9 u.?<n: ; 9 v.?<nw6x.?<n: ; j0C /usr/lib64/perl5/CORE/usr/include/bits/usr/include/sys/usr/include/bits/types/usr/lib/gcc/x86_64-redhat-linux/8/include/usr/include/usr/include/netinetvutil.cvxs.incinline.hppport.hstdio2.hstring_fortified.hvxs.cvxs.xstypes.htypes.htime_t.hstddef.h__sigset_t.hstruct_timespec.hthread-shared-types.hpthreadtypes.hstdarg.hstdint-uintn.h__locale_t.hlocale_t.hsetjmp.hsetjmp.h__sigval_t.hsiginfo_t.hsignal.hunistd.hgetopt_core.hsockaddr.hsocket.hin.hstat.htime.htime.herrno.hnetdb.hnetdb.hdirent.hdirent.hperl.hmath.hop.hcop.hintrpvar.hsv.hgv.hmg.hav.hhv.hcv.hpad.hhandy.hstruct_FILE.hFILE.hstdio.hsys_errlist.hperlio.hiperlsys.hperly.hregexp.hutf8.hutil.hpwd.hgrp.hcrypt.hshadow.hreentr.hparser.hopcode.hperlvars.hmg_vtable.hoverload.hproto.hlocale.hstring.h "z &z<B Y J?K #u< JY / |K }JJ<}#J}<J }J<JJ =0<  zXKLV ;YZX<X><  uYy<<g ht e< X& ' 7-gJJ>X ..../bJ0.q:ft:<w `&~KY~#< ~JJ~t fJL ?< J#  ~J=<}#JJfJJfKK .r  )].<XK  Jt .GY;Y/v   :J ue<Y Xuu  1 =< K  =t< =  0 YXJ.J.. eX uX f z/.   f <J tL#= t hJ  tzJB J..lXw <>H0 "#= t  ^x Y &  Vt  =  =<< X=J  [-< = ?X Y =t   X . /( <2. ntnJ.JnJ yX p/zKJ ~fJ<~#~JJ~< J<<J Z<<JJtf  ,X  0v  Y   u ]-   =<<%  %. J  \< =J Z =tz  /... mmJm t .mf mXz KJ ~fJ<~#~JJ~< J<<J L< 1< GJ?< >XJXf  ,XtX 2  Y   u  = ytfX  v< vJ < v t  &! ;! ; YX vX mXyKJ fJ<#JJ< J<<J L< 1< GJ?< >XJXf  ,XtX p4fu Xf  [{ X!;v &>#X Q'<"`f>IXtX.XX  XXw< | < =J]     , $ X %.|    Yt K fM  |(   + r,=; = =# '  XXw< | < |XqX   XX ~<< | <X }!_fMX  fJ YI K  ttJ;JXY<5SYYK: ~eY XpJX=KJjf_ i 2t  zX  u <!. /{%.?X<(%,t 1 / t{  {XX  {< <<       & YY>!J,J'<(u(sY*my<KfKf fJ   Y" < LZ  YY{Y &u#fX#<=f.  &fJ : :t M< =/b NX,   =t!     K  K. K gY{ {< {tXJ Xw0J t !#mt~KJ ~fJ<~#~JJ~< J<<J</<IJ=, ,JJ   L :^ << ?J X tfX<.. +q4&XX !'&4&f4 8tX SmK ~Jt~# <<K <K< U>SUUS0ITItUtTUTEQsQ\|Q\QWZPZRRZ^p $ &3$t"^r $ &3$t"r $ &3$s"r $ &3$t"r $ &3$s"h|P|y3&PvTVVPEWSU\S\cUcdUd~STUrTr}U}~TQsQH\HM|McQdr\r}QPRr}Rp $ &3$t"r $ &3$t"r $ &3$s"ryr $ &3$t"y}r $ &3$s" P y3&r}P<GvT]VdrVHcPS+w+Uw+-S--U-.S+3+T3+.T,+,V,,v,-V-.VA+E+PE++]O--]--]- .]E+I+p $ &3$r"I+}+} $ &3$r"~++} $ &3$r"O-T-} $ &3$r"--} $ &3$r"S+y+Py+}+t3&~++P++t3&O-T-P--t3&--ss# $ &3$r3&++^++P+-^-O-^\-`-P`-.^,,P,-] ..]S+>, ^>,C,UC,G,_,,_-C- ^C-O-_O-- ^--0-- ^----_- . ^S+,0,-\-J-0J-O-\O- .0 ..\S++0+,]-O-]O--0--]--0--]- .0g-z-T--T+N,P--P--P,-] ..],+A+U66U6T7ST7^7U^79S6\6T\69T99T99T66u>6B6u#B6W7\^78\89\B6w6u# $ &3$p"w66u# $ &3$u"^7f7s# $ &3$p"99s# $ &3$p"99s# $ &3$s"99s# $ &3$s"M6(7V^77V299V99V6H7^j7o7Po79^99^66P66Po7t7P\6w6Tw66P66t67s7(7_^7f7Tw77T77P78_88P299_99P99 |3$s"#99_99P99s67=7(7=78029Q9=99099=67} $ &3$s"78V88P88V29P9} $ &3$s"99T99V99P99V77Q@8E8vE8c8TC7^716>6UU V  U # V# , U, VTTP\u \ \QS1P1}S P0 S s  s C sC u Su 0 " S, Z SZ \ s\ SPSu u S  _  ,( + _+ , ,(, _P w   u wu P  w , , w 0 P 1 C PC 0 P 0 p  0  p, C PC \ 0\ n Pn 00 \ Y \u 0 00 Q % Qu 0 0T ^ ) ^, ^m ] ' ], ]T ^ ) ^, ^m ] ' ], ]TY l TTC T TC S T T T  TULSLNp}NXSX]U]^U^SUUSUUSTT/P/MVNYV^VTTP0AP^P:]T U G VG P UP b Vb n Un o Uo ~ V T T  Po } Pl 1 S s S! 8 P8  ^  sp 9 S9 < s< > SP n Pn o w@U d Pd h Q P Rl p Pp \ I \I P P  ]P f ]  ]P f ]< U T T T T0 E UE VUVUU#V0 E TE F TF w Pw 9SSSP+B1BS1 P ]PN]R0  0 1#0+BPB^P^P \\ \\ TTBNTzT9U9dUTWSWXPXcSHVP:DP U TVTlUlVUV2U2lVluUuH VH j Uj ##V##E#UE##V##U#[%VTT~TlTl~T~2T2H ~H j Tj ##~##B#TB##~##T#[%~QP_T_;__H C"_##d#_d#~#Q~##1##_+$7$_a$p$_$$_$%_%C%_04P4T~~P~;~]~H ~""P"##~y#}#P}##~#+$~7$a$~p$$~$$~%%~C%[%~?n\\%%\J#h#Pa$k$PP:P: ]@~S !S!!S##S+$7$S$$Sc j 0##P##\$$\ !^!C"^##^+$7$^$$^$$^$%^c 0 P##0c C"0##0+$7$0$$0$%0%2%0 Pj ^j @j t ~t ^ !0!!Ph!!]$$]% %P %%]$$P$$ ^$$@$$~$$^"C"\$$\"C"V$$V-"9"Q9">"|>"C"q$$QPT~~;?~u~~H ~C"##~##~#+$~7$a$~p$$~$$~%%~C%[%~P{~{}]],^pPp]R\p\cXPQ3QBt\??\|\XB]PX]"~""X""\""~PTVV;?VuVVH VC"##V##V#+$V7$a$Vp$$V$$V%%VC%[%V PT~v~v~];~B~~~]"~"]H ~C"T"~""~"##~##~#+$~7$a$~p$$~$$~%%~C%[%]XX],Q,]] Q ]RQR]Q]Q]Q]3Q3=]XP]PX""X""\""~ v~\g]B]]"\C%[%\PT0~0;G0Xg0gQ00 b0H 0C"T"0""0"##0##0#+$07$a$0p$$0$$0%%0C%[%0PT0v0v~~;0B00"0"~H 0C"T"0""0"##0##0#+$07$a$0p$$0$$0%%0C%[%~ PT3v3vF~;3B33"3":~H 3C"T"3""3"##3##3#+$37$a$3p$$3$$3%%3C%S%~ PT0v0v~^;0B00"0"^H 0C"T"0""0"##0##0#+$07$a$0p$$0$$0%%0C%[%^ PT0 0hr1H0;R01030Bt1u000H 0C"T"0"##0##0#+$07$a$0p$$0$$0%%0C%[%0P~P~~"~T""~""~%%~C%K%~S%[%~PI_I~P^~B^B~~"_~T""~""~%%~C%F%_F%K%~S%V%_V%[%~ T0v0;G0Xg000H 0C"T"0""0"##0##0#+$07$a$0p$$0$$0%%0 TVvV;GVXgVVVH VC"T"V""V"##V##V#+$V7$a$Vp$$V$$V%%V Tv;GXgH C"T""""#####+$7$a$p$$$$%% T}v};G}Xg}}}H }C"T"}""}"##}##}#+$}7$a$}p$$}$$}%%} Tpvp;GpXgpppH pC"T"p""p"##p##p#+$p7$a$pp$$p$$p%%p T v ;G Xg   H  C"T" "" "## ## #+$ 7$a$ p$$ $$ %%  Tcvc;GcXgcccH cC"T"c""c"##c##c#+$c7$a$cp$$c$$c%%c T]v];G]Xg]]\]H ]C"T"]""]"##]##]#+$]7$a$]p$$]$$]%%]1111 $+$17$a$1$$1%%1 33v~3~(~YC"T"~""~|$$~ 00v~0~1~~H 1C"T"~""1 $+$~7$R$~|$$1$$~%%~ 00v^0(^10^C"T"^""^##^ $$^$+$17$a$^p$$^$$^%%^ ]]\}\v\;G}]\ 9T9TtTpTptTT\T\H TC"T"\""t# $] $$\$ $t $+$T7$I$\I$V$tV$a$T|$$t$$T%%\T0Xg0(0(Y0H 0""Y"##0# $0|$$Y00$$0P~P~~"~T""~""~%%~C%K%~S%[%~ 0hr H0URpU X ] cYhYyY,Q,]R]Y 1 \\H1q|Q\R\\U\cU&DUDcy8$8&0RT__Q_g2qgjPjtSt{P{SPmmQmu2quxPxSQ2qPSPPT""P""~""PP`%z%Uz%%S%%U%)S`%m%Tm%%\%%T%(\(!(T((\(q)Tq))\))T))\%%P%%V%)V,(.(0.(@(\@(S(|S((\))\#&'&P'&(]))],((_))_3&:&P:&(^))^#&'&P'&(]))]?'L'Pb'l'P''P,((_))_.(6(Tz((T6(D(P((P()^()](q)\()P)) p |"~") )p ))T))P%%P%%PRURSUSOTOVTVVQV\Q\+c yy.28@aeRVYY]adkww1aim   2=@PT2=@PTTT`cfim H   ! H \ n   * U }  "  "   9^g>BEEIMPWloqxloqx7GPPTWY`[_r<dr<[_dP%2%%2%PXee@!!?xCC''VVP H"(###$0$@$$$$C%[%Xv@G`gP H"X""""(###$0$@$$$$6`gP """(#$$$$##$0$@$$$$B9;XKYX""""@P ""H"#$0$@$$$$%c !#$$$$%j j o !$$$%"H"$$("H"$$%%())) ) )))%%%%%%%%&P&P&&&&&''''|'|'''''''())))))&& &#&'''|'|''))F'|'|''))'''''''''(("(%(,(0(<(@(S(g(()*** * ***0*3*5*<*C*q*****q************,+0+3+A++,----P----%.).,.,.0.4.7.A.Y.[.^.b.i.//0Y.[.^.b.i....00...//0//////000011111E111t111111111122)222222)2S222j22222222%3%3(33333 645P5555223366%6)6,676;6>6677889X9999999:::;:8`^  (    0" @]P]8e fxny y y { }  `  " >]# 0"6 0"M 0"e 0" 0" 0" 0" 0" " T# "d% T#K _&o `# _& ' `& ' ' '- 'N (m ' ( %( ( %( ) 0(, )M *l )~ * - * - n/ - n/# 0C p/V 0s 2 0 2 2 2 2 3/ 2@ 3e n4 3 n4 KH p4 KH L0 PHB(eS Lv M L M P M P S5 QF Ss T S T U T U; YW UPf Y \ Y \ >] y    0"  `",  "B  Q y x  " y  tn  @] y { 8e  }     . J [ m }         * ; T b t         $ / < I [ p  {           \ + 8 I ^ p ~        *8F"b.annobin_vxs.c.annobin_vxs.c_end.annobin_vxs.c.hot.annobin_vxs.c_end.hot.annobin_vxs.c.unlikely.annobin_vxs.c_end.unlikely.annobin_vxs.c.startup.annobin_vxs.c_end.startup.annobin_vxs.c.exit.annobin_vxs.c_end.exit.annobin_Perl_vverify2.start.annobin_Perl_vverify2.endPerl_vverify2.annobin_VXS_version_from_tuple.start.annobin_VXS_version_from_tuple.endVXS_version_from_tuple.annobin_VXS_version_noop.start.annobin_VXS_version_noop.endVXS_version_noop.annobin_S_version_check_key.start.annobin_S_version_check_key.endS_version_check_key.annobin_VXS_version_is_qv.start.annobin_VXS_version_is_qv.endVXS_version_is_qv.annobin_VXS_version_is_alpha.start.annobin_VXS_version_is_alpha.endVXS_version_is_alpha.annobin_VXS_version_tuple.start.annobin_VXS_version_tuple.endVXS_version_tuple.annobin_DPPP_my_ck_warner.start.annobin_DPPP_my_ck_warner.endDPPP_my_ck_warner.annobin_Perl_vcmp2.start.annobin_Perl_vcmp2.endPerl_vcmp2.annobin_Perl_vnormal2.start.annobin_Perl_vnormal2.endPerl_vnormal2.annobin_VXS_version_normal.start.annobin_VXS_version_normal.endVXS_version_normal.annobin_Perl_vnumify2.start.annobin_Perl_vnumify2.endPerl_vnumify2.annobin_VXS_version_numify.start.annobin_VXS_version_numify.endVXS_version_numify.annobin_Perl_vstringify2.start.annobin_Perl_vstringify2.endPerl_vstringify2.annobin_VXS_version_stringify.start.annobin_VXS_version_stringify.endVXS_version_stringify.annobin_Perl_upg_version2.start.annobin_Perl_upg_version2.endPerl_upg_version2.annobin_Perl_new_version2.start.annobin_Perl_new_version2.endPerl_new_version2underscore.19660.annobin_VXS_version_boolean.start.annobin_VXS_version_boolean.endVXS_version_boolean.annobin_VXS_version_new.start.annobin_VXS_version_new.endVXS_version_new.annobin_VXS_version_vcmp.start.annobin_VXS_version_vcmp.endVXS_version_vcmp.annobin_VXS_version_to_dotted_decimal.start.annobin_VXS_version_to_dotted_decimal.endVXS_version_to_dotted_decimal.annobin_VXS_version_to_decimal.start.annobin_VXS_version_to_decimal.endVXS_version_to_decimal.annobin_VXS_version_qv.start.annobin_VXS_version_qv.endVXS_version_qv.annobin_VXS_universal_version.start.annobin_VXS_universal_version.endVXS_universal_version.annobin_boot_version__vxs.start.annobin_boot_version__vxs.enddetailscrtstuff.cderegister_tm_clones__do_global_dtors_auxcompleted.7303__do_global_dtors_aux_fini_array_entryframe_dummy__frame_dummy_init_array_entry__FRAME_END___fini__dso_handle_DYNAMIC__GNU_EH_FRAME_HDR__TMC_END___GLOBAL_OFFSET_TABLE__initPerl_sv_2iv_flagsPerl_sv_2bool_flags__snprintf_chk@@GLIBC_2.3.4Perl_newRV_noincPerl_sv_2uv_flagsPerl_stack_grow_ITM_deregisterTMCloneTablePerl_sv_catpvn_flagsPerl_sv_insert_flagsPerl_av_len_edataPerl_newSV__stack_chk_fail@@GLIBC_2.4Perl_sv_catpvfPerl_sv_upgradePerl_savesvpvPerl_gv_stashpvnPerl_sv_catpvf_nocontextPerl_sv_blessPerl_sv_2pv_flagsPerl_xs_boot_epilogPL_charclassPerl_sv_isobjectPerl_sv_mortalcopy_flags__gmon_start__Perl_newSVsvPerl_croak_xs_usagememmem@@GLIBC_2.2.5Perl_newSVpvn_flagsPerl_mg_sizePerl_croakPerl_av_pushPerl_savepvnPerl_save_pushptrPerl_croak_nocontextPerl_newXSstrpbrk@@GLIBC_2.2.5Perl_gv_stashsvPerl_vwarnerPerl_sv_derived_from_pvnPerl_sv_setsv_flagsPerl_sv_2mortalPerl_mg_get__bss_startboot_version__vxssetlocale@@GLIBC_2.2.5Perl_newSVuvPerl_safesysfreememmove@@GLIBC_2.2.5Perl_xs_handshakePerl_av_fetchPerl_hv_common_key_lenPerl_sv_setpvnPerl_mg_findPerl_newSV_typePerl_newSVrvPerl_sv_free2Perl_ckwarn_ITM_registerTMCloneTablePerl_sv_setpvfPerl_newSVivPerl_savepvPerl_newSVpvfPerl_newSVpvn__cxa_finalize@@GLIBC_2.2.5Perl_sv_newmortal.symtab.strtab.shstrtab.note.gnu.build-id.gnu.hash.dynsym.dynstr.gnu.version.gnu.version_r.rela.dyn.rela.plt.init.plt.sec.text.fini.rodata.eh_frame_hdr.eh_frame.note.gnu.property.init_array.fini_array.data.rel.ro.dynamic.got.bss.comment.gnu.build.attributes.debug_aranges.debug_info.debug_abbrev.debug_line.debug_str.debug_loc.debug_ranges88$.o``48 `@eHo^ ^ Uo @d((nBxs~0"0";@]@] P]P]8e8e f fXxnxn y yy yy y0 { {} } 0-`0,U8AT$Fe[n0R0ӋD]Y-hn8" @tvperl5/auto/version/.packlist000064400000000554147205023560012053 0ustar00/usr/local/lib64/perl5/auto/version/vxs/vxs.so /usr/local/lib64/perl5/version.pm /usr/local/lib64/perl5/version.pod /usr/local/lib64/perl5/version/Internals.pod /usr/local/lib64/perl5/version/regex.pm /usr/local/lib64/perl5/version/vpp.pm /usr/local/lib64/perl5/version/vxs.pm /usr/local/share/man/man3/version.3pm /usr/local/share/man/man3/version::Internals.3pm perl5/auto/YAML/Syck/Syck.so000055500002330370147205023560011507 0ustar00ELF>l@ @8 @%$ P$P$"P$"  (&(&"(&"888$$ Std PtdPPPddQtdRtdP$P$"P$" GNU!0@S6Vog,0p P1x4BD@50L DEDX A@ !A(@7p<0 D 1@@$!RDD P  ]pqrstuwyz   %4 oqΥx*c8}ysrθ`ϋR SjNw8A"R慧~6" :9/^2ya)ⶉC#뵠g4S8 SH@%HC '2IBLV_{?94ua^X1UHr޼q""oRUzsA)zUThމM0@hwb-pu>h}*cU>=E6"JɹDȸ肸v`T䷴ $ig ɶpP3($Y0n(ACP}6qX}aJmhK{rj?^b~*%rQ 4Dzn!åKcɆCn,{Ps߽nGǵ gw'vpW] \DQxqk047=Y0мۙܡPdI|X#.e#fJmqA=yN(c_G /hCE쎢fgKM;,n0047Ko!N4h T]"T=lI4D/47I%j}T S!BmL628 =_EfMk3:/r1:ē̵!?"KDzW o ) ]    w  H|  W;  { # Z-  U e"+J O N  p  =   4 j ?  rK   c  >  .KG  3     \  0y9@  ,  + Y LF" 2 e L ЦM m ~[? Зa Єb 1 0 9 , k |   P  `b  *   @ y| @8 p#v    n .  @ PU  S   E  0 P)  0+B    ` @     8  ; 0d  Q^ }o K  S t H (m `a" 3  1Q0< Ѓb `  , P: 0f  _  ` j l4" L/ 0#   P `1 @ P UF 0F[ p<0"V .s @D ` 0T QU `t .* `Sf `  n 0Es }}   2 Q6 k  0  ]   Дas   7 40"p |  и  80" , o`  >F ~   `-p4" " 03; 3e m5 ``4"   U `Q `,V   <0", Y 0~  H  PA'    P= 01( `o @ Q  `=   ~  0b 0' !` !$ H X `1j `a  B  @   5 @ @D l__gmon_start___ITM_deregisterTMCloneTable_ITM_registerTMCloneTable__cxa_finalizelibpthread.so.0get_inlinesyck_parser_readreallocsycklex_bytecode_utf8syck_parser_ptrsyck_parser_current_levelsyck_parser_pop_levelsyck_parser_add_levelsyck_hdlr_remove_anchorsyck_alloc_strtry_tag_implicitstrlenmemcpysyck_strndupstrcpystrncatstrtodsyck_st_free_anchorssyck_base64encsyck_base64decsyck_emitter_st_freest_foreachst_free_tablesyck_emitter_current_levelsyck_emitter_parent_levelsyck_emitter_pop_levelsyck_emitter_add_levelsyck_emitter_reset_levelssyck_new_emittersyck_output_handlersyck_free_emittersyck_emitter_clearcallocsyck_emitter_flushsyck_emitter_writesyck_emitst_lookup__sprintf_chkst_insertst_init_numtable__stack_chk_failsyck_emit_tagsyck_tagcmpsyck_emit_indentsyck_scan_scalarsyck_emitter_escapehex_tablesyck_emit_1quotedsyck_emit_2quoted_1syck_emit_2quotedsyck_emit_literalsyck_emit_foldedsyck_emit_scalarsyck_match_implicitsyck_emit_seqsyck_emit_mapsyck_emit_itemsyck_emit_endsyck_emitter_mark_nodememsetstderrfwrite__fprintf_chkfputcapply_seq_in_mapsyck_map_countsyck_hdlr_add_nodesyck_map_assignsyckparsesyckdebugsyck_add_transfersycklexsyckerrorsyck_hdlr_add_anchorsyck_new_mapsyck_map_updatesyck_free_nodesyck_alloc_mapsyck_new_strsyck_seq_addsyck_new_seqsyck_alloc_seqsyck_hdlr_get_anchorsyck_tagurist_init_strtablest_deletesyck_type_id_to_urisyck_xprivatesyck_try_implicitstrchrstrcmpsyck_alloc_nodesyck_new_str2syck_replace_str2syck_replace_strsyck_str_blow_away_commasmemmovesyck_str_readsyck_map_emptysyck_map_addsyck_map_readsyck_seq_emptysyck_seq_countsyck_seq_assignsyck_seq_readsyck_free_memberssyck_io_str_readsyck_io_file_readfreadsyck_st_free_nodessyck_assertfflushabortsyck_parser_reset_cursorsyck_parser_set_root_on_errorsyck_add_symsyck_st_freesyck_parser_implicit_typingsyck_parser_taguri_expansionsyck_parser_error_handlersyck_parser_bad_anchor_handlersyck_parser_set_input_typesyck_parser_reset_levelssyck_new_parserfree_any_iosyck_free_parsersyck_parser_filesyck_parser_strsyck_parser_str_autosyck_move_tokenssyck_check_limitsyck_parser_readlensyck_parsesyck_default_error_handler__printf_chksyck_str_is_unquotable_integer__ctype_b_locst_init_table_with_sizest_init_tablest_init_numtable_with_sizest_init_strtable_with_sizest_add_directst_copyst_delete_safest_cleanup_safeeat_commentsescape_seqnewline_lenis_newlinesycklex_yaml_utf8strtolsyckwrapperl_syck_bad_anchor_handlerPL_thr_keypthread_getspecificPerl_newSVpvn_shareperl_syck_error_handlerPerl_croak_nocontextperl_syck_output_handler_pvPerl_sv_catpvn_flagsperl_syck_output_handler_mgperl_syck_output_handler_ioPerl_PerlIO_write__errno_locationPL_utf8skipPerl__is_utf8_char_helperPerl_sv_isobjectPerl_sv_reftypePerl_hv_common_key_lenPerl_sv_2pv_flagsPerl_form_nocontextPerl_gv_fetchpvjson_quote_charPerl_push_scopePerl_savetmpsPerl_safesysmallocjson_syck_parser_handlerPerl_newSV_typePerl_sv_2mortalPerl_safesysfreePerl_pop_scopePerl_free_tmpsPerl_sv_2bool_flagsPerl_croak_xs_usageyaml_syck_parser_handlerPerl_av_pushPerl_newRV_noincPerl_block_gimmejson_syck_emitter_handlerPerl_mg_getPerl_newSVsvPerl_sv_lenPerl_hv_placeholders_getPerl_hv_iterinitPerl_hv_iternext_flagsPerl_hv_iterkeysvPerl_hv_itervalPerl_av_lenPerl_av_fetchPerl_av_storePerl_sv_cmpPerl_sortsvPerl_av_shiftPerl_hv_commonPerl_sv_free2yaml_syck_emitter_handlerPerl_savepvstrcatPerl_looks_like_numberPerl_newRVPerl_call_methodPerl_stack_growPerl_markstack_growperl_syck_lookup_symPerl_newSVpvPerl_newSVpvnPerl_newSVPerl_newSVnvPL_nanPL_infPerl_newSVuvPerl_grok_hexPerl_grok_octPerl_grok_numberPerl_my_atofPerl_newSVivstrncmpstrtokPerl_call_pvPerl_av_clearPerl_sv_setsv_flagsPerl_gv_stashpvPerl_sv_blessPerl_sv_catpvPerl_eval_pvPerl_croak_svPerl_gv_add_by_typeperl_json_postprocessjson_syck_mark_emitterDumpJSONImpljson_max_depthPerl_sv_2iv_flagsDumpJSONDumpJSONFilePerl_sv_2ioPerl_sv_newmortalPerl_sv_setiv_mgDumpJSONIntoPerl_sv_setpvyaml_syck_mark_emitterDumpYAMLImplDumpYAMLDumpYAMLFileDumpYAMLIntoboot_YAML__SyckPerl_xs_handshakePerl_newXS_deffilePerl_xs_boot_epiloglibperl.so.5.26libc.so.6_edata__bss_startGLIBC_2.2.5GLIBC_2.3GLIBC_2.3.4GLIBC_2.14GLIBC_2.4U ui ii ti ii ui P$"pmX$"0m`$"`$"$"Q$"$"V$"a$"m$"x$"$"$"$"$"$"$"ͷ$"ط$"$"%"%"%"%" %"(%"0%" 8%"@%"H%"'P%"X%""`%"*h%"0p%"<x%"G%"R%"b%"k%"%"v%"%"%"%"%"%"%"%"Ƹ%"Ҹ%"%"&"&"&"&"0" 0"(0"/"/" /"(/"0/"8/"@/"H/"P/"X/"`/"/h/"<p/"x/"C/"/"/"/"/"/"/"\/"a/"/"/"h/"/"j/"/"m0",@("H("P("X("`("h("p("x("("("("("("("(" ("("z(" (" ("(" ("("(")")")")" )"()"0)"8)"@)"H)"P)"X)"`)"h)"p)"{x)")")")")"w)")")")")")" )")")")")")"*"*"*"*" *"(*"0*"8*"@*"H*"P*" X*"`*"!h*"p*""x*"x*"*"#*"$*"%*"&*"*"'*" *"*"(*")*"*"s*"*"*"+"+"+"*+" +"+(+",0+"t8+"-@+"H+".P+"X+"`+"}h+"0p+"1x+"+"2+"+"3+"4+"5+"6+"+"+"7+"+"+"+"8+"+"9+",",":,";," ,"=(," 0,"8,"@,"rH,">P,"X,"`,"h,"p,"x,"?,","@,",","A,"B,"D,","E,"F,","G,","H,"I,"J-"-"y-"-"K -"(-"q0-"L8-"M@-"NH-"OP-"PX-"`-"uh-"p-" x-"-"Q-"-"R-"S-" -"T-"U-"v-"V-"W-"X-"Y-"Z-"[-"-"."."]."^."_ ."`(."0."8."@."H."bP."X."c`."dh."p."x."e."."."f."g."p."h."i."."."."~."k."l."."."n/"o/"HH!HtH5!%!hhhhhhhhqhah Qh Ah 1h !h hhhhhhhhhhqhahQhAh1h!hhhh h!h"h#h$h%h&h'qh(ah)Qh*Ah+1h,!h-h.h/h0h1h2h3h4h5h6h7qh8ah9Qh:Ah;1h<!h=h>h?h@hAhBhChDhEhFhGqhHahIQhJAhK1hL!hMhNhOhPhQhRhShThUhVhWqhXahYQhZAh[1h\!h]h^h_h`hahbhchdhehfhgqhhahiQhjAhk1hl!hmhnhohphqhrhshthuhvhwqhxahyQhzAh{1h|!h}h~hhhhhhhhhqhahQhAh1h!hhhhhhhhhhhqhahQhAh1h!hhhhhhhhhhhqhahQhAh1h!hhhhhhhhhhhqhahQhAh1h!hhhhhhhhhhhqhahQhAh1h!hhhhhhhhhhhqhahQ%!D% !D%!D%!D%!D%!D%!D%!D%!D%!D%!D%!D%!D%!D%!D%!D%!D%!D%!D%}!D%u!D%m!D%e!D%]!D%U!D%M!D%E!D%=!D%5!D%-!D%%!D%!D%!D% !D%!D%!D%!D%!D%!D%!D%!D%!D%!D%!D%!D%!D%!D%!D%!D%!D%!D%}!D%u!D%m!D%e!D%]!D%U!D%M!D%E!D%=!D%5!D%-!D%%!D%!D%!D% !D%!D%!D%!D%!D%!D%!D%!D%!D%!D%!D%!D%!D%!D%!D%!D%!D%!D%}!D%u!D%m!D%e!D%]!D%U!D%M!D%E!D%=!D%5!D%-!D%%!D%!D%!D% !D%!D%!D%!D%!D%!D%!D%!D%!D%!D%!D%!D%!D%!D%!D%!D%!D%!D%}!D%u!D%m!D%e!D%]!D%U!D%M!D%E!D%=!D%5!D%-!D%%!D%!D%!D% !D%!D%!D%!D%!D%!D%!D%!D%!D%!D%!D%!D%!D%!D%!D%!D%!D%!D%}!D%u!D%m!D%e!D%]!D%U!D%M!D%E!D%=!D%5!D%-!D%%!D%!D%!D% !D%!D%!D%!D%!D%!D%!D%!D%!D%!D%!D%!D%!D%!D%!D%!D%!D%!D%}!D%u!D%m!D%e!D%]!D%U!D%M!D%E!D%=!D%5!D%-!D%%!D%!D%!D% !D%!D%!D%!D%!D%!D%!D%!D%!D%!D%!D%!D%!D%!D%!D%!D%!D%!D%}!D%u!D%m!D%e!D%]!D%U!D%M!DH=y!Hr!H9tH>!Ht H=I!H5B!H)HHH?HHtH!HtfD=!u+UH=!Ht H=!d!]wAWAdAVAUATE1USHdHIHkhHSxH)HH~> tJ tqteHHChEl$E9}{EC&IcMcAfDHHHCh uHHChx t^HL[]A\A]A^A_@HkhfHPHShx uHHChALIcInfH;CHvHCPHCHfAWAVAUIATUSHHH)!H~hH0t!ǃH[]A\A]A^A_fDHxIt*HChHSxH)HC`H8D]HC`HChL%@H~xIƅu@HChHSxH)HC`H8cHPwIc L>fDHHJHKhB< < HBHJHChz uHKhA HC`HCh@HShx HHuHHHSh8 OAF #AF Ѓ)Ѓ:D@HHJHKhB< HHJ`HHChHHHPHShHSpH t HPHShx sHBHChEL$EE$EH߽ XHC`HChHPHChHShAFtA6H߃H߽HIEHBHChx uH;CHkHCPHCHWfDHShH  HPHShx HHChAFu AV HVHPj! HCh x MHShH / QHPHShx ?HHChAVAFu H1@Ńs]A6H߃HChx y &DHShAFA6H߃*H߽=HIE1HChx HHChfDHShA6@HShpHH@ b@ #HKhx HHH>fDHShH  HPHShx HHChAVAFu H1@Ń~$A6H߃HShAFtA6H߃HIHChx QA<$!A|$Lf]@HShHCxHS`H)HwHJ<  < xHKhHHShAF& A6H߃dLshdIHSxLL)H~\  ,HHChDeA9/AHSxHcLshA/IcDL)ALHH߉ $HCh $HPHShHSp@<.<_~ a<HCxHHShH)H<_<;}<.<9~HJHKhB<.|}<_HCxHHKhH)H:<_q<.}< t< uEHAHChy u7HShHBHCh@: ^HSxHC`H)H8VHC` HChHAFA6H߽-cHC`HChfDHKhy \H9KHRHKPHKH>@Lsh1HcHHP LzHP HjIE {sI}gfH9SHHSPHSHfHPHShx L`Lch@ NM_H߉ $Lch $fDA$0 ILchL;cxuL`Lch@ HU9HcHcMA/AA> ;I~L9<U9HcHcMA/ ADHHA|$^LcHM|$MLfD{^5HHkI9wL-HuLIEHLHHuLyǃ AN_AFHC`[ǃ]HCh:a<`a<H;CHHCPHCHAFAVAFAVH1HChV@Ѓ)Ѓ(ǃ:HzH$I)!HLL)H$HHBI<*H$IEHHrIVHsHHϽLIL;sHLsPLsHIFH;CHHCPHCHIFMH;CHHCPHCHLT$Hc $T$ $I6LT$Hc $T$ $INAFHC`{ǃ}HChJHHSh7 /HxH$J<0H$IEHHrUIt$HHc1 $Lc $,D$ DdGC7 HcLcAE9t)AV9LT$Hc $T$ $I‹D$ LshHHKhf.HH1HfH UHHVUUUUUUUHSH?HHHH)HzHN1H=7D HH0?0SAAHD$dH3%(]H([]A\A]A^A_{mCfH5%*HC$DH{@Ht$1HT$cH{HHHt$11XL|$LHxbMH j)HIH1A|$H|$LHHPLH{HHt$11PAE@@E1AIHǾ1H (L H!%tHLDHJHDщHL)UL=AD$Ѓ)ЃH5V(HAD$ @Ld$LHx MH (HHH1H|$HHHPH1YHHCHHAVAUATUHSHHtHH5uEtQH;ItJH=t'HtX H=o'H"AD$[]A\A]A^úH5''Hf.HH5 'HILK L&LLSMȀ:@IA:tu:UMcLMpIH)M)HvIP LHLL)LHHH5P&LLH.fH5:&HHHs HHPH5%HAUHsHHcM!L)HS@ATIUSI|$hHu ID$XI9D$`t;y []A\fDHc= HŋHD ~1HcD 9|QLHHc[H]A\fHAUIATUSDA@AH<?wHwH %A?{DA|H0HHHщ΃ZAI wH$HHt @@ ,HA| uA t A uH~$LH=I$ DIE1E1LjHcL%$AHvA }AH^v E{A A'7A"UA]cA}iA wA:A j aM9XfDIL9EIVfDA|@ A A H@ @ fDHAL)AH~LL  DDA tFD t>~DLL)MH98IL95[]A\A]Ð DMfD@1DA9#fDA,A t tM9pA A @ vOH#AW1L=!AVAUIATIU1SHH;LHA>H5\HHcL9}MMt{ AtU ^„ҺuLHA>\uúLH߃HcL9|H[]A\A]A^A_DHH54qA6Hߺ@@H5n!QA6H߃H5S!62ff.@AWH5 AVL5z AUIպATMUHSHLHLI9r#EDH59 HLI9t$L~< tA<'tպHLI9uHH[H5]A\A]A^A_vfDA<$ uM9uLHTMH5H4fAWI׺AVMAUIATMIUH- SHt$ H5fLM9sC>\H^HcDH>DH52L@HI9wHL[H5]A\A]A^A_fDH5Llf.HcD$ kA? aL)H9UI9vLImHހ>\H^BL[H5L?H5aLH5>LH5'LH5 LtH5LTH5L4H5L_H5uL?H5 Lff.@AWI׺AVMAUIATMIUH-SHt$ H5LM9sC>\H^HcDH>DH5LD@HI9wHL[H5]A\A]A^A_fDH5Lf.HcD$ kA? aL)H9UI9vLIHހ>\H^BL0[H5L?H5LdH5LDH5L$H5LH5tLH5KLH5(L_H5L?H5Ldff.@AVAH5AUIATIUSHӺ'A(A2LIHHL9rPfDL9tSH; HkuHLH)L9tL HH5%A2u[]A\A]A^DI9vLH)[L]A\A]A^DH5LlTH5LL4AWAVAAULcH5ATIULSHHT$  A(0|$ 2EL-EMcl$HHIH9r-< uA> tH)L9f.I9tuLL{< uHLH)A< t< tA< t < I9tLML|$ 2H5uH[]A\A]A^A_L9sLH)HL[]A\A]A^A_DHLL=LEDH5ULgH5/LH5=LAWAVAAUATUHSH8H\$pHt$ L$Ll$xDD$ DL$HIHHD$HHDM/Ll$(|$ LHHt$(HAH=H€IA^MUADEU EAu(AAA f.At$VH|$A4$7AT$DуuAL$)JED$(AYAH EJcH>AD$uAD$Ѓ)Ѓ)|$ 1H1HA~H=hH€tH=HH€Ht$ HHHD$(EHD$(E1AAADDAt$ HLHAT$ H8H[H5l]A\A]A^A_D|$A2E@|$AHƹH=qu;:tLLHHAT$NAA|AAAAtt$ HLHAT$ +H8[]A\A]A^A_A H|$U,A$AkDT$t$ MHHAT$ft$ HLHAT$q@H|$ H5CHD$(AHR@AT$tt)AǀDE@AؐAȐAVIAUAATUSHFHH}ItbHLHPAt"EvAD$[]A\A]A^DHߺH5AD$[]A\A]A^fEЃ)ЃuH5HxE jff.AVIAUAATUSHvHH}ItbHLHAt"EvAD$[]A\A]A^DHߺH5AD$[]A\A]A^fEЃ)ЃuH5HE jff.AWAVAUIATIUSHHË@ w9HrHcH>@k~ {H5nL,kLLkH[]A\A]A^A_麾f.CLc3EH5Lk먐LP Ku  LH5Lk_kLH5'Lak0fLxSDsu x3A?Lakf{Y@OsD;LCkfH5wLkfk DqD+0L=fLL]A9uA~HcdB0HcHŅ~1HcуD Hc9LHHfDE i+(L=!DLLAD9uf.ATUSH HHžUIăv4tWuH5IHfA|$ tR[]A\fuEH5+uH[]A\,@H5HA|$ uHߺH5n[]A\@EH5tЃ)ЃbH5}If.AVAUATAUHSHH H8dH%(HD$1HD$HD$H1HT$H艻H{@HHt$1HT$cuyHkHHHx HC@Dp )HIHD$AŽ1LHP ׾LEHH1H{@HT$1Ht$&1AtHD$HL$dH3 %(uzH []A\A]A^@H{8HG P1HcHT$ܽf.HHC81HHC@DH-  *f.AU ATIUSHH=HH-H!HML9w9I)INlcL% H}L1HL9uHuH []A\A])fHcHf~!SHH Ѓ)H1H޿)[H1]H޿)[鿽ff.@H~(tEATUHHSHCHs(HIĹIT$H߾HϸHC([]A\fff.@UHAWAVAUATSHXL%q!HA<$dH%(HE1OHDž1LLDžLLMDžDžHfAH?HTI9@I)MIIH's H=''HHFHHHDHH%H)HHH9tHH$H9ut H)HLHD$O|-HIHLHH諽HHLL4?HHIFIHHHqHHN|>A4$Nl/BLM9rfH}dH3<%( He[A\A]A^A_]DHHA $tH!پH H81HD4XAA$fDž HcH 4DA6McHB0;HlF40EtbA4{ A$SHIUDIEIIcމDDEHuDEQ L5 f.HyXt=wHH <L;A $IIJIH'Xu@H1 A΅BHcLE$HHH40)HHcHITI)HHH)HENwFH=HcH>I}Iu1AIEHE$EtHLHHHHHHLhH30A7HbH HIHHH!L1HH;ȾIGH=4H;H3 A$IHLDH 4A$xHIDžIE,fDžDžH=!H= H1HHuA$fDHcH5Ff4f9HDžA4$L5!H H]1I>FI>I6 蛶fDHI!H= H#H$!HHH81׼LM9fH!H HH81蜼HŁ!H8H! H0fDH=<Hy!H=H HHzH{ DXH/!H81HH5H=u!HHHxXLAHxu!H HՀ!HAH81苻IcH HyLHHcHH Hx!HH817ANH AHcH>IIcIEHIuIUH葳H_HI}IuP~8HcH5kt!HH H!H81芺yHxpI}XLIuLIuHLHHHIuIUHƲHIuH IEHtHI}IuP蓳IEHMI}.IuH躮I}IuݰI}ĹIEIEH1HH=HHxH=裴HCLHLͮIuHHǀIuH蛮I}H诮IEHYI}趶HDHI}IuPcIEH1茮H H=HHxH=躳HCHHI]xH=脳HCI}IuѭIEH{I]H{(HJIu觭FIuH肯H@HIuHSH%HIuH8H IuH HXHIuHHML-VIL;A<$tHF|!H hH1H;IH;At7H3 JH|!H=:H訶cH=a臷v1oI}}HC(H5H=HC4H5H=k۫HCH5H=J身HCf.fSHHHHuWHH{tH[fHHD$HD$H[ATUSHH dH%(HD$1HzHD$t!HL$dH3 %(HH []A\ÐIHsHHHtHT$PuLI$Ht_1HT$H0tH|$HtLI$HH1Gqf{tHD$HLHHAT$f1IHI$觬UHSHH(HdH%(HD$1Ht$HtW1HT$Ht$NtH|$Ht蚴H1H蔬HD$dH3%(uH([]D裨HHfAUATIUHSHHdH%(HD$1H$HI1LרuSH$HH{t/LwHL$dH3 %(HH[]A\A]DLcf.H$HuHHtR1LL]uLHU(HLH$H1x`LHU(HH$U1聧HHATAUHH~SHHt 衧HCEu Hk[]A\HPHHC[]A\pUH~SHcH膮HcHHHx-privatHe:HfAA {H[]@AVIAUIATUHcSH|I)LLtag:HHx1:HLHfBD#[]A\A]A^ff.@fD?~w'H HcH>,f.H4luHHHHOWHO0.uGHWDGHW@H9~HfHHDDHHHfHHҀ7vRfOHWȃ0 wHrRЃ0 H,<H HcH>fDUH04fDLSHP@lHfDsHÀ:HfB<0t<5\<9dHBHJ<.r<:tDŽHHwHDJH:H5 HcH>fDHQIHxffDSHÀLHSGHHONH 1ÀfHHH^HOHMGHW<-IOHw0|7~*9HMEÀFHtOHW-#H< 0< v%< < A0 QH00 QHH :Q0 QHq0 v2À H Tt2tJ0 v H^B0 HvJ0 Àz :DJ 0 4J 0 $z :J 0  J0 HJR.t/| r@ +/H5HcH>QHJ0 ÀyHHHOqHH0 nq0 ^qH@JHw@:9q0 )RH0 rÀz : J H30 J 0 z :J 0 J0 HJR960.uQH+/H5HcH>ZuۀyHHHNHH+ff.fATAUH-`SGHt3H-et(H-uHG HpHxHH{Ht2HCHAt!HHHC[]A\ۙHH=L躗HC[]A\ÐH9HtHu 1fDATUHSHH荙HHRHIwHH<#LH̙Ht#H跙HtHLěLD$ HH@D$ H[]A\f.AVAUATUSH;H,O߀Yw[H5Hc H>J0 w;J0 w/J-J 0 wJ 0 w z :HމH=[]A\A]A^Yf{HsWԀNwH mHcH>@SJԀNwH5Hc H>H{p[]A\A]A^@{HsWԀNbH yHcH>SHsp-M1H HcH>H{,NH HcH>@HH~VHVHHLvMI)I}芛IUHIH蕘LH!%tLDHQHDʺ2@Hyaml.orgHL)ID A .H0LfP H@,200L)袔LHǓH[]A\A]A^HDV0 V0 V0 V0 V-/HLfMI)LtIVHHIHLLL)LHGfDHH=*L_ VHNZ:A} 0 7QHq,N#HcH>_tavHVHN-MIcL>@SHs.R/g`SHs.)/:7Sу,bHSH= H5 ,NDHc H>fHSHs./3rSHs./ iSHs.X/vfSHs.//a=SHs.u/tSHs.L/feS Hs .#/=:HH[]A\A]A^>JHH -MHc H>J0 J0 J0 J0 J-+:jdH= H5H HJRZA} 0 4HH ,NHc H>H -MHc H>,V0 V0 V-t2H/_haVV 0 uV 0 e~ /[H @S0XHH@H@H@([ff.S(ѕ@HH@ H@讕@HC蠕1HCŘHX [ff.@S q@HH@H@NHCpHX [f.S!H@HH@.HX [AV1AUAATIUHS$H}Lp HĔHLIFHC HhHC D(HC Hx输HC H@(H[]A\A]A^fDUSHHHHH[]fAVAAUIATUHSLg HMt2I|$HC H@HC H@HC H@Lc H}HLID$HC HhHC D0HC HxHC H@([]A\A]A^ATAUHHSHGDHH[H]A\fATIUSHG HxHhH_HH߄t<,tHH߄u[]A\ÐID$ HHH)HHhHpff.HG H@SHG HHx軋HC H@HC Hx袋HC @H@H[ HC HC訒@HC蚒HC[@AUIATIUSHH_ Hk HsH{HEHC H9L,HCL$H[]A\A]HHsH蟓H{HCHCH4膓H{HCff.AT1IUHS苊LHHH*H[]A\fUSHHn HU H~sH_ HC HKH{HH9~HfDHH9H9|R1 fDH{HMH H HEHK H4HCHH4HC HHC H9U H[]HsH蛒H{HCHCH4肒HCH} ~H{HC pf.HG H@ HG u H@H H@H ff.@HG u H@HH@Hff.@SHG HHx;HC @H@H[ HCHCAHC[ff.ATIUSH_ HkHsHCHUHSH9L$[]A\HHHsHTHCL$[]A\U1HSH̉HHH莉HH[]@HG H@HG H@Hff.@HG H@Hff.@HSGHt?t [HG HtHxއHC H@HC H@/@HG HtHx讇HC H@HC Hx蕇HC H@H{ 耇HC [fDHG HiHxZHC H@H{ EHC [SHSH{Ht HCH{HtH[fDATIUHSHHNHFHxbH)H~BHHVH9vHFHH9sHHH)HHI<,H[]A\H9rH[]A\HHHVz tH9wUH)HH<SHHH|HDH[]ff.fHtHHj1H1ff.fATAUH1S EHH)V!H:1H;H;ff.UHH~SHH貊HHH贋H[]ff.fSHG@HHtgHHCHCHHCPHCXHC`HChHCpHCxHǃHǃ[DH8 HC@@HwSHHHHt H H1YHcH[DH<$Ht$:H<$HT$HHHt1yf1ff.fSHHHt)H5T!11,H1ސHǃHHt)H5S!11H1詐Hǃ[ff.Hw1GÐ1GÐHw Hw(w0HHHD~!HHHHxfff.@USHH~HxHuBH[]ǃ1H=H@H HEHBH[]@SlHOHHǃHHHHǃHǃHǃHCHC0HC8HC@胋H[ff.AVAUATAUSHcHHJ9H,HcHH@HcLEHHLHMtLLHLJHEHcHHD`[]A\A]A^DHcHHpHcHPff.fSG4HtuHHt苀Hǃ[ff.SHHHt1EHǃHRH HHx*HH@HH{@HǃHt HC@HH[ff.fATIUHSHHRC4цHL HtHh[]A\fH-AO!Hh[]A\AUIATIUHSHH聄HE4 hHHXLHHXMtL`H[]A\A]L%N!L`H[]A\A]fATIUHHSH跁LHH[H]A\fATUSHw`HtHoxH)xHG@II)uH[]A\f1[H]A\fDHHHHC@HC`LHHCpHChHCXHCxHCPHCHH[]A\@HhHG@tHHGxfHGhHGPHGHHGpHHGxUSHHG4tD1u"LH{@HLAPHHHxHH[]fDLH{@HLAPH@UHSHHG4tIu<_LHH{@HLAPHHHHH[]1@LHH{@HLAPHff.SHH諆HcH[ff.HOhI1H+OPH5J騅USH^HHwLHtG<0tp<-tLHHH~P+H@HcH9}-HDDAuH1[]0Hou@H[]@1HH[]1H9ÐHOt$1iHAuff.1H9fAVAUIATUHSD7ANfD҃9}HHH<‰HcbI}IE~SAFE1L J Ht+1HqIHHQHHHuI}IM9uz][Me]A\A]A^Ht eAUATIUSH~~fD҃tV9}HH1H,AHcmHL HDh@ _HCHH[]A\A]DHA뵽 A ff.@11{H=eJ!1龅ff.1H=AJ!{ff.H=J!1~ff.1H=I!l{ff.ATIUSWHG~:1HcHR1AuIEL4LHHH}HsH9tIU1ucIELHSHAm MtHCI$HCHHEt[]A\A]A^HxHuH9t/IU1tH[HCHu1[]A\A]A^HCHPHSAm MtHPI$HPHHU*t[]A\A]A^@MtI$1AV1IAUIATIUHSHH>R1AvIFHHtzf.H{H9tI4$H9t&I1tH[Hu[1]A\A]A^An HCI$MtHCIEHkHk[]A\A]A^Mt[1]IEA\A]A^GAWAVE1AUATIUHSHHIcHSE1H HL$L@1Df.f.f. f. f. f. f. f.ff.f t1 t1 @|AWIAVAUATUSHXHl@!H~hH|$H0 AIGhE1I9GPtUH-LspIŅu@IGhIWxH)IG`H~`8}HPs HcLH>DIWxAH-NH)IG`H 8.`HcTH>f.LsIGhfALJHX[]A\A]A^A_@IWhE;efAE"DL {oIG`IGh묐IWhLwIG`IWhE;eLqL04oIG`cIWhIWp@ fLrIWh@: GHIWhI;WxuIWhIWpH   fE;ed uLIIG`IGh qLHD$pPtMohHcLI+wPD$ H9u't"ALpMohAD$ D$dMo`IGxL)HAEIm< < '< z< IohA} gHMIOhIOpI;OxF"< s < 7< /Io`HyHHIGPI;GHv AIGHIGhH9}HHrtfLXpIWh@: $ HIWhI;WxuIWhIWpH ; tK MHIWhIG`8:HPIWhLoIWh@: uHIWhI;WxuIWh@-IWhE;edHT$1AdrHT$HIIGxMw`L)HAMn< je< +<'MohA~'RIDkMwhE9"HcIcD'DD@IWh@-IWhLwIWhE9edHT$A1qHT$Dl$AdMHIIExM}`L)HsAIG  \IEhIEpAG< "< !< !Mu`LvHLIEPI;EHv AIEHIEhI9!ILotfIWhd1AdHT$HpHT$IIGxIWXH)H!<  t<  IG`IWXHIWhH9LLcLlA<$^O,4Iuf.{^ HHkI9wHD$L IWhAMIG`IGhIWhIWp@< 4 <  <  Mg`LuHLIGPI;GHv AIGHIGhI90IL|ntfDIWh@ fD< t< IGhHIGhI;GxuL'lIGhѐIWhx RHIWhIWpI;Wx0@HPIWhIWpx.uHPIWhx.p IG`IGhHPIWhIWpx-uHPIWhx-uHPIWhH   uHIWhLjD@E 8nfDL +pIG`IGh9fDHLIGhtIGhIWxHpIWxIwhHHHIGhH9g t tAE+gPfDHPIWhx HBIGhIGpI;Gx< < U< MMg`LQsHLIGPI;GHv AIGHIGhI9YILMltHLIGhiDE4HPIWhIWp@^IWh'Hi< <\@HrDmIwhIwpB"@LiIGhNLpiIGhIWxLXiIWh8tCIWPAH)Ѐ: DDLhIWh:#tpVoE1iHAIG`L5=fHIWhI;Wx-IGhHPIWhI;Wx3: IGpIGhL|hIWh: HIWhI;WxuH@HBIGhHPjtIohdkI_`LHD$ gD$( <>t<|D‰D$(D$MohD$0fDHL9H+@-@+pHDht̺ 1HiMohD$0HBIGhz 'IGpIGhL5IGxHIWhH)HV  fIWhyE;eFIG`H)HxHriHt$HHBIGhB0<6w5H~~Hs%HBIGhBHЀ6wHHIwhHE9BA,IcAIcHBIGhRE9LjEIcAIWhHHfHIWhI;Wx-IG`H)HxHrhHt$LHH;kfDD$(D$2HD$ LE1MD$ H'ID$dIExIm`H)H(}-EHcH>HEIEhIEp}- HEfD9d$IE`McC7IcEADHLImhxdxnLmImhIm`TfHEIEh} uHIEhIEpI;Exx < : < ) < ! Im`HumHHIEPI;EHv AIEHIEhH9HHqftLL|$ ;i1aA}HzH=%gHEHE Ht$ Icփ|$(HpHE HPHE 3E~Y|$2tRHE HPH@H\ DHHeuHU |$(HBtHJHLH9HH)HCHBHD$ H(@HEIEhIEpEHImhLPcImhHHIOhx >HHIWhIG`IcUHI+wPH9AE]98IWx3HHAIO`LbIWhD$Hct$LsgIcIWh}IGhHPIWhI;Wx : WIGpIGh@HPIWhH  tK mHIWhLaDHEIGhIWxLbIWh: uHIWhI;WxuHBIGhz jDmH"fHBIGhz tID8 ;HIGhI;GxuLaIGhHDmIWh<: <]y <}HD$IohxA} tL?c^IGhLhMohHcD$Iw`IlHD$(HcH)Ht$0H9|$LLcLeII9~Ht$0LH|$(H)LH9cl$HcD$Am<,.IohIopAE<  < <  HcD$Iw`LdHD$(HcI)Ht$0I9|"fDLLcL eIM9~Ht$0H|$(III)LLbDd$HcD$AL_Ioh} n HIohI;oxu@`Ioh1u]IW`IWhHP LrHP Hcl$HjHP Ht$HA% ALHT$Ic9dHT$I@II)|[HLL)bIGHB^I|bHHD$HHIw>\IUHsHHϻv_L[fHHIOhx HfDHoIOPHAH)΀9 DDR@EfD9d$jIE`McImhC7IcEA8D$HtIUPAH)Ѐ: AEĉD$HL]xHD$8L]p8Hc8IUhI+UPHH9u t$0|$HƉt$09x9@źLZL]D$@D$ HD$8|$( u@tHt$81ҋ|$H9>‰ @t$ I}`1%f.Lg7ft HILIUhH9r܀|$ |$@An;l$DMcHcC7 AAH|$8t$H+D$ HH)HIUh;7FLL|$ aIE`IEh1oZA}HH=_HEHE Ht$ Icփ|$(HpHE HPHE |$2EHE HPH@H\HHL^uHU |$(HBtHJHLH9HH)HHHBpfDL[IGhWAuVAEIG`H5H=4XHEzHUIUh}-tSIEh:@IEhIEhHIEhI;Exw8 IEpIEhLC[IWh>HUIUhu@ @ tc@ uHIUhIm`I;mPEfD9d$EMcHImhC7IcEA;LZIUh@: uHIUhI;UxuLVHxYJ<0]HHD$HHIwWUIt$HHcWD$ D$@D$ @1L7ZMoh HPIWhx TD$Hct$L^IyLYIWhHPIWhx ]f"Moh1mWLI"Yxg A H=l\ID$ID$ HcHhID$ HXID$ HD$L `LMYIWhLIGIEhAG0<6w6H~~Hs&IGIEhAGHЀ6wHHIEpIEhDsE9 M}hHcAGDIcDD6IGDsIEhEE9PAHc[HIcDDM}hIEhLxM}hx vD$IEhIuxHIEhH)HHM}hAL t tπ +ID$fD;D$H t$HAL0VAALT$Ick[T$I$LVIWhOIohIopAEIohIopAE< < t(< IGhtL8VIoh} ^HIohI;oxuIohT$IfIohA}#uMMLMOh^HD$Iohx A} tLWIGhLhMohHcD$Iw`IlHD$0HcH)Ht$(H9|#LLcLxHcI`I`L\SMwhIEh1MPLIRx[AH=UID$ID$ HcHhID$ HXID$ HD$L WLRM}h|MohMopAF< < < Mo`L[HLIGPI;GHv AIGHIGhI9IL|TtAwHǻT[ALJ Ih?#tGTIG`IohHI+GPHLNIG` MohA~ t-SA9AHcMDHc‰DnMohIMohMopM;oxMohAEMohD9 O/A EIohHAIGhIGpA<.c<_~ a<TIWhIGxHIWhH)HIWh<_<;}<.<9~HBIGhR._~ aIWx.|X_~awKHIGhH9uLPIGhIWxHAIWxIGhIHIGhH9t& t tIOhWa<x#LgPIGhIWxLUPIOh5IGhHIGhI;GxIoh} HIGpIGhlHIXIWhR10HHD$>RHL$HD$H LE9 D$A,IcAIWh2IEhA HIEhIEpI;ExIEhh8HAIG`LNxtDL%LE1HGIG`#Xu<w+CH|HD$ B@LL$ HD$MGH1111E1A"'f1<'u A'fDHcI9vULDLA@u<\<'r<,t<:uLAA HcI9wfA1FHt$1HHEH5 !HDH5U !HEH5> !HBMuAG #"< fDHA1H.F;7A HD;I ALHBHD$@MAV _1 D$HMt4AE < 1H|$tAHD$P ]1 DD$IH$HP 1 D$JHD$@HHh9HT$8HHBtHD$8Ht@HNDH|$A;?;HhP?H;hX;?HI:Hl$8;m?HH@;HX?H@J,;I?;Hh>?Hl$H(HD$XdH3%(?Hh[]A\A]A^A_tKI"H2H@'H"HI@80T"fD/n"Iff.@(z'f6fD<"AD%D8ADDIHH@H=t$(@I1HAHRH.1H#IF80@IEH7H@Hjf.HL$1HHDHRHwH1HQ:0u#H $1HHUHRHB1H7HA80( =H@JHh\f.;fD11f11fHIG180@DH"PHEff.@(z;'1gIHH@HMt$(@I1HIHRH61H+IF80@HL$HH?HPHD$IHD$HfP 1 D$JHD$@HS2 H5;I<2LH3;HD$P%2;H@@"2H@@"<;E11 H5HD$0HD$8HD$[L9tf;1HT$LHH8HD$83t@;Lt$8L|$01LHL&1HD$8Ht@MH*IHu;Ll$0Y1LH*HD$0H5;:1;HhP/1H;hX;1H+Hl$0@1H@JLhftIHz sI1ff.@(@ET@tIHy 1Iff.B(E'tHD$HHy HD$fHf.@(zVfD;0H8;/HHX1;H/H@J,;/;Hh/Hl$H(HD$XdH3%(Hh[]A\A]A^A_fHL$ 1HHHRH1HHA80HM'Hy  +/1Ht$H (;UD/1LH';;.L1H't@HL$1HHDHRH11H&HA80H(HT$0HH0HD$0H@;.H1<)f;.H11@tHD$HHy z1oHD$fHf.B(ENfD-1HH&;"_f.;"D@k-@[-Ht$1H<&;D1f;1W1fHxHQ:0BfDHIG180@}D;,LH%Y,LH%;@,Ht$Hi%; fk,8[,Ht$ 1H<%;D1f+,Ht$ H %;ZH5\wL+(ff.AWAVAUATIUSHHLwHdH%(HD$1'H-q Iŋ}+HDLjE1A LH.Y^HtOL(MeHtC}o+HL$dH3 %(HHLH[]A\A]A^A_*}0+ H.}I+LH$LH$I&}I*HLMjA$DLHC.XZH&AWAVAUATUHSHH8Dn dH%(HD$(1HLpDAAtWAt1A Aw5HJcH>@u<tƉ tHuj1E1PH5uE1Hj)Y^AHD$(dH3%(H8[]A\A]A^A_ÐHsHfL%a A<$)HH+C DL%9 A<$x)HH](Iŋ@ % =GIEM}HpHt$ C tL.PHt$ V E1E1AW1H5tH(AXAYA<$(AUAUDL% A<$(HH5(IŋC % =HCAUPR E1E11H5^tH (XZ@L-1 A}p(HH'IHiD} E C % =u_HCAT HE1PE11H5s'D} [](A<$(LHT$ H"%Ht$ IDA}'1HH$H5խH#E,L%V AHLhHxDl$tA<$~'HH-D)L$A<$a'HH(Du E|$~oA<$A3'HH$A<$I'LH< A<$I'LHH+LHI*LH*D9t$uA<$&HH'H,H5HE1 L%J E,AA<$~&HH!PAƅ H0He*IEM9tIA<$@&1LHH(HuA<$"&HH8#*뼐A<$&1HH%#EjHiq9ft$ E1E11AW1H5qHA%AZA[A<$% H:)A<$I%LH&HcL$IHL$IE1 fAA<$T%1HH"A<$I;%LH`A<$HD$IEHPLr%HL$LLH!AG9D$uA<$Mu$H HT$LHE1r2Ht$HHD$(HD$HH(AFE9AA<$$LHzA<$HD$|$HE1E1j1HHjjHT$(*&H H@HyA<$@$H8eLHz(=A<$Mm$H HT$LH* AWAVIAUIATIUSH8V H- dH%(HD$(1HD}HHX@L$D$#LH "AE tlIE@  AF,IuLE'AF,DHD$(dH3%(H8[]A\A]A^A_fEAA AHJJcH>@It$}Ht$"Ht$H}HD$"Ht$H'Al:C Htag:!perH fDCIT$r @փwZH HcH>fH=yH€AxpC regeHfDcCHH%k!LHP#};}!LH!IAE % =nIE;H5ATLPHE` E1E11 A[L]'3;H5LHE10}5!1ɺH5H%LH$%IuL%L0'Hlj1PE1E1H5lLR XZ} LHIċ@ % =I$M|$HpHt$ HAE ;H5@lPLAWHEE1E11A]A^}M AT$ AT$ f:<2 Hk;jPH5kLHEE1E11^AYAZD}LH-}ILHADžM{AE E~ AF AE % =IE;H5!kATLPHE. 1E1E1E~ Y^fD} 1LH>wfC ref:C@:C globfS:C hashfs:C codefKy:C arraf{C}pLHIAE % =IE;H5 jATPHE 1E1E1LY^@;H5ijHiHEPE1E11ɺLkAYAZf}LHT$ HHt$ I)fD;H5LHE1AF,}1LHPAą)fH0Le!HCI9fHË}=1HLHHuȋ} LH8!!|$;H58j HaHE;H5LHE1AF,IEHXHx\$t}LH")L$}LHEf ED\$E~pD}ATLH}H9HH^}I#HLH LLH HL D9d$u}LHL "D}LH-IAE % =I}L:!AE >% =IE;H5;gATLPHEE1E111_AX'}@1LH^fHregexp:HK DHscalar:HK Ml$E} L HD$ OfD% |$_= Me}LHHt(A<$yDA< AIcH9r;H5*fPHEAT% =IE;H5eATHE&}1LH6H\fD;H5et$ LAWHEE1E111RA_Xu}1LHK}1LH}1LH1}e H}HMHHHcL$HHL$7E1 ANj}1LHh}ILH"}HD$HHPLbHL$LHHgAG9D$u}LcH HT$LHE178DHt$LHD$HD$LH~AD$E9kAċ}UHH:}HD$=HE1E1j1LHjjHT$(H H@Hz}H8g}H5H=dHHD$1}ILHbH@L8MAG u<t >IHkH@HB}KH};Hs}+}HHxLaL`xL;}HL$H+HHHA$}H@ H+D$H8HD$}LxL`H@ L)H}ILH}ILH}I$vL }kH5H}ALHAL(IEL`AE % =8MmLELcC|%;;H55ATLAUHEE1E11S}}L`P_AXL;`Xj}HruLHe}1LHIHLHH57 E11PE1H5LUXZtIHz tIff.@(H=1H}1ҹLHHEqLcAE % =q}1ҹLHB| ;4AE % =.}bL1HIN}@HX}+1LH HIG80}H[H HT$HHs }떋}LLHT I}Ht$HH/ HD$}mHISxH=!1H=K1Mm9Mm!f.UHSHHdH%(HD$1H 8HHHHPH$H$HL$dH3 %(uH[]f.AWAVAUATIUHSH8H^dH%(HD$(1Hu DHt;!tEtu-M$L- 1A}I.7HHHHLHL$(dH3 %(H H8[]A\A]A^A_fL- E1A} HpIHE Hx~IfLHe LH:A}HHLH0HtCHE IL9pA}pLH M$HDHH=]HH=\H H=FpHH=oHH=oH H=oH H=^oH H=6oH  H={oHH=ϖH H=_oH H=oHH=nHH5oH"HH5 HU LrHZLHT$ HHD$ nL- Hl$ HA}VHHH(M$HL- 1A} HHD$HE Hx DH1H+LHpHھHI LHRA}IHE1E1j1LHAWjHt$(dH Mt HtAGHE HH9X wA}fHt$HM$HfHU H=YL- HZHA}u :LrHLHCM$HA~HE LxMHhIL9rHI9UyH5 LH)H9?B><w{E< L- A}L 1HM$HL- A}" A}H HhH M$HB<E<E<L-l A} A}H HPH M$H=L-1 A}p LHHM$HA~ HE HpHHxK M$L- HE A}LpHX LHH<M$HA~HE LxMHhIL9rHI9zUyH5 LH)H97HB><:E<렀E<E<E<LE<!1LHsH"H=HE fLpLhMM9I^I}AUI9&:I:HHGWH9u:1T$HT$xcfH*YHHH)HHXM9sL- T$A} T$Hf(M$HHHfHH H*XLIYH L-] D$A} D$HHM$H5HLLIHEp M$HHHHHHE 1HxhHE D$HH@HD$ gL- HE A}HXHL$E1HHT$ HA}HHH HtWTE<EE<6E<'E<H EpH5nL' H5\L[cLu H5IFHH$aH5ALH D+ H5'LkH5Lt H5LD;L0HE HpLhH4$H4$LH#LH5HD$H5:N1H$;IH;H;;HHxLyLxxrL; ;^LH+HHHA;FH@ L)HHD$;II#L0;H5HU;;HL2HT$HL;IHT$HH;;HPPHT$HT$H;PX3;HfMtH5L=uI|$tuH$HtH5-H]MH=LLH4$HڇHExfEH E1HuHPHUHI$HM~HT$Lh;H$HE1LjHL$A HHT$ZYHH;H@IH$sLE1HPHD$ }DIŋ;FH4$1LHHHtJH;HL$HpHt$Ht$HL$HtVf VHLxMtAGIEL9l$u;H4$HHuLI;HLHHI$;H(LHHLLaHL$8dH3 %(HHH[]A\A]A^A_@E1H E1;4 HH$HE Hx@LHLH;ILH;ILH@HI襸HtI$LH;H4$LH7MtAEHE IL9pk;tH4$HIMcLH5"H5I1I|IHt6HƹH=GIWLDA?@ufDIA?@t|$MH=LxMH=ILLH]HE1zIŋ;LH;ILLHXzHU H=IH LjL;u :Lr3LLHuII$xHE LxMLhMM9r fDIM9 AUyH5' LL)H9 B><AE<fDE1H. E1;l HHD$HE Hx L1H{LHLHH$\LH;ILH;ILHWHI輵HtI$LH;HE1E1j1HAUjHT$ Ht$0iH Ht MtAEHE IL9p ,;mHt$HIM[LH5H5F1ItIHt6HƹH=`IWLDA?%ufDIA?%t|$MtH=LMH=ԀoH_ ;1HIfD H=L H=L H=1Lt H=#LH ;11HL(7LH|1ҾHILH_;H$IFHD$H;H;;HHxLqLpxL;&;vLH+HHHA;^H@ L)HH$;IIE;L(;1H5/Hm;;L(MuIHL;IL(;;LhPL;hXh;H|$Ht$H=;Ht$H=}L11H1ҾHIH Iŋ;3 H;IHE1E1j1LLAUHjH Ht MtAE;LHW;IH5C}$@11HLH11ҾHHLHIHCH. ;H$kLHIMtAE|$OH4$H=}LH5}ZH5B1IIIHHƹH=%~IM#H=}LMH=AHK}HELLHHL$HL$;vH4$;aHyMRH=Z|L4A?*;LwH HE ;LpLhLLH7II$xHE LxMLhMM9rIM9AUyH5 LL)H9UB><AE<\fDH ;:;I0IhHI Hʽ ; ;IIPHILH5{H5V@1I IHt|HƹH={IMtH=b{LM{H=^{L]A}RMDH= {LH=u?yB<AE<AE<H=HE LxLpMM9wfAI_$fI~AVI9:I :HHGWH9u:tz1MxPfI*YLX$HL)I$IM9rHڻ ;$HI LLfHH H*XLIxMt/H=yLtH=\yMH=y-Hv H? $W;rLLHI ;PHIMvD4H4$LHuII$xHE HpHHx薪AN LIHlH H} $M:H=uxLHLGrAE<bAE<RAE<BIAE<2#HE Hƹ fW{$H`HE 1HxQ$1LLZHB<{AE<AE<HE1HE LpLhMM9szI^I}AUI9:IfD:tjHHGWH9u:tR 1H $&H $HIHHH)HHM9rH ;LHILILIHHLHE D$,HH@HD$0H: HE ;LhsLHL$,E1HHT$0k;IQLH6IEf$$H A} ;XHE LpLh HLLM;IH5uH/IAF % =IV;H$H$LH;AVAV;H;yHAE % =GMu;R1LH;I;;HH@H8HH@H;A  < ;LH1MsAF hIFx ZAF;;LhPL;hX%;wH?|$kA `A U;GIw fAEpDMvH4$LHII$xt HE HpHuK;jLH|$IXA MA B;4Iw Hx轢tAM H5pL@H5{51H/IHt8H5pHHt%MHrpLHH= 5HE1IH` ;1LHtID1HI;kHy;RHjAE % =IEHH=r1|tGHH8H@Hv;H $H $HHwH HA80ut.t HHz uHff.@(zH $1H $HHsH $qm;HH4$[H4$1H]H@0H $;뢋;-1LHK;1LH-ILH:V;1ҹLHHH5|nHIAUATUSHHH@ Ho8}HHLk A;'u HHUHE1E1IHOE1QApEuR\tsA8t~:Aŀ,At EtwHcH9s&HTAHOApQEtHcE1H9rMtIHHLPH[]A\A]ÐAAf.IApEU"%HL9"E''UDE1HDAWAVAUATUHSHHH9eE H  HEL% LhHxA<$EtHHA<$A)HHE~RE1A<$AHHA<$IfLHH8HH E9uH{81H1H[]A\A]A^A_f.L% E1A<$HHPAƅ~A<$1LHHHt H0HIEM9rIDHuH\WH=8n1fAWAVAUATIUSH8HT$H|$\H5iH=kH1H- Iŋ}2LHH5iH=ekH@HH$1}ILHH5miH=qiH@L(1}ILHQH51iH=jH@L01U}IzLHH5hH=jH@HHD$1}I9LHH5hH=hH@L81}HD$ Ht$ HH5thH=YjH@L1LD$(}HD$ Ht$ HOLD$(H@HMZ A@ }  <ƺ" H5G l<dƺ KC,A  % =H@ H6}HH$HyP 'с  M7AW u,#с C H0HCID$Mt4AF < 1H|$tjHD$P Yut1 u:DHL$1HHtHRHwHtHQ:0tAD$MAU {1 eDAD$H5 HL%Ht$HLt$HLxH{811HLHC81H]HI|$}}HXPH;XX-}H8[H]A\A]A^A_?tKI0"HHv'H"HIP:0T"fD"I0ff.F(z'f.IHH@HH}I@1Ҁ80eDH $HHHRHiM1fIHHRHEIH H@HmHIF80WftsIU1HHRHy1HnIE80_HA f.}XHp.1 IUff.B(EfDIff.@(k`g^Iff.@(zzfH$fH1f.B(EI1ff.B(EHL$ HL$ HH}f/tHD$HHx O1IHL$fHf.B(-,"fIHy u?DH $H Hy I0H~ 5I0'H~ "IHz DIMHy H]HA80KDHIG80uD}Ht$1H!@}1LHc3}`1LHClfD}81LHfDHL$(LD$ 1LD$ HLLD$ HL$(A@ }A'H5Ѣ DHL$(LD$ LD$ HL}HL$(p}xH4$1HZfHL$(LD$ Q1D1!1fH) }"돐}A"4@}fD}LH}H4$H-}LHkHL$(LD$ y`}`Ht$H>fAUH5]IH=]ATUSH(dH%(HD$1L% HA<$H޺HA<$H@H(1H5M#HHܠ HLHH$HHxHt'E u<<t8 t(HL$dH3 %(HH([]A\A]fDt#HEHtH@HvXK t[u.tHEff.@(ztfDHOHUHz uH_HE80uQA<$1HHr-DA<$HHoAVAUIATUSH ;S;H(I;HPxHJHHxLc23H@JH)Huk;EfIcL$H@H<;ILHW;IH@L,;;HhLH([]A\A]A^H5=]LDH(Hٞ dH%(HD$1H4$HD$}D$HL$dH3 %(uH(off.@AWAVIAUATUSHHܝ ;;L ;HPxHJHHx*HcH@HI)IA1;DmMcHc;N$H@N,;H@H,HH=;HLp(;H@@#zHHLLt;LcZ;H@Nt E %A;tjEteM LmIn;;Hh IL H[]A\A]A^A_;HhH@H@Hl_fD;LHHH5=[LfAUIH=^YATUSHH5YH(dH%(HD$19L% HA<$VHH1C tyH@H[H(C H HLH$HHxHt6E %tPtkHEHtH@HK HL$dH3 %(H([]A\A]<t tDtct HUHz utHEff.@(zt|H3A<$'HHHA<$1HH&(DHHE80DA<$HHAWAVIAUATUSHH< ;};L s;HPxHJHHx*^HcH@HI)IA;DmMcHc.;N$H@N,;H@L4;H@@#HkHLLM;Lc;H@Nt E %AtcEt^M LmIn;;HhIL H[]A\A]A^A_k;Hh`H@H@HlffD;ALHHH5WL"fAWAVAUATUHSHHfDC t(H[1HHwHuH[]A\A]A^A_  uHL%m LhHxA<$EtHHA<$A)HHE~E1A<$AgHHA<$IKLHHHHE9uH[]A\A]A^A_fDL%ɗ A<$HHPAE1A<$1LHHHt H0HIEM9IŐAWAVAUIATUSH8HT$(H|$ H5TH=UH1DH% Iċ;cLHH5ITH=UH@L81;I(LHH5TH=SH@HHD$1;ILHH5SH=.UH@L 1;ILHHH5SH=UH@L01L;HD$pHt$H H5TSH=-SH@HHD$1;HD$,Ht$HH@H0H V ;  %с f. H ;HMt5AD$  (<   Mt7AF  g<_ KM AW  с EHD$HG P  |с hE HRHE8IEMt5AD$ $ [<S ?1MteAV  ut1 u9@?I1Ht"HRHwHtIV:0t DAEHD$HI P  1 fAEH5 HLHt$(HL|$ HLHL1HH I}#;;HhPH;hX;H8[H]A\A]A^A_f.tCH1H HRH1HHF80D/%H1ff.B(EI$HH@HH5/OH=O1;HD$Ht$HH@H0Ht3F 9<1 H5NH=R1x;HD$Ht$1H=;HH@H8;jHH@HA uO yu<t @HHH@H;HL$HL$HHyfIHH@HHIF80szf'HHH@HUHHF80?fIHkHRHSHL$HHHRHnfD/I$HH@HHID$80HL$1HHHRH1HHA80;YHqE@'I$ff.@(f1kHD$fHf.B(EJf.>nI$ff.@(UI1ff.B(EgGfHD$fH1f.B(Erf7tIHz Iff.@(fDtIHx 1Iff.B(@tHHz ,Hff.@(vfDtHHz Hff.@(fDIHy _DHL$H Hy HHy HD$HHy }I$Hz @I$Hz @HID$80@H7IG80%DHgHA80UD;1LH輻;1LH蜻pw;;HHt$~Ht$1HH@fDHt$V1Ht$H7;}D;1Ht$1HD;1LH;Ht$1HʺBf;1LH謺@;1LH茺]11f1f;1Ht$F@;1f.;Ht$Ho;LHѹf;Ht$H觹2f;;Ht$1Ht$HmM;iLHI@;I;Ht$,D;HL$1HL$HHHL$HHA80D;HL$Ŀff.fAUH5EIH=gEATUSH(dH%(HD$1LL%- HA<$iH޹HA<$H@H(D1H5 HHL HLHH$蚽Ht-E uB<t> t.fDHL$dH3 %(HH([]A\A]fDt#HEHtH@HvHK tSutHEff.@(ztfDHUHz uHoHE80uafA<$71HHz5DA<$HHAVAUIATUSH ;ӽ;H(ɽ;HPxHJHHxLc2賽H@JH)Huk;EfIc葽L$H@H<;IrLH׾;I]H@L,;N;HhCLH([]A\A]A^H5DL%DH(HY dH%(HD$1H4$HD$mD$HL$dH3 %(uH(ff.@AWAVIAUATUSHH\ ;蝼;L 蓼;HPxHJHHx*~HcH@HI)IA1;DmMcHcN;N$H@N,7;H@H,(HH轾;HLp(;H@@#HrHLL;Lcڻ;H@Nt E %A軻tjEteM LmIn;藻;Hh茻IL H[]A\A]A^A_k;Hh`H@H@Hl_fD;ALHH蓷H5BL"fAUIH=@ATUSHH5AH(dH%(HD$1蹾L% HA<$ֺHHq1C tkH@H[H(C Hu HLH$Ht6E tNtiHEHtH@HK HL$dH3 %(H([]A\A]D<t tDtSt HUHz utHEff.@(ztA<$ϹHJHHmA<$觹1HH芲8:DH,HE80DA<$_HH?hAWAVIAUATUSHH܁ ;;L ;HPxHJHHx*HcH@HI)IA;DmMcHcθ;N$H@N,跸;H@L4訸;H@@#蓸H HLLM;Lcs;H@Nt E %ATtcEt^M LmIn;0;Hh%IL H[]A\A]A^A_ ;HhH@H@HlffD;LHH3H5]?L¶fUSHHg ;訷LHͷ;HOH5>H谷;HqH5>H蓷;ܶHeH5>Hv;迶HH5>HY;袶H5>HTH<;腶H[H]鵳HHhhhhhhhhhԿhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhphhhhhhhhh(hhhhhhhhhhhhhhhh--- %%YAML:%d.%d --- &%s ? *%s! tag:yaml.org,2002/x-private:!!---'' \'\\\0\a\b\f\r\t\v\e\n\"|+>~tag:yaml.org,2002:nullboolstrtag:yaml.org,2002:seq[tag:yaml.org,2002:map{[] ]{} id%03dhH(p(dD$l$8lABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/0123456789ABCDEFStack now %dtoken %s (nterm %s (Starting parse parser stack overflowStack size increased to %lu Entering state %d Reading a token: Now at end of input. Next token isShifting token %s, -> %s syntax errorError: poppingError: discardingShifting error token, $end$undefinedYAML_ANCHORYAML_ALIASYAML_TRANSFERYAML_TAGURIYAML_ITRANSFERYAML_WORDYAML_PLAINYAML_BLOCKYAML_DOCSEPYAML_IOPENYAML_INDENTYAML_IEND'-'':''['']''{''}'',''?'$acceptdocind_repatom_or_emptyindent_openindent_endindent_sepindent_flex_endword_repstruct_repbasic_seqtop_imp_seqin_implicit_seqin_inline_seqinline_seq_atomtop_imp_mapcomplex_keycomplex_valuecomplex_mappingin_implicit_mapbasic_mappingin_inline_mapinline_map_atomReducing stack by rule %d (line %u), Ok[[kk&[[[v6kR[[eVVv6k[o[[nO/O/O/R:ja/U):Oa/3jz !"#'*1!!!!()0023 !$%&+,./! %+%+%+ )3!&/&/&/ $-$.9; i?@mC 567QP "#$% S) cMNO k567WUmZ] :"#$%HIJ)LMNOUWZ9S]UWZ]HIJmLMNOQ"#$W)Z]567567567?kCm"#$%)MNOMNOMNO aHIJLMNOstuvwx             `!d14{hjf~l>>vO vvv`OOO O>$$k---O>>O &'(gce=>?,-@A}BC.23 "#$%&    4758KNOLA0E3J/@+<->) !'(29:HI6MA.?*;,=B1CDFG !!!!!!!!"""""##$%%%%%%&&&''(())**++++++,,-.////011223388<AFGJKPU^dehmqy~ $(.29:@ELQV[`djkq{ !"     !!!! ! #'*1%&&%&%&%$&$&()()0+//+/+/+!,-./$/./23230  $%(+.1368:newLKNMKLLWTWXtXWW`V0SVpSVVV;d `m0|P} 0XPpP p 4АHБ`p@8dp@ px  h P  l  P 0 0 `PxPpLtPH@0p0lP(`<X`p(0D|@(d Pp  DXtPHd`@`p0@<pXl@P@P|`P XPT0l0+@@+T+h,,,-P-0-|//`FDD eDB(AFDD hDBH~FBA A(D0R (A ABBJ G(A ABB4L=AED g FAH A CAK <PTADD ](H0[(A P AAD DCAL FBB E(A0A8D= 8A0A(B BBBD L FBB E(A0A8D 8A0A(B BBBJ `0))BBB B(D0A8GPrXH`UXAPu 8J0A(B BBBL IXH`UXAPp*FBB B(A0D8GpxFXxAp\ 8A0A(B BBBB xNSxBp^xA^xApPxMVxAp' xN DxJSxBpExHJBNp@0FBE E(D0A8Dp 8A0A(B BBBC zxDYxDpvxHVxAp\xEXxBpVxF]xBpxD\xApxA[xApUxLWxBp xQ rxDTxBp xFH ` xP vxEUxApxHJBNp)xEkxBpsxNFxAp(TP@fEDG0N AAA \@ FBB B(D0D8Dp 8A0A(B BBBJ >xHJBNpM=FBB B(D0D8DHYA: 8A0A(B BBBE HGBS}HJEI8lj[FBA A(G0 (A ABBB HkFGB B(A0D8G@ 8A0A(B BBBK HPm7 FBB B(D0A8Dp 8A0D(B BBBL 8@DyFSA A(DP (A ABBG <|zFBE A(A0 (A BBBA h{QH0C A H{FBE B(A0A8D@) 8A0A(B BBBH 8$}FLA A(NP (A ABBH H`~~FBE B(A0A8D@ 8A0A(B BBBA `oFBB B(A0D8G@j 8A0A(B BBBD  8A0A(B BBBG H FBB E(A0A8Dp 8A0D(B BBBO 8\ FSA A(DP (A ABBG < <FBE A(A0 (A BBBA  ̑QH0C A H FBE B(A0A8D@) 8A0A(B BBBH 8@!dFLA A(NP (A ABBF H|!~FBE B(A0A8D@ 8A0A(B BBBA (!   ( b`_Q m} r L w oJ ( * `  *  *  Gidx G   r  -, *  Gidx G   ptr len G  E str 0r    'C    @ $ @ # y H  U (  ~ 0+ _ 4  -8qH  @ Hd  P *XD 3` ;h DpN Mx$  @  @>  @eof  @io  7 5 3 5  5  ;   @  @  m   ptr   O   beg ptr end   )  * ( y  @  @ S @   >8   { ?   G# # GG2 5 ; GY Y GG& ~ I   Tr (  t)B;4  J m V  5  # !str Y 6" #s  $ 1 %M &  'A #m $T4%idx @qg%cap @%str >2%tok & m&h{8n&khn& o@n&zm& jn&xNn&cum' (._ l*$)n *Us+on"*U~*T $ &+m/*Ud,@ny-Y!ys-T47.lvl; /0yy21yy3p0yy51yy4+o1yy6p1yy8p2&B0s&o&o&K+q2-&Aq&7 r&2Hs&<s&5r&F$t&?t&T~t2(&o& o&hs&fPr&:r&s&s&Gq&q&u2s2(&-u2&v&du&iu&,v&Pv&Bv&v&v&0x&$t&v&)>x222&x&pw&PLu&w2  & 1hy&w&Uw&w&Tu& y3n @.t @db'@4. l4+q*Us's4. l' ( 2  '5b8@'(N (a O { 6MzMzds7 7 7 +[z<*Us*T8{P\7& $ 7L J 9{G8{]7q o 7 7 9{R)3z]*U|9;z/)Mz]C*U|)czj[*U|9_{j)m{w*U*Tv9}{]9{/+{j*U|8|H7 7  9|G6||IJ7- ) 7m k 7 )ztjb*U|9y])y*Us9|]9|/)Bt*Us*Q2+Jt *Us'(46 @ )t*Us*Q3+v*Us*Q2'_46 @ +r*Us*Q4)hpw*Us)p*Us)Bq*Us*Q2)Oq *Us)^q*Us)q*Us)q *Us)r)*Us*Q6)s A*Us)sY*Us+u*Us*Q6'(. lkU( ^R){*Us)|*Us+m}*Us' (. l+ x*Us'p4%idx @a%cap @%str l%tok '(. l3|s%($=1/(@XT%i@)|*T0+J}"*U*T w $ &)u=*Us)wU*Us)x"{*U*T w $ &)@|"*U*T w $ &+d|"*U*T w $ &3wH%n 9w)3w*Us9Iw+u/*Ud)oL*Us)Bod*Us+p*Uss :;;g;-:G;;g:;;;-< llu<@ @  < x3' W }'JZ94U\pint{; ; 1: ?3} 6  Y7  {8  9 : ( ; 0 < 8 H= @ @ H A P B X DS` + FYh 3H}p Y I}t nJ x f Mh No O_ VPQo 8XY [z \ ]Y _^ U _ B V`} b &+ N o4F u  4:A  }    } .#Z Z4 N     v  }   } z    l  cH } O N     [6N m0}N rO LN w oJ  (   }  } S }   >8 (N Nt)B;4  J m V B& g . 0 }2 2 } 4 }  6 }  8  : } < } >O  @A$y B }(7 D }, F 60 HN87 HN@ H#NH J BPqH L X L` N ;h' Pp Rx TT U } V } M W }P X } Z U #;Zg $+1A N &a=   cq4a q 0 \4@ d 6 e&KCn3 ?:}aS!oid 6"  @#^ $idx6}$anc7OM%q2> &2vr&2&2'3(U}(T0)2? + &2&2 'Ť3(U}(T1(Q (Rv(X~*3++3P (Uv*ڤ83+7D3} (Tv(Q+]D3 (Q@+v+3 (Uv+$83 (Tv*5P3*OP3*v\3,  e"WC$lvlT8.->T+.a (Us+.y (Us+*i* (Us(T (Q1.di* (UU+|i* (Us(T (Q1/i*(UU(T (Q1, u~eu#i_nu0$lvlwT]W#PL ->|T0E - }1 6$i}>6'3i*(U|(T(Q1+Ƞ. (U|+!% (U|'i*(U|(T ı(Q2# ->T0= - }10$i} '̢i*(U|(T(Q1+H. (U|'o!(U|# $i}#  - +L3^ (U~ $ &+}i*| (U|(Tv'e3(Uv'i*(U|(T ʶ(Q2+. (U|+di* (U|(T ʶ(Q2.%(UU(TT+/i*D(U|(T N(Q2+!\(U|'ߡi*(U|(T N,Y Y0eY"B 6 tagY+ Y?j!^!->[T!!$lvl\T`"V"+J.(Us+U.4(Us+p"_(Us(T~(Q g+i*(Us(T }(Q1'i*(Us(T ̱(Q2, >`e>"""tag>+o#c# >?0$#->@T$$$lvlAT$$+z.N(Us+.f(Us+"(Us(T~(Q O+ܞi*(Us(T e(Q1'i*(Us(T ̱(Q2,  Pe %v%h% :  ,}&& m  8g&c&str G&&len Q;''-G 'n'-< y(m($end )(+i*(U|(T +(Q1+!(U|+i*(U|+0!(U|.{i*2(UU+i*P(U|(Qs+!h(U|+i*(U|(T (Q1+ԙi*(U|(T (Q1'i*(U|(T )(Q1, @ oe&*) m .**str=**lenG;M+E+-G ++-< ,,$end --+ii*(U}(T '(Q1+!(U}+i*(U}+ė!(U}. i*(UU+$i*H(U}(T (Q1'Di*(U}(T )(Q1, Дae&-- : -}2...str:r.j.lenD;..-  //-G /v/-< //$end h0\0+ i*^(U|(T %(Q1+Li*(U|(T (Q2.zi*(UU(T %(Q1+i*(U|(T $(Q2+ӕ!(U|+(U|(Q1+ i*<(U|(T (Q2+,i*f(U|(T (Q2+Li*(U|(T (Q2+li*(U|(T (Q2+i*(U|(T !(Q2+i*(U|(T (Q2+̖i*8(U|(T (Q2+i*b(U|(T  (Q2+ i*(U|(T  (Q2',i*(U|(T Ա(Q1, l`ael(00 : l/}n1j1strl<11lenlF;2 2- n R2J2-Go 22-<p 9313$endq 33+i*(U|(T (Q1+ܒi*(U|(T (Q2. i*(UU(T (Q1+$i*!(U|(T (Q2+c!9(U|+V(U|(Q1+i*(U|(T (Q2+i*(U|(T (Q2+ܓi*(U|(T (Q2+i*(U|(T (Q2+i*((U|(T !(Q2+<i*R(U|(T (Q2+\i*|(U|(T (Q2+|i*(U|(T  (Q2+i*(U|(T  (Q2'i*(U|(T Ա(Q1, MpeM&44*4 : M-}44strM:44lenMD;N5J52 O -GP 55-<Q 66+i*(Uv(T (Q1+̑i*(Uv(T (Q2+i*(Uv(T(Q1.i*B(UU(T (Q1+<i*e(Uv(T~(Q2'\i*(Uv(T (Q1, -01e-#a7W7src-577len-?;Y8O8$i/ }88+si*(Us(T+i*C(Us(T (Q1+Ȑi*f(Us(T~(Q1+i*(Us(T(Q1+i*(Us(T +?i*(Us(Q1'Zi*(Us(Q1\,! _1!e%k9]9tag. :: EOX:B: 1 V}A;=; 4 h}};y; m ;;str,W<K<len6;<<-xO=m=->T>>$lvlT>>-  };?%?- %@@+:.1(Uv+E.I(Uv+u1!p(U(Ts(Q}+r3(Us(T+ś1!(U(Ts(Q0+қr3(Us(T0+!"(Uv(T(Q+s( (Uv(T(Qs(R}.i*S (UU(T (Q1+i*w (Uv(Ts(Q}+Ho (Uv(T(Qs(R}+ (Uv(T(Q 8$8&(Rs(X}+ҝ !(Uv(T(Qs(R}'3(U(T / *}o! *}~@p@ *( AA3len*5;Q$i, ;AA-<,;rB`B-?- }GC1C,F 0"e%:D0D$i }DD$lvlTEE#|"- kEeE*s3+i*n"(U|(Tv4e3'@.(U|,2%e"EEtag1MFEF * BFF$lvlTGG#P7$-q }GG0q#-A}GG' i*(Uv(Ts(Q}n $ &##-h GG+i*#(Uv(Ts+i*#(Uv(T (Q1'i*(Uv(T~(Q}+Њ+3$(Us'i*(Uv(T (Q1+;3V$(Us(TQ+N.n$(Uv+i*$(Uv(T ӱ(Q2+ċi*$(Uv(T (Q2+̋+3$(Us+܋i*$(Uv(Ts 'i*(Uv(T Ա(Q1,1 jH *ejoHgHnj&HH!oidl 6" m -7 n }II->oTJJ$lvlpTJrJ5 #&-6 y2K*K%2{ _&&2KK&2KK'3(U}(T1(Q@(R (X1(Y0+ψ3|&(U@(T1+;i*&(Us(T}'Ce3(U}#`'$anL L%2c 3'&2rLpL&2LL'q3(U~(T1(Q (R DZ(X+E+3K'(U*N3*+3+i*'(Us(T~+e3'(U~+83'(Q0'~i*(Us(T ̱(Q20`($anLL%2  i(&2>M8ISS++3*.(U~+3B.(U~*38@ 1.;e&'T!T4e3= T.9e)U=; T.9e*U80fh/;e$yTsT+Q3@/(T }(Q0*\3*t3*3= }}/;keyTTerUU+߃3(0(U+3A0(U 'Q-(Us= >@1;s>UU;len>;yVsV< >*1VV>a@ }JWDW>b@}WW>c@}$XX>d@}rXpX A} 0"& B1 `0">ptrC XX>endD XX?z E ZY0dN1>iH }ZZPZ'V3(Us(T|; }14=}q2;sZZ;len;[~[>i ;=\#\@  }=?  Z]X]'}3(U(v2$;-֪ժժժU-@-%4v2$?&#A >U2B>UBJ >}B>BAU2BWB)BBA "}3C__s"B "D D E99E::F "F* * "Fu u  G E``3 E{ { yE> > sD D  E ~Egg%F #FV V #%"' I$.9@int\hhxp{N NxZZ@ 1d ?3G 6  Y7  {8  9 : ( ; 0 < 8 H= @ @ H A P B X D}` + Fh 3HGp Y IGt nJ x f M\ N O VPQ 8XY [ \ ] _^ _ 4 V`G b &+ x x@p   x@ d A   G n     G   @     v  G   G z    l  cH G A ` 0 9id T 9 :  s  >   (- b^_QP- h}3- m}- r L- w oJ ( G }  G  G  Nidx N     -, G  Nidx N   ptr len N  E str M    'C    G $ G #  H  U (   0+ | 4  48qH  @ Hd  P *XD 3` ;h DpN Mx$  G  G>  Geof  Gio - 7 R 3 R  R  X   G  G  m   ptr    O   ;beg ptr end   F  G (   G  G S G   >8   { ?    " N@ @ NN2 R X Nv v NN&-  I -  Tr (- - t)B;4  J m V  R  @ str v 4;!# $ 1%M& '^ !  G  "@  #h    @O #6  < @, #C<  ch @OX #U_!h   n @4 #Mo $"# #R ` @ #   @ #C  F @6 #F #  "@y #  "@ #   `#; $G l4"%5 &T4'n1( N)G G*T4]}]+*G"^^#Y o(G+;G__,yynG/a`+!Gcc+Gdc+Gee#A Go+Wff+LWVh4h# ]r+G mii+mukWk+Y @ll+ ntn+ G:s"s-&..WD -]<.I..z.-05.z /-t.J/ +@&u"u0:+(W^u\u+)suu/ +- @vv1% 2Uvo2Q3@ +. @3w/w1_ 2Uvo2Q}4Iŭŭ$;5f{wyw5Zww1 2T12Q 2Ro/ 26nnww7Q 2U 2T57v!2U A2T41u!2U ۱2T A2Q4/ 6n5x1x7!q2U K2T31!2U ۱2T K2Q3/p ,nqxkx7!2U~7*!2Ts7h 2U 2T57!32U A2T47!Q2U~2Ts1T!2U ۱2T A2Q48I֨֨B5fxx5Zxx1 2T12Q 2Rs9Iث C5f%y#y5ZSyQy1 2T12Q ȱ2R~8I 5fyywy5Zyy1=!2U:9I a5fyy5Zyy1̬H!2U Ͷ2T12QE9IV  V5fzz5ZKzIz1z 2T12Q ȱ2R (8I 5fqzoz5Zzz1=!2U:9I@ Z5fzz5Zzz1H!2U 2T12QA8I$fu5f{{5ZE{A{1$ 2T12Q ȱ2R 8I99f5f~{|{5Z{{1M=!2U:9Ipp %5f{{5Z{{1H!2U e2T12Q?85$| |:;d|Z|;||9I 5fE}C}5Zu}q}1ˮ 2T12Q 02R~2Xs1$ " 9I N5f}}5Z}}15 2T12Q ȱS!>X!7p!2U~7y!2Uo7ư 2Uo>S!7 2Uo>#!>,!>K!7ձ!'2Uo>!>!>S!>4!>!>!7!2Uo7!2Us78!2Us7P!2Uo>X!7t!2Uo>ٳt7l!,2U u>3!>! W@ m@  ?r&rG&r"m?M&'M&M!G&M2m?&G@yyiG(-AI* WBtop/WKE9I Cf A5Z1H!2U A2T12Q99IХ 5f5Z1 2T12Q|   ( b[_Q mz} r L w oJ ( % [  %  %  Gidx G   m z -, %  Gidx G   ptr len G  E str +m    'C    @ $ @ # t H  U (  y 0+ Z 4  -8qH  @ Hd  P *XD 3` ;h DpN Mx$  @  @>  @eof  @io  7 0 3 0  0  6   @  @  m   ptr   O   beg ptr end   $  % ( t  @  @ S @   >8   { ?   G  GG2 0 6 GT T GG& y I   Tr (  t)B;4  J m V  0   str T %![@и k "nU!(`a, #\ #:.\a[#m;@$uri %u 1 &;9&b^'(Us(T}(Q|%uPe &&ć‡%u &&%? &h86&\][&P'(Us(T~(Qv)z (U}'(Uv|"#!L: #:#m#@$uri MI%?P &h&\ljʼn&P'U(Tv(Qs $ &%u3 &&=9'*(Us $ &*P +uris+n)#-0@,߷) (Uv-(UU!e] +p]#+a],um.n_@)>(T|(Qw) V(U|)ct(T|(Qw/p(Uv(T|)(T|/(Uv(T|,,+*J+pJ&ڌҌ+aJ/C90L H0BMP)B4Y(TH(QP,V@)l(Tv(Q1,,+!e+p#+a,>4+n90B!H1R.bad0P)p;(Tv(QP2ܵ(U|(Ts)p(Tv(QH,@)(Tv(Qs,,+! H?+p !ZV+n .$id /Ǵ*(UU(Ts'@(Us3u44g4-3G44g5  6tag:6:5 7:: 7996 x-private:7``3 7GG w8* * "8 "811  9 8vv !7 T' ZB99ints\\lp{G GlZZ9 1Z ?3@ 6  Y7  {8  9 : ( ; 0 < 8 H= @ @ H A P B X Ds` + Fyh 3H@p Y I@t nJ x f MU N O VPQ 8XY [ \ ]y _^ _ - V`@ b &+ n l9f   l9 Z A   @ b   @ A `1 0 id T  :  s  >   ( b_Q m} r L w, oJ ( {   {  {  Gidx G     -, {  Gidx G   ptr len G & &E ,str 2,%G`,+ :e sNu\>Ph`(\ @V D  7=: C I O U  *   Y i y  $ - ;6 d?  H Q _ A#h j?t )p K E Q i /WV c  ? O[ _ ) . /= D S ]b  . l9  C=uri 3P !ˢǢ!!A=";<#U|#Ts#Q} ;C !/yw!# x !/ȣƣ!#$&M #U}$Z #U|#T~#Qv~"g#U|.J  uri&mi LP k !!ߤ!"Q<#U}#Ts#Q~$<M #U~$bZ #U}#T|#Qv|"mg#U}%Z #U ۱#TU%dt #UU#&#UU"t#Us> @ |\[S,\¥'i @%!`\$ #Us$ #Us$ #Uv$( #Uv$F #U|#T#$d #Us#T#$, #U|#Ts$8g #U|"@g#Us{ - (str-"j6(len-.-/ ZN/P/()yy6s8*Ap*F*(**K`*<)yy5iм*20*(x)yy8xH*7)yy4a*-*)yy9+yy2Z )yy3]@ XxB~o7l0rpf3ZBH<i4պ+(߽1.J0_y0Y54,B"jr1m$TG+BN&j!TdXQ WoK8]>wD]bEo}8$ )0o|;,(@TcPZix~  k;}xc]u ] mcwh zx-<:WDgc (v'JZc'-39? EY9Q/K+tqc$u>{MkTiwe< $4>N^yMxgҾ 0At/k;pXJF#fGSe2<W :a("2TUN`5)ND'.8 l/w,(n8$-$@tid &-5 -Ng$d#Uv$o#Uv-"Z#U ۱#Tv.//g/-.G<//g01.299 2(( r2`` 3 2 q2 ~2:: 0~t3NN j>' !V99intn\gp{G Gg ZZ9 1a ?3@ 6  Y7  {8  9 : ( ; 0 < 8 H= @ @ H A P B X Dz` + Fh 3H@p Y I@t nJ x f MU N O VPQ 8XY [ \ ] _^ _ - V`@ b &+ ug9m  g9aA  @b   @ A `8 0 id T  :  s  >   (z b_QPz h3z m}z r Lz wR oJ (        Gidx G     -,   Gidx G   ptr len G L LE Rstr XR,`r`nr^####&#;#g@:seqg^Uidxg$GTsiRZX\ seq\^Uidx\&GTid\1Qs^R~@TG seqT^U@YKarr@^@$sBRgcidxC G020En2^s4RB@E#o= U@'^,%'ken)^ Us Tv!map^Up-Tidx5GQmL!map^Up/Tidx7GQidBRmLtl!G $ "map^U# $6^$;,^%m1LNL%m2Lvr& G&GZR00# n 'map^'key$$/e[%mL%idx G00#l 'n^QK%mL##(= U@= U@!4^. 'key$ %n^lf@ Us Tv Q|!  "n^U#0b\ 'n&^%go ,%end) *+UQ+J Ts Qvs##`E 'n^'str'!'len1Gsm$ H,# ++ :6+rpU T} Qv#= Uv#O{. 'n{^'str{&$ {=og(` Us-.\ UU TT RQ!(l^j'strl\'lenl&G& $ l=xr%nn^,t++ :8+_]U T| QvE= Uv!<f^0'E'strf\$ f2(D`( Us-W UU QT.@ U^8%nW^VT%sXXy(= UHZ U2.C^0F@%nE^%sFR(?= U (b=, U@pZ U1.0^Q%n2^@>%m3Lic(= U((= U@(= U@Z U0#P:Z'n^(]d* Usk##-# UU!^5$% %s^lj= U0/|'0'0'0'-/#000-1`` 3 1gg %199 2|r 2  1:: \' l _99Gpint{q q 1) ?3j 6  Y7  {8  9 : ( ; 0 < 8 H= @ @ H A P B X DB` + FHh 3Hjp Y Ijt nJ xx f MU N\ ON VPQ^ 8XY [i \t ]H _^ G _ - V`j bz &+ = ^95 d o 9)A  j    j "Z Z9@ /,!* ]@tT5      v  j   j z '    l  cH j  -"O @ X    [*A `p 0 id * T  :  s  > 7  G(@ b_Q@ m}@ r. L@ wk oJ (        qidx q *    -,   qidx q  7 .ptr len q e eE kstr qk   , 'C *  *  j $ j #   H ; U ] (   0+  4  -8qH  @ Hd  P *XD 3` ;h DpN Mx$  j  j>  jeof  jio  7  3        j  j  Gm 8  `ptr    O l  beg ptr end      (   j  j S j   >8 9    */ / 5 wd{ G M ] / ? i o 5 /    q  qq,2   q  qq`&@  I @ 9 Tr (@  t)B;4  J m V !  "  #str  $sjA %str*%len4q&idx j'%(f( %p)/ %msg2)A*R (+,U1,T (,XT$<*"R %p/ QK-0% ,Us-6= ,Us.,Us$Gq/ %p"/ /*q&len q0A q0(-!5 ,Us19 ,Qv-G  ,Us,Tv'e52},Qv$q| %p/ &len q0A q-5 ,Us1 ,Q - ,Us,Tv'52,Q (C@853p/ U3len'qT$q|%p/ 0$= qE=0Aq4  5/-5TR5yw.,Qv6z7pz/ (Zh%ph$/ %lenh+j />8hG9 rj-^,U~-i,U~'(+\`1%p\$/ 8 $zV @3pV(/ U(P.%pP#/ +#%ptrP,/P? -,Us+,UU,TT,RQ(3;~g%p;/ bX%ptr;'%len;1q1'/;D -/:,Uv-7R,Uv.H,U ((`%p(/ -#%fp((/(; '-,Us-,Us.,U@(!0B3p!)/ U9!C T(  ~3p-/ U9% E] T( 3p(/ U9% <; T( 3p +/ U9Y 2jT(23p*/ U9Y1jT(# n3p"/ U9% 5 T:[0;p/ '+%->0,Us-F6,Us'V 'q ' -,Us+ ,UU:X`t;p/ -1,T p,Q0'%-1,T p,Q0'%<jp#5;keyYS;n*5 ;arg3)#.=,UT2 +GJ,TT,QQ<jX:;p/ ^V=>$>id *2&-V,,Ts $ &'b?/ @>p/ -Tn,U,T1-a,U .6,Us: @p,/ UAG5*T:v06;pv'/ %.n,T1:d;pd'/ -~,Us.#,U ,T0<?q;buf?;str?) =?3q=A?Bqwk>begA >lenB q>6B@[ 555.y,Qs<-q03;buf-2,=-+ ~=-6q=A-EqLF>len/ qB4p4 5'55 US5yCpD4.T,Uvs",T1,QQs<!3t;buf!;len!qQK>new# E%Z555 .y,Tv,Qs.n,Us,T1:LEL=}51=>(@okF`5}5q.,T1,Q ,Rv,X|-1,U0''G >GH>GHJ >jH>-G|'GH'GH'H'-GGHIHH-I-AJIJ'-7__n6-JKsz -Gkj`H k GdjHdH d<L25' M   O#M\ N O|rN::Ngg%N``3 N99MV V #%M #N M* * "M "Mu u  O O NeMZ M55 NL ])'  j99pint{l l1$ ?3e 6  Y7  {8  9 : ( ; 0 < 8 H= @ @ H A P B X D=` + FCh 3Hep Y Iet nJ sx f MP NW OI VPQY 8XY  [d \o ]C _^ G _ - V`e bu &+ 8 Y 90 _ j  9$A e  e V  v e   e z ~ l  cH e~V  cH@key    W!O @   2V  0"49V 0" lV 9Q F `=en> lU6e x7 lUy7 lT9e4<N7 SKc eval+eP**O E R;  arg G = ptr  LS I tmp"  R   i e? 7 Qv9U;0A0+*      eE A Q<UsT QTekey U T Q!e*  key9+  @1/ptre[!veP)*key sc@&$tmpRPptr~v"9zUs#V9$^*0  _*a*xnptrbb'!ic esqvc e"PF> UH"ySa Us T8"Fy U #9"9 UvI9Uv%D( &E*'ptrG(WG$(G,( 'iH e(rH e(H,e(I@&7 8*key9 UM: <@!<@tj) @"F U LUsTs* s+Uv$ !e`1S "*#key#$ K?&@&@=7ptr') -":F U LUT* . U|B U|+U|,* e' -* .key-  /@/@ptr$  U| U|+ U|0V 0d -*bZ1ptr/W$1i e95#i9#929UU,*-23 evp2$BU 0"TU,1*Z2U 0",*-23 e2BU  0"TU,u *2U  0",* B-2BUUT0,Z*-YQ-23 e1tbl*  3@ 4)Z V 5@65  6?  "CFUHaSUvT87QreL823s e9iu e:} e; 9< < 6 b!\!6 !!6 !!6 "" "6 J"F"6 ""6 ""=K4)##565C#;#6?##"^S+T8#9>`` 3 >99 > C' `/ t99ints\\lp{G Gl ZZ9 1k ?3@ 6  Y7  {8  9 : ( ; 0 < 8 H= @ @ H A P B X D` + Fh 3H@p Y I@t nJ x f MU N O VPQ 8XY [ \ ] _^ _ - V`@ b &+ l9w  l9 k A   @b     @  /,!* ]@tT5      v  @   @ z '    l  cH @  -"A `? 0 id T  :  s  >   ( b_Q m} r L w: oJ (        Gidx G     -,   Gidx G   ptr len G 4 4E :str @: R   'C    @ $ @ #  H  U , (   0+  4  -8qH  @ Hd  P *XD 3` ;h DpN Mx$  @  @>  @eof  @io o 7  3        @  @  m   /ptr   R O ;  }beg ptr end      (   @  @ S @   >8    F3{   , ? 8 >  R  ^ d G  GG2   G  GG/&  I   Tr ( o t)B;4  J m V !  "  #str  }$ #  $ 1 % M &  ' %  `4"&~@: 'msg~$$()TU*x@ +l@ , ,ptrlU+jf@P  'ptrf$$-YY )UU+aTl` ,chTlU.>`I /T4>$$0s@05 1 1 1 1 1 1  0 1 0 23. l>%*%4 5B )Us5B3 )Us6PB)Us7@8Y8T439u @0|0B:yy7_0-x:yy9h0(r:yy5X:yy2D:yy4Q070&:yy3K000l0F0A02|0<0K00000T000B00G0m00J0oB020T0d0( 0;00i00y00-&0`0r0i0R0u0f60hp0Z0d 0V0cj0 b060P0 H000>0}00{000)_0$Y0F0U0=u0}000 )0 80kX0z|00z0u00:0 0000^`00c0S0Z0w0}0320?\0k0q0Eh0u0Kz0009600b00000000q0000 0(0Az0!0O0[0g}0Y0#%0S0/U0G0;a0_0e00000/0020 00o00E0aM050n0S00?0+v0100;D00 0 0 0 0( 00~ 0 0)K 0+ 0S 0F 0n 0z 00- 0 0 0 05 0< 0I} 0 0Cx 0 0? 0K 0 E 07S 0r 0=j 0"U 0O ;A@y?Y!&&?T4)&&@BH)UU)TT5  g)U H5, )U AII BCCgC-BGCCgB*CCC-DI `-BE[ ('Eh --Fu GI @^BEh 22E[ 762@Hu 9p9I I J J HJ HJ J (J J `I J J J rJ JJ JtJ~J$`J-J6rJ?JHJQ" JZ]Jc#JlJuJ~g JJIJ`JJJ0JJJJhJJJ J`JJJ J)pI2J;JDJM>JVJ_JhCJqpJzJ%JJ JJpJJJJJIJJIJJ JJJ%0J.9J7-J@KJIIRJ[JdImJvTJJIJJ<J}IJ JJJ6 J JaJP JJ Jp JI!J*J3J<pIEJN JW J`& JiJrJ{dJ[ J: JIJJIJ JJNJ+JJJJJ YJ:J J&J/I8IAJJ#JSJ\Je InJw0JHJJ IJ J J J1 JJ JU JvJ4IIIJpJJ"J+J4J=JFJOJX`JaJjJs5J|IJJJpJ8JJJJJ~J JJJJ8J JJ@J'K(H<<Kp(H??HDEDKj&H]IQIHII5Y &)U|5 2&)U|5)BJ&)U6B)U)T|)Q15HB&)U5B&)U5B&)U5B&)U5B&)U)Q758B&)U5B')U5xB/')U5 G')U5)B_')U5Bw')UL LSBLRB5eB')U5B')U5 B')U5^ B')U5 B()U5 B.()U5BF()U5Bc()U)Q8L 5BB()U)Q3L6 6SB)U)Q36B)UKAu*HFzJ2JHSMWMK)H#OO6B)UKsf)Hx_OYO5Y Q))U|6 )U|K`@)HeOO60B)UM#")HOO6+B)U58 ))U5B*)U5B*)U5B0*)U5MBH*)U5XB`*)U6 B)UKp 0HPOH&QQH3JSSH@rUnUHMUUKZ`-+H_lWjWMl"+HmWW6B)U6B)UK|/H}WWHYYKr,H[[H\[NHs\q\H\\K+H\\LY Ma ,H] ]6 B)U~)Ts $ &5Y !,)Uv5 9,)Uv5sBQ,)U6B)U~)Ts $ &OR,En]l]E]]E]]G G-E]]E^^E,^*^6B)QvG/0v-EV^T^E}^y^E^^6:B)U~")T)Q|MW-N\K`-H__LCLCMhk -NmMy3.H~;_5_M'P.H__LCM<w.H__M3N<.H8 ``5! .)U}5tB.)U~)T|5B.)U~)T}5VB /)U5 B"/)U5 B:/)U5k  R/)U5  j/)U}5 B/)U~)T|L 5EB/)U~)T|5B/)U6$B)U5"C/)Ud6B)UK2H`\`HvbTbHccKp2HeeHffKMP 1HNggH[ggL C5 B0)U5 B0)U K)T35V/C 1)U ۱)T K)Q36B)UK N2HDh:hHhhHOiMiHxiriK, 1H1iiL Y K?!1H@jj6B)Uv)T| $ &5Y 1)U}5 1)U}5B 2)U5B-2)U)T})Q66jB)Uv)T| $ &5Bf2)U5rB2)Uv)T| $ &5B2)Uv)T| $ &5B2)U6IB)U6"C)UdKi@!6HnjjH{lglHnnH_p/pK@"6Hir7rHtjtK@#4HuuHiv[vHwwH-w'wK#3H|wvwLY M I4H ww6?B)Uv)T| $ &5TY 4)U~5 84)U~5BP4)U}5Bs4)U})T~)Q66`B)Uv)T| $ &K#J5HFxBxH)x|xL C5B4)U5<B5)U K)T35/C55)U ۱)T K)Q36B)U}K50$5H:xx5  5)U8$8&6,B)Uv)T| $ &KGp$@6HH yyHToyiy5B5)T45яHKHXXHeb^HrHKp)AH͗HK*>HH(&H_KHS?H7+HϞH~K+<H  M ;H316 B)U}6<B)U}K)+R<H.XV5B=<)U})Q56B)U}M[<H`{6Y )U|K+A=HMP<H406 )UsLC5B=)U K)T36/C)U ۱)T K)Q3Mn d=Hsxj6 B)Tv $ &K<0,6>HAI?MLr(=HM6 )UsLC5-B>)U K)T36+/C)U ۱)T K)Q35Y N>)Uv5 f>)Uv5%B~>)U}5B>)U}6 B)U)T  $ &K`,n?HݢMhR?HXV6 )UsL C5+B@?)U K)T36/C)U ۱)T K)Q3K,"@H{MR?H63 )UsLC5B?)U K)T36:/C)U ۱)T K)Q35HB:@)U}5Z R@)U}5Bj@)U}5B@)U}5B@)U)T  $ &5B@)U}5N B@)U)T  $ &5 BA)U}5nBA)U}5B?A)U)T  $ &5BWA)U}6[B)U)T# $ &5#"CA)Ud54BA)ULxC6LK4LD0S)SYLBS{ L:@I9$HW!lalM4@>OHlII#9 S   U  S S EI F6 G l S'gE Hn*a1tx@ZZS -  E"h 4#p E$x IG'  S %G  S sy&*!S{&O # S #.!X T' [-( @ 7)H #h SESX2l#VY /Zt 8 R:  IB; ? R A /@B  2C G, RI  IBJ 2K Ow RQ  IBR ;8S  xYT [FU a 4c / Dd /^0ew&g Y :R[ / d&]m Gh  l Zn Bo  tC #v / Qw  (xL p3.5>=<5PD_rtLPV,LiG[pUy  S $  G& }(  1*  0 M{ C 5|))/ E S@5DAEEAEj4xa4!xC$aY2 P7 3/; )@ I M Y  l  S  pK +6++50M@@J7UU_ O R EKU  O:  8 jjB ,eTU q2;X ">; )! ! + C6 6 @ ZEK K U (R` ` j Uu u  [2     0 E Z    &  ;  P  e  z   # >; OU +&!. ~!{/ :# iV aW # S / S ; S X g! a  _K 6 4 S X. ZW0 L5  h+= V> z/@  JCA C $ D=E ( 2&J 0 lNN18 :AP=@ d#[H J\X N>]h NIj x U S a SY I 7-Y I 9-p" 9-4u V6 >7 M u (-aN.a N  ((  a U  x '  S  ;  !b) :!d a :!e x O8!f !g E!h x , !o rU! afX! x`!! J! aF9!D N!!F aK!G xY!HBR" p7" T" ;?"@ J" 4 )$"!  l SA"%X p7"' T"( ;?")@ J"*4 )$"+ DIR#dOIV$viUV$wSNV$E-<% -$/ OP$1 op(& 7&R2 >&R2 -&eK T<&I=D&L  )&L N&L X&L C&L U&L 3&L L&L )0&|1" #&|1#COP$2  copP'y7'zR2>'zR2-'zeKT<'zI!=D'zL  !)'zL !N'zL !X'zL !C'zL !U'zL !3'zL !L'zL )0'z|1"#'z|1#-'}1$&'I(LV' a0:' 18<' 1<@'EQ@H' KQHW/$8  _#`&B 7&R2 >&R2 -&eK T<&I=D&L  )&L N&L X&L C&L U&L 3&L L&L )0&|1" #&|1# & R2( L& R20vC&I8aN&1@a7& qKH%&KPF& R2XL=$< O XP&7&R2>&R2-&eKT<&I!=D&L  !)&L !N&L !X&L !C&L !U&L !3&L !L&L )0&|1"#&|1# & R2(L& R20}:& R282& R2@<& R2H+$G ":/ $$ H(#52#Iop($R2 I(%52 %('52 HW((52 1(*_( '2(,10 v7(-14 X(/_8 +(01@ +(11D 9(352H wS(4P z;(5X C(6` <(81h "(:_p 3U(<_x A$(=_ #(A|1 *4(Cz K(EL2 ?(HkK ZN(KB 5(LB H(NX2 V(OX2 U(^1 w,(`|1 Z(a|1 O(b@2 QC(n|1 G(uq1 V(zL2 ?({L2 H(}/T 8(~F2 J(` ON(F2$uV(i$7(*2$&(*2$#(B$n:( ` $G)(`($zA(J0$#:($8$?($P$q(($h$D(0$)(0%ISv(*2$S4(`$J(L2%Ina($/( $ ( $A(@2 $>(*2(%Irs(*20$v#(@28$1(@2@$4(@2H$35(P$)X(*2X$V(*2`$S(*2h$,-(R2p$!(ZRx$9(ZR$J((Q$:(*2`$`Q(l8h$-(R2p$R(R2x$01(L2$`C(@2$-(@2$T(a$'($F(1$GT(|1$h)(X2$(X2$bL(X2$!(*2&!(`&'(^&<5(/^&8(=u_&N(?x&X(@a&R&(B1&R(D1&$(F&T(I&^(Jx &((K@2(&q5(L@20&yO(M@28&@(Na@&P(OH&*(P*2P&&[(Q*2X&3(T*2`&7(U+`h& R(Vp&+(XX2x&+(YX2y&+(ZX2z&+([X2{&+(\X2|&q+(]X2}& (^X2~&"(_X2&p&(aa&(b*2&;(d&m,(f1&#(h1&4(l1&S(o& $(p1`&L1(s@2&/(t@2&P"(u@2&N(v@2&+(wF2&Y(z@2&-S(}@2&G(@2&&(@2&W(@2&$#(*2&9<(*2&O(*2&6(F2&" (7` &)(L28&=(L2@&UV(*2H&\<(F2P&;.(F2X&9(F2`&"(F2h&,(F2p&S(F2x&;(a&x[(O=&y (R2&((R2&!C(R2&6(R2&pB(/T&T(&n6(&F(a&P(G`&kK(a& (F2&=(*2&?(*2&)J(&^:(1&Z(X2&P(X2&E(1&(&1(1&T(1&*Q(M`&TK(L2&&N(S`&+( &*(O=p&"$(Jx&v.(I&[(I&D(O=&K(&-(1&,?(X2&0(X2&c*(X2&-(X2&[(&i8(&1(x&[M(x'Ian( 1&Y( 1&@(1&?(1&I(1&NM(x&|'(a&;(5&2(!Y`&I(#1`&4(%1d&$('T[h&@Q()*2p&N(+1x&=(,I&%(.I&G(/I&wX(1I&8(3I&T(6a&=(7&1(8&2(91&X2&qO(FX2&T(GX2&'(Lz^&wE(NX2&.(SZ&(W&@(YX2&M([a&Q(\*2&`+(a*2&;(b*2&F(c*2 &U(d*2 &$(f*2 &.(g*2 &F(j*2 &\Z(k*2( & (l*20 &NJ(m*28 &l>(n*2@ &O(o*2H &E(p*2P &D(ri`X &X(sy` &W(ty`( &K(u*2 &Q=(v*2 &>(w*2 &wG(x*2 &>(y*2 & :(zL2 &(|L2 &$G(}D &zL(~ &6(` &0[(|1 &P(X2 &Y(X2 &M(52 &-:(52 &T(` &W@(F2 &IR(/ &((52( &O(F20 &((`8 &"@(I@ &\/(IH &LO(`P &#H(L2X &0(L2` &)(4h &H(`p &!(`x &W(*2 &R.(*2 &W(*2 &ED(*2 &=(*2 &73(*2 &3(_ & .(F2 &>F(F2 &uW( &"({[ &D({[ &?({[ &C([ &%A([ &t)([ &`)(L2 &8B(L2 &D'(F2 &U((L2 &=(*2 &g1(L2( &O(`0 &Z(G`8 &.(^@ &[T(_ &X( ` &Y (  &V9([ &<("` &Z(-I &"(/ SV$O $$sv)$% QG)/ B)1 P)1 )^6AV$P 0%av)q% QG): B)1 P)1 )9HV$Q }%hv)% QG): B)1 P)1 ):CV$R %cv) & QG)9 B)1 P)1 )9M$S &7)_&QG)`8B)1P)1 )1;GP$T k&gpP* ' U* *2 ?* I M* O= A* 1 !* 1 P* L2 lM* F2( DO* O=0 &* @28GN*L@A*L@ B* D<HGV$U &'gv)g' QG)9 B)1 P)1 )~8 io)'QG)+;B)1P)1 ):}$W '97`'?'D'CUK`'( ' |10>' |1N' 1E' 1G' 1pD' 1 |J' /Tm[' Bf ' B.' 1(XG'S0C$Z ( 20+) iC+ s< /+ PV R+ 1 Z+ l ?+ |1 O9+  !+ *2 ~M+ a(XPV$[ ) xpv )W)iI)L2A)J</)3)y<1$\ d)3 ())iI)L2A)J</)3)<V)< 4$^ )"0))*iI)L2A)J</)3)<V) < >) ;(3$_ 6*J"0)*iI)L2A)J</)3)<V)< >);(-$b * Y(, * iI, L2 A, J< )7;(.$e + Zh. , iI.L2 A.J< /. 3.iJ G.L2 K.J( 0.J0 1.J8 A.a@ 8(.JH .O=P Q.1X #.2=\ P.1`1$h ,- )^-iI)_L2A)_J</)_3)_a=V)`< ;)bx8(P[)o=0E)q i8/)r i@AE)s iHT)t aPCJ)u @2X:)v a`V)w @2h4O)x ap&)y @2xL)z l|"){ |1C$i -- 2@+ %. 3+ U V+ U :+ U FS+ U R+ U 1Y+ +V( Q+ JV0 U1+ U8ANY$j 2.(any$/)*$ /)x9$*2)S$52)#4$@2)1$F2)4$L2)7$R2)8$a)+$x)XQ$ 1)$7$ 1)!5$ i)s;$ z)5T$ )I$ X2)2$ 2)S$ z2N${W/W$|Z.T$}d&$~ /%$l d/M0$/B$[9 $ z),$ zI6$[$Z 2$Z(*$m /B:()b)0J)cF2?)dzD)et2>)ft2;)gF2 '$q 60 3/x0 Y*/  E8/& J ;/' 1 K/( 1PAD$r $%6$s 0 '/(/+0 5/,  -/-;J 4/.  +//I ;/0 1 '$t 0 &0/Lq1 Z/Ma N/ML2 >/MGJ K/M1 AH/M1 C/M1 V/M$ F/M|1( //M|1)I80ZU804|1I160m1U160@1I3201U320L1*1 11+1&U0120< 1 2/1J$w 6Y$y $*2*252'$%q%3X2t2t2/d2 114 ?13 16 a Y17 a {18 a 19 a 1: a( 1; a0 1< a8 H1= a@ 1@ aH 1A aP 1B aX 1D 4` + 1F&4h 31Hp Y 1It n1J x f 1M@ 1NZ 1O,4 VP1Q<4 8X1Y 1[G4 1\R4 1]&4 _1^ / 1_  V1` 1bX422,&1+42 l<4 S4B4M4 lh4 S3t443t4A3t44 4+4444 44.95<4  5>44+"5N5"567/7Q5S7 1kB7 ajB7 R2qG7 @275-L)5.D@.9.2<.]=.R.\6.A.8.M.h5 .7 .h2 .5 .7 .4.S6.#SW)]5HE)5he- 6 ^O-$ l8 T%-% D< -)PHEK))6hek --^6 _H-.1 2-/1 O-5,4)64)a3)i'9)z6)7)*27)`8U)525)f82)r8))x8 M8`8 iI8L2 A8J< /8 38> ?8? U8>( B8L20 V818 ?8@ 18H M-8P S8?X B81` S81d 2L8/h Z&81p |F81t 98?x *8x /'8a Y;8*2 iD8 Z8 )8 B<8I<8LPE8L  (8O=6l85_&4)94)a3)i'9)z6)7)*27)`8U)525)f82)r8))x8D+)94)a3)i'9)z6)7)*27)`8U)525)f82)r8))x8+):4)a3)i'9)z6)7)*27)`8U)525)f82)r8))x8*):4)a3)i'9)z6)7)*27)`8U)525)f82)r8))x8*/)+;)4)a)3)i)'9)z)6))7)*2)7)`8)U)52)5)f8)2)r8)))x8,/);)4)a)3)i)'9)z)6))7)*2)7)`8)U)52)5)f8)2)r8)))x80%E)<)8) )M) L2)J) 1)JY) X20 W)D<)D) i)=K) z)X) D<)y%) X260A[)s<)2) s<)@) (/)<):))U+)a/)<):))U+)a/)<):))U+)a/) =):))U+)a/)52=):)5)U+)5a;L): 1O=t2O=%?=)0/)_=):)_)U+)_a/)l=)A)m=)>T)n /X ;=+=A9= .8> ?8|1 8 |1 4K8 1.8= (*(8&]> E#8'  (58(  3#8) *2 .#8* *2 P'8+  L08-> hO8. |1 >8/> >> S K8:> <8; #end8<  :8C K8D> &>8?:8U+8a ?h8? U80@ %8m@ 28@ VR8@ ,8@ Z8@( '8&A0 W8JA8 8sA@ :C8AH !-8@P R8AX U8A`??]>>M86 &8@ rM8 x ?"8@LH8?1>0@t2021@11m@t2>aaa*2/16@1a@t2>*2aa1@ @s@1*2@t2>@@t2>@@t2>102@At2>1!A$AA11JAt2>!A1,A1*2sAt2>02021PA1*2At2>!A1yA1/At2>A/A1>At2;2R2?>A11X2A2P8h B3rex8i B[N8jBY;8l*2/'8naiD8o  Z8p ()8q 0B8rs<83pos8s @%8t |1H?|K8uB2 8| BK8}B"8~5C208wC%8 aBH)x85Cl<8 *8 a3u8PHB"o:8\wC&8]I&38^wCx&W8^"wC;C I8Bs18 128CIU85C28 CIU85CZ&8 1|F8 1 3cp8C2 8BDIU85CZ&8 1|F8 1 3cp8C>!8BD>2@8DIU85CZ&8 1|F8 1 3cp8ChG8 1/8 X2&8D 3me8BD(v*8 D0b,8 18"8 1<*8 1>1|12@8EIU85C$185CG8$5CW)8>3cp8C pX8C$81(3B8BD0*8a828EIU85C'P8 1!J8 1 3me8BD2 8 FIU8 5C!8 5C08  *2oY8 a28)F3val8 288FIU85C$185C3me8BD3B8BD3cp8C F(8 X2$y(8 ($=8" ,!8# a02(8&GIU8(5CnA8)5C3cp8*CpX8+C!8, aP8- 1 H,8. 1$2`81GIU835C3c184 3c284 3cp85CZ&86 1|F87 1I88 1$=89 1 F(8: X2$3A8;BD(3B8;BD03me8<BD8ST8=G@)8>GN |1G S 2h8AH8B 13cp8CCZ&8D 1|F8E 1 3c18F 3c28FM8G a=8H a $=8I (3min8J ,3max8J03A8KBD83B8KBD@ST8LGH)8MGV/h8I)I8}C)K8 B4yes8C)(8 C)C!8C)D8HD)[!8E)F8E)G8E)8F)sA8$)F)U8/F)08?G),8NGH)8QB II S o:8_;CO::KSg'// /!J NK/"J "/# J "/$ J0x0//JS/ /J[4/%5JJIAJ0/MiJRL/ML2?/MO=.J:.U+.a.J^G.R2/.%..Jy>.R2".U=.JG.@2R.D<.K3.[=7./& JK5X&Isv&*2iv&iuv&zqQ&K1R2eKt2VKJK/&K)$<&R2)S& I)@&@2/& K)7;& R2)C&  I ?0;11L ,;3 a PB;4 a .P;6  BU;7  L;8 a <;9 a P;: a( % <*sL 5D<, a ?<- a @<.  |P+M 0>- a M(>. a ,>/ />0 +>1 _1>2( M>40 1>68 Y>8S@6P?h bP?ja6'?k ,?qbP$?uaU7?v  l0?y1L(1?zaH_R?{ P]%?}hPX:? `<?a:? u3?nPN?h%?a,? K? G?a !? D?tPH?yU?o &V?a&(%? &8?zP&4?K&4?aH&"T? P&q'?PX&?) `&A?a&G? &'Z?P& ?M&!?a&? &9?P&6?P&6? &?P&F?P&'3? &*?P &F?a(&Z8? 0&hH?a8&X? @&2F? HsL1L  o K) M =?MR2-&PEM-'*2F;-(  !' "Q mW'!"Q R'"h e<'# W'$ X2 "'%1P('(P9"'@QI4QzB(''Q('( R2'* J3cv'+ O=G'- 1W'. F2 >('3Q('4 R2'6 J3cv'7 O=3gv'9 @2P': @2 U!0'uZR('v R2>'x *2,C'y R2Z['z *23cv'{ O= FL'|ZR((Q/'R4svp' 524gv' @22'R3ary' F23ix' i2'RK' 13ix' i2'R3cur' i3end' i2'S3cur' *23end' *2/']S4ary'R)<*'R)M'R)S'RX0'S.' SA'`RF'*2L'SD5' J(BK'SW'R2G' *2/0'/T)-'QQ)O'Q)<'Q)P']S)(D'ScVX'UR' |1/' |13' 1c'' 1g$' I' :4' a#' *2 J'  *2(WA'  a0QA'  a8%'  a@^5'  /H3'>P/`'@-U)='A')`V'B5TJ0'U9*' F2E3'U0'UQ'U/' 1 *=' 1$~$' 1(x5' 1,'-UC'-U1Ut2*2s<U11Ut2*2s<U1+Vt2*2s<*21V1JVt2s<A1V- @ V#val@ Q5 s<@ m (2@ 1 *@ O=)@VV 9(@V @V 6@ *2 M@@ a +W@ a z+@ *2 V8:@ VW@"Z *@&Z L@'Q5 YC@( @+ @- <*@.Z h4@/Z(#ps@0Z0 6J@4 18 '@5 1< '@6 a@ <@7 aH _I@8 |1P A@9 |1Q =@; |1R F@< X2S #@= 1T 6@> R2X L@? R2` *@@ *2h 8@A 1p @@B 1r 0@C 1t @D *2x <@E 1 "@F 1 3=@G z X@H z KZ@IX2 \0@J |1 d;@K 1 ZB@L 1 J@M R2 4H@N *2 ,@OZ 6@P *2 P@@Q a V@T a V@U a z8@V a |Z@W a 1@X a "6@Y a 2A@^ 1 .K@_ 1 A@` |1 k@a |1$E@b L2$:@c x8$Y@d F2$4@f Z$5@g Z@$aS@h |1T$A@i |1U$J@j |1V$1.@k |1W$ N@l /TX$2@m `$X@n 1`$D@o 1d$\P@rih$Z@sip$5@tlx$V>@vX2y7j?@xLx7e6@yLx7!@zL x7L@{L x$A@}X2{$g@~ |1|WVV Q5Z S 1Z SW@W/ZE6 [/$N[:/$t23$$N[W$$N[[s4$Qf[T[l[1{[t2#$R[[[t2*2/!$Sf[S$U[[1X2[t2*2X"$V[[[t2 s[+[IQ$u[R$w[P#$y[F/${[ #$}[o!$[G%$[Q$[5$[dF$[K$[k9$[ s\ S\:$\<$[Q$[S,$[B$[jS$[$[E$[;$[)$[0$[.$[3$ 1<$ 14$ 1 s] S@t]0$]96$[ s] S]&$]"$]-$4 ]+]N$]f:$=Q$=;1$=C$= 4;^+O5$0^ $= `^+T$U^&$[8!?L$^.l-. 7.PS.Z.L.I.V?8$49WH$F^3pad$G^ $^ S>$P^__t2R2M$a"_(_11A_t20202@$feK6$g[_a_1R2u_t2R2:,$h^+E$i__1_t2aP.$l[-$s_3fn$t z23ptr$u /"O$v_%.1UIIZ a+` S iG` S_1 /i` S *2y` S *2` S |1` S W/L2P4)/ *2` S"+I$1*$1J!A4PFA&4 A_ a+OAa N_#a+h(Aca:&A1 1Ha+=a@A Ha 1ea+ZaHA ea,A [(A Ha 1a+aIA aBB&2%B(t2B-B-2;B1X2KB4X2DBK5{RBL5=BX2v6B[1`MXB\OB]D?BaiHBe25Bf2K2BiF+B2>B2XB@BHB_mJBL2+Bzy<B2B$.BX2 4b S%BbsI$4a[3$6a[  c ScQC c -Ac S1c0$C Ac 1bc SRc0$N bc _2c+tc;>$bc3$cc8$dc/$ec D$fcfP$gc/$Zc4nv$Z4u8$Zcc |1 d SE$Zc/$[:d4nv$[4u8$[cd0$[:d DZ id S;Yd9$FHidE d Ed Ee vE   E zE e E d lE d cHE d:d;ddee F[GAF`0e 0Fe#idF G TFe :F a sF a >Fg F /(<LFbe.._.QF  3eofF  3ioFk7Fk3FkFkFkF F F /mFi F?i#ptrF t4 FbjO FKi  Fi#begF a#ptrFa#endFa FjFi ( Fi F F  SF  F a >8FkFii1GjjjVg$e{F&j,j f  F@m$yFB (7 FD , FF G0FHk87FHk@ FH#kHFJ PqHFL aXFLa`FN h'FPtmp FRFmxFTkFU FV  MFW PFX FZ / F#SmYmnmnmakg F$mmmnme8 LF&m.= . #m,$ *2'%x8 q$"(n#out&m#tag' a P( l ') X2 C4*  z0-wn &. F2 =/ X2 H0 X2 Y1 X2 32 L2=M 80"=7%l 40">< f 00">oT3 f h4"MG x8?:YJKq@(Jt2'#AcvJO=d`B(OCaxO 1DGO 52EspO 52D-,O 1FT (GخHoIU  IQ (IR  IX GG GH)$pIT /IQ -G0HF]pIT DIQ GMHcpIT YIQ @GjHpIT rIQ GHqIT IQ !GHAqIT IQ GHׯzqIT IQ GޯHqIT IQ @GJ K L3@t@(3t2Acv3O=1)B(5Csp5 52Cax5 1ߧLG5 52f^L-,5 1ߨݨMDsCin9*2Cout;nSOL >=LW<>02ǩéM0D$sL1A iGEGN͒ITvIQ}GGɑGؑH csITvGGG-HsIU}IT~G&GGObtL.Cu97GiGtP:mC5 >tQK_]GcGmGNޒ:IU~IT KI~w@(t2AcvO=ǪB( Csp  52,&Cax  1uLG  52 L-,  1MDdvCin$*2Ƭ¬Cout&*2L >(:6LW<)02tpMDuL1, iG̕G?NMITvIQ}GRGiGxGG-HZ*2d\GoGGHG?xIT}GOxL.u°GGP:7C  xQKG-G7GMNې:IU}IT RB*! S(t2 TcvO=VHU(Vsp 52Vax 1%WG 52W-, 1 M-4Vs aL >*2 P:!- QLp\X-YWJHYbymZoZ|YYRJYƶYYܷзYthP# . 6{QX .Yl^YYӺǺY)cWY6YCʼYP|rH#T{IUvN#aIU1$#[p.q{YGI%NV%nIT;\&{Y׾վ]&&  {Q.G!H "{|IU "IT G"H("5|IT}IQ1IR3HD"{a|IU .IT GN"Hc"|IT~IQ1IR3H"{|IU ;IT G"H"|IT~IQ1IR3H"{}IU NIT G"H"F}IT~IQ1IR3H"{r}IU bIT G#H#}ITwIQ1IR3H<#{}IU rIT GG#H]#}ITwIQ1IR3G#G#G#G#G$H$d~IUvIT~IQ0H$~IUvIT SH$~IUvIT H$~IUvIT PH8%~IUvHB%IUvIT0G`%Hk%G-ITH& EIUvH&dIUvIQH&$|IUvH&1IU~G&G&G&G'>G)G)G)KGg+Ht+XIT~IQ0G+H+XEITIQ0G+H+XjIT}G+H+XITwIQ0G,H,XIT~GJ,G,G,H,XIT~IQ2G-H -X+ITwIQ2G/-H?-XUITIQ2GW-Hf-XIT~IQ0Gw-N-XIT~IQ2G!G!G!H!eITvIQ0IR2G'H'GITvG('Gu)O0'yL.u#G7'GB'^:M!- QK][GC!GM!Gc!H-:IU}IT ѱG-rR ;S(t2TcvO=ſU(Vsp 52*$Vax 1}sWG 52W-, 1sqM`FVin*2VoutnW >!WW<02[WMFDW1 iGŪG?NMITvIQ}G2GIGXHc ITvGqGG-HȄIU}IT~GGG O4W.uGG^:0F \QKGGGN^:IU~IT R8@~*S(t2TcvO=[SU(Vsp 52Vax 1 WG 52W-, 1 MGuVin*2ZVVout*2W >WW<02M0GW1 iB>G,GNITvIQ}GGɭGحGG-H!MIU}IT~G GuGOIW.uzxGPG[^:mF QKGcGmGN:IU~IT R4ZS(t2TcvO=U(Vsp 52igVax 1WG 52$ W-, 1wuOJRVsv*2W >*2GGCGHGDIT}G#O+W.uVTG2G=^:F QK|zGGGͨN[:IU}IT RP$- !S(t2TcvO=U(Vsp 52Vax 1WG 52C?W-, 1M.[Vs a:(W >*2^./ ғQ*VDX/Y5Y@ZMZZYgLBYtY5-YYYzn[@/YGA1NN1nIT;[Ǹp/Y̸G-4N:4nIT<\ٸ4YY޸RJ[/RYG4N4nIT;[/Z\ 4Y ]44   ČQ.G4H4IUvIT}IQ~G4N4{ITIQ~H5 7IUvG'5N25IT}\(8Y75]-8-8 Q.\ZG.H.{IU "IT G.H.ITvIQ1IR3H.{IIU .IT G.H/xITvIQ1IR3H)/{IU ;IT G3/HH/ӎITvIQ1IR3Hd/{IU NIT Gn/H/.ITvIQ1IR3H/{ZIU bIT G/H/ITvIQ1IR3H/{IU rIT G/H/IT~IQ1IR3G^0Gf0Gm0Gu0G0H0JIUvIT}IQ0H0oIUvIT `H0IUvIT H0IUvIT PH01ѐIUvH:1IUvIT0GX1Hc1GIT}GD4HO4G8IT}G[4Gp4H?5$jIUvGF5GQ5Gb5Gj5>G6GU7Hd7XґIT~G}7H7XIT~IQ0G7H7X&ITIQ0H8 >IUvH 8]IUvIQGE8GM8Gg8Go8KG8H8XITvG9G%9H49XIT~IQ0G9H9XITIQ2G9H9XCIT~IQ2G9H:XoIT~IQ2G:G%:H4:XITIQ0GU:Ng:XITIQ2G/.G^.Gm.H.eITvIQ0IR2G}5G6H6GMITvG6O6W.uG6G6^:-. ǔQKG-G-G.H}::IU}IT ѱG:r_8T`AsvV*2AoutV*2QGL=W *2FXmH{IU NIT GHITvIQ1IR3HΘIU}ITwIQ PGHìKITsIQ G٬HXuITvIQ0G!H1XITvIQ2G8r_;A`QCAsvC*2AoutCx8YSFDmPHΘ5IUUITwIQ Gr_BZ&*2ЦΘAsv(*2L=) *2 F*mCout+ *2SGH{IU NIT GH,ITsIQ1IR3G<HMAIT IQ0HfΘlIU}ITwIQ GIHVXITvIQ0GqHXITvIQ2Gr?GЗTAsv*2@T@ 8Fm|xLk nmL  *2L' *2mgL69 *2LP *2LG *22.L4Q *2xjM@EL/( *2MEE_sv *2L Q *2H؝{3IU IT GH_ITIQ0GGGHITGGHٚITIQ0GlH~XITGHa{:IU IT GmHkITIQ1IR3GHXITGTGH {ٛIU IT GH2IT|IQ1IR3HN{4IU IT GXHmcIT|IQ1IR3H{IU "IT GHIT|IQ1IR3Hɘ{IU IT GӘHIT~IQ1IR3H{EIU IT GH'vITIQ1IR3HH{IU bIT GTHkӝITIQ1IR3G˙GәGڙGHa IU HEIUvIT BH'eIUvITH7̵IUvITHB IUvITHL IUvIT0HT" ֞IUvG]1GdGoGJ>G'G/KGHX[IT~IQ0GǣHԣXIT~G*H9XITGOH^XӟITIQ0GoH|XIT|GHX$ITIQ0GHĤXNITIQ0GפHXsIT|G:GOGgHyXITIQ2GHXITIQ2GHɥXITIQ2GץGH'XFIT~IQ2G7m? 'qB̵Aesnm^J@>seR8Clent 1thCit1(Csvu *2LvT& Ctagw asCtyx 5&LPz lL'{ lCref| aM2ElenGDHD/ IT}HE< IU~IR0IX0IY0H EI ԢIU~G`GNrGeIT}IQ0IR2M3ClenhXM4L4R fHGG< cIU~IR0IX0IY0GLNLeIT}IQ0IR2M@4L-X2PJCstraClenMp4VL3,aH QV  IU|H+QT%IUvNJQ< IU~IT IR0IX0IY0GKHK/ {IT}GPN QeIT}IQ0IR2GFHF/ ̤IT}GFHFc IT}GJHJ/ IT}HJp .ITH)K< ZIU~IQ0IR0IX0IY0GhLHzLeIT}IQ0IR2GLHLeIT}IQ0IR2GLNMeIT}IQ0IR2M2kCsv2( *2VJ`len) Cstr* aa:E_p3 /P3F`33 Q+'Qeabp3YNP} IT|GEHE IT}H'F< IU~IQ1IR0IX0IY0G3FGHHHe*IT|IQIR2HKp BIUNL< IU~IQ0IR0IX0IY0M4Csav>52H+I IU~GCIHSI ѧIT}IQsIR0G`INoI IU~M4/ChvJL2B<M4CavWF2M@5kC_pW#/GMN(MnIT;OcMV(Che\l8Ckey^*2TNGkMHxM ӨIT}IQ0GMHM IT|GMNM ITsIQ|IRMp5Ckeyf*2Chegl8Cvalh*2HN IU~ITHN IU~ITG+NH6N ԩITsGCNHeN IT}IQIR0IX0IY0G~NG3MH>MGCITsGMHM jIQGRNR ITsIQM5Cheql8WSCkeyu*2Cvalv*2G,JHHQW  IU GQHQe:IT}IQ0IR2GQTGQHQevIT}IQ0IR2GRH0ReIT}IQ0IR2G@RGHRKGURHbRXITGRGRHRd !IT|IQ|IR1GRHSd UITIQIR1H6SW tIU PNDSW IU PXDP2 ưQuQiPXoD2Qu?=Qimk]XDD RQuQiND IUs]XGGQuQi ]XG GֱQu/-QiYW]XGGQu~|Qi]XGGZQuQi]XGG Qu QiNL]X`K`K޲QusqQi]XxK xK QuQiGBHC EIT|HKC ]IU~GCHC ITIQ1GCHD ITGDHD ճIT|H@E IU~IQ0GKEHaE (IT IQ1IR0HlE @IU~HxE XIU~HEI pIU~HE< IU~IT KIQ5IR0IX0IY0HF< մIU~IQ5IR0IX0IY0GHHH/ IT}H]H< !IU~IR0IX0IY0HH< MIU~IQ1IR0IX0IY0HH jIU~IQ0GHHI IT}G@KHRKeIT}IQ0IR2G(Sr?_.(`oAe*nmAsv**2OhgܶClenG1CiG1=7O)CsavJ52GH ITsIQ}IR0cIUvGxN ITsOClenR1CiR1MEChe[l8>:Cval_*2vtGH) uITsIQ1G5HC ITsIQcNIUvGH ַITsGN# ITsN IUvITsIQ0d^$ *2*esaEv GDT4jD(nEobj *2D69 *2DH *2D *2D= *2D4Q *2DY *2aǸE_p#/aٸE_p/aDPGaE_p/fEcur*2fE_p  /fE_p /g#G`=LTpjTnjVsv *2Vseq F2Vmap L2&Vi Vid aWLWH X2WY X2eM@VptraK A Venda  W8zm _ W  M@WC  W8Fa o N%s IT0Nr IUvM0AVf) ' Hu IUvNu IT0MAVptraQ M Venda  W8z!WzMAWCW8FaC3Nzv+ IT0IQ:H v IUvGvNv7 ITOvPe>?1hlenHv 0IUvG wN%wD IT}IQIRIX0OyU>?1hlenHz IUvG1zNIzQ IT}IQIRIX0M`A`uvzL?GesHrs^ =Iaw-G/wH:w7 bIT}Hy zIUvGyHyk IT}IQ~IRGyHyx ѽIT}GP{H[{ IT}Gh{Nv{ IT}OzF`lenLT;a)%Hz mIQGzNz IT}IQ~MBCcv*2e_Csub*2Cpkg aMpB.LP#*2VPa E_p//PwB/mQQbBYN~} IT~GuwHwIT}IQ~GwHwɿIT DIQ4GwHw IT}IQwGwG~N~eIT~IQ0IR2MCbC_sv7*2icL Q7*2G.xH;xIT~IQ0GExGaxG}H}ITwG}H}XITwG~G%~H3~)ITwIQ0GE~Gq~N~eIT}IQ0IR2atE_pB/]xxBQ.DBGwGxGxGxGxHxGIT}GxGxG yGy>G9yG.}G6}KHd}W |IU GS~He~eIT}IQ0IR2G~N~IT IIQ6Oq|L-OakgLPaH| =IUIT PH| aIU0IT H| IUsIT SH|{IUб(}0)(ITsIQ}G|N| IT}IQ0M@CCpkgYaH{ .IUwIT -H{FIU}H{eITwIQ~G|H!|= IT}GL|Gc|H|IU}N} IT0M9Cspk52+Cvall*2L-maMCLnaM9L]Ar_C9GcGdG"dG+{G3{0 HcIU}GcHcITwIQ}Hc IUIT PHc IU0IT GcGcGcGcG:dG]dGgdH{d IT IQ2GdGdHd IT~GdGdGdGdGd>He 5IU}IT IQ7H.e [IUwIT SG {H{d IT~IQ~IR1H{ IU}IT vG}G}KM@; C_p/GLgNYgnIT;Mp;bCa*2 L,igaLE_p/]gg Q.H{g IUvIT~HgIU|GgHg IT}GgHgGIT}HgpIU}Hg9IQ}i|GgNg{ITwIQ}M;L-aLaH3h IUIT PNDh IU0IT M?Ckey*2>:Cval*2ztL3Naa5E_p/Mp?L- aL aUMHfo IUIT PNwo IU0IT ]#o#o Q.Hn IUvIT0IQ0HnIU|Hn ?IUvIT1IQ0HnWIU|GoH o|IT}G pMp=Csp52Ckey*2Cval*2L3Nag_M=FL]A_GlGlG mG0tG8t0 M >L- aL aogHq IUIT PNq IU0IT GzlHl IUvIT0IQ0HlIU|Hl (IUvIT1IQ0Hl@IU|GlGlGlGlG"mGEmGOmHcm IT IQ2GjmG|mHm IT~GmGmGmGmGm>GmGpG'pKGtN!td IT}IQ}IR1Mp>Ckey'*2Cval(*2 M>C_p)/D@GMnNZnnIT<a E_p+/Pn>+2Q.|zH*n TIUvIT0IQ0HG(G0KGzH nITIQ2GHXITIQ0GH XITIQ0G H-XIT~GHHUXIT}IQ0GoHX:ITGɌHތXaITGHXITwIQ0G/GGHXITIQ2GHɍXITwIQ2GHX%IT}IQ2GG N2XITIQ2?Vo;Aesnm.q.@>seU/G/Clent 1//Cit100Csvu *2.2 2LvT22Ctagw a+3!3Ctyx 533M0Clen44M 1L4R f44He>< IUvIT KIR0IX0IY0G>N>eITsIQ0IR2G>N>/ ITsM00vCsv2( *244`len) Cstr* aD5>5a0E_p3 /P=03 Q55Q55b0Y 66NVB} IT}G=H= ITsHH=p IUHu=< IUvIT KIR0IX0IY0G=Gy>H>e@IT}IQIR2N@< IUvIT KIQ0IR0IX0IY0M 2Csav>52l6h6H+@ IUvG@@HP@ ITsIQ}IR0G^@Nm@ IUvMP1GChvJL266M`1CavWF266M1vC_pW#/D7@7G@N@nIT;O#AZ3Che\l8~7z7Ckey^*277G,AH9A ITsIQ0GEAHPA IT~GjAN}A IT}IQ~IRM1)Ckeyf*2 88Chegl808.8Cvalh*2[8S8HA IUvITHA IUvITGAHA IT}GBH&B ITsIQIR0IX0IY0G@BG@H@GNIT}GAHA uIQGhBNB IT}IQM1Cheql888Ckeyu*288Cvalv*219-9GM?H]? ITsIQ1Gi?Ht? 5IT}G?H? `ITsIQ}H? ~IUvITN? IUvIT}H> IUvIT IQ1G?H ? ITsG?H*?#  ITsG?H?# 2ITsN?I IUvH<< IUvIT KIQ5IR0IX0IY0p<IUvG<H< ITsG=H=/ ITsH=< IUvIT KIR0IX0IY0H? <IUvIT IQ1G@H @ aITsGy@H@eITsIQ0IR2GBr?^3&@:Ae*nmo9g9Asv**299OphClenG1;:5:CiG1::O)CsavJ52::GH {ITvIQ}IR0cIUsGN ITvOClenR1;:CiR1,;$;MpCChe[l8;;Cval_*2;;GH GITvIQ1GH( rITvIQc3IUsGǀHҀ ITvGހN# ITvHi IUsITvIQ1HP  ITvIQ0pIUsNW IU (dP* *2esaEv GDT4jD(nEobj *2D69 *2DH *2D *2D= *2D4Q *2DY *2aE_p#/fE_p /?52~[Asv *2;;Ci _<Q<Ech lLS X2=<LR- X2h=^=Cpos a==Cs a>>Clen >>L   ??GN/ ITsd$sa^ess)aEit Eoutu aEchv lDSw lDR-x X2Eposy aElenz g$GS mTpjg?U?Tnj[@%@Vsv *2BBVseq F2F FVmap L2KFGFVi FFVid aFFM@8VptraGyGVendaGGW8zKHCHWHHM8WCbIXIW8FaIIN/\ IT0H[ IUvG{\N\^ Ia-M8PVfJJG\H\^ $Ia-HX^ <IUvNg^ IT0M8-VptraJJVenda;K/KW8zKKWzAL9LM09WCLLW8FaMMN]+ IT0IQ:H]  IUvG'^N2^7 IT~Ol^M>?1hlenH^ zIUvG^N^D ITsIQIRIX0Mp9J>?1hlenG^H^7 ITsH_ IUvG_N_Q ITsIQIRIX0O_d`uvzL?MMH_ IUvG_H_k ITsIQ~IRG)`H4`x ITsGC`HQ`^ Ia-Gp`H{` AITsG`N` ITsOVJ`lenLT;aMMHW IUsIT~IQG*WN8W ITsIQvM 6*C_p/5N1NGTNTnIT;MP6Ca*2oNkNaXE_p/]TT Q.NNHT IUvIT~HTIU|GTNT{ITIQsM6)C_p3/NNGbWNoWnIT<M6RCkey5*2 OOCval6*2DO@OanE_p@/]WW@Q.|OzOHW IUvIT0IQsHWIU|HW IUvIT1IQsHWIU|GWNW ITIQ~IR0IX0IY0^X6QOOQOOX6YPOYkPcPb07YPPN[P IUvITIQ0^Z7hQPPQ)Q'QX7YTQLQYQQb7YRRNd_P IUvITIQ0GITHWT{ITvIQsHbTi IU|ITsGUHUITHV IUsIT HV  IUsIT GXH'XGITGXHXrITsIQ~G4YH>Y IT0G^YGjYHyY ITsGYGYHY ITsGZHZ'ITsIQ~GNZGZHZ_ITsIQ~GW_rq9a~>Tea/nmAR9RTstra8aRRTlenaB,S"SWbTSSrCWAf SSGH /IT}IQvIR|G q+)\PATe\/nmTTTstr\8aET=TTlen\BTTW]T U UGvs IQTIRQIXq*W>uTeW/nm6U2UTstrW8awUoUTlenWBUUWXT?V=VG6sN IQTIRQIX0qxHO1TpO*jhVdVTmsgO3aVVNW IU IT IXTgUF jPTpF5jVVTaF>a6W0WW!DGjWWHcT[IUvGtH ITvIQ|IR0GH IT IQ4IR0H ITvN IU ITJgR5*2`SfTp5'jWWTv50G@X8Xhobj7 *2PGSHSIUsITvIQwGSrdA7X2eselen/Dz ExfDT1kXm(t2lsv*2fnrc1tY*2:lsv*2t51Xm( t2uGamgmv =QXXQXXY#YYYYYX -YZZN P IUsITvIQ0v:)Q 3Z)ZQZZwY!([$[Y-b[^[Z9YE[[j;; rQ.[[[Q0YV\ \GP;N];nIT;H:TIU|G:H:7 1IT~IQ|IR}IX IY0G;xA;{WIQQGh;Hs;|IT}H;TIU|G;H;7 IT~IQ|IRIX$IY}G;ry55I`yh/h/JyJJJ/ y))JyQQJ yQQJ yCCJz ySSJby!Y!YJ y::Ky99J yJyRRJy$$JQy+8+8J y..JB yF yFy##FyFy  FyFyFy<<FyWWFuy[[Fy**J y&&J yLLJy5G5GJ~ y4S4SJ z {Jy\J\JJ{99Jy==J y,,J yr=r=Jbyd=d=J]y22JyW W Fy''Fy Fy1 1 Fy Fya a Fy,B,BJd y! ! Fy FyFy77JyssFy??JF y99J y F{99JyTTJyjZjZJ{CCJ{CCJy`Y`YJypFpFJh ykRkRJyY Y FyBBJyXDXDJy??JyEEJy%%Jy,7,7Jyq?q?Jn | tag:!perl:}GGM|glob:|code:| scalar:yA A J` y(V(VJ y22J$ yFFJy B BJ y F{YYJyd d F{llLuyF{Ly++J yP3P3Jy''Jy77Jye@e@Jy@@J y55Jy Fy88J y((J y?9?9KP{NNK }NwNMyEEJy22J{''''K yFyFy66J{yJJJ y/+/+J{OOJ{XUXUJFyPPJ( yFt{V V E#%{u u E yWWJ { E"y..J{))% yhhJ y44F yF~% : ; 9 I$ > $ >  I&I7I &  : ; 9  : ; 9 I8 : ; 9 <I!I/ 4: ; 9 I?<!I : ; 9 I8 > I: ; 9 (  : ; 9  : ; 9 I : ; 9 I : ;9 I8  : ;9 I8 'II' : ;9  : ;9 I! : ;9 I" : ; 9 #.?: ;9 'I@B$: ;9 IB%4: ;9 IB& : ;9 ' U(4: ;9 IB)1*B+1,.?: ; 9 'I@B-: ; 9 IB.4: ; 9 IB/ : ; 9 0 : ; 9 1 : ; 9 2 : ;9 3 44: ; 9 IB54: ;9 I61RBX YW 71B81RBUX YW 91:.?: ; 9 'I 4;: ; 9 I<.?<n: ;9 =.?<n: ; >.?<n: ; 9 % $ > : ; 9 I 7I&I$ >  I  : ; 9  : ; 9 I8 : ; 9 < I!I/ 4: ; 9 I?<!&I> I: ; 9 ( : ;9 I : ;9  : ;9 I8 'I> I: ;9 4: ; 9 I?4: ; 9 I.?: ;9 'I@B: ;9 IB : ;9 IB!4: ;9 I"4: ;9 I# U$4: ;9 IB%1RB UX YW &1B'1(B)1RB X YW *1+1,.?: ;9 '@B-4: ;9 IB.B1/B10 1 24: ;9 I 3: ;9 I4B15 : ;9 678.?: ; 9 '@B9: ; 9 I:: ; 9 I;: ; 9 IB<: ; 9 IB=.?: ; 9 'I@B>4: ; 9 IB?4: ; 9 IB@4: ; 9 I A.?: ; 9 'I 4B: ; 9 IC: ; 9 ID.?<n: ; E.?<n: ;9 F.?<n: ; 9 G.?<n% $ > : ; 9 I$ > &I I7I  : ; 9  : ; 9 I8 : ; 9 < I!I/ 4: ; 9 I?<!I : ; 9 I8 > I: ; 9 (  : ; 9  : ; 9 I : ; 9 I : ;9 I8  : ;9 I8 'II' : ;9  : ;9 I : ;9 I! : ; 9 "!I/#4: ;9 I$4: ;9 I?%.?: ;9 ' &: ;9 I': ;9 I(4: ;9 I).?: ;9 'I@B*: ;9 IB+4: ;9 IB,4: ;9 IB- : ;9 . : ;9 / U0 112B3 U41RBX YW 51B64: ; 9 IB7181RBX YW 91RBUX YW : ;41B<1RBUX YW =1B>1?.: ;9 ' @4: ;9 IA.: ;9 '@BB: ;9 IBC1DB1E.?: ; 9 'I 4F: ; 9 IG.1@BHB1I41J.?<n: ; K.?<n: ; 9 L.?<n: ;9 M6N.?<n% : ; 9 I$ > $ >  I&I7I  : ; 9  : ; 9 I8 : ; 9 < I!I/ 4: ; 9 I?<!I : ; 9 I8 > I: ; 9 (  : ; 9  : ; 9 I : ; 9 I : ;9 I8  : ;9 I8 'II' : ;9  : ;9 I : ;9 I!.?: ; 9 'I@B": ; 9 I#: ; 9 IB$4: ; 9 IB%1RB UX Y W &1B'1(B)1*.?: ; 9 '@B+: ; 9 IB,1-B1.4: ; 9 I/04: ; 9 I1 U23.?: ; 9 'I 44: ; 9 I5.?<n: ; 667.?<n: ;9 8.?<n: ; 9 9.?<n% : ; 9 I$ > $ >  I&I7I  : ; 9  : ; 9 I8 : ; 9 < I!I/ 4: ; 9 I?<! : ; 9 I8 > I: ; 9 (  : ; 9  : ; 9 I : ; 9 I.?: ; 9 'I@B: ; 9 IB4: ; 9 IB : ;9  : ;9  U4: ;9 IB 4: ; 9 IB 1RBUX Y W !1B"1#B$1%B1&B1' U(: ; 9 IB) : ; 9 * : ; 9 + : ; 9 ,.?: ; 9 '@B-1..?: ; 9 'I 4/: ; 9 I0.?<n: ; 162.?<n: ;9 3.?<n: ; 9 % : ; 9 I$ > $ >  I&I 7I &  : ; 9  : ; 9 I8 : ; 9 <I!I/ 4: ; 9 I?<! : ; 9 I8 > I: ; 9 (  : ; 9  : ; 9 I : ; 9 I.?: ;9 '@B: ;9 IB1.?: ;9 'I@B: ;9 I4: ;9 IB: ;9 IB1 B!.?: ; 9 'I@B": ; 9 I#.?: ; 9 '@B$: ; 9 IB%4: ; 9 IB&4: ; 9 IB': ; 9 IB(1)1RB UX Y W *1+1B,1RB UX Y W -B1..?: ; 9 I@B/.?: ; 9 'I 40: ; 9 I1.?<n: ;9 2.?<n: ; % : ; 9 I$ >  7I$ >  I&I  : ; 9  : ; 9 I8 : ; 9 < I!I/ 4: ; 9 I?<!&> I: ; 9 (( I> I: ; 9  : ; 9 I8  : ; 9  : ; 9 I : ; 9 I : ;9 I8  : ;9 I8 'II '! : ;9 " : ;9 I# : ;9 I$.?: ;9 'I@B%: ;9 IB&4: ;9 IB'1(.?: ;9 '@B)1RB UX YW *1+B1,B-1.1/: ;9 IB04: ;9 IB123: ;9 I41RB X YW 51B6.?: ;9 ' 7: ;9 I8B19: ;9 I:.?: ; 9 '@B;: ; 9 IB<.?: ; 9 'I@B=: ; 9 IB>4: ; 9 IB?.?: ; 9 I@B@: ; 9 IA: ; 9 IB1RB UX Y W C UD41BE1RB X Y W F1RB UX Y W G.?: ; 9 'I 4H: ; 9 II.?: ;9 'I 4J: ;9 IK4: ;9 IL.1@BM.?<n: ; 9 N.?<n: ;9 O.?<n: ; % : ; 9 I$ >  $ >  I&I : ; 9  : ; 9 I8 : ; 9 < I !I/ 4: ; 9 I?<!I : ; 9 I8 > I: ; 9 ( 4: ; 9 I.: ;9 I@B: ;9 I: ;9 IB4: ;9 IB.?: ;9 @B: ;9 IB4: ;9 IBB1 : ;9 I!.?: ;9 I@B"1#1$.?: ;9 I@B%.: ;9 &: ;9 I'4: ;9 I(4: ;9 I) U*1B+,.?: ; 9 I@B-: ; 9 IB.: ; 9 IB/4: ; 9 IB0.?: ; 9 @B14: ; 9 IB2B131RB UX Y W 41B5 U641B7.: ; 9 I 8: ; 9 I94: ; 9 I:4: ; 9 I;.1@B<1=1RB UX YW >.?<n: ;9 % : ; 9 I$ > $ >  I&I7I &  : ; 9  : ; 9 I8 : ; 9 <I!I/ 4: ; 9 I?<!> I: ; 9 (( I : ; 9 I8 > I: ; 9  : ; 9  : ; 9 I : ; 9 I : ;9 I8  : ;9 I8 'II '! : ;9 " : ;9 I# : ;9 I$ : ; 9 %4: ; 9 I?&.?: ;9 '@': ;9 IB(B)B*.?: ;9 I@B+.?: ;9 'I@B,: ;9 I-B1..?: ;9 '@B/: ;9 IB0 : ;9 1 : ;9 2 U34: ;9 IB44: ;9 I 51617.?: ;9 'I 8: ;9 I94: ;9 I: : ;9 ; <4: ;9 I= >.?: ; 9 'I@B?: ; 9 IB@B1AB1B.?: ; 9 'I 4C: ; 9 ID.1@BE1BF41 G1RBUX YW H41BI 1J 1K 1UL1M 1N41O1RBX YW P 1UQ R.?<n: ;9 S.?<n: ; 9 T.?<n: ; % $ > &I: ; 9 I$ >   I7I  : ; 9  : ; 9 I8 I !I/  : ; 9  : ; 9  : ; 9 I< : ; 9  : ; 9 I'I4: ;9 I?<&4: ; 9 I?< : ;9  : ;9 I8  : ; 9 : ; 9 I: ;9 I: ;9 I : ; 9  : ; 9 I 8  : ;9 ! : ;9 I 8 " : ;9 # : ; 9 I8 $ : ; 9 I8% : ; 9 I8& : ;9 I8' : ;9 I8( : ;9 ) : ;9 I*5I+!,: ; 9 -> I: ; 9 .( / : ;9 0 : ;9 1'I2 : ;9 3 : ;9 I8 4 : ;9 I5!I/6 : ;9 7 : ; 9 I 88> I: ;9 94: ; 9 I:I;<> I: ; 9 =4: ; 9 I?>4: ; 9 I?.?: ;9 '@B@: ;9 IBA: ;9 IBB.?: ;9 'I<C4: ;9 IBD4: ;9 IE4: ;9 IF4: ;9 IG1H1IBJB1K.: ;9 '@BL4: ;9 IBM UN1O P1RBUX YW Q1BR.: ; 9 '@BS: ; 9 IBT: ; 9 IBU.?: ; 9 'I<V4: ; 9 IBW4: ; 9 IBX UY41BZ41[ 1U\ 1]1RBX YW ^1RBUX Y W _.?: ;9 'I@B`4: ;9 Ia b 1Ucd.: ;9 'I e: ;9 If g.?: ; 9 'I@Bh4: ; 9 Ii1Bj1RBX Y W k.: ; 9 ' l: ; 9 Im: ; 9 In4: ; 9 Io.: ; 9 'I@Bpq.?: ; 9 '@Br sB1t.: ; 9 'I u.?: ; 9 'I 4v.1@Bw1xB1y.?<n: ;9 z.?<n{.?<n: ; 9 |6}.?<n: ; FG /usr/include/bits/usr/lib/gcc/x86_64-redhat-linux/8/include/usr/include/usr/include/bits/typesbytecode.restring_fortified.hstddef.htypes.hstdint.hstruct_FILE.hFILE.hstdio.hsys_errlist.hsyck_st.hsyck.hgram.ystdlib.hstring.h mK 0d g;[UM [9=  J {t<g=XX N z K= Z{f .J. X{K J JK gzJyfJt}K>uW=kf L }  I=5sJ  tpJ (t _ ; =  L wJgtJ}< J Jq}J Ko<lJ J"4J"X4<; Jkt < # JJJK os Pt 8xJ.9 ?U Y; KuJt Z(JK " JKX~J J3X ƒ <2 K W [JK " JKm}J /JJHX'< .? ?   <uJ.8 ?U Y; KYJ.6 C.cJ ~<JK vK Iu }JK " JKm~J /JJHX'< .  rJ .@  J h:hY AoJ *{JJ<= K{ ~*E.8   \9=g= $ {J|Jf|< X Y<ffX | JJJKI<= t JI<= >JKyfJ| ~JJ<~KWK Xt{JJt1J K0: Y9J KJ K zX KY.Jt JK  JJKJ{ f! HJ y K   { K<fX ~JtoXXuX XXC/ Jt{ g;X%t  X{ J ~_y<C]A fY=>JX*B*zXX(:K*+==}X .'mXLWK(X<<~Jt ~XtXXtX}"<*X*:Y'%*K%;K* ~(JK ~+<=~ N8J ~J<~ < ~XXJtnJtJJt zXX~LWK(X}S& ~$JK ~'<=~ =3< ~X<~stdlib.hstring.h }KK<XKM#G?9MtZ   & A I#F+/#;1=;< u=GJ-=G;3KG;8J<< ?IJ=I;:<< JJ K z l n=X  w.&<#t+/#;K;=W X K Y\=X  qf&<#t+=#;1K;J =LGV-=G;KG;8J<<   =X ft :!K@Y dL K  !e JXN'I Jf J01JJX Y J   # J   g< GJ=; K<JJ=s K u w   JX g< JJ uJ%X g<;K;=- = J fi ?K  t< JX gJ <J g AAEK 1N  @J Z J Zu J Zu K! JujK! JujK fZ .JuK r>ft<3"u"t!e[tnt<nJ.q<R$"K"t"t!u < u 'K  f   f]t`uX yX  g t u tX K tuX~K " gX=tvQ qttY;uY: tKKKKN @Y" I ZX=X @K !I=]=KK  z K~N Z5 J X@<JgKKX sf<MK 1J Kf=<f} KX<. oX!J*Jt= } f;}x  gJ. KZ  U? /f%X5 t= gv St7I  J    }X  =} X  ( >f JY! R } =} }  ,< ,f YC!1=    X | =| X ( >f JYfe)KMX<<X<Ju  9? 2<. JX. [t<  =Y J5t9JJ <fgAWf= J=* 8t JY e7 J?R<KvYe=.Xu .R < yt: >*./X Y .J-X3<7<'X .K2 < >  ,X (K_yQ/fKIY z.I\  >f @f-gnJKf-dJ"8 u2 J2Y3G  >&IA!XJ.of @B< ;=; K"f/ J %J nJn<6  af<y gJ<  < nX< < <.&pf <$I? <DXzXK  +KWgw<< [ X$ : f 2 T .gk<kX<XX ..$l ; MJMDJD< K2pT7NY ;  o  tJ J   oIu ..Ir% K[S 4z<zz< JrtXOtY  2<< $J P2Iu<eY<<  91<   P Z ?t%f f<< << << << << << << << << (K[S 4z<zz< JrtXOtY  2<< $J P2Iu<eY<<  91<   P Z ?t%f f<< << << << << << << << << (p@XY =;Y    tX =  [  t+ ff~ Yh >X ,kpKXY X Y < YJg< 6 fX = tLJ9FJ[f X f /X.q Yh H>J dvr t|K<Y;=\8YtM  =[d  1F K<: hP<;f &XJ4+XbXP*< X7Y\  W=[dM7e N < .X9 fJ ' ! X  H v . d R &W-K X  , -< X  3f !_X .  &Xt.lf  g v !%" et 66-X Z- \sP><K=Y;=_yJC3!Cff \ ... a= ...;t<<) Y=tK=Y;=_yJC3!Cff \ ... a= ...;t<<) Y=tK=X=< <K=WiD>d>X<.I ^<# ! < (   > < %! #  2L.)!.9tPJ<g<"hs-=,W"5"')Y"9>"J9X=4<A<3X")<KE`Y."hg-K,W":<KJ=Y;=Y;= J= .\ [=J< q. v=zq< q. =L%t yJ       J   LLJ OJK Y;<W KvX    X vJX  u   J  -J3 YJ \ K'; g'- < YrX< L^ /usr/include/bits/usr/lib/gcc/x86_64-redhat-linux/8/include/usr/include/usr/include/bits/typesgram.cstdio2.hgram.ystddef.htypes.hstdint.hstruct_FILE.hFILE.hstdio.hsys_errlist.hsyck_st.hsyck.h { {.X {XX {XtK {t {{ {<' {JX'Z{ J {JX  {JX  t  tZz Xtt y  y z Xtt y  y X Kre<yQYs=XM .<3tMt3tMJ ty  rL JX<&fJ  r @JJ uJu;JJJ<tX  usY G[ tf XKfyx t.X =t)<tY` hrvO yf O z<B  f r    Z =3t).  Jx Kj  { <sJ Jv. < fw<y$   r yt(J(<. f/ tzXJr  rt tr  x IKrJ `  Mztx xtz<3<)   r   rt  r x xtXx tX.X t(w ttXJw t  <zy yt|{ . {<.XX(t tJ(X{ 2t {JX/({ { {JX W'<z$X&~XgXw w XXX&t.X&cX$\g$_#ɑ'$tX&X<t+J&t X |(X$]X&eXg$,X&~X<t+JtuXsK!J.$X#,JJ~X!h ~X+).> zX+).>X&X$fX <oKs  st  s . r  rtX t Yptt867}X!tJX / /usr/include/bits/usr/lib/gcc/x86_64-redhat-linux/8/include/usr/include/usr/include/bits/typeshandler.cstring_fortified.hstddef.htypes.hstdint.hstruct_FILE.hFILE.hstdio.hsys_errlist.hsyck_st.hsyck.hstring.hstdlib.h  K < Z<>yX XZXV$.ff< Kt; ZX X J \  L X h[ nhYe<=  X  q Y\  L X h[YJ  vfX< x ?q  J J v M  ^Jmt\LK ( s&$\K I = ZX Z K .H;K -X KK;!;g[ u<D=l x<r X X \KX f=ba ` `xff X J.K0 /usr/include/bits/usr/lib/gcc/x86_64-redhat-linux/8/include/usr/include/usr/include/bits/typesimplicit.restring_fortified.hstddef.htypes.hstdint.hstruct_FILE.hFILE.hstdio.hsys_errlist.hsyck.hstdlib.hstring.h -K  v.x   ,ifJP s i = v ~Jt n IP ~  Vt u K   uJ t uK \  t tt LX  ~ ZK  YK et J t X tX3   tJ t s+K U+t y{  J st(K  U>K   tJ t t   tJ t t t OIK ~ ! IyJ ~t `fK   uJ t t ~ WK ntwJ X   sJ t sttHK J }8tj6XK v tR v ^."t g TJ t XuX8K ~.t ~K=# }Jt<fK ~ /<XJg<o<< v  tJ t t   tJ t t  sJ t s  tJ ttf ~XKJHK | HNfJK u t u  tJ ttf p   tJ t ut)K ~t h0~t } J/<J ~Xy%K= ZKK | tK= | XHJ uXK }Xt K }tRJ  qK> |J  dK< J  YJxX< tf    ~Jt~f  g<J XK u t ts y |Jt         K { t9J {t               K=  z + ~Jt~f   IP uf< XJK JK- t   uJ tu.  JK{K= N    zJt  K yt yt    IK~  zK<JX   ~ yt }<            JK<<8HJ }. xfJJ w<t    K xt xt    IK   wJt         JK.HN<l<%X w fqKv(K fwt":> Xut Iu [AJJJ   JXX35: j)XL . 5XN ..K0.lt z1PX1; =1X =Y Y > Y >   ; KX' Lf mfK@ X s< J       K     h   b  IK xK ~$r ;rJ<  bf  IK vKK{<~$J<$KJZ<HJX<oJF aJ<9=^  V <* V<8)U *< VX%X        KJmJQ TJ*+< U<(< =Q X -M&<Mf&< Z&: >X0 '<t~tHKGK 9GK< | JK J/< Jtt<| JK JK JK JK JK JK JKi "f  ^fXHJXK        K*~Xt~tKK~string.h K  1XY = u K $U e=  Y WK Z,L YL K $U e=   ZVL YL K $ T = h YL  K 1+ Y J I= XfK JK J= JJJ ..oK Y I  X `KI= ZXX# J J fY JK J= JJ J.nK ;  =X= -X 0KwJK    << L    << J . )&Y=&I  ?K  KJ Z = Y(< L  Z t Z  H<< 8 =D fXJ;>t k X>X. d< XeZK~%7BzJ  uu  mf KOfKKK t\=W==Ytf EXX K tY  N  @t Z t Z  KKK*t=2K+t=2KKKKK=2K! JujK fZ .Ju~K  f   f]t_uX zX  g t u tXuX*fK " U= Xw<u ywYJK r>ft<3"u"t!e[tnt<nJ.q<R$"K"tu < v  /K":>  tZX% ~N  @t Zu" H ZX=X -K>Yuu= .tL <$KZYu=K9uKf..tLfJ@K; =X= -X K  NJ[t1 Jf .X.n<. v<} fX    K K K KMJ .\Ku z K K KLuK< G1 ` Yt. =  ut Yt. = fK<  Yt =  o  Yt = K ?Y = K| fI |<. |JtXX9 K92K9 O <K gW Y"<< Y  fxtJ .wIJ IY vX   /usr/lib/gcc/x86_64-redhat-linux/8/include/usr/include/bits/usr/include/bits/types/usr/includesyck_st.cstddef.htypes.hstruct_FILE.hFILE.hstdio.hsys_errlist.hsyck_st.hstdlib.h K 5.K  < JH eK - Jf\KOK~ =~JX<-ft"!K/ ,K.tK= "J XY=K<..~  {qfK MhVX<-\ft$ X$\ ;=Iu$XL<.Qf {U0K  K K /X K K /X 0Kx <K KY%&<|=;X K2*<<=-/JXJ J J\ WXJM ...wX z 4 ...fK\*$<<=e/.J J J]K HZ .J.yJfJJJ -Xf.J.ytK1+9?<=;=< tJt<J  ...- fK >XYrtKWM/{ #K ;#<K= vJY JXYY  XfJoft cJ. Xo<TY tK 3)<<=f >  X/J=YXJK K;KY p X ..tX JJ tX. ..uJJKY X"JKK ;KY ] ..ftX !K2*$<<= f JXJX J X r . ...wY JK X"JK KWK ...qX r .q ...K <I= JYXJ\LK;KYoJmJ%V&JfX .J.mt;KaKM >Y=X !O /usr/include/bits/usr/lib/gcc/x86_64-redhat-linux/8/include/usr/include/usr/include/bits/typestoken.restring_fortified.hstddef.htypes.hstdint.hstruct_FILE.hFILE.hstdio.hsys_errlist.hsyck_st.hsyck.hgram.ystdlib.hstring.hctype.h `  Jst Jg=   cJ JJJK LJfrX   . yJK   Jg>stK$ .vf K =W[ +\rXK X `yKuUZ=ktw* XJ(<ft ~ ; =  L wJ~tJg }J$vKfJJf {JJKfz  J'U {KJ< ~J}J*~  /g ? vJ J<K ">K #vJ JvJ'f ~KJ< J}J 7}J*~  g0 f=< ? vJ J<K $JJYtJfJJ ~J, sUf}X  tt  uJ J<=u2$I2K"IK#fp<]# XpJA t.!$#J!X0X 0T }}J -JJKzJfJJ< KK>J zJf }6K  J< yJJK JKK IJJK g JK g JJKm~Ȃ ~ Ju< JY W=K z>X [e<K K5 JK  J>YJfJJJ L&Rx<RYt T,JJJK K {rKfJJ  sYfJJftJ<  JJJK } JK~t q JKe{ttX< J}  | JJKm/U  JK t> JK  f ~ KXy   wXwJ J+fX{ {<JX JJYxt)fX{. {<X?X*w~ wJYtȞ t\!2L!:Y/-!K20J3Y z<0<!=z V@J zJ<!z  < zX!XX ~ JKtJz. f?tHZh? 4 @Ig !P!'*eX4IK+_#*JY !L1);!=1'.<*f<)J X%0J= $".Y&fJJf<.J<{t;")t   k J ;XJ JKXt  JJK_s  J0 0u&JIJB XUq$=WY X.,/Y z<,<=z E z<xX<zXX <t J KW X *tJ tJ*Y%s=WY8 8K  JtXsCJh<.* J!+JJ Xؐ<=!zX3);!K3).f.ttXtsX*(t*v!XfBX<*!Zf.*(tMtfXXtX JK   XufX*}J!X*!KfJJf<.JX~CJhJ!ւXJXt XXLuIt*]yX! B<*!htX.XX;tfX}JX!t  JK X w< B.&hh;J>JY&fX.f .J<X^vt",|XfX<JJ+XtXtA PKA1A9[X/;@XKJ8ZK8K8=XG KG..X= -XG PKG..X= -XG KGu{X .X  . Y+XX+.X>X .X$K w  X  <  Y  t \ <  X IY.  xXt#XzJ4  x   1-35"} M -K +M -w <KfJuJ . Ks .XXX#  .J < XJJ<f x./5.(7 t/Kz<| . Ks .XXcX#  j.J < XJJ<f   YXX.) Yu X N/X{YK <w)  Xt X  { t).,/'kOtt{ ! -=X2f@JXf()< P     X{  .ZteX<Xf.2)f2/2{ . AKz<X2 L1YKLI J!"+H"L#N"F@#XI=#X#e=Y*w! t=f7YqvK=<=&zJX= Y98<tK ~t+0)#X/!X@"#Z"H>#X#IYJ*yt+!J f!;$X!6Y*w+!J#=#IY'IK,30fXxX$f!X"} ":u  J y GK' IK'Km ? J ] X = ~%      6  J~ >z   z  "fy ft yJ -ty X XYYJ'u=/~0Y< <( 0yY; 28 @ X    J  K G J'YO(Gy <y y y y [KXJY ~f%u==-<=&&zJ= uY98<tu@0J!"+:"L#N"8@#X;=#X#e=Y*w! t/ ~<,X J E0 H hE XJ2K}(y ty YY  taX  K 0 Y"#J < X _E XJ,z(7(fG[Ep#X/!X@"#L":>#X#;Y<*yt+!J f!;$X!|Y*w+!X#/#;Y'IK,30fX%$$.%vJXJ<  f Y;JtXX;KW>;=X==JK&J5?"<'JwX^$e$;=eX zt XXu& 5'J" YYZXJ" L$f!X3 X"X.X8OX XJXJ3wYY  yE " J.Z< s%.  /< ~u;JX ) J XwJ <X}YK0)1JJ f  }<. XXXXXXXXXXXXY=u-JX .Ju=X wJ <X"|5X.6JJ |)Kg=JJ=   <   C~%Z6 X#~6X=J~t*=JJ=   <   G$(<  ~HLKuXQK*ֺHY#IKstf#<#T*91  sg*fXj*fXJ tfY-J=W>v,>X,>V =&X#<LMu *~< st< J  J  | <|J WKX/  = -tK X= ; <u =   Y<-X=<< OuYX`J|.J x  /J|t <u;.X ) J\*>X";="YY0Y}YY0)1JJ  [=X>YHZj.2Ji'#X(|<KJ=   <   N~<u;t .JuKX*>X&;=&YY0||JX5.6JJh"="X>Y"H"Zj26Ji XX |X #<.X<9X*($XDJAXs==X+KJZXJ tfK-JKW>v,>JJ,>V? . XXX"="Y"s=t-<X||JX!-=XJ=X Jtw. JX}YY  < .=X> X L X7J}XJ)<*3 <|JXJ=   <   N~XfZXfX=X> XX M XX 5 ytX $~JKuIfKzK*ֺ.HZu#!;YYKsXt5fX#*91 XXJ7 K  }X X~ XfXgJJtK#f;tzn=X>&X"N%tfXJX<}X7SJxX%X'X*++X&J&X&.. J X tSxX$K$z sK.$t  o < mJ < = J[[#tf+Xt<X = JJ = U@8X YJ> =<KX of JJ5h1JLAX   K o<L 3S "w Xf <  <    h X>#HLNF@X"y vX  ]. u; =< =KY" Jt tyXHfKHY=., .% u' u' .% v+ u -YX$ Wut  . X C C . X*K*u*:*g**/X/<<l  *<*/*  **=**v*V*L***=)*X)J )X,-)-0,4X6X)7f,9;>?XZ]ZYZ **Y***v*Y**X****w*c*M*Y****J?<.G N X < XJXXJ JX<C = C < XCJXCXCJ  X/  )   = XJdX/t mt)# !C cCXC<  %%/jX):+,GIXLJM$ sitC<Xs<Xtuyg,HkXaXX../CXC ih<e o(XaXX,/  (g s= s- Hu[=LY < XX JffJ  o Xw   XXXz+X X wK  XXX#  .J < X JJ<K [f  N-= X -=Xf.u  oK:]w-K  XX~X#  ~.J . X tJ<K f :> :Z ,+vJ  -= X. "tJLz (fv susJ-z. d M G? LY < X X X wYX } J   XXXz w f+X fwK  XX~X#  ~.J . X tJ<K f  : > : Z , [+J  -= X. "tJLzX fv ` < YrJ ;Xf[ <   h X>#HLNF@X"y XfJ.. ]t  =Y" JH<KHY=.+ u& .$ u& u * w . (uAAX **i *** XX  <(X(J*,. f  **=* **=**v*V*L***=)*X)X )X,-X)-J0,4X6X)7X,9;>?X?ZXZKZ *t*K***v*Y**X******wU?<..+A T XJA f    8 v X < =0 < XJtt/1367 ?  <     )    .JX Zt  %)+ ! z% %2s%=?XBC):#,GIXIL.M  qX #!#X&''#umt ntt fg,Hk>n (8vXX. m An..Xo(( mw.,/)nw """." f  .<g s= s- Hu`x=Q[ XX J]ffJ  o Xw   XXXf+X X wK  XXPX# ) W.J < )X JJ<K [f  N-= X -=Xf.u  ` xtK7Zw-K  XXX#  .J . X tJ<K f :> :Z ,+vJ  -= X. "tJLz (fv `susJ-z. d M G? yQ[ X X X wYX a J   XXX qX +X fvK  XXX# < D.J . <X tJ<K f  : > : Z , [+J  -= X. "tJLzX fv N  jX(Xt vH0>Xyy34yy35qstryy37st_table_shortbufGNU C17 8.5.0 20210514 (Red Hat 8.5.0-22) -m64 -mtune=generic -march=x86-64 -g -g -O2 -fexceptions -fstack-protector-strong -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection=full -fwrapv -fno-strict-aliasing -fPIC -fplugin=gcc-annobin_IO_lock_tnodeDatastrlenstderr_IO_buf_endsyck_yaml_utf8yy90yy91SyckIoFileyy94map_inlinesymsSyckSeqnodeId_IO_write_endtoktmp_freeres_listsyck_lvl_doccarat_markerspairs_sys_nerrscalar_literalyy44syck_map_kind__builtin_memcpylinectptrsyck_level_statustype_idsyck_lvl_blocksyck_str_kindsyck_seq_kindsyck_lvl_mapxSyckErrorHandlerstdout_IO_save_endyy50_IO_codecvt__lenscalar_noneScalar2get_inlinelong long unsigned intbonusyy54Directive_IO_backup_base_syck_strseq_stylesyck_io_type_filenosyck_lvl_iseqsyck_io_filesyck_lvl_seqxlineptrstrtodComment_IO_read_basestdinst_hash_typetry_tag_implicitsyck_lvl_pauselast_tokenscalar_plainsyck_lvl_strsyck_parser_readSyckNodeHandlersyck_parser_ptryy63syck_lvl_seqlinectsyck_parser_pop_levelSyckNodescalar_2quote_1syck_parser_add_level__builtin_strcpysyck_lvl_end_IO_marker_IO_read_ptrYYSTYPEDocumentSyckLevelscalar_1quotesyck_kind_tag_IO_write_basebufsizelong long int_IO_save_basencountScalarmap_styleyy11yy12yy13yy14yy15yy16yy17yy19yy76ScalarEnd_freeres_bufcomparesyck_lvl_open/root/.cpanm/work/1723041055.16365/YAML-Syck-1.34__pad5valuesmap_noneyy21yy23shortcutyy27yy29_vtable_offsetlvl_idx_syck_parserInlinelong doubleseq_none_syck_levelsyck_lvl_imapyy30yy32scalar_style_IO_read_endyy38yy87short intsyck_parser_current_level__builtin_strncatyyaccept_IO_wide_datayy40yy41yy43SyckMapyy47yy48yy49syck_strnduplvl_capadomainsyck_bytecode_utf8_syck_nodebytecode.csyck_lvl_mapcomplexforce_tokensyck_lvl_anctaguintptr_tyy51yy53_old_offsetyy93yy56_IO_FILEyy58__destunsigned charsyck_io_str__srcsyck_hdlr_remove_anchor_IO_write_ptr_syck_filesyck_yaml_utf16yy61yy62sycklex_bytecode_utf8yy64yy65yy66yy67yychbad_anchorsSyckBadAnchorHandleryy25sycklvalqidxreallocscalar_fold__off_tSyckStrst_table_entryshort unsigned intyy70yy71yy72yy73yy74_sys_errlistyy77yy78totalSyckIoFileReadsyck_lvl_headerseq_inlinesyck_parser_inputnum_entries_chainSyckIoStrReadsyck_alloc_strSyckIoStr_flags2qend_cur_columnsyck_yaml_utf32yy80yy82yy83__off64_tSyckParser_unused2_IO_buf_baseyy88yy89scalar_2quotesyck_base64decforce_styleST_STOPsyck_emitter_clearsyck_output_handlerout_lenb64_xtableforce_indentsyck_tagcmp__chst_retvalsyck_emit_mapSyckEmitterHandlersendsyck_emit_foldedsyck_emit_2quotedanchor_formatdoc_stageST_DELETEsyck_emit_literalignore_idexplicit_typinganchor_namesyck_emitter_parent_levelsyck_emitter_escapeignoresyck_emitsyck_emitter_current_levelst_free_tablesyck_emitter_mark_nodesyck_match_implicitcheck_roomsyck_emitter_writest_insert__fmt__builtin_callocend_emitsyck_emit_2quoted_1do_indentheadlesssyck_emit_item__builtin___sprintf_chkhdlrst_lookupforce_widthsyck_emitter_pop_levelemitter.csyck_free_emittersyck_emitter_add_levelpaddingsyck_emitter_flushhex_tablescanst_data_tsyck_scan_scalarsprintfsyck_emit_1quotedanchored__stack_chk_failST_CONTINUESyckOutputHandlersyck_emit_scalaruse_headerdoc_opensyck_emit_indentsyck_new_emittersubdkeep_nlst_init_numtable__builtin_memset_syck_emittersyck_emit_seqdoc_processingsyck_emit_endspcsbest_widthsyck_st_free_anchorsreq_widthuse_versionsort_keysb64_tablebufposSyckEmittersyck_emit_tagsyck_emitter_reset_levels__int128 unsignedresttaglenfavor_stylest_foreachsyck_emitter_st_freesyck_base64encyynewstateyy_reduce_printyyvaluepsyck_seq_addyyvalsyck_map_updateyytypeyydefactyylen__builtin_fwriteyyresultsyckcharmap_keyyystateyydefgotoyytnameyyrlineyyabortlabyytranslateyyerrorlabyydestructyypactyyr1yypgotofprintfyynewbytesyystosyyprhsmap_lensyck_map_assignsyck_new_seqyytableyyreduce__stream__fprintf_chkyycheckyyerrstatusbottomyyoutputyyacceptlabsyck_new_strgram.cmap_partyystacksizesyck_hdlr_add_anchoryyerrlab1syck_map_countyy_stack_printyybackupyysymprintyysigned_charyyreturnyyptrsyck_alloc_mapyyrhsyylnosycknerrsyyruleyysizesycklexyyss1syckparseyydefaultsyck_tagurisyck_new_mapyyssayyvsyysspyyr2yyoverflowlabsyck_hdlr_get_anchoryyerrlabsyck_hdlr_add_nodesyckerroryyvsayyssapply_seq_in_mapmap_valueyytokenyyvspsyck_add_transfersyck_alloc_seqsyckdebug__builtin_fputcyyallocsyck_free_nodeyysetstatest_init_strtablentmpsyck_type_id_to_urisyck_try_implicittype_lenst_deleteatmpsyck_xprivatehandler.cyy84tmp1tmp2yy140yy197yy142yy92yy95yy96othorpeimplicit.cyy172yy173yy100yy101yy102yy103yy104yy105yy177yy107yy179yy46yy110yy111yy112yy113yy114yy116yy118yy119yy175yy108yy109yy182yy183yy120yy121yy185yy186yy125yy187yy127yy128yy129yy189yy224yy229yy130yy131yy132yy133yy134yy135yy136yy138yy115yy117yy194yy141yy195yy143yy196yy145yy146yy147yy198yy149yy199yy151yy152yy154yy155yy156yy157yy158yy159yy122yy123yy124yy126yy188yy160yy162yy200yy201yy166yy204yy205yy206yy207yy208yy261yy18yy170yy171yy210yy211yy212yy213yy214yy215yy216yy217yy218yy20yy22yy24yy26yy28yy180yy181yy220yy222yy225yy226yy227yy228yy262yy176yy153yy31yy33yy36tag1tag2yy86yy190yy191yy192yy193yy231yy232yy233yy234yy235yy236yy237yy238yy239yy144yy39yy42yy45yy10yy178yy240yy241yy242yy243yy244yy246yy247yy248yy249yy267yy52yy98yy250yy251yy253yy254yy255yy270yy257yy259yy60__builtin_strchryy260yy263yy264yy266yy268yy269yy75yy79yy169yy68yy161yy163yy167yy81yy168yy85syck_replace_str2syck_map_emptysyck_alloc_nodesyck_seq_assignnode.csyck_new_str2map1map2syck_seq_countsyck_replace_strsyck_free_members__builtin_memmovenew_idxsyck_map_addnew_capasyck_map_readsyck_str_readsyck_seq_readsyck_seq_emptysyck_str_blow_away_commassyck_parser_str_auto__ctype_b_locsyck_parser_taguri_expansionfflushsyck_parseroersyck_assertsyck_st_free__fread_aliassyck_str_is_unquotable_integer_ISlowerabort_ISxdigitsyck_parser_reset_levelssyck_parser_reset_cursorsyck_move_tokenssyck_new_parser_IScntrl__printf_chksyck_add_sym_ISdigit_ISspacesyck_parser_strsyck_check_limit_ISpunct_ISprintsyck_default_error_handlerfreadsyck_io_str_readsyck_io_file_readfree_any_iosyck_st_free_nodes_ISgraphsyck_parser_set_input_typesyck_parser_filemax_size__ptrsyck_parser_bad_anchor_handler_ISalpha_ISalnumline_numsyck_parser_readlensyck_free_parsersyck_.c_ISblankfile_namesyck_parser_set_root_on_error_ISuppersyck_parser_error_handler__sizesyck_parser_implicit_typingst_init_numtable_with_sizebin_posprimesnumcmpsyck_st.cst_add_directtype_strhashst_cleanup_safenew_sizest_init_table_with_sizeold_num_binsrecorddelete_neverst_delete_safenew_tablehash_valrehashnew_binsst_copyst_init_tabletype_numhashold_tablenew_num_binsnewsizest_init_strtable_with_sizeyy221SingleQuote2yy230TransferMethod2fold_nlPlain2Plain3escape_seqnlDoWhatdoc_levelDoubleQuoteqcapaSingleQuoteScalarBlock2parentIndenteat_commentsHeaderplvlDoubleQuote2walkersyckwrapnl_countnl_beginTransferMethodnewline_lenpacertoken.cyy55yy57lastIndentyy69blockTypechr_textlvl_overyy106Plainis_newlineyy97yy99strtolyy137indt_lennl_lenyy148lvl_deepScalarBlocknew_spacesyy150forceIndentyy164yy165yy203yy209yy174sycklex_yaml_utf8yy219yy184IlaststatvalPerl_av_pushold_parserPL_locale_mutexblku_oldsaveixIorigargcIorigargvPerl_sv_catpvn_flagssi_errnokeeper__pad0tbl_arena_next_spent_sizeIin_utf8_CTYPE_localehostentls_prevclose_parenPL_no_localize_reflex_stuffIlast_swash_hvxpvgv_readdir_ptrIstatcacheIcompilingIdbargsnew_perlblku_oldspperl_syck_lookup_symsub_error_countxpvhvPERL_CONTEXT_asctime_bufferInumeric_standardsigngamprevcomppadIe_scriptPerl_newSV_typesv_u_servent_structPL_sv_placeholderIpreambleavDPPP_dummy_PL_parserIDBcontrolxpvioxpvivtbl_maxPerl_sv_isobjectsi_tidImy_cxt_sizeblku_old_tmpsfloorImain_rootxcv_outsideblku_type_PerlIO__localeshe_valuIutf8_totitle_spent_structnamed_bufffinal_lenPL_freqh_lengthop_firstIdoswitches_netent_sizeXS_YAML__Syck_DumpJSONthrhook_proc_tnext_branchPL_op_nameblock_evals_port__in6_uPL_no_wrongrefin_port_tgp_refcntprev_markIdef_layerlistsaw_infix_sigilIrestartjmpenvsave_lastlocIwarn_locale_spent_bufferIcolorsmg_objje_old_delaymagicmulti_endPerlIO_list_sPerlIO_list_tCOPHHscream_posxpvmgIargvgvdespatch_signals_proc_tgetdate_errxio_flagsIsharehookold_regmatch_statexcv_xsubnextwordIminus_EIcheckavpad_1pad_2ImarkstackxpvnvPL_bitcountIdump_re_max_lenxcv_flagsPL_warn_nlIstatusvalueIDBsingleutf8_substr__u6_addr8min_offsetPL_warn_nosemipmopst_atimsival_intIlast_in_gvIreg_curpmshare_proc_tIhash_rand_bits_enabled_call_addrop_privatelex_formbrackSVt_LASTyaml_syck_parser_handlersbu_dstrIrunopsIpsig_pend_ctime_bufferIcomppad_namePL_magic_vtablesImarkstack_maxXS_YAML__Syck_LoadYAMLsbu_itersemitter_xtrasi_typeinternalperl_json_preprocessIreentrant_retintjson_syck_parser_handlerINonL1NonFinalFold__spins__blkcnt_tPerl_gv_fetchpvPTR_TBL_tPerl_call_methodxhv_max_protoent_sizejson_quote_charPL_no_symrefhent_hek_grent_ptr_getlogin_bufferxivu_eval_seenPL_curinterp__locale_dataPL_hash_seedpos_flagsIstack_baseexecImax_intro_pendingposcacheop_pmstashstartugroupsbu_strendre_scream_pos_data_scop_stashoffs_addrst_sizePL_opargspthread_key_tIperldblastparensi_addr_lsbIinplace__locale_t_pkeyPerl_pop_scopeIDBlinePL_bincompat_optionsIsv_arenarootjumpPL_uudmapgp_egvnewvalpadnamestatesxio_bottom_gvobjectsIphaseyaml_syck_emitter_handlerstrncmpsubbeg_asctime_sizeIblockhooksend_shift__nuserssbu_oldsaveix_pwent_ptrIosnamen_addrtypelex_casemodslex_brackstacknumbered_buff_STOREIefloatsizePADLISTimplicit_binaryoutioIpeeppPADNAMEPerl_grok_octIregex_padretopprogram_invocation_namebdeparsexcv_padlist_uminmodsp_pwdpIutf8_foldclosuresPL_checkIsv_yesparenfloorPL_op_private_bitfieldsPerl_sv_catpvbranchlikeJMPENVImain_startqr_anoncvIstashpad_archmy_perlPerl___notusedIenvgvIperlioIpadname_constPerl_xs_boot_epilogperl_syck_output_handler_mgIregmatch_stateprev_rexIisarevIutf8localeIsignalhook__ownerPL_Noop_optc2_utf8__ino64_tsa_family_tsockaddr_inarp__pthread_list_tsubcoffsetsvu_fpyy_stack_frameIdebstash__errno_locationtopwordPerl_safesysfreereg_substr_datumsi_stackXS_YAML__Syck_LoadJSONxpadl_maxInomemok__uint8_tfirstposIdiehookprev_recurse_locinputany_ptr_readdir64_ptrperl_syck_output_handler_pvCLONE_PARAMSIcompcvlex_repltimespecPL_interp_size_5_18_0PerlInterpreterxpadnl_max_namedPerl_hv_common_key_lenPL_check_mutexxpvlenu_pvILatin1st_nlinkIminus_Fre_eval_strIscopestack_ixsp_maxIscopestack_maxIminus_aany_pvpIminus_cPerl_newSVuvIminus_lIminus_nIminus_pIargvout_stackPL_op_seqIinitavPerl_newSVpvnsin6_familytbl_itemsbase64Perl_ophook_tcache_maskPL_no_dir_funcfirstcharsImaxsysfdIlocalizinglex_sharedforward_anchorservent_crypt_struct_bufferPL_op_private_labelsrxfreepw_namesp_lstchgcurlyoutsv_getlogin_sizePL_sig_nameIunicodeblku_subqr_packageIrestartop__timezonePL_thr_keygofsin_quote__mask_was_savedPERL_PHASE_CONSTRUCTIlastgotoprobecop_lineIsecondgv__locale_structIsavebegininitializedXPVAVis_asciiSTRLENexitlistentrylangop_ppaddrxpadnl_allocIcheckav_saveIdebug_pad__jmp_buf_taglex_flagsIendavblku_oldscopespIutf8_idcontyaml_syck_mark_emitterIcomppad_name_fillmy_opIHasMultiCharFoldglobhook_ttmpXSoffXPVCVPerl_savetmpsPL_sh_pathPL_hash_seed_setregnodePerl_PerlIO_writeIperl_destruct_levelsi_cxixmg_virtualpadnamelistoptoptinterpreterPL_warn_reservedPMOPIstashpadixPerl_xs_handshakest_uidlongfoldsp_minxcv_xsubanyPADOFFSETPL_valid_types_RVIstatbufsbu_rflagsxpv_curxpadn_flagsIstderrgvxio_page_lenperl_memory_debug_headerIin_clean_allmark_nameop_flagsold_regmatch_slab__ino_treg_substr_datalex_super_state_grent_structparser_xtraxcv_root_ucurlymsettingPL_uuemapPL_nanPL_magic_dataIcustom_op_descsPL_hexdigitsi_prevXPVGV_addr_bndsp_namplex_startsIsavestacksi_codeImodcountprev_curlyxIsortstashPL_mod_latin1_ucIstdingvsvt_localsp_warnIcustom_opsCHECKPOINTXPVHVany_av_grent_bufferlast_uniXPVIOsp_expireXPVIV__uint16_tminlenretIofsgvTARGi_ivIdelaymagic_gidxcv_gv_uIcollxfrm_multPerl_gv_add_by_typetbl_arena_endIsavestack_ixperl_json_postprocessPL_C_locale_objsockaddr_x25SVt_PVAVsin6_flowinfoPerl_call_pvxmg_magicsvu_gpany_dptrintuitIbody_rootssi_sigvalhek_lenIcollation_ixtokenbufop_nextopPerl_savepvline_tmgvtblPL_valid_types_NVXPL_runops_dbg_readdir64_sizeIutf8_xidcontsi_cxstackPerl_grok_hexjson_syck_mark_emitter_hostent_ptrsbu_rxxcv_padlistPL_revisionsvt_get_Boolsvu_iv__prevXPVMGIsort_RealCmpsbu_rxtaintedop_moresibxpv_len_uIpatchlevel_pwent_structnextvalsvu_pvXPVNVany_gvIhash_rand_bitssbu_origioerror__gid_tIparserxpadlarr_dbgstack_max1runops_proc_tany_hvPL_subversionIpadlist_generationSVt_PVFM__environxpadnl_maxIdefoutgv_lowerIstatusvalue_posix_pwent_buffer__ctype_tolowersiginfo_tPerl_newSVivany_ivmax_offsetIchopsetIrpeeppoldcomppadPL_fold_localesbu_rxresSVt_PVGVIincgvsi_markoffxpadnl_fillS_POPMARKPL_no_usymtv_nsecnexttypesig_slurpyIcurpm_underSVt_PVHVSighandler_tpthread_getspecificsvu_hashin6addr_loopbacksvu_nvlex_inpatlast_lopsockaddr_ax25PL_isa_DOESptr_tbl_arenaSVt_PVIOSVt_PVIVfilteredIlastfdPL_perlio_fd_refcntIeval_start_readdir_structIlast_swash_keyls_linestrPerl_check_t_readdir_size__alignPerl_gv_stashpvPADNAMELISTSVt_PVCVPERL_PHASE_STARTxcv_hscxtany_u32Perl_croak_nocontextPerl_is_utf8_string_ctime_sizeop_pmreplrootud_inoIsavestack_maxPerl_newSVnvIlocalpatchesIsv_rootSVt_PVLVp5rxop_nextPerl_looks_like_number__saved_masksvu_rvsvu_rxsockaddr_eonany_opsixtyIcurstackSVt_PVMGIpadix_floorPerl_push_scopesi_statusxpadl_arrh_addrtype_strerror_sizeIdelaymagic_euidbufendPerl_newSVpvlex_inwhatany_pvPL_valid_types_PVXXS_YAML__Syck_DumpYAMLIntoxnv_nvPL_phase_namessin_zeroIopfreehook_protoent_ptrPerl_safesysmallocIunitcheckavsvu_uvPerlIOluse_codestrtokprotoentmg_lenImemory_debug_headerPL_no_modifyany_svSVt_IVItop_env__blksize_t_spent_ptrPerl_av_fetchPerl_block_gimmeItmps_stackyy_lexsharedperl_syck_output_handler_iooffsPerl_newSVsvIseen_deprecated_macroIsv_undefIpsig_nameLEXSHAREDclone_paramsperl_drand48_tIgensymPL_foldIregmatch_slabop_redooprsfp_hostent_structstart_tmpxio_fmt_namesvt_lencop_hintsh_nameIerrorsPL_no_memxpvlenu_lenh_aliases_hostent_sizePL_YesXS_YAML__Syck_DumpYAMLFileregister_bad_aliasop_pmreplstarthent_refcountblobsaved_copylex_sub_inwhatany_uvItmps_floorPL_do_undumpIstrxfrm_is_behavedxpadl_idIbasetimeIop_maskIsighandlerpunreferencedxpadnl_refcntIUpperLatin1xio_ofp_hostent_buffercop_seqmulti_startop_pmreplrootSVt_NVIDBtracemaxlenpre_prefixop_targIbeginavje_retresume_statePL_dollarzero_mutexjson_quote_styleIsv_constspw_dirlex_casestackop_lastopIsub_generationblku_evalfloatPL_versionPL_no_securityimplicit_unicodeIutf8_foldable__countsi_cxmaxmulti_open_killst_rdevLOOPILB_invlistSVt_PVPerl_croak_svPerl_eval_pvPerl_sv_setpvREENTRImess_svIglobalstashImin_intro_pendingPL_perlio_mutexexpectoldlocIcollxfrm_baseIutf8_perl_idcontcx_blkIstatnameRETVALxnv_u__uid_tsin6_scope_idblku_gimmePL_valid_types_IVXst_ctimrecheck_utf8_validityIutf8_tofoldxcv_rootISB_invlistblock_formatin_addr_top_sibparenttz_dsttime__dataold_namesvxpadn_type_uIAssigned_invlistpeep_tPL_my_ctx_mutexPerl_sv_free2Isv_nominlenperl_phaseIin_clean_objsd_reclenPL_mmap_page_sizePERL_PHASE_DESTRUCTin_podPerl_stack_growgp_ioImultideref_pcIors_svxpadn_protocvIevalseqIunlockhookregexp_enginemg_flagsIcurstashgr_passwdPerl_markstack_growPerl_ppaddr_tgr_gidPerl_my_atofIstashpadmaxsi_overrun__clock_tSVt_NULLls_bufptrIbeginav_savePerl_grok_number__uint32_tIorigfilenamexmg_hash_indexlast_lop_opInumeric_localcop_warningsPL_op_private_bitdef_ixIcop_seqmaxop_pmtargetgvPL_veto_cleanupform_lex_stateIstatgvwroteIdestroyhookcoplinest_blocks_sys_siglistsbu_msbu_smark_stack_entrysave_curlyxIcomppadsub_no_recoverlex_dojoinxmg_udirent64gp_cvgenPL_utf8skipxcv_fileSVt_PVNVitervar_ugp_flagsxiou_dirp_servent_bufferPL_op_mutexPerl_newSVpvn_shareparen_namesPerl_sv_lenIregistered_mrossi_uidpw_passwdlex_allbracketsopvalIcurcopdbblock_subentitypos_magicgp_file_hekPerl_hv_placeholders_getsv_refcntsockaddr_in6__nlink_ttbl_aryxav_allocsi_fdnparensPL_no_funcPerl_av_shiftxpadn_refcntIeval_rootold_eval_rootnamed_buff_iterst_gidIdowarnyycharIfirstgvmg_moremagicop_pmoffsetop_pmstashoffPerl_av_storePERL_SIMGVTBLbnumop_staticMAGICPerl_sv_newmortalItmps_maxoptargPL_latin1_lcsockaddr_ipxIthreadhookPL_valid_types_IV_setbadancblku_givwhengr_nameop_typeIutf8_perl_idstartPerl_hv_iterinitsublenblku_oldmarkspxivu_ivIutf8_swash_ptrs_netent_ptrIpadname_undefpreamblingproto_perl_uppercx_uIDBcvPL_sigfpe_savedtrieIlockhooknew_rvav__ctype_toupperPerl_newRVPL_inf_xnvuPerl_keyword_plugin_txio_lines_leftcompflagssockaddr_isopthread_mutex_tIin_load_modulePL_memory_wrapxio_pagePerl_newSVsigjmp_bufIlaststype__ctype_bpref_av__listh_addr_listIutf8_charname_continuein_my_stashxpadn_len_strerror_bufferlocal_patchesdummycolonIunitcheckav_savePL_op_descsi_stimePL_no_aelemPerl_sortsvlastcloseparenifmatchPerl_mg_getIdumpindentIoldnamepreambledop_code_listxhv_keysitersave_readdir64_structIAboveLatin1Iutf8_mark_servent_sizesi_signoIDBgvIlast_swash_tmpsPerl_sv_2bool_flags__namessv_anyblk_uxcv_startacceptedgvvalIWB_invlistDumpYAMLImplolddepthIutf8cache_boundsprev_evalIpadixsortkeysdefsv_save_netent_bufferxcv_stashxcv_gv__builtin_strcatPL_keyword_plugincop_hints_hashIcustom_op_nameslex_sub_replxpadn_highre_scream_pos_datahek_hash_ttyname_bufferperl_syck_error_handlerPL_hints_mutexload_codeIknown_layers_netent_errnoItaintingPL_op_private_bitdefsIcurcopIstack_sp__ssize_tany_boolregmatch_info_auxPERL_PHASE_ENDPL_interp_sizeIcollation_standard__glibc_reservedlex_deferxmg_stashPL_runops_stdIorigalensbu_maxiterssockaddrIdebugXS_YAML__Syck_DumpJSONIntorefcounted_heIcurpadPL_op_private_valid__time_t__daylightst_mtims_protosbu_targd_typelogicalIforkprocesslex_bracketsxio_top_gvIutf8_tolowerPerl_newRV_noincPL_op_sequenceblku_oldcopperl_mutexIcurstackinfoIstart_envPerl_newXS_deffilelex_fakeeoflex_sub_opstashesIstashcachexnv_linesPerl_sv_blessPL_use_safe_putenvp_aliases_netent_structin_mynext_offxivu_uvsin_portpadnlImodglobalin6addr_anyICmdsockaddr_atregmatch_info_aux_evalxcv_start_uPL_no_helem_svbasespIgenerationIGCB_invlistIstrtabxpadl_outidxpadn_lowblock_givwhenregexp_paren_pairXS_YAML__Syck_DumpJSONFilecrypt_datapprivatecv_flags_tcur_top_envxpadn_typestashIin_utf8_COLLATE_localeIlast_swash_slenstate_uPERL_PHASE_RUN_sigfaultop_sparelex_opst_inopw_gecos__pid_tparsed_subop_lastPerl_free_tmpsxio_typeyylvaljson_max_depthsp_inactresolve_bad_aliassockaddr_dlxav_fillhent_valIorigenvironIdelaymagic_egidgp_avscream_oldsmg_ptrregexpmaxposOutputStreamsa_familyptr_tblInumeric_namelazyiv_sifieldsSVCOMPARE_tSVt_REGEXPIpsig_ptrgp_cvxgv_stashnetentsaved_curcoptv_secblku_u16Iprofiledataref_type__sigset_tgp_lineImainstackIcurpmop_pmflagsst_blksize__builtin_strcmpxpadn_ourstashprogram_invocation_short_namePL_sig_numptr_tbl_ent_hostent_errnoop_slabbedIsublineIargvoutgvIwatchaddrIdefgvhek_keyPerl_av_clearPerlExitListEntryxio_bottom_namegp_formIreentrant_bufferhent_nextcheck_ixIunsafeIhintgvsockaddr_in__jmp_bufIDBsignalIutf8_charname_beginblku_formatPL_ppaddr__dirstreamsin_addrIXpvIregex_padavPL_perlio_debug_fdblku_loopdump_codecache_offsetwantedpw_uid_timerIstrxfrm_NUL_replacement__locksig_elemsPL_valid_types_NV_setgr_memIxsubfilenamegp_hvIpad_reset_pendingopterrdfoutgvPerl_sv_setsv_flags_sigchldxcv_depthprev_vItaint_warnIArgvpw_shellsi_next_errsv_syscallPL_no_symref_svIexitlistsinglequoteIsubnamePL_warn_uninitany_i32Ihv_fetch_ent_mhUNOP_AUX_itemsvt_dup__pthread_mutex_sPerl_sv_setiv_mgInumeric_radix_svPerl_sv_2ioPL_fold_latin1xcv_outside_seqPL_magic_vtable_namesPL_no_sock_funcIsplitstrxcv_heksvt_freesockaddr_nsold_ssi_addrdirentIbody_arenascheckstr_grent_sizePerl_hv_itervalPL_csighandlerpSVt_INVLISTIsortcopPL_warn_uninit_svsin_familyIsignalssbu_typesi_pidmg_privatedupePerl_form_nocontextje_buflazysvin_stringItoptargetIstrxfrm_max_cpIerrgvPerl_sv_2pv_flagssvt_clearPERL_PHASE_CHECKnexttokePL_no_myglobItmps_ixIsig_pendingsubstrsany_svpintflagsdestroyable_proc_tIfdpidxpadlarr_allocivalany_dxptrn_netPerl_croak_xs_usageop_pmtargetoffIcollation_nameIefloatbuf_pwent_sizeoldvalany_longxiou_anyIexit_flagsc1_utf8Iglobhooksin6_portyaml_quote_stylePL_block_typed_offxio_top_namecur_lenIptr_tableIcolorsetPerl_hv_iternext_flags__jmpbufIfilemode__dev_t__kindIexitlistlensockaddr_unop_foldedIdelaymagicPL_charclassImarkstack_ptrpw_gidprev_yes_statePerl__is_utf8_char_helpers_name_protoent_structop_compgp_svsvu_array__pthread_internal_listwhilemIInBitmapmother_re__valn_aliases_sigsysperl_syck_bad_anchor_handlerextflagsxio_fmt_gvxpadn_genPerl_sv_reftypeis_bad_alias_objectcop_fileIcurstnamecx_subst__u6_addr16Isv_countsvt_setIdefstashItaintedtz_minuteswestIbodytargetjson_syck_emitter_handleroldoldbufptrxav_maxxiv_u_protoent_bufferst_modesavearray_xivuleave_opIutf8_xidstartre_eval_startperl_debug_padIstack_maxsvtypest_dev__u6_addr32je_prevIclocktickPerl_sv_2iv_flags__syscall_slong_tIXPosix_ptrsIDBsubspwdreallen__nextIutf8_idstartje_mustcatchnumbered_buff_LENGTHyy_parserblock_loopop_savefreeIscopestackIformtargetpad_offsetDumpJSONImplPL_perlio_fd_refcnt_sizes_aliaseslastcpIconstpadixmulti_closestatherelinesImy_cxt_listIPosix_ptrsxivu_namehek_ttyname_sizesin6_addrIwatchokS_SvREFCNT_decPL_my_cxt_indexPerl_av_len__tznamep_protoPerl_sv_2mortalsvt_copyboot_YAML__Syckxnv_bm_tailsival_ptrPerl_hv_commonmark_locsi_utimexpvavIsrand_calledload_blessedoptindSyck.c__mode_tsp_flagperl_keyIreplgvsa_dataIbreakable_sub_genrsfp_filtersS_SvREFCNT_incIin_evalsuboffset__sigval_t_servent_ptrXS_YAML__Syck_DumpYAMLlex_re_reparsingIutf8_toupperPerl_hv_iterkeysvlinestartsig_optelemsPERL_PHASE_INITIcv_has_evalmg_typexpvcvnumbered_buff_FETCHIrandom_stateIscopestack_namesi_bandxpadn_pvIcomppad_name_floorIdelaymagic_uidIwarnhookIlast_swash_klen_xmgu_sigpollxio_dirpucur_text__elisionblku_oldpmImain_cvUSUS.0.e\ez]z\\.d.__..P.^P^P^2zVzPVVE[QQQ MUMm]mrUr]U] MTMaSarTr S T S BTBSP\PO^\^[\u\^ r^rP^ \ | ^ ^ ^, ^[ t ^w P ' ^' e \e ^ \ P P Bw^(\(2^2>P>rw\WaVpp.R.8q0[0u0 0' e 0 0(00p+P39p\dpdqpqtqPp p2R2@qpRq;DpppTrq p*R*8qp pITp RP\U\ \, J \[ _ U_ \ B\2r\ _ V S V s (V ^ ^ P _ SqP((Q((T((PV^qV^Pjm v~ $ &mrQjrTjrP<U0UV~ V0Ve ~ V'p/>P>FqbPPrp p' * P7 : P: G q0 0' G 0 0(00$DPJ T P P q q0V \ V| V q V , V  V  Q A VA [ QBVrV^Q^QdRRw R , w  RA [ RRwRwRrRwRP_| _ _ ' _' , P [ _B_P_Pr_P_s ^Qp Q p q @ PX i |y Q P  P ) |BdPdv|PPw~UP0~vqv~vqv P`&}&U}&|'S|''U''S`&&T&&V&'T''V''T''V''T`&&Q&`'\`''Q''\''Q''\''Q&'0'Z'^''0&Z'V'$'p $'('Q')'0')'])'E'V)'E']`%o%Uo%%S%%U%%S%%U%%U%&S&&U&&U&V&Sv%z%Pz%%V%%V%&V&V&V%%P%%\%%P%%\%%P%&\&#&P#&V&\""U""\"#U##U#V%\""T""]"#T##T#V%]""P""S#V%SH#d#P#"$Pg$$P$$~p$$^$$0$$V$$v$$V##P %3%P% %vp %V%V&%3%03%G%^G%L%~L%V%^$$0$$R$$r$$R$$P$%V% %0!!U! "S ""U"6"S6">"U>"t"S!!T!"^""T"="^=">"T>"t"^!!Q!"]""Q";"];">"Q>"t"]!!P! "V"7"V>"t"V!!P!"\"9"\>"C"PC"t"\ U ;!S;!C!UC!f!Sf!n!Un!!S T B!^B!C!TC!m!^m!n!Tn!!^ Q @!]@!C!QC!k!]k!n!Qn!!]!!P!!\C!i!\n!s!Ps!!\U\U\UUy\T-]9yTQyQR@S@9R9ySX0V09X9yVRMSMVVe_ehhSsS_ySR@S@^^9^9ySR@S@Ts^sT T_9s9ySUh]hkUk]UU]TTQSQSR\R\QSs v DSDIsIbSk{sSQS6TDIVk{TSQS V bSkkSk{\SPU\UU\PTP^Q^_Q_PRRT0C0CS1S0Y^Q^_sS]s]ctY^Q^_Q_Y^Q^_^^S]s]ctU\UUA\TAQ_QA_RARh001A0Q%_\hsstQ_QA_Q%_%5^\h^st(U(VUUVTTQ]Q](R(R Q3]3DTDLLL_LTToToppp_pxTT Q3]3\\_\UnSnxUxSUTs]sxTx]TQq\qxQx\Q0\V\avaoVxV0UV"U"#U#VU VT Q^Q^6#j^^^ ^ ^ ^R X Y#AAKUK S#S S 0.( S$]77m0\ R4RvQvv rv 3)(4Q v rv 3)(  Q\ 4 Q v rv 3)(P\#\ \P 0P_M0MQPQ_#4__ _\ 0 _DPRP@USVU(S(3U3S@xTx2Y ZY(3TYD]0] Z Z0ZZ[(Z(303Z0D]0] [ Z0Z[[([(303[0D0EP]mPmXPX(P(303xPx{p !{PU\U9\9>U 0 Qq!QPS3SP7V7=U U  V U 6 V6 A UA V T S 6 S6 A T Q 6 Q6 A QA Q P  \ 3 P3 6 \A \b ]u]uB Y X .~YX@ u Uu + S+ 5 U5 S@ u Tu  V 5 T5 G VG s Ts 8 V8 o To V Tq 0 T5 G 0= 0  \s = \  \o \| P \ P 0 ]5 G \G = ]= \ ]` j Pj u Uu ] 0` v ` j Pj u Uu v ] P U = ^ ^ DZ P U ^8 D PD H UH o V8 I ϱ8 D PD H UH I VCUCZSZ\U\eS$T$GPGUV\ePpUSU> SpT]] T ( ]( 4 T4 > ]pQ\\ ( \( 4 Q4 > \upRR V! ( V V] T U\]sUSUSP\U\SUUUSUHSHJUUdSdlUlSTVlTlVQg\glQl\`UUUUSU U UTT0QQgP)S)*PUSs|iSquSus~TG\GTQnVnqQqVQv ve[q[ FRFJXqRs8$8&2$x"0MQq e\PGPGUuu~Uu)U)8U8YuYeTeUuUUCTCqUT"qT0$r$(R(,r,2 u2$x"# SUS{S{s}SASCSS WTWwVwvVBVCVV$k0ksTstttT&t&/t/4tKotott0XP`UvoU o $U:vo:[o[_P_o:oQY0YoXo o 0 o2 o X oo$ov{^$ 0$0&".Q.:p"8$8&r" 0$0& s0$0&p"sQq"3 ; ^hs^s1$"0$0& o~"^P$P6R^t":o"Pp"s^o"^E^~s1$"0$0&^ . R. ^  o  ^ / o/ ^hs^1vo;vov{Q{o$3$o:QoQ3oo o 0 o2 hoh3ooo0:vo:oo:oY0Yoo 0 o 0 o2 oo$o vo^Tvo;NTNoQoo o o 0 o2 oToo__;_~u_:Q_Q~__( ; _ _ _ h^h__ vs]Rvovo;NRNoQoEoEbUbo r o 0 o2 oRoo vo}"8]_{P}x]}x$]:]Q]}x}]]E~]( ; Pȟvo0P07vo1$7?Q?:vo:;o;NUNoQoo ȟ o 0 o2 oUoo$o|Q1t $ &3$u"1t $ &3$}"oP:oo + 1t $ &3$}"+ J #to`" $ &3$}"J ( o; F oF K PK f of k Pk o  o  P 1 o1 6 P6 Q oQ V PV x ox } P} o P o P l ol q Pq o P o P o P o 0 o2 J oJ O PO o P o P ooogo`" ( o`"; o`" o`"  ~ $ &`" 0 o`"0 2 ~ $ &`"2 o`"o`"~ $ &`"o`"~ $ &`" ]]7Tp Pvo ~ vo" ~ vo"Uvovo3$# vo"E~o3$# o"~P ~  vo1$#Ep~ p~ o1$# vo3$#E~ o3$#E~ LdpdhU P SS 2 SS P * SSVu ]ppptUQx ȱ_wsns,Y Ͷ3Kp ȱ~n~E '?p~ ȱpUnp e p . R. ( ^n s Ps S ] } ] . r $ &1$ " . ( ~ $ &1$ "  K 0A F pF J U ȱ p U   p  U  p U#G ȱ*FsYhnYesh :opUeSejs~j}ST9\9T(0vPj KPivo~vUSTUSTUTQTTQT OUSTUooSTUSTUSTUUKVKNUNQUTJSJNTNQTTJSJNTUKVKNU'+P+M\U]UT^TQ V QP S]PSvPSV^S`kUkVU`yTySTPRQ s $ &VRPR!U!BVBET#EYVY_U_`U.T.ASAETEXSX`T.Q.D\DEQE[\[`Q U vVv{U{V8T8Y\YY0{ \PgUgSUSPTVTTVPUUUD\DIUPTTTDVDITPQSPQDSDHPHISUHUT&S&'T'GSGHT&s&'T'<sU S TUxSxuUSUSUSUUSUSqqqqq q q (S(DTDDSDhshhShtstUU#STssTsU#U#+t+-T-3U37T7^UTtt t 0t0JtJNTN\UTRTRT4R44T4@s@aTaisiTsQ T s2T2:s:[T[cscTsTsTs TQq?Q?OqO_q_oqoqqQR Q Tt.t.>t>KtKYTYyRyytyt t t T V tp"yVyup"1VVup"Vs(DTDhsTss44T4@s@aTaisiTss sYysURqqRq q q $U$(s(LULhQhtUtxsxuUsUQQQ'-Qtt t 4t4JQQrtQrQ4r4@U@eQeitiQtQRtQt Q t6Q6:t:_Q_ctcQtQtQtQR#?q?OqO_q_oqoqRQrq q Q.t.BtBkQkyryyQyt t t tSZPZ\0PSSZQZ[}SZTZ[SSZPZ[\[a[\ ۱UlpPp]0PSlpQpq~lpTpqSlpPpq]USmUmvUTjVjmTmvTSWPWm\$8P9KPPX\Xm0#P#`S`m0&U&8U8nUnUU U aUacu~cUqu}U u  U $U$UUUU> U> C u}C ` U` e u|e d Ud { r{ U&T&8T8aTaTT*T*T"T"TTe Te u Tu T 9 T9 { T{ T T T T TU&QdjurrUruURQqqQqU R 4r4FrFFUFjujqu||U|uuUuUuU u  U u,u,,U,SuS]uccUcuUuuUuuUQu(U(CQCPUPnQnxqxuUuUuuUuUu .u.@u@XRXtQtRuQqQu u  U $u$0Q0LqLXUXauaQQ T *Q**u*BuBIRIIuIZuZlulququuuRQqQRQq"Q",R,JQJJuJbubbubtuttQtquQuQ$q$xRxxQxqQqq& Q& : uR \ ue u Ru u uu | u| } q} q u u Q r r u u T Q q  q  q " q" 2 q2 [ q[ } Q} q q q q q q q " R" 9 r9 9 q9 R uR \ ud d Ud { u{ R u Q T u u r u T Q R 0 r0 G rG j rj r T Q q q T q q q q q q  q   q   q  - q - A qA y Ry r R q q R r R r q q q qr#R##q#-q -Dq DTq T^q ^nq nqRrRrR&ut"&8UT"8nut"nUt"ut" Ut" aut"acut"2cut"qt"1ut"3ut" ut"1  ut" $Ut"$aut"auT"UT"ut"*uT"*ut""uT""ut"uT"UT"> ut"> C ut"3C ` ut"` e ut"4e u uT"u ut" 9 uT"9 d ut"d { rt"1{ uT" ut" uT" ut" uT"RFRFqu|uuu ,u,]ucuuuQu(CQPQu~uu @u@PRtRuQ u$0QXauQ u*BuBIRIu"0R0JqJtutQQuQuu | u| } Q u R u9 R QR { R u R uu&RdjuruuQPqqqu$Q$4P4FuFTuTjPjqu||u|uuuPuuQ u  u u,u,4u4SQS]uclulPuuPuuuuuPu(u(CqCPuPnPnxuxuuuPuuuuQ .Q.@u@PQXnPtQPRPu u $u$EPELqLXuXaQoPPqqPRPQP**P*BuBIQIIPIZuZlulquqqPquPuQPPr"R",Q0JRJJPJbubbQbtutPuuquQPRPq(P(RQYsPsxr|PRPR R! & R& : uC R uR \ ue h Ph u ru u uu | u| } u} } P} q P Q P u u u P q  q  q " q" 6 q6 m R} q q q q q q q " P" 9 r9 9 P9 R uR \ ud { u{ ~ Q~ r P q0 P R q R u u P u R t R  P r P 0 r0 K rK j Qj r t R q t q q R q q q  q   q   q  - q - E qE \ Q} Q q q r r q q T qr##q#-q -Dq DTq T^q ^nq nqQQQrrPUPSUSULTL\T\TX XXPXVUVUVUySyzUzSUUu u /U/IUT \ !q3$p"!H\HITS!ESV!q!FVUSUSPcUc{V{|UmqPqzSz|PxPu Pu HPPPTu U\P\`u PwUw&UPT&TTUu ^V&VozPzQQqQQ&0zRTTsUUT]T]Q\QQ\SSVV 0U0cScUcS 4U4KVKNU 4T4M\MNT>EPEJSJNPU\U\USUSUSUsVVQvVuSUsU`S`hUTe]ehTQaVahQRg^ghRFSVFRTRS]FRs #pUVUUpTSTTpQ\RQ0KUK\U0KTKVT0KQK]QW[P[SPuVu\us #USUUTVQT"(P!P!'S'(p PPSp P]qPqSp USUU U 4S45p5P` U V U V U` T S T S T 1 Q0 S US X U0 N TN W XW X T U ! S! " Up U S U Sp T V T T V Tt 0 P V P 0 Pt 0 P 0 P U @ S@ B UB l S- 0- - P- A VA B PB j 0j l P 0 ) PB M 0M f P0yUySUNTtpT]\]^tuj\AHutH[V[^PjVPs~Vs}Ts}PPUSU3SPqTqVT3VPhQh\Q3\UUUU'V'-U-.UT#S#-T-.TQ)\)-R-.QUVUVUTSpQ]Q]QR\p\R 5U5cScgUg|S|U 5T5f\fgpg\p 5Q5dVdgpgwVwQUSUUUCSCDUUUUTT0T0QQQUUTTTQQQ@XUXsUsUw@XTXsTsQhDc0cf s $ &fjTjr s $ &rs p $ &s0PASABPUSU,S(U([S[]U]SUU`\`aUaw\wxUx\DTDaTaT!Q!)Q)9QvaQQRMVMaRauVuxPxVQRaRG0GVSam0x0GVSGQTGM|v"MV|R"UVUTTQqrQQsQRRSR0PtqrQQs1ur"Uvs" `lUlVU`uTuST~P~S~V~PUUV$T$U\%H 7Gs@[U[qSqrUU2R24r4DR>P>C r8$8&!0!.Q4CQU` S` j Uj S UTc \c j Tj \ TQa Va j Qj V Q 4 _4 ? wH i _j j _j w w _ 0 Q ]j j ]j w _w ]' H _y _ + Pj y P0g ^j ^ 0 U S U T Q T V U# U`^`aUa^U^UT\\\aTa\T\T Q ^]^aQa]Q]QRZVZaRaVRVRp~!WSaSSq3$p"q3$~"UU]UXUX]U]U]TQVQXTXVTVTVQS\SXQX\Q\Q\p}sKSXSSSUz]z}U}]U]PvV}VPVpS}S FPPbPbpH 0 SSS-U-wSwUS/T/xVxTV'Q'z\zQ\69P9~^^69pr9K~rK|]~rQUPU_U_U_T\T\T\Q^Q^Q^PVVVpr+vrvSSP}-U-^U^U/T/\T\T*Q*]Q]Q48P8VV48p~8[v~@SSU\UUUSUS0VUTU@OUOSTSTUUU`U\UU`T]TPSPdTTd0PP0d8QQ8R$T$-R$TP=\=?}0A^B_^6S6:v ps rsRB_R0PBPPP_08QBPQP_80/R/UR/T/TT/U/UU/o/To/p/UUUUSUS 6Q68p8HQHLpTdPqQpqPp//U//U//U//U//U//U//U//Up//T//T//T//T//T//T//T//T/U/~ U ~U~U~.U.Z~ZU ~  U  ~ \ U\ ~ U ~UZ~ZlUl ~ U~UE~EU~U~Uh~hU~U?~?bUbs~s U Z!~Z!#U##~#P$UP$p$~p$y$Uy$%~%(U(:)~:))U))~)*U**~*+U+",~",<,U<,h,~h,,U,-~-/U/T/_ T _.]._T _  T S_S]1_1U]U_T\_\])_)]_E]EW_WT]_]_]!_!H]HW_Wh]h_?]? _ ] !_!4!]4!"_"#]#7&_7&h&]h&0'_0'l']l'(_(((](((_()])s*_s**]**_*",]",/,_/,h,]h,,_,g-]g--_--]-*._*./]>_ _.]._T _ S_S]1_1U]U_T\_\])_)]_E]EW_WT]_]_]!_!H]HW_Wh]h_?]? _ ] !_!4!]4!"_"#]#7&_7&h&]h&0'_0'l']l'(_(((](((_()])s*_s**]**_*",]",/,_/,h,]h,,_,g-]g--_--]-*._*./]>~ ~~~.Z~ ~\ ~ ~Z~l ~~E~~~h~~?~bs~ Z!~##~P$p$~y$%~(:)~))~**~+",~<,h,~,-~R\\ \\}\.Z\H \ \ ! \% * p* w \ \\ \ 0 \[\\ 0   1\U \9\9\0)\\\\\\bs\ !\4!Z!\##\P$p$0y$%\((\))\**0`oPo]] z]zPp]]f].Z] ] ] ] ] P = ] ]]]] ]] 1]U]9])]]]]bs]4!HP))P9=P=\'(\))\h&q&0q&}& }&&]((0((pqD##0h&&0&&]&&]((0*s*]&&PH##]h&y&]((]&&P&&P&&p* *00*6*xs6*Y*rsY*i* si*n*xs`1.KP"#7&h&0'l'(((:))))s***+/,<,-^---*.v.{./`0.S4S4P^PjSj^S"#S7&h&S0'l'S(((S:))Ss**S*+S/,<,S-K-SK-N-sN-g-^--S*.c.Sc.f.sf.{.^{..S..Y..Q.../S//Y`d.\\""\##\7&h&\0'J'\:))\s**\*+\/,<,\-g-\--\*..\..|x./\P.VV"#V7&h&V0'E'VE'J'PJ'l'V(((V:))Vs**V*+V/,<,V-g-V--V--P--V--P--V*..V..P./V//P//VQPQpP}pP}P\Qp""Q7&;&Q;&F&c&h&P))P**P**}--}.001P1"#07&h&0J'l'0(((0:))0s**0*+0/,<,0-g-1--1*./0:)C)0C)O) O))^s**0**pq*.-.^.0:))0s**0*./.0/.Z.^..^//^W)l)P.^:)K)^s*z*^<.@.P..P..p..ys..qs.. s/ /ys""P("(P""P"#\J'l'\(((\a_--_>-E-PE-b-_--_-5-P5-^---FZ0ZV^ \ V VYVYivqVv]V VoV^EV?bV%&V&7&v((B(VFZdZ^ \ ^ ^^ ^ow^w~x^EW^?F^FM~xMb^%7&^((B(^Z\S\ \ \ \\ \o\P\EW\WS?]\]bP%7&\((=(\=(B(PrP @ P@ \ tt p P++/p/<P<Hqytt Pq.p.4P48q8CpCC CQpQm m|P|q%%b0 \ 0 00 0o0E0?b0%7&0((B(0P_P_W_P__VSVV]]|~"W]RQTPzzR v $ &QTP}Q?TQTb &&P&.&((B(%&P&.&((B( ]0 [0[^\^1U^\o^o\^V^)^^ \ E^^^^\^!\!Q^QhR?^ ^!4!^(:)^**^+-+^-++S+,V,",^<,],^],h,S,,S,-^ ]d [d[Zl1@ELTLU\)ET!V!)6:T:HH[V[h? !!$!+!T+!4!(:)**+-+,",<,],,,,, #,,T,- # P ] F[_1P_PUP\_)_E___P_P!P!C_ChP?_ _!/!_/!4!P(:)_**_++_+,,",_<,],_],h,,---P 0 ] Zl1U\)Eh? !4!(:)**+",<,h,,- 0 ] (-Zl1U\)Eh? !4!(:)**+",<,h,,- ]0 [0[l1U\=P!PUE? !4!((++  [[]P Zl1U\0T0)Eh? !4!(:)**+",<,h,,- ]S MSP\oPPTTYPYPPh?(:)**,",<,], ] [ p<P P2?P((Ppvpvvvp7OPvlxvPvvvU]p]cqltPy}Ppq}T05q T qc010\0)U0Ul1l0E100h0?0 1!!0!4!1(:)0**0+,1,",0<,],0],h,1,-1U\UU!1USSVS00h?(:)**,",<,],S00V0V!Hh?0(:)0**0S0~00?0(:)0**0S0=0=Y1YP0?0(:)0**0SV0VVV ?V((VP02P0<TPp9OPOV,",V<,S,PS,],VSS0 |  ~" ~! |HQ ~Qh r((P(:)V**V**P**V#):)SPZV)4V4KPKUVRS_+u+Pu+,\],h,\,,P,,\++S Py$}$P}$$r$$P$$$$P$$q$$Q$%p %%R%%p<%@%P@%H%rL%[%R^%h%Rq%t%Pt%%q%%R !0y$%0((0SpUUpTTPVTstUtuUstTtt^tuTuu^t@t\tu^buu^-t2tV2tTtvTttt]tttvuuv2t9tv $ &3$p"9t=tv $ &3$p"=tatPuuP2t9t|v $ &3$p8ttt]9ubu]tt^9ubu^t4u]buu]tuVbuuVt4u]buu]u9u1t-tPwwUwyUwwTw#x^#xxTxy^ww\hxx^xx^wwVwwvwx]xHxvxxvxyvwwv $ &3$p"wwv $ &3$p"wxPx yPww|v $ &3$p8xXx]xx]#xhx^xx^Xxx]xx]HxxVxxVhxx]xx]xx1wwPrrUrsUrrTr9s]9s|sT|ss]rsVrr^rs~s's\'shsVhs{s~|ss~rs~ $ &3$p"ss~ $ &3$p"rsv~ $ &3$p8's+sp|"+s3sp|"9s=sP=sNs]NsRsPRsys][s|s1rrPURUT] T 6 ]6 >T>M]MRT^V7v7 \ >\>MvMR\v $ &3$p"v $ &3$p"'^  6 ^6 >>M^MRhV V6 N V VV V P VTVT ~ V  ~6 N VS ~ V~V>~X g PhlPl V  Vl VV>V ]  ]6 >]-/P/ ~  ~6 >~h _ _6 S _  _ _)L__7[__ ^  ^6 >^Xa~ ~ ~~~*P* w  w6 wP>wTV VVV07T7?t?GT TT0PR ~  ~S ~~P>~PrBPBGr PP0GQ Q QQ00U0U?0?GU 000PRXRGX XXPPT  P _  _S _ _)_L_7_[_>_q z Pq z P  1MR1PpUUpT^T^\a^^VԌvԌ]vvv $ &3$p"v $ &3$p"P P|v $ &3$p8Q]]a^^Q]]AVVa]]1PUnUT^_T_n^@\Ȑ^B_^-2V2TvTt]tv +v_nv29v $ &3$p"9=v $ &3$p"=aP_mP29|v $ &3$p8t] B]Ȑ^ B^]B_]VB_VȐ]B_] 1-P@XUX U@\T\]T ]bVx}^}~\V~ ~}~ $ &3$p"~ $ &3$p"}v~ $ &3$p8p|"p|"P΋]΋ҋPҋ]ۋ1gxP`U2U`T2]2$T$9]9T-]-2T^Vv\\-v-2\v $ &3$p"v $ &3$p"H^H$$>^>-^-22];]>]"6]]Ad]z] ];]6MVMQPQgV2];]>]"6]]Ad]z] ];]`kPk]P]PaePe;VV>"VVV$zVVP^~>6~~$~P$>6 =_>6__$_H`^>6^^$^aV;V"6VVzVP$~>6~~P~P;]]"]]A]d]$z] ];]]P`]]8`0`_]_OYPY`PPPPZ1-21P U ]U].T.STSSo{p{pU`pBUBaU6T6BtBaTUi]ijUj8]eVj8V P_S_jPj3S37P78SzzUzszzTz=]=FTFs]zzQzszzPzVFɂVsVz~_Fɂ_s_7{9{P9{2Gsr{;\Fs\{?^Fs^{{P{s"|f|TFTTʆنTنLJT;sT΁TTTT Ԁ+RJR R@@kRks@%%U%&^&.&U.&(^((U(3^33U35^55U56^@%%T%%\%t&Tt&%'\%'9']9'P'TP'T'TT'h'\h''*T'**\*.T.E.\E.6T++p++Q+!,|,;-/0:5b5++0++S++s+!,S,,0,,\,4-|4-;-\..0.._/0000P0m0_m0~0P~0000000\00P091\:5b50u%%T%%\%&].&t&]t&%'\%'P']P'T'TT'h'\h'(]('*]'**\*.].;.\;.2]3H4]45]|%%P%%~P'T'~% &S.&+S!,{,S[-/S91:5Sb55S56S%&_.&Y&_t&5(_e((_()_**_N+u+_.E._%%R%%t&9'P'T'RT'h''*`*e*x*}****.E.%%P%%t&9'P'T'PT'h''*`*e*x*}****.E.%%0t&&0&'P9'J'PP'h'0'**P#.E.Py)})P})*\+/+\[--\b..\.2/\f//\33\)*_f//_x..1331340..\34\..P33P33P34V~((P((\N+z+\E.b.\2/f/\33\((_E.b._2/`/_((\33\((P33P((Q((|((q33Q++P,,PP,N-]/91]:5b5]/0P091S:5E5P//P//S.020P20Q0\00F0I0PI000011P00P001-1P4191P,,P,$-S- -P -;-_$-(-P(-;-SW1Y1PY1l2l22\22|x22P22px4H44:5b5q5q55\55P5555P5555P2'3\H4x4\22P22\55\3'3Pl4|4P|44Q44\55\56Q23]H44]55]56]W12]4H4]4:5]b55]13_4:5_b55_56_2l2\55\55P&&I,&&S'9' v'9'S9'J'P9'P'S<*L* <*L*SL*e*c,L*e*Se*}* e*}*S}**m,}**S** **S.#. .#.S#.6.w,#.6.Sy*yU*yTyVTy]yU]y zV zzUzzVy*yT*yzT3z6zp6zDzQDzz~3zDz0Dzmz]mz}z}]zlzPyz^yy0yy]yy}y z]yyPyz_yyPPCCUCH\H7HU7HI\IIUIIUIK\KKUKL\LLULN\NNUNa\PCCTCHVH7HT7H|IV|IITIITIKVKKTKLVLLTLNVNNTN_V__T_aVCTG0TGXGPXGH^H7H07HI^IJ0JJPJK^KL0LLPLL^LM0MMPMN^NN0NNPNdAdpAdHdQHdd~>dHd0Hdqd]qdd}adpdPcc^cc0cc]cc}cc]ccPcc_ccPaaUaybSybbUbbSaa0a)bXCbKbTKbYbXbbXbbxbb0aa0ajb\bb\bb0aa0abYb)b0)bjbYbb0aaVaaUaCbRCbGbUGbgbRgbjbUjbbRbbVazbVbbVapbPbbPaaPabZbbP66U607\0777U77N7UN77\77U79\9 :U :NC\66T677T77R7TR77V77T79V99T9:T:h;Vh;;T;9<V9<u<Tu<=V==T=o=Vo=[>T[>>V>y?Ty??V??T?@V@@@T@@i@Vi@ATAAVA"BT"BNCV6606-7S777077P79099P9:0::P:H;0H;W;PW;;S;;0;;P;4<04<9<P9<u<Su<<0<<P<<0<<P<=S=O=0O=^=P^=[>S[>H?0H?M?PM??0??P??0??S?@0@@@S@@@0@@P@A0AASAB0B"BS"BC0C CP CNC0c7g7Pg77_$:(:P(::c7n70n77^$:3:03::S66S66s66S77n7S77S9 :So>E?^M?y?^??^v>>]>>u ??]??]??P[>>1>?VM?y?V??V[>> >>c> ? ??cM?k?k?y?c??c>> >?aM?k?ak?y? ?? >>U>>P>>U>>P??U??P??U??]??a??S@@]@A]AB]Z@@S@@u@@S@@SAASABP@@i@1i@@_@@_@A_AB_@@i@0i@@^@A^AB^i@@0@@P@A0AB0m@@U@@P@@U@@P@@U@@PAAUABSBBP CCP99P99Sc7g7Pg77_77P77S77S$:(:P(::^:b:Pb::^u:y:Py::_::_h;k;_k;u;ph;u;Vk;;_9<u<_=[>_??_k;;V9<u<V=[>V??VM>[>Po=r=_r=y=po=y=Vr==_@@@_AA_B"B_r==V@@@VAAVB"BVB"BPPlUlwUwUUPlTlwTwTVTPlQlwQwQ\QeqSwSP!U!AU%T%:V:@Q@AT%Q%<\<@R@AQuUUTVQTQ\RQuUUTXT U UT9V9TnrPr{S{P696U96o6So6q6Uq6v6S6=6T=6p6Vp6q6Tq6v6VU UT THVHIUT"IVUT" VU=SIS SP@oTo\Td\diT@oQoSQQiSk^i^PP\Tdi\SP-]29<[x[x D P  , [ ' e B(re ~ @<% P ~  %  , P [ B2r[ B2r} +0B %((+05HLPSV_gj DP   , [ Br  , [ Br ' e (  &  8  @ ` ` O ] ` v & 5 8 I H 0x ,2369>#@#$%&#&#$%@##$0$p$$#$%V%&Z'''' '$')' (1APPPSaejosw|I@NEXX_x,,3L  'E  + . K  /     2 ##*Ghho0}7d{ab{ } Q R d w JMS[[wz`cfilq\buuy,2FFJSADGV%07H4 : A C G X B_ddq6AKv > /K:nxxV``04AF  @ ` 8h@)bs4!Z!##P$y$))**KRovz:nxxV``04AF  @ ` 8h@)bs4!Z!##P$y$))**D P$y$** ` @  @`  s  @` :ehs Z!"##%%l''t(())h,,g---*.WZ_ehs Z!"##%%l''t(())h,,g---*.A!"}''t((("="y""/7 $e##nxx ""###P$h&0''(B(t()))s*",/,-- ""###P$h&0''(B(t()))s*",/,--,'())D##h&&(()s*&&&&** *s*V``0ep"#7&h&0'l'(((:))s***+/,<,-g---*./0ep"#7&h&0'l'(((:))s***+/,<,-g---*./0:))s***.{..//.D...ep"""#J'l'(((TX\-- ---g---4AF ` pE?b%7&((B(FMZ^b ` pE?b%7&((B( E twzy?b%%%7&((B( `8h`)Eh? !4!(:)**+",<,h,,-58;>PS[_c8h`)Eh? !4!(:)**+",<,h,,-58;>PSOh?(:)**,",<,], ?"Y*,",<,],(:)**p)UP+,],h,,, !y$%((8P 1 > @ >T  Z2(@68:=OT`e ) ) 2 2 P !P!P##$ %2 2 2 P $ % !P!p!@#P# !P!p!p!"#$ %4%!!!W"####`$$$$""" #&&&&','0'9'p''*0*h((((()P++H.h.8/f/33((()33`)*+/+`--h.8/f//34))f//x..343334+++(,P,`-/91:5b5,,,4-////000919134:5b55561B255@7G7J7c7p7777:: :$:8::::h;;9<u<=[>??x;{;;;9<u<=[>??o==@@@AAB"B====@@@AAB"B[>H?M?y???> ?M?y?????AA@@@@AABi@@@AABiAA"BtB,FH]]C^h^__FF]]QH\H`HCICIoIRRHCICIMIRRIIIII l] lu l } } } :A :9 #U0"``0"p #    1 ہX ہ~     ʃ< ʃ\ z    Ʉ Ʉ% 2D 2f      # : W ,r ,   / / a2 aS ^r ^   1 1  I6  IV  t   _  _  $  $  "  @  ֢\  ֢y  ֣  ֣  v      l  l.  lG  ld  l|  l  l  l       0  qO  aa $"i  q  Ѧ  Ѧ     `   `P  P  &  . P5 D ;  N  ڸe  l|  l  l  l  l  l  l% lA c      9 [ |   \ \  ( ڸPG [ s l l l l l l! l: lW z     V  V0 ZQ a u l l l l l l  l  l9 X u  ! ! v v # @ *[ *w W W   . .8 _ |      # = \ y      !' !E ua u}      & 1C 1` Q{ Q I I    l0 lI lc l l l l l  -% -F ce c     # #9 _    ( (  S) SE _     # M v   ) )! 8I 8r [ [   </ <N k       %  E  c       ! <#! <C! xa! x! ! ! ! ! " ?" g" " "" " [" l# l# l9# lY# lt# l# l# l# # #  $ !$ D& 46$ L$ `$ g$ ~$ % $ $ $ $`$ % ,% I% d% % % 0"% % & !& ?&0"L& v& $& $& & & [' [' 6' S' ,n' ,' P' P' y' y' H( H( !6( !U( [{(r( `( I( l( l( l( l( l) l4) lJ) ld) `) V) V) ) ) L* L* Y2* YS* rr* r* * * * * I+* P +  + l4+ lL+ le+ l+ l+ l+ l+ l+ P, :, a, , , N, N- .- Y- - - ] - =- ] - !. ` 2. !X. -|. ! . -. :. - . :/ ;D/ :)^/ ;/ B/ ;/00"/ B0 VS60h4"G0 VSk0 S0 S0 `0 `1 ~)1 ~N1 ;q1 ;1 1 @1 1 72 7-2 C2 i2 ې2 2 ې2 12 13 ޒ,3 @G3 ޒc3 ؔ}3 ؔ3 ^3 ~3 ^4 ϗ44 `oX4 ϗt4 æ4 æ4 4 4 [5 5 [95 S5 }5 ^5 5 ^5 85 8 6 H6 @~c6 6 66 l6 l6 0m6@0"6X$" 7 pm7P$"667D7 J7`$"W7(&"`7Ps7@0"7(("7 PQ77 7 H7 и 7 Q77 88 !+8B8T8 e8 o8 Q8888 "8 889 $9 `a09=9 HP9d9 Yq99 `9 K9 0F9999 P: 8: 2:>: X: o:~: `-:: |: : E:: `: ;<0";  %; 06;A; @DT; d; {; 0; @; @8; L;; 0; ; P)< 1< (<D< PO< (j< @< <<< << < `1<= `=.=<=J=W= |h=v= = 0+== = p===  > 0 > 03$>9>P> 0bj>{> @> 01> l>>> `,> ~[? 0E? y? P:3 Q.? .;?80"J? X? 2d? PA?? Дa??? З?? U? @ j@ +@ P 6@ E@R@f@ 7 s@@ @@@@@ _@ `a@A 3A n*A ;A 0VAcA otAA `tpG AAAA A A3 B 0Bl4":B `Sfp4"OB cBvB mB V6 `B 0'B X5 `QBB 0fBB !B `CC'C3C40"CCOC `ofC{CC `1C  C<0"C2 @CCCC D ,D ;?B 0#9DFD p#YD }5 ЦhD}DD S D .DDDD @ D E ЄbE *E @9E `JE P[E= jE~E >EE E 5EEE0F 1F/FAFRFfFzFF .FF F  FFF GG P:)G 6G @G QG kG BG ~GG @GGG G H!H @+H ~;HGHUH dH"HH `H }H H ,H `HHI$I 0d2I`4"BIVI ЃgIII .annobin_bytecode.c.annobin_bytecode.c_end.annobin_bytecode.c.hot.annobin_bytecode.c_end.hot.annobin_bytecode.c.unlikely.annobin_bytecode.c_end.unlikely.annobin_bytecode.c.startup.annobin_bytecode.c_end.startup.annobin_bytecode.c.exit.annobin_bytecode.c_end.exit.annobin_get_inline.start.annobin_get_inline.end.annobin_sycklex_bytecode_utf8.start.annobin_sycklex_bytecode_utf8.end.annobin_emitter.c.annobin_emitter.c_end.annobin_emitter.c.hot.annobin_emitter.c_end.hot.annobin_emitter.c.unlikely.annobin_emitter.c_end.unlikely.annobin_emitter.c.startup.annobin_emitter.c_end.startup.annobin_emitter.c.exit.annobin_emitter.c_end.exit.annobin_syck_st_free_anchors.start.annobin_syck_st_free_anchors.end.annobin_syck_base64enc.start.annobin_syck_base64enc.endb64_table.annobin_syck_base64dec.start.annobin_syck_base64dec.endfirst.4417b64_xtable.4418.annobin_syck_emitter_st_free.start.annobin_syck_emitter_st_free.end.annobin_syck_emitter_current_level.start.annobin_syck_emitter_current_level.end.annobin_syck_emitter_parent_level.start.annobin_syck_emitter_parent_level.end.annobin_syck_emitter_pop_level.start.annobin_syck_emitter_pop_level.end.annobin_syck_emitter_add_level.start.annobin_syck_emitter_add_level.end.annobin_syck_emitter_reset_levels.start.annobin_syck_emitter_reset_levels.end.annobin_syck_new_emitter.start.annobin_syck_new_emitter.end.annobin_syck_emitter_handler.start.annobin_syck_emitter_handler.end.annobin_syck_output_handler.start.annobin_syck_output_handler.end.annobin_syck_free_emitter.start.annobin_syck_free_emitter.end.annobin_syck_emitter_clear.start.annobin_syck_emitter_clear.end.annobin_syck_emitter_flush.start.annobin_syck_emitter_flush.end.annobin_syck_emitter_write.start.annobin_syck_emitter_write.end.annobin_syck_emit.start.annobin_syck_emit.end.annobin_syck_emit_tag.start.annobin_syck_emit_tag.end.annobin_syck_emit_indent.start.annobin_syck_emit_indent.end.annobin_syck_scan_scalar.start.annobin_syck_scan_scalar.end.annobin_syck_emitter_escape.start.annobin_syck_emitter_escape.end.annobin_syck_emit_1quoted.start.annobin_syck_emit_1quoted.end.annobin_syck_emit_2quoted_1.start.annobin_syck_emit_2quoted_1.end.annobin_syck_emit_2quoted.start.annobin_syck_emit_2quoted.end.annobin_syck_emit_literal.start.annobin_syck_emit_literal.end.annobin_syck_emit_folded.start.annobin_syck_emit_folded.end.annobin_syck_emit_scalar.start.annobin_syck_emit_scalar.end.annobin_syck_emit_seq.start.annobin_syck_emit_seq.end.annobin_syck_emit_map.start.annobin_syck_emit_map.end.annobin_syck_emit_item.start.annobin_syck_emit_item.end.annobin_syck_emit_end.start.annobin_syck_emit_end.end.annobin_syck_emitter_mark_node.start.annobin_syck_emitter_mark_node.end.annobin_gram.c.annobin_gram.c_end.annobin_gram.c.hot.annobin_gram.c_end.hot.annobin_gram.c.unlikely.annobin_gram.c_end.unlikely.annobin_gram.c.startup.annobin_gram.c_end.startup.annobin_gram.c.exit.annobin_gram.c_end.exit.annobin_yy_stack_print.start.annobin_yy_stack_print.endyy_stack_print.annobin_yysymprint.isra.0.start.annobin_yysymprint.isra.0.endyysymprint.isra.0yytname.annobin_apply_seq_in_map.start.annobin_apply_seq_in_map.end.annobin_syckparse.start.annobin_syckparse.endyypactyytranslateyycheckyytableyydefactyyr2yypgotoyyr1yydefgotoyystosyyrlineyyprhsyyrhs.annobin_handler.c.annobin_handler.c_end.annobin_handler.c.hot.annobin_handler.c_end.hot.annobin_handler.c.unlikely.annobin_handler.c_end.unlikely.annobin_handler.c.startup.annobin_handler.c_end.startup.annobin_handler.c.exit.annobin_handler.c_end.exit.annobin_syck_hdlr_add_node.start.annobin_syck_hdlr_add_node.end.annobin_syck_hdlr_add_anchor.start.annobin_syck_hdlr_add_anchor.end.annobin_syck_hdlr_remove_anchor.start.annobin_syck_hdlr_remove_anchor.end.annobin_syck_hdlr_get_anchor.start.annobin_syck_hdlr_get_anchor.end.annobin_syck_add_transfer.start.annobin_syck_add_transfer.end.annobin_syck_xprivate.start.annobin_syck_xprivate.end.annobin_syck_taguri.start.annobin_syck_taguri.end.annobin_syck_try_implicit.start.annobin_syck_try_implicit.end.annobin_implicit.c.annobin_implicit.c_end.annobin_implicit.c.hot.annobin_implicit.c_end.hot.annobin_implicit.c.unlikely.annobin_implicit.c_end.unlikely.annobin_implicit.c.startup.annobin_implicit.c_end.startup.annobin_implicit.c.exit.annobin_implicit.c_end.exit.annobin_syck_match_implicit.start.annobin_syck_match_implicit.end.annobin_try_tag_implicit.start.annobin_try_tag_implicit.end.annobin_syck_tagcmp.start.annobin_syck_tagcmp.end.annobin_syck_type_id_to_uri.start.annobin_syck_type_id_to_uri.end.annobin_node.c.annobin_node.c_end.annobin_node.c.hot.annobin_node.c_end.hot.annobin_node.c.unlikely.annobin_node.c_end.unlikely.annobin_node.c.startup.annobin_node.c_end.startup.annobin_node.c.exit.annobin_node.c_end.exit.annobin_syck_alloc_node.start.annobin_syck_alloc_node.end.annobin_syck_alloc_map.start.annobin_syck_alloc_map.end.annobin_syck_alloc_seq.start.annobin_syck_alloc_seq.end.annobin_syck_alloc_str.start.annobin_syck_alloc_str.end.annobin_syck_new_str2.start.annobin_syck_new_str2.end.annobin_syck_new_str.start.annobin_syck_new_str.end.annobin_syck_replace_str2.start.annobin_syck_replace_str2.end.annobin_syck_replace_str.start.annobin_syck_replace_str.end.annobin_syck_str_blow_away_commas.start.annobin_syck_str_blow_away_commas.end.annobin_syck_str_read.start.annobin_syck_str_read.end.annobin_syck_map_empty.start.annobin_syck_map_empty.end.annobin_syck_map_add.start.annobin_syck_map_add.end.annobin_syck_new_map.start.annobin_syck_new_map.end.annobin_syck_map_update.start.annobin_syck_map_update.end.annobin_syck_map_count.start.annobin_syck_map_count.end.annobin_syck_map_assign.start.annobin_syck_map_assign.end.annobin_syck_map_read.start.annobin_syck_map_read.end.annobin_syck_seq_empty.start.annobin_syck_seq_empty.end.annobin_syck_seq_add.start.annobin_syck_seq_add.end.annobin_syck_new_seq.start.annobin_syck_new_seq.end.annobin_syck_seq_count.start.annobin_syck_seq_count.end.annobin_syck_seq_assign.start.annobin_syck_seq_assign.end.annobin_syck_seq_read.start.annobin_syck_seq_read.end.annobin_syck_free_members.start.annobin_syck_free_members.end.annobin_syck_free_node.start.annobin_syck_free_node.end.annobin_syck_.c.annobin_syck_.c_end.annobin_syck_.c.hot.annobin_syck_.c_end.hot.annobin_syck_.c.unlikely.annobin_syck_.c_end.unlikely.annobin_syck_.c.startup.annobin_syck_.c_end.startup.annobin_syck_.c.exit.annobin_syck_.c_end.exit.annobin_syck_io_str_read.start.annobin_syck_io_str_read.end.annobin_syck_io_file_read.start.annobin_syck_io_file_read.end.annobin_syck_st_free_nodes.start.annobin_syck_st_free_nodes.end.annobin_syck_assert.start.annobin_syck_assert.end.annobin_syck_strndup.start.annobin_syck_strndup.end.annobin_syck_parser_reset_cursor.start.annobin_syck_parser_reset_cursor.end.annobin_syck_parser_set_root_on_error.start.annobin_syck_parser_set_root_on_error.end.annobin_syck_add_sym.start.annobin_syck_add_sym.end.annobin_syck_lookup_sym.start.annobin_syck_lookup_sym.end.annobin_syck_st_free.start.annobin_syck_st_free.end.annobin_syck_parser_handler.start.annobin_syck_parser_handler.end.annobin_syck_parser_implicit_typing.start.annobin_syck_parser_implicit_typing.end.annobin_syck_parser_taguri_expansion.start.annobin_syck_parser_taguri_expansion.end.annobin_syck_parser_error_handler.start.annobin_syck_parser_error_handler.end.annobin_syck_parser_bad_anchor_handler.start.annobin_syck_parser_bad_anchor_handler.end.annobin_syck_parser_set_input_type.start.annobin_syck_parser_set_input_type.end.annobin_syck_parser_current_level.start.annobin_syck_parser_current_level.end.annobin_syck_parser_pop_level.start.annobin_syck_parser_pop_level.end.annobin_syck_parser_reset_levels.start.annobin_syck_parser_reset_levels.end.annobin_syck_new_parser.start.annobin_syck_new_parser.end.annobin_syck_parser_add_level.start.annobin_syck_parser_add_level.end.annobin_free_any_io.start.annobin_free_any_io.end.annobin_syck_free_parser.start.annobin_syck_free_parser.end.annobin_syck_parser_file.start.annobin_syck_parser_file.end.annobin_syck_parser_str.start.annobin_syck_parser_str.end.annobin_syck_parser_str_auto.start.annobin_syck_parser_str_auto.end.annobin_syck_move_tokens.start.annobin_syck_move_tokens.end.annobin_syck_check_limit.start.annobin_syck_check_limit.end.annobin_syck_parser_read.start.annobin_syck_parser_read.end.annobin_syck_parser_readlen.start.annobin_syck_parser_readlen.end.annobin_syck_parse.start.annobin_syck_parse.end.annobin_syck_default_error_handler.start.annobin_syck_default_error_handler.end.annobin_syck_str_is_unquotable_integer.start.annobin_syck_str_is_unquotable_integer.end.annobin_syck_st.c.annobin_syck_st.c_end.annobin_syck_st.c.hot.annobin_syck_st.c_end.hot.annobin_syck_st.c.unlikely.annobin_syck_st.c_end.unlikely.annobin_syck_st.c.startup.annobin_syck_st.c_end.startup.annobin_syck_st.c.exit.annobin_syck_st.c_end.exit.annobin_delete_never.start.annobin_delete_never.enddelete_never.annobin_strhash.start.annobin_strhash.end.annobin_numcmp.start.annobin_numcmp.endnumcmp.annobin_numhash.start.annobin_numhash.end.annobin_rehash.isra.0.start.annobin_rehash.isra.0.endrehash.isra.0primes.annobin_st_init_table_with_size.start.annobin_st_init_table_with_size.end.annobin_st_init_table.start.annobin_st_init_table.end.annobin_st_init_numtable.start.annobin_st_init_numtable.endtype_numhash.annobin_st_init_numtable_with_size.start.annobin_st_init_numtable_with_size.end.annobin_st_init_strtable.start.annobin_st_init_strtable.endtype_strhash.annobin_st_init_strtable_with_size.start.annobin_st_init_strtable_with_size.end.annobin_st_free_table.start.annobin_st_free_table.end.annobin_st_lookup.start.annobin_st_lookup.end.annobin_st_insert.start.annobin_st_insert.end.annobin_st_add_direct.start.annobin_st_add_direct.end.annobin_st_copy.start.annobin_st_copy.end.annobin_st_delete.start.annobin_st_delete.end.annobin_st_delete_safe.start.annobin_st_delete_safe.end.annobin_st_foreach.start.annobin_st_foreach.end.annobin_st_cleanup_safe.start.annobin_st_cleanup_safe.end.annobin_token.c.annobin_token.c_end.annobin_token.c.hot.annobin_token.c_end.hot.annobin_token.c.unlikely.annobin_token.c_end.unlikely.annobin_token.c.startup.annobin_token.c_end.startup.annobin_token.c.exit.annobin_token.c_end.exit.annobin_eat_comments.start.annobin_eat_comments.end.annobin_escape_seq.start.annobin_escape_seq.end.annobin_newline_len.start.annobin_newline_len.end.annobin_is_newline.start.annobin_is_newline.end.annobin_sycklex_yaml_utf8.start.annobin_sycklex_yaml_utf8.end.annobin_syckwrap.start.annobin_syckwrap.end.annobin_syckerror.start.annobin_syckerror.end.annobin_sycklex.start.annobin_sycklex.end.annobin_Syck.c.annobin_Syck.c_end.annobin_Syck.c.hot.annobin_Syck.c_end.hot.annobin_Syck.c.unlikely.annobin_Syck.c_end.unlikely.annobin_Syck.c.startup.annobin_Syck.c_end.startup.annobin_Syck.c.exit.annobin_Syck.c_end.exit.annobin_perl_syck_bad_anchor_handler.start.annobin_perl_syck_bad_anchor_handler.end.annobin_perl_syck_error_handler.start.annobin_perl_syck_error_handler.end.annobin_perl_syck_output_handler_pv.start.annobin_perl_syck_output_handler_pv.end.annobin_perl_syck_output_handler_mg.start.annobin_perl_syck_output_handler_mg.end.annobin_perl_syck_output_handler_io.start.annobin_perl_syck_output_handler_io.end.annobin_Perl_is_utf8_string.start.annobin_Perl_is_utf8_string.endPerl_is_utf8_string.annobin_is_bad_alias_object.start.annobin_is_bad_alias_object.endis_bad_alias_object.annobin_XS_YAML__Syck_LoadJSON.start.annobin_XS_YAML__Syck_LoadJSON.endXS_YAML__Syck_LoadJSON.annobin_XS_YAML__Syck_LoadYAML.start.annobin_XS_YAML__Syck_LoadYAML.endXS_YAML__Syck_LoadYAML.annobin_register_bad_alias.isra.0.start.annobin_register_bad_alias.isra.0.endregister_bad_alias.isra.0.annobin_json_syck_emitter_handler.start.annobin_json_syck_emitter_handler.endjson_syck_emitter_handler.localalias.3json_quote_style.annobin_yaml_syck_emitter_handler.start.annobin_yaml_syck_emitter_handler.endyaml_quote_style.annobin_perl_syck_lookup_sym.start.annobin_perl_syck_lookup_sym.end.annobin_json_syck_parser_handler.start.annobin_json_syck_parser_handler.end.annobin_yaml_syck_parser_handler.start.annobin_yaml_syck_parser_handler.end.annobin_perl_json_postprocess.start.annobin_perl_json_postprocess.end.annobin_json_syck_mark_emitter.start.annobin_json_syck_mark_emitter.endjson_syck_mark_emitter.localalias.4.annobin_DumpJSONImpl.start.annobin_DumpJSONImpl.end.annobin_DumpJSON.start.annobin_DumpJSON.end.annobin_XS_YAML__Syck_DumpJSON.start.annobin_XS_YAML__Syck_DumpJSON.endXS_YAML__Syck_DumpJSON.annobin_DumpJSONFile.start.annobin_DumpJSONFile.end.annobin_XS_YAML__Syck_DumpJSONFile.start.annobin_XS_YAML__Syck_DumpJSONFile.endXS_YAML__Syck_DumpJSONFile.annobin_DumpJSONInto.start.annobin_DumpJSONInto.end.annobin_XS_YAML__Syck_DumpJSONInto.start.annobin_XS_YAML__Syck_DumpJSONInto.endXS_YAML__Syck_DumpJSONInto.annobin_yaml_syck_mark_emitter.start.annobin_yaml_syck_mark_emitter.endyaml_syck_mark_emitter.localalias.2.annobin_DumpYAMLImpl.start.annobin_DumpYAMLImpl.end.annobin_DumpYAML.start.annobin_DumpYAML.end.annobin_XS_YAML__Syck_DumpYAML.start.annobin_XS_YAML__Syck_DumpYAML.endXS_YAML__Syck_DumpYAML.annobin_DumpYAMLFile.start.annobin_DumpYAMLFile.end.annobin_XS_YAML__Syck_DumpYAMLFile.start.annobin_XS_YAML__Syck_DumpYAMLFile.endXS_YAML__Syck_DumpYAMLFile.annobin_DumpYAMLInto.start.annobin_DumpYAMLInto.end.annobin_XS_YAML__Syck_DumpYAMLInto.start.annobin_XS_YAML__Syck_DumpYAMLInto.endXS_YAML__Syck_DumpYAMLInto.annobin_boot_YAML__Syck.start.annobin_boot_YAML__Syck.endcrtstuff.cderegister_tm_clones__do_global_dtors_auxcompleted.7303__do_global_dtors_aux_fini_array_entryframe_dummy__frame_dummy_init_array_entry__FRAME_END___fini__dso_handle_DYNAMIC__GNU_EH_FRAME_HDR__TMC_END___GLOBAL_OFFSET_TABLE__initPerl_sortsvst_init_strtablesyck_emitsyck_try_implicitsyck_alloc_mapPerl_sv_2iv_flagsPerl_sv_2bool_flagsfree@@GLIBC_2.2.5syck_map_assignPerl_looks_like_numberPerl_hv_iterkeysvsyck_io_str_readst_lookupapply_seq_in_mapabort@@GLIBC_2.2.5__errno_location@@GLIBC_2.2.5Perl_newRV_noincsyck_parsesyck_parser_add_levelPerl_stack_growstrncmp@@GLIBC_2.2.5_ITM_deregisterTMCloneTablesyck_taguriPerl_my_atofsyck_hdlr_add_nodestrcpy@@GLIBC_2.2.5syck_seq_addPerl_sv_catpvn_flagssyck_emit_seqboot_YAML__Sycksyck_alloc_seqfread@@GLIBC_2.2.5Perl_call_methodstrtod@@GLIBC_2.2.5perl_syck_bad_anchor_handlersyck_alloc_strsyck_emitter_current_levelPerl_av_lensyck_emitter_reset_levelssyck_emitter_add_levelPerl_pop_scopesycklex_yaml_utf8Perl_av_shiftsyck_move_tokensst_init_table_with_sizesyck_assertPerl_sv_reftypesyck_free_memberssyck_emitter_parent_level_edatasyck_seq_countsyck_emit_indentPerl_newSVsyck_emitter_clearsyck_map_updatesyck_emitter_mark_nodesyck_parser_reset_cursorsyck_seq_readsyck_check_limitsyck_xprivatestrlen@@GLIBC_2.2.5syck_emit_mapsyck_hdlr_get_anchorst_deleteperl_syck_error_handlersyck_str_read__stack_chk_fail@@GLIBC_2.4st_foreachsyck_default_error_handlersyck_parser_current_levelsyck_parser_readlenstrchr@@GLIBC_2.2.5Perl_sv_setiv_mgst_init_strtable_with_sizePL_thr_keysyck_emit_tagst_insertPerl__is_utf8_char_helperyaml_syck_parser_handlerPerl_av_storePerl_sv_setpvPerl_newSVnvsyck_parser_readPerl_sv_blesssyck_hdlr_add_anchorst_cleanup_safememset@@GLIBC_2.2.5syck_emitter_writesyck_emit_1quotedPerl_sv_2pv_flagsPerl_xs_boot_epilogsyck_seq_assignst_copysyck_io_file_readstrncat@@GLIBC_2.2.5Perl_hv_iternext_flagssyck_str_blow_away_commasPerl_grok_numberjson_syck_mark_emittersyck_emitter_escapesyck_map_emptyfputc@@GLIBC_2.2.5Perl_safesysmallocsyck_type_id_to_uriperl_json_postprocesssyck_seq_emptysycklexsyck_add_transfersyck_new_mapjson_max_depthst_add_directfree_any_ioperl_syck_output_handler_mgcalloc@@GLIBC_2.2.5syck_emit_2quotedPerl_grok_octstrcmp@@GLIBC_2.2.5DumpYAMLImplPerl_sv_isobjectsyck_emitter_flushPerl_gv_fetchpvsyck_new_str2syck_match_implicitis_newline__gmon_start__Perl_newSVsvPerl_croak_xs_usageDumpJSONImplstrtol@@GLIBC_2.2.5try_tag_implicitPerl_savetmpsmemcpy@@GLIBC_2.14Perl_gv_stashpvPerl_sv_lensyck_emit_scalarsyck_emit_2quoted_1Perl_av_pushsyck_strndupsycklex_bytecode_utf8st_init_numtablesyck_parser_set_input_typePerl_newSVpvsyck_scan_scalarpthread_getspecific@@GLIBC_2.2.5syck_st_freemalloc@@GLIBC_2.2.5fflush@@GLIBC_2.2.5PL_nansyck_parser_implicit_typingst_delete_safePerl_croak_nocontextsyck_parser_bad_anchor_handlersyckdebugperl_syck_lookup_symsyck_output_handlerPerl_newXS_deffileget_inlinest_init_numtable_with_sizesyck_new_strsyck_add_symPerl_grok_hexsyck_emitter_st_freePerl_hv_iterinitsyck_map_readescape_seqPerl_sv_setsv_flagsPerl_sv_2mortalPerl_sv_cmpjson_quote_charPerl_mg_getyaml_syck_mark_emitterrealloc@@GLIBC_2.2.5Perl_eval_pvsyck_parser_pop_levelsyckwrap__bss_startPerl_hv_commonPerl_newSVuvPerl_safesysfree__printf_chk@@GLIBC_2.3.4syck_hdlr_remove_anchorsyck_new_seqjson_syck_emitter_handlerPerl_call_pvsyck_st_free_nodessyck_base64encmemmove@@GLIBC_2.2.5Perl_croak_svjson_syck_parser_handlersyck_replace_strPerl_sv_2ioPerl_xs_handshakePerl_av_fetchsyck_emit_literalsyck_parser_reset_levelssyck_free_emittersyck_tagcmpsyck_base64decsyck_parser_filesyck_emit_foldedPerl_free_tmpsstrtok@@GLIBC_2.2.5perl_syck_output_handler_pvPerl_markstack_growsyck_parser_set_root_on_errorsyck_alloc_nodePerl_hv_common_key_lenPerl_newRVhex_tablesyck_emitter_pop_levelPerl_newSV_typePerl_PerlIO_writePerl_block_gimmePerl_form_nocontextstrcat@@GLIBC_2.2.5Perl_sv_catpvsyck_parser_str_autoPL_infsyck_emit_itemsyck_parser_error_handlerfwrite@@GLIBC_2.2.5__fprintf_chk@@GLIBC_2.3.4Perl_sv_free2Perl_push_scopesyck_free_nodesyck_map_addsyckparsesyck_free_parser_ITM_registerTMCloneTableyaml_syck_emitter_handlerperl_syck_output_handler_ioPerl_newSVivsyck_new_parserPerl_newSVpvn_sharePerl_hv_itervalsyck_parser_taguri_expansionst_init_tablePerl_gv_add_by_typesyckerrorsyck_parser_strPerl_savepvPerl_newSVpvnsyck_map_count__cxa_finalize@@GLIBC_2.2.5Perl_sv_newmortalsyck_replace_str2syck_st_free_anchorssyck_str_is_unquotable_integernewline_leneat_commentsPL_utf8skip__ctype_b_loc@@GLIBC_2.3Perl_av_clearst_free_tablesyck_parser_ptrstderr@@GLIBC_2.2.5syck_new_emitter__sprintf_chk@@GLIBC_2.3.4Perl_hv_placeholders_getsyck_emit_end.symtab.strtab.shstrtab.note.gnu.build-id.gnu.hash.dynsym.dynstr.gnu.version.gnu.version_r.rela.dyn.rela.plt.init.plt.sec.text.fini.rodata.eh_frame_hdr.eh_frame.note.gnu.property.init_array.fini_array.data.rel.ro.dynamic.got.data.bss.comment.gnu.build.attributes.debug_aranges.debug_info.debug_abbrev.debug_line.debug_str.debug_loc.debug_ranges88$.o``8 xxh@ Ho11Uo 4 4d44@nB<<pxPQPQspQpQ ~ _ _ llKC     0A PPd! P$"P$X$"X$`$"`$ (&"(&(("((0"0<@0"<00 0<0- p4bl0#T24.>:*L.'X0[clF\npGX 8L# \ I9 |perl5/auto/YAML/Syck/.packlist000064400000000436147205023560012040 0ustar00/usr/local/lib64/perl5/JSON/Syck.pm /usr/local/lib64/perl5/YAML/Dumper/Syck.pm /usr/local/lib64/perl5/YAML/Loader/Syck.pm /usr/local/lib64/perl5/YAML/Syck.pm /usr/local/lib64/perl5/auto/YAML/Syck/Syck.so /usr/local/share/man/man3/JSON::Syck.3pm /usr/local/share/man/man3/YAML::Syck.3pm perl5/IO/Tty/Constant.pm000044400000016070147205023560011017 0ustar00 package IO::Tty::Constant; our $VERSION = '1.20'; use vars qw(@ISA @EXPORT_OK); require Exporter; @ISA = qw(Exporter); @EXPORT_OK = qw(B0 B110 B115200 B1200 B134 B150 B153600 B1800 B19200 B200 B230400 B2400 B300 B307200 B38400 B460800 B4800 B50 B57600 B600 B75 B76800 B9600 BRKINT BS0 BS1 BSDLY CBAUD CBAUDEXT CBRK CCTS_OFLOW CDEL CDSUSP CEOF CEOL CEOL2 CEOT CERASE CESC CFLUSH CIBAUD CIBAUDEXT CINTR CKILL CLNEXT CLOCAL CNSWTCH CNUL CQUIT CR0 CR1 CR2 CR3 CRDLY CREAD CRPRNT CRTSCTS CRTSXOFF CRTS_IFLOW CS5 CS6 CS7 CS8 CSIZE CSTART CSTOP CSTOPB CSUSP CSWTCH CWERASE DEFECHO DIOC DIOCGETP DIOCSETP DOSMODE ECHO ECHOCTL ECHOE ECHOK ECHOKE ECHONL ECHOPRT EXTA EXTB FF0 FF1 FFDLY FIORDCHK FLUSHO HUPCL ICANON ICRNL IEXTEN IGNBRK IGNCR IGNPAR IMAXBEL INLCR INPCK ISIG ISTRIP IUCLC IXANY IXOFF IXON KBENABLED LDCHG LDCLOSE LDDMAP LDEMAP LDGETT LDGMAP LDIOC LDNMAP LDOPEN LDSETT LDSMAP LOBLK NCCS NL0 NL1 NLDLY NOFLSH OCRNL OFDEL OFILL OLCUC ONLCR ONLRET ONOCR OPOST PAGEOUT PARENB PAREXT PARMRK PARODD PENDIN RCV1EN RTS_TOG TAB0 TAB1 TAB2 TAB3 TABDLY TCDSET TCFLSH TCGETA TCGETS TCIFLUSH TCIOFF TCIOFLUSH TCION TCOFLUSH TCOOFF TCOON TCSADRAIN TCSAFLUSH TCSANOW TCSBRK TCSETA TCSETAF TCSETAW TCSETCTTY TCSETS TCSETSF TCSETSW TCXONC TERM_D40 TERM_D42 TERM_H45 TERM_NONE TERM_TEC TERM_TEX TERM_V10 TERM_V61 TIOCCBRK TIOCCDTR TIOCCONS TIOCEXCL TIOCFLUSH TIOCGETD TIOCGETC TIOCGETP TIOCGLTC TIOCSETC TIOCSETN TIOCSETP TIOCSLTC TIOCGPGRP TIOCGSID TIOCGSOFTCAR TIOCGWINSZ TIOCHPCL TIOCKBOF TIOCKBON TIOCLBIC TIOCLBIS TIOCLGET TIOCLSET TIOCMBIC TIOCMBIS TIOCMGET TIOCMSET TIOCM_CAR TIOCM_CD TIOCM_CTS TIOCM_DSR TIOCM_DTR TIOCM_LE TIOCM_RI TIOCM_RNG TIOCM_RTS TIOCM_SR TIOCM_ST TIOCNOTTY TIOCNXCL TIOCOUTQ TIOCREMOTE TIOCSBRK TIOCSCTTY TIOCSDTR TIOCSETD TIOCSIGNAL TIOCSPGRP TIOCSSID TIOCSSOFTCAR TIOCSTART TIOCSTI TIOCSTOP TIOCSWINSZ TM_ANL TM_CECHO TM_CINVIS TM_LCF TM_NONE TM_SET TM_SNL TOSTOP VCEOF VCEOL VDISCARD VDSUSP VEOF VEOL VEOL2 VERASE VINTR VKILL VLNEXT VMIN VQUIT VREPRINT VSTART VSTOP VSUSP VSWTCH VT0 VT1 VTDLY VTIME VWERASE WRAP XCASE XCLUDE XMT1EN XTABS); __END__ =head1 NAME IO::Tty::Constant - Terminal Constants (autogenerated) =head1 SYNOPSIS use IO::Tty::Constant qw(TIOCNOTTY); ... =head1 DESCRIPTION This package defines constants usually found in or (and their #include hierarchy). Find below an autogenerated alphabetic list of all known constants and whether they are defined on your system (prefixed with '+') and have compilation problems ('o'). Undefined or problematic constants are set to 'undef'. =head1 DEFINED CONSTANTS =over 4 =item + B0 =item + B110 =item + B115200 =item + B1200 =item + B134 =item + B150 =item - B153600 =item + B1800 =item + B19200 =item + B200 =item + B230400 =item + B2400 =item + B300 =item - B307200 =item + B38400 =item + B460800 =item + B4800 =item + B50 =item + B57600 =item + B600 =item + B75 =item - B76800 =item + B9600 =item + BRKINT =item + BS0 =item + BS1 =item + BSDLY =item + CBAUD =item - CBAUDEXT =item + CBRK =item - CCTS_OFLOW =item - CDEL =item + CDSUSP =item + CEOF =item + CEOL =item - CEOL2 =item + CEOT =item + CERASE =item - CESC =item + CFLUSH =item + CIBAUD =item - CIBAUDEXT =item + CINTR =item + CKILL =item + CLNEXT =item + CLOCAL =item - CNSWTCH =item - CNUL =item + CQUIT =item + CR0 =item + CR1 =item + CR2 =item + CR3 =item + CRDLY =item + CREAD =item + CRPRNT =item + CRTSCTS =item - CRTSXOFF =item - CRTS_IFLOW =item + CS5 =item + CS6 =item + CS7 =item + CS8 =item + CSIZE =item + CSTART =item + CSTOP =item + CSTOPB =item + CSUSP =item - CSWTCH =item + CWERASE =item - DEFECHO =item - DIOC =item - DIOCGETP =item - DIOCSETP =item - DOSMODE =item + ECHO =item + ECHOCTL =item + ECHOE =item + ECHOK =item + ECHOKE =item + ECHONL =item + ECHOPRT =item + EXTA =item + EXTB =item + FF0 =item + FF1 =item + FFDLY =item - FIORDCHK =item + FLUSHO =item + HUPCL =item + ICANON =item + ICRNL =item + IEXTEN =item + IGNBRK =item + IGNCR =item + IGNPAR =item + IMAXBEL =item + INLCR =item + INPCK =item + ISIG =item + ISTRIP =item + IUCLC =item + IXANY =item + IXOFF =item + IXON =item - KBENABLED =item - LDCHG =item - LDCLOSE =item - LDDMAP =item - LDEMAP =item - LDGETT =item - LDGMAP =item - LDIOC =item - LDNMAP =item - LDOPEN =item - LDSETT =item - LDSMAP =item - LOBLK =item + NCCS =item + NL0 =item + NL1 =item + NLDLY =item + NOFLSH =item + OCRNL =item + OFDEL =item + OFILL =item + OLCUC =item + ONLCR =item + ONLRET =item + ONOCR =item + OPOST =item - PAGEOUT =item + PARENB =item - PAREXT =item + PARMRK =item + PARODD =item + PENDIN =item - RCV1EN =item - RTS_TOG =item + TAB0 =item + TAB1 =item + TAB2 =item + TAB3 =item + TABDLY =item - TCDSET =item + TCFLSH =item + TCGETA =item + TCGETS =item + TCIFLUSH =item + TCIOFF =item + TCIOFLUSH =item + TCION =item + TCOFLUSH =item + TCOOFF =item + TCOON =item + TCSADRAIN =item + TCSAFLUSH =item + TCSANOW =item + TCSBRK =item + TCSETA =item + TCSETAF =item + TCSETAW =item - TCSETCTTY =item + TCSETS =item + TCSETSF =item + TCSETSW =item + TCXONC =item - TERM_D40 =item - TERM_D42 =item - TERM_H45 =item - TERM_NONE =item - TERM_TEC =item - TERM_TEX =item - TERM_V10 =item - TERM_V61 =item + TIOCCBRK =item - TIOCCDTR =item + TIOCCONS =item + TIOCEXCL =item - TIOCFLUSH =item + TIOCGETD =item - TIOCGETC =item - TIOCGETP =item - TIOCGLTC =item - TIOCSETC =item - TIOCSETN =item - TIOCSETP =item - TIOCSLTC =item + TIOCGPGRP =item + TIOCGSID =item + TIOCGSOFTCAR =item + TIOCGWINSZ =item - TIOCHPCL =item - TIOCKBOF =item - TIOCKBON =item - TIOCLBIC =item - TIOCLBIS =item - TIOCLGET =item - TIOCLSET =item + TIOCMBIC =item + TIOCMBIS =item + TIOCMGET =item + TIOCMSET =item + TIOCM_CAR =item + TIOCM_CD =item + TIOCM_CTS =item + TIOCM_DSR =item + TIOCM_DTR =item + TIOCM_LE =item + TIOCM_RI =item + TIOCM_RNG =item + TIOCM_RTS =item + TIOCM_SR =item + TIOCM_ST =item + TIOCNOTTY =item + TIOCNXCL =item + TIOCOUTQ =item - TIOCREMOTE =item + TIOCSBRK =item + TIOCSCTTY =item - TIOCSDTR =item + TIOCSETD =item - TIOCSIGNAL =item + TIOCSPGRP =item - TIOCSSID =item + TIOCSSOFTCAR =item - TIOCSTART =item + TIOCSTI =item - TIOCSTOP =item + TIOCSWINSZ =item - TM_ANL =item - TM_CECHO =item - TM_CINVIS =item - TM_LCF =item - TM_NONE =item - TM_SET =item - TM_SNL =item + TOSTOP =item - VCEOF =item - VCEOL =item + VDISCARD =item - VDSUSP =item + VEOF =item + VEOL =item + VEOL2 =item + VERASE =item + VINTR =item + VKILL =item + VLNEXT =item + VMIN =item + VQUIT =item + VREPRINT =item + VSTART =item + VSTOP =item + VSUSP =item - VSWTCH =item + VT0 =item + VT1 =item + VTDLY =item + VTIME =item + VWERASE =item - WRAP =item + XCASE =item - XCLUDE =item - XMT1EN =item + XTABS =back =head1 FOR MORE INFO SEE L =cut perl5/IO/Tty.pm000055500000020434147205023560007230 0ustar00# Documentation at the __END__ # -*-cperl-*- package IO::Tty; use strict; use warnings; use IO::Handle; use IO::File; use IO::Tty::Constant; use Carp; require POSIX; require DynaLoader; use vars qw(@ISA $VERSION $XS_VERSION $CONFIG $DEBUG); $VERSION = '1.20'; $XS_VERSION = "1.20"; @ISA = qw(IO::Handle); eval { local $^W = 0; undef local $SIG{__DIE__}; require IO::Stty }; push @ISA, "IO::Stty" if ( not $@ ); # if IO::Stty is installed BOOT_XS: { # If I inherit DynaLoader then I inherit AutoLoader and I DON'T WANT TO require DynaLoader; # DynaLoader calls dl_load_flags as a static method. *dl_load_flags = DynaLoader->can('dl_load_flags'); do { defined(&bootstrap) ? \&bootstrap : \&DynaLoader::bootstrap; } ->(__PACKAGE__); } sub import { IO::Tty::Constant->export_to_level( 1, @_ ); } sub open { my ( $tty, $dev, $mode ) = @_; IO::File::open( $tty, $dev, $mode ) or return undef; $tty->autoflush; 1; } sub clone_winsize_from { my ( $self, $fh ) = @_; croak "Given filehandle is not a tty in clone_winsize_from, called" if not POSIX::isatty($fh); return 1 if not POSIX::isatty($self); # ignored for master ptys my $winsize = " " x 1024; # preallocate memory for older perl versions $winsize = ''; # But leave the SV as empty ioctl( $fh, &IO::Tty::Constant::TIOCGWINSZ, $winsize ) and ioctl( $self, &IO::Tty::Constant::TIOCSWINSZ, $winsize ) and return 1; warn "clone_winsize_from: error: $!" if $^W; return undef; } # ioctl() doesn't tell us how long the structure is, so we'll have to trim it # after TIOCGWINSZ my $SIZEOF_WINSIZE = length IO::Tty::pack_winsize( 0, 0, 0, 0 ); sub get_winsize { my $self = shift; my $winsize = " " x 1024; # preallocate memory ioctl( $self, IO::Tty::Constant::TIOCGWINSZ(), $winsize ) or croak "Cannot TIOCGWINSZ - $!"; substr( $winsize, $SIZEOF_WINSIZE ) = ""; return IO::Tty::unpack_winsize($winsize); } sub set_winsize { my $self = shift; my $winsize = IO::Tty::pack_winsize(@_); ioctl( $self, IO::Tty::Constant::TIOCSWINSZ(), $winsize ) or croak "Cannot TIOCSWINSZ - $!"; } sub set_raw($) { require POSIX; my $self = shift; return 1 if not POSIX::isatty($self); my $ttyno = fileno($self); my $termios = new POSIX::Termios; unless ($termios) { warn "set_raw: new POSIX::Termios failed: $!"; return undef; } unless ( $termios->getattr($ttyno) ) { warn "set_raw: getattr($ttyno) failed: $!"; return undef; } $termios->setiflag(0); $termios->setoflag(0); $termios->setlflag(0); $termios->setcc( &POSIX::VMIN, 1 ); $termios->setcc( &POSIX::VTIME, 0 ); unless ( $termios->setattr( $ttyno, &POSIX::TCSANOW ) ) { warn "set_raw: setattr($ttyno) failed: $!"; return undef; } return 1; } 1; __END__ =head1 NAME IO::Tty - Low-level allocate a pseudo-Tty, import constants. =head1 VERSION 1.20 =head1 SYNOPSIS use IO::Tty qw(TIOCNOTTY); ... # use only to import constants, see IO::Pty to create ptys. =head1 DESCRIPTION C is used internally by C to create a pseudo-tty. You wouldn't want to use it directly except to import constants, use C. For a list of importable constants, see L. Windows is now supported, but ONLY under the Cygwin environment, see L. Please note that pty creation is very system-dependend. From my experience, any modern POSIX system should be fine. Find below a list of systems that C should work on. A more detailed table (which is slowly getting out-of-date) is available from the project pages document manager at SourceForge L. If you have problems on your system and your system is listed in the "verified" list, you probably have some non-standard setup, e.g. you compiled your Linux-kernel yourself and disabled ptys (bummer!). Please ask your friendly sysadmin for help. If your system is not listed, unpack the latest version of C, do a C<'perl Makefile.PL; make; make test; uname -a'> and send me (F) the results and I'll see what I can deduce from that. There are chances that it will work right out-of-the-box... If it's working on your system, please send me a short note with details (version number, distribution, etc. 'uname -a' and 'perl -V' is a good start; also, the output from "perl Makefile.PL" contains a lot of interesting info, so please include that as well) so I can get an overview. Thanks! =head1 VERIFIED SYSTEMS, KNOWN ISSUES This is a list of systems that C seems to work on ('make test' passes) with comments about "features": =over 4 =item * AIX 4.3 Returns EIO instead of EOF when the slave is closed. Benign. =item * AIX 5.x =item * FreeBSD 4.4 EOF on the slave tty is not reported back to the master. =item * OpenBSD 2.8 The ioctl TIOCSCTTY sometimes fails. This is also known in Tcl/Expect, see http://expect.nist.gov/FAQ.html EOF on the slave tty is not reported back to the master. =item * Darwin 7.9.0 =item * HPUX 10.20 & 11.00 EOF on the slave tty is not reported back to the master. =item * IRIX 6.5 =item * Linux 2.2.x & 2.4.x Returns EIO instead of EOF when the slave is closed. Benign. =item * OSF 4.0 EOF on the slave tty is not reported back to the master. =item * Solaris 8, 2.7, 2.6 Has the "feature" of returning EOF just once?! EOF on the slave tty is not reported back to the master. =item * Windows NT/2k/XP (under Cygwin) When you send (print) a too long line (>160 chars) to a non-raw pty, the call just hangs forever and even alarm() cannot get you out. Don't complain to me... EOF on the slave tty is not reported back to the master. =item * z/OS =back The following systems have not been verified yet for this version, but a previous version worked on them: =over 4 =item * SCO Unix =item * NetBSD probably the same as the other *BSDs... =back If you have additions to these lists, please mail them to EFE. =head1 SEE ALSO L, L =head1 MAILING LISTS As this module is mainly used by Expect, support for it is available via the two Expect mailing lists, expectperl-announce and expectperl-discuss, at http://lists.sourceforge.net/lists/listinfo/expectperl-announce and http://lists.sourceforge.net/lists/listinfo/expectperl-discuss =head1 AUTHORS Originally by Graham Barr EFE, based on the Ptty module by Nick Ing-Simmons EFE. Now maintained and heavily rewritten by Roland Giersig EFE. Contains copyrighted stuff from openssh v3.0p1, authored by Tatu Ylonen , Markus Friedl and Todd C. Miller . I also got a lot of inspiration from the pty code in Xemacs. =head1 COPYRIGHT Now all code is free software; you can redistribute it and/or modify it under the same terms as Perl itself. Nevertheless the above AUTHORS retain their copyrights to the various parts and want to receive credit if their source code is used. See the source for details. =head1 DISCLAIMER THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. In other words: Use at your own risk. Provided as is. Your mileage may vary. Read the source, Luke! And finally, just to be sure: Any Use of This Product, in Any Manner Whatsoever, Will Increase the Amount of Disorder in the Universe. Although No Liability Is Implied Herein, the Consumer Is Warned That This Process Will Ultimately Lead to the Heat Death of the Universe. =cut perl5/IO/Pty.pm000044400000022377147205023560007231 0ustar00# Documentation at the __END__ package IO::Pty; use strict; use Carp; use IO::Tty qw(TIOCSCTTY TCSETCTTY TIOCNOTTY); use IO::File; require POSIX; use vars qw(@ISA $VERSION); $VERSION = '1.20'; # keep same as in Tty.pm @ISA = qw(IO::Handle); eval { local $^W = 0; undef local $SIG{__DIE__}; require IO::Stty }; push @ISA, "IO::Stty" if ( not $@ ); # if IO::Stty is installed sub new { my ($class) = $_[0] || "IO::Pty"; $class = ref($class) if ref($class); @_ <= 1 or croak 'usage: new $class'; my ( $ptyfd, $ttyfd, $ttyname ) = pty_allocate(); croak "Cannot open a pty" if not defined $ptyfd; my $pty = $class->SUPER::new_from_fd( $ptyfd, "r+" ); croak "Cannot create a new $class from fd $ptyfd: $!" if not $pty; $pty->autoflush(1); bless $pty => $class; my $slave = IO::Tty->new_from_fd( $ttyfd, "r+" ); croak "Cannot create a new IO::Tty from fd $ttyfd: $!" if not $slave; $slave->autoflush(1); ${*$pty}{'io_pty_slave'} = $slave; ${*$pty}{'io_pty_ttyname'} = $ttyname; ${*$slave}{'io_tty_ttyname'} = $ttyname; return $pty; } sub ttyname { @_ == 1 or croak 'usage: $pty->ttyname();'; my $pty = shift; ${*$pty}{'io_pty_ttyname'}; } sub close_slave { @_ == 1 or croak 'usage: $pty->close_slave();'; my $master = shift; if ( exists ${*$master}{'io_pty_slave'} ) { close ${*$master}{'io_pty_slave'}; delete ${*$master}{'io_pty_slave'}; } } sub slave { @_ == 1 or croak 'usage: $pty->slave();'; my $master = shift; if ( exists ${*$master}{'io_pty_slave'} ) { return ${*$master}{'io_pty_slave'}; } my $tty = ${*$master}{'io_pty_ttyname'}; my $slave = new IO::Tty; $slave->open( $tty, O_RDWR | O_NOCTTY ) || croak "Cannot open slave $tty: $!"; return $slave; } sub make_slave_controlling_terminal { @_ == 1 or croak 'usage: $pty->make_slave_controlling_terminal();'; my $self = shift; local (*DEVTTY); # loose controlling terminal explicitly if ( defined TIOCNOTTY ) { if ( open( \*DEVTTY, "/dev/tty" ) ) { ioctl( \*DEVTTY, TIOCNOTTY, 0 ); close \*DEVTTY; } } # Create a new 'session', lose controlling terminal. if ( POSIX::setsid() == -1 ) { warn "setsid() failed, strange behavior may result: $!\r\n" if $^W; } if ( open( \*DEVTTY, "/dev/tty" ) ) { warn "Could not disconnect from controlling terminal?!\n" if $^W; close \*DEVTTY; } # now open slave, this should set it as controlling tty on some systems my $ttyname = ${*$self}{'io_pty_ttyname'}; my $slv = new IO::Tty; $slv->open( $ttyname, O_RDWR ) or croak "Cannot open slave $ttyname: $!"; if ( not exists ${*$self}{'io_pty_slave'} ) { ${*$self}{'io_pty_slave'} = $slv; } else { $slv->close; } # Acquire a controlling terminal if this doesn't happen automatically if ( not open( \*DEVTTY, "/dev/tty" ) ) { if ( defined TIOCSCTTY ) { if ( not defined ioctl( ${*$self}{'io_pty_slave'}, TIOCSCTTY, 0 ) ) { warn "warning: TIOCSCTTY failed, slave might not be set as controlling terminal: $!" if $^W; } } elsif ( defined TCSETCTTY ) { if ( not defined ioctl( ${*$self}{'io_pty_slave'}, TCSETCTTY, 0 ) ) { warn "warning: TCSETCTTY failed, slave might not be set as controlling terminal: $!" if $^W; } } else { warn "warning: You have neither TIOCSCTTY nor TCSETCTTY on your system\n" if $^W; return 0; } } if ( not open( \*DEVTTY, "/dev/tty" ) ) { warn "Error: could not connect pty as controlling terminal!\n"; return undef; } else { close \*DEVTTY; } return 1; } *clone_winsize_from = \&IO::Tty::clone_winsize_from; *get_winsize = \&IO::Tty::get_winsize; *set_winsize = \&IO::Tty::set_winsize; *set_raw = \&IO::Tty::set_raw; 1; __END__ =head1 NAME IO::Pty - Pseudo TTY object class =head1 VERSION 1.20 =head1 SYNOPSIS use IO::Pty; $pty = new IO::Pty; $slave = $pty->slave; foreach $val (1..10) { print $pty "$val\n"; $_ = <$slave>; print "$_"; } close($slave); =head1 DESCRIPTION C provides an interface to allow the creation of a pseudo tty. C inherits from C and so provide all the methods defined by the C package. Please note that pty creation is very system-dependent. If you have problems, see L for help. =head1 CONSTRUCTOR =over 3 =item new The C constructor takes no arguments and returns a new file object which is the master side of the pseudo tty. =back =head1 METHODS =over 4 =item ttyname() Returns the name of the slave pseudo tty. On UNIX machines this will be the pathname of the device. Use this name for informational purpose only, to get a slave filehandle, use slave(). =item slave() The C method will return the slave filehandle of the given master pty, opening it anew if necessary. If IO::Stty is installed, you can then call C<$slave-Estty()> to modify the terminal settings. =item close_slave() The slave filehandle will be closed and destroyed. This is necessary in the parent after forking to get rid of the open filehandle, otherwise the parent will not notice if the child exits. Subsequent calls of C will return a newly opened slave filehandle. =item make_slave_controlling_terminal() This will set the slave filehandle as the controlling terminal of the current process, which will become a session leader, so this should only be called by a child process after a fork(), e.g. in the callback to C (see L). See the C script (also C) for an example how to correctly spawn a subprocess. =item set_raw() Will set the pty to raw. Note that this is a one-way operation, you need IO::Stty to set the terminal settings to anything else. On some systems, the master pty is not a tty. This method checks for that and returns success anyway on such systems. Note that this method must be called on the slave, and probably should be called on the master, just to be sure, i.e. $pty->slave->set_raw(); $pty->set_raw(); =item clone_winsize_from(\*FH) Gets the terminal size from filehandle FH (which must be a terminal) and transfers it to the pty. Returns true on success and undef on failure. Note that this must be called upon the I, i.e. $pty->slave->clone_winsize_from(\*STDIN); On some systems, the master pty also isatty. I actually have no idea if setting terminal sizes there is passed through to the slave, so if this method is called for a master that is not a tty, it silently returns OK. See the C script for example code how to propagate SIGWINCH. =item get_winsize() Returns the terminal size, in a 4-element list. ($row, $col, $xpixel, $ypixel) = $tty->get_winsize() =item set_winsize($row, $col, $xpixel, $ypixel) Sets the terminal size. If not specified, C<$xpixel> and C<$ypixel> are set to 0. As with C, this must be called upon the I. =back =head1 SEE ALSO L, L, L, L, L =head1 MAILING LISTS As this module is mainly used by Expect, support for it is available via the two Expect mailing lists, expectperl-announce and expectperl-discuss, at http://lists.sourceforge.net/lists/listinfo/expectperl-announce and http://lists.sourceforge.net/lists/listinfo/expectperl-discuss =head1 AUTHORS Originally by Graham Barr EFE, based on the Ptty module by Nick Ing-Simmons EFE. Now maintained and heavily rewritten by Roland Giersig EFE. Contains copyrighted stuff from openssh v3.0p1, authored by Tatu Ylonen , Markus Friedl and Todd C. Miller . =head1 COPYRIGHT Now all code is free software; you can redistribute it and/or modify it under the same terms as Perl itself. Nevertheless the above AUTHORS retain their copyrights to the various parts and want to receive credit if their source code is used. See the source for details. =head1 DISCLAIMER THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. In other words: Use at your own risk. Provided as is. Your mileage may vary. Read the source, Luke! And finally, just to be sure: Any Use of This Product, in Any Manner Whatsoever, Will Increase the Amount of Disorder in the Universe. Although No Liability Is Implied Herein, the Consumer Is Warned That This Process Will Ultimately Lead to the Heat Death of the Universe. =cut perl5/common/sense.pm000044400000000754147205023560010546 0ustar00package common::sense; our $VERSION = 3.75; # overload should be included sub import { local $^W; # work around perl 5.16 spewing out warnings for next statement # use warnings ${^WARNING_BITS} ^= ${^WARNING_BITS} ^ "\x0c\x3f\x33\x00\x03\xf0\x0f\xc0\xf0\xfc\x33\x00\x00\x00\x0c\x00\x00"; # use strict, use utf8; use feature; $^H |= 0x1c820fc0; @^H{qw(feature___SUB__ feature_evalbytes feature_fc feature_say feature_state feature_switch feature_unicode)} = (1) x 7; } 1 perl5/common/sense.pod000044400000037071147205023560010716 0ustar00=head1 NAME common::sense - save a tree AND a kitten, use common::sense! =head1 SYNOPSIS use common::sense; # Supposed to be mostly the same, with much lower memory usage, as: # use utf8; # use strict qw(vars subs); # use feature qw(say state switch); # use feature qw(unicode_strings unicode_eval current_sub fc evalbytes); # no feature qw(array_base); # no warnings; # use warnings qw(FATAL closed threads internal debugging pack # prototype inplace io pipe unpack malloc glob # digit printf layer reserved taint closure semicolon); # no warnings qw(exec newline unopened); =head1 DESCRIPTION “Nothing is more fairly distributed than common sense: no one thinks he needs more of it than he already has.” – René Descartes This module implements some sane defaults for Perl programs, as defined by two typical (or not so typical - use your common sense) specimens of Perl coders. In fact, after working out details on which warnings and strict modes to enable and make fatal, we found that we (and our code written so far, and others) fully agree on every option, even though we never used warnings before, so it seems this module indeed reflects a "common" sense among some long-time Perl coders. The basic philosophy behind the choices made in common::sense can be summarised as: "enforcing strict policies to catch as many bugs as possible, while at the same time, not limiting the expressive power available to the programmer". Two typical examples of how this philosophy is applied in practise is the handling of uninitialised and malloc warnings: =over 4 =item I C is a well-defined feature of perl, and enabling warnings for using it rarely catches any bugs, but considerably limits you in what you can do, so uninitialised warnings are disabled. =item I Freeing something twice on the C level is a serious bug, usually causing memory corruption. It often leads to side effects much later in the program and there are no advantages to not reporting this, so malloc warnings are fatal by default. =back Unfortunately, there is no fine-grained warning control in perl, so often whole groups of useful warnings had to be excluded because of a single useless warning (for example, perl puts an arbitrary limit on the length of text you can match with some regexes before emitting a warning, making the whole C category useless). What follows is a more thorough discussion of what this module does, and why it does it, and what the advantages (and disadvantages) of this approach are. =head1 RATIONALE =over 4 =item use utf8 While it's not common sense to write your programs in UTF-8, it's quickly becoming the most common encoding, is the designated future default encoding for perl sources, and the most convenient encoding available (you can do really nice quoting tricks...). Experience has shown that our programs were either all pure ascii or utf-8, both of which will stay the same. There are few drawbacks to enabling UTF-8 source code by default (mainly some speed hits due to bugs in older versions of perl), so this module enables UTF-8 source code encoding by default. =item use strict qw(subs vars) Using C is definitely common sense, but C definitely overshoots its usefulness. After almost two decades of Perl hacking, we decided that it does more harm than being useful. Specifically, constructs like these: @{ $var->[0] } Must be written like this (or similarly), when C is in scope, and C<$var> can legally be C: @{ $var->[0] || [] } This is annoying, and doesn't shield against obvious mistakes such as using C<"">, so one would even have to write (at least for the time being): @{ defined $var->[0] ? $var->[0] : [] } ... which nobody with a bit of common sense would consider writing: clear code is clearly something else. Curiously enough, sometimes perl is not so strict, as this works even with C in scope: for (@{ $var->[0] }) { ... If that isn't hypocrisy! And all that from a mere program! =item use feature qw(say state given ...) We found it annoying that we always have to enable extra features. If something breaks because it didn't anticipate future changes, so be it. 5.10 broke almost all our XS modules and nobody cared either (or at least I know of nobody who really complained about gratuitous changes - as opposed to bugs). Few modules that are not actively maintained work with newer versions of Perl, regardless of use feature or not, so a new major perl release means changes to many modules - new keywords are just the tip of the iceberg. If your code isn't alive, it's dead, Jim - be an active maintainer. But nobody forces you to use those extra features in modules meant for older versions of perl - common::sense of course works there as well. There is also an important other mode where having additional features by default is useful: commandline hacks and internal use scripts: See "much reduced typing", below. There is one notable exception: C is not enabled by default. In our opinion, C had one main effect - newer perl versions don't value backwards compatibility and the ability to write modules for multiple perl versions much, after all, you can use feature. C doesn't add a new feature, it breaks an existing function. =item no warnings, but a lot of new errors Ah, the dreaded warnings. Even worse, the horribly dreaded C<-w> switch: Even though we don't care if other people use warnings (and certainly there are useful ones), a lot of warnings simply go against the spirit of Perl. Most prominently, the warnings related to C. There is nothing wrong with C: it has well-defined semantics, it is useful, and spitting out warnings you never asked for is just evil. The result was that every one of our modules did C in the past, to avoid somebody accidentally using and forcing his bad standards on our code. Of course, this switched off all warnings, even the useful ones. Not a good situation. Really, the C<-w> switch should only enable warnings for the main program only. Funnily enough, L explicitly mentions C<-w> (and not in a favourable way, calling it outright "wrong"), but standard utilities, such as L, or MakeMaker when running C, still enable them blindly. For version 2 of common::sense, we finally sat down a few hours and went through I, identifying - according to common sense - all the useful ones. This resulted in the rather impressive list in the SYNOPSIS. When we weren't sure, we didn't include the warning, so the list might grow in the future (we might have made a mistake, too, so the list might shrink as well). Note the presence of C in the list: we do not think that the conditions caught by these warnings are worthy of a warning, we I that they are worthy of I your program, I. They are I! Therefore we consider C to be much stricter than C, which is good if you are into strict things (we are not, actually, but these things tend to be subjective). After deciding on the list, we ran the module against all of our code that uses C (that is almost all of our code), and found only one occurrence where one of them caused a problem: one of elmex's (unreleased) modules contained: $fmt =~ s/([^\s\[]*)\[( [^\]]* )\]/\x0$1\x1$2\x0/xgo; We quickly agreed that indeed the code should be changed, even though it happened to do the right thing when the warning was switched off. =item much reduced typing Especially with version 2.0 of common::sense, the amount of boilerplate code you need to add to get I policy is daunting. Nobody would write this out in throwaway scripts, commandline hacks or in quick internal-use scripts. By using common::sense you get a defined set of policies (ours, but maybe yours, too, if you accept them), and they are easy to apply to your scripts: typing C is even shorter than C. And you can immediately use the features of your installed perl, which is more difficult in code you release, but not usually an issue for internal-use code (downgrades of your production perl should be rare, right?). =item mucho reduced memory usage Just using all those pragmas mentioned in the SYNOPSIS together wastes I<< B<776> kilobytes >> of precious memory in my perl, for I, which on our machines, is a lot. In comparison, this module only uses I<< B >> kilobytes (I even had to write it out so it looks like more) of memory on the same platform. The money/time/effort/electricity invested in these gigabytes (probably petabytes globally!) of wasted memory could easily save 42 trees, and a kitten! Unfortunately, until everybody applies more common sense, there will still often be modules that pull in the monster pragmas. But one can hope... =back =head1 THERE IS NO 'no common::sense'!!!! !!!! !! This module doesn't offer an unimport. First of all, it wastes even more memory, second, and more importantly, who with even a bit of common sense would want no common sense? =head1 STABILITY AND FUTURE VERSIONS Future versions might change just about everything in this module. We might test our modules and upload new ones working with newer versions of this module, and leave you standing in the rain because we didn't tell you. In fact, we did so when switching from 1.0 to 2.0, which enabled gobs of warnings, and made them FATAL on top. Maybe we will load some nifty modules that try to emulate C or so with perls older than 5.10 (this module, of course, should work with older perl versions - supporting 5.8 for example is just common sense at this time. Maybe not in the future, but of course you can trust our common sense to be consistent with, uhm, our opinion). =head1 WHAT OTHER PEOPLE HAD TO SAY ABOUT THIS MODULE apeiron "... wow" "I hope common::sense is a joke." crab "i wonder how it would be if joerg schilling wrote perl modules." Adam Kennedy "Very interesting, efficient, and potentially something I'd use all the time." [...] "So no common::sense for me, alas." H.Merijn Brand "Just one more reason to drop JSON::XS from my distribution list" Pista Palo "Something in short supply these days..." Steffen Schwigon "This module is quite for sure *not* just a repetition of all the other 'use strict, use warnings'-approaches, and it's also not the opposite. [...] And for its chosen middle-way it's also not the worst name ever. And everything is documented." BKB "[Deleted - thanks to Steffen Schwigon for pointing out this review was in error.]" Somni "the arrogance of the guy" "I swear he tacked somenoe else's name onto the module just so he could use the royal 'we' in the documentation" Anonymous Monk "You just gotta love this thing, its got META.json!!!" dngor "Heh. '""' The quotes are semantic distancing from that e-mail address." Jerad Pierce "Awful name (not a proper pragma), and the SYNOPSIS doesn't tell you anything either. Nor is it clear what features have to do with "common sense" or discipline." acme "THERE IS NO 'no common::sense'!!!! !!!! !!" apeiron (meta-comment about us commenting^Wquoting his comment) "How about quoting this: get a clue, you fucktarded amoeba." quanth "common sense is beautiful, json::xs is fast, Anyevent, EV are fast and furious. I love mlehmannware ;)" apeiron "... it's mlehmann's view of what common sense is. His view of common sense is certainly uncommon, insofar as anyone with a clue disagrees with him." apeiron (another meta-comment) "apeiron wonders if his little informant is here to steal more quotes" ew73 "... I never got past the SYNOPSIS before calling it shit." [...] How come no one ever quotes me. :(" chip (not willing to explain his cryptic questions about links in Changes files) "I'm willing to ask the question I've asked. I'm not willing to go through the whole dance you apparently have choreographed. Either answer the completely obvious question, or tell me to fuck off again." =head1 FREQUENTLY ASKED QUESTIONS Or frequently-come-up confusions. =over 4 =item Is this module meant to be serious? Yes, we would have put it under the C namespace otherwise. =item But the manpage is written in a funny/stupid/... way? This was meant to make it clear that our common sense is a subjective thing and other people can use their own notions, taking the steam out of anybody who might be offended (as some people are always offended no matter what you do). This was a failure. But we hope the manpage still is somewhat entertaining even though it explains boring rationale. =item Why do you impose your conventions on my code? For some reason people keep thinking that C imposes process-wide limits, even though the SYNOPSIS makes it clear that it works like other similar modules - i.e. only within the scope that Cs them. So, no, we don't - nobody is forced to use this module, and using a module that relies on common::sense does not impose anything on you. =item Why do you think only your notion of common::sense is valid? Well, we don't, and have clearly written this in the documentation to every single release. We were just faster than anybody else w.r.t. to grabbing the namespace. =item But everybody knows that you have to use strict and use warnings, why do you disable them? Well, we don't do this either - we selectively disagree with the usefulness of some warnings over others. This module is aimed at experienced Perl programmers, not people migrating from other languages who might be surprised about stuff such as C. On the other hand, this does not exclude the usefulness of this module for total newbies, due to its strictness in enforcing policy, while at the same time not limiting the expressive power of perl. This module is considerably I strict than the canonical C, as it makes all its warnings fatal in nature, so you can not get away with as many things as with the canonical approach. This was not implemented in version 1.0 because of the daunting number of warning categories and the difficulty in getting exactly the set of warnings you wish (i.e. look at the SYNOPSIS in how complicated it is to get a specific set of warnings - it is not reasonable to put this into every module, the maintenance effort would be enormous). =item But many modules C or C, so the memory savings do not apply? I suddenly feel sad... But yes, that's true. Fortunately C still uses only a miniscule amount of RAM. =item But it adds another dependency to your modules! It's a fact, yeah. But it's trivial to install, most popular modules have many more dependencies. And we consider dependencies a good thing - it leads to better APIs, more thought about interworking of modules and so on. =item Why do you use JSON and not YAML for your META.yml? This is not true - YAML supports a large subset of JSON, and this subset is what META.yml is written in, so it would be correct to say "the META.yml is written in a common subset of YAML and JSON". The META.yml follows the YAML, JSON and META.yml specifications, and is correctly parsed by CPAN, so if you have trouble with it, the problem is likely on your side. =item But! But! Yeah, we know. =back =head1 AUTHOR Marc Lehmann http://home.schmorp.de/ Robin Redeker, "". =cut perl5/JSON/XS/Boolean.pm000044400000001122147205023560010611 0ustar00=head1 NAME JSON::XS::Boolean - dummy module providing JSON::XS::Boolean =head1 SYNOPSIS # do not "use" yourself =head1 DESCRIPTION This module exists only to provide overload resolution for Storable and similar modules. It's only needed for compatibility with data serialised (by other modules such as Storable) that was decoded by JSON::XS versions before 3.0. Since 3.0, JSON::PP::Boolean has replaced it. Support for JSON::XS::Boolean will be removed in a future release. =cut use JSON::XS (); 1; =head1 AUTHOR Marc Lehmann http://home.schmorp.de/ =cut perl5/JSON/XS.pm000044400000210056147205023560007242 0ustar00=head1 NAME JSON::XS - JSON serialising/deserialising, done correctly and fast =encoding utf-8 JSON::XS - 正しくて高速な JSON シリアライザ/デシリアライザ (http://fleur.hio.jp/perldoc/mix/lib/JSON/XS.html) =head1 SYNOPSIS use JSON::XS; # exported functions, they croak on error # and expect/generate UTF-8 $utf8_encoded_json_text = encode_json $perl_hash_or_arrayref; $perl_hash_or_arrayref = decode_json $utf8_encoded_json_text; # OO-interface $coder = JSON::XS->new->ascii->pretty->allow_nonref; $pretty_printed_unencoded = $coder->encode ($perl_scalar); $perl_scalar = $coder->decode ($unicode_json_text); # Note that JSON version 2.0 and above will automatically use JSON::XS # if available, at virtually no speed overhead either, so you should # be able to just: use JSON; # and do the same things, except that you have a pure-perl fallback now. =head1 DESCRIPTION This module converts Perl data structures to JSON and vice versa. Its primary goal is to be I and its secondary goal is to be I. To reach the latter goal it was written in C. See MAPPING, below, on how JSON::XS maps perl values to JSON values and vice versa. =head2 FEATURES =over =item * correct Unicode handling This module knows how to handle Unicode, documents how and when it does so, and even documents what "correct" means. =item * round-trip integrity When you serialise a perl data structure using only data types supported by JSON and Perl, the deserialised data structure is identical on the Perl level. (e.g. the string "2.0" doesn't suddenly become "2" just because it looks like a number). There I minor exceptions to this, read the MAPPING section below to learn about those. =item * strict checking of JSON correctness There is no guessing, no generating of illegal JSON texts by default, and only JSON is accepted as input by default (the latter is a security feature). =item * fast Compared to other JSON modules and other serialisers such as Storable, this module usually compares favourably in terms of speed, too. =item * simple to use This module has both a simple functional interface as well as an object oriented interface. =item * reasonably versatile output formats You can choose between the most compact guaranteed-single-line format possible (nice for simple line-based protocols), a pure-ASCII format (for when your transport is not 8-bit clean, still supports the whole Unicode range), or a pretty-printed format (for when you want to read that stuff). Or you can combine those features in whatever way you like. =back =cut package JSON::XS; use common::sense; our $VERSION = '4.03'; our @ISA = qw(Exporter); our @EXPORT = qw(encode_json decode_json); use Exporter; use XSLoader; use Types::Serialiser (); =head1 FUNCTIONAL INTERFACE The following convenience methods are provided by this module. They are exported by default: =over =item $json_text = encode_json $perl_scalar Converts the given Perl data structure to a UTF-8 encoded, binary string (that is, the string contains octets only). Croaks on error. This function call is functionally identical to: $json_text = JSON::XS->new->utf8->encode ($perl_scalar) Except being faster. =item $perl_scalar = decode_json $json_text The opposite of C: expects a UTF-8 (binary) string and tries to parse that as a UTF-8 encoded JSON text, returning the resulting reference. Croaks on error. This function call is functionally identical to: $perl_scalar = JSON::XS->new->utf8->decode ($json_text) Except being faster. =back =head1 A FEW NOTES ON UNICODE AND PERL Since this often leads to confusion, here are a few very clear words on how Unicode works in Perl, modulo bugs. =over =item 1. Perl strings can store characters with ordinal values > 255. This enables you to store Unicode characters as single characters in a Perl string - very natural. =item 2. Perl does I associate an encoding with your strings. ... until you force it to, e.g. when matching it against a regex, or printing the scalar to a file, in which case Perl either interprets your string as locale-encoded text, octets/binary, or as Unicode, depending on various settings. In no case is an encoding stored together with your data, it is I that decides encoding, not any magical meta data. =item 3. The internal utf-8 flag has no meaning with regards to the encoding of your string. Just ignore that flag unless you debug a Perl bug, a module written in XS or want to dive into the internals of perl. Otherwise it will only confuse you, as, despite the name, it says nothing about how your string is encoded. You can have Unicode strings with that flag set, with that flag clear, and you can have binary data with that flag set and that flag clear. Other possibilities exist, too. If you didn't know about that flag, just the better, pretend it doesn't exist. =item 4. A "Unicode String" is simply a string where each character can be validly interpreted as a Unicode code point. If you have UTF-8 encoded data, it is no longer a Unicode string, but a Unicode string encoded in UTF-8, giving you a binary string. =item 5. A string containing "high" (> 255) character values is I a UTF-8 string. It's a fact. Learn to live with it. =back I hope this helps :) =head1 OBJECT-ORIENTED INTERFACE The object oriented interface lets you configure your own encoding or decoding style, within the limits of supported formats. =over =item $json = new JSON::XS Creates a new JSON::XS object that can be used to de/encode JSON strings. All boolean flags described below are by default I (with the exception of C, which defaults to I since version C<4.0>). The mutators for flags all return the JSON object again and thus calls can be chained: my $json = JSON::XS->new->utf8->space_after->encode ({a => [1,2]}) => {"a": [1, 2]} =item $json = $json->ascii ([$enable]) =item $enabled = $json->get_ascii If C<$enable> is true (or missing), then the C method will not generate characters outside the code range C<0..127> (which is ASCII). Any Unicode characters outside that range will be escaped using either a single \uXXXX (BMP characters) or a double \uHHHH\uLLLLL escape sequence, as per RFC4627. The resulting encoded JSON text can be treated as a native Unicode string, an ascii-encoded, latin1-encoded or UTF-8 encoded string, or any other superset of ASCII. If C<$enable> is false, then the C method will not escape Unicode characters unless required by the JSON syntax or other flags. This results in a faster and more compact format. See also the section I later in this document. The main use for this flag is to produce JSON texts that can be transmitted over a 7-bit channel, as the encoded JSON texts will not contain any 8 bit characters. JSON::XS->new->ascii (1)->encode ([chr 0x10401]) => ["\ud801\udc01"] =item $json = $json->latin1 ([$enable]) =item $enabled = $json->get_latin1 If C<$enable> is true (or missing), then the C method will encode the resulting JSON text as latin1 (or iso-8859-1), escaping any characters outside the code range C<0..255>. The resulting string can be treated as a latin1-encoded JSON text or a native Unicode string. The C method will not be affected in any way by this flag, as C by default expects Unicode, which is a strict superset of latin1. If C<$enable> is false, then the C method will not escape Unicode characters unless required by the JSON syntax or other flags. See also the section I later in this document. The main use for this flag is efficiently encoding binary data as JSON text, as most octets will not be escaped, resulting in a smaller encoded size. The disadvantage is that the resulting JSON text is encoded in latin1 (and must correctly be treated as such when storing and transferring), a rare encoding for JSON. It is therefore most useful when you want to store data structures known to contain binary data efficiently in files or databases, not when talking to other JSON encoders/decoders. JSON::XS->new->latin1->encode (["\x{89}\x{abc}"] => ["\x{89}\\u0abc"] # (perl syntax, U+abc escaped, U+89 not) =item $json = $json->utf8 ([$enable]) =item $enabled = $json->get_utf8 If C<$enable> is true (or missing), then the C method will encode the JSON result into UTF-8, as required by many protocols, while the C method expects to be handed a UTF-8-encoded string. Please note that UTF-8-encoded strings do not contain any characters outside the range C<0..255>, they are thus useful for bytewise/binary I/O. In future versions, enabling this option might enable autodetection of the UTF-16 and UTF-32 encoding families, as described in RFC4627. If C<$enable> is false, then the C method will return the JSON string as a (non-encoded) Unicode string, while C expects thus a Unicode string. Any decoding or encoding (e.g. to UTF-8 or UTF-16) needs to be done yourself, e.g. using the Encode module. See also the section I later in this document. Example, output UTF-16BE-encoded JSON: use Encode; $jsontext = encode "UTF-16BE", JSON::XS->new->encode ($object); Example, decode UTF-32LE-encoded JSON: use Encode; $object = JSON::XS->new->decode (decode "UTF-32LE", $jsontext); =item $json = $json->pretty ([$enable]) This enables (or disables) all of the C, C and C (and in the future possibly more) flags in one call to generate the most readable (or most compact) form possible. Example, pretty-print some simple structure: my $json = JSON::XS->new->pretty(1)->encode ({a => [1,2]}) => { "a" : [ 1, 2 ] } =item $json = $json->indent ([$enable]) =item $enabled = $json->get_indent If C<$enable> is true (or missing), then the C method will use a multiline format as output, putting every array member or object/hash key-value pair into its own line, indenting them properly. If C<$enable> is false, no newlines or indenting will be produced, and the resulting JSON text is guaranteed not to contain any C. This setting has no effect when decoding JSON texts. =item $json = $json->space_before ([$enable]) =item $enabled = $json->get_space_before If C<$enable> is true (or missing), then the C method will add an extra optional space before the C<:> separating keys from values in JSON objects. If C<$enable> is false, then the C method will not add any extra space at those places. This setting has no effect when decoding JSON texts. You will also most likely combine this setting with C. Example, space_before enabled, space_after and indent disabled: {"key" :"value"} =item $json = $json->space_after ([$enable]) =item $enabled = $json->get_space_after If C<$enable> is true (or missing), then the C method will add an extra optional space after the C<:> separating keys from values in JSON objects and extra whitespace after the C<,> separating key-value pairs and array members. If C<$enable> is false, then the C method will not add any extra space at those places. This setting has no effect when decoding JSON texts. Example, space_before and indent disabled, space_after enabled: {"key": "value"} =item $json = $json->relaxed ([$enable]) =item $enabled = $json->get_relaxed If C<$enable> is true (or missing), then C will accept some extensions to normal JSON syntax (see below). C will not be affected in any way. I. I suggest only to use this option to parse application-specific files written by humans (configuration files, resource files etc.) If C<$enable> is false (the default), then C will only accept valid JSON texts. Currently accepted extensions are: =over =item * list items can have an end-comma JSON I array elements and key-value pairs with commas. This can be annoying if you write JSON texts manually and want to be able to quickly append elements, so this extension accepts comma at the end of such items not just between them: [ 1, 2, <- this comma not normally allowed ] { "k1": "v1", "k2": "v2", <- this comma not normally allowed } =item * shell-style '#'-comments Whenever JSON allows whitespace, shell-style comments are additionally allowed. They are terminated by the first carriage-return or line-feed character, after which more white-space and comments are allowed. [ 1, # this comment not allowed in JSON # neither this one... ] =item * literal ASCII TAB characters in strings Literal ASCII TAB characters are now allowed in strings (and treated as C<\t>). [ "Hello\tWorld", "HelloWorld", # literal would not normally be allowed ] =back =item $json = $json->canonical ([$enable]) =item $enabled = $json->get_canonical If C<$enable> is true (or missing), then the C method will output JSON objects by sorting their keys. This is adding a comparatively high overhead. If C<$enable> is false, then the C method will output key-value pairs in the order Perl stores them (which will likely change between runs of the same script, and can change even within the same run from 5.18 onwards). This option is useful if you want the same data structure to be encoded as the same JSON text (given the same overall settings). If it is disabled, the same hash might be encoded differently even if contains the same data, as key-value pairs have no inherent ordering in Perl. This setting has no effect when decoding JSON texts. This setting has currently no effect on tied hashes. =item $json = $json->allow_nonref ([$enable]) =item $enabled = $json->get_allow_nonref Unlike other boolean options, this opotion is enabled by default beginning with version C<4.0>. See L for the gory details. If C<$enable> is true (or missing), then the C method can convert a non-reference into its corresponding string, number or null JSON value, which is an extension to RFC4627. Likewise, C will accept those JSON values instead of croaking. If C<$enable> is false, then the C method will croak if it isn't passed an arrayref or hashref, as JSON texts must either be an object or array. Likewise, C will croak if given something that is not a JSON object or array. Example, encode a Perl scalar as JSON value without enabled C, resulting in an error: JSON::XS->new->allow_nonref (0)->encode ("Hello, World!") => hash- or arrayref expected... =item $json = $json->allow_unknown ([$enable]) =item $enabled = $json->get_allow_unknown If C<$enable> is true (or missing), then C will I throw an exception when it encounters values it cannot represent in JSON (for example, filehandles) but instead will encode a JSON C value. Note that blessed objects are not included here and are handled separately by c. If C<$enable> is false (the default), then C will throw an exception when it encounters anything it cannot encode as JSON. This option does not affect C in any way, and it is recommended to leave it off unless you know your communications partner. =item $json = $json->allow_blessed ([$enable]) =item $enabled = $json->get_allow_blessed See L for details. If C<$enable> is true (or missing), then the C method will not barf when it encounters a blessed reference that it cannot convert otherwise. Instead, a JSON C value is encoded instead of the object. If C<$enable> is false (the default), then C will throw an exception when it encounters a blessed object that it cannot convert otherwise. This setting has no effect on C. =item $json = $json->convert_blessed ([$enable]) =item $enabled = $json->get_convert_blessed See L for details. If C<$enable> is true (or missing), then C, upon encountering a blessed object, will check for the availability of the C method on the object's class. If found, it will be called in scalar context and the resulting scalar will be encoded instead of the object. The C method may safely call die if it wants. If C returns other blessed objects, those will be handled in the same way. C must take care of not causing an endless recursion cycle (== crash) in this case. The name of C was chosen because other methods called by the Perl core (== not by the user of the object) are usually in upper case letters and to avoid collisions with any C function or method. If C<$enable> is false (the default), then C will not consider this type of conversion. This setting has no effect on C. =item $json = $json->allow_tags ([$enable]) =item $enabled = $json->get_allow_tags See L for details. If C<$enable> is true (or missing), then C, upon encountering a blessed object, will check for the availability of the C method on the object's class. If found, it will be used to serialise the object into a nonstandard tagged JSON value (that JSON decoders cannot decode). It also causes C to parse such tagged JSON values and deserialise them via a call to the C method. If C<$enable> is false (the default), then C will not consider this type of conversion, and tagged JSON values will cause a parse error in C, as if tags were not part of the grammar. =item $json->boolean_values ([$false, $true]) =item ($false, $true) = $json->get_boolean_values By default, JSON booleans will be decoded as overloaded C<$Types::Serialiser::false> and C<$Types::Serialiser::true> objects. With this method you can specify your own boolean values for decoding - on decode, JSON C will be decoded as a copy of C<$false>, and JSON C will be decoded as C<$true> ("copy" here is the same thing as assigning a value to another variable, i.e. C<$copy = $false>). Calling this method without any arguments will reset the booleans to their default values. C will return both C<$false> and C<$true> values, or the empty list when they are set to the default. =item $json = $json->filter_json_object ([$coderef->($hashref)]) When C<$coderef> is specified, it will be called from C each time it decodes a JSON object. The only argument is a reference to the newly-created hash. If the code reference returns a single scalar (which need not be a reference), this value (or rather a copy of it) is inserted into the deserialised data structure. If it returns an empty list (NOTE: I C, which is a valid scalar), the original deserialised hash will be inserted. This setting can slow down decoding considerably. When C<$coderef> is omitted or undefined, any existing callback will be removed and C will not change the deserialised hash in any way. Example, convert all JSON objects into the integer 5: my $js = JSON::XS->new->filter_json_object (sub { 5 }); # returns [5] $js->decode ('[{}]') # throw an exception because allow_nonref is not enabled # so a lone 5 is not allowed. $js->decode ('{"a":1, "b":2}'); =item $json = $json->filter_json_single_key_object ($key [=> $coderef->($value)]) Works remotely similar to C, but is only called for JSON objects having a single key named C<$key>. This C<$coderef> is called before the one specified via C, if any. It gets passed the single value in the JSON object. If it returns a single value, it will be inserted into the data structure. If it returns nothing (not even C but the empty list), the callback from C will be called next, as if no single-key callback were specified. If C<$coderef> is omitted or undefined, the corresponding callback will be disabled. There can only ever be one callback for a given key. As this callback gets called less often then the C one, decoding speed will not usually suffer as much. Therefore, single-key objects make excellent targets to serialise Perl objects into, especially as single-key JSON objects are as close to the type-tagged value concept as JSON gets (it's basically an ID/VALUE tuple). Of course, JSON does not support this in any way, so you need to make sure your data never looks like a serialised Perl hash. Typical names for the single object key are C<__class_whatever__>, or C<$__dollars_are_rarely_used__$> or C<}ugly_brace_placement>, or even things like C<__class_md5sum(classname)__>, to reduce the risk of clashing with real hashes. Example, decode JSON objects of the form C<< { "__widget__" => } >> into the corresponding C<< $WIDGET{} >> object: # return whatever is in $WIDGET{5}: JSON::XS ->new ->filter_json_single_key_object (__widget__ => sub { $WIDGET{ $_[0] } }) ->decode ('{"__widget__": 5') # this can be used with a TO_JSON method in some "widget" class # for serialisation to json: sub WidgetBase::TO_JSON { my ($self) = @_; unless ($self->{id}) { $self->{id} = ..get..some..id..; $WIDGET{$self->{id}} = $self; } { __widget__ => $self->{id} } } =item $json = $json->shrink ([$enable]) =item $enabled = $json->get_shrink Perl usually over-allocates memory a bit when allocating space for strings. This flag optionally resizes strings generated by either C or C to their minimum size possible. This can save memory when your JSON texts are either very very long or you have many short strings. It will also try to downgrade any strings to octet-form if possible: perl stores strings internally either in an encoding called UTF-X or in octet-form. The latter cannot store everything but uses less space in general (and some buggy Perl or C code might even rely on that internal representation being used). The actual definition of what shrink does might change in future versions, but it will always try to save space at the expense of time. If C<$enable> is true (or missing), the string returned by C will be shrunk-to-fit, while all strings generated by C will also be shrunk-to-fit. If C<$enable> is false, then the normal perl allocation algorithms are used. If you work with your data, then this is likely to be faster. In the future, this setting might control other things, such as converting strings that look like integers or floats into integers or floats internally (there is no difference on the Perl level), saving space. =item $json = $json->max_depth ([$maximum_nesting_depth]) =item $max_depth = $json->get_max_depth Sets the maximum nesting level (default C<512>) accepted while encoding or decoding. If a higher nesting level is detected in JSON text or a Perl data structure, then the encoder and decoder will stop and croak at that point. Nesting level is defined by number of hash- or arrayrefs that the encoder needs to traverse to reach a given point or the number of C<{> or C<[> characters without their matching closing parenthesis crossed to reach a given character in a string. Setting the maximum depth to one disallows any nesting, so that ensures that the object is only a single hash/object or array. If no argument is given, the highest possible setting will be used, which is rarely useful. Note that nesting is implemented by recursion in C. The default value has been chosen to be as large as typical operating systems allow without crashing. See SECURITY CONSIDERATIONS, below, for more info on why this is useful. =item $json = $json->max_size ([$maximum_string_size]) =item $max_size = $json->get_max_size Set the maximum length a JSON text may have (in bytes) where decoding is being attempted. The default is C<0>, meaning no limit. When C is called on a string that is longer then this many bytes, it will not attempt to decode the string but throw an exception. This setting has no effect on C (yet). If no argument is given, the limit check will be deactivated (same as when C<0> is specified). See SECURITY CONSIDERATIONS, below, for more info on why this is useful. =item $json_text = $json->encode ($perl_scalar) Converts the given Perl value or data structure to its JSON representation. Croaks on error. =item $perl_scalar = $json->decode ($json_text) The opposite of C: expects a JSON text and tries to parse it, returning the resulting simple scalar or reference. Croaks on error. =item ($perl_scalar, $characters) = $json->decode_prefix ($json_text) This works like the C method, but instead of raising an exception when there is trailing garbage after the first JSON object, it will silently stop parsing there and return the number of characters consumed so far. This is useful if your JSON texts are not delimited by an outer protocol and you need to know where the JSON text ends. JSON::XS->new->decode_prefix ("[1] the tail") => ([1], 3) =back =head1 INCREMENTAL PARSING In some cases, there is the need for incremental parsing of JSON texts. While this module always has to keep both JSON text and resulting Perl data structure in memory at one time, it does allow you to parse a JSON stream incrementally. It does so by accumulating text until it has a full JSON object, which it then can decode. This process is similar to using C to see if a full JSON object is available, but is much more efficient (and can be implemented with a minimum of method calls). JSON::XS will only attempt to parse the JSON text once it is sure it has enough text to get a decisive result, using a very simple but truly incremental parser. This means that it sometimes won't stop as early as the full parser, for example, it doesn't detect mismatched parentheses. The only thing it guarantees is that it starts decoding as soon as a syntactically valid JSON text has been seen. This means you need to set resource limits (e.g. C) to ensure the parser will stop parsing in the presence if syntax errors. The following methods implement this incremental parser. =over =item [void, scalar or list context] = $json->incr_parse ([$string]) This is the central parsing function. It can both append new text and extract objects from the stream accumulated so far (both of these functions are optional). If C<$string> is given, then this string is appended to the already existing JSON fragment stored in the C<$json> object. After that, if the function is called in void context, it will simply return without doing anything further. This can be used to add more text in as many chunks as you want. If the method is called in scalar context, then it will try to extract exactly I JSON object. If that is successful, it will return this object, otherwise it will return C. If there is a parse error, this method will croak just as C would do (one can then use C to skip the erroneous part). This is the most common way of using the method. And finally, in list context, it will try to extract as many objects from the stream as it can find and return them, or the empty list otherwise. For this to work, there must be no separators (other than whitespace) between the JSON objects or arrays, instead they must be concatenated back-to-back. If an error occurs, an exception will be raised as in the scalar context case. Note that in this case, any previously-parsed JSON texts will be lost. Example: Parse some JSON arrays/objects in a given string and return them. my @objs = JSON::XS->new->incr_parse ("[5][7][1,2]"); =item $lvalue_string = $json->incr_text This method returns the currently stored JSON fragment as an lvalue, that is, you can manipulate it. This I works when a preceding call to C in I successfully returned an object. Under all other circumstances you must not call this function (I mean it. although in simple tests it might actually work, it I fail under real world conditions). As a special exception, you can also call this method before having parsed anything. That means you can only use this function to look at or manipulate text before or after complete JSON objects, not while the parser is in the middle of parsing a JSON object. This function is useful in two cases: a) finding the trailing text after a JSON object or b) parsing multiple JSON objects separated by non-JSON text (such as commas). =item $json->incr_skip This will reset the state of the incremental parser and will remove the parsed text from the input buffer so far. This is useful after C died, in which case the input buffer and incremental parser state is left unchanged, to skip the text parsed so far and to reset the parse state. The difference to C is that only text until the parse error occurred is removed. =item $json->incr_reset This completely resets the incremental parser, that is, after this call, it will be as if the parser had never parsed anything. This is useful if you want to repeatedly parse JSON objects and want to ignore any trailing data, which means you have to reset the parser after each successful decode. =back =head2 LIMITATIONS The incremental parser is a non-exact parser: it works by gathering as much text as possible that I be a valid JSON text, followed by trying to decode it. That means it sometimes needs to read more data than strictly necessary to diagnose an invalid JSON text. For example, after parsing the following fragment, the parser I stop with an error, as this fragment I be the beginning of a valid JSON text: [, In reality, hopwever, the parser might continue to read data until a length limit is exceeded or it finds a closing bracket. =head2 EXAMPLES Some examples will make all this clearer. First, a simple example that works similarly to C: We want to decode the JSON object at the start of a string and identify the portion after the JSON object: my $text = "[1,2,3] hello"; my $json = new JSON::XS; my $obj = $json->incr_parse ($text) or die "expected JSON object or array at beginning of string"; my $tail = $json->incr_text; # $tail now contains " hello" Easy, isn't it? Now for a more complicated example: Imagine a hypothetical protocol where you read some requests from a TCP stream, and each request is a JSON array, without any separation between them (in fact, it is often useful to use newlines as "separators", as these get interpreted as whitespace at the start of the JSON text, which makes it possible to test said protocol with C...). Here is how you'd do it (it is trivial to write this in an event-based manner): my $json = new JSON::XS; # read some data from the socket while (sysread $socket, my $buf, 4096) { # split and decode as many requests as possible for my $request ($json->incr_parse ($buf)) { # act on the $request } } Another complicated example: Assume you have a string with JSON objects or arrays, all separated by (optional) comma characters (e.g. C<[1],[2], [3]>). To parse them, we have to skip the commas between the JSON texts, and here is where the lvalue-ness of C comes in useful: my $text = "[1],[2], [3]"; my $json = new JSON::XS; # void context, so no parsing done $json->incr_parse ($text); # now extract as many objects as possible. note the # use of scalar context so incr_text can be called. while (my $obj = $json->incr_parse) { # do something with $obj # now skip the optional comma $json->incr_text =~ s/^ \s* , //x; } Now lets go for a very complex example: Assume that you have a gigantic JSON array-of-objects, many gigabytes in size, and you want to parse it, but you cannot load it into memory fully (this has actually happened in the real world :). Well, you lost, you have to implement your own JSON parser. But JSON::XS can still help you: You implement a (very simple) array parser and let JSON decode the array elements, which are all full JSON objects on their own (this wouldn't work if the array elements could be JSON numbers, for example): my $json = new JSON::XS; # open the monster open my $fh, "incr_parse ($buf); # void context, so no parsing # Exit the loop once we found and removed(!) the initial "[". # In essence, we are (ab-)using the $json object as a simple scalar # we append data to. last if $json->incr_text =~ s/^ \s* \[ //x; } # now we have the skipped the initial "[", so continue # parsing all the elements. for (;;) { # in this loop we read data until we got a single JSON object for (;;) { if (my $obj = $json->incr_parse) { # do something with $obj last; } # add more data sysread $fh, my $buf, 65536 or die "read error: $!"; $json->incr_parse ($buf); # void context, so no parsing } # in this loop we read data until we either found and parsed the # separating "," between elements, or the final "]" for (;;) { # first skip whitespace $json->incr_text =~ s/^\s*//; # if we find "]", we are done if ($json->incr_text =~ s/^\]//) { print "finished.\n"; exit; } # if we find ",", we can continue with the next element if ($json->incr_text =~ s/^,//) { last; } # if we find anything else, we have a parse error! if (length $json->incr_text) { die "parse error near ", $json->incr_text; } # else add more data sysread $fh, my $buf, 65536 or die "read error: $!"; $json->incr_parse ($buf); # void context, so no parsing } This is a complex example, but most of the complexity comes from the fact that we are trying to be correct (bear with me if I am wrong, I never ran the above example :). =head1 MAPPING This section describes how JSON::XS maps Perl values to JSON values and vice versa. These mappings are designed to "do the right thing" in most circumstances automatically, preserving round-tripping characteristics (what you put in comes out as something equivalent). For the more enlightened: note that in the following descriptions, lowercase I refers to the Perl interpreter, while uppercase I refers to the abstract Perl language itself. =head2 JSON -> PERL =over =item object A JSON object becomes a reference to a hash in Perl. No ordering of object keys is preserved (JSON does not preserve object key ordering itself). =item array A JSON array becomes a reference to an array in Perl. =item string A JSON string becomes a string scalar in Perl - Unicode codepoints in JSON are represented by the same codepoints in the Perl string, so no manual decoding is necessary. =item number A JSON number becomes either an integer, numeric (floating point) or string scalar in perl, depending on its range and any fractional parts. On the Perl level, there is no difference between those as Perl handles all the conversion details, but an integer may take slightly less memory and might represent more values exactly than floating point numbers. If the number consists of digits only, JSON::XS will try to represent it as an integer value. If that fails, it will try to represent it as a numeric (floating point) value if that is possible without loss of precision. Otherwise it will preserve the number as a string value (in which case you lose roundtripping ability, as the JSON number will be re-encoded to a JSON string). Numbers containing a fractional or exponential part will always be represented as numeric (floating point) values, possibly at a loss of precision (in which case you might lose perfect roundtripping ability, but the JSON number will still be re-encoded as a JSON number). Note that precision is not accuracy - binary floating point values cannot represent most decimal fractions exactly, and when converting from and to floating point, JSON::XS only guarantees precision up to but not including the least significant bit. =item true, false These JSON atoms become C and C, respectively. They are overloaded to act almost exactly like the numbers C<1> and C<0>. You can check whether a scalar is a JSON boolean by using the C function (after C, of course). =item null A JSON null atom becomes C in Perl. =item shell-style comments (C<< # I >>) As a nonstandard extension to the JSON syntax that is enabled by the C setting, shell-style comments are allowed. They can start anywhere outside strings and go till the end of the line. =item tagged values (C<< (I)I >>). Another nonstandard extension to the JSON syntax, enabled with the C setting, are tagged values. In this implementation, the I must be a perl package/class name encoded as a JSON string, and the I must be a JSON array encoding optional constructor arguments. See L, below, for details. =back =head2 PERL -> JSON The mapping from Perl to JSON is slightly more difficult, as Perl is a truly typeless language, so we can only guess which JSON type is meant by a Perl value. =over =item hash references Perl hash references become JSON objects. As there is no inherent ordering in hash keys (or JSON objects), they will usually be encoded in a pseudo-random order. JSON::XS can optionally sort the hash keys (determined by the I flag), so the same datastructure will serialise to the same JSON text (given same settings and version of JSON::XS), but this incurs a runtime overhead and is only rarely useful, e.g. when you want to compare some JSON text against another for equality. =item array references Perl array references become JSON arrays. =item other references Other unblessed references are generally not allowed and will cause an exception to be thrown, except for references to the integers C<0> and C<1>, which get turned into C and C atoms in JSON. Since C uses the boolean model from L, you can also C and then use C and C to improve readability. use Types::Serialiser; encode_json [\0, Types::Serialiser::true] # yields [false,true] =item Types::Serialiser::true, Types::Serialiser::false These special values from the L module become JSON true and JSON false values, respectively. You can also use C<\1> and C<\0> directly if you want. =item blessed objects Blessed objects are not directly representable in JSON, but C allows various ways of handling objects. See L, below, for details. =item simple scalars Simple Perl scalars (any scalar that is not a reference) are the most difficult objects to encode: JSON::XS will encode undefined scalars as JSON C values, scalars that have last been used in a string context before encoding as JSON strings, and anything else as number value: # dump as number encode_json [2] # yields [2] encode_json [-3.0e17] # yields [-3e+17] my $value = 5; encode_json [$value] # yields [5] # used as string, so dump as string print $value; encode_json [$value] # yields ["5"] # undef becomes null encode_json [undef] # yields [null] You can force the type to be a JSON string by stringifying it: my $x = 3.1; # some variable containing a number "$x"; # stringified $x .= ""; # another, more awkward way to stringify print $x; # perl does it for you, too, quite often You can force the type to be a JSON number by numifying it: my $x = "3"; # some variable containing a string $x += 0; # numify it, ensuring it will be dumped as a number $x *= 1; # same thing, the choice is yours. You can not currently force the type in other, less obscure, ways. Tell me if you need this capability (but don't forget to explain why it's needed :). Note that numerical precision has the same meaning as under Perl (so binary to decimal conversion follows the same rules as in Perl, which can differ to other languages). Also, your perl interpreter might expose extensions to the floating point numbers of your platform, such as infinities or NaN's - these cannot be represented in JSON, and it is an error to pass those in. =back =head2 OBJECT SERIALISATION As JSON cannot directly represent Perl objects, you have to choose between a pure JSON representation (without the ability to deserialise the object automatically again), and a nonstandard extension to the JSON syntax, tagged values. =head3 SERIALISATION What happens when C encounters a Perl object depends on the C, C and C settings, which are used in this order: =over =item 1. C is enabled and the object has a C method. In this case, C uses the L object serialisation protocol to create a tagged JSON value, using a nonstandard extension to the JSON syntax. This works by invoking the C method on the object, with the first argument being the object to serialise, and the second argument being the constant string C to distinguish it from other serialisers. The C method can return any number of values (i.e. zero or more). These values and the paclkage/classname of the object will then be encoded as a tagged JSON value in the following format: ("classname")[FREEZE return values...] e.g.: ("URI")["http://www.google.com/"] ("MyDate")[2013,10,29] ("ImageData::JPEG")["Z3...VlCg=="] For example, the hypothetical C C method might use the objects C and C members to encode the object: sub My::Object::FREEZE { my ($self, $serialiser) = @_; ($self->{type}, $self->{id}) } =item 2. C is enabled and the object has a C method. In this case, the C method of the object is invoked in scalar context. It must return a single scalar that can be directly encoded into JSON. This scalar replaces the object in the JSON text. For example, the following C method will convert all L objects to JSON strings when serialised. The fatc that these values originally were L objects is lost. sub URI::TO_JSON { my ($uri) = @_; $uri->as_string } =item 3. C is enabled. The object will be serialised as a JSON null value. =item 4. none of the above If none of the settings are enabled or the respective methods are missing, C throws an exception. =back =head3 DESERIALISATION For deserialisation there are only two cases to consider: either nonstandard tagging was used, in which case C decides, or objects cannot be automatically be deserialised, in which case you can use postprocessing or the C or C callbacks to get some real objects our of your JSON. This section only considers the tagged value case: I a tagged JSON object is encountered during decoding and C is disabled, a parse error will result (as if tagged values were not part of the grammar). If C is enabled, C will look up the C method of the package/classname used during serialisation (it will not attempt to load the package as a Perl module). If there is no such method, the decoding will fail with an error. Otherwise, the C method is invoked with the classname as first argument, the constant string C as second argument, and all the values from the JSON array (the values originally returned by the C method) as remaining arguments. The method must then return the object. While technically you can return any Perl scalar, you might have to enable the C setting to make that work in all cases, so better return an actual blessed reference. As an example, let's implement a C function that regenerates the C from the C example earlier: sub My::Object::THAW { my ($class, $serialiser, $type, $id) = @_; $class->new (type => $type, id => $id) } =head1 ENCODING/CODESET FLAG NOTES The interested reader might have seen a number of flags that signify encodings or codesets - C, C and C. There seems to be some confusion on what these do, so here is a short comparison: C controls whether the JSON text created by C (and expected by C) is UTF-8 encoded or not, while C and C only control whether C escapes character values outside their respective codeset range. Neither of these flags conflict with each other, although some combinations make less sense than others. Care has been taken to make all flags symmetrical with respect to C and C, that is, texts encoded with any combination of these flag values will be correctly decoded when the same flags are used - in general, if you use different flag settings while encoding vs. when decoding you likely have a bug somewhere. Below comes a verbose discussion of these flags. Note that a "codeset" is simply an abstract set of character-codepoint pairs, while an encoding takes those codepoint numbers and I them, in our case into octets. Unicode is (among other things) a codeset, UTF-8 is an encoding, and ISO-8859-1 (= latin 1) and ASCII are both codesets I encodings at the same time, which can be confusing. =over =item C flag disabled When C is disabled (the default), then C/C generate and expect Unicode strings, that is, characters with high ordinal Unicode values (> 255) will be encoded as such characters, and likewise such characters are decoded as-is, no changes to them will be done, except "(re-)interpreting" them as Unicode codepoints or Unicode characters, respectively (to Perl, these are the same thing in strings unless you do funny/weird/dumb stuff). This is useful when you want to do the encoding yourself (e.g. when you want to have UTF-16 encoded JSON texts) or when some other layer does the encoding for you (for example, when printing to a terminal using a filehandle that transparently encodes to UTF-8 you certainly do NOT want to UTF-8 encode your data first and have Perl encode it another time). =item C flag enabled If the C-flag is enabled, C/C will encode all characters using the corresponding UTF-8 multi-byte sequence, and will expect your input strings to be encoded as UTF-8, that is, no "character" of the input string must have any value > 255, as UTF-8 does not allow that. The C flag therefore switches between two modes: disabled means you will get a Unicode string in Perl, enabled means you get a UTF-8 encoded octet/binary string in Perl. =item C or C flags enabled With C (or C) enabled, C will escape characters with ordinal values > 255 (> 127 with C) and encode the remaining characters as specified by the C flag. If C is disabled, then the result is also correctly encoded in those character sets (as both are proper subsets of Unicode, meaning that a Unicode string with all character values < 256 is the same thing as a ISO-8859-1 string, and a Unicode string with all character values < 128 is the same thing as an ASCII string in Perl). If C is enabled, you still get a correct UTF-8-encoded string, regardless of these flags, just some more characters will be escaped using C<\uXXXX> then before. Note that ISO-8859-1-I strings are not compatible with UTF-8 encoding, while ASCII-encoded strings are. That is because the ISO-8859-1 encoding is NOT a subset of UTF-8 (despite the ISO-8859-1 I being a subset of Unicode), while ASCII is. Surprisingly, C will ignore these flags and so treat all input values as governed by the C flag. If it is disabled, this allows you to decode ISO-8859-1- and ASCII-encoded strings, as both strict subsets of Unicode. If it is enabled, you can correctly decode UTF-8 encoded strings. So neither C nor C are incompatible with the C flag - they only govern when the JSON output engine escapes a character or not. The main use for C is to relatively efficiently store binary data as JSON, at the expense of breaking compatibility with most JSON decoders. The main use for C is to force the output to not contain characters with values > 127, which means you can interpret the resulting string as UTF-8, ISO-8859-1, ASCII, KOI8-R or most about any character set and 8-bit-encoding, and still get the same data structure back. This is useful when your channel for JSON transfer is not 8-bit clean or the encoding might be mangled in between (e.g. in mail), and works because ASCII is a proper subset of most 8-bit and multibyte encodings in use in the world. =back =head2 JSON and ECMAscript JSON syntax is based on how literals are represented in javascript (the not-standardised predecessor of ECMAscript) which is presumably why it is called "JavaScript Object Notation". However, JSON is not a subset (and also not a superset of course) of ECMAscript (the standard) or javascript (whatever browsers actually implement). If you want to use javascript's C function to "parse" JSON, you might run into parse errors for valid JSON texts, or the resulting data structure might not be queryable: One of the problems is that U+2028 and U+2029 are valid characters inside JSON strings, but are not allowed in ECMAscript string literals, so the following Perl fragment will not output something that can be guaranteed to be parsable by javascript's C: use JSON::XS; print encode_json [chr 0x2028]; The right fix for this is to use a proper JSON parser in your javascript programs, and not rely on C (see for example Douglas Crockford's F parser). If this is not an option, you can, as a stop-gap measure, simply encode to ASCII-only JSON: use JSON::XS; print JSON::XS->new->ascii->encode ([chr 0x2028]); Note that this will enlarge the resulting JSON text quite a bit if you have many non-ASCII characters. You might be tempted to run some regexes to only escape U+2028 and U+2029, e.g.: # DO NOT USE THIS! my $json = JSON::XS->new->utf8->encode ([chr 0x2028]); $json =~ s/\xe2\x80\xa8/\\u2028/g; # escape U+2028 $json =~ s/\xe2\x80\xa9/\\u2029/g; # escape U+2029 print $json; Note that I: the above only works for U+2028 and U+2029 and thus only for fully ECMAscript-compliant parsers. Many existing javascript implementations, however, have issues with other characters as well - using C naively simply I cause problems. Another problem is that some javascript implementations reserve some property names for their own purposes (which probably makes them non-ECMAscript-compliant). For example, Iceweasel reserves the C<__proto__> property name for its own purposes. If that is a problem, you could parse try to filter the resulting JSON output for these property strings, e.g.: $json =~ s/"__proto__"\s*:/"__proto__renamed":/g; This works because C<__proto__> is not valid outside of strings, so every occurrence of C<"__proto__"\s*:> must be a string used as property name. If you know of other incompatibilities, please let me know. =head2 JSON and YAML You often hear that JSON is a subset of YAML. This is, however, a mass hysteria(*) and very far from the truth (as of the time of this writing), so let me state it clearly: I that works in all cases. If you really must use JSON::XS to generate YAML, you should use this algorithm (subject to change in future versions): my $to_yaml = JSON::XS->new->utf8->space_after (1); my $yaml = $to_yaml->encode ($ref) . "\n"; This will I generate JSON texts that also parse as valid YAML. Please note that YAML has hardcoded limits on (simple) object key lengths that JSON doesn't have and also has different and incompatible unicode character escape syntax, so you should make sure that your hash keys are noticeably shorter than the 1024 "stream characters" YAML allows and that you do not have characters with codepoint values outside the Unicode BMP (basic multilingual page). YAML also does not allow C<\/> sequences in strings (which JSON::XS does not I generate, but other JSON generators might). There might be other incompatibilities that I am not aware of (or the YAML specification has been changed yet again - it does so quite often). In general you should not try to generate YAML with a JSON generator or vice versa, or try to parse JSON with a YAML parser or vice versa: chances are high that you will run into severe interoperability problems when you least expect it. =over =item (*) I have been pressured multiple times by Brian Ingerson (one of the authors of the YAML specification) to remove this paragraph, despite him acknowledging that the actual incompatibilities exist. As I was personally bitten by this "JSON is YAML" lie, I refused and said I will continue to educate people about these issues, so others do not run into the same problem again and again. After this, Brian called me a (quote)I(unquote). In my opinion, instead of pressuring and insulting people who actually clarify issues with YAML and the wrong statements of some of its proponents, I would kindly suggest reading the JSON spec (which is not that difficult or long) and finally make YAML compatible to it, and educating users about the changes, instead of spreading lies about the real compatibility for many I and trying to silence people who point out that it isn't true. Addendum/2009: the YAML 1.2 spec is still incompatible with JSON, even though the incompatibilities have been documented (and are known to Brian) for many years and the spec makes explicit claims that YAML is a superset of JSON. It would be so easy to fix, but apparently, bullying people and corrupting userdata is so much easier. =back =head2 SPEED It seems that JSON::XS is surprisingly fast, as shown in the following tables. They have been generated with the help of the C program in the JSON::XS distribution, to make it easy to compare on your own system. First comes a comparison between various modules using a very short single-line JSON string (also available at L). {"method": "handleMessage", "params": ["user1", "we were just talking"], "id": null, "array":[1,11,234,-5,1e5,1e7, 1, 0]} It shows the number of encodes/decodes per second (JSON::XS uses the functional interface, while JSON::XS/2 uses the OO interface with pretty-printing and hashkey sorting enabled, JSON::XS/3 enables shrink. JSON::DWIW/DS uses the deserialise function, while JSON::DWIW::FJ uses the from_json method). Higher is better: module | encode | decode | --------------|------------|------------| JSON::DWIW/DS | 86302.551 | 102300.098 | JSON::DWIW/FJ | 86302.551 | 75983.768 | JSON::PP | 15827.562 | 6638.658 | JSON::Syck | 63358.066 | 47662.545 | JSON::XS | 511500.488 | 511500.488 | JSON::XS/2 | 291271.111 | 388361.481 | JSON::XS/3 | 361577.931 | 361577.931 | Storable | 66788.280 | 265462.278 | --------------+------------+------------+ That is, JSON::XS is almost six times faster than JSON::DWIW on encoding, about five times faster on decoding, and over thirty to seventy times faster than JSON's pure perl implementation. It also compares favourably to Storable for small amounts of data. Using a longer test string (roughly 18KB, generated from Yahoo! Locals search API (L). module | encode | decode | --------------|------------|------------| JSON::DWIW/DS | 1647.927 | 2673.916 | JSON::DWIW/FJ | 1630.249 | 2596.128 | JSON::PP | 400.640 | 62.311 | JSON::Syck | 1481.040 | 1524.869 | JSON::XS | 20661.596 | 9541.183 | JSON::XS/2 | 10683.403 | 9416.938 | JSON::XS/3 | 20661.596 | 9400.054 | Storable | 19765.806 | 10000.725 | --------------+------------+------------+ Again, JSON::XS leads by far (except for Storable which non-surprisingly decodes a bit faster). On large strings containing lots of high Unicode characters, some modules (such as JSON::PC) seem to decode faster than JSON::XS, but the result will be broken due to missing (or wrong) Unicode handling. Others refuse to decode or encode properly, so it was impossible to prepare a fair comparison table for that case. =head1 SECURITY CONSIDERATIONS When you are using JSON in a protocol, talking to untrusted potentially hostile creatures requires relatively few measures. First of all, your JSON decoder should be secure, that is, should not have any buffer overflows. Obviously, this module should ensure that and I am trying hard on making that true, but you never know. Second, you need to avoid resource-starving attacks. That means you should limit the size of JSON texts you accept, or make sure then when your resources run out, that's just fine (e.g. by using a separate process that can crash safely). The size of a JSON text in octets or characters is usually a good indication of the size of the resources required to decode it into a Perl structure. While JSON::XS can check the size of the JSON text, it might be too late when you already have it in memory, so you might want to check the size before you accept the string. Third, JSON::XS recurses using the C stack when decoding objects and arrays. The C stack is a limited resource: for instance, on my amd64 machine with 8MB of stack size I can decode around 180k nested arrays but only 14k nested JSON objects (due to perl itself recursing deeply on croak to free the temporary). If that is exceeded, the program crashes. To be conservative, the default nesting limit is set to 512. If your process has a smaller stack, you should adjust this setting accordingly with the C method. Something else could bomb you, too, that I forgot to think of. In that case, you get to keep the pieces. I am always open for hints, though... Also keep in mind that JSON::XS might leak contents of your Perl data structures in its error messages, so when you serialise sensitive information you might want to make sure that exceptions thrown by JSON::XS will not end up in front of untrusted eyes. If you are using JSON::XS to return packets to consumption by JavaScript scripts in a browser you should have a look at L to see whether you are vulnerable to some common attack vectors (which really are browser design bugs, but it is still you who will have to deal with it, as major browser developers care only for features, not about getting security right). =head2 "OLD" VS. "NEW" JSON (RFC4627 VS. RFC7159) JSON originally required JSON texts to represent an array or object - scalar values were explicitly not allowed. This has changed, and versions of JSON::XS beginning with C<4.0> reflect this by allowing scalar values by default. One reason why one might not want this is that this removes a fundamental property of JSON texts, namely that they are self-delimited and self-contained, or in other words, you could take any number of "old" JSON texts and paste them together, and the result would be unambiguously parseable: [1,3]{"k":5}[][null] # four JSON texts, without doubt By allowing scalars, this property is lost: in the following example, is this one JSON text (the number 12) or two JSON texts (the numbers 1 and 2): 12 # could be 12, or 1 and 2 Another lost property of "old" JSON is that no lookahead is required to know the end of a JSON text, i.e. the JSON text definitely ended at the last C<]> or C<}> character, there was no need to read extra characters. For example, a viable network protocol with "old" JSON was to simply exchange JSON texts without delimiter. For "new" JSON, you have to use a suitable delimiter (such as a newline) after every JSON text or ensure you never encode/decode scalar values. Most protocols do work by only transferring arrays or objects, and the easiest way to avoid problems with the "new" JSON definition is to explicitly disallow scalar values in your encoder and decoder: $json_coder = JSON::XS->new->allow_nonref (0) This is a somewhat unhappy situation, and the blame can fully be put on JSON's inmventor, Douglas Crockford, who unilaterally changed the format in 2006 without consulting the IETF, forcing the IETF to either fork the format or go with it (as I was told, the IETF wasn't amused). =head1 RELATIONSHIP WITH I-JSON JSON is a somewhat sloppily-defined format - it carries around obvious Javascript baggage, such as not really defining number range, probably because Javascript only has one type of numbers: IEEE 64 bit floats ("binary64"). For this reaosn, RFC7493 defines "Internet JSON", which is a restricted subset of JSON that is supposedly more interoperable on the internet. While C does not offer specific support for I-JSON, it of course accepts valid I-JSON and by default implements some of the limitations of I-JSON, such as parsing numbers as perl numbers, which are usually a superset of binary64 numbers. To generate I-JSON, follow these rules: =over =item * always generate UTF-8 I-JSON must be encoded in UTF-8, the default for C. =item * numbers should be within IEEE 754 binary64 range Basically all existing perl installations use binary64 to represent floating point numbers, so all you need to do is to avoid large integers. =item * objects must not have duplicate keys This is trivially done, as C does not allow duplicate keys. =item * do not generate scalar JSON texts, use C<< ->allow_nonref (0) >> I-JSON strongly requests you to only encode arrays and objects into JSON. =item * times should be strings in ISO 8601 format There are a myriad of modules on CPAN dealing with ISO 8601 - search for C on CPAN and use one. =item * encode binary data as base64 While it's tempting to just dump binary data as a string (and let C do the escaping), for I-JSON, it's I to encode binary data as base64. =back There are some other considerations - read RFC7493 for the details if interested. =head1 INTEROPERABILITY WITH OTHER MODULES C uses the L module to provide boolean constants. That means that the JSON true and false values will be comaptible to true and false values of other modules that do the same, such as L and L. =head1 INTEROPERABILITY WITH OTHER JSON DECODERS As long as you only serialise data that can be directly expressed in JSON, C is incapable of generating invalid JSON output (modulo bugs, but C has found more bugs in the official JSON testsuite (1) than the official JSON testsuite has found in C (0)). When you have trouble decoding JSON generated by this module using other decoders, then it is very likely that you have an encoding mismatch or the other decoder is broken. When decoding, C is strict by default and will likely catch all errors. There are currently two settings that change this: C makes C accept (but not generate) some non-standard extensions, and C will allow you to encode and decode Perl objects, at the cost of not outputting valid JSON anymore. =head2 TAGGED VALUE SYNTAX AND STANDARD JSON EN/DECODERS When you use C to use the extended (and also nonstandard and invalid) JSON syntax for serialised objects, and you still want to decode the generated When you want to serialise objects, you can run a regex to replace the tagged syntax by standard JSON arrays (it only works for "normal" package names without comma, newlines or single colons). First, the readable Perl version: # if your FREEZE methods return no values, you need this replace first: $json =~ s/\( \s* (" (?: [^\\":,]+|\\.|::)* ") \s* \) \s* \[\s*\]/[$1]/gx; # this works for non-empty constructor arg lists: $json =~ s/\( \s* (" (?: [^\\":,]+|\\.|::)* ") \s* \) \s* \[/[$1,/gx; And here is a less readable version that is easy to adapt to other languages: $json =~ s/\(\s*("([^\\":,]+|\\.|::)*")\s*\)\s*\[/[$1,/g; Here is an ECMAScript version (same regex): json = json.replace (/\(\s*("([^\\":,]+|\\.|::)*")\s*\)\s*\[/g, "[$1,"); Since this syntax converts to standard JSON arrays, it might be hard to distinguish serialised objects from normal arrays. You can prepend a "magic number" as first array element to reduce chances of a collision: $json =~ s/\(\s*("([^\\":,]+|\\.|::)*")\s*\)\s*\[/["XU1peReLzT4ggEllLanBYq4G9VzliwKF",$1,/g; And after decoding the JSON text, you could walk the data structure looking for arrays with a first element of C. The same approach can be used to create the tagged format with another encoder. First, you create an array with the magic string as first member, the classname as second, and constructor arguments last, encode it as part of your JSON structure, and then: $json =~ s/\[\s*"XU1peReLzT4ggEllLanBYq4G9VzliwKF"\s*,\s*("([^\\":,]+|\\.|::)*")\s*,/($1)[/g; Again, this has some limitations - the magic string must not be encoded with character escapes, and the constructor arguments must be non-empty. =head1 (I-)THREADS This module is I guaranteed to be ithread (or MULTIPLICITY-) safe and there are no plans to change this. Note that perl's builtin so-called threads/ithreads are officially deprecated and should not be used. =head1 THE PERILS OF SETLOCALE Sometimes people avoid the Perl locale support and directly call the system's setlocale function with C. This breaks both perl and modules such as JSON::XS, as stringification of numbers no longer works correctly (e.g. C<$x = 0.1; print "$x"+1> might print C<1>, and JSON::XS might output illegal JSON as JSON::XS relies on perl to stringify numbers). The solution is simple: don't call C, or use it for only those categories you need, such as C or C. If you need C, you should enable it only around the code that actually needs it (avoiding stringification of numbers), and restore it afterwards. =head1 SOME HISTORY At the time this module was created there already were a number of JSON modules available on CPAN, so what was the reason to write yet another JSON module? While it seems there are many JSON modules, none of them correctly handled all corner cases, and in most cases their maintainers are unresponsive, gone missing, or not listening to bug reports for other reasons. Beginning with version 2.0 of the JSON module, when both JSON and JSON::XS are installed, then JSON will fall back on JSON::XS (this can be overridden) with no overhead due to emulation (by inheriting constructor and methods). If JSON::XS is not available, it will fall back to the compatible JSON::PP module as backend, so using JSON instead of JSON::XS gives you a portable JSON API that can be fast when you need it and doesn't require a C compiler when that is a problem. Somewhere around version 3, this module was forked into C, because its maintainer had serious trouble understanding JSON and insisted on a fork with many bugs "fixed" that weren't actually bugs, while spreading FUD about this module without actually giving any details on his accusations. You be the judge, but in my personal opinion, if you want quality, you will stay away from dangerous forks like that. =head1 BUGS While the goal of this module is to be correct, that unfortunately does not mean it's bug-free, only that I think its design is bug-free. If you keep reporting bugs they will be fixed swiftly, though. Please refrain from using rt.cpan.org or any other bug reporting service. I put the contact address into my modules for a reason. =cut BEGIN { *true = \$Types::Serialiser::true; *true = \&Types::Serialiser::true; *false = \$Types::Serialiser::false; *false = \&Types::Serialiser::false; *is_bool = \&Types::Serialiser::is_bool; *JSON::XS::Boolean:: = *Types::Serialiser::Boolean::; } XSLoader::load "JSON::XS", $VERSION; =head1 SEE ALSO The F command line utility for quick experiments. =head1 AUTHOR Marc Lehmann http://home.schmorp.de/ =cut 1 perl5/JSON/Syck.pm000044400000015100147205023560007612 0ustar00package JSON::Syck; use strict; use Exporter; use YAML::Syck (); our $VERSION = '1.34'; our @EXPORT_OK = qw( Load Dump LoadFile DumpFile DumpInto ); our @ISA = qw/Exporter/; *Load = \&YAML::Syck::LoadJSON; *Dump = \&YAML::Syck::DumpJSON; sub DumpFile { my $file = shift; if ( YAML::Syck::_is_glob($file) ) { my $err = YAML::Syck::DumpJSONFile( $_[0], $file ); if ($err) { $! = 0 + $err; die "Error writing to filehandle $file: $!\n"; } } else { open( my $fh, '>', $file ) or die "Cannot write to $file: $!"; my $err = YAML::Syck::DumpJSONFile( $_[0], $fh ); if ($err) { $! = 0 + $err; die "Error writing to file $file: $!\n"; } close $fh or die "Error writing to file $file: $!\n"; } return 1; } sub LoadFile { my $file = shift; if ( YAML::Syck::_is_glob($file) ) { YAML::Syck::LoadJSON( do { local $/; <$file> } ); } else { if ( !-e $file || -z $file ) { die("'$file' is non-existent or empty"); } open( my $fh, '<', $file ) or die "Cannot read from $file: $!"; YAML::Syck::LoadJSON( do { local $/; <$fh> } ); } } sub DumpInto { my $bufref = shift; ( ref $bufref ) or die "DumpInto not given reference to output buffer\n"; YAML::Syck::DumpJSONInto( $_[0], $bufref ); 1; } $JSON::Syck::ImplicitTyping = 1; $JSON::Syck::MaxDepth = 512; $JSON::Syck::Headless = 1; $JSON::Syck::ImplicitUnicode = 0; $JSON::Syck::SingleQuote = 0; 1; __END__ =head1 NAME JSON::Syck - JSON is YAML (but consider using L instead!) =head1 SYNOPSIS use JSON::Syck; # no exports by default my $data = JSON::Syck::Load($json); my $json = JSON::Syck::Dump($data); # $file can be an IO object, or a filename my $data = JSON::Syck::LoadFile($file); JSON::Syck::DumpFile($file, $data); # Dump into a pre-existing buffer my $json; JSON::Syck::DumpInto(\$json, $data); =head1 DESCRIPTION JSON::Syck is a syck implementation of JSON parsing and generation. Because JSON is YAML (L), using syck gives you a fast and memory-efficient parser and dumper for JSON data representation. However, a newer module L, has since emerged. It is more flexible, efficient and robust, so please consider using it instead of this module. =head1 DIFFERENCE WITH JSON You might want to know the difference between the I module and this one. Since JSON is a pure-perl module and JSON::Syck is based on libsyck, JSON::Syck is supposed to be very fast and memory efficient. See chansen's benchmark table at L JSON.pm comes with dozens of ways to do the same thing and lots of options, while JSON::Syck doesn't. There's only C and C. Oh, and JSON::Syck doesn't use camelCase method names :-) =head1 REFERENCES =head2 SCALAR REFERENCE For now, when you pass a scalar reference to JSON::Syck, it dereferences to get the actual scalar value. JSON::Syck raises an exception when you pass in circular references. If you want to serialize self referencing stuff, you should use YAML which supports it. =head2 SUBROUTINE REFERENCE When you pass subroutine reference, JSON::Syck dumps it as null. =head1 UTF-8 FLAGS By default this module doesn't touch any of utf-8 flags set in strings, and assumes UTF-8 bytes to be passed and emit. However, when you set C<$JSON::Syck::ImplicitUnicode> to 1, this module properly decodes UTF-8 binaries and sets UTF-8 flag everywhere, as in: JSON (UTF-8 bytes) => Perl (UTF-8 flagged) JSON (UTF-8 flagged) => Perl (UTF-8 flagged) Perl (UTF-8 bytes) => JSON (UTF-8 flagged) Perl (UTF-8 flagged) => JSON (UTF-8 flagged) By default, JSON::Syck::Dump will only transverse up to 512 levels of a datastructure in order to avoid an infinite loop when it is presented with an circular reference. However, you set C<$JSON::Syck::MaxLevels> to a larger value if you have very complex structures. Unfortunately, there's no implicit way to dump Perl UTF-8 flagged data structure to utf-8 encoded JSON. To do this, simply use Encode module, e.g.: use Encode; use JSON::Syck qw(Dump); my $json = encode_utf8( Dump($data) ); Alternatively you can use Encode::JavaScript::UCS to encode Unicode strings as in I<%uXXXX> form. use Encode; use Encode::JavaScript::UCS; use JSON::Syck qw(Dump); my $json_unicode_escaped = encode( 'JavaScript-UCS', Dump($data) ); =head1 QUOTING According to the JSON specification, all JSON strings are to be double-quoted. However, when embedding JavaScript in HTML attributes, it may be more convenient to use single quotes. Set C<$JSON::Syck::SingleQuote> to 1 will make both C and C expect single-quoted string literals. =head1 BUGS Dumping into tied (or other magic variables) with C might not work properly in all cases. When dumping with C, some spacing might be wrong and C<$JSON::Syck::SingleQuote> might be handled incorrectly. =head1 SEE ALSO L, L =head1 AUTHORS Audrey Tang Ecpan@audreyt.orgE Tatsuhiko Miyagawa Emiyagawa@gmail.comE =head1 COPYRIGHT Copyright 2005-2009 by Audrey Tang Ecpan@audreyt.orgE. This software is released under the MIT license cited below. The F code bundled with this library is released by "why the lucky stiff", under a BSD-style license. See the F file for details. =head2 The "MIT" License Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. =cut perl5/version/regex.pm000044400000007752147205023560010745 0ustar00package version::regex; use strict; our $VERSION = '0.9932'; #--------------------------------------------------------------------------# # Version regexp components #--------------------------------------------------------------------------# # Fraction part of a decimal version number. This is a common part of # both strict and lax decimal versions my $FRACTION_PART = qr/\.[0-9]+/; # First part of either decimal or dotted-decimal strict version number. # Unsigned integer with no leading zeroes (except for zero itself) to # avoid confusion with octal. my $STRICT_INTEGER_PART = qr/0|[1-9][0-9]*/; # First part of either decimal or dotted-decimal lax version number. # Unsigned integer, but allowing leading zeros. Always interpreted # as decimal. However, some forms of the resulting syntax give odd # results if used as ordinary Perl expressions, due to how perl treats # octals. E.g. # version->new("010" ) == 10 # version->new( 010 ) == 8 # version->new( 010.2) == 82 # "8" . "2" my $LAX_INTEGER_PART = qr/[0-9]+/; # Second and subsequent part of a strict dotted-decimal version number. # Leading zeroes are permitted, and the number is always decimal. # Limited to three digits to avoid overflow when converting to decimal # form and also avoid problematic style with excessive leading zeroes. my $STRICT_DOTTED_DECIMAL_PART = qr/\.[0-9]{1,3}/; # Second and subsequent part of a lax dotted-decimal version number. # Leading zeroes are permitted, and the number is always decimal. No # limit on the numerical value or number of digits, so there is the # possibility of overflow when converting to decimal form. my $LAX_DOTTED_DECIMAL_PART = qr/\.[0-9]+/; # Alpha suffix part of lax version number syntax. Acts like a # dotted-decimal part. my $LAX_ALPHA_PART = qr/_[0-9]+/; #--------------------------------------------------------------------------# # Strict version regexp definitions #--------------------------------------------------------------------------# # Strict decimal version number. our $STRICT_DECIMAL_VERSION = qr/ $STRICT_INTEGER_PART $FRACTION_PART? /x; # Strict dotted-decimal version number. Must have both leading "v" and # at least three parts, to avoid confusion with decimal syntax. our $STRICT_DOTTED_DECIMAL_VERSION = qr/ v $STRICT_INTEGER_PART $STRICT_DOTTED_DECIMAL_PART{2,} /x; # Complete strict version number syntax -- should generally be used # anchored: qr/ \A $STRICT \z /x our $STRICT = qr/ $STRICT_DECIMAL_VERSION | $STRICT_DOTTED_DECIMAL_VERSION /x; #--------------------------------------------------------------------------# # Lax version regexp definitions #--------------------------------------------------------------------------# # Lax decimal version number. Just like the strict one except for # allowing an alpha suffix or allowing a leading or trailing # decimal-point our $LAX_DECIMAL_VERSION = qr/ $LAX_INTEGER_PART (?: $FRACTION_PART | \. )? $LAX_ALPHA_PART? | $FRACTION_PART $LAX_ALPHA_PART? /x; # Lax dotted-decimal version number. Distinguished by having either # leading "v" or at least three non-alpha parts. Alpha part is only # permitted if there are at least two non-alpha parts. Strangely # enough, without the leading "v", Perl takes .1.2 to mean v0.1.2, # so when there is no "v", the leading part is optional our $LAX_DOTTED_DECIMAL_VERSION = qr/ v $LAX_INTEGER_PART (?: $LAX_DOTTED_DECIMAL_PART+ $LAX_ALPHA_PART? )? | $LAX_INTEGER_PART? $LAX_DOTTED_DECIMAL_PART{2,} $LAX_ALPHA_PART? /x; # Complete lax version number syntax -- should generally be used # anchored: qr/ \A $LAX \z /x # # The string 'undef' is a special case to make for easier handling # of return values from ExtUtils::MM->parse_version our $LAX = qr/ undef | $LAX_DOTTED_DECIMAL_VERSION | $LAX_DECIMAL_VERSION /x; #--------------------------------------------------------------------------# # Preloaded methods go here. sub is_strict { defined $_[0] && $_[0] =~ qr/ \A $STRICT \z /x } sub is_lax { defined $_[0] && $_[0] =~ qr/ \A $LAX \z /x } 1; perl5/version/vpp.pm000044400000053613147205023560010435 0ustar00package charstar; # a little helper class to emulate C char* semantics in Perl # so that prescan_version can use the same code as in C use overload ( '""' => \&thischar, '0+' => \&thischar, '++' => \&increment, '--' => \&decrement, '+' => \&plus, '-' => \&minus, '*' => \&multiply, 'cmp' => \&cmp, '<=>' => \&spaceship, 'bool' => \&thischar, '=' => \&clone, ); sub new { my ($self, $string) = @_; my $class = ref($self) || $self; my $obj = { string => [split(//,$string)], current => 0, }; return bless $obj, $class; } sub thischar { my ($self) = @_; my $last = $#{$self->{string}}; my $curr = $self->{current}; if ($curr >= 0 && $curr <= $last) { return $self->{string}->[$curr]; } else { return ''; } } sub increment { my ($self) = @_; $self->{current}++; } sub decrement { my ($self) = @_; $self->{current}--; } sub plus { my ($self, $offset) = @_; my $rself = $self->clone; $rself->{current} += $offset; return $rself; } sub minus { my ($self, $offset) = @_; my $rself = $self->clone; $rself->{current} -= $offset; return $rself; } sub multiply { my ($left, $right, $swapped) = @_; my $char = $left->thischar(); return $char * $right; } sub spaceship { my ($left, $right, $swapped) = @_; unless (ref($right)) { # not an object already $right = $left->new($right); } return $left->{current} <=> $right->{current}; } sub cmp { my ($left, $right, $swapped) = @_; unless (ref($right)) { # not an object already if (length($right) == 1) { # comparing single character only return $left->thischar cmp $right; } $right = $left->new($right); } return $left->currstr cmp $right->currstr; } sub bool { my ($self) = @_; my $char = $self->thischar; return ($char ne ''); } sub clone { my ($left, $right, $swapped) = @_; $right = { string => [@{$left->{string}}], current => $left->{current}, }; return bless $right, ref($left); } sub currstr { my ($self, $s) = @_; my $curr = $self->{current}; my $last = $#{$self->{string}}; if (defined($s) && $s->{current} < $last) { $last = $s->{current}; } my $string = join('', @{$self->{string}}[$curr..$last]); return $string; } package version::vpp; use 5.006002; use strict; use warnings::register; use Config; our $VERSION = '0.9932'; our $CLASS = 'version::vpp'; our ($LAX, $STRICT, $WARN_CATEGORY); if ($] > 5.015) { warnings::register_categories(qw/version/); $WARN_CATEGORY = 'version'; } else { $WARN_CATEGORY = 'numeric'; } require version::regex; *version::vpp::is_strict = \&version::regex::is_strict; *version::vpp::is_lax = \&version::regex::is_lax; *LAX = \$version::regex::LAX; *STRICT = \$version::regex::STRICT; use overload ( '""' => \&stringify, '0+' => \&numify, 'cmp' => \&vcmp, '<=>' => \&vcmp, 'bool' => \&vbool, '+' => \&vnoop, '-' => \&vnoop, '*' => \&vnoop, '/' => \&vnoop, '+=' => \&vnoop, '-=' => \&vnoop, '*=' => \&vnoop, '/=' => \&vnoop, 'abs' => \&vnoop, ); sub import { no strict 'refs'; my ($class) = shift; # Set up any derived class unless ($class eq $CLASS) { local $^W; *{$class.'::declare'} = \&{$CLASS.'::declare'}; *{$class.'::qv'} = \&{$CLASS.'::qv'}; } my %args; if (@_) { # any remaining terms are arguments map { $args{$_} = 1 } @_ } else { # no parameters at all on use line %args = ( qv => 1, 'UNIVERSAL::VERSION' => 1, ); } my $callpkg = caller(); if (exists($args{declare})) { *{$callpkg.'::declare'} = sub {return $class->declare(shift) } unless defined(&{$callpkg.'::declare'}); } if (exists($args{qv})) { *{$callpkg.'::qv'} = sub {return $class->qv(shift) } unless defined(&{$callpkg.'::qv'}); } if (exists($args{'UNIVERSAL::VERSION'})) { no warnings qw/redefine/; *UNIVERSAL::VERSION = \&{$CLASS.'::_VERSION'}; } if (exists($args{'VERSION'})) { *{$callpkg.'::VERSION'} = \&{$CLASS.'::_VERSION'}; } if (exists($args{'is_strict'})) { *{$callpkg.'::is_strict'} = \&{$CLASS.'::is_strict'} unless defined(&{$callpkg.'::is_strict'}); } if (exists($args{'is_lax'})) { *{$callpkg.'::is_lax'} = \&{$CLASS.'::is_lax'} unless defined(&{$callpkg.'::is_lax'}); } } my $VERSION_MAX = 0x7FFFFFFF; # implement prescan_version as closely to the C version as possible use constant TRUE => 1; use constant FALSE => 0; sub isDIGIT { my ($char) = shift->thischar(); return ($char =~ /\d/); } sub isALPHA { my ($char) = shift->thischar(); return ($char =~ /[a-zA-Z]/); } sub isSPACE { my ($char) = shift->thischar(); return ($char =~ /\s/); } sub BADVERSION { my ($s, $errstr, $error) = @_; if ($errstr) { $$errstr = $error; } return $s; } sub prescan_version { my ($s, $strict, $errstr, $sqv, $ssaw_decimal, $swidth, $salpha) = @_; my $qv = defined $sqv ? $$sqv : FALSE; my $saw_decimal = defined $ssaw_decimal ? $$ssaw_decimal : 0; my $width = defined $swidth ? $$swidth : 3; my $alpha = defined $salpha ? $$salpha : FALSE; my $d = $s; if ($qv && isDIGIT($d)) { goto dotted_decimal_version; } if ($d eq 'v') { # explicit v-string $d++; if (isDIGIT($d)) { $qv = TRUE; } else { # degenerate v-string # requires v1.2.3 return BADVERSION($s,$errstr,"Invalid version format (dotted-decimal versions require at least three parts)"); } dotted_decimal_version: if ($strict && $d eq '0' && isDIGIT($d+1)) { # no leading zeros allowed return BADVERSION($s,$errstr,"Invalid version format (no leading zeros)"); } while (isDIGIT($d)) { # integer part $d++; } if ($d eq '.') { $saw_decimal++; $d++; # decimal point } else { if ($strict) { # require v1.2.3 return BADVERSION($s,$errstr,"Invalid version format (dotted-decimal versions require at least three parts)"); } else { goto version_prescan_finish; } } { my $i = 0; my $j = 0; while (isDIGIT($d)) { # just keep reading $i++; while (isDIGIT($d)) { $d++; $j++; # maximum 3 digits between decimal if ($strict && $j > 3) { return BADVERSION($s,$errstr,"Invalid version format (maximum 3 digits between decimals)"); } } if ($d eq '_') { if ($strict) { return BADVERSION($s,$errstr,"Invalid version format (no underscores)"); } if ( $alpha ) { return BADVERSION($s,$errstr,"Invalid version format (multiple underscores)"); } $d++; $alpha = TRUE; } elsif ($d eq '.') { if ($alpha) { return BADVERSION($s,$errstr,"Invalid version format (underscores before decimal)"); } $saw_decimal++; $d++; } elsif (!isDIGIT($d)) { last; } $j = 0; } if ($strict && $i < 2) { # requires v1.2.3 return BADVERSION($s,$errstr,"Invalid version format (dotted-decimal versions require at least three parts)"); } } } # end if dotted-decimal else { # decimal versions my $j = 0; # special $strict case for leading '.' or '0' if ($strict) { if ($d eq '.') { return BADVERSION($s,$errstr,"Invalid version format (0 before decimal required)"); } if ($d eq '0' && isDIGIT($d+1)) { return BADVERSION($s,$errstr,"Invalid version format (no leading zeros)"); } } # and we never support negative version numbers if ($d eq '-') { return BADVERSION($s,$errstr,"Invalid version format (negative version number)"); } # consume all of the integer part while (isDIGIT($d)) { $d++; } # look for a fractional part if ($d eq '.') { # we found it, so consume it $saw_decimal++; $d++; } elsif (!$d || $d eq ';' || isSPACE($d) || $d eq '}') { if ( $d == $s ) { # found nothing return BADVERSION($s,$errstr,"Invalid version format (version required)"); } # found just an integer goto version_prescan_finish; } elsif ( $d == $s ) { # didn't find either integer or period return BADVERSION($s,$errstr,"Invalid version format (non-numeric data)"); } elsif ($d eq '_') { # underscore can't come after integer part if ($strict) { return BADVERSION($s,$errstr,"Invalid version format (no underscores)"); } elsif (isDIGIT($d+1)) { return BADVERSION($s,$errstr,"Invalid version format (alpha without decimal)"); } else { return BADVERSION($s,$errstr,"Invalid version format (misplaced underscore)"); } } elsif ($d) { # anything else after integer part is just invalid data return BADVERSION($s,$errstr,"Invalid version format (non-numeric data)"); } # scan the fractional part after the decimal point if ($d && !isDIGIT($d) && ($strict || ! ($d eq ';' || isSPACE($d) || $d eq '}') )) { # $strict or lax-but-not-the-end return BADVERSION($s,$errstr,"Invalid version format (fractional part required)"); } while (isDIGIT($d)) { $d++; $j++; if ($d eq '.' && isDIGIT($d-1)) { if ($alpha) { return BADVERSION($s,$errstr,"Invalid version format (underscores before decimal)"); } if ($strict) { return BADVERSION($s,$errstr,"Invalid version format (dotted-decimal versions must begin with 'v')"); } $d = $s; # start all over again $qv = TRUE; goto dotted_decimal_version; } if ($d eq '_') { if ($strict) { return BADVERSION($s,$errstr,"Invalid version format (no underscores)"); } if ( $alpha ) { return BADVERSION($s,$errstr,"Invalid version format (multiple underscores)"); } if ( ! isDIGIT($d+1) ) { return BADVERSION($s,$errstr,"Invalid version format (misplaced underscore)"); } $width = $j; $d++; $alpha = TRUE; } } } version_prescan_finish: while (isSPACE($d)) { $d++; } if ($d && !isDIGIT($d) && (! ($d eq ';' || $d eq '}') )) { # trailing non-numeric data return BADVERSION($s,$errstr,"Invalid version format (non-numeric data)"); } if ($saw_decimal > 1 && ($d-1) eq '.') { # no trailing period allowed return BADVERSION($s,$errstr,"Invalid version format (trailing decimal)"); } if (defined $sqv) { $$sqv = $qv; } if (defined $swidth) { $$swidth = $width; } if (defined $ssaw_decimal) { $$ssaw_decimal = $saw_decimal; } if (defined $salpha) { $$salpha = $alpha; } return $d; } sub scan_version { my ($s, $rv, $qv) = @_; my $start; my $pos; my $last; my $errstr; my $saw_decimal = 0; my $width = 3; my $alpha = FALSE; my $vinf = FALSE; my @av; $s = new charstar $s; while (isSPACE($s)) { # leading whitespace is OK $s++; } $last = prescan_version($s, FALSE, \$errstr, \$qv, \$saw_decimal, \$width, \$alpha); if ($errstr) { # 'undef' is a special case and not an error if ( $s ne 'undef') { require Carp; Carp::croak($errstr); } } $start = $s; if ($s eq 'v') { $s++; } $pos = $s; if ( $qv ) { $$rv->{qv} = $qv; } if ( $alpha ) { $$rv->{alpha} = $alpha; } if ( !$qv && $width < 3 ) { $$rv->{width} = $width; } while (isDIGIT($pos) || $pos eq '_') { $pos++; } if (!isALPHA($pos)) { my $rev; for (;;) { $rev = 0; { # this is atoi() that delimits on underscores my $end = $pos; my $mult = 1; my $orev; # the following if() will only be true after the decimal # point of a version originally created with a bare # floating point number, i.e. not quoted in any way # if ( !$qv && $s > $start && $saw_decimal == 1 ) { $mult *= 100; while ( $s < $end ) { next if $s eq '_'; $orev = $rev; $rev += $s * $mult; $mult /= 10; if ( (abs($orev) > abs($rev)) || (abs($rev) > $VERSION_MAX )) { warn("Integer overflow in version %d", $VERSION_MAX); $s = $end - 1; $rev = $VERSION_MAX; $vinf = 1; } $s++; if ( $s eq '_' ) { $s++; } } } else { while (--$end >= $s) { next if $end eq '_'; $orev = $rev; $rev += $end * $mult; $mult *= 10; if ( (abs($orev) > abs($rev)) || (abs($rev) > $VERSION_MAX )) { warn("Integer overflow in version"); $end = $s - 1; $rev = $VERSION_MAX; $vinf = 1; } } } } # Append revision push @av, $rev; if ( $vinf ) { $s = $last; last; } elsif ( $pos eq '.' ) { $s = ++$pos; } elsif ( $pos eq '_' && isDIGIT($pos+1) ) { $s = ++$pos; } elsif ( $pos eq ',' && isDIGIT($pos+1) ) { $s = ++$pos; } elsif ( isDIGIT($pos) ) { $s = $pos; } else { $s = $pos; last; } if ( $qv ) { while ( isDIGIT($pos) || $pos eq '_') { $pos++; } } else { my $digits = 0; while ( ( isDIGIT($pos) || $pos eq '_' ) && $digits < 3 ) { if ( $pos ne '_' ) { $digits++; } $pos++; } } } } if ( $qv ) { # quoted versions always get at least three terms my $len = $#av; # This for loop appears to trigger a compiler bug on OS X, as it # loops infinitely. Yes, len is negative. No, it makes no sense. # Compiler in question is: # gcc version 3.3 20030304 (Apple Computer, Inc. build 1640) # for ( len = 2 - len; len > 0; len-- ) # av_push(MUTABLE_AV(sv), newSViv(0)); # $len = 2 - $len; while ($len-- > 0) { push @av, 0; } } # need to save off the current version string for later if ( $vinf ) { $$rv->{original} = "v.Inf"; $$rv->{vinf} = 1; } elsif ( $s > $start ) { $$rv->{original} = $start->currstr($s); if ( $qv && $saw_decimal == 1 && $start ne 'v' ) { # need to insert a v to be consistent $$rv->{original} = 'v' . $$rv->{original}; } } else { $$rv->{original} = '0'; push(@av, 0); } # And finally, store the AV in the hash $$rv->{version} = \@av; # fix RT#19517 - special case 'undef' as string if ($s eq 'undef') { $s += 5; } return $s; } sub new { my $class = shift; unless (defined $class or $#_ > 1) { require Carp; Carp::croak('Usage: version::new(class, version)'); } my $self = bless ({}, ref ($class) || $class); my $qv = FALSE; if ( $#_ == 1 ) { # must be CVS-style $qv = TRUE; } my $value = pop; # always going to be the last element if ( ref($value) && eval('$value->isa("version")') ) { # Can copy the elements directly $self->{version} = [ @{$value->{version} } ]; $self->{qv} = 1 if $value->{qv}; $self->{alpha} = 1 if $value->{alpha}; $self->{original} = ''.$value->{original}; return $self; } if ( not defined $value or $value =~ /^undef$/ ) { # RT #19517 - special case for undef comparison # or someone forgot to pass a value push @{$self->{version}}, 0; $self->{original} = "0"; return ($self); } if (ref($value) =~ m/ARRAY|HASH/) { require Carp; Carp::croak("Invalid version format (non-numeric data)"); } $value = _un_vstring($value); if ($Config{d_setlocale}) { use POSIX qw/locale_h/; use if $Config{d_setlocale}, 'locale'; my $currlocale = setlocale(LC_ALL); # if the current locale uses commas for decimal points, we # just replace commas with decimal places, rather than changing # locales if ( localeconv()->{decimal_point} eq ',' ) { $value =~ tr/,/./; } } # exponential notation if ( $value =~ /\d+.?\d*e[-+]?\d+/ ) { $value = sprintf("%.9f",$value); $value =~ s/(0+)$//; # trim trailing zeros } my $s = scan_version($value, \$self, $qv); if ($s) { # must be something left over warn(sprintf "Version string '%s' contains invalid data; " ."ignoring: '%s'", $value, $s); } return ($self); } *parse = \&new; sub numify { my ($self) = @_; unless (_verify($self)) { require Carp; Carp::croak("Invalid version object"); } my $alpha = $self->{alpha} || ""; my $len = $#{$self->{version}}; my $digit = $self->{version}[0]; my $string = sprintf("%d.", $digit ); if ($alpha and warnings::enabled()) { warnings::warn($WARN_CATEGORY, 'alpha->numify() is lossy'); } for ( my $i = 1 ; $i <= $len ; $i++ ) { $digit = $self->{version}[$i]; $string .= sprintf("%03d", $digit); } if ( $len == 0 ) { $string .= sprintf("000"); } return $string; } sub normal { my ($self) = @_; unless (_verify($self)) { require Carp; Carp::croak("Invalid version object"); } my $len = $#{$self->{version}}; my $digit = $self->{version}[0]; my $string = sprintf("v%d", $digit ); for ( my $i = 1 ; $i <= $len ; $i++ ) { $digit = $self->{version}[$i]; $string .= sprintf(".%d", $digit); } if ( $len <= 2 ) { for ( $len = 2 - $len; $len != 0; $len-- ) { $string .= sprintf(".%0d", 0); } } return $string; } sub stringify { my ($self) = @_; unless (_verify($self)) { require Carp; Carp::croak("Invalid version object"); } return exists $self->{original} ? $self->{original} : exists $self->{qv} ? $self->normal : $self->numify; } sub to_decimal { my ($self) = @_; return ref($self)->new($self->numify); } sub to_dotted_decimal { my ($self) = @_; return ref($self)->new($self->normal); } sub vcmp { my ($left,$right,$swap) = @_; die "Usage: version::vcmp(lobj, robj, ...)" if @_ < 2; my $class = ref($left); unless ( UNIVERSAL::isa($right, $class) ) { $right = $class->new($right); } if ( $swap ) { ($left, $right) = ($right, $left); } unless (_verify($left)) { require Carp; Carp::croak("Invalid version object"); } unless (_verify($right)) { require Carp; Carp::croak("Invalid version format"); } my $l = $#{$left->{version}}; my $r = $#{$right->{version}}; my $m = $l < $r ? $l : $r; my $lalpha = $left->is_alpha; my $ralpha = $right->is_alpha; my $retval = 0; my $i = 0; while ( $i <= $m && $retval == 0 ) { $retval = $left->{version}[$i] <=> $right->{version}[$i]; $i++; } # possible match except for trailing 0's if ( $retval == 0 && $l != $r ) { if ( $l < $r ) { while ( $i <= $r && $retval == 0 ) { if ( $right->{version}[$i] != 0 ) { $retval = -1; # not a match after all } $i++; } } else { while ( $i <= $l && $retval == 0 ) { if ( $left->{version}[$i] != 0 ) { $retval = +1; # not a match after all } $i++; } } } return $retval; } sub vbool { my ($self) = @_; return vcmp($self,$self->new("0"),1); } sub vnoop { require Carp; Carp::croak("operation not supported with version object"); } sub is_alpha { my ($self) = @_; return (exists $self->{alpha}); } sub qv { my $value = shift; my $class = $CLASS; if (@_) { $class = ref($value) || $value; $value = shift; } $value = _un_vstring($value); $value = 'v'.$value unless $value =~ /(^v|\d+\.\d+\.\d)/; my $obj = $CLASS->new($value); return bless $obj, $class; } *declare = \&qv; sub is_qv { my ($self) = @_; return (exists $self->{qv}); } sub tuple { my ($self) = @_; return @{ $self->{version} }; } sub from_tuple { my ($proto, @args) = @_; my $class = ref($proto) || $proto; my @version = map 0+$_, @args; die if @args < 1; return bless { version => \@version, qv => !!1, 'v' . join('.', @version), }, $class; } sub _verify { my ($self) = @_; if ( ref($self) && eval { exists $self->{version} } && ref($self->{version}) eq 'ARRAY' ) { return 1; } else { return 0; } } sub _is_non_alphanumeric { my $s = shift; $s = new charstar $s; while ($s) { return 0 if isSPACE($s); # early out return 1 unless (isALPHA($s) || isDIGIT($s) || $s =~ /[.-]/); $s++; } return 0; } sub _un_vstring { my $value = shift; # may be a v-string if ( length($value) >= 1 && $value !~ /[,._]/ && _is_non_alphanumeric($value)) { my $tvalue; if ( $] >= 5.008_001 ) { $tvalue = _find_magic_vstring($value); $value = $tvalue if length $tvalue; } elsif ( $] >= 5.006_000 ) { $tvalue = sprintf("v%vd",$value); if ( $tvalue =~ /^v\d+(\.\d+)*$/ ) { # must be a v-string $value = $tvalue; } } } return $value; } sub _find_magic_vstring { my $value = shift; my $tvalue = ''; require B; my $sv = B::svref_2object(\$value); my $magic = ref($sv) eq 'B::PVMG' ? $sv->MAGIC : undef; while ( $magic ) { if ( $magic->TYPE eq 'V' ) { $tvalue = $magic->PTR; $tvalue =~ s/^v?(.+)$/v$1/; last; } else { $magic = $magic->MOREMAGIC; } } $tvalue =~ tr/_//d; return $tvalue; } sub _VERSION { my ($obj, $req) = @_; my $class = ref($obj) || $obj; no strict 'refs'; if ( exists $INC{"$class.pm"} and not %{"$class\::"} and $] >= 5.008) { # file but no package require Carp; Carp::croak( "$class defines neither package nor VERSION" ."--version check failed"); } my $version = eval "\$$class\::VERSION"; if ( defined $version ) { local $^W if $] <= 5.008; $version = version::vpp->new($version); } if ( defined $req ) { unless ( defined $version ) { require Carp; my $msg = $] < 5.006 ? "$class version $req required--this is only version " : "$class does not define \$$class\::VERSION" ."--version check failed"; if ( $ENV{VERSION_DEBUG} ) { Carp::confess($msg); } else { Carp::croak($msg); } } $req = version::vpp->new($req); if ( $req > $version ) { require Carp; if ( $req->is_qv ) { Carp::croak( sprintf ("%s version %s required--". "this is only version %s", $class, $req->normal, $version->normal) ); } else { Carp::croak( sprintf ("%s version %s required--". "this is only version %s", $class, $req->stringify, $version->stringify) ); } } } return defined $version ? $version->stringify : undef; } 1; #this line is important and will help the module return a true value perl5/version/Internals.pod000044400000055703147205023560011737 0ustar00=head1 NAME version::Internals - Perl extension for Version Objects =head1 DESCRIPTION Overloaded version objects for all modern versions of Perl. This documents the internal data representation and underlying code for version.pm. See F for daily usage. This document is only useful for users interested in the gory details. =head1 WHAT IS A VERSION? For the purposes of this module, a version "number" is a sequence of positive integer values separated by one or more decimal points and optionally a single underscore. This corresponds to what Perl itself uses for a version, as well as extending the "version as number" that is discussed in the various editions of the Camel book. There are actually two distinct kinds of version objects: =over 4 =item Decimal versions Any version which "looks like a number", see L. This also includes versions with a single decimal point and a single embedded underscore, see L, even though these must be quoted to preserve the underscore formatting. =item Dotted-Decimal versions Also referred to as "Dotted-Integer", these contains more than one decimal point and may have an optional embedded underscore, see L. This is what is commonly used in most open source software as the "external" version (the one used as part of the tag or tarfile name). A leading 'v' character is now required and will warn if it missing. =back Both of these methods will produce similar version objects, in that the default stringification will yield the version L only if required: $v = version->new(1.002); # 1.002, but compares like 1.2.0 $v = version->new(1.002003); # 1.002003 $v2 = version->new("v1.2.3"); # v1.2.3 In specific, version numbers initialized as L will stringify as they were originally created (i.e. the same string that was passed to C. Version numbers initialized as L will be stringified as L. =head2 Decimal Versions These correspond to historical versions of Perl itself prior to 5.6.0, as well as all other modules which follow the Camel rules for the $VERSION scalar. A Decimal version is initialized with what looks like a floating point number. Leading zeros B significant and trailing zeros are implied so that a minimum of three places is maintained between subversions. What this means is that any subversion (digits to the right of the decimal place) that contains less than three digits will have trailing zeros added to make up the difference, but only for purposes of comparison with other version objects. For example: # Prints Equivalent to $v = version->new( 1.2); # 1.2 v1.200.0 $v = version->new( 1.02); # 1.02 v1.20.0 $v = version->new( 1.002); # 1.002 v1.2.0 $v = version->new( 1.0023); # 1.0023 v1.2.300 $v = version->new( 1.00203); # 1.00203 v1.2.30 $v = version->new( 1.002003); # 1.002003 v1.2.3 All of the preceding examples are true whether or not the input value is quoted. The important feature is that the input value contains only a single decimal. See also L. IMPORTANT NOTE: As shown above, if your Decimal version contains more than 3 significant digits after the decimal place, it will be split on each multiple of 3, so 1.0003 is equivalent to v1.0.300, due to the need to remain compatible with Perl's own 5.005_03 == 5.5.30 interpretation. Any trailing zeros are ignored for mathematical comparison purposes. =head2 Dotted-Decimal Versions These are the newest form of versions, and correspond to Perl's own version style beginning with 5.6.0. Starting with Perl 5.10.0, and most likely Perl 6, this is likely to be the preferred form. This method normally requires that the input parameter be quoted, although Perl's after 5.8.1 can use v-strings as a special form of quoting, but this is highly discouraged. Unlike L, Dotted-Decimal Versions have more than a single decimal point, e.g.: # Prints $v = version->new( "v1.200"); # v1.200.0 $v = version->new("v1.20.0"); # v1.20.0 $v = qv("v1.2.3"); # v1.2.3 $v = qv("1.2.3"); # v1.2.3 $v = qv("1.20"); # v1.20.0 In general, Dotted-Decimal Versions permit the greatest amount of freedom to specify a version, whereas Decimal Versions enforce a certain uniformity. Just like L, Dotted-Decimal Versions can be used as L. =head2 Alpha Versions For module authors using CPAN, the convention has been to note unstable releases with an underscore in the version string. (See L.) version.pm follows this convention and alpha releases will test as being newer than the more recent stable release, and less than the next stable release. Only the last element may be separated by an underscore: # Declaring use version 0.77; our $VERSION = version->declare("v1.2_3"); # Parsing $v1 = version->parse("v1.2_3"); $v1 = version->parse("1.002_003"); Note that you B quote the version when writing an alpha Decimal version. The stringified form of Decimal versions will always be the same string that was used to initialize the version object. =head2 Regular Expressions for Version Parsing A formalized definition of the legal forms for version strings is included in the C class. Primitives are included for common elements, although they are scoped to the file so they are useful for reference purposes only. There are two publicly accessible scalars that can be used in other code (not exported): =over 4 =item C<$version::LAX> This regexp covers all of the legal forms allowed under the current version string parser. This is not to say that all of these forms are recommended, and some of them can only be used when quoted. For dotted decimals: v1.2 1.2345.6 v1.23_4 The leading 'v' is optional if two or more decimals appear. If only a single decimal is included, then the leading 'v' is required to trigger the dotted-decimal parsing. A leading zero is permitted, though not recommended except when quoted, because of the risk that Perl will treat the number as octal. A trailing underscore plus one or more digits denotes an alpha or development release (and must be quoted to be parsed properly). For decimal versions: 1 1.2345 1.2345_01 an integer portion, an optional decimal point, and optionally one or more digits to the right of the decimal are all required. A trailing underscore is permitted and a leading zero is permitted. Just like the lax dotted-decimal version, quoting the values is required for alpha/development forms to be parsed correctly. =item C<$version::STRICT> This regexp covers a much more limited set of formats and constitutes the best practices for initializing version objects. Whether you choose to employ decimal or dotted-decimal for is a personal preference however. =over 4 =item v1.234.5 For dotted-decimal versions, a leading 'v' is required, with three or more sub-versions of no more than three digits. A leading 0 (zero) before the first sub-version (in the above example, '1') is also prohibited. =item 2.3456 For decimal versions, an integer portion (no leading 0), a decimal point, and one or more digits to the right of the decimal are all required. =back =back Both of the provided scalars are already compiled as regular expressions and do not contain either anchors or implicit groupings, so they can be included in your own regular expressions freely. For example, consider the following code: ($pkg, $ver) =~ / ^[ \t]* use [ \t]+($PKGNAME) (?:[ \t]+($version::STRICT))? [ \t]*; /x; This would match a line of the form: use Foo::Bar::Baz v1.2.3; # legal only in Perl 5.8.1+ where C<$PKGNAME> is another regular expression that defines the legal forms for package names. =head1 IMPLEMENTATION DETAILS =head2 Equivalence between Decimal and Dotted-Decimal Versions When Perl 5.6.0 was released, the decision was made to provide a transformation between the old-style decimal versions and new-style dotted-decimal versions: 5.6.0 == 5.006000 5.005_04 == 5.5.40 The floating point number is taken and split first on the single decimal place, then each group of three digits to the right of the decimal makes up the next digit, and so on until the number of significant digits is exhausted, B enough trailing zeros to reach the next multiple of three. This was the method that version.pm adopted as well. Some examples may be helpful: equivalent decimal zero-padded dotted-decimal ------- ----------- -------------- 1.2 1.200 v1.200.0 1.02 1.020 v1.20.0 1.002 1.002 v1.2.0 1.0023 1.002300 v1.2.300 1.00203 1.002030 v1.2.30 1.002003 1.002003 v1.2.3 =head2 Quoting Rules Because of the nature of the Perl parsing and tokenizing routines, certain initialization values B be quoted in order to correctly parse as the intended version, especially when using the C or L methods. While you do not have to quote decimal numbers when creating version objects, it is always safe to quote B initial values when using version.pm methods, as this will ensure that what you type is what is used. Additionally, if you quote your initializer, then the quoted value that goes B will be exactly what comes B when your $VERSION is printed (stringified). If you do not quote your value, Perl's normal numeric handling comes into play and you may not get back what you were expecting. If you use a mathematic formula that resolves to a floating point number, you are dependent on Perl's conversion routines to yield the version you expect. You are pretty safe by dividing by a power of 10, for example, but other operations are not likely to be what you intend. For example: $VERSION = version->new((qw$Revision: 1.4)[1]/10); print $VERSION; # yields 0.14 $V2 = version->new(100/9); # Integer overflow in decimal number print $V2; # yields something like 11.111.111.100 Perl 5.8.1 and beyond are able to automatically quote v-strings but that is not possible in earlier versions of Perl. In other words: $version = version->new("v2.5.4"); # legal in all versions of Perl $newvers = version->new(v2.5.4); # legal only in Perl >= 5.8.1 =head2 What about v-strings? There are two ways to enter v-strings: a bare number with two or more decimal points, or a bare number with one or more decimal points and a leading 'v' character (also bare). For example: $vs1 = 1.2.3; # encoded as \1\2\3 $vs2 = v1.2; # encoded as \1\2 However, the use of bare v-strings to initialize version objects is B discouraged in all circumstances. Also, bare v-strings are not completely supported in any version of Perl prior to 5.8.1. If you insist on using bare v-strings with Perl > 5.6.0, be aware of the following limitations: 1) For Perl releases 5.6.0 through 5.8.0, the v-string code merely guesses, based on some characteristics of v-strings. You B use a three part version, e.g. 1.2.3 or v1.2.3 in order for this heuristic to be successful. 2) For Perl releases 5.8.1 and later, v-strings have changed in the Perl core to be magical, which means that the version.pm code can automatically determine whether the v-string encoding was used. 3) In all cases, a version created using v-strings will have a stringified form that has a leading 'v' character, for the simple reason that sometimes it is impossible to tell whether one was present initially. =head2 Replacement UNIVERSAL::VERSION In addition to the version objects, this modules also replaces the core UNIVERSAL::VERSION function with one that uses version objects for its comparisons. The return from this operator is always the stringified form as a simple scalar (i.e. not an object), but the warning message generated includes either the stringified form or the normal form, depending on how it was called. For example: package Foo; $VERSION = 1.2; package Bar; $VERSION = "v1.3.5"; # works with all Perl's (since it is quoted) package main; use version; print $Foo::VERSION; # prints 1.2 print $Bar::VERSION; # prints 1.003005 eval "use foo 10"; print $@; # prints "foo version 10 required..." eval "use foo 1.3.5; # work in Perl 5.6.1 or better print $@; # prints "foo version 1.3.5 required..." eval "use bar 1.3.6"; print $@; # prints "bar version 1.3.6 required..." eval "use bar 1.004"; # note Decimal version print $@; # prints "bar version 1.004 required..." IMPORTANT NOTE: This may mean that code which searches for a specific string (to determine whether a given module is available) may need to be changed. It is always better to use the built-in comparison implicit in C or C, rather than manually poking at C<< class->VERSION >> and then doing a comparison yourself. The replacement UNIVERSAL::VERSION, when used as a function, like this: print $module->VERSION; will also exclusively return the stringified form. See L for more details. =head1 USAGE DETAILS =head2 Using modules that use version.pm As much as possible, the version.pm module remains compatible with all current code. However, if your module is using a module that has defined C<$VERSION> using the version class, there are a couple of things to be aware of. For purposes of discussion, we will assume that we have the following module installed: package Example; use version; $VERSION = qv('1.2.2'); ...module code here... 1; =over 4 =item Decimal versions always work Code of the form: use Example 1.002003; will always work correctly. The C will perform an automatic C<$VERSION> comparison using the floating point number given as the first term after the module name (e.g. above 1.002.003). In this case, the installed module is too old for the requested line, so you would see an error like: Example version 1.002003 (v1.2.3) required--this is only version 1.002002 (v1.2.2)... =item Dotted-Decimal version work sometimes With Perl >= 5.6.2, you can also use a line like this: use Example 1.2.3; and it will again work (i.e. give the error message as above), even with releases of Perl which do not normally support v-strings (see L above). This has to do with that fact that C only checks to see if the second term I and passes that to the replacement L. This is not true in Perl 5.005_04, however, so you are B to always use a Decimal version in your code, even for those versions of Perl which support the Dotted-Decimal version. =back =head2 Object Methods =over 4 =item new() Like many OO interfaces, the new() method is used to initialize version objects. If two arguments are passed to C, the B one will be used as if it were prefixed with "v". This is to support historical use of the C operator with the CVS variable $Revision, which is automatically incremented by CVS every time the file is committed to the repository. In order to facilitate this feature, the following code can be employed: $VERSION = version->new(qw$Revision: 2.7 $); and the version object will be created as if the following code were used: $VERSION = version->new("v2.7"); In other words, the version will be automatically parsed out of the string, and it will be quoted to preserve the meaning CVS normally carries for versions. The CVS $Revision$ increments differently from Decimal versions (i.e. 1.10 follows 1.9), so it must be handled as if it were a Dotted-Decimal Version. A new version object can be created as a copy of an existing version object, either as a class method: $v1 = version->new(12.3); $v2 = version->new($v1); or as an object method: $v1 = version->new(12.3); $v2 = $v1->new(12.3); and in each case, $v1 and $v2 will be identical. NOTE: if you create a new object using an existing object like this: $v2 = $v1->new(); the new object B be a clone of the existing object. In the example case, $v2 will be an empty object of the same type as $v1. =back =over 4 =item qv() An alternate way to create a new version object is through the exported qv() sub. This is not strictly like other q? operators (like qq, qw), in that the only delimiters supported are parentheses (or spaces). It is the best way to initialize a short version without triggering the floating point interpretation. For example: $v1 = qv(1.2); # v1.2.0 $v2 = qv("1.2"); # also v1.2.0 As you can see, either a bare number or a quoted string can usually be used interchangeably, except in the case of a trailing zero, which must be quoted to be converted properly. For this reason, it is strongly recommended that all initializers to qv() be quoted strings instead of bare numbers. To prevent the C function from being exported to the caller's namespace, either use version with a null parameter: use version (); or just require version, like this: require version; Both methods will prevent the import() method from firing and exporting the C sub. =back For the subsequent examples, the following three objects will be used: $ver = version->new("1.2.3.4"); # see "Quoting Rules" $alpha = version->new("1.2.3_4"); # see "Alpha Versions" $nver = version->new(1.002); # see "Decimal Versions" =over 4 =item Normal Form For any version object which is initialized with multiple decimal places (either quoted or if possible v-string), or initialized using the L operator, the stringified representation is returned in a normalized or reduced form (no extraneous zeros), and with a leading 'v': print $ver->normal; # prints as v1.2.3.4 print $ver->stringify; # ditto print $ver; # ditto print $nver->normal; # prints as v1.2.0 print $nver->stringify; # prints as 1.002, # see "Stringification" In order to preserve the meaning of the processed version, the normalized representation will always contain at least three sub terms. In other words, the following is guaranteed to always be true: my $newver = version->new($ver->stringify); if ($newver eq $ver ) # always true {...} =back =over 4 =item Numification Although all mathematical operations on version objects are forbidden by default, it is possible to retrieve a number which corresponds to the version object through the use of the $obj->numify method. For formatting purposes, when displaying a number which corresponds a version object, all sub versions are assumed to have three decimal places. So for example: print $ver->numify; # prints 1.002003004 print $nver->numify; # prints 1.002 Unlike the stringification operator, there is never any need to append trailing zeros to preserve the correct version value. =back =over 4 =item Stringification The default stringification for version objects returns exactly the same string as was used to create it, whether you used C or C, with one exception. The sole exception is if the object was created using C and the initializer did not have two decimal places or a leading 'v' (both optional), then the stringified form will have a leading 'v' prepended, in order to support round-trip processing. For example: Initialized as Stringifies to ============== ============== version->new("1.2") 1.2 version->new("v1.2") v1.2 qv("1.2.3") 1.2.3 qv("v1.3.5") v1.3.5 qv("1.2") v1.2 ### exceptional case See also L, as this also returns the stringified form when used as a class method. IMPORTANT NOTE: There is one exceptional cases shown in the above table where the "initializer" is not stringwise equivalent to the stringified representation. If you use the C() operator on a version without a leading 'v' B with only a single decimal place, the stringified output will have a leading 'v', to preserve the sense. See the L operator for more details. IMPORTANT NOTE 2: Attempting to bypass the normal stringification rules by manually applying L and L will sometimes yield surprising results: print version->new(version->new("v1.0")->numify)->normal; # v1.0.0 The reason for this is that the L operator will turn "v1.0" into the equivalent string "1.000000". Forcing the outer version object to L form will display the mathematically equivalent "v1.0.0". As the example in L shows, you can always create a copy of an existing version object with the same value by the very compact: $v2 = $v1->new($v1); and be assured that both C<$v1> and C<$v2> will be completely equivalent, down to the same internal representation as well as stringification. =back =over 4 =item Comparison operators Both C and C=E> operators perform the same comparison between terms (upgrading to a version object automatically). Perl automatically generates all of the other comparison operators based on those two. In addition to the obvious equalities listed below, appending a single trailing 0 term does not change the value of a version for comparison purposes. In other words "v1.2" and "1.2.0" will compare as identical. For example, the following relations hold: As Number As String Truth Value ------------- ---------------- ----------- $ver > 1.0 $ver gt "1.0" true $ver < 2.5 $ver lt true $ver != 1.3 $ver ne "1.3" true $ver == 1.2 $ver eq "1.2" false $ver == 1.2.3.4 $ver eq "1.2.3.4" see discussion below It is probably best to chose either the Decimal notation or the string notation and stick with it, to reduce confusion. Perl6 version objects B only support Decimal comparisons. See also L. WARNING: Comparing version with unequal numbers of decimal points (whether explicitly or implicitly initialized), may yield unexpected results at first glance. For example, the following inequalities hold: version->new(0.96) > version->new(0.95); # 0.960.0 > 0.950.0 version->new("0.96.1") < version->new(0.95); # 0.096.1 < 0.950.0 For this reason, it is best to use either exclusively L or L with multiple decimal points. =back =over 4 =item Logical Operators If you need to test whether a version object has been initialized, you can simply test it directly: $vobj = version->new($something); if ( $vobj ) # true only if $something was non-blank You can also test whether a version object is an alpha version, for example to prevent the use of some feature not present in the main release: $vobj = version->new("1.2_3"); # MUST QUOTE ...later... if ( $vobj->is_alpha ) # True =back =head1 AUTHOR John Peacock Ejpeacock@cpan.orgE =head1 SEE ALSO L. =cut perl5/version/vxs.pm000044400000000746147205023560010447 0ustar00#!perl -w package version::vxs; use v5.10; use strict; our $VERSION = '0.9932'; our $CLASS = 'version::vxs'; our @ISA; eval { require XSLoader; local $^W; # shut up the 'redefined' warning for UNIVERSAL::VERSION XSLoader::load('version::vxs', $VERSION); 1; } or do { require DynaLoader; push @ISA, 'DynaLoader'; local $^W; # shut up the 'redefined' warning for UNIVERSAL::VERSION bootstrap version::vxs $VERSION; }; # Preloaded methods go here. 1; perl5/version.pm000044400000007607147205023560007632 0ustar00#!perl -w package version; use 5.006002; use strict; use warnings::register; if ($] >= 5.015) { warnings::register_categories(qw/version/); } our $VERSION = '0.9932'; our $CLASS = 'version'; our (@ISA, $STRICT, $LAX); # !!!!Delete this next block completely when adding to Perl core!!!! { local $SIG{'__DIE__'}; eval "use version::vxs $VERSION"; if ( $@ ) { # don't have the XS version installed eval "use version::vpp $VERSION"; # don't tempt fate die "$@" if ( $@ ); push @ISA, "version::vpp"; local $^W; *version::qv = \&version::vpp::qv; *version::declare = \&version::vpp::declare; *version::_VERSION = \&version::vpp::_VERSION; *version::vcmp = \&version::vpp::vcmp; *version::new = \&version::vpp::new; *version::numify = \&version::vpp::numify; *version::normal = \&version::vpp::normal; *version::to_decimal = \&version::vpp::to_decimal; *version::to_dotted_decimal = \&version::vpp::to_dotted_decimal; *version::tuple = \&version::vpp::tuple; *version::from_tuple = \&version::vpp::from_tuple; if ($] >= 5.009000) { no strict 'refs'; *version::stringify = \&version::vpp::stringify; *{'version::(""'} = \&version::vpp::stringify; *{'version::(<=>'} = \&version::vpp::vcmp; *{'version::(cmp'} = \&version::vpp::vcmp; *version::parse = \&version::vpp::parse; } } else { # use XS module push @ISA, "version::vxs"; local $^W; *version::declare = \&version::vxs::declare; *version::qv = \&version::vxs::qv; *version::_VERSION = \&version::vxs::_VERSION; *version::vcmp = \&version::vxs::VCMP; *version::new = \&version::vxs::new; *version::numify = \&version::vxs::numify; *version::normal = \&version::vxs::normal; *version::to_decimal = \&version::vxs::to_decimal; *version::to_dotted_decimal = \&version::vxs::to_dotted_decimal; *version::tuple = \&version::vxs::tuple; *version::from_tuple = \&version::vxs::from_tuple; if ($] >= 5.009000) { no strict 'refs'; *version::stringify = \&version::vxs::stringify; *{'version::(""'} = \&version::vxs::stringify; *{'version::(<=>'} = \&version::vxs::VCMP; *{'version::(cmp'} = \&version::vxs::VCMP; *version::parse = \&version::vxs::parse; } } } # avoid using Exporter require version::regex; *version::is_lax = \&version::regex::is_lax; *version::is_strict = \&version::regex::is_strict; *LAX = \$version::regex::LAX; *LAX_DECIMAL_VERSION = \$version::regex::LAX_DECIMAL_VERSION; *LAX_DOTTED_DECIMAL_VERSION = \$version::regex::LAX_DOTTED_DECIMAL_VERSION; *STRICT = \$version::regex::STRICT; *STRICT_DECIMAL_VERSION = \$version::regex::STRICT_DECIMAL_VERSION; *STRICT_DOTTED_DECIMAL_VERSION = \$version::regex::STRICT_DOTTED_DECIMAL_VERSION; sub import { no strict 'refs'; my ($class) = shift; # Set up any derived class unless ($class eq $CLASS) { local $^W; *{$class.'::declare'} = \&{$CLASS.'::declare'}; *{$class.'::qv'} = \&{$CLASS.'::qv'}; } my %args; if (@_) { # any remaining terms are arguments map { $args{$_} = 1 } @_ } else { # no parameters at all on use line %args = ( qv => 1, 'UNIVERSAL::VERSION' => 1, ); } my $callpkg = caller(); if (exists($args{declare})) { *{$callpkg.'::declare'} = sub {return $class->declare(shift) } unless defined(&{$callpkg.'::declare'}); } if (exists($args{qv})) { *{$callpkg.'::qv'} = sub {return $class->qv(shift) } unless defined(&{$callpkg.'::qv'}); } if (exists($args{'UNIVERSAL::VERSION'})) { local $^W; *UNIVERSAL::VERSION = \&{$CLASS.'::_VERSION'}; } if (exists($args{'VERSION'})) { *{$callpkg.'::VERSION'} = \&{$CLASS.'::_VERSION'}; } if (exists($args{'is_strict'})) { *{$callpkg.'::is_strict'} = \&{$CLASS.'::is_strict'} unless defined(&{$callpkg.'::is_strict'}); } if (exists($args{'is_lax'})) { *{$callpkg.'::is_lax'} = \&{$CLASS.'::is_lax'} unless defined(&{$callpkg.'::is_lax'}); } } 1; perl5/version.pod000044400000024551147205023560007775 0ustar00=head1 NAME version - Perl extension for Version Objects =head1 SYNOPSIS # Parsing version strings (decimal or dotted-decimal) use version 0.77; # get latest bug-fixes and API $ver = version->parse($string) # Declaring a dotted-decimal $VERSION (keep on one line!) use version; our $VERSION = version->declare("v1.2.3"); # formal use version; our $VERSION = qv("v1.2.3"); # deprecated use version; our $VERSION = qv("v1.2_3"); # deprecated # Declaring an old-style decimal $VERSION (use quotes!) our $VERSION = "1.0203"; # recommended use version; our $VERSION = version->parse("1.0203"); # formal use version; our $VERSION = version->parse("1.02_03"); # alpha # Comparing mixed version styles (decimals, dotted-decimals, objects) if ( version->parse($v1) == version->parse($v2) ) { # do stuff } # Sorting mixed version styles @ordered = sort { version->parse($a) <=> version->parse($b) } @list; =head1 DESCRIPTION Version objects were added to Perl in 5.10. This module implements version objects for older version of Perl and provides the version object API for all versions of Perl. All previous releases before 0.74 are deprecated and should not be used due to incompatible API changes. Version 0.77 introduces the new 'parse' and 'declare' methods to standardize usage. You are strongly urged to set 0.77 as a minimum in your code, e.g. use version 0.77; # even for Perl v.5.10.0 =head1 TYPES OF VERSION OBJECTS There are two different types of version objects, corresponding to the two different styles of versions in use: =over 2 =item Decimal Versions The classic floating-point number $VERSION. The advantage to this style is that you don't need to do anything special, just type a number into your source file. Quoting is recommended, as it ensures that trailing zeroes ("1.50") are preserved in any warnings or other output. =item Dotted Decimal Versions The more modern form of version assignment, with 3 (or potentially more) integers separated by decimal points (e.g. v1.2.3). This is the form that Perl itself has used since 5.6.0 was released. The leading 'v' is now strongly recommended for clarity, and will throw a warning in a future release if omitted. A leading 'v' character is required to pass the L test. =back =head1 DECLARING VERSIONS If you have a module that uses a decimal $VERSION (floating point), and you do not intend to ever change that, this module is not for you. There is nothing that version.pm gains you over a simple $VERSION assignment: our $VERSION = "1.02"; Since Perl v5.10.0 includes the version.pm comparison logic anyways, you don't need to do anything at all. =head2 How to convert a module from decimal to dotted-decimal If you have used a decimal $VERSION in the past and wish to switch to a dotted-decimal $VERSION, then you need to make a one-time conversion to the new format. B: you must ensure that your new $VERSION is numerically greater than your current decimal $VERSION; this is not always obvious. First, convert your old decimal version (e.g. 1.02) to a normalized dotted-decimal form: $ perl -Mversion -e 'print version->parse("1.02")->normal' v1.20.0 Then increment any of the dotted-decimal components (v1.20.1 or v1.21.0). =head2 How to C a dotted-decimal version use version; our $VERSION = version->declare("v1.2.3"); The C method always creates dotted-decimal version objects. When used in a module, you B put it on the same line as "use version" to ensure that $VERSION is read correctly by PAUSE and installer tools. You should also add 'version' to the 'configure_requires' section of your module metadata file. See instructions in L or L for details. B: Even if you pass in what looks like a decimal number ("1.2"), a dotted-decimal will be created ("v1.200.0"). To avoid confusion or unintentional errors on older Perls, follow these guidelines: =over 2 =item * Always use a dotted-decimal with (at least) three components =item * Always use a leading-v =item * Always quote the version =back If you really insist on using version.pm with an ordinary decimal version, use C instead of declare. See the L for details. See also L for more on version number conversion, quoting, calculated version numbers and declaring developer or "alpha" version numbers. =head1 PARSING AND COMPARING VERSIONS If you need to compare version numbers, but can't be sure whether they are expressed as numbers, strings, v-strings or version objects, then you should use version.pm to parse them all into objects for comparison. =head2 How to C a version The C method takes in anything that might be a version and returns a corresponding version object, doing any necessary conversion along the way. =over 2 =item * Dotted-decimal: bare v-strings (v1.2.3) and strings with more than one decimal point and a leading 'v' ("v1.2.3"); NOTE you can technically use a v-string or strings with a leading-v and only one decimal point (v1.2 or "v1.2"), but you will confuse both yourself and others. =item * Decimal: regular decimal numbers (literal or in a string) =back Some examples: $variable version->parse($variable) --------- ------------------------- 1.23 v1.230.0 "1.23" v1.230.0 v1.23 v1.23.0 "v1.23" v1.23.0 "1.2.3" v1.2.3 "v1.2.3" v1.2.3 See L for more on version number conversion. =head2 How to check for a legal version string If you do not want to actually create a full blown version object, but would still like to verify that a given string meets the criteria to be parsed as a version, there are two helper functions that can be employed directly: =over 4 =item C The lax criteria corresponds to what is currently allowed by the version parser. All of the following formats are acceptable for dotted-decimal formats strings: v1.2 1.2345.6 v1.23_4 1.2345 1.2345_01 =item C If you want to limit yourself to a much more narrow definition of what a version string constitutes, C is limited to version strings like the following list: v1.234.5 2.3456 =back See L for details of the regular expressions that define the legal version string forms, as well as how to use those regular expressions in your own code if C and C are not sufficient for your needs. =head2 How to compare version objects Version objects overload the C and C<< <=> >> operators. Perl automatically generates all of the other comparison operators based on those two so all the normal logical comparisons will work. if ( version->parse($v1) == version->parse($v2) ) { # do stuff } If a version object is compared against a non-version object, the non-object term will be converted to a version object using C. This may give surprising results: $v1 = version->parse("v0.95.0"); $bool = $v1 < 0.94; # TRUE since 0.94 is v0.940.0 Always comparing to a version object will help avoid surprises: $bool = $v1 < version->parse("v0.94.0"); # FALSE Note that "alpha" version objects (where the version string contains a trailing underscore segment) compare as less than the equivalent version without an underscore: $bool = version->parse("1.23_45") < version->parse("1.2345"); # TRUE See L for more details on "alpha" versions. =head1 OBJECT METHODS =head2 is_alpha() True if and only if the version object was created with a underscore, e.g. version->parse('1.002_03')->is_alpha; # TRUE version->declare('1.2.3_4')->is_alpha; # TRUE =head2 is_qv() True only if the version object is a dotted-decimal version, e.g. version->parse('v1.2.0')->is_qv; # TRUE version->declare('v1.2')->is_qv; # TRUE qv('1.2')->is_qv; # TRUE version->parse('1.2')->is_qv; # FALSE =head2 normal() Returns a string with a standard 'normalized' dotted-decimal form with a leading-v and at least 3 components. version->declare('v1.2')->normal; # v1.2.0 version->parse('1.2')->normal; # v1.200.0 =head2 numify() Returns a value representing the object in a pure decimal. version->declare('v1.2')->numify; # 1.002000 version->parse('1.2')->numify; # 1.200 =head2 to_decimal This returns a new version object for the numified version, much like C<< version->parse($v->numify) >> would. version->parse('v1.2')->to_decimal; # 1.002000 =head2 to_dotted_decimal This returns a new version object for the normalized version, much like C<< version->parse($v->normal) >> would. version->parse('1.002')->to_dotted_decimal; # v1.2.0 =head2 tuple() This turns the components of the version into a list. E.g. version->parse('1.2.3')->tuple; # (1, 2, 3) =head2 from_tuple(...) This takes a list of components and creates a dotted decimal version out of it. E.g. version->from_tuple(1, 2, 3) # v1.2.3 =head2 stringify() Returns a string that is as close to the original representation as possible. If the original representation was a numeric literal, it will be returned the way perl would normally represent it in a string. This method is used whenever a version object is interpolated into a string. version->declare('v1.2')->stringify; # v1.2 version->parse('1.200')->stringify; # 1.2 version->parse(1.02_30)->stringify; # 1.023 =head2 tuple Returns an array of non-negative integers that is used for comparison purposes with other version objects. =head1 EXPORTED FUNCTIONS =head2 qv() This function is no longer recommended for use, but is maintained for compatibility with existing code. If you do not want to have it exported to your namespace, use this form: use version 0.77 (); =head2 is_lax() (Not exported by default) This function takes a scalar argument and returns a boolean value indicating whether the argument meets the "lax" rules for a version number. Leading and trailing spaces are not allowed. =head2 is_strict() (Not exported by default) This function takes a scalar argument and returns a boolean value indicating whether the argument meets the "strict" rules for a version number. Leading and trailing spaces are not allowed. =head1 AUTHOR John Peacock Ejpeacock@cpan.orgE =head1 SEE ALSO L. L. =cut perl5/YAML/Dumper/Syck.pm000044400000000155147205023560011043 0ustar00package YAML::Dumper::Syck; use strict; sub new { $_[0] } sub dump { shift; YAML::Syck::Dump( $_[0] ) } 1; perl5/YAML/Loader/Syck.pm000044400000000155147205023560011015 0ustar00package YAML::Loader::Syck; use strict; sub new { $_[0] } sub load { shift; YAML::Syck::Load( $_[0] ) } 1; perl5/YAML/Syck.pm000044400000023157147205023560007616 0ustar00package YAML::Syck; # See documentation after the __END__ mark. use strict; our ( $Headless, $SingleQuote, $ImplicitBinary, $ImplicitTyping, $ImplicitUnicode, $UseCode, $LoadCode, $DumpCode, $DeparseObject ); use 5.006; use Exporter; use XSLoader (); our $VERSION = '1.34'; our @EXPORT = qw( Dump Load DumpFile LoadFile ); our @EXPORT_OK = qw( DumpInto ); our @ISA = qw( Exporter ); our $SortKeys = 1; our $LoadBlessed = 0; XSLoader::load( 'YAML::Syck', $VERSION ); use constant QR_MAP => { '' => sub { qr{$_[0]} }, x => sub { qr{$_[0]}x }, i => sub { qr{$_[0]}i }, s => sub { qr{$_[0]}s }, m => sub { qr{$_[0]}m }, ix => sub { qr{$_[0]}ix }, sx => sub { qr{$_[0]}sx }, mx => sub { qr{$_[0]}mx }, si => sub { qr{$_[0]}si }, mi => sub { qr{$_[0]}mi }, ms => sub { qr{$_[0]}sm }, six => sub { qr{$_[0]}six }, mix => sub { qr{$_[0]}mix }, msx => sub { qr{$_[0]}msx }, msi => sub { qr{$_[0]}msi }, msix => sub { qr{$_[0]}msix }, }; sub __qr_helper { if ( $_[0] =~ /\A \(\? ([ixsm]*) (?:- (?:[ixsm]*))? : (.*) \) \z/x ) { my $sub = QR_MAP()->{$1} || QR_MAP()->{''}; &$sub($2); } else { qr/$_[0]/; } } sub Dump { $#_ ? join( '', map { YAML::Syck::DumpYAML($_) } @_ ) : YAML::Syck::DumpYAML( $_[0] ); } sub Load { if (wantarray) { my ($rv) = YAML::Syck::LoadYAML( $_[0] ); @{$rv}; } else { @_ = $_[0]; goto &YAML::Syck::LoadYAML; } } sub _is_glob { my $h = shift; return 1 if ( ref($h) eq 'GLOB' ); return 1 if ( ref( \$h ) eq 'GLOB' ); return 1 if ( ref($h) =~ m/^IO::/ ); return; } sub DumpFile { my $file = shift; if ( _is_glob($file) ) { for (@_) { my $err = YAML::Syck::DumpYAMLFile( $_, $file ); if ($err) { $! = 0 + $err; die "Error writing to filehandle $file: $!\n"; } } } else { open( my $fh, '>', $file ) or die "Cannot write to $file: $!"; for (@_) { my $err = YAML::Syck::DumpYAMLFile( $_, $fh ); if ($err) { $! = 0 + $err; die "Error writing to file $file: $!\n"; } } close $fh or die "Error writing to file $file: $!\n"; } return 1; } sub LoadFile { my $file = shift; if ( _is_glob($file) ) { Load( do { local $/; <$file> } ); } else { if ( !-e $file || -z $file ) { die("'$file' is empty or non-existent"); } open( my $fh, '<', $file ) or die "Cannot read from $file: $!"; Load( do { local $/; <$fh> } ); } } sub DumpInto { my $bufref = shift; ( ref $bufref ) or die "DumpInto not given reference to output buffer\n"; YAML::Syck::DumpYAMLInto( $_, $bufref ) for @_; 1; } 1; __END__ =pod =head1 NAME YAML::Syck - Fast, lightweight YAML loader and dumper =head1 SYNOPSIS use YAML::Syck; # Set this for interoperability with other YAML/Syck bindings: # e.g. Load('Yes') becomes 1 and Load('No') becomes ''. $YAML::Syck::ImplicitTyping = 1; $data = Load($yaml); $yaml = Dump($data); # $file can be an IO object, or a filename $data = LoadFile($file); DumpFile($file, $data); # A string with multiple YAML streams in it $yaml = Dump(@data); @data = Load($yaml); # Dumping into a pre-existing output buffer my $yaml; DumpInto(\$yaml, @data); =head1 DESCRIPTION This module provides a Perl interface to the B data serialization library. It exports the C and C functions for converting Perl data structures to YAML strings, and the other way around. B: If you are working with other language's YAML/Syck bindings (such as Ruby), please set C<$YAML::Syck::ImplicitTyping> to C<1> before calling the C/C functions. The default setting is for preserving backward-compatibility with C. =head1 Differences Between YAML::Syck and YAML =head2 Error handling Some calls are designed to die rather than returning YAML. You should wrap your calls in eval to assure you do not get unexpected results. =head1 FLAGS =head2 $YAML::Syck::Headless Defaults to false. Setting this to a true value will make C omit the leading C<---\n> marker. =head2 $YAML::Syck::SortKeys Defaults to false. Setting this to a true value will make C sort hash keys. =head2 $YAML::Syck::SingleQuote Defaults to false. Setting this to a true value will make C always emit single quotes instead of bare strings. =head2 $YAML::Syck::ImplicitTyping Defaults to false. Setting this to a true value will make C recognize various implicit types in YAML, such as unquoted C, C, as well as integers and floating-point numbers. Otherwise, only C<~> is recognized to be C. =head2 $YAML::Syck::ImplicitUnicode Defaults to false. For Perl 5.8.0 or later, setting this to a true value will make C set Unicode flag on for every string that contains valid UTF8 sequences, and make C return a unicode string. Regardless of this flag, Unicode strings are dumped verbatim without escaping; byte strings with high-bit set will be dumped with backslash escaping. However, because YAML does not distinguish between these two kinds of strings, so this flag will affect loading of both variants of strings. If you want to use LoadFile or DumpFile with unicode, you are required to open your own file in order to assure it's UTF8 encoded: open(my $fh, ">:encoding(UTF-8)", "out.yml"); DumpFile($fh, $hashref); =head2 $YAML::Syck::ImplicitBinary Defaults to false. For Perl 5.8.0 or later, setting this to a true value will make C generate Base64-encoded C data for all non-Unicode scalars containing high-bit bytes. =head2 $YAML::Syck::UseCode / $YAML::Syck::LoadCode / $YAML::Syck::DumpCode These flags control whether or not to try and eval/deparse perl source code; each of them defaults to false. Setting C<$YAML::Syck::UseCode> to a true value is equivalent to setting both C<$YAML::Syck::LoadCode> and C<$YAML::Syck::DumpCode> to true. =head2 $YAML::Syck::LoadBlessed Defaults to false. Setting to true will allow YAML::Syck to bless objects as it imports objects. This default changed in 1.32. You can create any kind of object with YAML. The creation itself is not the critical part. If the class has a DESTROY method, it will be called once the object is deleted. An example with File::Temp removing files can be found at L =head1 BUGS Dumping Glob/IO values do not work yet. Dumping of Tied variables is unsupported. Dumping into tied (or other magic variables) with C might not work properly in all cases. =head1 CAVEATS This module implements the YAML 1.0 spec. To deal with data in YAML 1.1, please use the C module instead. The current implementation bundles libsyck source code; if your system has a site-wide shared libsyck, it will I be used. Tag names such as C is blessed into the package C, but the C and C tags are blessed into C. Note that this holds true even if the tag contains non-word characters; for example, C is blessed into C. Please use L to cast it into other user-defined packages. You can also set the LoadBlessed flag false to disable all blessing. This module has L and has only been semi-actively maintained since 2007. If you encounter an issue with it probably won't be fixed unless you L in Git that's ready for release. There are still good reasons to use this module, such as better interoperability with other syck wrappers (like Ruby's), or some edge case of YAML's syntax that it handles better. It'll probably work perfectly for you, but if it doesn't you may want to look at L, or perhaps at looking another serialization format like L. =head1 SEE ALSO L, L L =head1 AUTHORS Audrey Tang Ecpan@audreyt.orgE =head1 COPYRIGHT Copyright 2005-2009 by Audrey Tang Ecpan@audreyt.orgE. This software is released under the MIT license cited below. The F code bundled with this library is released by "why the lucky stiff", under a BSD-style license. See the F file for details. =head2 The "MIT" License Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. =cut