<?xml version="1.0" encoding="UTF-8"?>
<commit>
  <added type="array"/>
  <modified type="array">
    <modified>
      <diff>@@ -1,4 +1,4 @@
-== 0.0.1 2008-11-05
+== 1.0.0 2008-11-28
 
 * 1 major enhancement:
   * Initial release</diff>
      <filename>History.txt</filename>
    </modified>
    <modified>
      <diff>@@ -2,6 +2,7 @@ History.txt
 Manifest.txt
 PostInstall.txt
 README.rdoc
+State_Design_Pattern_UML_Class_Diagram.png
 Rakefile
 TODO
 assertions.rb</diff>
      <filename>Manifest.txt</filename>
    </modified>
    <modified>
      <diff>@@ -1,6 +1,6 @@
-= states
+= AlterEgo
 
-* FIX (url)
+* http://alter-ego.rubyforge.org
 
 == DESCRIPTION:
 
@@ -92,7 +92,7 @@ behavior.
 
 This file only scratches the surface of AlterEgo
 functionality.  For complete tutorial documentation, see the file
-spec/states_spec.rb.  It contains the annotated specification,
+spec/alter_ego_spec.rb.  It contains the annotated specification,
 written in the style of a step-by-step tutorial.
 
 === Terminology:
@@ -121,7 +121,7 @@ written in the style of a step-by-step tutorial.
 
 == INSTALL:
 
-* sudo gem install states
+* sudo gem install alter-ego
 
 == LICENSE:
 </diff>
      <filename>README.rdoc</filename>
    </modified>
    <modified>
      <diff>@@ -6,7 +6,6 @@ require File.dirname(__FILE__) + '/lib/alter_ego'
 $hoe = Hoe.new('alter-ego', AlterEgo::VERSION) do |p|
   p.developer('Avdi Grimm', 'avdi@avdi.org')
   p.changes              = p.paragraphs_of(&quot;History.txt&quot;, 0..1).join(&quot;\n\n&quot;)
-  p.post_install_message = 'PostInstall.txt' # TODO remove if post-install message not required
   p.rubyforge_name       = p.name # TODO this is default value
   # p.extra_deps         = [
   #   ['activesupport','&gt;= 2.0.2'],</diff>
      <filename>Rakefile</filename>
    </modified>
    <modified>
      <diff>@@ -1,11 +1,102 @@
