From f1c5b764df0dd3727d3d00a9e33d4eb4caea2b33 Mon Sep 17 00:00:00 2001 From: root <root@rivolta.investici.org> Date: Wed, 16 Feb 2011 21:46:49 +0000 Subject: [PATCH] Import pubsubhubbub 1.5 --- .../plugins/pubsubhubbub/pubsubhubbub.php | 104 ++++---- wp-content/plugins/pubsubhubbub/readme.txt | 45 ++-- .../pubsubhubbub/tags/1.0/publisher.php | 86 ------- .../pubsubhubbub/tags/1.0/pubsubhubbub.php | 179 -------------- .../plugins/pubsubhubbub/tags/1.0/readme.txt | 43 ---- .../pubsubhubbub/tags/1.0/screenshot-1.png | Bin 14558 -> 0 bytes .../pubsubhubbub/tags/1.1/publisher.php | 86 ------- .../pubsubhubbub/tags/1.1/pubsubhubbub.php | 179 -------------- .../plugins/pubsubhubbub/tags/1.1/readme.txt | 43 ---- .../pubsubhubbub/tags/1.1/screenshot-1.png | Bin 14558 -> 0 bytes .../pubsubhubbub/tags/1.2/publisher.php | 86 ------- .../pubsubhubbub/tags/1.2/pubsubhubbub.php | 211 ----------------- .../plugins/pubsubhubbub/tags/1.2/readme.txt | 49 ---- .../pubsubhubbub/tags/1.2/screenshot-1.png | Bin 40565 -> 0 bytes .../pubsubhubbub/tags/1.3/publisher.php | 86 ------- .../pubsubhubbub/tags/1.3/pubsubhubbub.php | 221 ----------------- .../plugins/pubsubhubbub/tags/1.3/readme.txt | 66 ------ .../pubsubhubbub/tags/1.3/screenshot-1.png | Bin 40565 -> 0 bytes .../pubsubhubbub/tags/1.4/publisher.php | 86 ------- .../pubsubhubbub/tags/1.4/pubsubhubbub.php | 224 ------------------ .../plugins/pubsubhubbub/tags/1.4/readme.txt | 67 ------ .../pubsubhubbub/tags/1.4/screenshot-1.png | Bin 40565 -> 0 bytes 22 files changed, 69 insertions(+), 1792 deletions(-) delete mode 100644 wp-content/plugins/pubsubhubbub/tags/1.0/publisher.php delete mode 100644 wp-content/plugins/pubsubhubbub/tags/1.0/pubsubhubbub.php delete mode 100644 wp-content/plugins/pubsubhubbub/tags/1.0/readme.txt delete mode 100644 wp-content/plugins/pubsubhubbub/tags/1.0/screenshot-1.png delete mode 100644 wp-content/plugins/pubsubhubbub/tags/1.1/publisher.php delete mode 100644 wp-content/plugins/pubsubhubbub/tags/1.1/pubsubhubbub.php delete mode 100644 wp-content/plugins/pubsubhubbub/tags/1.1/readme.txt delete mode 100644 wp-content/plugins/pubsubhubbub/tags/1.1/screenshot-1.png delete mode 100644 wp-content/plugins/pubsubhubbub/tags/1.2/publisher.php delete mode 100644 wp-content/plugins/pubsubhubbub/tags/1.2/pubsubhubbub.php delete mode 100644 wp-content/plugins/pubsubhubbub/tags/1.2/readme.txt delete mode 100644 wp-content/plugins/pubsubhubbub/tags/1.2/screenshot-1.png delete mode 100644 wp-content/plugins/pubsubhubbub/tags/1.3/publisher.php delete mode 100644 wp-content/plugins/pubsubhubbub/tags/1.3/pubsubhubbub.php delete mode 100644 wp-content/plugins/pubsubhubbub/tags/1.3/readme.txt delete mode 100644 wp-content/plugins/pubsubhubbub/tags/1.3/screenshot-1.png delete mode 100644 wp-content/plugins/pubsubhubbub/tags/1.4/publisher.php delete mode 100644 wp-content/plugins/pubsubhubbub/tags/1.4/pubsubhubbub.php delete mode 100644 wp-content/plugins/pubsubhubbub/tags/1.4/readme.txt delete mode 100644 wp-content/plugins/pubsubhubbub/tags/1.4/screenshot-1.png diff --git a/wp-content/plugins/pubsubhubbub/pubsubhubbub.php b/wp-content/plugins/pubsubhubbub/pubsubhubbub.php index 6928a7a8c..4029b443b 100644 --- a/wp-content/plugins/pubsubhubbub/pubsubhubbub.php +++ b/wp-content/plugins/pubsubhubbub/pubsubhubbub.php @@ -3,7 +3,7 @@ Plugin Name: PubSubHubbub Plugin URI: http://code.google.com/p/pubsubhubbub/ Description: A better way to tell the world when your blog is updated. -Version: 1.3 +Version: 1.5 Author: Josh Fraser Author Email: josh@eventvue.com Author URI: http://www.joshfraser.com @@ -11,60 +11,70 @@ Author URI: http://www.joshfraser.com include("publisher.php"); +/** + * beeing backwards compatible + * @deprecated + */ +function publish_to_hub($post_id, $feed_urls = null) { + pshb_publish_to_hub($post_id, $feed_urls); +} + // function that is called whenever a new post is published // the ability for other plugins to hook into the PuSH code was added by Stephen Paul Weber (http://singpolyma.net) -function publish_to_hub($post_id,$feed_urls=NULL) { - +function pshb_publish_to_hub($post_id, $feed_urls = null) { + // we want to notify the hub for every feed - if(!$feed_urls) { + if (!$feed_urls) { $feed_urls = array(); $feed_urls[] = get_bloginfo('atom_url'); $feed_urls[] = get_bloginfo('rss_url'); $feed_urls[] = get_bloginfo('rdf_url'); $feed_urls[] = get_bloginfo('rss2_url'); + // customize default feeds + $feed_urls = apply_filters('pshb_feed_urls', $feed_urls); } // remove dups (ie. they all point to feedburner) $feed_urls = array_unique($feed_urls); // get the list of hubs - $hub_urls = get_pubsub_endpoints(); + $hub_urls = pshb_get_pubsub_endpoints(); // loop through each hub foreach ($hub_urls as $hub_url) { $p = new Publisher($hub_url); // publish the update to each hub - if (!$p->publish_update($feed_urls, "http_post_wp")) { + if (!$p->publish_update($feed_urls)) { // TODO: add better error handling here } } return $post_id; } -function add_atom_link_tag() { - $hub_urls = get_pubsub_endpoints(); +function pshb_add_atom_link_tag() { + $hub_urls = pshb_get_pubsub_endpoints(); foreach ($hub_urls as $hub_url) { echo '<link rel="hub" href="'.$hub_url.'" />'; } } -function add_rss_link_tag() { - $hub_urls = get_pubsub_endpoints(); +function pshb_add_rss_link_tag() { + $hub_urls = pshb_get_pubsub_endpoints(); foreach ($hub_urls as $hub_url) { echo '<atom:link rel="hub" href="'.$hub_url.'"/>'; } } -function add_rdf_ns_link() { +function pshb_add_rdf_ns_link() { echo 'xmlns:atom="http://www.w3.org/2005/Atom"'; } // hack to add the atom definition to the RSS feed // start capturing the feed output. this is run at priority 9 (before output) -function start_rss_link_tag() { +function pshb_start_rss_link_tag() { ob_start(); } // this is run at priority 11 (after output) // add in the xmlns atom definition link -function end_rss_link_tag() { +function pshb_end_rss_link_tag() { $feed = ob_get_clean(); $pattern = '/<rss version="(.+)">/i'; $replacement = '<rss version="$1" xmlns:atom="http://www.w3.org/2005/Atom">'; @@ -73,13 +83,13 @@ function end_rss_link_tag() { } // add a link to our settings page in the WP menu -function add_plugin_menu() { - add_options_page('PubSubHubbub Settings', 'PubSubHubbub', 8, __FILE__, 'add_settings_page'); +function pshb_add_plugin_menu() { + add_options_page('PubSubHubbub Settings', 'PubSubHubbub', 8, __FILE__, 'pshb_add_settings_page'); } // get the endpoints from the wordpress options table // valid parameters are "publish" or "subscribe" -function get_pubsub_endpoints() { +function pshb_get_pubsub_endpoints() { $endpoints = get_option('pubsub_endpoints'); $hub_urls = explode("\n",$endpoints); @@ -102,7 +112,7 @@ function get_pubsub_endpoints() { } // write the content for our settings page that allows you to define your endpoints -function add_settings_page() { ?> +function pshb_add_settings_page() { ?> <div class="wrap"> <h2>Define custom hubs</h2> @@ -116,7 +126,7 @@ function add_settings_page() { ?> <?php // load the existing pubsub endpoint list from the wordpress options table - $pubsub_endpoints = trim(implode("\n",get_pubsub_endpoints()),"\n"); + $pubsub_endpoints = trim(implode("\n",pshb_get_pubsub_endpoints()),"\n"); ?> @@ -153,38 +163,8 @@ function add_settings_page() { ?> <?php } - -// helper function to use the WP-friendly snoopy library -if (!function_exists('get_snoopy')) { - function get_snoopy() { - include_once(ABSPATH.'/wp-includes/class-snoopy.php'); - return new Snoopy; - } -} - -// over-ride the default curl http function to post to the hub endpoints -function http_post_wp($url, $post_vars) { - - // turn the query string into an array for snoopy - parse_str($post_vars); - $post_vars = array(); - $post_vars['hub.mode'] = $hub_mode; // PHP converts the periods to underscores - $post_vars['hub.url'] = $hub_url; - - // more universal than curl - $snoopy = get_snoopy(); - $snoopy->agent = "(PubSubHubbub-Publisher-WP/1.0)"; - $snoopy->submit($url,$post_vars); - $response = $snoopy->results; - // TODO: store the last_response. requires a litle refactoring work. - $response_code = $snoopy->response_code; - if ($response_code == 204) - return true; - return false; -} - // add a settings link next to deactive / edit -function add_settings_link( $links, $file ) { +function pshb_add_settings_link( $links, $file ) { if( $file == 'pubsubhubbub/pubsubhubbub.php' && function_exists( "admin_url" ) ) { $settings_link = '<a href="' . admin_url( 'options-general.php?page=pubsubhubbub/pubsubhubbub' ) . '">' . __('Settings') . '</a>'; array_unshift( $links, $settings_link ); // before other links @@ -193,32 +173,32 @@ function add_settings_link( $links, $file ) { } // attach the handler that gets called every time you publish a post -add_action('publish_post', 'publish_to_hub'); +add_action('publish_post', 'pshb_publish_to_hub'); // add the link to our settings page in the WP menu structure -add_action('admin_menu', 'add_plugin_menu'); +add_action('admin_menu', 'pshb_add_plugin_menu'); // keep WPMU happy -add_action('admin_init', 'register_my_settings'); -function register_my_settings() { +add_action('admin_init', 'pshb_register_my_settings'); +function pshb_register_my_settings() { register_setting('my_settings_group','pubsub_endpoints'); } // add the link tag that points to the hub in the header of our template... // to our atom feed -add_action('atom_head', 'add_atom_link_tag'); +add_action('atom_head', 'pshb_add_atom_link_tag'); // to our RSS 0.92 feed (requires a bit of a hack to include the ATOM namespace definition) -add_action('do_feed_rss', 'start_rss_link_tag', 9); // run before output -add_action('do_feed_rss', 'end_rss_link_tag', 11); // run after output -add_action('rss_head', 'add_rss_link_tag'); +add_action('do_feed_rss', 'pshb_start_rss_link_tag', 9); // run before output +add_action('do_feed_rss', 'pshb_end_rss_link_tag', 11); // run after output +add_action('rss_head', 'pshb_add_rss_link_tag'); // to our RDF / RSS 1 feed -add_action('rdf_ns', 'add_rdf_ns_link'); -add_action('rdf_header', 'add_rss_link_tag'); +add_action('rdf_ns', 'pshb_add_rdf_ns_link'); +add_action('rdf_header', 'pshb_add_rss_link_tag'); // to our RSS 2 feed -add_action('rss2_head', 'add_rss_link_tag'); +add_action('rss2_head', 'pshb_add_rss_link_tag'); // to our main HTML header -- not sure if we want to include this long-term or not. -add_action('wp_head', 'add_atom_link_tag'); +add_action('wp_head', 'pshb_add_atom_link_tag'); -add_filter('plugin_action_links', 'add_settings_link', 10, 2); +add_filter('plugin_action_links', 'pshb_add_settings_link', 10, 2); ?> \ No newline at end of file diff --git a/wp-content/plugins/pubsubhubbub/readme.txt b/wp-content/plugins/pubsubhubbub/readme.txt index 16dc612b6..da1cf965d 100644 --- a/wp-content/plugins/pubsubhubbub/readme.txt +++ b/wp-content/plugins/pubsubhubbub/readme.txt @@ -1,10 +1,10 @@ === Plugin Name === -Contributors: joshfraz +Contributors: joshfraz, pfefferle Donate link: https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=5426516 Tags: pubsubhubbub Requires at least: 2.5 -Tested up to: 2.9.1 -Stable tag: /trunk/ +Tested up to: 3.0.4 +Stable tag: 1.5 A better way to tell the world when your blog is updated. @@ -14,9 +14,7 @@ This [PubSubHubbub](http://code.google.com/p/pubsubhubbub/ "PubSubHubbub") plugi This plugin: -* Supports multi-user installations -* Supports multiple hubs -* Offers hooks for other plugin developers to add PuSH support to their own custom feeds (NEW!) +* Now supports multiple hubs! * Supports all of the feed formats used by WordPress, not just ATOM and RSS2 * Announces which hubs you are using by adding `<link rel="hub" ...>` declarations to your template header and ATOM feed * Adds `<atom:link rel="hub" ...>` to your RSS feeds along with the necessary XMLNS declaration for RSS 0.92/1.0 @@ -38,30 +36,41 @@ Note: PHP 5.0 or better is required. == Frequently Asked Questions == -= Where can I learn more about the PubSubHubbub (PuSH) protocol? = += Where can I learn more about the PubSubHubbub protocol? = You can visit [PubSubHubbb on Google Code](http://code.google.com/p/pubsubhubbub/ "PubSubHubbb on Google Code") = Where can I learn more about the author of this plugin? = -You can learn more about Josh Fraser at [Online Aspect](http://www.onlineaspect.com "Online Aspect") or follow [@joshfraser on twitter](http://www.twitter.com/joshfraser "Josh Fraser on Twitter") +You can learn more about [Josh Fraser](http://www.joshfraser.com "Josh Fraser") at [Online Aspect](http://www.onlineaspect.com "Online Aspect") +and [Matthias Pfefferle](http://pfefferle.org "Matthias Pfefferle") at [Notizblog](http://notizblog.org/ "Notizblog") -= Does this plugin work with MU? = +== Screenshots == -Multi-user support was added in version 1.3 +1. The PubSubHubbub Settings page allows you to define which hubs you want to use -= Does this plugin work with PHP 4.x? = +== Changelog == -Nope. Sorry. For now you must have PHP 5.0 or better. += 1.5 = +* Added filter to modify $feed_urls +* Re-Added Stephen Paul Webers changes -= Blog posts don't show up right away in Google Reader. Is it broken? = += 1.4 = +* Added name spacing to avoid conflicts with other plugins & added patch from pfefferle -Google Reader currently supports PuSH for shared items, but not general subscriptions. Hopefully they will add that functionality soon (I hear they're working on it). In the meantime, you can check that everything is working correctly by publishing a post and then checking the status at http://pubsubhubbub.appspot.com/topic-details?hub.url=URL-OF-YOUR-FEED += 1.3 = +* Added multi-user support and now tested up to 2.9.1 -= Got another question that isn't covered here? = += 1.2 = +* Added support for multiple hubs -Visit [my contact page](http://onlineaspect.com/contact/ "Contact Josh Fraser") to see various ways to get in touch with me. += 1.1 = +* Added RSS support -== Screenshots == += 1.0 = +* First attempt -1. The PubSubHubbub Settings page allows you to define which hubs you want to use +== Upgrade Notice == + += 1.4 = +Upgrade eliminates conflicts with other Wordpress plugins \ No newline at end of file diff --git a/wp-content/plugins/pubsubhubbub/tags/1.0/publisher.php b/wp-content/plugins/pubsubhubbub/tags/1.0/publisher.php deleted file mode 100644 index f176a9b8a..000000000 --- a/wp-content/plugins/pubsubhubbub/tags/1.0/publisher.php +++ /dev/null @@ -1,86 +0,0 @@ -<?php - -// a PHP client library for pubsubhubbub -// as defined at http://code.google.com/p/pubsubhubbub/ -// written by Josh Fraser | joshfraser.com | josh@eventvue.com -// Released under Apache License 2.0 - -class Publisher { - - protected $hub_url; - protected $last_response; - - // create a new Publisher - public function __construct($hub_url) { - - if (!isset($hub_url)) - throw new Exception('Please specify a hub url'); - - if (!preg_match("|^https?://|i",$hub_url)) - throw new Exception('The specified hub url does not appear to be valid: '.$hub_url); - - $this->hub_url = $hub_url; - } - - // accepts either a single url or an array of urls - public function publish_update($topic_urls, $http_function = false) { - if (!isset($topic_urls)) - throw new Exception('Please specify a topic url'); - - // check that we're working with an array - if (!is_array($topic_urls)) { - $topic_urls = array($topic_urls); - } - - // set the mode to publish - $post_string = "hub.mode=publish"; - // loop through each topic url - foreach ($topic_urls as $topic_url) { - - // lightweight check that we're actually working w/ a valid url - if (!preg_match("|^https?://|i",$topic_url)) - throw new Exception('The specified topic url does not appear to be valid: '.$topic_url); - - // append the topic url parameters - $post_string .= "&hub.url=".urlencode($topic_url); - } - - // make the http post request and return true/false - // easy to over-write to use your own http function - if ($http_function) - return $http_function($this->hub_url,$post_string); - else - return $this->http_post($this->hub_url,$post_string); - } - - // returns any error message from the latest request - public function last_response() { - return $this->last_response; - } - - // default http function that uses curl to post to the hub endpoint - private function http_post($url, $post_string) { - - // add any additional curl options here - $options = array(CURLOPT_URL => $url, - CURLOPT_POST => true, - CURLOPT_POSTFIELDS => $post_string, - CURLOPT_USERAGENT => "PubSubHubbub-Publisher-PHP/1.0"); - - $ch = curl_init(); - curl_setopt_array($ch, $options); - - $response = curl_exec($ch); - $this->last_response = $response; - $info = curl_getinfo($ch); - - curl_close($ch); - - // all good - if ($info['http_code'] == 204) - return true; - return false; - } -} - -?> \ No newline at end of file diff --git a/wp-content/plugins/pubsubhubbub/tags/1.0/pubsubhubbub.php b/wp-content/plugins/pubsubhubbub/tags/1.0/pubsubhubbub.php deleted file mode 100644 index 7c2c668bb..000000000 --- a/wp-content/plugins/pubsubhubbub/tags/1.0/pubsubhubbub.php +++ /dev/null @@ -1,179 +0,0 @@ -<?php -/* -Plugin Name: PubSubHubbub -Plugin URI: http://code.google.com/p/pubsubhubbub/ -Description: A better way to tell the world when your blog is updated. Set a custom hub on the <a href="./options-general.php?page=pubsubhubbub/pubsubhubbub">PubSubHubbub settings page</a> -Version: 1.1 -Author: Josh Fraser -Author Email: josh@eventvue.com -Author URI: http://www.joshfraser.com -*/ - -include("publisher.php"); - -// function that is called whenever a new post is published -function publish_to_hub($post_id) { - - // we want to notify the hub for every feed - $feed_urls = array(); - $feed_urls[] = get_bloginfo('atom_url'); - $feed_urls[] = get_bloginfo('rss_url'); - $feed_urls[] = get_bloginfo('rdf_url'); - $feed_urls[] = get_bloginfo('rss2_url'); - // remove dups (ie. they all point to feedburner) - $feed_urls = array_unique($feed_urls); - // get the address of the publish endpoint on the hub - $hub_url = get_pubsub_endpoint(); - $p = new Publisher($hub_url); - // need better error handling - if (!$p->publish_update($feed_urls, "http_post_wp")) { - print_r($p->last_response()); - } - return $post_id; -} - -function add_atom_link_tag() { - $sub_url = get_pubsub_endpoint(); - echo '<link rel="hub" href="'.$sub_url.'" />'; -} - -function add_rss_link_tag() { - $sub_url = get_pubsub_endpoint(); - echo '<atom:link rel="hub" href="'.$sub_url.'"/>'; -} - -function add_rdf_ns_link() { - echo 'xmlns:atom="http://www.w3.org/2005/Atom"'; -} - -// hack to add the atom definition to the RSS feed -// start capturing the feed output. this is run at priority 9 (before output) -function start_rss_link_tag() { - ob_start(); -} - -// this is run at priority 11 (after output) -// add in the xmlns atom definition link -function end_rss_link_tag() { - $feed = ob_get_clean(); - $pattern = '/<rss version="(.+)">/i'; - $replacement = '<rss version="$1" xmlns:atom="http://www.w3.org/2005/Atom">'; - // change <rss version="X.XX"> to <rss version="X.XX" xmlns:atom="http://www.w3.org/2005/Atom"> - echo preg_replace($pattern, $replacement, $feed); -} - -// add a link to our settings page in the WP menu -function add_plugin_menu() { - add_options_page('PubSubHubbub Settings', 'PubSubHubbub', 8, __FILE__, 'add_settings_page'); -} - -// get the endpoints from the wordpress options table -// valid parameters are "publish" or "subscribe" -function get_pubsub_endpoint() { - $endpoint = get_option('pubsub_endpoint'); - - // if no values have been set, revert to the defaults (pubsubhubbub on app engine) - if (!$endpoint) { - $endpoint = "http://pubsubhubbub.appspot.com"; - } - return $endpoint; -} - -// write the content for our settings page that allows you to define your endpoints -function add_settings_page() { ?> - <div class="wrap"> - <h2>Define a custom endpoint</h2> - - <form method="post" action="options.php"> - <?php wp_nonce_field('update-options'); ?> - - <?php - - // load the existing pubsub endpoint value from the wordpress options table - $pubsub_endpoint = get_pubsub_endpoint(); - - ?> - - <table class="form-table"> - - <tr valign="top"> - <th scope="row">Endpoint URL:</th> - <td><input type="text" name="pubsub_endpoint" value="<?php echo $pubsub_endpoint; ?>" size="50" /></td> - </tr> - - </table> - - <input type="hidden" name="action" value="update" /> - <input type="hidden" name="page_options" value="pubsub_endpoint" /> - - <p class="submit"> - <input type="submit" class="button-primary" value="<?php _e('Save Changes') ?>" /> - </p> - - </form> - - <br /><br /> - Thanks for using PubSubHubbub. Learn more about PubSubHubbub and author of this plugin: - <ul> - <li><a href='http://www.onlineaspect.com'>Subscribe to Online Aspect</a></li> - <li><a href='http://www.twitter.com/joshfraser'>Follow Josh Fraser on twitter</a></li> - <li><a href='http://code.google.com/p/pubsubhubbub/'>Learn more about the PubSubHubbub protocol</a></li> - </ul> - - </div> - -<?php } - - -// helper function to use the WP-friendly snoopy library -if (!function_exists('get_snoopy')) { - function get_snoopy() { - include_once(ABSPATH.'/wp-includes/class-snoopy.php'); - return new Snoopy; - } -} - -// over-ride the default curl http function to post to the hub endpoint -function http_post_wp($url, $post_vars) { - - // turn the query string into an array for snoopy - parse_str($post_vars); - $post_vars = array(); - $post_vars['hub.mode'] = $hub_mode; // PHP converts the periods to underscores - $post_vars['hub.url'] = $hub_url; - - // more universal than curl - $snoopy = get_snoopy(); - $snoopy->agent = "(PubSubHubbub-Publisher-WP/1.0)"; - $snoopy->submit($url,$post_vars); - $response = $snoopy->results; - // TODO: store the last_response. requires a litle refactoring work. - $response_code = $snoopy->response_code; - if ($response_code == 204) - return true; - return false; -} - - -// attach the handler that gets called every time you publish a post -add_action('publish_post', 'publish_to_hub'); -// add the link to our settings page in the WP menu structure -add_action('admin_menu', 'add_plugin_menu'); - -// add the link tag that points to the hub in the header of our template... - -// to our atom feed -add_action('atom_head', 'add_atom_link_tag'); -// to our RSS 0.92 feed (requires a bit of a hack to include the ATOM namespace definition) -add_action('do_feed_rss', 'start_rss_link_tag', 9); // run before output -add_action('do_feed_rss', 'end_rss_link_tag', 11); // run after output -add_action('rss_head', 'add_rss_link_tag'); -// to our RDF / RSS 1 feed -add_action('rdf_ns', 'add_rdf_ns_link'); -add_action('rdf_header', 'add_rss_link_tag'); -// to our RSS 2 feed -add_action('rss2_head', 'add_rss_link_tag'); -// to our main HTML header -- not sure if we want to include this long-term or not. -add_action('wp_head', 'add_atom_link_tag'); - -?> \ No newline at end of file diff --git a/wp-content/plugins/pubsubhubbub/tags/1.0/readme.txt b/wp-content/plugins/pubsubhubbub/tags/1.0/readme.txt deleted file mode 100644 index 767ac25dc..000000000 --- a/wp-content/plugins/pubsubhubbub/tags/1.0/readme.txt +++ /dev/null @@ -1,43 +0,0 @@ -=== Plugin Name === -Contributors: joshfraz -Donate link: https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=5426516 -Tags: pubsubhubbub -Requires at least: 2.5 -Tested up to: 2.7 -Stable tag: /trunk/ - -A better way to tell the world when your blog is updated. - -== Description == - -This plugin that implements [the PubSubHubbub protocol](http://pubsubhubbub.googlecode.com/svn/trunk/pubsubhubbub-core-0.1.html "the PubSubHubbub protocol"). [PubSubHubbub](http://code.google.com/p/pubsubhubbub/ "PubSubHubbub") is a simple, open, server-to-server web-hook-based pubsub (publish/subscribe) protocol as a simple extension to Atom and RSS. - -Parties (servers) speaking the PubSubHubbub protocol can get near-instant notifications (via webhook callbacks) when a topic (feed URL) they're interested in is updated. - -This plugin: - -* Notifies your specified hub each time you publish a new post -* Announces your specified hub by adding `<link rel="hub" ...>` to your template header and ATOM feed -* Adds `<atom:link rel="hub" ...>` to your RSS feeds along with the necessary XMLNS declaration for RSS 0.92/1.0 - -The PubSubHubbub protocol is decentralized and free. No company is at the center of this controlling it. Anybody can run a hub, or anybody can ping (publish) or subscribe using open hubs. If no custom hub is specified, this plugin will use the demonstration hub that is running on Google App Engine. - -== Installation == - -1. Upload the `pubsubhubbub` directory to your `/wp-content/plugins/` directory -2. Activate the plugin through the 'Plugins' menu in WordPress -3. Select a custom hub under your PubSubHubbub Settings (optional) - -== Frequently Asked Questions == - -= Where can I learn more about the PubSubHubbub protocol? = - -You can visit [PubSubHubbb on Google Code](http://code.google.com/p/pubsubhubbub/ "PubSubHubbb on Google Code") - -= Where can I learn more about the author of this plugin? = - -You can learn more about [Josh Fraser](http://www.joshfraser.com "Josh Fraser") at [Online Aspect](http://www.onlineaspect.com "Online Aspect") - -== Screenshots == - -1. The PubSubHubbub Settings page allows you to define custom endpoints for your chosen hub diff --git a/wp-content/plugins/pubsubhubbub/tags/1.0/screenshot-1.png b/wp-content/plugins/pubsubhubbub/tags/1.0/screenshot-1.png deleted file mode 100644 index 91d84af1af8e35d7eabef76e6e6cea1677c4c549..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 14558 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 HB{Ts5L?};^ diff --git a/wp-content/plugins/pubsubhubbub/tags/1.1/publisher.php b/wp-content/plugins/pubsubhubbub/tags/1.1/publisher.php deleted file mode 100644 index f176a9b8a..000000000 --- a/wp-content/plugins/pubsubhubbub/tags/1.1/publisher.php +++ /dev/null @@ -1,86 +0,0 @@ -<?php - -// a PHP client library for pubsubhubbub -// as defined at http://code.google.com/p/pubsubhubbub/ -// written by Josh Fraser | joshfraser.com | josh@eventvue.com -// Released under Apache License 2.0 - -class Publisher { - - protected $hub_url; - protected $last_response; - - // create a new Publisher - public function __construct($hub_url) { - - if (!isset($hub_url)) - throw new Exception('Please specify a hub url'); - - if (!preg_match("|^https?://|i",$hub_url)) - throw new Exception('The specified hub url does not appear to be valid: '.$hub_url); - - $this->hub_url = $hub_url; - } - - // accepts either a single url or an array of urls - public function publish_update($topic_urls, $http_function = false) { - if (!isset($topic_urls)) - throw new Exception('Please specify a topic url'); - - // check that we're working with an array - if (!is_array($topic_urls)) { - $topic_urls = array($topic_urls); - } - - // set the mode to publish - $post_string = "hub.mode=publish"; - // loop through each topic url - foreach ($topic_urls as $topic_url) { - - // lightweight check that we're actually working w/ a valid url - if (!preg_match("|^https?://|i",$topic_url)) - throw new Exception('The specified topic url does not appear to be valid: '.$topic_url); - - // append the topic url parameters - $post_string .= "&hub.url=".urlencode($topic_url); - } - - // make the http post request and return true/false - // easy to over-write to use your own http function - if ($http_function) - return $http_function($this->hub_url,$post_string); - else - return $this->http_post($this->hub_url,$post_string); - } - - // returns any error message from the latest request - public function last_response() { - return $this->last_response; - } - - // default http function that uses curl to post to the hub endpoint - private function http_post($url, $post_string) { - - // add any additional curl options here - $options = array(CURLOPT_URL => $url, - CURLOPT_POST => true, - CURLOPT_POSTFIELDS => $post_string, - CURLOPT_USERAGENT => "PubSubHubbub-Publisher-PHP/1.0"); - - $ch = curl_init(); - curl_setopt_array($ch, $options); - - $response = curl_exec($ch); - $this->last_response = $response; - $info = curl_getinfo($ch); - - curl_close($ch); - - // all good - if ($info['http_code'] == 204) - return true; - return false; - } -} - -?> \ No newline at end of file diff --git a/wp-content/plugins/pubsubhubbub/tags/1.1/pubsubhubbub.php b/wp-content/plugins/pubsubhubbub/tags/1.1/pubsubhubbub.php deleted file mode 100644 index 7c2c668bb..000000000 --- a/wp-content/plugins/pubsubhubbub/tags/1.1/pubsubhubbub.php +++ /dev/null @@ -1,179 +0,0 @@ -<?php -/* -Plugin Name: PubSubHubbub -Plugin URI: http://code.google.com/p/pubsubhubbub/ -Description: A better way to tell the world when your blog is updated. Set a custom hub on the <a href="./options-general.php?page=pubsubhubbub/pubsubhubbub">PubSubHubbub settings page</a> -Version: 1.1 -Author: Josh Fraser -Author Email: josh@eventvue.com -Author URI: http://www.joshfraser.com -*/ - -include("publisher.php"); - -// function that is called whenever a new post is published -function publish_to_hub($post_id) { - - // we want to notify the hub for every feed - $feed_urls = array(); - $feed_urls[] = get_bloginfo('atom_url'); - $feed_urls[] = get_bloginfo('rss_url'); - $feed_urls[] = get_bloginfo('rdf_url'); - $feed_urls[] = get_bloginfo('rss2_url'); - // remove dups (ie. they all point to feedburner) - $feed_urls = array_unique($feed_urls); - // get the address of the publish endpoint on the hub - $hub_url = get_pubsub_endpoint(); - $p = new Publisher($hub_url); - // need better error handling - if (!$p->publish_update($feed_urls, "http_post_wp")) { - print_r($p->last_response()); - } - return $post_id; -} - -function add_atom_link_tag() { - $sub_url = get_pubsub_endpoint(); - echo '<link rel="hub" href="'.$sub_url.'" />'; -} - -function add_rss_link_tag() { - $sub_url = get_pubsub_endpoint(); - echo '<atom:link rel="hub" href="'.$sub_url.'"/>'; -} - -function add_rdf_ns_link() { - echo 'xmlns:atom="http://www.w3.org/2005/Atom"'; -} - -// hack to add the atom definition to the RSS feed -// start capturing the feed output. this is run at priority 9 (before output) -function start_rss_link_tag() { - ob_start(); -} - -// this is run at priority 11 (after output) -// add in the xmlns atom definition link -function end_rss_link_tag() { - $feed = ob_get_clean(); - $pattern = '/<rss version="(.+)">/i'; - $replacement = '<rss version="$1" xmlns:atom="http://www.w3.org/2005/Atom">'; - // change <rss version="X.XX"> to <rss version="X.XX" xmlns:atom="http://www.w3.org/2005/Atom"> - echo preg_replace($pattern, $replacement, $feed); -} - -// add a link to our settings page in the WP menu -function add_plugin_menu() { - add_options_page('PubSubHubbub Settings', 'PubSubHubbub', 8, __FILE__, 'add_settings_page'); -} - -// get the endpoints from the wordpress options table -// valid parameters are "publish" or "subscribe" -function get_pubsub_endpoint() { - $endpoint = get_option('pubsub_endpoint'); - - // if no values have been set, revert to the defaults (pubsubhubbub on app engine) - if (!$endpoint) { - $endpoint = "http://pubsubhubbub.appspot.com"; - } - return $endpoint; -} - -// write the content for our settings page that allows you to define your endpoints -function add_settings_page() { ?> - <div class="wrap"> - <h2>Define a custom endpoint</h2> - - <form method="post" action="options.php"> - <?php wp_nonce_field('update-options'); ?> - - <?php - - // load the existing pubsub endpoint value from the wordpress options table - $pubsub_endpoint = get_pubsub_endpoint(); - - ?> - - <table class="form-table"> - - <tr valign="top"> - <th scope="row">Endpoint URL:</th> - <td><input type="text" name="pubsub_endpoint" value="<?php echo $pubsub_endpoint; ?>" size="50" /></td> - </tr> - - </table> - - <input type="hidden" name="action" value="update" /> - <input type="hidden" name="page_options" value="pubsub_endpoint" /> - - <p class="submit"> - <input type="submit" class="button-primary" value="<?php _e('Save Changes') ?>" /> - </p> - - </form> - - <br /><br /> - Thanks for using PubSubHubbub. Learn more about PubSubHubbub and author of this plugin: - <ul> - <li><a href='http://www.onlineaspect.com'>Subscribe to Online Aspect</a></li> - <li><a href='http://www.twitter.com/joshfraser'>Follow Josh Fraser on twitter</a></li> - <li><a href='http://code.google.com/p/pubsubhubbub/'>Learn more about the PubSubHubbub protocol</a></li> - </ul> - - </div> - -<?php } - - -// helper function to use the WP-friendly snoopy library -if (!function_exists('get_snoopy')) { - function get_snoopy() { - include_once(ABSPATH.'/wp-includes/class-snoopy.php'); - return new Snoopy; - } -} - -// over-ride the default curl http function to post to the hub endpoint -function http_post_wp($url, $post_vars) { - - // turn the query string into an array for snoopy - parse_str($post_vars); - $post_vars = array(); - $post_vars['hub.mode'] = $hub_mode; // PHP converts the periods to underscores - $post_vars['hub.url'] = $hub_url; - - // more universal than curl - $snoopy = get_snoopy(); - $snoopy->agent = "(PubSubHubbub-Publisher-WP/1.0)"; - $snoopy->submit($url,$post_vars); - $response = $snoopy->results; - // TODO: store the last_response. requires a litle refactoring work. - $response_code = $snoopy->response_code; - if ($response_code == 204) - return true; - return false; -} - - -// attach the handler that gets called every time you publish a post -add_action('publish_post', 'publish_to_hub'); -// add the link to our settings page in the WP menu structure -add_action('admin_menu', 'add_plugin_menu'); - -// add the link tag that points to the hub in the header of our template... - -// to our atom feed -add_action('atom_head', 'add_atom_link_tag'); -// to our RSS 0.92 feed (requires a bit of a hack to include the ATOM namespace definition) -add_action('do_feed_rss', 'start_rss_link_tag', 9); // run before output -add_action('do_feed_rss', 'end_rss_link_tag', 11); // run after output -add_action('rss_head', 'add_rss_link_tag'); -// to our RDF / RSS 1 feed -add_action('rdf_ns', 'add_rdf_ns_link'); -add_action('rdf_header', 'add_rss_link_tag'); -// to our RSS 2 feed -add_action('rss2_head', 'add_rss_link_tag'); -// to our main HTML header -- not sure if we want to include this long-term or not. -add_action('wp_head', 'add_atom_link_tag'); - -?> \ No newline at end of file diff --git a/wp-content/plugins/pubsubhubbub/tags/1.1/readme.txt b/wp-content/plugins/pubsubhubbub/tags/1.1/readme.txt deleted file mode 100644 index 767ac25dc..000000000 --- a/wp-content/plugins/pubsubhubbub/tags/1.1/readme.txt +++ /dev/null @@ -1,43 +0,0 @@ -=== Plugin Name === -Contributors: joshfraz -Donate link: https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=5426516 -Tags: pubsubhubbub -Requires at least: 2.5 -Tested up to: 2.7 -Stable tag: /trunk/ - -A better way to tell the world when your blog is updated. - -== Description == - -This plugin that implements [the PubSubHubbub protocol](http://pubsubhubbub.googlecode.com/svn/trunk/pubsubhubbub-core-0.1.html "the PubSubHubbub protocol"). [PubSubHubbub](http://code.google.com/p/pubsubhubbub/ "PubSubHubbub") is a simple, open, server-to-server web-hook-based pubsub (publish/subscribe) protocol as a simple extension to Atom and RSS. - -Parties (servers) speaking the PubSubHubbub protocol can get near-instant notifications (via webhook callbacks) when a topic (feed URL) they're interested in is updated. - -This plugin: - -* Notifies your specified hub each time you publish a new post -* Announces your specified hub by adding `<link rel="hub" ...>` to your template header and ATOM feed -* Adds `<atom:link rel="hub" ...>` to your RSS feeds along with the necessary XMLNS declaration for RSS 0.92/1.0 - -The PubSubHubbub protocol is decentralized and free. No company is at the center of this controlling it. Anybody can run a hub, or anybody can ping (publish) or subscribe using open hubs. If no custom hub is specified, this plugin will use the demonstration hub that is running on Google App Engine. - -== Installation == - -1. Upload the `pubsubhubbub` directory to your `/wp-content/plugins/` directory -2. Activate the plugin through the 'Plugins' menu in WordPress -3. Select a custom hub under your PubSubHubbub Settings (optional) - -== Frequently Asked Questions == - -= Where can I learn more about the PubSubHubbub protocol? = - -You can visit [PubSubHubbb on Google Code](http://code.google.com/p/pubsubhubbub/ "PubSubHubbb on Google Code") - -= Where can I learn more about the author of this plugin? = - -You can learn more about [Josh Fraser](http://www.joshfraser.com "Josh Fraser") at [Online Aspect](http://www.onlineaspect.com "Online Aspect") - -== Screenshots == - -1. The PubSubHubbub Settings page allows you to define custom endpoints for your chosen hub diff --git a/wp-content/plugins/pubsubhubbub/tags/1.1/screenshot-1.png b/wp-content/plugins/pubsubhubbub/tags/1.1/screenshot-1.png deleted file mode 100644 index 91d84af1af8e35d7eabef76e6e6cea1677c4c549..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 14558 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 HB{Ts5L?};^ diff --git a/wp-content/plugins/pubsubhubbub/tags/1.2/publisher.php b/wp-content/plugins/pubsubhubbub/tags/1.2/publisher.php deleted file mode 100644 index f176a9b8a..000000000 --- a/wp-content/plugins/pubsubhubbub/tags/1.2/publisher.php +++ /dev/null @@ -1,86 +0,0 @@ -<?php - -// a PHP client library for pubsubhubbub -// as defined at http://code.google.com/p/pubsubhubbub/ -// written by Josh Fraser | joshfraser.com | josh@eventvue.com -// Released under Apache License 2.0 - -class Publisher { - - protected $hub_url; - protected $last_response; - - // create a new Publisher - public function __construct($hub_url) { - - if (!isset($hub_url)) - throw new Exception('Please specify a hub url'); - - if (!preg_match("|^https?://|i",$hub_url)) - throw new Exception('The specified hub url does not appear to be valid: '.$hub_url); - - $this->hub_url = $hub_url; - } - - // accepts either a single url or an array of urls - public function publish_update($topic_urls, $http_function = false) { - if (!isset($topic_urls)) - throw new Exception('Please specify a topic url'); - - // check that we're working with an array - if (!is_array($topic_urls)) { - $topic_urls = array($topic_urls); - } - - // set the mode to publish - $post_string = "hub.mode=publish"; - // loop through each topic url - foreach ($topic_urls as $topic_url) { - - // lightweight check that we're actually working w/ a valid url - if (!preg_match("|^https?://|i",$topic_url)) - throw new Exception('The specified topic url does not appear to be valid: '.$topic_url); - - // append the topic url parameters - $post_string .= "&hub.url=".urlencode($topic_url); - } - - // make the http post request and return true/false - // easy to over-write to use your own http function - if ($http_function) - return $http_function($this->hub_url,$post_string); - else - return $this->http_post($this->hub_url,$post_string); - } - - // returns any error message from the latest request - public function last_response() { - return $this->last_response; - } - - // default http function that uses curl to post to the hub endpoint - private function http_post($url, $post_string) { - - // add any additional curl options here - $options = array(CURLOPT_URL => $url, - CURLOPT_POST => true, - CURLOPT_POSTFIELDS => $post_string, - CURLOPT_USERAGENT => "PubSubHubbub-Publisher-PHP/1.0"); - - $ch = curl_init(); - curl_setopt_array($ch, $options); - - $response = curl_exec($ch); - $this->last_response = $response; - $info = curl_getinfo($ch); - - curl_close($ch); - - // all good - if ($info['http_code'] == 204) - return true; - return false; - } -} - -?> \ No newline at end of file diff --git a/wp-content/plugins/pubsubhubbub/tags/1.2/pubsubhubbub.php b/wp-content/plugins/pubsubhubbub/tags/1.2/pubsubhubbub.php deleted file mode 100644 index cc42c1e49..000000000 --- a/wp-content/plugins/pubsubhubbub/tags/1.2/pubsubhubbub.php +++ /dev/null @@ -1,211 +0,0 @@ -<?php -/* -Plugin Name: PubSubHubbub -Plugin URI: http://code.google.com/p/pubsubhubbub/ -Description: A better way to tell the world when your blog is updated. -Version: 1.2 -Author: Josh Fraser -Author Email: josh@eventvue.com -Author URI: http://www.joshfraser.com -*/ - -include("publisher.php"); - -// function that is called whenever a new post is published -function publish_to_hub($post_id) { - - // we want to notify the hub for every feed - $feed_urls = array(); - $feed_urls[] = get_bloginfo('atom_url'); - $feed_urls[] = get_bloginfo('rss_url'); - $feed_urls[] = get_bloginfo('rdf_url'); - $feed_urls[] = get_bloginfo('rss2_url'); - // remove dups (ie. they all point to feedburner) - $feed_urls = array_unique($feed_urls); - // get the list of hubs - $hub_urls = get_pubsub_endpoints(); - // loop through each hub - foreach ($hub_urls as $hub_url) { - $p = new Publisher($hub_url); - // publish the update to each hub - if (!$p->publish_update($feed_urls, "http_post_wp")) { - // TODO: add better error handling here - } - } - return $post_id; -} - -function add_atom_link_tag() { - $hub_urls = get_pubsub_endpoints(); - foreach ($hub_urls as $hub_url) { - echo '<link rel="hub" href="'.$hub_url.'" />'; - } -} - -function add_rss_link_tag() { - $hub_urls = get_pubsub_endpoints(); - foreach ($hub_urls as $hub_url) { - echo '<atom:link rel="hub" href="'.$hub_url.'"/>'; - } -} - -function add_rdf_ns_link() { - echo 'xmlns:atom="http://www.w3.org/2005/Atom"'; -} - -// hack to add the atom definition to the RSS feed -// start capturing the feed output. this is run at priority 9 (before output) -function start_rss_link_tag() { - ob_start(); -} - -// this is run at priority 11 (after output) -// add in the xmlns atom definition link -function end_rss_link_tag() { - $feed = ob_get_clean(); - $pattern = '/<rss version="(.+)">/i'; - $replacement = '<rss version="$1" xmlns:atom="http://www.w3.org/2005/Atom">'; - // change <rss version="X.XX"> to <rss version="X.XX" xmlns:atom="http://www.w3.org/2005/Atom"> - echo preg_replace($pattern, $replacement, $feed); -} - -// add a link to our settings page in the WP menu -function add_plugin_menu() { - add_options_page('PubSubHubbub Settings', 'PubSubHubbub', 8, __FILE__, 'add_settings_page'); -} - -// get the endpoints from the wordpress options table -// valid parameters are "publish" or "subscribe" -function get_pubsub_endpoints() { - $endpoints = get_option('pubsub_endpoints'); - $hub_urls = explode("\n",$endpoints); - - // if no values have been set, revert to the defaults (pubsubhubbub on app engine & superfeedr) - if (!$endpoints) { - $hub_urls[] = "http://pubsubhubbub.appspot.com"; - $hub_urls[] = "http://superfeedr.com/hubbub"; - } - - // clean out any blank values - foreach ($hub_urls as $key => $value) { - if (is_null($value) || $value=="") { - unset($hub_urls[$key]); - } else { - $hub_urls[$key] = trim($hub_urls[$key]); - } - } - - return $hub_urls; -} - -// write the content for our settings page that allows you to define your endpoints -function add_settings_page() { ?> - <div class="wrap"> - <h2>Define custom hubs</h2> - - <form method="post" action="options.php"> - <?php wp_nonce_field('update-options'); ?> - - <?php - - // load the existing pubsub endpoint list from the wordpress options table - $pubsub_endpoints = trim(implode("\n",get_pubsub_endpoints()),"\n"); - - ?> - - <table class="form-table"> - - <tr valign="top"> - <th scope="row">Hubs (one per line)</th> - <td><textarea name="pubsub_endpoints" style='width:600px;height:100px'><?php echo $pubsub_endpoints; ?></textarea></td> - </tr> - - </table> - - <input type="hidden" name="action" value="update" /> - <input type="hidden" name="page_options" value="pubsub_endpoints" /> - - <p class="submit"> - <input type="submit" class="button-primary" value="<?php _e('Save Changes') ?>" /> - </p> - - </form> - - <br /><br /> - <div style='background-color:#FFFEEB;border:1px solid #CCCCCC;padding:12px'> - <strong>Thanks for using PubSubHubbub!</strong><br /> - Visit these links to learn more about PubSubHubbub and the author of this plugin:<br /> - <ul> - <li><a href='http://www.onlineaspect.com'>Subscribe to Online Aspect</a></li> - <li><a href='http://www.twitter.com/joshfraser'>Follow Josh Fraser on twitter</a></li> - <li><a href='http://code.google.com/p/pubsubhubbub/'>Learn more about the PubSubHubbub protocol</a></li> - </ul> - </div> - - </div> - -<?php } - - -// helper function to use the WP-friendly snoopy library -if (!function_exists('get_snoopy')) { - function get_snoopy() { - include_once(ABSPATH.'/wp-includes/class-snoopy.php'); - return new Snoopy; - } -} - -// over-ride the default curl http function to post to the hub endpoints -function http_post_wp($url, $post_vars) { - - // turn the query string into an array for snoopy - parse_str($post_vars); - $post_vars = array(); - $post_vars['hub.mode'] = $hub_mode; // PHP converts the periods to underscores - $post_vars['hub.url'] = $hub_url; - - // more universal than curl - $snoopy = get_snoopy(); - $snoopy->agent = "(PubSubHubbub-Publisher-WP/1.0)"; - $snoopy->submit($url,$post_vars); - $response = $snoopy->results; - // TODO: store the last_response. requires a litle refactoring work. - $response_code = $snoopy->response_code; - if ($response_code == 204) - return true; - return false; -} - -// add a settings link next to deactive / edit -function add_settings_link( $links, $file ) { - if( $file == 'pubsubhubbub/pubsubhubbub.php' && function_exists( "admin_url" ) ) { - $settings_link = '<a href="' . admin_url( 'options-general.php?page=pubsubhubbub/pubsubhubbub' ) . '">' . __('Settings') . '</a>'; - array_unshift( $links, $settings_link ); // before other links - } - return $links; -} - -// attach the handler that gets called every time you publish a post -add_action('publish_post', 'publish_to_hub'); -// add the link to our settings page in the WP menu structure -add_action('admin_menu', 'add_plugin_menu'); - -// add the link tag that points to the hub in the header of our template... - -// to our atom feed -add_action('atom_head', 'add_atom_link_tag'); -// to our RSS 0.92 feed (requires a bit of a hack to include the ATOM namespace definition) -add_action('do_feed_rss', 'start_rss_link_tag', 9); // run before output -add_action('do_feed_rss', 'end_rss_link_tag', 11); // run after output -add_action('rss_head', 'add_rss_link_tag'); -// to our RDF / RSS 1 feed -add_action('rdf_ns', 'add_rdf_ns_link'); -add_action('rdf_header', 'add_rss_link_tag'); -// to our RSS 2 feed -add_action('rss2_head', 'add_rss_link_tag'); -// to our main HTML header -- not sure if we want to include this long-term or not. -add_action('wp_head', 'add_atom_link_tag'); - -add_filter('plugin_action_links', 'add_settings_link', 10, 2); - -?> \ No newline at end of file diff --git a/wp-content/plugins/pubsubhubbub/tags/1.2/readme.txt b/wp-content/plugins/pubsubhubbub/tags/1.2/readme.txt deleted file mode 100644 index 7b3041de4..000000000 --- a/wp-content/plugins/pubsubhubbub/tags/1.2/readme.txt +++ /dev/null @@ -1,49 +0,0 @@ -=== Plugin Name === -Contributors: joshfraz -Donate link: https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=5426516 -Tags: pubsubhubbub -Requires at least: 2.5 -Tested up to: 2.8.4 -Stable tag: /trunk/ - -A better way to tell the world when your blog is updated. - -== Description == - -This [PubSubHubbub](http://code.google.com/p/pubsubhubbub/ "PubSubHubbub") plugin is a simple way to let people know in real-time when your blog is updated. PubSubHubbub is quickly gaining adoption and is already being used by Google Reader, Google Alerts, FriendFeed and more. - -This plugin: - -* Now supports multiple hubs! -* Supports all of the feed formats used by WordPress, not just ATOM and RSS2 -* Announces which hubs you are using by adding `<link rel="hub" ...>` declarations to your template header and ATOM feed -* Adds `<atom:link rel="hub" ...>` to your RSS feeds along with the necessary XMLNS declaration for RSS 0.92/1.0 - -By default this plugin will ping the following hubs: - -* [Demo hub on Google App Engine](http://pubsubhubbub.appspot.com "Demo hub on Google App Engine") -* [SuperFeedr](http://superfeedr.com/hubbub "SuperFeedr") - -Please contact me if you operate a hub that you would like to be included as a default option. - -== Installation == - -1. Upload the `pubsubhubbub` directory to your `/wp-content/plugins/` directory -2. Activate the plugin through the 'Plugins' menu in WordPress -3. Select custom hubs under your PubSubHubbub Settings (optional) - -Note: PHP 5.0 or better is required. - -== Frequently Asked Questions == - -= Where can I learn more about the PubSubHubbub protocol? = - -You can visit [PubSubHubbb on Google Code](http://code.google.com/p/pubsubhubbub/ "PubSubHubbb on Google Code") - -= Where can I learn more about the author of this plugin? = - -You can learn more about [Josh Fraser](http://www.joshfraser.com "Josh Fraser") at [Online Aspect](http://www.onlineaspect.com "Online Aspect") - -== Screenshots == - -1. The PubSubHubbub Settings page allows you to define which hubs you want to use diff --git a/wp-content/plugins/pubsubhubbub/tags/1.2/screenshot-1.png b/wp-content/plugins/pubsubhubbub/tags/1.2/screenshot-1.png deleted file mode 100644 index 8bbeacd06a2be3ffabe5f18399db89129672d4ac..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 40565 zcmeAS@N?(olHy`uVBq!ia0y~yV7|k^z&M?QiGhLPoYDC+3=I6{na<7up3cq+0Y&*~ znK`Kp3>A!PBPuPX+`nyq{)|D7s&$~xx7xG&q`kk@YDV`Qj9@b^^J;bJ)bR9FZS@ce z6jGeDRB5SBWY8iV&dB@eE8c&vUH|=8?0ft7JJ&t8od4PKd+q$<dFM^f+kR(eIK3b| zBSV0RLBNMg{q{_WgjhbgLyOoMWEU{*Zm<yedMMcGYi^EC!sP!Kru|}cnfq$$!ed$f z+m2N7?ha<!_o8}rk?ZFF?92C?7)!<pFnCC*S^O#6ASYV=K7n1UkBgtTJ@?N_iTCfH zGC!`6@SZIDroce2&2aO5zI98J-pk(cJ36t#e%1SGhK!pYb}m8;FC-;i{}9lqsF<~D zT|YmoJkMjF8+pbS7A$?|nUWRy_*D<@)44L^(3R&*-wQq;Vpx#IeZ27JbZ%4j2Xd?o z2Yc!*Cq8B<ux1We^jZJ=<-FgKjxn|(@v2AP76>e6WH31#9c}OWa7H9U&Yat~qIPfG zx;2o4p-7<Nm_iMUWzlW1dkR-r5BxX1XZcy4Uqy#6^ugW+hI<YlIgC~8yZYQZuJP8+ zkCO;K`r_P~J*%gG)v|63p7q-Ld}y5WzKMGq|JZN%QG3^k>(ELi<s`00?kcyI&RF_3 zbyI5m$;;X=wAi#`@5HaSS+Z%#u_gP$ot=U`y+fm&-JQcj{XOHaIWVbboX9?scqXIC z=%&qv9INbaS8J{$UD$O0)z;GKzU{fYV`taScAlNQJGi}gx%c^l_nhCywBI>)XSvNY zoA5mi=C<?hw$E31x%yH1gM8l--VgjeJYHPqltf#mwA*oItM6ah(|X=*jr+pIH<P{{ z={kDy_-eU}wpmjW%Fg`SahLPB%W{?HDbFYSY4R<96O?;N$A9)*L(k)Lub#ee?uyOw zX-j9VEsFcuRMdCM^=iyl?^%^r(|OlPJe?i4Rb#`>X9ahkwnZ;|?)zTpe)N&sjz<+$ z6PG?LS30%m)Z+KYLXO<&UfHuxK2r3b!kSqj&NUtDOV<}yrTml#U;oc#nd1XZZ{>_X z_e?&l*|~Fz>SEJ3J9B5pSTC!6<XY?g%zM7yQ@vU1?!9Z8*AVWt{#v|!_2f(0*N$Jg z{`Z^D{+rgj%5~rO^R3|3snPiR!uEvqk2H<k8wo$YdpuSDANc0Q?~Of$lRvKQoOS-- zWTnZ?@p?5|=N<CdT5D~ZYk1hu_}kxy{cCP^Se~!E&DuTxTKBsBP1A#><*zUK8y6`Y zRer<ccFxUPO<(Ub?{Q>*(k<X#<5;$MSH`ppr%Ik1n($1YAu{9s#w8n0ZsaeLd-&|h z&Xd~5$}{!5?#Di`EAzhKq7k{nGsV{@?2fZi?540+lX-%|0{nvSc^!<s=zg+(|N2jf zqUxc-rlO^cyjH!DXXDnk->S6wxJ#~T*RS6^3eAQwn;-fvo_x$j_%!pUWiiWMrwKoc z730_CUb|^c|IL<LRX1<mmbP4B>1FxRdh-s2*lB!qmL?B=U3%O3JGMW2-puy?>WO<l zR<O$_H_ci<MgH3S<_=B=mNjg8Y=1faxy|B{<d@}@R^$(~YvXtM;{MI;t4sN@EywM; zSNE^CEc*W9ZA(+K<?+k@Dr(2nT2+Mob}hXz-^ll>f3W@90ym@BCu<zo^3|SOUekG& z)AqSUJfld!GFsfcC|qCnxo+IN-A0rDe|=SP@WfXB>%a3##JAng(aYKqTE2VNj!jDz zZTWNV?xwC!zsu#ruH4UFS5vuveb$SEDPLpGdg+F^|IfId+*dVEeGl&*|4J##*%9+D znmeEM*1f#e`F!=QdE2J%Kk?e5PV&~vOG~fo-a352`1h-`uUDDh-224t_V%K`K7TL2 zkK41~cEX>=4;L!}k~%71T>o&w<N5Mm7rQnt`nX!Sa(=P8e(labTN7SA+kWZgshPXp z``TNj{eIT=e7~-a{-U}<olc$A>t_75+atBLtnBYKx5v*eZ2K2;fa^}fjRit2s!6Oj z+q9NzE?eu&f4Mk0Mq-`uIpfD=a}!^tKTg{IsN?CLQ=zBt9=yE&H}iY;egAClR?q&K z&C<0|{JSb=8;2!#cIO+>Na44_+JgNP4W^|`tI;j>yXD2E`#HkQg-`pss{CSwMHf~| ztUI#&%8vO9dII;YPFlZd$*kqe7Mrb_w?uK>#~@>uZr{~Ww_U44)#Jnc%VXXz+1FAx z-BF^CJ3PO`JjtLc;Z0_fVP!=_!l}etIc|pHhVQp~Y`wB+&gNa2wHMlME<0*=&hKL0 zseii;E4rH<_gkKl9{c>hUMPDrf2X`u@!9g?!u0a@-#k8>*!5W4c_8|H?Yq4_>%Vm> zXb4ZMef_8JhqS=U4qL{ZjrSal9JLRwUGhd?eZbEPYd6S!GWCks;mDGHWcmsB!1Tp? zlS7gvlieR@JvQzW=*v<qP&p%$Z9A`CN$aATr;+4To0?5}PY<o!5OUh&<mHm(>gTsC z5ufLK=EF%7JN0=-CzwwE`>p10>!CTu;>yMR@taOu-l0?1YCT`C{_U%ngVVDYUvJOj z5$n4%M`PB`twB9{4>hOmYt}B-?cXyyHn8%&@6+>I>)55P&NJ2I*Un;>TPUY}rP}Uf zPDb6XTTA}vEZVtm>Ql>=Zx3_#_Z>ZV`|ii}hwjaJ`MPGg`G>j<87k##UVZ*F<^GvN zF;5m<`1I(OOz8i)cihi%ZqZ_Ra)$B2CsBrKIfhF%3<A437{uqe=gwd#2w>-E=3zK1 z%A{c+`RA;Bjf32bgO*P;c5u9F6i?t;<0vzMCxxfdu`qxygtOH7GDp>qzeNm=E^{33 zIDb(#o3O|u`bl7lWD&>FCL^b#i?aegn`|;UXi}c}EOTn+<ILy_XEMS|IIE_fo3w61 z-rRew``8XQTXxM%*^r)*7LurwE|k3Mq|Tw3J>F&Eyxn%*{Hxht%R~$P&im%YSKOyR z$1}z$M)%G>8;N;ccl&l<uk8Mj^W)mLDQ`-jxqrUS#gg=MW9{!tEW9k&TUNCmc1dwr z=IVWv>B!Qf>8f%b$Gl#8ColP(vhL)hCtIG*eCjT`O4MKb;rDFq_hE5?mFs_btaY$; zRSvoAdpaiC+dVEk#NT25^#=Ci$tTiVOvQ{R+AqkgI&kLZo%2e!K5e;b`Z{a&^lgvJ zviW5CHu<HU+o$Kro-dPCHn+gN+N1iGY~NR{FYgYnKU{hCs{Y;mojYVS#9eswlzQ8_ zS_Mxmo${08?1?EW{z+`S@ngq5Wh3{?Ld*K2=U2>7nK5UoQ?-_2>EkaOOU~Tf<I`Gf zd-I|A2FtxW(?73S|KUl!Zbg;t{tp#_A9B|VUAKPs^q;8V)aR?-h3;R=+W+L$Ug;v~ z`zFTQqqe2)dGY$r<+uM|CF<Xeo?h<CY}_n#nBD$p-%`Ihb5!cL{yJuE`{D1GHJ9$p zW_@)2{{BhR47G2rj>&#*UY0xW&t&^44ZIvInh&g2u>VbvOKNdZtUV#y)p&J%Q=Ic> zj<6P`LxO_M8V)w@XOt=@s-4hCF<fJ7eTr#nQ`SPqixQWYT->whuJ3E-YJT1e+g>Pr zv6?F!D{9MLYw}m)n9$_|3yuUF(>NJ%Y{`)?EjQ;>W{A&ZJsfnTD_J((J8^ni{ppDZ zG>=*yn0jjM!M}5#-^z23W4oueZ-#AGb=o(v&%!J%tai!W-&wieiQf@<C2&skqxe;k z+p1=o_cRJ4jiOFPMunzrKQrr1M@)CkN~dK>QzkwC$9$?wt2*Rm==3XgtG{P&$+o*# zwIFs~@S5l)<=*>mERYG$y^-+c(vRkoUmAUl%ZfF*oxS;2N4$=iEp@wYcWV3HzFB_r z&UxxBWsjHt^;Ydk-c!Nnkwp~;q?@mQTqyAFhu@FnPC3S(jmig|RFXVWUufOzm?UW@ zqA4jVdROYS*mKGFvJ};WA8zb??A$rY^Ww=|%{$APf~5V5=P54Te`dm|GZx$D^xEH_ zom{l><D{~<!=i`(ykpv)ZJ(!d|A?6By>FU{TD2i!CE**ARv7I+wK{51+Qw}^FaE6B z&vw>r+Om(&UR_&aHe39Tti1K-U9xe8d-7hW?tS{Y{-50!=JUswDL&$Oy?mG9d(LC$ zug2Rff3Yw0oXjuAvts9?^>y@~>1FEm|M80vj?KUQ<?gk34haVP30&_Q^bEK+I(bbH z7U33kSbKq|iF;wcg5o-*IK|9~Rwpc;BtH>5B{8*CYUxe>*S3zU{i|htoB5pfFE(CS z?X!RWKCZ=WnTZ8y5eYWumz>^mAZD9(i|gE}jMsih{?_gDIme>MRW9Iv;GIGo*ZqyQ z&%fP!mM`>U3%`(vppm#*cZ^uB;BUo)+LaDkUb`aF0{TMlg(wDoTzRQ&Q{O4Wt6`;X zyy<71*3P$b+co`bom9lbQ#}&Bo@#rSy-K^TYcNe@wW74}ZLey(c9rAu=k)Z>^PSug zSG4>q$M-oOioWE1zNirLqw~je_5!vvmShig=fFfyk&p^673YvNp7I>WJx3<8b5<SS z<+nrCPyP5(gSlEB!8Uhiy(=nHGgj=j{e6w~>zs2j=e@b7PyV!XomhPE{(EsRN{Ziv zU3fcRHE^kR>cpp?MUPY;{{D8=yin~cB3F#AxZ3>+$^Z7`U+}(TN0#NEEz>PM&w9&m z+xe0k`_{aC^xE%*WOZ+K@#6B&Ym5KSEnm(2OTMpujr1I;G#SC)OAJ>TFEiFN-<Y2C z`164$bM-gImo5_sF1_!xeB)*P^hNtV*R22j@KbV~SuUS-xMlzB_pt@>KYmUARGj+p zg#L^0OF~(il{3?RUg1hp{cC>t{gu#LSC3r%y0v5L``7zk%bTq+o0q#PM=bwi-qPT& z_g79|@sl~BK+#b#Wew}Og6bdt%encw8nQRNJ;roj((_)}wSx0(@#{4vese4Ee|o&8 z^VqWb4^92k6=SLo{?B7<>G*m)^56`?V}JIgBwI@y-ZvqoVfswoo|%bjToo*D{eO7Y z=`imKvjV=BI~*d5_t#Xc+0PuaJ@@u}755vKhax1lS;|W!`E6Z(Z2eb7iGMfwuQ+jS z+SE{~H{-o>+w8pSYYhIe^)!kr9NsU*G=Wi!ft@EYEot^o>#|#N!vAO9-#CeJ-|cx5 zH>k7LJ@-3gcW~Yj;gp8I!p~U`9G)Yt@Hh3z`xE{r*Z-G2nBCf-@Z;C@WObu&`_BqA z^5=Y<e*FK}1?z-s?wcE#tGFFLDX-cU<f6HlC*YQb>=dg5i*^L;abVjjzqIX=`^!Zp z4=umGo7rysf6boawD<LXDSYpn8I&H(6?ky>pY8YmQKAA5^962iHUFc+sJrH~sJ>QK z$#OCM|C?Kd7d_l1!w}<<!87y4bNRlj?fY#6mTX+6vS*D+SYTY7>>u$~uFQjShrj1D zFfecyctjR6FmMZlFeAgPIT8#E3Jjhujv*C{Z{~8|@wxi{c(vH?eea!4&70CC7QIQ` zn{(xaAg_r|TuVc{HFT#f3DQvF3hWG;G-bkxNv74`-bVhp-~ah_$^Y_qXN*73kmR?U ze7)q^o%cWI72p4U&Sw7Sz4xp0&TLFRe(th2i;DvidhkWC!?redb-JJcBNA#9VG??3 z#gD4gM0kRR{aJR0yWI^O9SG#I^Bl5PMnQ|SEGnn`KQjh=S5ja?LV@dwk*#)M@iS)Z z{B*g7;mTfQ^Ef=Fyp}<A&1D~lMSo1>8A|n$%>y}+ofs!NSP4C4=a=*G@VKDZX~a0= z{oUQ)KRi7A@YQt-o1!NkJ7iAvBOEa2E6bzHhvm-AG=AQ#zb|5IR_HRHnN}q)0#=8u z<+uCs;Lqpt`S<ozR!Q88v}6mZcz<v2|9`*VKR({Sx!Jb*+nVt8_g22qEM8?-`zz=6 zwzC#*uC5NBYgOuZbm6Toc$gj7>8wy1`0sJQy<WtI1FkB1dV2Zy_Ox<~?|ZZ9w8oBY zZ2t{4H8VdvICx@*czn&rPW5>an^HLMzP-6Q{o9+H7CWCz^7fjhBe};slFeTs``ViP zy<e|Q(F}I$lkr^bHC2oC{<X_S)!*JIyY<Ylsr>Zf;^M=PE^HPLMRGu-r$T99-9c9I zH~02dzqzqdMdirx<M!WfBug5lIGF$cdOiOAzTfYp^Y;|K-Fkgn{(ZT|d29}kkN5w7 z*e-vs?)TdnGiKEN{Z;$*YWUUF;s0MQpI<Q5viRAbpP!c>Tt17%Q^C-1qsK%g3FEa| zAu9qVtYw;EDJ!NCpwO_?tP>sz4ICDnOY}|!9y>eB^!K;h`P22|>mIg>$JPCOy2ai3 zbJp!`Z?)I&F)Dv|=YIYFxdG+#Y%1rh3)aoQvEkw3e!EpMJBtoBu^OtCxAsk%JUM^I z!?sIHy~Xw8=49lp@;j%~ENfjh;qk$F`~LlU9g}PEwpl&3!!Tq`gkg*_=kCJ=ygqe^ zq@!Rf%<;<2UunVXYipCu1M=1V_DwjKGB4%iq}DwtA-})9z0J-iBk?MC){&!yVQZsI zxjD8^sZ^h>lzwi`wts6h4L07~nk_!@<(CB~7Vau~>UHn1#;L>aKCH3)a!U}AsW==I zGy?rRZm&5PxX_7py1r0U-rlcaTG!Xd@2~orb^RKH{KUuiYd-U`&AWLfhxfv_Gk1@u zva-p$3D#(7%n1AY@wj}&2irB7#of-ud{gw}?Q-R=cp-A~IbWug%hw+`+G4L+vC4eX zIbLg#dBKV6BR4<We!nhyW75%oe}C_c-<*1STFR0H&o<^;UoI?k{{QDQzx;IF=(b79 zi<wp3)p(u?sd`P2NESL3dAa$F<SY^0s4bq8)$aJ7_*JWxsAgvN?bqw|>g;#F<lX=H z=d}KQfyr^Z%W}8n++4Tk(<wGyDV9DT;o0%KN;I8Q6P7$Rm?Wkf_2k6F<`v)eRDPZ@ zIpFe&K;^0}dkg$uEpqL?q3@Qe?YaB^o6YAXba^GUW?Guxt5Ci!9I*QGGT*~*p3kp; zHdjUL-G(I${;T5;vT{jmYTl81V?*N2O{r_s`3@dx<yMT`o_Duff8UH>N4v!z_wE!p zBk8=a=I06(+5gw$>z{67GwYQ$KR4HU`_~823*K%_KCTeI%xC7>=<Vm`+s}_X;kYQf zdV#Z&!+wi1GYpk)y2sc5HU0j^DB;^8-`QpdO85@QYb@_Qg($xY-U)QPzQ4bIRrT+e z%jYZkOgw6Sw`B5q!$qGT_uDU<$7Eg`<nXwN|HbO{`%c}`d3$TCv-$p?&t_}9{Pp#9 z@o%+H-_P6scd04<ud&K7d|k}%Z*QI7D|u#iTr-i{n{{<njY??k<z>Eic)YY*WT!c| z@hp_%?5=Zlk1M}hs*!K4b?oPh#r=7Ac5Dn?9k%^W5x1Fq-48{p-Ck3*t{n?~pmgB# zd3*cXUnMGbi(MD;$y$j-_TNZN6`Eq}{HXOz={??)Udk^@lkSzt9kQtY^1@NhX3C64 zhlVg6!HTa}!xwL!8I^N$Q)}$v@)9lUL)}cp{3^e#-|soBySbx6jrqpnjQiE^ZA-Sz z{7~T8D3xZhXTr0D7WH#G=Q;4+@sLldU`W5Algh09s$b4FE03Yz?fSnb7FnIBDr?L< zvm$WujO_}i6u<rbe&2Zd17+qk^JaAiXPKgT2743V@3=mh`K(Rj;UiVuE9x(oG6a<6 zXd!Br1D37|Egm~V=j%Cq+i9E;Z?<s8{K{vNi%y*QD`lGXLC~=GhnvNsB@<s}#5-Nj z2v9oJvQfU~gJaY}ecxgcX~(?B!b{Itb>`GQndrV^jzyu;!>kmgX&&ci=kJ@TQ|7WN z_MA-RuPed+Q?){0-AtdK+9^>Z)IQHJnJqB)TKmEN_uYL3=WfJRJY-cdTI_oIQ=gFQ z)JMHFRbOmn1@CP;Yv{1&(?zvK7sQXvu>Ej=d0BSU!qdJ5b5%aI%T;mYp3UeM)ponN z;}HM9$O~+u-p)=}u59QGJ#1a}rXzq&{F038={wB=7Ti~6XtJzsSX{d?MUT-_P4`8e z&4%|OeUip)nL_OgqPOSOeEDu9?qI<c9$PB9nQ50>>;2N}u^A;Pw!xZhQZ|fLhJ20} zcNV8_UdJ77^KReocXO@F{brf03|{VcgN5yB{)$!N@T$3S^K6G#i{?~pySUhF=|R^P z_6swlHYZqK61MC(=UgD&*~uQFA9S_CU}}bARBXvb*CU;C`A&vER6f0DhL?#ptBS?@ zmid)iCTw&!RF;gKcCqc`N_o2)i%Gxs{eGu>S@xs5@DaWDEO#rv*VKMGsorvR;@2Zf z&K?N(A0c#2^@8{N7de*~pS_f*?HjPJ=U`v)=VxaN3|M@wpOI`xSYqs3ki>TQ&M^y< z$3OpkKELw#C9R@YClwc#FL0csBVue|<b2}@&-0V&^Pe;|D>|>@pV~9ctLe+KNze5H zPquR3W8UM_WIb7F-lxNPNhfzrlTkZWc6asz&I@-e-rU-%efs5$T9v7-vB}R4^c?C@ z2@POmTjPtAskaIJ(D%G`UruW2(XjeOb4pS!i?#L^)cpVZ{ijFAm5kscH+K|1Ug7vN za%KA)<%Ki7X3g04Y;H*M7roT<ZJfI<NC=m2FPi3cXjep3q)qWNA2+8%ZJlD9I}g}M zO0DoYbmrLp*K<X<jfz*~+}g5IQa5$dHqVQ0k1tK=FX>fFd*b#|ieF8|Cq?#RW|mJL z+v)9_uPIIz&?-E!<zSBKd$%dKA6QLg=aW&`-NqEo-}7nPx3;ON-nP3BTb~Vla;>Ms zE|rg0=*~MPOPi2gH*TpdJK)k?Sag;#X<PQBTniJI?<XH_{N^a6Ad^>iM^5nZL7$K} zrELigH`j$CT33z5Ee@|H7ENC6*l<nNP*-7+n}%|t;Mpa%1=$M6G?JId8BKAwQA&Kj z|9_p4|C+2PeGVa}zs`I;;HSp0MXB`m&li#<>Ry7XucjPjxwTS7{%%!5qifqiXNQ-q z(H{GMzq7uyDRA}O-R0#~n-4E@U^AOo8kC)5Guvy?(Vl6EGcHQ0`c~Xdxjy5W+Z5}k zrW+HB4$fq*`T2BujJCtg?Rj@^dG?&xb@9}>oxCqrxZj*zZ9X?yS+=$RT&ZF#r}42H zJ~Lxxx<2dp@vG#QIj`d@o)xp(o}QXo{OX?qr-a&_)7k4|XS|zH5n$kbakf)Jz&XcN zI*8WebB@L<t~)QLcz7<?+FH`FwrIbyyyrr<dlLoyW(H_iUeZVo(Y(p6lB;|<*FucB zc)zk@=;Wf@y)&-}PM>9x)&HhoxuLnyrBlzADlG85e&Ug3@w0@J%N(281Pk5&M*m;O zv{K|s#NLeUw<>H*-If<|FT3k?(4erZNUKsyVCJ3R<$kVhMr<1x9$xa+H|3ppg=bP^ zOEFVIiq&NX=|b~kJO?_8te-Z_d-&kW7YXUyw=$fb&)L?uCfDq`SNmL4V#kVEYK}r5 z<`_R{RFSzi_oRKJ<4nJ=dPtrVX$*0({HdZ=dPMX0oQ4StU$~lR-@JE4I@M>!oM<7z z1t$Ww&6>V>YGCiapQ3L6EsMi5o@&Z-p4@!$mER_1pHrqY@7!7Fv2FWHs|KazJ3Si= zIYrMsylJHT{px*{%o!;>yJs!jn10FW5})__GqX&)tAjjKAHH+bK4ts;&;uh*xoyE* z62^7Q#KKNby4rk8EqvY_$!yOe?pw0P>Yi$5Jkl@ouT9x<Y+cj(S;r3qJk4r0<(t=V z(@|Xb+o6=Z0=3)in434HAy)%CofW3eDca;RA@xB4YX+~vp-U>g3j2P4dz+o*BWLz& z#*~ap-WQH6vwYtX(tY*L)0ZMyIY~?hxT-{A5;Nm1z0Y-ao{svN_iL$c6ThOzewNvq z0m(vhHGk~uxF38n;Y{z6YX|zoF7}8VTP}M1hJ>Ye#qFJ37B64sEK(HO8M!%)rTJ&a zg6)pw{%5n;8m?@Moz3)GJt(19N_)-Oe?_?m->v+3-umbLb2-AwYhuHtd!m1z^ZWVi zQo!M(yljtc^c;mAbWE7kQh&Yj(5_yWQ!^De^eld98yZkH0nLY^fq6?*Eat4bav{;P z_h2*o=3nfQN-v6nGsTz{1>Q|L<PjS7&&=}vjEQ#>#c~So3TCJ=99cV8^TCqi3q&R! zJ(pm>CAzV@#zk^=9jDoBYvst|3s+{8yB%88RZ$RjYm;Y?`^4E>B!kaqwDU@*xn+Nf zzHl>S)>@u<red16j|iQ*bNf_l6Q{6R1pksS<Fr4*o0m^|mL`|vx^1ILh;LK-%7=4f z)wJivEV!Mw`)t^+b3Qjxv|>4*rp3>B`Q}=uF2e*#?hA8PT0fh`;4NvT&gm$WV0P4Q zlJC1W(^pQ6JTUKT0Z)5~<4wU;NZrBbB8?7<=3L>J7nxkJz=d;tklWIY=Qy<|_RHJL zZ9J;g;<xvlmHM689d^#^g;P|2oK2RUU-v6>i&Xz7!*xFIxDwNr|45rW@tn)e$kN$M zZO*t0Pg9dWR%ySebK9by6$*kMW0kYcHut8TpXd9H!+B}>yjdrsG&+jHBurv=-;4Zw zWJORIi+h;RJJn66rJnPg>AAL|OpW1<PNq#o+I}B~d24t~4A)9*@N8C`J*S&_8F$es z%^6d7Y9=I`E!>vbp}lzx*NzGAd9J=uo7N+<&1Iit+h;xh<Of~Ov%RKkm=~NmZ0Gx` zLvqsRyTOlUxAFA+j+b2MnZ-YeL9yQHhZt)uWAAaBgYCQ1a;F8ZS}><MBoe6^FUxe# z|BK6+k1yn>89gz4*~aSB%aduMTGh8gT~cjLmeZo0fh(p>kMwAnp?#8P%>my9Qx52A z^K3e@gV(H>U1jIv@R&l@)de@&L?#^S$SJYmUcTWG*Gf%}ay15?XS1@`DF)w>+HAvZ zwkG4;WhKs&i+>8VrWgx<PODh+_H4k*xd*?zyL;O_`S!0wcL}yb6ED_%JSyHZ?dcXz zsfQasq-{BoRHE|p&WZREv%<WvuWD|7`!m88eVVaxiGs6hgz&>>nywO`-^kT`YEiIG zW6?HdUwrf>hxD;CA&n9?-q$uXpOK%@zTvmck@oZ}#uE$f@t^v0M91W0b4AWFF6IXh zUEXwWp45LPG~wJ<4nE1)9h3H)-B<tRqI*yK*Md1SwIn`!_@%Kvo10Vdi)#{tzeQ4i zLw;GyOo{U{uG5RfHpc9=^_*eP!j{V4%Y{_E`w4a^?s~cV@RB%%h|1?r?{w|jq_4ec zF547eZKic6>`LSohGoq;)^GPqV^!gU1C3#uqxefseQvn0uOmlAwl?r^w~>Cf8{^Du zxogdz+}dXOMl8BAv35oA662yfc}3ewr)IV)JmX?ux}q}2!u@nuiT&?GYL|>9*mfU2 zu)-v;%-A5vF5~EfNI@anv!@$2)jn(wF!?lViu9s?TMixIn_cU;a<WyD(&c@J%}#IL zQFPx{Tksc0HlMb{%cDE>%M5zNjH?QBQz!W7&X5f>`0YAbfwO^iyIb+)E>3Aq*K>DG z_Aci-#TUei=we!wb5wMH+VI9+i`PD^N^1TK*LfBGd{z%ruFT7Kcl-3~8hiZXoB6BG zGH>T93Td2c(8f^5l;c(UA<%%Mu41K=flNjDT<O3Y+@*?$%H-wbhU&Zh27Q;j^d^OJ zoC;eV#{1kRy1gna`(wxxi5p>=a-O$rSn@<GR?B9sN@L_<%GvbKKUwj|L)K);p0k;E zB1?4<h6Sn#I0oi@YboKornCHvR-?}LL(F!&OJ6^m-6Qw(Zdf@Y<`kHeCe(4b7}Oqp zqhk0eZf{kgdg`|~HzQq^W?x^oX7yXIR6lzQ6Cs4(1sDZ8>>4||i^@8ye|JnTp1$NY z+wm9g*H($Zo4|~M0*xge3Q~(~WZ!LTQ$aXONrCBQyTgKZ_NDU!vs6$VQ6L5y_3Gwd zSLTbzr7jQ7C@2KhrOBxG1|f^;s3`>2iOI*jorM@r>Nqgd(P7b_GZubQOOZt*L1S7v zb~|pFBKe`wxVgdQ=gh)6CSJ&*n`bn*{EVzA*qV*(wsbbe&QHdVEi$K|h#E3>e%k!w zLDqG|_=W?^IUXjVr|HKEFKM_UjlrEu0*QV+cy%4}sLUKm7L`-ydmb+dL<|@;aLhRh z5`EOXI#w7dKrM_pJf_T-Jnp#|IhZZFIX$M#Kgu4yTMa3Y3(^ES?2X%226j0Jux!h_ zE7da92kOQLZ&U)dWL(@_eEeMR-botv=6#<nH&0*cHPtHpTd1`b)R6yzKVGlj|L^yL zOOhTAFSXMjI9{HB;vGGZcdmcDau3moY~YyF2y*y==4Fb=<Cb$`L89v(uiPt$>>Xy1 z!yDOsoyCwvcXPOePEl7^S65S;7t3(Bdh&z`57u2m9W&+dP<XrO&+7I2qIQ+6y!>;C z=VY_IJ1^E0PF44rabb}wcX;XtdHdgQHrN0Asb2B>MfAIyo1Z`G){onq#v3bdUG`>i zzum3<_4O+bSG?c*-6>b8x}IeQi;?J;?WVQY+Ee46pYPmXRj=`f@k{vo^XGROD1P7m z9@e{SOyF1&JEdR3FzMTyo9FD<_+)nE+%!t>T`g1m>FFw-PmlHY|2br$;6KmC@z(sZ z&C2e5Ju;R;Gv!`+1blvcte1Q1)Hk-AG4+4HHnZ`5x+AjA>)g-zb-zwNeS6v8{_fW7 z>8p)q^jnv|J2S)Z@%#P%<$5;SOV|7Tx%&IF^IrRgf3N=Tta`n6`>L?Duku&Fg2%@t zy;HWLWjQ&wWZ5hvSWZ-bef9N(azD!k&-~d%&(GQB-`itib9!0ua=)0MA3vYZzkFM6 zuJ7ZUdn!M-@k*bOn`=?Xlvw-VK;xFT4=(%L@6EidmVSG&d;h)C>#;XCr<aGVs$mnf zI2!zj=T<OpC^!!){1xcvX#4l!F#p;HwYVEQ3Loo6Z@W=D&p7=Yulb#T&1q+!&#$-B z)I51*|L=FZ&(1dA|ENp5>f4)4-Q30_Q$IaDeY^emzhAG{zrD3}_n%LvKl%jB+`k~= z-R<rD{V7*$J{(}SNM|^*s+XN<=904s_qS$;pTAH#->&vv{r|tu=T*O(mAx+W#s)>j z%F6=Ddtxh}PW7E-^7G?yd0*A$gXf>mukU;M<m6=ErSGjDuZ-WnFR*Ue$wjW+dAnXN ztNQxtrh|p@^CsuJyGqyZ`}OL2T=iLt&i?-NE%G%V8rS<@ZRvK{o_9B{_G{?lUT<L) z*`>M`zGf%P@7G*j;K=;^fJObfU9VQ1nQ3gT9ctIiG3S(KA=}$!ZIE0uVI9YuNgDAx zi&Qf&e@i`LxO;o~`+K>!x6S<PQug^ycy+z{SC47a<EmahY?oJ)+f(q+>CCpgyH+VD z1SZ)E><c?<ZCLyLZn>)WG!xU?+w<Sw*=hW0rbWs9eYNrRf4{B_UcTvMNz0yRhpf1M z|9-#U{Fc=3-S7APKFBUV$G+aKYP#RtdA>6P_x}BM`)HS_^8DGI2Osy_=cRG;Tw>W{ zUH0b3o6YB?lATt0Pt#E>We>f+B2YO#f7!8~<4ZowQajwvU;k#~@pt?G*OmRhu+Vu% z?VpdwdF1|{HEFy4>+5UZ+mDWR8%Nd83zgSmY`O`GTVwfWu3Mf4)cyT>{r#TLemjev zF7uy%j?+1Hwps3v6P>40CAmCuUll(+ReHDd`b}$9i`O%HEUW*2yPdDU^NCP+fXsX! z>)x66`LD07T|E8n?s92kwV6KW*Q7hW-?z8eYw^F&&(5CS_vXe%=Eo)$3q|K{%e%YF zp^-_}s>Gt^N5QJPA92Q^dNDgbw2H@hMD@uoN&hRIzo#)e`EYoD?Urzr6?2SIy`G+$ z`uX|!{}-J3XRe>|)vfX1oyzBPLsx}p1}!-uTYl#tE4$WT#+1u%x8FZkexW>P-vTC! zMz*>e)>com`&8$}E@v@4C!QWS*Q(TGsdmJMg#Z8k-el=YJlqyra?$lqOu?iXmwT%A zUGbf5_V-b@{;JT`$EH`kxv}w1LD259w@$5GA8$YXvT_r&8k#dnLw!Pz-gbTMQ_Klx zr|aME*5BuG<M*@K`Oo;LPMnvKdgQ{E%*z}BHw$)L=3KScrBi4bo3T-PM@ib*SySzM zw`N_Hvaj1?>Ne$m#pB);?Os#0X5LUYViIiVJ9sj6dh9Xzoa{F`0&|}Ee_|DnIk2X| z^JxD5zikG;9=6NBXfm*OYTUnU$&*=XC4WDi*553Cb5m-u6=#52pv2yymrJKFdVKS& z{r^A0k2{6cg|4VCI{)r*?!hM3W6Z_^A=R^lwU~Gw%iKAV!p~`)e2k|>Ts&Rjz*T;h zs@vOgXTDJ^w&V&~)cG^R@95Rl;oo0h=YM$O<gul4CVL;2owxm7Fk=qS++Vk^T^0{I zQ}g6RRh4z!AB(R!rfDzgv@fiz{B%;iw)***Bf4om?t=9*mLB9>E3mJ|eczu?-s>VI zC(7P9Kf^HDLecQqZntRdWwx&mram`FyZ?6W(j`2GtfteKco?R~rF^@)?=!QLc*&8k z>moO&&HUMK->~J8^r`;N_cv-BSqm=htF5k+e0FZ`>577i*K4;wx>@RVLog^of5!5U zlbb$0i{=r~nt93o^BH5GZ8O7*HG8~M>i_>W|N3WALD0ve>5tByJiI<^x?Zfsju>re zn+k)ATsdEa7$HptXN7+u4hwPw4qjtcEROybeqw@R^UuZS<R5HGJ-sesBa=6ipNG<; z%YW8Bx;vGpfpO)lFs={cB8e?}%jMKN@>i#>e5k)AGPk+!$BAwYi&tXXr)0LivWk3L zcle&knVH7w#_dl}PZ$1vDC5eCz-9VOi&pSH>JCY2o}ZwmxJ{aA&XM5EB({W_P5K@0 z?f?B?HqLqzq??wmJY_+Cdr6<jjIfzLqD2!fIKMGvR|;O{6S*nH(0#JAvudON=Zgss zxp*eKo%(*STEFUa$SsKtKTlY9daj86J&~zgW%0jCOKsb|mb@{k{?+H^%rs6ns^<CR z#_F$L(jt>{bCW7-S;5CgM_FFR?%i#->AKp=H?87v4jsyFGd+_YufKQoPTiAiziCqP zFQ;>d`NaA-+>$als_Jmg{apP!uBFOKztUFkul*>~Y#*@C@4|(cPf4#r7do+8C2eDi z+xLuTYX7?6Lp?3`S2VNp^T}FGIbm)Z<Na{1CEMg&p${6u*3Wmz8y4j?KUCf?`p2MX zpP^{FaInkg!%k(w`|BL#y#BmU1-D=dt_fQ#^{_1Y@i{ZzFT(9XP_iDowfRk>LN&d| zv-+>cRqJvx|M7fwem}2AwD-S%H$O=G?#Rk#-FTVv+qQe#RKLiHiyxmK^v^_y!P_)^ zHluKlOUTR_w)M+>>-ch4hp*4O+qTr<5D(|;YxXmBkLg-_Ync2nsEJ@J-ezSe)v?!E z;^#cMf8V5%H?K@O+Qs7T``~iw8B?Vxw&IC%zRuhDIbo0G+=^S1qmN$iTB&24IQiDY zoJY~$N}41!RgcYBZN6`9P4*gjwbd&^cVFq*Ulq^4@2=z2pADxc#S5iq2j?lBjagNc zx3zXBU;EnfzO(Wg**SA(L~Q*VH{0m}gV}xGb;~7P^V~gzU$?xp-L4U#-cfXU{mk~; zo%4TY*sg$$3oO?<Wy?8DFShFKt*u9D!`DVV<yo5Sqtw{h_xarY*vVDi2Dg_47cW<1 zx)t|++qs=_ImW>|_f9%tF6hM~)-`8IoYI18m$qM66KVX(nIrXL*XkQA%WHF2DEiJ} zROUYM*-fB$u^gxI9^pgFv!ymo<(Qd%+a&y6(P`Zb3!&FHQ-e6(<h01$d}^{g^stG* zhvnBT11CnRmAooC?U_-0{H>aQVBYp!dkXh$>@2S@4qtBjYW@bja<2)z{`*?KN=_2K zeQNuJRq{c>KmHj_F4<ao^){#FS3U3F6aRkt>g**^C3Vr?h_f^9+KtEprowC1#~<)d z*}C2Dg!1xB_a2}AYG`+h$Lf4=)1h;Gt6*yZ=CjtV@$uVV3JSBk>D$ugMo5c7o68CY zjU63Do3uF97G~@&fB#PC>5-k0X)KApZu;NDH-6xFto-S$X-Ue9-0gR-Eq3R>zdt=j zN-e7M$Z?6I=jHQ_xOT*^3SAu*!)QKz&)>J|hWUDu#qE;j35Et@GGDf+WOcZt@!aWg z-PYV0G+E_TXxgRBGpGOE{rY7>n^&IR6Sa^_J`WFkICHdCC~C(%zBwiqA(It21@hI- zACV9~;gWf?f7vA!lj5^2?n#9+W@rbU|8mlA&X10NX{XZPoV8{weIhl}@0{1EefM5W zv=-ix$!L1A_jK90OsQYDg3te%d{XiHlv7hQlUwqo=Imfgvt#?_TqUvdqQ|$3i`|7M zJlmZRRe4Rg&3)3W-9|Cb4GPXU&G%{W^i`ZGZLje3k;LVqQxX&Ej+ytZy>qBh__E;p zc@8VS%QWk2JU)J%Gdys|`4&$;<FZ}KmhGmqe!MN3D|F_Sq)O(yABr#M2o@bTOJ@?! zT*M#p>GRRMbN)CK#{3ZbEc$Hu$&yv&kfK$PV;aNEzRc>6?oyo(a!$*uDD7L;ww6OG z>&I@_11Cd-GSe11m?^qMWF9m-&gOkBYr(Oqf~sXc0W!8{L#t2Sc+m1&|7XVBfPCvk zZ)E0uJ<sr>W9>R|<CgHa%2u@#O!qc!XRCR_Z{~IS4foeC?_M4;DeOBqE!KC%_Sg-b z;=z3P&h9ISR(!eb+JQco)(}pCLoI7RyE<8(-(qBXC&}YlqvmD<%W`IA#!lN{=WT}5 z-FM8LzKOG`Xp>;U*@?>RlU2|8T<+qOD;J$@^xU8@%#Z)`#XZIBOqMUs&0@IcaaG}W z>ygxDE6*g%OuuyD#^#6#`R{oolGT=;VfpcEMx0Yo(i~xRvs}*4#nzb&_Bl)n_xYBX zz3|wp(0K30@73=8oAgskm2*!vJWub)*Yj04vrGHVic=*W+Wc#5ll~Ya9%~aYmEXCu zsaECjez#sJm3@nAPg-#^OfY-^ZRI>Hi*B)4`EXghag=dFwbzW-63lEo2FY%7i(g2} zt(_4Pd~)W=+BrUNR<;XqW*(cgS1t6|l(TF4XFopc&bN2xopifbv7lan-&}@zmf*k6 zn$2H)6xt55uD<WTUDk8OpQY~8TWS@K+=}G<xbOEn?%mH#EK<I5HchOtynNxCOukcI zkVpBs#Qt+;=2wJxU0(`usxf(O;yN|8!Q`{yY?e1k-Ek%}RnAp~nI`g9r`v@l<Uesy zJSVX78s~A@yT=S>6#V+;$2-kObd7Cmz+8*lR;TyX^%P%GS5Dd2^=Qk?3li1Wq}zQ? z++<x|T-KhcuAFXkI921@t({jR+h!#8seXU(=+ym(4}J+vKRu&l=dm_(@f8Q$8LO)v zCUI!pu@tKIve3?*xqyMWSkAi6TXJ)LRA26*CQu{JWeP+2<{!_bT(-Dd^6N9cU+Qt_ zw)>7ff)~0bgrpjFefhjRq{}8o-Dg$Z9Q(KvF4KctN<Mvh-lDlER{F?|f`!dGB0)=R zW>-`_)^nI{xa#_eNdM~TGUmC?rH@`+to!oyuv+xX6ww9uDvC9WwBEkkFk`{SkKgms z9re6lAG|7%v~FYK1J16hdcPX>o{jG{AHKQuUA%dT_<gT*;i=GWpaMgqg<d`Tjheok zM?#zb&6>x0eAbT@+Basl&2@S*vDQ(<?87VbJI@oYmm2OBC{%B6+;+~d`OCAMMVlr& zFf{mF^t`V=|9Iy6NWKS0F2_v;4RaKz2|c(cQLor(Tv&eYpy7Pam)g%CJiMsa?xJwz z%hU;TPDg-}fr|snC1b{=>z6!VEPUpM(xzWt2C}E!pfb=x^nkzwjq5XERS(E)1*YXQ z8(e;7+A+L}Ls6@8s+13TNTK6ECTOH*7JtL8ehtQHnom6a1>Y*|wS4Yq`7F^qQ(D4% z)`kTYw{ErV6+PakEV1V{!?%U+u2@z)V>ur=4Pw(o1%*I4&Q+gg#&JM<-d!&;DlA_3 z+y8y?>d|F?`=^#h>rQ#pKhfO4D{c0qah7;|jiLW>pXl=WHJ>~eI<;Q9W~Q^YLhZ$o zPT}6w+wWDa&bqql;O?*K=MOhm+<6A-r|(&<F~{;CzZ=xX=S+;9pNb!9WXs=WG0VSq zrn$~XcVlA9)=IV|xAi*C``iEhvdnk(oHm=ipVsYu_h{qWbEh<>JU=^od)C!errFmF z=6!m4+I``1kCKDVZ<hPa6yiMpNfX?xQDAyGv%#gZ%FaqEdI?9#>uYbXhR2)UtF*FO z_;kXd6=e}Bt~H;}n%lHoy%zA})#~*e;h#Tvq^F9U;uh1<2wvtRV%3!)etEh7{)cVS zO1E0)K!<4@tW*>N=kf7(wTYxLv1~qX{~t8EQgv~W>yEl_H`Dk3`}Ml~Ugh$bokboF zLZT~jE-&MiKdGXoIGZVG_OF<oMX}{~OQp^8Oqh2)o0V<%|4;Gr2mAhhi<Z-R$<?(x z<>`fm&Vqj{KRwy`bXv4ew9E4yg^zuH-YvhMdvQ^#X8n(c?Y^_kRQ+Oh7NyD=f%<Ez zs;V11BkYp(A~&gYsxq_lnH)=-6JPf;b#2tvS*F?Fj!Eb5`F1PY{@)MfW_jBx6SL3H z&!^|uJQA7zB!5PjNYwVcx#s!zxJ0$i%(cEAGAZ-0M8%aqOQ*-}DtPD=d~&zs`4&!L zy*(ce873dQQ5DRPHrJ~3#`-2!?pf^2#^(|bw|!g?Y}Gn-Vea3Wk4MF?t_szT+w<eb z#$?Xt*Vo0)zWeg__Vt%_Js-|6&AW3W^5n)He?FbIY<ja`WqP`G$%}+jx3}k~Pk&p= zuT{$^<*lc%qwnRe($^WgtH0+ZUsxBrTTt0;hSB>se&^@ea*OMoc{jN~<uz=UxY0vk zf<`|}=uaPa7Pmf`lY9G()6O`=+W!CZx#vwIyPU&<?YXzV?S8*c`9!YKjKJiYp8kIK z>FeY6?uy@Em+>g`@-oGUi(k^}-|c)Z7arB&T`z6?%ZYuqQPaPR?(#?ZZ(aQ2XUiY^ zIPt_WhTL3M)u}y+udb|ozyJTg;`6rdZ6=f1&$#tUwU)U%EBnXS|1B*FSz+?H=EuYK z-(OxfbG^T@@v&_AoyJwi4zJyQZ&&JRu_bSX{cRlM--xX9DSvx=yZgjo&K7q0nhPQK z%5LW_xuX-gspW2=+Tz(CeP)?(x_DG3=iEE_KXKQgGmKCFKA&HIuk!iaEBpU`yM5l~ z^BHgby<6)3{;K-=>gxLV|L^zzUv}?@qi6kxgX{)Rj9jPd#m=kw<e8?{%+8-?a7_KZ z59ft1Jr}NRP=0fCf}-<<zi(EaG<vk)#>`0%6W%{gN!Z8GYhG0%8@%a*<+Ta}wjW!V z=1M(N^l5o^X6E57?Xo7qD%J+@7Tz8fl~adL2j9CS%eZJ~%Bql6AuBy6t96U(r`51* zGfq7<MbBDwDMfzX5wefhU9F7E4yTD0@~z3TU8W*Yn2UcAYzx8uOA0MH0a%uccW ze?D=)nm^s}^aMrbs)-54lh&2IymW5cywpYKUgRsCN?Ce+O{8#bzoammi5}M^BggMI zH>cm;rjek=P%_;#`&!P;O@-FV)d$xpzV37uW^)rWW_FCc)N;UJV(FW}UEy(+s*={X zx8*9=`AC^d%?&8om~>R&`!!3}h=*Kj&$}|G+gAO0aIiUsMWO4=vY@428%1B<UlF+Y z+1c65!o0pWW=HJKoNAnYuHWw0iln1mU+SKm5KQxu5r1?|<>#7+jfbkf&3#hPu;cre zTiNTMS~2s^J+^J?<_DY?Br4>B)1$*@9`;?b$7`yV{+<s^Nq5=)#isqzfR;;%iURUt z`bA1iFQ+j~3^z7=BFo9?*e9Hv+}Wq{qic(9(2|bTZ%<9tp140FGJUUi*rl#B?1v67 ziTjXsb=B0%H@5ez+BUT$H%+kRQl~(%`Kp^wVm@xjxVY%ry-0-@yYuhcP1(CLCC}kt z%ae&SHg441{87p@Yl2%6(*YmmIcIZcx`=$cSht1skFmX?_|a<t3eRePzui7tsw(AQ z!r})VMa?E^YHZBb{|)8W3aeSl*Z<l0*P}6E&rDOxlNP)&smo`wX5`fLuUx(M_2RAS z8`;;Mm$LSm9AgIe+(RXWKsmihpNi9jKP<n_d3KTh#gu)!pG&J9XAAV()_Hlx4Fknj z)8p%AZYlk;mvhnWm<|SQ^-HD;vtt(i?hM_1$7=Tn-O1&G;^OY#x`USlb*kP}IA<Nq zIc;%I;Q4)<`Qo>4TjtU!^kl^Z@h2*Wc@Eyw_ntAwv-`DCQ|`OS1fDx3ue}65ZCN7p zKP}jRA=dAWVd}j@YQ;Jg<>$)g_`YbeH9dYPay@LQsbylrrSL->!RyXRFr}WJrh5Je z&-4Zjq04n9Q=hf@O%gk?!p%pyV5R!woA(S)x_>b*kC3YV?B^i+_1N2~+k`~@PML0+ zCsH<NhKR@}uN}(5j9$x5eRz0yts$$;pFf|^i=6nN7T+XNaH{-%?e`xaAMac_WhQgd z6umjVHm6N&YJM0<-rkek5Ph#RcQS`x)^5(3o0TjWE7UkO{+Zve5%%;-__uQTyiX+_ zsyCIF6i;~VG;>R-k-uE^8^eYT!P(c>EuAE-y3=>^lybI{>mJ%))n-1oucp#!yVYq1 zmyeTI{kxsN|K^Q7h96im%znxR_gQD!+yD8%ylHpw^K)i9@88%wi#Jx`n&(aRh<9^N zTCgvM2T5y#OJ#(?sgsg!46JQ2YD~VHObe5)F+4oycS-k6-h!VeCaZDF96cG^wrpSO z>1jIU8K+*97TKRTv&~mS;de*3b@q<@Nlyho25--cl}k=Zy88Woy}kG130=Nv+~)dL zZ;PLtIQUCTC2Ml@rM=bVpElp@(s+M&w>dxCB1@@XQ^Vs5%|7ZRpS-(tje&ET<?c=~ z^Ry>Tllz*i(xVRTp4nw!;O6AT8L@-)@@2)TXOujY+z$mEvtN1djXrDB(<Mg&Zmtg3 zFFJM5BZ~X?(cHN!((CWlypEk|zmIKO8-opFDO=Br^hb%WH3iOpW6j_>v7{VS>PZ@Z z-#O{=5hnd}H${9;%z3DBp+&eMI@Z$UTwjP7Wbmr-gHXpq{@e=NQ?ohd=rKia&vSKR zy>I<3BW7}fuf&W6MvQ?@`&alF$wYjf?Xc-=UD;08yGj=V_n!MDoxf*e_Vsml0$;6J z;?u=p=j)y({4spa<c)8)q|^%Kxh=_N+Wx{d+{oNl!a!3=E$4lX!~&n|D?ImD=I(Hx zY+zP(H*6CV=VhMs-n$|@8ZM<?_c^y~;}iAPkL|PGF!Da*tVmuv<ACk0wLCK(r`iW4 z@Ji;bPOXn+*m-C}`gyq?!w<I0et&<@zO`7qz*TiR(+ZU@eo6h>-|yaB30^@u!H;7C z%ZvAJi%X20c$Ezr6aN2W{kCYWQh}OK!M_T{(-oHAnS76(j(n^$`Q^hXRe@OVf6S+s zSe*5_`DCK?Yr$)JuJ7)6^<4XTaZ0AsuGak82U7RfZA|wSjXT%o@z6x0$mT~^{-wqm z?YXs;(>!^V-pKAzI^O9$F*uojCbz<*TN2UC&n0$nUj2D-O77CnDj!XQdpRKO*_Q4G zrKb;-H0_tqcUUp8=)B<UkQ^hQKSxj4Mz=1Vq*4@DA}f|(qy#Qc3;YBFmi+Otza#WC z{g>dCAODpF!~*}#x1I`ZP(L`Ms1R89Oh)_t#8+<q`Fg8FA(09p8&?QU(CC-SDn*@l zy~m<*YVXb!VJuKXz_XK!+#D9!WUaV55$Z~aTPuVoXncRRC<@vahb&_2kYeoov|?eH zJEU0+B_H@YEV?thI}6$k0UPR~kj0{MYH?eXEb?S$M}s+IXVIu*M?-cr8H{EyoTWiW zf0X|#50*s^57zJh*X5-D$_Y_m9r9Lqc4K4m!>=0o(BcO+sGukq@XO0%M+(xyQzZqa zhw2J}a&^l-!CI*hO^SjOH268E_n;P8e?Z-U^C5DmqAE;6PZb|d+K5s-w#;vEsr)hX z)M8Xo7l%bQDltaT3Km)xe-NIa!EYa2DFWd`$i@jA9#h&|ypKT~1SJLPn1r4_OxNm% z@*#c`5Mu27G@;-mY_tVZdLQz4SY-3Z=V>4!a9kW%oInj#Aw5ZGzrF$NK8GKi9#h)q zue3p4W76T^!J=}?`H*TdN*T{#&)E6tgYi^%RME}`m&(z=RT7Y&^!3@^_O^5JTPsfg ztK~d-^7+wYM~<{y`Qu}5SNO=~P36g*Mn}T*r)_p$TXeKI-TLx(kH?680gQqk{47a* zvesf}EXw38u2o)o<jXE}&iZ)Ej(7`ozbPjsCZ6%V%KhZTlk0BMkZ6XI3LH$1ouA%c zd;i9+_GqWVow?a+F`5!}&P!K&i(6bTi}|e$ZZ<#@j2qL+?oX_*%kQ--**B_9*ZHpM z&*gvS^`)o#5<--b6`C}LxcofF>@L0Mvvbj>&d+`->~BBI825Dc_V&)ayE3g&X6E^g zw%6YwC!Cgc2dzba+6?dK+7$fRv*gHuy>mVMtR@!Ns5u{-abw4UX$$jIo$8eoRbShx z$vxN1J}Ps2qo$tsw;wW<PNkxbzjyqYWNGC0zQ&hj_k?VuRMxn8y2FC2;s0)ID}Q|O zh;XOICx=dL_wDPtt#|Fum?slm{=Qo?#44ufr%O@Mp?7PKf6vjLrtTgS^XC5U@AIec zPB_MNwEEiGAGfzL-+#wtvLr)({gETR?8yg1_Z7U$C|~;z8j|4l$+;S)My03Q_x%4W zzq?<6iGRav&vt&Bs|#vAONBmuoMe3D=)J!Wx8MKw)t}+_19R2)H*bA?)%`9vO1t>j zk0VcnC6kif&cuH_wLLq`_THnvKfUMw{I>o<tn0x^t683YPMukCJ2dcxcPykS1tI68 zvM{-xy8f^Di%Za>&W4*$Lc5=3MenYf&;Q&fcJqFxi8j@I@`vZ~OkUDl?XRMGB<<wH zl>sMj@XYMXiKvW=shRdjyh;D%iGz==%~JIu?S9^v`1rQDima{7Y|Y|jhn7AzO5a+* zIk|lIwwiviQuo^ZSwH@SdY(Kf%Jn?W(9KxF=uUr5thadK&Ej;upjl!2Y%iVOxc0Tt z6YWVm>dQZUTrBxn^z4M?3ez~N%jNEGRaLWduGw}c=Tyj!keF?AdJdMWXxj1rVQ!of z*EMZp@@G92)uz+cle17uN`*#;MK%vz&U7AOX(?dfXZ^hNN!j%C^Z(umx7V?c($XtF z^||ENwl%T)gI4~zY5adj(cJ@@_x}q|Pb|7`{q4`@_y07#lZ;bW&e8t%@tkb_-v{lN z3ft$sF0MX0sr7o!-Jcg`yqrDh|L#B|yN@^a`mVPvcyi;y`fvfY<InSFmoMje{3Ibs zxPSkJg%`hudYz5gQuAQ?>VVJtY~zAV&Y$KltIz%QXLgpk_Ei1j7yO^sZF=~l^5jX~ z(@(2^Y}~e+U%lq%>s8aHPp{88b!h%J`H!-k;S9e_b}aGiUG;NQ`rOS$!S`S8U-ISM zf7fT#PBm`-Z*O%)DR%z|dF(8`^uGH-Nm0<LUE2TtpN-#Kd+=87T&XK_EI+(6dj8h; z&VKgC@!Q|M{`Bq4vGe=FS9{(3W~v?V`SUVc-qqncGc_5f-v4&0$Ugs`^Os+pX4hr? zefH#Ch+ul?f2U~f=IN6vH>I5tu+Klb>xjyH#yRD2ud`R>+D$PjfBG!?b!=hcJ)L>B zX?^{+`xEZ9M_v7&a`Ra%d%w+{O>sU&Nyl26&)>ONb9LKZTXlV{FavqEnZ`#d`<`qv za($m0_WEpQ@p`Er-)6iIw><tVmTijM>L=fQF0mo!Oa~UGt|F$(YuY3}-2d2e<lOu7 z)tTomU2^^8U%x4Ot&ruU$&;SdZ-4OTjJnm8b<<|d2w9boXX6vMYhvJ?n#h|y?%(be zJUu$O?rwmAcg|U^rNWaZ-HwemHM9G-iQD_qg>RzM6;)r&nKNU;oEaI~zKy@m*T<PY zx_v+W@3y|8i+66?RGW0_tv?fG^7Z;x`!%;_*oS}fDKrd^53ndc#`9Qw-JK29|JN+l zJbTmm{KP-C4L#FZ+;5v@RePSC>Mf=^`Izto=IG!(FCohUAO)lX(?Vg6Df=b~2|W`v zSUzV@!4v)M33YpG?tWp<e{<=<sh{s_z6Q>}&98pcCvMZX2qz^;<q8KD{ixkvpJlJk zy|XX-=d-yrYhqN)Usuc9*VUZ<r~Fuaz4gQ$T^s&Xs#mzAoytBukD1fc^Q*q5xN)9e z(K)6yTV~XJdC>Vp_(}cduOBu({_$jLlGk^4{$JlRgkt+-l>e%^`p)0tb8fD-c<bWo za@99~pS#Rsxx6PJu76_A-L1<XPSCWK3VDBbS>W$o;U+S6k6m)wM5^o8&$w}5!Jn<c zsGGW3x~3eT?_s5{$9GZsLHtXZkEzMu<s*N;UU)WJU_Ynf$EoM_qjrXDEZqF;@1~^G znwpq}F*k+y-W)u<B>wvI(=+$R?>;8-V@K8TeYwB+VnfzEc;woB%zxglFWZ-%D8DV3 zRd=RoYNT=ctNV{uow2^A^5^Sq)t!DZ)sBojXAHeJ+UyKaeqUGRbJ8U}+iUXVnJ=b1 zTYvZ1@4db2cWq3XxGz^~sl<^Z6@5zzmVNHajlBGKso>(Yy680y^Y&P7y1B7ZjA3e% zw?0zhV-)0=>#)G%Cu^nA-;LUqFK0xC9J%xE=YEf}t~<V!N3ZN!;`Bdly1eB)52vq( zN^j4f{qyv%yT9vW_Wylaoi}r9&EYFc>q~cRy7Tp_)|uF?sn<63GS7-FR8lLu_Nn*9 z`{d*Pcm6;8^DgLlD{L*m^XT}mSG)NqAKCQzz{J<_Gs|=YV}IM9KfLcxZ_TuGTlM#^ zt@Gt6lehZy?@;Ld{8+#B8}ImeU9ky1m8DxabJLnT8?G)t-qqf}+~$MEQMJnOm}xSa z$+r4w*Z&=^RXex)`>w3mSyyL%I(*4)?d!MJvnt+HEPC&;YP$XZm(#Y(`THz-y)a&H zsiIs^&7b#AmmTCXe(<Y&^*?>2N?U<RQGjEM-_KLI|F_Kj;eBY|UCr&)zv@#@3dCE4 zU(>DTm-GJ<FCiVR)jwf((Y?x>#;Fz_e4YQp&z+GJo;0a<<9gAk{T1)twD+mMv7GWL z<~+lCg=(GRr1!6SXD25o#qC^Qds%zcm8!%~ea!AX(f21lIXg}BYF+THW5-fYOwB)} zdsR!s&;Pt6FN61N<SO-&aHGS-B9*jGo#(keCnj!M*7g7T#N^}G-xt^?ba-8U^k8Dh zkuU!aH%|MmrnI*+y^`%C*QVowd*5lyQn%*R&G@+7K6*>?eZ|+e%T=oXU44D+*k*zG zw&n|#oUnbk0(s%LLMW)}Hn~^%;KkR)`+aSyEPj4y45^)~$<|twc6OTP;azioA2NDy zV~yn_<Mg?gpWb4!{1=^Wt26JZ3sRB&Kt^#wmqz=cKc=^L)o*KRf2ktNrIl3M*I>N+ zWR^i;WbvMRYc83la?cO8UN;wcY=uL)@rtYE+}duv`P+0fH5FC+RW((EW7dCu^yqQ% zv)=C0274++HH+r*BRAofJAt;Nvs-_ce``^9@R_pV$>aShvbINp4bBIa%8AR*HY|>L zma|cEv&i|Pq@3NWxu1kwJGF97V-|9&t{`s1qB{$setw_FXgq!0?P{Hg>MxHRJ31$s ze_DEPvDl(ce?N`M)|VF?3)L1mx!TwR$+r$Hesdi%7X7*Mdonvp))HV8Z*=hgQZn-u zYEP!aL50I(ihI+l8swH=hXV(w%g~@2jABR!3uEUekASKED54yV4K9@&8&V)kV`1ek zY${e0EkRGv;AfoXgW8@DVo^Dz>=<f?D#`-tj~$q_65O+a^lutCT$&nODpgjTT8<*x z;^45zh9$xXIsOFTQ*5aHF#%A2jKO;ua<nN4a54!!owz`2KB_1aW9KJ<gp(mCA*|%+ zu*gOz<Y_R9s1s=FnMr3RYA}ult^(6&;DQtHXvzhZ1f&%UkN#T5Zp)du-xszi12U$< zDCoi5s1>@ZV%sO}Qycfax%AogHcHjuz~Z71!ep<1^TGPgOW}Ve2BJ2bTtI^yQyf-H zqm*MG+#MF(k(a!RI-)WKR6KHS*@e8JMS!uMMdj4r;c2Ww)1sQ=eX+H_Z2o?m@$ug; zzJ32hV%J7&eD(9-;rBZpHy)R(w)^4dfALehyx94f#`=baFGc<?S^IN(d@c8%`E|dp zZmvv9dUR@P{kuCme;?@-p2xQBlgP<v`*Vl1*Y~94xcAEyhXwgL$7g0ddKDs%DDo9- z1v>1HI&R6hnE83y{@S@yG>iXnH_QKj_4+-ZtlgvCrdMViZtq`mQ*_tn^7+g8<n5|{ z=bGo<-e!Dd-Q^tnk{c_wW}Bb+{cQ4&A8RtplBE89y}oRA-oDdQj8jiVY{__N{XXaV zip0ANdDqw9=GeG;-L5;S#UCCl6pyP({<lY-PtNMhvOSf>=l>-&oj&%{kl|<GVmk@L zPk-OtwZ30iEq!^({p9m!=h^0;IPHIBRp{ZDM?&L%JU%}`(%^w&cx}VJm}%dV8`Sjo zetFi?Ie*`mOAS_A*KhiUv>VysmrB8^MKv!jIC64wzPbJ6<b3~Ge=2vE>CU=;p`l;W zIL*hDOIlWG|NnhezrV%yN?(6{Wo2$jmC0V7+SCglA9F@-O5qD%{`B<J+AkO1ou2mp z<EPX4ymEi4-bR^Teo*t|M4@q7&DEX3xBF!C6@&Jby^Vh;6}RiNu<+ptNk9CNTG<}o zS^P|Emxinq5|4{$tN;1wX=-|<x%_$i{X6b{kBmQ~dg1hb{rz+Dwf4{a{`c=)`RofD zaz9JIulV(HAv>Rp$yZx>sT;qR>DB++`EFiyRs8)2)27GOownN8TKk)?<js}jH@oF$ zO3k@net+@StnE3MwjAF5{_pxrQu^^5UroH{|MBDP{Q4uG%kTg7s606-HFnpRRk6!O zec5bHpUkiSCRKg;_xk;M?{9o`bW5E(<IoJl$Dow~`ZX#gzCV9Hk2juebKJq<*TOh| z8S65c+5PtO`fLMJHf7v+%`X3Df92<}%Vn3Bt$m~O`2Cfg>KoI~Ec2hAYqs;Aar()a zl|ehVZNF1-kaelTwyLkY?En1`u6Fu#Y}0S%{*M>WO!PVX@$qr__x3yPm6~tOEq{M$ z>Hc8J;-FRU?)~N8tkxH}x9YmYX@=@_o*S*w(Iq)oR{XuOQP|h_!S@i^b#Z&A#jXop zF3O(q{~xno{=V9!ug-4w+_on2!%W@VE8~_G@cE=7%9##<#$eH>EBRjc+h6OcO;0*I zYkKaT9jPxiTvV&6d-CC;w%-0HQx*NqGK=nB@lW@iYjyg^&0VFp+jwXH{!+Uv=jJ8Q z#s`B$tyQ;fx)v3Edi;03y6Udj+hSK1FAqHL-X~Z4x%YXs{iU~yxKCU3YKrTJ9dUWL zIxgm8<Gb>>l8dYvH>-Dl{aJnc+wotvH<lFc&AgoU{e>aJc8S^de)Csstms@cb@i0; zowqip>nB^+sHjS_KlHBr-4{FMZ|}hh<9XlT-R=K-+WFqCt=asCst$g)_nq}cGWVoK z{Ra2{NA3S#d-hB^YI~MZ?ysCP-~QIOzLH^6n$3A&mg(!p;)ATuCr|6Owd*}QO;_{F z9B~b|-hT?g$9lxWS9(l-&c577ah7@h1l#Cq{>y6%f6LyTIVa-zzi;Ox{%rhoK63N3 zxZ0~v+4*Iq{{6E4k|h1_%jKXvX@mdQ*51x|&1`)n=L2_s$l55w@_8}E&-H%%Q0Zl; zW&QTda*vGV=Enx^eN)Q!B6=_ibA>Igewi9luAhDF%wo5_EoM=BDqha7Uw40Rwg10A zKRwhICI$rsIVC-MaZ&!?ju+E!=j}eZ>(%Ao`?S~ZG4a25Cx741cbo3lt&dqb=dMZ7 z6^l!O$M)LKxss*DFK5$Z@b~w7+4}t3f!oi878Vv>yChQd{9NSDBCpR%uH0AG#ZErd zA^2WhRrP+&WnNyXE6?tm->=#K==)Xg>FZX6t?kM*T2O!fwEq4hQ<^LNOL?ww&b)Sp zWyTzVZSmXQ@V}~$-8H8_CU?jGf9GoM?En8@LbzK*b$H|L(AQUY|9r7Ad1ukn7x(vr zjx&p4+b18rHK*vj?e<{*3DQ6Ah<Q%=+suEjV$1!_343<GR(^YX>zkXO^Mvib=jLU9 z5<g*{bcFk3%JKBGhfKRzx$8ECJ6&6Uzu>|B$RmBSic8+u{|%YHDb?FFD`NTK+`HmB z5hdx*%a-kCsJ;1d2iH8`qGu->BhO8~bSHIvKcWde;U32kw<-r!Z!z<WUXvN-&Y836 z&hhW}_4jR$zHe0;{oQV6bkV*4@ytt#o=(vyopwg^=8bc@EiIh8o}ZX^x6R&riiTIi zpA!$2Yk%80w;ekqKYhtA>uA4w)1vm(L?%b>JJc#-mjCa4+|@2oeXpyXmlb{(hOC>i zDSoDL`lG)r|2N({@oh>(_0J;l5A$BF_L$i8WXk@p&mLsX-zWX#Y`1Hdh*93fM<N1` z_K0hTRlKowmVa03f2>E+PR9P|eJ<T)3oFmhx7Y8QWAy#~r*mHp<mFyo_H+09eOdpm zt|*+j)_?1PcL~Wd|Mn$q<^90^;`Ds~^J;E=w}X$yM<X>L9I6xq3IpHmp8TY4gAA9Z zz<fX1-xrTe+{gAW>q1=Yt}W>sr>nE`ZZzvSv@-bkz1r~hudmJR{@wU|t|u$|v5tsN zNJGEGY%iv(B3yIVl+606t*)lB>7?ePpAxSm))X86jrf0EE%>ny_eQgA6U_7HE%SXH zzCP~iRQ0(9Hc#E6H=X(Z{&)S%o7)syOS8>C__^E+Id<&Ww%pr`j`sHc*l}WG&Z6h{ zW~x1_y}L`qo|S9K9eaT@+8*sPk@qw9=Epl$86Q^m&2aeN9<!!Na&rz+{`tkCG;iOd z-QJupZV5k6Jt5$K?W_3a{Rb1Cue+PFaE8F9^?NrjD}G+~WY>gNo4h+u_++CdE9}d< zIxFj{)?_W)#7801;#Evlo!Qd4%V&xdPm@=iI5+I|_57&4S-K0~tqRrN`L@Pxa<-%F z%lB(md%Q2JmO7SjdzwyUPyOn!wNK?P-<WaZsdi9Nltx7Jf!3g<UdN6e)%%%xbIHm1 zzVpp)KiO?P+h?ZL=9H6*_OJglc_z>9$b~gGPtLFLo8-UMTTA)TS>M&q7B%kQYkV(k zUCiH;>c$@oimzS2V#2dSYH_B}4Mnpj%Z#-p42$k~wwL;7-?RPA_2%s6lU?`2*G7LA zKXorgb;G|<$SMgC3EKJ|@mKuV!pYO`>@1EJV|ZEf+_`Y$#yd?XS6y|qOYRVOAKd(F z!sHLPK5UOvOFciYK4?qq>2u~L`xmElCY`stY#y5Gzoha(Lwni#U+p2!{xQcXgq{7n zOwHN$gWa{Y)x5`2PAn*quX_@gJ*Um^#x{{(_V=2j&FX)@Ex&X>dRvZ<@2cGivoE(u z$9ZPezujuMHp)~t#zIx`$j?;)4-d)NvVYnzZ;>mv?e`q}Cl)jR-jO=3q`M|zvSo2v zUftUIyIV~@ZZAJ3-DxiGKg;jfMf?A6l;5*%KNn|nx>5Go$;q#8Y)sx>wxj>cFRQKD z_bSt?Umw}L{=hw(**gC+U+&<yyZPn4mie{)NM}P#;Nv{9px35-YtGG0r}cb275Xl` zJ~44|g<0n_>#{dW=E`>WYG<cSi2dv!!}R3NKZzxK4U?zly_?EYx-$P-pd;7svMJjP zAEdv(SG%+5sY+#YX_QsztAnx2mEHGLyj=Q!_v<U$mG4XKa*O-D_&AgP8vfu1_m7Cq zO8)=-{_V&;lhoOF?)iD!I(b|6^>=r67SDWA6z*Iv&upEd@}~6M969!L5ZC{Zo`Kj> z?V|9Dr7mvMLNC$$ndP@!D!*thIWJfJMP@_J%~M5BPfcn+EcE7jOfjp!tk-<!t1A%s zz=6fD)qx?fPO9jXf2#kvecQg5zW#B0)71KPapAi{I4>nfEdBWAw)<P;^)?O(OhQi^ zf4bDHu4KqMvOAC+QCKQ4y_|6%bH_zv*~=F$Alu^dz(l~}u#4q))}rT0ODt8@mg%_3 zJ?Z{vuu7rV|EP}D?>a4Ip8VS@8hMLuJbWa7>85B!4r7~0mj1$9>~b^ShyA(z-1%po zsVQUG@%YIbuDHMTu`YXK!M%#@nZU(^E>|ie`da6Jrmha`^m!2C`twk$z5c(-mE8*G z*F9foqa*nDY54tJW;gr))Xp+WRa>2UdsYJ1WcB)c>;BfC7G%4u5+Z#~Yh~c(nUzJp z4`L1Gz2E)*V&GzXj;+&8Zn!7jzihDTglQ+!jr?b|=RGY-U!7UM|6kteX}OKxRT=81 zwI(wDm>yU4`Embp_HU1EcF(yhYgf}Ual_THO<ne;jjVI_EB<_a)T&(6X=}MD|Fh(? ztMfd*-rV@FOkLvt@+9F_<KBmRf8TRo8&&@9-+|=h<9<8_QT5H7&$eqcL~lMh|8t1+ zvbWEzLbn@%vMQrsfsjRL;JL+y>^v0{1*VsFIaF@BUu+|t@${7a@*1PV*LHK+=w_U; z7LNEn>z8vo-~XS_t)@5rlt`GoytYD{`Te1lUrMXKzYcM$JGPa#;n!S4VYNDw+=u=9 zd8$iGx~I*Z;j=99eZ-Ybk(+N%)BnHN;b6_@XZn9W9#_pQ*i`?&F@2uww$#^Ux2L&# z1wQ_hcGEZAw^8%>EYsJP4uSU;zr9_)Nh`y|+Skjg>iyn+cK&z&Ke{Vhmu9_wV|C!? zOOx(9`4cyb*QY)|ztvtETE)y!0yQRkrLW)K{9FEWj)(CS%i?FD>tfb<Omwml{`d9z z{Lkig(?sXny^Woh-pQEMF_qC)mpSLt7XJLy2eB4Y_xZiAn|tcS`5oID1LJE$zdoP; z`uoc(8>h#XeOz*K{_@246(_X)U1cp6T$kOxUGm>8<F!$yp3ResH=q3Ym^1hG-P1?x zPVN5x=fOi^wHm3je&#th&NMAQ+AaF+t;vU<nQxW9N2l!O2q^d$!)|a{4crE93|1^y zwP?=rlQGe&k8OFm`K^N8{EwlR)vkXmytZa1zuk@dSM+0lS%>?*zP7t_#-n+*n%7@& z@@~tjeZI^$`u~sQv#Zzd-J5+~&hFFkOTQLA$QR}`-hTI<Y`C!6zxVpuirWp7kD2FQ zd-#iO`ySIrwy&QY=3l-gx7vU1uC>4Ieyv&gB|USt1^2mF34;%=yQKeqYyWcl=ec>O z!`Bo=1w9M2h~51y%`fRy?e1;g_WeG(;#mLuOPfNUTa`xLt$gmh?_6$lu)_TZ6Yu#S z{Jd=Tt`8IZf=^aG=ePf(B9NC?Y|fYvoM|Dv?`_fb!?smC2J)P*FYT%OYu5i=zUE8D zso*&=`kOcB?=jpK`1qS_-tPG+OC*i=B~?`Xd$(J@*KoRvLH30Wxrg1}&Z~H&YBRe^ z>*n<5^QwCv9#jc^z>{zx*f}rrwx~Tb`@R#cMb;9x_Srnq-Q~fVeExU5#O?U~XI@Jz z$^3mYy}0UY)uc`OS+DPeYJ{#j60d$$QBxzqFuL-c&hn+ktE|f3HJNQM*}LxFS?9JM zg+HB<$9g3H|H{7n>}<WY?5BxsJXb@$Rll+P6upLV;;p>zwo$wNR#(4!yE*qZU-bL+ z0<R|Y$ls6iD-4<Qe~#-MGoE|%7Cp0m^mD3=?JwqY^V7`l{QLKNvc;5r)yMOhrq=$p zW7fVjx3_V<_N(bSk#6^-?(@|J&GEFmw*2`G8-LC^4UZ)c)w}(kpO4S5{ZY5|@7&CF z#&@a~JoxF#_M2I~p3}PQ&Bfj4gZ--OpD%x(FlWE(KKtc<^PgGs9b<SN(O}GIac0V^ z*mB|hGi%nLJ-_nf$@8YNtUq`kZa@9c&Z2z@WJR!p0gGSgl*{g)rKJSk7~XuiV*AzA z*RQRQ@2<+)_OH6P;>PO56*}jx$Jg2vJ?XYAN=epkVtd@u(y}Sl`~J<Hvi@Ics=u86 ze*gMO%Z&5B*5z-cEQ{_q+rEEyY3bkW^?P&I)lRPcee-#IU&U)yx%SQ`N0o={JB|N* zHFR#XF--r~^6q=N**sg_xpS>fpNqY*FZcP4a<zY()8B7M^#5q#6P~1D{po{pv)6RJ z!oOcNxqGY2a&3RVyS{w>xvJ_jEpq(#OmlDTo*rN4xjnD8(r)S2@47bMemsb=4AwK< zl6$);BrW;CX0zz+dB09RF^qlx&Y<Rp#5#-Md<%YAvsI5}&F%kH@PFR;zd=0f`nsRT zq|Yl~+duPr^ZNR-Z*$AlQqIgsJagOGDD}*b1I_*Q|Nr{0=c(LO^>x)^x4-(0|2`g{ z|9s^NgZkHJ58mGPev8wzZEw6ME^56eYps)gO=l&O``Xy3wWnSmo-h6X;q3eWH~iTB zUhL*apV?-+3m!J*@A)UwZ&CYdWq1$Ax9j?sejYgJyzK42zwH0-O`A0TLH8}Ia<Kqu z<Mg`N#m`bhl#cF@KA&T{V@=$Xi<{@XYMxi~<lk>A<xTZgma<AMk$Wm8e%oI5_{io< zlYdKD?mgR3c=YFn_wkMAj!#@{w_|JVYDIl}$M_Tam&M;({C_f8^4a}Et^b!EY_U># zd|~_aExo7s)+aR9?3I6MmVC@&9_#Oe?2~<M?@wIn9sZ+E)v`?9|JR#Nb-8(8KCZZ7 z@&5kI=ks2-Pp<nb_hfgzoagJGZ`pn`^V{6}`tJ5J|9X8ryS^*M)+*5-WM)6tJQ)6L z(yFOaW-EM`n`Xsi+4%fSS@u5s_Wha9tPa1G(5R@J*e#;@<B0Iy8&)MR795v<{cy{7 z8+%*!$A5G`{k1IpWupG}_4@v=HphFG?l*2U{(n&J@9Qh;e*R2<oR@q5)AFPHjr5mx zemuE;j&Ak8whzA#Ke=Wp0o?-Fr2gRVaibsKBCf58ocsK0z2R@^Q!QHAvC+-_di;fj zh1~n%drUN=wiLASNY07=nLI}~`r3^fGi)l0c1u;|otj{HxLcoRMc7)dPt#Yd+Nmro zTU`0oTSzD<%y;L8oR_WYpQ|$a=FGCKjtdGZ+E}kIQypb>TzG*`+hOJYlHCuQg2Ll# zf1aAUdaY_u&V}IhDd(niu3dI%b9VOo-SH}ZF{PoUEk@_(q;GOm`?x0ZKB$MPA^y|J zr|80w6t1<=`zOBUxe>CWK=HUz@Uot(tK*BFoCr)0V<`GRD|_9U`S$AzzdC%ko^86e z{-SGY#iSRf?*A|OX)gcz+TLB>)1xipuC5Aw#=t9eWw!nH@T+U~rM-=pD6m$ZaC>WR z;I0zSe_L~_AAeWxf4@I>{i_Oh>7vO=$;rX2^HjZ`rJY@uo)e?A|HUCAZJFr`vrN{t zZ*bUQb73!c`2U+CJK`_z{(M(_Yq56fJJ)?LpY7hkQSfx?)v9khZg0K%)zE)ljKAGa zj+0ut(Pry{mL6(i)%?ufW?S{;bjsR2Up~z~6DM$CUD!VP-(U9i2X|b4xoq~VLuaKX zJaN$4`Ez?}wwC$4Sz+^>jb{J(nzXxEG-&Jk@b^;ZB-io86nUyXPyF=9%WtO9;<Vn= zSuvHF&(6%W=rA-iT=(wBiJNtwY_0FtZoYb1biY>R=cji6|2&%WJal!~6FG+X@PEgi zWuJ7J7-y7v%4PYRZo?0Mv)Jt}zq<DKJx_Vr!=J9tuJ>!2q{W1r?9Q28F>n69=8fN$ z2|RdyC2Cof$=aox4T_(IpLzT9(dV^Kc=rEz)OBv{xlPaWJtnJN7uAoulDQ08h<;!> z^x=cTzjYs?ZEA15xwdxJxfwsN9^U)z>)Uw`9$oh5SLJ+o?c3VjWqWxazQ`6%;jO<h z!BL`Ee`T&y#Fq;X58p9K%i??EA9+Q!{$GuAoZOE$#p??*XLHEcZ(I3g%a%GOaj$vv zCo!JaPHy8lxB4TCsV7He^%sGE5mL<O*PT^6U+z@3B4u-@eV0vO$5C?|-IXbMhkx&W zUn^4`^de+sOx@>aYdfN5@kpCVUG#CXXEV$4-s#X-v*)(>uVYi@^1KZTc6d9}$tOq0 zi>dOg`|345Zth3B#HD6;t#v$}1X~Lrs<&uE>FYA4+ahazEuW)R&{S|FQt<fC&rf6j zUw3=Pc})F%hkEe2xz_5BfByY`m7^r<&(~~ews?*BbvnjfLaJRwCxUXH&hek78GGqm zx<!gl^{e>u-1m0=#pTbs^}q1H>GBphw!r7*XHMqZtCh;{TwGSPv?xuu(uiC9pUe&Z z=)b(3zW=H|KEHhZ-qDnMd*pZ2C9RXTIA4E${gY?9x1~&1y<V?h|8?Fvi-#whAF&_V z(zGqVxIX#w)-P*5{>@^qZ?l$d`{G(=Rx+)Y{qY?y%Ng@8hx9Kyz5M41oB0da>|f4{ zo;&s6pEirPp^z1;9#b2R&)*($`-jw>3vYfEK31E&qTt5`L8X2B*iN|Q{ZcU$xf-;i zpwTRM*6y4+^^cqHr|5Qz=(+rv^o1unnX9FJd2N+sva)^AvFDEky8r3K@;d*D*!(PY zs`hmC=qcQf%mSX=-g<g@@pSGd=iLw7mJm==KN0)-mUis7Z^{gslNSdqcJtcRT6=I> z!p|q3i#aF9N3U*O+wXGl#JkehW>R;zeM|XqNA<7o{*_Gf-w!@HZ~wpO(GkHTk2_7O z`=*KdMXXrv(D<kEx3AsIC%x=%=GM(wG570~lQs`mb+7((WdCYTR*vf8&bFsvb9gP; zZ*9-EEV^P5oq5eK@tUJm@7fZv0wH;E_Y-1<Pu6_bU7qW4tpDxP2M4E=`ZdW<EtW`m zT+qfZ{mtay`<Iu~CrdxR^D0_xYPaXCwdH<-xl1)!Zlv(cczN{LvAtifB|PUj@>1o% zjX!gR&OMv=^g#NobYU&$UrN#HjOYBbAL}gnRs70ioBRF9%v1Z)nJSZv)6YKbn4v8_ z=l{CZ)A#v>D1+w1lmzsc5<TJ*HBw4K)>H(ZvaRIJsy?={?q{kbqnVImM7_ez=l%kP zUM`)UaV2jf8hrguPg^T>{#TOT-Ve`P_M1G53(6~byx#P2VhBr>=i()u%a>jby>)7@ z+^edmQ>Wi6ueYD<`RL}>%bT<JOPQ_te3;*UGS~SB_P^hpUhLjC$@bBf@@W_UKAAiD zN?uc?N5SL>euqQhPipIaKCOA<=~TLnD}Uw{ku=9Uy6)FYzP#LWa}EPX%>B3^RzAZJ zadH10<rD6_V`l#^ZDzjZp-kXuF7+5WMP>_!{cnDMdb+w#-u_(dJo&%X^R*urF8n6D za5bAf%bS<eQ>}I`J->76!c9i9ruBb5sxQvHVxTJIV{`k?;RBNUo=i`5xv)|vWCg=Z zpZ$NgO?r87fur-bzjKQU5AXB2XVcaGn)&Pc^{M(BBACM!uPDxZwr}s8Q!CEATB_P5 z&U$Fk{5sW=w^B=9KfW3sZ}|UqYs{WUr%zmEz8>~@Vn*IVr=OnJKi<jG?%Yvq{$cm~ zx|BSxZQ^2U8uxGfX{*{L9=kQGH}_p6N5QhnTeDA1*mq)?=Zfd*YnlGfk=nk`{r;8N z<@M=IpKI#;+3Y?F?N_Y*WpnoE_8pU_pO}-&JZ0zgJD<(&F!*lq1g{G?AjHwHaa?wL z^`wWsa^0nGbtV*@-KAl^?Zpgh|8-*KW<`06e4Z(3Zd)6D|L3dK`Rw~oX5L(tDlE2S z_x|6>zO(OMTadV$-~La_T92jY=2qXk@TYIx_b)r2&%5oL)(VMZmT7EX>O0<K9c!5P z`OU4DH@BXawc4T<JKL3imdVQlQ6~QOchx`q4f5xG<s0;-SJ!H5#zoFmZrASAhO@sr zv}d1Vbc^z=d8)o1y#-}b$BZV=NuOUi#nS)sGTB)sZylNr8vB3$dPdq$)FRS<_xC@C zgLLm~ytT+xdC{{w#hGnh*SwDV*;+I`w)^p9XZr8Cd%hpY-yc)wD13e0<yq0;Cz&@| zzjn%f{Z};W>Mo%lU)Se<KB4SC(c-m<c7(zG4#D@6TaOw^<>v34Sj}+5s`{Lb*wVz_ ziO<aMF^c8oE}1kXrtf7#qyCnh()6QVPxZ9IkG)Jke(vruJ43~f3+Khooo#b^A>T=h zk8hubxVajA-+KMpj-6*?*BmRpxioYK=aY+d=d1dzg-q(3Y8!3l_i}dLJEx+Z&v!be z9=Fbu{P)XRXQIdf(fcuZMrmv(cAmZE{{7DF>#1+@bN=~tK07O&cYh;y__Jri)6G8{ z{xH6C)8>l4QLeMCeWuWl=T~~#J5w8q&)lEs5L0vGg5#Q^(<VQDv2Fe7czTZN=3;i{ z={s-MUR)H<d^=+`WPyr3li~5crE4xe{2jF|=Vt2kdGDj=Ka&zZ>l*&^vxASJ_cWb( zFP|}*S?(1Ky1TR3zmchO?m~B_Y8|nI^KXRc&Sgu~tS)=|<;^YqMSEQQxy8=B-@+O2 z%y2@>)=y7QC+9{KwnkWQ-&A<C;e(=ep1JFa0}YQKB^5t8A$Mc{^M!?GiU-o(eQWOY zOjH*;eeysnpTQ*W2SKIt{$Aqtv0;Dg^!ClI%{}$YSkC#LvD|s%5NFToGn(st%Cv8I zzJAWtwt3RpH%zAIvfX9G-$fiXzQ-qTmy=(xWgU}9lYG#FIKR}89>w%?Z)#>+e3a0- zrFWp==8=t$(-@wAzj$4)>QC{-Z>Glg9=u;4e10RVh3XEg<K@S{o_=s!Kd;&H@LXQ! zze<<Qu6#B=a9%TBHBDdMS0->x#KZ&7XS|>J;8yqRSKD7+eJyw2pzAVp@~m+J$DchZ z&QrDC?TLJ>ShdJzi6Hb)3I$%4H5&TCYPx}<(|Xs3td!xter}Fs`RQr<)qSPj&dOSr z=#d54YWJc3?cMSSk?T@y1y$=WxdgB<YA)(v73FS{^6oOXot4z(COmn?#o0$@&yF*_ z_a$qRbaIcBsiD+jw%vh_jDjw%6Yib9bo<h~-8_C~w;dvOG`+X8d;Mmnar(JGY5#vb zyPeM#=-?c%ZmzWLQQN{sCXodUtpEC%eyB3`hl<XhSK@1Y@O_T3T94yP?ti`<l7IVm zZkCuBFRWl4+`uIAqKm=!Y3#+v+d#TB92mI*K!Ph8+I)WA*IH|BCHFh90c;{v?v`*u zz&cy+J{O3}1q`ej4vl`C8R{C-&CHgIg_@d}X3uaAOuaj6Z>N-1N#50P_sNsFZ~Z^~ zY_4=n;_9wjZC4g~oo(05DbiV)5FWGb(6c`tNJcSEWs2fBb^YyrgXf2xSC`L`{d?=4 zv-s!GcWk|?p<nOI<Ui*xTX8#Vp=@=`KFg?#J5^T7i<ivZpS);8rMlgtNsrf^@4Nf) z=Edpd$NZ~)_g^nNdfn6{Q{uT#)yaopUEY;Xox}gHTA0or{?>l}>yLN*j{K5+b3PBr z>w7&GtoDz0oK_W_a%;Z+os_hc3pcLZnW$5Ay>yz-*SxH}m!~Yg*VNVA+i`Gvugr~! zj#*23zpwva?08~=Yw(^6`&aEtyjUK%{=Hwt=Whqf%)b|Hvf5ddw)^g_w;SI2wC!#E z_-)3Slg@K*y}h%O?|RCmov{Vl;1CCgBjZ%2Sl&~DGSjb{sfdU4Nn~U%Sl?cM<E%To z-piM-^mygFo_;+(>2%hT)oH)DciYblYBAZoBx;w%mDdwJ=VhGHUR_%nUK5hFapy+I zBby&Cb7SjxW8bmk$LpIpQ@UBIZ>*0u;Ol&)ZsxXjp7EQh@sGpLebHXA;<Wbqqwa}k zKFw-#-)Ad2S#jozryHKFQ|M_fnsvSW`1{WD8@C%omY-k2aDD$@-nrlZ@2JpQZL)U> z*XKL?m1Hjdy;Un-Hur4a#mt$ucb@*d`R^FpuR|ve{q|pO%=6`oT=rbuD4ibO|CXoU z_nq&v6}8*4f9uPpe7}44_iD>y%=q3;bGSY|PgZZg?xr6ze(n?9WMA^@zWw@yTY6^8 zUiUBEaXWfX@pBLH=$rF{4sCn?c7K3&Zk5fI*B4h;Pn2J>VbMFET`6~M9lg!xu3RxS zYNk};+D)?;v~X&0B=fDV>+(Fce#V2BAMV{<{Gj<Pf83e)?eCewZbnM{-(Zm9?z3!9 zXMx<)=Lb>|;ota9_(j&wuKvwmb(Le@|9oVj<o8F`F>%q+sb7zV=GJS31gYw-%8Aa) z$-7x(ReScXW5<d6cZ&CIiR$_%?Z4D2a;D3Elj_ThI^EV@{2<=0pWk`P;Y{tb`<vrt zD0e?w+Ut9=b*i-g(!KTfUwGc@oAm0}BCebAA|i3|vflg5Z@iuSGx^cx(=A@_;**Sx zRZZE${q~oyk$&`hwe0PG@fJrfA3peKWx;&iZgs_9e?ED9`gpoE-rgqf@M7Vl%c>n$ zM1LvI`C7j5*nLs)+kazI0_(gIRqt(9F<p^)@aW;|{Qdt8jbaxbkTv$#UMFOBWJ~$6 zw8Tj}&Kx*;=GzOOEswjNE}i>)Uxh)%<wX<v`PCG8^-HGJ|F<;zye#qD!+n1z>fEo@ zbB|d1MomMLJNb{~KjuC=^Tlqrw&*L0&yGL0zM{rCWkvtxmGyVG6ee~wFWuPG`RCqF zA4I;sa2J%a4fpfElm2_gWPW*_{r@NY=~+vArP9`{U){auYe9JQlM}JIXZ>O|ozkCN zIiEHyZThtxH)p=y&bCkE(hN}p2G8td=URSt??eZeBObcS^7)xbD>ig5KU^zNq7<>e za>wb;Cr)c@3l!@&ZBLF|YjWc3JD;ddr?uQccRP;i`tr!=q}Hp{M3)@9GjZMFn4E&f z!sjy_o!02==YI0l_uo8g^DEblO|OXSX<aBj=+a;L_>Q6ZkzbuVpMJWnrNjRwecQKn z3i0XLDr<#{PjC3<5yU9;Q?2dS453TUFJ=n0`hF<9J@bsUJMW?UGxyhCiN73N=Io!E z=<?I>rK(~a-%`^{3mpF{1$SS3JN<@^wDICl<G&M1*sbg41{eg+V~&Ovt)OCPm;Zv* zPqh!733y^#*Kv3e??ic*n5u_ap`D+Wl$MqXoa1`i5g+)aDfLQDir1>;d&?hmuDqwg z;h58PsORFlGOpRmaqbISofdz%cw<BE8O1)acD<ADOk8*LAL5zPnjmR?%Kf58_QH-+ zXE$2!XUzSoTX*i-iPwwk+~%m86>c=`-SJ_&bj0e{(i2O?j=LD>_UP=Nda9Q9Rk~iv z9p10EKfTka+Bqd$@!s~Rh@aQ>84hu9tbF*{Jt^);>z+TKtVCum5eccXiqzV@aQ~)) z?6vi$xo@B6TCB)&oM}}?)16<6r^Kax`XSQ9hyS7%`~v!tIb>3->*rW&O>KQF=pCu` zD&$J?0{^JMsR8!AXTH0CKIXD~y3RklQ^#*+g*9|9o_ex%&ZnKSySans@w;AKd?)4N zp0zs-)jkJwwEu}}P5tN=c;wd#{rO8CckoFZymci&ahsgwiu>j2LB(F#M>PK2c*<m~ zT<d>)o6f#NC$4|Fc<s!Iy9bkAKk|IF?UvYF%d_kMGe`%Q6l^ndt>mfmba=RX)9gbW zO$NJ6&CKh625gu-HHYOP>%;qxZ=Xt7x9#LVao;D>=;>TH-tpSEq<L!+7Vq4ts<=DE z;|Sjt<K0u@8{0R&v6<cK#raVpAh_>=wESZu)g6(=XA&YAdfV9^?K^X^`R#=Kb@@|l zU;eq~5PoOz%n7=y-<{B1eQ@`)>o2be#V{|J!Lsz>j_bm6^SMi0GffX==qz5u_E@{8 z;fZ;go{8W0;y#ZvtJh>7*uR%^=fk?cqE_c6-#vPo(iv4Oqa2p#_5SVd25m0w;G<4b zt-RKs1i!Z_iTBN1Y~06GJmEeUf8EVuz2`q~9uD}R{HMC0iCybi;Dp6*+IXk7{$-C) ze)0d2$EFWF?swF?@^<hlY+v*3_z9DqX0e46V(+=s@x?3yH3T4$`y#J#UD_$(qEqwk z%e~G>&04U$`;4K{ju{`{Fibx?@uhOyJ>#p#Gvhua7)JITdfKZV9RJ5sZ|{;{@#g%_ zCoQb%OHH171lh?=Zqh1l*`IMRIXYm2;rGePd}3-l*bBcK2b*epWW8Fx-nwJc<OKfR z2Jw*|e^X|Z*SY52xYcp+n;1v&cHNmeYCBsOzLT}CczSI{@^tQUTiIQY)b2lxUZlSN zGke&=O)`QT4!sK~`1Chfcv^m+<o9QGF6&mhUOjQp-uA5f!szFAN&Wfv4U1kbyR7l) z*iq&_S<AXYjVGIH*&{foTRA;Gs~i(|dul_--*-D?Sj|fu7Vg~iVfp9ddbfpS{~WWk zE>>=+`F)}yWaIvS{et;_%H;SLWoBjm{I^lS$N8Si90qZu9AD+&uzlaYw-+_Iti3%v zBt)MqyRhPuveBcCg@KWczgeGJKWJ?Gv@=B|HL$C9+9#=%ofG%{NoEf`qMMr)wxc=t zgrv5~seXN(Wc`X`@@(!wl7(w)*q^j*bT6IyLPKW#s_ZSM`L|gfFE|qQ`Q3yNw-@~a zlCAGQS-<*aRP;nbl0ST6{W0&|hqZPnme<`r?mp?>F5gHA=Z81-SLh#?UHWK)Md6O$ z!8>k;W`r0BRu@6qmSD#(c+F(EQIe67QS126Xo<C(+Ml`ondx~}cE`4M)-6SDLHFn0 zK79GvJFr?%1M)zx&V{QB=3Kn}_4C_<`P@IGeJ=l*vwps2p&F>zgDR61yig?R=3aKv z?ygG1EorwWcT-L$YC;>O3mmp{8ECu@i{nEoL>wBwu}VzYo_|CR$rzCrVT^1~@18n+ z5U!VjRpY`whUQP-dT%r%H)ro^9ayj@y3*2u73u_#F}K7M0`Bb-tOhlOAq_LGfCbU4 z5>v{x_1Tvr68Zv%-%LEGZks3ZBiay*TqUa+nm^?|efj`o6wK6&_yy0KJ}o-6%d}d! zRkF6!#B%3?MSpLWI`=1gvhIGgX?J1*pC=^yfNgB_<B}*Tvfg=CZQtJg>lU88;$b#r zW8=NXsh6LG{o5K56#D<{$0_yaKDl4Mc3D!6Pb|(atbXmgE0?tQ&zl_LZ9mI=+2iQ> zp86-JUAZImVpZPc?RD1wol|DbZQXd`;azKYzYiq=*LR9<U4Oftk^SGl+Qrou=U9fq zeNoWNk)f#3e#Lt`-*tg!->goZyw?|RBXLK2+28y2>*x4s|NGPUEq!;&s`B7sZa%H$ zThwaaHnv>PH@h<ZuV2ym=f|J-O4r;z(YW_fg{3Fl)C=mYTZE@*UobH-U4OSc@%qg- zVsoe6JRCc3{@eVV1?w-k|B;wDqx~GK=vGF(ZTWZXk~Zu;dg#59xX%}kk0opJGj@G_ zth_qym+$A|yu7@fk2fdJ7Hgfcb=i}nXOFTzE!^<xK<gfVe$}O7q35|IKAfAYeDs{O zUrc1Z&e6N~n0ocLr6uj&)yjH*&YtWox1X&jvF2VZp3hnFdHd&$l0wPOdsP?S+ukqL zvi8%dtoXa4@>8R7@^S<|=2+C3PcSpvzt6hPzou_*>&ac!Zmc_QEtvhsLjIra!TyNK zujdO3XD;QNcI@=>-{&MBHvQ|^`T10KY>rRpxo<gbPbN2ee(m*rn5`UkUuJ`<R&29$ z-P{8KtDo~!|M{(v8T|Rof0;Qio@OMcm4KVouNE^;|F)jP{KECyveW<G`^UZY(z4^u zd*$Xn(L8t1!T<a56<>CQKU>hM4-Zub#<yG<%a_?~USegpTjamW)vq(|Pj{cxAFuc4 z*TX_-xw!(f^&Af@&%3ljr#|cQO!Y&1`2QF0T0Z$`@_kpO+1(mHPb_81X_7GCyW>^H zq#R4L;G~oV%k`APE&aT`xfi92oSF0U`<kVR_a4dkEfG1IK7DPx0pIUia&tAeb#p)6 z%6sVH647wZ-pEO_On(c#mw(^aA)|Zw@0{;Cvwxj2nP2)_pG($ko>%E6qt3d_Z_8YT zd!yDn)ODUcGv$g*jOE{Z8}sB{wv+}-xZhD;wkyN=3Pbi~=he&B&Um;xEBejPIYw(* zpP##-Q@Z(U`9{Y{)n5{J>vpUAekr-|rfp%D)+>W&(d8_U{<gOY&)<78|DlNg6+v6k zcg=zV6Q^JGh`&|Iw_oVNqvwyCJww0p9+KJSp1x(vi#HWXMs}ZE5qWJvDdSs~r}oEF z_WjDX`8W5h&QX!=uIXoFUs|0xdhGbkU*`;)L)i8mn)pX(w&|ArSMN+@{ykG#pZB|` z?kXp?szuY8AElL8RP8LdXYu{Sl_VYcT{G;@uHV05>ZjeO3QImtQa$~7_N>{lzh`zw z^TOMaBHilGP9?>+USGPW=wX4`Trc5pTf3v#X$KhCy@mfcOWnS7L}0e^_nxTAFBdOg zJ-RU+(inc7xP8;#MLf&agh@R~D_2|Vq9N<J+oI3HNKB~swEnZH_L9$fqssnlGq`g# z&E4nr)uy(akF;1jEB7RO9c%j~Te8{I_>kON-QKl6yt+NSg5A-xBobIm<UF+;-0mL< zknjB=sc7Y^<a6o#&1XAr{&SYmZSAi?D(^0=YbZMvKJDy>sp~b}b=&VVL~dn^t2=ki zb?OS|OffsHJ<m^7MRE6j6Fb&7O>JkYY2v=W!CYE`Z<Ox#O?lh*;>@E}znaBAn}+zU zmT`AK{%-Nl<as|0e|`TUb7#F}<%-E07CZhu^EK*mnsaUBmo<O5zHJC!r&+#bQtR4^ zg)vV)AD%8;e5$p1($q}lD|}y1O$qU@et$qXc<+2J`K|@uu1sCjGbt;iIYD>R#h)vj zGS^NPJf3-X-CJJw-V+gfiW)rqGS_ZcclT!3<Aht+U#aD3>&)@d+%+Y9V@>gv4;wcG zO^ZCvEoyp*={{1GvCG-P+HvQhGZWsq&itez>%K+#XKrqm#+~357kK3bJCr?jwuE0Z z6$!nn*xar1<wN5(kL}T0(h836xc#={Tt-foW5#NmrVERTWY#!stNY)zVSWE{otqU_ z&z{~q!MIv_;p4aR@*YmHysvCmy^?a<_iOhC#b-V32N3ODF|H?Pd!P3g*J~VEtgO8F z-JVVB1g|R|3XTsjGd{5FuUC2NMC*rYJqj`536h>A<?P*SyVW&&&h#TyJa@Gg%>5+V zs=4Ti)b?1V6UV?!!&j&Mmi@Lqo<4Pvl8ozB`{OBJjg7fvZtyQ|t+1-8v#89<&a1v7 z@cTTU`f6#H6Q!$V*tbWiJq=gL{M)Z^bFu4^USF=yZ|)rb(-mcNM)0?5DX-g#b@@lE zwc<8dPbpvgYVp3nZ<`O~Hm-~ITmJZ)ug-NZ>5XFCuj2mcT|0MenZ}{U!&47=UHOo) z;_5{CBUi8S{M|V9!VN+5BY#&^IQqrjICAt_NX$Of3#Mv&S?mK6M2{VLIr+Z$bmVyP zTo7&aR6Fle>^{}1PuBGbmrjJ*+gH!nb#w8fM<+Kd++J65<lZHgsrM@sIJ=fyv^;W} z(OjzS*NLtZ$N38@s{I$8QV=zjOTPQ|g8Neo(XE%-_uF==?A^ES-6l!9uw|Q~Uai~z zjCHrN?7sgsdR}J)S@dt$Je$6BVZ5xb<)kV7E#`}!SRPL0_j7EtIP`tPR>6vSJd1AU zdaGquoZ+75_xa(Ti>J-p^DSmZ#YAo|=(>L8T5^8*wuN?n^JVwR>{5I5);i^U@cRzw zylJ%wdw&1<TCX&*zuNXaa$B`)a%<tVJgeU2n;vK-W&Q~Gl3C982G$G$HDz2G@BXT~ zS=)7LeM?JApkv;tx3c*wSL7b(owj0SM!B#^`s1DQhxWF;Epuc4vv!f~^P&w`t*eF0 z_2xFM2*2U=)MDw?pgR{e?$q3zc+mP1dwK3P59z{;h!yMd1rF7UoO>MD%yqnbrP5SA zk)<UmDSz$;Uzwn=`~JjpN%B|jJa%VW7!a3pWlw{)SPbWbZviFE(V?-6*H+$k<t}=% zgO@?n@w&-^XLk#A5lt!wpBy)bhBtwAr`E4aJ7qiX_DY)!|7|U6Z7)pTz5C$zslVRc zk&bC-_lFnCyPOxScC=i)<(-AL%w$A+?LnK+j%`Mr(p_!r-f*=V4vq5!69VoTpS#12 zu#$oG3YURKxc6aEq}(9#LXwf~sqN!4dy$)V4r>{ji?*7?I1ZeV%KINh1RY$rBj@L| zyr_5YWHTk=Z{3&^6>{~$l{F79bZNc5_Qv<hg@w(luk?PtdhyAVrY=6dBHy{z7HQ=r z!Q~t7Zq)CCwH_VxMK3r7*nNEa*H(DLKl#q{OQy^0n{l66_{E*Rd%xc9x!=9}_`ZGS zAEw&!*A{PDvMTOw$kpEcdH-82<>jLGK7RA!`Zu|t`Xv%SXFt|F)tt=Ky}w`Rws7$& zn|Ze*uU}BvrlGS!I{o#_o}Nirt><3Z#RaFAHh*#0y{q|cV{EZFEU>?bG3v5B-TO4) z|NhTsG}nHN-0Phx_iNty{{K~GtGh4He)YKI*Zs|WYiCUh4f>m$a?7;0?a7yAC$_}T z=eoP8BIu0w=41RD_b)s9JLUQRf0d~xkL}kp{`JK0(*jt7dPf}#&#q)Gjh2eq@;~!_ z$W(JrF8$uaRj~D7oSjvHrjp_M1&j3VZ2uo!&hqNjt3?ryI(q{_t*)one@r$0yFqLH zo@+;smHgc(QeNF%{!Zp)Qns4C?ZW@J%X|KOKUe&8D{uZ?xekf%XYUL7^zz)>V_R^< zA-crv&F){%ckDP5#P0q0>E+tzJq3=+OgcR|3zq**4yn4MT|A*X_G_?DP~A}$|Mu_i z<Wlqgn6rpT@A-NA=MA3DjSKHh3V46pomc4j2gf5v<&`i0o+-VyjnVKW0|Va{PZ!6K zy}REoC~(RC9;>lp1#iK|+Q;7no8RhQ_}S;*zpv;v$HNux|GzqN`Epy|*A4Z^&Bq_F z?g&1b@&13|$C$9pDo@dxZ|gb4Z<){8v8Z8#wchW&f5o$w`u4Y1*;<_pz7vzUaQ@DX z?-^bnxl^=d^_;c~@edtl&5C|7GbVu3nYq^XkF)t1cmMG6%pU<d>+Pq-gek|GUXH)< zC&lYx_U=cjS1%o17}vjIe$R!-!zLkp!Eu*AoY=lR$w)<bugtYOqAi=7H+OE{^S1M( z#D}7~qn~sQtEc&jvW36X*~0z)P^G!?rErUE?tPY(*E6=C4SZQ9<|cnmdhwsRma`Rq zK1m3wO%DEXtK+IU`vd9KpInj;PcNU>eQtuptCxDSAA&}S_D%R<_r_}W-9?v;s&}0J zy!mf0@0X{`k01td7X*RohW$s<(!8?x*3GGVA7Or^{!riDH)rhk*1x&;G_hXgnc^9z z#alLN?%YuHc;%Mw@1<=|-VO|k-EVBBZMQq;Z&M+M@OJlftuqlX{(n5UWNSJ5S(#^h zUM-IhF{t_Huwnb;r~J!Pc0QaoZJMj}BDRRxN{M@t+TO3q-T1ut)P=r@+aayY4Bj_! zw<`16{x>W>e|E)0v$x(SLT_-}`F$^TyYU^|GQO?Wf6RU|cWG(K|KBGn%&oZ>u9M<? zw%lxPrP7(-AMBS`TSeM@i&a_HJCEbn(Nn!^E@i!8?cKq5@HaoVx?S~Td9fqc4{6Sm z;}i35{jK1w>vC8<s7pjZKp^>Cyp6=3%s>vl{j2sl-ib+Myspcx|D^x(gr&Pe{g~gL zVt@2Fr}i|*_3C{VeHvnIhh~7rx5G~-sDxfxbZXnA8ONSY(_Mb~`W@Mpjz4E@pL?%f z>h%B3rCDp2Uv90pIO?Q)@2ao!T?@phb%VkbS4E3s3WplL_MUxtH1yGfQ*)1oMjWX8 zuc{XOaLqzn@1V_T@sIvKz8k+s)!}LRvHM5U?(I0ZnEm#{B|cwD0xB2Ho*gZg*Rf_* z{+(SFK}SwyCffZq{Dj_#IoR6!r)CFYQ27dHiFZKV1E+r}`Nua!WlorVcjgu$#gM(Z zPYyViJu4GC=KMQ)?)j-lPgT5p^+G|pk7e!BPDMLDcpLo52I2MJGT+|#*7ooJ&T<he zh5I_WS-&3a3%vJt?J@pB56vleWjlC29^Lav{qUZR;!iZ&ci(!`k=gy`@0{Fuv)|eu zxhN!<>r>^~G2J<{*CZog|A{L}KR<4KlaSf;$Ld+LrNaKcri6veo9>?X`R=%*?TMk* z=GW4*>N?LJ+IU9RQsC#yr4Q{mIwr=4OZfiD$WCiXt@cjV4!$|DOP@R0`N*SbYHT;w zUs%yopt6#ovRv4?_REocj*FRE--PDI89i@4eEFVrLGgmq%)&NDK28;%!p~A`w<F&~ z&*|RJzkep%&sjOuOe<e?+l$w)9$oK$xNh5tiMwyjn!77VWsTE1TfNmGKicCJkNkTj zcBS`o$qs(KnFSNeJ{L?EKH2)pO#IgEw`)EnY<&ATcuyJ|Ps7er?|UXT${BsBaA!|; zuAQnbB^`Ha^?`7v`;5}Y%IVU<JiB$RlHYk;Pt-Hpac*bv8HK0Z-e=nnZ-rF`cQ!E9 zufB6(8WWT060^X<M#hP3=iCFk*4~^~Z29}#bEOB)N7^bpZcN`dPmd|1aDVf!nXg|e zez<0MW%^$2{TJjJ1#SgKCT3+c91=~8d@(aRtog;Yt@C$&xR~Ei3ToB&WQip*3g#vU zg9n`DC+-&)J5v56)!x3w(r|gqivM}1rC-00*eX`K;I@D}_m$@<UaN{vXKmz8bgt%3 zcJ~(cad1EGC$p-U`xJ-9XNN!AYl^oRBqXNJ{d8i7QH0&$<A?7Bb?{BK?$ABO{^)5+ z>sIe&RgXWVU2HqSucWuvAbrM-_(aEW@$}_yqxjUtUG<&V|1(}&p(8Y{aPjh*O)-fq z4;Sw$3@}wGY52U*`|X{W+j;4w?5{JfmT@k5XszrQ{j}4}^iXOm-@4aF@*+-5u2oGr z8ddSrGWzjz)~V%!9I`(U!(A?od7P(m&-Mn!{|-12|1-)Z^ZY-N&H0rQtJcX!)H~hT zTP7ZGC@%7P$DM5gFP4jj^KSSV9copUo}G8)#+^S;oe%njZMw4T)9c5~o`EZmu83Z- zDqG^`tM{j5FLkZTIm6R#5uqd?zH0l$<(t+mT(OF;vtVI;akd}_lTk>ccK?DqN^Sp6 zt-jEtvwL?l>nW9xb)r&p*Z4Tu$ckEJ%xkMqcof#yoKyISFRu1iSH!8Hz~#FV*pxFg z3dGy5+VGYHTk_RaN<6(*)~akid0UobVL_tfzRicU9xncLkn64N&vPqmF8=6bR+rp= zhUL`Jr#~J&{MO)UwMn>9Gjg_6m$-pe`cXIdpoap-mQ>ZPrwgMOXrJmUl$L38&6251 zRVf!-U=cn0k(=$7@ax%H6JC5t`4hWlBe#gOLfh`3h|Z)*nRT1I;(v+@?cyldZ!t+{ zN^STREw;*^qFYbMC<oSm*|et2Y0j&sO<q_07f-7AzEdV-o5EuIyZ0^aR*SG6zj61x zVdUR4JxuJUJ}vWzia(?4KKBf_^|@*Bvhok5PALYhdp7my@+V2zt2V{HDfV8V?Ufg> zrbp}zw>ZNiEnaS|<&FPNu{Z5i-f=`rCf2EJ<%ib?9jrHd{}k=@J!^eFtuf?|VAjDv zt>*s1nL>AFTc;IR?+0CizN^r0`LqWTj=hhM?wxl-uq(xD)zTfa#S-=2af+oku|7Tb zDSP9ZnhjjCS8CHY1lP102!9E$T$CEGQq6s*zx!0FhG^J{x_t-ka_mqQQRn#oP3=jW zcI{u0Z|4yGL<fNje#>O|jVu3UIi4u*?{g0|ce=e{tKf-lWviRpQjEL~2tMtpO}?LC zT^y2AU#r9FdbmQStIVHyUdczy?#}J^Prf&8dgK4RKX#j{)sNoVvS)5H9&YdNnf~5D z|AuV;oqP3m;-+Sb^Y~7i&HtI2sbQrM`}e_h^$Esqoqw)#A6uw;<M2OtH*U$wos#E2 z3dlYA^niumW(sq8%A<)!8Y{)w%#DpIpdBdDwFT>+?@eZ3e@CkLP0_=3%Tuj`>K3|5 zPF3_apX>ILZ(Tval|IKQyEV70n8Wr<L*B#5@8;**$+ByG3f*jEbw8dFD48w$V3Va$ z?UB>fA2uAVJlK3R#nR}AwEwbwKZ;|jJiqSGlWUul-TGInCd8b#^f7b-;!r<$0^+8r zXx98Z-V)wgbEfbZfB)}4ulHFLii2vwLri)tBIjl~v6tST86dy>JYPIttT1C`O!G>c zi#w!6)l)Csu3vDc-m&9&@a3AYJ5P4kcz=0P{_j9s!L@nw*KXtTNR)!Fk2t`qw;(!x z{V)ErDk>^HTt%<D_zs0X5qRo-?4yX_LM55XfGHD8QVY)BezdWT!?v}3=8D&yEb6-y z<^;WK*s$B}R!6n%#(>!S38`5sORip&RPHWM;gVMJI9{k}^5{Ebt*xy~3s<wUVZTOz z<%FXOp{2dEd?##mUC|Z9weU?`V#-wcsmm9>bC~ejb*jyxxP?CPGHVx!wg109cja1z z-VDw46K6@hEdNkhf9i68IbT^jxAejIAFEEBb?FjTtUJ=wcFxKCkL!{gPu_WN7uQ^S za$Im)XkGe;KazhKlp0psT)ZJBowVvxs@4pNQ)gSNr%x?EA_mLtc@d2>ZuB%XFidT~ zf7QqGU%}#2g*QDKU%NcGeoeY>ef!BJ`>elL&0u>D>meT~)wpnV!JNWlr4>Pzs*Vg> zKW*jpJrrNKh!fsF+%b=Jm(-N_^T&_vy!(J@p5HX{9Sr>Qp*_vUdrAu;zTAm^cD6DI zG<N|V@n3MB!$9M`@$yORPKci31<<^}_iM(-D}xbAzks@#wa-F6Il#Ir3m90dK=T6k zs-9Wo!#t+p&}gT8V8NdAbG+m@;7(iMkT04La4-72%yVBPd(v4XrhK0ne3E$~)H$Ga zI%}DDPF262`FIb~=*X`ghUQOp#afjLu=+QkfoX4OgJWgBZSfp)BzxwAy3Of+s{Acb zk27)wEC5fktWEFxj69=f%*1o*_nDPX8j<?VUqF*Ad%vD3yoY2@ty_a*<$TMjHUdbV zyr*?w!Jh5&EYHnGvgbU9M25wr88>)%vv+nO#2c7IE_5~I)z<C}V|#?`1Ca#|&sie& zU9vRKLmIqwU|h>-pmAMFm3<K+SU@Tzrj(!SjYeL(<dDt8b84&G$ws6&(YRpA$o6z@ z@#8QgKZsnI#n4=|Hn2zm;Ri;p62At=%I9}>h#~@zfpv@8fdw(yQ)D`jJup`|A>iH! daOQvJTc@-oU%o&4l!1YP!PC{xWt~$(69CiZX^8*; diff --git a/wp-content/plugins/pubsubhubbub/tags/1.3/publisher.php b/wp-content/plugins/pubsubhubbub/tags/1.3/publisher.php deleted file mode 100644 index f176a9b8a..000000000 --- a/wp-content/plugins/pubsubhubbub/tags/1.3/publisher.php +++ /dev/null @@ -1,86 +0,0 @@ -<?php - -// a PHP client library for pubsubhubbub -// as defined at http://code.google.com/p/pubsubhubbub/ -// written by Josh Fraser | joshfraser.com | josh@eventvue.com -// Released under Apache License 2.0 - -class Publisher { - - protected $hub_url; - protected $last_response; - - // create a new Publisher - public function __construct($hub_url) { - - if (!isset($hub_url)) - throw new Exception('Please specify a hub url'); - - if (!preg_match("|^https?://|i",$hub_url)) - throw new Exception('The specified hub url does not appear to be valid: '.$hub_url); - - $this->hub_url = $hub_url; - } - - // accepts either a single url or an array of urls - public function publish_update($topic_urls, $http_function = false) { - if (!isset($topic_urls)) - throw new Exception('Please specify a topic url'); - - // check that we're working with an array - if (!is_array($topic_urls)) { - $topic_urls = array($topic_urls); - } - - // set the mode to publish - $post_string = "hub.mode=publish"; - // loop through each topic url - foreach ($topic_urls as $topic_url) { - - // lightweight check that we're actually working w/ a valid url - if (!preg_match("|^https?://|i",$topic_url)) - throw new Exception('The specified topic url does not appear to be valid: '.$topic_url); - - // append the topic url parameters - $post_string .= "&hub.url=".urlencode($topic_url); - } - - // make the http post request and return true/false - // easy to over-write to use your own http function - if ($http_function) - return $http_function($this->hub_url,$post_string); - else - return $this->http_post($this->hub_url,$post_string); - } - - // returns any error message from the latest request - public function last_response() { - return $this->last_response; - } - - // default http function that uses curl to post to the hub endpoint - private function http_post($url, $post_string) { - - // add any additional curl options here - $options = array(CURLOPT_URL => $url, - CURLOPT_POST => true, - CURLOPT_POSTFIELDS => $post_string, - CURLOPT_USERAGENT => "PubSubHubbub-Publisher-PHP/1.0"); - - $ch = curl_init(); - curl_setopt_array($ch, $options); - - $response = curl_exec($ch); - $this->last_response = $response; - $info = curl_getinfo($ch); - - curl_close($ch); - - // all good - if ($info['http_code'] == 204) - return true; - return false; - } -} - -?> \ No newline at end of file diff --git a/wp-content/plugins/pubsubhubbub/tags/1.3/pubsubhubbub.php b/wp-content/plugins/pubsubhubbub/tags/1.3/pubsubhubbub.php deleted file mode 100644 index f0f5f7f79..000000000 --- a/wp-content/plugins/pubsubhubbub/tags/1.3/pubsubhubbub.php +++ /dev/null @@ -1,221 +0,0 @@ -<?php -/* -Plugin Name: PubSubHubbub -Plugin URI: http://code.google.com/p/pubsubhubbub/ -Description: A better way to tell the world when your blog is updated. -Version: 1.3 -Author: Josh Fraser -Author Email: josh@eventvue.com -Author URI: http://www.joshfraser.com -*/ - -include("publisher.php"); - -// function that is called whenever a new post is published -function publish_to_hub($post_id) { - - // we want to notify the hub for every feed - $feed_urls = array(); - $feed_urls[] = get_bloginfo('atom_url'); - $feed_urls[] = get_bloginfo('rss_url'); - $feed_urls[] = get_bloginfo('rdf_url'); - $feed_urls[] = get_bloginfo('rss2_url'); - // remove dups (ie. they all point to feedburner) - $feed_urls = array_unique($feed_urls); - // get the list of hubs - $hub_urls = get_pubsub_endpoints(); - // loop through each hub - foreach ($hub_urls as $hub_url) { - $p = new Publisher($hub_url); - // publish the update to each hub - if (!$p->publish_update($feed_urls, "http_post_wp")) { - // TODO: add better error handling here - } - } - return $post_id; -} - -function add_atom_link_tag() { - $hub_urls = get_pubsub_endpoints(); - foreach ($hub_urls as $hub_url) { - echo '<link rel="hub" href="'.$hub_url.'" />'; - } -} - -function add_rss_link_tag() { - $hub_urls = get_pubsub_endpoints(); - foreach ($hub_urls as $hub_url) { - echo '<atom:link rel="hub" href="'.$hub_url.'"/>'; - } -} - -function add_rdf_ns_link() { - echo 'xmlns:atom="http://www.w3.org/2005/Atom"'; -} - -// hack to add the atom definition to the RSS feed -// start capturing the feed output. this is run at priority 9 (before output) -function start_rss_link_tag() { - ob_start(); -} - -// this is run at priority 11 (after output) -// add in the xmlns atom definition link -function end_rss_link_tag() { - $feed = ob_get_clean(); - $pattern = '/<rss version="(.+)">/i'; - $replacement = '<rss version="$1" xmlns:atom="http://www.w3.org/2005/Atom">'; - // change <rss version="X.XX"> to <rss version="X.XX" xmlns:atom="http://www.w3.org/2005/Atom"> - echo preg_replace($pattern, $replacement, $feed); -} - -// add a link to our settings page in the WP menu -function add_plugin_menu() { - add_options_page('PubSubHubbub Settings', 'PubSubHubbub', 8, __FILE__, 'add_settings_page'); -} - -// get the endpoints from the wordpress options table -// valid parameters are "publish" or "subscribe" -function get_pubsub_endpoints() { - $endpoints = get_option('pubsub_endpoints'); - $hub_urls = explode("\n",$endpoints); - - // if no values have been set, revert to the defaults (pubsubhubbub on app engine & superfeedr) - if (!$endpoints) { - $hub_urls[] = "http://pubsubhubbub.appspot.com"; - $hub_urls[] = "http://superfeedr.com/hubbub"; - } - - // clean out any blank values - foreach ($hub_urls as $key => $value) { - if (is_null($value) || $value=="") { - unset($hub_urls[$key]); - } else { - $hub_urls[$key] = trim($hub_urls[$key]); - } - } - - return $hub_urls; -} - -// write the content for our settings page that allows you to define your endpoints -function add_settings_page() { ?> - <div class="wrap"> - <h2>Define custom hubs</h2> - - <form method="post" action="options.php"> - <?php //wp_nonce_field('update-options'); ?> - <!-- starting --> - <?php settings_fields('my_settings_group'); ?> - <?php do_settings_sections('my_settings_section'); ?> - <!-- ending --> - - <?php - - // load the existing pubsub endpoint list from the wordpress options table - $pubsub_endpoints = trim(implode("\n",get_pubsub_endpoints()),"\n"); - - ?> - - <table class="form-table"> - - <tr valign="top"> - <th scope="row">Hubs (one per line)</th> - <td><textarea name="pubsub_endpoints" style='width:600px;height:100px'><?php echo $pubsub_endpoints; ?></textarea></td> - </tr> - - </table> - - <input type="hidden" name="action" value="update" /> - <input type="hidden" name="page_options" value="pubsub_endpoints" /> - - <p class="submit"> - <input type="submit" class="button-primary" value="<?php _e('Save Changes') ?>" /> - </p> - - </form> - - <br /><br /> - <div style='background-color:#FFFEEB;border:1px solid #CCCCCC;padding:12px'> - <strong>Thanks for using PubSubHubbub!</strong><br /> - Visit these links to learn more about PubSubHubbub and the author of this plugin:<br /> - <ul> - <li><a href='http://www.onlineaspect.com'>Subscribe to Online Aspect</a></li> - <li><a href='http://www.twitter.com/joshfraser'>Follow Josh Fraser on twitter</a></li> - <li><a href='http://code.google.com/p/pubsubhubbub/'>Learn more about the PubSubHubbub protocol</a></li> - </ul> - </div> - - </div> - -<?php } - - -// helper function to use the WP-friendly snoopy library -if (!function_exists('get_snoopy')) { - function get_snoopy() { - include_once(ABSPATH.'/wp-includes/class-snoopy.php'); - return new Snoopy; - } -} - -// over-ride the default curl http function to post to the hub endpoints -function http_post_wp($url, $post_vars) { - - // turn the query string into an array for snoopy - parse_str($post_vars); - $post_vars = array(); - $post_vars['hub.mode'] = $hub_mode; // PHP converts the periods to underscores - $post_vars['hub.url'] = $hub_url; - - // more universal than curl - $snoopy = get_snoopy(); - $snoopy->agent = "(PubSubHubbub-Publisher-WP/1.0)"; - $snoopy->submit($url,$post_vars); - $response = $snoopy->results; - // TODO: store the last_response. requires a litle refactoring work. - $response_code = $snoopy->response_code; - if ($response_code == 204) - return true; - return false; -} - -// add a settings link next to deactive / edit -function add_settings_link( $links, $file ) { - if( $file == 'pubsubhubbub/pubsubhubbub.php' && function_exists( "admin_url" ) ) { - $settings_link = '<a href="' . admin_url( 'options-general.php?page=pubsubhubbub/pubsubhubbub' ) . '">' . __('Settings') . '</a>'; - array_unshift( $links, $settings_link ); // before other links - } - return $links; -} - -// attach the handler that gets called every time you publish a post -add_action('publish_post', 'publish_to_hub'); -// add the link to our settings page in the WP menu structure -add_action('admin_menu', 'add_plugin_menu'); - -// keep WPMU happy -add_action('admin_init', 'register_my_settings'); -function register_my_settings() { - register_setting('my_settings_group','pubsub_endpoints'); -} - -// add the link tag that points to the hub in the header of our template... - -// to our atom feed -add_action('atom_head', 'add_atom_link_tag'); -// to our RSS 0.92 feed (requires a bit of a hack to include the ATOM namespace definition) -add_action('do_feed_rss', 'start_rss_link_tag', 9); // run before output -add_action('do_feed_rss', 'end_rss_link_tag', 11); // run after output -add_action('rss_head', 'add_rss_link_tag'); -// to our RDF / RSS 1 feed -add_action('rdf_ns', 'add_rdf_ns_link'); -add_action('rdf_header', 'add_rss_link_tag'); -// to our RSS 2 feed -add_action('rss2_head', 'add_rss_link_tag'); -// to our main HTML header -- not sure if we want to include this long-term or not. -add_action('wp_head', 'add_atom_link_tag'); - -add_filter('plugin_action_links', 'add_settings_link', 10, 2); - -?> \ No newline at end of file diff --git a/wp-content/plugins/pubsubhubbub/tags/1.3/readme.txt b/wp-content/plugins/pubsubhubbub/tags/1.3/readme.txt deleted file mode 100644 index c2a64aa7f..000000000 --- a/wp-content/plugins/pubsubhubbub/tags/1.3/readme.txt +++ /dev/null @@ -1,66 +0,0 @@ -=== Plugin Name === -Contributors: joshfraz -Donate link: https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=5426516 -Tags: pubsubhubbub -Requires at least: 2.5 -Tested up to: 2.9.1 -Stable tag: /trunk/ - -A better way to tell the world when your blog is updated. - -== Description == - -This [PubSubHubbub](http://code.google.com/p/pubsubhubbub/ "PubSubHubbub") plugin is a simple way to let people know in real-time when your blog is updated. PubSubHubbub is quickly gaining adoption and is already being used by Google Reader, Google Alerts, FriendFeed and more. - -This plugin: - -* Supports multi-user installations (NEW!) -* Supports multiple hubs -* Supports all of the feed formats used by WordPress, not just ATOM and RSS2 -* Announces which hubs you are using by adding `<link rel="hub" ...>` declarations to your template header and ATOM feed -* Adds `<atom:link rel="hub" ...>` to your RSS feeds along with the necessary XMLNS declaration for RSS 0.92/1.0 - -By default this plugin will ping the following hubs: - -* [Demo hub on Google App Engine](http://pubsubhubbub.appspot.com "Demo hub on Google App Engine") -* [SuperFeedr](http://superfeedr.com/hubbub "SuperFeedr") - -Please contact me if you operate a hub that you would like to be included as a default option. - -== Installation == - -1. Upload the `pubsubhubbub` directory to your `/wp-content/plugins/` directory -2. Activate the plugin through the 'Plugins' menu in WordPress -3. Select custom hubs under your PubSubHubbub Settings (optional) - -Note: PHP 5.0 or better is required. - -== Frequently Asked Questions == - -= Where can I learn more about the PubSubHubbub (PuSH) protocol? = - -You can visit [PubSubHubbb on Google Code](http://code.google.com/p/pubsubhubbub/ "PubSubHubbb on Google Code") - -= Where can I learn more about the author of this plugin? = - -You can learn more about Josh Fraser at [Online Aspect](http://www.onlineaspect.com "Online Aspect") or follow [@joshfraser on twitter](http://www.twitter.com/joshfraser "Josh Fraser on Twitter") - -= Does this plugin work with MU? = - -Multi-user support was added in version 1.3 - -= Does this plugin work with PHP 4.x? = - -Nope. Sorry. For now you must have PHP 5.0 or better. - -= Blog posts don't show up right away in Google Reader. Is it broken? = - -Google Reader currently supports PuSH for shared items, but not general subscriptions. Hopefully they will add that functionality soon (I hear they're working on it). In the meantime, you can check that everything is working correctly by publishing a post and then checking the status at http://pubsubhubbub.appspot.com/topic-details?hub.url=URL-OF-YOUR-FEED - -= Got another question that isn't covered here? = - -Visit [my contact page](http://onlineaspect.com/contact/ "Contact Josh Fraser") to see various ways to get in touch with me. - -== Screenshots == - -1. The PubSubHubbub Settings page allows you to define which hubs you want to use diff --git a/wp-content/plugins/pubsubhubbub/tags/1.3/screenshot-1.png b/wp-content/plugins/pubsubhubbub/tags/1.3/screenshot-1.png deleted file mode 100644 index 8bbeacd06a2be3ffabe5f18399db89129672d4ac..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 40565 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 diff --git a/wp-content/plugins/pubsubhubbub/tags/1.4/publisher.php b/wp-content/plugins/pubsubhubbub/tags/1.4/publisher.php deleted file mode 100644 index f176a9b8a..000000000 --- a/wp-content/plugins/pubsubhubbub/tags/1.4/publisher.php +++ /dev/null @@ -1,86 +0,0 @@ -<?php - -// a PHP client library for pubsubhubbub -// as defined at http://code.google.com/p/pubsubhubbub/ -// written by Josh Fraser | joshfraser.com | josh@eventvue.com -// Released under Apache License 2.0 - -class Publisher { - - protected $hub_url; - protected $last_response; - - // create a new Publisher - public function __construct($hub_url) { - - if (!isset($hub_url)) - throw new Exception('Please specify a hub url'); - - if (!preg_match("|^https?://|i",$hub_url)) - throw new Exception('The specified hub url does not appear to be valid: '.$hub_url); - - $this->hub_url = $hub_url; - } - - // accepts either a single url or an array of urls - public function publish_update($topic_urls, $http_function = false) { - if (!isset($topic_urls)) - throw new Exception('Please specify a topic url'); - - // check that we're working with an array - if (!is_array($topic_urls)) { - $topic_urls = array($topic_urls); - } - - // set the mode to publish - $post_string = "hub.mode=publish"; - // loop through each topic url - foreach ($topic_urls as $topic_url) { - - // lightweight check that we're actually working w/ a valid url - if (!preg_match("|^https?://|i",$topic_url)) - throw new Exception('The specified topic url does not appear to be valid: '.$topic_url); - - // append the topic url parameters - $post_string .= "&hub.url=".urlencode($topic_url); - } - - // make the http post request and return true/false - // easy to over-write to use your own http function - if ($http_function) - return $http_function($this->hub_url,$post_string); - else - return $this->http_post($this->hub_url,$post_string); - } - - // returns any error message from the latest request - public function last_response() { - return $this->last_response; - } - - // default http function that uses curl to post to the hub endpoint - private function http_post($url, $post_string) { - - // add any additional curl options here - $options = array(CURLOPT_URL => $url, - CURLOPT_POST => true, - CURLOPT_POSTFIELDS => $post_string, - CURLOPT_USERAGENT => "PubSubHubbub-Publisher-PHP/1.0"); - - $ch = curl_init(); - curl_setopt_array($ch, $options); - - $response = curl_exec($ch); - $this->last_response = $response; - $info = curl_getinfo($ch); - - curl_close($ch); - - // all good - if ($info['http_code'] == 204) - return true; - return false; - } -} - -?> \ No newline at end of file diff --git a/wp-content/plugins/pubsubhubbub/tags/1.4/pubsubhubbub.php b/wp-content/plugins/pubsubhubbub/tags/1.4/pubsubhubbub.php deleted file mode 100644 index 6928a7a8c..000000000 --- a/wp-content/plugins/pubsubhubbub/tags/1.4/pubsubhubbub.php +++ /dev/null @@ -1,224 +0,0 @@ -<?php -/* -Plugin Name: PubSubHubbub -Plugin URI: http://code.google.com/p/pubsubhubbub/ -Description: A better way to tell the world when your blog is updated. -Version: 1.3 -Author: Josh Fraser -Author Email: josh@eventvue.com -Author URI: http://www.joshfraser.com -*/ - -include("publisher.php"); - -// function that is called whenever a new post is published -// the ability for other plugins to hook into the PuSH code was added by Stephen Paul Weber (http://singpolyma.net) -function publish_to_hub($post_id,$feed_urls=NULL) { - - // we want to notify the hub for every feed - if(!$feed_urls) { - $feed_urls = array(); - $feed_urls[] = get_bloginfo('atom_url'); - $feed_urls[] = get_bloginfo('rss_url'); - $feed_urls[] = get_bloginfo('rdf_url'); - $feed_urls[] = get_bloginfo('rss2_url'); - } - // remove dups (ie. they all point to feedburner) - $feed_urls = array_unique($feed_urls); - // get the list of hubs - $hub_urls = get_pubsub_endpoints(); - // loop through each hub - foreach ($hub_urls as $hub_url) { - $p = new Publisher($hub_url); - // publish the update to each hub - if (!$p->publish_update($feed_urls, "http_post_wp")) { - // TODO: add better error handling here - } - } - return $post_id; -} - -function add_atom_link_tag() { - $hub_urls = get_pubsub_endpoints(); - foreach ($hub_urls as $hub_url) { - echo '<link rel="hub" href="'.$hub_url.'" />'; - } -} - -function add_rss_link_tag() { - $hub_urls = get_pubsub_endpoints(); - foreach ($hub_urls as $hub_url) { - echo '<atom:link rel="hub" href="'.$hub_url.'"/>'; - } -} - -function add_rdf_ns_link() { - echo 'xmlns:atom="http://www.w3.org/2005/Atom"'; -} - -// hack to add the atom definition to the RSS feed -// start capturing the feed output. this is run at priority 9 (before output) -function start_rss_link_tag() { - ob_start(); -} - -// this is run at priority 11 (after output) -// add in the xmlns atom definition link -function end_rss_link_tag() { - $feed = ob_get_clean(); - $pattern = '/<rss version="(.+)">/i'; - $replacement = '<rss version="$1" xmlns:atom="http://www.w3.org/2005/Atom">'; - // change <rss version="X.XX"> to <rss version="X.XX" xmlns:atom="http://www.w3.org/2005/Atom"> - echo preg_replace($pattern, $replacement, $feed); -} - -// add a link to our settings page in the WP menu -function add_plugin_menu() { - add_options_page('PubSubHubbub Settings', 'PubSubHubbub', 8, __FILE__, 'add_settings_page'); -} - -// get the endpoints from the wordpress options table -// valid parameters are "publish" or "subscribe" -function get_pubsub_endpoints() { - $endpoints = get_option('pubsub_endpoints'); - $hub_urls = explode("\n",$endpoints); - - // if no values have been set, revert to the defaults (pubsubhubbub on app engine & superfeedr) - if (!$endpoints) { - $hub_urls[] = "http://pubsubhubbub.appspot.com"; - $hub_urls[] = "http://superfeedr.com/hubbub"; - } - - // clean out any blank values - foreach ($hub_urls as $key => $value) { - if (is_null($value) || $value=="") { - unset($hub_urls[$key]); - } else { - $hub_urls[$key] = trim($hub_urls[$key]); - } - } - - return $hub_urls; -} - -// write the content for our settings page that allows you to define your endpoints -function add_settings_page() { ?> - <div class="wrap"> - <h2>Define custom hubs</h2> - - <form method="post" action="options.php"> - <?php //wp_nonce_field('update-options'); ?> - <!-- starting --> - <?php settings_fields('my_settings_group'); ?> - <?php do_settings_sections('my_settings_section'); ?> - <!-- ending --> - - <?php - - // load the existing pubsub endpoint list from the wordpress options table - $pubsub_endpoints = trim(implode("\n",get_pubsub_endpoints()),"\n"); - - ?> - - <table class="form-table"> - - <tr valign="top"> - <th scope="row">Hubs (one per line)</th> - <td><textarea name="pubsub_endpoints" style='width:600px;height:100px'><?php echo $pubsub_endpoints; ?></textarea></td> - </tr> - - </table> - - <input type="hidden" name="action" value="update" /> - <input type="hidden" name="page_options" value="pubsub_endpoints" /> - - <p class="submit"> - <input type="submit" class="button-primary" value="<?php _e('Save Changes') ?>" /> - </p> - - </form> - - <br /><br /> - <div style='background-color:#FFFEEB;border:1px solid #CCCCCC;padding:12px'> - <strong>Thanks for using PubSubHubbub!</strong><br /> - Visit these links to learn more about PubSubHubbub and the author of this plugin:<br /> - <ul> - <li><a href='http://www.onlineaspect.com'>Subscribe to Online Aspect</a></li> - <li><a href='http://www.twitter.com/joshfraser'>Follow Josh Fraser on twitter</a></li> - <li><a href='http://code.google.com/p/pubsubhubbub/'>Learn more about the PubSubHubbub protocol</a></li> - </ul> - </div> - - </div> - -<?php } - - -// helper function to use the WP-friendly snoopy library -if (!function_exists('get_snoopy')) { - function get_snoopy() { - include_once(ABSPATH.'/wp-includes/class-snoopy.php'); - return new Snoopy; - } -} - -// over-ride the default curl http function to post to the hub endpoints -function http_post_wp($url, $post_vars) { - - // turn the query string into an array for snoopy - parse_str($post_vars); - $post_vars = array(); - $post_vars['hub.mode'] = $hub_mode; // PHP converts the periods to underscores - $post_vars['hub.url'] = $hub_url; - - // more universal than curl - $snoopy = get_snoopy(); - $snoopy->agent = "(PubSubHubbub-Publisher-WP/1.0)"; - $snoopy->submit($url,$post_vars); - $response = $snoopy->results; - // TODO: store the last_response. requires a litle refactoring work. - $response_code = $snoopy->response_code; - if ($response_code == 204) - return true; - return false; -} - -// add a settings link next to deactive / edit -function add_settings_link( $links, $file ) { - if( $file == 'pubsubhubbub/pubsubhubbub.php' && function_exists( "admin_url" ) ) { - $settings_link = '<a href="' . admin_url( 'options-general.php?page=pubsubhubbub/pubsubhubbub' ) . '">' . __('Settings') . '</a>'; - array_unshift( $links, $settings_link ); // before other links - } - return $links; -} - -// attach the handler that gets called every time you publish a post -add_action('publish_post', 'publish_to_hub'); -// add the link to our settings page in the WP menu structure -add_action('admin_menu', 'add_plugin_menu'); - -// keep WPMU happy -add_action('admin_init', 'register_my_settings'); -function register_my_settings() { - register_setting('my_settings_group','pubsub_endpoints'); -} - -// add the link tag that points to the hub in the header of our template... - -// to our atom feed -add_action('atom_head', 'add_atom_link_tag'); -// to our RSS 0.92 feed (requires a bit of a hack to include the ATOM namespace definition) -add_action('do_feed_rss', 'start_rss_link_tag', 9); // run before output -add_action('do_feed_rss', 'end_rss_link_tag', 11); // run after output -add_action('rss_head', 'add_rss_link_tag'); -// to our RDF / RSS 1 feed -add_action('rdf_ns', 'add_rdf_ns_link'); -add_action('rdf_header', 'add_rss_link_tag'); -// to our RSS 2 feed -add_action('rss2_head', 'add_rss_link_tag'); -// to our main HTML header -- not sure if we want to include this long-term or not. -add_action('wp_head', 'add_atom_link_tag'); - -add_filter('plugin_action_links', 'add_settings_link', 10, 2); - -?> \ No newline at end of file diff --git a/wp-content/plugins/pubsubhubbub/tags/1.4/readme.txt b/wp-content/plugins/pubsubhubbub/tags/1.4/readme.txt deleted file mode 100644 index 16dc612b6..000000000 --- a/wp-content/plugins/pubsubhubbub/tags/1.4/readme.txt +++ /dev/null @@ -1,67 +0,0 @@ -=== Plugin Name === -Contributors: joshfraz -Donate link: https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=5426516 -Tags: pubsubhubbub -Requires at least: 2.5 -Tested up to: 2.9.1 -Stable tag: /trunk/ - -A better way to tell the world when your blog is updated. - -== Description == - -This [PubSubHubbub](http://code.google.com/p/pubsubhubbub/ "PubSubHubbub") plugin is a simple way to let people know in real-time when your blog is updated. PubSubHubbub is quickly gaining adoption and is already being used by Google Reader, Google Alerts, FriendFeed and more. - -This plugin: - -* Supports multi-user installations -* Supports multiple hubs -* Offers hooks for other plugin developers to add PuSH support to their own custom feeds (NEW!) -* Supports all of the feed formats used by WordPress, not just ATOM and RSS2 -* Announces which hubs you are using by adding `<link rel="hub" ...>` declarations to your template header and ATOM feed -* Adds `<atom:link rel="hub" ...>` to your RSS feeds along with the necessary XMLNS declaration for RSS 0.92/1.0 - -By default this plugin will ping the following hubs: - -* [Demo hub on Google App Engine](http://pubsubhubbub.appspot.com "Demo hub on Google App Engine") -* [SuperFeedr](http://superfeedr.com/hubbub "SuperFeedr") - -Please contact me if you operate a hub that you would like to be included as a default option. - -== Installation == - -1. Upload the `pubsubhubbub` directory to your `/wp-content/plugins/` directory -2. Activate the plugin through the 'Plugins' menu in WordPress -3. Select custom hubs under your PubSubHubbub Settings (optional) - -Note: PHP 5.0 or better is required. - -== Frequently Asked Questions == - -= Where can I learn more about the PubSubHubbub (PuSH) protocol? = - -You can visit [PubSubHubbb on Google Code](http://code.google.com/p/pubsubhubbub/ "PubSubHubbb on Google Code") - -= Where can I learn more about the author of this plugin? = - -You can learn more about Josh Fraser at [Online Aspect](http://www.onlineaspect.com "Online Aspect") or follow [@joshfraser on twitter](http://www.twitter.com/joshfraser "Josh Fraser on Twitter") - -= Does this plugin work with MU? = - -Multi-user support was added in version 1.3 - -= Does this plugin work with PHP 4.x? = - -Nope. Sorry. For now you must have PHP 5.0 or better. - -= Blog posts don't show up right away in Google Reader. Is it broken? = - -Google Reader currently supports PuSH for shared items, but not general subscriptions. Hopefully they will add that functionality soon (I hear they're working on it). In the meantime, you can check that everything is working correctly by publishing a post and then checking the status at http://pubsubhubbub.appspot.com/topic-details?hub.url=URL-OF-YOUR-FEED - -= Got another question that isn't covered here? = - -Visit [my contact page](http://onlineaspect.com/contact/ "Contact Josh Fraser") to see various ways to get in touch with me. - -== Screenshots == - -1. The PubSubHubbub Settings page allows you to define which hubs you want to use diff --git a/wp-content/plugins/pubsubhubbub/tags/1.4/screenshot-1.png b/wp-content/plugins/pubsubhubbub/tags/1.4/screenshot-1.png deleted file mode 100644 index 8bbeacd06a2be3ffabe5f18399db89129672d4ac..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 40565 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 -- GitLab