<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:dc="http://purl.org/dc/elements/1.1/" version="2.0"><channel><atom:link rel="hub" href="http://tumblr.superfeedr.com/" xmlns:atom="http://www.w3.org/2005/Atom"/><description>

  var _gaq = _gaq || [];
  _gaq.push([‘_setAccount’, ‘UA-21546964-1’]);
  _gaq.push([‘_trackPageview’]);

  (function() {
    var ga = document.createElement(‘script’); ga.type = ‘text/javascript’; ga.async = true;
    ga.src = (‘https:’ == document.location.protocol ? ‘https://ssl’ : ‘http://www’) + ‘.google-analytics.com/ga.js’;
    var s = document.getElementsByTagName(‘script’)[0]; s.parentNode.insertBefore(ga, s);
  })();

Fighting against the Internet one blog at a time.</description><title>Like It Matters</title><generator>Tumblr (3.0; @benpence)</generator><link>http://www.likeitmatters.com/</link><item><title>[Runner Girl from Amateur Hour by Ben Pence]
Inspired by one of...</title><description>&lt;embed type="application/x-shockwave-flash" src="http://assets.tumblr.com/swf/audio_player_black.swf?audio_file=http://www.tumblr.com/audio_file/14429407495/tumblr_lwfddk5sF31r8zwiy&amp;color=FFFFFF&amp;logo=soundcloud" height="27" width="207" quality="best" wmode="opaque"&gt;&lt;/embed&gt;&lt;br/&gt;&lt;br/&gt;&lt;p&gt;[&lt;a href="http://soundcloud.com/benpence/runner-girl-2006-10-05"&gt;Runner Girl&lt;/a&gt; from &lt;a href="http://soundcloud.com/benpence/sets/amateur-hour/"&gt;Amateur Hour&lt;/a&gt; by &lt;a href="http://soundcloud.com/benpence"&gt;Ben Pence&lt;/a&gt;]&lt;/p&gt;
&lt;p&gt;Inspired by one of my High School’s physically rambunctious treasures, Runner Girl.&lt;/p&gt;</description><link>http://www.likeitmatters.com/post/14429407495</link><guid>http://www.likeitmatters.com/post/14429407495</guid><pubDate>Sun, 16 Oct 2011 00:00:00 -0400</pubDate><category>runner girl</category><category>amateur</category></item><item><title>dontspamme 11.7 </title><description>&lt;p&gt;For the last month or so, I have been working on an anti-spam project. All users with a google account can use and deploy this because it runs on Google App Engine; however, I should warn you that it is in an early stage in development. Many of the features I planned for the project have yet to be implemented (such as the accompanying chrome extension).&lt;/p&gt;
&lt;p&gt;The project summary/install guide/user guide is located at &lt;a href="https://github.com/benpence/dontspamme/wiki/Summary"&gt;&lt;a href="https://github.com/benpence/dontspamme/wiki/Summary"&gt;https://github.com/benpence/dontspamme/wiki/Summary&lt;/a&gt;&lt;/a&gt;.&lt;/p&gt;</description><link>http://www.likeitmatters.com/post/14417194097</link><guid>http://www.likeitmatters.com/post/14417194097</guid><pubDate>Tue, 19 Jul 2011 00:00:00 -0400</pubDate><category>google</category><category>google app engine</category><category>spam</category><category>email</category></item><item><title>1 SSH Account: Gitolite + Shell Access</title><description>&lt;div class="content"&gt;
&lt;p&gt;Here’s a situation I found myself in:&lt;/p&gt;
&lt;ul&gt;&lt;li&gt;I have 1 ssh user available to me&lt;/li&gt;
&lt;li&gt;I wish to have shell access to this user&lt;/li&gt;
&lt;li&gt;I wish to use this user for multi-user git repositories&lt;/li&gt;
&lt;/ul&gt;&lt;p&gt;Here’s the solution I found: Use an ssh ‘config’ file and gitolite. I followed the &lt;a href="http://progit.org/book/ch4-8.html"&gt;instructions from Pro Git&lt;/a&gt; to install gitolite. I will repeat them here for convenience. Replace words starting with ‘my_’ with names respective to your setup.&lt;/p&gt;
&lt;ol&gt;&lt;li&gt;Create a key pair with &lt;strong&gt;no passphrase&lt;/strong&gt;.&lt;/li&gt;
&lt;div class="wp_syntax"&gt;
&lt;div class="code"&gt;
&lt;pre class="bash"&gt;$ &lt;span&gt;ssh-keygen&lt;/span&gt; &lt;span&gt;-t&lt;/span&gt; rsa&lt;/pre&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;li&gt;Copy your public key to the remote server. (Note: some OSs have the command &lt;em&gt;ssh-copy-id&lt;/em&gt;. Run ‘&lt;em&gt;ssh-copy-id -i ~/.ssh/id_rsa my_remote_user@my_remote_server&lt;/em&gt;‘ to skip the following step).&lt;/li&gt;
&lt;div class="wp_syntax"&gt;
&lt;div class="code"&gt;
&lt;pre class="bash"&gt;$ &lt;span&gt;scp&lt;/span&gt; ~&lt;span&gt;/&lt;/span&gt;.ssh&lt;span&gt;/&lt;/span&gt;id_rsa.pub my_remote_user&lt;span&gt;@&lt;/span&gt;my_remote_server:~&lt;span&gt;/&lt;/span&gt;
$ &lt;span&gt;ssh&lt;/span&gt; my_remote_user&lt;span&gt;@&lt;/span&gt;my_remote_server
my_remote_user&lt;span&gt;@&lt;/span&gt;my_remote_server:~$ &lt;span&gt;cat&lt;/span&gt; id_rsa.pub &lt;span&gt;&amp;gt;&amp;gt;&lt;/span&gt; .ssh&lt;span&gt;/&lt;/span&gt;authorized_keys
my_remote_user&lt;span&gt;@&lt;/span&gt;my_remote_server:~$ &lt;span&gt;rm&lt;/span&gt; id_rsa.pub
my_remote_user&lt;span&gt;@&lt;/span&gt;my_remote_server:~$ &lt;span&gt;exit&lt;/span&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;li&gt;Clone gitolite source and install it. Replace &lt;em&gt;git_admin&lt;/em&gt; with the desired gitolite admin user name. The passphrase-prompt asks you for a passphrase to protect your gitolite private key. I left it blank.&lt;/li&gt;
&lt;div class="wp_syntax"&gt;
&lt;div class="code"&gt;
&lt;pre class="bash"&gt;$ &lt;span&gt;git&lt;/span&gt; clone &lt;span&gt;git&lt;/span&gt;:&lt;span&gt;//&lt;/span&gt;github.com&lt;span&gt;/&lt;/span&gt;sitaramc&lt;span&gt;/&lt;/span&gt;gitolite
$ &lt;span&gt;cd&lt;/span&gt; gitolite&lt;span&gt;/&lt;/span&gt;src
$ .&lt;span&gt;/&lt;/span&gt;gl-easy-install &lt;span&gt;-q&lt;/span&gt; my_remote_user my_remote_server git_admin&lt;/pre&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;span&gt;The install creates the following files in your home directory:&lt;/span&gt;
&lt;div class="wp_syntax"&gt;
&lt;div class="code"&gt;
&lt;pre class="bash"&gt;.ssh&lt;span&gt;/&lt;/span&gt;git_admin
.ssh&lt;span&gt;/&lt;/span&gt;git_admin.pub&lt;/pre&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;span&gt;The install creates the following files/folders in &lt;/span&gt;&lt;em&gt;my_remote_user&lt;/em&gt;&lt;span&gt;‘s home directory:&lt;/span&gt;
&lt;div class="wp_syntax"&gt;
&lt;div class="code"&gt;
&lt;pre class="bash"&gt;.cache&lt;span&gt;/&lt;/span&gt;
.gitolite&lt;span&gt;/&lt;/span&gt;
gitolite-install&lt;span&gt;/&lt;/span&gt;
.gitolite.rc
projects.list
repositories&lt;span&gt;/&lt;/span&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;li&gt;Open my_user’s ssh config file for editing with your favorite text editor.&lt;/li&gt;
&lt;div class="wp_syntax"&gt;
&lt;div class="code"&gt;
&lt;pre class="bash"&gt;$ pico ~&lt;span&gt;/&lt;/span&gt;.ssh&lt;span&gt;/&lt;/span&gt;config&lt;/pre&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;li&gt;Add something like the following, substituting in your respective info, and save.&lt;/li&gt;
&lt;div class="wp_syntax"&gt;
&lt;div class="code"&gt;
&lt;pre class="bash"&gt;Host my_gitolite_server
    Hostname my_remote_server
    User my_remote_user
    Port 22
    IdentityFile ~&lt;span&gt;/&lt;/span&gt;.ssh&lt;span&gt;/&lt;/span&gt;git_admin&lt;/pre&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;li&gt;When you wish to use clone/pull/push/etc with your gitolite server, use&lt;em&gt;my_gitolite_server&lt;/em&gt; instead of &lt;em&gt;my_remote_user@my_remote_server&lt;/em&gt;.&lt;/li&gt;
&lt;div class="wp_syntax"&gt;
&lt;div class="code"&gt;
&lt;pre class="bash"&gt;&lt;span&gt;git&lt;/span&gt; clone my_gitolite_server:my_favorite_repo&lt;/pre&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/ol&gt;&lt;p&gt;&lt;em&gt;Note: If you’re on OS X, ssh-agent may save your password for shell access, preventing you from using your git key. Enter ‘killall ssh-agent’ at command line to erase its keys before connecting to your gitolite server. Don’t worry, your key files will by fine.&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;UPDATE (12 Aug 2011): Some versions of openssh will die with the message ‘PTY allocation request failed on channel 0′. Until I figure out how to fix this properly, my remedy is to append the following to ~/.profile:&lt;/em&gt;&lt;/p&gt;
&lt;div class="wp_syntax"&gt;
&lt;div class="code"&gt;
&lt;pre class="bash"&gt;&lt;span&gt;GIT_SSH&lt;/span&gt;=&lt;span&gt;'ssh -T'&lt;/span&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;</description><link>http://www.likeitmatters.com/post/14417087087</link><guid>http://www.likeitmatters.com/post/14417087087</guid><pubDate>Sun, 20 Feb 2011 00:00:00 -0500</pubDate><category>git</category><category>gitolite</category><category>ssh</category></item><item><title>Hashing For Humans 2 </title><description>&lt;p&gt;In &lt;a href="http://benpence.tumblr.com/post/14416764128/hasing-for-humans" title="Hashing For Humans"&gt;Part I of &lt;em&gt;hashing for humans&lt;/em&gt;&lt;/a&gt;, my objectives were to create a mental way of…&lt;/p&gt;
&lt;ul&gt;&lt;li&gt;Generating unique passwords for web applications using information available to you on the login page&lt;/li&gt;
&lt;li&gt;Generating unique passwords that do not imply each other (somebody finds your password to site A; that somebody cannot guess your password for site B)&lt;/li&gt;
&lt;/ul&gt;&lt;p&gt;Having pondered the topics of password-guess-ability and memorization, I have come up with two more solutions that rely more on the password format/infrastructure, instead of your head. They are quite different approaches to solve a similar problem. These solutions are not new, but it seems that too many web services/applications use forms of authentication that are old and unstandardized to protect their users.&lt;/p&gt;
&lt;p&gt;Here are three common scenarios to keep in mind when reading these solutions:&lt;/p&gt;
&lt;ol&gt;&lt;li&gt;You are at a library and need to use the library’s computers to check your web email&lt;/li&gt;
&lt;li&gt;You are at a hotel and want to use the hotel’s computers to access your Facebook account&lt;/li&gt;
&lt;li&gt;You are at a friend’s house and want to make a quick purchase on Amazon.com&lt;/li&gt;
&lt;/ol&gt;&lt;p&gt;In each situation, let us assume that the computer is infected with malware that records every keystroke you type (within the web browser as well). How can we minimize the risk of somebody stealing your password and taking over your account?&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;working on untrusted computers&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;When working on a computer you don’t trust, you want to minimize the cost to you, should your password be stolen. So let’s use one password for logging in on your home computer and one password for logging in on untrusted computers. The password for untrusted computers will log into your account with less privileges: features such as changing your password/associated email (Facebook, Amazon) and looking at saved credit cards (Amazon)/your current address (Facebook, Amazon) will be unavailable.&lt;/p&gt;
&lt;p&gt;Unfortunately, this does not reduce all the risk. Suppose someone learns your less-privileged account password. They will still have access parts of your account and you may never be made aware. So let’s use time-sensitive passwords. You generate a less-privileged password; however, the password will only be valid for an arbitrary amount of time after you have logged in with it for the first time. So if you are going on vacation for 7 days, you can generate a 7-day password that will only be valid for the vacation, assuming you use it on the first day. Yay.&lt;/p&gt;
&lt;p&gt;Generating passwords for every account sound like a pain in the ass. How do we standardize this solution to multiple web services/applications? This problem has already been tackled, the most popular implementations being &lt;a href="http://openid.net/"&gt;openid&lt;/a&gt; and &lt;a href="http://www.facebook.com/help/?page=730"&gt;Facebook Connect&lt;/a&gt;. Using services like these, users have the ability to login to a site through these authentication services (openid &amp;amp; Facebook connect). Now, if we, as an Internet community, can work to make our services/applications compatible with the previously mentioned services, we have only to remember, at any given time, a normal password and a temporary password.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;an alternative to traditional alphabets&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;I had the pleasure of seeing a demonstration by &lt;a href="http://www.authernative.com/"&gt;Authernative, Inc.&lt;/a&gt;, a company specializing in “user and transaction authentication” at a &lt;a href="http://www.gtra.org/"&gt;GTRA&lt;/a&gt; conference. One of Authernative’s solutions to authentication was based on remembering shapes, not letters/numbers/symbols.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://www.benpence.com/images/authernativeMini.png"&gt;&lt;img align="middle" class="aligncenter size-full wp-image-96" height="200" src="http://www.benpence.com/images/authernativeMini.png" title="Authernative Example" width="648"/&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Instead of choosing a password that meets certain criteria, you choose a shape—a shape that is a sequence of blocks in a grid. In the image above, &lt;strong&gt;Figure B&lt;/strong&gt; shows one such shape for a 3×3 grid, &lt;strong&gt;Figure A&lt;/strong&gt; (yes, I used Adobe Illustrator’s built in symbols). The first block in our shape is the block in the top-left. Every block in our shape is next to its predecessor and successor. The last block in the shape is the bottom-left block. This is what a &lt;em&gt;real&lt;/em&gt; login screen from the server would resemble:&lt;/p&gt;
&lt;p&gt;&lt;a href="http://www.benpence.com/images/authernative2Mini.png"&gt;&lt;img align="middle" class="aligncenter size-full wp-image-103" height="200" src="http://www.benpence.com/images/authernative2Mini.png" title="Authernative Prompt" width="466"/&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;To login, all you have to do is look at &lt;strong&gt;Figure C&lt;/strong&gt;, a copy of the grid directly above with our shape overlaid on top. In our shape, the 1st, 3rd, and 4th blocks are 1 (top-left), 3 (center), and 1 (right-center), respectively. Next time you login, they may ask you for the 2nd, 3rd, and 6th blocks in your shape and may use the randomly generated numbers in &lt;strong&gt;Figure D&lt;/strong&gt; instead. Neither people looking over your shoulder nor keylogging software will know your shape because you have only used a subset of all the blocks in the the shape and because each number is in the grid more than once.&lt;/p&gt;
&lt;p&gt;Now, for this 3×3 grid, it is not terribly hard to deduce the shape based on a few inputs; however, if the size of the grid were 20×20 or 40×40 and the shape were 10 blocks instead of 7, the time and inputs required to deduce the shape would increase at an increasing rate. What does this curve look like? Well, I’m way too busy/lazy at the moment to do the math, but some day I intend to get around to it.&lt;/p&gt;
&lt;p&gt;This last solution is just one solution to authentication that is not traditionally used. There are many untraditional solutions waiting out there to be discovered. The mechanism of authentication often relies on humans; therefore, we must develop methods that better appeal to our lazy, forgetful, stupid minds. People remember shapes and phrases better than they remember random combinations of characters, numbers, and symbols. So security experts and psychologists, figure it the fuck out.&lt;/p&gt;</description><link>http://www.likeitmatters.com/post/14416942213</link><guid>http://www.likeitmatters.com/post/14416942213</guid><pubDate>Mon, 08 Nov 2010 00:00:00 -0500</pubDate><category>hash</category><category>password</category></item><item><title>Hashing For Humans: Making Strong Passwords You'll Remember</title><description>&lt;p&gt;Chances are you have an online account on multiple web sites. It’s going to be a long time (maybe forever) before authentication is standardized across the web. How do you remember all those passwords?&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Hashing for Humans&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Hashing is basically a technique used to take something complex or widely varying and create an ordered index for it. That’s an oversimplification, but it will do. Read the &lt;a href="http://en.wikipedia.org/wiki/Hash_function"&gt;wikipedia article&lt;/a&gt; if you’re interested.&lt;/p&gt;
&lt;p&gt;If you use a simple, mental hashing algorithm to create passwords on websites, you…&lt;/p&gt;
&lt;ul&gt;&lt;li&gt;won’t have to worry about your other password(s) when one of them is compromised&lt;/li&gt;
&lt;li&gt;won’t have to write down your passwords&lt;/li&gt;
&lt;li&gt;will be able to have a strong, unique password for every site you visit&lt;/li&gt;
&lt;/ul&gt;&lt;p&gt;So the easiest way to do this is to go to the login screen of a website. As an example, look at&lt;a href="http://gmail.com/"&gt;gmail.com&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;To make a unique password, you need some &lt;strong&gt;input from the website&lt;/strong&gt; itself. And since you’ll see this page EVERY TIME you login, you won’t look stupid when others are watching as you try to ‘remember’ your password. As input, it’s easiest to take the (1) URL, (2) Page Title, or (3) the text around the username/password box. In this case, the page title and domain are basically the same [&amp;#8220;Gmail&amp;#8230;&amp;#8221; and &amp;#8220;gmail.com&amp;#8221;]. Let’s go with that.&lt;/p&gt;
&lt;p&gt;You want to use a hashing algorithm that is &lt;strong&gt;easy to remember&lt;/strong&gt;. So, for example, we could make the first step of the algorithm to &lt;em&gt;take domain name and spell it backwards&lt;/em&gt;. This gives us “liamg” or “moc.liamg”, in this case.&lt;/p&gt;
&lt;p&gt;Next, we should &lt;strong&gt;add numbers, symbols, and capitals&lt;/strong&gt; to our algorithm to make it stronger. One way to do this is to introduce &lt;a href="http://en.wikipedia.org/wiki/Leet"&gt;leet&lt;/a&gt;, a way of visually replacing letters and syllables as numbers and symbols. “Magazine” can be “M@g@z1n3″, and “skullHunter” can be “5k0lHun73r”.&lt;/p&gt;
&lt;p&gt;If that’s too much for you, you can prefix or append numbers/symbols to your website input. For &lt;em&gt;gmail&lt;/em&gt;, we can have “liamg” become “%%LIAMG”. Here, I’ve introduced ‘%’ because “gmail” has 5 letters and ‘%’ is the alternate symbol associated with the ’5′ key on the keyboard. And let’s put two of them, just to boost the length. So far, our algorithm is like this:&lt;/p&gt;
&lt;ol&gt;&lt;li&gt;Write the name of the site backwards, in all caps: “LIAMG”&lt;/li&gt;
&lt;li&gt;Count the length of the password so far and prefix the symbol that corresponds with that length/number on the keyboard, twice: “%%LIAMG”&lt;/li&gt;
&lt;/ol&gt;&lt;p&gt;That’s not too hard, considering it’s all you have to remember for ALL your accounts. The more steps you add to your algorithm, the harder it gets to guess (don’t add too many steps to the algoritm).&lt;/p&gt;
&lt;p&gt;&lt;em&gt;NOTE: While probability-wise, we are under the assumption that the guesser is just as likely to try “liamg” as they are “liam6″, YOU are more likely to remember “johnny8pea” than “johnnyypea”—especially if you’re visual person like me. Also, this will protect you from word-dictionary attacks.&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;Remember, &lt;strong&gt;don’t choose algorithms that are self-evident&lt;/strong&gt;. If you are on &lt;em&gt;gmail.com&lt;/em&gt; and your password is “gmail123″, this might indicate that your password on &lt;em&gt;twitter.com&lt;/em&gt; is “twitter123″ or “twitt123″. Don’t make it too easy, just in case randomcrappysite.com suddenly becomes compromised and your information gets &lt;a href="http://en.wikipedia.org/wiki/Phishing"&gt;phished&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;You can use some of the following algorithms as a starting point and then vary them slightly if you’re not very creative (these are all based on “gmail.com”):&lt;/p&gt;
&lt;ol&gt;&lt;li&gt;Write the last syllable of the website backwards: “liam”&lt;/li&gt;
&lt;li&gt;Replace each series of vowels with the series’ length: “l2m”&lt;/li&gt;
&lt;li&gt;Lather, rinse, repeat for the rest of the title: “l2mg”&lt;/li&gt;
&lt;li&gt;Replace each number with the first letter of the English spelling for that number: “ltmg”&lt;/li&gt;
&lt;li&gt;Append @s until you’ve reached the desired length: “ltmg@@@@”&lt;/li&gt;
&lt;/ol&gt;&lt;hr&gt;&lt;ol&gt;&lt;li&gt;Write the first two letters of the last syllable backwards: “am”&lt;/li&gt;
&lt;li&gt;Append the last two letters of the first syllable: “amg”&lt;/li&gt;
&lt;li&gt;Add the prefix “n.n”, where ‘n’ is the length of the password so far: “3.3amg”&lt;/li&gt;
&lt;li&gt;Append the same ‘n’, plus 1: “3.3amg4″&lt;/li&gt;
&lt;li&gt;Replace the first number with its corresponding symbol on the keyboard: “#.3amg4″&lt;/li&gt;
&lt;li&gt;Add @s as needed: “#.3amg4@”&lt;/li&gt;
&lt;/ol&gt;&lt;hr&gt;&lt;ol&gt;&lt;li&gt;Write a prefix for your passwords: “335″&lt;/li&gt;
&lt;li&gt;Append the first five characters of the website: “335gmail”&lt;/li&gt;
&lt;li&gt;Replace all letters that go under the word (‘g’, ‘q’, ‘y’, ‘p’, etc) with ’3′: “3353mail”&lt;/li&gt;
&lt;li&gt;Replace all remaining small letters (‘w’, ‘e’, ‘r’, ‘u’, etc) with ’2′: “335322il”&lt;/li&gt;
&lt;li&gt;Replace all remaining letters with ’1′: “33532211″&lt;/li&gt;
&lt;/ol&gt;&lt;p&gt;It is very easy if you choose an algorithm that allows you to simply read the input forwards or backwards once, and be done. All the ones I’ve listed here can be done this way, once you understand the algorithm.&lt;/p&gt;
&lt;p&gt;Visual rules based on character heights, as used in the last algorithm listed above, are very effective too. Just watch out for font changes!&lt;/p&gt;</description><link>http://www.likeitmatters.com/post/14416764128</link><guid>http://www.likeitmatters.com/post/14416764128</guid><pubDate>Wed, 17 Mar 2010 00:00:00 -0400</pubDate></item></channel></rss>

