From df8163fe0debc5345f5aefb7ae2cf1ac92239215 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tobias=20H=C3=B6=C3=9Fl?= Date: Wed, 28 Mar 2012 19:23:32 +0000 Subject: [PATCH 1/9] Another proposal for notifications after FB-Connection-Invalidation --- facebook/facebook.php | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/facebook/facebook.php b/facebook/facebook.php index 24632240..8436ece6 100755 --- a/facebook/facebook.php +++ b/facebook/facebook.php @@ -54,6 +54,7 @@ */ define('FACEBOOK_MAXPOSTLEN', 420); +define('FACEBOOK_SESSION_ERR_NOTIFICATION_INTERVAL', 259200); // 3 days function facebook_install() { @@ -904,6 +905,7 @@ function facebook_post_hook(&$a,&$b) { if(! get_config('facebook','test_mode')) { $x = post_url($url, $postvars); + logger('Facebook post returns: ' . $x, LOGGER_DEBUG); $retj = json_decode($x); if($retj->id) { @@ -911,7 +913,6 @@ function facebook_post_hook(&$a,&$b) { dbesc('fb::' . $retj->id), intval($b['id']) ); - del_pconfig($b['uid'], 'facebook', 'session_expired_mailsent'); } else { if(! $likes) { @@ -923,7 +924,9 @@ function facebook_post_hook(&$a,&$b) { if (isset($retj->error) && $retj->error->type == "OAuthException" && $retj->error->code == 190) { logger('Facebook session has expired due to changed password.', LOGGER_DEBUG); - if (!get_pconfig($b['uid'], 'facebook', 'session_expired_mailsent')) { + + $last_notification = get_pconfig($b['uid'], 'facebook', 'session_expired_mailsent'); + if (!$last_notification || $last_notification < (time() - FACEBOOK_SESSION_ERR_NOTIFICATION_INTERVAL)) { require_once('include/enotify.php'); $r = q("SELECT * FROM `user` WHERE `uid` = %d LIMIT 1", intval($b['uid']) ); @@ -936,12 +939,10 @@ function facebook_post_hook(&$a,&$b) { 'to_email' => $r[0]['email'], )); - set_pconfig($b['uid'], 'facebook', 'session_expired_mailsent', '1'); - } + set_pconfig($b['uid'], 'facebook', 'session_expired_mailsent', time()); + } else logger('Facebook: No notification, as the last one was sent on ' . $last_notification, LOGGER_DEBUG); } } - - logger('Facebook post returns: ' . $x, LOGGER_DEBUG); } } } @@ -953,6 +954,7 @@ function facebook_enotify(&$app, &$data) { $data['itemlink'] = '/facebook'; $data['epreamble'] = $data['preamble'] = t('Your Facebook connection became invalid. Please Re-authenticate.'); $data['subject'] = t('Facebook connection became invalid'); + $data['body'] = sprintf( t("Hi %1\$s,\n\nThe connection between your accounts on %2\$s and Facebook became invalid. This usually happens after you change your Facebook-password. To enable the connection again, you have to %3\$sre-authenticate the Facebook-connector%4\$s."), $data['params']['to_name'], "[url=" . $app->config["system"]["url"] . "]" . $app->config["sitename"] . "[/url]", "[url=" . $app->config["system"]["url"] . "/facebook]", "[/url]"); } } From fc4250303b3c6f0e5113f9853a8072e944bfaac6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tobias=20H=C3=B6=C3=9Fl?= Date: Sat, 31 Mar 2012 08:16:09 +0000 Subject: [PATCH 2/9] Provide a link to reactivate Real-Time Updated --- facebook/facebook.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/facebook/facebook.php b/facebook/facebook.php index 8436ece6..e433c98e 100755 --- a/facebook/facebook.php +++ b/facebook/facebook.php @@ -598,7 +598,7 @@ function facebook_cron($a,$b) { if(strlen($a->config['admin_email']) && !get_config('facebook', 'realtime_err_mailsent')) { $res = mail($a->config['admin_email'], t('Problems with Facebook Real-Time Updates'), - "Hi!\n\nThere's a problem with the Facebook Real-Time Updates that cannot be solved automatically. Maybe an permission issue?\n\nThis e-mail will only be sent once.", + "Hi!\n\nThere's a problem with the Facebook Real-Time Updates that cannot be solved automatically. Maybe a permission issue?\n\nPlease try to re-activate it on " . $a->config["system"]["url"] . "/admin/plugins/facebook\n\nThis e-mail will only be sent once.", 'From: ' . t('Administrator') . '@' . $_SERVER['SERVER_NAME'] . "\n" . 'Content-type: text/plain; charset=UTF-8' . "\n" . 'Content-transfer-encoding: 8bit' From 745f5787220eb1e7a2b3edd921537234afdd4260 Mon Sep 17 00:00:00 2001 From: Tobias Diekershoff Date: Sat, 31 Mar 2012 10:28:09 +0200 Subject: [PATCH 3/9] fixed a typo --- statusnet/README | 2 +- twitter/README | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/statusnet/README b/statusnet/README index ce1e1179..32c11c7e 100755 --- a/statusnet/README +++ b/statusnet/README @@ -43,7 +43,7 @@ ___ Configuration ___ __ Global Configuration __ If you enabled an administrator account, please use the admin panel to cofigure -the StatusNet reley. +the StatusNet relay. To activate this addon add statusnet to the list of active addons in your .htconfig.php file diff --git a/twitter/README b/twitter/README index 9d52a474..a5511fec 100755 --- a/twitter/README +++ b/twitter/README @@ -48,7 +48,7 @@ ___ Configuration ___ __ Global Configuration __ If you enabled an administrator account, please use the admin panel to cofigure -the Twitter reley. +the Twitter relay. To activate this addon add @twitter@ to the list of active addons in your .htconfig.php file From e92b5336f869a2faddc2f25d47883be9596a3a25 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tobias=20H=C3=B6=C3=9Fl?= Date: Sat, 31 Mar 2012 08:29:13 +0000 Subject: [PATCH 4/9] Show the pseudo-user Administrator instead of a broken image --- facebook/facebook.php | 3 +++ 1 file changed, 3 insertions(+) diff --git a/facebook/facebook.php b/facebook/facebook.php index 33d7d187..8fcde403 100755 --- a/facebook/facebook.php +++ b/facebook/facebook.php @@ -964,6 +964,9 @@ function facebook_post_hook(&$a,&$b) { 'language' => $r[0]['language'], 'to_name' => $r[0]['username'], 'to_email' => $r[0]['email'], + 'source_name' => t('Administrator'), + 'source_link' => $a->config["system"]["url"], + 'source_photo' => $a->config["system"]["url"] . '/images/person-80.jpg', )); set_pconfig($b['uid'], 'facebook', 'session_expired_mailsent', time()); From ded03edca5a5e3f2dfa6d1df148225b6774d07b7 Mon Sep 17 00:00:00 2001 From: friendica Date: Sat, 31 Mar 2012 18:11:33 -0700 Subject: [PATCH 5/9] remove frown - no longer needed --- frown.tgz | Bin 1183 -> 0 bytes frown/frown.css | 14 -------- frown/frown.php | 86 ------------------------------------------------ 3 files changed, 100 deletions(-) delete mode 100644 frown.tgz delete mode 100755 frown/frown.css delete mode 100755 frown/frown.php diff --git a/frown.tgz b/frown.tgz deleted file mode 100644 index 6a2343f00b57938b22efee862f698db86bf9e125..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1183 zcmV;Q1Yr9giwFRMDrZjs1MOFBZ`(Ey_E-B?+%%(-1IO}9YzJ=aqFDFxp;-&0*gmv{ zK}(cGSP})2auTfh?>mZ;U*ZKphb09%J+On2JRa|!=XjC>!LL)d@ucV@rqgj_I6j*W zhi8rccru)v4T|{^jlp0#8cc@c{%F$Z4~B!`umR(z4a*>xiU@#4LcEZP4ND)e%fj(w zaDION95Fp3fu=lWl~Le*RD$w>=N z;CGVH8T_J)K@ZkB6c_mn=oG;@IiH zU#(VC(2z+*#WLc2?bunIhb&!6suW8@X?MXUzR%0z-j%psFz&XdotKY!TV`CUuW)JX z(Qm66^Dv~svC817Z<4Wa@$NXqJUvV@PygFAAM^L`6WwJhXu>!5^DJvj>-!U?w<6wJ z8zi723Y9m|-k_qSr;Xdil*dy=keR}|y?p=f>H`oV$ZcWsCxvSk$B+;#H<=3@QhS57 z$`ugUkeK<9ODceP9?w&y_mI>F7J%gXaNxPnX9O(F1u5hxLxO+{Jd|N*SmP!pQ=IpN zJ0QeqlWq~X7O}|!=Ld*6-kGJ20+s#p1#s%dF`0A?r>8PsB@D^zbXrZUN0o~d6+_3% z%*5vGJL%f;7IjSQuATB_c^U04OBE(udj4oU+n+l{DY7)+4k*ViuK14iJoAa7e$Vbe z4}O04wv_BpF(ata>wQr)aJAzo=|OSveZS!Hz`Z^e6fbsWB&0hIA7s&afegNAOLGa1 z2;3*A)pU2~N_87k8BvsU??A2cH3g5PrbG(MD!Lf20i?{MMMTXuIbG;IAMHpbaYTu4 ze}>*1?2DMCYY;S^Tf0*%0Ck(uxuxihay=<6hy)GhmW@nmS0SpmB9i7p-{>CL?(xOK zZQ9(nAfY}Za|_wFz+LD`>y!ADT4k2M>a;K?FBgKQ3bRGofCqc!i`6bz(Wp%}G}Qwi z<`8~W9qC@t_9E)7i_MNxdFsF`u%TR;Tjf6%&dtC!9k0|w@`S=~A1>ckQqUW0JXO7v z@kzt2&oj(jS5n>6@0aAZJNIeSFgW3^vWBYX=Uj? zmg8ukxyItE#L+c%;NHcw7yFEQF(sI - * - * - */ - - -function frown_install() { - - register_hook('plugin_settings', 'addon/frown/frown.php', 'frown_settings'); - register_hook('plugin_settings_post', 'addon/frown/frown.php', 'frown_settings_post'); - - logger("installed frown"); -} - - -function frown_uninstall() { - - unregister_hook('plugin_settings', 'addon/frown/frown.php', 'frown_settings'); - unregister_hook('plugin_settings_post', 'addon/frown/frown.php', 'frown_settings_post'); - - - logger("removed frown"); -} - - - -/** - * - * Callback from the settings post function. - * $post contains the $_POST array. - * We will make sure we've got a valid user account - * and if so set our configuration setting for this person. - * - */ - -function frown_settings_post($a,$post) { - if(! local_user() || (! x($_POST,'frown-submit'))) - return; - set_pconfig(local_user(),'system','no_smilies',intval($_POST['frown'])); - - info( t('Frown settings updated.') . EOL); -} - - -/** - * - * Called from the Plugin Setting form. - * Add our own settings info to the page. - * - */ - - - -function frown_settings(&$a,&$s) { - - if(! local_user()) - return; - - /* Add our stylesheet to the page so we can make our settings look nice */ - - $a->page['htmlhead'] .= '' . "\r\n"; - - /* Get the current state of our config variable */ - - $enabled = get_pconfig(local_user(),'system','no_smilies'); - $checked = (($enabled) ? ' checked="checked" ' : ''); - - /* Add some HTML to the existing form */ - - $s .= '
'; - $s .= '

