From e1b4d012353d54d98014a69d7c67d219a4a1ef89 Mon Sep 17 00:00:00 2001 From: aspangaro Date: Sun, 24 Nov 2013 21:28:15 +0100 Subject: [PATCH] Improvement of the Skype button Perm & add a button"Chat" --- htdocs/adherents/fiche.php | 12 ++++++++---- htdocs/comm/fiche.php | 2 +- htdocs/contact/fiche.php | 6 +++--- htdocs/contact/list.php | 6 +++--- htdocs/core/lib/company.lib.php | 21 +++++++++++---------- htdocs/core/lib/functions.lib.php | 13 ++++++++----- htdocs/langs/en_US/companies.lang | 1 + htdocs/societe/soc.php | 18 +++++++++--------- htdocs/theme/common/skype_callbutton.png | Bin 0 -> 3768 bytes htdocs/theme/common/skype_chatbutton.png | Bin 0 -> 3731 bytes 10 files changed, 44 insertions(+), 35 deletions(-) create mode 100644 htdocs/theme/common/skype_callbutton.png create mode 100644 htdocs/theme/common/skype_chatbutton.png diff --git a/htdocs/adherents/fiche.php b/htdocs/adherents/fiche.php index 399cc712297..0e04b77bb90 100644 --- a/htdocs/adherents/fiche.php +++ b/htdocs/adherents/fiche.php @@ -862,7 +862,7 @@ else print ''.$langs->trans("PhoneMobile").''; // Skype - if (! empty($conf->skype->enabled)) + if (! empty($conf->skype->enabled) && $user->rights->skype->view) { print ''.$langs->trans("Skype").''; } @@ -1104,7 +1104,8 @@ else print ''.$langs->trans("PhoneMobile").'phone_mobile).'">'; // Skype - if (! empty($conf->skype->enabled)) { + if (! empty($conf->skype->enabled) && $user->rights->skype->view) + { print ''.$langs->trans("Skype").'skype).'">'; } @@ -1427,8 +1428,11 @@ else print ''.$langs->trans("PhoneMobile").''.dol_print_phone($object->phone_mobile,$object->country_code,0,$object->fk_soc,1).''; // Skype - print ''.$langs->trans("Skype").''.dol_print_skype($object->skype,0,$object->fk_soc,1).''; - + if (! empty($conf->skype->enabled) && $user->rights->skype->view) + { + print ''.$langs->trans("Skype").''.dol_print_skype($object->skype,0,$object->fk_soc,1).''; + } + // Birthday print ''.$langs->trans("Birthday").''.dol_print_date($object->birth,'day').''; diff --git a/htdocs/comm/fiche.php b/htdocs/comm/fiche.php index 29ee792c738..5dfbdb9f254 100644 --- a/htdocs/comm/fiche.php +++ b/htdocs/comm/fiche.php @@ -268,7 +268,7 @@ if ($id > 0) print ''.$langs->trans('Fax').''.dol_print_phone($object->fax,$object->country_code,0,$object->id,'AC_FAX').''; // Skype - if (! empty($conf->skype->enabled)) + if (! empty($conf->skype->enabled) && $user->rights->skype->view) { print ''.$langs->trans('Skype').''.dol_print_skype($object->skype,0,$object->id,'AC_SKYPE').''; } diff --git a/htdocs/contact/fiche.php b/htdocs/contact/fiche.php index 3334a12b069..dfdcfc79949 100644 --- a/htdocs/contact/fiche.php +++ b/htdocs/contact/fiche.php @@ -526,7 +526,7 @@ else print ''.$langs->trans("IM").'jabberid).'">'; // Skype - if (! empty($conf->skype->enabled)) + if (! empty($conf->skype->enabled) && $user->rights->skype->view) { print ''.$langs->trans("Skype").'skype).'">'; } @@ -733,7 +733,7 @@ else print ''; // Skype - if (! empty($conf->skype->enabled)) + if (! empty($conf->skype->enabled) && $user->rights->skype->view) { print ''.$langs->trans("Skype").'skype).'">'; } @@ -952,7 +952,7 @@ else print ''; // Skype - if (!empty($conf->skype->enabled)) + if (! empty($conf->skype->enabled) && $user->rights->skype->view) { print ''.$langs->trans("Skype").''.dol_print_skype($object->skype,0,$object->fk_soc,1).''; } diff --git a/htdocs/contact/list.php b/htdocs/contact/list.php index 2b1c5e982df..6827e2c4f84 100644 --- a/htdocs/contact/list.php +++ b/htdocs/contact/list.php @@ -292,7 +292,7 @@ if ($result) print_liste_field_titre($langs->trans("PhoneMobile"),$_SERVER["PHP_SELF"],"p.phone_mob", $begin, $param, '', $sortfield,$sortorder); print_liste_field_titre($langs->trans("Fax"),$_SERVER["PHP_SELF"],"p.fax", $begin, $param, '', $sortfield,$sortorder); print_liste_field_titre($langs->trans("EMail"),$_SERVER["PHP_SELF"],"p.email", $begin, $param, '', $sortfield,$sortorder); - if (! empty($conf->skype->enabled)) { print_liste_field_titre($langs->trans("Skype"),$_SERVER["PHP_SELF"],"p.skype", $begin, $param, '', $sortfield,$sortorder); } + if (! empty($conf->skype->enabled) && $user->rights->skype->view) { print_liste_field_titre($langs->trans("Skype"),$_SERVER["PHP_SELF"],"p.skype", $begin, $param, '', $sortfield,$sortorder); } print_liste_field_titre($langs->trans("DateModificationShort"),$_SERVER["PHP_SELF"],"p.tms", $begin, $param, 'align="center"', $sortfield,$sortorder); print_liste_field_titre($langs->trans("ContactVisibility"),$_SERVER["PHP_SELF"],"p.priv", $begin, $param, 'align="center"', $sortfield,$sortorder); print_liste_field_titre($langs->trans("Status"),$_SERVER["PHP_SELF"],"p.statut", $begin, $param, 'align="center"', $sortfield,$sortorder); @@ -328,7 +328,7 @@ if ($result) print ''; print ''; print ''; - if (! empty($conf->skype->enabled)) + if (! empty($conf->skype->enabled) && $user->rights->skype->view) { print ''; print ''; @@ -397,7 +397,7 @@ if ($result) // EMail print ''.dol_print_email($obj->email,$obj->cidp,$obj->socid,'AC_EMAIL',18).''; // Skype - if (! empty($conf->skype->enabled)) { print ''.dol_print_skype($obj->skype,$obj->cidp,$obj->socid,'AC_SKYPE',18).''; } + if (! empty($conf->skype->enabled) && $user->rights->skype->view) { print ''.dol_print_skype($obj->skype,$obj->cidp,$obj->socid,'AC_SKYPE',18).''; } // Date print ''.dol_print_date($db->jdate($obj->tms),"day").''; diff --git a/htdocs/core/lib/company.lib.php b/htdocs/core/lib/company.lib.php index c08be97cac4..83da19cb5db 100644 --- a/htdocs/core/lib/company.lib.php +++ b/htdocs/core/lib/company.lib.php @@ -1,12 +1,13 @@ - * Copyright (C) 2006 Rodolphe Quiedeville - * Copyright (C) 2007 Patrick Raguin - * Copyright (C) 2010-2012 Regis Houssin - * Copyright (C) 2013 Florian Henry - * Copyright (C) 2013 Juanjo Menent + * Copyright (C) 2006 Rodolphe Quiedeville + * Copyright (C) 2007 Patrick Raguin + * Copyright (C) 2010-2012 Regis Houssin + * Copyright (C) 2013 Florian Henry + * Copyright (C) 2013 Juanjo Menent * Copyright (C) 2013 Christophe Battarel - * * + * Copyright (C) 2013 Alexandre Spangaro + * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 3 of the License, or @@ -576,7 +577,7 @@ function show_contacts($conf,$langs,$db,$object,$backtopage='') print_liste_field_titre($langs->trans("PhoneMobile"),$_SERVER["PHP_SELF"],"p.phone_mobile","",$param,'',$sortfield,$sortorder); print_liste_field_titre($langs->trans("Fax"),$_SERVER["PHP_SELF"],"p.fax","",$param,'',$sortfield,$sortorder); print_liste_field_titre($langs->trans("EMail"),$_SERVER["PHP_SELF"],"p.email","",$param,'',$sortfield,$sortorder); - if (! empty($conf->skype->enabled)) + if (! empty($conf->skype->enabled) && $user->rights->skype->view) { $colspan++; print ''.$langs->trans("Skype").''; @@ -608,8 +609,8 @@ function show_contacts($conf,$langs,$db,$object,$backtopage='') print ' '; - print ' '; - if (! empty($conf->skype->enabled)) + print ' '; + if (! empty($conf->skype->enabled) && $user->rights->skype->view) { $colspan++; print ' '; @@ -681,7 +682,7 @@ function show_contacts($conf,$langs,$db,$object,$backtopage='') print ''; print dol_print_email($obj->email,$obj->rowid,$object->id,'AC_EMAIL'); print ''; - if (! empty($conf->skype->enabled)) + if (! empty($conf->skype->enabled) && $user->rights->skype->view) { print ''; print dol_print_skype($obj->skype,$obj->rowid,$object->id,'AC_SKYPE'); diff --git a/htdocs/core/lib/functions.lib.php b/htdocs/core/lib/functions.lib.php index 8da52e301e6..b91a19a9820 100644 --- a/htdocs/core/lib/functions.lib.php +++ b/htdocs/core/lib/functions.lib.php @@ -1190,11 +1190,11 @@ function dol_print_email($email,$cid=0,$socid=0,$addlink=0,$max=64,$showinvalid= * Show Skype link * * @param string $skype Skype to show (only skype, without 'Name of recipient' before) - * @param int $cid Id of contact if known + * @param int $cid Id of contact if known * @param int $socid Id of third party if known * @param int $addlink 0=no link to create action - * @param int $max Max number of characters to show - * @return string HTML Link + * @param int $max Max number of characters to show + * @return string HTML Link */ function dol_print_skype($skype,$cid=0,$socid=0,$addlink=0,$max=64) { @@ -1208,9 +1208,12 @@ function dol_print_skype($skype,$cid=0,$socid=0,$addlink=0,$max=64) { $newskype=''; - $newskype.=' '; + $newskype.='?call" alt="'.$langs->trans("Call").' '.$skype.'" title="'.$langs->trans("Call").' '.$skype.'">'; + $newskype.=' '; + $newskype.=' '; + $newskype.=' '; $newskype.=''; if (($cid || $socid) && ! empty($conf->agenda->enabled) && $user->rights->agenda->myactions->create) diff --git a/htdocs/langs/en_US/companies.lang b/htdocs/langs/en_US/companies.lang index cdf9c3e5770..227ce4442fb 100644 --- a/htdocs/langs/en_US/companies.lang +++ b/htdocs/langs/en_US/companies.lang @@ -68,6 +68,7 @@ CountryId=Country id Phone=Phone Skype=Skype Call=Call +Chat=Chat PhonePro=Prof. phone PhonePerso=Pers. phone PhoneMobile=Mobile diff --git a/htdocs/societe/soc.php b/htdocs/societe/soc.php index 9d5a707aac1..cc4d2c6754f 100644 --- a/htdocs/societe/soc.php +++ b/htdocs/societe/soc.php @@ -876,7 +876,7 @@ else print ''.$langs->trans('Web').''; // Skype - if (! empty($conf->skype->enabled)) + if (! empty($conf->skype->enabled) && $user->rights->skype->view) { print ''.$langs->trans('Skype').''; } @@ -1300,7 +1300,7 @@ else print ''.$langs->trans('Web').''; // Skype - if (! empty($conf->skype->enabled)) + if (! empty($conf->skype->enabled) && $user->rights->skype->view) { print ''.$langs->trans('Skype').''; } @@ -1592,12 +1592,12 @@ else // Country print ''.$langs->trans("Country").''; - if ($object->country_code) - { - $img=picto_from_langcode($object->country_code); - if ($object->isInEEC()) print $form->textwithpicto(($img?$img.' ':'').$object->country,$langs->trans("CountryIsInEEC"),1,0); - else print ($img?$img.' ':'').$object->country; - } + if ($object->country_code) + { + $img=picto_from_langcode($object->country_code); + if ($object->isInEEC()) print $form->textwithpicto(($img?$img.' ':'').$object->country,$langs->trans("CountryIsInEEC"),1,0); + else print ($img?$img.' ':'').$object->country; + } print ''; // State @@ -1614,7 +1614,7 @@ else print ''; // Skype - if (! empty($conf->skype->enabled)) + if (! empty($conf->skype->enabled) && $user->rights->skype->view) { print ''.$langs->trans('Skype').''; print dol_print_skype($object->skype,0,$object->id,'AC_SKYPE'); diff --git a/htdocs/theme/common/skype_callbutton.png b/htdocs/theme/common/skype_callbutton.png new file mode 100644 index 0000000000000000000000000000000000000000..79ee7963fc4e1624244419e2b3806807ec7d32dd GIT binary patch literal 3768 zcmV;p4oC5cP)KLZ*U+IBfRsybQWXdwQbLP>6pAqfylh#{fb6;Z(vMMVS~$e@S=j*ftg6;Uhf59&ghTmgWD0l;*T zI709Y^p6lP1rIRMx#05C~cW=H_Aw*bJ-5DT&Z2n+x)QHX^p z00esgV8|mQcmRZ%02D^@S3L16t`O%c004NIvOKvYIYoh62rY33S640`D9%Y2D-rV&neh&#Q1i z007~1e$oCcFS8neI|hJl{-P!B1ZZ9hpmq0)X0i`JwE&>$+E?>%_LC6RbVIkUx0b+_+BaR3cnT7Zv!AJxW zizFb)h!jyGOOZ85F;a?DAXP{m@;!0_IfqH8(HlgRxt7s3}k3K`kFu>>-2Q$QMFfPW!La{h336o>X zu_CMttHv6zR;&ZNiS=X8v3CR#fknUxHUxJ0uoBa_M6WNWeqIg~6QE69c9o#eyhGvpiOA@W-aonk<7r1(?fC{oI5N*U!4 zfg=2N-7=cNnjjOr{yriy6mMFgG#l znCF=fnQv8CDz++o6_Lscl}eQ+l^ZHARH>?_s@|##Rr6KLRFA1%Q+=*RRWnoLsR`7U zt5vFIcfW3@?wFpwUVxrVZ>QdQz32KIeJ}k~{cZZE^+ya? z2D1z#2HOnI7(B%_ac?{wFUQ;QQA1tBKtrWrm0_3Rgps+?Jfqb{jYbcQX~taRB;#$y zZN{S}1|}gUOHJxc?wV3fxuz+mJ4`!F$IZ;mqRrNsHJd##*D~ju=bP7?-?v~|cv>vB zsJ6IeNwVZxrdjT`yl#bBIa#GxRa#xMMy;K#CDyyGyQdMSxlWT#tDe?p!?5wT$+oGt z8L;Kp2HUQ-ZMJ=3XJQv;x5ci*?vuTfeY$;({XGW_huIFR9a(?@3)XSs8O^N5RyOM=TTmp(3=8^+zpz2r)C z^>JO{deZfso3oq3?Wo(Y?l$ge?uXo;%ru`Vo>?<<(8I_>;8Eq#KMS9gFl*neeosSB zfoHYnBQIkwkyowPu(zdms`p{<7e4kra-ZWq<2*OsGTvEV%s0Td$hXT+!*8Bnh2KMe zBmZRodjHV?r+_5^X9J0WL4jKW`}lf%A-|44I@@LTvf1rHjG(ze6+w@Jt%Bvjts!X0 z?2xS?_ve_-kiKB_KiJlZ$9G`c^=E@oNG)mWWaNo-3TIW8)$Hg0Ub-~8?KhvJ>$ z3*&nim@mj(aCxE5!t{lw7O5^0EIO7zOo&c6l<+|iDySBWCGrz@C5{St!X3hAA}`T4 z(TLbXTq+(;@<=L8dXnssyft|w#WSTW<++3>sgS%(4NTpeI-VAqb|7ssJvzNHgOZVu zaYCvgO_R1~>SyL=cFU|~g|hy|Zi}}s9+d~lYqOB71z9Z$wnC=pR9Yz4DhIM>Wmjgu z&56o6maCpC&F##y%G;1PobR9i?GnNg;gYtchD%p19a!eQtZF&3JaKv33gZ<8D~47E ztUS1iwkmDaPpj=$m#%)jCVEY4fnLGNg2A-`YwHVD3gv};>)hAvT~AmqS>Lr``i7kw zJ{5_It`yrBmlc25DBO7E8;5VoznR>Ww5hAaxn$2~(q`%A-YuS64wkBy=9dm`4cXeX z4c}I@?e+FW+b@^RDBHV(wnMq2zdX3SWv9u`%{xC-q*U}&`cyXV(%rRT*Z6MH?i+i& z_B8C(+grT%{XWUQ+f@NoP1R=AW&26{v-dx)iK^-Nmiuj8txj!m?Z*Ss1N{dh4z}01 z)YTo*JycSU)+_5r4#yw9{+;i4Ee$peRgIj+;v;ZGdF1K$3E%e~4LaI(jC-u%2h$&R z9cLXcYC@Xwnns&bn)_Q~Te?roKGD|d-g^8;+aC{{G(1^(O7m37Y1-+6)01cN&y1aw zoqc{T`P^XJqPBbIW6s}d4{z_f5Om?vMgNQEJG?v2T=KYd^0M3I6IZxbny)%vZR&LD zJpPl@Psh8QyPB@KTx+@RdcC!KX7}kEo;S|j^u2lU7XQ}Oo;f|;z4Ll+_r>@1-xl3| zawq-H%e&ckC+@AhPrP6BKT#_XdT7&;F71j}Joy zkC~6lh7E@6o;W@^IpRNZ{ptLtL(gQ-CY~4mqW;US7Zxvm_|@yz&e53Bp_lTPlfP|z zrTyx_>lv@x#=^!PzR7qqF<$gm`|ZJZ+;<)Cqu&ot2z=0000WV@Og>004R=004l4008;_004mL004C`008P>0026e000+nl3&F} z000ByNklXHzS5>7rcETRAw&&|VuWEVv>+{ynPHea_qgEL zR2)WK$UnJ@d(S!F_doydbtT#z1E>Pp1e%mEnQ`fIw2lKPVR(%t7qc#D0W_-z8>rCm znMb6~MROsQC6RHPloHUOgqc#G^~rS}>0ER<`!DTAfSUjT;=mx_IIGpFqUf^9|gNfo-z^pCs2*A&C8S2-1>1rsWrr3)%*9LfP;0mvPdnM?#-H&}r z?r=3jIUES^9`LwPpv$OrA24OsSIUZvSxW)4KmwRiN|+l@I)oH_*chg!*vr0izY{q$ z!~;EX0AAh_qPfz~$n;{!Rh;0X+2L^!efj592<9sdf67V*#b%hJ6KXp;S z(M4CY#uj|ml2)}LFOf1I$74yheK}4?|7CtlW+@MN$hi7pVDmDg3TOpBH$-xw1~?Bq z3X}ldz%ynor=rT$j8zm^OlLHE&Rk+V>999iMDOl(3_Y=ddnyb0G?t`qDou&s0!;v@ zUS=m`2oL1Rt9f8Qa2N0(a0+-OZ?$R&do4xS4`(i>X+Al@-8cBTJ?!Jou#dKzgY4Q^ z$a7y$(KDK$I^@N1^+FEi6yV9@D-J9G&zj5CnOs~EN(qCpgo9rRKkTTYqrQZ<`Y*Hn z*cc^8M(7zyQ0}*Ai4>B_Y8J8@S#okMrh#EoZ7ZP>IA_A@7_#ZSc0`CAVz>_)r6ap^*zW_IyJ^euWHHGl^ zux2&!s(^j)r@tyL@`65z&w5%$k-z7n}VLY(-Wy}_nsW5WqlFVK@SPX<@{ut zW1|U_f=Gc)%FzgXlY^WFo(6secACbT0(y;NXMx**4@{+Y0G2uX9q^IqZxg^#U`C?d zFv2LE5;lGS=lG<^b-K*B{=qL~#)k~^IL i8$|2X{0aJR_+tR(u~TGXHE^{60000P)KLZ*U+IBfRsybQWXdwQbLP>6pAqfylh#{fb6;Z(vMMVS~$e@S=j*ftg6;Uhf59&ghTmgWD0l;*T zI709Y^p6lP1rIRMx#05C~cW=H_Aw*bJ-5DT&Z2n+x)QHX^p z00esgV8|mQcmRZ%02D^@S3L16t`O%c004NIvOKvYIYoh62rY33S640`D9%Y2D-rV&neh&#Q1i z007~1e$oCcFS8neI|hJl{-P!B1ZZ9hpmq0)X0i`JwE&>$+E?>%_LC6RbVIkUx0b+_+BaR3cnT7Zv!AJxW zizFb)h!jyGOOZ85F;a?DAXP{m@;!0_IfqH8(HlgRxt7s3}k3K`kFu>>-2Q$QMFfPW!La{h336o>X zu_CMttHv6zR;&ZNiS=X8v3CR#fknUxHUxJ0uoBa_M6WNWeqIg~6QE69c9o#eyhGvpiOA@W-aonk<7r1(?fC{oI5N*U!4 zfg=2N-7=cNnjjOr{yriy6mMFgG#l znCF=fnQv8CDz++o6_Lscl}eQ+l^ZHARH>?_s@|##Rr6KLRFA1%Q+=*RRWnoLsR`7U zt5vFIcfW3@?wFpwUVxrVZ>QdQz32KIeJ}k~{cZZE^+ya? z2D1z#2HOnI7(B%_ac?{wFUQ;QQA1tBKtrWrm0_3Rgps+?Jfqb{jYbcQX~taRB;#$y zZN{S}1|}gUOHJxc?wV3fxuz+mJ4`!F$IZ;mqRrNsHJd##*D~ju=bP7?-?v~|cv>vB zsJ6IeNwVZxrdjT`yl#bBIa#GxRa#xMMy;K#CDyyGyQdMSxlWT#tDe?p!?5wT$+oGt z8L;Kp2HUQ-ZMJ=3XJQv;x5ci*?vuTfeY$;({XGW_huIFR9a(?@3)XSs8O^N5RyOM=TTmp(3=8^+zpz2r)C z^>JO{deZfso3oq3?Wo(Y?l$ge?uXo;%ru`Vo>?<<(8I_>;8Eq#KMS9gFl*neeosSB zfoHYnBQIkwkyowPu(zdms`p{<7e4kra-ZWq<2*OsGTvEV%s0Td$hXT+!*8Bnh2KMe zBmZRodjHV?r+_5^X9J0WL4jKW`}lf%A-|44I@@LTvf1rHjG(ze6+w@Jt%Bvjts!X0 z?2xS?_ve_-kiKB_KiJlZ$9G`c^=E@oNG)mWWaNo-3TIW8)$Hg0Ub-~8?KhvJ>$ z3*&nim@mj(aCxE5!t{lw7O5^0EIO7zOo&c6l<+|iDySBWCGrz@C5{St!X3hAA}`T4 z(TLbXTq+(;@<=L8dXnssyft|w#WSTW<++3>sgS%(4NTpeI-VAqb|7ssJvzNHgOZVu zaYCvgO_R1~>SyL=cFU|~g|hy|Zi}}s9+d~lYqOB71z9Z$wnC=pR9Yz4DhIM>Wmjgu z&56o6maCpC&F##y%G;1PobR9i?GnNg;gYtchD%p19a!eQtZF&3JaKv33gZ<8D~47E ztUS1iwkmDaPpj=$m#%)jCVEY4fnLGNg2A-`YwHVD3gv};>)hAvT~AmqS>Lr``i7kw zJ{5_It`yrBmlc25DBO7E8;5VoznR>Ww5hAaxn$2~(q`%A-YuS64wkBy=9dm`4cXeX z4c}I@?e+FW+b@^RDBHV(wnMq2zdX3SWv9u`%{xC-q*U}&`cyXV(%rRT*Z6MH?i+i& z_B8C(+grT%{XWUQ+f@NoP1R=AW&26{v-dx)iK^-Nmiuj8txj!m?Z*Ss1N{dh4z}01 z)YTo*JycSU)+_5r4#yw9{+;i4Ee$peRgIj+;v;ZGdF1K$3E%e~4LaI(jC-u%2h$&R z9cLXcYC@Xwnns&bn)_Q~Te?roKGD|d-g^8;+aC{{G(1^(O7m37Y1-+6)01cN&y1aw zoqc{T`P^XJqPBbIW6s}d4{z_f5Om?vMgNQEJG?v2T=KYd^0M3I6IZxbny)%vZR&LD zJpPl@Psh8QyPB@KTx+@RdcC!KX7}kEo;S|j^u2lU7XQ}Oo;f|;z4Ll+_r>@1-xl3| zawq-H%e&ckC+@AhPrP6BKT#_XdT7&;F71j}Joy zkC~6lh7E@6o;W@^IpRNZ{ptLtL(gQ-CY~4mqW;US7Zxvm_|@yz&e53Bp_lTPlfP|z zrTyx_>lv@x#=^!PzR7qqF<$gm`|ZJZ+;<)Cqu&ot2z=0000WV@Og>004R=004l4008;_004mL004C`008P>0026e000+nl3&F} z000BNNklkiigeBncdl$uM6LmL3C5QD4&aY z`QG<=pZPzh|NBHuEv^}#j8Vy$&;C{%Zu^_^UuA<5~vgH0+lSfoZ#}U~2XWslDPuO{?dsOpe9_xu2bnUm+SiA2p51cPmLqxN z>MCq*9wwWLoh~F(FtHEA-(y>d>b3xKE0%@xYV5_Ju=mmh_xs}&tiTgtuM%@`GiKrG z7~d2Vs#3Ar2W7zOeVyLje%$!g2es@!qdiwNAQO`$F#i&On=uUc_Tkh%+=lmp{$hL* z&SHFtm+=Tb#WSG?79+v)cq_)nbVR7eVuMy*XBsBXh0?f z<1UfnyU~qeAE0B5!3!7?vi2kf25?i64NbfdAK+~0lMakWeT-45h~e3^x!)f3(1ydd zx93%)A~PDZ)=n7Wi-~ovPe)F5pT|>m5kRRBjlN_!zQcj={S!LT6r63t8_qG+j8IC- z?8d!6hw{ZljO7#RjP8G(v1{8jt!p!F^HG0v6x>x?Vfx6dLuYz~Ke-r(??L7tKo>$b z%AGHT+Hb&NG-3zVmFZQ4wO=pjmabBwyQgG!Q;ntL279zIYtP}FRljy<>+Crf#z@GZ zY~bGuWmQ-|?2BSUM#{@23M{iII5j!+&CeKBrh6Su^j_Lsla6;B$`>u%c@k`Rc&PT- zH%aC+da%Ay>**fL_I4Upo$kFe^df-r;Z>a#qSP2_u^9`3&fw6j<=k5n)?J}|h6avb zUZ$4|S(%BU>EQmP5!rsNum94K*?p>D#;B}2Z_N1NSeNy!XRX=a>1;7kTM;WJ=UL!l zvI+O#{ZPC45ZTq?{HqH}s53CeV7wNZc~_|QMZxLbnw}ZPi%C)M?2(F$=}9a-*x56# zSV~l