From tools-team-bounces@ietf.org  Fri Apr  1 08:22:26 2005
Received: from ietf-mx.ietf.org (ietf-mx.ietf.org [132.151.6.1])
	by ietf.org (8.9.1a/8.9.1a) with ESMTP id IAA23449;
	Fri, 1 Apr 2005 08:22:26 -0500 (EST)
Received: from megatron.ietf.org ([132.151.6.71])
	by ietf-mx.ietf.org with esmtp (Exim 4.33)
	id 1DHMDs-0001iT-Fd; Fri, 01 Apr 2005 08:30:04 -0500
Received: from localhost.localdomain ([127.0.0.1] helo=megatron.ietf.org)
	by megatron.ietf.org with esmtp (Exim 4.32)
	id 1DHM20-00012l-UV; Fri, 01 Apr 2005 08:17:48 -0500
Received: from odin.ietf.org ([132.151.1.176] helo=ietf.org)
	by megatron.ietf.org with esmtp (Exim 4.32) id 1DH7U2-0003e1-5B
	for tools-team@megatron.ietf.org; Thu, 31 Mar 2005 16:45:47 -0500
Received: from ietf-mx.ietf.org (ietf-mx.ietf.org [132.151.6.1])
	by ietf.org (8.9.1a/8.9.1a) with ESMTP id QAA15367
	for <tools-team@ietf.org>; Thu, 31 Mar 2005 16:45:44 -0500 (EST)
Received: from [64.151.105.12] (helo=zak.ecotroph.net)
	by ietf-mx.ietf.org with esmtp (Exim 4.33) id 1DH7bE-0002Re-Ck
	for tools-team@ietf.org; Thu, 31 Mar 2005 16:53:12 -0500
Received: from [10.131.244.197] ([::ffff:216.168.239.87])
	(AUTH: PLAIN leslie, TLS: TLSv1/SSLv3,256bits,AES256-SHA)
	by zak.ecotroph.net with esmtp; Thu, 31 Mar 2005 16:45:39 -0500
	id 000ABD5C.424C6F83.00004C81
Message-ID: <424C6F7A.0@thinkingcat.com>
Date: Thu, 31 Mar 2005 16:45:30 -0500
From: Leslie Daigle <leslie@thinkingcat.com>
User-Agent: Mozilla Thunderbird 1.0 (Macintosh/20041206)
X-Accept-Language: en-us, en
MIME-Version: 1.0
To: "Barbara B. Fuller" <bfuller@foretec.com>
Subject: Re: [Tools-team] Minutes from the 30 March 2005 Telechat
References: <424AE24C.3050402@levkowetz.com>
	<6.1.2.0.2.20050331103821.02b07af0@furball.foretec.com>
In-Reply-To: <6.1.2.0.2.20050331103821.02b07af0@furball.foretec.com>
Content-Type: text/plain; charset=ISO-8859-1; format=flowed
Content-Transfer-Encoding: 7bit
X-Spam-Score: 0.0 (/)
X-Scan-Signature: c0bedb65cce30976f0bf60a0a39edea4
Content-Transfer-Encoding: 7bit
X-Mailman-Approved-At: Fri, 01 Apr 2005 08:17:48 -0500
Cc: Michael Lee <mlee@foretec.com>, tools-team@ietf.org,
        Henrik Levkowetz <henrik@levkowetz.com>,
        "Amy K. Vezza" <amyk@foretec.com>
X-BeenThere: tools-team@ietf.org
X-Mailman-Version: 2.1.5
Precedence: list
List-Id: "The purpose of the TOOLS team is to provide IETF feedback and
	guidance during the development of software tools to support
	various parts of IETF activities." <tools-team.ietf.org>
List-Unsubscribe: <https://www1.ietf.org/mailman/listinfo/tools-team>,
	<mailto:tools-team-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www1.ietf.org/pipermail/tools-team>
List-Post: <mailto:tools-team@ietf.org>
List-Help: <mailto:tools-team-request@ietf.org?subject=help>
List-Subscribe: <https://www1.ietf.org/mailman/listinfo/tools-team>,
	<mailto:tools-team-request@ietf.org?subject=subscribe>
Sender: tools-team-bounces@ietf.org
Errors-To: tools-team-bounces@ietf.org
X-Spam-Score: 0.0 (/)
X-Scan-Signature: d0bdc596f8dd1c226c458f0b4df27a88
Content-Transfer-Encoding: 7bit


Hmmm.... Well, my understanding was:

	1/ there exists a software tool that does most of
	   what is described in the document

	2/ there is no "go ahead" to do the embellishments
	   to that tool to do everything on the document's
	   wishlist -- nor is there consensus that the
	   ideal tool described therein is what the IETF
	   really wants

These require separate follow-up:

	1/ needs someone to check out Michael & Sunny's
	   existing software against the document's
	   minimal description, and cause that to go live.

	   It might be good for someone from the TOOLS
	   team or the IESG to take that action item; I'm
	   happy to participate as a bridge, but not the
	   lead.

	2/ is on hold, as far as I can tell, until there
	   is more of a community sense that it's the right
	   way to go (and there is the possibility of evaluating
	   it against other possible development plans).


Make sense?

Leslie.

Barbara B. Fuller wrote:
> Hi Henrik:
> 
> At 12:30 PM 3/30/2005, you wrote:
> 
>>         Bill asked about knowledge about the liaison tool.
>>         Fred baker was working on something.  No knowledge
>>         among the tools team about the tool apart from that.
> 
> 
> The initial version of the Liasion Statement Posting Tool was developed 
> by the Secretariat with guidance from Fred Baker.  It was put "on hold" 
> in order to resolve some policy-related issues that might affect certain 
> features.  My understanding is that the Secretariat will resume work on 
> the tool when directed to do so by Leslie Daigle.
> 
> Regards,
> 
> Barbara
> 
> ------------------------------------------------
> Barbara B. Fuller
> Acting Executive Director
> Internet Engineering Task Force
> 
> Natick, Massachusetts Office:
> 
> Phone: +1-508-650-4020
> Fax:     +1-508-650-4639
> 
> Reston, Virginia Office:
> 
> Phone: +1-703-620-9053
> Fax:     +1-703-620-9071

_______________________________________________
Tools-team mailing list
Tools-team@ietf.org
https://www1.ietf.org/mailman/listinfo/tools-team


From tools-team-bounces@ietf.org  Sun Apr  3 09:06:05 2005
Received: from ietf-mx.ietf.org (ietf-mx.ietf.org [132.151.6.1])
	by ietf.org (8.9.1a/8.9.1a) with ESMTP id JAA21669;
	Sun, 3 Apr 2005 09:06:05 -0400 (EDT)
Received: from megatron.ietf.org ([132.151.6.71])
	by ietf-mx.ietf.org with esmtp (Exim 4.33)
	id 1DI4vW-0004Ay-7n; Sun, 03 Apr 2005 09:14:06 -0400
Received: from localhost.localdomain ([127.0.0.1] helo=megatron.ietf.org)
	by megatron.ietf.org with esmtp (Exim 4.32)
	id 1DI4iv-00063D-F3; Sun, 03 Apr 2005 09:01:05 -0400
Received: from odin.ietf.org ([132.151.1.176] helo=ietf.org)
	by megatron.ietf.org with esmtp (Exim 4.32) id 1DI4is-00062z-Lf
	for tools-team@megatron.ietf.org; Sun, 03 Apr 2005 09:01:04 -0400
Received: from ietf-mx.ietf.org (ietf-mx.ietf.org [132.151.6.1])
	by ietf.org (8.9.1a/8.9.1a) with ESMTP id JAA21276
	for <tools-team@ietf.org>; Sun, 3 Apr 2005 09:01:01 -0400 (EDT)
Received: from av5-1-sn1.fre.skanova.net ([81.228.11.111])
	by ietf-mx.ietf.org with esmtp (Exim 4.33) id 1DI4qc-0003pA-3v
	for tools-team@ietf.org; Sun, 03 Apr 2005 09:09:02 -0400
Received: by av5-1-sn1.fre.skanova.net (Postfix, from userid 502)
	id E2EF537F15; Sun,  3 Apr 2005 15:00:45 +0200 (CEST)
Received: from smtp3-1-sn1.fre.skanova.net (smtp3-1-sn1.fre.skanova.net
	[81.228.11.163])
	by av5-1-sn1.fre.skanova.net (Postfix) with ESMTP id D1B2F37E4A
	for <tools-team@ietf.org>; Sun,  3 Apr 2005 15:00:45 +0200 (CEST)
Received: from shiraz.levkowetz.com (h195n1fls311o871.telia.com
	[213.64.174.195])
	by smtp3-1-sn1.fre.skanova.net (Postfix) with ESMTP id B48D337E42
	for <tools-team@ietf.org>; Sun,  3 Apr 2005 15:00:45 +0200 (CEST)
Received: from localhost ([127.0.0.1])
	by shiraz.levkowetz.com with esmtp (Exim 4.50) id 1DI4ib-0004pP-Fi
	for tools-team@ietf.org; Sun, 03 Apr 2005 15:00:45 +0200
Message-ID: <424FE8FD.4050901@levkowetz.com>
Date: Sun, 03 Apr 2005 15:00:45 +0200
From: Henrik Levkowetz <henrik@levkowetz.com>
User-Agent: Mozilla Thunderbird 1.0 (Macintosh/20041206)
X-Accept-Language: en-us, en
MIME-Version: 1.0
To: IETF TOOLS <tools-team@ietf.org>
X-Enigmail-Version: 0.89.5.0
X-Enigmail-Supports: pgp-inline, pgp-mime
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 7bit
X-SA-Exim-Connect-IP: 127.0.0.1
X-SA-Exim-Mail-From: henrik@levkowetz.com
X-SA-Exim-Scanned: No (on shiraz.levkowetz.com);
	SAEximRunCond expanded to false
X-Spam-Score: 0.0 (/)
X-Scan-Signature: ded6070f7eed56e10c4f4d0d5043d9c7
Content-Transfer-Encoding: 7bit
Subject: [Tools-team] [Fwd: Re: Last Call Expired:
	<draft-ietf-tools-draft-submission>]
X-BeenThere: tools-team@ietf.org
X-Mailman-Version: 2.1.5
Precedence: list
List-Id: "The purpose of the TOOLS team is to provide IETF feedback and
	guidance during the development of software tools to support
	various parts of IETF activities." <tools-team.ietf.org>
List-Unsubscribe: <https://www1.ietf.org/mailman/listinfo/tools-team>,
	<mailto:tools-team-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www1.ietf.org/pipermail/tools-team>
List-Post: <mailto:tools-team@ietf.org>
List-Help: <mailto:tools-team-request@ietf.org?subject=help>
List-Subscribe: <https://www1.ietf.org/mailman/listinfo/tools-team>,
	<mailto:tools-team-request@ietf.org?subject=subscribe>
Sender: tools-team-bounces@ietf.org
Errors-To: tools-team-bounces@ietf.org
X-Spam-Score: 0.0 (/)
X-Scan-Signature: 963faf56c3a5b6715f0b71b66181e01a
Content-Transfer-Encoding: 7bit

Forwarding a comment from Briant regarding the draft submission
draft.

	Henrik

-------- Original Message --------
Subject: Re: Last Call Expired: <draft-ietf-tools-draft-submission>
Date: Fri, 01 Apr 2005 15:18:58 +0200
From: Brian E Carpenter <brc@zurich.ibm.com>
To: Henrik Levkowetz <henrik@levkowetz.com>

OK, I agree that all of that is constructive comment, so I think
that you should go ahead with a revised version that I can
put in front of the IESG. The quicker the better; personally
I'd like to get this going as quickly as possible so that the
"new" secretariat can get off to a good start.

I don't see any reason to make this Experimental, as one of the
comments suggests. It isn't a protocol. Informational sounds
fine to me. I should mention that comment to the IESG, I guess.

Thanks
    Brian

Henrik Levkowetz wrote:
> Hi Brian,
> 
> On 03/29/2005 11:25 AM Brian E Carpenter said the following:
> 
>> I'm not sure I've seen any last call comments since
>> Mpls, and I wasn't tracking them before then. How about
>> you? (Apart from Barbara's comments,of course, which have
>> to be handled.)
>>
>>     Brian
> 
> 
> There were 2 other responses, quoted below.  My understanding
> of these are that they require some cleanup, but no substantive
> changes:
> 
> On 03/02/2005 05:29 PM Frank Ellermann said the following:
> 
>> Hi, maybe some typos or cases of DEnglish on my side:
>>
>> | A draft which identifier (a.k.a.  filename) is known and
>> | starts with "draft-ietf-".
>>
>> s/which identifier/identifier which/ or s/which/whose/ (?)
>>
>> | documents, Secretariat does not accept
>>
>> s/, Secretariat/, the secretariat/  AFAIK there is or will be
>> a new name for the old (trademarked ?) "capital S" secretariat.
>>
>> | As a result, IESG and RFC Editor may have to spend resources
>>
>> s /, IESG/, the IESG/  I don't look for further similar cases,
>>    maybe it's only me who would add tons of "the" to this text.
>>
>> | If any of the include PIs
>>
>> s/include/included/
>>
>> | the Toolset attempts to generate plain text format from
>> | submitted XML sources (R70/b).
>> |
>> | If XML sources are available, the Toolset generates HTML
>> | draft format
>>
>> In the latter case it apparently _also_ generates (X)HTML.  In
>> the former case if an attempt to generate plain text fails, why
>> not exit with an error mesage instead of _also_ trying HTML ?
>>
>> | The Toolset requires author email addresses
>>
>> It should allow to specify an address outside of the submitted
>> draft for privacy reasons.  The author could use an URL in the
>> published text, which is not "obviously" a mail address, e.g.
>> <uri>http://purl.net/xyzzy/mailto/webmaster</uri> in XML.
>>
>> | "surprise" co-authorships has happened
>>
>> s/has/have/ or /ships/ship/
>>
>> | if the interpreter managed to extract draft title
>>
>> s/draft/a draft/  Obviously I don't insist on a "the".
>>
>> | An IETF IPR Statement and other boilerplate required for
>> | drafts according to [RFC3667] and [RFC3668
>>
>> s/RFC3667/BCP 78/ and s/RFC3668/BCP 79/
>>
>> Actually I don't understand why "the Toolset" cannot insert an
>> equivalent ipr="full3667" or ipr="fullshit" on its own behalf,
>> asking the author how much "fullshit" (s)he's ready to tolerate
>> at this stage.
>>
>> Please note somewhere that submissions to the RfC-editor don't
>> require "fullshit" as long as they cover it by broader rights.
>> If that's the case, IANAL.
>>
>> | a standard word-based diff is sufficient short-term
>>
>> s/sufficient short-term/sufficiently short-term/ or similar,
>> or only another missing "a" if short-term is a noun.
>>
>> | Toolset may try several recent xml2rfc versions
>>
>> It should also try a decent XML validator before xml2rfc based
>> on the specified DTD.  Skipping the next chapters up to 14.  In
>> chapter 16 (email-interface) you have the required mail address
>> even if you can't extract it from the meta-data.
>>
>>                              Bye, Frank
> 
> 
> On 03/02/2005 05:40 PM Bruce Lilly said the following:
> 
>> The IESG Secretary announced, via the IETF-Announce list:
>>
>>> The IESG has received a request from the TOOLS team to consider the 
>>> following document:
>>>
>>> - 'Requirements for IETF Draft Submission Toolset '
>>>   <draft-ietf-tools-draft-submission-07.txt> as an Informational RFC
>>>
>>> The IESG plans to make a decision in the next few weeks, and solicits
>>> final comments on this action.  Please send any comments to the
>>> iesg@ietf.org or ietf@ietf.org mailing lists by 2005-03-28.
>>
>>
>>
>> I've suggested (via Reply-To) discussion on the IETF list.
>>
>>
>>> Note that this is an unusual document, in that it doesn't specify a 
>>> protocol
>>> or a procedure; instead, it specifies requirements for a tool to make 
>>> IETF
>>> procedures run more smoothly. The process that produced this (the 
>>> Tools team)
>>> is itself an experiment; in addition to commenting on the content of the
>>> document, comments on whether or not it makes sense to publish this as
>>> an RFC, and comments on the process that produced it, are appropriate.
>>>
>>> The file can be obtained via
>>> http://www.ietf.org/internet-drafts/draft-ietf-tools-draft-submission-07.txt 
>>>
>>
>>
>>
>> Comment on the substance and proposed procedure:
>>
>> It seems odd that there is no provision for upload of nroff source
>> (RFC 2223) mentioned in sections 7 and 8 of the draft.
>>
>> The draft seems heavily oriented toward use of XML, which (to
>> paraphrase the draft) some IETFers find unusable for preparation of
>> drafts and RFCs.
>>
>> Editorial comment:
>>
>> The draft could benefit from a grammar/style check; in particular,
>> insertion of instances of the definite article "the" in appropriate
>> places would improve readability.
>>
>> Comment on publication:
>>
>> Publication as an Experimental RFC seems appropriate.  Alternatively,
>> entering the Standards Track at Proposed might also be suitable. If
>> it is expected that there will be multiple implementations, then
>> Standards Track would be preferable.  Conversely, if it is expected
>> that the Secretariat will have a single implementation, starting as
>> Experimental, then submitting a future version as BCP would probably
>> be more suitable.
> 
> 




_______________________________________________
Tools-team mailing list
Tools-team@ietf.org
https://www1.ietf.org/mailman/listinfo/tools-team


From tools-team-bounces@ietf.org  Tue Apr  5 13:55:56 2005
Received: from ietf-mx.ietf.org (ietf-mx.ietf.org [132.151.6.1])
	by ietf.org (8.9.1a/8.9.1a) with ESMTP id NAA12808;
	Tue, 5 Apr 2005 13:55:56 -0400 (EDT)
Received: from megatron.ietf.org ([132.151.6.71])
	by ietf-mx.ietf.org with esmtp (Exim 4.33)
	id 1DIsPZ-0002X8-7k; Tue, 05 Apr 2005 14:04:25 -0400
Received: from localhost.localdomain ([127.0.0.1] helo=megatron.ietf.org)
	by megatron.ietf.org with esmtp (Exim 4.32)
	id 1DIsGC-0006sc-L8; Tue, 05 Apr 2005 13:54:44 -0400
Received: from odin.ietf.org ([132.151.1.176] helo=ietf.org)
	by megatron.ietf.org with esmtp (Exim 4.32)
	id 1DIsGB-0006sP-3E; Tue, 05 Apr 2005 13:54:43 -0400
Received: from ietf-mx.ietf.org (ietf-mx.ietf.org [132.151.6.1])
	by ietf.org (8.9.1a/8.9.1a) with ESMTP id NAA12700;
	Tue, 5 Apr 2005 13:54:40 -0400 (EDT)
Received: from measurement-factory.com ([206.168.0.5])
	by ietf-mx.ietf.org with esmtp (Exim 4.33)
	id 1DIsOJ-0002VC-EU; Tue, 05 Apr 2005 14:03:10 -0400
Received: from pail.measurement-factory.com (nat.measurement-factory.com
	[206.168.0.3])
	by measurement-factory.com (8.12.9/8.12.9) with ESMTP id j35Hsa3a039485;
	Tue, 5 Apr 2005 11:54:36 -0600 (MDT)
	(envelope-from rousskov@measurement-factory.com)
Date: Tue, 05 Apr 2005 11:53:36 -0600
To: Internet-Drafts@ietf.org
References: <20041221224347.D44914@measurement-factory.com>
	<opsjyol5c6iz3etf0c9082f7@localhost.rousskov.org>
	<opsmiv460ziz3etf0c9082f7@pail.measurement-factory.com>
From: "Alex Rousskov" <rousskov@measurement-factory.com>
Organization: The Measurement Factory
Content-Type: multipart/mixed; boundary=----------YN836dmhAVA7SjyZyjwNAT
MIME-Version: 1.0
Message-ID: <opsortbmcriz3etf0c9082f7@pail.measurement-factory.com>
In-Reply-To: <opsmiv460ziz3etf0c9082f7@pail.measurement-factory.com>
User-Agent: Opera M2/7.54 (FreeBSD, build 955)
X-Spam-Score: 0.0 (/)
X-Scan-Signature: d62adab73c3674ddf4d2b0d221683819
Cc: IETF Tools <tools-team@ietf.org>
Subject: [Tools-team] Request To Publish: draft-ietf-tools-draft-info-02
X-BeenThere: tools-team@ietf.org
X-Mailman-Version: 2.1.5
Precedence: list
List-Id: "The purpose of the TOOLS team is to provide IETF feedback and
	guidance during the development of software tools to support
	various parts of IETF activities." <tools-team.ietf.org>
List-Unsubscribe: <https://www1.ietf.org/mailman/listinfo/tools-team>,
	<mailto:tools-team-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www1.ietf.org/pipermail/tools-team>
List-Post: <mailto:tools-team@ietf.org>
List-Help: <mailto:tools-team-request@ietf.org?subject=help>
List-Subscribe: <https://www1.ietf.org/mailman/listinfo/tools-team>,
	<mailto:tools-team-request@ietf.org?subject=subscribe>
Sender: tools-team-bounces@ietf.org
Errors-To: tools-team-bounces@ietf.org
X-Spam-Score: 0.0 (/)
X-Scan-Signature: 5e12d21a4de46ba01a82feaa82469733

------------YN836dmhAVA7SjyZyjwNAT
Content-Type: text/plain; format=flowed; delsp=yes; charset=us-ascii
Content-Transfer-Encoding: 8bit


Please post the attached draft-ietf-tools-draft-info-02.txt file
as a Tools team Internet-Draft.

Thank you,

Alex.
------------YN836dmhAVA7SjyZyjwNAT
Content-Disposition: attachment; filename=draft-ietf-tools-draft-info-02.txt
Content-Type: text/plain; name=draft-ietf-tools-draft-info-02.txt
Content-Transfer-Encoding: 8bit




Tools team                                                   A. Rousskov
Internet-Draft                                   The Measurement Factory
Expires: October 6, 2005                                  April 04, 2005


     Requirements for Providing Information on IETF Internet-Drafts
                     draft-ietf-tools-draft-info-02

Status of this Memo

   This document is an Internet-Draft and is subject to all provisions
   of Section 3 of RFC 3667.  By submitting this Internet-Draft, each
   author represents that any applicable patent or other IPR claims of
   which he or she is aware have been or will be disclosed, and any of
   which he or she become aware will be disclosed, in accordance with
   RFC 3668.

   Internet-Drafts are working documents of the Internet Engineering
   Task Force (IETF), its areas, and its working groups.  Note that
   other groups may also distribute working documents as
   Internet-Drafts.

   Internet-Drafts are draft documents valid for a maximum of six months
   and may be updated, replaced, or obsoleted by other documents at any
   time.  It is inappropriate to use Internet-Drafts as reference
   material or to cite them other than as "work in progress."

   The list of current Internet-Drafts can be accessed at
   http://www.ietf.org/ietf/1id-abstracts.txt.

   The list of Internet-Draft Shadow Directories can be accessed at
   http://www.ietf.org/shadow.html.

   This Internet-Draft will expire on October 6, 2005.

Copyright Notice

   Copyright (C) The Internet Society (2005).

Abstract

   This document specifies what information IETF should provide about an
   IETF Internet-Draft.  Information requirements cover submitted,
   posted, published, expired, and other personal or Working Group
   drafts.






Rousskov                 Expires October 6, 2005                [Page 1]

Internet-Draft       Draft Information Requirements           April 2005


Table of Contents

   1.  Introduction . . . . . . . . . . . . . . . . . . . . . . . . .  3
   2.  State of this draft version  . . . . . . . . . . . . . . . . .  3
   3.  Scope  . . . . . . . . . . . . . . . . . . . . . . . . . . . .  3
   4.  Notation and Terminology . . . . . . . . . . . . . . . . . . .  3
   5.  Status quo . . . . . . . . . . . . . . . . . . . . . . . . . .  4
   6.  Draft information  . . . . . . . . . . . . . . . . . . . . . .  5
     6.1   Draft identifier . . . . . . . . . . . . . . . . . . . . .  6
     6.2   Draft metadata . . . . . . . . . . . . . . . . . . . . . .  6
       6.2.1   Status . . . . . . . . . . . . . . . . . . . . . . . .  7
     6.3   Draft versions . . . . . . . . . . . . . . . . . . . . . .  7
     6.4   Change history . . . . . . . . . . . . . . . . . . . . . .  7
     6.5   Draft events . . . . . . . . . . . . . . . . . . . . . . .  7
   7.  Draft Version  . . . . . . . . . . . . . . . . . . . . . . . .  8
     7.1   Version identifier . . . . . . . . . . . . . . . . . . . .  8
     7.2   Version metadata . . . . . . . . . . . . . . . . . . . . .  8
     7.3   Primary version format . . . . . . . . . . . . . . . . . .  8
     7.4   Version formats  . . . . . . . . . . . . . . . . . . . . .  8
   8.  Format information . . . . . . . . . . . . . . . . . . . . . .  8
     8.1   Format metadata  . . . . . . . . . . . . . . . . . . . . .  8
     8.2   Format data  . . . . . . . . . . . . . . . . . . . . . . .  9
   9.  Email interface  . . . . . . . . . . . . . . . . . . . . . . .  9
   10.   Implementation stages  . . . . . . . . . . . . . . . . . . .  9
   11.   Security Considerations  . . . . . . . . . . . . . . . . . .  9
   12.   IANA Considerations  . . . . . . . . . . . . . . . . . . . .  9
   13.   Compliance . . . . . . . . . . . . . . . . . . . . . . . . .  9
   A.  Comparison with current procedures . . . . . . . . . . . . . .  9
   B.  Acknowledgments  . . . . . . . . . . . . . . . . . . . . . . . 10
   C.  Change log . . . . . . . . . . . . . . . . . . . . . . . . . . 10
   14.   Normative References . . . . . . . . . . . . . . . . . . . . 11
       Author's Address . . . . . . . . . . . . . . . . . . . . . . . 11
       Intellectual Property and Copyright Statements . . . . . . . . 12


















Rousskov                 Expires October 6, 2005                [Page 2]

Internet-Draft       Draft Information Requirements           April 2005


1.  Introduction

   Public Internet-Drafts are primary means of structured communication
   within IETF.  The information that IETF currently provides about any
   given draft is decentralized and often insufficient to facilitate
   on-going draft review and use by IETFers and 3rd parties.  The IETF
   Tools team recommends creation of a single, authoritative, and
   comprehensive IETF source for draft information.  This document
   specifies what information IETF should provide about a draft and, to
   a limited extent, how that information needs to be provided.

   Most, if not all, requirements in this document are inspired by
   existing sources of draft information, both on official IETF web
   sites and sites administered outside of IETF.

2.  State of this draft version

   This draft version is meant to contain a complete list of draft
   information items.  Some items need more documentation and
   supplementary sections are missing content.  Tools team review has
   started, but this version may not represent Tools team consensus.
   The text has not been polished.

   Please review this draft.  Did we miss any draft information items
   you want IETF to provide? Should we remove some of the items?  We are
   also looking for additional pointers to resources providing useful
   draft information.  Please post your comments on
   tools-discuss@ietf.org mailing list or email them directly to the
   author.

   RFC Editor Note: Please remove this section for the final publication
   of the document.  It has been inspired by
   draft-rousskov-newtrk-id-state and related NEWTRK WG discussions.

3.  Scope

   The document scope is a single Internet-Draft, including multiple
   versions and formats of the same draft.  The requirements cover
   submitted, posted, published, expired, and unknown personal or
   Working Group drafts.

   The interfaces required to locate a draft or correlate information
   about multiple drafts are out of scope.

4.  Notation and Terminology

   This sections provides definitions for terms which are frequently
   used in this document.



Rousskov                 Expires October 6, 2005                [Page 3]

Internet-Draft       Draft Information Requirements           April 2005


   posted draft: A draft accepted into the public IETF draft repository
      and, hence, publicly available on the IETF web site.

   draft version: A meant-to-be-public snapshot of an Internet-Draft
      with a meant-to-be-unique version number.  Also known as a "draft
      revision".

   draft format: Any draft source or presentation format, including
      original and preprocessed XML, original or generated plain text as
      well as PDF, PostScript, and HTML formats.

   primary draft format: The first available draft format from the
      following list: plain text, PDF, PostScript, or XML.

   WG draft: A draft for which identifier (a.k.a.  filename) is known
      and starts with "draft-ietf-".  [[XXX4: This definition may need
      to be changed.  In fact, we may be able to simply refer to the
      "current IETF definition" here because this document does not care
      what are the IETF rules for determining WG drafts! If referring to
      the "current IETF definition" is a good idea, what document should
      we refer to? Do we have to refer to any specific document?
      --Alex]]

   individual draft: A draft other than a WG draft.

   Normative requirements in this document are English phrases ending
   with an "(Rnnn/s)" mark, where "nnn" is a unique requirement number,
   and "s" is a single letter code ("a", "b", or "c") specifying the
   implementation stage for the requirement.  Implementation stages are
   documented in Section 10.  [[XXX1: Normative requirements have not
   been identified yet.  --Alex]]

   This document does not specify how the implementation must obtain
   necessary draft information and does not require specific information
   rendering techniques.  However, implementation hints or examples are
   often useful.  To avoid mix up with normative requirements, such
   hints and examples are marked with a "Hint:" prefix.  Implementation
   hints do not carry any normative force, and a different
   implementation may be the best choice.

5.  Status quo

   At the time of writing, all of the draft information pieces described
   in this document are already available in one form or another.  Here
   is an incomplete list of resources providing draft information.  Note
   that provided information outside of this draft scope is not
   mentioned here.




Rousskov                 Expires October 6, 2005                [Page 4]

Internet-Draft       Draft Information Requirements           April 2005


   o  IETF "Internet-Drafts Database Interface" [1]: Provides draft
      title, status, state, intended RFC category, RFC number, related
      documents, abstract, author names and emails.  Format: HTML.

   o  IETF "Internet-Drafts Tracker" [2]: Provides draft name, version,
      status, state, shepherding AD name, modification date, WG name,
      and IESG discussion details.  Format: HTML.

   o  IETF "list of
		current and expired drafts" [3]: Provides draft
      name, version, date, status.  Format: tab-separated text.

   o  IETF "index of
		active drafts" [4]: Provides title, authors,
      date, name and wg for active drafts.  Format:  Free-form text.

   o  IETF "abstracts from active drafts" [5]: Provides title, authors,
      date, name, abstract and wg for active drafts.  Format: Free-form
      text.

   o  Henrik Levkowetz "Workgroup Status Pages" [6]: Provides draft
      name, date, all draft versions, diffs, nits, various draft
      formats, and last call information.  Format: XHTML.

   o  Potaroo Internet Drafts
		Repository [7]: Provides draft name,
      date, author names, WG name, abstract.  Includes expired drafts.
      Format: HTML.


6.  Draft information

   The following information must be available about a given draft:

   o  draft identifier (Section 6.1)

   o  draft meta-data (Section 6.2)

   o  available draft versions (Section 6.3)

   o  change history (Section 6.4)

   o  events (Section 6.5)

   Addition information such as a link to the "IESG draft discussion"
   tracking page, may be available but is outside of this document
   scope.

   [[XXX5: We need A defined XML schema in some form (Relax-NG, by
   example, or whatever) in which the information defined here has to be
   provided.  --Henrik]]



Rousskov                 Expires October 6, 2005                [Page 5]

Internet-Draft       Draft Information Requirements           April 2005


6.1  Draft identifier

   Draft identifier is a string that uniquely identifies any IETF draft
   regardless of its version or status.  At the time of writing, draft
   name can be used as an identifier, but implementations must not rely
   on that being the case.

   For example, future implementations may be able to keep the same
   identifier for a draft that changes ownership from individual to WG
   (assuming IETF decides that ownership changes do not create a new
   draft and, hence, a new internal identifier).

6.2  Draft metadata

   Draft metadata depends, in part, on draft status and includes the
   following items:

   o  title

   o  abstract

   o  authors information

   o  WG name

   o  draft status (Section 6.2.1)

   o  IESG states (for active and expired drafts)

   o  published document information (for published drafts)

   o  email address for draft discussion and comments

   o  "obsoletes X", "renamed to X", or "replaced by X" statements where
      "X" is a draft, RFC, or another document.

   Draft metadata applies to the draft as a whole rather than a specific
   draft version.  Nevertheless, it is based on the latest draft version
   and, hence, may change with draft revisions.  For example, the title
   and the abstract may be extracted from the latest draft version.

   All draft metadata must be available in format(s) suitable for human
   consumption and in XML format.

   [[XXX3: Should we list any fields that are meant-to-be extractable
   from the latest draft version? For example: creation date, expiration
   date, IPR boilerplate, formal references, required sections, etc.
   --Alex]]



Rousskov                 Expires October 6, 2005                [Page 6]

Internet-Draft       Draft Information Requirements           April 2005


6.2.1  Status

   A draft status is either "active", "expired", "published",
   "replaced", or "withdrawn".  The status determines a subset of
   available draft metadata.  The status also affects the availability
   of draft text and possibility of future text revisions.

   An active or expired draft can be in one or more states related to
   IESG review activity.  These states are not documented here, but
   implementations must provide this information using the current state
   list and state definitions maintained by IESG.

   Published document information (e.g., an RFC number) is provided for
   published drafts.  Replacement information (e.g., new draft name) is
   provided for replaced drafts.  [[XXX6: Should we define exactly what
   extra info is provided for published and replaced drafts? --Alex]]

6.3  Draft versions

   Each draft has at least one draft version associated with it.  Draft
   information includes a list of all draft versions, including the
   expired ones.  This index allows the user to assess draft revision
   activity and to access information specific to any version of a given
   draft (see Section 7).  It also allows to determine the latest draft
   version.

6.4  Change history

   Change history provides information about the difference between any
   two versions of a given draft.  That information includes the
   difference in draft version metadata and in draft version content.

   Change history may be precomputed or generated runtime, possibly
   depending on the versions being compared.  For example, the
   implementation may assume that most users would be interested in
   changes between sequential versions and precomputed that while
   providing runtime-generated differences between arbitrary two
   versions.

6.5  Draft events

   Draft events information includes a list of all issued IETF events
   associated with the draft.  This document does not define an IETF
   event interface, but typical entries might include "new draft version
   available" and "WG last call issued" with such details as "event
   time", "event originator", and "informal event comments".





Rousskov                 Expires October 6, 2005                [Page 7]

Internet-Draft       Draft Information Requirements           April 2005


7.  Draft Version

   For each available draft version, the following information should be
   provided:

   o  version identifier (Section 7.1)

   o  version meta-data (Section 7.2)

   o  primary version format (Section 7.3)

   o  all available version formats (Section 7.4)


7.1  Version identifier

   Draft version identifier is a non-negative integer number that
   uniquely identifies any draft version of a given draft.  Version
   identifier values must increase by one with every new draft version
   posted.

   At the time of writing, draft version number can be used as an
   identifier, but implementations must not rely on that being the case.
   For example, future implementations may be able to keep incrementing
   version identifier when a draft changes ownership from individual to
   WG.

7.2  Version metadata

   Draft version includes the following items:

   o  version number

   o  posting date

   o  nits


7.3  Primary version format

7.4  Version formats

8.  Format information

8.1  Format metadata

   Draft version format metadata includes the following items:




Rousskov                 Expires October 6, 2005                [Page 8]

Internet-Draft       Draft Information Requirements           April 2005


   o  format identifier (TXT, HTML, PDF, or PS)

   o  format MIME type

   o  format size

   o  format-specific info (e.g., number of pages for text formats or
      PDF-specific nits)


8.2  Format data

   Draft version format data is the content (a.k.a., "text") of the
   draft version, in the corresponding format.

9.  Email interface

   TBD

10.  Implementation stages

   TBD.

11.  Security Considerations

   TBD.

12.  IANA Considerations

   None.

13.  Compliance

   TBD.

Appendix A.  Comparison with current procedures

   This section summarizes major differences between information
   currently provided by IETF and what is being proposed, including
   violations of the current IETF rules.

   o  Currently, IETF provides only the latest draft version.  This
      document requires providing all unexpired versions.  This change
      allows to maintain a change history useful for draft review and
      discussion.  The change does not seem to contradict written IETF
      rules and principles.  If an experiment with providing unexpired
      but obsolete versions does not cause significant problems, the
      IETF rules might be modified to also provide all draft versions



Rousskov                 Expires October 6, 2005                [Page 9]

Internet-Draft       Draft Information Requirements           April 2005


      for unexpired drafts and, later, all draft versions ever posted.


Appendix B.  Acknowledgments

   The author gratefully acknowledges the contributions of Henrik
   Levkowetz.

   Special thanks to Marshall Rose for his xml2rfc tool.

Appendix C.  Change log

   RFC Editor Note: This section is to be removed during the final
   publication of the document.

   Internal WG revision control ID: $Id: draft-info.xml,v 1.6 2005/04/05
   17:48:28 rousskov Exp $

   version 02

      *  Resolved XXX2: this document will have its own set of term
         definitions, even though some may duplicate definitions in
         other Tools documents.  (Henrik Levkowetz)

      *  Added more IETF draft information sources and updated Henriks'
         sources (Henrik Levkowetz)

      *  Applied Henrik Levkowetz' review comments.

   version 01

      *  Added missing draft information pieces and claimed that this
         version lists all pieces we want to provide.  Many items still
         lack details.

      *  Separated draft information pieces into draft/version/format
         layers.

      *  Added "Status quo" section: Documented what draft information
         is currently available and listed a few sites providing that
         information.  More popular sites needed.

   version 00

      *  Initial version.






Rousskov                 Expires October 6, 2005               [Page 10]

Internet-Draft       Draft Information Requirements           April 2005


14.  Normative References

   [RFC3667]  Bradner, S., "IETF Rights in Contributions", BCP 78,
              RFC 3667, February 2004.

   [RFC3668]  Bradner, S., "Intellectual Property Rights in IETF
              Technology", BCP 79, RFC 3668, February 2004.

   [1]  <https://datatracker.ietf.org/public/idindex.cgi>

   [2]  <https://datatracker.ietf.org/public/pidtracker.cgi>

   [3]  <http://www.ietf.org/internet-drafts/all_id.txt>

   [4]  <http://www.ietf.org/internet-drafts/1id-index.txt>

   [5]  <http://www.ietf.org/internet-drafts/1id-abstracts.txt>

   [6]  <http://tools.ietf.org/wg/>

   [7]  <http://www.potaroo.net/ietf/>


Author's Address

   Alex Rousskov
   The Measurement Factory

   Email: rousskov@measurement-factory.com
   URI:   http://www.measurement-factory.com/





















Rousskov                 Expires October 6, 2005               [Page 11]

Internet-Draft       Draft Information Requirements           April 2005


Intellectual Property Statement

   The IETF takes no position regarding the validity or scope of any
   Intellectual Property Rights or other rights that might be claimed to
   pertain to the implementation or use of the technology described in
   this document or the extent to which any license under such rights
   might or might not be available; nor does it represent that it has
   made any independent effort to identify any such rights.  Information
   on the procedures with respect to rights in RFC documents can be
   found in BCP 78 and BCP 79.

   Copies of IPR disclosures made to the IETF Secretariat and any
   assurances of licenses to be made available, or the result of an
   attempt made to obtain a general license or permission for the use of
   such proprietary rights by implementers or users of this
   specification can be obtained from the IETF on-line IPR repository at
   http://www.ietf.org/ipr.

   The IETF invites any interested party to bring to its attention any
   copyrights, patents or patent applications, or other proprietary
   rights that may cover technology that may be required to implement
   this standard.  Please address the information to the IETF at
   ietf-ipr@ietf.org.


Disclaimer of Validity

   This document and the information contained herein are provided on an
   "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS
   OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY AND THE INTERNET
   ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS OR IMPLIED,
   INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE
   INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED
   WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.


Copyright Statement

   Copyright (C) The Internet Society (2005).  This document is subject
   to the rights, licenses and restrictions contained in BCP 78, and
   except as set forth therein, the authors retain all their rights.


Acknowledgment

   Funding for the RFC Editor function is currently provided by the
   Internet Society.




Rousskov                 Expires October 6, 2005               [Page 12]


------------YN836dmhAVA7SjyZyjwNAT
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Disposition: inline
Content-Transfer-Encoding: 7bit

_______________________________________________
Tools-team mailing list
Tools-team@ietf.org
https://www1.ietf.org/mailman/listinfo/tools-team

------------YN836dmhAVA7SjyZyjwNAT--




From tools-team-bounces@ietf.org  Tue Apr  5 19:37:16 2005
Received: from ietf-mx.ietf.org (ietf-mx.ietf.org [132.151.6.1])
	by ietf.org (8.9.1a/8.9.1a) with ESMTP id TAA01150;
	Tue, 5 Apr 2005 19:37:15 -0400 (EDT)
Received: from megatron.ietf.org ([132.151.6.71])
	by ietf-mx.ietf.org with esmtp (Exim 4.33)
	id 1DIxjx-0003ZI-QH; Tue, 05 Apr 2005 19:45:50 -0400
Received: from localhost.localdomain ([127.0.0.1] helo=megatron.ietf.org)
	by megatron.ietf.org with esmtp (Exim 4.32)
	id 1DIxbG-0000qb-El; Tue, 05 Apr 2005 19:36:50 -0400
Received: from odin.ietf.org ([132.151.1.176] helo=ietf.org)
	by megatron.ietf.org with esmtp (Exim 4.32) id 1DIxbE-0000qT-Sy
	for tools-team@megatron.ietf.org; Tue, 05 Apr 2005 19:36:48 -0400
Received: from ietf-mx.ietf.org (ietf-mx.ietf.org [132.151.6.1])
	by ietf.org (8.9.1a/8.9.1a) with ESMTP id TAA01114
	for <tools-team@ietf.org>; Tue, 5 Apr 2005 19:36:45 -0400 (EDT)
Received: from measurement-factory.com ([206.168.0.5])
	by ietf-mx.ietf.org with esmtp (Exim 4.33) id 1DIxjS-0003Vu-Vf
	for tools-team@ietf.org; Tue, 05 Apr 2005 19:45:20 -0400
Received: from pail.measurement-factory.com (nat.measurement-factory.com
	[206.168.0.3])
	by measurement-factory.com (8.12.9/8.12.9) with ESMTP id j35Naj3a049498;
	Tue, 5 Apr 2005 17:36:45 -0600 (MDT)
	(envelope-from rousskov@measurement-factory.com)
Date: Tue, 05 Apr 2005 17:35:45 -0600
To: "Henrik Levkowetz" <henrik@levkowetz.com>,
        "IETF TOOLS" <tools-team@ietf.org>
Subject: Re: [Tools-team] Secretariat Comments on
	draft-ietf-tools-draft-submission-07
References: <42385082.7020707@levkowetz.com>
From: "Alex Rousskov" <rousskov@measurement-factory.com>
Organization: The Measurement Factory
Content-Type: text/plain; format=flowed; delsp=yes; charset=us-ascii
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Message-ID: <opsor85vw4iz3etf0c9082f7@pail.measurement-factory.com>
In-Reply-To: <42385082.7020707@levkowetz.com>
User-Agent: Opera M2/7.54 (FreeBSD, build 955)
X-Spam-Score: 0.0 (/)
X-Scan-Signature: efc5d1db3729b4b7031f1bb5f5a30ae3
Content-Transfer-Encoding: 8bit
X-BeenThere: tools-team@ietf.org
X-Mailman-Version: 2.1.5
Precedence: list
List-Id: "The purpose of the TOOLS team is to provide IETF feedback and
	guidance during the development of software tools to support
	various parts of IETF activities." <tools-team.ietf.org>
List-Unsubscribe: <https://www1.ietf.org/mailman/listinfo/tools-team>,
	<mailto:tools-team-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www1.ietf.org/pipermail/tools-team>
List-Post: <mailto:tools-team@ietf.org>
List-Help: <mailto:tools-team-request@ietf.org?subject=help>
List-Subscribe: <https://www1.ietf.org/mailman/listinfo/tools-team>,
	<mailto:tools-team-request@ietf.org?subject=subscribe>
Sender: tools-team-bounces@ietf.org
Errors-To: tools-team-bounces@ietf.org
X-Spam-Score: 0.0 (/)
X-Scan-Signature: 75ac86d24bd0a3cd8a26e327ae61143e
Content-Transfer-Encoding: 8bit

On Wed, 2005/03/16 (MST), <henrik@levkowetz.com> wrote:

>>> Comments on "Requirements for IETF Draft Submission Toolset"
>>> draft-ietf-tools-draft-submission-07
>>> 1. Section 3, "Scope"
>>> Notification and expiration/archiving of old draft versions may be out
>>> scope for this toolset.  However, the toolset must be compatible with  
>>> the Secretariat's tools for sending notifications and creating  
>>> tombstones.
>>
>> Agreed.
>
> Ok

Not sure what this means in practice because the Toolset will be created  
by the Secretariat. So, the Secretariat will make the Toolset compatible  
or adjust other tools (or both), whatever they feel is the best approach.  
Are there any specific rules we should add to address the above comment? A  
"must be compatible with existing tools" seems like a too rigid rule  
because the existing tools can be changed if that's the best way to  
achieve compatibility.

>>> 2. Section 4, "Notation and Terminology"
>>> WG draft:  All drafts that are WG drafts begin with "draft-ietf."   
>>> However,
>>> not all drafts that begin with "draft-ietf" are working group drafts.   
>>> (Also see comment #6b.)
>>
>> The usage of this definition within the requirements document means that
>> the document does not require that the tool recognize WG drafts on any  
>> other basis than the "draft-ietf-" prefix.  If you feel that it is  
>> necessary to use a more complex lookup or algorithm to recognize WG  
>> drafts, I think that would be OK; however I'm not sure that it would  
>> actually be necessary for this tool to have that ability.
>>
>> Maybe it would be better to use some other term than "WG Draft" here -  
>> maybe we should call it "A draft following the WG draft naming  
>> convention" ...
>> although that is maybe a bit long ,:-)
>
> Agreed to try to find another expression than "WG drafts" for drafts  
> which are named "draft-ietf-", and update the document accordingly.

It looks like we failed to find a better expression, right? I have  
suggested "Group draft", but that seems like a bad solution after I  
re-read the above comment. Should I just add a note saying that there are  
WG drafts that are not considered WG drafts according to our definition,  
and that this document is not going to address that "problem"? Other  
solutions?

>>> 3. Section 6, "Overall Toolset Operation"
>>> (a) Manual adjustment and posting
>>> It is not clear why manual adjustment of meta-data and manual posting  
>>> are
>>> linked.  That is, why is it *mandatory* that manual adjustment of  
>>> meta-data
>>> be followed by manual posting by the Secretariat?  The option to post
>>> manually should always be available.  However, the option to adjust  
>>> metadata
>>> and post automatically should also be available.
>>
>> Ok, if this is not clear then it needs more explanation in the draft;  
>> but if I briefly try to explain how we have been thinking, then maybe  
>> we can see if this requirement makes sense or not.  Below:
>> <cases snipped>
>>
>> Agreed, this makes sense and is what we also had in mind.

So no changes are needed, right?

> The tool needs to make clear that the secretariat will not accept meta-
> data which is different than those given in the draft, so if the
> extracted data needs tweaking, and there is no extraction error, the
> data should be corrected in the draft, and the draft re-submitted.

I have added the following text:

    The manual validation and posting route is a Toolset bypass mechanism
    (see Section 15) not meant for fixing problems with the draft itself.
    The Secretariat does not generally correct submitted drafts.  If the
    draft needs tweaking to match submitter's intent, then the draft
    should be corrected by the submitter and resubmitted.

>>> (b) Hosting the toolset at an open-source-friendly project management  
>>> site.
>>> Should "toolset" be changed to "source code"?  It does not make sense  
>>> for the toolset to be hosted at such a site since the Secretariat will  
>>> need to modify the toolset from time to time to accommodate changes in  
>>> procedure, requests for new features, etc.
>>
>> Quite correct, the intention was to have the source code open, not to  
>> host the tool elsewhere.

The draft now says:

     Hint: Hosting the Toolset sources at an
     open-source-friendly project management site like SourceForge.net would
     provide the IETF community with decent, ready-to-use interface to  
access
     the code, documentation, bug reports, and discussion forums.

Note that this is an informal hint only! We do not require any hosting at  
all.

>>> 4. Section 7, "Upload Page"
>>> The Secretariat does not currently accept XML submissions.  The  
>>> Secretariat
>>> can move towards accepting XML submissions in the future.
>>
>> Yes.  The tools team see this as a policy decision, which has to be  
>> made by the IESG I believe, before it can be put into effect.
>
> Agreed.  This goes to the IESG.

No changes in the draft. The fact that accepting XML is a policy change is  
already documented in Appendix A.

>>> 5. Section 8, "Check Action"
>>> (a) The third paragraph states that "It is an error to submit a draft  
>>> which has neither plain text nor XML sources format (R68/a)."  The  
>>> "/a" implies that XML format will be included in the phase "a"  
>>> development.  However,
>>> Section 17, "Implementation Stages," states that development phase "a"
>>> "focuses on plain text draft submission via the web interface."   
>>> Focusing
>>> *only* on plain text draft submission in phase "a" seems appropriate.
>>
>> Yes, agreed, this was the intention.
>
> Ok

I am guessing that no changes are needed because /a does not imply any  
special action for XML sources when XML sources are not supported (or we  
would have to rewrite many rules to add "except when X is not yet  
supported"!).

>>> (b) The third paragraph also states that "PDF- or PostScript-only  
>>> drafts cannot be posted without Secretariat involvement."  This  
>>> statement is not clear.  First of all, if "it is an error to submit a  
>>> draft that has neither plain text nor XML sources format," then PDF-  
>>> or PS-only submissions are not allowed, and such drafts cannot be  
>>> posted with or without Secretariat
>>> involvement.
>>> The Secretariat currently does not accept "PDF- or PostScript-only"  
>>> drafts. A text version is *always* required.
>>
>> Ok.  This point was not clear to us.  The text should be corrected
>> accordingly.
>
> Ok. Correction needed.

Not sure what to do here. The fact that a submission has validation errors  
does not mean that the draft cannot be posted. It only means that  
automated posting is not possible. See the Bypass section. Secretariat can  
reject manual submissions for a variety of reasons not documented in our  
draft. On the other hand, I agree that we should not imply that manual  
submission of PDF-only drafts might work. Here is a polished text. Please  
let me know if any more changes are needed:

    It is an error to submit a draft which has neither plain text nor XML
    sources format (R68/a).  XML source is acceptable without
    accompanying plain text only if the Toolset successfully generates a
    draft in plain text format from the XML source, as a part of the
    processing step documented below (R69/b).  These rules imply that
    PDF- or PostScript-only drafts cannot be auto-posted.  Moreover, even
    manual Secretariat involvement cannot help with posting these drafts
    per IETF policy to always require a plain text format in addition to
    PDF or PostScript.  Furthermore, drafts containing PDF or Postscript
    format must not be auto-posted until the Toolset can validate that
    their content matches plain text format (R143/a).

>>> Furthermore, the Secretariat currently
>>> does not review PDF or PS submissions to ensure that they are  
>>> identical to
>>> the text version.  Rather, the staff posts them "as is."  If the rules
>>> change, and PDF- or PS-only drafts are allowed, then they should be
>>> auto-posted.  If PDF and PS drafts continue to be allowed as auxilliary
>>> formats, AND if the procedures require that the content of these  
>>> drafts is
>>> identical to the content of the text versions, then the comparisons  
>>> should be
>>> automated as well.
>>
>> No objections, makes sense to me.
>
> Ok.  Check if clarification needed.

I think the description above does not contradict and is mostly covered by  
the above draft text, including R143/a. We do not say that the Secretariat  
does not review PDF or PS formats, and I think that is OK. We only say  
that if your submission includes PDF, then you have to go manual route.  
The gray area is a result of a conflict between Secretariat abilities to  
compare PDF with text and IETF rules requiring submission of both. I do  
not think we have to address that problem in this draft.

>>> 6. Section 8.4, "Extraction"
>>> (a) The first sentence states that "The toolset extracts meta-data  
>>> from the
>>> following stored draft formats: plain text, XML, and other."  If  
>>> either (i) a
>>> text version of a draft, or (ii) an XML version that can be converted  
>>> to text
>>> is always required, then why is it necessary to be able to extract  
>>> data from
>>> any format other than text?  Only if the rules change, e.g., if PDF- or
>>> PS-only submissions are permitted, would it be necessary to provide  
>>> this feature.
>>
>> Correct.  One completely valid way of extracting the meta-data from the  
>> XML file would be to convert it to text and do the extraction there.   
>> We don't want to *require* that it be done this way, however - it's  
>> just as fine from a requirement viewpoint to do extraction directly  
>> from XML.  Up to the
>> implementor, really.
>
> Ok.  Check if clarification needed.

We require extraction from all formats because we want to validate that  
all metadata matches across all formats (in addition to and before we can  
validate that the contents matches as well). Once the Secretariat starts  
implementing this, they will hit this normative text:

    1.  All available meta-data entries must match across all submitted
        draft formats (R18/a).  For example, if the interpreter managed
        to extract a draft title from plain text and PDF format, both
        titles must match.  This requirement prevents accidental
        submission of mismatching formats.

There are other rules that clarify that you do not have to consider  
yet-unsupported formats in initial Toolset implementations.

I agree that it is sometimes possible to extract XML metadata by  
generating a plain-text version and extracting metadata from there. This  
hack can be a good starting point. However, I hope that mature Toolset  
versions will not use that hack. I am sure one can come up with a test  
case that exposes the dangers of this approach. And in any case, note that  
this hack is still much better than just trusting the plain text version  
submitted along with XML!

>>> (b) WG ID and WG flag: The word "tools" in
>>> draft-ietf-tools-draft-submission-07 is not a WG ID.  The tools team  
>>> is not a working group.  The WG flag would be "False" for this  
>>> document.
>>
>> Agreed.
>
> Ok.  Check if clarification needed.

Hmm... For the purposes of this document, Tools team is equivalent to a  
working group, but I have changed draft-ietf-tools-draft-submission to  
draft-ietf-sieve-vacation

>>> (c) creation date: Why is it necessary to note the "creation date"?   
>>> The "submission date" is the date that is relevant in this process.   
>>> The
>>> submission date is assigned by the system.  It is not extracted from  
>>> the draft.  (Also see comment #7)
>>
>> The idea is to have this part of the document meta-data be in agreement  
>> with the system's view of how long the document is valid.  Currently,  
>> there is no check on this, with the result that it is simply not  
>> possible to rely on the expiration date you see when you read a draft -  
>> and this is unfortunate...
>>
>> We should probably change the document to indicate that it's not really  
>> the creation date, but rather the Expiration date which is given in the  
>> draft which it is desirable to have in reasonable agreement with the  
>> system's
>> view of expiration date. [...]
>
> Ok.  Clarification needed in draft?

IMHO, the current draft requires the right thing and the Secretariat tools  
need to be adjusted (eventually) to support the requirement.

We should strive to base our requirements on the original/source data and  
not on the derivatives. Expiration date is a derivative of the draft date.
The draft date is encoded in the draft. If the system tries to assign its  
own date, then there will be a mismatch between draft metadata and draft  
text.

We can argue whether the draft date is the Creation Date, Submission Date,  
or Posting Date, but current requirements make such arguments silly  
because they ensure that all those dates are close enough. Thus, the only  
thing that matters is the match between draft text and metadata. Allowing  
the system to assign dates leads to mismatches. Requiring the Toolset to  
validate dates ensures a match.

>>> (d) expiration date: The expiration date is calculated by the system  
>>> .  It
>>> is not extracted from the draft.
>>
>> Ok.
>
> Ok.

Again, the current approach is broken IMO. The expiration date should be  
extracted from the draft, validated, and rejected if needed. See above for  
supporting arguments.

>>> 7. Section 8.5.1, "Absolute Requirements"
>>> Item 7.  Once again, why are we concerned about when the draft was  
>>> created?
>>
>> See above.

>>> 8. Section 8.5.4, "WG Approval"
>>> WG chair approval is mandatory for posting of version 00 WG drafts.
>>> Therefore, a mechanism for obtaining WG chair approval for posting of  
>>> these drafts should be included in this toolset.
>>
>> My personal viewpoint: Absolutely.
>
> Ok.

There is a logical disconnect here. Just because something is mandatory  
does not imply that the draft has to document the mechanism for  
implementing that something. For example, the draft has no requirements  
related to checking the language of the submission.

>> The team could not agree on exactly what the IETF requirements were on  
>> this point, if any, and has left this open to the implementor, to  
>> decide exactly how to implement this mechanism.

And I still think it was an acceptible decision. The implementor can  
document what they have implemented, and the IESG can verify that the  
implementation intends to do the right thing. Alternatively, somebody may  
write another draft with requirements specific for chair approval.  
Moreover, first versions of the toolset may require manual submission for  
00 versions of WG drafts.

>>> 9. Section 9.1, "External Meta-Data"
>>> (a) Submitter email address.  If the submitter is not a "lawful  
>>> submitter,"
>>> then why send the draft to the Secretariat?  What action would the
>>> Secretariat take?  Currently, the Secretariat does not make decisions  
>>> on the
>>> the lawfulness of a submitter.  If the tool determines that a  
>>> submitter is
>>> not lawful based on rules established by the IESG, then the submission  
>>> should
>>> be rejected.

What if a tool was wrong? For example, perhaps the tool failed to  
correctly extract author's info.

>> Ok.  We believed that the secretariat verified (for non -00 drafts)  
>> that the submitter was either one of the authors, or one of the WG  
>> chairs or ADs.  If this is incorrect, the IESG will have to decide  
>> whether such a check should be done before this is incorporated in the  
>> tool.
>
> Harald and Brian in the meeting indicated that they would like to not  
> change the rules for this at this point.  For now, there is no such  
> concept as a
> lawful submitter.  The draft needs to be updated, and this requirement  
> removed or described as a possible future enhancement.

I am afraid we need to revisit this. I misunderstood the implications when  
reading this two weeks ago. If we remove requirements related to the  
submitter identity, does it mean that I can post any new version of any  
IETF draft out there? What would stop me? Or is the plan to still say that  
the submitter has to be one of the authors, but not call it "lawful"?  
Today, we have the Secretariat to at least slow down those who submit fake  
drafts. With the web interface, a kid can write a script to update all  
drafts with a "funny" picture.  Please clarify!

>>> (b) List of drafts obsoleted by this draft.  An RFC can be "obsoleted"  
>>> by another RFC.  However, an Internet-Draft cannot be "obsoleted" by  
>>> another Internet-Draft.  It can only be "replaced" by another  
>>> Internet-Draft.
>>
>> Right.  I believe this is just bad terminology in the draft - should  
>> probably be re-written to use "removed" and/or "replaced.
>
> Ok.

IIRC, this 3rd-phase feature was requested by somebody. Changed to  
"replaced".

>>> (c) Indicating that an Internet-Draft replaces another Internet-Draft
>>> should not be optional...it should be mandatory.  The submitter must  
>>> indicate if an Internet-Draft replaces another Internet-Draft.
>>
>> Agreed.
>
> Ok.

I am not sure I follow. We do not have any requirements for submitters,  
only for the Toolset. Since not all drafts replace other drafts, it seems  
that the information is optional from the Toolset point of view. What am I  
missing here?

>>> 11. Section 13, "Post Manually Action"
>>> The "post manually" action should always be available, and should be  
>>> used if the automated posting process is not functioning properly.   
>>> However, the
>>> Secretariat does not make exceptions with respect to the posting of
>>> Internet-Drafts.  If an Internet-Draft is non-compliant, then the staff
>>> rejects it.  Therefore, if an Internet-Draft is non-compliant, then the
>>> submitter should not attempt to circumvent rejection by sending the  
>>> draft directly to the Secretariat.  As long as the toolset is working,  
>>> an
>>> Internet-Draft can be posted automatically.  If the toolset is not  
>>> working,
>>> then all Internet-Drafts must be posted manually...and the Secretariat  
>>> should
>>> receive lots of bug reports!!
>>
>> Agreed.  This agrees with the intention of the requirements document,  
>> but may be insufficiently clearly stated there.
>
> Ok.  Check if clarification needed in document.

I think there was a general misunderstanding on the part of the  
Secretariat that the Toolset somehow requires them to fix drafts or post  
broken drafts. I hope that is cleared now. The manual posting route is one  
of the most efficient bug reporting interfaces I can think of; if  
implemented correctly, it can supply the Secretariat with all the vital  
information in one bundle: what the submitter thinks should be happening,  
what the toolset says, and what the draft is. If you can think of specific  
ways to improve the draft in this context, please let me know.

Thank you,

Alex.

_______________________________________________
Tools-team mailing list
Tools-team@ietf.org
https://www1.ietf.org/mailman/listinfo/tools-team


From tools-team-bounces@ietf.org  Wed Apr  6 03:58:30 2005
Received: from ietf-mx.ietf.org (ietf-mx.ietf.org [132.151.6.1])
	by ietf.org (8.9.1a/8.9.1a) with ESMTP id DAA11755;
	Wed, 6 Apr 2005 03:58:30 -0400 (EDT)
Received: from megatron.ietf.org ([132.151.6.71])
	by ietf-mx.ietf.org with esmtp (Exim 4.33)
	id 1DJ5Z5-0003Kb-26; Wed, 06 Apr 2005 04:07:07 -0400
Received: from localhost.localdomain ([127.0.0.1] helo=megatron.ietf.org)
	by megatron.ietf.org with esmtp (Exim 4.32)
	id 1DJ5Q2-0006xK-KA; Wed, 06 Apr 2005 03:57:46 -0400
Received: from odin.ietf.org ([132.151.1.176] helo=ietf.org)
	by megatron.ietf.org with esmtp (Exim 4.32) id 1DJ5Q1-0006wp-56
	for tools-team@megatron.ietf.org; Wed, 06 Apr 2005 03:57:45 -0400
Received: from ietf-mx.ietf.org (ietf-mx.ietf.org [132.151.6.1])
	by ietf.org (8.9.1a/8.9.1a) with ESMTP id DAA11672
	for <tools-team@ietf.org>; Wed, 6 Apr 2005 03:57:42 -0400 (EDT)
Received: from pne-smtpout1-sn1.fre.skanova.net ([81.228.11.98])
	by ietf-mx.ietf.org with esmtp (Exim 4.33) id 1DJ5YI-0003Fy-6G
	for tools-team@ietf.org; Wed, 06 Apr 2005 04:06:20 -0400
Received: from shiraz.levkowetz.com (213.64.173.70) by
	pne-smtpout1-sn1.fre.skanova.net (7.1.026.7)
	id 41E3200D00B6AF4A; Wed, 6 Apr 2005 09:57:25 +0200
Received: from localhost ([127.0.0.1])
	by shiraz.levkowetz.com with esmtp (Exim 4.50)
	id 1DJ4vJ-0002pj-V1; Wed, 06 Apr 2005 09:26:02 +0200
Message-ID: <42538F09.5030205@levkowetz.com>
Date: Wed, 06 Apr 2005 09:26:01 +0200
From: Henrik Levkowetz <henrik@levkowetz.com>
User-Agent: Mozilla Thunderbird 1.0 (Macintosh/20041206)
X-Accept-Language: en-us, en
MIME-Version: 1.0
To: Alex Rousskov <rousskov@measurement-factory.com>
Subject: Re: [Tools-team] Secretariat Comments on
	draft-ietf-tools-draft-submission-07
References: <42385082.7020707@levkowetz.com>
	<opsor85vw4iz3etf0c9082f7@pail.measurement-factory.com>
In-Reply-To: <opsor85vw4iz3etf0c9082f7@pail.measurement-factory.com>
X-Enigmail-Version: 0.89.5.0
X-Enigmail-Supports: pgp-inline, pgp-mime
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 7bit
X-SA-Exim-Connect-IP: 127.0.0.1
X-SA-Exim-Mail-From: henrik@levkowetz.com
X-SA-Exim-Scanned: No (on shiraz.levkowetz.com);
	SAEximRunCond expanded to false
X-Spam-Score: 0.0 (/)
X-Scan-Signature: 8da0cbf8c1eef8eab03772f2044efec0
Content-Transfer-Encoding: 7bit
Cc: IETF TOOLS <tools-team@ietf.org>
X-BeenThere: tools-team@ietf.org
X-Mailman-Version: 2.1.5
Precedence: list
List-Id: "The purpose of the TOOLS team is to provide IETF feedback and
	guidance during the development of software tools to support
	various parts of IETF activities." <tools-team.ietf.org>
List-Unsubscribe: <https://www1.ietf.org/mailman/listinfo/tools-team>,
	<mailto:tools-team-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www1.ietf.org/pipermail/tools-team>
List-Post: <mailto:tools-team@ietf.org>
List-Help: <mailto:tools-team-request@ietf.org?subject=help>
List-Subscribe: <https://www1.ietf.org/mailman/listinfo/tools-team>,
	<mailto:tools-team-request@ietf.org?subject=subscribe>
Sender: tools-team-bounces@ietf.org
Errors-To: tools-team-bounces@ietf.org
X-Spam-Score: 0.0 (/)
X-Scan-Signature: 22f8e36c8d8be0bcbb9bf02fb6ce7335
Content-Transfer-Encoding: 7bit

on 2005-04-06 1:35 am Alex Rousskov said the following:
> On Wed, 2005/03/16 (MST), <henrik@levkowetz.com> wrote:
> 
>>>> Comments on "Requirements for IETF Draft Submission Toolset"
>>>> draft-ietf-tools-draft-submission-07
>>>> 1. Section 3, "Scope"
>>>> Notification and expiration/archiving of old draft versions may be out
>>>> scope for this toolset.  However, the toolset must be compatible with  
>>>> the Secretariat's tools for sending notifications and creating  
>>>> tombstones.
>>>
>>> Agreed.
>>
>> Ok
> 
> Not sure what this means in practice because the Toolset will be created  
> by the Secretariat. So, the Secretariat will make the Toolset compatible  
> or adjust other tools (or both), whatever they feel is the best approach.  
> Are there any specific rules we should add to address the above comment? A  
> "must be compatible with existing tools" seems like a too rigid rule  
> because the existing tools can be changed if that's the best way to  
> achieve compatibility.

Agreed.  Maybe add a note saying pretty much what the secretariat comment
says, to the scope section?

>>>> 2. Section 4, "Notation and Terminology"
>>>> WG draft:  All drafts that are WG drafts begin with "draft-ietf."   
>>>> However,
>>>> not all drafts that begin with "draft-ietf" are working group drafts.   
>>>> (Also see comment #6b.)
>>>
>>> The usage of this definition within the requirements document means that
>>> the document does not require that the tool recognize WG drafts on any  
>>> other basis than the "draft-ietf-" prefix.  If you feel that it is  
>>> necessary to use a more complex lookup or algorithm to recognize WG  
>>> drafts, I think that would be OK; however I'm not sure that it would  
>>> actually be necessary for this tool to have that ability.
>>>
>>> Maybe it would be better to use some other term than "WG Draft" here -  
>>> maybe we should call it "A draft following the WG draft naming  
>>> convention" ...
>>> although that is maybe a bit long ,:-)
>>
>> Agreed to try to find another expression than "WG drafts" for drafts  
>> which are named "draft-ietf-", and update the document accordingly.
> 
> It looks like we failed to find a better expression, right? I have  
> suggested "Group draft", but that seems like a bad solution after I  
> re-read the above comment. Should I just add a note saying that there are  
> WG drafts that are not considered WG drafts according to our definition,  
> and that this document is not going to address that "problem"? Other  
> solutions?

"WG-named draft" ?

>>>> 3. Section 6, "Overall Toolset Operation"
>>>> (a) Manual adjustment and posting
>>>> It is not clear why manual adjustment of meta-data and manual posting  
>>>> are
>>>> linked.  That is, why is it *mandatory* that manual adjustment of  
>>>> meta-data
>>>> be followed by manual posting by the Secretariat?  The option to post
>>>> manually should always be available.  However, the option to adjust  
>>>> metadata
>>>> and post automatically should also be available.
>>>
>>> Ok, if this is not clear then it needs more explanation in the draft;  
>>> but if I briefly try to explain how we have been thinking, then maybe  
>>> we can see if this requirement makes sense or not.  Below:
>>> <cases snipped>
>>>
>>> Agreed, this makes sense and is what we also had in mind.
> 
> So no changes are needed, right?

Right.

Possibly you could add something which Brian Carpenter pointed out, 
which is that before letting the toolset go live, we have a corpus
of thousands of recently submitted drafts with which we can test
the meta-data extraction algorithms, to be sure that meta-data
extraction will succeed in almost all cases, and thus avoid a large
percentage of drafts being sent on for manual handling because of
meta-data extraction failure.

>> The tool needs to make clear that the secretariat will not accept meta-
>> data which is different than those given in the draft, so if the
>> extracted data needs tweaking, and there is no extraction error, the
>> data should be corrected in the draft, and the draft re-submitted.
> 
> I have added the following text:
> 
>     The manual validation and posting route is a Toolset bypass mechanism
>     (see Section 15) not meant for fixing problems with the draft itself.
>     The Secretariat does not generally correct submitted drafts.  If the
>     draft needs tweaking to match submitter's intent, then the draft
>     should be corrected by the submitter and resubmitted.

Looks very good to me.

>>>> (b) Hosting the toolset at an open-source-friendly project management  
>>>> site.
>>>> Should "toolset" be changed to "source code"?  It does not make sense  
>>>> for the toolset to be hosted at such a site since the Secretariat will  
>>>> need to modify the toolset from time to time to accommodate changes in  
>>>> procedure, requests for new features, etc.
>>>
>>> Quite correct, the intention was to have the source code open, not to  
>>> host the tool elsewhere.
> 
> The draft now says:
> 
>      Hint: Hosting the Toolset sources at an
>      open-source-friendly project management site like SourceForge.net would
>      provide the IETF community with decent, ready-to-use interface to  
> access
>      the code, documentation, bug reports, and discussion forums.
> 
> Note that this is an informal hint only! We do not require any hosting at  
> all.

This still uses the 'hosting' word, which I think is unnecessary and
makes some people nervous - what about "Placing the toolset source
repository on an open-source friendly ..." ?

I think we want to give a stronger requirement than a hint about the open
source repository, so we don't need to back off this much in that
regard. The important thing is that it's clear that we're not talking
about hosting the tool itself there.


>>>> 4. Section 7, "Upload Page"
>>>> The Secretariat does not currently accept XML submissions.  The  
>>>> Secretariat
>>>> can move towards accepting XML submissions in the future.
>>>
>>> Yes.  The tools team see this as a policy decision, which has to be  
>>> made by the IESG I believe, before it can be put into effect.
>>
>> Agreed.  This goes to the IESG.
> 
> No changes in the draft. The fact that accepting XML is a policy change is  
> already documented in Appendix A.

Right.

>>>> 5. Section 8, "Check Action"
>>>> (a) The third paragraph states that "It is an error to submit a draft  
>>>> which has neither plain text nor XML sources format (R68/a)."  The  
>>>> "/a" implies that XML format will be included in the phase "a"  
>>>> development.  However,
>>>> Section 17, "Implementation Stages," states that development phase "a"
>>>> "focuses on plain text draft submission via the web interface."   
>>>> Focusing
>>>> *only* on plain text draft submission in phase "a" seems appropriate.
>>>
>>> Yes, agreed, this was the intention.
>>
>> Ok
> 
> I am guessing that no changes are needed because /a does not imply any  
> special action for XML sources when XML sources are not supported (or we  
> would have to rewrite many rules to add "except when X is not yet  
> supported"!).

Logically, I agree.  Since they have picked on this particular item,
it might still be good to add a note at this point.

>>>> (b) The third paragraph also states that "PDF- or PostScript-only  
>>>> drafts cannot be posted without Secretariat involvement."  This  
>>>> statement is not clear.  First of all, if "it is an error to submit a  
>>>> draft that has neither plain text nor XML sources format," then PDF-  
>>>> or PS-only submissions are not allowed, and such drafts cannot be  
>>>> posted with or without Secretariat
>>>> involvement.
>>>> The Secretariat currently does not accept "PDF- or PostScript-only"  
>>>> drafts. A text version is *always* required.
>>>
>>> Ok.  This point was not clear to us.  The text should be corrected
>>> accordingly.
>>
>> Ok. Correction needed.
> 
> Not sure what to do here. The fact that a submission has validation errors  
> does not mean that the draft cannot be posted. It only means that  
> automated posting is not possible. See the Bypass section. Secretariat can  
> reject manual submissions for a variety of reasons not documented in our  
> draft. On the other hand, I agree that we should not imply that manual  
> submission of PDF-only drafts might work. Here is a polished text. Please  
> let me know if any more changes are needed:
> 
>     It is an error to submit a draft which has neither plain text nor XML
>     sources format (R68/a).  XML source is acceptable without
>     accompanying plain text only if the Toolset successfully generates a
>     draft in plain text format from the XML source, as a part of the
>     processing step documented below (R69/b).  These rules imply that
>     PDF- or PostScript-only drafts cannot be auto-posted.  Moreover, even
>     manual Secretariat involvement cannot help with posting these drafts
>     per IETF policy to always require a plain text format in addition to
>     PDF or PostScript.  Furthermore, drafts containing PDF or Postscript
>     format must not be auto-posted until the Toolset can validate that
>     their content matches plain text format (R143/a).

s/per IETF policy/as the IETF policy is/

Maybe s!(R68/a)!(R68/a) (XML is only an option in stage b.)!

>>>> Furthermore, the Secretariat currently
>>>> does not review PDF or PS submissions to ensure that they are  
>>>> identical to
>>>> the text version.  Rather, the staff posts them "as is."  If the rules
>>>> change, and PDF- or PS-only drafts are allowed, then they should be
>>>> auto-posted.  If PDF and PS drafts continue to be allowed as auxilliary
>>>> formats, AND if the procedures require that the content of these  
>>>> drafts is
>>>> identical to the content of the text versions, then the comparisons  
>>>> should be
>>>> automated as well.
>>>
>>> No objections, makes sense to me.
>>
>> Ok.  Check if clarification needed.
> 
> I think the description above does not contradict and is mostly covered by  
> the above draft text, including R143/a. We do not say that the Secretariat  
> does not review PDF or PS formats, and I think that is OK. We only say  
> that if your submission includes PDF, then you have to go manual route.  
> The gray area is a result of a conflict between Secretariat abilities to  
> compare PDF with text and IETF rules requiring submission of both. I do  
> not think we have to address that problem in this draft.

There may still be a gap between the requirement that the toolset be able
to verify the pdf / ps drafts before permitting auto-posting, but no
verification being required on manual posting.  Not sure how to handle that
best.

>>>> 6. Section 8.4, "Extraction"
>>>> (a) The first sentence states that "The toolset extracts meta-data  
>>>> from the
>>>> following stored draft formats: plain text, XML, and other."  If  
>>>> either (i) a
>>>> text version of a draft, or (ii) an XML version that can be converted  
>>>> to text
>>>> is always required, then why is it necessary to be able to extract  
>>>> data from
>>>> any format other than text?  Only if the rules change, e.g., if PDF- or
>>>> PS-only submissions are permitted, would it be necessary to provide  
>>>> this feature.
>>>
>>> Correct.  One completely valid way of extracting the meta-data from the  
>>> XML file would be to convert it to text and do the extraction there.   
>>> We don't want to *require* that it be done this way, however - it's  
>>> just as fine from a requirement viewpoint to do extraction directly  
>>> from XML.  Up to the
>>> implementor, really.
>>
>> Ok.  Check if clarification needed.
> 
> We require extraction from all formats because we want to validate that  
> all metadata matches across all formats (in addition to and before we can  
> validate that the contents matches as well). Once the Secretariat starts  
> implementing this, they will hit this normative text:
> 
>     1.  All available meta-data entries must match across all submitted
>         draft formats (R18/a).  For example, if the interpreter managed
>         to extract a draft title from plain text and PDF format, both
>         titles must match.  This requirement prevents accidental
>         submission of mismatching formats.
> 
> There are other rules that clarify that you do not have to consider  
> yet-unsupported formats in initial Toolset implementations.
> 
> I agree that it is sometimes possible to extract XML metadata by  
> generating a plain-text version and extracting metadata from there. This  
> hack can be a good starting point. However, I hope that mature Toolset  
> versions will not use that hack. I am sure one can come up with a test  
> case that exposes the dangers of this approach. And in any case, note that  
> this hack is still much better than just trusting the plain text version  
> submitted along with XML!

Agreed.  Maybe add a para. pointing out the logic in the first para.
of your comment above?

>>>> (b) WG ID and WG flag: The word "tools" in
>>>> draft-ietf-tools-draft-submission-07 is not a WG ID.  The tools team  
>>>> is not a working group.  The WG flag would be "False" for this  
>>>> document.
>>>
>>> Agreed.
>>
>> Ok.  Check if clarification needed.
> 
> Hmm... For the purposes of this document, Tools team is equivalent to a  
> working group, but I have changed draft-ietf-tools-draft-submission to  
> draft-ietf-sieve-vacation
> 
>>>> (c) creation date: Why is it necessary to note the "creation date"?   
>>>> The "submission date" is the date that is relevant in this process.   
>>>> The
>>>> submission date is assigned by the system.  It is not extracted from  
>>>> the draft.  (Also see comment #7)
>>>
>>> The idea is to have this part of the document meta-data be in agreement  
>>> with the system's view of how long the document is valid.  Currently,  
>>> there is no check on this, with the result that it is simply not  
>>> possible to rely on the expiration date you see when you read a draft -  
>>> and this is unfortunate...
>>>
>>> We should probably change the document to indicate that it's not really  
>>> the creation date, but rather the Expiration date which is given in the  
>>> draft which it is desirable to have in reasonable agreement with the  
>>> system's
>>> view of expiration date. [...]
>>
>> Ok.  Clarification needed in draft?
> 
> IMHO, the current draft requires the right thing and the Secretariat tools  
> need to be adjusted (eventually) to support the requirement.
> 
> We should strive to base our requirements on the original/source data and  
> not on the derivatives. Expiration date is a derivative of the draft date.
> The draft date is encoded in the draft. If the system tries to assign its  
> own date, then there will be a mismatch between draft metadata and draft  
> text.
> 
> We can argue whether the draft date is the Creation Date, Submission Date,  
> or Posting Date, but current requirements make such arguments silly  
> because they ensure that all those dates are close enough. Thus, the only  
> thing that matters is the match between draft text and metadata. Allowing  
> the system to assign dates leads to mismatches. Requiring the Toolset to  
> validate dates ensures a match.

I think there is still one side of this which you don't touch here, which
might warrant a clarification, which is that the draft expires 153 days
after it was posted, not 153 days after it was created or submitted.  In
this respect, the system date is more correct than the date in the draft
text; and we don't want to simply note the creation date - we want to 
ensure that the meta-data match - i.e. posting date and expiration date
as given in the draft aren't too much out of whack.  

>>>> (d) expiration date: The expiration date is calculated by the system  
>>>> .  It
>>>> is not extracted from the draft.
>>>
>>> Ok.
>>
>> Ok.
> 
> Again, the current approach is broken IMO. The expiration date should be  
> extracted from the draft, validated, and rejected if needed. See above for  
> supporting arguments.

Agreed.  But since we haven't managed to communicate this well enough, some
kind of fix to the text seems to be needed.

>>>> 7. Section 8.5.1, "Absolute Requirements"
>>>> Item 7.  Once again, why are we concerned about when the draft was  
>>>> created?
>>>
>>> See above.
> 
>>>> 8. Section 8.5.4, "WG Approval"
>>>> WG chair approval is mandatory for posting of version 00 WG drafts.
>>>> Therefore, a mechanism for obtaining WG chair approval for posting of  
>>>> these drafts should be included in this toolset.
>>>
>>> My personal viewpoint: Absolutely.
>>
>> Ok.
> 
> There is a logical disconnect here. Just because something is mandatory  
> does not imply that the draft has to document the mechanism for  
> implementing that something. For example, the draft has no requirements  
> related to checking the language of the submission.
> 
>>> The team could not agree on exactly what the IETF requirements were on  
>>> this point, if any, and has left this open to the implementor, to  
>>> decide exactly how to implement this mechanism.
> 
> And I still think it was an acceptible decision. The implementor can  
> document what they have implemented, and the IESG can verify that the  
> implementation intends to do the right thing. Alternatively, somebody may  
> write another draft with requirements specific for chair approval.  
> Moreover, first versions of the toolset may require manual submission for  
> 00 versions of WG drafts.

Sure.  We don't need to change this.

>>>> 9. Section 9.1, "External Meta-Data"
>>>> (a) Submitter email address.  If the submitter is not a "lawful  
>>>> submitter,"
>>>> then why send the draft to the Secretariat?  What action would the
>>>> Secretariat take?  Currently, the Secretariat does not make decisions  
>>>> on the
>>>> the lawfulness of a submitter.  If the tool determines that a  
>>>> submitter is
>>>> not lawful based on rules established by the IESG, then the submission  
>>>> should
>>>> be rejected.
> 
> What if a tool was wrong? For example, perhaps the tool failed to  
> correctly extract author's info.
> 
>>> Ok.  We believed that the secretariat verified (for non -00 drafts)  
>>> that the submitter was either one of the authors, or one of the WG  
>>> chairs or ADs.  If this is incorrect, the IESG will have to decide  
>>> whether such a check should be done before this is incorporated in the  
>>> tool.
>>
>> Harald and Brian in the meeting indicated that they would like to not  
>> change the rules for this at this point.  For now, there is no such  
>> concept as a
>> lawful submitter.  The draft needs to be updated, and this requirement  
>> removed or described as a possible future enhancement.
> 
> I am afraid we need to revisit this. I misunderstood the implications when  
> reading this two weeks ago. If we remove requirements related to the  
> submitter identity, does it mean that I can post any new version of any  
> IETF draft out there? What would stop me? Or is the plan to still say that  
> the submitter has to be one of the authors, but not call it "lawful"?  
> Today, we have the Secretariat to at least slow down those who submit fake  
> drafts. With the web interface, a kid can write a script to update all  
> drafts with a "funny" picture.  Please clarify!

Agreed.

My suggestion here would be to remove the concept of lawful submitter,
but require a successful verification of the submitter for automated posting,
for reasons such as the one you give above.

>>>> (b) List of drafts obsoleted by this draft.  An RFC can be "obsoleted"  
>>>> by another RFC.  However, an Internet-Draft cannot be "obsoleted" by  
>>>> another Internet-Draft.  It can only be "replaced" by another  
>>>> Internet-Draft.
>>>
>>> Right.  I believe this is just bad terminology in the draft - should  
>>> probably be re-written to use "removed" and/or "replaced.
>>
>> Ok.
> 
> IIRC, this 3rd-phase feature was requested by somebody. Changed to  
> "replaced".

Ok.

>>>> (c) Indicating that an Internet-Draft replaces another Internet-Draft
>>>> should not be optional...it should be mandatory.  The submitter must  
>>>> indicate if an Internet-Draft replaces another Internet-Draft.
>>>
>>> Agreed.
>>
>> Ok.
> 
> I am not sure I follow. We do not have any requirements for submitters,  
> only for the Toolset. Since not all drafts replace other drafts, it seems  
> that the information is optional from the Toolset point of view. What am I  
> missing here?

Nothing.  The draft is good as is.

>>>> 11. Section 13, "Post Manually Action"
>>>> The "post manually" action should always be available, and should be  
>>>> used if the automated posting process is not functioning properly.   
>>>> However, the
>>>> Secretariat does not make exceptions with respect to the posting of
>>>> Internet-Drafts.  If an Internet-Draft is non-compliant, then the staff
>>>> rejects it.  Therefore, if an Internet-Draft is non-compliant, then the
>>>> submitter should not attempt to circumvent rejection by sending the  
>>>> draft directly to the Secretariat.  As long as the toolset is working,  
>>>> an
>>>> Internet-Draft can be posted automatically.  If the toolset is not  
>>>> working,
>>>> then all Internet-Drafts must be posted manually...and the Secretariat  
>>>> should
>>>> receive lots of bug reports!!
>>>
>>> Agreed.  This agrees with the intention of the requirements document,  
>>> but may be insufficiently clearly stated there.
>>
>> Ok.  Check if clarification needed in document.
> 
> I think there was a general misunderstanding on the part of the  
> Secretariat that the Toolset somehow requires them to fix drafts or post  
> broken drafts. I hope that is cleared now. The manual posting route is one  
> of the most efficient bug reporting interfaces I can think of; if  
> implemented correctly, it can supply the Secretariat with all the vital  
> information in one bundle: what the submitter thinks should be happening,  
> what the toolset says, and what the draft is. If you can think of specific  
> ways to improve the draft in this context, please let me know.

Does the draft currently suggest or require a "Why manual posting is
deemed necessary" field?  (I think so but don't remember clearly).  If
so, maybe point out also in the draft that this is an excellent field
for reporting bugs :-)


	Henrik

_______________________________________________
Tools-team mailing list
Tools-team@ietf.org
https://www1.ietf.org/mailman/listinfo/tools-team


From tools-team-bounces@ietf.org  Wed Apr  6 10:05:01 2005
Received: from ietf-mx.ietf.org (ietf-mx.ietf.org [132.151.6.1])
	by ietf.org (8.9.1a/8.9.1a) with ESMTP id KAA14044;
	Wed, 6 Apr 2005 10:05:01 -0400 (EDT)
Received: from megatron.ietf.org ([132.151.6.71])
	by ietf-mx.ietf.org with esmtp (Exim 4.33)
	id 1DJBHq-0008Ry-Gw; Wed, 06 Apr 2005 10:13:42 -0400
Received: from localhost.localdomain ([127.0.0.1] helo=megatron.ietf.org)
	by megatron.ietf.org with esmtp (Exim 4.32)
	id 1DJB96-00068N-Cx; Wed, 06 Apr 2005 10:04:40 -0400
Received: from odin.ietf.org ([132.151.1.176] helo=ietf.org)
	by megatron.ietf.org with esmtp (Exim 4.32) id 1DJB95-00068H-Qs
	for tools-team@megatron.ietf.org; Wed, 06 Apr 2005 10:04:39 -0400
Received: from ietf-mx.ietf.org (ietf-mx.ietf.org [132.151.6.1])
	by ietf.org (8.9.1a/8.9.1a) with ESMTP id KAA13974
	for <tools-team@ietf.org>; Wed, 6 Apr 2005 10:04:37 -0400 (EDT)
Received: from av5-1-sn1.fre.skanova.net ([81.228.11.111])
	by ietf-mx.ietf.org with esmtp (Exim 4.33) id 1DJBHR-0008QO-D6
	for tools-team@ietf.org; Wed, 06 Apr 2005 10:13:18 -0400
Received: by av5-1-sn1.fre.skanova.net (Postfix, from userid 502)
	id 9ABEE38186; Wed,  6 Apr 2005 16:04:28 +0200 (CEST)
Received: from smtp3-2-sn1.fre.skanova.net (smtp3-2-sn1.fre.skanova.net
	[81.228.11.164])
	by av5-1-sn1.fre.skanova.net (Postfix) with ESMTP id 8835A37E47
	for <tools-team@ietf.org>; Wed,  6 Apr 2005 16:04:28 +0200 (CEST)
Received: from shiraz.levkowetz.com (h70n2fls310o871.telia.com [213.64.173.70])
	by smtp3-2-sn1.fre.skanova.net (Postfix) with ESMTP id 79DC037E4F
	for <tools-team@ietf.org>; Wed,  6 Apr 2005 16:04:28 +0200 (CEST)
Received: from localhost ([127.0.0.1])
	by shiraz.levkowetz.com with esmtp (Exim 4.50) id 1DJB8u-0004Al-Cy
	for tools-team@ietf.org; Wed, 06 Apr 2005 16:04:28 +0200
Message-ID: <4253EC6C.8010802@levkowetz.com>
Date: Wed, 06 Apr 2005 16:04:28 +0200
From: Henrik Levkowetz <henrik@levkowetz.com>
User-Agent: Mozilla Thunderbird 1.0 (Macintosh/20041206)
X-Accept-Language: en-us, en
MIME-Version: 1.0
To: IETF TOOLS <tools-team@ietf.org>
X-Enigmail-Version: 0.89.5.0
X-Enigmail-Supports: pgp-inline, pgp-mime
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 7bit
X-SA-Exim-Connect-IP: 127.0.0.1
X-SA-Exim-Mail-From: henrik@levkowetz.com
X-SA-Exim-Scanned: No (on shiraz.levkowetz.com);
	SAEximRunCond expanded to false
X-Spam-Score: 0.0 (/)
X-Scan-Signature: 4d87d2aa806f79fed918a62e834505ca
Content-Transfer-Encoding: 7bit
Subject: [Tools-team] Agenda for the 6 April 2005 Telechat
X-BeenThere: tools-team@ietf.org
X-Mailman-Version: 2.1.5
Precedence: list
List-Id: "The purpose of the TOOLS team is to provide IETF feedback and
	guidance during the development of software tools to support
	various parts of IETF activities." <tools-team.ietf.org>
List-Unsubscribe: <https://www1.ietf.org/mailman/listinfo/tools-team>,
	<mailto:tools-team-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www1.ietf.org/pipermail/tools-team>
List-Post: <mailto:tools-team@ietf.org>
List-Help: <mailto:tools-team-request@ietf.org?subject=help>
List-Subscribe: <https://www1.ietf.org/mailman/listinfo/tools-team>,
	<mailto:tools-team-request@ietf.org?subject=subscribe>
Sender: tools-team-bounces@ietf.org
Errors-To: tools-team-bounces@ietf.org
X-Spam-Score: 0.0 (/)
X-Scan-Signature: 5a9a1bd6c2d06a21d748b7d0070ddcb8
Content-Transfer-Encoding: 7bit

Hi,

Here is the proposed agenda for today's meeting.  

---------------------------------------------------------

1. Agenda bashing

2. Comments on minutes from last teleconference.

3. Status of submission tool draft

4. Action item review.

   * Stas: 	Continue working on the Notification Service
		Requirements.

   * Alex:	Do a new rev. of the draft submission draft early next
		week, based on the secretariat comments.  Questions to
		the list if there is anything which is not clear in
		the notes sent to the list last week.
	Done

   * Henrik:	Help with the mapping of notification elements to Atom
	Not done

   * Donald:	Continue work on the scheduling tool prototype

5. Any other business.

6. Action items for next week.

7. Next meeting:

  Teleconference Wednesday 13 April, 17:00 GMT (same local time as
  today).

---------------------------------------------------------
Connection details:

To join the call, dial +1-734-615-7474 and enter PIN 0151989.

One can also join the call by dialling:
 sip:session_0151989@edial.internet2.edu 
on a SIP-enabled voice communications client. 

If the SIP client cannot dial URLs, you can have the conference
system call you if you have the sip URL for your phone.  Go to
 https://edial.internet2.edu/call/0151989
and type in the URL to your phone, and follow the directions.



_______________________________________________
Tools-team mailing list
Tools-team@ietf.org
https://www1.ietf.org/mailman/listinfo/tools-team


From tools-team-bounces@ietf.org  Wed Apr  6 12:34:58 2005
Received: from ietf-mx.ietf.org (ietf-mx.ietf.org [132.151.6.1])
	by ietf.org (8.9.1a/8.9.1a) with ESMTP id MAA02019;
	Wed, 6 Apr 2005 12:34:58 -0400 (EDT)
Received: from megatron.ietf.org ([132.151.6.71])
	by ietf-mx.ietf.org with esmtp (Exim 4.33)
	id 1DJDcz-0005Wg-OU; Wed, 06 Apr 2005 12:43:42 -0400
Received: from localhost.localdomain ([127.0.0.1] helo=megatron.ietf.org)
	by megatron.ietf.org with esmtp (Exim 4.32)
	id 1DJDOx-000760-0g; Wed, 06 Apr 2005 12:29:11 -0400
Received: from odin.ietf.org ([132.151.1.176] helo=ietf.org)
	by megatron.ietf.org with esmtp (Exim 4.32) id 1DJDOv-00075v-J1
	for tools-team@megatron.ietf.org; Wed, 06 Apr 2005 12:29:09 -0400
Received: from ietf-mx.ietf.org (ietf-mx.ietf.org [132.151.6.1])
	by ietf.org (8.9.1a/8.9.1a) with ESMTP id MAA01791
	for <tools-team@ietf.org>; Wed, 6 Apr 2005 12:29:06 -0400 (EDT)
Received: from av5-1-sn3.vrr.skanova.net ([81.228.9.113])
	by ietf-mx.ietf.org with esmtp (Exim 4.33) id 1DJDXJ-0005R3-3g
	for tools-team@ietf.org; Wed, 06 Apr 2005 12:37:49 -0400
Received: by av5-1-sn3.vrr.skanova.net (Postfix, from userid 502)
	id 5569637E54; Wed,  6 Apr 2005 18:28:59 +0200 (CEST)
Received: from smtp1-2-sn3.vrr.skanova.net (smtp1-2-sn3.vrr.skanova.net
	[81.228.9.178])
	by av5-1-sn3.vrr.skanova.net (Postfix) with ESMTP id 3EE8A37E42
	for <tools-team@ietf.org>; Wed,  6 Apr 2005 18:28:59 +0200 (CEST)
Received: from shiraz.levkowetz.com (h70n2fls310o871.telia.com [213.64.173.70])
	by smtp1-2-sn3.vrr.skanova.net (Postfix) with ESMTP id 1A8B338006
	for <tools-team@ietf.org>; Wed,  6 Apr 2005 18:28:59 +0200 (CEST)
Received: from localhost ([127.0.0.1])
	by shiraz.levkowetz.com with esmtp (Exim 4.50) id 1DJDOj-0001vq-V7
	for tools-team@ietf.org; Wed, 06 Apr 2005 18:28:58 +0200
Message-ID: <42540E49.70904@levkowetz.com>
Date: Wed, 06 Apr 2005 18:28:57 +0200
From: Henrik Levkowetz <henrik@levkowetz.com>
User-Agent: Mozilla Thunderbird 1.0 (Macintosh/20041206)
X-Accept-Language: en-us, en
MIME-Version: 1.0
To: IETF TOOLS <tools-team@ietf.org>
X-Enigmail-Version: 0.89.5.0
X-Enigmail-Supports: pgp-inline, pgp-mime
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 7bit
X-SA-Exim-Connect-IP: 127.0.0.1
X-SA-Exim-Mail-From: henrik@levkowetz.com
X-SA-Exim-Scanned: No (on shiraz.levkowetz.com);
	SAEximRunCond expanded to false
X-Spam-Score: 0.0 (/)
X-Scan-Signature: 944ecb6e61f753561f559a497458fb4f
Content-Transfer-Encoding: 7bit
Subject: [Tools-team] Minutes from the 6 April 2005 Telechat
X-BeenThere: tools-team@ietf.org
X-Mailman-Version: 2.1.5
Precedence: list
List-Id: "The purpose of the TOOLS team is to provide IETF feedback and
	guidance during the development of software tools to support
	various parts of IETF activities." <tools-team.ietf.org>
List-Unsubscribe: <https://www1.ietf.org/mailman/listinfo/tools-team>,
	<mailto:tools-team-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www1.ietf.org/pipermail/tools-team>
List-Post: <mailto:tools-team@ietf.org>
List-Help: <mailto:tools-team-request@ietf.org?subject=help>
List-Subscribe: <https://www1.ietf.org/mailman/listinfo/tools-team>,
	<mailto:tools-team-request@ietf.org?subject=subscribe>
Sender: tools-team-bounces@ietf.org
Errors-To: tools-team-bounces@ietf.org
X-Spam-Score: 0.0 (/)
X-Scan-Signature: c83ccb5cc10e751496398f1233ca9c3a
Content-Transfer-Encoding: 7bit

Hi,

Here are the minutes from today's meeting.  

---------------------------------------------------------

0. Present: Alex, Bill, Donald, Henrik

1. Agenda bashing

	Bill will be evaluating the Secretariat's liaison statement tool.
	A prototype has been built based on Fred's draft, but dropped
	development when the draft evolved.  The document is now approved,
	so they're going back to working on the tool.  

2. Comments on minutes from last teleconference.

	No.

3. Status of submission tool draft

	All comments that were clear have been incorporated.  4-5 comments
	not clear, sent to the list; further comments received and will
	be incorporated.   What to use for "lawful submitter"? Maybe 
	"expected submitter"?  Alex will do the rest of the changes, and
	post the source for polishing.  With regards to the proposal of
	adding .nroff as a submission format, we leave that indeterminate,
	but indicate that other formats than those covered in the draft
	may be added at a later time.

3.a. Status of the ID info draft.

	The ID info draft has been posted in a new revision, incorporating
	comments from Henrik.

4. Action item review.

   * Stas: 	Continue working on the Notification Service
		Requirements.
	-

   * Alex:	Do a new rev. of the draft submission draft early next
		week, based on the secretariat comments.  Questions to
		the list if there is anything which is not clear in
		the notes sent to the list last week.
	See above.

   * Henrik:	Help with the mapping of notification elements to Atom
	Not done

   * Donald:	Continue work on the scheduling tool prototype
	Not much progress since last week, 

5. Any other business.

	Alex: Once info draft is out, what is the next step?  Some 
	empty sections needs filling out.  => Provided there are no
	comments of the type "This is going in the wrong direction",
	Alex will continue adding the missing content, and send out
	a new version of the draft for review.

6. Action items for next week.


   * Stas: 	Continue working on the Notification Service
		Requirements.
	-

   * Alex:	Handle the last current comments on the submission draft
		and post to the list for polishing.

   * Alex:	Continue filling in missing parts of the ID info draft,
		provided no adverse comments on the direction of the
		recently posted version.

   * Henrik:	Help with the mapping of notification elements to Atom

   * Henrik:	Help with language polishing of the submission draft

   * Bill:	Will be evaluating the secretariats liaison statement
		tool, on request from Brian.

   * Donald:	Continue work on the scheduling tool prototype; next
		step will be a form for data/constraints input to the
		scheduling

7. Next meeting:

  Teleconference Wednesday 13 April, 16:00 GMT (same local time as
  today).

---------------------------------------------------------
Connection details:

To join the call, dial +1-734-615-7474 and enter PIN 0151989.

One can also join the call by dialling:
 sip:session_0151989@edial.internet2.edu 
on a SIP-enabled voice communications client. 

If the SIP client cannot dial URLs, you can have the conference
system call you if you have the sip URL for your phone.  Go to
 https://edial.internet2.edu/call/0151989
and type in the URL to your phone, and follow the directions.




_______________________________________________
Tools-team mailing list
Tools-team@ietf.org
https://www1.ietf.org/mailman/listinfo/tools-team


From tools-team-bounces@ietf.org  Wed Apr 13 11:58:59 2005
Received: from ietf-mx.ietf.org (ietf-mx.ietf.org [132.151.6.1])
	by ietf.org (8.9.1a/8.9.1a) with ESMTP id LAA08383;
	Wed, 13 Apr 2005 11:58:58 -0400 (EDT)
Received: from megatron.ietf.org ([132.151.6.71])
	by ietf-mx.ietf.org with esmtp (Exim 4.33)
	id 1DLkQP-0002lC-2f; Wed, 13 Apr 2005 12:09:10 -0400
Received: from localhost.localdomain ([127.0.0.1] helo=megatron.ietf.org)
	by megatron.ietf.org with esmtp (Exim 4.32)
	id 1DLkCJ-0002SG-Dz; Wed, 13 Apr 2005 11:54:35 -0400
Received: from odin.ietf.org ([132.151.1.176] helo=ietf.org)
	by megatron.ietf.org with esmtp (Exim 4.32) id 1DLkCI-0002RL-1U
	for tools-team@megatron.ietf.org; Wed, 13 Apr 2005 11:54:34 -0400
Received: from ietf-mx.ietf.org (ietf-mx.ietf.org [132.151.6.1])
	by ietf.org (8.9.1a/8.9.1a) with ESMTP id LAA08127
	for <tools-team@ietf.org>; Wed, 13 Apr 2005 11:54:23 -0400 (EDT)
Received: from pne-smtpout1-sn1.fre.skanova.net ([81.228.11.98])
	by ietf-mx.ietf.org with esmtp (Exim 4.33) id 1DLkLx-0002eV-EH
	for tools-team@ietf.org; Wed, 13 Apr 2005 12:04:34 -0400
Received: from shiraz.levkowetz.com (213.64.173.70) by
	pne-smtpout1-sn1.fre.skanova.net (7.1.026.7)
	id 41E3200D00CCC772 for tools-team@ietf.org;
	Wed, 13 Apr 2005 17:54:08 +0200
Received: from localhost ([127.0.0.1])
	by shiraz.levkowetz.com with esmtp (Exim 4.50) id 1DLkBr-0000Vh-B6
	for tools-team@ietf.org; Wed, 13 Apr 2005 17:54:07 +0200
Message-ID: <425D409E.4060603@levkowetz.com>
Date: Wed, 13 Apr 2005 17:54:06 +0200
From: Henrik Levkowetz <henrik@levkowetz.com>
User-Agent: Mozilla Thunderbird 1.0 (Macintosh/20041206)
X-Accept-Language: en-us, en
MIME-Version: 1.0
To: IETF TOOLS <tools-team@ietf.org>
X-Enigmail-Version: 0.89.5.0
X-Enigmail-Supports: pgp-inline, pgp-mime
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 7bit
X-SA-Exim-Connect-IP: 127.0.0.1
X-SA-Exim-Mail-From: henrik@levkowetz.com
X-SA-Exim-Scanned: No (on shiraz.levkowetz.com);
	SAEximRunCond expanded to false
X-Spam-Score: 0.0 (/)
X-Scan-Signature: 5a9a1bd6c2d06a21d748b7d0070ddcb8
Content-Transfer-Encoding: 7bit
Subject: [Tools-team] Agenda for the 13 April 2005 Telechat
X-BeenThere: tools-team@ietf.org
X-Mailman-Version: 2.1.5
Precedence: list
List-Id: "The purpose of the TOOLS team is to provide IETF feedback and
	guidance during the development of software tools to support
	various parts of IETF activities." <tools-team.ietf.org>
List-Unsubscribe: <https://www1.ietf.org/mailman/listinfo/tools-team>,
	<mailto:tools-team-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www1.ietf.org/pipermail/tools-team>
List-Post: <mailto:tools-team@ietf.org>
List-Help: <mailto:tools-team-request@ietf.org?subject=help>
List-Subscribe: <https://www1.ietf.org/mailman/listinfo/tools-team>,
	<mailto:tools-team-request@ietf.org?subject=subscribe>
Sender: tools-team-bounces@ietf.org
Errors-To: tools-team-bounces@ietf.org
X-Spam-Score: 0.0 (/)
X-Scan-Signature: 082a9cbf4d599f360ac7f815372a6a15
Content-Transfer-Encoding: 7bit

Hi,

Here is the proposed agenda for today's meeting.  

---------------------------------------------------------

1. Agenda bashing

2. Comments on minutes from last teleconference.

3. Action item review.

   * Stas: 	Continue working on the Notification Service
		Requirements.
	-

   * Alex:	Handle the last current comments on the submission draft
		and post to the list for polishing.

   * Alex:	Continue filling in missing parts of the ID info draft,
		provided no adverse comments on the direction of the
		recently posted version.

   * Henrik:	Help with the mapping of notification elements to Atom

   * Henrik:	Help with language polishing of the submission draft

   * Donald:	Continue work on the scheduling tool prototype; next
		step will be a form for data/constraints input to the
		scheduling

4. Any other business.

5. Action items for next week.

6. Next meeting:

  Teleconference Wednesday 20 April, 16:00 GMT (same local time as
  today).

---------------------------------------------------------
Connection details:

To join the call, dial +1-734-615-7474 and enter PIN 0151989.

One can also join the call by dialling:
 sip:session_0151989@edial.internet2.edu 
on a SIP-enabled voice communications client. 

If the SIP client cannot dial URLs, you can have the conference
system call you if you have the sip URL for your phone.  Go to
 https://edial.internet2.edu/call/0151989
and type in the URL to your phone, and follow the directions.





_______________________________________________
Tools-team mailing list
Tools-team@ietf.org
https://www1.ietf.org/mailman/listinfo/tools-team


From tools-team-bounces@ietf.org  Wed Apr 13 12:30:10 2005
Received: from ietf-mx.ietf.org (ietf-mx.ietf.org [132.151.6.1])
	by ietf.org (8.9.1a/8.9.1a) with ESMTP id MAA11290;
	Wed, 13 Apr 2005 12:30:10 -0400 (EDT)
Received: from megatron.ietf.org ([132.151.6.71])
	by ietf-mx.ietf.org with esmtp (Exim 4.33)
	id 1DLkub-0003nv-0e; Wed, 13 Apr 2005 12:40:22 -0400
Received: from localhost.localdomain ([127.0.0.1] helo=megatron.ietf.org)
	by megatron.ietf.org with esmtp (Exim 4.32)
	id 1DLkjb-0007AJ-65; Wed, 13 Apr 2005 12:28:59 -0400
Received: from odin.ietf.org ([132.151.1.176] helo=ietf.org)
	by megatron.ietf.org with esmtp (Exim 4.32) id 1DLkja-00078w-8F
	for tools-team@megatron.ietf.org; Wed, 13 Apr 2005 12:28:58 -0400
Received: from ietf-mx.ietf.org (ietf-mx.ietf.org [132.151.6.1])
	by ietf.org (8.9.1a/8.9.1a) with ESMTP id MAA11193
	for <tools-team@ietf.org>; Wed, 13 Apr 2005 12:28:47 -0400 (EDT)
Received: from pne-smtpout2-sn1.fre.skanova.net ([81.228.11.159])
	by ietf-mx.ietf.org with esmtp (Exim 4.33) id 1DLktF-0003ky-Gx
	for tools-team@ietf.org; Wed, 13 Apr 2005 12:38:59 -0400
Received: from shiraz.levkowetz.com (213.64.173.70) by
	pne-smtpout2-sn1.fre.skanova.net (7.1.026.7)
	id 41E3209600B91309 for tools-team@ietf.org;
	Wed, 13 Apr 2005 18:28:38 +0200
Received: from localhost ([127.0.0.1])
	by shiraz.levkowetz.com with esmtp (Exim 4.50) id 1DLkjG-0007vF-7n
	for tools-team@ietf.org; Wed, 13 Apr 2005 18:28:38 +0200
Message-ID: <425D48B5.5060402@levkowetz.com>
Date: Wed, 13 Apr 2005 18:28:37 +0200
From: Henrik Levkowetz <henrik@levkowetz.com>
User-Agent: Mozilla Thunderbird 1.0 (Macintosh/20041206)
X-Accept-Language: en-us, en
MIME-Version: 1.0
To: IETF TOOLS <tools-team@ietf.org>
X-Enigmail-Version: 0.89.5.0
X-Enigmail-Supports: pgp-inline, pgp-mime
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 7bit
X-SA-Exim-Connect-IP: 127.0.0.1
X-SA-Exim-Mail-From: henrik@levkowetz.com
X-SA-Exim-Scanned: No (on shiraz.levkowetz.com);
	SAEximRunCond expanded to false
X-Spam-Score: 0.0 (/)
X-Scan-Signature: 057ebe9b96adec30a7efb2aeda4c26a4
Content-Transfer-Encoding: 7bit
Subject: [Tools-team] Minutes from the 13 April 2005 Telechat
X-BeenThere: tools-team@ietf.org
X-Mailman-Version: 2.1.5
Precedence: list
List-Id: "The purpose of the TOOLS team is to provide IETF feedback and
	guidance during the development of software tools to support
	various parts of IETF activities." <tools-team.ietf.org>
List-Unsubscribe: <https://www1.ietf.org/mailman/listinfo/tools-team>,
	<mailto:tools-team-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www1.ietf.org/pipermail/tools-team>
List-Post: <mailto:tools-team@ietf.org>
List-Help: <mailto:tools-team-request@ietf.org?subject=help>
List-Subscribe: <https://www1.ietf.org/mailman/listinfo/tools-team>,
	<mailto:tools-team-request@ietf.org?subject=subscribe>
Sender: tools-team-bounces@ietf.org
Errors-To: tools-team-bounces@ietf.org
X-Spam-Score: 0.0 (/)
X-Scan-Signature: 287c806b254c6353fcb09ee0e53bbc5e
Content-Transfer-Encoding: 7bit

Hi,

Here are the minutes from today's meeting.  

---------------------------------------------------------

0. Present: Bill, Alex, Henrik

1. Agenda bashing

	Nothing

2. Comments on minutes from last teleconference.

	None

3. Action item review.

   * Stas: 	Continue working on the Notification Service
		Requirements.
	-

   * Alex:	Handle the last current comments on the submission draft
		and post to the list for polishing.

	All comments applied, spell-checking left, will then post to
	the list.

   * Alex:	Continue filling in missing parts of the ID info draft,
		provided no adverse comments on the direction of the
		recently posted version.

	No progress this week.

   * Henrik:	Help with the mapping of notification elements to Atom

	Started thinking, hope to complete this till next call

   * Henrik:	Help with language polishing of the submission draft

	Will be done once the draft comes to the list

   * Donald:	Continue work on the scheduling tool prototype; next
		step will be a form for data/constraints input to the
		scheduling



4. Any other business.

	Bill haven't heard more about the liaison tool - but the
	tool doesn't match the draft any more and has to be updated
	before it can be tested.

	Henrik will add pages for the iab and iesg drafts, equivalent
	to the WG pages.

	Some discussion of how to move toward getting xml2rfc to
	validate the input, but no firm path forward.  It seems
	that it's not possible to rely on any particular validator
	being present on any given Win/Linux/BSD/Mac platform, so
	a TCL validator would probably be best; but Marshall currently
	isn't interested in integrating a full validator into the
	tool.

5. Action items for next week.

   * Stas: 	Continue working on the Notification Service
		Requirements.

   * Alex:	Spell-check the submission draft and post to the list for
		polishing.

   * Alex:	Continue filling in missing parts of the ID info draft,
		provided no adverse comments on the direction of the
		recently posted version.

   * Henrik:	Help with the mapping of notification elements to Atom

   * Henrik:	Help with language polishing of the submission draft

   * Donald:	Continue work on the scheduling tool prototype; next
		step will be a form for data/constraints input to the
		scheduling

6. Next meeting:

  Teleconference Wednesday 20 April, 16:00 GMT (same local time as
  today).

---------------------------------------------------------
Connection details:

To join the call, dial +1-734-615-7474 and enter PIN 0151989.

One can also join the call by dialling:
 sip:session_0151989@edial.internet2.edu 
on a SIP-enabled voice communications client. 

If the SIP client cannot dial URLs, you can have the conference
system call you if you have the sip URL for your phone.  Go to
 https://edial.internet2.edu/call/0151989
and type in the URL to your phone, and follow the directions.



_______________________________________________
Tools-team mailing list
Tools-team@ietf.org
https://www1.ietf.org/mailman/listinfo/tools-team


From tools-team-bounces@ietf.org  Wed Apr 13 12:34:28 2005
Received: from ietf-mx.ietf.org (ietf-mx.ietf.org [132.151.6.1])
	by ietf.org (8.9.1a/8.9.1a) with ESMTP id MAA11603;
	Wed, 13 Apr 2005 12:34:28 -0400 (EDT)
Received: from megatron.ietf.org ([132.151.6.71])
	by ietf-mx.ietf.org with esmtp (Exim 4.33)
	id 1DLkym-0003tP-2X; Wed, 13 Apr 2005 12:44:40 -0400
Received: from localhost.localdomain ([127.0.0.1] helo=megatron.ietf.org)
	by megatron.ietf.org with esmtp (Exim 4.32)
	id 1DLklj-0007YE-KJ; Wed, 13 Apr 2005 12:31:11 -0400
Received: from odin.ietf.org ([132.151.1.176] helo=ietf.org)
	by megatron.ietf.org with esmtp (Exim 4.32) id 1DLkli-0007XS-Ok
	for tools-team@megatron.ietf.org; Wed, 13 Apr 2005 12:31:10 -0400
Received: from ietf-mx.ietf.org (ietf-mx.ietf.org [132.151.6.1])
	by ietf.org (8.9.1a/8.9.1a) with ESMTP id MAA11383
	for <tools-team@ietf.org>; Wed, 13 Apr 2005 12:31:00 -0400 (EDT)
Received: from mail-dark.research.att.com ([192.20.225.112]
	helo=mail-yellow.research.att.com)
	by ietf-mx.ietf.org with esmtp (Exim 4.33) id 1DLkvO-0003oQ-PL
	for tools-team@ietf.org; Wed, 13 Apr 2005 12:41:11 -0400
Received: from bright.research.att.com (bright.research.att.com
	[135.207.20.189])
	by mail-green.research.att.com (Postfix) with ESMTP id 9426DA7BCE
	for <tools-team@ietf.org>; Wed, 13 Apr 2005 12:30:52 -0400 (EDT)
Received: (from fenner@localhost)
	by bright.research.att.com (8.12.11/8.12.10/Submit) id j3DGUqBc010360; 
	Wed, 13 Apr 2005 09:30:52 -0700
Message-Id: <200504131630.j3DGUqBc010360@bright.research.att.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII
To: tools-team@ietf.org
Date: Wed, 13 Apr 2005 09:30:52 -0700
From: Bill Fenner <fenner@research.att.com>
Versions: dmail (linux) 2.6d/makemail 2.10
X-Spam-Score: 0.0 (/)
X-Scan-Signature: 7a6398bf8aaeabc7a7bb696b6b0a2aad
Subject: [Tools-team] My rfc2629 validator
X-BeenThere: tools-team@ietf.org
X-Mailman-Version: 2.1.5
Precedence: list
List-Id: "The purpose of the TOOLS team is to provide IETF feedback and
	guidance during the development of software tools to support
	various parts of IETF activities." <tools-team.ietf.org>
List-Unsubscribe: <https://www1.ietf.org/mailman/listinfo/tools-team>,
	<mailto:tools-team-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www1.ietf.org/pipermail/tools-team>
List-Post: <mailto:tools-team@ietf.org>
List-Help: <mailto:tools-team-request@ietf.org?subject=help>
List-Subscribe: <https://www1.ietf.org/mailman/listinfo/tools-team>,
	<mailto:tools-team-request@ietf.org?subject=subscribe>
Sender: tools-team-bounces@ietf.org
Errors-To: tools-team-bounces@ietf.org
X-Spam-Score: 0.0 (/)
X-Scan-Signature: 856eb5f76e7a34990d1d457d8e8e5b7f


http://rtg.ietf.org/~fenner/ietf/xml2rfc-valid/

The interesting files in this directory (not linked to, but accessible):
rfc2629.dtd : modified DTD to include entities
rfc2629.ent : entity definitions for above
expand-pi-rfc-include.xslt : XSL to expand <?rfc include=?> PIs.
additional-checks.xslt : additional validity checks that checking
  against the DTD won't get.  (Many of these result in jibberish
  errors from xml2rfc)
valid.cgi.txt: the perl / CGI that hooks it all together.

  Bill

_______________________________________________
Tools-team mailing list
Tools-team@ietf.org
https://www1.ietf.org/mailman/listinfo/tools-team


From tools-team-bounces@ietf.org  Wed Apr 13 14:12:03 2005
Received: from ietf-mx.ietf.org (ietf-mx.ietf.org [132.151.6.1])
	by ietf.org (8.9.1a/8.9.1a) with ESMTP id OAA19077;
	Wed, 13 Apr 2005 14:12:02 -0400 (EDT)
Received: from megatron.ietf.org ([132.151.6.71])
	by ietf-mx.ietf.org with esmtp (Exim 4.33)
	id 1DLmV9-0006jl-T8; Wed, 13 Apr 2005 14:22:13 -0400
Received: from localhost.localdomain ([127.0.0.1] helo=megatron.ietf.org)
	by megatron.ietf.org with esmtp (Exim 4.32)
	id 1DLmJ3-00077M-V6; Wed, 13 Apr 2005 14:09:42 -0400
Received: from odin.ietf.org ([132.151.1.176] helo=ietf.org)
	by megatron.ietf.org with esmtp (Exim 4.32) id 1DLmJ1-000773-D1
	for tools-team@megatron.ietf.org; Wed, 13 Apr 2005 14:09:40 -0400
Received: from ietf-mx.ietf.org (ietf-mx.ietf.org [132.151.6.1])
	by ietf.org (8.9.1a/8.9.1a) with ESMTP id OAA18860
	for <tools-team@ietf.org>; Wed, 13 Apr 2005 14:09:29 -0400 (EDT)
Received: from measurement-factory.com ([206.168.0.5])
	by ietf-mx.ietf.org with esmtp (Exim 4.33) id 1DLmSe-0006fA-Vk
	for tools-team@ietf.org; Wed, 13 Apr 2005 14:19:40 -0400
Received: from pail.measurement-factory.com (nat.measurement-factory.com
	[206.168.0.3])
	by measurement-factory.com (8.12.9/8.12.9) with ESMTP id j3DI9I3a007345;
	Wed, 13 Apr 2005 12:09:19 -0600 (MDT)
	(envelope-from rousskov@measurement-factory.com)
To: "Henrik Levkowetz" <henrik@levkowetz.com>,
        "IETF TOOLS" <tools-team@ietf.org>
References: <425D48B5.5060402@levkowetz.com>
Message-ID: <opso6nb0ptiz3etf0c9082f7@pail.measurement-factory.com>
Date: Wed, 13 Apr 2005 12:08:14 -0600
From: "Alex Rousskov" <rousskov@measurement-factory.com>
Organization: The Measurement Factory
Content-Type: multipart/mixed; boundary=----------8TCbUjCfC9c9W1k3EtELgj
MIME-Version: 1.0
In-Reply-To: <425D48B5.5060402@levkowetz.com>
User-Agent: Opera M2/7.54 (FreeBSD, build 955)
X-Spam-Score: 0.0 (/)
X-Scan-Signature: a5a8303acaf6448e82779cdc7b3988ac
Subject: [Tools-team] ID Submission draft v8b: preview for polishing
X-BeenThere: tools-team@ietf.org
X-Mailman-Version: 2.1.5
Precedence: list
List-Id: "The purpose of the TOOLS team is to provide IETF feedback and
	guidance during the development of software tools to support
	various parts of IETF activities." <tools-team.ietf.org>
List-Unsubscribe: <https://www1.ietf.org/mailman/listinfo/tools-team>,
	<mailto:tools-team-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www1.ietf.org/pipermail/tools-team>
List-Post: <mailto:tools-team@ietf.org>
List-Help: <mailto:tools-team-request@ietf.org?subject=help>
List-Subscribe: <https://www1.ietf.org/mailman/listinfo/tools-team>,
	<mailto:tools-team-request@ietf.org?subject=subscribe>
Sender: tools-team-bounces@ietf.org
Errors-To: tools-team-bounces@ietf.org
X-Spam-Score: 0.0 (/)
X-Scan-Signature: 9f654e83f5e85d683d97d6b797986e68

------------8TCbUjCfC9c9W1k3EtELgj
Content-Type: text/plain; format=flowed; delsp=yes; charset=us-ascii
Content-Transfer-Encoding: 8bit

On Wed, 2005/04/13 (MDT), <henrik@levkowetz.com> wrote:

>    * Alex:	Handle the last current comments on the submission draft
> 		and post to the list for polishing.

Attached are TXT/XML/HTML versions of the ID Submission Toolset draft
in a gzipped tar archive. The Change log is quoted below.

I think this draft version addresses all comments received so far.
Please let me know if I missed anything and do the last round of
polishing, as agreed.

Thank you,

Alex.

------------ changes since draft-ietf-tools-draft-submission-07 ---------

       *  Clarified that the secretariat does not intend to correct
          drafts submitted for manual posting.  If the draft needs
          tweaking to match submitter's intent, then the draft should be
          corrected and re-submitted.

       *  Renamed "lawful submitter" to "expected submitter" to avoid an
          incorrect implication that some kind of new legal checks are
          involved.  Without an email interface and the Secretariat in
          the loop, the submitter must still be "expected" and
          authenticated to avoid script kiddies from overwriting posted
          IETF drafts with junk.

       *  Clarified that R68 and other multi-stage requirements with
          multi-stage features are to be interpreted by ignoring features
          that will be implemented at a later stage.  For example, "text
          or XML" means just "text" until XML support is added.

       *  Meta-data extraction: Explicitly explained why meta-data
          extraction from all draft formats is necessary.

       *  Meta-data extraction: be even more explicit that the validation
          procedure described in the following section may declare an
          extracted date invalid after taking into consideration current
          (i.e., submission) time, IETF draft expiration rules, and other
          factors external to the draft.  The validation section already
          has the necessary formal rules.

       *  Added R152 to require public availability of sources instead of
          just hinting at it (Henrik Levkowetz).  Explained that to
          meaningfully satisfy availability requirements, the Toolset
          cannot rely on unavailable software.

       *  Validation: added R153-R156 to require XML format and RFC 2629+
          DTD validation.  During the first two implementation stages
          validation failures result in warnings (not fatal submission
          errors) to give IETFers (and IETF tools) enough time to get
          accustomed to the necessity of obeying XML standards.  This
          addition documents Tools team consensus reached in December
          2004.  It should have been documented earlier.

       *  Polished SourceForge "hosting" hint to clarify that we are
          suggesting to place Toolset sources there and not suggesting
          that the Toolset runs from SF servers.

       *  Added Testing section with a hint: use existing drafts (Brian
          E. Carpenter)

       *  Terminology: replaced "WG draft" with "WG-named draft" or "WGN
          draft" because not all WG-named drafts are WG drafts and we do
          not want to deal with the difference or to answer questions
          about the "wrong" terminology.

       *  Overall operation: explicitly stated that the Toolset has to be
          compatible with the Secretariat's tools for handling drafts
          with a hint that such compatibility can be achieved by
          appropriately implementing the Toolset or, in some cases, by
          modifying existing tools.

       *  Scope: Addressed concern that "there should also be provision
          for those who prefer to use troff/nroff" by explicitly stating
          that the set of requirements in this document is not
          comprehensive and other documents may add more requirements,
          including those related to other source formats.  The Tools
          team in not interested in adding troff/nroff support to the
          Toolset, especially in this document.

       *  Applied Last Call comments by Frank Ellermann.

       *  Added a hint: The Toolset implementers should not assume that
          draft formats generated by the same tool from the same source
          format have essentially the same content (Keith Moore).

       *  Updated Acknowledgments section.

------------8TCbUjCfC9c9W1k3EtELgj
Content-Disposition: attachment;
	filename=draft-ietf-tools-draft-submission-8b.tgz
Content-Type: application/x-gzip; name=draft-ietf-tools-draft-submission-8b.tgz
Content-Transfer-Encoding: Base64

H4sIAEdfXUIAA+y9W3MbSZImOq/Ar8iF7a5IG4BXUbdSqVclqap5tlQlI1WrWZud
hwSQILMJINGZCVKoh/3txz+/RHgkAF165tixtXP6oUskMyPj6uGXzz+f1vmsHZVF
Oxu1VTVvRlP+RbMeL8qmKavlP/37/3dycvL04iKj/54+vTj1/w3/y05Pzs6enl08
vTh5nNGfHz89/6fs4j/g21/937pp85q6Ulfrprmr7v/RdnQc4b//h/xv+rX1Py6n
o2fjo8+L+T/8DZqPJ48f71n/s4sn5+dx/c8fX2QnZ6dnp7T+J/+B49z7v/+Pr//L
v9DKZvdFjbX+cXB6dDLI/vKqz78eNe1mXjS3RdFm7WZV/PioLT63x5+b+aN+77Yu
Zj8+um3b1YvjY3r4qC6aal1PiqOqvjnO1+1tVZfLm+N6Njl7cvb8iN5qH6Fpapt+
lzVtXU7aHx9tiuaRfBG/batJ91fNZkGfarq/LqZlS+3/+GhZud9OqsUq326WtnP4
S/f5RbFst1ovl/NyWcTf9l/+p7e/v/n4Pz+8y/Dn6/95/fHd+2xgg5u20wEe4ldX
9Y+D2Xo+P3/y5Okgm1aT3/JF8ePgqyeNjhka6b+c1dWyfZX1+72XbdnOiywfj+vi
/sfB5dvsOjyefUQrRfsiuyr+vi7rggcyeOV/ymZV3e9dvvv4c/YWX9vx+stj/sYr
fE2HPpmvpzR2WcMjOxgQATIXvZfTvC2yab6hDXM+yBbU3dsfB69XdTkfZJsipwk4
Ozm5GGTH/HReF/mrX4plUefzl8f8E/32oarvbqjx1SvuSdYW+eLlcfwt3rwrNvSL
6StM2Mtj+8n9gfpYLfKWxrPzz3Fyd/75ctkW9bJoRzw57hF0ekw7lDYMfqB1ePXx
tmywmGtMbNasikk5K4smqzvTneXLjCe8lfmlt2f5pJyXbY79mqXfzGIPh9l9Pi+n
PJghtTLNVlWDV45oibhLx65PL49ll9C/FuV0ygv4sikmeJtentDK/Tgol21dDTJe
YNo9+Gm65kcG3GD76sN6PC8nnU41Ga1RRqu5yOtNtijyZZNVM5xYenldF1M+Nutl
OeHO9nsPZXtbyrCPsjfrusYU7R2oHxu1PrnNl2WzaEiklMtpUWfFbFZOSjSBB9ty
Ucw36Rezh9uSjsWEdhI3sl4ui0nRNOjuvMqn/R49094WshDXBT1IQr7M26Pso/02
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
fQViPX7iUcFyZWNAiALoFMQUpIc8FLJDCaQCmteZllLL8ptKtsnV8ycx08QmgCWS
eSU4CCaJ+pqILXs3Zl2xvzXk3JnHltswhJbDNfz7r2XBYntI8wXSQeLlu+NWwUNP
IvnTlg2mvuToR4wmoxTU7dy4sgnJdC2cUfhNdyQ7kdRqcFZhwvr3pbuTfYCckMu5
ZHHveM/fzm3KobmeMUthO3E0Tx3dDDMZyQaExi0geC4UZt5zrYu8353C8/xYSCqC
w5lse1IiSeLP1n/+ucnMYcCuKWWkirWa7ot5tRIv1+Nn0KiQh0jfXZR/Fgo6CPrK
dM3r2FYdJkpnRsnQxWHkrQhDuHnbwpyyKmvyQK0m02HZK8Kgwyo3ozCaglaCQf7M
iE79fk79HnYTdLGTtuRLQFp/96L2w/7vQCy5QCJZ0UZBqLqRaiJRUKup67ZJRFMP
2cmE2tdLDMxPuHjgw5yxZ5Brb3Y/8B+iopAmzyusCkp1Ha0Kp5x8THQRufgjNjKy
zrqXtVC8lmkyUFl00B9lb0kQaf3vpkMWGcAdWrpM3XyJb+/QEhDTUMDvqgCEfgT4
P3x9Ujxkamhj5iiTKl1bb0R++5wHEKCtGm5IzSlfrIrF3IKN/0Vet8fTzTJfiBX2
kKY2+31KG4Qn1kQ33Q75Aj/vnN6Xx+HvJurbCWkptLA3yx8fzYtZ++iVzQp9BX98
5R98KKft7Y+Pzk7+yyN7iRklH72y/XU8zb/05unF1pvvf0rekZcmr3QlA7eZo9EF
MOfl8eSVPXruf7jgH77YStB4t9/TH05PklYcyCptiZFnO160n9LOxA2a9P6k8078
Nk1KusB6qjrbKCT08LGIXJZIRJVAmNJQs1hQJmolrmNc/rRs7hotSaY6Z47fILpK
5w0gc6NMRBMGx4fcW7Jioo0haZNrqBpRNPPRezkoZ6KYNgpclx4bDCRDKH7k+jwg
3ZeLeQ5s/jmo1ldNExeSfPlBInBStI6FK3PAmDqaYGW0RCDfEi6qyeq0hjkTvJ7G
dDpmBYfBVaVM0vtnmtvgk/lDUeF8cmvWWljEPit8p+fC66W2Lk0OH5lO6ZqU+Xzj
Aj1iztVV28452LNkHVxKA9Bb4GVEWYHmL3J3g2CcMy6CmQfByhcnrvS/r2kM2YGW
+ghVARkofcg3TTlxBQ/+PbfJw42/TOhEWewg3iQwU+67IQs7k+k9qzVxGLPEmoSx
DmauZU5ludBcFq53tKziH6XYu+zPg/Gh2cnbaCRF3uOPA0/M78fACoElmX0t5+L8
omtif6F7qMHkG9TuWKmg3t4uxaQ3HuHk0Jn5IYvVHTFBYM+SCZSMVi7a6GD6W2Pj
20uNF3FAJ608mPc6ePorYeA3cinuhRg8MZgqATUzNOtCy4Ni/p4mhtj/O/MXo9ms
PnzPvCmtXOhCU7br3GuqaeYTy+jd1Z+QkM4tCOjNAsjyb+tMQIFRD3EixBC7DHHO
nSVrbmgqb8mEl5vQg+rS/b1aM/4iupiUOGLJmXz7J1e4pUMmKl9ZbvYSVuMzMWlY
e3som30njFeTtkBnIcx/MXAH8Fl3A72N9WU4acTel8aVUNZoal0lZU0f4u5Lwkgs
9yoUCuvFFpPAelUt4yewtaVMjszjFyrlJBgyz9L37Yx9CZ1qLEm2zdYnJPsTZTrb
yb1pNfMcDq9LPtnBlYS6eVcql/G91bpGec+Qqa9pyLCXRR9J9zySxwDZ3KRnoluF
KnFJ9nuxj7Fz+yjEjEB6bDViOb8wYYs0NJwvd97BbRoFRvSif8lBYemG/d7xK5Gh
UtfIz55eehaEMlbP4Ak6SDycDfKFQL5XqfkKF8LNEtN0iAV44vSQGuwlSo6DpZAR
lFgwlIBjGcA51hI89llaW3X1DDzIOeusvXCsrN9zGcArVECEc9P7W+Dojo0tYFDd
cNFRARixG7DYpl08yrJ34OjziWv6siNPWYp35z7apmA5cawynbiN37TKnXvmr52t
s5JUafCbleO4X6amxfvYAYNXwYMddmkMcp09U1Um6R0cjTHJmNkoBtvIJXd3LauH
AXB1rZIZBpcKfeG5FEFKSWd3Ec4OtFaeJYKioMuSM/w16UdqAdmHRDV2XxJigb1z
6WoDW9HMJOC+iyD0StNmlXQc25VTtAuuVC1AOdpvdQh1yIOkhJRtExwHxi47r6o7
oT0vZxH79ezMHZq222fpqEPqRQcenBmVIBnmRSxtLv6uTFNHLeirsB6GwtAPnQRK
PQJARkodaa0khQv3vgLirmLPUaC6QgW7fk8rnNpvJZbJHLXJzFrVYvxmnqeP9Hsh
v8W41sIA3Vr+bHlldNExKGHYnSplco+YgO0akkZ/zX2QdjD/55GBN6kq0XgeMg3l
PbCTccszzgT7avgpWNTn/X20K4hh0XEjopqC7CgXsmDXpDHchO7qdjFThrrNkeWv
kbV1ZIFLPO+IhB3EBMJaLFraVxJXk3kWBqDObNoFA1V5rlUj4spY/ksfoVTHh7Mv
7eAFd5Yd6aZtXYfG0pwrOsNCPdCpVqmZGGbpaXwr/v0LLKaoiqLc46yk7WGajeAX
24oRHSfasB4M03W9L+Dg6vmzw0D/9NoQ6rye4+oz7EhIKgkAxGkyHHC+YBYHq6sC
tXlZxXPJ+R+D0FrwFHLULnA9q5G1Bajh3BKBr6trhQ7fPJ+YThegJjT3Qiog2yEy
W3PaizoS9E3DCljJoS5nWbSdWQdifwN8IcZumDABSMLJfGPNixGj1nyA99iuS/8C
p1EJqjuTAlpvkvXmoZID8IsSK5isa62hMaEz1bjoK0cbguuI6fcYSSo/P0TwdU/5
uC0hzEqPWRwiIfgLwLi+xQs5la6z7TkRN9azSHMlD66enir1WW+bF4Zh3eubG9Rb
IbsHzQqxIu5m1/ynX34LTnKSx/8amaT+zfahf7wbDqZXEOK5l6hNvD/ScZRLF/yh
8/A7AhUSJp7RxShucN4LIZkOghNWJo3ZKqEEMhihdENBO93osgpaObvnsiNi/mK7
oYPsDKZupmCnoFizWxANs209TFKnhXhGXEsnzztZhJeR2mBPw0yUi1gOM1dk26KM
GtKkJPekEwYuiYE5dw871rjkEDBpYZKFoBWm2Wxb65pYcdBQpfjqVPW/aGn3cXA9
vZlSUgIi8WxHEmW8dYJA3R6kMqXHOgNjw7nrOCKDP6RGyqraok4V2w07LpZdHkT1
HnKNr3hjUP+fd71w/u3f/vm087qdE2jE9pAnDohBKLgsTqycaArKlcyIwB+ES5YD
wmWEv6pwnTGOH8zSv6F6uX7RwQpiuSydtR8CY6m1YUmejEjlneyv+eCNY0fFvOTi
pDdFm6a3WwZ1d6IS12wAb8+2MXDmdjrt+ly4leXGzTBjRBaFcErQK2dObepW2/1e
98dWEXGjqUtPgXeEdA+I2t8hu6aTyOupnoKJJtaOVM9yJQW2xYsr9dwRHn2TlzDb
2Xc8DHZXk2C3zp8ItHNPEWzRqEMZhuqmtgpqItGX7PBiYCK11SkzsK2GmvXc7JN2
YIztsIh3nSiSDypCrDvdoUx9x6gWFixwfkt01siKUkxmd7FiHznjwao+9nvS5ViY
PG+9Pio29zuInLWwMSbOZLH1hD6335vMGayh5dYmvNRNebMsQm2eYfbhlw8j/R1/
2YoKupo+JL6hPnJjUkewI8ITfABDG4r8TtMpNcRmO0fGKTA4CL0TI47aez844qjo
s6RpClOgfBbqXfJVlM+fb1v14WoyS4r9OKi1RGrzcytqZClsp+dgkPceVpaKWuk4
DEzXzyzxjwb08768WNhT55m3X4DraTu0G+opmFpv1jxRZPaXnLTSctZs1yGPdnVz
o+4bH4FyuXbFuXbWdLfDqDxuInOBxi+kV/pZ26rBc8iVbmF8SDe4TyMEEzET/EeG
MBk2Qg44j8wXMNiqNmSFMcI0bJcM5V3uDiW2Em8PV1RA6wBaeeeklHyoDM0CIoSF
RRmwAO1yGrdFN7CxNZ1IyoHWdWL1SugDqvg511snBa0lo42UEDqnsEbate0Ria1y
VcKTU9uE2BbGR71WKu8IDe2UrF6HzP600JnnfQcc6SR1Gm4vxhYINxUxKr+FBU0v
Y+o3T5BQz3QIKg495a1WNDkRsxrY9phzqiIiSHGvG8T4i7pIBvF2s4YHyYqjUBQK
GYyLWA7i9KRTYuDSeMKd9e2dl50V11rbrvp3qKSngXIuTqXK6wmuxiT9tVOpipUe
WrASmS1OnkmFK5qA9qs+GtYgahl2GkvxcxEcNK/d6LbuN/OCBXxo4raBe8UtiC6D
XNLJScPIoV+82Mc61mwWY9pLMc4+tRw3KVBtfq2oSej+RvM/eI3N5TsObS+KLmKO
weTx5Oz6P+z85tbxktEx5EN/Q8ITpg+bkHWorhtKQtFhSzXMKE92k/x8wVBkN6Ba
650AVTL7pZT85JWK0LR+r5cQv/wrd5VEynzzb2hjLwsMy1yBvArljn1bvuN9xxKa
EzTMIl8KVzyildZPTWsW/mkvB/XwNfo1TI3fajHbzJSiUAkh58x9EftyjyW5c4rS
6TgiDiWN/7yesiaIUSW57+YxaVwo1HtAkiDo9+v9HKjoav2vNXyxpfMnf3CXXRv/
pqfu8Qlr4lJqQYSZZXNGGbUr7JiUGHW/llAy/utDWRYyVW534ci4rjprpv54PkFI
J0/4EHRLduIIrkFP5asC63tqwekUJ+LQzdWO6ZWjI4G9Jrrgkxuo6UQNeBdpSHhH
mM0CUgCVpPFob2ShlDjqTbfrWrT57YVACp0w/dMan6pBBV8gf4DvdbiCog9TQGnB
sdzhYE1zxv9V04n/rd9L68xb8CYEf4xaI0a0S88uOwwQ1D3Vk7aYCxyf3Y7KYeNN
qsbQ2FVn8L8lOTybsZ7EQUUPlozdSbZ0VAq+ofh1x3Twm+XL0VVWRXk6pcw95z2p
9smsfbcbt34iaOICOriACwy4UpT9nmmENC3P4pbQTwVUcMoD1lVHuewWy/5iNpP4
V0dBZa1NkAWdqRjwfH9fjFXqO4mtzCgGNkHGObOrKKBD3B/vQ7t7wtT0Ye87eSX/
1dD094iKTkOJE8Z6sc8T0/k7WzFNRGKnAtbUTBZ6wTTyy+FYOPaWAnwslQBfZ3Wi
6dI0hhyBYSzBYtXr/f4EAAoNCdzFf1+wW0IW1w1+GjVayMXSM8zW3t/YnXqk1Wm6
NDJ8Z+vqhjSR2fZmbKIDMVYwN3I171R67Chtv2mNv0091pXtKlMJab2mCPiqWKpp
ca99tDhwem3rkUyYKcXYrCXRfIwMmt0tHnrkAfvZbXlzy0aClPhpTRV3zDlip7Cn
Qly2tl0CPVAYlobKbO5iooQWWOineVGckz5hVUJTH2wuwne7hcSTGbUsO+bWT5GF
2R9XlwyGXornyRPbti49bq0xrj1nxwsw1jdmbnEaDYA/OTd3eOH5WaOmSTrsqmDi
OXoYh06DTTCwFY1Ad0Q1KYU9X9F63eSKzBl1c+xjUUhDIcjYpSAn5tWNpR5pmeMQ
I/fU9qEaYtgr+23Lw+iWQkanDtIRZ2WMBk84ifFRY68Do8YPBnVXktuE05ZRTYLW
qmJ9ZtEKxE2E7+ahWFe7c9bjSSq5DBTcCrzuLjCTIDqjbgarRTlA/tHNl1RvZDE9
qmYj9kVImqFYx74HgYGOtsjFd8ok0zFUGv3EP3biJyaWXtOFenOz2a69YTRe2XrJ
5UyySVnT8W1a4V8LUDcEUJJLoFMwlH6z5zC5QtAiJzgdGKl5iAGOUY+kqkK/BymJ
1EBLvsbCcek1AG/XY3j1MzCr8Y5muArqTNUtk/AUZrfFC2BaQl/lE5ZoiMyQrfVO
J3nD0faohA0mKNYCe5WmYGAwilDK1JWLFVEsD3brbisBllPOYgFrB2FPSn9oiqar
o6Sz5Px+w63r0NK6VNAyYMBNHVQAUT8SvI1wOgc/hlahik8EcF3jnew0jG2dWpK/
pmXbobdicAfcXuyqGcj+CgseIrcXJ5ZdmykzSUDO64FgadB47Vyajtz5AbWh8Fp3
XFNXesaAApOqCcnd7sgUvjADOn8bLPpQ1KyeroGxv7o4DcPYMd3KGcPFn61mKK5E
dnZoIkFSkFsk2cRoOeFHaWBTgVgJqG4o/y4qDU/aE6HQU1HY3SZwuGryeKJfkTK1
BOPPRpOODsoZurLhWqLeAfqH35HJHt04ThDEh1ipW3rGNWCtj/q9X4KG5GSjKhwM
vk2zoCom9wWGaUsM93seg+B6w5i8gr67ENjdxfl2XEeh0uaqYWtJnFS65zmjfxPT
mWSOcU+z8CWxtr4RRiQkh0XgTXrgA5ye4SWorVZHCmCSjQOVxYOY3RUZghWFyBwE
8cFEah9lv7M3WLKXY6pKkNW3vnB1qFRrWduc5O7IrDAq41RTQKJEtY0eSaJ3HSU7
RDsk+5PvGtIEXbsIpaqeZl0tm7STM1GJwsx5JxIYOUICcW5/ormiNeisq9UI1/Xk
eEiiY4kdLNl7jNI5tHtmkf+tqrkoVzXza+7qrn6suZgJF+Wq0vIh6TU7VPgmgEOu
KRxAO2NMGK6eAfGyUNeSZJ/v0RBYso1K3C0ResnSLtw53m7pRIAZYVGkj++u4R4Q
1cFvQ+dL6mlyodjsvqxVhRXON0fHYx+1xP1cSqCRnECtgcntsgwVA33JN6vDG8J9
oYvDQDZjPl4pxdbpqi/kNi7mKBtgCRJ02G/LcSk7Icsf7h5wLKArhA5kUmaUBpZv
xSY/3m5Pm15VkUukiay/8iwUccD3D6AVrdBtn/0NmISyTSTMjttVB9XCiRn+6qLJ
BuNquhkERzp/1HIKmAXFl21PGzOEGDAgbIsL8e6AE3JvMR8DjxpKGz+SVAYGTHCQ
upRVMbmjduc6t4JIYsggzsjcr7629h9Xv4r/Qxn0SlYATx9L/cHLpeKVlR22m1Wl
GtusgC9SAlPhe0CTx3wp+s6IH+Mds5LDpaTIbu+C2F4CAcIqLJXrpnrR/vXjxw9o
ydhcTIM9sOCYRGjDdywPpC4CJo1jwl9CoYY0gFjFAJmxbk+xYxeYfEANrPZk0l0R
te8v378D1FBCSlbFTu4On6qb0z7Y/Jkop69nplCtvhT15bK8DWflPGo6GEIcrqbg
WoRJ7hIrO+0Gu/8plwwLEJgkqEp/fhYrk3ZVNXUVCZwiic7ixedBPYvKoUhAtlJ8
NTa0QmKa+Q6SDAPXlSARYNKdCMpVOBrqbnUQAEaiiHBgqeTJhIiv30vqqRozSbwX
h3tBMMM0TD0UvdIrVofsmtlEnTh0LpVuNTM9AiFH+4VVUTejO6cijpLJwaNWmISH
AZNlwjUmgrVcqYPBxwGX4aMZG5hZO8wG1wPe2vzrMOaBKOuD1/EVhzFIqawHhxFt
uV3NqtcpLXI9Gr36+GLwKi664hcNDp0+/XI0wtM5KOTm8wKDikl+Hu+z+3X9WK5A
mKYwgyw0t/O91/rZhIAPr6kurS9paLgP116hVebsKnDpY8n3WJ23vDVrv9/TCF/X
VO1uS4/Acuu9YIFrkQZd/en/88viUu52zwxXNwgwwSBMm+N45XUqTCFOTRbOn0JL
n7Iyc0UV1bW5ZMOOhzT8wl8RLLHkNe5weJyeiCwsBPgdWMZSX/NMqwORrWB9Yztc
PH5umRdSaDCHb6IkrZqJL/CVZ5HdaqukX2Tv6IdcilZNKDnpdTVGpMtoWrnimlSO
VXQiDVD1tJCy0O/J+EFMCnPLlIpI+S4FTtx2c27Jog2eZFVcvMLIPiuhPdDzB7O6
GGsQWZB5sbgMfX26DukTyf6GrhQQfxGA4VOojXOE9n3T7lWT+TxobRxvH3sKKYuZ
shMUNJ3hK3SxWO5FPr2n91hchvl1ymdd4EjtL9uXnJFqNhtxghzMJS5BlTLuT6vg
oFCbH5ln/UB+Nt3hHRT9UsIGyAqplssiTatSvg+r3q7lbAR7GrJppFV/tT8IyxU3
V95DUyilYgby15Ky8m6Eq0qKBoWXaJRyxptNI/VpANqYgahQMmM496C0UxXtn7bO
l41ddyJNRsnvbDUaNf16xmvS6XPGfVJjFtEZOqaTO9rQc7C+M4yBWfKSxsV94ku3
dFO4O1W6quV9sWQiJhox4y1g6xdaiQiCaWsr95kEQAM5tAQDlhahpXYQQSwJlD3m
BaV7M9V5vm9nKmKWD2RnY0LycVQh19Ih8bbtW8nmXWgGVjTMebgytixQlZO9M56H
2hDYl6LFaSKm74tGqS05RBFDg9f0y021pl7qPx5YWvZctadIMhm3NHcWORGSITrN
zk8UPcUki4xq6FFzdSzI9JfB4e4VjxfwjoPsKsl2amv1Ixtm2e5uWQu6ULO/Ic0T
vLdQBIPiIXyP1WLVQarH8a/Y0DWgaKiskBaM2f1xlTsO/aBF39IBKnwmQGf6vQ6L
AzPSJ/FrHE2GHmlYPniclxYg6SdlkLZ6Zu3v7JAZbSHjypA6Sc8OLFL5lSRUgGeK
+UzJUPuuCGneAdDGspg+J888BYbM3is02L2AYhgoyZmcX1z7wJhiJjfOT9rv9QK1
Anc/hUGxr8sleiI5TYhAbcJDWloD3Fc+xYWEp9rJ7l5Wq/zvaxJSDXbCzyXIDaIH
BHbIltyBYKtv1pwgxKwAzbphA1bDJRanL5ci0WmQ/N8wjEZhiNvZ7KxLidg/yt4t
QlhXbpTFujUsgKzRjVZdUrkR5RTWap6XC84um041aZkN6MYQd3Uu2ewzpF/1OQ1R
noNeu4KEbvbIhm+5DZJZ+wfvgm/E0LhC1OqpvNxFSB79lR5xACb0otkX3Wz09qH7
EfSqgpSodReAy6yQSnyTNZNpGPO5ArSFKKQQX+0gh+k5HnCSwmAyYKKOes4AA/EA
J0qy1sRAcCdJiyOlGB7wWr8FT/i8C5NwhXB8xWtedxTiyB1U1Q6pARUCcIS7ZEag
/pZWzuvF5i3tljr1GX5XT55ZKQEzRCVZVj4Al1KkJYEb0Zs26g5z1RmjLyyQJRkn
LjeI0KTVKEnPFrvh0Rt5kT2WqtSXdkhQiVUdXJbmuaWR9kOV43zbhzrwwa0lCwfq
eKFKlrA1JUuF3b69qoGJk+PG8vdCNkvYY5g5LVoYSyxxLlPpCmYoiRVbWjRGrSLq
HeZKgK7lL6R5ti425vUcczHnjVXb4LaMuBf6fDKgpKp73nHOH2V/QJi36yWnfAzZ
vVwXkphnWZfwTdf5DSM2OWaGG15AGBvxySQ1rmIlGw7maC112ZluNb5RUQRvmkRl
uDYyibdLzasDj+CkKx8wyoLLp3C0R1LpV635Bzg2sBU25QnneiXmKlkwZ0xvIgW7
nR9swpzOIrH4vMyqCTtDAQCJm89Q9h0PGppO5PBREnHSYE0LA5w2dzGVcDxUuLqa
FdwOdCW+cx9fUGfmBeJ82RQ0V3CHl0vgd6wYZiW0ARsr4mO2nu5xv2p7Lhaw031g
VZpn15bgWs+pVniWyFqUPlCwBSIYpglYESVMnm7DG3TgnHwsdWOoCUOxdN2yTTL/
yZzxxJyenISZgYaXzM1R9kudM3EAbQbWGavZThGqqEYrrar1TIuk2nI6VZPD7VLe
Ur8egbKR4t3drhH4O3ZJtboF/ErAF6EHqkSogpjqJUxQbAbBIZ/sfizUyM5tZnie
m/bdCWcmc5gU1eDdBnOvFPcx4wtLDtK7VgV24wyekORdtlt1LqPClJYvXzDphq8J
wCUR4Djca4p2NInIR5wCI6Nb2up+pP1ML2jDS+ujEffnAkQBYsfsG1KnXS9vAbCw
A6Asvis1AbKKkTKqJ33Un8Vr2b76SQoxQWXpoMGQdjkv7/lmIN0250LWgQoqqWoo
CCQTjeohDvXpXJHFOagb2tsFlBieEO2ewLwC0Tr7eAKlhWfEFXQvXMQRMxbkqlGk
WKL3zj5oBRp3T4ipHkLLdjhwIVsyZCjoIWcqmQPSP8A1x5CElXIAAPK/ikUfk9mR
WyW9kNXXwTZC16my7b681WISgpmRhAZu2lJltLpWBwBp7PmdEoQZFIhgR4joZMqd
wOSbDINBvnXBqfN8H+oKpr79b9qbRkcTNue18dO88dWKgxp/VSwqlNqSchBNmnrl
LkIPYdfwV3aQH90d5YDCWm4IpFosdS5Vq8Piey915NkUZSUUTPVu6mmoSNVIRarM
V6MS7QCh5sWqDRyC61W4x2P9OdLnyIbdSrQPjBn0Tag17FJeQboAMidpJ4G/2EOk
b6pqOjJaRy2kmCKmfcg4MhpoTlqq6vlqCLSNgFQ1xu0O3/bV86caKN0S1Kj8w+n/
AfXj66UJAlc0ct6/IdXVTwd01Hk1uVN4hqeLNnqXfs9xw9PuZH6pPNp9dMx4rEbH
EmK3wqnvKwAGpEoI6+cLFMPcO40sN8Jc8i20e0Kj7ixx93Dj6QfvQ+EjBlrZrpb6
bjS93XrM7Hnp76YGGozzaeAXVxEGvwJtJ2x1Z12grCufct3wdIisa6zJOjzSTubs
FyTdUQa37+jGBJOtH2hpAFobh5FkST0DTj0T8ASSme20QaQ1RSHbgS2XUKXeQX9c
Eb/gOa2rm3UoVPnlGU3wMhaQgJwNcEvN8wWk7LP6X8Wx1d6KT2QUKk6j9mNjtR+b
tPK1awiBMUasNFof8YYHsgRqu2Sdzu2z67amfVzUeyP3FiD1AZapVnDVVXLgbE0E
8VpIp7XA5qs6P86FZw8BWF/8V4es5hUQSXJ1rGqmReAOrObVxrkCQh0Qc0IE4iMB
K07mVcfbSpY7BKtU/lT+ySqWCvU1wPUgifQXxDxM6Y0SRfKuMbwzy0cYmzkjA1PO
XMtqVpHF+1hKESFUwxayniMPL1EBFO5bGfwigEWDFPsuAH+ZL/Po7Xr92+s9l+Rv
tCDf067wvmHyIity/FXICNjjLTOrq0QkUuV52aQccIDUAHtlHi1hcoh8tGnFerUs
EQW+reGAS1xrg6vlcjlgJIH48b6QVhmZD4+yOCRPTxpdYyH+vcsbiFuDvSidOnPC
yQgUjDhI8Ij66FKAH2tr9rFmq2iR1LxV66vpXJg+03bXunKZ1Wn5eWthERdOlpTO
EYpG8Dyazy8wEO32ldK1DDvtT16FvzFL33awuat/9XtRcYxORCayMxag4GWElAAt
QBbOfwA2BVHtYNHWbW4jKXK6n/OhF/kMQuBfcmldpN2qq6FYdQdpofW+FDOnbJlx
YKKkROiFk1la+gPyXJR8agYfUL0Gm3H7pciIwEw5NHrkzLlCZX1fDjd8nTOB+W7k
udEMqKUwDpDYX+Wqv8FzCHdDyGioc6uil8a7FNXHF8RGgcZNZSFNcexSQyhP+W4K
1RVvDUkBWQJWqxpcKl5DEJEV04ItxQW1MWC2fHbsckx9IPJaM2MEoYn4i+hW0bUc
VkvOSQ8GCGq4uKQ5uW5s4ZM6gVxrNPoF+q7euWu5S/DnC125bLvAifvXjx2Ptia3
yS7Ss2Il54S14/QMYbk3tqWGWjku1rGUdILYctiOTTYabW2g8KJsDnnPPikwPvkd
ox8cBoi9wrahkp5KUVgufCNF1TQ5hFvYgTdVQs62mydi6U2OSkuZw0zDJjnBfZPx
7Zt8i+EMAgXfQNwnAUFCwocpT7jGeGP+yQH/fYSqlKPBEeIoioVw+n2rjP/I2emy
gMLx6NYp1yLfn36JYzfPvGh7EY2MZ6yqk8QsdYi0ydcKdjs52VVKMswiNWHBtobp
B/uxcpgrx9FNfrbghb7OZzp7zekL9PCnX/jkJNXRYYBG64xfQsB0EpxcpZTKkJLu
VRsyxnpctQ4ebRmlLWMWOVtJWc8XtkMUFifiXG1xaoX6xJT1uZSOKMP6iPslzKnK
ZG+VAmqxZiWR2vlrtSqYjdBjp2j3q/8A7U+zwSXthoGkBCrWGsWrA+UoBNSDSc9Q
NXbH3nB7FWYEqwMOuuWFkBBa7aDm4wM1iBU7LMzryTcVIecZ08Oukby0HpNRQu2J
e3WnlIipFsuKCX/7XBo1qG4ScwoIgbS+iYXHOTFP1GLziPRDxXX3yryqVrLFSITn
en0qcWSo88iwAKvbu8i1nnqwItXLoBtKAcClxD+VVE7rhmKTQM/CdcneOJFvkTQ0
DfKD5IdGjpKz4Ry5Ap595Zz+23p5h9qSYV/xM2yxOqEmg8QRkXF0bKpmQruK8RDb
jAkKWZe+05Zkq7Aub8rpUIMEgsAEukAmcZ+M5E6lRCjKtWAA5643tyPdlprcmnZw
qaSlgel05HjlGVci5Xfsc/CoPFgBoA6dw1HKx4YsOoBEh7J9oLkMNeufJKn7klYN
mLB5EFDJpbJcoXlwKC37wtRsb7F6aMIwpqNtkVuCHl+D8Hm4IOey0klxG+mX0TqV
DCMBT06TvX7bIPuADiETR3O4AjxDGvSuixsEyGoHtUlyFr9R59D7HQaYMnGbG0X0
iouTw86Sfk1VGPxZrugmrSe3XFZOIYYkJbhMJftApLRCtQwc4oi/Q42H9Ookiqf5
bcA39AP3tcyVNaK1lbc6iBELJMIQDkL/gd4UNXtkTBOSxI1NWg05BEU1VsAJ4nuQ
J2ZJfdGqgvSJHE8TpOPNi+mNBKadyafi+gaqFYsKmmJ7WJ1FDE8uScCahfPXnPYZ
mUL3Bczl1/N7FDjk2ltvAIM9HGY/0aQss3ck2PN6Jcw/B5c/vae//EwP3mXv5nPm
QiPB7arI93sHrz/+13yx+uEj2gBvQ51nPwEKtsYL2QHdVzhS/AU4Dn8t+TB0637T
wfw1r+tN9j4XGFN28HpajeGI++8QFtn7CsLp4I9lyTeSRDY+ohO0PfHYh+Lujg7V
dX5Ppl128FvRTip25NGnGF9+Pbldz/+sS3qFhl3N14sxrWBsUKl/r1ucwnl+T23d
kl29rO5pJtClZdGe+VTda01CBc5KMGbv87pBokJ2BR8TjiBMXisgC8vp6Lu2hNxC
o3l14+pK8cWEX1nsIppJUKVfpCwopaEuaoQ4cJBjxigzHvZ7q/XY8OUBAqqKt+eX
XCqb1yepNd7oSQUOPrt8+yL7z5fTF2SPHdFwh/fZ6dH50+zs5OTi+OTx8ckF/fPF
xeMXJ89xTprmjib13edV9p+/AVORIkmNgfzZ4AtMjNTcm3leyxURdaFd4ondylOL
m8j5V1kXj7qnkRDLXmJb8eJZKu6tBV2wIkn31cByZevUFIp+o572IpCKjUIvvOi+
KlTDnOcPIdtJ+CDow4NtXnj+vdCgcamPchmATbE4g0wVa5d3SGqlzYAa9OxmMPWB
U0KEhxVpgb1PgU1+G++vnpiUqEtQHKSwWTn5qACkMDWnqyqLmGN5CKMRDYyauSun
U1yUrIuZwuVCqr5melS43Jx2dgxjzQKinUvdjHZA69T8838PoT62+baQc2RDcU5N
GhUUEIRpBx7VwTUfHaCrE0oYCOKuhhtgwFoO9iEjjvlPgy9g1Pzw3+8Iab/AITWd
S5lDWOna7IyAw/JkS9+4OuMN6gqTfP2jyjYk+mgouhjOsc++7wU3Y0qH1yYJXiYM
ceeT6jxnl9MyQWSz88hogoQ9uJWTzB6kifeIB2ehuJQTrNQhMzwM3XYTOh9X78xn
StBBaaVKZ2BL9NSt4qdy+WvB165RxNvcSl1Gzj3liUmcmOxqZ1giKW9nou1IeF+k
v7ESlwYaMK9OrCJiu+pW854lmHrQvclB6R52iqxZlWkgSvn7ewHw5z/qj1WnIq1g
0GspW8LwqkgD2lSz9iGvCz/SWOvuhYIxadTnI/q/J37o/xK8QbwiuEjPnpw9/+fs
7ce3MFdDK0fZW39rwu/HOVA78b3J9lRMSONAPSE34QCDmuVppWNFoB8arQi1YXBo
DmFGH+xhqE4GShE8zolnE1qjamGgybgzdF1Jp2ISexYHSrVhqDRAFTrUadGxIlo6
2eDNupG6x3LS3lLrHAemy/7xUXaZ8jawEZ4AtBR66pfrQ0U3OZq75k1H4o2k6ODW
mHiw4fiCZgG90cwUQ8+rv0fvXClzFJyCuonVRSN5xpl/Q2VKP9RHoWOz1Evk+mdG
XBT1jlOkYKdwHrW61C1HD7eLKdHimYINs8lU7ENvjXFmfEWK3eZFLAc1MOfeQKNU
n34ZydWvvwX+WyoQ6S8MqsS21xzqmn9BLiVrVKs9FhpxUnfUtp8uxmaUBIYuGbI4
QxzBCoLLTA4eEEgmjSOOyE/g7wrDg12nZ9RZ9o1kJWz5dwN8WKCtq1wyJEIXnZLx
qNEgBSvgBuFKCFWpEdlVrPAo3yi3KbJIvZ4o7s2EHKhDFePOLMPC4e+C2+DuA48N
1Cj2IzD916KiSdQiTKXllnA3/dxcg4/5RfY6FMBSK1Y6OpB9bJUxFEHGTnwWHQJl
qdhd+nDLDquZcPpgQ5CiPpsdL/H/AyYkSyfdHwelBOliIfle9WAUC1mxm4C0M3Gp
hcstiBF2uG0YM853eirqI+FAq6iTgPqWduQYx9DEUdfnWy6DLh+5sxV45YbN0kIr
jld+zYa+xGF3lMnh16p9vyKd9k0+D5S4DWa0YylvSw0TEN7zkgDsdWn57DZa3zhv
t0IzCZMnrxf7s1F/I3IscowioVHRAF2g0p27l41p48CZ20kJqj80DbDjmTAJuA/0
ust2e/oV280UlcdPgJTxCSBtUiLS8s2Zetq5r4Z8wA2zzdLrMHoKQ3qlx7ybOSg2
W2qYMG1kdmBF3KH5xhrHRQI/D+vMusBoEu4aGjaN51mmmRP0wAJw3Nn6zz83+lHD
bbJcEHmU+JsksqkLP8I6j3CJo/9arUWMBfZDm0kC6Kj5H0KIMhhPQRUZ5w0PE9EO
EiL6Bi4VF5VHHcVip0J5wkHi6D60U+bUGtDIdr2J1MoBvGhfTGI/lAihuxISfste
jJd/2eXoO/5T16x488ulCTPIbbDZLKAbmfEvegAXDPKiP3eMt+GXldSOz1bl5I77
WwsCHUgyvgwlrcTlNKgR4CWhsJEFfDgbwEHlldvtQB1b1JBzbe3YjS4rcWCCz0qQ
dfIRQ460OMob5iE1IRPxfmRZ3Sk8R8kbwv0fI2qMquZ92HpR5RLc1TPrUxt92Qpd
ue+RLE++IlkuY03EEPBTL55pcuy4WW2BUwP2vrdT6yfxs2SyBhao7AYQ2smcKYtD
W1ZgqwfzjWMeD8p86MXcYE0a8HKyGYjUwrOmZbjH0BdOvR36Wo8k5FUXbgrMYAC4
+g9wVw3+2NuT4hhEe/aaVI2h3Ioh1XYBranIm1I5wHuMauYkc8lz7yZzQZoNuOnp
IPVlzebirXI3eiwjyhuLA/eukgLtJSjIprPgahRPitn+PptlN/BKkmJUA0L3C658
mKhB1qhC+m6YKVYQ8OB/cF6aXWIRJPFR1lr1gRi7bl5kbzXXIbKgAB7CYR3wslt4
Ua5vdo+5MgQjq1YYkhedwRzt1yKMp6zDNa9313bSIeyTtxGzKfOda/FeTeuLCTRM
LaIWdIAeYXd3fQ9vFVLn7JmvoiqyFFNBDX0/qsLr1nopHcSL6jCynmlaOu51lQzq
0BzBusWKUivgfTsIAYLM4gOH6XYeXRUN+0ezf/mXfzl/+iK9DltvFZZLBovrpSfU
eBC9WGWpueF4fr7+ZWfodRi5C3FjpTF9LnMTHpA0ck8rh9CoPaLnxRxZUmsR0x+L
Maq/l70ek+iv2xieUWjeUyIxdl6kg1Bw8XZyJDMAFsuRKrUaipQ6At9xR1x8LXIg
7E9pvSYGYYrCUHCspcyd7i8wS0l5hEoCiDEK342LEWigR4iRF8op7wf7Cej3bG9y
Sle3VmkpJt3l29Fvlx+vXWYAJxrbxb40gpoUIIXeMf+clCIGROxJUB6FLpD9eUx6
J21YVb8kTaenVIkSFTgie6EuYj03UVDMiGZxGA/dtqhkmzBJVEXxDa08rYT0ANpK
+jJriya6TYX0hMrKIbecamwDXkoO1tJWo8vkMGmfldCvHKzXVgdj8Mu8GoPnFvkf
yNhvUDBQbK6LE9aCz+k/rK2pIUACbyBpLL34Aq3P+Ul6GBvgBpAMCwK+qHe5aGRv
Z98u5/M1Yrkt++Xzdh+ZmWgS3RANV6eHQ5XM7q+LF/VJRe+qkEezrDYxMOJE2Nk8
v7FiDn+s5lXOqZkcvGBPI3JJGrsYzU4BxnIkdffmlXEss/YdyMBpWxlWhZVqBrNY
kY9O9lnS9SiQT89eZNclpxYH9wgnWHTP04z5nh/2tnM+5P88fpF9UF/ddjBOuR6X
wRc72K716vQsd/E+iGcqkjv7/M+eesNCJjuSkDofb6QQczbKUO2XrChORtR669Gz
Y3FNDe9to4b3jf/i2Yut/nYxGZD8wk4umSvMMMP+r8YKcrLzWqPOAciYUGqentFM
0/8/7uxGCWdTT55gCRxet/YUE47COMAYUQFC+JgC/FgeUhOwLsQRtMCtnS/3TsGT
Jy8cy0TAwSbfVzds7ENfSI268VzX6jPxIEurdm8NvI4/sAA8a0W/rGkfMDMNvvA6
QrAMtTBSNTNsbc76hxw9kqDHydkTEQJN/N5QtTIjqs5FTEtNtlpknBHXyF8kOxrz
WtSL77mRH3/ValOuepHtQ59UVDEmnEHdw45Sb6aBsiyyfRL0Zo7sLUJKF8CI6nyb
F13oJJs3SZUomjfdfyxDxD/CMHTkgw1cQjBu8ZCohbtmO16mnI8yVmbrFbYQGGmJ
S9Dl+5q2kUxMYOrvWRBgWnGQovLk6/N8U3AwKyRBCLy+47NmhlRxosmX+N51eElJ
gofs6Ob3d7LVe0Ye2mDaHljnuXrqA3GSWs0OhTU1NZrB7THFCuY3ekMFAlLoyP4s
8ISplsYzls7nNXWfTtEHT1c7wNoGgAyEc/fvogvTb8OvQgEI1PpCdERtFJx/oyP9
cNk4sJlkF+A45PCWiCHr7C1MYNeu3bc7UpnHZb7K2UiC1Wm+98HV02eQ+c9OUFwr
JCSHu9NwhOghJ9ix0me5zMWITR5xB/rUV9s/S7Lj2NwW2pF7c0vQtT0WSC8LVY3Y
ctjhtrNJrSgGTiZcqiGEo23o1o2warX4nCcyeC4cbbHAmR3eWUvtKLRlXt2UIOcG
O7c0+FDVU/ZzsfTCx+MwFfVrMlB+PS3gDxAfcixbWhfmcA2+9Fyvc6agTeJEwck5
6ng5DQyzg1kkAGKsggq+KPOKdbJpxd4fStBmQjdRU+wyv2NK3r7bh7QjV3E1qbTq
vHtMDKjXWOowYD1gR8nTmyqoQSE7yiNT2QPD1L/HrCfu07qe8PxB/yDD+ursnD1o
DfOksNdJ8yaQIHttcldVRll2V/khZrIGtCynhnMBE3ah4XY8f/LkqQoE+uczLo6g
RNMcqGdFBxC+vE55A/iU64mml/edaTf35za4J7QM21Va+M7VBHwtHYYTncDavlpl
hnfekUSwpDxR30juHHkILe9sTpra2Dw/VX1T3isbg92ae8dBelHZ+hJkLnPal1Tv
TavRplqPEJgaSR9hNoNVcpRWBkC8ciS15jW050Il63ZEfRyh6Lv4dP+4+nVf385P
bI7PT2kDPX/GGyiwNQi2gOsip5kTrMdZrsRwK63OYF4KjNv3cdqz70adhAelZ8OZ
dt6eoVZp6wn4WHit2LaCE9Kjq9SkgsEHswpduSuKVQfWoDQiB8jGWLCLLSY2lE3F
x6Gt18nehZCXoQeZS6O8KQVPaxUcRoHFOFIp793i56Tc6ia1y98c8NfrMfDXLzJR
ZTlvdiR11D0XlRtelg7uSKgBgGfoHoC+T0u0jbSsnDrTrBBH3k3DE8jaXD/2DfCx
mIWPHw/DWT55YQkZjDnzuJCMLp0KQUosdJMWaDZlXWo0a80yjml+Do5pdbEkABvL
+b0Rp4AgBx3L2tX5+d7OPw/SlQTQN4Cd+iFjlIke9HA9P2FWr2GsmBrzqtZk47PN
tyLtn0+wVGzda2bS7BlfKRuRn6VykryVcBGEgK86Ib/cdRKBquhzDvUusKoknoHi
1go2Sez0BlSNUJsj9Ub6CUwL8FHreXEcaEP3jvCctjyYRKqZYfv1TLEi1MRAt3mG
Wc1HxVPSo59f8EkJfvq9F+epQeFWQq+/lgLmtDB/sh5jFdlTykQmVQ8gzaibseMo
XvJc8tSyd9mK0EQ4LZGOcyoHwpootU6qBIx9MIkzhG+LfCXbVpJ5WQYnX5QapOA7
grJi6l/IjHO9ZpgfXfpMNbZUowbV/KgP0w3SCSddv2Qycxc0c/MHqBiSluOSu3MG
SAc4PPRfrFWGGmW95E/qWgg8bNl7VuUlW6PWSxGtXp2dmuDNIRzWxnPR8D5PqL/2
CdmgR1w8fxHS1iJnDaCE1nQaTwS3TmZ13iyoW1UjIc3wd9aBdchE0dXzJ4e7VM7E
yzn0eEvbcZZrCVKFb3AbAGd4fHpy/FVHvp+S5ynoZjtbmIlpGDcS3Zviy/yiOvrV
di3Fuot1V8CgUlJasXi+UMlUqEPlGnkOrKwB/bRPeJ/IzXMabp4L0sNECkZ/kmS+
hqrpfaTEirsWL9G/+QH8+5auHWFJXBqhzbycbIzkDvkP7tcQlCE3d2r+JqvtJkkr
TcVVDKdTiT9TL/6+BtMJTm2fIdj5mBPvNAYfw3mjeVXduZbpAe3q/ukIlsJjhODa
qjbivrsAemaXRoUcSOamXAqBoHkC0E7Mb8eJbVqjP0iq42J2/WvUSoQWk8n51yAL
VUCRKasNCT+5+KFhkWtfog/jawfh5Pnx+ck34amSYPzV0zPBPD89F+oGEFdGV3z0
IsdNGzJK8yBjJUFXr3ZXtsi98FBFsI+BC3kLMkpeM/YYkEx2w9N9i/n0hXIlNwU4
d0TbJv2NOSCEJp9vHgm0QsQ7m0BKSIAnMSE0xZWQrTk44SIiIUwmmcPJyb8uFuWo
7lzdnaOv2KMPb39uwl0XM7TY5MFeuk4yDyVMQGZHyIr1aogVbeM2lcOJL1WOFrED
/FsCoLZdzp5/c+qU0N0pOBvdGjBAdWdg0vCBAza7oxorwX7cYCFQqRwutOoxPIoZ
jy/6DbYr9Dqak4idM9v4mC607xn918CH74UTSJMo2sDQ5w6PQYfAGAT5FiLUB/lh
37FWdPVOVQlFPoOelmVRYDnqb2GLhCwl8As5yk7RlZJUGul3KBPcaQrAU0M/ZwNm
uRrAvToMCBXxcYudHrgO5A3LKNmje1wDs4GrXgeuvvVdY+8kL+GCxXe7KBTLM4tZ
U9NuAkbkll4qA0o3u0n/qIk2Bh1+X+RLdtKCEGzkPhFvWIkJGV2JcT4qxKTxjH+u
46rh9CPuZkfaQEAdbhVhoxtCa6KP6YOg5vHqFgIH2xm6Pn3gQ+yJ5IIlM6n6a7CW
vtKYdBYCjnTf14HrkwUQc+/E+miWCtUh4TXup79826fAe2bFKAauNoTeDwG2WGxF
T8WPxI6PmAjPpUw1e7/iUgURq5GE13clZTjM7g/6ALIiWAKGbNo8zqVqUrmQLYeO
He5TGZ+ymnb2LKhpZ1AiIcyH2ejkxCdn1MqUes+zqrFZZuCw8uDGx7q0pLW4aYYK
uBGqZpoFzrvoCzqnAj/fT4b6BX8LUwoEiQonSpodb6cLOhM7zaeFkGWsQ/0oYV5P
1EReuHx+Z4VlA82EFmsycCKjTByEtul+ku9wgIHTm5M2CE6+meE7xXUp1OdJJ108
GlXJ6ul+p93pM16w87OwYI/pVHyS2MRNZcm+oLUd4LugJxKMjEusHnTCNOg6Lckq
Zyj7v4oD699kGsQHSfMTskud3+jY82rsDSHv6R9f4WhzCmou3s6XbwdYhqRzZtoB
f+L0kK/1uQ+yH+t19i19NrT8QE/nQOqw2GkX3I1WKK+yHaQ2AnRsC9oRSf0cJKhq
cZ6QBh8TUKPDlHdWI2kR7JVK9K5lCAYvQlkg26xKFRvYgeRziYuw8bU0Z+VnjrkG
4/LYMUejXPcO4Da+dSV1AWUSOuBtFwZfCQhZ9p05woD49q2+W6DwCNcGlNo+WiJA
KZjYC8QpjHC74FM15xfKlUf6LWvWzv8v1qFWSdAqwpbRPFSPGtKW0GhMTYZ8p10x
QRGgHDwGQ7YRbXlA3Z5n8aE/rn4d0KkXkkQV8Bxsk+rrgxgnpGURQlwexN6KYLuU
wm+zoAbqu78MVas9ajyofcBN3hUb2yZbxyskl6mRyfVJNSwjbIrF1LvVuTigqw54
lB1cyxUlZ5SZLzIhvvC3joa+SbjTIXc3pkS89ddcppT+/fM8T4PcHFmKxpZVVtJd
260BBVN8K1EjRMCVenMgfkP2aJKgwHm4oS22MiNBoviHruYUabNFzV4m8Yix+Rwv
yINk6DsyH361kyLPm7ddkxGiebKtV2DGkaKQfkJC3JE+Mdhsko6aSVJ2pHtluXKb
7xB6VrNoRjeEeBNXJEo0O4e9juojUxbLnEc/X3fNLh3ofnwDRzIYYS/LFZUrVlZp
sx7bINQL4OEM5XIb4UTrzJThGALMndDiMZdO9GRl65obngSLEmcjUo7hJNiVGfdS
8JmyajdWbw3boLqRaIeiFnoRbgp24VODjguFveLiVVPHjqM5EawsnqanfnrzAVW7
kTcqmGuxx8fVZ4Mwdk7gUXaVl5zGVK3HsKokELNacz4P4jizmcCTWVlINmY8uZha
Uv4yS2cWkMGO4Du2HGcmFcUd7ycF8nPBggOtvmqKVLgbNeMtVLaLwfvvEIwnX/MV
hNRtlNpQqxzi9zj3NK8bJTNRACmsFMGYsNVfrBpcBTd1vhDVAae8vQ2ZGPD9yW5j
nxvCcfL0jnPwDWy0QWZzb4DHFfOQ724hpWWohvFQGrWYKADNsVbaOBb4VGrl/cy7
eakZm1o6sTHnv0URxG0lI9yFD9gaFlhOYb3d5IJMmO3+TGQW2Akb3p6tna4aJziQ
07SuhfMEJ+l7ds7ZV3aOw4zEMjymWYkaIu4PHxxR9MP39OP0a/0o5EZAJywiwbZG
5k4WbwbD3o1x3AHohzLzQc9XhFoN4OMgiWjCw1hmYflIjpEVGRYjCsJIPsXin/HO
02JUMI1msrvSzASyp7jkHpPc09u3GiZiEpQYmfTsyXrYtucVuCSZc9LtxQeZK/+K
ktRB/mEXHu9zAr3mfOWhwaaVyFWMVZFk5Z8BHxiQvlzpUunb2Fzg98OfFbVr8l81
91CxolPlRsR8Ud/mK6l/8FmNxBC2G/laHmoCfvtuevZ1V/sfZGcOdBcnkN1c+BbB
z8Hm0yDqc4MENsSWSDs3+iRWwTW3MkEUZTvlBX8fI03xwjqDg0EHobTjQ3LD6Kcc
o5sSuuHhlKnNf/63EsgVve4Vwj/krKpVxQ7IA89El0UiOmOE83Jw2PmQmBTbXdKr
r5+g5w6/fVHPvhZItKptppjs2TD7Of+OF+WUNCv8E84V/NfjhpnZ7dFvgbb+Kvzt
ETf8F2Rvq1b246Pw5hHpL0cgrAHl2qPsL6++8iiAbN/+6LPwKD0b/hoo6phtynjx
b9t29eL4+OHh4ejh/Kiqb44/Xh2fPn/+7Pjq3ZsRtTPCDydnpycDrm5P2vyS41s0
uxj8K2RFLMWmhB+bTIJfaZnWuHkO6EuH2enRCU0sP8uviUThf/de0gfzpUmXfDym
dfpx8On8zeDVp6qmzfYJAVhUjEV+FVmx5Xrx8ti/pO2ot1F+6r3EMcrn+lPvJW3U
omhfvb/8SJ0bV3SKKwles9EG3HJ2PeF07ZfH+mzn1YvHF9nHmAZ+/fc12QxbD0/I
Rnz1Jl+M63J6Q3/mn7OXYPaknr5//fJY/5m9RBj1FU3r+XN6DP8ObQDeUW9e/XGN
P8i/dVTHybBerm7Jjnn1z9lp9uT0aXZ2cZ6dPTk9p6f49/oQiSnOwfEPPssunj+n
78a/6cMM3HvVlovx/L/Jbnh5LL/TB9Z1+SrZMRN5CL+XhTj2K0E/xcV+yamKC9o+
tz8Ofi7GNU3hZpBtipz2JDYZqjJgix2HPfayQRZ9c0mKNZupsjXgiVkXuo/xCqZV
Nzkf2XhAdx/XSwOjfMeBvRy9PVrUSA5UcroRPdjgoA32HbRHDt75SATS1un5UJf3
mBb4c9ZLs3ECrpqj9E407jhIjMviyXnUffoRnsvof51zdrxvcXgtHkG4PuqsRXeS
dw339+vLfcP8nQSqUkRlv5aTAhkF2WsriaPecf+QyG2s0JeHvPud/9CB03AU5bJZ
0ReB+3+EN1WCPtLz4I4FUl3F4GaBOtcBH5fLafH5aHW74o98bd8e231zTDsN//1P
o1H2zQlDfQw/c51CKjZ3B/84Pi2no5vQ1lFLGsNo9Kr/T////77pfy67nTXGkfwi
qqjHNL/PxpjXf/gbJycnTx4/zui/p08vTv1/6X/n9NPJaXZ6cnb29Ozi6fnF44wu
k7PTx/+UnfwHjnPv/9ZI9qeuGCXsP9oOD+YkC//9P+R//X7fMV58//9eH2VXOnP9
9OR+w8tw9L4ne26tjCA/c1Bw03+HHP+ieZH9Tj+D7uX0Ysg8vl/vDlnP8wxpsXic
Bpf89aob8OZ7RnrrgDmWNLbd/FdPCx2Vfv9aEsHMpfG+WFTckY9d3jKA2tI5Y9w0
s/7+jZ2llboElF2tQTPU7rW6R87xg+WHHGXZT5sE98SxteQDQyaDQSt6AcFli6IG
bchd2UgJmomUxsuZqQOVGdgkR0oLWVblgkuRUTOSm8Sosay55chmDiZMx7xoXERj
cfwCxTkVM0qI9nc1My4m8LJLUzveBiCec2QYk8IRSqyvzMSzI57u7kWSa8SXIXyB
XFKhPvZw9g6kzwUnJ/Ka5c0d4CLI7sJu4aJ83Fau4SX8mEQSEJFGEELikVgwnrr/
m7137W7jyLJE5+vVmh+Rg57uIrsA8KkXZbtb1sPmtCRrkXS7+tb4QxJIklkCkSgk
IIqu7vvbb5x9HnEiMkFbLuquNWtd9uqySCQi43niPPfmzyLvKgWXgI/e16vSLRw1
8VIYDDaNS5BD7PtSlYfQ2HX5qb5eXwNQtf7Eeis2EmciokSfvXfToflHh1hzH6rI
4PQK3izUDuAzCkLdREZ2Ro5HyWedLrexZpVaoCgF0CwY2XFScwL9tbwUjqDwnQE8
NcSdsGzA0DoeyMGK8Ujj0MpemQe8eGnuVCuUwxBaxbjzpuzonl6V0+ameAlcmoa0
/c94Z4svj69W17NxlBXZG5iHA7KR/Hq5cAxffNEsbhnpi5gnwtxSU/GPWy+2mV5X
N/tpE4xFKtik72+HBp4rbWNXXokzr2q7eUOanKue02COEYQl8By7OzZJD4mx6KEn
tg1dkR+9XXJRLHfEr14Rf35PBvzezw/+e9/9dPyyR/AfpRdFcrXItXIG6Rg2wQvG
MmoxYXso7VxFvvfxZ/9fcUAN7ROBdNcvXnx2QwfUEKVLfs5X+xo6ZKEWUwIdVOxv
beiQGnooQwsX5F/Xze/r0UNq6FH4h8K4Guypwrn+tuEWj6khujgZH4QTHH5Hj/Z2
qaEnRHPmq4x/b0PU1F743ySg+nn92tvThvbRkLXy2T3a14YOClq5Zvl758gaOsTx
tcST398QHXYHBPPZDR2qiheawoQ/76lIaX99sHsPfUM04S8pe4m5fBVd/zf16JFv
iCY8Afn5bY2goce+IZrwn76zYMPnrB439NR2Nk7I5040GnrCPXqKie4i0Pz2hp5C
1O6OaV9TNcQ7CudPfvup1//bl7MWmtor0hynzxvaPs7aHkl/TRf7Pf2xhvZdQ79P
IklDBzZHbwUz5HMl0z7O2h5J/79nhqwhkv7BSlmUrRGVqez+vIZI+hevMiSpz+sR
7rU9kv5FL/bkb+4RTv8eSX+DZP/s+UFDOP17dNiKDXBsv63hfRzafRyRHi7l3947
aQg723EM/46hoaHn46L49eSIuxuCGCFypxwD+nN7BDHyAoJN2Yx+36qhof19PiLm
of/8hg6esjwKTe2RstV17H9+Q/ukkPbFCD6roUL8s39oFRX+M4d2uKsNkQ4+o0Qw
yot9D161FWfmRDPFMDO6rznce3DPlsH+PVsGuQ0Aw+A9l/r1We6W7kGZqbDRV8vw
zfWSkVJiLAVukpoSdmBsRUrdzeaVt6hgZiu9X0ulOJRyVBkzJQLwwZAPd0QWwgGY
EGNwcjPreeR5gdosSSZ51EZoLPFnx+ERWqB0d0q2nrZS1mOBUyZZUsCgjBc79n/c
tU8Fvzays/uGkoQRs+TzDiuelLB4J9zS8Geh5IacWtQC0iLn6kSKLxvnPaPcm+vF
qs3SIOsltcJYg5xNgkRbSjIh11KbEzbZZYlpDKPYYCU62z1BWk27gUR9eBe5B2HH
rCXdSQKfcBGFz3t4BpakCkjAS/nVoLacJX0Efhe10n6IGZLA+gjvCq9i705sH3ig
4mk5vihumzV4eKeC2WLVyVKXJ6lxgA2RSqwFEdySi+a6hq+FUFxit8m1RDHPCZWm
Ybyhy+/5K1z+KLUteh/UWOjnSo33QktdOCOWLnpJxMNyKfWnwMyQOxXvp5wlOH6U
+lyJkyRrlXKKtBtAeLMO86kXVzM//K/qMwKIOXWB/VFLwdWE24zBkbkwmLJSCvX3
8tx22Prk5UzPx7PaOnTllfL0FS5/VVzRK8/UByegDdMVOdHD7CvXOMtoXt2slh9G
9XTENZecncmsG+9e/XR28m9IwbLEXjq35s6wI7zJeR/ntpcxBJVA1MZltVolpMsE
mOBZqjsuemYXYyEMMRClRMwENt6tYMGHjUJRDVJZ9CXpwZRToinPUiSltXNDSa4r
sdgSUBdqR+U1IyAKTEtoRhdMJmJMxmhYvNrkq2JEako622AO14Ja2eLMtrVMYMKq
aiXyQBELL0GV27aUSwpWDDVyGrGfUopgdMNdU0lqXtqMeb8ti5hc1hEX52PoFDFF
JwyzRStEHZGNxZYKh/4nQcjz28JdSiUnrzOIsQcIo9OIaDlllDEocP4MX+uCouMG
8UJRrIXRUMsBlvG3iMNbtkCipf+G+6gmuEv4SKmhjzUBlshsSQyChlk6FiiTkq0J
G8Grw+2re7LbVZ1sB7PNKJtEgyCAI81saufZdbk76vvS0Q7uWUcT2SEL/JvohcDc
LOCp4esp2xAlcgAxoWCAWxEAMca09OaNHHeFnlIcMTrxSYmOVbfEk5zULfMN17ly
vE2tkTOPUCQFFr6aQsQGpImLuGQ4kX96+yas6V2OYJvZyHoIQJUNJJQJyp0pRFOT
VnSNhGb4+PjyvaMgSUUH0AJp1BMJokav+AW+qFghVxUAW/nx2a1jNWkkkkG5yOF7
dB7ee6QdVrC4lUjfCiBnUxsRVz79zhV+FEGoNMuWyTcedM4ODQf7S+DaZRjtvFy0
V82q9xqSPkgtvf920Nz/uq7scmHCFLp8KOjIuh6F0vxIHJJv7BxviNC3+W2yWXg3
I2ZcqoYQHnTEMdKqxzQpckSTYfyYeKSNS8rvuVYHKZLw/cvXQyzHKSgphhG9VAvr
eaf0gEgxQg4X7cfV9k/YcZOXxi1M+tWR69iw2xGudufXp1x3catyCj/QjAUVlAim
y/GHcTkGDgh9a5uA/rgDslTz6R10FOSxpkzTWskniIZPaijGD1TUWlp/2KzUCCgX
Ccqrl5dP4bCEVnnGV2f4OZf9nQa70cOP9YR3XCk2gDHe0W2w5oyD8CPQPK7SgAHn
yDm1CXTuAetGKalGnFYfIS5s9Pwtq0OixwEGhvwCIesswtVCAl6S7QijOKGKKufS
6+zm0ZNFC+pYUelYRF7mBMdY2skxVcI6XFywGKGPhM3AR0ep6koKdhrtzXl1Vc4u
WBzZAPNX+qpfLd2CUWSrCXgjwoEg5UkgubaHWWmzXH7O5nJWRJfgmabZIVYDhbU1
7Y7NRWwhULNQaR33BUaP1vDy+okFKzpxZGmRtBW6BxnMhlvYokNaTYsO9ikRqmd1
JsGqQEUIji0U+dPvpJlrsIiO79fDdHj/2oubUj/58541yTir2Y8gw42KxfNUP8fM
10LPJ/sG0OKAtIwivg/c1XONs0kq/gQ5yUHFnjKB5VGhxN18Nr0WS0uzhFINXiw9
stNgIN6qhGR3CTxiZXERrtpgs4Y1dg4e4zc0r1AYh5FuqX6v3tHUScRNtFkskDrx
KthwdXtVLK6WOGuCb6GIA4MtwuTZabcHnNqy/DAUHJBB+PuAa4/llvZ8WHxT8602
aOU5NhipoVnFaAOEWrY1KAfDYnA+wB4eTAbbik+pUZU+uElvHaZ0YP3xD0x4LG1i
Z4imnu09Ht+ZJJJSsKeabQrODvHI3DxmUJVdakr1rX3f3JCBPMzhLkMjjC8UdWQx
Si5WQawwNCTJlUiG9Wm94FVzGX8pLSiQyrlZxvXvtHvNkEcpqBGrIUGR/dSdXG5N
8GcnKC4i1TFuwwvKNpMEOahjAjrewXKS3C1GxCW30VVDYGEPHqQ5FnGZ1KejJaZy
8SjwugFQ3+FCZj9XP32G1BPIvhAu6I7/RBR57zNWbXu4ya8ifDIOFth7WtydOgRB
pJ1FVh0EOYoghMkVqSzNjS/4Hhc9VzMZzq3KS/r6UJT61l+J3oqRsm26jRR8otIq
v4qzNynnkpI723jXMpivmt4Wpl8FDflSeVeSOwwrMZ83a6WXY+NKvR4+Aw8z5F2F
5P549ZEgD5H+cEU47UOD+Elgf8SlPRF9cFH7Yne1sdrcpcAAq0jf3GxXSWYaQkFh
0xNxRtfnzlcJubvWbUl+mW55AHZKEItU90BKDzqHX8JtuTs0TkhCy9V2jIY5nCqv
Jk6f0Zf2j4qHH/Cvw6Pi8Yfiz6745edtqNzU5MHu6OHuPwKupFH/kpu7XLPeKq8b
sGCEadkf7u0K85LBFt0AQES9kgdPduEVos7uP93V9Myo3yrwPSk8oacH2+bTmje8
Hn/Rs07CIhzfCYNe6IqwpvexBJ/IX5qliGWbimw4patw8efkwmm97LZfmQGxAktj
B0gQN3UwA9aCZKxmsjCS6nu9pG8BqX2H+kyiFLmh+4c7j4f4m14qmjIKnlMSVL8Q
48QQXmq2HYTVg2m3a0WNwTtxznpORpz8c+EwrPhE6XEibsqSp4BhQ2ibiV8XjzAm
GP9hCuYAkZciVYTXIMiENVwnBE58fyrpw/tXSQl7Aawk15zZPSW0oWpauAS2Sbko
qZBwqFum9Yh6hMKIGGdVEQcUB1ogE0iLIOcGtInrquKvYm6B2UwSn7aJxij52sQ9
EHSsNe6m9Ty6HxS/FfnuoAolGS3idBoOHhH5YMVqAiMt51WY9NltvNfolt7Ys1SE
YcvZLuejOauI4Tb6B4edrZ2zCHd9Px7hiYGRiY4Psl4naIuxGlDyTbezAKzoDqvb
pDci19eLILnhZedmtnnUb0lF+UkM/+/Y8EdEFHJe1aiSsFUmhULEcMCNkk81QV9d
+KzG5w5NRF5FARHflzC2UuCyWQKXiXUrA2MhCA2AuIdzpJcL4xcAmERRqAhcGcwY
tDjbYnnSeBn7h+5FuMiQlQYtzOLxHrKFzjRjIuDOkpuPEuYJboVtFSyCJ1XB1ADF
WWQfUCbM/6bON7MjQn+ijtRzax4buqa9hBnqYuWHU9oMB7luBUdDDMgYrX4jwO9p
REZD50EOUrFDeInnvMYBK6fDIpIztY7JAAWC2pPJsmnbkSb8R9qGeMcMmf0Jo4Di
wOWAw2D0lIyyQOXCFtJgYCbNRpC7kdXxak4QAjxR31a3DYMDE2xYcsCclhbJzZ2A
D2+Am58eYyBWj4GKFWVHRicVHoESEup2uh+IqepY8eQVEjeqGJwhbH5jw6Kz8bwF
wiMFuoY6XUYT4EK4IN2gs0jTBHZTiu5zjG+LY4ez8tbUym3edBT/Twi4xMHo3SzU
ix9oWvH+IGPcwxPWrqksJ5wv+BxSfRHWOeCEYikQXwnnt+lboKWzSahwQx+g/Sif
97VeB4LTpBo8S4FkK4mQpgJ37gdtrVvwdUnFEUPeUGmGqJcqEGOsvJPDYpCNQVzW
UGizgKZlpkDGkEAY81Fl0AYvrYE8YmqcRoHUKWXLJLRP2IVcRnJR0lZEViggiFLz
wTCsmI4bUZro4WPPi0hKw3i5ABudQpC4dSJ1fik+H5QVX7EqxrP7xhFFpE4j2tPh
JZIcAnJlKnwnF2N4SZi366FcAxSwujVwan3oInQj0mWlAOcA26ailinvO2wI/eK0
vAajhFKRzKuoOsEdojIzMsZBQWTaAPFHuMm09eRyr2vKV/1Yeea5cxBIYGLX89hL
Ho9tMzhwRf5MqzlKnC6ciicyLAwDLnRIQYlO1Txn4DYURZaOZ5CiAkN0SdlOK+wz
05SFHNuJ7zRaXjpvwmpZTqtRuLfG9+rufHTPuuWddR5d34ZwHdDWc3BgDEm0SDJa
FNaOtTr1hJLb0D9NIJ0a+20JOa6RvsRaE8L8Kciyn1bLZ5qCZLyubGRI98TJIo4u
BxlrdZmEjsTH7DnV6SNXKbpZLzlYwJiYZYKauT86dBBK0qewb5uJRIcmerHQENnZ
GNE2GabX8KJMO3EBDgaP0nR9hxzK26ujzulXeYtHh8mNOH2NAdOgctvoArZUl5sm
juqIGpJSHaSM0vUsAxIcUYDsilHObl4uhUxezX5ZQLPGAZVIuJdEMTFdyWsQ53SL
Xz3k90KSSU68aMnfy0VRFufLurrAVoFxa9Ps2NOOHrjR0KdHEdNTFGeLYVJo0vvV
laQSYW8XXTIegJXgeAfNrdhSl+1j8hK8VXoFB82t/nQJpuspEDPB3EqrjEVRnDju
L0coEKq8e0xcMn09G+omUoe+S0eiJbEtVOW+sjimJzSm98i2rVo3E7FaxfeSp/ll
3S7I/rAeJsyhiGfGXS+bW+NM+t6n2+avU94Uq+wNNxCHshpJJmHS6eI5gWO7kHt1
Ezm4flMnTA0sfOiFPBkXlGd4XrZBlrAXmFS/7cg0q0S+THtJ2GjPdERKAaAczORn
FFkVtVYfVWtyQ6AoFD2eGtCTB86vZ8EEU65zt37PSPvYmm6Hm1ojww0uTNl68Z41
nqOF3WYCyxqdixcWBlTHniMDp28xJa1I1bzpI0o1TcOenHTaMilOM6nMv6/fdXFL
hkKUTJ24yySSetsSfqsPwbW9ayh8U0SL5Bk4kkisY3BW37Uf9rjoDiSJvg79qWx9
IM4Nhx6bChqhDSs9tMpSlpAT2iqaPcNRJigeABc2KOGkjsgO1N5udDUAM9vEsbdm
714s/o7Fck2MxHEvqRvz9m6pJAOUdtKKrtjfve3CQSf4Hmkg8LnvTjbaffbYJhyP
1+Yw9XeR3ORFoXtR9nd63CjMDXi7SCYPuiG9+WIrgC9A+5W/zzM532ZO3qgza0fY
pxdHBB/0WU/6QLIjhAzg/tTNx/fvyizSWJAaVpt3sVwxkHJsH9+9Tx09uIjGTCZI
+kd26XGetMvssH3t0obcse4e5F79gO1i1QFc6Cg5qGEtY5aWqnAXgq0sKo1eKSd7
+wc7Je0HPycxVqJyegPbpM5ETP/xPTlCzT1OcRIwFjpc4v+DaVvP9EWdmZWcWdKA
8rMr23SOBLQ4F9pEUM632m3LU9d0B7XASdrF7IOYQmbmp0IM17PZmpAWVLXhq9vB
pBYFs0UfZRA28WdnNBp9YxWwG57acTomPc4X1OiPoxG+LbIN/z6tmOeoe7nnP/97
U5f+NxriNdcijuwQiGP7itGNlabc5WlwBkstsTLxVYF1nc9DHzUNvOy8l2jvHfLe
O5PQtCj8wNrL7Zz8dFHUiSL4ZHzxV+V7lPY8rzRgmhjnM0oIF8cj+QKQB5MO6qas
WVEQBye186GeCyjrwXIKvzRy7i5qZZcUOknlRYkOPNI8GzGrdC7DS2KORegUibnw
rEj0jsAR6ZFGEoaKNozIiNEETfwZjpaayhleomtErFMnMsuruMrGrZXwDnP+BCd7
xsUlcUMgq5fVaMJRYmL51pOVyC+60VfVHJ7ZcnZJscyrayE0NpZePEkOEDjUKNzX
Em7HUPVd6ZzoBXyxs13tKSulhEpN2gYWXlDYZtfxJUxWRRq1H6arVBDWWgjKR495
r/Kmix4idQiFV8yqy5qJXymHZclhXFhqYPspyP9EpXyxnzQ+zilvOYWQxrheqAxu
BcOBpwTHMc7swMzdAQtlZFvUgtez1DSHJdCYPINGy2DLbFojL4XCGsK3nQoB7i/+
Rix85BAxp9SPJ2+GqqwI9Q57jK1AB7EdDpzSLFXLEbJHAQlUXvckf2EjbCYXzKJ8
LoyibgtHNrh18nh/p9zeSDqYNOVyC+qEhpCaOYhCSsC5r1H8egXMXo6FqCsFYVHS
FTvaPeey6XycL5ubFgpoOEU3LhvPiJcKs5GapQCNaffk71HLcVQDLEurJeLYg3SU
QqrCQsOdfqckingOXZiVi3usC3ly/7ofH8RXKZ+Bc9IMxZEj1aaagysCr7LL2+V4
sxUJAlbRk8RCiCmTrKm7Eiye8qyhOvUY5v5/B5qeuvC0mi2zKV0ZVJV5wkkI2PJD
MJMmI7oSDzIbIRPPbzjxQ95RLHqT2mLEh5RHS1q8TV7jOJf4ppnUCxQsI7Qla7vN
bGucJzUnkTV2q2lld2LDkXyK6VScXaFioUeiSPxu6LLch/Hwy1No1PLz7ESq09Xc
1JYpaSF+ypfg+sdbt7wRoVnUgBffHUMOvP/+PQTkTljO/1V+RIDlY1Dz221MoetB
HIkIUrep9DEqAQ8K17LmmAOSS5cVQhiI2mInIPMxFQkxqinMhkznxgVHFBCkmiDe
WVzT7wZkaYpxgeRY4Npdfqwk11IZe3EzhyuAjok4jGOWX4z8FZyYAL1g5r1No8iQ
npJ3i0YXnpwKatttwVlba4Mn6dnuWGqJimNPNufhipkDWh+ZQxQoviDz63x9ecle
rVNpZqJVgByY5WJ/kRkTPrkIYYWZuuQMo7K4nAVNc8YxdakxkYwhpJowdfSycLkO
50BYSbTQu5N5H3ZuTY0gC6WsMiCk5VJB2364v3O+LVc6590wSHAxqZZi+oel60c3
Lv78w+nxz9TKIenswzRt0/nCOR4JijKpE2aTvJpflZIC2aKZh6EzY0ncZnGR5W5b
LCcojOeZ9UEkAC1FbWAvy+YAJ6YkWVJJO2k/UrguxLDM7IBMOC7ccow/rGwyzqOI
9QZ9CLuCsJ/Dpqb0PJZ5rTk1KRPtNu//MOkseX2TA7+6cnV+Sb411Aex2IPlihxx
SFZJque4v6lgvg9OlfQH9v2snOT4PVId5jNBkf5LGNIj/hBQlhckbKbMSg6QUzfD
lOTCwW3eK6+bYFqNCamQbwq5R1UxQwqG3Cihr5KDPa0m0OxR9krZWYjU+u3EN6+2
QkJvaGdDqmrDVpNdpwXYkbMqLPVaIChetaSF1+2V5rp4+tmSRYF/+Xm1uqmqxPmo
gtTov2xdRPJ3ksOSamiOVLbI6uBJMvTFKltK+Jd7iyNcdSvESJgEOhxWSuyh2FvG
I8BSNstY6cX6o9kyp5SZp23VKefcVV19NFgA52WZuSs0317NEqivrqpKvn/dTKXu
QakeM8LI8P37jXA/vWe1MwMg1DRDoQU3XS4vzuJYMOWcU4HkiOsF4atrrNQ7SR8j
CWnycVl5vzisPFkffm8slIE45jJLx1ZOF6lWaYEtzALvoM9Ez+RRlE7itEVy5ZRi
e+skWlUUWl85tmSLe0jxmF34SWYeV5RtnRzwAJ/3ViZIGpNsXY1+HhWgl9v688nr
F8Rk8jP68ed+noSft6X8U6R7rALlg6WQBzxBfOew7WkYLglE5MYr+Uk8qB6cEgHG
K2TWaHB0hNzCixnxaFOd5KSUw8PWuC2nRFfJGpYQmjJKRxxg9RhnwaHyYiUWu4uq
BSP2kGf7JEk0zR7T2KVZ0z4skcQfxBWkGn9sg0cYqw1ko5pKNhVtSrzdqPINky0O
pEIcSE1k6SmKDaHyk8eiQQhCk00eFLFkxkX2VI4pUuYztPIotPKMXnWb2Tj+fCGD
Z+hvZzd1ybJqyK07rSwxSIllPY28dihUphkMHXmsB56OaWiLnQZUCsWTAaweHHRq
JLyS1HYPyltBeYaOSV84X88+6PEzA9+Efu39P+dcsJYpKdqPkjN0pmENWbjU8wVF
FIR7F0NSRZozuPQOxa2DgsHoxAmHJUdfteOTnDdXh94mrk8NbiR86iwl4KqrL7CG
FB8lUsWTx7tBErSc7ZClkAbTdGbwLdsOeKM3zDi3LAifjBLj/1RcEK5M35eTR+w8
eoW4NmdaKu0eo6dMpdyz43vzKCDsVofHRxNKRqadha5SpIPaxmS7T8DKdQLPpXr5
yXhFlB2O6GZN5nI3iM9lQeQ7NsiKcCXtwRVmFjJJcoagl+uNQK8x0CFVWVD/ke5+
hTx5iDLLtaLGVJ+Sz5zrOyz8VdBFVt2ecew8Ce9bdpJkNUqHUyWc2ckp2SOPI/Gt
2USnq2TtxTvPpUxkSVYuMZCmR8IZpyiCwVZwXh/y0JJJySKqbiU/1zJFXI/s5pi7
fmm6h3RNsjT1diMhYw5CpDd3Zs6O2Z1jCTYyweoiN0onT4xUS7XEeOlsRat022Gv
XABlBUnl0ss2w7rR1FftUW9FhVAJzm6j5z9LALdEiqhpCNnfTVVq9eA11f0kOVkI
QrCSljngogktr4y6QJoBYtONWMffra4K9Pnu/XtJj5W+gs989DNrLrXwOZTEk1hD
m3NSdc5wGZga8TKIUhgk2xPe7aSRiUWZxDt8Ch9VXgb7Yg7l37WPi7O+SE+qRYfD
Z1HWl3GN63lX8sfIeezPkK8ucr24Ogbn7aYgsdfrAGJDQ3vqnBOisDJ0jKpqQbEc
kScnKpVe83GKhuV1IVnvbbiEGqT/VlJBJ2fRH4B6/pEQ/xgqkRu6qmZSuOMIelut
smAPXxsN7UUTBOktJE6jqBQGYtQzd6zPKrwRfSmMLx0epYxyCgHRfA5toOxcpx7x
V1TTZmNXX+BVWTcjxTpohbNk9aVYQW9U8ygzhzEoTq6lkK87DvIrHdhl99Jjxsi+
JMHM61meE4Be4miaVuwpBFSgJCni/eZ09kkRZpgwd0eCFyfTImKdUFzE+Rd9N1Z1
Qs59Wlnv3YWHCN1kDc3pWHXUu9PQEx+mpNosLo4En6kdCjPSGWmSk67HWxR2Gahq
u1mmgd+hqSXoX687Tra4RlRUJHvbDsNgpnjTrKAo7mXQ+t5yQ3EI0L18rSAurmkO
6p5rx8mFSzWMhLJatHT8G9tpo5KqzLgae/6hFUhk/zo/BtGlDeeKPK67O5Pt9GsG
FVhDFRsym20h5Tl+OLHecpGQC0BoUeN7oXEzwZgjOIo30jZFr9KKIwImFCTnTn/M
LuBAE+98F8UqxQSWqzkCphrHSgwBa+viKweGUTA6udbW8kZI5eU45ISkGuHmLWnx
r5opQPUGv9SLgWo3g0v8Fq/niCZ24d/HgVLpCJCnAV+khaZiXopClZ5igyeRg+zm
iCvFKsNIlcxh22Qsbtw96A4e/dWWpPhqeTH5F6N6HIzH48E3YN6V2ALnGrw/Jluk
TZG4AJHIsJOOXXLr5IkzG7E1OL+MLSD2yAMq1JyWnFdD5X10m9OtGXveiqc8telg
ebodKMKBcLTyWBm6JuFsPuLpBPixYpV1TGHMg6ih8peq+L01GYHitFdUyy0OpClA
7vtjNzGskT+JQYaINuq9xw4FBZzdDjBzyZCaaqNQPUnoI18YFPjXiis8X1QUOeD1
eNR9p55xtoAoBjRHY3CDInslfI/s/1hmRc5Tvy6CD8gn3G0Lqa7KIsyOyItcYlRu
qaI8vHccwwNvGqpaWS/I+T5lUtBFzYijb8tle0WS/SQYcX9wNFBxljA5q+LT9Wys
hYzAu1X3ZKuZQN82VFh7F8qcDVTEqOwxpKZLNPTe1Oz7phgqHIKeSACIWbe3jb2L
HTpi7LvSUBF0ou+qhAraApUHcP2YlozRxV0CSDh5Z7sdo8bJ7Lou0QbwvVIzH0ZQ
dVFSCjifskyiaU6w13/CHbTLe13cCvKQewG1wt5uGbFT80QdFJfrMNooSGEipBa+
RMkRbjHsTlpN2JBcK83nsem5MGcNl5fyLcvFiJ56L7q29/Ay3rI/znPdog94k6ZI
S4T9pEN52fd0PhwNJotz3vSoromTvXaOqqEpbLLMmIpllQOEWPTYYYer9dTvKEtq
ldJDuHXyeNdmIqxuckNsfne01uAn9LOmLpJ91ojwudvslAQMyFW54mMdpLrLhlrp
zR4mNPawv7EuEKxLo8Axi3bHqxiX5nQ/3n7l5Ip338EuW7nHc/VHDPG+7LDSHWg6
pwrxOAkpXmOwMTgXB3dC+bG+FEsnsWsVDYBLY8MAGNtEixopZurCz3Q4VEulcvRw
HP3QTjE0U4bzGYtWxnTZ4HJj3IPWIIWQ4DHNcPHnI+Pw4/juvK3m7br1pzWaNbrH
2etPOXZ90GdJ9DoJfsZMGNsmAN5o2/W1ehn9OXVL5Nw4JVA+mpmrmaE/iZyT00gq
M/ZaS5UWbDXYo2IdyB3vZhHNWo0/e+6iEcnJB1o270+nGrbVpyA4Ub2MWKHq3uk4
uIfkZSTFWV4iGYmkGJ+vVfwcGAlYv4NdXGWS1AYjLpVzYluwreScMmqcT527g2/q
3L4vo89uqUkSVatTVyruEVzzlgm0isNsM7koWcFJJChcE6kLXTcMJZjL4b0YSmBM
Ak2pMTDUnOfYKJK0Q4e26nElgf1VsyJVCTdq/Ys45llOIBn8EkQgSuGpCDodoE5X
spSALfElEjEmgkik9/GVSIKI/RrgZIuUbJ0UgZ4IhW30WOXgI3vOhvXYuXjnHnJ9
EHMNv1H+0NClktHfDlgEkwYAd1Zf1TEJ9ywnhi9455gkg1aDC2/7GiGhblwmBHCp
HiL1Xcd9co8e2fvmnCkSPj0mKIgRqM2DVAmic4zZUUeYJAD6hghfzfvzGOpNTQUf
VaWz2/G2qUhq4zsY5l5Ugggt6Wlmwwaej5rzj8idz2U7HRSKF8WCHA0zsyeO7oME
1lO0JXi1JHtObXuOMJhekVXkpuBp7GJ2WOYun8CxN0Pax5XpVPUmHQvKAJ+Am4b9
Ghf5rJqn5BYebe511k+cci4/VmBuulN1WlIo3CQfstUDzPkAU19iK4XDQ5ZPebRf
kIv1CjPxkZU2V8soSFLJkYkVxUJI8LnDWX5kXtiYjXmUAZtLobMCag8yVIIHfHwc
inZLyUijjyV7o0Z7B/wGh81OG3AeBo2URRrNZRiJACgYf3Ys5ZZvypvkua2yp5cK
/SQPbecICiurCpRWWgRA6/kd/d8VXFYaPJXKARVBgxXxNo4TKK7m8IlROcSwBl2L
Vv3Qs0fLTnM+l0Fa0AR0Mn1AmJSPc+NoJIZw54LpgH/6LsjPoxSkzPVrLE9IPRcZ
ecGguY2gpxE9IF6cOYxj3vEB+jKI3Rzc1c8BQ/s2Cyquyb9ivDj08aiZLEa7uwP0
45zcHOg7oDujOAGSUPizNMRyX85+Dpie1REE8dxR5LUZVuefaTwYRQqoF19Q8n2r
TD1SB4asQoPrKKUR9d/yhu+BjR8im9awFq9rctQa9VlrS0q5IkFjX64578MhJwFi
MJyqyvavMJS7lZLexPUKLwjLRV+4Y6X2DsRpuKpXs8qw42MGhOTM0ac9R5Y/0KpW
v39pGgcnOWQYZoeVgO7tP3B43y11RWc2HuWI1YWeUIIA/2koIS7awdKNmMovoNzY
YSKV1a+mvOdHCkgrvxdSWHEfqZSiCX0BZhfLsCfdQ4dgIsh/aDD2ynTT943sYyEW
CKr6US+ODvTYMJVMJaNUFD3uGKVnOGMnmRI04fpGpl9WqaoRR8vVk+/HYwn0ufM6
LBW/kd29CTXGa3aIcEkorynZ9Jx0pRllddSenz60G/cs0bPl8Asaf7KjqtZcFch/
E3wZM3rRNRgltxxrG5n1GqOyvLONSUxC3eI3WgGQjUU0R3oS/qWhJ0aAvopcbHuR
UxJTQKL4BPscVh5uJIyIjGEOy6KmVSiuwusH7TooOGENBm44V7ViZHJJX2XsBPCz
AvEDHm1qJswnjI55cyv5dF3s244W2DZSoNuMnJCwzitOSAqBtMWgLpS8wl93lVga
Tbgk7xawE3llhQqE4f8jh9ftTUmWaL3Kk6QwvfAALIicxmgm4qrwXcVL43aA0x0i
OyJRvMq5e0OlASzmXeboilKBoO8PNVLuq2yyE2yuTpN60ZbFt5/JHoSiYPFOPo4u
tbpD18HZxt62B/Zr7iBhNpftFLctS+40tqg0IerJ+OE29uS0mszgMZ3fOhOD1BQu
YuYFl6xdzlkCQdLE8wAbrSZ32YLXGMw2ej/0XEpuHpFF4I12qf+SznBIUBwnajyD
rj2ytcdkitYnx0YvEMD0KMnqfNl8UJwUYQJMGiokeErpLEGrm64nKDNfwslrp4Ik
tKaNcfoFpCjwawnXbcQuIPJTLttYbZuCYNl1HTkrGT3DSES49mcsmfcWpbZwOds8
kX2ivQ227CfWggg6mYC61adlNx02wfHL0bvjs1NPK0oPfnW1Wi2OdnZubm7GSg25
E559oQin46vV9ewbpAm1cgU1GauFngjkS87BP8CYpxnYupdLjuKLADqVw5AdyjJt
f12j/ohKcQifS1KJTr8T6FhG4ZDsGBinMUMm8dAB6zUCcXMO48nrF+MY/ohgcymR
jIonSjldrjQlh+tE1gQeKhU5ovcQcnHO+MGFeuKFt9RnIi5mLkEKQ0LxCNuO0Ack
muGwYzna4sBTsRti1g5DCmPcLGakQgtzwq3eahH2TZO/iFFQ7Hphz5v55IjHUItQ
bbbSK6FuZYZdPUDKHxPJGXE5ju5PAfxi5DiJToC8h2pJuhDFvnrS6C0JhF0/iDXa
hc234NbJEwrk+YpkN00AlK2qeC/d7fvRABSz6UUfWVtZlzia6fqjQSpWCeCCcsuY
ZVmxxKVUp+d92xoz9e+8I1Hko4HWnPBGC+/I85Bg5Z4nQNIc0LECiL3HEd6guVDI
UlG3IiiwNcPAwBHEWuRPjnGlyFqocpgrP7VRGvUfYH+7YMDUQ5Cx3eo1Qq+q2xEf
QEEzjsc1Jm2693LwvV1Q4+tFnssWgc4ntSEOIYhDOZdpfZoJTVcQmLHeYLX2gFA+
c1455xeXTBGkRHJusvPfJqwO9JNGZMJySdZtyi+pgffovuNSTWvGmxHeKGaFKqOP
pExO9Uiei8hEI/QN33NN//HcSLL/kAkMT4ZhkWWkbeGfaEQS1qPpQ+zU/y423e4u
21mpryjaHB3GMH5O38iPG03L1sn+ru52cq3o3+U4kmv6NubUmFPCFVVx7JLfn9C/
EewJw0KHhdFdc5v654qfvkN9eaImjg9xftQt3qU/PzD4yiBpMfcxPZ1GtI8YTQ/U
WObeVAMYyrK1mZJPyuJC8eUj/Eu1bBwkXdQCzimLSRJdmFLD8TFz9XQsmDbnih9f
GhFKZQ2pv5QAgETYWKfcXNiSCFduAlPmpwE6MEmqufqoiA/1ubi4jt+fMCG75bCy
dnzehPt5uQBReSzRzh2PKZMQVSMePHr0WKoR+bcnP0NySdw03AXbPLVkYJbLOJtu
uSTqth8zmB8qYq4jJO4sb5grmzmzXw+fCHlJ3MQIA/j8l2gKWfbncU+M3fwXRIGl
2UsC0pM4aZSnAyM0pJFoRzf5sDmfaagpDpEcV8lfTPGaQH17KzUd8UBdk6IcRnQJ
xuOdBYFZCP43ZQVw7YyB07uGeWxRMBElhFiujxJQ3Q3OpSIoTLdtv81lW51ML27z
MYO8s6UR5/58Vk4+AGCZwNGnWksVk3G1ipZ+9OHWhIAZAJSMB4M3W9dhauvfmyr4
BUhp6CfzCGBn4kMqGHxvhQ+1BmWsqsChpgft6KVhc50KNtfWy+Z0284uI28RZHTY
BTNVOHAHQyN6KhrRqUG86KMegjmtB04kusSlnibFMS0KE00jYA52VgohQ5dIUIeW
8SfjydV3/Tn8CegbDyneDjlDD71UA/PsdlF58vitl2cvt80GTuYXSsTDQw7bm0I7
9PnmmxJ07LggT2fYE6V0arNldHVTuWwl5pzBoxldmQNlvO8cmhju2cto18d0/3Qh
Ym24TOtEcCo5hcnFhvH0htpxO4LfUhrt62o+p8oxamZASZv0Ah1ssxyIgS/2/XJ1
Ge37/+cC392hP+x8up7th+ZH+OYOLgjCeJ2G0/8RMUts0jRV9IJLsLxXmeYhzrSY
D/vhRs+rHjbbDs7uTDRw81iqGbHKixPZH6g5PnkGJSM6pkpwYneEa4Krw+Y1O7A3
OEvo5zc6TJAK2M26tt3K19i6rbzDi1LaSc+Av0+MKQfLReyyU/TRLj+NnjGtZ3hl
Agj4fTVf1h+KN9XHD81NtfrlD0U9xRCRFDYx1FbNiy62ZHAY2Ey/Np401zvo3Q5/
f2fbaScG54EOsdKq+d3k7Z42CwsNkRb9LmhkyTWmQSQpwAjrJTATKR2AKd/6LuY1
70YqW60u0yaHAiIZQf3nlSGeGryZ8bObGheBBj0huyydJr+Z3FBJEhXk4wsOviIf
dz7tJrxavodm1XqfgCkC7mua+IK6AJlrl02Y3LiaP6vNUB3aI8ufPQTufcVpMTIH
sf7npjSGwPAiYqRYFfvCTleUl01s8+kjV+ohMwBhoWcVUSSut7cybKt60nbgL7WC
NvW5ohlNonJ5BKaG3tNFRncPFWXEK6xHptNDjzJ4KPpJJJUSV6ojIdpozC284e5a
BKux6rHC9hIrzOP73WMM9b4JVwpxEqK4Ftd33KHeNdh7HlZmoFE7tGMRjhM/ONJG
RrzNSQvnnHQwp6l7XXinNztDGOhLcC3MHR1M9qC3hUvkYv3LL7dF9AEIENaDKNum
xAjTLNhPdfiEVB+qHgwvvq5/qSSnwPAU2IwYanlfmrPix87+nsS0wDS6P6mipz4m
5iZn1DaeD61TYSwdyAIKFYR1QMK9ZGlQv5+GfgMRySfk0UZNpBhfI797OS0FyWqO
iNQymMyKb8iKUCEqSLwQLpI6UGohZjQP4TciVvE58IHTmU7nC6Sp0vqDKOxbUU8O
CsDeRlW6B3ubFYOYUOhwcp0KTh1WgF5LYI2OdvJsBNEkZOhtBh9puRhCuGa/sy9e
cECkFjBz6v8g6oH1RLZATSFXippM1VHC+oSej+43DNS/dPmesXontTcSYi3IvGuY
8NflcrUzvZ2X18FEuUkriKUAum/+8Amjiv+Gnz9u/vWP1NB/2gTlkjH7+U/bEDvT
MAn/SX97+y3/+557JOtriBMOFJjya2KP3M+B+/Uh92hDQ1ET7m3oYfx1b1cbcrlQ
aWOc59bXEH3Z/m09ctv37smOA9uNDe093L3PydYDnG1XK7vBAYzImVSDytGzDKsb
cpIB9JBzP63bD63Qs4neW9JfKCYbTjaloBuOo6bZw5M/K+fQiaQxKtkE66zCaLeL
MkvQQAmE5LSju4hNSG5HQQH4kevzIOjfoD4d6CIkwTh5LRQsxJSYxA+SF7gzqhQn
OTDinkpCoVDmI8tyko+X15aKjowI+iqDUqG4QCMOeF+ZbzzR5eRK7cLoD6G0foEL
Exs4TM9NPeVAQELmk+HD3/oIDnGfrVYzhHDmMARWNBDpCyFFEpVC+y98pxMKO8op
zKKEEKf0reKv6zCIYku4VDxPIrKYt3ER1RNmdGCXOp0sde9zPhXdGnlQQY9l6okW
dh/kD80jVOFPyBpwsYS9/YdaXgIKp3kTP8W3JO+CeJtWqV0aE4MkNZw+H3juAdf/
Qazb8s3cm1b6BXhZ+so7Dh56GKpNE5ZNlk5Q25khKL+9k4Q5n2w7v0QH942Tsy/y
NeXKU1BiOnSgTs2KGV/s785buVGQAgsgNEx4oOhYarDFQKsSj5vZvKwk0EoT99iX
Yv5/PXFu1jBh8VjRAbxzwgThTgC36tW69NpvUhgGXazdyKmFYnZNopOoMv9bp0Fn
kL4XOkmn85EVJ6eNOXqfyzCRV1U5NXxqn2mXSoXF2rNHCdrEHIV62cH1m2EgmNix
4NRvtgSeeV8MJaiZN3VbGQ5jdwMOwg5wS+FRNQbuxD2xjfMy8u8kneAmFRJXcO4d
W7WU/QjpB3018ucy9sL6uoM+sF6QwNdX0F523EEs/sTXp8RBT8ee9y8rV2Qw/4lg
p/VCcypNoEuvU6W+F6nP55Nsnagcp1cu1kuiGrWCd64IxuAVPzrdTVSlRcmWt+nW
7WH0Sh2hsauxh5ugyhS/WnNeODuG+phmIiJnTrjZsqRLBbrIghWHLMOEg+ljkqon
96BGmxTz02B0trzDtKUqHoLua8REZUFTX85pIrZplh95nWJJGCQScaD55l7WtCxT
yR5BObOkAG8MM4hElRxCLhQnRQSRMV9tuxDwFnKWxkyNmJwYliGYYZdgNuUcHjgU
qy5wI5V2SNnTx87XHQLKnF1IH6NJS4glERvmznEpSu5+FP7piUiIHvxuVK4AcXUn
WU6RFHO8hzV5YhpMkvHUuoLfoSAkDroJRO6mmDc3A8qdW0kKl7pFwjueal1nCj7b
R5o5KIXCT2s6Oa2IqEsUCYg5jvRdrMu6t3G9ft98Obph5QFNwun9YKInUgMriOW0
J+E5q8C0zTlnYT8tLQTCDwaRKbGD6FSAWjBrmg+Mm15fxCSsJ/v+bKySjt+fovcF
SFgWqaf+vHJOQvLBNJwiMaus+EVcaoXUieI64Giu5AMVnOKVFUvKOaTsTOboFhYv
ksofm3rK1wocVQabxVyuwiGbBjcBnpssv1A16zU3K7OnrLRGfDhxnGMzMLil9QLZ
EMNsHRWkPmYidABNqB15Hd7PLdH+OHCu/6wU1AGbccgQJmOvlx8UAmJMStJqUjN4
pjceZWnz8tqZ0Z1vqAVMUK7k5rHTsqld8lHoP+LNdM/voS4uF009x1U0sV+pP02m
LyLT+inS+4sU4pmQXESBqQUwtbMS2HvcX3JgLH+n1kRapRUkhqAOZJyhUnlhkUCL
wsVHkgj44XYfMC+3Ik1YxozupJgYx8qt8o/njoGtk6dPtrWuyah3OM8d1/5584ks
VBKGMXWQHJaSsVteA7GhsVQ7kY9BMfVHpqGSS23QckI9fvSNy8NJ0nAKqiHhNHhx
toTzMysnqgJaFkiYcAEh4KVvI8iStCPOBfm2Jg4oB1IHwywa59CZNHJGThLFMEyK
9Lm8JBw/eUXiNTA9tChsr6Uf0h1XE/ydHmhRlqEbD6VyH1/Uaaom66UwfkzCSWpd
hBgxCnMtAZYPCab8+02a0CWw31oNpuRtGsNIsP9sUd5LoVy665EiF3k3jCdUVujx
nrvfpCHvxEJK9vrykphigl1DTTPsIukC7hXRkarl4X+OUE4/6+7038hj1kEsU6ib
0amtkBZ3QjoiLd3mUspgllGsg0PaF+HCY6e8bg2rpyNRSPZkmADlbzFUF8Z9I2ZA
OQG8HCpri8IXX8RqxdVtOOZjgY5IyM7afhE07FH+xIZhuBj2Xu0+TWDBxf+4oU1A
41LoB1gSPbILcp4LqtyjThi4UgjA7G5n5jXn/LfmqrSKhorpuGHnrWUFlEvVuJ5P
9kzLjPZzBikm8JSUuvEkURLj7WICtTtAwWuPRAbnlswuYxhaURyJihTRd0VkWbA7
ju5Pn7tvdhP+U5+nVLykID6Lt1WYyLiHsm++++Ne9lU9naT660O6OdpY92xYbEmq
ts8wRzmFgRfRzY4wds2Zur4ZFgGMcP2OiOblvS7nItKHyTw9i1CqsRmtLkWSLQ6V
1zDMzwePyKwG1+wlqbzSilWCS/23n7DEDW055Bc9yXXi1ooQddrC/NbNMvJnriuG
sgiP77Pm9WBvV5Io3bmxE5CfJzH9rXgmK/L1aFDODGYDjPnBHCVCVxg5YuxEgCQi
h+xT+IyHZg62Sa7ZgXArnDoVi1rJicyNT6K5XCrzG1sCc3jAkJ4Ymos0CV0NVc32
dpOAFNg1xe9QM6KvUpQFXz7lWrzFaIyJGBTNXOPJCoiUAuxkS5bKUZRKGIkldzxy
yJcrr70+UUH6iiQWNJuMSoFtPYbgLSYzJIQIh9wES97Wl/NKWaMos2dYvP/u/Uj+
jNcbM2JkEIK+ws2BDFF8Zv4CSNIRkEJRlR+ksFOCdrIqPFhMiuRh7O0aVNXGC8Yh
VaUM35XNhcBgiLfL01kfPO0twTcbCv4kYngK2vdTJVHSgrW9A8Kcd65X8R0o0XQ+
NHMWnGkSo3cb2lrbqVIMM05G1KbCxlhOCfv1co3papoPNQpyVyjkZU99spWocdvx
ZyjUCLrX2jGQ+bKYjnUrorxqpW6YCgOkopTfrdV65q4EzTCZMtYX9G1EoUqaFHyO
1C1L8lhpIaBoN5EhSbLElOLDJqJLg4oN744pNiMfPMdJMOcFk/bDDTupCPUeBqxR
c0NsuOAf6xYa/Z1P4w7Jgx6dGRUIGdLe7HYMbxFl0XkEs7q1VTADg1oTTi6ZNav1
5IMtqgRvqck93ZS0QxTlei0o4TEBNj0ZFN9Yt31I8QlMPCVCOUjRzpJ0kolTmSMy
nYvk5BrFTGCSGLsmw7bY9qC1SAsIQxTT/J2LwMeLx2S8v9xjjEY8JoN4+2nTA/Zu
usUPqzlZ1udV5JTY25W6nnvS/va/BFmIgqI7b4N3BGebUYjYc2b4JEEAVF+iou/S
bZ4U5Wa8X7IaxEBDnjcndJkxLKwMeduCKrOXzjd6/9z1tXO9qvPNcmwTt1IMq0id
1dxpCMnC0jBIw2E/UKP6aph0JhpXN1lUVOSA0LefpV9CPeVQtzOrOepmtEfTwy9/
7H1PujDyynBC4IbivwTJSxaYmq1LIxw2sqxwSuWMNl6BQOJUB5IoXnYKn5OFz5Kp
YzoSnuY08S6BlfkzuhSkzuz2Z2pkI8YMv5mzfcO74a+U1/OrvNeZw4ekoAVxXc4Z
q55in9pVqZqWBD4vL+UwtPpCmgq/WZzvW1SqSMZQAnqAbwm+9JKSP0kZylwe24xC
cLCcahu3aY28embaPLiqW0HCqnuowZCQSqrxJ391V9oqfib7/XAXOjhTNLBUwKKx
N88Oe188MyFLdX9Ogso9IVkBiBd8jtMmm3DxwGO3zy/hCUrAGKQ4IQ0guDY9Zq+I
DJqs/ThZSRTaT4fEBtvoO0/uijbz+WMhscM3BOs03kW5IWns2ptLxGkOy4YSNVgh
707rNsk2JEqENdtT04i8f3gHbmHlhlDvJeeqmZM5w2xlFU3rxv8sNcc/Z8KS9UAE
YWIMR9lzLQCOQifrK+O5axZsBEVwFEEdqAKHZSdhwWz3nN9mPu5Due39X4MgvLiA
goP4Yizr5e2sXUo2a7zMXex87+G4d4fcHZaFxoipm4EOWWrTRE0EON/VrVsxPuFx
wXBFdIICRG6JaLLNIJcYnRw+cftA3mdZyCnO1+oeGRb2vwDDQqpYysVQXVxwSC1T
caH2cT5EXKVBN6L8q+FkppOyzGwkXsCdeF4CMkayUQZQN97GpsUtaZvlgC7VvQN1
weiTvX6Y7ENYK23v1pxPTV+DtGPrqGMAOHyODZx/YaDCXfgcClh2bVsZwjASuIiu
nuxxyoOitgzJ2fcCoonR5LJvNoqbZlVlcuQbAQ3/C3yx6gvM4WJw68pCGFi84S4k
+6bt+vsMfM27lg4Fv3aParc6iuZZj2aTAM1reYKjvBK1p+OZIZeHgHt1FTgAZzLr
mrYV96JBNKepSkm5QHFVX15BfWbOn5VqtqUp23BnQJGPvlJdf4MbstEZ01DU1mO9
hhAkZKBMCwSkUNfP9Rc6K/Zmp0cm06rlf0DET3ZMGcz+Y2RJz03XcrCpK1ezt5bA
1oYD4cWGGAKNSxjk5dg6eRTlgH9RVP2CWrmoVnIphefpOBkJqoZgy7ZtJjUj50tC
Xl7gkTmbZrQzRUvsqPkmBGbNpQJMgVgZosrC4x7XPidE7LHA1PzadjRBOCs6Wo/J
RfniCUAxvVVR7Qh645llIxjebQJvi3SppSBpKC80VARzWLFVaUxeq94liOerBluU
WhMxYJN6PBK9jSwLwQv5HVvR7ywI4lFzMdITWnIlJJuf/v0GcRc2i2RG71Gh5bfg
Ws2ElNi35+vLy9suIYbhfa3noBgpJvUynMkWdIetT4dLZU+XDDT8ZcM5cRTSlmWh
VXoU5TsnjpCmsY4PUkCogdDKRpY4dg57QRzELrngC0Jhwz5FOgkRSy1XQNip1Egy
UQ35U5NWyufHdZ4hsIXSdFJKONCUr8GEiFTIRAwzAf+NZE0YVWl8i5x7fjan7/ag
VqaYRQrsVCVzwG6OoEimyrnjhp07XCvHWI5SKwLbqtNHd7eoDkkajQA2q6tASJ7w
xP3pe1+AJiHL2Yt++jC9XYWe69+m9SpF24IgpDyTVtwzAz4ItistfvxwNwIICKqK
I3fWGA2EUMKtwY0r6H7MHZGc4DTJPYvAcJmHh4YW7L7+iBe944IDXD0ZsDeEtAs+
bxrNXhxNZ09ACPAmZlZs8XvicoYrpIesnOXoRMFCG85GacnGIyQoyiEn+8SFy8lT
9ihH4fMrR15bNr30U5NsQU+bE5bRrVRHbXG1PDhMlZ/LH53kMN06yBEKOUFZnEen
5pRgvpgE7zvT2pxkFu0HScVpqVYDYGFKrZJ7IMtWcIkRrkfI9avCu685me/hQRIn
khRv9eCQLSf+K9n9KDi5jeVWPL2kLeCqoHbCxYDuooYtJv9A5zChZJn7SG4hfrVl
RB7mFF+5QAaxDC1CE0tyI4Aa4oPJVcP5F+S55drrWApjF8yVZ/jWjWdF54pW42G4
yBXGUG+S6MghbsV64qhgpsFrOQd2M6picU/OfMNAA+Poo3aXuWNjRxEOTCW7O3gE
ZWK10GWEg6HViMur3OmyrAirJCo6m+pcZogsoW2XWnJd/qVBrldz4RffgfWcLUGM
An6vJmHShlKc6AhSnEj5S64xOod6zoBMLk4MI2kJPUxqi0hVIZSsV5Bidtd1Ip8i
ZJA0UaXP9lPUS+A8gcoM50VYPMFMW3ysl6IbM+qcQ/9x41YwAaDa0iVMLAaTqzm7
lIYZJZzy/2o8kD1c0tWhoel44r/Y47S7oIGoZkRTMBVznFECrurzmte3KG8+3NBu
XzmApYJJTsPwSh+7PLvqTp3eQmW8FwykmJ8lBZ9qDbaCZoa7VMkWJBudUisUYSNB
funyEkbg84g+IC7swXkzvR2Y/xxv1ioIRoFxBJIxpV60Rk1FoyJPeN4RTh2gJviK
ZmTgk4PS5jk9gegTYMogoC2KnkgUsXHXpVIisbFEUUggw9Luw6BqkP3+ePKGVXcx
RGoOWApZ4fFcspsFPrbNKjGj8nhRkfOTQ0v21nFSfhVeNcJj2D2CUMeIzt6aDtNM
2PkcCWBgZCa6E9rk78/O3lNbbRrFKbZ4khHj4mCuvUyv9WVlyXAbc18xN5z+anUO
kRoBzBVxqzH7IcXBg9k4dV2G6PS9fnv89hUlNHIsSXnv+JZwpcNl2Be3v6i6/BwB
4tQA7AkRgyK4RVnRH9ose1EYjSsQFyb1VVBrgogIB+Ix6M0sjybzADx8Ah7Se1OZ
vwCfRp/SKNCwnCKShHNpTE9NTUw1mejXyJOpwi0BDIqkdiLNCDARRqbtritqTB1D
cDdV506wxbQwdvu5h1Nsw4TfVR0j8WYeZmp3kuMzNJepIBULCp2pedtwWd2amp5c
BiaVlwDSpIy9sJ2hF7uZdV2NkxHHKQjsUUtNYtGUMAyoOoDkalHa1uBsAFZCIsRR
xhmEUQan8QMb94DHNXgeP3OZEylu+ECC2aej0TdnR25ZtYQDH341GoUPS4LRm80q
6l6sfPSJSb6pUrJy2krtT/s2n2xu1IwMzcwTDfyB+I6E31rvFseunjQJ1V+L92Kb
bGJUs5kzvvMd4xO/3EJcQ2hruESWZfrbZ8sZUn5Ir0xytjvxvlP4VEH3p+h0sF1+
YZSYFAZawIlEhQZPRM9jGvfBizh7masxu6nLMNZY/lWcYx6L3BPn9oXwFkEtnGsf
YXTzVRzX5prJBktykdRBVwb4Br3nSQbtlTP/pSgiKN5YiZ3E52fZnFO4LYLoM7Eb
M8xKcmMYqihtsTiCJ4IgVMmqarK6cPXYLZtZQkGrvMritRb1xWuP8KMxjoOcBLKc
q/NEcrSOvCa8fbq2Og3dl6QxWY5gzLXw1diGe3KhlVZeB4X+IEUOK2Pe8SawR2zS
EC3crIT1ae+BeqV1HuX0Y/gmZJDNrtNFl5VkwlxcjFAuR4YOqokSvP1pY94FMdmp
Ds1nTj/gOy1zSLIeyUEIqi9p5vMqrcoSWJF4ixWWzsWZqVaew037y/GG0bbQZv2R
1AADqibqRNJm7hH+bf8LMCgsGk4RtREciXRpb1sm26EEkQsCiJRqn5b4i3ymfLTC
Vsty3mo3WGiNkr/pBhDWFYfowmfHzyN3TaxjCkOF4zf5EA7SjLDukX1B29Q1L+2w
e8ZT1qSV7eE9H6s5YK6OODeEvAaV0CmRLOw5OBacspqdAeSTNbYSIrn+bZ/qKbbp
JTcXpzjd8yQ0Ee0ohSrF3ZYs5nXWdcsmZIHRwbhQaDFCXQ/20vnMaCdMrYpln1mf
JJytRS0SRxo8D3+8bdahu/KPm9KTUElDDq0znhj0nconuDR1WhzsSgYWwCrpZgkN
LpXoqtDcrn8ZiMcr3rldIeFoaHPCL0tIlGpb4as5Kt4189GEkHtJBbNLn1Exm+tF
zv0hg1yIYVxEyBXH7sCvllfw+0RoucQMJpVLByDZPBtSoXSlCT0/CYyTJERak8T9
DQVmbhEdh8Zpbfb1QG02K/TqxwEIP1saJJXwxKaCV0rcqWYXHVdBrGPtFgLie64c
UO5MS+q2gwxPAxFtHBU/JUeMbn3K9qTZuvW+UAWF4P5KF5IcLDiyXIkp1cMJGqpd
mMyabhSzVTmlu4ueXE0k+3FR/nUdREYbFvp1TVgM0f9BOn1HIoT/v1yj8ocADuw2
a2G1SvRb8wLqOcvVMD7813rfun3SrYEXZGISwOp98wL+er3SBAS1W+j8XTIxFZ/9
KOxpeWZlfY3KtulU6qJhPreauLeMBUxzApWupu5Z0mgXJDnb7d8smJNZS8UyC+Qo
xJxYfrBH+PnHGaE0hPMDC0ZKRgIzNFbtpihpKzJ9yUiwkk/BLy6XDGZXMTHfZA3w
DkU7lyRnhiap2HU6KIOhNTgfoAJhMBmIY2o5Q2R6xVX/7hYXdg0KuiR1a0GVJZe0
fIcVMMLO3sSO4/mssVZE6lE635ycrfvTXb4A5L8WuWn6C6ZLTUD5K3F3O01bPbGR
M9bkka8QPHn0RLkU1PDkEl9+B/mnIkyL4DZ706kw2jkRjtG/FoGcBGYYTWrilNKy
dJm+qUv8XThFlRFczxPRzYqXjwsSULbaDdBbhWnXVSsKzI9zAKyEjleiP3EtbLKV
KMu4u+0cXSmi4/xE5bdzy949YVqMzFBcV1U7+hDMKZC2OM91KiSniWNeiJCZCITf
ANPlVh2q3Bs4+h37iBLLlPkRieTyWMJOJGBM80Mpg+s5ik/UTkJWmdZukh98WV4i
ARWRNzZOJJPklj0p/rUD/16jdOetyotCoG0cqAF/81FxLLV8BIE4yWUU9b5CquJf
WLuHv1/lOfRyBBi6iX40naBmUecICFImoBb3BpZey62hH/DJuGgmcKOSjy3uL49h
kLm26B2JUKf2XERKHIkrMuJLu26nEscPl/pFhcZIt8LFffgwdGtWUTiwmBKkF3nV
6znlGilfZ2OXxDX56QxwBz563th+deR2Iny891CmMceyDqdyEJWYmqfciZkfODfR
7EIeFiW/CBr0tJurIYNGnbIQ5YgepzOQeU3bdBWSScOs7O3uptMiDdnkjInrqgTM
QdgcUDGbi17RKemVxv4qW0oD1zJZk+0u6zgp7HMKuo0k1d7tGcm8b5vFFWWHTZxl
Yy9O0thyCbl0lsG2pG6xOq5DJeczoKxnqppn8c50EhNiENX1YdzV7NxFamSNgL5r
mrOJnN1jZeGRC6LjrGL9K6VdvwZeiGdbAN0EeRC1Bi459BG8OU3ijF5iJTCJnGIZ
yzOThmm2tzwdXfkutOTTAB/YrhYtgjNdYMjXyM3cI/6ds4qzYejxb5lFirSgPJv2
kqLbHyHFg95RghbbgK5ior8IdsS+Vdyxj9d48hwh44yAI1ZX1za4FXdGeTUMER4O
IUPOSEB6W8l+dTltKimRcSDYLLLqvf0QShtePja9ddi2yekK1dJJ4zrh85FMgmoM
Lc5oWAuu+qdCg0UkiEzmh++K9AJl34QGf3K/R+LHvBJuDU6Q4ToKtKtVN8INlmVa
8kV1f4rkF+BAyCgYGc9EDR0Wz4AiMszjZHovNMsc6ACa2AH7u9W4wd5TLiNh3J0X
npuZTZCT6rohCjKm32jTKi93Z/qkewlhBeVg/GFcMq2zVr6QEIzc7cy+bXvMe8Wj
CGDdJbz5gUhL7xWfGidW6zmxFIKbs+OCTXO9WHnIxfVCyQ4jCR/Nb7CYO7AAhsgR
Xkt4F8ocuaDVo8w8OESMYdxngV82zXSkUJdCG2lJ4T48HVEYlJsrkcWeHCJsCsq9
Zfnm0Mb1Gjp5+lgz5DrynEiEAVWgJdgWyF6oIW5BeZwWK3f1E0Lq66yZfIjOeV9w
bVg2DqU/bDgg5pXRfA0nGkMWABoJ+3BIlgkMengQLYg0La+JBbRvKiGkbD5xW/VP
atRtWaVfxftR3vbRCKbA4qL7m/nv6L19LNagV+0FPBqcl1NDWJdxkU8jbCra9dH+
kLgDAsuy+8OZ0v5BGXZpTil8uKTdAYzqFCy9zg+ObHexcVZhGMJPhDS1hD5Ca1rC
w1jfJkZz6fBVvC9g3Wwrv7XLQ3KUh975umwu1xZVvHtuU5ecAYrdqn8NaZ2KXAhl
XkzbD1LDSK2OjK+baDFbpcUUCApHHu5AEKtyjtSZlvMOq0uMZ97MR+c1tEPec6er
ZdjQlctczCE3JLrqMXSmwmDrkN7jOio7o1NmsgYNoFgMBjogOMCWfkuFCXxZbnPu
Ckkovh0WSyA5oBeLWXMbnQdiiLY+udKQnzgtcjJrMt9uMPRJ3gonqsGfoSBIiFSF
Sp2lNDYv3w1cHUDW962AXWIHaSI4NUNyk+zSEoZnUjSpZdYiy7CvmRqKgjgwqPlo
pXKp2BK5pGAzPAvXlqFqYyazap8whY6fv3vedyW+C7NMz1AN8gvA0tE4pZJhg3dO
7aqaAhIifOs2RaKjlBauQFb/GaNCRLjdRHyp1UgX4tWSXH7ek0fNDE7m8/mACz3J
d5iUeR5uJ9136nT0uSnhEGkWfe5GahrOj4xqj/EgNdmEnjBd3JVEQWnTl7UdiiXU
1qox1WZ3WXt/etsXYAmI1DcPHjxfoID7U/Fc5jucHyLPwCZQF6FBKPX4fcPlTLbd
L1jfvwCOsBvr7ktXikphdDkCpo8uHQhd9UmSeCBggnjsk4SlSEOeuzbRiqODbdI8
WSkZduF8pbEjJu48pyPyzImzUoBFY/dZJ4nVqU4gCdUJiWthTcEdiheJKkO7vPvF
iL4A9J4wSmQPxs4oOVw8INYNVD/jKsRE8PUKTZjgESb1opyvnEcDXsUorJelkhim
la+SPcj3wa2kLRuUomGAYiDE2flqSuorfXUYlI85JfaKCpfKUY1COucIYbmFZq6L
ARD/4f1FfH3A8lkLhDhBlAJBrGKxCzqOzJbTgPWJy8YVCLKXWvdFQtoYUV+9Q8FO
vmu7d4/RteHqCg3F9/uzsNXS7CIoTnFh5cwo9x+jhOztQy7qlhsKf19kD+VoHbWe
NKPvGI06G8y+LMBi6Jm+NobF5g1/kqYlwY+s+y3psbDcgg4IBHTmT4Kfvx/4VaBI
V3lhSkIb7THBuMsGLctd5MH2LodGqQYG/jdgp4ylvQSBBNAVcLG3dlnRfYVnRkQc
OhoIySonSjjtfyV0CVQ0lEOgKvCvW75SeNGpHklnQb37rAJSjjknS2vNki5IeS3c
F9cln8a1ZNLt7vZRftqkMlMGK6pQHlqAIfZSj2Tl3RoGSZpgYfAchRThKz9912ak
8mS1RlQtfIVivKx8RTdjzRQh6DcsgAa3QSl+9J4BS8eCgl1em58cW0iS+vgCUHue
ekb8ACVTZ9S2cOwnUj+5TLeGpJxtSzkea9Upm0UFIEaf8zVXMSjuCHrVtBgchy0z
4PpKgUEihnDDaL1GIkiryiQIfi3C3tlDsqvJAoFy4zLPvARj2C5bdJ8io/s5Updo
lNqDhYor42Mk/Iu7ahl3AIAzM6HUK2JiAcm8ATyyNMB91STh8/UqwsOllC8a80dB
ISbY3MvicBEj0H1t1jQLudgW4dbje1qwNI1U0yIbSuh6XQqZvZmm4sSQXSd5wjXH
hn0anbZQqoORHYssKCMGQprFQJZRmAViFPbZMdU0YWfFAfrLev4h3Xx4BPZwlIu6
CTFuOlToUmqutZOw8ZDw0YWU4Fx8Ow40kLB3YXQu68t6ytoMJ5pSHgXP7H2m7H0B
yoTsJsCUpbabgGRosnbuP+8R33Mpf0mnby7gsIYmO3JEAFGZAM6+vpb8SjdK5JTh
cWTAefEEI1kXFKek0Q0Lo8pxrxTahwksMEvqrhlaTKVMSzRLhlEh3wR6riWCWdnf
uINQaoO6kQSL0iApsDsT6iLu4MFyaiBdDJXeFs9fWmbQhIRKK/iSBB0lOQPL6pIC
jUuX7pRUiv4WFUzxUxsKGwF+XT1LrGI93N3uWelf05oGv9SLoEosJ1egHOT8S5Vw
9XLdsluIiTKauWHIo3ycDBySzBmwgMWbCkcvu3bQ7C3DC3FLSgGe91S8UnSSkQCj
6SwM7wIAWfJWqYbIhSu3KW23xpx133EcB9ACdOrNiPyWhjOhwsZZNb1kZ5ba03Kz
XJLmCNkVpk6fFKcY0sDrcAWoMfd9GTZRsPs+Vux5eD77SLSWIEx7QWnJ28Pi2zDK
efFqXLwolwtGe9o6/vZt+OR1ePBD8Wo2A/RcuFy+DeOnZl5X8zk99vzsn86oBcLi
WJbU+9drerrYCrcrnRs0T57SNzU2O7PNUxNGOD8s3pTL5W3xtuS0sdDqNAi48M1/
I+FQvG1ITG79OK9xeyJ2hCmhPoTtR0++rz58KIvT8mMwZIutd9Vq0sBxGV6HlP7T
ydV69suyDt8I425m6+vzuuSkE21V0JpPV3TQZuXH4vSqnK3nQQ5vqRjdl4j8qZTz
Ulob5/S9LZctVXMUJ+RHo7NF+rlSFpPd6D0FL0Aahhtw1nBg0tl5pPQfpS6CWgHD
lxStoQMXy2gB9YhwxfpcE/Mt9VUMBInbziWj8ifmqW/lGFHhQLgXjor/eTw9Ctbk
OPR7+LHYGx88hvTf2T3cCXdAaGF/9+jh4dHuU9q4fEeFS6n4nw+ch7HYfaIQ3/8c
Rjkrlyyaox7VJwPg0+ZAMyciPbD7TGRLPEke24MdD5ErTyQaBXRiCyvCWpZM2U1E
ZY4EUIywq5RyorAcKUN0G1mfxm7IJ5XorLPyxkqqUK1E7x908fnxd0ahM4WMrpS5
5WRFZgyeRmitH6juN6zznDgdyC2iBYDxikQrQLKlG/Anw/jvFkOInyiFKnMzSD6C
oAhmuMhZVqBTh6PVWxQZBIYNVhS7D/V0SpcYFDzV4mLUOTbTr8rdn8b0ZUgJuocA
OX5WIgCqo1FPxqWzm+nCcI9ZOBXmcietMlicKJfykVe/lIpoltUCgRDUJdXlMZqB
sqzzT/joT2/fDKBBtQWyx/HE4I5kQX9M3vbkKRzRiqlSJzA10OpuO0ngRVJ4wF4U
BWaNN3GbeGp/5d3nDKXKWrnxdJrcSikG+cfcuinS4iopxlMhTlpUsCRm8PfNO+Ng
9KjKMKgYXXrFkgveu4kPVajXNLYj8YJou20DwGPoDg5jRTmePlesEhsKImFF6qtl
4Hu0XjHgXAWijk8CurGdK0EVjSCQAmHkHMq8IM+RSho0x33WqzjHgy80RWqtNW1E
PWuRsSa+EvvwSsrhOdS9xSpH1DfI1H5lm4vXt3EnjQOErGBZvqbvgz+mnXp6/pHq
hKVS58wj3GzbXKxuymXlx//vrrak1Lk4GIX/eeQn5E/mmsOykc6w/2j/6R/je1+e
vXRLQ/X7XlEgFy0K5noT0q2RrLoUoiYmc1mpyhaN8KJcJQBQblujdGHbQGc0pR7h
5+hO3zY+PAKboYf9PAbbIKxoc62ZsbqZZCsEqQ7qBAgbgWLRlETXSLhgOMPeAP+i
10sccO26ZRZvPsEvw1soqh8bCUKdIBWPU3AQOEJcRFdSjv3avm+CGUjNnmLfBpka
RPjgSnGcaLNC78ElITVWN1V6i4tPTnQY5uoyz64cB/GhcU24+0Ym+pPUm/Vc7t3T
10ivqZY9x1Ly5+ycC2HaFZKzuqxgYYVhUMT3esti2zV/BtyFJqjAt0eR5WygjtQB
vyn8PmKNSv5KBQs/ffcu0xAHlggHm3JGWq7/Ht+W2rZgRFWS/sA/9EUtKEs9rjEi
J8hC4c4LFrVFlPxmQ9orfWlwQxkEQbuLw/ST+4PkbZLhKkffuTRazjrqLFmSXS6y
hmKOXKljHXaK3B9aiVvBKtEU6wgfzD9uUUXHFOBdNF0rGA1Hx64AEiNAeDLsmILg
Kx/yJEvy4BJsEimwcKgMk1aumzDTwj1W634P3/TzdkoQ4Ue0N8X5IOY7d3vAx0CZ
XiSfEVGdVDxxzhNZazdXVKRFVRXqMA8G0cXFzpz+dwD4vnRdkEx6T1rnwRcgQ8hO
uwDsJMollBQfQUrYGWVTLaugtrMb19TVKEKRLzoVJ2ZyJSY2jLAlrSSVyqoNuLkE
Y6f1IQk3EJLS9dzsxAhHL+mFbrlM5YykK/xjgW9HOppPQiL6hHLzDZWrvyhnBnrd
0obI/CJdmani0XvRfI2JblDIqlaoyMvc6jVFNsHoxZoiAkOcOBEtFTE3zGeyy69L
CYgZavbMtaFINlvO17Ltx/OjlMtmTim9Dcap7f+4R6k7fDQEnkasclolZKwK12Bg
8fxTORdpaUULEMXb0dFrVca+6qPx2gxNMVv93nYFxmuxBYW/5rLlSGRetdt9Swo9
aTSxuzUMOIzuiVYJhQeuKTH9Yv3LL7fckFsISX5mFwclifi+cKhe1nhESzoilYZG
Y07zgrOw2FLjQIjR5KqjyeLuZmSrthYbOS9bjJ6CckEG6ld90gnRo1a9+vkuUiKi
K1iPmwsYES60eYY7bpwt8oPeiRUhLDfu8ouNeP9EzBq525Psx/Ftbti9+O5Ys1Do
TiLAqGtSI9XPxEqRkXqJVEsTmRRcWf9K6EBkXy/qyQfsuSXVanh5NrlidUAr7aUE
SOwul5xTMMaf1VekbhUzKfh+3+pxdvbs40EsEB6oUq00f1ltsCEJJCK9BdywSqKY
/Ros3g+SBSdAKqYLWaDYbcOKd/DKizUHACG+eF9w7KxQNwu8zJkceuSGfRyZTSVM
bXiMqtLCMbjIU7I7t0e/4RTulDmQUSBf4KFhUNfSCwDXtiVvl1PEum4YUDQRkYN1
MBPmk9sBRJ1vppyqUuWf51r3oadxDUJfDIa2ollyyBlF0WkAI1B8vN6K5UGU+dbK
86BgDfkWtcL3a9Icq7KtWaFCwj8AGxg+YjbrnRTWzwd41XRwf269gy/A6FCIo/di
xq7c1JoUZmPsfWTTONKWsM/JzOmaZeKo0xXwJWz9iZleEjj9FEp3IxBTogBq25KA
ewnUay6Zqf2RdN7APuFPjBLxYlHClJhQ0h4VL6VMyrCUYuOU5RUkI/FEaESfdRP4
kB19ykj5TbVeuXsMM8iNUmWMKjNyiTudINeIyDMSrXZenFLoyKWmN9bTAbbIUCD5
x6UcdrxZLyUZ11myvzVDqvh7kqTyyzaxmuSi3oqX93YEWBTcC1KARERKjGDkNlmQ
89gJBDm51Q2TbadBkNFJ1SLyUPzpT386eHyUqgor7y+o5ygWiaB1MhFA6RxibzDX
kEMc+/UOONs/ox6o2J2aZuSAZksfcOtMdRMO2ZJSA/RJqT5VhyqTxtLqGKts2o7e
8bZlbzWVmlkuMqxAcoilQ5JCg27RNVBJq/lIzCmJwzMzSnoxPvRxCUaFS9nekM/N
GlKFeGRdOtuHc7a5CtoZi1Q9QGSc59WIoO9HlA1SCUeGH8JPVORSDDbUow1So0JH
LYb58cvRu+OzU1cHBNxVVV3mCpDVm/FInQSQJDOrUx7oo7Ep1IxLCjcxkDW5LWUc
9b4W45QUiFYOuYWW3gKTSYkmWSFTfwmdmj67pitkYUsnde7E8TOT/cVQrMgyZ4wD
LVSThlWzhY7tylYmAg45n0ooUZ+hHRZuqe3Eb20v/PVD9lyZfQbfzZpzAtWmkjAC
ImmJ5JRt04e7MBoOwn+QeMbGlDvmP32Xfy8s58Fuej5bhgION9iW00CdZdDb0/vT
Ir4ATwDP4fFstqaEjBUCXeVqE3Yjm7yZseTu7lZz/39dMoqjNQYdmLIASquKrhEw
AC5m5aUmNf24mDWl28cLjhEiT4FK4lpVDNQopSzxEROczhoFok900EjxoHn11yhr
R8Kcsi1lNbLJSOINs7d/VJzWgFUwVx6qxHKpcQFs/JuN7RwM8Z/Do+K9+KO7cXzB
pJ3nTqZBl347yrRE47hhF2vExO9Tc8TXa/AdVGSZ9aVlLvtiVBBh+rbTzFHlrXnE
KfucJgp0ayU2zcrDJ0ed3ntZCx0u3GX1RUzgLcQp/BFYXnXLFKb0LUR6JEPFsqYT
yOK9/QNncoZfD7MtzFkwoWePaKFcccLSA/BEMPiYkP3M+byZAEUrMPhZ8QYsK3YR
XpPOUs43zsyjR0eIPqW1Bmk3JCDhcOn5x/q0sfEnHGDhxgciCgfeyBtoIs/Arf13
67BngAtGQ38eszFTAebcv8BOoevEtYLw4u7+I/7Q3j4UDVYpAUq+tZhlc5m5KBRZ
jB8RkAkKiGRqyWFirwvlB19cQ69/Nah+QenKUPUvNX1SB6og2ML6NLMCofRrq12l
VGlxxM6qzNXUQd4zlLtx3IAQNewzQ/3N5dpLAwe+QLqNVaf2haTd+AGQzjBKZJQn
vmKHrKBqWDJZnfFrUGzaIITXeGKLWXlbITps9V9cY+Qzf3ykhq4kLnLEe+HFcwne
DB2S2CFdNKkk/CgQyy1m9Aa64cljF/BO9C51LK5Dk6MLcohNadHLS9x8BtdMRoM/
IDSbbjis5GJeE/MoDCqcsPcenntAe8Ay8EjY558nez18aJ9EOh4iXaRYoqQskahQ
oOf3x21MOI3tSC3WqiRvGnsRnG+bZjl3KmzFpEr+SfbVvalAXwD3vUjEOZ2yUX0x
4vyXFC5k6+TxE7rlnuyC69HAJpwbhZneJBWa9hmKpaHbK2BFNYJRyy5wh2ng7gQ5
HvNgwxss1Uf1uAVt5pwrLHBvSJaH8FnFRvyJjAxLiDVYhFaakuNpBTCxEbH5nVte
fEMOdp6LThIgaDl4Qh4nWYOz5rJWQghu96ZZEr4k5DJ1pbWRx0a4NEPlPX8+rcib
xKGXyJi9rGJlRhuz4gvlnxoLenkSF7YAwCiLAAw3O/0T9qfIKoYOsAOW1lanno65
0yMgQNbLtupz1kysUnrTbRw0TEcBnjB/Oxc3MGb1WrdX58pTDwv3ZWMapSfwkqXw
1QsCJ78DDXyTHvsIc0u62+NwFvcP4GdugUsGN6yUzR2/P0mMKL6iXMDXExoZ1IEV
DwBGBBxa3qHZQHc4ePToMRoK/3gCgh4hGkBaEKfhLxbhLk8wZ1wzJO/uviqT5TnQ
ET8KK9Xlk4PxKdAtQq3p7oUkKbmXB82ToGHHhk1N0WHvzSbCP6VGceXEweyZBRX4
XB2MzfKy/ig4PaqMbBxWUDDrlefrdMgbfOsx9EQzum3Wzl9HMd8R95lcMwRuPEqp
biizASMZajBd/EnOH7BejUKXR4tSgIXI+7epqwe7ugIHe2HPPX2CPWfFg5zZdFXN
ewWWRPC0fm7YKeHWRFfJZ97Uh7DbX42y2jeBL0UtZPQhskR2XbgQMVy3jIBHfnIf
h1drl/QggMCELn2oqkW/9Sbla1tUq3cNP6+VuoU3NDhQq6XBpWRearp4CAnTpP55
dVlzeE9pi0aG2B85AzaejoNgSsjGVmNQg2Dh8qY6lqOCLYbEQq/yqfRjzoY6Vjya
m0oOT582nZ8i8u86LbJdULKHg5FLjpekIJYdm3HTsA/ZnD88HJpw2D3Skj2w3vnU
NXdVnIc2KN2gBu2CcdyZwdRSFpJuCE5O+KSBlsSdluPXCejFJXt8ON/aAYOeHBzc
q9/qCyD398zyU7ts9o8+L9fUI0aK/Hi6C6DIYWQztwJuSsodwX2wCJZjYu6AT32j
/yIsugKMwynxiSkN+VsJhI8mmrh76NfHQ1cBG5AMeiLe/n4dBrbMemnEipytcUno
zWSBGWaMk0zZOylLdT2rdgz+e+O4D8KpJnyu5kKrx+REQ+1sY/bNME3/gvUI5Lhg
kj19iAvfomQbdY49zV5eMNvNWjSJlkq/qRhUKAqyw+bqxC0xPyrG8GxGbQlM6Aan
23hdU0rGMfm0ofnMa0u1sKhz4ooPUidmXJjbcsFnksEz8vczxznhGZIqqCp40pEc
9AN520GNAjzoXK1Y6tH0lmryJ3k0IJnVh2FWZzekuXHlp0NbKVH9Y7VcZJjQeiZ3
WvKEXLOGmUqBi4+VAFdTuRH0CWr9ZH8vu45KkolrhZhqcWAS/M5NV48pZg+fHll9
dwJsp017Ye9AsZ8+3jZOV00qaZoRg1b5a35L+uV6LrHvk6ePtvvU/iTIMPTZ9bpZ
dXdWS+XxoFTwnb3dnSSY5kf8NE38U97lmDbF2G8uCBJ98ex4v1O1/9XmFcRkg0NL
cn0ZIJoRCiomyiPLbGkcdYpPnJ/UjSt9uMu37Z7dtg+D9sqyM/oxGT3CXexSAEO+
YAQc6Lvh33iO/n0VrloOus0VS25WT24Nk9YaOr5IPo+IF1N1dyp9Kxdftg0Yi6dT
WIqJAfPXNQGNMTxEOMLnKP6WNKEYcR/NmuaDe0F4wGAdCgCMbJbNh2ahHVJ0fNUs
FX73g5W+wMXWEGLA3LvVeHuqK4qai4AzONLtSmMqBHZriLzr1g2y04Apud9HOcoT
UF9cSHtMT0Jez/R+1D7ep7/pCwD34+TuPt052O2EXpNUpJPH+1xh8/iAcZ0AhW2R
rRh+6Rwv7wVRltO502AcU6H7wo07DWpXr1yiL8q4pGYd9S7BLny8aWM9PmJiCOK4
vla7KSjZwIpiMh7cnZKPQSZesrVg7DEdFlCLE9h0usaKNUKBzhGVx9oZGiSRYKfV
dT1aZrpJJsIkf/P9y9fRcX3y+kVsVyqk6RxT15JqfA7KBfvS8CSc0uUdUsxBi5co
+uOqQWQZ8aTtcbJV9p/2VnIyHK5U9iBnDnUJvSkMmkI9gH8l2hKcGgTbfWK4W0B0
C2scEylS73VGYMnKTjdlYzQL98EMzCfn4Y7NxuTTtN8ypqCU5q16gLktbZLgBkl+
Wt7JVulyB2ItQb+6ypcCodlDxBlc4kY9l7HSDMDQgXyz4jbujkI0tVneFGXjt3rx
DYBmOaDYwTC5iDiAbQ4WAyviL2rx4gaV55SSuaqYLSSxpr6ZyEtr6cp3gjnnxxAK
RFfiO82r+iIBhVP++kpwpc6dfXux7OJtVc4RiyBAUCcO/Et9ZwyxTGGhJRetdUjA
vSPSiJ/mGfTUm1keS4d0NVxL5SUnFof3EpBfvxN/q4to4evO3sfucBVzOjTWtc0m
tMacf7+vVe48CbagsD83KHLIGWD1RW5URVfswPwXrqS4/ZdfHYgUJswjadbAcVfJ
fWFJ3imhlju3ZKLQLce4xgoWA3J1gbtpwK8U08D6c3B6cERiqcQz+ZgK7CAyDdOi
vD+V4QtAtPOP7QbRVRF3MANve5Om/hj68P4T04f3SXeny2ZYjHZ3fTmidxsZqrFk
aAAhTInCFex+riXi8Qi4WAdnFCq5RYVaQy0wCOf9Wy0CCT1gqCC7KoobbzQkV6wK
E6il14ihOtQ8Y6Nh9dub1KWw7lJQUwy4LQPAAoucQpAj686VUvg6sL4ObHf0ABD2
KB74Ki/MzqvgKLSddN5yVogidjnd7Gnee4LFPdi3xT18SGRwECKXjeKNEHr/gN5a
tanLw+O1DLJoJ9h42mpRokTqz+xf/ZknJ01zoMnTiy26M3c87NbG7JINveXa1dDi
lABMcVCPXw5c35OuqicgbFXv5OofgV9MGcrnjkCLsQYijAbMladCjlMS2QHVNj0l
RCnr4KoKOyehNCSsCaFMNOwdByJh7VgkAHuxBVAjOSZ9Y4xYKwisytGY9EbVLY+R
KK9P/BqxIuii/pQE22Kx/o4DxDhfX/bVsNEMnTCfM09RVv/jHNULLm1JogHqG6Xa
Id/4q2uipAPjM3MzMtykglTC9QeaLnKq0RuXqPiv20RLCEbAcuVDYmzzS5GUVLEq
oMlQfKxU8kttu/3JiCR0E4aNNCE6x3LWXEoiuS4lUemU7qEfT974DKpTBr024DQA
3Vp1MeOuNMw9gJENMgW7a18OJCp1rEbTwFcfme5MCeYfqtuu4EpPnZVii/0OsnaN
SjIIdTV1ISInMBIiw/D01inf0XyGPZCWv9YkQSZcF0EWONcm58XIn0HcHv79elZm
OTBulZ1RqhSZ6gDK+DvJfZIUA6Y+B0mUEdiTAXtq4dIOEoWOymXYZgs1szjzJ011
loyqYDRUS4S1QbxASx8v5q1kRnrK6d7o2eHnNXIkl3e08+5Uv2qqeEtfxXkmEbPa
TFsGhygysJWIo88lMfcaRfoCEOp+DpXQ+CLch0JzGoSh1LHCBS4uL0Exd45T+I0z
e1sWZnMyFyLnKN7i3RZ1Zh9SCkdxR+dcPEA+dSsoD53ET9qtKfYYhhZfsAPGb9fX
1+slXjAxzwJJgAgjSwddtAd3MtSfnyz/ubgN4ZKQUxFO3025lKizhadCuw5vLhHx
4gzGdDs8Oa61oC+FL3z74j1yiQhaggtz2Ply3nyKDUnWeE6xd1LWAIxs1udkkFcY
4GKNCliKtV5coHrFGbGkVyXnLsorWoKgUxeKmcIpSj1JOnSSUONbVR8SIcJFY2DY
2qo+wfukmqgpClJtbnTL9K3MXZdK/13vMjL4F2JtE68MXRk7pUf/vxVIOUnNJ9uU
s9S8Kl4tWrrMLpflNetLJKpWV1brR87olncc+XwpTM5P9xyOXycqiPcTOkWFGQlI
FPJ5mLkA2VwRlZyxV1ndaXeEzm2Hk0xTg/81tvZcqZqYmru1ZBCJerHnkgd6R65j
Z5CEi0+G/GW5ZNWp/23dEvm+EoruFPZ685yIoarg9ZJx3ehQZZtk30ejXIKAcTmq
bsiqEzvDfIROkpmyZveSIBffRNSmhrNgNRVur2PhNKn4nA4k1W7FyRi8l40fky4H
cGAFkaanXPkDyKTjAtQcU4xfW+qbIdxpB4U1GlUAPk82RlqaFuxF8DijGC98+0pC
kEBci8ZeHwoVn5ru5JFc4okNBgo7jEuBfhPkXecEo320k/n97u9y/QJIzbJPASwy
1JKXoUAewJnAkrH+xRKzrRAD5jjlS8UJgFGGZuyp7L7RTBijUvN5pFn6y6JaXpUL
puf6JDa7BbZHfYuoNnmy15+kUZwfgx0/kCOTVEiUDLtNSGKwRQdR+x1IclUmzYMh
t5opKCZMFYV02pCSmHeDBpJWachEDQZJrmN8kb+Uet7YxdelzqWwub4X72pKbxOd
QkqvhtA0F03NFQgOF9iBAjsPUj7KHKaXLbBuz+T+dLZUtIi3k/Xb9/Fz5RVW1YaO
2P7+WApAkQCNP+yRQaB8Sf4zOlBBQSFAvJ8L4PAOi7dkGPwkeKLHo5et4uZpTIMg
LIcGpOdGj5//tQ5CZ+/p06dja56SWn8mV2c5ndMcnNIbEHQ+odI1qIUvPAhzaD7o
S8XjJ3njmiI7LF5X58s1yWZgzPlXPem+ak4ui4qrT98D9TqYg/Hd1JXsRWeGN6J9
eTrUtz/pf3uYlp/5yz81y7BNfqJsgp+CyKSC3WCl1+vrIVe7zdlSp/BLsLXeBKm9
DkIt68FWaG+72Bvvhg78dPCCZt29N0xwZ3K+ulqtFkc7Ozc3N+Obg3GzvNw5O9mh
J3dOXr0YfbqejeiX3f293W/G2Bf7tIUuNu6MsPjj6yWVKQu87Gh5MWl/ztfkN++a
YgsbtZpuD/K+c/1+92XFFkQrYc0vG1B2BhvPJLdOvctEznsXLJr6I4kw8q+s56qb
W0kBtqE7bYOhNnxvd9UXwMj98w+nx7LZBj8sgqLNOInFm3pSUXEQQXEl3nD3UDZB
LENo/d3QufwtmCqCGIeXPqd0TZ0S+gO5Kt6Ga34tOUev4Sq/xcOvyItyZJjX/3od
nxuxS/12HJaEHv3x5Pgo/Mft3g0P7zz4rT/3snCH9w0z1y+HrIDggc4pA30CGgaR
gZZzzKNSvlIwWUB6LjmxFvf2HN6NOwUe8axAe1vy70wRiRpi0mRnZX1tNZcLgekX
QzinClhqjRnfugbR5IF9qZk0DVhsRfLtMK4Z18qQX3DG+1cIFlGXxL2kVriPFNLE
PxT+RBGdnoEBA+lKiIMyP4sAR9TIh0cr5bTCu+o5x3voGclpTQqHiSI1dmDsRCWr
WY2BqYnxx0JlCbA8tLW0G4ZujogCGAESLpo1cpvlumPtALcNS7YXzaJmskji6iSX
yKxphXl6WkX/RCrDOM7FW4GA8pZGOTlT+cCqKM+FTuBQV0aSxrGf0AZTBds7m3Nm
GjW+DV02CtAYY4c5BXiPUEOYT8a8pK7e6gyd36ZAf7yxlq0aivhuwgopvlzuiXoh
bS6a+Qi2D01apDIu2Bnq5AzhxeCerBfLcXr86vnHGtAk2CkGoEjsIXC/ni8l/FMj
72glFpzMejiPtzy2YfjKCqtOk1OuKmWKMw3TzqObGGojOZ6oIv1IJlc8ZfZJRqhq
U2lHT2F+xxTHBw2pcnlwbVzM1PU7iqcLmDphfv5VJ4vuh5e0E0lQAMTs30UUyQwm
vMMC4eLfIUhH5N4J00obaVnFvHVMIjU0eH5aHJ8OQITO2sTZ96+KFz+8Ozs5/vbH
sx9OhvjDDyffPX93/H8/Pzv+4V3x/aud0/C3k1fvT16dvnp3dkoN/XAS2ilO3//w
7vSHk1cvi2//o9g6fl08f/cf29zE8buzVyfvXp0Vpz+8CCP/j/DRy+QDXGjvvjt+
9+rVyfG774qz56f/Vrz+4eTFq+Ll8emLN8+P3xbP37wpfnp+cvL83dnxq9Nh8epP
1IdTvP3t+zfHr15C5zl+9+LNjy+pkTCG4t0PZ8Wb47fHZ6FbZz9Ql7SN/wgdeH6G
Xvx4Gkb5mv7JDYQXv9Xhnrw6flf8dBzeTU2Fz6h/r9DQyfF335/h/fSb9IFaiL2k
Zt++Onnxffj1+bfHb47Da8Pzr4/P3lHXX9N3i/fPT86OX/z45vlJ8f7Hk/c/nL6i
HfBCd3h2f8W/b73Y5uMkF2hQPyZhD90WW3Qdbo/zrVKDr+IvwmMhG1EPkQkudvkF
w6uWsrS4m0yMDtU6FI8NEbJWsMVZ6aNNJ0Tx4uskyVkbqGCtdyNUoQTDE2N8vWZ/
iAo47xdWyEqqcDEwA9vcrI3pFe1n5R4VzkOgt/23///n/+QfB2gGB82I/xA9PTv1
dPTkfHy1up793nfs7u4+Ojwswn/3Hj/c8/8NPwcHB+HXYm93f//x/sPHB48OimA5
Hjx8+N+K3fsc6KafNQG9ha6oBfF728Fgdgv77/8hP1/9j5c/vDj7j/evGLng/Y/f
vjl+UQxGOzs/HbzY2SHOAnxwON7dK84Y7ROR7p2dV+8GxaDXF0Cb5XBn1gQrezxd
TQffPPiK/lTMyvnl14NqPvjmq6uqnH7zFXxs35xkuYQP/i/oBWwIdS2gr3b4aw++
omgt9KwRtfDx68ELBhkcnd1Suq9ADn4N7hN06hnlOy1DG1+vw4Z/MtA2KJr99YDN
iQUn/diXP7N3WZsfqluU8/vehAeHRs5HVQ4uSyyDgclaE2CJZumaM3zhvfH+02JL
FiT8dUwZ3WSJY1m2qal2dUvFyWF2vv4DJmXStn8If/8fIw56A6Djb2a5XzQwjK/r
2e0RZYdOy3k5xBROmnJGhMezjxVxB4XhUGJzGEnYIKOWCkwjls91ubys50fFfnX9
LG2a0lKOqAI33IdhaYK6uTwq/kFO0LOCMt4oT2A+HelnF/gJn/0XWhqzk/Zv9t2n
T+m7z3zzn0azkmgdsnffVHT1HoUhz6bPOKgX1MvL0E/cyc/6J8GN+DqcgkkzLAZv
g9JHWS2nNOzBnVPRHZFjmLRBUR4/CmziuB7hJxnX3pPFp2eoCx5dyVj26U/3PMy/
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
e2qIe6ljOumpKP6cbEjpg5nJHhY/sWwlbCep4TMaamre2r6wNRdZXki645hy8VTG
Aa1QdMENGXmoQAxaUU8sygo/BA+a4M+66wLvoe6mDRXthn6Q5+LZxZnz+WEwg0XO
kdJ+FeYqvIP8tcrLia+TVdvMU5SMjTTEEwu5bWfMVfmf9ZxayfW5f+WK7eN2mVPb
kVrJda6mmB+xfcXtA57pLoXdZxuM4kqaw5KkYxha1jS7ydGhCRuMcYZ8e97OI+ft
PFJv5xVtdjw48ziyBbghDq/KvyCt6ivJPOsJihnZYCge0nx/AmdZ8WU815hCSLEd
S6Td1CiLShHZDgYPWnJnl9NxlKj3ouLhn8GejhK+Ig6xH3n7rIwmYt+toXqp8NNq
AmU4a0QMZutyfDqWRV2U15+vscHh8sQB0PFr8GBlGwvy8XJ11vTETfRsTdJgkc8i
MEIz2xZ8uxlG7YlugElTGq+MUH9V1F4jzsRupGnRondaj256sVTJm1qHHYnlnN58
62KGKQbgjlkekUHpka3jEtPR89DS/OJDaewjPI2YoLG8FDOgmgZYlqamK4ElcB1U
4yB+E0dRGOHPx28lsyaBWzGmG7v3QATuj6bacqN6He0+a/U7zysUGaTQH++HfqjU
RB3uM+DHuGBm4jSpRI1butAzk1KrqLyIOPpI/YUfP378gCsZRZ754VsGNhBETLyP
dUXOq4hjJgbntn6F2MiWtOtAm+HWFCs26CoDsgtJw5Xhypnx7ujdK0DTpVZvQuly
CHoejzKsg5tfvIt9eG5u4ew2lM0SWPqGHarfNS3YObZWU1HrPusQpsu2uMHif0y5
6Yg3zFAs4ddPTI2622k7nJqDFPBaBofBF59GJzO5uGL/GGp5cW9cJdh/MjtlLXJu
KNEeIMQWXFJH2KjmbQ1IwPOShXDA1OyTGeU2YogqOWfGyJbO9/5GxGE/xwX1xTv2
/uE2E2U3ybOPg8ts25x07sBRh9VCf9pN6NqZSA9Joabk22ZgGzRVkHSX6hvWN7zV
+9ijqHuYsJ6JY/aL3kmPC5s/jo/ck4ijd5i+4iBdubRQb/seCP0oVHwyGDz/6HQl
07tXqLuToDz5/WDgP1uCTHgyqfBoqZ/eQyz9l1s3KhV52FQWWcaLuW8dtm6ZMU7j
SxoTbNSZDK+2i7xrpYLldjC41urs3gxSrKfb7tbtKCahFX63F6kHv7rXf0Xra6U+
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
------------8TCbUjCfC9c9W1k3EtELgj
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Disposition: inline
Content-Transfer-Encoding: 7bit

_______________________________________________
Tools-team mailing list
Tools-team@ietf.org
https://www1.ietf.org/mailman/listinfo/tools-team

------------8TCbUjCfC9c9W1k3EtELgj--




From tools-team-bounces@ietf.org  Wed Apr 13 16:58:20 2005
Received: from ietf-mx.ietf.org (ietf-mx.ietf.org [132.151.6.1])
	by ietf.org (8.9.1a/8.9.1a) with ESMTP id QAA06845;
	Wed, 13 Apr 2005 16:58:20 -0400 (EDT)
Received: from megatron.ietf.org ([132.151.6.71])
	by ietf-mx.ietf.org with esmtp (Exim 4.33)
	id 1DLp68-0004Gx-QQ; Wed, 13 Apr 2005 17:08:34 -0400
Received: from localhost.localdomain ([127.0.0.1] helo=megatron.ietf.org)
	by megatron.ietf.org with esmtp (Exim 4.32)
	id 1DLow4-0003kq-58; Wed, 13 Apr 2005 16:58:08 -0400
Received: from odin.ietf.org ([132.151.1.176] helo=ietf.org)
	by megatron.ietf.org with esmtp (Exim 4.32) id 1DLow1-0003gW-PZ
	for tools-team@megatron.ietf.org; Wed, 13 Apr 2005 16:58:06 -0400
Received: from ietf-mx.ietf.org (ietf-mx.ietf.org [132.151.6.1])
	by ietf.org (8.9.1a/8.9.1a) with ESMTP id QAA06822
	for <tools-team@ietf.org>; Wed, 13 Apr 2005 16:57:57 -0400 (EDT)
Received: from exprod6og8.obsmtp.com ([64.18.1.128] helo=psmtp.com)
	by ietf-mx.ietf.org with smtp (Exim 4.33) id 1DLp5l-0004GU-3j
	for tools-team@ietf.org; Wed, 13 Apr 2005 17:08:10 -0400
Received: from source ([192.150.11.134]) by exprod6ob8.obsmtp.com
	([64.18.5.12]) with SMTP; Wed, 13 Apr 2005 13:57:55 PDT
Received: from inner-relay-1.corp.adobe.com ([153.32.1.51])
	by outbound-smtp-1.corp.adobe.com (8.12.10/8.12.10) with ESMTP id
	j3DKpvBM009197
	for <tools-team@ietf.org>; Wed, 13 Apr 2005 13:51:57 -0700 (PDT)
Received: from calsj-dev (calsj-dev.corp.adobe.com [153.32.1.193])
	by inner-relay-1.corp.adobe.com (8.12.10/8.12.9) with ESMTP id
	j3DKvsBQ002815
	for <tools-team@ietf.org>; Wed, 13 Apr 2005 13:57:54 -0700 (PDT)
Received: from calsj-dev (localhost [127.0.0.1]) by mailsj-v1.corp.adobe.com
	(iPlanet Messaging Server 5.2 HotFix 2.02 (built Oct 21 2004))
	with ESMTP id <0IEW00KLLKWICM@mailsj-v1.corp.adobe.com> for
	tools-team@ietf.org; Wed, 13 Apr 2005 13:57:54 -0700 (PDT)
Received: from MasinterT40 ([130.248.178.214]) by mailsj-v1.corp.adobe.com
	(iPlanet Messaging Server 5.2 HotFix 2.02 (built Oct 21 2004))
	with ESMTP id <0IEW00644KWIRM@mailsj-v1.corp.adobe.com> for
	tools-team@ietf.org; Wed, 13 Apr 2005 13:57:54 -0700 (PDT)
Date: Wed, 13 Apr 2005 13:57:53 -0700
From: Larry Masinter <LMM@acm.org>
In-reply-to: <opso6nb0ptiz3etf0c9082f7@pail.measurement-factory.com>
To: "'IETF TOOLS'" <tools-team@ietf.org>
Message-id: <0IEW00646KWIRM@mailsj-v1.corp.adobe.com>
MIME-version: 1.0
X-MIMEOLE: Produced By Microsoft MimeOLE V6.00.2900.2180
X-Mailer: Microsoft Office Outlook, Build 11.0.6353
Content-type: text/plain; charset=us-ascii
Content-transfer-encoding: 7BIT
Thread-index: AcVAVE1nj94bgKo5RiusWvXqNGvLTgAFqvrA
X-Spam-Score: 0.0 (/)
X-Scan-Signature: 7d33c50f3756db14428398e2bdedd581
Content-Transfer-Encoding: 7BIT
Subject: [Tools-team] Accepting other formats for "source"
X-BeenThere: tools-team@ietf.org
X-Mailman-Version: 2.1.5
Precedence: list
List-Id: "The purpose of the TOOLS team is to provide IETF feedback and
	guidance during the development of software tools to support
	various parts of IETF activities." <tools-team.ietf.org>
List-Unsubscribe: <https://www1.ietf.org/mailman/listinfo/tools-team>,
	<mailto:tools-team-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www1.ietf.org/pipermail/tools-team>
List-Post: <mailto:tools-team@ietf.org>
List-Help: <mailto:tools-team-request@ietf.org?subject=help>
List-Subscribe: <https://www1.ietf.org/mailman/listinfo/tools-team>,
	<mailto:tools-team-request@ietf.org?subject=subscribe>
Sender: tools-team-bounces@ietf.org
Errors-To: tools-team-bounces@ietf.org
X-Spam-Score: 0.0 (/)
X-Scan-Signature: ffa9dfbbe7cc58b3fa6b8ae3e57b0aa3
Content-Transfer-Encoding: 7BIT

I've been thinking about the discussion of TRoff, macro
processing, etc., and I wonder about the possibility
of allowing any author to optionally submit a single
file (or ZIP package of files) of whatever they consider
to be the "actual source" for the Internet Draft,
whether that's Word, nroff plus a macro package, XML
plus an XSLT style sheet, or whatever.

This "actual source" would be archived, made publicly
available, but not subject to any validation or
automatic processing. The derived XML and/or TXT
must also be submitted.

This would provide for archiving and allow others to
more easily create derivative works if they like,
but not make any promises about tools or automation.

What do you think? Was this already discussed and discarded?

Larry


_______________________________________________
Tools-team mailing list
Tools-team@ietf.org
https://www1.ietf.org/mailman/listinfo/tools-team


From tools-team-bounces@ietf.org  Wed Apr 13 23:53:02 2005
Received: from ietf-mx.ietf.org (ietf-mx.ietf.org [132.151.6.1])
	by ietf.org (8.9.1a/8.9.1a) with ESMTP id XAA06152;
	Wed, 13 Apr 2005 23:53:02 -0400 (EDT)
Received: from megatron.ietf.org ([132.151.6.71])
	by ietf-mx.ietf.org with esmtp (Exim 4.33)
	id 1DLvZX-00065w-Bq; Thu, 14 Apr 2005 00:03:20 -0400
Received: from localhost.localdomain ([127.0.0.1] helo=megatron.ietf.org)
	by megatron.ietf.org with esmtp (Exim 4.32)
	id 1DLvPT-0006Hu-Bj; Wed, 13 Apr 2005 23:52:55 -0400
Received: from odin.ietf.org ([132.151.1.176] helo=ietf.org)
	by megatron.ietf.org with esmtp (Exim 4.32) id 1DLvPO-0006Hi-8M
	for tools-team@megatron.ietf.org; Wed, 13 Apr 2005 23:52:50 -0400
Received: from ietf-mx.ietf.org (ietf-mx.ietf.org [132.151.6.1])
	by ietf.org (8.9.1a/8.9.1a) with ESMTP id XAA06143
	for <tools-team@ietf.org>; Wed, 13 Apr 2005 23:52:39 -0400 (EDT)
Received: from measurement-factory.com ([206.168.0.5])
	by ietf-mx.ietf.org with esmtp (Exim 4.33) id 1DLvZ9-00065V-V4
	for tools-team@ietf.org; Thu, 14 Apr 2005 00:02:57 -0400
Received: from localhost.rousskov.org (localhost [127.0.0.1])
	by measurement-factory.com (8.12.9/8.12.9) with ESMTP id j3E3qZ3a021646;
	Wed, 13 Apr 2005 21:52:36 -0600 (MDT)
	(envelope-from rousskov@measurement-factory.com)
To: "Larry Masinter" <LMM@acm.org>, "'IETF TOOLS'" <tools-team@ietf.org>
Subject: Re: [Tools-team] Accepting other formats for "source"
References: <0IEW00646KWIRM@mailsj-v1.corp.adobe.com>
Message-ID: <opso7eccp5iz3etf0c9082f7@localhost.rousskov.org>
Date: Wed, 13 Apr 2005 21:51:38 -0600
From: "Alex Rousskov" <rousskov@measurement-factory.com>
Organization: The Measurement Factory
Content-Type: text/plain; format=flowed; delsp=yes; charset=us-ascii
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
In-Reply-To: <0IEW00646KWIRM@mailsj-v1.corp.adobe.com>
User-Agent: Opera M2/7.54 (FreeBSD, build 955)
X-Spam-Score: 0.0 (/)
X-Scan-Signature: 82c9bddb247d9ba4471160a9a865a5f3
Content-Transfer-Encoding: 8bit
X-BeenThere: tools-team@ietf.org
X-Mailman-Version: 2.1.5
Precedence: list
List-Id: "The purpose of the TOOLS team is to provide IETF feedback and
	guidance during the development of software tools to support
	various parts of IETF activities." <tools-team.ietf.org>
List-Unsubscribe: <https://www1.ietf.org/mailman/listinfo/tools-team>,
	<mailto:tools-team-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www1.ietf.org/pipermail/tools-team>
List-Post: <mailto:tools-team@ietf.org>
List-Help: <mailto:tools-team-request@ietf.org?subject=help>
List-Subscribe: <https://www1.ietf.org/mailman/listinfo/tools-team>,
	<mailto:tools-team-request@ietf.org?subject=subscribe>
Sender: tools-team-bounces@ietf.org
Errors-To: tools-team-bounces@ietf.org
X-Spam-Score: 0.0 (/)
X-Scan-Signature: 02ec665d00de228c50c93ed6b5e4fc1a
Content-Transfer-Encoding: 8bit

Larry,

	I cannot find enough use cases for supporting opaque blobs. Whenever  
somebody is using something semi-standard like MS Word or nroff, they  
should probably write a small draft explaining how the Toolset should  
handle their data. This would be the "Right Way" to support other popular  
formats.

	Whenever somebody is using something custom (e.g., a Perl preprocessing  
script), the utility of making that custom thing public is nearly zero.  
IMO, we should avoid such undefined/untyped/unchecked/void* things if for  
no other reason than for design purity sake.

	Said that, if somebody feels strongly about it, they should write a draft  
standardizing a blob interface. Perhaps they would require one or two  
archival formats. Perhaps they can require a README file or even a  
Makefile as a part of that archive. Etc. etc.

	In practice, since it does not look like any of the Tools team members  
are eager to document alternative formats (including an opaque blob  
format), we probably have no other choice but to keep them out of  
Submission draft scope :-)

Alex.


On Wed, 2005/04/13 (MDT), <LMM@acm.org> wrote:

> I've been thinking about the discussion of TRoff, macro
> processing, etc., and I wonder about the possibility
> of allowing any author to optionally submit a single
> file (or ZIP package of files) of whatever they consider
> to be the "actual source" for the Internet Draft,
> whether that's Word, nroff plus a macro package, XML
> plus an XSLT style sheet, or whatever.
>
> This "actual source" would be archived, made publicly
> available, but not subject to any validation or
> automatic processing. The derived XML and/or TXT
> must also be submitted.
>
> This would provide for archiving and allow others to
> more easily create derivative works if they like,
> but not make any promises about tools or automation.
>
> What do you think? Was this already discussed and discarded?
>
> Larry
>
>
> _______________________________________________
> Tools-team mailing list
> Tools-team@ietf.org
> https://www1.ietf.org/mailman/listinfo/tools-team



_______________________________________________
Tools-team mailing list
Tools-team@ietf.org
https://www1.ietf.org/mailman/listinfo/tools-team


From tools-team-bounces@ietf.org  Thu Apr 14 00:53:16 2005
Received: from ietf-mx.ietf.org (ietf-mx.ietf.org [132.151.6.1])
	by ietf.org (8.9.1a/8.9.1a) with ESMTP id AAA10004;
	Thu, 14 Apr 2005 00:53:16 -0400 (EDT)
Received: from megatron.ietf.org ([132.151.6.71])
	by ietf-mx.ietf.org with esmtp (Exim 4.33)
	id 1DLwVq-0007cv-UP; Thu, 14 Apr 2005 01:03:35 -0400
Received: from localhost.localdomain ([127.0.0.1] helo=megatron.ietf.org)
	by megatron.ietf.org with esmtp (Exim 4.32)
	id 1DLwLg-00064D-44; Thu, 14 Apr 2005 00:53:04 -0400
Received: from odin.ietf.org ([132.151.1.176] helo=ietf.org)
	by megatron.ietf.org with esmtp (Exim 4.32) id 1DLwLd-00061L-KM
	for tools-team@megatron.ietf.org; Thu, 14 Apr 2005 00:53:01 -0400
Received: from ietf-mx.ietf.org (ietf-mx.ietf.org [132.151.6.1])
	by ietf.org (8.9.1a/8.9.1a) with ESMTP id AAA09987
	for <tools-team@ietf.org>; Thu, 14 Apr 2005 00:52:18 -0400 (EDT)
Received: from exprod6og4.obsmtp.com ([64.18.1.124] helo=psmtp.com)
	by ietf-mx.ietf.org with smtp (Exim 4.33) id 1DLwUs-0007ac-Fh
	for tools-team@ietf.org; Thu, 14 Apr 2005 01:02:37 -0400
Received: from source ([192.150.11.134]) by exprod6ob4.obsmtp.com
	([64.18.5.12]) with SMTP; Wed, 13 Apr 2005 21:52:17 PDT
Received: from inner-relay-1.corp.adobe.com ([153.32.1.51])
	by outbound-smtp-1.corp.adobe.com (8.12.10/8.12.10) with ESMTP id
	j3E4kIBM002856
	for <tools-team@ietf.org>; Wed, 13 Apr 2005 21:46:19 -0700 (PDT)
Received: from calsj-dev (calsj-dev.corp.adobe.com [153.32.1.193])
	by inner-relay-1.corp.adobe.com (8.12.10/8.12.9) with ESMTP id
	j3E4qFBQ026889
	for <tools-team@ietf.org>; Wed, 13 Apr 2005 21:52:15 -0700 (PDT)
Received: from calsj-dev (localhost [127.0.0.1]) by mailsj-v1.corp.adobe.com
	(iPlanet Messaging Server 5.2 HotFix 2.02 (built Oct 21 2004))
	with ESMTP id <0IEX00ABP6V3PU@mailsj-v1.corp.adobe.com> for
	tools-team@ietf.org; Wed, 13 Apr 2005 21:52:15 -0700 (PDT)
Received: from MasinterT40 ([130.248.179.30]) by mailsj-v1.corp.adobe.com
	(iPlanet Messaging Server 5.2 HotFix 2.02 (built Oct 21 2004))
	with ESMTP id <0IEX0089Z6V29F@mailsj-v1.corp.adobe.com> for
	tools-team@ietf.org; Wed, 13 Apr 2005 21:52:15 -0700 (PDT)
Date: Wed, 13 Apr 2005 21:52:13 -0700
From: Larry Masinter <LMM@acm.org>
Subject: RE: [Tools-team] Accepting other formats for "source"
In-reply-to: <opso7eccp5iz3etf0c9082f7@localhost.rousskov.org>
To: "'Alex Rousskov'" <rousskov@measurement-factory.com>,
        "'IETF TOOLS'" <tools-team@ietf.org>
Message-id: <0IEX008A06V29F@mailsj-v1.corp.adobe.com>
MIME-version: 1.0
X-MIMEOLE: Produced By Microsoft MimeOLE V6.00.2900.2180
X-Mailer: Microsoft Office Outlook, Build 11.0.6353
Content-type: text/plain; charset=us-ascii
Content-transfer-encoding: 7BIT
Thread-index: AcVApWd964D2F22oTqeaR/52NMUr9QAB5GxQ
X-Spam-Score: 0.0 (/)
X-Scan-Signature: 93238566e09e6e262849b4f805833007
Content-Transfer-Encoding: 7BIT
X-BeenThere: tools-team@ietf.org
X-Mailman-Version: 2.1.5
Precedence: list
List-Id: "The purpose of the TOOLS team is to provide IETF feedback and
	guidance during the development of software tools to support
	various parts of IETF activities." <tools-team.ietf.org>
List-Unsubscribe: <https://www1.ietf.org/mailman/listinfo/tools-team>,
	<mailto:tools-team-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www1.ietf.org/pipermail/tools-team>
List-Post: <mailto:tools-team@ietf.org>
List-Help: <mailto:tools-team-request@ietf.org?subject=help>
List-Subscribe: <https://www1.ietf.org/mailman/listinfo/tools-team>,
	<mailto:tools-team-request@ietf.org?subject=subscribe>
Sender: tools-team-bounces@ietf.org
Errors-To: tools-team-bounces@ietf.org
X-Spam-Score: 0.0 (/)
X-Scan-Signature: 9466e0365fc95844abaf7c3f15a05c7d
Content-Transfer-Encoding: 7BIT

Alex, I don't think I was proposing "opaque" blobs, and I wasn't
proposing "documenting all semi-standard file formats".

I was proposing an open approach where the Internet Draft
authors can provide material that *they* believe will be
useful to others, along with instructions on how to use it.

That is, rather than waiting for some consensus that a format
*must* be recognized by lots of people before it can be submitted,
we go ahead and accept something, even if only ONE author
finds it useful.

What is the harm in accepting this additional material, if
it isn't normative and if the 'standard' formats (XML, TXT,
PDF, PS) are also provided?

Then we wouldn't have to argue about whether 'nroff' was
or wasn't useful to a lot of people. Authors that use
nroff can submit their nroff. If we get lots of nroff files,
we can try to standardize it and even accept it as an
'official' input format, but we need not.

Larry


_______________________________________________
Tools-team mailing list
Tools-team@ietf.org
https://www1.ietf.org/mailman/listinfo/tools-team


From tools-team-bounces@ietf.org  Fri Apr 15 01:07:31 2005
Received: from ietf-mx.ietf.org (ietf-mx.ietf.org [132.151.6.1])
	by ietf.org (8.9.1a/8.9.1a) with ESMTP id BAA02590;
	Fri, 15 Apr 2005 01:07:31 -0400 (EDT)
Received: from megatron.ietf.org ([132.151.6.71])
	by ietf-mx.ietf.org with esmtp (Exim 4.33)
	id 1DMJDM-0004WA-6S; Fri, 15 Apr 2005 01:18:00 -0400
Received: from localhost.localdomain ([127.0.0.1] helo=megatron.ietf.org)
	by megatron.ietf.org with esmtp (Exim 4.32)
	id 1DMJ0U-0008WP-8l; Fri, 15 Apr 2005 01:04:42 -0400
Received: from odin.ietf.org ([132.151.1.176] helo=ietf.org)
	by megatron.ietf.org with esmtp (Exim 4.32) id 1DMJ0R-0008T8-9v
	for tools-team@megatron.ietf.org; Fri, 15 Apr 2005 01:04:39 -0400
Received: from ietf-mx.ietf.org (ietf-mx.ietf.org [132.151.6.1])
	by ietf.org (8.9.1a/8.9.1a) with ESMTP id BAA02411
	for <tools-team@ietf.org>; Fri, 15 Apr 2005 01:04:30 -0400 (EDT)
Received: from c-24-8-141-221.hsd1.co.comcast.net ([24.8.141.221]
	helo=volx.rousskov.org) by ietf-mx.ietf.org with esmtp (Exim 4.33)
	id 1DMJAP-0004Pv-BU
	for tools-team@ietf.org; Fri, 15 Apr 2005 01:14:59 -0400
Received: from localhost.rousskov.org (localhost.rousskov.org [127.0.0.1])
	by volx.rousskov.org (8.13.1/8.13.1) with ESMTP id j3F537gp009435;
	Thu, 14 Apr 2005 23:03:11 -0600 (MDT)
	(envelope-from rousskov@measurement-factory.com)
Date: Thu, 14 Apr 2005 23:03:04 -0600
To: "Larry Masinter" <LMM@acm.org>, "'IETF TOOLS'" <tools-team@ietf.org>
Subject: Re: [Tools-team] Accepting other formats for "source"
References: <0IEX008A06V29F@mailsj-v1.corp.adobe.com>
From: "Alex Rousskov" <rousskov@measurement-factory.com>
Organization: The Measurement Factory
Content-Type: text/plain; format=flowed; delsp=yes; charset=us-ascii
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Message-ID: <opso9cbesziz3etf0c9082f7@localhost.rousskov.org>
In-Reply-To: <0IEX008A06V29F@mailsj-v1.corp.adobe.com>
User-Agent: Opera M2/7.54 (FreeBSD, build 955)
X-Spam-Score: 2.6 (++)
X-Scan-Signature: 9ed51c9d1356100bce94f1ae4ec616a9
Content-Transfer-Encoding: 8bit
X-BeenThere: tools-team@ietf.org
X-Mailman-Version: 2.1.5
Precedence: list
List-Id: "The purpose of the TOOLS team is to provide IETF feedback and
	guidance during the development of software tools to support
	various parts of IETF activities." <tools-team.ietf.org>
List-Unsubscribe: <https://www1.ietf.org/mailman/listinfo/tools-team>,
	<mailto:tools-team-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www1.ietf.org/pipermail/tools-team>
List-Post: <mailto:tools-team@ietf.org>
List-Help: <mailto:tools-team-request@ietf.org?subject=help>
List-Subscribe: <https://www1.ietf.org/mailman/listinfo/tools-team>,
	<mailto:tools-team-request@ietf.org?subject=subscribe>
Sender: tools-team-bounces@ietf.org
Errors-To: tools-team-bounces@ietf.org
X-Spam-Score: 2.6 (++)
X-Scan-Signature: 769a46790fb42fbb0b0cc700c82f7081
Content-Transfer-Encoding: 8bit

On Wed, 2005/04/13 (MDT), <LMM@acm.org> wrote:

> Alex, I don't think I was proposing "opaque" blobs, and I wasn't
> proposing "documenting all semi-standard file formats".
>
> I was proposing an open approach where the Internet Draft
> authors can provide material that *they* believe will be
> useful to others, along with instructions on how to use it.

That's an opaque (to the Toolset and similar tools) blob, IMO.

> That is, rather than waiting for some consensus that a format
> *must* be recognized by lots of people before it can be submitted,
> we go ahead and accept something, even if only ONE author
> finds it useful.
>
> What is the harm in accepting this additional material, if
> it isn't normative and if the 'standard' formats (XML, TXT,
> PDF, PS) are also provided?

Confusion when contents do not match? Complaints from Mr. X that his PDF  
was rejected for auto-posting while Ms. Y's PDF was auto-posted as an  
opaque blob because Ms. Y cheated? Headaches of dealing with folks posting  
something secret by mistake (that the Toolset considered a part of the  
opaque blob)?

Some of these problems can be solved, but only with more work on our part  
and on the part of the Secretariat; without an indication that the  
resulting feature would be used enough.

> Then we wouldn't have to argue about whether 'nroff' was
> or wasn't useful to a lot of people.

I doubt those arguments will cease even if we accept nroff as an official  
IETF source format.

> Authors that use nroff can submit their nroff.

Why would they and how would they know that they can/should?

Thanks,

Alex.

_______________________________________________
Tools-team mailing list
Tools-team@ietf.org
https://www1.ietf.org/mailman/listinfo/tools-team


From tools-team-bounces@ietf.org Mon Apr 18 15:53:42 2005
Received: from localhost.localdomain ([127.0.0.1] helo=megatron.ietf.org)
	by megatron.ietf.org with esmtp (Exim 4.32)
	id 1DNcJS-0000Hs-6f; Mon, 18 Apr 2005 15:53:42 -0400
Received: from odin.ietf.org ([132.151.1.176] helo=ietf.org)
	by megatron.ietf.org with esmtp (Exim 4.32) id 1DNcJR-0000Hi-FA
	for tools-team@megatron.ietf.org; Mon, 18 Apr 2005 15:53:41 -0400
Received: from ietf-mx.ietf.org (ietf-mx.ietf.org [132.151.6.1])
	by ietf.org (8.9.1a/8.9.1a) with ESMTP id PAA24941
	for <tools-team@ietf.org>; Mon, 18 Apr 2005 15:53:39 -0400 (EDT)
Received: from pne-smtpout2-sn2.hy.skanova.net ([81.228.8.164])
	by ietf-mx.ietf.org with esmtp (Exim 4.33) id 1DNcUH-0005Kp-QJ
	for tools-team@ietf.org; Mon, 18 Apr 2005 16:04:55 -0400
Received: from shiraz.levkowetz.com (213.64.173.70) by
	pne-smtpout2-sn2.hy.skanova.net (7.1.026.7)
	id 41E3223E00CE1203; Mon, 18 Apr 2005 21:53:18 +0200
Received: from localhost ([127.0.0.1])
	by shiraz.levkowetz.com with esmtp (Exim 4.50)
	id 1DNcJ4-0005DC-Gg; Mon, 18 Apr 2005 21:53:18 +0200
Message-ID: <4264102D.4030306@levkowetz.com>
Date: Mon, 18 Apr 2005 21:53:17 +0200
From: Henrik Levkowetz <henrik@levkowetz.com>
User-Agent: Mozilla Thunderbird 1.0 (Macintosh/20041206)
X-Accept-Language: en-us, en
MIME-Version: 1.0
To: IETF TOOLS <tools-team@ietf.org>,
	Alex Rousskov <rousskov@measurement-factory.com>
X-Enigmail-Version: 0.89.5.0
X-Enigmail-Supports: pgp-inline, pgp-mime
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 7bit
X-SA-Exim-Connect-IP: 127.0.0.1
X-SA-Exim-Mail-From: henrik@levkowetz.com
X-SA-Exim-Scanned: No (on shiraz.levkowetz.com);
	SAEximRunCond expanded to false
X-Spam-Score: 0.0 (/)
X-Scan-Signature: d6b246023072368de71562c0ab503126
Content-Transfer-Encoding: 7bit
Cc: 
Subject: [Tools-team] Language review of
 draft-ietf-tools-draft-submission-08; Section 8.4, WG ID
X-BeenThere: tools-team@ietf.org
X-Mailman-Version: 2.1.5
Precedence: list
List-Id: "The purpose of the TOOLS team is to provide IETF feedback and
	guidance during the development of software tools to support
	various parts of IETF activities." <tools-team.ietf.org>
List-Unsubscribe: <https://www1.ietf.org/mailman/listinfo/tools-team>,
	<mailto:tools-team-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www1.ietf.org/pipermail/tools-team>
List-Post: <mailto:tools-team@ietf.org>
List-Help: <mailto:tools-team-request@ietf.org?subject=help>
List-Subscribe: <https://www1.ietf.org/mailman/listinfo/tools-team>,
	<mailto:tools-team-request@ietf.org?subject=subscribe>
Sender: tools-team-bounces@ietf.org
Errors-To: tools-team-bounces@ietf.org

Hi Alex,

    I'm having trouble with the following paragraph, which I can't
parse so it makes sense:

   WG ID: Working Group identifier.  WG ID value is empty for drafts
      that are not WG-named drafts.  For example, "sieve" in
      "draft-ietf-sieve-vacation-07" and "opes" in
      "draft-rousskov-opes-ocp-00" are both WG IDs.  Extraction of WG ID
      from a given individual draft identifier is an Enhancement Stage
      feature; the process is imprecise and requires checking with a
      list of known IETF working groups, teams, and similar structures.


The example for "opes" seems to be in conflict with the statement of
the WG ID value being empty for drafts that are not WG-named drafts.


	Henrik

_______________________________________________
Tools-team mailing list
Tools-team@ietf.org
https://www1.ietf.org/mailman/listinfo/tools-team



From tools-team-bounces@ietf.org Mon Apr 18 16:00:26 2005
Received: from localhost.localdomain ([127.0.0.1] helo=megatron.ietf.org)
	by megatron.ietf.org with esmtp (Exim 4.32)
	id 1DNcPy-0003cW-00; Mon, 18 Apr 2005 16:00:26 -0400
Received: from odin.ietf.org ([132.151.1.176] helo=ietf.org)
	by megatron.ietf.org with esmtp (Exim 4.32) id 1DNcPw-0003cF-3r
	for tools-team@megatron.ietf.org; Mon, 18 Apr 2005 16:00:24 -0400
Received: from ietf-mx.ietf.org (ietf-mx.ietf.org [132.151.6.1])
	by ietf.org (8.9.1a/8.9.1a) with ESMTP id QAA27652
	for <tools-team@ietf.org>; Mon, 18 Apr 2005 16:00:21 -0400 (EDT)
Received: from pne-smtpout2-sn1.fre.skanova.net ([81.228.11.159])
	by ietf-mx.ietf.org with esmtp (Exim 4.33) id 1DNcam-0006E4-IK
	for tools-team@ietf.org; Mon, 18 Apr 2005 16:11:37 -0400
Received: from shiraz.levkowetz.com (213.64.173.70) by
	pne-smtpout2-sn1.fre.skanova.net (7.1.026.7)
	id 41E3209600CD9D31; Mon, 18 Apr 2005 22:00:08 +0200
Received: from localhost ([127.0.0.1])
	by shiraz.levkowetz.com with esmtp (Exim 4.50)
	id 1DNcPf-0005aN-Rl; Mon, 18 Apr 2005 22:00:07 +0200
Message-ID: <426411C7.6020901@levkowetz.com>
Date: Mon, 18 Apr 2005 22:00:07 +0200
From: Henrik Levkowetz <henrik@levkowetz.com>
User-Agent: Mozilla Thunderbird 1.0 (Macintosh/20041206)
X-Accept-Language: en-us, en
MIME-Version: 1.0
To: IETF TOOLS <tools-team@ietf.org>,
	Alex Rousskov <rousskov@measurement-factory.com>
X-Enigmail-Version: 0.89.5.0
X-Enigmail-Supports: pgp-inline, pgp-mime
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 7bit
X-SA-Exim-Connect-IP: 127.0.0.1
X-SA-Exim-Mail-From: henrik@levkowetz.com
X-SA-Exim-Scanned: No (on shiraz.levkowetz.com);
	SAEximRunCond expanded to false
X-Spam-Score: 0.0 (/)
X-Scan-Signature: 93238566e09e6e262849b4f805833007
Content-Transfer-Encoding: 7bit
Cc: 
Subject: [Tools-team] Language review of
 draft-ietf-tools-draft-submission-08; Section 8.4, WG Flag
X-BeenThere: tools-team@ietf.org
X-Mailman-Version: 2.1.5
Precedence: list
List-Id: "The purpose of the TOOLS team is to provide IETF feedback and
	guidance during the development of software tools to support
	various parts of IETF activities." <tools-team.ietf.org>
List-Unsubscribe: <https://www1.ietf.org/mailman/listinfo/tools-team>,
	<mailto:tools-team-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www1.ietf.org/pipermail/tools-team>
List-Post: <mailto:tools-team@ietf.org>
List-Help: <mailto:tools-team-request@ietf.org?subject=help>
List-Subscribe: <https://www1.ietf.org/mailman/listinfo/tools-team>,
	<mailto:tools-team-request@ietf.org?subject=subscribe>
Sender: tools-team-bounces@ietf.org
Errors-To: tools-team-bounces@ietf.org

Hi again, Alex,

In response to the recent comments on the draft, as a clarification,
I'd suggest replacing this text in section 8.4:

OLD:

   WG flag: True for WGN drafts and false for all other drafts.  For
      example, "true" for "draft-ietf-sieve-vacation-13".

with
NEW:

   WG flag: True for WGN drafts and false for all other drafts.  For
      example, "true" for "draft-ietf-sieve-vacation-13".  This flag
      only influences the further handling of initial ( -00 version )
      draft submissions.


Thoughts?

	Henrik



_______________________________________________
Tools-team mailing list
Tools-team@ietf.org
https://www1.ietf.org/mailman/listinfo/tools-team



From tools-team-bounces@ietf.org Mon Apr 18 18:44:38 2005
Received: from localhost.localdomain ([127.0.0.1] helo=megatron.ietf.org)
	by megatron.ietf.org with esmtp (Exim 4.32)
	id 1DNeys-0004nb-9U; Mon, 18 Apr 2005 18:44:38 -0400
Received: from odin.ietf.org ([132.151.1.176] helo=ietf.org)
	by megatron.ietf.org with esmtp (Exim 4.32) id 1DNeyr-0004nW-3v
	for tools-team@megatron.ietf.org; Mon, 18 Apr 2005 18:44:37 -0400
Received: from ietf-mx.ietf.org (ietf-mx.ietf.org [132.151.6.1])
	by ietf.org (8.9.1a/8.9.1a) with ESMTP id SAA20470
	for <tools-team@ietf.org>; Mon, 18 Apr 2005 18:44:34 -0400 (EDT)
Received: from measurement-factory.com ([206.168.0.5])
	by ietf-mx.ietf.org with esmtp (Exim 4.33) id 1DNf9j-0007bz-Pd
	for tools-team@ietf.org; Mon, 18 Apr 2005 18:55:53 -0400
Received: from pail.measurement-factory.com (nat.measurement-factory.com
	[206.168.0.3])
	by measurement-factory.com (8.12.9/8.12.9) with ESMTP id j3IMiT3a079766;
	Mon, 18 Apr 2005 16:44:29 -0600 (MDT)
	(envelope-from rousskov@measurement-factory.com)
Date: Mon, 18 Apr 2005 16:43:21 -0600
To: "Henrik Levkowetz" <henrik@levkowetz.com>,
	"IETF TOOLS" <tools-team@ietf.org>
References: <4264102D.4030306@levkowetz.com>
From: "Alex Rousskov" <rousskov@measurement-factory.com>
Organization: The Measurement Factory
Content-Type: text/plain; format=flowed; delsp=yes; charset=us-ascii
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Message-ID: <opspf9ejowiz3etf0c9082f7@pail.measurement-factory.com>
In-Reply-To: <4264102D.4030306@levkowetz.com>
User-Agent: Opera M2/7.54 (FreeBSD, build 955)
X-Spam-Score: 0.0 (/)
X-Scan-Signature: e5ba305d0e64821bf3d8bc5d3bb07228
Content-Transfer-Encoding: 8bit
Cc: 
Subject: [Tools-team] Re: Language review of
	draft-ietf-tools-draft-submission-08; Section 8.4, WG ID
X-BeenThere: tools-team@ietf.org
X-Mailman-Version: 2.1.5
Precedence: list
List-Id: "The purpose of the TOOLS team is to provide IETF feedback and
	guidance during the development of software tools to support
	various parts of IETF activities." <tools-team.ietf.org>
List-Unsubscribe: <https://www1.ietf.org/mailman/listinfo/tools-team>,
	<mailto:tools-team-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www1.ietf.org/pipermail/tools-team>
List-Post: <mailto:tools-team@ietf.org>
List-Help: <mailto:tools-team-request@ietf.org?subject=help>
List-Subscribe: <https://www1.ietf.org/mailman/listinfo/tools-team>,
	<mailto:tools-team-request@ietf.org?subject=subscribe>
Sender: tools-team-bounces@ietf.org
Errors-To: tools-team-bounces@ietf.org

On Mon, 2005/04/18 (MDT), <henrik@levkowetz.com> wrote:

>    WG ID: Working Group identifier.  WG ID value is empty for drafts
>       that are not WG-named drafts.  For example, "sieve" in
>       "draft-ietf-sieve-vacation-07" and "opes" in
>       "draft-rousskov-opes-ocp-00" are both WG IDs.  Extraction of WG ID
>       from a given individual draft identifier is an Enhancement Stage
>       feature; the process is imprecise and requires checking with a
>       list of known IETF working groups, teams, and similar structures.
>
> The example for "opes" seems to be in conflict with the statement of
> the WG ID value being empty for drafts that are not WG-named drafts.

Yes, the second example and the "Enhancement Stage" comment are both
stale. They do not make sense with the current WGN draft definition.
Let's remove them:

    WG ID: Working Group identifier.  WG ID value is empty for drafts
       that are not WG-named drafts.  For example, "sieve" in
       "draft-ietf-sieve-vacation-07" is a WG ID.

You can add a comment saying that the extraction is purely ID-syntax based
and does not use a list of known IETF working groups, teams, and similar
structures.

Thank you,

Alex.




_______________________________________________
Tools-team mailing list
Tools-team@ietf.org
https://www1.ietf.org/mailman/listinfo/tools-team



From tools-team-bounces@ietf.org Mon Apr 18 18:49:55 2005
Received: from localhost.localdomain ([127.0.0.1] helo=megatron.ietf.org)
	by megatron.ietf.org with esmtp (Exim 4.32)
	id 1DNf3z-0004y7-Cq; Mon, 18 Apr 2005 18:49:55 -0400
Received: from odin.ietf.org ([132.151.1.176] helo=ietf.org)
	by megatron.ietf.org with esmtp (Exim 4.32) id 1DNf3x-0004xz-Ia
	for tools-team@megatron.ietf.org; Mon, 18 Apr 2005 18:49:53 -0400
Received: from ietf-mx.ietf.org (ietf-mx.ietf.org [132.151.6.1])
	by ietf.org (8.9.1a/8.9.1a) with ESMTP id SAA20863
	for <tools-team@ietf.org>; Mon, 18 Apr 2005 18:49:50 -0400 (EDT)
Received: from measurement-factory.com ([206.168.0.5])
	by ietf-mx.ietf.org with esmtp (Exim 4.33) id 1DNfEq-0007ti-Ae
	for tools-team@ietf.org; Mon, 18 Apr 2005 19:01:09 -0400
Received: from pail.measurement-factory.com (nat.measurement-factory.com
	[206.168.0.3])
	by measurement-factory.com (8.12.9/8.12.9) with ESMTP id j3IMno3a079901;
	Mon, 18 Apr 2005 16:49:51 -0600 (MDT)
	(envelope-from rousskov@measurement-factory.com)
Date: Mon, 18 Apr 2005 16:48:43 -0600
To: "Henrik Levkowetz" <henrik@levkowetz.com>,
	"IETF TOOLS" <tools-team@ietf.org>
References: <426411C7.6020901@levkowetz.com>
From: "Alex Rousskov" <rousskov@measurement-factory.com>
Organization: The Measurement Factory
Content-Type: text/plain; format=flowed; delsp=yes; charset=us-ascii
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Message-ID: <opspf9nhwqiz3etf0c9082f7@pail.measurement-factory.com>
In-Reply-To: <426411C7.6020901@levkowetz.com>
User-Agent: Opera M2/7.54 (FreeBSD, build 955)
X-Spam-Score: 0.0 (/)
X-Scan-Signature: e5ba305d0e64821bf3d8bc5d3bb07228
Content-Transfer-Encoding: 8bit
Cc: 
Subject: [Tools-team] Re: Language review of
	draft-ietf-tools-draft-submission-08; Section 8.4, WG Flag
X-BeenThere: tools-team@ietf.org
X-Mailman-Version: 2.1.5
Precedence: list
List-Id: "The purpose of the TOOLS team is to provide IETF feedback and
	guidance during the development of software tools to support
	various parts of IETF activities." <tools-team.ietf.org>
List-Unsubscribe: <https://www1.ietf.org/mailman/listinfo/tools-team>,
	<mailto:tools-team-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www1.ietf.org/pipermail/tools-team>
List-Post: <mailto:tools-team@ietf.org>
List-Help: <mailto:tools-team-request@ietf.org?subject=help>
List-Subscribe: <https://www1.ietf.org/mailman/listinfo/tools-team>,
	<mailto:tools-team-request@ietf.org?subject=subscribe>
Sender: tools-team-bounces@ietf.org
Errors-To: tools-team-bounces@ietf.org

On Mon, 2005/04/18 (MDT), <henrik@levkowetz.com> wrote:

> Hi again, Alex,
>
> In response to the recent comments on the draft, as a clarification,
> I'd suggest replacing this text in section 8.4:
>
> OLD:
>
>    WG flag: True for WGN drafts and false for all other drafts.  For
>       example, "true" for "draft-ietf-sieve-vacation-13".
>
> with
> NEW:
>
>    WG flag: True for WGN drafts and false for all other drafts.  For
>       example, "true" for "draft-ietf-sieve-vacation-13".  This flag
>       only influences the further handling of initial ( -00 version )
>       draft submissions.

It would be better if the added sentence explicitly limited its scope to
"this document" or somesuch. It is possible that WG flag will influence
more than just 00 submissions, eventually. While we may need a better
scheme to set the flag or extract WG ID, the notions of a "WG flag" and
"WG ID" are sound, IMO.

Said that, I would not object to your wording even it is added "as is".

Thanks,

Alex.

_______________________________________________
Tools-team mailing list
Tools-team@ietf.org
https://www1.ietf.org/mailman/listinfo/tools-team



From tools-team-bounces@ietf.org Mon Apr 18 19:17:02 2005
Received: from localhost.localdomain ([127.0.0.1] helo=megatron.ietf.org)
	by megatron.ietf.org with esmtp (Exim 4.32)
	id 1DNfUD-000117-Vu; Mon, 18 Apr 2005 19:17:02 -0400
Received: from odin.ietf.org ([132.151.1.176] helo=ietf.org)
	by megatron.ietf.org with esmtp (Exim 4.32) id 1DNeqp-0004Yu-7A
	for tools-team@megatron.ietf.org; Mon, 18 Apr 2005 18:36:19 -0400
Received: from ietf-mx.ietf.org (ietf-mx.ietf.org [132.151.6.1])
	by ietf.org (8.9.1a/8.9.1a) with ESMTP id SAA19980
	for <tools-team@ietf.org>; Mon, 18 Apr 2005 18:36:16 -0400 (EDT)
Received: from pne-smtpout2-sn2.hy.skanova.net ([81.228.8.164])
	by ietf-mx.ietf.org with esmtp (Exim 4.33) id 1DNf1e-0007Om-35
	for tools-team@ietf.org; Mon, 18 Apr 2005 18:47:34 -0400
Received: from shiraz.levkowetz.com (213.64.173.70) by
	pne-smtpout2-sn2.hy.skanova.net (7.1.026.7)
	id 41E3223E00CE9CC2; Tue, 19 Apr 2005 00:36:04 +0200
Received: from localhost ([127.0.0.1])
	by shiraz.levkowetz.com with esmtp (Exim 4.50)
	id 1DNeqW-0007Sk-Bw; Tue, 19 Apr 2005 00:36:01 +0200
Message-ID: <4264364F.80705@levkowetz.com>
Date: Tue, 19 Apr 2005 00:35:59 +0200
From: Henrik Levkowetz <henrik@levkowetz.com>
User-Agent: Mozilla Thunderbird 1.0 (Macintosh/20041206)
X-Accept-Language: en-us, en
MIME-Version: 1.0
To: IETF TOOLS <tools-team@ietf.org>,
	Alex Rousskov <rousskov@measurement-factory.com>
X-Enigmail-Version: 0.89.5.0
X-Enigmail-Supports: pgp-inline, pgp-mime
Content-Type: multipart/mixed; boundary="------------000600090402000505080603"
X-SA-Exim-Connect-IP: 127.0.0.1
X-SA-Exim-Mail-From: henrik@levkowetz.com
X-SA-Exim-Scanned: No (on shiraz.levkowetz.com);
	SAEximRunCond expanded to false
X-Spam-Score: 0.1 (/)
X-Scan-Signature: e4bc10b12db1e5294e2417a6f69c34ce
X-Mailman-Approved-At: Mon, 18 Apr 2005 19:17:00 -0400
Cc: Brian E Carpenter <brc@zurich.ibm.com>
Subject: [Tools-team] Language review of draft-ietf-tools-draft-submission-08
X-BeenThere: tools-team@ietf.org
X-Mailman-Version: 2.1.5
Precedence: list
List-Id: "The purpose of the TOOLS team is to provide IETF feedback and
	guidance during the development of software tools to support
	various parts of IETF activities." <tools-team.ietf.org>
List-Unsubscribe: <https://www1.ietf.org/mailman/listinfo/tools-team>,
	<mailto:tools-team-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www1.ietf.org/pipermail/tools-team>
List-Post: <mailto:tools-team@ietf.org>
List-Help: <mailto:tools-team-request@ietf.org?subject=help>
List-Subscribe: <https://www1.ietf.org/mailman/listinfo/tools-team>,
	<mailto:tools-team-request@ietf.org?subject=subscribe>
Sender: tools-team-bounces@ietf.org
Errors-To: tools-team-bounces@ietf.org

This is a multi-part message in MIME format.
--------------000600090402000505080603
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 7bit

Hi Alex,

    Ok, so I've completed the language review and added some 'the',
'a' and made similar changes; and also provisionally incorporated
the clarification I proposed earlier in a separate mail.  
Clarification is still needed, I think, for the other issue I brought
up.  Enclosed is the revised .xml source, and the resulting .txt file.
A diff between this and your latest version is available here:

http://ietf.levkowetz.com/drafts/tools/draft-submission/draft-ietf-tools-draft-submission-08.c-from-08.b.diff.html

Would you check my changes, and submit this version (assuming you
agree to the changes, of course) once you've fixed the one
remaining unclear formulation?


    Regards,

	Henrik


--------------000600090402000505080603
Content-Type: application/x-vnd.mozilla.maybe-text;
	name="ietf.levkowetz.com/drafts/tools/draft-submission/draft-ietf-tools-draft-submission-08.c.txt"
Content-Disposition: attachment;
	filename="ietf.levkowetz.com/drafts/tools/draft-submission/draft-ietf-tools-draft-submission-08.c.txt"
Content-Transfer-Encoding: base64

CgoKVG9vbHMgdGVhbSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIEEuIFJvdXNza292CkludGVybmV0LURyYWZ0ICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBUaGUgTWVhc3VyZW1lbnQgRmFjdG9yeQpFeHBpcmVzOiBPY3Rv
YmVyIDIxLCAyMDA1ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQXByaWwgMTks
IDIwMDUKCgogICAgICAgICAgIFJlcXVpcmVtZW50cyBmb3IgYW4gSUVURiBEcmFmdCBTdWJt
aXNzaW9uIFRvb2xzZXQKICAgICAgICAgICAgICAgICAgZHJhZnQtaWV0Zi10b29scy1kcmFm
dC1zdWJtaXNzaW9uLThiCgpTdGF0dXMgb2YgdGhpcyBNZW1vCgogICBCeSBzdWJtaXR0aW5n
IHRoaXMgSW50ZXJuZXQtRHJhZnQsIGVhY2ggYXV0aG9yIHJlcHJlc2VudHMgdGhhdCBhbnkK
ICAgYXBwbGljYWJsZSBwYXRlbnQgb3Igb3RoZXIgSVBSIGNsYWltcyBvZiB3aGljaCBoZSBv
ciBzaGUgaXMgYXdhcmUKICAgaGF2ZSBiZWVuIG9yIHdpbGwgYmUgZGlzY2xvc2VkLCBhbmQg
YW55IG9mIHdoaWNoIGhlIG9yIHNoZSBiZWNvbWVzCiAgIGF3YXJlIHdpbGwgYmUgZGlzY2xv
c2VkLCBpbiBhY2NvcmRhbmNlIHdpdGggU2VjdGlvbiA2IG9mIEJDUCA3OS4KCiAgIEludGVy
bmV0LURyYWZ0cyBhcmUgd29ya2luZyBkb2N1bWVudHMgb2YgdGhlIEludGVybmV0IEVuZ2lu
ZWVyaW5nCiAgIFRhc2sgRm9yY2UgKElFVEYpLCBpdHMgYXJlYXMsIGFuZCBpdHMgd29ya2lu
ZyBncm91cHMuICBOb3RlIHRoYXQKICAgb3RoZXIgZ3JvdXBzIG1heSBhbHNvIGRpc3RyaWJ1
dGUgd29ya2luZyBkb2N1bWVudHMgYXMgSW50ZXJuZXQtCiAgIERyYWZ0cy4KCiAgIEludGVy
bmV0LURyYWZ0cyBhcmUgZHJhZnQgZG9jdW1lbnRzIHZhbGlkIGZvciBhIG1heGltdW0gb2Yg
c2l4IG1vbnRocwogICBhbmQgbWF5IGJlIHVwZGF0ZWQsIHJlcGxhY2VkLCBvciBvYnNvbGV0
ZWQgYnkgb3RoZXIgZG9jdW1lbnRzIGF0IGFueQogICB0aW1lLiAgSXQgaXMgaW5hcHByb3By
aWF0ZSB0byB1c2UgSW50ZXJuZXQtRHJhZnRzIGFzIHJlZmVyZW5jZQogICBtYXRlcmlhbCBv
ciB0byBjaXRlIHRoZW0gb3RoZXIgdGhhbiBhcyAid29yayBpbiBwcm9ncmVzcy4iCgogICBU
aGUgbGlzdCBvZiBjdXJyZW50IEludGVybmV0LURyYWZ0cyBjYW4gYmUgYWNjZXNzZWQgYXQK
ICAgaHR0cDovL3d3dy5pZXRmLm9yZy9pZXRmLzFpZC1hYnN0cmFjdHMudHh0LgoKICAgVGhl
IGxpc3Qgb2YgSW50ZXJuZXQtRHJhZnQgU2hhZG93IERpcmVjdG9yaWVzIGNhbiBiZSBhY2Nl
c3NlZCBhdAogICBodHRwOi8vd3d3LmlldGYub3JnL3NoYWRvdy5odG1sLgoKICAgVGhpcyBJ
bnRlcm5ldC1EcmFmdCB3aWxsIGV4cGlyZSBvbiBPY3RvYmVyIDIxLCAyMDA1LgoKQ29weXJp
Z2h0IE5vdGljZQoKICAgQ29weXJpZ2h0IChDKSBUaGUgSW50ZXJuZXQgU29jaWV0eSAoMjAw
NSkuCgpBYnN0cmFjdAoKICAgVGhpcyBkb2N1bWVudCBzcGVjaWZpZXMgcmVxdWlyZW1lbnRz
IGZvciBhbiBJRVRGIHRvb2xzZXQgdG8KICAgZmFjaWxpdGF0ZSBJbnRlcm5ldC1EcmFmdCBz
dWJtaXNzaW9uLCB2YWxpZGF0aW9uLCBhbmQgcG9zdGluZy4KCgoKCgoKCgoKClJvdXNza292
ICAgICAgICAgICAgICAgIEV4cGlyZXMgT2N0b2JlciAyMSwgMjAwNSAgICAgICAgICAgICAg
ICBbUGFnZSAxXQoMCkludGVybmV0LURyYWZ0ICAgICBJRCBTdWJtaXNzaW9uIFRvb2xzZXQ6
IFJlcXVpcmVtZW50cyAgICAgICAgQXByaWwgMjAwNQoKClRhYmxlIG9mIENvbnRlbnRzCgog
ICAxLiAgSW50cm9kdWN0aW9uIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAu
IC4gLiAuIC4gLiAuIC4gIDMKICAgMi4gIFN0YXRlIG9mIHRoaXMgZHJhZnQgIC4gLiAuIC4g
LiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuICAzCiAgIDMuICBTY29wZSAgLiAu
IC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAg
MwogICA0LiAgTm90YXRpb24gYW5kIFRlcm1pbm9sb2d5IC4gLiAuIC4gLiAuIC4gLiAuIC4g
LiAuIC4gLiAuIC4gLiAuIC4gIDQKICAgNS4gIFN0YXR1cyBxdW8gLiAuIC4gLiAuIC4gLiAu
IC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuICA1CiAgIDYuICBPdmVyYWxs
IFRvb2xzZXQgb3BlcmF0aW9uICAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4g
LiAgNwogICA3LiAgVXBsb2FkIHBhZ2UgIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAu
IC4gLiAuIC4gLiAuIC4gLiAuIC4gMTAKICAgOC4gIENoZWNrIGFjdGlvbiAuIC4gLiAuIC4g
LiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIDEwCiAgICAgOC4xICAg
UHJlcHJvY2Vzc2luZyAgLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAu
IC4gLiAxMQogICAgIDguMiAgIFByb2Nlc3NpbmcgLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4g
LiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gMTIKICAgICA4LjMgICBTdG9yYWdlICAuIC4gLiAu
IC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIDEyCiAgICAgOC40
ICAgRXh0cmFjdGlvbiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4g
LiAuIC4gLiAxMgogICAgIDguNSAgIFZhbGlkYXRpb24gLiAuIC4gLiAuIC4gLiAuIC4gLiAu
IC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gMTQKICAgICAgIDguNS4xICAgQWJzb2x1dGUg
cmVxdWlyZW1lbnRzICAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIDE1CiAgICAg
ICA4LjUuMiAgIERlc2lyYWJsZSBmZWF0dXJlcyAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAu
IC4gLiAuIC4gLiAxNgogICAgICAgOC41LjMgICBEb1MgdGhyZXNob2xkcyAuIC4gLiAuIC4g
LiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gMTcKICAgICAgIDguNS40ICAgV0cgYXBw
cm92YWwgIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIDE4CiAg
IDkuICBDaGVjayBwYWdlIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4g
LiAuIC4gLiAuIC4gLiAxOAogICAgIDkuMSAgIEV4dGVybmFsIG1ldGEtZGF0YSAuIC4gLiAu
IC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gMTkKICAgMTAuICAgUG9zdCBOb3cg
YWN0aW9uICAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIDIw
CiAgICAgMTAuMSAgUmVjZWlwdCBwYWdlIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAu
IC4gLiAuIC4gLiAuIC4gLiAyMQogICAxMS4gICBBZGp1c3QgYWN0aW9uICAuIC4gLiAuIC4g
LiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gMjEKICAgMTIuICAgQWRqdXN0
IHBhZ2UgIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAu
IDIxCiAgIDEzLiAgIFBvc3QgTWFudWFsbHkgYWN0aW9uIC4gLiAuIC4gLiAuIC4gLiAuIC4g
LiAuIC4gLiAuIC4gLiAuIC4gLiAyMgogICAxNC4gICBSZWNlaXB0IHBhZ2UgLiAuIC4gLiAu
IC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gMjIKICAgMTUuICAgQnlw
YXNzaW5nIHRoZSBUb29sc2V0ICAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4g
LiAuIDIyCiAgIDE2LiAgIEVtYWlsIGludGVyZmFjZSAgLiAuIC4gLiAuIC4gLiAuIC4gLiAu
IC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAyMwogICAxNy4gICBJbXBsZW1lbnRhdGlvbiBzdGFn
ZXMgIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gMjYKICAgMTguICAg
VGVzdGluZyAgLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAu
IC4gLiAuIDI3CiAgIDE5LiAgIFNlY3VyaXR5IENvbnNpZGVyYXRpb25zICAuIC4gLiAuIC4g
LiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAyNwogICAyMC4gICBJQU5BIENvbnNpZGVyYXRp
b25zICAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gMjgKICAgMjEu
ICAgQ29tcGxpYW5jZSAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4g
LiAuIC4gLiAuIDI4CiAgIEEuICBDb21wYXJpc29uIHdpdGggY3VycmVudCBwcm9jZWR1cmVz
IC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAyOAogICBCLiAgQWNrbm93bGVkZ21lbnRz
ICAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gMjkKICAg
Qy4gIENoYW5nZSBsb2cgLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAu
IC4gLiAuIC4gLiAuIDI5CiAgIDIyLiAgIFJlZmVyZW5jZXMgLiAuIC4gLiAuIC4gLiAuIC4g
LiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAzOQogICAgIDIyLjEgIE5vcm1hdGl2
ZSBSZWZlcmVuY2VzIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gMzkK
ICAgICAyMi4yICBJbmZvcm1hdGl2ZSBSZWZlcmVuY2VzIC4gLiAuIC4gLiAuIC4gLiAuIC4g
LiAuIC4gLiAuIC4gLiAuIDQwCiAgICAgICBBdXRob3IncyBBZGRyZXNzIC4gLiAuIC4gLiAu
IC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiA0MAogICAgICAgSW50ZWxsZWN0
dWFsIFByb3BlcnR5IGFuZCBDb3B5cmlnaHQgU3RhdGVtZW50cyAuIC4gLiAuIC4gLiAuIC4g
NDEKCgoKCgoKCgoKUm91c3Nrb3YgICAgICAgICAgICAgICAgRXhwaXJlcyBPY3RvYmVyIDIx
LCAyMDA1ICAgICAgICAgICAgICAgIFtQYWdlIDJdCgwKSW50ZXJuZXQtRHJhZnQgICAgIElE
IFN1Ym1pc3Npb24gVG9vbHNldDogUmVxdWlyZW1lbnRzICAgICAgICBBcHJpbCAyMDA1CgoK
MS4gIEludHJvZHVjdGlvbgoKICAgUHVibGljIEludGVybmV0LURyYWZ0cyBhcmUgdGhlIHBy
aW1hcnkgbWVhbnMgb2Ygc3RydWN0dXJlZAogICBjb21tdW5pY2F0aW9uIHdpdGhpbiB0aGUg
SUVURi4gIEN1cnJlbnQgSW50ZXJuZXQtRHJhZnQgc3VibWlzc2lvbiBhbmQKICAgcG9zdGlu
ZyBtZWNoYW5pc21zIGhpbmRlciBlZmZpY2llbnQgYW5kIHRpbWVseSBjb21tdW5pY2F0aW9u
IHdoaWxlCiAgIGNyZWF0aW5nIGFuIHVubmVjZXNzYXJ5IGxvYWQgb24gdGhlIElFVEYgU2Vj
cmV0YXJpYXQuICBUaGUgSUVURiBUb29scwogICB0ZWFtIHJlY29tbWVuZHMgZm9ybWFsaXph
dGlvbiBhbmQgYXV0b21hdGlvbiBvZiB0aGUgY3VycmVudAogICBtZWNoYW5pc21zLiAgVGhp
cyBkb2N1bWVudCBjb250YWlucyBzcGVjaWZpYyBhdXRvbWF0aW9uIHJlcXVpcmVtZW50cy4K
CiAgIFRoZSBJRVRGIFNlY3JldGFyaWF0IGFuZCBtYW55IElFVEYgcGFydGljaXBhbnRzIGhh
dmUgbG9uZyBiZWVuCiAgIHByb3BvbmVudHMgb2YgYXV0b21hdGlvbi4gIFRoaXMgZG9jdW1l
bnQgYXR0ZW1wdHMgdG8gcmVmbGVjdCB0aGVpcgogICBrbm93biBuZWVkcyBhbmQgd2lzaGVz
LCBhcyBpbnRlcnByZXRlZCBieSB0aGUgVG9vbHMgdGVhbS4KCjIuICBTdGF0ZSBvZiB0aGlz
IGRyYWZ0CgogICBUaGlzIGRyYWZ0IHZlcnNpb24gYXR0ZW1wdHMgdG8gcmVzb2x2ZSBhbGwg
a25vd24gaXNzdWVzIGFuZCBhZGRyZXNzCiAgIGFsbCBMYXN0IENhbGwgY29tbWVudHMgcmVj
ZWl2ZWQgYnkgMjAwNS8wNC8xMi4gIFRoZSBUb29scyB0ZWFtIG1heQogICBhc2sgdGhlIElF
U0cgdG8gaXNzdWUgYW5vdGhlciBMYXN0IENhbGwgZm9yIGl0LgoKICAgSWYgeW91IGRlY2lk
ZSB0byByZXZpZXcgdGhlIGRyYWZ0IGF0IHRoaXMgbGF0ZSBzdGFnZSwgcGxlYXNlIGxpbWl0
CiAgIHlvdXIgY29tbWVudHMgdG8gY3JpdGljYWwgaXNzdWVzLiAgUGxlYXNlIGNoZWNrIHRo
ZSBDaGFuZ2UgbG9nIGluCiAgIEFwcGVuZGl4IEMgYmVmb3JlIHByb3Bvc2luZyBjaGFuZ2Vz
IGFzIGl0IGlzIHBvc3NpYmxlIHRoYXQgeW91ciBpZGVhCiAgIGhhcyBhbHJlYWR5IGJlZW4g
ZGlzY3Vzc2VkLiAgUGxlYXNlIHBvc3QgY29tbWVudHMgb24gdGhlCiAgIHRvb2xzLWRpc2N1
c3NAaWV0Zi5vcmcgbWFpbGluZyBsaXN0IG9yIGVtYWlsIHRoZW0gZGlyZWN0bHkgdG8gdGhl
CiAgIGF1dGhvci4KCiAgIFJGQyBFZGl0b3IgTm90ZTogUGxlYXNlIHJlbW92ZSB0aGlzIHNl
Y3Rpb24gZm9yIHRoZSBmaW5hbCBwdWJsaWNhdGlvbgogICBvZiB0aGUgZG9jdW1lbnQuICBJ
dCBoYXMgYmVlbiBpbnNwaXJlZCBieQogICBkcmFmdC1yb3Vzc2tvdi1uZXd0cmstaWQtc3Rh
dGUgYW5kIHJlbGF0ZWQgTkVXVFJLIFdHIGRpc2N1c3Npb25zLgoKMy4gIFNjb3BlCgogICBU
aGUgRHJhZnQgU3VibWlzc2lvbiBUb29sc2V0IGRpc2N1c3NlZCBpbiB0aGlzIGRvY3VtZW50
IGlzIGFib3V0CiAgIGdldHRpbmcgYSBzaW5nbGUgbmV3IHZlcnNpb24gb2YgYW4gSW50ZXJu
ZXQtRHJhZnQgZnJvbSBhbiBJRVRGCiAgIHBhcnRpY2lwYW50IHRvIHRoZSBJRVRGIGRyYWZ0
IHJlcG9zaXRvcnkuICBBIHNpbmdsZSBkcmFmdCB2ZXJzaW9uIG1heQogICBpbmNsdWRlIHNl
dmVyYWwgZm9ybWF0cywgYW5kIGRlYWxpbmcgd2l0aCB0aG9zZSBmb3JtYXRzIGlzIGluIHNj
b3BlCiAgIGZvciB0aGUgVG9vbHNldC4gIERlZmluaXRpb24gYW5kIHNvdXJjZXMgb2YgZHJh
ZnQgbWV0YS1pbmZvcm1hdGlvbgogICAodG8gYmUgdXNlZCBpbiBTZWNyZXRhcmlhdCBkYXRh
YmFzZXMgYW5kIGVsc2V3aGVyZSkgYXJlIGluIHNjb3BlLgogICBTdWJtaXR0ZXIgYXV0aGVu
dGljYXRpb24gYW5kIHN1Ym1pc3Npb24gYXV0aG9yaXphdGlvbiBpcyBpbiBzY29wZS4KCiAg
IERyYWZ0IHBvc3RpbmcgbWF5IHJlc3VsdCBpbiB2YXJpb3VzIG5vdGlmaWNhdGlvbnMgc2Vu
dCB0byBpbnRlcmVzdGVkCiAgIHBhcnRpZXMuICBXaGlsZSB0aGlzIGRvY3VtZW50IHJlY29t
bWVuZHMgYSBzdWJzZXQgb2Ygbm90aWZpY2F0aW9uCiAgIHRhcmdldHMsIGRldGFpbHMgb2Yg
bm90aWZpY2F0aW9ucyBhcmUgb3V0IG9mIHNjb3BlLgoKICAgQ3JlYXRpb24gb2YgbmV3IGRy
YWZ0cyBvciBuZXcgZHJhZnQgdmVyc2lvbnMgYXMgd2VsbCBhcyBtYW5pcHVsYXRpb24sCiAg
IHZpc3VhbGl6YXRpb24sIGFuZCBpbnRlcmFjdGlvbiB3aXRoIHRoZSBkcmFmdHMgYWxyZWFk
eSBpbiB0aGUKICAgcmVwb3NpdG9yeSBhcmUgb3V0IG9mIHNjb3BlLiAgRHJhZnQgZXhwaXJh
dGlvbiBhbmQgYXJjaGl2aW5nIG9mIG9sZAogICBkcmFmdCB2ZXJzaW9ucyBhcmUgb3V0IG9m
IHNjb3BlLgoKCgpSb3Vzc2tvdiAgICAgICAgICAgICAgICBFeHBpcmVzIE9jdG9iZXIgMjEs
IDIwMDUgICAgICAgICAgICAgICAgW1BhZ2UgM10KDApJbnRlcm5ldC1EcmFmdCAgICAgSUQg
U3VibWlzc2lvbiBUb29sc2V0OiBSZXF1aXJlbWVudHMgICAgICAgIEFwcmlsIDIwMDUKCgog
ICBUaGUgc2V0IG9mIHJlcXVpcmVtZW50cyBpbiB0aGlzIGRvY3VtZW50IGlzIG5vdCBtZWFu
dCB0byBiZQogICBjb21wcmVoZW5zaXZlIG9yIGZpbmFsLiAgT3RoZXIgSUVURiBkb2N1bWVu
dHMgb3IgcHJvY2VkdXJlcyBtYXkKICAgcmVxdWlyZSBhZGRpdGlvbmFsIGZ1bmN0aW9uYWxp
dHkgZnJvbSB0aGUgVG9vbHNldC4gIEZvciBleGFtcGxlLCBpdAogICBpcyBwb3NzaWJsZSB0
aGF0IHRoZSBUb29sc2V0IHdpbGwgYmUgcmVxdWlyZWQgdG8gaGFuZGxlIGRyYWZ0IHNvdXJj
ZQogICBmb3JtYXRzIG90aGVyIHRoYW4gcGxhaW4gdGV4dCBhbmQgWE1MLgoKNC4gIE5vdGF0
aW9uIGFuZCBUZXJtaW5vbG9neQoKICAgVGhlIGZvbGxvd2luZyB0ZXJtcyBhcmUgdG8gYmUg
aW50ZXJwcmV0ZWQgYWNjb3JkaW5nIHRvIHRoZWlyCiAgIGRlZmluaXRpb25zIGJlbG93LgoK
ICAgcG9zdGVkIGRyYWZ0OiBBIGRyYWZ0IGFjY2VwdGVkIGludG8gdGhlIHB1YmxpYyBJRVRG
IGRyYWZ0IHJlcG9zaXRvcnkKICAgICAgYW5kLCBoZW5jZSwgcHVibGljbHkgYXZhaWxhYmxl
IGZyb20gdGhlIElFVEYgd2ViIHNpdGUuICBQb3N0aW5nIG9mCiAgICAgIGEgZHJhZnQgZG9l
cyBub3QgaW1wbHkgYW55IElFVEYgb3IgSUVTRyByZXZpZXcgYW5kIGVuZG9yc2VtZW50LgoK
ICAgZHJhZnQgdmVyc2lvbjogQSBtZWFudC10by1iZS1wdWJsaWMgc25hcHNob3Qgb2YgYW4g
SW50ZXJuZXQtRHJhZnQKICAgICAgd2l0aCBhIG1lYW50LXRvLWJlLXVuaXF1ZSB2ZXJzaW9u
IG51bWJlci4gIEFsc28ga25vd24gYXMgImRyYWZ0CiAgICAgIHJldmlzaW9uIi4KCiAgIGRy
YWZ0IGZvcm1hdDogQW55IGRyYWZ0IHNvdXJjZSBvciBwcmVzZW50YXRpb24gZm9ybWF0LCBp
bmNsdWRpbmcKICAgICAgb3JpZ2luYWwgYW5kIHByZXByb2Nlc3NlZCBYTUwsIG9yaWdpbmFs
IG9yIGdlbmVyYXRlZCBwbGFpbiB0ZXh0IGFzCiAgICAgIHdlbGwgYXMgUERGLCBQb3N0U2Ny
aXB0LCBhbmQgSFRNTCBmb3JtYXRzLgoKICAgcHJpbWFyeSBkcmFmdCBmb3JtYXQ6IFRoZSBm
aXJzdCBhdmFpbGFibGUgZHJhZnQgZm9ybWF0IGZyb20gdGhlCiAgICAgIGZvbGxvd2luZyBs
aXN0OiBwbGFpbiB0ZXh0LCBQREYsIFBvc3RTY3JpcHQsIG9yIFhNTC4KCiAgIFdHLW5hbWVk
IGRyYWZ0OiBBIGRyYWZ0IGZvciB3aGljaCBpZGVudGlmaWVyIChhLmsuYS4gZmlsZW5hbWUp
IGlzCiAgICAgIGtub3duIGFuZCBzdGFydHMgd2l0aCAiZHJhZnQtaWV0Zi0iLiAgQWJicmV2
aWF0ZWQgYXMgIldHTiBkcmFmdCIuCiAgICAgIEV4Y2VwdGlvbnMgbm90d2l0aHN0YW5kaW5n
LCBXRy1uYW1lZCBkcmFmdHMgYXJlIHVzdWFsbHkgY29udHJvbGxlZAogICAgICBieSBJRVRG
IHdvcmtpbmcgZ3JvdXBzIGFuZCB2aWNlIHZlcnNhLiAgVGhlIGhhbmRsaW5nIG9mIHN1Y2gK
ICAgICAgbmFtaW5nIGV4Y2VwdGlvbnMgaXMgb3V0c2lkZSBvZiB0aGlzIGRvY3VtZW50IHNj
b3BlLgoKICAgaW5kaXZpZHVhbCBkcmFmdDogQSBkcmFmdCBvdGhlciB0aGFuIGEgV0dOIGRy
YWZ0LgoKICAgc3VibWl0dGVyOiBBIGh1bWFuIG9yIHNvZnR3YXJlIGFnZW50IGluaXRpYXRp
bmcgc3VibWlzc2lvbiBvZiBhbgogICAgICBJbnRlcm5ldC1EcmFmdCB2ZXJzaW9uIGZvciB2
YWxpZGF0aW9uIG9yIHBvc3RpbmcuICBJbiBzb21lIGNhc2VzLAogICAgICB0aGUgU2VjcmV0
YXJpYXQgc3RhZmYgZG9lcyB0aGUgYWN0dWFsIHN1Ym1pc3Npb24sIGJ1dCBhbHdheXMgb24K
ICAgICAgYmVoYWxmIG9mIGEgc3VibWl0dGVyLiAgSW4gc29tZSBjYXNlcyAoaW5jbHVkaW5n
IGJ1dCBub3QgbGltaXRlZAogICAgICB0byBtYWxpY2lvdXMgYXR0YWNrcyksIHRoZSBzdWJt
aXR0ZXIgaXMgbm90IHRoZSBkcmFmdCBhdXRob3IuCgogICBleHBlY3RlZCBzdWJtaXR0ZXI6
IEEgc3VibWl0dGVyIHRoYXQgaXMgYXV0aG9yaXplZCBieSBJRVRGIHJ1bGVzIHRvCiAgICAg
IHBvc3QgYSBnaXZlbiBkcmFmdC4gIFRoaXMgaW5jbHVkZXMgYSBkcmFmdCBhdXRob3Igb3Ig
ZWRpdG9yCiAgICAgIChsaXN0ZWQgaW4gdGhlIGRyYWZ0IHRleHQpLCBhIGNvcnJlc3BvbmRp
bmcgV0cgQ2hhaXIsIG9yIGFuIElFU0cKICAgICAgbWVtYmVyLgoKCgoKCgoKUm91c3Nrb3Yg
ICAgICAgICAgICAgICAgRXhwaXJlcyBPY3RvYmVyIDIxLCAyMDA1ICAgICAgICAgICAgICAg
IFtQYWdlIDRdCgwKSW50ZXJuZXQtRHJhZnQgICAgIElEIFN1Ym1pc3Npb24gVG9vbHNldDog
UmVxdWlyZW1lbnRzICAgICAgICBBcHJpbCAyMDA1CgoKICAgYXV0aG9yaXplZCBzdWJtaXR0
ZXI6IEFuIGV4cGVjdGVkIHN1Ym1pdHRlciBhdXRoZW50aWNhdGVkIGJ5IHRoZQogICAgICBU
b29sc2V0LiAgQXV0aGVudGljYXRpb24gaXMgaW5pdGlhbGx5IGxpbWl0ZWQgdG8gdmVyaWZ5
aW5nCiAgICAgIHN1Ym1pdHRlciBhY2Nlc3MgdG8gc3VibWl0dGVyJ3MgZW1haWwgYWRkcmVz
cy4KCiAgIGltbWVkaWF0ZWx5OiBXaXRob3V0IGh1bWFuIGludGVyYWN0aW9uIG9yIGFydGlm
aWNpYWwgc29mdHdhcmUgZGVsYXlzCiAgICAgIGFuZCB3aXRoaW4gYSBmZXcgc2Vjb25kcy4K
CiAgIFRoZSBUb29sc2V0IGlzIHNwZWNpZmllZCB1c2luZyBhIHNldCBvZiBub3JtYXRpdmUg
cmVxdWlyZW1lbnRzLgogICBUaGVzZSByZXF1aXJlbWVudHMgYXJlIEVuZ2xpc2ggcGhyYXNl
cyBlbmRpbmcgd2l0aCBhbiAiKFJubm4vcykiCiAgIGluZGljYXRpb24sIHdoZXJlICJubm4i
IGlzIGEgdW5pcXVlIHJlcXVpcmVtZW50IG51bWJlciwgYW5kICJzIiBpcyBhCiAgIHNpbmds
ZSBsZXR0ZXIgY29kZSAoImEiLCAiYiIsIG9yICJjIikgc3BlY2lmeWluZyB0aGUgaW1wbGVt
ZW50YXRpb24KICAgc3RhZ2UgZm9yIHRoZSByZXF1aXJlbWVudC4gIEltcGxlbWVudGF0aW9u
IHN0YWdlcyBhcmUgZG9jdW1lbnRlZCBpbgogICBTZWN0aW9uIDE3LgoKICAgVGhpcyBkb2N1
bWVudCBzcGVjaWZpZXMgdGhlIGludGVyZmFjZSBhbmQgZnVuY3Rpb25hbGl0eSBvZiB0aGUK
ICAgVG9vbHNldCwgbm90IHRoZSBkZXRhaWxzIG9mIGEgVG9vbHNldCBpbXBsZW1lbnRhdGlv
bi4gIEhvd2V2ZXIsCiAgIGltcGxlbWVudGF0aW9uIGhpbnRzIG9yIGV4YW1wbGVzIGFyZSBv
ZnRlbiB1c2VmdWwuICBUbyBhdm9pZCBtaXh1cAogICB3aXRoIFRvb2xzZXQgcmVxdWlyZW1l
bnRzLCBzdWNoIGhpbnRzIGFuZCBleGFtcGxlcyBhcmUgb2Z0ZW4gbWFya2VkCiAgIHdpdGgg
YSAiSGludDoiIHByZWZpeC4gIEltcGxlbWVudGF0aW9uIGhpbnRzIGRvIG5vdCBjYXJyeSBh
bnkKICAgbm9ybWF0aXZlIGZvcmNlLCBhbmQgYSBkaWZmZXJlbnQgaW1wbGVtZW50YXRpb24g
bWF5IGJlIHRoZSBiZXN0CiAgIGNob2ljZS4KCjUuICBTdGF0dXMgcXVvCgogICBUaGlzIHNl
Y3Rpb24gc3VtbWFyaXplcyB0aGUgcHJvY2VzcyBmb3IgZHJhZnQgc3VibWlzc2lvbiBhbmQg
cG9zdGluZwogICBhcyBpdCBleGlzdHMgYXQgdGhlIHRpbWUgb2Ygd3JpdGluZy4KCiAgIFRv
IGdldCBhbiBJbnRlcm5ldC1EcmFmdCBwb3N0ZWQgb24gdGhlIElFVEYgd2ViIHNpdGUsIGFu
IElFVEYKICAgcGFydGljaXBhbnQgZW1haWxzIHRoZSBkcmFmdCB0ZXh0IHRvIHRoZSBJRVRG
IFNlY3JldGFyaWF0LCBhbG9uZyB3aXRoCiAgIGFuIGluZm9ybWFsIG5vdGUgYXNraW5nIHRo
ZSBTZWNyZXRhcmlhdCB0byBwb3N0IHRoZSBkcmFmdC4KICAgU2VjcmV0YXJpYXQgc3RhZmYg
cmVhZHMgdGhlIG5vdGUsIHJldmlld3MgdGhlIGRyYWZ0IGFjY29yZGluZyB0byBhCiAgIGNo
ZWNrbGlzdCwgYW5kIHRoZW4gYXBwcm92ZXMgb3IgcmVqZWN0cyB0aGUgc3VibWlzc2lvbi4g
IERyYWZ0CiAgIGFwcHJvdmFsIHRyaWdnZXJzIHRoZSBjb3JyZXNwb25kaW5nIGFubm91bmNl
bWVudCB0byBiZSBzZW50IHRvCiAgIGFwcHJvcHJpYXRlIElFVEYgbWFpbGluZyBsaXN0cy4g
IEV2ZXJ5IDQgaG91cnMsIGFwcHJvdmVkIGRyYWZ0cyBhcmUKICAgYXV0b21hdGljYWxseSBj
b3BpZWQgdG8gdGhlIElFVEYgZHJhZnRzIHJlcG9zaXRvcnkgYW5kIGJlY29tZQogICBhdmFp
bGFibGUgb24gdGhlIElFVEYgd2ViIHNpdGUuCgogICBDb2xsZWN0aXZlbHksIElFVEYgcGFy
dGljaXBhbnRzIHN1Ym1pdCB0aG91c2FuZHMgb2YgSW50ZXJuZXQtRHJhZnRzCiAgIHBlciB5
ZWFyIChpbiB0aGUgeWVhciAyMDAwLCBhYm91dCB0aHJlZSB0aG91c2FuZCBkcmFmdHMgd2Vy
ZQogICBzdWJtaXR0ZWQ7IDIwMDI6IDVrOyAyMDA0OiA3ayBbc2VjcmV0YXJpYXRdKS4gIEFi
b3V0IDMwLTUwJSBvZiBwb3N0ZWQKICAgZHJhZnRzIGFyZSBXRy1uYW1lZCBkcmFmdHMgKGFt
b25nIHNvbWUgMiwxMDAgZHJhZnRzLCB0aGVyZSB3ZXJlIGFib3V0CiAgIDM4MCBuZXcgYW5k
IDI5MCB1cGRhdGVkIFdHTiBkcmFmdHMgcG9zdGVkIGluIDIwMDMpLiAgV2hpbGUgbm8KICAg
cmVqZWN0aW9uIHN0YXRpc3RpY3MgaXMgYXZhaWxhYmxlLCB0aGUgdmFzdCBtYWpvcml0eSBv
ZiBzdWJtaXR0ZWQKICAgZHJhZnRzIGFyZSBhcHByb3ZlZCBieSB0aGUgU2VjcmV0YXJpYXQg
Zm9yIHBvc3RpbmcuCgogICBJdCB1c3VhbGx5IHRha2VzIHRoZSBTZWNyZXRhcmlhdCBhIGZl
dyBtaW51dGVzIHRvIHJldmlldyBhIGdpdmVuCiAgIGRyYWZ0LiAgSG93ZXZlciwgc2luY2Ug
dGhlIFNlY3JldGFyaWF0IHN0YWZmIGRvZXMgbm90IHdvcmsgMjQvNywgZG9lcwogICBub3Qg
d29yayBpbiBhbGwgdGltZSB6b25lcywgaGFzIG90aGVyIHJlc3BvbnNpYmlsaXRpZXMsIGFu
ZCBzaW5jZQoKCgpSb3Vzc2tvdiAgICAgICAgICAgICAgICBFeHBpcmVzIE9jdG9iZXIgMjEs
IDIwMDUgICAgICAgICAgICAgICAgW1BhZ2UgNV0KDApJbnRlcm5ldC1EcmFmdCAgICAgSUQg
U3VibWlzc2lvbiBUb29sc2V0OiBSZXF1aXJlbWVudHMgICAgICAgIEFwcmlsIDIwMDUKCgog
ICBhcHByb3ZlZCBkcmFmdHMgYXJlIHBvc3RlZCBpbiBiYXRjaGVzIGV2ZXJ5IDQgaG91cnMs
IGl0IG1heSB0YWtlIGZyb20KICAgc2V2ZXJhbCBob3VycyB0byBzZXZlcmFsIGRheXMgdG8g
Z2V0IGEgZHJhZnQgcG9zdGVkLiAgRHVlIHRvIG11Y2gKICAgaGlnaGVyIGRlbWFuZCBhbmQg
Zml4ZWQgcHJvY2Vzc2luZyBjYXBhY2l0eSwgcG9zdGluZ3MgZHVyaW5nIHRoZSBsYXN0CiAg
IHdlZWtzIGJlZm9yZSBJRVRGIGZhY2UtdG8tZmFjZSBtZWV0aW5ncyB0YWtlIG11Y2ggbG9u
Z2VyLCBjcmVhdGluZyBhCiAgIGxvbmcgcXVldWUgb2YgdW5wcm9jZXNzZWQgZHJhZnRzIHRo
YXQgYXJlIHRoZW4gYW5ub3VuY2VkIG5lYXJseQogICBzaW11bHRhbmVvdXNseS4KCiAgIFRv
IGdpdmUgSUVURiBmYWNlLXRvLWZhY2UgbWVldGluZyBwYXJ0aWNpcGFudHMgdGltZSB0byBy
ZXZpZXcKICAgcmVsZXZhbnQgZG9jdW1lbnRzLCB0aGUgU2VjcmV0YXJpYXQgZG9lcyBub3Qg
YWNjZXB0IEludGVybmV0LURyYWZ0CiAgIHN1Ym1pc3Npb25zIGNsb3NlIHRvIElFVEYgbWVl
dGluZ3MgKHJlZ2FyZGxlc3Mgb2Ygd2hldGhlciBhIGRyYWZ0IGlzCiAgIHJlbGV2YW50IHRv
IHRoZSB1cGNvbWluZyBtZWV0aW5nIG9yIG5vdCkuCgogICBNYW55IFdvcmtpbmcgR3JvdXBz
IGhhdmUgY29tZSB1cCB3aXRoIGFkIGhvYyBzb2x1dGlvbnMgdG8gY29wZSB3aXRoCiAgIHBv
c3RpbmcgZGVsYXlzLiAgRm9yIGV4YW1wbGUsIG1hbnkgZHJhZnQgc25hcHNob3RzIGFyZSAi
dGVtcG9yYXJpbHkiCiAgIHB1Ymxpc2hlZCBvbiBwZXJzb25hbCB3ZWIgc2l0ZXMgb3Igc2Vu
dCAoY29tcGxldGVseSBvciBpbiBwYXJ0KSB0bwogICB0aGUgZ3JvdXAgbGlzdC4gIEFsdGVy
bmF0aXZlIG1lYW5zIG9mIHB1YmxpY2F0aW9uIG1heSBlZmZlY3RpdmVseQogICByZXBsYWNl
IG9mZmljaWFsIElFVEYgaW50ZXJmYWNlcywgd2l0aCBvbmx5IGEgZmV3IG1ham9yIGRyYWZ0
CiAgIHJldmlzaW9ucyBlbmRpbmcgdXAgcG9zdGVkIG9uIHRoZSBJRVRGIHdlYiBzaXRlLgoK
ICAgSW5mb3JtYWwgaW50ZXJmYWNlcyBmb3Igc3VibWl0dGluZyBhbmQgcG9zdGluZyBkcmFm
dHMgZGlzY291cmFnZQogICBhdXRvbWF0aW9uLiAgTGFjayBvZiBzdWJtaXNzaW9uIGF1dG9t
YXRpb24gaW5jcmVhc2VzIFNlY3JldGFyaWF0CiAgIGxvYWQsIGNvbXBsaWNhdGVzIGF1dG9t
YXRlZCBpbmRleGluZyBhbmQgY3Jvc3MtcmVmZXJlbmNpbmcgb2YgdGhlCiAgIGRyYWZ0cywg
YW5kLCBmb3Igc29tZSBhdXRob3JzLCBsZWFkcyB0byBzdGFsZSBkcmFmdHMgbm90IGJlaW5n
CiAgIHVwZGF0ZWQgb2Z0ZW4gZW5vdWdoLgoKICAgQmV5b25kIGEgc2hvcnQgU2VjcmV0YXJp
YXQgY2hlY2tsaXN0LCBzdWJtaXR0ZWQgZHJhZnRzIGFyZSBub3QKICAgY2hlY2tlZCBmb3Ig
Y29tcGxpYW5jZSB3aXRoIElFVEYgcmVxdWlyZW1lbnRzIGZvciBhcmNoaXZhbCBkb2N1bWVu
dHMsCiAgIGFuZCBzdWJtaXR0ZXJzIGFyZSBub3Qgbm90aWZpZWQgb2YgYW55IHZpb2xhdGlv
bnMuICBBcyBhIHJlc3VsdCwgdGhlCiAgIElFU0cgYW5kIFJGQyBFZGl0b3IgbWF5IGhhdmUg
dG8gc3BlbmQgcmVzb3VyY2VzIChhbmQgZGVsYXkgYXBwcm92YWwpCiAgIHJlc29sdmluZyB2
aW9sYXRpb25zIHdpdGggZHJhZnQgYXV0aG9ycy4gIE9mdGVuLCB0aGVzZSB2aW9sYXRpb25z
IGNhbgogICBiZSBkZXRlY3RlZCBhdXRvbWF0aWNhbGx5IGFuZCB3b3VsZCBoYXZlIGJlZW4g
Zml4ZWQgYnkgZHJhZnQgYXV0aG9ycwogICBpZiB0aGUgYXV0aG9ycyBrbmV3IGFib3V0IHRo
ZW0gYmVmb3JlIHJlcXVlc3RpbmcgcHVibGljYXRpb24gb2YgdGhlCiAgIGRyYWZ0LgoKICAg
VGVjaG5pY2FsbHksIGFueWJvZHkgYW5kIGFueXRoaW5nIGNhbiBzdWJtaXQgYSBkcmFmdCB0
byB0aGUKICAgU2VjcmV0YXJpYXQuICBUaGVyZSBpcyBubyByZWxpYWJsZSBhdXRoZW50aWNh
dGlvbiBtZWNoYW5pc20gaW4gcGxhY2UuCiAgIEluaXRpYWwgc3VibWlzc2lvbnMgb2YgV0dO
IGRyYWZ0cyByZXF1aXJlIFdHIENoYWlyIGFwcHJvdmFsLCB3aGljaAogICBjYW4gYmUgZmFr
ZWQganVzdCBsaWtlIHRoZSBzdWJtaXNzaW9uIHJlcXVlc3QgaXRzZWxmLiAgTm8gbWFsaWNp
b3VzCiAgIGltcGVyc29uYXRpb25zIG9yIGZha2UgYXBwcm92YWxzIGhhdmUgYmVlbiByZXBv
cnRlZCB0byBkYXRlIGhvd2V2ZXIuCgogICBMYWNrIG9mIGF1dGhlbnRpY2F0aW9uIGlzIG5v
dCBwZXJjZWl2ZWQgYXMgYSBzZXJpb3VzIHByb2JsZW0sCiAgIHBvc3NpYmx5IGJlY2F1c2Ug
c2VyaW91cyBmYWxzaWZpY2F0aW9uIGFyZSBsaWtlbHkgdG8gYmUgbm90aWNlZAogICBiZWZv
cmUgc2VyaW91cyBkYW1hZ2UgY2FuIGJlIGRvbmUuICBEdWUgdG8gdGhlIGluZm9ybWFsIGFu
ZCBtYW51YWwKICAgbmF0dXJlIG9mIHRoZSBzdWJtaXNzaW9uIG1lY2hhbmlzbSwgaXRzIG1h
c3NpdmUgYXV0b21hdGVkIGFidXNlIGlzCiAgIHVubGlrZWx5IHRvIGNhdXNlIGFueXRoaW5n
IGJ1dCBhIHNob3J0IGRlbmlhbCBvZiBkcmFmdCBwb3N0aW5nCiAgIHNlcnZpY2UgYW5kLCBo
ZW5jZSwgaXMgcHJvYmFibHkgbm90IHdvcnRoIGRlZmVuZGluZyBhZ2FpbnN0LgogICBIb3dl
dmVyLCBmdXR1cmUgYXV0b21hdGlvbiBtYXkgcmVzdWx0IGluIGEgZGlmZmVyZW50IHRyYWRl
LW9mZi4KCgoKClJvdXNza292ICAgICAgICAgICAgICAgIEV4cGlyZXMgT2N0b2JlciAyMSwg
MjAwNSAgICAgICAgICAgICAgICBbUGFnZSA2XQoMCkludGVybmV0LURyYWZ0ICAgICBJRCBT
dWJtaXNzaW9uIFRvb2xzZXQ6IFJlcXVpcmVtZW50cyAgICAgICAgQXByaWwgMjAwNQoKCjYu
ICBPdmVyYWxsIFRvb2xzZXQgb3BlcmF0aW9uCgogICBUaGlzIHNlY3Rpb24gcHJvdmlkZXMg
YSBoaWdoLWxldmVsIGRlc2NyaXB0aW9uIGZvciB0aGUgcHJvcG9zZWQKICAgVG9vbHNldC4g
IFRoZSBkZXNjcmlwdGlvbiBpcyBtZWFudCB0byBzaG93IG92ZXJhbGwgb3BlcmF0aW9uIGFu
ZAogICBvcmRlcjsgcGxlYXNlIHJlZmVyIHRvIG90aGVyIHNlY3Rpb25zIGZvciBkZXRhaWxz
IHNwZWNpZmljIHRvIGVhY2gKICAgc3RlcC4KCiAgIEEgdHlwaWNhbCBzdWJtaXR0ZXIgZ29l
cyB0aHJvdWdoIGEgc2VxdWVuY2Ugb2YgMi00IHdlYiBwYWdlcyBhbmQKICAgYXNzb2NpYXRl
ZCBhY3Rpb25zLiAgVGhlIG51bWJlciBvZiBwYWdlcyBkZXBlbmRzIG9uIHRoZSBkcmFmdAog
ICB2YWxpZGF0aW9uIGFuZCBtZXRhLWRhdGEgZXh0cmFjdGlvbiByZXN1bHRzLiAgRm9yIGV4
YW1wbGUsIHZhbGlkYXRpbmcKICAgdGhlIGRyYWZ0IHdpdGhvdXQgcG9zdGluZyBpdCByZXF1
aXJlcyBpbnRlcmFjdGluZyB3aXRoIHR3byB3ZWIgcGFnZXM6CiAgIFVwbG9hZCBhbmQgQ2hl
Y2suICBUaGUgY29tbW9uIGNhc2Ugb2YgcG9zdGluZyBhIHZhbGlkIGRyYWZ0IHdpdGhvdXQK
ICAgbWFudWFsIG1ldGEtZGF0YSBhZGp1c3RtZW50cyB0YWtlcyB0aHJlZSB3ZWIgcGFnZXMg
KFVwbG9hZCwgQ2hlY2ssCiAgIFJlY2VpcHQpLgoKICAgSGVyZSBpcyBhIGJyaWVmIG92ZXJ2
aWV3IG9mIHBhZ2VzIGFuZCBhY3Rpb25zOgoKICAgVXBsb2FkIHBhZ2U6IFRoZSBpbnRlcmZh
Y2UgdG8gY29weSBhIGRyYWZ0IGZyb20gdGhlIHN1Ym1pdHRlcidzCiAgICAgIGNvbXB1dGVy
IHRvIHRoZSBUb29sc2V0IHN0YWdpbmcgYXJlYSAoU2VjdGlvbiA3KS4gIE11bHRpcGxlCiAg
ICAgIGZvcm1hdHMgYXJlIGFjY2VwdGVkLiAgVGhlIGRyYWZ0IGlzIHNlbnQgdG8gdGhlIENo
ZWNrIGFjdGlvbi4KCiAgIENoZWNrIGFjdGlvbjogU3RvcmVzIHRoZSBkcmFmdCBpbiB0aGUg
VG9vbHNldCBzdGFnaW5nIGFyZWEsIGV4dHJhY3RzCiAgICAgIGRyYWZ0IG1ldGEtZGF0YSwg
dmFsaWRhdGVzIHRoZSBzdWJtaXNzaW9uIChTZWN0aW9uIDgpLiAgUHJvZHVjZXMKICAgICAg
dGhlIENoZWNrIHBhZ2UuCgogICBDaGVjayBwYWdlOiBEaXNwbGF5cyBkcmFmdCBpbnRlcnBy
ZXRhdGlvbiBhbmQgdmFsaWRhdGlvbiByZXN1bHRzCiAgICAgIChTZWN0aW9uIDkpLiAgQSBk
cmFmdCBwcmV2aWV3IG1heSBhbHNvIGJlIGdpdmVuIG9uIHRoaXMgcGFnZS4KICAgICAgQWZ0
ZXIgcmV2aWV3aW5nIHRoZSBkcmFmdCBpbnRlcnByZXRhdGlvbiBhbmQgdmFsaWRhdGlvbiBy
ZXN1bHRzLAogICAgICB0aGUgc3VibWl0dGVyIGhhcyBmb3VyIGJhc2ljIGNob2ljZXMgKGEp
IGF1dG8tcG9zdCBkcmFmdCAiYXMgaXMiCiAgICAgIG5vdzsgKGIpIG1ha2UgbWFudWFsIGNv
cnJlY3Rpb25zIGFuZCBzdWJtaXQgdGhlIGRyYWZ0IHRvCiAgICAgIFNlY3JldGFyaWF0IGZv
ciBtYW51YWwgcG9zdGluZyBsYXRlcjsgKGMpIGNhbmNlbCBzdWJtaXNzaW9uOyBvcgogICAg
ICAoZCkgZG8gbm90aGluZy4gIFRoZSBhdXRvbWF0ZWQgcG9zdGluZyBvcHRpb24gbWF5IG5v
dCBiZSBhdmFpbGFibGUKICAgICAgZm9yIGRyYWZ0cyB3aXRoIHZhbGlkYXRpb24gZXJyb3Jz
LgoKICAgQXV0b21hdGVkIHBvc3Rpbmc6IElmIHRoZSBzdWJtaXR0ZXIgZGVjaWRlcyB0byBw
cm9jZWVkIHdpdGggYXV0b21hdGVkCiAgICAgIHBvc3RpbmcgZnJvbSB0aGUgQ2hlY2sgcGFn
ZSwgdGhlIHN5c3RlbSBhdXRoZW50aWNhdGVzIHRoZQogICAgICBzdWJtaXR0ZXIgKGFuZCBt
YXkgYWxzbyBjaGVjayB3aGV0aGVyIHRoZSBzdWJtaXR0ZXIgaXMgYWxsb3dlZCB0bwogICAg
ICBwb3N0IHRoZSBkcmFmdCwgaWYgYW5kIHdoZW4gc3VjaCBjaGVja3MgYXJlIGluc3RpdHV0
ZWQpLiAgSWYgdGhlCiAgICAgIHN1Ym1pdHRlciBpcyBhdXRob3JpemVkLCB0aGUgZHJhZnQg
aXMgaW1tZWRpYXRlbHkgcG9zdGVkLCBkZWxldGVkCiAgICAgIGZyb20gdGhlIHN0YWdpbmcg
YXJlYSwgYW5kIHRoZSBzdWJtaXR0ZXIgaXMgbm90aWZpZWQgb2YgdGhlIHJlc3VsdAogICAg
ICB2aWEgZW1haWwgYW5kIGEgUmVjZWlwdCBwYWdlIChTZWN0aW9uIDEwKS4KCiAgIE1hbnVh
bCBhZGp1c3RtZW50IGFuZCBwb3N0aW5nOiBJZiB0aGUgc3VibWl0dGVyIGRlY2lkZXMgdG8g
YWRqdXN0IHRoZQogICAgICBtZXRhLWRhdGEsIHRoZSBkcmFmdCByZW1haW5zIGluIHRoZSBU
b29sc2V0IHN0YWdpbmcgYXJlYSwgYW5kIHRoZQogICAgICBBZGp1c3QgYWN0aW9uIChTZWN0
aW9uIDExKSBwcmVzZW50cyB0aGUgc3VibWl0dGVyIHdpdGggYW4gQWRqdXN0CiAgICAgIHBh
Z2UgKFNlY3Rpb24gMTIpLiAgV2hlbiB0aGUgc3VibWl0dGVyIG1ha2VzIHRoZSBhZGp1c3Rt
ZW50cyBhbmQKICAgICAgcHJvY2VlZHMgd2l0aCBtYW51YWwgcG9zdGluZywgYSBwb2ludGVy
IHRvIHRoZSBzdG9yZWQgZHJhZnQgYW5kCiAgICAgIGl0cyBhZGp1c3RlZCBtZXRhLWRhdGEg
aXMgc2VudCB0byB0aGUgc2VjcmV0YXJpYXQgZm9yIG1hbnVhbAoKCgpSb3Vzc2tvdiAgICAg
ICAgICAgICAgICBFeHBpcmVzIE9jdG9iZXIgMjEsIDIwMDUgICAgICAgICAgICAgICAgW1Bh
Z2UgN10KDApJbnRlcm5ldC1EcmFmdCAgICAgSUQgU3VibWlzc2lvbiBUb29sc2V0OiBSZXF1
aXJlbWVudHMgICAgICAgIEFwcmlsIDIwMDUKCgogICAgICBwcm9jZXNzaW5nIChTZWN0aW9u
IDEzKS4gIFRoZSBzdWJtaXR0ZXIgaXMgbm90aWZpZWQgb2YgdGhlIHBlbmRpbmcKICAgICAg
U2VjcmV0YXJpYXQgcmVxdWVzdCB2aWEgZW1haWwgYW5kIGEgUmVjZWlwdCBwYWdlLgoKICAg
Q2FuY2VsbGF0aW9uOiBJZiB0aGUgc3VibWl0dGVyIGRlY2lkZXMgdG8gZXhwbGljaXRseSBj
YW5jZWwgdGhlCiAgICAgIHN1Ym1pc3Npb24sIHRoZSBzdWJtaXNzaW9uIHN0YXRlIChpbmNs
dWRpbmcgdGhlIGRyYWZ0KSBpcwogICAgICBpbW1lZGlhdGVseSBkZWxldGVkIGZyb20gdGhl
IFRvb2xzZXQgc3RhZ2luZyBhcmVhIGFuZCBhbgogICAgICBhcHByb3ByaWF0ZSBSZWNlaXB0
IHBhZ2UgaXMgZ2VuZXJhdGVkIHdpdGhvdXQgZnVydGhlciBhY3Rpb25zCiAgICAgIChSMTIz
L2EpLiAgQ2FuY2VsbGF0aW9uIG9mIHByZXZpb3VzbHkgcG9zdGVkIGRyYWZ0cyBpcyBvdXQg
b2YgdGhpcwogICAgICBkb2N1bWVudCBzY29wZS4KCiAgIFJlY2VpcHQgcGFnZTogQ29udGFp
bnMgZGV0YWlscyBvZiBhIHN1Y2Nlc3NmdWwgb3IgZmFpbGVkIGRyYWZ0CiAgICAgIHN1Ym1p
c3Npb24gYW5kIGluZm9ybXMgdGhlIHN1Ym1pdHRlciBvZiB0aGUgbmV4dCBhcHByb3ByaWF0
ZQogICAgICBzdGVwKHMpIHJlbGF0ZWQgdG8gc3VibWlzc2lvbiByZXN1bHQuCgogICBUaGUg
Zm9sbG93aW5nIGluZm9ybWFsIGRpYWdyYW0gaWxsdXN0cmF0ZXMgdGhlIGJhc2ljIHN1Ym1p
c3Npb24KICAgbG9naWM6CgogICAgICAgICAgICAgICAgICAgICAgIC8tLS0+IFBvc3QgTm93
CiAgICAgICAgICAgICAgICAgICAgICAvCiAgIFVwbG9hZCAtLT4gQ2hlY2sgLSstLS0tLT4g
QWRqdXN0IC0tLT4gU2VuZCB0byBTZWNyZXRhcmlhdAogICAgICAgICAgICAgICAgICAgICAg
XAogICAgICAgICAgICAgICAgICAgICAgIFwtLS0+IENhbmNlbAoKICAgSWYgdGhlIHN1Ym1p
dHRlciBkb2VzIG5vdGhpbmcgd2hpbGUgdGhlIFRvb2xzZXQgaXMgZXhwZWN0aW5nIHNvbWUK
ICAgcmVzcG9uc2UsIHRoZSBhYmFuZG9uZWQgc3VibWlzc2lvbiB0aW1lcyBvdXQgKFIxMjQv
YSkuICBUaGUgdGltZW91dAogICB2YWx1ZSBkZXBlbmRzIG9uIHRoZSBzdWJtaXNzaW9uIHN0
YXRlLiAgSGludDogQSB0aW1lb3V0IHZhbHVlIG9mIG9uZQogICBob3VyIGlzIHByb2JhYmx5
IGxhcmdlIGVub3VnaCB1bmxlc3MgdGhlIFRvb2xzZXQgaXMgd2FpdGluZyBmb3Igc29tZQog
ICBraW5kIG9mIGEgM3JkIHBhcnR5IGNvbmZpcm1hdGlvbiAoZS5nLiwgV0cgY2hhaXIgYXBw
cm92YWwpLiAgRG9pbmcKICAgbm90aGluZyBpcyBmdW5jdGlvbmFsbHkgZXF1aXZhbGVudCB0
byBleHBsaWNpdGx5IGNhbmNlbGluZyB0aGUKICAgc3VibWlzc2lvbiwgZXhjZXB0IHRoYXQg
ZXhwbGljaXQgY2FuY2VsbGF0aW9uIHJlcXVpcmVzIGltbWVkaWF0ZQogICByZW1vdmFsIG9m
IHN1Ym1pc3Npb24gc3RhdGUgd2hpbGUgdGhlIHN0YXRlIG9mIHN1Ym1pc3Npb25zIG1hcmtl
ZCBhcwogICBhYmFuZG9uZWQgaXMgZ2FyYmFnZS1jb2xsZWN0ZWQuCgogICBUaGUgc3RhZ2lu
ZyBhcmVhIG1haW50ZW5hbmNlIGFsZ29yaXRobXMgbXVzdCBrZWVwIHRoZSBhcmVhIGluIGEK
ICAgY29uc2lzdGVudCwgY29ycmVjdCBzdGF0ZSBpbiB0aGUgcHJlc2VuY2Ugb2YgRG9TIGF0
dGFja3MgYXR0ZW1wdGluZwogICB0byBvdmVyd2hlbG0gdGhlIGFyZWEgd2l0aCBmYWtlIHN1
Ym1pc3Npb25zIGluIHZhcmlvdXMgc3RhZ2VzCiAgIChSNjcvYSkuICBIaW50OiBkZW5pYWwg
b2Ygc2VydmljZSB0byBsZWdpdGltYXRlIHVzZXJzIGlzIGFjY2VwdGFibGUKICAgdW5kZXIg
RG9TIGF0dGFjayBjb25kaXRpb25zLCBidXQgY29ycnVwdGlvbiBvZiB0aGUgc3RvcmFnZSBh
cmVhIGlzCiAgIG5vdC4KCiAgIFRoZSAid2ViIHBhZ2VzIiB0aGlzIHRleHQgaXMgcmVmZXJy
aW5nIHRvIGFyZSBkaXN0aW5jdCBkaWFsb2dzLCB0aGF0CiAgIG1heSBiZSB2aXNpYmxlIHRv
IHRoZSBzdWJtaXR0ZXIgdW5kZXIgdGhlIHNhbWUgb3IgZGlmZmVyZW50IFVSTCwgYW5kCiAg
IHN1cHBvcnRlZCBieSBhIHNpbmdsZSBvciBzZXZlcmFsIHNlcnZlci1zaWRlIHByb2dyYW1z
LgoKICAgVGhlIFRvb2xzZXQgbXVzdCBoYW5kbGUgbXVsdGlwbGUgc3VibWl0dGVycyBzaW11
bHRhbmVvdXNseSBzdWJtaXR0aW5nCiAgIHRoZSBzYW1lIGRyYWZ0IChSNzIvYSkgYW5kIGEg
c2luZ2xlIHN1Ym1pdHRlciBzaW11bHRhbmVvdXNseQogICBzdWJtaXR0aW5nIHR3byBkcmFm
dHMgKFI3My9hKS4gIFRoZSBsYXR0ZXIgbWlnaHQgaGFwcGVuLCBmb3IgZXhhbXBsZSwKICAg
d2hlbiB0aGUgc3VibWl0dGVyIGlzIHVzaW5nIHNldmVyYWwgYnJvd3NlciB3aW5kb3dzIHRv
IHN1Ym1pdCBzZXZlcmFsCgoKClJvdXNza292ICAgICAgICAgICAgICAgIEV4cGlyZXMgT2N0
b2JlciAyMSwgMjAwNSAgICAgICAgICAgICAgICBbUGFnZSA4XQoMCkludGVybmV0LURyYWZ0
ICAgICBJRCBTdWJtaXNzaW9uIFRvb2xzZXQ6IFJlcXVpcmVtZW50cyAgICAgICAgQXByaWwg
MjAwNQoKCiAgIGRyYWZ0cyBvciBpcyBzdWJtaXR0aW5nIGRyYWZ0cyB2aWEgZW1haWwgaW50
ZXJmYWNlLiAgVGhlIHRlcm0KICAgInNpbXVsdGFuZW91c2x5IiBtZWFucyB0aGF0IHN1Ym1p
c3Npb24gcHJvY2Vzc2luZyB0aW1lcyBvdmVybGFwLgoKICAgSGludDogRXhjZXB0IGZvciB0
aGUgVXBsb2FkIHBhZ2UsIHBhZ2VzIGNvbnRhaW4gYSBzdWJtaXNzaW9uIHNlc3Npb24KICAg
aWRlbnRpZmllciB0byBwcm92aWRlIGFjdGlvbnMgd2l0aCBhY2Nlc3MgdG8gc3RvcmVkIGlu
Zm9ybWF0aW9uLiAgVGhlCiAgIGlkZW50aWZpZXIgaXMgc3BlY2lmaWMgdG8gdGhlIHN1Ym1p
c3Npb24gcmF0aGVyIHRoYW4gdGhlIGRyYWZ0CiAgIHZlcnNpb24gb3IgdGhlIHN1Ym1pdHRl
ci4gIFdoaWxlIHRoZSBuYXR1cmUgb2YgdGhlIHdlYiBpbnRlcmZhY2UKICAgYWxsb3dzIHRo
ZSBzZXNzaW9uIGlkZW50aWZpZXIgdG8gYmUgaW52aXNpYmxlIHRvIHRoZSBzdWJtaXR0ZXIs
IGVtYWlsCiAgIGNvbW11bmljYXRpb24gd291bGQgbmVlZCB0byBpZGVudGlmeSB0aGUgc2Vz
c2lvbiBzbyB0aGF0IHRoZQogICByZWNpcGllbnQgKGFuZCBUb29sc2V0KSBrbm93IHRoZSBj
b250ZXh0LgoKICAgSGludDogQSBzaW5nbGUgYWN0aW9uIG1heSBjb3JyZXNwb25kIHRvIG11
bHRpcGxlIHNlcnZlci1zaWRlIHByb2dyYW1zCiAgIGFuZCwgdmljZSB2ZXJzYSwgYSBzaW5n
bGUgcHJvZ3JhbSBtYXkgaW1wbGVtZW50IHNldmVyYWwgYWN0aW9ucy4KICAgVGhpcyBkb2N1
bWVudCBkb2VzIG5vdCBtYW5kYXRlIGFueSBzcGVjaWZpYyB0ZWNobm9sb2d5IChlLmcuLCBD
R0ksCiAgIFBIUCwgYW5kL29yIEphdmEgc2VydmxldHMpIHRvIGltcGxlbWVudCBzZXJ2ZXIt
c2lkZSBzdXBwb3J0LiAgVGhlCiAgIGltcGxlbWVudGVyIGV4cGVyaWVuY2UsIGNvZGUgcmV1
c2UgYWNyb3NzIHdlYiBhbmQgZW1haWwgaW50ZXJmYWNlcywKICAgYW5kIG90aGVyIGZhY3Rv
cnMgd2lsbCBkZXRlcm1pbmUgdGhlIHJpZ2h0IHRlY2hub2xvZ3kgY2hvaWNlLgoKICAgSGlu
dDogQWN0aW9ucyBwcmVzZXJ2ZSBhbmQgZXhjaGFuZ2Ugc3RhdGUgYnkgc3RvcmluZyBpdCBh
bG9uZyB3aXRoCiAgIHRoZSBkcmFmdC4gIEdyb3VwaW5nIGFsbCBzdWJtaXNzaW9uLXNwZWNp
ZmljIGluZm9ybWF0aW9uIGluIG9uZQogICBzdWJkaXJlY3RvcnkgbmFtZWQgdXNpbmcgdGhl
IHNlc3Npb24gaWRlbnRpZmllciBtYXkgaW5jcmVhc2UKICAgcm9idXN0bmVzcyBhbmQgc2lt
cGxpZnkgZGVidWdnaW5nLiAgU2Vzc2lvbiBjcmVhdGlvbiBhbmQgZGVzdHJ1Y3Rpb24KICAg
Y2FuIHRoZW4gYmUgbG9nZ2VkIGluIGEgZ2xvYmFsIGluZGV4LgoKICAgV2F5cyB0byBwYXJ0
aWFsbHkgb3IgY29tcGxldGVseSBieXBhc3MgdGhlIFRvb2xzZXQgYXJlIGRvY3VtZW50ZWQg
aW4KICAgU2VjdGlvbiAxNQoKICAgVGhlIFRvb2xzZXQgc291cmNlcyBzaG91bGQgYmUgcHVi
bGljbHkgYXZhaWxhYmxlIChSMTUyL2IpIHVuZGVyIGEKICAgbGljZW5zZSBjZXJ0aWZpZWQg
YnkgdGhlIE9wZW4gU291cmNlIEluaXRpYXRpdmUgW09TSV0gKFIxNDQvYSksIHdpdGgKICAg
YW4gaW50ZXJmYWNlIHRvIHJlcG9ydCBidWdzIGFuZCByZXF1ZXN0IGVuaGFuY2VtZW50cyAo
UjE0NS9iKS4gIFRoZXNlCiAgIHJlcXVpcmVtZW50cyBhcmUgbWVhbnQgdG8gZW5hYmxlIHRo
ZSBUb29sc2V0IHRyYW5zZmVyIGZyb20gb25lCiAgIG1hbmFnZW1lbnQgdGVhbSB0byBhbm90
aGVyIGFuZCB0byBhbGxvdyBmb3IgcHVibGljIHJldmlldyBhbmQKICAgY29udHJpYnV0aW9u
LiAgVG8gbWVhbmluZ2Z1bGx5IHNhdGlzZnkgdGhlc2UgYXZhaWxhYmlsaXR5CiAgIHJlcXVp
cmVtZW50cywgdGhlIFRvb2xzZXQgaGFzIHRvIGltcGxlbWVudCB0aGUgcmVxdWlyZWQgZnVu
Y3Rpb25hbGl0eQogICB3aXRob3V0IHJlbHlpbmcgb24gc29mdHdhcmUgd2l0aCBkaWZmZXJl
bnQgYXZhaWxhYmlsaXR5IGNvbmRpdGlvbnMuCgogICBIaW50OiBQbGFjaW5nIHRoZSBUb29s
c2V0IHNvdXJjZSByZXBvc2l0b3J5IGF0IGFuIG9wZW4tc291cmNlLQogICBmcmllbmRseSBw
cm9qZWN0IG1hbmFnZW1lbnQgc2l0ZSBsaWtlIFNvdXJjZUZvcmdlLm5ldCB3b3VsZCBwcm92
aWRlCiAgIHRoZSBJRVRGIGNvbW11bml0eSB3aXRoIGEgZGVjZW50LCByZWFkeS10by11c2Ug
aW50ZXJmYWNlIHRvIGFjY2VzcwogICB0aGUgY29kZSwgZG9jdW1lbnRhdGlvbiwgYnVnIHJl
cG9ydHMsIGFuZCBkaXNjdXNzaW9uIGZvcnVtcy4KICAgRXN0YWJsaXNoaW5nIGFuZCBkb2N1
bWVudGluZyBhIHNpbXBsZSBpbnRlcmZhY2UgYmV0d2VlbiB0aGUgVG9vbHNldAogICBhbmQg
ZXh0ZXJuYWwgc29mdHdhcmUgKGUuZy4sIHRoZSBTZWNyZXRhcmlhdCBkcmFmdCBwb3N0aW5n
IHNjcmlwdHMpCiAgIHdvdWxkIGZhY2lsaXRhdGUgYXZhaWxhYmlsaXR5IGNoZWNrcy4KCiAg
IFRoZSBUb29sc2V0IGlzIG1lYW50IHRvIGJlIGNvbXBhdGlibGUgd2l0aCB0aGUgU2VjcmV0
YXJpYXQncyB0b29scwogICBmb3IgaGFuZGxpbmcgZHJhZnRzLiAgSGludDogU3VjaCBjb21w
YXRpYmlsaXR5IGNhbiBiZSBhY2hpZXZlZCBieQogICBhcHByb3ByaWF0ZWx5IGltcGxlbWVu
dGluZyB0aGUgVG9vbHNldCBvciwgaW4gc29tZSBjYXNlcywgYnkKICAgbW9kaWZ5aW5nIGV4
aXN0aW5nIFNlY3JldGFyaWF0IHRvb2xzLgoKCgpSb3Vzc2tvdiAgICAgICAgICAgICAgICBF
eHBpcmVzIE9jdG9iZXIgMjEsIDIwMDUgICAgICAgICAgICAgICAgW1BhZ2UgOV0KDApJbnRl
cm5ldC1EcmFmdCAgICAgSUQgU3VibWlzc2lvbiBUb29sc2V0OiBSZXF1aXJlbWVudHMgICAg
ICAgIEFwcmlsIDIwMDUKCgo3LiAgVXBsb2FkIHBhZ2UKCiAgIFRvIHVwbG9hZCBhIGRyYWZ0
LCB0aGUgc3VibWl0dGVyIGdvZXMgdG8gYSB3ZWxsLWtub3duIHBhZ2Ugb24gdGhlCiAgIElF
VEYgd2ViIHNpdGUgKFIxL2IpLiAgVGhlcmUsIHRoZSBkcmFmdCB0ZXh0IGNhbiBiZSB1cGxv
YWRlZCB1c2luZyBhbgogICBIVE1MIGZpbGUgdXBsb2FkIGZvcm0uICBUaGlzIGZvcm0gcHJv
dmlkZXMgZmllbGRzIHRvIHVwbG9hZCB0aGUgcGxhaW4KICAgdGV4dCBmb3JtYXQgb2YgdGhl
IGRyYWZ0IChSMi9hKSBhbmQgYWxsIG90aGVyIGZvcm1hdHMgYWxsb3dlZCBieSBJRVRGCiAg
IGRyYWZ0IHB1YmxpY2F0aW9uIHJ1bGVzIChSMy9iKS4gIEF0IHRoZSB0aW1lIG9mIHdyaXRp
bmcsIHRoZXNlCiAgIGZvcm1hdHMgYXJlOiBYTUwgKFtSRkMyNjI5XSBhbmQgW0ktRC5tcm9z
ZS13cml0aW5nLXJmY3NdKSwgUERGLCBhbmQKICAgUG9zdFNjcmlwdC4KCiAgIFN1Ym1pdHRl
ZCBmb3JtcyBhcmUgaGFuZGxlZCBieSB0aGUgQ2hlY2sgYWN0aW9uIGRvY3VtZW50ZWQgaW4K
ICAgU2VjdGlvbiA4LgoKICAgVGhlIFVwbG9hZCBwYWdlIGFsc28gaGFzIGEgdmFsaWRhdGUt
b25seSBmbGFnLCBpbmRpY2F0aW5nIHRoYXQgYW4KICAgdXBsb2FkZWQgZHJhZnQgbXVzdCBu
b3QgYmUgcG9zdGVkIGFuZCBtYXkgYmUgZGVsZXRlZCBpbW1lZGlhdGVseQogICBhZnRlciB0
aGUgdmFsaWRhdGlvbiAoUjc0L2IpLiAgUmVnYXJkbGVzcyBvZiB0aGUgdmFsaWRhdGlvbiBy
ZXN1bHRzLAogICB0aGUgc3RvcmVkIGRyYWZ0IG1ldGEtZGF0YSBpcyBtYXJrZWQgc28gdGhh
dCB2YWxpZGF0aW9uLW9ubHkgZHJhZnRzCiAgIGNhbiBiZSBpZGVudGlmaWVkIGFuZCBkZWxl
dGVkIGZpcnN0IGJ5IGdhcmJhZ2UgY29sbGVjdG9yIGZvciB0aGUKICAgVG9vbHNldCBzdGFn
aW5nIGFyZWEgKFI3NS9iKS4gIERyYWZ0cyB1cGxvYWRlZCBpbiBhIHZhbGlkYXRlLW9ubHkK
ICAgbW9kZSBjYW5ub3QgYmUgcG9zdGVkIChSNzYvYik7IHRoZXkgd291bGQgbmVlZCB0byBi
ZSB1cGxvYWRlZCBhZ2FpbiwKICAgd2l0aG91dCB0aGUgdmFsaWRhdGUtb25seSBmbGFnLCBh
bmQgdGhlIHZhbGlkYXRpb24gcmVzdWx0cyBwYWdlCiAgIHNob3VsZCBleHBsYWluIHRoYXQg
KFI3Ny9iKS4gIFRoaXMgZmxhZyBpcyB1c2VmdWwgZm9yIHRvb2xzIHVzaW5nCiAgIG9ubGlu
ZSB2YWxpZGF0aW9uLCBlc3BlY2lhbGx5IGZvciBidWxrIGRyYWZ0IHByb2Nlc3NpbmcuICBI
aW50OiBpdAogICBtYXkgYmUgYmV0dGVyIHRvIGltcGxlbWVudCB0aGlzIGZsYWcgYXMgYSBo
aWRkZW4gSFRNTCBpbnB1dCBmaWVsZCB0bwogICBzaW1wbGlmeSB0aGUgaW50ZXJmYWNlIGZv
ciBodW1hbiBzdWJtaXR0ZXJzLgoKOC4gIENoZWNrIGFjdGlvbgoKICAgVGhlIENoZWNrIGFj
dGlvbiBwcmVwcm9jZXNzZXMgYSBzdWJtaXNzaW9uLCBnZW5lcmF0ZXMgcGxhaW4gdGV4dAog
ICBmb3JtYXQgKGlmIG5lZWRlZCwgc2VlIFI3MCksIHN0b3JlcyB0aGUgc3VibWl0dGVkIGRy
YWZ0IChhbGwgZm9ybWF0cykKICAgaW4gdGhlIHN0YWdpbmcgYXJlYSwgYW5kIHRoZW4gZXh0
cmFjdHMgbWV0YS1kYXRhIGFuZCB2YWxpZGF0ZXMgZWFjaAogICBmb3JtYXQgKFI2L2EpLiAg
RXJyb3JzIGFuZCB3YXJuaW5ncyBhcmUgaW5kaWNhdGVkIHRvIHRoZSBzdWJtaXR0ZXIgaW4K
ICAgdGhlIHJlc3BvbnNlIHZpYSBjb21wdXRlci1mcmllbmRseSB0YWcocykgYW5kIGh1bWFu
LWZyaWVuZGx5IHRleHQKICAgKFI3L2EpLgoKICAgSWYgYW55IGVycm9yIGlzIGZvdW5kLCBh
dXRvbWF0ZWQgcG9zdGluZyBiZWNvbWVzIGltcG9zc2libGUgKFIxMTMvYSkuCiAgIFRoaXMg
cnVsZSBhcHBsaWVzIHRvIGFsbCBlcnJvcnMsIGV2ZW4gdGhvc2UgdGhhdCBkbyBub3QgcmVm
ZXIgdG8gUjExMwogICBhbmQgZG8gbm90IGV4cGxpY2l0bHkgcHJvaGliaXQgYXV0b21hdGVk
IHBvc3RpbmcuICBJZiBhdXRvbWF0ZWQKICAgcG9zdGluZyBpcyBub3QgcG9zc2libGUsIHRo
ZSBUb29sc2V0IHN0aWxsIGdpdmVzIHRoZSBzdWJtaXR0ZXIgYW4KICAgb3B0aW9uIG9mIHNl
bmRpbmcgdGhlIGRyYWZ0IGZvciBtYW51YWwgdmFsaWRhdGlvbiBhbmQgcG9zdGluZwogICAo
UjExNC9hKS4gIFNpbmNlIGVhY2ggc3VibWlzc2lvbiBpcyB0cmVhdGVkIGluIGlzb2xhdGlv
biwgdGhlCiAgIHN1Ym1pdHRlciBhbHNvIGhhcyBhbiBvcHRpb24gb2YgY29ycmVjdGluZyB0
aGUgcHJvYmxlbSBhbmQKICAgcmVzdWJtaXR0aW5nIHRoZSBkcmFmdCBmb3IgYXV0b21hdGVk
IHBvc3RpbmcuCgogICBUaGUgbWFudWFsIHZhbGlkYXRpb24gYW5kIHBvc3Rpbmcgcm91dGUg
aXMgYSBUb29sc2V0IGJ5cGFzcyBtZWNoYW5pc20KICAgKHNlZSBTZWN0aW9uIDE1KSBub3Qg
bWVhbnQgZm9yIGZpeGluZyBwcm9ibGVtcyB3aXRoIHRoZSBkcmFmdCBpdHNlbGYuCiAgIFRo
ZSBTZWNyZXRhcmlhdCBkb2VzIG5vdCBnZW5lcmFsbHkgY29ycmVjdCBzdWJtaXR0ZWQgZHJh
ZnRzLiAgSWYgdGhlCiAgIGRyYWZ0IG5lZWRzIHR3ZWFraW5nIHRvIG1hdGNoIHN1Ym1pdHRl
cidzIGludGVudCwgdGhlbiB0aGUgZHJhZnQKCgoKUm91c3Nrb3YgICAgICAgICAgICAgICAg
RXhwaXJlcyBPY3RvYmVyIDIxLCAyMDA1ICAgICAgICAgICAgICAgW1BhZ2UgMTBdCgwKSW50
ZXJuZXQtRHJhZnQgICAgIElEIFN1Ym1pc3Npb24gVG9vbHNldDogUmVxdWlyZW1lbnRzICAg
ICAgICBBcHJpbCAyMDA1CgoKICAgc2hvdWxkIGJlIGNvcnJlY3RlZCBieSB0aGUgc3VibWl0
dGVyIGFuZCByZXN1Ym1pdHRlZC4KCiAgIEl0IGlzIGFuIGVycm9yIHRvIHN1Ym1pdCBhIGRy
YWZ0IHdoaWNoIGhhcyBuZWl0aGVyIHBsYWluIHRleHQgbm9yIFhNTAogICBzb3VyY2UgZm9y
bWF0IChSNjgvYSkuICBYTUwgc291cmNlIGlzIGFjY2VwdGFibGUgd2l0aG91dCBhY2NvbXBh
bnlpbmcKICAgcGxhaW4gdGV4dCBvbmx5IGlmIHRoZSBUb29sc2V0IHN1Y2Nlc3NmdWxseSBn
ZW5lcmF0ZXMgYSBkcmFmdCBpbgogICBwbGFpbiB0ZXh0IGZvcm1hdCBmcm9tIHRoZSBYTUwg
c291cmNlLCBhcyBhIHBhcnQgb2YgdGhlIHByb2Nlc3NpbmcKICAgc3RlcCBkb2N1bWVudGVk
IGJlbG93IChSNjkvYikuICBUaGVzZSBydWxlcyBpbXBseSB0aGF0IFBERi0gb3IKICAgUG9z
dFNjcmlwdC1vbmx5IGRyYWZ0cyBjYW5ub3QgYmUgYXV0by1wb3N0ZWQuICBNb3Jlb3Zlciwg
ZXZlbiBtYW51YWwKICAgU2VjcmV0YXJpYXQgaW52b2x2ZW1lbnQgY2Fubm90IGhlbHAgd2l0
aCBwb3N0aW5nIHRoZXNlIGRyYWZ0cywgYXMgdGhlCiAgIElFVEYgcG9saWN5IGlzIHRvIGFs
d2F5cyByZXF1aXJlIGEgcGxhaW4gdGV4dCBmb3JtYXQgaW4gYWRkaXRpb24gdG8KICAgUERG
IG9yIFBvc3RTY3JpcHQuICBGdXJ0aGVybW9yZSwgZHJhZnRzIGNvbnRhaW5pbmcgUERGIG9y
IFBvc3RzY3JpcHQKICAgZm9ybWF0IHZlcnNpb25zIG11c3Qgbm90IGJlIGF1dG8tcG9zdGVk
IHVudGlsIHRoZSBUb29sc2V0IGNhbgogICB2YWxpZGF0ZSB0aGF0IHRoZWlyIGNvbnRlbnQg
bWF0Y2hlcyB0aGUgcGxhaW4gdGV4dCBmb3JtYXQgKFIxNDMvYSkuCgogICBUaGUgZHJhZnQg
Zm9ybWF0IGFjY2VwdGFuY2UgcnVsZXMgYWJvdmUgYXJlIG1lYW50IHRvIGRlY3JlYXNlIHRo
ZQogICBjaGFuY2VzIHRoYXQgbXVsdGlwbGUgcG9zdGVkIGRyYWZ0IGZvcm1hdHMgZm9yIGEg
c2luZ2xlIGRyYWZ0IGNvbnRhaW4KICAgc3Vic3RhbnRpYWxseSBkaWZmZXJlbnQgZG9jdW1l
bnRzLiAgV2l0aCBleHBlcmllbmNlLCB0aGUgcnVsZXMgbWF5IGJlCiAgIHNpbXBsaWZpZWQg
c28gdGhhdCwgZm9yIGV4YW1wbGUsIG9ubHkgc3VibWlzc2lvbnMgY29udGFpbmluZyBub3Ro
aW5nCiAgIGJ1dCBYTUwgb3IgcGxhaW4gdGV4dCBzb3VyY2VzIGNhbiBiZSBwb3N0ZWQgd2l0
aG91dCBTZWNyZXRhcmlhdAogICBpbnZvbHZlbWVudCBhbmQgYWxsIG90aGVyIHN1Ym1pc3Np
b25zIHJlcXVpcmUgbWFudWFsIGFjdGlvbnMgdG8gbWF0Y2gKICAgZm9ybWF0cyBvciBleHRy
YWN0IG1ldGEtZGF0YS4KCjguMSAgUHJlcHJvY2Vzc2luZwoKICAgU3VibWl0dGluZyBjb21w
cmVzc2VkIGRyYWZ0cyBpcyBhIGRlc2lyYWJsZSBmZWF0dXJlLCBlc3BlY2lhbGx5IGZvcgog
ICBzdWJtaXR0ZXJzIGJlaGluZCBzbG93IG9yIGNvbnRlbnQtYWx0ZXJpbmcgbGlua3MuICBD
b21wcmVzc2VkIGRyYWZ0CiAgIGZvcm1hdHMgbWF5IGJlIGFjY2VwdGVkIChSMTUwL2MpLiAg
Q29tcHJlc3NlZCBmb3JtYXRzLCBpZiBhbnksIG11c3QKICAgYmUgZGVjb21wcmVzc2VkIGR1
cmluZyB0aGUgcHJlcHJvY2Vzc2luZyBzdGVwIChSMTUxL2MpIHNvIHRoYXQgb3RoZXIKICAg
cHJvY2Vzc29ycyBkbyBub3QgaGF2ZSB0byBkZWFsIHdpdGggY29tcHJlc3NlZCBmb3JtYXRz
LiAgSGludDogIFdoaWxlCiAgIHRoaXMgc3BlY2lmaWNhdGlvbiBkb2VzIG5vdCBkb2N1bWVu
dCBhIGxpc3Qgb2Ygc3VwcG9ydGVkIGNvbXByZXNzaW9uCiAgIHN0YW5kYXJkcywgaXQgaXMg
ZXhwZWN0ZWQgdGhhdCBzdWNoIHBvcHVsYXIgbWV0aG9kcyBhcyAiemlwIiBhbmQKICAgImd6
aXAiIHNob3VsZCBiZSBhY2NlcHRlZCBpZiBjb21wcmVzc2lvbiBpcyBzdXBwb3J0ZWQuICBB
Y2NlcHRpbmcgYQogICBjb2xsZWN0aW9uIG9mIGRyYWZ0IGZvcm1hdHMgd2l0aGluIGEgc2lu
Z2xlIGNvbXByZXNzZWQgYXJjaGl2ZSBtYXkKICAgYWxzbyBiZSBkZXNpcmFibGUuCgogICBY
TUwgc291cmNlIGNvbnRhaW5pbmcgWE1MIHByb2Nlc3NvciA8cmZjPyBpbmNsdWRlPSIuLi4i
PiBpbnN0cnVjdGlvbnMKICAgKFBJcykgaXMgcHJlcHJvY2Vzc2VkIHRvIGluY2x1ZGUgcmVm
ZXJlbmNlcyAoUjgvYikuICBUaGlzIHN0ZXAgaXMKICAgbmVlZGVkIHRvIHJlbW92ZSBleHRl
cm5hbCBkZXBlbmRlbmNpZXMgZnJvbSBYTUwgc291cmNlcyBhbmQgdG8KICAgc2ltcGxpZnkg
dG9vbHMgcHJvY2Vzc2luZyBwb3N0ZWQgWE1MLiAgVGhpcyBkb2N1bWVudCByZWZlcnMgdG8g
c3VjaAogICBYTUwgcHJvY2Vzc29yIGluc3RydWN0aW9ucyBhcyAiaW5jbHVkZSBQSXMiLgoK
ICAgVGhlIFhNTCBwcmVwcm9jZXNzb3IgdXNlcyBwdWJsaWMgZGF0YWJhc2UocykgdG8gcmVz
b2x2ZSBQSSByZWZlcmVuY2VzCiAgIChSODUvYikuICBUaGUgVG9vbHNldCBkb2N1bWVudGF0
aW9uIHNwZWNpZmllcyB3aGF0IGRhdGFiYXNlcyBhcmUgdXNlZAogICBhbmQgaG93IFBJcyBh
cmUgbWFwcGVkIHRvIGRhdGFiYXNlIGVudHJpZXMgKFI4Ni9iKS4gIFRoZSBUb29sc2V0IG11
c3QKICAgbm90IHJlbHkgb24gUElzIGV4aXN0ZW5jZSAoUjg3L2IpIGJlY2F1c2Ugc29tZSBY
TUwgc291cmNlcyB3aWxsIGJlCiAgIHByZXByb2Nlc3NlZCBiZWZvcmUgdGhlIHN1Ym1pc3Np
b24gb3Igd2lsbCBiZSB3cml0dGVuIHdpdGhvdXQgUElzLgogICBIaW50OiBMb2NhbCB1cC10
by1kYXRlIGNvcGllcyBvZiBNYXJzaGFsbCBSb3NlJ3MgcmVmZXJlbmNlIGRhdGFiYXNlcwog
ICBhdCB4bWwucmVzb3VyY2Uub3JnIGNhbiBiZSB1c2VkLgoKCgpSb3Vzc2tvdiAgICAgICAg
ICAgICAgICBFeHBpcmVzIE9jdG9iZXIgMjEsIDIwMDUgICAgICAgICAgICAgICBbUGFnZSAx
MV0KDApJbnRlcm5ldC1EcmFmdCAgICAgSUQgU3VibWlzc2lvbiBUb29sc2V0OiBSZXF1aXJl
bWVudHMgICAgICAgIEFwcmlsIDIwMDUKCgogICBCb3RoIG9yaWdpbmFsIGFuZCBwcmVwcm9j
ZXNzZWQgWE1MIHNvdXJjZXMgbWF5IGJlIHBvc3RlZCBsYXRlci4gIFRoZQogICBvcmlnaW5h
bCBzb3VyY2Ugd2l0aCBpbmNsdWRlIFBJcyBtYXkgYmUgdXNlZnVsIHRvIHRoZSBSRkMgRWRp
dG9yIGFuZAogICBnZW5lcmF0aW9uIG9mIGRpZmZzIChhZ2FpbnN0IGZ1dHVyZSBvciBwYXN0
IG9yaWdpbmFsIHNvdXJjZXMpLiAgVGhlCiAgIHByZXByb2Nlc3NlZCBzb3VyY2Ugd2l0aG91
dCBpbmNsdWRlIFBJcyBiZWNvbWVzIHRoZSBkZWZhdWx0IHB1YmxpYwogICBYTUwgc291cmNl
IG9mIHRoZSBwb3N0ZWQgZHJhZnQgKFIxMC9iKS4gIElmIGFueSBvZiB0aGUgaW5jbHVkZSBQ
SXMKICAga25vd24gdG8gdGhlIFRvb2xzZXQgY2Fubm90IGJlIGhhbmRsZWQsIGFuIGVycm9y
IGlzIHJlY29yZGVkIChSMTEvYiksCiAgIGFuZCB0aGUgc3VibWl0dGVyIGlzIGVuY291cmFn
ZWQgdG8gZG8gdGhlIHByZXByb2Nlc3NpbmcgbG9jYWxseSwKICAgYmVmb3JlIHN1Ym1pdHRp
bmcgdGhlIGRyYWZ0IChSMTExL2IpLgoKICAgVW5jb21wcmVzc2VkIGRyYWZ0IGZvcm1hdHMg
b3RoZXIgdGhhbiBYTUwgYXJlIG5vdCBwcmVwcm9jZXNzZWQuCgo4LjIgIFByb2Nlc3NpbmcK
CiAgIFdoZW4gbm8gcGxhaW4gdGV4dCBmb3JtYXQgb2YgdGhlIGRyYWZ0IGlzIHN1Ym1pdHRl
ZCwgYnV0IFhNTCBzb3VyY2VzCiAgIGFyZSBhdmFpbGFibGUsIHRoZSBUb29sc2V0IGF0dGVt
cHRzIHRvIGdlbmVyYXRlIHBsYWluIHRleHQgZm9ybWF0CiAgIGZyb20gc3VibWl0dGVkIFhN
TCBzb3VyY2VzIChSNzAvYikuCgogICBJZiBYTUwgc291cmNlcyBhcmUgYXZhaWxhYmxlLCB0
aGUgVG9vbHNldCBnZW5lcmF0ZXMgSFRNTCBkcmFmdCBmb3JtYXQKICAgKFIxMTIvYykuICBI
VE1MIGdlbmVyYXRpb24gZmFpbHVyZXMgc2hvdWxkIHJlc3VsdCBpbiB3YXJuaW5ncywgbm90
CiAgIGVycm9ycyAoUjExNS9jKS4gIEhUTUwgZ2VuZXJhdGlvbiBpcyBub3QgbWVhbnQgdG8g
YmUgaW1wbGVtZW50ZWQKICAgdW50aWwgdGhlIEVuaGFuY2VtZW50IHN0YWdlIGlzIHJlYWNo
ZWQgKFIxMzAvYSkuICBJbiBnZW5lcmFsLCBIVE1MCiAgIGdlbmVyYXRpb24gaXMgZGVzaXJh
YmxlIGJlY2F1c2UgSFRNTCBkcmFmdHMgYXJlIHVzdWFsbHkgZWFzaWVyIHRvCiAgIG5hdmln
YXRlIHRoYW4gcGxhaW4gdGV4dCBkcmFmdHMgZHVlIHRvIGltcHJvdmVkIG92ZXJhbGwgcmVh
ZGFiaWxpdHkKICAgYW5kIGxpbmtzLiAgQXMgYW55IEVuaGFuY2VtZW50IFN0YWdlIGZlYXR1
cmUsIEhUTUwgZ2VuZXJhdGlvbiBtYXkgYmUKICAgZHJvcHBlZCBvciBkcmFzdGljYWxseSBj
aGFuZ2VkIHRvIHJlZmxlY3QgdGhlbi1jdXJyZW50IElFVEYgY29uc2Vuc3VzCiAgIGFuZCB0
aGUgZXhwZXJpZW5jZSBvZiB0aGUgZmlyc3QgdHdvIGltcGxlbWVudGF0aW9uIHN0YWdlcy4K
CiAgIEhpbnQ6IFRoZSBUb29sc2V0IGltcGxlbWVudGVycyBzaG91bGQgbm90IGFzc3VtZSB0
aGF0IGRyYWZ0IGZvcm1hdHMKICAgZ2VuZXJhdGVkIGJ5IHRoZSBzYW1lIHRvb2wgZnJvbSB0
aGUgc2FtZSBzb3VyY2UgZm9ybWF0IGhhdmUKICAgZXNzZW50aWFsbHkgdGhlIHNhbWUgY29u
dGVudC4gIFRoZSBnZW5lcmF0aW9uIHRvb2wgbWF5IGhhdmUgb3B0aW9ucwogICB0aGF0IGFs
bG93IGF1dGhvcnMgdG8gZ2VuZXJhdGUgY29udGVudCBleGNsdXNpdmUgdG8gYSBzcGVjaWZp
YwogICBnZW5lcmF0ZWQgZm9ybWF0LiAgU3VjaCBvcHRpb25zIG1pZ2h0IGJlIGFidXNlZC4K
CjguMyAgU3RvcmFnZQoKICAgVGhlIENoZWNrIGFjdGlvbiBuZWVkcyB0byBzdG9yZSBhbGwg
ZHJhZnQgZm9ybWF0cyBzbyB0aGF0CiAgIHN1Y2Nlc3NmdWxseSB2YWxpZGF0ZWQgZHJhZnRz
IGNhbiBsYXRlciBiZSBhdXRvLXBvc3RlZCBhdCBzdWJtaXR0ZXIKICAgcmVxdWVzdC4gIFRo
ZSBhY3Rpb24gc3RvcmVzIGFsbCBzdWJtaXR0ZWQgZm9ybWF0cyBvZiB0aGUgZHJhZnQgaW4g
YQogICBzdGFnaW5nIGFyZWEgZGVkaWNhdGVkIHRvIHRoZSBUb29sc2V0IChSMTIvYSkuICBJ
ZiwgYWZ0ZXIgZ2FyYmFnZQogICBjb2xsZWN0aW9uLCB0aGUgc3RhZ2luZyBhcmVhIGlzIGZ1
bGwgKGkuZS4sIHRoZSB0b3RhbCB1c2VkIHNpemUgaGFzCiAgIHJlYWNoZWQgdGhlIGNvbmZp
Z3VyZWQgbWF4aW11bSBjYXBhY2l0eSksIHRoZSBzdWJtaXR0ZXIgYW5kIHRoZQogICBTZWNy
ZXRhcmlhdCBhcmUgbm90aWZpZWQgb2YgYSBmYXRhbCBlcnJvciAoUjEzL2EpLgoKOC40ICBF
eHRyYWN0aW9uCgogICBUaGUgVG9vbHNldCBleHRyYWN0cyBtZXRhLWRhdGEgZnJvbSB0aGUg
Zm9sbG93aW5nIHN0b3JlZCBkcmFmdAogICBmb3JtYXRzOiBwbGFpbiB0ZXh0IChSMTMxL2Ep
LCBYTUwgKFIxMzIvYiksIGFuZCBvdGhlciAoUjEzMy9jKS4gIElmIGEKICAgbWV0YS1kYXRh
IGV4dHJhY3Rpb24gZmFpbHMsIHRoZSBUb29sc2V0IHJlY29yZHMgYW4gZXJyb3IgKFIxNS9h
KS4KCgoKUm91c3Nrb3YgICAgICAgICAgICAgICAgRXhwaXJlcyBPY3RvYmVyIDIxLCAyMDA1
ICAgICAgICAgICAgICAgW1BhZ2UgMTJdCgwKSW50ZXJuZXQtRHJhZnQgICAgIElEIFN1Ym1p
c3Npb24gVG9vbHNldDogUmVxdWlyZW1lbnRzICAgICAgICBBcHJpbCAyMDA1CgoKICAgTWV0
YS1kYXRhIGV4dHJhY3Rpb24gaXMgbmVjZXNzYXJ5IHRvIHZhbGlkYXRlIGFuZCBwb3N0IHRo
ZSBkcmFmdC4KICAgRXh0cmFjdGlvbiBmcm9tIGFsbCBmb3JtYXRzIGlzIG5lY2Vzc2FyeSB0
byB2YWxpZGF0ZSB0aGF0IGFsbCBtZXRhLQogICBkYXRhIG1hdGNoZXMgYWNyb3NzIGFsbCBm
b3JtYXRzIChpbiBhZGRpdGlvbiB0byBhbmQgYmVmb3JlIHRoZQogICBUb29sc2V0IGNhbiB2
YWxpZGF0ZSB0aGF0IHRoZSBjb250ZW50cyBtYXRjaGVzIGFzIHdlbGwpLgoKICAgU2VjdGlv
biAxNyBkb2N1bWVudHMgYSBub24tb2J2aW91cyBpbXBsZW1lbnRhdGlvbiBzY2hlZHVsZSBy
ZWxhdGVkIHRvCiAgIHRoZSBhYm92ZSB0d28gcmVxdWlyZW1lbnRzLiAgV2hlbiBvbmx5IHBh
cnRpYWwgc3VwcG9ydCBmb3IgZm9ybWF0CiAgIGludGVycHJldGF0aW9uIGlzIGF2YWlsYWJs
ZSwgb25seSBpbnRlcnByZXRlZCBmb3JtYXRzIGFyZSBzdWJqZWN0IHRvCiAgIGV4dHJhY3Rp
b24gYW5kIHZhbGlkYXRpb24gcmVxdWlyZW1lbnRzLiAgSW4gb3RoZXIgd29yZHMsIGlmIHRo
ZQogICBUb29sc2V0IGRvZXMgbm90IHlldCBzdXBwb3J0IGludGVycHJldGF0aW9uIG9mIGEg
Z2l2ZW4gZm9ybWF0LCB0aGVuCiAgIHRoZSBjb3JyZXNwb25kaW5nIGluZm9ybWF0aW9uIGlz
IHN0b3JlZCBhbmQgbWFkZSBhdmFpbGFibGUgImFzIGlzIiwKICAgcmVnYXJkbGVzcyBvZiB0
aGUgYWN0dWFsIGNvbnRlbnQuCgogICBUaGUgZHJhZnQgaW50ZXJwcmV0ZXIgZXh0cmFjdHMg
dGhlIGZvbGxvd2luZyBtZXRhLWRhdGEgZnJvbSBlYWNoCiAgIGRyYWZ0IGZvcm1hdCAoUjE2
L2EpOgoKICAgaWRlbnRpZmllcjogQWxzbyBrbm93biBhcyBkcmFmdCAiZmlsZW5hbWUiLiAg
Rm9yIGV4YW1wbGUsCiAgICAgIGRyYWZ0LWlldGYtc2lldmUtdmFjYXRpb24tMTMgLgoKICAg
dmVyc2lvbjogQSBub24tbmVnYXRpdmUgaW50ZWdlciBudW1iZXIgcmVwcmVzZW50aW5nIGRy
YWZ0IHZlcnNpb24KICAgICAgbnVtYmVyIChhbHNvIGtub3duIGFzIGRyYWZ0IHJldmlzaW9u
IG51bWJlcikuICBGb3IgZXhhbXBsZSwgdGhlCiAgICAgIG51bWJlciBzZXZlbiBpbiBkcmFm
dC1pZXRmLXNpZXZlLXZhY2F0aW9uLTA3LgoKICAgbmFtZTogVGhlIGNvbW1vbiBwYXJ0IG9m
IGFsbCBkcmFmdCBpZGVudGlmaWVycyBmb3IgYWxsIHZlcnNpb25zIG9mCiAgICAgIHRoZSBz
YW1lIGRyYWZ0LiAgSW4gb3RoZXIgd29yZHMsIGEgZHJhZnQgaWRlbnRpZmllciB3aXRob3V0
IHRoZQogICAgICB2ZXJzaW9uIGNvbXBvbmVudC4gIEZvciBleGFtcGxlLCBkcmFmdC1pZXRm
LXNpZXZlLXZhY2F0aW9uIGluCiAgICAgIGRyYWZ0LWlldGYtc2lldmUtdmFjYXRpb24tMDcu
CgogICBXRyBJRDogV29ya2luZyBHcm91cCBpZGVudGlmaWVyLiAgVGhlIFdHIElEIHZhbHVl
IGlzIGVtcHR5IGZvciBkcmFmdHMKICAgICAgdGhhdCBhcmUgbm90IFdHLW5hbWVkIGRyYWZ0
cy4gIEZvciBleGFtcGxlLCAic2lldmUiIGluCiAgICAgICJkcmFmdC1pZXRmLXNpZXZlLXZh
Y2F0aW9uLTA3IiBhbmQgIm9wZXMiIGluCiAgICAgICJkcmFmdC1yb3Vzc2tvdi1vcGVzLW9j
cC0wMCIgYXJlIGJvdGggV0cgSURzLiAgRXh0cmFjdGlvbiBvZiB0aGUKICAgICAgV0cgSUQg
ZnJvbSBhIGdpdmVuIGluZGl2aWR1YWwgZHJhZnQgaWRlbnRpZmllciBpcyBhbiBFbmhhbmNl
bWVudAogICAgICBTdGFnZSBmZWF0dXJlOyB0aGUgcHJvY2VzcyBpcyBpbXByZWNpc2UgYW5k
IHJlcXVpcmVzIGNoZWNraW5nIHdpdGgKICAgICAgYSBsaXN0IG9mIGtub3duIElFVEYgd29y
a2luZyBncm91cHMsIHRlYW1zLCBhbmQgc2ltaWxhcgogICAgICBzdHJ1Y3R1cmVzLgoKICAg
V0cgZmxhZzogVHJ1ZSBmb3IgV0dOIGRyYWZ0cyBhbmQgZmFsc2UgZm9yIGFsbCBvdGhlciBk
cmFmdHMuICBGb3IKICAgICAgZXhhbXBsZSwgInRydWUiIGZvciAiZHJhZnQtaWV0Zi1zaWV2
ZS12YWNhdGlvbi0xMyIuICBUaGlzIGZsYWcKICAgICAgb25seSBpbmZsdWVuY2VzIHRoZSBm
dXJ0aGVyIGhhbmRsaW5nIG9mIGluaXRpYWwgKHZlcnNpb24gMDApIGRyYWZ0CiAgICAgIHN1
Ym1pc3Npb25zLgoKICAgdGl0bGU6IEEgaHVtYW4tZnJpZW5kbHkgZHJhZnQgdGl0bGUuICBG
b3IgZXhhbXBsZSwgdGhlIHRpdGxlIG9mIHRoaXMKICAgICAgZG9jdW1lbnQgaXMgIlJlcXVp
cmVtZW50cyBmb3IgYW4gSUVURiBEcmFmdCBTdWJtaXNzaW9uIFRvb2xzZXQiCgoKCgoKCgpS
b3Vzc2tvdiAgICAgICAgICAgICAgICBFeHBpcmVzIE9jdG9iZXIgMjEsIDIwMDUgICAgICAg
ICAgICAgICBbUGFnZSAxM10KDApJbnRlcm5ldC1EcmFmdCAgICAgSUQgU3VibWlzc2lvbiBU
b29sc2V0OiBSZXF1aXJlbWVudHMgICAgICAgIEFwcmlsIDIwMDUKCgogICBhdXRob3JzOiBB
IGxpc3Qgb2YgYWxsIGRyYWZ0IGF1dGhvcnMuICBGb3IgZWFjaCBhdXRob3IsIHRoZWlyIG5h
bWUKICAgICAgYW5kIGVtYWlsIGFkZHJlc3MgYXJlIGV4dHJhY3RlZC4KCiAgIGFic3RyYWN0
OiBUaGUgZHJhZnQgYWJzdHJhY3QgdGV4dC4KCiAgIGNyZWF0aW9uIGRhdGU6IFRoZSBkcmFm
dCB2ZXJzaW9uIGNyZWF0aW9uIGRhdGUuCgogICBleHBpcmF0aW9uIGRhdGU6IFRoZSBkcmFm
dCB2ZXJzaW9uIGV4cGlyYXRpb24gZGF0ZS4KCiAgIHNpemU6IFRoZSBudW1iZXIgb2YgcGFn
ZXMgYW5kIG9jdGV0cyBpbiB0aGUgcHJpbWFyeSBmb3JtYXQgb2YgdGhlCiAgICAgIGRyYWZ0
LiAgVGhlIGRlZmluaXRpb24gb2YgYSBwYWdlIGRlcGVuZHMgb24gdGhlIGZvcm1hdCBhbmQg
bWF5IGJlCiAgICAgIGltcHJlY2lzZSBvciBhcmJpdHJhcnkgZm9yIHNvbWUgZm9ybWF0cy4K
CiAgIEZhaWx1cmUgdG8gZXh0cmFjdCBhbnkgZmllbGQgcmVzdWx0cyBpbiBlcnJvciAoUjk1
L2EpLgoKICAgVGhlIFRvb2xzZXQgcmVxdWlyZXMgYXV0aG9yIGVtYWlsIGFkZHJlc3NlcyBi
ZWNhdXNlIHRoZXkgYXJlCiAgIGVzc2VudGlhbCBmb3Igbm90aWZ5aW5nIGNvLWF1dGhvcnMg
dGhhdCB0aGVpciBkcmFmdCBoYXMgYmVlbiBwb3N0ZWQuCiAgIElmIHRoZXJlIGFyZSBubyBz
dWNoIG5vdGlmaWNhdGlvbnMsIGEgc3VibWl0dGVyIGFkZGluZyBhIGNvLWF1dGhvciB0bwog
ICB0aGUgZHJhZnQgd2l0aG91dCB0aGUgY28tYXV0aG9yJ3MgY29uc2VudCBtYXkgbm90IGJl
IGNhdWdodCBmb3IgYQogICB3aGlsZS4gIFN1Y2ggInN1cnByaXNlIiBjby1hdXRob3JzaGlw
cyBoYXZlIGhhcHBlbmVkIGluIHRoZSBwYXN0IGFuZAogICBjYW4gYmUgcXVpdGUgYW5ub3lp
bmcuICBIb3dldmVyLCBzaW5jZSB0aGUgVG9vbHNldCBkb2VzIG5vdCBzb2xpY2l0CiAgIGNv
LWF1dGhvcnMnIGNvbnNlbnQgdG8gcG9zdCBhIHZhbGlkIGRyYWZ0IChhbmQgc3VjaCBzb2xp
Y2l0YXRpb24KICAgd291bGQgbm90IGdvIGJleW9uZCBlbWFpbCBjb250cm9sIHZlcmlmaWNh
dGlvbiBhbnl3YXkpLCBpdCBpcyBub3QKICAgcG9zc2libGUgdG8gc3RvcCBhIG1hbGljaW91
cyBzdWJtaXR0ZXIgZnJvbSBhZGRpbmcgY28tYXV0aG9ycyB3aXRob3V0CiAgIHRoZWlyIGtu
b3dsZWRnZS4KCiAgIExpa2Ugb3RoZXIgbWV0YS1kYXRhIGl0ZW1zIGFib3ZlLCBkcmFmdCBj
cmVhdGlvbiBhbmQgZXhwaXJhdGlvbiBkYXRlcwogICBhcmUgZXh0cmFjdGVkIGZyb20gdGhl
IGRyYWZ0OyB0aGVpciB2YWx1ZXMgZG8gbm90IGRlcGVuZCBvbiB0aGUKICAgYWN0dWFsIHN1
Ym1pc3Npb24gdGltZSAoaS5lLiwgdGhlIHRpbWUgdGhlIENoZWNrIGFjdGlvbiBzdGFydHMp
LgogICBIb3dldmVyLCB0aGUgdmFsaWRhdGlvbiBwcm9jZWR1cmUgKHNlZSBTZWN0aW9uIDgu
NSkgbWF5IGRlY2xhcmUgYW55CiAgIGV4dHJhY3RlZCBkYXRlIGludmFsaWQgYWZ0ZXIgdGFr
aW5nIGludG8gY29uc2lkZXJhdGlvbiBjdXJyZW50IChpLmUuLAogICBzdWJtaXNzaW9uKSB0
aW1lLCBJRVRGIGRyYWZ0IGV4cGlyYXRpb24gcnVsZXMsIGFuZCBvdGhlciBmYWN0b3JzCiAg
IGV4dGVybmFsIHRvIHRoZSBkcmFmdC4KCjguNSAgVmFsaWRhdGlvbgoKICAgRHJhZnRzIG5l
ZWQgdG8gYmUgdmFsaWRhdGVkIHRvIGNhdGNoIGJyb2tlbiBzdWJtaXNzaW9ucy4gIFZhbGlk
YXRpb24KICAgYWxzbyBoZWxwcyBlZHVjYXRlIG9yIHdhcm4gYXV0aG9ycyBvZiBwcm9ibGVt
cyB0aGF0IG1heSBiZWNvbWUgc2hvdy0KICAgc3RvcHBlcnMgd2hlbiB0aGUgZHJhZnQgaXMg
c2VudCBmb3IgSUVURiBMYXN0IENhbGwgYW5kIElFU0cgcmV2aWV3LgogICBJRVRGIHN0YW5k
YXJkcyBoYXZlIHRvIGZvbGxvdyBhIHNldCBvZiBzeW50YXggYW5kIHNlbWFudGljcwogICBy
ZXF1aXJlbWVudHMgKHNlZSB0aGUgIklELU5JVFMiIGRvY3VtZW50IGF0CiAgIDxodHRwOi8v
d3d3LmlldGYub3JnL0lELUNoZWNrbGlzdC5odG1sPi4gIE1vc3Qgb2YgdGhvc2UgcmVxdWly
ZW1lbnRzCiAgIGFyZSBub3QgZW5mb3JjZWQgZm9yIEludGVybmV0LURyYWZ0cy4gIEhvd2V2
ZXIsIGZvbGxvd2luZyB0aGVtIG1heQogICBpbXByb3ZlIGRyYWZ0IHF1YWxpdHksIHJlZHVj
ZSB0aGUgSUVTRyBsb2FkLCBhbmQgaW5jcmVhc2UgdGhlIGNoYW5jZXMKICAgb2YgdGhlIGRy
YWZ0IGJlaW5nIGFwcHJvdmVkIGFzIGFuIFJGQy4KCiAgIFdoZW4gdmFsaWRhdGluZyBhIGdp
dmVuIGRyYWZ0LCBpdCBpcyBpbXBvcnRhbnQgdG8gZGlzdGluZ3Vpc2ggYmV0d2VlbgogICBh
YnNvbHV0ZSByZXF1aXJlbWVudHMgYW5kIGRlc2lyYWJsZSBkcmFmdCBwcm9wZXJ0aWVzLiAg
Qm90aAoKCgpSb3Vzc2tvdiAgICAgICAgICAgICAgICBFeHBpcmVzIE9jdG9iZXIgMjEsIDIw
MDUgICAgICAgICAgICAgICBbUGFnZSAxNF0KDApJbnRlcm5ldC1EcmFmdCAgICAgSUQgU3Vi
bWlzc2lvbiBUb29sc2V0OiBSZXF1aXJlbWVudHMgICAgICAgIEFwcmlsIDIwMDUKCgogICBj
YXRlZ29yaWVzIGFyZSBjaGVja2VkIGZvciwgYnV0IHZpb2xhdGlvbnMgaGF2ZSBkaWZmZXJl
bnQgZWZmZWN0cwogICBkZXBlbmRpbmcgb24gdGhlIGNhdGVnb3J5LiAgVGhlIHR3byBjYXRl
Z29yaWVzIGFyZSBkZXRhaWxlZCBpbiB0aGUKICAgZm9sbG93aW5nIHN1YnNlY3Rpb25zLgoK
ICAgV2hlbiBhIHZhbGlkIGRyYWZ0IGlzIGJlaW5nIHBvc3RlZCBhbmQgc3VibWl0dGVyIGF1
dGhvcml6YXRpb24gb3IgY28tCiAgIGF1dGhvciBub3RpZmljYXRpb24gaXMgcGVyZm9ybWVk
LCB2YWxpZGF0aW9uIHJlc3VsdHMgc2hvdWxkIGJlCiAgIGluY2x1ZGVkIGluIHRoZSBlbWFp
bCAoUjgxL2IpIHNvIHRoYXQgdGhlIHN1Ym1pdHRlciBjYW4gc2VlIG1ldGEtZGF0YQogICBl
eHRyYWN0aW9uIGFuZCB2YWxpZGF0aW9uIHdhcm5pbmdzLiAgTm90ZSB0aGF0IHRoZXNlIHJl
c3VsdHMgY2Fubm90CiAgIGluY2x1ZGUgZXJyb3JzIHNpbmNlIG9ubHkgdmFsaWQgZHJhZnRz
IGNhbiBiZSBwb3N0ZWQuCgo4LjUuMSAgQWJzb2x1dGUgcmVxdWlyZW1lbnRzCgogICBWaW9s
YXRpbmcgYW55IG9mIHRoZXNlIHJlcXVpcmVtZW50cyB3b3VsZCBwcmV2ZW50IGEgZHJhZnQg
dG8gYmUKICAgYXV0b21hdGljYWxseSBwb3N0ZWQgKFIxNy9hKS4gIFRoZSBvZmZlbmRpbmcg
ZHJhZnQgd291bGQgaGF2ZSB0byBiZQogICBmaXhlZCBvciBzdWJtaXR0ZWQgZm9yIG1hbnVh
bCBwb3N0aW5nLCB3aXRoIGFuIGV4cGxhbmF0aW9uIHdoeSB0aGUKICAgYWJzb2x1dGUgcmVx
dWlyZW1lbnRzIG5lZWQgdG8gYmUgdmlvbGF0ZWQgKG9yIHdoeSB0aGUgVmFsaWRhdG9yIG1p
cy0KICAgZGV0ZWN0ZWQgdmlvbGF0aW9ucykuICBUaGVzZSBleHBsYW5hdGlvbnMgbWF5IHNw
ZWVkIHVwIFNlY3JldGFyaWF0CiAgIHBvc3RpbmcgZGVjaXNpb24gYW5kIG1heSBoZWxwIFNl
Y3JldGFyaWF0IHRvIGltcHJvdmUgdGhlIFRvb2xzZXQKICAgaW1wbGVtZW50YXRpb24uCgog
ICAxLiAgQWxsIGF2YWlsYWJsZSBtZXRhLWRhdGEgZW50cmllcyBtdXN0IG1hdGNoIGFjcm9z
cyBhbGwgc3VibWl0dGVkCiAgICAgICBkcmFmdCBmb3JtYXRzIChSMTgvYSkuICBGb3IgZXhh
bXBsZSwgaWYgdGhlIGludGVycHJldGVyIG1hbmFnZWQKICAgICAgIHRvIGV4dHJhY3QgYSBk
cmFmdCB0aXRsZSBmcm9tIGJvdGggdGhlIHBsYWluIHRleHQgYW5kIHRoZSBQREYKICAgICAg
IGZvcm1hdCwgYm90aCB0aXRsZXMgbXVzdCBtYXRjaC4gIFRoaXMgcmVxdWlyZW1lbnQgcHJl
dmVudHMKICAgICAgIGFjY2lkZW50YWwgc3VibWlzc2lvbiBvZiBtaXNtYXRjaGluZyBmb3Jt
YXRzLgoKICAgMi4gIFZlcnNpb24gMDAgb2YgYSBXb3JraW5nIEdyb3VwIGRyYWZ0IGhhcyBh
IGNvcnJlc3BvbmRpbmcgV29ya2luZwogICAgICAgR3JvdXAgYXBwcm92YWwgKFIyMC9hKS4g
IFRoaXMgYXBwcm92YWwgY2FuIGJlIHJlbGF5ZWQgYmVmb3JlIG9yCiAgICAgICBhZnRlciB0
aGUgZmlyc3QgZHJhZnQgc3VibWlzc2lvbiwgYnkgYSBDaGFpciBvciBTZWNyZXRhcnkgb2Yg
dGhlCiAgICAgICBXRy4gIFNlZSBTZWN0aW9uIDguNS40IGZvciByZWxhdGVkIHJlcXVpcmVt
ZW50cy4KCiAgIDMuICBUaGUgZHJhZnQgSUQgbXVzdCBiZSBjb3JyZWN0IChSMjIvYSksIGlu
Y2x1ZGluZyB0aGUgZHJhZnQgdmVyc2lvbgogICAgICAgbnVtYmVyIHZhbHVlLiAgRHJhZnQg
dmVyc2lvbiBudW1iZXJzIG11c3Qgc3RhcnQgd2l0aCB6ZXJvIGFuZAogICAgICAgaW5jcmVh
c2UgYnkgb25lIHdpdGggZXZlcnkgbmV3IHZlcnNpb24uICBUbyBzYXRpc2Z5IHRoaXMKICAg
ICAgIHJlcXVpcmVtZW50LCB0aGUgVG9vbHNldCB3b3VsZCBoYXZlIHRvIGNvbnN1bHQgdGhl
IHJlcG9zaXRvcnkgb2YKICAgICAgIGFscmVhZHkgcG9zdGVkIGRyYWZ0cywgaW5jbHVkaW5n
IGV4cGlyZWQgb25lcy4KCiAgIDQuICBBbiBJRVRGIElQUiBTdGF0ZW1lbnQgYW5kIG90aGVy
IGJvaWxlcnBsYXRlIHJlcXVpcmVkIGZvciBkcmFmdHMKICAgICAgIGFjY29yZGluZyB0byBb
UkZDMzk3OF0gYW5kIFtSRkMzOTc5XSAob3Igc3VjY2Vzc29ycykgbXVzdCBhcHBlYXIKICAg
ICAgIGluIHRoZSBkcmFmdCB0ZXh0IChSMjMvYSkuCgogICA1LiAgVGhlIGNyZWF0aW9uIG9m
IHRoZSBkcmFmdCB2ZXJzaW9uIGNvdWxkIGhhdmUgaGFwcGVuZWQgNDggaG91cnMgb3IKICAg
ICAgIGxlc3MgYmVmb3JlIHN1Ym1pc3Npb24gdGltZS4gIEhpbnQ6IEltcGxlbWVudGVycyBz
aG91bGQgYmUKICAgICAgIGNhcmVmdWwgdG8gaGFuZGxlIGNyZWF0aW9uIGRhdGVzIHRoYXQg
YXBwZWFyIHRvIGJlIGluIHRoZSBwYXN0IG9yCiAgICAgICBpbiB0aGUgZnV0dXJlLCBkdWUg
dG8gcG9zc2libGUgdGltZSB6b25lIGRpZmZlcmVuY2VzLiAgTWFraW5nIHRoZQogICAgICAg
bW9zdCBmb3JnaXZpbmcvcGVybWlzc2l2ZSBhc3N1bXB0aW9uIGFib3V0IHRoZSB0aW1lIHpv
bmUgc2hvdWxkCiAgICAgICBzdWZmaWNlLgoKCgoKUm91c3Nrb3YgICAgICAgICAgICAgICAg
RXhwaXJlcyBPY3RvYmVyIDIxLCAyMDA1ICAgICAgICAgICAgICAgW1BhZ2UgMTVdCgwKSW50
ZXJuZXQtRHJhZnQgICAgIElEIFN1Ym1pc3Npb24gVG9vbHNldDogUmVxdWlyZW1lbnRzICAg
ICAgICBBcHJpbCAyMDA1CgoKICAgNi4gIFRoZSBkcmFmdCB2ZXJzaW9uIGV4cGlyYXRpb24g
ZGF0ZSBvYmV5cyBJRVRGIGRyYWZ0IGV4cGlyYXRpb24KICAgICAgIHJ1bGVzLgoKICAgNy4g
IE5vIElFVEYgc3VibWlzc2lvbiBibGFja291dCBwZXJpb2QgYXBwbGllcy4gIEhpbnQ6ICBJ
RVRGCiAgICAgICBibGFja291dHMgbXVzdCBiZSBlbmZvcmNlZCBiYXNlZCBvbiBzdWJtaXNz
aW9uIHRpbWUsIG5vdCBwb3NzaWJsZQogICAgICAgZHJhZnQgY3JlYXRpb24gdGltZS4KCiAg
IDguICBQb3N0aW5nIHRoZSBkcmFmdCBtdXN0IG5vdCByZXN1bHQgaW4gYW55IERlbmlhbCBv
ZiBTZXJ2aWNlIChEb1MpCiAgICAgICBhdHRhY2sgdGhyZXNob2xkIHRvIGJlIGNyb3NzZWQg
KFI5Ny9hKS4gIFNwZWNpZmljIHRocmVzaG9sZHMgYXJlCiAgICAgICBkb2N1bWVudGVkIGlu
IFNlY3Rpb24gOC41LjMuCgogICA5LiAgWE1MIHNvdXJjZXMgKGlmIGF2YWlsYWJsZSkgYXJl
IHZhbGlkIHdpdGggcmVzcGVjdCB0byB0aGUgWE1MCiAgICAgICBmb3JtYXQgW1hNTF0gKFIx
NTMvYykgYW5kIFhNTCBEb2N1bWVudCBUeXBlIERlZmluaXRpb24gKERURCkgZm9yCiAgICAg
ICBJRVRGIGRyYWZ0cyAoUjE1NC9jKS4gIE5vdGUgdGhhdCBkdXJpbmcgdGhlIGZpcnN0IHR3
bwogICAgICAgaW1wbGVtZW50YXRpb24gc3RhZ2VzLCB0aGUgY29ycmVzcG9uZGluZyB2YWxp
ZGF0aW9uIGZhaWx1cmVzCiAgICAgICByZXN1bHQgaW4gd2FybmluZ3MgYW5kIG5vdCBlcnJv
cnMgKHNlZSBTZWN0aW9uIDguNS4yKS4KCiAgIFRoZSBYTUwgRFREIGZvciBJRVRGIGRyYWZ0
cyBpcyBkb2N1bWVudGVkIGluIFtSRkMyNjI5XSB3aXRoIHJlY2VudAogICBjaGFuZ2VzIGF2
YWlsYWJsZSBpbiBbSS1ELm1yb3NlLXdyaXRpbmctcmZjc10uICBIaW50OiBCaWxsIEZlbm5l
cidzCiAgICJSRkMgMjYyOSB2YWxpZGF0b3IiIGF0CiAgIGh0dHA6Ly9ydGcuaWV0Zi5vcmcv
fmZlbm5lci9pZXRmL3htbDJyZmMtdmFsaWQvIChvciBpdHMgZGVyaXZhdGl2ZSkKICAgbWF5
IGJlIHVzZWZ1bCBmb3IgWE1MIGZvcm1hdCBhbmQgRFREIHZhbGlkYXRpb24uCgo4LjUuMiAg
RGVzaXJhYmxlIGZlYXR1cmVzCgogICBWaW9sYXRpbmcgYW55IG9mIHRoZSBmb2xsb3dpbmcg
cmVxdWlyZW1lbnRzIGRvZXMgbm90IHByZXZlbnQgdGhlCiAgIHN1Ym1pdHRlciBmcm9tIGF1
dG8tcG9zdGluZyB0aGUgZHJhZnQgKFIyNC9hKS4KCiAgIDEuICBBbGwgYXV0b21hdGljYWxs
eSB0ZXN0YWJsZSBuaXRzIGluIHRoZSAiSUQtTklUUyIgZG9jdW1lbnQgYXQKICAgICAgIDxo
dHRwOi8vd3d3LmlldGYub3JnL0lELUNoZWNrbGlzdC5odG1sPiAoUjExNi9iKS4gIFRoZSBU
b29sc2V0CiAgICAgICBzaG91bGQgdXNlIGV4dGVybmFsIHRvb2xzIHRvIGNoZWNrIHRoZXNl
IHJhdGhlciB0aGFuIGVtYmVkIG5pdHMKICAgICAgIGNoZWNraW5nIGNvZGUgKFIxMTcvYSku
ICBIaW50OiBIZW5yaWsgTGV2a293ZXR6JyBpZG5pdHMgdG9vbCBjYW4KICAgICAgIGJlIHVz
ZWQgKGh0dHA6Ly9pZXRmLmxldmtvd2V0ei5jb20vdG9vbHMvaWRuaXRzLykgYW5kIG90aGVy
IHRvb2xzCiAgICAgICBjYW4gYmUgd3JpdHRlbiBvciBhZG9wdGVkLgoKICAgMi4gIE5ldyBk
cmFmdCB2ZXJzaW9ucyBhcmUgZXhwZWN0ZWQgKFIyMS9iKS4gIEZvciBleGFtcGxlLCB2ZXJz
aW9uIDAwCiAgICAgICBvZiBhbiBpbmRpdmlkdWFsIGRyYWZ0IGlzIGFsd2F5cyBleHBlY3Rl
ZCwgd2hpbGUgcG9zdGluZyBhIG5ldwogICAgICAgdmVyc2lvbiBvZiBhIGRyYWZ0IGFscmVh
ZHkgdW5kZXIgdGhlIElFU0cgcmV2aWV3IHNob3VsZCBnZW5lcmF0ZQogICAgICAgYSB3YXJu
aW5nLgoKICAgMy4gIElmIGJvdGggWE1MIGFuZCBwbGFpbiB0ZXh0IGZvcm1hdHMgYXJlIHN1
Ym1pdHRlZCwgdGhlIHN1Ym1pdHRlZAogICAgICAgcGxhaW4gdGV4dCBtYXRjaGVzIHdoYXQg
Y2FuIGJlIGdlbmVyYXRlZCBiYXNlZCBvbiBzdWJtaXR0ZWQgWE1MCiAgICAgICAoUjE0Ni9i
KS4KCiAgIDQuICBUaGUgcHJldmlvdXMgdmVyc2lvbiwgaWYgYW55LCB3YXMgcG9zdGVkIGF0
IGxlYXN0IDI0IGhvdXJzIGFnbwogICAgICAgKFI5Ni9iKS4gIFRoaXMgd2FybmluZyBtYXkg
cHJldmVudCBzb21lIGh1bWFuIGVycm9ycywgZXNwZWNpYWxseQogICAgICAgd2hlbiBtdWx0
aXBsZSBhdXRob3JzIG1heSBwb3N0IHRoZSBzYW1lIGRyYWZ0LgoKCgoKUm91c3Nrb3YgICAg
ICAgICAgICAgICAgRXhwaXJlcyBPY3RvYmVyIDIxLCAyMDA1ICAgICAgICAgICAgICAgW1Bh
Z2UgMTZdCgwKSW50ZXJuZXQtRHJhZnQgICAgIElEIFN1Ym1pc3Npb24gVG9vbHNldDogUmVx
dWlyZW1lbnRzICAgICAgICBBcHJpbCAyMDA1CgoKICAgNS4gIFhNTCBzb3VyY2VzIChpZiBh
dmFpbGFibGUpIGFyZSB2YWxpZCB3aXRoIHJlc3BlY3QgdG8gdGhlIFhNTAogICAgICAgZm9y
bWF0IChSMTU1L2IpIGFuZCBYTUwgRFREIGZvciBJRVRGIGRyYWZ0cyAoUjE1Ni9iKS4gIFRo
ZXNlCiAgICAgICByZXF1aXJlbWVudHMgYmVjb21lIGFic29sdXRlIGFmdGVyIHRoZSBzZWNv
bmQgaW1wbGVtZW50YXRpb24KICAgICAgIHBoYXNlLiAgU2VlIFNlY3Rpb24gOC41LjEgZm9y
IHJlbGF0ZWQgaW5mb3JtYXRpb24uCgogICBXaGVuIGNvbXBhcmluZyBnZW5lcmF0ZWQgYW5k
IHN1Ym1pdHRlZCBwbGFpbiB0ZXh0IGZvcm1hdHMgdG8gc2F0aXNmeQogICBSMTQ2LCBhIHN0
YW5kYXJkIHdvcmQtYmFzZWQgZGlmZiBpcyBzdWZmaWNpZW50IGZvciBpbml0aWFsIFRvb2xz
ZXQKICAgaW1wbGVtZW50YXRpb25zIChSMTQ3L2IpLiAgSG93ZXZlciwgYSBjdXN0b20gZnV6
enkgbWF0Y2hpbmcgZnVuY3Rpb24KICAgY2FuIGJlIGRldmVsb3BlZCAoUjE0OC9jKSB0byBt
aW5pbWl6ZSBmYWxzZSB3YXJuaW5ncyBkdWUgdG8sIGZvcgogICBleGFtcGxlLCBkcmFmdCB0
ZXh0IGZvcm1hdHRpbmcgZGlmZmVyZW5jZXMuICBXaGVuIGRpZmZlcmVuY2VzIGFyZQogICBk
ZXRlY3RlZCwgYSBjb21wbGV0ZSBkaWZmIG1heSBiZSBwcm92aWRlZCBvbiBhIHNlcGFyYXRl
IHBhZ2UKICAgKFIxNDkvYyksIGluIGFkZGl0aW9uIHRvIHRoZSB3YXJuaW5nLgoKICAgSGlu
dDogV2hlbiBjb21wYXJpbmcgZ2VuZXJhdGVkIGFuZCBzdWJtaXR0ZWQgcGxhaW4gdGV4dCBm
b3JtYXRzLCB0aGUKICAgVG9vbHNldCBtYXkgdHJ5IHNldmVyYWwgcmVjZW50IHhtbDJyZmMg
dmVyc2lvbnMgZm9yIHBsYWluIHRleHQKICAgZ2VuZXJhdGlvbiwgdG8gZWxpbWluYXRlIHdh
cm5pbmdzIGR1ZSB0byBkaWZmZXJlbmNlcyBhbW9uZyB4bWwycmZjCiAgIHZlcnNpb25zLgoK
OC41LjMgIERvUyB0aHJlc2hvbGRzCgogICBUaGUgZm9sbG93aW5nIHRhYmxlIGRvY3VtZW50
cyBEb1MgYXR0YWNrIHRocmVzaG9sZHMgZm9yIHZhcmlvdXMgZHJhZnQKICAgY2F0ZWdvcmll
cy4gIERhaWx5IGxpbWl0cyBjb3JyZXNwb25kIHRvIGFsbCBkcmFmdHMgKGFuZCBhbGwgZHJh
ZnQKICAgZm9ybWF0cykgd2l0aGluIHRoZSBjYXRlZ29yeS4gIE90aGVyIHRocmVzaG9sZHMg
bWF5IGJlIGludHJvZHVjZWQgYW5kCiAgIHRoZXNlIGluaXRpYWwgdGhyZXNob2xkcyBtYXkg
YmUgYWRqdXN0ZWQgYXMgbmVjZXNzYXJ5LiAgVGhlCiAgIHRocmVzaG9sZHMgYXJlIGxpa2Vs
eSB0byBiZWNvbWUgbW9yZSBzbWFydC9keW5hbWljIHdpdGggZXhwZXJpZW5jZS4KCiAgIERv
UyBhdHRhY2sgdGhyZXNob2xkczoKCiAgICstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tKwogICB8IGNhdGVnb3J5
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgdmVyc2lvbnMvZGF5IHwgICAgTUIv
ZGF5IHwKICAgKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0t
LS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0rCiAgIHwgZHJhZnRzIHdpdGggdGhlIHNhbWUgZHJh
ZnQgbmFtZSAgICAgICAgfCAgICAgICAgICAgIDMgfCAgICAgICAgIDUgfAogICB8IGRyYWZ0
cyB3aXRoIHRoZSBzYW1lIHN1Ym1pdHRlciAgICAgICAgIHwgICAgICAgICAgICA1IHwgICAg
ICAgIDEwIHwKICAgfCBXR04gZHJhZnRzIHdpdGggdGhlIHNhbWUgV0cgSUQgICAgICAgICB8
ICAgICAgICAgICAxMCB8ICAgICAgICAxNSB8CiAgIHwgYWxsIGRyYWZ0cyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgfCAgICAgICAgICAzMDAgfCAgICAgICAxNTAgfAogICArLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLSst
LS0tLS0tLS0tLSsKCiAgIFRoZSB0aHJlc2hvbGRzIGFyZSBtZWFudCB0byBsaW1pdCBkZXN0
cnVjdGl2ZSBlZmZlY3RzIG9mIERvUyBhdHRhY2tzCiAgIChlLmcuLCBmdWxsIGRpc2tzIGNh
dXNlIG90aGVyIHRhc2tzIHRvIGZhaWwpLCBhbGxvdyBmb3IgY2FwYWNpdHkKICAgcGxhbm5p
bmcgKGUuZy4sIGhvdyBtdWNoIHN0b3JhZ2Ugc3BhY2UgdGhlIFRvb2xzZXQgbmVlZHMpLCBh
bmQgbGltaXQKICAgYW5ub3lpbmcgc2lkZS1lZmZlY3RzIG9mICJ0b28gbWFueSIgZHJhZnRz
IGJlaW5nIHBvc3RlZCAoZS5nLiwgd2hlbiBhCiAgIHBlcnNvbiByZWNlaXZlcyBwb3N0aW5n
IG5vdGlmaWNhdGlvbnMgYWJvdXQgYSBnaXZlbiBkcmFmdCBvciBhIGdpdmVuCiAgIHdvcmtp
bmcgZ3JvdXApLiAgVGhlIFRvb2xzZXQgc2hvdWxkIHdhcm4gdGhlIFNlY3JldGFyaWF0IGlm
IHRvdGFsCiAgIHN1Ym1pc3Npb25zIGFyZSBhcHByb2FjaGluZyBhbnkgdGhyZXNob2xkIChS
MTM0L2IpLiAgSGludDogQmFuZHdpZHRoCiAgIGF2YWlsYWJsZSBmb3Igc3VibWlzc2lvbnMg
bWF5IG5lZWQgdG8gYmUgdGhyb3R0bGVkIChvbiBhIG5ldHdvcmsKICAgc3VibmV0IGJhc2lz
PykgdG8gbWFrZSByZWFjaGluZyB0aGUgZGFpbHkgc2l6ZSBxdW90YSAod2l0aCBtYWxpY2lv
dXMKICAgaW50ZW50KSBkaWZmaWN1bHQuCgoKCgpSb3Vzc2tvdiAgICAgICAgICAgICAgICBF
eHBpcmVzIE9jdG9iZXIgMjEsIDIwMDUgICAgICAgICAgICAgICBbUGFnZSAxN10KDApJbnRl
cm5ldC1EcmFmdCAgICAgSUQgU3VibWlzc2lvbiBUb29sc2V0OiBSZXF1aXJlbWVudHMgICAg
ICAgIEFwcmlsIDIwMDUKCgo4LjUuNCAgV0cgYXBwcm92YWwKCiAgIEZvciB2ZXJzaW9uIDAw
IG9mIGEgV0dOIGRyYWZ0LCB0aGUgVG9vbHNldCBjaGVja3MgZm9yIGFuIGV4aXN0aW5nIFdH
CiAgIGFwcHJvdmFsIChSMTI1L2EpLiAgSWYgKGEpIG5vIGFwcHJvdmFsIGV4aXN0cywgYW5k
IChiKSB0aGUgVG9vbHNldAogICBkb2VzIG5vdCBzdXBwb3J0IHRoZSAid2FpdGluZyBmb3Ig
V0cgYXBwcm92YWwiIGZlYXR1cmUsIHRoZSBUb29sc2V0CiAgIHJlY29yZHMgYW4gZXJyb3Ig
KFIxMzUvYSkuCgogICBJZiAoYSkgbm8gYXBwcm92YWwgZXhpc3RzLCAoYikgdGhlIFRvb2xz
ZXQgc3VwcG9ydHMgdGhlICJ3YWl0aW5nIGZvcgogICBXRyBhcHByb3ZhbCIgZmVhdHVyZSwg
YW5kIChjKSB0aGUgZHJhZnQgY2Fubm90IGJlIHBvc3RlZCBldmVuIGlmIFdHCiAgIGFwcHJv
dmFsIGlzIHJlY2VpdmVkLCB0aGVuIHRoZSBUb29sc2V0IHJlY29yZHMgYSB3YXJuaW5nIHRo
YXQgYSBXRwogICBhcHByb3ZhbCB3b3VsZCBiZSByZXF1aXJlZCBvbmNlIGFsbCBlcnJvcnMg
cHJldmVudGluZyBkcmFmdCBmcm9tCiAgIHBvc3RpbmcgYXJlIGZpeGVkIChSMTM3L2IpLgoK
ICAgSWYgKGEpIG5vIGFwcHJvdmFsIGV4aXN0cywgKGIpIHRoZSBUb29sc2V0IHN1cHBvcnRz
IHRoZSAid2FpdGluZyBmb3IKICAgV0cgYXBwcm92YWwiIGZlYXR1cmUsIGFuZCAoYykgdGhl
IGRyYWZ0IGNhbiBiZSBwb3N0ZWQgaWYgV0cgYXBwcm92YWwKICAgaXMgcmVjZWl2ZWQsIHRo
ZW4gdGhlIFRvb2xzZXQgZXhwbGFpbnMgdGhlIHNpdHVhdGlvbiB0byB0aGUgc3VibWl0dGVy
CiAgIGFuZCBhc2tzIHdoZXRoZXIgdGhlIHN1Ym1pdHRlciB3aXNoZXMgdG8gc29saWNpdCBh
biBleHBsaWNpdCBhcHByb3ZhbAogICBmcm9tIHRoZSBXRyAoUjEyNi9iKS4gIElmIHRoZSBz
dWJtaXR0ZXIgZGVjaWRlcyB0byBnbyBhaGVhZCB3aXRoCiAgIHNvbGljaXRhdGlvbiwgdGhl
IFRvb2xzZXQgcHV0cyB0aGUgc3VibWlzc2lvbiBpbnRvIGEgIndhaXRpbmcgZm9yIFdHCiAg
IGFwcHJvdmFsIiBzdGF0ZSB1bnRpbCB0aGUgYXBwcm92YWwgaXMgYXZhaWxhYmxlIChSMTI3
L2IpLiAgT3RoZXJ3aXNlLAogICB0aGUgVG9vbHNldCByZWNvcmRzIGEgIm5vIFdHIGFwcHJv
dmFsIGlzIGV4cGVjdGVkIiBlcnJvciAoUjEzOC9iKS4KCiAgIERldGFpbHMgb2YgdGhlIGFw
cHJvdmFsIHJlY29yZGluZyBhbmQgYWNjZXNzIGludGVyZmFjZXMgYXMgd2VsbCBhcwogICB0
aGUgbWVjaGFuaXNtIHRvIHJlc3VtZSB0aGUgc3VibWlzc2lvbiB1cG9uIGFwcHJvdmFsIGFy
ZSBvdXQgb2YgdGhpcwogICBkb2N1bWVudCBzY29wZS4KCjkuICBDaGVjayBwYWdlCgogICBU
aGUgQ2hlY2sgcGFnZSwgY3JlYXRlZCBieSB0aGUgQ2hlY2sgYWN0aW9uLCBkaXNwbGF5cyBl
eHRyYWN0ZWQgZHJhZnQKICAgbWV0YS1kYXRhIGFuZCB2YWxpZGF0aW9uIHJlc3VsdHMgKFIy
NS9hKS4gIFRoZSBwdXJwb3NlIG9mIHRoZSBwYWdlIGlzCiAgIHRvIGFsbG93IHRoZSBzdWJt
aXR0ZXIgdG8gdmVyaWZ5IHdoZXRoZXIgdGhlIHN0b3JlZCBkcmFmdCBhbmQKICAgYXV0b21h
dGljYWxseSBleHRyYWN0ZWQgbWV0YS1kYXRhIG1hdGNoIHRoZSBzdWJtaXR0ZXIncyBpbnRl
bnQgYW5kIHRvCiAgIGJlIGluZm9ybWVkIG9mIHZhbGlkYXRpb24gcHJvYmxlbXMuCgogICBN
ZXRhLWRhdGEgaXRlbXMgc3BlY2lmaWVkIGluIFNlY3Rpb24gOC40IHRoYXQgZmFpbGVkIHZh
bGlkYXRpb24KICAgY2hlY2tzIG11c3QgYmUgbWFya2VkIHNwZWNpYWxseSAocmF0aGVyIHRo
YW4gc2lsZW50bHkgb21pdHRlZCBvcgogICBpZ25vcmVkKSAoUjI2L2IpLiAgSGludDogcmVu
ZGVyaW5nIHRob3NlIGl0ZW1zIGluIHJlZCwgd2l0aCBsaW5rcyB0bwogICBjb3JyZXNwb25k
aW5nIHZhbGlkYXRpb24gZXJyb3JzIG9yIHdhcm5pbmdzLCBtYXkgZm9yY2UgYXV0aG9ycyB0
byBwYXkKICAgYXR0ZW50aW9uLgoKICAgVmFsaWRhdGlvbiBtZXNzYWdlcyBpbmNsdWRlIGJv
dGggZXJyb3JzIGFuZCB3YXJuaW5ncy4gIEVhY2gKICAgdmFsaWRhdGlvbiBtZXNzYWdlIHJl
ZmVycyB0byBub3JtYXRpdmUgZG9jdW1lbnQocykgY29udGFpbmluZyB0aGUKICAgY29ycmVz
cG9uZGluZyB2YWxpZGF0aW9uIHJ1bGVzIChSMjcvYikuCgogICBUaGUgQ2hlY2sgcGFnZSBh
bGxvd3MgdGhlIHN1Ym1pdHRlciB0byBlbnRlciBleHRlcm5hbCBtZXRhLWRhdGEKICAgKFNl
Y3Rpb24gOS4xKSAoUjI4L2EpLiAgSWYgdmFsaWRhdGlvbiB3YXMgc3VjY2Vzc2Z1bCwgYW4K
ICAgImF1dG9tYXRpY2FsbHkgcG9zdCB0aGUgZHJhZnQgbm93IiBidXR0b24gaXMgcHJvdmlk
ZWQgKFIyOS9hKS4KICAgUmVnYXJkbGVzcyBvZiB2YWxpZGF0aW9uIHJlc3VsdHMsICJhZGp1
c3QgYW5kIHBvc3QgbWFudWFsbHkiIGFuZAoKCgpSb3Vzc2tvdiAgICAgICAgICAgICAgICBF
eHBpcmVzIE9jdG9iZXIgMjEsIDIwMDUgICAgICAgICAgICAgICBbUGFnZSAxOF0KDApJbnRl
cm5ldC1EcmFmdCAgICAgSUQgU3VibWlzc2lvbiBUb29sc2V0OiBSZXF1aXJlbWVudHMgICAg
ICAgIEFwcmlsIDIwMDUKCgogICAiY2FuY2VsIiBidXR0b25zIGFyZSBwcm92aWRlZCAoUjMw
L2EpLgoKICAgVGhlIENoZWNrIHBhZ2UgcHJvdmlkZXMgYSBwcmV2aWV3IG9mIHRoZSBkcmFm
dCBwbGFpbiB0ZXh0IGZvcm1hdAogICAoUjMxL2EpLCB3aXRoIGEgbGluayB0byBzZWUgaG93
IHRoZSBlbnRpcmUgZHJhZnQgKHdpdGggYWxsIGl0cwogICBmb3JtYXRzKSB3b3VsZCBsb29r
IGxpa2UgaWYgcG9zdGVkIChSODIvYikuICBIaW50OiB0aGUgQ2hlY2sgcGFnZQogICBwcmV2
aWV3IHNob3VsZCBiZSBzdWZmaWNpZW50bHkgbG9uZyB0byBsZXQgYXV0aG9ycyBkZXRlY3Qg
b2J2aW91cwogICBkcmFmdCBtaXNtYXRjaCBvciBtaXNpbnRlcnByZXRhdGlvbiBlcnJvcnMg
YnV0IHNob3J0IGVub3VnaCB0byBhdm9pZAogICBkb21pbmF0aW5nIHRoZSBwYWdlLiAgRGlz
cGxheWluZyB0aGUgZmlyc3QgbGluZSBvZiB0aGUgZHJhZnQgdGhyb3VnaAogICB0aGUgbGFz
dCBsaW5lIG9mIHRoZSBhYnN0cmFjdCBtYXkgYmUgc3VmZmljaWVudC4KCiAgIEZvciBkcmFm
dCB1cGRhdGVzLCB0aGUgQ2hlY2sgcGFnZSByZXBvcnRzIHRoZSB0aW1lIGFuZCB0aGUgc3Vi
bWl0dGVyCiAgIG9mIHRoZSBsYXN0IHVwZGF0ZSAoUjgzL2IpLiAgVGhpcyBpbmZvcm1hdGlv
biBpcyBlc3BlY2lhbGx5IHVzZWZ1bAogICB3aGVuIG11bHRpcGxlIGF1dGhvcnMgYXJlIHdv
cmtpbmcgb24gdGhlIHNhbWUgZHJhZnQuICBUaGUgcGFnZSBhbHNvCiAgIHByb3ZpZGVzIGEg
bGluayB0byBnZW5lcmF0ZSBhIGRpZmYgYWdhaW5zdCB0aGUgbGFzdCBwb3N0ZWQgdmVyc2lv
bgogICAoUjg0L2MpLgoKOS4xICBFeHRlcm5hbCBtZXRhLWRhdGEKCiAgIFRoZSBDaGVjayBw
YWdlIHNvbGljaXRzIHRoZSBmb2xsb3dpbmcgbWV0YS1kYXRhIGZyb20gdGhlIHN1Ym1pdHRl
ci4KICAgVGhpcyBpbmZvcm1hdGlvbiBtdXN0IGJlIHN1cHBsaWVkIGJ5IHN1Ym1pdHRlciBi
ZWNhdXNlIGl0IGNhbm5vdCBiZQogICBleHRyYWN0ZWQgZnJvbSB0aGUgZHJhZnQ6CgogICAg
ICBTdWJtaXR0ZXIgZW1haWwgYWRkcmVzcyAoUjMyL2EpLiAgV2hlbiBzdWJtaXR0ZXIgaXMg
bm90IGFuCiAgICAgIGV4cGVjdGVkIHN1Ym1pdHRlciAoc2VlIFNlY3Rpb24gNCksIGF1dG9t
YXRlZCBwb3N0aW5nIGlzIG5vdAogICAgICBwb3NzaWJsZSBhbmQgdGhlIGRyYWZ0IGhhcyB0
byBnbyB0aHJvdWdoIHRoZSBTZWNyZXRhcmlhdCAoUjk4KS4KICAgICAgSGludDogQSBzZXQg
b2YgY2hlY2tib3hlcyBuZXh0IHRvIGV4dHJhY3RlZCBhdXRob3IgbmFtZXMgYWxvbmcKICAg
ICAgd2l0aCBhICJub25lIG9mIHRoZSBhYm92ZSIgY2hlY2tib3ggd2l0aCBhbiBpbnB1dCBm
aWVsZCB3b3VsZAogICAgICBzdWZmaWNlLgoKICAgICAgQSBsaXN0IG9mIGRyYWZ0cyByZXBs
YWNlZCBieSB0aGlzIGRyYWZ0IChSMzMvYykuICBUaGlzIGlzIHVzZWZ1bAogICAgICB0byBt
YWtlIHJlcGxhY2VkIGRyYWZ0cyBpbnZpc2libGUuICBUaGlzIGRvY3VtZW50IGRvZXMgbm90
IHNwZWNpZnkKICAgICAgYW55IGFjdGlvbnMgbmVjZXNzYXJ5IHRvIGFjdHVhbGx5IHJlcGxh
Y2UgYW4gZXhpc3RpbmcgZHJhZnQKICAgICAgYmVjYXVzZSBleGlzdGluZyBkcmFmdCBtYW5p
cHVsYXRpb24gaXMgb3V0IG9mIHNjb3BlLCBhbmQgYmVjYXVzZQogICAgICBzZWN1cml0eSBj
b25jZXJucyBhbmQgb3RoZXIgY29tcGxpY2F0aW9ucyBvZiBzdWNoIGFjdGlvbnMgd291bGQg
YmUKICAgICAgYmV0dGVyIGFkZHJlc3NlZCBieSBhIHNlcGFyYXRlIHNwZWNpZmljYXRpb24u
CgogICAgICBQcmltYXJ5IGVtYWlsIGFkZHJlc3MgZm9yIGRpc2N1c3Npb24gb2YgdGhpcyBk
cmFmdCAoUjcxL2IpLiAgSGludDoKICAgICAgVGhlIFRvb2xzZXQgY2FuIHN1Z2dlc3QgdGhl
IFdHIG1haWxpbmcgbGlzdCBhZGRyZXNzIGZvciBXR04KICAgICAgZHJhZnRzLCAoc3VibWl0
dGluZykgYXV0aG9yIGFkZHJlc3MgZm9yIGluZGl2aWR1YWwgZHJhZnRzLCBvciBldmVuCiAg
ICAgIHRoZSBmaXJzdCBlbWFpbCBhZGRyZXNzIGluIGRyYWZ0IHRleHQuICBPZmZlcmluZyBh
IGZldyBsaWtlbHkKICAgICAgYWRkcmVzc2VzIGluc3RlYWQgb2YgcmVseWluZyBleGNsdXNp
dmVseSBvbiB1c2VyIGlucHV0IHdvdWxkIGFsc28KICAgICAgcmVkdWNlIHRoZSBudW1iZXIg
b2YgdHlwb3MuCgogICBFeGNlcHQgZm9yIHRoZSBzdWJtaXR0ZXIgZW1haWwgYWRkcmVzcywg
ZXh0ZXJuYWwgbWV0YS1kYXRhIGlzCiAgIG9wdGlvbmFsIChSMTA5L2EpLgoKICAgSWYgYSBn
aXZlbiBzdWJtaXR0ZXIgZW1haWwgYWRkcmVzcyBiZWxvbmdzIHRvIGFuIGV4cGVjdGVkIHN1
Ym1pdHRlcgogICAoaS5lLiwgYmVsb25ncyB0byBvbmUgb2YgdGhlIGNhdGVnb3JpZXMgYmVs
b3cpLCB0aGUgVG9vbHNldCBwZXJmb3JtcwoKCgpSb3Vzc2tvdiAgICAgICAgICAgICAgICBF
eHBpcmVzIE9jdG9iZXIgMjEsIDIwMDUgICAgICAgICAgICAgICBbUGFnZSAxOV0KDApJbnRl
cm5ldC1EcmFmdCAgICAgSUQgU3VibWlzc2lvbiBUb29sc2V0OiBSZXF1aXJlbWVudHMgICAg
ICAgIEFwcmlsIDIwMDUKCgogICBzdWJtaXR0ZXIgYXV0aGVudGljYXRpb24gZHVyaW5nIGEg
UG9zdCBOb3cgYWN0aW9uIChSMTkvYSkuCiAgIE90aGVyd2lzZSwgYW4gZXJyb3IgaXMgcmVw
b3J0ZWQgKFIxMTgvYSkuCgogICBUaGUgZm9sbG93aW5nIHBvc3NpYmxlIGV4cGVjdGVkIHN1
Ym1pdHRlcnMgYXJlIGlkZW50aWZpZWQgYnkgdGhlCiAgIFRvb2xzZXQsIHdpdGhvdXQgYW55
IFNlY3JldGFyaWF0IGludGVydmVudGlvbjoKCiAgICAgIEZvciB2ZXJzaW9uIDAwIG9mIGEg
ZHJhZnQsIGFueSBzdWJtaXR0ZXIgKFIxMTkvYSkuCgogICAgICBGb3IgdmVyc2lvbiBOKzEg
b2YgYSBkcmFmdCwgYW4gYXV0aG9yIG9mIHZlcnNpb24gTiBvZiB0aGUgc2FtZQogICAgICBk
cmFmdCAoUjEyMC9hKS4gIFRoaXMgcmVxdWlyZW1lbnQgb25seSBuZWVkcyB0byBiZSBzYXRp
c2ZpZWQgZm9yCiAgICAgIGRyYWZ0cyBmb3Igd2hpY2ggTnRoIHZlcnNpb24gd2FzIHBvc3Rl
ZCB1c2luZyB0aGUgVG9vbHNldDsgb3RoZXIKICAgICAgZHJhZnRzIG1heSBub3QgaGF2ZSB0
aGUgbWV0YS1pbmZvcm1hdGlvbiBhdmFpbGFibGUgd2hpY2ggaXMKICAgICAgcmVxdWlyZWQg
dG8gcmVsaWFibHkgZ2V0IGEgbGlzdCBvZiBhdXRob3JzLgoKICAgICAgRm9yIGEgV0dOIGRy
YWZ0LCBhIENoYWlyIG9mIHRoZSBjb3JyZXNwb25kaW5nIFdHIChSMTIxL2IpLgoKICAgICAg
Rm9yIGFueSBkcmFmdCwgYW4gSUVTRyBtZW1iZXIgKFIxMjIvYykuCgoKMTAuICBQb3N0IE5v
dyBhY3Rpb24KCiAgIFRoZSBQb3N0IE5vdyBhY3Rpb24gY2hlY2tzIHRoYXQgdGhlIGRyYWZ0
IGhhcyBiZWVuIHN1Y2Nlc3NmdWxseQogICB2YWxpZGF0ZWQgKFIzNC9hKSwgdmFsaWRhdGVz
IGV4dGVybmFsIG1ldGEtZGF0YSAoaW5jbHVkaW5nIHN1Ym1pdHRlcgogICBlbWFpbCBhZGRy
ZXNzKSAoUjM1L2EpLCBhbmQgcG9zdHMgdGhlIGRyYWZ0IChSMzYvYSkuICBUaGUgc3VibWl0
dGVyCiAgIGlzIG5vdGlmaWVkIG9mIHRoZSBhY3Rpb24gcHJvZ3Jlc3MgYW5kIHRoZSBmaW5h
bCByZXN1bHQgKFIzNy9hKS4KCiAgIFRoZSBleHRlcm5hbCBtZXRhLWRhdGEgY29udGFpbnMg
dGhlIHN1Ym1pdHRlcidzIGVtYWlsIGFkZHJlc3MuICBBcyBhCiAgIHBhcnQgb2YgdGhlIHZh
bGlkYXRpb24gcHJvY2VkdXJlLCB0aGUgUG9zdCBOb3cgYWN0aW9uIGF1dGhvcml6ZXMgdGhl
CiAgIHN1Ym1pdHRlci4gIFRoZSBpbml0aWFsIGFjdGlvbiBpbXBsZW1lbnRhdGlvbiBjaGVj
a3MgdGhhdCB0aGUKICAgc3VibWl0dGVyIGhhcyBhY2Nlc3MgdG8gZW1haWwgc2VudCB0byB0
aGF0IGFkZHJlc3MgKFIzOC9hKS4KICAgRXZlbnR1YWxseSwgdGhlIFRvb2xzZXQgc2hvdWxk
IGFjY2VwdCBjbGllbnQgY2VydGlmaWNhdGVzIHNpZ25lZCBieQogICBJRVRGLCBQR1Atc2ln
bmVkIGVtYWlsLCBhbmQvb3Igb3RoZXIgZm9ybXMgb2YgY2xpZW50LXNpZGUKICAgYXV0aGVu
dGljYXRpb24gdG8gZWxpbWluYXRlIHRoZSB3ZWFrIGFuZCBhbm5veWluZyBlbWFpbCBhY2Nl
c3MgY2hlY2sKICAgKFIxMTAvYykuICBJZiBzdWJtaXR0ZXIgYXV0aGVudGljYXRpb24gZmFp
bHMsIHRoZSBzdWJtaXNzaW9uCiAgIGV2ZW50dWFsbHkgYW5kIHNpbGVudGx5IHRpbWVzIG91
dCAoUjM5L2EpLgoKICAgVGhlIFRvb2xzZXQgcHJvdmlkZXMgYm90aCB3ZWIgKFI5OS9hKSBh
bmQgZW1haWwgKFIxMzkvYikgaW50ZXJmYWNlcwogICBmb3IgY29uZmlybWluZyBlbWFpbCBh
Y2Nlc3MuICBIaW50OiBUbyBjaGVjayBzdWJtaXR0ZXIncyBhY2Nlc3MgdG8KICAgZW1haWws
IHRoZSB0b29sIGNhbiBlbWFpbCBhIGhhcmQtdG8tZ3Vlc3MgY29va2llIG9yIHRva2VuIHRv
IHRoZQogICBzdWJtaXR0ZXIncyBhZGRyZXNzLiAgVG8gY29udGludWUgd2l0aCB0aGUgc3Vi
bWlzc2lvbiwgdGhlIHN1Ym1pdHRlcgogICBpcyByZXF1ZXN0ZWQgdG8gcGFzdGUgdGhlIGNv
b2tpZSBhdCB0aGUgc3BlY2lmaWVkIFVSTCwgZ28gdG8gdGhlCiAgIHRva2VuLWhvbGRpbmcg
VVJMLCBvciByZXNwb25kIHRvIHRoZSBlbWFpbC4KCiAgIEltbWVkaWF0ZWx5IGFmdGVyIHNl
bmRpbmcgYW4gZW1haWwgdG8gdGhlIHN1Ym1pdHRlciwgdGhlIFRoZSBQb3N0IE5vdwogICBh
Y3Rpb24gZ2VuZXJhdGVzIGFuIGludGVybWVkaWF0ZSBSZWNlaXB0IHBhZ2UgdGhhdCBleHBs
YWlucyBUb29sc2V0CiAgIGV4cGVjdGF0aW9ucyBhbmQgcHJvdmlkZXMgdGhlIHN1Ym1pdHRl
ciB3aXRoIHRoZSBzdWJtaXNzaW9uIElECiAgIChSMTAwL2EpLiAgVGhhdCBudW1iZXIgYWxs
b3dzIHRoZSBTZWNyZXRhcmlhdCB0byB0cm91Ymxlc2hvb3Qgc3R1Y2sKICAgc3VibWlzc2lv
bnMgKFIxMDEvYSkgYW5kIGNhbiBhbHNvIGJlIHVzZWQgZm9yIGNoZWNraW5nIHN1Ym1pc3Np
b24KCgoKUm91c3Nrb3YgICAgICAgICAgICAgICAgRXhwaXJlcyBPY3RvYmVyIDIxLCAyMDA1
ICAgICAgICAgICAgICAgW1BhZ2UgMjBdCgwKSW50ZXJuZXQtRHJhZnQgICAgIElEIFN1Ym1p
c3Npb24gVG9vbHNldDogUmVxdWlyZW1lbnRzICAgICAgICBBcHJpbCAyMDA1CgoKICAgc3Rh
dHVzIHdpdGhvdXQgU2VjcmV0YXJpYXQgaW52b2x2ZW1lbnQgKFIxNDAvYikuCgogICBJbW1l
ZGlhdGVseSBhZnRlciBwb3N0aW5nIHRoZSBkcmFmdCwgdGhlIFRvb2xzZXQgbm90aWZpZXMg
YWxsIGF1dGhvcnMKICAgKHdpdGgga25vd24gZW1haWwgYWRkcmVzc2VzKSBvZiB0aGUgcG9z
dGluZyAoUjEwMi9hKS4gIFRoZQogICBub3RpZmljYXRpb24gZW1haWwgY29udGFpbnMgdGhl
IGluZm9ybWF0aW9uIGF2YWlsYWJsZSBvbiB0aGUKICAgInN1Y2Nlc3NmdWwgcG9zdGluZyIg
UmVjZWlwdCBwYWdlIGRlc2NyaWJlZCBiZWxvdyAoUjEwMy9hKS4KCiAgIElmIGRyYWZ0IHBv
c3RpbmcgaXMgc3VjY2Vzc2Z1bCwgdGhlIHN1Ym1pc3Npb24gc3RhdGUgaXMgbWFya2VkIGFz
CiAgIGF2YWlsYWJsZSBmb3IgZGVsZXRpb24gKFIxMDUvYSkgc28gdGhhdCB0aGUgZ2FyYmFn
ZSBjb2xsZWN0aW9uCiAgIHJvdXRpbmUgZXZlbnR1YWxseSBkZWxldGVzIGl0LgoKMTAuMSAg
UmVjZWlwdCBwYWdlCgogICBBIHN1Y2Nlc3NmdWwgUG9zdCBOb3cgYWN0aW9uIHJlcG9ydHMg
YXQgbGVhc3QgdGhlIGZvbGxvd2luZwogICBpbmZvcm1hdGlvbiBvbiB0aGUgZmluYWwgUmVj
ZWlwdCBwYWdlIChSMTA0L2EpOgoKICAgbyAgdGhlIGRyYWZ0IElEIGFuZCBhIGxpbmsgdG8g
dGhlIGRyYWZ0IHN0YXR1cyBwYWdlOwoKICAgbyAgdGhlIGRyYWZ0IHRpdGxlLCBhdXRob3Jz
LCBhbmQgYWJzdHJhY3Q7CgogICBvICB0aGUgc3VibWlzc2lvbiBJRAoKICAgbyAgYSBsaW5r
IHRvIHRoZSBkcmFmdCBzdWJtaXNzaW9uIHN0YXR1cyBwYWdlICh3aGVuIHN0YXR1cyBxdWVy
aWVzCiAgICAgIGFyZSBzdXBwb3J0ZWQsIHNlZSBSMTQwKS4KCiAgIG8gIHRoZSBzdWJtaXR0
ZXIncyBuYW1lIGFuZCBlbWFpbCBhZGRyZXNzLgoKICAgVGhlIHByaW1hcnkgcHVycG9zZSBv
ZiB0aGUgUmVjZWlwdCBwYWdlIGlzIHRvIGluZm9ybSBhbGwgZHJhZnQKICAgYXV0aG9ycyB0
aGF0IChzdXBwb3NlZGx5KSB0aGVpciBkcmFmdCBoYXMgYmVlbiBwb3N0ZWQuICBUaGUgc2Vj
b25kYXJ5CiAgIHB1cnBvc2UgaXMgdG8gbGV0IGF1dGhvcnMgY3JlYXRlIGEgcGVybWFuZW50
IHJlY29yZCBvZiB0aGUgZXZlbnQgYW5kCiAgIHRyb3VibGVzaG9vdCBwb3N0aW5ncy4gIFRo
ZSBzYW1lIGluZm9ybWF0aW9uIHNob3VsZCBiZSBzZW50IHRvIG90aGVyCiAgIHBhcnRpZXMg
aW50ZXJlc3RlZCBpbiB0aGUgZHJhZnQgKGUuZy4sIHRvIHRoZSBXRyBtYWlsaW5nIGxpc3Qp
LCBidXQKICAgM3JkIHBhcnR5IG5vdGlmaWNhdGlvbiBzcGVjaWZpY3MgYXJlIG91dCBvZiB0
aGlzIGRvY3VtZW50J3Mgc2NvcGUuCgoxMS4gIEFkanVzdCBhY3Rpb24KCiAgIFRoZSBBZGp1
c3QgYWN0aW9uIGdlbmVyYXRlcyB0aGUgQWRqdXN0IHBhZ2UgKFI0MC9hKSwgcG9wdWxhdGlu
ZyBpdAogICB3aXRoIGF2YWlsYWJsZSBleHRyYWN0ZWQgbWV0YS1kYXRhIGFuZCBleHRlcm5h
bCBtZXRhLWRhdGEsIGFzIHdlbGwgYXMKICAgdmFsaWRhdGlvbiByZXN1bHRzIGFuZCBhIHBy
ZXZpZXcuICBTb21lIGluZm9ybWF0aW9uIG1heSBiZSBtaXNzaW5nLAogICBkZXBlbmRpbmcg
b24gZHJhZnQgaW50ZXJwcmV0YXRpb24gYW5kIHRoZSBzdWNjZXNzIG9mIHByZXZpZXcKICAg
Z2VuZXJhdGlvbi4KCjEyLiAgQWRqdXN0IHBhZ2UKCiAgIFRoZSBBZGp1c3QgcGFnZSBpbmNs
dWRlcyB0aGUgc2FtZSBpbmZvcm1hdGlvbiBhcyB0aGUgQ2hlY2sgcGFnZSwgYnV0CiAgIGFs
bG93cyB0aGUgc3VibWl0dGVyIHRvIGFkanVzdCBhbGwgZXh0cmFjdGVkIGRyYWZ0IG1ldGEt
ZGF0YSAoYW5kLAogICBuYXR1cmFsbHksIGV4dGVybmFsIG1ldGEtZGF0YSkgYXQgd2lsbCAo
UjQxL2EpLiAgU3VjaCBhZGp1c3RtZW50IGlzCiAgIG5lY2Vzc2FyeSB3aGVuIGF1dG9tYXRl
ZCBleHRyYWN0aW9uIGZhaWxlZCB0byBleHRyYWN0IGNvcnJlY3QKCgoKUm91c3Nrb3YgICAg
ICAgICAgICAgICAgRXhwaXJlcyBPY3RvYmVyIDIxLCAyMDA1ICAgICAgICAgICAgICAgW1Bh
Z2UgMjFdCgwKSW50ZXJuZXQtRHJhZnQgICAgIElEIFN1Ym1pc3Npb24gVG9vbHNldDogUmVx
dWlyZW1lbnRzICAgICAgICBBcHJpbCAyMDA1CgoKICAgaW5mb3JtYXRpb24uICBUbyBhdm9p
ZCBhbnkgbWlzbWF0Y2ggYmV0d2VlbiBkcmFmdCBhbmQgaXRzIG1ldGEtZGF0YSwKICAgYWRq
dXN0ZWQgZHJhZnRzIGNhbm5vdCBiZSBhdXRvbWF0aWNhbGx5IHBvc3RlZCBhbmQgcmVxdWly
ZSBtYW51YWwKICAgdmFsaWRhdGlvbiBieSB0aGUgU2VjcmV0YXJpYXQgKFI0Mi9hKS4gIFNl
Y3JldGFyaWF0IHN0YWZmIGNhbiBwb3N0CiAgIGRyYWZ0cyB3aXRoIGFkanVzdGVkIG1ldGEt
ZGF0YSBhcyBkZXNjcmliZWQgaW4gU2VjdGlvbiAxNS4KCiAgIFRoZSBBZGp1c3QgcGFnZSBh
bGxvd3MgdGhlIHN1Ym1pdHRlciB0byBlbnRlciBhbiBpbmZvcm1hbCBjb21tZW50CiAgIGV4
cGxhaW5pbmcgd2h5IGFkanVzdG1lbnRzIGFyZSBuZWNlc3NhcnkgYW5kIGF1dG9tYXRlZCBw
b3N0aW5nIG1vZGUKICAgY2Fubm90IGJlIHVzZWQgKFI0OC9hKS4gIFN1Y2ggY29tbWVudHMg
bWF5IGJlIGVzc2VudGlhbCBmb3IgdGhlCiAgIFNlY3JldGFyaWF0IGluIHRoZWlyIGVmZm9y
dHMgdG8gdHJvdWJsZXNob290IHRoZSBwcm9ibGVtLgoKICAgVGhlICJwb3N0IG1hbnVhbGx5
IiBhbmQgImNhbmNlbCIgYnV0dG9ucyBhcmUgcHJvdmlkZWQgKFI0My9hKS4gIFRoZQogICBm
b3JtZXIgaXMgYmFja2VkIGJ5IHRoZSAiUG9zdCBNYW51YWxseSIgYWN0aW9uIChTZWN0aW9u
IDEzKS4KCjEzLiAgUG9zdCBNYW51YWxseSBhY3Rpb24KCiAgIFRoZSBQb3N0IE1hbnVhbGx5
IGFjdGlvbiBzZW5kcyBhZGp1c3RlZCBtZXRhLWRhdGEgYW5kIGEgZHJhZnQgcG9pbnRlcgog
ICB0byB0aGUgU2VjcmV0YXJpYXQgZm9yIG1hbnVhbCB2YWxpZGF0aW9uIGFuZCBwb3N0aW5n
IChSNDQvYSkuICBBCiAgIHJlY2VpcHQgcGFnZSBpcyBnZW5lcmF0ZWQsIGluc3RydWN0aW5n
IHRoZSBzdWJtaXR0ZXIgdG8gd2FpdCAoUjQ1L2EpLgogICBUaGUgU2VjcmV0YXJpYXQgd2ls
bCBub3RpZnkgdGhlIHN1Ym1pdHRlciBvbmNlIHRoZSBkcmFmdCBpcyBwb3N0ZWQgb3IKICAg
cmVqZWN0ZWQuICBUaGlzIG5vdGlmaWNhdGlvbiBpcyBzZW50IGJ5IHRoZSBUb29sc2V0IGlm
IHRoZQogICBTZWNyZXRhcmlhdCBpcyB1c2luZyB0aGUgVG9vbHNldCB0byBwb3N0IHRoZSBk
cmFmdCAoUjQ2L2EpLgoKMTQuICBSZWNlaXB0IHBhZ2UKCiAgIFRoZSBSZWNlaXB0IHBhZ2Ug
aXMgZ2VuZXJhdGVkIGJ5IHZhcmlvdXMgYWN0aW9ucyB0byBpbmZvcm0gdGhlCiAgIHN1Ym1p
dHRlciBvZiB0aGUgY3VycmVudCBzdWJtaXNzaW9uIHN0YXR1cyBhbmQgZnVydGhlciBhY3Rp
b25zLiAgVGhlCiAgIGNvbnRlbnRzIG9mIHRoZSBwYWdlIGlzIGxpa2VseSB0byBiZSBoaWdo
bHkgZGVwZW5kZW50IG9uIHRoZSBhY3Rpb24KICAgYW5kIHN0YXRlIGZvciB3aGljaCByZWNl
aXB0IGlzIGJlaW5nIGdlbmVyYXRlZC4gIFRoaXMgc2VjdGlvbgogICBkb2N1bWVudHMgZ2Vu
ZXJhbCByZXF1aXJlbWVudHMgYXBwbGljYWJsZSB0byBhbGwgYWN0aW9ucyBhbmQgc3RhdGVz
LgoKICAgVGhlIFJlY2VpcHQgcGFnZSBzaG91bGQgZ2l2ZSB0aGUgc3VibWl0dGVyIGEgVVJJ
IG9yIGFub3RoZXIKICAgaWRlbnRpZmllciB0aGF0IGNhbiBiZSB1c2VkIGJ5IFNlY3JldGFy
aWF0IGZvciBtYW51YWwgdHJvdWJsZXNob290aW5nCiAgIG9mIHRoZSBzdWJtaXNzaW9uIChS
NjMvYSkuICBUaGUgaWRlbnRpZmllciBzaG91bGQgYmUgcGVycGV0dWFsCiAgIChSNjQvYSkg
ZXZlbiB0aG91Z2ggdGhlIGFzc29jaWF0ZWQgZGV0YWlscyBhcmUgbGlrZWx5IHRvIGJlCiAg
IGV2ZW50dWFsbHkgbG9zdCAoZS5nLiwgZHJhZnQgc3VibWlzc2lvbiBkYXRhIGFuZCBsb2dz
IGFyZSBkZWxldGVkCiAgIGZyb20gdGhlIHN0YWdpbmcgYXJlYSBhcyBhIHBhcnQgb2YgdGhl
IGdhcmJhZ2UgY29sbGVjdGlvbiByb3V0aW5lKS4KICAgSGludDogVG9vbHMgc2hvdWxkIGRp
c3Rpbmd1aXNoIG9sZCBpZGVudGlmaWVycyBmcm9tIGludmFsaWQgb25lczsKICAgd2hlbiBh
IGdpdmVuIGlkZW50aWZpZXIgaXMgcmVmZXJyaW5nIHRvIGRlbGV0ZWQgZGF0YSwgdGhlIHRv
b2xzCiAgIGFjY2VwdGluZyB0aGUgaWRlbnRpZmllciBzaG91bGQgaW5mb3JtIHRoZWlyIHVz
ZXJzIHRoYXQgdGhlCiAgIGlkZW50aWZpZWQgc3VibWlzc2lvbiBpcyByZWNvZ25pemVkLCBi
dXQgdGhlIHJlbGF0ZWQgaW5mb3JtYXRpb24gaGFzCiAgIGV4cGlyZWQuCgogICBUaGUgUmVj
ZWlwdCBwYWdlIHNob3VsZCBnaXZlIHRoZSBzdWJtaXR0ZXIgYSBTZWNyZXRhcmlhdCBwb2lu
dC1vZi0KICAgY29udGFjdCB0byByZXBvcnQgc3VibWlzc2lvbiBwcm9ibGVtcyAoUjY1L2Ep
LgoKMTUuICBCeXBhc3NpbmcgdGhlIFRvb2xzZXQKCiAgIEEgYnVnZ3kgVG9vbHNldCBpbXBs
ZW1lbnRhdGlvbiBvciB1bnVzdWFsIGNpcmN1bXN0YW5jZXMgbWF5IGZvcmNlIGEKCgoKUm91
c3Nrb3YgICAgICAgICAgICAgICAgRXhwaXJlcyBPY3RvYmVyIDIxLCAyMDA1ICAgICAgICAg
ICAgICAgW1BhZ2UgMjJdCgwKSW50ZXJuZXQtRHJhZnQgICAgIElEIFN1Ym1pc3Npb24gVG9v
bHNldDogUmVxdWlyZW1lbnRzICAgICAgICBBcHJpbCAyMDA1CgoKICAgc3VibWl0dGVyIHRv
IHN1Ym1pdCBhIGRyYWZ0IHRvIHRoZSBTZWNyZXRhcmlhdCBmb3IgbWFudWFsIHByb2Nlc3Np
bmcuCiAgIFRoaXMgY2FuIGJlIGRvbmUgYnkgY2hvb3NpbmcgdGhlICJtYW51YWwgcG9zdGlu
ZyIgcm91dGUgc3VwcG9ydGVkIGJ5CiAgIHRoZSBUb29sc2V0IChSNDcvYSkgb3IsIGFzIGEg
bGFzdCByZXNvcnQsIGJ5IGVtYWlsaW5nIHRoZSBkcmFmdAogICBkaXJlY3RseSB0byBTZWNy
ZXRhcmlhdC4gIEluIGVpdGhlciBjYXNlLCBhbiBpbmZvcm1hbCAiY292ZXIgbGV0dGVyIgog
ICBoYXMgdG8gYWNjb21wYW55IHRoZSBkcmFmdC4gIFRoZSBsZXR0ZXIgc2hvdWxkIGV4cGxh
aW4gd2h5IHRoZQogICBhdXRvbWF0ZWQgaW50ZXJmYWNlIGNhbm5vdCBiZSB1c2VkLgoKICAg
V2hlbiBwcm9jZXNzaW5nIG1hbnVhbCBzdWJtaXNzaW9ucywgdGhlIFNlY3JldGFyaWF0IG1h
eSBiZSBhYmxlIHRvCiAgIHVzZSB0aGUgVG9vbHNldC4gIEEgTWFudWFsIENoZWNrIHBhZ2Ug
c2ltaWxhciB0byB0aGUgZGVmYXVsdCBDaGVjawogICBwYWdlIHByb3ZpZGVzIGF1dGhlbnRp
Y2F0ZWQgU2VjcmV0YXJpYXQgc3RhZmYgd2l0aCBlZGl0YWJsZSBtZXRhLWRhdGEKICAgZmll
bGRzIGFuZCBhICJmb3JjZSBwb3N0aW5nIiBhY3Rpb24gKFI1MC9iKS4gIFRoZSBmb3JjZWQg
cG9zdGluZwogICBhY3Rpb24gYWNjZXB0cyBtZXRhLWRhdGEgZmllbGRzICJhcyBpcyIsIGRv
ZXMgbm90IHZlcmlmeSBzdWJtaXR0ZXIKICAgYWNjZXNzIHRvIGVtYWlsIG9yIFdHIGRyYWZ0
IGF1dGhvcml6YXRpb24sIGFuZCBwb3N0cyB0aGUgZHJhZnQgYXMgaWYKICAgbm8gdmFsaWRh
dGlvbiBlcnJvcnMgd2VyZSBmb3VuZCAoUjUxL2IpLiAgVGhlIE1hbnVhbCBDaGVjayBwYWdl
CiAgIHNob3VsZCBzdGlsbCBjb250YWluIGFsbCB0aGUgZXJyb3JzIGFuZCB3YXJuaW5ncyBp
ZGVudGljYWwgdG8gdGhvc2UKICAgc2VlbiBieSBvcmRpbmFyeSBzdWJtaXR0ZXJzIChSMTA2
L2IpIHNvIHRoYXQgdGhlIFNlY3JldGFyaWF0IGtub3dzCiAgIHdoYXQgdGhlIFRvb2xzZXQg
aXMgdW5oYXBweSBhYm91dCAoaWYgYW55dGhpbmcpLgoKICAgVXNpbmcgbWFudWFsIHByb2Nl
c3NpbmcgbWF5IHJlc3VsdCBpbiBzaWduaWZpY2FudCBwb3N0aW5nIGRlbGF5cy4KICAgR2Vu
ZXJhdGVkIHN1Ym1pc3Npb24gcmVjZWlwdHMgb3Igbm90aWZpY2F0aW9ucyBvdWdodCB0byBn
aXZlIHRoZQogICBzdWJtaXR0ZXIgYW4gZXhwZWN0ZWQgcHJvY2Vzc2luZyB0aW1lIGVzdGlt
YXRlIChSNTMvYSkuCgogICBUaGUgaW50ZW50IG9mIHRoaXMgbW9kZSBpcyB0byBwcm92aWRl
IGEgd2F5IGZvciBzdWJtaXR0ZXJzIHRvIGJ5cGFzcwogICBidWdzIG9yIGxpbWl0YXRpb25z
IG9mIHRoZSBhdXRvbWF0ZWQgbWVjaGFuaXNtcyBpbiBvcmRlciB0byBwb3N0IGFuCiAgICJ1
bnVzdWFsIiBkcmFmdCBvciB0byBwb3N0IGEgZHJhZnQgdW5kZXIgInVudXN1YWwiIGNpcmN1
bXN0YW5jZXMuCiAgIE9uZSBleGFtcGxlIHdvdWxkIGJlIGEgZHJhZnQgdGhhdCBkb2VzIG5v
dCBjb250YWluIHN0YW5kYXJkIElFVEYKICAgYm9pbGVycGxhdGUgYnV0IGhhcyBhIHNwZWNp
YWwgSUVTRyBwZXJtaXNzaW9uIHRvIHBvc3QgdGhlIGRyYWZ0IHdpdGgKICAgdGhlIGV4cGVy
aW1lbnRhbCBib2lsZXJwbGF0ZS4gIEFub3RoZXIgZXhhbXBsZSBpcyBhIGRyYWZ0IHRoYXQg
ZmFpbHMKICAgYXV0b21hdGVkIHZhbGlkYXRpb24gdGVzdHMgZHVlIHRvIGEgdmFsaWRhdG9y
IGJ1Zy4KCiAgIFRoZSBieXBhc3MgbW9kZSBpcyBhbHNvIGxpa2VseSB0byBiZSB1c2VkIChl
ZmZlY3RpdmVseSkgYnkgdGhlCiAgIG1ham9yaXR5IG9mIHN1Ym1pdHRlcnMgZHVyaW5nIHRo
ZSBUcmlhbCBzdGFnZSBvZiB0aGUgVG9vbHNldAogICBpbXBsZW1lbnRhdGlvbiwgd2hlbiBm
ZXcgc3VibWl0dGVycyBrbm93IGFib3V0IChvciBhcmUgYWxsb3dlZCB0bwogICB1c2UpIHRo
ZSBUb29sc2V0LgoKMTYuICBFbWFpbCBpbnRlcmZhY2UKCiAgIFRoZSBUb29sc2V0IHNob3Vs
ZCBoYXZlIGFuIGVtYWlsIGludGVyZmFjZSBmb3IgYXV0b21hdGVkIHBvc3Rpbmcgb2YKICAg
dmFsaWQgZHJhZnRzIChSNTUvYikuICBXaGlsZSB2aXJ0dWFsbHkgZXZlcnkgZG9jdW1lbnRl
ZCBUb29sc2V0CiAgIGZ1bmN0aW9uYWxpdHkgY2FuLCB0ZWNobmljYWxseSwgYmUgaW1wbGVt
ZW50ZWQgYmVoaW5kIGFuIGVtYWlsCiAgIGludGVyZmFjZSwgZmVhdHVyZXMgb3RoZXIgdGhh
biBwb3N0aW5nIG9mIHZhbGlkIGRyYWZ0cyBhcmUgYmVsaWV2ZWQKICAgdG8gYmUgcHJvaGli
aXRpdmVseSBhd2t3YXJkIHRvIGltcGxlbWVudCBvciB1c2UgdmlhIGVtYWlsLgoKICAgVGhl
IGVtYWlsIGludGVyZmFjZSBhY2NlcHRzIGEgZHJhZnQgYXMgYSBzZXQgb2YgZW1haWwgcGFy
dChzKSAob25lCiAgIHBlciBkcmFmdCBmb3JtYXQpIChSNTYvYikuICBGb3IgZXhhbXBsZSwg
dGhlIHBsYWluIHRleHQgZm9ybWF0IGNhbiBiZQogICBzdWJtaXR0ZWQgaW4gdGhlICJib2R5
IiBvZiB0aGUgZW1haWwgbWVzc2FnZSwgd2hpbGUgWE1MIHNvdXJjZSBmb3JtYXQKICAgY2Fu
IGJlIG9wdGlvbmFsbHkgc2VudCBhcyBhbiAiYXR0YWNobWVudCIgb2YgdGhlIHNhbWUgZW1h
aWwgbWVzc2FnZS4KICAgRWFjaCBwYXJ0IGNhbiBlaXRoZXIgY29udGFpbiB0aGUgYWN0dWFs
IGZvcm1hdCBkYXRhIChSMTQxL2IpIG9yIGEKCgoKUm91c3Nrb3YgICAgICAgICAgICAgICAg
RXhwaXJlcyBPY3RvYmVyIDIxLCAyMDA1ICAgICAgICAgICAgICAgW1BhZ2UgMjNdCgwKSW50
ZXJuZXQtRHJhZnQgICAgIElEIFN1Ym1pc3Npb24gVG9vbHNldDogUmVxdWlyZW1lbnRzICAg
ICAgICBBcHJpbCAyMDA1CgoKICAgc2luZ2xlIFVSTCBwb2ludGluZyB0byBpdCAoUjE0Mi9j
KS4gIEluIHRoZSBsYXR0ZXIgY2FzZSwgdGhlIFRvb2xzZXQKICAgaGFzIHRvIGZldGNoIHRo
ZSBmb3JtYXQgZGF0YS4gIERldGFpbHMgb2YgVVJMLWZldGNoaW5nIG9wdGlvbiBhcmUgbm90
CiAgIGRvY3VtZW50ZWQgaGVyZSwgYnV0IGl0IGlzIGFzc3VtZWQgdGhhdCBIVFRQIFVSTHMg
YXJlIHN1cHBvcnRlZCAoYXQKICAgbGVhc3QpLCBhbmQgZmV0Y2hpbmcgZXJyb3JzIGFyZSBy
ZXBvcnRlZC4gIFRoaXMgZG9jdW1lbnQgZG9lcyBub3QKICAgc3BlY2lmeSBob3cgdGhlIGZv
cm1hdCBvZiBlYWNoIGVtYWlsIHBhcnQgaXMgZGV0ZXJtaW5lZCwgYnV0IGl0IGlzCiAgIGFz
c3VtZWQgdGhhdCBNSU1FIHR5cGUgYW5kIGNvbnRlbnQgd291bGQgbmVlZCB0byBiZSBhbmFs
eXplZC4KCiAgIEFmdGVyIGFjY2VwdGluZyB0aGUgZHJhZnQsIHRoZSBUb29sc2V0IHVzZXMg
dGhlIHNlbmRlcidzIGVtYWlsCiAgIGFkZHJlc3MgdG8gc2VsZWN0IHRoZSBzdWJtaXR0ZXIg
aWRlbnRpdHkgKFI1Ny9iKSwgY2hlY2tzIHRoZQogICBzdWJtaXNzaW9uIChSNTgvYiksIGFu
ZCBwb3N0cyB0aGUgZHJhZnQgaWYgdGhlIGNoZWNrIGlzIHN1Y2Nlc3NmdWwKICAgKFI1OS9i
KS4gIFRoZSBzdWJtaXR0ZXIgc2hvdWxkIGJlIG5vdGlmaWVkIG9mIHRoZSBvdXRjb21lIG9m
IHRoZQogICBkcmFmdCBzdWJtaXNzaW9uIHZpYSBlbWFpbCAoUjYwL2IpLiAgT3RoZXIgcmVx
dWlyZW1lbnRzIGZvciB0aGUgd2ViCiAgIGludGVyZmFjZSAoaW5jbHVkaW5nIHJlcXVpcmVt
ZW50cyBvbiBzdWJtaXNzaW9uIHByZXByb2Nlc3NpbmcsIGRyYWZ0CiAgIHZhbGlkYXRpb24s
IHN1Ym1pdHRlciBhdXRoZW50aWNhdGlvbiwgZHJhZnQgcG9zdGluZywgYW5kCiAgIG5vdGlm
aWNhdGlvbikgYXBwbHkgdG8gdGhlIGVtYWlsIGludGVyZmFjZS4KCiAgIFRoZXJlZm9yZSwg
YSB0eXBpY2FsIHN1Y2Nlc3NmdWwgc3VibWlzc2lvbiB2aWEgZW1haWwgaW50ZXJmYWNlIG1h
eQogICByZXN1bHQgaW4gdGhlIGZvbGxvd2luZyBleGNoYW5nZSBvZiBtZXNzYWdlcyAoIlQi
IGlzIGZvciAiVG9vbHNldCIsCiAgICJTIiBpcyBmb3IgInN1Ym1pdHRlciIsIGFuZCAiQSIg
aXMgZm9yICJhbGwgYXV0aG9ycyBhbmQgc3VibWl0dGVyIik6CgogICAgICBTLS0+VDogdGhl
IGRyYWZ0IHZlcnNpb24KCiAgICAgIFM8LS1UOiBhIGNoYWxsZW5nZSB0byB2ZXJpZnkgZW1h
aWwgYWNjZXNzCgogICAgICBTLS0+VDogYSByZXNwb25zZSB0byB0aGUgY2hhbGxlbmdlCgog
ICAgICBBPC0tVDogd2FybmluZ3MgYW5kIHRoZSByZWNlaXB0CgogICB3aGVyZSB0aGUgbWVz
c2FnZSBjb250YWluaW5nIHRoZSBjaGFsbGVuZ2UgbWF5IGluY2x1ZGUgd2FybmluZ3MgYXMK
ICAgd2VsbC4KCiAgIFdoZW4gZHJhZnQgdmFsaWRhdGlvbiBmYWlscywgdGhlIGZvbGxvd2lu
ZyBlbWFpbHMgbWF5IGJlIGV4Y2hhbmdlZDoKCiAgICAgIFMtLT5UOiB0aGUgZHJhZnQgdmVy
c2lvbgoKICAgICAgUzwtLVQ6IGVycm9ycyBhbmQgcmVjZWlwdAoKICAgRW1haWwgcGFydHMv
YXR0YWNobWVudHMgdGhhdCBhcmUgbm90IHJlY29nbml6ZWQgYXMgZHJhZnQgZm9ybWF0cyBh
cmUKICAgbm90IGNvbnNpZGVyZWQgYXMgZHJhZnQgZm9ybWF0cy4gIFN1Y2ggcGFydHMgYXJl
IGlnbm9yZWQgYnkgdGhlCiAgIFRvb2xzZXQgKFIxMDcvYiksIGV4Y2VwdCB0aGF0IGEgd2Fy
bmluZyBpcyBnZW5lcmF0ZWQgZm9yIGVhY2gKICAgdW5yZWNvZ25pemFibGUgcGFydCBjb250
YWluaW5nIG1vcmUgdGhhbiB3aGl0ZXNwYWNlIChSMTA4L2IpLiAgVGhlc2UKICAgdHdvIHJl
cXVpcmVtZW50cyBhcmUgbWVhbnQgdG8gbWFrZSB0aGUgaW50ZXJmYWNlIHJvYnVzdCBpbiB0
aGUKICAgcHJlc2VuY2Ugb2YgZW1haWwgc2lnbmF0dXJlcyBhbmQgb3RoZXIgcGFydHMgb3V0
c2lkZSBvZiB0aGUgc3VibWl0dGVyCiAgIGNvbnRyb2wuCgogICBIaW50OiBUb29sc2V0IGFj
dGlvbnMgY2FuIGJlIGltcGxlbWVudGVkIHRvIHN1cHBvcnQgZW1haWwgYW5kIHdlYgogICBp
bnRlcmZhY2VzIHdpdGhvdXQgY29kZSBkdXBsaWNhdGlvbi4KCgoKClJvdXNza292ICAgICAg
ICAgICAgICAgIEV4cGlyZXMgT2N0b2JlciAyMSwgMjAwNSAgICAgICAgICAgICAgIFtQYWdl
IDI0XQoMCkludGVybmV0LURyYWZ0ICAgICBJRCBTdWJtaXNzaW9uIFRvb2xzZXQ6IFJlcXVp
cmVtZW50cyAgICAgICAgQXByaWwgMjAwNQoKCiAgIFdoaWxlIGJvdGggd2ViIGFuZCBlbWFp
bCBpbnRlcmZhY2VzIGFsbG93IGZvciBmYXN0IHBvc3Rpbmcgb2YgdmFsaWQKICAgZHJhZnRz
LCB0aGVyZSBhcmUgc2lnbmlmaWNhbnQgZGlmZmVyZW5jZXMgYmV0d2VlbiB0aGUgdHdvIGlu
dGVyZmFjZXMuCiAgIFByaW1hcnkgYWR2YW50YWdlcyBvZiB0aGUgZW1haWwgaW50ZXJmYWNl
IGFyZToKCiAgIG9mZi1saW5lIG1vZGU6IEEgc3VibWl0dGVyIGNhbiBkbyBhbGwgdGhlIG1h
bnVhbCB3b3JrIHJlcXVpcmVkIHRvCiAgICAgIHN1Ym1pdCBhIGRyYWZ0IHdoaWxlIGJlaW5n
IGRpc2Nvbm5lY3RlZCBmcm9tIHRoZSBuZXR3b3JrLiAgVGhlCiAgICAgIGVtYWlsIGNsaWVu
dCBhY3R1YWxseSBzdWJtaXRzIHRoZSBkcmFmdCB3aGVuIGNvbm5lY3Rpdml0eSBpcwogICAg
ICByZWdhaW5lZC4KCiAgIHBvb3IgY29ubmVjdGl2aXR5OiBFbWFpbCBzeXN0ZW1zIGFyZSBv
ZnRlbiBiZXR0ZXIgc3VpdGVkIGZvcgogICAgICBhdXRvbWF0ZWQgdHJhbnNtaXNzaW9uIGFu
ZCByZS10cmFuc21pc3Npb24gb2YgZW1haWxzIHdoZW4gbmV0d29yawogICAgICBjb25uZWN0
aXZpdHkgaXMgcG9vciBkdWUgdG8gaGlnaCBwYWNrZXQgbG9zcyByYXRpb3MsIHRyYW5zbWlz
c2lvbgogICAgICBkZWxheXMsIGFuZCBvdGhlciBwcm9ibGVtcy4KCiAgIGNvbnZlbmllbmNl
OiBTb21lIElFVEZlcnMgY29uc2lkZXIgZW1haWwgaW50ZXJmYWNlcyBhcyBnZW5lcmFsbHkK
ICAgICAgIm1vcmUgY29udmVuaWVudCIuCgogICBQcmltYXJ5IGFkdmFudGFnZXMgb2YgdGhl
IHdlYiBpbnRlcmZhY2UgYXJlOgoKICAgY29uZmlybWF0aW9uOiBBIHN1Ym1pdHRlciBpcyBn
aXZlbiBhIGNoYW5jZSB0byB2ZXJpZnkgdGhhdCBhdXRvbWF0ZWQKICAgICAgZXh0cmFjdGlv
biBvZiBtZXRhLWRhdGEgcHJvZHVjZWQgcmVhc29uYWJsZSByZXN1bHRzLiAgT3RoZXIgdXNl
ZnVsCiAgICAgIGNvbmZpcm1hdGlvbnMgYXJlIHBvc3NpYmxlIChlLmcuLCAiQXJlIHlvdSBz
dXJlIHlvdSB3YW50IHRvIHBvc3QgYQogICAgICB2ZXJzaW9uIG9mIHRoZSBkcmFmdCB0aGF0
IHdhcyB1cGRhdGVkIDMwIHNlY29uZHMgYWdvIGJ5IHlvdXIgY28tCiAgICAgIGF1dGhvcj8i
KS4KCiAgIHZhbGlkYXRpb246IEEgc3VibWl0dGVyIGNhbiB2YWxpZGF0ZSB0aGUgZHJhZnQg
d2l0aG91dCBwb3N0aW5nIGl0LgoKICAgcXVhbGl0eTogTm9uLWNyaXRpY2FsIHdhcm5pbmdz
IG1heSBwcm9tcHQgdGhlIHN1Ym1pdHRlciB0byBwb3N0cG9uZQogICAgICBwb3N0aW5nIHRv
IGltcHJvdmUgZHJhZnQgcXVhbGl0eS4KCiAgIG1hbnVhbCBhZGp1c3RtZW50czogVGhlIHN1
Ym1pdHRlciBjYW4gYWRqdXN0IGV4dHJhY3RlZCBtZXRhLWRhdGEgYW5kCiAgICAgIGVhc2Ug
U2VjcmV0YXJpYXQgd29yayBvbiBtYW51YWxseSBwb3N0aW5nIGFuIHVudXN1YWwgZHJhZnQu
CgogICBtZXRhLWRhdGE6IFRoZSBzdWJtaXR0ZXIgY2FuIHNwZWNpZnkgb3B0aW9uYWwgZXh0
ZXJuYWwgbWV0YS1kYXRhCiAgICAgICh0aGF0IGNhbm5vdCBiZSBleHRyYWN0ZWQgZnJvbSB0
aGUgZHJhZnQgaXRzZWxmKS4gIEZvciBleGFtcGxlLCBhbgogICAgICBlbWFpbCBhZGRyZXNz
IGZvciBkcmFmdCBkaXNjdXNzaW9uIGNhbiBiZSBzcGVjaWZpZWQuCgogICBjb250ZXh0IGhl
bHA6IFRoZSB3ZWIgaW50ZXJmYWNlIG1ha2VzIGl0IGVhc3kgdG8gcHJvdmlkZSBsaW5rcyB0
bwogICAgICBleHRyYSBpbmZvcm1hdGlvbiBhYm91dCBpbnB1dCBmaWVsZHMsIGVycm9ycywg
cG9zdGluZyBvcHRpb25zLAogICAgICBkZWFkbGluZXMsIGV0Yy4KCiAgIG9wYXF1ZW5lc3M6
IEZpbGVzIHN1Ym1pdHRlZCB2aWEgdGhlIHdlYiBpbnRlcmZhY2UgYXJlIGFyZ3VhYmx5IGxl
c3MKICAgICAgc3VzY2VwdGlibGUgdG8gdmFyaW91cyBpbi10cmFuc2l0IHRyYW5zZm9ybWF0
aW9ucyBhbmQKICAgICAgbWlzaW50ZXJwcmV0YXRpb24gdGhhbiBlbWFpbHMuICBFbWFpbHMg
YXJlIG9mdGVuIG11dGF0ZWQgYnkgbWFpbAogICAgICBhZ2VudHMgKGUuZy4sIGF1dG9tYXRl
ZCBkaXNjbGFpbWVycyBhZGRlZCBieSBzZW5kZXJzIGFuZCBleHRyYQogICAgICBsaW5lIGZl
ZWRzIGFkZGVkIGJ5IHJlY2lwaWVudHMpLgoKCgoKClJvdXNza292ICAgICAgICAgICAgICAg
IEV4cGlyZXMgT2N0b2JlciAyMSwgMjAwNSAgICAgICAgICAgICAgIFtQYWdlIDI1XQoMCklu
dGVybmV0LURyYWZ0ICAgICBJRCBTdWJtaXNzaW9uIFRvb2xzZXQ6IFJlcXVpcmVtZW50cyAg
ICAgICAgQXByaWwgMjAwNQoKCiAgIGNvbnZlbmllbmNlOiBTb21lIElFVEZlcnMgY29uc2lk
ZXIgd2ViIGludGVyZmFjZXMgYXMgZ2VuZXJhbGx5ICJtb3JlCiAgICAgIGNvbnZlbmllbnQi
LgoKCjE3LiAgSW1wbGVtZW50YXRpb24gc3RhZ2VzCgogICBUaGlzIHNlY3Rpb24gZGVmaW5l
cyB0aGUgVG9vbHNldCBpbXBsZW1lbnRhdGlvbiBzdGFnZXMgb3IgcGhhc2VzLgogICBUaGVy
ZSBhcmUgdGhyZWUgY29uc2VjdXRpdmUgc3RhZ2VzLCBtYXJrZWQgd2l0aCBsZXR0ZXJzICJh
IiwgImIiLCBvcgogICAiYyIuICBFYXJsaWVyIHN0YWdlIHJlcXVpcmVtZW50cyBtdXN0IHN0
aWxsIGJlIHNhdGlzZmllZCBpbiBsYXRlcgogICBzdGFnZXMuICBBbGwgcmVxdWlyZW1lbnRz
IG5lZWQgdG8gYmUgaW50ZXJwcmV0ZWQgYW5kIGV2YWx1YXRlZCBpbiB0aGUKICAgY29udGV4
dCBvZiB0aGUgY3VycmVudCBzdGFnZSBhbmQgdGhlIGN1cnJlbnRseSBpbXBsZW1lbnRlZCBm
ZWF0dXJlcy4KICAgRm9yIGV4YW1wbGUsIHJlcXVpcmVtZW50IFI2OCBhcHBsaWVzIHRvIHRo
ZSBmaXJzdCBzdGFnZSBidXQgcmVmZXJzIHRvCiAgIFhNTCBkcmFmdCBmb3JtYXQgdGhhdCBt
YXkgbm90IGJlIHN1cHBvcnRlZCB1bnRpbCB0aGUgc2Vjb25kIHN0YWdlLiAgQQogICBjb3Jy
ZWN0IGludGVycHJldGF0aW9uIG9mIFI2OCB1bnRpbCBYTUwgc3VwcG9ydCBpcyBhZGRlZCBp
cyAiaXQgaXMgYW4KICAgZXJyb3IgdG8gc3VibWl0IGEgZHJhZnQgd2l0aG91dCBhIHBsYWlu
IHRleHQgZm9ybWF0Ii4KCiAgIFVubGVzcyBvdGhlcndpc2Ugbm90ZWQsIHJlcXVpcmVtZW50
cyBsaXN0ZWQgaW4gbGF0ZXIgc3RhZ2VzIG1heSBiZQogICBjb3ZlcmVkIGluIGVhcmxpZXIg
c3RhZ2VzLCBidXQgZG8gbm90IGhhdmUgdG8gYmUuICBJZiB0aGUKICAgaW1wbGVtZW50ZXJz
IGRlY2lkZSB0byBhZGQgc29tZSBmdW5jdGlvbmFsaXR5IGZyb20gYSBmdXR1cmUgc3RhZ2Us
CiAgIHRoZXkgaGFzIHRvIGJlIHZlcnkgY2FyZWZ1bCB0byBzYXRpc2Z5IGFsbCByZXF1aXJl
bWVudHMgcmVsYXRlZCB0bwogICB0aGF0IGZ1bmN0aW9uYWxpdHkuICBVbmZvcnR1bmF0ZWx5
LCB0aGVyZSBpcyBubyByZWxpYWJsZSwgcHJhZ21hdGljCiAgIHdheSB0byBpZGVudGlmeSAi
YWxsIHJlcXVpcmVtZW50cyIgcmVsYXRlZCB0byBhIGdpdmVuIGZlYXR1cmUuCgogICAoYSkg
VHJpYWwgU3RhZ2U6IEluaXRpYWwgYmFzaWMgaW1wbGVtZW50YXRpb24gdG8gdGVzdCBtYWpv
ciBjb25jZXB0cwogICAgICBhbmQgcmVsaWV2ZSB0aGUgU2VjcmV0YXJpYXQgZnJvbSBoYW5k
bGluZyB0aGUgbW9zdCBjb21tb24KICAgICAgc3VibWlzc2lvbiBjYXNlLiAgVGhpcyBzdGFn
ZSBmb2N1c2VzIG9uIHBsYWluIHRleHQgZHJhZnQKICAgICAgc3VibWlzc2lvbiB2aWEgdGhl
IHdlYiBpbnRlcmZhY2UuICBUaGUgdHJpYWwgc3RhZ2Ugc2hvdWxkIHRha2UgYQogICAgICBk
ZWRpY2F0ZWQgcHJvZmVzc2lvbmFsIGFib3V0IDQ1IGNhbGVuZGFyIGRheXMgdG8gZmluaXNo
IChpLmUuLCB0bwogICAgICBjb21wbHkgd2l0aCBhbGwgdGhlIGxpc3RlZCByZXF1aXJlbWVu
dHMpLgoKICAgKGIpIFByb2R1Y3Rpb24gU3RhZ2U6IFN1cHBvcnQgZm9yIGFsbCBtYWpvciBm
ZWF0dXJlcy4gIE9uY2UgdGhpcwogICAgICBzdGFnZSBpcyBjb21wbGV0ZWQsIHRoZSBTZWNy
ZXRhcmlhdCBzaG91bGQgb25seSBoYW5kbGUgdW51c3VhbAogICAgICBkcmFmdCBzdWJtaXNz
aW9ucy4gIFRoaXMgc3RhZ2Ugc2hvdWxkIHRha2UgYWJvdXQgMTAwIGNhbGVuZGFyIGRheXMK
ICAgICAgdG8gZmluaXNoLiAgR3JhZHVhbCByZWxlYXNlIG9mIGltcGxlbWVudGVkIGZlYXR1
cmVzIGlzIHBvc3NpYmxlCiAgICAgIGFuZCBleHBlY3RlZC4KCiAgIChjKSBFbmhhbmNlbWVu
dCBTdGFnZTogQSBuZXZlci1lbmRpbmcgc3RhZ2UgZm9jdXNpbmcgb24gc29waGlzdGljYXRl
ZAogICAgICBmZWF0dXJlcyAoZS5nLiwgZHJhZnQgaW50ZXJwcmV0YXRpb24gb3IgdmFsaWRh
dGlvbikgdGhhdCBpbXByb3ZlCiAgICAgIHRoZSBvdmVyYWxsIHF1YWxpdHkgb2YgdGhlIFRv
b2xzZXQuICBUaGlzIHN0YWdlIGlzIGRvY3VtZW50ZWQKICAgICAgcHJpbWFyaWx5IHRvIGhp
Z2hsaWdodCB0aGUgb3ZlcmFsbCBkaXJlY3Rpb24gb2YgdGhlIFRvb2xzZXQ7IGl0cwogICAg
ICByZXF1aXJlbWVudHMgYXJlIG9mdGVuIGltcHJlY2lzZSBhbmQgbWFueSBhcmUgZXhwZWN0
ZWQgdG8gY2hhbmdlLgoKICAgSW1wbGVtZW50YXRpb24gZXhwZXJpZW5jZSBpcyBsaWtlbHkg
dG8gcmVzdWx0IGluIGNoYW5nZXMgb2YgdGhlCiAgIFRvb2xzZXQgcmVxdWlyZW1lbnRzLiAg
U3VjaCBjaGFuZ2VzIHNob3VsZCBiZSBkb2N1bWVudGVkIGFzIGEgcGFydCBvZgogICBzdGFn
ZSBldmFsdWF0aW9uIGFjdGl2aXRpZXMuCgoKCgoKClJvdXNza292ICAgICAgICAgICAgICAg
IEV4cGlyZXMgT2N0b2JlciAyMSwgMjAwNSAgICAgICAgICAgICAgIFtQYWdlIDI2XQoMCklu
dGVybmV0LURyYWZ0ICAgICBJRCBTdWJtaXNzaW9uIFRvb2xzZXQ6IFJlcXVpcmVtZW50cyAg
ICAgICAgQXByaWwgMjAwNQoKCjE4LiAgVGVzdGluZwoKICAgQmVmb3JlIGxldHRpbmcgdGhl
IFRvb2xzZXQgZ28gbGl2ZSwgdGhvdXNhbmRzIG9mIHBvc3RlZCBkcmFmdHMgY2FuIGJlCiAg
IHVzZWQgdG8gdGVzdCB0aGUgbWV0YS1kYXRhIGV4dHJhY3Rpb24gYWxnb3JpdGhtcy4gIFN1
Y2ggdGVzdGluZyBjYW4KICAgbWluaW1pemUgdGhlIG51bWJlciBvZiBkcmFmdHMgYmVpbmcg
c2VudCBvbiBmb3IgbWFudWFsIGhhbmRsaW5nCiAgIGJlY2F1c2Ugb2YgbWV0YS1kYXRhIGV4
dHJhY3Rpb24gZmFpbHVyZS4KCiAgIE90aGVyIFRvb2xzZXQgZmVhdHVyZXMgbWF5IGFsc28g
YmUgdGVzdGFibGUgdXNpbmcgcG9zdGVkIGRyYWZ0cy4gIEEKICAgc2ltcGxlIHBhaXIgb2Yg
c2NyaXB0cyBjYW4gYmUgdXNlZCB0byB0ZXN0IGJhc2ljIGZ1bmN0aW9uYWxpdHkgb2YgdGhl
CiAgIHdlYiBhbmQgZW1haWwgaW50ZXJmYWNlcy4KCiAgIEhpbnQ6IFRoZSBJRVNHIG1heSBy
ZXF1aXJlIHRlc3QgcmVzdWx0cyBiZWZvcmUgYWNjZXB0aW5nIHRoZSBpbml0aWFsCiAgIGlt
cGxlbWVudGF0aW9uLiAgSWYgYXV0b21hdGVkLCB0aGUgYWJvdmUgYXBwcm9hY2ggY2FuIGJl
IHVzZWQgZm9yCiAgIHJlZ3Jlc3Npb24gdGVzdGluZyBhcyB3ZWxsLgoKMTkuICBTZWN1cml0
eSBDb25zaWRlcmF0aW9ucwoKICAgUmVtb3ZpbmcgaHVtYW5zIGZyb20gdGhlIGRyYWZ0IHN1
Ym1pc3Npb24gYW5kIHBvc3RpbmcgcHJvY2VzcyAoYS5rLmEuCiAgIGF1dG9tYXRpb24pIHJl
cXVpcmVzIGFkZGluZyBmZWF0dXJlcyB0byBtYWtlIHRoZSBUb29sc2V0IHJlbGlhYmxlIGlu
CiAgIHRoZSBwcmVzZW5jZSBvZiBkZW5pYWwgb2Ygc2VydmljZSAoRG9TKSBhdHRhY2tzIGFu
ZCBhdHRlbXB0cyB0bwogICBjb3JydXB0IHRoZSBkcmFmdCByZXBvc2l0b3J5LiAgSWRlYWxs
eSwgdGhlIFRvb2xzZXQgbmVlZHMgdG8gcmVzaXN0CiAgIGJvdGggcHJlbWVkaXRhdGVkIG1h
bGljaW91cyBhY3Rpb25zIGFuZCBnb29kLWludGVudCBhY2NpZGVudHMuCgogICBUaGlzIGRv
Y3VtZW50IGNvbnRhaW5zIHNwZWNpZmljIHJlcXVpcmVtZW50cyB0byBtaW5pbWl6ZSB0aGUg
aW1wYWN0CiAgIG9mIERvUyBhdHRhY2tzIChlLmcuLCBSOTcpLiAgVGhlIHJlcXVpcmVtZW50
cyBhcmUgZGVzaWduZWQgd2l0aCB0aGUKICAgYXNzdW1wdGlvbiB0aGF0IGl0IGlzIGFjY2Vw
dGFibGUgZm9yIHRoZSBUb29sc2V0IHRvIGJsb2NrIHZhbGlkCiAgIHN1Ym1pc3Npb25zIGR1
cmluZyBhIERvUyBhdHRhY2sgYXMgbG9uZyBhcyB0aGUgVG9vbHNldCBtYWludGFpbmVycwog
ICBhcmUgbm90aWZpZWQgYW5kIGFscmVhZHkgcG9zdGVkIGRyYWZ0cyBhcmUgbm90IGRhbWFn
ZWQuCgogICBUaGlzIGRvY3VtZW50IGFsc28gY29udGFpbnMgbWFueSBzcGVjaWZpYyByZXF1
aXJlbWVudHMgcmVsYXRlZCB0bwogICBkZXRlY3Rpb24gb2YgZHJhZnRzIHZpb2xhdGluZyBJ
RVRGIHBvc3RpbmcgcnVsZXMuICBUaG9zZSByZXF1aXJlbWVudHMKICAgaGVscCByZWR1Y2Ug
dGhlIG51bWJlciBvZiAiYmFkIiBkcmFmdHMgcG9zdGVkIGJ5IG1pc3Rha2UgYnV0IGRvIG5v
dAogICBvZmZlciByZWxpYWJsZSBwcm90ZWN0aW9uIGZyb20gc3VibWl0dGVycyB3aXRoIG1h
bGljaW91cyBpbnRlbnQ6CiAgIFNpbmNlIGF1dG9tYXRlZCB0b29scyBkbyBub3QgdHJ1bHkg
dW5kZXJzdGFuZCBkcmFmdHMgKGFuZCB3aWxsIG5vdCBkbwogICBzbyBpbiB0aGUgZm9yZXNl
ZWFibGUgZnV0dXJlKSwgaXQgaXMgdGVjaG5pY2FsbHkgcG9zc2libGUgdG8gcG9zdCBhCiAg
IHJvZ3VlIGRyYWZ0IHZpb2xhdGluZyBJRVRGIHBvc3RpbmcgcnVsZXMuICBGb3IgZXhhbXBs
ZSwgYSBkcmFmdCBtYXkKICAgY29udGFpbiBhYnN0cmFjdCB0ZXh0IHRoYXQgbWFrZXMgdGhl
IElFVEYtYXBwcm92ZWQgSVBSIHN0YXRlbWVudHMKICAgZm9sbG93aW5nIHRoZSBhYnN0cmFj
dCBtZWFuaW5nbGVzcyBvciBsZWdhbGx5IG5vbi1iaW5kaW5nLgoKICAgU3Ryb25nZXIgc3Vi
bWl0dGVyIGF1dGhlbnRpY2F0aW9uIG1heSBiZSByZXF1aXJlZCB0byBkZXRlciBtYWxpY2lv
dXMKICAgc3VibWl0dGVycy4gIFRoZSBkb2N1bWVudGVkIGF1dGhlbnRpY2F0aW9uIG1lY2hh
bmlzbSAoaS5lLiwgcmVhZAogICBhY2Nlc3MgdG8gb25lJ3MgZW1haWwpIGlzIGRlZW1lZCBh
cHByb3ByaWF0ZSBmb3IgZGVwbG95bWVudCBvZiB0aGUKICAgZmlyc3QgdmVyc2lvbnMgb2Yg
dGhlIFRvb2xzZXQsIHVuZGVyIGNsb3NlIFNlY3JldGFyaWF0IHN1cGVydmlzaW9uLgogICBI
aW50OiB0byBpbmNyZWFzZSBjaGFuY2VzIG9mIGRldGVjdGluZyBwcm9ibGVtcyBlYXJseSBl
bm91Z2gsIGl0IG1heQogICBiZSBhIGdvb2QgaWRlYSB0byBhdXRvbWF0aWNhbGx5IGluZm9y
bSBhIGRlc2lnbmF0ZWQgaHVtYW4gb2YgZXZlcnkKICAgcG9zdGVkIHN1Ym1pc3Npb24gKGR1
cmluZyBpbml0aWFsIGRlcGxveW1lbnQgb2YgdGhlIFRvb2xzZXQpLgoKCgoKClJvdXNza292
ICAgICAgICAgICAgICAgIEV4cGlyZXMgT2N0b2JlciAyMSwgMjAwNSAgICAgICAgICAgICAg
IFtQYWdlIDI3XQoMCkludGVybmV0LURyYWZ0ICAgICBJRCBTdWJtaXNzaW9uIFRvb2xzZXQ6
IFJlcXVpcmVtZW50cyAgICAgICAgQXByaWwgMjAwNQoKCjIwLiAgSUFOQSBDb25zaWRlcmF0
aW9ucwoKICAgTm9uZS4KCjIxLiAgQ29tcGxpYW5jZQoKICAgQSBUb29sc2V0IGltcGxlbWVu
dGF0aW9uIGlzIGNvbXBsaWFudCB3aXRoIHRoaXMgc3BlY2lmaWNhdGlvbiBpZiBpdAogICBz
YXRpc2ZpZXMgYWxsIG5vcm1hdGl2ZSByZXF1aXJlbWVudHMgKGkuZS4sIHRoZSBwaHJhc2Vz
IG1hcmtlZCB3aXRoCiAgICJSbm5uIiBhcyBkZWZpbmVkIGluIFNlY3Rpb24gNCkuICBDb21w
bGlhbmNlIHNob3VsZCBiZSBldmFsdWF0ZWQgZm9yCiAgIGVhY2ggaW1wbGVtZW50YXRpb24g
c3RhZ2UgYXMgc29tZSByZXF1aXJlbWVudHMgZG8gbm90IGFwcGx5IHRvIHNvbWUKICAgc3Rh
Z2VzLgoKICAgVGhlIElFU0cgZXZhbHVhdGVzIGltcGxlbWVudGF0aW9ucyBhbmQgaW50ZXJw
cmV0cyByZXF1aXJlbWVudHMgYXMKICAgbmVjZXNzYXJ5LgoKQXBwZW5kaXggQS4gIENvbXBh
cmlzb24gd2l0aCBjdXJyZW50IHByb2NlZHVyZXMKCiAgIFRoaXMgc2VjdGlvbiBzdW1tYXJp
emVzIG1ham9yIGRpZmZlcmVuY2VzIGJldHdlZW4gdGhlIGRyYWZ0CiAgIHN1Ym1pc3Npb24g
YXBwcm9hY2ggY3VycmVudGx5IGluIHVzZSBieSBJRVRGIGFuZCB0aGUgcHJvcG9zZWQKICAg
VG9vbHNldCwgaW5jbHVkaW5nIHZpb2xhdGlvbnMgb2YgdGhlIGN1cnJlbnQgSUVURiBydWxl
cy4KCiAgIG8gIFRoZSBUb29sc2V0IGFsbG93cyBwb3N0aW5nIG9mIFhNTCBhbmQgUERGIGRy
YWZ0IGZvcm1hdHMuICBUaGUgWE1MCiAgICAgIGZvcm1hdCBpcyBub3QgY3VycmVudGx5IGFj
Y2VwdGVkIGJ5IHRoZSBTZWNyZXRhcmlhdCwgYW5kIGxlZ2FsaXR5CiAgICAgIG9mIFBERiBh
Y2NlcHRhbmNlIGJ5IHRoZSBTZWNyZXRhcmlhdCBoYXMgYmVlbiBxdWVzdGlvbmVkLiAgWE1M
CiAgICAgIHNvdXJjZXMgc2hvdWxkIGJlIGFjY2VwdGVkIHRvIGVuYWJsZSBJRVRGIHRvb2xz
IGFuZCBwYXJ0aWNpcGFudHMKICAgICAgdG8gaGF2ZSBhY2Nlc3MgdG8gcmF3IGRyYWZ0IG1l
dGEtZGF0YSBhbmQgY29udGVudC4gIFRoZXkgYXJlIGFsc28KICAgICAgdXNlZnVsIHRvIHRo
ZSBSRkMgRWRpdG9yIGFuZCwgaGVuY2UsIGl0IGlzIGEgZ29vZCBpZGVhIHRvIHZhbGlkYXRl
CiAgICAgIGFuZCBnZXQgdGhlbSAiaW50byB0aGUgc3lzdGVtIiBlYXJseS4gIFRoZSBsYXR0
ZXIgYXJndW1lbnQgYXBwbGllcwogICAgICB0byBQREYgZHJhZnRzIGFzIHdlbGwsIGFsdGhv
dWdoIHRoZSBmaXJzdCBUb29sc2V0IHZlcnNpb25zIGFyZSBub3QKICAgICAgZXhwZWN0ZWQg
dG8gaW50ZXJwcmV0IFBERiBkcmFmdHMuCgogICBvICBUaGUgVG9vbHNldCBtYXkgZXZlbnR1
YWxseSBnZW5lcmF0ZSBIVE1MIGRyYWZ0IGZvcm1hdHMgZnJvbSBYTUwKICAgICAgZHJhZnQg
c291cmNlcyAoc2VlIFIxMTIpLiAgQ3VycmVudGx5LCBJRVRGIGRvZXMgbm90IHByb3ZpZGUg
SFRNTAogICAgICBkcmFmdCBmb3JtYXRzIC0tIHRoZSBTZWNyZXRhcmlhdCBkb2VzIG5vdCBh
Y2NlcHQgSFRNTCBzb3VyY2VzIGFuZAogICAgICBubyBIVE1MIGlzIGdlbmVyYXRlZCBmcm9t
IGFjY2VwdGVkIGRyYWZ0IHNvdXJjZXMuICBOb3RlLCBob3dldmVyLAogICAgICB0aGF0IHRo
aXMgZG9jdW1lbnQgZG9lcyBub3Qgc3VnZ2VzdCB0aGF0IHRoZSBUb29sc2V0IHNob3VsZAog
ICAgICBldmVudHVhbGx5IGFjY2VwdCBkcmFmdHMgaW4gSFRNTCBmb3JtYXQuCgogICBvICBU
aGUgVG9vbHNldCBkZWZpbmVzICJXR04gZHJhZnQiIGFzIGEgZHJhZnQgd2hpY2ggbmFtZSBz
dGFydHMgd2l0aAogICAgICAiZHJhZnQtaWV0Zi0iLiAgQWxsIG90aGVyIGRyYWZ0cyBhcmUg
dHJlYXRlZCBhcyBpbmRpdmlkdWFsIGRyYWZ0cy4KICAgICAgQ3VycmVudGx5LCBhbiBJRVRG
IFdHIGRvZXMgbm90IGhhdmUgdG8gZm9sbG93IGEgc2luZ2xlIFdHIGRyYWZ0CiAgICAgIG5h
bWluZyBmb3JtYXQuICBUaHVzLCB0aGUgMDAgdmVyc2lvbiBvZiBhIGRyYWZ0IHRoYXQgdGhl
IFdHCiAgICAgIGNvbnNpZGVycyBhIFdHIGRyYWZ0IGNhbiBiZSBwb3N0ZWQgYnkgdGhlIFRv
b2xzZXQgd2l0aG91dCBXRwogICAgICBjb25zZW50LiAgQWZmZWN0ZWQgV0dzIHdvdWxkIGhh
dmUgdG8gZGVhbCB3aXRoIHRoZSBjb25zZXF1ZW5jZXMgb2YKICAgICAgdGhlaXIgZGVjaXNp
b24gbm90IHRvIHVzZSBhIGNvbW1vbiBuYW1pbmcgZm9ybWF0LiAgVGhlIFRvb2xzIHRlYW0K
ICAgICAgc3VnZ2VzdHMgdGhhdCBJRVRGIHJlcXVpcmVzIFdHcyB0byBuYW1lIHRoZWlyIGRy
YWZ0cyB1c2luZyBhCiAgICAgIHNpbmdsZSBmb3JtYXQgdG8gbWluaW1pemUgY29uZnVzaW9u
LiAgSG9wZWZ1bGx5LCB0aGVyZSBhcmUgbm8KICAgICAgaHVtYW5zIG5hbWVkICJJZXRmIiBv
ciwgYXQgbGVhc3QsIG5vbmUgb2YgdGhlbSB3YW50cyB0byBhdXRvLXBvc3QKCgoKUm91c3Nr
b3YgICAgICAgICAgICAgICAgRXhwaXJlcyBPY3RvYmVyIDIxLCAyMDA1ICAgICAgICAgICAg
ICAgW1BhZ2UgMjhdCgwKSW50ZXJuZXQtRHJhZnQgICAgIElEIFN1Ym1pc3Npb24gVG9vbHNl
dDogUmVxdWlyZW1lbnRzICAgICAgICBBcHJpbCAyMDA1CgoKICAgICAgaW5kaXZpZHVhbCBk
cmFmdHMuCgogICBvICBGb3Igc29tZSBkcmFmdHMsIHRoZSBUb29sc2V0IHZlcmlmaWVzIHRo
YXQgdGhlIHN1Ym1pdHRlciBpcwogICAgICAiZXhwZWN0ZWQiIChlLmcuLCBhbiBhdXRob3Ig
b2YgdGhlIHByZXZpb3VzIGRyYWZ0IHZlcnNpb24gb3IgV0cKICAgICAgQ2hhaXIpLiAgQ3Vy
cmVudGx5LCB0aGUgU2VjcmV0YXJpYXQgZG9lcyB2aXJ0dWFsbHkgbm8gc3VjaAogICAgICB2
ZXJpZmljYXRpb24sIGJ1dCBhbiBlbWFpbCBzdWJtaXNzaW9uIGludGVyZmFjZSBhbmQgYSBo
dW1hbgogICAgICBwcmVzZW5jZSBpbiB0aGUgc3VibWlzc2lvbiBsb29wIGhhdmUgYXBwYXJl
bnRseSBiZWVuIHN1ZmZpY2llbnQgdG8KICAgICAgcHJldmVudCBtYXNzaXZlIGF1dG9tYXRl
ZCBhdHRhY2tzLiAgVGhlIGNoYW5nZSBpcyBuZWVkZWQgdG8KICAgICAgcHJldmVudCBhIHNp
bXBsZSBzY3JpcHQgZnJvbSB1c2luZyB0aGUgd2ViIGludGVyZmFjZSB0byBvdmVyd3JpdGUK
ICAgICAgcG9zdGVkIElFVEYgZHJhZnRzIHdpdGgganVuay4gIEhvcGVmdWxseSwgdGhlIElF
VEYgd2lsbCBldmVudHVhbGx5CiAgICAgIGhhdmUgYSBkZWNlbnQgYXV0aGVudGljYXRpb24g
c2NoZW1lIG1ha2luZyB0aGUgc3VibWl0dGVyIGNoZWNrcwogICAgICBzaW1wbGVyLCBsZXNz
IHJpZ2lkLCBhbmQgbW9yZSB0cmFuc3BhcmVudC4KCiAgIG8gIFRoZSBUb29sc2V0IHdpbGwg
YXV0b21hdGljYWxseSBub3RpZnkgYXV0aG9ycyBvZiBwb3N0ZWQgZHJhZnRzLgogICAgICBD
dXJyZW50bHksIG5laXRoZXIgdGhlIHN1Ym1pdHRlciBub3IgYW55IG9mIHRoZSBjby1hdXRo
b3JzIGFyZQogICAgICBleHBsaWNpdGx5IG5vdGlmaWVkIHdoZW4gdGhlIGRyYWZ0IGlzIHBv
c3RlZC4gIE5vdGlmaWNhdGlvbiBpcwogICAgICBtZWFudCwgaW4gcGFydCwgdG8gYWxsb3cg
Y28tYXV0aG9ycyB0byBkZXRlY3QgY2FzZXMgd2hlcmUgdGhlaXIKICAgICAgbmFtZSBpcyBw
dXQgb24gdGhlIGF1dGhvcnMgbGlzdCB3aXRob3V0IHBlcm1pc3Npb24uICBFdmVudHVhbGx5
LAogICAgICB0aGVyZSB3aWxsIGJlIGEgZ2VuZXJhbCBJRVRGIG1lY2hhbmlzbSB0byBhbGxv
dyAzcmQgcGFydGllcyBzdWNoCiAgICAgIGFzIEFEcywgY2hhaXJzLCBvciByZXZpZXdlcnMg
dG8gcmVnaXN0ZXIgZm9yIG5vdGlmaWNhdGlvbnMgYWJvdXQKICAgICAgZHJhZnQgcG9zdGlu
Z3MuCgogICBvICBUaGUgVG9vbHNldCBtYXkgZXZlbnR1YWxseSBhY2NlcHQgY29tcHJlc3Nl
ZCBkcmFmdHMgKHNlZSBSMTUwKS4KICAgICAgQ3VycmVudGx5LCB0aGUgU2VjcmV0YXJpYXQg
ZG9lcyBub3QgYWNjZXB0ICJ6aXAiIGFyY2hpdmVzIGR1ZSB0bwogICAgICB2aXJ1cyBjb250
YW1pbmF0aW9uIGNvbmNlcm5zLiAgQSBwcm9wZXIgaW1wbGVtZW50YXRpb24gb2YgdGhlCiAg
ICAgIFRvb2xzZXQgbXVzdCBhZGRyZXNzIHN1Y2ggY29uY2VybnMsIHdoaWxlIHRoZSBTZWNy
ZXRhcmlhdCBtYXkKICAgICAgc3RpbGwgbmVlZCB0byByZWplY3QgY2VydGFpbiBmb3JtYXRz
IGlmIHRoZXkgYXJlIHN1Ym1pdHRlZCB2aWEgdGhlCiAgICAgIG1hbnVhbCByb3V0ZS4KCgpB
cHBlbmRpeCBCLiAgQWNrbm93bGVkZ21lbnRzCgogICBUaGUgYXV0aG9yIGdyYXRlZnVsbHkg
YWNrbm93bGVkZ2VzIHRoZSBjb250cmlidXRpb25zIG9mIEhhcmFsZCBUdmVpdAogICBBbHZl
c3RyYW5kIChDaXNjbyksIEJyaWFuIEUuIENhcnBlbnRlciAoSUJNKSwgRnJhbmsgRWxsZXJt
YW5uLCBCaWxsCiAgIEZlbm5lciAoQVQmVCksIEJhcmJhcmEgQi4gRnVsbGVyIChGb3JldGVj
KSwgQnJ1Y2UgTGlsbHksIEhlbnJpawogICBMZXZrb3dldHogKEVyaWNzc29uKSwgTGFycnkg
TWFzaW50ZXIgKEFkb2JlKSwgS2VpdGggTW9vcmUgKFVuaXZlcnNpdHkKICAgb2YgVGVubmVz
c2VlKSwgUGVra2EgU2F2b2xhIChOZXRjb3JlKSwgSGVubmluZyBTY2h1bHpyaW5uZSAoQ29s
dW1iaWEKICAgVW5pdmVyc2l0eSksIGFuZCBTdGFuaXNsYXYgU2hhbHVub3YgKEludGVybmV0
MikuCgogICBTcGVjaWFsIHRoYW5rcyB0byBNYXJzaGFsbCBSb3NlIGZvciBoaXMgeG1sMnJm
YyB0b29sLgoKQXBwZW5kaXggQy4gIENoYW5nZSBsb2cKCiAgIFJGQyBFZGl0b3IgTm90ZTog
VGhpcyBzZWN0aW9uIGlzIHRvIGJlIHJlbW92ZWQgZHVyaW5nIHRoZSBmaW5hbAogICBwdWJs
aWNhdGlvbiBvZiB0aGUgZG9jdW1lbnQuCgogICBJbnRlcm5hbCBXRyByZXZpc2lvbiBjb250
cm9sIElEOiAkSWQ6IGlkLnhtbCx2IDEuMzcgMjAwNS8wNC8wNQogICAyMDo1NDowOSByb3Vz
c2tvdiBFeHAgJAoKCgpSb3Vzc2tvdiAgICAgICAgICAgICAgICBFeHBpcmVzIE9jdG9iZXIg
MjEsIDIwMDUgICAgICAgICAgICAgICBbUGFnZSAyOV0KDApJbnRlcm5ldC1EcmFmdCAgICAg
SUQgU3VibWlzc2lvbiBUb29sc2V0OiBSZXF1aXJlbWVudHMgICAgICAgIEFwcmlsIDIwMDUK
CgogICB2ZXJzaW9uIDA4CgogICAgICAqICBDbGFyaWZpZWQgdGhhdCB0aGUgc2VjcmV0YXJp
YXQgZG9lcyBub3QgaW50ZW5kIHRvIGNvcnJlY3QKICAgICAgICAgZHJhZnRzIHN1Ym1pdHRl
ZCBmb3IgbWFudWFsIHBvc3RpbmcuICBJZiB0aGUgZHJhZnQgbmVlZHMKICAgICAgICAgdHdl
YWtpbmcgdG8gbWF0Y2ggc3VibWl0dGVyJ3MgaW50ZW50LCB0aGVuIHRoZSBkcmFmdCBzaG91
bGQgYmUKICAgICAgICAgY29ycmVjdGVkIGFuZCByZS1zdWJtaXR0ZWQuCgogICAgICAqICBS
ZW5hbWVkICJsYXdmdWwgc3VibWl0dGVyIiB0byAiZXhwZWN0ZWQgc3VibWl0dGVyIiB0byBh
dm9pZCBhbgogICAgICAgICBpbmNvcnJlY3QgaW1wbGljYXRpb24gdGhhdCBzb21lIGtpbmQg
b2YgbmV3IGxlZ2FsIGNoZWNrcyBhcmUKICAgICAgICAgaW52b2x2ZWQuICBXaXRob3V0IGFu
IGVtYWlsIGludGVyZmFjZSBhbmQgdGhlIFNlY3JldGFyaWF0IGluCiAgICAgICAgIHRoZSBs
b29wLCB0aGUgc3VibWl0dGVyIG11c3Qgc3RpbGwgYmUgImV4cGVjdGVkIiBhbmQKICAgICAg
ICAgYXV0aGVudGljYXRlZCB0byBhdm9pZCBzY3JpcHQga2lkZGllcyBmcm9tIG92ZXJ3cml0
aW5nIHBvc3RlZAogICAgICAgICBJRVRGIGRyYWZ0cyB3aXRoIGp1bmsuCgogICAgICAqICBD
bGFyaWZpZWQgdGhhdCBSNjggYW5kIG90aGVyIG11bHRpLXN0YWdlIHJlcXVpcmVtZW50cyB3
aXRoCiAgICAgICAgIG11bHRpLXN0YWdlIGZlYXR1cmVzIGFyZSB0byBiZSBpbnRlcnByZXRl
ZCBieSBpZ25vcmluZyBmZWF0dXJlcwogICAgICAgICB0aGF0IHdpbGwgYmUgaW1wbGVtZW50
ZWQgYXQgYSBsYXRlciBzdGFnZS4gIEZvciBleGFtcGxlLCAidGV4dAogICAgICAgICBvciBY
TUwiIG1lYW5zIGp1c3QgInRleHQiIHVudGlsIFhNTCBzdXBwb3J0IGlzIGFkZGVkLgoKICAg
ICAgKiAgTWV0YS1kYXRhIGV4dHJhY3Rpb246IEV4cGxpY2l0bHkgZXhwbGFpbmVkIHdoeSBt
ZXRhLWRhdGEKICAgICAgICAgZXh0cmFjdGlvbiBmcm9tIGFsbCBkcmFmdCBmb3JtYXRzIGlz
IG5lY2Vzc2FyeS4KCiAgICAgICogIE1ldGEtZGF0YSBleHRyYWN0aW9uOiBiZSBldmVuIG1v
cmUgZXhwbGljaXQgdGhhdCB0aGUgdmFsaWRhdGlvbgogICAgICAgICBwcm9jZWR1cmUgZGVz
Y3JpYmVkIGluIHRoZSBmb2xsb3dpbmcgc2VjdGlvbiBtYXkgZGVjbGFyZSBhbgogICAgICAg
ICBleHRyYWN0ZWQgZGF0ZSBpbnZhbGlkIGFmdGVyIHRha2luZyBpbnRvIGNvbnNpZGVyYXRp
b24gY3VycmVudAogICAgICAgICAoaS5lLiwgc3VibWlzc2lvbikgdGltZSwgSUVURiBkcmFm
dCBleHBpcmF0aW9uIHJ1bGVzLCBhbmQgb3RoZXIKICAgICAgICAgZmFjdG9ycyBleHRlcm5h
bCB0byB0aGUgZHJhZnQuICBUaGUgdmFsaWRhdGlvbiBzZWN0aW9uIGFscmVhZHkKICAgICAg
ICAgaGFzIHRoZSBuZWNlc3NhcnkgZm9ybWFsIHJ1bGVzLgoKICAgICAgKiAgQWRkZWQgUjE1
MiB0byByZXF1aXJlIHB1YmxpYyBhdmFpbGFiaWxpdHkgb2Ygc291cmNlcyBpbnN0ZWFkIG9m
CiAgICAgICAgIGp1c3QgaGludGluZyBhdCBpdCAoSGVucmlrIExldmtvd2V0eikuICBFeHBs
YWluZWQgdGhhdCB0bwogICAgICAgICBtZWFuaW5nZnVsbHkgc2F0aXNmeSBhdmFpbGFiaWxp
dHkgcmVxdWlyZW1lbnRzLCB0aGUgVG9vbHNldAogICAgICAgICBjYW5ub3QgcmVseSBvbiB1
bmF2YWlsYWJsZSBzb2Z0d2FyZS4KCiAgICAgICogIFZhbGlkYXRpb246IGFkZGVkIFIxNTMt
UjE1NiB0byByZXF1aXJlIFhNTCBmb3JtYXQgYW5kIFJGQyAyNjI5KwogICAgICAgICBEVEQg
dmFsaWRhdGlvbi4gIER1cmluZyB0aGUgZmlyc3QgdHdvIGltcGxlbWVudGF0aW9uIHN0YWdl
cwogICAgICAgICB2YWxpZGF0aW9uIGZhaWx1cmVzIHJlc3VsdCBpbiB3YXJuaW5ncyAobm90
IGZhdGFsIHN1Ym1pc3Npb24KICAgICAgICAgZXJyb3JzKSB0byBnaXZlIElFVEZlcnMgKGFu
ZCBJRVRGIHRvb2xzKSBlbm91Z2ggdGltZSB0byBnZXQKICAgICAgICAgYWNjdXN0b21lZCB0
byB0aGUgbmVjZXNzaXR5IG9mIG9iZXlpbmcgWE1MIHN0YW5kYXJkcy4gIFRoaXMKICAgICAg
ICAgYWRkaXRpb24gZG9jdW1lbnRzIFRvb2xzIHRlYW0gY29uc2Vuc3VzIHJlYWNoZWQgaW4g
RGVjZW1iZXIKICAgICAgICAgMjAwNC4gIEl0IHNob3VsZCBoYXZlIGJlZW4gZG9jdW1lbnRl
ZCBlYXJsaWVyLgoKICAgICAgKiAgUG9saXNoZWQgU291cmNlRm9yZ2UgImhvc3RpbmciIGhp
bnQgdG8gY2xhcmlmeSB0aGF0IHdlIGFyZQogICAgICAgICBzdWdnZXN0aW5nIHRvIHBsYWNl
IFRvb2xzZXQgc291cmNlcyB0aGVyZSBhbmQgbm90IHN1Z2dlc3RpbmcKICAgICAgICAgdGhh
dCB0aGUgVG9vbHNldCBydW5zIGZyb20gU0Ygc2VydmVycy4KCiAgICAgICogIEFkZGVkIFRl
c3Rpbmcgc2VjdGlvbiB3aXRoIGEgaGludDogdXNlIGV4aXN0aW5nIGRyYWZ0cyAoQnJpYW4K
ICAgICAgICAgRS4gQ2FycGVudGVyKQoKCgpSb3Vzc2tvdiAgICAgICAgICAgICAgICBFeHBp
cmVzIE9jdG9iZXIgMjEsIDIwMDUgICAgICAgICAgICAgICBbUGFnZSAzMF0KDApJbnRlcm5l
dC1EcmFmdCAgICAgSUQgU3VibWlzc2lvbiBUb29sc2V0OiBSZXF1aXJlbWVudHMgICAgICAg
IEFwcmlsIDIwMDUKCgogICAgICAqICBUZXJtaW5vbG9neTogcmVwbGFjZWQgIldHIGRyYWZ0
IiB3aXRoICJXRy1uYW1lZCBkcmFmdCIgb3IgIldHTgogICAgICAgICBkcmFmdCIgYmVjYXVz
ZSBub3QgYWxsIFdHLW5hbWVkIGRyYWZ0cyBhcmUgV0cgZHJhZnRzIGFuZCB3ZSBkbwogICAg
ICAgICBub3Qgd2FudCB0byBkZWFsIHdpdGggdGhlIGRpZmZlcmVuY2Ugb3IgdG8gYW5zd2Vy
IHF1ZXN0aW9ucwogICAgICAgICBhYm91dCB0aGUgIndyb25nIiB0ZXJtaW5vbG9neS4KCiAg
ICAgICogIE92ZXJhbGwgb3BlcmF0aW9uOiBleHBsaWNpdGx5IHN0YXRlZCB0aGF0IHRoZSBU
b29sc2V0IGhhcyB0byBiZQogICAgICAgICBjb21wYXRpYmxlIHdpdGggdGhlIFNlY3JldGFy
aWF0J3MgdG9vbHMgZm9yIGhhbmRsaW5nIGRyYWZ0cwogICAgICAgICB3aXRoIGEgaGludCB0
aGF0IHN1Y2ggY29tcGF0aWJpbGl0eSBjYW4gYmUgYWNoaWV2ZWQgYnkKICAgICAgICAgYXBw
cm9wcmlhdGVseSBpbXBsZW1lbnRpbmcgdGhlIFRvb2xzZXQgb3IsIGluIHNvbWUgY2FzZXMs
IGJ5CiAgICAgICAgIG1vZGlmeWluZyBleGlzdGluZyB0b29scy4KCiAgICAgICogIFNjb3Bl
OiBBZGRyZXNzZWQgY29uY2VybiB0aGF0ICJ0aGVyZSBzaG91bGQgYWxzbyBiZSBwcm92aXNp
b24KICAgICAgICAgZm9yIHRob3NlIHdobyBwcmVmZXIgdG8gdXNlIHRyb2ZmL25yb2ZmIiBi
eSBleHBsaWNpdGx5IHN0YXRpbmcKICAgICAgICAgdGhhdCB0aGUgc2V0IG9mIHJlcXVpcmVt
ZW50cyBpbiB0aGlzIGRvY3VtZW50IGlzIG5vdAogICAgICAgICBjb21wcmVoZW5zaXZlIGFu
ZCBvdGhlciBkb2N1bWVudHMgbWF5IGFkZCBtb3JlIHJlcXVpcmVtZW50cywKICAgICAgICAg
aW5jbHVkaW5nIHRob3NlIHJlbGF0ZWQgdG8gb3RoZXIgc291cmNlIGZvcm1hdHMuICBUaGUg
VG9vbHMKICAgICAgICAgdGVhbSBpbiBub3QgaW50ZXJlc3RlZCBpbiBhZGRpbmcgdHJvZmYv
bnJvZmYgc3VwcG9ydCB0byB0aGUKICAgICAgICAgVG9vbHNldCwgZXNwZWNpYWxseSBpbiB0
aGlzIGRvY3VtZW50LgoKICAgICAgKiAgQXBwbGllZCBMYXN0IENhbGwgY29tbWVudHMgYnkg
RnJhbmsgRWxsZXJtYW5uLgoKICAgICAgKiAgQWRkZWQgYSBoaW50OiBUaGUgVG9vbHNldCBp
bXBsZW1lbnRlcnMgc2hvdWxkIG5vdCBhc3N1bWUgdGhhdAogICAgICAgICBkcmFmdCBmb3Jt
YXRzIGdlbmVyYXRlZCBieSB0aGUgc2FtZSB0b29sIGZyb20gdGhlIHNhbWUgc291cmNlCiAg
ICAgICAgIGZvcm1hdCBoYXZlIGVzc2VudGlhbGx5IHRoZSBzYW1lIGNvbnRlbnQgKEtlaXRo
IE1vb3JlKS4KCiAgICAgICogIFVwZGF0ZWQgQWNrbm93bGVkZ21lbnRzIHNlY3Rpb24uCgog
ICAgICAqICBEaWQgbnVtZXJvdXMgbWlub3IgbGFuZ3VhZ2UgY29ycmVjdGlvbnMuCgogICB2
ZXJzaW9uIDA3CgogICAgICAqICBBZGRlZCBSMTQ2LCBhIHJlcXVpcmVtZW50IHRvIGdlbmVy
YXRlIGEgd2FybmluZyAoYW5kLAogICAgICAgICBldmVudHVhbGx5LCBhIGNvbXBsZXRlIGRp
ZmYpIHdoZW4gdGhlIHByb2R1Y2VkIHBsYWluIHRleHQgZG9lcwogICAgICAgICBub3QgbWF0
Y2ggdGhlIHN1Ym1pdHRlZCBvbmUgKGV2ZW4gaWYgbWV0YS1kYXRhIG1hdGNoZXMpLgoKICAg
ICAgKiAgQWRkZWQgYSBzdGFnZS1jIHN1Z2dlc3Rpb24gUjE0OCB0byBhZGQgYSBzbWFydCBm
dXp6eSBtYXRjaAogICAgICAgICBmdW5jdGlvbiB0byBjb21wYXJlIHN1Ym1pdHRlZCBhbmQg
Z2VuZXJhdGVkLWZyb20tWE1MIHRleHRzLgogICAgICAgICBIaW50ZWQgYXQgdXNpbmcgbXVs
dGlwbGUgeG1sMnJmYyB2ZXJzaW9ucyB0byBhdm9pZCB3YXJuaW5ncwogICAgICAgICBiYXNl
ZCBvbiBtaW5vciB4bWwycmZjIGRpZmZlcmVuY2VzIGFsb25lLgoKICAgICAgKiAgQWRkZWQg
UjE1MCB0byBldmVudHVhbGx5IHN1cHBvcnQgc3VibWlzc2lvbiBvZiBjb21wcmVzc2VkCiAg
ICAgICAgIGRyYWZ0cyAodmlhIGJvdGggd2ViIGFuZCBlbWFpbCBpbnRlcmZhY2VzKS4gIE5v
dGVkIHRoYXQgdGhlCiAgICAgICAgIFNlY3JldGFyaWF0IGN1cnJlbnRseSBkb2VzIG5vdCBh
Y2NlcHQgInppcCIgYXJjaGl2ZXMuCgogICAgICAqICBCZSBleHBsaWNpdCB0aGF0IENHSSBp
cyBub3Qgc29tZWhvdyBtYW5kYXRlZCBmb3Igc2VydmVyLXNpZGUKICAgICAgICAgaW1wbGVt
ZW50YXRpb25zLiAgVGhlIGltcGxlbWVudG9yIHdpbGwgcGljayB0aGUgcmlnaHQKICAgICAg
ICAgdGVjaG5vbG9neSBnaXZlbiBhbGwgdGhlIGZhY3RvcnMsIGluY2x1ZGluZyBoZXIgZXhw
ZXJpZW5jZSBhbmQKICAgICAgICAgYXZhaWxhYmxlIHRvb2xzIChIZW5uaW5nIFNjaHVsenJp
bm5lKS4KCgoKUm91c3Nrb3YgICAgICAgICAgICAgICAgRXhwaXJlcyBPY3RvYmVyIDIxLCAy
MDA1ICAgICAgICAgICAgICAgW1BhZ2UgMzFdCgwKSW50ZXJuZXQtRHJhZnQgICAgIElEIFN1
Ym1pc3Npb24gVG9vbHNldDogUmVxdWlyZW1lbnRzICAgICAgICBBcHJpbCAyMDA1CgoKICAg
ICAgKiAgQWRkZWQgIm9wYXF1ZW5lc3MiIHRvIHRoZSBsaXN0IG9mIHdlYiBpbnRlcmZhY2Ug
YWR2YW50YWdlcywKICAgICAgICAgaW5zcGlyZWQgYnkgdGhlIG51bWJlciBvZiBmb2xrcyBj
b21wbGFpbmluZyBhYm91dCB0aGVpciBkcmFmdHMKICAgICAgICAgYmVpbmcgbXV0YXRlZCBi
eSB0aGUgbWFpbCBzeXN0ZW0gd2hpbGUgaW4tdHJhbnNpdCB0byB0aGUgZHJhZnQKICAgICAg
ICAgYXJjaGl2ZS4KCiAgIHZlcnNpb24gMDYKCiAgICAgICogIEluc3RlYWQgb2YgdXNpbmcg
YSBzcGVjaWFsIHNlY3Rpb24gdG8gbWFwIHJlcXVpcmVtZW50cyB0bwogICAgICAgICBUb29s
c2V0IGltcGxlbWVudGF0aW9uIHN0YWdlcywgZW5jb2RlIHRoZSBzdGFnZSB3aXRoIGVhY2gK
ICAgICAgICAgcmVxdWlyZW1lbnQuICBUaGUgcmVhZGVyIG5vdyBrbm93cyByZXF1aXJlbWVu
dCAidXJnZW5jeSIgd2hlbgogICAgICAgICByZWFkaW5nIHRoZSByZXF1aXJlbWVudCBpdHNl
bGYsIGluc3RlYWQgb2YgaGF2aW5nIHRvIHNlYXJjaCBmb3IKICAgICAgICAgdGhlIHJlcXVp
cmVtZW50IGNvZGUgaW4gdGhlICJJbXBsZW1lbnRhdGlvbiBzdGFnZXMiIHNlY3Rpb24uCiAg
ICAgICAgIEFsc28sIHRoaXMgbWFrZXMgaXQgbXVjaCBlYXNpZXIgdG8gbWFrZSBzdXJlIHRo
YXQgYWxsCiAgICAgICAgIHJlcXVpcmVtZW50cyBhcmUgInN0YWdlZCIuCgogICAgICAqICBS
ZWZsZWN0ZWQgVG9vbHMgdGVhbSBjb25jZXJucyBhYm91dCBIVE1MIGdlbmVyYXRpb24gYnkg
cGxhY2luZwogICAgICAgICB0aGF0IGZlYXR1cmUgaW4gdGhlIEVuaGFuY2VtZW50IGltcGxl
bWVudGF0aW9uIHN0YWdlIGFuZAogICAgICAgICBleHBsaWNpdGx5IG1lbnRpb25pbmcgdGhh
dCB0aGUgZmVhdHVyZSBtYXkgYmUgZ29uZSBiZWZvcmUgaXRzCiAgICAgICAgIGltcGxlbWVu
dGVkLgoKICAgICAgKiAgQWRkZWQgUjE0My9hIHRvIGF2b2lkIG1pc21hdGNoaW5nIGZvcm1h
dHM6IERyYWZ0cyBjb250YWluaW5nCiAgICAgICAgIFBERiBvciBQb3N0c2NyaXB0IGZvcm1h
dCBtdXN0IG5vdCBiZSBhdXRvLXBvc3RlZCB1bnRpbCB0aGUKICAgICAgICAgVG9vbHNldCBj
YW4gdmFsaWRhdGUgdGhhdCB0aGVpciBjb250ZW50IG1hdGNoZXMgcGxhaW4gdGV4dAogICAg
ICAgICBmb3JtYXQuICBEb2N1bWVudGVkIHJhdGlvbmFsZSBhbmQgZnV0dXJlIGRpcmVjdGlv
biBmb3IgZm9ybWF0CiAgICAgICAgIGFjY2VwdGFuY2UgcnVsZXMuCgogICAgICAqICBEZWZp
bmVkICJXRyBkcmFmdCIgYXMgYSBkcmFmdCB3aGljaCBuYW1lIHN0YXJ0cyB3aXRoCiAgICAg
ICAgICJkcmFmdC1pZXRmLSIuICBBbGwgb3RoZXIgZHJhZnRzIGFyZSB0cmVhdGVkIGFzIGlu
ZGl2aWR1YWwKICAgICAgICAgZHJhZnRzLgoKICAgICAgKiAgU3VwcG9ydCAoZXZlbnR1YWxs
eSkgZmV0Y2hpbmcgZHJhZnQgZGF0YSB1c2luZyBhbiBlbWFpbC0KICAgICAgICAgZW1iZWRk
ZWQgVVJMIChTdGFuaXNsYXYgU2hhbHVub3YpLgoKICAgICAgKiAgUmUtUmVzb2x2ZWQgWFhY
Mzc6IHN1cHBvcnQgc3VibWl0dGluZyBkcmFmdHMgaW4gbWFpbiBlbWFpbAogICAgICAgICAi
Ym9keSIsIG5vdCBqdXN0IGF0dGFjaG1lbnRzIChTdGFuaXNsYXYgU2hhbHVub3YpLgoKICAg
ICAgKiAgUmVuYW1lZCBkcmFmdCBzdWJtaXNzaW9uIGRhdGUgaW50byBkcmFmdCB2ZXJzaW9u
IGNyZWF0aW9uIGRhdGUKICAgICAgICAgYW5kIGRvY3VtZW50ZWQgaG93IGNyZWF0aW9uIGFu
ZCBleHBpcmF0aW9uIGRhdGVzIGFyZSB2YWxpZGF0ZWQKICAgICAgICAgYW5kIHRoZSBmYWN0
IHRoYXQgdGhleSBkbyBub3QgZGVwZW5kIG9uIHN1Ym1pc3Npb24gdGltZS4KCiAgICAgICog
IFJlcXVpcmVkIGltcGxlbWVudGF0aW9uIHRvIGJlIG9wZW4tc291cmNlIChzZWUgUjE0NC9h
KS4KCiAgIHZlcnNpb24gMDUKCiAgICAgICogIENoYW5nZWQgZHJhZnQgc3RhdHVzIHRvIHNv
bGljaXQgZWRpdG9yaWFsIGNvbW1lbnRzIGFuZCBpbmRpY2F0ZQogICAgICAgICBjbG9zZS10
by1iZS1sYXN0LWNhbGxlZCBzdGF0ZS4KCgoKCgpSb3Vzc2tvdiAgICAgICAgICAgICAgICBF
eHBpcmVzIE9jdG9iZXIgMjEsIDIwMDUgICAgICAgICAgICAgICBbUGFnZSAzMl0KDApJbnRl
cm5ldC1EcmFmdCAgICAgSUQgU3VibWlzc2lvbiBUb29sc2V0OiBSZXF1aXJlbWVudHMgICAg
ICAgIEFwcmlsIDIwMDUKCgogICAgICAqICBXcm90ZSAiU2VjdXJpdHkgQ29uc2lkZXJhdGlv
bnMiIHNlY3Rpb24uCgogICAgICAqICBSZWZlciB0byBJRC1OSVRTIGRvY3VtZW50IGFzIGFu
IGxpc3Qgb2Ygbml0cyB0aGUgVG9vbHNldCBzaG91bGQKICAgICAgICAgY2hlY2sgZm9yIGlu
IFIxMTYuICBIaW50ZWQgdGhhdCBIZW5yaWsncyBpZG5pdHMgdG9vbCBjYW4gYmUKICAgICAg
ICAgdXNlZCBmb3IgYWN0dWFsIGNoZWNrcy4gIE1vcmUgY2hlY2tpbmcgdG9vbHMgY2FuIGJl
IGFkZGVkCiAgICAgICAgIGV2ZW50dWFsbHkuCgogICAgICAqICBBZGRlZCBtb3JlIHN1Ym1p
c3Npb24gY2FuY2VsbGF0aW9uIGRldGFpbHMuICBDb3ZlcmVkIGJvdGgKICAgICAgICAgZXhw
bGljaXQgKHZpYSBzdWJtaXR0ZXIgYWN0aW9uKSBhbmQgaW1wbGljaXQgKHZpYSB0aW1lb3V0
KQogICAgICAgICBjYW5jZWxsYXRpb25zIChTdGFuaXNsYXYgU2hhbHVub3YpLgoKICAgICAg
KiAgQWRqdXN0ZWQgIkdsb2JhbCIgRG9TIHRocmVzaG9sZCBmcm9tIDUwMCB0byAzMDAgYW5k
IGFkZGVkIGEKICAgICAgICAgIldHIiBEb1MgdGhyZXNob2xkIG9mIDMwIGRyYWZ0IHZlcnNp
b25zIHBlciBkYXkgKGluc3BpcmVkIGJ5CiAgICAgICAgIFN0YW5pc2xhdiBTaGFsdW5vdiku
CgogICAgICAqICBJbGx1c3RyYXRlZCB3aGF0IGVtYWlscyBtYXkgYmUgZXhjaGFuZ2VkIHdo
ZW4gZW1haWwgaW50ZXJmYWNlCiAgICAgICAgIGlzIGluIHVzZSAoU3RhbmlzbGF2IFNoYWx1
bm92KS4KCiAgICAgICogIFJlcGxhY2VkIFZhbGlkYXRpb24gcGFnZSB3aXRoIHZhbGlkYXRl
LW9ubHkgZmxhZyBvbiB0aGUgVXBsb2FkCiAgICAgICAgIHBhZ2UuICBUaGlzIGhlbHBzIGF2
b2lkIG11bHRpcGxlIHdlbGwta25vd24gbG9jYXRpb25zIGZvcgogICAgICAgICBzaW1pbGFy
IHRvb2xzIGFuZCBtaWdodCBzaW1wbGlmeSB0aGUgaW1wbGVtZW50YXRpb24uCgogICAgICAq
ICBSZXNvbHZlZCBYWFgxMjogU2ltcGx5IHJlZmVyIHRvIHRoZSBJRC1OSVRTIGRvY3VtZW50
IGZvciBub3cuCgogICAgICAqICBSZXNvbHZlZCBYWFgxMywgWFhYMTQ6IFBsYWNlZCAibGF3
ZnVsIHN1Ym1pdHRlciIgY2hlY2sgaW50byB0aGUKICAgICAgICAgIkV4dGVybmFsIG1ldGEt
ZGF0YSIgc2VjdGlvbi4gIERvY3VtZW50ZWQgd2hhdCBzdWJtaXR0ZXJzIHRoZQogICAgICAg
ICBUb29sc2V0IGhhcyB0byBpZGVudGlmeSBhcyBsYXdmdWwgc3VibWl0dGVycyAoUjExOSAt
IFIxMjIpLgogICAgICAgICBPdGhlcnMgd291bGQgcmVxdWlyZSBtYW51YWwgY2hlY2tzIGJ5
IHRoZSBTZWNyZXRhcmlhdC4KCiAgICAgICogIFJlc29sdmVkIFhYWDU4OiBEb2N1bWVudGVk
IHdoYXQgdGhlIFRvb2xzZXQgbXVzdCBkbyBpZiBubwogICAgICAgICBhcHByb3ZhbCBleGlz
dHMgYXQgdGhlIHRpbWUgb2YgdGhlIFdHIGRyYWZ0IHN1Ym1pc3Npb24gKFIxMjMsCiAgICAg
ICAgIFIxMjQpLgoKICAgICAgKiAgUmVtb3ZlZCBYWFg2NDogUERGIGRyYWZ0cyBhcmUgY3Vy
cmVudGx5IGFsbG93ZWQgdG8gYmUgcG9zdGVkOwogICAgICAgICB3aHkgdGhleSBhcmUgYWxs
b3dlZCBpcyBub3QgcmVhbGx5IGltcG9ydGFudC4KCiAgICAgICogIFJlc29sdmVkIFhYWDY2
OiBYTUwgZHJhZnQgc291cmNlcyBhcmUgY3VycmVudGx5IG5vdCBhbGxvd2VkIHRvCiAgICAg
ICAgIGJlIHBvc3RlZC4KCiAgICAgICogIFJlc29sdmVkIFhYWDY4OiB1c2UgZHJhZnQgInZl
cnNpb24iIGluc3RlYWQgb2YgInJldmlzaW9uIi4KICAgICAgICAgR3VpZGVsaW5lcyB0byBB
dXRob3JzIG9mIEludGVybmV0LURyYWZ0cyBkb2N1bWVudCB1c2VzIGJvdGguCiAgICAgICAg
IFJGQyAyMDI2IHVzZXMgInZlcnNpb24iLCB3aGljaCBpcyBhbHNvIGEgbW9yZSBwb3B1bGFy
IGFuZAogICAgICAgICBhcmd1YWJseSBtb3JlIHByZWNpc2UgdGVybS4KCgoKCgoKCgpSb3Vz
c2tvdiAgICAgICAgICAgICAgICBFeHBpcmVzIE9jdG9iZXIgMjEsIDIwMDUgICAgICAgICAg
ICAgICBbUGFnZSAzM10KDApJbnRlcm5ldC1EcmFmdCAgICAgSUQgU3VibWlzc2lvbiBUb29s
c2V0OiBSZXF1aXJlbWVudHMgICAgICAgIEFwcmlsIDIwMDUKCgogICB2ZXJzaW9uIDA0Cgog
ICAgICAqICBJbiBDaGVjayBhY3Rpb24sIGRvY3VtZW50ZWQgb25jZSwgZWFybHksIGFuZCBl
eHBsaWNpdGx5IHRoYXQKICAgICAgICAgZXJyb3JzIG1ha2UgYXV0by1wb3N0aW5nIGltcG9z
c2libGUgYnV0IHNob3VsZCBsZXQgdGhlCiAgICAgICAgIHN1Ym1pdHRlciB0byBwb3N0IG1h
bnVhbGx5LiAgUmVtb3ZlZCByZWZlcmVuY2VzIHRvIHZhZ3VlCiAgICAgICAgICJhY3Rpb24g
ZmFpbHMiIHN0YXRlbWVudHMgKEhlbnJpayBMZXZrb3dldHopLgoKICAgICAgKiAgSFRUUCBl
cnJvciBjb2RlcyBzaG91bGQgbm90IGJlIHVzZWQgdG8gaW5kaWNhdGUgQ2hlY2sgYWN0aW9u
CiAgICAgICAgIGVycm9ycyBiZWNhdXNlIGRvaW5nIHNvIHdvdWxkIGJlIGEgbGF5ZXJpbmcg
dmlvbGF0aW9uIGFuZCwgaW4KICAgICAgICAgc29tZSBjYXNlcywgbWF5IGNvbXBsaWNhdGUg
Ym90aCBhdXRvbWF0ZWQgYW5kIG1hbnVhbAogICAgICAgICBpbnRlcnByZXRhdGlvbiBvZiB0
aGUgVG9vbHNldCByZXNwb25zZXMuICBSZXdyb3RlIFI3IHRvIHJlcXVpcmUKICAgICAgICAg
dXNlIG9mIGNvbXB1dGVyLWZyaWVuZGx5IHRhZ3MgaW4gcmVzcG9uc2UgYm9keSBpbnN0ZWFk
IG9mIEhUVFAKICAgICAgICAgc3RhdHVzIGNvZGVzLgoKICAgICAgKiAgU3BsaXQgIlByZXBy
b2Nlc3NpbmciIHN1YnNlY3Rpb24gaW50byAiUHJlcHJvY2Vzc2luZyIgYW5kCiAgICAgICAg
ICJQcm9jZXNzaW5nIi4gIFRoZSBmb3JtZXIgZGVhbHMgd2l0aCBYTUwgaW5jbHVkZSBQSXMg
d2hpbGUgdGhlCiAgICAgICAgIGxhdHRlciB0YWxrcyBhYm91dCBwbGFpbiB0ZXh0IGFuZCBI
VE1MIGdlbmVyYXRpb24gKEhlbnJpawogICAgICAgICBMZXZrb3dldHopLgoKICAgICAgKiAg
UmVtb3ZlZCBwb3N0LWlmLXZhbGlkIGZ1bmN0aW9uYWxpdHkgKFI3OCAtIFI4MCkuICBBdXRv
bWF0aW9uCiAgICAgICAgIHRvb2xzIHN1Y2ggYXMgdGhlIG9uZXMgdGhhdCBwcm9jZXNzIGUt
bWFpbC1iYXNlZCBzdWJtaXNzaW9ucwogICAgICAgICB3b3VsZCBiZW5lZml0IGZyb20gaGF2
aW5nIHRoZSBrbm9iLCBidXQgdGhleSBjYW5ub3QgdXNlIHRoZQogICAgICAgICBDaGVjayBh
Y3Rpb24gImFzIGlzIiwgZXZlbiB3aXRoIHRoZSBrbm9iLCBiZWNhdXNlIHRoZXJlIGFyZQog
ICAgICAgICBvdGhlciBkaWZmZXJlbmNlcyBpbiB0aGUgaW50ZXJmYWNlIChlLmcuLCBzdWJt
aXR0ZXIKICAgICAgICAgaWRlbnRpZmljYXRpb24gbG9naWMpLiAgSW4gb3RoZXIgd29yZHMs
IG1vcmUga25vYnMgd291bGQgYmUKICAgICAgICAgbmVlZGVkLCB3aGljaCB3b3VsZCBkZWZl
YXQgdGhlIHB1cnBvc2Ugb2YgcmV1c2luZyB0aGUgc2FtZQogICAgICAgICBhY3Rpb24uICBX
aGVuIGltcGxlbWVudGluZyB3ZWIgYW5kIGUtbWFpbCBpbnRlcmZhY2VzLCB0aGUKICAgICAg
ICAgU2VjcmV0YXJpYXQgc2hvdWxkIHN0aWxsIGJlIGFibGUgdG8gcmV1c2UgdGhlIGJhc2Ug
YWN0aW9uIGNvZGUsCiAgICAgICAgIG9mIGNvdXJzZS4KCiAgICAgICogIERlZmluZWQgY29t
cGxpYW5jZS4KCiAgICAgICogIFJlc29sdmVkIFhYWDI6IGluZm9ybSBhbGwgYXV0aG9ycyB0
aGF0IHRoZWlyIGRyYWZ0IHdhcyBwb3N0ZWQuCiAgICAgICAgIERvY3VtZW50ZWQgd2hhdCBp
bmZvcm1hdGlvbiBzaG91bGQgZ28gaW50byB0aGUgcG9zdGluZwogICAgICAgICBub3RpZmlj
YXRpb24gbWVzc2FnZS9wYWdlLgoKICAgICAgKiAgUmVzb2x2ZWQgWFhYMTYgYW5kIFhYWDU3
OiBSMjMgbm93IHNheXMgdGhhdCBhbiBJRVRGIElQUgogICAgICAgICBTdGF0ZW1lbnQgYW5k
IG90aGVyIGJvaWxlcnBsYXRlIHJlcXVpcmVkIGZvciBkcmFmdHMgYWNjb3JkaW5nCiAgICAg
ICAgIHRvIFJGQyAzOTc4IGFuZCAzOTc5IChvciBzdWNjZXNzb3JzKSBtdXN0IGFwcGVhciBp
biB0aGUgZHJhZnQKICAgICAgICAgdGV4dCAoSGVucmlrIExldmtvd2V0eikuCgogICAgICAq
ICBSZXNvbHZlZCBYWFgyMyBhbmQgWFhYNjI6IE1hbnVhbCBDaGVjayBwYWdlIGFuZCBhY3Rp
b25zIHVzZWQgYnkKICAgICAgICAgc2VjcmV0YXJpYXQgZG8gbm90IHZlcmlmeSBzdWJtaXR0
ZXIgYWNjZXNzIHRvIGUtbWFpbC4gIExhc3QKICAgICAgICAgcmVzb3J0IG9wdGlvbiBzaG91
bGQgYmUgYXMgZmxleGlibGUgYW5kIGZvcmdpdmluZyBhcyBwb3NzaWJsZS4KCiAgICAgICog
IFJlc29sdmVkIFhYWDI2OiBpdCBzaG91bGQgYmUgcG9zc2libGUgdG8gcmVzcG9uZCB0byBk
by15b3UtCiAgICAgICAgIGhhdmUtYWNjZXNzLXRvLXlvdXItZW1haWwgbWVzc2FnZSBieSBl
LW1haWwsIGluIGFkZGl0aW9uIHRvCiAgICAgICAgIGN1dC1hbmQtcGFzdGluZyBhIFVSTC4K
CgoKUm91c3Nrb3YgICAgICAgICAgICAgICAgRXhwaXJlcyBPY3RvYmVyIDIxLCAyMDA1ICAg
ICAgICAgICAgICAgW1BhZ2UgMzRdCgwKSW50ZXJuZXQtRHJhZnQgICAgIElEIFN1Ym1pc3Np
b24gVG9vbHNldDogUmVxdWlyZW1lbnRzICAgICAgICBBcHJpbCAyMDA1CgoKICAgICAgKiAg
UmVzb2x2ZWQgWFhYMzAgYW5kIFhYWDMxOiBSOTggbm93IHJlcXVpcmVzIHRoYXQgd2hlbiBz
dWJtaXR0ZXIKICAgICAgICAgaXMgbm90IGFuIGF1dGhvciwgU2VjcmV0YXJpYXQgaGFzIHRv
IGJlIGludm9sdmVkLgoKICAgICAgKiAgUmVzb2x2ZWQgWFhYMzc6IEUtbWFpbCBzdWJtaXNz
aW9ucyBtdXN0IHVzZSBhdHRhY2htZW50cywgZXZlbgogICAgICAgICBpZiB0aGVyZSBpcyBv
bmx5IG9uZSBkcmFmdCBmb3JtYXQuICBUaGlzIG1heSBoZWxwIHRvIGtlZXAgdGhlCiAgICAg
ICAgIFRvb2xzZXQgc2ltcGxlIChubyBzbWFydHMgbmVlZGVkIHRvIGlzb2xhdGUgdHJ1ZSBk
cmFmdCB0ZXh0CiAgICAgICAgIGZyb20gbm90ZXMgaW4gdGhlIGJlZ2lubmluZyBvZiB0aGUg
ZS1tYWlsIGFuZCBzaWduYXR1cmVzKS4KCiAgICAgICogIFJlc29sdmVkIFhYWDM4OiBkbyBu
b3QgcmVxdWlyZSBzcGVjaWFsIFN1YmplY3Q6IGxpbmVzIGZvcgogICAgICAgICBlLW1haWwg
c3VibWlzc2lvbiB0byBrZWVwIHRoZSBUb29sc2V0IHNpbXBsZS4gIFNpbmNlIHdlIHZlcmlm
eQogICAgICAgICBzdWJtaXR0ZXIgYWNjZXNzIHRvIGUtbWFpbCwgbm8gYXV0b21hdGVkIHNw
YW0gaXMgbGlrZWx5IHRvCiAgICAgICAgIHJlc3VsdCBpbiBhIGRyYWZ0IHN1Ym1pc3Npb24u
CgogICAgICAqICBSZXNvbHZlZCBYWFg0MywgWFhYNDQsIGFuZCBYWFg2MDogbWFraW5nIGFu
IGV4aXN0aW5nIGRyYWZ0CiAgICAgICAgIG9ic29sZXRlIGlzIG91dCBvZiB0aGlzIGRvY3Vt
ZW50IHNjb3BlLiAgVGhpcyBjb21wbGV4IGZlYXR1cmUKICAgICAgICAgY2FuIGJlIGRvY3Vt
ZW50ZWQgYW5kIGludGVncmF0ZWQgbGF0ZXIgdG8gc2F0aXNmeSBSMzMuCgogICAgICAqICBS
ZXNvbHZlZCBYWFg0OSBhbmQgWFhYNTI6IHRoZSBmaXJzdCB0d28gaW1wbGVtZW50YXRpb24g
c3RhZ2VzCiAgICAgICAgIHNob3VsZCB0YWtlIDMwIGFuZCA5MCBkYXlzLCBwcm92aWRlZCBh
IHNpbmdsZSBmdWxsLXRpbWUgcGVyc29uCiAgICAgICAgIGVmZm9ydC4KCiAgICAgICogIFJl
c29sdmVkIFhYWDUwOiBzcGVjaWZ5IGFwcHJveGltYXRlIGVmZm9ydCByZXF1aXJlZCB0byBj
b21wbGV0ZQogICAgICAgICB0aGUgZmlyc3QgdHdvIGltcGxlbWVudGF0aW9uIHN0YWdlcy4g
IExldCB0aGUgSUVTRyBhbmQgdGhlCiAgICAgICAgIFNlY3JldGFyaWF0IHVzZSBvdXIgZXN0
aW1hdGVzIHRvIGFncmVlIG9uIGEgc3BlY2lmaWMKICAgICAgICAgaW1wbGVtZW50YXRpb24g
c2NoZWR1bGUvZGVhZGxpbmVzLgoKICAgICAgKiAgUmVzb2x2ZWQgWFhYNTM6IGxhY2sgb2Yg
YXV0aG9yIGUtbWFpbCBjYXVzZXMgYSB3YXJuaW5nLCBub3QKICAgICAgICAgZXJyb3IuICBT
ZWUgUjk1IGZvciByYXRpb25hbGUuCgogICAgICAqICBSZXNvbHZlZCBYWFgxMTogYWRkZWQg
cGFnZSBjb3VudCBhbmQgc2l6ZSBvZiBwcmltYXJ5IGRyYWZ0CiAgICAgICAgIGZvcm1hdCB0
byBtZXRhLWRhdGEgYmVjYXVzZSB0aGlzIGluZm9ybWF0aW9uIGlzIHVzZWZ1bCB0byBzb21l
CiAgICAgICAgIGh1bWFucyBhbmQgdG9vbHMsIGFuZCBiZWNhdXNlIGl0IGlzIHVzdWFsbHkg
bXVjaCBlYXNpZXIgYW5kCiAgICAgICAgIGNoZWFwZXIgdG8gZ2V0IHRoaXMgaW5mb3JtYXRp
b24gaW4gc3RhdGljIGZvcm0gKGUuZy4sIHNvbWUKICAgICAgICAgZHJhZnQgbWV0YS1kYXRh
IFhNTCBmaWxlKSB0aGFuIGNvbXB1dGUgaXQgZHluYW1pY2FsbHkuCgogICAgICAqICBSZXNv
bHZlZCBYWFgxNTogYWx3YXlzIGFsbG93IHBvc3Rpbmcgb2YgYSBuZXcgcmV2aXNpb24gYnV0
IHdhcm4KICAgICAgICAgaWYgbmV3IHJldmlzaW9uIGlzIG5vdCBleHBlY3RlZC4gIE1vdmVk
IHRoZSBjb3JyZXNwb25kaW5nIFIyMQogICAgICAgICBmcm9tIGFic29sdXRlIHRvIGRlc2ly
ZWQgcmVxdWlyZW1lbnRzLgoKICAgICAgKiAgUmVzb2x2ZWQgWFhYMzMgYW5kIFhYWDU5OiBw
cmV2ZW50IERvUyBhdHRhY2tzIChhYnNvbHV0ZQogICAgICAgICByZXF1aXJlbWVudCBSOTcp
IGFuZCB3YXJuIGFib3V0IHRvby1jbG9zZSBzdWJtaXNzaW9ucyAoZGVzaXJlZAogICAgICAg
ICBmZWF0dXJlIFI5NikuCgogICAgICAqICBEZWZpbmVkIGRyYWZ0IHZlcnNpb24sIGZvcm1h
dCBhbmQgcHJpbWFyeSBmb3JtYXQgdGVybXMuCgoKCgoKCgpSb3Vzc2tvdiAgICAgICAgICAg
ICAgICBFeHBpcmVzIE9jdG9iZXIgMjEsIDIwMDUgICAgICAgICAgICAgICBbUGFnZSAzNV0K
DApJbnRlcm5ldC1EcmFmdCAgICAgSUQgU3VibWlzc2lvbiBUb29sc2V0OiBSZXF1aXJlbWVu
dHMgICAgICAgIEFwcmlsIDIwMDUKCgogICAyMDA0LzEwLzA1CgogICAgICAqICBSZXNvbHZl
ZCBYWFg5OiBUaGUgVG9vbHNldCBzaG91bGQgZXZlbnR1YWxseSBvZmZlciBhCiAgICAgICAg
IFZhbGlkYXRpb24tb25seSBwYWdlLgoKICAgICAgKiAgUmVzb2x2ZWQgWFhYMTk6IFRoZSBU
b29sc2V0IHNob3VsZCBldmVudHVhbGx5IHByb3ZpZGUgdGhlCiAgICAgICAgIHN1Ym1pdHRl
ciB3aXRoIGEgd2F5IHRvIHByZXZpZXcgdGhlIGVudGlyZSBkcmFmdCwgd2l0aCBhbGwKICAg
ICAgICAgZm9ybWF0cy4KCiAgICAgICogIFJlc29sdmVkIFhYWDQwLCBYWFg0MSwgYW5kIFhY
WDU2OiBmaXJzdCB1c2UgZHJhZnQgbmFtZSB0bwogICAgICAgICBleHRyYWN0IFdHIGZsYWcg
YW5kIFdHIG5hbWUgYW5kIGhvcGUgZm9yIGFuIElFVEYgcG9saWN5IGNoYW5nZS4KICAgICAg
ICAgSWYgSUVURiBwb2xpY3kgb24gbmFtaW5nIGRyYWZ0cyBkb2VzIG5vdCBjaGFuZ2Ugc29v
biwgYWRkIGNvZGUKICAgICAgICAgdG8gcXVlcnkgc29tZSBkYXRhYmFzZXMgdG8gbWFwIGlu
ZGl2aWR1YWwtbG9va2luZyBkcmFmdHMgdG8gV0cKICAgICAgICAgbmFtZXMuCgogICAgICAq
ICBSZXNvbHZlZCBYWFg0NiBhbmQgWFhYNDc6IHN0b3JlIGFuZCBtYWtlIHB1YmxpYyBib3Ro
IG9yaWdpbmFsCiAgICAgICAgIGFuZCBwcmVwcm9jZXNzZWQgWE1MIHNvdXJjZXMuICBNb3N0
IHRvb2xzIGFyZSBsaWtlbHkgdG8gdXNlCiAgICAgICAgIHByZXByb2Nlc3NlZCBYTUwgZm9y
bWF0LiAgSHVtYW5zIGFuZCBzb21lIGRpZmYgdG9vbHMgbWF5IHByZWZlcgogICAgICAgICB0
aGUgb3JpZ2luYWwuCgogICAyMDA0LzA5LzMwCgogICAgICAqICBBZGRlZCByZXF1aXJlbWVu
dHMgUjcyIGFuZCBSNzMgdG8gaGFuZGxlIG11bHRpcGxlIHN1Ym1pdHRlcnMKICAgICAgICAg
c3VibWl0dGluZyB0aGUgc2FtZSBkcmFmdCBhbmQgYSBzaW5nbGUgc3VibWl0dGVyIHN1Ym1p
dHRpbmcgdHdvCiAgICAgICAgIGRyYWZ0cyBhdCB0aGUgc2FtZSB0aW1lLCBhZGRyZXNzaW5n
IFhYWDI3LgoKICAgICAgKiAgUmVzb2x2ZWQgWFhYNzogVGhlcmUgc2VlbXMgdG8gYmUgbm8g
Z29vZCByZWFzb24gdG8gc3VwcG9ydCBjdXQtCiAgICAgICAgIGFuZC1wYXN0ZSBtb2RlLiAg
U3VibWlzc2lvbiB2aWEgZmlsZSB1cGxvYWQgaW50ZXJmYWNlIHNob3VsZAogICAgICAgICBz
dWZmaWNlLgoKICAgICAgKiAgU2VtaS1yZXNvbHZlZCBYWFg1MzogVG9vbHNldCBzaG91bGQg
YWNjZXB0IFBERnMgYmVjYXVzZSBSRkMKICAgICAgICAgRWRpdG9yIGRvZXMuICBTdGlsbCBu
ZWVkIHRvIGNoZWNrIHdoZXRoZXIgdGhlIFNlY3JldGFyaWF0CiAgICAgICAgIGFjY2VwdHMg
UERGcyBsZWdhbGx5IHRvZGF5IChYWFg2NCkuCgogICAyMDA0LzA5LzI5CgogICAgICAqICBD
bGFyaWZpZWQgYW5kIHBvbGlzaGVkIHRoZSAiU2NvcGUiIHNlY3Rpb24uCgogICAgICAqICBV
cGRhdGVkICJTdGF0ZSBvZiB0aGlzIGRyYWZ0IiB0byBkb2N1bWVudCBhcHByb2FjaGluZy1s
YXN0LWNhbGwKICAgICAgICAgc3RhdGUgb2YgdGhlIGRyYWZ0IGFuZCB0byBzb2xpY2l0IGVk
aXRvcmlhbC1sZXZlbCBmZWVkYmFjay4KCiAgIDIwMDQvMDkvMjcKCiAgICAgICogIE1hcmtl
ZCBmb3JtYWwgdG9vbHNldCByZXF1aXJlbWVudHMgdXNpbmcgYSBSbm5uIG5vdGF0aW9uIHRv
IChhKQogICAgICAgICBkb2N1bWVudCBpbXBsZW1lbnRhdGlvbiBzY2hlZHVsZSwgYW5kIChi
KSBtYWtlIGNvbXBsaWFudAogICAgICAgICBpbXBsZW1lbnRhdGlvbiBhbmQgY29tcGxpYW5j
ZSBldmFsdWF0aW9uIGVhc2llci4KCgoKCgpSb3Vzc2tvdiAgICAgICAgICAgICAgICBFeHBp
cmVzIE9jdG9iZXIgMjEsIDIwMDUgICAgICAgICAgICAgICBbUGFnZSAzNl0KDApJbnRlcm5l
dC1EcmFmdCAgICAgSUQgU3VibWlzc2lvbiBUb29sc2V0OiBSZXF1aXJlbWVudHMgICAgICAg
IEFwcmlsIDIwMDUKCgogICAgICAqICBNYXJrZWQgaW5mb3JtYWwgaW1wbGVtZW50YXRpb24g
aGludHMgd2l0aCBhICJIaW50OiIgdGFnLCB0bwogICAgICAgICBhdm9pZCBwb3NzaWJsZSBj
b25mdXNpb24gd2l0aCBmb3JtYWwgcmVxdWlyZW1lbnRzLgoKICAgICAgKiAgU3RhcnRlZCBk
b2N1bWVudGluZyBpbXBsZW1lbnRhdGlvbiBzY2hlZHVsZS4gIEZvciBleGFtcGxlLCBvbmx5
CiAgICAgICAgIHBsYWluIHRleHQgZm9ybWF0cyBhcmUgaW50ZXJwcmV0ZWQgZHVyaW5nIHRo
ZSBmaXJzdCBzdGFnZSwgdGhlbgogICAgICAgICBYTUwgc3VwcG9ydCBpcyBhZGRlZCwgdGhl
biBvdGhlciBmb3JtYXRzLiAgTWVhbndoaWxlLCB1bi0KICAgICAgICAgaW50ZXJwcmV0ZWQg
Zm9ybWF0cyBhcmUgYWNjZXB0ZWQgYW5kIHBvc3RlZCBhcyBpcyBhcyBsb25nIGFzCiAgICAg
ICAgIHBsYWluIHRleHQgdmVyc2lvbiB2YWxpZGF0ZXMuCgogICAgICAqICBBZGRlZCBleHBs
aWNpdCByZXF1aXJlbWVudHMgZm9yIG1hbmFnaW5nIGFiYW5kb25lZCBzdWJtaXNzaW9ucwog
ICAgICAgICAoQnJpYW4gRS4gQ2FycGVudGVyKQoKICAgICAgKiAgUGxhaW4gdGV4dCBvciBY
TUwgZm9ybWF0cyBhcmUgYWx3YXlzIHJlcXVpcmVkIChCcmlhbiBFLgogICAgICAgICBDYXJw
ZW50ZXIpCgogICAgICAqICBBZGRlZCBYWFg1NTogQWNjZXB0aW5nIFBERnMgaXMgYSBjaGFu
Z2Ugb2YgY3VycmVudCBkb2N1bWVudGVkCiAgICAgICAgIHByb2NlZHVyZXM/ICAoQnJpYW4g
RS4gQ2FycGVudGVyKQoKICAgICAgKiAgQWRkZWQgYW4gb3B0aW9uYWwgImRpc2N1c3Npb24g
YWRkcmVzcyIgdG8gdGhlIGV4dGVybmFsIG1ldGEtCiAgICAgICAgIGRhdGEgdG8gaGVscCBy
ZXZpZXdlcnMga25vdyB3aGVyZSB0byBzZW5kIGNvbW1lbnRzIChpbnNwaXJlZCBieQogICAg
ICAgICBCcmlhbiBFLiBDYXJwZW50ZXIgc3VnZ2VzdGlvbjsgQnJpYW4gd2FudGVkIHRoaXMg
dG8gYmUgYQogICAgICAgICByZXF1aXJlZCBleHRyYWN0YWJsZSBtZXRhLWRhdGEpCgogICAg
ICAqICBSZXNvbHZlZCBYWFgxNywgWFhYMjgsIGFuZCBYWFgyOTogVG9kYXksIC0wMCBXRyBk
cmFmdHMgYXJlCiAgICAgICAgIGFwcHJvdmVkIGJ5IHRoZSBDaGFpciBlaXRoZXIgYmVmb3Jl
IGFuZCBhZnRlciBzdWJtaXNzaW9uLAogICAgICAgICBkZXBlbmRpbmcgb24gc2V2ZXJhbCBm
YWN0b3JzLiAgQmFzZWQgb24gV0cgY2hhaXJzIGZlZWRiYWNrIHdlCiAgICAgICAgIHN0aWxs
IG5lZWQgdG8gc3VwcG9ydCBib3RoIG1vZGVzLiAgVGh1cywgdGhlcmUgaXMgbm8gcG9saWN5
CiAgICAgICAgIGNoYW5nZSB0byB0YWxrIGFib3V0IChhbmQgbW9yZSB3b3JrIGZvciB0aGUg
dG9vbCBpbXBsZW1lbnRvcnMKICAgICAgICAgdG8gc3VwcG9ydCBib3RoIG1vZGVzKS4gIFN0
aWxsIG5lZWQgdG8gYWRkIHNwZWNpZmljIHRvb2xzZXQKICAgICAgICAgcmVxdWlyZW1lbnRz
IGluIGNhc2UgdGhlcmUgaXMgbm8gYXBwcm92YWwgcmVjb3JkZWQuCgogICAgICAqICBSZXNv
bHZlZCBYWFgxOCwgWFhYMzIsIGFuZCBYWFg0NTogV2UgYXJlIGdvaW5nIHRvIG1vdmUgInJl
cXVlc3QKICAgICAgICAgZm9yIHB1YmxpY2F0aW9uIiBmdW5jdGlvbmFsaXR5IHRvIGEgc2Vw
YXJhdGUgW3NpbXBsZV0gdG9vbCB0aGF0CiAgICAgICAgIHdvcmtzIHdpdGggYW4gZXhpc3Rp
bmcvcG9zdGVkIGRyYWZ0LgoKICAgICAgKiAgUmVzb2x2ZWQgWFhYNjogV2UgYXJlIGdvaW5n
IHRvIG1vdmUgdGhlICJ3aXRoZHJhdyB0aGlzIElEIgogICAgICAgICBmdW5jdGlvbmFsaXR5
IGRlc2lyZWQgYnkgU2VjcmV0YXJpYXQgdG8gYSBzZXBhcmF0ZSBbc2ltcGxlXQogICAgICAg
ICB0b29sIHRoYXQgd29ya3Mgd2l0aCBhbiBleGlzdGluZy9wb3N0ZWQgZHJhZnQuCgogICAg
ICAqICBBZGRlZCBhICJjb21tZW50IiBmaWVsZCB0byB0aGUgQWRqdXN0IHBhZ2Ugc28gdGhh
dCB0aGUKICAgICAgICAgc3VibWl0dGVyIGNhbiB0ZWxsIFNlY3JldGFyaWF0IHdoeSBtYW51
YWwgYWN0aW9uIGlzIG5lY2Vzc2FyeS4KICAgICAgICAgVGhpcyBtYXkgYm90aCBzYXZlIHRp
bWUgU2VjcmV0YXJpYXQgYW5kIGxldCB0aGVtIGltcHJvdmUgdGhlCiAgICAgICAgIHRvb2xz
ZXQgdG8gbWluaW1pemUgbWFudWFsIHN1Ym1pc3Npb25zIChpbmNsdWRpbmcgZml4aW5nCiAg
ICAgICAgIHZhbGlkYXRpb24vZXh0cmFjdGlvbiBidWdzKS4KCiAgICAgICogIEFkZGVkIHRo
ZSBSZWNlaXB0IHBhZ2UgdG8gdGhlIGxpc3Qgb2YgZG9jdW1lbnRlZCBwYWdlcywgZm9yCiAg
ICAgICAgIGNvbXBsZXRlbmVzcy4KCgoKClJvdXNza292ICAgICAgICAgICAgICAgIEV4cGly
ZXMgT2N0b2JlciAyMSwgMjAwNSAgICAgICAgICAgICAgIFtQYWdlIDM3XQoMCkludGVybmV0
LURyYWZ0ICAgICBJRCBTdWJtaXNzaW9uIFRvb2xzZXQ6IFJlcXVpcmVtZW50cyAgICAgICAg
QXByaWwgMjAwNQoKCiAgICAgICogIEVtcGhhc2l6ZWQgdGhhdCBjb21tb24gc2VxdWVuY2Ug
b2YgcGFnZXMgdG8gZ28gdGhyb3VnaCBpcyBhcwogICAgICAgICBzaG9ydCBhcyBwb3NzaWJs
ZSBmb3IgYSBnaXZlbiBzZXQgb2YgZmVhdHVyZXMsIGFuZCB0aGF0ICJwYWdlIgogICAgICAg
ICBtZWFucyAiZGlzdGluY3QgZGlhbG9nIiwgbm90IG5lY2Vzc2FyaWx5IGEgImRpc3RpbmN0
IFVSTCIuCiAgICAgICAgIFNvbWUgcmV2aWV3ZXJzIHRob3VnaHQgInRoZXJlIGFyZSB0b28g
bWFueSBwYWdlcyIuCgogICAyMDA0LzA5LzIwCgogICAgICAqICBBZGRlZCAiRS1tYWlsIElu
dGVyZmFjZSIgc2VjdGlvbiB0byBkb2N1bWVudCBob3cga2V5IHRvb2xzZXQKICAgICAgICAg
ZnVuY3Rpb25hbGl0eSBjYW4gYmUgYWNjZXNzZWQgdmlhIGUtbWFpbC4gIENvbXBhcmVkIGUt
bWFpbCBhbmQKICAgICAgICAgd2ViIGludGVyZmFjZXMuICAoU3VnZ2VzdGVkIGJ5IFBla2th
IFNhdm9sYSkKCiAgICAgICogIFNwbGl0ICJXRyBJRCIgbWV0YS1kYXRhIGludG8gIldHIElE
IiBhbmQgIldHIEZsYWciLiAgVGhlIGZvcm1lcgogICAgICAgICBzZWVtcyB0byBiZSBlYXN5
IHRvIGV4dHJhY3QgZnJvbSB0aGUgZHJhZnQgbmFtZS4gIE5vdGVkIHRoYXQKICAgICAgICAg
dGhlIGxhdHRlciAoaS5lLiwgInRoaXMgaXMgYSB3b3JraW5nIGdyb3VwIGRyYWZ0IiBzdGF0
dXMpCiAgICAgICAgIGNhbm5vdCBiZSBpbmZlcnJlZCBmcm9tIHNvbWUgV0cgZHJhZnRzIChQ
ZWtrYSBTYXZvbGEpLgoKICAgICAgKiAgQWRkZWQgIkxpc3Qgb2YgZHJhZnRzIG9ic29sZXRl
ZCBieSB0aGlzIGRyYWZ0IiBleHRlcm5hbCBtZXRhLQogICAgICAgICBkYXRhIGl0ZW0gKFBl
a2thIFNhdm9sYSksIGJ1dCBxdWVzdGlvbmVkIHdoZXRoZXIgd2UgYXJlIHJlYWR5CiAgICAg
ICAgIHRvIGF1dG9tYXRlIHRoYXQuCgogICAgICAqICBBZGRlZCBtb3JlIGNvbmZsaWN0aW5n
IG9waW5pb25zIHRvIFhYWDE1IGFuZCBwcm9wb3NlZCBhCiAgICAgICAgIHNvbHV0aW9uLgoK
ICAgICAgKiAgQWRkZWQgIlByZXByb2Nlc3NpbmciIHN1YnNlY3Rpb24gdG8gcmVmbGVjdCB0
aGUgZGlzY3Vzc2lvbiBvbgogICAgICAgICBob3cvd2hldGhlciBoYW5kbGUgaW5jbHVkZSBQ
SXMgaW4gWE1MIGRyYWZ0IHNvdXJjZXMuICBOZWVkcwogICAgICAgICBtb3JlIGRpc2N1c3Np
b24vd29yay4KCiAgICAgICogIEZ1cnRoZXIgY2xhcmlmaWVkIGhvdyBhbiBhdXRob3IgY2Fu
IHJlcXVlc3QgdGhlIGRyYWZ0IHJldmlzaW9uCiAgICAgICAgIHRvIGJlIHB1Ymxpc2hlZCAo
aS5lLiwgZm9yd2FyZGVkIHRvIHRoZSBJRVNHIG9yIFJGQyBFZGl0b3IgZm9yCiAgICAgICAg
IHJldmlldyBhbmQgcHVibGljYXRpb24gYXMgYW4gUkZDIG9yIEJDUCkuICBJdCdzIGp1c3Qg
YSBjaGVja2JveAogICAgICAgICBvbiB0aGUgd2ViIGludGVyZmFjZS4gIFJhaXNlZCBkb3Vi
dHMgd2UgY2FuIHB1bGwgdGhpcyBvZmYgKHNlZQogICAgICAgICBYWFg0NSkuCgogICAgICAq
ICBTdWdnZXN0ZWQgaW4gWFhYMiB0aGF0IHdlIHdvdWxkIGluZm9ybSBhbGwgYXV0aG9ycyBi
dXQgbm90IHNlZWsKICAgICAgICAgdGhlaXIgY29uc2VudCAoZXhjZXB0IGZvciB0aGUgc3Vi
bWl0dGVyKSB3aGVuIHBvc3RpbmcgdGhlaXIKICAgICAgICAgZHJhZnQuCgogICAyMDA0LzA5
LzA5CgogICAgICAqICBQb2xpc2hlZCBoaWdoLWxldmVsIHBhZ2UvYWN0aW9uIHN1bW1hcnkg
YW5kIHJlcGxhY2VkIHRleHQtYmFzZWQKICAgICAgICAgc3RlcHMgZGlhZ3JhbSB3aXRoIHNv
bWV0aGluZyB0aGF0IGxvb2tzIG1vcmUgbGlrZSBhIGRpYWdyYW0uCgogICAgICAqICBBZGRl
ZCAiQ29tcGFyaXNvbiB3aXRoIGN1cnJlbnQgcHJvY2VkdXJlcyIgc2VjdGlvbiBwbGFjZWhv
bGRlcgogICAgICAgICBmb3Igc3VtbWFyaXppbmcgd2hhdCB0aGlzIGRyYWZ0IGltcHJvdmVz
L2NoYW5nZXMvdmlvbGF0ZXMuCgogICAgICAqICBGcmVxdWVudCBkcmFmdCB1cGRhdGVzIGlz
IG5vdCBhbHdheXMgYSBnb29kIHRoaW5nIChIZW5yaWsKICAgICAgICAgTGV2a293ZXR6KQoK
CgoKUm91c3Nrb3YgICAgICAgICAgICAgICAgRXhwaXJlcyBPY3RvYmVyIDIxLCAyMDA1ICAg
ICAgICAgICAgICAgW1BhZ2UgMzhdCgwKSW50ZXJuZXQtRHJhZnQgICAgIElEIFN1Ym1pc3Np
b24gVG9vbHNldDogUmVxdWlyZW1lbnRzICAgICAgICBBcHJpbCAyMDA1CgoKICAgICAgKiAg
QWRkZWQgaWRlYXMgcmVnYXJkaW5nIGZyZXF1ZW50IGRyYWZ0IHVwZGF0ZXMgd2FybmluZ3MK
ICAgICAgICAgKFN0YW5pc2xhdiBTaGFsdW5vdikKCiAgICAgICogIEFkZGVkICJTdGF0ZSBv
ZiB0aGlzIGRyYWZ0IiBzZWN0aW9uIHRvIGVuY291cmFnZSByZXZpZXcuCgogICAyMDA0LzA5
LzAyCgogICAgICAqICBEb2N1bWVudGVkIGFsbCBtYWpvciB0b29sc2V0IHBhZ2VzIGFuZCBj
b3JyZXNwb25kaW5nIGFjdGlvbnMuCgogICAyMDA0LzA5LzAxCgogICAgICAqICBEZWxldGVk
IGFsbCBwcmltYXJ5IG1vZGVzIGV4Y2VwdCBmb3Igd2hhdCB1c2VkIHRvIGJlIGNhbGxlZAog
ICAgICAgICAiUG9zdGluZyBBdXRvbWF0aW9uIi4gIEZvY3VzIG9uIHRoZSBsYXR0ZXIgYW5k
IG1lbnRpb24gb3RoZXIKICAgICAgICAgbW9kZXMgYXMgZXhjZXB0aW9ucyBvciBzaWRlLWVm
ZmVjdHMuCgogICAgICAqICBDaGFuZ2VkIGRyYWZ0IG91dGxpbmUgYW5kIGRlcHRoIHRvIGRl
c2NyaWJlIHNwZWNpZmljIHN1Ym1pc3Npb24KICAgICAgICAgc3RlcHMgYW5kIGNvcnJlc3Bv
bmRpbmcgd2ViIHBhZ2VzIHJhdGhlciB0aGFuIG1vcmUgZ2VuZXJhbAogICAgICAgICBpZGVh
cy9yZXF1aXJlbWVudHMuCgogICAgICAqICBBc3N1bWUsIGZvciBub3csIHRoYXQgQ2hhaXIg
YXV0aG9yaXphdGlvbiBvZiBXRyBkcmFmdCB3b3JrIG11c3QKICAgICAgICAgZXhpc3QgZm9y
IFdHIGRyYWZ0IHRvIGJlIHB1Ymxpc2hlZC4gIFRoaXMgbmVlZHMgdG8gYmUKICAgICAgICAg
ZG9jdW1lbnRlZCBhbmQgcGVyaGFwcyByZWxheGVkIHRvIGFsbG93IHBvc3Qtc3VibWlzc2lv
bgogICAgICAgICBhcHByb3ZhbHMuCgogICAyMDA0LzA4LzMwCgogICAgICAqICBVc2UgInRv
b2xzZXQiIGluc3RlYWQgb2YgYSBsZXNzIGFjY3VyYXRlICJpbnRlcmZhY2VzIiBpbiB0aGUK
ICAgICAgICAgZHJhZnQgdGl0bGUgYW5kIHRocm91Z2hvdXQgdGhlIHRleHQgKEhlbnJpayBM
ZXZrb3dldHopCgogICAgICAqICBVc2UgInBvc3QiIGluc3RlYWQgb2YgInB1Ymxpc2giIiBp
biB0aGUgZHJhZnQgdGl0bGUgYW5kCiAgICAgICAgIHRocm91Z2hvdXQgdGhlIHRleHQgKEJh
cmJhcmEgQi4gRnVsbGVyIGFuZCBMYXJyeSBNYXNpbnRlcikKCiAgICAgICogIE5pdHMsIGNs
YXJpZmljYXRpb25zLCBkYXRhLXBvaW50cyAoSGFyYWxkIFR2ZWl0IEFsdmVzdHJhbmQsCiAg
ICAgICAgIEhlbnJpayBMZXZrb3dldHosIExhcnJ5IE1hc2ludGVyLCBhbmQgQmFyYmFyYSBC
LiBGdWxsZXIgZm9yIHRoZQogICAgICAgICBTZWNyZXRhcmlhdCkKCiAgIDIwMDQvMDgvMjUK
CiAgICAgICogIEluaXRpYWwgcmV2aXNpb24uCgoKMjIuICBSZWZlcmVuY2VzCgoyMi4xICBO
b3JtYXRpdmUgUmVmZXJlbmNlcwoKICAgW1JGQzI2MjldICBSb3NlLCBNLiwgIldyaXRpbmcg
SS1EcyBhbmQgUkZDcyB1c2luZyBYTUwiLCBSRkMgMjYyOSwKICAgICAgICAgICAgICBKdW5l
IDE5OTkuCgoKCgpSb3Vzc2tvdiAgICAgICAgICAgICAgICBFeHBpcmVzIE9jdG9iZXIgMjEs
IDIwMDUgICAgICAgICAgICAgICBbUGFnZSAzOV0KDApJbnRlcm5ldC1EcmFmdCAgICAgSUQg
U3VibWlzc2lvbiBUb29sc2V0OiBSZXF1aXJlbWVudHMgICAgICAgIEFwcmlsIDIwMDUKCgog
ICBbUkZDMzk3OF0gIEJyYWRuZXIsIFMuLCAiSUVURiBSaWdodHMgaW4gQ29udHJpYnV0aW9u
cyIsIEJDUCA3OCwKICAgICAgICAgICAgICBSRkMgMzk3OCwgTWFyY2ggMjAwNS4KCiAgIFtS
RkMzOTc5XSAgQnJhZG5lciwgUy4sICJJbnRlbGxlY3R1YWwgUHJvcGVydHkgUmlnaHRzIGlu
IElFVEYKICAgICAgICAgICAgICBUZWNobm9sb2d5IiwgQkNQIDc5LCBSRkMgMzk3OSwgTWFy
Y2ggMjAwNS4KCiAgIFtYTUxdICAgICAgV29ybGQgV2lkZSBXZWIgQ29uc29ydGl1bSwgIkV4
dGVuc2libGUgTWFya3VwIExhbmd1YWdlCiAgICAgICAgICAgICAgKFhNTCkgMS4wIiwgVzND
IFhNTCwgRmVicnVhcnkgMTk5OCwKICAgICAgICAgICAgICA8aHR0cDovL3d3dy53My5vcmcv
VFIvMTk5OC9SRUMteG1sLTE5OTgwMjEwPi4KCjIyLjIgIEluZm9ybWF0aXZlIFJlZmVyZW5j
ZXMKCiAgIFtJLUQubXJvc2Utd3JpdGluZy1yZmNzXQogICAgICAgICAgICAgIFJvc2UsIE0u
LCAiV3JpdGluZyBJLURzIGFuZCBSRkNzIHVzaW5nIFhNTCAocmV2aXNlZCkiLAogICAgICAg
ICAgICAgIGRyYWZ0LW1yb3NlLXdyaXRpbmctcmZjcyAod29yayBpbiBwcm9ncmVzcyksIEFw
cmlsIDIwMDQuCgogICBbc2VjcmV0YXJpYXRdCiAgICAgICAgICAgICAgIlByaXZhdGUgY29t
bXVuaWNhdGlvbiB3aXRoIHRoZSBJRVRGIFNlY3JldGFyaWF0IiwgMjAwNC4KCiAgIFtPU0ld
ICAgICAgIk9wZW4gU291cmNlIExpY2Vuc2VzIEFwcHJvdmVkIGJ5IHRoZSBPcGVuIFNvdXJj
ZQogICAgICAgICAgICAgIEluaXRpYXRpdmUiLCAyMDA0LgoKCkF1dGhvcidzIEFkZHJlc3MK
CiAgIEFsZXggUm91c3Nrb3YKICAgVGhlIE1lYXN1cmVtZW50IEZhY3RvcnkKCiAgIEVtYWls
OiByb3Vzc2tvdkBtZWFzdXJlbWVudC1mYWN0b3J5LmNvbQogICBVUkk6ICAgaHR0cDovL3d3
dy5tZWFzdXJlbWVudC1mYWN0b3J5LmNvbS8KCgoKCgoKCgoKCgoKCgoKCgoKCgoKUm91c3Nr
b3YgICAgICAgICAgICAgICAgRXhwaXJlcyBPY3RvYmVyIDIxLCAyMDA1ICAgICAgICAgICAg
ICAgW1BhZ2UgNDBdCgwKSW50ZXJuZXQtRHJhZnQgICAgIElEIFN1Ym1pc3Npb24gVG9vbHNl
dDogUmVxdWlyZW1lbnRzICAgICAgICBBcHJpbCAyMDA1CgoKSW50ZWxsZWN0dWFsIFByb3Bl
cnR5IFN0YXRlbWVudAoKICAgVGhlIElFVEYgdGFrZXMgbm8gcG9zaXRpb24gcmVnYXJkaW5n
IHRoZSB2YWxpZGl0eSBvciBzY29wZSBvZiBhbnkKICAgSW50ZWxsZWN0dWFsIFByb3BlcnR5
IFJpZ2h0cyBvciBvdGhlciByaWdodHMgdGhhdCBtaWdodCBiZSBjbGFpbWVkIHRvCiAgIHBl
cnRhaW4gdG8gdGhlIGltcGxlbWVudGF0aW9uIG9yIHVzZSBvZiB0aGUgdGVjaG5vbG9neSBk
ZXNjcmliZWQgaW4KICAgdGhpcyBkb2N1bWVudCBvciB0aGUgZXh0ZW50IHRvIHdoaWNoIGFu
eSBsaWNlbnNlIHVuZGVyIHN1Y2ggcmlnaHRzCiAgIG1pZ2h0IG9yIG1pZ2h0IG5vdCBiZSBh
dmFpbGFibGU7IG5vciBkb2VzIGl0IHJlcHJlc2VudCB0aGF0IGl0IGhhcwogICBtYWRlIGFu
eSBpbmRlcGVuZGVudCBlZmZvcnQgdG8gaWRlbnRpZnkgYW55IHN1Y2ggcmlnaHRzLiAgSW5m
b3JtYXRpb24KICAgb24gdGhlIHByb2NlZHVyZXMgd2l0aCByZXNwZWN0IHRvIHJpZ2h0cyBp
biBSRkMgZG9jdW1lbnRzIGNhbiBiZQogICBmb3VuZCBpbiBCQ1AgNzggYW5kIEJDUCA3OS4K
CiAgIENvcGllcyBvZiBJUFIgZGlzY2xvc3VyZXMgbWFkZSB0byB0aGUgSUVURiBTZWNyZXRh
cmlhdCBhbmQgYW55CiAgIGFzc3VyYW5jZXMgb2YgbGljZW5zZXMgdG8gYmUgbWFkZSBhdmFp
bGFibGUsIG9yIHRoZSByZXN1bHQgb2YgYW4KICAgYXR0ZW1wdCBtYWRlIHRvIG9idGFpbiBh
IGdlbmVyYWwgbGljZW5zZSBvciBwZXJtaXNzaW9uIGZvciB0aGUgdXNlIG9mCiAgIHN1Y2gg
cHJvcHJpZXRhcnkgcmlnaHRzIGJ5IGltcGxlbWVudGVycyBvciB1c2VycyBvZiB0aGlzCiAg
IHNwZWNpZmljYXRpb24gY2FuIGJlIG9idGFpbmVkIGZyb20gdGhlIElFVEYgb24tbGluZSBJ
UFIgcmVwb3NpdG9yeSBhdAogICBodHRwOi8vd3d3LmlldGYub3JnL2lwci4KCiAgIFRoZSBJ
RVRGIGludml0ZXMgYW55IGludGVyZXN0ZWQgcGFydHkgdG8gYnJpbmcgdG8gaXRzIGF0dGVu
dGlvbiBhbnkKICAgY29weXJpZ2h0cywgcGF0ZW50cyBvciBwYXRlbnQgYXBwbGljYXRpb25z
LCBvciBvdGhlciBwcm9wcmlldGFyeQogICByaWdodHMgdGhhdCBtYXkgY292ZXIgdGVjaG5v
bG9neSB0aGF0IG1heSBiZSByZXF1aXJlZCB0byBpbXBsZW1lbnQKICAgdGhpcyBzdGFuZGFy
ZC4gIFBsZWFzZSBhZGRyZXNzIHRoZSBpbmZvcm1hdGlvbiB0byB0aGUgSUVURiBhdAogICBp
ZXRmLWlwckBpZXRmLm9yZy4KCgpEaXNjbGFpbWVyIG9mIFZhbGlkaXR5CgogICBUaGlzIGRv
Y3VtZW50IGFuZCB0aGUgaW5mb3JtYXRpb24gY29udGFpbmVkIGhlcmVpbiBhcmUgcHJvdmlk
ZWQgb24gYW4KICAgIkFTIElTIiBiYXNpcyBhbmQgVEhFIENPTlRSSUJVVE9SLCBUSEUgT1JH
QU5JWkFUSU9OIEhFL1NIRSBSRVBSRVNFTlRTCiAgIE9SIElTIFNQT05TT1JFRCBCWSAoSUYg
QU5ZKSwgVEhFIElOVEVSTkVUIFNPQ0lFVFkgQU5EIFRIRSBJTlRFUk5FVAogICBFTkdJTkVF
UklORyBUQVNLIEZPUkNFIERJU0NMQUlNIEFMTCBXQVJSQU5USUVTLCBFWFBSRVNTIE9SIElN
UExJRUQsCiAgIElOQ0xVRElORyBCVVQgTk9UIExJTUlURUQgVE8gQU5ZIFdBUlJBTlRZIFRI
QVQgVEhFIFVTRSBPRiBUSEUKICAgSU5GT1JNQVRJT04gSEVSRUlOIFdJTEwgTk9UIElORlJJ
TkdFIEFOWSBSSUdIVFMgT1IgQU5ZIElNUExJRUQKICAgV0FSUkFOVElFUyBPRiBNRVJDSEFO
VEFCSUxJVFkgT1IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuCgoKQ29weXJp
Z2h0IFN0YXRlbWVudAoKICAgQ29weXJpZ2h0IChDKSBUaGUgSW50ZXJuZXQgU29jaWV0eSAo
MjAwNSkuICBUaGlzIGRvY3VtZW50IGlzIHN1YmplY3QKICAgdG8gdGhlIHJpZ2h0cywgbGlj
ZW5zZXMgYW5kIHJlc3RyaWN0aW9ucyBjb250YWluZWQgaW4gQkNQIDc4LCBhbmQKICAgZXhj
ZXB0IGFzIHNldCBmb3J0aCB0aGVyZWluLCB0aGUgYXV0aG9ycyByZXRhaW4gYWxsIHRoZWly
IHJpZ2h0cy4KCgpBY2tub3dsZWRnbWVudAoKICAgRnVuZGluZyBmb3IgdGhlIFJGQyBFZGl0
b3IgZnVuY3Rpb24gaXMgY3VycmVudGx5IHByb3ZpZGVkIGJ5IHRoZQogICBJbnRlcm5ldCBT
b2NpZXR5LgoKCgoKUm91c3Nrb3YgICAgICAgICAgICAgICAgRXhwaXJlcyBPY3RvYmVyIDIx
LCAyMDA1ICAgICAgICAgICAgICAgW1BhZ2UgNDFdCgwK
--------------000600090402000505080603
Content-Type: text/xml;
	name="ietf.levkowetz.com/drafts/tools/draft-submission/draft-ietf-tools-draft-submission-08.c.xml"
Content-Disposition: attachment;
	filename="ietf.levkowetz.com/drafts/tools/draft-submission/draft-ietf-tools-draft-submission-08.c.xml"
Content-Transfer-Encoding: 7bit

<?xml version="1.0" ?>
<?xml-stylesheet type='text/xsl'
	href='http://xml.resource.org/authoring/rfc2629.xslt' ?>

<?rfc strict='yes' ?>
<?rfc toc='yes' ?>
<?rfc symrefs='yes' ?>
<?rfc editing='no' ?>
<?rfc compact='yes' ?>
<?rfc subcompact='no' ?>
<?rfc comments='yes' ?>
<?rfc inline='yes' ?>

<!DOCTYPE rfc SYSTEM "rfc2629.dtd">

<rfc ipr="full3978" docName="draft-ietf-tools-draft-submission-8b">

<!-- Revision: 08.c -->

<front> 

	<title abbrev="ID Submission Toolset: Requirements">Requirements for an
	IETF Draft Submission Toolset</title>

	<?rfc include='author.rousskov.xml' ?>

	<date month="April" year="2005" />

	<area>General</area>
	<workgroup>Tools team</workgroup>

	<keyword>tool</keyword>
	<keyword>automation</keyword>
	<keyword>submission</keyword>
	<keyword>Internet-Draft</keyword>

	<abstract>

		<t>This document specifies requirements for an IETF toolset to
		facilitate Internet-Draft submission, validation, and posting.</t>

	</abstract>

</front>

<middle>

<section anchor="intro" title="Introduction">

	<t>Public Internet-Drafts are the primary means of structured communication
	within the IETF. Current Internet-Draft submission and posting mechanisms
	hinder efficient and timely communication while creating an unnecessary load
	on the IETF Secretariat.  The IETF Tools team recommends formalization and
	automation of the current mechanisms.  This document contains specific
	automation requirements.</t>

	<t>The IETF Secretariat and many IETF participants have long been
	proponents of automation.  This document attempts to reflect their known
	needs and wishes, as interpreted by the Tools team.</t>

</section>

<section anchor="section-state" title="State of this draft">

	<t>This draft version attempts to resolve all known issues and address all
	Last Call comments received by 2005/04/12. The Tools team may ask the IESG
	to issue another Last Call for it.</t>

	<t>If you decide to review the draft at this late stage, please limit your
	comments to critical issues.  Please check the Change log in <xref
	target="section-change-log" /> before proposing changes as it is possible
	that your idea has already been discussed.  Please post comments on the
	tools-discuss@ietf.org mailing list or email them directly to the
	author.</t>

	<t>RFC Editor Note: Please remove this section for the final publication
	of the document.  It has been inspired by draft-rousskov-newtrk-id-state
	and related NEWTRK WG discussions.</t>

</section>

<section anchor="section-scope" title="Scope">

	<t>The Draft Submission Toolset discussed in this document is about
	getting a single new version of an Internet-Draft from an IETF
	participant to the IETF draft repository.  A single draft version may
	include several formats, and dealing with those formats is in scope for
	the Toolset.  Definition and sources of draft meta-information (to be used
	in Secretariat databases and elsewhere) are in scope.  Submitter
	authentication and submission authorization is in scope.</t>

	<t>Draft posting may result in various notifications sent to interested
	parties.  While this document recommends a subset of notification targets,
	details of notifications are out of scope.</t>

	<t>Creation of new drafts or new draft versions as well as manipulation,
	visualization, and interaction with the drafts already in the repository
	are out of scope.  Draft expiration and archiving of old draft versions
	are out of scope.</t>

	<t>The set of requirements in this document is not meant to be
	comprehensive or final.  Other IETF documents or procedures may require
	additional functionality from the Toolset.  For example, it is possible
	that the Toolset will be required to handle draft source formats other
	than plain text and XML.</t>

</section>

<section anchor="section-terms" title="Notation and Terminology">

	<t>The following terms are to be interpreted according to their
	definitions below.</t>

	<t><list style="hanging">

		<t hangText="posted draft:">A draft accepted into the public IETF
		draft repository and, hence, publicly available from the IETF web
		site.  Posting of a draft does not imply any IETF or IESG review
		and endorsement.</t>

		<t hangText="draft version:">A meant-to-be-public snapshot of an
		Internet-Draft with a meant-to-be-unique version number.  Also
		known as "draft revision".</t>

		<t hangText="draft format:">Any draft source or presentation format,
		including original and preprocessed XML, original or generated plain
		text as well as PDF, PostScript, and HTML formats.</t>

		<t hangText="primary draft format:">The first available draft format
		from the following list: plain text, PDF, PostScript, or XML.</t>

		<t hangText="WG-named draft:">A draft for which identifier (a.k.a.
		filename) is known and starts with "draft-ietf-". Abbreviated as "WGN
		draft".  Exceptions notwithstanding, WG-named drafts are usually
		controlled by IETF working groups and vice versa.  The handling of such
		naming exceptions is outside of this document scope.</t>
		
		<t hangText="individual draft:">A draft other than a WGN draft.</t>

		<t hangText="submitter:">A human or software agent initiating
		submission of an Internet-Draft version for validation or posting.
		In some cases, the Secretariat staff does the actual submission,
		but always on behalf of a submitter.  In some cases (including but
		not limited to malicious attacks), the submitter is not the draft
		author.</t>

		<t hangText="expected submitter:">A submitter that is authorized by
		IETF rules to post a given draft.  This includes a draft author or
		editor (listed in the draft text), a corresponding WG Chair, or an
		IESG member.</t>

		<t hangText="authorized submitter:">An expected submitter
		authenticated by the Toolset.  Authentication is initially limited to
		verifying submitter access to submitter's email address.</t>

		<t hangText="immediately:">Without human interaction or artificial
		software delays and within a few seconds.</t>

	</list></t>

	<t>The Toolset is specified using a set of normative requirements.  These
	requirements are English phrases ending with an "(Rnnn/s)" indication,
	where "nnn" is a unique requirement number, and "s" is a single letter
	code ("a", "b", or "c") specifying the implementation stage for the
	requirement.  Implementation stages are documented in <xref
	target="section-make-stages" />.</t>

	<t>This document specifies the interface and functionality of the Toolset,
	not the details of a Toolset implementation.  However, implementation
	hints or examples are often useful.  To avoid mixup with Toolset
	requirements, such hints and examples are often marked with a "Hint:"
	prefix.  Implementation hints do not carry any normative force, and a
	different implementation may be the best choice.</t>

</section>

<section anchor="section-statusquo" title="Status quo">

	<t>This section summarizes the process for draft submission and posting as
	it exists at the time of writing.</t>

	<t>To get an Internet-Draft posted on the IETF web site, an IETF
	participant emails the draft text to the IETF Secretariat, along with an
	informal note asking the Secretariat to post the draft.  Secretariat staff
	reads the note, reviews the draft according to a checklist, and then
	approves or rejects the submission.  Draft approval triggers the
	corresponding announcement to be sent to appropriate IETF mailing lists.
	Every 4 hours, approved drafts are automatically copied to the IETF drafts
	repository and become available on the IETF web site.</t>

	<t>Collectively, IETF participants submit thousands of Internet-Drafts per
	year (in the year 2000, about three thousand drafts were submitted; 2002:
	5k; 2004: 7k <xref target="secretariat" />). About 30-50% of posted drafts
	are WG-named drafts (among some 2,100 drafts, there were about 380 new and
	290 updated WGN drafts posted in 2003).  While no rejection statistics is
	available, the vast majority of submitted drafts are approved by the
	Secretariat for posting.</t>

	<t>It usually takes the Secretariat a few minutes to review a given draft.
	However, since the Secretariat staff does not work 24/7, does not work in
	all time zones, has other responsibilities, and since approved drafts are
	posted in batches every 4 hours, it may take from several hours to several
	days to get a draft posted.  Due to much higher demand and fixed
	processing capacity, postings during the last weeks before IETF
	face-to-face meetings take much longer, creating a long queue of
	unprocessed drafts that are then announced nearly simultaneously.</t>

	<t>To give IETF face-to-face meeting participants time to review relevant
	documents, the Secretariat does not accept Internet-Draft submissions close to
	IETF meetings (regardless of whether a draft is relevant to the upcoming
	meeting or not).</t>

	<t>Many Working Groups have come up with ad hoc solutions to cope with
	posting delays.  For example, many draft snapshots are "temporarily"
	published on personal web sites or sent (completely or in part) to the
	group list.  Alternative means of publication may effectively replace
	official IETF interfaces, with only a few major draft revisions ending up
	posted on the IETF web site.</t>

	<t>Informal interfaces for submitting and posting drafts discourage
	automation.  Lack of submission automation increases Secretariat load,
	complicates automated indexing and cross-referencing of the drafts, and,
	for some authors, leads to stale drafts not being updated often
	enough.</t>

	<t>Beyond a short Secretariat checklist, submitted drafts are not checked
	for compliance with IETF requirements for archival documents, and
	submitters are not notified of any violations.  As a result, the IESG and
	RFC Editor may have to spend resources (and delay approval) resolving
	violations with draft authors.  Often, these violations can be detected
	automatically and would have been fixed by draft authors if the authors
	knew about them before requesting publication of the draft.</t>

	<t>Technically, anybody and anything can submit a draft to the
	Secretariat.  There is no reliable authentication mechanism in place.
	Initial submissions of WGN drafts require WG Chair approval, which can be
	faked just like the submission request itself.  No malicious impersonations
	or fake approvals have been reported to date however.</t>

	<t>Lack of authentication is not perceived as a serious problem, possibly
	because serious falsification are likely to be noticed before serious
	damage can be done.  Due to the informal and manual nature of the submission
	mechanism, its massive automated abuse is unlikely to cause anything but a
	short denial of draft posting service and, hence, is probably not
	worth defending against.  However, future automation may result in a
	different trade-off.</t>

</section>

<section anchor="section-overall" title="Overall Toolset operation">

	<t>This section provides a high-level description for the proposed Toolset.
	The description is meant to show overall operation and order; please refer
	to other sections for details specific to each step.</t>

	<t>A typical submitter goes through a sequence of 2-4 web pages and
	associated actions.  The number of pages depends on the draft validation
	and meta-data extraction results.  For example, validating the draft
	without posting it requires interacting with two web pages: Upload and
	Check.  The common case of posting a valid draft without manual meta-data
	adjustments takes three web pages (Upload, Check, Receipt).</t>

	<t>Here is a brief overview of pages and actions:</t>

	<t><list style="hanging">

		<t hangText="Upload page:">The interface to copy a draft from the
		submitter's computer to the Toolset staging area (<xref
		target="section-upload-page" />). Multiple formats are accepted.
		The draft is sent to the Check action.</t>

		<t hangText="Check action:">Stores the draft in the Toolset staging
		area, extracts draft meta-data, validates the submission (<xref
		target="section-check-action" />). Produces the Check page.</t>

		<t hangText="Check page:">Displays draft interpretation and
		validation results (<xref target="section-check-page" />). A draft
		preview may also be given on this page.  After reviewing the draft
		interpretation and validation results, the submitter has four basic
		choices (a) auto-post draft "as is" now; (b) make manual corrections
		and submit the draft to Secretariat for manual posting later; (c)
		cancel submission; or (d) do nothing.  The automated posting option
		may not be available for drafts with validation errors.</t>

		<t hangText="Automated posting:">If the submitter decides to proceed
		with automated posting from the Check page, the system authenticates
		the submitter (and may also check whether the submitter is allowed to
		post the draft, if and when such checks are instituted).  If the
		submitter is authorized, the draft is immediately posted, deleted
		from the staging area, and the submitter is notified of the result
		via email and a Receipt page (<xref target="section-autopost-action"
		/>).</t>

		<t hangText="Manual adjustment and posting:">If the submitter decides to
		adjust the meta-data, the draft remains in the Toolset staging area, and
		the Adjust action (<xref target="section-adjust-action" />) presents
		the submitter with an Adjust page (<xref target="section-adjust-page"
		/>).  When the submitter makes the adjustments and proceeds with manual
		posting, a pointer to the stored draft and its adjusted meta-data is
		sent to the secretariat for manual processing (<xref
		target="section-manpost-action" />). The submitter is notified of the
		pending Secretariat request via email and a Receipt page.</t>

		<t hangText="Cancellation:">If the submitter decides to explicitly
		cancel the submission, the submission state (including the draft) is
		immediately deleted from the Toolset staging area and an appropriate
		Receipt page is generated without further actions (R123/a).
		Cancellation of previously posted drafts is out of this document scope.</t>

		<t hangText="Receipt page:">Contains details of a successful or failed
		draft submission and informs the submitter of the next appropriate
		step(s) related to submission result.</t>

	</list></t>

	<t>The following informal diagram illustrates the basic submission logic:</t>

	<t><figure>
		<artwork>                    /---> Post Now
                   /
Upload --> Check -+-----> Adjust ---> Send to Secretariat
                   \
                    \---> Cancel</artwork>
	</figure></t>

	<t>If the submitter does nothing while the Toolset is expecting some
	response, the abandoned submission times out (R124/a).  The timeout value
	depends on the submission state.  Hint: A timeout value of one hour is
	probably large enough unless the Toolset is waiting for some kind of a 3rd
	party confirmation (e.g., WG chair approval). Doing nothing is
	functionally equivalent to explicitly canceling the submission, except
	that explicit cancellation requires immediate removal of submission state
	while the state of submissions marked as abandoned is
	garbage-collected.</t>

	<t>The staging area maintenance algorithms must keep the area in a
	consistent, correct state in the presence of DoS attacks attempting to
	overwhelm the area with fake submissions in various stages (R67/a). Hint:
	denial of service to legitimate users is acceptable under DoS attack
	conditions, but corruption of the storage area is not.</t>

	<t>The "web pages" this text is referring to are distinct dialogs, that
	may be visible to the submitter under the same or different URL, and
	supported by a single or several server-side programs.</t>

	<t>The Toolset must handle multiple submitters simultaneously submitting
	the same draft (R72/a) and a single submitter simultaneously submitting
	two drafts (R73/a). The latter might happen, for example, when the
	submitter is using several browser windows to submit several drafts or is
	submitting drafts via email interface.  The term "simultaneously" means
	that submission processing times overlap.</t>

	<t>Hint: Except for the Upload page, pages contain a submission session
	identifier to provide actions with access to stored information.  The
	identifier is specific to the submission rather than the draft version or
	the submitter.  While the nature of the web interface allows the session
	identifier to be invisible to the submitter, email communication would
	need to identify the session so that the recipient (and Toolset) know the
	context.</t>

	<t>Hint: A single action may correspond to multiple server-side programs
	and, vice versa, a single program may implement several actions.  This
	document does not mandate any specific technology (e.g., CGI, PHP, and/or
	Java servlets) to implement server-side support.  The implementer
	experience, code reuse across web and email interfaces, and other factors
	will determine the right technology choice.</t>

	<t>Hint: Actions preserve and exchange state by storing it along with
	the draft.  Grouping all submission-specific information in one subdirectory
	named using the session identifier may increase robustness and simplify
	debugging.  Session creation and destruction can then be logged in a global
	index.</t>

	<t>Ways to partially or completely bypass the Toolset are documented
	in <xref target="section-bypass" /></t>

	<t>The Toolset sources should be publicly available (R152/b) under a
	license certified by the <xref target="OSI">Open Source Initiative</xref>
	(R144/a), with an interface to report bugs and request enhancements
	(R145/b). These requirements are meant to enable the Toolset transfer from
	one management team to another and to allow for public review and
	contribution.  To meaningfully satisfy these availability requirements, the
	Toolset has to implement the required functionality without relying on
	software with different availability conditions.</t>

	<t>Hint: Placing the Toolset source repository at an open-source-friendly
	project management site like SourceForge.net would provide the IETF
	community with a decent, ready-to-use interface to access the code,
	documentation, bug reports, and discussion forums.  Establishing and
	documenting a simple interface between the Toolset and external software
	(e.g., the Secretariat draft posting scripts) would facilitate
	availability checks.</t>

	<t>The Toolset is meant to be compatible with the Secretariat's tools for
	handling drafts.  Hint: Such compatibility can be achieved by appropriately
	implementing the Toolset or, in some cases, by modifying existing
	Secretariat tools.</t>


</section>

<section anchor="section-upload-page" title="Upload page">

	<t>To upload a draft, the submitter goes to a well-known page on the IETF web
	site (R1/b). There, the draft text can be uploaded using an HTML file upload
	form.  This form provides fields to upload the plain text format of the draft
	(R2/a) and all other formats allowed by IETF draft publication rules (R3/b).
	At the time of writing, these formats are: XML (<xref target="RFC2629" /> and
	<xref target="I-D.mrose-writing-rfcs" />), PDF, and PostScript.</t>

	<t>Submitted forms are handled by the Check action documented in <xref
	target="section-check-action" />. </t>

	<t>The Upload page also has a validate-only flag, indicating that an uploaded
	draft must not be posted and may be deleted immediately after the
	validation (R74/b). Regardless of the validation results, the stored draft
	meta-data is marked so that validation-only drafts can be identified and
	deleted first by garbage collector for the Toolset staging area (R75/b).
	Drafts uploaded in a validate-only mode cannot be posted (R76/b); they
	would need to be uploaded again, without the validate-only flag, and the
	validation results page should explain that (R77/b). This flag is useful
	for tools using online validation, especially for bulk draft processing.
	Hint: it may be better to implement this flag as a hidden HTML input field
	to simplify the interface for human submitters.</t>

</section>

<section anchor="section-check-action" title="Check action">

	<t>The Check action preprocesses a submission, generates plain text format
	(if needed, see R70), stores the submitted draft (all formats) in the staging
	area, and then extracts meta-data and validates each format (R6/a).
	Errors and warnings are indicated to the submitter in the response via
	computer-friendly tag(s) and human-friendly text (R7/a).</t>

	<t>If any error is found, automated posting becomes impossible (R113/a).
	This rule applies to all errors, even those that do not refer to R113 and
	do not explicitly prohibit automated posting.  If automated posting is not
	possible, the Toolset still gives the submitter an option of sending the
	draft for manual validation and posting (R114/a). Since each submission is
	treated in isolation, the submitter also has an option of correcting the
	problem and resubmitting the draft for automated posting.</t>

	<t>The manual validation and posting route is a Toolset bypass mechanism
	(see <xref target="section-bypass"/>) not meant for fixing problems with
	the draft itself.  The Secretariat does not generally correct submitted
	drafts.  If the draft needs tweaking to match submitter's intent, then the
	draft should be corrected by the submitter and resubmitted.</t>

	<t>It is an error to submit a draft which has neither plain text nor XML
	source format (R68/a). XML source is acceptable without accompanying plain
	text only if the Toolset successfully generates a draft in plain text format
	from the XML source, as a part of the processing step documented below
	(R69/b).  These rules imply that PDF- or PostScript-only drafts cannot be
	auto-posted.  Moreover, even manual Secretariat involvement cannot help with
	posting these drafts, as the IETF policy is to always require a plain text
	format in addition to PDF or PostScript.  Furthermore, drafts containing PDF
	or Postscript format versions must not be auto-posted until the Toolset can
	validate that their content matches the plain text format (R143/a).</t>

	<t>The draft format acceptance rules above are meant to decrease the chances
	that multiple posted draft formats for a single draft contain substantially
	different documents.  With experience, the rules may be simplified so that,
	for example, only submissions containing nothing but XML or plain text
	sources can be posted without Secretariat involvement and all other
	submissions require manual actions to match formats or extract meta-data.</t>

	<section anchor="section-step-check-prep" title="Preprocessing">

		<t>Submitting compressed drafts is a desirable feature, especially for
		submitters behind slow or content-altering links.  Compressed draft
		formats may be accepted (R150/c). Compressed formats, if any, must be
		decompressed during the preprocessing step (R151/c) so that other
		processors do not have to deal with compressed formats.  Hint:  While
		this specification does not document a list of supported compression
		standards, it is expected that such popular methods as "zip" and
		"gzip" should be accepted if compression is supported.  Accepting a
		collection of draft formats within a single compressed archive may
		also be desirable.</t>

		<t>XML source containing XML processor &lt;rfc? include="...">
		instructions (PIs) is preprocessed to include references (R8/b).  This
		step is needed to remove external dependencies from XML sources and to
		simplify tools processing posted XML. This document refers to such
		XML processor instructions as "include PIs".</t>
		
		<t>The XML preprocessor uses public database(s) to resolve PI
		references (R85/b).  The Toolset documentation specifies what
		databases are used and how PIs are mapped to database entries (R86/b).
		The Toolset must not rely on PIs existence (R87/b) because some XML
		sources will be preprocessed before the submission or will be written
		without PIs.  Hint: Local up-to-date copies of Marshall Rose's
		reference databases at xml.resource.org can be used.</t>

		<t>Both original and preprocessed XML sources may be posted later.
		The original source with include PIs may be useful to the RFC Editor
		and generation of diffs (against future or past original sources). The
		preprocessed source without include PIs becomes the default public XML
		source of the posted draft (R10/b).  If any of the include PIs known
		to the Toolset cannot be handled, an error is recorded (R11/b), and
		the submitter is encouraged to do the preprocessing locally, before
		submitting the draft (R111/b).</t>

		<t>Uncompressed draft formats other than XML are not preprocessed.</t>

	</section>

	<section anchor="section-step-check-proc" title="Processing">

		<t>When no plain text format of the draft is submitted, but XML
		sources are available, the Toolset attempts to generate plain text
		format from submitted XML sources (R70/b).</t>

		<t>If XML sources are available, the Toolset generates HTML draft
		format (R112/c). HTML generation failures should result in warnings,
		not errors (R115/c). HTML generation is not meant to be implemented
		until the Enhancement stage is reached (R130/a). In general, HTML
		generation is desirable because HTML drafts are usually easier to
		navigate than plain text drafts due to improved overall readability
		and links.  As any Enhancement Stage feature, HTML generation may be
		dropped or drastically changed to reflect then-current IETF consensus
		and the experience of the first two implementation stages.</t>

		<t>Hint: The Toolset implementers should not assume that draft formats
		generated by the same tool from the same source format have
		essentially the same content.  The generation tool may have options
		that allow authors to generate content exclusive to a specific
		generated format.  Such options might be abused.</t>

	</section>

	<section anchor="section-step-check-store" title="Storage">

		<t>The Check action needs to store all draft formats so that
		successfully validated drafts can later be auto-posted at submitter
		request.  The action stores all submitted formats of the draft in a
		staging area dedicated to the Toolset (R12/a). If, after garbage
		collection, the staging area is full (i.e., the total used size has
		reached the configured maximum capacity), the submitter and the
		Secretariat are notified of a fatal error (R13/a).</t>

	</section>

	<section anchor="section-step-check-extract" title="Extraction">

		<t>The Toolset extracts meta-data from the following stored draft
		formats: plain text (R131/a), XML (R132/b), and other (R133/c). If a
		meta-data extraction fails, the Toolset records an error (R15/a).
		Meta-data extraction is necessary to validate and post the draft.
		Extraction from all formats is necessary to validate that all meta-data
		matches across all formats (in addition to and before the Toolset can
		validate that the contents matches as well).</t>

		<t><xref target="section-make-stages" /> documents a non-obvious
		implementation schedule related to the above two requirements.  When
		only partial support for format interpretation is available, only
		interpreted formats are subject to extraction and validation
		requirements.  In other words, if the Toolset does not yet support
		interpretation of a given format, then the corresponding information
		is stored and made available "as is", regardless of the actual
		content.</t>

		<t>The draft interpreter extracts the following meta-data from each
		draft format (R16/a):</t>

		<t><list style="hanging">

			<t hangText="identifier:">Also known as draft "filename".  For
			example, draft-ietf-sieve-vacation-13 .</t>

			<t hangText="version:">A non-negative integer number representing
			draft version number (also known as draft revision number). For
			example, the number seven in
			draft-ietf-sieve-vacation-07.</t>

			<t hangText="name:">The common part of all draft identifiers for all
			versions of the same draft.  In other words, a draft identifier
			without the version component.  For example,
			draft-ietf-sieve-vacation in
			draft-ietf-sieve-vacation-07.</t>

			<t hangText="WG ID:">Working Group identifier.  The WG ID
			value is empty for drafts that are not WG-named drafts.  For
			example, "sieve" in "draft-ietf-sieve-vacation-07" and "opes"
			in "draft-rousskov-opes-ocp-00" are both WG IDs.  Extraction
			of the WG ID from a given individual draft identifier is an
			Enhancement Stage feature; the process is imprecise and
			requires checking with a list of known IETF working groups,
			teams, and similar structures.</t>

			<t hangText="WG flag:">True for WGN drafts and false for all
			other drafts.  For example, "true" for
			"draft-ietf-sieve-vacation-13".  This flag only influences
			the further handling of initial (version 00) draft
			submissions.</t>
		
			<t hangText="title:">A human-friendly draft title.  For example,
			the title of this document is "Requirements for an IETF Draft Submission
			Toolset"</t>

			<t hangText="authors:">A list of all draft authors.  For each
			author, their name and email address are extracted.</t>

			<t hangText="abstract:">The draft abstract text.</t>

			<t hangText="creation date:">The draft version creation date.</t>

			<t hangText="expiration date:">The draft version expiration date.</t>

			<t hangText="size:">The number of pages and octets in the primary
			format of the draft.  The definition of a page depends on the
			format and may be imprecise or arbitrary for some formats.</t>

    	</list></t>

		<t>Failure to extract any field results in error (R95/a).</t>

		<t>The Toolset requires author email addresses because they are
		essential for notifying co-authors that their draft has been posted.
		If there are no such notifications, a submitter adding a co-author to
		the draft without the co-author's consent may not be caught for a while.
		Such "surprise" co-authorships have happened in the past and can be
		quite annoying.  However, since the Toolset does not solicit
		co-authors' consent to post a valid draft (and such solicitation would
		not go beyond email control verification anyway), it is not possible
		to stop a malicious submitter from adding co-authors without their
		knowledge.</t>

		<t>Like other meta-data items above, draft creation and expiration
		dates are extracted from the draft; their values do not depend on the
		actual submission time (i.e., the time the Check action starts).
		However, the validation procedure (see <xref
		target="section-step-check-validate" />) may declare any extracted date
		invalid after taking into consideration current (i.e., submission)
		time, IETF draft expiration rules, and other factors external to the
		draft.</t>
		
	</section>

	<section anchor="section-step-check-validate" title="Validation">

		<t>Drafts need to be validated to catch broken submissions.  Validation
		also helps educate or warn authors of problems that may become
		show-stoppers when the draft is sent for IETF Last Call and IESG
		review.  IETF standards have to follow a set of syntax and semantics
		requirements (see the "ID-NITS" document at
		&lt;http://www.ietf.org/ID-Checklist.html>. Most of those requirements
		are not enforced for Internet-Drafts.  However, following them may
		improve draft quality, reduce the IESG load, and increase the chances of
		the draft being approved as an RFC.</t>

		<t>When validating a given draft, it is important to distinguish
		between absolute requirements and desirable draft properties.  Both
		categories are checked for, but violations have different effects
		depending on the category.  The two categories are detailed in the
		following subsections.</t>

		<t>When a valid draft is being posted and submitter authorization or
		co-author notification is performed, validation results should be
		included in the email (R81/b) so that the submitter can see meta-data
		extraction and validation warnings.  Note that these results cannot
		include errors since only valid drafts can be posted.</t>

		<section anchor="section-step-check-validate-abs" title="Absolute
		requirements">

			<t>Violating any of these requirements would prevent a draft to be
			automatically posted (R17/a). The offending draft would have to be
			fixed or submitted for manual posting, with an explanation why the
			absolute requirements need to be violated (or why the Validator
			mis-detected violations). These explanations may speed up
			Secretariat posting decision and may help Secretariat to improve
			the Toolset implementation.</t>

			<t><list style="numbers">

				<t>All available meta-data entries must match across all
				submitted draft formats (R18/a). For example, if the
				interpreter managed to extract a draft title from both the plain text
				and the PDF format, both titles must match.  This requirement
				prevents accidental submission of mismatching formats.</t>

				<t>Version 00 of a Working Group draft has a corresponding
				Working Group approval (R20/a). This approval can be relayed
				before or after the first draft submission, by a Chair or
				Secretary of the WG. See <xref
				target="section-step-check-validate-wg" /> for related
				requirements.</t>

				<t>The draft ID must be correct (R22/a), including the draft
				version number value.  Draft version numbers must start with
				zero and increase by one with every new version.  To satisfy
				this requirement, the Toolset would have to consult the
				repository of already posted drafts, including expired
				ones.</t>
				
				<t>An IETF IPR Statement and other boilerplate required for
				drafts according to <xref target="RFC3978" />
				and <xref target="RFC3979" /> (or successors) must
				appear in the draft text (R23/a).</t>

				<t>The creation of the draft version could have happened 48
				hours or less before submission time.  Hint: Implementers
				should be careful to handle creation dates that appear to be
				in the past or in the future, due to possible time zone
				differences.  Making the most forgiving/permissive assumption
				about the time zone should suffice.</t>

				<t>The draft version expiration date obeys IETF draft
				expiration rules.</t>

				<t>No IETF submission blackout period applies.  Hint:  IETF
				blackouts must be enforced based on submission time, not
				possible draft creation time.</t>

				<t>Posting the draft must not result in any Denial of Service
				(DoS) attack threshold to be crossed (R97/a). Specific
				thresholds are documented in <xref
				target="section-step-check-validate-dos" />.</t>

				<t>XML sources (if available) are valid with respect to the <xref
				target="XML">XML format</xref> (R153/c) and XML Document Type
				Definition (DTD) for IETF drafts (R154/c). Note that during
				the first two implementation stages, the corresponding
				validation failures result in warnings and not errors (see
				<xref target="section-step-check-validate-desire" />).</t>

			</list></t>

			<t>The XML DTD for IETF drafts is documented in <xref
			target="RFC2629" /> with recent changes available in <xref
			target="I-D.mrose-writing-rfcs" />. Hint: Bill Fenner's "RFC 2629
			validator" at http://rtg.ietf.org/~fenner/ietf/xml2rfc-valid/ (or
			its derivative) may be useful for XML format and DTD
			validation.</t>

		</section>

		<section anchor="section-step-check-validate-desire"
		title="Desirable features">

			<t>Violating any of the following requirements does not prevent
			the submitter from auto-posting the draft (R24/a).</t>

			<t><list style="numbers">

				<t>All automatically testable nits in the "ID-NITS" document at
				&lt;http://www.ietf.org/ID-Checklist.html> (R116/b). The
				Toolset should use external tools to check these rather than
				embed nits checking code (R117/a). Hint: Henrik Levkowetz'
				idnits tool can be used
				(http://ietf.levkowetz.com/tools/idnits/) and other tools can
				be written or adopted.</t>

				<t>New draft versions are expected (R21/b).  For example,
				version 00 of an individual draft is always expected, while
				posting a new version of a draft already under the IESG review
				should generate a warning.</t>

				<t>If both XML and plain text formats are submitted, the
				submitted plain text matches what can be generated based on
				submitted XML (R146/b).</t>

				<t>The previous version, if any, was posted at least 24 hours ago
				(R96/b).  This warning may prevent some human errors,
				especially when multiple authors may post the same draft.</t>

				<t>XML sources (if available) are valid with respect to the XML
				format (R155/b) and XML DTD for IETF drafts (R156/b). These
				requirements become absolute after the second implementation
				phase.  See <xref target="section-step-check-validate-abs" />
				for related information.</t>

			</list></t>

			<t>When comparing generated and submitted plain text formats to
			satisfy R146, a standard word-based diff is sufficient for initial
			Toolset implementations (R147/b). However, a custom fuzzy matching
			function can be developed (R148/c) to minimize false warnings due
			to, for example, draft text formatting differences.  When
			differences are detected, a complete diff may be provided on a
			separate page (R149/c), in addition to the warning.</t>

			<t>Hint: When comparing generated and submitted plain text
			formats, the Toolset may try several recent xml2rfc versions for
			plain text generation, to eliminate warnings due to differences
			among xml2rfc versions.</t>

		</section>

		<section anchor="section-step-check-validate-dos"
			title="DoS thresholds">

			<t>The following table documents DoS attack thresholds for various
			draft categories.  Daily limits correspond to all drafts (and all
			draft formats) within the category.  Other thresholds may be
			introduced and these initial thresholds may be adjusted as
			necessary.  The thresholds are likely to become more smart/dynamic
			with experience.</t>

			<texttable>

				<preamble>DoS attack thresholds:</preamble>

				<ttcol align='left'>category</ttcol>
				<ttcol width='20%' align='right'>versions/day</ttcol>
				<ttcol width='15%' align='right'>MB/day</ttcol>

				<c>drafts with the same draft name</c>
				<c>3</c>
				<c>5</c>

				<c>drafts with the same submitter</c>
				<c>5</c>
				<c>10</c>

				<c>WGN drafts with the same WG ID</c>
				<c>10</c>
				<c>15</c>

				<c>all drafts</c>
				<c>300</c>
				<c>150</c>

			</texttable>

			<t>The thresholds are meant to limit destructive effects of DoS
			attacks (e.g., full disks cause other tasks to fail), allow for
			capacity planning (e.g., how much storage space the Toolset
			needs), and limit annoying side-effects of "too many" drafts being
			posted (e.g., when a person receives posting notifications about a
			given draft or a given working group). The Toolset should warn the
			Secretariat if total submissions are approaching any threshold
			(R134/b). Hint: Bandwidth available for submissions may need to be
			throttled (on a network subnet basis?) to make reaching the daily
			size quota (with malicious intent) difficult.</t>

		</section>

		<section anchor="section-step-check-validate-wg"
			title="WG approval">

			<t>For version 00 of a WGN draft, the Toolset checks for an
			existing WG approval (R125/a). If (a) no approval exists, and (b)
			the Toolset does not support the "waiting for WG approval"
			feature, the Toolset records an error (R135/a).</t>

			<t>If (a) no approval exists, (b) the Toolset supports the
			"waiting for WG approval" feature, and (c) the draft cannot be
			posted even if WG approval is received, then the Toolset records a
			warning that a WG approval would be required once all errors
			preventing draft from posting are fixed (R137/b).</t>

			<t>If (a) no approval exists, (b) the Toolset supports the
			"waiting for WG approval" feature, and (c) the draft can be posted
			if WG approval is received, then the Toolset explains the
			situation to the submitter and asks whether the submitter wishes to
			solicit an explicit approval from the WG (R126/b). If the
			submitter decides to go ahead with solicitation, the Toolset puts
			the submission into a "waiting for WG approval" state until the
			approval is available (R127/b). Otherwise, the Toolset records a
			"no WG approval is expected" error (R138/b).</t>

			<t>Details of the approval recording and access interfaces as well
			as the mechanism to resume the submission upon approval are out of
			this document scope.</t>

		</section>

	</section>

</section>

<section anchor="section-check-page" title="Check page">

	<t>The Check page, created by the Check action, displays extracted draft
	meta-data and validation results (R25/a). The purpose of the page is to
	allow the submitter to verify whether the stored draft and automatically
	extracted meta-data match the submitter's intent and to be informed of
	validation problems.</t>

	<t>Meta-data items specified in <xref target="section-step-check-extract"
	/> that failed validation checks must be marked specially (rather than
	silently omitted or ignored) (R26/b). Hint: rendering those items in red,
	with links to corresponding validation errors or warnings, may force
	authors to pay attention.</t>

	<t>Validation messages include both errors and warnings.  Each validation
	message refers to normative document(s) containing the corresponding
	validation rules (R27/b).</t>

	<t>The Check page allows the submitter to enter <xref
	target="section-check-page-ext">external meta-data</xref> (R28/a). If
	validation was successful, an "automatically post the draft now" button is
	provided (R29/a).  Regardless of validation results, "adjust and post
	manually" and "cancel" buttons are provided (R30/a).</t>

	<t>The Check page provides a preview of the draft plain text format
	(R31/a), with a link to see how the entire draft (with all its formats)
	would look like if posted (R82/b). Hint: the Check page preview should be
	sufficiently long to let authors detect obvious draft mismatch or
	misinterpretation errors but short enough to avoid dominating the page.
	Displaying the first line of the draft through the last line of the
	abstract may be sufficient.</t>

	<t>For draft updates, the Check page reports the time and the submitter of
	the last update (R83/b). This information is especially useful when
	multiple authors are working on the same draft.  The page also provides a
	link to generate a diff against the last posted version (R84/c).</t>

	<section anchor="section-check-page-ext" title="External meta-data">

		<t>The Check page solicits the following meta-data from the submitter.
		This information must be supplied by submitter because 
		it cannot be extracted from the draft:

		<list>

			<t>Submitter email address (R32/a). When submitter is not an
			expected submitter (see <xref target="section-terms" />),
			automated posting is not possible and the draft has to go through
			the Secretariat (R98).  Hint: A set of checkboxes next to
			extracted author names along with a "none of the above" checkbox
			with an input field would suffice.</t>

			<t>A list of drafts replaced by this draft (R33/c). This is useful
			to make replaced drafts invisible.  This document does not specify
			any actions necessary to actually replace an existing draft
			because existing draft manipulation is out of scope, and because
			security concerns and other complications of such actions would be
			better addressed by a separate specification.</t>
			
			<t>Primary email address for discussion of this draft (R71/b).
			Hint: The Toolset can suggest the WG mailing list address for WGN
			drafts, (submitting) author address for individual drafts, or even
			the first email address in draft text.  Offering a few likely
			addresses instead of relying exclusively on user input would also
			reduce the number of typos.</t>

		</list></t>

		<t>Except for the submitter email address, external meta-data is
		optional (R109/a).</t>

		<t>If a given submitter email address belongs to an expected submitter
		(i.e., belongs to one of the categories below), the Toolset performs
		submitter authentication during a Post Now action (R19/a).  Otherwise,
		an error is reported (R118/a).</t>

		<t>The following possible expected submitters are identified by the
		Toolset, without any Secretariat intervention:

		<list>

			<t>For version 00 of a draft, any submitter (R119/a).</t>

			<t>For version N+1 of a draft, an author of version N of the same
			draft (R120/a).  This requirement only needs to be satisfied for
			drafts for which Nth version was posted using the Toolset; other
			drafts may not have the meta-information available which is
			required to reliably get a list of authors.</t>

			<t>For a WGN draft, a Chair of the corresponding WG (R121/b).</t>

			<t>For any draft, an IESG member (R122/c).</t>

		</list></t>

	</section>

</section>

<section anchor="section-autopost-action" title="Post Now action">

	<t>The Post Now action checks that the draft has been successfully
	validated (R34/a), validates external meta-data (including submitter email
	address) (R35/a), and posts the draft (R36/a).  The submitter is notified of
	the action progress and the final result (R37/a).</t>

	<t>The external meta-data contains the submitter's email address.  As a part of the
	validation procedure, the Post Now action authorizes the submitter.  The
	initial action implementation checks that the submitter has access to
	email sent to that address (R38/a). Eventually, the Toolset should accept
	client certificates signed by IETF, PGP-signed email, and/or other forms
	of client-side authentication to eliminate the weak and annoying email
	access check (R110/c). If submitter authentication fails, the submission
	eventually and silently times out (R39/a).</t>

	<t>The Toolset provides both web (R99/a) and email (R139/b) interfaces for
	confirming email access.  Hint: To check submitter's access to email, the
	tool can email a hard-to-guess cookie or token to the submitter's address.
	To continue with the submission, the submitter is requested to paste the
	cookie at the specified URL, go to the token-holding URL, or respond to
	the email.</t>

	<t>Immediately after sending an email to the submitter, the The Post Now
	action generates an intermediate Receipt page that explains Toolset
	expectations and provides the submitter with the submission ID (R100/a).
	That number allows the Secretariat to troubleshoot stuck submissions
	(R101/a) and can also be used for checking submission status without
	Secretariat involvement (R140/b).</t>

	<t>Immediately after posting the draft, the Toolset notifies all authors
	(with known email addresses) of the posting (R102/a).  The notification email
	contains the information available on the "successful posting" Receipt page
	described below (R103/a).</t>

	<t>If draft posting is successful, the submission state is marked as
	available for deletion (R105/a) so that the garbage collection routine
	eventually deletes it.</t>

	<section anchor="section-post-receipt-page" title="Receipt page">

		<t>A successful Post Now action reports at least the following
		information on the final Receipt page (R104/a):</t>

		<t><list style="symbols">

			<t>the draft ID and a link to the draft status page;</t>

			<t>the draft title, authors, and abstract;</t>

			<t>the submission ID</t>

			<t>a link to the draft submission status page (when status queries
			are supported, see R140).</t>

			<t>the submitter's name and email address.</t>

		</list></t>

		<t>The primary purpose of the Receipt page is to inform all draft
		authors that (supposedly) their draft has been posted.  The secondary
		purpose is to let authors create a permanent record of the event and
		troubleshoot postings.  The same information should be sent to other
		parties interested in the draft (e.g., to the WG mailing list), but 3rd party
		notification specifics are out of this document's scope.</t>

	</section>

</section>

<section anchor="section-adjust-action" title="Adjust action">

	<t>The Adjust action generates the Adjust page (R40/a), populating it with
	available extracted meta-data and external meta-data, as well as validation
	results and a preview.  Some information may be missing, depending on draft
	interpretation and the success of preview generation.</t>

</section>

<section anchor="section-adjust-page" title="Adjust page">

	<t>The Adjust page includes the same information as the Check page, but
	allows the submitter to adjust all extracted draft meta-data (and,
	naturally, external meta-data) at will (R41/a). Such adjustment is
	necessary when automated extraction failed to extract correct
	information.  To avoid any mismatch between draft and its meta-data, adjusted
	drafts cannot be automatically posted and require manual validation by
	the Secretariat (R42/a).  Secretariat staff can post drafts with adjusted
	meta-data as described in <xref target="section-bypass" />.</t>

	<t>The Adjust page allows the submitter to enter an informal comment
	explaining why adjustments are necessary and automated posting mode cannot
	be used (R48/a). Such comments may be essential for the Secretariat in
	their efforts to troubleshoot the problem.</t>

	<t>The "post manually" and "cancel" buttons are provided (R43/a). The
	former is backed by the "Post Manually" <xref
	target="section-manpost-action">action</xref>.</t>

</section>

<section anchor="section-manpost-action" title="Post Manually action">

	<t>The Post Manually action sends adjusted meta-data and a draft pointer to
	the Secretariat for manual validation and posting (R44/a). A receipt page
	is generated, instructing the submitter to wait (R45/a).  The Secretariat will
	notify the submitter once the draft is posted or rejected.  This
	notification is sent by the Toolset if the Secretariat is using the
	Toolset to post the draft (R46/a).</t>

</section>

<section anchor="section-receipt-page" title="Receipt page">

	<t>The Receipt page is generated by various actions to inform the
	submitter of the current submission status and further actions.  The contents
	of the page is likely to be highly dependent on the action and state for
	which receipt is being generated.  This section documents general
	requirements applicable to all actions and states.</t>

	<t>The Receipt page should give the submitter a URI or another identifier
	that can be used by Secretariat for manual troubleshooting of the submission
	(R63/a).  The identifier should be perpetual (R64/a) even though the
	associated details are likely to be eventually lost (e.g., draft submission
	data and logs are deleted from the staging area as a part of the garbage
	collection routine). Hint: Tools should distinguish old identifiers from
	invalid ones; when a given identifier is referring to deleted data, the tools
	accepting the identifier should inform their users that the identified
	submission is recognized, but the related information has expired.</t>

	<t>The Receipt page should give the submitter a Secretariat
	point-of-contact to report submission problems (R65/a).</t>

</section>

<section anchor="section-bypass" title="Bypassing the Toolset">

	<t>A buggy Toolset implementation or unusual circumstances may force a
	submitter to submit a draft to the Secretariat for manual processing.  This
	can be done by choosing the "manual posting" route supported by the Toolset
	(R47/a) or, as a last resort, by emailing the draft directly to Secretariat.
	In either case, an informal "cover letter" has to accompany the draft.  The
	letter should explain why the automated interface cannot be used.</t>

	<t>When processing manual submissions, the Secretariat may be able to use
	the Toolset.  A Manual Check page similar to the default Check page
	provides authenticated Secretariat staff with editable meta-data fields
	and a "force posting" action (R50/b). The forced posting action accepts
	meta-data fields "as is", does not verify submitter access to email or WG
	draft authorization, and posts the draft as if no validation errors were
	found (R51/b). The Manual Check page should still contain all the errors
	and warnings identical to those seen by ordinary submitters (R106/b) so
	that the Secretariat knows what the Toolset is unhappy about (if
	anything).</t>

	<t>Using manual processing may result in significant posting delays.
	Generated submission receipts or notifications ought to give the submitter
	an expected processing time estimate (R53/a).</t>

	<t>The intent of this mode is to provide a way for submitters to bypass
	bugs or limitations of the automated mechanisms in order to post an
	"unusual" draft or to post a draft under "unusual" circumstances.  One
	example would be a draft that does not contain standard IETF boilerplate
	but has a special IESG permission to post the draft with the experimental
	boilerplate.  Another example is a draft that fails automated validation
	tests due to a validator bug.</t>

	<t>The bypass mode is also likely to be used (effectively) by the majority
	of submitters during the Trial stage of the Toolset implementation, when
	few submitters know about (or are allowed to use) the Toolset.</t>

</section>

<section anchor="section-email-iface" title="Email interface">

	<t>The Toolset should have an email interface for automated posting of valid
	drafts (R55/b). While virtually every documented Toolset functionality
	can, technically, be implemented behind an email interface, features other
	than posting of valid drafts are believed to be prohibitively awkward to
	implement or use via email.</t>

	<t>The email interface accepts a draft as a set of email part(s) (one per
	draft format) (R56/b). For example, the plain text format can be submitted in
	the "body" of the email message, while XML source format can be optionally
	sent as an "attachment" of the same email message.  Each part can either
	contain the actual format data (R141/b) or a single URL pointing to it
	(R142/c). In the latter case, the Toolset has to fetch the format data.
	Details of URL-fetching option are not documented here, but it is assumed
	that HTTP URLs are supported (at least), and fetching errors are reported.
	This document does not specify how the format of each email part is
	determined, but it is assumed that MIME type and content would need to be
	analyzed.</t>

	<t>After accepting the draft, the Toolset uses the sender's email address to
	select the submitter identity (R57/b), checks the submission (R58/b), and
	posts the draft if the check is successful (R59/b). The submitter should
	be notified of the outcome of the draft submission via email (R60/b).
	Other requirements for the web interface (including requirements on submission
	preprocessing, draft validation, submitter authentication, draft posting,
	and notification) apply to the email interface.</t>

	<t>Therefore, a typical successful submission via email interface may
	result in the following exchange of messages ("T" is for "Toolset", "S" is
	for "submitter", and "A" is for "all authors and submitter"):

		<list style="hanging">
			<t hangText="   S-->T:">the draft version</t>
			<t hangText="   S&lt;--T:">a challenge to verify email access</t>
			<t hangText="   S-->T:">a response to the challenge</t>
			<t hangText="   A&lt;--T:">warnings and the receipt</t>
		</list>

	where the message containing the challenge may include warnings
	as well.</t>

	<t>When draft validation fails, the following emails may be exchanged:

		<list style="hanging">
			<t hangText="   S-->T:">the draft version</t>
			<t hangText="   S&lt;--T:">errors and receipt</t>
		</list>
	
	</t>

	<t>Email parts/attachments that are not recognized as draft formats are
	not considered as draft formats.  Such parts are ignored by the Toolset
	(R107/b), except that a warning is generated for each unrecognizable part
	containing more than whitespace (R108/b). These two requirements are meant
	to make the interface robust in the presence of email signatures and other
	parts outside of the submitter control.</t>

	<t>Hint: Toolset actions can be implemented to support email and web
	interfaces without code duplication.</t>

	<t>While both web and email interfaces allow for fast posting of valid
	drafts, there are significant differences between the two interfaces.
	Primary advantages of the email interface are:

	<list style="hanging">

		<t hangText="off-line mode:">A submitter can do all the manual work
		required to submit a draft while being disconnected from the network.
		The email client actually submits the draft when connectivity is
		regained.</t>

		<t hangText="poor connectivity:">Email systems are often better
		suited for automated transmission and re-transmission of emails when
		network connectivity is poor due to high packet loss ratios,
		transmission delays, and other problems.</t>

		<t hangText="convenience:">Some IETFers consider email interfaces
		as generally "more convenient".</t>

	</list></t>

	<t>Primary advantages of the web interface are:

	<list style="hanging">

		<t hangText="confirmation:">A submitter is given a chance to verify
		that automated extraction of meta-data produced reasonable results.
		Other useful confirmations are possible (e.g., "Are you sure you want
		to post a version of the draft that was updated 30 seconds ago by
		your co-author?").</t>

		<t hangText="validation:">A submitter can validate the draft without
		posting it.</t>

		<t hangText="quality:">Non-critical warnings may prompt the submitter
		to postpone posting to improve draft quality.</t>

		<t hangText="manual adjustments:">The submitter can adjust extracted
		meta-data and ease Secretariat work on manually posting an unusual
		draft.</t>

		<t hangText="meta-data:">The submitter can specify optional external
		meta-data (that cannot be extracted from the draft itself).  For
		example, an email address for draft discussion can be specified.</t>

		<t hangText="context help:">The web interface makes it easy to provide
		links to extra information about input fields, errors, posting
		options, deadlines, etc.</t>

		<t hangText="opaqueness:">Files submitted via the web interface are
		arguably less susceptible to various in-transit transformations and
		misinterpretation than emails.  Emails are often mutated by mail agents
		(e.g., automated disclaimers added by senders and extra line feeds
		added by recipients).</t>

		<t hangText="convenience:">Some IETFers consider web interfaces
		as generally "more convenient".</t>

	</list></t>

</section>

<section anchor="section-make-stages" title="Implementation stages">

	<t>This section defines the Toolset implementation stages or phases.  There are
	three consecutive stages, marked with letters "a", "b", or "c".  Earlier
	stage requirements must still be satisfied in later stages.  All
	requirements need to be interpreted and evaluated in the context of the
	current stage and the currently implemented features.  For example,
	requirement R68 applies to the first stage but refers to XML draft format
	that may not be supported until the second stage.  A correct interpretation
	of R68 until XML support is added is "it is an error to submit a draft
	without a plain text format".</t>

	<t>Unless otherwise noted, requirements listed in later stages may be
	covered in earlier stages, but do not have to be.  If the implementers decide
	to add some functionality from a future stage, they has to be very careful
	to satisfy all requirements related to that functionality.  Unfortunately,
	there is no reliable, pragmatic way to identify "all requirements" related
	to a given feature.</t>

	<t><list style="hanging">

		<t hangText="(a) Trial Stage:">Initial basic implementation to test
		major concepts and relieve the Secretariat from handling the most
		common submission case.  This stage focuses on plain text draft
		submission via the web interface.  The trial stage should take a
		dedicated professional about 45 calendar days to finish (i.e., to
		comply with all the listed requirements).</t>

		<t hangText="(b) Production Stage:">Support for all major features.
		Once this stage is completed, the Secretariat should only handle
		unusual draft submissions.  This stage should take about 100 calendar
		days to finish.  Gradual release of implemented features is possible
		and expected.</t>

		<t hangText="(c) Enhancement Stage:">A never-ending stage focusing on
		sophisticated features (e.g., draft interpretation or validation) that
		improve the overall quality of the Toolset.  This stage is documented
		primarily to highlight the overall direction of the Toolset; its
		requirements are often imprecise and many are expected to change.</t>

	</list></t>

	<t>Implementation experience is likely to result in changes of the Toolset
	requirements.  Such changes should be documented as a part of stage
	evaluation activities.</t>

</section>

<section anchor="section-testing" title="Testing">
	
	<t>Before letting the Toolset go live, thousands of posted drafts can be
	used to test the meta-data extraction algorithms.  Such testing can
	minimize the number of drafts being sent on for manual handling because of
	meta-data extraction failure.</t>

	<t>Other Toolset features may also be testable using posted drafts.  A
	simple pair of scripts can be used to test basic functionality of the web and
	email interfaces.</t>

	<t>Hint: The IESG may require test results before accepting the initial
	implementation.  If automated, the above approach can be used for
	regression testing as well.</t>

</section>

<section anchor="section-security" title="Security Considerations">

	<t>Removing humans from the draft submission and posting process (a.k.a. 
	automation) requires adding features to make the Toolset reliable in the
	presence of denial of service (DoS) attacks and attempts to corrupt the draft
	repository.  Ideally, the Toolset needs to resist both premeditated
	malicious actions and good-intent accidents.</t>

	<t>This document contains specific requirements to minimize the impact of DoS
	attacks (e.g., R97). The requirements are designed with the assumption
	that it is acceptable for the Toolset to block valid submissions during a
	DoS attack as long as the Toolset maintainers are notified and already posted
	drafts are not damaged.</t>

	<t>This document also contains many specific requirements related to
	detection of drafts violating IETF posting rules.  Those requirements help
	reduce the number of "bad" drafts posted by mistake but do not offer
	reliable protection from submitters with malicious intent:  Since
	automated tools do not truly understand drafts (and will not do so in the
	foreseeable future), it is technically possible to post a rogue draft
	violating IETF posting rules.  For example, a draft may contain abstract
	text that makes the IETF-approved IPR statements following the abstract
	meaningless or legally non-binding.</t>

	<t>Stronger submitter authentication may be required to deter malicious
	submitters.  The documented authentication mechanism (i.e., read access to
	one's email) is deemed appropriate for deployment of the first versions of the
	Toolset, under close Secretariat supervision.  Hint: to increase chances of
	detecting problems early enough, it may be a good idea to automatically
	inform a designated human of every posted submission (during initial
	deployment of the Toolset).</t>

</section>

<section anchor="section-iana" title="IANA Considerations">

	<t>None.</t>

</section>

<section anchor="section-compliance" title="Compliance">

	<t>A Toolset implementation is compliant with this specification if it
	satisfies all normative requirements (i.e., the phrases marked with "Rnnn"
	as defined in <xref target="section-terms" />). Compliance should be
	evaluated for each implementation stage as some requirements do not apply
	to some stages.</t>

	<t>The IESG evaluates implementations and interprets requirements as
	necessary.</t>

</section>

<appendix anchor="section-diff" title="Comparison with current procedures">

	<t>This section summarizes major differences between the draft submission
	approach currently in use by IETF and the proposed Toolset, including
	violations of the current IETF rules.</t>

	<t><list style="symbols">
	
		<t>The Toolset allows posting of XML and PDF draft formats.  The XML
		format is not currently accepted by the Secretariat, and legality of
		PDF acceptance by the Secretariat has been questioned.  XML sources
		should be accepted to enable IETF tools and participants to have
		access to raw draft meta-data and content.  They are also useful to the
		RFC Editor and, hence, it is a good idea to validate and get them
		"into the system" early.  The latter argument applies to PDF drafts as
		well, although the first Toolset versions are not expected to
		interpret PDF drafts.</t>

		<t>The Toolset may eventually generate HTML draft formats from XML
		draft sources (see R112).  Currently, IETF does not provide HTML draft
		formats -- the Secretariat does not accept HTML sources and no HTML is
		generated from accepted draft sources.  Note, however, that this
		document does not suggest that the Toolset should eventually accept
		drafts in HTML format.</t>

		<t>The Toolset defines "WGN draft" as a draft which name starts with
		"draft-ietf-". All other drafts are treated as individual drafts.
		Currently, an IETF WG does not have to follow a single WG draft naming
		format.  Thus, the 00 version of a draft that the WG considers a WG
		draft can be posted by the Toolset without WG consent.  Affected WGs
		would have to deal with the consequences of their decision not to use
		a common naming format.  The Tools team suggests that IETF requires
		WGs to name their drafts using a single format to minimize confusion.
		Hopefully, there are no humans named "Ietf" or, at least, none of them
		wants to auto-post individual drafts.</t>

		<t>For some drafts, the Toolset verifies that the submitter is
		"expected" (e.g., an author of the previous draft version or WG
		Chair).  Currently, the Secretariat does virtually no such
		verification, but an email submission interface and a human presence
		in the submission loop have apparently been sufficient to prevent
		massive automated attacks.  The change is needed to prevent a simple
		script from using the web interface to overwrite posted IETF drafts
		with junk.  Hopefully, the IETF will eventually have a decent
		authentication scheme making the submitter checks simpler, less rigid,
		and more transparent.</t>

		<t>The Toolset will automatically notify authors of posted drafts.
		Currently, neither the submitter nor any of the co-authors are
		explicitly notified when the draft is posted.  Notification is meant,
		in part, to allow co-authors to detect cases where their name is put on
		the authors list without permission.  Eventually, there will be a
		general IETF mechanism to allow 3rd parties such as ADs, chairs, or
		reviewers to register for notifications about draft postings.</t>

		<t>The Toolset may eventually accept compressed drafts (see R150).
		Currently, the Secretariat does not accept "zip" archives due to virus
		contamination concerns.  A proper implementation of the Toolset must
		address such concerns, while the Secretariat may still need to reject
		certain formats if they are submitted via the manual route.</t>

	</list></t>

</appendix>

<appendix anchor="section-acks" title="Acknowledgments">

	<t>The author gratefully acknowledges the contributions of Harald Tveit
	Alvestrand (Cisco), Brian E. Carpenter (IBM), Frank Ellermann, Bill Fenner
	(AT&amp;T), Barbara B.  Fuller (Foretec), Bruce Lilly, Henrik Levkowetz (Ericsson),
	Larry Masinter (Adobe), Keith Moore (University of Tennessee), Pekka
	Savola (Netcore), Henning Schulzrinne (Columbia University), and Stanislav
	Shalunov (Internet2).</t>

	<t>Special thanks to Marshall Rose for his xml2rfc tool.</t>

</appendix>

<appendix anchor="section-change-log" title="Change log">

	<t>RFC Editor Note: This section is to be removed during the final
	publication of the document.</t>

	<t>Internal WG revision control ID: $Id: id.xml,v 1.37 2005/04/05 20:54:09 rousskov Exp $</t>

	<t><list style="hanging">

	<t hangText="version 08"><list style="symbols">

		<t>Clarified that the secretariat does not intend to correct
		drafts submitted for manual posting.  If the draft needs
		tweaking to match submitter's intent, then the draft should be
		corrected and re-submitted.</t>

		<t>Renamed "lawful submitter" to "expected submitter" to avoid an
		incorrect implication that some kind of new legal checks are involved.
		Without an email interface and the Secretariat in the loop, the
		submitter must still be "expected" and authenticated to avoid script
		kiddies from overwriting posted IETF drafts with junk.</t>

		<t>Clarified that R68 and other multi-stage requirements with
		multi-stage features are to be interpreted by ignoring features that
		will be implemented at a later stage.  For example, "text or XML" means
		just "text" until XML support is added.</t>

		<t>Meta-data extraction: Explicitly explained why meta-data extraction
		from all draft formats is necessary.</t>

		<t>Meta-data extraction: be even more explicit that the validation
		procedure described in the following section may declare an extracted
		date invalid after taking into consideration current (i.e.,
		submission) time, IETF draft expiration rules, and other factors
		external to the draft.  The validation section already has the
		necessary formal rules.</t>

		<t>Added R152 to require public availability of sources instead of
		just hinting at it (Henrik Levkowetz). Explained that to meaningfully
		satisfy availability requirements, the Toolset cannot rely on
		unavailable software.</t>

		<t>Validation: added R153-R156 to require XML format and RFC 2629+ DTD
		validation.  During the first two implementation stages validation
		failures result in warnings (not fatal submission errors) to give
		IETFers (and IETF tools) enough time to get accustomed to the
		necessity of obeying XML standards.  This addition documents Tools team
		consensus reached in December 2004. It should have been documented
		earlier.</t>

		<t>Polished SourceForge "hosting" hint to clarify that we are
		suggesting to place Toolset sources there and not suggesting that the
		Toolset runs from SF servers.</t>

		<t>Added Testing section with a hint: use existing drafts (Brian E.
		Carpenter)</t>

		<t>Terminology: replaced "WG draft" with "WG-named draft" or "WGN
		draft" because not all WG-named drafts are WG drafts and we do not
		want to deal with the difference or to answer questions about the
		"wrong" terminology.</t>

		<t>Overall operation: explicitly stated that the Toolset has to be
		compatible with the Secretariat's tools for handling drafts with a
		hint that such compatibility can be achieved by appropriately
		implementing the Toolset or, in some cases, by modifying existing
		tools.</t>

		<t>Scope: Addressed concern that "there should also be provision for those
		who prefer to use troff/nroff" by explicitly stating that the set of
		requirements in this document is not comprehensive and other documents
		may add more requirements, including those related to other source
		formats.  The Tools team in not interested in adding troff/nroff
		support to the Toolset, especially in this document.</t>

		<t>Applied Last Call comments by Frank Ellermann.</t>

		<t>Added a hint: The Toolset implementers should not assume that draft
		formats generated by the same tool from the same source format have
		essentially the same content (Keith Moore).</t>

		<t>Updated Acknowledgments section.</t>

		<t>Did numerous minor language corrections.</t>

	</list></t>

	<t hangText="version 07"><list style="symbols">

		<t>Added R146, a requirement to generate a warning (and, eventually, a
		complete diff) when the produced plain text does not match the
		submitted one (even if meta-data matches).</t>

		<t>Added a stage-c suggestion R148 to add a smart fuzzy match function
		to compare submitted and generated-from-XML texts.  Hinted at using
		multiple xml2rfc versions to avoid warnings based on minor xml2rfc
		differences alone.</t>

		<t>Added R150 to eventually support submission of compressed drafts
		(via both web and email interfaces). Noted that the Secretariat
		currently does not accept "zip" archives.</t>

		<t>Be explicit that CGI is not somehow mandated for server-side
		implementations.  The implementor will pick the right technology given
		all the factors, including her experience and available tools (Henning
		Schulzrinne).</t>

		<t>Added "opaqueness" to the list of web interface advantages,
		inspired by the number of folks complaining about their drafts being
		mutated by the mail system while in-transit to the draft archive.</t>

	</list></t>

	<t hangText="version 06"><list style="symbols">

		<t>Instead of using a special section to map requirements to Toolset
		implementation stages, encode the stage with each requirement.  The
		reader now knows requirement "urgency" when reading the requirement
		itself, instead of having to search for the requirement code in the
		"Implementation stages" section.  Also, this makes it much easier to
		make sure that all requirements are "staged".</t>

		<t>Reflected Tools team concerns about HTML generation by placing that
		feature in the Enhancement implementation stage and explicitly
		mentioning that the feature may be gone before its implemented.</t>

		<t>Added R143/a to avoid mismatching formats: Drafts containing PDF or
		Postscript format must not be auto-posted until the Toolset can
		validate that their content matches plain text format.
		Documented rationale and future direction for format acceptance
		rules.</t>

		<t>Defined "WG draft" as a draft which name starts with "draft-ietf-".
		All other drafts are treated as individual drafts.</t>

		<t>Support (eventually) fetching draft data using an email-embedded
		URL (Stanislav Shalunov).</t>

		<t>Re-Resolved XXX37: support submitting drafts in main email "body",
		not just attachments (Stanislav Shalunov).</t>

		<t>Renamed draft submission date into draft version creation date and
		documented how creation and expiration dates are validated and the
		fact that they do not depend on submission time.</t>

		<t>Required implementation to be open-source (see R144/a).</t>

	</list></t>

	<t hangText="version 05"><list style="symbols">

		<t>Changed draft status to solicit editorial comments and indicate
		close-to-be-last-called state.</t>

		<t>Wrote "Security Considerations" section.</t>

		<t>Refer to ID-NITS document as an list of nits the Toolset should
		check for in R116. Hinted that Henrik's idnits tool can be used for
		actual checks.  More checking tools can be added eventually.</t>

		<t>Added more submission cancellation details.  Covered both explicit
		(via submitter action) and implicit (via timeout) cancellations
		(Stanislav Shalunov).</t>

		<t>Adjusted "Global" DoS threshold from 500 to 300 and added a "WG" DoS
		threshold of 30 draft versions per day (inspired by Stanislav
		Shalunov).</t>

		<t>Illustrated what emails may be exchanged when email interface is in
		use (Stanislav Shalunov).</t>

		<t>Replaced Validation page with validate-only flag on the Upload
		page.  This helps avoid multiple well-known locations for similar tools
		and might simplify the implementation.</t>

		<t>Resolved XXX12: Simply refer to the ID-NITS document for now.</t>

		<t>Resolved XXX13, XXX14: Placed "lawful submitter" check into the
		"External meta-data" section.  Documented what submitters the Toolset
		has to identify as lawful submitters (R119 - R122). Others would
		require manual checks by the Secretariat.</t>

		<t>Resolved XXX58: Documented what the Toolset must do if no approval
		exists at the time of the WG draft submission (R123, R124).</t>

		<t>Removed XXX64: PDF drafts are currently allowed to be posted; why
		they are allowed is not really important.</t>

		<t>Resolved XXX66: XML draft sources are currently not allowed to be
		posted.</t>

		<t>Resolved XXX68: use draft "version" instead of "revision".
		Guidelines to Authors of Internet-Drafts document uses both.  RFC 2026
		uses "version", which is also a more popular and arguably more precise
		term.</t>

	</list></t>

	<t hangText="version 04"><list style="symbols">

		<t>In Check action, documented once, early, and explicitly that
		errors make auto-posting impossible but should let the submitter to
		post manually.  Removed references to vague "action fails" statements
		(Henrik Levkowetz).</t>
		
		<t>HTTP error codes should not be used to indicate Check action errors
		because doing so would be a layering violation and, in some cases, may
		complicate both automated and manual interpretation of the Toolset
		responses.  Rewrote R7 to require use of computer-friendly tags in
		response body instead of HTTP status codes.</t>
		
		<t>Split "Preprocessing" subsection into "Preprocessing" and
		"Processing".  The former deals with XML include PIs while the latter
		talks about plain text and HTML generation (Henrik Levkowetz).</t>

		<t>Removed post-if-valid functionality (R78 - R80). Automation tools
		such as the ones that process e-mail-based submissions would benefit
		from having the knob, but they cannot use the Check action "as is",
		even with the knob, because there are other differences in the
		interface (e.g., submitter identification logic).  In other words,
		more knobs would be needed, which would defeat the purpose of reusing
		the same action.  When implementing web and e-mail interfaces, the
		Secretariat should still be able to reuse the base action code, of
		course.</t>

		<t>Defined compliance.</t>

		<t>Resolved XXX2: inform all authors that their draft was posted.
		Documented what information should go into the posting notification
		message/page.</t>

		<t>Resolved XXX16 and XXX57: R23 now says that an IETF IPR Statement
		and other boilerplate required for drafts according to RFC 3978 and
		3979 (or successors) must appear in the draft text (Henrik
		Levkowetz).</t>

		<t>Resolved XXX23 and XXX62: Manual Check page and actions used by
		secretariat do not verify submitter access to e-mail.  Last resort
		option should be as flexible and forgiving as possible.</t>

		<t>Resolved XXX26: it should be possible to respond to
		do-you-have-access-to-your-email message by e-mail, in addition
		to cut-and-pasting a URL.</t>

		<t>Resolved XXX30 and XXX31: R98 now requires that when submitter is
		not an author, Secretariat has to be involved.</t>

		<t>Resolved XXX37: E-mail submissions must use attachments, even
		if there is only one draft format.  This may help to keep the
		Toolset simple (no smarts needed to isolate true draft text from
		notes in the beginning of the e-mail and signatures).</t>

		<t>Resolved XXX38: do not require special Subject: lines for e-mail
		submission to keep the Toolset simple.  Since we verify submitter
		access to e-mail, no automated spam is likely to result in a draft
		submission.</t>

		<t>Resolved XXX43, XXX44, and XXX60: making an existing draft obsolete
		is out of this document scope.  This complex feature can be documented
		and integrated later to satisfy R33.</t>

		<t>Resolved XXX49 and XXX52: the first two implementation stages
		should take 30 and 90 days, provided a single full-time person
		effort.</t>

		<t>Resolved XXX50: specify approximate effort required to complete the
		first two implementation stages.  Let the IESG and the Secretariat use
		our estimates to agree on a specific implementation
		schedule/deadlines.</t>

		<t>Resolved XXX53: lack of author e-mail causes a warning,
		not error.  See R95 for rationale.</t>

		<t>Resolved XXX11: added page count and size of primary draft format
		to meta-data because this information is useful to some humans and
		tools, and because it is usually much easier and cheaper to get this
		information in static form (e.g., some draft meta-data XML file) than
		compute it dynamically.</t>

		<t>Resolved XXX15: always allow posting of a new revision but warn if
		new revision is not expected.  Moved the corresponding R21 from
		absolute to desired requirements.</t>

		<t>Resolved XXX33 and XXX59: prevent DoS attacks (absolute requirement
		R97) and warn about too-close submissions (desired feature R96).</t>

		<t>Defined draft version, format and primary format terms.</t>

	</list></t>

	<t hangText="2004/10/05"><list style="symbols">

		<t>Resolved XXX9: The Toolset should eventually offer a
		Validation-only page.</t>

		<t>Resolved XXX19: The Toolset should eventually provide the
		submitter with a way to preview the entire draft, with all
		formats.</t>

		<t>Resolved XXX40, XXX41, and XXX56: first use draft name to extract
		WG flag and WG name and hope for an IETF policy change.  If IETF policy
		on naming drafts does not change soon, add code to query some
		databases to map individual-looking drafts to WG names.</t>

		<t>Resolved XXX46 and XXX47: store and make public both original and
		preprocessed XML sources.  Most tools are likely to use preprocessed
		XML format.  Humans and some diff tools may prefer the original.</t>
		
	</list></t>

	<t hangText="2004/09/30"><list style="symbols">

		<t>Added requirements R72 and R73 to handle multiple submitters
		submitting the same draft and a single submitter submitting two drafts
		at the same time, addressing XXX27.</t>

		<t>Resolved XXX7: There seems to be no good reason to support
		cut-and-paste mode.  Submission via file upload interface should
		suffice.</t>

		<t>Semi-resolved XXX53: Toolset should accept PDFs because RFC Editor
		does.  Still need to check whether the Secretariat accepts PDFs legally
		today (XXX64).</t>

	</list></t>

	<t hangText="2004/09/29"><list style="symbols">

		<t>Clarified and polished the "Scope" section.</t>

		<t>Updated "State of this draft" to document approaching-last-call
		state of the draft and to solicit editorial-level feedback.</t>

	</list></t>

	<t hangText="2004/09/27"><list style="symbols">

		<t>Marked formal toolset requirements using a Rnnn notation to (a)
		document implementation schedule, and (b) make compliant
		implementation and compliance evaluation easier.</t>

		<t>Marked informal implementation hints with a "Hint:" tag, to avoid
		possible confusion with formal requirements.</t>

		<t>Started documenting implementation schedule.  For example, only
		plain text formats are interpreted during the first stage, then XML
		support is added, then other formats.  Meanwhile, un-interpreted
		formats are accepted and posted as is as long as plain text version
		validates.</t>

		<t>Added explicit requirements for managing abandoned submissions
		(Brian E. Carpenter)</t>

		<t>Plain text or XML formats are always required (Brian E. Carpenter)</t>

		<t>Added XXX55: Accepting PDFs is a change of current documented
		procedures? (Brian E. Carpenter)</t>

		<t>Added an optional "discussion address" to the external meta-data to
		help reviewers know where to send comments (inspired by Brian E.
		Carpenter suggestion; Brian wanted this to be a required extractable
		meta-data)</t>

		<t>Resolved XXX17, XXX28, and XXX29: Today, -00 WG drafts are approved
		by the Chair either before and after submission, depending on several
		factors.  Based on WG chairs feedback we still need to support both
		modes.  Thus, there is no policy change to talk about (and more work
		for the tool implementors to support both modes). Still need to add
		specific toolset requirements in case there is no approval
		recorded.</t>

		<t>Resolved XXX18, XXX32, and XXX45: We are going to move "request for
		publication" functionality to a separate [simple] tool that works with
		an existing/posted draft.</t>

		<t>Resolved XXX6: We are going to move the "withdraw this ID"
		functionality desired by Secretariat to a separate [simple] tool that
		works with an existing/posted draft.</t>

		<t>Added a "comment" field to the Adjust page so that the submitter can
		tell Secretariat why manual action is necessary.  This may both save
		time Secretariat and let them improve the toolset to minimize manual
		submissions (including fixing validation/extraction bugs).</t>

		<t>Added the Receipt page to the list of documented pages, for
		completeness.</t>

		<t>Emphasized that common sequence of pages to go through is as short
		as possible for a given set of features, and that "page" means
		"distinct dialog", not necessarily a "distinct URL". Some reviewers
		thought "there are too many pages".</t>

	</list></t>

	<t hangText="2004/09/20"><list style="symbols">

		<t>Added "E-mail Interface" section to document how key toolset
		functionality can be accessed via e-mail.  Compared e-mail and web
		interfaces. (Suggested by Pekka Savola)</t>

		<t>Split "WG ID" meta-data into "WG ID" and "WG Flag".  The former
		seems to be easy to extract from the draft name.  Noted that the latter
		(i.e., "this is a working group draft" status) cannot be inferred from
		some WG drafts (Pekka Savola).</t>

		<t>Added "List of drafts obsoleted by this draft" external meta-data
		item (Pekka Savola), but questioned whether we are ready to automate
		that.</t>

		<t>Added more conflicting opinions to XXX15 and proposed a
		solution.</t>

		<t>Added "Preprocessing" subsection to reflect the discussion on
		how/whether handle include PIs in XML draft sources.  Needs more
		discussion/work.</t>

		<t>Further clarified how an author can request the draft revision to
		be published (i.e., forwarded to the IESG or RFC Editor for review and
		publication as an RFC or BCP). It's just a checkbox on the web
		interface.  Raised doubts we can pull this off (see XXX45).</t>

		<t>Suggested in XXX2 that we would inform all authors but not seek
		their consent (except for the submitter) when posting their draft.</t>

	</list></t>

	<t hangText="2004/09/09"><list style="symbols">

		<t>Polished high-level page/action summary and replaced text-based
		steps diagram with something that looks more like a diagram.</t>

		<t>Added "Comparison with current procedures" section placeholder for
		summarizing what this draft improves/changes/violates.</t>

		<t>Frequent draft updates is not always a good thing (Henrik
		Levkowetz)</t>

		<t>Added ideas regarding frequent draft updates warnings (Stanislav
		Shalunov)</t>

		<t>Added "State of this draft" section to encourage review.</t>

	</list></t>

	<t hangText="2004/09/02"><list style="symbols">

		<t>Documented all major toolset pages and corresponding actions.</t>

	</list></t>

	<t hangText="2004/09/01"><list style="symbols">

		<t>Deleted all primary modes except for what used to be called
		"Posting Automation".  Focus on the latter and mention other
		modes as exceptions or side-effects.</t>

		<t>Changed draft outline and depth to describe specific submission
		steps and corresponding web pages rather than more general
		ideas/requirements.</t>

		<t>Assume, for now, that Chair authorization of WG draft work must
		exist for WG draft to be published.  This needs to be documented and
		perhaps relaxed to allow post-submission approvals.</t>

	</list></t>

	<t hangText="2004/08/30"><list style="symbols">

		<t>Use "toolset" instead of a less accurate "interfaces" in the draft
		title and throughout the text (Henrik Levkowetz)</t>

		<t>Use "post" instead of "publish"" in the draft title and throughout
		the text (Barbara B. Fuller and Larry Masinter)</t>

		<t>Nits, clarifications, data-points (Harald Tveit Alvestrand, Henrik
		Levkowetz, Larry Masinter, and Barbara B. Fuller for the
		Secretariat)</t>

	</list></t>

	<t hangText="2004/08/25"><list style="symbols">

		<t>Initial revision.</t>

	</list></t>

	</list></t>

</appendix>

</middle>

<back>

<references title='Normative References'>

	<?rfc include='reference.RFC.2629.xml' ?>
	<?rfc include='reference.RFC.3978.xml' ?>
	<?rfc include='reference.RFC.3979.xml' ?>

	<reference anchor="XML" target="http://www.w3.org/TR/1998/REC-xml-19980210">
		<front>
			<title>Extensible Markup Language (XML) 1.0</title>
			<author>
				<organization abbrev="W3C">World Wide Web Consortium</organization>
				<address>
					<postal>
						<street>MIT Laboratory for Computer Science</street>
						<street>545 Technology Square</street>
						<city>Cambridge</city> <region>MA</region> <code>02139</code>
						<country>US</country>
					</postal>
					<phone>+ 1 617 253 2613</phone>
					<facsimile>+ 1 617 258 5999</facsimile>
					<email>timbl@w3.org</email>
					<uri>http://www.w3c.org</uri>
				</address>
			</author>
			<date month="February" year="1998" />
		</front>
		<seriesInfo name="W3C" value="XML" />
	</reference>

</references>

<references title='Informative References'>

	<?rfc include='reference.I-D.mrose-writing-rfcs.xml' ?>

	<reference anchor='secretariat'>

		<front>
			<title>Private communication with the IETF Secretariat</title>
			<author fullname='IETF Secretariat'>
		    	<organization />
			</author>
			<date year='2004' />
		</front>

	</reference>

	<reference anchor='OSI'>

		<front>
			<title>Open Source Licenses Approved by the Open Source Initiative</title>
			<author fullname='Open Source Initiative'>
		    	<organization />
			</author>
			<date year='2004' />
		</front>

		<format type='HTML'
			target='http://http://www.opensource.org/licenses/index.php' />

	</reference>

</references>

</back>

</rfc>

<!-- Guidelines to Authors of Internet-Drafts 
     http://www.ietf.org/ietf/1id-guidelines.txt -->

--------------000600090402000505080603
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

_______________________________________________
Tools-team mailing list
Tools-team@ietf.org
https://www1.ietf.org/mailman/listinfo/tools-team

--------------000600090402000505080603--




From tools-team-bounces@ietf.org Mon Apr 18 19:17:02 2005
Received: from localhost.localdomain ([127.0.0.1] helo=megatron.ietf.org)
	by megatron.ietf.org with esmtp (Exim 4.32)
	id 1DNfUE-00011a-S3; Mon, 18 Apr 2005 19:17:02 -0400
Received: from odin.ietf.org ([132.151.1.176] helo=ietf.org)
	by megatron.ietf.org with esmtp (Exim 4.32) id 1DNf95-0005Np-4P
	for tools-team@megatron.ietf.org; Mon, 18 Apr 2005 18:55:11 -0400
Received: from ietf-mx.ietf.org (ietf-mx.ietf.org [132.151.6.1])
	by ietf.org (8.9.1a/8.9.1a) with ESMTP id SAA21213
	for <tools-team@ietf.org>; Mon, 18 Apr 2005 18:55:07 -0400 (EDT)
Received: from pne-smtpout1-sn2.hy.skanova.net ([81.228.8.83])
	by ietf-mx.ietf.org with esmtp (Exim 4.33) id 1DNfJt-0008DF-Mp
	for tools-team@ietf.org; Mon, 18 Apr 2005 19:06:26 -0400
Received: from shiraz.levkowetz.com (213.64.173.70) by
	pne-smtpout1-sn2.hy.skanova.net (7.1.026.7)
	id 41E3216700D5F502; Tue, 19 Apr 2005 00:54:46 +0200
Received: from localhost ([127.0.0.1])
	by shiraz.levkowetz.com with esmtp (Exim 4.50)
	id 1DNf8d-0002EF-Em; Tue, 19 Apr 2005 00:54:44 +0200
Message-ID: <42643AB2.2040708@levkowetz.com>
Date: Tue, 19 Apr 2005 00:54:42 +0200
From: Henrik Levkowetz <henrik@levkowetz.com>
User-Agent: Mozilla Thunderbird 1.0 (Macintosh/20041206)
X-Accept-Language: en-us, en
MIME-Version: 1.0
To: Alex Rousskov <rousskov@measurement-factory.com>
References: <4264102D.4030306@levkowetz.com>
	<opspf9ejowiz3etf0c9082f7@pail.measurement-factory.com>
In-Reply-To: <opspf9ejowiz3etf0c9082f7@pail.measurement-factory.com>
X-Enigmail-Version: 0.89.5.0
X-Enigmail-Supports: pgp-inline, pgp-mime
Content-Type: multipart/mixed; boundary="------------050703050808030903070802"
X-SA-Exim-Connect-IP: 127.0.0.1
X-SA-Exim-Mail-From: henrik@levkowetz.com
X-SA-Exim-Scanned: No (on shiraz.levkowetz.com);
	SAEximRunCond expanded to false
X-Spam-Score: 0.1 (/)
X-Scan-Signature: e4bc10b12db1e5294e2417a6f69c34ce
X-Mailman-Approved-At: Mon, 18 Apr 2005 19:17:00 -0400
Cc: IETF TOOLS <tools-team@ietf.org>
Subject: [Tools-team] Re: Language review of
 draft-ietf-tools-draft-submission-08; Section 8.4, WG ID
X-BeenThere: tools-team@ietf.org
X-Mailman-Version: 2.1.5
Precedence: list
List-Id: "The purpose of the TOOLS team is to provide IETF feedback and
	guidance during the development of software tools to support
	various parts of IETF activities." <tools-team.ietf.org>
List-Unsubscribe: <https://www1.ietf.org/mailman/listinfo/tools-team>,
	<mailto:tools-team-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www1.ietf.org/pipermail/tools-team>
List-Post: <mailto:tools-team@ietf.org>
List-Help: <mailto:tools-team-request@ietf.org?subject=help>
List-Subscribe: <https://www1.ietf.org/mailman/listinfo/tools-team>,
	<mailto:tools-team-request@ietf.org?subject=subscribe>
Sender: tools-team-bounces@ietf.org
Errors-To: tools-team-bounces@ietf.org

This is a multi-part message in MIME format.
--------------050703050808030903070802
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 7bit

Hi Alex,

On 2005-04-19 12:43 am Alex Rousskov said the following:
[...]
> Yes, the second example and the "Enhancement Stage" comment are both
> stale. They do not make sense with the current WGN draft definition.
> Let's remove them:
> 
>     WG ID: Working Group identifier.  WG ID value is empty for drafts
>        that are not WG-named drafts.  For example, "sieve" in
>        "draft-ietf-sieve-vacation-07" is a WG ID.
> 
> You can add a comment saying that the extraction is purely ID-syntax based
> and does not use a list of known IETF working groups, teams, and similar
> structures.

Ok, I used your text.  I didn't add the last comment you suggested, as
I'm afraid that it will be necessary to use a list of working groups, for
the few cases of WG names which have an embedded dash ( '-' ) ...

Enclosed are new xml and text files, and the diff at 
  http://ietf.levkowetz.com/drafts/tools/draft-submission/
has also been updated.

	Henrik





--------------050703050808030903070802
Content-Type: application/x-vnd.mozilla.maybe-text;
	name="ietf.levkowetz.com/drafts/tools/draft-submission/draft-ietf-tools-draft-submission-08.c.txt"
Content-Disposition: attachment;
	filename="ietf.levkowetz.com/drafts/tools/draft-submission/draft-ietf-tools-draft-submission-08.c.txt"
Content-Transfer-Encoding: base64

CgoKVG9vbHMgdGVhbSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIEEuIFJvdXNza292CkludGVybmV0LURyYWZ0ICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBUaGUgTWVhc3VyZW1lbnQgRmFjdG9yeQpFeHBpcmVzOiBPY3Rv
YmVyIDIxLCAyMDA1ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQXByaWwgMTks
IDIwMDUKCgogICAgICAgICAgIFJlcXVpcmVtZW50cyBmb3IgYW4gSUVURiBEcmFmdCBTdWJt
aXNzaW9uIFRvb2xzZXQKICAgICAgICAgICAgICAgICAgZHJhZnQtaWV0Zi10b29scy1kcmFm
dC1zdWJtaXNzaW9uLThiCgpTdGF0dXMgb2YgdGhpcyBNZW1vCgogICBCeSBzdWJtaXR0aW5n
IHRoaXMgSW50ZXJuZXQtRHJhZnQsIGVhY2ggYXV0aG9yIHJlcHJlc2VudHMgdGhhdCBhbnkK
ICAgYXBwbGljYWJsZSBwYXRlbnQgb3Igb3RoZXIgSVBSIGNsYWltcyBvZiB3aGljaCBoZSBv
ciBzaGUgaXMgYXdhcmUKICAgaGF2ZSBiZWVuIG9yIHdpbGwgYmUgZGlzY2xvc2VkLCBhbmQg
YW55IG9mIHdoaWNoIGhlIG9yIHNoZSBiZWNvbWVzCiAgIGF3YXJlIHdpbGwgYmUgZGlzY2xv
c2VkLCBpbiBhY2NvcmRhbmNlIHdpdGggU2VjdGlvbiA2IG9mIEJDUCA3OS4KCiAgIEludGVy
bmV0LURyYWZ0cyBhcmUgd29ya2luZyBkb2N1bWVudHMgb2YgdGhlIEludGVybmV0IEVuZ2lu
ZWVyaW5nCiAgIFRhc2sgRm9yY2UgKElFVEYpLCBpdHMgYXJlYXMsIGFuZCBpdHMgd29ya2lu
ZyBncm91cHMuICBOb3RlIHRoYXQKICAgb3RoZXIgZ3JvdXBzIG1heSBhbHNvIGRpc3RyaWJ1
dGUgd29ya2luZyBkb2N1bWVudHMgYXMgSW50ZXJuZXQtCiAgIERyYWZ0cy4KCiAgIEludGVy
bmV0LURyYWZ0cyBhcmUgZHJhZnQgZG9jdW1lbnRzIHZhbGlkIGZvciBhIG1heGltdW0gb2Yg
c2l4IG1vbnRocwogICBhbmQgbWF5IGJlIHVwZGF0ZWQsIHJlcGxhY2VkLCBvciBvYnNvbGV0
ZWQgYnkgb3RoZXIgZG9jdW1lbnRzIGF0IGFueQogICB0aW1lLiAgSXQgaXMgaW5hcHByb3By
aWF0ZSB0byB1c2UgSW50ZXJuZXQtRHJhZnRzIGFzIHJlZmVyZW5jZQogICBtYXRlcmlhbCBv
ciB0byBjaXRlIHRoZW0gb3RoZXIgdGhhbiBhcyAid29yayBpbiBwcm9ncmVzcy4iCgogICBU
aGUgbGlzdCBvZiBjdXJyZW50IEludGVybmV0LURyYWZ0cyBjYW4gYmUgYWNjZXNzZWQgYXQK
ICAgaHR0cDovL3d3dy5pZXRmLm9yZy9pZXRmLzFpZC1hYnN0cmFjdHMudHh0LgoKICAgVGhl
IGxpc3Qgb2YgSW50ZXJuZXQtRHJhZnQgU2hhZG93IERpcmVjdG9yaWVzIGNhbiBiZSBhY2Nl
c3NlZCBhdAogICBodHRwOi8vd3d3LmlldGYub3JnL3NoYWRvdy5odG1sLgoKICAgVGhpcyBJ
bnRlcm5ldC1EcmFmdCB3aWxsIGV4cGlyZSBvbiBPY3RvYmVyIDIxLCAyMDA1LgoKQ29weXJp
Z2h0IE5vdGljZQoKICAgQ29weXJpZ2h0IChDKSBUaGUgSW50ZXJuZXQgU29jaWV0eSAoMjAw
NSkuCgpBYnN0cmFjdAoKICAgVGhpcyBkb2N1bWVudCBzcGVjaWZpZXMgcmVxdWlyZW1lbnRz
IGZvciBhbiBJRVRGIHRvb2xzZXQgdG8KICAgZmFjaWxpdGF0ZSBJbnRlcm5ldC1EcmFmdCBz
dWJtaXNzaW9uLCB2YWxpZGF0aW9uLCBhbmQgcG9zdGluZy4KCgoKCgoKCgoKClJvdXNza292
ICAgICAgICAgICAgICAgIEV4cGlyZXMgT2N0b2JlciAyMSwgMjAwNSAgICAgICAgICAgICAg
ICBbUGFnZSAxXQoMCkludGVybmV0LURyYWZ0ICAgICBJRCBTdWJtaXNzaW9uIFRvb2xzZXQ6
IFJlcXVpcmVtZW50cyAgICAgICAgQXByaWwgMjAwNQoKClRhYmxlIG9mIENvbnRlbnRzCgog
ICAxLiAgSW50cm9kdWN0aW9uIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAu
IC4gLiAuIC4gLiAuIC4gIDMKICAgMi4gIFN0YXRlIG9mIHRoaXMgZHJhZnQgIC4gLiAuIC4g
LiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuICAzCiAgIDMuICBTY29wZSAgLiAu
IC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAg
MwogICA0LiAgTm90YXRpb24gYW5kIFRlcm1pbm9sb2d5IC4gLiAuIC4gLiAuIC4gLiAuIC4g
LiAuIC4gLiAuIC4gLiAuIC4gIDQKICAgNS4gIFN0YXR1cyBxdW8gLiAuIC4gLiAuIC4gLiAu
IC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuICA1CiAgIDYuICBPdmVyYWxs
IFRvb2xzZXQgb3BlcmF0aW9uICAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4g
LiAgNwogICA3LiAgVXBsb2FkIHBhZ2UgIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAu
IC4gLiAuIC4gLiAuIC4gLiAuIC4gMTAKICAgOC4gIENoZWNrIGFjdGlvbiAuIC4gLiAuIC4g
LiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIDEwCiAgICAgOC4xICAg
UHJlcHJvY2Vzc2luZyAgLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAu
IC4gLiAxMQogICAgIDguMiAgIFByb2Nlc3NpbmcgLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4g
LiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gMTIKICAgICA4LjMgICBTdG9yYWdlICAuIC4gLiAu
IC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIDEyCiAgICAgOC40
ICAgRXh0cmFjdGlvbiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4g
LiAuIC4gLiAxMgogICAgIDguNSAgIFZhbGlkYXRpb24gLiAuIC4gLiAuIC4gLiAuIC4gLiAu
IC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gMTQKICAgICAgIDguNS4xICAgQWJzb2x1dGUg
cmVxdWlyZW1lbnRzICAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIDE1CiAgICAg
ICA4LjUuMiAgIERlc2lyYWJsZSBmZWF0dXJlcyAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAu
IC4gLiAuIC4gLiAxNgogICAgICAgOC41LjMgICBEb1MgdGhyZXNob2xkcyAuIC4gLiAuIC4g
LiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gMTcKICAgICAgIDguNS40ICAgV0cgYXBw
cm92YWwgIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIDE3CiAg
IDkuICBDaGVjayBwYWdlIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4g
LiAuIC4gLiAuIC4gLiAxOAogICAgIDkuMSAgIEV4dGVybmFsIG1ldGEtZGF0YSAuIC4gLiAu
IC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gMTkKICAgMTAuICAgUG9zdCBOb3cg
YWN0aW9uICAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIDIw
CiAgICAgMTAuMSAgUmVjZWlwdCBwYWdlIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAu
IC4gLiAuIC4gLiAuIC4gLiAyMQogICAxMS4gICBBZGp1c3QgYWN0aW9uICAuIC4gLiAuIC4g
LiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gMjEKICAgMTIuICAgQWRqdXN0
IHBhZ2UgIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAu
IDIxCiAgIDEzLiAgIFBvc3QgTWFudWFsbHkgYWN0aW9uIC4gLiAuIC4gLiAuIC4gLiAuIC4g
LiAuIC4gLiAuIC4gLiAuIC4gLiAyMgogICAxNC4gICBSZWNlaXB0IHBhZ2UgLiAuIC4gLiAu
IC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gMjIKICAgMTUuICAgQnlw
YXNzaW5nIHRoZSBUb29sc2V0ICAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4g
LiAuIDIyCiAgIDE2LiAgIEVtYWlsIGludGVyZmFjZSAgLiAuIC4gLiAuIC4gLiAuIC4gLiAu
IC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAyMwogICAxNy4gICBJbXBsZW1lbnRhdGlvbiBzdGFn
ZXMgIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gMjYKICAgMTguICAg
VGVzdGluZyAgLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAu
IC4gLiAuIDI2CiAgIDE5LiAgIFNlY3VyaXR5IENvbnNpZGVyYXRpb25zICAuIC4gLiAuIC4g
LiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAyNwogICAyMC4gICBJQU5BIENvbnNpZGVyYXRp
b25zICAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gMjcKICAgMjEu
ICAgQ29tcGxpYW5jZSAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4g
LiAuIC4gLiAuIDI3CiAgIEEuICBDb21wYXJpc29uIHdpdGggY3VycmVudCBwcm9jZWR1cmVz
IC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAyOAogICBCLiAgQWNrbm93bGVkZ21lbnRz
ICAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gMjkKICAg
Qy4gIENoYW5nZSBsb2cgLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAu
IC4gLiAuIC4gLiAuIDI5CiAgIDIyLiAgIFJlZmVyZW5jZXMgLiAuIC4gLiAuIC4gLiAuIC4g
LiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAzOQogICAgIDIyLjEgIE5vcm1hdGl2
ZSBSZWZlcmVuY2VzIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gMzkK
ICAgICAyMi4yICBJbmZvcm1hdGl2ZSBSZWZlcmVuY2VzIC4gLiAuIC4gLiAuIC4gLiAuIC4g
LiAuIC4gLiAuIC4gLiAuIDM5CiAgICAgICBBdXRob3IncyBBZGRyZXNzIC4gLiAuIC4gLiAu
IC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiA0MAogICAgICAgSW50ZWxsZWN0
dWFsIFByb3BlcnR5IGFuZCBDb3B5cmlnaHQgU3RhdGVtZW50cyAuIC4gLiAuIC4gLiAuIC4g
NDEKCgoKCgoKCgoKUm91c3Nrb3YgICAgICAgICAgICAgICAgRXhwaXJlcyBPY3RvYmVyIDIx
LCAyMDA1ICAgICAgICAgICAgICAgIFtQYWdlIDJdCgwKSW50ZXJuZXQtRHJhZnQgICAgIElE
IFN1Ym1pc3Npb24gVG9vbHNldDogUmVxdWlyZW1lbnRzICAgICAgICBBcHJpbCAyMDA1CgoK
MS4gIEludHJvZHVjdGlvbgoKICAgUHVibGljIEludGVybmV0LURyYWZ0cyBhcmUgdGhlIHBy
aW1hcnkgbWVhbnMgb2Ygc3RydWN0dXJlZAogICBjb21tdW5pY2F0aW9uIHdpdGhpbiB0aGUg
SUVURi4gIEN1cnJlbnQgSW50ZXJuZXQtRHJhZnQgc3VibWlzc2lvbiBhbmQKICAgcG9zdGlu
ZyBtZWNoYW5pc21zIGhpbmRlciBlZmZpY2llbnQgYW5kIHRpbWVseSBjb21tdW5pY2F0aW9u
IHdoaWxlCiAgIGNyZWF0aW5nIGFuIHVubmVjZXNzYXJ5IGxvYWQgb24gdGhlIElFVEYgU2Vj
cmV0YXJpYXQuICBUaGUgSUVURiBUb29scwogICB0ZWFtIHJlY29tbWVuZHMgZm9ybWFsaXph
dGlvbiBhbmQgYXV0b21hdGlvbiBvZiB0aGUgY3VycmVudAogICBtZWNoYW5pc21zLiAgVGhp
cyBkb2N1bWVudCBjb250YWlucyBzcGVjaWZpYyBhdXRvbWF0aW9uIHJlcXVpcmVtZW50cy4K
CiAgIFRoZSBJRVRGIFNlY3JldGFyaWF0IGFuZCBtYW55IElFVEYgcGFydGljaXBhbnRzIGhh
dmUgbG9uZyBiZWVuCiAgIHByb3BvbmVudHMgb2YgYXV0b21hdGlvbi4gIFRoaXMgZG9jdW1l
bnQgYXR0ZW1wdHMgdG8gcmVmbGVjdCB0aGVpcgogICBrbm93biBuZWVkcyBhbmQgd2lzaGVz
LCBhcyBpbnRlcnByZXRlZCBieSB0aGUgVG9vbHMgdGVhbS4KCjIuICBTdGF0ZSBvZiB0aGlz
IGRyYWZ0CgogICBUaGlzIGRyYWZ0IHZlcnNpb24gYXR0ZW1wdHMgdG8gcmVzb2x2ZSBhbGwg
a25vd24gaXNzdWVzIGFuZCBhZGRyZXNzCiAgIGFsbCBMYXN0IENhbGwgY29tbWVudHMgcmVj
ZWl2ZWQgYnkgMjAwNS8wNC8xMi4gIFRoZSBUb29scyB0ZWFtIG1heQogICBhc2sgdGhlIElF
U0cgdG8gaXNzdWUgYW5vdGhlciBMYXN0IENhbGwgZm9yIGl0LgoKICAgSWYgeW91IGRlY2lk
ZSB0byByZXZpZXcgdGhlIGRyYWZ0IGF0IHRoaXMgbGF0ZSBzdGFnZSwgcGxlYXNlIGxpbWl0
CiAgIHlvdXIgY29tbWVudHMgdG8gY3JpdGljYWwgaXNzdWVzLiAgUGxlYXNlIGNoZWNrIHRo
ZSBDaGFuZ2UgbG9nIGluCiAgIEFwcGVuZGl4IEMgYmVmb3JlIHByb3Bvc2luZyBjaGFuZ2Vz
IGFzIGl0IGlzIHBvc3NpYmxlIHRoYXQgeW91ciBpZGVhCiAgIGhhcyBhbHJlYWR5IGJlZW4g
ZGlzY3Vzc2VkLiAgUGxlYXNlIHBvc3QgY29tbWVudHMgb24gdGhlCiAgIHRvb2xzLWRpc2N1
c3NAaWV0Zi5vcmcgbWFpbGluZyBsaXN0IG9yIGVtYWlsIHRoZW0gZGlyZWN0bHkgdG8gdGhl
CiAgIGF1dGhvci4KCiAgIFJGQyBFZGl0b3IgTm90ZTogUGxlYXNlIHJlbW92ZSB0aGlzIHNl
Y3Rpb24gZm9yIHRoZSBmaW5hbCBwdWJsaWNhdGlvbgogICBvZiB0aGUgZG9jdW1lbnQuICBJ
dCBoYXMgYmVlbiBpbnNwaXJlZCBieQogICBkcmFmdC1yb3Vzc2tvdi1uZXd0cmstaWQtc3Rh
dGUgYW5kIHJlbGF0ZWQgTkVXVFJLIFdHIGRpc2N1c3Npb25zLgoKMy4gIFNjb3BlCgogICBU
aGUgRHJhZnQgU3VibWlzc2lvbiBUb29sc2V0IGRpc2N1c3NlZCBpbiB0aGlzIGRvY3VtZW50
IGlzIGFib3V0CiAgIGdldHRpbmcgYSBzaW5nbGUgbmV3IHZlcnNpb24gb2YgYW4gSW50ZXJu
ZXQtRHJhZnQgZnJvbSBhbiBJRVRGCiAgIHBhcnRpY2lwYW50IHRvIHRoZSBJRVRGIGRyYWZ0
IHJlcG9zaXRvcnkuICBBIHNpbmdsZSBkcmFmdCB2ZXJzaW9uIG1heQogICBpbmNsdWRlIHNl
dmVyYWwgZm9ybWF0cywgYW5kIGRlYWxpbmcgd2l0aCB0aG9zZSBmb3JtYXRzIGlzIGluIHNj
b3BlCiAgIGZvciB0aGUgVG9vbHNldC4gIERlZmluaXRpb24gYW5kIHNvdXJjZXMgb2YgZHJh
ZnQgbWV0YS1pbmZvcm1hdGlvbgogICAodG8gYmUgdXNlZCBpbiBTZWNyZXRhcmlhdCBkYXRh
YmFzZXMgYW5kIGVsc2V3aGVyZSkgYXJlIGluIHNjb3BlLgogICBTdWJtaXR0ZXIgYXV0aGVu
dGljYXRpb24gYW5kIHN1Ym1pc3Npb24gYXV0aG9yaXphdGlvbiBpcyBpbiBzY29wZS4KCiAg
IERyYWZ0IHBvc3RpbmcgbWF5IHJlc3VsdCBpbiB2YXJpb3VzIG5vdGlmaWNhdGlvbnMgc2Vu
dCB0byBpbnRlcmVzdGVkCiAgIHBhcnRpZXMuICBXaGlsZSB0aGlzIGRvY3VtZW50IHJlY29t
bWVuZHMgYSBzdWJzZXQgb2Ygbm90aWZpY2F0aW9uCiAgIHRhcmdldHMsIGRldGFpbHMgb2Yg
bm90aWZpY2F0aW9ucyBhcmUgb3V0IG9mIHNjb3BlLgoKICAgQ3JlYXRpb24gb2YgbmV3IGRy
YWZ0cyBvciBuZXcgZHJhZnQgdmVyc2lvbnMgYXMgd2VsbCBhcyBtYW5pcHVsYXRpb24sCiAg
IHZpc3VhbGl6YXRpb24sIGFuZCBpbnRlcmFjdGlvbiB3aXRoIHRoZSBkcmFmdHMgYWxyZWFk
eSBpbiB0aGUKICAgcmVwb3NpdG9yeSBhcmUgb3V0IG9mIHNjb3BlLiAgRHJhZnQgZXhwaXJh
dGlvbiBhbmQgYXJjaGl2aW5nIG9mIG9sZAogICBkcmFmdCB2ZXJzaW9ucyBhcmUgb3V0IG9m
IHNjb3BlLgoKCgpSb3Vzc2tvdiAgICAgICAgICAgICAgICBFeHBpcmVzIE9jdG9iZXIgMjEs
IDIwMDUgICAgICAgICAgICAgICAgW1BhZ2UgM10KDApJbnRlcm5ldC1EcmFmdCAgICAgSUQg
U3VibWlzc2lvbiBUb29sc2V0OiBSZXF1aXJlbWVudHMgICAgICAgIEFwcmlsIDIwMDUKCgog
ICBUaGUgc2V0IG9mIHJlcXVpcmVtZW50cyBpbiB0aGlzIGRvY3VtZW50IGlzIG5vdCBtZWFu
dCB0byBiZQogICBjb21wcmVoZW5zaXZlIG9yIGZpbmFsLiAgT3RoZXIgSUVURiBkb2N1bWVu
dHMgb3IgcHJvY2VkdXJlcyBtYXkKICAgcmVxdWlyZSBhZGRpdGlvbmFsIGZ1bmN0aW9uYWxp
dHkgZnJvbSB0aGUgVG9vbHNldC4gIEZvciBleGFtcGxlLCBpdAogICBpcyBwb3NzaWJsZSB0
aGF0IHRoZSBUb29sc2V0IHdpbGwgYmUgcmVxdWlyZWQgdG8gaGFuZGxlIGRyYWZ0IHNvdXJj
ZQogICBmb3JtYXRzIG90aGVyIHRoYW4gcGxhaW4gdGV4dCBhbmQgWE1MLgoKNC4gIE5vdGF0
aW9uIGFuZCBUZXJtaW5vbG9neQoKICAgVGhlIGZvbGxvd2luZyB0ZXJtcyBhcmUgdG8gYmUg
aW50ZXJwcmV0ZWQgYWNjb3JkaW5nIHRvIHRoZWlyCiAgIGRlZmluaXRpb25zIGJlbG93LgoK
ICAgcG9zdGVkIGRyYWZ0OiBBIGRyYWZ0IGFjY2VwdGVkIGludG8gdGhlIHB1YmxpYyBJRVRG
IGRyYWZ0IHJlcG9zaXRvcnkKICAgICAgYW5kLCBoZW5jZSwgcHVibGljbHkgYXZhaWxhYmxl
IGZyb20gdGhlIElFVEYgd2ViIHNpdGUuICBQb3N0aW5nIG9mCiAgICAgIGEgZHJhZnQgZG9l
cyBub3QgaW1wbHkgYW55IElFVEYgb3IgSUVTRyByZXZpZXcgYW5kIGVuZG9yc2VtZW50LgoK
ICAgZHJhZnQgdmVyc2lvbjogQSBtZWFudC10by1iZS1wdWJsaWMgc25hcHNob3Qgb2YgYW4g
SW50ZXJuZXQtRHJhZnQKICAgICAgd2l0aCBhIG1lYW50LXRvLWJlLXVuaXF1ZSB2ZXJzaW9u
IG51bWJlci4gIEFsc28ga25vd24gYXMgImRyYWZ0CiAgICAgIHJldmlzaW9uIi4KCiAgIGRy
YWZ0IGZvcm1hdDogQW55IGRyYWZ0IHNvdXJjZSBvciBwcmVzZW50YXRpb24gZm9ybWF0LCBp
bmNsdWRpbmcKICAgICAgb3JpZ2luYWwgYW5kIHByZXByb2Nlc3NlZCBYTUwsIG9yaWdpbmFs
IG9yIGdlbmVyYXRlZCBwbGFpbiB0ZXh0IGFzCiAgICAgIHdlbGwgYXMgUERGLCBQb3N0U2Ny
aXB0LCBhbmQgSFRNTCBmb3JtYXRzLgoKICAgcHJpbWFyeSBkcmFmdCBmb3JtYXQ6IFRoZSBm
aXJzdCBhdmFpbGFibGUgZHJhZnQgZm9ybWF0IGZyb20gdGhlCiAgICAgIGZvbGxvd2luZyBs
aXN0OiBwbGFpbiB0ZXh0LCBQREYsIFBvc3RTY3JpcHQsIG9yIFhNTC4KCiAgIFdHLW5hbWVk
IGRyYWZ0OiBBIGRyYWZ0IGZvciB3aGljaCBpZGVudGlmaWVyIChhLmsuYS4gZmlsZW5hbWUp
IGlzCiAgICAgIGtub3duIGFuZCBzdGFydHMgd2l0aCAiZHJhZnQtaWV0Zi0iLiAgQWJicmV2
aWF0ZWQgYXMgIldHTiBkcmFmdCIuCiAgICAgIEV4Y2VwdGlvbnMgbm90d2l0aHN0YW5kaW5n
LCBXRy1uYW1lZCBkcmFmdHMgYXJlIHVzdWFsbHkgY29udHJvbGxlZAogICAgICBieSBJRVRG
IHdvcmtpbmcgZ3JvdXBzIGFuZCB2aWNlIHZlcnNhLiAgVGhlIGhhbmRsaW5nIG9mIHN1Y2gK
ICAgICAgbmFtaW5nIGV4Y2VwdGlvbnMgaXMgb3V0c2lkZSBvZiB0aGlzIGRvY3VtZW50IHNj
b3BlLgoKICAgaW5kaXZpZHVhbCBkcmFmdDogQSBkcmFmdCBvdGhlciB0aGFuIGEgV0dOIGRy
YWZ0LgoKICAgc3VibWl0dGVyOiBBIGh1bWFuIG9yIHNvZnR3YXJlIGFnZW50IGluaXRpYXRp
bmcgc3VibWlzc2lvbiBvZiBhbgogICAgICBJbnRlcm5ldC1EcmFmdCB2ZXJzaW9uIGZvciB2
YWxpZGF0aW9uIG9yIHBvc3RpbmcuICBJbiBzb21lIGNhc2VzLAogICAgICB0aGUgU2VjcmV0
YXJpYXQgc3RhZmYgZG9lcyB0aGUgYWN0dWFsIHN1Ym1pc3Npb24sIGJ1dCBhbHdheXMgb24K
ICAgICAgYmVoYWxmIG9mIGEgc3VibWl0dGVyLiAgSW4gc29tZSBjYXNlcyAoaW5jbHVkaW5n
IGJ1dCBub3QgbGltaXRlZAogICAgICB0byBtYWxpY2lvdXMgYXR0YWNrcyksIHRoZSBzdWJt
aXR0ZXIgaXMgbm90IHRoZSBkcmFmdCBhdXRob3IuCgogICBleHBlY3RlZCBzdWJtaXR0ZXI6
IEEgc3VibWl0dGVyIHRoYXQgaXMgYXV0aG9yaXplZCBieSBJRVRGIHJ1bGVzIHRvCiAgICAg
IHBvc3QgYSBnaXZlbiBkcmFmdC4gIFRoaXMgaW5jbHVkZXMgYSBkcmFmdCBhdXRob3Igb3Ig
ZWRpdG9yCiAgICAgIChsaXN0ZWQgaW4gdGhlIGRyYWZ0IHRleHQpLCBhIGNvcnJlc3BvbmRp
bmcgV0cgQ2hhaXIsIG9yIGFuIElFU0cKICAgICAgbWVtYmVyLgoKCgoKCgoKUm91c3Nrb3Yg
ICAgICAgICAgICAgICAgRXhwaXJlcyBPY3RvYmVyIDIxLCAyMDA1ICAgICAgICAgICAgICAg
IFtQYWdlIDRdCgwKSW50ZXJuZXQtRHJhZnQgICAgIElEIFN1Ym1pc3Npb24gVG9vbHNldDog
UmVxdWlyZW1lbnRzICAgICAgICBBcHJpbCAyMDA1CgoKICAgYXV0aG9yaXplZCBzdWJtaXR0
ZXI6IEFuIGV4cGVjdGVkIHN1Ym1pdHRlciBhdXRoZW50aWNhdGVkIGJ5IHRoZQogICAgICBU
b29sc2V0LiAgQXV0aGVudGljYXRpb24gaXMgaW5pdGlhbGx5IGxpbWl0ZWQgdG8gdmVyaWZ5
aW5nCiAgICAgIHN1Ym1pdHRlciBhY2Nlc3MgdG8gc3VibWl0dGVyJ3MgZW1haWwgYWRkcmVz
cy4KCiAgIGltbWVkaWF0ZWx5OiBXaXRob3V0IGh1bWFuIGludGVyYWN0aW9uIG9yIGFydGlm
aWNpYWwgc29mdHdhcmUgZGVsYXlzCiAgICAgIGFuZCB3aXRoaW4gYSBmZXcgc2Vjb25kcy4K
CiAgIFRoZSBUb29sc2V0IGlzIHNwZWNpZmllZCB1c2luZyBhIHNldCBvZiBub3JtYXRpdmUg
cmVxdWlyZW1lbnRzLgogICBUaGVzZSByZXF1aXJlbWVudHMgYXJlIEVuZ2xpc2ggcGhyYXNl
cyBlbmRpbmcgd2l0aCBhbiAiKFJubm4vcykiCiAgIGluZGljYXRpb24sIHdoZXJlICJubm4i
IGlzIGEgdW5pcXVlIHJlcXVpcmVtZW50IG51bWJlciwgYW5kICJzIiBpcyBhCiAgIHNpbmds
ZSBsZXR0ZXIgY29kZSAoImEiLCAiYiIsIG9yICJjIikgc3BlY2lmeWluZyB0aGUgaW1wbGVt
ZW50YXRpb24KICAgc3RhZ2UgZm9yIHRoZSByZXF1aXJlbWVudC4gIEltcGxlbWVudGF0aW9u
IHN0YWdlcyBhcmUgZG9jdW1lbnRlZCBpbgogICBTZWN0aW9uIDE3LgoKICAgVGhpcyBkb2N1
bWVudCBzcGVjaWZpZXMgdGhlIGludGVyZmFjZSBhbmQgZnVuY3Rpb25hbGl0eSBvZiB0aGUK
ICAgVG9vbHNldCwgbm90IHRoZSBkZXRhaWxzIG9mIGEgVG9vbHNldCBpbXBsZW1lbnRhdGlv
bi4gIEhvd2V2ZXIsCiAgIGltcGxlbWVudGF0aW9uIGhpbnRzIG9yIGV4YW1wbGVzIGFyZSBv
ZnRlbiB1c2VmdWwuICBUbyBhdm9pZCBtaXh1cAogICB3aXRoIFRvb2xzZXQgcmVxdWlyZW1l
bnRzLCBzdWNoIGhpbnRzIGFuZCBleGFtcGxlcyBhcmUgb2Z0ZW4gbWFya2VkCiAgIHdpdGgg
YSAiSGludDoiIHByZWZpeC4gIEltcGxlbWVudGF0aW9uIGhpbnRzIGRvIG5vdCBjYXJyeSBh
bnkKICAgbm9ybWF0aXZlIGZvcmNlLCBhbmQgYSBkaWZmZXJlbnQgaW1wbGVtZW50YXRpb24g
bWF5IGJlIHRoZSBiZXN0CiAgIGNob2ljZS4KCjUuICBTdGF0dXMgcXVvCgogICBUaGlzIHNl
Y3Rpb24gc3VtbWFyaXplcyB0aGUgcHJvY2VzcyBmb3IgZHJhZnQgc3VibWlzc2lvbiBhbmQg
cG9zdGluZwogICBhcyBpdCBleGlzdHMgYXQgdGhlIHRpbWUgb2Ygd3JpdGluZy4KCiAgIFRv
IGdldCBhbiBJbnRlcm5ldC1EcmFmdCBwb3N0ZWQgb24gdGhlIElFVEYgd2ViIHNpdGUsIGFu
IElFVEYKICAgcGFydGljaXBhbnQgZW1haWxzIHRoZSBkcmFmdCB0ZXh0IHRvIHRoZSBJRVRG
IFNlY3JldGFyaWF0LCBhbG9uZyB3aXRoCiAgIGFuIGluZm9ybWFsIG5vdGUgYXNraW5nIHRo
ZSBTZWNyZXRhcmlhdCB0byBwb3N0IHRoZSBkcmFmdC4KICAgU2VjcmV0YXJpYXQgc3RhZmYg
cmVhZHMgdGhlIG5vdGUsIHJldmlld3MgdGhlIGRyYWZ0IGFjY29yZGluZyB0byBhCiAgIGNo
ZWNrbGlzdCwgYW5kIHRoZW4gYXBwcm92ZXMgb3IgcmVqZWN0cyB0aGUgc3VibWlzc2lvbi4g
IERyYWZ0CiAgIGFwcHJvdmFsIHRyaWdnZXJzIHRoZSBjb3JyZXNwb25kaW5nIGFubm91bmNl
bWVudCB0byBiZSBzZW50IHRvCiAgIGFwcHJvcHJpYXRlIElFVEYgbWFpbGluZyBsaXN0cy4g
IEV2ZXJ5IDQgaG91cnMsIGFwcHJvdmVkIGRyYWZ0cyBhcmUKICAgYXV0b21hdGljYWxseSBj
b3BpZWQgdG8gdGhlIElFVEYgZHJhZnRzIHJlcG9zaXRvcnkgYW5kIGJlY29tZQogICBhdmFp
bGFibGUgb24gdGhlIElFVEYgd2ViIHNpdGUuCgogICBDb2xsZWN0aXZlbHksIElFVEYgcGFy
dGljaXBhbnRzIHN1Ym1pdCB0aG91c2FuZHMgb2YgSW50ZXJuZXQtRHJhZnRzCiAgIHBlciB5
ZWFyIChpbiB0aGUgeWVhciAyMDAwLCBhYm91dCB0aHJlZSB0aG91c2FuZCBkcmFmdHMgd2Vy
ZQogICBzdWJtaXR0ZWQ7IDIwMDI6IDVrOyAyMDA0OiA3ayBbc2VjcmV0YXJpYXRdKS4gIEFi
b3V0IDMwLTUwJSBvZiBwb3N0ZWQKICAgZHJhZnRzIGFyZSBXRy1uYW1lZCBkcmFmdHMgKGFt
b25nIHNvbWUgMiwxMDAgZHJhZnRzLCB0aGVyZSB3ZXJlIGFib3V0CiAgIDM4MCBuZXcgYW5k
IDI5MCB1cGRhdGVkIFdHTiBkcmFmdHMgcG9zdGVkIGluIDIwMDMpLiAgV2hpbGUgbm8KICAg
cmVqZWN0aW9uIHN0YXRpc3RpY3MgaXMgYXZhaWxhYmxlLCB0aGUgdmFzdCBtYWpvcml0eSBv
ZiBzdWJtaXR0ZWQKICAgZHJhZnRzIGFyZSBhcHByb3ZlZCBieSB0aGUgU2VjcmV0YXJpYXQg
Zm9yIHBvc3RpbmcuCgogICBJdCB1c3VhbGx5IHRha2VzIHRoZSBTZWNyZXRhcmlhdCBhIGZl
dyBtaW51dGVzIHRvIHJldmlldyBhIGdpdmVuCiAgIGRyYWZ0LiAgSG93ZXZlciwgc2luY2Ug
dGhlIFNlY3JldGFyaWF0IHN0YWZmIGRvZXMgbm90IHdvcmsgMjQvNywgZG9lcwogICBub3Qg
d29yayBpbiBhbGwgdGltZSB6b25lcywgaGFzIG90aGVyIHJlc3BvbnNpYmlsaXRpZXMsIGFu
ZCBzaW5jZQoKCgpSb3Vzc2tvdiAgICAgICAgICAgICAgICBFeHBpcmVzIE9jdG9iZXIgMjEs
IDIwMDUgICAgICAgICAgICAgICAgW1BhZ2UgNV0KDApJbnRlcm5ldC1EcmFmdCAgICAgSUQg
U3VibWlzc2lvbiBUb29sc2V0OiBSZXF1aXJlbWVudHMgICAgICAgIEFwcmlsIDIwMDUKCgog
ICBhcHByb3ZlZCBkcmFmdHMgYXJlIHBvc3RlZCBpbiBiYXRjaGVzIGV2ZXJ5IDQgaG91cnMs
IGl0IG1heSB0YWtlIGZyb20KICAgc2V2ZXJhbCBob3VycyB0byBzZXZlcmFsIGRheXMgdG8g
Z2V0IGEgZHJhZnQgcG9zdGVkLiAgRHVlIHRvIG11Y2gKICAgaGlnaGVyIGRlbWFuZCBhbmQg
Zml4ZWQgcHJvY2Vzc2luZyBjYXBhY2l0eSwgcG9zdGluZ3MgZHVyaW5nIHRoZSBsYXN0CiAg
IHdlZWtzIGJlZm9yZSBJRVRGIGZhY2UtdG8tZmFjZSBtZWV0aW5ncyB0YWtlIG11Y2ggbG9u
Z2VyLCBjcmVhdGluZyBhCiAgIGxvbmcgcXVldWUgb2YgdW5wcm9jZXNzZWQgZHJhZnRzIHRo
YXQgYXJlIHRoZW4gYW5ub3VuY2VkIG5lYXJseQogICBzaW11bHRhbmVvdXNseS4KCiAgIFRv
IGdpdmUgSUVURiBmYWNlLXRvLWZhY2UgbWVldGluZyBwYXJ0aWNpcGFudHMgdGltZSB0byBy
ZXZpZXcKICAgcmVsZXZhbnQgZG9jdW1lbnRzLCB0aGUgU2VjcmV0YXJpYXQgZG9lcyBub3Qg
YWNjZXB0IEludGVybmV0LURyYWZ0CiAgIHN1Ym1pc3Npb25zIGNsb3NlIHRvIElFVEYgbWVl
dGluZ3MgKHJlZ2FyZGxlc3Mgb2Ygd2hldGhlciBhIGRyYWZ0IGlzCiAgIHJlbGV2YW50IHRv
IHRoZSB1cGNvbWluZyBtZWV0aW5nIG9yIG5vdCkuCgogICBNYW55IFdvcmtpbmcgR3JvdXBz
IGhhdmUgY29tZSB1cCB3aXRoIGFkIGhvYyBzb2x1dGlvbnMgdG8gY29wZSB3aXRoCiAgIHBv
c3RpbmcgZGVsYXlzLiAgRm9yIGV4YW1wbGUsIG1hbnkgZHJhZnQgc25hcHNob3RzIGFyZSAi
dGVtcG9yYXJpbHkiCiAgIHB1Ymxpc2hlZCBvbiBwZXJzb25hbCB3ZWIgc2l0ZXMgb3Igc2Vu
dCAoY29tcGxldGVseSBvciBpbiBwYXJ0KSB0bwogICB0aGUgZ3JvdXAgbGlzdC4gIEFsdGVy
bmF0aXZlIG1lYW5zIG9mIHB1YmxpY2F0aW9uIG1heSBlZmZlY3RpdmVseQogICByZXBsYWNl
IG9mZmljaWFsIElFVEYgaW50ZXJmYWNlcywgd2l0aCBvbmx5IGEgZmV3IG1ham9yIGRyYWZ0
CiAgIHJldmlzaW9ucyBlbmRpbmcgdXAgcG9zdGVkIG9uIHRoZSBJRVRGIHdlYiBzaXRlLgoK
ICAgSW5mb3JtYWwgaW50ZXJmYWNlcyBmb3Igc3VibWl0dGluZyBhbmQgcG9zdGluZyBkcmFm
dHMgZGlzY291cmFnZQogICBhdXRvbWF0aW9uLiAgTGFjayBvZiBzdWJtaXNzaW9uIGF1dG9t
YXRpb24gaW5jcmVhc2VzIFNlY3JldGFyaWF0CiAgIGxvYWQsIGNvbXBsaWNhdGVzIGF1dG9t
YXRlZCBpbmRleGluZyBhbmQgY3Jvc3MtcmVmZXJlbmNpbmcgb2YgdGhlCiAgIGRyYWZ0cywg
YW5kLCBmb3Igc29tZSBhdXRob3JzLCBsZWFkcyB0byBzdGFsZSBkcmFmdHMgbm90IGJlaW5n
CiAgIHVwZGF0ZWQgb2Z0ZW4gZW5vdWdoLgoKICAgQmV5b25kIGEgc2hvcnQgU2VjcmV0YXJp
YXQgY2hlY2tsaXN0LCBzdWJtaXR0ZWQgZHJhZnRzIGFyZSBub3QKICAgY2hlY2tlZCBmb3Ig
Y29tcGxpYW5jZSB3aXRoIElFVEYgcmVxdWlyZW1lbnRzIGZvciBhcmNoaXZhbCBkb2N1bWVu
dHMsCiAgIGFuZCBzdWJtaXR0ZXJzIGFyZSBub3Qgbm90aWZpZWQgb2YgYW55IHZpb2xhdGlv
bnMuICBBcyBhIHJlc3VsdCwgdGhlCiAgIElFU0cgYW5kIFJGQyBFZGl0b3IgbWF5IGhhdmUg
dG8gc3BlbmQgcmVzb3VyY2VzIChhbmQgZGVsYXkgYXBwcm92YWwpCiAgIHJlc29sdmluZyB2
aW9sYXRpb25zIHdpdGggZHJhZnQgYXV0aG9ycy4gIE9mdGVuLCB0aGVzZSB2aW9sYXRpb25z
IGNhbgogICBiZSBkZXRlY3RlZCBhdXRvbWF0aWNhbGx5IGFuZCB3b3VsZCBoYXZlIGJlZW4g
Zml4ZWQgYnkgZHJhZnQgYXV0aG9ycwogICBpZiB0aGUgYXV0aG9ycyBrbmV3IGFib3V0IHRo
ZW0gYmVmb3JlIHJlcXVlc3RpbmcgcHVibGljYXRpb24gb2YgdGhlCiAgIGRyYWZ0LgoKICAg
VGVjaG5pY2FsbHksIGFueWJvZHkgYW5kIGFueXRoaW5nIGNhbiBzdWJtaXQgYSBkcmFmdCB0
byB0aGUKICAgU2VjcmV0YXJpYXQuICBUaGVyZSBpcyBubyByZWxpYWJsZSBhdXRoZW50aWNh
dGlvbiBtZWNoYW5pc20gaW4gcGxhY2UuCiAgIEluaXRpYWwgc3VibWlzc2lvbnMgb2YgV0dO
IGRyYWZ0cyByZXF1aXJlIFdHIENoYWlyIGFwcHJvdmFsLCB3aGljaAogICBjYW4gYmUgZmFr
ZWQganVzdCBsaWtlIHRoZSBzdWJtaXNzaW9uIHJlcXVlc3QgaXRzZWxmLiAgTm8gbWFsaWNp
b3VzCiAgIGltcGVyc29uYXRpb25zIG9yIGZha2UgYXBwcm92YWxzIGhhdmUgYmVlbiByZXBv
cnRlZCB0byBkYXRlIGhvd2V2ZXIuCgogICBMYWNrIG9mIGF1dGhlbnRpY2F0aW9uIGlzIG5v
dCBwZXJjZWl2ZWQgYXMgYSBzZXJpb3VzIHByb2JsZW0sCiAgIHBvc3NpYmx5IGJlY2F1c2Ug
c2VyaW91cyBmYWxzaWZpY2F0aW9uIGFyZSBsaWtlbHkgdG8gYmUgbm90aWNlZAogICBiZWZv
cmUgc2VyaW91cyBkYW1hZ2UgY2FuIGJlIGRvbmUuICBEdWUgdG8gdGhlIGluZm9ybWFsIGFu
ZCBtYW51YWwKICAgbmF0dXJlIG9mIHRoZSBzdWJtaXNzaW9uIG1lY2hhbmlzbSwgaXRzIG1h
c3NpdmUgYXV0b21hdGVkIGFidXNlIGlzCiAgIHVubGlrZWx5IHRvIGNhdXNlIGFueXRoaW5n
IGJ1dCBhIHNob3J0IGRlbmlhbCBvZiBkcmFmdCBwb3N0aW5nCiAgIHNlcnZpY2UgYW5kLCBo
ZW5jZSwgaXMgcHJvYmFibHkgbm90IHdvcnRoIGRlZmVuZGluZyBhZ2FpbnN0LgogICBIb3dl
dmVyLCBmdXR1cmUgYXV0b21hdGlvbiBtYXkgcmVzdWx0IGluIGEgZGlmZmVyZW50IHRyYWRl
LW9mZi4KCgoKClJvdXNza292ICAgICAgICAgICAgICAgIEV4cGlyZXMgT2N0b2JlciAyMSwg
MjAwNSAgICAgICAgICAgICAgICBbUGFnZSA2XQoMCkludGVybmV0LURyYWZ0ICAgICBJRCBT
dWJtaXNzaW9uIFRvb2xzZXQ6IFJlcXVpcmVtZW50cyAgICAgICAgQXByaWwgMjAwNQoKCjYu
ICBPdmVyYWxsIFRvb2xzZXQgb3BlcmF0aW9uCgogICBUaGlzIHNlY3Rpb24gcHJvdmlkZXMg
YSBoaWdoLWxldmVsIGRlc2NyaXB0aW9uIGZvciB0aGUgcHJvcG9zZWQKICAgVG9vbHNldC4g
IFRoZSBkZXNjcmlwdGlvbiBpcyBtZWFudCB0byBzaG93IG92ZXJhbGwgb3BlcmF0aW9uIGFu
ZAogICBvcmRlcjsgcGxlYXNlIHJlZmVyIHRvIG90aGVyIHNlY3Rpb25zIGZvciBkZXRhaWxz
IHNwZWNpZmljIHRvIGVhY2gKICAgc3RlcC4KCiAgIEEgdHlwaWNhbCBzdWJtaXR0ZXIgZ29l
cyB0aHJvdWdoIGEgc2VxdWVuY2Ugb2YgMi00IHdlYiBwYWdlcyBhbmQKICAgYXNzb2NpYXRl
ZCBhY3Rpb25zLiAgVGhlIG51bWJlciBvZiBwYWdlcyBkZXBlbmRzIG9uIHRoZSBkcmFmdAog
ICB2YWxpZGF0aW9uIGFuZCBtZXRhLWRhdGEgZXh0cmFjdGlvbiByZXN1bHRzLiAgRm9yIGV4
YW1wbGUsIHZhbGlkYXRpbmcKICAgdGhlIGRyYWZ0IHdpdGhvdXQgcG9zdGluZyBpdCByZXF1
aXJlcyBpbnRlcmFjdGluZyB3aXRoIHR3byB3ZWIgcGFnZXM6CiAgIFVwbG9hZCBhbmQgQ2hl
Y2suICBUaGUgY29tbW9uIGNhc2Ugb2YgcG9zdGluZyBhIHZhbGlkIGRyYWZ0IHdpdGhvdXQK
ICAgbWFudWFsIG1ldGEtZGF0YSBhZGp1c3RtZW50cyB0YWtlcyB0aHJlZSB3ZWIgcGFnZXMg
KFVwbG9hZCwgQ2hlY2ssCiAgIFJlY2VpcHQpLgoKICAgSGVyZSBpcyBhIGJyaWVmIG92ZXJ2
aWV3IG9mIHBhZ2VzIGFuZCBhY3Rpb25zOgoKICAgVXBsb2FkIHBhZ2U6IFRoZSBpbnRlcmZh
Y2UgdG8gY29weSBhIGRyYWZ0IGZyb20gdGhlIHN1Ym1pdHRlcidzCiAgICAgIGNvbXB1dGVy
IHRvIHRoZSBUb29sc2V0IHN0YWdpbmcgYXJlYSAoU2VjdGlvbiA3KS4gIE11bHRpcGxlCiAg
ICAgIGZvcm1hdHMgYXJlIGFjY2VwdGVkLiAgVGhlIGRyYWZ0IGlzIHNlbnQgdG8gdGhlIENo
ZWNrIGFjdGlvbi4KCiAgIENoZWNrIGFjdGlvbjogU3RvcmVzIHRoZSBkcmFmdCBpbiB0aGUg
VG9vbHNldCBzdGFnaW5nIGFyZWEsIGV4dHJhY3RzCiAgICAgIGRyYWZ0IG1ldGEtZGF0YSwg
dmFsaWRhdGVzIHRoZSBzdWJtaXNzaW9uIChTZWN0aW9uIDgpLiAgUHJvZHVjZXMKICAgICAg
dGhlIENoZWNrIHBhZ2UuCgogICBDaGVjayBwYWdlOiBEaXNwbGF5cyBkcmFmdCBpbnRlcnBy
ZXRhdGlvbiBhbmQgdmFsaWRhdGlvbiByZXN1bHRzCiAgICAgIChTZWN0aW9uIDkpLiAgQSBk
cmFmdCBwcmV2aWV3IG1heSBhbHNvIGJlIGdpdmVuIG9uIHRoaXMgcGFnZS4KICAgICAgQWZ0
ZXIgcmV2aWV3aW5nIHRoZSBkcmFmdCBpbnRlcnByZXRhdGlvbiBhbmQgdmFsaWRhdGlvbiBy
ZXN1bHRzLAogICAgICB0aGUgc3VibWl0dGVyIGhhcyBmb3VyIGJhc2ljIGNob2ljZXMgKGEp
IGF1dG8tcG9zdCBkcmFmdCAiYXMgaXMiCiAgICAgIG5vdzsgKGIpIG1ha2UgbWFudWFsIGNv
cnJlY3Rpb25zIGFuZCBzdWJtaXQgdGhlIGRyYWZ0IHRvCiAgICAgIFNlY3JldGFyaWF0IGZv
ciBtYW51YWwgcG9zdGluZyBsYXRlcjsgKGMpIGNhbmNlbCBzdWJtaXNzaW9uOyBvcgogICAg
ICAoZCkgZG8gbm90aGluZy4gIFRoZSBhdXRvbWF0ZWQgcG9zdGluZyBvcHRpb24gbWF5IG5v
dCBiZSBhdmFpbGFibGUKICAgICAgZm9yIGRyYWZ0cyB3aXRoIHZhbGlkYXRpb24gZXJyb3Jz
LgoKICAgQXV0b21hdGVkIHBvc3Rpbmc6IElmIHRoZSBzdWJtaXR0ZXIgZGVjaWRlcyB0byBw
cm9jZWVkIHdpdGggYXV0b21hdGVkCiAgICAgIHBvc3RpbmcgZnJvbSB0aGUgQ2hlY2sgcGFn
ZSwgdGhlIHN5c3RlbSBhdXRoZW50aWNhdGVzIHRoZQogICAgICBzdWJtaXR0ZXIgKGFuZCBt
YXkgYWxzbyBjaGVjayB3aGV0aGVyIHRoZSBzdWJtaXR0ZXIgaXMgYWxsb3dlZCB0bwogICAg
ICBwb3N0IHRoZSBkcmFmdCwgaWYgYW5kIHdoZW4gc3VjaCBjaGVja3MgYXJlIGluc3RpdHV0
ZWQpLiAgSWYgdGhlCiAgICAgIHN1Ym1pdHRlciBpcyBhdXRob3JpemVkLCB0aGUgZHJhZnQg
aXMgaW1tZWRpYXRlbHkgcG9zdGVkLCBkZWxldGVkCiAgICAgIGZyb20gdGhlIHN0YWdpbmcg
YXJlYSwgYW5kIHRoZSBzdWJtaXR0ZXIgaXMgbm90aWZpZWQgb2YgdGhlIHJlc3VsdAogICAg
ICB2aWEgZW1haWwgYW5kIGEgUmVjZWlwdCBwYWdlIChTZWN0aW9uIDEwKS4KCiAgIE1hbnVh
bCBhZGp1c3RtZW50IGFuZCBwb3N0aW5nOiBJZiB0aGUgc3VibWl0dGVyIGRlY2lkZXMgdG8g
YWRqdXN0IHRoZQogICAgICBtZXRhLWRhdGEsIHRoZSBkcmFmdCByZW1haW5zIGluIHRoZSBU
b29sc2V0IHN0YWdpbmcgYXJlYSwgYW5kIHRoZQogICAgICBBZGp1c3QgYWN0aW9uIChTZWN0
aW9uIDExKSBwcmVzZW50cyB0aGUgc3VibWl0dGVyIHdpdGggYW4gQWRqdXN0CiAgICAgIHBh
Z2UgKFNlY3Rpb24gMTIpLiAgV2hlbiB0aGUgc3VibWl0dGVyIG1ha2VzIHRoZSBhZGp1c3Rt
ZW50cyBhbmQKICAgICAgcHJvY2VlZHMgd2l0aCBtYW51YWwgcG9zdGluZywgYSBwb2ludGVy
IHRvIHRoZSBzdG9yZWQgZHJhZnQgYW5kCiAgICAgIGl0cyBhZGp1c3RlZCBtZXRhLWRhdGEg
aXMgc2VudCB0byB0aGUgc2VjcmV0YXJpYXQgZm9yIG1hbnVhbAoKCgpSb3Vzc2tvdiAgICAg
ICAgICAgICAgICBFeHBpcmVzIE9jdG9iZXIgMjEsIDIwMDUgICAgICAgICAgICAgICAgW1Bh
Z2UgN10KDApJbnRlcm5ldC1EcmFmdCAgICAgSUQgU3VibWlzc2lvbiBUb29sc2V0OiBSZXF1
aXJlbWVudHMgICAgICAgIEFwcmlsIDIwMDUKCgogICAgICBwcm9jZXNzaW5nIChTZWN0aW9u
IDEzKS4gIFRoZSBzdWJtaXR0ZXIgaXMgbm90aWZpZWQgb2YgdGhlIHBlbmRpbmcKICAgICAg
U2VjcmV0YXJpYXQgcmVxdWVzdCB2aWEgZW1haWwgYW5kIGEgUmVjZWlwdCBwYWdlLgoKICAg
Q2FuY2VsbGF0aW9uOiBJZiB0aGUgc3VibWl0dGVyIGRlY2lkZXMgdG8gZXhwbGljaXRseSBj
YW5jZWwgdGhlCiAgICAgIHN1Ym1pc3Npb24sIHRoZSBzdWJtaXNzaW9uIHN0YXRlIChpbmNs
dWRpbmcgdGhlIGRyYWZ0KSBpcwogICAgICBpbW1lZGlhdGVseSBkZWxldGVkIGZyb20gdGhl
IFRvb2xzZXQgc3RhZ2luZyBhcmVhIGFuZCBhbgogICAgICBhcHByb3ByaWF0ZSBSZWNlaXB0
IHBhZ2UgaXMgZ2VuZXJhdGVkIHdpdGhvdXQgZnVydGhlciBhY3Rpb25zCiAgICAgIChSMTIz
L2EpLiAgQ2FuY2VsbGF0aW9uIG9mIHByZXZpb3VzbHkgcG9zdGVkIGRyYWZ0cyBpcyBvdXQg
b2YgdGhpcwogICAgICBkb2N1bWVudCBzY29wZS4KCiAgIFJlY2VpcHQgcGFnZTogQ29udGFp
bnMgZGV0YWlscyBvZiBhIHN1Y2Nlc3NmdWwgb3IgZmFpbGVkIGRyYWZ0CiAgICAgIHN1Ym1p
c3Npb24gYW5kIGluZm9ybXMgdGhlIHN1Ym1pdHRlciBvZiB0aGUgbmV4dCBhcHByb3ByaWF0
ZQogICAgICBzdGVwKHMpIHJlbGF0ZWQgdG8gc3VibWlzc2lvbiByZXN1bHQuCgogICBUaGUg
Zm9sbG93aW5nIGluZm9ybWFsIGRpYWdyYW0gaWxsdXN0cmF0ZXMgdGhlIGJhc2ljIHN1Ym1p
c3Npb24KICAgbG9naWM6CgogICAgICAgICAgICAgICAgICAgICAgIC8tLS0+IFBvc3QgTm93
CiAgICAgICAgICAgICAgICAgICAgICAvCiAgIFVwbG9hZCAtLT4gQ2hlY2sgLSstLS0tLT4g
QWRqdXN0IC0tLT4gU2VuZCB0byBTZWNyZXRhcmlhdAogICAgICAgICAgICAgICAgICAgICAg
XAogICAgICAgICAgICAgICAgICAgICAgIFwtLS0+IENhbmNlbAoKICAgSWYgdGhlIHN1Ym1p
dHRlciBkb2VzIG5vdGhpbmcgd2hpbGUgdGhlIFRvb2xzZXQgaXMgZXhwZWN0aW5nIHNvbWUK
ICAgcmVzcG9uc2UsIHRoZSBhYmFuZG9uZWQgc3VibWlzc2lvbiB0aW1lcyBvdXQgKFIxMjQv
YSkuICBUaGUgdGltZW91dAogICB2YWx1ZSBkZXBlbmRzIG9uIHRoZSBzdWJtaXNzaW9uIHN0
YXRlLiAgSGludDogQSB0aW1lb3V0IHZhbHVlIG9mIG9uZQogICBob3VyIGlzIHByb2JhYmx5
IGxhcmdlIGVub3VnaCB1bmxlc3MgdGhlIFRvb2xzZXQgaXMgd2FpdGluZyBmb3Igc29tZQog
ICBraW5kIG9mIGEgM3JkIHBhcnR5IGNvbmZpcm1hdGlvbiAoZS5nLiwgV0cgY2hhaXIgYXBw
cm92YWwpLiAgRG9pbmcKICAgbm90aGluZyBpcyBmdW5jdGlvbmFsbHkgZXF1aXZhbGVudCB0
byBleHBsaWNpdGx5IGNhbmNlbGluZyB0aGUKICAgc3VibWlzc2lvbiwgZXhjZXB0IHRoYXQg
ZXhwbGljaXQgY2FuY2VsbGF0aW9uIHJlcXVpcmVzIGltbWVkaWF0ZQogICByZW1vdmFsIG9m
IHN1Ym1pc3Npb24gc3RhdGUgd2hpbGUgdGhlIHN0YXRlIG9mIHN1Ym1pc3Npb25zIG1hcmtl
ZCBhcwogICBhYmFuZG9uZWQgaXMgZ2FyYmFnZS1jb2xsZWN0ZWQuCgogICBUaGUgc3RhZ2lu
ZyBhcmVhIG1haW50ZW5hbmNlIGFsZ29yaXRobXMgbXVzdCBrZWVwIHRoZSBhcmVhIGluIGEK
ICAgY29uc2lzdGVudCwgY29ycmVjdCBzdGF0ZSBpbiB0aGUgcHJlc2VuY2Ugb2YgRG9TIGF0
dGFja3MgYXR0ZW1wdGluZwogICB0byBvdmVyd2hlbG0gdGhlIGFyZWEgd2l0aCBmYWtlIHN1
Ym1pc3Npb25zIGluIHZhcmlvdXMgc3RhZ2VzCiAgIChSNjcvYSkuICBIaW50OiBkZW5pYWwg
b2Ygc2VydmljZSB0byBsZWdpdGltYXRlIHVzZXJzIGlzIGFjY2VwdGFibGUKICAgdW5kZXIg
RG9TIGF0dGFjayBjb25kaXRpb25zLCBidXQgY29ycnVwdGlvbiBvZiB0aGUgc3RvcmFnZSBh
cmVhIGlzCiAgIG5vdC4KCiAgIFRoZSAid2ViIHBhZ2VzIiB0aGlzIHRleHQgaXMgcmVmZXJy
aW5nIHRvIGFyZSBkaXN0aW5jdCBkaWFsb2dzLCB0aGF0CiAgIG1heSBiZSB2aXNpYmxlIHRv
IHRoZSBzdWJtaXR0ZXIgdW5kZXIgdGhlIHNhbWUgb3IgZGlmZmVyZW50IFVSTCwgYW5kCiAg
IHN1cHBvcnRlZCBieSBhIHNpbmdsZSBvciBzZXZlcmFsIHNlcnZlci1zaWRlIHByb2dyYW1z
LgoKICAgVGhlIFRvb2xzZXQgbXVzdCBoYW5kbGUgbXVsdGlwbGUgc3VibWl0dGVycyBzaW11
bHRhbmVvdXNseSBzdWJtaXR0aW5nCiAgIHRoZSBzYW1lIGRyYWZ0IChSNzIvYSkgYW5kIGEg
c2luZ2xlIHN1Ym1pdHRlciBzaW11bHRhbmVvdXNseQogICBzdWJtaXR0aW5nIHR3byBkcmFm
dHMgKFI3My9hKS4gIFRoZSBsYXR0ZXIgbWlnaHQgaGFwcGVuLCBmb3IgZXhhbXBsZSwKICAg
d2hlbiB0aGUgc3VibWl0dGVyIGlzIHVzaW5nIHNldmVyYWwgYnJvd3NlciB3aW5kb3dzIHRv
IHN1Ym1pdCBzZXZlcmFsCgoKClJvdXNza292ICAgICAgICAgICAgICAgIEV4cGlyZXMgT2N0
b2JlciAyMSwgMjAwNSAgICAgICAgICAgICAgICBbUGFnZSA4XQoMCkludGVybmV0LURyYWZ0
ICAgICBJRCBTdWJtaXNzaW9uIFRvb2xzZXQ6IFJlcXVpcmVtZW50cyAgICAgICAgQXByaWwg
MjAwNQoKCiAgIGRyYWZ0cyBvciBpcyBzdWJtaXR0aW5nIGRyYWZ0cyB2aWEgZW1haWwgaW50
ZXJmYWNlLiAgVGhlIHRlcm0KICAgInNpbXVsdGFuZW91c2x5IiBtZWFucyB0aGF0IHN1Ym1p
c3Npb24gcHJvY2Vzc2luZyB0aW1lcyBvdmVybGFwLgoKICAgSGludDogRXhjZXB0IGZvciB0
aGUgVXBsb2FkIHBhZ2UsIHBhZ2VzIGNvbnRhaW4gYSBzdWJtaXNzaW9uIHNlc3Npb24KICAg
aWRlbnRpZmllciB0byBwcm92aWRlIGFjdGlvbnMgd2l0aCBhY2Nlc3MgdG8gc3RvcmVkIGlu
Zm9ybWF0aW9uLiAgVGhlCiAgIGlkZW50aWZpZXIgaXMgc3BlY2lmaWMgdG8gdGhlIHN1Ym1p
c3Npb24gcmF0aGVyIHRoYW4gdGhlIGRyYWZ0CiAgIHZlcnNpb24gb3IgdGhlIHN1Ym1pdHRl
ci4gIFdoaWxlIHRoZSBuYXR1cmUgb2YgdGhlIHdlYiBpbnRlcmZhY2UKICAgYWxsb3dzIHRo
ZSBzZXNzaW9uIGlkZW50aWZpZXIgdG8gYmUgaW52aXNpYmxlIHRvIHRoZSBzdWJtaXR0ZXIs
IGVtYWlsCiAgIGNvbW11bmljYXRpb24gd291bGQgbmVlZCB0byBpZGVudGlmeSB0aGUgc2Vz
c2lvbiBzbyB0aGF0IHRoZQogICByZWNpcGllbnQgKGFuZCBUb29sc2V0KSBrbm93IHRoZSBj
b250ZXh0LgoKICAgSGludDogQSBzaW5nbGUgYWN0aW9uIG1heSBjb3JyZXNwb25kIHRvIG11
bHRpcGxlIHNlcnZlci1zaWRlIHByb2dyYW1zCiAgIGFuZCwgdmljZSB2ZXJzYSwgYSBzaW5n
bGUgcHJvZ3JhbSBtYXkgaW1wbGVtZW50IHNldmVyYWwgYWN0aW9ucy4KICAgVGhpcyBkb2N1
bWVudCBkb2VzIG5vdCBtYW5kYXRlIGFueSBzcGVjaWZpYyB0ZWNobm9sb2d5IChlLmcuLCBD
R0ksCiAgIFBIUCwgYW5kL29yIEphdmEgc2VydmxldHMpIHRvIGltcGxlbWVudCBzZXJ2ZXIt
c2lkZSBzdXBwb3J0LiAgVGhlCiAgIGltcGxlbWVudGVyIGV4cGVyaWVuY2UsIGNvZGUgcmV1
c2UgYWNyb3NzIHdlYiBhbmQgZW1haWwgaW50ZXJmYWNlcywKICAgYW5kIG90aGVyIGZhY3Rv
cnMgd2lsbCBkZXRlcm1pbmUgdGhlIHJpZ2h0IHRlY2hub2xvZ3kgY2hvaWNlLgoKICAgSGlu
dDogQWN0aW9ucyBwcmVzZXJ2ZSBhbmQgZXhjaGFuZ2Ugc3RhdGUgYnkgc3RvcmluZyBpdCBh
bG9uZyB3aXRoCiAgIHRoZSBkcmFmdC4gIEdyb3VwaW5nIGFsbCBzdWJtaXNzaW9uLXNwZWNp
ZmljIGluZm9ybWF0aW9uIGluIG9uZQogICBzdWJkaXJlY3RvcnkgbmFtZWQgdXNpbmcgdGhl
IHNlc3Npb24gaWRlbnRpZmllciBtYXkgaW5jcmVhc2UKICAgcm9idXN0bmVzcyBhbmQgc2lt
cGxpZnkgZGVidWdnaW5nLiAgU2Vzc2lvbiBjcmVhdGlvbiBhbmQgZGVzdHJ1Y3Rpb24KICAg
Y2FuIHRoZW4gYmUgbG9nZ2VkIGluIGEgZ2xvYmFsIGluZGV4LgoKICAgV2F5cyB0byBwYXJ0
aWFsbHkgb3IgY29tcGxldGVseSBieXBhc3MgdGhlIFRvb2xzZXQgYXJlIGRvY3VtZW50ZWQg
aW4KICAgU2VjdGlvbiAxNQoKICAgVGhlIFRvb2xzZXQgc291cmNlcyBzaG91bGQgYmUgcHVi
bGljbHkgYXZhaWxhYmxlIChSMTUyL2IpIHVuZGVyIGEKICAgbGljZW5zZSBjZXJ0aWZpZWQg
YnkgdGhlIE9wZW4gU291cmNlIEluaXRpYXRpdmUgW09TSV0gKFIxNDQvYSksIHdpdGgKICAg
YW4gaW50ZXJmYWNlIHRvIHJlcG9ydCBidWdzIGFuZCByZXF1ZXN0IGVuaGFuY2VtZW50cyAo
UjE0NS9iKS4gIFRoZXNlCiAgIHJlcXVpcmVtZW50cyBhcmUgbWVhbnQgdG8gZW5hYmxlIHRo
ZSBUb29sc2V0IHRyYW5zZmVyIGZyb20gb25lCiAgIG1hbmFnZW1lbnQgdGVhbSB0byBhbm90
aGVyIGFuZCB0byBhbGxvdyBmb3IgcHVibGljIHJldmlldyBhbmQKICAgY29udHJpYnV0aW9u
LiAgVG8gbWVhbmluZ2Z1bGx5IHNhdGlzZnkgdGhlc2UgYXZhaWxhYmlsaXR5CiAgIHJlcXVp
cmVtZW50cywgdGhlIFRvb2xzZXQgaGFzIHRvIGltcGxlbWVudCB0aGUgcmVxdWlyZWQgZnVu
Y3Rpb25hbGl0eQogICB3aXRob3V0IHJlbHlpbmcgb24gc29mdHdhcmUgd2l0aCBkaWZmZXJl
bnQgYXZhaWxhYmlsaXR5IGNvbmRpdGlvbnMuCgogICBIaW50OiBQbGFjaW5nIHRoZSBUb29s
c2V0IHNvdXJjZSByZXBvc2l0b3J5IGF0IGFuIG9wZW4tc291cmNlLQogICBmcmllbmRseSBw
cm9qZWN0IG1hbmFnZW1lbnQgc2l0ZSBsaWtlIFNvdXJjZUZvcmdlLm5ldCB3b3VsZCBwcm92
aWRlCiAgIHRoZSBJRVRGIGNvbW11bml0eSB3aXRoIGEgZGVjZW50LCByZWFkeS10by11c2Ug
aW50ZXJmYWNlIHRvIGFjY2VzcwogICB0aGUgY29kZSwgZG9jdW1lbnRhdGlvbiwgYnVnIHJl
cG9ydHMsIGFuZCBkaXNjdXNzaW9uIGZvcnVtcy4KICAgRXN0YWJsaXNoaW5nIGFuZCBkb2N1
bWVudGluZyBhIHNpbXBsZSBpbnRlcmZhY2UgYmV0d2VlbiB0aGUgVG9vbHNldAogICBhbmQg
ZXh0ZXJuYWwgc29mdHdhcmUgKGUuZy4sIHRoZSBTZWNyZXRhcmlhdCBkcmFmdCBwb3N0aW5n
IHNjcmlwdHMpCiAgIHdvdWxkIGZhY2lsaXRhdGUgYXZhaWxhYmlsaXR5IGNoZWNrcy4KCiAg
IFRoZSBUb29sc2V0IGlzIG1lYW50IHRvIGJlIGNvbXBhdGlibGUgd2l0aCB0aGUgU2VjcmV0
YXJpYXQncyB0b29scwogICBmb3IgaGFuZGxpbmcgZHJhZnRzLiAgSGludDogU3VjaCBjb21w
YXRpYmlsaXR5IGNhbiBiZSBhY2hpZXZlZCBieQogICBhcHByb3ByaWF0ZWx5IGltcGxlbWVu
dGluZyB0aGUgVG9vbHNldCBvciwgaW4gc29tZSBjYXNlcywgYnkKICAgbW9kaWZ5aW5nIGV4
aXN0aW5nIFNlY3JldGFyaWF0IHRvb2xzLgoKCgpSb3Vzc2tvdiAgICAgICAgICAgICAgICBF
eHBpcmVzIE9jdG9iZXIgMjEsIDIwMDUgICAgICAgICAgICAgICAgW1BhZ2UgOV0KDApJbnRl
cm5ldC1EcmFmdCAgICAgSUQgU3VibWlzc2lvbiBUb29sc2V0OiBSZXF1aXJlbWVudHMgICAg
ICAgIEFwcmlsIDIwMDUKCgo3LiAgVXBsb2FkIHBhZ2UKCiAgIFRvIHVwbG9hZCBhIGRyYWZ0
LCB0aGUgc3VibWl0dGVyIGdvZXMgdG8gYSB3ZWxsLWtub3duIHBhZ2Ugb24gdGhlCiAgIElF
VEYgd2ViIHNpdGUgKFIxL2IpLiAgVGhlcmUsIHRoZSBkcmFmdCB0ZXh0IGNhbiBiZSB1cGxv
YWRlZCB1c2luZyBhbgogICBIVE1MIGZpbGUgdXBsb2FkIGZvcm0uICBUaGlzIGZvcm0gcHJv
dmlkZXMgZmllbGRzIHRvIHVwbG9hZCB0aGUgcGxhaW4KICAgdGV4dCBmb3JtYXQgb2YgdGhl
IGRyYWZ0IChSMi9hKSBhbmQgYWxsIG90aGVyIGZvcm1hdHMgYWxsb3dlZCBieSBJRVRGCiAg
IGRyYWZ0IHB1YmxpY2F0aW9uIHJ1bGVzIChSMy9iKS4gIEF0IHRoZSB0aW1lIG9mIHdyaXRp
bmcsIHRoZXNlCiAgIGZvcm1hdHMgYXJlOiBYTUwgKFtSRkMyNjI5XSBhbmQgW0ktRC5tcm9z
ZS13cml0aW5nLXJmY3NdKSwgUERGLCBhbmQKICAgUG9zdFNjcmlwdC4KCiAgIFN1Ym1pdHRl
ZCBmb3JtcyBhcmUgaGFuZGxlZCBieSB0aGUgQ2hlY2sgYWN0aW9uIGRvY3VtZW50ZWQgaW4K
ICAgU2VjdGlvbiA4LgoKICAgVGhlIFVwbG9hZCBwYWdlIGFsc28gaGFzIGEgdmFsaWRhdGUt
b25seSBmbGFnLCBpbmRpY2F0aW5nIHRoYXQgYW4KICAgdXBsb2FkZWQgZHJhZnQgbXVzdCBu
b3QgYmUgcG9zdGVkIGFuZCBtYXkgYmUgZGVsZXRlZCBpbW1lZGlhdGVseQogICBhZnRlciB0
aGUgdmFsaWRhdGlvbiAoUjc0L2IpLiAgUmVnYXJkbGVzcyBvZiB0aGUgdmFsaWRhdGlvbiBy
ZXN1bHRzLAogICB0aGUgc3RvcmVkIGRyYWZ0IG1ldGEtZGF0YSBpcyBtYXJrZWQgc28gdGhh
dCB2YWxpZGF0aW9uLW9ubHkgZHJhZnRzCiAgIGNhbiBiZSBpZGVudGlmaWVkIGFuZCBkZWxl
dGVkIGZpcnN0IGJ5IGdhcmJhZ2UgY29sbGVjdG9yIGZvciB0aGUKICAgVG9vbHNldCBzdGFn
aW5nIGFyZWEgKFI3NS9iKS4gIERyYWZ0cyB1cGxvYWRlZCBpbiBhIHZhbGlkYXRlLW9ubHkK
ICAgbW9kZSBjYW5ub3QgYmUgcG9zdGVkIChSNzYvYik7IHRoZXkgd291bGQgbmVlZCB0byBi
ZSB1cGxvYWRlZCBhZ2FpbiwKICAgd2l0aG91dCB0aGUgdmFsaWRhdGUtb25seSBmbGFnLCBh
bmQgdGhlIHZhbGlkYXRpb24gcmVzdWx0cyBwYWdlCiAgIHNob3VsZCBleHBsYWluIHRoYXQg
KFI3Ny9iKS4gIFRoaXMgZmxhZyBpcyB1c2VmdWwgZm9yIHRvb2xzIHVzaW5nCiAgIG9ubGlu
ZSB2YWxpZGF0aW9uLCBlc3BlY2lhbGx5IGZvciBidWxrIGRyYWZ0IHByb2Nlc3NpbmcuICBI
aW50OiBpdAogICBtYXkgYmUgYmV0dGVyIHRvIGltcGxlbWVudCB0aGlzIGZsYWcgYXMgYSBo
aWRkZW4gSFRNTCBpbnB1dCBmaWVsZCB0bwogICBzaW1wbGlmeSB0aGUgaW50ZXJmYWNlIGZv
ciBodW1hbiBzdWJtaXR0ZXJzLgoKOC4gIENoZWNrIGFjdGlvbgoKICAgVGhlIENoZWNrIGFj
dGlvbiBwcmVwcm9jZXNzZXMgYSBzdWJtaXNzaW9uLCBnZW5lcmF0ZXMgcGxhaW4gdGV4dAog
ICBmb3JtYXQgKGlmIG5lZWRlZCwgc2VlIFI3MCksIHN0b3JlcyB0aGUgc3VibWl0dGVkIGRy
YWZ0IChhbGwgZm9ybWF0cykKICAgaW4gdGhlIHN0YWdpbmcgYXJlYSwgYW5kIHRoZW4gZXh0
cmFjdHMgbWV0YS1kYXRhIGFuZCB2YWxpZGF0ZXMgZWFjaAogICBmb3JtYXQgKFI2L2EpLiAg
RXJyb3JzIGFuZCB3YXJuaW5ncyBhcmUgaW5kaWNhdGVkIHRvIHRoZSBzdWJtaXR0ZXIgaW4K
ICAgdGhlIHJlc3BvbnNlIHZpYSBjb21wdXRlci1mcmllbmRseSB0YWcocykgYW5kIGh1bWFu
LWZyaWVuZGx5IHRleHQKICAgKFI3L2EpLgoKICAgSWYgYW55IGVycm9yIGlzIGZvdW5kLCBh
dXRvbWF0ZWQgcG9zdGluZyBiZWNvbWVzIGltcG9zc2libGUgKFIxMTMvYSkuCiAgIFRoaXMg
cnVsZSBhcHBsaWVzIHRvIGFsbCBlcnJvcnMsIGV2ZW4gdGhvc2UgdGhhdCBkbyBub3QgcmVm
ZXIgdG8gUjExMwogICBhbmQgZG8gbm90IGV4cGxpY2l0bHkgcHJvaGliaXQgYXV0b21hdGVk
IHBvc3RpbmcuICBJZiBhdXRvbWF0ZWQKICAgcG9zdGluZyBpcyBub3QgcG9zc2libGUsIHRo
ZSBUb29sc2V0IHN0aWxsIGdpdmVzIHRoZSBzdWJtaXR0ZXIgYW4KICAgb3B0aW9uIG9mIHNl
bmRpbmcgdGhlIGRyYWZ0IGZvciBtYW51YWwgdmFsaWRhdGlvbiBhbmQgcG9zdGluZwogICAo
UjExNC9hKS4gIFNpbmNlIGVhY2ggc3VibWlzc2lvbiBpcyB0cmVhdGVkIGluIGlzb2xhdGlv
biwgdGhlCiAgIHN1Ym1pdHRlciBhbHNvIGhhcyBhbiBvcHRpb24gb2YgY29ycmVjdGluZyB0
aGUgcHJvYmxlbSBhbmQKICAgcmVzdWJtaXR0aW5nIHRoZSBkcmFmdCBmb3IgYXV0b21hdGVk
IHBvc3RpbmcuCgogICBUaGUgbWFudWFsIHZhbGlkYXRpb24gYW5kIHBvc3Rpbmcgcm91dGUg
aXMgYSBUb29sc2V0IGJ5cGFzcyBtZWNoYW5pc20KICAgKHNlZSBTZWN0aW9uIDE1KSBub3Qg
bWVhbnQgZm9yIGZpeGluZyBwcm9ibGVtcyB3aXRoIHRoZSBkcmFmdCBpdHNlbGYuCiAgIFRo
ZSBTZWNyZXRhcmlhdCBkb2VzIG5vdCBnZW5lcmFsbHkgY29ycmVjdCBzdWJtaXR0ZWQgZHJh
ZnRzLiAgSWYgdGhlCiAgIGRyYWZ0IG5lZWRzIHR3ZWFraW5nIHRvIG1hdGNoIHN1Ym1pdHRl
cidzIGludGVudCwgdGhlbiB0aGUgZHJhZnQKCgoKUm91c3Nrb3YgICAgICAgICAgICAgICAg
RXhwaXJlcyBPY3RvYmVyIDIxLCAyMDA1ICAgICAgICAgICAgICAgW1BhZ2UgMTBdCgwKSW50
ZXJuZXQtRHJhZnQgICAgIElEIFN1Ym1pc3Npb24gVG9vbHNldDogUmVxdWlyZW1lbnRzICAg
ICAgICBBcHJpbCAyMDA1CgoKICAgc2hvdWxkIGJlIGNvcnJlY3RlZCBieSB0aGUgc3VibWl0
dGVyIGFuZCByZXN1Ym1pdHRlZC4KCiAgIEl0IGlzIGFuIGVycm9yIHRvIHN1Ym1pdCBhIGRy
YWZ0IHdoaWNoIGhhcyBuZWl0aGVyIHBsYWluIHRleHQgbm9yIFhNTAogICBzb3VyY2UgZm9y
bWF0IChSNjgvYSkuICBYTUwgc291cmNlIGlzIGFjY2VwdGFibGUgd2l0aG91dCBhY2NvbXBh
bnlpbmcKICAgcGxhaW4gdGV4dCBvbmx5IGlmIHRoZSBUb29sc2V0IHN1Y2Nlc3NmdWxseSBn
ZW5lcmF0ZXMgYSBkcmFmdCBpbgogICBwbGFpbiB0ZXh0IGZvcm1hdCBmcm9tIHRoZSBYTUwg
c291cmNlLCBhcyBhIHBhcnQgb2YgdGhlIHByb2Nlc3NpbmcKICAgc3RlcCBkb2N1bWVudGVk
IGJlbG93IChSNjkvYikuICBUaGVzZSBydWxlcyBpbXBseSB0aGF0IFBERi0gb3IKICAgUG9z
dFNjcmlwdC1vbmx5IGRyYWZ0cyBjYW5ub3QgYmUgYXV0by1wb3N0ZWQuICBNb3Jlb3Zlciwg
ZXZlbiBtYW51YWwKICAgU2VjcmV0YXJpYXQgaW52b2x2ZW1lbnQgY2Fubm90IGhlbHAgd2l0
aCBwb3N0aW5nIHRoZXNlIGRyYWZ0cywgYXMgdGhlCiAgIElFVEYgcG9saWN5IGlzIHRvIGFs
d2F5cyByZXF1aXJlIGEgcGxhaW4gdGV4dCBmb3JtYXQgaW4gYWRkaXRpb24gdG8KICAgUERG
IG9yIFBvc3RTY3JpcHQuICBGdXJ0aGVybW9yZSwgZHJhZnRzIGNvbnRhaW5pbmcgUERGIG9y
IFBvc3RzY3JpcHQKICAgZm9ybWF0IHZlcnNpb25zIG11c3Qgbm90IGJlIGF1dG8tcG9zdGVk
IHVudGlsIHRoZSBUb29sc2V0IGNhbgogICB2YWxpZGF0ZSB0aGF0IHRoZWlyIGNvbnRlbnQg
bWF0Y2hlcyB0aGUgcGxhaW4gdGV4dCBmb3JtYXQgKFIxNDMvYSkuCgogICBUaGUgZHJhZnQg
Zm9ybWF0IGFjY2VwdGFuY2UgcnVsZXMgYWJvdmUgYXJlIG1lYW50IHRvIGRlY3JlYXNlIHRo
ZQogICBjaGFuY2VzIHRoYXQgbXVsdGlwbGUgcG9zdGVkIGRyYWZ0IGZvcm1hdHMgZm9yIGEg
c2luZ2xlIGRyYWZ0IGNvbnRhaW4KICAgc3Vic3RhbnRpYWxseSBkaWZmZXJlbnQgZG9jdW1l
bnRzLiAgV2l0aCBleHBlcmllbmNlLCB0aGUgcnVsZXMgbWF5IGJlCiAgIHNpbXBsaWZpZWQg
c28gdGhhdCwgZm9yIGV4YW1wbGUsIG9ubHkgc3VibWlzc2lvbnMgY29udGFpbmluZyBub3Ro
aW5nCiAgIGJ1dCBYTUwgb3IgcGxhaW4gdGV4dCBzb3VyY2VzIGNhbiBiZSBwb3N0ZWQgd2l0
aG91dCBTZWNyZXRhcmlhdAogICBpbnZvbHZlbWVudCBhbmQgYWxsIG90aGVyIHN1Ym1pc3Np
b25zIHJlcXVpcmUgbWFudWFsIGFjdGlvbnMgdG8gbWF0Y2gKICAgZm9ybWF0cyBvciBleHRy
YWN0IG1ldGEtZGF0YS4KCjguMSAgUHJlcHJvY2Vzc2luZwoKICAgU3VibWl0dGluZyBjb21w
cmVzc2VkIGRyYWZ0cyBpcyBhIGRlc2lyYWJsZSBmZWF0dXJlLCBlc3BlY2lhbGx5IGZvcgog
ICBzdWJtaXR0ZXJzIGJlaGluZCBzbG93IG9yIGNvbnRlbnQtYWx0ZXJpbmcgbGlua3MuICBD
b21wcmVzc2VkIGRyYWZ0CiAgIGZvcm1hdHMgbWF5IGJlIGFjY2VwdGVkIChSMTUwL2MpLiAg
Q29tcHJlc3NlZCBmb3JtYXRzLCBpZiBhbnksIG11c3QKICAgYmUgZGVjb21wcmVzc2VkIGR1
cmluZyB0aGUgcHJlcHJvY2Vzc2luZyBzdGVwIChSMTUxL2MpIHNvIHRoYXQgb3RoZXIKICAg
cHJvY2Vzc29ycyBkbyBub3QgaGF2ZSB0byBkZWFsIHdpdGggY29tcHJlc3NlZCBmb3JtYXRz
LiAgSGludDogIFdoaWxlCiAgIHRoaXMgc3BlY2lmaWNhdGlvbiBkb2VzIG5vdCBkb2N1bWVu
dCBhIGxpc3Qgb2Ygc3VwcG9ydGVkIGNvbXByZXNzaW9uCiAgIHN0YW5kYXJkcywgaXQgaXMg
ZXhwZWN0ZWQgdGhhdCBzdWNoIHBvcHVsYXIgbWV0aG9kcyBhcyAiemlwIiBhbmQKICAgImd6
aXAiIHNob3VsZCBiZSBhY2NlcHRlZCBpZiBjb21wcmVzc2lvbiBpcyBzdXBwb3J0ZWQuICBB
Y2NlcHRpbmcgYQogICBjb2xsZWN0aW9uIG9mIGRyYWZ0IGZvcm1hdHMgd2l0aGluIGEgc2lu
Z2xlIGNvbXByZXNzZWQgYXJjaGl2ZSBtYXkKICAgYWxzbyBiZSBkZXNpcmFibGUuCgogICBY
TUwgc291cmNlIGNvbnRhaW5pbmcgWE1MIHByb2Nlc3NvciA8cmZjPyBpbmNsdWRlPSIuLi4i
PiBpbnN0cnVjdGlvbnMKICAgKFBJcykgaXMgcHJlcHJvY2Vzc2VkIHRvIGluY2x1ZGUgcmVm
ZXJlbmNlcyAoUjgvYikuICBUaGlzIHN0ZXAgaXMKICAgbmVlZGVkIHRvIHJlbW92ZSBleHRl
cm5hbCBkZXBlbmRlbmNpZXMgZnJvbSBYTUwgc291cmNlcyBhbmQgdG8KICAgc2ltcGxpZnkg
dG9vbHMgcHJvY2Vzc2luZyBwb3N0ZWQgWE1MLiAgVGhpcyBkb2N1bWVudCByZWZlcnMgdG8g
c3VjaAogICBYTUwgcHJvY2Vzc29yIGluc3RydWN0aW9ucyBhcyAiaW5jbHVkZSBQSXMiLgoK
ICAgVGhlIFhNTCBwcmVwcm9jZXNzb3IgdXNlcyBwdWJsaWMgZGF0YWJhc2UocykgdG8gcmVz
b2x2ZSBQSSByZWZlcmVuY2VzCiAgIChSODUvYikuICBUaGUgVG9vbHNldCBkb2N1bWVudGF0
aW9uIHNwZWNpZmllcyB3aGF0IGRhdGFiYXNlcyBhcmUgdXNlZAogICBhbmQgaG93IFBJcyBh
cmUgbWFwcGVkIHRvIGRhdGFiYXNlIGVudHJpZXMgKFI4Ni9iKS4gIFRoZSBUb29sc2V0IG11
c3QKICAgbm90IHJlbHkgb24gUElzIGV4aXN0ZW5jZSAoUjg3L2IpIGJlY2F1c2Ugc29tZSBY
TUwgc291cmNlcyB3aWxsIGJlCiAgIHByZXByb2Nlc3NlZCBiZWZvcmUgdGhlIHN1Ym1pc3Np
b24gb3Igd2lsbCBiZSB3cml0dGVuIHdpdGhvdXQgUElzLgogICBIaW50OiBMb2NhbCB1cC10
by1kYXRlIGNvcGllcyBvZiBNYXJzaGFsbCBSb3NlJ3MgcmVmZXJlbmNlIGRhdGFiYXNlcwog
ICBhdCB4bWwucmVzb3VyY2Uub3JnIGNhbiBiZSB1c2VkLgoKCgpSb3Vzc2tvdiAgICAgICAg
ICAgICAgICBFeHBpcmVzIE9jdG9iZXIgMjEsIDIwMDUgICAgICAgICAgICAgICBbUGFnZSAx
MV0KDApJbnRlcm5ldC1EcmFmdCAgICAgSUQgU3VibWlzc2lvbiBUb29sc2V0OiBSZXF1aXJl
bWVudHMgICAgICAgIEFwcmlsIDIwMDUKCgogICBCb3RoIG9yaWdpbmFsIGFuZCBwcmVwcm9j
ZXNzZWQgWE1MIHNvdXJjZXMgbWF5IGJlIHBvc3RlZCBsYXRlci4gIFRoZQogICBvcmlnaW5h
bCBzb3VyY2Ugd2l0aCBpbmNsdWRlIFBJcyBtYXkgYmUgdXNlZnVsIHRvIHRoZSBSRkMgRWRp
dG9yIGFuZAogICBnZW5lcmF0aW9uIG9mIGRpZmZzIChhZ2FpbnN0IGZ1dHVyZSBvciBwYXN0
IG9yaWdpbmFsIHNvdXJjZXMpLiAgVGhlCiAgIHByZXByb2Nlc3NlZCBzb3VyY2Ugd2l0aG91
dCBpbmNsdWRlIFBJcyBiZWNvbWVzIHRoZSBkZWZhdWx0IHB1YmxpYwogICBYTUwgc291cmNl
IG9mIHRoZSBwb3N0ZWQgZHJhZnQgKFIxMC9iKS4gIElmIGFueSBvZiB0aGUgaW5jbHVkZSBQ
SXMKICAga25vd24gdG8gdGhlIFRvb2xzZXQgY2Fubm90IGJlIGhhbmRsZWQsIGFuIGVycm9y
IGlzIHJlY29yZGVkIChSMTEvYiksCiAgIGFuZCB0aGUgc3VibWl0dGVyIGlzIGVuY291cmFn
ZWQgdG8gZG8gdGhlIHByZXByb2Nlc3NpbmcgbG9jYWxseSwKICAgYmVmb3JlIHN1Ym1pdHRp
bmcgdGhlIGRyYWZ0IChSMTExL2IpLgoKICAgVW5jb21wcmVzc2VkIGRyYWZ0IGZvcm1hdHMg
b3RoZXIgdGhhbiBYTUwgYXJlIG5vdCBwcmVwcm9jZXNzZWQuCgo4LjIgIFByb2Nlc3NpbmcK
CiAgIFdoZW4gbm8gcGxhaW4gdGV4dCBmb3JtYXQgb2YgdGhlIGRyYWZ0IGlzIHN1Ym1pdHRl
ZCwgYnV0IFhNTCBzb3VyY2VzCiAgIGFyZSBhdmFpbGFibGUsIHRoZSBUb29sc2V0IGF0dGVt
cHRzIHRvIGdlbmVyYXRlIHBsYWluIHRleHQgZm9ybWF0CiAgIGZyb20gc3VibWl0dGVkIFhN
TCBzb3VyY2VzIChSNzAvYikuCgogICBJZiBYTUwgc291cmNlcyBhcmUgYXZhaWxhYmxlLCB0
aGUgVG9vbHNldCBnZW5lcmF0ZXMgSFRNTCBkcmFmdCBmb3JtYXQKICAgKFIxMTIvYykuICBI
VE1MIGdlbmVyYXRpb24gZmFpbHVyZXMgc2hvdWxkIHJlc3VsdCBpbiB3YXJuaW5ncywgbm90
CiAgIGVycm9ycyAoUjExNS9jKS4gIEhUTUwgZ2VuZXJhdGlvbiBpcyBub3QgbWVhbnQgdG8g
YmUgaW1wbGVtZW50ZWQKICAgdW50aWwgdGhlIEVuaGFuY2VtZW50IHN0YWdlIGlzIHJlYWNo
ZWQgKFIxMzAvYSkuICBJbiBnZW5lcmFsLCBIVE1MCiAgIGdlbmVyYXRpb24gaXMgZGVzaXJh
YmxlIGJlY2F1c2UgSFRNTCBkcmFmdHMgYXJlIHVzdWFsbHkgZWFzaWVyIHRvCiAgIG5hdmln
YXRlIHRoYW4gcGxhaW4gdGV4dCBkcmFmdHMgZHVlIHRvIGltcHJvdmVkIG92ZXJhbGwgcmVh
ZGFiaWxpdHkKICAgYW5kIGxpbmtzLiAgQXMgYW55IEVuaGFuY2VtZW50IFN0YWdlIGZlYXR1
cmUsIEhUTUwgZ2VuZXJhdGlvbiBtYXkgYmUKICAgZHJvcHBlZCBvciBkcmFzdGljYWxseSBj
aGFuZ2VkIHRvIHJlZmxlY3QgdGhlbi1jdXJyZW50IElFVEYgY29uc2Vuc3VzCiAgIGFuZCB0
aGUgZXhwZXJpZW5jZSBvZiB0aGUgZmlyc3QgdHdvIGltcGxlbWVudGF0aW9uIHN0YWdlcy4K
CiAgIEhpbnQ6IFRoZSBUb29sc2V0IGltcGxlbWVudGVycyBzaG91bGQgbm90IGFzc3VtZSB0
aGF0IGRyYWZ0IGZvcm1hdHMKICAgZ2VuZXJhdGVkIGJ5IHRoZSBzYW1lIHRvb2wgZnJvbSB0
aGUgc2FtZSBzb3VyY2UgZm9ybWF0IGhhdmUKICAgZXNzZW50aWFsbHkgdGhlIHNhbWUgY29u
dGVudC4gIFRoZSBnZW5lcmF0aW9uIHRvb2wgbWF5IGhhdmUgb3B0aW9ucwogICB0aGF0IGFs
bG93IGF1dGhvcnMgdG8gZ2VuZXJhdGUgY29udGVudCBleGNsdXNpdmUgdG8gYSBzcGVjaWZp
YwogICBnZW5lcmF0ZWQgZm9ybWF0LiAgU3VjaCBvcHRpb25zIG1pZ2h0IGJlIGFidXNlZC4K
CjguMyAgU3RvcmFnZQoKICAgVGhlIENoZWNrIGFjdGlvbiBuZWVkcyB0byBzdG9yZSBhbGwg
ZHJhZnQgZm9ybWF0cyBzbyB0aGF0CiAgIHN1Y2Nlc3NmdWxseSB2YWxpZGF0ZWQgZHJhZnRz
IGNhbiBsYXRlciBiZSBhdXRvLXBvc3RlZCBhdCBzdWJtaXR0ZXIKICAgcmVxdWVzdC4gIFRo
ZSBhY3Rpb24gc3RvcmVzIGFsbCBzdWJtaXR0ZWQgZm9ybWF0cyBvZiB0aGUgZHJhZnQgaW4g
YQogICBzdGFnaW5nIGFyZWEgZGVkaWNhdGVkIHRvIHRoZSBUb29sc2V0IChSMTIvYSkuICBJ
ZiwgYWZ0ZXIgZ2FyYmFnZQogICBjb2xsZWN0aW9uLCB0aGUgc3RhZ2luZyBhcmVhIGlzIGZ1
bGwgKGkuZS4sIHRoZSB0b3RhbCB1c2VkIHNpemUgaGFzCiAgIHJlYWNoZWQgdGhlIGNvbmZp
Z3VyZWQgbWF4aW11bSBjYXBhY2l0eSksIHRoZSBzdWJtaXR0ZXIgYW5kIHRoZQogICBTZWNy
ZXRhcmlhdCBhcmUgbm90aWZpZWQgb2YgYSBmYXRhbCBlcnJvciAoUjEzL2EpLgoKOC40ICBF
eHRyYWN0aW9uCgogICBUaGUgVG9vbHNldCBleHRyYWN0cyBtZXRhLWRhdGEgZnJvbSB0aGUg
Zm9sbG93aW5nIHN0b3JlZCBkcmFmdAogICBmb3JtYXRzOiBwbGFpbiB0ZXh0IChSMTMxL2Ep
LCBYTUwgKFIxMzIvYiksIGFuZCBvdGhlciAoUjEzMy9jKS4gIElmIGEKICAgbWV0YS1kYXRh
IGV4dHJhY3Rpb24gZmFpbHMsIHRoZSBUb29sc2V0IHJlY29yZHMgYW4gZXJyb3IgKFIxNS9h
KS4KCgoKUm91c3Nrb3YgICAgICAgICAgICAgICAgRXhwaXJlcyBPY3RvYmVyIDIxLCAyMDA1
ICAgICAgICAgICAgICAgW1BhZ2UgMTJdCgwKSW50ZXJuZXQtRHJhZnQgICAgIElEIFN1Ym1p
c3Npb24gVG9vbHNldDogUmVxdWlyZW1lbnRzICAgICAgICBBcHJpbCAyMDA1CgoKICAgTWV0
YS1kYXRhIGV4dHJhY3Rpb24gaXMgbmVjZXNzYXJ5IHRvIHZhbGlkYXRlIGFuZCBwb3N0IHRo
ZSBkcmFmdC4KICAgRXh0cmFjdGlvbiBmcm9tIGFsbCBmb3JtYXRzIGlzIG5lY2Vzc2FyeSB0
byB2YWxpZGF0ZSB0aGF0IGFsbCBtZXRhLQogICBkYXRhIG1hdGNoZXMgYWNyb3NzIGFsbCBm
b3JtYXRzIChpbiBhZGRpdGlvbiB0byBhbmQgYmVmb3JlIHRoZQogICBUb29sc2V0IGNhbiB2
YWxpZGF0ZSB0aGF0IHRoZSBjb250ZW50cyBtYXRjaGVzIGFzIHdlbGwpLgoKICAgU2VjdGlv
biAxNyBkb2N1bWVudHMgYSBub24tb2J2aW91cyBpbXBsZW1lbnRhdGlvbiBzY2hlZHVsZSBy
ZWxhdGVkIHRvCiAgIHRoZSBhYm92ZSB0d28gcmVxdWlyZW1lbnRzLiAgV2hlbiBvbmx5IHBh
cnRpYWwgc3VwcG9ydCBmb3IgZm9ybWF0CiAgIGludGVycHJldGF0aW9uIGlzIGF2YWlsYWJs
ZSwgb25seSBpbnRlcnByZXRlZCBmb3JtYXRzIGFyZSBzdWJqZWN0IHRvCiAgIGV4dHJhY3Rp
b24gYW5kIHZhbGlkYXRpb24gcmVxdWlyZW1lbnRzLiAgSW4gb3RoZXIgd29yZHMsIGlmIHRo
ZQogICBUb29sc2V0IGRvZXMgbm90IHlldCBzdXBwb3J0IGludGVycHJldGF0aW9uIG9mIGEg
Z2l2ZW4gZm9ybWF0LCB0aGVuCiAgIHRoZSBjb3JyZXNwb25kaW5nIGluZm9ybWF0aW9uIGlz
IHN0b3JlZCBhbmQgbWFkZSBhdmFpbGFibGUgImFzIGlzIiwKICAgcmVnYXJkbGVzcyBvZiB0
aGUgYWN0dWFsIGNvbnRlbnQuCgogICBUaGUgZHJhZnQgaW50ZXJwcmV0ZXIgZXh0cmFjdHMg
dGhlIGZvbGxvd2luZyBtZXRhLWRhdGEgZnJvbSBlYWNoCiAgIGRyYWZ0IGZvcm1hdCAoUjE2
L2EpOgoKICAgaWRlbnRpZmllcjogQWxzbyBrbm93biBhcyBkcmFmdCAiZmlsZW5hbWUiLiAg
Rm9yIGV4YW1wbGUsCiAgICAgIGRyYWZ0LWlldGYtc2lldmUtdmFjYXRpb24tMTMgLgoKICAg
dmVyc2lvbjogQSBub24tbmVnYXRpdmUgaW50ZWdlciBudW1iZXIgcmVwcmVzZW50aW5nIGRy
YWZ0IHZlcnNpb24KICAgICAgbnVtYmVyIChhbHNvIGtub3duIGFzIGRyYWZ0IHJldmlzaW9u
IG51bWJlcikuICBGb3IgZXhhbXBsZSwgdGhlCiAgICAgIG51bWJlciBzZXZlbiBpbiBkcmFm
dC1pZXRmLXNpZXZlLXZhY2F0aW9uLTA3LgoKICAgbmFtZTogVGhlIGNvbW1vbiBwYXJ0IG9m
IGFsbCBkcmFmdCBpZGVudGlmaWVycyBmb3IgYWxsIHZlcnNpb25zIG9mCiAgICAgIHRoZSBz
YW1lIGRyYWZ0LiAgSW4gb3RoZXIgd29yZHMsIGEgZHJhZnQgaWRlbnRpZmllciB3aXRob3V0
IHRoZQogICAgICB2ZXJzaW9uIGNvbXBvbmVudC4gIEZvciBleGFtcGxlLCBkcmFmdC1pZXRm
LXNpZXZlLXZhY2F0aW9uIGluCiAgICAgIGRyYWZ0LWlldGYtc2lldmUtdmFjYXRpb24tMDcu
CgogICBXRyBJRDogV29ya2luZyBHcm91cCBpZGVudGlmaWVyLiAgRm9yIGV4YW1wbGUsICJz
aWV2ZSIgaW4KICAgICAgImRyYWZ0LWlldGYtc2lldmUtdmFjYXRpb24tMDciIGlzIGEgV0cg
SUQuICBUaGUgV0cgSUQgdmFsdWUgaXMKICAgICAgZW1wdHkgZm9yIGRyYWZ0cyB0aGF0IGFy
ZSBub3QgV0ctbmFtZWQgZHJhZnRzLgoKICAgV0cgZmxhZzogVHJ1ZSBmb3IgV0dOIGRyYWZ0
cyBhbmQgZmFsc2UgZm9yIGFsbCBvdGhlciBkcmFmdHMuICBGb3IKICAgICAgZXhhbXBsZSwg
InRydWUiIGZvciAiZHJhZnQtaWV0Zi1zaWV2ZS12YWNhdGlvbi0xMyIuICBUaGlzIGZsYWcK
ICAgICAgb25seSBpbmZsdWVuY2VzIHRoZSBmdXJ0aGVyIGhhbmRsaW5nIG9mIGluaXRpYWwg
KHZlcnNpb24gMDApIGRyYWZ0CiAgICAgIHN1Ym1pc3Npb25zLgoKICAgdGl0bGU6IEEgaHVt
YW4tZnJpZW5kbHkgZHJhZnQgdGl0bGUuICBGb3IgZXhhbXBsZSwgdGhlIHRpdGxlIG9mIHRo
aXMKICAgICAgZG9jdW1lbnQgaXMgIlJlcXVpcmVtZW50cyBmb3IgYW4gSUVURiBEcmFmdCBT
dWJtaXNzaW9uIFRvb2xzZXQiCgogICBhdXRob3JzOiBBIGxpc3Qgb2YgYWxsIGRyYWZ0IGF1
dGhvcnMuICBGb3IgZWFjaCBhdXRob3IsIHRoZWlyIG5hbWUKICAgICAgYW5kIGVtYWlsIGFk
ZHJlc3MgYXJlIGV4dHJhY3RlZC4KCiAgIGFic3RyYWN0OiBUaGUgZHJhZnQgYWJzdHJhY3Qg
dGV4dC4KCgoKCgoKClJvdXNza292ICAgICAgICAgICAgICAgIEV4cGlyZXMgT2N0b2JlciAy
MSwgMjAwNSAgICAgICAgICAgICAgIFtQYWdlIDEzXQoMCkludGVybmV0LURyYWZ0ICAgICBJ
RCBTdWJtaXNzaW9uIFRvb2xzZXQ6IFJlcXVpcmVtZW50cyAgICAgICAgQXByaWwgMjAwNQoK
CiAgIGNyZWF0aW9uIGRhdGU6IFRoZSBkcmFmdCB2ZXJzaW9uIGNyZWF0aW9uIGRhdGUuCgog
ICBleHBpcmF0aW9uIGRhdGU6IFRoZSBkcmFmdCB2ZXJzaW9uIGV4cGlyYXRpb24gZGF0ZS4K
CiAgIHNpemU6IFRoZSBudW1iZXIgb2YgcGFnZXMgYW5kIG9jdGV0cyBpbiB0aGUgcHJpbWFy
eSBmb3JtYXQgb2YgdGhlCiAgICAgIGRyYWZ0LiAgVGhlIGRlZmluaXRpb24gb2YgYSBwYWdl
IGRlcGVuZHMgb24gdGhlIGZvcm1hdCBhbmQgbWF5IGJlCiAgICAgIGltcHJlY2lzZSBvciBh
cmJpdHJhcnkgZm9yIHNvbWUgZm9ybWF0cy4KCiAgIEZhaWx1cmUgdG8gZXh0cmFjdCBhbnkg
ZmllbGQgcmVzdWx0cyBpbiBlcnJvciAoUjk1L2EpLgoKICAgVGhlIFRvb2xzZXQgcmVxdWly
ZXMgYXV0aG9yIGVtYWlsIGFkZHJlc3NlcyBiZWNhdXNlIHRoZXkgYXJlCiAgIGVzc2VudGlh
bCBmb3Igbm90aWZ5aW5nIGNvLWF1dGhvcnMgdGhhdCB0aGVpciBkcmFmdCBoYXMgYmVlbiBw
b3N0ZWQuCiAgIElmIHRoZXJlIGFyZSBubyBzdWNoIG5vdGlmaWNhdGlvbnMsIGEgc3VibWl0
dGVyIGFkZGluZyBhIGNvLWF1dGhvciB0bwogICB0aGUgZHJhZnQgd2l0aG91dCB0aGUgY28t
YXV0aG9yJ3MgY29uc2VudCBtYXkgbm90IGJlIGNhdWdodCBmb3IgYQogICB3aGlsZS4gIFN1
Y2ggInN1cnByaXNlIiBjby1hdXRob3JzaGlwcyBoYXZlIGhhcHBlbmVkIGluIHRoZSBwYXN0
IGFuZAogICBjYW4gYmUgcXVpdGUgYW5ub3lpbmcuICBIb3dldmVyLCBzaW5jZSB0aGUgVG9v
bHNldCBkb2VzIG5vdCBzb2xpY2l0CiAgIGNvLWF1dGhvcnMnIGNvbnNlbnQgdG8gcG9zdCBh
IHZhbGlkIGRyYWZ0IChhbmQgc3VjaCBzb2xpY2l0YXRpb24KICAgd291bGQgbm90IGdvIGJl
eW9uZCBlbWFpbCBjb250cm9sIHZlcmlmaWNhdGlvbiBhbnl3YXkpLCBpdCBpcyBub3QKICAg
cG9zc2libGUgdG8gc3RvcCBhIG1hbGljaW91cyBzdWJtaXR0ZXIgZnJvbSBhZGRpbmcgY28t
YXV0aG9ycyB3aXRob3V0CiAgIHRoZWlyIGtub3dsZWRnZS4KCiAgIExpa2Ugb3RoZXIgbWV0
YS1kYXRhIGl0ZW1zIGFib3ZlLCBkcmFmdCBjcmVhdGlvbiBhbmQgZXhwaXJhdGlvbiBkYXRl
cwogICBhcmUgZXh0cmFjdGVkIGZyb20gdGhlIGRyYWZ0OyB0aGVpciB2YWx1ZXMgZG8gbm90
IGRlcGVuZCBvbiB0aGUKICAgYWN0dWFsIHN1Ym1pc3Npb24gdGltZSAoaS5lLiwgdGhlIHRp
bWUgdGhlIENoZWNrIGFjdGlvbiBzdGFydHMpLgogICBIb3dldmVyLCB0aGUgdmFsaWRhdGlv
biBwcm9jZWR1cmUgKHNlZSBTZWN0aW9uIDguNSkgbWF5IGRlY2xhcmUgYW55CiAgIGV4dHJh
Y3RlZCBkYXRlIGludmFsaWQgYWZ0ZXIgdGFraW5nIGludG8gY29uc2lkZXJhdGlvbiBjdXJy
ZW50IChpLmUuLAogICBzdWJtaXNzaW9uKSB0aW1lLCBJRVRGIGRyYWZ0IGV4cGlyYXRpb24g
cnVsZXMsIGFuZCBvdGhlciBmYWN0b3JzCiAgIGV4dGVybmFsIHRvIHRoZSBkcmFmdC4KCjgu
NSAgVmFsaWRhdGlvbgoKICAgRHJhZnRzIG5lZWQgdG8gYmUgdmFsaWRhdGVkIHRvIGNhdGNo
IGJyb2tlbiBzdWJtaXNzaW9ucy4gIFZhbGlkYXRpb24KICAgYWxzbyBoZWxwcyBlZHVjYXRl
IG9yIHdhcm4gYXV0aG9ycyBvZiBwcm9ibGVtcyB0aGF0IG1heSBiZWNvbWUgc2hvdy0KICAg
c3RvcHBlcnMgd2hlbiB0aGUgZHJhZnQgaXMgc2VudCBmb3IgSUVURiBMYXN0IENhbGwgYW5k
IElFU0cgcmV2aWV3LgogICBJRVRGIHN0YW5kYXJkcyBoYXZlIHRvIGZvbGxvdyBhIHNldCBv
ZiBzeW50YXggYW5kIHNlbWFudGljcwogICByZXF1aXJlbWVudHMgKHNlZSB0aGUgIklELU5J
VFMiIGRvY3VtZW50IGF0CiAgIDxodHRwOi8vd3d3LmlldGYub3JnL0lELUNoZWNrbGlzdC5o
dG1sPi4gIE1vc3Qgb2YgdGhvc2UgcmVxdWlyZW1lbnRzCiAgIGFyZSBub3QgZW5mb3JjZWQg
Zm9yIEludGVybmV0LURyYWZ0cy4gIEhvd2V2ZXIsIGZvbGxvd2luZyB0aGVtIG1heQogICBp
bXByb3ZlIGRyYWZ0IHF1YWxpdHksIHJlZHVjZSB0aGUgSUVTRyBsb2FkLCBhbmQgaW5jcmVh
c2UgdGhlIGNoYW5jZXMKICAgb2YgdGhlIGRyYWZ0IGJlaW5nIGFwcHJvdmVkIGFzIGFuIFJG
Qy4KCiAgIFdoZW4gdmFsaWRhdGluZyBhIGdpdmVuIGRyYWZ0LCBpdCBpcyBpbXBvcnRhbnQg
dG8gZGlzdGluZ3Vpc2ggYmV0d2VlbgogICBhYnNvbHV0ZSByZXF1aXJlbWVudHMgYW5kIGRl
c2lyYWJsZSBkcmFmdCBwcm9wZXJ0aWVzLiAgQm90aAogICBjYXRlZ29yaWVzIGFyZSBjaGVj
a2VkIGZvciwgYnV0IHZpb2xhdGlvbnMgaGF2ZSBkaWZmZXJlbnQgZWZmZWN0cwogICBkZXBl
bmRpbmcgb24gdGhlIGNhdGVnb3J5LiAgVGhlIHR3byBjYXRlZ29yaWVzIGFyZSBkZXRhaWxl
ZCBpbiB0aGUKICAgZm9sbG93aW5nIHN1YnNlY3Rpb25zLgoKICAgV2hlbiBhIHZhbGlkIGRy
YWZ0IGlzIGJlaW5nIHBvc3RlZCBhbmQgc3VibWl0dGVyIGF1dGhvcml6YXRpb24gb3IgY28t
CgoKClJvdXNza292ICAgICAgICAgICAgICAgIEV4cGlyZXMgT2N0b2JlciAyMSwgMjAwNSAg
ICAgICAgICAgICAgIFtQYWdlIDE0XQoMCkludGVybmV0LURyYWZ0ICAgICBJRCBTdWJtaXNz
aW9uIFRvb2xzZXQ6IFJlcXVpcmVtZW50cyAgICAgICAgQXByaWwgMjAwNQoKCiAgIGF1dGhv
ciBub3RpZmljYXRpb24gaXMgcGVyZm9ybWVkLCB2YWxpZGF0aW9uIHJlc3VsdHMgc2hvdWxk
IGJlCiAgIGluY2x1ZGVkIGluIHRoZSBlbWFpbCAoUjgxL2IpIHNvIHRoYXQgdGhlIHN1Ym1p
dHRlciBjYW4gc2VlIG1ldGEtZGF0YQogICBleHRyYWN0aW9uIGFuZCB2YWxpZGF0aW9uIHdh
cm5pbmdzLiAgTm90ZSB0aGF0IHRoZXNlIHJlc3VsdHMgY2Fubm90CiAgIGluY2x1ZGUgZXJy
b3JzIHNpbmNlIG9ubHkgdmFsaWQgZHJhZnRzIGNhbiBiZSBwb3N0ZWQuCgo4LjUuMSAgQWJz
b2x1dGUgcmVxdWlyZW1lbnRzCgogICBWaW9sYXRpbmcgYW55IG9mIHRoZXNlIHJlcXVpcmVt
ZW50cyB3b3VsZCBwcmV2ZW50IGEgZHJhZnQgdG8gYmUKICAgYXV0b21hdGljYWxseSBwb3N0
ZWQgKFIxNy9hKS4gIFRoZSBvZmZlbmRpbmcgZHJhZnQgd291bGQgaGF2ZSB0byBiZQogICBm
aXhlZCBvciBzdWJtaXR0ZWQgZm9yIG1hbnVhbCBwb3N0aW5nLCB3aXRoIGFuIGV4cGxhbmF0
aW9uIHdoeSB0aGUKICAgYWJzb2x1dGUgcmVxdWlyZW1lbnRzIG5lZWQgdG8gYmUgdmlvbGF0
ZWQgKG9yIHdoeSB0aGUgVmFsaWRhdG9yIG1pcy0KICAgZGV0ZWN0ZWQgdmlvbGF0aW9ucyku
ICBUaGVzZSBleHBsYW5hdGlvbnMgbWF5IHNwZWVkIHVwIFNlY3JldGFyaWF0CiAgIHBvc3Rp
bmcgZGVjaXNpb24gYW5kIG1heSBoZWxwIFNlY3JldGFyaWF0IHRvIGltcHJvdmUgdGhlIFRv
b2xzZXQKICAgaW1wbGVtZW50YXRpb24uCgogICAxLiAgQWxsIGF2YWlsYWJsZSBtZXRhLWRh
dGEgZW50cmllcyBtdXN0IG1hdGNoIGFjcm9zcyBhbGwgc3VibWl0dGVkCiAgICAgICBkcmFm
dCBmb3JtYXRzIChSMTgvYSkuICBGb3IgZXhhbXBsZSwgaWYgdGhlIGludGVycHJldGVyIG1h
bmFnZWQKICAgICAgIHRvIGV4dHJhY3QgYSBkcmFmdCB0aXRsZSBmcm9tIGJvdGggdGhlIHBs
YWluIHRleHQgYW5kIHRoZSBQREYKICAgICAgIGZvcm1hdCwgYm90aCB0aXRsZXMgbXVzdCBt
YXRjaC4gIFRoaXMgcmVxdWlyZW1lbnQgcHJldmVudHMKICAgICAgIGFjY2lkZW50YWwgc3Vi
bWlzc2lvbiBvZiBtaXNtYXRjaGluZyBmb3JtYXRzLgoKICAgMi4gIFZlcnNpb24gMDAgb2Yg
YSBXb3JraW5nIEdyb3VwIGRyYWZ0IGhhcyBhIGNvcnJlc3BvbmRpbmcgV29ya2luZwogICAg
ICAgR3JvdXAgYXBwcm92YWwgKFIyMC9hKS4gIFRoaXMgYXBwcm92YWwgY2FuIGJlIHJlbGF5
ZWQgYmVmb3JlIG9yCiAgICAgICBhZnRlciB0aGUgZmlyc3QgZHJhZnQgc3VibWlzc2lvbiwg
YnkgYSBDaGFpciBvciBTZWNyZXRhcnkgb2YgdGhlCiAgICAgICBXRy4gIFNlZSBTZWN0aW9u
IDguNS40IGZvciByZWxhdGVkIHJlcXVpcmVtZW50cy4KCiAgIDMuICBUaGUgZHJhZnQgSUQg
bXVzdCBiZSBjb3JyZWN0IChSMjIvYSksIGluY2x1ZGluZyB0aGUgZHJhZnQgdmVyc2lvbgog
ICAgICAgbnVtYmVyIHZhbHVlLiAgRHJhZnQgdmVyc2lvbiBudW1iZXJzIG11c3Qgc3RhcnQg
d2l0aCB6ZXJvIGFuZAogICAgICAgaW5jcmVhc2UgYnkgb25lIHdpdGggZXZlcnkgbmV3IHZl
cnNpb24uICBUbyBzYXRpc2Z5IHRoaXMKICAgICAgIHJlcXVpcmVtZW50LCB0aGUgVG9vbHNl
dCB3b3VsZCBoYXZlIHRvIGNvbnN1bHQgdGhlIHJlcG9zaXRvcnkgb2YKICAgICAgIGFscmVh
ZHkgcG9zdGVkIGRyYWZ0cywgaW5jbHVkaW5nIGV4cGlyZWQgb25lcy4KCiAgIDQuICBBbiBJ
RVRGIElQUiBTdGF0ZW1lbnQgYW5kIG90aGVyIGJvaWxlcnBsYXRlIHJlcXVpcmVkIGZvciBk
cmFmdHMKICAgICAgIGFjY29yZGluZyB0byBbUkZDMzk3OF0gYW5kIFtSRkMzOTc5XSAob3Ig
c3VjY2Vzc29ycykgbXVzdCBhcHBlYXIKICAgICAgIGluIHRoZSBkcmFmdCB0ZXh0IChSMjMv
YSkuCgogICA1LiAgVGhlIGNyZWF0aW9uIG9mIHRoZSBkcmFmdCB2ZXJzaW9uIGNvdWxkIGhh
dmUgaGFwcGVuZWQgNDggaG91cnMgb3IKICAgICAgIGxlc3MgYmVmb3JlIHN1Ym1pc3Npb24g
dGltZS4gIEhpbnQ6IEltcGxlbWVudGVycyBzaG91bGQgYmUKICAgICAgIGNhcmVmdWwgdG8g
aGFuZGxlIGNyZWF0aW9uIGRhdGVzIHRoYXQgYXBwZWFyIHRvIGJlIGluIHRoZSBwYXN0IG9y
CiAgICAgICBpbiB0aGUgZnV0dXJlLCBkdWUgdG8gcG9zc2libGUgdGltZSB6b25lIGRpZmZl
cmVuY2VzLiAgTWFraW5nIHRoZQogICAgICAgbW9zdCBmb3JnaXZpbmcvcGVybWlzc2l2ZSBh
c3N1bXB0aW9uIGFib3V0IHRoZSB0aW1lIHpvbmUgc2hvdWxkCiAgICAgICBzdWZmaWNlLgoK
ICAgNi4gIFRoZSBkcmFmdCB2ZXJzaW9uIGV4cGlyYXRpb24gZGF0ZSBvYmV5cyBJRVRGIGRy
YWZ0IGV4cGlyYXRpb24KICAgICAgIHJ1bGVzLgoKICAgNy4gIE5vIElFVEYgc3VibWlzc2lv
biBibGFja291dCBwZXJpb2QgYXBwbGllcy4gIEhpbnQ6ICBJRVRGCiAgICAgICBibGFja291
dHMgbXVzdCBiZSBlbmZvcmNlZCBiYXNlZCBvbiBzdWJtaXNzaW9uIHRpbWUsIG5vdCBwb3Nz
aWJsZQoKCgpSb3Vzc2tvdiAgICAgICAgICAgICAgICBFeHBpcmVzIE9jdG9iZXIgMjEsIDIw
MDUgICAgICAgICAgICAgICBbUGFnZSAxNV0KDApJbnRlcm5ldC1EcmFmdCAgICAgSUQgU3Vi
bWlzc2lvbiBUb29sc2V0OiBSZXF1aXJlbWVudHMgICAgICAgIEFwcmlsIDIwMDUKCgogICAg
ICAgZHJhZnQgY3JlYXRpb24gdGltZS4KCiAgIDguICBQb3N0aW5nIHRoZSBkcmFmdCBtdXN0
IG5vdCByZXN1bHQgaW4gYW55IERlbmlhbCBvZiBTZXJ2aWNlIChEb1MpCiAgICAgICBhdHRh
Y2sgdGhyZXNob2xkIHRvIGJlIGNyb3NzZWQgKFI5Ny9hKS4gIFNwZWNpZmljIHRocmVzaG9s
ZHMgYXJlCiAgICAgICBkb2N1bWVudGVkIGluIFNlY3Rpb24gOC41LjMuCgogICA5LiAgWE1M
IHNvdXJjZXMgKGlmIGF2YWlsYWJsZSkgYXJlIHZhbGlkIHdpdGggcmVzcGVjdCB0byB0aGUg
WE1MCiAgICAgICBmb3JtYXQgW1hNTF0gKFIxNTMvYykgYW5kIFhNTCBEb2N1bWVudCBUeXBl
IERlZmluaXRpb24gKERURCkgZm9yCiAgICAgICBJRVRGIGRyYWZ0cyAoUjE1NC9jKS4gIE5v
dGUgdGhhdCBkdXJpbmcgdGhlIGZpcnN0IHR3bwogICAgICAgaW1wbGVtZW50YXRpb24gc3Rh
Z2VzLCB0aGUgY29ycmVzcG9uZGluZyB2YWxpZGF0aW9uIGZhaWx1cmVzCiAgICAgICByZXN1
bHQgaW4gd2FybmluZ3MgYW5kIG5vdCBlcnJvcnMgKHNlZSBTZWN0aW9uIDguNS4yKS4KCiAg
IFRoZSBYTUwgRFREIGZvciBJRVRGIGRyYWZ0cyBpcyBkb2N1bWVudGVkIGluIFtSRkMyNjI5
XSB3aXRoIHJlY2VudAogICBjaGFuZ2VzIGF2YWlsYWJsZSBpbiBbSS1ELm1yb3NlLXdyaXRp
bmctcmZjc10uICBIaW50OiBCaWxsIEZlbm5lcidzCiAgICJSRkMgMjYyOSB2YWxpZGF0b3Ii
IGF0CiAgIGh0dHA6Ly9ydGcuaWV0Zi5vcmcvfmZlbm5lci9pZXRmL3htbDJyZmMtdmFsaWQv
IChvciBpdHMgZGVyaXZhdGl2ZSkKICAgbWF5IGJlIHVzZWZ1bCBmb3IgWE1MIGZvcm1hdCBh
bmQgRFREIHZhbGlkYXRpb24uCgo4LjUuMiAgRGVzaXJhYmxlIGZlYXR1cmVzCgogICBWaW9s
YXRpbmcgYW55IG9mIHRoZSBmb2xsb3dpbmcgcmVxdWlyZW1lbnRzIGRvZXMgbm90IHByZXZl
bnQgdGhlCiAgIHN1Ym1pdHRlciBmcm9tIGF1dG8tcG9zdGluZyB0aGUgZHJhZnQgKFIyNC9h
KS4KCiAgIDEuICBBbGwgYXV0b21hdGljYWxseSB0ZXN0YWJsZSBuaXRzIGluIHRoZSAiSUQt
TklUUyIgZG9jdW1lbnQgYXQKICAgICAgIDxodHRwOi8vd3d3LmlldGYub3JnL0lELUNoZWNr
bGlzdC5odG1sPiAoUjExNi9iKS4gIFRoZSBUb29sc2V0CiAgICAgICBzaG91bGQgdXNlIGV4
dGVybmFsIHRvb2xzIHRvIGNoZWNrIHRoZXNlIHJhdGhlciB0aGFuIGVtYmVkIG5pdHMKICAg
ICAgIGNoZWNraW5nIGNvZGUgKFIxMTcvYSkuICBIaW50OiBIZW5yaWsgTGV2a293ZXR6JyBp
ZG5pdHMgdG9vbCBjYW4KICAgICAgIGJlIHVzZWQgKGh0dHA6Ly9pZXRmLmxldmtvd2V0ei5j
b20vdG9vbHMvaWRuaXRzLykgYW5kIG90aGVyIHRvb2xzCiAgICAgICBjYW4gYmUgd3JpdHRl
biBvciBhZG9wdGVkLgoKICAgMi4gIE5ldyBkcmFmdCB2ZXJzaW9ucyBhcmUgZXhwZWN0ZWQg
KFIyMS9iKS4gIEZvciBleGFtcGxlLCB2ZXJzaW9uIDAwCiAgICAgICBvZiBhbiBpbmRpdmlk
dWFsIGRyYWZ0IGlzIGFsd2F5cyBleHBlY3RlZCwgd2hpbGUgcG9zdGluZyBhIG5ldwogICAg
ICAgdmVyc2lvbiBvZiBhIGRyYWZ0IGFscmVhZHkgdW5kZXIgdGhlIElFU0cgcmV2aWV3IHNo
b3VsZCBnZW5lcmF0ZQogICAgICAgYSB3YXJuaW5nLgoKICAgMy4gIElmIGJvdGggWE1MIGFu
ZCBwbGFpbiB0ZXh0IGZvcm1hdHMgYXJlIHN1Ym1pdHRlZCwgdGhlIHN1Ym1pdHRlZAogICAg
ICAgcGxhaW4gdGV4dCBtYXRjaGVzIHdoYXQgY2FuIGJlIGdlbmVyYXRlZCBiYXNlZCBvbiBz
dWJtaXR0ZWQgWE1MCiAgICAgICAoUjE0Ni9iKS4KCiAgIDQuICBUaGUgcHJldmlvdXMgdmVy
c2lvbiwgaWYgYW55LCB3YXMgcG9zdGVkIGF0IGxlYXN0IDI0IGhvdXJzIGFnbwogICAgICAg
KFI5Ni9iKS4gIFRoaXMgd2FybmluZyBtYXkgcHJldmVudCBzb21lIGh1bWFuIGVycm9ycywg
ZXNwZWNpYWxseQogICAgICAgd2hlbiBtdWx0aXBsZSBhdXRob3JzIG1heSBwb3N0IHRoZSBz
YW1lIGRyYWZ0LgoKICAgNS4gIFhNTCBzb3VyY2VzIChpZiBhdmFpbGFibGUpIGFyZSB2YWxp
ZCB3aXRoIHJlc3BlY3QgdG8gdGhlIFhNTAogICAgICAgZm9ybWF0IChSMTU1L2IpIGFuZCBY
TUwgRFREIGZvciBJRVRGIGRyYWZ0cyAoUjE1Ni9iKS4gIFRoZXNlCiAgICAgICByZXF1aXJl
bWVudHMgYmVjb21lIGFic29sdXRlIGFmdGVyIHRoZSBzZWNvbmQgaW1wbGVtZW50YXRpb24K
ICAgICAgIHBoYXNlLiAgU2VlIFNlY3Rpb24gOC41LjEgZm9yIHJlbGF0ZWQgaW5mb3JtYXRp
b24uCgoKCgpSb3Vzc2tvdiAgICAgICAgICAgICAgICBFeHBpcmVzIE9jdG9iZXIgMjEsIDIw
MDUgICAgICAgICAgICAgICBbUGFnZSAxNl0KDApJbnRlcm5ldC1EcmFmdCAgICAgSUQgU3Vi
bWlzc2lvbiBUb29sc2V0OiBSZXF1aXJlbWVudHMgICAgICAgIEFwcmlsIDIwMDUKCgogICBX
aGVuIGNvbXBhcmluZyBnZW5lcmF0ZWQgYW5kIHN1Ym1pdHRlZCBwbGFpbiB0ZXh0IGZvcm1h
dHMgdG8gc2F0aXNmeQogICBSMTQ2LCBhIHN0YW5kYXJkIHdvcmQtYmFzZWQgZGlmZiBpcyBz
dWZmaWNpZW50IGZvciBpbml0aWFsIFRvb2xzZXQKICAgaW1wbGVtZW50YXRpb25zIChSMTQ3
L2IpLiAgSG93ZXZlciwgYSBjdXN0b20gZnV6enkgbWF0Y2hpbmcgZnVuY3Rpb24KICAgY2Fu
IGJlIGRldmVsb3BlZCAoUjE0OC9jKSB0byBtaW5pbWl6ZSBmYWxzZSB3YXJuaW5ncyBkdWUg
dG8sIGZvcgogICBleGFtcGxlLCBkcmFmdCB0ZXh0IGZvcm1hdHRpbmcgZGlmZmVyZW5jZXMu
ICBXaGVuIGRpZmZlcmVuY2VzIGFyZQogICBkZXRlY3RlZCwgYSBjb21wbGV0ZSBkaWZmIG1h
eSBiZSBwcm92aWRlZCBvbiBhIHNlcGFyYXRlIHBhZ2UKICAgKFIxNDkvYyksIGluIGFkZGl0
aW9uIHRvIHRoZSB3YXJuaW5nLgoKICAgSGludDogV2hlbiBjb21wYXJpbmcgZ2VuZXJhdGVk
IGFuZCBzdWJtaXR0ZWQgcGxhaW4gdGV4dCBmb3JtYXRzLCB0aGUKICAgVG9vbHNldCBtYXkg
dHJ5IHNldmVyYWwgcmVjZW50IHhtbDJyZmMgdmVyc2lvbnMgZm9yIHBsYWluIHRleHQKICAg
Z2VuZXJhdGlvbiwgdG8gZWxpbWluYXRlIHdhcm5pbmdzIGR1ZSB0byBkaWZmZXJlbmNlcyBh
bW9uZyB4bWwycmZjCiAgIHZlcnNpb25zLgoKOC41LjMgIERvUyB0aHJlc2hvbGRzCgogICBU
aGUgZm9sbG93aW5nIHRhYmxlIGRvY3VtZW50cyBEb1MgYXR0YWNrIHRocmVzaG9sZHMgZm9y
IHZhcmlvdXMgZHJhZnQKICAgY2F0ZWdvcmllcy4gIERhaWx5IGxpbWl0cyBjb3JyZXNwb25k
IHRvIGFsbCBkcmFmdHMgKGFuZCBhbGwgZHJhZnQKICAgZm9ybWF0cykgd2l0aGluIHRoZSBj
YXRlZ29yeS4gIE90aGVyIHRocmVzaG9sZHMgbWF5IGJlIGludHJvZHVjZWQgYW5kCiAgIHRo
ZXNlIGluaXRpYWwgdGhyZXNob2xkcyBtYXkgYmUgYWRqdXN0ZWQgYXMgbmVjZXNzYXJ5LiAg
VGhlCiAgIHRocmVzaG9sZHMgYXJlIGxpa2VseSB0byBiZWNvbWUgbW9yZSBzbWFydC9keW5h
bWljIHdpdGggZXhwZXJpZW5jZS4KCiAgIERvUyBhdHRhY2sgdGhyZXNob2xkczoKCiAgICst
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0t
Ky0tLS0tLS0tLS0tKwogICB8IGNhdGVnb3J5ICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIHwgdmVyc2lvbnMvZGF5IHwgICAgTUIvZGF5IHwKICAgKy0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0rCiAg
IHwgZHJhZnRzIHdpdGggdGhlIHNhbWUgZHJhZnQgbmFtZSAgICAgICAgfCAgICAgICAgICAg
IDMgfCAgICAgICAgIDUgfAogICB8IGRyYWZ0cyB3aXRoIHRoZSBzYW1lIHN1Ym1pdHRlciAg
ICAgICAgIHwgICAgICAgICAgICA1IHwgICAgICAgIDEwIHwKICAgfCBXR04gZHJhZnRzIHdp
dGggdGhlIHNhbWUgV0cgSUQgICAgICAgICB8ICAgICAgICAgICAxMCB8ICAgICAgICAxNSB8
CiAgIHwgYWxsIGRyYWZ0cyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAgICAg
ICAzMDAgfCAgICAgICAxNTAgfAogICArLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLSsKCiAgIFRoZSB0aHJlc2hv
bGRzIGFyZSBtZWFudCB0byBsaW1pdCBkZXN0cnVjdGl2ZSBlZmZlY3RzIG9mIERvUyBhdHRh
Y2tzCiAgIChlLmcuLCBmdWxsIGRpc2tzIGNhdXNlIG90aGVyIHRhc2tzIHRvIGZhaWwpLCBh
bGxvdyBmb3IgY2FwYWNpdHkKICAgcGxhbm5pbmcgKGUuZy4sIGhvdyBtdWNoIHN0b3JhZ2Ug
c3BhY2UgdGhlIFRvb2xzZXQgbmVlZHMpLCBhbmQgbGltaXQKICAgYW5ub3lpbmcgc2lkZS1l
ZmZlY3RzIG9mICJ0b28gbWFueSIgZHJhZnRzIGJlaW5nIHBvc3RlZCAoZS5nLiwgd2hlbiBh
CiAgIHBlcnNvbiByZWNlaXZlcyBwb3N0aW5nIG5vdGlmaWNhdGlvbnMgYWJvdXQgYSBnaXZl
biBkcmFmdCBvciBhIGdpdmVuCiAgIHdvcmtpbmcgZ3JvdXApLiAgVGhlIFRvb2xzZXQgc2hv
dWxkIHdhcm4gdGhlIFNlY3JldGFyaWF0IGlmIHRvdGFsCiAgIHN1Ym1pc3Npb25zIGFyZSBh
cHByb2FjaGluZyBhbnkgdGhyZXNob2xkIChSMTM0L2IpLiAgSGludDogQmFuZHdpZHRoCiAg
IGF2YWlsYWJsZSBmb3Igc3VibWlzc2lvbnMgbWF5IG5lZWQgdG8gYmUgdGhyb3R0bGVkIChv
biBhIG5ldHdvcmsKICAgc3VibmV0IGJhc2lzPykgdG8gbWFrZSByZWFjaGluZyB0aGUgZGFp
bHkgc2l6ZSBxdW90YSAod2l0aCBtYWxpY2lvdXMKICAgaW50ZW50KSBkaWZmaWN1bHQuCgo4
LjUuNCAgV0cgYXBwcm92YWwKCiAgIEZvciB2ZXJzaW9uIDAwIG9mIGEgV0dOIGRyYWZ0LCB0
aGUgVG9vbHNldCBjaGVja3MgZm9yIGFuIGV4aXN0aW5nIFdHCiAgIGFwcHJvdmFsIChSMTI1
L2EpLiAgSWYgKGEpIG5vIGFwcHJvdmFsIGV4aXN0cywgYW5kIChiKSB0aGUgVG9vbHNldAog
ICBkb2VzIG5vdCBzdXBwb3J0IHRoZSAid2FpdGluZyBmb3IgV0cgYXBwcm92YWwiIGZlYXR1
cmUsIHRoZSBUb29sc2V0CgoKClJvdXNza292ICAgICAgICAgICAgICAgIEV4cGlyZXMgT2N0
b2JlciAyMSwgMjAwNSAgICAgICAgICAgICAgIFtQYWdlIDE3XQoMCkludGVybmV0LURyYWZ0
ICAgICBJRCBTdWJtaXNzaW9uIFRvb2xzZXQ6IFJlcXVpcmVtZW50cyAgICAgICAgQXByaWwg
MjAwNQoKCiAgIHJlY29yZHMgYW4gZXJyb3IgKFIxMzUvYSkuCgogICBJZiAoYSkgbm8gYXBw
cm92YWwgZXhpc3RzLCAoYikgdGhlIFRvb2xzZXQgc3VwcG9ydHMgdGhlICJ3YWl0aW5nIGZv
cgogICBXRyBhcHByb3ZhbCIgZmVhdHVyZSwgYW5kIChjKSB0aGUgZHJhZnQgY2Fubm90IGJl
IHBvc3RlZCBldmVuIGlmIFdHCiAgIGFwcHJvdmFsIGlzIHJlY2VpdmVkLCB0aGVuIHRoZSBU
b29sc2V0IHJlY29yZHMgYSB3YXJuaW5nIHRoYXQgYSBXRwogICBhcHByb3ZhbCB3b3VsZCBi
ZSByZXF1aXJlZCBvbmNlIGFsbCBlcnJvcnMgcHJldmVudGluZyBkcmFmdCBmcm9tCiAgIHBv
c3RpbmcgYXJlIGZpeGVkIChSMTM3L2IpLgoKICAgSWYgKGEpIG5vIGFwcHJvdmFsIGV4aXN0
cywgKGIpIHRoZSBUb29sc2V0IHN1cHBvcnRzIHRoZSAid2FpdGluZyBmb3IKICAgV0cgYXBw
cm92YWwiIGZlYXR1cmUsIGFuZCAoYykgdGhlIGRyYWZ0IGNhbiBiZSBwb3N0ZWQgaWYgV0cg
YXBwcm92YWwKICAgaXMgcmVjZWl2ZWQsIHRoZW4gdGhlIFRvb2xzZXQgZXhwbGFpbnMgdGhl
IHNpdHVhdGlvbiB0byB0aGUgc3VibWl0dGVyCiAgIGFuZCBhc2tzIHdoZXRoZXIgdGhlIHN1
Ym1pdHRlciB3aXNoZXMgdG8gc29saWNpdCBhbiBleHBsaWNpdCBhcHByb3ZhbAogICBmcm9t
IHRoZSBXRyAoUjEyNi9iKS4gIElmIHRoZSBzdWJtaXR0ZXIgZGVjaWRlcyB0byBnbyBhaGVh
ZCB3aXRoCiAgIHNvbGljaXRhdGlvbiwgdGhlIFRvb2xzZXQgcHV0cyB0aGUgc3VibWlzc2lv
biBpbnRvIGEgIndhaXRpbmcgZm9yIFdHCiAgIGFwcHJvdmFsIiBzdGF0ZSB1bnRpbCB0aGUg
YXBwcm92YWwgaXMgYXZhaWxhYmxlIChSMTI3L2IpLiAgT3RoZXJ3aXNlLAogICB0aGUgVG9v
bHNldCByZWNvcmRzIGEgIm5vIFdHIGFwcHJvdmFsIGlzIGV4cGVjdGVkIiBlcnJvciAoUjEz
OC9iKS4KCiAgIERldGFpbHMgb2YgdGhlIGFwcHJvdmFsIHJlY29yZGluZyBhbmQgYWNjZXNz
IGludGVyZmFjZXMgYXMgd2VsbCBhcwogICB0aGUgbWVjaGFuaXNtIHRvIHJlc3VtZSB0aGUg
c3VibWlzc2lvbiB1cG9uIGFwcHJvdmFsIGFyZSBvdXQgb2YgdGhpcwogICBkb2N1bWVudCBz
Y29wZS4KCjkuICBDaGVjayBwYWdlCgogICBUaGUgQ2hlY2sgcGFnZSwgY3JlYXRlZCBieSB0
aGUgQ2hlY2sgYWN0aW9uLCBkaXNwbGF5cyBleHRyYWN0ZWQgZHJhZnQKICAgbWV0YS1kYXRh
IGFuZCB2YWxpZGF0aW9uIHJlc3VsdHMgKFIyNS9hKS4gIFRoZSBwdXJwb3NlIG9mIHRoZSBw
YWdlIGlzCiAgIHRvIGFsbG93IHRoZSBzdWJtaXR0ZXIgdG8gdmVyaWZ5IHdoZXRoZXIgdGhl
IHN0b3JlZCBkcmFmdCBhbmQKICAgYXV0b21hdGljYWxseSBleHRyYWN0ZWQgbWV0YS1kYXRh
IG1hdGNoIHRoZSBzdWJtaXR0ZXIncyBpbnRlbnQgYW5kIHRvCiAgIGJlIGluZm9ybWVkIG9m
IHZhbGlkYXRpb24gcHJvYmxlbXMuCgogICBNZXRhLWRhdGEgaXRlbXMgc3BlY2lmaWVkIGlu
IFNlY3Rpb24gOC40IHRoYXQgZmFpbGVkIHZhbGlkYXRpb24KICAgY2hlY2tzIG11c3QgYmUg
bWFya2VkIHNwZWNpYWxseSAocmF0aGVyIHRoYW4gc2lsZW50bHkgb21pdHRlZCBvcgogICBp
Z25vcmVkKSAoUjI2L2IpLiAgSGludDogcmVuZGVyaW5nIHRob3NlIGl0ZW1zIGluIHJlZCwg
d2l0aCBsaW5rcyB0bwogICBjb3JyZXNwb25kaW5nIHZhbGlkYXRpb24gZXJyb3JzIG9yIHdh
cm5pbmdzLCBtYXkgZm9yY2UgYXV0aG9ycyB0byBwYXkKICAgYXR0ZW50aW9uLgoKICAgVmFs
aWRhdGlvbiBtZXNzYWdlcyBpbmNsdWRlIGJvdGggZXJyb3JzIGFuZCB3YXJuaW5ncy4gIEVh
Y2gKICAgdmFsaWRhdGlvbiBtZXNzYWdlIHJlZmVycyB0byBub3JtYXRpdmUgZG9jdW1lbnQo
cykgY29udGFpbmluZyB0aGUKICAgY29ycmVzcG9uZGluZyB2YWxpZGF0aW9uIHJ1bGVzIChS
MjcvYikuCgogICBUaGUgQ2hlY2sgcGFnZSBhbGxvd3MgdGhlIHN1Ym1pdHRlciB0byBlbnRl
ciBleHRlcm5hbCBtZXRhLWRhdGEKICAgKFNlY3Rpb24gOS4xKSAoUjI4L2EpLiAgSWYgdmFs
aWRhdGlvbiB3YXMgc3VjY2Vzc2Z1bCwgYW4KICAgImF1dG9tYXRpY2FsbHkgcG9zdCB0aGUg
ZHJhZnQgbm93IiBidXR0b24gaXMgcHJvdmlkZWQgKFIyOS9hKS4KICAgUmVnYXJkbGVzcyBv
ZiB2YWxpZGF0aW9uIHJlc3VsdHMsICJhZGp1c3QgYW5kIHBvc3QgbWFudWFsbHkiIGFuZAog
ICAiY2FuY2VsIiBidXR0b25zIGFyZSBwcm92aWRlZCAoUjMwL2EpLgoKICAgVGhlIENoZWNr
IHBhZ2UgcHJvdmlkZXMgYSBwcmV2aWV3IG9mIHRoZSBkcmFmdCBwbGFpbiB0ZXh0IGZvcm1h
dAogICAoUjMxL2EpLCB3aXRoIGEgbGluayB0byBzZWUgaG93IHRoZSBlbnRpcmUgZHJhZnQg
KHdpdGggYWxsIGl0cwogICBmb3JtYXRzKSB3b3VsZCBsb29rIGxpa2UgaWYgcG9zdGVkIChS
ODIvYikuICBIaW50OiB0aGUgQ2hlY2sgcGFnZQoKCgpSb3Vzc2tvdiAgICAgICAgICAgICAg
ICBFeHBpcmVzIE9jdG9iZXIgMjEsIDIwMDUgICAgICAgICAgICAgICBbUGFnZSAxOF0KDApJ
bnRlcm5ldC1EcmFmdCAgICAgSUQgU3VibWlzc2lvbiBUb29sc2V0OiBSZXF1aXJlbWVudHMg
ICAgICAgIEFwcmlsIDIwMDUKCgogICBwcmV2aWV3IHNob3VsZCBiZSBzdWZmaWNpZW50bHkg
bG9uZyB0byBsZXQgYXV0aG9ycyBkZXRlY3Qgb2J2aW91cwogICBkcmFmdCBtaXNtYXRjaCBv
ciBtaXNpbnRlcnByZXRhdGlvbiBlcnJvcnMgYnV0IHNob3J0IGVub3VnaCB0byBhdm9pZAog
ICBkb21pbmF0aW5nIHRoZSBwYWdlLiAgRGlzcGxheWluZyB0aGUgZmlyc3QgbGluZSBvZiB0
aGUgZHJhZnQgdGhyb3VnaAogICB0aGUgbGFzdCBsaW5lIG9mIHRoZSBhYnN0cmFjdCBtYXkg
YmUgc3VmZmljaWVudC4KCiAgIEZvciBkcmFmdCB1cGRhdGVzLCB0aGUgQ2hlY2sgcGFnZSBy
ZXBvcnRzIHRoZSB0aW1lIGFuZCB0aGUgc3VibWl0dGVyCiAgIG9mIHRoZSBsYXN0IHVwZGF0
ZSAoUjgzL2IpLiAgVGhpcyBpbmZvcm1hdGlvbiBpcyBlc3BlY2lhbGx5IHVzZWZ1bAogICB3
aGVuIG11bHRpcGxlIGF1dGhvcnMgYXJlIHdvcmtpbmcgb24gdGhlIHNhbWUgZHJhZnQuICBU
aGUgcGFnZSBhbHNvCiAgIHByb3ZpZGVzIGEgbGluayB0byBnZW5lcmF0ZSBhIGRpZmYgYWdh
aW5zdCB0aGUgbGFzdCBwb3N0ZWQgdmVyc2lvbgogICAoUjg0L2MpLgoKOS4xICBFeHRlcm5h
bCBtZXRhLWRhdGEKCiAgIFRoZSBDaGVjayBwYWdlIHNvbGljaXRzIHRoZSBmb2xsb3dpbmcg
bWV0YS1kYXRhIGZyb20gdGhlIHN1Ym1pdHRlci4KICAgVGhpcyBpbmZvcm1hdGlvbiBtdXN0
IGJlIHN1cHBsaWVkIGJ5IHN1Ym1pdHRlciBiZWNhdXNlIGl0IGNhbm5vdCBiZQogICBleHRy
YWN0ZWQgZnJvbSB0aGUgZHJhZnQ6CgogICAgICBTdWJtaXR0ZXIgZW1haWwgYWRkcmVzcyAo
UjMyL2EpLiAgV2hlbiBzdWJtaXR0ZXIgaXMgbm90IGFuCiAgICAgIGV4cGVjdGVkIHN1Ym1p
dHRlciAoc2VlIFNlY3Rpb24gNCksIGF1dG9tYXRlZCBwb3N0aW5nIGlzIG5vdAogICAgICBw
b3NzaWJsZSBhbmQgdGhlIGRyYWZ0IGhhcyB0byBnbyB0aHJvdWdoIHRoZSBTZWNyZXRhcmlh
dCAoUjk4KS4KICAgICAgSGludDogQSBzZXQgb2YgY2hlY2tib3hlcyBuZXh0IHRvIGV4dHJh
Y3RlZCBhdXRob3IgbmFtZXMgYWxvbmcKICAgICAgd2l0aCBhICJub25lIG9mIHRoZSBhYm92
ZSIgY2hlY2tib3ggd2l0aCBhbiBpbnB1dCBmaWVsZCB3b3VsZAogICAgICBzdWZmaWNlLgoK
ICAgICAgQSBsaXN0IG9mIGRyYWZ0cyByZXBsYWNlZCBieSB0aGlzIGRyYWZ0IChSMzMvYyku
ICBUaGlzIGlzIHVzZWZ1bAogICAgICB0byBtYWtlIHJlcGxhY2VkIGRyYWZ0cyBpbnZpc2li
bGUuICBUaGlzIGRvY3VtZW50IGRvZXMgbm90IHNwZWNpZnkKICAgICAgYW55IGFjdGlvbnMg
bmVjZXNzYXJ5IHRvIGFjdHVhbGx5IHJlcGxhY2UgYW4gZXhpc3RpbmcgZHJhZnQKICAgICAg
YmVjYXVzZSBleGlzdGluZyBkcmFmdCBtYW5pcHVsYXRpb24gaXMgb3V0IG9mIHNjb3BlLCBh
bmQgYmVjYXVzZQogICAgICBzZWN1cml0eSBjb25jZXJucyBhbmQgb3RoZXIgY29tcGxpY2F0
aW9ucyBvZiBzdWNoIGFjdGlvbnMgd291bGQgYmUKICAgICAgYmV0dGVyIGFkZHJlc3NlZCBi
eSBhIHNlcGFyYXRlIHNwZWNpZmljYXRpb24uCgogICAgICBQcmltYXJ5IGVtYWlsIGFkZHJl
c3MgZm9yIGRpc2N1c3Npb24gb2YgdGhpcyBkcmFmdCAoUjcxL2IpLiAgSGludDoKICAgICAg
VGhlIFRvb2xzZXQgY2FuIHN1Z2dlc3QgdGhlIFdHIG1haWxpbmcgbGlzdCBhZGRyZXNzIGZv
ciBXR04KICAgICAgZHJhZnRzLCAoc3VibWl0dGluZykgYXV0aG9yIGFkZHJlc3MgZm9yIGlu
ZGl2aWR1YWwgZHJhZnRzLCBvciBldmVuCiAgICAgIHRoZSBmaXJzdCBlbWFpbCBhZGRyZXNz
IGluIGRyYWZ0IHRleHQuICBPZmZlcmluZyBhIGZldyBsaWtlbHkKICAgICAgYWRkcmVzc2Vz
IGluc3RlYWQgb2YgcmVseWluZyBleGNsdXNpdmVseSBvbiB1c2VyIGlucHV0IHdvdWxkIGFs
c28KICAgICAgcmVkdWNlIHRoZSBudW1iZXIgb2YgdHlwb3MuCgogICBFeGNlcHQgZm9yIHRo
ZSBzdWJtaXR0ZXIgZW1haWwgYWRkcmVzcywgZXh0ZXJuYWwgbWV0YS1kYXRhIGlzCiAgIG9w
dGlvbmFsIChSMTA5L2EpLgoKICAgSWYgYSBnaXZlbiBzdWJtaXR0ZXIgZW1haWwgYWRkcmVz
cyBiZWxvbmdzIHRvIGFuIGV4cGVjdGVkIHN1Ym1pdHRlcgogICAoaS5lLiwgYmVsb25ncyB0
byBvbmUgb2YgdGhlIGNhdGVnb3JpZXMgYmVsb3cpLCB0aGUgVG9vbHNldCBwZXJmb3Jtcwog
ICBzdWJtaXR0ZXIgYXV0aGVudGljYXRpb24gZHVyaW5nIGEgUG9zdCBOb3cgYWN0aW9uIChS
MTkvYSkuCiAgIE90aGVyd2lzZSwgYW4gZXJyb3IgaXMgcmVwb3J0ZWQgKFIxMTgvYSkuCgog
ICBUaGUgZm9sbG93aW5nIHBvc3NpYmxlIGV4cGVjdGVkIHN1Ym1pdHRlcnMgYXJlIGlkZW50
aWZpZWQgYnkgdGhlCiAgIFRvb2xzZXQsIHdpdGhvdXQgYW55IFNlY3JldGFyaWF0IGludGVy
dmVudGlvbjoKCgoKUm91c3Nrb3YgICAgICAgICAgICAgICAgRXhwaXJlcyBPY3RvYmVyIDIx
LCAyMDA1ICAgICAgICAgICAgICAgW1BhZ2UgMTldCgwKSW50ZXJuZXQtRHJhZnQgICAgIElE
IFN1Ym1pc3Npb24gVG9vbHNldDogUmVxdWlyZW1lbnRzICAgICAgICBBcHJpbCAyMDA1CgoK
ICAgICAgRm9yIHZlcnNpb24gMDAgb2YgYSBkcmFmdCwgYW55IHN1Ym1pdHRlciAoUjExOS9h
KS4KCiAgICAgIEZvciB2ZXJzaW9uIE4rMSBvZiBhIGRyYWZ0LCBhbiBhdXRob3Igb2YgdmVy
c2lvbiBOIG9mIHRoZSBzYW1lCiAgICAgIGRyYWZ0IChSMTIwL2EpLiAgVGhpcyByZXF1aXJl
bWVudCBvbmx5IG5lZWRzIHRvIGJlIHNhdGlzZmllZCBmb3IKICAgICAgZHJhZnRzIGZvciB3
aGljaCBOdGggdmVyc2lvbiB3YXMgcG9zdGVkIHVzaW5nIHRoZSBUb29sc2V0OyBvdGhlcgog
ICAgICBkcmFmdHMgbWF5IG5vdCBoYXZlIHRoZSBtZXRhLWluZm9ybWF0aW9uIGF2YWlsYWJs
ZSB3aGljaCBpcwogICAgICByZXF1aXJlZCB0byByZWxpYWJseSBnZXQgYSBsaXN0IG9mIGF1
dGhvcnMuCgogICAgICBGb3IgYSBXR04gZHJhZnQsIGEgQ2hhaXIgb2YgdGhlIGNvcnJlc3Bv
bmRpbmcgV0cgKFIxMjEvYikuCgogICAgICBGb3IgYW55IGRyYWZ0LCBhbiBJRVNHIG1lbWJl
ciAoUjEyMi9jKS4KCgoxMC4gIFBvc3QgTm93IGFjdGlvbgoKICAgVGhlIFBvc3QgTm93IGFj
dGlvbiBjaGVja3MgdGhhdCB0aGUgZHJhZnQgaGFzIGJlZW4gc3VjY2Vzc2Z1bGx5CiAgIHZh
bGlkYXRlZCAoUjM0L2EpLCB2YWxpZGF0ZXMgZXh0ZXJuYWwgbWV0YS1kYXRhIChpbmNsdWRp
bmcgc3VibWl0dGVyCiAgIGVtYWlsIGFkZHJlc3MpIChSMzUvYSksIGFuZCBwb3N0cyB0aGUg
ZHJhZnQgKFIzNi9hKS4gIFRoZSBzdWJtaXR0ZXIKICAgaXMgbm90aWZpZWQgb2YgdGhlIGFj
dGlvbiBwcm9ncmVzcyBhbmQgdGhlIGZpbmFsIHJlc3VsdCAoUjM3L2EpLgoKICAgVGhlIGV4
dGVybmFsIG1ldGEtZGF0YSBjb250YWlucyB0aGUgc3VibWl0dGVyJ3MgZW1haWwgYWRkcmVz
cy4gIEFzIGEKICAgcGFydCBvZiB0aGUgdmFsaWRhdGlvbiBwcm9jZWR1cmUsIHRoZSBQb3N0
IE5vdyBhY3Rpb24gYXV0aG9yaXplcyB0aGUKICAgc3VibWl0dGVyLiAgVGhlIGluaXRpYWwg
YWN0aW9uIGltcGxlbWVudGF0aW9uIGNoZWNrcyB0aGF0IHRoZQogICBzdWJtaXR0ZXIgaGFz
IGFjY2VzcyB0byBlbWFpbCBzZW50IHRvIHRoYXQgYWRkcmVzcyAoUjM4L2EpLgogICBFdmVu
dHVhbGx5LCB0aGUgVG9vbHNldCBzaG91bGQgYWNjZXB0IGNsaWVudCBjZXJ0aWZpY2F0ZXMg
c2lnbmVkIGJ5CiAgIElFVEYsIFBHUC1zaWduZWQgZW1haWwsIGFuZC9vciBvdGhlciBmb3Jt
cyBvZiBjbGllbnQtc2lkZQogICBhdXRoZW50aWNhdGlvbiB0byBlbGltaW5hdGUgdGhlIHdl
YWsgYW5kIGFubm95aW5nIGVtYWlsIGFjY2VzcyBjaGVjawogICAoUjExMC9jKS4gIElmIHN1
Ym1pdHRlciBhdXRoZW50aWNhdGlvbiBmYWlscywgdGhlIHN1Ym1pc3Npb24KICAgZXZlbnR1
YWxseSBhbmQgc2lsZW50bHkgdGltZXMgb3V0IChSMzkvYSkuCgogICBUaGUgVG9vbHNldCBw
cm92aWRlcyBib3RoIHdlYiAoUjk5L2EpIGFuZCBlbWFpbCAoUjEzOS9iKSBpbnRlcmZhY2Vz
CiAgIGZvciBjb25maXJtaW5nIGVtYWlsIGFjY2Vzcy4gIEhpbnQ6IFRvIGNoZWNrIHN1Ym1p
dHRlcidzIGFjY2VzcyB0bwogICBlbWFpbCwgdGhlIHRvb2wgY2FuIGVtYWlsIGEgaGFyZC10
by1ndWVzcyBjb29raWUgb3IgdG9rZW4gdG8gdGhlCiAgIHN1Ym1pdHRlcidzIGFkZHJlc3Mu
ICBUbyBjb250aW51ZSB3aXRoIHRoZSBzdWJtaXNzaW9uLCB0aGUgc3VibWl0dGVyCiAgIGlz
IHJlcXVlc3RlZCB0byBwYXN0ZSB0aGUgY29va2llIGF0IHRoZSBzcGVjaWZpZWQgVVJMLCBn
byB0byB0aGUKICAgdG9rZW4taG9sZGluZyBVUkwsIG9yIHJlc3BvbmQgdG8gdGhlIGVtYWls
LgoKICAgSW1tZWRpYXRlbHkgYWZ0ZXIgc2VuZGluZyBhbiBlbWFpbCB0byB0aGUgc3VibWl0
dGVyLCB0aGUgVGhlIFBvc3QgTm93CiAgIGFjdGlvbiBnZW5lcmF0ZXMgYW4gaW50ZXJtZWRp
YXRlIFJlY2VpcHQgcGFnZSB0aGF0IGV4cGxhaW5zIFRvb2xzZXQKICAgZXhwZWN0YXRpb25z
IGFuZCBwcm92aWRlcyB0aGUgc3VibWl0dGVyIHdpdGggdGhlIHN1Ym1pc3Npb24gSUQKICAg
KFIxMDAvYSkuICBUaGF0IG51bWJlciBhbGxvd3MgdGhlIFNlY3JldGFyaWF0IHRvIHRyb3Vi
bGVzaG9vdCBzdHVjawogICBzdWJtaXNzaW9ucyAoUjEwMS9hKSBhbmQgY2FuIGFsc28gYmUg
dXNlZCBmb3IgY2hlY2tpbmcgc3VibWlzc2lvbgogICBzdGF0dXMgd2l0aG91dCBTZWNyZXRh
cmlhdCBpbnZvbHZlbWVudCAoUjE0MC9iKS4KCiAgIEltbWVkaWF0ZWx5IGFmdGVyIHBvc3Rp
bmcgdGhlIGRyYWZ0LCB0aGUgVG9vbHNldCBub3RpZmllcyBhbGwgYXV0aG9ycwogICAod2l0
aCBrbm93biBlbWFpbCBhZGRyZXNzZXMpIG9mIHRoZSBwb3N0aW5nIChSMTAyL2EpLiAgVGhl
CiAgIG5vdGlmaWNhdGlvbiBlbWFpbCBjb250YWlucyB0aGUgaW5mb3JtYXRpb24gYXZhaWxh
YmxlIG9uIHRoZQogICAic3VjY2Vzc2Z1bCBwb3N0aW5nIiBSZWNlaXB0IHBhZ2UgZGVzY3Jp
YmVkIGJlbG93IChSMTAzL2EpLgoKCgpSb3Vzc2tvdiAgICAgICAgICAgICAgICBFeHBpcmVz
IE9jdG9iZXIgMjEsIDIwMDUgICAgICAgICAgICAgICBbUGFnZSAyMF0KDApJbnRlcm5ldC1E
cmFmdCAgICAgSUQgU3VibWlzc2lvbiBUb29sc2V0OiBSZXF1aXJlbWVudHMgICAgICAgIEFw
cmlsIDIwMDUKCgogICBJZiBkcmFmdCBwb3N0aW5nIGlzIHN1Y2Nlc3NmdWwsIHRoZSBzdWJt
aXNzaW9uIHN0YXRlIGlzIG1hcmtlZCBhcwogICBhdmFpbGFibGUgZm9yIGRlbGV0aW9uIChS
MTA1L2EpIHNvIHRoYXQgdGhlIGdhcmJhZ2UgY29sbGVjdGlvbgogICByb3V0aW5lIGV2ZW50
dWFsbHkgZGVsZXRlcyBpdC4KCjEwLjEgIFJlY2VpcHQgcGFnZQoKICAgQSBzdWNjZXNzZnVs
IFBvc3QgTm93IGFjdGlvbiByZXBvcnRzIGF0IGxlYXN0IHRoZSBmb2xsb3dpbmcKICAgaW5m
b3JtYXRpb24gb24gdGhlIGZpbmFsIFJlY2VpcHQgcGFnZSAoUjEwNC9hKToKCiAgIG8gIHRo
ZSBkcmFmdCBJRCBhbmQgYSBsaW5rIHRvIHRoZSBkcmFmdCBzdGF0dXMgcGFnZTsKCiAgIG8g
IHRoZSBkcmFmdCB0aXRsZSwgYXV0aG9ycywgYW5kIGFic3RyYWN0OwoKICAgbyAgdGhlIHN1
Ym1pc3Npb24gSUQKCiAgIG8gIGEgbGluayB0byB0aGUgZHJhZnQgc3VibWlzc2lvbiBzdGF0
dXMgcGFnZSAod2hlbiBzdGF0dXMgcXVlcmllcwogICAgICBhcmUgc3VwcG9ydGVkLCBzZWUg
UjE0MCkuCgogICBvICB0aGUgc3VibWl0dGVyJ3MgbmFtZSBhbmQgZW1haWwgYWRkcmVzcy4K
CiAgIFRoZSBwcmltYXJ5IHB1cnBvc2Ugb2YgdGhlIFJlY2VpcHQgcGFnZSBpcyB0byBpbmZv
cm0gYWxsIGRyYWZ0CiAgIGF1dGhvcnMgdGhhdCAoc3VwcG9zZWRseSkgdGhlaXIgZHJhZnQg
aGFzIGJlZW4gcG9zdGVkLiAgVGhlIHNlY29uZGFyeQogICBwdXJwb3NlIGlzIHRvIGxldCBh
dXRob3JzIGNyZWF0ZSBhIHBlcm1hbmVudCByZWNvcmQgb2YgdGhlIGV2ZW50IGFuZAogICB0
cm91Ymxlc2hvb3QgcG9zdGluZ3MuICBUaGUgc2FtZSBpbmZvcm1hdGlvbiBzaG91bGQgYmUg
c2VudCB0byBvdGhlcgogICBwYXJ0aWVzIGludGVyZXN0ZWQgaW4gdGhlIGRyYWZ0IChlLmcu
LCB0byB0aGUgV0cgbWFpbGluZyBsaXN0KSwgYnV0CiAgIDNyZCBwYXJ0eSBub3RpZmljYXRp
b24gc3BlY2lmaWNzIGFyZSBvdXQgb2YgdGhpcyBkb2N1bWVudCdzIHNjb3BlLgoKMTEuICBB
ZGp1c3QgYWN0aW9uCgogICBUaGUgQWRqdXN0IGFjdGlvbiBnZW5lcmF0ZXMgdGhlIEFkanVz
dCBwYWdlIChSNDAvYSksIHBvcHVsYXRpbmcgaXQKICAgd2l0aCBhdmFpbGFibGUgZXh0cmFj
dGVkIG1ldGEtZGF0YSBhbmQgZXh0ZXJuYWwgbWV0YS1kYXRhLCBhcyB3ZWxsIGFzCiAgIHZh
bGlkYXRpb24gcmVzdWx0cyBhbmQgYSBwcmV2aWV3LiAgU29tZSBpbmZvcm1hdGlvbiBtYXkg
YmUgbWlzc2luZywKICAgZGVwZW5kaW5nIG9uIGRyYWZ0IGludGVycHJldGF0aW9uIGFuZCB0
aGUgc3VjY2VzcyBvZiBwcmV2aWV3CiAgIGdlbmVyYXRpb24uCgoxMi4gIEFkanVzdCBwYWdl
CgogICBUaGUgQWRqdXN0IHBhZ2UgaW5jbHVkZXMgdGhlIHNhbWUgaW5mb3JtYXRpb24gYXMg
dGhlIENoZWNrIHBhZ2UsIGJ1dAogICBhbGxvd3MgdGhlIHN1Ym1pdHRlciB0byBhZGp1c3Qg
YWxsIGV4dHJhY3RlZCBkcmFmdCBtZXRhLWRhdGEgKGFuZCwKICAgbmF0dXJhbGx5LCBleHRl
cm5hbCBtZXRhLWRhdGEpIGF0IHdpbGwgKFI0MS9hKS4gIFN1Y2ggYWRqdXN0bWVudCBpcwog
ICBuZWNlc3Nhcnkgd2hlbiBhdXRvbWF0ZWQgZXh0cmFjdGlvbiBmYWlsZWQgdG8gZXh0cmFj
dCBjb3JyZWN0CiAgIGluZm9ybWF0aW9uLiAgVG8gYXZvaWQgYW55IG1pc21hdGNoIGJldHdl
ZW4gZHJhZnQgYW5kIGl0cyBtZXRhLWRhdGEsCiAgIGFkanVzdGVkIGRyYWZ0cyBjYW5ub3Qg
YmUgYXV0b21hdGljYWxseSBwb3N0ZWQgYW5kIHJlcXVpcmUgbWFudWFsCiAgIHZhbGlkYXRp
b24gYnkgdGhlIFNlY3JldGFyaWF0IChSNDIvYSkuICBTZWNyZXRhcmlhdCBzdGFmZiBjYW4g
cG9zdAogICBkcmFmdHMgd2l0aCBhZGp1c3RlZCBtZXRhLWRhdGEgYXMgZGVzY3JpYmVkIGlu
IFNlY3Rpb24gMTUuCgogICBUaGUgQWRqdXN0IHBhZ2UgYWxsb3dzIHRoZSBzdWJtaXR0ZXIg
dG8gZW50ZXIgYW4gaW5mb3JtYWwgY29tbWVudAogICBleHBsYWluaW5nIHdoeSBhZGp1c3Rt
ZW50cyBhcmUgbmVjZXNzYXJ5IGFuZCBhdXRvbWF0ZWQgcG9zdGluZyBtb2RlCgoKClJvdXNz
a292ICAgICAgICAgICAgICAgIEV4cGlyZXMgT2N0b2JlciAyMSwgMjAwNSAgICAgICAgICAg
ICAgIFtQYWdlIDIxXQoMCkludGVybmV0LURyYWZ0ICAgICBJRCBTdWJtaXNzaW9uIFRvb2xz
ZXQ6IFJlcXVpcmVtZW50cyAgICAgICAgQXByaWwgMjAwNQoKCiAgIGNhbm5vdCBiZSB1c2Vk
IChSNDgvYSkuICBTdWNoIGNvbW1lbnRzIG1heSBiZSBlc3NlbnRpYWwgZm9yIHRoZQogICBT
ZWNyZXRhcmlhdCBpbiB0aGVpciBlZmZvcnRzIHRvIHRyb3VibGVzaG9vdCB0aGUgcHJvYmxl
bS4KCiAgIFRoZSAicG9zdCBtYW51YWxseSIgYW5kICJjYW5jZWwiIGJ1dHRvbnMgYXJlIHBy
b3ZpZGVkIChSNDMvYSkuICBUaGUKICAgZm9ybWVyIGlzIGJhY2tlZCBieSB0aGUgIlBvc3Qg
TWFudWFsbHkiIGFjdGlvbiAoU2VjdGlvbiAxMykuCgoxMy4gIFBvc3QgTWFudWFsbHkgYWN0
aW9uCgogICBUaGUgUG9zdCBNYW51YWxseSBhY3Rpb24gc2VuZHMgYWRqdXN0ZWQgbWV0YS1k
YXRhIGFuZCBhIGRyYWZ0IHBvaW50ZXIKICAgdG8gdGhlIFNlY3JldGFyaWF0IGZvciBtYW51
YWwgdmFsaWRhdGlvbiBhbmQgcG9zdGluZyAoUjQ0L2EpLiAgQQogICByZWNlaXB0IHBhZ2Ug
aXMgZ2VuZXJhdGVkLCBpbnN0cnVjdGluZyB0aGUgc3VibWl0dGVyIHRvIHdhaXQgKFI0NS9h
KS4KICAgVGhlIFNlY3JldGFyaWF0IHdpbGwgbm90aWZ5IHRoZSBzdWJtaXR0ZXIgb25jZSB0
aGUgZHJhZnQgaXMgcG9zdGVkIG9yCiAgIHJlamVjdGVkLiAgVGhpcyBub3RpZmljYXRpb24g
aXMgc2VudCBieSB0aGUgVG9vbHNldCBpZiB0aGUKICAgU2VjcmV0YXJpYXQgaXMgdXNpbmcg
dGhlIFRvb2xzZXQgdG8gcG9zdCB0aGUgZHJhZnQgKFI0Ni9hKS4KCjE0LiAgUmVjZWlwdCBw
YWdlCgogICBUaGUgUmVjZWlwdCBwYWdlIGlzIGdlbmVyYXRlZCBieSB2YXJpb3VzIGFjdGlv
bnMgdG8gaW5mb3JtIHRoZQogICBzdWJtaXR0ZXIgb2YgdGhlIGN1cnJlbnQgc3VibWlzc2lv
biBzdGF0dXMgYW5kIGZ1cnRoZXIgYWN0aW9ucy4gIFRoZQogICBjb250ZW50cyBvZiB0aGUg
cGFnZSBpcyBsaWtlbHkgdG8gYmUgaGlnaGx5IGRlcGVuZGVudCBvbiB0aGUgYWN0aW9uCiAg
IGFuZCBzdGF0ZSBmb3Igd2hpY2ggcmVjZWlwdCBpcyBiZWluZyBnZW5lcmF0ZWQuICBUaGlz
IHNlY3Rpb24KICAgZG9jdW1lbnRzIGdlbmVyYWwgcmVxdWlyZW1lbnRzIGFwcGxpY2FibGUg
dG8gYWxsIGFjdGlvbnMgYW5kIHN0YXRlcy4KCiAgIFRoZSBSZWNlaXB0IHBhZ2Ugc2hvdWxk
IGdpdmUgdGhlIHN1Ym1pdHRlciBhIFVSSSBvciBhbm90aGVyCiAgIGlkZW50aWZpZXIgdGhh
dCBjYW4gYmUgdXNlZCBieSBTZWNyZXRhcmlhdCBmb3IgbWFudWFsIHRyb3VibGVzaG9vdGlu
ZwogICBvZiB0aGUgc3VibWlzc2lvbiAoUjYzL2EpLiAgVGhlIGlkZW50aWZpZXIgc2hvdWxk
IGJlIHBlcnBldHVhbAogICAoUjY0L2EpIGV2ZW4gdGhvdWdoIHRoZSBhc3NvY2lhdGVkIGRl
dGFpbHMgYXJlIGxpa2VseSB0byBiZQogICBldmVudHVhbGx5IGxvc3QgKGUuZy4sIGRyYWZ0
IHN1Ym1pc3Npb24gZGF0YSBhbmQgbG9ncyBhcmUgZGVsZXRlZAogICBmcm9tIHRoZSBzdGFn
aW5nIGFyZWEgYXMgYSBwYXJ0IG9mIHRoZSBnYXJiYWdlIGNvbGxlY3Rpb24gcm91dGluZSku
CiAgIEhpbnQ6IFRvb2xzIHNob3VsZCBkaXN0aW5ndWlzaCBvbGQgaWRlbnRpZmllcnMgZnJv
bSBpbnZhbGlkIG9uZXM7CiAgIHdoZW4gYSBnaXZlbiBpZGVudGlmaWVyIGlzIHJlZmVycmlu
ZyB0byBkZWxldGVkIGRhdGEsIHRoZSB0b29scwogICBhY2NlcHRpbmcgdGhlIGlkZW50aWZp
ZXIgc2hvdWxkIGluZm9ybSB0aGVpciB1c2VycyB0aGF0IHRoZQogICBpZGVudGlmaWVkIHN1
Ym1pc3Npb24gaXMgcmVjb2duaXplZCwgYnV0IHRoZSByZWxhdGVkIGluZm9ybWF0aW9uIGhh
cwogICBleHBpcmVkLgoKICAgVGhlIFJlY2VpcHQgcGFnZSBzaG91bGQgZ2l2ZSB0aGUgc3Vi
bWl0dGVyIGEgU2VjcmV0YXJpYXQgcG9pbnQtb2YtCiAgIGNvbnRhY3QgdG8gcmVwb3J0IHN1
Ym1pc3Npb24gcHJvYmxlbXMgKFI2NS9hKS4KCjE1LiAgQnlwYXNzaW5nIHRoZSBUb29sc2V0
CgogICBBIGJ1Z2d5IFRvb2xzZXQgaW1wbGVtZW50YXRpb24gb3IgdW51c3VhbCBjaXJjdW1z
dGFuY2VzIG1heSBmb3JjZSBhCiAgIHN1Ym1pdHRlciB0byBzdWJtaXQgYSBkcmFmdCB0byB0
aGUgU2VjcmV0YXJpYXQgZm9yIG1hbnVhbCBwcm9jZXNzaW5nLgogICBUaGlzIGNhbiBiZSBk
b25lIGJ5IGNob29zaW5nIHRoZSAibWFudWFsIHBvc3RpbmciIHJvdXRlIHN1cHBvcnRlZCBi
eQogICB0aGUgVG9vbHNldCAoUjQ3L2EpIG9yLCBhcyBhIGxhc3QgcmVzb3J0LCBieSBlbWFp
bGluZyB0aGUgZHJhZnQKICAgZGlyZWN0bHkgdG8gU2VjcmV0YXJpYXQuICBJbiBlaXRoZXIg
Y2FzZSwgYW4gaW5mb3JtYWwgImNvdmVyIGxldHRlciIKICAgaGFzIHRvIGFjY29tcGFueSB0
aGUgZHJhZnQuICBUaGUgbGV0dGVyIHNob3VsZCBleHBsYWluIHdoeSB0aGUKICAgYXV0b21h
dGVkIGludGVyZmFjZSBjYW5ub3QgYmUgdXNlZC4KCgoKClJvdXNza292ICAgICAgICAgICAg
ICAgIEV4cGlyZXMgT2N0b2JlciAyMSwgMjAwNSAgICAgICAgICAgICAgIFtQYWdlIDIyXQoM
CkludGVybmV0LURyYWZ0ICAgICBJRCBTdWJtaXNzaW9uIFRvb2xzZXQ6IFJlcXVpcmVtZW50
cyAgICAgICAgQXByaWwgMjAwNQoKCiAgIFdoZW4gcHJvY2Vzc2luZyBtYW51YWwgc3VibWlz
c2lvbnMsIHRoZSBTZWNyZXRhcmlhdCBtYXkgYmUgYWJsZSB0bwogICB1c2UgdGhlIFRvb2xz
ZXQuICBBIE1hbnVhbCBDaGVjayBwYWdlIHNpbWlsYXIgdG8gdGhlIGRlZmF1bHQgQ2hlY2sK
ICAgcGFnZSBwcm92aWRlcyBhdXRoZW50aWNhdGVkIFNlY3JldGFyaWF0IHN0YWZmIHdpdGgg
ZWRpdGFibGUgbWV0YS1kYXRhCiAgIGZpZWxkcyBhbmQgYSAiZm9yY2UgcG9zdGluZyIgYWN0
aW9uIChSNTAvYikuICBUaGUgZm9yY2VkIHBvc3RpbmcKICAgYWN0aW9uIGFjY2VwdHMgbWV0
YS1kYXRhIGZpZWxkcyAiYXMgaXMiLCBkb2VzIG5vdCB2ZXJpZnkgc3VibWl0dGVyCiAgIGFj
Y2VzcyB0byBlbWFpbCBvciBXRyBkcmFmdCBhdXRob3JpemF0aW9uLCBhbmQgcG9zdHMgdGhl
IGRyYWZ0IGFzIGlmCiAgIG5vIHZhbGlkYXRpb24gZXJyb3JzIHdlcmUgZm91bmQgKFI1MS9i
KS4gIFRoZSBNYW51YWwgQ2hlY2sgcGFnZQogICBzaG91bGQgc3RpbGwgY29udGFpbiBhbGwg
dGhlIGVycm9ycyBhbmQgd2FybmluZ3MgaWRlbnRpY2FsIHRvIHRob3NlCiAgIHNlZW4gYnkg
b3JkaW5hcnkgc3VibWl0dGVycyAoUjEwNi9iKSBzbyB0aGF0IHRoZSBTZWNyZXRhcmlhdCBr
bm93cwogICB3aGF0IHRoZSBUb29sc2V0IGlzIHVuaGFwcHkgYWJvdXQgKGlmIGFueXRoaW5n
KS4KCiAgIFVzaW5nIG1hbnVhbCBwcm9jZXNzaW5nIG1heSByZXN1bHQgaW4gc2lnbmlmaWNh
bnQgcG9zdGluZyBkZWxheXMuCiAgIEdlbmVyYXRlZCBzdWJtaXNzaW9uIHJlY2VpcHRzIG9y
IG5vdGlmaWNhdGlvbnMgb3VnaHQgdG8gZ2l2ZSB0aGUKICAgc3VibWl0dGVyIGFuIGV4cGVj
dGVkIHByb2Nlc3NpbmcgdGltZSBlc3RpbWF0ZSAoUjUzL2EpLgoKICAgVGhlIGludGVudCBv
ZiB0aGlzIG1vZGUgaXMgdG8gcHJvdmlkZSBhIHdheSBmb3Igc3VibWl0dGVycyB0byBieXBh
c3MKICAgYnVncyBvciBsaW1pdGF0aW9ucyBvZiB0aGUgYXV0b21hdGVkIG1lY2hhbmlzbXMg
aW4gb3JkZXIgdG8gcG9zdCBhbgogICAidW51c3VhbCIgZHJhZnQgb3IgdG8gcG9zdCBhIGRy
YWZ0IHVuZGVyICJ1bnVzdWFsIiBjaXJjdW1zdGFuY2VzLgogICBPbmUgZXhhbXBsZSB3b3Vs
ZCBiZSBhIGRyYWZ0IHRoYXQgZG9lcyBub3QgY29udGFpbiBzdGFuZGFyZCBJRVRGCiAgIGJv
aWxlcnBsYXRlIGJ1dCBoYXMgYSBzcGVjaWFsIElFU0cgcGVybWlzc2lvbiB0byBwb3N0IHRo
ZSBkcmFmdCB3aXRoCiAgIHRoZSBleHBlcmltZW50YWwgYm9pbGVycGxhdGUuICBBbm90aGVy
IGV4YW1wbGUgaXMgYSBkcmFmdCB0aGF0IGZhaWxzCiAgIGF1dG9tYXRlZCB2YWxpZGF0aW9u
IHRlc3RzIGR1ZSB0byBhIHZhbGlkYXRvciBidWcuCgogICBUaGUgYnlwYXNzIG1vZGUgaXMg
YWxzbyBsaWtlbHkgdG8gYmUgdXNlZCAoZWZmZWN0aXZlbHkpIGJ5IHRoZQogICBtYWpvcml0
eSBvZiBzdWJtaXR0ZXJzIGR1cmluZyB0aGUgVHJpYWwgc3RhZ2Ugb2YgdGhlIFRvb2xzZXQK
ICAgaW1wbGVtZW50YXRpb24sIHdoZW4gZmV3IHN1Ym1pdHRlcnMga25vdyBhYm91dCAob3Ig
YXJlIGFsbG93ZWQgdG8KICAgdXNlKSB0aGUgVG9vbHNldC4KCjE2LiAgRW1haWwgaW50ZXJm
YWNlCgogICBUaGUgVG9vbHNldCBzaG91bGQgaGF2ZSBhbiBlbWFpbCBpbnRlcmZhY2UgZm9y
IGF1dG9tYXRlZCBwb3N0aW5nIG9mCiAgIHZhbGlkIGRyYWZ0cyAoUjU1L2IpLiAgV2hpbGUg
dmlydHVhbGx5IGV2ZXJ5IGRvY3VtZW50ZWQgVG9vbHNldAogICBmdW5jdGlvbmFsaXR5IGNh
biwgdGVjaG5pY2FsbHksIGJlIGltcGxlbWVudGVkIGJlaGluZCBhbiBlbWFpbAogICBpbnRl
cmZhY2UsIGZlYXR1cmVzIG90aGVyIHRoYW4gcG9zdGluZyBvZiB2YWxpZCBkcmFmdHMgYXJl
IGJlbGlldmVkCiAgIHRvIGJlIHByb2hpYml0aXZlbHkgYXdrd2FyZCB0byBpbXBsZW1lbnQg
b3IgdXNlIHZpYSBlbWFpbC4KCiAgIFRoZSBlbWFpbCBpbnRlcmZhY2UgYWNjZXB0cyBhIGRy
YWZ0IGFzIGEgc2V0IG9mIGVtYWlsIHBhcnQocykgKG9uZQogICBwZXIgZHJhZnQgZm9ybWF0
KSAoUjU2L2IpLiAgRm9yIGV4YW1wbGUsIHRoZSBwbGFpbiB0ZXh0IGZvcm1hdCBjYW4gYmUK
ICAgc3VibWl0dGVkIGluIHRoZSAiYm9keSIgb2YgdGhlIGVtYWlsIG1lc3NhZ2UsIHdoaWxl
IFhNTCBzb3VyY2UgZm9ybWF0CiAgIGNhbiBiZSBvcHRpb25hbGx5IHNlbnQgYXMgYW4gImF0
dGFjaG1lbnQiIG9mIHRoZSBzYW1lIGVtYWlsIG1lc3NhZ2UuCiAgIEVhY2ggcGFydCBjYW4g
ZWl0aGVyIGNvbnRhaW4gdGhlIGFjdHVhbCBmb3JtYXQgZGF0YSAoUjE0MS9iKSBvciBhCiAg
IHNpbmdsZSBVUkwgcG9pbnRpbmcgdG8gaXQgKFIxNDIvYykuICBJbiB0aGUgbGF0dGVyIGNh
c2UsIHRoZSBUb29sc2V0CiAgIGhhcyB0byBmZXRjaCB0aGUgZm9ybWF0IGRhdGEuICBEZXRh
aWxzIG9mIFVSTC1mZXRjaGluZyBvcHRpb24gYXJlIG5vdAogICBkb2N1bWVudGVkIGhlcmUs
IGJ1dCBpdCBpcyBhc3N1bWVkIHRoYXQgSFRUUCBVUkxzIGFyZSBzdXBwb3J0ZWQgKGF0CiAg
IGxlYXN0KSwgYW5kIGZldGNoaW5nIGVycm9ycyBhcmUgcmVwb3J0ZWQuICBUaGlzIGRvY3Vt
ZW50IGRvZXMgbm90CiAgIHNwZWNpZnkgaG93IHRoZSBmb3JtYXQgb2YgZWFjaCBlbWFpbCBw
YXJ0IGlzIGRldGVybWluZWQsIGJ1dCBpdCBpcwogICBhc3N1bWVkIHRoYXQgTUlNRSB0eXBl
IGFuZCBjb250ZW50IHdvdWxkIG5lZWQgdG8gYmUgYW5hbHl6ZWQuCgoKCgpSb3Vzc2tvdiAg
ICAgICAgICAgICAgICBFeHBpcmVzIE9jdG9iZXIgMjEsIDIwMDUgICAgICAgICAgICAgICBb
UGFnZSAyM10KDApJbnRlcm5ldC1EcmFmdCAgICAgSUQgU3VibWlzc2lvbiBUb29sc2V0OiBS
ZXF1aXJlbWVudHMgICAgICAgIEFwcmlsIDIwMDUKCgogICBBZnRlciBhY2NlcHRpbmcgdGhl
IGRyYWZ0LCB0aGUgVG9vbHNldCB1c2VzIHRoZSBzZW5kZXIncyBlbWFpbAogICBhZGRyZXNz
IHRvIHNlbGVjdCB0aGUgc3VibWl0dGVyIGlkZW50aXR5IChSNTcvYiksIGNoZWNrcyB0aGUK
ICAgc3VibWlzc2lvbiAoUjU4L2IpLCBhbmQgcG9zdHMgdGhlIGRyYWZ0IGlmIHRoZSBjaGVj
ayBpcyBzdWNjZXNzZnVsCiAgIChSNTkvYikuICBUaGUgc3VibWl0dGVyIHNob3VsZCBiZSBu
b3RpZmllZCBvZiB0aGUgb3V0Y29tZSBvZiB0aGUKICAgZHJhZnQgc3VibWlzc2lvbiB2aWEg
ZW1haWwgKFI2MC9iKS4gIE90aGVyIHJlcXVpcmVtZW50cyBmb3IgdGhlIHdlYgogICBpbnRl
cmZhY2UgKGluY2x1ZGluZyByZXF1aXJlbWVudHMgb24gc3VibWlzc2lvbiBwcmVwcm9jZXNz
aW5nLCBkcmFmdAogICB2YWxpZGF0aW9uLCBzdWJtaXR0ZXIgYXV0aGVudGljYXRpb24sIGRy
YWZ0IHBvc3RpbmcsIGFuZAogICBub3RpZmljYXRpb24pIGFwcGx5IHRvIHRoZSBlbWFpbCBp
bnRlcmZhY2UuCgogICBUaGVyZWZvcmUsIGEgdHlwaWNhbCBzdWNjZXNzZnVsIHN1Ym1pc3Np
b24gdmlhIGVtYWlsIGludGVyZmFjZSBtYXkKICAgcmVzdWx0IGluIHRoZSBmb2xsb3dpbmcg
ZXhjaGFuZ2Ugb2YgbWVzc2FnZXMgKCJUIiBpcyBmb3IgIlRvb2xzZXQiLAogICAiUyIgaXMg
Zm9yICJzdWJtaXR0ZXIiLCBhbmQgIkEiIGlzIGZvciAiYWxsIGF1dGhvcnMgYW5kIHN1Ym1p
dHRlciIpOgoKICAgICAgUy0tPlQ6IHRoZSBkcmFmdCB2ZXJzaW9uCgogICAgICBTPC0tVDog
YSBjaGFsbGVuZ2UgdG8gdmVyaWZ5IGVtYWlsIGFjY2VzcwoKICAgICAgUy0tPlQ6IGEgcmVz
cG9uc2UgdG8gdGhlIGNoYWxsZW5nZQoKICAgICAgQTwtLVQ6IHdhcm5pbmdzIGFuZCB0aGUg
cmVjZWlwdAoKICAgd2hlcmUgdGhlIG1lc3NhZ2UgY29udGFpbmluZyB0aGUgY2hhbGxlbmdl
IG1heSBpbmNsdWRlIHdhcm5pbmdzIGFzCiAgIHdlbGwuCgogICBXaGVuIGRyYWZ0IHZhbGlk
YXRpb24gZmFpbHMsIHRoZSBmb2xsb3dpbmcgZW1haWxzIG1heSBiZSBleGNoYW5nZWQ6Cgog
ICAgICBTLS0+VDogdGhlIGRyYWZ0IHZlcnNpb24KCiAgICAgIFM8LS1UOiBlcnJvcnMgYW5k
IHJlY2VpcHQKCiAgIEVtYWlsIHBhcnRzL2F0dGFjaG1lbnRzIHRoYXQgYXJlIG5vdCByZWNv
Z25pemVkIGFzIGRyYWZ0IGZvcm1hdHMgYXJlCiAgIG5vdCBjb25zaWRlcmVkIGFzIGRyYWZ0
IGZvcm1hdHMuICBTdWNoIHBhcnRzIGFyZSBpZ25vcmVkIGJ5IHRoZQogICBUb29sc2V0IChS
MTA3L2IpLCBleGNlcHQgdGhhdCBhIHdhcm5pbmcgaXMgZ2VuZXJhdGVkIGZvciBlYWNoCiAg
IHVucmVjb2duaXphYmxlIHBhcnQgY29udGFpbmluZyBtb3JlIHRoYW4gd2hpdGVzcGFjZSAo
UjEwOC9iKS4gIFRoZXNlCiAgIHR3byByZXF1aXJlbWVudHMgYXJlIG1lYW50IHRvIG1ha2Ug
dGhlIGludGVyZmFjZSByb2J1c3QgaW4gdGhlCiAgIHByZXNlbmNlIG9mIGVtYWlsIHNpZ25h
dHVyZXMgYW5kIG90aGVyIHBhcnRzIG91dHNpZGUgb2YgdGhlIHN1Ym1pdHRlcgogICBjb250
cm9sLgoKICAgSGludDogVG9vbHNldCBhY3Rpb25zIGNhbiBiZSBpbXBsZW1lbnRlZCB0byBz
dXBwb3J0IGVtYWlsIGFuZCB3ZWIKICAgaW50ZXJmYWNlcyB3aXRob3V0IGNvZGUgZHVwbGlj
YXRpb24uCgogICBXaGlsZSBib3RoIHdlYiBhbmQgZW1haWwgaW50ZXJmYWNlcyBhbGxvdyBm
b3IgZmFzdCBwb3N0aW5nIG9mIHZhbGlkCiAgIGRyYWZ0cywgdGhlcmUgYXJlIHNpZ25pZmlj
YW50IGRpZmZlcmVuY2VzIGJldHdlZW4gdGhlIHR3byBpbnRlcmZhY2VzLgogICBQcmltYXJ5
IGFkdmFudGFnZXMgb2YgdGhlIGVtYWlsIGludGVyZmFjZSBhcmU6CgoKCgoKCgpSb3Vzc2tv
diAgICAgICAgICAgICAgICBFeHBpcmVzIE9jdG9iZXIgMjEsIDIwMDUgICAgICAgICAgICAg
ICBbUGFnZSAyNF0KDApJbnRlcm5ldC1EcmFmdCAgICAgSUQgU3VibWlzc2lvbiBUb29sc2V0
OiBSZXF1aXJlbWVudHMgICAgICAgIEFwcmlsIDIwMDUKCgogICBvZmYtbGluZSBtb2RlOiBB
IHN1Ym1pdHRlciBjYW4gZG8gYWxsIHRoZSBtYW51YWwgd29yayByZXF1aXJlZCB0bwogICAg
ICBzdWJtaXQgYSBkcmFmdCB3aGlsZSBiZWluZyBkaXNjb25uZWN0ZWQgZnJvbSB0aGUgbmV0
d29yay4gIFRoZQogICAgICBlbWFpbCBjbGllbnQgYWN0dWFsbHkgc3VibWl0cyB0aGUgZHJh
ZnQgd2hlbiBjb25uZWN0aXZpdHkgaXMKICAgICAgcmVnYWluZWQuCgogICBwb29yIGNvbm5l
Y3Rpdml0eTogRW1haWwgc3lzdGVtcyBhcmUgb2Z0ZW4gYmV0dGVyIHN1aXRlZCBmb3IKICAg
ICAgYXV0b21hdGVkIHRyYW5zbWlzc2lvbiBhbmQgcmUtdHJhbnNtaXNzaW9uIG9mIGVtYWls
cyB3aGVuIG5ldHdvcmsKICAgICAgY29ubmVjdGl2aXR5IGlzIHBvb3IgZHVlIHRvIGhpZ2gg
cGFja2V0IGxvc3MgcmF0aW9zLCB0cmFuc21pc3Npb24KICAgICAgZGVsYXlzLCBhbmQgb3Ro
ZXIgcHJvYmxlbXMuCgogICBjb252ZW5pZW5jZTogU29tZSBJRVRGZXJzIGNvbnNpZGVyIGVt
YWlsIGludGVyZmFjZXMgYXMgZ2VuZXJhbGx5CiAgICAgICJtb3JlIGNvbnZlbmllbnQiLgoK
ICAgUHJpbWFyeSBhZHZhbnRhZ2VzIG9mIHRoZSB3ZWIgaW50ZXJmYWNlIGFyZToKCiAgIGNv
bmZpcm1hdGlvbjogQSBzdWJtaXR0ZXIgaXMgZ2l2ZW4gYSBjaGFuY2UgdG8gdmVyaWZ5IHRo
YXQgYXV0b21hdGVkCiAgICAgIGV4dHJhY3Rpb24gb2YgbWV0YS1kYXRhIHByb2R1Y2VkIHJl
YXNvbmFibGUgcmVzdWx0cy4gIE90aGVyIHVzZWZ1bAogICAgICBjb25maXJtYXRpb25zIGFy
ZSBwb3NzaWJsZSAoZS5nLiwgIkFyZSB5b3Ugc3VyZSB5b3Ugd2FudCB0byBwb3N0IGEKICAg
ICAgdmVyc2lvbiBvZiB0aGUgZHJhZnQgdGhhdCB3YXMgdXBkYXRlZCAzMCBzZWNvbmRzIGFn
byBieSB5b3VyIGNvLQogICAgICBhdXRob3I/IikuCgogICB2YWxpZGF0aW9uOiBBIHN1Ym1p
dHRlciBjYW4gdmFsaWRhdGUgdGhlIGRyYWZ0IHdpdGhvdXQgcG9zdGluZyBpdC4KCiAgIHF1
YWxpdHk6IE5vbi1jcml0aWNhbCB3YXJuaW5ncyBtYXkgcHJvbXB0IHRoZSBzdWJtaXR0ZXIg
dG8gcG9zdHBvbmUKICAgICAgcG9zdGluZyB0byBpbXByb3ZlIGRyYWZ0IHF1YWxpdHkuCgog
ICBtYW51YWwgYWRqdXN0bWVudHM6IFRoZSBzdWJtaXR0ZXIgY2FuIGFkanVzdCBleHRyYWN0
ZWQgbWV0YS1kYXRhIGFuZAogICAgICBlYXNlIFNlY3JldGFyaWF0IHdvcmsgb24gbWFudWFs
bHkgcG9zdGluZyBhbiB1bnVzdWFsIGRyYWZ0LgoKICAgbWV0YS1kYXRhOiBUaGUgc3VibWl0
dGVyIGNhbiBzcGVjaWZ5IG9wdGlvbmFsIGV4dGVybmFsIG1ldGEtZGF0YQogICAgICAodGhh
dCBjYW5ub3QgYmUgZXh0cmFjdGVkIGZyb20gdGhlIGRyYWZ0IGl0c2VsZikuICBGb3IgZXhh
bXBsZSwgYW4KICAgICAgZW1haWwgYWRkcmVzcyBmb3IgZHJhZnQgZGlzY3Vzc2lvbiBjYW4g
YmUgc3BlY2lmaWVkLgoKICAgY29udGV4dCBoZWxwOiBUaGUgd2ViIGludGVyZmFjZSBtYWtl
cyBpdCBlYXN5IHRvIHByb3ZpZGUgbGlua3MgdG8KICAgICAgZXh0cmEgaW5mb3JtYXRpb24g
YWJvdXQgaW5wdXQgZmllbGRzLCBlcnJvcnMsIHBvc3Rpbmcgb3B0aW9ucywKICAgICAgZGVh
ZGxpbmVzLCBldGMuCgogICBvcGFxdWVuZXNzOiBGaWxlcyBzdWJtaXR0ZWQgdmlhIHRoZSB3
ZWIgaW50ZXJmYWNlIGFyZSBhcmd1YWJseSBsZXNzCiAgICAgIHN1c2NlcHRpYmxlIHRvIHZh
cmlvdXMgaW4tdHJhbnNpdCB0cmFuc2Zvcm1hdGlvbnMgYW5kCiAgICAgIG1pc2ludGVycHJl
dGF0aW9uIHRoYW4gZW1haWxzLiAgRW1haWxzIGFyZSBvZnRlbiBtdXRhdGVkIGJ5IG1haWwK
ICAgICAgYWdlbnRzIChlLmcuLCBhdXRvbWF0ZWQgZGlzY2xhaW1lcnMgYWRkZWQgYnkgc2Vu
ZGVycyBhbmQgZXh0cmEKICAgICAgbGluZSBmZWVkcyBhZGRlZCBieSByZWNpcGllbnRzKS4K
CiAgIGNvbnZlbmllbmNlOiBTb21lIElFVEZlcnMgY29uc2lkZXIgd2ViIGludGVyZmFjZXMg
YXMgZ2VuZXJhbGx5ICJtb3JlCiAgICAgIGNvbnZlbmllbnQiLgoKCgoKCgpSb3Vzc2tvdiAg
ICAgICAgICAgICAgICBFeHBpcmVzIE9jdG9iZXIgMjEsIDIwMDUgICAgICAgICAgICAgICBb
UGFnZSAyNV0KDApJbnRlcm5ldC1EcmFmdCAgICAgSUQgU3VibWlzc2lvbiBUb29sc2V0OiBS
ZXF1aXJlbWVudHMgICAgICAgIEFwcmlsIDIwMDUKCgoxNy4gIEltcGxlbWVudGF0aW9uIHN0
YWdlcwoKICAgVGhpcyBzZWN0aW9uIGRlZmluZXMgdGhlIFRvb2xzZXQgaW1wbGVtZW50YXRp
b24gc3RhZ2VzIG9yIHBoYXNlcy4KICAgVGhlcmUgYXJlIHRocmVlIGNvbnNlY3V0aXZlIHN0
YWdlcywgbWFya2VkIHdpdGggbGV0dGVycyAiYSIsICJiIiwgb3IKICAgImMiLiAgRWFybGll
ciBzdGFnZSByZXF1aXJlbWVudHMgbXVzdCBzdGlsbCBiZSBzYXRpc2ZpZWQgaW4gbGF0ZXIK
ICAgc3RhZ2VzLiAgQWxsIHJlcXVpcmVtZW50cyBuZWVkIHRvIGJlIGludGVycHJldGVkIGFu
ZCBldmFsdWF0ZWQgaW4gdGhlCiAgIGNvbnRleHQgb2YgdGhlIGN1cnJlbnQgc3RhZ2UgYW5k
IHRoZSBjdXJyZW50bHkgaW1wbGVtZW50ZWQgZmVhdHVyZXMuCiAgIEZvciBleGFtcGxlLCBy
ZXF1aXJlbWVudCBSNjggYXBwbGllcyB0byB0aGUgZmlyc3Qgc3RhZ2UgYnV0IHJlZmVycyB0
bwogICBYTUwgZHJhZnQgZm9ybWF0IHRoYXQgbWF5IG5vdCBiZSBzdXBwb3J0ZWQgdW50aWwg
dGhlIHNlY29uZCBzdGFnZS4gIEEKICAgY29ycmVjdCBpbnRlcnByZXRhdGlvbiBvZiBSNjgg
dW50aWwgWE1MIHN1cHBvcnQgaXMgYWRkZWQgaXMgIml0IGlzIGFuCiAgIGVycm9yIHRvIHN1
Ym1pdCBhIGRyYWZ0IHdpdGhvdXQgYSBwbGFpbiB0ZXh0IGZvcm1hdCIuCgogICBVbmxlc3Mg
b3RoZXJ3aXNlIG5vdGVkLCByZXF1aXJlbWVudHMgbGlzdGVkIGluIGxhdGVyIHN0YWdlcyBt
YXkgYmUKICAgY292ZXJlZCBpbiBlYXJsaWVyIHN0YWdlcywgYnV0IGRvIG5vdCBoYXZlIHRv
IGJlLiAgSWYgdGhlCiAgIGltcGxlbWVudGVycyBkZWNpZGUgdG8gYWRkIHNvbWUgZnVuY3Rp
b25hbGl0eSBmcm9tIGEgZnV0dXJlIHN0YWdlLAogICB0aGV5IGhhcyB0byBiZSB2ZXJ5IGNh
cmVmdWwgdG8gc2F0aXNmeSBhbGwgcmVxdWlyZW1lbnRzIHJlbGF0ZWQgdG8KICAgdGhhdCBm
dW5jdGlvbmFsaXR5LiAgVW5mb3J0dW5hdGVseSwgdGhlcmUgaXMgbm8gcmVsaWFibGUsIHBy
YWdtYXRpYwogICB3YXkgdG8gaWRlbnRpZnkgImFsbCByZXF1aXJlbWVudHMiIHJlbGF0ZWQg
dG8gYSBnaXZlbiBmZWF0dXJlLgoKICAgKGEpIFRyaWFsIFN0YWdlOiBJbml0aWFsIGJhc2lj
IGltcGxlbWVudGF0aW9uIHRvIHRlc3QgbWFqb3IgY29uY2VwdHMKICAgICAgYW5kIHJlbGll
dmUgdGhlIFNlY3JldGFyaWF0IGZyb20gaGFuZGxpbmcgdGhlIG1vc3QgY29tbW9uCiAgICAg
IHN1Ym1pc3Npb24gY2FzZS4gIFRoaXMgc3RhZ2UgZm9jdXNlcyBvbiBwbGFpbiB0ZXh0IGRy
YWZ0CiAgICAgIHN1Ym1pc3Npb24gdmlhIHRoZSB3ZWIgaW50ZXJmYWNlLiAgVGhlIHRyaWFs
IHN0YWdlIHNob3VsZCB0YWtlIGEKICAgICAgZGVkaWNhdGVkIHByb2Zlc3Npb25hbCBhYm91
dCA0NSBjYWxlbmRhciBkYXlzIHRvIGZpbmlzaCAoaS5lLiwgdG8KICAgICAgY29tcGx5IHdp
dGggYWxsIHRoZSBsaXN0ZWQgcmVxdWlyZW1lbnRzKS4KCiAgIChiKSBQcm9kdWN0aW9uIFN0
YWdlOiBTdXBwb3J0IGZvciBhbGwgbWFqb3IgZmVhdHVyZXMuICBPbmNlIHRoaXMKICAgICAg
c3RhZ2UgaXMgY29tcGxldGVkLCB0aGUgU2VjcmV0YXJpYXQgc2hvdWxkIG9ubHkgaGFuZGxl
IHVudXN1YWwKICAgICAgZHJhZnQgc3VibWlzc2lvbnMuICBUaGlzIHN0YWdlIHNob3VsZCB0
YWtlIGFib3V0IDEwMCBjYWxlbmRhciBkYXlzCiAgICAgIHRvIGZpbmlzaC4gIEdyYWR1YWwg
cmVsZWFzZSBvZiBpbXBsZW1lbnRlZCBmZWF0dXJlcyBpcyBwb3NzaWJsZQogICAgICBhbmQg
ZXhwZWN0ZWQuCgogICAoYykgRW5oYW5jZW1lbnQgU3RhZ2U6IEEgbmV2ZXItZW5kaW5nIHN0
YWdlIGZvY3VzaW5nIG9uIHNvcGhpc3RpY2F0ZWQKICAgICAgZmVhdHVyZXMgKGUuZy4sIGRy
YWZ0IGludGVycHJldGF0aW9uIG9yIHZhbGlkYXRpb24pIHRoYXQgaW1wcm92ZQogICAgICB0
aGUgb3ZlcmFsbCBxdWFsaXR5IG9mIHRoZSBUb29sc2V0LiAgVGhpcyBzdGFnZSBpcyBkb2N1
bWVudGVkCiAgICAgIHByaW1hcmlseSB0byBoaWdobGlnaHQgdGhlIG92ZXJhbGwgZGlyZWN0
aW9uIG9mIHRoZSBUb29sc2V0OyBpdHMKICAgICAgcmVxdWlyZW1lbnRzIGFyZSBvZnRlbiBp
bXByZWNpc2UgYW5kIG1hbnkgYXJlIGV4cGVjdGVkIHRvIGNoYW5nZS4KCiAgIEltcGxlbWVu
dGF0aW9uIGV4cGVyaWVuY2UgaXMgbGlrZWx5IHRvIHJlc3VsdCBpbiBjaGFuZ2VzIG9mIHRo
ZQogICBUb29sc2V0IHJlcXVpcmVtZW50cy4gIFN1Y2ggY2hhbmdlcyBzaG91bGQgYmUgZG9j
dW1lbnRlZCBhcyBhIHBhcnQgb2YKICAgc3RhZ2UgZXZhbHVhdGlvbiBhY3Rpdml0aWVzLgoK
MTguICBUZXN0aW5nCgogICBCZWZvcmUgbGV0dGluZyB0aGUgVG9vbHNldCBnbyBsaXZlLCB0
aG91c2FuZHMgb2YgcG9zdGVkIGRyYWZ0cyBjYW4gYmUKICAgdXNlZCB0byB0ZXN0IHRoZSBt
ZXRhLWRhdGEgZXh0cmFjdGlvbiBhbGdvcml0aG1zLiAgU3VjaCB0ZXN0aW5nIGNhbgogICBt
aW5pbWl6ZSB0aGUgbnVtYmVyIG9mIGRyYWZ0cyBiZWluZyBzZW50IG9uIGZvciBtYW51YWwg
aGFuZGxpbmcKICAgYmVjYXVzZSBvZiBtZXRhLWRhdGEgZXh0cmFjdGlvbiBmYWlsdXJlLgoK
CgpSb3Vzc2tvdiAgICAgICAgICAgICAgICBFeHBpcmVzIE9jdG9iZXIgMjEsIDIwMDUgICAg
ICAgICAgICAgICBbUGFnZSAyNl0KDApJbnRlcm5ldC1EcmFmdCAgICAgSUQgU3VibWlzc2lv
biBUb29sc2V0OiBSZXF1aXJlbWVudHMgICAgICAgIEFwcmlsIDIwMDUKCgogICBPdGhlciBU
b29sc2V0IGZlYXR1cmVzIG1heSBhbHNvIGJlIHRlc3RhYmxlIHVzaW5nIHBvc3RlZCBkcmFm
dHMuICBBCiAgIHNpbXBsZSBwYWlyIG9mIHNjcmlwdHMgY2FuIGJlIHVzZWQgdG8gdGVzdCBi
YXNpYyBmdW5jdGlvbmFsaXR5IG9mIHRoZQogICB3ZWIgYW5kIGVtYWlsIGludGVyZmFjZXMu
CgogICBIaW50OiBUaGUgSUVTRyBtYXkgcmVxdWlyZSB0ZXN0IHJlc3VsdHMgYmVmb3JlIGFj
Y2VwdGluZyB0aGUgaW5pdGlhbAogICBpbXBsZW1lbnRhdGlvbi4gIElmIGF1dG9tYXRlZCwg
dGhlIGFib3ZlIGFwcHJvYWNoIGNhbiBiZSB1c2VkIGZvcgogICByZWdyZXNzaW9uIHRlc3Rp
bmcgYXMgd2VsbC4KCjE5LiAgU2VjdXJpdHkgQ29uc2lkZXJhdGlvbnMKCiAgIFJlbW92aW5n
IGh1bWFucyBmcm9tIHRoZSBkcmFmdCBzdWJtaXNzaW9uIGFuZCBwb3N0aW5nIHByb2Nlc3Mg
KGEuay5hLgogICBhdXRvbWF0aW9uKSByZXF1aXJlcyBhZGRpbmcgZmVhdHVyZXMgdG8gbWFr
ZSB0aGUgVG9vbHNldCByZWxpYWJsZSBpbgogICB0aGUgcHJlc2VuY2Ugb2YgZGVuaWFsIG9m
IHNlcnZpY2UgKERvUykgYXR0YWNrcyBhbmQgYXR0ZW1wdHMgdG8KICAgY29ycnVwdCB0aGUg
ZHJhZnQgcmVwb3NpdG9yeS4gIElkZWFsbHksIHRoZSBUb29sc2V0IG5lZWRzIHRvIHJlc2lz
dAogICBib3RoIHByZW1lZGl0YXRlZCBtYWxpY2lvdXMgYWN0aW9ucyBhbmQgZ29vZC1pbnRl
bnQgYWNjaWRlbnRzLgoKICAgVGhpcyBkb2N1bWVudCBjb250YWlucyBzcGVjaWZpYyByZXF1
aXJlbWVudHMgdG8gbWluaW1pemUgdGhlIGltcGFjdAogICBvZiBEb1MgYXR0YWNrcyAoZS5n
LiwgUjk3KS4gIFRoZSByZXF1aXJlbWVudHMgYXJlIGRlc2lnbmVkIHdpdGggdGhlCiAgIGFz
c3VtcHRpb24gdGhhdCBpdCBpcyBhY2NlcHRhYmxlIGZvciB0aGUgVG9vbHNldCB0byBibG9j
ayB2YWxpZAogICBzdWJtaXNzaW9ucyBkdXJpbmcgYSBEb1MgYXR0YWNrIGFzIGxvbmcgYXMg
dGhlIFRvb2xzZXQgbWFpbnRhaW5lcnMKICAgYXJlIG5vdGlmaWVkIGFuZCBhbHJlYWR5IHBv
c3RlZCBkcmFmdHMgYXJlIG5vdCBkYW1hZ2VkLgoKICAgVGhpcyBkb2N1bWVudCBhbHNvIGNv
bnRhaW5zIG1hbnkgc3BlY2lmaWMgcmVxdWlyZW1lbnRzIHJlbGF0ZWQgdG8KICAgZGV0ZWN0
aW9uIG9mIGRyYWZ0cyB2aW9sYXRpbmcgSUVURiBwb3N0aW5nIHJ1bGVzLiAgVGhvc2UgcmVx
dWlyZW1lbnRzCiAgIGhlbHAgcmVkdWNlIHRoZSBudW1iZXIgb2YgImJhZCIgZHJhZnRzIHBv
c3RlZCBieSBtaXN0YWtlIGJ1dCBkbyBub3QKICAgb2ZmZXIgcmVsaWFibGUgcHJvdGVjdGlv
biBmcm9tIHN1Ym1pdHRlcnMgd2l0aCBtYWxpY2lvdXMgaW50ZW50OgogICBTaW5jZSBhdXRv
bWF0ZWQgdG9vbHMgZG8gbm90IHRydWx5IHVuZGVyc3RhbmQgZHJhZnRzIChhbmQgd2lsbCBu
b3QgZG8KICAgc28gaW4gdGhlIGZvcmVzZWVhYmxlIGZ1dHVyZSksIGl0IGlzIHRlY2huaWNh
bGx5IHBvc3NpYmxlIHRvIHBvc3QgYQogICByb2d1ZSBkcmFmdCB2aW9sYXRpbmcgSUVURiBw
b3N0aW5nIHJ1bGVzLiAgRm9yIGV4YW1wbGUsIGEgZHJhZnQgbWF5CiAgIGNvbnRhaW4gYWJz
dHJhY3QgdGV4dCB0aGF0IG1ha2VzIHRoZSBJRVRGLWFwcHJvdmVkIElQUiBzdGF0ZW1lbnRz
CiAgIGZvbGxvd2luZyB0aGUgYWJzdHJhY3QgbWVhbmluZ2xlc3Mgb3IgbGVnYWxseSBub24t
YmluZGluZy4KCiAgIFN0cm9uZ2VyIHN1Ym1pdHRlciBhdXRoZW50aWNhdGlvbiBtYXkgYmUg
cmVxdWlyZWQgdG8gZGV0ZXIgbWFsaWNpb3VzCiAgIHN1Ym1pdHRlcnMuICBUaGUgZG9jdW1l
bnRlZCBhdXRoZW50aWNhdGlvbiBtZWNoYW5pc20gKGkuZS4sIHJlYWQKICAgYWNjZXNzIHRv
IG9uZSdzIGVtYWlsKSBpcyBkZWVtZWQgYXBwcm9wcmlhdGUgZm9yIGRlcGxveW1lbnQgb2Yg
dGhlCiAgIGZpcnN0IHZlcnNpb25zIG9mIHRoZSBUb29sc2V0LCB1bmRlciBjbG9zZSBTZWNy
ZXRhcmlhdCBzdXBlcnZpc2lvbi4KICAgSGludDogdG8gaW5jcmVhc2UgY2hhbmNlcyBvZiBk
ZXRlY3RpbmcgcHJvYmxlbXMgZWFybHkgZW5vdWdoLCBpdCBtYXkKICAgYmUgYSBnb29kIGlk
ZWEgdG8gYXV0b21hdGljYWxseSBpbmZvcm0gYSBkZXNpZ25hdGVkIGh1bWFuIG9mIGV2ZXJ5
CiAgIHBvc3RlZCBzdWJtaXNzaW9uIChkdXJpbmcgaW5pdGlhbCBkZXBsb3ltZW50IG9mIHRo
ZSBUb29sc2V0KS4KCjIwLiAgSUFOQSBDb25zaWRlcmF0aW9ucwoKICAgTm9uZS4KCjIxLiAg
Q29tcGxpYW5jZQoKICAgQSBUb29sc2V0IGltcGxlbWVudGF0aW9uIGlzIGNvbXBsaWFudCB3
aXRoIHRoaXMgc3BlY2lmaWNhdGlvbiBpZiBpdAogICBzYXRpc2ZpZXMgYWxsIG5vcm1hdGl2
ZSByZXF1aXJlbWVudHMgKGkuZS4sIHRoZSBwaHJhc2VzIG1hcmtlZCB3aXRoCgoKClJvdXNz
a292ICAgICAgICAgICAgICAgIEV4cGlyZXMgT2N0b2JlciAyMSwgMjAwNSAgICAgICAgICAg
ICAgIFtQYWdlIDI3XQoMCkludGVybmV0LURyYWZ0ICAgICBJRCBTdWJtaXNzaW9uIFRvb2xz
ZXQ6IFJlcXVpcmVtZW50cyAgICAgICAgQXByaWwgMjAwNQoKCiAgICJSbm5uIiBhcyBkZWZp
bmVkIGluIFNlY3Rpb24gNCkuICBDb21wbGlhbmNlIHNob3VsZCBiZSBldmFsdWF0ZWQgZm9y
CiAgIGVhY2ggaW1wbGVtZW50YXRpb24gc3RhZ2UgYXMgc29tZSByZXF1aXJlbWVudHMgZG8g
bm90IGFwcGx5IHRvIHNvbWUKICAgc3RhZ2VzLgoKICAgVGhlIElFU0cgZXZhbHVhdGVzIGlt
cGxlbWVudGF0aW9ucyBhbmQgaW50ZXJwcmV0cyByZXF1aXJlbWVudHMgYXMKICAgbmVjZXNz
YXJ5LgoKQXBwZW5kaXggQS4gIENvbXBhcmlzb24gd2l0aCBjdXJyZW50IHByb2NlZHVyZXMK
CiAgIFRoaXMgc2VjdGlvbiBzdW1tYXJpemVzIG1ham9yIGRpZmZlcmVuY2VzIGJldHdlZW4g
dGhlIGRyYWZ0CiAgIHN1Ym1pc3Npb24gYXBwcm9hY2ggY3VycmVudGx5IGluIHVzZSBieSBJ
RVRGIGFuZCB0aGUgcHJvcG9zZWQKICAgVG9vbHNldCwgaW5jbHVkaW5nIHZpb2xhdGlvbnMg
b2YgdGhlIGN1cnJlbnQgSUVURiBydWxlcy4KCiAgIG8gIFRoZSBUb29sc2V0IGFsbG93cyBw
b3N0aW5nIG9mIFhNTCBhbmQgUERGIGRyYWZ0IGZvcm1hdHMuICBUaGUgWE1MCiAgICAgIGZv
cm1hdCBpcyBub3QgY3VycmVudGx5IGFjY2VwdGVkIGJ5IHRoZSBTZWNyZXRhcmlhdCwgYW5k
IGxlZ2FsaXR5CiAgICAgIG9mIFBERiBhY2NlcHRhbmNlIGJ5IHRoZSBTZWNyZXRhcmlhdCBo
YXMgYmVlbiBxdWVzdGlvbmVkLiAgWE1MCiAgICAgIHNvdXJjZXMgc2hvdWxkIGJlIGFjY2Vw
dGVkIHRvIGVuYWJsZSBJRVRGIHRvb2xzIGFuZCBwYXJ0aWNpcGFudHMKICAgICAgdG8gaGF2
ZSBhY2Nlc3MgdG8gcmF3IGRyYWZ0IG1ldGEtZGF0YSBhbmQgY29udGVudC4gIFRoZXkgYXJl
IGFsc28KICAgICAgdXNlZnVsIHRvIHRoZSBSRkMgRWRpdG9yIGFuZCwgaGVuY2UsIGl0IGlz
IGEgZ29vZCBpZGVhIHRvIHZhbGlkYXRlCiAgICAgIGFuZCBnZXQgdGhlbSAiaW50byB0aGUg
c3lzdGVtIiBlYXJseS4gIFRoZSBsYXR0ZXIgYXJndW1lbnQgYXBwbGllcwogICAgICB0byBQ
REYgZHJhZnRzIGFzIHdlbGwsIGFsdGhvdWdoIHRoZSBmaXJzdCBUb29sc2V0IHZlcnNpb25z
IGFyZSBub3QKICAgICAgZXhwZWN0ZWQgdG8gaW50ZXJwcmV0IFBERiBkcmFmdHMuCgogICBv
ICBUaGUgVG9vbHNldCBtYXkgZXZlbnR1YWxseSBnZW5lcmF0ZSBIVE1MIGRyYWZ0IGZvcm1h
dHMgZnJvbSBYTUwKICAgICAgZHJhZnQgc291cmNlcyAoc2VlIFIxMTIpLiAgQ3VycmVudGx5
LCBJRVRGIGRvZXMgbm90IHByb3ZpZGUgSFRNTAogICAgICBkcmFmdCBmb3JtYXRzIC0tIHRo
ZSBTZWNyZXRhcmlhdCBkb2VzIG5vdCBhY2NlcHQgSFRNTCBzb3VyY2VzIGFuZAogICAgICBu
byBIVE1MIGlzIGdlbmVyYXRlZCBmcm9tIGFjY2VwdGVkIGRyYWZ0IHNvdXJjZXMuICBOb3Rl
LCBob3dldmVyLAogICAgICB0aGF0IHRoaXMgZG9jdW1lbnQgZG9lcyBub3Qgc3VnZ2VzdCB0
aGF0IHRoZSBUb29sc2V0IHNob3VsZAogICAgICBldmVudHVhbGx5IGFjY2VwdCBkcmFmdHMg
aW4gSFRNTCBmb3JtYXQuCgogICBvICBUaGUgVG9vbHNldCBkZWZpbmVzICJXR04gZHJhZnQi
IGFzIGEgZHJhZnQgd2hpY2ggbmFtZSBzdGFydHMgd2l0aAogICAgICAiZHJhZnQtaWV0Zi0i
LiAgQWxsIG90aGVyIGRyYWZ0cyBhcmUgdHJlYXRlZCBhcyBpbmRpdmlkdWFsIGRyYWZ0cy4K
ICAgICAgQ3VycmVudGx5LCBhbiBJRVRGIFdHIGRvZXMgbm90IGhhdmUgdG8gZm9sbG93IGEg
c2luZ2xlIFdHIGRyYWZ0CiAgICAgIG5hbWluZyBmb3JtYXQuICBUaHVzLCB0aGUgMDAgdmVy
c2lvbiBvZiBhIGRyYWZ0IHRoYXQgdGhlIFdHCiAgICAgIGNvbnNpZGVycyBhIFdHIGRyYWZ0
IGNhbiBiZSBwb3N0ZWQgYnkgdGhlIFRvb2xzZXQgd2l0aG91dCBXRwogICAgICBjb25zZW50
LiAgQWZmZWN0ZWQgV0dzIHdvdWxkIGhhdmUgdG8gZGVhbCB3aXRoIHRoZSBjb25zZXF1ZW5j
ZXMgb2YKICAgICAgdGhlaXIgZGVjaXNpb24gbm90IHRvIHVzZSBhIGNvbW1vbiBuYW1pbmcg
Zm9ybWF0LiAgVGhlIFRvb2xzIHRlYW0KICAgICAgc3VnZ2VzdHMgdGhhdCBJRVRGIHJlcXVp
cmVzIFdHcyB0byBuYW1lIHRoZWlyIGRyYWZ0cyB1c2luZyBhCiAgICAgIHNpbmdsZSBmb3Jt
YXQgdG8gbWluaW1pemUgY29uZnVzaW9uLiAgSG9wZWZ1bGx5LCB0aGVyZSBhcmUgbm8KICAg
ICAgaHVtYW5zIG5hbWVkICJJZXRmIiBvciwgYXQgbGVhc3QsIG5vbmUgb2YgdGhlbSB3YW50
cyB0byBhdXRvLXBvc3QKICAgICAgaW5kaXZpZHVhbCBkcmFmdHMuCgogICBvICBGb3Igc29t
ZSBkcmFmdHMsIHRoZSBUb29sc2V0IHZlcmlmaWVzIHRoYXQgdGhlIHN1Ym1pdHRlciBpcwog
ICAgICAiZXhwZWN0ZWQiIChlLmcuLCBhbiBhdXRob3Igb2YgdGhlIHByZXZpb3VzIGRyYWZ0
IHZlcnNpb24gb3IgV0cKICAgICAgQ2hhaXIpLiAgQ3VycmVudGx5LCB0aGUgU2VjcmV0YXJp
YXQgZG9lcyB2aXJ0dWFsbHkgbm8gc3VjaAogICAgICB2ZXJpZmljYXRpb24sIGJ1dCBhbiBl
bWFpbCBzdWJtaXNzaW9uIGludGVyZmFjZSBhbmQgYSBodW1hbgogICAgICBwcmVzZW5jZSBp
biB0aGUgc3VibWlzc2lvbiBsb29wIGhhdmUgYXBwYXJlbnRseSBiZWVuIHN1ZmZpY2llbnQg
dG8KICAgICAgcHJldmVudCBtYXNzaXZlIGF1dG9tYXRlZCBhdHRhY2tzLiAgVGhlIGNoYW5n
ZSBpcyBuZWVkZWQgdG8KCgoKUm91c3Nrb3YgICAgICAgICAgICAgICAgRXhwaXJlcyBPY3Rv
YmVyIDIxLCAyMDA1ICAgICAgICAgICAgICAgW1BhZ2UgMjhdCgwKSW50ZXJuZXQtRHJhZnQg
ICAgIElEIFN1Ym1pc3Npb24gVG9vbHNldDogUmVxdWlyZW1lbnRzICAgICAgICBBcHJpbCAy
MDA1CgoKICAgICAgcHJldmVudCBhIHNpbXBsZSBzY3JpcHQgZnJvbSB1c2luZyB0aGUgd2Vi
IGludGVyZmFjZSB0byBvdmVyd3JpdGUKICAgICAgcG9zdGVkIElFVEYgZHJhZnRzIHdpdGgg
anVuay4gIEhvcGVmdWxseSwgdGhlIElFVEYgd2lsbCBldmVudHVhbGx5CiAgICAgIGhhdmUg
YSBkZWNlbnQgYXV0aGVudGljYXRpb24gc2NoZW1lIG1ha2luZyB0aGUgc3VibWl0dGVyIGNo
ZWNrcwogICAgICBzaW1wbGVyLCBsZXNzIHJpZ2lkLCBhbmQgbW9yZSB0cmFuc3BhcmVudC4K
CiAgIG8gIFRoZSBUb29sc2V0IHdpbGwgYXV0b21hdGljYWxseSBub3RpZnkgYXV0aG9ycyBv
ZiBwb3N0ZWQgZHJhZnRzLgogICAgICBDdXJyZW50bHksIG5laXRoZXIgdGhlIHN1Ym1pdHRl
ciBub3IgYW55IG9mIHRoZSBjby1hdXRob3JzIGFyZQogICAgICBleHBsaWNpdGx5IG5vdGlm
aWVkIHdoZW4gdGhlIGRyYWZ0IGlzIHBvc3RlZC4gIE5vdGlmaWNhdGlvbiBpcwogICAgICBt
ZWFudCwgaW4gcGFydCwgdG8gYWxsb3cgY28tYXV0aG9ycyB0byBkZXRlY3QgY2FzZXMgd2hl
cmUgdGhlaXIKICAgICAgbmFtZSBpcyBwdXQgb24gdGhlIGF1dGhvcnMgbGlzdCB3aXRob3V0
IHBlcm1pc3Npb24uICBFdmVudHVhbGx5LAogICAgICB0aGVyZSB3aWxsIGJlIGEgZ2VuZXJh
bCBJRVRGIG1lY2hhbmlzbSB0byBhbGxvdyAzcmQgcGFydGllcyBzdWNoCiAgICAgIGFzIEFE
cywgY2hhaXJzLCBvciByZXZpZXdlcnMgdG8gcmVnaXN0ZXIgZm9yIG5vdGlmaWNhdGlvbnMg
YWJvdXQKICAgICAgZHJhZnQgcG9zdGluZ3MuCgogICBvICBUaGUgVG9vbHNldCBtYXkgZXZl
bnR1YWxseSBhY2NlcHQgY29tcHJlc3NlZCBkcmFmdHMgKHNlZSBSMTUwKS4KICAgICAgQ3Vy
cmVudGx5LCB0aGUgU2VjcmV0YXJpYXQgZG9lcyBub3QgYWNjZXB0ICJ6aXAiIGFyY2hpdmVz
IGR1ZSB0bwogICAgICB2aXJ1cyBjb250YW1pbmF0aW9uIGNvbmNlcm5zLiAgQSBwcm9wZXIg
aW1wbGVtZW50YXRpb24gb2YgdGhlCiAgICAgIFRvb2xzZXQgbXVzdCBhZGRyZXNzIHN1Y2gg
Y29uY2VybnMsIHdoaWxlIHRoZSBTZWNyZXRhcmlhdCBtYXkKICAgICAgc3RpbGwgbmVlZCB0
byByZWplY3QgY2VydGFpbiBmb3JtYXRzIGlmIHRoZXkgYXJlIHN1Ym1pdHRlZCB2aWEgdGhl
CiAgICAgIG1hbnVhbCByb3V0ZS4KCgpBcHBlbmRpeCBCLiAgQWNrbm93bGVkZ21lbnRzCgog
ICBUaGUgYXV0aG9yIGdyYXRlZnVsbHkgYWNrbm93bGVkZ2VzIHRoZSBjb250cmlidXRpb25z
IG9mIEhhcmFsZCBUdmVpdAogICBBbHZlc3RyYW5kIChDaXNjbyksIEJyaWFuIEUuIENhcnBl
bnRlciAoSUJNKSwgRnJhbmsgRWxsZXJtYW5uLCBCaWxsCiAgIEZlbm5lciAoQVQmVCksIEJh
cmJhcmEgQi4gRnVsbGVyIChGb3JldGVjKSwgQnJ1Y2UgTGlsbHksIEhlbnJpawogICBMZXZr
b3dldHogKEVyaWNzc29uKSwgTGFycnkgTWFzaW50ZXIgKEFkb2JlKSwgS2VpdGggTW9vcmUg
KFVuaXZlcnNpdHkKICAgb2YgVGVubmVzc2VlKSwgUGVra2EgU2F2b2xhIChOZXRjb3JlKSwg
SGVubmluZyBTY2h1bHpyaW5uZSAoQ29sdW1iaWEKICAgVW5pdmVyc2l0eSksIGFuZCBTdGFu
aXNsYXYgU2hhbHVub3YgKEludGVybmV0MikuCgogICBTcGVjaWFsIHRoYW5rcyB0byBNYXJz
aGFsbCBSb3NlIGZvciBoaXMgeG1sMnJmYyB0b29sLgoKQXBwZW5kaXggQy4gIENoYW5nZSBs
b2cKCiAgIFJGQyBFZGl0b3IgTm90ZTogVGhpcyBzZWN0aW9uIGlzIHRvIGJlIHJlbW92ZWQg
ZHVyaW5nIHRoZSBmaW5hbAogICBwdWJsaWNhdGlvbiBvZiB0aGUgZG9jdW1lbnQuCgogICBJ
bnRlcm5hbCBXRyByZXZpc2lvbiBjb250cm9sIElEOiAkSWQ6IGlkLnhtbCx2IDEuMzcgMjAw
NS8wNC8wNQogICAyMDo1NDowOSByb3Vzc2tvdiBFeHAgJAoKICAgdmVyc2lvbiAwOAoKICAg
ICAgKiAgQ2xhcmlmaWVkIHRoYXQgdGhlIHNlY3JldGFyaWF0IGRvZXMgbm90IGludGVuZCB0
byBjb3JyZWN0CiAgICAgICAgIGRyYWZ0cyBzdWJtaXR0ZWQgZm9yIG1hbnVhbCBwb3N0aW5n
LiAgSWYgdGhlIGRyYWZ0IG5lZWRzCiAgICAgICAgIHR3ZWFraW5nIHRvIG1hdGNoIHN1Ym1p
dHRlcidzIGludGVudCwgdGhlbiB0aGUgZHJhZnQgc2hvdWxkIGJlCiAgICAgICAgIGNvcnJl
Y3RlZCBhbmQgcmUtc3VibWl0dGVkLgoKCgoKUm91c3Nrb3YgICAgICAgICAgICAgICAgRXhw
aXJlcyBPY3RvYmVyIDIxLCAyMDA1ICAgICAgICAgICAgICAgW1BhZ2UgMjldCgwKSW50ZXJu
ZXQtRHJhZnQgICAgIElEIFN1Ym1pc3Npb24gVG9vbHNldDogUmVxdWlyZW1lbnRzICAgICAg
ICBBcHJpbCAyMDA1CgoKICAgICAgKiAgUmVuYW1lZCAibGF3ZnVsIHN1Ym1pdHRlciIgdG8g
ImV4cGVjdGVkIHN1Ym1pdHRlciIgdG8gYXZvaWQgYW4KICAgICAgICAgaW5jb3JyZWN0IGlt
cGxpY2F0aW9uIHRoYXQgc29tZSBraW5kIG9mIG5ldyBsZWdhbCBjaGVja3MgYXJlCiAgICAg
ICAgIGludm9sdmVkLiAgV2l0aG91dCBhbiBlbWFpbCBpbnRlcmZhY2UgYW5kIHRoZSBTZWNy
ZXRhcmlhdCBpbgogICAgICAgICB0aGUgbG9vcCwgdGhlIHN1Ym1pdHRlciBtdXN0IHN0aWxs
IGJlICJleHBlY3RlZCIgYW5kCiAgICAgICAgIGF1dGhlbnRpY2F0ZWQgdG8gYXZvaWQgc2Ny
aXB0IGtpZGRpZXMgZnJvbSBvdmVyd3JpdGluZyBwb3N0ZWQKICAgICAgICAgSUVURiBkcmFm
dHMgd2l0aCBqdW5rLgoKICAgICAgKiAgQ2xhcmlmaWVkIHRoYXQgUjY4IGFuZCBvdGhlciBt
dWx0aS1zdGFnZSByZXF1aXJlbWVudHMgd2l0aAogICAgICAgICBtdWx0aS1zdGFnZSBmZWF0
dXJlcyBhcmUgdG8gYmUgaW50ZXJwcmV0ZWQgYnkgaWdub3JpbmcgZmVhdHVyZXMKICAgICAg
ICAgdGhhdCB3aWxsIGJlIGltcGxlbWVudGVkIGF0IGEgbGF0ZXIgc3RhZ2UuICBGb3IgZXhh
bXBsZSwgInRleHQKICAgICAgICAgb3IgWE1MIiBtZWFucyBqdXN0ICJ0ZXh0IiB1bnRpbCBY
TUwgc3VwcG9ydCBpcyBhZGRlZC4KCiAgICAgICogIE1ldGEtZGF0YSBleHRyYWN0aW9uOiBF
eHBsaWNpdGx5IGV4cGxhaW5lZCB3aHkgbWV0YS1kYXRhCiAgICAgICAgIGV4dHJhY3Rpb24g
ZnJvbSBhbGwgZHJhZnQgZm9ybWF0cyBpcyBuZWNlc3NhcnkuCgogICAgICAqICBNZXRhLWRh
dGEgZXh0cmFjdGlvbjogYmUgZXZlbiBtb3JlIGV4cGxpY2l0IHRoYXQgdGhlIHZhbGlkYXRp
b24KICAgICAgICAgcHJvY2VkdXJlIGRlc2NyaWJlZCBpbiB0aGUgZm9sbG93aW5nIHNlY3Rp
b24gbWF5IGRlY2xhcmUgYW4KICAgICAgICAgZXh0cmFjdGVkIGRhdGUgaW52YWxpZCBhZnRl
ciB0YWtpbmcgaW50byBjb25zaWRlcmF0aW9uIGN1cnJlbnQKICAgICAgICAgKGkuZS4sIHN1
Ym1pc3Npb24pIHRpbWUsIElFVEYgZHJhZnQgZXhwaXJhdGlvbiBydWxlcywgYW5kIG90aGVy
CiAgICAgICAgIGZhY3RvcnMgZXh0ZXJuYWwgdG8gdGhlIGRyYWZ0LiAgVGhlIHZhbGlkYXRp
b24gc2VjdGlvbiBhbHJlYWR5CiAgICAgICAgIGhhcyB0aGUgbmVjZXNzYXJ5IGZvcm1hbCBy
dWxlcy4KCiAgICAgICogIEFkZGVkIFIxNTIgdG8gcmVxdWlyZSBwdWJsaWMgYXZhaWxhYmls
aXR5IG9mIHNvdXJjZXMgaW5zdGVhZCBvZgogICAgICAgICBqdXN0IGhpbnRpbmcgYXQgaXQg
KEhlbnJpayBMZXZrb3dldHopLiAgRXhwbGFpbmVkIHRoYXQgdG8KICAgICAgICAgbWVhbmlu
Z2Z1bGx5IHNhdGlzZnkgYXZhaWxhYmlsaXR5IHJlcXVpcmVtZW50cywgdGhlIFRvb2xzZXQK
ICAgICAgICAgY2Fubm90IHJlbHkgb24gdW5hdmFpbGFibGUgc29mdHdhcmUuCgogICAgICAq
ICBWYWxpZGF0aW9uOiBhZGRlZCBSMTUzLVIxNTYgdG8gcmVxdWlyZSBYTUwgZm9ybWF0IGFu
ZCBSRkMgMjYyOSsKICAgICAgICAgRFREIHZhbGlkYXRpb24uICBEdXJpbmcgdGhlIGZpcnN0
IHR3byBpbXBsZW1lbnRhdGlvbiBzdGFnZXMKICAgICAgICAgdmFsaWRhdGlvbiBmYWlsdXJl
cyByZXN1bHQgaW4gd2FybmluZ3MgKG5vdCBmYXRhbCBzdWJtaXNzaW9uCiAgICAgICAgIGVy
cm9ycykgdG8gZ2l2ZSBJRVRGZXJzIChhbmQgSUVURiB0b29scykgZW5vdWdoIHRpbWUgdG8g
Z2V0CiAgICAgICAgIGFjY3VzdG9tZWQgdG8gdGhlIG5lY2Vzc2l0eSBvZiBvYmV5aW5nIFhN
TCBzdGFuZGFyZHMuICBUaGlzCiAgICAgICAgIGFkZGl0aW9uIGRvY3VtZW50cyBUb29scyB0
ZWFtIGNvbnNlbnN1cyByZWFjaGVkIGluIERlY2VtYmVyCiAgICAgICAgIDIwMDQuICBJdCBz
aG91bGQgaGF2ZSBiZWVuIGRvY3VtZW50ZWQgZWFybGllci4KCiAgICAgICogIFBvbGlzaGVk
IFNvdXJjZUZvcmdlICJob3N0aW5nIiBoaW50IHRvIGNsYXJpZnkgdGhhdCB3ZSBhcmUKICAg
ICAgICAgc3VnZ2VzdGluZyB0byBwbGFjZSBUb29sc2V0IHNvdXJjZXMgdGhlcmUgYW5kIG5v
dCBzdWdnZXN0aW5nCiAgICAgICAgIHRoYXQgdGhlIFRvb2xzZXQgcnVucyBmcm9tIFNGIHNl
cnZlcnMuCgogICAgICAqICBBZGRlZCBUZXN0aW5nIHNlY3Rpb24gd2l0aCBhIGhpbnQ6IHVz
ZSBleGlzdGluZyBkcmFmdHMgKEJyaWFuCiAgICAgICAgIEUuIENhcnBlbnRlcikKCiAgICAg
ICogIFRlcm1pbm9sb2d5OiByZXBsYWNlZCAiV0cgZHJhZnQiIHdpdGggIldHLW5hbWVkIGRy
YWZ0IiBvciAiV0dOCiAgICAgICAgIGRyYWZ0IiBiZWNhdXNlIG5vdCBhbGwgV0ctbmFtZWQg
ZHJhZnRzIGFyZSBXRyBkcmFmdHMgYW5kIHdlIGRvCiAgICAgICAgIG5vdCB3YW50IHRvIGRl
YWwgd2l0aCB0aGUgZGlmZmVyZW5jZSBvciB0byBhbnN3ZXIgcXVlc3Rpb25zCiAgICAgICAg
IGFib3V0IHRoZSAid3JvbmciIHRlcm1pbm9sb2d5LgoKCgoKClJvdXNza292ICAgICAgICAg
ICAgICAgIEV4cGlyZXMgT2N0b2JlciAyMSwgMjAwNSAgICAgICAgICAgICAgIFtQYWdlIDMw
XQoMCkludGVybmV0LURyYWZ0ICAgICBJRCBTdWJtaXNzaW9uIFRvb2xzZXQ6IFJlcXVpcmVt
ZW50cyAgICAgICAgQXByaWwgMjAwNQoKCiAgICAgICogIE92ZXJhbGwgb3BlcmF0aW9uOiBl
eHBsaWNpdGx5IHN0YXRlZCB0aGF0IHRoZSBUb29sc2V0IGhhcyB0byBiZQogICAgICAgICBj
b21wYXRpYmxlIHdpdGggdGhlIFNlY3JldGFyaWF0J3MgdG9vbHMgZm9yIGhhbmRsaW5nIGRy
YWZ0cwogICAgICAgICB3aXRoIGEgaGludCB0aGF0IHN1Y2ggY29tcGF0aWJpbGl0eSBjYW4g
YmUgYWNoaWV2ZWQgYnkKICAgICAgICAgYXBwcm9wcmlhdGVseSBpbXBsZW1lbnRpbmcgdGhl
IFRvb2xzZXQgb3IsIGluIHNvbWUgY2FzZXMsIGJ5CiAgICAgICAgIG1vZGlmeWluZyBleGlz
dGluZyB0b29scy4KCiAgICAgICogIFNjb3BlOiBBZGRyZXNzZWQgY29uY2VybiB0aGF0ICJ0
aGVyZSBzaG91bGQgYWxzbyBiZSBwcm92aXNpb24KICAgICAgICAgZm9yIHRob3NlIHdobyBw
cmVmZXIgdG8gdXNlIHRyb2ZmL25yb2ZmIiBieSBleHBsaWNpdGx5IHN0YXRpbmcKICAgICAg
ICAgdGhhdCB0aGUgc2V0IG9mIHJlcXVpcmVtZW50cyBpbiB0aGlzIGRvY3VtZW50IGlzIG5v
dAogICAgICAgICBjb21wcmVoZW5zaXZlIGFuZCBvdGhlciBkb2N1bWVudHMgbWF5IGFkZCBt
b3JlIHJlcXVpcmVtZW50cywKICAgICAgICAgaW5jbHVkaW5nIHRob3NlIHJlbGF0ZWQgdG8g
b3RoZXIgc291cmNlIGZvcm1hdHMuICBUaGUgVG9vbHMKICAgICAgICAgdGVhbSBpbiBub3Qg
aW50ZXJlc3RlZCBpbiBhZGRpbmcgdHJvZmYvbnJvZmYgc3VwcG9ydCB0byB0aGUKICAgICAg
ICAgVG9vbHNldCwgZXNwZWNpYWxseSBpbiB0aGlzIGRvY3VtZW50LgoKICAgICAgKiAgQXBw
bGllZCBMYXN0IENhbGwgY29tbWVudHMgYnkgRnJhbmsgRWxsZXJtYW5uLgoKICAgICAgKiAg
QWRkZWQgYSBoaW50OiBUaGUgVG9vbHNldCBpbXBsZW1lbnRlcnMgc2hvdWxkIG5vdCBhc3N1
bWUgdGhhdAogICAgICAgICBkcmFmdCBmb3JtYXRzIGdlbmVyYXRlZCBieSB0aGUgc2FtZSB0
b29sIGZyb20gdGhlIHNhbWUgc291cmNlCiAgICAgICAgIGZvcm1hdCBoYXZlIGVzc2VudGlh
bGx5IHRoZSBzYW1lIGNvbnRlbnQgKEtlaXRoIE1vb3JlKS4KCiAgICAgICogIFVwZGF0ZWQg
QWNrbm93bGVkZ21lbnRzIHNlY3Rpb24uCgogICAgICAqICBEaWQgbnVtZXJvdXMgbWlub3Ig
bGFuZ3VhZ2UgY29ycmVjdGlvbnMuCgogICB2ZXJzaW9uIDA3CgogICAgICAqICBBZGRlZCBS
MTQ2LCBhIHJlcXVpcmVtZW50IHRvIGdlbmVyYXRlIGEgd2FybmluZyAoYW5kLAogICAgICAg
ICBldmVudHVhbGx5LCBhIGNvbXBsZXRlIGRpZmYpIHdoZW4gdGhlIHByb2R1Y2VkIHBsYWlu
IHRleHQgZG9lcwogICAgICAgICBub3QgbWF0Y2ggdGhlIHN1Ym1pdHRlZCBvbmUgKGV2ZW4g
aWYgbWV0YS1kYXRhIG1hdGNoZXMpLgoKICAgICAgKiAgQWRkZWQgYSBzdGFnZS1jIHN1Z2dl
c3Rpb24gUjE0OCB0byBhZGQgYSBzbWFydCBmdXp6eSBtYXRjaAogICAgICAgICBmdW5jdGlv
biB0byBjb21wYXJlIHN1Ym1pdHRlZCBhbmQgZ2VuZXJhdGVkLWZyb20tWE1MIHRleHRzLgog
ICAgICAgICBIaW50ZWQgYXQgdXNpbmcgbXVsdGlwbGUgeG1sMnJmYyB2ZXJzaW9ucyB0byBh
dm9pZCB3YXJuaW5ncwogICAgICAgICBiYXNlZCBvbiBtaW5vciB4bWwycmZjIGRpZmZlcmVu
Y2VzIGFsb25lLgoKICAgICAgKiAgQWRkZWQgUjE1MCB0byBldmVudHVhbGx5IHN1cHBvcnQg
c3VibWlzc2lvbiBvZiBjb21wcmVzc2VkCiAgICAgICAgIGRyYWZ0cyAodmlhIGJvdGggd2Vi
IGFuZCBlbWFpbCBpbnRlcmZhY2VzKS4gIE5vdGVkIHRoYXQgdGhlCiAgICAgICAgIFNlY3Jl
dGFyaWF0IGN1cnJlbnRseSBkb2VzIG5vdCBhY2NlcHQgInppcCIgYXJjaGl2ZXMuCgogICAg
ICAqICBCZSBleHBsaWNpdCB0aGF0IENHSSBpcyBub3Qgc29tZWhvdyBtYW5kYXRlZCBmb3Ig
c2VydmVyLXNpZGUKICAgICAgICAgaW1wbGVtZW50YXRpb25zLiAgVGhlIGltcGxlbWVudG9y
IHdpbGwgcGljayB0aGUgcmlnaHQKICAgICAgICAgdGVjaG5vbG9neSBnaXZlbiBhbGwgdGhl
IGZhY3RvcnMsIGluY2x1ZGluZyBoZXIgZXhwZXJpZW5jZSBhbmQKICAgICAgICAgYXZhaWxh
YmxlIHRvb2xzIChIZW5uaW5nIFNjaHVsenJpbm5lKS4KCiAgICAgICogIEFkZGVkICJvcGFx
dWVuZXNzIiB0byB0aGUgbGlzdCBvZiB3ZWIgaW50ZXJmYWNlIGFkdmFudGFnZXMsCiAgICAg
ICAgIGluc3BpcmVkIGJ5IHRoZSBudW1iZXIgb2YgZm9sa3MgY29tcGxhaW5pbmcgYWJvdXQg
dGhlaXIgZHJhZnRzCiAgICAgICAgIGJlaW5nIG11dGF0ZWQgYnkgdGhlIG1haWwgc3lzdGVt
IHdoaWxlIGluLXRyYW5zaXQgdG8gdGhlIGRyYWZ0CiAgICAgICAgIGFyY2hpdmUuCgoKClJv
dXNza292ICAgICAgICAgICAgICAgIEV4cGlyZXMgT2N0b2JlciAyMSwgMjAwNSAgICAgICAg
ICAgICAgIFtQYWdlIDMxXQoMCkludGVybmV0LURyYWZ0ICAgICBJRCBTdWJtaXNzaW9uIFRv
b2xzZXQ6IFJlcXVpcmVtZW50cyAgICAgICAgQXByaWwgMjAwNQoKCiAgIHZlcnNpb24gMDYK
CiAgICAgICogIEluc3RlYWQgb2YgdXNpbmcgYSBzcGVjaWFsIHNlY3Rpb24gdG8gbWFwIHJl
cXVpcmVtZW50cyB0bwogICAgICAgICBUb29sc2V0IGltcGxlbWVudGF0aW9uIHN0YWdlcywg
ZW5jb2RlIHRoZSBzdGFnZSB3aXRoIGVhY2gKICAgICAgICAgcmVxdWlyZW1lbnQuICBUaGUg
cmVhZGVyIG5vdyBrbm93cyByZXF1aXJlbWVudCAidXJnZW5jeSIgd2hlbgogICAgICAgICBy
ZWFkaW5nIHRoZSByZXF1aXJlbWVudCBpdHNlbGYsIGluc3RlYWQgb2YgaGF2aW5nIHRvIHNl
YXJjaCBmb3IKICAgICAgICAgdGhlIHJlcXVpcmVtZW50IGNvZGUgaW4gdGhlICJJbXBsZW1l
bnRhdGlvbiBzdGFnZXMiIHNlY3Rpb24uCiAgICAgICAgIEFsc28sIHRoaXMgbWFrZXMgaXQg
bXVjaCBlYXNpZXIgdG8gbWFrZSBzdXJlIHRoYXQgYWxsCiAgICAgICAgIHJlcXVpcmVtZW50
cyBhcmUgInN0YWdlZCIuCgogICAgICAqICBSZWZsZWN0ZWQgVG9vbHMgdGVhbSBjb25jZXJu
cyBhYm91dCBIVE1MIGdlbmVyYXRpb24gYnkgcGxhY2luZwogICAgICAgICB0aGF0IGZlYXR1
cmUgaW4gdGhlIEVuaGFuY2VtZW50IGltcGxlbWVudGF0aW9uIHN0YWdlIGFuZAogICAgICAg
ICBleHBsaWNpdGx5IG1lbnRpb25pbmcgdGhhdCB0aGUgZmVhdHVyZSBtYXkgYmUgZ29uZSBi
ZWZvcmUgaXRzCiAgICAgICAgIGltcGxlbWVudGVkLgoKICAgICAgKiAgQWRkZWQgUjE0My9h
IHRvIGF2b2lkIG1pc21hdGNoaW5nIGZvcm1hdHM6IERyYWZ0cyBjb250YWluaW5nCiAgICAg
ICAgIFBERiBvciBQb3N0c2NyaXB0IGZvcm1hdCBtdXN0IG5vdCBiZSBhdXRvLXBvc3RlZCB1
bnRpbCB0aGUKICAgICAgICAgVG9vbHNldCBjYW4gdmFsaWRhdGUgdGhhdCB0aGVpciBjb250
ZW50IG1hdGNoZXMgcGxhaW4gdGV4dAogICAgICAgICBmb3JtYXQuICBEb2N1bWVudGVkIHJh
dGlvbmFsZSBhbmQgZnV0dXJlIGRpcmVjdGlvbiBmb3IgZm9ybWF0CiAgICAgICAgIGFjY2Vw
dGFuY2UgcnVsZXMuCgogICAgICAqICBEZWZpbmVkICJXRyBkcmFmdCIgYXMgYSBkcmFmdCB3
aGljaCBuYW1lIHN0YXJ0cyB3aXRoCiAgICAgICAgICJkcmFmdC1pZXRmLSIuICBBbGwgb3Ro
ZXIgZHJhZnRzIGFyZSB0cmVhdGVkIGFzIGluZGl2aWR1YWwKICAgICAgICAgZHJhZnRzLgoK
ICAgICAgKiAgU3VwcG9ydCAoZXZlbnR1YWxseSkgZmV0Y2hpbmcgZHJhZnQgZGF0YSB1c2lu
ZyBhbiBlbWFpbC0KICAgICAgICAgZW1iZWRkZWQgVVJMIChTdGFuaXNsYXYgU2hhbHVub3Yp
LgoKICAgICAgKiAgUmUtUmVzb2x2ZWQgWFhYMzc6IHN1cHBvcnQgc3VibWl0dGluZyBkcmFm
dHMgaW4gbWFpbiBlbWFpbAogICAgICAgICAiYm9keSIsIG5vdCBqdXN0IGF0dGFjaG1lbnRz
IChTdGFuaXNsYXYgU2hhbHVub3YpLgoKICAgICAgKiAgUmVuYW1lZCBkcmFmdCBzdWJtaXNz
aW9uIGRhdGUgaW50byBkcmFmdCB2ZXJzaW9uIGNyZWF0aW9uIGRhdGUKICAgICAgICAgYW5k
IGRvY3VtZW50ZWQgaG93IGNyZWF0aW9uIGFuZCBleHBpcmF0aW9uIGRhdGVzIGFyZSB2YWxp
ZGF0ZWQKICAgICAgICAgYW5kIHRoZSBmYWN0IHRoYXQgdGhleSBkbyBub3QgZGVwZW5kIG9u
IHN1Ym1pc3Npb24gdGltZS4KCiAgICAgICogIFJlcXVpcmVkIGltcGxlbWVudGF0aW9uIHRv
IGJlIG9wZW4tc291cmNlIChzZWUgUjE0NC9hKS4KCiAgIHZlcnNpb24gMDUKCiAgICAgICog
IENoYW5nZWQgZHJhZnQgc3RhdHVzIHRvIHNvbGljaXQgZWRpdG9yaWFsIGNvbW1lbnRzIGFu
ZCBpbmRpY2F0ZQogICAgICAgICBjbG9zZS10by1iZS1sYXN0LWNhbGxlZCBzdGF0ZS4KCiAg
ICAgICogIFdyb3RlICJTZWN1cml0eSBDb25zaWRlcmF0aW9ucyIgc2VjdGlvbi4KCiAgICAg
ICogIFJlZmVyIHRvIElELU5JVFMgZG9jdW1lbnQgYXMgYW4gbGlzdCBvZiBuaXRzIHRoZSBU
b29sc2V0IHNob3VsZAogICAgICAgICBjaGVjayBmb3IgaW4gUjExNi4gIEhpbnRlZCB0aGF0
IEhlbnJpaydzIGlkbml0cyB0b29sIGNhbiBiZQogICAgICAgICB1c2VkIGZvciBhY3R1YWwg
Y2hlY2tzLiAgTW9yZSBjaGVja2luZyB0b29scyBjYW4gYmUgYWRkZWQKICAgICAgICAgZXZl
bnR1YWxseS4KCgoKUm91c3Nrb3YgICAgICAgICAgICAgICAgRXhwaXJlcyBPY3RvYmVyIDIx
LCAyMDA1ICAgICAgICAgICAgICAgW1BhZ2UgMzJdCgwKSW50ZXJuZXQtRHJhZnQgICAgIElE
IFN1Ym1pc3Npb24gVG9vbHNldDogUmVxdWlyZW1lbnRzICAgICAgICBBcHJpbCAyMDA1CgoK
ICAgICAgKiAgQWRkZWQgbW9yZSBzdWJtaXNzaW9uIGNhbmNlbGxhdGlvbiBkZXRhaWxzLiAg
Q292ZXJlZCBib3RoCiAgICAgICAgIGV4cGxpY2l0ICh2aWEgc3VibWl0dGVyIGFjdGlvbikg
YW5kIGltcGxpY2l0ICh2aWEgdGltZW91dCkKICAgICAgICAgY2FuY2VsbGF0aW9ucyAoU3Rh
bmlzbGF2IFNoYWx1bm92KS4KCiAgICAgICogIEFkanVzdGVkICJHbG9iYWwiIERvUyB0aHJl
c2hvbGQgZnJvbSA1MDAgdG8gMzAwIGFuZCBhZGRlZCBhCiAgICAgICAgICJXRyIgRG9TIHRo
cmVzaG9sZCBvZiAzMCBkcmFmdCB2ZXJzaW9ucyBwZXIgZGF5IChpbnNwaXJlZCBieQogICAg
ICAgICBTdGFuaXNsYXYgU2hhbHVub3YpLgoKICAgICAgKiAgSWxsdXN0cmF0ZWQgd2hhdCBl
bWFpbHMgbWF5IGJlIGV4Y2hhbmdlZCB3aGVuIGVtYWlsIGludGVyZmFjZQogICAgICAgICBp
cyBpbiB1c2UgKFN0YW5pc2xhdiBTaGFsdW5vdikuCgogICAgICAqICBSZXBsYWNlZCBWYWxp
ZGF0aW9uIHBhZ2Ugd2l0aCB2YWxpZGF0ZS1vbmx5IGZsYWcgb24gdGhlIFVwbG9hZAogICAg
ICAgICBwYWdlLiAgVGhpcyBoZWxwcyBhdm9pZCBtdWx0aXBsZSB3ZWxsLWtub3duIGxvY2F0
aW9ucyBmb3IKICAgICAgICAgc2ltaWxhciB0b29scyBhbmQgbWlnaHQgc2ltcGxpZnkgdGhl
IGltcGxlbWVudGF0aW9uLgoKICAgICAgKiAgUmVzb2x2ZWQgWFhYMTI6IFNpbXBseSByZWZl
ciB0byB0aGUgSUQtTklUUyBkb2N1bWVudCBmb3Igbm93LgoKICAgICAgKiAgUmVzb2x2ZWQg
WFhYMTMsIFhYWDE0OiBQbGFjZWQgImxhd2Z1bCBzdWJtaXR0ZXIiIGNoZWNrIGludG8gdGhl
CiAgICAgICAgICJFeHRlcm5hbCBtZXRhLWRhdGEiIHNlY3Rpb24uICBEb2N1bWVudGVkIHdo
YXQgc3VibWl0dGVycyB0aGUKICAgICAgICAgVG9vbHNldCBoYXMgdG8gaWRlbnRpZnkgYXMg
bGF3ZnVsIHN1Ym1pdHRlcnMgKFIxMTkgLSBSMTIyKS4KICAgICAgICAgT3RoZXJzIHdvdWxk
IHJlcXVpcmUgbWFudWFsIGNoZWNrcyBieSB0aGUgU2VjcmV0YXJpYXQuCgogICAgICAqICBS
ZXNvbHZlZCBYWFg1ODogRG9jdW1lbnRlZCB3aGF0IHRoZSBUb29sc2V0IG11c3QgZG8gaWYg
bm8KICAgICAgICAgYXBwcm92YWwgZXhpc3RzIGF0IHRoZSB0aW1lIG9mIHRoZSBXRyBkcmFm
dCBzdWJtaXNzaW9uIChSMTIzLAogICAgICAgICBSMTI0KS4KCiAgICAgICogIFJlbW92ZWQg
WFhYNjQ6IFBERiBkcmFmdHMgYXJlIGN1cnJlbnRseSBhbGxvd2VkIHRvIGJlIHBvc3RlZDsK
ICAgICAgICAgd2h5IHRoZXkgYXJlIGFsbG93ZWQgaXMgbm90IHJlYWxseSBpbXBvcnRhbnQu
CgogICAgICAqICBSZXNvbHZlZCBYWFg2NjogWE1MIGRyYWZ0IHNvdXJjZXMgYXJlIGN1cnJl
bnRseSBub3QgYWxsb3dlZCB0bwogICAgICAgICBiZSBwb3N0ZWQuCgogICAgICAqICBSZXNv
bHZlZCBYWFg2ODogdXNlIGRyYWZ0ICJ2ZXJzaW9uIiBpbnN0ZWFkIG9mICJyZXZpc2lvbiIu
CiAgICAgICAgIEd1aWRlbGluZXMgdG8gQXV0aG9ycyBvZiBJbnRlcm5ldC1EcmFmdHMgZG9j
dW1lbnQgdXNlcyBib3RoLgogICAgICAgICBSRkMgMjAyNiB1c2VzICJ2ZXJzaW9uIiwgd2hp
Y2ggaXMgYWxzbyBhIG1vcmUgcG9wdWxhciBhbmQKICAgICAgICAgYXJndWFibHkgbW9yZSBw
cmVjaXNlIHRlcm0uCgogICB2ZXJzaW9uIDA0CgogICAgICAqICBJbiBDaGVjayBhY3Rpb24s
IGRvY3VtZW50ZWQgb25jZSwgZWFybHksIGFuZCBleHBsaWNpdGx5IHRoYXQKICAgICAgICAg
ZXJyb3JzIG1ha2UgYXV0by1wb3N0aW5nIGltcG9zc2libGUgYnV0IHNob3VsZCBsZXQgdGhl
CiAgICAgICAgIHN1Ym1pdHRlciB0byBwb3N0IG1hbnVhbGx5LiAgUmVtb3ZlZCByZWZlcmVu
Y2VzIHRvIHZhZ3VlCiAgICAgICAgICJhY3Rpb24gZmFpbHMiIHN0YXRlbWVudHMgKEhlbnJp
ayBMZXZrb3dldHopLgoKICAgICAgKiAgSFRUUCBlcnJvciBjb2RlcyBzaG91bGQgbm90IGJl
IHVzZWQgdG8gaW5kaWNhdGUgQ2hlY2sgYWN0aW9uCiAgICAgICAgIGVycm9ycyBiZWNhdXNl
IGRvaW5nIHNvIHdvdWxkIGJlIGEgbGF5ZXJpbmcgdmlvbGF0aW9uIGFuZCwgaW4KICAgICAg
ICAgc29tZSBjYXNlcywgbWF5IGNvbXBsaWNhdGUgYm90aCBhdXRvbWF0ZWQgYW5kIG1hbnVh
bAogICAgICAgICBpbnRlcnByZXRhdGlvbiBvZiB0aGUgVG9vbHNldCByZXNwb25zZXMuICBS
ZXdyb3RlIFI3IHRvIHJlcXVpcmUKCgoKUm91c3Nrb3YgICAgICAgICAgICAgICAgRXhwaXJl
cyBPY3RvYmVyIDIxLCAyMDA1ICAgICAgICAgICAgICAgW1BhZ2UgMzNdCgwKSW50ZXJuZXQt
RHJhZnQgICAgIElEIFN1Ym1pc3Npb24gVG9vbHNldDogUmVxdWlyZW1lbnRzICAgICAgICBB
cHJpbCAyMDA1CgoKICAgICAgICAgdXNlIG9mIGNvbXB1dGVyLWZyaWVuZGx5IHRhZ3MgaW4g
cmVzcG9uc2UgYm9keSBpbnN0ZWFkIG9mIEhUVFAKICAgICAgICAgc3RhdHVzIGNvZGVzLgoK
ICAgICAgKiAgU3BsaXQgIlByZXByb2Nlc3NpbmciIHN1YnNlY3Rpb24gaW50byAiUHJlcHJv
Y2Vzc2luZyIgYW5kCiAgICAgICAgICJQcm9jZXNzaW5nIi4gIFRoZSBmb3JtZXIgZGVhbHMg
d2l0aCBYTUwgaW5jbHVkZSBQSXMgd2hpbGUgdGhlCiAgICAgICAgIGxhdHRlciB0YWxrcyBh
Ym91dCBwbGFpbiB0ZXh0IGFuZCBIVE1MIGdlbmVyYXRpb24gKEhlbnJpawogICAgICAgICBM
ZXZrb3dldHopLgoKICAgICAgKiAgUmVtb3ZlZCBwb3N0LWlmLXZhbGlkIGZ1bmN0aW9uYWxp
dHkgKFI3OCAtIFI4MCkuICBBdXRvbWF0aW9uCiAgICAgICAgIHRvb2xzIHN1Y2ggYXMgdGhl
IG9uZXMgdGhhdCBwcm9jZXNzIGUtbWFpbC1iYXNlZCBzdWJtaXNzaW9ucwogICAgICAgICB3
b3VsZCBiZW5lZml0IGZyb20gaGF2aW5nIHRoZSBrbm9iLCBidXQgdGhleSBjYW5ub3QgdXNl
IHRoZQogICAgICAgICBDaGVjayBhY3Rpb24gImFzIGlzIiwgZXZlbiB3aXRoIHRoZSBrbm9i
LCBiZWNhdXNlIHRoZXJlIGFyZQogICAgICAgICBvdGhlciBkaWZmZXJlbmNlcyBpbiB0aGUg
aW50ZXJmYWNlIChlLmcuLCBzdWJtaXR0ZXIKICAgICAgICAgaWRlbnRpZmljYXRpb24gbG9n
aWMpLiAgSW4gb3RoZXIgd29yZHMsIG1vcmUga25vYnMgd291bGQgYmUKICAgICAgICAgbmVl
ZGVkLCB3aGljaCB3b3VsZCBkZWZlYXQgdGhlIHB1cnBvc2Ugb2YgcmV1c2luZyB0aGUgc2Ft
ZQogICAgICAgICBhY3Rpb24uICBXaGVuIGltcGxlbWVudGluZyB3ZWIgYW5kIGUtbWFpbCBp
bnRlcmZhY2VzLCB0aGUKICAgICAgICAgU2VjcmV0YXJpYXQgc2hvdWxkIHN0aWxsIGJlIGFi
bGUgdG8gcmV1c2UgdGhlIGJhc2UgYWN0aW9uIGNvZGUsCiAgICAgICAgIG9mIGNvdXJzZS4K
CiAgICAgICogIERlZmluZWQgY29tcGxpYW5jZS4KCiAgICAgICogIFJlc29sdmVkIFhYWDI6
IGluZm9ybSBhbGwgYXV0aG9ycyB0aGF0IHRoZWlyIGRyYWZ0IHdhcyBwb3N0ZWQuCiAgICAg
ICAgIERvY3VtZW50ZWQgd2hhdCBpbmZvcm1hdGlvbiBzaG91bGQgZ28gaW50byB0aGUgcG9z
dGluZwogICAgICAgICBub3RpZmljYXRpb24gbWVzc2FnZS9wYWdlLgoKICAgICAgKiAgUmVz
b2x2ZWQgWFhYMTYgYW5kIFhYWDU3OiBSMjMgbm93IHNheXMgdGhhdCBhbiBJRVRGIElQUgog
ICAgICAgICBTdGF0ZW1lbnQgYW5kIG90aGVyIGJvaWxlcnBsYXRlIHJlcXVpcmVkIGZvciBk
cmFmdHMgYWNjb3JkaW5nCiAgICAgICAgIHRvIFJGQyAzOTc4IGFuZCAzOTc5IChvciBzdWNj
ZXNzb3JzKSBtdXN0IGFwcGVhciBpbiB0aGUgZHJhZnQKICAgICAgICAgdGV4dCAoSGVucmlr
IExldmtvd2V0eikuCgogICAgICAqICBSZXNvbHZlZCBYWFgyMyBhbmQgWFhYNjI6IE1hbnVh
bCBDaGVjayBwYWdlIGFuZCBhY3Rpb25zIHVzZWQgYnkKICAgICAgICAgc2VjcmV0YXJpYXQg
ZG8gbm90IHZlcmlmeSBzdWJtaXR0ZXIgYWNjZXNzIHRvIGUtbWFpbC4gIExhc3QKICAgICAg
ICAgcmVzb3J0IG9wdGlvbiBzaG91bGQgYmUgYXMgZmxleGlibGUgYW5kIGZvcmdpdmluZyBh
cyBwb3NzaWJsZS4KCiAgICAgICogIFJlc29sdmVkIFhYWDI2OiBpdCBzaG91bGQgYmUgcG9z
c2libGUgdG8gcmVzcG9uZCB0byBkby15b3UtCiAgICAgICAgIGhhdmUtYWNjZXNzLXRvLXlv
dXItZW1haWwgbWVzc2FnZSBieSBlLW1haWwsIGluIGFkZGl0aW9uIHRvCiAgICAgICAgIGN1
dC1hbmQtcGFzdGluZyBhIFVSTC4KCiAgICAgICogIFJlc29sdmVkIFhYWDMwIGFuZCBYWFgz
MTogUjk4IG5vdyByZXF1aXJlcyB0aGF0IHdoZW4gc3VibWl0dGVyCiAgICAgICAgIGlzIG5v
dCBhbiBhdXRob3IsIFNlY3JldGFyaWF0IGhhcyB0byBiZSBpbnZvbHZlZC4KCiAgICAgICog
IFJlc29sdmVkIFhYWDM3OiBFLW1haWwgc3VibWlzc2lvbnMgbXVzdCB1c2UgYXR0YWNobWVu
dHMsIGV2ZW4KICAgICAgICAgaWYgdGhlcmUgaXMgb25seSBvbmUgZHJhZnQgZm9ybWF0LiAg
VGhpcyBtYXkgaGVscCB0byBrZWVwIHRoZQogICAgICAgICBUb29sc2V0IHNpbXBsZSAobm8g
c21hcnRzIG5lZWRlZCB0byBpc29sYXRlIHRydWUgZHJhZnQgdGV4dAogICAgICAgICBmcm9t
IG5vdGVzIGluIHRoZSBiZWdpbm5pbmcgb2YgdGhlIGUtbWFpbCBhbmQgc2lnbmF0dXJlcyku
CgogICAgICAqICBSZXNvbHZlZCBYWFgzODogZG8gbm90IHJlcXVpcmUgc3BlY2lhbCBTdWJq
ZWN0OiBsaW5lcyBmb3IKICAgICAgICAgZS1tYWlsIHN1Ym1pc3Npb24gdG8ga2VlcCB0aGUg
VG9vbHNldCBzaW1wbGUuICBTaW5jZSB3ZSB2ZXJpZnkKCgoKUm91c3Nrb3YgICAgICAgICAg
ICAgICAgRXhwaXJlcyBPY3RvYmVyIDIxLCAyMDA1ICAgICAgICAgICAgICAgW1BhZ2UgMzRd
CgwKSW50ZXJuZXQtRHJhZnQgICAgIElEIFN1Ym1pc3Npb24gVG9vbHNldDogUmVxdWlyZW1l
bnRzICAgICAgICBBcHJpbCAyMDA1CgoKICAgICAgICAgc3VibWl0dGVyIGFjY2VzcyB0byBl
LW1haWwsIG5vIGF1dG9tYXRlZCBzcGFtIGlzIGxpa2VseSB0bwogICAgICAgICByZXN1bHQg
aW4gYSBkcmFmdCBzdWJtaXNzaW9uLgoKICAgICAgKiAgUmVzb2x2ZWQgWFhYNDMsIFhYWDQ0
LCBhbmQgWFhYNjA6IG1ha2luZyBhbiBleGlzdGluZyBkcmFmdAogICAgICAgICBvYnNvbGV0
ZSBpcyBvdXQgb2YgdGhpcyBkb2N1bWVudCBzY29wZS4gIFRoaXMgY29tcGxleCBmZWF0dXJl
CiAgICAgICAgIGNhbiBiZSBkb2N1bWVudGVkIGFuZCBpbnRlZ3JhdGVkIGxhdGVyIHRvIHNh
dGlzZnkgUjMzLgoKICAgICAgKiAgUmVzb2x2ZWQgWFhYNDkgYW5kIFhYWDUyOiB0aGUgZmly
c3QgdHdvIGltcGxlbWVudGF0aW9uIHN0YWdlcwogICAgICAgICBzaG91bGQgdGFrZSAzMCBh
bmQgOTAgZGF5cywgcHJvdmlkZWQgYSBzaW5nbGUgZnVsbC10aW1lIHBlcnNvbgogICAgICAg
ICBlZmZvcnQuCgogICAgICAqICBSZXNvbHZlZCBYWFg1MDogc3BlY2lmeSBhcHByb3hpbWF0
ZSBlZmZvcnQgcmVxdWlyZWQgdG8gY29tcGxldGUKICAgICAgICAgdGhlIGZpcnN0IHR3byBp
bXBsZW1lbnRhdGlvbiBzdGFnZXMuICBMZXQgdGhlIElFU0cgYW5kIHRoZQogICAgICAgICBT
ZWNyZXRhcmlhdCB1c2Ugb3VyIGVzdGltYXRlcyB0byBhZ3JlZSBvbiBhIHNwZWNpZmljCiAg
ICAgICAgIGltcGxlbWVudGF0aW9uIHNjaGVkdWxlL2RlYWRsaW5lcy4KCiAgICAgICogIFJl
c29sdmVkIFhYWDUzOiBsYWNrIG9mIGF1dGhvciBlLW1haWwgY2F1c2VzIGEgd2FybmluZywg
bm90CiAgICAgICAgIGVycm9yLiAgU2VlIFI5NSBmb3IgcmF0aW9uYWxlLgoKICAgICAgKiAg
UmVzb2x2ZWQgWFhYMTE6IGFkZGVkIHBhZ2UgY291bnQgYW5kIHNpemUgb2YgcHJpbWFyeSBk
cmFmdAogICAgICAgICBmb3JtYXQgdG8gbWV0YS1kYXRhIGJlY2F1c2UgdGhpcyBpbmZvcm1h
dGlvbiBpcyB1c2VmdWwgdG8gc29tZQogICAgICAgICBodW1hbnMgYW5kIHRvb2xzLCBhbmQg
YmVjYXVzZSBpdCBpcyB1c3VhbGx5IG11Y2ggZWFzaWVyIGFuZAogICAgICAgICBjaGVhcGVy
IHRvIGdldCB0aGlzIGluZm9ybWF0aW9uIGluIHN0YXRpYyBmb3JtIChlLmcuLCBzb21lCiAg
ICAgICAgIGRyYWZ0IG1ldGEtZGF0YSBYTUwgZmlsZSkgdGhhbiBjb21wdXRlIGl0IGR5bmFt
aWNhbGx5LgoKICAgICAgKiAgUmVzb2x2ZWQgWFhYMTU6IGFsd2F5cyBhbGxvdyBwb3N0aW5n
IG9mIGEgbmV3IHJldmlzaW9uIGJ1dCB3YXJuCiAgICAgICAgIGlmIG5ldyByZXZpc2lvbiBp
cyBub3QgZXhwZWN0ZWQuICBNb3ZlZCB0aGUgY29ycmVzcG9uZGluZyBSMjEKICAgICAgICAg
ZnJvbSBhYnNvbHV0ZSB0byBkZXNpcmVkIHJlcXVpcmVtZW50cy4KCiAgICAgICogIFJlc29s
dmVkIFhYWDMzIGFuZCBYWFg1OTogcHJldmVudCBEb1MgYXR0YWNrcyAoYWJzb2x1dGUKICAg
ICAgICAgcmVxdWlyZW1lbnQgUjk3KSBhbmQgd2FybiBhYm91dCB0b28tY2xvc2Ugc3VibWlz
c2lvbnMgKGRlc2lyZWQKICAgICAgICAgZmVhdHVyZSBSOTYpLgoKICAgICAgKiAgRGVmaW5l
ZCBkcmFmdCB2ZXJzaW9uLCBmb3JtYXQgYW5kIHByaW1hcnkgZm9ybWF0IHRlcm1zLgoKICAg
MjAwNC8xMC8wNQoKICAgICAgKiAgUmVzb2x2ZWQgWFhYOTogVGhlIFRvb2xzZXQgc2hvdWxk
IGV2ZW50dWFsbHkgb2ZmZXIgYQogICAgICAgICBWYWxpZGF0aW9uLW9ubHkgcGFnZS4KCiAg
ICAgICogIFJlc29sdmVkIFhYWDE5OiBUaGUgVG9vbHNldCBzaG91bGQgZXZlbnR1YWxseSBw
cm92aWRlIHRoZQogICAgICAgICBzdWJtaXR0ZXIgd2l0aCBhIHdheSB0byBwcmV2aWV3IHRo
ZSBlbnRpcmUgZHJhZnQsIHdpdGggYWxsCiAgICAgICAgIGZvcm1hdHMuCgogICAgICAqICBS
ZXNvbHZlZCBYWFg0MCwgWFhYNDEsIGFuZCBYWFg1NjogZmlyc3QgdXNlIGRyYWZ0IG5hbWUg
dG8KICAgICAgICAgZXh0cmFjdCBXRyBmbGFnIGFuZCBXRyBuYW1lIGFuZCBob3BlIGZvciBh
biBJRVRGIHBvbGljeSBjaGFuZ2UuCiAgICAgICAgIElmIElFVEYgcG9saWN5IG9uIG5hbWlu
ZyBkcmFmdHMgZG9lcyBub3QgY2hhbmdlIHNvb24sIGFkZCBjb2RlCiAgICAgICAgIHRvIHF1
ZXJ5IHNvbWUgZGF0YWJhc2VzIHRvIG1hcCBpbmRpdmlkdWFsLWxvb2tpbmcgZHJhZnRzIHRv
IFdHCgoKClJvdXNza292ICAgICAgICAgICAgICAgIEV4cGlyZXMgT2N0b2JlciAyMSwgMjAw
NSAgICAgICAgICAgICAgIFtQYWdlIDM1XQoMCkludGVybmV0LURyYWZ0ICAgICBJRCBTdWJt
aXNzaW9uIFRvb2xzZXQ6IFJlcXVpcmVtZW50cyAgICAgICAgQXByaWwgMjAwNQoKCiAgICAg
ICAgIG5hbWVzLgoKICAgICAgKiAgUmVzb2x2ZWQgWFhYNDYgYW5kIFhYWDQ3OiBzdG9yZSBh
bmQgbWFrZSBwdWJsaWMgYm90aCBvcmlnaW5hbAogICAgICAgICBhbmQgcHJlcHJvY2Vzc2Vk
IFhNTCBzb3VyY2VzLiAgTW9zdCB0b29scyBhcmUgbGlrZWx5IHRvIHVzZQogICAgICAgICBw
cmVwcm9jZXNzZWQgWE1MIGZvcm1hdC4gIEh1bWFucyBhbmQgc29tZSBkaWZmIHRvb2xzIG1h
eSBwcmVmZXIKICAgICAgICAgdGhlIG9yaWdpbmFsLgoKICAgMjAwNC8wOS8zMAoKICAgICAg
KiAgQWRkZWQgcmVxdWlyZW1lbnRzIFI3MiBhbmQgUjczIHRvIGhhbmRsZSBtdWx0aXBsZSBz
dWJtaXR0ZXJzCiAgICAgICAgIHN1Ym1pdHRpbmcgdGhlIHNhbWUgZHJhZnQgYW5kIGEgc2lu
Z2xlIHN1Ym1pdHRlciBzdWJtaXR0aW5nIHR3bwogICAgICAgICBkcmFmdHMgYXQgdGhlIHNh
bWUgdGltZSwgYWRkcmVzc2luZyBYWFgyNy4KCiAgICAgICogIFJlc29sdmVkIFhYWDc6IFRo
ZXJlIHNlZW1zIHRvIGJlIG5vIGdvb2QgcmVhc29uIHRvIHN1cHBvcnQgY3V0LQogICAgICAg
ICBhbmQtcGFzdGUgbW9kZS4gIFN1Ym1pc3Npb24gdmlhIGZpbGUgdXBsb2FkIGludGVyZmFj
ZSBzaG91bGQKICAgICAgICAgc3VmZmljZS4KCiAgICAgICogIFNlbWktcmVzb2x2ZWQgWFhY
NTM6IFRvb2xzZXQgc2hvdWxkIGFjY2VwdCBQREZzIGJlY2F1c2UgUkZDCiAgICAgICAgIEVk
aXRvciBkb2VzLiAgU3RpbGwgbmVlZCB0byBjaGVjayB3aGV0aGVyIHRoZSBTZWNyZXRhcmlh
dAogICAgICAgICBhY2NlcHRzIFBERnMgbGVnYWxseSB0b2RheSAoWFhYNjQpLgoKICAgMjAw
NC8wOS8yOQoKICAgICAgKiAgQ2xhcmlmaWVkIGFuZCBwb2xpc2hlZCB0aGUgIlNjb3BlIiBz
ZWN0aW9uLgoKICAgICAgKiAgVXBkYXRlZCAiU3RhdGUgb2YgdGhpcyBkcmFmdCIgdG8gZG9j
dW1lbnQgYXBwcm9hY2hpbmctbGFzdC1jYWxsCiAgICAgICAgIHN0YXRlIG9mIHRoZSBkcmFm
dCBhbmQgdG8gc29saWNpdCBlZGl0b3JpYWwtbGV2ZWwgZmVlZGJhY2suCgogICAyMDA0LzA5
LzI3CgogICAgICAqICBNYXJrZWQgZm9ybWFsIHRvb2xzZXQgcmVxdWlyZW1lbnRzIHVzaW5n
IGEgUm5ubiBub3RhdGlvbiB0byAoYSkKICAgICAgICAgZG9jdW1lbnQgaW1wbGVtZW50YXRp
b24gc2NoZWR1bGUsIGFuZCAoYikgbWFrZSBjb21wbGlhbnQKICAgICAgICAgaW1wbGVtZW50
YXRpb24gYW5kIGNvbXBsaWFuY2UgZXZhbHVhdGlvbiBlYXNpZXIuCgogICAgICAqICBNYXJr
ZWQgaW5mb3JtYWwgaW1wbGVtZW50YXRpb24gaGludHMgd2l0aCBhICJIaW50OiIgdGFnLCB0
bwogICAgICAgICBhdm9pZCBwb3NzaWJsZSBjb25mdXNpb24gd2l0aCBmb3JtYWwgcmVxdWly
ZW1lbnRzLgoKICAgICAgKiAgU3RhcnRlZCBkb2N1bWVudGluZyBpbXBsZW1lbnRhdGlvbiBz
Y2hlZHVsZS4gIEZvciBleGFtcGxlLCBvbmx5CiAgICAgICAgIHBsYWluIHRleHQgZm9ybWF0
cyBhcmUgaW50ZXJwcmV0ZWQgZHVyaW5nIHRoZSBmaXJzdCBzdGFnZSwgdGhlbgogICAgICAg
ICBYTUwgc3VwcG9ydCBpcyBhZGRlZCwgdGhlbiBvdGhlciBmb3JtYXRzLiAgTWVhbndoaWxl
LCB1bi0KICAgICAgICAgaW50ZXJwcmV0ZWQgZm9ybWF0cyBhcmUgYWNjZXB0ZWQgYW5kIHBv
c3RlZCBhcyBpcyBhcyBsb25nIGFzCiAgICAgICAgIHBsYWluIHRleHQgdmVyc2lvbiB2YWxp
ZGF0ZXMuCgogICAgICAqICBBZGRlZCBleHBsaWNpdCByZXF1aXJlbWVudHMgZm9yIG1hbmFn
aW5nIGFiYW5kb25lZCBzdWJtaXNzaW9ucwogICAgICAgICAoQnJpYW4gRS4gQ2FycGVudGVy
KQoKICAgICAgKiAgUGxhaW4gdGV4dCBvciBYTUwgZm9ybWF0cyBhcmUgYWx3YXlzIHJlcXVp
cmVkIChCcmlhbiBFLgogICAgICAgICBDYXJwZW50ZXIpCgoKClJvdXNza292ICAgICAgICAg
ICAgICAgIEV4cGlyZXMgT2N0b2JlciAyMSwgMjAwNSAgICAgICAgICAgICAgIFtQYWdlIDM2
XQoMCkludGVybmV0LURyYWZ0ICAgICBJRCBTdWJtaXNzaW9uIFRvb2xzZXQ6IFJlcXVpcmVt
ZW50cyAgICAgICAgQXByaWwgMjAwNQoKCiAgICAgICogIEFkZGVkIFhYWDU1OiBBY2NlcHRp
bmcgUERGcyBpcyBhIGNoYW5nZSBvZiBjdXJyZW50IGRvY3VtZW50ZWQKICAgICAgICAgcHJv
Y2VkdXJlcz8gIChCcmlhbiBFLiBDYXJwZW50ZXIpCgogICAgICAqICBBZGRlZCBhbiBvcHRp
b25hbCAiZGlzY3Vzc2lvbiBhZGRyZXNzIiB0byB0aGUgZXh0ZXJuYWwgbWV0YS0KICAgICAg
ICAgZGF0YSB0byBoZWxwIHJldmlld2VycyBrbm93IHdoZXJlIHRvIHNlbmQgY29tbWVudHMg
KGluc3BpcmVkIGJ5CiAgICAgICAgIEJyaWFuIEUuIENhcnBlbnRlciBzdWdnZXN0aW9uOyBC
cmlhbiB3YW50ZWQgdGhpcyB0byBiZSBhCiAgICAgICAgIHJlcXVpcmVkIGV4dHJhY3RhYmxl
IG1ldGEtZGF0YSkKCiAgICAgICogIFJlc29sdmVkIFhYWDE3LCBYWFgyOCwgYW5kIFhYWDI5
OiBUb2RheSwgLTAwIFdHIGRyYWZ0cyBhcmUKICAgICAgICAgYXBwcm92ZWQgYnkgdGhlIENo
YWlyIGVpdGhlciBiZWZvcmUgYW5kIGFmdGVyIHN1Ym1pc3Npb24sCiAgICAgICAgIGRlcGVu
ZGluZyBvbiBzZXZlcmFsIGZhY3RvcnMuICBCYXNlZCBvbiBXRyBjaGFpcnMgZmVlZGJhY2sg
d2UKICAgICAgICAgc3RpbGwgbmVlZCB0byBzdXBwb3J0IGJvdGggbW9kZXMuICBUaHVzLCB0
aGVyZSBpcyBubyBwb2xpY3kKICAgICAgICAgY2hhbmdlIHRvIHRhbGsgYWJvdXQgKGFuZCBt
b3JlIHdvcmsgZm9yIHRoZSB0b29sIGltcGxlbWVudG9ycwogICAgICAgICB0byBzdXBwb3J0
IGJvdGggbW9kZXMpLiAgU3RpbGwgbmVlZCB0byBhZGQgc3BlY2lmaWMgdG9vbHNldAogICAg
ICAgICByZXF1aXJlbWVudHMgaW4gY2FzZSB0aGVyZSBpcyBubyBhcHByb3ZhbCByZWNvcmRl
ZC4KCiAgICAgICogIFJlc29sdmVkIFhYWDE4LCBYWFgzMiwgYW5kIFhYWDQ1OiBXZSBhcmUg
Z29pbmcgdG8gbW92ZSAicmVxdWVzdAogICAgICAgICBmb3IgcHVibGljYXRpb24iIGZ1bmN0
aW9uYWxpdHkgdG8gYSBzZXBhcmF0ZSBbc2ltcGxlXSB0b29sIHRoYXQKICAgICAgICAgd29y
a3Mgd2l0aCBhbiBleGlzdGluZy9wb3N0ZWQgZHJhZnQuCgogICAgICAqICBSZXNvbHZlZCBY
WFg2OiBXZSBhcmUgZ29pbmcgdG8gbW92ZSB0aGUgIndpdGhkcmF3IHRoaXMgSUQiCiAgICAg
ICAgIGZ1bmN0aW9uYWxpdHkgZGVzaXJlZCBieSBTZWNyZXRhcmlhdCB0byBhIHNlcGFyYXRl
IFtzaW1wbGVdCiAgICAgICAgIHRvb2wgdGhhdCB3b3JrcyB3aXRoIGFuIGV4aXN0aW5nL3Bv
c3RlZCBkcmFmdC4KCiAgICAgICogIEFkZGVkIGEgImNvbW1lbnQiIGZpZWxkIHRvIHRoZSBB
ZGp1c3QgcGFnZSBzbyB0aGF0IHRoZQogICAgICAgICBzdWJtaXR0ZXIgY2FuIHRlbGwgU2Vj
cmV0YXJpYXQgd2h5IG1hbnVhbCBhY3Rpb24gaXMgbmVjZXNzYXJ5LgogICAgICAgICBUaGlz
IG1heSBib3RoIHNhdmUgdGltZSBTZWNyZXRhcmlhdCBhbmQgbGV0IHRoZW0gaW1wcm92ZSB0
aGUKICAgICAgICAgdG9vbHNldCB0byBtaW5pbWl6ZSBtYW51YWwgc3VibWlzc2lvbnMgKGlu
Y2x1ZGluZyBmaXhpbmcKICAgICAgICAgdmFsaWRhdGlvbi9leHRyYWN0aW9uIGJ1Z3MpLgoK
ICAgICAgKiAgQWRkZWQgdGhlIFJlY2VpcHQgcGFnZSB0byB0aGUgbGlzdCBvZiBkb2N1bWVu
dGVkIHBhZ2VzLCBmb3IKICAgICAgICAgY29tcGxldGVuZXNzLgoKICAgICAgKiAgRW1waGFz
aXplZCB0aGF0IGNvbW1vbiBzZXF1ZW5jZSBvZiBwYWdlcyB0byBnbyB0aHJvdWdoIGlzIGFz
CiAgICAgICAgIHNob3J0IGFzIHBvc3NpYmxlIGZvciBhIGdpdmVuIHNldCBvZiBmZWF0dXJl
cywgYW5kIHRoYXQgInBhZ2UiCiAgICAgICAgIG1lYW5zICJkaXN0aW5jdCBkaWFsb2ciLCBu
b3QgbmVjZXNzYXJpbHkgYSAiZGlzdGluY3QgVVJMIi4KICAgICAgICAgU29tZSByZXZpZXdl
cnMgdGhvdWdodCAidGhlcmUgYXJlIHRvbyBtYW55IHBhZ2VzIi4KCiAgIDIwMDQvMDkvMjAK
CiAgICAgICogIEFkZGVkICJFLW1haWwgSW50ZXJmYWNlIiBzZWN0aW9uIHRvIGRvY3VtZW50
IGhvdyBrZXkgdG9vbHNldAogICAgICAgICBmdW5jdGlvbmFsaXR5IGNhbiBiZSBhY2Nlc3Nl
ZCB2aWEgZS1tYWlsLiAgQ29tcGFyZWQgZS1tYWlsIGFuZAogICAgICAgICB3ZWIgaW50ZXJm
YWNlcy4gIChTdWdnZXN0ZWQgYnkgUGVra2EgU2F2b2xhKQoKICAgICAgKiAgU3BsaXQgIldH
IElEIiBtZXRhLWRhdGEgaW50byAiV0cgSUQiIGFuZCAiV0cgRmxhZyIuICBUaGUgZm9ybWVy
CiAgICAgICAgIHNlZW1zIHRvIGJlIGVhc3kgdG8gZXh0cmFjdCBmcm9tIHRoZSBkcmFmdCBu
YW1lLiAgTm90ZWQgdGhhdAogICAgICAgICB0aGUgbGF0dGVyIChpLmUuLCAidGhpcyBpcyBh
IHdvcmtpbmcgZ3JvdXAgZHJhZnQiIHN0YXR1cykKICAgICAgICAgY2Fubm90IGJlIGluZmVy
cmVkIGZyb20gc29tZSBXRyBkcmFmdHMgKFBla2thIFNhdm9sYSkuCgoKClJvdXNza292ICAg
ICAgICAgICAgICAgIEV4cGlyZXMgT2N0b2JlciAyMSwgMjAwNSAgICAgICAgICAgICAgIFtQ
YWdlIDM3XQoMCkludGVybmV0LURyYWZ0ICAgICBJRCBTdWJtaXNzaW9uIFRvb2xzZXQ6IFJl
cXVpcmVtZW50cyAgICAgICAgQXByaWwgMjAwNQoKCiAgICAgICogIEFkZGVkICJMaXN0IG9m
IGRyYWZ0cyBvYnNvbGV0ZWQgYnkgdGhpcyBkcmFmdCIgZXh0ZXJuYWwgbWV0YS0KICAgICAg
ICAgZGF0YSBpdGVtIChQZWtrYSBTYXZvbGEpLCBidXQgcXVlc3Rpb25lZCB3aGV0aGVyIHdl
IGFyZSByZWFkeQogICAgICAgICB0byBhdXRvbWF0ZSB0aGF0LgoKICAgICAgKiAgQWRkZWQg
bW9yZSBjb25mbGljdGluZyBvcGluaW9ucyB0byBYWFgxNSBhbmQgcHJvcG9zZWQgYQogICAg
ICAgICBzb2x1dGlvbi4KCiAgICAgICogIEFkZGVkICJQcmVwcm9jZXNzaW5nIiBzdWJzZWN0
aW9uIHRvIHJlZmxlY3QgdGhlIGRpc2N1c3Npb24gb24KICAgICAgICAgaG93L3doZXRoZXIg
aGFuZGxlIGluY2x1ZGUgUElzIGluIFhNTCBkcmFmdCBzb3VyY2VzLiAgTmVlZHMKICAgICAg
ICAgbW9yZSBkaXNjdXNzaW9uL3dvcmsuCgogICAgICAqICBGdXJ0aGVyIGNsYXJpZmllZCBo
b3cgYW4gYXV0aG9yIGNhbiByZXF1ZXN0IHRoZSBkcmFmdCByZXZpc2lvbgogICAgICAgICB0
byBiZSBwdWJsaXNoZWQgKGkuZS4sIGZvcndhcmRlZCB0byB0aGUgSUVTRyBvciBSRkMgRWRp
dG9yIGZvcgogICAgICAgICByZXZpZXcgYW5kIHB1YmxpY2F0aW9uIGFzIGFuIFJGQyBvciBC
Q1ApLiAgSXQncyBqdXN0IGEgY2hlY2tib3gKICAgICAgICAgb24gdGhlIHdlYiBpbnRlcmZh
Y2UuICBSYWlzZWQgZG91YnRzIHdlIGNhbiBwdWxsIHRoaXMgb2ZmIChzZWUKICAgICAgICAg
WFhYNDUpLgoKICAgICAgKiAgU3VnZ2VzdGVkIGluIFhYWDIgdGhhdCB3ZSB3b3VsZCBpbmZv
cm0gYWxsIGF1dGhvcnMgYnV0IG5vdCBzZWVrCiAgICAgICAgIHRoZWlyIGNvbnNlbnQgKGV4
Y2VwdCBmb3IgdGhlIHN1Ym1pdHRlcikgd2hlbiBwb3N0aW5nIHRoZWlyCiAgICAgICAgIGRy
YWZ0LgoKICAgMjAwNC8wOS8wOQoKICAgICAgKiAgUG9saXNoZWQgaGlnaC1sZXZlbCBwYWdl
L2FjdGlvbiBzdW1tYXJ5IGFuZCByZXBsYWNlZCB0ZXh0LWJhc2VkCiAgICAgICAgIHN0ZXBz
IGRpYWdyYW0gd2l0aCBzb21ldGhpbmcgdGhhdCBsb29rcyBtb3JlIGxpa2UgYSBkaWFncmFt
LgoKICAgICAgKiAgQWRkZWQgIkNvbXBhcmlzb24gd2l0aCBjdXJyZW50IHByb2NlZHVyZXMi
IHNlY3Rpb24gcGxhY2Vob2xkZXIKICAgICAgICAgZm9yIHN1bW1hcml6aW5nIHdoYXQgdGhp
cyBkcmFmdCBpbXByb3Zlcy9jaGFuZ2VzL3Zpb2xhdGVzLgoKICAgICAgKiAgRnJlcXVlbnQg
ZHJhZnQgdXBkYXRlcyBpcyBub3QgYWx3YXlzIGEgZ29vZCB0aGluZyAoSGVucmlrCiAgICAg
ICAgIExldmtvd2V0eikKCiAgICAgICogIEFkZGVkIGlkZWFzIHJlZ2FyZGluZyBmcmVxdWVu
dCBkcmFmdCB1cGRhdGVzIHdhcm5pbmdzCiAgICAgICAgIChTdGFuaXNsYXYgU2hhbHVub3Yp
CgogICAgICAqICBBZGRlZCAiU3RhdGUgb2YgdGhpcyBkcmFmdCIgc2VjdGlvbiB0byBlbmNv
dXJhZ2UgcmV2aWV3LgoKICAgMjAwNC8wOS8wMgoKICAgICAgKiAgRG9jdW1lbnRlZCBhbGwg
bWFqb3IgdG9vbHNldCBwYWdlcyBhbmQgY29ycmVzcG9uZGluZyBhY3Rpb25zLgoKICAgMjAw
NC8wOS8wMQoKICAgICAgKiAgRGVsZXRlZCBhbGwgcHJpbWFyeSBtb2RlcyBleGNlcHQgZm9y
IHdoYXQgdXNlZCB0byBiZSBjYWxsZWQKICAgICAgICAgIlBvc3RpbmcgQXV0b21hdGlvbiIu
ICBGb2N1cyBvbiB0aGUgbGF0dGVyIGFuZCBtZW50aW9uIG90aGVyCiAgICAgICAgIG1vZGVz
IGFzIGV4Y2VwdGlvbnMgb3Igc2lkZS1lZmZlY3RzLgoKCgoKClJvdXNza292ICAgICAgICAg
ICAgICAgIEV4cGlyZXMgT2N0b2JlciAyMSwgMjAwNSAgICAgICAgICAgICAgIFtQYWdlIDM4
XQoMCkludGVybmV0LURyYWZ0ICAgICBJRCBTdWJtaXNzaW9uIFRvb2xzZXQ6IFJlcXVpcmVt
ZW50cyAgICAgICAgQXByaWwgMjAwNQoKCiAgICAgICogIENoYW5nZWQgZHJhZnQgb3V0bGlu
ZSBhbmQgZGVwdGggdG8gZGVzY3JpYmUgc3BlY2lmaWMgc3VibWlzc2lvbgogICAgICAgICBz
dGVwcyBhbmQgY29ycmVzcG9uZGluZyB3ZWIgcGFnZXMgcmF0aGVyIHRoYW4gbW9yZSBnZW5l
cmFsCiAgICAgICAgIGlkZWFzL3JlcXVpcmVtZW50cy4KCiAgICAgICogIEFzc3VtZSwgZm9y
IG5vdywgdGhhdCBDaGFpciBhdXRob3JpemF0aW9uIG9mIFdHIGRyYWZ0IHdvcmsgbXVzdAog
ICAgICAgICBleGlzdCBmb3IgV0cgZHJhZnQgdG8gYmUgcHVibGlzaGVkLiAgVGhpcyBuZWVk
cyB0byBiZQogICAgICAgICBkb2N1bWVudGVkIGFuZCBwZXJoYXBzIHJlbGF4ZWQgdG8gYWxs
b3cgcG9zdC1zdWJtaXNzaW9uCiAgICAgICAgIGFwcHJvdmFscy4KCiAgIDIwMDQvMDgvMzAK
CiAgICAgICogIFVzZSAidG9vbHNldCIgaW5zdGVhZCBvZiBhIGxlc3MgYWNjdXJhdGUgImlu
dGVyZmFjZXMiIGluIHRoZQogICAgICAgICBkcmFmdCB0aXRsZSBhbmQgdGhyb3VnaG91dCB0
aGUgdGV4dCAoSGVucmlrIExldmtvd2V0eikKCiAgICAgICogIFVzZSAicG9zdCIgaW5zdGVh
ZCBvZiAicHVibGlzaCIiIGluIHRoZSBkcmFmdCB0aXRsZSBhbmQKICAgICAgICAgdGhyb3Vn
aG91dCB0aGUgdGV4dCAoQmFyYmFyYSBCLiBGdWxsZXIgYW5kIExhcnJ5IE1hc2ludGVyKQoK
ICAgICAgKiAgTml0cywgY2xhcmlmaWNhdGlvbnMsIGRhdGEtcG9pbnRzIChIYXJhbGQgVHZl
aXQgQWx2ZXN0cmFuZCwKICAgICAgICAgSGVucmlrIExldmtvd2V0eiwgTGFycnkgTWFzaW50
ZXIsIGFuZCBCYXJiYXJhIEIuIEZ1bGxlciBmb3IgdGhlCiAgICAgICAgIFNlY3JldGFyaWF0
KQoKICAgMjAwNC8wOC8yNQoKICAgICAgKiAgSW5pdGlhbCByZXZpc2lvbi4KCgoyMi4gIFJl
ZmVyZW5jZXMKCjIyLjEgIE5vcm1hdGl2ZSBSZWZlcmVuY2VzCgogICBbUkZDMjYyOV0gIFJv
c2UsIE0uLCAiV3JpdGluZyBJLURzIGFuZCBSRkNzIHVzaW5nIFhNTCIsIFJGQyAyNjI5LAog
ICAgICAgICAgICAgIEp1bmUgMTk5OS4KCiAgIFtSRkMzOTc4XSAgQnJhZG5lciwgUy4sICJJ
RVRGIFJpZ2h0cyBpbiBDb250cmlidXRpb25zIiwgQkNQIDc4LAogICAgICAgICAgICAgIFJG
QyAzOTc4LCBNYXJjaCAyMDA1LgoKICAgW1JGQzM5NzldICBCcmFkbmVyLCBTLiwgIkludGVs
bGVjdHVhbCBQcm9wZXJ0eSBSaWdodHMgaW4gSUVURgogICAgICAgICAgICAgIFRlY2hub2xv
Z3kiLCBCQ1AgNzksIFJGQyAzOTc5LCBNYXJjaCAyMDA1LgoKICAgW1hNTF0gICAgICBXb3Js
ZCBXaWRlIFdlYiBDb25zb3J0aXVtLCAiRXh0ZW5zaWJsZSBNYXJrdXAgTGFuZ3VhZ2UKICAg
ICAgICAgICAgICAoWE1MKSAxLjAiLCBXM0MgWE1MLCBGZWJydWFyeSAxOTk4LAogICAgICAg
ICAgICAgIDxodHRwOi8vd3d3LnczLm9yZy9UUi8xOTk4L1JFQy14bWwtMTk5ODAyMTA+LgoK
MjIuMiAgSW5mb3JtYXRpdmUgUmVmZXJlbmNlcwoKICAgW0ktRC5tcm9zZS13cml0aW5nLXJm
Y3NdCiAgICAgICAgICAgICAgUm9zZSwgTS4sICJXcml0aW5nIEktRHMgYW5kIFJGQ3MgdXNp
bmcgWE1MIChyZXZpc2VkKSIsCiAgICAgICAgICAgICAgZHJhZnQtbXJvc2Utd3JpdGluZy1y
ZmNzICh3b3JrIGluIHByb2dyZXNzKSwgQXByaWwgMjAwNC4KCgoKUm91c3Nrb3YgICAgICAg
ICAgICAgICAgRXhwaXJlcyBPY3RvYmVyIDIxLCAyMDA1ICAgICAgICAgICAgICAgW1BhZ2Ug
MzldCgwKSW50ZXJuZXQtRHJhZnQgICAgIElEIFN1Ym1pc3Npb24gVG9vbHNldDogUmVxdWly
ZW1lbnRzICAgICAgICBBcHJpbCAyMDA1CgoKICAgW3NlY3JldGFyaWF0XQogICAgICAgICAg
ICAgICJQcml2YXRlIGNvbW11bmljYXRpb24gd2l0aCB0aGUgSUVURiBTZWNyZXRhcmlhdCIs
IDIwMDQuCgogICBbT1NJXSAgICAgICJPcGVuIFNvdXJjZSBMaWNlbnNlcyBBcHByb3ZlZCBi
eSB0aGUgT3BlbiBTb3VyY2UKICAgICAgICAgICAgICBJbml0aWF0aXZlIiwgMjAwNC4KCgpB
dXRob3IncyBBZGRyZXNzCgogICBBbGV4IFJvdXNza292CiAgIFRoZSBNZWFzdXJlbWVudCBG
YWN0b3J5CgogICBFbWFpbDogcm91c3Nrb3ZAbWVhc3VyZW1lbnQtZmFjdG9yeS5jb20KICAg
VVJJOiAgIGh0dHA6Ly93d3cubWVhc3VyZW1lbnQtZmFjdG9yeS5jb20vCgoKCgoKCgoKCgoK
CgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgpSb3Vzc2tvdiAgICAgICAgICAgICAgICBFeHBp
cmVzIE9jdG9iZXIgMjEsIDIwMDUgICAgICAgICAgICAgICBbUGFnZSA0MF0KDApJbnRlcm5l
dC1EcmFmdCAgICAgSUQgU3VibWlzc2lvbiBUb29sc2V0OiBSZXF1aXJlbWVudHMgICAgICAg
IEFwcmlsIDIwMDUKCgpJbnRlbGxlY3R1YWwgUHJvcGVydHkgU3RhdGVtZW50CgogICBUaGUg
SUVURiB0YWtlcyBubyBwb3NpdGlvbiByZWdhcmRpbmcgdGhlIHZhbGlkaXR5IG9yIHNjb3Bl
IG9mIGFueQogICBJbnRlbGxlY3R1YWwgUHJvcGVydHkgUmlnaHRzIG9yIG90aGVyIHJpZ2h0
cyB0aGF0IG1pZ2h0IGJlIGNsYWltZWQgdG8KICAgcGVydGFpbiB0byB0aGUgaW1wbGVtZW50
YXRpb24gb3IgdXNlIG9mIHRoZSB0ZWNobm9sb2d5IGRlc2NyaWJlZCBpbgogICB0aGlzIGRv
Y3VtZW50IG9yIHRoZSBleHRlbnQgdG8gd2hpY2ggYW55IGxpY2Vuc2UgdW5kZXIgc3VjaCBy
aWdodHMKICAgbWlnaHQgb3IgbWlnaHQgbm90IGJlIGF2YWlsYWJsZTsgbm9yIGRvZXMgaXQg
cmVwcmVzZW50IHRoYXQgaXQgaGFzCiAgIG1hZGUgYW55IGluZGVwZW5kZW50IGVmZm9ydCB0
byBpZGVudGlmeSBhbnkgc3VjaCByaWdodHMuICBJbmZvcm1hdGlvbgogICBvbiB0aGUgcHJv
Y2VkdXJlcyB3aXRoIHJlc3BlY3QgdG8gcmlnaHRzIGluIFJGQyBkb2N1bWVudHMgY2FuIGJl
CiAgIGZvdW5kIGluIEJDUCA3OCBhbmQgQkNQIDc5LgoKICAgQ29waWVzIG9mIElQUiBkaXNj
bG9zdXJlcyBtYWRlIHRvIHRoZSBJRVRGIFNlY3JldGFyaWF0IGFuZCBhbnkKICAgYXNzdXJh
bmNlcyBvZiBsaWNlbnNlcyB0byBiZSBtYWRlIGF2YWlsYWJsZSwgb3IgdGhlIHJlc3VsdCBv
ZiBhbgogICBhdHRlbXB0IG1hZGUgdG8gb2J0YWluIGEgZ2VuZXJhbCBsaWNlbnNlIG9yIHBl
cm1pc3Npb24gZm9yIHRoZSB1c2Ugb2YKICAgc3VjaCBwcm9wcmlldGFyeSByaWdodHMgYnkg
aW1wbGVtZW50ZXJzIG9yIHVzZXJzIG9mIHRoaXMKICAgc3BlY2lmaWNhdGlvbiBjYW4gYmUg
b2J0YWluZWQgZnJvbSB0aGUgSUVURiBvbi1saW5lIElQUiByZXBvc2l0b3J5IGF0CiAgIGh0
dHA6Ly93d3cuaWV0Zi5vcmcvaXByLgoKICAgVGhlIElFVEYgaW52aXRlcyBhbnkgaW50ZXJl
c3RlZCBwYXJ0eSB0byBicmluZyB0byBpdHMgYXR0ZW50aW9uIGFueQogICBjb3B5cmlnaHRz
LCBwYXRlbnRzIG9yIHBhdGVudCBhcHBsaWNhdGlvbnMsIG9yIG90aGVyIHByb3ByaWV0YXJ5
CiAgIHJpZ2h0cyB0aGF0IG1heSBjb3ZlciB0ZWNobm9sb2d5IHRoYXQgbWF5IGJlIHJlcXVp
cmVkIHRvIGltcGxlbWVudAogICB0aGlzIHN0YW5kYXJkLiAgUGxlYXNlIGFkZHJlc3MgdGhl
IGluZm9ybWF0aW9uIHRvIHRoZSBJRVRGIGF0CiAgIGlldGYtaXByQGlldGYub3JnLgoKCkRp
c2NsYWltZXIgb2YgVmFsaWRpdHkKCiAgIFRoaXMgZG9jdW1lbnQgYW5kIHRoZSBpbmZvcm1h
dGlvbiBjb250YWluZWQgaGVyZWluIGFyZSBwcm92aWRlZCBvbiBhbgogICAiQVMgSVMiIGJh
c2lzIGFuZCBUSEUgQ09OVFJJQlVUT1IsIFRIRSBPUkdBTklaQVRJT04gSEUvU0hFIFJFUFJF
U0VOVFMKICAgT1IgSVMgU1BPTlNPUkVEIEJZIChJRiBBTlkpLCBUSEUgSU5URVJORVQgU09D
SUVUWSBBTkQgVEhFIElOVEVSTkVUCiAgIEVOR0lORUVSSU5HIFRBU0sgRk9SQ0UgRElTQ0xB
SU0gQUxMIFdBUlJBTlRJRVMsIEVYUFJFU1MgT1IgSU1QTElFRCwKICAgSU5DTFVESU5HIEJV
VCBOT1QgTElNSVRFRCBUTyBBTlkgV0FSUkFOVFkgVEhBVCBUSEUgVVNFIE9GIFRIRQogICBJ
TkZPUk1BVElPTiBIRVJFSU4gV0lMTCBOT1QgSU5GUklOR0UgQU5ZIFJJR0hUUyBPUiBBTlkg
SU1QTElFRAogICBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBPUiBGSVRORVNTIEZP
UiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4KCgpDb3B5cmlnaHQgU3RhdGVtZW50CgogICBDb3B5
cmlnaHQgKEMpIFRoZSBJbnRlcm5ldCBTb2NpZXR5ICgyMDA1KS4gIFRoaXMgZG9jdW1lbnQg
aXMgc3ViamVjdAogICB0byB0aGUgcmlnaHRzLCBsaWNlbnNlcyBhbmQgcmVzdHJpY3Rpb25z
IGNvbnRhaW5lZCBpbiBCQ1AgNzgsIGFuZAogICBleGNlcHQgYXMgc2V0IGZvcnRoIHRoZXJl
aW4sIHRoZSBhdXRob3JzIHJldGFpbiBhbGwgdGhlaXIgcmlnaHRzLgoKCkFja25vd2xlZGdt
ZW50CgogICBGdW5kaW5nIGZvciB0aGUgUkZDIEVkaXRvciBmdW5jdGlvbiBpcyBjdXJyZW50
bHkgcHJvdmlkZWQgYnkgdGhlCiAgIEludGVybmV0IFNvY2lldHkuCgoKCgpSb3Vzc2tvdiAg
ICAgICAgICAgICAgICBFeHBpcmVzIE9jdG9iZXIgMjEsIDIwMDUgICAgICAgICAgICAgICBb
UGFnZSA0MV0KDAo=
--------------050703050808030903070802
Content-Type: text/xml;
	name="ietf.levkowetz.com/drafts/tools/draft-submission/draft-ietf-tools-draft-submission-08.c.xml"
Content-Disposition: attachment;
	filename="ietf.levkowetz.com/drafts/tools/draft-submission/draft-ietf-tools-draft-submission-08.c.xml"
Content-Transfer-Encoding: 7bit

<?xml version="1.0" ?>
<?xml-stylesheet type='text/xsl'
	href='http://xml.resource.org/authoring/rfc2629.xslt' ?>

<?rfc strict='yes' ?>
<?rfc toc='yes' ?>
<?rfc symrefs='yes' ?>
<?rfc editing='no' ?>
<?rfc compact='yes' ?>
<?rfc subcompact='no' ?>
<?rfc comments='yes' ?>
<?rfc inline='yes' ?>

<!DOCTYPE rfc SYSTEM "rfc2629.dtd">

<rfc ipr="full3978" docName="draft-ietf-tools-draft-submission-8b">

<!-- Revision: 08.c -->

<front> 

	<title abbrev="ID Submission Toolset: Requirements">Requirements for an
	IETF Draft Submission Toolset</title>

	<?rfc include='author.rousskov.xml' ?>

	<date month="April" year="2005" />

	<area>General</area>
	<workgroup>Tools team</workgroup>

	<keyword>tool</keyword>
	<keyword>automation</keyword>
	<keyword>submission</keyword>
	<keyword>Internet-Draft</keyword>

	<abstract>

		<t>This document specifies requirements for an IETF toolset to
		facilitate Internet-Draft submission, validation, and posting.</t>

	</abstract>

</front>

<middle>

<section anchor="intro" title="Introduction">

	<t>Public Internet-Drafts are the primary means of structured communication
	within the IETF. Current Internet-Draft submission and posting mechanisms
	hinder efficient and timely communication while creating an unnecessary load
	on the IETF Secretariat.  The IETF Tools team recommends formalization and
	automation of the current mechanisms.  This document contains specific
	automation requirements.</t>

	<t>The IETF Secretariat and many IETF participants have long been
	proponents of automation.  This document attempts to reflect their known
	needs and wishes, as interpreted by the Tools team.</t>

</section>

<section anchor="section-state" title="State of this draft">

	<t>This draft version attempts to resolve all known issues and address all
	Last Call comments received by 2005/04/12. The Tools team may ask the IESG
	to issue another Last Call for it.</t>

	<t>If you decide to review the draft at this late stage, please limit your
	comments to critical issues.  Please check the Change log in <xref
	target="section-change-log" /> before proposing changes as it is possible
	that your idea has already been discussed.  Please post comments on the
	tools-discuss@ietf.org mailing list or email them directly to the
	author.</t>

	<t>RFC Editor Note: Please remove this section for the final publication
	of the document.  It has been inspired by draft-rousskov-newtrk-id-state
	and related NEWTRK WG discussions.</t>

</section>

<section anchor="section-scope" title="Scope">

	<t>The Draft Submission Toolset discussed in this document is about
	getting a single new version of an Internet-Draft from an IETF
	participant to the IETF draft repository.  A single draft version may
	include several formats, and dealing with those formats is in scope for
	the Toolset.  Definition and sources of draft meta-information (to be used
	in Secretariat databases and elsewhere) are in scope.  Submitter
	authentication and submission authorization is in scope.</t>

	<t>Draft posting may result in various notifications sent to interested
	parties.  While this document recommends a subset of notification targets,
	details of notifications are out of scope.</t>

	<t>Creation of new drafts or new draft versions as well as manipulation,
	visualization, and interaction with the drafts already in the repository
	are out of scope.  Draft expiration and archiving of old draft versions
	are out of scope.</t>

	<t>The set of requirements in this document is not meant to be
	comprehensive or final.  Other IETF documents or procedures may require
	additional functionality from the Toolset.  For example, it is possible
	that the Toolset will be required to handle draft source formats other
	than plain text and XML.</t>

</section>

<section anchor="section-terms" title="Notation and Terminology">

	<t>The following terms are to be interpreted according to their
	definitions below.</t>

	<t><list style="hanging">

		<t hangText="posted draft:">A draft accepted into the public IETF
		draft repository and, hence, publicly available from the IETF web
		site.  Posting of a draft does not imply any IETF or IESG review
		and endorsement.</t>

		<t hangText="draft version:">A meant-to-be-public snapshot of an
		Internet-Draft with a meant-to-be-unique version number.  Also
		known as "draft revision".</t>

		<t hangText="draft format:">Any draft source or presentation format,
		including original and preprocessed XML, original or generated plain
		text as well as PDF, PostScript, and HTML formats.</t>

		<t hangText="primary draft format:">The first available draft format
		from the following list: plain text, PDF, PostScript, or XML.</t>

		<t hangText="WG-named draft:">A draft for which identifier (a.k.a.
		filename) is known and starts with "draft-ietf-". Abbreviated as "WGN
		draft".  Exceptions notwithstanding, WG-named drafts are usually
		controlled by IETF working groups and vice versa.  The handling of such
		naming exceptions is outside of this document scope.</t>
		
		<t hangText="individual draft:">A draft other than a WGN draft.</t>

		<t hangText="submitter:">A human or software agent initiating
		submission of an Internet-Draft version for validation or posting.
		In some cases, the Secretariat staff does the actual submission,
		but always on behalf of a submitter.  In some cases (including but
		not limited to malicious attacks), the submitter is not the draft
		author.</t>

		<t hangText="expected submitter:">A submitter that is authorized by
		IETF rules to post a given draft.  This includes a draft author or
		editor (listed in the draft text), a corresponding WG Chair, or an
		IESG member.</t>

		<t hangText="authorized submitter:">An expected submitter
		authenticated by the Toolset.  Authentication is initially limited to
		verifying submitter access to submitter's email address.</t>

		<t hangText="immediately:">Without human interaction or artificial
		software delays and within a few seconds.</t>

	</list></t>

	<t>The Toolset is specified using a set of normative requirements.  These
	requirements are English phrases ending with an "(Rnnn/s)" indication,
	where "nnn" is a unique requirement number, and "s" is a single letter
	code ("a", "b", or "c") specifying the implementation stage for the
	requirement.  Implementation stages are documented in <xref
	target="section-make-stages" />.</t>

	<t>This document specifies the interface and functionality of the Toolset,
	not the details of a Toolset implementation.  However, implementation
	hints or examples are often useful.  To avoid mixup with Toolset
	requirements, such hints and examples are often marked with a "Hint:"
	prefix.  Implementation hints do not carry any normative force, and a
	different implementation may be the best choice.</t>

</section>

<section anchor="section-statusquo" title="Status quo">

	<t>This section summarizes the process for draft submission and posting as
	it exists at the time of writing.</t>

	<t>To get an Internet-Draft posted on the IETF web site, an IETF
	participant emails the draft text to the IETF Secretariat, along with an
	informal note asking the Secretariat to post the draft.  Secretariat staff
	reads the note, reviews the draft according to a checklist, and then
	approves or rejects the submission.  Draft approval triggers the
	corresponding announcement to be sent to appropriate IETF mailing lists.
	Every 4 hours, approved drafts are automatically copied to the IETF drafts
	repository and become available on the IETF web site.</t>

	<t>Collectively, IETF participants submit thousands of Internet-Drafts per
	year (in the year 2000, about three thousand drafts were submitted; 2002:
	5k; 2004: 7k <xref target="secretariat" />). About 30-50% of posted drafts
	are WG-named drafts (among some 2,100 drafts, there were about 380 new and
	290 updated WGN drafts posted in 2003).  While no rejection statistics is
	available, the vast majority of submitted drafts are approved by the
	Secretariat for posting.</t>

	<t>It usually takes the Secretariat a few minutes to review a given draft.
	However, since the Secretariat staff does not work 24/7, does not work in
	all time zones, has other responsibilities, and since approved drafts are
	posted in batches every 4 hours, it may take from several hours to several
	days to get a draft posted.  Due to much higher demand and fixed
	processing capacity, postings during the last weeks before IETF
	face-to-face meetings take much longer, creating a long queue of
	unprocessed drafts that are then announced nearly simultaneously.</t>

	<t>To give IETF face-to-face meeting participants time to review relevant
	documents, the Secretariat does not accept Internet-Draft submissions close to
	IETF meetings (regardless of whether a draft is relevant to the upcoming
	meeting or not).</t>

	<t>Many Working Groups have come up with ad hoc solutions to cope with
	posting delays.  For example, many draft snapshots are "temporarily"
	published on personal web sites or sent (completely or in part) to the
	group list.  Alternative means of publication may effectively replace
	official IETF interfaces, with only a few major draft revisions ending up
	posted on the IETF web site.</t>

	<t>Informal interfaces for submitting and posting drafts discourage
	automation.  Lack of submission automation increases Secretariat load,
	complicates automated indexing and cross-referencing of the drafts, and,
	for some authors, leads to stale drafts not being updated often
	enough.</t>

	<t>Beyond a short Secretariat checklist, submitted drafts are not checked
	for compliance with IETF requirements for archival documents, and
	submitters are not notified of any violations.  As a result, the IESG and
	RFC Editor may have to spend resources (and delay approval) resolving
	violations with draft authors.  Often, these violations can be detected
	automatically and would have been fixed by draft authors if the authors
	knew about them before requesting publication of the draft.</t>

	<t>Technically, anybody and anything can submit a draft to the
	Secretariat.  There is no reliable authentication mechanism in place.
	Initial submissions of WGN drafts require WG Chair approval, which can be
	faked just like the submission request itself.  No malicious impersonations
	or fake approvals have been reported to date however.</t>

	<t>Lack of authentication is not perceived as a serious problem, possibly
	because serious falsification are likely to be noticed before serious
	damage can be done.  Due to the informal and manual nature of the submission
	mechanism, its massive automated abuse is unlikely to cause anything but a
	short denial of draft posting service and, hence, is probably not
	worth defending against.  However, future automation may result in a
	different trade-off.</t>

</section>

<section anchor="section-overall" title="Overall Toolset operation">

	<t>This section provides a high-level description for the proposed Toolset.
	The description is meant to show overall operation and order; please refer
	to other sections for details specific to each step.</t>

	<t>A typical submitter goes through a sequence of 2-4 web pages and
	associated actions.  The number of pages depends on the draft validation
	and meta-data extraction results.  For example, validating the draft
	without posting it requires interacting with two web pages: Upload and
	Check.  The common case of posting a valid draft without manual meta-data
	adjustments takes three web pages (Upload, Check, Receipt).</t>

	<t>Here is a brief overview of pages and actions:</t>

	<t><list style="hanging">

		<t hangText="Upload page:">The interface to copy a draft from the
		submitter's computer to the Toolset staging area (<xref
		target="section-upload-page" />). Multiple formats are accepted.
		The draft is sent to the Check action.</t>

		<t hangText="Check action:">Stores the draft in the Toolset staging
		area, extracts draft meta-data, validates the submission (<xref
		target="section-check-action" />). Produces the Check page.</t>

		<t hangText="Check page:">Displays draft interpretation and
		validation results (<xref target="section-check-page" />). A draft
		preview may also be given on this page.  After reviewing the draft
		interpretation and validation results, the submitter has four basic
		choices (a) auto-post draft "as is" now; (b) make manual corrections
		and submit the draft to Secretariat for manual posting later; (c)
		cancel submission; or (d) do nothing.  The automated posting option
		may not be available for drafts with validation errors.</t>

		<t hangText="Automated posting:">If the submitter decides to proceed
		with automated posting from the Check page, the system authenticates
		the submitter (and may also check whether the submitter is allowed to
		post the draft, if and when such checks are instituted).  If the
		submitter is authorized, the draft is immediately posted, deleted
		from the staging area, and the submitter is notified of the result
		via email and a Receipt page (<xref target="section-autopost-action"
		/>).</t>

		<t hangText="Manual adjustment and posting:">If the submitter decides to
		adjust the meta-data, the draft remains in the Toolset staging area, and
		the Adjust action (<xref target="section-adjust-action" />) presents
		the submitter with an Adjust page (<xref target="section-adjust-page"
		/>).  When the submitter makes the adjustments and proceeds with manual
		posting, a pointer to the stored draft and its adjusted meta-data is
		sent to the secretariat for manual processing (<xref
		target="section-manpost-action" />). The submitter is notified of the
		pending Secretariat request via email and a Receipt page.</t>

		<t hangText="Cancellation:">If the submitter decides to explicitly
		cancel the submission, the submission state (including the draft) is
		immediately deleted from the Toolset staging area and an appropriate
		Receipt page is generated without further actions (R123/a).
		Cancellation of previously posted drafts is out of this document scope.</t>

		<t hangText="Receipt page:">Contains details of a successful or failed
		draft submission and informs the submitter of the next appropriate
		step(s) related to submission result.</t>

	</list></t>

	<t>The following informal diagram illustrates the basic submission logic:</t>

	<t><figure>
		<artwork>                    /---> Post Now
                   /
Upload --> Check -+-----> Adjust ---> Send to Secretariat
                   \
                    \---> Cancel</artwork>
	</figure></t>

	<t>If the submitter does nothing while the Toolset is expecting some
	response, the abandoned submission times out (R124/a).  The timeout value
	depends on the submission state.  Hint: A timeout value of one hour is
	probably large enough unless the Toolset is waiting for some kind of a 3rd
	party confirmation (e.g., WG chair approval). Doing nothing is
	functionally equivalent to explicitly canceling the submission, except
	that explicit cancellation requires immediate removal of submission state
	while the state of submissions marked as abandoned is
	garbage-collected.</t>

	<t>The staging area maintenance algorithms must keep the area in a
	consistent, correct state in the presence of DoS attacks attempting to
	overwhelm the area with fake submissions in various stages (R67/a). Hint:
	denial of service to legitimate users is acceptable under DoS attack
	conditions, but corruption of the storage area is not.</t>

	<t>The "web pages" this text is referring to are distinct dialogs, that
	may be visible to the submitter under the same or different URL, and
	supported by a single or several server-side programs.</t>

	<t>The Toolset must handle multiple submitters simultaneously submitting
	the same draft (R72/a) and a single submitter simultaneously submitting
	two drafts (R73/a). The latter might happen, for example, when the
	submitter is using several browser windows to submit several drafts or is
	submitting drafts via email interface.  The term "simultaneously" means
	that submission processing times overlap.</t>

	<t>Hint: Except for the Upload page, pages contain a submission session
	identifier to provide actions with access to stored information.  The
	identifier is specific to the submission rather than the draft version or
	the submitter.  While the nature of the web interface allows the session
	identifier to be invisible to the submitter, email communication would
	need to identify the session so that the recipient (and Toolset) know the
	context.</t>

	<t>Hint: A single action may correspond to multiple server-side programs
	and, vice versa, a single program may implement several actions.  This
	document does not mandate any specific technology (e.g., CGI, PHP, and/or
	Java servlets) to implement server-side support.  The implementer
	experience, code reuse across web and email interfaces, and other factors
	will determine the right technology choice.</t>

	<t>Hint: Actions preserve and exchange state by storing it along with
	the draft.  Grouping all submission-specific information in one subdirectory
	named using the session identifier may increase robustness and simplify
	debugging.  Session creation and destruction can then be logged in a global
	index.</t>

	<t>Ways to partially or completely bypass the Toolset are documented
	in <xref target="section-bypass" /></t>

	<t>The Toolset sources should be publicly available (R152/b) under a
	license certified by the <xref target="OSI">Open Source Initiative</xref>
	(R144/a), with an interface to report bugs and request enhancements
	(R145/b). These requirements are meant to enable the Toolset transfer from
	one management team to another and to allow for public review and
	contribution.  To meaningfully satisfy these availability requirements, the
	Toolset has to implement the required functionality without relying on
	software with different availability conditions.</t>

	<t>Hint: Placing the Toolset source repository at an open-source-friendly
	project management site like SourceForge.net would provide the IETF
	community with a decent, ready-to-use interface to access the code,
	documentation, bug reports, and discussion forums.  Establishing and
	documenting a simple interface between the Toolset and external software
	(e.g., the Secretariat draft posting scripts) would facilitate
	availability checks.</t>

	<t>The Toolset is meant to be compatible with the Secretariat's tools for
	handling drafts.  Hint: Such compatibility can be achieved by appropriately
	implementing the Toolset or, in some cases, by modifying existing
	Secretariat tools.</t>


</section>

<section anchor="section-upload-page" title="Upload page">

	<t>To upload a draft, the submitter goes to a well-known page on the IETF web
	site (R1/b). There, the draft text can be uploaded using an HTML file upload
	form.  This form provides fields to upload the plain text format of the draft
	(R2/a) and all other formats allowed by IETF draft publication rules (R3/b).
	At the time of writing, these formats are: XML (<xref target="RFC2629" /> and
	<xref target="I-D.mrose-writing-rfcs" />), PDF, and PostScript.</t>

	<t>Submitted forms are handled by the Check action documented in <xref
	target="section-check-action" />. </t>

	<t>The Upload page also has a validate-only flag, indicating that an uploaded
	draft must not be posted and may be deleted immediately after the
	validation (R74/b). Regardless of the validation results, the stored draft
	meta-data is marked so that validation-only drafts can be identified and
	deleted first by garbage collector for the Toolset staging area (R75/b).
	Drafts uploaded in a validate-only mode cannot be posted (R76/b); they
	would need to be uploaded again, without the validate-only flag, and the
	validation results page should explain that (R77/b). This flag is useful
	for tools using online validation, especially for bulk draft processing.
	Hint: it may be better to implement this flag as a hidden HTML input field
	to simplify the interface for human submitters.</t>

</section>

<section anchor="section-check-action" title="Check action">

	<t>The Check action preprocesses a submission, generates plain text format
	(if needed, see R70), stores the submitted draft (all formats) in the staging
	area, and then extracts meta-data and validates each format (R6/a).
	Errors and warnings are indicated to the submitter in the response via
	computer-friendly tag(s) and human-friendly text (R7/a).</t>

	<t>If any error is found, automated posting becomes impossible (R113/a).
	This rule applies to all errors, even those that do not refer to R113 and
	do not explicitly prohibit automated posting.  If automated posting is not
	possible, the Toolset still gives the submitter an option of sending the
	draft for manual validation and posting (R114/a). Since each submission is
	treated in isolation, the submitter also has an option of correcting the
	problem and resubmitting the draft for automated posting.</t>

	<t>The manual validation and posting route is a Toolset bypass mechanism
	(see <xref target="section-bypass"/>) not meant for fixing problems with
	the draft itself.  The Secretariat does not generally correct submitted
	drafts.  If the draft needs tweaking to match submitter's intent, then the
	draft should be corrected by the submitter and resubmitted.</t>

	<t>It is an error to submit a draft which has neither plain text nor XML
	source format (R68/a). XML source is acceptable without accompanying plain
	text only if the Toolset successfully generates a draft in plain text format
	from the XML source, as a part of the processing step documented below
	(R69/b).  These rules imply that PDF- or PostScript-only drafts cannot be
	auto-posted.  Moreover, even manual Secretariat involvement cannot help with
	posting these drafts, as the IETF policy is to always require a plain text
	format in addition to PDF or PostScript.  Furthermore, drafts containing PDF
	or Postscript format versions must not be auto-posted until the Toolset can
	validate that their content matches the plain text format (R143/a).</t>

	<t>The draft format acceptance rules above are meant to decrease the chances
	that multiple posted draft formats for a single draft contain substantially
	different documents.  With experience, the rules may be simplified so that,
	for example, only submissions containing nothing but XML or plain text
	sources can be posted without Secretariat involvement and all other
	submissions require manual actions to match formats or extract meta-data.</t>

	<section anchor="section-step-check-prep" title="Preprocessing">

		<t>Submitting compressed drafts is a desirable feature, especially for
		submitters behind slow or content-altering links.  Compressed draft
		formats may be accepted (R150/c). Compressed formats, if any, must be
		decompressed during the preprocessing step (R151/c) so that other
		processors do not have to deal with compressed formats.  Hint:  While
		this specification does not document a list of supported compression
		standards, it is expected that such popular methods as "zip" and
		"gzip" should be accepted if compression is supported.  Accepting a
		collection of draft formats within a single compressed archive may
		also be desirable.</t>

		<t>XML source containing XML processor &lt;rfc? include="...">
		instructions (PIs) is preprocessed to include references (R8/b).  This
		step is needed to remove external dependencies from XML sources and to
		simplify tools processing posted XML. This document refers to such
		XML processor instructions as "include PIs".</t>
		
		<t>The XML preprocessor uses public database(s) to resolve PI
		references (R85/b).  The Toolset documentation specifies what
		databases are used and how PIs are mapped to database entries (R86/b).
		The Toolset must not rely on PIs existence (R87/b) because some XML
		sources will be preprocessed before the submission or will be written
		without PIs.  Hint: Local up-to-date copies of Marshall Rose's
		reference databases at xml.resource.org can be used.</t>

		<t>Both original and preprocessed XML sources may be posted later.
		The original source with include PIs may be useful to the RFC Editor
		and generation of diffs (against future or past original sources). The
		preprocessed source without include PIs becomes the default public XML
		source of the posted draft (R10/b).  If any of the include PIs known
		to the Toolset cannot be handled, an error is recorded (R11/b), and
		the submitter is encouraged to do the preprocessing locally, before
		submitting the draft (R111/b).</t>

		<t>Uncompressed draft formats other than XML are not preprocessed.</t>

	</section>

	<section anchor="section-step-check-proc" title="Processing">

		<t>When no plain text format of the draft is submitted, but XML
		sources are available, the Toolset attempts to generate plain text
		format from submitted XML sources (R70/b).</t>

		<t>If XML sources are available, the Toolset generates HTML draft
		format (R112/c). HTML generation failures should result in warnings,
		not errors (R115/c). HTML generation is not meant to be implemented
		until the Enhancement stage is reached (R130/a). In general, HTML
		generation is desirable because HTML drafts are usually easier to
		navigate than plain text drafts due to improved overall readability
		and links.  As any Enhancement Stage feature, HTML generation may be
		dropped or drastically changed to reflect then-current IETF consensus
		and the experience of the first two implementation stages.</t>

		<t>Hint: The Toolset implementers should not assume that draft formats
		generated by the same tool from the same source format have
		essentially the same content.  The generation tool may have options
		that allow authors to generate content exclusive to a specific
		generated format.  Such options might be abused.</t>

	</section>

	<section anchor="section-step-check-store" title="Storage">

		<t>The Check action needs to store all draft formats so that
		successfully validated drafts can later be auto-posted at submitter
		request.  The action stores all submitted formats of the draft in a
		staging area dedicated to the Toolset (R12/a). If, after garbage
		collection, the staging area is full (i.e., the total used size has
		reached the configured maximum capacity), the submitter and the
		Secretariat are notified of a fatal error (R13/a).</t>

	</section>

	<section anchor="section-step-check-extract" title="Extraction">

		<t>The Toolset extracts meta-data from the following stored draft
		formats: plain text (R131/a), XML (R132/b), and other (R133/c). If a
		meta-data extraction fails, the Toolset records an error (R15/a).
		Meta-data extraction is necessary to validate and post the draft.
		Extraction from all formats is necessary to validate that all meta-data
		matches across all formats (in addition to and before the Toolset can
		validate that the contents matches as well).</t>

		<t><xref target="section-make-stages" /> documents a non-obvious
		implementation schedule related to the above two requirements.  When
		only partial support for format interpretation is available, only
		interpreted formats are subject to extraction and validation
		requirements.  In other words, if the Toolset does not yet support
		interpretation of a given format, then the corresponding information
		is stored and made available "as is", regardless of the actual
		content.</t>

		<t>The draft interpreter extracts the following meta-data from each
		draft format (R16/a):</t>

		<t><list style="hanging">

			<t hangText="identifier:">Also known as draft "filename".  For
			example, draft-ietf-sieve-vacation-13 .</t>

			<t hangText="version:">A non-negative integer number representing
			draft version number (also known as draft revision number). For
			example, the number seven in
			draft-ietf-sieve-vacation-07.</t>

			<t hangText="name:">The common part of all draft identifiers for all
			versions of the same draft.  In other words, a draft identifier
			without the version component.  For example,
			draft-ietf-sieve-vacation in
			draft-ietf-sieve-vacation-07.</t>

			<t hangText="WG ID:">Working Group identifier.  For example,
			"sieve" in "draft-ietf-sieve-vacation-07" is a WG ID.  The WG
			ID value is empty for drafts that are not WG-named drafts.
			</t>

			<t hangText="WG flag:">True for WGN drafts and false for all
			other drafts.  For example, "true" for
			"draft-ietf-sieve-vacation-13".  This flag only influences
			the further handling of initial (version 00) draft
			submissions.</t>
		
			<t hangText="title:">A human-friendly draft title.  For example,
			the title of this document is "Requirements for an IETF Draft Submission
			Toolset"</t>

			<t hangText="authors:">A list of all draft authors.  For each
			author, their name and email address are extracted.</t>

			<t hangText="abstract:">The draft abstract text.</t>

			<t hangText="creation date:">The draft version creation date.</t>

			<t hangText="expiration date:">The draft version expiration date.</t>

			<t hangText="size:">The number of pages and octets in the primary
			format of the draft.  The definition of a page depends on the
			format and may be imprecise or arbitrary for some formats.</t>

    	</list></t>

		<t>Failure to extract any field results in error (R95/a).</t>

		<t>The Toolset requires author email addresses because they are
		essential for notifying co-authors that their draft has been posted.
		If there are no such notifications, a submitter adding a co-author to
		the draft without the co-author's consent may not be caught for a while.
		Such "surprise" co-authorships have happened in the past and can be
		quite annoying.  However, since the Toolset does not solicit
		co-authors' consent to post a valid draft (and such solicitation would
		not go beyond email control verification anyway), it is not possible
		to stop a malicious submitter from adding co-authors without their
		knowledge.</t>

		<t>Like other meta-data items above, draft creation and expiration
		dates are extracted from the draft; their values do not depend on the
		actual submission time (i.e., the time the Check action starts).
		However, the validation procedure (see <xref
		target="section-step-check-validate" />) may declare any extracted date
		invalid after taking into consideration current (i.e., submission)
		time, IETF draft expiration rules, and other factors external to the
		draft.</t>
		
	</section>

	<section anchor="section-step-check-validate" title="Validation">

		<t>Drafts need to be validated to catch broken submissions.  Validation
		also helps educate or warn authors of problems that may become
		show-stoppers when the draft is sent for IETF Last Call and IESG
		review.  IETF standards have to follow a set of syntax and semantics
		requirements (see the "ID-NITS" document at
		&lt;http://www.ietf.org/ID-Checklist.html>. Most of those requirements
		are not enforced for Internet-Drafts.  However, following them may
		improve draft quality, reduce the IESG load, and increase the chances of
		the draft being approved as an RFC.</t>

		<t>When validating a given draft, it is important to distinguish
		between absolute requirements and desirable draft properties.  Both
		categories are checked for, but violations have different effects
		depending on the category.  The two categories are detailed in the
		following subsections.</t>

		<t>When a valid draft is being posted and submitter authorization or
		co-author notification is performed, validation results should be
		included in the email (R81/b) so that the submitter can see meta-data
		extraction and validation warnings.  Note that these results cannot
		include errors since only valid drafts can be posted.</t>

		<section anchor="section-step-check-validate-abs" title="Absolute
		requirements">

			<t>Violating any of these requirements would prevent a draft to be
			automatically posted (R17/a). The offending draft would have to be
			fixed or submitted for manual posting, with an explanation why the
			absolute requirements need to be violated (or why the Validator
			mis-detected violations). These explanations may speed up
			Secretariat posting decision and may help Secretariat to improve
			the Toolset implementation.</t>

			<t><list style="numbers">

				<t>All available meta-data entries must match across all
				submitted draft formats (R18/a). For example, if the
				interpreter managed to extract a draft title from both the plain text
				and the PDF format, both titles must match.  This requirement
				prevents accidental submission of mismatching formats.</t>

				<t>Version 00 of a Working Group draft has a corresponding
				Working Group approval (R20/a). This approval can be relayed
				before or after the first draft submission, by a Chair or
				Secretary of the WG. See <xref
				target="section-step-check-validate-wg" /> for related
				requirements.</t>

				<t>The draft ID must be correct (R22/a), including the draft
				version number value.  Draft version numbers must start with
				zero and increase by one with every new version.  To satisfy
				this requirement, the Toolset would have to consult the
				repository of already posted drafts, including expired
				ones.</t>
				
				<t>An IETF IPR Statement and other boilerplate required for
				drafts according to <xref target="RFC3978" />
				and <xref target="RFC3979" /> (or successors) must
				appear in the draft text (R23/a).</t>

				<t>The creation of the draft version could have happened 48
				hours or less before submission time.  Hint: Implementers
				should be careful to handle creation dates that appear to be
				in the past or in the future, due to possible time zone
				differences.  Making the most forgiving/permissive assumption
				about the time zone should suffice.</t>

				<t>The draft version expiration date obeys IETF draft
				expiration rules.</t>

				<t>No IETF submission blackout period applies.  Hint:  IETF
				blackouts must be enforced based on submission time, not
				possible draft creation time.</t>

				<t>Posting the draft must not result in any Denial of Service
				(DoS) attack threshold to be crossed (R97/a). Specific
				thresholds are documented in <xref
				target="section-step-check-validate-dos" />.</t>

				<t>XML sources (if available) are valid with respect to the <xref
				target="XML">XML format</xref> (R153/c) and XML Document Type
				Definition (DTD) for IETF drafts (R154/c). Note that during
				the first two implementation stages, the corresponding
				validation failures result in warnings and not errors (see
				<xref target="section-step-check-validate-desire" />).</t>

			</list></t>

			<t>The XML DTD for IETF drafts is documented in <xref
			target="RFC2629" /> with recent changes available in <xref
			target="I-D.mrose-writing-rfcs" />. Hint: Bill Fenner's "RFC 2629
			validator" at http://rtg.ietf.org/~fenner/ietf/xml2rfc-valid/ (or
			its derivative) may be useful for XML format and DTD
			validation.</t>

		</section>

		<section anchor="section-step-check-validate-desire"
		title="Desirable features">

			<t>Violating any of the following requirements does not prevent
			the submitter from auto-posting the draft (R24/a).</t>

			<t><list style="numbers">

				<t>All automatically testable nits in the "ID-NITS" document at
				&lt;http://www.ietf.org/ID-Checklist.html> (R116/b). The
				Toolset should use external tools to check these rather than
				embed nits checking code (R117/a). Hint: Henrik Levkowetz'
				idnits tool can be used
				(http://ietf.levkowetz.com/tools/idnits/) and other tools can
				be written or adopted.</t>

				<t>New draft versions are expected (R21/b).  For example,
				version 00 of an individual draft is always expected, while
				posting a new version of a draft already under the IESG review
				should generate a warning.</t>

				<t>If both XML and plain text formats are submitted, the
				submitted plain text matches what can be generated based on
				submitted XML (R146/b).</t>

				<t>The previous version, if any, was posted at least 24 hours ago
				(R96/b).  This warning may prevent some human errors,
				especially when multiple authors may post the same draft.</t>

				<t>XML sources (if available) are valid with respect to the XML
				format (R155/b) and XML DTD for IETF drafts (R156/b). These
				requirements become absolute after the second implementation
				phase.  See <xref target="section-step-check-validate-abs" />
				for related information.</t>

			</list></t>

			<t>When comparing generated and submitted plain text formats to
			satisfy R146, a standard word-based diff is sufficient for initial
			Toolset implementations (R147/b). However, a custom fuzzy matching
			function can be developed (R148/c) to minimize false warnings due
			to, for example, draft text formatting differences.  When
			differences are detected, a complete diff may be provided on a
			separate page (R149/c), in addition to the warning.</t>

			<t>Hint: When comparing generated and submitted plain text
			formats, the Toolset may try several recent xml2rfc versions for
			plain text generation, to eliminate warnings due to differences
			among xml2rfc versions.</t>

		</section>

		<section anchor="section-step-check-validate-dos"
			title="DoS thresholds">

			<t>The following table documents DoS attack thresholds for various
			draft categories.  Daily limits correspond to all drafts (and all
			draft formats) within the category.  Other thresholds may be
			introduced and these initial thresholds may be adjusted as
			necessary.  The thresholds are likely to become more smart/dynamic
			with experience.</t>

			<texttable>

				<preamble>DoS attack thresholds:</preamble>

				<ttcol align='left'>category</ttcol>
				<ttcol width='20%' align='right'>versions/day</ttcol>
				<ttcol width='15%' align='right'>MB/day</ttcol>

				<c>drafts with the same draft name</c>
				<c>3</c>
				<c>5</c>

				<c>drafts with the same submitter</c>
				<c>5</c>
				<c>10</c>

				<c>WGN drafts with the same WG ID</c>
				<c>10</c>
				<c>15</c>

				<c>all drafts</c>
				<c>300</c>
				<c>150</c>

			</texttable>

			<t>The thresholds are meant to limit destructive effects of DoS
			attacks (e.g., full disks cause other tasks to fail), allow for
			capacity planning (e.g., how much storage space the Toolset
			needs), and limit annoying side-effects of "too many" drafts being
			posted (e.g., when a person receives posting notifications about a
			given draft or a given working group). The Toolset should warn the
			Secretariat if total submissions are approaching any threshold
			(R134/b). Hint: Bandwidth available for submissions may need to be
			throttled (on a network subnet basis?) to make reaching the daily
			size quota (with malicious intent) difficult.</t>

		</section>

		<section anchor="section-step-check-validate-wg"
			title="WG approval">

			<t>For version 00 of a WGN draft, the Toolset checks for an
			existing WG approval (R125/a). If (a) no approval exists, and (b)
			the Toolset does not support the "waiting for WG approval"
			feature, the Toolset records an error (R135/a).</t>

			<t>If (a) no approval exists, (b) the Toolset supports the
			"waiting for WG approval" feature, and (c) the draft cannot be
			posted even if WG approval is received, then the Toolset records a
			warning that a WG approval would be required once all errors
			preventing draft from posting are fixed (R137/b).</t>

			<t>If (a) no approval exists, (b) the Toolset supports the
			"waiting for WG approval" feature, and (c) the draft can be posted
			if WG approval is received, then the Toolset explains the
			situation to the submitter and asks whether the submitter wishes to
			solicit an explicit approval from the WG (R126/b). If the
			submitter decides to go ahead with solicitation, the Toolset puts
			the submission into a "waiting for WG approval" state until the
			approval is available (R127/b). Otherwise, the Toolset records a
			"no WG approval is expected" error (R138/b).</t>

			<t>Details of the approval recording and access interfaces as well
			as the mechanism to resume the submission upon approval are out of
			this document scope.</t>

		</section>

	</section>

</section>

<section anchor="section-check-page" title="Check page">

	<t>The Check page, created by the Check action, displays extracted draft
	meta-data and validation results (R25/a). The purpose of the page is to
	allow the submitter to verify whether the stored draft and automatically
	extracted meta-data match the submitter's intent and to be informed of
	validation problems.</t>

	<t>Meta-data items specified in <xref target="section-step-check-extract"
	/> that failed validation checks must be marked specially (rather than
	silently omitted or ignored) (R26/b). Hint: rendering those items in red,
	with links to corresponding validation errors or warnings, may force
	authors to pay attention.</t>

	<t>Validation messages include both errors and warnings.  Each validation
	message refers to normative document(s) containing the corresponding
	validation rules (R27/b).</t>

	<t>The Check page allows the submitter to enter <xref
	target="section-check-page-ext">external meta-data</xref> (R28/a). If
	validation was successful, an "automatically post the draft now" button is
	provided (R29/a).  Regardless of validation results, "adjust and post
	manually" and "cancel" buttons are provided (R30/a).</t>

	<t>The Check page provides a preview of the draft plain text format
	(R31/a), with a link to see how the entire draft (with all its formats)
	would look like if posted (R82/b). Hint: the Check page preview should be
	sufficiently long to let authors detect obvious draft mismatch or
	misinterpretation errors but short enough to avoid dominating the page.
	Displaying the first line of the draft through the last line of the
	abstract may be sufficient.</t>

	<t>For draft updates, the Check page reports the time and the submitter of
	the last update (R83/b). This information is especially useful when
	multiple authors are working on the same draft.  The page also provides a
	link to generate a diff against the last posted version (R84/c).</t>

	<section anchor="section-check-page-ext" title="External meta-data">

		<t>The Check page solicits the following meta-data from the submitter.
		This information must be supplied by submitter because 
		it cannot be extracted from the draft:

		<list>

			<t>Submitter email address (R32/a). When submitter is not an
			expected submitter (see <xref target="section-terms" />),
			automated posting is not possible and the draft has to go through
			the Secretariat (R98).  Hint: A set of checkboxes next to
			extracted author names along with a "none of the above" checkbox
			with an input field would suffice.</t>

			<t>A list of drafts replaced by this draft (R33/c). This is useful
			to make replaced drafts invisible.  This document does not specify
			any actions necessary to actually replace an existing draft
			because existing draft manipulation is out of scope, and because
			security concerns and other complications of such actions would be
			better addressed by a separate specification.</t>
			
			<t>Primary email address for discussion of this draft (R71/b).
			Hint: The Toolset can suggest the WG mailing list address for WGN
			drafts, (submitting) author address for individual drafts, or even
			the first email address in draft text.  Offering a few likely
			addresses instead of relying exclusively on user input would also
			reduce the number of typos.</t>

		</list></t>

		<t>Except for the submitter email address, external meta-data is
		optional (R109/a).</t>

		<t>If a given submitter email address belongs to an expected submitter
		(i.e., belongs to one of the categories below), the Toolset performs
		submitter authentication during a Post Now action (R19/a).  Otherwise,
		an error is reported (R118/a).</t>

		<t>The following possible expected submitters are identified by the
		Toolset, without any Secretariat intervention:

		<list>

			<t>For version 00 of a draft, any submitter (R119/a).</t>

			<t>For version N+1 of a draft, an author of version N of the same
			draft (R120/a).  This requirement only needs to be satisfied for
			drafts for which Nth version was posted using the Toolset; other
			drafts may not have the meta-information available which is
			required to reliably get a list of authors.</t>

			<t>For a WGN draft, a Chair of the corresponding WG (R121/b).</t>

			<t>For any draft, an IESG member (R122/c).</t>

		</list></t>

	</section>

</section>

<section anchor="section-autopost-action" title="Post Now action">

	<t>The Post Now action checks that the draft has been successfully
	validated (R34/a), validates external meta-data (including submitter email
	address) (R35/a), and posts the draft (R36/a).  The submitter is notified of
	the action progress and the final result (R37/a).</t>

	<t>The external meta-data contains the submitter's email address.  As a part of the
	validation procedure, the Post Now action authorizes the submitter.  The
	initial action implementation checks that the submitter has access to
	email sent to that address (R38/a). Eventually, the Toolset should accept
	client certificates signed by IETF, PGP-signed email, and/or other forms
	of client-side authentication to eliminate the weak and annoying email
	access check (R110/c). If submitter authentication fails, the submission
	eventually and silently times out (R39/a).</t>

	<t>The Toolset provides both web (R99/a) and email (R139/b) interfaces for
	confirming email access.  Hint: To check submitter's access to email, the
	tool can email a hard-to-guess cookie or token to the submitter's address.
	To continue with the submission, the submitter is requested to paste the
	cookie at the specified URL, go to the token-holding URL, or respond to
	the email.</t>

	<t>Immediately after sending an email to the submitter, the The Post Now
	action generates an intermediate Receipt page that explains Toolset
	expectations and provides the submitter with the submission ID (R100/a).
	That number allows the Secretariat to troubleshoot stuck submissions
	(R101/a) and can also be used for checking submission status without
	Secretariat involvement (R140/b).</t>

	<t>Immediately after posting the draft, the Toolset notifies all authors
	(with known email addresses) of the posting (R102/a).  The notification email
	contains the information available on the "successful posting" Receipt page
	described below (R103/a).</t>

	<t>If draft posting is successful, the submission state is marked as
	available for deletion (R105/a) so that the garbage collection routine
	eventually deletes it.</t>

	<section anchor="section-post-receipt-page" title="Receipt page">

		<t>A successful Post Now action reports at least the following
		information on the final Receipt page (R104/a):</t>

		<t><list style="symbols">

			<t>the draft ID and a link to the draft status page;</t>

			<t>the draft title, authors, and abstract;</t>

			<t>the submission ID</t>

			<t>a link to the draft submission status page (when status queries
			are supported, see R140).</t>

			<t>the submitter's name and email address.</t>

		</list></t>

		<t>The primary purpose of the Receipt page is to inform all draft
		authors that (supposedly) their draft has been posted.  The secondary
		purpose is to let authors create a permanent record of the event and
		troubleshoot postings.  The same information should be sent to other
		parties interested in the draft (e.g., to the WG mailing list), but 3rd party
		notification specifics are out of this document's scope.</t>

	</section>

</section>

<section anchor="section-adjust-action" title="Adjust action">

	<t>The Adjust action generates the Adjust page (R40/a), populating it with
	available extracted meta-data and external meta-data, as well as validation
	results and a preview.  Some information may be missing, depending on draft
	interpretation and the success of preview generation.</t>

</section>

<section anchor="section-adjust-page" title="Adjust page">

	<t>The Adjust page includes the same information as the Check page, but
	allows the submitter to adjust all extracted draft meta-data (and,
	naturally, external meta-data) at will (R41/a). Such adjustment is
	necessary when automated extraction failed to extract correct
	information.  To avoid any mismatch between draft and its meta-data, adjusted
	drafts cannot be automatically posted and require manual validation by
	the Secretariat (R42/a).  Secretariat staff can post drafts with adjusted
	meta-data as described in <xref target="section-bypass" />.</t>

	<t>The Adjust page allows the submitter to enter an informal comment
	explaining why adjustments are necessary and automated posting mode cannot
	be used (R48/a). Such comments may be essential for the Secretariat in
	their efforts to troubleshoot the problem.</t>

	<t>The "post manually" and "cancel" buttons are provided (R43/a). The
	former is backed by the "Post Manually" <xref
	target="section-manpost-action">action</xref>.</t>

</section>

<section anchor="section-manpost-action" title="Post Manually action">

	<t>The Post Manually action sends adjusted meta-data and a draft pointer to
	the Secretariat for manual validation and posting (R44/a). A receipt page
	is generated, instructing the submitter to wait (R45/a).  The Secretariat will
	notify the submitter once the draft is posted or rejected.  This
	notification is sent by the Toolset if the Secretariat is using the
	Toolset to post the draft (R46/a).</t>

</section>

<section anchor="section-receipt-page" title="Receipt page">

	<t>The Receipt page is generated by various actions to inform the
	submitter of the current submission status and further actions.  The contents
	of the page is likely to be highly dependent on the action and state for
	which receipt is being generated.  This section documents general
	requirements applicable to all actions and states.</t>

	<t>The Receipt page should give the submitter a URI or another identifier
	that can be used by Secretariat for manual troubleshooting of the submission
	(R63/a).  The identifier should be perpetual (R64/a) even though the
	associated details are likely to be eventually lost (e.g., draft submission
	data and logs are deleted from the staging area as a part of the garbage
	collection routine). Hint: Tools should distinguish old identifiers from
	invalid ones; when a given identifier is referring to deleted data, the tools
	accepting the identifier should inform their users that the identified
	submission is recognized, but the related information has expired.</t>

	<t>The Receipt page should give the submitter a Secretariat
	point-of-contact to report submission problems (R65/a).</t>

</section>

<section anchor="section-bypass" title="Bypassing the Toolset">

	<t>A buggy Toolset implementation or unusual circumstances may force a
	submitter to submit a draft to the Secretariat for manual processing.  This
	can be done by choosing the "manual posting" route supported by the Toolset
	(R47/a) or, as a last resort, by emailing the draft directly to Secretariat.
	In either case, an informal "cover letter" has to accompany the draft.  The
	letter should explain why the automated interface cannot be used.</t>

	<t>When processing manual submissions, the Secretariat may be able to use
	the Toolset.  A Manual Check page similar to the default Check page
	provides authenticated Secretariat staff with editable meta-data fields
	and a "force posting" action (R50/b). The forced posting action accepts
	meta-data fields "as is", does not verify submitter access to email or WG
	draft authorization, and posts the draft as if no validation errors were
	found (R51/b). The Manual Check page should still contain all the errors
	and warnings identical to those seen by ordinary submitters (R106/b) so
	that the Secretariat knows what the Toolset is unhappy about (if
	anything).</t>

	<t>Using manual processing may result in significant posting delays.
	Generated submission receipts or notifications ought to give the submitter
	an expected processing time estimate (R53/a).</t>

	<t>The intent of this mode is to provide a way for submitters to bypass
	bugs or limitations of the automated mechanisms in order to post an
	"unusual" draft or to post a draft under "unusual" circumstances.  One
	example would be a draft that does not contain standard IETF boilerplate
	but has a special IESG permission to post the draft with the experimental
	boilerplate.  Another example is a draft that fails automated validation
	tests due to a validator bug.</t>

	<t>The bypass mode is also likely to be used (effectively) by the majority
	of submitters during the Trial stage of the Toolset implementation, when
	few submitters know about (or are allowed to use) the Toolset.</t>

</section>

<section anchor="section-email-iface" title="Email interface">

	<t>The Toolset should have an email interface for automated posting of valid
	drafts (R55/b). While virtually every documented Toolset functionality
	can, technically, be implemented behind an email interface, features other
	than posting of valid drafts are believed to be prohibitively awkward to
	implement or use via email.</t>

	<t>The email interface accepts a draft as a set of email part(s) (one per
	draft format) (R56/b). For example, the plain text format can be submitted in
	the "body" of the email message, while XML source format can be optionally
	sent as an "attachment" of the same email message.  Each part can either
	contain the actual format data (R141/b) or a single URL pointing to it
	(R142/c). In the latter case, the Toolset has to fetch the format data.
	Details of URL-fetching option are not documented here, but it is assumed
	that HTTP URLs are supported (at least), and fetching errors are reported.
	This document does not specify how the format of each email part is
	determined, but it is assumed that MIME type and content would need to be
	analyzed.</t>

	<t>After accepting the draft, the Toolset uses the sender's email address to
	select the submitter identity (R57/b), checks the submission (R58/b), and
	posts the draft if the check is successful (R59/b). The submitter should
	be notified of the outcome of the draft submission via email (R60/b).
	Other requirements for the web interface (including requirements on submission
	preprocessing, draft validation, submitter authentication, draft posting,
	and notification) apply to the email interface.</t>

	<t>Therefore, a typical successful submission via email interface may
	result in the following exchange of messages ("T" is for "Toolset", "S" is
	for "submitter", and "A" is for "all authors and submitter"):

		<list style="hanging">
			<t hangText="   S-->T:">the draft version</t>
			<t hangText="   S&lt;--T:">a challenge to verify email access</t>
			<t hangText="   S-->T:">a response to the challenge</t>
			<t hangText="   A&lt;--T:">warnings and the receipt</t>
		</list>

	where the message containing the challenge may include warnings
	as well.</t>

	<t>When draft validation fails, the following emails may be exchanged:

		<list style="hanging">
			<t hangText="   S-->T:">the draft version</t>
			<t hangText="   S&lt;--T:">errors and receipt</t>
		</list>
	
	</t>

	<t>Email parts/attachments that are not recognized as draft formats are
	not considered as draft formats.  Such parts are ignored by the Toolset
	(R107/b), except that a warning is generated for each unrecognizable part
	containing more than whitespace (R108/b). These two requirements are meant
	to make the interface robust in the presence of email signatures and other
	parts outside of the submitter control.</t>

	<t>Hint: Toolset actions can be implemented to support email and web
	interfaces without code duplication.</t>

	<t>While both web and email interfaces allow for fast posting of valid
	drafts, there are significant differences between the two interfaces.
	Primary advantages of the email interface are:

	<list style="hanging">

		<t hangText="off-line mode:">A submitter can do all the manual work
		required to submit a draft while being disconnected from the network.
		The email client actually submits the draft when connectivity is
		regained.</t>

		<t hangText="poor connectivity:">Email systems are often better
		suited for automated transmission and re-transmission of emails when
		network connectivity is poor due to high packet loss ratios,
		transmission delays, and other problems.</t>

		<t hangText="convenience:">Some IETFers consider email interfaces
		as generally "more convenient".</t>

	</list></t>

	<t>Primary advantages of the web interface are:

	<list style="hanging">

		<t hangText="confirmation:">A submitter is given a chance to verify
		that automated extraction of meta-data produced reasonable results.
		Other useful confirmations are possible (e.g., "Are you sure you want
		to post a version of the draft that was updated 30 seconds ago by
		your co-author?").</t>

		<t hangText="validation:">A submitter can validate the draft without
		posting it.</t>

		<t hangText="quality:">Non-critical warnings may prompt the submitter
		to postpone posting to improve draft quality.</t>

		<t hangText="manual adjustments:">The submitter can adjust extracted
		meta-data and ease Secretariat work on manually posting an unusual
		draft.</t>

		<t hangText="meta-data:">The submitter can specify optional external
		meta-data (that cannot be extracted from the draft itself).  For
		example, an email address for draft discussion can be specified.</t>

		<t hangText="context help:">The web interface makes it easy to provide
		links to extra information about input fields, errors, posting
		options, deadlines, etc.</t>

		<t hangText="opaqueness:">Files submitted via the web interface are
		arguably less susceptible to various in-transit transformations and
		misinterpretation than emails.  Emails are often mutated by mail agents
		(e.g., automated disclaimers added by senders and extra line feeds
		added by recipients).</t>

		<t hangText="convenience:">Some IETFers consider web interfaces
		as generally "more convenient".</t>

	</list></t>

</section>

<section anchor="section-make-stages" title="Implementation stages">

	<t>This section defines the Toolset implementation stages or phases.  There are
	three consecutive stages, marked with letters "a", "b", or "c".  Earlier
	stage requirements must still be satisfied in later stages.  All
	requirements need to be interpreted and evaluated in the context of the
	current stage and the currently implemented features.  For example,
	requirement R68 applies to the first stage but refers to XML draft format
	that may not be supported until the second stage.  A correct interpretation
	of R68 until XML support is added is "it is an error to submit a draft
	without a plain text format".</t>

	<t>Unless otherwise noted, requirements listed in later stages may be
	covered in earlier stages, but do not have to be.  If the implementers decide
	to add some functionality from a future stage, they has to be very careful
	to satisfy all requirements related to that functionality.  Unfortunately,
	there is no reliable, pragmatic way to identify "all requirements" related
	to a given feature.</t>

	<t><list style="hanging">

		<t hangText="(a) Trial Stage:">Initial basic implementation to test
		major concepts and relieve the Secretariat from handling the most
		common submission case.  This stage focuses on plain text draft
		submission via the web interface.  The trial stage should take a
		dedicated professional about 45 calendar days to finish (i.e., to
		comply with all the listed requirements).</t>

		<t hangText="(b) Production Stage:">Support for all major features.
		Once this stage is completed, the Secretariat should only handle
		unusual draft submissions.  This stage should take about 100 calendar
		days to finish.  Gradual release of implemented features is possible
		and expected.</t>

		<t hangText="(c) Enhancement Stage:">A never-ending stage focusing on
		sophisticated features (e.g., draft interpretation or validation) that
		improve the overall quality of the Toolset.  This stage is documented
		primarily to highlight the overall direction of the Toolset; its
		requirements are often imprecise and many are expected to change.</t>

	</list></t>

	<t>Implementation experience is likely to result in changes of the Toolset
	requirements.  Such changes should be documented as a part of stage
	evaluation activities.</t>

</section>

<section anchor="section-testing" title="Testing">
	
	<t>Before letting the Toolset go live, thousands of posted drafts can be
	used to test the meta-data extraction algorithms.  Such testing can
	minimize the number of drafts being sent on for manual handling because of
	meta-data extraction failure.</t>

	<t>Other Toolset features may also be testable using posted drafts.  A
	simple pair of scripts can be used to test basic functionality of the web and
	email interfaces.</t>

	<t>Hint: The IESG may require test results before accepting the initial
	implementation.  If automated, the above approach can be used for
	regression testing as well.</t>

</section>

<section anchor="section-security" title="Security Considerations">

	<t>Removing humans from the draft submission and posting process (a.k.a. 
	automation) requires adding features to make the Toolset reliable in the
	presence of denial of service (DoS) attacks and attempts to corrupt the draft
	repository.  Ideally, the Toolset needs to resist both premeditated
	malicious actions and good-intent accidents.</t>

	<t>This document contains specific requirements to minimize the impact of DoS
	attacks (e.g., R97). The requirements are designed with the assumption
	that it is acceptable for the Toolset to block valid submissions during a
	DoS attack as long as the Toolset maintainers are notified and already posted
	drafts are not damaged.</t>

	<t>This document also contains many specific requirements related to
	detection of drafts violating IETF posting rules.  Those requirements help
	reduce the number of "bad" drafts posted by mistake but do not offer
	reliable protection from submitters with malicious intent:  Since
	automated tools do not truly understand drafts (and will not do so in the
	foreseeable future), it is technically possible to post a rogue draft
	violating IETF posting rules.  For example, a draft may contain abstract
	text that makes the IETF-approved IPR statements following the abstract
	meaningless or legally non-binding.</t>

	<t>Stronger submitter authentication may be required to deter malicious
	submitters.  The documented authentication mechanism (i.e., read access to
	one's email) is deemed appropriate for deployment of the first versions of the
	Toolset, under close Secretariat supervision.  Hint: to increase chances of
	detecting problems early enough, it may be a good idea to automatically
	inform a designated human of every posted submission (during initial
	deployment of the Toolset).</t>

</section>

<section anchor="section-iana" title="IANA Considerations">

	<t>None.</t>

</section>

<section anchor="section-compliance" title="Compliance">

	<t>A Toolset implementation is compliant with this specification if it
	satisfies all normative requirements (i.e., the phrases marked with "Rnnn"
	as defined in <xref target="section-terms" />). Compliance should be
	evaluated for each implementation stage as some requirements do not apply
	to some stages.</t>

	<t>The IESG evaluates implementations and interprets requirements as
	necessary.</t>

</section>

<appendix anchor="section-diff" title="Comparison with current procedures">

	<t>This section summarizes major differences between the draft submission
	approach currently in use by IETF and the proposed Toolset, including
	violations of the current IETF rules.</t>

	<t><list style="symbols">
	
		<t>The Toolset allows posting of XML and PDF draft formats.  The XML
		format is not currently accepted by the Secretariat, and legality of
		PDF acceptance by the Secretariat has been questioned.  XML sources
		should be accepted to enable IETF tools and participants to have
		access to raw draft meta-data and content.  They are also useful to the
		RFC Editor and, hence, it is a good idea to validate and get them
		"into the system" early.  The latter argument applies to PDF drafts as
		well, although the first Toolset versions are not expected to
		interpret PDF drafts.</t>

		<t>The Toolset may eventually generate HTML draft formats from XML
		draft sources (see R112).  Currently, IETF does not provide HTML draft
		formats -- the Secretariat does not accept HTML sources and no HTML is
		generated from accepted draft sources.  Note, however, that this
		document does not suggest that the Toolset should eventually accept
		drafts in HTML format.</t>

		<t>The Toolset defines "WGN draft" as a draft which name starts with
		"draft-ietf-". All other drafts are treated as individual drafts.
		Currently, an IETF WG does not have to follow a single WG draft naming
		format.  Thus, the 00 version of a draft that the WG considers a WG
		draft can be posted by the Toolset without WG consent.  Affected WGs
		would have to deal with the consequences of their decision not to use
		a common naming format.  The Tools team suggests that IETF requires
		WGs to name their drafts using a single format to minimize confusion.
		Hopefully, there are no humans named "Ietf" or, at least, none of them
		wants to auto-post individual drafts.</t>

		<t>For some drafts, the Toolset verifies that the submitter is
		"expected" (e.g., an author of the previous draft version or WG
		Chair).  Currently, the Secretariat does virtually no such
		verification, but an email submission interface and a human presence
		in the submission loop have apparently been sufficient to prevent
		massive automated attacks.  The change is needed to prevent a simple
		script from using the web interface to overwrite posted IETF drafts
		with junk.  Hopefully, the IETF will eventually have a decent
		authentication scheme making the submitter checks simpler, less rigid,
		and more transparent.</t>

		<t>The Toolset will automatically notify authors of posted drafts.
		Currently, neither the submitter nor any of the co-authors are
		explicitly notified when the draft is posted.  Notification is meant,
		in part, to allow co-authors to detect cases where their name is put on
		the authors list without permission.  Eventually, there will be a
		general IETF mechanism to allow 3rd parties such as ADs, chairs, or
		reviewers to register for notifications about draft postings.</t>

		<t>The Toolset may eventually accept compressed drafts (see R150).
		Currently, the Secretariat does not accept "zip" archives due to virus
		contamination concerns.  A proper implementation of the Toolset must
		address such concerns, while the Secretariat may still need to reject
		certain formats if they are submitted via the manual route.</t>

	</list></t>

</appendix>

<appendix anchor="section-acks" title="Acknowledgments">

	<t>The author gratefully acknowledges the contributions of Harald Tveit
	Alvestrand (Cisco), Brian E. Carpenter (IBM), Frank Ellermann, Bill Fenner
	(AT&amp;T), Barbara B.  Fuller (Foretec), Bruce Lilly, Henrik Levkowetz (Ericsson),
	Larry Masinter (Adobe), Keith Moore (University of Tennessee), Pekka
	Savola (Netcore), Henning Schulzrinne (Columbia University), and Stanislav
	Shalunov (Internet2).</t>

	<t>Special thanks to Marshall Rose for his xml2rfc tool.</t>

</appendix>

<appendix anchor="section-change-log" title="Change log">

	<t>RFC Editor Note: This section is to be removed during the final
	publication of the document.</t>

	<t>Internal WG revision control ID: $Id: id.xml,v 1.37 2005/04/05 20:54:09 rousskov Exp $</t>

	<t><list style="hanging">

	<t hangText="version 08"><list style="symbols">

		<t>Clarified that the secretariat does not intend to correct
		drafts submitted for manual posting.  If the draft needs
		tweaking to match submitter's intent, then the draft should be
		corrected and re-submitted.</t>

		<t>Renamed "lawful submitter" to "expected submitter" to avoid an
		incorrect implication that some kind of new legal checks are involved.
		Without an email interface and the Secretariat in the loop, the
		submitter must still be "expected" and authenticated to avoid script
		kiddies from overwriting posted IETF drafts with junk.</t>

		<t>Clarified that R68 and other multi-stage requirements with
		multi-stage features are to be interpreted by ignoring features that
		will be implemented at a later stage.  For example, "text or XML" means
		just "text" until XML support is added.</t>

		<t>Meta-data extraction: Explicitly explained why meta-data extraction
		from all draft formats is necessary.</t>

		<t>Meta-data extraction: be even more explicit that the validation
		procedure described in the following section may declare an extracted
		date invalid after taking into consideration current (i.e.,
		submission) time, IETF draft expiration rules, and other factors
		external to the draft.  The validation section already has the
		necessary formal rules.</t>

		<t>Added R152 to require public availability of sources instead of
		just hinting at it (Henrik Levkowetz). Explained that to meaningfully
		satisfy availability requirements, the Toolset cannot rely on
		unavailable software.</t>

		<t>Validation: added R153-R156 to require XML format and RFC 2629+ DTD
		validation.  During the first two implementation stages validation
		failures result in warnings (not fatal submission errors) to give
		IETFers (and IETF tools) enough time to get accustomed to the
		necessity of obeying XML standards.  This addition documents Tools team
		consensus reached in December 2004. It should have been documented
		earlier.</t>

		<t>Polished SourceForge "hosting" hint to clarify that we are
		suggesting to place Toolset sources there and not suggesting that the
		Toolset runs from SF servers.</t>

		<t>Added Testing section with a hint: use existing drafts (Brian E.
		Carpenter)</t>

		<t>Terminology: replaced "WG draft" with "WG-named draft" or "WGN
		draft" because not all WG-named drafts are WG drafts and we do not
		want to deal with the difference or to answer questions about the
		"wrong" terminology.</t>

		<t>Overall operation: explicitly stated that the Toolset has to be
		compatible with the Secretariat's tools for handling drafts with a
		hint that such compatibility can be achieved by appropriately
		implementing the Toolset or, in some cases, by modifying existing
		tools.</t>

		<t>Scope: Addressed concern that "there should also be provision for those
		who prefer to use troff/nroff" by explicitly stating that the set of
		requirements in this document is not comprehensive and other documents
		may add more requirements, including those related to other source
		formats.  The Tools team in not interested in adding troff/nroff
		support to the Toolset, especially in this document.</t>

		<t>Applied Last Call comments by Frank Ellermann.</t>

		<t>Added a hint: The Toolset implementers should not assume that draft
		formats generated by the same tool from the same source format have
		essentially the same content (Keith Moore).</t>

		<t>Updated Acknowledgments section.</t>

		<t>Did numerous minor language corrections.</t>

	</list></t>

	<t hangText="version 07"><list style="symbols">

		<t>Added R146, a requirement to generate a warning (and, eventually, a
		complete diff) when the produced plain text does not match the
		submitted one (even if meta-data matches).</t>

		<t>Added a stage-c suggestion R148 to add a smart fuzzy match function
		to compare submitted and generated-from-XML texts.  Hinted at using
		multiple xml2rfc versions to avoid warnings based on minor xml2rfc
		differences alone.</t>

		<t>Added R150 to eventually support submission of compressed drafts
		(via both web and email interfaces). Noted that the Secretariat
		currently does not accept "zip" archives.</t>

		<t>Be explicit that CGI is not somehow mandated for server-side
		implementations.  The implementor will pick the right technology given
		all the factors, including her experience and available tools (Henning
		Schulzrinne).</t>

		<t>Added "opaqueness" to the list of web interface advantages,
		inspired by the number of folks complaining about their drafts being
		mutated by the mail system while in-transit to the draft archive.</t>

	</list></t>

	<t hangText="version 06"><list style="symbols">

		<t>Instead of using a special section to map requirements to Toolset
		implementation stages, encode the stage with each requirement.  The
		reader now knows requirement "urgency" when reading the requirement
		itself, instead of having to search for the requirement code in the
		"Implementation stages" section.  Also, this makes it much easier to
		make sure that all requirements are "staged".</t>

		<t>Reflected Tools team concerns about HTML generation by placing that
		feature in the Enhancement implementation stage and explicitly
		mentioning that the feature may be gone before its implemented.</t>

		<t>Added R143/a to avoid mismatching formats: Drafts containing PDF or
		Postscript format must not be auto-posted until the Toolset can
		validate that their content matches plain text format.
		Documented rationale and future direction for format acceptance
		rules.</t>

		<t>Defined "WG draft" as a draft which name starts with "draft-ietf-".
		All other drafts are treated as individual drafts.</t>

		<t>Support (eventually) fetching draft data using an email-embedded
		URL (Stanislav Shalunov).</t>

		<t>Re-Resolved XXX37: support submitting drafts in main email "body",
		not just attachments (Stanislav Shalunov).</t>

		<t>Renamed draft submission date into draft version creation date and
		documented how creation and expiration dates are validated and the
		fact that they do not depend on submission time.</t>

		<t>Required implementation to be open-source (see R144/a).</t>

	</list></t>

	<t hangText="version 05"><list style="symbols">

		<t>Changed draft status to solicit editorial comments and indicate
		close-to-be-last-called state.</t>

		<t>Wrote "Security Considerations" section.</t>

		<t>Refer to ID-NITS document as an list of nits the Toolset should
		check for in R116. Hinted that Henrik's idnits tool can be used for
		actual checks.  More checking tools can be added eventually.</t>

		<t>Added more submission cancellation details.  Covered both explicit
		(via submitter action) and implicit (via timeout) cancellations
		(Stanislav Shalunov).</t>

		<t>Adjusted "Global" DoS threshold from 500 to 300 and added a "WG" DoS
		threshold of 30 draft versions per day (inspired by Stanislav
		Shalunov).</t>

		<t>Illustrated what emails may be exchanged when email interface is in
		use (Stanislav Shalunov).</t>

		<t>Replaced Validation page with validate-only flag on the Upload
		page.  This helps avoid multiple well-known locations for similar tools
		and might simplify the implementation.</t>

		<t>Resolved XXX12: Simply refer to the ID-NITS document for now.</t>

		<t>Resolved XXX13, XXX14: Placed "lawful submitter" check into the
		"External meta-data" section.  Documented what submitters the Toolset
		has to identify as lawful submitters (R119 - R122). Others would
		require manual checks by the Secretariat.</t>

		<t>Resolved XXX58: Documented what the Toolset must do if no approval
		exists at the time of the WG draft submission (R123, R124).</t>

		<t>Removed XXX64: PDF drafts are currently allowed to be posted; why
		they are allowed is not really important.</t>

		<t>Resolved XXX66: XML draft sources are currently not allowed to be
		posted.</t>

		<t>Resolved XXX68: use draft "version" instead of "revision".
		Guidelines to Authors of Internet-Drafts document uses both.  RFC 2026
		uses "version", which is also a more popular and arguably more precise
		term.</t>

	</list></t>

	<t hangText="version 04"><list style="symbols">

		<t>In Check action, documented once, early, and explicitly that
		errors make auto-posting impossible but should let the submitter to
		post manually.  Removed references to vague "action fails" statements
		(Henrik Levkowetz).</t>
		
		<t>HTTP error codes should not be used to indicate Check action errors
		because doing so would be a layering violation and, in some cases, may
		complicate both automated and manual interpretation of the Toolset
		responses.  Rewrote R7 to require use of computer-friendly tags in
		response body instead of HTTP status codes.</t>
		
		<t>Split "Preprocessing" subsection into "Preprocessing" and
		"Processing".  The former deals with XML include PIs while the latter
		talks about plain text and HTML generation (Henrik Levkowetz).</t>

		<t>Removed post-if-valid functionality (R78 - R80). Automation tools
		such as the ones that process e-mail-based submissions would benefit
		from having the knob, but they cannot use the Check action "as is",
		even with the knob, because there are other differences in the
		interface (e.g., submitter identification logic).  In other words,
		more knobs would be needed, which would defeat the purpose of reusing
		the same action.  When implementing web and e-mail interfaces, the
		Secretariat should still be able to reuse the base action code, of
		course.</t>

		<t>Defined compliance.</t>

		<t>Resolved XXX2: inform all authors that their draft was posted.
		Documented what information should go into the posting notification
		message/page.</t>

		<t>Resolved XXX16 and XXX57: R23 now says that an IETF IPR Statement
		and other boilerplate required for drafts according to RFC 3978 and
		3979 (or successors) must appear in the draft text (Henrik
		Levkowetz).</t>

		<t>Resolved XXX23 and XXX62: Manual Check page and actions used by
		secretariat do not verify submitter access to e-mail.  Last resort
		option should be as flexible and forgiving as possible.</t>

		<t>Resolved XXX26: it should be possible to respond to
		do-you-have-access-to-your-email message by e-mail, in addition
		to cut-and-pasting a URL.</t>

		<t>Resolved XXX30 and XXX31: R98 now requires that when submitter is
		not an author, Secretariat has to be involved.</t>

		<t>Resolved XXX37: E-mail submissions must use attachments, even
		if there is only one draft format.  This may help to keep the
		Toolset simple (no smarts needed to isolate true draft text from
		notes in the beginning of the e-mail and signatures).</t>

		<t>Resolved XXX38: do not require special Subject: lines for e-mail
		submission to keep the Toolset simple.  Since we verify submitter
		access to e-mail, no automated spam is likely to result in a draft
		submission.</t>

		<t>Resolved XXX43, XXX44, and XXX60: making an existing draft obsolete
		is out of this document scope.  This complex feature can be documented
		and integrated later to satisfy R33.</t>

		<t>Resolved XXX49 and XXX52: the first two implementation stages
		should take 30 and 90 days, provided a single full-time person
		effort.</t>

		<t>Resolved XXX50: specify approximate effort required to complete the
		first two implementation stages.  Let the IESG and the Secretariat use
		our estimates to agree on a specific implementation
		schedule/deadlines.</t>

		<t>Resolved XXX53: lack of author e-mail causes a warning,
		not error.  See R95 for rationale.</t>

		<t>Resolved XXX11: added page count and size of primary draft format
		to meta-data because this information is useful to some humans and
		tools, and because it is usually much easier and cheaper to get this
		information in static form (e.g., some draft meta-data XML file) than
		compute it dynamically.</t>

		<t>Resolved XXX15: always allow posting of a new revision but warn if
		new revision is not expected.  Moved the corresponding R21 from
		absolute to desired requirements.</t>

		<t>Resolved XXX33 and XXX59: prevent DoS attacks (absolute requirement
		R97) and warn about too-close submissions (desired feature R96).</t>

		<t>Defined draft version, format and primary format terms.</t>

	</list></t>

	<t hangText="2004/10/05"><list style="symbols">

		<t>Resolved XXX9: The Toolset should eventually offer a
		Validation-only page.</t>

		<t>Resolved XXX19: The Toolset should eventually provide the
		submitter with a way to preview the entire draft, with all
		formats.</t>

		<t>Resolved XXX40, XXX41, and XXX56: first use draft name to extract
		WG flag and WG name and hope for an IETF policy change.  If IETF policy
		on naming drafts does not change soon, add code to query some
		databases to map individual-looking drafts to WG names.</t>

		<t>Resolved XXX46 and XXX47: store and make public both original and
		preprocessed XML sources.  Most tools are likely to use preprocessed
		XML format.  Humans and some diff tools may prefer the original.</t>
		
	</list></t>

	<t hangText="2004/09/30"><list style="symbols">

		<t>Added requirements R72 and R73 to handle multiple submitters
		submitting the same draft and a single submitter submitting two drafts
		at the same time, addressing XXX27.</t>

		<t>Resolved XXX7: There seems to be no good reason to support
		cut-and-paste mode.  Submission via file upload interface should
		suffice.</t>

		<t>Semi-resolved XXX53: Toolset should accept PDFs because RFC Editor
		does.  Still need to check whether the Secretariat accepts PDFs legally
		today (XXX64).</t>

	</list></t>

	<t hangText="2004/09/29"><list style="symbols">

		<t>Clarified and polished the "Scope" section.</t>

		<t>Updated "State of this draft" to document approaching-last-call
		state of the draft and to solicit editorial-level feedback.</t>

	</list></t>

	<t hangText="2004/09/27"><list style="symbols">

		<t>Marked formal toolset requirements using a Rnnn notation to (a)
		document implementation schedule, and (b) make compliant
		implementation and compliance evaluation easier.</t>

		<t>Marked informal implementation hints with a "Hint:" tag, to avoid
		possible confusion with formal requirements.</t>

		<t>Started documenting implementation schedule.  For example, only
		plain text formats are interpreted during the first stage, then XML
		support is added, then other formats.  Meanwhile, un-interpreted
		formats are accepted and posted as is as long as plain text version
		validates.</t>

		<t>Added explicit requirements for managing abandoned submissions
		(Brian E. Carpenter)</t>

		<t>Plain text or XML formats are always required (Brian E. Carpenter)</t>

		<t>Added XXX55: Accepting PDFs is a change of current documented
		procedures? (Brian E. Carpenter)</t>

		<t>Added an optional "discussion address" to the external meta-data to
		help reviewers know where to send comments (inspired by Brian E.
		Carpenter suggestion; Brian wanted this to be a required extractable
		meta-data)</t>

		<t>Resolved XXX17, XXX28, and XXX29: Today, -00 WG drafts are approved
		by the Chair either before and after submission, depending on several
		factors.  Based on WG chairs feedback we still need to support both
		modes.  Thus, there is no policy change to talk about (and more work
		for the tool implementors to support both modes). Still need to add
		specific toolset requirements in case there is no approval
		recorded.</t>

		<t>Resolved XXX18, XXX32, and XXX45: We are going to move "request for
		publication" functionality to a separate [simple] tool that works with
		an existing/posted draft.</t>

		<t>Resolved XXX6: We are going to move the "withdraw this ID"
		functionality desired by Secretariat to a separate [simple] tool that
		works with an existing/posted draft.</t>

		<t>Added a "comment" field to the Adjust page so that the submitter can
		tell Secretariat why manual action is necessary.  This may both save
		time Secretariat and let them improve the toolset to minimize manual
		submissions (including fixing validation/extraction bugs).</t>

		<t>Added the Receipt page to the list of documented pages, for
		completeness.</t>

		<t>Emphasized that common sequence of pages to go through is as short
		as possible for a given set of features, and that "page" means
		"distinct dialog", not necessarily a "distinct URL". Some reviewers
		thought "there are too many pages".</t>

	</list></t>

	<t hangText="2004/09/20"><list style="symbols">

		<t>Added "E-mail Interface" section to document how key toolset
		functionality can be accessed via e-mail.  Compared e-mail and web
		interfaces. (Suggested by Pekka Savola)</t>

		<t>Split "WG ID" meta-data into "WG ID" and "WG Flag".  The former
		seems to be easy to extract from the draft name.  Noted that the latter
		(i.e., "this is a working group draft" status) cannot be inferred from
		some WG drafts (Pekka Savola).</t>

		<t>Added "List of drafts obsoleted by this draft" external meta-data
		item (Pekka Savola), but questioned whether we are ready to automate
		that.</t>

		<t>Added more conflicting opinions to XXX15 and proposed a
		solution.</t>

		<t>Added "Preprocessing" subsection to reflect the discussion on
		how/whether handle include PIs in XML draft sources.  Needs more
		discussion/work.</t>

		<t>Further clarified how an author can request the draft revision to
		be published (i.e., forwarded to the IESG or RFC Editor for review and
		publication as an RFC or BCP). It's just a checkbox on the web
		interface.  Raised doubts we can pull this off (see XXX45).</t>

		<t>Suggested in XXX2 that we would inform all authors but not seek
		their consent (except for the submitter) when posting their draft.</t>

	</list></t>

	<t hangText="2004/09/09"><list style="symbols">

		<t>Polished high-level page/action summary and replaced text-based
		steps diagram with something that looks more like a diagram.</t>

		<t>Added "Comparison with current procedures" section placeholder for
		summarizing what this draft improves/changes/violates.</t>

		<t>Frequent draft updates is not always a good thing (Henrik
		Levkowetz)</t>

		<t>Added ideas regarding frequent draft updates warnings (Stanislav
		Shalunov)</t>

		<t>Added "State of this draft" section to encourage review.</t>

	</list></t>

	<t hangText="2004/09/02"><list style="symbols">

		<t>Documented all major toolset pages and corresponding actions.</t>

	</list></t>

	<t hangText="2004/09/01"><list style="symbols">

		<t>Deleted all primary modes except for what used to be called
		"Posting Automation".  Focus on the latter and mention other
		modes as exceptions or side-effects.</t>

		<t>Changed draft outline and depth to describe specific submission
		steps and corresponding web pages rather than more general
		ideas/requirements.</t>

		<t>Assume, for now, that Chair authorization of WG draft work must
		exist for WG draft to be published.  This needs to be documented and
		perhaps relaxed to allow post-submission approvals.</t>

	</list></t>

	<t hangText="2004/08/30"><list style="symbols">

		<t>Use "toolset" instead of a less accurate "interfaces" in the draft
		title and throughout the text (Henrik Levkowetz)</t>

		<t>Use "post" instead of "publish"" in the draft title and throughout
		the text (Barbara B. Fuller and Larry Masinter)</t>

		<t>Nits, clarifications, data-points (Harald Tveit Alvestrand, Henrik
		Levkowetz, Larry Masinter, and Barbara B. Fuller for the
		Secretariat)</t>

	</list></t>

	<t hangText="2004/08/25"><list style="symbols">

		<t>Initial revision.</t>

	</list></t>

	</list></t>

</appendix>

</middle>

<back>

<references title='Normative References'>

	<?rfc include='reference.RFC.2629.xml' ?>
	<?rfc include='reference.RFC.3978.xml' ?>
	<?rfc include='reference.RFC.3979.xml' ?>

	<reference anchor="XML" target="http://www.w3.org/TR/1998/REC-xml-19980210">
		<front>
			<title>Extensible Markup Language (XML) 1.0</title>
			<author>
				<organization abbrev="W3C">World Wide Web Consortium</organization>
				<address>
					<postal>
						<street>MIT Laboratory for Computer Science</street>
						<street>545 Technology Square</street>
						<city>Cambridge</city> <region>MA</region> <code>02139</code>
						<country>US</country>
					</postal>
					<phone>+ 1 617 253 2613</phone>
					<facsimile>+ 1 617 258 5999</facsimile>
					<email>timbl@w3.org</email>
					<uri>http://www.w3c.org</uri>
				</address>
			</author>
			<date month="February" year="1998" />
		</front>
		<seriesInfo name="W3C" value="XML" />
	</reference>

</references>

<references title='Informative References'>

	<?rfc include='reference.I-D.mrose-writing-rfcs.xml' ?>

	<reference anchor='secretariat'>

		<front>
			<title>Private communication with the IETF Secretariat</title>
			<author fullname='IETF Secretariat'>
		    	<organization />
			</author>
			<date year='2004' />
		</front>

	</reference>

	<reference anchor='OSI'>

		<front>
			<title>Open Source Licenses Approved by the Open Source Initiative</title>
			<author fullname='Open Source Initiative'>
		    	<organization />
			</author>
			<date year='2004' />
		</front>

		<format type='HTML'
			target='http://http://www.opensource.org/licenses/index.php' />

	</reference>

</references>

</back>

</rfc>

<!-- Guidelines to Authors of Internet-Drafts 
     http://www.ietf.org/ietf/1id-guidelines.txt -->

--------------050703050808030903070802
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

_______________________________________________
Tools-team mailing list
Tools-team@ietf.org
https://www1.ietf.org/mailman/listinfo/tools-team

--------------050703050808030903070802--




From tools-team-bounces@ietf.org Mon Apr 18 19:20:51 2005
Received: from localhost.localdomain ([127.0.0.1] helo=megatron.ietf.org)
	by megatron.ietf.org with esmtp (Exim 4.32)
	id 1DNfXv-0001WE-Fo; Mon, 18 Apr 2005 19:20:51 -0400
Received: from odin.ietf.org ([132.151.1.176] helo=ietf.org)
	by megatron.ietf.org with esmtp (Exim 4.32) id 1DNfXt-0001VY-Gj
	for tools-team@megatron.ietf.org; Mon, 18 Apr 2005 19:20:49 -0400
Received: from ietf-mx.ietf.org (ietf-mx.ietf.org [132.151.6.1])
	by ietf.org (8.9.1a/8.9.1a) with ESMTP id TAA23309
	for <tools-team@ietf.org>; Mon, 18 Apr 2005 19:20:46 -0400 (EDT)
Received: from pne-smtpout1-sn2.hy.skanova.net ([81.228.8.83])
	by ietf-mx.ietf.org with esmtp (Exim 4.33) id 1DNfin-0000p1-Kc
	for tools-team@ietf.org; Mon, 18 Apr 2005 19:32:05 -0400
Received: from shiraz.levkowetz.com (213.64.173.70) by
	pne-smtpout1-sn2.hy.skanova.net (7.1.026.7)
	id 41E3216700D5FBA1; Tue, 19 Apr 2005 01:20:34 +0200
Received: from localhost ([127.0.0.1])
	by shiraz.levkowetz.com with esmtp (Exim 4.50)
	id 1DNfXe-0001UL-9J; Tue, 19 Apr 2005 01:20:34 +0200
Message-ID: <426440C1.3040900@levkowetz.com>
Date: Tue, 19 Apr 2005 01:20:33 +0200
From: Henrik Levkowetz <henrik@levkowetz.com>
User-Agent: Mozilla Thunderbird 1.0 (Macintosh/20041206)
X-Accept-Language: en-us, en
MIME-Version: 1.0
To: Alex Rousskov <rousskov@measurement-factory.com>
References: <426411C7.6020901@levkowetz.com>
	<opspf9nhwqiz3etf0c9082f7@pail.measurement-factory.com>
In-Reply-To: <opspf9nhwqiz3etf0c9082f7@pail.measurement-factory.com>
X-Enigmail-Version: 0.89.5.0
X-Enigmail-Supports: pgp-inline, pgp-mime
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 7bit
X-SA-Exim-Connect-IP: 127.0.0.1
X-SA-Exim-Mail-From: henrik@levkowetz.com
X-SA-Exim-Scanned: No (on shiraz.levkowetz.com);
	SAEximRunCond expanded to false
X-Spam-Score: 0.0 (/)
X-Scan-Signature: a7d6aff76b15f3f56fcb94490e1052e4
Content-Transfer-Encoding: 7bit
Cc: IETF TOOLS <tools-team@ietf.org>
Subject: [Tools-team] Re: Language review of
 draft-ietf-tools-draft-submission-08; Section 8.4, WG Flag
X-BeenThere: tools-team@ietf.org
X-Mailman-Version: 2.1.5
Precedence: list
List-Id: "The purpose of the TOOLS team is to provide IETF feedback and
	guidance during the development of software tools to support
	various parts of IETF activities." <tools-team.ietf.org>
List-Unsubscribe: <https://www1.ietf.org/mailman/listinfo/tools-team>,
	<mailto:tools-team-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www1.ietf.org/pipermail/tools-team>
List-Post: <mailto:tools-team@ietf.org>
List-Help: <mailto:tools-team-request@ietf.org?subject=help>
List-Subscribe: <https://www1.ietf.org/mailman/listinfo/tools-team>,
	<mailto:tools-team-request@ietf.org?subject=subscribe>
Sender: tools-team-bounces@ietf.org
Errors-To: tools-team-bounces@ietf.org

Hi Alex,

On 2005-04-19 12:48 am Alex Rousskov said the following:
> On Mon, 2005/04/18 (MDT), <henrik@levkowetz.com> wrote:
> 
>> Hi again, Alex,
>>
>> In response to the recent comments on the draft, as a clarification,
>> I'd suggest replacing this text in section 8.4:
>>
>> OLD:
>>
>>    WG flag: True for WGN drafts and false for all other drafts.  For
>>       example, "true" for "draft-ietf-sieve-vacation-13".
>>
>> with
>> NEW:
>>
>>    WG flag: True for WGN drafts and false for all other drafts.  For
>>       example, "true" for "draft-ietf-sieve-vacation-13".  This flag
>>       only influences the further handling of initial ( -00 version )
>>       draft submissions.
> 
> It would be better if the added sentence explicitly limited its scope to
> "this document" or somesuch. It is possible that WG flag will influence
> more than just 00 submissions, eventually. While we may need a better
> scheme to set the flag or extract WG ID, the notions of a "WG flag" and
> "WG ID" are sound, IMO.
> 
> Said that, I would not object to your wording even it is added "as is".

Ok, so what about:

NEW:

    WG flag: True for WGN drafts and false for all other drafts.  For
       example, "true" for "draft-ietf-sieve-vacation-13".  This flag
       only influences the further handling of initial ( -00 version )
       draft submissions, as far as the current document is concerned.


Henrik

_______________________________________________
Tools-team mailing list
Tools-team@ietf.org
https://www1.ietf.org/mailman/listinfo/tools-team



From tools-team-bounces@ietf.org Tue Apr 19 00:33:18 2005
Received: from localhost.localdomain ([127.0.0.1] helo=megatron.ietf.org)
	by megatron.ietf.org with esmtp (Exim 4.32)
	id 1DNkQI-0000o3-QF; Tue, 19 Apr 2005 00:33:18 -0400
Received: from odin.ietf.org ([132.151.1.176] helo=ietf.org)
	by megatron.ietf.org with esmtp (Exim 4.32) id 1DNkQG-0000ny-UO
	for tools-team@megatron.ietf.org; Tue, 19 Apr 2005 00:33:17 -0400
Received: from ietf-mx.ietf.org (ietf-mx.ietf.org [132.151.6.1])
	by ietf.org (8.9.1a/8.9.1a) with ESMTP id AAA11900
	for <tools-team@ietf.org>; Tue, 19 Apr 2005 00:33:14 -0400 (EDT)
Received: from measurement-factory.com ([206.168.0.5])
	by ietf-mx.ietf.org with esmtp (Exim 4.33) id 1DNkbC-00032v-MW
	for tools-team@ietf.org; Tue, 19 Apr 2005 00:44:36 -0400
Received: from localhost.rousskov.org (localhost [127.0.0.1])
	by measurement-factory.com (8.12.9/8.12.9) with ESMTP id j3J4XC3a088202;
	Mon, 18 Apr 2005 22:33:13 -0600 (MDT)
	(envelope-from rousskov@measurement-factory.com)
To: "Henrik Levkowetz" <henrik@levkowetz.com>
References: <426411C7.6020901@levkowetz.com>
	<opspf9nhwqiz3etf0c9082f7@pail.measurement-factory.com>
	<426440C1.3040900@levkowetz.com>
Message-ID: <opspgpjvf0iz3etf0c9082f7@localhost.rousskov.org>
Date: Mon, 18 Apr 2005 22:32:09 -0600
From: "Alex Rousskov" <rousskov@measurement-factory.com>
Organization: The Measurement Factory
Content-Type: text/plain; format=flowed; delsp=yes; charset=us-ascii
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
In-Reply-To: <426440C1.3040900@levkowetz.com>
User-Agent: Opera M2/7.54 (FreeBSD, build 955)
X-Spam-Score: 0.0 (/)
X-Scan-Signature: 856eb5f76e7a34990d1d457d8e8e5b7f
Content-Transfer-Encoding: 8bit
Cc: IETF TOOLS <tools-team@ietf.org>
Subject: [Tools-team] Re: Language review of
	draft-ietf-tools-draft-submission-08; Section 8.4, WG Flag
X-BeenThere: tools-team@ietf.org
X-Mailman-Version: 2.1.5
Precedence: list
List-Id: "The purpose of the TOOLS team is to provide IETF feedback and
	guidance during the development of software tools to support
	various parts of IETF activities." <tools-team.ietf.org>
List-Unsubscribe: <https://www1.ietf.org/mailman/listinfo/tools-team>,
	<mailto:tools-team-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www1.ietf.org/pipermail/tools-team>
List-Post: <mailto:tools-team@ietf.org>
List-Help: <mailto:tools-team-request@ietf.org?subject=help>
List-Subscribe: <https://www1.ietf.org/mailman/listinfo/tools-team>,
	<mailto:tools-team-request@ietf.org?subject=subscribe>
Sender: tools-team-bounces@ietf.org
Errors-To: tools-team-bounces@ietf.org

On Mon, 2005/04/18 (MDT), <henrik@levkowetz.com> wrote:

> NEW:
>
>     WG flag: True for WGN drafts and false for all other drafts.  For
>        example, "true" for "draft-ietf-sieve-vacation-13".  This flag
>        only influences the further handling of initial ( -00 version )
>        draft submissions, as far as the current document is concerned.

Sounds good to me.

I hope to submit the updated draft with your changes within 24 hours.

Thank you,

Alex.



_______________________________________________
Tools-team mailing list
Tools-team@ietf.org
https://www1.ietf.org/mailman/listinfo/tools-team



From tools-team-bounces@ietf.org Tue Apr 19 03:41:35 2005
Received: from localhost.localdomain ([127.0.0.1] helo=megatron.ietf.org)
	by megatron.ietf.org with esmtp (Exim 4.32)
	id 1DNnMV-0001Hv-2g; Tue, 19 Apr 2005 03:41:35 -0400
Received: from odin.ietf.org ([132.151.1.176] helo=ietf.org)
	by megatron.ietf.org with esmtp (Exim 4.32) id 1DNnMT-0001Hg-2Z
	for tools-team@megatron.ietf.org; Tue, 19 Apr 2005 03:41:33 -0400
Received: from ietf-mx.ietf.org (ietf-mx.ietf.org [132.151.6.1])
	by ietf.org (8.9.1a/8.9.1a) with ESMTP id DAA14435
	for <tools-team@ietf.org>; Tue, 19 Apr 2005 03:41:30 -0400 (EDT)
Received: from pne-smtpout2-sn2.hy.skanova.net ([81.228.8.164])
	by ietf-mx.ietf.org with esmtp (Exim 4.33) id 1DNnXP-0001ZD-BQ
	for tools-team@ietf.org; Tue, 19 Apr 2005 03:52:53 -0400
Received: from shiraz.levkowetz.com (213.64.173.70) by
	pne-smtpout2-sn2.hy.skanova.net (7.1.026.7)
	id 41E3223E00CF9A5B; Tue, 19 Apr 2005 09:41:10 +0200
Received: from localhost ([127.0.0.1])
	by shiraz.levkowetz.com with esmtp (Exim 4.50)
	id 1DNnM6-0001nd-EC; Tue, 19 Apr 2005 09:41:10 +0200
Message-ID: <4264B615.1060903@levkowetz.com>
Date: Tue, 19 Apr 2005 09:41:09 +0200
From: Henrik Levkowetz <henrik@levkowetz.com>
User-Agent: Mozilla Thunderbird 1.0 (Macintosh/20041206)
X-Accept-Language: en-us, en
MIME-Version: 1.0
To: Alex Rousskov <rousskov@measurement-factory.com>
References: <426411C7.6020901@levkowetz.com>
	<opspf9nhwqiz3etf0c9082f7@pail.measurement-factory.com>
	<426440C1.3040900@levkowetz.com>
	<opspgpjvf0iz3etf0c9082f7@localhost.rousskov.org>
In-Reply-To: <opspgpjvf0iz3etf0c9082f7@localhost.rousskov.org>
X-Enigmail-Version: 0.89.5.0
X-Enigmail-Supports: pgp-inline, pgp-mime
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 7bit
X-SA-Exim-Connect-IP: 127.0.0.1
X-SA-Exim-Mail-From: henrik@levkowetz.com
X-SA-Exim-Scanned: No (on shiraz.levkowetz.com);
	SAEximRunCond expanded to false
X-Spam-Score: 0.0 (/)
X-Scan-Signature: 9182cfff02fae4f1b6e9349e01d62f32
Content-Transfer-Encoding: 7bit
Cc: IETF TOOLS <tools-team@ietf.org>
Subject: [Tools-team] Re: Language review of
 draft-ietf-tools-draft-submission-08; Section 8.4, WG Flag
X-BeenThere: tools-team@ietf.org
X-Mailman-Version: 2.1.5
Precedence: list
List-Id: "The purpose of the TOOLS team is to provide IETF feedback and
	guidance during the development of software tools to support
	various parts of IETF activities." <tools-team.ietf.org>
List-Unsubscribe: <https://www1.ietf.org/mailman/listinfo/tools-team>,
	<mailto:tools-team-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www1.ietf.org/pipermail/tools-team>
List-Post: <mailto:tools-team@ietf.org>
List-Help: <mailto:tools-team-request@ietf.org?subject=help>
List-Subscribe: <https://www1.ietf.org/mailman/listinfo/tools-team>,
	<mailto:tools-team-request@ietf.org?subject=subscribe>
Sender: tools-team-bounces@ietf.org
Errors-To: tools-team-bounces@ietf.org

Hi Alex,

On 2005-04-19 6:32 am Alex Rousskov said the following:
> On Mon, 2005/04/18 (MDT), <henrik@levkowetz.com> wrote:
> 
>> NEW:
>>
>>     WG flag: True for WGN drafts and false for all other drafts.  For
>>        example, "true" for "draft-ietf-sieve-vacation-13".  This flag
>>        only influences the further handling of initial ( -00 version )
>>        draft submissions, as far as the current document is concerned.
> 
> Sounds good to me.
> 
> I hope to submit the updated draft with your changes within 24 hours.

Sounds good.  I believe Brian want to bring it before the IESG at their
Thursday telechat, so the sooner the better.

The latest xml, txt and diff files from me are at

http://ietf.levkowetz.com/drafts/tools/draft-submission/


	Henrik

_______________________________________________
Tools-team mailing list
Tools-team@ietf.org
https://www1.ietf.org/mailman/listinfo/tools-team



From tools-team-bounces@ietf.org Wed Apr 20 00:32:38 2005
Received: from localhost.localdomain ([127.0.0.1] helo=megatron.ietf.org)
	by megatron.ietf.org with esmtp (Exim 4.32)
	id 1DO6tC-0002Tt-ON; Wed, 20 Apr 2005 00:32:38 -0400
Received: from odin.ietf.org ([132.151.1.176] helo=ietf.org)
	by megatron.ietf.org with esmtp (Exim 4.32)
	id 1DO6t8-0002Tj-Ly; Wed, 20 Apr 2005 00:32:35 -0400
Received: from ietf-mx.ietf.org (ietf-mx.ietf.org [132.151.6.1])
	by ietf.org (8.9.1a/8.9.1a) with ESMTP id AAA25281;
	Wed, 20 Apr 2005 00:32:30 -0400 (EDT)
Received: from measurement-factory.com ([206.168.0.5])
	by ietf-mx.ietf.org with esmtp (Exim 4.33)
	id 1DO74D-00040v-Ls; Wed, 20 Apr 2005 00:44:05 -0400
Received: from localhost.rousskov.org (localhost [127.0.0.1])
	by measurement-factory.com (8.12.9/8.12.9) with ESMTP id j3K4WK3a026870;
	Tue, 19 Apr 2005 22:32:21 -0600 (MDT)
	(envelope-from rousskov@measurement-factory.com)
Date: Tue, 19 Apr 2005 22:31:16 -0600
To: internet-drafts@ietf.org
References: <20041221224347.D44914@measurement-factory.com>
From: "Alex Rousskov" <rousskov@measurement-factory.com>
Organization: The Measurement Factory
Content-Type: multipart/mixed; boundary=----------L030Vg3Izy9SR0jM9cpWro
MIME-Version: 1.0
Message-ID: <opspij6e0viz3etf0c9082f7@localhost.rousskov.org>
In-Reply-To: <20041221224347.D44914@measurement-factory.com>
User-Agent: Opera M2/7.54 (FreeBSD, build 955)
X-Spam-Score: 0.0 (/)
X-Scan-Signature: 3afae6f363b515be78b58f4ca092a2d5
Cc: IETF Tools <tools-team@ietf.org>, Henrik Levkowetz <henrik@levkowetz.com>
Subject: [Tools-team] Request To Publish:
	draft-ietf-tools-draft-submission-08
X-BeenThere: tools-team@ietf.org
X-Mailman-Version: 2.1.5
Precedence: list
List-Id: "The purpose of the TOOLS team is to provide IETF feedback and
	guidance during the development of software tools to support
	various parts of IETF activities." <tools-team.ietf.org>
List-Unsubscribe: <https://www1.ietf.org/mailman/listinfo/tools-team>,
	<mailto:tools-team-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www1.ietf.org/pipermail/tools-team>
List-Post: <mailto:tools-team@ietf.org>
List-Help: <mailto:tools-team-request@ietf.org?subject=help>
List-Subscribe: <https://www1.ietf.org/mailman/listinfo/tools-team>,
	<mailto:tools-team-request@ietf.org?subject=subscribe>
Sender: tools-team-bounces@ietf.org
Errors-To: tools-team-bounces@ietf.org

------------L030Vg3Izy9SR0jM9cpWro
Content-Type: text/plain; format=flowed; delsp=yes; charset=us-ascii
Content-Transfer-Encoding: 8bit


Please post the attached draft-ietf-tools-draft-submission-08.txt file
as a Tools team Internet-Draft.

Thank you,

Alex.


------------L030Vg3Izy9SR0jM9cpWro
Content-Disposition: attachment;
	filename=draft-ietf-tools-draft-submission-08.txt
Content-Type: text/plain; name=draft-ietf-tools-draft-submission-08.txt
Content-Transfer-Encoding: 8bit




Tools team                                                   A. Rousskov
Internet-Draft                                   The Measurement Factory
Expires: October 21, 2005                                 April 19, 2005


           Requirements for an IETF Draft Submission Toolset
                  draft-ietf-tools-draft-submission-08

Status of this Memo

   By submitting this Internet-Draft, each author represents that any
   applicable patent or other IPR claims of which he or she is aware
   have been or will be disclosed, and any of which he or she becomes
   aware will be disclosed, in accordance with Section 6 of BCP 79.

   Internet-Drafts are working documents of the Internet Engineering
   Task Force (IETF), its areas, and its working groups.  Note that
   other groups may also distribute working documents as Internet-
   Drafts.

   Internet-Drafts are draft documents valid for a maximum of six months
   and may be updated, replaced, or obsoleted by other documents at any
   time.  It is inappropriate to use Internet-Drafts as reference
   material or to cite them other than as "work in progress."

   The list of current Internet-Drafts can be accessed at
   http://www.ietf.org/ietf/1id-abstracts.txt.

   The list of Internet-Draft Shadow Directories can be accessed at
   http://www.ietf.org/shadow.html.

   This Internet-Draft will expire on October 21, 2005.

Copyright Notice

   Copyright (C) The Internet Society (2005).

Abstract

   This document specifies requirements for an IETF toolset to
   facilitate Internet-Draft submission, validation, and posting.










Rousskov                Expires October 21, 2005                [Page 1]

Internet-Draft     ID Submission Toolset: Requirements        April 2005


Table of Contents

   1.  Introduction . . . . . . . . . . . . . . . . . . . . . . . . .  3
   2.  State of this draft  . . . . . . . . . . . . . . . . . . . . .  3
   3.  Scope  . . . . . . . . . . . . . . . . . . . . . . . . . . . .  3
   4.  Notation and Terminology . . . . . . . . . . . . . . . . . . .  4
   5.  Status quo . . . . . . . . . . . . . . . . . . . . . . . . . .  5
   6.  Overall Toolset operation  . . . . . . . . . . . . . . . . . .  7
   7.  Upload page  . . . . . . . . . . . . . . . . . . . . . . . . . 10
   8.  Check action . . . . . . . . . . . . . . . . . . . . . . . . . 10
     8.1   Preprocessing  . . . . . . . . . . . . . . . . . . . . . . 11
     8.2   Processing . . . . . . . . . . . . . . . . . . . . . . . . 12
     8.3   Storage  . . . . . . . . . . . . . . . . . . . . . . . . . 12
     8.4   Extraction . . . . . . . . . . . . . . . . . . . . . . . . 12
     8.5   Validation . . . . . . . . . . . . . . . . . . . . . . . . 14
       8.5.1   Absolute requirements  . . . . . . . . . . . . . . . . 15
       8.5.2   Desirable features . . . . . . . . . . . . . . . . . . 16
       8.5.3   DoS thresholds . . . . . . . . . . . . . . . . . . . . 17
       8.5.4   WG approval  . . . . . . . . . . . . . . . . . . . . . 17
   9.  Check page . . . . . . . . . . . . . . . . . . . . . . . . . . 18
     9.1   External meta-data . . . . . . . . . . . . . . . . . . . . 19
   10.   Post Now action  . . . . . . . . . . . . . . . . . . . . . . 20
     10.1  Receipt page . . . . . . . . . . . . . . . . . . . . . . . 21
   11.   Adjust action  . . . . . . . . . . . . . . . . . . . . . . . 21
   12.   Adjust page  . . . . . . . . . . . . . . . . . . . . . . . . 21
   13.   Post Manually action . . . . . . . . . . . . . . . . . . . . 22
   14.   Receipt page . . . . . . . . . . . . . . . . . . . . . . . . 22
   15.   Bypassing the Toolset  . . . . . . . . . . . . . . . . . . . 22
   16.   Email interface  . . . . . . . . . . . . . . . . . . . . . . 23
   17.   Implementation stages  . . . . . . . . . . . . . . . . . . . 26
   18.   Testing  . . . . . . . . . . . . . . . . . . . . . . . . . . 26
   19.   Security Considerations  . . . . . . . . . . . . . . . . . . 27
   20.   IANA Considerations  . . . . . . . . . . . . . . . . . . . . 27
   21.   Compliance . . . . . . . . . . . . . . . . . . . . . . . . . 27
   A.  Comparison with current procedures . . . . . . . . . . . . . . 28
   B.  Acknowledgments  . . . . . . . . . . . . . . . . . . . . . . . 29
   C.  Change log . . . . . . . . . . . . . . . . . . . . . . . . . . 29
   22.   References . . . . . . . . . . . . . . . . . . . . . . . . . 39
     22.1  Normative References . . . . . . . . . . . . . . . . . . . 39
     22.2  Informative References . . . . . . . . . . . . . . . . . . 39
       Author's Address . . . . . . . . . . . . . . . . . . . . . . . 40
       Intellectual Property and Copyright Statements . . . . . . . . 41









Rousskov                Expires October 21, 2005                [Page 2]

Internet-Draft     ID Submission Toolset: Requirements        April 2005


1.  Introduction

   Public Internet-Drafts are the primary means of structured
   communication within the IETF.  Current Internet-Draft submission and
   posting mechanisms hinder efficient and timely communication while
   creating an unnecessary load on the IETF Secretariat.  The IETF Tools
   team recommends formalization and automation of the current
   mechanisms.  This document contains specific automation requirements.

   The IETF Secretariat and many IETF participants have long been
   proponents of automation.  This document attempts to reflect their
   known needs and wishes, as interpreted by the Tools team.

2.  State of this draft

   This draft version attempts to resolve all known issues and address
   all Last Call comments received by 2005/04/12.  The Tools team may
   ask the IESG to issue another Last Call for it.

   If you decide to review the draft at this late stage, please limit
   your comments to critical issues.  Please check the Change log in
   Appendix C before proposing changes as it is possible that your idea
   has already been discussed.  Please post comments on the
   tools-discuss@ietf.org mailing list or email them directly to the
   author.

   RFC Editor Note: Please remove this section for the final publication
   of the document.  It has been inspired by
   draft-rousskov-newtrk-id-state and related NEWTRK WG discussions.

3.  Scope

   The Draft Submission Toolset discussed in this document is about
   getting a single new version of an Internet-Draft from an IETF
   participant to the IETF draft repository.  A single draft version may
   include several formats, and dealing with those formats is in scope
   for the Toolset.  Definition and sources of draft meta-information
   (to be used in Secretariat databases and elsewhere) are in scope.
   Submitter authentication and submission authorization are in scope.

   Draft posting may result in various notifications sent to interested
   parties.  While this document recommends a subset of notification
   targets, details of notifications are out of scope.

   Creation of new drafts or new draft versions as well as manipulation,
   visualization, and interaction with the drafts already in the
   repository are out of scope.  Draft expiration and archiving of old
   draft versions are out of scope.



Rousskov                Expires October 21, 2005                [Page 3]

Internet-Draft     ID Submission Toolset: Requirements        April 2005


   The set of requirements in this document is not meant to be
   comprehensive or final.  Other IETF documents or procedures may
   require additional functionality from the Toolset.  For example, it
   is possible that the Toolset will be required to handle draft source
   formats other than plain text and XML.

4.  Notation and Terminology

   The following terms are to be interpreted according to their
   definitions below.

   posted draft: A draft accepted into the public IETF draft repository
      and, hence, publicly available from the IETF web site.  Posting of
      a draft does not imply any IETF or IESG review and endorsement.

   draft version: A meant-to-be-public snapshot of an Internet-Draft
      with a meant-to-be-unique version number.  Also known as "draft
      revision".

   draft format: Any draft source or presentation format, including
      original and preprocessed XML, original or generated plain text as
      well as PDF, PostScript, and HTML formats.

   primary draft format: The first available draft format from the
      following list: plain text, PDF, PostScript, or XML.

   WG-named draft: A draft for which identifier (a.k.a. filename) is
      known and starts with "draft-ietf-".  Abbreviated as "WGN draft".
      Exceptions notwithstanding, WG-named drafts are usually controlled
      by IETF working groups and vice versa.  The handling of such
      naming exceptions is outside of this document scope.

   individual draft: A draft other than a WGN draft.

   submitter: A human or software agent initiating submission of an
      Internet-Draft version for validation or posting.  In some cases,
      the Secretariat staff does the actual submission, but always on
      behalf of a submitter.  In some cases (including but not limited
      to malicious attacks), the submitter is not the draft author.

   expected submitter: A submitter that is authorized by IETF rules to
      post a given draft.  This includes a draft author or editor
      (listed in the draft text), a corresponding WG Chair, or an IESG
      member.







Rousskov                Expires October 21, 2005                [Page 4]

Internet-Draft     ID Submission Toolset: Requirements        April 2005


   authorized submitter: An expected submitter authenticated by the
      Toolset.  Authentication is initially limited to verifying
      submitter access to submitter's email address.

   immediately: Without human interaction or artificial software delays
      and within a few seconds.

   The Toolset is specified using a set of normative requirements.
   These requirements are English phrases ending with an "(Rnnn/s)"
   indication, where "nnn" is a unique requirement number, and "s" is a
   single letter code ("a", "b", or "c") specifying the implementation
   stage for the requirement.  Implementation stages are documented in
   Section 17.

   This document specifies the interface and functionality of the
   Toolset, not the details of a Toolset implementation.  However,
   implementation hints or examples are often useful.  To avoid mixup
   with Toolset requirements, such hints and examples are often marked
   with a "Hint:" prefix.  Implementation hints do not carry any
   normative force, and a different implementation may be the best
   choice.

5.  Status quo

   This section summarizes the process for draft submission and posting
   as it exists at the time of writing.

   To get an Internet-Draft posted on the IETF web site, an IETF
   participant emails the draft text to the IETF Secretariat, along with
   an informal note asking the Secretariat to post the draft.
   Secretariat staff reads the note, reviews the draft according to a
   checklist, and then approves or rejects the submission.  Draft
   approval triggers the corresponding announcement to be sent to
   appropriate IETF mailing lists.  Every 4 hours, approved drafts are
   automatically copied to the IETF drafts repository and become
   available on the IETF web site.

   Collectively, IETF participants submit thousands of Internet-Drafts
   per year (in the year 2000, about three thousand drafts were
   submitted; 2002: 5k; 2004: 7k [secretariat]).  About 30-50% of posted
   drafts are WG-named drafts (among some 2,100 drafts, there were about
   380 new and 290 updated WGN drafts posted in 2003).  While no
   rejection statistics is available, the vast majority of submitted
   drafts are approved by the Secretariat for posting.

   It usually takes the Secretariat a few minutes to review a given
   draft.  However, since the Secretariat staff does not work 24/7, does
   not work in all time zones, has other responsibilities, and since



Rousskov                Expires October 21, 2005                [Page 5]

Internet-Draft     ID Submission Toolset: Requirements        April 2005


   approved drafts are posted in batches every 4 hours, it may take from
   several hours to several days to get a draft posted.  Due to much
   higher demand and fixed processing capacity, postings during the last
   weeks before IETF face-to-face meetings take much longer, creating a
   long queue of unprocessed drafts that are then announced nearly
   simultaneously.

   To give IETF face-to-face meeting participants time to review
   relevant documents, the Secretariat does not accept Internet-Draft
   submissions close to IETF meetings (regardless of whether a draft is
   relevant to the upcoming meeting or not).

   Many Working Groups have come up with ad hoc solutions to cope with
   posting delays.  For example, many draft snapshots are "temporarily"
   published on personal web sites or sent (completely or in part) to
   the group list.  Alternative means of publication may effectively
   replace official IETF interfaces, with only a few major draft
   revisions ending up posted on the IETF web site.

   Informal interfaces for submitting and posting drafts discourage
   automation.  Lack of submission automation increases Secretariat
   load, complicates automated indexing and cross-referencing of the
   drafts, and, for some authors, leads to stale drafts not being
   updated often enough.

   Beyond a short Secretariat checklist, submitted drafts are not
   checked for compliance with IETF requirements for archival documents,
   and submitters are not notified of any violations.  As a result, the
   IESG and RFC Editor may have to spend resources (and delay approval)
   resolving violations with draft authors.  Often, these violations can
   be detected automatically and would have been fixed by draft authors
   if the authors knew about them before requesting publication of the
   draft.

   Technically, anybody and anything can submit a draft to the
   Secretariat.  There is no reliable authentication mechanism in place.
   Initial submissions of WGN drafts require WG Chair approval, which
   can be faked just like the submission request itself.  No malicious
   impersonations or fake approvals have been reported to date however.

   Lack of authentication is not perceived as a serious problem,
   possibly because serious falsification are likely to be noticed
   before serious damage can be done.  Due to the informal and manual
   nature of the submission mechanism, its massive automated abuse is
   unlikely to cause anything but a short denial of draft posting
   service and, hence, is probably not worth defending against.
   However, future automation may result in a different trade-off.




Rousskov                Expires October 21, 2005                [Page 6]

Internet-Draft     ID Submission Toolset: Requirements        April 2005


6.  Overall Toolset operation

   This section provides a high-level description for the proposed
   Toolset.  The description is meant to show overall operation and
   order; please refer to other sections for details specific to each
   step.

   A typical submitter goes through a sequence of 2-4 web pages and
   associated actions.  The number of pages depends on the draft
   validation and meta-data extraction results.  For example, validating
   the draft without posting it requires interacting with two web pages:
   Upload and Check.  The common case of posting a valid draft without
   manual meta-data adjustments takes three web pages (Upload, Check,
   Receipt).

   Here is a brief overview of pages and actions:

   Upload page: The interface to copy a draft from the submitter's
      computer to the Toolset staging area (Section 7).  Multiple
      formats are accepted.  The draft is sent to the Check action.

   Check action: Stores the draft in the Toolset staging area, extracts
      draft meta-data, validates the submission (Section 8).  Produces
      the Check page.

   Check page: Displays draft interpretation and validation results
      (Section 9).  A draft preview may also be given on this page.
      After reviewing the draft interpretation and validation results,
      the submitter has four basic choices (a) auto-post draft "as is"
      now; (b) make manual corrections and submit the draft to
      Secretariat for manual posting later; (c) cancel submission; or
      (d) do nothing.  The automated posting option may not be available
      for drafts with validation errors.

   Automated posting: If the submitter decides to proceed with automated
      posting from the Check page, the system authenticates the
      submitter and may also check whether the submitter is allowed to
      post the draft.  If the submitter is authorized, the draft is
      immediately posted, deleted from the staging area, and the
      submitter is notified of the result via email and a Receipt page
      (Section 10).

   Manual adjustment and posting: If the submitter decides to adjust the
      meta-data, the draft remains in the Toolset staging area, and the
      Adjust action (Section 11) presents the submitter with an Adjust
      page (Section 12).  When the submitter makes the adjustments and
      proceeds with manual posting, a pointer to the stored draft and
      its adjusted meta-data is sent to the secretariat for manual



Rousskov                Expires October 21, 2005                [Page 7]

Internet-Draft     ID Submission Toolset: Requirements        April 2005


      processing (Section 13).  The submitter is notified of the pending
      Secretariat request via email and a Receipt page.

   Cancellation: If the submitter decides to explicitly cancel the
      submission, the submission state (including the draft) is
      immediately deleted from the Toolset staging area and an
      appropriate Receipt page is generated without further actions
      (R123/a).  Cancellation of posted drafts is out of this document
      scope.

   Receipt page: Contains details of a successful or failed draft
      submission and informs the submitter of the next appropriate
      step(s) related to submission result.

   The following informal diagram illustrates the basic submission
   logic:

                       /---> Post Now
                      /
   Upload --> Check -+-----> Adjust ---> Send to Secretariat
                      \
                       \---> Cancel

   If the submitter does nothing while the Toolset is expecting some
   response, the abandoned submission times out (R124/a).  The timeout
   value depends on the submission state.  Hint: A timeout value of one
   hour is probably large enough unless the Toolset is waiting for some
   kind of a 3rd party confirmation (e.g., WG chair approval).  Doing
   nothing is functionally equivalent to explicitly canceling the
   submission, except that explicit cancellation requires immediate
   removal of submission state while the state of submissions marked as
   abandoned is garbage-collected.

   The staging area maintenance algorithms must keep the area in a
   consistent, correct state in the presence of DoS attacks attempting
   to overwhelm the area with fake submissions in various stages
   (R67/a).  Hint: denial of service to legitimate users is acceptable
   under DoS attack conditions, but corruption of the storage area is
   not.

   The "web pages" this text is referring to are distinct dialogs, that
   may be visible to the submitter under the same or different URL, and
   supported by a single or several server-side programs.

   The Toolset must handle multiple submitters simultaneously submitting
   the same draft (R72/a) and a single submitter simultaneously
   submitting two drafts (R73/a).  The latter might happen, for example,
   when the submitter is using several browser windows to submit several



Rousskov                Expires October 21, 2005                [Page 8]

Internet-Draft     ID Submission Toolset: Requirements        April 2005


   drafts or is submitting drafts via email interface.  The term
   "simultaneously" means that submission processing times overlap.

   Hint: Except for the Upload page, pages contain a submission session
   identifier to provide actions with access to stored information.  The
   identifier is specific to the submission rather than the draft
   version or the submitter.  While the nature of the web interface
   allows the session identifier to be invisible to the submitter, email
   communication would need to identify the session so that the
   recipient (and Toolset) know the context.

   Hint: A single action may correspond to multiple server-side programs
   and, vice versa, a single program may implement several actions.
   This document does not mandate any specific technology (e.g., CGI,
   PHP, and/or Java servlets) to implement server-side support.  The
   implementer experience, code reuse across web and email interfaces,
   and other factors will determine the right technology choice.

   Hint: Actions preserve and exchange state by storing it along with
   the draft.  Grouping all submission-specific information in one
   subdirectory named using the session identifier may increase
   robustness and simplify debugging.  Session creation and destruction
   can then be logged in a global index.

   Ways to partially or completely bypass the Toolset are documented in
   Section 15

   The Toolset sources should be publicly available (R152/b) under a
   license certified by the Open Source Initiative [OSI] (R144/a), with
   an interface to report bugs and request enhancements (R145/b).  These
   requirements are meant to enable the Toolset transfer from one
   management team to another and to allow for public review and
   contribution.  To meaningfully satisfy these availability
   requirements, the Toolset has to implement the required functionality
   without relying on software with different availability conditions.

   Hint: Placing the Toolset source repository at an open-source-
   friendly project management site like SourceForge.net would provide
   the IETF community with a decent, ready-to-use interface to access
   the code, documentation, bug reports, and discussion forums.
   Establishing and documenting a simple interface between the Toolset
   and external software (e.g., the Secretariat draft posting scripts)
   would facilitate availability checks.

   The Toolset is meant to be compatible with the Secretariat's tools
   for handling drafts.  Hint: Such compatibility can be achieved by
   appropriately implementing the Toolset or, in some cases, by
   modifying existing Secretariat tools.



Rousskov                Expires October 21, 2005                [Page 9]

Internet-Draft     ID Submission Toolset: Requirements        April 2005


7.  Upload page

   To upload a draft, the submitter goes to a well-known page on the
   IETF web site (R1/b).  There, the draft text can be uploaded using an
   HTML file upload form.  This form provides fields to upload the plain
   text format of the draft (R2/a) and all other formats allowed by IETF
   draft publication rules (R3/b).  At the time of writing, these
   formats are: XML ([RFC2629] and [I-D.mrose-writing-rfcs]), PDF, and
   PostScript.

   Submitted forms are handled by the Check action documented in
   Section 8.

   The Upload page also has a validate-only flag, indicating that an
   uploaded draft must not be posted and may be deleted immediately
   after the validation (R74/b).  Regardless of the validation results,
   the stored draft meta-data is marked so that validation-only drafts
   can be identified and deleted first by garbage collector for the
   Toolset staging area (R75/b).  Drafts uploaded in a validate-only
   mode cannot be posted (R76/b); they would need to be uploaded again,
   without the validate-only flag, and the validation results page
   should explain that (R77/b).  This flag is useful for tools using
   online validation, especially for bulk draft processing.  Hint: it
   may be better to implement this flag as a hidden HTML input field to
   simplify the interface for human submitters.

8.  Check action

   The Check action preprocesses a submission, generates plain text
   format (if needed, see R70), stores the submitted draft (all formats)
   in the staging area, and then extracts meta-data and validates each
   format (R6/a).  Errors and warnings are indicated to the submitter in
   the response via computer-friendly tag(s) and human-friendly text
   (R7/a).

   If any error is found, automated posting becomes impossible (R113/a).
   This rule applies to all errors, even those that do not refer to R113
   and do not explicitly prohibit automated posting.  If automated
   posting is not possible, the Toolset still gives the submitter an
   option of sending the draft for manual validation and posting
   (R114/a).  Since each submission is treated in isolation, the
   submitter also has an option of correcting the problem and
   resubmitting the draft for automated posting.

   The manual validation and posting route is a Toolset bypass mechanism
   (see Section 15) not meant for fixing problems with the draft itself.
   The Secretariat does not generally correct submitted drafts.  If the
   draft needs tweaking to match submitter's intent, then the draft



Rousskov                Expires October 21, 2005               [Page 10]

Internet-Draft     ID Submission Toolset: Requirements        April 2005


   should be corrected by the submitter and resubmitted.

   It is an error to submit a draft which has neither plain text nor XML
   source format (R68/a).  XML source is acceptable without accompanying
   plain text only if the Toolset successfully generates a draft in
   plain text format from the XML source, as a part of the processing
   step documented below (R69/b).  These rules imply that PDF- or
   PostScript-only drafts cannot be auto-posted.  Moreover, even manual
   Secretariat involvement cannot help with posting these drafts, as the
   IETF policy is to always require a plain text format in addition to
   PDF or PostScript.  Furthermore, drafts containing PDF or Postscript
   format must not be auto-posted until the Toolset can validate that
   their content matches the plain text format (R143/a).

   The draft format acceptance rules above are meant to decrease the
   chances that multiple posted draft formats for a single draft contain
   substantially different documents.  With experience, the rules may be
   simplified so that, for example, only submissions containing nothing
   but XML or plain text sources can be posted without Secretariat
   involvement and all other submissions require manual actions to match
   formats or extract meta-data.

8.1  Preprocessing

   Submitting compressed drafts is a desirable feature, especially for
   submitters behind slow or content-altering links.  Compressed draft
   formats may be accepted (R150/c).  Compressed formats, if any, must
   be decompressed during the preprocessing step (R151/c) so that other
   processors do not have to deal with compressed formats.  Hint:  While
   this specification does not document a list of supported compression
   standards, it is expected that such popular methods as "zip" and
   "gzip" should be accepted if compression is supported.  Accepting a
   collection of draft formats within a single compressed archive may
   also be desirable.

   XML source containing XML processor <rfc? include="..."> instructions
   (PIs) is preprocessed to include references (R8/b).  This step is
   needed to remove external dependencies from XML sources and to
   simplify tools processing posted XML.  This document refers to such
   XML processor instructions as "include PIs".

   The XML preprocessor uses public database(s) to resolve PI references
   (R85/b).  The Toolset documentation specifies what databases are used
   and how PIs are mapped to database entries (R86/b).  The Toolset must
   not rely on PIs existence (R87/b) because some XML sources will be
   preprocessed before the submission or will be written without PIs.
   Hint: Local up-to-date copies of Marshall Rose's reference databases
   at xml.resource.org can be used.



Rousskov                Expires October 21, 2005               [Page 11]

Internet-Draft     ID Submission Toolset: Requirements        April 2005


   Both original and preprocessed XML sources may be posted later.  The
   original source with include PIs may be useful to the RFC Editor and
   generation of diffs (against future or past original sources).  The
   preprocessed source without include PIs becomes the default public
   XML source of the posted draft (R10/b).  If any of the include PIs
   known to the Toolset cannot be handled, an error is recorded (R11/b),
   and the submitter is encouraged to do the preprocessing locally,
   before submitting the draft (R111/b).

   Uncompressed draft formats other than XML are not preprocessed.

8.2  Processing

   When no plain text format of the draft is submitted, but XML sources
   are available, the Toolset attempts to generate plain text format
   from submitted XML sources (R70/b).

   If XML sources are available, the Toolset generates HTML draft format
   (R112/c).  HTML generation failures should result in warnings, not
   errors (R115/c).  HTML generation is not meant to be implemented
   until the Enhancement stage is reached (R130/a).  In general, HTML
   generation is desirable because HTML drafts are usually easier to
   navigate than plain text drafts due to improved overall readability
   and links.  As any Enhancement Stage feature, HTML generation may be
   dropped or drastically changed to reflect then-current IETF consensus
   and the experience of the first two implementation stages.

   Hint: The Toolset implementers should not assume that draft formats
   generated by the same tool from the same source format have
   essentially the same content.  The generation tool may have options
   that allow authors to generate content exclusive to a specific
   generated format.  Such options might be abused.

8.3  Storage

   The Check action needs to store all draft formats so that
   successfully validated drafts can later be auto-posted at submitter
   request.  The action stores all submitted formats of the draft in a
   staging area dedicated to the Toolset (R12/a).  If, after garbage
   collection, the staging area is full (i.e., the total used size has
   reached the configured maximum capacity), the submitter and the
   Secretariat are notified of a fatal error (R13/a).

8.4  Extraction

   The Toolset extracts meta-data from the following stored draft
   formats: plain text (R131/a), XML (R132/b), and other (R133/c).  If a
   meta-data extraction fails, the Toolset records an error (R15/a).



Rousskov                Expires October 21, 2005               [Page 12]

Internet-Draft     ID Submission Toolset: Requirements        April 2005


   Meta-data extraction is necessary to validate and post the draft.
   Extraction from all formats is necessary to validate that all meta-
   data matches across all formats (in addition to and before the
   Toolset can validate that the contents matches as well).

   Section 17 documents a non-obvious implementation schedule related to
   the above two requirements.  When only partial support for format
   interpretation is available, only interpreted formats are subject to
   extraction and validation requirements.  In other words, if the
   Toolset does not yet support interpretation of a given format, then
   the corresponding information is stored and made available "as is",
   regardless of the actual content.

   The draft interpreter extracts the following meta-data from each
   draft format (R16/a):

   identifier: Also known as draft "filename".  For example,
      draft-ietf-sieve-vacation-13 .

   version: A non-negative integer number representing draft version
      number (also known as draft revision number).  For example, the
      number seven in draft-ietf-sieve-vacation-07.

   name: The common part of all draft identifiers for all versions of
      the same draft.  In other words, a draft identifier without the
      version component.  For example, draft-ietf-sieve-vacation in
      draft-ietf-sieve-vacation-07.

   WG ID: Working Group identifier.  For example, "sieve" in
      "draft-ietf-sieve-vacation-07" is a WG ID.  The WG ID value is
      empty for drafts that are not WG-named drafts.

   WG flag: True for WGN drafts and false for all other drafts.  For
      example, "true" for "draft-ietf-sieve-vacation-13".  This flag
      only influences the further handling of initial (version 00) draft
      submissions, as far as the current document is concerned.

   title: A human-friendly draft title.  For example, the title of this
      document is "Requirements for an IETF Draft Submission Toolset"

   authors: A list of all draft authors.  For each author, their name
      and email address are extracted.

   abstract: The draft abstract text.







Rousskov                Expires October 21, 2005               [Page 13]

Internet-Draft     ID Submission Toolset: Requirements        April 2005


   creation date: The draft version creation date.

   expiration date: The draft version expiration date.

   size: The number of pages and octets in the primary format of the
      draft.  The definition of a page depends on the format and may be
      imprecise or arbitrary for some formats.

   Failure to extract any field results in error (R95/a).

   The Toolset requires author email addresses because they are
   essential for notifying co-authors that their draft has been posted.
   If there are no such notifications, a submitter adding a co-author to
   the draft without the co-author's consent may not be caught for a
   while.  Such "surprise" co-authorships have happened in the past and
   can be quite annoying.  However, since the Toolset does not solicit
   co-authors' consent to post a valid draft (and such solicitation
   would not go beyond email control verification anyway), it is not
   possible to stop a malicious submitter from adding co-authors without
   their knowledge.

   Like other meta-data items above, draft creation and expiration dates
   are extracted from the draft; their values do not depend on the
   actual submission time (i.e., the time the Check action starts).
   However, the validation procedure (see Section 8.5) may declare any
   extracted date invalid after taking into consideration current (i.e.,
   submission) time, IETF draft expiration rules, and other factors
   external to the draft.

8.5  Validation

   Drafts need to be validated to catch broken submissions.  Validation
   also helps educate or warn authors of problems that may become show-
   stoppers when the draft is sent for IETF Last Call and IESG review.
   IETF standards have to follow a set of syntax and semantics
   requirements (see the "ID-NITS" document at
   <http://www.ietf.org/ID-Checklist.html>.  Most of those requirements
   are not enforced for Internet-Drafts.  However, following them may
   improve draft quality, reduce the IESG load, and increase the chances
   of the draft being approved as an RFC.

   When validating a given draft, it is important to distinguish between
   absolute requirements and desirable draft properties.  Both
   categories are checked for, but violations have different effects
   depending on the category.  The two categories are detailed in the
   following subsections.

   When a valid draft is being posted and submitter authorization or co-



Rousskov                Expires October 21, 2005               [Page 14]

Internet-Draft     ID Submission Toolset: Requirements        April 2005


   author notification is performed, validation results should be
   included in the email (R81/b) so that the submitter can see meta-data
   extraction and validation warnings.  Note that these results cannot
   include errors since only valid drafts can be posted.

8.5.1  Absolute requirements

   Violating any of these requirements would prevent a draft to be
   automatically posted (R17/a).  The offending draft would have to be
   fixed or submitted for manual posting, with an explanation why the
   absolute requirements need to be violated (or why the Validator mis-
   detected violations).  These explanations may speed up Secretariat
   posting decision and may help Secretariat to improve the Toolset
   implementation.

   1.  All available meta-data entries must match across all submitted
       draft formats (R18/a).  For example, if the interpreter managed
       to extract a draft title from both the plain text and the PDF
       format, both titles must match.  This requirement prevents
       accidental submission of mismatching formats.

   2.  Version 00 of a Working Group draft has a corresponding Working
       Group approval (R20/a).  This approval can be relayed before or
       after the first draft submission, by a Chair or Secretary of the
       WG.  See Section 8.5.4 for related requirements.

   3.  The draft ID must be correct (R22/a), including the draft version
       number value.  Draft version numbers must start with zero and
       increase by one with every new version.  To satisfy this
       requirement, the Toolset would have to consult the repository of
       already posted drafts, including expired ones.

   4.  An IETF IPR Statement and other boilerplate required for drafts
       according to [RFC3978] and [RFC3979] (or successors) must appear
       in the draft text (R23/a).

   5.  The creation of the draft version could have happened 48 hours or
       less before submission time.  Hint: Implementers should be
       careful to handle creation dates that appear to be in the past or
       in the future, due to possible time zone differences.  Making the
       most forgiving/permissive assumption about the time zone should
       suffice.

   6.  The draft version expiration date obeys IETF draft expiration
       rules.

   7.  No IETF submission blackout period applies.  Hint:  IETF
       blackouts must be enforced based on submission time, not possible



Rousskov                Expires October 21, 2005               [Page 15]

Internet-Draft     ID Submission Toolset: Requirements        April 2005


       draft creation time.

   8.  Posting the draft must not result in any Denial of Service (DoS)
       attack threshold to be crossed (R97/a).  Specific thresholds are
       documented in Section 8.5.3.

   9.  XML sources (if available) are valid with respect to the XML
       format [XML] (R153/c) and XML Document Type Definition (DTD) for
       IETF drafts (R154/c).  Note that during the first two
       implementation stages, the corresponding validation failures
       result in warnings and not errors (see Section 8.5.2).

   The XML DTD for IETF drafts is documented in [RFC2629] with recent
   changes available in [I-D.mrose-writing-rfcs].  Hint: Bill Fenner's
   "RFC 2629 validator" at
   http://rtg.ietf.org/~fenner/ietf/xml2rfc-valid/ (or its derivative)
   may be useful for XML format and DTD validation.

8.5.2  Desirable features

   Violating any of the following requirements does not prevent the
   submitter from auto-posting the draft (R24/a).

   1.  All automatically testable nits in the "ID-NITS" document at
       <http://www.ietf.org/ID-Checklist.html> (R116/b).  The Toolset
       should use external tools to check these rather than embed nits
       checking code (R117/a).  Hint: Henrik Levkowetz' idnits tool can
       be used (http://ietf.levkowetz.com/tools/idnits/) and other tools
       can be written or adopted.

   2.  New draft versions are expected (R21/b).  For example, version 00
       of an individual draft is always expected, while posting a new
       version of a draft already under the IESG review should generate
       a warning.

   3.  If both XML and plain text formats are submitted, the submitted
       plain text matches what can be generated based on submitted XML
       (R146/b).

   4.  The previous version, if any, was posted at least 24 hours ago
       (R96/b).  This warning may prevent some human errors, especially
       when multiple authors may post the same draft.

   5.  XML sources (if available) are valid with respect to the XML
       format (R155/b) and XML DTD for IETF drafts (R156/b).  These
       requirements become absolute after the second implementation
       phase.  See Section 8.5.1 for related information.




Rousskov                Expires October 21, 2005               [Page 16]

Internet-Draft     ID Submission Toolset: Requirements        April 2005


   When comparing generated and submitted plain text formats to satisfy
   R146, a standard word-based diff is sufficient for initial Toolset
   implementations (R147/b).  However, a custom fuzzy matching function
   can be developed (R148/c) to minimize false warnings due to, for
   example, draft text formatting differences.  When differences are
   detected, a complete diff may be provided on a separate page
   (R149/c), in addition to the warning.

   Hint: When comparing generated and submitted plain text formats, the
   Toolset may try several recent xml2rfc versions for plain text
   generation, to eliminate warnings due to differences among xml2rfc
   versions.

8.5.3  DoS thresholds

   The following table documents DoS attack thresholds for various draft
   categories.  Daily limits correspond to all drafts (and all draft
   formats) within the category.  Other thresholds may be introduced and
   these initial thresholds may be adjusted as necessary.  The
   thresholds are likely to become more smart/dynamic with experience.

   DoS attack thresholds:

   +----------------------------------------+--------------+-----------+
   | category                               | versions/day |    MB/day |
   +----------------------------------------+--------------+-----------+
   | drafts with the same draft name        |            3 |         5 |
   | drafts with the same submitter         |            5 |        10 |
   | WGN drafts with the same WG ID         |           10 |        15 |
   | all drafts                             |          300 |       150 |
   +----------------------------------------+--------------+-----------+

   The thresholds are meant to limit destructive effects of DoS attacks
   (e.g., full disks cause other tasks to fail), allow for capacity
   planning (e.g., how much storage space the Toolset needs), and limit
   annoying side-effects of "too many" drafts being posted (e.g., when a
   person receives posting notifications about a given draft or a given
   working group).  The Toolset should warn the Secretariat if total
   submissions are approaching any threshold (R134/b).  Hint: Bandwidth
   available for submissions may need to be throttled (on a network
   subnet basis?) to make reaching the daily size quota (with malicious
   intent) difficult.

8.5.4  WG approval

   For version 00 of a WGN draft, the Toolset checks for an existing WG
   approval (R125/a).  If (a) no approval exists, and (b) the Toolset
   does not support the "waiting for WG approval" feature, the Toolset



Rousskov                Expires October 21, 2005               [Page 17]

Internet-Draft     ID Submission Toolset: Requirements        April 2005


   records an error (R135/a).

   If (a) no approval exists, (b) the Toolset supports the "waiting for
   WG approval" feature, and (c) the draft cannot be posted even if WG
   approval is received, then the Toolset records a warning that a WG
   approval would be required once all errors preventing draft from
   posting are fixed (R137/b).

   If (a) no approval exists, (b) the Toolset supports the "waiting for
   WG approval" feature, and (c) the draft can be posted if WG approval
   is received, then the Toolset explains the situation to the submitter
   and asks whether the submitter wishes to solicit an explicit approval
   from the WG (R126/b).  If the submitter decides to go ahead with
   solicitation, the Toolset puts the submission into a "waiting for WG
   approval" state until the approval is available (R127/b).  Otherwise,
   the Toolset records a "no WG approval is expected" error (R138/b).

   Details of the approval recording and access interfaces as well as
   the mechanism to resume the submission upon approval are out of this
   document scope.

9.  Check page

   The Check page, created by the Check action, displays extracted draft
   meta-data and validation results (R25/a).  The purpose of the page is
   to allow the submitter to verify whether the stored draft and
   automatically extracted meta-data match the submitter's intent and to
   be informed of validation problems.

   Meta-data items specified in Section 8.4 that failed validation
   checks must be marked specially (rather than silently omitted or
   ignored) (R26/b).  Hint: rendering those items in red, with links to
   corresponding validation errors or warnings, may force authors to pay
   attention.

   Validation messages include both errors and warnings.  Each
   validation message refers to normative document(s) containing the
   corresponding validation rules (R27/b).

   The Check page allows the submitter to enter external meta-data
   (Section 9.1) (R28/a).  If validation was successful, an
   "automatically post the draft now" button is provided (R29/a).
   Regardless of validation results, "adjust and post manually" and
   "cancel" buttons are provided (R30/a).

   The Check page provides a preview of the draft plain text format
   (R31/a), with a link to see how the entire draft (with all its
   formats) would look like if posted (R82/b).  Hint: the Check page



Rousskov                Expires October 21, 2005               [Page 18]

Internet-Draft     ID Submission Toolset: Requirements        April 2005


   preview should be sufficiently long to let authors detect obvious
   draft mismatch or misinterpretation errors but short enough to avoid
   dominating the page.  Displaying the first line of the draft through
   the last line of the abstract may be sufficient.

   For draft updates, the Check page reports the time and the submitter
   of the last update (R83/b).  This information is especially useful
   when multiple authors are working on the same draft.  The page also
   provides a link to generate a diff against the last posted version
   (R84/c).

9.1  External meta-data

   The Check page solicits the following meta-data from the submitter.
   This information must be supplied by submitter because it cannot be
   extracted from the draft:

      Submitter email address (R32/a).  When submitter is not an
      expected submitter (see Section 4), automated posting is not
      possible and the draft has to go through the Secretariat (R98).
      Hint: A set of checkboxes next to extracted author names along
      with a "none of the above" checkbox with an input field would
      suffice.

      A list of drafts replaced by this draft (R33/c).  This is useful
      to make replaced drafts invisible.  This document does not specify
      any actions necessary to actually replace an existing draft
      because existing draft manipulation is out of scope, and because
      security concerns and other complications of such actions would be
      better addressed by a separate specification.

      Primary email address for discussion of this draft (R71/b).  Hint:
      The Toolset can suggest the WG mailing list address for WGN
      drafts, (submitting) author address for individual drafts, or even
      the first email address in draft text.  Offering a few likely
      addresses instead of relying exclusively on user input would also
      reduce the number of typos.

   Except for the submitter email address, external meta-data is
   optional (R109/a).

   If a given submitter email address belongs to an expected submitter
   (i.e., belongs to one of the categories below), the Toolset performs
   submitter authentication during a Post Now action (R19/a).
   Otherwise, an error is reported (R118/a).

   The following possible expected submitters are identified by the
   Toolset, without any Secretariat intervention:



Rousskov                Expires October 21, 2005               [Page 19]

Internet-Draft     ID Submission Toolset: Requirements        April 2005


      For version 00 of a draft, any submitter (R119/a).

      For version N+1 of a draft, an author of version N of the same
      draft (R120/a).  This requirement only needs to be satisfied for
      drafts for which Nth version was posted using the Toolset; other
      drafts may not have the meta-information available which is
      required to reliably get a list of authors.

      For a WGN draft, a Chair of the corresponding WG (R121/b).

      For any draft, an IESG member (R122/c).


10.  Post Now action

   The Post Now action checks that the draft has been successfully
   validated (R34/a), validates external meta-data (including submitter
   email address) (R35/a), and posts the draft (R36/a).  The submitter
   is notified of the action progress and the final result (R37/a).

   The external meta-data contains the submitter's email address.  As a
   part of the validation procedure, the Post Now action authorizes the
   submitter.  The initial action implementation checks that the
   submitter has access to email sent to that address (R38/a).
   Eventually, the Toolset should accept client certificates signed by
   IETF, PGP-signed email, and/or other forms of client-side
   authentication to eliminate the weak and annoying email access check
   (R110/c).  If submitter authentication fails, the submission
   eventually and silently times out (R39/a).

   The Toolset provides both web (R99/a) and email (R139/b) interfaces
   for confirming email access.  Hint: To check submitter's access to
   email, the tool can email a hard-to-guess cookie or token to the
   submitter's address.  To continue with the submission, the submitter
   is requested to paste the cookie at the specified URL, go to the
   token-holding URL, or respond to the email.

   Immediately after sending an email to the submitter, the The Post Now
   action generates an intermediate Receipt page that explains Toolset
   expectations and provides the submitter with the submission ID
   (R100/a).  That number allows the Secretariat to troubleshoot stuck
   submissions (R101/a) and can also be used for checking submission
   status without Secretariat involvement (R140/b).

   Immediately after posting the draft, the Toolset notifies all authors
   (with known email addresses) of the posting (R102/a).  The
   notification email contains the information available on the
   "successful posting" Receipt page described below (R103/a).



Rousskov                Expires October 21, 2005               [Page 20]

Internet-Draft     ID Submission Toolset: Requirements        April 2005


   If draft posting is successful, the submission state is marked as
   available for deletion (R105/a) so that the garbage collection
   routine eventually deletes it.

10.1  Receipt page

   A successful Post Now action reports at least the following
   information on the final Receipt page (R104/a):

   o  the draft ID and a link to the draft status page;

   o  the draft title, authors, and abstract;

   o  the submission ID

   o  a link to the draft submission status page (when status queries
      are supported, see R140).

   o  the submitter's name and email address.

   The primary purpose of the Receipt page is to inform all draft
   authors that (supposedly) their draft has been posted.  The secondary
   purpose is to let authors create a permanent record of the event and
   troubleshoot postings.  The same information should be sent to other
   parties interested in the draft (e.g., to the WG mailing list), but
   3rd party notification specifics are out of this document's scope.

11.  Adjust action

   The Adjust action generates the Adjust page (R40/a), populating it
   with available extracted meta-data and external meta-data, as well as
   validation results and a preview.  Some information may be missing,
   depending on draft interpretation and the success of preview
   generation.

12.  Adjust page

   The Adjust page includes the same information as the Check page, but
   allows the submitter to adjust all extracted draft meta-data (and,
   naturally, external meta-data) at will (R41/a).  Such adjustment is
   necessary when automated extraction failed to extract correct
   information.  To avoid any mismatch between draft and its meta-data,
   adjusted drafts cannot be automatically posted and require manual
   validation by the Secretariat (R42/a).  Secretariat staff can post
   drafts with adjusted meta-data as described in Section 15.

   The Adjust page allows the submitter to enter an informal comment
   explaining why adjustments are necessary and automated posting mode



Rousskov                Expires October 21, 2005               [Page 21]

Internet-Draft     ID Submission Toolset: Requirements        April 2005


   cannot be used (R48/a).  Such comments may be essential for the
   Secretariat in their efforts to troubleshoot the problem.

   The "post manually" and "cancel" buttons are provided (R43/a).  The
   former is backed by the "Post Manually" action (Section 13).

13.  Post Manually action

   The Post Manually action sends adjusted meta-data and a draft pointer
   to the Secretariat for manual validation and posting (R44/a).  A
   receipt page is generated, instructing the submitter to wait (R45/a).
   The Secretariat will notify the submitter once the draft is posted or
   rejected.  This notification is sent by the Toolset if the
   Secretariat is using the Toolset to post the draft (R46/a).

14.  Receipt page

   The Receipt page is generated by various actions to inform the
   submitter of the current submission status and further actions.  The
   contents of the page is likely to be highly dependent on the action
   and state for which receipt is being generated.  This section
   documents general requirements applicable to all actions and states.

   The Receipt page should give the submitter a URI or another
   identifier that can be used by Secretariat for manual troubleshooting
   of the submission (R63/a).  The identifier should be perpetual
   (R64/a) even though the associated details are likely to be
   eventually lost (e.g., draft submission data and logs are deleted
   from the staging area as a part of the garbage collection routine).
   Hint: Tools should distinguish old identifiers from invalid ones;
   when a given identifier is referring to deleted data, the tools
   accepting the identifier should inform their users that the
   identified submission is recognized, but the related information has
   expired.

   The Receipt page should give the submitter a Secretariat point-of-
   contact to report submission problems (R65/a).

15.  Bypassing the Toolset

   A buggy Toolset implementation or unusual circumstances may force a
   submitter to submit a draft to the Secretariat for manual processing.
   This can be done by choosing the "manual posting" route supported by
   the Toolset (R47/a) or, as a last resort, by emailing the draft
   directly to Secretariat.  In either case, an informal "cover letter"
   has to accompany the draft.  The letter should explain why the
   automated interface cannot be used.




Rousskov                Expires October 21, 2005               [Page 22]

Internet-Draft     ID Submission Toolset: Requirements        April 2005


   When processing manual submissions, the Secretariat may be able to
   use the Toolset.  A Manual Check page similar to the default Check
   page provides authenticated Secretariat staff with editable meta-data
   fields and a "force posting" action (R50/b).  The forced posting
   action accepts meta-data fields "as is", does not verify submitter
   access to email or WG draft authorization, and posts the draft as if
   no validation errors were found (R51/b).  The Manual Check page
   should still contain all the errors and warnings identical to those
   seen by ordinary submitters (R106/b) so that the Secretariat knows
   what the Toolset is unhappy about (if anything).

   Using manual processing may result in significant posting delays.
   Generated submission receipts or notifications ought to give the
   submitter an expected processing time estimate (R53/a).

   The intent of this mode is to provide a way for submitters to bypass
   bugs or limitations of the automated mechanisms in order to post an
   "unusual" draft or to post a draft under "unusual" circumstances.
   One example would be a draft that does not contain standard IETF
   boilerplate but has a special IESG permission to post the draft with
   the experimental boilerplate.  Another example is a draft that fails
   automated validation tests due to a validator bug.

   The bypass mode is also likely to be used (effectively) by the
   majority of submitters during the Trial stage of the Toolset
   implementation, when few submitters know about (or are allowed to
   use) the Toolset.

16.  Email interface

   The Toolset should have an email interface for automated posting of
   valid drafts (R55/b).  While virtually every documented Toolset
   functionality can, technically, be implemented behind an email
   interface, features other than posting of valid drafts are believed
   to be prohibitively awkward to implement or use via email.

   The email interface accepts a draft as a set of email part(s) (one
   per draft format) (R56/b).  For example, the plain text format can be
   submitted in the "body" of the email message, while XML source format
   can be optionally sent as an "attachment" of the same email message.
   Each part can either contain the actual format data (R141/b) or a
   single URL pointing to it (R142/c).  In the latter case, the Toolset
   has to fetch the format data.  Details of URL-fetching option are not
   documented here, but it is assumed that HTTP URLs are supported (at
   least), and fetching errors are reported.  This document does not
   specify how the format of each email part is determined, but it is
   assumed that MIME type and content would need to be analyzed.




Rousskov                Expires October 21, 2005               [Page 23]

Internet-Draft     ID Submission Toolset: Requirements        April 2005


   After accepting the draft, the Toolset uses the sender's email
   address to select the submitter identity (R57/b), checks the
   submission (R58/b), and posts the draft if the check is successful
   (R59/b).  The submitter should be notified of the outcome of the
   draft submission via email (R60/b).  Other requirements for the web
   interface (including requirements on submission preprocessing, draft
   validation, submitter authentication, draft posting, and
   notification) apply to the email interface.

   Therefore, a typical successful submission via email interface may
   result in the following exchange of messages ("T" is for "Toolset",
   "S" is for "submitter", and "A" is for "all authors and submitter"):

      S-->T: the draft version

      S<--T: a challenge to verify email access

      S-->T: a response to the challenge

      A<--T: warnings and the receipt

   where the message containing the challenge may include warnings as
   well.

   When draft validation fails, the following emails may be exchanged:

      S-->T: the draft version

      S<--T: errors and receipt

   Email parts/attachments that are not recognized as draft formats are
   not considered as draft formats.  Such parts are ignored by the
   Toolset (R107/b), except that a warning is generated for each
   unrecognizable part containing more than whitespace (R108/b).  These
   two requirements are meant to make the interface robust in the
   presence of email signatures and other parts outside of the submitter
   control.

   Hint: Toolset actions can be implemented to support email and web
   interfaces without code duplication.

   While both web and email interfaces allow for fast posting of valid
   drafts, there are significant differences between the two interfaces.
   Primary advantages of the email interface are:







Rousskov                Expires October 21, 2005               [Page 24]

Internet-Draft     ID Submission Toolset: Requirements        April 2005


   off-line mode: A submitter can do all the manual work required to
      submit a draft while being disconnected from the network.  The
      email client actually submits the draft when connectivity is
      regained.

   poor connectivity: Email systems are often better suited for
      automated transmission and re-transmission of emails when network
      connectivity is poor due to high packet loss ratios, transmission
      delays, and other problems.

   convenience: Some IETFers consider email interfaces as generally
      "more convenient".

   Primary advantages of the web interface are:

   confirmation: A submitter is given a chance to verify that automated
      extraction of meta-data produced reasonable results.  Other useful
      confirmations are possible (e.g., "Are you sure you want to post a
      version of the draft that was updated 30 seconds ago by your co-
      author?").

   validation: A submitter can validate the draft without posting it.

   quality: Non-critical warnings may prompt the submitter to postpone
      posting to improve draft quality.

   manual adjustments: The submitter can adjust extracted meta-data and
      ease Secretariat work on manually posting an unusual draft.

   meta-data: The submitter can specify optional external meta-data
      (that cannot be extracted from the draft itself).  For example, an
      email address for draft discussion can be specified.

   context help: The web interface makes it easy to provide links to
      extra information about input fields, errors, posting options,
      deadlines, etc.

   opaqueness: Files submitted via the web interface are arguably less
      susceptible to various in-transit transformations and
      misinterpretation than emails.  Emails are often mutated by mail
      agents (e.g., automated disclaimers added by senders and extra
      line feeds added by recipients).

   convenience: Some IETFers consider web interfaces as generally "more
      convenient".






Rousskov                Expires October 21, 2005               [Page 25]

Internet-Draft     ID Submission Toolset: Requirements        April 2005


17.  Implementation stages

   This section defines the Toolset implementation stages or phases.
   There are three consecutive stages, marked with letters "a", "b", or
   "c".  Earlier stage requirements must still be satisfied in later
   stages.  All requirements need to be interpreted and evaluated in the
   context of the current stage and the currently implemented features.
   For example, requirement R68 applies to the first stage but refers to
   XML draft format that may not be supported until the second stage.  A
   correct interpretation of R68 until XML support is added is "it is an
   error to submit a draft without a plain text format".

   Unless otherwise noted, requirements listed in later stages may be
   covered in earlier stages, but do not have to be.  If the
   implementers decide to add some functionality from a future stage,
   they has to be very careful to satisfy all requirements related to
   that functionality.  Unfortunately, there is no reliable, pragmatic
   way to identify "all requirements" related to a given feature.

   (a) Trial Stage: Initial basic implementation to test major concepts
      and relieve the Secretariat from handling the most common
      submission case.  This stage focuses on plain text draft
      submission via the web interface.  The trial stage should take a
      dedicated professional about 45 calendar days to finish (i.e., to
      comply with all the listed requirements).

   (b) Production Stage: Support for all major features.  Once this
      stage is completed, the Secretariat should only handle unusual
      draft submissions.  This stage should take about 100 calendar days
      to finish.  Gradual release of implemented features is possible
      and expected.

   (c) Enhancement Stage: A never-ending stage focusing on sophisticated
      features (e.g., draft interpretation or validation) that improve
      the overall quality of the Toolset.  This stage is documented
      primarily to highlight the overall direction of the Toolset; its
      requirements are often imprecise and many are expected to change.

   Implementation experience is likely to result in changes of the
   Toolset requirements.  Such changes should be documented as a part of
   stage evaluation activities.

18.  Testing

   Before letting the Toolset go live, thousands of posted drafts can be
   used to test the meta-data extraction algorithms.  Such testing can
   minimize the number of drafts being sent on for manual handling
   because of meta-data extraction failure.



Rousskov                Expires October 21, 2005               [Page 26]

Internet-Draft     ID Submission Toolset: Requirements        April 2005


   Other Toolset features may also be testable using posted drafts.  A
   simple pair of scripts can be used to test basic functionality of the
   web and email interfaces.

   Hint: The IESG may require test results before accepting the initial
   implementation.  If automated, the above approach can be used for
   regression testing as well.

19.  Security Considerations

   Removing humans from the draft submission and posting process (a.k.a.
   automation) requires adding features to make the Toolset reliable in
   the presence of denial of service (DoS) attacks and attempts to
   corrupt the draft repository.  Ideally, the Toolset needs to resist
   both premeditated malicious actions and good-intent accidents.

   This document contains specific requirements to minimize the impact
   of DoS attacks (e.g., R97).  The requirements are designed with the
   assumption that it is acceptable for the Toolset to block valid
   submissions during a DoS attack as long as the Toolset maintainers
   are notified and already posted drafts are not damaged.

   This document also contains many specific requirements related to
   detection of drafts violating IETF posting rules.  Those requirements
   help reduce the number of "bad" drafts posted by mistake but do not
   offer reliable protection from submitters with malicious intent:
   Since automated tools do not truly understand drafts (and will not do
   so in the foreseeable future), it is technically possible to post a
   rogue draft violating IETF posting rules.  For example, a draft may
   contain abstract text that makes the IETF-approved IPR statements
   following the abstract meaningless or legally non-binding.

   Stronger submitter authentication may be required to deter malicious
   submitters.  The documented authentication mechanism (i.e., read
   access to one's email) is deemed appropriate for deployment of the
   first versions of the Toolset, under close Secretariat supervision.
   Hint: to increase chances of detecting problems early enough, it may
   be a good idea to automatically inform a designated human of every
   posted submission (during initial deployment of the Toolset).

20.  IANA Considerations

   None.

21.  Compliance

   A Toolset implementation is compliant with this specification if it
   satisfies all normative requirements (i.e., the phrases marked with



Rousskov                Expires October 21, 2005               [Page 27]

Internet-Draft     ID Submission Toolset: Requirements        April 2005


   "Rnnn" as defined in Section 4).  Compliance should be evaluated for
   each implementation stage as some requirements do not apply to some
   stages.

   The IESG evaluates implementations and interprets requirements as
   necessary.

Appendix A.  Comparison with current procedures

   This section summarizes major differences between the draft
   submission approach currently in use by IETF and the proposed
   Toolset, including violations of the current IETF rules.

   o  The Toolset allows posting of XML and PDF draft formats.  The XML
      format is not currently accepted by the Secretariat, and legality
      of PDF acceptance by the Secretariat has been questioned.  XML
      sources should be accepted to enable IETF tools and participants
      to have access to raw draft meta-data and content.  They are also
      useful to the RFC Editor and, hence, it is a good idea to validate
      and get them "into the system" early.  The latter argument applies
      to PDF drafts as well, although the first Toolset versions are not
      expected to interpret PDF drafts.

   o  The Toolset may eventually generate HTML draft formats from XML
      draft sources (see R112).  Currently, IETF does not provide HTML
      draft formats -- the Secretariat does not accept HTML sources and
      no HTML is generated from accepted draft sources.  Note, however,
      that this document does not suggest that the Toolset should
      eventually accept drafts in HTML format.

   o  The Toolset defines "WGN draft" as a draft which name starts with
      "draft-ietf-".  All other drafts are treated as individual drafts.
      Currently, an IETF WG does not have to follow a single WG draft
      naming format.  Thus, the 00 version of a draft that the WG
      considers a WG draft can be posted by the Toolset without WG
      consent.  Affected WGs would have to deal with the consequences of
      their decision not to use a common naming format.  The Tools team
      suggests that IETF requires WGs to name their drafts using a
      single format to minimize confusion.  Hopefully, there are no
      humans named "Ietf" or, at least, none of them wants to auto-post
      individual drafts.

   o  For some drafts, the Toolset verifies that the submitter is
      "expected" (e.g., an author of the previous draft version or WG
      Chair).  Currently, the Secretariat does virtually no such
      verification, but an email submission interface and a human
      presence in the submission loop have apparently been sufficient to
      prevent massive automated attacks.  The change is needed to



Rousskov                Expires October 21, 2005               [Page 28]

Internet-Draft     ID Submission Toolset: Requirements        April 2005


      prevent a simple script from using the web interface to overwrite
      posted IETF drafts with junk.  Hopefully, the IETF will eventually
      have a decent authentication scheme making the submitter checks
      simpler, less rigid, and more transparent.

   o  The Toolset will automatically notify authors of posted drafts.
      Currently, neither the submitter nor any of the co-authors are
      explicitly notified when the draft is posted.  Notification is
      meant, in part, to allow co-authors to detect cases where their
      name is put on the authors list without permission.  Eventually,
      there will be a general IETF mechanism to allow 3rd parties such
      as ADs, chairs, or reviewers to register for notifications about
      draft postings.

   o  The Toolset may eventually accept compressed drafts (see R150).
      Currently, the Secretariat does not accept "zip" archives due to
      virus contamination concerns.  A proper implementation of the
      Toolset must address such concerns, while the Secretariat may
      still need to reject certain formats if they are submitted via the
      manual route.


Appendix B.  Acknowledgments

   The author gratefully acknowledges the contributions of Harald Tveit
   Alvestrand (Cisco), Brian E. Carpenter (IBM), Frank Ellermann, Bill
   Fenner (AT&T), Barbara B. Fuller (Foretec), Bruce Lilly, Henrik
   Levkowetz (Ericsson), Larry Masinter (Adobe), Keith Moore (University
   of Tennessee), Pekka Savola (Netcore), Henning Schulzrinne (Columbia
   University), and Stanislav Shalunov (Internet2).

   Special thanks to Marshall Rose for his xml2rfc tool.

Appendix C.  Change log

   RFC Editor Note: This section is to be removed during the final
   publication of the document.

   Internal WG revision control ID: $Id: id.xml,v 1.39 2005/04/20
   04:25:38 rousskov Exp $

   version 08

      *  Clarified that the secretariat does not intend to correct
         drafts submitted for manual posting.  If the draft needs
         tweaking to match submitter's intent, then the draft should be
         corrected and re-submitted.




Rousskov                Expires October 21, 2005               [Page 29]

Internet-Draft     ID Submission Toolset: Requirements        April 2005


      *  Renamed "lawful submitter" to "expected submitter" to avoid an
         incorrect implication that some kind of new legal checks are
         involved.  Without an email interface and the Secretariat in
         the loop, the submitter must still be "expected" and
         authenticated to avoid script kiddies from overwriting posted
         IETF drafts with junk.

      *  Clarified that R68 and other multi-stage requirements with
         multi-stage features are to be interpreted by ignoring features
         that will be implemented at a later stage.  For example, "text
         or XML" means just "text" until XML support is added.

      *  Meta-data extraction: Explicitly explained why meta-data
         extraction from all draft formats is necessary.

      *  Meta-data extraction: be even more explicit that the validation
         procedure described in the following section may declare an
         extracted date invalid after taking into consideration current
         (i.e., submission) time, IETF draft expiration rules, and other
         factors external to the draft.  The validation section already
         has the necessary formal rules.

      *  Added R152 to require public availability of sources instead of
         just hinting at it (Henrik Levkowetz).  Explained that to
         meaningfully satisfy availability requirements, the Toolset
         cannot rely on unavailable software.

      *  Validation: added R153-R156 to require XML format and RFC 2629+
         DTD validation.  During the first two implementation stages
         validation failures result in warnings (not fatal submission
         errors) to give IETFers (and IETF tools) enough time to get
         accustomed to the necessity of obeying XML standards.  This
         addition documents Tools team consensus reached in December
         2004.  It should have been documented earlier.

      *  Polished SourceForge "hosting" hint to clarify that we are
         suggesting to place Toolset sources there and not suggesting
         that the Toolset runs from SF servers.

      *  Added Testing section with a hint: use existing drafts (Brian
         E. Carpenter)

      *  Terminology: replaced "WG draft" with "WG-named draft" or "WGN
         draft" because not all WG-named drafts are WG drafts and we do
         not want to deal with the difference or to answer questions
         about the "wrong" terminology.





Rousskov                Expires October 21, 2005               [Page 30]

Internet-Draft     ID Submission Toolset: Requirements        April 2005


      *  Overall operation: explicitly stated that the Toolset has to be
         compatible with the Secretariat's tools for handling drafts
         with a hint that such compatibility can be achieved by
         appropriately implementing the Toolset or, in some cases, by
         modifying existing tools.

      *  Scope: Addressed concern that "there should also be provision
         for those who prefer to use troff/nroff" by explicitly stating
         that the set of requirements in this document is not
         comprehensive and other documents may add more requirements,
         including those related to other source formats.  The Tools
         team in not interested in adding troff/nroff support to the
         Toolset, especially in this document.

      *  Applied Last Call comments by Frank Ellermann.

      *  Added a hint: The Toolset implementers should not assume that
         draft formats generated by the same tool from the same source
         format have essentially the same content (Keith Moore).

      *  Updated Acknowledgments section.

      *  Did numerous minor language corrections (Henrik Levkowetz).

   version 07

      *  Added R146, a requirement to generate a warning (and,
         eventually, a complete diff) when the produced plain text does
         not match the submitted one (even if meta-data matches).

      *  Added a stage-c suggestion R148 to add a smart fuzzy match
         function to compare submitted and generated-from-XML texts.
         Hinted at using multiple xml2rfc versions to avoid warnings
         based on minor xml2rfc differences alone.

      *  Added R150 to eventually support submission of compressed
         drafts (via both web and email interfaces).  Noted that the
         Secretariat currently does not accept "zip" archives.

      *  Be explicit that CGI is not somehow mandated for server-side
         implementations.  The implementor will pick the right
         technology given all the factors, including her experience and
         available tools (Henning Schulzrinne).

      *  Added "opaqueness" to the list of web interface advantages,
         inspired by the number of folks complaining about their drafts
         being mutated by the mail system while in-transit to the draft
         archive.



Rousskov                Expires October 21, 2005               [Page 31]

Internet-Draft     ID Submission Toolset: Requirements        April 2005


   version 06

      *  Instead of using a special section to map requirements to
         Toolset implementation stages, encode the stage with each
         requirement.  The reader now knows requirement "urgency" when
         reading the requirement itself, instead of having to search for
         the requirement code in the "Implementation stages" section.
         Also, this makes it much easier to make sure that all
         requirements are "staged".

      *  Reflected Tools team concerns about HTML generation by placing
         that feature in the Enhancement implementation stage and
         explicitly mentioning that the feature may be gone before its
         implemented.

      *  Added R143/a to avoid mismatching formats: Drafts containing
         PDF or Postscript format must not be auto-posted until the
         Toolset can validate that their content matches plain text
         format.  Documented rationale and future direction for format
         acceptance rules.

      *  Defined "WG draft" as a draft which name starts with
         "draft-ietf-".  All other drafts are treated as individual
         drafts.

      *  Support (eventually) fetching draft data using an email-
         embedded URL (Stanislav Shalunov).

      *  Re-Resolved XXX37: support submitting drafts in main email
         "body", not just attachments (Stanislav Shalunov).

      *  Renamed draft submission date into draft version creation date
         and documented how creation and expiration dates are validated
         and the fact that they do not depend on submission time.

      *  Required implementation to be open-source (see R144/a).

   version 05

      *  Changed draft status to solicit editorial comments and indicate
         close-to-be-last-called state.

      *  Wrote "Security Considerations" section.

      *  Refer to ID-NITS document as an list of nits the Toolset should
         check for in R116.  Hinted that Henrik's idnits tool can be
         used for actual checks.  More checking tools can be added
         eventually.



Rousskov                Expires October 21, 2005               [Page 32]

Internet-Draft     ID Submission Toolset: Requirements        April 2005


      *  Added more submission cancellation details.  Covered both
         explicit (via submitter action) and implicit (via timeout)
         cancellations (Stanislav Shalunov).

      *  Adjusted "Global" DoS threshold from 500 to 300 and added a
         "WG" DoS threshold of 30 draft versions per day (inspired by
         Stanislav Shalunov).

      *  Illustrated what emails may be exchanged when email interface
         is in use (Stanislav Shalunov).

      *  Replaced Validation page with validate-only flag on the Upload
         page.  This helps avoid multiple well-known locations for
         similar tools and might simplify the implementation.

      *  Resolved XXX12: Simply refer to the ID-NITS document for now.

      *  Resolved XXX13, XXX14: Placed "lawful submitter" check into the
         "External meta-data" section.  Documented what submitters the
         Toolset has to identify as lawful submitters (R119 - R122).
         Others would require manual checks by the Secretariat.

      *  Resolved XXX58: Documented what the Toolset must do if no
         approval exists at the time of the WG draft submission (R123,
         R124).

      *  Removed XXX64: PDF drafts are currently allowed to be posted;
         why they are allowed is not really important.

      *  Resolved XXX66: XML draft sources are currently not allowed to
         be posted.

      *  Resolved XXX68: use draft "version" instead of "revision".
         Guidelines to Authors of Internet-Drafts document uses both.
         RFC 2026 uses "version", which is also a more popular and
         arguably more precise term.

   version 04

      *  In Check action, documented once, early, and explicitly that
         errors make auto-posting impossible but should let the
         submitter to post manually.  Removed references to vague
         "action fails" statements (Henrik Levkowetz).

      *  HTTP error codes should not be used to indicate Check action
         errors because doing so would be a layering violation and, in
         some cases, may complicate both automated and manual
         interpretation of the Toolset responses.  Rewrote R7 to require



Rousskov                Expires October 21, 2005               [Page 33]

Internet-Draft     ID Submission Toolset: Requirements        April 2005


         use of computer-friendly tags in response body instead of HTTP
         status codes.

      *  Split "Preprocessing" subsection into "Preprocessing" and
         "Processing".  The former deals with XML include PIs while the
         latter talks about plain text and HTML generation (Henrik
         Levkowetz).

      *  Removed post-if-valid functionality (R78 - R80).  Automation
         tools such as the ones that process e-mail-based submissions
         would benefit from having the knob, but they cannot use the
         Check action "as is", even with the knob, because there are
         other differences in the interface (e.g., submitter
         identification logic).  In other words, more knobs would be
         needed, which would defeat the purpose of reusing the same
         action.  When implementing web and e-mail interfaces, the
         Secretariat should still be able to reuse the base action code,
         of course.

      *  Defined compliance.

      *  Resolved XXX2: inform all authors that their draft was posted.
         Documented what information should go into the posting
         notification message/page.

      *  Resolved XXX16 and XXX57: R23 now says that an IETF IPR
         Statement and other boilerplate required for drafts according
         to RFC 3667 and 3668 (or successors) must appear in the draft
         text (Henrik Levkowetz).

      *  Resolved XXX23 and XXX62: Manual Check page and actions used by
         secretariat do not verify submitter access to e-mail.  Last
         resort option should be as flexible and forgiving as possible.

      *  Resolved XXX26: it should be possible to respond to do-you-
         have-access-to-your-email message by e-mail, in addition to
         cut-and-pasting a URL.

      *  Resolved XXX30 and XXX31: R98 now requires that when submitter
         is not an author, Secretariat has to be involved.

      *  Resolved XXX37: E-mail submissions must use attachments, even
         if there is only one draft format.  This may help to keep the
         Toolset simple (no smarts needed to isolate true draft text
         from notes in the beginning of the e-mail and signatures).

      *  Resolved XXX38: do not require special Subject: lines for
         e-mail submission to keep the Toolset simple.  Since we verify



Rousskov                Expires October 21, 2005               [Page 34]

Internet-Draft     ID Submission Toolset: Requirements        April 2005


         submitter access to e-mail, no automated spam is likely to
         result in a draft submission.

      *  Resolved XXX43, XXX44, and XXX60: making an existing draft
         obsolete is out of this document scope.  This complex feature
         can be documented and integrated later to satisfy R33.

      *  Resolved XXX49 and XXX52: the first two implementation stages
         should take 30 and 90 days, provided a single full-time person
         effort.

      *  Resolved XXX50: specify approximate effort required to complete
         the first two implementation stages.  Let the IESG and the
         Secretariat use our estimates to agree on a specific
         implementation schedule/deadlines.

      *  Resolved XXX53: lack of author e-mail causes a warning, not
         error.  See R95 for rationale.

      *  Resolved XXX11: added page count and size of primary draft
         format to meta-data because this information is useful to some
         humans and tools, and because it is usually much easier and
         cheaper to get this information in static form (e.g., some
         draft meta-data XML file) than compute it dynamically.

      *  Resolved XXX15: always allow posting of a new revision but warn
         if new revision is not expected.  Moved the corresponding R21
         from absolute to desired requirements.

      *  Resolved XXX33 and XXX59: prevent DoS attacks (absolute
         requirement R97) and warn about too-close submissions (desired
         feature R96).

      *  Defined draft version, format and primary format terms.

   2004/10/05

      *  Resolved XXX9: The Toolset should eventually offer a
         Validation-only page.

      *  Resolved XXX19: The Toolset should eventually provide the
         submitter with a way to preview the entire draft, with all
         formats.

      *  Resolved XXX40, XXX41, and XXX56: first use draft name to
         extract WG flag and WG name and hope for an IETF policy change.
         If IETF policy on naming drafts does not change soon, add code
         to query some databases to map individual-looking drafts to WG



Rousskov                Expires October 21, 2005               [Page 35]

Internet-Draft     ID Submission Toolset: Requirements        April 2005


         names.

      *  Resolved XXX46 and XXX47: store and make public both original
         and preprocessed XML sources.  Most tools are likely to use
         preprocessed XML format.  Humans and some diff tools may prefer
         the original.

   2004/09/30

      *  Added requirements R72 and R73 to handle multiple submitters
         submitting the same draft and a single submitter submitting two
         drafts at the same time, addressing XXX27.

      *  Resolved XXX7: There seems to be no good reason to support cut-
         and-paste mode.  Submission via file upload interface should
         suffice.

      *  Semi-resolved XXX53: Toolset should accept PDFs because RFC
         Editor does.  Still need to check whether the Secretariat
         accepts PDFs legally today (XXX64).

   2004/09/29

      *  Clarified and polished the "Scope" section.

      *  Updated "State of this draft" to document approaching-last-call
         state of the draft and to solicit editorial-level feedback.

   2004/09/27

      *  Marked formal toolset requirements using a Rnnn notation to (a)
         document implementation schedule, and (b) make compliant
         implementation and compliance evaluation easier.

      *  Marked informal implementation hints with a "Hint:" tag, to
         avoid possible confusion with formal requirements.

      *  Started documenting implementation schedule.  For example, only
         plain text formats are interpreted during the first stage, then
         XML support is added, then other formats.  Meanwhile, un-
         interpreted formats are accepted and posted as is as long as
         plain text version validates.

      *  Added explicit requirements for managing abandoned submissions
         (Brian E. Carpenter)

      *  Plain text or XML formats are always required (Brian E.
         Carpenter)



Rousskov                Expires October 21, 2005               [Page 36]

Internet-Draft     ID Submission Toolset: Requirements        April 2005


      *  Added XXX55: Accepting PDFs is a change of current documented
         procedures?  (Brian E. Carpenter)

      *  Added an optional "discussion address" to the external meta-
         data to help reviewers know where to send comments (inspired by
         Brian E. Carpenter suggestion; Brian wanted this to be a
         required extractable meta-data)

      *  Resolved XXX17, XXX28, and XXX29: Today, -00 WG drafts are
         approved by the Chair either before and after submission,
         depending on several factors.  Based on WG chairs feedback we
         still need to support both modes.  Thus, there is no policy
         change to talk about (and more work for the tool implementors
         to support both modes).  Still need to add specific toolset
         requirements in case there is no approval recorded.

      *  Resolved XXX18, XXX32, and XXX45: We are going to move "request
         for publication" functionality to a separate [simple] tool that
         works with an existing/posted draft.

      *  Resolved XXX6: We are going to move the "withdraw this ID"
         functionality desired by Secretariat to a separate [simple]
         tool that works with an existing/posted draft.

      *  Added a "comment" field to the Adjust page so that the
         submitter can tell Secretariat why manual action is necessary.
         This may both save time Secretariat and let them improve the
         toolset to minimize manual submissions (including fixing
         validation/extraction bugs).

      *  Added the Receipt page to the list of documented pages, for
         completeness.

      *  Emphasized that common sequence of pages to go through is as
         short as possible for a given set of features, and that "page"
         means "distinct dialog", not necessarily a "distinct URL".
         Some reviewers thought "there are too many pages".

   2004/09/20

      *  Added "E-mail Interface" section to document how key toolset
         functionality can be accessed via e-mail.  Compared e-mail and
         web interfaces.  (Suggested by Pekka Savola)

      *  Split "WG ID" meta-data into "WG ID" and "WG Flag".  The former
         seems to be easy to extract from the draft name.  Noted that
         the latter (i.e., "this is a working group draft" status)
         cannot be inferred from some WG drafts (Pekka Savola).



Rousskov                Expires October 21, 2005               [Page 37]

Internet-Draft     ID Submission Toolset: Requirements        April 2005


      *  Added "List of drafts obsoleted by this draft" external meta-
         data item (Pekka Savola), but questioned whether we are ready
         to automate that.

      *  Added more conflicting opinions to XXX15 and proposed a
         solution.

      *  Added "Preprocessing" subsection to reflect the discussion on
         how/whether handle include PIs in XML draft sources.  Needs
         more discussion/work.

      *  Further clarified how an author can request the draft revision
         to be published (i.e., forwarded to the IESG or RFC Editor for
         review and publication as an RFC or BCP).  It's just a checkbox
         on the web interface.  Raised doubts we can pull this off (see
         XXX45).

      *  Suggested in XXX2 that we would inform all authors but not seek
         their consent (except for the submitter) when posting their
         draft.

   2004/09/09

      *  Polished high-level page/action summary and replaced text-based
         steps diagram with something that looks more like a diagram.

      *  Added "Comparison with current procedures" section placeholder
         for summarizing what this draft improves/changes/violates.

      *  Frequent draft updates is not always a good thing (Henrik
         Levkowetz)

      *  Added ideas regarding frequent draft updates warnings
         (Stanislav Shalunov)

      *  Added "State of this draft" section to encourage review.

   2004/09/02

      *  Documented all major toolset pages and corresponding actions.

   2004/09/01

      *  Deleted all primary modes except for what used to be called
         "Posting Automation".  Focus on the latter and mention other
         modes as exceptions or side-effects.





Rousskov                Expires October 21, 2005               [Page 38]

Internet-Draft     ID Submission Toolset: Requirements        April 2005


      *  Changed draft outline and depth to describe specific submission
         steps and corresponding web pages rather than more general
         ideas/requirements.

      *  Assume, for now, that Chair authorization of WG draft work must
         exist for WG draft to be published.  This needs to be
         documented and perhaps relaxed to allow post-submission
         approvals.

   2004/08/30

      *  Use "toolset" instead of a less accurate "interfaces" in the
         draft title and throughout the text (Henrik Levkowetz)

      *  Use "post" instead of "publish"" in the draft title and
         throughout the text (Barbara B. Fuller and Larry Masinter)

      *  Nits, clarifications, data-points (Harald Tveit Alvestrand,
         Henrik Levkowetz, Larry Masinter, and Barbara B. Fuller for the
         Secretariat)

   2004/08/25

      *  Initial revision.


22.  References

22.1  Normative References

   [RFC2629]  Rose, M., "Writing I-Ds and RFCs using XML", RFC 2629,
              June 1999.

   [RFC3978]  Bradner, S., "IETF Rights in Contributions", BCP 78,
              RFC 3978, March 2005.

   [RFC3979]  Bradner, S., "Intellectual Property Rights in IETF
              Technology", BCP 79, RFC 3979, March 2005.

   [XML]      World Wide Web Consortium, "Extensible Markup Language
              (XML) 1.0", W3C XML, February 1998,
              <http://www.w3.org/TR/1998/REC-xml-19980210>.

22.2  Informative References

   [I-D.mrose-writing-rfcs]
              Rose, M., "Writing I-Ds and RFCs using XML (revised)",
              draft-mrose-writing-rfcs (work in progress), April 2004.



Rousskov                Expires October 21, 2005               [Page 39]

Internet-Draft     ID Submission Toolset: Requirements        April 2005


   [secretariat]
              "Private communication with the IETF Secretariat", 2004.

   [OSI]      "Open Source Licenses Approved by the Open Source
              Initiative", 2004.


Author's Address

   Alex Rousskov
   The Measurement Factory

   Email: rousskov@measurement-factory.com
   URI:   http://www.measurement-factory.com/





































Rousskov                Expires October 21, 2005               [Page 40]

Internet-Draft     ID Submission Toolset: Requirements        April 2005


Intellectual Property Statement

   The IETF takes no position regarding the validity or scope of any
   Intellectual Property Rights or other rights that might be claimed to
   pertain to the implementation or use of the technology described in
   this document or the extent to which any license under such rights
   might or might not be available; nor does it represent that it has
   made any independent effort to identify any such rights.  Information
   on the procedures with respect to rights in RFC documents can be
   found in BCP 78 and BCP 79.

   Copies of IPR disclosures made to the IETF Secretariat and any
   assurances of licenses to be made available, or the result of an
   attempt made to obtain a general license or permission for the use of
   such proprietary rights by implementers or users of this
   specification can be obtained from the IETF on-line IPR repository at
   http://www.ietf.org/ipr.

   The IETF invites any interested party to bring to its attention any
   copyrights, patents or patent applications, or other proprietary
   rights that may cover technology that may be required to implement
   this standard.  Please address the information to the IETF at
   ietf-ipr@ietf.org.


Disclaimer of Validity

   This document and the information contained herein are provided on an
   "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS
   OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY AND THE INTERNET
   ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS OR IMPLIED,
   INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE
   INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED
   WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.


Copyright Statement

   Copyright (C) The Internet Society (2005).  This document is subject
   to the rights, licenses and restrictions contained in BCP 78, and
   except as set forth therein, the authors retain all their rights.


Acknowledgment

   Funding for the RFC Editor function is currently provided by the
   Internet Society.




Rousskov                Expires October 21, 2005               [Page 41]


------------L030Vg3Izy9SR0jM9cpWro
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

_______________________________________________
Tools-team mailing list
Tools-team@ietf.org
https://www1.ietf.org/mailman/listinfo/tools-team

------------L030Vg3Izy9SR0jM9cpWro--





From tools-team-bounces@ietf.org Wed Apr 20 00:48:22 2005
Received: from localhost.localdomain ([127.0.0.1] helo=megatron.ietf.org)
	by megatron.ietf.org with esmtp (Exim 4.32)
	id 1DO78Q-0003uC-E2; Wed, 20 Apr 2005 00:48:22 -0400
Received: from odin.ietf.org ([132.151.1.176] helo=ietf.org)
	by megatron.ietf.org with esmtp (Exim 4.32) id 1DO78O-0003tp-9I
	for tools-team@megatron.ietf.org; Wed, 20 Apr 2005 00:48:20 -0400
Received: from ietf-mx.ietf.org (ietf-mx.ietf.org [132.151.6.1])
	by ietf.org (8.9.1a/8.9.1a) with ESMTP id AAA26223
	for <tools-team@ietf.org>; Wed, 20 Apr 2005 00:48:16 -0400 (EDT)
Received: from measurement-factory.com ([206.168.0.5])
	by ietf-mx.ietf.org with esmtp (Exim 4.33) id 1DO7JW-0004Rz-L3
	for tools-team@ietf.org; Wed, 20 Apr 2005 00:59:52 -0400
Received: from localhost.rousskov.org (localhost [127.0.0.1])
	by measurement-factory.com (8.12.9/8.12.9) with ESMTP id j3K4mG3a027248;
	Tue, 19 Apr 2005 22:48:17 -0600 (MDT)
	(envelope-from rousskov@measurement-factory.com)
Date: Tue, 19 Apr 2005 22:47:12 -0600
To: "Henrik Levkowetz" <henrik@levkowetz.com>
References: <426411C7.6020901@levkowetz.com>
	<opspf9nhwqiz3etf0c9082f7@pail.measurement-factory.com>
	<426440C1.3040900@levkowetz.com>
	<opspgpjvf0iz3etf0c9082f7@localhost.rousskov.org>
	<4264B615.1060903@levkowetz.com>
From: "Alex Rousskov" <rousskov@measurement-factory.com>
Organization: The Measurement Factory
Content-Type: text/plain; format=flowed; delsp=yes; charset=us-ascii
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Message-ID: <opspikwyt3iz3etf0c9082f7@localhost.rousskov.org>
In-Reply-To: <4264B615.1060903@levkowetz.com>
User-Agent: Opera M2/7.54 (FreeBSD, build 955)
X-Spam-Score: 0.0 (/)
X-Scan-Signature: 50a516d93fd399dc60588708fd9a3002
Content-Transfer-Encoding: 8bit
Cc: IETF TOOLS <tools-team@ietf.org>
Subject: [Tools-team] Re: Language review of
	draft-ietf-tools-draft-submission-08
X-BeenThere: tools-team@ietf.org
X-Mailman-Version: 2.1.5
Precedence: list
List-Id: "The purpose of the TOOLS team is to provide IETF feedback and
	guidance during the development of software tools to support
	various parts of IETF activities." <tools-team.ietf.org>
List-Unsubscribe: <https://www1.ietf.org/mailman/listinfo/tools-team>,
	<mailto:tools-team-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www1.ietf.org/pipermail/tools-team>
List-Post: <mailto:tools-team@ietf.org>
List-Help: <mailto:tools-team-request@ietf.org?subject=help>
List-Subscribe: <https://www1.ietf.org/mailman/listinfo/tools-team>,
	<mailto:tools-team-request@ietf.org?subject=subscribe>
Sender: tools-team-bounces@ietf.org
Errors-To: tools-team-bounces@ietf.org

On Tue, 2005/04/19 (MDT), <henrik@levkowetz.com> wrote:

> Sounds good.  I believe Brian want to bring it before the IESG at their
> Thursday telechat, so the sooner the better.

Done. Thanks for all the dirty work you did to improve the last version!  
According to the diff, I have applied all your changes with the exception  
of the following corrections. We can still add them via RFC Editor Notes  
if needed...

-   Submitter authentication and submission authorization is in scope.
+   Submitter authentication and submission authorization are in scope.

The native speakers assured me that the original "are" is correct here :-).

     Automated posting: If the submitter decides to proceed with automated
        posting from the Check page, the system authenticates the
-      submitter (and may also check whether the submitter is allowed to
-      post the draft, if and when such checks are instituted).
+      submitter and may also check whether the submitter is allowed to
+      post the draft.

I added your "may" which, I hope, introduces enough uncertainty. I did not  
add "if and when" because it is an informal introductory text, and it  
sounded like we are creating some additional vague requirements or  
dependencies here (that might get in conflict with formal requirements).

-  Cancellation of previously posted drafts is out of this document scope.
+  Cancellation of posted drafts is out of this document scope.

The term "posted draft" is defined in the document and implies that all  
"posted drafts" are "previosuly posted". Perhaps I am missing some  
important caveat here.

     Furthermore, drafts containing PDF or Postscript
-   format versions must ...
+   format must ...

The term "draft version" is defined and is different from the (also  
defined) "draft format" term. I wanted to avoid the format/version  
confusion here.

-         to RFC 3978 and 3979 (or successors) must appear in the draft
+         to RFC 3667 and 3668 (or successors) must appear in the draft

The above was in the old "Change log" entry and it seems appropriate to  
keep the original text.

Alex.

_______________________________________________
Tools-team mailing list
Tools-team@ietf.org
https://www1.ietf.org/mailman/listinfo/tools-team



From tools-team-bounces@ietf.org Wed Apr 20 02:10:29 2005
Received: from localhost.localdomain ([127.0.0.1] helo=megatron.ietf.org)
	by megatron.ietf.org with esmtp (Exim 4.32)
	id 1DO8Ps-0003l2-NX; Wed, 20 Apr 2005 02:10:28 -0400
Received: from odin.ietf.org ([132.151.1.176] helo=ietf.org)
	by megatron.ietf.org with esmtp (Exim 4.32) id 1DO8Po-0003kt-0G
	for tools-team@megatron.ietf.org; Wed, 20 Apr 2005 02:10:24 -0400
Received: from ietf-mx.ietf.org (ietf-mx.ietf.org [132.151.6.1])
	by ietf.org (8.9.1a/8.9.1a) with ESMTP id CAA10542
	for <tools-team@ietf.org>; Wed, 20 Apr 2005 02:10:23 -0400 (EDT)
Received: from pne-smtpout2-sn2.hy.skanova.net ([81.228.8.164])
	by ietf-mx.ietf.org with esmtp (Exim 4.33) id 1DO8ay-0006Zj-0p
	for tools-team@ietf.org; Wed, 20 Apr 2005 02:21:56 -0400
Received: from shiraz.levkowetz.com (213.64.173.70) by
	pne-smtpout2-sn2.hy.skanova.net (7.1.026.7)
	id 42650A660002999C; Wed, 20 Apr 2005 08:10:04 +0200
Received: from localhost ([127.0.0.1])
	by shiraz.levkowetz.com with esmtp (Exim 4.50)
	id 1DO8PT-0007KO-VO; Wed, 20 Apr 2005 08:10:04 +0200
Message-ID: <4265F23B.5050605@levkowetz.com>
Date: Wed, 20 Apr 2005 08:10:03 +0200
From: Henrik Levkowetz <henrik@levkowetz.com>
User-Agent: Mozilla Thunderbird 1.0 (Macintosh/20041206)
X-Accept-Language: en-us, en
MIME-Version: 1.0
To: Alex Rousskov <rousskov@measurement-factory.com>,
	IETF TOOLS <tools-team@ietf.org>
References: <426411C7.6020901@levkowetz.com>
	<opspf9nhwqiz3etf0c9082f7@pail.measurement-factory.com>
	<426440C1.3040900@levkowetz.com>
	<opspgpjvf0iz3etf0c9082f7@localhost.rousskov.org>
	<4264B615.1060903@levkowetz.com>
	<opspikwyt3iz3etf0c9082f7@localhost.rousskov.org>
In-Reply-To: <opspikwyt3iz3etf0c9082f7@localhost.rousskov.org>
X-Enigmail-Version: 0.89.5.0
X-Enigmail-Supports: pgp-inline, pgp-mime
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 7bit
X-SA-Exim-Connect-IP: 127.0.0.1
X-SA-Exim-Mail-From: henrik@levkowetz.com
X-SA-Exim-Scanned: No (on shiraz.levkowetz.com);
	SAEximRunCond expanded to false
X-Spam-Score: 0.0 (/)
X-Scan-Signature: d0bdc596f8dd1c226c458f0b4df27a88
Content-Transfer-Encoding: 7bit
Cc: 
Subject: [Tools-team] Re: Language review of
	draft-ietf-tools-draft-submission-08
X-BeenThere: tools-team@ietf.org
X-Mailman-Version: 2.1.5
Precedence: list
List-Id: "The purpose of the TOOLS team is to provide IETF feedback and
	guidance during the development of software tools to support
	various parts of IETF activities." <tools-team.ietf.org>
List-Unsubscribe: <https://www1.ietf.org/mailman/listinfo/tools-team>,
	<mailto:tools-team-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www1.ietf.org/pipermail/tools-team>
List-Post: <mailto:tools-team@ietf.org>
List-Help: <mailto:tools-team-request@ietf.org?subject=help>
List-Subscribe: <https://www1.ietf.org/mailman/listinfo/tools-team>,
	<mailto:tools-team-request@ietf.org?subject=subscribe>
Sender: tools-team-bounces@ietf.org
Errors-To: tools-team-bounces@ietf.org

Hi Alex,

On 2005-04-20 6:47 am Alex Rousskov said the following:
> On Tue, 2005/04/19 (MDT), <henrik@levkowetz.com> wrote:
> 
>> Sounds good.  I believe Brian want to bring it before the IESG at their
>> Thursday telechat, so the sooner the better.
> 
> Done. Thanks for all the dirty work you did to improve the last version!  
> According to the diff, I have applied all your changes with the exception  
> of the following corrections. We can still add them via RFC Editor Notes  
> if needed...

Sure, no problem.

> -   Submitter authentication and submission authorization is in scope.
> +   Submitter authentication and submission authorization are in scope.
> 
> The native speakers assured me that the original "are" is correct here :-).

Hmm.  I wonder if it could be a difference between British and American
then.  Both of the sub-items are singular, so I really don't see how 'are'
is appropriate.  But it's not a big point.

>      Automated posting: If the submitter decides to proceed with automated
>         posting from the Check page, the system authenticates the
> -      submitter (and may also check whether the submitter is allowed to
> -      post the draft, if and when such checks are instituted).
> +      submitter and may also check whether the submitter is allowed to
> +      post the draft.
> 
> I added your "may" which, I hope, introduces enough uncertainty. I did not  
> add "if and when" because it is an informal introductory text, and it  
> sounded like we are creating some additional vague requirements or  
> dependencies here (that might get in conflict with formal requirements).

That's fine.

> -  Cancellation of previously posted drafts is out of this document scope.
> +  Cancellation of posted drafts is out of this document scope.
> 
> The term "posted draft" is defined in the document and implies that all  
> "posted drafts" are "previosuly posted". Perhaps I am missing some  
> important caveat here.

This was simply a matter of turning what's correct but not obvious into
what's clear, too.  Sloppy reading could lead to the assumption that one
were including the draft of the current submission here, which doesn't
make sense, but I know how some people read text...

>      Furthermore, drafts containing PDF or Postscript
> -   format versions must ...
> +   format must ...
> 
> The term "draft version" is defined and is different from the (also  
> defined) "draft format" term. I wanted to avoid the format/version  
> confusion here.

Then some other change is needed.  The language is not good as it is.

> -         to RFC 3978 and 3979 (or successors) must appear in the draft
> +         to RFC 3667 and 3668 (or successors) must appear in the draft
> 
> The above was in the old "Change log" entry and it seems appropriate to  
> keep the original text.

Hmm - I thought I left the change log alone ?  Well, it was after midnight
when I got there, so --- Ahh! No, that's right, I did a global search and
replace of those number.  Right.  Fine, then.


	Henrik

_______________________________________________
Tools-team mailing list
Tools-team@ietf.org
https://www1.ietf.org/mailman/listinfo/tools-team



From tools-team-bounces@ietf.org Wed Apr 20 11:02:32 2005
Received: from localhost.localdomain ([127.0.0.1] helo=megatron.ietf.org)
	by megatron.ietf.org with esmtp (Exim 4.32)
	id 1DOGim-0004XH-3i; Wed, 20 Apr 2005 11:02:32 -0400
Received: from odin.ietf.org ([132.151.1.176] helo=ietf.org)
	by megatron.ietf.org with esmtp (Exim 4.32) id 1DOGik-0004XC-2W
	for tools-team@megatron.ietf.org; Wed, 20 Apr 2005 11:02:30 -0400
Received: from ietf-mx.ietf.org (ietf-mx.ietf.org [132.151.6.1])
	by ietf.org (8.9.1a/8.9.1a) with ESMTP id LAA17684
	for <tools-team@ietf.org>; Wed, 20 Apr 2005 11:02:28 -0400 (EDT)
Received: from measurement-factory.com ([206.168.0.5])
	by ietf-mx.ietf.org with esmtp (Exim 4.33) id 1DOGty-0005il-I0
	for tools-team@ietf.org; Wed, 20 Apr 2005 11:14:07 -0400
Received: from pail.measurement-factory.com (nat.measurement-factory.com
	[206.168.0.3])
	by measurement-factory.com (8.12.9/8.12.9) with ESMTP id j3KF2R3a043560;
	Wed, 20 Apr 2005 09:02:27 -0600 (MDT)
	(envelope-from rousskov@measurement-factory.com)
Date: Wed, 20 Apr 2005 09:01:18 -0600
To: "Henrik Levkowetz" <henrik@levkowetz.com>,
	"IETF TOOLS" <tools-team@ietf.org>
References: <426411C7.6020901@levkowetz.com>
	<opspf9nhwqiz3etf0c9082f7@pail.measurement-factory.com>
	<426440C1.3040900@levkowetz.com>
	<opspgpjvf0iz3etf0c9082f7@localhost.rousskov.org>
	<4264B615.1060903@levkowetz.com>
	<opspikwyt3iz3etf0c9082f7@localhost.rousskov.org>
	<4265F23B.5050605@levkowetz.com>
From: "Alex Rousskov" <rousskov@measurement-factory.com>
Organization: The Measurement Factory
Content-Type: text/plain; format=flowed; delsp=yes; charset=us-ascii
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Message-ID: <opspjdcgwhiz3etf0c9082f7@pail.measurement-factory.com>
In-Reply-To: <4265F23B.5050605@levkowetz.com>
User-Agent: Opera M2/7.54 (FreeBSD, build 955)
X-Spam-Score: 0.0 (/)
X-Scan-Signature: 52e1467c2184c31006318542db5614d5
Content-Transfer-Encoding: 8bit
Cc: 
Subject: [Tools-team] Re: Language review of
	draft-ietf-tools-draft-submission-08
X-BeenThere: tools-team@ietf.org
X-Mailman-Version: 2.1.5
Precedence: list
List-Id: "The purpose of the TOOLS team is to provide IETF feedback and
	guidance during the development of software tools to support
	various parts of IETF activities." <tools-team.ietf.org>
List-Unsubscribe: <https://www1.ietf.org/mailman/listinfo/tools-team>,
	<mailto:tools-team-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www1.ietf.org/pipermail/tools-team>
List-Post: <mailto:tools-team@ietf.org>
List-Help: <mailto:tools-team-request@ietf.org?subject=help>
List-Subscribe: <https://www1.ietf.org/mailman/listinfo/tools-team>,
	<mailto:tools-team-request@ietf.org?subject=subscribe>
Sender: tools-team-bounces@ietf.org
Errors-To: tools-team-bounces@ietf.org

On Wed, 2005/04/20 (MDT), <henrik@levkowetz.com> wrote:

>> -   Submitter authentication and submission authorization is in scope.
>> +   Submitter authentication and submission authorization are in scope.
>>
>> The native speakers assured me that the original "are" is correct here  
>> :-).
>
> Hmm.  I wonder if it could be a difference between British and American
> then.  Both of the sub-items are singular, so I really don't see how  
> 'are' is appropriate.  But it's not a big point.

I was tought that (A and B) are always "multiple" while (A or B) is  
"singular"
iff B is singular. It makes sense in some other languages I pretend to  
know,
but I am sure it is not universal.  Let's see what the RFC Editor's opinion
on  this important subject is :-).

>>      Furthermore, drafts containing PDF or Postscript
>> -   format versions must ...
>> +   format must ...
>>
>> The term "draft version" is defined and is different from the (also
>> defined) "draft format" term. I wanted to avoid the format/version
>> confusion here.
>
> Then some other change is needed.  The language is not good as it is.

Yes, I agree that it sounds awkward. We can fix it during "Authors 48  
hours"
if we are lucky enough to avoid another revision.

Thanks,

Alex.

_______________________________________________
Tools-team mailing list
Tools-team@ietf.org
https://www1.ietf.org/mailman/listinfo/tools-team



From tools-team-bounces@ietf.org Wed Apr 20 12:49:26 2005
Received: from localhost.localdomain ([127.0.0.1] helo=megatron.ietf.org)
	by megatron.ietf.org with esmtp (Exim 4.32)
	id 1DOIOE-0002pz-BZ; Wed, 20 Apr 2005 12:49:26 -0400
Received: from odin.ietf.org ([132.151.1.176] helo=ietf.org)
	by megatron.ietf.org with esmtp (Exim 4.32) id 1DOIOC-0002pr-BR
	for tools-team@megatron.ietf.org; Wed, 20 Apr 2005 12:49:24 -0400
Received: from ietf-mx.ietf.org (ietf-mx.ietf.org [132.151.6.1])
	by ietf.org (8.9.1a/8.9.1a) with ESMTP id MAA26571
	for <tools-team@ietf.org>; Wed, 20 Apr 2005 12:49:21 -0400 (EDT)
Received: from pne-smtpout1-sn1.fre.skanova.net ([81.228.11.98])
	by ietf-mx.ietf.org with esmtp (Exim 4.33) id 1DOIZQ-0000cs-DH
	for tools-team@ietf.org; Wed, 20 Apr 2005 13:01:02 -0400
Received: from shiraz.levkowetz.com (213.64.173.70) by
	pne-smtpout1-sn1.fre.skanova.net (7.1.026.7)
	id 42650A3B00059087 for tools-team@ietf.org;
	Wed, 20 Apr 2005 18:49:10 +0200
Received: from localhost ([127.0.0.1])
	by shiraz.levkowetz.com with esmtp (Exim 4.50) id 1DOINw-00006n-11
	for tools-team@ietf.org; Wed, 20 Apr 2005 18:49:08 +0200
Message-ID: <42668804.2020903@levkowetz.com>
Date: Wed, 20 Apr 2005 18:49:08 +0200
From: Henrik Levkowetz <henrik@levkowetz.com>
User-Agent: Mozilla Thunderbird 1.0 (Macintosh/20041206)
X-Accept-Language: en-us, en
MIME-Version: 1.0
To: IETF TOOLS <tools-team@ietf.org>
X-Enigmail-Version: 0.89.5.0
X-Enigmail-Supports: pgp-inline, pgp-mime
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 7bit
X-SA-Exim-Connect-IP: 127.0.0.1
X-SA-Exim-Mail-From: henrik@levkowetz.com
X-SA-Exim-Scanned: No (on shiraz.levkowetz.com);
	SAEximRunCond expanded to false
X-Spam-Score: 0.0 (/)
X-Scan-Signature: d17f825e43c9aed4fd65b7edddddec89
Content-Transfer-Encoding: 7bit
Subject: [Tools-team] Missed teleconference call today
X-BeenThere: tools-team@ietf.org
X-Mailman-Version: 2.1.5
Precedence: list
List-Id: "The purpose of the TOOLS team is to provide IETF feedback and
	guidance during the development of software tools to support
	various parts of IETF activities." <tools-team.ietf.org>
List-Unsubscribe: <https://www1.ietf.org/mailman/listinfo/tools-team>,
	<mailto:tools-team-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www1.ietf.org/pipermail/tools-team>
List-Post: <mailto:tools-team@ietf.org>
List-Help: <mailto:tools-team-request@ietf.org?subject=help>
List-Subscribe: <https://www1.ietf.org/mailman/listinfo/tools-team>,
	<mailto:tools-team-request@ietf.org?subject=subscribe>
Sender: tools-team-bounces@ietf.org
Errors-To: tools-team-bounces@ietf.org


My apologies for missing the call today.  I was speaking at a conference,
and the schedule indicated I should be able to make it home for the call,
but the realities turned out very differently, and I didn't have the
conference call details with me so I could let you know :-( .

Next call will be next Wednesday, at the usual time.  If there is
something urgent before then, the mailing list is always here :-)


	Henrik

_______________________________________________
Tools-team mailing list
Tools-team@ietf.org
https://www1.ietf.org/mailman/listinfo/tools-team



From tools-team-bounces@ietf.org Fri Apr 22 16:30:52 2005
Received: from localhost.localdomain ([127.0.0.1] helo=megatron.ietf.org)
	by megatron.ietf.org with esmtp (Exim 4.32)
	id 1DP4nc-00036Z-DG; Fri, 22 Apr 2005 16:30:52 -0400
Received: from odin.ietf.org ([132.151.1.176] helo=ietf.org)
	by megatron.ietf.org with esmtp (Exim 4.32) id 1DP4nb-000366-1h
	for tools-team@megatron.ietf.org; Fri, 22 Apr 2005 16:30:51 -0400
Received: from ietf-mx.ietf.org (ietf-mx.ietf.org [132.151.6.1])
	by ietf.org (8.9.1a/8.9.1a) with ESMTP id QAA29721
	for <tools-team@ietf.org>; Fri, 22 Apr 2005 16:30:49 -0400 (EDT)
Received: from exprod6og8.obsmtp.com ([64.18.1.128] helo=psmtp.com)
	by ietf-mx.ietf.org with smtp (Exim 4.33) id 1DP4zH-0007ku-8V
	for tools-team@ietf.org; Fri, 22 Apr 2005 16:42:56 -0400
Received: from source ([192.150.20.142]) by exprod6ob8.obsmtp.com
	([64.18.5.12]) with SMTP; Fri, 22 Apr 2005 13:30:45 PDT
Received: from inner-relay-3.eur.adobe.com (inner-relay-3b [10.128.4.236])
	by outbound-smtp-2.corp.adobe.com (8.12.10/8.12.10) with ESMTP id
	j3MKalTK021850
	for <tools-team@ietf.org>; Fri, 22 Apr 2005 13:36:47 -0700 (PDT)
Received: from calsj-dev (calsj-dev.corp.adobe.com [153.32.1.193])
	by inner-relay-3.eur.adobe.com (8.12.10/8.12.9) with ESMTP id
	j3MKTqeK011347
	for <tools-team@ietf.org>; Fri, 22 Apr 2005 13:30:44 -0700 (PDT)
Received: from calsj-dev (localhost [127.0.0.1]) by mailsj-v1.corp.adobe.com
	(iPlanet Messaging Server 5.2 HotFix 2.02 (built Oct 21 2004))
	with ESMTP id <0IFD00G1H7MT0I@mailsj-v1.corp.adobe.com> for
	tools-team@ietf.org; Fri, 22 Apr 2005 13:30:29 -0700 (PDT)
Received: from MasinterT40 (c-130-169.corp.adobe.com [153.32.130.169])
	by mailsj-v1.corp.adobe.com
	(iPlanet Messaging Server 5.2 HotFix 2.02 (built Oct 21 2004))
	with ESMTP id <0IFD001UE7MT4F@mailsj-v1.corp.adobe.com> for
	tools-team@ietf.org; Fri, 22 Apr 2005 13:30:29 -0700 (PDT)
Date: Fri, 22 Apr 2005 13:30:29 -0700
From: Larry Masinter <LMM@acm.org>
To: "'IETF TOOLS'" <tools-team@ietf.org>
Message-id: <0IFD001UF7MT4F@mailsj-v1.corp.adobe.com>
MIME-version: 1.0
X-MIMEOLE: Produced By Microsoft MimeOLE V6.00.2900.2180
X-Mailer: Microsoft Office Outlook, Build 11.0.6353
Content-type: text/plain; charset=us-ascii
Content-transfer-encoding: 7BIT
Thread-index: AcVHS2+TeEvTspK3R4KIy4U9OruPwwABFuVgAAp62dA=
X-Spam-Score: 0.0 (/)
X-Scan-Signature: 68c8cc8a64a9d0402e43b8eee9fc4199
Content-Transfer-Encoding: 7BIT
Subject: [Tools-team] FW: [xml2rfc] 1.30pre1 patch + pending issues
X-BeenThere: tools-team@ietf.org
X-Mailman-Version: 2.1.5
Precedence: list
List-Id: "The purpose of the TOOLS team is to provide IETF feedback and
	guidance during the development of software tools to support
	various parts of IETF activities." <tools-team.ietf.org>
List-Unsubscribe: <https://www1.ietf.org/mailman/listinfo/tools-team>,
	<mailto:tools-team-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www1.ietf.org/pipermail/tools-team>
List-Post: <mailto:tools-team@ietf.org>
List-Help: <mailto:tools-team-request@ietf.org?subject=help>
List-Subscribe: <https://www1.ietf.org/mailman/listinfo/tools-team>,
	<mailto:tools-team-request@ietf.org?subject=subscribe>
Sender: tools-team-bounces@ietf.org
Errors-To: tools-team-bounces@ietf.org

There was a discussion on XML2RFC, but I think perhaps
it might belong in the submissions draft instead...
that no update to the XML processing software
shouldn't result in change in wording or meaning,
so that the author's intent is clear from the archival
record.

If you like this idea, I can try to figure out where/how
to word it in the draft.

Larry


_______________________________________________
Tools-team mailing list
Tools-team@ietf.org
https://www1.ietf.org/mailman/listinfo/tools-team



From tools-team-bounces@ietf.org Fri Apr 22 18:35:27 2005
Received: from localhost.localdomain ([127.0.0.1] helo=megatron.ietf.org)
	by megatron.ietf.org with esmtp (Exim 4.32)
	id 1DP6kB-0005iT-5Y; Fri, 22 Apr 2005 18:35:27 -0400
Received: from odin.ietf.org ([132.151.1.176] helo=ietf.org)
	by megatron.ietf.org with esmtp (Exim 4.32) id 1DP6k7-0005hy-B1
	for tools-team@megatron.ietf.org; Fri, 22 Apr 2005 18:35:25 -0400
Received: from ietf-mx.ietf.org (ietf-mx.ietf.org [132.151.6.1])
	by ietf.org (8.9.1a/8.9.1a) with ESMTP id SAA10708
	for <tools-team@ietf.org>; Fri, 22 Apr 2005 18:35:20 -0400 (EDT)
Received: from pne-smtpout2-sn2.hy.skanova.net ([81.228.8.164])
	by ietf-mx.ietf.org with esmtp (Exim 4.33) id 1DP6vm-0002dX-4T
	for tools-team@ietf.org; Fri, 22 Apr 2005 18:47:29 -0400
Received: from shiraz.levkowetz.com (213.64.173.70) by
	pne-smtpout2-sn2.hy.skanova.net (7.1.026.7)
	id 42662CF1000C607C; Sat, 23 Apr 2005 00:35:04 +0200
Received: from localhost ([127.0.0.1])
	by shiraz.levkowetz.com with esmtp (Exim 4.50)
	id 1DP6jo-0006Ch-KD; Sat, 23 Apr 2005 00:35:04 +0200
Message-ID: <42697C18.2050509@levkowetz.com>
Date: Sat, 23 Apr 2005 00:35:04 +0200
From: Henrik Levkowetz <henrik@levkowetz.com>
User-Agent: Mozilla Thunderbird 1.0 (Macintosh/20041206)
X-Accept-Language: en-us, en
MIME-Version: 1.0
To: Larry Masinter <LMM@acm.org>
Subject: Re: [Tools-team] FW: [xml2rfc] 1.30pre1 patch + pending issues
References: <0IFD001UF7MT4F@mailsj-v1.corp.adobe.com>
In-Reply-To: <0IFD001UF7MT4F@mailsj-v1.corp.adobe.com>
X-Enigmail-Version: 0.89.5.0
X-Enigmail-Supports: pgp-inline, pgp-mime
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 7bit
X-SA-Exim-Connect-IP: 127.0.0.1
X-SA-Exim-Mail-From: henrik@levkowetz.com
X-SA-Exim-Scanned: No (on shiraz.levkowetz.com);
	SAEximRunCond expanded to false
X-Spam-Score: 0.0 (/)
X-Scan-Signature: 798b2e660f1819ae38035ac1d8d5e3ab
Content-Transfer-Encoding: 7bit
Cc: 'IETF TOOLS' <tools-team@ietf.org>
X-BeenThere: tools-team@ietf.org
X-Mailman-Version: 2.1.5
Precedence: list
List-Id: "The purpose of the TOOLS team is to provide IETF feedback and
	guidance during the development of software tools to support
	various parts of IETF activities." <tools-team.ietf.org>
List-Unsubscribe: <https://www1.ietf.org/mailman/listinfo/tools-team>,
	<mailto:tools-team-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www1.ietf.org/pipermail/tools-team>
List-Post: <mailto:tools-team@ietf.org>
List-Help: <mailto:tools-team-request@ietf.org?subject=help>
List-Subscribe: <https://www1.ietf.org/mailman/listinfo/tools-team>,
	<mailto:tools-team-request@ietf.org?subject=subscribe>
Sender: tools-team-bounces@ietf.org
Errors-To: tools-team-bounces@ietf.org

on 2005-04-22 10:30 pm Larry Masinter said the following:
> There was a discussion on XML2RFC, but I think perhaps
> it might belong in the submissions draft instead...
> that no update to the XML processing software
> shouldn't result in change in wording or meaning,
> so that the author's intent is clear from the archival
> record.
> 
> If you like this idea, I can try to figure out where/how
> to word it in the draft.

Well -- since we save both the .txt and .xml version, and
since we can't influence what will happen if somebody runs
a future version of xml2rfc on the archived .xml, I'm not
sure if there's anything more we could/should specify in
the submission draft...

But maybe I don't see what you're getting at, exactly.  What
did you have in mind?


	Henrik

_______________________________________________
Tools-team mailing list
Tools-team@ietf.org
https://www1.ietf.org/mailman/listinfo/tools-team



From tools-team-bounces@ietf.org Mon Apr 25 11:16:19 2005
Received: from localhost.localdomain ([127.0.0.1] helo=megatron.ietf.org)
	by megatron.ietf.org with esmtp (Exim 4.32)
	id 1DQ5Jr-0001uZ-4o; Mon, 25 Apr 2005 11:16:19 -0400
Received: from odin.ietf.org ([132.151.1.176] helo=ietf.org)
	by megatron.ietf.org with esmtp (Exim 4.32) id 1DQ5Jl-0001uO-P8
	for tools-team@megatron.ietf.org; Mon, 25 Apr 2005 11:16:18 -0400
Received: from ietf-mx.ietf.org (ietf-mx.ietf.org [132.151.6.1])
	by ietf.org (8.9.1a/8.9.1a) with ESMTP id LAA23624
	for <tools-team@ietf.org>; Mon, 25 Apr 2005 11:16:10 -0400 (EDT)
Received: from measurement-factory.com ([206.168.0.5])
	by ietf-mx.ietf.org with esmtp (Exim 4.33) id 1DQ5W1-0004ds-30
	for tools-team@ietf.org; Mon, 25 Apr 2005 11:28:54 -0400
Received: from pail.measurement-factory.com (nat.measurement-factory.com
	[206.168.0.3])
	by measurement-factory.com (8.12.9/8.12.9) with ESMTP id j3PFF63a096821;
	Mon, 25 Apr 2005 09:15:06 -0600 (MDT)
	(envelope-from rousskov@measurement-factory.com)
Date: Mon, 25 Apr 2005 09:13:54 -0600
To: "Larry Masinter" <LMM@acm.org>, "'IETF TOOLS'" <tools-team@ietf.org>
Subject: Re: [Tools-team] FW: [xml2rfc] 1.30pre1 patch + pending issues
References: <0IFD001UF7MT4F@mailsj-v1.corp.adobe.com>
From: "Alex Rousskov" <rousskov@measurement-factory.com>
Organization: The Measurement Factory
Content-Type: text/plain; format=flowed; delsp=yes; charset=us-ascii
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Message-ID: <op.spsm9gr5iz3etf0c9082f7@pail.measurement-factory.com>
In-Reply-To: <0IFD001UF7MT4F@mailsj-v1.corp.adobe.com>
User-Agent: Opera M2/8.0 (FreeBSD, build 1095)
X-Spam-Score: 0.0 (/)
X-Scan-Signature: 0bc60ec82efc80c84b8d02f4b0e4de22
Content-Transfer-Encoding: 8bit
Cc: 
X-BeenThere: tools-team@ietf.org
X-Mailman-Version: 2.1.5
Precedence: list
List-Id: "The purpose of the TOOLS team is to provide IETF feedback and
	guidance during the development of software tools to support
	various parts of IETF activities." <tools-team.ietf.org>
List-Unsubscribe: <https://www1.ietf.org/mailman/listinfo/tools-team>,
	<mailto:tools-team-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www1.ietf.org/pipermail/tools-team>
List-Post: <mailto:tools-team@ietf.org>
List-Help: <mailto:tools-team-request@ietf.org?subject=help>
List-Subscribe: <https://www1.ietf.org/mailman/listinfo/tools-team>,
	<mailto:tools-team-request@ietf.org?subject=subscribe>
Sender: tools-team-bounces@ietf.org
Errors-To: tools-team-bounces@ietf.org

On Fri, 2005/04/22 (MDT), <LMM@acm.org> wrote:

> There was a discussion on XML2RFC, but I think perhaps
> it might belong in the submissions draft instead...
> that no update to the XML processing software
> shouldn't result in change in wording or meaning,
> so that the author's intent is clear from the archival
> record.

The intent should be clear, but I doubt we can codify that beyond  
requiring the author to check Toolset's interpretation and rendering  
(which we already do).

One thing we could add, I suppose, is a requirement for a one-line summary  
of the extracted IPR. For example, the Toolset can say "Detected IPR  
boilerplate: Foo Bar" on the Check page. We already require the Toolset to  
check IPR statements, so this extra requirement would be on rendering of  
already extracted information. This could be useful for submission  
troubleshooting as well because without this extra line, there would be no  
way to check whether the Toolset correctly classified IPR when multiple  
IPR templates are accepted. Should we add the above rendering requirement?

Thanks,

Alex.

P.S. Note that even the xml2rfc discussion ended with a strange (IMO)  
resolution that ipr=RFC is a sign of "clear intent" and ipr=BCP is not.

_______________________________________________
Tools-team mailing list
Tools-team@ietf.org
https://www1.ietf.org/mailman/listinfo/tools-team



From tools-team-bounces@ietf.org Wed Apr 27 11:03:50 2005
Received: from localhost.localdomain ([127.0.0.1] helo=megatron.ietf.org)
	by megatron.ietf.org with esmtp (Exim 4.32)
	id 1DQo4s-0005qy-0E; Wed, 27 Apr 2005 11:03:50 -0400
Received: from odin.ietf.org ([132.151.1.176] helo=ietf.org)
	by megatron.ietf.org with esmtp (Exim 4.32) id 1DQo4q-0005qq-Jf
	for tools-team@megatron.ietf.org; Wed, 27 Apr 2005 11:03:48 -0400
Received: from ietf-mx.ietf.org (ietf-mx.ietf.org [132.151.6.1])
	by ietf.org (8.9.1a/8.9.1a) with ESMTP id LAA22810
	for <tools-team@ietf.org>; Wed, 27 Apr 2005 11:03:46 -0400 (EDT)
Received: from pne-smtpout1-sn1.fre.skanova.net ([81.228.11.98])
	by ietf-mx.ietf.org with esmtp (Exim 4.33) id 1DQoHU-0006jJ-Hk
	for tools-team@ietf.org; Wed, 27 Apr 2005 11:16:54 -0400
Received: from shiraz.levkowetz.com (213.64.173.70) by
	pne-smtpout1-sn1.fre.skanova.net (7.1.026.7)
	id 42650A3B0021D78D for tools-team@ietf.org;
	Wed, 27 Apr 2005 17:03:30 +0200
Received: from localhost ([127.0.0.1])
	by shiraz.levkowetz.com with esmtp (Exim 4.50) id 1DQo4X-0007l5-SO
	for tools-team@ietf.org; Wed, 27 Apr 2005 17:03:29 +0200
Message-ID: <426FA9C1.2050404@levkowetz.com>
Date: Wed, 27 Apr 2005 17:03:29 +0200
From: Henrik Levkowetz <henrik@levkowetz.com>
User-Agent: Mozilla Thunderbird 1.0 (Macintosh/20041206)
X-Accept-Language: en-us, en
MIME-Version: 1.0
To: IETF TOOLS <tools-team@ietf.org>
X-Enigmail-Version: 0.89.5.0
X-Enigmail-Supports: pgp-inline, pgp-mime
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 7bit
X-SA-Exim-Connect-IP: 127.0.0.1
X-SA-Exim-Mail-From: henrik@levkowetz.com
X-SA-Exim-Scanned: No (on shiraz.levkowetz.com);
	SAEximRunCond expanded to false
X-Spam-Score: 0.0 (/)
X-Scan-Signature: e8a67952aa972b528dd04570d58ad8fe
Content-Transfer-Encoding: 7bit
Subject: [Tools-team] Agenda for the 27 April 2005 Telechat
X-BeenThere: tools-team@ietf.org
X-Mailman-Version: 2.1.5
Precedence: list
List-Id: "The purpose of the TOOLS team is to provide IETF feedback and
	guidance during the development of software tools to support
	various parts of IETF activities." <tools-team.ietf.org>
List-Unsubscribe: <https://www1.ietf.org/mailman/listinfo/tools-team>,
	<mailto:tools-team-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www1.ietf.org/pipermail/tools-team>
List-Post: <mailto:tools-team@ietf.org>
List-Help: <mailto:tools-team-request@ietf.org?subject=help>
List-Subscribe: <https://www1.ietf.org/mailman/listinfo/tools-team>,
	<mailto:tools-team-request@ietf.org?subject=subscribe>
Sender: tools-team-bounces@ietf.org
Errors-To: tools-team-bounces@ietf.org

Hi,

Here is the proposed agenda today's meeting.  

---------------------------------------------------------

1. Agenda bashing

2. Comments on minutes from last teleconference.

3. Action item review.

   * Stas: 	Continue working on the Notification Service
		Requirements.

   * Alex:	Spell-check the submission draft and post to the list for
		polishing.

	Done

   * Alex:	Continue filling in missing parts of the ID info draft,
		provided no adverse comments on the direction of the
		recently posted version.

   * Henrik:	Help with the mapping of notification elements to Atom

   * Henrik:	Help with language polishing of the submission draft

	Done

   * Donald:	Continue work on the scheduling tool prototype; next
		step will be a form for data/constraints input to the
		scheduling

4. Any other business.

   * Issues raised by Brian regarding the submission draft - new
     revision or ensure issues solved, but propose putting this before
     the IESG as-is ?

5. Action items for next week.

6. Next meeting:

  Teleconference Wednesday 4 May, 16:00 GMT (same local time as
  today).

---------------------------------------------------------
Connection details:

To join the call, dial +1-734-615-7474 and enter PIN 0151989.

One can also join the call by dialling:
 sip:session_0151989@edial.internet2.edu 
on a SIP-enabled voice communications client. 

If the SIP client cannot dial URLs, you can have the conference
system call you if you have the sip URL for your phone.  Go to
 https://edial.internet2.edu/call/0151989
and type in the URL to your phone, and follow the directions.




_______________________________________________
Tools-team mailing list
Tools-team@ietf.org
https://www1.ietf.org/mailman/listinfo/tools-team



From tools-team-bounces@ietf.org Wed Apr 27 12:00:28 2005
Received: from localhost.localdomain ([127.0.0.1] helo=megatron.ietf.org)
	by megatron.ietf.org with esmtp (Exim 4.32)
	id 1DQoxg-0007Yo-3o; Wed, 27 Apr 2005 12:00:28 -0400
Received: from odin.ietf.org ([132.151.1.176] helo=ietf.org)
	by megatron.ietf.org with esmtp (Exim 4.32) id 1DQoxe-0007Yc-NT
	for tools-team@megatron.ietf.org; Wed, 27 Apr 2005 12:00:26 -0400
Received: from ietf-mx.ietf.org (ietf-mx.ietf.org [132.151.6.1])
	by ietf.org (8.9.1a/8.9.1a) with ESMTP id MAA26841
	for <tools-team@ietf.org>; Wed, 27 Apr 2005 12:00:24 -0400 (EDT)
Received: from pne-smtpout2-sn2.hy.skanova.net ([81.228.8.164])
	by ietf-mx.ietf.org with esmtp (Exim 4.33) id 1DQpAD-0007u5-GI
	for tools-team@ietf.org; Wed, 27 Apr 2005 12:13:33 -0400
Received: from shiraz.levkowetz.com (213.64.173.70) by
	pne-smtpout2-sn2.hy.skanova.net (7.1.026.7)
	id 42662CF1001F28DF for tools-team@ietf.org;
	Wed, 27 Apr 2005 18:00:08 +0200
Received: from localhost ([127.0.0.1])
	by shiraz.levkowetz.com with esmtp (Exim 4.50) id 1DQoxL-0007J3-GN
	for tools-team@ietf.org; Wed, 27 Apr 2005 18:00:07 +0200
Message-ID: <426FB707.5020700@levkowetz.com>
Date: Wed, 27 Apr 2005 18:00:07 +0200
From: Henrik Levkowetz <henrik@levkowetz.com>
User-Agent: Mozilla Thunderbird 1.0 (Macintosh/20041206)
X-Accept-Language: en-us, en
MIME-Version: 1.0
To: IETF TOOLS <tools-team@ietf.org>
X-Enigmail-Version: 0.89.5.0
X-Enigmail-Supports: pgp-inline, pgp-mime
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 7bit
X-SA-Exim-Connect-IP: 127.0.0.1
X-SA-Exim-Mail-From: henrik@levkowetz.com
X-SA-Exim-Scanned: No (on shiraz.levkowetz.com);
	SAEximRunCond expanded to false
X-Spam-Score: 0.0 (/)
X-Scan-Signature: 68c8cc8a64a9d0402e43b8eee9fc4199
Content-Transfer-Encoding: 7bit
Subject: [Tools-team] Atom meta-data
X-BeenThere: tools-team@ietf.org
X-Mailman-Version: 2.1.5
Precedence: list
List-Id: "The purpose of the TOOLS team is to provide IETF feedback and
	guidance during the development of software tools to support
	various parts of IETF activities." <tools-team.ietf.org>
List-Unsubscribe: <https://www1.ietf.org/mailman/listinfo/tools-team>,
	<mailto:tools-team-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www1.ietf.org/pipermail/tools-team>
List-Post: <mailto:tools-team@ietf.org>
List-Help: <mailto:tools-team-request@ietf.org?subject=help>
List-Subscribe: <https://www1.ietf.org/mailman/listinfo/tools-team>,
	<mailto:tools-team-request@ietf.org?subject=subscribe>
Sender: tools-team-bounces@ietf.org
Errors-To: tools-team-bounces@ietf.org

Hi,

    I've put together a rough first attempt at an atom-1.0 format
xml file for draft information, available at

    http://tools.ietf.org/wg/mip4/draft-ietf-mip4-aaa-nai/atom.xml

I'm not satisfied with it for several reasons, and will revisit it
to improve it, but comments are welcome already now.


	Henrik

_______________________________________________
Tools-team mailing list
Tools-team@ietf.org
https://www1.ietf.org/mailman/listinfo/tools-team



From tools-team-bounces@ietf.org Wed Apr 27 12:23:22 2005
Received: from localhost.localdomain ([127.0.0.1] helo=megatron.ietf.org)
	by megatron.ietf.org with esmtp (Exim 4.32)
	id 1DQpJq-00071H-7Y; Wed, 27 Apr 2005 12:23:22 -0400
Received: from odin.ietf.org ([132.151.1.176] helo=ietf.org)
	by megatron.ietf.org with esmtp (Exim 4.32) id 1DQpJo-0006yX-Na
	for tools-team@megatron.ietf.org; Wed, 27 Apr 2005 12:23:20 -0400
Received: from ietf-mx.ietf.org (ietf-mx.ietf.org [132.151.6.1])
	by ietf.org (8.9.1a/8.9.1a) with ESMTP id MAA29874
	for <tools-team@ietf.org>; Wed, 27 Apr 2005 12:23:18 -0400 (EDT)
Received: from pne-smtpout1-sn1.fre.skanova.net ([81.228.11.98])
	by ietf-mx.ietf.org with esmtp (Exim 4.33) id 1DQpWT-0000Ey-Dm
	for tools-team@ietf.org; Wed, 27 Apr 2005 12:36:27 -0400
Received: from shiraz.levkowetz.com (213.64.173.70) by
	pne-smtpout1-sn1.fre.skanova.net (7.1.026.7)
	id 42650A3B00223390 for tools-team@ietf.org;
	Wed, 27 Apr 2005 18:23:09 +0200
Received: from localhost ([127.0.0.1])
	by shiraz.levkowetz.com with esmtp (Exim 4.50) id 1DQpJc-0006Fm-TU
	for tools-team@ietf.org; Wed, 27 Apr 2005 18:23:08 +0200
Message-ID: <426FBC6C.2080307@levkowetz.com>
Date: Wed, 27 Apr 2005 18:23:08 +0200
From: Henrik Levkowetz <henrik@levkowetz.com>
User-Agent: Mozilla Thunderbird 1.0 (Macintosh/20041206)
X-Accept-Language: en-us, en
MIME-Version: 1.0
To: IETF TOOLS <tools-team@ietf.org>
X-Enigmail-Version: 0.89.5.0
X-Enigmail-Supports: pgp-inline, pgp-mime
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 7bit
X-SA-Exim-Connect-IP: 127.0.0.1
X-SA-Exim-Mail-From: henrik@levkowetz.com
X-SA-Exim-Scanned: No (on shiraz.levkowetz.com);
	SAEximRunCond expanded to false
X-Spam-Score: 0.0 (/)
X-Scan-Signature: 10ba05e7e8a9aa6adb025f426bef3a30
Content-Transfer-Encoding: 7bit
Subject: [Tools-team] Minutes from the 27 April 2005 Telechat
X-BeenThere: tools-team@ietf.org
X-Mailman-Version: 2.1.5
Precedence: list
List-Id: "The purpose of the TOOLS team is to provide IETF feedback and
	guidance during the development of software tools to support
	various parts of IETF activities." <tools-team.ietf.org>
List-Unsubscribe: <https://www1.ietf.org/mailman/listinfo/tools-team>,
	<mailto:tools-team-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www1.ietf.org/pipermail/tools-team>
List-Post: <mailto:tools-team@ietf.org>
List-Help: <mailto:tools-team-request@ietf.org?subject=help>
List-Subscribe: <https://www1.ietf.org/mailman/listinfo/tools-team>,
	<mailto:tools-team-request@ietf.org?subject=subscribe>
Sender: tools-team-bounces@ietf.org
Errors-To: tools-team-bounces@ietf.org

Hi,

Here are the minutes from today's meeting.  

---------------------------------------------------------

0. Present: Alex, Henrik

1. Agenda bashing

	Nothing

2. Comments on minutes from last teleconference.

	None

3. Action item review.

   * Stas: 	Continue working on the Notification Service
		Requirements.
	-

   * Alex:	Spell-check the submission draft and post to the list for
		polishing.

	Done

   * Alex:	Continue filling in missing parts of the ID info draft,
		provided no adverse comments on the direction of the
		recently posted version.
	-

   * Henrik:	Help with the mapping of notification elements to Atom

	First attempt done

   * Henrik:	Help with language polishing of the submission draft

	Done

   * Donald:	Continue work on the scheduling tool prototype; next
		step will be a form for data/constraints input to the
		scheduling

	More news next week

4. Any other business.

   * Issues raised by Brian regarding the submission draft - new
     revision or ensure issues solved, but propose putting this before
     the IESG as-is ? ==> will try to clear up the current issues,
     then prepare a new version but hold off on submitting it.

5. Action items for next week.

   * Stas: 	Continue working on the Notification Service
		Requirements.
	-

   * Alex:	Clear up new issues regarding the submission draft,
		prepare new version in case useful for the IETF		

   * Alex:	Continue filling in missing parts of the ID info draft,
		provided no adverse comments on the direction of the
		recently posted version.

   * Donald:	Continue work on the scheduling tool prototype; next
		step will be a form for data/constraints input to the
		scheduling

6. Next meeting:

  Teleconference Wednesday 4 May, 16:00 GMT (same local time as
  today).

---------------------------------------------------------
Connection details:

To join the call, dial +1-734-615-7474 and enter PIN 0151989.

One can also join the call by dialling:
 sip:session_0151989@edial.internet2.edu 
on a SIP-enabled voice communications client. 

If the SIP client cannot dial URLs, you can have the conference
system call you if you have the sip URL for your phone.  Go to
 https://edial.internet2.edu/call/0151989
and type in the URL to your phone, and follow the directions.


_______________________________________________
Tools-team mailing list
Tools-team@ietf.org
https://www1.ietf.org/mailman/listinfo/tools-team