' . t('Frown Settings') . '

'; - $s .= '
'; - $s .= ''; - $s .= ''; - $s .= '
'; - - /* provide a submit button */ - - $s .= '
'; - -} From 84c243c64044fc004170520780c251aa78560178 Mon Sep 17 00:00:00 2001 From: friendica Date: Sat, 31 Mar 2012 18:12:28 -0700 Subject: [PATCH 6/9] package update --- statusnet.tgz | Bin 15809 -> 16012 bytes twitter.tgz | Bin 9936 -> 10134 bytes 2 files changed, 0 insertions(+), 0 deletions(-) diff --git a/statusnet.tgz b/statusnet.tgz index 1984cdbafe7128fd844cf41f6125616525afb20d..4e5bf8ceced0e059652236df9afe743b57828f4c 100755 GIT binary patch literal 16012 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 G$N&J&AW9Jc literal 15809 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 Lqwii(0LTCUB~I}E diff --git a/twitter.tgz b/twitter.tgz index 18416d1f638db3eeebfe9077aa1b999d01bcfad8..68a412aa26235ca2420739715941c22bf51a383c 100755 GIT binary patch literal 10134 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 Date: Sat, 31 Mar 2012 18:39:35 -0700 Subject: [PATCH 7/9] pass IRC channel through url, allows simpler default choice. --- irc.tgz | Bin 881 -> 920 bytes irc/irc.php | 3 ++- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/irc.tgz b/irc.tgz index e10b0769e74e5dc9864e683e79dd7f0111abc479..c6ba1bffea99337a2a278039f796c4fdc599649b 100644 GIT binary patch literal 920 zcmV;J184jniwFSIv3E}Z1MO68Z`(Ey_GkTygKAW=;YhOMm%x=36kV|eD4HS2x(`8M z&=M^Xp-F+Fk_JQndyn*6vaX+sbil?3uwkC><>B3PWGat4FN_2+n@u{S$#^yzjXTL? zI+~7$*1kh$IGmkMW~a$4LHlqx8ILZKH_-=xj({GIh_ycl_#dG98|so&5|> zKM@S)kDsWn>KChF20WdPzc>F89-quV!TFyir_&B3FUIHz{^#>g&vEiz-0ypR_((Q% z4i{JN;9W&D{Lb5w3AF!0n_RJ4Gb!dkiUNp$3!$kJRKpeJt-IuYenfvMeeDHq$=ZD$u;9NHqM#Xk3FOZRFD;? zfMKNAFmaOAmR;jPA0A~34~%or6%}9-fsdL#@bQ7OMpNXijW06OG$wUzgNZ0i9N>AI zM783XBW5ywh0NOx6`Ghf7ze{1$s3lt8$}x$SLAbC$h+1o)Hy2_YsIK2SWf2KJb0UR zD{`9zEla$DCY*;o_{&qYG(6R^lJYJLkkJw=w!r`b?79^3lVvqV6Mt~(z45;MEq5!P zW^cuh=KrR^{?D*W2Cus-Q>DAQIVQfnxrGG;X~FIx=cH*CKK^&2nda2bQUaBt>xG$> zp9K(s4oyufCNsC7hqfS%NtVW#A`9#lpHtY#qUChgKHVzu4?ej>u?ii&?h@mN97#i4 z#gSW=oMa`{%bg{(72`uUuwqx5E8q{Wi+U1*@&*lI_&Mw@e|>*F2=>;X*MoDg#+#$@ z7UmEfL}0s!YBoz`M7LKctQGE_)nX&@N2NF1h;H==gyY1RD6PN0&wJFB4>eI53-lokwyd;i#D@nZj8|(nK-bnM` ue(@a~92^`R92^`R92^`R92^`R92^`R92^`R92^|}i}(sKil!IqJaTLM>BP;>(pU}%bd;4ah;Ri3o}N}&gQ+ze0DaO%zESb zVzQVe?tD)#NzSIpd^|~#X>Xh)^Xa4q^OqK8=~_cIK(D5G$@MLl&)7BPe36`=pZ^R^ zKM{`o$4}f;&5Px*4PGo}&-H&Yn@_*#{}c~m1R>7!K~D&Rw}zo^V{K8HVT3k~bEdMeet^%rAi9%J z3^9_mD^%XqOd4v-U=6H#6mM1TZxq*zRP;|$sGH6%)CDhATg{m)cutqQICz_FCvz7B zPu6$^LxmWez+Zu8rPZm|l~Ol@2o4wSnEjq!oC?zyY35Libcg3d?YE^WC?aOC6Eq`E>D;!p72Cw_n+M!0;vQ7)s z)~Bag$;^6xGH@Bmp&FR6uk01@hZ{pX{dQU&MhmtYm&OfItMErneBIg$a*tl;EJl&QNT<$0S;``mcsw4D$K&yMJRXn7get_baseurl() . '/addon/irc'; $o = ''; +$channels = ((x($_GET,'channels')) ? $_GET['channels'] : 'friendica'); /* add the chatroom frame and some html * by altering the "channels=friendica" part of the URL, you can add/remove channels. @@ -44,7 +45,7 @@ $o = ''; $o .= <<< EOT

