From nobody@FreeBSD.org  Thu Aug 18 22:53:00 2011
Return-Path: <nobody@FreeBSD.org>
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34])
	by hub.freebsd.org (Postfix) with ESMTP id 780681065675
	for <freebsd-gnats-submit@FreeBSD.org>; Thu, 18 Aug 2011 22:53:00 +0000 (UTC)
	(envelope-from nobody@FreeBSD.org)
Received: from red.freebsd.org (red.freebsd.org [IPv6:2001:4f8:fff6::22])
	by mx1.freebsd.org (Postfix) with ESMTP id 67D078FC1A
	for <freebsd-gnats-submit@FreeBSD.org>; Thu, 18 Aug 2011 22:53:00 +0000 (UTC)
Received: from red.freebsd.org (localhost [127.0.0.1])
	by red.freebsd.org (8.14.4/8.14.4) with ESMTP id p7IMr0mr086595
	for <freebsd-gnats-submit@FreeBSD.org>; Thu, 18 Aug 2011 22:53:00 GMT
	(envelope-from nobody@red.freebsd.org)
Received: (from nobody@localhost)
	by red.freebsd.org (8.14.4/8.14.4/Submit) id p7IMr0us086588;
	Thu, 18 Aug 2011 22:53:00 GMT
	(envelope-from nobody)
Message-Id: <201108182253.p7IMr0us086588@red.freebsd.org>
Date: Thu, 18 Aug 2011 22:53:00 GMT
From: Warren Block <wblock@wonkity.com>
To: freebsd-gnats-submit@FreeBSD.org
Subject: [patch] improve HAST section of Handbook
X-Send-Pr-Version: www-3.1
X-GNATS-Notify:

>Number:         159897
>Category:       docs
>Synopsis:       [handbook] [patch] improve HAST section of Handbook
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    wblock
>State:          closed
>Quarter:        
>Keywords:       
>Date-Required:  
>Class:          doc-bug
>Submitter-Id:   current-users
>Arrival-Date:   Thu Aug 18 23:00:21 UTC 2011
>Closed-Date:    Mon Dec 05 23:48:10 UTC 2011
>Last-Modified:  Mon Dec 05 23:48:10 UTC 2011
>Originator:     Warren Block
>Release:        8-STABLE
>Organization:
>Environment:
FreeBSD lightning 8.2-STABLE FreeBSD 8.2-STABLE #0: Wed Aug 17 19:31:39 MDT 2011     root@lightning:/usr/obj/usr/src/sys/LIGHTNING  i386
>Description:
Edit and polish the HAST section of the Handbook with an eye to conciseness and clarity.
>How-To-Repeat:

>Fix:
Apply patch.

Patch attached with submission follows:

--- en_US.ISO8859-1/books/handbook/disks/chapter.sgml.orig	2011-08-18 15:22:56.000000000 -0600
+++ en_US.ISO8859-1/books/handbook/disks/chapter.sgml	2011-08-18 16:35:46.000000000 -0600
@@ -4038,7 +4038,7 @@
     <sect2>
       <title>Synopsis</title>
 
-      <para>High-availability is one of the main requirements in serious
+      <para>High availability is one of the main requirements in serious
 	business applications and highly-available storage is a key
 	component in such environments.  Highly Available STorage, or
 	<acronym>HAST<remark role="acronym">Highly Available
@@ -4109,7 +4109,7 @@
 	  drives.</para>
 	</listitem>
 	<listitem>
-	  <para>File system agnostic, thus allowing to use any file
+	  <para>File system agnostic, thus allowing use of any file
 	    system supported by &os;.</para>
 	</listitem>
 	<listitem>
@@ -4152,7 +4152,7 @@
 	total.</para>
       </note>
 
-      <para>Since the <acronym>HAST</acronym> works in
+      <para>Since <acronym>HAST</acronym> works in
 	primary-secondary configuration, it allows only one of the
 	cluster nodes to be active at any given time.  The
 	<literal>primary</literal> node, also called
@@ -4175,7 +4175,7 @@
       </itemizedlist>
 
       <para><acronym>HAST</acronym> operates synchronously on a block
-	level, which makes it transparent for file systems and
+	level, making it transparent to file systems and
 	applications.  <acronym>HAST</acronym> provides regular GEOM
 	providers in <filename class="directory">/dev/hast/</filename>
 	directory for use by other tools or applications, thus there is
@@ -4252,7 +4252,7 @@
 	For stripped-down systems, make sure this module is available.
 	Alternatively, it is possible to build
 	<literal>GEOM_GATE</literal> support into the kernel
-	statically, by adding the following line to the custom kernel
+	statically, by adding this line to the custom kernel
 	configuration file:</para>
 
       <programlisting>options	GEOM_GATE</programlisting>
@@ -4290,10 +4290,10 @@
 	  class="directory">/dev/hast/</filename>) will be called
 	<filename><replaceable>test</replaceable></filename>.</para>
 
-      <para>The configuration of <acronym>HAST</acronym> is being done
+      <para>Configuration of <acronym>HAST</acronym> is done
 	in the <filename>/etc/hast.conf</filename> file.  This file
 	should be the same on both nodes.  The simplest configuration
-	possible is following:</para>
+	possible is:</para>
 
       <programlisting>resource test {
 	on hasta {
@@ -4317,9 +4317,9 @@
 	  alternatively in the local <acronym>DNS</acronym>.</para>
       </tip>
 
-      <para>Now that the configuration exists on both nodes, it is
-	possible to create the <acronym>HAST</acronym> pool.  Run the
-	following commands on both nodes to place the initial metadata
+      <para>Now that the configuration exists on both nodes,
+	the <acronym>HAST</acronym> pool can be created.  Run these
+	commands on both nodes to place the initial metadata
 	onto the local disk, and start the &man.hastd.8; daemon:</para>
 
       <screen>&prompt.root; <userinput>hastctl create test</userinput>
@@ -4334,51 +4334,51 @@
 	  available.</para>
       </note>
 
-      <para>HAST is not responsible for selecting node's role
-	(<literal>primary</literal> or <literal>secondary</literal>).
-	Node's role has to be configured by an administrator or other
-	software like <application>Heartbeat</application> using the
+      <para>A HAST node's role (<literal>primary</literal> or
+        <literal>secondary</literal>) is selected by an administrator
+        or other
+        software like <application>Heartbeat</application> using the
 	&man.hastctl.8; utility.  Move to the primary node
 	(<literal><replaceable>hasta</replaceable></literal>) and
-	issue the following command:</para>
+	issue this command:</para>
 
       <screen>&prompt.root; <userinput>hastctl role primary test</userinput></screen>
 
-      <para>Similarly, run the following command on the secondary node
+      <para>Similarly, run this command on the secondary node
 	(<literal><replaceable>hastb</replaceable></literal>):</para>
 
       <screen>&prompt.root; <userinput>hastctl role secondary test</userinput></screen>
 
       <caution>
-	<para>It may happen that both of the nodes are not able to
-	  communicate with each other and both are configured as
-	  primary nodes; the consequence of this condition is called
-	  <literal>split-brain</literal>.  In order to troubleshoot
+	<para>When the nodes are unable to
+	  communicate with each other, and both are configured as
+	  primary nodes, the condition is called
+	  <literal>split-brain</literal>.  To troubleshoot
 	  this situation, follow the steps described in <xref
 	  linkend="disks-hast-sb">.</para>
       </caution>
 
-      <para>It is possible to verify the result with the
+      <para>Verify the result with the
 	&man.hastctl.8; utility on each node:</para>
 
       <screen>&prompt.root; <userinput>hastctl status test</userinput></screen>
 
-      <para>The important text is the <literal>status</literal> line
-	from its output and it should say <literal>complete</literal>
+      <para>The important text is the <literal>status</literal> line,
+	which should say <literal>complete</literal>
 	on each of the nodes.  If it says <literal>degraded</literal>,
 	something went wrong.  At this point, the synchronization
 	between the nodes has already started.  The synchronization
-	completes when the <command>hastctl status</command> command
+	completes when <command>hastctl status</command>
 	reports 0 bytes of <literal>dirty</literal> extents.</para>
 
 
-      <para>The last step is to create a filesystem on the
+      <para>The next step is to create a filesystem on the
 	<devicename>/dev/hast/<replaceable>test</replaceable></devicename>
-	GEOM provider and mount it.  This has to be done on the
-	<literal>primary</literal> node (as the
+	GEOM provider and mount it.  This must be done on the
+	<literal>primary</literal> node, as
 	<filename>/dev/hast/<replaceable>test</replaceable></filename>
-	appears only on the <literal>primary</literal> node), and
-	it can take a few minutes depending on the size of the hard
+	appears only on the <literal>primary</literal> node.
+	It can take a few minutes depending on the size of the hard
 	drive:</para>
 
       <screen>&prompt.root; <userinput>newfs -U /dev/hast/test</userinput>
@@ -4387,9 +4387,9 @@
 
       <para>Once the <acronym>HAST</acronym> framework is configured
 	properly, the final step is to make sure that
-	<acronym>HAST</acronym> is started during the system boot time
-	automatically.  The following line should be added to the
-	<filename>/etc/rc.conf</filename> file:</para>
+	<acronym>HAST</acronym> is started automatically during the system
+	boot.  This line is added to
+	<filename>/etc/rc.conf</filename>:</para>
 
       <programlisting>hastd_enable="YES"</programlisting>
 
@@ -4397,26 +4397,25 @@
 	<title>Failover Configuration</title>
 
 	<para>The goal of this example is to build a robust storage
-	  system which is resistant from the failures of any given node.
-	  The key task here is to remedy a scenario when a
-	  <literal>primary</literal> node of the cluster fails.  Should
-	  it happen, the <literal>secondary</literal> node is there to
+	  system which is resistant to failures of any given node.
+	  The scenario is that a
+	  <literal>primary</literal> node of the cluster fails.  If
+	  this happens, the <literal>secondary</literal> node is there to
 	  take over seamlessly, check and mount the file system, and
 	  continue to work without missing a single bit of data.</para>
 
-	<para>In order to accomplish this task, it will be required to
-	  utilize another feature available under &os; which provides
+	<para>To accomplish this task, another &os; feature provides
 	  for automatic failover on the IP layer &mdash;
-	  <acronym>CARP</acronym>.  <acronym>CARP</acronym> stands for
-	  Common Address Redundancy Protocol and allows multiple hosts
+	  <acronym>CARP</acronym>.  <acronym>CARP</acronym> (Common Address
+	  Redundancy Protocol) allows multiple hosts
 	  on the same network segment to share an IP address.  Set up
  	  <acronym>CARP</acronym> on both nodes of the cluster according
 	  to the documentation available in <xref linkend="carp">.
-	  After completing this task, each node should have its own
+	  After setup, each node will have its own
 	  <devicename>carp0</devicename> interface with a shared IP
 	  address <replaceable>172.16.0.254</replaceable>.
-	  Obviously, the primary <acronym>HAST</acronym> node of the
-	  cluster has to be the master <acronym>CARP</acronym>
+	  The primary <acronym>HAST</acronym> node of the
+	  cluster must be the master <acronym>CARP</acronym>
 	  node.</para>
 
 	<para>The <acronym>HAST</acronym> pool created in the previous
@@ -4430,17 +4429,17 @@
 
 	<para>In the event of <acronym>CARP</acronym> interfaces going
 	  up or down, the &os; operating system generates a &man.devd.8;
-	  event, which makes it possible to watch for the state changes
+	  event, making it possible to watch for the state changes
 	  on the <acronym>CARP</acronym> interfaces.  A state change on
 	  the <acronym>CARP</acronym> interface is an indication that
-	  one of the nodes failed or came back online.  In such a case,
-	  it is possible to run a particular script which will
+	  one of the nodes failed or came back online.  These state change
+	  events make it possible to run a script which will
 	  automatically handle the failover.</para>
 
-	<para>To be able to catch the state changes on the
-	  <acronym>CARP</acronym> interfaces, the following
-	  configuration has to be added to the
-	  <filename>/etc/devd.conf</filename> file on each node:</para>
+	<para>To be able to catch state changes on the
+	  <acronym>CARP</acronym> interfaces, add this
+	  configuration to
+	  <filename>/etc/devd.conf</filename> on each node:</para>
 
 	<programlisting>notify 30 {
 	match "system" "IFNET";
@@ -4456,12 +4455,12 @@
 	action "/usr/local/sbin/carp-hast-switch slave";
 };</programlisting>
 
-	<para>To put the new configuration into effect, run the
-	  following command on both nodes:</para>
+	<para>Restart &man.devd.8; on both nodes o put the new configuration
+	  into effect:</para>
 
 	<screen>&prompt.root; <userinput>/etc/rc.d/devd restart</userinput></screen>
 
-	<para>In the event that the <devicename>carp0</devicename>
+	<para>When the <devicename>carp0</devicename>
 	  interface goes up or down (i.e. the interface state changes),
 	  the system generates a notification, allowing the &man.devd.8;
 	  subsystem to run an arbitrary script, in this case
@@ -4471,7 +4470,7 @@
 	  &man.devd.8; configuration, please consult the
 	  &man.devd.conf.5; manual page.</para>
 
-	<para>An example of such a script could be following:</para>
+	<para>An example of such a script could be:</para>
 
 <programlisting>#!/bin/sh
 
@@ -4557,13 +4556,13 @@
 	;;
 esac</programlisting>
 
-	<para>In a nutshell, the script does the following when a node
+	<para>In a nutshell, the script takes these actions when a node
 	  becomes <literal>master</literal> /
 	  <literal>primary</literal>:</para>
 
 	<itemizedlist>
 	  <listitem>
-	    <para>Promotes the <acronym>HAST</acronym> pools as
+	    <para>Promotes the <acronym>HAST</acronym> pools to
 	      primary on a given node.</para>
 	  </listitem>
 	  <listitem>
@@ -4571,7 +4570,7 @@
 	      <acronym>HAST</acronym> pool.</para>
 	  </listitem>
 	  <listitem>
-	    <para>Mounts the pools at appropriate place.</para>
+	    <para>Mounts the pools at an appropriate place.</para>
 	  </listitem>
 	</itemizedlist>
 
@@ -4590,15 +4589,15 @@
 
 	<caution>
 	  <para>Keep in mind that this is just an example script which
-	    should serve as a proof of concept solution.  It does not
+	    should serve as a proof of concept.  It does not
 	    handle all the possible scenarios and can be extended or
 	    altered in any way, for example it can start/stop required
-	    services etc.</para>
+	    services, etc.</para>
 	</caution>
 
 	<tip>
-	  <para>For the purpose of this example we used a standard UFS
-	    file system.  In order to reduce the time needed for
+	  <para>For this example, we used a standard UFS
+	    file system.  To reduce the time needed for
 	    recovery, a journal-enabled UFS or ZFS file system can
 	    be used.</para>
 	</tip>
@@ -4615,41 +4614,40 @@
       <sect3>
 	<title>General Troubleshooting Tips</title>
 
-	<para><acronym>HAST</acronym> should be generally working
-	  without any issues, however as with any other software
+	<para><acronym>HAST</acronym> should generally work
+	  without issues.  However, as with any other software
 	  product, there may be times when it does not work as
 	  supposed.  The sources of the problems may be different, but
 	  the rule of thumb is to ensure that the time is synchronized
 	  between all nodes of the cluster.</para>
 
-	<para>The debugging level of the &man.hastd.8; should be
-	  increased when troubleshooting <acronym>HAST</acronym>
-	  problems.  This can be accomplished by starting the
+	<para>When troubleshooting <acronym>HAST</acronym> problems,
+	  the debugging level of &man.hastd.8; should be increased
+	  by starting the
 	  &man.hastd.8; daemon with the <literal>-d</literal>
-	  argument.  Note, that this argument may be specified
+	  argument.  Note that this argument may be specified
 	  multiple times to further increase the debugging level.  A
-	  lot of useful information may be obtained this way.  It
-	  should be also considered to use <literal>-F</literal>
-	  argument, which will start the &man.hastd.8; daemon in
+	  lot of useful information may be obtained this way.  Consider
+	  also using the <literal>-F</literal>
+	  argument, which starts the &man.hastd.8; daemon in the
 	  foreground.</para>
      </sect3>
 
       <sect3 id="disks-hast-sb">
 	<title>Recovering from the Split-brain Condition</title>
 
-	<para>The consequence of a situation when both nodes of the
-	  cluster are not able to communicate with each other and both
-	  are configured as primary nodes is called
-	  <literal>split-brain</literal>.  This is a dangerous
+	<para><literal>Split-brain</literal> is when the nodes of the
+	  cluster are unable to communicate with each other, and both
+	  are configured as primary.  This is a dangerous
 	  condition because it allows both nodes to make incompatible
-	  changes to the data.  This situation has to be handled by
-	  the system administrator manually.</para>
+	  changes to the data.  This problem must be corrected
+	  manually by the system administrator.</para>
 
-	<para>In order to fix this situation the administrator has to
+	<para>The administrator must
 	  decide which node has more important changes (or merge them
-	  manually) and let the <acronym>HAST</acronym> perform
+	  manually) and let <acronym>HAST</acronym> perform
 	  the full synchronization of the node which has the broken
-	  data.  To do this, issue the following commands on the node
+	  data.  To do this, issue these commands on the node
 	  which needs to be resynchronized:</para>
 
         <screen>&prompt.root; <userinput>hastctl role init &lt;resource&gt;</userinput>


>Release-Note:
>Audit-Trail:

From: Benjamin Kaduk <kaduk@MIT.EDU>
To: Warren Block <wblock@wonkity.com>
Cc: freebsd-gnats-submit@freebsd.org, freebsd-doc@freebsd.org
Subject: Re: docs/159897: [patch] improve HAST section of Handbook
Date: Sat, 20 Aug 2011 21:56:06 -0400 (EDT)

 On Thu, 18 Aug 2011, Warren Block wrote:
 
 > FreeBSD lightning 8.2-STABLE FreeBSD 8.2-STABLE #0: Wed Aug 17 19:31:39 MDT 2011     root@lightning:/usr/obj/usr/src/sys/LIGHTNING  i386
 >> Description:
 > Edit and polish the HAST section of the Handbook with an eye to conciseness and clarity.
 "concision" is three fewer characters :) (though OED has conciseness as 
 older)
 >> How-To-Repeat:
 >
 >> Fix:
 > Apply patch.
 >
 > Patch attached with submission follows:
 >
 > --- en_US.ISO8859-1/books/handbook/disks/chapter.sgml.orig	2011-08-18 15:22:56.000000000 -0600
 > +++ en_US.ISO8859-1/books/handbook/disks/chapter.sgml	2011-08-18 16:35:46.000000000 -0600
 > @@ -4038,7 +4038,7 @@
 >     <sect2>
 >       <title>Synopsis</title>
 >
 > -      <para>High-availability is one of the main requirements in serious
 > +      <para>High availability is one of the main requirements in serious
 > 	business applications and highly-available storage is a key
 > 	component in such environments.  Highly Available STorage, or
 > 	<acronym>HAST<remark role="acronym">Highly Available
 > @@ -4109,7 +4109,7 @@
 > 	  drives.</para>
 > 	</listitem>
 > 	<listitem>
 > -	  <para>File system agnostic, thus allowing to use any file
 > +	  <para>File system agnostic, thus allowing use of any file
 
 I think "allowing the use" is better here.
 
 > 	    system supported by &os;.</para>
 > 	</listitem>
 > 	<listitem>
 > @@ -4152,7 +4152,7 @@
 > 	total.</para>
 >       </note>
 >
 > -      <para>Since the <acronym>HAST</acronym> works in
 > +      <para>Since <acronym>HAST</acronym> works in
 
 "in a primary-secondary"
 
 > 	primary-secondary configuration, it allows only one of the
 > 	cluster nodes to be active at any given time.  The
 > 	<literal>primary</literal> node, also called
 > @@ -4334,51 +4334,51 @@
 > 	  available.</para>
 >       </note>
 >
 > -      <para>HAST is not responsible for selecting node's role
 > -	(<literal>primary</literal> or <literal>secondary</literal>).
 > -	Node's role has to be configured by an administrator or other
 > -	software like <application>Heartbeat</application> using the
 > +      <para>A HAST node's role (<literal>primary</literal> or
 > +        <literal>secondary</literal>) is selected by an administrator
 > +        or other
 > +        software like <application>Heartbeat</application> using the
 > 	&man.hastctl.8; utility.  Move to the primary node
 > 	(<literal><replaceable>hasta</replaceable></literal>) and
 > -	issue the following command:</para>
 > +	issue this command:</para>
 >
 >       <screen>&prompt.root; <userinput>hastctl role primary test</userinput></screen>
 >
 > -      <para>Similarly, run the following command on the secondary node
 > +      <para>Similarly, run this command on the secondary node
 > 	(<literal><replaceable>hastb</replaceable></literal>):</para>
 >
 >       <screen>&prompt.root; <userinput>hastctl role secondary test</userinput></screen>
 >
 >       <caution>
 > -	<para>It may happen that both of the nodes are not able to
 > -	  communicate with each other and both are configured as
 > -	  primary nodes; the consequence of this condition is called
 > -	  <literal>split-brain</literal>.  In order to troubleshoot
 > +	<para>When the nodes are unable to
 > +	  communicate with each other, and both are configured as
 > +	  primary nodes, the condition is called
 > +	  <literal>split-brain</literal>.  To troubleshoot
 > 	  this situation, follow the steps described in <xref
 > 	  linkend="disks-hast-sb">.</para>
 >       </caution>
 >
 > -      <para>It is possible to verify the result with the
 > +      <para>Verify the result with the
 > 	&man.hastctl.8; utility on each node:</para>
 >
 >       <screen>&prompt.root; <userinput>hastctl status test</userinput></screen>
 >
 > -      <para>The important text is the <literal>status</literal> line
 > -	from its output and it should say <literal>complete</literal>
 > +      <para>The important text is the <literal>status</literal> line,
 > +	which should say <literal>complete</literal>
 > 	on each of the nodes.  If it says <literal>degraded</literal>,
 > 	something went wrong.  At this point, the synchronization
 > 	between the nodes has already started.  The synchronization
 > -	completes when the <command>hastctl status</command> command
 > +	completes when <command>hastctl status</command>
 > 	reports 0 bytes of <literal>dirty</literal> extents.</para>
 >
 >
 > -      <para>The last step is to create a filesystem on the
 > +      <para>The next step is to create a filesystem on the
 > 	<devicename>/dev/hast/<replaceable>test</replaceable></devicename>
 > -	GEOM provider and mount it.  This has to be done on the
 > -	<literal>primary</literal> node (as the
 > +	GEOM provider and mount it.  This must be done on the
 > +	<literal>primary</literal> node, as
 > 	<filename>/dev/hast/<replaceable>test</replaceable></filename>
 > -	appears only on the <literal>primary</literal> node), and
 > -	it can take a few minutes depending on the size of the hard
 > +	appears only on the <literal>primary</literal> node.
 > +	It can take a few minutes depending on the size of the hard
 
 The pronoun "it" may be confusing, here -- I would probably just say 
 "Creating the filesystem".
 
 > 	drive:</para>
 >
 >       <screen>&prompt.root; <userinput>newfs -U /dev/hast/test</userinput>
 > @@ -4387,9 +4387,9 @@
 >
 >       <para>Once the <acronym>HAST</acronym> framework is configured
 > 	properly, the final step is to make sure that
 > -	<acronym>HAST</acronym> is started during the system boot time
 > -	automatically.  The following line should be added to the
 > -	<filename>/etc/rc.conf</filename> file:</para>
 > +	<acronym>HAST</acronym> is started automatically during the system
 > +	boot.  This line is added to
 > +	<filename>/etc/rc.conf</filename>:</para>
 
 "This line is added" is a pretty unusual grammatical construct for what is 
 attempting to be conveyed.  "To do so, add this line to" I think says 
 things more clearly.
 
 >
 >       <programlisting>hastd_enable="YES"</programlisting>
 >
 > @@ -4397,26 +4397,25 @@
 > 	<title>Failover Configuration</title>
 >
 > 	<para>The goal of this example is to build a robust storage
 > -	  system which is resistant from the failures of any given node.
 > -	  The key task here is to remedy a scenario when a
 > -	  <literal>primary</literal> node of the cluster fails.  Should
 > -	  it happen, the <literal>secondary</literal> node is there to
 > +	  system which is resistant to failures of any given node.
 
 The plural is not consistent between "failures" and "node".  "resistant to 
 the failure of any given node" is I think the conventional way to say 
 this (note that the original also had the incorrect plural "failures").
 
 > +	  The scenario is that a
 > +	  <literal>primary</literal> node of the cluster fails.  If
 > +	  this happens, the <literal>secondary</literal> node is there to
 > 	  take over seamlessly, check and mount the file system, and
 > 	  continue to work without missing a single bit of data.</para>
 >
 > -	<para>In order to accomplish this task, it will be required to
 > -	  utilize another feature available under &os; which provides
 > +	<para>To accomplish this task, another &os; feature provides
 > 	  for automatic failover on the IP layer &mdash;
 > -	  <acronym>CARP</acronym>.  <acronym>CARP</acronym> stands for
 > -	  Common Address Redundancy Protocol and allows multiple hosts
 > +	  <acronym>CARP</acronym>.  <acronym>CARP</acronym> (Common Address
 > +	  Redundancy Protocol) allows multiple hosts
 > 	  on the same network segment to share an IP address.  Set up
 >  	  <acronym>CARP</acronym> on both nodes of the cluster according
 > 	  to the documentation available in <xref linkend="carp">.
 > -	  After completing this task, each node should have its own
 > +	  After setup, each node will have its own
 > 	  <devicename>carp0</devicename> interface with a shared IP
 > 	  address <replaceable>172.16.0.254</replaceable>.
 > -	  Obviously, the primary <acronym>HAST</acronym> node of the
 > -	  cluster has to be the master <acronym>CARP</acronym>
 > +	  The primary <acronym>HAST</acronym> node of the
 > +	  cluster must be the master <acronym>CARP</acronym>
 > 	  node.</para>
 >
 > 	<para>The <acronym>HAST</acronym> pool created in the previous
 > @@ -4430,17 +4429,17 @@
 >
 > 	<para>In the event of <acronym>CARP</acronym> interfaces going
 > 	  up or down, the &os; operating system generates a &man.devd.8;
 > -	  event, which makes it possible to watch for the state changes
 > +	  event, making it possible to watch for the state changes
 > 	  on the <acronym>CARP</acronym> interfaces.  A state change on
 > 	  the <acronym>CARP</acronym> interface is an indication that
 > -	  one of the nodes failed or came back online.  In such a case,
 > -	  it is possible to run a particular script which will
 > +	  one of the nodes failed or came back online.  These state change
 > +	  events make it possible to run a script which will
 > 	  automatically handle the failover.</para>
 
 I think "handle HAST failover" would be an improvement.
 
 >
 > -	<para>To be able to catch the state changes on the
 > -	  <acronym>CARP</acronym> interfaces, the following
 > -	  configuration has to be added to the
 > -	  <filename>/etc/devd.conf</filename> file on each node:</para>
 > +	<para>To be able to catch state changes on the
 > +	  <acronym>CARP</acronym> interfaces, add this
 > +	  configuration to
 > +	  <filename>/etc/devd.conf</filename> on each node:</para>
 >
 > 	<programlisting>notify 30 {
 > 	match "system" "IFNET";
 > @@ -4456,12 +4455,12 @@
 > 	action "/usr/local/sbin/carp-hast-switch slave";
 > };</programlisting>
 >
 > -	<para>To put the new configuration into effect, run the
 > -	  following command on both nodes:</para>
 > +	<para>Restart &man.devd.8; on both nodes o put the new configuration
 
 "to"
 
 > +	  into effect:</para>
 >
 > 	<screen>&prompt.root; <userinput>/etc/rc.d/devd restart</userinput></screen>
 >
 > -	<para>In the event that the <devicename>carp0</devicename>
 > +	<para>When the <devicename>carp0</devicename>
 > 	  interface goes up or down (i.e. the interface state changes),
 > 	  the system generates a notification, allowing the &man.devd.8;
 > 	  subsystem to run an arbitrary script, in this case
 > @@ -4615,41 +4614,40 @@
 >       <sect3>
 > 	<title>General Troubleshooting Tips</title>
 >
 > -	<para><acronym>HAST</acronym> should be generally working
 > -	  without any issues, however as with any other software
 > +	<para><acronym>HAST</acronym> should generally work
 > +	  without issues.  However, as with any other software
 > 	  product, there may be times when it does not work as
 > 	  supposed.  The sources of the problems may be different, but
 > 	  the rule of thumb is to ensure that the time is synchronized
 > 	  between all nodes of the cluster.</para>
 >
 > -	<para>The debugging level of the &man.hastd.8; should be
 > -	  increased when troubleshooting <acronym>HAST</acronym>
 > -	  problems.  This can be accomplished by starting the
 > +	<para>When troubleshooting <acronym>HAST</acronym> problems,
 > +	  the debugging level of &man.hastd.8; should be increased
 > +	  by starting the
 > 	  &man.hastd.8; daemon with the <literal>-d</literal>
 > -	  argument.  Note, that this argument may be specified
 > +	  argument.  Note that this argument may be specified
 > 	  multiple times to further increase the debugging level.  A
 > -	  lot of useful information may be obtained this way.  It
 > -	  should be also considered to use <literal>-F</literal>
 > -	  argument, which will start the &man.hastd.8; daemon in
 > +	  lot of useful information may be obtained this way.  Consider
 > +	  also using the <literal>-F</literal>
 > +	  argument, which starts the &man.hastd.8; daemon in the
 > 	  foreground.</para>
 >      </sect3>
 >
 >       <sect3 id="disks-hast-sb">
 > 	<title>Recovering from the Split-brain Condition</title>
 >
 > -	<para>The consequence of a situation when both nodes of the
 > -	  cluster are not able to communicate with each other and both
 > -	  are configured as primary nodes is called
 > -	  <literal>split-brain</literal>.  This is a dangerous
 > +	<para><literal>Split-brain</literal> is when the nodes of the
 > +	  cluster are unable to communicate with each other, and both
 > +	  are configured as primary.  This is a dangerous
 > 	  condition because it allows both nodes to make incompatible
 > -	  changes to the data.  This situation has to be handled by
 > -	  the system administrator manually.</para>
 > +	  changes to the data.  This problem must be corrected
 > +	  manually by the system administrator.</para>
 >
 > -	<para>In order to fix this situation the administrator has to
 > +	<para>The administrator must
 > 	  decide which node has more important changes (or merge them
 > -	  manually) and let the <acronym>HAST</acronym> perform
 > +	  manually) and let <acronym>HAST</acronym> perform
 > 	  the full synchronization of the node which has the broken
 
 Just "full synchronization", I think.
 
 
 Thanks for spotting these grammar rough edges and putting together a 
 patch!
 
 -Ben Kaduk
 
 
 > -	  data.  To do this, issue the following commands on the node
 > +	  data.  To do this, issue these commands on the node
 > 	  which needs to be resynchronized:</para>
 >
 >         <screen>&prompt.root; <userinput>hastctl role init &lt;resource&gt;</userinput>
 >
 >