-&lt;html&gt;
-	&lt;head&gt;
-		&lt;meta http-equiv=&quot;Content-type&quot; content=&quot;text/html; charset=utf-8&quot;&gt;
-		&lt;title&gt;alter-ego&lt;/title&gt;
-		
-	&lt;/head&gt;
-	&lt;body id=&quot;body&quot;&gt;
-		&lt;p&gt;This page has not yet been created for RubyGem &lt;code&gt;alter-ego&lt;/code&gt;&lt;/p&gt;
-		&lt;p&gt;To the developer: To generate it, update website/index.txt and run the rake task &lt;code&gt;website&lt;/code&gt; to generate this &lt;code&gt;index.html&lt;/code&gt; file.&lt;/p&gt;
-	&lt;/body&gt;
-&lt;/html&gt;
\ No newline at end of file
+&lt;!DOCTYPE html PUBLIC &quot;-//W3C//DTD XHTML 1.0 Strict//EN&quot;
+&quot;http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd&quot;&gt;
+&lt;html xmlns=&quot;http://www.w3.org/1999/xhtml&quot; xml:lang=&quot;en&quot; lang=&quot;en&quot;&gt;
+&lt;head&gt;
+  &lt;link rel=&quot;stylesheet&quot; href=&quot;stylesheets/screen.css&quot; type=&quot;text/css&quot; media=&quot;screen&quot; /&gt;
+  &lt;meta http-equiv=&quot;Content-Type&quot; content=&quot;text/html; charset=utf-8&quot; /&gt;
+  &lt;title&gt;
+      alter ego
+  &lt;/title&gt;
+  &lt;script src=&quot;javascripts/rounded_corners_lite.inc.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
+&lt;style&gt;
+
+&lt;/style&gt;
+  &lt;script type=&quot;text/javascript&quot;&gt;
+    window.onload = function() {
+      settings = {
+          tl: { radius: 10 },
+          tr: { radius: 10 },
+          bl: { radius: 10 },
+          br: { radius: 10 },
+          antiAlias: true,
+          autoPad: true,
+          validTags: [&quot;div&quot;]
+      }
+      var versionBox = new curvyCorners(settings, document.getElementById(&quot;version&quot;));
+      versionBox.applyCornersToAll();
+    }
+  &lt;/script&gt;
+&lt;/head&gt;
+&lt;body&gt;
+&lt;div id=&quot;main&quot;&gt;
+
+    &lt;h1&gt;alter ego&lt;/h1&gt;
+    &lt;div class=&quot;sidebar&quot;&gt;
+      &lt;div id=&quot;version&quot; class=&quot;clickable&quot; onclick='document.location = &quot;http://rubyforge.org/projects/alter-ego&quot;; return false'&gt;
+        &lt;p&gt;Get Version&lt;/p&gt;
+        &lt;a href=&quot;http://rubyforge.org/projects/alter-ego&quot; class=&quot;numbers&quot;&gt;1.0.0&lt;/a&gt;
+      &lt;/div&gt;
+    &lt;/div&gt;
+    &lt;h2&gt;What&lt;/h2&gt;
+&lt;p&gt;AlterEgo is a Ruby implementation of the &lt;a href=&quot;http://en.wikipedia.org/wiki/State_pattern&quot;&gt;State pattern&lt;/a&gt; as described by the Gang of Four.  It differs from other Ruby state machine libraries in that it focuses on providing polymorphic behavior based on object state.  In effect, it makes it easy to give an object different &amp;#8220;personalities&amp;#8221; depending on the state it is in.&lt;/p&gt;
+&lt;h2&gt;Installing&lt;/h2&gt;
+&lt;p&gt;&lt;pre class='syntax'&gt;&lt;span class=&quot;ident&quot;&gt;sudo&lt;/span&gt; &lt;span class=&quot;ident&quot;&gt;gem&lt;/span&gt; &lt;span class=&quot;ident&quot;&gt;install&lt;/span&gt; &lt;span class=&quot;ident&quot;&gt;alter&lt;/span&gt;&lt;span class=&quot;punct&quot;&gt;-&lt;/span&gt;&lt;span class=&quot;ident&quot;&gt;ego&lt;/span&gt;&lt;/pre&gt;&lt;/p&gt;
+&lt;h2&gt;Rationale&lt;/h2&gt;
+&lt;p&gt;Sometimes you want a single object to behave differently depending on what state it&amp;#8217;s in.  For instance, a traffic light has a different color depending on whether it is informing people that they should stop, slow down, or proceed.  Or a user account object might behave differently depending on whether the account is in the &amp;#8220;confirmed&amp;#8221; state.  AlterEgo can help you set up these state-based object &amp;#8220;personalities&amp;#8221;.&lt;/p&gt;
+&lt;p&gt;AlterEgo will help you to define a set of valid states for your objects, and to define the allowable transitions between states.  The real strength of AlterEgo, however, is in defining separate behaviors for each state that the object is in. Underneath the covers, AlterEgo will arrange for your object to delegate to a different state object depending on what state it is in.  You can either explicitly define these state objects as classes, or use a concise &lt;span class=&quot;caps&quot;&gt;DSL&lt;/span&gt; provided by AlterEgo.&lt;/p&gt;
+&lt;h2&gt;Synopsis&lt;/h2&gt;
+&lt;p&gt;&lt;pre class='syntax'&gt;
+  &lt;span class=&quot;keyword&quot;&gt;class &lt;/span&gt;&lt;span class=&quot;class&quot;&gt;TrafficLight&lt;/span&gt;
+    &lt;span class=&quot;ident&quot;&gt;include&lt;/span&gt; &lt;span class=&quot;constant&quot;&gt;AlterEgo&lt;/span&gt;
+
+    &lt;span class=&quot;ident&quot;&gt;state&lt;/span&gt; &lt;span class=&quot;symbol&quot;&gt;:proceed&lt;/span&gt;&lt;span class=&quot;punct&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;symbol&quot;&gt;:default&lt;/span&gt; &lt;span class=&quot;punct&quot;&gt;=&amp;gt;&lt;/span&gt; &lt;span class=&quot;constant&quot;&gt;true&lt;/span&gt; &lt;span class=&quot;keyword&quot;&gt;do&lt;/span&gt;
+      &lt;span class=&quot;ident&quot;&gt;handle&lt;/span&gt; &lt;span class=&quot;symbol&quot;&gt;:color&lt;/span&gt; &lt;span class=&quot;keyword&quot;&gt;do&lt;/span&gt;
+	&lt;span class=&quot;punct&quot;&gt;&amp;quot;&lt;/span&gt;&lt;span class=&quot;string&quot;&gt;green&lt;/span&gt;&lt;span class=&quot;punct&quot;&gt;&amp;quot;&lt;/span&gt;
+      &lt;span class=&quot;keyword&quot;&gt;end&lt;/span&gt;
+      &lt;span class=&quot;ident&quot;&gt;transition&lt;/span&gt; &lt;span class=&quot;symbol&quot;&gt;:to&lt;/span&gt; &lt;span class=&quot;punct&quot;&gt;=&amp;gt;&lt;/span&gt; &lt;span class=&quot;symbol&quot;&gt;:caution&lt;/span&gt;&lt;span class=&quot;punct&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;symbol&quot;&gt;:on&lt;/span&gt; &lt;span class=&quot;punct&quot;&gt;=&amp;gt;&lt;/span&gt; &lt;span class=&quot;symbol&quot;&gt;:cycle!&lt;/span&gt;
+    &lt;span class=&quot;keyword&quot;&gt;end&lt;/span&gt;
+
+    &lt;span class=&quot;ident&quot;&gt;state&lt;/span&gt; &lt;span class=&quot;symbol&quot;&gt;:caution&lt;/span&gt; &lt;span class=&quot;keyword&quot;&gt;do&lt;/span&gt;
+      &lt;span class=&quot;ident&quot;&gt;handle&lt;/span&gt; &lt;span class=&quot;symbol&quot;&gt;:color&lt;/span&gt; &lt;span class=&quot;keyword&quot;&gt;do&lt;/span&gt;
+	&lt;span class=&quot;punct&quot;&gt;&amp;quot;&lt;/span&gt;&lt;span class=&quot;string&quot;&gt;yellow&lt;/span&gt;&lt;span class=&quot;punct&quot;&gt;&amp;quot;&lt;/span&gt;
+      &lt;span class=&quot;keyword&quot;&gt;end&lt;/span&gt;
+      &lt;span class=&quot;ident&quot;&gt;transition&lt;/span&gt; &lt;span class=&quot;symbol&quot;&gt;:to&lt;/span&gt; &lt;span class=&quot;punct&quot;&gt;=&amp;gt;&lt;/span&gt; &lt;span class=&quot;symbol&quot;&gt;:stop&lt;/span&gt;&lt;span class=&quot;punct&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;symbol&quot;&gt;:on&lt;/span&gt; &lt;span class=&quot;punct&quot;&gt;=&amp;gt;&lt;/span&gt; &lt;span class=&quot;symbol&quot;&gt;:cycle!&lt;/span&gt;
+    &lt;span class=&quot;keyword&quot;&gt;end&lt;/span&gt;
+
+    &lt;span class=&quot;ident&quot;&gt;state&lt;/span&gt; &lt;span class=&quot;symbol&quot;&gt;:stop&lt;/span&gt; &lt;span class=&quot;keyword&quot;&gt;do&lt;/span&gt;
+      &lt;span class=&quot;ident&quot;&gt;handle&lt;/span&gt; &lt;span class=&quot;symbol&quot;&gt;:color&lt;/span&gt; &lt;span class=&quot;keyword&quot;&gt;do&lt;/span&gt;
+	&lt;span class=&quot;punct&quot;&gt;&amp;quot;&lt;/span&gt;&lt;span class=&quot;string&quot;&gt;red&lt;/span&gt;&lt;span class=&quot;punct&quot;&gt;&amp;quot;&lt;/span&gt;
+      &lt;span class=&quot;keyword&quot;&gt;end&lt;/span&gt; 
+      &lt;span class=&quot;ident&quot;&gt;transition&lt;/span&gt; &lt;span class=&quot;symbol&quot;&gt;:to&lt;/span&gt; &lt;span class=&quot;punct&quot;&gt;=&amp;gt;&lt;/span&gt; &lt;span class=&quot;symbol&quot;&gt;:proceed&lt;/span&gt;&lt;span class=&quot;punct&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;symbol&quot;&gt;:on&lt;/span&gt; &lt;span class=&quot;punct&quot;&gt;=&amp;gt;&lt;/span&gt; &lt;span class=&quot;symbol&quot;&gt;:cycle!&lt;/span&gt;
+    &lt;span class=&quot;keyword&quot;&gt;end&lt;/span&gt;
+  &lt;span class=&quot;keyword&quot;&gt;end&lt;/span&gt;
+
+  &lt;span class=&quot;ident&quot;&gt;light&lt;/span&gt; &lt;span class=&quot;punct&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;constant&quot;&gt;TrafficLight&lt;/span&gt;&lt;span class=&quot;punct&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;ident&quot;&gt;new&lt;/span&gt;
+  &lt;span class=&quot;ident&quot;&gt;light&lt;/span&gt;&lt;span class=&quot;punct&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;ident&quot;&gt;color&lt;/span&gt;                     &lt;span class=&quot;comment&quot;&gt;# =&amp;gt; &amp;quot;green&amp;quot;&lt;/span&gt;
+  &lt;span class=&quot;ident&quot;&gt;light&lt;/span&gt;&lt;span class=&quot;punct&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;ident&quot;&gt;cycle!&lt;/span&gt;
+  &lt;span class=&quot;ident&quot;&gt;light&lt;/span&gt;&lt;span class=&quot;punct&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;ident&quot;&gt;color&lt;/span&gt;                     &lt;span class=&quot;comment&quot;&gt;# =&amp;gt; &amp;quot;yellow&amp;quot;&lt;/span&gt;
+  &lt;span class=&quot;ident&quot;&gt;light&lt;/span&gt;&lt;span class=&quot;punct&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;ident&quot;&gt;cycle!&lt;/span&gt;
+  &lt;span class=&quot;ident&quot;&gt;light&lt;/span&gt;&lt;span class=&quot;punct&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;ident&quot;&gt;color&lt;/span&gt;                     &lt;span class=&quot;comment&quot;&gt;# =&amp;gt; &amp;quot;red&amp;quot;&lt;/span&gt;
+  &lt;span class=&quot;ident&quot;&gt;light&lt;/span&gt;&lt;span class=&quot;punct&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;ident&quot;&gt;cycle!&lt;/span&gt;
+  &lt;span class=&quot;ident&quot;&gt;light&lt;/span&gt;&lt;span class=&quot;punct&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;ident&quot;&gt;color&lt;/span&gt;                     &lt;span class=&quot;comment&quot;&gt;# =&amp;gt; &amp;quot;green&amp;quot;&lt;/span&gt;
+&lt;/pre&gt;&lt;/p&gt;
+&lt;h2&gt;Documentation&lt;/h2&gt;
+&lt;p&gt;See the project&amp;#8217;s &lt;a href=&quot;http://alter-ego.rubyforge.org/rdoc/&quot;&gt;RDoc&lt;/a&gt;&lt;/p&gt;
+&lt;h2&gt;Development&lt;/h2&gt;
+&lt;p&gt;You can fetch the source from RubyForge using Git:&lt;/p&gt;
+&lt;p&gt;&lt;a href=&quot;http://rubyforge.org/scm/?group_id=7389&quot;&gt;http://rubyforge.org/scm/?group_id=7389&lt;/a&gt;&lt;/p&gt;
+&lt;pre&gt;git clone git://rubyforge.org/alter-ego.git&lt;/pre&gt;
+&lt;h2&gt;License&lt;/h2&gt;
+&lt;p&gt;This code is free to use under the terms of the &lt;span class=&quot;caps&quot;&gt;MIT&lt;/span&gt; license.&lt;/p&gt;
+&lt;h2&gt;Contact&lt;/h2&gt;
+&lt;p&gt;Questions, comments, suggestions: Email &lt;a href=&quot;mailto:avdi@avdi.org&quot;&gt;Avdi Grimm&lt;/a&gt;&lt;/p&gt;
+    &lt;p class=&quot;coda&quot;&gt;
+      &lt;a href=&quot;mailto:avdi@avdi.org&quot;&gt;Avdi Grimm&lt;/a&gt;, 28th November 2008&lt;br&gt;
+      Theme extended from &lt;a href=&quot;http://rb2js.rubyforge.org/&quot;&gt;Paul Battley&lt;/a&gt;
+    &lt;/p&gt;
+&lt;/div&gt;
+
+&lt;!-- insert site tracking codes here, like Google Urchin --&gt;
+
+&lt;/body&gt;
+&lt;/html&gt;</diff>
      <filename>website/index.html</filename>
    </modified>
    <modified>
      <diff>@@ -1,41 +1,68 @@
 h1. alter ego
 
-
 h2. What
 
+AlterEgo is a Ruby implementation of the &quot;State pattern&quot;:http://en.wikipedia.org/wiki/State_pattern as described by the Gang of Four.  It differs from other Ruby state machine libraries in that it focuses on providing polymorphic behavior based on object state.  In effect, it makes it easy to give an object different &quot;personalities&quot; depending on the state it is in.
 
 h2. Installing
 
 &lt;pre syntax=&quot;ruby&quot;&gt;sudo gem install alter-ego&lt;/pre&gt;
 
-h2. The basics
-
+h2. Rationale
 
-h2. Demonstration of usage
+Sometimes you want a single object to behave differently depending on what state it's in.  For instance, a traffic light has a different color depending on whether it is informing people that they should stop, slow down, or proceed.  Or a user account object might behave differently depending on whether the account is in the &quot;confirmed&quot; state.  AlterEgo can help you set up these state-based object &quot;personalities&quot;.
 
+AlterEgo will help you to define a set of valid states for your objects, and to define the allowable transitions between states.  The real strength of AlterEgo, however, is in defining separate behaviors for each state that the object is in. Underneath the covers, AlterEgo will arrange for your object to delegate to a different state object depending on what state it is in.  You can either explicitly define these state objects as classes, or use a concise DSL provided by AlterEgo.
 