IRC chat

a beginner's guide to using IRC.

- + EOT; return $o; From 1b1237d97c3d50394bcc86b9da94b26c0cecdb42 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tobias=20H=C3=B6=C3=9Fl?= Date: Sun, 1 Apr 2012 07:42:50 +0000 Subject: [PATCH 8/9] FEATURE: AppID/Secret can now be entered on the plugin's admin page. BUG: if a connected FB-App is deleted and a new FB-App is connected, the app_access_token of the former App remained in the config and made it impossible to activate Real-Time Updates with the new App. USABILITY: Now the user's connector settings page automatically recognizes if the connection is still valid and acts accordingly. SECURITY: XSRF-Protection. --- facebook/facebook.php | 72 ++++++++++++++++++++++++++++++++++--------- 1 file changed, 57 insertions(+), 15 deletions(-) diff --git a/facebook/facebook.php b/facebook/facebook.php index 8fcde403..9f873284 100755 --- a/facebook/facebook.php +++ b/facebook/facebook.php @@ -464,9 +464,21 @@ function facebook_content(&$a) { info( t('Updating contacts') . EOL); } - - $fb_installed = get_pconfig(local_user(),'facebook','post'); - + $o = ''; + + $fb_installed = false; + if (get_pconfig(local_user(),'facebook','post')) { + $access_token = get_pconfig(local_user(),'facebook','access_token'); + if ($access_token) { + $private_wall = intval(get_pconfig($uid,'facebook','private_wall')); + $s = fetch_url('https://graph.facebook.com/me/feed?access_token=' . $access_token); + if($s) { + $j = json_decode($s); + if (isset($j->data)) $fb_installed = true; + } + } + } + $appid = get_config('facebook','appid'); if(! $appid) { @@ -629,17 +641,39 @@ function facebook_plugin_settings(&$a,&$b) { function facebook_plugin_admin(&$a, &$o){ + $o = ''; - $activated = facebook_check_realtime_active(); - if ($activated) { - $o = t('Real-Time Updates are activated.') . '

'; - $o .= ''; - } else { - $o = t('Real-Time Updates not activated.') . '
'; + $o .= '

' . t('Facebook API Key') . '

'; + + $appid = get_config('facebook', 'appid' ); + $appsecret = get_config('facebook', 'appsecret' ); + + $o .= '
'; + $o .= '
'; + $o .= ''; + + if ($appid && $appsecret) { + $o .= '

' . t('Real-Time Updates') . '

'; + + $activated = facebook_check_realtime_active(); + if ($activated) { + $o .= t('Real-Time Updates are activated.') . '

'; + $o .= ''; + } else { + $o .= t('Real-Time Updates not activated.') . '
'; + } } } function facebook_plugin_admin_post(&$a, &$o){ + check_form_security_token_redirectOnErr('/admin/plugins/facebook', 'fbsave'); + + if (x($_REQUEST,'fb_save_keys')) { + set_config('facebook', 'appid', $_REQUEST['appid']); + set_config('facebook', 'appsecret', $_REQUEST['appsecret']); + del_config('facebook', 'app_access_token'); + info(t('The new values have been saved.')); + } if (x($_REQUEST,'real_time_activate')) { facebook_subscription_add_users(); } @@ -1448,8 +1482,8 @@ function fb_get_app_access_token() { logger('fb_get_app_access_token: appid and/or appsecret not set', LOGGER_DEBUG); return false; } - - $x = fetch_url('https://graph.facebook.com/oauth/access_token?client_id=' . $appid . '&client_secret=' . $appsecret . "&grant_type=client_credentials"); + logger('https://graph.facebook.com/oauth/access_token?client_id=' . $appid . '&client_secret=' . $appsecret . '&grant_type=client_credentials', LOGGER_DATA); + $x = fetch_url('https://graph.facebook.com/oauth/access_token?client_id=' . $appid . '&client_secret=' . $appsecret . '&grant_type=client_credentials'); if(strpos($x,'access_token=') !== false) { logger('fb_get_app_access_token: returned access token: ' . $x, LOGGER_DATA); @@ -1480,8 +1514,7 @@ function facebook_subscription_del_users() { del_config('facebook', 'realtime_active'); } -function facebook_subscription_add_users() { - +function facebook_subscription_add_users($second_try = false) { $a = get_app(); $access_token = fb_get_app_access_token(); @@ -1502,9 +1535,18 @@ function facebook_subscription_add_users() { del_config('facebook', 'cb_verify_token'); if ($j) { + $x = json_decode($j); logger("Facebook reponse: " . $j, LOGGER_DATA); - - if (facebook_check_realtime_active()) set_config('facebook', 'realtime_active', 1); + if (isset($x->error)) { + logger('facebook_subscription_add_users: got an error: ' . $j); + if ($x->error->type == "OAuthException" && $x->error->code == 190) { + del_config('facebook', 'app_access_token'); + if ($second_try === false) facebook_subscription_add_users(true); + } + } else { + logger('facebook_subscription_add_users: sucessful'); + if (facebook_check_realtime_active()) set_config('facebook', 'realtime_active', 1); + } }; } From 4f24c19039207abfdee58ee9490d6c018dfd0b0a Mon Sep 17 00:00:00 2001 From: friendica Date: Sun, 1 Apr 2012 01:38:31 -0700 Subject: [PATCH 9/9] package update --- facebook.tgz | Bin 15037 -> 15826 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/facebook.tgz b/facebook.tgz index bad3991644ae0216fb308f90a30b53de536e10d3..1d1919d2fba7d910ac7a80e77690b270f93c5446 100644 GIT binary patch literal 15826 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%0DkcZP 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

K86K|4IHa1{j~dh+#I>^JX9GTRz|9a z3=7W-B=&{8Y4qj7@jzdmQ8u(VE&t(;ig*OQ^(id-U<@B!OxLoBbMLn>9EZP?$MoP* z#*vR^2o^0`S1ey)K%;|t*C6`UP&(%0mMMb)c_k(v>8NA4^Fx2m#eE zhBq`xbUhN>D9YBB(){J9k0FW5so7h}Cbkw2%<3G=1Yaj{djwoOG(T0StLLa3d_0g{Q>{vh+{M&C7q*MP};~+??aRl2~z|T5&dHTG;KgO zmZBu3f&rG_SZv&aacFpMB^hn#t5Yy)KVj$sZrfs67!YUQoB-2=oCZ{P{9~CdZqYUE zQs-;P$ZrCpQ?qHWoBN}?0iUj1+^(i(zt*EN?9ozo362+fUEr#{_zr^|Sq#=JHugi> z`axbOZ=h#GZ0E5OCH`i#fVEofcW`W&BFn(j;TcmCLVc-pHA$87*AGB5tgw5u^9i!3)CIsR7a}g|IBy!hzN`-C7HMHS zO2T;50=oAi#=>|5xnx4~L+73ns@9}5bB2Y2_a+G%CTtQrzuvP%4}q&%CsXe z$}DO3HuDSvLi_^KR8FkxwH4Uc2xXZf1GcajgtX1x(?w=)A)!8$>e`|HYR&y+ipQ}; z*UeA?)5$8wIbHXUi`!)$_DgErK?VO%;N$9Ox$@;Q#?{yuY4c{e?3K@K)P@)4tz0rU zilcbcNyY4*GuBf_+{H2WwQST)g@U0YHsQ8vTe{MGG&$va?mEfymg74hetQF^N#DYw zgErP6A6Mswn?N4uJB1Uahh1G`1m^iGjE75 zDN7EOfSDoiJYib5wrC*?ILwTg=AGlM$^|SL%Q)?+iJWi~J0Mx*mlf2_OMp zdu6pKb&q3@@4!kSy!dUOJ%C6m+&xXJ(#B3$F)U^kVOzQWg@35+tSgVxswXe4R&C{m z%P*x;tk_+C3SBfT6|fDW8ev8_7g;NZy_+4w@UH=P#WnZ%IJwW90RM=mflR3|85Y=~ zaa=J(@?UWWm_C{dRiEw6!Y^kB#9x7=`;Bk0I|>g*Ggb2j!CtFW=*`IQ%y8B-^$0|z zwHs94zQCV-{7`@AZRmY`Ri|+x3s_+TWg&nOTF^ixDL%ZDCoDY^yuZ$1t-UHN-;IKv z1e_cJ|5|hj;tNhPSh)flN2E&K%$xq&Fq9m9Y%R$xTmH+Px;BS3-6vYhOX|alAs5*; zjEtf~tZo;^m^75%7E$A+YM4!rF8uYGEArC3Xa8B-U$5v4P^a~UmaL@~nyum#WYS#e zI5Xi8lYD~9{)N2uE>+1kojo`8wPwdPd+QXp%jT;T6>I_un{(xh7gJo>P|U{2_zI;9C>Jzo(`Wk zx*$@M`;sjAxQsk<&>?Fv9{6tLW6XqLzVFtJot+_(Wkiv(DqLAyPB*WQ$3w~Dclq~| z$7fT%k2VczP79BnyuO=UZV#VVJ~OSXJYy~h2}+R2yS-sftJ(EpsV{_&9FisNSlx`^ zbCV0!eDv%4!~pkb?FNM%Psm&luMs`ED=}=DD$XnTA=m9Qr`j_k-3lQu+g( z|EZ)w_by^j=PZ$EedOR9wW6aOou|jwX)bp*$Lz2T$VsUt%b(UJj`(z|D6O@g?27Vw zf@B@j`Yg%TIGOn}g(Hk%l+2k&E8XmkyDUe#T;sN>I1~&;$PZE$IWqwY_6;`(2el=f zGeyE2;@NYRimHRFE0fpLm-G8bH@gi5_^3eoPPBLA)OFU*>I&zK;#RihFee zNIV}W&j2V^Fe(Mdg5E{nvS(5)ALXs9W z{cJ)*J|2axCL&1#eJV)b^74;u&-j1P(Zi7iBV6`^j>f|4pjh8T$EW}|+mO}TO^!iA zwF%mHPkTu09INA$HC%ejzp$G0uCuQhi1ga8IbavD{CWk6Y(I!!RsJXe=ZtMRh0|f? z_#Ju?(V*b&yK;Vh~5kY z8}o=&d5|B}x;t0(J!GR+>XbEX?T*k}Kr R;5+i@dsk1q1_S^G`X8mWxd;FN literal 15037 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 T`uY0#kN^BXQ=@|G0Pp|+Ij7#d