From: Warren Block <wblock@wonkity.com>
To: Benjamin Kaduk <kaduk@mit.edu>
Cc: freebsd-gnats-submit@freebsd.org, freebsd-doc@freebsd.org
Subject: Re: docs/159897: [patch] improve HAST section of Handbook
Date: Sun, 21 Aug 2011 08:43:53 -0600 (MDT)

 On Sat, 20 Aug 2011, Benjamin Kaduk wrote:
 
 > On Thu, 18 Aug 2011, Warren Block wrote:
 >
 >> -	  <para>File system agnostic, thus allowing to use any file
 >> +	  <para>File system agnostic, thus allowing use of any file
 >
 > I think "allowing the use" is better here.
 
 "allowing any" might be even better.
 
 >>       <para>Once the <acronym>HAST</acronym> framework is configured
 >> 	properly, the final step is to make sure that
 >> -	<acronym>HAST</acronym> is started during the system boot time
 >> -	automatically.  The following line should be added to the
 >> -	<filename>/etc/rc.conf</filename> file:</para>
 >> +	<acronym>HAST</acronym> is started automatically during the system
 >> +	boot.  This line is added to
 >> +	<filename>/etc/rc.conf</filename>:</para>
 >
 > "This line is added" is a pretty unusual grammatical construct for what is 
 > attempting to be conveyed.  "To do so, add this line to" I think says things 
 > more clearly.
 
 I would prefer the imperative "Add this line to...".
 
 >> -	<para>In order to fix this situation the administrator has to
 >> +	<para>The administrator must
 >> 	  decide which node has more important changes (or merge them
 >> -	  manually) and let the <acronym>HAST</acronym> perform
 >> +	  manually) and let <acronym>HAST</acronym> perform
 >> 	  the full synchronization of the node which has the broken
 >
 > Just "full synchronization", I think.
 
 Changing "of" to "on" ("full synchronization on the node") also helps a 
 bit.

From: Benjamin Kaduk <kaduk@MIT.EDU>
To: Warren Block <wblock@wonkity.com>
Cc: freebsd-gnats-submit@freebsd.org, freebsd-doc@freebsd.org
Subject: Re: docs/159897: [patch] improve HAST section of Handbook
Date: Mon, 22 Aug 2011 12:36:42 -0400 (EDT)

 On Sun, 21 Aug 2011, Warren Block wrote:
 
 > On Sat, 20 Aug 2011, Benjamin Kaduk wrote:
 >
 >> On Thu, 18 Aug 2011, Warren Block wrote:
 >> 
 >>> -	  <para>File system agnostic, thus allowing to use any file
 >>> +	  <para>File system agnostic, thus allowing use of any file
 >> 
 >> I think "allowing the use" is better here.
 >
 > "allowing any" might be even better.
 
 I don't think that would be correct usage -- "allowing any file system" to 
 do what?
 
 >
 >>>       <para>Once the <acronym>HAST</acronym> framework is configured
 >>> 	properly, the final step is to make sure that
 >>> -	<acronym>HAST</acronym> is started during the system boot time
 >>> -	automatically.  The following line should be added to the
 >>> -	<filename>/etc/rc.conf</filename> file:</para>
 >>> +	<acronym>HAST</acronym> is started automatically during the system
 >>> +	boot.  This line is added to
 >>> +	<filename>/etc/rc.conf</filename>:</para>
 >> 
 >> "This line is added" is a pretty unusual grammatical construct for what is 
 >> attempting to be conveyed.  "To do so, add this line to" I think says 
 >> things more clearly.
 >
 > I would prefer the imperative "Add this line to...".
 
 That works.  I had initially shied away from it since it could be read to 
 imply that all users should do so, not just those wanting to use HAST. 
 But this is the HAST section, after all.
 
 >
 >>> -	<para>In order to fix this situation the administrator has to
 >>> +	<para>The administrator must
 >>> 	  decide which node has more important changes (or merge them
 >>> -	  manually) and let the <acronym>HAST</acronym> perform
 >>> +	  manually) and let <acronym>HAST</acronym> perform
 >>> 	  the full synchronization of the node which has the broken
 >> 
 >> Just "full synchronization", I think.
 >
 > Changing "of" to "on" ("full synchronization on the node") also helps a bit.
 >
 
 I think I still prefer "of", but would not object to "on".
 Can you prepare an updated patch with these changes?
 
 Thanks,
 
 Ben