+h2. Synopsis
 
-h2. Forum
+&lt;pre syntax=&quot;ruby&quot;&gt;
+  class TrafficLight
+    include AlterEgo
 
-&quot;http://groups.google.com/group/alter-ego&quot;:http://groups.google.com/group/alter-ego
+    state :proceed, :default =&gt; true do
+      handle :color do
+	&quot;green&quot;
+      end
+      transition :to =&gt; :caution, :on =&gt; :cycle!
+    end
 
-TODO - create Google Group - alter-ego
+    state :caution do
+      handle :color do
+	&quot;yellow&quot;
+      end
+      transition :to =&gt; :stop, :on =&gt; :cycle!
+    end
 
-h2. How to submit patches
+    state :stop do
+      handle :color do
+	&quot;red&quot;
+      end 
+      transition :to =&gt; :proceed, :on =&gt; :cycle!
+    end
+  end
 
-Read the &quot;8 steps for fixing other people's code&quot;:http://drnicwilliams.com/2007/06/01/8-steps-for-fixing-other-peoples-code/ and for section &quot;8b: Submit patch to Google Groups&quot;:http://drnicwilliams.com/2007/06/01/8-steps-for-fixing-other-peoples-code/#8b-google-groups, use the Google Group above.
+  light = TrafficLight.new
+  light.color                     # =&gt; &quot;green&quot;
+  light.cycle!
+  light.color                     # =&gt; &quot;yellow&quot;
+  light.cycle!
+  light.color                     # =&gt; &quot;red&quot;
+  light.cycle!
+  light.color                     # =&gt; &quot;green&quot;
+&lt;/pre&gt;
 
-TODO - pick SVN or Git instructions
+h2. Documentation
 
-The trunk repository is &lt;code&gt;svn://rubyforge.org/var/svn/alter-ego/trunk&lt;/code&gt; for anonymous access.
+See the project's &quot;RDoc&quot;:http://alter-ego.rubyforge.org/rdoc/
 
-OOOORRRR
+h2. Development
 
-You can fetch the source from either:
+You can fetch the source from RubyForge using Git:
 
 &lt;% if rubyforge_project_id %&gt;
 
-* rubyforge: &quot;http://rubyforge.org/scm/?group_id=&lt;%= rubyforge_project_id %&gt;&quot;:http://rubyforge.org/scm/?group_id=&lt;%= rubyforge_project_id %&gt;
+&quot;http://rubyforge.org/scm/?group_id=&lt;%= rubyforge_project_id %&gt;&quot;:http://rubyforge.org/scm/?group_id=&lt;%= rubyforge_project_id %&gt;
 
 &lt;pre&gt;git clone git://rubyforge.org/alter-ego.git&lt;/pre&gt;
 
@@ -52,30 +79,11 @@ Or you can hack website/index.txt and make it all go away!!
 
 &lt;% end %&gt;
 
-* github: &quot;http://github.com/GITHUB_USERNAME/alter-ego/tree/master&quot;:http://github.com/GITHUB_USERNAME/alter-ego/tree/master
-
-&lt;pre&gt;git clone git://github.com/GITHUB_USERNAME/alter-ego.git&lt;/pre&gt;
-
-
-TODO - add &quot;github_username: username&quot; to ~/.rubyforge/user-config.yml and newgem will reuse it for future projects.
-
-
-* gitorious: &quot;git://gitorious.org/alter-ego/mainline.git&quot;:git://gitorious.org/alter-ego/mainline.git
-
-&lt;pre&gt;git clone git://gitorious.org/alter-ego/mainline.git&lt;/pre&gt;
-
-h3. Build and test instructions
-
-&lt;pre&gt;cd alter-ego
-rake test
-rake install_gem&lt;/pre&gt;
-
-
 h2. License
 
 This code is free to use under the terms of the MIT license. 
 
 h2. Contact
 
-Comments are welcome. Send an email to &quot;TODO&quot;:mailto:TODO via the &quot;forum&quot;:http://groups.google.com/group/alter-ego
+Questions, comments, suggestions: Email &quot;Avdi Grimm&quot;:mailto:avdi@avdi.org
 </diff>
      <filename>website/index.txt</filename>
    </modified>
    <modified>
      <diff>@@ -39,7 +39,7 @@
     &lt;/div&gt;
     &lt;%= body %&gt;
     &lt;p class=&quot;coda&quot;&gt;
-      &lt;a href=&quot;TODO&quot;&gt;TODO&lt;/a&gt;, &lt;%= modified.pretty %&gt;&lt;br&gt;
+      &lt;a href=&quot;mailto:avdi@avdi.org&quot;&gt;Avdi Grimm&lt;/a&gt;, &lt;%= modified.pretty %&gt;&lt;br&gt;
       Theme extended from &lt;a href=&quot;http://rb2js.rubyforge.org/&quot;&gt;Paul Battley&lt;/a&gt;
     &lt;/p&gt;
 &lt;/div&gt;</diff>
      <filename>website/template.html.erb</filename>
    </modified>
  </modified>
  <removed type="array"/>
  <parents type="array">
    <parent>
      <id>63c2730d343b06cad1322040205bd22ddb32e96e</id>
    </parent>
  </parents>
  <author>
    <name>Avdi Grimm</name>
    <email>avdi@avdi.org</email>
  </author>
  <url>http://github.com/avdi/alter-ego/commit/9114859a49f4358aab2d5809acb305348ec41dee</url>
  <id>9114859a49f4358aab2d5809acb305348ec41dee</id>
  <committed-date>2008-11-28T08:11:23-08:00</committed-date>
  <authored-date>2008-11-28T08:11:23-08:00</authored-date>
  <message>Updated website</message>
  <tree>2bf38dc069def0818bae416baba67c9e1f289c66</tree>
  <committer>
    <name>Avdi Grimm</name>
    <email>avdi@avdi.org</email>
  </committer>
</commit>