From: Warren Block <wblock@wonkity.com>
To: Benjamin Kaduk <kaduk@mit.edu>
Cc: freebsd-gnats-submit@freebsd.org, freebsd-doc@freebsd.org
Subject: Re: docs/159897: [patch] improve HAST section of Handbook
Date: Mon, 22 Aug 2011 18:08:09 -0600 (MDT)

   This message is in MIME format.  The first part should be readable text,
   while the remaining parts are likely unreadable without MIME-aware tools.
 
 ---902635197-795004455-1314058089=:888
 Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed
 
 On Mon, 22 Aug 2011, Benjamin Kaduk wrote:
 
 > On Sun, 21 Aug 2011, Warren Block wrote:
 >
 >> On Sat, 20 Aug 2011, Benjamin Kaduk wrote:
 >> 
 >>> On Thu, 18 Aug 2011, Warren Block wrote:
 >>> 
 >>>> -	  <para>File system agnostic, thus allowing to use any file
 >>>> +	  <para>File system agnostic, thus allowing use of any file
 >>> 
 >>> I think "allowing the use" is better here.
 >> 
 >> "allowing any" might be even better.
 >
 > I don't think that would be correct usage -- "allowing any file system" to do 
 > what?
 
 Allowing any file system versus allowing only file systems made for 
 HAST.  Looking at it again, the problem is the word "allowing".  What 
 this is really saying is: "File system agnostic, compatible with any 
 file system supported by &os;."
 
 >>>> -	<para>In order to fix this situation the administrator has to
 >>>> +	<para>The administrator must
 >>>> 	  decide which node has more important changes (or merge them
 >>>> -	  manually) and let the <acronym>HAST</acronym> perform
 >>>> +	  manually) and let <acronym>HAST</acronym> perform
 >>>> 	  the full synchronization of the node which has the broken
 >>> 
 >>> Just "full synchronization", I think.
 >> 
 >> Changing "of" to "on" ("full synchronization on the node") also helps a 
 >> bit.
 >
 > I think I still prefer "of", but would not object to "on".
 
 The idea is that "synchronization of the node" is ambiguous about 
 which node is being changed, where "synchronization on the node", er, 
 isn't.
 
 > Can you prepare an updated patch with these changes?
 
 Yes.  These changes and those from your earlier post are in the attached 
 patch.  Thanks!
 ---902635197-795004455-1314058089=:888
 Content-Type: TEXT/PLAIN; charset=US-ASCII; name=patch-handbook-hast-2.diff.txt
 Content-Transfer-Encoding: BASE64
 Content-ID: <alpine.BSF.2.00.1108221808090.888@wonkity.com>
 Content-Description: 
 Content-Disposition: attachment; filename=patch-handbook-hast-2.diff.txt
 
 LS0tIGVuX1VTLklTTzg4NTktMS9ib29rcy9oYW5kYm9vay9kaXNrcy9jaGFw
 dGVyLnNnbWwub3JpZwkyMDExLTA1LTI3IDA0OjIyOjU1LjAwMDAwMDAwMCAt
 MDYwMA0KKysrIGVuX1VTLklTTzg4NTktMS9ib29rcy9oYW5kYm9vay9kaXNr
 cy9jaGFwdGVyLnNnbWwJMjAxMS0wOC0yMiAxNzo1NDoyOC4wMDAwMDAwMDAg
 LTA2MDANCkBAIC00MDM4LDcgKzQwMzgsNyBAQA0KICAgICA8c2VjdDI+DQog
 ICAgICAgPHRpdGxlPlN5bm9wc2lzPC90aXRsZT4NCiANCi0gICAgICA8cGFy
 YT5IaWdoLWF2YWlsYWJpbGl0eSBpcyBvbmUgb2YgdGhlIG1haW4gcmVxdWly
 ZW1lbnRzIGluIHNlcmlvdXMNCisgICAgICA8cGFyYT5IaWdoIGF2YWlsYWJp
 bGl0eSBpcyBvbmUgb2YgdGhlIG1haW4gcmVxdWlyZW1lbnRzIGluIHNlcmlv
 dXMNCiAJYnVzaW5lc3MgYXBwbGljYXRpb25zIGFuZCBoaWdobHktYXZhaWxh
 YmxlIHN0b3JhZ2UgaXMgYSBrZXkNCiAJY29tcG9uZW50IGluIHN1Y2ggZW52
 aXJvbm1lbnRzLiAgSGlnaGx5IEF2YWlsYWJsZSBTVG9yYWdlLCBvcg0KIAk8
 YWNyb255bT5IQVNUPHJlbWFyayByb2xlPSJhY3JvbnltIj5IaWdobHkgQXZh
 aWxhYmxlDQpAQCAtNDEwOSw3ICs0MTA5LDcgQEANCiAJICBkcml2ZXMuPC9w
 YXJhPg0KIAk8L2xpc3RpdGVtPg0KIAk8bGlzdGl0ZW0+DQotCSAgPHBhcmE+
 RmlsZSBzeXN0ZW0gYWdub3N0aWMsIHRodXMgYWxsb3dpbmcgdG8gdXNlIGFu
 eSBmaWxlDQorCSAgPHBhcmE+RmlsZSBzeXN0ZW0gYWdub3N0aWMsIGNvbXBh
 dGlibGUgd2l0aCBhbnkgZmlsZQ0KIAkgICAgc3lzdGVtIHN1cHBvcnRlZCBi
 eSAmb3M7LjwvcGFyYT4NCiAJPC9saXN0aXRlbT4NCiAJPGxpc3RpdGVtPg0K
 QEAgLTQxNTIsNyArNDE1Miw3IEBADQogCXRvdGFsLjwvcGFyYT4NCiAgICAg
 ICA8L25vdGU+DQogDQotICAgICAgPHBhcmE+U2luY2UgdGhlIDxhY3Jvbnlt
 PkhBU1Q8L2Fjcm9ueW0+IHdvcmtzIGluDQorICAgICAgPHBhcmE+U2luY2Ug
 PGFjcm9ueW0+SEFTVDwvYWNyb255bT4gd29ya3MgaW4gYQ0KIAlwcmltYXJ5
 LXNlY29uZGFyeSBjb25maWd1cmF0aW9uLCBpdCBhbGxvd3Mgb25seSBvbmUg
 b2YgdGhlDQogCWNsdXN0ZXIgbm9kZXMgdG8gYmUgYWN0aXZlIGF0IGFueSBn
 aXZlbiB0aW1lLiAgVGhlDQogCTxsaXRlcmFsPnByaW1hcnk8L2xpdGVyYWw+
 IG5vZGUsIGFsc28gY2FsbGVkDQpAQCAtNDE3NSw3ICs0MTc1LDcgQEANCiAg
 ICAgICA8L2l0ZW1pemVkbGlzdD4NCiANCiAgICAgICA8cGFyYT48YWNyb255
 bT5IQVNUPC9hY3JvbnltPiBvcGVyYXRlcyBzeW5jaHJvbm91c2x5IG9uIGEg
 YmxvY2sNCi0JbGV2ZWwsIHdoaWNoIG1ha2VzIGl0IHRyYW5zcGFyZW50IGZv
 ciBmaWxlIHN5c3RlbXMgYW5kDQorCWxldmVsLCBtYWtpbmcgaXQgdHJhbnNw
 YXJlbnQgdG8gZmlsZSBzeXN0ZW1zIGFuZA0KIAlhcHBsaWNhdGlvbnMuICA8
 YWNyb255bT5IQVNUPC9hY3JvbnltPiBwcm92aWRlcyByZWd1bGFyIEdFT00N
 CiAJcHJvdmlkZXJzIGluIDxmaWxlbmFtZSBjbGFzcz0iZGlyZWN0b3J5Ij4v
 ZGV2L2hhc3QvPC9maWxlbmFtZT4NCiAJZGlyZWN0b3J5IGZvciB1c2UgYnkg
 b3RoZXIgdG9vbHMgb3IgYXBwbGljYXRpb25zLCB0aHVzIHRoZXJlIGlzDQpA
 QCAtNDI1Miw3ICs0MjUyLDcgQEANCiAJRm9yIHN0cmlwcGVkLWRvd24gc3lz
 dGVtcywgbWFrZSBzdXJlIHRoaXMgbW9kdWxlIGlzIGF2YWlsYWJsZS4NCiAJ
 QWx0ZXJuYXRpdmVseSwgaXQgaXMgcG9zc2libGUgdG8gYnVpbGQNCiAJPGxp
 dGVyYWw+R0VPTV9HQVRFPC9saXRlcmFsPiBzdXBwb3J0IGludG8gdGhlIGtl
 cm5lbA0KLQlzdGF0aWNhbGx5LCBieSBhZGRpbmcgdGhlIGZvbGxvd2luZyBs
 aW5lIHRvIHRoZSBjdXN0b20ga2VybmVsDQorCXN0YXRpY2FsbHksIGJ5IGFk
 ZGluZyB0aGlzIGxpbmUgdG8gdGhlIGN1c3RvbSBrZXJuZWwNCiAJY29uZmln
 dXJhdGlvbiBmaWxlOjwvcGFyYT4NCiANCiAgICAgICA8cHJvZ3JhbWxpc3Rp
 bmc+b3B0aW9ucwlHRU9NX0dBVEU8L3Byb2dyYW1saXN0aW5nPg0KQEAgLTQy
 OTAsMTAgKzQyOTAsMTAgQEANCiAJICBjbGFzcz0iZGlyZWN0b3J5Ij4vZGV2
 L2hhc3QvPC9maWxlbmFtZT4pIHdpbGwgYmUgY2FsbGVkDQogCTxmaWxlbmFt
 ZT48cmVwbGFjZWFibGU+dGVzdDwvcmVwbGFjZWFibGU+PC9maWxlbmFtZT4u
 PC9wYXJhPg0KIA0KLSAgICAgIDxwYXJhPlRoZSBjb25maWd1cmF0aW9uIG9m
 IDxhY3JvbnltPkhBU1Q8L2Fjcm9ueW0+IGlzIGJlaW5nIGRvbmUNCisgICAg
 ICA8cGFyYT5Db25maWd1cmF0aW9uIG9mIDxhY3JvbnltPkhBU1Q8L2Fjcm9u
 eW0+IGlzIGRvbmUNCiAJaW4gdGhlIDxmaWxlbmFtZT4vZXRjL2hhc3QuY29u
 ZjwvZmlsZW5hbWU+IGZpbGUuICBUaGlzIGZpbGUNCiAJc2hvdWxkIGJlIHRo
 ZSBzYW1lIG9uIGJvdGggbm9kZXMuICBUaGUgc2ltcGxlc3QgY29uZmlndXJh
 dGlvbg0KLQlwb3NzaWJsZSBpcyBmb2xsb3dpbmc6PC9wYXJhPg0KKwlwb3Nz
 aWJsZSBpczo8L3BhcmE+DQogDQogICAgICAgPHByb2dyYW1saXN0aW5nPnJl
 c291cmNlIHRlc3Qgew0KIAlvbiBoYXN0YSB7DQpAQCAtNDMxNyw5ICs0MzE3
 LDkgQEANCiAJICBhbHRlcm5hdGl2ZWx5IGluIHRoZSBsb2NhbCA8YWNyb255
 bT5ETlM8L2Fjcm9ueW0+LjwvcGFyYT4NCiAgICAgICA8L3RpcD4NCiANCi0g
 ICAgICA8cGFyYT5Ob3cgdGhhdCB0aGUgY29uZmlndXJhdGlvbiBleGlzdHMg
 b24gYm90aCBub2RlcywgaXQgaXMNCi0JcG9zc2libGUgdG8gY3JlYXRlIHRo
 ZSA8YWNyb255bT5IQVNUPC9hY3JvbnltPiBwb29sLiAgUnVuIHRoZQ0KLQlm
 b2xsb3dpbmcgY29tbWFuZHMgb24gYm90aCBub2RlcyB0byBwbGFjZSB0aGUg
 aW5pdGlhbCBtZXRhZGF0YQ0KKyAgICAgIDxwYXJhPk5vdyB0aGF0IHRoZSBj
 b25maWd1cmF0aW9uIGV4aXN0cyBvbiBib3RoIG5vZGVzLA0KKwl0aGUgPGFj
 cm9ueW0+SEFTVDwvYWNyb255bT4gcG9vbCBjYW4gYmUgY3JlYXRlZC4gIFJ1
 biB0aGVzZQ0KKwljb21tYW5kcyBvbiBib3RoIG5vZGVzIHRvIHBsYWNlIHRo
 ZSBpbml0aWFsIG1ldGFkYXRhDQogCW9udG8gdGhlIGxvY2FsIGRpc2ssIGFu
 ZCBzdGFydCB0aGUgJm1hbi5oYXN0ZC44OyBkYWVtb246PC9wYXJhPg0KIA0K
 ICAgICAgIDxzY3JlZW4+JnByb21wdC5yb290OyA8dXNlcmlucHV0Pmhhc3Rj
 dGwgY3JlYXRlIHRlc3Q8L3VzZXJpbnB1dD4NCkBAIC00MzM0LDUyICs0MzM0
 LDUyIEBADQogCSAgYXZhaWxhYmxlLjwvcGFyYT4NCiAgICAgICA8L25vdGU+
 DQogDQotICAgICAgPHBhcmE+SEFTVCBpcyBub3QgcmVzcG9uc2libGUgZm9y
 IHNlbGVjdGluZyBub2RlJ3Mgcm9sZQ0KLQkoPGxpdGVyYWw+cHJpbWFyeTwv
 bGl0ZXJhbD4gb3IgPGxpdGVyYWw+c2Vjb25kYXJ5PC9saXRlcmFsPikuDQot
 CU5vZGUncyByb2xlIGhhcyB0byBiZSBjb25maWd1cmVkIGJ5IGFuIGFkbWlu
 aXN0cmF0b3Igb3Igb3RoZXINCi0Jc29mdHdhcmUgbGlrZSA8YXBwbGljYXRp
 b24+SGVhcnRiZWF0PC9hcHBsaWNhdGlvbj4gdXNpbmcgdGhlDQorICAgICAg
 PHBhcmE+QSBIQVNUIG5vZGUncyByb2xlICg8bGl0ZXJhbD5wcmltYXJ5PC9s
 aXRlcmFsPiBvcg0KKyAgICAgICAgPGxpdGVyYWw+c2Vjb25kYXJ5PC9saXRl
 cmFsPikgaXMgc2VsZWN0ZWQgYnkgYW4gYWRtaW5pc3RyYXRvcg0KKyAgICAg
 ICAgb3Igb3RoZXINCisgICAgICAgIHNvZnR3YXJlIGxpa2UgPGFwcGxpY2F0
 aW9uPkhlYXJ0YmVhdDwvYXBwbGljYXRpb24+IHVzaW5nIHRoZQ0KIAkmbWFu
 Lmhhc3RjdGwuODsgdXRpbGl0eS4gIE1vdmUgdG8gdGhlIHByaW1hcnkgbm9k
 ZQ0KIAkoPGxpdGVyYWw+PHJlcGxhY2VhYmxlPmhhc3RhPC9yZXBsYWNlYWJs
 ZT48L2xpdGVyYWw+KSBhbmQNCi0JaXNzdWUgdGhlIGZvbGxvd2luZyBjb21t
 YW5kOjwvcGFyYT4NCisJaXNzdWUgdGhpcyBjb21tYW5kOjwvcGFyYT4NCiAN
 CiAgICAgICA8c2NyZWVuPiZwcm9tcHQucm9vdDsgPHVzZXJpbnB1dD5oYXN0
 Y3RsIHJvbGUgcHJpbWFyeSB0ZXN0PC91c2VyaW5wdXQ+PC9zY3JlZW4+DQog
 DQotICAgICAgPHBhcmE+U2ltaWxhcmx5LCBydW4gdGhlIGZvbGxvd2luZyBj
 b21tYW5kIG9uIHRoZSBzZWNvbmRhcnkgbm9kZQ0KKyAgICAgIDxwYXJhPlNp
 bWlsYXJseSwgcnVuIHRoaXMgY29tbWFuZCBvbiB0aGUgc2Vjb25kYXJ5IG5v
 ZGUNCiAJKDxsaXRlcmFsPjxyZXBsYWNlYWJsZT5oYXN0YjwvcmVwbGFjZWFi
 bGU+PC9saXRlcmFsPik6PC9wYXJhPg0KIA0KICAgICAgIDxzY3JlZW4+JnBy
 b21wdC5yb290OyA8dXNlcmlucHV0Pmhhc3RjdGwgcm9sZSBzZWNvbmRhcnkg
 dGVzdDwvdXNlcmlucHV0Pjwvc2NyZWVuPg0KIA0KICAgICAgIDxjYXV0aW9u
 Pg0KLQk8cGFyYT5JdCBtYXkgaGFwcGVuIHRoYXQgYm90aCBvZiB0aGUgbm9k
 ZXMgYXJlIG5vdCBhYmxlIHRvDQotCSAgY29tbXVuaWNhdGUgd2l0aCBlYWNo
 IG90aGVyIGFuZCBib3RoIGFyZSBjb25maWd1cmVkIGFzDQotCSAgcHJpbWFy
 eSBub2RlczsgdGhlIGNvbnNlcXVlbmNlIG9mIHRoaXMgY29uZGl0aW9uIGlz
 IGNhbGxlZA0KLQkgIDxsaXRlcmFsPnNwbGl0LWJyYWluPC9saXRlcmFsPi4g
 IEluIG9yZGVyIHRvIHRyb3VibGVzaG9vdA0KKwk8cGFyYT5XaGVuIHRoZSBu
 b2RlcyBhcmUgdW5hYmxlIHRvDQorCSAgY29tbXVuaWNhdGUgd2l0aCBlYWNo
 IG90aGVyLCBhbmQgYm90aCBhcmUgY29uZmlndXJlZCBhcw0KKwkgIHByaW1h
 cnkgbm9kZXMsIHRoZSBjb25kaXRpb24gaXMgY2FsbGVkDQorCSAgPGxpdGVy
 YWw+c3BsaXQtYnJhaW48L2xpdGVyYWw+LiAgVG8gdHJvdWJsZXNob290DQog
 CSAgdGhpcyBzaXR1YXRpb24sIGZvbGxvdyB0aGUgc3RlcHMgZGVzY3JpYmVk
 IGluIDx4cmVmDQogCSAgbGlua2VuZD0iZGlza3MtaGFzdC1zYiI+LjwvcGFy
 YT4NCiAgICAgICA8L2NhdXRpb24+DQogDQotICAgICAgPHBhcmE+SXQgaXMg
 cG9zc2libGUgdG8gdmVyaWZ5IHRoZSByZXN1bHQgd2l0aCB0aGUNCisgICAg
 ICA8cGFyYT5WZXJpZnkgdGhlIHJlc3VsdCB3aXRoIHRoZQ0KIAkmbWFuLmhh
 c3RjdGwuODsgdXRpbGl0eSBvbiBlYWNoIG5vZGU6PC9wYXJhPg0KIA0KICAg
 ICAgIDxzY3JlZW4+JnByb21wdC5yb290OyA8dXNlcmlucHV0Pmhhc3RjdGwg
 c3RhdHVzIHRlc3Q8L3VzZXJpbnB1dD48L3NjcmVlbj4NCiANCi0gICAgICA8
 cGFyYT5UaGUgaW1wb3J0YW50IHRleHQgaXMgdGhlIDxsaXRlcmFsPnN0YXR1
 czwvbGl0ZXJhbD4gbGluZQ0KLQlmcm9tIGl0cyBvdXRwdXQgYW5kIGl0IHNo
 b3VsZCBzYXkgPGxpdGVyYWw+Y29tcGxldGU8L2xpdGVyYWw+DQorICAgICAg
 PHBhcmE+VGhlIGltcG9ydGFudCB0ZXh0IGlzIHRoZSA8bGl0ZXJhbD5zdGF0
 dXM8L2xpdGVyYWw+IGxpbmUsDQorCXdoaWNoIHNob3VsZCBzYXkgPGxpdGVy
 YWw+Y29tcGxldGU8L2xpdGVyYWw+DQogCW9uIGVhY2ggb2YgdGhlIG5vZGVz
 LiAgSWYgaXQgc2F5cyA8bGl0ZXJhbD5kZWdyYWRlZDwvbGl0ZXJhbD4sDQog
 CXNvbWV0aGluZyB3ZW50IHdyb25nLiAgQXQgdGhpcyBwb2ludCwgdGhlIHN5
 bmNocm9uaXphdGlvbg0KIAliZXR3ZWVuIHRoZSBub2RlcyBoYXMgYWxyZWFk
 eSBzdGFydGVkLiAgVGhlIHN5bmNocm9uaXphdGlvbg0KLQljb21wbGV0ZXMg
 d2hlbiB0aGUgPGNvbW1hbmQ+aGFzdGN0bCBzdGF0dXM8L2NvbW1hbmQ+IGNv
 bW1hbmQNCisJY29tcGxldGVzIHdoZW4gPGNvbW1hbmQ+aGFzdGN0bCBzdGF0
 dXM8L2NvbW1hbmQ+DQogCXJlcG9ydHMgMCBieXRlcyBvZiA8bGl0ZXJhbD5k
 aXJ0eTwvbGl0ZXJhbD4gZXh0ZW50cy48L3BhcmE+DQogDQogDQotICAgICAg
 PHBhcmE+VGhlIGxhc3Qgc3RlcCBpcyB0byBjcmVhdGUgYSBmaWxlc3lzdGVt
 IG9uIHRoZQ0KKyAgICAgIDxwYXJhPlRoZSBuZXh0IHN0ZXAgaXMgdG8gY3Jl
 YXRlIGEgZmlsZXN5c3RlbSBvbiB0aGUNCiAJPGRldmljZW5hbWU+L2Rldi9o
 YXN0LzxyZXBsYWNlYWJsZT50ZXN0PC9yZXBsYWNlYWJsZT48L2RldmljZW5h
 bWU+DQotCUdFT00gcHJvdmlkZXIgYW5kIG1vdW50IGl0LiAgVGhpcyBoYXMg
 dG8gYmUgZG9uZSBvbiB0aGUNCi0JPGxpdGVyYWw+cHJpbWFyeTwvbGl0ZXJh
 bD4gbm9kZSAoYXMgdGhlDQorCUdFT00gcHJvdmlkZXIgYW5kIG1vdW50IGl0
 LiAgVGhpcyBtdXN0IGJlIGRvbmUgb24gdGhlDQorCTxsaXRlcmFsPnByaW1h
 cnk8L2xpdGVyYWw+IG5vZGUsIGFzDQogCTxmaWxlbmFtZT4vZGV2L2hhc3Qv
 PHJlcGxhY2VhYmxlPnRlc3Q8L3JlcGxhY2VhYmxlPjwvZmlsZW5hbWU+DQot
 CWFwcGVhcnMgb25seSBvbiB0aGUgPGxpdGVyYWw+cHJpbWFyeTwvbGl0ZXJh
 bD4gbm9kZSksIGFuZA0KLQlpdCBjYW4gdGFrZSBhIGZldyBtaW51dGVzIGRl
 cGVuZGluZyBvbiB0aGUgc2l6ZSBvZiB0aGUgaGFyZA0KLQlkcml2ZTo8L3Bh
 cmE+DQorCWFwcGVhcnMgb25seSBvbiB0aGUgPGxpdGVyYWw+cHJpbWFyeTwv
 bGl0ZXJhbD4gbm9kZS4NCisJQ3JlYXRpbmcgdGhlIGZpbGVzeXN0ZW0gY2Fu
 IHRha2UgYSBmZXcgbWludXRlcywgZGVwZW5kaW5nIG9uIHRoZQ0KKwlzaXpl
 IG9mIHRoZSBoYXJkIGRyaXZlOjwvcGFyYT4NCiANCiAgICAgICA8c2NyZWVu
 PiZwcm9tcHQucm9vdDsgPHVzZXJpbnB1dD5uZXdmcyAtVSAvZGV2L2hhc3Qv
 dGVzdDwvdXNlcmlucHV0Pg0KICZwcm9tcHQucm9vdDsgPHVzZXJpbnB1dD5t
 a2RpciAvaGFzdC90ZXN0PC91c2VyaW5wdXQ+DQpAQCAtNDM4Nyw5ICs0Mzg3
 LDkgQEANCiANCiAgICAgICA8cGFyYT5PbmNlIHRoZSA8YWNyb255bT5IQVNU
 PC9hY3JvbnltPiBmcmFtZXdvcmsgaXMgY29uZmlndXJlZA0KIAlwcm9wZXJs
 eSwgdGhlIGZpbmFsIHN0ZXAgaXMgdG8gbWFrZSBzdXJlIHRoYXQNCi0JPGFj
 cm9ueW0+SEFTVDwvYWNyb255bT4gaXMgc3RhcnRlZCBkdXJpbmcgdGhlIHN5
 c3RlbSBib290IHRpbWUNCi0JYXV0b21hdGljYWxseS4gIFRoZSBmb2xsb3dp
 bmcgbGluZSBzaG91bGQgYmUgYWRkZWQgdG8gdGhlDQotCTxmaWxlbmFtZT4v
 ZXRjL3JjLmNvbmY8L2ZpbGVuYW1lPiBmaWxlOjwvcGFyYT4NCisJPGFjcm9u
 eW0+SEFTVDwvYWNyb255bT4gaXMgc3RhcnRlZCBhdXRvbWF0aWNhbGx5IGR1
 cmluZyB0aGUgc3lzdGVtDQorCWJvb3QuICBBZGQgdGhpcyBsaW5lIHRvDQor
 CTxmaWxlbmFtZT4vZXRjL3JjLmNvbmY8L2ZpbGVuYW1lPjo8L3BhcmE+DQog
 DQogICAgICAgPHByb2dyYW1saXN0aW5nPmhhc3RkX2VuYWJsZT0iWUVTIjwv
 cHJvZ3JhbWxpc3Rpbmc+DQogDQpAQCAtNDM5NywyNiArNDM5NywyNSBAQA0K
 IAk8dGl0bGU+RmFpbG92ZXIgQ29uZmlndXJhdGlvbjwvdGl0bGU+DQogDQog
 CTxwYXJhPlRoZSBnb2FsIG9mIHRoaXMgZXhhbXBsZSBpcyB0byBidWlsZCBh
 IHJvYnVzdCBzdG9yYWdlDQotCSAgc3lzdGVtIHdoaWNoIGlzIHJlc2lzdGFu
 dCBmcm9tIHRoZSBmYWlsdXJlcyBvZiBhbnkgZ2l2ZW4gbm9kZS4NCi0JICBU
 aGUga2V5IHRhc2sgaGVyZSBpcyB0byByZW1lZHkgYSBzY2VuYXJpbyB3aGVu
 IGENCi0JICA8bGl0ZXJhbD5wcmltYXJ5PC9saXRlcmFsPiBub2RlIG9mIHRo
 ZSBjbHVzdGVyIGZhaWxzLiAgU2hvdWxkDQotCSAgaXQgaGFwcGVuLCB0aGUg
 PGxpdGVyYWw+c2Vjb25kYXJ5PC9saXRlcmFsPiBub2RlIGlzIHRoZXJlIHRv
 DQorCSAgc3lzdGVtIHdoaWNoIGlzIHJlc2lzdGFudCB0byB0aGUgZmFpbHVy
 ZSBvZiBhbnkgZ2l2ZW4gbm9kZS4NCisJICBUaGUgc2NlbmFyaW8gaXMgdGhh
 dCBhDQorCSAgPGxpdGVyYWw+cHJpbWFyeTwvbGl0ZXJhbD4gbm9kZSBvZiB0
 aGUgY2x1c3RlciBmYWlscy4gIElmDQorCSAgdGhpcyBoYXBwZW5zLCB0aGUg
 PGxpdGVyYWw+c2Vjb25kYXJ5PC9saXRlcmFsPiBub2RlIGlzIHRoZXJlIHRv
 DQogCSAgdGFrZSBvdmVyIHNlYW1sZXNzbHksIGNoZWNrIGFuZCBtb3VudCB0
 aGUgZmlsZSBzeXN0ZW0sIGFuZA0KIAkgIGNvbnRpbnVlIHRvIHdvcmsgd2l0
 aG91dCBtaXNzaW5nIGEgc2luZ2xlIGJpdCBvZiBkYXRhLjwvcGFyYT4NCiAN
 Ci0JPHBhcmE+SW4gb3JkZXIgdG8gYWNjb21wbGlzaCB0aGlzIHRhc2ssIGl0
 IHdpbGwgYmUgcmVxdWlyZWQgdG8NCi0JICB1dGlsaXplIGFub3RoZXIgZmVh
 dHVyZSBhdmFpbGFibGUgdW5kZXIgJm9zOyB3aGljaCBwcm92aWRlcw0KKwk8
 cGFyYT5UbyBhY2NvbXBsaXNoIHRoaXMgdGFzaywgYW5vdGhlciAmb3M7IGZl
 YXR1cmUgcHJvdmlkZXMNCiAJICBmb3IgYXV0b21hdGljIGZhaWxvdmVyIG9u
 IHRoZSBJUCBsYXllciAmbWRhc2g7DQotCSAgPGFjcm9ueW0+Q0FSUDwvYWNy
 b255bT4uICA8YWNyb255bT5DQVJQPC9hY3JvbnltPiBzdGFuZHMgZm9yDQot
 CSAgQ29tbW9uIEFkZHJlc3MgUmVkdW5kYW5jeSBQcm90b2NvbCBhbmQgYWxs
 b3dzIG11bHRpcGxlIGhvc3RzDQorCSAgPGFjcm9ueW0+Q0FSUDwvYWNyb255
 bT4uICA8YWNyb255bT5DQVJQPC9hY3JvbnltPiAoQ29tbW9uIEFkZHJlc3MN
 CisJICBSZWR1bmRhbmN5IFByb3RvY29sKSBhbGxvd3MgbXVsdGlwbGUgaG9z
 dHMNCiAJICBvbiB0aGUgc2FtZSBuZXR3b3JrIHNlZ21lbnQgdG8gc2hhcmUg
 YW4gSVAgYWRkcmVzcy4gIFNldCB1cA0KICAJICA8YWNyb255bT5DQVJQPC9h
 Y3JvbnltPiBvbiBib3RoIG5vZGVzIG9mIHRoZSBjbHVzdGVyIGFjY29yZGlu
 Zw0KIAkgIHRvIHRoZSBkb2N1bWVudGF0aW9uIGF2YWlsYWJsZSBpbiA8eHJl
 ZiBsaW5rZW5kPSJjYXJwIj4uDQotCSAgQWZ0ZXIgY29tcGxldGluZyB0aGlz
 IHRhc2ssIGVhY2ggbm9kZSBzaG91bGQgaGF2ZSBpdHMgb3duDQorCSAgQWZ0
 ZXIgc2V0dXAsIGVhY2ggbm9kZSB3aWxsIGhhdmUgaXRzIG93bg0KIAkgIDxk
 ZXZpY2VuYW1lPmNhcnAwPC9kZXZpY2VuYW1lPiBpbnRlcmZhY2Ugd2l0aCBh
 IHNoYXJlZCBJUA0KIAkgIGFkZHJlc3MgPHJlcGxhY2VhYmxlPjE3Mi4xNi4w
 LjI1NDwvcmVwbGFjZWFibGU+Lg0KLQkgIE9idmlvdXNseSwgdGhlIHByaW1h
 cnkgPGFjcm9ueW0+SEFTVDwvYWNyb255bT4gbm9kZSBvZiB0aGUNCi0JICBj
 bHVzdGVyIGhhcyB0byBiZSB0aGUgbWFzdGVyIDxhY3JvbnltPkNBUlA8L2Fj
 cm9ueW0+DQorCSAgVGhlIHByaW1hcnkgPGFjcm9ueW0+SEFTVDwvYWNyb255
 bT4gbm9kZSBvZiB0aGUNCisJICBjbHVzdGVyIG11c3QgYmUgdGhlIG1hc3Rl
 ciA8YWNyb255bT5DQVJQPC9hY3JvbnltPg0KIAkgIG5vZGUuPC9wYXJhPg0K
 IA0KIAk8cGFyYT5UaGUgPGFjcm9ueW0+SEFTVDwvYWNyb255bT4gcG9vbCBj
 cmVhdGVkIGluIHRoZSBwcmV2aW91cw0KQEAgLTQ0MzAsMTcgKzQ0MjksMTcg
 QEANCiANCiAJPHBhcmE+SW4gdGhlIGV2ZW50IG9mIDxhY3JvbnltPkNBUlA8
 L2Fjcm9ueW0+IGludGVyZmFjZXMgZ29pbmcNCiAJICB1cCBvciBkb3duLCB0
 aGUgJm9zOyBvcGVyYXRpbmcgc3lzdGVtIGdlbmVyYXRlcyBhICZtYW4uZGV2
 ZC44Ow0KLQkgIGV2ZW50LCB3aGljaCBtYWtlcyBpdCBwb3NzaWJsZSB0byB3
 YXRjaCBmb3IgdGhlIHN0YXRlIGNoYW5nZXMNCisJICBldmVudCwgbWFraW5n
 IGl0IHBvc3NpYmxlIHRvIHdhdGNoIGZvciB0aGUgc3RhdGUgY2hhbmdlcw0K
 IAkgIG9uIHRoZSA8YWNyb255bT5DQVJQPC9hY3JvbnltPiBpbnRlcmZhY2Vz
 LiAgQSBzdGF0ZSBjaGFuZ2Ugb24NCiAJICB0aGUgPGFjcm9ueW0+Q0FSUDwv
 YWNyb255bT4gaW50ZXJmYWNlIGlzIGFuIGluZGljYXRpb24gdGhhdA0KLQkg
 IG9uZSBvZiB0aGUgbm9kZXMgZmFpbGVkIG9yIGNhbWUgYmFjayBvbmxpbmUu
 ICBJbiBzdWNoIGEgY2FzZSwNCi0JICBpdCBpcyBwb3NzaWJsZSB0byBydW4g
 YSBwYXJ0aWN1bGFyIHNjcmlwdCB3aGljaCB3aWxsDQotCSAgYXV0b21hdGlj
 YWxseSBoYW5kbGUgdGhlIGZhaWxvdmVyLjwvcGFyYT4NCi0NCi0JPHBhcmE+
 VG8gYmUgYWJsZSB0byBjYXRjaCB0aGUgc3RhdGUgY2hhbmdlcyBvbiB0aGUN
 Ci0JICA8YWNyb255bT5DQVJQPC9hY3JvbnltPiBpbnRlcmZhY2VzLCB0aGUg
 Zm9sbG93aW5nDQotCSAgY29uZmlndXJhdGlvbiBoYXMgdG8gYmUgYWRkZWQg
 dG8gdGhlDQotCSAgPGZpbGVuYW1lPi9ldGMvZGV2ZC5jb25mPC9maWxlbmFt
 ZT4gZmlsZSBvbiBlYWNoIG5vZGU6PC9wYXJhPg0KKwkgIG9uZSBvZiB0aGUg
 bm9kZXMgZmFpbGVkIG9yIGNhbWUgYmFjayBvbmxpbmUuICBUaGVzZSBzdGF0
 ZSBjaGFuZ2UNCisJICBldmVudHMgbWFrZSBpdCBwb3NzaWJsZSB0byBydW4g
 YSBzY3JpcHQgd2hpY2ggd2lsbA0KKwkgIGF1dG9tYXRpY2FsbHkgaGFuZGxl
 IHRoZSBIQVNUIGZhaWxvdmVyLjwvcGFyYT4NCisNCisJPHBhcmE+VG8gYmUg
 YWJsZSB0byBjYXRjaCBzdGF0ZSBjaGFuZ2VzIG9uIHRoZQ0KKwkgIDxhY3Jv
 bnltPkNBUlA8L2Fjcm9ueW0+IGludGVyZmFjZXMsIGFkZCB0aGlzDQorCSAg
 Y29uZmlndXJhdGlvbiB0bw0KKwkgIDxmaWxlbmFtZT4vZXRjL2RldmQuY29u
 ZjwvZmlsZW5hbWU+IG9uIGVhY2ggbm9kZTo8L3BhcmE+DQogDQogCTxwcm9n
 cmFtbGlzdGluZz5ub3RpZnkgMzAgew0KIAltYXRjaCAic3lzdGVtIiAiSUZO
 RVQiOw0KQEAgLTQ0NTYsMTIgKzQ0NTUsMTIgQEANCiAJYWN0aW9uICIvdXNy
 L2xvY2FsL3NiaW4vY2FycC1oYXN0LXN3aXRjaCBzbGF2ZSI7DQogfTs8L3By
 b2dyYW1saXN0aW5nPg0KIA0KLQk8cGFyYT5UbyBwdXQgdGhlIG5ldyBjb25m
 aWd1cmF0aW9uIGludG8gZWZmZWN0LCBydW4gdGhlDQotCSAgZm9sbG93aW5n
 IGNvbW1hbmQgb24gYm90aCBub2Rlczo8L3BhcmE+DQorCTxwYXJhPlJlc3Rh
 cnQgJm1hbi5kZXZkLjg7IG9uIGJvdGggbm9kZXMgdG8gcHV0IHRoZSBuZXcg
 Y29uZmlndXJhdGlvbg0KKwkgIGludG8gZWZmZWN0OjwvcGFyYT4NCiANCiAJ
 PHNjcmVlbj4mcHJvbXB0LnJvb3Q7IDx1c2VyaW5wdXQ+L2V0Yy9yYy5kL2Rl
 dmQgcmVzdGFydDwvdXNlcmlucHV0Pjwvc2NyZWVuPg0KIA0KLQk8cGFyYT5J
 biB0aGUgZXZlbnQgdGhhdCB0aGUgPGRldmljZW5hbWU+Y2FycDA8L2Rldmlj
 ZW5hbWU+DQorCTxwYXJhPldoZW4gdGhlIDxkZXZpY2VuYW1lPmNhcnAwPC9k
 ZXZpY2VuYW1lPg0KIAkgIGludGVyZmFjZSBnb2VzIHVwIG9yIGRvd24gKGku
 ZS4gdGhlIGludGVyZmFjZSBzdGF0ZSBjaGFuZ2VzKSwNCiAJICB0aGUgc3lz
 dGVtIGdlbmVyYXRlcyBhIG5vdGlmaWNhdGlvbiwgYWxsb3dpbmcgdGhlICZt
 YW4uZGV2ZC44Ow0KIAkgIHN1YnN5c3RlbSB0byBydW4gYW4gYXJiaXRyYXJ5
 IHNjcmlwdCwgaW4gdGhpcyBjYXNlDQpAQCAtNDQ3MSw3ICs0NDcwLDcgQEAN
 CiAJICAmbWFuLmRldmQuODsgY29uZmlndXJhdGlvbiwgcGxlYXNlIGNvbnN1
 bHQgdGhlDQogCSAgJm1hbi5kZXZkLmNvbmYuNTsgbWFudWFsIHBhZ2UuPC9w
 YXJhPg0KIA0KLQk8cGFyYT5BbiBleGFtcGxlIG9mIHN1Y2ggYSBzY3JpcHQg
 Y291bGQgYmUgZm9sbG93aW5nOjwvcGFyYT4NCisJPHBhcmE+QW4gZXhhbXBs
 ZSBvZiBzdWNoIGEgc2NyaXB0IGNvdWxkIGJlOjwvcGFyYT4NCiANCiA8cHJv
 Z3JhbWxpc3Rpbmc+IyEvYmluL3NoDQogDQpAQCAtNDU1NywxMyArNDU1Niwx
 MyBAQA0KIAk7Ow0KIGVzYWM8L3Byb2dyYW1saXN0aW5nPg0KIA0KLQk8cGFy
 YT5JbiBhIG51dHNoZWxsLCB0aGUgc2NyaXB0IGRvZXMgdGhlIGZvbGxvd2lu
 ZyB3aGVuIGEgbm9kZQ0KKwk8cGFyYT5JbiBhIG51dHNoZWxsLCB0aGUgc2Ny
 aXB0IHRha2VzIHRoZXNlIGFjdGlvbnMgd2hlbiBhIG5vZGUNCiAJICBiZWNv
 bWVzIDxsaXRlcmFsPm1hc3RlcjwvbGl0ZXJhbD4gLw0KIAkgIDxsaXRlcmFs
 PnByaW1hcnk8L2xpdGVyYWw+OjwvcGFyYT4NCiANCiAJPGl0ZW1pemVkbGlz
 dD4NCiAJICA8bGlzdGl0ZW0+DQotCSAgICA8cGFyYT5Qcm9tb3RlcyB0aGUg
 PGFjcm9ueW0+SEFTVDwvYWNyb255bT4gcG9vbHMgYXMNCisJICAgIDxwYXJh
 PlByb21vdGVzIHRoZSA8YWNyb255bT5IQVNUPC9hY3JvbnltPiBwb29scyB0
 bw0KIAkgICAgICBwcmltYXJ5IG9uIGEgZ2l2ZW4gbm9kZS48L3BhcmE+DQog
 CSAgPC9saXN0aXRlbT4NCiAJICA8bGlzdGl0ZW0+DQpAQCAtNDU3MSw3ICs0
 NTcwLDcgQEANCiAJICAgICAgPGFjcm9ueW0+SEFTVDwvYWNyb255bT4gcG9v
 bC48L3BhcmE+DQogCSAgPC9saXN0aXRlbT4NCiAJICA8bGlzdGl0ZW0+DQot
 CSAgICA8cGFyYT5Nb3VudHMgdGhlIHBvb2xzIGF0IGFwcHJvcHJpYXRlIHBs
 YWNlLjwvcGFyYT4NCisJICAgIDxwYXJhPk1vdW50cyB0aGUgcG9vbHMgYXQg
 YW4gYXBwcm9wcmlhdGUgcGxhY2UuPC9wYXJhPg0KIAkgIDwvbGlzdGl0ZW0+
 DQogCTwvaXRlbWl6ZWRsaXN0Pg0KIA0KQEAgLTQ1OTAsMTUgKzQ1ODksMTUg
 QEANCiANCiAJPGNhdXRpb24+DQogCSAgPHBhcmE+S2VlcCBpbiBtaW5kIHRo
 YXQgdGhpcyBpcyBqdXN0IGFuIGV4YW1wbGUgc2NyaXB0IHdoaWNoDQotCSAg
 ICBzaG91bGQgc2VydmUgYXMgYSBwcm9vZiBvZiBjb25jZXB0IHNvbHV0aW9u
 LiAgSXQgZG9lcyBub3QNCisJICAgIHNob3VsZCBzZXJ2ZSBhcyBhIHByb29m
 IG9mIGNvbmNlcHQuICBJdCBkb2VzIG5vdA0KIAkgICAgaGFuZGxlIGFsbCB0
 aGUgcG9zc2libGUgc2NlbmFyaW9zIGFuZCBjYW4gYmUgZXh0ZW5kZWQgb3IN
 CiAJICAgIGFsdGVyZWQgaW4gYW55IHdheSwgZm9yIGV4YW1wbGUgaXQgY2Fu
 IHN0YXJ0L3N0b3AgcmVxdWlyZWQNCi0JICAgIHNlcnZpY2VzIGV0Yy48L3Bh
 cmE+DQorCSAgICBzZXJ2aWNlcywgZXRjLjwvcGFyYT4NCiAJPC9jYXV0aW9u
 Pg0KIA0KIAk8dGlwPg0KLQkgIDxwYXJhPkZvciB0aGUgcHVycG9zZSBvZiB0
 aGlzIGV4YW1wbGUgd2UgdXNlZCBhIHN0YW5kYXJkIFVGUw0KLQkgICAgZmls
 ZSBzeXN0ZW0uICBJbiBvcmRlciB0byByZWR1Y2UgdGhlIHRpbWUgbmVlZGVk
 IGZvcg0KKwkgIDxwYXJhPkZvciB0aGlzIGV4YW1wbGUsIHdlIHVzZWQgYSBz
 dGFuZGFyZCBVRlMNCisJICAgIGZpbGUgc3lzdGVtLiAgVG8gcmVkdWNlIHRo
 ZSB0aW1lIG5lZWRlZCBmb3INCiAJICAgIHJlY292ZXJ5LCBhIGpvdXJuYWwt
 ZW5hYmxlZCBVRlMgb3IgWkZTIGZpbGUgc3lzdGVtIGNhbg0KIAkgICAgYmUg
 dXNlZC48L3BhcmE+DQogCTwvdGlwPg0KQEAgLTQ2MTUsNDEgKzQ2MTQsNDAg
 QEANCiAgICAgICA8c2VjdDM+DQogCTx0aXRsZT5HZW5lcmFsIFRyb3VibGVz
 aG9vdGluZyBUaXBzPC90aXRsZT4NCiANCi0JPHBhcmE+PGFjcm9ueW0+SEFT
 VDwvYWNyb255bT4gc2hvdWxkIGJlIGdlbmVyYWxseSB3b3JraW5nDQotCSAg
 d2l0aG91dCBhbnkgaXNzdWVzLCBob3dldmVyIGFzIHdpdGggYW55IG90aGVy
 IHNvZnR3YXJlDQorCTxwYXJhPjxhY3JvbnltPkhBU1Q8L2Fjcm9ueW0+IHNo
 b3VsZCBnZW5lcmFsbHkgd29yaw0KKwkgIHdpdGhvdXQgaXNzdWVzLiAgSG93
 ZXZlciwgYXMgd2l0aCBhbnkgb3RoZXIgc29mdHdhcmUNCiAJICBwcm9kdWN0
 LCB0aGVyZSBtYXkgYmUgdGltZXMgd2hlbiBpdCBkb2VzIG5vdCB3b3JrIGFz
 DQogCSAgc3VwcG9zZWQuICBUaGUgc291cmNlcyBvZiB0aGUgcHJvYmxlbXMg
 bWF5IGJlIGRpZmZlcmVudCwgYnV0DQogCSAgdGhlIHJ1bGUgb2YgdGh1bWIg
 aXMgdG8gZW5zdXJlIHRoYXQgdGhlIHRpbWUgaXMgc3luY2hyb25pemVkDQog
 CSAgYmV0d2VlbiBhbGwgbm9kZXMgb2YgdGhlIGNsdXN0ZXIuPC9wYXJhPg0K
 IA0KLQk8cGFyYT5UaGUgZGVidWdnaW5nIGxldmVsIG9mIHRoZSAmbWFuLmhh
 c3RkLjg7IHNob3VsZCBiZQ0KLQkgIGluY3JlYXNlZCB3aGVuIHRyb3VibGVz
 aG9vdGluZyA8YWNyb255bT5IQVNUPC9hY3JvbnltPg0KLQkgIHByb2JsZW1z
 LiAgVGhpcyBjYW4gYmUgYWNjb21wbGlzaGVkIGJ5IHN0YXJ0aW5nIHRoZQ0K
 Kwk8cGFyYT5XaGVuIHRyb3VibGVzaG9vdGluZyA8YWNyb255bT5IQVNUPC9h
 Y3JvbnltPiBwcm9ibGVtcywNCisJICB0aGUgZGVidWdnaW5nIGxldmVsIG9m
 ICZtYW4uaGFzdGQuODsgc2hvdWxkIGJlIGluY3JlYXNlZA0KKwkgIGJ5IHN0
 YXJ0aW5nIHRoZQ0KIAkgICZtYW4uaGFzdGQuODsgZGFlbW9uIHdpdGggdGhl
 IDxsaXRlcmFsPi1kPC9saXRlcmFsPg0KLQkgIGFyZ3VtZW50LiAgTm90ZSwg
 dGhhdCB0aGlzIGFyZ3VtZW50IG1heSBiZSBzcGVjaWZpZWQNCisJICBhcmd1
 bWVudC4gIE5vdGUgdGhhdCB0aGlzIGFyZ3VtZW50IG1heSBiZSBzcGVjaWZp
 ZWQNCiAJICBtdWx0aXBsZSB0aW1lcyB0byBmdXJ0aGVyIGluY3JlYXNlIHRo
 ZSBkZWJ1Z2dpbmcgbGV2ZWwuICBBDQotCSAgbG90IG9mIHVzZWZ1bCBpbmZv
 cm1hdGlvbiBtYXkgYmUgb2J0YWluZWQgdGhpcyB3YXkuICBJdA0KLQkgIHNo
 b3VsZCBiZSBhbHNvIGNvbnNpZGVyZWQgdG8gdXNlIDxsaXRlcmFsPi1GPC9s
 aXRlcmFsPg0KLQkgIGFyZ3VtZW50LCB3aGljaCB3aWxsIHN0YXJ0IHRoZSAm
 bWFuLmhhc3RkLjg7IGRhZW1vbiBpbg0KKwkgIGxvdCBvZiB1c2VmdWwgaW5m
 b3JtYXRpb24gbWF5IGJlIG9idGFpbmVkIHRoaXMgd2F5LiAgQ29uc2lkZXIN
 CisJICBhbHNvIHVzaW5nIHRoZSA8bGl0ZXJhbD4tRjwvbGl0ZXJhbD4NCisJ
 ICBhcmd1bWVudCwgd2hpY2ggc3RhcnRzIHRoZSAmbWFuLmhhc3RkLjg7IGRh
 ZW1vbiBpbiB0aGUNCiAJICBmb3JlZ3JvdW5kLjwvcGFyYT4NCiAgICAgIDwv
 c2VjdDM+DQogDQogICAgICAgPHNlY3QzIGlkPSJkaXNrcy1oYXN0LXNiIj4N
 CiAJPHRpdGxlPlJlY292ZXJpbmcgZnJvbSB0aGUgU3BsaXQtYnJhaW4gQ29u
 ZGl0aW9uPC90aXRsZT4NCiANCi0JPHBhcmE+VGhlIGNvbnNlcXVlbmNlIG9m
 IGEgc2l0dWF0aW9uIHdoZW4gYm90aCBub2RlcyBvZiB0aGUNCi0JICBjbHVz
 dGVyIGFyZSBub3QgYWJsZSB0byBjb21tdW5pY2F0ZSB3aXRoIGVhY2ggb3Ro
 ZXIgYW5kIGJvdGgNCi0JICBhcmUgY29uZmlndXJlZCBhcyBwcmltYXJ5IG5v
 ZGVzIGlzIGNhbGxlZA0KLQkgIDxsaXRlcmFsPnNwbGl0LWJyYWluPC9saXRl
 cmFsPi4gIFRoaXMgaXMgYSBkYW5nZXJvdXMNCisJPHBhcmE+PGxpdGVyYWw+
 U3BsaXQtYnJhaW48L2xpdGVyYWw+IGlzIHdoZW4gdGhlIG5vZGVzIG9mIHRo
 ZQ0KKwkgIGNsdXN0ZXIgYXJlIHVuYWJsZSB0byBjb21tdW5pY2F0ZSB3aXRo
 IGVhY2ggb3RoZXIsIGFuZCBib3RoDQorCSAgYXJlIGNvbmZpZ3VyZWQgYXMg
 cHJpbWFyeS4gIFRoaXMgaXMgYSBkYW5nZXJvdXMNCiAJICBjb25kaXRpb24g
 YmVjYXVzZSBpdCBhbGxvd3MgYm90aCBub2RlcyB0byBtYWtlIGluY29tcGF0
 aWJsZQ0KLQkgIGNoYW5nZXMgdG8gdGhlIGRhdGEuICBUaGlzIHNpdHVhdGlv
 biBoYXMgdG8gYmUgaGFuZGxlZCBieQ0KLQkgIHRoZSBzeXN0ZW0gYWRtaW5p
 c3RyYXRvciBtYW51YWxseS48L3BhcmE+DQorCSAgY2hhbmdlcyB0byB0aGUg
 ZGF0YS4gIFRoaXMgcHJvYmxlbSBtdXN0IGJlIGNvcnJlY3RlZA0KKwkgIG1h
 bnVhbGx5IGJ5IHRoZSBzeXN0ZW0gYWRtaW5pc3RyYXRvci48L3BhcmE+DQog
 DQotCTxwYXJhPkluIG9yZGVyIHRvIGZpeCB0aGlzIHNpdHVhdGlvbiB0aGUg
 YWRtaW5pc3RyYXRvciBoYXMgdG8NCisJPHBhcmE+VGhlIGFkbWluaXN0cmF0
 b3IgbXVzdA0KIAkgIGRlY2lkZSB3aGljaCBub2RlIGhhcyBtb3JlIGltcG9y
 dGFudCBjaGFuZ2VzIChvciBtZXJnZSB0aGVtDQotCSAgbWFudWFsbHkpIGFu
 ZCBsZXQgdGhlIDxhY3JvbnltPkhBU1Q8L2Fjcm9ueW0+IHBlcmZvcm0NCi0J
 ICB0aGUgZnVsbCBzeW5jaHJvbml6YXRpb24gb2YgdGhlIG5vZGUgd2hpY2gg
 aGFzIHRoZSBicm9rZW4NCi0JICBkYXRhLiAgVG8gZG8gdGhpcywgaXNzdWUg
 dGhlIGZvbGxvd2luZyBjb21tYW5kcyBvbiB0aGUgbm9kZQ0KKwkgIG1hbnVh
 bGx5KSBhbmQgbGV0IDxhY3JvbnltPkhBU1Q8L2Fjcm9ueW0+IHBlcmZvcm0N
 CisJICBmdWxsIHN5bmNocm9uaXphdGlvbiBvZiB0aGUgbm9kZSB3aGljaCBo
 YXMgdGhlIGJyb2tlbg0KKwkgIGRhdGEuICBUbyBkbyB0aGlzLCBpc3N1ZSB0
 aGVzZSBjb21tYW5kcyBvbiB0aGUgbm9kZQ0KIAkgIHdoaWNoIG5lZWRzIHRv
 IGJlIHJlc3luY2hyb25pemVkOjwvcGFyYT4NCiANCiAgICAgICAgIDxzY3Jl
 ZW4+JnByb21wdC5yb290OyA8dXNlcmlucHV0Pmhhc3RjdGwgcm9sZSBpbml0
 ICZsdDtyZXNvdXJjZSZndDs8L3VzZXJpbnB1dD4NCg==
 
 ---902635197-795004455-1314058089=:888--

From: Taras Korenko <ds@ukrhub.net>
To: Warren Block <wblock@wonkity.com>
Cc: Benjamin Kaduk <kaduk@mit.edu>, freebsd-doc@freebsd.org,
	freebsd-gnats-submit@freebsd.org
Subject: Re: docs/159897: [patch] improve HAST section of Handbook
Date: Tue, 23 Aug 2011 09:09:36 +0300

 On Mon, Aug 22, 2011 at 06:08:09PM -0600, Warren Block wrote:
 > On Mon, 22 Aug 2011, Benjamin Kaduk wrote:
 > 
 > >On Sun, 21 Aug 2011, Warren Block wrote:
 > >
 > >>On Sat, 20 Aug 2011, Benjamin Kaduk wrote:
 > >>
 > >>>On Thu, 18 Aug 2011, Warren Block wrote:
 > >>>
 > >>>>-	  <para>File system agnostic, thus allowing to use any file
 > >>>>+	  <para>File system agnostic, thus allowing use of any file
 > >>>
 > >>>I think "allowing the use" is better here.
 > >>
 > >>"allowing any" might be even better.
 > >
 > >I don't think that would be correct usage -- "allowing any file system" to 
 > >do what?
 > 
 > Allowing any file system versus allowing only file systems made for 
 > HAST.  Looking at it again, the problem is the word "allowing".  What 
 > this is really saying is: "File system agnostic, compatible with any 
 > file system supported by &os;."
 > 
 
 File system agnostic, thus allowing laying out any file
 system supported by &os;.
 
 -- 
   Best regards,
   Taras Korenko
 

From: Warren Block <wblock@wonkity.com>
To: Taras Korenko <ds@ukrhub.net>
Cc: Benjamin Kaduk <kaduk@mit.edu>, freebsd-doc@freebsd.org,
        freebsd-gnats-submit@freebsd.org
Subject: Re: docs/159897: [patch] improve HAST section of Handbook
Date: Tue, 23 Aug 2011 06:57:14 -0600 (MDT)

 On Tue, 23 Aug 2011, Taras Korenko wrote:
 
 > On Mon, Aug 22, 2011 at 06:08:09PM -0600, Warren Block wrote:
 >> On Mon, 22 Aug 2011, Benjamin Kaduk wrote:
 >>
 >>> On Sun, 21 Aug 2011, Warren Block wrote:
 >>>
 >>>> On Sat, 20 Aug 2011, Benjamin Kaduk wrote:
 >>>>
 >>>>> On Thu, 18 Aug 2011, Warren Block wrote:
 >>>>>
 >>>>>> -	  <para>File system agnostic, thus allowing to use any file
 >>>>>> +	  <para>File system agnostic, thus allowing use of any file
 >>>>>
 >>>>> I think "allowing the use" is better here.
 >>>>
 >>>> "allowing any" might be even better.
 >>>
 >>> I don't think that would be correct usage -- "allowing any file system" to
 >>> do what?
 >>
 >> Allowing any file system versus allowing only file systems made for
 >> HAST.  Looking at it again, the problem is the word "allowing".  What
 >> this is really saying is: "File system agnostic, compatible with any
 >> file system supported by &os;."
 >>
 >
 > File system agnostic, thus allowing laying out any file
 > system supported by &os;.
 
 Another day and now "agnostic" looks wrong.  IMO, the meaning is not 
 "HAST is unsure that file systems exist", but that it operates at a 
 block level and is not even aware of file systems.  More simply, it 
 doesn't care which file system is used.
 
 So my latest proposal for the simplest rewording is
 
 "Works with any file system supported by FreeBSD."

From: Benjamin Kaduk <kaduk@MIT.EDU>
To: Warren Block <wblock@wonkity.com>
Cc: Taras Korenko <ds@ukrhub.net>, freebsd-doc@freebsd.org,
        freebsd-gnats-submit@freebsd.org
Subject: Re: docs/159897: [patch] improve HAST section of Handbook
Date: Tue, 23 Aug 2011 21:04:27 -0400 (EDT)

 On Tue, 23 Aug 2011, Warren Block wrote:
 
 > On Tue, 23 Aug 2011, Taras Korenko wrote:
 >
 >> On Mon, Aug 22, 2011 at 06:08:09PM -0600, Warren Block wrote:
 >>> On Mon, 22 Aug 2011, Benjamin Kaduk wrote:
 >>> 
 >>>> On Sun, 21 Aug 2011, Warren Block wrote:
 >>>> 
 >>>>> On Sat, 20 Aug 2011, Benjamin Kaduk wrote:
 >>>>> 
 >>>>>> On Thu, 18 Aug 2011, Warren Block wrote:
 >>>>>> 
 >>>>>>> -	  <para>File system agnostic, thus allowing to use any file
 >>>>>>> +	  <para>File system agnostic, thus allowing use of any file
 >>>>>> 
 >>>>>> I think "allowing the use" is better here.
 >>>>> 
 >>>>> "allowing any" might be even better.
 >>>> 
 >>>> I don't think that would be correct usage -- "allowing any file system" 
 >>>> to
 >>>> do what?
 >>> 
 >>> Allowing any file system versus allowing only file systems made for
 >>> HAST.  Looking at it again, the problem is the word "allowing".  What
 >>> this is really saying is: "File system agnostic, compatible with any
 >>> file system supported by &os;."
 >>> 
 >> 
 >> File system agnostic, thus allowing laying out any file
 >> system supported by &os;.
 >
 > Another day and now "agnostic" looks wrong.  IMO, the meaning is not "HAST is 
 > unsure that file systems exist", but that it operates at a block level and is 
 > not even aware of file systems.  More simply, it doesn't care which file 
 > system is used.
 >
 > So my latest proposal for the simplest rewording is
 >
 > "Works with any file system supported by FreeBSD."
 
 Filesystem-agnostic is something of a term of art for this sort of thing; 
 I would stick with:
 "File system agnostic; works with any file system supported by FreeBSD."
 (This is where bde comes in and tells me off for condensing filesystem 
 into a single word, per
 http://lists.freebsd.org/pipermail/svn-src-head/2011-June/028709.html )
 
 >>>>> - <para>In order to fix this situation the administrator has to 
 >>>>> + <para>The administrator must
 >>>>>     decide which node has more important changes (or merge them 
 >>>>> -   manually) and let the <acronym>HAST</acronym> perform
 >>>>> +   manually) and let <acronym>HAST</acronym> perform
 >>>>>     the full synchronization of the node which has the broken
 >>>>
 >>>> Just "full synchronization", I think.
 >>>
 >>> Changing "of" to "on" ("full synchronization on the node") also helps a
 >>> bit. 
 >>
 >> I think I still prefer "of", but would not object to "on". 
 >
 > The idea is that "synchronization of the node" is ambiguous about which node
 > is being changed, where "synchronization on the node", er, isn't.
 
 It is "synchronization of the node to the reference state" versus "a 
 synchronization process on the [broken] node to bring it back into a good 
 state".  In going for concision, we necessarily introduce some ambiguity; 
 I'm not equipped to say which one has the greater ambiguity for more 
 people.
 
 Thanks again,
 
 Ben

From: Warren Block <wblock@wonkity.com>
To: Benjamin Kaduk <kaduk@mit.edu>
Cc: Taras Korenko <ds@ukrhub.net>, freebsd-doc@freebsd.org,
        freebsd-gnats-submit@freebsd.org
Subject: Re: docs/159897: [patch] improve HAST section of Handbook
Date: Tue, 23 Aug 2011 19:58:05 -0600 (MDT)

   This message is in MIME format.  The first part should be readable text,
   while the remaining parts are likely unreadable without MIME-aware tools.
 
 ---902635197-1035508638-1314151085=:58116
 Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed
 
 On Tue, 23 Aug 2011, Benjamin Kaduk wrote:
 
 >> So my latest proposal for the simplest rewording is
 >> 
 >> "Works with any file system supported by FreeBSD."
 >
 > Filesystem-agnostic is something of a term of art for this sort of thing; I 
 > would stick with:
 > "File system agnostic; works with any file system supported by FreeBSD."
 
 Okay.  Patch with that change attached.  Thanks!
 ---902635197-1035508638-1314151085=:58116
 Content-Type: TEXT/PLAIN; charset=US-ASCII; name=patch-handbook-hast-3.diff.txt
 Content-Transfer-Encoding: BASE64
 Content-ID: <alpine.BSF.2.00.1108231958050.58116@wonkity.com>
 Content-Description: 
 Content-Disposition: attachment; filename=patch-handbook-hast-3.diff.txt
 
 LS0tIGVuX1VTLklTTzg4NTktMS9ib29rcy9oYW5kYm9vay9kaXNrcy9jaGFw
 dGVyLnNnbWwub3JpZwkyMDExLTA1LTI3IDA0OjIyOjU1LjAwMDAwMDAwMCAt
 MDYwMA0KKysrIGVuX1VTLklTTzg4NTktMS9ib29rcy9oYW5kYm9vay9kaXNr
 cy9jaGFwdGVyLnNnbWwJMjAxMS0wOC0yMyAxOTo1NTo1MS4wMDAwMDAwMDAg
 LTA2MDANCkBAIC00MDM4LDcgKzQwMzgsNyBAQA0KICAgICA8c2VjdDI+DQog
 ICAgICAgPHRpdGxlPlN5bm9wc2lzPC90aXRsZT4NCiANCi0gICAgICA8cGFy
 YT5IaWdoLWF2YWlsYWJpbGl0eSBpcyBvbmUgb2YgdGhlIG1haW4gcmVxdWly
 ZW1lbnRzIGluIHNlcmlvdXMNCisgICAgICA8cGFyYT5IaWdoIGF2YWlsYWJp
 bGl0eSBpcyBvbmUgb2YgdGhlIG1haW4gcmVxdWlyZW1lbnRzIGluIHNlcmlv
 dXMNCiAJYnVzaW5lc3MgYXBwbGljYXRpb25zIGFuZCBoaWdobHktYXZhaWxh
 YmxlIHN0b3JhZ2UgaXMgYSBrZXkNCiAJY29tcG9uZW50IGluIHN1Y2ggZW52
 aXJvbm1lbnRzLiAgSGlnaGx5IEF2YWlsYWJsZSBTVG9yYWdlLCBvcg0KIAk8
 YWNyb255bT5IQVNUPHJlbWFyayByb2xlPSJhY3JvbnltIj5IaWdobHkgQXZh
 aWxhYmxlDQpAQCAtNDEwOSw3ICs0MTA5LDcgQEANCiAJICBkcml2ZXMuPC9w
 YXJhPg0KIAk8L2xpc3RpdGVtPg0KIAk8bGlzdGl0ZW0+DQotCSAgPHBhcmE+
 RmlsZSBzeXN0ZW0gYWdub3N0aWMsIHRodXMgYWxsb3dpbmcgdG8gdXNlIGFu
 eSBmaWxlDQorCSAgPHBhcmE+RmlsZSBzeXN0ZW0gYWdub3N0aWM7IHdvcmtz
 IHdpdGggd2l0aCBhbnkgZmlsZQ0KIAkgICAgc3lzdGVtIHN1cHBvcnRlZCBi
 eSAmb3M7LjwvcGFyYT4NCiAJPC9saXN0aXRlbT4NCiAJPGxpc3RpdGVtPg0K
 QEAgLTQxNTIsNyArNDE1Miw3IEBADQogCXRvdGFsLjwvcGFyYT4NCiAgICAg
 ICA8L25vdGU+DQogDQotICAgICAgPHBhcmE+U2luY2UgdGhlIDxhY3Jvbnlt
 PkhBU1Q8L2Fjcm9ueW0+IHdvcmtzIGluDQorICAgICAgPHBhcmE+U2luY2Ug
 PGFjcm9ueW0+SEFTVDwvYWNyb255bT4gd29ya3MgaW4gYQ0KIAlwcmltYXJ5
 LXNlY29uZGFyeSBjb25maWd1cmF0aW9uLCBpdCBhbGxvd3Mgb25seSBvbmUg
 b2YgdGhlDQogCWNsdXN0ZXIgbm9kZXMgdG8gYmUgYWN0aXZlIGF0IGFueSBn
 aXZlbiB0aW1lLiAgVGhlDQogCTxsaXRlcmFsPnByaW1hcnk8L2xpdGVyYWw+
 IG5vZGUsIGFsc28gY2FsbGVkDQpAQCAtNDE3NSw3ICs0MTc1LDcgQEANCiAg
 ICAgICA8L2l0ZW1pemVkbGlzdD4NCiANCiAgICAgICA8cGFyYT48YWNyb255
 bT5IQVNUPC9hY3JvbnltPiBvcGVyYXRlcyBzeW5jaHJvbm91c2x5IG9uIGEg
 YmxvY2sNCi0JbGV2ZWwsIHdoaWNoIG1ha2VzIGl0IHRyYW5zcGFyZW50IGZv
 ciBmaWxlIHN5c3RlbXMgYW5kDQorCWxldmVsLCBtYWtpbmcgaXQgdHJhbnNw
 YXJlbnQgdG8gZmlsZSBzeXN0ZW1zIGFuZA0KIAlhcHBsaWNhdGlvbnMuICA8
 YWNyb255bT5IQVNUPC9hY3JvbnltPiBwcm92aWRlcyByZWd1bGFyIEdFT00N
 CiAJcHJvdmlkZXJzIGluIDxmaWxlbmFtZSBjbGFzcz0iZGlyZWN0b3J5Ij4v
 ZGV2L2hhc3QvPC9maWxlbmFtZT4NCiAJZGlyZWN0b3J5IGZvciB1c2UgYnkg
 b3RoZXIgdG9vbHMgb3IgYXBwbGljYXRpb25zLCB0aHVzIHRoZXJlIGlzDQpA
 QCAtNDI1Miw3ICs0MjUyLDcgQEANCiAJRm9yIHN0cmlwcGVkLWRvd24gc3lz
 dGVtcywgbWFrZSBzdXJlIHRoaXMgbW9kdWxlIGlzIGF2YWlsYWJsZS4NCiAJ
 QWx0ZXJuYXRpdmVseSwgaXQgaXMgcG9zc2libGUgdG8gYnVpbGQNCiAJPGxp
 dGVyYWw+R0VPTV9HQVRFPC9saXRlcmFsPiBzdXBwb3J0IGludG8gdGhlIGtl
 cm5lbA0KLQlzdGF0aWNhbGx5LCBieSBhZGRpbmcgdGhlIGZvbGxvd2luZyBs
 aW5lIHRvIHRoZSBjdXN0b20ga2VybmVsDQorCXN0YXRpY2FsbHksIGJ5IGFk
 ZGluZyB0aGlzIGxpbmUgdG8gdGhlIGN1c3RvbSBrZXJuZWwNCiAJY29uZmln
 dXJhdGlvbiBmaWxlOjwvcGFyYT4NCiANCiAgICAgICA8cHJvZ3JhbWxpc3Rp
 bmc+b3B0aW9ucwlHRU9NX0dBVEU8L3Byb2dyYW1saXN0aW5nPg0KQEAgLTQy
 OTAsMTAgKzQyOTAsMTAgQEANCiAJICBjbGFzcz0iZGlyZWN0b3J5Ij4vZGV2
 L2hhc3QvPC9maWxlbmFtZT4pIHdpbGwgYmUgY2FsbGVkDQogCTxmaWxlbmFt
 ZT48cmVwbGFjZWFibGU+dGVzdDwvcmVwbGFjZWFibGU+PC9maWxlbmFtZT4u
 PC9wYXJhPg0KIA0KLSAgICAgIDxwYXJhPlRoZSBjb25maWd1cmF0aW9uIG9m
 IDxhY3JvbnltPkhBU1Q8L2Fjcm9ueW0+IGlzIGJlaW5nIGRvbmUNCisgICAg
 ICA8cGFyYT5Db25maWd1cmF0aW9uIG9mIDxhY3JvbnltPkhBU1Q8L2Fjcm9u
 eW0+IGlzIGRvbmUNCiAJaW4gdGhlIDxmaWxlbmFtZT4vZXRjL2hhc3QuY29u
 ZjwvZmlsZW5hbWU+IGZpbGUuICBUaGlzIGZpbGUNCiAJc2hvdWxkIGJlIHRo
 ZSBzYW1lIG9uIGJvdGggbm9kZXMuICBUaGUgc2ltcGxlc3QgY29uZmlndXJh
 dGlvbg0KLQlwb3NzaWJsZSBpcyBmb2xsb3dpbmc6PC9wYXJhPg0KKwlwb3Nz
 aWJsZSBpczo8L3BhcmE+DQogDQogICAgICAgPHByb2dyYW1saXN0aW5nPnJl
 c291cmNlIHRlc3Qgew0KIAlvbiBoYXN0YSB7DQpAQCAtNDMxNyw5ICs0MzE3
 LDkgQEANCiAJICBhbHRlcm5hdGl2ZWx5IGluIHRoZSBsb2NhbCA8YWNyb255
 bT5ETlM8L2Fjcm9ueW0+LjwvcGFyYT4NCiAgICAgICA8L3RpcD4NCiANCi0g
 ICAgICA8cGFyYT5Ob3cgdGhhdCB0aGUgY29uZmlndXJhdGlvbiBleGlzdHMg
 b24gYm90aCBub2RlcywgaXQgaXMNCi0JcG9zc2libGUgdG8gY3JlYXRlIHRo
 ZSA8YWNyb255bT5IQVNUPC9hY3JvbnltPiBwb29sLiAgUnVuIHRoZQ0KLQlm
 b2xsb3dpbmcgY29tbWFuZHMgb24gYm90aCBub2RlcyB0byBwbGFjZSB0aGUg
 aW5pdGlhbCBtZXRhZGF0YQ0KKyAgICAgIDxwYXJhPk5vdyB0aGF0IHRoZSBj
 b25maWd1cmF0aW9uIGV4aXN0cyBvbiBib3RoIG5vZGVzLA0KKwl0aGUgPGFj
 cm9ueW0+SEFTVDwvYWNyb255bT4gcG9vbCBjYW4gYmUgY3JlYXRlZC4gIFJ1
 biB0aGVzZQ0KKwljb21tYW5kcyBvbiBib3RoIG5vZGVzIHRvIHBsYWNlIHRo
 ZSBpbml0aWFsIG1ldGFkYXRhDQogCW9udG8gdGhlIGxvY2FsIGRpc2ssIGFu
 ZCBzdGFydCB0aGUgJm1hbi5oYXN0ZC44OyBkYWVtb246PC9wYXJhPg0KIA0K
 ICAgICAgIDxzY3JlZW4+JnByb21wdC5yb290OyA8dXNlcmlucHV0Pmhhc3Rj
 dGwgY3JlYXRlIHRlc3Q8L3VzZXJpbnB1dD4NCkBAIC00MzM0LDUyICs0MzM0
 LDUyIEBADQogCSAgYXZhaWxhYmxlLjwvcGFyYT4NCiAgICAgICA8L25vdGU+
 DQogDQotICAgICAgPHBhcmE+SEFTVCBpcyBub3QgcmVzcG9uc2libGUgZm9y
 IHNlbGVjdGluZyBub2RlJ3Mgcm9sZQ0KLQkoPGxpdGVyYWw+cHJpbWFyeTwv
 bGl0ZXJhbD4gb3IgPGxpdGVyYWw+c2Vjb25kYXJ5PC9saXRlcmFsPikuDQot
 CU5vZGUncyByb2xlIGhhcyB0byBiZSBjb25maWd1cmVkIGJ5IGFuIGFkbWlu
 aXN0cmF0b3Igb3Igb3RoZXINCi0Jc29mdHdhcmUgbGlrZSA8YXBwbGljYXRp
 b24+SGVhcnRiZWF0PC9hcHBsaWNhdGlvbj4gdXNpbmcgdGhlDQorICAgICAg
 PHBhcmE+QSBIQVNUIG5vZGUncyByb2xlICg8bGl0ZXJhbD5wcmltYXJ5PC9s
 aXRlcmFsPiBvcg0KKyAgICAgICAgPGxpdGVyYWw+c2Vjb25kYXJ5PC9saXRl
 cmFsPikgaXMgc2VsZWN0ZWQgYnkgYW4gYWRtaW5pc3RyYXRvcg0KKyAgICAg
 ICAgb3Igb3RoZXINCisgICAgICAgIHNvZnR3YXJlIGxpa2UgPGFwcGxpY2F0
 aW9uPkhlYXJ0YmVhdDwvYXBwbGljYXRpb24+IHVzaW5nIHRoZQ0KIAkmbWFu
 Lmhhc3RjdGwuODsgdXRpbGl0eS4gIE1vdmUgdG8gdGhlIHByaW1hcnkgbm9k
 ZQ0KIAkoPGxpdGVyYWw+PHJlcGxhY2VhYmxlPmhhc3RhPC9yZXBsYWNlYWJs
 ZT48L2xpdGVyYWw+KSBhbmQNCi0JaXNzdWUgdGhlIGZvbGxvd2luZyBjb21t
 YW5kOjwvcGFyYT4NCisJaXNzdWUgdGhpcyBjb21tYW5kOjwvcGFyYT4NCiAN
 CiAgICAgICA8c2NyZWVuPiZwcm9tcHQucm9vdDsgPHVzZXJpbnB1dD5oYXN0
 Y3RsIHJvbGUgcHJpbWFyeSB0ZXN0PC91c2VyaW5wdXQ+PC9zY3JlZW4+DQog
 DQotICAgICAgPHBhcmE+U2ltaWxhcmx5LCBydW4gdGhlIGZvbGxvd2luZyBj
 b21tYW5kIG9uIHRoZSBzZWNvbmRhcnkgbm9kZQ0KKyAgICAgIDxwYXJhPlNp
 bWlsYXJseSwgcnVuIHRoaXMgY29tbWFuZCBvbiB0aGUgc2Vjb25kYXJ5IG5v
 ZGUNCiAJKDxsaXRlcmFsPjxyZXBsYWNlYWJsZT5oYXN0YjwvcmVwbGFjZWFi
 bGU+PC9saXRlcmFsPik6PC9wYXJhPg0KIA0KICAgICAgIDxzY3JlZW4+JnBy
 b21wdC5yb290OyA8dXNlcmlucHV0Pmhhc3RjdGwgcm9sZSBzZWNvbmRhcnkg
 dGVzdDwvdXNlcmlucHV0Pjwvc2NyZWVuPg0KIA0KICAgICAgIDxjYXV0aW9u
 Pg0KLQk8cGFyYT5JdCBtYXkgaGFwcGVuIHRoYXQgYm90aCBvZiB0aGUgbm9k
 ZXMgYXJlIG5vdCBhYmxlIHRvDQotCSAgY29tbXVuaWNhdGUgd2l0aCBlYWNo
 IG90aGVyIGFuZCBib3RoIGFyZSBjb25maWd1cmVkIGFzDQotCSAgcHJpbWFy
 eSBub2RlczsgdGhlIGNvbnNlcXVlbmNlIG9mIHRoaXMgY29uZGl0aW9uIGlz
 IGNhbGxlZA0KLQkgIDxsaXRlcmFsPnNwbGl0LWJyYWluPC9saXRlcmFsPi4g
 IEluIG9yZGVyIHRvIHRyb3VibGVzaG9vdA0KKwk8cGFyYT5XaGVuIHRoZSBu
 b2RlcyBhcmUgdW5hYmxlIHRvDQorCSAgY29tbXVuaWNhdGUgd2l0aCBlYWNo
 IG90aGVyLCBhbmQgYm90aCBhcmUgY29uZmlndXJlZCBhcw0KKwkgIHByaW1h
 cnkgbm9kZXMsIHRoZSBjb25kaXRpb24gaXMgY2FsbGVkDQorCSAgPGxpdGVy
 YWw+c3BsaXQtYnJhaW48L2xpdGVyYWw+LiAgVG8gdHJvdWJsZXNob290DQog
 CSAgdGhpcyBzaXR1YXRpb24sIGZvbGxvdyB0aGUgc3RlcHMgZGVzY3JpYmVk
 IGluIDx4cmVmDQogCSAgbGlua2VuZD0iZGlza3MtaGFzdC1zYiI+LjwvcGFy
 YT4NCiAgICAgICA8L2NhdXRpb24+DQogDQotICAgICAgPHBhcmE+SXQgaXMg
 cG9zc2libGUgdG8gdmVyaWZ5IHRoZSByZXN1bHQgd2l0aCB0aGUNCisgICAg
 ICA8cGFyYT5WZXJpZnkgdGhlIHJlc3VsdCB3aXRoIHRoZQ0KIAkmbWFuLmhh
 c3RjdGwuODsgdXRpbGl0eSBvbiBlYWNoIG5vZGU6PC9wYXJhPg0KIA0KICAg
 ICAgIDxzY3JlZW4+JnByb21wdC5yb290OyA8dXNlcmlucHV0Pmhhc3RjdGwg
 c3RhdHVzIHRlc3Q8L3VzZXJpbnB1dD48L3NjcmVlbj4NCiANCi0gICAgICA8
 cGFyYT5UaGUgaW1wb3J0YW50IHRleHQgaXMgdGhlIDxsaXRlcmFsPnN0YXR1
 czwvbGl0ZXJhbD4gbGluZQ0KLQlmcm9tIGl0cyBvdXRwdXQgYW5kIGl0IHNo
 b3VsZCBzYXkgPGxpdGVyYWw+Y29tcGxldGU8L2xpdGVyYWw+DQorICAgICAg
 PHBhcmE+VGhlIGltcG9ydGFudCB0ZXh0IGlzIHRoZSA8bGl0ZXJhbD5zdGF0
 dXM8L2xpdGVyYWw+IGxpbmUsDQorCXdoaWNoIHNob3VsZCBzYXkgPGxpdGVy
 YWw+Y29tcGxldGU8L2xpdGVyYWw+DQogCW9uIGVhY2ggb2YgdGhlIG5vZGVz
 LiAgSWYgaXQgc2F5cyA8bGl0ZXJhbD5kZWdyYWRlZDwvbGl0ZXJhbD4sDQog
 CXNvbWV0aGluZyB3ZW50IHdyb25nLiAgQXQgdGhpcyBwb2ludCwgdGhlIHN5
 bmNocm9uaXphdGlvbg0KIAliZXR3ZWVuIHRoZSBub2RlcyBoYXMgYWxyZWFk
 eSBzdGFydGVkLiAgVGhlIHN5bmNocm9uaXphdGlvbg0KLQljb21wbGV0ZXMg
 d2hlbiB0aGUgPGNvbW1hbmQ+aGFzdGN0bCBzdGF0dXM8L2NvbW1hbmQ+IGNv
 bW1hbmQNCisJY29tcGxldGVzIHdoZW4gPGNvbW1hbmQ+aGFzdGN0bCBzdGF0
 dXM8L2NvbW1hbmQ+DQogCXJlcG9ydHMgMCBieXRlcyBvZiA8bGl0ZXJhbD5k
 aXJ0eTwvbGl0ZXJhbD4gZXh0ZW50cy48L3BhcmE+DQogDQogDQotICAgICAg
 PHBhcmE+VGhlIGxhc3Qgc3RlcCBpcyB0byBjcmVhdGUgYSBmaWxlc3lzdGVt
 IG9uIHRoZQ0KKyAgICAgIDxwYXJhPlRoZSBuZXh0IHN0ZXAgaXMgdG8gY3Jl
 YXRlIGEgZmlsZXN5c3RlbSBvbiB0aGUNCiAJPGRldmljZW5hbWU+L2Rldi9o
 YXN0LzxyZXBsYWNlYWJsZT50ZXN0PC9yZXBsYWNlYWJsZT48L2RldmljZW5h
 bWU+DQotCUdFT00gcHJvdmlkZXIgYW5kIG1vdW50IGl0LiAgVGhpcyBoYXMg
 dG8gYmUgZG9uZSBvbiB0aGUNCi0JPGxpdGVyYWw+cHJpbWFyeTwvbGl0ZXJh
 bD4gbm9kZSAoYXMgdGhlDQorCUdFT00gcHJvdmlkZXIgYW5kIG1vdW50IGl0
 LiAgVGhpcyBtdXN0IGJlIGRvbmUgb24gdGhlDQorCTxsaXRlcmFsPnByaW1h
 cnk8L2xpdGVyYWw+IG5vZGUsIGFzDQogCTxmaWxlbmFtZT4vZGV2L2hhc3Qv
 PHJlcGxhY2VhYmxlPnRlc3Q8L3JlcGxhY2VhYmxlPjwvZmlsZW5hbWU+DQot
 CWFwcGVhcnMgb25seSBvbiB0aGUgPGxpdGVyYWw+cHJpbWFyeTwvbGl0ZXJh
 bD4gbm9kZSksIGFuZA0KLQlpdCBjYW4gdGFrZSBhIGZldyBtaW51dGVzIGRl
 cGVuZGluZyBvbiB0aGUgc2l6ZSBvZiB0aGUgaGFyZA0KLQlkcml2ZTo8L3Bh
 cmE+DQorCWFwcGVhcnMgb25seSBvbiB0aGUgPGxpdGVyYWw+cHJpbWFyeTwv
 bGl0ZXJhbD4gbm9kZS4NCisJQ3JlYXRpbmcgdGhlIGZpbGVzeXN0ZW0gY2Fu
 IHRha2UgYSBmZXcgbWludXRlcywgZGVwZW5kaW5nIG9uIHRoZQ0KKwlzaXpl
 IG9mIHRoZSBoYXJkIGRyaXZlOjwvcGFyYT4NCiANCiAgICAgICA8c2NyZWVu
 PiZwcm9tcHQucm9vdDsgPHVzZXJpbnB1dD5uZXdmcyAtVSAvZGV2L2hhc3Qv
 dGVzdDwvdXNlcmlucHV0Pg0KICZwcm9tcHQucm9vdDsgPHVzZXJpbnB1dD5t
 a2RpciAvaGFzdC90ZXN0PC91c2VyaW5wdXQ+DQpAQCAtNDM4Nyw5ICs0Mzg3
 LDkgQEANCiANCiAgICAgICA8cGFyYT5PbmNlIHRoZSA8YWNyb255bT5IQVNU
 PC9hY3JvbnltPiBmcmFtZXdvcmsgaXMgY29uZmlndXJlZA0KIAlwcm9wZXJs
 eSwgdGhlIGZpbmFsIHN0ZXAgaXMgdG8gbWFrZSBzdXJlIHRoYXQNCi0JPGFj
 cm9ueW0+SEFTVDwvYWNyb255bT4gaXMgc3RhcnRlZCBkdXJpbmcgdGhlIHN5
 c3RlbSBib290IHRpbWUNCi0JYXV0b21hdGljYWxseS4gIFRoZSBmb2xsb3dp
 bmcgbGluZSBzaG91bGQgYmUgYWRkZWQgdG8gdGhlDQotCTxmaWxlbmFtZT4v
 ZXRjL3JjLmNvbmY8L2ZpbGVuYW1lPiBmaWxlOjwvcGFyYT4NCisJPGFjcm9u
 eW0+SEFTVDwvYWNyb255bT4gaXMgc3RhcnRlZCBhdXRvbWF0aWNhbGx5IGR1
 cmluZyB0aGUgc3lzdGVtDQorCWJvb3QuICBBZGQgdGhpcyBsaW5lIHRvDQor
 CTxmaWxlbmFtZT4vZXRjL3JjLmNvbmY8L2ZpbGVuYW1lPjo8L3BhcmE+DQog
 DQogICAgICAgPHByb2dyYW1saXN0aW5nPmhhc3RkX2VuYWJsZT0iWUVTIjwv
 cHJvZ3JhbWxpc3Rpbmc+DQogDQpAQCAtNDM5NywyNiArNDM5NywyNSBAQA0K
 IAk8dGl0bGU+RmFpbG92ZXIgQ29uZmlndXJhdGlvbjwvdGl0bGU+DQogDQog
 CTxwYXJhPlRoZSBnb2FsIG9mIHRoaXMgZXhhbXBsZSBpcyB0byBidWlsZCBh
 IHJvYnVzdCBzdG9yYWdlDQotCSAgc3lzdGVtIHdoaWNoIGlzIHJlc2lzdGFu
 dCBmcm9tIHRoZSBmYWlsdXJlcyBvZiBhbnkgZ2l2ZW4gbm9kZS4NCi0JICBU
 aGUga2V5IHRhc2sgaGVyZSBpcyB0byByZW1lZHkgYSBzY2VuYXJpbyB3aGVu
 IGENCi0JICA8bGl0ZXJhbD5wcmltYXJ5PC9saXRlcmFsPiBub2RlIG9mIHRo
 ZSBjbHVzdGVyIGZhaWxzLiAgU2hvdWxkDQotCSAgaXQgaGFwcGVuLCB0aGUg
 PGxpdGVyYWw+c2Vjb25kYXJ5PC9saXRlcmFsPiBub2RlIGlzIHRoZXJlIHRv
 DQorCSAgc3lzdGVtIHdoaWNoIGlzIHJlc2lzdGFudCB0byB0aGUgZmFpbHVy
 ZSBvZiBhbnkgZ2l2ZW4gbm9kZS4NCisJICBUaGUgc2NlbmFyaW8gaXMgdGhh
 dCBhDQorCSAgPGxpdGVyYWw+cHJpbWFyeTwvbGl0ZXJhbD4gbm9kZSBvZiB0
 aGUgY2x1c3RlciBmYWlscy4gIElmDQorCSAgdGhpcyBoYXBwZW5zLCB0aGUg
 PGxpdGVyYWw+c2Vjb25kYXJ5PC9saXRlcmFsPiBub2RlIGlzIHRoZXJlIHRv
 DQogCSAgdGFrZSBvdmVyIHNlYW1sZXNzbHksIGNoZWNrIGFuZCBtb3VudCB0
 aGUgZmlsZSBzeXN0ZW0sIGFuZA0KIAkgIGNvbnRpbnVlIHRvIHdvcmsgd2l0
 aG91dCBtaXNzaW5nIGEgc2luZ2xlIGJpdCBvZiBkYXRhLjwvcGFyYT4NCiAN
 Ci0JPHBhcmE+SW4gb3JkZXIgdG8gYWNjb21wbGlzaCB0aGlzIHRhc2ssIGl0
 IHdpbGwgYmUgcmVxdWlyZWQgdG8NCi0JICB1dGlsaXplIGFub3RoZXIgZmVh
 dHVyZSBhdmFpbGFibGUgdW5kZXIgJm9zOyB3aGljaCBwcm92aWRlcw0KKwk8
 cGFyYT5UbyBhY2NvbXBsaXNoIHRoaXMgdGFzaywgYW5vdGhlciAmb3M7IGZl
 YXR1cmUgcHJvdmlkZXMNCiAJICBmb3IgYXV0b21hdGljIGZhaWxvdmVyIG9u
 IHRoZSBJUCBsYXllciAmbWRhc2g7DQotCSAgPGFjcm9ueW0+Q0FSUDwvYWNy
 b255bT4uICA8YWNyb255bT5DQVJQPC9hY3JvbnltPiBzdGFuZHMgZm9yDQot
 CSAgQ29tbW9uIEFkZHJlc3MgUmVkdW5kYW5jeSBQcm90b2NvbCBhbmQgYWxs
 b3dzIG11bHRpcGxlIGhvc3RzDQorCSAgPGFjcm9ueW0+Q0FSUDwvYWNyb255
 bT4uICA8YWNyb255bT5DQVJQPC9hY3JvbnltPiAoQ29tbW9uIEFkZHJlc3MN
 CisJICBSZWR1bmRhbmN5IFByb3RvY29sKSBhbGxvd3MgbXVsdGlwbGUgaG9z
 dHMNCiAJICBvbiB0aGUgc2FtZSBuZXR3b3JrIHNlZ21lbnQgdG8gc2hhcmUg
 YW4gSVAgYWRkcmVzcy4gIFNldCB1cA0KICAJICA8YWNyb255bT5DQVJQPC9h
 Y3JvbnltPiBvbiBib3RoIG5vZGVzIG9mIHRoZSBjbHVzdGVyIGFjY29yZGlu
 Zw0KIAkgIHRvIHRoZSBkb2N1bWVudGF0aW9uIGF2YWlsYWJsZSBpbiA8eHJl
 ZiBsaW5rZW5kPSJjYXJwIj4uDQotCSAgQWZ0ZXIgY29tcGxldGluZyB0aGlz
 IHRhc2ssIGVhY2ggbm9kZSBzaG91bGQgaGF2ZSBpdHMgb3duDQorCSAgQWZ0
 ZXIgc2V0dXAsIGVhY2ggbm9kZSB3aWxsIGhhdmUgaXRzIG93bg0KIAkgIDxk
 ZXZpY2VuYW1lPmNhcnAwPC9kZXZpY2VuYW1lPiBpbnRlcmZhY2Ugd2l0aCBh
 IHNoYXJlZCBJUA0KIAkgIGFkZHJlc3MgPHJlcGxhY2VhYmxlPjE3Mi4xNi4w
 LjI1NDwvcmVwbGFjZWFibGU+Lg0KLQkgIE9idmlvdXNseSwgdGhlIHByaW1h
 cnkgPGFjcm9ueW0+SEFTVDwvYWNyb255bT4gbm9kZSBvZiB0aGUNCi0JICBj
 bHVzdGVyIGhhcyB0byBiZSB0aGUgbWFzdGVyIDxhY3JvbnltPkNBUlA8L2Fj
 cm9ueW0+DQorCSAgVGhlIHByaW1hcnkgPGFjcm9ueW0+SEFTVDwvYWNyb255
 bT4gbm9kZSBvZiB0aGUNCisJICBjbHVzdGVyIG11c3QgYmUgdGhlIG1hc3Rl
 ciA8YWNyb255bT5DQVJQPC9hY3JvbnltPg0KIAkgIG5vZGUuPC9wYXJhPg0K
 IA0KIAk8cGFyYT5UaGUgPGFjcm9ueW0+SEFTVDwvYWNyb255bT4gcG9vbCBj
 cmVhdGVkIGluIHRoZSBwcmV2aW91cw0KQEAgLTQ0MzAsMTcgKzQ0MjksMTcg
 QEANCiANCiAJPHBhcmE+SW4gdGhlIGV2ZW50IG9mIDxhY3JvbnltPkNBUlA8
 L2Fjcm9ueW0+IGludGVyZmFjZXMgZ29pbmcNCiAJICB1cCBvciBkb3duLCB0
 aGUgJm9zOyBvcGVyYXRpbmcgc3lzdGVtIGdlbmVyYXRlcyBhICZtYW4uZGV2
 ZC44Ow0KLQkgIGV2ZW50LCB3aGljaCBtYWtlcyBpdCBwb3NzaWJsZSB0byB3
 YXRjaCBmb3IgdGhlIHN0YXRlIGNoYW5nZXMNCisJICBldmVudCwgbWFraW5n
 IGl0IHBvc3NpYmxlIHRvIHdhdGNoIGZvciB0aGUgc3RhdGUgY2hhbmdlcw0K
 IAkgIG9uIHRoZSA8YWNyb255bT5DQVJQPC9hY3JvbnltPiBpbnRlcmZhY2Vz
 LiAgQSBzdGF0ZSBjaGFuZ2Ugb24NCiAJICB0aGUgPGFjcm9ueW0+Q0FSUDwv
 YWNyb255bT4gaW50ZXJmYWNlIGlzIGFuIGluZGljYXRpb24gdGhhdA0KLQkg
 IG9uZSBvZiB0aGUgbm9kZXMgZmFpbGVkIG9yIGNhbWUgYmFjayBvbmxpbmUu
 ICBJbiBzdWNoIGEgY2FzZSwNCi0JICBpdCBpcyBwb3NzaWJsZSB0byBydW4g
 YSBwYXJ0aWN1bGFyIHNjcmlwdCB3aGljaCB3aWxsDQotCSAgYXV0b21hdGlj
 YWxseSBoYW5kbGUgdGhlIGZhaWxvdmVyLjwvcGFyYT4NCi0NCi0JPHBhcmE+
 VG8gYmUgYWJsZSB0byBjYXRjaCB0aGUgc3RhdGUgY2hhbmdlcyBvbiB0aGUN
 Ci0JICA8YWNyb255bT5DQVJQPC9hY3JvbnltPiBpbnRlcmZhY2VzLCB0aGUg
 Zm9sbG93aW5nDQotCSAgY29uZmlndXJhdGlvbiBoYXMgdG8gYmUgYWRkZWQg
 dG8gdGhlDQotCSAgPGZpbGVuYW1lPi9ldGMvZGV2ZC5jb25mPC9maWxlbmFt
 ZT4gZmlsZSBvbiBlYWNoIG5vZGU6PC9wYXJhPg0KKwkgIG9uZSBvZiB0aGUg
 bm9kZXMgZmFpbGVkIG9yIGNhbWUgYmFjayBvbmxpbmUuICBUaGVzZSBzdGF0
 ZSBjaGFuZ2UNCisJICBldmVudHMgbWFrZSBpdCBwb3NzaWJsZSB0byBydW4g
 YSBzY3JpcHQgd2hpY2ggd2lsbA0KKwkgIGF1dG9tYXRpY2FsbHkgaGFuZGxl
 IHRoZSBIQVNUIGZhaWxvdmVyLjwvcGFyYT4NCisNCisJPHBhcmE+VG8gYmUg
 YWJsZSB0byBjYXRjaCBzdGF0ZSBjaGFuZ2VzIG9uIHRoZQ0KKwkgIDxhY3Jv
 bnltPkNBUlA8L2Fjcm9ueW0+IGludGVyZmFjZXMsIGFkZCB0aGlzDQorCSAg
 Y29uZmlndXJhdGlvbiB0bw0KKwkgIDxmaWxlbmFtZT4vZXRjL2RldmQuY29u
 ZjwvZmlsZW5hbWU+IG9uIGVhY2ggbm9kZTo8L3BhcmE+DQogDQogCTxwcm9n
 cmFtbGlzdGluZz5ub3RpZnkgMzAgew0KIAltYXRjaCAic3lzdGVtIiAiSUZO
 RVQiOw0KQEAgLTQ0NTYsMTIgKzQ0NTUsMTIgQEANCiAJYWN0aW9uICIvdXNy
 L2xvY2FsL3NiaW4vY2FycC1oYXN0LXN3aXRjaCBzbGF2ZSI7DQogfTs8L3By
 b2dyYW1saXN0aW5nPg0KIA0KLQk8cGFyYT5UbyBwdXQgdGhlIG5ldyBjb25m
 aWd1cmF0aW9uIGludG8gZWZmZWN0LCBydW4gdGhlDQotCSAgZm9sbG93aW5n
 IGNvbW1hbmQgb24gYm90aCBub2Rlczo8L3BhcmE+DQorCTxwYXJhPlJlc3Rh
 cnQgJm1hbi5kZXZkLjg7IG9uIGJvdGggbm9kZXMgdG8gcHV0IHRoZSBuZXcg
 Y29uZmlndXJhdGlvbg0KKwkgIGludG8gZWZmZWN0OjwvcGFyYT4NCiANCiAJ
 PHNjcmVlbj4mcHJvbXB0LnJvb3Q7IDx1c2VyaW5wdXQ+L2V0Yy9yYy5kL2Rl
 dmQgcmVzdGFydDwvdXNlcmlucHV0Pjwvc2NyZWVuPg0KIA0KLQk8cGFyYT5J
 biB0aGUgZXZlbnQgdGhhdCB0aGUgPGRldmljZW5hbWU+Y2FycDA8L2Rldmlj
 ZW5hbWU+DQorCTxwYXJhPldoZW4gdGhlIDxkZXZpY2VuYW1lPmNhcnAwPC9k
 ZXZpY2VuYW1lPg0KIAkgIGludGVyZmFjZSBnb2VzIHVwIG9yIGRvd24gKGku
 ZS4gdGhlIGludGVyZmFjZSBzdGF0ZSBjaGFuZ2VzKSwNCiAJICB0aGUgc3lz
 dGVtIGdlbmVyYXRlcyBhIG5vdGlmaWNhdGlvbiwgYWxsb3dpbmcgdGhlICZt
 YW4uZGV2ZC44Ow0KIAkgIHN1YnN5c3RlbSB0byBydW4gYW4gYXJiaXRyYXJ5
 IHNjcmlwdCwgaW4gdGhpcyBjYXNlDQpAQCAtNDQ3MSw3ICs0NDcwLDcgQEAN
 CiAJICAmbWFuLmRldmQuODsgY29uZmlndXJhdGlvbiwgcGxlYXNlIGNvbnN1
 bHQgdGhlDQogCSAgJm1hbi5kZXZkLmNvbmYuNTsgbWFudWFsIHBhZ2UuPC9w
 YXJhPg0KIA0KLQk8cGFyYT5BbiBleGFtcGxlIG9mIHN1Y2ggYSBzY3JpcHQg
 Y291bGQgYmUgZm9sbG93aW5nOjwvcGFyYT4NCisJPHBhcmE+QW4gZXhhbXBs
 ZSBvZiBzdWNoIGEgc2NyaXB0IGNvdWxkIGJlOjwvcGFyYT4NCiANCiA8cHJv
 Z3JhbWxpc3Rpbmc+IyEvYmluL3NoDQogDQpAQCAtNDU1NywxMyArNDU1Niwx
 MyBAQA0KIAk7Ow0KIGVzYWM8L3Byb2dyYW1saXN0aW5nPg0KIA0KLQk8cGFy
 YT5JbiBhIG51dHNoZWxsLCB0aGUgc2NyaXB0IGRvZXMgdGhlIGZvbGxvd2lu
 ZyB3aGVuIGEgbm9kZQ0KKwk8cGFyYT5JbiBhIG51dHNoZWxsLCB0aGUgc2Ny
 aXB0IHRha2VzIHRoZXNlIGFjdGlvbnMgd2hlbiBhIG5vZGUNCiAJICBiZWNv
 bWVzIDxsaXRlcmFsPm1hc3RlcjwvbGl0ZXJhbD4gLw0KIAkgIDxsaXRlcmFs
 PnByaW1hcnk8L2xpdGVyYWw+OjwvcGFyYT4NCiANCiAJPGl0ZW1pemVkbGlz
 dD4NCiAJICA8bGlzdGl0ZW0+DQotCSAgICA8cGFyYT5Qcm9tb3RlcyB0aGUg
 PGFjcm9ueW0+SEFTVDwvYWNyb255bT4gcG9vbHMgYXMNCisJICAgIDxwYXJh
 PlByb21vdGVzIHRoZSA8YWNyb255bT5IQVNUPC9hY3JvbnltPiBwb29scyB0
 bw0KIAkgICAgICBwcmltYXJ5IG9uIGEgZ2l2ZW4gbm9kZS48L3BhcmE+DQog
 CSAgPC9saXN0aXRlbT4NCiAJICA8bGlzdGl0ZW0+DQpAQCAtNDU3MSw3ICs0
 NTcwLDcgQEANCiAJICAgICAgPGFjcm9ueW0+SEFTVDwvYWNyb255bT4gcG9v
 bC48L3BhcmE+DQogCSAgPC9saXN0aXRlbT4NCiAJICA8bGlzdGl0ZW0+DQot
 CSAgICA8cGFyYT5Nb3VudHMgdGhlIHBvb2xzIGF0IGFwcHJvcHJpYXRlIHBs
 YWNlLjwvcGFyYT4NCisJICAgIDxwYXJhPk1vdW50cyB0aGUgcG9vbHMgYXQg
 YW4gYXBwcm9wcmlhdGUgcGxhY2UuPC9wYXJhPg0KIAkgIDwvbGlzdGl0ZW0+
 DQogCTwvaXRlbWl6ZWRsaXN0Pg0KIA0KQEAgLTQ1OTAsMTUgKzQ1ODksMTUg
 QEANCiANCiAJPGNhdXRpb24+DQogCSAgPHBhcmE+S2VlcCBpbiBtaW5kIHRo
 YXQgdGhpcyBpcyBqdXN0IGFuIGV4YW1wbGUgc2NyaXB0IHdoaWNoDQotCSAg
 ICBzaG91bGQgc2VydmUgYXMgYSBwcm9vZiBvZiBjb25jZXB0IHNvbHV0aW9u
 LiAgSXQgZG9lcyBub3QNCisJICAgIHNob3VsZCBzZXJ2ZSBhcyBhIHByb29m
 IG9mIGNvbmNlcHQuICBJdCBkb2VzIG5vdA0KIAkgICAgaGFuZGxlIGFsbCB0
 aGUgcG9zc2libGUgc2NlbmFyaW9zIGFuZCBjYW4gYmUgZXh0ZW5kZWQgb3IN
 CiAJICAgIGFsdGVyZWQgaW4gYW55IHdheSwgZm9yIGV4YW1wbGUgaXQgY2Fu
 IHN0YXJ0L3N0b3AgcmVxdWlyZWQNCi0JICAgIHNlcnZpY2VzIGV0Yy48L3Bh
 cmE+DQorCSAgICBzZXJ2aWNlcywgZXRjLjwvcGFyYT4NCiAJPC9jYXV0aW9u
 Pg0KIA0KIAk8dGlwPg0KLQkgIDxwYXJhPkZvciB0aGUgcHVycG9zZSBvZiB0
 aGlzIGV4YW1wbGUgd2UgdXNlZCBhIHN0YW5kYXJkIFVGUw0KLQkgICAgZmls
 ZSBzeXN0ZW0uICBJbiBvcmRlciB0byByZWR1Y2UgdGhlIHRpbWUgbmVlZGVk
 IGZvcg0KKwkgIDxwYXJhPkZvciB0aGlzIGV4YW1wbGUsIHdlIHVzZWQgYSBz
 dGFuZGFyZCBVRlMNCisJICAgIGZpbGUgc3lzdGVtLiAgVG8gcmVkdWNlIHRo
 ZSB0aW1lIG5lZWRlZCBmb3INCiAJICAgIHJlY292ZXJ5LCBhIGpvdXJuYWwt
 ZW5hYmxlZCBVRlMgb3IgWkZTIGZpbGUgc3lzdGVtIGNhbg0KIAkgICAgYmUg
 dXNlZC48L3BhcmE+DQogCTwvdGlwPg0KQEAgLTQ2MTUsNDEgKzQ2MTQsNDAg
 QEANCiAgICAgICA8c2VjdDM+DQogCTx0aXRsZT5HZW5lcmFsIFRyb3VibGVz
 aG9vdGluZyBUaXBzPC90aXRsZT4NCiANCi0JPHBhcmE+PGFjcm9ueW0+SEFT
 VDwvYWNyb255bT4gc2hvdWxkIGJlIGdlbmVyYWxseSB3b3JraW5nDQotCSAg
 d2l0aG91dCBhbnkgaXNzdWVzLCBob3dldmVyIGFzIHdpdGggYW55IG90aGVy
 IHNvZnR3YXJlDQorCTxwYXJhPjxhY3JvbnltPkhBU1Q8L2Fjcm9ueW0+IHNo
 b3VsZCBnZW5lcmFsbHkgd29yaw0KKwkgIHdpdGhvdXQgaXNzdWVzLiAgSG93
 ZXZlciwgYXMgd2l0aCBhbnkgb3RoZXIgc29mdHdhcmUNCiAJICBwcm9kdWN0
 LCB0aGVyZSBtYXkgYmUgdGltZXMgd2hlbiBpdCBkb2VzIG5vdCB3b3JrIGFz
 DQogCSAgc3VwcG9zZWQuICBUaGUgc291cmNlcyBvZiB0aGUgcHJvYmxlbXMg
 bWF5IGJlIGRpZmZlcmVudCwgYnV0DQogCSAgdGhlIHJ1bGUgb2YgdGh1bWIg
 aXMgdG8gZW5zdXJlIHRoYXQgdGhlIHRpbWUgaXMgc3luY2hyb25pemVkDQog
 CSAgYmV0d2VlbiBhbGwgbm9kZXMgb2YgdGhlIGNsdXN0ZXIuPC9wYXJhPg0K
 IA0KLQk8cGFyYT5UaGUgZGVidWdnaW5nIGxldmVsIG9mIHRoZSAmbWFuLmhh
 c3RkLjg7IHNob3VsZCBiZQ0KLQkgIGluY3JlYXNlZCB3aGVuIHRyb3VibGVz
 aG9vdGluZyA8YWNyb255bT5IQVNUPC9hY3JvbnltPg0KLQkgIHByb2JsZW1z
 LiAgVGhpcyBjYW4gYmUgYWNjb21wbGlzaGVkIGJ5IHN0YXJ0aW5nIHRoZQ0K
 Kwk8cGFyYT5XaGVuIHRyb3VibGVzaG9vdGluZyA8YWNyb255bT5IQVNUPC9h
 Y3JvbnltPiBwcm9ibGVtcywNCisJICB0aGUgZGVidWdnaW5nIGxldmVsIG9m
 ICZtYW4uaGFzdGQuODsgc2hvdWxkIGJlIGluY3JlYXNlZA0KKwkgIGJ5IHN0
 YXJ0aW5nIHRoZQ0KIAkgICZtYW4uaGFzdGQuODsgZGFlbW9uIHdpdGggdGhl
 IDxsaXRlcmFsPi1kPC9saXRlcmFsPg0KLQkgIGFyZ3VtZW50LiAgTm90ZSwg
 dGhhdCB0aGlzIGFyZ3VtZW50IG1heSBiZSBzcGVjaWZpZWQNCisJICBhcmd1
 bWVudC4gIE5vdGUgdGhhdCB0aGlzIGFyZ3VtZW50IG1heSBiZSBzcGVjaWZp
 ZWQNCiAJICBtdWx0aXBsZSB0aW1lcyB0byBmdXJ0aGVyIGluY3JlYXNlIHRo
 ZSBkZWJ1Z2dpbmcgbGV2ZWwuICBBDQotCSAgbG90IG9mIHVzZWZ1bCBpbmZv
 cm1hdGlvbiBtYXkgYmUgb2J0YWluZWQgdGhpcyB3YXkuICBJdA0KLQkgIHNo
 b3VsZCBiZSBhbHNvIGNvbnNpZGVyZWQgdG8gdXNlIDxsaXRlcmFsPi1GPC9s
 aXRlcmFsPg0KLQkgIGFyZ3VtZW50LCB3aGljaCB3aWxsIHN0YXJ0IHRoZSAm
 bWFuLmhhc3RkLjg7IGRhZW1vbiBpbg0KKwkgIGxvdCBvZiB1c2VmdWwgaW5m
 b3JtYXRpb24gbWF5IGJlIG9idGFpbmVkIHRoaXMgd2F5LiAgQ29uc2lkZXIN
 CisJICBhbHNvIHVzaW5nIHRoZSA8bGl0ZXJhbD4tRjwvbGl0ZXJhbD4NCisJ
 ICBhcmd1bWVudCwgd2hpY2ggc3RhcnRzIHRoZSAmbWFuLmhhc3RkLjg7IGRh
 ZW1vbiBpbiB0aGUNCiAJICBmb3JlZ3JvdW5kLjwvcGFyYT4NCiAgICAgIDwv
 c2VjdDM+DQogDQogICAgICAgPHNlY3QzIGlkPSJkaXNrcy1oYXN0LXNiIj4N
 CiAJPHRpdGxlPlJlY292ZXJpbmcgZnJvbSB0aGUgU3BsaXQtYnJhaW4gQ29u
 ZGl0aW9uPC90aXRsZT4NCiANCi0JPHBhcmE+VGhlIGNvbnNlcXVlbmNlIG9m
 IGEgc2l0dWF0aW9uIHdoZW4gYm90aCBub2RlcyBvZiB0aGUNCi0JICBjbHVz
 dGVyIGFyZSBub3QgYWJsZSB0byBjb21tdW5pY2F0ZSB3aXRoIGVhY2ggb3Ro
 ZXIgYW5kIGJvdGgNCi0JICBhcmUgY29uZmlndXJlZCBhcyBwcmltYXJ5IG5v
 ZGVzIGlzIGNhbGxlZA0KLQkgIDxsaXRlcmFsPnNwbGl0LWJyYWluPC9saXRl
 cmFsPi4gIFRoaXMgaXMgYSBkYW5nZXJvdXMNCisJPHBhcmE+PGxpdGVyYWw+
 U3BsaXQtYnJhaW48L2xpdGVyYWw+IGlzIHdoZW4gdGhlIG5vZGVzIG9mIHRo
 ZQ0KKwkgIGNsdXN0ZXIgYXJlIHVuYWJsZSB0byBjb21tdW5pY2F0ZSB3aXRo
 IGVhY2ggb3RoZXIsIGFuZCBib3RoDQorCSAgYXJlIGNvbmZpZ3VyZWQgYXMg
 cHJpbWFyeS4gIFRoaXMgaXMgYSBkYW5nZXJvdXMNCiAJICBjb25kaXRpb24g
 YmVjYXVzZSBpdCBhbGxvd3MgYm90aCBub2RlcyB0byBtYWtlIGluY29tcGF0
 aWJsZQ0KLQkgIGNoYW5nZXMgdG8gdGhlIGRhdGEuICBUaGlzIHNpdHVhdGlv
 biBoYXMgdG8gYmUgaGFuZGxlZCBieQ0KLQkgIHRoZSBzeXN0ZW0gYWRtaW5p
 c3RyYXRvciBtYW51YWxseS48L3BhcmE+DQorCSAgY2hhbmdlcyB0byB0aGUg
 ZGF0YS4gIFRoaXMgcHJvYmxlbSBtdXN0IGJlIGNvcnJlY3RlZA0KKwkgIG1h
 bnVhbGx5IGJ5IHRoZSBzeXN0ZW0gYWRtaW5pc3RyYXRvci48L3BhcmE+DQog
 DQotCTxwYXJhPkluIG9yZGVyIHRvIGZpeCB0aGlzIHNpdHVhdGlvbiB0aGUg
 YWRtaW5pc3RyYXRvciBoYXMgdG8NCisJPHBhcmE+VGhlIGFkbWluaXN0cmF0
 b3IgbXVzdA0KIAkgIGRlY2lkZSB3aGljaCBub2RlIGhhcyBtb3JlIGltcG9y
 dGFudCBjaGFuZ2VzIChvciBtZXJnZSB0aGVtDQotCSAgbWFudWFsbHkpIGFu
 ZCBsZXQgdGhlIDxhY3JvbnltPkhBU1Q8L2Fjcm9ueW0+IHBlcmZvcm0NCi0J
 ICB0aGUgZnVsbCBzeW5jaHJvbml6YXRpb24gb2YgdGhlIG5vZGUgd2hpY2gg
 aGFzIHRoZSBicm9rZW4NCi0JICBkYXRhLiAgVG8gZG8gdGhpcywgaXNzdWUg
 dGhlIGZvbGxvd2luZyBjb21tYW5kcyBvbiB0aGUgbm9kZQ0KKwkgIG1hbnVh
 bGx5KSBhbmQgbGV0IDxhY3JvbnltPkhBU1Q8L2Fjcm9ueW0+IHBlcmZvcm0N
 CisJICBmdWxsIHN5bmNocm9uaXphdGlvbiBvZiB0aGUgbm9kZSB3aGljaCBo
 YXMgdGhlIGJyb2tlbg0KKwkgIGRhdGEuICBUbyBkbyB0aGlzLCBpc3N1ZSB0
 aGVzZSBjb21tYW5kcyBvbiB0aGUgbm9kZQ0KIAkgIHdoaWNoIG5lZWRzIHRv
 IGJlIHJlc3luY2hyb25pemVkOjwvcGFyYT4NCiANCiAgICAgICAgIDxzY3Jl
 ZW4+JnByb21wdC5yb290OyA8dXNlcmlucHV0Pmhhc3RjdGwgcm9sZSBpbml0
 ICZsdDtyZXNvdXJjZSZndDs8L3VzZXJpbnB1dD4NCg==
 
 ---902635197-1035508638-1314151085=:58116--

From: Warren Block <wblock@wonkity.com>
To: Benjamin Kaduk <kaduk@mit.edu>
Cc: Taras Korenko <ds@ukrhub.net>, freebsd-doc@freebsd.org,
        freebsd-gnats-submit@freebsd.org
Subject: Re: docs/159897: [patch] improve HAST section of Handbook
Date: Wed, 24 Aug 2011 08:06:37 -0600 (MDT)

   This message is in MIME format.  The first part should be readable text,
   while the remaining parts are likely unreadable without MIME-aware tools.
 
 ---902635197-1350422020-1314194797=:60591
 Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed
 
 And one last version without a repated "with".  Thanks to Taras for 
 spotting that!
 ---902635197-1350422020-1314194797=:60591
 Content-Type: TEXT/PLAIN; charset=US-ASCII; name=patch-handbook-hast-4.diff.txt
 Content-Transfer-Encoding: BASE64
 Content-ID: <alpine.BSF.2.00.1108240806360.60591@wonkity.com>
 Content-Description: 
 Content-Disposition: attachment; filename=patch-handbook-hast-4.diff.txt
 
 LS0tIGVuX1VTLklTTzg4NTktMS9ib29rcy9oYW5kYm9vay9kaXNrcy9jaGFw
 dGVyLnNnbWwub3JpZwkyMDExLTA1LTI3IDA0OjIyOjU1LjAwMDAwMDAwMCAt
 MDYwMA0KKysrIGVuX1VTLklTTzg4NTktMS9ib29rcy9oYW5kYm9vay9kaXNr
 cy9jaGFwdGVyLnNnbWwJMjAxMS0wOC0yNCAwNzo1NTo1NS4wMDAwMDAwMDAg
 LTA2MDANCkBAIC00MDM4LDcgKzQwMzgsNyBAQA0KICAgICA8c2VjdDI+DQog
 ICAgICAgPHRpdGxlPlN5bm9wc2lzPC90aXRsZT4NCiANCi0gICAgICA8cGFy
 YT5IaWdoLWF2YWlsYWJpbGl0eSBpcyBvbmUgb2YgdGhlIG1haW4gcmVxdWly
 ZW1lbnRzIGluIHNlcmlvdXMNCisgICAgICA8cGFyYT5IaWdoIGF2YWlsYWJp
 bGl0eSBpcyBvbmUgb2YgdGhlIG1haW4gcmVxdWlyZW1lbnRzIGluIHNlcmlv
 dXMNCiAJYnVzaW5lc3MgYXBwbGljYXRpb25zIGFuZCBoaWdobHktYXZhaWxh
 YmxlIHN0b3JhZ2UgaXMgYSBrZXkNCiAJY29tcG9uZW50IGluIHN1Y2ggZW52
 aXJvbm1lbnRzLiAgSGlnaGx5IEF2YWlsYWJsZSBTVG9yYWdlLCBvcg0KIAk8
 YWNyb255bT5IQVNUPHJlbWFyayByb2xlPSJhY3JvbnltIj5IaWdobHkgQXZh
 aWxhYmxlDQpAQCAtNDEwOSw3ICs0MTA5LDcgQEANCiAJICBkcml2ZXMuPC9w
 YXJhPg0KIAk8L2xpc3RpdGVtPg0KIAk8bGlzdGl0ZW0+DQotCSAgPHBhcmE+
 RmlsZSBzeXN0ZW0gYWdub3N0aWMsIHRodXMgYWxsb3dpbmcgdG8gdXNlIGFu
 eSBmaWxlDQorCSAgPHBhcmE+RmlsZSBzeXN0ZW0gYWdub3N0aWM7IHdvcmtz
 IHdpdGggYW55IGZpbGUNCiAJICAgIHN5c3RlbSBzdXBwb3J0ZWQgYnkgJm9z
 Oy48L3BhcmE+DQogCTwvbGlzdGl0ZW0+DQogCTxsaXN0aXRlbT4NCkBAIC00
 MTUyLDcgKzQxNTIsNyBAQA0KIAl0b3RhbC48L3BhcmE+DQogICAgICAgPC9u
 b3RlPg0KIA0KLSAgICAgIDxwYXJhPlNpbmNlIHRoZSA8YWNyb255bT5IQVNU
 PC9hY3JvbnltPiB3b3JrcyBpbg0KKyAgICAgIDxwYXJhPlNpbmNlIDxhY3Jv
 bnltPkhBU1Q8L2Fjcm9ueW0+IHdvcmtzIGluIGENCiAJcHJpbWFyeS1zZWNv
 bmRhcnkgY29uZmlndXJhdGlvbiwgaXQgYWxsb3dzIG9ubHkgb25lIG9mIHRo
 ZQ0KIAljbHVzdGVyIG5vZGVzIHRvIGJlIGFjdGl2ZSBhdCBhbnkgZ2l2ZW4g
 dGltZS4gIFRoZQ0KIAk8bGl0ZXJhbD5wcmltYXJ5PC9saXRlcmFsPiBub2Rl
 LCBhbHNvIGNhbGxlZA0KQEAgLTQxNzUsNyArNDE3NSw3IEBADQogICAgICAg
 PC9pdGVtaXplZGxpc3Q+DQogDQogICAgICAgPHBhcmE+PGFjcm9ueW0+SEFT
 VDwvYWNyb255bT4gb3BlcmF0ZXMgc3luY2hyb25vdXNseSBvbiBhIGJsb2Nr
 DQotCWxldmVsLCB3aGljaCBtYWtlcyBpdCB0cmFuc3BhcmVudCBmb3IgZmls
 ZSBzeXN0ZW1zIGFuZA0KKwlsZXZlbCwgbWFraW5nIGl0IHRyYW5zcGFyZW50
 IHRvIGZpbGUgc3lzdGVtcyBhbmQNCiAJYXBwbGljYXRpb25zLiAgPGFjcm9u
 eW0+SEFTVDwvYWNyb255bT4gcHJvdmlkZXMgcmVndWxhciBHRU9NDQogCXBy
 b3ZpZGVycyBpbiA8ZmlsZW5hbWUgY2xhc3M9ImRpcmVjdG9yeSI+L2Rldi9o
 YXN0LzwvZmlsZW5hbWU+DQogCWRpcmVjdG9yeSBmb3IgdXNlIGJ5IG90aGVy
 IHRvb2xzIG9yIGFwcGxpY2F0aW9ucywgdGh1cyB0aGVyZSBpcw0KQEAgLTQy
 NTIsNyArNDI1Miw3IEBADQogCUZvciBzdHJpcHBlZC1kb3duIHN5c3RlbXMs
 IG1ha2Ugc3VyZSB0aGlzIG1vZHVsZSBpcyBhdmFpbGFibGUuDQogCUFsdGVy
 bmF0aXZlbHksIGl0IGlzIHBvc3NpYmxlIHRvIGJ1aWxkDQogCTxsaXRlcmFs
 PkdFT01fR0FURTwvbGl0ZXJhbD4gc3VwcG9ydCBpbnRvIHRoZSBrZXJuZWwN
 Ci0Jc3RhdGljYWxseSwgYnkgYWRkaW5nIHRoZSBmb2xsb3dpbmcgbGluZSB0
 byB0aGUgY3VzdG9tIGtlcm5lbA0KKwlzdGF0aWNhbGx5LCBieSBhZGRpbmcg
 dGhpcyBsaW5lIHRvIHRoZSBjdXN0b20ga2VybmVsDQogCWNvbmZpZ3VyYXRp
 b24gZmlsZTo8L3BhcmE+DQogDQogICAgICAgPHByb2dyYW1saXN0aW5nPm9w
 dGlvbnMJR0VPTV9HQVRFPC9wcm9ncmFtbGlzdGluZz4NCkBAIC00MjkwLDEw
 ICs0MjkwLDEwIEBADQogCSAgY2xhc3M9ImRpcmVjdG9yeSI+L2Rldi9oYXN0
 LzwvZmlsZW5hbWU+KSB3aWxsIGJlIGNhbGxlZA0KIAk8ZmlsZW5hbWU+PHJl
 cGxhY2VhYmxlPnRlc3Q8L3JlcGxhY2VhYmxlPjwvZmlsZW5hbWU+LjwvcGFy
 YT4NCiANCi0gICAgICA8cGFyYT5UaGUgY29uZmlndXJhdGlvbiBvZiA8YWNy
 b255bT5IQVNUPC9hY3JvbnltPiBpcyBiZWluZyBkb25lDQorICAgICAgPHBh
 cmE+Q29uZmlndXJhdGlvbiBvZiA8YWNyb255bT5IQVNUPC9hY3JvbnltPiBp
 cyBkb25lDQogCWluIHRoZSA8ZmlsZW5hbWU+L2V0Yy9oYXN0LmNvbmY8L2Zp
 bGVuYW1lPiBmaWxlLiAgVGhpcyBmaWxlDQogCXNob3VsZCBiZSB0aGUgc2Ft
 ZSBvbiBib3RoIG5vZGVzLiAgVGhlIHNpbXBsZXN0IGNvbmZpZ3VyYXRpb24N
 Ci0JcG9zc2libGUgaXMgZm9sbG93aW5nOjwvcGFyYT4NCisJcG9zc2libGUg
 aXM6PC9wYXJhPg0KIA0KICAgICAgIDxwcm9ncmFtbGlzdGluZz5yZXNvdXJj
 ZSB0ZXN0IHsNCiAJb24gaGFzdGEgew0KQEAgLTQzMTcsOSArNDMxNyw5IEBA
 DQogCSAgYWx0ZXJuYXRpdmVseSBpbiB0aGUgbG9jYWwgPGFjcm9ueW0+RE5T
 PC9hY3JvbnltPi48L3BhcmE+DQogICAgICAgPC90aXA+DQogDQotICAgICAg
 PHBhcmE+Tm93IHRoYXQgdGhlIGNvbmZpZ3VyYXRpb24gZXhpc3RzIG9uIGJv
 dGggbm9kZXMsIGl0IGlzDQotCXBvc3NpYmxlIHRvIGNyZWF0ZSB0aGUgPGFj
 cm9ueW0+SEFTVDwvYWNyb255bT4gcG9vbC4gIFJ1biB0aGUNCi0JZm9sbG93
 aW5nIGNvbW1hbmRzIG9uIGJvdGggbm9kZXMgdG8gcGxhY2UgdGhlIGluaXRp
 YWwgbWV0YWRhdGENCisgICAgICA8cGFyYT5Ob3cgdGhhdCB0aGUgY29uZmln
 dXJhdGlvbiBleGlzdHMgb24gYm90aCBub2RlcywNCisJdGhlIDxhY3Jvbnlt
 PkhBU1Q8L2Fjcm9ueW0+IHBvb2wgY2FuIGJlIGNyZWF0ZWQuICBSdW4gdGhl
 c2UNCisJY29tbWFuZHMgb24gYm90aCBub2RlcyB0byBwbGFjZSB0aGUgaW5p
 dGlhbCBtZXRhZGF0YQ0KIAlvbnRvIHRoZSBsb2NhbCBkaXNrLCBhbmQgc3Rh
 cnQgdGhlICZtYW4uaGFzdGQuODsgZGFlbW9uOjwvcGFyYT4NCiANCiAgICAg
 ICA8c2NyZWVuPiZwcm9tcHQucm9vdDsgPHVzZXJpbnB1dD5oYXN0Y3RsIGNy
 ZWF0ZSB0ZXN0PC91c2VyaW5wdXQ+DQpAQCAtNDMzNCw1MiArNDMzNCw1MiBA
 QA0KIAkgIGF2YWlsYWJsZS48L3BhcmE+DQogICAgICAgPC9ub3RlPg0KIA0K
 LSAgICAgIDxwYXJhPkhBU1QgaXMgbm90IHJlc3BvbnNpYmxlIGZvciBzZWxl
 Y3Rpbmcgbm9kZSdzIHJvbGUNCi0JKDxsaXRlcmFsPnByaW1hcnk8L2xpdGVy
 YWw+IG9yIDxsaXRlcmFsPnNlY29uZGFyeTwvbGl0ZXJhbD4pLg0KLQlOb2Rl
 J3Mgcm9sZSBoYXMgdG8gYmUgY29uZmlndXJlZCBieSBhbiBhZG1pbmlzdHJh
 dG9yIG9yIG90aGVyDQotCXNvZnR3YXJlIGxpa2UgPGFwcGxpY2F0aW9uPkhl
 YXJ0YmVhdDwvYXBwbGljYXRpb24+IHVzaW5nIHRoZQ0KKyAgICAgIDxwYXJh
 PkEgSEFTVCBub2RlJ3Mgcm9sZSAoPGxpdGVyYWw+cHJpbWFyeTwvbGl0ZXJh
 bD4gb3INCisgICAgICAgIDxsaXRlcmFsPnNlY29uZGFyeTwvbGl0ZXJhbD4p
 IGlzIHNlbGVjdGVkIGJ5IGFuIGFkbWluaXN0cmF0b3INCisgICAgICAgIG9y
 IG90aGVyDQorICAgICAgICBzb2Z0d2FyZSBsaWtlIDxhcHBsaWNhdGlvbj5I
 ZWFydGJlYXQ8L2FwcGxpY2F0aW9uPiB1c2luZyB0aGUNCiAJJm1hbi5oYXN0
 Y3RsLjg7IHV0aWxpdHkuICBNb3ZlIHRvIHRoZSBwcmltYXJ5IG5vZGUNCiAJ
 KDxsaXRlcmFsPjxyZXBsYWNlYWJsZT5oYXN0YTwvcmVwbGFjZWFibGU+PC9s
 aXRlcmFsPikgYW5kDQotCWlzc3VlIHRoZSBmb2xsb3dpbmcgY29tbWFuZDo8
 L3BhcmE+DQorCWlzc3VlIHRoaXMgY29tbWFuZDo8L3BhcmE+DQogDQogICAg
 ICAgPHNjcmVlbj4mcHJvbXB0LnJvb3Q7IDx1c2VyaW5wdXQ+aGFzdGN0bCBy
 b2xlIHByaW1hcnkgdGVzdDwvdXNlcmlucHV0Pjwvc2NyZWVuPg0KIA0KLSAg
 ICAgIDxwYXJhPlNpbWlsYXJseSwgcnVuIHRoZSBmb2xsb3dpbmcgY29tbWFu
 ZCBvbiB0aGUgc2Vjb25kYXJ5IG5vZGUNCisgICAgICA8cGFyYT5TaW1pbGFy
 bHksIHJ1biB0aGlzIGNvbW1hbmQgb24gdGhlIHNlY29uZGFyeSBub2RlDQog
 CSg8bGl0ZXJhbD48cmVwbGFjZWFibGU+aGFzdGI8L3JlcGxhY2VhYmxlPjwv
 bGl0ZXJhbD4pOjwvcGFyYT4NCiANCiAgICAgICA8c2NyZWVuPiZwcm9tcHQu
 cm9vdDsgPHVzZXJpbnB1dD5oYXN0Y3RsIHJvbGUgc2Vjb25kYXJ5IHRlc3Q8
 L3VzZXJpbnB1dD48L3NjcmVlbj4NCiANCiAgICAgICA8Y2F1dGlvbj4NCi0J
 PHBhcmE+SXQgbWF5IGhhcHBlbiB0aGF0IGJvdGggb2YgdGhlIG5vZGVzIGFy
 ZSBub3QgYWJsZSB0bw0KLQkgIGNvbW11bmljYXRlIHdpdGggZWFjaCBvdGhl
 ciBhbmQgYm90aCBhcmUgY29uZmlndXJlZCBhcw0KLQkgIHByaW1hcnkgbm9k
 ZXM7IHRoZSBjb25zZXF1ZW5jZSBvZiB0aGlzIGNvbmRpdGlvbiBpcyBjYWxs
 ZWQNCi0JICA8bGl0ZXJhbD5zcGxpdC1icmFpbjwvbGl0ZXJhbD4uICBJbiBv
 cmRlciB0byB0cm91Ymxlc2hvb3QNCisJPHBhcmE+V2hlbiB0aGUgbm9kZXMg
 YXJlIHVuYWJsZSB0bw0KKwkgIGNvbW11bmljYXRlIHdpdGggZWFjaCBvdGhl
 ciwgYW5kIGJvdGggYXJlIGNvbmZpZ3VyZWQgYXMNCisJICBwcmltYXJ5IG5v
 ZGVzLCB0aGUgY29uZGl0aW9uIGlzIGNhbGxlZA0KKwkgIDxsaXRlcmFsPnNw
 bGl0LWJyYWluPC9saXRlcmFsPi4gIFRvIHRyb3VibGVzaG9vdA0KIAkgIHRo
 aXMgc2l0dWF0aW9uLCBmb2xsb3cgdGhlIHN0ZXBzIGRlc2NyaWJlZCBpbiA8
 eHJlZg0KIAkgIGxpbmtlbmQ9ImRpc2tzLWhhc3Qtc2IiPi48L3BhcmE+DQog
 ICAgICAgPC9jYXV0aW9uPg0KIA0KLSAgICAgIDxwYXJhPkl0IGlzIHBvc3Np
 YmxlIHRvIHZlcmlmeSB0aGUgcmVzdWx0IHdpdGggdGhlDQorICAgICAgPHBh
 cmE+VmVyaWZ5IHRoZSByZXN1bHQgd2l0aCB0aGUNCiAJJm1hbi5oYXN0Y3Rs
 Ljg7IHV0aWxpdHkgb24gZWFjaCBub2RlOjwvcGFyYT4NCiANCiAgICAgICA8
 c2NyZWVuPiZwcm9tcHQucm9vdDsgPHVzZXJpbnB1dD5oYXN0Y3RsIHN0YXR1
 cyB0ZXN0PC91c2VyaW5wdXQ+PC9zY3JlZW4+DQogDQotICAgICAgPHBhcmE+
 VGhlIGltcG9ydGFudCB0ZXh0IGlzIHRoZSA8bGl0ZXJhbD5zdGF0dXM8L2xp
 dGVyYWw+IGxpbmUNCi0JZnJvbSBpdHMgb3V0cHV0IGFuZCBpdCBzaG91bGQg
 c2F5IDxsaXRlcmFsPmNvbXBsZXRlPC9saXRlcmFsPg0KKyAgICAgIDxwYXJh
 PlRoZSBpbXBvcnRhbnQgdGV4dCBpcyB0aGUgPGxpdGVyYWw+c3RhdHVzPC9s
 aXRlcmFsPiBsaW5lLA0KKwl3aGljaCBzaG91bGQgc2F5IDxsaXRlcmFsPmNv
 bXBsZXRlPC9saXRlcmFsPg0KIAlvbiBlYWNoIG9mIHRoZSBub2Rlcy4gIElm
 IGl0IHNheXMgPGxpdGVyYWw+ZGVncmFkZWQ8L2xpdGVyYWw+LA0KIAlzb21l
 dGhpbmcgd2VudCB3cm9uZy4gIEF0IHRoaXMgcG9pbnQsIHRoZSBzeW5jaHJv
 bml6YXRpb24NCiAJYmV0d2VlbiB0aGUgbm9kZXMgaGFzIGFscmVhZHkgc3Rh
 cnRlZC4gIFRoZSBzeW5jaHJvbml6YXRpb24NCi0JY29tcGxldGVzIHdoZW4g
 dGhlIDxjb21tYW5kPmhhc3RjdGwgc3RhdHVzPC9jb21tYW5kPiBjb21tYW5k
 DQorCWNvbXBsZXRlcyB3aGVuIDxjb21tYW5kPmhhc3RjdGwgc3RhdHVzPC9j
 b21tYW5kPg0KIAlyZXBvcnRzIDAgYnl0ZXMgb2YgPGxpdGVyYWw+ZGlydHk8
 L2xpdGVyYWw+IGV4dGVudHMuPC9wYXJhPg0KIA0KIA0KLSAgICAgIDxwYXJh
 PlRoZSBsYXN0IHN0ZXAgaXMgdG8gY3JlYXRlIGEgZmlsZXN5c3RlbSBvbiB0
 aGUNCisgICAgICA8cGFyYT5UaGUgbmV4dCBzdGVwIGlzIHRvIGNyZWF0ZSBh
 IGZpbGVzeXN0ZW0gb24gdGhlDQogCTxkZXZpY2VuYW1lPi9kZXYvaGFzdC88
 cmVwbGFjZWFibGU+dGVzdDwvcmVwbGFjZWFibGU+PC9kZXZpY2VuYW1lPg0K
 LQlHRU9NIHByb3ZpZGVyIGFuZCBtb3VudCBpdC4gIFRoaXMgaGFzIHRvIGJl
 IGRvbmUgb24gdGhlDQotCTxsaXRlcmFsPnByaW1hcnk8L2xpdGVyYWw+IG5v
 ZGUgKGFzIHRoZQ0KKwlHRU9NIHByb3ZpZGVyIGFuZCBtb3VudCBpdC4gIFRo
 aXMgbXVzdCBiZSBkb25lIG9uIHRoZQ0KKwk8bGl0ZXJhbD5wcmltYXJ5PC9s
 aXRlcmFsPiBub2RlLCBhcw0KIAk8ZmlsZW5hbWU+L2Rldi9oYXN0LzxyZXBs
 YWNlYWJsZT50ZXN0PC9yZXBsYWNlYWJsZT48L2ZpbGVuYW1lPg0KLQlhcHBl
 YXJzIG9ubHkgb24gdGhlIDxsaXRlcmFsPnByaW1hcnk8L2xpdGVyYWw+IG5v
 ZGUpLCBhbmQNCi0JaXQgY2FuIHRha2UgYSBmZXcgbWludXRlcyBkZXBlbmRp
 bmcgb24gdGhlIHNpemUgb2YgdGhlIGhhcmQNCi0JZHJpdmU6PC9wYXJhPg0K
 KwlhcHBlYXJzIG9ubHkgb24gdGhlIDxsaXRlcmFsPnByaW1hcnk8L2xpdGVy
 YWw+IG5vZGUuDQorCUNyZWF0aW5nIHRoZSBmaWxlc3lzdGVtIGNhbiB0YWtl
 IGEgZmV3IG1pbnV0ZXMsIGRlcGVuZGluZyBvbiB0aGUNCisJc2l6ZSBvZiB0
 aGUgaGFyZCBkcml2ZTo8L3BhcmE+DQogDQogICAgICAgPHNjcmVlbj4mcHJv
 bXB0LnJvb3Q7IDx1c2VyaW5wdXQ+bmV3ZnMgLVUgL2Rldi9oYXN0L3Rlc3Q8
 L3VzZXJpbnB1dD4NCiAmcHJvbXB0LnJvb3Q7IDx1c2VyaW5wdXQ+bWtkaXIg
 L2hhc3QvdGVzdDwvdXNlcmlucHV0Pg0KQEAgLTQzODcsOSArNDM4Nyw5IEBA
 DQogDQogICAgICAgPHBhcmE+T25jZSB0aGUgPGFjcm9ueW0+SEFTVDwvYWNy
 b255bT4gZnJhbWV3b3JrIGlzIGNvbmZpZ3VyZWQNCiAJcHJvcGVybHksIHRo
 ZSBmaW5hbCBzdGVwIGlzIHRvIG1ha2Ugc3VyZSB0aGF0DQotCTxhY3Jvbnlt
 PkhBU1Q8L2Fjcm9ueW0+IGlzIHN0YXJ0ZWQgZHVyaW5nIHRoZSBzeXN0ZW0g
 Ym9vdCB0aW1lDQotCWF1dG9tYXRpY2FsbHkuICBUaGUgZm9sbG93aW5nIGxp
 bmUgc2hvdWxkIGJlIGFkZGVkIHRvIHRoZQ0KLQk8ZmlsZW5hbWU+L2V0Yy9y
 Yy5jb25mPC9maWxlbmFtZT4gZmlsZTo8L3BhcmE+DQorCTxhY3JvbnltPkhB
 U1Q8L2Fjcm9ueW0+IGlzIHN0YXJ0ZWQgYXV0b21hdGljYWxseSBkdXJpbmcg
 dGhlIHN5c3RlbQ0KKwlib290LiAgQWRkIHRoaXMgbGluZSB0bw0KKwk8Zmls
 ZW5hbWU+L2V0Yy9yYy5jb25mPC9maWxlbmFtZT46PC9wYXJhPg0KIA0KICAg
 ICAgIDxwcm9ncmFtbGlzdGluZz5oYXN0ZF9lbmFibGU9IllFUyI8L3Byb2dy
 YW1saXN0aW5nPg0KIA0KQEAgLTQzOTcsMjYgKzQzOTcsMjUgQEANCiAJPHRp
 dGxlPkZhaWxvdmVyIENvbmZpZ3VyYXRpb248L3RpdGxlPg0KIA0KIAk8cGFy
 YT5UaGUgZ29hbCBvZiB0aGlzIGV4YW1wbGUgaXMgdG8gYnVpbGQgYSByb2J1
 c3Qgc3RvcmFnZQ0KLQkgIHN5c3RlbSB3aGljaCBpcyByZXNpc3RhbnQgZnJv
 bSB0aGUgZmFpbHVyZXMgb2YgYW55IGdpdmVuIG5vZGUuDQotCSAgVGhlIGtl
 eSB0YXNrIGhlcmUgaXMgdG8gcmVtZWR5IGEgc2NlbmFyaW8gd2hlbiBhDQot
 CSAgPGxpdGVyYWw+cHJpbWFyeTwvbGl0ZXJhbD4gbm9kZSBvZiB0aGUgY2x1
 c3RlciBmYWlscy4gIFNob3VsZA0KLQkgIGl0IGhhcHBlbiwgdGhlIDxsaXRl
 cmFsPnNlY29uZGFyeTwvbGl0ZXJhbD4gbm9kZSBpcyB0aGVyZSB0bw0KKwkg
 IHN5c3RlbSB3aGljaCBpcyByZXNpc3RhbnQgdG8gdGhlIGZhaWx1cmUgb2Yg
 YW55IGdpdmVuIG5vZGUuDQorCSAgVGhlIHNjZW5hcmlvIGlzIHRoYXQgYQ0K
 KwkgIDxsaXRlcmFsPnByaW1hcnk8L2xpdGVyYWw+IG5vZGUgb2YgdGhlIGNs
 dXN0ZXIgZmFpbHMuICBJZg0KKwkgIHRoaXMgaGFwcGVucywgdGhlIDxsaXRl
 cmFsPnNlY29uZGFyeTwvbGl0ZXJhbD4gbm9kZSBpcyB0aGVyZSB0bw0KIAkg
 IHRha2Ugb3ZlciBzZWFtbGVzc2x5LCBjaGVjayBhbmQgbW91bnQgdGhlIGZp
 bGUgc3lzdGVtLCBhbmQNCiAJICBjb250aW51ZSB0byB3b3JrIHdpdGhvdXQg
 bWlzc2luZyBhIHNpbmdsZSBiaXQgb2YgZGF0YS48L3BhcmE+DQogDQotCTxw
 YXJhPkluIG9yZGVyIHRvIGFjY29tcGxpc2ggdGhpcyB0YXNrLCBpdCB3aWxs
 IGJlIHJlcXVpcmVkIHRvDQotCSAgdXRpbGl6ZSBhbm90aGVyIGZlYXR1cmUg
 YXZhaWxhYmxlIHVuZGVyICZvczsgd2hpY2ggcHJvdmlkZXMNCisJPHBhcmE+
 VG8gYWNjb21wbGlzaCB0aGlzIHRhc2ssIGFub3RoZXIgJm9zOyBmZWF0dXJl
 IHByb3ZpZGVzDQogCSAgZm9yIGF1dG9tYXRpYyBmYWlsb3ZlciBvbiB0aGUg
 SVAgbGF5ZXIgJm1kYXNoOw0KLQkgIDxhY3JvbnltPkNBUlA8L2Fjcm9ueW0+
 LiAgPGFjcm9ueW0+Q0FSUDwvYWNyb255bT4gc3RhbmRzIGZvcg0KLQkgIENv
 bW1vbiBBZGRyZXNzIFJlZHVuZGFuY3kgUHJvdG9jb2wgYW5kIGFsbG93cyBt
 dWx0aXBsZSBob3N0cw0KKwkgIDxhY3JvbnltPkNBUlA8L2Fjcm9ueW0+LiAg
 PGFjcm9ueW0+Q0FSUDwvYWNyb255bT4gKENvbW1vbiBBZGRyZXNzDQorCSAg
 UmVkdW5kYW5jeSBQcm90b2NvbCkgYWxsb3dzIG11bHRpcGxlIGhvc3RzDQog
 CSAgb24gdGhlIHNhbWUgbmV0d29yayBzZWdtZW50IHRvIHNoYXJlIGFuIElQ
 IGFkZHJlc3MuICBTZXQgdXANCiAgCSAgPGFjcm9ueW0+Q0FSUDwvYWNyb255
 bT4gb24gYm90aCBub2RlcyBvZiB0aGUgY2x1c3RlciBhY2NvcmRpbmcNCiAJ
 ICB0byB0aGUgZG9jdW1lbnRhdGlvbiBhdmFpbGFibGUgaW4gPHhyZWYgbGlu
 a2VuZD0iY2FycCI+Lg0KLQkgIEFmdGVyIGNvbXBsZXRpbmcgdGhpcyB0YXNr
 LCBlYWNoIG5vZGUgc2hvdWxkIGhhdmUgaXRzIG93bg0KKwkgIEFmdGVyIHNl
 dHVwLCBlYWNoIG5vZGUgd2lsbCBoYXZlIGl0cyBvd24NCiAJICA8ZGV2aWNl
 bmFtZT5jYXJwMDwvZGV2aWNlbmFtZT4gaW50ZXJmYWNlIHdpdGggYSBzaGFy
 ZWQgSVANCiAJICBhZGRyZXNzIDxyZXBsYWNlYWJsZT4xNzIuMTYuMC4yNTQ8
 L3JlcGxhY2VhYmxlPi4NCi0JICBPYnZpb3VzbHksIHRoZSBwcmltYXJ5IDxh
 Y3JvbnltPkhBU1Q8L2Fjcm9ueW0+IG5vZGUgb2YgdGhlDQotCSAgY2x1c3Rl
 ciBoYXMgdG8gYmUgdGhlIG1hc3RlciA8YWNyb255bT5DQVJQPC9hY3Jvbnlt
 Pg0KKwkgIFRoZSBwcmltYXJ5IDxhY3JvbnltPkhBU1Q8L2Fjcm9ueW0+IG5v
 ZGUgb2YgdGhlDQorCSAgY2x1c3RlciBtdXN0IGJlIHRoZSBtYXN0ZXIgPGFj
 cm9ueW0+Q0FSUDwvYWNyb255bT4NCiAJICBub2RlLjwvcGFyYT4NCiANCiAJ
 PHBhcmE+VGhlIDxhY3JvbnltPkhBU1Q8L2Fjcm9ueW0+IHBvb2wgY3JlYXRl
 ZCBpbiB0aGUgcHJldmlvdXMNCkBAIC00NDMwLDE3ICs0NDI5LDE3IEBADQog
 DQogCTxwYXJhPkluIHRoZSBldmVudCBvZiA8YWNyb255bT5DQVJQPC9hY3Jv
 bnltPiBpbnRlcmZhY2VzIGdvaW5nDQogCSAgdXAgb3IgZG93biwgdGhlICZv
 czsgb3BlcmF0aW5nIHN5c3RlbSBnZW5lcmF0ZXMgYSAmbWFuLmRldmQuODsN
 Ci0JICBldmVudCwgd2hpY2ggbWFrZXMgaXQgcG9zc2libGUgdG8gd2F0Y2gg
 Zm9yIHRoZSBzdGF0ZSBjaGFuZ2VzDQorCSAgZXZlbnQsIG1ha2luZyBpdCBw
 b3NzaWJsZSB0byB3YXRjaCBmb3IgdGhlIHN0YXRlIGNoYW5nZXMNCiAJICBv
 biB0aGUgPGFjcm9ueW0+Q0FSUDwvYWNyb255bT4gaW50ZXJmYWNlcy4gIEEg
 c3RhdGUgY2hhbmdlIG9uDQogCSAgdGhlIDxhY3JvbnltPkNBUlA8L2Fjcm9u
 eW0+IGludGVyZmFjZSBpcyBhbiBpbmRpY2F0aW9uIHRoYXQNCi0JICBvbmUg
 b2YgdGhlIG5vZGVzIGZhaWxlZCBvciBjYW1lIGJhY2sgb25saW5lLiAgSW4g
 c3VjaCBhIGNhc2UsDQotCSAgaXQgaXMgcG9zc2libGUgdG8gcnVuIGEgcGFy
 dGljdWxhciBzY3JpcHQgd2hpY2ggd2lsbA0KLQkgIGF1dG9tYXRpY2FsbHkg
 aGFuZGxlIHRoZSBmYWlsb3Zlci48L3BhcmE+DQotDQotCTxwYXJhPlRvIGJl
 IGFibGUgdG8gY2F0Y2ggdGhlIHN0YXRlIGNoYW5nZXMgb24gdGhlDQotCSAg
 PGFjcm9ueW0+Q0FSUDwvYWNyb255bT4gaW50ZXJmYWNlcywgdGhlIGZvbGxv
 d2luZw0KLQkgIGNvbmZpZ3VyYXRpb24gaGFzIHRvIGJlIGFkZGVkIHRvIHRo
 ZQ0KLQkgIDxmaWxlbmFtZT4vZXRjL2RldmQuY29uZjwvZmlsZW5hbWU+IGZp
 bGUgb24gZWFjaCBub2RlOjwvcGFyYT4NCisJICBvbmUgb2YgdGhlIG5vZGVz
 IGZhaWxlZCBvciBjYW1lIGJhY2sgb25saW5lLiAgVGhlc2Ugc3RhdGUgY2hh
 bmdlDQorCSAgZXZlbnRzIG1ha2UgaXQgcG9zc2libGUgdG8gcnVuIGEgc2Ny
 aXB0IHdoaWNoIHdpbGwNCisJICBhdXRvbWF0aWNhbGx5IGhhbmRsZSB0aGUg
 SEFTVCBmYWlsb3Zlci48L3BhcmE+DQorDQorCTxwYXJhPlRvIGJlIGFibGUg
 dG8gY2F0Y2ggc3RhdGUgY2hhbmdlcyBvbiB0aGUNCisJICA8YWNyb255bT5D
 QVJQPC9hY3JvbnltPiBpbnRlcmZhY2VzLCBhZGQgdGhpcw0KKwkgIGNvbmZp
 Z3VyYXRpb24gdG8NCisJICA8ZmlsZW5hbWU+L2V0Yy9kZXZkLmNvbmY8L2Zp
 bGVuYW1lPiBvbiBlYWNoIG5vZGU6PC9wYXJhPg0KIA0KIAk8cHJvZ3JhbWxp
 c3Rpbmc+bm90aWZ5IDMwIHsNCiAJbWF0Y2ggInN5c3RlbSIgIklGTkVUIjsN
 CkBAIC00NDU2LDEyICs0NDU1LDEyIEBADQogCWFjdGlvbiAiL3Vzci9sb2Nh
 bC9zYmluL2NhcnAtaGFzdC1zd2l0Y2ggc2xhdmUiOw0KIH07PC9wcm9ncmFt
 bGlzdGluZz4NCiANCi0JPHBhcmE+VG8gcHV0IHRoZSBuZXcgY29uZmlndXJh
 dGlvbiBpbnRvIGVmZmVjdCwgcnVuIHRoZQ0KLQkgIGZvbGxvd2luZyBjb21t
 YW5kIG9uIGJvdGggbm9kZXM6PC9wYXJhPg0KKwk8cGFyYT5SZXN0YXJ0ICZt
 YW4uZGV2ZC44OyBvbiBib3RoIG5vZGVzIHRvIHB1dCB0aGUgbmV3IGNvbmZp
 Z3VyYXRpb24NCisJICBpbnRvIGVmZmVjdDo8L3BhcmE+DQogDQogCTxzY3Jl
 ZW4+JnByb21wdC5yb290OyA8dXNlcmlucHV0Pi9ldGMvcmMuZC9kZXZkIHJl
 c3RhcnQ8L3VzZXJpbnB1dD48L3NjcmVlbj4NCiANCi0JPHBhcmE+SW4gdGhl
 IGV2ZW50IHRoYXQgdGhlIDxkZXZpY2VuYW1lPmNhcnAwPC9kZXZpY2VuYW1l
 Pg0KKwk8cGFyYT5XaGVuIHRoZSA8ZGV2aWNlbmFtZT5jYXJwMDwvZGV2aWNl
 bmFtZT4NCiAJICBpbnRlcmZhY2UgZ29lcyB1cCBvciBkb3duIChpLmUuIHRo
 ZSBpbnRlcmZhY2Ugc3RhdGUgY2hhbmdlcyksDQogCSAgdGhlIHN5c3RlbSBn
 ZW5lcmF0ZXMgYSBub3RpZmljYXRpb24sIGFsbG93aW5nIHRoZSAmbWFuLmRl
 dmQuODsNCiAJICBzdWJzeXN0ZW0gdG8gcnVuIGFuIGFyYml0cmFyeSBzY3Jp
 cHQsIGluIHRoaXMgY2FzZQ0KQEAgLTQ0NzEsNyArNDQ3MCw3IEBADQogCSAg
 Jm1hbi5kZXZkLjg7IGNvbmZpZ3VyYXRpb24sIHBsZWFzZSBjb25zdWx0IHRo
 ZQ0KIAkgICZtYW4uZGV2ZC5jb25mLjU7IG1hbnVhbCBwYWdlLjwvcGFyYT4N
 CiANCi0JPHBhcmE+QW4gZXhhbXBsZSBvZiBzdWNoIGEgc2NyaXB0IGNvdWxk
 IGJlIGZvbGxvd2luZzo8L3BhcmE+DQorCTxwYXJhPkFuIGV4YW1wbGUgb2Yg
 c3VjaCBhIHNjcmlwdCBjb3VsZCBiZTo8L3BhcmE+DQogDQogPHByb2dyYW1s
 aXN0aW5nPiMhL2Jpbi9zaA0KIA0KQEAgLTQ1NTcsMTMgKzQ1NTYsMTMgQEAN
 CiAJOzsNCiBlc2FjPC9wcm9ncmFtbGlzdGluZz4NCiANCi0JPHBhcmE+SW4g
 YSBudXRzaGVsbCwgdGhlIHNjcmlwdCBkb2VzIHRoZSBmb2xsb3dpbmcgd2hl
 biBhIG5vZGUNCisJPHBhcmE+SW4gYSBudXRzaGVsbCwgdGhlIHNjcmlwdCB0
 YWtlcyB0aGVzZSBhY3Rpb25zIHdoZW4gYSBub2RlDQogCSAgYmVjb21lcyA8
 bGl0ZXJhbD5tYXN0ZXI8L2xpdGVyYWw+IC8NCiAJICA8bGl0ZXJhbD5wcmlt
 YXJ5PC9saXRlcmFsPjo8L3BhcmE+DQogDQogCTxpdGVtaXplZGxpc3Q+DQog
 CSAgPGxpc3RpdGVtPg0KLQkgICAgPHBhcmE+UHJvbW90ZXMgdGhlIDxhY3Jv
 bnltPkhBU1Q8L2Fjcm9ueW0+IHBvb2xzIGFzDQorCSAgICA8cGFyYT5Qcm9t
 b3RlcyB0aGUgPGFjcm9ueW0+SEFTVDwvYWNyb255bT4gcG9vbHMgdG8NCiAJ
 ICAgICAgcHJpbWFyeSBvbiBhIGdpdmVuIG5vZGUuPC9wYXJhPg0KIAkgIDwv
 bGlzdGl0ZW0+DQogCSAgPGxpc3RpdGVtPg0KQEAgLTQ1NzEsNyArNDU3MCw3
 IEBADQogCSAgICAgIDxhY3JvbnltPkhBU1Q8L2Fjcm9ueW0+IHBvb2wuPC9w
 YXJhPg0KIAkgIDwvbGlzdGl0ZW0+DQogCSAgPGxpc3RpdGVtPg0KLQkgICAg
 PHBhcmE+TW91bnRzIHRoZSBwb29scyBhdCBhcHByb3ByaWF0ZSBwbGFjZS48
 L3BhcmE+DQorCSAgICA8cGFyYT5Nb3VudHMgdGhlIHBvb2xzIGF0IGFuIGFw
 cHJvcHJpYXRlIHBsYWNlLjwvcGFyYT4NCiAJICA8L2xpc3RpdGVtPg0KIAk8
 L2l0ZW1pemVkbGlzdD4NCiANCkBAIC00NTkwLDE1ICs0NTg5LDE1IEBADQog
 DQogCTxjYXV0aW9uPg0KIAkgIDxwYXJhPktlZXAgaW4gbWluZCB0aGF0IHRo
 aXMgaXMganVzdCBhbiBleGFtcGxlIHNjcmlwdCB3aGljaA0KLQkgICAgc2hv
 dWxkIHNlcnZlIGFzIGEgcHJvb2Ygb2YgY29uY2VwdCBzb2x1dGlvbi4gIEl0
 IGRvZXMgbm90DQorCSAgICBzaG91bGQgc2VydmUgYXMgYSBwcm9vZiBvZiBj
 b25jZXB0LiAgSXQgZG9lcyBub3QNCiAJICAgIGhhbmRsZSBhbGwgdGhlIHBv
 c3NpYmxlIHNjZW5hcmlvcyBhbmQgY2FuIGJlIGV4dGVuZGVkIG9yDQogCSAg
 ICBhbHRlcmVkIGluIGFueSB3YXksIGZvciBleGFtcGxlIGl0IGNhbiBzdGFy
 dC9zdG9wIHJlcXVpcmVkDQotCSAgICBzZXJ2aWNlcyBldGMuPC9wYXJhPg0K
 KwkgICAgc2VydmljZXMsIGV0Yy48L3BhcmE+DQogCTwvY2F1dGlvbj4NCiAN
 CiAJPHRpcD4NCi0JICA8cGFyYT5Gb3IgdGhlIHB1cnBvc2Ugb2YgdGhpcyBl
 eGFtcGxlIHdlIHVzZWQgYSBzdGFuZGFyZCBVRlMNCi0JICAgIGZpbGUgc3lz
 dGVtLiAgSW4gb3JkZXIgdG8gcmVkdWNlIHRoZSB0aW1lIG5lZWRlZCBmb3IN
 CisJICA8cGFyYT5Gb3IgdGhpcyBleGFtcGxlLCB3ZSB1c2VkIGEgc3RhbmRh
 cmQgVUZTDQorCSAgICBmaWxlIHN5c3RlbS4gIFRvIHJlZHVjZSB0aGUgdGlt
 ZSBuZWVkZWQgZm9yDQogCSAgICByZWNvdmVyeSwgYSBqb3VybmFsLWVuYWJs
 ZWQgVUZTIG9yIFpGUyBmaWxlIHN5c3RlbSBjYW4NCiAJICAgIGJlIHVzZWQu
 PC9wYXJhPg0KIAk8L3RpcD4NCkBAIC00NjE1LDQxICs0NjE0LDQwIEBADQog
 ICAgICAgPHNlY3QzPg0KIAk8dGl0bGU+R2VuZXJhbCBUcm91Ymxlc2hvb3Rp
 bmcgVGlwczwvdGl0bGU+DQogDQotCTxwYXJhPjxhY3JvbnltPkhBU1Q8L2Fj
 cm9ueW0+IHNob3VsZCBiZSBnZW5lcmFsbHkgd29ya2luZw0KLQkgIHdpdGhv
 dXQgYW55IGlzc3VlcywgaG93ZXZlciBhcyB3aXRoIGFueSBvdGhlciBzb2Z0
 d2FyZQ0KKwk8cGFyYT48YWNyb255bT5IQVNUPC9hY3JvbnltPiBzaG91bGQg
 Z2VuZXJhbGx5IHdvcmsNCisJICB3aXRob3V0IGlzc3Vlcy4gIEhvd2V2ZXIs
 IGFzIHdpdGggYW55IG90aGVyIHNvZnR3YXJlDQogCSAgcHJvZHVjdCwgdGhl
 cmUgbWF5IGJlIHRpbWVzIHdoZW4gaXQgZG9lcyBub3Qgd29yayBhcw0KIAkg
 IHN1cHBvc2VkLiAgVGhlIHNvdXJjZXMgb2YgdGhlIHByb2JsZW1zIG1heSBi
 ZSBkaWZmZXJlbnQsIGJ1dA0KIAkgIHRoZSBydWxlIG9mIHRodW1iIGlzIHRv
 IGVuc3VyZSB0aGF0IHRoZSB0aW1lIGlzIHN5bmNocm9uaXplZA0KIAkgIGJl
 dHdlZW4gYWxsIG5vZGVzIG9mIHRoZSBjbHVzdGVyLjwvcGFyYT4NCiANCi0J
 PHBhcmE+VGhlIGRlYnVnZ2luZyBsZXZlbCBvZiB0aGUgJm1hbi5oYXN0ZC44
 OyBzaG91bGQgYmUNCi0JICBpbmNyZWFzZWQgd2hlbiB0cm91Ymxlc2hvb3Rp
 bmcgPGFjcm9ueW0+SEFTVDwvYWNyb255bT4NCi0JICBwcm9ibGVtcy4gIFRo
 aXMgY2FuIGJlIGFjY29tcGxpc2hlZCBieSBzdGFydGluZyB0aGUNCisJPHBh
 cmE+V2hlbiB0cm91Ymxlc2hvb3RpbmcgPGFjcm9ueW0+SEFTVDwvYWNyb255
 bT4gcHJvYmxlbXMsDQorCSAgdGhlIGRlYnVnZ2luZyBsZXZlbCBvZiAmbWFu
 Lmhhc3RkLjg7IHNob3VsZCBiZSBpbmNyZWFzZWQNCisJICBieSBzdGFydGlu
 ZyB0aGUNCiAJICAmbWFuLmhhc3RkLjg7IGRhZW1vbiB3aXRoIHRoZSA8bGl0
 ZXJhbD4tZDwvbGl0ZXJhbD4NCi0JICBhcmd1bWVudC4gIE5vdGUsIHRoYXQg
 dGhpcyBhcmd1bWVudCBtYXkgYmUgc3BlY2lmaWVkDQorCSAgYXJndW1lbnQu
 ICBOb3RlIHRoYXQgdGhpcyBhcmd1bWVudCBtYXkgYmUgc3BlY2lmaWVkDQog
 CSAgbXVsdGlwbGUgdGltZXMgdG8gZnVydGhlciBpbmNyZWFzZSB0aGUgZGVi
 dWdnaW5nIGxldmVsLiAgQQ0KLQkgIGxvdCBvZiB1c2VmdWwgaW5mb3JtYXRp
 b24gbWF5IGJlIG9idGFpbmVkIHRoaXMgd2F5LiAgSXQNCi0JICBzaG91bGQg
 YmUgYWxzbyBjb25zaWRlcmVkIHRvIHVzZSA8bGl0ZXJhbD4tRjwvbGl0ZXJh
 bD4NCi0JICBhcmd1bWVudCwgd2hpY2ggd2lsbCBzdGFydCB0aGUgJm1hbi5o
 YXN0ZC44OyBkYWVtb24gaW4NCisJICBsb3Qgb2YgdXNlZnVsIGluZm9ybWF0
 aW9uIG1heSBiZSBvYnRhaW5lZCB0aGlzIHdheS4gIENvbnNpZGVyDQorCSAg
 YWxzbyB1c2luZyB0aGUgPGxpdGVyYWw+LUY8L2xpdGVyYWw+DQorCSAgYXJn
 dW1lbnQsIHdoaWNoIHN0YXJ0cyB0aGUgJm1hbi5oYXN0ZC44OyBkYWVtb24g
 aW4gdGhlDQogCSAgZm9yZWdyb3VuZC48L3BhcmE+DQogICAgICA8L3NlY3Qz
 Pg0KIA0KICAgICAgIDxzZWN0MyBpZD0iZGlza3MtaGFzdC1zYiI+DQogCTx0
 aXRsZT5SZWNvdmVyaW5nIGZyb20gdGhlIFNwbGl0LWJyYWluIENvbmRpdGlv
 bjwvdGl0bGU+DQogDQotCTxwYXJhPlRoZSBjb25zZXF1ZW5jZSBvZiBhIHNp
 dHVhdGlvbiB3aGVuIGJvdGggbm9kZXMgb2YgdGhlDQotCSAgY2x1c3RlciBh
 cmUgbm90IGFibGUgdG8gY29tbXVuaWNhdGUgd2l0aCBlYWNoIG90aGVyIGFu
 ZCBib3RoDQotCSAgYXJlIGNvbmZpZ3VyZWQgYXMgcHJpbWFyeSBub2RlcyBp
 cyBjYWxsZWQNCi0JICA8bGl0ZXJhbD5zcGxpdC1icmFpbjwvbGl0ZXJhbD4u
 ICBUaGlzIGlzIGEgZGFuZ2Vyb3VzDQorCTxwYXJhPjxsaXRlcmFsPlNwbGl0
 LWJyYWluPC9saXRlcmFsPiBpcyB3aGVuIHRoZSBub2RlcyBvZiB0aGUNCisJ
 ICBjbHVzdGVyIGFyZSB1bmFibGUgdG8gY29tbXVuaWNhdGUgd2l0aCBlYWNo
 IG90aGVyLCBhbmQgYm90aA0KKwkgIGFyZSBjb25maWd1cmVkIGFzIHByaW1h
 cnkuICBUaGlzIGlzIGEgZGFuZ2Vyb3VzDQogCSAgY29uZGl0aW9uIGJlY2F1
 c2UgaXQgYWxsb3dzIGJvdGggbm9kZXMgdG8gbWFrZSBpbmNvbXBhdGlibGUN
 Ci0JICBjaGFuZ2VzIHRvIHRoZSBkYXRhLiAgVGhpcyBzaXR1YXRpb24gaGFz
 IHRvIGJlIGhhbmRsZWQgYnkNCi0JICB0aGUgc3lzdGVtIGFkbWluaXN0cmF0
 b3IgbWFudWFsbHkuPC9wYXJhPg0KKwkgIGNoYW5nZXMgdG8gdGhlIGRhdGEu
 ICBUaGlzIHByb2JsZW0gbXVzdCBiZSBjb3JyZWN0ZWQNCisJICBtYW51YWxs
 eSBieSB0aGUgc3lzdGVtIGFkbWluaXN0cmF0b3IuPC9wYXJhPg0KIA0KLQk8
 cGFyYT5JbiBvcmRlciB0byBmaXggdGhpcyBzaXR1YXRpb24gdGhlIGFkbWlu
 aXN0cmF0b3IgaGFzIHRvDQorCTxwYXJhPlRoZSBhZG1pbmlzdHJhdG9yIG11
 c3QNCiAJICBkZWNpZGUgd2hpY2ggbm9kZSBoYXMgbW9yZSBpbXBvcnRhbnQg
 Y2hhbmdlcyAob3IgbWVyZ2UgdGhlbQ0KLQkgIG1hbnVhbGx5KSBhbmQgbGV0
 IHRoZSA8YWNyb255bT5IQVNUPC9hY3JvbnltPiBwZXJmb3JtDQotCSAgdGhl
 IGZ1bGwgc3luY2hyb25pemF0aW9uIG9mIHRoZSBub2RlIHdoaWNoIGhhcyB0
 aGUgYnJva2VuDQotCSAgZGF0YS4gIFRvIGRvIHRoaXMsIGlzc3VlIHRoZSBm
 b2xsb3dpbmcgY29tbWFuZHMgb24gdGhlIG5vZGUNCisJICBtYW51YWxseSkg
 YW5kIGxldCA8YWNyb255bT5IQVNUPC9hY3JvbnltPiBwZXJmb3JtDQorCSAg
 ZnVsbCBzeW5jaHJvbml6YXRpb24gb2YgdGhlIG5vZGUgd2hpY2ggaGFzIHRo
 ZSBicm9rZW4NCisJICBkYXRhLiAgVG8gZG8gdGhpcywgaXNzdWUgdGhlc2Ug
 Y29tbWFuZHMgb24gdGhlIG5vZGUNCiAJICB3aGljaCBuZWVkcyB0byBiZSBy
 ZXN5bmNocm9uaXplZDo8L3BhcmE+DQogDQogICAgICAgICA8c2NyZWVuPiZw
 cm9tcHQucm9vdDsgPHVzZXJpbnB1dD5oYXN0Y3RsIHJvbGUgaW5pdCAmbHQ7
 cmVzb3VyY2UmZ3Q7PC91c2VyaW5wdXQ+DQo=
 
 ---902635197-1350422020-1314194797=:60591--
Responsible-Changed-From-To: freebsd-doc->wblock 
Responsible-Changed-By: wblock 
Responsible-Changed-When: Sun Dec 4 19:06:15 UTC 2011 
Responsible-Changed-Why:  
Take. 

http://www.freebsd.org/cgi/query-pr.cgi?pr=159897 
State-Changed-From-To: open->closed 
State-Changed-By: wblock 
State-Changed-When: Mon Dec 5 23:47:30 UTC 2011 
State-Changed-Why:  
Committed. 

http://www.freebsd.org/cgi/query-pr.cgi?pr=159897 
>Unformatted:
