From owner-freebsd-amd64@FreeBSD.ORG  Sun Mar 28 00:38:35 2004
Return-Path: <owner-freebsd-amd64@FreeBSD.ORG>
Delivered-To: freebsd-amd64@freebsd.org
Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125])
	by hub.freebsd.org (Postfix) with ESMTP id 25FD316A4CE
	for <freebsd-amd64@freebsd.org>; Sun, 28 Mar 2004 00:38:35 -0800 (PST)
Received: from smartmx-06.inode.at (smartmx-06.inode.at [213.229.60.38])
	by mx1.FreeBSD.org (Postfix) with ESMTP id E052043D45
	for <freebsd-amd64@freebsd.org>; Sun, 28 Mar 2004 00:38:32 -0800 (PST)
	(envelope-from markus@schanovsky.at)
Received: from [81.223.211.129] (port=15529 helo=xenos-xp.schanovsky.at)
	by smartmx-06.inode.at with esmtp (Exim 4.30)
	id 1B7VoN-0007YW-MC
	for freebsd-amd64@freebsd.org; Sun, 28 Mar 2004 10:38:31 +0200
Message-Id: <6.0.0.22.2.20040328102132.028191f8@mail.schanovsky.at>
X-Sender: markus#schanovsky.at@mail.schanovsky.at (Unverified)
X-Mailer: QUALCOMM Windows Eudora Version 6.0.0.22
Date: Sun, 28 Mar 2004 10:32:03 +0200
To: freebsd-amd64@freebsd.org
From: Markus Schanovsky <markus@schanovsky.at>
Mime-Version: 1.0
Content-Type: text/plain; charset="us-ascii"; format=flowed
X-Content-Filtered-By: Mailman/MimeDel 2.1.1
Subject: WARNING:  WRITE_DMA UDMA IRCR error
X-BeenThere: freebsd-amd64@freebsd.org
X-Mailman-Version: 2.1.1
Precedence: list
List-Id: Porting FreeBSD to the AMD64 platform <freebsd-amd64.freebsd.org>
List-Unsubscribe: <http://lists.freebsd.org/mailman/listinfo/freebsd-amd64>,
	<mailto:freebsd-amd64-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/freebsd-amd64>
List-Post: <mailto:freebsd-amd64@freebsd.org>
List-Help: <mailto:freebsd-amd64-request@freebsd.org?subject=help>
List-Subscribe: <http://lists.freebsd.org/mailman/listinfo/freebsd-amd64>,
	<mailto:freebsd-amd64-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Sun, 28 Mar 2004 08:38:35 -0000

Hello!
I have a new am464-Box running FreeBSD 5.2.1 with a serial ATA-Disk of 160 GB.
 From the beginning I encountered errors like :
Mar 26 09:02:04 free kernel: ad4: WARNING - WRITE_DMA UDMA ICRC error 
(retrying request) LBA=118
166239
Mar 26 09:02:25 free kernel: ad4: WARNING - WRITE_DMA UDMA ICRC error 
(retrying request) LBA=118
169055
................
There was no other problem, not loss of data - the machine seems very fast, 
compiling of ports was quick and successfull.

I tried to use a small serial-ata-disk - with the same errors.

Is it a serious problem running FreBSd with this errors? may some data be 
lost sometime in the future?

Now I solved the problem with sysctl hw.ata.ata_dma = 0 in my 
/boot/loader.conf - there are no write errors further.
But what's the disadvantage of turning ata_dma off?
Speed?

Please give me some hints!
With best regards
Mark


----------
Markus Schanovsky
Paedagogisches Institut der Stadt Wien                       EDV-Administrator
Burggasse 14-16/214                                     Tel: +43-1/523 62 
22/99 222
A-1070 Vienna                                            Fax: +43-1/523 62 
22/99 93 200
Austria
email: m.schanovsky@m56ssr.wien.at       priv: markus@schanovsky.at
Website: http://www.pi-wien.at

From owner-freebsd-amd64@FreeBSD.ORG  Sun Mar 28 02:14:34 2004
Return-Path: <owner-freebsd-amd64@FreeBSD.ORG>
Delivered-To: freebsd-amd64@freebsd.org
Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125])
	by hub.freebsd.org (Postfix) with ESMTP id 8366516A4CE
	for <freebsd-amd64@freebsd.org>; Sun, 28 Mar 2004 02:14:34 -0800 (PST)
Received: from dogfood.jrv.org (rrcs-sw-24-73-246-106.biz.rr.com
	[24.73.246.106])
	by mx1.FreeBSD.org (Postfix) with ESMTP id 20B6943D41
	for <freebsd-amd64@freebsd.org>;
	Sun, 28 Mar 2004 02:14:34 -0800 (PST)	(envelope-from james@jrv.org)
Received: from jrv.org (zippy.jrv.org [192.168.3.156])
	(authenticated bits=0)
	by dogfood.jrv.org (8.12.11/8.12.10) with ESMTP id i2SAEX6q019951
	(version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO);
	Sun, 28 Mar 2004 04:14:33 -0600 (CST)
	(envelope-from james@jrv.org)
Message-ID: <4066A588.4090705@jrv.org>
Date: Sun, 28 Mar 2004 04:14:32 -0600
From: "James R. Van Artsalen" <james@jrv.org>
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US;
	rv:1.6) Gecko/20040113
X-Accept-Language: en-us, en
MIME-Version: 1.0
To: Markus Schanovsky <markus@schanovsky.at>
References: <6.0.0.22.2.20040328102132.028191f8@mail.schanovsky.at>
In-Reply-To: <6.0.0.22.2.20040328102132.028191f8@mail.schanovsky.at>
Content-Type: text/plain; charset=ISO-8859-1; format=flowed
Content-Transfer-Encoding: 7bit
cc: freebsd-amd64@freebsd.org
Subject: Re: WARNING:  WRITE_DMA UDMA IRCR error
X-BeenThere: freebsd-amd64@freebsd.org
X-Mailman-Version: 2.1.1
Precedence: list
List-Id: Porting FreeBSD to the AMD64 platform <freebsd-amd64.freebsd.org>
List-Unsubscribe: <http://lists.freebsd.org/mailman/listinfo/freebsd-amd64>,
	<mailto:freebsd-amd64-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/freebsd-amd64>
List-Post: <mailto:freebsd-amd64@freebsd.org>
List-Help: <mailto:freebsd-amd64-request@freebsd.org?subject=help>
List-Subscribe: <http://lists.freebsd.org/mailman/listinfo/freebsd-amd64>,
	<mailto:freebsd-amd64-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Sun, 28 Mar 2004 10:14:34 -0000

Markus Schanovsky wrote:

> Mar 26 09:02:25 free kernel: ad4: WARNING - WRITE_DMA UDMA ICRC error 
> (retrying request) LBA=118
> 169055
>
> Now I solved the problem with sysctl hw.ata.ata_dma = 0 in my 
> /boot/loader.conf - there are no write errors further.
> But what's the disadvantage of turning ata_dma off?
> Speed?

I have never seen that error.  What disk controller are you using?  Do 
you get that error with any other disk controller?  Try different sATA 
cables?

Boot into single-user mode and do a manual "fsck /usr" and make sure the 
disk is really OK after make buildworld.

Turning off DMA will slow down disk transfers and increase CPU.  Worse, 
it probably doesn't really fix the problem but rather hides it.

From owner-freebsd-amd64@FreeBSD.ORG  Sun Mar 28 06:16:57 2004
Return-Path: <owner-freebsd-amd64@FreeBSD.ORG>
Delivered-To: freebsd-amd64@freebsd.org
Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125])
	by hub.freebsd.org (Postfix) with ESMTP id 3045A16A4CE
	for <freebsd-amd64@freebsd.org>; Sun, 28 Mar 2004 06:16:57 -0800 (PST)
Received: from smartmx-03.inode.at (smartmx-03.inode.at [213.229.60.35])
	by mx1.FreeBSD.org (Postfix) with ESMTP id 934EE43D31
	for <freebsd-amd64@freebsd.org>; Sun, 28 Mar 2004 06:16:56 -0800 (PST)
	(envelope-from markus@schanovsky.at)
Received: from [81.223.211.129] (port=16791 helo=xenos-xp.schanovsky.at)
	by smartmx-03.inode.at with esmtp (Exim 4.30)
	id 1B7b5r-00041A-BV
	for freebsd-amd64@freebsd.org; Sun, 28 Mar 2004 16:16:55 +0200
Message-Id: <6.0.0.22.2.20040328161458.02889b50@mail.schanovsky.at>
X-Sender: markus#schanovsky.at@mail.schanovsky.at (Unverified)
X-Mailer: QUALCOMM Windows Eudora Version 6.0.0.22
Date: Sun, 28 Mar 2004 16:16:24 +0200
To: freebsd-amd64@freebsd.org
From: Markus Schanovsky <markus@schanovsky.at>
Mime-Version: 1.0
Content-Type: text/plain; charset="us-ascii"; format=flowed
X-Content-Filtered-By: Mailman/MimeDel 2.1.1
Subject: Serial ATA Raid
X-BeenThere: freebsd-amd64@freebsd.org
X-Mailman-Version: 2.1.1
Precedence: list
List-Id: Porting FreeBSD to the AMD64 platform <freebsd-amd64.freebsd.org>
List-Unsubscribe: <http://lists.freebsd.org/mailman/listinfo/freebsd-amd64>,
	<mailto:freebsd-amd64-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/freebsd-amd64>
List-Post: <mailto:freebsd-amd64@freebsd.org>
List-Help: <mailto:freebsd-amd64-request@freebsd.org?subject=help>
List-Subscribe: <http://lists.freebsd.org/mailman/listinfo/freebsd-amd64>,
	<mailto:freebsd-amd64-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Sun, 28 Mar 2004 14:16:57 -0000

Hello!
Has anybody running a Serial ATA-Raid-Controller with FreeBSd 5.2.1 AMD64?
Which one?
With best regards
Mark


----------
Markus Schanovsky
Paedagogisches Institut der Stadt Wien                       EDV-Administrator
Burggasse 14-16/214                                     Tel: +43-1/523 62 
22/99 222
A-1070 Vienna                                            Fax: +43-1/523 62 
22/99 93 200
Austria
email: m.schanovsky@m56ssr.wien.at       priv: markus@schanovsky.at
Website: http://www.pi-wien.at

From owner-freebsd-amd64@FreeBSD.ORG  Sun Mar 28 15:23:49 2004
Return-Path: <owner-freebsd-amd64@FreeBSD.ORG>
Delivered-To: freebsd-amd64@freebsd.org
Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125])
	by hub.freebsd.org (Postfix) with ESMTP id 105C416A4CE
	for <freebsd-amd64@freebsd.org>; Sun, 28 Mar 2004 15:23:49 -0800 (PST)
Received: from smartmx-07.inode.at (smartmx-07.inode.at [213.229.60.39])
	by mx1.FreeBSD.org (Postfix) with ESMTP id 40BEB43D2D
	for <freebsd-amd64@freebsd.org>; Sun, 28 Mar 2004 15:23:48 -0800 (PST)
	(envelope-from markus@schanovsky.at)
Received: from [81.223.211.129] (port=20004 helo=xenos-xp.schanovsky.at)
	by smartmx-07.inode.at with esmtp (Exim 4.30)
	id 1B7jd5-0000U0-OQ
	for freebsd-amd64@freebsd.org; Mon, 29 Mar 2004 01:23:47 +0200
Message-Id: <6.0.0.22.2.20040329011626.0289a3b8@mail.schanovsky.at>
X-Sender: markus#schanovsky.at@mail.schanovsky.at (Unverified)
X-Mailer: QUALCOMM Windows Eudora Version 6.0.0.22
Date: Mon, 29 Mar 2004 01:23:11 +0200
To: freebsd-amd64@freebsd.org
From: Markus Schanovsky <markus@schanovsky.at>
Mime-Version: 1.0
Content-Type: text/plain; charset="us-ascii"; format=flowed
X-Content-Filtered-By: Mailman/MimeDel 2.1.1
Subject: amd64 with mod_php - but no transmission of form-data
X-BeenThere: freebsd-amd64@freebsd.org
X-Mailman-Version: 2.1.1
Precedence: list
List-Id: Porting FreeBSD to the AMD64 platform <freebsd-amd64.freebsd.org>
List-Unsubscribe: <http://lists.freebsd.org/mailman/listinfo/freebsd-amd64>,
	<mailto:freebsd-amd64-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/freebsd-amd64>
List-Post: <mailto:freebsd-amd64@freebsd.org>
List-Help: <mailto:freebsd-amd64-request@freebsd.org?subject=help>
List-Subscribe: <http://lists.freebsd.org/mailman/listinfo/freebsd-amd64>,
	<mailto:freebsd-amd64-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Sun, 28 Mar 2004 23:23:49 -0000

Hello!
After some time and much help from the list I got my mod_php4 running on my 
FreeBSD 5.2.1 AMD64.

I can access a database as expected - OK

But there is a problem I never saw before:
It's not possible to post or get data from from one php-page to another - 
the variables lokk unknown to the destination-page.
The URL is displayed correct: 
http://193.171.252.28/php/test3.php?content=example&subbutton=send
But neither $content nor $subbutton ar displayable.
I tried the same 2 pages on an other machine (i386) without any problem.

Does anybody know this trouble?
With best regards
Mark


----------
Markus Schanovsky
Paedagogisches Institut der Stadt Wien                       EDV-Administrator
Burggasse 14-16/214                                     Tel: +43-1/523 62 
22/99 222
A-1070 Vienna                                            Fax: +43-1/523 62 
22/99 93 200
Austria
email: m.schanovsky@m56ssr.wien.at       priv: markus@schanovsky.at
Website: http://www.pi-wien.at

From owner-freebsd-amd64@FreeBSD.ORG  Sun Mar 28 18:18:28 2004
Return-Path: <owner-freebsd-amd64@FreeBSD.ORG>
Delivered-To: freebsd-amd64@freebsd.org
Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125])
	by hub.freebsd.org (Postfix) with ESMTP id 0812716A4CE
	for <freebsd-amd64@freebsd.org>; Sun, 28 Mar 2004 18:18:28 -0800 (PST)
Received: from bsdhosting.net (bsdhosting.net [65.39.221.113])
	by mx1.FreeBSD.org (Postfix) with SMTP id C34D343D3F
	for <freebsd-amd64@freebsd.org>; Sun, 28 Mar 2004 18:18:27 -0800 (PST)
	(envelope-from jhopper@bsdhosting.net)
Received: (qmail 1801 invoked from network); 29 Mar 2004 02:18:13 -0000
Received: from bsdhosting.net (HELO ?192.168.1.7?)
	(jhopper@bsdhosting.net@65.39.221.113)
	by bsdhosting.net with SMTP; 29 Mar 2004 02:18:13 -0000
From: Justin Hopper <jhopper@bsdhosting.net>
To: freebsd-amd64@freebsd.org
In-Reply-To: <6.0.0.22.2.20040329011626.0289a3b8@mail.schanovsky.at>
References: <6.0.0.22.2.20040329011626.0289a3b8@mail.schanovsky.at>
Content-Type: text/plain
Message-Id: <1080526705.27726.434.camel@work.gusalmighty.com>
Mime-Version: 1.0
X-Mailer: Ximian Evolution 1.4.6 
Date: Sun, 28 Mar 2004 18:18:26 -0800
Content-Transfer-Encoding: 7bit
Subject: Re: amd64 with mod_php - but no transmission of form-data
X-BeenThere: freebsd-amd64@freebsd.org
X-Mailman-Version: 2.1.1
Precedence: list
List-Id: Porting FreeBSD to the AMD64 platform <freebsd-amd64.freebsd.org>
List-Unsubscribe: <http://lists.freebsd.org/mailman/listinfo/freebsd-amd64>,
	<mailto:freebsd-amd64-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/freebsd-amd64>
List-Post: <mailto:freebsd-amd64@freebsd.org>
List-Help: <mailto:freebsd-amd64-request@freebsd.org?subject=help>
List-Subscribe: <http://lists.freebsd.org/mailman/listinfo/freebsd-amd64>,
	<mailto:freebsd-amd64-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Mon, 29 Mar 2004 02:18:28 -0000

On Sun, 2004-03-28 at 15:23, Markus Schanovsky wrote:
> But there is a problem I never saw before:
> It's not possible to post or get data from from one php-page to another - 
> the variables lokk unknown to the destination-page.
> The URL is displayed correct: 
> http://193.171.252.28/php/test3.php?content=example&subbutton=send
> But neither $content nor $subbutton ar displayable.
> I tried the same 2 pages on an other machine (i386) without any problem.

If you are accessing the variables as globals, did you make sure
register_globals=on in your php.ini file?  It's much better to just use
the superglobal arrays, like $_GET['var'] and $_POST['var'].

I was not sure from your post if such simple things as these had been
overlooked or not, so I thought I would put them out there just in case
they had.

-- 
Justin Hopper  <jhopper@bsdhosting.net>
UNIX Systems Engineer
BSDHosting.net
Hosting Division of Digital Oasys Inc.
http://www.bsdhosting.net

From owner-freebsd-amd64@FreeBSD.ORG  Mon Mar 29 08:16:54 2004
Return-Path: <owner-freebsd-amd64@FreeBSD.ORG>
Delivered-To: freebsd-amd64@freebsd.org
Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125])
	by hub.freebsd.org (Postfix) with ESMTP id 1CAD916A4D0
	for <freebsd-amd64@freebsd.org>; Mon, 29 Mar 2004 08:16:54 -0800 (PST)
Received: from smp4.smallcatbrain.com (bdsl.66.14.133.120.gte.net
	[66.14.133.120])
	by mx1.FreeBSD.org (Postfix) with ESMTP id 9207643D46
	for <freebsd-amd64@freebsd.org>;
	Mon, 29 Mar 2004 08:16:53 -0800 (PST)
	(envelope-from richd@smallcatbrain.com)
Received: from smallcatbrain.com (smp4.smallcatbrain.com [192.168.0.2])
	i2TGTgZ9015226	for <freebsd-amd64@freebsd.org>;
	Mon, 29 Mar 2004 08:29:42 -0800 (PST)
	(envelope-from richd@smallcatbrain.com)
Received: from 134.134.136.13
        (SquirrelMail authenticated user richd)
        by www.smallcatbrain.com with HTTP;
        Mon, 29 Mar 2004 08:29:42 -0800 (PST)
Message-ID: <38712.134.134.136.13.1080577782.squirrel@www.smallcatbrain.com>
Date: Mon, 29 Mar 2004 08:29:42 -0800 (PST)
From: "Rich Dunkle" <richd@smallcatbrain.com>
To: <freebsd-amd64@freebsd.org>
X-Priority: 3
Importance: Normal
X-Mailer: SquirrelMail (version 1.2.8)
MIME-Version: 1.0
Content-Type: text/plain; charset=iso-8859-1
Content-Transfer-Encoding: 8bit
Subject: Re: New 5.2-CURRENT snapshot -softdep_disk_prewrite+0x44
X-BeenThere: freebsd-amd64@freebsd.org
X-Mailman-Version: 2.1.1
Precedence: list
List-Id: Porting FreeBSD to the AMD64 platform <freebsd-amd64.freebsd.org>
List-Unsubscribe: <http://lists.freebsd.org/mailman/listinfo/freebsd-amd64>,
	<mailto:freebsd-amd64-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/freebsd-amd64>
List-Post: <mailto:freebsd-amd64@freebsd.org>
List-Help: <mailto:freebsd-amd64-request@freebsd.org?subject=help>
List-Subscribe: <http://lists.freebsd.org/mailman/listinfo/freebsd-amd64>,
	<mailto:freebsd-amd64-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Mon, 29 Mar 2004 16:16:54 -0000

I am having the same problem with this snapshot as the other
snapshots I have created in the last week.
Hang during inital boot.

softdep_disk_prewrite+0x44

I reported this in freebsd-current on Friday

Does anyone else see this ?


From owner-freebsd-amd64@FreeBSD.ORG  Mon Mar 29 08:24:14 2004
Return-Path: <owner-freebsd-amd64@FreeBSD.ORG>
Delivered-To: freebsd-amd64@freebsd.org
Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125])
	by hub.freebsd.org (Postfix) with ESMTP id 9C9CA16A4CE
	for <amd64@freebsd.org>; Mon, 29 Mar 2004 08:24:14 -0800 (PST)
Received: from farside.isc.org (farside.isc.org [204.152.187.5])
	by mx1.FreeBSD.org (Postfix) with ESMTP id 8B72943D58
	for <amd64@freebsd.org>; Mon, 29 Mar 2004 08:24:14 -0800 (PST)
	(envelope-from Peter_Losher@isc.org)
Received: from [10.0.0.3] (tardis-nat.plosh.net [64.139.14.228])
	(using TLSv1 with cipher RC4-MD5 (128/128 bits))
	(No client certificate requested)
	by farside.isc.org (Postfix) with ESMTP id 2BAB2A82B
	for <amd64@freebsd.org>; Mon, 29 Mar 2004 16:24:14 +0000 (UTC)
	(envelope-from Peter_Losher@isc.org)
From: Peter Losher <Peter_Losher@isc.org>
Organization: ISC
To: amd64@freebsd.org
Date: Mon, 29 Mar 2004 08:25:41 -0800
User-Agent: KMail/1.6.1
MIME-Version: 1.0
Content-Type: multipart/signed;
  protocol="application/pgp-signature";
  micalg=pgp-sha1;
  boundary="Boundary-02=_U4EaACz5/YTrQpG";
  charset="us-ascii"
Content-Transfer-Encoding: 7bit
Message-Id: <200403290825.56251.Peter_Losher@isc.org>
Subject: 5.2.1-REL or -CURRENT on a amd64 production system?
X-BeenThere: freebsd-amd64@freebsd.org
X-Mailman-Version: 2.1.1
Precedence: list
List-Id: Porting FreeBSD to the AMD64 platform <freebsd-amd64.freebsd.org>
List-Unsubscribe: <http://lists.freebsd.org/mailman/listinfo/freebsd-amd64>,
	<mailto:freebsd-amd64-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/freebsd-amd64>
List-Post: <mailto:freebsd-amd64@freebsd.org>
List-Help: <mailto:freebsd-amd64-request@freebsd.org?subject=help>
List-Subscribe: <http://lists.freebsd.org/mailman/listinfo/freebsd-amd64>,
	<mailto:freebsd-amd64-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Mon, 29 Mar 2004 16:24:14 -0000


--Boundary-02=_U4EaACz5/YTrQpG
Content-Type: text/plain;
  charset="us-ascii"
Content-Transfer-Encoding: quoted-printable
Content-Disposition: inline

So I have a dual-Opteron system I have been testing for the last couple=20
of months w/ FreeBSD 5.2.x-REL/amd64 code.  As the box is about ready to=20
be put into production as a storage/DB server, and as I have been=20
catching up on mail from the amd64 list from the past week, I do have=20
some concerns:

=2D RELENG_5_2 or .?  I have a particular aversion to running -CURRENT code=
=20
on production systems.  But reading the fixes the the stack alignment=20
code that Peter Wemm did here:

http://marc.theaimsgroup.com/?l=3Dfreebsd-amd64&m=3D107981757401261&w=3D2

and the lack of responses to my pending issues with make buildworld,=20
makes it seem that most everyone here is running -CURRENT.   How stable=20
is it at the moment...? (one would assume O'Brien's latest snapshot=20
ISO's are fine in this regard)  I just have a aversion to 4-6 months=20
down the line having to recompile all my ports ;)

=2D VLAN support - BTW, in case anyone needed to know, adding vlan support=
=20
to the kernel, then activating it on a network interface, causes=20
ifconfig to panic (at least in 5.2.1-REL).  Dunno if anyone else has=20
tried it yet or not in -CURRENT...

Thanks in advance for any advice you can provide (I will probably file=20
the VLAN issue as a bug report if it hasn't already been fixed in=20
=2DCURRENT)

=2DPeter
=2D-=20
Peter_Losher@isc.org | ISC | OpenPGP Key E8048D08 | "The bits must flow"

--Boundary-02=_U4EaACz5/YTrQpG
Content-Type: application/pgp-signature
Content-Description: signature

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.4 (FreeBSD)

iD8DBQBAaE4UPtVx9OgEjQgRAm2+AJ0ZvyQ7kHFeTLUmSsBq/dhsEelAVgCfeNgb
hl61eUjaxQ0eXsr+TfB9RRc=
=x8/q
-----END PGP SIGNATURE-----

--Boundary-02=_U4EaACz5/YTrQpG--

From owner-freebsd-amd64@FreeBSD.ORG  Mon Mar 29 09:01:24 2004
Return-Path: <owner-freebsd-amd64@FreeBSD.ORG>
Delivered-To: freebsd-amd64@freebsd.org
Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125])
	by hub.freebsd.org (Postfix) with ESMTP id CC30516A661
	for <freebsd-amd64@freebsd.org>; Mon, 29 Mar 2004 09:01:24 -0800 (PST)
Received: from natrium.plan-ix.de (natrium.plan-ix.de [212.37.39.36])
	by mx1.FreeBSD.org (Postfix) with SMTP id D1F2A43D3F
	for <freebsd-amd64@freebsd.org>; Mon, 29 Mar 2004 09:01:22 -0800 (PST)
	(envelope-from braukmann@tse-online.de)
Received: (qmail 19765 invoked from network); 29 Mar 2004 16:37:48 -0000
Received: from unknown (HELO ?192.168.222.11?) (ab%plan-ix.de@212.37.49.203)
  by natrium.plan-ix.de with SMTP; 29 Mar 2004 16:37:48 -0000
Date: Mon, 29 Mar 2004 18:39:34 +0200
From: Andreas Braukmann <braukmann@tse-online.de>
To: freebsd-amd64@freebsd.org
Message-ID: <2147483647.1080585573@[192.168.222.11]>
In-Reply-To: <38712.134.134.136.13.1080577782.squirrel@www.smallcatbrain.com>
References: <38712.134.134.136.13.1080577782.squirrel@www.smallcatbrain.com>
X-Mailer: Mulberry/3.1.1 (Mac OS X)
MIME-Version: 1.0
Content-Type: text/plain; charset=iso-8859-1; format=flowed
Content-Transfer-Encoding: quoted-printable
Content-Disposition: inline
cc: Rich Dunkle <richd@smallcatbrain.com>
Subject: Re: New 5.2-CURRENT snapshot -softdep_disk_prewrite+0x44
X-BeenThere: freebsd-amd64@freebsd.org
X-Mailman-Version: 2.1.1
Precedence: list
List-Id: Porting FreeBSD to the AMD64 platform <freebsd-amd64.freebsd.org>
List-Unsubscribe: <http://lists.freebsd.org/mailman/listinfo/freebsd-amd64>,
	<mailto:freebsd-amd64-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/freebsd-amd64>
List-Post: <mailto:freebsd-amd64@freebsd.org>
List-Help: <mailto:freebsd-amd64-request@freebsd.org?subject=help>
List-Subscribe: <http://lists.freebsd.org/mailman/listinfo/freebsd-amd64>,
	<mailto:freebsd-amd64-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Mon, 29 Mar 2004 17:01:24 -0000

--On Montag, 29. M=E4rz 2004 08:29 Uhr -0800 Rich Dunkle <richd@smallcatbrain.com> wrote:

> softdep_disk_prewrite+0x44
>
> I reported this in freebsd-current on Friday
>
> Does anyone else see this ?

I see this on i386 using Lex Mini-ITX-Mainboard CV860A with
VIA VT8601A/VT82C686B Chipset.
I would have reported this, but I didn't have the time to
investigate it any further than stumbling over it. (I would
like to rule out bad hardware first.)


-Andreas


From owner-freebsd-amd64@FreeBSD.ORG  Mon Mar 29 11:01:36 2004
Return-Path: <owner-freebsd-amd64@FreeBSD.ORG>
Delivered-To: freebsd-amd64@freebsd.org
Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125])
	by hub.freebsd.org (Postfix) with ESMTP id CEA0116A4CE
	for <freebsd-amd64@freebsd.org>; Mon, 29 Mar 2004 11:01:36 -0800 (PST)
Received: from freefall.freebsd.org (freefall.freebsd.org [216.136.204.21])
	by mx1.FreeBSD.org (Postfix) with ESMTP id C871A43D1F
	for <freebsd-amd64@freebsd.org>; Mon, 29 Mar 2004 11:01:36 -0800 (PST)
	(envelope-from owner-bugmaster@freebsd.org)
Received: from freefall.freebsd.org (peter@localhost [127.0.0.1])
	by freefall.freebsd.org (8.12.10/8.12.10) with ESMTP id i2TJ1abv083743
	for <freebsd-amd64@freebsd.org>; Mon, 29 Mar 2004 11:01:36 -0800 (PST)
	(envelope-from owner-bugmaster@freebsd.org)
Received: (from peter@localhost)
	by freefall.freebsd.org (8.12.10/8.12.10/Submit) id i2TJ1Z8T083737
	for freebsd-amd64@freebsd.org; Mon, 29 Mar 2004 11:01:35 -0800 (PST)
	(envelope-from owner-bugmaster@freebsd.org)
Date: Mon, 29 Mar 2004 11:01:35 -0800 (PST)
Message-Id: <200403291901.i2TJ1Z8T083737@freefall.freebsd.org>
X-Authentication-Warning: freefall.freebsd.org: peter set sender to
	owner-bugmaster@freebsd.org using -f
From: FreeBSD bugmaster <bugmaster@freebsd.org>
To: freebsd-amd64@FreeBSD.org
Subject: Current problem reports assigned to you
X-BeenThere: freebsd-amd64@freebsd.org
X-Mailman-Version: 2.1.1
Precedence: list
List-Id: Porting FreeBSD to the AMD64 platform <freebsd-amd64.freebsd.org>
List-Unsubscribe: <http://lists.freebsd.org/mailman/listinfo/freebsd-amd64>,
	<mailto:freebsd-amd64-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/freebsd-amd64>
List-Post: <mailto:freebsd-amd64@freebsd.org>
List-Help: <mailto:freebsd-amd64-request@freebsd.org?subject=help>
List-Subscribe: <http://lists.freebsd.org/mailman/listinfo/freebsd-amd64>,
	<mailto:freebsd-amd64-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Mon, 29 Mar 2004 19:01:36 -0000

Current FreeBSD problem reports
Critical problems

S  Submitted   Tracker     Resp.       Description
-------------------------------------------------------------------------------
o [2003/11/26] amd64/59713 amd64       <fxp0 timeout by great datatransfer, DMA-
o [2004/02/12] amd64/62753 amd64       txp(4) panics on amd4

2 problems total.

Serious problems

S  Submitted   Tracker     Resp.       Description
-------------------------------------------------------------------------------
o [2003/11/26] amd64/59714 amd64       device timeout and ad0: WARNING - WRITE_D

1 problem total.

Non-critical problems

S  Submitted   Tracker     Resp.       Description
-------------------------------------------------------------------------------
o [2004/01/11] amd64/61209 amd64       ppc0: cannot reserve I/O port range
a [2004/02/01] amd64/62239 amd64       GDT8514RZ freezes System after a few Minu
o [2004/02/21] amd64/63188 amd64       ti(4) broken on amd64

3 problems total.

From owner-freebsd-amd64@FreeBSD.ORG  Mon Mar 29 16:57:27 2004
Return-Path: <owner-freebsd-amd64@FreeBSD.ORG>
Delivered-To: freebsd-amd64@freebsd.org
Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125])
	by hub.freebsd.org (Postfix) with ESMTP id 1D68116A4CE
	for <amd64@FreeBSD.org>; Mon, 29 Mar 2004 16:57:27 -0800 (PST)
Received: from mtaw4.prodigy.net (mtaw4.prodigy.net [64.164.98.52])
	by mx1.FreeBSD.org (Postfix) with ESMTP id EB80E43D1F
	for <amd64@FreeBSD.org>; Mon, 29 Mar 2004 16:57:26 -0800 (PST)
	(envelope-from kris@obsecurity.org)
Received: from obsecurity.dyndns.org
	(46438ab6d22d362ab8172110a99c4728@adsl-67-115-73-128.dsl.lsan03.pacbell.net
	[67.115.73.128])
	by mtaw4.prodigy.net (8.12.10/8.12.10) with ESMTP id i2U0vPfG002329
	for <amd64@FreeBSD.org>; Mon, 29 Mar 2004 16:57:26 -0800 (PST)
Received: by obsecurity.dyndns.org (Postfix, from userid 1000)
	id 2F4C052322; Mon, 29 Mar 2004 16:57:25 -0800 (PST)
Date: Mon, 29 Mar 2004 16:57:25 -0800
From: Kris Kennaway <kris@obsecurity.org>
To: amd64@FreeBSD.org
Message-ID: <20040330005724.GA23942@xor.obsecurity.org>
Mime-Version: 1.0
Content-Type: multipart/signed; micalg=pgp-sha1;
	protocol="application/pgp-signature"; boundary="YZ5djTAD1cGYuMQK"
Content-Disposition: inline
User-Agent: Mutt/1.4.2.1i
Subject: New packages uploaded
X-BeenThere: freebsd-amd64@freebsd.org
X-Mailman-Version: 2.1.1
Precedence: list
List-Id: Porting FreeBSD to the AMD64 platform <freebsd-amd64.freebsd.org>
List-Unsubscribe: <http://lists.freebsd.org/mailman/listinfo/freebsd-amd64>,
	<mailto:freebsd-amd64-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/freebsd-amd64>
List-Post: <mailto:freebsd-amd64@freebsd.org>
List-Help: <mailto:freebsd-amd64-request@freebsd.org?subject=help>
List-Subscribe: <http://lists.freebsd.org/mailman/listinfo/freebsd-amd64>,
	<mailto:freebsd-amd64-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Tue, 30 Mar 2004 00:57:27 -0000


--YZ5djTAD1cGYuMQK
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline

I have just uploaded a full set (8234) of amd64 packages to
ftp-master, which cover Peter's recent change to stack alignment that
may have caused binary compatibility problems for some ports.  Expect
them to show up at your local mirror over the next day or so.

Kris

--YZ5djTAD1cGYuMQK
Content-Type: application/pgp-signature
Content-Disposition: inline

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.4 (FreeBSD)

iD8DBQFAaMX0Wry0BWjoQKURAr96AJ4yVsqsqb8vdLNx2aAUsr6rCLSVgwCfd0gY
a51B3XICpm4Nyw3t/yw52Z4=
=50L7
-----END PGP SIGNATURE-----

--YZ5djTAD1cGYuMQK--

From owner-freebsd-amd64@FreeBSD.ORG  Mon Mar 29 21:35:16 2004
Return-Path: <owner-freebsd-amd64@FreeBSD.ORG>
Delivered-To: freebsd-amd64@freebsd.org
Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125])
	by hub.freebsd.org (Postfix) with ESMTP
	id E005A16A4CE; Mon, 29 Mar 2004 21:35:16 -0800 (PST)
Received: from freebsd-current.sentex.ca (freebsd-current.sentex.ca
	[64.7.128.98])	by mx1.FreeBSD.org (Postfix) with ESMTP
	id BFC4943D46; Mon, 29 Mar 2004 21:35:16 -0800 (PST)
	(envelope-from tinderbox@freebsd.org)
Received: by freebsd-current.sentex.ca (Postfix, from userid 666)
	id 40BDA7303A; Tue, 30 Mar 2004 00:35:16 -0500 (EST)
Sender: FreeBSD Tinderbox <tinderbox@freebsd.org>
From: FreeBSD Tinderbox <tinderbox@freebsd.org>
To: FreeBSD Tinderbox <tinderbox@freebsd.org>, <current@freebsd.org>,
	<amd64@freebsd.org>
Precedence: bulk
Message-Id: <20040330053516.40BDA7303A@freebsd-current.sentex.ca>
Date: Tue, 30 Mar 2004 00:35:16 -0500 (EST)
Subject: [current tinderbox] failure on amd64/amd64
X-BeenThere: freebsd-amd64@freebsd.org
X-Mailman-Version: 2.1.1
List-Id: Porting FreeBSD to the AMD64 platform <freebsd-amd64.freebsd.org>
List-Unsubscribe: <http://lists.freebsd.org/mailman/listinfo/freebsd-amd64>,
	<mailto:freebsd-amd64-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/freebsd-amd64>
List-Post: <mailto:freebsd-amd64@freebsd.org>
List-Help: <mailto:freebsd-amd64-request@freebsd.org?subject=help>
List-Subscribe: <http://lists.freebsd.org/mailman/listinfo/freebsd-amd64>,
	<mailto:freebsd-amd64-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Tue, 30 Mar 2004 05:35:17 -0000

TB --- 2004-03-30 04:09:58 - tinderbox 2.3 running on freebsd-current.sentex.ca
TB --- 2004-03-30 04:09:58 - starting CURRENT tinderbox run for amd64/amd64
TB --- 2004-03-30 04:09:58 - checking out the source tree
TB --- 2004-03-30 04:09:58 - cd /home/tinderbox/sandbox/CURRENT/amd64/amd64
TB --- 2004-03-30 04:09:58 - /usr/bin/cvs -f -R -q -d/home/ncvs update -Pd -A src
TB --- 2004-03-30 04:15:41 - Use of uninitialized value in concatenation (.) or string at /home/tinderbox/bin/tinderbox line 544.
TB --- 2004-03-30 04:15:41 - building world (CFLAGS={'CFLAGS'})
TB --- 2004-03-30 04:15:41 - cd /home/tinderbox/sandbox/CURRENT/amd64/amd64/src
TB --- 2004-03-30 04:15:41 - /usr/bin/make -B buildworld
>>> Rebuilding the temporary build tree
>>> stage 1.1: legacy release compatibility shims
>>> stage 1.2: bootstrap tools
>>> stage 2.1: cleaning up the object tree
>>> stage 2.2: rebuilding the object tree
>>> stage 2.3: build tools
>>> stage 3: cross tools
>>> stage 4.1: building includes
>>> stage 4.2: building libraries
[...]
ranlib libdevstat.a
cc -fpic -DPIC -O2 -pipe  -I/other/tinderbox/CURRENT/amd64/amd64/src/lib/libdevstat -Wsystem-headers -Werror -Wall -Wno-format-y2k -Wno-uninitialized -c /other/tinderbox/CURRENT/amd64/amd64/src/lib/libdevstat/devstat.c -o devstat.So
building shared library libdevstat.so.4
===> lib/libdisk
cc -O2 -pipe  -I/other/tinderbox/CURRENT/amd64/amd64/src/lib/libdisk/../../sys/geom -Wsystem-headers -Werror -Wall -Wno-format-y2k -W -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith -Wreturn-type -Wcast-qual -Wwrite-strings -Wswitch -Wshadow -Wcast-align -Wno-uninitialized -c /other/tinderbox/CURRENT/amd64/amd64/src/lib/libdisk/blocks.c
cc -O2 -pipe  -I/other/tinderbox/CURRENT/amd64/amd64/src/lib/libdisk/../../sys/geom -Wsystem-headers -Werror -Wall -Wno-format-y2k -W -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith -Wreturn-type -Wcast-qual -Wwrite-strings -Wswitch -Wshadow -Wcast-align -Wno-uninitialized -c /other/tinderbox/CURRENT/amd64/amd64/src/lib/libdisk/change.c
/other/tinderbox/CURRENT/amd64/amd64/src/lib/libdisk/change.c: In function `Sanitize_Bios_Geom':
/other/tinderbox/CURRENT/amd64/amd64/src/lib/libdisk/change.c:52: warning: comparison between signed and unsigned
*** Error code 1

Stop in /other/tinderbox/CURRENT/amd64/amd64/src/lib/libdisk.
*** Error code 1

Stop in /other/tinderbox/CURRENT/amd64/amd64/src/lib.
*** Error code 1

Stop in /other/tinderbox/CURRENT/amd64/amd64/src.
*** Error code 1

Stop in /other/tinderbox/CURRENT/amd64/amd64/src.
*** Error code 1

Stop in /other/tinderbox/CURRENT/amd64/amd64/src.
*** Error code 1

Stop in /other/tinderbox/CURRENT/amd64/amd64/src.
TB --- 2004-03-30 05:35:15 - WARNING: /usr/bin/make returned exit code  1 
TB --- 2004-03-30 05:35:15 - ERROR: failed to build world
TB --- 2004-03-30 05:35:15 - tinderbox aborted

From owner-freebsd-amd64@FreeBSD.ORG  Tue Mar 30 14:11:27 2004
Return-Path: <owner-freebsd-amd64@FreeBSD.ORG>
Delivered-To: freebsd-amd64@freebsd.org
Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125])
	by hub.freebsd.org (Postfix) with ESMTP id 6B81116A4CE
	for <freebsd-amd64@freebsd.org>; Tue, 30 Mar 2004 14:11:27 -0800 (PST)
Received: from freebee.digiware.nl (dsl390.iae.nl [212.61.63.138])
	by mx1.FreeBSD.org (Postfix) with ESMTP id 5DAA643D3F
	for <freebsd-amd64@freebsd.org>; Tue, 30 Mar 2004 14:11:26 -0800 (PST)
	(envelope-from wjw@withagen.nl)
Received: from dual (dual [212.61.27.71])
	by freebee.digiware.nl (8.12.10/8.12.9) with SMTP id i2UM7MeL077663
	for <freebsd-amd64@freebsd.org>;
	Wed, 31 Mar 2004 00:07:22 +0200 (CEST)
	(envelope-from wjw@withagen.nl)
Message-ID: <03c701c416a3$8d2c2f60$471b3dd4@dual>
From: "Willem Jan Withagen" <wjw@withagen.nl>
To: <freebsd-amd64@freebsd.org>
Date: Wed, 31 Mar 2004 00:08:37 +0200
MIME-Version: 1.0
Content-Type: text/plain;
	charset="iso-8859-1"
Content-Transfer-Encoding: 7bit
X-Priority: 3
X-MSMail-Priority: Normal
X-Mailer: Microsoft Outlook Express 6.00.2800.1158
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1165
Subject: AMD overview document missing
X-BeenThere: freebsd-amd64@freebsd.org
X-Mailman-Version: 2.1.1
Precedence: list
List-Id: Porting FreeBSD to the AMD64 platform <freebsd-amd64.freebsd.org>
List-Unsubscribe: <http://lists.freebsd.org/mailman/listinfo/freebsd-amd64>,
	<mailto:freebsd-amd64-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/freebsd-amd64>
List-Post: <mailto:freebsd-amd64@freebsd.org>
List-Help: <mailto:freebsd-amd64-request@freebsd.org?subject=help>
List-Subscribe: <http://lists.freebsd.org/mailman/listinfo/freebsd-amd64>,
	<mailto:freebsd-amd64-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Tue, 30 Mar 2004 22:11:27 -0000

Hi,

On the amd64 port page is a link to:

     AMD x86-64 Architecture Specification

but it is no longer on the place indicated.
Searching the amd website does not reveil something that
seems to look like it.

Does anybody have a copy????

Thanx,
--WjW
 

From owner-freebsd-amd64@FreeBSD.ORG  Tue Mar 30 14:27:54 2004
Return-Path: <owner-freebsd-amd64@FreeBSD.ORG>
Delivered-To: freebsd-amd64@freebsd.org
Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125])
	by hub.freebsd.org (Postfix) with ESMTP id 15AA116A4CF
	for <freebsd-amd64@freebsd.org>; Tue, 30 Mar 2004 14:27:54 -0800 (PST)
Received: from host142.ipowerweb.com (host142.ipowerweb.com [66.235.193.61])
	by mx1.FreeBSD.org (Postfix) with SMTP id CF3C743D45
	for <freebsd-amd64@freebsd.org>; Tue, 30 Mar 2004 14:27:53 -0800 (PST)
	(envelope-from jem@thejemreport.com)
Received: (qmail 27903 invoked from network); 30 Mar 2004 22:27:07 -0000
Received: from unknown (HELO thejemreport.com) (66.67.130.234)
  by host142.ipowerweb.com with SMTP; 30 Mar 2004 22:27:07 -0000
Message-ID: <4069F399.90201@thejemreport.com>
Date: Tue, 30 Mar 2004 17:24:25 -0500
From: Jem Matzan <jem@thejemreport.com>
User-Agent: Mozilla/5.0 (X11; U; FreeBSD i386; en-US; rv:1.6) Gecko/20040319
X-Accept-Language: en-us, en
MIME-Version: 1.0
To: freebsd-amd64@freebsd.org
References: <03c701c416a3$8d2c2f60$471b3dd4@dual>
In-Reply-To: <03c701c416a3$8d2c2f60$471b3dd4@dual>
Content-Type: multipart/mixed;
 boundary="------------040109030707030207060107"
X-Content-Filtered-By: Mailman/MimeDel 2.1.1
Subject: Re: AMD overview document missing
X-BeenThere: freebsd-amd64@freebsd.org
X-Mailman-Version: 2.1.1
Precedence: list
List-Id: Porting FreeBSD to the AMD64 platform <freebsd-amd64.freebsd.org>
List-Unsubscribe: <http://lists.freebsd.org/mailman/listinfo/freebsd-amd64>,
	<mailto:freebsd-amd64-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/freebsd-amd64>
List-Post: <mailto:freebsd-amd64@freebsd.org>
List-Help: <mailto:freebsd-amd64-request@freebsd.org?subject=help>
List-Subscribe: <http://lists.freebsd.org/mailman/listinfo/freebsd-amd64>,
	<mailto:freebsd-amd64-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Tue, 30 Mar 2004 22:27:54 -0000

This is a multi-part message in MIME format.
--------------040109030707030207060107
Content-Type: text/plain; charset=us-ascii; format=flowed
Content-Transfer-Encoding: 7bit

Willem Jan Withagen wrote:

>Hi,
>
>On the amd64 port page is a link to:
>
>     AMD x86-64 Architecture Specification
>
>but it is no longer on the place indicated.
>Searching the amd website does not reveil something that
>seems to look like it.
>
>Does anybody have a copy????
>
>Thanx,
>--WjW
> 
>_______________________________________________
>freebsd-amd64@freebsd.org mailing list
>http://lists.freebsd.org/mailman/listinfo/freebsd-amd64
>To unsubscribe, send any mail to "freebsd-amd64-unsubscribe@freebsd.org"
>
>
>  
>
http://www.thejemreport.com/files/AMD64API.pdf

I'll leave it up for a while, so if anyone else wants it, have at.

-Jem

--------------040109030707030207060107--

From owner-freebsd-amd64@FreeBSD.ORG  Tue Mar 30 15:40:46 2004
Return-Path: <owner-freebsd-amd64@FreeBSD.ORG>
Delivered-To: freebsd-amd64@freebsd.org
Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125])
	by hub.freebsd.org (Postfix) with ESMTP id 8036B16A4CE
	for <freebsd-amd64@freebsd.org>; Tue, 30 Mar 2004 15:40:46 -0800 (PST)
Received: from freebee.digiware.nl (dsl390.iae.nl [212.61.63.138])
	by mx1.FreeBSD.org (Postfix) with ESMTP id 21C7343D41
	for <freebsd-amd64@freebsd.org>; Tue, 30 Mar 2004 15:40:45 -0800 (PST)
	(envelope-from wjw@withagen.nl)
Received: from dual (dual [212.61.27.71])
	by freebee.digiware.nl (8.12.10/8.12.9) with SMTP id i2UNaeeL079811;
	Wed, 31 Mar 2004 01:36:41 +0200 (CEST)
	(envelope-from wjw@withagen.nl)
Message-ID: <04e601c416b0$079be950$471b3dd4@dual>
From: "Willem Jan Withagen" <wjw@withagen.nl>
To: "Jem Matzan" <jem@thejemreport.com>, <freebsd-amd64@freebsd.org>
References: <03c701c416a3$8d2c2f60$471b3dd4@dual>
	<4069F399.90201@thejemreport.com>
Date: Wed, 31 Mar 2004 01:37:56 +0200
MIME-Version: 1.0
Content-Type: text/plain;
	charset="iso-8859-1"
Content-Transfer-Encoding: 7bit
X-Priority: 3
X-MSMail-Priority: Normal
X-Mailer: Microsoft Outlook Express 6.00.2800.1158
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1165
Subject: Re: AMD overview document missing
X-BeenThere: freebsd-amd64@freebsd.org
X-Mailman-Version: 2.1.1
Precedence: list
List-Id: Porting FreeBSD to the AMD64 platform <freebsd-amd64.freebsd.org>
List-Unsubscribe: <http://lists.freebsd.org/mailman/listinfo/freebsd-amd64>,
	<mailto:freebsd-amd64-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/freebsd-amd64>
List-Post: <mailto:freebsd-amd64@freebsd.org>
List-Help: <mailto:freebsd-amd64-request@freebsd.org?subject=help>
List-Subscribe: <http://lists.freebsd.org/mailman/listinfo/freebsd-amd64>,
	<mailto:freebsd-amd64-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Tue, 30 Mar 2004 23:40:46 -0000


----- Original Message ----- 
From: "Jem Matzan" <jem@thejemreport.com>
> >On the amd64 port page is a link to:
> >
> >     AMD x86-64 Architecture Specification
> >
> >but it is no longer on the place indicated.
> >Searching the amd website does not reveil something that
> >seems to look like it.
> >
> >Does anybody have a copy????

> http://www.thejemreport.com/files/AMD64API.pdf
>
> I'll leave it up for a while, so if anyone else wants it, have at.
>
> -Jem

Is this is the document then they are still online,
only the naming has changed....

It is now called:

http://www.amd.com/us-en/assets/content_type/white_papers_and_tech_docs/24592.pdf

Somebody cares to fix the amd64-port page???

--WjW

From owner-freebsd-amd64@FreeBSD.ORG  Tue Mar 30 23:36:04 2004
Return-Path: <owner-freebsd-amd64@FreeBSD.ORG>
Delivered-To: freebsd-amd64@freebsd.org
Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125])
	by hub.freebsd.org (Postfix) with ESMTP id E9B1E16A4CE
	for <freebsd-amd64@freebsd.org>; Tue, 30 Mar 2004 23:36:04 -0800 (PST)
Received: from canning.wemm.org (canning.wemm.org [192.203.228.65])
	by mx1.FreeBSD.org (Postfix) with ESMTP id C94D843D69
	for <freebsd-amd64@freebsd.org>; Tue, 30 Mar 2004 23:36:04 -0800 (PST)
	(envelope-from peter@evilpete.dyndns.org)
Received: from fw.wemm.org (canning.wemm.org [192.203.228.65])
	by canning.wemm.org (Postfix) with ESMTP id 88AF12A7EA
	for <freebsd-amd64@freebsd.org>; Tue, 30 Mar 2004 23:36:04 -0800 (PST)
	(envelope-from peter@overcee.wemm.org)
Received: from overcee.wemm.org (overcee.wemm.org [10.0.0.3])
	by fw.wemm.org (Postfix) with ESMTP id 9EF87E259
	for <freebsd-amd64@freebsd.org>; Tue, 30 Mar 2004 23:36:05 -0800 (PST)
	(envelope-from peter@overcee.wemm.org)
Received: from overcee.wemm.org (localhost [127.0.0.1])
	by overcee.wemm.org (8.12.11/8.12.11) with ESMTP id i2V7ZGLp037460
	for <freebsd-amd64@freebsd.org>; Tue, 30 Mar 2004 23:35:16 -0800 (PST)
	(envelope-from peter@overcee.wemm.org)
Received: from localhost (localhost [[UNIX: localhost]])
	by overcee.wemm.org (8.12.11/8.12.11/Submit) id i2V7ZGPK037459
	for freebsd-amd64@freebsd.org; Tue, 30 Mar 2004 23:35:16 -0800 (PST)
	(envelope-from peter)
From: Peter Wemm <peter@wemm.org>
Date: Tue, 30 Mar 2004 23:35:16 -0800
User-Agent: KMail/1.6.1
To: freebsd-amd64@freebsd.org
MIME-Version: 1.0
Content-Disposition: inline
Content-Type: text/plain;
  charset="iso-8859-1"
Content-Transfer-Encoding: 7bit
Message-Id: <200403302335.16357.peter@wemm.org>
Subject: HEADS UP: cvs commit: src/lib/libc/amd64/gen makecontext.c
	signalcontext.c
X-BeenThere: freebsd-amd64@freebsd.org
X-Mailman-Version: 2.1.1
Precedence: list
List-Id: Porting FreeBSD to the AMD64 platform <freebsd-amd64.freebsd.org>
List-Unsubscribe: <http://lists.freebsd.org/mailman/listinfo/freebsd-amd64>,
	<mailto:freebsd-amd64-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/freebsd-amd64>
List-Post: <mailto:freebsd-amd64@freebsd.org>
List-Help: <mailto:freebsd-amd64-request@freebsd.org?subject=help>
List-Subscribe: <http://lists.freebsd.org/mailman/listinfo/freebsd-amd64>,
	<mailto:freebsd-amd64-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Wed, 31 Mar 2004 07:36:05 -0000

I've found another stack alignment bug.  This one is an easy fix, it 
just needs a libc rebuild/install.

Can I get a sanity check from the folks who can break ogg123?  I 
actually found this using ogg123 in case you're interested.

----------  Forwarded Message  ----------

Subject: cvs commit: src/lib/libc/amd64/gen makecontext.c 
signalcontext.c
Date: Tuesday 30 March 2004 11:27 pm
From: Peter Wemm <peter@FreeBSD.org>
To: src-committers@FreeBSD.org, cvs-src@FreeBSD.org, cvs-all@FreeBSD.org

peter       2004/03/30 23:27:31 PST

  FreeBSD src repository

  Modified files:
    lib/libc/amd64/gen   makecontext.c signalcontext.c
  Log:
  Fix Yet Another 16 byte stack alignment bug.  Thankfully, this one is
  solved by a simple 'make world'.  The signalcontext function was
 going to the trouble of generating an even 16 byte alignment, but in
 fact it needed to be odd aligned to simulate the 8-byte return address
 having been pushed by the caller.  This fixes yet another group of
 crashes in applications using libpthread.  And yet again, it was my
 fault all along.

  While here, rename the duplicate internal ctx_wrapper() functions to
  makectx_wrapper() and sigctx_wrapper() so that traces aren't
 ambiguous.

  Revision  Changes    Path
  1.3       +3 -3      src/lib/libc/amd64/gen/makecontext.c
  1.3       +7 -7      src/lib/libc/amd64/gen/signalcontext.c

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

-- 
Peter Wemm - peter@wemm.org; peter@FreeBSD.org; peter@yahoo-inc.com
"All of this is for nothing if we don't go to the stars" - JMS/B5

From owner-freebsd-amd64@FreeBSD.ORG  Wed Mar 31 00:07:53 2004
Return-Path: <owner-freebsd-amd64@FreeBSD.ORG>
Delivered-To: freebsd-amd64@freebsd.org
Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125])
	by hub.freebsd.org (Postfix) with ESMTP id 11CA916A4CE
	for <freebsd-amd64@freebsd.org>; Wed, 31 Mar 2004 00:07:53 -0800 (PST)
Received: from farside.isc.org (farside.isc.org [204.152.187.5])
	by mx1.FreeBSD.org (Postfix) with ESMTP id EAC9E43D58
	for <freebsd-amd64@freebsd.org>; Wed, 31 Mar 2004 00:07:52 -0800 (PST)
	(envelope-from Peter_Losher@isc.org)
Received: by farside.isc.org (Postfix, from userid 10188)
	id C45B5A84A; Wed, 31 Mar 2004 08:07:52 +0000 (UTC)
Received: from localhost (localhost [127.0.0.1])
	by farside.isc.org (Postfix) with ESMTP id C151FA847
	for <freebsd-amd64@freebsd.org>; Wed, 31 Mar 2004 08:07:52 +0000 (UTC)
	(envelope-from plosher@isc.org)
Date: Wed, 31 Mar 2004 08:07:52 +0000 (UTC)
From: Peter Losher <Peter_Losher@isc.org>
To: freebsd-amd64@freebsd.org
Message-ID: <20040331074508.M42491@farside.isc.org>
MIME-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
Subject: mod_perl2 and libperl.a and -fPIC...
X-BeenThere: freebsd-amd64@freebsd.org
X-Mailman-Version: 2.1.1
Precedence: list
List-Id: Porting FreeBSD to the AMD64 platform <freebsd-amd64.freebsd.org>
List-Unsubscribe: <http://lists.freebsd.org/mailman/listinfo/freebsd-amd64>,
	<mailto:freebsd-amd64-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/freebsd-amd64>
List-Post: <mailto:freebsd-amd64@freebsd.org>
List-Help: <mailto:freebsd-amd64-request@freebsd.org?subject=help>
List-Subscribe: <http://lists.freebsd.org/mailman/listinfo/freebsd-amd64>,
	<mailto:freebsd-amd64-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Wed, 31 Mar 2004 08:07:53 -0000

I am trying to compile mod_perl2 as a DSO on my amd64 system, and cam
across this error..

-=-
/usr/bin/ld: /usr/local/lib/perl5/5.6.1/mach/CORE/libperl.a(perl.o):
relocation R_X86_64_32S can not be used when making a shared object;
recompile with -fPIC
/usr/local/lib/perl5/5.6.1/mach/CORE/libperl.a: could not read symbols: Bad
value
*** Error code 1

Stop in /usr/ports/www/mod_perl2/work/mod_perl-1.99_12/src/modules/perl.
*** Error code 1
-=-

Now as I understand it perl is built w/ -fPIC (even rebuilt the port to be
sure), so is there something else at work here?

Best Wishes - Peter
-- 
Peter_Losher@isc.org | ISC | OpenPGP 0xE8048D08 | "The bits must flow"

From owner-freebsd-amd64@FreeBSD.ORG  Wed Mar 31 00:28:50 2004
Return-Path: <owner-freebsd-amd64@FreeBSD.ORG>
Delivered-To: freebsd-amd64@freebsd.org
Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125])
	by hub.freebsd.org (Postfix) with ESMTP id C7E3316A4CE
	for <freebsd-amd64@freebsd.org>; Wed, 31 Mar 2004 00:28:50 -0800 (PST)
Received: from canning.wemm.org (canning.wemm.org [192.203.228.65])
	by mx1.FreeBSD.org (Postfix) with ESMTP id B71A843D31
	for <freebsd-amd64@freebsd.org>; Wed, 31 Mar 2004 00:28:50 -0800 (PST)
	(envelope-from peter@evilpete.dyndns.org)
Received: from fw.wemm.org (canning.wemm.org [192.203.228.65])
	by canning.wemm.org (Postfix) with ESMTP id 979DF2A7EA
	for <freebsd-amd64@freebsd.org>; Wed, 31 Mar 2004 00:28:50 -0800 (PST)
	(envelope-from peter@overcee.wemm.org)
Received: from overcee.wemm.org (overcee.wemm.org [10.0.0.3])
	by fw.wemm.org (Postfix) with ESMTP id 96FEBE259
	for <freebsd-amd64@freebsd.org>; Wed, 31 Mar 2004 00:28:51 -0800 (PST)
	(envelope-from peter@overcee.wemm.org)
Received: from overcee.wemm.org (localhost [127.0.0.1])
	by overcee.wemm.org (8.12.11/8.12.11) with ESMTP id i2V8S2lQ038034;
	Wed, 31 Mar 2004 00:28:02 -0800 (PST)
	(envelope-from peter@overcee.wemm.org)
Received: from localhost (localhost [[UNIX: localhost]])
	by overcee.wemm.org (8.12.11/8.12.11/Submit) id i2V8S2lI038033;
	Wed, 31 Mar 2004 00:28:02 -0800 (PST)
	(envelope-from peter)
From: Peter Wemm <peter@wemm.org>
To: freebsd-amd64@freebsd.org
Date: Wed, 31 Mar 2004 00:28:02 -0800
User-Agent: KMail/1.6.1
References: <20040331074508.M42491@farside.isc.org>
In-Reply-To: <20040331074508.M42491@farside.isc.org>
MIME-Version: 1.0
Content-Disposition: inline
Content-Type: text/plain;
  charset="iso-8859-1"
Content-Transfer-Encoding: 7bit
Message-Id: <200403310028.02495.peter@wemm.org>
Subject: Re: mod_perl2 and libperl.a and -fPIC...
X-BeenThere: freebsd-amd64@freebsd.org
X-Mailman-Version: 2.1.1
Precedence: list
List-Id: Porting FreeBSD to the AMD64 platform <freebsd-amd64.freebsd.org>
List-Unsubscribe: <http://lists.freebsd.org/mailman/listinfo/freebsd-amd64>,
	<mailto:freebsd-amd64-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/freebsd-amd64>
List-Post: <mailto:freebsd-amd64@freebsd.org>
List-Help: <mailto:freebsd-amd64-request@freebsd.org?subject=help>
List-Subscribe: <http://lists.freebsd.org/mailman/listinfo/freebsd-amd64>,
	<mailto:freebsd-amd64-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Wed, 31 Mar 2004 08:28:50 -0000

On Wednesday 31 March 2004 12:07 am, Peter Losher wrote:
> I am trying to compile mod_perl2 as a DSO on my amd64 system, and cam
> across this error..
>
> -=-
> /usr/bin/ld: /usr/local/lib/perl5/5.6.1/mach/CORE/libperl.a(perl.o):
> relocation R_X86_64_32S can not be used when making a shared object;
> recompile with -fPIC
> /usr/local/lib/perl5/5.6.1/mach/CORE/libperl.a: could not read
> symbols: Bad value
> *** Error code 1
>
> Stop in
> /usr/ports/www/mod_perl2/work/mod_perl-1.99_12/src/modules/perl. ***
> Error code 1
> -=-
>
> Now as I understand it perl is built w/ -fPIC (even rebuilt the port
> to be sure), so is there something else at work here?

Yeah, the perl5.6.1 port doesn't build a shared object, so it can't be 
embedded inside another shared object.

However, the perl5.8 port does have shared object support enabled.

Don't ask me why 5.6.1 doesn't do it though. :-)

> Best Wishes - Peter

-- 
Peter Wemm - peter@wemm.org; peter@FreeBSD.org; peter@yahoo-inc.com
"All of this is for nothing if we don't go to the stars" - JMS/B5

From owner-freebsd-amd64@FreeBSD.ORG  Wed Mar 31 00:46:33 2004
Return-Path: <owner-freebsd-amd64@FreeBSD.ORG>
Delivered-To: freebsd-amd64@freebsd.org
Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125])
	by hub.freebsd.org (Postfix) with ESMTP
	id BBBF416A4CE; Wed, 31 Mar 2004 00:46:33 -0800 (PST)
Received: from mta4.rcsntx.swbell.net (mta4.rcsntx.swbell.net [151.164.30.28])
	by mx1.FreeBSD.org (Postfix) with ESMTP
	id 7208943D48; Wed, 31 Mar 2004 00:46:33 -0800 (PST)
	(envelope-from kris@obsecurity.org)
Received: from obsecurity.dyndns.org
	(57a4f8c727301f7cf14e8e8ec9316057@adsl-67-115-73-128.dsl.lsan03.pacbell.net
	[67.115.73.128])i2V8kVbF008930;	Wed, 31 Mar 2004 02:46:31 -0600 (CST)
Received: by obsecurity.dyndns.org (Postfix, from userid 1000)
	id F2DB251A72; Wed, 31 Mar 2004 00:46:30 -0800 (PST)
Date: Wed, 31 Mar 2004 00:46:30 -0800
From: Kris Kennaway <kris@obsecurity.org>
To: Burkard Meyendriesch <bm@malepartus.de>
Message-ID: <20040331084630.GA46610@xor.obsecurity.org>
References: <20040320141343.37a38cc2.bm@malepartus.de>
	<20040321000001.GA40310@xor.obsecurity.org>
	<20040331092247.6de3b225.bm@malepartus.de>
Mime-Version: 1.0
Content-Type: multipart/signed; micalg=pgp-sha1;
	protocol="application/pgp-signature"; boundary="M9NhX3UHpAaciwkO"
Content-Disposition: inline
In-Reply-To: <20040331092247.6de3b225.bm@malepartus.de>
User-Agent: Mutt/1.4.2.1i
cc: freebsd-amd64@freebsd.org
cc: freebsd-ports@freebsd.org
cc: Kris Kennaway <kris@obsecurity.org>
Subject: Re: amd64 -CURRENT: still problems with shared libraries
X-BeenThere: freebsd-amd64@freebsd.org
X-Mailman-Version: 2.1.1
Precedence: list
List-Id: Porting FreeBSD to the AMD64 platform <freebsd-amd64.freebsd.org>
List-Unsubscribe: <http://lists.freebsd.org/mailman/listinfo/freebsd-amd64>,
	<mailto:freebsd-amd64-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/freebsd-amd64>
List-Post: <mailto:freebsd-amd64@freebsd.org>
List-Help: <mailto:freebsd-amd64-request@freebsd.org?subject=help>
List-Subscribe: <http://lists.freebsd.org/mailman/listinfo/freebsd-amd64>,
	<mailto:freebsd-amd64-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Wed, 31 Mar 2004 08:46:33 -0000


--M9NhX3UHpAaciwkO
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

On Wed, Mar 31, 2004 at 09:22:47AM +0200, Burkard Meyendriesch wrote:
> Hi Kris,
>=20
> sorry to disturb you again with my shared libraries problem. I can not
> find the cause of the strange behaviour of the ports system (maybe the
> reason is that I don't fully understand the autoconf, configure, libtool
> mechanism).
>=20
> For example: If I try to compile and install libiconv:
>=20
> # cd /usr/ports/converters/libiconv
> # make clean
> # make
> # ls -l work/libiconv-1.9.1/lib/.libs
> -rw-r--r--  1 root  wheel  1052434 31 Mr 08:45 libiconv.a
> lrwxr-xr-x  1 root  wheel       14 31 Mr 08:45 libiconv.la -> ../libiconv=
.la
> -rw-r--r--  1 root  wheel      619 31 Mr 08:45 libiconv.lai
>=20
> I only get the static version of the library. It seems that libtool
> decided not to build shared libraries:
>=20
> # grep ^build_libtool_libs=3D work/libiconv-1.9.1/libtool
> build_libtool_libs=3Dno
>=20
> Even if I force the generation of the shared libs:
> # cd /usr/ports/converters/libiconv/work/libiconv-1.9.1
> # make clean
> # ./configure --enable-shared
> # grep ^build_libtool_libs=3D libtool
> build_libtool_libs=3Dno
>=20
> the system refuses to do so.
> (Find the complete config.status and libtool appended.)
>=20
> My environment:
> # uname -a
> FreeBSD Reineke.Malepartus.de 5.2-CURRENT FreeBSD 5.2-CURRENT #15: Mon Ma=
r 22 19:28:17 CET 2004     bm@Reineke.Malepartus.de:/usr/obj/usr/src/sys/RE=
INEKE  amd64
>=20
> An actual /usr/ports tree (31.03.2004 04:00 UTC), *no* options enabled=20
> in /etc/make.conf.
>=20
> Any help how to locate and fix the problem welcome :-)
> Burkard

Something must be wrong with your libtool installation..try reinstalling th=
e ports.

Kris
--M9NhX3UHpAaciwkO
Content-Type: application/pgp-signature
Content-Disposition: inline

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.4 (FreeBSD)

iD8DBQFAaoVmWry0BWjoQKURAnULAKCpahjcvyBOvHkkNTbEwNFEhwVKSwCgvQ7W
Sdfsn2oogDPWsgovPDh/qxU=
=M46r
-----END PGP SIGNATURE-----

--M9NhX3UHpAaciwkO--

From owner-freebsd-amd64@FreeBSD.ORG  Wed Mar 31 02:36:42 2004
Return-Path: <owner-freebsd-amd64@FreeBSD.ORG>
Delivered-To: freebsd-amd64@freebsd.org
Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125])
	by hub.freebsd.org (Postfix) with ESMTP
	id 999CA16A4CF; Wed, 31 Mar 2004 02:36:42 -0800 (PST)
Received: from reineke.malepartus.de (reineke.malepartus.de [194.25.4.41])
	by mx1.FreeBSD.org (Postfix) with ESMTP
	id 7D83D43D6A; Wed, 31 Mar 2004 02:36:41 -0800 (PST)
	(envelope-from bm@reineke.malepartus.de)
Received: from reineke.malepartus.de (localhost.malepartus.de [127.0.0.1])
	i2VAaTUa098919;	Wed, 31 Mar 2004 12:36:29 +0200 (CEST)
	(envelope-from bm@reineke.malepartus.de)
Received: (from bm@localhost)
	by reineke.malepartus.de (8.12.11/8.12.11/Submit) id i2VAaTsv098918;
	Wed, 31 Mar 2004 12:36:29 +0200 (CEST)
	(envelope-from bm)
Date: Wed, 31 Mar 2004 12:36:29 +0200
From: Burkard Meyendriesch <bm@malepartus.de>
To: Kris Kennaway <kris@obsecurity.org>
Message-Id: <20040331123629.11efe20f.bm@malepartus.de>
In-Reply-To: <20040331084630.GA46610@xor.obsecurity.org>
References: <20040320141343.37a38cc2.bm@malepartus.de>
	<20040321000001.GA40310@xor.obsecurity.org>
	<20040331092247.6de3b225.bm@malepartus.de>
	<20040331084630.GA46610@xor.obsecurity.org>
Organization: The Home of Reineke Fuchs
X-Mailer: Sylpheed version 0.9.10 (GTK+ 1.2.10; amd64-portbld-freebsd5.2.1)
X-Face: "[-;
	]oI+8gP9>*J%knDN8d%DuhvJS2Lj4L\bRb7gz(pcT?2Zh6_Vam_6csAum3$<&lhAFd^
	jt|!&Ut1C~Vg*E/q}+#cbFg-GU]c.bB8Ad,L'W$'9{^0y'AzM4#hS[C[F-1'|O;
	Kg3V<ZJKG3g9Fs-
	kuovqp|S7(.wC"D@/O5xcb^PSDJU#jyt`tp^7Trg239:o9bDVm\{6J,`P<>rq5q6dsU*TmJ@}+QPM\
	b[^<zL1qL^&)o'{%T@Q&p)N$OZ:aDa(r2f5?52HuGmO'm>9Rhd,UoMpRpd5k[X=h.Dom*kbT`cNQ
Mime-Version: 1.0
Content-Type: text/plain; charset=US-ASCII
Content-Transfer-Encoding: 7bit
X-Malepartus-MailScanner-Information: Please contact the ISP for more
	information
X-Malepartus-MailScanner: Found to be clean
X-MailScanner-From: bm@reineke.malepartus.de
cc: freebsd-amd64@freebsd.org
cc: freebsd-ports@freebsd.org
Subject: Re: amd64 -CURRENT: still problems with shared libraries
X-BeenThere: freebsd-amd64@freebsd.org
X-Mailman-Version: 2.1.1
Precedence: list
List-Id: Porting FreeBSD to the AMD64 platform <freebsd-amd64.freebsd.org>
List-Unsubscribe: <http://lists.freebsd.org/mailman/listinfo/freebsd-amd64>,
	<mailto:freebsd-amd64-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/freebsd-amd64>
List-Post: <mailto:freebsd-amd64@freebsd.org>
List-Help: <mailto:freebsd-amd64-request@freebsd.org?subject=help>
List-Subscribe: <http://lists.freebsd.org/mailman/listinfo/freebsd-amd64>,
	<mailto:freebsd-amd64-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Wed, 31 Mar 2004 10:36:42 -0000

On Wed, 31 Mar 2004 00:46:30 -0800 Kris Kennaway wrote:

> Something must be wrong with your libtool installation..try
> reinstalling the ports.

Okay; I had three versions of libtool on my system:
# pkg_info | grep libtool
libtool-1.3.5_2     Generic shared library support script (version 1.3)
libtool-1.4.3_3     Generic shared library support script (version 1.4)
libtool-1.5.2_1     Generic shared library support script (version 1.5)

I pkg_deinstall'ed them all:
# pkg_deinstall -f libtool-1.3.5_2 libtool-1.4.3_3 libtool-1.5.2_1

Then I tried again to install libiconv:
# portinstall -f converters/libiconv

This installs libtool-1.3.5_2 but still results in the same problem:
no shared library:
# ls -ltr /usr/local/lib/libiconv.*
-rw-r--r--  1 root  wheel  1052434 31 Mr 12:26 /usr/local/lib/libiconv.a

---- /usr/ports/converters/libiconv/work/libiconv-1.9.1/libtool ----
# Whether or not to build shared libraries.
build_libtool_libs=no

# Whether or not to build static libraries.
build_old_libs=yes
--------------------------------------------------------------------

Still the same behaviour :-( 
Even if I force ./configure --enable-shared

Burkard

--
Burkard Meyendriesch
Stevern 2
D-48301 Nottuln

From owner-freebsd-amd64@FreeBSD.ORG  Tue Mar 30 23:23:18 2004
Return-Path: <owner-freebsd-amd64@FreeBSD.ORG>
Delivered-To: freebsd-amd64@freebsd.org
Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125])
	by hub.freebsd.org (Postfix) with ESMTP
	id 0E23216A4CE; Tue, 30 Mar 2004 23:23:18 -0800 (PST)
Received: from reineke.malepartus.de (reineke.malepartus.de [194.25.4.41])
	by mx1.FreeBSD.org (Postfix) with ESMTP
	id 6F2F143D1D; Tue, 30 Mar 2004 23:22:53 -0800 (PST)
	(envelope-from bm@reineke.malepartus.de)
Received: from reineke.malepartus.de (localhost.malepartus.de [127.0.0.1])
	i2V7MlKF063130;	Wed, 31 Mar 2004 09:22:47 +0200 (CEST)
	(envelope-from bm@reineke.malepartus.de)
Received: (from bm@localhost)
	by reineke.malepartus.de (8.12.11/8.12.11/Submit) id i2V7Ml25063129;
	Wed, 31 Mar 2004 09:22:47 +0200 (CEST)
	(envelope-from bm)
Date: Wed, 31 Mar 2004 09:22:47 +0200
From: Burkard Meyendriesch <bm@malepartus.de>
To: Kris Kennaway <kris@obsecurity.org>
Message-Id: <20040331092247.6de3b225.bm@malepartus.de>
In-Reply-To: <20040321000001.GA40310@xor.obsecurity.org>
References: <20040320141343.37a38cc2.bm@malepartus.de>
	<20040321000001.GA40310@xor.obsecurity.org>
Organization: The Home of Reineke Fuchs
X-Mailer: Sylpheed version 0.9.10 (GTK+ 1.2.10; amd64-portbld-freebsd5.2.1)
X-Face: "[-;
	]oI+8gP9>*J%knDN8d%DuhvJS2Lj4L\bRb7gz(pcT?2Zh6_Vam_6csAum3$<&lhAFd^
	jt|!&Ut1C~Vg*E/q}+#cbFg-GU]c.bB8Ad,L'W$'9{^0y'AzM4#hS[C[F-1'|O;
	Kg3V<ZJKG3g9Fs-
	kuovqp|S7(.wC"D@/O5xcb^PSDJU#jyt`tp^7Trg239:o9bDVm\{6J,`P<>rq5q6dsU*TmJ@}+QPM\
	b[^<zL1qL^&)o'{%T@Q&p)N$OZ:aDa(r2f5?52HuGmO'm>9Rhd,UoMpRpd5k[X=h.Dom*kbT`cNQ
Mime-Version: 1.0
Content-Type: multipart/mixed;
 boundary="Multipart=_Wed__31_Mar_2004_09_22_47_+0200_IVAWlh/MouLt7b_T"
X-Malepartus-MailScanner-Information: Please contact the ISP for more
	information
X-Malepartus-MailScanner: Found to be clean
X-MailScanner-From: bm@reineke.malepartus.de
X-Mailman-Approved-At: Wed, 31 Mar 2004 04:32:02 -0800
cc: freebsd-amd64@freebsd.org
cc: freebsd-ports@freebsd.org
Subject: amd64 -CURRENT: still problems with shared libraries
X-BeenThere: freebsd-amd64@freebsd.org
X-Mailman-Version: 2.1.1
Precedence: list
List-Id: Porting FreeBSD to the AMD64 platform <freebsd-amd64.freebsd.org>
List-Unsubscribe: <http://lists.freebsd.org/mailman/listinfo/freebsd-amd64>,
	<mailto:freebsd-amd64-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/freebsd-amd64>
List-Post: <mailto:freebsd-amd64@freebsd.org>
List-Help: <mailto:freebsd-amd64-request@freebsd.org?subject=help>
List-Subscribe: <http://lists.freebsd.org/mailman/listinfo/freebsd-amd64>,
	<mailto:freebsd-amd64-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Wed, 31 Mar 2004 07:23:18 -0000

This is a multi-part message in MIME format.

--Multipart=_Wed__31_Mar_2004_09_22_47_+0200_IVAWlh/MouLt7b_T
Content-Type: text/plain; charset=US-ASCII
Content-Transfer-Encoding: 7bit

Hi Kris,

sorry to disturb you again with my shared libraries problem. I can not
find the cause of the strange behaviour of the ports system (maybe the
reason is that I don't fully understand the autoconf, configure, libtool
mechanism).

For example: If I try to compile and install libiconv:

# cd /usr/ports/converters/libiconv
# make clean
# make
# ls -l work/libiconv-1.9.1/lib/.libs
-rw-r--r--  1 root  wheel  1052434 31 Mr 08:45 libiconv.a
lrwxr-xr-x  1 root  wheel       14 31 Mr 08:45 libiconv.la -> ../libiconv.la
-rw-r--r--  1 root  wheel      619 31 Mr 08:45 libiconv.lai

I only get the static version of the library. It seems that libtool
decided not to build shared libraries:

# grep ^build_libtool_libs= work/libiconv-1.9.1/libtool
build_libtool_libs=no

Even if I force the generation of the shared libs:
# cd /usr/ports/converters/libiconv/work/libiconv-1.9.1
# make clean
# ./configure --enable-shared
# grep ^build_libtool_libs= libtool
build_libtool_libs=no

the system refuses to do so.
(Find the complete config.status and libtool appended.)

My environment:
# uname -a
FreeBSD Reineke.Malepartus.de 5.2-CURRENT FreeBSD 5.2-CURRENT #15: Mon Mar 22 19:28:17 CET 2004     bm@Reineke.Malepartus.de:/usr/obj/usr/src/sys/REINEKE  amd64

An actual /usr/ports tree (31.03.2004 04:00 UTC), *no* options enabled 
in /etc/make.conf.

Any help how to locate and fix the problem welcome :-)
Burkard

--
Burkard Meyendriesch
Stevern 2
D-48301 Nottuln

--Multipart=_Wed__31_Mar_2004_09_22_47_+0200_IVAWlh/MouLt7b_T
Content-Type: application/octet-stream;
 name="config.status"
Content-Disposition: attachment;
 filename="config.status"
Content-Transfer-Encoding: base64

IyEgL2Jpbi9iYXNoCiMgR2VuZXJhdGVkIGJ5IGNvbmZpZ3VyZS4KIyBSdW4gdGhpcyBmaWxlIHRv
IHJlY3JlYXRlIHRoZSBjdXJyZW50IGNvbmZpZ3VyYXRpb24uCiMgQ29tcGlsZXIgb3V0cHV0IHBy
b2R1Y2VkIGJ5IGNvbmZpZ3VyZSwgdXNlZnVsIGZvciBkZWJ1Z2dpbmcKIyBjb25maWd1cmUsIGlz
IGluIGNvbmZpZy5sb2cgaWYgaXQgZXhpc3RzLgoKZGVidWc9ZmFsc2UKYWNfY3NfcmVjaGVjaz1m
YWxzZQphY19jc19zaWxlbnQ9ZmFsc2UKU0hFTEw9JHtDT05GSUdfU0hFTEwtL2Jpbi9iYXNofQoj
IyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0gIyMKIyMgTTRzaCBJbml0aWFsaXphdGlvbi4gICMjCiMj
IC0tLS0tLS0tLS0tLS0tLS0tLS0tLSAjIwoKIyBCZSBCb3VybmUgY29tcGF0aWJsZQppZiB0ZXN0
IC1uICIke1pTSF9WRVJTSU9OK3NldH0iICYmIChlbXVsYXRlIHNoKSA+L2Rldi9udWxsIDI+JjE7
IHRoZW4KICBlbXVsYXRlIHNoCiAgTlVMTENNRD06CiAgIyBac2ggMy54IGFuZCA0LnggcGVyZm9y
bXMgd29yZCBzcGxpdHRpbmcgb24gJHsxKyIkQCJ9LCB3aGljaAogICMgaXMgY29udHJhcnkgdG8g
b3VyIHVzYWdlLiAgRGlzYWJsZSB0aGlzIGZlYXR1cmUuCiAgYWxpYXMgLWcgJyR7MSsiJEAifSc9
JyIkQCInCmVsaWYgdGVzdCAtbiAiJHtCQVNIX1ZFUlNJT04rc2V0fSIgJiYgKHNldCAtbyBwb3Np
eCkgPi9kZXYvbnVsbCAyPiYxOyB0aGVuCiAgc2V0IC1vIHBvc2l4CmZpCgojIFN1cHBvcnQgdW5z
ZXQgd2hlbiBwb3NzaWJsZS4KaWYgKEZPTz1GT087IHVuc2V0IEZPTykgPi9kZXYvbnVsbCAyPiYx
OyB0aGVuCiAgYXNfdW5zZXQ9dW5zZXQKZWxzZQogIGFzX3Vuc2V0PWZhbHNlCmZpCgoKIyBXb3Jr
IGFyb3VuZCBidWdzIGluIHByZS0zLjAgVVdJTiBrc2guCiRhc191bnNldCBFTlYgTUFJTCBNQUlM
UEFUSApQUzE9JyQgJwpQUzI9Jz4gJwpQUzQ9JysgJwoKIyBOTFMgbnVpc2FuY2VzLgpmb3IgYXNf
dmFyIGluIFwKICBMQU5HIExBTkdVQUdFIExDX0FERFJFU1MgTENfQUxMIExDX0NPTExBVEUgTENf
Q1RZUEUgTENfSURFTlRJRklDQVRJT04gXAogIExDX01FQVNVUkVNRU5UIExDX01FU1NBR0VTIExD
X01PTkVUQVJZIExDX05BTUUgTENfTlVNRVJJQyBMQ19QQVBFUiBcCiAgTENfVEVMRVBIT05FIExD
X1RJTUUKZG8KICBpZiAoc2V0ICt4OyB0ZXN0IC1uICJgKGV2YWwgJGFzX3Zhcj1DOyBleHBvcnQg
JGFzX3ZhcikgMj4mMWAiKTsgdGhlbgogICAgZXZhbCAkYXNfdmFyPUM7IGV4cG9ydCAkYXNfdmFy
CiAgZWxzZQogICAgJGFzX3Vuc2V0ICRhc192YXIKICBmaQpkb25lCgojIFJlcXVpcmVkIHRvIHVz
ZSBiYXNlbmFtZS4KaWYgZXhwciBhIDogJ1woYVwpJyA+L2Rldi9udWxsIDI+JjE7IHRoZW4KICBh
c19leHByPWV4cHIKZWxzZQogIGFzX2V4cHI9ZmFsc2UKZmkKCmlmIChiYXNlbmFtZSAvKSA+L2Rl
di9udWxsIDI+JjEgJiYgdGVzdCAiWGBiYXNlbmFtZSAvIDI+JjFgIiA9ICJYLyI7IHRoZW4KICBh
c19iYXNlbmFtZT1iYXNlbmFtZQplbHNlCiAgYXNfYmFzZW5hbWU9ZmFsc2UKZmkKCgojIE5hbWUg
b2YgdGhlIGV4ZWN1dGFibGUuCmFzX21lPWAkYXNfYmFzZW5hbWUgIiQwIiB8fAokYXNfZXhwciBY
LyIkMCIgOiAnLiovXChbXi9dW14vXSpcKS8qJCcgXHwgXAoJIFgiJDAiIDogJ1hcKC8vXCkkJyBc
fCBcCgkgWCIkMCIgOiAnWFwoL1wpJCcgXHwgXAoJIC4gICAgIDogJ1woLlwpJyAyPi9kZXYvbnVs
bCB8fAplY2hvIFgvIiQwIiB8CiAgICBzZWQgJy9eLipcL1woW14vXVteL10qXClcLyokL3sgcy8v
XDEvOyBxOyB9CiAgCSAgL15YXC9cKFwvXC9cKSQveyBzLy9cMS87IHE7IH0KICAJICAvXlhcL1wo
XC9cKS4qL3sgcy8vXDEvOyBxOyB9CiAgCSAgcy8uKi8uLzsgcSdgCgoKIyBQQVRIIG5lZWRzIENS
LCBhbmQgTElORU5PIG5lZWRzIENSIGFuZCBQQVRILgojIEF2b2lkIGRlcGVuZGluZyB1cG9uIENo
YXJhY3RlciBSYW5nZXMuCmFzX2NyX2xldHRlcnM9J2FiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6
Jwphc19jcl9MRVRURVJTPSdBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWicKYXNfY3JfTGV0dGVy
cz0kYXNfY3JfbGV0dGVycyRhc19jcl9MRVRURVJTCmFzX2NyX2RpZ2l0cz0nMDEyMzQ1Njc4OScK
YXNfY3JfYWxudW09JGFzX2NyX0xldHRlcnMkYXNfY3JfZGlnaXRzCgojIFRoZSB1c2VyIGlzIGFs
d2F5cyByaWdodC4KaWYgdGVzdCAiJHtQQVRIX1NFUEFSQVRPUitzZXR9IiAhPSBzZXQ7IHRoZW4K
ICBlY2hvICIjISAvYmluL3NoIiA+Y29uZiQkLnNoCiAgZWNobyAgImV4aXQgMCIgICA+PmNvbmYk
JC5zaAogIGNobW9kICt4IGNvbmYkJC5zaAogIGlmIChQQVRIPSIvbm9uZXhpc3RlbnQ7LiI7IGNv
bmYkJC5zaCkgPi9kZXYvbnVsbCAyPiYxOyB0aGVuCiAgICBQQVRIX1NFUEFSQVRPUj0nOycKICBl
bHNlCiAgICBQQVRIX1NFUEFSQVRPUj06CiAgZmkKICBybSAtZiBjb25mJCQuc2gKZmkKCgogIGFz
X2xpbmVub18xPSRMSU5FTk8KICBhc19saW5lbm9fMj0kTElORU5PCiAgYXNfbGluZW5vXzM9YChl
eHByICRhc19saW5lbm9fMSArIDEpIDI+L2Rldi9udWxsYAogIHRlc3QgIngkYXNfbGluZW5vXzEi
ICE9ICJ4JGFzX2xpbmVub18yIiAmJgogIHRlc3QgIngkYXNfbGluZW5vXzMiICA9ICJ4JGFzX2xp
bmVub18yIiAgfHwgewogICMgRmluZCB3aG8gd2UgYXJlLiAgTG9vayBpbiB0aGUgcGF0aCBpZiB3
ZSBjb250YWluIG5vIHBhdGggYXQgYWxsCiAgIyByZWxhdGl2ZSBvciBub3QuCiAgY2FzZSAkMCBp
bgogICAgKltcXC9dKiApIGFzX215c2VsZj0kMCA7OwogICAgKikgYXNfc2F2ZV9JRlM9JElGUzsg
SUZTPSRQQVRIX1NFUEFSQVRPUgpmb3IgYXNfZGlyIGluICRQQVRICmRvCiAgSUZTPSRhc19zYXZl
X0lGUwogIHRlc3QgLXogIiRhc19kaXIiICYmIGFzX2Rpcj0uCiAgdGVzdCAtciAiJGFzX2Rpci8k
MCIgJiYgYXNfbXlzZWxmPSRhc19kaXIvJDAgJiYgYnJlYWsKZG9uZQoKICAgICAgIDs7CiAgZXNh
YwogICMgV2UgZGlkIG5vdCBmaW5kIG91cnNlbHZlcywgbW9zdCBwcm9iYWJseSB3ZSB3ZXJlIHJ1
biBhcyBgc2ggQ09NTUFORCcKICAjIGluIHdoaWNoIGNhc2Ugd2UgYXJlIG5vdCB0byBiZSBmb3Vu
ZCBpbiB0aGUgcGF0aC4KICBpZiB0ZXN0ICJ4JGFzX215c2VsZiIgPSB4OyB0aGVuCiAgICBhc19t
eXNlbGY9JDAKICBmaQogIGlmIHRlc3QgISAtZiAiJGFzX215c2VsZiI7IHRoZW4KICAgIHsgeyBl
Y2hvICIkYXNfbWU6JExJTkVOTzogZXJyb3I6IGNhbm5vdCBmaW5kIG15c2VsZjsgcmVydW4gd2l0
aCBhbiBhYnNvbHV0ZSBwYXRoIiA+JjUKZWNobyAiJGFzX21lOiBlcnJvcjogY2Fubm90IGZpbmQg
bXlzZWxmOyByZXJ1biB3aXRoIGFuIGFic29sdXRlIHBhdGgiID4mMjt9CiAgIHsgKGV4aXQgMSk7
IGV4aXQgMTsgfTsgfQogIGZpCiAgY2FzZSAkQ09ORklHX1NIRUxMIGluCiAgJycpCiAgICBhc19z
YXZlX0lGUz0kSUZTOyBJRlM9JFBBVEhfU0VQQVJBVE9SCmZvciBhc19kaXIgaW4gL2JpbiRQQVRI
X1NFUEFSQVRPUi91c3IvYmluJFBBVEhfU0VQQVJBVE9SJFBBVEgKZG8KICBJRlM9JGFzX3NhdmVf
SUZTCiAgdGVzdCAteiAiJGFzX2RpciIgJiYgYXNfZGlyPS4KICBmb3IgYXNfYmFzZSBpbiBzaCBi
YXNoIGtzaCBzaDU7IGRvCgkgY2FzZSAkYXNfZGlyIGluCgkgLyopCgkgICBpZiAoIiRhc19kaXIv
JGFzX2Jhc2UiIC1jICcKICBhc19saW5lbm9fMT0kTElORU5PCiAgYXNfbGluZW5vXzI9JExJTkVO
TwogIGFzX2xpbmVub18zPWAoZXhwciAkYXNfbGluZW5vXzEgKyAxKSAyPi9kZXYvbnVsbGAKICB0
ZXN0ICJ4JGFzX2xpbmVub18xIiAhPSAieCRhc19saW5lbm9fMiIgJiYKICB0ZXN0ICJ4JGFzX2xp
bmVub18zIiAgPSAieCRhc19saW5lbm9fMiIgJykgMj4vZGV2L251bGw7IHRoZW4KCSAgICAgJGFz
X3Vuc2V0IEJBU0hfRU5WIHx8IHRlc3QgIiR7QkFTSF9FTlYrc2V0fSIgIT0gc2V0IHx8IHsgQkFT
SF9FTlY9OyBleHBvcnQgQkFTSF9FTlY7IH0KCSAgICAgJGFzX3Vuc2V0IEVOViB8fCB0ZXN0ICIk
e0VOVitzZXR9IiAhPSBzZXQgfHwgeyBFTlY9OyBleHBvcnQgRU5WOyB9CgkgICAgIENPTkZJR19T
SEVMTD0kYXNfZGlyLyRhc19iYXNlCgkgICAgIGV4cG9ydCBDT05GSUdfU0hFTEwKCSAgICAgZXhl
YyAiJENPTkZJR19TSEVMTCIgIiQwIiAkezErIiRAIn0KCSAgIGZpOzsKCSBlc2FjCiAgICAgICBk
b25lCmRvbmUKOzsKICBlc2FjCgogICMgQ3JlYXRlICRhc19tZS5saW5lbm8gYXMgYSBjb3B5IG9m
ICRhc19teXNlbGYsIGJ1dCB3aXRoICRMSU5FTk8KICAjIHVuaWZvcm1seSByZXBsYWNlZCBieSB0
aGUgbGluZSBudW1iZXIuICBUaGUgZmlyc3QgJ3NlZCcgaW5zZXJ0cyBhCiAgIyBsaW5lLW51bWJl
ciBsaW5lIGJlZm9yZSBlYWNoIGxpbmU7IHRoZSBzZWNvbmQgJ3NlZCcgZG9lcyB0aGUgcmVhbAog
ICMgd29yay4gIFRoZSBzZWNvbmQgc2NyaXB0IHVzZXMgJ04nIHRvIHBhaXIgZWFjaCBsaW5lLW51
bWJlciBsaW5lCiAgIyB3aXRoIHRoZSBudW1iZXJlZCBsaW5lLCBhbmQgYXBwZW5kcyB0cmFpbGlu
ZyAnLScgZHVyaW5nCiAgIyBzdWJzdGl0dXRpb24gc28gdGhhdCAkTElORU5PIGlzIG5vdCBhIHNw
ZWNpYWwgY2FzZSBhdCBsaW5lIGVuZC4KICAjIChSYWphIFIgSGFyaW5hdGggc3VnZ2VzdGVkIHNl
ZCAnPScsIGFuZCBQYXVsIEVnZ2VydCB3cm90ZSB0aGUKICAjIHNlY29uZCAnc2VkJyBzY3JpcHQu
ICBCbGFtZSBMZWUgRS4gTWNNYWhvbiBmb3Igc2VkJ3Mgc3ludGF4LiAgOi0pCiAgc2VkICc9JyA8
JGFzX215c2VsZiB8CiAgICBzZWQgJwogICAgICBOCiAgICAgIHMsJCwtLAogICAgICA6IGxvb3AK
ICAgICAgcyxeXChbJyRhc19jcl9kaWdpdHMnXSpcKVwoLipcKVskXUxJTkVOT1woW14nJGFzX2Ny
X2FsbnVtJ19dXCksXDFcMlwxXDMsCiAgICAgIHQgbG9vcAogICAgICBzLC0kLCwKICAgICAgcyxe
WyckYXNfY3JfZGlnaXRzJ10qXG4sLAogICAgJyA+JGFzX21lLmxpbmVubyAmJgogIGNobW9kICt4
ICRhc19tZS5saW5lbm8gfHwKICAgIHsgeyBlY2hvICIkYXNfbWU6JExJTkVOTzogZXJyb3I6IGNh
bm5vdCBjcmVhdGUgJGFzX21lLmxpbmVubzsgcmVydW4gd2l0aCBhIFBPU0lYIHNoZWxsIiA+JjUK
ZWNobyAiJGFzX21lOiBlcnJvcjogY2Fubm90IGNyZWF0ZSAkYXNfbWUubGluZW5vOyByZXJ1biB3
aXRoIGEgUE9TSVggc2hlbGwiID4mMjt9CiAgIHsgKGV4aXQgMSk7IGV4aXQgMTsgfTsgfQoKICAj
IERvbid0IHRyeSB0byBleGVjIGFzIGl0IGNoYW5nZXMgJFswXSwgY2F1c2luZyBhbGwgc29ydCBv
ZiBwcm9ibGVtcwogICMgKHRoZSBkaXJuYW1lIG9mICRbMF0gaXMgbm90IHRoZSBwbGFjZSB3aGVy
ZSB3ZSBtaWdodCBmaW5kIHRoZQogICMgb3JpZ2luYWwgYW5kIHNvIG9uLiAgQXV0b2NvbmYgaXMg
ZXNwZWNpYWxseSBzZW5zaWJsZSB0byB0aGlzKS4KICAuIC4vJGFzX21lLmxpbmVubwogICMgRXhp
dCBzdGF0dXMgaXMgdGhhdCBvZiB0aGUgbGFzdCBjb21tYW5kLgogIGV4aXQKfQoKCmNhc2UgYGVj
aG8gInRlc3RpbmdcYyI7IGVjaG8gMSwyLDNgLGBlY2hvIC1uIHRlc3Rpbmc7IGVjaG8gMSwyLDNg
IGluCiAgKmMqLC1uKikgRUNIT19OPSBFQ0hPX0M9JwonIEVDSE9fVD0nCScgOzsKICAqYyosKiAg
KSBFQ0hPX049LW4gRUNIT19DPSBFQ0hPX1Q9IDs7CiAgKikgICAgICAgRUNIT19OPSBFQ0hPX0M9
J1xjJyBFQ0hPX1Q9IDs7CmVzYWMKCmlmIGV4cHIgYSA6ICdcKGFcKScgPi9kZXYvbnVsbCAyPiYx
OyB0aGVuCiAgYXNfZXhwcj1leHByCmVsc2UKICBhc19leHByPWZhbHNlCmZpCgpybSAtZiBjb25m
JCQgY29uZiQkLmV4ZSBjb25mJCQuZmlsZQplY2hvID5jb25mJCQuZmlsZQppZiBsbiAtcyBjb25m
JCQuZmlsZSBjb25mJCQgMj4vZGV2L251bGw7IHRoZW4KICAjIFdlIGNvdWxkIGp1c3QgY2hlY2sg
Zm9yIERKR1BQOyBidXQgdGhpcyB0ZXN0IGEpIHdvcmtzIGIpIGlzIG1vcmUgZ2VuZXJpYwogICMg
YW5kIGMpIHdpbGwgcmVtYWluIHZhbGlkIG9uY2UgREpHUFAgc3VwcG9ydHMgc3ltbGlua3MgKERK
R1BQIDIuMDQpLgogIGlmIHRlc3QgLWYgY29uZiQkLmV4ZTsgdGhlbgogICAgIyBEb24ndCB1c2Ug
bG4gYXQgYWxsOyB3ZSBkb24ndCBoYXZlIGFueSBsaW5rcwogICAgYXNfbG5fcz0nY3AgLXAnCiAg
ZWxzZQogICAgYXNfbG5fcz0nbG4gLXMnCiAgZmkKZWxpZiBsbiBjb25mJCQuZmlsZSBjb25mJCQg
Mj4vZGV2L251bGw7IHRoZW4KICBhc19sbl9zPWxuCmVsc2UKICBhc19sbl9zPSdjcCAtcCcKZmkK
cm0gLWYgY29uZiQkIGNvbmYkJC5leGUgY29uZiQkLmZpbGUKCmlmIG1rZGlyIC1wIC4gMj4vZGV2
L251bGw7IHRoZW4KICBhc19ta2Rpcl9wPToKZWxzZQogIGFzX21rZGlyX3A9ZmFsc2UKZmkKCmFz
X2V4ZWN1dGFibGVfcD0idGVzdCAtZiIKCiMgU2VkIGV4cHJlc3Npb24gdG8gbWFwIGEgc3RyaW5n
IG9udG8gYSB2YWxpZCBDUFAgbmFtZS4KYXNfdHJfY3BwPSJzZWQgeSUqJGFzX2NyX2xldHRlcnMl
UCRhc19jcl9MRVRURVJTJTtzJVteXyRhc19jcl9hbG51bV0lXyVnIgoKIyBTZWQgZXhwcmVzc2lv
biB0byBtYXAgYSBzdHJpbmcgb250byBhIHZhbGlkIHZhcmlhYmxlIG5hbWUuCmFzX3RyX3NoPSJz
ZWQgeSUqKyVwcCU7cyVbXl8kYXNfY3JfYWxudW1dJV8lZyIKCgojIElGUwojIFdlIG5lZWQgc3Bh
Y2UsIHRhYiBhbmQgbmV3IGxpbmUsIGluIHByZWNpc2VseSB0aGF0IG9yZGVyLgphc19ubD0nCicK
SUZTPSIgCSRhc19ubCIKCiMgQ0RQQVRILgokYXNfdW5zZXQgQ0RQQVRICgpleGVjIDY+JjEKCiMg
T3BlbiB0aGUgbG9nIHJlYWwgc29vbiwgdG8ga2VlcCBcJFswXSBhbmQgc28gb24gbWVhbmluZ2Z1
bCwgYW5kIHRvCiMgcmVwb3J0IGFjdHVhbCBpbnB1dCB2YWx1ZXMgb2YgQ09ORklHX0ZJTEVTIGV0
Yy4gaW5zdGVhZCBvZiB0aGVpcgojIHZhbHVlcyBhZnRlciBvcHRpb25zIGhhbmRsaW5nLiAgTG9n
Z2luZyAtLXZlcnNpb24gZXRjLiBpcyBPSy4KZXhlYyA1Pj5jb25maWcubG9nCnsKICBlY2hvCiAg
c2VkICdoO3MvLi8tL2c7cy9eLi4uLyMjIC87cy8uLi4kLyAjIy87cDt4O3A7eCcgPDxfQVNCT1gK
IyMgUnVubmluZyAkYXNfbWUuICMjCl9BU0JPWAp9ID4mNQpjYXQgPiY1IDw8X0NTRU9GCgpUaGlz
IGZpbGUgd2FzIGV4dGVuZGVkIGJ5ICRhc19tZSwgd2hpY2ggd2FzCmdlbmVyYXRlZCBieSBHTlUg
QXV0b2NvbmYgMi41Ny4gIEludm9jYXRpb24gY29tbWFuZCBsaW5lIHdhcwoKICBDT05GSUdfRklM
RVMgICAgPSAkQ09ORklHX0ZJTEVTCiAgQ09ORklHX0hFQURFUlMgID0gJENPTkZJR19IRUFERVJT
CiAgQ09ORklHX0xJTktTICAgID0gJENPTkZJR19MSU5LUwogIENPTkZJR19DT01NQU5EUyA9ICRD
T05GSUdfQ09NTUFORFMKICAkICQwICRACgpfQ1NFT0YKZWNobyAib24gYChob3N0bmFtZSB8fCB1
bmFtZSAtbikgMj4vZGV2L251bGwgfCBzZWQgMXFgIiA+JjUKZWNobyA+JjUKY29uZmlnX2ZpbGVz
PSIgTWFrZWZpbGUgbGliL01ha2VmaWxlIHNyY2xpYi9NYWtlZmlsZSBzcmMvTWFrZWZpbGUgcG8v
TWFrZWZpbGUuaW4gbWFuL01ha2VmaWxlIHRlc3RzL01ha2VmaWxlIGluY2x1ZGUvaWNvbnYuaCIK
Y29uZmlnX2hlYWRlcnM9IiBjb25maWcuaCBsaWIvY29uZmlnLmgiCmNvbmZpZ19jb21tYW5kcz0i
IGRlcGZpbGVzIGRlZmF1bHQtMSIKCmFjX2NzX3VzYWdlPSJcClxgJGFzX21lJyBpbnN0YW50aWF0
ZXMgZmlsZXMgZnJvbSB0ZW1wbGF0ZXMgYWNjb3JkaW5nIHRvIHRoZQpjdXJyZW50IGNvbmZpZ3Vy
YXRpb24uCgpVc2FnZTogJDAgW09QVElPTlNdIFtGSUxFXS4uLgoKICAtaCwgLS1oZWxwICAgICAg
IHByaW50IHRoaXMgaGVscCwgdGhlbiBleGl0CiAgLVYsIC0tdmVyc2lvbiAgICBwcmludCB2ZXJz
aW9uIG51bWJlciwgdGhlbiBleGl0CiAgLXEsIC0tcXVpZXQgICAgICBkbyBub3QgcHJpbnQgcHJv
Z3Jlc3MgbWVzc2FnZXMKICAtZCwgLS1kZWJ1ZyAgICAgIGRvbid0IHJlbW92ZSB0ZW1wb3Jhcnkg
ZmlsZXMKICAgICAgLS1yZWNoZWNrICAgIHVwZGF0ZSAkYXNfbWUgYnkgcmVjb25maWd1cmluZyBp
biB0aGUgc2FtZSBjb25kaXRpb25zCiAgLS1maWxlPUZJTEVbOlRFTVBMQVRFXQogICAgICAgICAg
ICAgICAgICAgaW5zdGFudGlhdGUgdGhlIGNvbmZpZ3VyYXRpb24gZmlsZSBGSUxFCiAgLS1oZWFk
ZXI9RklMRVs6VEVNUExBVEVdCiAgICAgICAgICAgICAgICAgICBpbnN0YW50aWF0ZSB0aGUgY29u
ZmlndXJhdGlvbiBoZWFkZXIgRklMRQoKQ29uZmlndXJhdGlvbiBmaWxlczoKJGNvbmZpZ19maWxl
cwoKQ29uZmlndXJhdGlvbiBoZWFkZXJzOgokY29uZmlnX2hlYWRlcnMKCkNvbmZpZ3VyYXRpb24g
Y29tbWFuZHM6CiRjb25maWdfY29tbWFuZHMKClJlcG9ydCBidWdzIHRvIDxidWctYXV0b2NvbmZA
Z251Lm9yZz4uIgphY19jc192ZXJzaW9uPSJcCmNvbmZpZy5zdGF0dXMKY29uZmlndXJlZCBieSAu
L2NvbmZpZ3VyZSwgZ2VuZXJhdGVkIGJ5IEdOVSBBdXRvY29uZiAyLjU3LAogIHdpdGggb3B0aW9u
cyBcIictLWVuYWJsZS1zaGFyZWQnXCIKCkNvcHlyaWdodCAxOTkyLCAxOTkzLCAxOTk0LCAxOTk1
LCAxOTk2LCAxOTk4LCAxOTk5LCAyMDAwLCAyMDAxCkZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwg
SW5jLgpUaGlzIGNvbmZpZy5zdGF0dXMgc2NyaXB0IGlzIGZyZWUgc29mdHdhcmU7IHRoZSBGcmVl
IFNvZnR3YXJlIEZvdW5kYXRpb24KZ2l2ZXMgdW5saW1pdGVkIHBlcm1pc3Npb24gdG8gY29weSwg
ZGlzdHJpYnV0ZSBhbmQgbW9kaWZ5IGl0LiIKc3JjZGlyPS4KSU5TVEFMTD0iL3Vzci9iaW4vaW5z
dGFsbCAtYyIKIyBJZiBubyBmaWxlIGFyZSBzcGVjaWZpZWQgYnkgdGhlIHVzZXIsIHRoZW4gd2Ug
bmVlZCB0byBwcm92aWRlIGRlZmF1bHQKIyB2YWx1ZS4gIEJ5IHdlIG5lZWQgdG8ga25vdyBpZiBm
aWxlcyB3ZXJlIHNwZWNpZmllZCBieSB0aGUgdXNlci4KYWNfbmVlZF9kZWZhdWx0cz06CndoaWxl
IHRlc3QgJCMgIT0gMApkbwogIGNhc2UgJDEgaW4KICAtLSo9KikKICAgIGFjX29wdGlvbj1gZXhw
ciAieCQxIiA6ICd4XChbXj1dKlwpPSdgCiAgICBhY19vcHRhcmc9YGV4cHIgIngkMSIgOiAneFte
PV0qPVwoLipcKSdgCiAgICBhY19zaGlmdD06CiAgICA7OwogIC0qKQogICAgYWNfb3B0aW9uPSQx
CiAgICBhY19vcHRhcmc9JDIKICAgIGFjX3NoaWZ0PXNoaWZ0CiAgICA7OwogICopICMgVGhpcyBp
cyBub3QgYW4gb3B0aW9uLCBzbyB0aGUgdXNlciBoYXMgcHJvYmFibHkgZ2l2ZW4gZXhwbGljaXQK
ICAgICAjIGFyZ3VtZW50cy4KICAgICBhY19vcHRpb249JDEKICAgICBhY19uZWVkX2RlZmF1bHRz
PWZhbHNlOzsKICBlc2FjCgogIGNhc2UgJGFjX29wdGlvbiBpbgogICMgSGFuZGxpbmcgb2YgdGhl
IG9wdGlvbnMuCiAgLXJlY2hlY2sgfCAtLXJlY2hlY2sgfCAtLXJlY2hlYyB8IC0tcmVjaGUgfCAt
LXJlY2ggfCAtLXJlYyB8IC0tcmUgfCAtLXIpCiAgICBhY19jc19yZWNoZWNrPTogOzsKICAtLXZl
cnNpb24gfCAtLXZlcnMqIHwgLVYgKQogICAgZWNobyAiJGFjX2NzX3ZlcnNpb24iOyBleGl0IDAg
OzsKICAtLWhlIHwgLS1oKQogICAgIyBDb25mbGljdCBiZXR3ZWVuIC0taGVscCBhbmQgLS1oZWFk
ZXIKICAgIHsgeyBlY2hvICIkYXNfbWU6JExJTkVOTzogZXJyb3I6IGFtYmlndW91cyBvcHRpb246
ICQxClRyeSBcYCQwIC0taGVscCcgZm9yIG1vcmUgaW5mb3JtYXRpb24uIiA+JjUKZWNobyAiJGFz
X21lOiBlcnJvcjogYW1iaWd1b3VzIG9wdGlvbjogJDEKVHJ5IFxgJDAgLS1oZWxwJyBmb3IgbW9y
ZSBpbmZvcm1hdGlvbi4iID4mMjt9CiAgIHsgKGV4aXQgMSk7IGV4aXQgMTsgfTsgfTs7CiAgLS1o
ZWxwIHwgLS1oZWwgfCAtaCApCiAgICBlY2hvICIkYWNfY3NfdXNhZ2UiOyBleGl0IDAgOzsKICAt
LWRlYnVnIHwgLS1kKiB8IC1kICkKICAgIGRlYnVnPTogOzsKICAtLWZpbGUgfCAtLWZpbCB8IC0t
ZmkgfCAtLWYgKQogICAgJGFjX3NoaWZ0CiAgICBDT05GSUdfRklMRVM9IiRDT05GSUdfRklMRVMg
JGFjX29wdGFyZyIKICAgIGFjX25lZWRfZGVmYXVsdHM9ZmFsc2U7OwogIC0taGVhZGVyIHwgLS1o
ZWFkZSB8IC0taGVhZCB8IC0taGVhICkKICAgICRhY19zaGlmdAogICAgQ09ORklHX0hFQURFUlM9
IiRDT05GSUdfSEVBREVSUyAkYWNfb3B0YXJnIgogICAgYWNfbmVlZF9kZWZhdWx0cz1mYWxzZTs7
CiAgLXEgfCAtcXVpZXQgfCAtLXF1aWV0IHwgLS1xdWllIHwgLS1xdWkgfCAtLXF1IHwgLS1xIFwK
ICB8IC1zaWxlbnQgfCAtLXNpbGVudCB8IC0tc2lsZW4gfCAtLXNpbGUgfCAtLXNpbCB8IC0tc2kg
fCAtLXMpCiAgICBhY19jc19zaWxlbnQ9OiA7OwoKICAjIFRoaXMgaXMgYW4gZXJyb3IuCiAgLSop
IHsgeyBlY2hvICIkYXNfbWU6JExJTkVOTzogZXJyb3I6IHVucmVjb2duaXplZCBvcHRpb246ICQx
ClRyeSBcYCQwIC0taGVscCcgZm9yIG1vcmUgaW5mb3JtYXRpb24uIiA+JjUKZWNobyAiJGFzX21l
OiBlcnJvcjogdW5yZWNvZ25pemVkIG9wdGlvbjogJDEKVHJ5IFxgJDAgLS1oZWxwJyBmb3IgbW9y
ZSBpbmZvcm1hdGlvbi4iID4mMjt9CiAgIHsgKGV4aXQgMSk7IGV4aXQgMTsgfTsgfSA7OwoKICAq
KSBhY19jb25maWdfdGFyZ2V0cz0iJGFjX2NvbmZpZ190YXJnZXRzICQxIiA7OwoKICBlc2FjCiAg
c2hpZnQKZG9uZQoKYWNfY29uZmlndXJlX2V4dHJhX2FyZ3M9CgppZiAkYWNfY3Nfc2lsZW50OyB0
aGVuCiAgZXhlYyA2Pi9kZXYvbnVsbAogIGFjX2NvbmZpZ3VyZV9leHRyYV9hcmdzPSIkYWNfY29u
ZmlndXJlX2V4dHJhX2FyZ3MgLS1zaWxlbnQiCmZpCgppZiAkYWNfY3NfcmVjaGVjazsgdGhlbgog
IGVjaG8gInJ1bm5pbmcgL2Jpbi9iYXNoIC4vY29uZmlndXJlICIgJy0tZW5hYmxlLXNoYXJlZCcg
JGFjX2NvbmZpZ3VyZV9leHRyYV9hcmdzICIgLS1uby1jcmVhdGUgLS1uby1yZWN1cnNpb24iID4m
NgogIGV4ZWMgL2Jpbi9iYXNoIC4vY29uZmlndXJlICctLWVuYWJsZS1zaGFyZWQnICRhY19jb25m
aWd1cmVfZXh0cmFfYXJncyAtLW5vLWNyZWF0ZSAtLW5vLXJlY3Vyc2lvbgpmaQoKIwojIElOSVQt
Q09NTUFORFMgc2VjdGlvbi4KIwoKQU1ERVBfVFJVRT0iIiBhY19hdXhfZGlyPSJhdXRvY29uZiIK
IyBDYXB0dXJlIHRoZSB2YWx1ZSBvZiBvYnNvbGV0ZSBBTExfTElOR1VBUyBiZWNhdXNlIHdlIG5l
ZWQgaXQgdG8gY29tcHV0ZQogICAgIyBQT0ZJTEVTLCBHTU9GSUxFUywgVVBEQVRFUE9GSUxFUywg
RFVNTVlQT0ZJTEVTLCBDQVRBTE9HUy4gQnV0IGhpZGUgaXQKICAgICMgZnJvbSBhdXRvbWFrZS4K
ICAgIGV2YWwgJ09CU09MRVRFX0FMTF9MSU5HVUFTJyc9IiInCiAgICAjIENhcHR1cmUgdGhlIHZh
bHVlIG9mIExJTkdVQVMgYmVjYXVzZSB3ZSBuZWVkIGl0IHRvIGNvbXB1dGUgQ0FUQUxPR1MuCiAg
ICBMSU5HVUFTPSIlVU5TRVQlIgoKCmZvciBhY19jb25maWdfdGFyZ2V0IGluICRhY19jb25maWdf
dGFyZ2V0cwpkbwogIGNhc2UgIiRhY19jb25maWdfdGFyZ2V0IiBpbgogICMgSGFuZGxpbmcgb2Yg
YXJndW1lbnRzLgogICJNYWtlZmlsZSIgKSBDT05GSUdfRklMRVM9IiRDT05GSUdfRklMRVMgTWFr
ZWZpbGUiIDs7CiAgImxpYi9NYWtlZmlsZSIgKSBDT05GSUdfRklMRVM9IiRDT05GSUdfRklMRVMg
bGliL01ha2VmaWxlIiA7OwogICJzcmNsaWIvTWFrZWZpbGUiICkgQ09ORklHX0ZJTEVTPSIkQ09O
RklHX0ZJTEVTIHNyY2xpYi9NYWtlZmlsZSIgOzsKICAic3JjL01ha2VmaWxlIiApIENPTkZJR19G
SUxFUz0iJENPTkZJR19GSUxFUyBzcmMvTWFrZWZpbGUiIDs7CiAgInBvL01ha2VmaWxlLmluIiAp
IENPTkZJR19GSUxFUz0iJENPTkZJR19GSUxFUyBwby9NYWtlZmlsZS5pbiIgOzsKICAibWFuL01h
a2VmaWxlIiApIENPTkZJR19GSUxFUz0iJENPTkZJR19GSUxFUyBtYW4vTWFrZWZpbGUiIDs7CiAg
IiR7VEVTVFNfTUFLRUZJTEV9IiApIENPTkZJR19GSUxFUz0iJENPTkZJR19GSUxFUyAke1RFU1RT
X01BS0VGSUxFfSIgOzsKICAiaW5jbHVkZS9pY29udi5oIiApIENPTkZJR19GSUxFUz0iJENPTkZJ
R19GSUxFUyBpbmNsdWRlL2ljb252LmgiIDs7CiAgImRlcGZpbGVzIiApIENPTkZJR19DT01NQU5E
Uz0iJENPTkZJR19DT01NQU5EUyBkZXBmaWxlcyIgOzsKICAiZGVmYXVsdC0xIiApIENPTkZJR19D
T01NQU5EUz0iJENPTkZJR19DT01NQU5EUyBkZWZhdWx0LTEiIDs7CiAgImNvbmZpZy5oIiApIENP
TkZJR19IRUFERVJTPSIkQ09ORklHX0hFQURFUlMgY29uZmlnLmgiIDs7CiAgImxpYi9jb25maWcu
aCIgKSBDT05GSUdfSEVBREVSUz0iJENPTkZJR19IRUFERVJTIGxpYi9jb25maWcuaCIgOzsKICAq
KSB7IHsgZWNobyAiJGFzX21lOiRMSU5FTk86IGVycm9yOiBpbnZhbGlkIGFyZ3VtZW50OiAkYWNf
Y29uZmlnX3RhcmdldCIgPiY1CmVjaG8gIiRhc19tZTogZXJyb3I6IGludmFsaWQgYXJndW1lbnQ6
ICRhY19jb25maWdfdGFyZ2V0IiA+JjI7fQogICB7IChleGl0IDEpOyBleGl0IDE7IH07IH07Owog
IGVzYWMKZG9uZQoKIyBJZiB0aGUgdXNlciBkaWQgbm90IHVzZSB0aGUgYXJndW1lbnRzIHRvIHNw
ZWNpZnkgdGhlIGl0ZW1zIHRvIGluc3RhbnRpYXRlLAojIHRoZW4gdGhlIGVudnZhciBpbnRlcmZh
Y2UgaXMgdXNlZC4gIFNldCBvbmx5IHRob3NlIHRoYXQgYXJlIG5vdC4KIyBXZSB1c2UgdGhlIGxv
bmcgZm9ybSBmb3IgdGhlIGRlZmF1bHQgYXNzaWdubWVudCBiZWNhdXNlIG9mIGFuIGV4dHJlbWVs
eQojIGJpemFycmUgYnVnIG9uIFN1bk9TIDQuMS4zLgppZiAkYWNfbmVlZF9kZWZhdWx0czsgdGhl
bgogIHRlc3QgIiR7Q09ORklHX0ZJTEVTK3NldH0iID0gc2V0IHx8IENPTkZJR19GSUxFUz0kY29u
ZmlnX2ZpbGVzCiAgdGVzdCAiJHtDT05GSUdfSEVBREVSUytzZXR9IiA9IHNldCB8fCBDT05GSUdf
SEVBREVSUz0kY29uZmlnX2hlYWRlcnMKICB0ZXN0ICIke0NPTkZJR19DT01NQU5EUytzZXR9IiA9
IHNldCB8fCBDT05GSUdfQ09NTUFORFM9JGNvbmZpZ19jb21tYW5kcwpmaQoKIyBIYXZlIGEgdGVt
cG9yYXJ5IGRpcmVjdG9yeSBmb3IgY29udmVuaWVuY2UuICBNYWtlIGl0IGluIHRoZSBidWlsZCB0
cmVlCiMgc2ltcGx5IGJlY2F1c2UgdGhlcmUgaXMgbm8gcmVhc29uIHRvIHB1dCBpdCBoZXJlLCBh
bmQgaW4gYWRkaXRpb24sCiMgY3JlYXRpbmcgYW5kIG1vdmluZyBmaWxlcyBmcm9tIC90bXAgY2Fu
IHNvbWV0aW1lcyBjYXVzZSBwcm9ibGVtcy4KIyBDcmVhdGUgYSB0ZW1wb3JhcnkgZGlyZWN0b3J5
LCBhbmQgaG9vayBmb3IgaXRzIHJlbW92YWwgdW5sZXNzIGRlYnVnZ2luZy4KJGRlYnVnIHx8CnsK
ICB0cmFwICdleGl0X3N0YXR1cz0kPzsgcm0gLXJmICR0bXAgJiYgZXhpdCAkZXhpdF9zdGF0dXMn
IDAKICB0cmFwICd7IChleGl0IDEpOyBleGl0IDE7IH0nIDEgMiAxMyAxNQp9CgojIENyZWF0ZSBh
IChzZWN1cmUpIHRtcCBkaXJlY3RvcnkgZm9yIHRtcCBmaWxlcy4KCnsKICB0bXA9YCh1bWFzayAw
NzcgJiYgbWt0ZW1wIC1kIC1xICIuL2NvbmZzdGF0WFhYWFhYIikgMj4vZGV2L251bGxgICYmCiAg
dGVzdCAtbiAiJHRtcCIgJiYgdGVzdCAtZCAiJHRtcCIKfSAgfHwKewogIHRtcD0uL2NvbmZzdGF0
JCQtJFJBTkRPTQogICh1bWFzayAwNzcgJiYgbWtkaXIgJHRtcCkKfSB8fAp7CiAgIGVjaG8gIiRt
ZTogY2Fubm90IGNyZWF0ZSBhIHRlbXBvcmFyeSBkaXJlY3RvcnkgaW4gLiIgPiYyCiAgIHsgKGV4
aXQgMSk7IGV4aXQgMTsgfQp9CgoKIwojIENPTkZJR19GSUxFUyBzZWN0aW9uLgojCgojIE5vIG5l
ZWQgdG8gZ2VuZXJhdGUgdGhlIHNjcmlwdHMgaWYgdGhlcmUgYXJlIG5vIENPTkZJR19GSUxFUy4K
IyBUaGlzIGhhcHBlbnMgZm9yIGluc3RhbmNlIHdoZW4gLi9jb25maWcuc3RhdHVzIGNvbmZpZy5o
CmlmIHRlc3QgLW4gIiRDT05GSUdfRklMRVMiOyB0aGVuCiAgIyBQcm90ZWN0IGFnYWluc3QgYmVp
bmcgb24gdGhlIHJpZ2h0IHNpZGUgb2YgYSBzZWQgc3Vic3QgaW4gY29uZmlnLnN0YXR1cy4KICBz
ZWQgJ3MvLEAvQEAvOyBzL0AsL0BALzsgcy8sO3QgdCQvQDt0IHQvOyAvQDt0IHQkL3MvW1xcJixd
L1xcJi9nOwogICBzL0BALyxALzsgcy9AQC9ALC87IHMvQDt0IHQkLyw7dCB0LycgPiR0bXAvc3Vi
cy5zZWQgPDxcQ0VPRgpzLEBTSEVMTEAsL2Jpbi9iYXNoLDt0IHQKcyxAUEFUSF9TRVBBUkFUT1JA
LDosO3QgdApzLEBQQUNLQUdFX05BTUVALCw7dCB0CnMsQFBBQ0tBR0VfVEFSTkFNRUAsLDt0IHQK
cyxAUEFDS0FHRV9WRVJTSU9OQCwsO3QgdApzLEBQQUNLQUdFX1NUUklOR0AsLDt0IHQKcyxAUEFD
S0FHRV9CVUdSRVBPUlRALCw7dCB0CnMsQGV4ZWNfcHJlZml4QCwke3ByZWZpeH0sO3QgdApzLEBw
cmVmaXhALC91c3IvbG9jYWwsO3QgdApzLEBwcm9ncmFtX3RyYW5zZm9ybV9uYW1lQCxzLHgseCws
O3QgdApzLEBiaW5kaXJALCR7ZXhlY19wcmVmaXh9L2Jpbiw7dCB0CnMsQHNiaW5kaXJALCR7ZXhl
Y19wcmVmaXh9L3NiaW4sO3QgdApzLEBsaWJleGVjZGlyQCwke2V4ZWNfcHJlZml4fS9saWJleGVj
LDt0IHQKcyxAZGF0YWRpckAsJHtwcmVmaXh9L3NoYXJlLDt0IHQKcyxAc3lzY29uZmRpckAsJHtw
cmVmaXh9L2V0Yyw7dCB0CnMsQHNoYXJlZHN0YXRlZGlyQCwke3ByZWZpeH0vY29tLDt0IHQKcyxA
bG9jYWxzdGF0ZWRpckAsJHtwcmVmaXh9L3Zhciw7dCB0CnMsQGxpYmRpckAsJHtleGVjX3ByZWZp
eH0vbGliLDt0IHQKcyxAaW5jbHVkZWRpckAsJHtwcmVmaXh9L2luY2x1ZGUsO3QgdApzLEBvbGRp
bmNsdWRlZGlyQCwvdXNyL2luY2x1ZGUsO3QgdApzLEBpbmZvZGlyQCwke3ByZWZpeH0vaW5mbyw7
dCB0CnMsQG1hbmRpckAsJHtwcmVmaXh9L21hbiw7dCB0CnMsQGJ1aWxkX2FsaWFzQCwsO3QgdApz
LEBob3N0X2FsaWFzQCwsO3QgdApzLEB0YXJnZXRfYWxpYXNALCw7dCB0CnMsQERFRlNALC1ESEFW
RV9DT05GSUdfSCw7dCB0CnMsQEVDSE9fQ0AsLDt0IHQKcyxARUNIT19OQCwtbiw7dCB0CnMsQEVD
SE9fVEAsLDt0IHQKcyxATElCU0AsLDt0IHQKcyxASU5TVEFMTF9QUk9HUkFNQCwke0lOU1RBTEx9
LDt0IHQKcyxASU5TVEFMTF9TQ1JJUFRALCR7SU5TVEFMTH0sO3QgdApzLEBJTlNUQUxMX0RBVEFA
LCR7SU5TVEFMTH0gLW0gNjQ0LDt0IHQKcyxAQ1lHUEFUSF9XQCxlY2hvLDt0IHQKcyxAUEFDS0FH
RUAsbGliaWNvbnYsO3QgdApzLEBWRVJTSU9OQCwxLjksO3QgdApzLEBBQ0xPQ0FMQCwke1NIRUxM
fSAvdXNyL3BvcnRzL2NvbnZlcnRlcnMvbGliaWNvbnYvd29yay9saWJpY29udi0xLjkuMS9hdXRv
Y29uZi9taXNzaW5nIC0tcnVuIGFjbG9jYWwtMS43LDt0IHQKcyxAQVVUT0NPTkZALCR7U0hFTEx9
IC91c3IvcG9ydHMvY29udmVydGVycy9saWJpY29udi93b3JrL2xpYmljb252LTEuOS4xL2F1dG9j
b25mL21pc3NpbmcgLS1ydW4gYXV0b2NvbmYsO3QgdApzLEBBVVRPTUFLRUAsJHtTSEVMTH0gL3Vz
ci9wb3J0cy9jb252ZXJ0ZXJzL2xpYmljb252L3dvcmsvbGliaWNvbnYtMS45LjEvYXV0b2NvbmYv
bWlzc2luZyAtLXJ1biBhdXRvbWFrZS0xLjcsO3QgdApzLEBBVVRPSEVBREVSQCwke1NIRUxMfSAv
dXNyL3BvcnRzL2NvbnZlcnRlcnMvbGliaWNvbnYvd29yay9saWJpY29udi0xLjkuMS9hdXRvY29u
Zi9taXNzaW5nIC0tcnVuIGF1dG9oZWFkZXIsO3QgdApzLEBNQUtFSU5GT0AsJHtTSEVMTH0gL3Vz
ci9wb3J0cy9jb252ZXJ0ZXJzL2xpYmljb252L3dvcmsvbGliaWNvbnYtMS45LjEvYXV0b2NvbmYv
bWlzc2luZyAtLXJ1biBtYWtlaW5mbyw7dCB0CnMsQEFNVEFSQCwke1NIRUxMfSAvdXNyL3BvcnRz
L2NvbnZlcnRlcnMvbGliaWNvbnYvd29yay9saWJpY29udi0xLjkuMS9hdXRvY29uZi9taXNzaW5n
IC0tcnVuIHRhciw7dCB0CnMsQGluc3RhbGxfc2hALC91c3IvcG9ydHMvY29udmVydGVycy9saWJp
Y29udi93b3JrL2xpYmljb252LTEuOS4xL2F1dG9jb25mL2luc3RhbGwtc2gsO3QgdApzLEBTVFJJ
UEAsc3RyaXAsO3QgdApzLEBhY19jdF9TVFJJUEAsc3RyaXAsO3QgdApzLEBJTlNUQUxMX1NUUklQ
X1BST0dSQU1ALCR7U0hFTEx9ICQoaW5zdGFsbF9zaCkgLWMgLXMsO3QgdApzLEBBV0tALG5hd2ss
O3QgdApzLEBTRVRfTUFLRUAsLDt0IHQKcyxAYW1fX2xlYWRpbmdfZG90QCwuLDt0IHQKcyxAQ0NA
LGdjYyw7dCB0CnMsQENGTEFHU0AsLWcgLU8yLDt0IHQKcyxATERGTEFHU0AsLDt0IHQKcyxAQ1BQ
RkxBR1NALC1JL3Vzci9sb2NhbC9pbmNsdWRlLDt0IHQKcyxAYWNfY3RfQ0NALGdjYyw7dCB0CnMs
QEVYRUVYVEAsLDt0IHQKcyxAT0JKRVhUQCxvLDt0IHQKcyxAREVQRElSQCwuZGVwcyw7dCB0CnMs
QGFtX19pbmNsdWRlQCxpbmNsdWRlLDt0IHQKcyxAYW1fX3F1b3RlQCwsO3QgdApzLEBBTURFUF9U
UlVFQCwsO3QgdApzLEBBTURFUF9GQUxTRUAsIyw7dCB0CnMsQEFNREVQQkFDS1NMQVNIQCxcLDt0
IHQKcyxAQ0NERVBNT0RFQCxkZXBtb2RlPW5vbmUsO3QgdApzLEBhbV9fZmFzdGRlcENDX1RSVUVA
LCMsO3QgdApzLEBhbV9fZmFzdGRlcENDX0ZBTFNFQCwsO3QgdApzLEBDUFBALGdjYyAtRSw7dCB0
CnMsQEVHUkVQQCxncmVwIC1FLDt0IHQKcyxAYnVpbGRALGFtZDY0LXVua25vd24ta2ZyZWVic2Q1
LjItZ251LDt0IHQKcyxAYnVpbGRfY3B1QCxhbWQ2NCw7dCB0CnMsQGJ1aWxkX3ZlbmRvckAsdW5r
bm93biw7dCB0CnMsQGJ1aWxkX29zQCxrZnJlZWJzZDUuMi1nbnUsO3QgdApzLEBob3N0QCxhbWQ2
NC11bmtub3duLWtmcmVlYnNkNS4yLWdudSw7dCB0CnMsQGhvc3RfY3B1QCxhbWQ2NCw7dCB0CnMs
QGhvc3RfdmVuZG9yQCx1bmtub3duLDt0IHQKcyxAaG9zdF9vc0Asa2ZyZWVic2Q1LjItZ251LDt0
IHQKcyxAUkVMT0NBVEFCTEVALG5vLDt0IHQKcyxATElCT0JKU0AsIGNhbm9uaWNhbGl6ZSRVLm8s
O3QgdApzLEBTRVRfUkVMT0NBVEFCTEVALCw7dCB0CnMsQFJFTE9DQVRBQkxFX1ZJQV9MRF9UUlVF
QCwjLDt0IHQKcyxAUkVMT0NBVEFCTEVfVklBX0xEX0ZBTFNFQCwsO3QgdApzLEBVU0VfRVhUUkFf
RU5DT0RJTkdTQCxubyw7dCB0CnMsQFJBTkxJQkAscmFubGliLDt0IHQKcyxAYWNfY3RfUkFOTElC
QCxyYW5saWIsO3QgdApzLEBDUEAsY3AgLXAsO3QgdApzLEBMTkAsbG4sO3QgdApzLEBMTl9TQCxs
biAtcyw7dCB0CnMsQEVDSE9ALGVjaG8sO3QgdApzLEBBUkAsYXIsO3QgdApzLEBhY19jdF9BUkAs
YXIsO3QgdApzLEBETExUT09MQCxkbGx0b29sLDt0IHQKcyxAYWNfY3RfRExMVE9PTEAsLDt0IHQK
cyxAQVNALGFzLDt0IHQKcyxAYWNfY3RfQVNALCw7dCB0CnMsQE9CSkRVTVBALG9iamR1bXAsO3Qg
dApzLEBhY19jdF9PQkpEVU1QQCwsO3QgdApzLEBDWFhALGcrKyw7dCB0CnMsQENYWEZMQUdTQCwt
ZyAtTzIsO3QgdApzLEBhY19jdF9DWFhALGcrKyw7dCB0CnMsQENYWERFUE1PREVALGRlcG1vZGU9
bm9uZSw7dCB0CnMsQGFtX19mYXN0ZGVwQ1hYX1RSVUVALCMsO3QgdApzLEBhbV9fZmFzdGRlcENY
WF9GQUxTRUAsLDt0IHQKcyxAQ1hYQ1BQQCxnKysgLUUsO3QgdApzLEBGNzdALGY3Nyw7dCB0CnMs
QEZGTEFHU0AsLWcgLU8yLDt0IHQKcyxAYWNfY3RfRjc3QCxmNzcsO3QgdApzLEBMSUJUT09MQCwk
KFNIRUxMKSAkKHRvcF9idWlsZGRpcikvbGlidG9vbCw7dCB0CnMsQExJQklDT05WQCwvdXNyL2xv
Y2FsL2xpYi9saWJpY29udi5zbyAtV2wsLXJwYXRoIC1XbCwvdXNyL2xvY2FsL2xpYiw7dCB0CnMs
QExUTElCSUNPTlZALC1ML3Vzci9sb2NhbC9saWIgLWxpY29udiAtUi91c3IvbG9jYWwvbGliLDt0
IHQKcyxATUtJTlNUQUxMRElSU0AsJCh0b3BfYnVpbGRkaXIpL2F1dG9jb25mL21raW5zdGFsbGRp
cnMsO3QgdApzLEBVU0VfTkxTQCx5ZXMsO3QgdApzLEBNU0dGTVRALC91c3IvbG9jYWwvYmluL21z
Z2ZtdCw7dCB0CnMsQEdNU0dGTVRALC91c3IvbG9jYWwvYmluL21zZ2ZtdCw7dCB0CnMsQFhHRVRU
RVhUQCwvdXNyL2xvY2FsL2Jpbi94Z2V0dGV4dCw7dCB0CnMsQE1TR01FUkdFQCwvdXNyL2xvY2Fs
L2Jpbi9tc2dtZXJnZSw7dCB0CnMsQElOVExMSUJTQCwvdXNyL2xvY2FsL2xpYi9saWJpbnRsLnNv
IC1XbCwtcnBhdGggLVdsLC91c3IvbG9jYWwvbGliLDt0IHQKcyxATElCSU5UTEAsL3Vzci9sb2Nh
bC9saWIvbGliaW50bC5zbyAtV2wsLXJwYXRoIC1XbCwvdXNyL2xvY2FsL2xpYiw7dCB0CnMsQExU
TElCSU5UTEAsLUwvdXNyL2xvY2FsL2xpYiAtbGludGwgLVIvdXNyL2xvY2FsL2xpYiw7dCB0CnMs
QFBPU1VCQCxwbyw7dCB0CnMsQElDT05WX0NPTlNUQCxjb25zdCw7dCB0CnMsQEVJTFNFUUAsLDt0
IHQKcyxAQUxMT0NBQCwsO3QgdApzLEBBTExPQ0FfSEAsYWxsb2NhLmgsO3QgdApzLEBIQVZFX19C
T09MQCwsO3QgdApzLEBTVERCT09MX0hALCw7dCB0CnMsQE9TQCwsO3QgdApzLEBHQ0NALHllcyw7
dCB0CnMsQFBMVUdMSUJALCw7dCB0CnMsQHN1YmRpcnNALCBsaWJjaGFyc2V0LDt0IHQKcyxATFRM
SUJPQkpTQCwgY2Fub25pY2FsaXplJFUubG8sO3QgdApDRU9GCgogICMgU3BsaXQgdGhlIHN1YnN0
aXR1dGlvbnMgaW50byBiaXRlLXNpemVkIHBpZWNlcyBmb3Igc2VkcyB3aXRoCiAgIyBzbWFsbCBj
b21tYW5kIG51bWJlciBsaW1pdHMsIGxpa2Ugb24gRGlnaXRhbCBPU0YvMSBhbmQgSFAtVVguCiAg
YWNfbWF4X3NlZF9saW5lcz00OAogIGFjX3NlZF9mcmFnPTEgIyBOdW1iZXIgb2YgY3VycmVudCBm
aWxlLgogIGFjX2JlZz0xICMgRmlyc3QgbGluZSBmb3IgY3VycmVudCBmaWxlLgogIGFjX2VuZD0k
YWNfbWF4X3NlZF9saW5lcyAjIExpbmUgYWZ0ZXIgbGFzdCBsaW5lIGZvciBjdXJyZW50IGZpbGUu
CiAgYWNfbW9yZV9saW5lcz06CiAgYWNfc2VkX2NtZHM9CiAgd2hpbGUgJGFjX21vcmVfbGluZXM7
IGRvCiAgICBpZiB0ZXN0ICRhY19iZWcgLWd0IDE7IHRoZW4KICAgICAgc2VkICIxLCR7YWNfYmVn
fWQ7ICR7YWNfZW5kfXEiICR0bXAvc3Vicy5zZWQgPiR0bXAvc3Vicy5mcmFnCiAgICBlbHNlCiAg
ICAgIHNlZCAiJHthY19lbmR9cSIgJHRtcC9zdWJzLnNlZCA+JHRtcC9zdWJzLmZyYWcKICAgIGZp
CiAgICBpZiB0ZXN0ICEgLXMgJHRtcC9zdWJzLmZyYWc7IHRoZW4KICAgICAgYWNfbW9yZV9saW5l
cz1mYWxzZQogICAgZWxzZQogICAgICAjIFRoZSBwdXJwb3NlIG9mIHRoZSBsYWJlbCBhbmQgb2Yg
dGhlIGJyYW5jaGluZyBjb25kaXRpb24gaXMgdG8KICAgICAgIyBzcGVlZCB1cCB0aGUgc2VkIHBy
b2Nlc3NpbmcgKGlmIHRoZXJlIGFyZSBubyBgQCcgYXQgYWxsLCB0aGVyZQogICAgICAjIGlzIG5v
IG5lZWQgdG8gYnJvd3NlIGFueSBvZiB0aGUgc3Vic3RpdHV0aW9ucykuCiAgICAgICMgVGhlc2Ug
YXJlIHRoZSB0d28gZXh0cmEgc2VkIGNvbW1hbmRzIG1lbnRpb25lZCBhYm92ZS4KICAgICAgKGVj
aG8gJzp0CiAgL0BbYS16QS1aX11bYS16QS1aXzAtOV0qQC8hYicgJiYgY2F0ICR0bXAvc3Vicy5m
cmFnKSA+JHRtcC9zdWJzLSRhY19zZWRfZnJhZy5zZWQKICAgICAgaWYgdGVzdCAteiAiJGFjX3Nl
ZF9jbWRzIjsgdGhlbgogIAlhY19zZWRfY21kcz0ic2VkIC1mICR0bXAvc3Vicy0kYWNfc2VkX2Zy
YWcuc2VkIgogICAgICBlbHNlCiAgCWFjX3NlZF9jbWRzPSIkYWNfc2VkX2NtZHMgfCBzZWQgLWYg
JHRtcC9zdWJzLSRhY19zZWRfZnJhZy5zZWQiCiAgICAgIGZpCiAgICAgIGFjX3NlZF9mcmFnPWBl
eHByICRhY19zZWRfZnJhZyArIDFgCiAgICAgIGFjX2JlZz0kYWNfZW5kCiAgICAgIGFjX2VuZD1g
ZXhwciAkYWNfZW5kICsgJGFjX21heF9zZWRfbGluZXNgCiAgICBmaQogIGRvbmUKICBpZiB0ZXN0
IC16ICIkYWNfc2VkX2NtZHMiOyB0aGVuCiAgICBhY19zZWRfY21kcz1jYXQKICBmaQpmaSAjIHRl
c3QgLW4gIiRDT05GSUdfRklMRVMiCgpmb3IgYWNfZmlsZSBpbiA6ICRDT05GSUdfRklMRVM7IGRv
IHRlc3QgIngkYWNfZmlsZSIgPSB4OiAmJiBjb250aW51ZQogICMgU3VwcG9ydCAib3V0ZmlsZVs6
aW5maWxlWzppbmZpbGUuLi5dXSIsIGRlZmF1bHRpbmcgaW5maWxlPSJvdXRmaWxlLmluIi4KICBj
YXNlICRhY19maWxlIGluCiAgLSB8ICo6LSB8ICo6LToqICkgIyBpbnB1dCBmcm9tIHN0ZGluCiAg
ICAgICAgY2F0ID4kdG1wL3N0ZGluCiAgICAgICAgYWNfZmlsZV9pbj1gZWNobyAiJGFjX2ZpbGUi
IHwgc2VkICdzLFteOl0qOiwsJ2AKICAgICAgICBhY19maWxlPWBlY2hvICIkYWNfZmlsZSIgfCBz
ZWQgJ3MsOi4qLCwnYCA7OwogICo6KiApIGFjX2ZpbGVfaW49YGVjaG8gIiRhY19maWxlIiB8IHNl
ZCAncyxbXjpdKjosLCdgCiAgICAgICAgYWNfZmlsZT1gZWNobyAiJGFjX2ZpbGUiIHwgc2VkICdz
LDouKiwsJ2AgOzsKICAqICkgICBhY19maWxlX2luPSRhY19maWxlLmluIDs7CiAgZXNhYwoKICAj
IENvbXB1dGUgQHNyY2RpckAsIEB0b3Bfc3JjZGlyQCwgYW5kIEBJTlNUQUxMQCBmb3Igc3ViZGly
ZWN0b3JpZXMuCiAgYWNfZGlyPWAoZGlybmFtZSAiJGFjX2ZpbGUiKSAyPi9kZXYvbnVsbCB8fAok
YXNfZXhwciBYIiRhY19maWxlIiA6ICdYXCguKlteL11cKS8vKlteL11bXi9dKi8qJCcgXHwgXAog
ICAgICAgICBYIiRhY19maWxlIiA6ICdYXCgvL1wpW14vXScgXHwgXAogICAgICAgICBYIiRhY19m
aWxlIiA6ICdYXCgvL1wpJCcgXHwgXAogICAgICAgICBYIiRhY19maWxlIiA6ICdYXCgvXCknIFx8
IFwKICAgICAgICAgLiAgICAgOiAnXCguXCknIDI+L2Rldi9udWxsIHx8CmVjaG8gWCIkYWNfZmls
ZSIgfAogICAgc2VkICcvXlhcKC4qW14vXVwpXC9cLypbXi9dW14vXSpcLyokL3sgcy8vXDEvOyBx
OyB9CiAgCSAgL15YXChcL1wvXClbXi9dLioveyBzLy9cMS87IHE7IH0KICAJICAvXlhcKFwvXC9c
KSQveyBzLy9cMS87IHE7IH0KICAJICAvXlhcKFwvXCkuKi97IHMvL1wxLzsgcTsgfQogIAkgIHMv
LiovLi87IHEnYAogIHsgaWYgJGFzX21rZGlyX3A7IHRoZW4KICAgIG1rZGlyIC1wICIkYWNfZGly
IgogIGVsc2UKICAgIGFzX2Rpcj0iJGFjX2RpciIKICAgIGFzX2RpcnM9CiAgICB3aGlsZSB0ZXN0
ICEgLWQgIiRhc19kaXIiOyBkbwogICAgICBhc19kaXJzPSIkYXNfZGlyICRhc19kaXJzIgogICAg
ICBhc19kaXI9YChkaXJuYW1lICIkYXNfZGlyIikgMj4vZGV2L251bGwgfHwKJGFzX2V4cHIgWCIk
YXNfZGlyIiA6ICdYXCguKlteL11cKS8vKlteL11bXi9dKi8qJCcgXHwgXAogICAgICAgICBYIiRh
c19kaXIiIDogJ1hcKC8vXClbXi9dJyBcfCBcCiAgICAgICAgIFgiJGFzX2RpciIgOiAnWFwoLy9c
KSQnIFx8IFwKICAgICAgICAgWCIkYXNfZGlyIiA6ICdYXCgvXCknIFx8IFwKICAgICAgICAgLiAg
ICAgOiAnXCguXCknIDI+L2Rldi9udWxsIHx8CmVjaG8gWCIkYXNfZGlyIiB8CiAgICBzZWQgJy9e
WFwoLipbXi9dXClcL1wvKlteL11bXi9dKlwvKiQveyBzLy9cMS87IHE7IH0KICAJICAvXlhcKFwv
XC9cKVteL10uKi97IHMvL1wxLzsgcTsgfQogIAkgIC9eWFwoXC9cL1wpJC97IHMvL1wxLzsgcTsg
fQogIAkgIC9eWFwoXC9cKS4qL3sgcy8vXDEvOyBxOyB9CiAgCSAgcy8uKi8uLzsgcSdgCiAgICBk
b25lCiAgICB0ZXN0ICEgLW4gIiRhc19kaXJzIiB8fCBta2RpciAkYXNfZGlycwogIGZpIHx8IHsg
eyBlY2hvICIkYXNfbWU6JExJTkVOTzogZXJyb3I6IGNhbm5vdCBjcmVhdGUgZGlyZWN0b3J5IFwi
JGFjX2RpclwiIiA+JjUKZWNobyAiJGFzX21lOiBlcnJvcjogY2Fubm90IGNyZWF0ZSBkaXJlY3Rv
cnkgXCIkYWNfZGlyXCIiID4mMjt9CiAgIHsgKGV4aXQgMSk7IGV4aXQgMTsgfTsgfTsgfQoKICBh
Y19idWlsZGRpcj0uCgppZiB0ZXN0ICIkYWNfZGlyIiAhPSAuOyB0aGVuCiAgYWNfZGlyX3N1ZmZp
eD0vYGVjaG8gIiRhY19kaXIiIHwgc2VkICdzLF5cLltcXC9dLCwnYAogICMgQSAiLi4vIiBmb3Ig
ZWFjaCBkaXJlY3RvcnkgaW4gJGFjX2Rpcl9zdWZmaXguCiAgYWNfdG9wX2J1aWxkZGlyPWBlY2hv
ICIkYWNfZGlyX3N1ZmZpeCIgfCBzZWQgJ3MsL1teXFwvXSosLi4vLGcnYAplbHNlCiAgYWNfZGly
X3N1ZmZpeD0gYWNfdG9wX2J1aWxkZGlyPQpmaQoKY2FzZSAkc3JjZGlyIGluCiAgLikgICMgTm8g
LS1zcmNkaXIgb3B0aW9uLiAgV2UgYXJlIGJ1aWxkaW5nIGluIHBsYWNlLgogICAgYWNfc3JjZGly
PS4KICAgIGlmIHRlc3QgLXogIiRhY190b3BfYnVpbGRkaXIiOyB0aGVuCiAgICAgICBhY190b3Bf
c3JjZGlyPS4KICAgIGVsc2UKICAgICAgIGFjX3RvcF9zcmNkaXI9YGVjaG8gJGFjX3RvcF9idWls
ZGRpciB8IHNlZCAncywvJCwsJ2AKICAgIGZpIDs7CiAgW1xcL10qIHwgPzpbXFwvXSogKSAgIyBB
YnNvbHV0ZSBwYXRoLgogICAgYWNfc3JjZGlyPSRzcmNkaXIkYWNfZGlyX3N1ZmZpeDsKICAgIGFj
X3RvcF9zcmNkaXI9JHNyY2RpciA7OwogICopICMgUmVsYXRpdmUgcGF0aC4KICAgIGFjX3NyY2Rp
cj0kYWNfdG9wX2J1aWxkZGlyJHNyY2RpciRhY19kaXJfc3VmZml4CiAgICBhY190b3Bfc3JjZGly
PSRhY190b3BfYnVpbGRkaXIkc3JjZGlyIDs7CmVzYWMKIyBEb24ndCBibGluZGx5IHBlcmZvcm0g
YSBgY2QgIiRhY19kaXIiLyRhY19mb28gJiYgcHdkYCBzaW5jZSAkYWNfZm9vIGNhbiBiZQojIGFi
c29sdXRlLgphY19hYnNfYnVpbGRkaXI9YGNkICIkYWNfZGlyIiAmJiBjZCAkYWNfYnVpbGRkaXIg
JiYgcHdkYAphY19hYnNfdG9wX2J1aWxkZGlyPWBjZCAiJGFjX2RpciIgJiYgY2QgJHthY190b3Bf
YnVpbGRkaXJ9LiAmJiBwd2RgCmFjX2Fic19zcmNkaXI9YGNkICIkYWNfZGlyIiAmJiBjZCAkYWNf
c3JjZGlyICYmIHB3ZGAKYWNfYWJzX3RvcF9zcmNkaXI9YGNkICIkYWNfZGlyIiAmJiBjZCAkYWNf
dG9wX3NyY2RpciAmJiBwd2RgCgoKICBjYXNlICRJTlNUQUxMIGluCiAgW1xcLyRdKiB8ID86W1xc
L10qICkgYWNfSU5TVEFMTD0kSU5TVEFMTCA7OwogICopIGFjX0lOU1RBTEw9JGFjX3RvcF9idWls
ZGRpciRJTlNUQUxMIDs7CiAgZXNhYwoKICBpZiB0ZXN0IHgiJGFjX2ZpbGUiICE9IHgtOyB0aGVu
CiAgICB7IGVjaG8gIiRhc19tZTokTElORU5POiBjcmVhdGluZyAkYWNfZmlsZSIgPiY1CmVjaG8g
IiRhc19tZTogY3JlYXRpbmcgJGFjX2ZpbGUiID4mNjt9CiAgICBybSAtZiAiJGFjX2ZpbGUiCiAg
ZmkKICAjIExldCdzIHN0aWxsIHByZXRlbmQgaXQgaXMgYGNvbmZpZ3VyZScgd2hpY2ggaW5zdGFu
dGlhdGVzIChpLmUuLCBkb24ndAogICMgdXNlICRhc19tZSksIHBlb3BsZSB3b3VsZCBiZSBzdXJw
cmlzZWQgdG8gcmVhZDoKICAjICAgIC8qIGNvbmZpZy5oLiAgR2VuZXJhdGVkIGJ5IGNvbmZpZy5z
dGF0dXMuICAqLwogIGlmIHRlc3QgeCIkYWNfZmlsZSIgPSB4LTsgdGhlbgogICAgY29uZmlndXJl
X2lucHV0PQogIGVsc2UKICAgIGNvbmZpZ3VyZV9pbnB1dD0iJGFjX2ZpbGUuICAiCiAgZmkKICBj
b25maWd1cmVfaW5wdXQ9JGNvbmZpZ3VyZV9pbnB1dCJHZW5lcmF0ZWQgZnJvbSBgZWNobyAkYWNf
ZmlsZV9pbiB8CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZWQgJ3MsLiov
LCwnYCBieSBjb25maWd1cmUuIgoKICAjIEZpcnN0IGxvb2sgZm9yIHRoZSBpbnB1dCBmaWxlcyBp
biB0aGUgYnVpbGQgdHJlZSwgb3RoZXJ3aXNlIGluIHRoZQogICMgc3JjIHRyZWUuCiAgYWNfZmls
ZV9pbnB1dHM9YElGUz06CiAgICBmb3IgZiBpbiAkYWNfZmlsZV9pbjsgZG8KICAgICAgY2FzZSAk
ZiBpbgogICAgICAtKSBlY2hvICR0bXAvc3RkaW4gOzsKICAgICAgW1xcLyRdKikKICAgICAgICAg
IyBBYnNvbHV0ZSAoY2FuJ3QgYmUgRE9TLXN0eWxlLCBhcyBJRlM9OikKICAgICAgICAgdGVzdCAt
ZiAiJGYiIHx8IHsgeyBlY2hvICIkYXNfbWU6JExJTkVOTzogZXJyb3I6IGNhbm5vdCBmaW5kIGlu
cHV0IGZpbGU6ICRmIiA+JjUKZWNobyAiJGFzX21lOiBlcnJvcjogY2Fubm90IGZpbmQgaW5wdXQg
ZmlsZTogJGYiID4mMjt9CiAgIHsgKGV4aXQgMSk7IGV4aXQgMTsgfTsgfQogICAgICAgICBlY2hv
ICRmOzsKICAgICAgKikgIyBSZWxhdGl2ZQogICAgICAgICBpZiB0ZXN0IC1mICIkZiI7IHRoZW4K
ICAgICAgICAgICAjIEJ1aWxkIHRyZWUKICAgICAgICAgICBlY2hvICRmCiAgICAgICAgIGVsaWYg
dGVzdCAtZiAiJHNyY2Rpci8kZiI7IHRoZW4KICAgICAgICAgICAjIFNvdXJjZSB0cmVlCiAgICAg
ICAgICAgZWNobyAkc3JjZGlyLyRmCiAgICAgICAgIGVsc2UKICAgICAgICAgICAjIC9kZXYvbnVs
bCB0cmVlCiAgICAgICAgICAgeyB7IGVjaG8gIiRhc19tZTokTElORU5POiBlcnJvcjogY2Fubm90
IGZpbmQgaW5wdXQgZmlsZTogJGYiID4mNQplY2hvICIkYXNfbWU6IGVycm9yOiBjYW5ub3QgZmlu
ZCBpbnB1dCBmaWxlOiAkZiIgPiYyO30KICAgeyAoZXhpdCAxKTsgZXhpdCAxOyB9OyB9CiAgICAg
ICAgIGZpOzsKICAgICAgZXNhYwogICAgZG9uZWAgfHwgeyAoZXhpdCAxKTsgZXhpdCAxOyB9CiAg
c2VkICIvXlsgCV0qVlBBVEhbIAldKj0vewpzLzoqXCQoc3JjZGlyKToqLzovOwpzLzoqXCR7c3Jj
ZGlyfToqLzovOwpzLzoqQHNyY2RpckA6Ki86LzsKcy9eXChbXj1dKj1bIAldKlwpOiovXDEvOwpz
LzoqJC8vOwpzL15bXj1dKj1bIAldKiQvLzsKfQoKOnQKL0BbYS16QS1aX11bYS16QS1aXzAtOV0q
QC8hYgpzLEBjb25maWd1cmVfaW5wdXRALCRjb25maWd1cmVfaW5wdXQsO3QgdApzLEBzcmNkaXJA
LCRhY19zcmNkaXIsO3QgdApzLEBhYnNfc3JjZGlyQCwkYWNfYWJzX3NyY2Rpciw7dCB0CnMsQHRv
cF9zcmNkaXJALCRhY190b3Bfc3JjZGlyLDt0IHQKcyxAYWJzX3RvcF9zcmNkaXJALCRhY19hYnNf
dG9wX3NyY2Rpciw7dCB0CnMsQGJ1aWxkZGlyQCwkYWNfYnVpbGRkaXIsO3QgdApzLEBhYnNfYnVp
bGRkaXJALCRhY19hYnNfYnVpbGRkaXIsO3QgdApzLEB0b3BfYnVpbGRkaXJALCRhY190b3BfYnVp
bGRkaXIsO3QgdApzLEBhYnNfdG9wX2J1aWxkZGlyQCwkYWNfYWJzX3RvcF9idWlsZGRpciw7dCB0
CnMsQElOU1RBTExALCRhY19JTlNUQUxMLDt0IHQKIiAkYWNfZmlsZV9pbnB1dHMgfCAoZXZhbCAi
JGFjX3NlZF9jbWRzIikgPiR0bXAvb3V0CiAgcm0gLWYgJHRtcC9zdGRpbgogIGlmIHRlc3QgeCIk
YWNfZmlsZSIgIT0geC07IHRoZW4KICAgIG12ICR0bXAvb3V0ICRhY19maWxlCiAgZWxzZQogICAg
Y2F0ICR0bXAvb3V0CiAgICBybSAtZiAkdG1wL291dAogIGZpCgpkb25lCgojCiMgQ09ORklHX0hF
QURFUiBzZWN0aW9uLgojCgojIFRoZXNlIHNlZCBjb21tYW5kcyBhcmUgcGFzc2VkIHRvIHNlZCBh
cyAiQSBOQU1FIEIgTkFNRSBDIFZBTFVFIEQiLCB3aGVyZQojIE5BTUUgaXMgdGhlIGNwcCBtYWNy
byBiZWluZyBkZWZpbmVkIGFuZCBWQUxVRSBpcyB0aGUgdmFsdWUgaXQgaXMgYmVpbmcgZ2l2ZW4u
CiMKIyBhY19kIHNldHMgdGhlIHZhbHVlIGluICIjZGVmaW5lIE5BTUUgVkFMVUUiIGxpbmVzLgph
Y19kQT0ncyxeXChbIAldKlwpI1woWyAJXSpkZWZpbmVbIAldWyAJXSpcKScKYWNfZEI9J1sgCV0u
KiQsXDEjXDInCmFjX2RDPScgJwphY19kRD0nLDt0JwojIGFjX3UgdHVybnMgIiN1bmRlZiBOQU1F
IiB3aXRob3V0IHRyYWlsaW5nIGJsYW5rcyBpbnRvICIjZGVmaW5lIE5BTUUgVkFMVUUiLgphY191
QT0ncyxeXChbIAldKlwpI1woWyAJXSpcKXVuZGVmXChbIAldWyAJXSpcKScKYWNfdUI9JyQsXDEj
XDJkZWZpbmVcMycKYWNfdUM9JyAnCmFjX3VEPScsO3QnCgpmb3IgYWNfZmlsZSBpbiA6ICRDT05G
SUdfSEVBREVSUzsgZG8gdGVzdCAieCRhY19maWxlIiA9IHg6ICYmIGNvbnRpbnVlCiAgIyBTdXBw
b3J0ICJvdXRmaWxlWzppbmZpbGVbOmluZmlsZS4uLl1dIiwgZGVmYXVsdGluZyBpbmZpbGU9Im91
dGZpbGUuaW4iLgogIGNhc2UgJGFjX2ZpbGUgaW4KICAtIHwgKjotIHwgKjotOiogKSAjIGlucHV0
IGZyb20gc3RkaW4KICAgICAgICBjYXQgPiR0bXAvc3RkaW4KICAgICAgICBhY19maWxlX2luPWBl
Y2hvICIkYWNfZmlsZSIgfCBzZWQgJ3MsW146XSo6LCwnYAogICAgICAgIGFjX2ZpbGU9YGVjaG8g
IiRhY19maWxlIiB8IHNlZCAncyw6LiosLCdgIDs7CiAgKjoqICkgYWNfZmlsZV9pbj1gZWNobyAi
JGFjX2ZpbGUiIHwgc2VkICdzLFteOl0qOiwsJ2AKICAgICAgICBhY19maWxlPWBlY2hvICIkYWNf
ZmlsZSIgfCBzZWQgJ3MsOi4qLCwnYCA7OwogICogKSAgIGFjX2ZpbGVfaW49JGFjX2ZpbGUuaW4g
OzsKICBlc2FjCgogIHRlc3QgeCIkYWNfZmlsZSIgIT0geC0gJiYgeyBlY2hvICIkYXNfbWU6JExJ
TkVOTzogY3JlYXRpbmcgJGFjX2ZpbGUiID4mNQplY2hvICIkYXNfbWU6IGNyZWF0aW5nICRhY19m
aWxlIiA+JjY7fQoKICAjIEZpcnN0IGxvb2sgZm9yIHRoZSBpbnB1dCBmaWxlcyBpbiB0aGUgYnVp
bGQgdHJlZSwgb3RoZXJ3aXNlIGluIHRoZQogICMgc3JjIHRyZWUuCiAgYWNfZmlsZV9pbnB1dHM9
YElGUz06CiAgICBmb3IgZiBpbiAkYWNfZmlsZV9pbjsgZG8KICAgICAgY2FzZSAkZiBpbgogICAg
ICAtKSBlY2hvICR0bXAvc3RkaW4gOzsKICAgICAgW1xcLyRdKikKICAgICAgICAgIyBBYnNvbHV0
ZSAoY2FuJ3QgYmUgRE9TLXN0eWxlLCBhcyBJRlM9OikKICAgICAgICAgdGVzdCAtZiAiJGYiIHx8
IHsgeyBlY2hvICIkYXNfbWU6JExJTkVOTzogZXJyb3I6IGNhbm5vdCBmaW5kIGlucHV0IGZpbGU6
ICRmIiA+JjUKZWNobyAiJGFzX21lOiBlcnJvcjogY2Fubm90IGZpbmQgaW5wdXQgZmlsZTogJGYi
ID4mMjt9CiAgIHsgKGV4aXQgMSk7IGV4aXQgMTsgfTsgfQogICAgICAgICBlY2hvICRmOzsKICAg
ICAgKikgIyBSZWxhdGl2ZQogICAgICAgICBpZiB0ZXN0IC1mICIkZiI7IHRoZW4KICAgICAgICAg
ICAjIEJ1aWxkIHRyZWUKICAgICAgICAgICBlY2hvICRmCiAgICAgICAgIGVsaWYgdGVzdCAtZiAi
JHNyY2Rpci8kZiI7IHRoZW4KICAgICAgICAgICAjIFNvdXJjZSB0cmVlCiAgICAgICAgICAgZWNo
byAkc3JjZGlyLyRmCiAgICAgICAgIGVsc2UKICAgICAgICAgICAjIC9kZXYvbnVsbCB0cmVlCiAg
ICAgICAgICAgeyB7IGVjaG8gIiRhc19tZTokTElORU5POiBlcnJvcjogY2Fubm90IGZpbmQgaW5w
dXQgZmlsZTogJGYiID4mNQplY2hvICIkYXNfbWU6IGVycm9yOiBjYW5ub3QgZmluZCBpbnB1dCBm
aWxlOiAkZiIgPiYyO30KICAgeyAoZXhpdCAxKTsgZXhpdCAxOyB9OyB9CiAgICAgICAgIGZpOzsK
ICAgICAgZXNhYwogICAgZG9uZWAgfHwgeyAoZXhpdCAxKTsgZXhpdCAxOyB9CiAgIyBSZW1vdmUg
dGhlIHRyYWlsaW5nIHNwYWNlcy4KICBzZWQgJ3MvWyAJXSokLy8nICRhY19maWxlX2lucHV0cyA+
JHRtcC9pbgoKICAjIEhhbmRsZSBhbGwgdGhlICNkZWZpbmUgdGVtcGxhdGVzIG9ubHkgaWYgbmVj
ZXNzYXJ5LgogIGlmIGdyZXAgIl5bIAldKiNbIAldKmRlZmluZSIgJHRtcC9pbiA+L2Rldi9udWxs
OyB0aGVuCiAgIyBJZiB0aGVyZSBhcmUgbm8gZGVmaW5lcywgd2UgbWF5IGhhdmUgYW4gZW1wdHkg
aWYvZmkKICA6CiAgY2F0ID4kdG1wL2RlZmluZXMuc2VkIDw8Q0VPRgovXlsgCV0qI1sgCV0qZGVm
aW5lLyFiCnQgY2xyCjogY2xyCiR7YWNfZEF9UEFDS0FHRV9OQU1FJHthY19kQn1QQUNLQUdFX05B
TUUke2FjX2RDfSIiJHthY19kRH0KJHthY19kQX1QQUNLQUdFX1RBUk5BTUUke2FjX2RCfVBBQ0tB
R0VfVEFSTkFNRSR7YWNfZEN9IiIke2FjX2REfQoke2FjX2RBfVBBQ0tBR0VfVkVSU0lPTiR7YWNf
ZEJ9UEFDS0FHRV9WRVJTSU9OJHthY19kQ30iIiR7YWNfZER9CiR7YWNfZEF9UEFDS0FHRV9TVFJJ
Tkcke2FjX2RCfVBBQ0tBR0VfU1RSSU5HJHthY19kQ30iIiR7YWNfZER9CiR7YWNfZEF9UEFDS0FH
RV9CVUdSRVBPUlQke2FjX2RCfVBBQ0tBR0VfQlVHUkVQT1JUJHthY19kQ30iIiR7YWNfZER9CiR7
YWNfZEF9UEFDS0FHRSR7YWNfZEJ9UEFDS0FHRSR7YWNfZEN9ImxpYmljb252IiR7YWNfZER9CiR7
YWNfZEF9VkVSU0lPTiR7YWNfZEJ9VkVSU0lPTiR7YWNfZEN9IjEuOSIke2FjX2REfQoke2FjX2RB
fUlOU1RBTExQUkVGSVgke2FjX2RCfUlOU1RBTExQUkVGSVgke2FjX2RDfSIvdXNyL2xvY2FsIiR7
YWNfZER9CiR7YWNfZEF9X0dOVV9TT1VSQ0Uke2FjX2RCfV9HTlVfU09VUkNFJHthY19kQ30xJHth
Y19kRH0KJHthY19kQX1TVERDX0hFQURFUlMke2FjX2RCfVNURENfSEVBREVSUyR7YWNfZEN9MSR7
YWNfZER9CiR7YWNfZEF9SEFWRV9TWVNfVFlQRVNfSCR7YWNfZEJ9SEFWRV9TWVNfVFlQRVNfSCR7
YWNfZEN9MSR7YWNfZER9CiR7YWNfZEF9SEFWRV9TWVNfU1RBVF9IJHthY19kQn1IQVZFX1NZU19T
VEFUX0gke2FjX2RDfTEke2FjX2REfQoke2FjX2RBfUhBVkVfU1RETElCX0gke2FjX2RCfUhBVkVf
U1RETElCX0gke2FjX2RDfTEke2FjX2REfQoke2FjX2RBfUhBVkVfU1RSSU5HX0gke2FjX2RCfUhB
VkVfU1RSSU5HX0gke2FjX2RDfTEke2FjX2REfQoke2FjX2RBfUhBVkVfTUVNT1JZX0gke2FjX2RC
fUhBVkVfTUVNT1JZX0gke2FjX2RDfTEke2FjX2REfQoke2FjX2RBfUhBVkVfU1RSSU5HU19IJHth
Y19kQn1IQVZFX1NUUklOR1NfSCR7YWNfZEN9MSR7YWNfZER9CiR7YWNfZEF9SEFWRV9JTlRUWVBF
U19IJHthY19kQn1IQVZFX0lOVFRZUEVTX0gke2FjX2RDfTEke2FjX2REfQoke2FjX2RBfUhBVkVf
U1RESU5UX0gke2FjX2RCfUhBVkVfU1RESU5UX0gke2FjX2RDfTEke2FjX2REfQoke2FjX2RBfUhB
VkVfVU5JU1REX0gke2FjX2RCfUhBVkVfVU5JU1REX0gke2FjX2RDfTEke2FjX2REfQoke2FjX2RB
fUhBVkVfRExGQ05fSCR7YWNfZEJ9SEFWRV9ETEZDTl9IJHthY19kQ30xJHthY19kRH0KJHthY19k
QX1IQVZFX0lDT05WJHthY19kQn1IQVZFX0lDT05WJHthY19kQ30xJHthY19kRH0KJHthY19kQX1J
Q09OVl9DT05TVCR7YWNfZEJ9SUNPTlZfQ09OU1Qke2FjX2RDfWNvbnN0JHthY19kRH0KJHthY19k
QX1IQVZFX0lDT05WJHthY19kQn1IQVZFX0lDT05WJHthY19kQ30xJHthY19kRH0KJHthY19kQX1F
TkFCTEVfTkxTJHthY19kQn1FTkFCTEVfTkxTJHthY19kQ30xJHthY19kRH0KJHthY19kQX1IQVZF
X0dFVFRFWFQke2FjX2RCfUhBVkVfR0VUVEVYVCR7YWNfZEN9MSR7YWNfZER9CiR7YWNfZEF9SEFW
RV9EQ0dFVFRFWFQke2FjX2RCfUhBVkVfRENHRVRURVhUJHthY19kQ30xJHthY19kRH0KJHthY19k
QX1TVERDX0hFQURFUlMke2FjX2RCfVNURENfSEVBREVSUyR7YWNfZEN9MSR7YWNfZER9CiR7YWNf
ZEF9SEFWRV9MT0NBTEVfSCR7YWNfZEJ9SEFWRV9MT0NBTEVfSCR7YWNfZEN9MSR7YWNfZER9CiR7
YWNfZEF9SEFWRV9TVERERUZfSCR7YWNfZEJ9SEFWRV9TVERERUZfSCR7YWNfZEN9MSR7YWNfZER9
CiR7YWNfZEF9SEFWRV9TVERMSUJfSCR7YWNfZEJ9SEFWRV9TVERMSUJfSCR7YWNfZEN9MSR7YWNf
ZER9CiR7YWNfZEF9SEFWRV9TVFJJTkdfSCR7YWNfZEJ9SEFWRV9TVFJJTkdfSCR7YWNfZEN9MSR7
YWNfZER9CiR7YWNfZEF9SEFWRV9TVERMSUJfSCR7YWNfZEJ9SEFWRV9TVERMSUJfSCR7YWNfZEN9
MSR7YWNfZER9CiR7YWNfZEF9SEFWRV9HRVRDX1VOTE9DS0VEJHthY19kQn1IQVZFX0dFVENfVU5M
T0NLRUQke2FjX2RDfTEke2FjX2REfQoke2FjX2RBfUhBVkVfTUJSVE9XQyR7YWNfZEJ9SEFWRV9N
QlJUT1dDJHthY19kQ30xJHthY19kRH0KJHthY19kQX1IQVZFX1dDUlRPTUIke2FjX2RCfUhBVkVf
V0NSVE9NQiR7YWNfZEN9MSR7YWNfZER9CiR7YWNfZEF9SEFWRV9NQlNJTklUJHthY19kQn1IQVZF
X01CU0lOSVQke2FjX2RDfTEke2FjX2REfQoke2FjX2RBfUhBVkVfU0VUTE9DQUxFJHthY19kQn1I
QVZFX1NFVExPQ0FMRSR7YWNfZEN9MSR7YWNfZER9CiR7YWNfZEF9SEFWRV9NRU1NT1ZFJHthY19k
Qn1IQVZFX01FTU1PVkUke2FjX2RDfTEke2FjX2REfQpDRU9GCiAgc2VkIC1mICR0bXAvZGVmaW5l
cy5zZWQgJHRtcC9pbiA+JHRtcC9vdXQKICBybSAtZiAkdG1wL2luCiAgbXYgJHRtcC9vdXQgJHRt
cC9pbgoKICBjYXQgPiR0bXAvZGVmaW5lcy5zZWQgPDxDRU9GCi9eWyAJXSojWyAJXSpkZWZpbmUv
IWIKdCBjbHIKOiBjbHIKJHthY19kQX1IQVZFX0xBTkdJTkZPX0NPREVTRVQke2FjX2RCfUhBVkVf
TEFOR0lORk9fQ09ERVNFVCR7YWNfZEN9MSR7YWNfZER9CiR7YWNfZEF9SEFWRV9XQ0hBUl9IJHth
Y19kQn1IQVZFX1dDSEFSX0gke2FjX2RDfTEke2FjX2REfQoke2FjX2RBfVdPUkRTX0xJVFRMRUVO
RElBTiR7YWNfZEJ9V09SRFNfTElUVExFRU5ESUFOJHthY19kQ30xJHthY19kRH0KJHthY19kQX1I
QVZFX0FMTE9DQSR7YWNfZEJ9SEFWRV9BTExPQ0Eke2FjX2RDfTEke2FjX2REfQoke2FjX2RBfUhB
VkVfU1RETElCX0gke2FjX2RCfUhBVkVfU1RETElCX0gke2FjX2RDfTEke2FjX2REfQoke2FjX2RB
fUhBVkVfU1RSSU5HX0gke2FjX2RCfUhBVkVfU1RSSU5HX0gke2FjX2RDfTEke2FjX2REfQoke2Fj
X2RBfUhBVkVfU1lTX1BBUkFNX0gke2FjX2RCfUhBVkVfU1lTX1BBUkFNX0gke2FjX2RDfTEke2Fj
X2REfQoke2FjX2RBfUhBVkVfVU5JU1REX0gke2FjX2RCfUhBVkVfVU5JU1REX0gke2FjX2RDfTEk
e2FjX2REfQoke2FjX2RBfXJlYWxwYXRoJHthY19kQn1yZWFscGF0aCR7YWNfZEN9cnBsX3JlYWxw
YXRoJHthY19kRH0KJHthY19kQX1IQVZFX0dFVENXRCR7YWNfZEJ9SEFWRV9HRVRDV0Qke2FjX2RD
fTEke2FjX2REfQoke2FjX2RBfUhBVkVfREVDTF9DTEVBUkVSUl9VTkxPQ0tFRCR7YWNfZEJ9SEFW
RV9ERUNMX0NMRUFSRVJSX1VOTE9DS0VEJHthY19kQ30xJHthY19kRH0KJHthY19kQX1IQVZFX0RF
Q0xfRkVPRl9VTkxPQ0tFRCR7YWNfZEJ9SEFWRV9ERUNMX0ZFT0ZfVU5MT0NLRUQke2FjX2RDfTEk
e2FjX2REfQoke2FjX2RBfUhBVkVfREVDTF9GRVJST1JfVU5MT0NLRUQke2FjX2RCfUhBVkVfREVD
TF9GRVJST1JfVU5MT0NLRUQke2FjX2RDfTEke2FjX2REfQoke2FjX2RBfUhBVkVfREVDTF9GRkxV
U0hfVU5MT0NLRUQke2FjX2RCfUhBVkVfREVDTF9GRkxVU0hfVU5MT0NLRUQke2FjX2RDfTAke2Fj
X2REfQoke2FjX2RBfUhBVkVfREVDTF9GR0VUU19VTkxPQ0tFRCR7YWNfZEJ9SEFWRV9ERUNMX0ZH
RVRTX1VOTE9DS0VEJHthY19kQ30wJHthY19kRH0KJHthY19kQX1IQVZFX0RFQ0xfRlBVVENfVU5M
T0NLRUQke2FjX2RCfUhBVkVfREVDTF9GUFVUQ19VTkxPQ0tFRCR7YWNfZEN9MCR7YWNfZER9CiR7
YWNfZEF9SEFWRV9ERUNMX0ZQVVRTX1VOTE9DS0VEJHthY19kQn1IQVZFX0RFQ0xfRlBVVFNfVU5M
T0NLRUQke2FjX2RDfTAke2FjX2REfQoke2FjX2RBfUhBVkVfREVDTF9GUkVBRF9VTkxPQ0tFRCR7
YWNfZEJ9SEFWRV9ERUNMX0ZSRUFEX1VOTE9DS0VEJHthY19kQ30wJHthY19kRH0KJHthY19kQX1I
QVZFX0RFQ0xfRldSSVRFX1VOTE9DS0VEJHthY19kQn1IQVZFX0RFQ0xfRldSSVRFX1VOTE9DS0VE
JHthY19kQ30wJHthY19kRH0KJHthY19kQX1IQVZFX0RFQ0xfR0VUQ19VTkxPQ0tFRCR7YWNfZEJ9
SEFWRV9ERUNMX0dFVENfVU5MT0NLRUQke2FjX2RDfTEke2FjX2REfQoke2FjX2RBfUhBVkVfREVD
TF9HRVRDSEFSX1VOTE9DS0VEJHthY19kQn1IQVZFX0RFQ0xfR0VUQ0hBUl9VTkxPQ0tFRCR7YWNf
ZEN9MSR7YWNfZER9CiR7YWNfZEF9SEFWRV9ERUNMX1BVVENfVU5MT0NLRUQke2FjX2RCfUhBVkVf
REVDTF9QVVRDX1VOTE9DS0VEJHthY19kQ30xJHthY19kRH0KJHthY19kQX1IQVZFX0RFQ0xfUFVU
Q0hBUl9VTkxPQ0tFRCR7YWNfZEJ9SEFWRV9ERUNMX1BVVENIQVJfVU5MT0NLRUQke2FjX2RDfTEk
e2FjX2REfQoke2FjX2RBfUhBVkVfVlBSSU5URiR7YWNfZEJ9SEFWRV9WUFJJTlRGJHthY19kQ30x
JHthY19kRH0KJHthY19kQX1IQVZFX1NUUkVSUk9SJHthY19kQn1IQVZFX1NUUkVSUk9SJHthY19k
Q30xJHthY19kRH0KJHthY19kQX1IQVZFX0RFQ0xfU1RSRVJST1Ike2FjX2RCfUhBVkVfREVDTF9T
VFJFUlJPUiR7YWNfZEN9MSR7YWNfZER9CiR7YWNfZEF9SEFWRV9ERUNMX1NUUkVSUk9SX1Ike2Fj
X2RCfUhBVkVfREVDTF9TVFJFUlJPUl9SJHthY19kQ30xJHthY19kRH0KJHthY19kQX1IQVZFX1NU
UkVSUk9SX1Ike2FjX2RCfUhBVkVfU1RSRVJST1JfUiR7YWNfZEN9MSR7YWNfZER9CiR7YWNfZEF9
SEFWRV9MSU1JVFNfSCR7YWNfZEJ9SEFWRV9MSU1JVFNfSCR7YWNfZEN9MSR7YWNfZER9CiR7YWNf
ZEF9SEFWRV9TRVRFTlYke2FjX2RCfUhBVkVfU0VURU5WJHthY19kQ30xJHthY19kRH0KJHthY19k
QX1IQVZFX1VOU0VURU5WJHthY19kQn1IQVZFX1VOU0VURU5WJHthY19kQ30xJHthY19kRH0KJHth
Y19kQX1IQVZFX1NFQVJDSF9IJHthY19kQn1IQVZFX1NFQVJDSF9IJHthY19kQ30xJHthY19kRH0K
JHthY19kQX1IQVZFX1NURExJQl9IJHthY19kQn1IQVZFX1NURExJQl9IJHthY19kQ30xJHthY19k
RH0KJHthY19kQX1IQVZFX1NUUklOR19IJHthY19kQn1IQVZFX1NUUklOR19IJHthY19kQ30xJHth
Y19kRH0KJHthY19kQX1IQVZFX1VOSVNURF9IJHthY19kQn1IQVZFX1VOSVNURF9IJHthY19kQ30x
JHthY19kRH0KJHthY19kQX1IQVZFX1RTRUFSQ0gke2FjX2RCfUhBVkVfVFNFQVJDSCR7YWNfZEN9
MSR7YWNfZER9CiR7YWNfZEF9SEFWRV9FUlJOT19ERUNMJHthY19kQn1IQVZFX0VSUk5PX0RFQ0wk
e2FjX2RDfTEke2FjX2REfQoke2FjX2RBfUhBVkVfU1REQk9PTF9IJHthY19kQn1IQVZFX1NUREJP
T0xfSCR7YWNfZEN9MSR7YWNfZER9CkNFT0YKICBzZWQgLWYgJHRtcC9kZWZpbmVzLnNlZCAkdG1w
L2luID4kdG1wL291dAogIHJtIC1mICR0bXAvaW4KICBtdiAkdG1wL291dCAkdG1wL2luCgogIGNh
dCA+JHRtcC9kZWZpbmVzLnNlZCA8PENFT0YKL15bIAldKiNbIAldKmRlZmluZS8hYgp0IGNscgo6
IGNscgoke2FjX2RBfUhBVkVfU1RSRVJST1Ike2FjX2RCfUhBVkVfU1RSRVJST1Ike2FjX2RDfTEk
e2FjX2REfQoke2FjX2RBfUhBVkVfU1lTX1RZUEVTX0gke2FjX2RCfUhBVkVfU1lTX1RZUEVTX0gk
e2FjX2RDfTEke2FjX2REfQpDRU9GCiAgc2VkIC1mICR0bXAvZGVmaW5lcy5zZWQgJHRtcC9pbiA+
JHRtcC9vdXQKICBybSAtZiAkdG1wL2luCiAgbXYgJHRtcC9vdXQgJHRtcC9pbgoKICBmaSAjIGdy
ZXAKCiAgIyBIYW5kbGUgYWxsIHRoZSAjdW5kZWYgdGVtcGxhdGVzCiAgY2F0ID4kdG1wL3VuZGVm
cy5zZWQgPDxDRU9GCi9eWyAJXSojWyAJXSp1bmRlZi8hYgp0IGNscgo6IGNscgoke2FjX3VBfVBB
Q0tBR0VfTkFNRSR7YWNfdUJ9UEFDS0FHRV9OQU1FJHthY191Q30iIiR7YWNfdUR9CiR7YWNfdUF9
UEFDS0FHRV9UQVJOQU1FJHthY191Qn1QQUNLQUdFX1RBUk5BTUUke2FjX3VDfSIiJHthY191RH0K
JHthY191QX1QQUNLQUdFX1ZFUlNJT04ke2FjX3VCfVBBQ0tBR0VfVkVSU0lPTiR7YWNfdUN9IiIk
e2FjX3VEfQoke2FjX3VBfVBBQ0tBR0VfU1RSSU5HJHthY191Qn1QQUNLQUdFX1NUUklORyR7YWNf
dUN9IiIke2FjX3VEfQoke2FjX3VBfVBBQ0tBR0VfQlVHUkVQT1JUJHthY191Qn1QQUNLQUdFX0JV
R1JFUE9SVCR7YWNfdUN9IiIke2FjX3VEfQoke2FjX3VBfVBBQ0tBR0Uke2FjX3VCfVBBQ0tBR0Uk
e2FjX3VDfSJsaWJpY29udiIke2FjX3VEfQoke2FjX3VBfVZFUlNJT04ke2FjX3VCfVZFUlNJT04k
e2FjX3VDfSIxLjkiJHthY191RH0KJHthY191QX1JTlNUQUxMUFJFRklYJHthY191Qn1JTlNUQUxM
UFJFRklYJHthY191Q30iL3Vzci9sb2NhbCIke2FjX3VEfQoke2FjX3VBfV9HTlVfU09VUkNFJHth
Y191Qn1fR05VX1NPVVJDRSR7YWNfdUN9MSR7YWNfdUR9CiR7YWNfdUF9U1REQ19IRUFERVJTJHth
Y191Qn1TVERDX0hFQURFUlMke2FjX3VDfTEke2FjX3VEfQoke2FjX3VBfUhBVkVfU1lTX1RZUEVT
X0gke2FjX3VCfUhBVkVfU1lTX1RZUEVTX0gke2FjX3VDfTEke2FjX3VEfQoke2FjX3VBfUhBVkVf
U1lTX1NUQVRfSCR7YWNfdUJ9SEFWRV9TWVNfU1RBVF9IJHthY191Q30xJHthY191RH0KJHthY191
QX1IQVZFX1NURExJQl9IJHthY191Qn1IQVZFX1NURExJQl9IJHthY191Q30xJHthY191RH0KJHth
Y191QX1IQVZFX1NUUklOR19IJHthY191Qn1IQVZFX1NUUklOR19IJHthY191Q30xJHthY191RH0K
JHthY191QX1IQVZFX01FTU9SWV9IJHthY191Qn1IQVZFX01FTU9SWV9IJHthY191Q30xJHthY191
RH0KJHthY191QX1IQVZFX1NUUklOR1NfSCR7YWNfdUJ9SEFWRV9TVFJJTkdTX0gke2FjX3VDfTEk
e2FjX3VEfQoke2FjX3VBfUhBVkVfSU5UVFlQRVNfSCR7YWNfdUJ9SEFWRV9JTlRUWVBFU19IJHth
Y191Q30xJHthY191RH0KJHthY191QX1IQVZFX1NURElOVF9IJHthY191Qn1IQVZFX1NURElOVF9I
JHthY191Q30xJHthY191RH0KJHthY191QX1IQVZFX1VOSVNURF9IJHthY191Qn1IQVZFX1VOSVNU
RF9IJHthY191Q30xJHthY191RH0KJHthY191QX1IQVZFX0RMRkNOX0gke2FjX3VCfUhBVkVfRExG
Q05fSCR7YWNfdUN9MSR7YWNfdUR9CiR7YWNfdUF9SEFWRV9JQ09OViR7YWNfdUJ9SEFWRV9JQ09O
ViR7YWNfdUN9MSR7YWNfdUR9CiR7YWNfdUF9SUNPTlZfQ09OU1Qke2FjX3VCfUlDT05WX0NPTlNU
JHthY191Q31jb25zdCR7YWNfdUR9CiR7YWNfdUF9SEFWRV9JQ09OViR7YWNfdUJ9SEFWRV9JQ09O
ViR7YWNfdUN9MSR7YWNfdUR9CiR7YWNfdUF9RU5BQkxFX05MUyR7YWNfdUJ9RU5BQkxFX05MUyR7
YWNfdUN9MSR7YWNfdUR9CiR7YWNfdUF9SEFWRV9HRVRURVhUJHthY191Qn1IQVZFX0dFVFRFWFQk
e2FjX3VDfTEke2FjX3VEfQoke2FjX3VBfUhBVkVfRENHRVRURVhUJHthY191Qn1IQVZFX0RDR0VU
VEVYVCR7YWNfdUN9MSR7YWNfdUR9CiR7YWNfdUF9U1REQ19IRUFERVJTJHthY191Qn1TVERDX0hF
QURFUlMke2FjX3VDfTEke2FjX3VEfQoke2FjX3VBfUhBVkVfTE9DQUxFX0gke2FjX3VCfUhBVkVf
TE9DQUxFX0gke2FjX3VDfTEke2FjX3VEfQoke2FjX3VBfUhBVkVfU1REREVGX0gke2FjX3VCfUhB
VkVfU1REREVGX0gke2FjX3VDfTEke2FjX3VEfQoke2FjX3VBfUhBVkVfU1RETElCX0gke2FjX3VC
fUhBVkVfU1RETElCX0gke2FjX3VDfTEke2FjX3VEfQoke2FjX3VBfUhBVkVfU1RSSU5HX0gke2Fj
X3VCfUhBVkVfU1RSSU5HX0gke2FjX3VDfTEke2FjX3VEfQoke2FjX3VBfUhBVkVfU1RETElCX0gk
e2FjX3VCfUhBVkVfU1RETElCX0gke2FjX3VDfTEke2FjX3VEfQoke2FjX3VBfUhBVkVfR0VUQ19V
TkxPQ0tFRCR7YWNfdUJ9SEFWRV9HRVRDX1VOTE9DS0VEJHthY191Q30xJHthY191RH0KJHthY191
QX1IQVZFX01CUlRPV0Mke2FjX3VCfUhBVkVfTUJSVE9XQyR7YWNfdUN9MSR7YWNfdUR9CiR7YWNf
dUF9SEFWRV9XQ1JUT01CJHthY191Qn1IQVZFX1dDUlRPTUIke2FjX3VDfTEke2FjX3VEfQoke2Fj
X3VBfUhBVkVfTUJTSU5JVCR7YWNfdUJ9SEFWRV9NQlNJTklUJHthY191Q30xJHthY191RH0KJHth
Y191QX1IQVZFX1NFVExPQ0FMRSR7YWNfdUJ9SEFWRV9TRVRMT0NBTEUke2FjX3VDfTEke2FjX3VE
fQoke2FjX3VBfUhBVkVfTUVNTU9WRSR7YWNfdUJ9SEFWRV9NRU1NT1ZFJHthY191Q30xJHthY191
RH0KQ0VPRgogIHNlZCAtZiAkdG1wL3VuZGVmcy5zZWQgJHRtcC9pbiA+JHRtcC9vdXQKICBybSAt
ZiAkdG1wL2luCiAgbXYgJHRtcC9vdXQgJHRtcC9pbgoKICBjYXQgPiR0bXAvdW5kZWZzLnNlZCA8
PENFT0YKL15bIAldKiNbIAldKnVuZGVmLyFiCnQgY2xyCjogY2xyCiR7YWNfdUF9SEFWRV9MQU5H
SU5GT19DT0RFU0VUJHthY191Qn1IQVZFX0xBTkdJTkZPX0NPREVTRVQke2FjX3VDfTEke2FjX3VE
fQoke2FjX3VBfUhBVkVfV0NIQVJfSCR7YWNfdUJ9SEFWRV9XQ0hBUl9IJHthY191Q30xJHthY191
RH0KJHthY191QX1XT1JEU19MSVRUTEVFTkRJQU4ke2FjX3VCfVdPUkRTX0xJVFRMRUVORElBTiR7
YWNfdUN9MSR7YWNfdUR9CiR7YWNfdUF9SEFWRV9BTExPQ0Eke2FjX3VCfUhBVkVfQUxMT0NBJHth
Y191Q30xJHthY191RH0KJHthY191QX1IQVZFX1NURExJQl9IJHthY191Qn1IQVZFX1NURExJQl9I
JHthY191Q30xJHthY191RH0KJHthY191QX1IQVZFX1NUUklOR19IJHthY191Qn1IQVZFX1NUUklO
R19IJHthY191Q30xJHthY191RH0KJHthY191QX1IQVZFX1NZU19QQVJBTV9IJHthY191Qn1IQVZF
X1NZU19QQVJBTV9IJHthY191Q30xJHthY191RH0KJHthY191QX1IQVZFX1VOSVNURF9IJHthY191
Qn1IQVZFX1VOSVNURF9IJHthY191Q30xJHthY191RH0KJHthY191QX1yZWFscGF0aCR7YWNfdUJ9
cmVhbHBhdGgke2FjX3VDfXJwbF9yZWFscGF0aCR7YWNfdUR9CiR7YWNfdUF9SEFWRV9HRVRDV0Qk
e2FjX3VCfUhBVkVfR0VUQ1dEJHthY191Q30xJHthY191RH0KJHthY191QX1IQVZFX0RFQ0xfQ0xF
QVJFUlJfVU5MT0NLRUQke2FjX3VCfUhBVkVfREVDTF9DTEVBUkVSUl9VTkxPQ0tFRCR7YWNfdUN9
MSR7YWNfdUR9CiR7YWNfdUF9SEFWRV9ERUNMX0ZFT0ZfVU5MT0NLRUQke2FjX3VCfUhBVkVfREVD
TF9GRU9GX1VOTE9DS0VEJHthY191Q30xJHthY191RH0KJHthY191QX1IQVZFX0RFQ0xfRkVSUk9S
X1VOTE9DS0VEJHthY191Qn1IQVZFX0RFQ0xfRkVSUk9SX1VOTE9DS0VEJHthY191Q30xJHthY191
RH0KJHthY191QX1IQVZFX0RFQ0xfRkZMVVNIX1VOTE9DS0VEJHthY191Qn1IQVZFX0RFQ0xfRkZM
VVNIX1VOTE9DS0VEJHthY191Q30wJHthY191RH0KJHthY191QX1IQVZFX0RFQ0xfRkdFVFNfVU5M
T0NLRUQke2FjX3VCfUhBVkVfREVDTF9GR0VUU19VTkxPQ0tFRCR7YWNfdUN9MCR7YWNfdUR9CiR7
YWNfdUF9SEFWRV9ERUNMX0ZQVVRDX1VOTE9DS0VEJHthY191Qn1IQVZFX0RFQ0xfRlBVVENfVU5M
T0NLRUQke2FjX3VDfTAke2FjX3VEfQoke2FjX3VBfUhBVkVfREVDTF9GUFVUU19VTkxPQ0tFRCR7
YWNfdUJ9SEFWRV9ERUNMX0ZQVVRTX1VOTE9DS0VEJHthY191Q30wJHthY191RH0KJHthY191QX1I
QVZFX0RFQ0xfRlJFQURfVU5MT0NLRUQke2FjX3VCfUhBVkVfREVDTF9GUkVBRF9VTkxPQ0tFRCR7
YWNfdUN9MCR7YWNfdUR9CiR7YWNfdUF9SEFWRV9ERUNMX0ZXUklURV9VTkxPQ0tFRCR7YWNfdUJ9
SEFWRV9ERUNMX0ZXUklURV9VTkxPQ0tFRCR7YWNfdUN9MCR7YWNfdUR9CiR7YWNfdUF9SEFWRV9E
RUNMX0dFVENfVU5MT0NLRUQke2FjX3VCfUhBVkVfREVDTF9HRVRDX1VOTE9DS0VEJHthY191Q30x
JHthY191RH0KJHthY191QX1IQVZFX0RFQ0xfR0VUQ0hBUl9VTkxPQ0tFRCR7YWNfdUJ9SEFWRV9E
RUNMX0dFVENIQVJfVU5MT0NLRUQke2FjX3VDfTEke2FjX3VEfQoke2FjX3VBfUhBVkVfREVDTF9Q
VVRDX1VOTE9DS0VEJHthY191Qn1IQVZFX0RFQ0xfUFVUQ19VTkxPQ0tFRCR7YWNfdUN9MSR7YWNf
dUR9CiR7YWNfdUF9SEFWRV9ERUNMX1BVVENIQVJfVU5MT0NLRUQke2FjX3VCfUhBVkVfREVDTF9Q
VVRDSEFSX1VOTE9DS0VEJHthY191Q30xJHthY191RH0KJHthY191QX1IQVZFX1ZQUklOVEYke2Fj
X3VCfUhBVkVfVlBSSU5URiR7YWNfdUN9MSR7YWNfdUR9CiR7YWNfdUF9SEFWRV9TVFJFUlJPUiR7
YWNfdUJ9SEFWRV9TVFJFUlJPUiR7YWNfdUN9MSR7YWNfdUR9CiR7YWNfdUF9SEFWRV9ERUNMX1NU
UkVSUk9SJHthY191Qn1IQVZFX0RFQ0xfU1RSRVJST1Ike2FjX3VDfTEke2FjX3VEfQoke2FjX3VB
fUhBVkVfREVDTF9TVFJFUlJPUl9SJHthY191Qn1IQVZFX0RFQ0xfU1RSRVJST1JfUiR7YWNfdUN9
MSR7YWNfdUR9CiR7YWNfdUF9SEFWRV9TVFJFUlJPUl9SJHthY191Qn1IQVZFX1NUUkVSUk9SX1Ik
e2FjX3VDfTEke2FjX3VEfQoke2FjX3VBfUhBVkVfTElNSVRTX0gke2FjX3VCfUhBVkVfTElNSVRT
X0gke2FjX3VDfTEke2FjX3VEfQoke2FjX3VBfUhBVkVfU0VURU5WJHthY191Qn1IQVZFX1NFVEVO
ViR7YWNfdUN9MSR7YWNfdUR9CiR7YWNfdUF9SEFWRV9VTlNFVEVOViR7YWNfdUJ9SEFWRV9VTlNF
VEVOViR7YWNfdUN9MSR7YWNfdUR9CiR7YWNfdUF9SEFWRV9TRUFSQ0hfSCR7YWNfdUJ9SEFWRV9T
RUFSQ0hfSCR7YWNfdUN9MSR7YWNfdUR9CiR7YWNfdUF9SEFWRV9TVERMSUJfSCR7YWNfdUJ9SEFW
RV9TVERMSUJfSCR7YWNfdUN9MSR7YWNfdUR9CiR7YWNfdUF9SEFWRV9TVFJJTkdfSCR7YWNfdUJ9
SEFWRV9TVFJJTkdfSCR7YWNfdUN9MSR7YWNfdUR9CiR7YWNfdUF9SEFWRV9VTklTVERfSCR7YWNf
dUJ9SEFWRV9VTklTVERfSCR7YWNfdUN9MSR7YWNfdUR9CiR7YWNfdUF9SEFWRV9UU0VBUkNIJHth
Y191Qn1IQVZFX1RTRUFSQ0gke2FjX3VDfTEke2FjX3VEfQoke2FjX3VBfUhBVkVfRVJSTk9fREVD
TCR7YWNfdUJ9SEFWRV9FUlJOT19ERUNMJHthY191Q30xJHthY191RH0KJHthY191QX1IQVZFX1NU
REJPT0xfSCR7YWNfdUJ9SEFWRV9TVERCT09MX0gke2FjX3VDfTEke2FjX3VEfQpDRU9GCiAgc2Vk
IC1mICR0bXAvdW5kZWZzLnNlZCAkdG1wL2luID4kdG1wL291dAogIHJtIC1mICR0bXAvaW4KICBt
diAkdG1wL291dCAkdG1wL2luCgogIGNhdCA+JHRtcC91bmRlZnMuc2VkIDw8Q0VPRgovXlsgCV0q
I1sgCV0qdW5kZWYvIWIKdCBjbHIKOiBjbHIKJHthY191QX1IQVZFX1NUUkVSUk9SJHthY191Qn1I
QVZFX1NUUkVSUk9SJHthY191Q30xJHthY191RH0KJHthY191QX1IQVZFX1NZU19UWVBFU19IJHth
Y191Qn1IQVZFX1NZU19UWVBFU19IJHthY191Q30xJHthY191RH0KcyxeWyAJXSojWyAJXSp1bmRl
ZlsgCV1bIAldKlthLXpBLVpfXVthLXpBLVpfMC05XSosLyogJiAqLywKQ0VPRgogIHNlZCAtZiAk
dG1wL3VuZGVmcy5zZWQgJHRtcC9pbiA+JHRtcC9vdXQKICBybSAtZiAkdG1wL2luCiAgbXYgJHRt
cC9vdXQgJHRtcC9pbgoKICAjIExldCdzIHN0aWxsIHByZXRlbmQgaXQgaXMgYGNvbmZpZ3VyZScg
d2hpY2ggaW5zdGFudGlhdGVzIChpLmUuLCBkb24ndAogICMgdXNlICRhc19tZSksIHBlb3BsZSB3
b3VsZCBiZSBzdXJwcmlzZWQgdG8gcmVhZDoKICAjICAgIC8qIGNvbmZpZy5oLiAgR2VuZXJhdGVk
IGJ5IGNvbmZpZy5zdGF0dXMuICAqLwogIGlmIHRlc3QgeCIkYWNfZmlsZSIgPSB4LTsgdGhlbgog
ICAgZWNobyAiLyogR2VuZXJhdGVkIGJ5IGNvbmZpZ3VyZS4gICovIiA+JHRtcC9jb25maWcuaAog
IGVsc2UKICAgIGVjaG8gIi8qICRhY19maWxlLiAgR2VuZXJhdGVkIGJ5IGNvbmZpZ3VyZS4gICov
IiA+JHRtcC9jb25maWcuaAogIGZpCiAgY2F0ICR0bXAvaW4gPj4kdG1wL2NvbmZpZy5oCiAgcm0g
LWYgJHRtcC9pbgogIGlmIHRlc3QgeCIkYWNfZmlsZSIgIT0geC07IHRoZW4KICAgIGlmIGRpZmYg
JGFjX2ZpbGUgJHRtcC9jb25maWcuaCA+L2Rldi9udWxsIDI+JjE7IHRoZW4KICAgICAgeyBlY2hv
ICIkYXNfbWU6JExJTkVOTzogJGFjX2ZpbGUgaXMgdW5jaGFuZ2VkIiA+JjUKZWNobyAiJGFzX21l
OiAkYWNfZmlsZSBpcyB1bmNoYW5nZWQiID4mNjt9CiAgICBlbHNlCiAgICAgIGFjX2Rpcj1gKGRp
cm5hbWUgIiRhY19maWxlIikgMj4vZGV2L251bGwgfHwKJGFzX2V4cHIgWCIkYWNfZmlsZSIgOiAn
WFwoLipbXi9dXCkvLypbXi9dW14vXSovKiQnIFx8IFwKICAgICAgICAgWCIkYWNfZmlsZSIgOiAn
WFwoLy9cKVteL10nIFx8IFwKICAgICAgICAgWCIkYWNfZmlsZSIgOiAnWFwoLy9cKSQnIFx8IFwK
ICAgICAgICAgWCIkYWNfZmlsZSIgOiAnWFwoL1wpJyBcfCBcCiAgICAgICAgIC4gICAgIDogJ1wo
LlwpJyAyPi9kZXYvbnVsbCB8fAplY2hvIFgiJGFjX2ZpbGUiIHwKICAgIHNlZCAnL15YXCguKlte
L11cKVwvXC8qW14vXVteL10qXC8qJC97IHMvL1wxLzsgcTsgfQogIAkgIC9eWFwoXC9cL1wpW14v
XS4qL3sgcy8vXDEvOyBxOyB9CiAgCSAgL15YXChcL1wvXCkkL3sgcy8vXDEvOyBxOyB9CiAgCSAg
L15YXChcL1wpLioveyBzLy9cMS87IHE7IH0KICAJICBzLy4qLy4vOyBxJ2AKICAgICAgeyBpZiAk
YXNfbWtkaXJfcDsgdGhlbgogICAgbWtkaXIgLXAgIiRhY19kaXIiCiAgZWxzZQogICAgYXNfZGly
PSIkYWNfZGlyIgogICAgYXNfZGlycz0KICAgIHdoaWxlIHRlc3QgISAtZCAiJGFzX2RpciI7IGRv
CiAgICAgIGFzX2RpcnM9IiRhc19kaXIgJGFzX2RpcnMiCiAgICAgIGFzX2Rpcj1gKGRpcm5hbWUg
IiRhc19kaXIiKSAyPi9kZXYvbnVsbCB8fAokYXNfZXhwciBYIiRhc19kaXIiIDogJ1hcKC4qW14v
XVwpLy8qW14vXVteL10qLyokJyBcfCBcCiAgICAgICAgIFgiJGFzX2RpciIgOiAnWFwoLy9cKVte
L10nIFx8IFwKICAgICAgICAgWCIkYXNfZGlyIiA6ICdYXCgvL1wpJCcgXHwgXAogICAgICAgICBY
IiRhc19kaXIiIDogJ1hcKC9cKScgXHwgXAogICAgICAgICAuICAgICA6ICdcKC5cKScgMj4vZGV2
L251bGwgfHwKZWNobyBYIiRhc19kaXIiIHwKICAgIHNlZCAnL15YXCguKlteL11cKVwvXC8qW14v
XVteL10qXC8qJC97IHMvL1wxLzsgcTsgfQogIAkgIC9eWFwoXC9cL1wpW14vXS4qL3sgcy8vXDEv
OyBxOyB9CiAgCSAgL15YXChcL1wvXCkkL3sgcy8vXDEvOyBxOyB9CiAgCSAgL15YXChcL1wpLiov
eyBzLy9cMS87IHE7IH0KICAJICBzLy4qLy4vOyBxJ2AKICAgIGRvbmUKICAgIHRlc3QgISAtbiAi
JGFzX2RpcnMiIHx8IG1rZGlyICRhc19kaXJzCiAgZmkgfHwgeyB7IGVjaG8gIiRhc19tZTokTElO
RU5POiBlcnJvcjogY2Fubm90IGNyZWF0ZSBkaXJlY3RvcnkgXCIkYWNfZGlyXCIiID4mNQplY2hv
ICIkYXNfbWU6IGVycm9yOiBjYW5ub3QgY3JlYXRlIGRpcmVjdG9yeSBcIiRhY19kaXJcIiIgPiYy
O30KICAgeyAoZXhpdCAxKTsgZXhpdCAxOyB9OyB9OyB9CgogICAgICBybSAtZiAkYWNfZmlsZQog
ICAgICBtdiAkdG1wL2NvbmZpZy5oICRhY19maWxlCiAgICBmaQogIGVsc2UKICAgIGNhdCAkdG1w
L2NvbmZpZy5oCiAgICBybSAtZiAkdG1wL2NvbmZpZy5oCiAgZmkKIyBDb21wdXRlICRhY19maWxl
J3MgaW5kZXggaW4gJGNvbmZpZ19oZWFkZXJzLgpfYW1fc3RhbXBfY291bnQ9MQpmb3IgX2FtX2hl
YWRlciBpbiAkY29uZmlnX2hlYWRlcnMgOjsgZG8KICBjYXNlICRfYW1faGVhZGVyIGluCiAgICAk
YWNfZmlsZSB8ICRhY19maWxlOiogKQogICAgICBicmVhayA7OwogICAgKiApCiAgICAgIF9hbV9z
dGFtcF9jb3VudD1gZXhwciAkX2FtX3N0YW1wX2NvdW50ICsgMWAgOzsKICBlc2FjCmRvbmUKZWNo
byAidGltZXN0YW1wIGZvciAkYWNfZmlsZSIgPmAoZGlybmFtZSAkYWNfZmlsZSkgMj4vZGV2L251
bGwgfHwKJGFzX2V4cHIgWCRhY19maWxlIDogJ1hcKC4qW14vXVwpLy8qW14vXVteL10qLyokJyBc
fCBcCiAgICAgICAgIFgkYWNfZmlsZSA6ICdYXCgvL1wpW14vXScgXHwgXAogICAgICAgICBYJGFj
X2ZpbGUgOiAnWFwoLy9cKSQnIFx8IFwKICAgICAgICAgWCRhY19maWxlIDogJ1hcKC9cKScgXHwg
XAogICAgICAgICAuICAgICA6ICdcKC5cKScgMj4vZGV2L251bGwgfHwKZWNobyBYJGFjX2ZpbGUg
fAogICAgc2VkICcvXlhcKC4qW14vXVwpXC9cLypbXi9dW14vXSpcLyokL3sgcy8vXDEvOyBxOyB9
CiAgCSAgL15YXChcL1wvXClbXi9dLioveyBzLy9cMS87IHE7IH0KICAJICAvXlhcKFwvXC9cKSQv
eyBzLy9cMS87IHE7IH0KICAJICAvXlhcKFwvXCkuKi97IHMvL1wxLzsgcTsgfQogIAkgIHMvLiov
Li87IHEnYC9zdGFtcC1oJF9hbV9zdGFtcF9jb3VudApkb25lCgojCiMgQ09ORklHX0NPTU1BTkRT
IHNlY3Rpb24uCiMKZm9yIGFjX2ZpbGUgaW4gOiAkQ09ORklHX0NPTU1BTkRTOyBkbyB0ZXN0ICJ4
JGFjX2ZpbGUiID0geDogJiYgY29udGludWUKICBhY19kZXN0PWBlY2hvICIkYWNfZmlsZSIgfCBz
ZWQgJ3MsOi4qLCwnYAogIGFjX3NvdXJjZT1gZWNobyAiJGFjX2ZpbGUiIHwgc2VkICdzLFteOl0q
OiwsJ2AKICBhY19kaXI9YChkaXJuYW1lICIkYWNfZGVzdCIpIDI+L2Rldi9udWxsIHx8CiRhc19l
eHByIFgiJGFjX2Rlc3QiIDogJ1hcKC4qW14vXVwpLy8qW14vXVteL10qLyokJyBcfCBcCiAgICAg
ICAgIFgiJGFjX2Rlc3QiIDogJ1hcKC8vXClbXi9dJyBcfCBcCiAgICAgICAgIFgiJGFjX2Rlc3Qi
IDogJ1hcKC8vXCkkJyBcfCBcCiAgICAgICAgIFgiJGFjX2Rlc3QiIDogJ1hcKC9cKScgXHwgXAog
ICAgICAgICAuICAgICA6ICdcKC5cKScgMj4vZGV2L251bGwgfHwKZWNobyBYIiRhY19kZXN0IiB8
CiAgICBzZWQgJy9eWFwoLipbXi9dXClcL1wvKlteL11bXi9dKlwvKiQveyBzLy9cMS87IHE7IH0K
ICAJICAvXlhcKFwvXC9cKVteL10uKi97IHMvL1wxLzsgcTsgfQogIAkgIC9eWFwoXC9cL1wpJC97
IHMvL1wxLzsgcTsgfQogIAkgIC9eWFwoXC9cKS4qL3sgcy8vXDEvOyBxOyB9CiAgCSAgcy8uKi8u
LzsgcSdgCiAgYWNfYnVpbGRkaXI9LgoKaWYgdGVzdCAiJGFjX2RpciIgIT0gLjsgdGhlbgogIGFj
X2Rpcl9zdWZmaXg9L2BlY2hvICIkYWNfZGlyIiB8IHNlZCAncyxeXC5bXFwvXSwsJ2AKICAjIEEg
Ii4uLyIgZm9yIGVhY2ggZGlyZWN0b3J5IGluICRhY19kaXJfc3VmZml4LgogIGFjX3RvcF9idWls
ZGRpcj1gZWNobyAiJGFjX2Rpcl9zdWZmaXgiIHwgc2VkICdzLC9bXlxcL10qLC4uLyxnJ2AKZWxz
ZQogIGFjX2Rpcl9zdWZmaXg9IGFjX3RvcF9idWlsZGRpcj0KZmkKCmNhc2UgJHNyY2RpciBpbgog
IC4pICAjIE5vIC0tc3JjZGlyIG9wdGlvbi4gIFdlIGFyZSBidWlsZGluZyBpbiBwbGFjZS4KICAg
IGFjX3NyY2Rpcj0uCiAgICBpZiB0ZXN0IC16ICIkYWNfdG9wX2J1aWxkZGlyIjsgdGhlbgogICAg
ICAgYWNfdG9wX3NyY2Rpcj0uCiAgICBlbHNlCiAgICAgICBhY190b3Bfc3JjZGlyPWBlY2hvICRh
Y190b3BfYnVpbGRkaXIgfCBzZWQgJ3MsLyQsLCdgCiAgICBmaSA7OwogIFtcXC9dKiB8ID86W1xc
L10qICkgICMgQWJzb2x1dGUgcGF0aC4KICAgIGFjX3NyY2Rpcj0kc3JjZGlyJGFjX2Rpcl9zdWZm
aXg7CiAgICBhY190b3Bfc3JjZGlyPSRzcmNkaXIgOzsKICAqKSAjIFJlbGF0aXZlIHBhdGguCiAg
ICBhY19zcmNkaXI9JGFjX3RvcF9idWlsZGRpciRzcmNkaXIkYWNfZGlyX3N1ZmZpeAogICAgYWNf
dG9wX3NyY2Rpcj0kYWNfdG9wX2J1aWxkZGlyJHNyY2RpciA7Owplc2FjCiMgRG9uJ3QgYmxpbmRs
eSBwZXJmb3JtIGEgYGNkICIkYWNfZGlyIi8kYWNfZm9vICYmIHB3ZGAgc2luY2UgJGFjX2ZvbyBj
YW4gYmUKIyBhYnNvbHV0ZS4KYWNfYWJzX2J1aWxkZGlyPWBjZCAiJGFjX2RpciIgJiYgY2QgJGFj
X2J1aWxkZGlyICYmIHB3ZGAKYWNfYWJzX3RvcF9idWlsZGRpcj1gY2QgIiRhY19kaXIiICYmIGNk
ICR7YWNfdG9wX2J1aWxkZGlyfS4gJiYgcHdkYAphY19hYnNfc3JjZGlyPWBjZCAiJGFjX2RpciIg
JiYgY2QgJGFjX3NyY2RpciAmJiBwd2RgCmFjX2Fic190b3Bfc3JjZGlyPWBjZCAiJGFjX2RpciIg
JiYgY2QgJGFjX3RvcF9zcmNkaXIgJiYgcHdkYAoKCiAgeyBlY2hvICIkYXNfbWU6JExJTkVOTzog
ZXhlY3V0aW5nICRhY19kZXN0IGNvbW1hbmRzIiA+JjUKZWNobyAiJGFzX21lOiBleGVjdXRpbmcg
JGFjX2Rlc3QgY29tbWFuZHMiID4mNjt9CiAgY2FzZSAkYWNfZGVzdCBpbgogICAgZGVwZmlsZXMg
KSB0ZXN0IHgiJEFNREVQX1RSVUUiICE9IHgiIiB8fCBmb3IgbWYgaW4gJENPTkZJR19GSUxFUzsg
ZG8KICAjIFN0cmlwIE1GIHNvIHdlIGVuZCB1cCB3aXRoIHRoZSBuYW1lIG9mIHRoZSBmaWxlLgog
IG1mPWBlY2hvICIkbWYiIHwgc2VkIC1lICdzLzouKiQvLydgCiAgIyBDaGVjayB3aGV0aGVyIHRo
aXMgaXMgYW4gQXV0b21ha2UgZ2VuZXJhdGVkIE1ha2VmaWxlIG9yIG5vdC4KICAjIFdlIHVzZWQg
dG8gbWF0Y2ggb25seSB0aGUgZmlsZXMgbmFtZWQgYE1ha2VmaWxlLmluJywgYnV0CiAgIyBzb21l
IHBlb3BsZSByZW5hbWUgdGhlbTsgc28gaW5zdGVhZCB3ZSBsb29rIGF0IHRoZSBmaWxlIGNvbnRl
bnQuCiAgIyBHcmVwJ2luZyB0aGUgZmlyc3QgbGluZSBpcyBub3QgZW5vdWdoOiBzb21lIHBlb3Bs
ZSBwb3N0LXByb2Nlc3MKICAjIGVhY2ggTWFrZWZpbGUuaW4gYW5kIGFkZCBhIG5ldyBsaW5lIG9u
IHRvcCBvZiBlYWNoIGZpbGUgdG8gc2F5IHNvLgogICMgU28gbGV0J3MgZ3JlcCB3aG9sZSBmaWxl
LgogIGlmIGdyZXAgJ14jLipnZW5lcmF0ZWQgYnkgYXV0b21ha2UnICRtZiA+IC9kZXYvbnVsbCAy
PiYxOyB0aGVuCiAgICBkaXJwYXJ0PWAoZGlybmFtZSAiJG1mIikgMj4vZGV2L251bGwgfHwKJGFz
X2V4cHIgWCIkbWYiIDogJ1hcKC4qW14vXVwpLy8qW14vXVteL10qLyokJyBcfCBcCiAgICAgICAg
IFgiJG1mIiA6ICdYXCgvL1wpW14vXScgXHwgXAogICAgICAgICBYIiRtZiIgOiAnWFwoLy9cKSQn
IFx8IFwKICAgICAgICAgWCIkbWYiIDogJ1hcKC9cKScgXHwgXAogICAgICAgICAuICAgICA6ICdc
KC5cKScgMj4vZGV2L251bGwgfHwKZWNobyBYIiRtZiIgfAogICAgc2VkICcvXlhcKC4qW14vXVwp
XC9cLypbXi9dW14vXSpcLyokL3sgcy8vXDEvOyBxOyB9CiAgCSAgL15YXChcL1wvXClbXi9dLiov
eyBzLy9cMS87IHE7IH0KICAJICAvXlhcKFwvXC9cKSQveyBzLy9cMS87IHE7IH0KICAJICAvXlhc
KFwvXCkuKi97IHMvL1wxLzsgcTsgfQogIAkgIHMvLiovLi87IHEnYAogIGVsc2UKICAgIGNvbnRp
bnVlCiAgZmkKICBncmVwICdeREVQX0ZJTEVTICo9ICpbXiAjXScgPCAiJG1mIiA+IC9kZXYvbnVs
bCB8fCBjb250aW51ZQogICMgRXh0cmFjdCB0aGUgZGVmaW5pdGlvbiBvZiBERVBfRklMRVMgZnJv
bSB0aGUgTWFrZWZpbGUgd2l0aG91dAogICMgcnVubmluZyBgbWFrZScuCiAgREVQRElSPWBzZWQg
LW4gLWUgJy9eREVQRElSID0gLyBzLy8vcCcgPCAiJG1mImAKICB0ZXN0IC16ICIkREVQRElSIiAm
JiBjb250aW51ZQogICMgV2hlbiB1c2luZyBhbnNpMmtuciwgVSBtYXkgYmUgZW1wdHkgb3IgYW4g
dW5kZXJzY29yZTsgZXhwYW5kIGl0CiAgVT1gc2VkIC1uIC1lICcvXlUgPSAvIHMvLy9wJyA8ICIk
bWYiYAogIHRlc3QgLWQgIiRkaXJwYXJ0LyRERVBESVIiIHx8IG1rZGlyICIkZGlycGFydC8kREVQ
RElSIgogICMgV2UgaW52b2tlIHNlZCB0d2ljZSBiZWNhdXNlIGl0IGlzIHRoZSBzaW1wbGVzdCBh
cHByb2FjaCB0bwogICMgY2hhbmdpbmcgJChERVBESVIpIHRvIGl0cyBhY3R1YWwgdmFsdWUgaW4g
dGhlIGV4cGFuc2lvbi4KICBmb3IgZmlsZSBpbiBgc2VkIC1uIC1lICcKICAgIC9eREVQX0ZJTEVT
ID0gLipcXFxcJC8gewogICAgICBzL15ERVBfRklMRVMgPSAvLwogICAgICA6bG9vcAoJcy9cXFxc
JC8vCglwCgluCgkvXFxcXCQvIGIgbG9vcAogICAgICBwCiAgICB9CiAgICAvXkRFUF9GSUxFUyA9
IC8gcy9eREVQX0ZJTEVTID0gLy9wJyA8ICIkbWYiIHwgXAogICAgICAgc2VkIC1lICdzL1wkKERF
UERJUikvJyIkREVQRElSIicvZycgLWUgJ3MvXCRVLyciJFUiJy9nJ2A7IGRvCiAgICAjIE1ha2Ug
c3VyZSB0aGUgZGlyZWN0b3J5IGV4aXN0cy4KICAgIHRlc3QgLWYgIiRkaXJwYXJ0LyRmaWxlIiAm
JiBjb250aW51ZQogICAgZmRpcj1gKGRpcm5hbWUgIiRmaWxlIikgMj4vZGV2L251bGwgfHwKJGFz
X2V4cHIgWCIkZmlsZSIgOiAnWFwoLipbXi9dXCkvLypbXi9dW14vXSovKiQnIFx8IFwKICAgICAg
ICAgWCIkZmlsZSIgOiAnWFwoLy9cKVteL10nIFx8IFwKICAgICAgICAgWCIkZmlsZSIgOiAnWFwo
Ly9cKSQnIFx8IFwKICAgICAgICAgWCIkZmlsZSIgOiAnWFwoL1wpJyBcfCBcCiAgICAgICAgIC4g
ICAgIDogJ1woLlwpJyAyPi9kZXYvbnVsbCB8fAplY2hvIFgiJGZpbGUiIHwKICAgIHNlZCAnL15Y
XCguKlteL11cKVwvXC8qW14vXVteL10qXC8qJC97IHMvL1wxLzsgcTsgfQogIAkgIC9eWFwoXC9c
L1wpW14vXS4qL3sgcy8vXDEvOyBxOyB9CiAgCSAgL15YXChcL1wvXCkkL3sgcy8vXDEvOyBxOyB9
CiAgCSAgL15YXChcL1wpLioveyBzLy9cMS87IHE7IH0KICAJICBzLy4qLy4vOyBxJ2AKICAgIHsg
aWYgJGFzX21rZGlyX3A7IHRoZW4KICAgIG1rZGlyIC1wICRkaXJwYXJ0LyRmZGlyCiAgZWxzZQog
ICAgYXNfZGlyPSRkaXJwYXJ0LyRmZGlyCiAgICBhc19kaXJzPQogICAgd2hpbGUgdGVzdCAhIC1k
ICIkYXNfZGlyIjsgZG8KICAgICAgYXNfZGlycz0iJGFzX2RpciAkYXNfZGlycyIKICAgICAgYXNf
ZGlyPWAoZGlybmFtZSAiJGFzX2RpciIpIDI+L2Rldi9udWxsIHx8CiRhc19leHByIFgiJGFzX2Rp
ciIgOiAnWFwoLipbXi9dXCkvLypbXi9dW14vXSovKiQnIFx8IFwKICAgICAgICAgWCIkYXNfZGly
IiA6ICdYXCgvL1wpW14vXScgXHwgXAogICAgICAgICBYIiRhc19kaXIiIDogJ1hcKC8vXCkkJyBc
fCBcCiAgICAgICAgIFgiJGFzX2RpciIgOiAnWFwoL1wpJyBcfCBcCiAgICAgICAgIC4gICAgIDog
J1woLlwpJyAyPi9kZXYvbnVsbCB8fAplY2hvIFgiJGFzX2RpciIgfAogICAgc2VkICcvXlhcKC4q
W14vXVwpXC9cLypbXi9dW14vXSpcLyokL3sgcy8vXDEvOyBxOyB9CiAgCSAgL15YXChcL1wvXClb
Xi9dLioveyBzLy9cMS87IHE7IH0KICAJICAvXlhcKFwvXC9cKSQveyBzLy9cMS87IHE7IH0KICAJ
ICAvXlhcKFwvXCkuKi97IHMvL1wxLzsgcTsgfQogIAkgIHMvLiovLi87IHEnYAogICAgZG9uZQog
ICAgdGVzdCAhIC1uICIkYXNfZGlycyIgfHwgbWtkaXIgJGFzX2RpcnMKICBmaSB8fCB7IHsgZWNo
byAiJGFzX21lOiRMSU5FTk86IGVycm9yOiBjYW5ub3QgY3JlYXRlIGRpcmVjdG9yeSAkZGlycGFy
dC8kZmRpciIgPiY1CmVjaG8gIiRhc19tZTogZXJyb3I6IGNhbm5vdCBjcmVhdGUgZGlyZWN0b3J5
ICRkaXJwYXJ0LyRmZGlyIiA+JjI7fQogICB7IChleGl0IDEpOyBleGl0IDE7IH07IH07IH0KCiAg
ICAjIGVjaG8gImNyZWF0aW5nICRkaXJwYXJ0LyRmaWxlIgogICAgZWNobyAnIyBkdW1teScgPiAi
JGRpcnBhcnQvJGZpbGUiCiAgZG9uZQpkb25lCiA7OwogICAgZGVmYXVsdC0xICkKICAgIGZvciBh
Y19maWxlIGluICRDT05GSUdfRklMRVM7IGRvCiAgICAgICMgU3VwcG9ydCAib3V0ZmlsZVs6aW5m
aWxlWzppbmZpbGUuLi5dXSIKICAgICAgY2FzZSAiJGFjX2ZpbGUiIGluCiAgICAgICAgKjoqKSBh
Y19maWxlPWBlY2hvICIkYWNfZmlsZSJ8c2VkICdzJTouKiUlJ2AgOzsKICAgICAgZXNhYwogICAg
ICAjIFBPIGRpcmVjdG9yaWVzIGhhdmUgYSBNYWtlZmlsZS5pbiBnZW5lcmF0ZWQgZnJvbSBNYWtl
ZmlsZS5pbi5pbi4KICAgICAgY2FzZSAiJGFjX2ZpbGUiIGluICovTWFrZWZpbGUuaW4pCiAgICAg
ICAgIyBBZGp1c3QgYSByZWxhdGl2ZSBzcmNkaXIuCiAgICAgICAgYWNfZGlyPWBlY2hvICIkYWNf
ZmlsZSJ8c2VkICdzJS9bXi9dW14vXSokJSUnYAogICAgICAgIGFjX2Rpcl9zdWZmaXg9Ii9gZWNo
byAiJGFjX2RpciJ8c2VkICdzJV5cLi8lJSdgIgogICAgICAgIGFjX2RvdHM9YGVjaG8gIiRhY19k
aXJfc3VmZml4InxzZWQgJ3MlL1teL10qJS4uLyVnJ2AKICAgICAgICAjIEluIGF1dG9jb25mLTIu
MTMgaXQgaXMgY2FsbGVkICRhY19naXZlbl9zcmNkaXIuCiAgICAgICAgIyBJbiBhdXRvY29uZi0y
LjUwIGl0IGlzIGNhbGxlZCAkc3JjZGlyLgogICAgICAgIHRlc3QgLW4gIiRhY19naXZlbl9zcmNk
aXIiIHx8IGFjX2dpdmVuX3NyY2Rpcj0iJHNyY2RpciIKICAgICAgICBjYXNlICIkYWNfZ2l2ZW5f
c3JjZGlyIiBpbgogICAgICAgICAgLikgIHRvcF9zcmNkaXI9YGVjaG8gJGFjX2RvdHN8c2VkICdz
JS8kJSUnYCA7OwogICAgICAgICAgLyopIHRvcF9zcmNkaXI9IiRhY19naXZlbl9zcmNkaXIiIDs7
CiAgICAgICAgICAqKSAgdG9wX3NyY2Rpcj0iJGFjX2RvdHMkYWNfZ2l2ZW5fc3JjZGlyIiA7Owog
ICAgICAgIGVzYWMKICAgICAgICBpZiB0ZXN0IC1mICIkYWNfZ2l2ZW5fc3JjZGlyLyRhY19kaXIv
UE9URklMRVMuaW4iOyB0aGVuCiAgICAgICAgICBybSAtZiAiJGFjX2Rpci9QT1RGSUxFUyIKICAg
ICAgICAgIHRlc3QgLW4gIiRhc19tZSIgJiYgZWNobyAiJGFzX21lOiBjcmVhdGluZyAkYWNfZGly
L1BPVEZJTEVTIiB8fCBlY2hvICJjcmVhdGluZyAkYWNfZGlyL1BPVEZJTEVTIgogICAgICAgICAg
Y2F0ICIkYWNfZ2l2ZW5fc3JjZGlyLyRhY19kaXIvUE9URklMRVMuaW4iIHwgc2VkIC1lICIvXiMv
ZCIgLWUgIi9eWyAJXSpcJC9kIiAtZSAicywuKiwgICAgICR0b3Bfc3JjZGlyLyYgXFxcXCwiIHwg
c2VkIC1lICJcJHMvXCguKlwpIFxcXFwvXDEvIiA+ICIkYWNfZGlyL1BPVEZJTEVTIgogICAgICAg
ICAgUE9NQUtFRklMRURFUFM9IlBPVEZJTEVTLmluIgogICAgICAgICAgIyBBTExfTElOR1VBUywg
UE9GSUxFUywgR01PRklMRVMsIFVQREFURVBPRklMRVMsIERVTU1ZUE9GSUxFUyBkZXBlbmQKICAg
ICAgICAgICMgb24gJGFjX2RpciBidXQgZG9uJ3QgZGVwZW5kIG9uIHVzZXItc3BlY2lmaWVkIGNv
bmZpZ3VyYXRpb24KICAgICAgICAgICMgcGFyYW1ldGVycy4KICAgICAgICAgIGlmIHRlc3QgLWYg
IiRhY19naXZlbl9zcmNkaXIvJGFjX2Rpci9MSU5HVUFTIjsgdGhlbgogICAgICAgICAgICAjIFRo
ZSBMSU5HVUFTIGZpbGUgY29udGFpbnMgdGhlIHNldCBvZiBhdmFpbGFibGUgbGFuZ3VhZ2VzLgog
ICAgICAgICAgICBpZiB0ZXN0IC1uICIkT0JTT0xFVEVfQUxMX0xJTkdVQVMiOyB0aGVuCiAgICAg
ICAgICAgICAgdGVzdCAtbiAiJGFzX21lIiAmJiBlY2hvICIkYXNfbWU6IHNldHRpbmcgQUxMX0xJ
TkdVQVMgaW4gY29uZmlndXJlLmluIGlzIG9ic29sZXRlIiB8fCBlY2hvICJzZXR0aW5nIEFMTF9M
SU5HVUFTIGluIGNvbmZpZ3VyZS5pbiBpcyBvYnNvbGV0ZSIKICAgICAgICAgICAgZmkKICAgICAg
ICAgICAgQUxMX0xJTkdVQVNfPWBzZWQgLWUgIi9eIy9kIiAiJGFjX2dpdmVuX3NyY2Rpci8kYWNf
ZGlyL0xJTkdVQVMiYAogICAgICAgICAgICAjIEhpZGUgdGhlIEFMTF9MSU5HVUFTIGFzc2lnbWVu
dCBmcm9tIGF1dG9tYWtlLgogICAgICAgICAgICBldmFsICdBTExfTElOR1VBUycnPSRBTExfTElO
R1VBU18nCiAgICAgICAgICAgIFBPTUFLRUZJTEVERVBTPSIkUE9NQUtFRklMRURFUFMgTElOR1VB
UyIKICAgICAgICAgIGVsc2UKICAgICAgICAgICAgIyBUaGUgc2V0IG9mIGF2YWlsYWJsZSBsYW5n
dWFnZXMgd2FzIGdpdmVuIGluIGNvbmZpZ3VyZS5pbi4KICAgICAgICAgICAgZXZhbCAnQUxMX0xJ
TkdVQVMnJz0kT0JTT0xFVEVfQUxMX0xJTkdVQVMnCiAgICAgICAgICBmaQogICAgICAgICAgY2Fz
ZSAiJGFjX2dpdmVuX3NyY2RpciIgaW4KICAgICAgICAgICAgLikgc3JjZGlycHJlPSA7OwogICAg
ICAgICAgICAqKSBzcmNkaXJwcmU9JyQoc3JjZGlyKS8nIDs7CiAgICAgICAgICBlc2FjCiAgICAg
ICAgICBQT0ZJTEVTPQogICAgICAgICAgR01PRklMRVM9CiAgICAgICAgICBVUERBVEVQT0ZJTEVT
PQogICAgICAgICAgRFVNTVlQT0ZJTEVTPQogICAgICAgICAgZm9yIGxhbmcgaW4gJEFMTF9MSU5H
VUFTOyBkbwogICAgICAgICAgICBQT0ZJTEVTPSIkUE9GSUxFUyAkc3JjZGlycHJlJGxhbmcucG8i
CiAgICAgICAgICAgIEdNT0ZJTEVTPSIkR01PRklMRVMgJHNyY2RpcnByZSRsYW5nLmdtbyIKICAg
ICAgICAgICAgVVBEQVRFUE9GSUxFUz0iJFVQREFURVBPRklMRVMgJGxhbmcucG8tdXBkYXRlIgog
ICAgICAgICAgICBEVU1NWVBPRklMRVM9IiREVU1NWVBPRklMRVMgJGxhbmcubm9wIgogICAgICAg
ICAgZG9uZQogICAgICAgICAgIyBDQVRBTE9HUyBkZXBlbmRzIG9uIGJvdGggJGFjX2RpciBhbmQg
dGhlIHVzZXIncyBMSU5HVUFTCiAgICAgICAgICAjIGVudmlyb25tZW50IHZhcmlhYmxlLgogICAg
ICAgICAgSU5TVF9MSU5HVUFTPQogICAgICAgICAgaWYgdGVzdCAtbiAiJEFMTF9MSU5HVUFTIjsg
dGhlbgogICAgICAgICAgICBmb3IgcHJlc2VudGxhbmcgaW4gJEFMTF9MSU5HVUFTOyBkbwogICAg
ICAgICAgICAgIHVzZWl0PW5vCiAgICAgICAgICAgICAgaWYgdGVzdCAiJVVOU0VUJSIgIT0gIiRM
SU5HVUFTIjsgdGhlbgogICAgICAgICAgICAgICAgZGVzaXJlZGxhbmd1YWdlcz0iJExJTkdVQVMi
CiAgICAgICAgICAgICAgZWxzZQogICAgICAgICAgICAgICAgZGVzaXJlZGxhbmd1YWdlcz0iJEFM
TF9MSU5HVUFTIgogICAgICAgICAgICAgIGZpCiAgICAgICAgICAgICAgZm9yIGRlc2lyZWRsYW5n
IGluICRkZXNpcmVkbGFuZ3VhZ2VzOyBkbwogICAgICAgICAgICAgICAgIyBVc2UgdGhlIHByZXNl
bnRsYW5nIGNhdGFsb2cgaWYgZGVzaXJlZGxhbmcgaXMKICAgICAgICAgICAgICAgICMgICBhLiBl
cXVhbCB0byBwcmVzZW50bGFuZywgb3IKICAgICAgICAgICAgICAgICMgICBiLiBhIHZhcmlhbnQg
b2YgcHJlc2VudGxhbmcgKGJlY2F1c2UgaW4gdGhpcyBjYXNlLAogICAgICAgICAgICAgICAgIyAg
ICAgIHByZXNlbnRsYW5nIGNhbiBiZSB1c2VkIGFzIGEgZmFsbGJhY2sgZm9yIG1lc3NhZ2VzCiAg
ICAgICAgICAgICAgICAjICAgICAgd2hpY2ggYXJlIG5vdCB0cmFuc2xhdGVkIGluIHRoZSBkZXNp
cmVkbGFuZyBjYXRhbG9nKS4KICAgICAgICAgICAgICAgIGNhc2UgIiRkZXNpcmVkbGFuZyIgaW4K
ICAgICAgICAgICAgICAgICAgIiRwcmVzZW50bGFuZyIqKSB1c2VpdD15ZXM7OwogICAgICAgICAg
ICAgICAgZXNhYwogICAgICAgICAgICAgIGRvbmUKICAgICAgICAgICAgICBpZiB0ZXN0ICR1c2Vp
dCA9IHllczsgdGhlbgogICAgICAgICAgICAgICAgSU5TVF9MSU5HVUFTPSIkSU5TVF9MSU5HVUFT
ICRwcmVzZW50bGFuZyIKICAgICAgICAgICAgICBmaQogICAgICAgICAgICBkb25lCiAgICAgICAg
ICBmaQogICAgICAgICAgQ0FUQUxPR1M9CiAgICAgICAgICBpZiB0ZXN0IC1uICIkSU5TVF9MSU5H
VUFTIjsgdGhlbgogICAgICAgICAgICBmb3IgbGFuZyBpbiAkSU5TVF9MSU5HVUFTOyBkbwogICAg
ICAgICAgICAgIENBVEFMT0dTPSIkQ0FUQUxPR1MgJGxhbmcuZ21vIgogICAgICAgICAgICBkb25l
CiAgICAgICAgICBmaQogICAgICAgICAgdGVzdCAtbiAiJGFzX21lIiAmJiBlY2hvICIkYXNfbWU6
IGNyZWF0aW5nICRhY19kaXIvTWFrZWZpbGUiIHx8IGVjaG8gImNyZWF0aW5nICRhY19kaXIvTWFr
ZWZpbGUiCiAgICAgICAgICBzZWQgLWUgIi9eUE9URklMRVMgPS9yICRhY19kaXIvUE9URklMRVMi
IC1lICIvXiMgTWFrZXZhcnMvciAkYWNfZ2l2ZW5fc3JjZGlyLyRhY19kaXIvTWFrZXZhcnMiIC1l
ICJzfEBQT0ZJTEVTQHwkUE9GSUxFU3xnIiAtZSAic3xAR01PRklMRVNAfCRHTU9GSUxFU3xnIiAt
ZSAic3xAVVBEQVRFUE9GSUxFU0B8JFVQREFURVBPRklMRVN8ZyIgLWUgInN8QERVTU1ZUE9GSUxF
U0B8JERVTU1ZUE9GSUxFU3xnIiAtZSAic3xAQ0FUQUxPR1NAfCRDQVRBTE9HU3xnIiAtZSAic3xA
UE9NQUtFRklMRURFUFNAfCRQT01BS0VGSUxFREVQU3xnIiAiJGFjX2Rpci9NYWtlZmlsZS5pbiIg
PiAiJGFjX2Rpci9NYWtlZmlsZSIKICAgICAgICAgIGZvciBmIGluICIkYWNfZ2l2ZW5fc3JjZGly
LyRhY19kaXIiL1J1bGVzLSo7IGRvCiAgICAgICAgICAgIGlmIHRlc3QgLWYgIiRmIjsgdGhlbgog
ICAgICAgICAgICAgIGNhc2UgIiRmIiBpbgogICAgICAgICAgICAgICAgKi5vcmlnIHwgKi5iYWsg
fCAqfikgOzsKICAgICAgICAgICAgICAgICopIGNhdCAiJGYiID4+ICIkYWNfZGlyL01ha2VmaWxl
IiA7OwogICAgICAgICAgICAgIGVzYWMKICAgICAgICAgICAgZmkKICAgICAgICAgIGRvbmUKICAg
ICAgICBmaQogICAgICAgIDs7CiAgICAgIGVzYWMKICAgIGRvbmUgOzsKICBlc2FjCmRvbmUKCnsg
KGV4aXQgMCk7IGV4aXQgMDsgfQo=

--Multipart=_Wed__31_Mar_2004_09_22_47_+0200_IVAWlh/MouLt7b_T
Content-Type: application/octet-stream;
 name="libtool"
Content-Disposition: attachment;
 filename="libtool"
Content-Transfer-Encoding: base64

IyEgL2Jpbi9iYXNoCgojIGxpYnRvb2wgLSBQcm92aWRlIGdlbmVyYWxpemVkIGxpYnJhcnktYnVp
bGRpbmcgc3VwcG9ydCBzZXJ2aWNlcy4KIyBHZW5lcmF0ZWQgYXV0b21hdGljYWxseSBieSBsdGNv
bmZpZyAoR05VIGxpYnRvb2wgMS4zLjUtZnJlZWJzZC1wb3J0cyAoMS4zODUuMi4yMDYgMjAwMC8w
NS8yNyAxMToxMjoyNykpCiMgTk9URTogQ2hhbmdlcyBtYWRlIHRvIHRoaXMgZmlsZSB3aWxsIGJl
IGxvc3Q6IGxvb2sgYXQgbHRjb25maWcgb3IgbHRtYWluLnNoLgojCiMgQ29weXJpZ2h0IChDKSAx
OTk2LTE5OTkgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuCiMgT3JpZ2luYWxseSBieSBH
b3Jkb24gTWF0emlna2VpdCA8Z29yZEBnbnUuYWkubWl0LmVkdT4sIDE5OTYKIwojIFRoaXMgcHJv
Z3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9k
aWZ5CiMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5z
ZSBhcyBwdWJsaXNoZWQgYnkKIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIg
dmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgojIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVy
IHZlcnNpb24uCiMKIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhh
dCBpdCB3aWxsIGJlIHVzZWZ1bCwgYnV0CiMgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQg
ZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgojIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNT
IEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUgR05VCiMgR2VuZXJhbCBQdWJsaWMg
TGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgojCiMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEg
Y29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKIyBhbG9uZyB3aXRoIHRoaXMg
cHJvZ3JhbTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24s
IEluYy4sIDU5IFRlbXBsZSBQbGFjZSAtIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAwMjExMS0xMzA3
LCBVU0EuCiMKIyBBcyBhIHNwZWNpYWwgZXhjZXB0aW9uIHRvIHRoZSBHTlUgR2VuZXJhbCBQdWJs
aWMgTGljZW5zZSwgaWYgeW91CiMgZGlzdHJpYnV0ZSB0aGlzIGZpbGUgYXMgcGFydCBvZiBhIHBy
b2dyYW0gdGhhdCBjb250YWlucyBhCiMgY29uZmlndXJhdGlvbiBzY3JpcHQgZ2VuZXJhdGVkIGJ5
IEF1dG9jb25mLCB5b3UgbWF5IGluY2x1ZGUgaXQgdW5kZXIKIyB0aGUgc2FtZSBkaXN0cmlidXRp
b24gdGVybXMgdGhhdCB5b3UgdXNlIGZvciB0aGUgcmVzdCBvZiB0aGF0IHByb2dyYW0uCgojIFNl
ZCB0aGF0IGhlbHBzIHVzIGF2b2lkIGFjY2lkZW50YWxseSB0cmlnZ2VyaW5nIGVjaG8oMSkgb3B0
aW9ucyBsaWtlIC1uLgpYc2VkPSJzZWQgLWUgcy9eWC8vIgoKIyBUaGUgSFAtVVgga3NoIGFuZCBQ
T1NJWCBzaGVsbCBwcmludCB0aGUgdGFyZ2V0IGRpcmVjdG9yeSB0byBzdGRvdXQKIyBpZiBDRFBB
VEggaXMgc2V0LgppZiB0ZXN0ICJYJHtDRFBBVEgrc2V0fSIgPSBYc2V0OyB0aGVuIENEUEFUSD06
OyBleHBvcnQgQ0RQQVRIOyBmaQoKIyMjIEJFR0lOIExJQlRPT0wgQ09ORklHCiMgTGlidG9vbCB3
YXMgY29uZmlndXJlZCBhcyBmb2xsb3dzLCBvbiBob3N0IFJlaW5la2UuTWFsZXBhcnR1cy5kZToK
IwojIENDPSIiIENGTEFHUz0iIiBDUFBGTEFHUz0iIiBcCiMgTEQ9IiIgTERGTEFHUz0iIiBMSUJT
PSIiIFwKIyBOTT0iIiBSQU5MSUI9IiIgTE5fUz0iIiBcCiMgRExMVE9PTD0iIiBPQkpEVU1QPSIi
IEFTPSIiIFwKIyAgIC91c3IvbG9jYWwvc2hhcmUvbGlidG9vbDEzL2x0Y29uZmlnMTMgLS1kaXNh
YmxlLWx0bGlicyAvdXNyL2xvY2FsL3NoYXJlL2xpYnRvb2wxMy9sdG1haW4uc2gKIwojIENvbXBp
bGVyIGFuZCBvdGhlciB0ZXN0IG91dHB1dCBwcm9kdWNlZCBieSBsdGNvbmZpZzEzLCB1c2VmdWwg
Zm9yCiMgZGVidWdnaW5nIGx0Y29uZmlnMTMsIGlzIGluIC4vY29uZmlnLmxvZyBpZiBpdCBleGlz
dHMuCgojIFRoZSB2ZXJzaW9uIG9mIGx0Y29uZmlnMTMgdGhhdCBnZW5lcmF0ZWQgdGhpcyBzY3Jp
cHQuCkxUQ09ORklHX1ZFUlNJT049IjEuMy41LWZyZWVic2QtcG9ydHMiCgojIFNoZWxsIHRvIHVz
ZSB3aGVuIGludm9raW5nIHNoZWxsIHNjcmlwdHMuClNIRUxMPSIvYmluL2Jhc2giCgojIFdoZXRo
ZXIgdG8gd2FzdGUgZGlzayBzcGFjZS4KaW5zdGFsbF9sdGxpYnM9bm8gCgojIFdoYXQgdG8gZG8g
d2l0aCAtcmVsZWFzZS4KIyAgeWVzIC0gb25seSBmb3Igc2hhcmVkIGFyY2hpdmUKIyAgbm8gIC0g
aW5nbm9yZQojICBhbGwgLSBmb3IgYWxsIGFyY2hpdmVzCnJlbGVhc2Vfc3VmZml4PXllcwoKIyBX
aGV0aGVyIG9yIG5vdCB0byBidWlsZCBzaGFyZWQgbGlicmFyaWVzLgpidWlsZF9saWJ0b29sX2xp
YnM9bm8KCiMgV2hldGhlciBvciBub3QgdG8gYnVpbGQgc3RhdGljIGxpYnJhcmllcy4KYnVpbGRf
b2xkX2xpYnM9eWVzCgojIFdoZXRoZXIgb3Igbm90IHRvIG9wdGltaXplIGZvciBmYXN0IGluc3Rh
bGxhdGlvbi4KZmFzdF9pbnN0YWxsPW5lZWRsZXNzCgojIFRoZSBob3N0IHN5c3RlbS4KaG9zdF9h
bGlhcz1hbWQ2NC11bmtub3duLWtmcmVlYnNkNS4yLWdudQpob3N0PWFtZDY0LXVua25vd24ta2Zy
ZWVic2Q1LjItZ251CgojIEFuIGVjaG8gcHJvZ3JhbSB0aGF0IGRvZXMgbm90IGludGVycHJldCBi
YWNrc2xhc2hlcy4KZWNobz0iZWNobyIKCiMgVGhlIGFyY2hpdmVyLgpBUj0iYXIiCgojIFRoZSBk
ZWZhdWx0IEMgY29tcGlsZXIuCkNDPSJnY2MiCgojIFRoZSBsaW5rZXIgdXNlZCB0byBidWlsZCBs
aWJyYXJpZXMuCkxEPSIvdXNyL2Jpbi9sZCIKCiMgV2hldGhlciB3ZSBuZWVkIGhhcmQgb3Igc29m
dCBsaW5rcy4KTE5fUz0ibG4gLXNmIgoKIyBBIEJTRC1jb21wYXRpYmxlIG5tIHByb2dyYW0uCk5N
PSIvdXNyL2Jpbi9ubSAtQiIKCiMgVXNlZCBvbiBjeWd3aW46IERMTCBjcmVhdGlvbiBwcm9ncmFt
LgpETExUT09MPSJkbGx0b29sIgoKIyBVc2VkIG9uIGN5Z3dpbjogb2JqZWN0IGR1bXBlci4KT0JK
RFVNUD0ib2JqZHVtcCIKCiMgVXNlZCBvbiBjeWd3aW46IGFzc2VtYmxlci4KQVM9ImFzIgoKIyBU
aGUgbmFtZSBvZiB0aGUgZGlyZWN0b3J5IHRoYXQgY29udGFpbnMgdGVtcG9yYXJ5IGxpYnRvb2wg
ZmlsZXMuCm9iamRpcj0ubGlicwoKIyBIb3cgdG8gY3JlYXRlIHJlbG9hZGFibGUgb2JqZWN0IGZp
bGVzLgpyZWxvYWRfZmxhZz0iIC1yIgpyZWxvYWRfY21kcz0iXCRMRFwkcmVsb2FkX2ZsYWcgLW8g
XCRvdXRwdXRcJHJlbG9hZF9vYmpzIgoKIyBIb3cgdG8gcGFzcyBhIGxpbmtlciBmbGFnIHRocm91
Z2ggdGhlIGNvbXBpbGVyLgp3bD0iLVdsLCIKCiMgT2JqZWN0IGZpbGUgc3VmZml4IChub3JtYWxs
eSAibyIpLgpvYmpleHQ9Im8iCgojIE9sZCBhcmNoaXZlIHN1ZmZpeCAobm9ybWFsbHkgImEiKS4K
bGliZXh0PSJhIgoKIyBFeGVjdXRhYmxlIGZpbGUgc3VmZml4IChub3JtYWxseSAiIikuCmV4ZWV4
dD0iIgoKIyBBZGRpdGlvbmFsIGNvbXBpbGVyIGZsYWdzIGZvciBidWlsZGluZyBsaWJyYXJ5IG9i
amVjdHMuCnBpY19mbGFnPSIgLWZQSUMiCgojIERvZXMgY29tcGlsZXIgc2ltdWx0YW5lb3VzbHkg
c3VwcG9ydCAtYyBhbmQgLW8gb3B0aW9ucz8KY29tcGlsZXJfY19vPSJ5ZXMiCgojIENhbiB3ZSB3
cml0ZSBkaXJlY3RseSB0byBhIC5sbyA/CmNvbXBpbGVyX29fbG89InllcyIKCiMgTXVzdCB3ZSBs
b2NrIGZpbGVzIHdoZW4gZG9pbmcgY29tcGlsYXRpb24gPwpuZWVkX2xvY2tzPSJubyIKCiMgRG8g
d2UgbmVlZCB0aGUgbGliIHByZWZpeCBmb3IgbW9kdWxlcz8KbmVlZF9saWJfcHJlZml4PXVua25v
d24KCiMgRG8gd2UgbmVlZCBhIHZlcnNpb24gZm9yIGxpYnJhcmllcz8KbmVlZF92ZXJzaW9uPXVu
a25vd24KCiMgV2hldGhlciBkbG9wZW4gaXMgc3VwcG9ydGVkLgpkbG9wZW49dW5rbm93bgoKIyBX
aGV0aGVyIGRsb3BlbiBvZiBwcm9ncmFtcyBpcyBzdXBwb3J0ZWQuCmRsb3Blbl9zZWxmPXVua25v
d24KCiMgV2hldGhlciBkbG9wZW4gb2Ygc3RhdGljYWxseSBsaW5rZWQgcHJvZ3JhbXMgaXMgc3Vw
cG9ydGVkLgpkbG9wZW5fc2VsZl9zdGF0aWM9dW5rbm93bgoKIyBDb21waWxlciBmbGFnIHRvIHBy
ZXZlbnQgZHluYW1pYyBsaW5raW5nLgpsaW5rX3N0YXRpY19mbGFnPSItc3RhdGljIgoKIyBDb21w
aWxlciBmbGFnIHRvIHR1cm4gb2ZmIGJ1aWx0aW4gZnVuY3Rpb25zLgpub19idWlsdGluX2ZsYWc9
IiAtZm5vLWJ1aWx0aW4iCgojIENvbXBpbGVyIGZsYWcgdG8gYWxsb3cgcmVmbGV4aXZlIGRsb3Bl
bnMuCmV4cG9ydF9keW5hbWljX2ZsYWdfc3BlYz0iXCR7d2x9LS1leHBvcnQtZHluYW1pYyIKCiMg
Q29tcGlsZXIgZmxhZyB0byBnZW5lcmF0ZSBzaGFyZWQgb2JqZWN0cyBkaXJlY3RseSBmcm9tIGFy
Y2hpdmVzLgp3aG9sZV9hcmNoaXZlX2ZsYWdfc3BlYz0iXCR7d2x9LS13aG9sZS1hcmNoaXZlXCRj
b252ZW5pZW5jZSBcJHt3bH0tLW5vLXdob2xlLWFyY2hpdmUiCgojIENvbXBpbGVyIGZsYWcgdG8g
Z2VuZXJhdGUgdGhyZWFkLXNhZmUgb2JqZWN0cy4KdGhyZWFkX3NhZmVfZmxhZ19zcGVjPSIiCgoj
IExpYnJhcnkgdmVyc2lvbmluZyB0eXBlLgp2ZXJzaW9uX3R5cGU9bm9uZQoKIyBGb3JtYXQgb2Yg
bGlicmFyeSBuYW1lIHByZWZpeC4KbGlibmFtZV9zcGVjPSJsaWJcJG5hbWUiCgojIExpc3Qgb2Yg
YXJjaGl2ZSBuYW1lcy4gIEZpcnN0IG5hbWUgaXMgdGhlIHJlYWwgb25lLCB0aGUgcmVzdCBhcmUg
bGlua3MuCiMgVGhlIGxhc3QgbmFtZSBpcyB0aGUgb25lIHRoYXQgdGhlIGxpbmtlciBmaW5kcyB3
aXRoIC1sTkFNRS4KbGlicmFyeV9uYW1lc19zcGVjPSIiCgojIFRoZSBjb2RlZCBuYW1lIG9mIHRo
ZSBsaWJyYXJ5LCBpZiBkaWZmZXJlbnQgZnJvbSB0aGUgcmVhbCBuYW1lLgpzb25hbWVfc3BlYz0i
IgoKIyBDb21tYW5kcyB1c2VkIHRvIGJ1aWxkIGFuZCBpbnN0YWxsIGFuIG9sZC1zdHlsZSBhcmNo
aXZlLgpSQU5MSUI9InJhbmxpYiIKb2xkX2FyY2hpdmVfY21kcz0iXCRBUiBjcnUgXCRvbGRsaWJc
JG9sZG9ianN+XCRSQU5MSUIgXCRvbGRsaWIiCm9sZF9wb3N0aW5zdGFsbF9jbWRzPSJcJFJBTkxJ
QiBcJG9sZGxpYn5jaG1vZCA2NDQgXCRvbGRsaWIiCm9sZF9wb3N0dW5pbnN0YWxsX2NtZHM9IiIK
CiMgQ3JlYXRlIGFuIG9sZC1zdHlsZSBhcmNoaXZlIGZyb20gYSBzaGFyZWQgYXJjaGl2ZS4Kb2xk
X2FyY2hpdmVfZnJvbV9uZXdfY21kcz0iIgoKIyBDb21tYW5kcyB1c2VkIHRvIGJ1aWxkIGFuZCBp
bnN0YWxsIGEgc2hhcmVkIGFyY2hpdmUuCmFyY2hpdmVfY21kcz0iXCRDQyAtc2hhcmVkIFwkY29t
cGlsZV9ycGF0aCBcJGxpYm9ianMgXCRkZXBsaWJzIFwkbGlua29wdHMgXCR7d2x9LXNvbmFtZSBc
JHdsXCRzb25hbWUgLW8gXCRsaWIiCmFyY2hpdmVfZXhwc3ltX2NtZHM9IlwkQ0MgLXNoYXJlZCBc
JGNvbXBpbGVfcnBhdGggXCRsaWJvYmpzIFwkZGVwbGlicyBcJGxpbmtvcHRzIFwke3dsfS1zb25h
bWUgXCR3bFwkc29uYW1lIFwke3dsfS1yZXRhaW4tc3ltYm9scy1maWxlIFwkd2xcJGV4cG9ydF9z
eW1ib2xzIC1vIFwkbGliIgpwb3N0aW5zdGFsbF9jbWRzPSIiCnBvc3R1bmluc3RhbGxfY21kcz0i
IgoKIyBNZXRob2QgdG8gY2hlY2sgd2hldGhlciBkZXBlbmRlbnQgbGlicmFyaWVzIGFyZSBzaGFy
ZWQgb2JqZWN0cy4KZGVwbGlic19jaGVja19tZXRob2Q9InVua25vd24iCgojIENvbW1hbmQgdG8g
dXNlIHdoZW4gZGVwbGlic19jaGVja19tZXRob2QgPT0gZmlsZV9tYWdpYy4KZmlsZV9tYWdpY19j
bWQ9IiIKCiMgRmxhZyB0aGF0IGFsbG93cyBzaGFyZWQgbGlicmFyaWVzIHdpdGggdW5kZWZpbmVk
IHN5bWJvbHMgdG8gYmUgYnVpbHQuCmFsbG93X3VuZGVmaW5lZF9mbGFnPSIiCgojIEZsYWcgdGhh
dCBmb3JjZXMgbm8gdW5kZWZpbmVkIHN5bWJvbHMuCm5vX3VuZGVmaW5lZF9mbGFnPSIiCgojIENv
bW1hbmRzIHVzZWQgdG8gZmluaXNoIGEgbGlidG9vbCBsaWJyYXJ5IGluc3RhbGxhdGlvbiBpbiBh
IGRpcmVjdG9yeS4KZmluaXNoX2NtZHM9IiIKCiMgU2FtZSBhcyBhYm92ZSwgYnV0IGEgc2luZ2xl
IHNjcmlwdCBmcmFnbWVudCB0byBiZSBldmFsZWQgYnV0IG5vdCBzaG93bi4KZmluaXNoX2V2YWw9
IiIKCiMgVGFrZSB0aGUgb3V0cHV0IG9mIG5tIGFuZCBwcm9kdWNlIGEgbGlzdGluZyBvZiByYXcg
c3ltYm9scyBhbmQgQyBuYW1lcy4KZ2xvYmFsX3N5bWJvbF9waXBlPSJzZWQgLW4gLWUgJ3MvXi4q
WyAJXVxcKFtBQkNER0lTVFddXFwpWyAJXVsgCV0qXFwoXFwpXFwoW19BLVphLXpdW19BLVphLXow
LTldKlxcKVwkL1xcMSBcXDJcXDMgXFwzL3AnIgoKIyBUcmFuc2Zvcm0gdGhlIG91dHB1dCBvZiBu
bSBpbiBhIHByb3BlciBDIGRlY2xhcmF0aW9uCmdsb2JhbF9zeW1ib2xfdG9fY2RlY2w9InNlZCAt
biAtZSAncy9eLiAuKiBcXCguKlxcKVwkL2V4dGVybiBjaGFyIFxcMTsvcCciCgojIFRoaXMgaXMg
dGhlIHNoYXJlZCBsaWJyYXJ5IHJ1bnRpbWUgcGF0aCB2YXJpYWJsZS4KcnVucGF0aF92YXI9TERf
UlVOX1BBVEgKCiMgVGhpcyBpcyB0aGUgc2hhcmVkIGxpYnJhcnkgcGF0aCB2YXJpYWJsZS4Kc2hs
aWJwYXRoX3Zhcj0KCiMgSXMgc2hsaWJwYXRoIHNlYXJjaGVkIGJlZm9yZSB0aGUgaGFyZC1jb2Rl
ZCBsaWJyYXJ5IHNlYXJjaCBwYXRoPwpzaGxpYnBhdGhfb3ZlcnJpZGVzX3J1bnBhdGg9dW5rbm93
bgoKIyBIb3cgdG8gaGFyZGNvZGUgYSBzaGFyZWQgbGlicmFyeSBwYXRoIGludG8gYW4gZXhlY3V0
YWJsZS4KaGFyZGNvZGVfYWN0aW9uPWltbWVkaWF0ZQoKIyBGbGFnIHRvIGhhcmRjb2RlICRsaWJk
aXIgaW50byBhIGJpbmFyeSBkdXJpbmcgbGlua2luZy4KIyBUaGlzIG11c3Qgd29yayBldmVuIGlm
ICRsaWJkaXIgZG9lcyBub3QgZXhpc3QuCmhhcmRjb2RlX2xpYmRpcl9mbGFnX3NwZWM9Ilwke3ds
fS0tcnBhdGggXCR7d2x9XCRsaWJkaXIiCgojIFdoZXRoZXIgd2UgbmVlZCBhIHNpbmdsZSAtcnBh
dGggZmxhZyB3aXRoIGEgc2VwYXJhdGVkIGFyZ3VtZW50LgpoYXJkY29kZV9saWJkaXJfc2VwYXJh
dG9yPSIiCgojIFNldCB0byB5ZXMgaWYgdXNpbmcgRElSL2xpYk5BTUUuc28gZHVyaW5nIGxpbmtp
bmcgaGFyZGNvZGVzIERJUiBpbnRvIHRoZQojIHJlc3VsdGluZyBiaW5hcnkuCmhhcmRjb2RlX2Rp
cmVjdD1ubwoKIyBTZXQgdG8geWVzIGlmIHVzaW5nIHRoZSAtTERJUiBmbGFnIGR1cmluZyBsaW5r
aW5nIGhhcmRjb2RlcyBESVIgaW50byB0aGUKIyByZXN1bHRpbmcgYmluYXJ5LgpoYXJkY29kZV9t
aW51c19MPW5vCgojIFNldCB0byB5ZXMgaWYgdXNpbmcgU0hMSUJQQVRIX1ZBUj1ESVIgZHVyaW5n
IGxpbmtpbmcgaGFyZGNvZGVzIERJUiBpbnRvCiMgdGhlIHJlc3VsdGluZyBiaW5hcnkuCmhhcmRj
b2RlX3NobGlicGF0aF92YXI9dW5zdXBwb3J0ZWQKCiMgQ29tcGlsZS10aW1lIHN5c3RlbSBzZWFy
Y2ggcGF0aCBmb3IgbGlicmFyaWVzCnN5c19saWJfc2VhcmNoX3BhdGhfc3BlYz0iL2xpYiAvdXNy
L2xpYiIKCiMgUnVuLXRpbWUgc3lzdGVtIHNlYXJjaCBwYXRoIGZvciBsaWJyYXJpZXMKc3lzX2xp
Yl9kbHNlYXJjaF9wYXRoX3NwZWM9Ii9saWIgL3Vzci9saWIiCgojIEZpeCB0aGUgc2hlbGwgdmFy
aWFibGUgJHNyY2ZpbGUgZm9yIHRoZSBjb21waWxlci4KZml4X3NyY2ZpbGVfcGF0aD0iIgoKIyBT
ZXQgdG8geWVzIGlmIGV4cG9ydGVkIHN5bWJvbHMgYXJlIHJlcXVpcmVkLgphbHdheXNfZXhwb3J0
X3N5bWJvbHM9bm8KCiMgVGhlIGNvbW1hbmRzIHRvIGxpc3QgZXhwb3J0ZWQgc3ltYm9scy4KZXhw
b3J0X3N5bWJvbHNfY21kcz0iXCROTSBcJGxpYm9ianMgXCRjb252ZW5pZW5jZSB8IFwkZ2xvYmFs
X3N5bWJvbF9waXBlIHwgc2VkICdzLy4qIC8vJyB8IHNvcnQgfCB1bmlxID4gXCRleHBvcnRfc3lt
Ym9scyIKCiMgU3ltYm9scyB0aGF0IHNob3VsZCBub3QgYmUgbGlzdGVkIGluIHRoZSBwcmVsb2Fk
ZWQgc3ltYm9scy4KZXhjbHVkZV9leHBzeW1zPSJfR0xPQkFMX09GRlNFVF9UQUJMRV8iCgojIFN5
bWJvbHMgdGhhdCBtdXN0IGFsd2F5cyBiZSBleHBvcnRlZC4KaW5jbHVkZV9leHBzeW1zPSIiCgoj
IyMgRU5EIExJQlRPT0wgQ09ORklHCgojIGx0bWFpbi5zaCAtIFByb3ZpZGUgZ2VuZXJhbGl6ZWQg
bGlicmFyeS1idWlsZGluZyBzdXBwb3J0IHNlcnZpY2VzLgojIE5PVEU6IENoYW5naW5nIHRoaXMg
ZmlsZSB3aWxsIG5vdCBhZmZlY3QgYW55dGhpbmcgdW50aWwgeW91IHJlcnVuIGx0Y29uZmlnLgoj
CiMgQ29weXJpZ2h0IChDKSAxOTk2LTE5OTkgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMu
CiMgT3JpZ2luYWxseSBieSBHb3Jkb24gTWF0emlna2VpdCA8Z29yZEBnbnUuYWkubWl0LmVkdT4s
IDE5OTYKIwojIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJp
YnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2Vu
ZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKIyB0aGUgRnJlZSBTb2Z0d2FyZSBG
b3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgojIChhdCB5b3Vy
IG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMKIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0
ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwgYnV0CiMgV0lUSE9VVCBBTlkg
V0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgojIE1FUkNIQU5U
QUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUgR05V
CiMgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgojCiMgWW91IHNob3Vs
ZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UK
IyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0
d2FyZQojIEZvdW5kYXRpb24sIEluYy4sIDU5IFRlbXBsZSBQbGFjZSAtIFN1aXRlIDMzMCwgQm9z
dG9uLCBNQSAwMjExMS0xMzA3LCBVU0EuCiMKIyBBcyBhIHNwZWNpYWwgZXhjZXB0aW9uIHRvIHRo
ZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSwgaWYgeW91CiMgZGlzdHJpYnV0ZSB0aGlzIGZp
bGUgYXMgcGFydCBvZiBhIHByb2dyYW0gdGhhdCBjb250YWlucyBhCiMgY29uZmlndXJhdGlvbiBz
Y3JpcHQgZ2VuZXJhdGVkIGJ5IEF1dG9jb25mLCB5b3UgbWF5IGluY2x1ZGUgaXQgdW5kZXIKIyB0
aGUgc2FtZSBkaXN0cmlidXRpb24gdGVybXMgdGhhdCB5b3UgdXNlIGZvciB0aGUgcmVzdCBvZiB0
aGF0IHByb2dyYW0uCgpFWFBSX0NPTVBBVD0xCmV4cG9ydCBFWFBSX0NPTVBBVAoKIyBDaGVjayB0
aGF0IHdlIGhhdmUgYSB3b3JraW5nICRlY2hvLgppZiB0ZXN0ICJYJDEiID0gWC0tbm8tcmVleGVj
OyB0aGVuCiAgIyBEaXNjYXJkIHRoZSAtLW5vLXJlZXhlYyBmbGFnLCBhbmQgY29udGludWUuCiAg
c2hpZnQKZWxpZiB0ZXN0ICJYJDEiID0gWC0tZmFsbGJhY2stZWNobzsgdGhlbgogICMgQXZvaWQg
aW5saW5lIGRvY3VtZW50IGhlcmUsIGl0IG1heSBiZSBsZWZ0IG92ZXIKICA6CmVsaWYgdGVzdCAi
WGAoJGVjaG8gJ1x0JykgMj4vZGV2L251bGxgIiA9ICdYXHQnOyB0aGVuCiAgIyBZaXBwZWUsICRl
Y2hvIHdvcmtzIQogIDoKZWxzZQogICMgUmVzdGFydCB1bmRlciB0aGUgY29ycmVjdCBzaGVsbCwg
YW5kIHRoZW4gbWF5YmUgJGVjaG8gd2lsbCB3b3JrLgogIGV4ZWMgJFNIRUxMICIkMCIgLS1uby1y
ZWV4ZWMgJHsxKyIkQCJ9CmZpCgppZiB0ZXN0ICJYJDEiID0gWC0tZmFsbGJhY2stZWNobzsgdGhl
bgogICMgdXNlZCBhcyBmYWxsYmFjayBlY2hvCiAgc2hpZnQKICBjYXQgPDxFT0YKJCoKRU9GCiAg
ZXhpdCAwCmZpCgojIFRoZSBuYW1lIG9mIHRoaXMgcHJvZ3JhbS4KcHJvZ25hbWU9YCRlY2hvICIk
MCIgfCBzZWQgJ3MlXi4qLyUlJ2AKbW9kZW5hbWU9IiRwcm9nbmFtZSIKCiMgQ29uc3RhbnRzLgpQ
Uk9HUkFNPWx0bWFpbi5zaApQQUNLQUdFPWxpYnRvb2wKVkVSU0lPTj0xLjMuNS1mcmVlYnNkLXBv
cnRzClRJTUVTVEFNUD0iICgxLjM4NS4yLjIwNiAyMDAwLzA1LzI3IDExOjEyOjI3KSIKCmRlZmF1
bHRfbW9kZT0KaGVscD0iVHJ5IFxgJHByb2duYW1lIC0taGVscCcgZm9yIG1vcmUgaW5mb3JtYXRp
b24uIgptYWdpYz0iJSUlTUFHSUMgdmFyaWFibGUlJSUiCm1rZGlyPSJta2RpciIKbXY9Im12IC1m
IgpybT0icm0gLWYiCgojIFNlZCBzdWJzdGl0dXRpb24gdGhhdCBoZWxwcyB1cyBkbyByb2J1c3Qg
cXVvdGluZy4gIEl0IGJhY2tzbGFzaGlmaWVzCiMgbWV0YWNoYXJhY3RlcnMgdGhhdCBhcmUgc3Rp
bGwgYWN0aXZlIHdpdGhpbiBkb3VibGUtcXVvdGVkIHN0cmluZ3MuClhzZWQ9J3NlZCAtZSAxcy9e
WC8vJwpzZWRfcXVvdGVfc3Vic3Q9J3MvXChbXFxgXFwiJFxcXFxdXCkvXFxcMS9nJwpTUDJOTD0n
dHIgXDA0MCBcMDEyJwpOTDJTUD0ndHIgXDAxNVwwMTIgXDA0MFwwNDAnCgojIE5MUyBudWlzYW5j
ZXMuCiMgT25seSBzZXQgTEFORyBhbmQgTENfQUxMIHRvIEMgaWYgYWxyZWFkeSBzZXQuCiMgVGhl
c2UgbXVzdCBub3QgYmUgc2V0IHVuY29uZGl0aW9uYWxseSBiZWNhdXNlIG5vdCBhbGwgc3lzdGVt
cyB1bmRlcnN0YW5kCiMgZS5nLiBMQU5HPUMgKG5vdGFibHkgU0NPKS4KIyBXZSBzYXZlIHRoZSBv
bGQgdmFsdWVzIHRvIHJlc3RvcmUgZHVyaW5nIGV4ZWN1dGUgbW9kZS4KaWYgdGVzdCAiJHtMQ19B
TEwrc2V0fSIgPSBzZXQ7IHRoZW4KICBzYXZlX0xDX0FMTD0iJExDX0FMTCI7IExDX0FMTD1DOyBl
eHBvcnQgTENfQUxMCmZpCmlmIHRlc3QgIiR7TEFORytzZXR9IiA9IHNldDsgdGhlbgogIHNhdmVf
TEFORz0iJExBTkciOyBMQU5HPUM7IGV4cG9ydCBMQU5HCmZpCgppZiB0ZXN0ICIkTFRDT05GSUdf
VkVSU0lPTiIgIT0gIiRWRVJTSU9OIjsgdGhlbgogIGVjaG8gIiRtb2RlbmFtZTogbHRjb25maWcg
dmVyc2lvbiBcYCRMVENPTkZJR19WRVJTSU9OJyBkb2VzIG5vdCBtYXRjaCAkUFJPR1JBTSB2ZXJz
aW9uIFxgJFZFUlNJT04nIiAxPiYyCiAgZWNobyAiRmF0YWwgY29uZmlndXJhdGlvbiBlcnJvci4g
IFNlZSB0aGUgJFBBQ0tBR0UgZG9jcyBmb3IgbW9yZSBpbmZvcm1hdGlvbi4iIDE+JjIKICBleGl0
IDEKZmkKCmlmIHRlc3QgIiRidWlsZF9saWJ0b29sX2xpYnMiICE9IHllcyAmJiB0ZXN0ICIkYnVp
bGRfb2xkX2xpYnMiICE9IHllczsgdGhlbgogIGVjaG8gIiRtb2RlbmFtZTogbm90IGNvbmZpZ3Vy
ZWQgdG8gYnVpbGQgYW55IGtpbmQgb2YgbGlicmFyeSIgMT4mMgogIGVjaG8gIkZhdGFsIGNvbmZp
Z3VyYXRpb24gZXJyb3IuICBTZWUgdGhlICRQQUNLQUdFIGRvY3MgZm9yIG1vcmUgaW5mb3JtYXRp
b24uIiAxPiYyCiAgZXhpdCAxCmZpCgojIEdsb2JhbCB2YXJpYWJsZXMuCm1vZGU9JGRlZmF1bHRf
bW9kZQpub25vcHQ9CnByZXY9CnByZXZvcHQ9CnJ1bj0Kc2hvdz0iJGVjaG8iCnNob3dfaGVscD0K
ZXhlY3V0ZV9kbGZpbGVzPQpsbzJvPSJzL1xcLmxvXCQvLiR7b2JqZXh0fS8iCm8ybG89InMvXFwu
JHtvYmpleHR9XCQvLmxvLyIKCiMgUGFyc2Ugb3VyIGNvbW1hbmQgbGluZSBvcHRpb25zIG9uY2Us
IHRob3JvdWdobHkuCndoaWxlIHRlc3QgJCMgLWd0IDAKZG8KICBhcmc9IiQxIgogIHNoaWZ0Cgog
IGNhc2UgIiRhcmciIGluCiAgLSo9Kikgb3B0YXJnPWAkZWNobyAiWCRhcmciIHwgJFhzZWQgLWUg
J3MvWy1fYS16QS1aMC05XSo9Ly8nYCA7OwogICopIG9wdGFyZz0gOzsKICBlc2FjCgogICMgSWYg
dGhlIHByZXZpb3VzIG9wdGlvbiBuZWVkcyBhbiBhcmd1bWVudCwgYXNzaWduIGl0LgogIGlmIHRl
c3QgLW4gIiRwcmV2IjsgdGhlbgogICAgY2FzZSAiJHByZXYiIGluCiAgICBleGVjdXRlX2RsZmls
ZXMpCiAgICAgIGV2YWwgIiRwcmV2PVwiXCQkcHJldiBcJGFyZ1wiIgogICAgICA7OwogICAgKikK
ICAgICAgZXZhbCAiJHByZXY9XCRhcmciCiAgICAgIDs7CiAgICBlc2FjCgogICAgcHJldj0KICAg
IHByZXZvcHQ9CiAgICBjb250aW51ZQogIGZpCgogICMgSGF2ZSB3ZSBzZWVuIGEgbm9uLW9wdGlv
bmFsIGFyZ3VtZW50IHlldD8KICBjYXNlICIkYXJnIiBpbgogIC0taGVscCkKICAgIHNob3dfaGVs
cD15ZXMKICAgIDs7CgogIC0tdmVyc2lvbikKICAgIGVjaG8gIiRQUk9HUkFNIChHTlUgJFBBQ0tB
R0UpICRWRVJTSU9OJFRJTUVTVEFNUCIKICAgIGV4aXQgMAogICAgOzsKCiAgLS1jb25maWcpCiAg
ICBzZWQgLWUgJzEsL14jIyMgQkVHSU4gTElCVE9PTCBDT05GSUcvZCcgLWUgJy9eIyMjIEVORCBM
SUJUT09MIENPTkZJRy8sJGQnICQwCiAgICBleGl0IDAKICAgIDs7CgogIC0tZGVidWcpCiAgICBl
Y2hvICIkcHJvZ25hbWU6IGVuYWJsaW5nIHNoZWxsIHRyYWNlIG1vZGUiCiAgICBzZXQgLXgKICAg
IDs7CgogIC0tZHJ5LXJ1biB8IC1uKQogICAgcnVuPToKICAgIDs7CgogIC0tZmVhdHVyZXMpCiAg
ICBlY2hvICJob3N0OiAkaG9zdCIKICAgIGlmIHRlc3QgIiRidWlsZF9saWJ0b29sX2xpYnMiID0g
eWVzOyB0aGVuCiAgICAgIGVjaG8gImVuYWJsZSBzaGFyZWQgbGlicmFyaWVzIgogICAgZWxzZQog
ICAgICBlY2hvICJkaXNhYmxlIHNoYXJlZCBsaWJyYXJpZXMiCiAgICBmaQogICAgaWYgdGVzdCAi
JGJ1aWxkX29sZF9saWJzIiA9IHllczsgdGhlbgogICAgICBlY2hvICJlbmFibGUgc3RhdGljIGxp
YnJhcmllcyIKICAgIGVsc2UKICAgICAgZWNobyAiZGlzYWJsZSBzdGF0aWMgbGlicmFyaWVzIgog
ICAgZmkKICAgIGV4aXQgMAogICAgOzsKCiAgLS1maW5pc2gpIG1vZGU9ImZpbmlzaCIgOzsKCiAg
LS1tb2RlKSBwcmV2b3B0PSItLW1vZGUiIHByZXY9bW9kZSA7OwogIC0tbW9kZT0qKSBtb2RlPSIk
b3B0YXJnIiA7OwoKICAtLXF1aWV0IHwgLS1zaWxlbnQpCiAgICBzaG93PToKICAgIDs7CgogIC1k
bG9wZW4pCiAgICBwcmV2b3B0PSItZGxvcGVuIgogICAgcHJldj1leGVjdXRlX2RsZmlsZXMKICAg
IDs7CgogIC0qKQogICAgJGVjaG8gIiRtb2RlbmFtZTogdW5yZWNvZ25pemVkIG9wdGlvbiBcYCRh
cmcnIiAxPiYyCiAgICAkZWNobyAiJGhlbHAiIDE+JjIKICAgIGV4aXQgMQogICAgOzsKCiAgKikK
ICAgIG5vbm9wdD0iJGFyZyIKICAgIGJyZWFrCiAgICA7OwogIGVzYWMKZG9uZQoKaWYgdGVzdCAt
biAiJHByZXZvcHQiOyB0aGVuCiAgJGVjaG8gIiRtb2RlbmFtZTogb3B0aW9uIFxgJHByZXZvcHQn
IHJlcXVpcmVzIGFuIGFyZ3VtZW50IiAxPiYyCiAgJGVjaG8gIiRoZWxwIiAxPiYyCiAgZXhpdCAx
CmZpCgppZiB0ZXN0IC16ICIkc2hvd19oZWxwIjsgdGhlbgoKICAjIEluZmVyIHRoZSBvcGVyYXRp
b24gbW9kZS4KICBpZiB0ZXN0IC16ICIkbW9kZSI7IHRoZW4KICAgIGNhc2UgIiRub25vcHQiIGlu
CiAgICAqY2MgfCAqKysgfCBnY2MqIHwgKi1nY2MqKQogICAgICBtb2RlPWxpbmsKICAgICAgZm9y
IGFyZwogICAgICBkbwoJY2FzZSAiJGFyZyIgaW4KCS1jKQoJICAgbW9kZT1jb21waWxlCgkgICBi
cmVhawoJICAgOzsKCWVzYWMKICAgICAgZG9uZQogICAgICA7OwogICAgKmRiIHwgKmRieCB8ICpz
dHJhY2UgfCAqdHJ1c3MpCiAgICAgIG1vZGU9ZXhlY3V0ZQogICAgICA7OwogICAgKmluc3RhbGwq
fGNwfG12KQogICAgICBtb2RlPWluc3RhbGwKICAgICAgOzsKICAgICpybSkKICAgICAgbW9kZT11
bmluc3RhbGwKICAgICAgOzsKICAgICopCiAgICAgICMgSWYgd2UgaGF2ZSBubyBtb2RlLCBidXQg
ZGxmaWxlcyB3ZXJlIHNwZWNpZmllZCwgdGhlbiBkbyBleGVjdXRlIG1vZGUuCiAgICAgIHRlc3Qg
LW4gIiRleGVjdXRlX2RsZmlsZXMiICYmIG1vZGU9ZXhlY3V0ZQoKICAgICAgIyBKdXN0IHVzZSB0
aGUgZGVmYXVsdCBvcGVyYXRpb24gbW9kZS4KICAgICAgaWYgdGVzdCAteiAiJG1vZGUiOyB0aGVu
CglpZiB0ZXN0IC1uICIkbm9ub3B0IjsgdGhlbgoJICAkZWNobyAiJG1vZGVuYW1lOiB3YXJuaW5n
OiBjYW5ub3QgaW5mZXIgb3BlcmF0aW9uIG1vZGUgZnJvbSBcYCRub25vcHQnIiAxPiYyCgllbHNl
CgkgICRlY2hvICIkbW9kZW5hbWU6IHdhcm5pbmc6IGNhbm5vdCBpbmZlciBvcGVyYXRpb24gbW9k
ZSB3aXRob3V0IE1PREUtQVJHUyIgMT4mMgoJZmkKICAgICAgZmkKICAgICAgOzsKICAgIGVzYWMK
ICBmaQoKICAjIE9ubHkgZXhlY3V0ZSBtb2RlIGlzIGFsbG93ZWQgdG8gaGF2ZSAtZGxvcGVuIGZs
YWdzLgogIGlmIHRlc3QgLW4gIiRleGVjdXRlX2RsZmlsZXMiICYmIHRlc3QgIiRtb2RlIiAhPSBl
eGVjdXRlOyB0aGVuCiAgICAkZWNobyAiJG1vZGVuYW1lOiB1bnJlY29nbml6ZWQgb3B0aW9uIFxg
LWRsb3BlbiciIDE+JjIKICAgICRlY2hvICIkaGVscCIgMT4mMgogICAgZXhpdCAxCiAgZmkKCiAg
IyBDaGFuZ2UgdGhlIGhlbHAgbWVzc2FnZSB0byBhIG1vZGUtc3BlY2lmaWMgb25lLgogIGdlbmVy
aWNfaGVscD0iJGhlbHAiCiAgaGVscD0iVHJ5IFxgJG1vZGVuYW1lIC0taGVscCAtLW1vZGU9JG1v
ZGUnIGZvciBtb3JlIGluZm9ybWF0aW9uLiIKCiAgIyBUaGVzZSBtb2RlcyBhcmUgaW4gb3JkZXIg
b2YgZXhlY3V0aW9uIGZyZXF1ZW5jeSBzbyB0aGF0IHRoZXkgcnVuIHF1aWNrbHkuCiAgY2FzZSAi
JG1vZGUiIGluCiAgIyBsaWJ0b29sIGNvbXBpbGUgbW9kZQogIGNvbXBpbGUpCiAgICBtb2RlbmFt
ZT0iJG1vZGVuYW1lOiBjb21waWxlIgogICAgIyBHZXQgdGhlIGNvbXBpbGF0aW9uIGNvbW1hbmQg
YW5kIHRoZSBzb3VyY2UgZmlsZS4KICAgIGJhc2VfY29tcGlsZT0KICAgIGxhc3Rhcmc9CiAgICBz
cmNmaWxlPSIkbm9ub3B0IgogICAgc3VwcHJlc3Nfb3V0cHV0PQoKICAgIHVzZXJfdGFyZ2V0PW5v
CiAgICBmb3IgYXJnCiAgICBkbwogICAgICAjIEFjY2VwdCBhbnkgY29tbWFuZC1saW5lIG9wdGlv
bnMuCiAgICAgIGNhc2UgIiRhcmciIGluCiAgICAgIC1vKQoJaWYgdGVzdCAiJHVzZXJfdGFyZ2V0
IiAhPSAibm8iOyB0aGVuCgkgICRlY2hvICIkbW9kZW5hbWU6IHlvdSBjYW5ub3Qgc3BlY2lmeSBc
YC1vJyBtb3JlIHRoYW4gb25jZSIgMT4mMgoJICBleGl0IDEKCWZpCgl1c2VyX3RhcmdldD1uZXh0
Cgk7OwoKICAgICAgLXN0YXRpYykKCWJ1aWxkX29sZF9saWJzPXllcwoJY29udGludWUKCTs7CiAg
ICAgIGVzYWMKCiAgICAgIGNhc2UgIiR1c2VyX3RhcmdldCIgaW4KICAgICAgbmV4dCkKCSMgVGhl
IG5leHQgb25lIGlzIHRoZSAtbyB0YXJnZXQgbmFtZQoJdXNlcl90YXJnZXQ9eWVzCgljb250aW51
ZQoJOzsKICAgICAgeWVzKQoJIyBXZSBnb3QgdGhlIG91dHB1dCBmaWxlCgl1c2VyX3RhcmdldD1z
ZXQKCWxpYm9iaj0iJGFyZyIKCWNvbnRpbnVlCgk7OwogICAgICBlc2FjCgogICAgICAjIEFjY2Vw
dCB0aGUgY3VycmVudCBhcmd1bWVudCBhcyB0aGUgc291cmNlIGZpbGUuCiAgICAgIGxhc3Rhcmc9
IiRzcmNmaWxlIgogICAgICBzcmNmaWxlPSIkYXJnIgoKICAgICAgIyBBZXN0aGV0aWNhbGx5IHF1
b3RlIHRoZSBwcmV2aW91cyBhcmd1bWVudC4KCiAgICAgICMgQmFja3NsYXNoaWZ5IGFueSBiYWNr
c2xhc2hlcywgZG91YmxlIHF1b3RlcywgYW5kIGRvbGxhciBzaWducy4KICAgICAgIyBUaGVzZSBh
cmUgdGhlIG9ubHkgY2hhcmFjdGVycyB0aGF0IGFyZSBzdGlsbCBzcGVjaWFsbHkKICAgICAgIyBp
bnRlcnByZXRlZCBpbnNpZGUgb2YgZG91YmxlLXF1b3RlZCBzY3JpbmdzLgogICAgICBsYXN0YXJn
PWAkZWNobyAiWCRsYXN0YXJnIiB8ICRYc2VkIC1lICIkc2VkX3F1b3RlX3N1YnN0ImAKCiAgICAg
ICMgRG91YmxlLXF1b3RlIGFyZ3MgY29udGFpbmluZyBvdGhlciBzaGVsbCBtZXRhY2hhcmFjdGVy
cy4KICAgICAgIyBNYW55IEJvdXJuZSBzaGVsbHMgY2Fubm90IGhhbmRsZSBjbG9zZSBicmFja2V0
cyBjb3JyZWN0bHkgaW4gc2NhbgogICAgICAjIHNldHMsIHNvIHdlIHNwZWNpZnkgaXQgc2VwYXJh
dGVseS4KICAgICAgY2FzZSAiJGxhc3RhcmciIGluCiAgICAgICpbXFtcflwjXF5cJlwqXChcKVx7
XH1cfFw7XDxcPlw/XCdcIFwJXSp8Kl0qKQoJbGFzdGFyZz0iXCIkbGFzdGFyZ1wiIgoJOzsKICAg
ICAgZXNhYwoKICAgICAgIyBBZGQgdGhlIHByZXZpb3VzIGFyZ3VtZW50IHRvIGJhc2VfY29tcGls
ZS4KICAgICAgaWYgdGVzdCAteiAiJGJhc2VfY29tcGlsZSI7IHRoZW4KCWJhc2VfY29tcGlsZT0i
JGxhc3RhcmciCiAgICAgIGVsc2UKCWJhc2VfY29tcGlsZT0iJGJhc2VfY29tcGlsZSAkbGFzdGFy
ZyIKICAgICAgZmkKICAgIGRvbmUKCiAgICBjYXNlICIkdXNlcl90YXJnZXQiIGluCiAgICBzZXQp
CiAgICAgIDs7CiAgICBubykKICAgICAgIyBHZXQgdGhlIG5hbWUgb2YgdGhlIGxpYnJhcnkgb2Jq
ZWN0LgogICAgICBsaWJvYmo9YCRlY2hvICJYJHNyY2ZpbGUiIHwgJFhzZWQgLWUgJ3MlXi4qLyUl
J2AKICAgICAgOzsKICAgICopCiAgICAgICRlY2hvICIkbW9kZW5hbWU6IHlvdSBtdXN0IHNwZWNp
ZnkgYSB0YXJnZXQgd2l0aCBcYC1vJyIgMT4mMgogICAgICBleGl0IDEKICAgICAgOzsKICAgIGVz
YWMKCiAgICAjIFJlY29nbml6ZSBzZXZlcmFsIGRpZmZlcmVudCBmaWxlIHN1ZmZpeGVzLgogICAg
IyBJZiB0aGUgdXNlciBzcGVjaWZpZXMgLW8gZmlsZS5vLCBpdCBpcyByZXBsYWNlZCB3aXRoIGZp
bGUubG8KICAgIHhmb3JtPSdbY0NGU2Ztc29dJwogICAgY2FzZSAiJGxpYm9iaiIgaW4KICAgICou
YWRhKSB4Zm9ybT1hZGEgOzsKICAgICouYWRiKSB4Zm9ybT1hZGIgOzsKICAgICouYWRzKSB4Zm9y
bT1hZHMgOzsKICAgICouYXNtKSB4Zm9ybT1hc20gOzsKICAgICouYysrKSB4Zm9ybT1jKysgOzsK
ICAgICouY2MpIHhmb3JtPWNjIDs7CiAgICAqLmNwcCkgeGZvcm09Y3BwIDs7CiAgICAqLmN4eCkg
eGZvcm09Y3h4IDs7CiAgICAqLmY5MCkgeGZvcm09ZjkwIDs7CiAgICAqLmZvcikgeGZvcm09Zm9y
IDs7CiAgICBlc2FjCgogICAgbGlib2JqPWAkZWNobyAiWCRsaWJvYmoiIHwgJFhzZWQgLWUgInMv
XC4keGZvcm0kLy5sby8iYAoKICAgIGNhc2UgIiRsaWJvYmoiIGluCiAgICAqLmxvKSBvYmo9YCRl
Y2hvICJYJGxpYm9iaiIgfCAkWHNlZCAtZSAiJGxvMm8iYCA7OwogICAgKikKICAgICAgJGVjaG8g
IiRtb2RlbmFtZTogY2Fubm90IGRldGVybWluZSBuYW1lIG9mIGxpYnJhcnkgb2JqZWN0IGZyb20g
XGAkbGlib2JqJyIgMT4mMgogICAgICBleGl0IDEKICAgICAgOzsKICAgIGVzYWMKCiAgICBpZiB0
ZXN0IC16ICIkYmFzZV9jb21waWxlIjsgdGhlbgogICAgICAkZWNobyAiJG1vZGVuYW1lOiB5b3Ug
bXVzdCBzcGVjaWZ5IGEgY29tcGlsYXRpb24gY29tbWFuZCIgMT4mMgogICAgICAkZWNobyAiJGhl
bHAiIDE+JjIKICAgICAgZXhpdCAxCiAgICBmaQoKICAgICMgRGVsZXRlIGFueSBsZWZ0b3ZlciBs
aWJyYXJ5IG9iamVjdHMuCiAgICBpZiB0ZXN0ICIkYnVpbGRfb2xkX2xpYnMiID0geWVzOyB0aGVu
CiAgICAgIHJlbW92ZWxpc3Q9IiRvYmogJGxpYm9iaiIKICAgIGVsc2UKICAgICAgcmVtb3ZlbGlz
dD0iJGxpYm9iaiIKICAgIGZpCgogICAgJHJ1biAkcm0gJHJlbW92ZWxpc3QKICAgIHRyYXAgIiRy
dW4gJHJtICRyZW1vdmVsaXN0OyBleGl0IDEiIDEgMiAxNQoKICAgICMgQ2FsY3VsYXRlIHRoZSBm
aWxlbmFtZSBvZiB0aGUgb3V0cHV0IG9iamVjdCBpZiBjb21waWxlciBkb2VzCiAgICAjIG5vdCBz
dXBwb3J0IC1vIHdpdGggLWMKICAgIGlmIHRlc3QgIiRjb21waWxlcl9jX28iID0gbm87IHRoZW4K
ICAgICAgb3V0cHV0X29iaj1gJGVjaG8gIlgkc3JjZmlsZSIgfCAkWHNlZCAtZSAncyVeLiovJSUn
IC1lICdzJVwuLiokJSUnYC4ke29iamV4dH0KICAgICAgbG9ja2ZpbGU9IiRvdXRwdXRfb2JqLmxv
Y2siCiAgICAgIHJlbW92ZWxpc3Q9IiRyZW1vdmVsaXN0ICRvdXRwdXRfb2JqICRsb2NrZmlsZSIK
ICAgICAgdHJhcCAiJHJ1biAkcm0gJHJlbW92ZWxpc3Q7IGV4aXQgMSIgMSAyIDE1CiAgICBlbHNl
CiAgICAgIG5lZWRfbG9ja3M9bm8KICAgICAgbG9ja2ZpbGU9CiAgICBmaQoKICAgICMgTG9jayB0
aGlzIGNyaXRpY2FsIHNlY3Rpb24gaWYgaXQgaXMgbmVlZGVkCiAgICAjIFdlIHVzZSB0aGlzIHNj
cmlwdCBmaWxlIHRvIG1ha2UgdGhlIGxpbmssIGl0IGF2b2lkcyBjcmVhdGluZyBhIG5ldyBmaWxl
CiAgICBpZiB0ZXN0ICIkbmVlZF9sb2NrcyIgPSB5ZXM7IHRoZW4KICAgICAgdW50aWwgbG4gIiQw
IiAiJGxvY2tmaWxlIiAyPi9kZXYvbnVsbDsgZG8KCSRzaG93ICJXYWl0aW5nIGZvciAkbG9ja2Zp
bGUgdG8gYmUgcmVtb3ZlZCIKCXNsZWVwIDIKICAgICAgZG9uZQogICAgZWxpZiB0ZXN0ICIkbmVl
ZF9sb2NrcyIgPSB3YXJuOyB0aGVuCiAgICAgIGlmIHRlc3QgLWYgIiRsb2NrZmlsZSI7IHRoZW4K
CWVjaG8gIlwKKioqIEVSUk9SLCAkbG9ja2ZpbGUgZXhpc3RzIGFuZCBjb250YWluczoKYGNhdCAk
bG9ja2ZpbGUgMj4vZGV2L251bGxgCgpUaGlzIGluZGljYXRlcyB0aGF0IGFub3RoZXIgcHJvY2Vz
cyBpcyB0cnlpbmcgdG8gdXNlIHRoZSBzYW1lCnRlbXBvcmFyeSBvYmplY3QgZmlsZSwgYW5kIGxp
YnRvb2wgY291bGQgbm90IHdvcmsgYXJvdW5kIGl0IGJlY2F1c2UKeW91ciBjb21waWxlciBkb2Vz
IG5vdCBzdXBwb3J0IFxgLWMnIGFuZCBcYC1vJyB0b2dldGhlci4gIElmIHlvdQpyZXBlYXQgdGhp
cyBjb21waWxhdGlvbiwgaXQgbWF5IHN1Y2NlZWQsIGJ5IGNoYW5jZSwgYnV0IHlvdSBoYWQgYmV0
dGVyCmF2b2lkIHBhcmFsbGVsIGJ1aWxkcyAobWFrZSAtaikgaW4gdGhpcyBwbGF0Zm9ybSwgb3Ig
Z2V0IGEgYmV0dGVyCmNvbXBpbGVyLiIKCgkkcnVuICRybSAkcmVtb3ZlbGlzdAoJZXhpdCAxCiAg
ICAgIGZpCiAgICAgIGVjaG8gJHNyY2ZpbGUgPiAiJGxvY2tmaWxlIgogICAgZmkKCiAgICBpZiB0
ZXN0IC1uICIkZml4X3NyY2ZpbGVfcGF0aCI7IHRoZW4KICAgICAgZXZhbCBzcmNmaWxlPVwiJGZp
eF9zcmNmaWxlX3BhdGhcIgogICAgZmkKCiAgICAjIE9ubHkgYnVpbGQgYSBQSUMgb2JqZWN0IGlm
IHdlIGFyZSBidWlsZGluZyBsaWJ0b29sIGxpYnJhcmllcy4KICAgIGlmIHRlc3QgIiRidWlsZF9s
aWJ0b29sX2xpYnMiID0geWVzOyB0aGVuCiAgICAgICMgV2l0aG91dCB0aGlzIGFzc2lnbm1lbnQs
IGJhc2VfY29tcGlsZSBnZXRzIGVtcHRpZWQuCiAgICAgIGZic2RfaGlkZW91c19zaF9idWc9JGJh
c2VfY29tcGlsZQoKICAgICAgIyBBbGwgcGxhdGZvcm1zIHVzZSAtRFBJQywgdG8gbm90aWZ5IHBy
ZXByb2Nlc3NlZCBhc3NlbWJsZXIgY29kZS4KICAgICAgY29tbWFuZD0iJGJhc2VfY29tcGlsZSAk
c3JjZmlsZSAkcGljX2ZsYWcgLURQSUMiCiAgICAgIGlmIHRlc3QgIiRidWlsZF9vbGRfbGlicyIg
PSB5ZXM7IHRoZW4KCWxvX2xpYm9iaj0iJGxpYm9iaiIKCWRpcj1gJGVjaG8gIlgkbGlib2JqIiB8
ICRYc2VkIC1lICdzJS9bXi9dKiQlJSdgCglpZiB0ZXN0ICJYJGRpciIgPSAiWCRsaWJvYmoiOyB0
aGVuCgkgIGRpcj0iJG9iamRpciIKCWVsc2UKCSAgZGlyPSIkZGlyLyRvYmpkaXIiCglmaQoJbGli
b2JqPSIkZGlyLyJgJGVjaG8gIlgkbGlib2JqIiB8ICRYc2VkIC1lICdzJV4uKi8lJSdgCgoJaWYg
dGVzdCAtZCAiJGRpciI7IHRoZW4KCSAgJHNob3cgIiRybSAkbGlib2JqIgoJICAkcnVuICRybSAk
bGlib2JqCgllbHNlCgkgICRzaG93ICIkbWtkaXIgJGRpciIKCSAgJHJ1biAkbWtkaXIgJGRpcgoJ
ICBzdGF0dXM9JD8KCSAgaWYgdGVzdCAkc3RhdHVzIC1uZSAwICYmIHRlc3QgISAtZCAkZGlyOyB0
aGVuCgkgICAgZXhpdCAkc3RhdHVzCgkgIGZpCglmaQogICAgICBmaQogICAgICBpZiB0ZXN0ICIk
Y29tcGlsZXJfb19sbyIgPSB5ZXM7IHRoZW4KCW91dHB1dF9vYmo9IiRsaWJvYmoiCgljb21tYW5k
PSIkY29tbWFuZCAtbyAkb3V0cHV0X29iaiIKICAgICAgZWxpZiB0ZXN0ICIkY29tcGlsZXJfY19v
IiA9IHllczsgdGhlbgoJb3V0cHV0X29iaj0iJG9iaiIKCWNvbW1hbmQ9IiRjb21tYW5kIC1vICRv
dXRwdXRfb2JqIgogICAgICBmaQoKICAgICAgJHJ1biAkcm0gIiRvdXRwdXRfb2JqIgogICAgICAk
c2hvdyAiJGNvbW1hbmQiCiAgICAgIGlmICRydW4gZXZhbCAiJGNvbW1hbmQiOyB0aGVuIDoKICAg
ICAgZWxzZQoJdGVzdCAtbiAiJG91dHB1dF9vYmoiICYmICRydW4gJHJtICRyZW1vdmVsaXN0Cgll
eGl0IDEKICAgICAgZmkKCiAgICAgIGlmIHRlc3QgIiRuZWVkX2xvY2tzIiA9IHdhcm4gJiYKCSB0
ZXN0IHgiYGNhdCAkbG9ja2ZpbGUgMj4vZGV2L251bGxgIiAhPSB4IiRzcmNmaWxlIjsgdGhlbgoJ
ZWNobyAiXAoqKiogRVJST1IsICRsb2NrZmlsZSBjb250YWluczoKYGNhdCAkbG9ja2ZpbGUgMj4v
ZGV2L251bGxgCgpidXQgaXQgc2hvdWxkIGNvbnRhaW46CiRzcmNmaWxlCgpUaGlzIGluZGljYXRl
cyB0aGF0IGFub3RoZXIgcHJvY2VzcyBpcyB0cnlpbmcgdG8gdXNlIHRoZSBzYW1lCnRlbXBvcmFy
eSBvYmplY3QgZmlsZSwgYW5kIGxpYnRvb2wgY291bGQgbm90IHdvcmsgYXJvdW5kIGl0IGJlY2F1
c2UKeW91ciBjb21waWxlciBkb2VzIG5vdCBzdXBwb3J0IFxgLWMnIGFuZCBcYC1vJyB0b2dldGhl
ci4gIElmIHlvdQpyZXBlYXQgdGhpcyBjb21waWxhdGlvbiwgaXQgbWF5IHN1Y2NlZWQsIGJ5IGNo
YW5jZSwgYnV0IHlvdSBoYWQgYmV0dGVyCmF2b2lkIHBhcmFsbGVsIGJ1aWxkcyAobWFrZSAtaikg
aW4gdGhpcyBwbGF0Zm9ybSwgb3IgZ2V0IGEgYmV0dGVyCmNvbXBpbGVyLiIKCgkkcnVuICRybSAk
cmVtb3ZlbGlzdAoJZXhpdCAxCiAgICAgIGZpCgogICAgICAjIEp1c3QgbW92ZSB0aGUgb2JqZWN0
IGlmIG5lZWRlZCwgdGhlbiBnbyBvbiB0byBjb21waWxlIHRoZSBuZXh0IG9uZQogICAgICBpZiB0
ZXN0IHgiJG91dHB1dF9vYmoiICE9IHgiJGxpYm9iaiI7IHRoZW4KCSRzaG93ICIkbXYgJG91dHB1
dF9vYmogJGxpYm9iaiIKCWlmICRydW4gJG12ICRvdXRwdXRfb2JqICRsaWJvYmo7IHRoZW4gOgoJ
ZWxzZQoJICBlcnJvcj0kPwoJICAkcnVuICRybSAkcmVtb3ZlbGlzdAoJICBleGl0ICRlcnJvcgoJ
ZmkKICAgICAgZmkKCiAgICAgICMgSWYgd2UgaGF2ZSBubyBwaWNfZmxhZywgdGhlbiBjb3B5IHRo
ZSBvYmplY3QgaW50byBwbGFjZSBhbmQgZmluaXNoLgogICAgICBpZiB0ZXN0IC16ICIkcGljX2Zs
YWciICYmIHRlc3QgIiRidWlsZF9vbGRfbGlicyIgPSB5ZXM7IHRoZW4KCSMgUmVuYW1lIHRoZSAu
bG8gZnJvbSB3aXRoaW4gb2JqZGlyIHRvIG9iagoJaWYgdGVzdCAtZiAkb2JqOyB0aGVuCgkgICRz
aG93ICRybSAkb2JqCgkgICRydW4gJHJtICRvYmoKCWZpCgoJJHNob3cgIiRtdiAkbGlib2JqICRv
YmoiCglpZiAkcnVuICRtdiAkbGlib2JqICRvYmo7IHRoZW4gOgoJZWxzZQoJICBlcnJvcj0kPwoJ
ICAkcnVuICRybSAkcmVtb3ZlbGlzdAoJICBleGl0ICRlcnJvcgoJZmkKCgl4ZGlyPWAkZWNobyAi
WCRvYmoiIHwgJFhzZWQgLWUgJ3MlL1teL10qJCUlJ2AKCWlmIHRlc3QgIlgkeGRpciIgPSAiWCRv
YmoiOyB0aGVuCgkgIHhkaXI9Ii4iCgllbHNlCgkgIHhkaXI9IiR4ZGlyIgoJZmkKCWJhc2VvYmo9
YCRlY2hvICJYJG9iaiIgfCAkWHNlZCAtZSAicyUuKi8lJSJgCglsaWJvYmo9YCRlY2hvICJYJGJh
c2VvYmoiIHwgJFhzZWQgLWUgIiRvMmxvImAKCSMgTm93IGFycmFuZ2UgdGhhdCBvYmogYW5kIGxv
X2xpYm9iaiBiZWNvbWUgdGhlIHNhbWUgZmlsZQoJJHNob3cgIihjZCAkeGRpciAmJiAkTE5fUyAk
YmFzZW9iaiAkbGlib2JqKSIKCWlmICRydW4gZXZhbCAnKGNkICR4ZGlyICYmICRMTl9TICRiYXNl
b2JqICRsaWJvYmopJzsgdGhlbgoJICBleGl0IDAKCWVsc2UKCSAgZXJyb3I9JD8KCSAgJHJ1biAk
cm0gJHJlbW92ZWxpc3QKCSAgZXhpdCAkZXJyb3IKCWZpCiAgICAgIGZpCgogICAgICAjIEFsbG93
IGVycm9yIG1lc3NhZ2VzIG9ubHkgZnJvbSB0aGUgZmlyc3QgY29tcGlsYXRpb24uCiAgICAgIHN1
cHByZXNzX291dHB1dD0nID4vZGV2L251bGwgMj4mMScKICAgIGZpCgogICAgIyBPbmx5IGJ1aWxk
IGEgcG9zaXRpb24tZGVwZW5kZW50IG9iamVjdCBpZiB3ZSBidWlsZCBvbGQgbGlicmFyaWVzLgog
ICAgaWYgdGVzdCAiJGJ1aWxkX29sZF9saWJzIiA9IHllczsgdGhlbgogICAgICBjb21tYW5kPSIk
YmFzZV9jb21waWxlICRzcmNmaWxlIgogICAgICBpZiB0ZXN0ICIkY29tcGlsZXJfY19vIiA9IHll
czsgdGhlbgoJY29tbWFuZD0iJGNvbW1hbmQgLW8gJG9iaiIKCW91dHB1dF9vYmo9IiRvYmoiCiAg
ICAgIGZpCgogICAgICAjIFN1cHByZXNzIGNvbXBpbGVyIG91dHB1dCBpZiB3ZSBhbHJlYWR5IGRp
ZCBhIFBJQyBjb21waWxhdGlvbi4KICAgICAgY29tbWFuZD0iJGNvbW1hbmQkc3VwcHJlc3Nfb3V0
cHV0IgogICAgICAkcnVuICRybSAiJG91dHB1dF9vYmoiCiAgICAgICRzaG93ICIkY29tbWFuZCIK
ICAgICAgaWYgJHJ1biBldmFsICIkY29tbWFuZCI7IHRoZW4gOgogICAgICBlbHNlCgkkcnVuICRy
bSAkcmVtb3ZlbGlzdAoJZXhpdCAxCiAgICAgIGZpCgogICAgICBpZiB0ZXN0ICIkbmVlZF9sb2Nr
cyIgPSB3YXJuICYmCgkgdGVzdCB4ImBjYXQgJGxvY2tmaWxlIDI+L2Rldi9udWxsYCIgIT0geCIk
c3JjZmlsZSI7IHRoZW4KCWVjaG8gIlwKKioqIEVSUk9SLCAkbG9ja2ZpbGUgY29udGFpbnM6CmBj
YXQgJGxvY2tmaWxlIDI+L2Rldi9udWxsYAoKYnV0IGl0IHNob3VsZCBjb250YWluOgokc3JjZmls
ZQoKVGhpcyBpbmRpY2F0ZXMgdGhhdCBhbm90aGVyIHByb2Nlc3MgaXMgdHJ5aW5nIHRvIHVzZSB0
aGUgc2FtZQp0ZW1wb3Jhcnkgb2JqZWN0IGZpbGUsIGFuZCBsaWJ0b29sIGNvdWxkIG5vdCB3b3Jr
IGFyb3VuZCBpdCBiZWNhdXNlCnlvdXIgY29tcGlsZXIgZG9lcyBub3Qgc3VwcG9ydCBcYC1jJyBh
bmQgXGAtbycgdG9nZXRoZXIuICBJZiB5b3UKcmVwZWF0IHRoaXMgY29tcGlsYXRpb24sIGl0IG1h
eSBzdWNjZWVkLCBieSBjaGFuY2UsIGJ1dCB5b3UgaGFkIGJldHRlcgphdm9pZCBwYXJhbGxlbCBi
dWlsZHMgKG1ha2UgLWopIGluIHRoaXMgcGxhdGZvcm0sIG9yIGdldCBhIGJldHRlcgpjb21waWxl
ci4iCgoJJHJ1biAkcm0gJHJlbW92ZWxpc3QKCWV4aXQgMQogICAgICBmaQoKICAgICAgIyBKdXN0
IG1vdmUgdGhlIG9iamVjdCBpZiBuZWVkZWQKICAgICAgaWYgdGVzdCB4IiRvdXRwdXRfb2JqIiAh
PSB4IiRvYmoiOyB0aGVuCgkkc2hvdyAiJG12ICRvdXRwdXRfb2JqICRvYmoiCglpZiAkcnVuICRt
diAkb3V0cHV0X29iaiAkb2JqOyB0aGVuIDoKCWVsc2UKCSAgZXJyb3I9JD8KCSAgJHJ1biAkcm0g
JHJlbW92ZWxpc3QKCSAgZXhpdCAkZXJyb3IKCWZpCiAgICAgIGZpCgogICAgICAjIENyZWF0ZSBh
biBpbnZhbGlkIGxpYnRvb2wgb2JqZWN0IGlmIG5vIFBJQywgc28gdGhhdCB3ZSBkbyBub3QKICAg
ICAgIyBhY2NpZGVudGFsbHkgbGluayBpdCBpbnRvIGEgcHJvZ3JhbS4KICAgICAgaWYgdGVzdCAi
JGJ1aWxkX2xpYnRvb2xfbGlicyIgIT0geWVzOyB0aGVuCgkkc2hvdyAiZWNobyB0aW1lc3RhbXAg
PiAkbGlib2JqIgoJJHJ1biBldmFsICJlY2hvIHRpbWVzdGFtcCA+IFwkbGlib2JqIiB8fCBleGl0
ICQ/CiAgICAgIGVsc2UKCSMgTW92ZSB0aGUgLmxvIGZyb20gd2l0aGluIG9iamRpcgoJJHNob3cg
IiRtdiAkbGlib2JqICRsb19saWJvYmoiCglpZiAkcnVuICRtdiAkbGlib2JqICRsb19saWJvYmo7
IHRoZW4gOgoJZWxzZQoJICBlcnJvcj0kPwoJICAkcnVuICRybSAkcmVtb3ZlbGlzdAoJICBleGl0
ICRlcnJvcgoJZmkKICAgICAgZmkKICAgIGZpCgogICAgIyBVbmxvY2sgdGhlIGNyaXRpY2FsIHNl
Y3Rpb24gaWYgaXQgd2FzIGxvY2tlZAogICAgaWYgdGVzdCAiJG5lZWRfbG9ja3MiICE9IG5vOyB0
aGVuCiAgICAgICRybSAiJGxvY2tmaWxlIgogICAgZmkKCiAgICBleGl0IDAKICAgIDs7CgogICMg
bGlidG9vbCBsaW5rIG1vZGUKICBsaW5rKQogICAgbW9kZW5hbWU9IiRtb2RlbmFtZTogbGluayIK
ICAgIGNhc2UgIiRob3N0IiBpbgogICAgKi0qLWN5Z3dpbiogfCAqLSotbWluZ3cqIHwgKi0qLW9z
MiopCiAgICAgICMgSXQgaXMgaW1wb3NzaWJsZSB0byBsaW5rIGEgZGxsIHdpdGhvdXQgdGhpcyBz
ZXR0aW5nLCBhbmQKICAgICAgIyB3ZSBzaG91bGRuJ3QgZm9yY2UgdGhlIG1ha2VmaWxlIG1haW50
YWluZXIgdG8gZmlndXJlIG91dAogICAgICAjIHdoaWNoIHN5c3RlbSB3ZSBhcmUgY29tcGlsaW5n
IGZvciBpbiBvcmRlciB0byBwYXNzIGFuIGV4dHJhCiAgICAgICMgZmxhZyBmb3IgZXZlcnkgbGli
dG9vbCBpbnZva2F0aW9uLgogICAgICAjIGFsbG93X3VuZGVmaW5lZD1ubwoKICAgICAgIyBGSVhN
RTogVW5mb3J0dW5hdGVseSwgdGhlcmUgYXJlIHByb2JsZW1zIHdpdGggdGhlIGFib3ZlIHdoZW4g
dHJ5aW5nCiAgICAgICMgdG8gbWFrZSBhIGRsbCB3aGljaCBoYXMgdW5kZWZpbmVkIHN5bWJvbHMs
IGluIHdoaWNoIGNhc2Ugbm90CiAgICAgICMgZXZlbiBhIHN0YXRpYyBsaWJyYXJ5IGlzIGJ1aWx0
LiAgRm9yIG5vdywgd2UgbmVlZCB0byBzcGVjaWZ5CiAgICAgICMgLW5vLXVuZGVmaW5lZCBvbiB0
aGUgbGlidG9vbCBsaW5rIGxpbmUgd2hlbiB3ZSBjYW4gYmUgY2VydGFpbgogICAgICAjIHRoYXQg
YWxsIHN5bWJvbHMgYXJlIHNhdGlzZmllZCwgb3RoZXJ3aXNlIHdlIGdldCBhIHN0YXRpYyBsaWJy
YXJ5LgogICAgICBhbGxvd191bmRlZmluZWQ9eWVzCgogICAgICAjIFRoaXMgaXMgYSBzb3VyY2Ug
cHJvZ3JhbSB0aGF0IGlzIHVzZWQgdG8gY3JlYXRlIGRsbHMgb24gV2luZG93cwogICAgICAjIERv
bid0IHJlbW92ZSBub3IgbW9kaWZ5IHRoZSBzdGFydGluZyBhbmQgY2xvc2luZyBjb21tZW50cwoj
IC8qIGx0ZGxsLmMgc3RhcnRzIGhlcmUgKi8KIyAjZGVmaW5lIFdJTjMyX0xFQU5fQU5EX01FQU4K
IyAjaW5jbHVkZSA8d2luZG93cy5oPgojICN1bmRlZiBXSU4zMl9MRUFOX0FORF9NRUFOCiMgI2lu
Y2x1ZGUgPHN0ZGlvLmg+CiMKIyAjaWZuZGVmIF9fQ1lHV0lOX18KIyAjICBpZmRlZiBfX0NZR1dJ
TjMyX18KIyAjICAgIGRlZmluZSBfX0NZR1dJTl9fIF9fQ1lHV0lOMzJfXwojICMgIGVuZGlmCiMg
I2VuZGlmCiMKIyAjaWZkZWYgX19jcGx1c3BsdXMKIyBleHRlcm4gIkMiIHsKIyAjZW5kaWYKIyBC
T09MIEFQSUVOVFJZIERsbE1haW4gKEhJTlNUQU5DRSBoSW5zdCwgRFdPUkQgcmVhc29uLCBMUFZP
SUQgcmVzZXJ2ZWQpOwojICNpZmRlZiBfX2NwbHVzcGx1cwojIH0KIyAjZW5kaWYKIwojICNpZmRl
ZiBfX0NZR1dJTl9fCiMgI2luY2x1ZGUgPGN5Z3dpbi9jeWd3aW5fZGxsLmg+CiMgREVDTEFSRV9D
WUdXSU5fRExMKCBEbGxNYWluICk7CiMgI2VuZGlmCiMgSElOU1RBTkNFIF9faERsbEluc3RhbmNl
X2Jhc2U7CiMKIyBCT09MIEFQSUVOVFJZCiMgRGxsTWFpbiAoSElOU1RBTkNFIGhJbnN0LCBEV09S
RCByZWFzb24sIExQVk9JRCByZXNlcnZlZCkKIyB7CiMgICBfX2hEbGxJbnN0YW5jZV9iYXNlID0g
aEluc3Q7CiMgICByZXR1cm4gVFJVRTsKIyB9CiMgLyogbHRkbGwuYyBlbmRzIGhlcmUgKi8KICAg
ICAgIyBUaGlzIGlzIGEgc291cmNlIHByb2dyYW0gdGhhdCBpcyB1c2VkIHRvIGNyZWF0ZSBpbXBv
cnQgbGlicmFyaWVzCiAgICAgICMgb24gV2luZG93cyBmb3IgZGxscyB3aGljaCBsYWNrIHRoZW0u
IERvbid0IHJlbW92ZSBub3IgbW9kaWZ5IHRoZQogICAgICAjIHN0YXJ0aW5nIGFuZCBjbG9zaW5n
IGNvbW1lbnRzCiMgLyogaW1wZ2VuLmMgc3RhcnRzIGhlcmUgKi8KIyAvKiAgIENvcHlyaWdodCAo
QykgMTk5OSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4KIyAKIyAgVGhpcyBmaWxlIGlz
IHBhcnQgb2YgR05VIGxpYnRvb2wuCiMgCiMgIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJl
OyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiMgIGl0IHVuZGVyIHRoZSB0
ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CiMg
IHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExp
Y2Vuc2UsIG9yCiMgIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMgCiMgIFRo
aXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNl
ZnVsLAojICBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGll
ZCB3YXJyYW50eSBvZgojICBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNV
TEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBt
b3JlIGRldGFpbHMuCiMgCiMgIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhl
IEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCiMgIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBp
ZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgIEZvdW5kYXRpb24sIEluYy4sIDU5
IFRlbXBsZSBQbGFjZSAtIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAwMjExMS0xMzA3LCBVU0EuCiMg
ICovCiMgCiMgICNpbmNsdWRlIDxzdGRpby5oPgkJLyogZm9yIHByaW50ZigpICovCiMgICNpbmNs
dWRlIDx1bmlzdGQuaD4JCS8qIGZvciBvcGVuKCksIGxzZWVrKCksIHJlYWQoKSAqLwojICAjaW5j
bHVkZSA8ZmNudGwuaD4JCS8qIGZvciBPX1JET05MWSwgT19CSU5BUlkgKi8KIyAgI2luY2x1ZGUg
PHN0cmluZy5oPgkJLyogZm9yIHN0cmR1cCgpICovCiMgCiMgIHN0YXRpYyB1bnNpZ25lZCBpbnQK
IyAgcGVfZ2V0MTYgKGZkLCBvZmZzZXQpCiMgICAgICAgaW50IGZkOwojICAgICAgIGludCBvZmZz
ZXQ7CiMgIHsKIyAgICB1bnNpZ25lZCBjaGFyIGJbMl07CiMgICAgbHNlZWsgKGZkLCBvZmZzZXQs
IFNFRUtfU0VUKTsKIyAgICByZWFkIChmZCwgYiwgMik7CiMgICAgcmV0dXJuIGJbMF0gKyAoYlsx
XTw8OCk7CiMgIH0KIyAKIyAgc3RhdGljIHVuc2lnbmVkIGludAojICBwZV9nZXQzMiAoZmQsIG9m
ZnNldCkKIyAgICAgIGludCBmZDsKIyAgICAgIGludCBvZmZzZXQ7CiMgIHsKIyAgICB1bnNpZ25l
ZCBjaGFyIGJbNF07CiMgICAgbHNlZWsgKGZkLCBvZmZzZXQsIFNFRUtfU0VUKTsKIyAgICByZWFk
IChmZCwgYiwgNCk7CiMgICAgcmV0dXJuIGJbMF0gKyAoYlsxXTw8OCkgKyAoYlsyXTw8MTYpICsg
KGJbM108PDI0KTsKIyAgfQojIAojICBzdGF0aWMgdW5zaWduZWQgaW50CiMgIHBlX2FzMzIgKHB0
cikKIyAgICAgICB2b2lkICpwdHI7CiMgIHsKIyAgICB1bnNpZ25lZCBjaGFyICpiID0gcHRyOwoj
ICAgIHJldHVybiBiWzBdICsgKGJbMV08PDgpICsgKGJbMl08PDE2KSArIChiWzNdPDwyNCk7CiMg
IH0KIyAKIyAgaW50CiMgIG1haW4gKGFyZ2MsIGFyZ3YpCiMgICAgICBpbnQgYXJnYzsKIyAgICAg
IGNoYXIgKmFyZ3ZbXTsKIyAgewojICAgICAgaW50IGRsbDsKIyAgICAgIHVuc2lnbmVkIGxvbmcg
cGVfaGVhZGVyX29mZnNldCwgb3B0aGRyX29mcywgbnVtX2VudHJpZXMsIGk7CiMgICAgICB1bnNp
Z25lZCBsb25nIGV4cG9ydF9ydmEsIGV4cG9ydF9zaXplLCBuc2VjdGlvbnMsIHNlY3B0ciwgZXhw
cHRyOwojICAgICAgdW5zaWduZWQgbG9uZyBuYW1lX3J2YXMsIG5leHA7CiMgICAgICB1bnNpZ25l
ZCBjaGFyICpleHBkYXRhLCAqZXJ2YTsKIyAgICAgIGNoYXIgKmZpbGVuYW1lLCAqZGxsX25hbWU7
CiMgCiMgICAgICBmaWxlbmFtZSA9IGFyZ3ZbMV07CiMgCiMgICAgICBkbGwgPSBvcGVuKGZpbGVu
YW1lLCBPX1JET05MWXxPX0JJTkFSWSk7CiMgICAgICBpZiAoIWRsbCkKIyAgCXJldHVybiAxOwoj
IAojICAgICAgZGxsX25hbWUgPSBmaWxlbmFtZTsKIyAgICAKIyAgICAgIGZvciAoaT0wOyBmaWxl
bmFtZVtpXTsgaSsrKQojICAJaWYgKGZpbGVuYW1lW2ldID09ICcvJyB8fCBmaWxlbmFtZVtpXSA9
PSAnXFwnICB8fCBmaWxlbmFtZVtpXSA9PSAnOicpCiMgIAkgICAgZGxsX25hbWUgPSBmaWxlbmFt
ZSArIGkgKzE7CiMgCiMgICAgICBwZV9oZWFkZXJfb2Zmc2V0ID0gcGVfZ2V0MzIgKGRsbCwgMHgz
Yyk7CiMgICAgICBvcHRoZHJfb2ZzID0gcGVfaGVhZGVyX29mZnNldCArIDQgKyAyMDsKIyAgICAg
IG51bV9lbnRyaWVzID0gcGVfZ2V0MzIgKGRsbCwgb3B0aGRyX29mcyArIDkyKTsKIyAKIyAgICAg
IGlmIChudW1fZW50cmllcyA8IDEpIC8qIG5vIGV4cG9ydHMgKi8KIyAgCXJldHVybiAxOwojIAoj
ICAgICAgZXhwb3J0X3J2YSA9IHBlX2dldDMyIChkbGwsIG9wdGhkcl9vZnMgKyA5Nik7CiMgICAg
ICBleHBvcnRfc2l6ZSA9IHBlX2dldDMyIChkbGwsIG9wdGhkcl9vZnMgKyAxMDApOwojICAgICAg
bnNlY3Rpb25zID0gcGVfZ2V0MTYgKGRsbCwgcGVfaGVhZGVyX29mZnNldCArIDQgKzIpOwojICAg
ICAgc2VjcHRyID0gKHBlX2hlYWRlcl9vZmZzZXQgKyA0ICsgMjAgKwojICAJICAgICAgcGVfZ2V0
MTYgKGRsbCwgcGVfaGVhZGVyX29mZnNldCArIDQgKyAxNikpOwojIAojICAgICAgZXhwcHRyID0g
MDsKIyAgICAgIGZvciAoaSA9IDA7IGkgPCBuc2VjdGlvbnM7IGkrKykKIyAgICAgIHsKIyAgCWNo
YXIgc25hbWVbOF07CiMgIAl1bnNpZ25lZCBsb25nIHNlY3B0cjEgPSBzZWNwdHIgKyA0MCAqIGk7
CiMgIAl1bnNpZ25lZCBsb25nIHZhZGRyID0gcGVfZ2V0MzIgKGRsbCwgc2VjcHRyMSArIDEyKTsK
IyAgCXVuc2lnbmVkIGxvbmcgdnNpemUgPSBwZV9nZXQzMiAoZGxsLCBzZWNwdHIxICsgMTYpOwoj
ICAJdW5zaWduZWQgbG9uZyBmcHRyID0gcGVfZ2V0MzIgKGRsbCwgc2VjcHRyMSArIDIwKTsKIyAg
CWxzZWVrKGRsbCwgc2VjcHRyMSwgU0VFS19TRVQpOwojICAJcmVhZChkbGwsIHNuYW1lLCA4KTsK
IyAgCWlmICh2YWRkciA8PSBleHBvcnRfcnZhICYmIHZhZGRyK3ZzaXplID4gZXhwb3J0X3J2YSkK
IyAgCXsKIyAgCSAgICBleHBwdHIgPSBmcHRyICsgKGV4cG9ydF9ydmEgLSB2YWRkcik7CiMgIAkg
ICAgaWYgKGV4cG9ydF9ydmEgKyBleHBvcnRfc2l6ZSA+IHZhZGRyICsgdnNpemUpCiMgIAkJZXhw
b3J0X3NpemUgPSB2c2l6ZSAtIChleHBvcnRfcnZhIC0gdmFkZHIpOwojICAJICAgIGJyZWFrOwoj
ICAJfQojICAgICAgfQojIAojICAgICAgZXhwZGF0YSA9ICh1bnNpZ25lZCBjaGFyKiltYWxsb2Mo
ZXhwb3J0X3NpemUpOwojICAgICAgbHNlZWsgKGRsbCwgZXhwcHRyLCBTRUVLX1NFVCk7CiMgICAg
ICByZWFkIChkbGwsIGV4cGRhdGEsIGV4cG9ydF9zaXplKTsKIyAgICAgIGVydmEgPSBleHBkYXRh
IC0gZXhwb3J0X3J2YTsKIyAKIyAgICAgIG5leHAgPSBwZV9hczMyIChleHBkYXRhKzI0KTsKIyAg
ICAgIG5hbWVfcnZhcyA9IHBlX2FzMzIgKGV4cGRhdGErMzIpOwojIAojICAgICAgcHJpbnRmICgi
RVhQT1JUU1xuIik7CiMgICAgICBmb3IgKGkgPSAwOyBpPG5leHA7IGkrKykKIyAgICAgIHsKIyAg
CXVuc2lnbmVkIGxvbmcgbmFtZV9ydmEgPSBwZV9hczMyIChlcnZhK25hbWVfcnZhcytpKjQpOwoj
ICAJcHJpbnRmICgiXHQlcyBAICVsZCA7XG4iLCBlcnZhK25hbWVfcnZhLCAxKyBpKTsKIyAgICAg
IH0KIyAKIyAgICAgIHJldHVybiAwOwojICB9CiMgLyogaW1wZ2VuLmMgZW5kcyBoZXJlICovCiAg
ICAgIDs7CiAgICAqKQogICAgICBhbGxvd191bmRlZmluZWQ9eWVzCiAgICAgIDs7CiAgICBlc2Fj
CiAgICBjb21waWxlX2NvbW1hbmQ9IiRub25vcHQiCiAgICBmaW5hbGl6ZV9jb21tYW5kPSIkbm9u
b3B0IgoKICAgIGNvbXBpbGVfcnBhdGg9CiAgICBmaW5hbGl6ZV9ycGF0aD0KICAgIGNvbXBpbGVf
c2hsaWJwYXRoPQogICAgZmluYWxpemVfc2hsaWJwYXRoPQogICAgY29udmVuaWVuY2U9CiAgICBv
bGRfY29udmVuaWVuY2U9CiAgICBkZXBsaWJzPQogICAgbGlua29wdHM9CgogICAgaWYgdGVzdCAt
biAiJHNobGlicGF0aF92YXIiOyB0aGVuCiAgICAgICMgZ2V0IHRoZSBkaXJlY3RvcmllcyBsaXN0
ZWQgaW4gJHNobGlicGF0aF92YXIKICAgICAgZXZhbCBsaWJfc2VhcmNoX3BhdGg9XGBcJGVjaG8g
XCJYIFwkeyRzaGxpYnBhdGhfdmFyfVwiIFx8IFwkWHNlZCAtZSBcJ3MvOi8gL2dcJ1xgCiAgICBl
bHNlCiAgICAgIGxpYl9zZWFyY2hfcGF0aD0KICAgIGZpCiAgICAjIG5vdyBwcmVwZW5kIHRoZSBz
eXN0ZW0tc3BlY2lmaWMgb25lcwogICAgZXZhbCBsaWJfc2VhcmNoX3BhdGg9XCIkc3lzX2xpYl9z
ZWFyY2hfcGF0aF9zcGVjXCRsaWJfc2VhcmNoX3BhdGhcIgogICAgZXZhbCBzeXNfbGliX2Rsc2Vh
cmNoX3BhdGg9XCIkc3lzX2xpYl9kbHNlYXJjaF9wYXRoX3NwZWNcIgogICAgCiAgICBhdm9pZF92
ZXJzaW9uPW5vCiAgICBkbGZpbGVzPQogICAgZGxwcmVmaWxlcz0KICAgIGRsc2VsZj1ubwogICAg
ZXhwb3J0X2R5bmFtaWM9bm8KICAgIGV4cG9ydF9zeW1ib2xzPQogICAgZXhwb3J0X3N5bWJvbHNf
cmVnZXg9CiAgICBnZW5lcmF0ZWQ9CiAgICBsaWJvYmpzPQogICAgbGlua19hZ2FpbnN0X2xpYnRv
b2xfbGlicz0KICAgIGx0bGlicz0KICAgIG1vZHVsZT1ubwogICAgb2Jqcz0KICAgIHByZWZlcl9z
dGF0aWNfbGlicz1ubwogICAgcHJlbG9hZD1ubwogICAgcHJldj0KICAgIHByZXZhcmc9CiAgICBy
ZWxlYXNlPQogICAgcnBhdGg9CiAgICB4cnBhdGg9CiAgICBwZXJtX3JwYXRoPQogICAgdGVtcF9y
cGF0aD0KICAgIHRocmVhZF9zYWZlPW5vCiAgICB2aW5mbz0KCiAgICAjIFdlIG5lZWQgdG8ga25v
dyAtc3RhdGljLCB0byBnZXQgdGhlIHJpZ2h0IG91dHB1dCBmaWxlbmFtZXMuCiAgICBmb3IgYXJn
CiAgICBkbwogICAgICBjYXNlICIkYXJnIiBpbgogICAgICAtYWxsLXN0YXRpYyB8IC1zdGF0aWMp
CglpZiB0ZXN0ICJYJGFyZyIgPSAiWC1hbGwtc3RhdGljIjsgdGhlbgoJICBpZiB0ZXN0ICIkYnVp
bGRfbGlidG9vbF9saWJzIiA9IHllcyAmJiB0ZXN0IC16ICIkbGlua19zdGF0aWNfZmxhZyI7IHRo
ZW4KCSAgICAkZWNobyAiJG1vZGVuYW1lOiB3YXJuaW5nOiBjb21wbGV0ZSBzdGF0aWMgbGlua2lu
ZyBpcyBpbXBvc3NpYmxlIGluIHRoaXMgY29uZmlndXJhdGlvbiIgMT4mMgoJICBmaQoJICBpZiB0
ZXN0IC1uICIkbGlua19zdGF0aWNfZmxhZyI7IHRoZW4KCSAgICBkbG9wZW5fc2VsZj0kZGxvcGVu
X3NlbGZfc3RhdGljCgkgIGZpCgllbHNlCgkgIGlmIHRlc3QgLXogIiRwaWNfZmxhZyIgJiYgdGVz
dCAtbiAiJGxpbmtfc3RhdGljX2ZsYWciOyB0aGVuCgkgICAgZGxvcGVuX3NlbGY9JGRsb3Blbl9z
ZWxmX3N0YXRpYwoJICBmaQoJZmkKCWJ1aWxkX2xpYnRvb2xfbGlicz1ubwoJYnVpbGRfb2xkX2xp
YnM9eWVzCglwcmVmZXJfc3RhdGljX2xpYnM9eWVzCglicmVhawoJOzsKICAgICAgZXNhYwogICAg
ZG9uZQoKICAgICMgU2VlIGlmIG91ciBzaGFyZWQgYXJjaGl2ZXMgZGVwZW5kIG9uIHN0YXRpYyBh
cmNoaXZlcy4KICAgIHRlc3QgLW4gIiRvbGRfYXJjaGl2ZV9mcm9tX25ld19jbWRzIiAmJiBidWls
ZF9vbGRfbGlicz15ZXMKCiAgICAjIEdvIHRocm91Z2ggdGhlIGFyZ3VtZW50cywgdHJhbnNmb3Jt
aW5nIHRoZW0gb24gdGhlIHdheS4KICAgIHdoaWxlIHRlc3QgJCMgLWd0IDA7IGRvCiAgICAgIGFy
Zz0iJDEiCiAgICAgIHNoaWZ0CgogICAgICAjIElmIHRoZSBwcmV2aW91cyBvcHRpb24gbmVlZHMg
YW4gYXJndW1lbnQsIGFzc2lnbiBpdC4KICAgICAgaWYgdGVzdCAtbiAiJHByZXYiOyB0aGVuCglj
YXNlICIkcHJldiIgaW4KCW91dHB1dCkKCSAgY29tcGlsZV9jb21tYW5kPSIkY29tcGlsZV9jb21t
YW5kIEBPVVRQVVRAIgoJICBmaW5hbGl6ZV9jb21tYW5kPSIkZmluYWxpemVfY29tbWFuZCBAT1VU
UFVUQCIKCSAgOzsKCWVzYWMKCgljYXNlICIkcHJldiIgaW4KCWRsZmlsZXN8ZGxwcmVmaWxlcykK
CSAgaWYgdGVzdCAiJHByZWxvYWQiID0gbm87IHRoZW4KCSAgICAjIEFkZCB0aGUgc3ltYm9sIG9i
amVjdCBpbnRvIHRoZSBsaW5raW5nIGNvbW1hbmRzLgoJICAgIGNvbXBpbGVfY29tbWFuZD0iJGNv
bXBpbGVfY29tbWFuZCBAU1lNRklMRUAiCgkgICAgZmluYWxpemVfY29tbWFuZD0iJGZpbmFsaXpl
X2NvbW1hbmQgQFNZTUZJTEVAIgoJICAgIHByZWxvYWQ9eWVzCgkgIGZpCgkgIGNhc2UgIiRhcmci
IGluCgkgICoubGEgfCAqLmxvKSA7OyAgIyBXZSBoYW5kbGUgdGhlc2UgY2FzZXMgYmVsb3cuCgkg
IGZvcmNlKQoJICAgIGlmIHRlc3QgIiRkbHNlbGYiID0gbm87IHRoZW4KCSAgICAgIGRsc2VsZj1u
ZWVkbGVzcwoJICAgICAgZXhwb3J0X2R5bmFtaWM9eWVzCgkgICAgZmkKCSAgICBwcmV2PQoJICAg
IGNvbnRpbnVlCgkgICAgOzsKCSAgc2VsZikKCSAgICBpZiB0ZXN0ICIkcHJldiIgPSBkbHByZWZp
bGVzOyB0aGVuCgkgICAgICBkbHNlbGY9eWVzCgkgICAgZWxpZiB0ZXN0ICIkcHJldiIgPSBkbGZp
bGVzICYmIHRlc3QgIiRkbG9wZW5fc2VsZiIgIT0geWVzOyB0aGVuCgkgICAgICBkbHNlbGY9eWVz
CgkgICAgZWxzZQoJICAgICAgZGxzZWxmPW5lZWRsZXNzCgkgICAgICBleHBvcnRfZHluYW1pYz15
ZXMKCSAgICBmaQoJICAgIHByZXY9CgkgICAgY29udGludWUKCSAgICA7OwoJICAqKQoJICAgIGlm
IHRlc3QgIiRwcmV2IiA9IGRsZmlsZXM7IHRoZW4KCSAgICAgIGRsZmlsZXM9IiRkbGZpbGVzICRh
cmciCgkgICAgZWxzZQoJICAgICAgZGxwcmVmaWxlcz0iJGRscHJlZmlsZXMgJGFyZyIKCSAgICBm
aQoJICAgIHByZXY9CgkgICAgOzsKCSAgZXNhYwoJICA7OwoJZXhwc3ltcykKCSAgZXhwb3J0X3N5
bWJvbHM9IiRhcmciCgkgIGlmIHRlc3QgISAtZiAiJGFyZyI7IHRoZW4KCSAgICAkZWNobyAiJG1v
ZGVuYW1lOiBzeW1ib2wgZmlsZSBcYCRhcmcnIGRvZXMgbm90IGV4aXN0IgoJICAgIGV4aXQgMQoJ
ICBmaQoJICBwcmV2PQoJICBjb250aW51ZQoJICA7OwoJZXhwc3ltc19yZWdleCkKCSAgZXhwb3J0
X3N5bWJvbHNfcmVnZXg9IiRhcmciCgkgIHByZXY9CgkgIGNvbnRpbnVlCgkgIDs7CglyZWxlYXNl
KQoJICBpZiB0ZXN0ICIkcmVsZWFzZV9zdWZmaXgiID0gYWxsOyB0aGVuCgkgICAgcmVsZWFzZT0i
JGFyZyIKCSAgZWxpZiB0ZXN0ICIkcmVsZWFzZV9zdWZmaXgiID0geWVzOyB0aGVuCgkgIHJlbGVh
c2U9Ii0kYXJnIgoJICBmaQoJICBwcmV2PQoJICBjb250aW51ZQoJICA7OwoJcnBhdGggfCB4cnBh
dGgpCgkgICMgV2UgbmVlZCBhbiBhYnNvbHV0ZSBwYXRoLgoJICBjYXNlICIkYXJnIiBpbgoJICBb
XFwvXSogfCBbQS1aYS16XTpbXFwvXSopIDs7CgkgICopCgkgICAgJGVjaG8gIiRtb2RlbmFtZTog
b25seSBhYnNvbHV0ZSBydW4tcGF0aHMgYXJlIGFsbG93ZWQiIDE+JjIKCSAgICBleGl0IDEKCSAg
ICA7OwoJICBlc2FjCgkgIGlmIHRlc3QgIiRwcmV2IiA9IHJwYXRoOyB0aGVuCgkgICAgY2FzZSAi
JHJwYXRoICIgaW4KCSAgICAqIiAkYXJnICIqKSA7OwoJICAgICopIHJwYXRoPSIkcnBhdGggJGFy
ZyIgOzsKCSAgICBlc2FjCgkgIGVsc2UKCSAgICBjYXNlICIkeHJwYXRoICIgaW4KCSAgICAqIiAk
YXJnICIqKSA7OwoJICAgICopIHhycGF0aD0iJHhycGF0aCAkYXJnIiA7OwoJICAgIGVzYWMKCSAg
ZmkKCSAgcHJldj0KCSAgY29udGludWUKCSAgOzsKCSopCgkgIGV2YWwgIiRwcmV2PVwiXCRhcmdc
IiIKCSAgcHJldj0KCSAgY29udGludWUKCSAgOzsKCWVzYWMKICAgICAgZmkKCiAgICAgIHByZXZh
cmc9IiRhcmciCgogICAgICBjYXNlICIkYXJnIiBpbgogICAgICAtYWxsLXN0YXRpYykKCWlmIHRl
c3QgLW4gIiRsaW5rX3N0YXRpY19mbGFnIjsgdGhlbgoJICBjb21waWxlX2NvbW1hbmQ9IiRjb21w
aWxlX2NvbW1hbmQgJGxpbmtfc3RhdGljX2ZsYWciCgkgIGZpbmFsaXplX2NvbW1hbmQ9IiRmaW5h
bGl6ZV9jb21tYW5kICRsaW5rX3N0YXRpY19mbGFnIgoJZmkKCWNvbnRpbnVlCgk7OwoKICAgICAg
LWFsbG93LXVuZGVmaW5lZCkKCSMgRklYTUU6IHJlbW92ZSB0aGlzIGZsYWcgc29tZXRpbWUgaW4g
dGhlIGZ1dHVyZS4KCSRlY2hvICIkbW9kZW5hbWU6IFxgLWFsbG93LXVuZGVmaW5lZCcgaXMgZGVw
cmVjYXRlZCBiZWNhdXNlIGl0IGlzIHRoZSBkZWZhdWx0IiAxPiYyCgljb250aW51ZQoJOzsKCiAg
ICAgIC1hdm9pZC12ZXJzaW9uKQoJYnVpbGRfb2xkX2xpYnM9bm8KCWF2b2lkX3ZlcnNpb249eWVz
Cgljb250aW51ZQoJOzsKCiAgICAgIC1kbG9wZW4pCglwcmV2PWRsZmlsZXMKCWNvbnRpbnVlCgk7
OwoKICAgICAgLWRscHJlb3BlbikKCXByZXY9ZGxwcmVmaWxlcwoJY29udGludWUKCTs7CgogICAg
ICAtZXhwb3J0LWR5bmFtaWMpCglleHBvcnRfZHluYW1pYz15ZXMKCWNvbnRpbnVlCgk7OwoKICAg
ICAgLWV4cG9ydC1zeW1ib2xzIHwgLWV4cG9ydC1zeW1ib2xzLXJlZ2V4KQoJaWYgdGVzdCAtbiAi
JGV4cG9ydF9zeW1ib2xzIiB8fCB0ZXN0IC1uICIkZXhwb3J0X3N5bWJvbHNfcmVnZXgiOyB0aGVu
CgkgICRlY2hvICIkbW9kZW5hbWU6IG5vdCBtb3JlIHRoYW4gb25lIC1leHBvcnRlZC1zeW1ib2xz
IGFyZ3VtZW50IGFsbG93ZWQiCgkgIGV4aXQgMQoJZmkKCWlmIHRlc3QgIlgkYXJnIiA9ICJYLWV4
cG9ydC1zeW1ib2xzIjsgdGhlbgoJICBwcmV2PWV4cHN5bXMKCWVsc2UKCSAgcHJldj1leHBzeW1z
X3JlZ2V4CglmaQoJY29udGludWUKCTs7CgogICAgICAtTCopCglkaXI9YCRlY2hvICJYJGFyZyIg
fCAkWHNlZCAtZSAncy9eLUwvLydgCgkjIFdlIG5lZWQgYW4gYWJzb2x1dGUgcGF0aC4KCWNhc2Ug
IiRkaXIiIGluCglbXFwvXSogfCBbQS1aYS16XTpbXFwvXSopIDs7CgkqKQoJICBhYnNkaXI9YGNk
ICIkZGlyIiAmJiBwd2RgCgkgIGlmIHRlc3QgLXogIiRhYnNkaXIiOyB0aGVuCgkgICAgJGVjaG8g
IiRtb2RlbmFtZTogd2FybmluZzogY2Fubm90IGRldGVybWluZSBhYnNvbHV0ZSBkaXJlY3Rvcnkg
bmFtZSBvZiBcYCRkaXInIiAxPiYyCgkgICAgJGVjaG8gIiRtb2RlbmFtZTogcGFzc2luZyBpdCBs
aXRlcmFsbHkgdG8gdGhlIGxpbmtlciwgYWx0aG91Z2ggaXQgbWlnaHQgZmFpbCIgMT4mMgoJICAg
IGFic2Rpcj0iJGRpciIKCSAgZmkKCSAgZGlyPSIkYWJzZGlyIgoJICA7OwoJZXNhYwoJY2FzZSAi
ICRkZXBsaWJzICIgaW4KCSoiICRhcmcgIiopIDs7CgkqKSBkZXBsaWJzPSIkZGVwbGlicyAkYXJn
Ijs7Cgllc2FjCgljYXNlICIgJGxpYl9zZWFyY2hfcGF0aCAiIGluCgkqIiAkZGlyICIqKSA7OwoJ
KikgbGliX3NlYXJjaF9wYXRoPSIkbGliX3NlYXJjaF9wYXRoICRkaXIiOzsKCWVzYWMKCWNhc2Ug
IiRob3N0IiBpbgoJKi0qLWN5Z3dpbiogfCAqLSotbWluZ3cqIHwgKi0qLW9zMiopCgkgIGRsbHNl
YXJjaGRpcj1gY2QgIiRkaXIiICYmIHB3ZCB8fCBlY2hvICIkZGlyImAKCSAgY2FzZSAiOiRkbGxz
ZWFyY2hwYXRoOiIgaW4KCSAgOjopIGRsbHNlYXJjaHBhdGg9IiRkbGxzZWFyY2hkaXIiOzsKCSAg
KiI6JGRsbHNlYXJjaGRpcjoiKikgOzsKCSAgKikgZGxsc2VhcmNocGF0aD0iJGRsbHNlYXJjaHBh
dGg6JGRsbHNlYXJjaGRpciI7OwoJICBlc2FjCgkgIDs7Cgllc2FjCgk7OwoKICAgICAgLWwqKQoJ
aWYgdGVzdCAiJGFyZyIgPSAiLWxjIjsgdGhlbgoJICBjYXNlICIkaG9zdCIgaW4KCSAgKi0qLWN5
Z3dpbiogfCAqLSotbWluZ3cqIHwgKi0qLW9zMiogfCAqLSotYmVvcyopCgkgICAgIyBUaGVzZSBz
eXN0ZW1zIGRvbid0IGFjdHVhbGx5IGhhdmUgYyBsaWJyYXJ5IChhcyBzdWNoKQoJICAgIGNvbnRp
bnVlCgkgICAgOzsKCSAgZXNhYwoJZWxpZiB0ZXN0ICIkYXJnIiA9ICItbG0iOyB0aGVuCgkgIGNh
c2UgIiRob3N0IiBpbgoJICAqLSotY3lnd2luKiB8ICotKi1iZW9zKikKCSAgICAjIFRoZXNlIHN5
c3RlbXMgZG9uJ3QgYWN0dWFsbHkgaGF2ZSBtYXRoIGxpYnJhcnkgKGFzIHN1Y2gpCgkgICAgY29u
dGludWUKCSAgICA7OwoJICBlc2FjCglmaQoJZGVwbGlicz0iJGRlcGxpYnMgJGFyZyIKCTs7Cgog
ICAgICAtP3RocmVhZCkKCWRlcGxpYnM9IiRkZXBsaWJzICRhcmciCgk7OwoKICAgICAgLW1vZHVs
ZSkKCW1vZHVsZT15ZXMKCWNvbnRpbnVlCgk7OwoKICAgICAgLW5vLXVuZGVmaW5lZCkKCWFsbG93
X3VuZGVmaW5lZD1ubwoJY29udGludWUKCTs7CgogICAgICAtbykgcHJldj1vdXRwdXQgOzsKCiAg
ICAgIC1yZWxlYXNlKQoJcHJldj1yZWxlYXNlCgljb250aW51ZQoJOzsKCiAgICAgIC1ycGF0aCkK
CXByZXY9cnBhdGgKCWNvbnRpbnVlCgk7OwoKICAgICAgLVIpCglwcmV2PXhycGF0aAoJY29udGlu
dWUKCTs7CgogICAgICAtUiopCglkaXI9YCRlY2hvICJYJGFyZyIgfCAkWHNlZCAtZSAncy9eLVIv
LydgCgkjIFdlIG5lZWQgYW4gYWJzb2x1dGUgcGF0aC4KCWNhc2UgIiRkaXIiIGluCglbXFwvXSog
fCBbQS1aYS16XTpbXFwvXSopIDs7CgkqKQoJICAkZWNobyAiJG1vZGVuYW1lOiBvbmx5IGFic29s
dXRlIHJ1bi1wYXRocyBhcmUgYWxsb3dlZCIgMT4mMgoJICBleGl0IDEKCSAgOzsKCWVzYWMKCWNh
c2UgIiR4cnBhdGggIiBpbgoJKiIgJGRpciAiKikgOzsKCSopIHhycGF0aD0iJHhycGF0aCAkZGly
IiA7OwoJZXNhYwoJY29udGludWUKCTs7CgogICAgICAtc3RhdGljKQoJIyBJZiB3ZSBoYXZlIG5v
IHBpY19mbGFnLCB0aGVuIHRoaXMgaXMgdGhlIHNhbWUgYXMgLWFsbC1zdGF0aWMuCglpZiB0ZXN0
IC16ICIkcGljX2ZsYWciICYmIHRlc3QgLW4gIiRsaW5rX3N0YXRpY19mbGFnIjsgdGhlbgoJICBj
b21waWxlX2NvbW1hbmQ9IiRjb21waWxlX2NvbW1hbmQgJGxpbmtfc3RhdGljX2ZsYWciCgkgIGZp
bmFsaXplX2NvbW1hbmQ9IiRmaW5hbGl6ZV9jb21tYW5kICRsaW5rX3N0YXRpY19mbGFnIgoJZmkK
CWNvbnRpbnVlCgk7OwoKICAgICAgLXRocmVhZC1zYWZlKQoJdGhyZWFkX3NhZmU9eWVzCgljb250
aW51ZQoJOzsKCiAgICAgIC12ZXJzaW9uLWluZm8pCglwcmV2PXZpbmZvCgljb250aW51ZQoJOzsK
CiAgICAgICMgU29tZSBvdGhlciBjb21waWxlciBmbGFnLgogICAgICAtKiB8ICsqKQoJIyBVbmtu
b3duIGFyZ3VtZW50cyBpbiBib3RoIGZpbmFsaXplX2NvbW1hbmQgYW5kIGNvbXBpbGVfY29tbWFu
ZCBuZWVkCgkjIHRvIGJlIGFlc3RoZXRpY2FsbHkgcXVvdGVkIGJlY2F1c2UgdGhleSBhcmUgZXZh
bGVkIGxhdGVyLgoJYXJnPWAkZWNobyAiWCRhcmciIHwgJFhzZWQgLWUgIiRzZWRfcXVvdGVfc3Vi
c3QiYAoJY2FzZSAiJGFyZyIgaW4KCSpbXFtcflwjXF5cJlwqXChcKVx7XH1cfFw7XDxcPlw/XCdc
IFwJXSp8Kl0qKQoJICBhcmc9IlwiJGFyZ1wiIgoJICA7OwoJZXNhYwoJOzsKCiAgICAgICoubyB8
ICoub2JqIHwgKi5hIHwgKi5saWIpCgkjIEEgc3RhbmRhcmQgb2JqZWN0LgoJbGlib2Jqcz0iJGxp
Ym9ianMgJGFyZyIKCTs7CgogICAgICAqLmxvKQoJIyBBIGxpYnJhcnkgb2JqZWN0LgoJaWYgdGVz
dCAiJHByZXYiID0gZGxmaWxlczsgdGhlbgoJICBkbGZpbGVzPSIkZGxmaWxlcyAkYXJnIgoJICBp
ZiB0ZXN0ICIkYnVpbGRfbGlidG9vbF9saWJzIiA9IHllcyAmJiB0ZXN0ICIkZGxvcGVuIiA9IHll
czsgdGhlbgoJICAgIHByZXY9CgkgICAgY29udGludWUKCSAgZWxzZQoJICAgICMgSWYgbGlidG9v
bCBvYmplY3RzIGFyZSB1bnN1cHBvcnRlZCwgdGhlbiB3ZSBuZWVkIHRvIHByZWxvYWQuCgkgICAg
cHJldj1kbHByZWZpbGVzCgkgIGZpCglmaQoKCWlmIHRlc3QgIiRwcmV2IiA9IGRscHJlZmlsZXM7
IHRoZW4KCSAgIyBQcmVsb2FkIHRoZSBvbGQtc3R5bGUgb2JqZWN0LgoJICBkbHByZWZpbGVzPSIk
ZGxwcmVmaWxlcyAiYCRlY2hvICJYJGFyZyIgfCAkWHNlZCAtZSAiJGxvMm8iYAoJICBwcmV2PQoJ
ZmkKCWxpYm9ianM9IiRsaWJvYmpzICRhcmciCgk7OwoKICAgICAgKi5sYSkKCSMgQSBsaWJ0b29s
LWNvbnRyb2xsZWQgbGlicmFyeS4KCglkbG5hbWU9CglsaWJkaXI9CglsaWJyYXJ5X25hbWVzPQoJ
b2xkX2xpYnJhcnk9CgoJIyBDaGVjayB0byBzZWUgdGhhdCB0aGlzIHJlYWxseSBpcyBhIGxpYnRv
b2wgYXJjaGl2ZS4KCWlmIChzZWQgLWUgJzJxJyAkYXJnIHwgZWdyZXAgIl4jIEdlbmVyYXRlZCBi
eSAuKiRQQUNLQUdFIikgPi9kZXYvbnVsbCAyPiYxOyB0aGVuIDoKCWVsc2UKCSAgJGVjaG8gIiRt
b2RlbmFtZTogXGAkYXJnJyBpcyBub3QgYSB2YWxpZCBsaWJ0b29sIGFyY2hpdmUiIDE+JjIKCSAg
ZXhpdCAxCglmaQoKCSMgSWYgdGhlIGxpYnJhcnkgd2FzIGluc3RhbGxlZCB3aXRoIGFuIG9sZCBy
ZWxlYXNlIG9mIGxpYnRvb2wsCgkjIGl0IHdpbGwgbm90IHJlZGVmaW5lIHZhcmlhYmxlIGluc3Rh
bGxlZC4KCWluc3RhbGxlZD15ZXMKCgkjIFJlYWQgdGhlIC5sYSBmaWxlCgkjIElmIHRoZXJlIGlz
IG5vIGRpcmVjdG9yeSBjb21wb25lbnQsIHRoZW4gYWRkIG9uZS4KCWNhc2UgIiRhcmciIGluCgkq
LyogfCAqXFwqKSAuICRhcmcgOzsKCSopIC4gLi8kYXJnIDs7Cgllc2FjCgoJIyBHZXQgdGhlIG5h
bWUgb2YgdGhlIGxpYnJhcnkgd2UgbGluayBhZ2FpbnN0LgoJbGlua2xpYj0KCWZvciBsIGluICRv
bGRfbGlicmFyeSAkbGlicmFyeV9uYW1lczsgZG8KCSAgbGlua2xpYj0iJGwiCglkb25lCgoJaWYg
dGVzdCAteiAiJGxpbmtsaWIiOyB0aGVuCgkgICRlY2hvICIkbW9kZW5hbWU6IGNhbm5vdCBmaW5k
IG5hbWUgb2YgbGluayBsaWJyYXJ5IGZvciBcYCRhcmcnIiAxPiYyCgkgIGV4aXQgMQoJZmkKCgkj
IEZpbmQgdGhlIHJlbGV2YW50IG9iamVjdCBkaXJlY3RvcnkgYW5kIGxpYnJhcnkgbmFtZS4KCW5h
bWU9YCRlY2hvICJYJGFyZyIgfCAkWHNlZCAtZSAncyVeLiovJSUnIC1lICdzL1wubGEkLy8nIC1l
ICdzL15saWIvLydgCgoJaWYgdGVzdCAiWCRpbnN0YWxsZWQiID0gWHllczsgdGhlbgoJICBkaXI9
IiRsaWJkaXIiCgllbHNlCgkgIGRpcj1gJGVjaG8gIlgkYXJnIiB8ICRYc2VkIC1lICdzJS9bXi9d
KiQlJSdgCgkgIGlmIHRlc3QgIlgkZGlyIiA9ICJYJGFyZyI7IHRoZW4KCSAgICBkaXI9IiRvYmpk
aXIiCgkgIGVsc2UKCSAgICBkaXI9IiRkaXIvJG9iamRpciIKCSAgZmkKCWZpCgoJaWYgdGVzdCAt
biAiJGRlcGVuZGVuY3lfbGlicyI7IHRoZW4KCSAgIyBFeHRyYWN0IC1SIGFuZCAtTCBmcm9tIGRl
cGVuZGVuY3lfbGlicwoJICB0ZW1wX2RlcGxpYnM9CgkgIGZvciBkZXBsaWIgaW4gJGRlcGVuZGVu
Y3lfbGliczsgZG8KCSAgICBjYXNlICIkZGVwbGliIiBpbgoJICAgIC1SKikgdGVtcF94cnBhdGg9
YCRlY2hvICJYJGRlcGxpYiIgfCAkWHNlZCAtZSAncy9eLVIvLydgCgkJIGNhc2UgIiAkcnBhdGgg
JHhycGF0aCAiIGluCgkJICoiICR0ZW1wX3hycGF0aCAiKikgOzsKCQkgKikgeHJwYXRoPSIkeHJw
YXRoICR0ZW1wX3hycGF0aCI7OwoJCSBlc2FjOzsKCSAgICAtTCopIGNhc2UgIiRjb21waWxlX2Nv
bW1hbmQgJHRlbXBfZGVwbGlicyAiIGluCgkJICoiICRkZXBsaWIgIiopIDs7CgkJICopIHRlbXBf
ZGVwbGlicz0iJHRlbXBfZGVwbGlicyAkZGVwbGliIjs7CgkJIGVzYWMKCQkgdGVtcF9kaXI9YCRl
Y2hvICJYJGRlcGxpYiIgfCAkWHNlZCAtZSAncy9eLUwvLydgCgkJIGNhc2UgIiAkbGliX3NlYXJj
aF9wYXRoICIgaW4KCQkgKiIgJHRlbXBfZGlyICIqKSA7OwoJCSAqKSBsaWJfc2VhcmNoX3BhdGg9
IiRsaWJfc2VhcmNoX3BhdGggJHRlbXBfZGlyIjs7CgkJIGVzYWMKCQkgOzsKCSAgICAqKSB0ZW1w
X2RlcGxpYnM9IiR0ZW1wX2RlcGxpYnMgJGRlcGxpYiI7OwoJICAgIGVzYWMKCSAgZG9uZQoJICBk
ZXBlbmRlbmN5X2xpYnM9IiR0ZW1wX2RlcGxpYnMiCglmaQoKCWlmIHRlc3QgLXogIiRsaWJkaXIi
OyB0aGVuCgkgICMgSXQgaXMgYSBsaWJ0b29sIGNvbnZlbmllbmNlIGxpYnJhcnksIHNvIGFkZCBp
biBpdHMgb2JqZWN0cy4KCSAgY29udmVuaWVuY2U9IiRjb252ZW5pZW5jZSAkZGlyLyRvbGRfbGli
cmFyeSIKCSAgb2xkX2NvbnZlbmllbmNlPSIkb2xkX2NvbnZlbmllbmNlICRkaXIvJG9sZF9saWJy
YXJ5IgoJICBkZXBsaWJzPSIkZGVwbGlicyRkZXBlbmRlbmN5X2xpYnMiCgkgIGNvbXBpbGVfY29t
bWFuZD0iJGNvbXBpbGVfY29tbWFuZCAkZGlyLyRvbGRfbGlicmFyeSRkZXBlbmRlbmN5X2xpYnMi
CgkgIGZpbmFsaXplX2NvbW1hbmQ9IiRmaW5hbGl6ZV9jb21tYW5kICRkaXIvJG9sZF9saWJyYXJ5
JGRlcGVuZGVuY3lfbGlicyIKCSAgY29udGludWUKCWZpCgoJIyBUaGlzIGxpYnJhcnkgd2FzIHNw
ZWNpZmllZCB3aXRoIC1kbG9wZW4uCglpZiB0ZXN0ICIkcHJldiIgPSBkbGZpbGVzOyB0aGVuCgkg
IGRsZmlsZXM9IiRkbGZpbGVzICRhcmciCgkgIGlmIHRlc3QgLXogIiRkbG5hbWUiIHx8IHRlc3Qg
IiRkbG9wZW4iICE9IHllcyB8fCB0ZXN0ICIkYnVpbGRfbGlidG9vbF9saWJzIiA9IG5vOyB0aGVu
CgkgICAgIyBJZiB0aGVyZSBpcyBubyBkbG5hbWUsIG5vIGRsb3BlbiBzdXBwb3J0IG9yIHdlJ3Jl
IGxpbmtpbmcgc3RhdGljYWxseSwKCSAgICAjIHdlIG5lZWQgdG8gcHJlbG9hZC4KCSAgICBwcmV2
PWRscHJlZmlsZXMKCSAgZWxzZQoJICAgICMgV2Ugc2hvdWxkIG5vdCBjcmVhdGUgYSBkZXBlbmRl
bmN5IG9uIHRoaXMgbGlicmFyeSwgYnV0IHdlCgkgICAgIyBtYXkgbmVlZCBhbnkgbGlicmFyaWVz
IGl0IHJlcXVpcmVzLgoJICAgIGNvbXBpbGVfY29tbWFuZD0iJGNvbXBpbGVfY29tbWFuZCRkZXBl
bmRlbmN5X2xpYnMiCgkgICAgZmluYWxpemVfY29tbWFuZD0iJGZpbmFsaXplX2NvbW1hbmQkZGVw
ZW5kZW5jeV9saWJzIgoJICAgIHByZXY9CgkgICAgY29udGludWUKCSAgZmkKCWZpCgoJIyBUaGUg
bGlicmFyeSB3YXMgc3BlY2lmaWVkIHdpdGggLWRscHJlb3Blbi4KCWlmIHRlc3QgIiRwcmV2IiA9
IGRscHJlZmlsZXM7IHRoZW4KCSAgIyBQcmVmZXIgdXNpbmcgYSBzdGF0aWMgbGlicmFyeSAoc28g
dGhhdCBubyBzaWxseSBfRFlOQU1JQyBzeW1ib2xzCgkgICMgYXJlIHJlcXVpcmVkIHRvIGxpbmsp
LgoJICBpZiB0ZXN0IC1uICIkb2xkX2xpYnJhcnkiOyB0aGVuCgkgICAgZGxwcmVmaWxlcz0iJGRs
cHJlZmlsZXMgJGRpci8kb2xkX2xpYnJhcnkiCgkgIGVsc2UKCSAgICBkbHByZWZpbGVzPSIkZGxw
cmVmaWxlcyAkZGlyLyRsaW5rbGliIgoJICBmaQoJICBwcmV2PQoJZmkKCglpZiB0ZXN0IC1uICIk
bGlicmFyeV9uYW1lcyIgJiYKCSAgIHsgdGVzdCAiJHByZWZlcl9zdGF0aWNfbGlicyIgPSBubyB8
fCB0ZXN0IC16ICIkb2xkX2xpYnJhcnkiOyB9OyB0aGVuCgkgIGxpbmtfYWdhaW5zdF9saWJ0b29s
X2xpYnM9IiRsaW5rX2FnYWluc3RfbGlidG9vbF9saWJzICRhcmciCgkgIGlmIHRlc3QgLW4gIiRz
aGxpYnBhdGhfdmFyIjsgdGhlbgoJICAgICMgTWFrZSBzdXJlIHRoZSBycGF0aCBjb250YWlucyBv
bmx5IHVuaXF1ZSBkaXJlY3Rvcmllcy4KCSAgICBjYXNlICIkdGVtcF9ycGF0aCAiIGluCgkgICAg
KiIgJGRpciAiKikgOzsKCSAgICAqKSB0ZW1wX3JwYXRoPSIkdGVtcF9ycGF0aCAkZGlyIiA7OwoJ
ICAgIGVzYWMKCSAgZmkKCgkgICMgV2UgbmVlZCBhbiBhYnNvbHV0ZSBwYXRoLgoJICBjYXNlICIk
ZGlyIiBpbgoJICBbXFwvXSB8IFtBLVphLXpdOltcXC9dKikgYWJzZGlyPSIkZGlyIiA7OwoJICAq
KQoJICAgIGFic2Rpcj1gY2QgIiRkaXIiICYmIHB3ZGAKCSAgICBpZiB0ZXN0IC16ICIkYWJzZGly
IjsgdGhlbgoJICAgICAgJGVjaG8gIiRtb2RlbmFtZTogd2FybmluZzogY2Fubm90IGRldGVybWlu
ZSBhYnNvbHV0ZSBkaXJlY3RvcnkgbmFtZSBvZiBcYCRkaXInIiAxPiYyCgkgICAgICAkZWNobyAi
JG1vZGVuYW1lOiBwYXNzaW5nIGl0IGxpdGVyYWxseSB0byB0aGUgbGlua2VyLCBhbHRob3VnaCBp
dCBtaWdodCBmYWlsIiAxPiYyCgkgICAgICBhYnNkaXI9IiRkaXIiCgkgICAgZmkKCSAgICA7OwoJ
ICBlc2FjCgkgIAoJICAjIFRoaXMgaXMgdGhlIG1hZ2ljIHRvIHVzZSAtcnBhdGguCgkgICMgU2tp
cCBkaXJlY3RvcmllcyB0aGF0IGFyZSBpbiB0aGUgc3lzdGVtIGRlZmF1bHQgcnVuLXRpbWUKCSAg
IyBzZWFyY2ggcGF0aCwgdW5sZXNzIHRoZXkgaGF2ZSBiZWVuIHJlcXVlc3RlZCB3aXRoIC1SLgoJ
ICBjYXNlICIgJHN5c19saWJfZGxzZWFyY2hfcGF0aCAiIGluCgkgICoiICRhYnNkaXIgIiopIDs7
CgkgICopCgkgICAgY2FzZSAiJGNvbXBpbGVfcnBhdGggIiBpbgoJICAgICoiICRhYnNkaXIgIiop
IDs7CgkgICAgKikgY29tcGlsZV9ycGF0aD0iJGNvbXBpbGVfcnBhdGggJGFic2RpciIgCgkgICAg
ZXNhYwoJICAgIDs7CgkgIGVzYWMKCgkgIGNhc2UgIiAkc3lzX2xpYl9kbHNlYXJjaF9wYXRoICIg
aW4KCSAgKiIgJGxpYmRpciAiKikgOzsKCSAgKikKCSAgICBjYXNlICIkZmluYWxpemVfcnBhdGgg
IiBpbgoJICAgICoiICRsaWJkaXIgIiopIDs7CgkgICAgKikgZmluYWxpemVfcnBhdGg9IiRmaW5h
bGl6ZV9ycGF0aCAkbGliZGlyIgoJICAgIGVzYWMKCSAgICA7OwoJICBlc2FjCgoJICBsaWJfbGlu
a2VkPXllcwoJICBjYXNlICIkaGFyZGNvZGVfYWN0aW9uIiBpbgoJICBpbW1lZGlhdGUgfCB1bnN1
cHBvcnRlZCkKCSAgICBpZiB0ZXN0ICIkaGFyZGNvZGVfZGlyZWN0IiA9IG5vOyB0aGVuCgkgICAg
ICBjb21waWxlX2NvbW1hbmQ9IiRjb21waWxlX2NvbW1hbmQgJGRpci8kbGlua2xpYiIKCSAgICAg
IGRlcGxpYnM9IiRkZXBsaWJzICRkaXIvJGxpbmtsaWIiCgkgICAgICBjYXNlICIkaG9zdCIgaW4K
CSAgICAgICotKi1jeWd3aW4qIHwgKi0qLW1pbmd3KiB8ICotKi1vczIqKQoJCWRsbHNlYXJjaGRp
cj1gY2QgIiRkaXIiICYmIHB3ZCB8fCBlY2hvICIkZGlyImAKCQlpZiB0ZXN0IC1uICIkZGxsc2Vh
cmNocGF0aCI7IHRoZW4KCQkgIGRsbHNlYXJjaHBhdGg9IiRkbGxzZWFyY2hwYXRoOiRkbGxzZWFy
Y2hkaXIiCgkJZWxzZQoJCSAgZGxsc2VhcmNocGF0aD0iJGRsbHNlYXJjaGRpciIKCQlmaQoJCTs7
CgkgICAgICBlc2FjCgkgICAgZWxpZiB0ZXN0ICIkaGFyZGNvZGVfbWludXNfTCIgPSBubzsgdGhl
bgoJICAgICAgY2FzZSAiJGhvc3QiIGluCgkgICAgICAqLSotc3Vub3MqKQoJCWNvbXBpbGVfc2hs
aWJwYXRoPSIkY29tcGlsZV9zaGxpYnBhdGgkZGlyOiIKCQk7OwoJICAgICAgZXNhYwoJICAgICAg
Y2FzZSAiJGNvbXBpbGVfY29tbWFuZCAiIGluCgkgICAgICAqIiAtTCRkaXIgIiopIDs7CgkgICAg
ICAqKSBjb21waWxlX2NvbW1hbmQ9IiRjb21waWxlX2NvbW1hbmQgLUwkZGlyIjs7CgkgICAgICBl
c2FjCgkgICAgICBjb21waWxlX2NvbW1hbmQ9IiRjb21waWxlX2NvbW1hbmQgLWwkbmFtZSIKCSAg
ICAgIGRlcGxpYnM9IiRkZXBsaWJzIC1MJGRpciAtbCRuYW1lIgoJICAgIGVsaWYgdGVzdCAiJGhh
cmRjb2RlX3NobGlicGF0aF92YXIiID0gbm87IHRoZW4KCSAgICAgIGNhc2UgIjokY29tcGlsZV9z
aGxpYnBhdGg6IiBpbgoJICAgICAgKiI6JGRpcjoiKikgOzsKCSAgICAgICopIGNvbXBpbGVfc2hs
aWJwYXRoPSIkY29tcGlsZV9zaGxpYnBhdGgkZGlyOiI7OwoJICAgICAgZXNhYwoJICAgICAgY29t
cGlsZV9jb21tYW5kPSIkY29tcGlsZV9jb21tYW5kIC1sJG5hbWUiCgkgICAgICBkZXBsaWJzPSIk
ZGVwbGlicyAtbCRuYW1lIgoJICAgIGVsc2UKCSAgICAgIGxpYl9saW5rZWQ9bm8KCSAgICBmaQoJ
ICAgIDs7CgoJICByZWxpbmspCgkgICAgaWYgdGVzdCAiJGhhcmRjb2RlX2RpcmVjdCIgPSB5ZXM7
IHRoZW4KCSAgICAgIGNvbXBpbGVfY29tbWFuZD0iJGNvbXBpbGVfY29tbWFuZCAkYWJzZGlyLyRs
aW5rbGliIgoJICAgICAgZGVwbGlicz0iJGRlcGxpYnMgJGFic2Rpci8kbGlua2xpYiIKCSAgICBl
bGlmIHRlc3QgIiRoYXJkY29kZV9taW51c19MIiA9IHllczsgdGhlbgoJICAgICAgY2FzZSAiJGNv
bXBpbGVfY29tbWFuZCAiIGluCgkgICAgICAqIiAtTCRhYnNkaXIgIiopIDs7CgkgICAgICAqKSBj
b21waWxlX2NvbW1hbmQ9IiRjb21waWxlX2NvbW1hbmQgLUwkYWJzZGlyIjs7CgkgICAgICBlc2Fj
CgkgICAgICBjb21waWxlX2NvbW1hbmQ9IiRjb21waWxlX2NvbW1hbmQgLWwkbmFtZSIKCSAgICAg
IGRlcGxpYnM9IiRkZXBsaWJzIC1MJGFic2RpciAtbCRuYW1lIgoJICAgIGVsaWYgdGVzdCAiJGhh
cmRjb2RlX3NobGlicGF0aF92YXIiID0geWVzOyB0aGVuCgkgICAgICBjYXNlICI6JGNvbXBpbGVf
c2hsaWJwYXRoOiIgaW4KCSAgICAgICoiOiRhYnNkaXI6IiopIDs7CgkgICAgICAqKSBjb21waWxl
X3NobGlicGF0aD0iJGNvbXBpbGVfc2hsaWJwYXRoJGFic2RpcjoiOzsKCSAgICAgIGVzYWMKCSAg
ICAgIGNvbXBpbGVfY29tbWFuZD0iJGNvbXBpbGVfY29tbWFuZCAtbCRuYW1lIgoJICAgICAgZGVw
bGlicz0iJGRlcGxpYnMgLWwkbmFtZSIKCSAgICBlbHNlCgkgICAgICBsaWJfbGlua2VkPW5vCgkg
ICAgZmkKCSAgICA7OwoKCSAgKikKCSAgICBsaWJfbGlua2VkPW5vCgkgICAgOzsKCSAgZXNhYwoK
CSAgaWYgdGVzdCAiJGxpYl9saW5rZWQiICE9IHllczsgdGhlbgoJICAgICRlY2hvICIkbW9kZW5h
bWU6IGNvbmZpZ3VyYXRpb24gZXJyb3I6IHVuc3VwcG9ydGVkIGhhcmRjb2RlIHByb3BlcnRpZXMi
CgkgICAgZXhpdCAxCgkgIGZpCgoJICAjIEZpbmFsaXplIGNvbW1hbmQgZm9yIGJvdGggaXMgc2lt
cGxlOiBqdXN0IGhhcmRjb2RlIGl0LgoJICBpZiB0ZXN0ICIkaGFyZGNvZGVfZGlyZWN0IiA9IHll
czsgdGhlbgoJICAgIGZpbmFsaXplX2NvbW1hbmQ9IiRmaW5hbGl6ZV9jb21tYW5kICRsaWJkaXIv
JGxpbmtsaWIiCgkgIGVsaWYgdGVzdCAiJGhhcmRjb2RlX21pbnVzX0wiID0geWVzOyB0aGVuCgkg
ICAgY2FzZSAiJGZpbmFsaXplX2NvbW1hbmQgIiBpbgoJICAgICoiIC1MJGxpYmRpciAiKikgOzsK
CSAgICAqKSBmaW5hbGl6ZV9jb21tYW5kPSIkZmluYWxpemVfY29tbWFuZCAtTCRsaWJkaXIiOzsK
CSAgICBlc2FjCgkgICAgZmluYWxpemVfY29tbWFuZD0iJGZpbmFsaXplX2NvbW1hbmQgLWwkbmFt
ZSIKCSAgZWxpZiB0ZXN0ICIkaGFyZGNvZGVfc2hsaWJwYXRoX3ZhciIgPSB5ZXM7IHRoZW4KCSAg
ICBjYXNlICI6JGZpbmFsaXplX3NobGlicGF0aDoiIGluCgkgICAgKiI6JGxpYmRpcjoiKikgOzsK
CSAgICAqKSBmaW5hbGl6ZV9zaGxpYnBhdGg9IiRmaW5hbGl6ZV9zaGxpYnBhdGgkbGliZGlyOiI7
OwoJICAgIGVzYWMKCSAgICBmaW5hbGl6ZV9jb21tYW5kPSIkZmluYWxpemVfY29tbWFuZCAtbCRu
YW1lIgoJICBlbHNlCgkgICAgIyBXZSBjYW5ub3Qgc2VlbSB0byBoYXJkY29kZSBpdCwgZ3Vlc3Mg
d2UnbGwgZmFrZSBpdC4KCSAgICBjYXNlICIkZmluYWxpemVfY29tbWFuZCAiIGluCgkgICAgKiIg
LUwkZGlyICIqKSA7OwoJICAgICopIGZpbmFsaXplX2NvbW1hbmQ9IiRmaW5hbGl6ZV9jb21tYW5k
IC1MJGxpYmRpciI7OwoJICAgIGVzYWMKCSAgICBmaW5hbGl6ZV9jb21tYW5kPSIkZmluYWxpemVf
Y29tbWFuZCAtbCRuYW1lIgoJICBmaQoJZWxzZQoJICAjIFRyYW5zZm9ybSBkaXJlY3RseSB0byBv
bGQgYXJjaGl2ZXMgaWYgd2UgZG9uJ3QgYnVpbGQgbmV3IGxpYnJhcmllcy4KCSAgaWYgdGVzdCAt
biAiJHBpY19mbGFnIiAmJiB0ZXN0IC16ICIkb2xkX2xpYnJhcnkiOyB0aGVuCgkgICAgJGVjaG8g
IiRtb2RlbmFtZTogY2Fubm90IGZpbmQgc3RhdGljIGxpYnJhcnkgZm9yIFxgJGFyZyciIDE+JjIK
CSAgICBleGl0IDEKCSAgZmkKCgkgICMgSGVyZSB3ZSBhc3N1bWUgdGhhdCBvbmUgb2YgaGFyZGNv
ZGVfZGlyZWN0IG9yIGhhcmRjb2RlX21pbnVzX0wKCSAgIyBpcyBub3QgdW5zdXBwb3J0ZWQuICBU
aGlzIGlzIHZhbGlkIG9uIGFsbCBrbm93biBzdGF0aWMgYW5kCgkgICMgc2hhcmVkIHBsYXRmb3Jt
cy4KCSAgaWYgdGVzdCAiJGhhcmRjb2RlX2RpcmVjdCIgIT0gdW5zdXBwb3J0ZWQ7IHRoZW4KCSAg
ICB0ZXN0IC1uICIkb2xkX2xpYnJhcnkiICYmIGxpbmtsaWI9IiRvbGRfbGlicmFyeSIKCSAgICBj
b21waWxlX2NvbW1hbmQ9IiRjb21waWxlX2NvbW1hbmQgJGRpci8kbGlua2xpYiIKCSAgICBmaW5h
bGl6ZV9jb21tYW5kPSIkZmluYWxpemVfY29tbWFuZCAkZGlyLyRsaW5rbGliIgoJICBlbHNlCgkg
ICAgY2FzZSAiJGNvbXBpbGVfY29tbWFuZCAiIGluCgkgICAgKiIgLUwkZGlyICIqKSA7OwoJICAg
ICopIGNvbXBpbGVfY29tbWFuZD0iJGNvbXBpbGVfY29tbWFuZCAtTCRkaXIiOzsKCSAgICBlc2Fj
CgkgICAgY29tcGlsZV9jb21tYW5kPSIkY29tcGlsZV9jb21tYW5kIC1sJG5hbWUiCgkgICAgY2Fz
ZSAiJGZpbmFsaXplX2NvbW1hbmQgIiBpbgoJICAgICoiIC1MJGRpciAiKikgOzsKCSAgICAqKSBm
aW5hbGl6ZV9jb21tYW5kPSIkZmluYWxpemVfY29tbWFuZCAtTCRkaXIiOzsKCSAgICBlc2FjCgkg
ICAgZmluYWxpemVfY29tbWFuZD0iJGZpbmFsaXplX2NvbW1hbmQgLWwkbmFtZSIKCSAgZmkKCWZp
CgoJIyBBZGQgaW4gYW55IGxpYnJhcmllcyB0aGF0IHRoaXMgb25lIGRlcGVuZHMgdXBvbi4KCWNv
bXBpbGVfY29tbWFuZD0iJGNvbXBpbGVfY29tbWFuZCRkZXBlbmRlbmN5X2xpYnMiCglmaW5hbGl6
ZV9jb21tYW5kPSIkZmluYWxpemVfY29tbWFuZCRkZXBlbmRlbmN5X2xpYnMiCgljb250aW51ZQoJ
OzsKCiAgICAgICMgU29tZSBvdGhlciBjb21waWxlciBhcmd1bWVudC4KICAgICAgKikKCSMgVW5r
bm93biBhcmd1bWVudHMgaW4gYm90aCBmaW5hbGl6ZV9jb21tYW5kIGFuZCBjb21waWxlX2NvbW1h
bmQgbmVlZAoJIyB0byBiZSBhZXN0aGV0aWNhbGx5IHF1b3RlZCBiZWNhdXNlIHRoZXkgYXJlIGV2
YWxlZCBsYXRlci4KCWFyZz1gJGVjaG8gIlgkYXJnIiB8ICRYc2VkIC1lICIkc2VkX3F1b3RlX3N1
YnN0ImAKCWNhc2UgIiRhcmciIGluCgkqW1xbXH5cI1xeXCZcKlwoXClce1x9XHxcO1w8XD5cP1wn
XCBcCV0qfCpdKikKCSAgYXJnPSJcIiRhcmdcIiIKCSAgOzsKCWVzYWMKCTs7CiAgICAgIGVzYWMK
CiAgICAgICMgTm93IGFjdHVhbGx5IHN1YnN0aXR1dGUgdGhlIGFyZ3VtZW50IGludG8gdGhlIGNv
bW1hbmRzLgogICAgICBpZiB0ZXN0IC1uICIkYXJnIjsgdGhlbgoJY29tcGlsZV9jb21tYW5kPSIk
Y29tcGlsZV9jb21tYW5kICRhcmciCglmaW5hbGl6ZV9jb21tYW5kPSIkZmluYWxpemVfY29tbWFu
ZCAkYXJnIgogICAgICBmaQogICAgZG9uZQoKICAgIGlmIHRlc3QgLW4gIiRwcmV2IjsgdGhlbgog
ICAgICAkZWNobyAiJG1vZGVuYW1lOiB0aGUgXGAkcHJldmFyZycgb3B0aW9uIHJlcXVpcmVzIGFu
IGFyZ3VtZW50IiAxPiYyCiAgICAgICRlY2hvICIkaGVscCIgMT4mMgogICAgICBleGl0IDEKICAg
IGZpCgogICAgaWYgdGVzdCAiJGV4cG9ydF9keW5hbWljIiA9IHllcyAmJiB0ZXN0IC1uICIkZXhw
b3J0X2R5bmFtaWNfZmxhZ19zcGVjIjsgdGhlbgogICAgICBldmFsIGFyZz1cIiRleHBvcnRfZHlu
YW1pY19mbGFnX3NwZWNcIgogICAgICBjb21waWxlX2NvbW1hbmQ9IiRjb21waWxlX2NvbW1hbmQg
JGFyZyIKICAgICAgZmluYWxpemVfY29tbWFuZD0iJGZpbmFsaXplX2NvbW1hbmQgJGFyZyIKICAg
IGZpCgogICAgb2xkbGlicz0KICAgICMgY2FsY3VsYXRlIHRoZSBuYW1lIG9mIHRoZSBmaWxlLCB3
aXRob3V0IGl0cyBkaXJlY3RvcnkKICAgIG91dHB1dG5hbWU9YCRlY2hvICJYJG91dHB1dCIgfCAk
WHNlZCAtZSAncyVeLiovJSUnYAogICAgbGlib2Jqc19zYXZlPSIkbGlib2JqcyIKCiAgICBjYXNl
ICIkb3V0cHV0IiBpbgogICAgIiIpCiAgICAgICRlY2hvICIkbW9kZW5hbWU6IHlvdSBtdXN0IHNw
ZWNpZnkgYW4gb3V0cHV0IGZpbGUiIDE+JjIKICAgICAgJGVjaG8gIiRoZWxwIiAxPiYyCiAgICAg
IGV4aXQgMQogICAgICA7OwoKICAgICouYSB8ICoubGliKQogICAgICBpZiB0ZXN0IC1uICIkbGlu
a19hZ2FpbnN0X2xpYnRvb2xfbGlicyI7IHRoZW4KCSRlY2hvICIkbW9kZW5hbWU6IGVycm9yOiBj
YW5ub3QgbGluayBsaWJ0b29sIGxpYnJhcmllcyBpbnRvIGFyY2hpdmVzIiAxPiYyCglleGl0IDEK
ICAgICAgZmkKCiAgICAgIGlmIHRlc3QgLW4gIiRkZXBsaWJzIjsgdGhlbgoJJGVjaG8gIiRtb2Rl
bmFtZTogd2FybmluZzogXGAtbCcgYW5kIFxgLUwnIGFyZSBpZ25vcmVkIGZvciBhcmNoaXZlcyIg
MT4mMgogICAgICBmaQoKICAgICAgaWYgdGVzdCAtbiAiJGRsZmlsZXMkZGxwcmVmaWxlcyIgfHwg
dGVzdCAiJGRsc2VsZiIgIT0gbm87IHRoZW4KCSRlY2hvICIkbW9kZW5hbWU6IHdhcm5pbmc6IFxg
LWRsb3BlbicgaXMgaWdub3JlZCBmb3IgYXJjaGl2ZXMiIDE+JjIKICAgICAgZmkKCiAgICAgIGlm
IHRlc3QgLW4gIiRycGF0aCI7IHRoZW4KCSRlY2hvICIkbW9kZW5hbWU6IHdhcm5pbmc6IFxgLXJw
YXRoJyBpcyBpZ25vcmVkIGZvciBhcmNoaXZlcyIgMT4mMgogICAgICBmaQoKICAgICAgaWYgdGVz
dCAtbiAiJHhycGF0aCI7IHRoZW4KCSRlY2hvICIkbW9kZW5hbWU6IHdhcm5pbmc6IFxgLVInIGlz
IGlnbm9yZWQgZm9yIGFyY2hpdmVzIiAxPiYyCiAgICAgIGZpCgogICAgICBpZiB0ZXN0IC1uICIk
dmluZm8iOyB0aGVuCgkkZWNobyAiJG1vZGVuYW1lOiB3YXJuaW5nOiBcYC12ZXJzaW9uLWluZm8n
IGlzIGlnbm9yZWQgZm9yIGFyY2hpdmVzIiAxPiYyCiAgICAgIGZpCgogICAgICBpZiB0ZXN0IC1u
ICIkcmVsZWFzZSI7IHRoZW4KCSRlY2hvICIkbW9kZW5hbWU6IHdhcm5pbmc6IFxgLXJlbGVhc2Un
IGlzIGlnbm9yZWQgZm9yIGFyY2hpdmVzIiAxPiYyCiAgICAgIGZpCgogICAgICBpZiB0ZXN0IC1u
ICIkZXhwb3J0X3N5bWJvbHMiIHx8IHRlc3QgLW4gIiRleHBvcnRfc3ltYm9sc19yZWdleCI7IHRo
ZW4KCSRlY2hvICIkbW9kZW5hbWU6IHdhcm5pbmc6IFxgLWV4cG9ydC1zeW1ib2xzJyBpcyBpZ25v
cmVkIGZvciBhcmNoaXZlcyIgMT4mMgogICAgICBmaQoKICAgICAgIyBOb3cgc2V0IHRoZSB2YXJp
YWJsZXMgZm9yIGJ1aWxkaW5nIG9sZCBsaWJyYXJpZXMuCiAgICAgIGJ1aWxkX2xpYnRvb2xfbGli
cz1ubwogICAgICBvbGRsaWJzPSIkb3V0cHV0IgogICAgICA7OwoKICAgICoubGEpCiAgICAgICMg
TWFrZSBzdXJlIHdlIG9ubHkgZ2VuZXJhdGUgbGlicmFyaWVzIG9mIHRoZSBmb3JtIGBsaWJOQU1F
LmxhJy4KICAgICAgY2FzZSAiJG91dHB1dG5hbWUiIGluCiAgICAgIGxpYiopCgluYW1lPWAkZWNo
byAiWCRvdXRwdXRuYW1lIiB8ICRYc2VkIC1lICdzL1wubGEkLy8nIC1lICdzL15saWIvLydgCgll
dmFsIGxpYm5hbWU9XCIkbGlibmFtZV9zcGVjXCIKCTs7CiAgICAgICopCglpZiB0ZXN0ICIkbW9k
dWxlIiA9IG5vOyB0aGVuCgkgICRlY2hvICIkbW9kZW5hbWU6IGxpYnRvb2wgbGlicmFyeSBcYCRv
dXRwdXQnIG11c3QgYmVnaW4gd2l0aCBcYGxpYiciIDE+JjIKCSAgJGVjaG8gIiRoZWxwIiAxPiYy
CgkgIGV4aXQgMQoJZmkKCWlmIHRlc3QgIiRuZWVkX2xpYl9wcmVmaXgiICE9IG5vOyB0aGVuCgkg
ICMgQWRkIHRoZSAibGliIiBwcmVmaXggZm9yIG1vZHVsZXMgaWYgcmVxdWlyZWQKCSAgbmFtZT1g
JGVjaG8gIlgkb3V0cHV0bmFtZSIgfCAkWHNlZCAtZSAncy9cLmxhJC8vJ2AKCSAgZXZhbCBsaWJu
YW1lPVwiJGxpYm5hbWVfc3BlY1wiCgllbHNlCgkgIGxpYm5hbWU9YCRlY2hvICJYJG91dHB1dG5h
bWUiIHwgJFhzZWQgLWUgJ3MvXC5sYSQvLydgCglmaQoJOzsKICAgICAgZXNhYwoKICAgICAgb3V0
cHV0X29iamRpcj1gJGVjaG8gIlgkb3V0cHV0IiB8ICRYc2VkIC1lICdzJS9bXi9dKiQlJSdgCiAg
ICAgIGlmIHRlc3QgIlgkb3V0cHV0X29iamRpciIgPSAiWCRvdXRwdXQiOyB0aGVuCglvdXRwdXRf
b2JqZGlyPSIkb2JqZGlyIgogICAgICBlbHNlCglvdXRwdXRfb2JqZGlyPSIkb3V0cHV0X29iamRp
ci8kb2JqZGlyIgogICAgICBmaQoKICAgICAgaWYgdGVzdCAtbiAiJG9ianMiOyB0aGVuCgkkZWNo
byAiJG1vZGVuYW1lOiBjYW5ub3QgYnVpbGQgbGlidG9vbCBsaWJyYXJ5IFxgJG91dHB1dCcgZnJv
bSBub24tbGlidG9vbCBvYmplY3RzOiRvYmpzIiAyPiYxCglleGl0IDEKICAgICAgZmkKCiAgICAg
IGlmIHRlc3QgLW4gIiRkbGZpbGVzJGRscHJlZmlsZXMiIHx8IHRlc3QgIiRkbHNlbGYiICE9IG5v
OyB0aGVuCgkkZWNobyAiJG1vZGVuYW1lOiB3YXJuaW5nOiBcYC1kbG9wZW4nIGlzIGlnbm9yZWQg
Zm9yIGxpYnRvb2wgbGlicmFyaWVzIiAxPiYyCiAgICAgIGZpCgogICAgICBzZXQgZHVtbXkgJHJw
YXRoCiAgICAgIGlmIHRlc3QgJCMgLWd0IDI7IHRoZW4KCSRlY2hvICIkbW9kZW5hbWU6IHdhcm5p
bmc6IGlnbm9yaW5nIG11bHRpcGxlIFxgLXJwYXRoJ3MgZm9yIGEgbGlidG9vbCBsaWJyYXJ5IiAx
PiYyCiAgICAgIGZpCiAgICAgIGluc3RhbGxfbGliZGlyPSIkMiIKCiAgICAgIG9sZGxpYnM9CiAg
ICAgIGlmIHRlc3QgLXogIiRycGF0aCI7IHRoZW4KCWlmIHRlc3QgIiRidWlsZF9saWJ0b29sX2xp
YnMiID0geWVzOyB0aGVuCgkgICMgQnVpbGRpbmcgYSBsaWJ0b29sIGNvbnZlbmllbmNlIGxpYnJh
cnkuCgkgIGxpYmV4dD1hbAoJICBvbGRsaWJzPSIkb3V0cHV0X29iamRpci8kbGlibmFtZS4kbGli
ZXh0ICRvbGRsaWJzIgoJICBidWlsZF9saWJ0b29sX2xpYnM9Y29udmVuaWVuY2UKCSAgYnVpbGRf
b2xkX2xpYnM9eWVzCglmaQoJZGVwZW5kZW5jeV9saWJzPSIkZGVwbGlicyIKCglpZiB0ZXN0IC1u
ICIkdmluZm8iOyB0aGVuCgkgICRlY2hvICIkbW9kZW5hbWU6IHdhcm5pbmc6IFxgLXZlcnNpb24t
aW5mbycgaXMgaWdub3JlZCBmb3IgY29udmVuaWVuY2UgbGlicmFyaWVzIiAxPiYyCglmaQoKCWlm
IHRlc3QgLW4gIiRyZWxlYXNlIjsgdGhlbgoJICAkZWNobyAiJG1vZGVuYW1lOiB3YXJuaW5nOiBc
YC1yZWxlYXNlJyBpcyBpZ25vcmVkIGZvciBjb252ZW5pZW5jZSBsaWJyYXJpZXMiIDE+JjIKCWZp
CiAgICAgIGVsc2UKCgkjIFBhcnNlIHRoZSB2ZXJzaW9uIGluZm9ybWF0aW9uIGFyZ3VtZW50LgoJ
SUZTPSIke0lGUz0gCX0iOyBzYXZlX2lmcz0iJElGUyI7IElGUz0nOicKCXNldCBkdW1teSAkdmlu
Zm8gMCAwIDAKCUlGUz0iJHNhdmVfaWZzIgoKCWlmIHRlc3QgLW4gIiQ4IjsgdGhlbgoJICAkZWNo
byAiJG1vZGVuYW1lOiB0b28gbWFueSBwYXJhbWV0ZXJzIHRvIFxgLXZlcnNpb24taW5mbyciIDE+
JjIKCSAgJGVjaG8gIiRoZWxwIiAxPiYyCgkgIGV4aXQgMQoJZmkKCgljdXJyZW50PSIkMiIKCXJl
dmlzaW9uPSIkMyIKCWFnZT0iJDQiCgoJIyBDaGVjayB0aGF0IGVhY2ggb2YgdGhlIHRoaW5ncyBh
cmUgdmFsaWQgbnVtYmVycy4KCWNhc2UgIiRjdXJyZW50IiBpbgoJMCB8IFsxLTldIHwgWzEtOV1b
MC05XSopIDs7CgkqKQoJICAkZWNobyAiJG1vZGVuYW1lOiBDVVJSRU5UIFxgJGN1cnJlbnQnIGlz
IG5vdCBhIG5vbm5lZ2F0aXZlIGludGVnZXIiIDE+JjIKCSAgJGVjaG8gIiRtb2RlbmFtZTogXGAk
dmluZm8nIGlzIG5vdCB2YWxpZCB2ZXJzaW9uIGluZm9ybWF0aW9uIiAxPiYyCgkgIGV4aXQgMQoJ
ICA7OwoJZXNhYwoKCWNhc2UgIiRyZXZpc2lvbiIgaW4KCTAgfCBbMS05XSB8IFsxLTldWzAtOV0q
KSA7OwoJKikKCSAgJGVjaG8gIiRtb2RlbmFtZTogUkVWSVNJT04gXGAkcmV2aXNpb24nIGlzIG5v
dCBhIG5vbm5lZ2F0aXZlIGludGVnZXIiIDE+JjIKCSAgJGVjaG8gIiRtb2RlbmFtZTogXGAkdmlu
Zm8nIGlzIG5vdCB2YWxpZCB2ZXJzaW9uIGluZm9ybWF0aW9uIiAxPiYyCgkgIGV4aXQgMQoJICA7
OwoJZXNhYwoKCWNhc2UgIiRhZ2UiIGluCgkwIHwgWzEtOV0gfCBbMS05XVswLTldKikgOzsKCSop
CgkgICRlY2hvICIkbW9kZW5hbWU6IEFHRSBcYCRhZ2UnIGlzIG5vdCBhIG5vbm5lZ2F0aXZlIGlu
dGVnZXIiIDE+JjIKCSAgJGVjaG8gIiRtb2RlbmFtZTogXGAkdmluZm8nIGlzIG5vdCB2YWxpZCB2
ZXJzaW9uIGluZm9ybWF0aW9uIiAxPiYyCgkgIGV4aXQgMQoJICA7OwoJZXNhYwoKCWlmIHRlc3Qg
JGFnZSAtZ3QgJGN1cnJlbnQ7IHRoZW4KCSAgJGVjaG8gIiRtb2RlbmFtZTogQUdFIFxgJGFnZScg
aXMgZ3JlYXRlciB0aGFuIHRoZSBjdXJyZW50IGludGVyZmFjZSBudW1iZXIgXGAkY3VycmVudCci
IDE+JjIKCSAgJGVjaG8gIiRtb2RlbmFtZTogXGAkdmluZm8nIGlzIG5vdCB2YWxpZCB2ZXJzaW9u
IGluZm9ybWF0aW9uIiAxPiYyCgkgIGV4aXQgMQoJZmkKCgkjIENhbGN1bGF0ZSB0aGUgdmVyc2lv
biB2YXJpYWJsZXMuCgltYWpvcj0KCXZlcnN1ZmZpeD0KCXZlcnN0cmluZz0KCWNhc2UgIiR2ZXJz
aW9uX3R5cGUiIGluCglub25lKSA7OwoKCWlyaXgpCgkgIG1ham9yPWBleHByICRjdXJyZW50IC0g
JGFnZSArIDFgCgkgIHZlcnN1ZmZpeD0iJG1ham9yLiRyZXZpc2lvbiIKCSAgdmVyc3RyaW5nPSJz
Z2kkbWFqb3IuJHJldmlzaW9uIgoKCSAgIyBBZGQgaW4gYWxsIHRoZSBpbnRlcmZhY2VzIHRoYXQg
d2UgYXJlIGNvbXBhdGlibGUgd2l0aC4KCSAgbG9vcD0kcmV2aXNpb24KCSAgd2hpbGUgdGVzdCAk
bG9vcCAhPSAwOyBkbwoJICAgIGlmYWNlPWBleHByICRyZXZpc2lvbiAtICRsb29wYAoJICAgIGxv
b3A9YGV4cHIgJGxvb3AgLSAxYAoJICAgIHZlcnN0cmluZz0ic2dpJG1ham9yLiRpZmFjZTokdmVy
c3RyaW5nIgoJICBkb25lCgkgIDs7CgoJbGludXgpCgkgIG1ham9yPS5gZXhwciAkY3VycmVudCAt
ICRhZ2VgCgkgIHZlcnN1ZmZpeD0iJG1ham9yLiRhZ2UuJHJldmlzaW9uIgoJICA7OwoKCW9zZikK
CSAgbWFqb3I9YGV4cHIgJGN1cnJlbnQgLSAkYWdlYAoJICB2ZXJzdWZmaXg9Ii4kY3VycmVudC4k
YWdlLiRyZXZpc2lvbiIKCSAgdmVyc3RyaW5nPSIkY3VycmVudC4kYWdlLiRyZXZpc2lvbiIKCgkg
ICMgQWRkIGluIGFsbCB0aGUgaW50ZXJmYWNlcyB0aGF0IHdlIGFyZSBjb21wYXRpYmxlIHdpdGgu
CgkgIGxvb3A9JGFnZQoJICB3aGlsZSB0ZXN0ICRsb29wICE9IDA7IGRvCgkgICAgaWZhY2U9YGV4
cHIgJGN1cnJlbnQgLSAkbG9vcGAKCSAgICBsb29wPWBleHByICRsb29wIC0gMWAKCSAgICB2ZXJz
dHJpbmc9IiR2ZXJzdHJpbmc6JHtpZmFjZX0uMCIKCSAgZG9uZQoKCSAgIyBNYWtlIGV4ZWN1dGFi
bGVzIGRlcGVuZCBvbiBvdXIgY3VycmVudCB2ZXJzaW9uLgoJICB2ZXJzdHJpbmc9IiR2ZXJzdHJp
bmc6JHtjdXJyZW50fS4wIgoJICA7OwoKCXN1bm9zKQoJICBtYWpvcj0iLiRjdXJyZW50IgoJICB2
ZXJzdWZmaXg9Ii4kY3VycmVudC4kcmV2aXNpb24iCgkgIDs7CgoJZnJlZWJzZC1hb3V0KQoJICBt
YWpvcj0iLiRjdXJyZW50IgoJICB2ZXJzdWZmaXg9Ii4kY3VycmVudC4kcmV2aXNpb24iOwoJICA7
OwoKCWZyZWVic2QtZWxmKQoJICBtYWpvcj0iLiRjdXJyZW50IgoJICB2ZXJzdWZmaXg9Ii4kY3Vy
cmVudCI7CgkgIDs7CgoJd2luZG93cykKCSAgIyBMaWtlIExpbnV4LCBidXQgd2l0aCAnLScgcmF0
aGVyIHRoYW4gJy4nLCBzaW5jZSB3ZSBvbmx5CgkgICMgd2FudCBvbmUgZXh0ZW5zaW9uIG9uIFdp
bmRvd3MgOTUuCgkgIG1ham9yPWBleHByICRjdXJyZW50IC0gJGFnZWAKCSAgdmVyc3VmZml4PSIt
JG1ham9yLSRhZ2UtJHJldmlzaW9uIgoJICA7OwoKCSopCgkgICRlY2hvICIkbW9kZW5hbWU6IHVu
a25vd24gbGlicmFyeSB2ZXJzaW9uIHR5cGUgXGAkdmVyc2lvbl90eXBlJyIgMT4mMgoJICBlY2hv
ICJGYXRhbCBjb25maWd1cmF0aW9uIGVycm9yLiAgU2VlIHRoZSAkUEFDS0FHRSBkb2NzIGZvciBt
b3JlIGluZm9ybWF0aW9uLiIgMT4mMgoJICBleGl0IDEKCSAgOzsKCWVzYWMKCgkjIENsZWFyIHRo
ZSB2ZXJzaW9uIGluZm8gaWYgd2UgZGVmYXVsdGVkLCBhbmQgdGhleSBzcGVjaWZpZWQgYSByZWxl
YXNlLgoJaWYgdGVzdCAteiAiJHZpbmZvIiAmJiB0ZXN0IC1uICIkcmVsZWFzZSI7IHRoZW4KCSAg
bWFqb3I9CgkgIHZlcnN0cmluZz0iMC4wIgoJICBpZiB0ZXN0ICIkbmVlZF92ZXJzaW9uIiA9IG5v
OyB0aGVuCgkgICAgdmVyc3VmZml4PQoJICBlbHNlCgkgICAgdmVyc3VmZml4PSIuMC4wIgoJICBm
aQoJZmkKCgkjIFJlbW92ZSB2ZXJzaW9uIGluZm8gZnJvbSBuYW1lIGlmIHZlcnNpb25pbmcgc2hv
dWxkIGJlIGF2b2lkZWQKCWlmIHRlc3QgIiRhdm9pZF92ZXJzaW9uIiA9IHllcyAmJiB0ZXN0ICIk
bmVlZF92ZXJzaW9uIiA9IG5vOyB0aGVuCgkgIG1ham9yPQoJICB2ZXJzdWZmaXg9CgkgIHZlcnN0
cmluZz0iIgoJZmkKCQoJIyBDaGVjayB0byBzZWUgaWYgdGhlIGFyY2hpdmUgd2lsbCBoYXZlIHVu
ZGVmaW5lZCBzeW1ib2xzLgoJaWYgdGVzdCAiJGFsbG93X3VuZGVmaW5lZCIgPSB5ZXM7IHRoZW4K
CSAgaWYgdGVzdCAiJGFsbG93X3VuZGVmaW5lZF9mbGFnIiA9IHVuc3VwcG9ydGVkOyB0aGVuCgkg
ICAgJGVjaG8gIiRtb2RlbmFtZTogd2FybmluZzogdW5kZWZpbmVkIHN5bWJvbHMgbm90IGFsbG93
ZWQgaW4gJGhvc3Qgc2hhcmVkIGxpYnJhcmllcyIgMT4mMgoJICAgIGJ1aWxkX2xpYnRvb2xfbGli
cz1ubwoJICAgIGJ1aWxkX29sZF9saWJzPXllcwoJICBmaQoJZWxzZQoJICAjIERvbid0IGFsbG93
IHVuZGVmaW5lZCBzeW1ib2xzLgoJICBhbGxvd191bmRlZmluZWRfZmxhZz0iJG5vX3VuZGVmaW5l
ZF9mbGFnIgoJZmkKCglkZXBlbmRlbmN5X2xpYnM9IiRkZXBsaWJzIgoJY2FzZSAiJGhvc3QiIGlu
CgkqLSotY3lnd2luKiB8ICotKi1taW5ndyogfCAqLSotb3MyKiB8ICotKi1iZW9zKikKCSAgIyB0
aGVzZSBzeXN0ZW1zIGRvbid0IGFjdHVhbGx5IGhhdmUgYSBjIGxpYnJhcnkgKGFzIHN1Y2gpIQoJ
ICA7OwogICAgICAgICotKi1yaGFwc29keSopCgkgICMgcmhhcHNvZHkgaXMgYSBsaXR0bGUgb2Rk
Li4uCgkgIGRlcGxpYnM9IiRkZXBsaWJzIC1mcmFtZXdvcmsgU3lzdGVtIgoJICA7OwoJKi0qLWZy
ZWVic2QqKQoJICAjIEZyZWVCU0QgZG9lc24ndCBuZWVkIHRoaXMuLi4KCSAgOzsKCSopCgkgICMg
QWRkIGxpYmMgdG8gZGVwbGlicyBvbiBhbGwgb3RoZXIgc3lzdGVtcy4KCSAgZGVwbGlicz0iJGRl
cGxpYnMgLWxjIgoJICA7OwoJZXNhYwogICAgICBmaQoKICAgICAgaWYgdGVzdCAtbiAiJHJwYXRo
JHhycGF0aCI7IHRoZW4KCSMgSWYgdGhlIHVzZXIgc3BlY2lmaWVkIGFueSBycGF0aCBmbGFncywg
dGhlbiBhZGQgdGhlbS4KCWZvciBsaWJkaXIgaW4gJHJwYXRoICR4cnBhdGg7IGRvCgkgICMgVGhp
cyBpcyB0aGUgbWFnaWMgdG8gdXNlIC1ycGF0aC4KCSAgY2FzZSAiJGNvbXBpbGVfcnBhdGggIiBp
bgoJICAqIiAkbGliZGlyICIqKSA7OwoJICAqKSBjb21waWxlX3JwYXRoPSIkY29tcGlsZV9ycGF0
aCAkbGliZGlyIiA7OwoJICBlc2FjCgkgIGNhc2UgIiRmaW5hbGl6ZV9ycGF0aCAiIGluCgkgICoi
ICRsaWJkaXIgIiopIDs7CgkgICopIGZpbmFsaXplX3JwYXRoPSIkZmluYWxpemVfcnBhdGggJGxp
YmRpciIgOzsKCSAgZXNhYwoJZG9uZQogICAgICBmaQoKICAgICAgIyBOb3cgaGFyZGNvZGUgdGhl
IGxpYnJhcnkgcGF0aHMKICAgICAgcnBhdGg9CiAgICAgIGhhcmRjb2RlX2xpYmRpcnM9CiAgICAg
IGZvciBsaWJkaXIgaW4gJGNvbXBpbGVfcnBhdGg7IGRvCglpZiB0ZXN0IC1uICIkaGFyZGNvZGVf
bGliZGlyX2ZsYWdfc3BlYyI7IHRoZW4KCSAgaWYgdGVzdCAtbiAiJGhhcmRjb2RlX2xpYmRpcl9z
ZXBhcmF0b3IiOyB0aGVuCgkgICAgaWYgdGVzdCAteiAiJGhhcmRjb2RlX2xpYmRpcnMiOyB0aGVu
CgkgICAgICBoYXJkY29kZV9saWJkaXJzPSIkbGliZGlyIgoJICAgIGVsc2UKCSAgICAgICMgSnVz
dCBhY2N1bXVsYXRlIHRoZSB1bmlxdWUgbGliZGlycy4KCSAgICAgIGNhc2UgIiRoYXJkY29kZV9s
aWJkaXJfc2VwYXJhdG9yJGhhcmRjb2RlX2xpYmRpcnMkaGFyZGNvZGVfbGliZGlyX3NlcGFyYXRv
ciIgaW4KCSAgICAgICoiJGhhcmRjb2RlX2xpYmRpcl9zZXBhcmF0b3IkbGliZGlyJGhhcmRjb2Rl
X2xpYmRpcl9zZXBhcmF0b3IiKikKCQk7OwoJICAgICAgKikKCQloYXJkY29kZV9saWJkaXJzPSIk
aGFyZGNvZGVfbGliZGlycyRoYXJkY29kZV9saWJkaXJfc2VwYXJhdG9yJGxpYmRpciIKCQk7OwoJ
ICAgICAgZXNhYwoJICAgIGZpCgkgIGVsc2UKCSAgICBldmFsIGZsYWc9XCIkaGFyZGNvZGVfbGli
ZGlyX2ZsYWdfc3BlY1wiCgkgICAgcnBhdGg9IiRycGF0aCAkZmxhZyIKCSAgZmkKCWVsaWYgdGVz
dCAtbiAiJHJ1bnBhdGhfdmFyIjsgdGhlbgoJICBjYXNlICIkcGVybV9ycGF0aCAiIGluCgkgICoi
ICRsaWJkaXIgIiopIDs7CgkgICopIHBlcm1fcnBhdGg9IiRwZXJtX3JwYXRoICRsaWJkaXIiIDs7
CgkgIGVzYWMKCWZpCiAgICAgIGRvbmUKICAgICAgIyBTdWJzdGl0dXRlIHRoZSBoYXJkY29kZWQg
bGliZGlycyBpbnRvIHRoZSBycGF0aC4KICAgICAgaWYgdGVzdCAtbiAiJGhhcmRjb2RlX2xpYmRp
cl9zZXBhcmF0b3IiICYmCgkgdGVzdCAtbiAiJGhhcmRjb2RlX2xpYmRpcnMiOyB0aGVuCglsaWJk
aXI9IiRoYXJkY29kZV9saWJkaXJzIgoJZXZhbCBycGF0aD1cIiAkaGFyZGNvZGVfbGliZGlyX2Zs
YWdfc3BlY1wiCiAgICAgIGZpCiAgICAgIGNvbXBpbGVfcnBhdGg9IiRycGF0aCIKCiAgICAgIHJw
YXRoPQogICAgICBoYXJkY29kZV9saWJkaXJzPQogICAgICBmb3IgbGliZGlyIGluICRmaW5hbGl6
ZV9ycGF0aDsgZG8KCWlmIHRlc3QgLW4gIiRoYXJkY29kZV9saWJkaXJfZmxhZ19zcGVjIjsgdGhl
bgoJICBpZiB0ZXN0IC1uICIkaGFyZGNvZGVfbGliZGlyX3NlcGFyYXRvciI7IHRoZW4KCSAgICBp
ZiB0ZXN0IC16ICIkaGFyZGNvZGVfbGliZGlycyI7IHRoZW4KCSAgICAgIGhhcmRjb2RlX2xpYmRp
cnM9IiRsaWJkaXIiCgkgICAgZWxzZQoJICAgICAgIyBKdXN0IGFjY3VtdWxhdGUgdGhlIHVuaXF1
ZSBsaWJkaXJzLgoJICAgICAgY2FzZSAiJGhhcmRjb2RlX2xpYmRpcl9zZXBhcmF0b3IkaGFyZGNv
ZGVfbGliZGlycyRoYXJkY29kZV9saWJkaXJfc2VwYXJhdG9yIiBpbgoJICAgICAgKiIkaGFyZGNv
ZGVfbGliZGlyX3NlcGFyYXRvciRsaWJkaXIkaGFyZGNvZGVfbGliZGlyX3NlcGFyYXRvciIqKQoJ
CTs7CgkgICAgICAqKQoJCWhhcmRjb2RlX2xpYmRpcnM9IiRoYXJkY29kZV9saWJkaXJzJGhhcmRj
b2RlX2xpYmRpcl9zZXBhcmF0b3IkbGliZGlyIgoJCTs7CgkgICAgICBlc2FjCgkgICAgZmkKCSAg
ZWxzZQoJICAgIGV2YWwgZmxhZz1cIiRoYXJkY29kZV9saWJkaXJfZmxhZ19zcGVjXCIKCSAgICBy
cGF0aD0iJHJwYXRoICRmbGFnIgoJICBmaQoJZWxpZiB0ZXN0IC1uICIkcnVucGF0aF92YXIiOyB0
aGVuCgkgIGNhc2UgIiRmaW5hbGl6ZV9wZXJtX3JwYXRoICIgaW4KCSAgKiIgJGxpYmRpciAiKikg
OzsKCSAgKikgZmluYWxpemVfcGVybV9ycGF0aD0iJGZpbmFsaXplX3Blcm1fcnBhdGggJGxpYmRp
ciIgOzsKCSAgZXNhYwoJZmkKICAgICAgZG9uZQogICAgICAjIFN1YnN0aXR1dGUgdGhlIGhhcmRj
b2RlZCBsaWJkaXJzIGludG8gdGhlIHJwYXRoLgogICAgICBpZiB0ZXN0IC1uICIkaGFyZGNvZGVf
bGliZGlyX3NlcGFyYXRvciIgJiYKCSB0ZXN0IC1uICIkaGFyZGNvZGVfbGliZGlycyI7IHRoZW4K
CWxpYmRpcj0iJGhhcmRjb2RlX2xpYmRpcnMiCglldmFsIHJwYXRoPVwiICRoYXJkY29kZV9saWJk
aXJfZmxhZ19zcGVjXCIKICAgICAgZmkKICAgICAgZmluYWxpemVfcnBhdGg9IiRycGF0aCIKCiAg
ICAgICMgQ3JlYXRlIHRoZSBvdXRwdXQgZGlyZWN0b3J5LCBvciByZW1vdmUgb3VyIG91dHB1dHMg
aWYgd2UgbmVlZCB0by4KICAgICAgaWYgdGVzdCAtZCAkb3V0cHV0X29iamRpcjsgdGhlbgoJJHNo
b3cgIiR7cm19ciAkb3V0cHV0X29iamRpci8kb3V0cHV0bmFtZSAkb3V0cHV0X29iamRpci8kbGli
bmFtZS4qICRvdXRwdXRfb2JqZGlyLyR7bGlibmFtZX0ke3JlbGVhc2V9LioiCgkkcnVuICR7cm19
ciAkb3V0cHV0X29iamRpci8kb3V0cHV0bmFtZSAkb3V0cHV0X29iamRpci8kbGlibmFtZS4qICRv
dXRwdXRfb2JqZGlyLyR7bGlibmFtZX0ke3JlbGVhc2V9LioKICAgICAgZWxzZQoJJHNob3cgIiRt
a2RpciAkb3V0cHV0X29iamRpciIKCSRydW4gJG1rZGlyICRvdXRwdXRfb2JqZGlyCglzdGF0dXM9
JD8KCWlmIHRlc3QgJHN0YXR1cyAtbmUgMCAmJiB0ZXN0ICEgLWQgJG91dHB1dF9vYmpkaXI7IHRo
ZW4KCSAgZXhpdCAkc3RhdHVzCglmaQogICAgICBmaQoKICAgICAgIyBOb3cgc2V0IHRoZSB2YXJp
YWJsZXMgZm9yIGJ1aWxkaW5nIG9sZCBsaWJyYXJpZXMuCiAgICAgIGlmIHRlc3QgIiRidWlsZF9v
bGRfbGlicyIgPSB5ZXMgJiYgdGVzdCAiJGJ1aWxkX2xpYnRvb2xfbGlicyIgIT0gY29udmVuaWVu
Y2UgOyB0aGVuCglpZiB0ZXN0ICIkcmVsZWFzZV9zdWZmaXgiID0gYWxsOyB0aGVuCgkgb2xkbGli
cz0iJG9sZGxpYnMgJG91dHB1dF9vYmpkaXIvJGxpYm5hbWUkcmVsZWFzZS4kbGliZXh0IgoJZWxz
ZQoJb2xkbGlicz0iJG9sZGxpYnMgJG91dHB1dF9vYmpkaXIvJGxpYm5hbWUuJGxpYmV4dCIKCWZp
CgoJIyBUcmFuc2Zvcm0gLmxvIGZpbGVzIHRvIC5vIGZpbGVzLgoJb2xkb2Jqcz0iJG9ianMgImAk
ZWNobyAiWCRsaWJvYmpzIiB8ICRTUDJOTCB8ICRYc2VkIC1lICcvXC4nJHtsaWJleHR9JyQvZCcg
LWUgIiRsbzJvIiB8ICROTDJTUGAKICAgICAgZmkKCiAgICAgIGlmIHRlc3QgIiRidWlsZF9saWJ0
b29sX2xpYnMiID0geWVzOyB0aGVuCgkjIFRyYW5zZm9ybSBkZXBsaWJzIGludG8gb25seSBkZXBs
aWJzIHRoYXQgY2FuIGJlIGxpbmtlZCBpbiBzaGFyZWQuCgluYW1lX3NhdmU9JG5hbWUKCWxpYm5h
bWVfc2F2ZT0kbGlibmFtZQoJcmVsZWFzZV9zYXZlPSRyZWxlYXNlCgl2ZXJzdWZmaXhfc2F2ZT0k
dmVyc3VmZml4CgltYWpvcl9zYXZlPSRtYWpvcgoJIyBJJ20gbm90IHN1cmUgaWYgSSdtIHRyZWF0
aW5nIHRoZSByZWxlYXNlIGNvcnJlY3RseS4gIEkgdGhpbmsKCSMgcmVsZWFzZSBzaG91bGQgc2hv
dyB1cCBpbiB0aGUgLWwgKGllIC1sZ21wNSkgc28gd2UgZG9uJ3Qgd2FudCB0bwoJIyBhZGQgaXQg
aW4gdHdpY2UuICBJcyB0aGF0IGNvcnJlY3Q/CglyZWxlYXNlPSIiCgl2ZXJzdWZmaXg9IiIKCW1h
am9yPSIiCgluZXdkZXBsaWJzPQoJZHJvcHBlZGRlcHM9bm8KCWNhc2UgIiRkZXBsaWJzX2NoZWNr
X21ldGhvZCIgaW4KCXBhc3NfYWxsKQoJICAjIERvbid0IGNoZWNrIGZvciBzaGFyZWQvc3RhdGlj
LiAgRXZlcnl0aGluZyB3b3Jrcy4KCSAgIyBUaGlzIG1pZ2h0IGJlIGEgbGl0dGxlIG5haXZlLiAg
V2UgbWlnaHQgd2FudCB0byBjaGVjawoJICAjIHdoZXRoZXIgdGhlIGxpYnJhcnkgZXhpc3RzIG9y
IG5vdC4gIEJ1dCB0aGlzIGlzIG9uCgkgICMgb3NmMyAmIG9zZjQgYW5kIEknbSBub3QgcmVhbGx5
IHN1cmUuLi4gSnVzdAoJICAjIGltcGxlbWVudGluZyB3aGF0IHdhcyBhbHJlYWR5IHRoZSBiZWhh
dmlvdXIuCgkgIG5ld2RlcGxpYnM9JGRlcGxpYnMKCSAgOzsKCXRlc3RfY29tcGlsZSkKCSAgIyBU
aGlzIGNvZGUgc3RyZXNzZXMgdGhlICJsaWJyYXJpZXMgYXJlIHByb2dyYW1zIiBwYXJhZGlnbSB0
byBpdHMKCSAgIyBsaW1pdHMuIE1heWJlIGV2ZW4gYnJlYWtzIGl0LiAgV2UgY29tcGlsZSBhIHBy
b2dyYW0sIGxpbmtpbmcgaXQKCSAgIyBhZ2FpbnN0IHRoZSBkZXBsaWJzIGFzIGEgcHJveHkgZm9y
IHRoZSBsaWJyYXJ5LiAgVGhlbiB3ZSBjYW4gY2hlY2sKCSAgIyB3aGV0aGVyIHRoZXkgbGlua2Vk
IGluIHN0YXRpY2FsbHkgb3IgZHluYW1pY2FsbHkgd2l0aCBsZGQuCgkgICRybSBjb25mdGVzdC5j
CgkgIGNhdCA+IGNvbmZ0ZXN0LmMgPDxFT0YKCSAgaW50IG1haW4oKSB7IHJldHVybiAwOyB9CkVP
RgoJICAkcm0gY29uZnRlc3QKCSAgJENDIC1vIGNvbmZ0ZXN0IGNvbmZ0ZXN0LmMgJGRlcGxpYnMK
CSAgaWYgdGVzdCAkPyAtZXEgMCA7IHRoZW4KCSAgICBsZGRfb3V0cHV0PWBsZGQgY29uZnRlc3Rg
CgkgICAgZm9yIGkgaW4gJGRlcGxpYnM7IGRvCgkgICAgICBuYW1lPSJgZXhwciAkaSA6ICctbFwo
LipcKSdgIgoJICAgICAgIyBJZiAkbmFtZSBpcyBlbXB0eSB3ZSBhcmUgb3BlcmF0aW5nIG9uIGEg
LUwgYXJndW1lbnQuCgkgICAgICBpZiB0ZXN0ICIkbmFtZSIgIT0gIiIgOyB0aGVuCgkJbGlibmFt
ZT1gZXZhbCBcXCRlY2hvIFwiJGxpYm5hbWVfc3BlY1wiYAoJCWRlcGxpYl9tYXRjaGVzPWBldmFs
IFxcJGVjaG8gXCIkbGlicmFyeV9uYW1lc19zcGVjXCJgCgkJc2V0IGR1bW15ICRkZXBsaWJfbWF0
Y2hlcwoJCWRlcGxpYl9tYXRjaD0kMgoJCWlmIHRlc3QgYGV4cHIgIiRsZGRfb3V0cHV0IiA6ICIu
KiRkZXBsaWJfbWF0Y2giYCAtbmUgMCA7IHRoZW4KCQkgIG5ld2RlcGxpYnM9IiRuZXdkZXBsaWJz
ICRpIgoJCWVsc2UKCQkgIGRyb3BwZWRkZXBzPXllcwoJCSAgZWNobwoJCSAgZWNobyAiKioqIFdh
cm5pbmc6IFRoaXMgbGlicmFyeSBuZWVkcyBzb21lIGZ1bmN0aW9uYWxpdHkgcHJvdmlkZWQgYnkg
JGkuIgoJCSAgZWNobyAiKioqIEkgaGF2ZSB0aGUgY2FwYWJpbGl0eSB0byBtYWtlIHRoYXQgbGli
cmFyeSBhdXRvbWF0aWNhbGx5IGxpbmsgaW4gd2hlbiIKCQkgIGVjaG8gIioqKiB5b3UgbGluayB0
byB0aGlzIGxpYnJhcnkuICBCdXQgSSBjYW4gb25seSBkbyB0aGlzIGlmIHlvdSBoYXZlIGEiCgkJ
ICBlY2hvICIqKiogc2hhcmVkIHZlcnNpb24gb2YgdGhlIGxpYnJhcnksIHdoaWNoIHlvdSBkbyBu
b3QgYXBwZWFyIHRvIGhhdmUuIgoJCWZpCgkgICAgICBlbHNlCgkJbmV3ZGVwbGlicz0iJG5ld2Rl
cGxpYnMgJGkiCgkgICAgICBmaQoJICAgIGRvbmUKCSAgZWxzZQoJICAgICMgRXJyb3Igb2NjdXJl
ZCBpbiB0aGUgZmlyc3QgY29tcGlsZS4gIExldCdzIHRyeSB0byBzYWx2YWdlIHRoZSBzaXR1YXRp
b246CgkgICAgIyBDb21waWxlIGEgc2VwZXJhdGUgcHJvZ3JhbSBmb3IgZWFjaCBsaWJyYXJ5LgoJ
ICAgIGZvciBpIGluICRkZXBsaWJzOyBkbwoJICAgICAgbmFtZT0iYGV4cHIgJGkgOiAnLWxcKC4q
XCknYCIKCSAgICAgIyBJZiAkbmFtZSBpcyBlbXB0eSB3ZSBhcmUgb3BlcmF0aW5nIG9uIGEgLUwg
YXJndW1lbnQuCgkgICAgICBpZiB0ZXN0ICIkbmFtZSIgIT0gIiIgOyB0aGVuCgkJJHJtIGNvbmZ0
ZXN0CgkJJENDIC1vIGNvbmZ0ZXN0IGNvbmZ0ZXN0LmMgJGkKCQkjIERpZCBpdCB3b3JrPwoJCWlm
IHRlc3QgJD8gLWVxIDAgOyB0aGVuCgkJICBsZGRfb3V0cHV0PWBsZGQgY29uZnRlc3RgCgkJICBs
aWJuYW1lPWBldmFsIFxcJGVjaG8gXCIkbGlibmFtZV9zcGVjXCJgCgkJICBkZXBsaWJfbWF0Y2hl
cz1gZXZhbCBcXCRlY2hvIFwiJGxpYnJhcnlfbmFtZXNfc3BlY1wiYAoJCSAgc2V0IGR1bW15ICRk
ZXBsaWJfbWF0Y2hlcwoJCSAgZGVwbGliX21hdGNoPSQyCgkJICBpZiB0ZXN0IGBleHByICIkbGRk
X291dHB1dCIgOiAiLiokZGVwbGliX21hdGNoImAgLW5lIDAgOyB0aGVuCgkJICAgIG5ld2RlcGxp
YnM9IiRuZXdkZXBsaWJzICRpIgoJCSAgZWxzZQoJCSAgICBkcm9wcGVkZGVwcz15ZXMKCQkgICAg
ZWNobwoJCSAgICBlY2hvICIqKiogV2FybmluZzogVGhpcyBsaWJyYXJ5IG5lZWRzIHNvbWUgZnVu
Y3Rpb25hbGl0eSBwcm92aWRlZCBieSAkaS4iCgkJICAgIGVjaG8gIioqKiBJIGhhdmUgdGhlIGNh
cGFiaWxpdHkgdG8gbWFrZSB0aGF0IGxpYnJhcnkgYXV0b21hdGljYWxseSBsaW5rIGluIHdoZW4i
CgkJICAgIGVjaG8gIioqKiB5b3UgbGluayB0byB0aGlzIGxpYnJhcnkuICBCdXQgSSBjYW4gb25s
eSBkbyB0aGlzIGlmIHlvdSBoYXZlIGEiCgkJICAgIGVjaG8gIioqKiBzaGFyZWQgdmVyc2lvbiBv
ZiB0aGUgbGlicmFyeSwgd2hpY2ggeW91IGRvIG5vdCBhcHBlYXIgdG8gaGF2ZS4iCgkJICBmaQoJ
CWVsc2UKCQkgIGRyb3BwZWRkZXBzPXllcwoJCSAgZWNobwoJCSAgZWNobyAiKioqIFdhcm5pbmch
ICBMaWJyYXJ5ICRpIGlzIG5lZWRlZCBieSB0aGlzIGxpYnJhcnkgYnV0IEkgd2FzIG5vdCBhYmxl
IHRvIgoJCSAgZWNobyAiKioqICBtYWtlIGl0IGxpbmsgaW4hICBZb3Ugd2lsbCBwcm9iYWJseSBu
ZWVkIHRvIGluc3RhbGwgaXQgb3Igc29tZSIKCQkgIGVjaG8gIioqKiBsaWJyYXJ5IHRoYXQgaXQg
ZGVwZW5kcyBvbiBiZWZvcmUgdGhpcyBsaWJyYXJ5IHdpbGwgYmUgZnVsbHkiCgkJICBlY2hvICIq
KiogZnVuY3Rpb25hbC4gIEluc3RhbGxpbmcgaXQgYmVmb3JlIGNvbnRpbnVpbmcgd291bGQgYmUg
ZXZlbiBiZXR0ZXIuIgoJCWZpCgkgICAgICBlbHNlCgkJbmV3ZGVwbGlicz0iJG5ld2RlcGxpYnMg
JGkiCgkgICAgICBmaQoJICAgIGRvbmUKCSAgZmkKCSAgOzsKCWZpbGVfbWFnaWMqKQoJICBzZXQg
ZHVtbXkgJGRlcGxpYnNfY2hlY2tfbWV0aG9kCgkgIGZpbGVfbWFnaWNfcmVnZXg9ImBleHByIFwi
JGRlcGxpYnNfY2hlY2tfbWV0aG9kXCIgOiBcIiQyIFwoLipcKVwiYCIKCSAgZm9yIGFfZGVwbGli
IGluICRkZXBsaWJzOyBkbwoJICAgIG5hbWU9ImBleHByICRhX2RlcGxpYiA6ICctbFwoLipcKSdg
IgoJICAgICMgSWYgJG5hbWUgaXMgZW1wdHkgd2UgYXJlIG9wZXJhdGluZyBvbiBhIC1MIGFyZ3Vt
ZW50LgoJICAgIGlmIHRlc3QgIiRuYW1lIiAhPSAiIiA7IHRoZW4KCSAgICAgIGxpYm5hbWU9YGV2
YWwgXFwkZWNobyBcIiRsaWJuYW1lX3NwZWNcImAKCSAgICAgIGZvciBpIGluICRsaWJfc2VhcmNo
X3BhdGg7IGRvCgkJICAgIHBvdGVudGlhbF9saWJzPWBscyAkaS8kbGlibmFtZVsuLV0qIDI+L2Rl
di9udWxsYAoJCSAgICBmb3IgcG90ZW50X2xpYiBpbiAkcG90ZW50aWFsX2xpYnM7IGRvCgkJICAg
ICAgIyBGb2xsb3cgc29mdCBsaW5rcy4KCQkgICAgICBpZiBscyAtbExkICIkcG90ZW50X2xpYiIg
Mj4vZGV2L251bGwgXAoJCQkgfCBncmVwICIgLT4gIiA+L2Rldi9udWxsOyB0aGVuCgkJCWNvbnRp
bnVlIAoJCSAgICAgIGZpCgkJICAgICAgIyBUaGUgc3RhdGVtZW50IGFib3ZlIHRyaWVzIHRvIGF2
b2lkIGVudGVyaW5nIGFuCgkJICAgICAgIyBlbmRsZXNzIGxvb3AgYmVsb3csIGluIGNhc2Ugb2Yg
Y3ljbGljIGxpbmtzLgoJCSAgICAgICMgV2UgbWlnaHQgc3RpbGwgZW50ZXIgYW4gZW5kbGVzcyBs
b29wLCBzaW5jZSBhIGxpbmsKCQkgICAgICAjIGxvb3AgY2FuIGJlIGNsb3NlZCB3aGlsZSB3ZSBm
b2xsb3cgbGlua3MsCgkJICAgICAgIyBidXQgc28gd2hhdD8KCQkgICAgICBwb3RsaWI9IiRwb3Rl
bnRfbGliIgoJCSAgICAgIHdoaWxlIHRlc3QgLWggIiRwb3RsaWIiIDI+L2Rldi9udWxsOyBkbwoJ
CQlwb3RsaWJsaW5rPWBscyAtbGQgJHBvdGxpYiB8IHNlZCAncy8uKiAtPiAvLydgCgkJCWNhc2Ug
IiRwb3RsaWJsaW5rIiBpbgoJCQlbXFwvXSogfCBbQS1aYS16XTpbXFwvXSopIHBvdGxpYj0iJHBv
dGxpYmxpbmsiOzsKCQkJKikgcG90bGliPWAkZWNobyAiWCRwb3RsaWIiIHwgJFhzZWQgLWUgJ3Ms
W14vXSokLCwnYCIkcG90bGlibGluayI7OwoJCQllc2FjCgkJICAgICAgZG9uZQoJCSAgICAgIGlm
IGV2YWwgJGZpbGVfbWFnaWNfY21kIFwiXCRwb3RsaWJcIiAyPi9kZXYvbnVsbCBcCgkJCSB8IHNl
ZCAxMHEgXAoJCQkgfCBlZ3JlcCAiJGZpbGVfbWFnaWNfcmVnZXgiID4gL2Rldi9udWxsOyB0aGVu
CgkJCW5ld2RlcGxpYnM9IiRuZXdkZXBsaWJzICRhX2RlcGxpYiIKCQkJYV9kZXBsaWI9IiIKCQkJ
YnJlYWsgMgoJCSAgICAgIGZpCgkJICAgIGRvbmUKCSAgICAgIGRvbmUKCSAgICAgIGlmIHRlc3Qg
LW4gIiRhX2RlcGxpYiIgOyB0aGVuCgkJZHJvcHBlZGRlcHM9eWVzCgkJZWNobwoJCWVjaG8gIioq
KiBXYXJuaW5nOiBUaGlzIGxpYnJhcnkgbmVlZHMgc29tZSBmdW5jdGlvbmFsaXR5IHByb3ZpZGVk
IGJ5ICRhX2RlcGxpYi4iCgkJZWNobyAiKioqIEkgaGF2ZSB0aGUgY2FwYWJpbGl0eSB0byBtYWtl
IHRoYXQgbGlicmFyeSBhdXRvbWF0aWNhbGx5IGxpbmsgaW4gd2hlbiIKCQllY2hvICIqKiogeW91
IGxpbmsgdG8gdGhpcyBsaWJyYXJ5LiAgQnV0IEkgY2FuIG9ubHkgZG8gdGhpcyBpZiB5b3UgaGF2
ZSBhIgoJCWVjaG8gIioqKiBzaGFyZWQgdmVyc2lvbiBvZiB0aGUgbGlicmFyeSwgd2hpY2ggeW91
IGRvIG5vdCBhcHBlYXIgdG8gaGF2ZS4iCgkgICAgICBmaQoJICAgIGVsc2UKCSAgICAgICMgQWRk
IGEgLUwgYXJndW1lbnQuCgkgICAgICBuZXdkZXBsaWJzPSIkbmV3ZGVwbGlicyAkYV9kZXBsaWIi
CgkgICAgZmkKCSAgZG9uZSAjIEdvbmUgdGhyb3VnaCBhbGwgZGVwbGlicy4KCSAgOzsKCW5vbmUg
fCB1bmtub3duIHwgKikKCSAgbmV3ZGVwbGlicz0iIgoJICBpZiAkZWNobyAiWCAkZGVwbGlicyIg
fCAkWHNlZCAtZSAncy8gLWxjJC8vJyBcCgkgICAgICAgLWUgJ3MvIC1bTFJdW14gXSovL2cnIC1l
ICdzL1sgCV0vL2cnIHwKCSAgICAgZ3JlcCAuID4vZGV2L251bGw7IHRoZW4KCSAgICBlY2hvCgkg
ICAgaWYgdGVzdCAiWCRkZXBsaWJzX2NoZWNrX21ldGhvZCIgPSAiWG5vbmUiOyB0aGVuCgkgICAg
ICBlY2hvICIqKiogV2FybmluZzogaW50ZXItbGlicmFyeSBkZXBlbmRlbmNpZXMgYXJlIG5vdCBz
dXBwb3J0ZWQgaW4gdGhpcyBwbGF0Zm9ybS4iCgkgICAgZWxzZQoJICAgICAgZWNobyAiKioqIFdh
cm5pbmc6IGludGVyLWxpYnJhcnkgZGVwZW5kZW5jaWVzIGFyZSBub3Qga25vd24gdG8gYmUgc3Vw
cG9ydGVkLiIKCSAgICBmaQoJICAgIGVjaG8gIioqKiBBbGwgZGVjbGFyZWQgaW50ZXItbGlicmFy
eSBkZXBlbmRlbmNpZXMgYXJlIGJlaW5nIGRyb3BwZWQuIgoJICAgIGRyb3BwZWRkZXBzPXllcwoJ
ICBmaQoJICA7OwoJZXNhYwoJdmVyc3VmZml4PSR2ZXJzdWZmaXhfc2F2ZQoJbWFqb3I9JG1ham9y
X3NhdmUKCXJlbGVhc2U9JHJlbGVhc2Vfc2F2ZQoJbGlibmFtZT0kbGlibmFtZV9zYXZlCgluYW1l
PSRuYW1lX3NhdmUKCglpZiB0ZXN0ICIkZHJvcHBlZGRlcHMiID0geWVzOyB0aGVuCgkgIGlmIHRl
c3QgIiRtb2R1bGUiID0geWVzOyB0aGVuCgkgICAgZWNobwoJICAgIGVjaG8gIioqKiBXYXJuaW5n
OiBsaWJ0b29sIGNvdWxkIG5vdCBzYXRpc2Z5IGFsbCBkZWNsYXJlZCBpbnRlci1saWJyYXJ5IgoJ
ICAgIGVjaG8gIioqKiBkZXBlbmRlbmNpZXMgb2YgbW9kdWxlICRsaWJuYW1lLiAgVGhlcmVmb3Jl
LCBsaWJ0b29sIHdpbGwgY3JlYXRlIgoJICAgIGVjaG8gIioqKiBhIHN0YXRpYyBtb2R1bGUsIHRo
YXQgc2hvdWxkIHdvcmsgYXMgbG9uZyBhcyB0aGUgZGxvcGVuaW5nIgoJICAgIGVjaG8gIioqKiBh
cHBsaWNhdGlvbiBpcyBsaW5rZWQgd2l0aCB0aGUgLWRsb3BlbiBmbGFnLiIKCSAgICBpZiB0ZXN0
IC16ICIkZ2xvYmFsX3N5bWJvbF9waXBlIjsgdGhlbgoJICAgICAgZWNobwoJICAgICAgZWNobyAi
KioqIEhvd2V2ZXIsIHRoaXMgd291bGQgb25seSB3b3JrIGlmIGxpYnRvb2wgd2FzIGFibGUgdG8g
ZXh0cmFjdCBzeW1ib2wiCgkgICAgICBlY2hvICIqKiogbGlzdHMgZnJvbSBhIHByb2dyYW0sIHVz
aW5nIFxgbm0nIG9yIGVxdWl2YWxlbnQsIGJ1dCBsaWJ0b29sIGNvdWxkIgoJICAgICAgZWNobyAi
KioqIG5vdCBmaW5kIHN1Y2ggYSBwcm9ncmFtLiAgU28sIHRoaXMgbW9kdWxlIGlzIHByb2JhYmx5
IHVzZWxlc3MuIgoJICAgICAgZWNobyAiKioqIFxgbm0nIGZyb20gR05VIGJpbnV0aWxzIGFuZCBh
IGZ1bGwgcmVidWlsZCBtYXkgaGVscC4iCgkgICAgZmkKCSAgICBpZiB0ZXN0ICIkYnVpbGRfb2xk
X2xpYnMiID0gbm87IHRoZW4KCSAgICAgIGlmIHRlc3QgIiRyZWxlYXNlX3N1ZmZpeCIgPSBhbGw7
IHRoZW4KCSAgICAgICAgb2xkbGlicz0iJG91dHB1dF9vYmpkaXIvJGxpYm5hbWUkcmVsZWFzZS4k
bGliZXh0IgoJICAgICAgZWxzZQoJICAgICAgb2xkbGlicz0iJG91dHB1dF9vYmpkaXIvJGxpYm5h
bWUuJGxpYmV4dCIKCSAgICAgIGZpCgkgICAgICBidWlsZF9saWJ0b29sX2xpYnM9bW9kdWxlCgkg
ICAgICBidWlsZF9vbGRfbGlicz15ZXMKCSAgICBlbHNlCgkgICAgICBidWlsZF9saWJ0b29sX2xp
YnM9bm8KCSAgICBmaQoJICBlbHNlCgkgICAgZWNobyAiKioqIFRoZSBpbnRlci1saWJyYXJ5IGRl
cGVuZGVuY2llcyB0aGF0IGhhdmUgYmVlbiBkcm9wcGVkIGhlcmUgd2lsbCBiZSIKCSAgICBlY2hv
ICIqKiogYXV0b21hdGljYWxseSBhZGRlZCB3aGVuZXZlciBhIHByb2dyYW0gaXMgbGlua2VkIHdp
dGggdGhpcyBsaWJyYXJ5IgoJICAgIGVjaG8gIioqKiBvciBpcyBkZWNsYXJlZCB0byAtZGxvcGVu
IGl0LiIKCSAgZmkKCWZpCgkjIERvbmUgY2hlY2tpbmcgZGVwbGlicyEKCWRlcGxpYnM9JG5ld2Rl
cGxpYnMKICAgICAgZmkKCiAgICAgICMgQWxsIHRoZSBsaWJyYXJ5LXNwZWNpZmljIHZhcmlhYmxl
cyAoaW5zdGFsbF9saWJkaXIgaXMgc2V0IGFib3ZlKS4KICAgICAgbGlicmFyeV9uYW1lcz0KICAg
ICAgb2xkX2xpYnJhcnk9CiAgICAgIGRsbmFtZT0KICAgICAgCiAgICAgICMgVGVzdCBhZ2Fpbiwg
d2UgbWF5IGhhdmUgZGVjaWRlZCBub3QgdG8gYnVpbGQgaXQgYW55IG1vcmUKICAgICAgaWYgdGVz
dCAiJGJ1aWxkX2xpYnRvb2xfbGlicyIgPSB5ZXM7IHRoZW4KCSMgR2V0IHRoZSByZWFsIGFuZCBs
aW5rIG5hbWVzIG9mIHRoZSBsaWJyYXJ5LgoJZXZhbCBsaWJyYXJ5X25hbWVzPVwiJGxpYnJhcnlf
bmFtZXNfc3BlY1wiCglzZXQgZHVtbXkgJGxpYnJhcnlfbmFtZXMKCXJlYWxuYW1lPSIkMiIKCXNo
aWZ0OyBzaGlmdAoKCWlmIHRlc3QgLW4gIiRzb25hbWVfc3BlYyI7IHRoZW4KCSAgZXZhbCBzb25h
bWU9XCIkc29uYW1lX3NwZWNcIgoJZWxzZQoJICBzb25hbWU9IiRyZWFsbmFtZSIKCWZpCgoJbGli
PSIkb3V0cHV0X29iamRpci8kcmVhbG5hbWUiCglmb3IgbGluawoJZG8KCSAgbGlua25hbWVzPSIk
bGlua25hbWVzICRsaW5rIgoJZG9uZQoKCSMgRW5zdXJlIHRoYXQgd2UgaGF2ZSAubyBvYmplY3Rz
IGZvciBsaW5rZXJzIHdoaWNoIGRpc2xpa2UgLmxvCgkjIChlLmcuIGFpeCkgaW4gY2FzZSB3ZSBh
cmUgcnVubmluZyAtLWRpc2FibGUtc3RhdGljCglmb3Igb2JqIGluICRsaWJvYmpzOyBkbwoJICB4
ZGlyPWAkZWNobyAiWCRvYmoiIHwgJFhzZWQgLWUgJ3MlL1teL10qJCUlJ2AKCSAgaWYgdGVzdCAi
WCR4ZGlyIiA9ICJYJG9iaiI7IHRoZW4KCSAgICB4ZGlyPSIuIgoJICBlbHNlCgkgICAgeGRpcj0i
JHhkaXIiCgkgIGZpCgkgIGJhc2VvYmo9YCRlY2hvICJYJG9iaiIgfCAkWHNlZCAtZSAncyVeLiov
JSUnYAoJICBvbGRvYmo9YCRlY2hvICJYJGJhc2VvYmoiIHwgJFhzZWQgLWUgIiRsbzJvImAKCSAg
aWYgdGVzdCAhIC1mICR4ZGlyLyRvbGRvYmo7IHRoZW4KCSAgICAkc2hvdyAiKGNkICR4ZGlyICYm
ICR7TE5fU30gJGJhc2VvYmogJG9sZG9iaikiCgkgICAgJHJ1biBldmFsICcoY2QgJHhkaXIgJiYg
JHtMTl9TfSAkYmFzZW9iaiAkb2xkb2JqKScgfHwgZXhpdCAkPwoJICBmaQoJZG9uZQoKCSMgVXNl
IHN0YW5kYXJkIG9iamVjdHMgaWYgdGhleSBhcmUgcGljCgl0ZXN0IC16ICIkcGljX2ZsYWciICYm
IGxpYm9ianM9YCRlY2hvICJYJGxpYm9ianMiIHwgJFNQMk5MIHwgJFhzZWQgLWUgIiRsbzJvIiB8
ICROTDJTUGAKCgkjIFByZXBhcmUgdGhlIGxpc3Qgb2YgZXhwb3J0ZWQgc3ltYm9scwoJaWYgdGVz
dCAteiAiJGV4cG9ydF9zeW1ib2xzIjsgdGhlbgoJICBpZiB0ZXN0ICIkYWx3YXlzX2V4cG9ydF9z
eW1ib2xzIiA9IHllcyB8fCB0ZXN0IC1uICIkZXhwb3J0X3N5bWJvbHNfcmVnZXgiOyB0aGVuCgkg
ICAgJHNob3cgImdlbmVyYXRpbmcgc3ltYm9sIGxpc3QgZm9yIFxgJGxpYm5hbWUubGEnIgoJICAg
IGV4cG9ydF9zeW1ib2xzPSIkb3V0cHV0X29iamRpci8kbGlibmFtZS5leHAiCgkgICAgJHJ1biAk
cm0gJGV4cG9ydF9zeW1ib2xzCgkgICAgZXZhbCBjbWRzPVwiJGV4cG9ydF9zeW1ib2xzX2NtZHNc
IgoJICAgIElGUz0iJHtJRlM9IAl9Ijsgc2F2ZV9pZnM9IiRJRlMiOyBJRlM9J34nCgkgICAgZm9y
IGNtZCBpbiAkY21kczsgZG8KCSAgICAgIElGUz0iJHNhdmVfaWZzIgoJICAgICAgJHNob3cgIiRj
bWQiCgkgICAgICAkcnVuIGV2YWwgIiRjbWQiIHx8IGV4aXQgJD8KCSAgICBkb25lCgkgICAgSUZT
PSIkc2F2ZV9pZnMiCgkgICAgaWYgdGVzdCAtbiAiJGV4cG9ydF9zeW1ib2xzX3JlZ2V4IjsgdGhl
bgoJICAgICAgJHNob3cgImVncmVwIC1lIFwiJGV4cG9ydF9zeW1ib2xzX3JlZ2V4XCIgXCIkZXhw
b3J0X3N5bWJvbHNcIiA+IFwiJHtleHBvcnRfc3ltYm9sc31UXCIiCgkgICAgICAkcnVuIGV2YWwg
J2VncmVwIC1lICIkZXhwb3J0X3N5bWJvbHNfcmVnZXgiICIkZXhwb3J0X3N5bWJvbHMiID4gIiR7
ZXhwb3J0X3N5bWJvbHN9VCInCgkgICAgICAkc2hvdyAiJG12IFwiJHtleHBvcnRfc3ltYm9sc31U
XCIgXCIkZXhwb3J0X3N5bWJvbHNcIiIKCSAgICAgICRydW4gZXZhbCAnJG12ICIke2V4cG9ydF9z
eW1ib2xzfVQiICIkZXhwb3J0X3N5bWJvbHMiJwoJICAgIGZpCgkgIGZpCglmaQoKCWlmIHRlc3Qg
LW4gIiRleHBvcnRfc3ltYm9scyIgJiYgdGVzdCAtbiAiJGluY2x1ZGVfZXhwc3ltcyI7IHRoZW4K
CSAgJHJ1biBldmFsICckZWNobyAiWCRpbmNsdWRlX2V4cHN5bXMiIHwgJFNQMk5MID4+ICIkZXhw
b3J0X3N5bWJvbHMiJwoJZmkKCglpZiB0ZXN0IC1uICIkY29udmVuaWVuY2UiOyB0aGVuCgkgIGlm
IHRlc3QgLW4gIiR3aG9sZV9hcmNoaXZlX2ZsYWdfc3BlYyI7IHRoZW4KCSAgICBldmFsIGxpYm9i
anM9XCJcJGxpYm9ianMgJHdob2xlX2FyY2hpdmVfZmxhZ19zcGVjXCIKCSAgZWxzZQoJICAgIGdl
bnRvcD0iJG91dHB1dF9vYmpkaXIvJHtvdXRwdXRuYW1lfXgiCgkgICAgJHNob3cgIiR7cm19ciAk
Z2VudG9wIgoJICAgICRydW4gJHtybX1yICIkZ2VudG9wIgoJICAgICRzaG93ICJta2RpciAkZ2Vu
dG9wIgoJICAgICRydW4gbWtkaXIgIiRnZW50b3AiCgkgICAgc3RhdHVzPSQ/CgkgICAgaWYgdGVz
dCAkc3RhdHVzIC1uZSAwICYmIHRlc3QgISAtZCAiJGdlbnRvcCI7IHRoZW4KCSAgICAgIGV4aXQg
JHN0YXR1cwoJICAgIGZpCgkgICAgZ2VuZXJhdGVkPSIkZ2VuZXJhdGVkICRnZW50b3AiCgoJICAg
IGZvciB4bGliIGluICRjb252ZW5pZW5jZTsgZG8KCSAgICAgICMgRXh0cmFjdCB0aGUgb2JqZWN0
cy4KCSAgICAgIGNhc2UgIiR4bGliIiBpbgoJICAgICAgW1xcL10qIHwgW0EtWmEtel06W1xcL10q
KSB4YWJzPSIkeGxpYiIgOzsKCSAgICAgICopIHhhYnM9YHB3ZGAiLyR4bGliIiA7OwoJICAgICAg
ZXNhYwoJICAgICAgeGxpYj1gJGVjaG8gIlgkeGxpYiIgfCAkWHNlZCAtZSAncyVeLiovJSUnYAoJ
ICAgICAgeGRpcj0iJGdlbnRvcC8keGxpYiIKCgkgICAgICAkc2hvdyAiJHtybX1yICR4ZGlyIgoJ
ICAgICAgJHJ1biAke3JtfXIgIiR4ZGlyIgoJICAgICAgJHNob3cgIm1rZGlyICR4ZGlyIgoJICAg
ICAgJHJ1biBta2RpciAiJHhkaXIiCgkgICAgICBzdGF0dXM9JD8KCSAgICAgIGlmIHRlc3QgJHN0
YXR1cyAtbmUgMCAmJiB0ZXN0ICEgLWQgIiR4ZGlyIjsgdGhlbgoJCWV4aXQgJHN0YXR1cwoJICAg
ICAgZmkKCSAgICAgICRzaG93ICIoY2QgJHhkaXIgJiYgJEFSIHggJHhhYnMpIgoJICAgICAgJHJ1
biBldmFsICIoY2QgXCR4ZGlyICYmICRBUiB4IFwkeGFicykiIHx8IGV4aXQgJD8KCgkgICAgICBs
aWJvYmpzPSIkbGlib2JqcyAiYGZpbmQgJHhkaXIgLW5hbWUgXCoubyAtcHJpbnQgLW8gLW5hbWUg
XCoubG8gLXByaW50IHwgJE5MMlNQYAoJICAgIGRvbmUKCSAgZmkKCWZpCgoJaWYgdGVzdCAiJHRo
cmVhZF9zYWZlIiA9IHllcyAmJiB0ZXN0IC1uICIkdGhyZWFkX3NhZmVfZmxhZ19zcGVjIjsgdGhl
bgoJICBldmFsIGZsYWc9XCIkdGhyZWFkX3NhZmVfZmxhZ19zcGVjXCIKCSAgbGlua29wdHM9IiRs
aW5rb3B0cyAkZmxhZyIKCWZpCgoJIyBEbyBlYWNoIG9mIHRoZSBhcmNoaXZlIGNvbW1hbmRzLgoJ
aWYgdGVzdCAtbiAiJGV4cG9ydF9zeW1ib2xzIiAmJiB0ZXN0IC1uICIkYXJjaGl2ZV9leHBzeW1f
Y21kcyI7IHRoZW4KCSAgZXZhbCBjbWRzPVwiJGFyY2hpdmVfZXhwc3ltX2NtZHNcIgoJZWxzZQoJ
ICBldmFsIGNtZHM9XCIkYXJjaGl2ZV9jbWRzXCIKCWZpCglJRlM9IiR7SUZTPSAJfSI7IHNhdmVf
aWZzPSIkSUZTIjsgSUZTPSd+JwoJZm9yIGNtZCBpbiAkY21kczsgZG8KCSAgSUZTPSIkc2F2ZV9p
ZnMiCgkgICRzaG93ICIkY21kIgoJICAkcnVuIGV2YWwgIiRjbWQiIHx8IGV4aXQgJD8KCWRvbmUK
CUlGUz0iJHNhdmVfaWZzIgoKCSMgQ3JlYXRlIGxpbmtzIHRvIHRoZSByZWFsIGxpYnJhcnkuCglm
b3IgbGlua25hbWUgaW4gJGxpbmtuYW1lczsgZG8KCSAgaWYgdGVzdCAiJHJlYWxuYW1lIiAhPSAi
JGxpbmtuYW1lIjsgdGhlbgoJICAgICRzaG93ICIoY2QgJG91dHB1dF9vYmpkaXIgJiYgJHJtICRs
aW5rbmFtZSAmJiAkTE5fUyAkcmVhbG5hbWUgJGxpbmtuYW1lKSIKCSAgICAkcnVuIGV2YWwgJyhj
ZCAkb3V0cHV0X29iamRpciAmJiAkcm0gJGxpbmtuYW1lICYmICRMTl9TICRyZWFsbmFtZSAkbGlu
a25hbWUpJyB8fCBleGl0ICQ/CgkgIGZpCglkb25lCgoJIyBJZiAtbW9kdWxlIG9yIC1leHBvcnQt
ZHluYW1pYyB3YXMgc3BlY2lmaWVkLCBzZXQgdGhlIGRsbmFtZS4KCWlmIHRlc3QgIiRtb2R1bGUi
ID0geWVzIHx8IHRlc3QgIiRleHBvcnRfZHluYW1pYyIgPSB5ZXM7IHRoZW4KCSAgIyBPbiBhbGwg
a25vd24gb3BlcmF0aW5nIHN5c3RlbXMsIHRoZXNlIGFyZSBpZGVudGljYWwuCgkgIGRsbmFtZT0i
JHNvbmFtZSIKCWZpCiAgICAgIGZpCiAgICAgIDs7CgogICAgKi5sbyB8ICoubyB8ICoub2JqKQog
ICAgICBpZiB0ZXN0IC1uICIkbGlua19hZ2FpbnN0X2xpYnRvb2xfbGlicyI7IHRoZW4KCSRlY2hv
ICIkbW9kZW5hbWU6IGVycm9yOiBjYW5ub3QgbGluayBsaWJ0b29sIGxpYnJhcmllcyBpbnRvIG9i
amVjdHMiIDE+JjIKCWV4aXQgMQogICAgICBmaQoKICAgICAgaWYgdGVzdCAtbiAiJGRlcGxpYnMi
OyB0aGVuCgkkZWNobyAiJG1vZGVuYW1lOiB3YXJuaW5nOiBcYC1sJyBhbmQgXGAtTCcgYXJlIGln
bm9yZWQgZm9yIG9iamVjdHMiIDE+JjIKICAgICAgZmkKCiAgICAgIGlmIHRlc3QgLW4gIiRkbGZp
bGVzJGRscHJlZmlsZXMiIHx8IHRlc3QgIiRkbHNlbGYiICE9IG5vOyB0aGVuCgkkZWNobyAiJG1v
ZGVuYW1lOiB3YXJuaW5nOiBcYC1kbG9wZW4nIGlzIGlnbm9yZWQgZm9yIG9iamVjdHMiIDE+JjIK
ICAgICAgZmkKCiAgICAgIGlmIHRlc3QgLW4gIiRycGF0aCI7IHRoZW4KCSRlY2hvICIkbW9kZW5h
bWU6IHdhcm5pbmc6IFxgLXJwYXRoJyBpcyBpZ25vcmVkIGZvciBvYmplY3RzIiAxPiYyCiAgICAg
IGZpCgogICAgICBpZiB0ZXN0IC1uICIkeHJwYXRoIjsgdGhlbgoJJGVjaG8gIiRtb2RlbmFtZTog
d2FybmluZzogXGAtUicgaXMgaWdub3JlZCBmb3Igb2JqZWN0cyIgMT4mMgogICAgICBmaQoKICAg
ICAgaWYgdGVzdCAtbiAiJHZpbmZvIjsgdGhlbgoJJGVjaG8gIiRtb2RlbmFtZTogd2FybmluZzog
XGAtdmVyc2lvbi1pbmZvJyBpcyBpZ25vcmVkIGZvciBvYmplY3RzIiAxPiYyCiAgICAgIGZpCgog
ICAgICBpZiB0ZXN0IC1uICIkcmVsZWFzZSI7IHRoZW4KCSRlY2hvICIkbW9kZW5hbWU6IHdhcm5p
bmc6IFxgLXJlbGVhc2UnIGlzIGlnbm9yZWQgZm9yIG9iamVjdHMiIDE+JjIKICAgICAgZmkKCiAg
ICAgIGNhc2UgIiRvdXRwdXQiIGluCiAgICAgICoubG8pCglpZiB0ZXN0IC1uICIkb2JqcyI7IHRo
ZW4KCSAgJGVjaG8gIiRtb2RlbmFtZTogY2Fubm90IGJ1aWxkIGxpYnJhcnkgb2JqZWN0IFxgJG91
dHB1dCcgZnJvbSBub24tbGlidG9vbCBvYmplY3RzIiAxPiYyCgkgIGV4aXQgMQoJZmkKCWxpYm9i
aj0iJG91dHB1dCIKCW9iaj1gJGVjaG8gIlgkb3V0cHV0IiB8ICRYc2VkIC1lICIkbG8ybyJgCgk7
OwogICAgICAqKQoJbGlib2JqPQoJb2JqPSIkb3V0cHV0IgoJOzsKICAgICAgZXNhYwoKICAgICAg
IyBEZWxldGUgdGhlIG9sZCBvYmplY3RzLgogICAgICAkcnVuICRybSAkb2JqICRsaWJvYmoKCiAg
ICAgICMgT2JqZWN0cyBmcm9tIGNvbnZlbmllbmNlIGxpYnJhcmllcy4gIFRoaXMgYXNzdW1lcwog
ICAgICAjIHNpbmdsZS12ZXJzaW9uIGNvbnZlbmllbmNlIGxpYnJhcmllcy4gIFdoZW5ldmVyIHdl
IGNyZWF0ZQogICAgICAjIGRpZmZlcmVudCBvbmVzIGZvciBQSUMvbm9uLVBJQywgdGhpcyB3ZSds
bCBoYXZlIHRvIGR1cGxpY2F0ZQogICAgICAjIHRoZSBleHRyYWN0aW9uLgogICAgICByZWxvYWRf
Y29udl9vYmpzPQogICAgICBnZW50b3A9CiAgICAgICMgcmVsb2FkX2NtZHMgcnVucyAkTEQgZGly
ZWN0bHksIHNvIGxldCB1cyBnZXQgcmlkIG9mCiAgICAgICMgLVdsIGZyb20gd2hvbGVfYXJjaGl2
ZV9mbGFnX3NwZWMKICAgICAgd2w9IAoKICAgICAgaWYgdGVzdCAtbiAiJGNvbnZlbmllbmNlIjsg
dGhlbgoJaWYgdGVzdCAtbiAiJHdob2xlX2FyY2hpdmVfZmxhZ19zcGVjIjsgdGhlbgoJICBldmFs
IHJlbG9hZF9jb252X29ianM9XCJcJHJlbG9hZF9vYmpzICR3aG9sZV9hcmNoaXZlX2ZsYWdfc3Bl
Y1wiCgllbHNlCgkgIGdlbnRvcD0iJG91dHB1dF9vYmpkaXIvJHtvYmp9eCIKCSAgJHNob3cgIiR7
cm19ciAkZ2VudG9wIgoJICAkcnVuICR7cm19ciAiJGdlbnRvcCIKCSAgJHNob3cgIm1rZGlyICRn
ZW50b3AiCgkgICRydW4gbWtkaXIgIiRnZW50b3AiCgkgIHN0YXR1cz0kPwoJICBpZiB0ZXN0ICRz
dGF0dXMgLW5lIDAgJiYgdGVzdCAhIC1kICIkZ2VudG9wIjsgdGhlbgoJICAgIGV4aXQgJHN0YXR1
cwoJICBmaQoJICBnZW5lcmF0ZWQ9IiRnZW5lcmF0ZWQgJGdlbnRvcCIKCgkgIGZvciB4bGliIGlu
ICRjb252ZW5pZW5jZTsgZG8KCSAgICAjIEV4dHJhY3QgdGhlIG9iamVjdHMuCgkgICAgY2FzZSAi
JHhsaWIiIGluCgkgICAgW1xcL10qIHwgW0EtWmEtel06W1xcL10qKSB4YWJzPSIkeGxpYiIgOzsK
CSAgICAqKSB4YWJzPWBwd2RgIi8keGxpYiIgOzsKCSAgICBlc2FjCgkgICAgeGxpYj1gJGVjaG8g
IlgkeGxpYiIgfCAkWHNlZCAtZSAncyVeLiovJSUnYAoJICAgIHhkaXI9IiRnZW50b3AvJHhsaWIi
CgoJICAgICRzaG93ICIke3JtfXIgJHhkaXIiCgkgICAgJHJ1biAke3JtfXIgIiR4ZGlyIgoJICAg
ICRzaG93ICJta2RpciAkeGRpciIKCSAgICAkcnVuIG1rZGlyICIkeGRpciIKCSAgICBzdGF0dXM9
JD8KCSAgICBpZiB0ZXN0ICRzdGF0dXMgLW5lIDAgJiYgdGVzdCAhIC1kICIkeGRpciI7IHRoZW4K
CSAgICAgIGV4aXQgJHN0YXR1cwoJICAgIGZpCgkgICAgJHNob3cgIihjZCAkeGRpciAmJiAkQVIg
eCAkeGFicykiCgkgICAgJHJ1biBldmFsICIoY2QgXCR4ZGlyICYmICRBUiB4IFwkeGFicykiIHx8
IGV4aXQgJD8KCgkgICAgcmVsb2FkX2NvbnZfb2Jqcz0iJHJlbG9hZF9vYmpzICJgZmluZCAkeGRp
ciAtbmFtZSBcKi5vIC1wcmludCAtbyAtbmFtZSBcKi5sbyAtcHJpbnQgfCAkTkwyU1BgCgkgIGRv
bmUKCWZpCiAgICAgIGZpCgogICAgICAjIENyZWF0ZSB0aGUgb2xkLXN0eWxlIG9iamVjdC4KICAg
ICAgcmVsb2FkX29ianM9IiRvYmpzICJgJGVjaG8gIlgkbGlib2JqcyIgfCAkU1AyTkwgfCAkWHNl
ZCAtZSAnL1wuJyR7bGliZXh0fSQnL2QnIC1lICcvXC5saWIkL2QnIC1lICIkbG8ybyIgfCAkTkwy
U1BgIiAkcmVsb2FkX2NvbnZfb2JqcyIKCiAgICAgIG91dHB1dD0iJG9iaiIKICAgICAgZXZhbCBj
bWRzPVwiJHJlbG9hZF9jbWRzXCIKICAgICAgSUZTPSIke0lGUz0gCX0iOyBzYXZlX2lmcz0iJElG
UyI7IElGUz0nficKICAgICAgZm9yIGNtZCBpbiAkY21kczsgZG8KCUlGUz0iJHNhdmVfaWZzIgoJ
JHNob3cgIiRjbWQiCgkkcnVuIGV2YWwgIiRjbWQiIHx8IGV4aXQgJD8KICAgICAgZG9uZQogICAg
ICBJRlM9IiRzYXZlX2lmcyIKCiAgICAgICMgRXhpdCBpZiB3ZSBhcmVuJ3QgZG9pbmcgYSBsaWJy
YXJ5IG9iamVjdCBmaWxlLgogICAgICBpZiB0ZXN0IC16ICIkbGlib2JqIjsgdGhlbgoJaWYgdGVz
dCAtbiAiJGdlbnRvcCI7IHRoZW4KCSAgJHNob3cgIiR7cm19ciAkZ2VudG9wIgoJICAkcnVuICR7
cm19ciAkZ2VudG9wCglmaQoKCWV4aXQgMAogICAgICBmaQoKICAgICAgaWYgdGVzdCAiJGJ1aWxk
X2xpYnRvb2xfbGlicyIgIT0geWVzOyB0aGVuCglpZiB0ZXN0IC1uICIkZ2VudG9wIjsgdGhlbgoJ
ICAkc2hvdyAiJHtybX1yICRnZW50b3AiCgkgICRydW4gJHtybX1yICRnZW50b3AKCWZpCgoJIyBD
cmVhdGUgYW4gaW52YWxpZCBsaWJ0b29sIG9iamVjdCBpZiBubyBQSUMsIHNvIHRoYXQgd2UgZG9u
J3QKCSMgYWNjaWRlbnRhbGx5IGxpbmsgaXQgaW50byBhIHByb2dyYW0uCgkkc2hvdyAiZWNobyB0
aW1lc3RhbXAgPiAkbGlib2JqIgoJJHJ1biBldmFsICJlY2hvIHRpbWVzdGFtcCA+ICRsaWJvYmoi
IHx8IGV4aXQgJD8KCWV4aXQgMAogICAgICBmaQoKICAgICAgaWYgdGVzdCAtbiAiJHBpY19mbGFn
IjsgdGhlbgoJIyBPbmx5IGRvIGNvbW1hbmRzIGlmIHdlIHJlYWxseSBoYXZlIGRpZmZlcmVudCBQ
SUMgb2JqZWN0cy4KCXJlbG9hZF9vYmpzPSIkbGlib2JqcyAkcmVsb2FkX2NvbnZfb2JqcyIKCW91
dHB1dD0iJGxpYm9iaiIKCWV2YWwgY21kcz1cIiRyZWxvYWRfY21kc1wiCglJRlM9IiR7SUZTPSAJ
fSI7IHNhdmVfaWZzPSIkSUZTIjsgSUZTPSd+JwoJZm9yIGNtZCBpbiAkY21kczsgZG8KCSAgSUZT
PSIkc2F2ZV9pZnMiCgkgICRzaG93ICIkY21kIgoJICAkcnVuIGV2YWwgIiRjbWQiIHx8IGV4aXQg
JD8KCWRvbmUKCUlGUz0iJHNhdmVfaWZzIgogICAgICBlbHNlCgkjIEp1c3QgY3JlYXRlIGEgc3lt
bGluay4KCSRzaG93ICRybSAkbGlib2JqCgkkcnVuICRybSAkbGlib2JqCgl4ZGlyPWAkZWNobyAi
WCRsaWJvYmoiIHwgJFhzZWQgLWUgJ3MlL1teL10qJCUlJ2AKCWlmIHRlc3QgIlgkeGRpciIgPSAi
WCRsaWJvYmoiOyB0aGVuCgkgIHhkaXI9Ii4iCgllbHNlCgkgIHhkaXI9IiR4ZGlyIgoJZmkKCWJh
c2VvYmo9YCRlY2hvICJYJGxpYm9iaiIgfCAkWHNlZCAtZSAncyVeLiovJSUnYAoJb2xkb2JqPWAk
ZWNobyAiWCRiYXNlb2JqIiB8ICRYc2VkIC1lICIkbG8ybyJgCgkkc2hvdyAiKGNkICR4ZGlyICYm
ICRMTl9TICRvbGRvYmogJGJhc2VvYmopIgoJJHJ1biBldmFsICcoY2QgJHhkaXIgJiYgJExOX1Mg
JG9sZG9iaiAkYmFzZW9iaiknIHx8IGV4aXQgJD8KICAgICAgZmkKCiAgICAgIGlmIHRlc3QgLW4g
IiRnZW50b3AiOyB0aGVuCgkkc2hvdyAiJHtybX1yICRnZW50b3AiCgkkcnVuICR7cm19ciAkZ2Vu
dG9wCiAgICAgIGZpCgogICAgICBleGl0IDAKICAgICAgOzsKCiAgICAjIEFueXRoaW5nIGVsc2Ug
c2hvdWxkIGJlIGEgcHJvZ3JhbS4KICAgICopCiAgICAgIGlmIHRlc3QgLW4gIiR2aW5mbyI7IHRo
ZW4KCSRlY2hvICIkbW9kZW5hbWU6IHdhcm5pbmc6IFxgLXZlcnNpb24taW5mbycgaXMgaWdub3Jl
ZCBmb3IgcHJvZ3JhbXMiIDE+JjIKICAgICAgZmkKCiAgICAgIGlmIHRlc3QgLW4gIiRyZWxlYXNl
IjsgdGhlbgoJJGVjaG8gIiRtb2RlbmFtZTogd2FybmluZzogXGAtcmVsZWFzZScgaXMgaWdub3Jl
ZCBmb3IgcHJvZ3JhbXMiIDE+JjIKICAgICAgZmkKCiAgICAgIGlmIHRlc3QgIiRwcmVsb2FkIiA9
IHllczsgdGhlbgoJaWYgdGVzdCAiJGRsb3BlbiIgPSB1bmtub3duICYmIHRlc3QgIiRkbG9wZW5f
c2VsZiIgPSB1bmtub3duICYmCgkgICB0ZXN0ICIkZGxvcGVuX3NlbGZfc3RhdGljIiA9IHVua25v
d247IHRoZW4KCSAgJGVjaG8gIiRtb2RlbmFtZTogd2FybmluZzogXGBBQ19MSUJUT09MX0RMT1BF
Ticgbm90IHVzZWQuIEFzc3VtaW5nIG5vIGRsb3BlbiBzdXBwb3J0LiIKCWZpIAogICAgICBmaQog
ICAgCiAgICAgIGlmIHRlc3QgLW4gIiRycGF0aCR4cnBhdGgiOyB0aGVuCgkjIElmIHRoZSB1c2Vy
IHNwZWNpZmllZCBhbnkgcnBhdGggZmxhZ3MsIHRoZW4gYWRkIHRoZW0uCglmb3IgbGliZGlyIGlu
ICRycGF0aCAkeHJwYXRoOyBkbwoJICAjIFRoaXMgaXMgdGhlIG1hZ2ljIHRvIHVzZSAtcnBhdGgu
CgkgIGNhc2UgIiRjb21waWxlX3JwYXRoICIgaW4KCSAgKiIgJGxpYmRpciAiKikgOzsKCSAgKikg
Y29tcGlsZV9ycGF0aD0iJGNvbXBpbGVfcnBhdGggJGxpYmRpciIgOzsKCSAgZXNhYwoJICBjYXNl
ICIkZmluYWxpemVfcnBhdGggIiBpbgoJICAqIiAkbGliZGlyICIqKSA7OwoJICAqKSBmaW5hbGl6
ZV9ycGF0aD0iJGZpbmFsaXplX3JwYXRoICRsaWJkaXIiIDs7CgkgIGVzYWMKCWRvbmUKICAgICAg
ZmkKCiAgICAgICMgTm93IGhhcmRjb2RlIHRoZSBsaWJyYXJ5IHBhdGhzCiAgICAgIHJwYXRoPQog
ICAgICBoYXJkY29kZV9saWJkaXJzPQogICAgICBmb3IgbGliZGlyIGluICRjb21waWxlX3JwYXRo
ICRmaW5hbGl6ZV9ycGF0aDsgZG8KCWlmIHRlc3QgLW4gIiRoYXJkY29kZV9saWJkaXJfZmxhZ19z
cGVjIjsgdGhlbgoJICBpZiB0ZXN0IC1uICIkaGFyZGNvZGVfbGliZGlyX3NlcGFyYXRvciI7IHRo
ZW4KCSAgICBpZiB0ZXN0IC16ICIkaGFyZGNvZGVfbGliZGlycyI7IHRoZW4KCSAgICAgIGhhcmRj
b2RlX2xpYmRpcnM9IiRsaWJkaXIiCgkgICAgZWxzZQoJICAgICAgIyBKdXN0IGFjY3VtdWxhdGUg
dGhlIHVuaXF1ZSBsaWJkaXJzLgoJICAgICAgY2FzZSAiJGhhcmRjb2RlX2xpYmRpcl9zZXBhcmF0
b3IkaGFyZGNvZGVfbGliZGlycyRoYXJkY29kZV9saWJkaXJfc2VwYXJhdG9yIiBpbgoJICAgICAg
KiIkaGFyZGNvZGVfbGliZGlyX3NlcGFyYXRvciRsaWJkaXIkaGFyZGNvZGVfbGliZGlyX3NlcGFy
YXRvciIqKQoJCTs7CgkgICAgICAqKQoJCWhhcmRjb2RlX2xpYmRpcnM9IiRoYXJkY29kZV9saWJk
aXJzJGhhcmRjb2RlX2xpYmRpcl9zZXBhcmF0b3IkbGliZGlyIgoJCTs7CgkgICAgICBlc2FjCgkg
ICAgZmkKCSAgZWxzZQoJICAgIGV2YWwgZmxhZz1cIiRoYXJkY29kZV9saWJkaXJfZmxhZ19zcGVj
XCIKCSAgICBycGF0aD0iJHJwYXRoICRmbGFnIgoJICBmaQoJZWxpZiB0ZXN0IC1uICIkcnVucGF0
aF92YXIiOyB0aGVuCgkgIGNhc2UgIiRwZXJtX3JwYXRoICIgaW4KCSAgKiIgJGxpYmRpciAiKikg
OzsKCSAgKikgcGVybV9ycGF0aD0iJHBlcm1fcnBhdGggJGxpYmRpciIgOzsKCSAgZXNhYwoJZmkK
ICAgICAgZG9uZQogICAgICAjIFN1YnN0aXR1dGUgdGhlIGhhcmRjb2RlZCBsaWJkaXJzIGludG8g
dGhlIHJwYXRoLgogICAgICBpZiB0ZXN0IC1uICIkaGFyZGNvZGVfbGliZGlyX3NlcGFyYXRvciIg
JiYKCSB0ZXN0IC1uICIkaGFyZGNvZGVfbGliZGlycyI7IHRoZW4KCWxpYmRpcj0iJGhhcmRjb2Rl
X2xpYmRpcnMiCglldmFsIHJwYXRoPVwiICRoYXJkY29kZV9saWJkaXJfZmxhZ19zcGVjXCIKICAg
ICAgZmkKICAgICAgY29tcGlsZV9ycGF0aD0iJHJwYXRoIgoKICAgICAgcnBhdGg9CiAgICAgIGhh
cmRjb2RlX2xpYmRpcnM9CiAgICAgIGZvciBsaWJkaXIgaW4gJGZpbmFsaXplX3JwYXRoOyBkbwoJ
aWYgdGVzdCAtbiAiJGhhcmRjb2RlX2xpYmRpcl9mbGFnX3NwZWMiOyB0aGVuCgkgIGlmIHRlc3Qg
LW4gIiRoYXJkY29kZV9saWJkaXJfc2VwYXJhdG9yIjsgdGhlbgoJICAgIGlmIHRlc3QgLXogIiRo
YXJkY29kZV9saWJkaXJzIjsgdGhlbgoJICAgICAgaGFyZGNvZGVfbGliZGlycz0iJGxpYmRpciIK
CSAgICBlbHNlCgkgICAgICAjIEp1c3QgYWNjdW11bGF0ZSB0aGUgdW5pcXVlIGxpYmRpcnMuCgkg
ICAgICBjYXNlICIkaGFyZGNvZGVfbGliZGlyX3NlcGFyYXRvciRoYXJkY29kZV9saWJkaXJzJGhh
cmRjb2RlX2xpYmRpcl9zZXBhcmF0b3IiIGluCgkgICAgICAqIiRoYXJkY29kZV9saWJkaXJfc2Vw
YXJhdG9yJGxpYmRpciRoYXJkY29kZV9saWJkaXJfc2VwYXJhdG9yIiopCgkJOzsKCSAgICAgICop
CgkJaGFyZGNvZGVfbGliZGlycz0iJGhhcmRjb2RlX2xpYmRpcnMkaGFyZGNvZGVfbGliZGlyX3Nl
cGFyYXRvciRsaWJkaXIiCgkJOzsKCSAgICAgIGVzYWMKCSAgICBmaQoJICBlbHNlCgkgICAgZXZh
bCBmbGFnPVwiJGhhcmRjb2RlX2xpYmRpcl9mbGFnX3NwZWNcIgoJICAgIHJwYXRoPSIkcnBhdGgg
JGZsYWciCgkgIGZpCgllbGlmIHRlc3QgLW4gIiRydW5wYXRoX3ZhciI7IHRoZW4KCSAgY2FzZSAi
JGZpbmFsaXplX3Blcm1fcnBhdGggIiBpbgoJICAqIiAkbGliZGlyICIqKSA7OwoJICAqKSBmaW5h
bGl6ZV9wZXJtX3JwYXRoPSIkZmluYWxpemVfcGVybV9ycGF0aCAkbGliZGlyIiA7OwoJICBlc2Fj
CglmaQogICAgICBkb25lCiAgICAgICMgU3Vic3RpdHV0ZSB0aGUgaGFyZGNvZGVkIGxpYmRpcnMg
aW50byB0aGUgcnBhdGguCiAgICAgIGlmIHRlc3QgLW4gIiRoYXJkY29kZV9saWJkaXJfc2VwYXJh
dG9yIiAmJgoJIHRlc3QgLW4gIiRoYXJkY29kZV9saWJkaXJzIjsgdGhlbgoJbGliZGlyPSIkaGFy
ZGNvZGVfbGliZGlycyIKCWV2YWwgcnBhdGg9XCIgJGhhcmRjb2RlX2xpYmRpcl9mbGFnX3NwZWNc
IgogICAgICBmaQogICAgICBmaW5hbGl6ZV9ycGF0aD0iJHJwYXRoIgoKICAgICAgb3V0cHV0X29i
amRpcj1gJGVjaG8gIlgkb3V0cHV0IiB8ICRYc2VkIC1lICdzJS9bXi9dKiQlJSdgCiAgICAgIGlm
IHRlc3QgIlgkb3V0cHV0X29iamRpciIgPSAiWCRvdXRwdXQiOyB0aGVuCglvdXRwdXRfb2JqZGly
PSIkb2JqZGlyIgogICAgICBlbHNlCglvdXRwdXRfb2JqZGlyPSIkb3V0cHV0X29iamRpci8kb2Jq
ZGlyIgogICAgICBmaQoKICAgICAgIyBDcmVhdGUgdGhlIGJpbmFyeSBpbiB0aGUgb2JqZWN0IGRp
cmVjdG9yeSwgdGhlbiB3cmFwIGl0LgogICAgICBpZiB0ZXN0ICEgLWQgJG91dHB1dF9vYmpkaXI7
IHRoZW4KCSRzaG93ICIkbWtkaXIgJG91dHB1dF9vYmpkaXIiCgkkcnVuICRta2RpciAkb3V0cHV0
X29iamRpcgoJc3RhdHVzPSQ/CglpZiB0ZXN0ICRzdGF0dXMgLW5lIDAgJiYgdGVzdCAhIC1kICRv
dXRwdXRfb2JqZGlyOyB0aGVuCgkgIGV4aXQgJHN0YXR1cwoJZmkKICAgICAgZmkKCiAgICAgIGlm
IHRlc3QgLW4gIiRsaWJvYmpzIiAmJiB0ZXN0ICIkYnVpbGRfb2xkX2xpYnMiID0geWVzOyB0aGVu
CgkjIFRyYW5zZm9ybSBhbGwgdGhlIGxpYnJhcnkgb2JqZWN0cyBpbnRvIHN0YW5kYXJkIG9iamVj
dHMuCgljb21waWxlX2NvbW1hbmQ9YCRlY2hvICJYJGNvbXBpbGVfY29tbWFuZCIgfCAkU1AyTkwg
fCAkWHNlZCAtZSAiJGxvMm8iIHwgJE5MMlNQYAoJZmluYWxpemVfY29tbWFuZD1gJGVjaG8gIlgk
ZmluYWxpemVfY29tbWFuZCIgfCAkU1AyTkwgfCAkWHNlZCAtZSAiJGxvMm8iIHwgJE5MMlNQYAog
ICAgICBmaQoKICAgICAgZGxzeW1zPQogICAgICBpZiB0ZXN0IC1uICIkZGxmaWxlcyRkbHByZWZp
bGVzIiB8fCB0ZXN0ICIkZGxzZWxmIiAhPSBubzsgdGhlbgoJaWYgdGVzdCAtbiAiJE5NIiAmJiB0
ZXN0IC1uICIkZ2xvYmFsX3N5bWJvbF9waXBlIjsgdGhlbgoJICBkbHN5bXM9IiR7b3V0cHV0bmFt
ZX1TLmMiCgllbHNlCgkgICRlY2hvICIkbW9kZW5hbWU6IG5vdCBjb25maWd1cmVkIHRvIGV4dHJh
Y3QgZ2xvYmFsIHN5bWJvbHMgZnJvbSBkbHByZW9wZW5lZCBmaWxlcyIgMT4mMgoJZmkKICAgICAg
ZmkKCiAgICAgIGlmIHRlc3QgLW4gIiRkbHN5bXMiOyB0aGVuCgljYXNlICIkZGxzeW1zIiBpbgoJ
IiIpIDs7CgkqLmMpCgkgICMgRGlzY292ZXIgdGhlIG5saXN0IG9mIGVhY2ggb2YgdGhlIGRsZmls
ZXMuCgkgIG5saXN0PSIkb3V0cHV0X29iamRpci8ke291dHB1dG5hbWV9Lm5tIgoKCSAgJHNob3cg
IiRybSAkbmxpc3QgJHtubGlzdH1TICR7bmxpc3R9VCIKCSAgJHJ1biAkcm0gIiRubGlzdCIgIiR7
bmxpc3R9UyIgIiR7bmxpc3R9VCIKCgkgICMgUGFyc2UgdGhlIG5hbWUgbGlzdCBpbnRvIGEgc291
cmNlIGZpbGUuCgkgICRzaG93ICJjcmVhdGluZyAkb3V0cHV0X29iamRpci8kZGxzeW1zIgoKCSAg
dGVzdCAteiAiJHJ1biIgJiYgJGVjaG8gPiAiJG91dHB1dF9vYmpkaXIvJGRsc3ltcyIgIlwKLyog
JGRsc3ltcyAtIHN5bWJvbCByZXNvbHV0aW9uIHRhYmxlIGZvciBcYCRvdXRwdXRuYW1lJyBkbHN5
bSBlbXVsYXRpb24uICovCi8qIEdlbmVyYXRlZCBieSAkUFJPR1JBTSAtIEdOVSAkUEFDS0FHRSAk
VkVSU0lPTiRUSU1FU1RBTVAgKi8KCiNpZmRlZiBfX2NwbHVzcGx1cwpleHRlcm4gXCJDXCIgewoj
ZW5kaWYKCi8qIFByZXZlbnQgdGhlIG9ubHkga2luZCBvZiBkZWNsYXJhdGlvbiBjb25mbGljdHMg
d2UgY2FuIG1ha2UuICovCiNkZWZpbmUgbHRfcHJlbG9hZGVkX3N5bWJvbHMgc29tZV9vdGhlcl9z
eW1ib2wKCi8qIEV4dGVybmFsIHN5bWJvbCBkZWNsYXJhdGlvbnMgZm9yIHRoZSBjb21waWxlci4g
Ki9cCiIKCgkgIGlmIHRlc3QgIiRkbHNlbGYiID0geWVzOyB0aGVuCgkgICAgJHNob3cgImdlbmVy
YXRpbmcgc3ltYm9sIGxpc3QgZm9yIFxgJG91dHB1dCciCgoJICAgIHRlc3QgLXogIiRydW4iICYm
ICRlY2hvICc6IEBQUk9HUkFNQCAnID4gIiRubGlzdCIKCgkgICAgIyBBZGQgb3VyIG93biBwcm9n
cmFtIG9iamVjdHMgdG8gdGhlIHN5bWJvbCBsaXN0LgoJICAgIHByb2dmaWxlcz1gJGVjaG8gIlgk
b2JqcyIgfCAkU1AyTkwgfCAkWHNlZCAtZSAiJGxvMm8iIHwgJE5MMlNQYAoJICAgIGZvciBhcmcg
aW4gJHByb2dmaWxlczsgZG8KCSAgICAgICRzaG93ICJleHRyYWN0aW5nIGdsb2JhbCBDIHN5bWJv
bHMgZnJvbSBcYCRhcmcnIgoJICAgICAgJHJ1biBldmFsICIkTk0gJGFyZyB8ICRnbG9iYWxfc3lt
Ym9sX3BpcGUgPj4gJyRubGlzdCciCgkgICAgZG9uZQoKCSAgICBpZiB0ZXN0IC1uICIkZXhjbHVk
ZV9leHBzeW1zIjsgdGhlbgoJICAgICAgJHJ1biBldmFsICdlZ3JlcCAtdiAiICgkZXhjbHVkZV9l
eHBzeW1zKSQiICIkbmxpc3QiID4gIiRubGlzdCJUJwoJICAgICAgJHJ1biBldmFsICckbXYgIiRu
bGlzdCJUICIkbmxpc3QiJwoJICAgIGZpCgkgICAgCgkgICAgaWYgdGVzdCAtbiAiJGV4cG9ydF9z
eW1ib2xzX3JlZ2V4IjsgdGhlbgoJICAgICAgJHJ1biBldmFsICdlZ3JlcCAtZSAiJGV4cG9ydF9z
eW1ib2xzX3JlZ2V4IiAiJG5saXN0IiA+ICIkbmxpc3QiVCcKCSAgICAgICRydW4gZXZhbCAnJG12
ICIkbmxpc3QiVCAiJG5saXN0IicKCSAgICBmaQoKCSAgICAjIFByZXBhcmUgdGhlIGxpc3Qgb2Yg
ZXhwb3J0ZWQgc3ltYm9scwoJICAgIGlmIHRlc3QgLXogIiRleHBvcnRfc3ltYm9scyI7IHRoZW4K
CSAgICAgIGV4cG9ydF9zeW1ib2xzPSIkb3V0cHV0X29iamRpci8kb3V0cHV0LmV4cCIKCSAgICAg
ICRydW4gJHJtICRleHBvcnRfc3ltYm9scwoJICAgICAgJHJ1biBldmFsICJzZWQgLW4gLWUgJy9e
OiBAUFJPR1JBTUAkL2QnIC1lICdzL14uKiBcKC4qXCkkL1wxL3AnICInPCAiJG5saXN0IiA+ICIk
ZXhwb3J0X3N5bWJvbHMiJwoJICAgIGVsc2UKCSAgICAgICRydW4gZXZhbCAic2VkIC1lICdzL1wo
W11bLipeJF1cKS9cXFwxL2cnIC1lICdzL14vIC8nIC1lICdzLyQvJC8nIicgPCAiJGV4cG9ydF9z
eW1ib2xzIiA+ICIkb3V0cHV0X29iamRpci8kb3V0cHV0LmV4cCInCgkgICAgICAkcnVuIGV2YWwg
J2dyZXAgLWYgIiRvdXRwdXRfb2JqZGlyLyRvdXRwdXQuZXhwIiA8ICIkbmxpc3QiID4gIiRubGlz
dCJUJwoJICAgICAgJHJ1biBldmFsICdtdiAiJG5saXN0IlQgIiRubGlzdCInCgkgICAgZmkKCSAg
ZmkKCgkgIGZvciBhcmcgaW4gJGRscHJlZmlsZXM7IGRvCgkgICAgJHNob3cgImV4dHJhY3Rpbmcg
Z2xvYmFsIEMgc3ltYm9scyBmcm9tIFxgJGFyZyciCgkgICAgbmFtZT1gZWNobyAiJGFyZyIgfCBz
ZWQgLWUgJ3MlXi4qLyUlJ2AKCSAgICAkcnVuIGV2YWwgJ2VjaG8gIjogJG5hbWUgIiA+PiAiJG5s
aXN0IicKCSAgICAkcnVuIGV2YWwgIiROTSAkYXJnIHwgJGdsb2JhbF9zeW1ib2xfcGlwZSA+PiAn
JG5saXN0JyIKCSAgZG9uZQoKCSAgaWYgdGVzdCAteiAiJHJ1biI7IHRoZW4KCSAgICAjIE1ha2Ug
c3VyZSB3ZSBoYXZlIGF0IGxlYXN0IGFuIGVtcHR5IGZpbGUuCgkgICAgdGVzdCAtZiAiJG5saXN0
IiB8fCA6ID4gIiRubGlzdCIKCgkgICAgaWYgdGVzdCAtbiAiJGV4Y2x1ZGVfZXhwc3ltcyI7IHRo
ZW4KCSAgICAgIGVncmVwIC12ICIgKCRleGNsdWRlX2V4cHN5bXMpJCIgIiRubGlzdCIgPiAiJG5s
aXN0IlQKCSAgICAgICRtdiAiJG5saXN0IlQgIiRubGlzdCIKCSAgICBmaQoKCSAgICAjIFRyeSBz
b3J0aW5nIGFuZCB1bmlxdWlmeWluZyB0aGUgb3V0cHV0LgoJICAgIGlmIGdyZXAgLXYgIl46ICIg
PCAiJG5saXN0IiB8IHNvcnQgKzIgfCB1bmlxID4gIiRubGlzdCJTOyB0aGVuCgkgICAgICA6Cgkg
ICAgZWxzZQoJICAgICAgZ3JlcCAtdiAiXjogIiA8ICIkbmxpc3QiID4gIiRubGlzdCJTCgkgICAg
ZmkKCgkgICAgaWYgdGVzdCAtZiAiJG5saXN0IlM7IHRoZW4KCSAgICAgIGV2YWwgIiRnbG9iYWxf
c3ltYm9sX3RvX2NkZWNsIicgPCAiJG5saXN0IlMgPj4gIiRvdXRwdXRfb2JqZGlyLyRkbHN5bXMi
JwoJICAgIGVsc2UKCSAgICAgIGVjaG8gJy8qIE5PTkUgKi8nID4+ICIkb3V0cHV0X29iamRpci8k
ZGxzeW1zIgoJICAgIGZpCgoJICAgICRlY2hvID4+ICIkb3V0cHV0X29iamRpci8kZGxzeW1zIiAi
XAoKI3VuZGVmIGx0X3ByZWxvYWRlZF9zeW1ib2xzCgojaWYgZGVmaW5lZCAoX19TVERDX18pICYm
IF9fU1REQ19fCiMgZGVmaW5lIGx0X3B0cl90IHZvaWQgKgojZWxzZQojIGRlZmluZSBsdF9wdHJf
dCBjaGFyICoKIyBkZWZpbmUgY29uc3QKI2VuZGlmCgovKiBUaGUgbWFwcGluZyBiZXR3ZWVuIHN5
bWJvbCBuYW1lcyBhbmQgc3ltYm9scy4gKi8KY29uc3Qgc3RydWN0IHsKICBjb25zdCBjaGFyICpu
YW1lOwogIGx0X3B0cl90IGFkZHJlc3M7Cn0KbHRfcHJlbG9hZGVkX3N5bWJvbHNbXSA9CntcCiIK
CgkgICAgc2VkIC1uIC1lICdzL146IFwoW14gXSpcKSAkLyAge1wiXDFcIiwgKGx0X3B0cl90KSAw
fSwvcCcgXAoJCS1lICdzL14uIFwoW14gXSpcKSBcKFteIF0qXCkkLyAgeyJcMiIsIChsdF9wdHJf
dCkgXCZcMn0sL3AnIFwKCQkgIDwgIiRubGlzdCIgPj4gIiRvdXRwdXRfb2JqZGlyLyRkbHN5bXMi
CgoJICAgICRlY2hvID4+ICIkb3V0cHV0X29iamRpci8kZGxzeW1zIiAiXAogIHswLCAobHRfcHRy
X3QpIDB9Cn07CgovKiBUaGlzIHdvcmtzIGFyb3VuZCBhIHByb2JsZW0gaW4gRnJlZUJTRCBsaW5r
ZXIgKi8KI2lmZGVmIEZSRUVCU0RfV09SS0FST1VORApzdGF0aWMgY29uc3Qgdm9pZCAqbHRfcHJl
bG9hZGVkX3NldHVwKCkgewogIHJldHVybiBsdF9wcmVsb2FkZWRfc3ltYm9sczsKfQojZW5kaWYK
CiNpZmRlZiBfX2NwbHVzcGx1cwp9CiNlbmRpZlwKIgoJICBmaQoKCSAgcGljX2ZsYWdfZm9yX3N5
bXRhYmxlPQoJICBjYXNlICIkaG9zdCIgaW4KCSAgIyBjb21waWxpbmcgdGhlIHN5bWJvbCB0YWJs
ZSBmaWxlIHdpdGggcGljX2ZsYWcgd29ya3MgYXJvdW5kCgkgICMgYSBGcmVlQlNEIGJ1ZyB0aGF0
IGNhdXNlcyBwcm9ncmFtcyB0byBjcmFzaCB3aGVuIC1sbSBpcwoJICAjIGxpbmtlZCBiZWZvcmUg
YW55IG90aGVyIFBJQyBvYmplY3QuICBCdXQgd2UgbXVzdCBub3QgdXNlCgkgICMgcGljX2ZsYWcg
d2hlbiBsaW5raW5nIHdpdGggLXN0YXRpYy4gIFRoZSBwcm9ibGVtIGV4aXN0cyBpbgoJICAjIEZy
ZWVCU0QgMi4yLjYgYW5kIGlzIGZpeGVkIGluIEZyZWVCU0QgMy4xLgoJICAqLSotZnJlZWJzZDIq
fCotKi1mcmVlYnNkMy4wKnwqLSotZnJlZWJzZGVsZjMuMCopDQoJICAgIGNhc2UgIiRjb21waWxl
X2NvbW1hbmQgIiBpbgoJICAgICoiIC1zdGF0aWMgIiopIDs7CgkgICAgKikgcGljX2ZsYWdfZm9y
X3N5bXRhYmxlPSIgJHBpY19mbGFnIC1EUElDIC1ERlJFRUJTRF9XT1JLQVJPVU5EIjs7CgkgICAg
ZXNhYzs7CgkgICotKi1ocHV4KikKCSAgICBjYXNlICIkY29tcGlsZV9jb21tYW5kICIgaW4KCSAg
ICAqIiAtc3RhdGljICIqKSA7OwoJICAgICopIHBpY19mbGFnX2Zvcl9zeW10YWJsZT0iICRwaWNf
ZmxhZyAtRFBJQyI7OwoJICAgIGVzYWMKCSAgZXNhYwoKCSAgIyBOb3cgY29tcGlsZSB0aGUgZHlu
YW1pYyBzeW1ib2wgZmlsZS4KCSAgJHNob3cgIihjZCAkb3V0cHV0X29iamRpciAmJiAkQ0MgLWMk
bm9fYnVpbHRpbl9mbGFnJHBpY19mbGFnX2Zvcl9zeW10YWJsZSBcIiRkbHN5bXNcIikiCgkgICRy
dW4gZXZhbCAnKGNkICRvdXRwdXRfb2JqZGlyICYmICRDQyAtYyRub19idWlsdGluX2ZsYWckcGlj
X2ZsYWdfZm9yX3N5bXRhYmxlICIkZGxzeW1zIiknIHx8IGV4aXQgJD8KCgkgICMgQ2xlYW4gdXAg
dGhlIGdlbmVyYXRlZCBmaWxlcy4KCSAgJHNob3cgIiRybSAkb3V0cHV0X29iamRpci8kZGxzeW1z
ICRubGlzdCAke25saXN0fVMgJHtubGlzdH1UIgoJICAkcnVuICRybSAiJG91dHB1dF9vYmpkaXIv
JGRsc3ltcyIgIiRubGlzdCIgIiR7bmxpc3R9UyIgIiR7bmxpc3R9VCIKCgkgICMgVHJhbnNmb3Jt
IHRoZSBzeW1ib2wgZmlsZSBpbnRvIHRoZSBjb3JyZWN0IG5hbWUuCgkgIGNvbXBpbGVfY29tbWFu
ZD1gJGVjaG8gIlgkY29tcGlsZV9jb21tYW5kIiB8ICRYc2VkIC1lICJzJUBTWU1GSUxFQCUkb3V0
cHV0X29iamRpci8ke291dHB1dG5hbWV9Uy4ke29iamV4dH0lImAKCSAgZmluYWxpemVfY29tbWFu
ZD1gJGVjaG8gIlgkZmluYWxpemVfY29tbWFuZCIgfCAkWHNlZCAtZSAicyVAU1lNRklMRUAlJG91
dHB1dF9vYmpkaXIvJHtvdXRwdXRuYW1lfVMuJHtvYmpleHR9JSJgCgkgIDs7CgkqKQoJICAkZWNo
byAiJG1vZGVuYW1lOiB1bmtub3duIHN1ZmZpeCBmb3IgXGAkZGxzeW1zJyIgMT4mMgoJICBleGl0
IDEKCSAgOzsKCWVzYWMKICAgICAgZWxzZQoJIyBXZSBrZWVwIGdvaW5nIGp1c3QgaW4gY2FzZSB0
aGUgdXNlciBkaWRuJ3QgcmVmZXIgdG8KCSMgbHRfcHJlbG9hZGVkX3N5bWJvbHMuICBUaGUgbGlu
a2VyIHdpbGwgZmFpbCBpZiBnbG9iYWxfc3ltYm9sX3BpcGUKCSMgcmVhbGx5IHdhcyByZXF1aXJl
ZC4KCgkjIE51bGxpZnkgdGhlIHN5bWJvbCBmaWxlLgoJY29tcGlsZV9jb21tYW5kPWAkZWNobyAi
WCRjb21waWxlX2NvbW1hbmQiIHwgJFhzZWQgLWUgInMlIEBTWU1GSUxFQCUlImAKCWZpbmFsaXpl
X2NvbW1hbmQ9YCRlY2hvICJYJGZpbmFsaXplX2NvbW1hbmQiIHwgJFhzZWQgLWUgInMlIEBTWU1G
SUxFQCUlImAKICAgICAgZmkKCiAgICAgIGlmIHRlc3QgLXogIiRsaW5rX2FnYWluc3RfbGlidG9v
bF9saWJzIiB8fCB0ZXN0ICIkYnVpbGRfbGlidG9vbF9saWJzIiAhPSB5ZXM7IHRoZW4KCSMgUmVw
bGFjZSB0aGUgb3V0cHV0IGZpbGUgc3BlY2lmaWNhdGlvbi4KCWNvbXBpbGVfY29tbWFuZD1gJGVj
aG8gIlgkY29tcGlsZV9jb21tYW5kIiB8ICRYc2VkIC1lICdzJUBPVVRQVVRAJSciJG91dHB1dCIn
JWcnYAoJbGlua19jb21tYW5kPSIkY29tcGlsZV9jb21tYW5kJGNvbXBpbGVfcnBhdGgiCgoJIyBX
ZSBoYXZlIG5vIHVuaW5zdGFsbGVkIGxpYnJhcnkgZGVwZW5kZW5jaWVzLCBzbyBmaW5hbGl6ZSBy
aWdodCBub3cuCgkkc2hvdyAiJGxpbmtfY29tbWFuZCIKCSRydW4gZXZhbCAiJGxpbmtfY29tbWFu
ZCIKCXN0YXR1cz0kPwoJCgkjIERlbGV0ZSB0aGUgZ2VuZXJhdGVkIGZpbGVzLgoJaWYgdGVzdCAt
biAiJGRsc3ltcyI7IHRoZW4KCSAgJHNob3cgIiRybSAkb3V0cHV0X29iamRpci8ke291dHB1dG5h
bWV9Uy4ke29iamV4dH0iCgkgICRydW4gJHJtICIkb3V0cHV0X29iamRpci8ke291dHB1dG5hbWV9
Uy4ke29iamV4dH0iCglmaQoKCWV4aXQgJHN0YXR1cwogICAgICBmaQoKICAgICAgaWYgdGVzdCAt
biAiJHNobGlicGF0aF92YXIiOyB0aGVuCgkjIFdlIHNob3VsZCBzZXQgdGhlIHNobGlicGF0aF92
YXIKCXJwYXRoPQoJZm9yIGRpciBpbiAkdGVtcF9ycGF0aDsgZG8KCSAgY2FzZSAiJGRpciIgaW4K
CSAgW1xcL10qIHwgW0EtWmEtel06W1xcL10qKQoJICAgICMgQWJzb2x1dGUgcGF0aC4KCSAgICBy
cGF0aD0iJHJwYXRoJGRpcjoiCgkgICAgOzsKCSAgKikKCSAgICAjIFJlbGF0aXZlIHBhdGg6IGFk
ZCBhIHRoaXNkaXIgZW50cnkuCgkgICAgcnBhdGg9IiRycGF0aFwkdGhpc2Rpci8kZGlyOiIKCSAg
ICA7OwoJICBlc2FjCglkb25lCgl0ZW1wX3JwYXRoPSIkcnBhdGgiCiAgICAgIGZpCgogICAgICBp
ZiB0ZXN0IC1uICIkY29tcGlsZV9zaGxpYnBhdGgkZmluYWxpemVfc2hsaWJwYXRoIjsgdGhlbgoJ
Y29tcGlsZV9jb21tYW5kPSIkc2hsaWJwYXRoX3Zhcj1cIiRjb21waWxlX3NobGlicGF0aCRmaW5h
bGl6ZV9zaGxpYnBhdGhcJCRzaGxpYnBhdGhfdmFyXCIgJGNvbXBpbGVfY29tbWFuZCIKICAgICAg
ZmkKICAgICAgaWYgdGVzdCAtbiAiJGZpbmFsaXplX3NobGlicGF0aCI7IHRoZW4KCWZpbmFsaXpl
X2NvbW1hbmQ9IiRzaGxpYnBhdGhfdmFyPVwiJGZpbmFsaXplX3NobGlicGF0aFwkJHNobGlicGF0
aF92YXJcIiAkZmluYWxpemVfY29tbWFuZCIKICAgICAgZmkKCiAgICAgIGNvbXBpbGVfdmFyPQog
ICAgICBmaW5hbGl6ZV92YXI9CiAgICAgIGlmIHRlc3QgLW4gIiRydW5wYXRoX3ZhciI7IHRoZW4K
CWlmIHRlc3QgLW4gIiRwZXJtX3JwYXRoIjsgdGhlbgoJICAjIFdlIHNob3VsZCBzZXQgdGhlIHJ1
bnBhdGhfdmFyLgoJICBycGF0aD0KCSAgZm9yIGRpciBpbiAkcGVybV9ycGF0aDsgZG8KCSAgICBy
cGF0aD0iJHJwYXRoJGRpcjoiCgkgIGRvbmUKCSAgY29tcGlsZV92YXI9IiRydW5wYXRoX3Zhcj1c
IiRycGF0aFwkJHJ1bnBhdGhfdmFyXCIgIgoJZmkKCWlmIHRlc3QgLW4gIiRmaW5hbGl6ZV9wZXJt
X3JwYXRoIjsgdGhlbgoJICAjIFdlIHNob3VsZCBzZXQgdGhlIHJ1bnBhdGhfdmFyLgoJICBycGF0
aD0KCSAgZm9yIGRpciBpbiAkZmluYWxpemVfcGVybV9ycGF0aDsgZG8KCSAgICBycGF0aD0iJHJw
YXRoJGRpcjoiCgkgIGRvbmUKCSAgZmluYWxpemVfdmFyPSIkcnVucGF0aF92YXI9XCIkcnBhdGhc
JCRydW5wYXRoX3ZhclwiICIKCWZpCiAgICAgIGZpCgogICAgICBpZiB0ZXN0ICIkaGFyZGNvZGVf
YWN0aW9uIiA9IHJlbGluazsgdGhlbgoJIyBGYXN0IGluc3RhbGxhdGlvbiBpcyBub3Qgc3VwcG9y
dGVkCglsaW5rX2NvbW1hbmQ9IiRjb21waWxlX3ZhciRjb21waWxlX2NvbW1hbmQkY29tcGlsZV9y
cGF0aCIKCXJlbGlua19jb21tYW5kPSIkZmluYWxpemVfdmFyJGZpbmFsaXplX2NvbW1hbmQkZmlu
YWxpemVfcnBhdGgiCgkKCSRlY2hvICIkbW9kZW5hbWU6IHdhcm5pbmc6IHRoaXMgcGxhdGZvcm0g
ZG9lcyBub3QgbGlrZSB1bmluc3RhbGxlZCBzaGFyZWQgbGlicmFyaWVzIiAxPiYyCgkkZWNobyAi
JG1vZGVuYW1lOiBcYCRvdXRwdXQnIHdpbGwgYmUgcmVsaW5rZWQgZHVyaW5nIGluc3RhbGxhdGlv
biIgMT4mMgogICAgICBlbHNlCglpZiB0ZXN0ICIkZmFzdF9pbnN0YWxsIiAhPSBubzsgdGhlbgoJ
ICBsaW5rX2NvbW1hbmQ9IiRmaW5hbGl6ZV92YXIkY29tcGlsZV9jb21tYW5kJGZpbmFsaXplX3Jw
YXRoIgoJICBpZiB0ZXN0ICIkZmFzdF9pbnN0YWxsIiA9IHllczsgdGhlbgoJICAgIHJlbGlua19j
b21tYW5kPWAkZWNobyAiWCRjb21waWxlX3ZhciRjb21waWxlX2NvbW1hbmQkY29tcGlsZV9ycGF0
aCIgfCAkWHNlZCAtZSAncyVAT1VUUFVUQCVcJHByb2dkaXIvXCRmaWxlJWcnYAoJICBlbHNlCgkg
ICAgIyBmYXN0X2luc3RhbGwgaXMgc2V0IHRvIG5lZWRsZXNzCgkgICAgcmVsaW5rX2NvbW1hbmQ9
CgkgIGZpCgllbHNlCgkgIGxpbmtfY29tbWFuZD0iJGNvbXBpbGVfdmFyJGNvbXBpbGVfY29tbWFu
ZCRjb21waWxlX3JwYXRoIgoJICByZWxpbmtfY29tbWFuZD0iJGZpbmFsaXplX3ZhciRmaW5hbGl6
ZV9jb21tYW5kJGZpbmFsaXplX3JwYXRoIgoJZmkKICAgICAgZmkKCiAgICAgICMgUmVwbGFjZSB0
aGUgb3V0cHV0IGZpbGUgc3BlY2lmaWNhdGlvbi4KICAgICAgbGlua19jb21tYW5kPWAkZWNobyAi
WCRsaW5rX2NvbW1hbmQiIHwgJFhzZWQgLWUgJ3MlQE9VVFBVVEAlJyIkb3V0cHV0X29iamRpci8k
b3V0cHV0bmFtZSInJWcnYAogICAgICAKICAgICAgIyBEZWxldGUgdGhlIG9sZCBvdXRwdXQgZmls
ZXMuCiAgICAgICRydW4gJHJtICRvdXRwdXQgJG91dHB1dF9vYmpkaXIvJG91dHB1dG5hbWUgJG91
dHB1dF9vYmpkaXIvbHQtJG91dHB1dG5hbWUKCiAgICAgICRzaG93ICIkbGlua19jb21tYW5kIgog
ICAgICAkcnVuIGV2YWwgIiRsaW5rX2NvbW1hbmQiIHx8IGV4aXQgJD8KCiAgICAgICMgTm93IGNy
ZWF0ZSB0aGUgd3JhcHBlciBzY3JpcHQuCiAgICAgICRzaG93ICJjcmVhdGluZyAkb3V0cHV0IgoK
ICAgICAgIyBRdW90ZSB0aGUgcmVsaW5rIGNvbW1hbmQgZm9yIHNoaXBwaW5nLgogICAgICBpZiB0
ZXN0IC1uICIkcmVsaW5rX2NvbW1hbmQiOyB0aGVuCglyZWxpbmtfY29tbWFuZD1gJGVjaG8gIlgk
cmVsaW5rX2NvbW1hbmQiIHwgJFhzZWQgLWUgIiRzZWRfcXVvdGVfc3Vic3QiYAogICAgICBmaQoK
ICAgICAgIyBRdW90ZSAkZWNobyBmb3Igc2hpcHBpbmcuCiAgICAgIGlmIHRlc3QgIlgkZWNobyIg
PSAiWCRTSEVMTCAkMCAtLWZhbGxiYWNrLWVjaG8iOyB0aGVuCgljYXNlICIkMCIgaW4KCVtcXC9d
KiB8IFtBLVphLXpdOltcXC9dKikgcWVjaG89IiRTSEVMTCAkMCAtLWZhbGxiYWNrLWVjaG8iOzsK
CSopIHFlY2hvPSIkU0hFTEwgYHB3ZGAvJDAgLS1mYWxsYmFjay1lY2hvIjs7Cgllc2FjCglxZWNo
bz1gJGVjaG8gIlgkcWVjaG8iIHwgJFhzZWQgLWUgIiRzZWRfcXVvdGVfc3Vic3QiYAogICAgICBl
bHNlCglxZWNobz1gJGVjaG8gIlgkZWNobyIgfCAkWHNlZCAtZSAiJHNlZF9xdW90ZV9zdWJzdCJg
CiAgICAgIGZpCgogICAgICAjIE9ubHkgYWN0dWFsbHkgZG8gdGhpbmdzIGlmIG91ciBydW4gY29t
bWFuZCBpcyBub24tbnVsbC4KICAgICAgaWYgdGVzdCAteiAiJHJ1biI7IHRoZW4KCSMgd2luMzIg
d2lsbCB0aGluayB0aGUgc2NyaXB0IGlzIGEgYmluYXJ5IGlmIGl0IGhhcwoJIyBhIC5leGUgc3Vm
Zml4LCBzbyB3ZSBzdHJpcCBpdCBvZmYgaGVyZS4KCWNhc2UgJG91dHB1dCBpbgoJICAqLmV4ZSkg
b3V0cHV0PWBlY2hvICRvdXRwdXR8c2VkICdzLC5leGUkLCwnYCA7OwoJZXNhYwoJJHJtICRvdXRw
dXQKCXRyYXAgIiRybSAkb3V0cHV0OyBleGl0IDEiIDEgMiAxNQoKCSRlY2hvID4gJG91dHB1dCAi
XAojISAkU0hFTEwKCiMgJG91dHB1dCAtIHRlbXBvcmFyeSB3cmFwcGVyIHNjcmlwdCBmb3IgJG9i
amRpci8kb3V0cHV0bmFtZQojIEdlbmVyYXRlZCBieSAkUFJPR1JBTSAtIEdOVSAkUEFDS0FHRSAk
VkVSU0lPTiRUSU1FU1RBTVAKIwojIFRoZSAkb3V0cHV0IHByb2dyYW0gY2Fubm90IGJlIGRpcmVj
dGx5IGV4ZWN1dGVkIHVudGlsIGFsbCB0aGUgbGlidG9vbAojIGxpYnJhcmllcyB0aGF0IGl0IGRl
cGVuZHMgb24gYXJlIGluc3RhbGxlZC4KIwojIFRoaXMgd3JhcHBlciBzY3JpcHQgc2hvdWxkIG5l
dmVyIGJlIG1vdmVkIG91dCBvZiB0aGUgYnVpbGQgZGlyZWN0b3J5LgojIElmIGl0IGlzLCBpdCB3
aWxsIG5vdCBvcGVyYXRlIGNvcnJlY3RseS4KCiMgU2VkIHN1YnN0aXR1dGlvbiB0aGF0IGhlbHBz
IHVzIGRvIHJvYnVzdCBxdW90aW5nLiAgSXQgYmFja3NsYXNoaWZpZXMKIyBtZXRhY2hhcmFjdGVy
cyB0aGF0IGFyZSBzdGlsbCBhY3RpdmUgd2l0aGluIGRvdWJsZS1xdW90ZWQgc3RyaW5ncy4KWHNl
ZD0nc2VkIC1lIDFzL15YLy8nCnNlZF9xdW90ZV9zdWJzdD0nJHNlZF9xdW90ZV9zdWJzdCcKCiMg
VGhlIEhQLVVYIGtzaCBhbmQgUE9TSVggc2hlbGwgcHJpbnQgdGhlIHRhcmdldCBkaXJlY3Rvcnkg
dG8gc3Rkb3V0CiMgaWYgQ0RQQVRIIGlzIHNldC4KaWYgdGVzdCBcIlwke0NEUEFUSCtzZXR9XCIg
PSBzZXQ7IHRoZW4gQ0RQQVRIPTo7IGV4cG9ydCBDRFBBVEg7IGZpCgpyZWxpbmtfY29tbWFuZD1c
IiRyZWxpbmtfY29tbWFuZFwiCgojIFRoaXMgZW52aXJvbm1lbnQgdmFyaWFibGUgZGV0ZXJtaW5l
cyBvdXIgb3BlcmF0aW9uIG1vZGUuCmlmIHRlc3QgXCJcJGxpYnRvb2xfaW5zdGFsbF9tYWdpY1wi
ID0gXCIkbWFnaWNcIjsgdGhlbgogICMgaW5zdGFsbCBtb2RlIG5lZWRzIHRoZSBmb2xsb3dpbmcg
dmFyaWFibGU6CiAgbGlua19hZ2FpbnN0X2xpYnRvb2xfbGlicz0nJGxpbmtfYWdhaW5zdF9saWJ0
b29sX2xpYnMnCmVsc2UKICAjIFdoZW4gd2UgYXJlIHNvdXJjZWQgaW4gZXhlY3V0ZSBtb2RlLCBc
JGZpbGUgYW5kIFwkZWNobyBhcmUgYWxyZWFkeSBzZXQuCiAgaWYgdGVzdCBcIlwkbGlidG9vbF9l
eGVjdXRlX21hZ2ljXCIgIT0gXCIkbWFnaWNcIjsgdGhlbgogICAgZWNobz1cIiRxZWNob1wiCiAg
ICBmaWxlPVwiXCQwXCIKICAgICMgTWFrZSBzdXJlIGVjaG8gd29ya3MuCiAgICBpZiB0ZXN0IFwi
WFwkMVwiID0gWC0tbm8tcmVleGVjOyB0aGVuCiAgICAgICMgRGlzY2FyZCB0aGUgLS1uby1yZWV4
ZWMgZmxhZywgYW5kIGNvbnRpbnVlLgogICAgICBzaGlmdAogICAgZWxpZiB0ZXN0IFwiWFxgKFwk
ZWNobyAnXHQnKSAyPi9kZXYvbnVsbFxgXCIgPSAnWFx0JzsgdGhlbgogICAgICAjIFlpcHBlZSwg
XCRlY2hvIHdvcmtzIQogICAgICA6CiAgICBlbHNlCiAgICAgICMgUmVzdGFydCB1bmRlciB0aGUg
Y29ycmVjdCBzaGVsbCwgYW5kIHRoZW4gbWF5YmUgXCRlY2hvIHdpbGwgd29yay4KICAgICAgZXhl
YyAkU0hFTEwgXCJcJDBcIiAtLW5vLXJlZXhlYyBcJHsxK1wiXCRAXCJ9CiAgICBmaQogIGZpXAoi
CgkkZWNobyA+PiAkb3V0cHV0ICJcCgogICMgRmluZCB0aGUgZGlyZWN0b3J5IHRoYXQgdGhpcyBz
Y3JpcHQgbGl2ZXMgaW4uCiAgdGhpc2Rpcj1cYFwkZWNobyBcIlhcJGZpbGVcIiB8IFwkWHNlZCAt
ZSAncyUvW14vXSokJSUnXGAKICB0ZXN0IFwieFwkdGhpc2RpclwiID0gXCJ4XCRmaWxlXCIgJiYg
dGhpc2Rpcj0uCgogICMgRm9sbG93IHN5bWJvbGljIGxpbmtzIHVudGlsIHdlIGdldCB0byB0aGUg
cmVhbCB0aGlzZGlyLgogIGZpbGU9XGBscyAtbGQgXCJcJGZpbGVcIiB8IHNlZCAtbiAncy8uKi0+
IC8vcCdcYAogIHdoaWxlIHRlc3QgLW4gXCJcJGZpbGVcIjsgZG8KICAgIGRlc3RkaXI9XGBcJGVj
aG8gXCJYXCRmaWxlXCIgfCBcJFhzZWQgLWUgJ3MlL1teL10qXCQlJSdcYAoKICAgICMgSWYgdGhl
cmUgd2FzIGEgZGlyZWN0b3J5IGNvbXBvbmVudCwgdGhlbiBjaGFuZ2UgdGhpc2Rpci4KICAgIGlm
IHRlc3QgXCJ4XCRkZXN0ZGlyXCIgIT0gXCJ4XCRmaWxlXCI7IHRoZW4KICAgICAgY2FzZSBcIlwk
ZGVzdGRpclwiIGluCiAgICAgIFtcXC9dKiB8IFtBLVphLXpdOltcXC9dKikgdGhpc2Rpcj1cIlwk
ZGVzdGRpclwiIDs7CiAgICAgICopIHRoaXNkaXI9XCJcJHRoaXNkaXIvXCRkZXN0ZGlyXCIgOzsK
ICAgICAgZXNhYwogICAgZmkKCiAgICBmaWxlPVxgXCRlY2hvIFwiWFwkZmlsZVwiIHwgXCRYc2Vk
IC1lICdzJV4uKi8lJSdcYAogICAgZmlsZT1cYGxzIC1sZCBcIlwkdGhpc2Rpci9cJGZpbGVcIiB8
IHNlZCAtbiAncy8uKi0+IC8vcCdcYAogIGRvbmUKCiAgIyBUcnkgdG8gZ2V0IHRoZSBhYnNvbHV0
ZSBkaXJlY3RvcnkgbmFtZS4KICBhYnNkaXI9XGBjZCBcIlwkdGhpc2RpclwiICYmIHB3ZFxgCiAg
dGVzdCAtbiBcIlwkYWJzZGlyXCIgJiYgdGhpc2Rpcj1cIlwkYWJzZGlyXCIKIgoKCWlmIHRlc3Qg
IiRmYXN0X2luc3RhbGwiID0geWVzOyB0aGVuCgkgIGVjaG8gPj4gJG91dHB1dCAiXAogIHByb2dy
YW09bHQtJyRvdXRwdXRuYW1lJwogIHByb2dkaXI9XCJcJHRoaXNkaXIvJG9iamRpclwiCiAgCiAg
aWYgdGVzdCAhIC1mIFwiXCRwcm9nZGlyL1wkcHJvZ3JhbVwiIHx8IFxcCiAgICAgeyBmaWxlPVxg
bHMgLTFkdCBcIlwkcHJvZ2Rpci9cJHByb2dyYW1cIiBcIlwkcHJvZ2Rpci8uLi9cJHByb2dyYW1c
IiAyPi9kZXYvbnVsbCB8IHNlZCAxcVxgOyBcXAogICAgICAgdGVzdCBcIlhcJGZpbGVcIiAhPSBc
IlhcJHByb2dkaXIvXCRwcm9ncmFtXCI7IH07IHRoZW4KCiAgICBmaWxlPVwiXCRcJC1cJHByb2dy
YW1cIgoKICAgIGlmIHRlc3QgISAtZCBcIlwkcHJvZ2RpclwiOyB0aGVuCiAgICAgICRta2RpciBc
IlwkcHJvZ2RpclwiCiAgICBlbHNlCiAgICAgICRybSBcIlwkcHJvZ2Rpci9cJGZpbGVcIgogICAg
ZmkiCgoJICBlY2hvID4+ICRvdXRwdXQgIlwKCiAgICAjIHJlbGluayBleGVjdXRhYmxlIGlmIG5l
Y2Vzc2FyeQogICAgaWYgdGVzdCAtbiBcIlwkcmVsaW5rX2NvbW1hbmRcIjsgdGhlbgogICAgICBp
ZiAoY2QgXCJcJHRoaXNkaXJcIiAmJiBldmFsIFwkcmVsaW5rX2NvbW1hbmQpOyB0aGVuIDoKICAg
ICAgZWxzZQoJJHJtIFwiXCRwcm9nZGlyL1wkZmlsZVwiCglleGl0IDEKICAgICAgZmkKICAgIGZp
CgogICAgJG12IFwiXCRwcm9nZGlyL1wkZmlsZVwiIFwiXCRwcm9nZGlyL1wkcHJvZ3JhbVwiIDI+
L2Rldi9udWxsIHx8CiAgICB7ICRybSBcIlwkcHJvZ2Rpci9cJHByb2dyYW1cIjsKICAgICAgJG12
IFwiXCRwcm9nZGlyL1wkZmlsZVwiIFwiXCRwcm9nZGlyL1wkcHJvZ3JhbVwiOyB9CiAgICAkcm0g
XCJcJHByb2dkaXIvXCRmaWxlXCIKICBmaSIKCWVsc2UKCSAgZWNobyA+PiAkb3V0cHV0ICJcCiAg
cHJvZ3JhbT0nJG91dHB1dG5hbWUnCiAgcHJvZ2Rpcj1cIlwkdGhpc2Rpci8kb2JqZGlyXCIKIgoJ
ZmkKCgllY2hvID4+ICRvdXRwdXQgIlwKCiAgaWYgdGVzdCAtZiBcIlwkcHJvZ2Rpci9cJHByb2dy
YW1cIjsgdGhlbiIKCgkjIEV4cG9ydCBvdXIgc2hsaWJwYXRoX3ZhciBpZiB3ZSBoYXZlIG9uZS4K
CWlmIHRlc3QgIiRzaGxpYnBhdGhfb3ZlcnJpZGVzX3J1bnBhdGgiID0geWVzICYmIHRlc3QgLW4g
IiRzaGxpYnBhdGhfdmFyIiAmJiB0ZXN0IC1uICIkdGVtcF9ycGF0aCI7IHRoZW4KCSAgJGVjaG8g
Pj4gJG91dHB1dCAiXAogICAgIyBBZGQgb3VyIG93biBsaWJyYXJ5IHBhdGggdG8gJHNobGlicGF0
aF92YXIKICAgICRzaGxpYnBhdGhfdmFyPVwiJHRlbXBfcnBhdGhcJCRzaGxpYnBhdGhfdmFyXCIK
CiAgICAjIFNvbWUgc3lzdGVtcyBjYW5ub3QgY29wZSB3aXRoIGNvbG9uLXRlcm1pbmF0ZWQgJHNo
bGlicGF0aF92YXIKICAgICMgVGhlIHNlY29uZCBjb2xvbiBpcyBhIHdvcmthcm91bmQgZm9yIGEg
YnVnIGluIEJlT1MgUjQgc2VkCiAgICAkc2hsaWJwYXRoX3Zhcj1cYFwkZWNobyBcIlhcJCRzaGxp
YnBhdGhfdmFyXCIgfCBcJFhzZWQgLWUgJ3MvOjoqXCQvLydcYAoKICAgIGV4cG9ydCAkc2hsaWJw
YXRoX3ZhcgoiCglmaQoKCSMgZml4dXAgdGhlIGRsbCBzZWFyY2hwYXRoIGlmIHdlIG5lZWQgdG8u
CglpZiB0ZXN0IC1uICIkZGxsc2VhcmNocGF0aCI7IHRoZW4KCSAgJGVjaG8gPj4gJG91dHB1dCAi
XAogICAgIyBBZGQgdGhlIGRsbCBzZWFyY2ggcGF0aCBjb21wb25lbnRzIHRvIHRoZSBleGVjdXRh
YmxlIFBBVEgKICAgIFBBVEg9JGRsbHNlYXJjaHBhdGg6XCRQQVRICiIKCWZpCgoJJGVjaG8gPj4g
JG91dHB1dCAiXAogICAgaWYgdGVzdCBcIlwkbGlidG9vbF9leGVjdXRlX21hZ2ljXCIgIT0gXCIk
bWFnaWNcIjsgdGhlbgogICAgICAjIFJ1biB0aGUgYWN0dWFsIHByb2dyYW0gd2l0aCBvdXIgYXJn
dW1lbnRzLgoiCgljYXNlICRob3N0IGluCgkgICMgd2luMzIgc3lzdGVtcyBuZWVkIHRvIHVzZSB0
aGUgcHJvZyBwYXRoIGZvciBkbGwKCSAgIyBsb29rdXAgdG8gd29yawoJKi0qLWN5Z3dpbiopCgkg
ICRlY2hvID4+ICRvdXRwdXQgIlwKICAgICAgZXhlYyBcJHByb2dkaXIvXCRwcm9ncmFtIFwkezEr
XCJcJEBcIn0KIgoJICA7OwoKCSMgQmFja3NsYXNoZXMgc2VwYXJhdGUgZGlyZWN0b3JpZXMgb24g
cGxhaW4gd2luZG93cwoJKi0qLW1pbmd3IHwgKi0qLW9zMiopCgkgICRlY2hvID4+ICRvdXRwdXQg
IlwKICAgICAgZXhlYyBcJHByb2dkaXJcXFxcXCRwcm9ncmFtIFwkezErXCJcJEBcIn0KIgoJICA7
OwoKCSopCgkgICRlY2hvID4+ICRvdXRwdXQgIlwKICAgICAgIyBFeHBvcnQgdGhlIHBhdGggdG8g
dGhlIHByb2dyYW0uCiAgICAgIFBBVEg9XCJcJHByb2dkaXI6XCRQQVRIXCIKICAgICAgZXhwb3J0
IFBBVEgKCiAgICAgIGV4ZWMgXCRwcm9ncmFtIFwkezErXCJcJEBcIn0KIgoJICA7OwoJZXNhYwoJ
JGVjaG8gPj4gJG91dHB1dCAiXAogICAgICBcJGVjaG8gXCJcJDA6IGNhbm5vdCBleGVjIFwkcHJv
Z3JhbSBcJHsxK1wiXCRAXCJ9XCIKICAgICAgZXhpdCAxCiAgICBmaQogIGVsc2UKICAgICMgVGhl
IHByb2dyYW0gZG9lc24ndCBleGlzdC4KICAgIFwkZWNobyBcIlwkMDogZXJyb3I6IFwkcHJvZ2Rp
ci9cJHByb2dyYW0gZG9lcyBub3QgZXhpc3RcIiAxPiYyCiAgICBcJGVjaG8gXCJUaGlzIHNjcmlw
dCBpcyBqdXN0IGEgd3JhcHBlciBmb3IgXCRwcm9ncmFtLlwiIDE+JjIKICAgIGVjaG8gXCJTZWUg
dGhlICRQQUNLQUdFIGRvY3VtZW50YXRpb24gZm9yIG1vcmUgaW5mb3JtYXRpb24uXCIgMT4mMgog
ICAgZXhpdCAxCiAgZmkKZmlcCiIKCWNobW9kICt4ICRvdXRwdXQKICAgICAgZmkKICAgICAgZXhp
dCAwCiAgICAgIDs7CiAgICBlc2FjCgogICAgIyBTZWUgaWYgd2UgbmVlZCB0byBidWlsZCBhbiBv
bGQtZmFzaGlvbmVkIGFyY2hpdmUuCiAgICBmb3Igb2xkbGliIGluICRvbGRsaWJzOyBkbwoKICAg
ICAgaWYgdGVzdCAiJGJ1aWxkX2xpYnRvb2xfbGlicyIgPSBjb252ZW5pZW5jZTsgdGhlbgoJb2xk
b2Jqcz0iJGxpYm9ianNfc2F2ZSIKCWFkZGxpYnM9IiRjb252ZW5pZW5jZSIKCWJ1aWxkX2xpYnRv
b2xfbGlicz1ubwogICAgICBlbHNlCglpZiB0ZXN0ICIkYnVpbGRfbGlidG9vbF9saWJzIiA9IG1v
ZHVsZTsgdGhlbgoJICBvbGRvYmpzPSIkbGlib2Jqc19zYXZlIgoJICBidWlsZF9saWJ0b29sX2xp
YnM9bm8KCWVsc2UKCSAgb2xkb2Jqcz0iJG9ianMgImAkZWNobyAiWCRsaWJvYmpzX3NhdmUiIHwg
JFNQMk5MIHwgJFhzZWQgLWUgJy9cLicke2xpYmV4dH0nJC9kJyAtZSAnL1wubGliJC9kJyAtZSAi
JGxvMm8iIHwgJE5MMlNQYAoJZmkKCWFkZGxpYnM9IiRvbGRfY29udmVuaWVuY2UiCiAgICAgIGZp
CgogICAgICBpZiB0ZXN0IC1uICIkYWRkbGlicyI7IHRoZW4KCWdlbnRvcD0iJG91dHB1dF9vYmpk
aXIvJHtvdXRwdXRuYW1lfXgiCgkkc2hvdyAiJHtybX1yICRnZW50b3AiCgkkcnVuICR7cm19ciAi
JGdlbnRvcCIKCSRzaG93ICJta2RpciAkZ2VudG9wIgoJJHJ1biBta2RpciAiJGdlbnRvcCIKCXN0
YXR1cz0kPwoJaWYgdGVzdCAkc3RhdHVzIC1uZSAwICYmIHRlc3QgISAtZCAiJGdlbnRvcCI7IHRo
ZW4KCSAgZXhpdCAkc3RhdHVzCglmaQoJZ2VuZXJhdGVkPSIkZ2VuZXJhdGVkICRnZW50b3AiCgkg
IAoJIyBBZGQgaW4gbWVtYmVycyBmcm9tIGNvbnZlbmllbmNlIGFyY2hpdmVzLgoJZm9yIHhsaWIg
aW4gJGFkZGxpYnM7IGRvCgkgICMgRXh0cmFjdCB0aGUgb2JqZWN0cy4KCSAgY2FzZSAiJHhsaWIi
IGluCgkgIFtcXC9dKiB8IFtBLVphLXpdOltcXC9dKikgeGFicz0iJHhsaWIiIDs7CgkgICopIHhh
YnM9YHB3ZGAiLyR4bGliIiA7OwoJICBlc2FjCgkgIHhsaWI9YCRlY2hvICJYJHhsaWIiIHwgJFhz
ZWQgLWUgJ3MlXi4qLyUlJ2AKCSAgeGRpcj0iJGdlbnRvcC8keGxpYiIKCgkgICRzaG93ICIke3Jt
fXIgJHhkaXIiCgkgICRydW4gJHtybX1yICIkeGRpciIKCSAgJHNob3cgIm1rZGlyICR4ZGlyIgoJ
ICAkcnVuIG1rZGlyICIkeGRpciIKCSAgc3RhdHVzPSQ/CgkgIGlmIHRlc3QgJHN0YXR1cyAtbmUg
MCAmJiB0ZXN0ICEgLWQgIiR4ZGlyIjsgdGhlbgoJICAgIGV4aXQgJHN0YXR1cwoJICBmaQoJICAk
c2hvdyAiKGNkICR4ZGlyICYmICRBUiB4ICR4YWJzKSIKCSAgJHJ1biBldmFsICIoY2QgXCR4ZGly
ICYmICRBUiB4IFwkeGFicykiIHx8IGV4aXQgJD8KCgkgIG9sZG9ianM9IiRvbGRvYmpzICJgZmlu
ZCAkeGRpciAtbmFtZSBcKi4ke29iamV4dH0gLXByaW50IC1vIC1uYW1lIFwqLmxvIC1wcmludCB8
ICROTDJTUGAKCWRvbmUKICAgICAgZmkKCiAgICAgICMgRG8gZWFjaCBjb21tYW5kIGluIHRoZSBh
cmNoaXZlIGNvbW1hbmRzLgogICAgICBpZiB0ZXN0IC1uICIkb2xkX2FyY2hpdmVfZnJvbV9uZXdf
Y21kcyIgJiYgdGVzdCAiJGJ1aWxkX2xpYnRvb2xfbGlicyIgPSB5ZXM7IHRoZW4KCWV2YWwgY21k
cz1cIiRvbGRfYXJjaGl2ZV9mcm9tX25ld19jbWRzXCIKICAgICAgZWxzZQoJIyBFbnN1cmUgdGhh
dCB3ZSBoYXZlIC5vIG9iamVjdHMgaW4gcGxhY2UgaW4gY2FzZSB3ZSBkZWNpZGVkCgkjIG5vdCB0
byBidWlsZCBhIHNoYXJlZCBsaWJyYXJ5LCBhbmQgaGF2ZSBmYWxsZW4gYmFjayB0byBidWlsZGlu
ZwoJIyBzdGF0aWMgbGlicyBldmVuIHRob3VnaCAtLWRpc2FibGUtc3RhdGljIHdhcyBwYXNzZWQh
Cglmb3Igb2xkb2JqIGluICRvbGRvYmpzOyBkbwoJICBpZiB0ZXN0ICEgLWYgJG9sZG9iajsgdGhl
bgoJICAgIHhkaXI9YCRlY2hvICJYJG9sZG9iaiIgfCAkWHNlZCAtZSAncyUvW14vXSokJSUnYAoJ
ICAgIGlmIHRlc3QgIlgkeGRpciIgPSAiWCRvbGRvYmoiOyB0aGVuCgkgICAgICB4ZGlyPSIuIgoJ
ICAgIGVsc2UKCSAgICAgIHhkaXI9IiR4ZGlyIgoJICAgIGZpCgkgICAgYmFzZW9iaj1gJGVjaG8g
Ilgkb2xkb2JqIiB8ICRYc2VkIC1lICdzJV4uKi8lJSdgCgkgICAgb2JqPWAkZWNobyAiWCRiYXNl
b2JqIiB8ICRYc2VkIC1lICIkbzJsbyJgCgkgICAgJHNob3cgIihjZCAkeGRpciAmJiAke0xOX1N9
ICRvYmogJGJhc2VvYmopIgoJICAgICRydW4gZXZhbCAnKGNkICR4ZGlyICYmICR7TE5fU30gJG9i
aiAkYmFzZW9iaiknIHx8IGV4aXQgJD8KCSAgZmkKCWRvbmUKCglldmFsIGNtZHM9XCIkb2xkX2Fy
Y2hpdmVfY21kc1wiCiAgICAgIGZpCiAgICAgIElGUz0iJHtJRlM9IAl9Ijsgc2F2ZV9pZnM9IiRJ
RlMiOyBJRlM9J34nCiAgICAgIGZvciBjbWQgaW4gJGNtZHM7IGRvCglJRlM9IiRzYXZlX2lmcyIK
CSRzaG93ICIkY21kIgoJJHJ1biBldmFsICIkY21kIiB8fCBleGl0ICQ/CiAgICAgIGRvbmUKICAg
ICAgSUZTPSIkc2F2ZV9pZnMiCiAgICBkb25lCgogICAgaWYgdGVzdCAtbiAiJGdlbmVyYXRlZCI7
IHRoZW4KICAgICAgJHNob3cgIiR7cm19ciRnZW5lcmF0ZWQiCiAgICAgICRydW4gJHtybX1yJGdl
bmVyYXRlZAogICAgZmkKCiAgICAjIE5vdyBjcmVhdGUgdGhlIGxpYnRvb2wgYXJjaGl2ZS4KICAg
IGNhc2UgIiRvdXRwdXQiIGluCiAgICAqLmxhKQogICAgICBvbGRfbGlicmFyeT0KICAgICAgaWYg
dGVzdCAiJHJlbGVhc2Vfc3VmZml4IiA9IGFsbDsgdGhlbgogICAgICAgIHRlc3QgIiRidWlsZF9v
bGRfbGlicyIgPSB5ZXMgJiYgb2xkX2xpYnJhcnk9IiRsaWJuYW1lJHJlbGVhc2UuJGxpYmV4dCIK
ICAgICAgZWxzZQogICAgICB0ZXN0ICIkYnVpbGRfb2xkX2xpYnMiID0geWVzICYmIG9sZF9saWJy
YXJ5PSIkbGlibmFtZS4kbGliZXh0IgogICAgICBmaQogICAgICAkc2hvdyAiY3JlYXRpbmcgJG91
dHB1dCIKCiAgICAgIGlmIHRlc3QgLW4gIiR4cnBhdGgiOyB0aGVuCgl0ZW1wX3hycGF0aD0KCWZv
ciBsaWJkaXIgaW4gJHhycGF0aDsgZG8KCSAgdGVtcF94cnBhdGg9IiR0ZW1wX3hycGF0aCAtUiRs
aWJkaXIiCglkb25lCglkZXBlbmRlbmN5X2xpYnM9IiR0ZW1wX3hycGF0aCAkZGVwZW5kZW5jeV9s
aWJzIgogICAgICBmaQoKICAgICAgIyBPbmx5IGNyZWF0ZSB0aGUgb3V0cHV0IGlmIG5vdCBhIGRy
eSBydW4uCiAgICAgIGlmIHRlc3QgLXogIiRydW4iOyB0aGVuCglmb3IgaW5zdGFsbGVkIGluIG5v
IHllczsgZG8KCSAgaWYgdGVzdCAiJGluc3RhbGxlZCIgPSB5ZXM7IHRoZW4KCSAgICBpZiB0ZXN0
IC16ICIkaW5zdGFsbF9saWJkaXIiOyB0aGVuCgkgICAgICBicmVhawoJICAgIGZpCgkgICAgb3V0
cHV0PSIkb3V0cHV0X29iamRpci8kb3V0cHV0bmFtZSJpCgkgIGZpCgkgICRybSAkb3V0cHV0Cgkg
ICRlY2hvID4gJG91dHB1dCAiXAojICRvdXRwdXRuYW1lIC0gYSBsaWJ0b29sIGxpYnJhcnkgZmls
ZQojIEdlbmVyYXRlZCBieSAkUFJPR1JBTSAtIEdOVSAkUEFDS0FHRSAkVkVSU0lPTiRUSU1FU1RB
TVAKIwojIFBsZWFzZSBETyBOT1QgZGVsZXRlIHRoaXMgZmlsZSEKIyBJdCBpcyBuZWNlc3Nhcnkg
Zm9yIGxpbmtpbmcgdGhlIGxpYnJhcnkuCgojIFRoZSBuYW1lIHRoYXQgd2UgY2FuIGRsb3Blbigz
KS4KZGxuYW1lPSckZGxuYW1lJwoKIyBOYW1lcyBvZiB0aGlzIGxpYnJhcnkuCmxpYnJhcnlfbmFt
ZXM9JyRsaWJyYXJ5X25hbWVzJwoKIyBUaGUgbmFtZSBvZiB0aGUgc3RhdGljIGFyY2hpdmUuCm9s
ZF9saWJyYXJ5PSckb2xkX2xpYnJhcnknCgojIExpYnJhcmllcyB0aGF0IHRoaXMgb25lIGRlcGVu
ZHMgdXBvbi4KZGVwZW5kZW5jeV9saWJzPSckZGVwZW5kZW5jeV9saWJzJwoKIyBWZXJzaW9uIGlu
Zm9ybWF0aW9uIGZvciAkbGlibmFtZS4KY3VycmVudD0kY3VycmVudAphZ2U9JGFnZQpyZXZpc2lv
bj0kcmV2aXNpb24KCiMgSXMgdGhpcyBhbiBhbHJlYWR5IGluc3RhbGxlZCBsaWJyYXJ5PwppbnN0
YWxsZWQ9JGluc3RhbGxlZAoKIyBEaXJlY3RvcnkgdGhhdCB0aGlzIGxpYnJhcnkgbmVlZHMgdG8g
YmUgaW5zdGFsbGVkIGluOgpsaWJkaXI9JyRpbnN0YWxsX2xpYmRpcidcCiIKCWRvbmUKICAgICAg
ZmkKCiAgICAgICMgRG8gYSBzeW1ib2xpYyBsaW5rIHNvIHRoYXQgdGhlIGxpYnRvb2wgYXJjaGl2
ZSBjYW4gYmUgZm91bmQgaW4KICAgICAgIyBMRF9MSUJSQVJZX1BBVEggYmVmb3JlIHRoZSBwcm9n
cmFtIGlzIGluc3RhbGxlZC4KICAgICAgJHNob3cgIihjZCAkb3V0cHV0X29iamRpciAmJiAkcm0g
JG91dHB1dG5hbWUgJiYgJExOX1MgLi4vJG91dHB1dG5hbWUgJG91dHB1dG5hbWUpIgogICAgICAk
cnVuIGV2YWwgIihjZCAkb3V0cHV0X29iamRpciAmJiAkcm0gJG91dHB1dG5hbWUgJiYgJExOX1Mg
Li4vJG91dHB1dG5hbWUgJG91dHB1dG5hbWUpIiB8fCBleGl0ICQ/CiAgICAgIDs7CiAgICBlc2Fj
CiAgICBleGl0IDAKICAgIDs7CgogICMgbGlidG9vbCBpbnN0YWxsIG1vZGUKICBpbnN0YWxsKQog
ICAgbW9kZW5hbWU9IiRtb2RlbmFtZTogaW5zdGFsbCIKCiAgICAjIFRoZXJlIG1heSBiZSBhbiBv
cHRpb25hbCBzaCgxKSBhcmd1bWVudCBhdCB0aGUgYmVnaW5uaW5nIG9mCiAgICAjIGluc3RhbGxf
cHJvZyAoZXNwZWNpYWxseSBvbiBXaW5kb3dzIE5UKS4KICAgIGlmIHRlc3QgIiRub25vcHQiID0g
IiRTSEVMTCIgfHwgdGVzdCAiJG5vbm9wdCIgPSAvYmluL3NoOyB0aGVuCiAgICAgICMgQWVzdGhl
dGljYWxseSBxdW90ZSBpdC4KICAgICAgYXJnPWAkZWNobyAiWCRub25vcHQiIHwgJFhzZWQgLWUg
IiRzZWRfcXVvdGVfc3Vic3QiYAogICAgICBjYXNlICIkYXJnIiBpbgogICAgICAqW1xbXH5cI1xe
XCZcKlwoXClce1x9XHxcO1w8XD5cP1wnXCBcCV0qfCpdKikKCWFyZz0iXCIkYXJnXCIiCgk7Owog
ICAgICBlc2FjCiAgICAgIGluc3RhbGxfcHJvZz0iJGFyZyAiCiAgICAgIGFyZz0iJDEiCiAgICAg
IHNoaWZ0CiAgICBlbHNlCiAgICAgIGluc3RhbGxfcHJvZz0KICAgICAgYXJnPSIkbm9ub3B0Igog
ICAgZmkKCiAgICAjIFRoZSByZWFsIGZpcnN0IGFyZ3VtZW50IHNob3VsZCBiZSB0aGUgbmFtZSBv
ZiB0aGUgaW5zdGFsbGF0aW9uIHByb2dyYW0uCiAgICAjIEFlc3RoZXRpY2FsbHkgcXVvdGUgaXQu
CiAgICBhcmc9YCRlY2hvICJYJGFyZyIgfCAkWHNlZCAtZSAiJHNlZF9xdW90ZV9zdWJzdCJgCiAg
ICBjYXNlICIkYXJnIiBpbgogICAgKltcW1x+XCNcXlwmXCpcKFwpXHtcfVx8XDtcPFw+XD9cJ1wg
XAldKnwqXSopCiAgICAgIGFyZz0iXCIkYXJnXCIiCiAgICAgIDs7CiAgICBlc2FjCiAgICBpbnN0
YWxsX3Byb2c9IiRpbnN0YWxsX3Byb2ckYXJnIgoKICAgICMgV2UgbmVlZCB0byBhY2NlcHQgYXQg
bGVhc3QgYWxsIHRoZSBCU0QgaW5zdGFsbCBmbGFncy4KICAgIGRlc3Q9CiAgICBmaWxlcz0KICAg
IG9wdHM9CiAgICBwcmV2PQogICAgaW5zdGFsbF90eXBlPQogICAgaXNkaXI9bm8KICAgIHN0cmlw
bWU9CiAgICBmb3IgYXJnCiAgICBkbwogICAgICBpZiB0ZXN0IC1uICIkZGVzdCI7IHRoZW4KCWZp
bGVzPSIkZmlsZXMgJGRlc3QiCglkZXN0PSIkYXJnIgoJY29udGludWUKICAgICAgZmkKCiAgICAg
IGNhc2UgIiRhcmciIGluCiAgICAgIC1kKSBpc2Rpcj15ZXMgOzsKICAgICAgLWYpIHByZXY9Ii1m
IiA7OwogICAgICAtZykgcHJldj0iLWciIDs7CiAgICAgIC1tKSBwcmV2PSItbSIgOzsKICAgICAg
LW8pIHByZXY9Ii1vIiA7OwogICAgICAtcykKCXN0cmlwbWU9IiAtcyIKCWNvbnRpbnVlCgk7Owog
ICAgICAtKikgOzsKCiAgICAgICopCgkjIElmIHRoZSBwcmV2aW91cyBvcHRpb24gbmVlZGVkIGFu
IGFyZ3VtZW50LCB0aGVuIHNraXAgaXQuCglpZiB0ZXN0IC1uICIkcHJldiI7IHRoZW4KCSAgcHJl
dj0KCWVsc2UKCSAgZGVzdD0iJGFyZyIKCSAgY29udGludWUKCWZpCgk7OwogICAgICBlc2FjCgog
ICAgICAjIEFlc3RoZXRpY2FsbHkgcXVvdGUgdGhlIGFyZ3VtZW50LgogICAgICBhcmc9YCRlY2hv
ICJYJGFyZyIgfCAkWHNlZCAtZSAiJHNlZF9xdW90ZV9zdWJzdCJgCiAgICAgIGNhc2UgIiRhcmci
IGluCiAgICAgICpbXFtcflwjXF5cJlwqXChcKVx7XH1cfFw7XDxcPlw/XCdcIFwJXSp8Kl0qKQoJ
YXJnPSJcIiRhcmdcIiIKCTs7CiAgICAgIGVzYWMKICAgICAgaW5zdGFsbF9wcm9nPSIkaW5zdGFs
bF9wcm9nICRhcmciCiAgICBkb25lCgogICAgaWYgdGVzdCAteiAiJGluc3RhbGxfcHJvZyI7IHRo
ZW4KICAgICAgJGVjaG8gIiRtb2RlbmFtZTogeW91IG11c3Qgc3BlY2lmeSBhbiBpbnN0YWxsIHBy
b2dyYW0iIDE+JjIKICAgICAgJGVjaG8gIiRoZWxwIiAxPiYyCiAgICAgIGV4aXQgMQogICAgZmkK
CiAgICBpZiB0ZXN0IC1uICIkcHJldiI7IHRoZW4KICAgICAgJGVjaG8gIiRtb2RlbmFtZTogdGhl
IFxgJHByZXYnIG9wdGlvbiByZXF1aXJlcyBhbiBhcmd1bWVudCIgMT4mMgogICAgICAkZWNobyAi
JGhlbHAiIDE+JjIKICAgICAgZXhpdCAxCiAgICBmaQoKICAgIGlmIHRlc3QgLXogIiRmaWxlcyI7
IHRoZW4KICAgICAgaWYgdGVzdCAteiAiJGRlc3QiOyB0aGVuCgkkZWNobyAiJG1vZGVuYW1lOiBu
byBmaWxlIG9yIGRlc3RpbmF0aW9uIHNwZWNpZmllZCIgMT4mMgogICAgICBlbHNlCgkkZWNobyAi
JG1vZGVuYW1lOiB5b3UgbXVzdCBzcGVjaWZ5IGEgZGVzdGluYXRpb24iIDE+JjIKICAgICAgZmkK
ICAgICAgJGVjaG8gIiRoZWxwIiAxPiYyCiAgICAgIGV4aXQgMQogICAgZmkKCiAgICAjIFN0cmlw
IGFueSB0cmFpbGluZyBzbGFzaCBmcm9tIHRoZSBkZXN0aW5hdGlvbi4KICAgIGRlc3Q9YCRlY2hv
ICJYJGRlc3QiIHwgJFhzZWQgLWUgJ3MlLyQlJSdgCgogICAgIyBDaGVjayB0byBzZWUgdGhhdCB0
aGUgZGVzdGluYXRpb24gaXMgYSBkaXJlY3RvcnkuCiAgICB0ZXN0IC1kICIkZGVzdCIgJiYgaXNk
aXI9eWVzCiAgICBpZiB0ZXN0ICIkaXNkaXIiID0geWVzOyB0aGVuCiAgICAgIGRlc3RkaXI9IiRk
ZXN0IgogICAgICBkZXN0bmFtZT0KICAgIGVsc2UKICAgICAgZGVzdGRpcj1gJGVjaG8gIlgkZGVz
dCIgfCAkWHNlZCAtZSAncyUvW14vXSokJSUnYAogICAgICB0ZXN0ICJYJGRlc3RkaXIiID0gIlgk
ZGVzdCIgJiYgZGVzdGRpcj0uCiAgICAgIGRlc3RuYW1lPWAkZWNobyAiWCRkZXN0IiB8ICRYc2Vk
IC1lICdzJV4uKi8lJSdgCgogICAgICAjIE5vdCBhIGRpcmVjdG9yeSwgc28gY2hlY2sgdG8gc2Vl
IHRoYXQgdGhlcmUgaXMgb25seSBvbmUgZmlsZSBzcGVjaWZpZWQuCiAgICAgIHNldCBkdW1teSAk
ZmlsZXMKICAgICAgaWYgdGVzdCAkIyAtZ3QgMjsgdGhlbgoJJGVjaG8gIiRtb2RlbmFtZTogXGAk
ZGVzdCcgaXMgbm90IGEgZGlyZWN0b3J5IiAxPiYyCgkkZWNobyAiJGhlbHAiIDE+JjIKCWV4aXQg
MQogICAgICBmaQogICAgZmkKICAgIGNhc2UgIiRkZXN0ZGlyIiBpbgogICAgW1xcL10qIHwgW0Et
WmEtel06W1xcL10qKSA7OwogICAgKikKICAgICAgZm9yIGZpbGUgaW4gJGZpbGVzOyBkbwoJY2Fz
ZSAiJGZpbGUiIGluCgkqLmxvKSA7OwoJKikKCSAgJGVjaG8gIiRtb2RlbmFtZTogXGAkZGVzdGRp
cicgbXVzdCBiZSBhbiBhYnNvbHV0ZSBkaXJlY3RvcnkgbmFtZSIgMT4mMgoJICAkZWNobyAiJGhl
bHAiIDE+JjIKCSAgZXhpdCAxCgkgIDs7Cgllc2FjCiAgICAgIGRvbmUKICAgICAgOzsKICAgIGVz
YWMKCiAgICAjIFRoaXMgdmFyaWFibGUgdGVsbHMgd3JhcHBlciBzY3JpcHRzIGp1c3QgdG8gc2V0
IHZhcmlhYmxlcyByYXRoZXIKICAgICMgdGhhbiBydW5uaW5nIHRoZWlyIHByb2dyYW1zLgogICAg
bGlidG9vbF9pbnN0YWxsX21hZ2ljPSIkbWFnaWMiCgogICAgc3RhdGljbGlicz0KICAgIGZ1dHVy
ZV9saWJkaXJzPQogICAgY3VycmVudF9saWJkaXJzPQogICAgZm9yIGZpbGUgaW4gJGZpbGVzOyBk
bwoKICAgICAgIyBEbyBlYWNoIGluc3RhbGxhdGlvbi4KICAgICAgY2FzZSAiJGZpbGUiIGluCiAg
ICAgICouYSB8ICoubGliKQoJIyBEbyB0aGUgc3RhdGljIGxpYnJhcmllcyBsYXRlci4KCXN0YXRp
Y2xpYnM9IiRzdGF0aWNsaWJzICRmaWxlIgoJOzsKCiAgICAgICoubGEpCgkjIENoZWNrIHRvIHNl
ZSB0aGF0IHRoaXMgcmVhbGx5IGlzIGEgbGlidG9vbCBhcmNoaXZlLgoJaWYgKHNlZCAtZSAnMnEn
ICRmaWxlIHwgZWdyZXAgIl4jIEdlbmVyYXRlZCBieSAuKiRQQUNLQUdFIikgPi9kZXYvbnVsbCAy
PiYxOyB0aGVuIDoKCWVsc2UKCSAgJGVjaG8gIiRtb2RlbmFtZTogXGAkZmlsZScgaXMgbm90IGEg
dmFsaWQgbGlidG9vbCBhcmNoaXZlIiAxPiYyCgkgICRlY2hvICIkaGVscCIgMT4mMgoJICBleGl0
IDEKCWZpCgoJbGlicmFyeV9uYW1lcz0KCW9sZF9saWJyYXJ5PQoJIyBJZiB0aGVyZSBpcyBubyBk
aXJlY3RvcnkgY29tcG9uZW50LCB0aGVuIGFkZCBvbmUuCgljYXNlICIkZmlsZSIgaW4KCSovKiB8
ICpcXCopIC4gJGZpbGUgOzsKCSopIC4gLi8kZmlsZSA7OwoJZXNhYwoKCSMgQWRkIHRoZSBsaWJk
aXIgdG8gY3VycmVudF9saWJkaXJzIGlmIGl0IGlzIHRoZSBkZXN0aW5hdGlvbi4KCWlmIHRlc3Qg
IlgkZGVzdGRpciIgPSAiWCRsaWJkaXIiOyB0aGVuCgkgIGNhc2UgIiRjdXJyZW50X2xpYmRpcnMg
IiBpbgoJICAqIiAkbGliZGlyICIqKSA7OwoJICAqKSBjdXJyZW50X2xpYmRpcnM9IiRjdXJyZW50
X2xpYmRpcnMgJGxpYmRpciIgOzsKCSAgZXNhYwoJZWxzZQoJICAjIE5vdGUgdGhlIGxpYmRpciBh
cyBhIGZ1dHVyZSBsaWJkaXIuCgkgIGNhc2UgIiRmdXR1cmVfbGliZGlycyAiIGluCgkgICoiICRs
aWJkaXIgIiopIDs7CgkgICopIGZ1dHVyZV9saWJkaXJzPSIkZnV0dXJlX2xpYmRpcnMgJGxpYmRp
ciIgOzsKCSAgZXNhYwoJZmkKCglkaXI9ImAkZWNobyAiWCRmaWxlIiB8ICRYc2VkIC1lICdzJS9b
Xi9dKiQlJSdgLyIKCXRlc3QgIlgkZGlyIiA9ICJYJGZpbGUvIiAmJiBkaXI9CglkaXI9IiRkaXIk
b2JqZGlyIgoKCSMgU2VlIHRoZSBuYW1lcyBvZiB0aGUgc2hhcmVkIGxpYnJhcnkuCglzZXQgZHVt
bXkgJGxpYnJhcnlfbmFtZXMKCWlmIHRlc3QgLW4gIiQyIjsgdGhlbgoJICByZWFsbmFtZT0iJDIi
CgkgIHNoaWZ0CgkgIHNoaWZ0CgoJICAjIEluc3RhbGwgdGhlIHNoYXJlZCBsaWJyYXJ5IGFuZCBi
dWlsZCB0aGUgc3ltbGlua3MuCgkgICRzaG93ICIkaW5zdGFsbF9wcm9nICRkaXIvJHJlYWxuYW1l
ICRkZXN0ZGlyLyRyZWFsbmFtZSIKCSAgJHJ1biBldmFsICIkaW5zdGFsbF9wcm9nICRkaXIvJHJl
YWxuYW1lICRkZXN0ZGlyLyRyZWFsbmFtZSIgfHwgZXhpdCAkPwoKCSAgaWYgdGVzdCAkIyAtZ3Qg
MDsgdGhlbgoJICAgICMgRGVsZXRlIHRoZSBvbGQgc3ltbGlua3MsIGFuZCBjcmVhdGUgbmV3IG9u
ZXMuCgkgICAgZm9yIGxpbmtuYW1lCgkgICAgZG8KCSAgICAgIGlmIHRlc3QgIiRsaW5rbmFtZSIg
IT0gIiRyZWFsbmFtZSI7IHRoZW4KCQkkc2hvdyAiKGNkICRkZXN0ZGlyICYmICRybSAkbGlua25h
bWUgJiYgJExOX1MgJHJlYWxuYW1lICRsaW5rbmFtZSkiCgkJJHJ1biBldmFsICIoY2QgJGRlc3Rk
aXIgJiYgJHJtICRsaW5rbmFtZSAmJiAkTE5fUyAkcmVhbG5hbWUgJGxpbmtuYW1lKSIKCSAgICAg
IGZpCgkgICAgZG9uZQoJICBmaQoKCSAgIyBEbyBlYWNoIGNvbW1hbmQgaW4gdGhlIHBvc3RpbnN0
YWxsIGNvbW1hbmRzLgoJICBsaWI9IiRkZXN0ZGlyLyRyZWFsbmFtZSIKCSAgZXZhbCBjbWRzPVwi
JHBvc3RpbnN0YWxsX2NtZHNcIgoJICBJRlM9IiR7SUZTPSAJfSI7IHNhdmVfaWZzPSIkSUZTIjsg
SUZTPSd+JwoJICBmb3IgY21kIGluICRjbWRzOyBkbwoJICAgIElGUz0iJHNhdmVfaWZzIgoJICAg
ICRzaG93ICIkY21kIgoJICAgICRydW4gZXZhbCAiJGNtZCIgfHwgZXhpdCAkPwoJICBkb25lCgkg
IElGUz0iJHNhdmVfaWZzIgoJZmkKCgkjIEluc3RhbGwgdGhlIHBzZXVkby1saWJyYXJ5IGZvciBp
bmZvcm1hdGlvbiBwdXJwb3Nlcy4KCWlmIHRlc3QgIiRpbnN0YWxsX2x0bGlicyIgPSB5ZXM7IHRo
ZW4KCW5hbWU9YCRlY2hvICJYJGZpbGUiIHwgJFhzZWQgLWUgJ3MlXi4qLyUlJ2AKCWluc3RuYW1l
PSIkZGlyLyRuYW1lImkKCSRzaG93ICIkaW5zdGFsbF9wcm9nICRpbnN0bmFtZSAkZGVzdGRpci8k
bmFtZSIKCSRydW4gZXZhbCAiJGluc3RhbGxfcHJvZyAkaW5zdG5hbWUgJGRlc3RkaXIvJG5hbWUi
IHx8IGV4aXQgJD8KCWZpCgoJIyBNYXliZSBpbnN0YWxsIHRoZSBzdGF0aWMgbGlicmFyeSwgdG9v
LgoJdGVzdCAtbiAiJG9sZF9saWJyYXJ5IiAmJiBzdGF0aWNsaWJzPSIkc3RhdGljbGlicyAkZGly
LyRvbGRfbGlicmFyeSIKCTs7CgogICAgICAqLmxvKQoJIyBJbnN0YWxsIChpLmUuIGNvcHkpIGEg
bGlidG9vbCBvYmplY3QuCgoJIyBGaWd1cmUgb3V0IGRlc3RpbmF0aW9uIGZpbGUgbmFtZSwgaWYg
aXQgd2Fzbid0IGFscmVhZHkgc3BlY2lmaWVkLgoJaWYgdGVzdCAtbiAiJGRlc3RuYW1lIjsgdGhl
bgoJICBkZXN0ZmlsZT0iJGRlc3RkaXIvJGRlc3RuYW1lIgoJZWxzZQoJICBkZXN0ZmlsZT1gJGVj
aG8gIlgkZmlsZSIgfCAkWHNlZCAtZSAncyVeLiovJSUnYAoJICBkZXN0ZmlsZT0iJGRlc3RkaXIv
JGRlc3RmaWxlIgoJZmkKCgkjIERlZHVjZSB0aGUgbmFtZSBvZiB0aGUgZGVzdGluYXRpb24gb2xk
LXN0eWxlIG9iamVjdCBmaWxlLgoJY2FzZSAiJGRlc3RmaWxlIiBpbgoJKi5sbykKCSAgc3RhdGlj
ZGVzdD1gJGVjaG8gIlgkZGVzdGZpbGUiIHwgJFhzZWQgLWUgIiRsbzJvImAKCSAgOzsKCSoubyB8
ICoub2JqKQoJICBzdGF0aWNkZXN0PSIkZGVzdGZpbGUiCgkgIGRlc3RmaWxlPQoJICA7OwoJKikK
CSAgJGVjaG8gIiRtb2RlbmFtZTogY2Fubm90IGNvcHkgYSBsaWJ0b29sIG9iamVjdCB0byBcYCRk
ZXN0ZmlsZSciIDE+JjIKCSAgJGVjaG8gIiRoZWxwIiAxPiYyCgkgIGV4aXQgMQoJICA7OwoJZXNh
YwoKCSMgSW5zdGFsbCB0aGUgbGlidG9vbCBvYmplY3QgaWYgcmVxdWVzdGVkLgoJaWYgdGVzdCAt
biAiJGRlc3RmaWxlIjsgdGhlbgoJICAkc2hvdyAiJGluc3RhbGxfcHJvZyAkZmlsZSAkZGVzdGZp
bGUiCgkgICRydW4gZXZhbCAiJGluc3RhbGxfcHJvZyAkZmlsZSAkZGVzdGZpbGUiIHx8IGV4aXQg
JD8KCWZpCgoJIyBJbnN0YWxsIHRoZSBvbGQgb2JqZWN0IGlmIGVuYWJsZWQuCglpZiB0ZXN0ICIk
YnVpbGRfb2xkX2xpYnMiID0geWVzOyB0aGVuCgkgICMgRGVkdWNlIHRoZSBuYW1lIG9mIHRoZSBv
bGQtc3R5bGUgb2JqZWN0IGZpbGUuCgkgIHN0YXRpY29iaj1gJGVjaG8gIlgkZmlsZSIgfCAkWHNl
ZCAtZSAiJGxvMm8iYAoKCSAgJHNob3cgIiRpbnN0YWxsX3Byb2cgJHN0YXRpY29iaiAkc3RhdGlj
ZGVzdCIKCSAgJHJ1biBldmFsICIkaW5zdGFsbF9wcm9nIFwkc3RhdGljb2JqIFwkc3RhdGljZGVz
dCIgfHwgZXhpdCAkPwoJZmkKCWV4aXQgMAoJOzsKCiAgICAgICopCgkjIEZpZ3VyZSBvdXQgZGVz
dGluYXRpb24gZmlsZSBuYW1lLCBpZiBpdCB3YXNuJ3QgYWxyZWFkeSBzcGVjaWZpZWQuCglpZiB0
ZXN0IC1uICIkZGVzdG5hbWUiOyB0aGVuCgkgIGRlc3RmaWxlPSIkZGVzdGRpci8kZGVzdG5hbWUi
CgllbHNlCgkgIGRlc3RmaWxlPWAkZWNobyAiWCRmaWxlIiB8ICRYc2VkIC1lICdzJV4uKi8lJSdg
CgkgIGRlc3RmaWxlPSIkZGVzdGRpci8kZGVzdGZpbGUiCglmaQoKCSMgRG8gYSB0ZXN0IHRvIHNl
ZSBpZiB0aGlzIGlzIHJlYWxseSBhIGxpYnRvb2wgcHJvZ3JhbS4KCWlmIChzZWQgLWUgJzRxJyAk
ZmlsZSB8IGVncmVwICJeIyBHZW5lcmF0ZWQgYnkgLiokUEFDS0FHRSIpID4vZGV2L251bGwgMj4m
MTsgdGhlbgoJICBsaW5rX2FnYWluc3RfbGlidG9vbF9saWJzPQoJICByZWxpbmtfY29tbWFuZD0K
CgkgICMgSWYgdGhlcmUgaXMgbm8gZGlyZWN0b3J5IGNvbXBvbmVudCwgdGhlbiBhZGQgb25lLgoJ
ICBjYXNlICIkZmlsZSIgaW4KCSAgKi8qIHwgKlxcKikgLiAkZmlsZSA7OwoJICAqKSAuIC4vJGZp
bGUgOzsKCSAgZXNhYwoKCSAgIyBDaGVjayB0aGUgdmFyaWFibGVzIHRoYXQgc2hvdWxkIGhhdmUg
YmVlbiBzZXQuCgkgIGlmIHRlc3QgLXogIiRsaW5rX2FnYWluc3RfbGlidG9vbF9saWJzIjsgdGhl
bgoJICAgICRlY2hvICIkbW9kZW5hbWU6IGludmFsaWQgbGlidG9vbCB3cmFwcGVyIHNjcmlwdCBc
YCRmaWxlJyIgMT4mMgoJICAgIGV4aXQgMQoJICBmaQoKCSAgZmluYWxpemU9eWVzCgkgIGZvciBs
aWIgaW4gJGxpbmtfYWdhaW5zdF9saWJ0b29sX2xpYnM7IGRvCgkgICAgIyBDaGVjayB0byBzZWUg
dGhhdCBlYWNoIGxpYnJhcnkgaXMgaW5zdGFsbGVkLgoJICAgIGxpYmRpcj0KCSAgICBpZiB0ZXN0
IC1mICIkbGliIjsgdGhlbgoJICAgICAgIyBJZiB0aGVyZSBpcyBubyBkaXJlY3RvcnkgY29tcG9u
ZW50LCB0aGVuIGFkZCBvbmUuCgkgICAgICBjYXNlICIkbGliIiBpbgoJICAgICAgKi8qIHwgKlxc
KikgLiAkbGliIDs7CgkgICAgICAqKSAuIC4vJGxpYiA7OwoJICAgICAgZXNhYwoJICAgIGZpCgkg
ICAgbGliZmlsZT0iJGxpYmRpci9gJGVjaG8gIlgkbGliIiB8ICRYc2VkIC1lICdzJV4uKi8lJWcn
YCIKCSAgICBpZiB0ZXN0IC1uICIkbGliZGlyIiAmJiB0ZXN0ICEgLWYgIiRsaWJmaWxlIjsgdGhl
bgoJICAgICAgZmluYWxpemU9bm8KCSAgICBmaQoJICBkb25lCgoJICBvdXRwdXRuYW1lPQoJICBp
ZiB0ZXN0ICIkZmFzdF9pbnN0YWxsIiA9IG5vICYmIHRlc3QgLW4gIiRyZWxpbmtfY29tbWFuZCI7
IHRoZW4KCSAgICBpZiB0ZXN0ICIkZmluYWxpemUiID0geWVzICYmIHRlc3QgLXogIiRydW4iOyB0
aGVuCgkgICAgICB0bXBkaXI9Ii90bXAiCgkgICAgICB0ZXN0IC1uICIkVE1QRElSIiAmJiB0bXBk
aXI9IiRUTVBESVIiCgkgICAgICB0bXBkaXI9IiR0bXBkaXIvbGlidG9vbC0kJCIKCSAgICAgIHNh
dmVfdW1hc2s9YHVtYXNrYAoJICAgICAgdW1hc2sgMDA3NwoJICAgICAgaWYgJG1rZGlyICIkdG1w
ZGlyIjsgdGhlbgoJCXVtYXNrICRzYXZlX3VtYXNrCgkgICAgICBlbHNlCgkJdW1hc2sgJHNhdmVf
dW1hc2sKCQkkZWNobyAiJG1vZGVuYW1lOiBlcnJvcjogY2Fubm90IGNyZWF0ZSB0ZW1wb3Jhcnkg
ZGlyZWN0b3J5IFxgJHRtcGRpciciIDE+JjIKCQljb250aW51ZQoJICAgICAgZmkKCSAgICAgIG91
dHB1dG5hbWU9IiR0bXBkaXIvJGZpbGUiCgkgICAgICAjIFJlcGxhY2UgdGhlIG91dHB1dCBmaWxl
IHNwZWNpZmljYXRpb24uCgkgICAgICByZWxpbmtfY29tbWFuZD1gJGVjaG8gIlgkcmVsaW5rX2Nv
bW1hbmQiIHwgJFhzZWQgLWUgJ3MlQE9VVFBVVEAlJyIkb3V0cHV0bmFtZSInJWcnYAoKCSAgICAg
ICRzaG93ICIkcmVsaW5rX2NvbW1hbmQiCgkgICAgICBpZiAkcnVuIGV2YWwgIiRyZWxpbmtfY29t
bWFuZCI7IHRoZW4gOgoJICAgICAgZWxzZQoJCSRlY2hvICIkbW9kZW5hbWU6IGVycm9yOiByZWxp
bmsgXGAkZmlsZScgd2l0aCB0aGUgYWJvdmUgY29tbWFuZCBiZWZvcmUgaW5zdGFsbGluZyBpdCIg
MT4mMgoJCSR7cm19ciAiJHRtcGRpciIKCQljb250aW51ZQoJICAgICAgZmkKCSAgICAgIGZpbGU9
IiRvdXRwdXRuYW1lIgoJICAgIGVsc2UKCSAgICAgICRlY2hvICIkbW9kZW5hbWU6IHdhcm5pbmc6
IGNhbm5vdCByZWxpbmsgXGAkZmlsZSciIDE+JjIKCSAgICBmaQoJICBlbHNlCgkgICAgIyBJbnN0
YWxsIHRoZSBiaW5hcnkgdGhhdCB3ZSBjb21waWxlZCBlYXJsaWVyLgoJICAgIGZpbGU9YCRlY2hv
ICJYJGZpbGUiIHwgJFhzZWQgLWUgInMlXChbXi9dKlwpJCUkb2JqZGlyL1wxJSJgCgkgIGZpCglm
aQoKCSRzaG93ICIkaW5zdGFsbF9wcm9nJHN0cmlwbWUgJGZpbGUgJGRlc3RmaWxlIgoJJHJ1biBl
dmFsICIkaW5zdGFsbF9wcm9nXCRzdHJpcG1lIFwkZmlsZSBcJGRlc3RmaWxlIiB8fCBleGl0ICQ/
Cgl0ZXN0IC1uICIkb3V0cHV0bmFtZSIgJiYgJHtybX1yICIkdG1wZGlyIgoJOzsKICAgICAgZXNh
YwogICAgZG9uZQoKICAgIGZvciBmaWxlIGluICRzdGF0aWNsaWJzOyBkbwogICAgICBuYW1lPWAk
ZWNobyAiWCRmaWxlIiB8ICRYc2VkIC1lICdzJV4uKi8lJSdgCgogICAgICAjIFNldCB1cCB0aGUg
cmFubGliIHBhcmFtZXRlcnMuCiAgICAgIG9sZGxpYj0iJGRlc3RkaXIvJG5hbWUiCgogICAgICAk
c2hvdyAiJGluc3RhbGxfcHJvZyAkZmlsZSAkb2xkbGliIgogICAgICAkcnVuIGV2YWwgIiRpbnN0
YWxsX3Byb2cgXCRmaWxlIFwkb2xkbGliIiB8fCBleGl0ICQ/CgogICAgICAjIERvIGVhY2ggY29t
bWFuZCBpbiB0aGUgcG9zdGluc3RhbGwgY29tbWFuZHMuCiAgICAgIGV2YWwgY21kcz1cIiRvbGRf
cG9zdGluc3RhbGxfY21kc1wiCiAgICAgIElGUz0iJHtJRlM9IAl9Ijsgc2F2ZV9pZnM9IiRJRlMi
OyBJRlM9J34nCiAgICAgIGZvciBjbWQgaW4gJGNtZHM7IGRvCglJRlM9IiRzYXZlX2lmcyIKCSRz
aG93ICIkY21kIgoJJHJ1biBldmFsICIkY21kIiB8fCBleGl0ICQ/CiAgICAgIGRvbmUKICAgICAg
SUZTPSIkc2F2ZV9pZnMiCiAgICBkb25lCgogICAgaWYgdGVzdCAtbiAiJGZ1dHVyZV9saWJkaXJz
IjsgdGhlbgogICAgICAkZWNobyAiJG1vZGVuYW1lOiB3YXJuaW5nOiByZW1lbWJlciB0byBydW4g
XGAkcHJvZ25hbWUgLS1maW5pc2gkZnV0dXJlX2xpYmRpcnMnIiAxPiYyCiAgICBmaQoKICAgIGlm
IHRlc3QgLW4gIiRjdXJyZW50X2xpYmRpcnMiOyB0aGVuCiAgICAgICMgTWF5YmUganVzdCBkbyBh
IGRyeSBydW4uCiAgICAgIHRlc3QgLW4gIiRydW4iICYmIGN1cnJlbnRfbGliZGlycz0iIC1uJGN1
cnJlbnRfbGliZGlycyIKICAgICAgZXhlYyAkU0hFTEwgJDAgLS1maW5pc2gkY3VycmVudF9saWJk
aXJzCiAgICAgIGV4aXQgMQogICAgZmkKCiAgICBleGl0IDAKICAgIDs7CgogICMgbGlidG9vbCBm
aW5pc2ggbW9kZQogIGZpbmlzaCkKICAgIG1vZGVuYW1lPSIkbW9kZW5hbWU6IGZpbmlzaCIKICAg
IGxpYmRpcnM9IiRub25vcHQiCiAgICBhZG1pbmNtZHM9CgogICAgaWYgdGVzdCAtbiAiJGZpbmlz
aF9jbWRzJGZpbmlzaF9ldmFsIiAmJiB0ZXN0IC1uICIkbGliZGlycyI7IHRoZW4KICAgICAgZm9y
IGRpcgogICAgICBkbwoJbGliZGlycz0iJGxpYmRpcnMgJGRpciIKICAgICAgZG9uZQoKICAgICAg
Zm9yIGxpYmRpciBpbiAkbGliZGlyczsgZG8KCWlmIHRlc3QgLW4gIiRmaW5pc2hfY21kcyI7IHRo
ZW4KCSAgIyBEbyBlYWNoIGNvbW1hbmQgaW4gdGhlIGZpbmlzaCBjb21tYW5kcy4KCSAgZXZhbCBj
bWRzPVwiJGZpbmlzaF9jbWRzXCIKCSAgSUZTPSIke0lGUz0gCX0iOyBzYXZlX2lmcz0iJElGUyI7
IElGUz0nficKCSAgZm9yIGNtZCBpbiAkY21kczsgZG8KCSAgICBJRlM9IiRzYXZlX2lmcyIKCSAg
ICAkc2hvdyAiJGNtZCIKCSAgICAkcnVuIGV2YWwgIiRjbWQiIHx8IGFkbWluY21kcz0iJGFkbWlu
Y21kcwogICAgICAgJGNtZCIKCSAgZG9uZQoJICBJRlM9IiRzYXZlX2lmcyIKCWZpCglpZiB0ZXN0
IC1uICIkZmluaXNoX2V2YWwiOyB0aGVuCgkgICMgRG8gdGhlIHNpbmdsZSBmaW5pc2hfZXZhbC4K
CSAgZXZhbCBjbWRzPVwiJGZpbmlzaF9ldmFsXCIKCSAgJHJ1biBldmFsICIkY21kcyIgfHwgYWRt
aW5jbWRzPSIkYWRtaW5jbWRzCiAgICAgICAkY21kcyIKCWZpCiAgICAgIGRvbmUKICAgIGZpCgog
ICAgIyBFeGl0IGhlcmUgaWYgdGhleSB3YW50ZWQgc2lsZW50IG1vZGUuCiAgICB0ZXN0ICIkc2hv
dyIgPSA6ICYmIGV4aXQgMAoKICAgIGVjaG8gIi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0iCiAgICBlY2hvICJMaWJy
YXJpZXMgaGF2ZSBiZWVuIGluc3RhbGxlZCBpbjoiCiAgICBmb3IgbGliZGlyIGluICRsaWJkaXJz
OyBkbwogICAgICBlY2hvICIgICAkbGliZGlyIgogICAgZG9uZQogICAgZWNobwogICAgZWNobyAi
SWYgeW91IGV2ZXIgaGFwcGVuIHRvIHdhbnQgdG8gbGluayBhZ2FpbnN0IGluc3RhbGxlZCBsaWJy
YXJpZXMiCiAgICBlY2hvICJpbiBhIGdpdmVuIGRpcmVjdG9yeSwgTElCRElSLCB5b3UgbXVzdCBl
aXRoZXIgdXNlIGxpYnRvb2wsIGFuZCIKICAgIGVjaG8gInNwZWNpZnkgdGhlIGZ1bGwgcGF0aG5h
bWUgb2YgdGhlIGxpYnJhcnksIG9yIHVzZSBcYC1MTElCRElSJyIKICAgIGVjaG8gImZsYWcgZHVy
aW5nIGxpbmtpbmcgYW5kIGRvIGF0IGxlYXN0IG9uZSBvZiB0aGUgZm9sbG93aW5nOiIKICAgIGlm
IHRlc3QgLW4gIiRzaGxpYnBhdGhfdmFyIjsgdGhlbgogICAgICBlY2hvICIgICAtIGFkZCBMSUJE
SVIgdG8gdGhlIFxgJHNobGlicGF0aF92YXInIGVudmlyb25tZW50IHZhcmlhYmxlIgogICAgICBl
Y2hvICIgICAgIGR1cmluZyBleGVjdXRpb24iCiAgICBmaQogICAgaWYgdGVzdCAtbiAiJHJ1bnBh
dGhfdmFyIjsgdGhlbgogICAgICBlY2hvICIgICAtIGFkZCBMSUJESVIgdG8gdGhlIFxgJHJ1bnBh
dGhfdmFyJyBlbnZpcm9ubWVudCB2YXJpYWJsZSIKICAgICAgZWNobyAiICAgICBkdXJpbmcgbGlu
a2luZyIKICAgIGZpCiAgICBpZiB0ZXN0IC1uICIkaGFyZGNvZGVfbGliZGlyX2ZsYWdfc3BlYyI7
IHRoZW4KICAgICAgbGliZGlyPUxJQkRJUgogICAgICBldmFsIGZsYWc9XCIkaGFyZGNvZGVfbGli
ZGlyX2ZsYWdfc3BlY1wiCgogICAgICBlY2hvICIgICAtIHVzZSB0aGUgXGAkZmxhZycgbGlua2Vy
IGZsYWciCiAgICBmaQogICAgaWYgdGVzdCAtbiAiJGFkbWluY21kcyI7IHRoZW4KICAgICAgZWNo
byAiICAgLSBoYXZlIHlvdXIgc3lzdGVtIGFkbWluaXN0cmF0b3IgcnVuIHRoZXNlIGNvbW1hbmRz
OiRhZG1pbmNtZHMiCiAgICBmaQogICAgaWYgdGVzdCAtZiAvZXRjL2xkLnNvLmNvbmY7IHRoZW4K
ICAgICAgZWNobyAiICAgLSBoYXZlIHlvdXIgc3lzdGVtIGFkbWluaXN0cmF0b3IgYWRkIExJQkRJ
UiB0byBcYC9ldGMvbGQuc28uY29uZiciCiAgICBmaQogICAgZWNobwogICAgZWNobyAiU2VlIGFu
eSBvcGVyYXRpbmcgc3lzdGVtIGRvY3VtZW50YXRpb24gYWJvdXQgc2hhcmVkIGxpYnJhcmllcyBm
b3IiCiAgICBlY2hvICJtb3JlIGluZm9ybWF0aW9uLCBzdWNoIGFzIHRoZSBsZCgxKSBhbmQgbGQu
c28oOCkgbWFudWFsIHBhZ2VzLiIKICAgIGVjaG8gIi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0iCiAgICBleGl0IDAK
ICAgIDs7CgogICMgbGlidG9vbCBleGVjdXRlIG1vZGUKICBleGVjdXRlKQogICAgbW9kZW5hbWU9
IiRtb2RlbmFtZTogZXhlY3V0ZSIKCiAgICAjIFRoZSBmaXJzdCBhcmd1bWVudCBpcyB0aGUgY29t
bWFuZCBuYW1lLgogICAgY21kPSIkbm9ub3B0IgogICAgaWYgdGVzdCAteiAiJGNtZCI7IHRoZW4K
ICAgICAgJGVjaG8gIiRtb2RlbmFtZTogeW91IG11c3Qgc3BlY2lmeSBhIENPTU1BTkQiIDE+JjIK
ICAgICAgJGVjaG8gIiRoZWxwIgogICAgICBleGl0IDEKICAgIGZpCgogICAgIyBIYW5kbGUgLWRs
b3BlbiBmbGFncyBpbW1lZGlhdGVseS4KICAgIGZvciBmaWxlIGluICRleGVjdXRlX2RsZmlsZXM7
IGRvCiAgICAgIGlmIHRlc3QgISAtZiAiJGZpbGUiOyB0aGVuCgkkZWNobyAiJG1vZGVuYW1lOiBc
YCRmaWxlJyBpcyBub3QgYSBmaWxlIiAxPiYyCgkkZWNobyAiJGhlbHAiIDE+JjIKCWV4aXQgMQog
ICAgICBmaQoKICAgICAgZGlyPQogICAgICBjYXNlICIkZmlsZSIgaW4KICAgICAgKi5sYSkKCSMg
Q2hlY2sgdG8gc2VlIHRoYXQgdGhpcyByZWFsbHkgaXMgYSBsaWJ0b29sIGFyY2hpdmUuCglpZiAo
c2VkIC1lICcycScgJGZpbGUgfCBlZ3JlcCAiXiMgR2VuZXJhdGVkIGJ5IC4qJFBBQ0tBR0UiKSA+
L2Rldi9udWxsIDI+JjE7IHRoZW4gOgoJZWxzZQoJICAkZWNobyAiJG1vZGVuYW1lOiBcYCRsaWIn
IGlzIG5vdCBhIHZhbGlkIGxpYnRvb2wgYXJjaGl2ZSIgMT4mMgoJICAkZWNobyAiJGhlbHAiIDE+
JjIKCSAgZXhpdCAxCglmaQoKCSMgUmVhZCB0aGUgbGlidG9vbCBsaWJyYXJ5LgoJZGxuYW1lPQoJ
bGlicmFyeV9uYW1lcz0KCgkjIElmIHRoZXJlIGlzIG5vIGRpcmVjdG9yeSBjb21wb25lbnQsIHRo
ZW4gYWRkIG9uZS4KCWNhc2UgIiRmaWxlIiBpbgoJKi8qIHwgKlxcKikgLiAkZmlsZSA7OwoJKikg
LiAuLyRmaWxlIDs7Cgllc2FjCgoJIyBTa2lwIHRoaXMgbGlicmFyeSBpZiBpdCBjYW5ub3QgYmUg
ZGxvcGVuZWQuCglpZiB0ZXN0IC16ICIkZGxuYW1lIjsgdGhlbgoJICAjIFdhcm4gaWYgaXQgd2Fz
IGEgc2hhcmVkIGxpYnJhcnkuCgkgIHRlc3QgLW4gIiRsaWJyYXJ5X25hbWVzIiAmJiAkZWNobyAi
JG1vZGVuYW1lOiB3YXJuaW5nOiBcYCRmaWxlJyB3YXMgbm90IGxpbmtlZCB3aXRoIFxgLWV4cG9y
dC1keW5hbWljJyIKCSAgY29udGludWUKCWZpCgoJZGlyPWAkZWNobyAiWCRmaWxlIiB8ICRYc2Vk
IC1lICdzJS9bXi9dKiQlJSdgCgl0ZXN0ICJYJGRpciIgPSAiWCRmaWxlIiAmJiBkaXI9LgoKCWlm
IHRlc3QgLWYgIiRkaXIvJG9iamRpci8kZGxuYW1lIjsgdGhlbgoJICBkaXI9IiRkaXIvJG9iamRp
ciIKCWVsc2UKCSAgJGVjaG8gIiRtb2RlbmFtZTogY2Fubm90IGZpbmQgXGAkZGxuYW1lJyBpbiBc
YCRkaXInIG9yIFxgJGRpci8kb2JqZGlyJyIgMT4mMgoJICBleGl0IDEKCWZpCgk7OwoKICAgICAg
Ki5sbykKCSMgSnVzdCBhZGQgdGhlIGRpcmVjdG9yeSBjb250YWluaW5nIHRoZSAubG8gZmlsZS4K
CWRpcj1gJGVjaG8gIlgkZmlsZSIgfCAkWHNlZCAtZSAncyUvW14vXSokJSUnYAoJdGVzdCAiWCRk
aXIiID0gIlgkZmlsZSIgJiYgZGlyPS4KCTs7CgogICAgICAqKQoJJGVjaG8gIiRtb2RlbmFtZTog
d2FybmluZyBcYC1kbG9wZW4nIGlzIGlnbm9yZWQgZm9yIG5vbi1saWJ0b29sIGxpYnJhcmllcyBh
bmQgb2JqZWN0cyIgMT4mMgoJY29udGludWUKCTs7CiAgICAgIGVzYWMKCiAgICAgICMgR2V0IHRo
ZSBhYnNvbHV0ZSBwYXRobmFtZS4KICAgICAgYWJzZGlyPWBjZCAiJGRpciIgJiYgcHdkYAogICAg
ICB0ZXN0IC1uICIkYWJzZGlyIiAmJiBkaXI9IiRhYnNkaXIiCgogICAgICAjIE5vdyBhZGQgdGhl
IGRpcmVjdG9yeSB0byBzaGxpYnBhdGhfdmFyLgogICAgICBpZiBldmFsICJ0ZXN0IC16IFwiXCQk
c2hsaWJwYXRoX3ZhclwiIjsgdGhlbgoJZXZhbCAiJHNobGlicGF0aF92YXI9XCJcJGRpclwiIgog
ICAgICBlbHNlCglldmFsICIkc2hsaWJwYXRoX3Zhcj1cIlwkZGlyOlwkJHNobGlicGF0aF92YXJc
IiIKICAgICAgZmkKICAgIGRvbmUKCiAgICAjIFRoaXMgdmFyaWFibGUgdGVsbHMgd3JhcHBlciBz
Y3JpcHRzIGp1c3QgdG8gc2V0IHNobGlicGF0aF92YXIKICAgICMgcmF0aGVyIHRoYW4gcnVubmlu
ZyB0aGVpciBwcm9ncmFtcy4KICAgIGxpYnRvb2xfZXhlY3V0ZV9tYWdpYz0iJG1hZ2ljIgoKICAg
ICMgQ2hlY2sgaWYgYW55IG9mIHRoZSBhcmd1bWVudHMgaXMgYSB3cmFwcGVyIHNjcmlwdC4KICAg
IGFyZ3M9CiAgICBmb3IgZmlsZQogICAgZG8KICAgICAgY2FzZSAiJGZpbGUiIGluCiAgICAgIC0q
KSA7OwogICAgICAqKQoJIyBEbyBhIHRlc3QgdG8gc2VlIGlmIHRoaXMgaXMgcmVhbGx5IGEgbGli
dG9vbCBwcm9ncmFtLgoJaWYgKHNlZCAtZSAnNHEnICRmaWxlIHwgZWdyZXAgIl4jIEdlbmVyYXRl
ZCBieSAuKiRQQUNLQUdFIikgPi9kZXYvbnVsbCAyPiYxOyB0aGVuCgkgICMgSWYgdGhlcmUgaXMg
bm8gZGlyZWN0b3J5IGNvbXBvbmVudCwgdGhlbiBhZGQgb25lLgoJICBjYXNlICIkZmlsZSIgaW4K
CSAgKi8qIHwgKlxcKikgLiAkZmlsZSA7OwoJICAqKSAuIC4vJGZpbGUgOzsKCSAgZXNhYwoKCSAg
IyBUcmFuc2Zvcm0gYXJnIHRvIHdyYXBwZWQgbmFtZS4KCSAgZmlsZT0iJHByb2dkaXIvJHByb2dy
YW0iCglmaQoJOzsKICAgICAgZXNhYwogICAgICAjIFF1b3RlIGFyZ3VtZW50cyAodG8gcHJlc2Vy
dmUgc2hlbGwgbWV0YWNoYXJhY3RlcnMpLgogICAgICBmaWxlPWAkZWNobyAiWCRmaWxlIiB8ICRY
c2VkIC1lICIkc2VkX3F1b3RlX3N1YnN0ImAKICAgICAgYXJncz0iJGFyZ3MgXCIkZmlsZVwiIgog
ICAgZG9uZQoKICAgIGlmIHRlc3QgLXogIiRydW4iOyB0aGVuCiAgICAgIGlmIHRlc3QgLW4gIiRz
aGxpYnBhdGhfdmFyIjsgdGhlbgogICAgICAgICMgRXhwb3J0IHRoZSBzaGxpYnBhdGhfdmFyLgog
ICAgICAgIGV2YWwgImV4cG9ydCAkc2hsaWJwYXRoX3ZhciIKICAgICAgZmkKCiAgICAgICMgUmVz
dG9yZSBzYXZlZCBlbnZpcm9tZW50IHZhcmlhYmxlcwogICAgICBpZiB0ZXN0ICIke3NhdmVfTENf
QUxMK3NldH0iID0gc2V0OyB0aGVuCglMQ19BTEw9IiRzYXZlX0xDX0FMTCI7IGV4cG9ydCBMQ19B
TEwKICAgICAgZmkKICAgICAgaWYgdGVzdCAiJHtzYXZlX0xBTkcrc2V0fSIgPSBzZXQ7IHRoZW4K
CUxBTkc9IiRzYXZlX0xBTkciOyBleHBvcnQgTEFORwogICAgICBmaQoKICAgICAgIyBOb3cgYWN0
dWFsbHkgZXhlYyB0aGUgY29tbWFuZC4KICAgICAgZXZhbCAiZXhlYyBcJGNtZCRhcmdzIgoKICAg
ICAgJGVjaG8gIiRtb2RlbmFtZTogY2Fubm90IGV4ZWMgXCRjbWQkYXJncyIKICAgICAgZXhpdCAx
CiAgICBlbHNlCiAgICAgICMgRGlzcGxheSB3aGF0IHdvdWxkIGJlIGRvbmUuCiAgICAgIGlmIHRl
c3QgLW4gIiRzaGxpYnBhdGhfdmFyIjsgdGhlbgogICAgICAgIGV2YWwgIlwkZWNobyBcIlwkc2hs
aWJwYXRoX3Zhcj1cJCRzaGxpYnBhdGhfdmFyXCIiCiAgICAgICAgJGVjaG8gImV4cG9ydCAkc2hs
aWJwYXRoX3ZhciIKICAgICAgZmkKICAgICAgJGVjaG8gIiRjbWQkYXJncyIKICAgICAgZXhpdCAw
CiAgICBmaQogICAgOzsKCiAgIyBsaWJ0b29sIHVuaW5zdGFsbCBtb2RlCiAgdW5pbnN0YWxsKQog
ICAgbW9kZW5hbWU9IiRtb2RlbmFtZTogdW5pbnN0YWxsIgogICAgcm09IiRub25vcHQiCiAgICBm
aWxlcz0KCiAgICBmb3IgYXJnCiAgICBkbwogICAgICBjYXNlICIkYXJnIiBpbgogICAgICAtKikg
cm09IiRybSAkYXJnIiA7OwogICAgICAqKSBmaWxlcz0iJGZpbGVzICRhcmciIDs7CiAgICAgIGVz
YWMKICAgIGRvbmUKCiAgICBpZiB0ZXN0IC16ICIkcm0iOyB0aGVuCiAgICAgICRlY2hvICIkbW9k
ZW5hbWU6IHlvdSBtdXN0IHNwZWNpZnkgYW4gUk0gcHJvZ3JhbSIgMT4mMgogICAgICAkZWNobyAi
JGhlbHAiIDE+JjIKICAgICAgZXhpdCAxCiAgICBmaQoKICAgIGZvciBmaWxlIGluICRmaWxlczsg
ZG8KICAgICAgZGlyPWAkZWNobyAiWCRmaWxlIiB8ICRYc2VkIC1lICdzJS9bXi9dKiQlJSdgCiAg
ICAgIHRlc3QgIlgkZGlyIiA9ICJYJGZpbGUiICYmIGRpcj0uCiAgICAgIG5hbWU9YCRlY2hvICJY
JGZpbGUiIHwgJFhzZWQgLWUgJ3MlXi4qLyUlJ2AKCiAgICAgIHJtZmlsZXM9IiRmaWxlIgoKICAg
ICAgY2FzZSAiJG5hbWUiIGluCiAgICAgICoubGEpCgkjIFBvc3NpYmx5IGEgbGlidG9vbCBhcmNo
aXZlLCBzbyB2ZXJpZnkgaXQuCglpZiAoc2VkIC1lICcycScgJGZpbGUgfCBlZ3JlcCAiXiMgR2Vu
ZXJhdGVkIGJ5IC4qJFBBQ0tBR0UiKSA+L2Rldi9udWxsIDI+JjE7IHRoZW4KCSAgLiAkZGlyLyRu
YW1lCgoJICAjIERlbGV0ZSB0aGUgbGlidG9vbCBsaWJyYXJpZXMgYW5kIHN5bWxpbmtzLgoJICBm
b3IgbiBpbiAkbGlicmFyeV9uYW1lczsgZG8KCSAgICBybWZpbGVzPSIkcm1maWxlcyAkZGlyLyRu
IgoJICBkb25lCgkgIHRlc3QgLW4gIiRvbGRfbGlicmFyeSIgJiYgcm1maWxlcz0iJHJtZmlsZXMg
JGRpci8kb2xkX2xpYnJhcnkiCgoJICAkc2hvdyAiJHJtICRybWZpbGVzIgoJICAkcnVuICRybSAk
cm1maWxlcwoKCSAgaWYgdGVzdCAtbiAiJGxpYnJhcnlfbmFtZXMiOyB0aGVuCgkgICAgIyBEbyBl
YWNoIGNvbW1hbmQgaW4gdGhlIHBvc3R1bmluc3RhbGwgY29tbWFuZHMuCgkgICAgZXZhbCBjbWRz
PVwiJHBvc3R1bmluc3RhbGxfY21kc1wiCgkgICAgSUZTPSIke0lGUz0gCX0iOyBzYXZlX2lmcz0i
JElGUyI7IElGUz0nficKCSAgICBmb3IgY21kIGluICRjbWRzOyBkbwoJICAgICAgSUZTPSIkc2F2
ZV9pZnMiCgkgICAgICAkc2hvdyAiJGNtZCIKCSAgICAgICRydW4gZXZhbCAiJGNtZCIKCSAgICBk
b25lCgkgICAgSUZTPSIkc2F2ZV9pZnMiCgkgIGZpCgoJICBpZiB0ZXN0IC1uICIkb2xkX2xpYnJh
cnkiOyB0aGVuCgkgICAgIyBEbyBlYWNoIGNvbW1hbmQgaW4gdGhlIG9sZF9wb3N0dW5pbnN0YWxs
IGNvbW1hbmRzLgoJICAgIGV2YWwgY21kcz1cIiRvbGRfcG9zdHVuaW5zdGFsbF9jbWRzXCIKCSAg
ICBJRlM9IiR7SUZTPSAJfSI7IHNhdmVfaWZzPSIkSUZTIjsgSUZTPSd+JwoJICAgIGZvciBjbWQg
aW4gJGNtZHM7IGRvCgkgICAgICBJRlM9IiRzYXZlX2lmcyIKCSAgICAgICRzaG93ICIkY21kIgoJ
ICAgICAgJHJ1biBldmFsICIkY21kIgoJICAgIGRvbmUKCSAgICBJRlM9IiRzYXZlX2lmcyIKCSAg
ZmkKCgkgICMgRklYTUU6IHNob3VsZCByZWluc3RhbGwgdGhlIGJlc3QgcmVtYWluaW5nIHNoYXJl
ZCBsaWJyYXJ5LgoJZmkKCTs7CgogICAgICAqLmxvKQoJaWYgdGVzdCAiJGJ1aWxkX29sZF9saWJz
IiA9IHllczsgdGhlbgoJICBvbGRvYmo9YCRlY2hvICJYJG5hbWUiIHwgJFhzZWQgLWUgIiRsbzJv
ImAKCSAgcm1maWxlcz0iJHJtZmlsZXMgJGRpci8kb2xkb2JqIgoJZmkKCSRzaG93ICIkcm0gJHJt
ZmlsZXMiCgkkcnVuICRybSAkcm1maWxlcwoJOzsKCiAgICAgICopCgkkc2hvdyAiJHJtICRybWZp
bGVzIgoJJHJ1biAkcm0gJHJtZmlsZXMKCTs7CiAgICAgIGVzYWMKICAgIGRvbmUKICAgIGV4aXQg
MAogICAgOzsKCiAgIiIpCiAgICAkZWNobyAiJG1vZGVuYW1lOiB5b3UgbXVzdCBzcGVjaWZ5IGEg
TU9ERSIgMT4mMgogICAgJGVjaG8gIiRnZW5lcmljX2hlbHAiIDE+JjIKICAgIGV4aXQgMQogICAg
OzsKICBlc2FjCgogICRlY2hvICIkbW9kZW5hbWU6IGludmFsaWQgb3BlcmF0aW9uIG1vZGUgXGAk
bW9kZSciIDE+JjIKICAkZWNobyAiJGdlbmVyaWNfaGVscCIgMT4mMgogIGV4aXQgMQpmaSAjIHRl
c3QgLXogIiRzaG93X2hlbHAiCgojIFdlIG5lZWQgdG8gZGlzcGxheSBoZWxwIGZvciBlYWNoIG9m
IHRoZSBtb2Rlcy4KY2FzZSAiJG1vZGUiIGluCiIiKSAkZWNobyBcCiJVc2FnZTogJG1vZGVuYW1l
IFtPUFRJT05dLi4uIFtNT0RFLUFSR10uLi4KClByb3ZpZGUgZ2VuZXJhbGl6ZWQgbGlicmFyeS1i
dWlsZGluZyBzdXBwb3J0IHNlcnZpY2VzLgoKICAgIC0tY29uZmlnICAgICAgICAgIHNob3cgYWxs
IGNvbmZpZ3VyYXRpb24gdmFyaWFibGVzCiAgICAtLWRlYnVnICAgICAgICAgICBlbmFibGUgdmVy
Ym9zZSBzaGVsbCB0cmFjaW5nCi1uLCAtLWRyeS1ydW4gICAgICAgICBkaXNwbGF5IGNvbW1hbmRz
IHdpdGhvdXQgbW9kaWZ5aW5nIGFueSBmaWxlcwogICAgLS1mZWF0dXJlcyAgICAgICAgZGlzcGxh
eSBiYXNpYyBjb25maWd1cmF0aW9uIGluZm9ybWF0aW9uIGFuZCBleGl0CiAgICAtLWZpbmlzaCAg
ICAgICAgICBzYW1lIGFzIFxgLS1tb2RlPWZpbmlzaCcKICAgIC0taGVscCAgICAgICAgICAgIGRp
c3BsYXkgdGhpcyBoZWxwIG1lc3NhZ2UgYW5kIGV4aXQKICAgIC0tbW9kZT1NT0RFICAgICAgIHVz
ZSBvcGVyYXRpb24gbW9kZSBNT0RFIFtkZWZhdWx0PWluZmVycmVkIGZyb20gTU9ERS1BUkdTXQog
ICAgLS1xdWlldCAgICAgICAgICAgc2FtZSBhcyBcYC0tc2lsZW50JwogICAgLS1zaWxlbnQgICAg
ICAgICAgZG9uJ3QgcHJpbnQgaW5mb3JtYXRpb25hbCBtZXNzYWdlcwogICAgLS12ZXJzaW9uICAg
ICAgICAgcHJpbnQgdmVyc2lvbiBpbmZvcm1hdGlvbgoKTU9ERSBtdXN0IGJlIG9uZSBvZiB0aGUg
Zm9sbG93aW5nOgoKICAgICAgY29tcGlsZSAgICAgICAgIGNvbXBpbGUgYSBzb3VyY2UgZmlsZSBp
bnRvIGEgbGlidG9vbCBvYmplY3QKICAgICAgZXhlY3V0ZSAgICAgICAgIGF1dG9tYXRpY2FsbHkg
c2V0IGxpYnJhcnkgcGF0aCwgdGhlbiBydW4gYSBwcm9ncmFtCiAgICAgIGZpbmlzaCAgICAgICAg
ICBjb21wbGV0ZSB0aGUgaW5zdGFsbGF0aW9uIG9mIGxpYnRvb2wgbGlicmFyaWVzCiAgICAgIGlu
c3RhbGwgICAgICAgICBpbnN0YWxsIGxpYnJhcmllcyBvciBleGVjdXRhYmxlcwogICAgICBsaW5r
ICAgICAgICAgICAgY3JlYXRlIGEgbGlicmFyeSBvciBhbiBleGVjdXRhYmxlCiAgICAgIHVuaW5z
dGFsbCAgICAgICByZW1vdmUgbGlicmFyaWVzIGZyb20gYW4gaW5zdGFsbGVkIGRpcmVjdG9yeQoK
TU9ERS1BUkdTIHZhcnkgZGVwZW5kaW5nIG9uIHRoZSBNT0RFLiAgVHJ5IFxgJG1vZGVuYW1lIC0t
aGVscCAtLW1vZGU9TU9ERScgZm9yCmEgbW9yZSBkZXRhaWxlZCBkZXNjcmlwdGlvbiBvZiBNT0RF
LiIKICBleGl0IDAKICA7OwoKY29tcGlsZSkKICAkZWNobyBcCiJVc2FnZTogJG1vZGVuYW1lIFtP
UFRJT05dLi4uIC0tbW9kZT1jb21waWxlIENPTVBJTEUtQ09NTUFORC4uLiBTT1VSQ0VGSUxFCgpD
b21waWxlIGEgc291cmNlIGZpbGUgaW50byBhIGxpYnRvb2wgbGlicmFyeSBvYmplY3QuCgpUaGlz
IG1vZGUgYWNjZXB0cyB0aGUgZm9sbG93aW5nIGFkZGl0aW9uYWwgb3B0aW9uczoKCiAgLW8gT1VU
UFVULUZJTEUgICAgc2V0IHRoZSBvdXRwdXQgZmlsZSBuYW1lIHRvIE9VVFBVVC1GSUxFCiAgLXN0
YXRpYyAgICAgICAgICAgYWx3YXlzIGJ1aWxkIGEgXGAubycgZmlsZSBzdWl0YWJsZSBmb3Igc3Rh
dGljIGxpbmtpbmcKCkNPTVBJTEUtQ09NTUFORCBpcyBhIGNvbW1hbmQgdG8gYmUgdXNlZCBpbiBj
cmVhdGluZyBhIFxgc3RhbmRhcmQnIG9iamVjdCBmaWxlCmZyb20gdGhlIGdpdmVuIFNPVVJDRUZJ
TEUuCgpUaGUgb3V0cHV0IGZpbGUgbmFtZSBpcyBkZXRlcm1pbmVkIGJ5IHJlbW92aW5nIHRoZSBk
aXJlY3RvcnkgY29tcG9uZW50IGZyb20KU09VUkNFRklMRSwgdGhlbiBzdWJzdGl0dXRpbmcgdGhl
IEMgc291cmNlIGNvZGUgc3VmZml4IFxgLmMnIHdpdGggdGhlCmxpYnJhcnkgb2JqZWN0IHN1ZmZp
eCwgXGAubG8nLiIKICA7OwoKZXhlY3V0ZSkKICAkZWNobyBcCiJVc2FnZTogJG1vZGVuYW1lIFtP
UFRJT05dLi4uIC0tbW9kZT1leGVjdXRlIENPTU1BTkQgW0FSR1NdLi4uCgpBdXRvbWF0aWNhbGx5
IHNldCBsaWJyYXJ5IHBhdGgsIHRoZW4gcnVuIGEgcHJvZ3JhbS4KClRoaXMgbW9kZSBhY2NlcHRz
IHRoZSBmb2xsb3dpbmcgYWRkaXRpb25hbCBvcHRpb25zOgoKICAtZGxvcGVuIEZJTEUgICAgICBh
ZGQgdGhlIGRpcmVjdG9yeSBjb250YWluaW5nIEZJTEUgdG8gdGhlIGxpYnJhcnkgcGF0aAoKVGhp
cyBtb2RlIHNldHMgdGhlIGxpYnJhcnkgcGF0aCBlbnZpcm9ubWVudCB2YXJpYWJsZSBhY2NvcmRp
bmcgdG8gXGAtZGxvcGVuJwpmbGFncy4KCklmIGFueSBvZiB0aGUgQVJHUyBhcmUgbGlidG9vbCBl
eGVjdXRhYmxlIHdyYXBwZXJzLCB0aGVuIHRoZXkgYXJlIHRyYW5zbGF0ZWQKaW50byB0aGVpciBj
b3JyZXNwb25kaW5nIHVuaW5zdGFsbGVkIGJpbmFyeSwgYW5kIGFueSBvZiB0aGVpciByZXF1aXJl
ZCBsaWJyYXJ5CmRpcmVjdG9yaWVzIGFyZSBhZGRlZCB0byB0aGUgbGlicmFyeSBwYXRoLgoKVGhl
biwgQ09NTUFORCBpcyBleGVjdXRlZCwgd2l0aCBBUkdTIGFzIGFyZ3VtZW50cy4iCiAgOzsKCmZp
bmlzaCkKICAkZWNobyBcCiJVc2FnZTogJG1vZGVuYW1lIFtPUFRJT05dLi4uIC0tbW9kZT1maW5p
c2ggW0xJQkRJUl0uLi4KCkNvbXBsZXRlIHRoZSBpbnN0YWxsYXRpb24gb2YgbGlidG9vbCBsaWJy
YXJpZXMuCgpFYWNoIExJQkRJUiBpcyBhIGRpcmVjdG9yeSB0aGF0IGNvbnRhaW5zIGxpYnRvb2wg
bGlicmFyaWVzLgoKVGhlIGNvbW1hbmRzIHRoYXQgdGhpcyBtb2RlIGV4ZWN1dGVzIG1heSByZXF1
aXJlIHN1cGVydXNlciBwcml2aWxlZ2VzLiAgVXNlCnRoZSBcYC0tZHJ5LXJ1bicgb3B0aW9uIGlm
IHlvdSBqdXN0IHdhbnQgdG8gc2VlIHdoYXQgd291bGQgYmUgZXhlY3V0ZWQuIgogIDs7CgppbnN0
YWxsKQogICRlY2hvIFwKIlVzYWdlOiAkbW9kZW5hbWUgW09QVElPTl0uLi4gLS1tb2RlPWluc3Rh
bGwgSU5TVEFMTC1DT01NQU5ELi4uCgpJbnN0YWxsIGV4ZWN1dGFibGVzIG9yIGxpYnJhcmllcy4K
CklOU1RBTEwtQ09NTUFORCBpcyB0aGUgaW5zdGFsbGF0aW9uIGNvbW1hbmQuICBUaGUgZmlyc3Qg
Y29tcG9uZW50IHNob3VsZCBiZQplaXRoZXIgdGhlIFxgaW5zdGFsbCcgb3IgXGBjcCcgcHJvZ3Jh
bS4KClRoZSByZXN0IG9mIHRoZSBjb21wb25lbnRzIGFyZSBpbnRlcnByZXRlZCBhcyBhcmd1bWVu
dHMgdG8gdGhhdCBjb21tYW5kIChvbmx5CkJTRC1jb21wYXRpYmxlIGluc3RhbGwgb3B0aW9ucyBh
cmUgcmVjb2duaXplZCkuIgogIDs7CgpsaW5rKQogICRlY2hvIFwKIlVzYWdlOiAkbW9kZW5hbWUg
W09QVElPTl0uLi4gLS1tb2RlPWxpbmsgTElOSy1DT01NQU5ELi4uCgpMaW5rIG9iamVjdCBmaWxl
cyBvciBsaWJyYXJpZXMgdG9nZXRoZXIgdG8gZm9ybSBhbm90aGVyIGxpYnJhcnksIG9yIHRvCmNy
ZWF0ZSBhbiBleGVjdXRhYmxlIHByb2dyYW0uCgpMSU5LLUNPTU1BTkQgaXMgYSBjb21tYW5kIHVz
aW5nIHRoZSBDIGNvbXBpbGVyIHRoYXQgeW91IHdvdWxkIHVzZSB0byBjcmVhdGUKYSBwcm9ncmFt
IGZyb20gc2V2ZXJhbCBvYmplY3QgZmlsZXMuCgpUaGUgZm9sbG93aW5nIGNvbXBvbmVudHMgb2Yg
TElOSy1DT01NQU5EIGFyZSB0cmVhdGVkIHNwZWNpYWxseToKCiAgLWFsbC1zdGF0aWMgICAgICAg
ZG8gbm90IGRvIGFueSBkeW5hbWljIGxpbmtpbmcgYXQgYWxsCiAgLWF2b2lkLXZlcnNpb24gICAg
ZG8gbm90IGFkZCBhIHZlcnNpb24gc3VmZml4IGlmIHBvc3NpYmxlCiAgLWRsb3BlbiBGSUxFICAg
ICAgXGAtZGxwcmVvcGVuJyBGSUxFIGlmIGl0IGNhbm5vdCBiZSBkbG9wZW5lZCBhdCBydW50aW1l
CiAgLWRscHJlb3BlbiBGSUxFICAgbGluayBpbiBGSUxFIGFuZCBhZGQgaXRzIHN5bWJvbHMgdG8g
bHRfcHJlbG9hZGVkX3N5bWJvbHMKICAtZXhwb3J0LWR5bmFtaWMgICBhbGxvdyBzeW1ib2xzIGZy
b20gT1VUUFVULUZJTEUgdG8gYmUgcmVzb2x2ZWQgd2l0aCBkbHN5bSgzKQogIC1leHBvcnQtc3lt
Ym9scyBTWU1GSUxFCgkJICAgIHRyeSB0byBleHBvcnQgb25seSB0aGUgc3ltYm9scyBsaXN0ZWQg
aW4gU1lNRklMRQogIC1leHBvcnQtc3ltYm9scy1yZWdleCBSRUdFWAoJCSAgICB0cnkgdG8gZXhw
b3J0IG9ubHkgdGhlIHN5bWJvbHMgbWF0Y2hpbmcgUkVHRVgKICAtTExJQkRJUiAgICAgICAgICBz
ZWFyY2ggTElCRElSIGZvciByZXF1aXJlZCBpbnN0YWxsZWQgbGlicmFyaWVzCiAgLWxOQU1FICAg
ICAgICAgICAgT1VUUFVULUZJTEUgcmVxdWlyZXMgdGhlIGluc3RhbGxlZCBsaWJyYXJ5IGxpYk5B
TUUKICAtbW9kdWxlICAgICAgICAgICBidWlsZCBhIGxpYnJhcnkgdGhhdCBjYW4gZGxvcGVuZWQK
ICAtbm8tdW5kZWZpbmVkICAgICBkZWNsYXJlIHRoYXQgYSBsaWJyYXJ5IGRvZXMgbm90IHJlZmVy
IHRvIGV4dGVybmFsIHN5bWJvbHMKICAtbyBPVVRQVVQtRklMRSAgICBjcmVhdGUgT1VUUFVULUZJ
TEUgZnJvbSB0aGUgc3BlY2lmaWVkIG9iamVjdHMKICAtcmVsZWFzZSBSRUxFQVNFICBzcGVjaWZ5
IHBhY2thZ2UgcmVsZWFzZSBpbmZvcm1hdGlvbgogIC1ycGF0aCBMSUJESVIgICAgIHRoZSBjcmVh
dGVkIGxpYnJhcnkgd2lsbCBldmVudHVhbGx5IGJlIGluc3RhbGxlZCBpbiBMSUJESVIKICAtUlsg
XUxJQkRJUiAgICAgICBhZGQgTElCRElSIHRvIHRoZSBydW50aW1lIHBhdGggb2YgcHJvZ3JhbXMg
YW5kIGxpYnJhcmllcwogIC1zdGF0aWMgICAgICAgICAgIGRvIG5vdCBkbyBhbnkgZHluYW1pYyBs
aW5raW5nIG9mIGxpYnRvb2wgbGlicmFyaWVzCiAgLXZlcnNpb24taW5mbyBDVVJSRU5UWzpSRVZJ
U0lPTls6QUdFXV0KCQkgICAgc3BlY2lmeSBsaWJyYXJ5IHZlcnNpb24gaW5mbyBbZWFjaCB2YXJp
YWJsZSBkZWZhdWx0cyB0byAwXQoKQWxsIG90aGVyIG9wdGlvbnMgKGFyZ3VtZW50cyBiZWdpbm5p
bmcgd2l0aCBcYC0nKSBhcmUgaWdub3JlZC4KCkV2ZXJ5IG90aGVyIGFyZ3VtZW50IGlzIHRyZWF0
ZWQgYXMgYSBmaWxlbmFtZS4gIEZpbGVzIGVuZGluZyBpbiBcYC5sYScgYXJlCnRyZWF0ZWQgYXMg
dW5pbnN0YWxsZWQgbGlidG9vbCBsaWJyYXJpZXMsIG90aGVyIGZpbGVzIGFyZSBzdGFuZGFyZCBv
ciBsaWJyYXJ5Cm9iamVjdCBmaWxlcy4KCklmIHRoZSBPVVRQVVQtRklMRSBlbmRzIGluIFxgLmxh
JywgdGhlbiBhIGxpYnRvb2wgbGlicmFyeSBpcyBjcmVhdGVkLApvbmx5IGxpYnJhcnkgb2JqZWN0
cyAoXGAubG8nIGZpbGVzKSBtYXkgYmUgc3BlY2lmaWVkLCBhbmQgXGAtcnBhdGgnIGlzCnJlcXVp
cmVkLCBleGNlcHQgd2hlbiBjcmVhdGluZyBhIGNvbnZlbmllbmNlIGxpYnJhcnkuCgpJZiBPVVRQ
VVQtRklMRSBlbmRzIGluIFxgLmEnIG9yIFxgLmxpYicsIHRoZW4gYSBzdGFuZGFyZCBsaWJyYXJ5
IGlzIGNyZWF0ZWQKdXNpbmcgXGBhcicgYW5kIFxgcmFubGliJywgb3Igb24gV2luZG93cyB1c2lu
ZyBcYGxpYicuCgpJZiBPVVRQVVQtRklMRSBlbmRzIGluIFxgLmxvJyBvciBcYC4ke29iamV4dH0n
LCB0aGVuIGEgcmVsb2FkYWJsZSBvYmplY3QgZmlsZQppcyBjcmVhdGVkLCBvdGhlcndpc2UgYW4g
ZXhlY3V0YWJsZSBwcm9ncmFtIGlzIGNyZWF0ZWQuIgogIDs7Cgp1bmluc3RhbGwpCiAgJGVjaG8g
XAoiVXNhZ2U6ICRtb2RlbmFtZSBbT1BUSU9OXS4uLiAtLW1vZGU9dW5pbnN0YWxsIFJNIFtSTS1P
UFRJT05dLi4uIEZJTEUuLi4KClJlbW92ZSBsaWJyYXJpZXMgZnJvbSBhbiBpbnN0YWxsYXRpb24g
ZGlyZWN0b3J5LgoKUk0gaXMgdGhlIG5hbWUgb2YgdGhlIHByb2dyYW0gdG8gdXNlIHRvIGRlbGV0
ZSBmaWxlcyBhc3NvY2lhdGVkIHdpdGggZWFjaCBGSUxFCih0eXBpY2FsbHkgXGAvYmluL3JtJyku
ICBSTS1PUFRJT05TIGFyZSBvcHRpb25zIChzdWNoIGFzIFxgLWYnKSB0byBiZSBwYXNzZWQKdG8g
Uk0uCgpJZiBGSUxFIGlzIGEgbGlidG9vbCBsaWJyYXJ5LCBhbGwgdGhlIGZpbGVzIGFzc29jaWF0
ZWQgd2l0aCBpdCBhcmUgZGVsZXRlZC4KT3RoZXJ3aXNlLCBvbmx5IEZJTEUgaXRzZWxmIGlzIGRl
bGV0ZWQgdXNpbmcgUk0uIgogIDs7CgoqKQogICRlY2hvICIkbW9kZW5hbWU6IGludmFsaWQgb3Bl
cmF0aW9uIG1vZGUgXGAkbW9kZSciIDE+JjIKICAkZWNobyAiJGhlbHAiIDE+JjIKICBleGl0IDEK
ICA7Owplc2FjCgplY2hvCiRlY2hvICJUcnkgXGAkbW9kZW5hbWUgLS1oZWxwJyBmb3IgbW9yZSBp
bmZvcm1hdGlvbiBhYm91dCBvdGhlciBtb2Rlcy4iCgpleGl0IDAKCiMgTG9jYWwgVmFyaWFibGVz
OgojIG1vZGU6c2hlbGwtc2NyaXB0CiMgc2gtaW5kZW50YXRpb246MgojIEVuZDoK

--Multipart=_Wed__31_Mar_2004_09_22_47_+0200_IVAWlh/MouLt7b_T--

From owner-freebsd-amd64@FreeBSD.ORG  Wed Mar 31 04:41:51 2004
Return-Path: <owner-freebsd-amd64@FreeBSD.ORG>
Delivered-To: freebsd-amd64@freebsd.org
Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125])
	by hub.freebsd.org (Postfix) with ESMTP
	id 1BF3516A4CE; Wed, 31 Mar 2004 04:41:51 -0800 (PST)
Received: from freebsd-current.sentex.ca (freebsd-current.sentex.ca
	[64.7.128.98])	by mx1.FreeBSD.org (Postfix) with ESMTP
	id EC7B743D45; Wed, 31 Mar 2004 04:41:50 -0800 (PST)
	(envelope-from tinderbox@freebsd.org)
Received: by freebsd-current.sentex.ca (Postfix, from userid 666)
	id 2C0287303A; Wed, 31 Mar 2004 07:41:50 -0500 (EST)
Sender: FreeBSD Tinderbox <tinderbox@freebsd.org>
From: FreeBSD Tinderbox <tinderbox@freebsd.org>
To: FreeBSD Tinderbox <tinderbox@freebsd.org>, <current@freebsd.org>,
	<amd64@freebsd.org>
Precedence: bulk
Message-Id: <20040331124150.2C0287303A@freebsd-current.sentex.ca>
Date: Wed, 31 Mar 2004 07:41:50 -0500 (EST)
Subject: [current tinderbox] failure on amd64/amd64
X-BeenThere: freebsd-amd64@freebsd.org
X-Mailman-Version: 2.1.1
List-Id: Porting FreeBSD to the AMD64 platform <freebsd-amd64.freebsd.org>
List-Unsubscribe: <http://lists.freebsd.org/mailman/listinfo/freebsd-amd64>,
	<mailto:freebsd-amd64-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/freebsd-amd64>
List-Post: <mailto:freebsd-amd64@freebsd.org>
List-Help: <mailto:freebsd-amd64-request@freebsd.org?subject=help>
List-Subscribe: <http://lists.freebsd.org/mailman/listinfo/freebsd-amd64>,
	<mailto:freebsd-amd64-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Wed, 31 Mar 2004 12:41:51 -0000

TB --- 2004-03-31 12:00:45 - tinderbox 2.3 running on freebsd-current.sentex.ca
TB --- 2004-03-31 12:00:45 - starting CURRENT tinderbox run for amd64/amd64
TB --- 2004-03-31 12:00:45 - checking out the source tree
TB --- 2004-03-31 12:00:45 - cd /home/tinderbox/sandbox/CURRENT/amd64/amd64
TB --- 2004-03-31 12:00:45 - /usr/bin/cvs -f -R -q -d/home/ncvs update -Pd -A src
TB --- 2004-03-31 12:06:38 - building world (CFLAGS=-O2 -pipe)
TB --- 2004-03-31 12:06:38 - cd /home/tinderbox/sandbox/CURRENT/amd64/amd64/src
TB --- 2004-03-31 12:06:38 - /usr/bin/make -B buildworld
>>> Rebuilding the temporary build tree
>>> stage 1.1: legacy release compatibility shims
>>> stage 1.2: bootstrap tools
>>> stage 2.1: cleaning up the object tree
>>> stage 2.2: rebuilding the object tree
>>> stage 2.3: build tools
>>> stage 3: cross tools
>>> stage 4.1: building includes
>>> stage 4.2: building libraries
[...]
/other/tinderbox/CURRENT/amd64/amd64/src/contrib/libpcap/pcap.c:335: error: (near initialization for `dlt_choices[28]')
/other/tinderbox/CURRENT/amd64/amd64/src/contrib/libpcap/pcap.c:336: error: `DLT_IEEE802_11_RADIO_AVS' undeclared here (not in a function)
/other/tinderbox/CURRENT/amd64/amd64/src/contrib/libpcap/pcap.c:336: error: initializer element is not constant
/other/tinderbox/CURRENT/amd64/amd64/src/contrib/libpcap/pcap.c:336: error: (near initialization for `dlt_choices[29].dlt')
/other/tinderbox/CURRENT/amd64/amd64/src/contrib/libpcap/pcap.c:336: error: initializer element is not constant
/other/tinderbox/CURRENT/amd64/amd64/src/contrib/libpcap/pcap.c:336: error: (near initialization for `dlt_choices[29]')
/other/tinderbox/CURRENT/amd64/amd64/src/contrib/libpcap/pcap.c:337: error: initializer element is not constant
/other/tinderbox/CURRENT/amd64/amd64/src/contrib/libpcap/pcap.c:337: error: (near initialization for `dlt_choices[30]')
*** Error code 1

Stop in /other/tinderbox/CURRENT/amd64/amd64/src/lib/libpcap.
*** Error code 1

Stop in /other/tinderbox/CURRENT/amd64/amd64/src/lib.
*** Error code 1

Stop in /other/tinderbox/CURRENT/amd64/amd64/src.
*** Error code 1

Stop in /other/tinderbox/CURRENT/amd64/amd64/src.
*** Error code 1

Stop in /other/tinderbox/CURRENT/amd64/amd64/src.
*** Error code 1

Stop in /other/tinderbox/CURRENT/amd64/amd64/src.
TB --- 2004-03-31 12:41:50 - WARNING: /usr/bin/make returned exit code  1 
TB --- 2004-03-31 12:41:50 - ERROR: failed to build world
TB --- 2004-03-31 12:41:50 - tinderbox aborted

From owner-freebsd-amd64@FreeBSD.ORG  Wed Mar 31 15:07:17 2004
Return-Path: <owner-freebsd-amd64@FreeBSD.ORG>
Delivered-To: freebsd-amd64@freebsd.org
Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125])
	by hub.freebsd.org (Postfix) with ESMTP
	id 978BD16A4CE; Wed, 31 Mar 2004 15:07:17 -0800 (PST)
Received: from freebsd-current.sentex.ca (freebsd-current.sentex.ca
	[64.7.128.98])	by mx1.FreeBSD.org (Postfix) with ESMTP
	id 3DEAF43D2F; Wed, 31 Mar 2004 15:07:17 -0800 (PST)
	(envelope-from tinderbox@freebsd.org)
Received: by freebsd-current.sentex.ca (Postfix, from userid 666)
	id 83BCB7303A; Wed, 31 Mar 2004 18:07:16 -0500 (EST)
Sender: FreeBSD Tinderbox <tinderbox@freebsd.org>
From: FreeBSD Tinderbox <tinderbox@freebsd.org>
To: FreeBSD Tinderbox <tinderbox@freebsd.org>, <current@freebsd.org>,
	<amd64@freebsd.org>
Precedence: bulk
Message-Id: <20040331230716.83BCB7303A@freebsd-current.sentex.ca>
Date: Wed, 31 Mar 2004 18:07:16 -0500 (EST)
Subject: [current tinderbox] failure on amd64/amd64
X-BeenThere: freebsd-amd64@freebsd.org
X-Mailman-Version: 2.1.1
List-Id: Porting FreeBSD to the AMD64 platform <freebsd-amd64.freebsd.org>
List-Unsubscribe: <http://lists.freebsd.org/mailman/listinfo/freebsd-amd64>,
	<mailto:freebsd-amd64-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/freebsd-amd64>
List-Post: <mailto:freebsd-amd64@freebsd.org>
List-Help: <mailto:freebsd-amd64-request@freebsd.org?subject=help>
List-Subscribe: <http://lists.freebsd.org/mailman/listinfo/freebsd-amd64>,
	<mailto:freebsd-amd64-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Wed, 31 Mar 2004 23:07:17 -0000

TB --- 2004-03-31 22:07:13 - tinderbox 2.3 running on freebsd-current.sentex.ca
TB --- 2004-03-31 22:07:13 - starting CURRENT tinderbox run for amd64/amd64
TB --- 2004-03-31 22:07:13 - checking out the source tree
TB --- 2004-03-31 22:07:13 - cd /home/tinderbox/sandbox/CURRENT/amd64/amd64
TB --- 2004-03-31 22:07:13 - /usr/bin/cvs -f -R -q -d/home/ncvs update -Pd -A src
TB --- 2004-03-31 22:12:05 - building world (CFLAGS=-O2 -pipe)
TB --- 2004-03-31 22:12:05 - cd /home/tinderbox/sandbox/CURRENT/amd64/amd64/src
TB --- 2004-03-31 22:12:05 - /usr/bin/make -B buildworld
>>> Rebuilding the temporary build tree
>>> stage 1.1: legacy release compatibility shims
>>> stage 1.2: bootstrap tools
>>> stage 2.1: cleaning up the object tree
>>> stage 2.2: rebuilding the object tree
>>> stage 2.3: build tools
>>> stage 3: cross tools
>>> stage 4.1: building includes
>>> stage 4.2: building libraries
>>> stage 4.3: make dependencies
>>> stage 4.4: building everything
[...]
===> usr.sbin/ndc
cc -O2 -pipe  -I/other/tinderbox/CURRENT/amd64/amd64/src/usr.sbin/ndc/../../contrib/bind/port/freebsd/include  -I/other/tinderbox/CURRENT/amd64/amd64/src/usr.sbin/ndc/../../contrib/bind/bin/named -I/other/tinderbox/CURRENT/amd64/amd64/src/usr.sbin/ndc/../../contrib/bind/include -I.  -c /other/tinderbox/CURRENT/amd64/amd64/src/contrib/bind/bin/ndc/ndc.c
cc -O2 -pipe  -I/other/tinderbox/CURRENT/amd64/amd64/src/usr.sbin/ndc/../../contrib/bind/port/freebsd/include  -I/other/tinderbox/CURRENT/amd64/amd64/src/usr.sbin/ndc/../../contrib/bind/bin/named -I/other/tinderbox/CURRENT/amd64/amd64/src/usr.sbin/ndc/../../contrib/bind/include -I.   -o ndc ndc.o /other/tinderbox/CURRENT/amd64/amd64/obj/amd64/other/tinderbox/CURRENT/amd64/amd64/src/usr.sbin/ndc/../../lib/libbind/libbind.a
INDOT_U=`echo ""|LC_ALL=C tr "a-z" "A-Z"`;  export INDOT_U;  XFER_INDOT_U=`echo ""|LC_ALL=C tr "a-z" "A-Z"`;  export XFER_INDOT_U;  CMD_EXT_U=`echo "1"|LC_ALL=C tr "a-z" "A-Z"`;  export CMD_EXT_U;  SYS_OPS_EXT_U=`echo "8"|LC_ALL=C tr "a-z" "A-Z"`;  export SYS_OPS_EXT_U;  LIB_NETWORK_EXT_U=`echo "3"|LC_ALL=C tr "a-z" "A-Z"`;  export LIB_NETWORK_EXT_U;  FORMAT_EXT_U=`echo "5"|LC_ALL=C tr "a-z" "A-Z"`;  export FORMAT_EXT_U;  DESC_EXT_U=`echo "7"|LC_ALL=C tr "a-z" "A-Z"`;  export DESC_EXT_U;  SYSCALL_EXT_U=`echo "2"|LC_ALL=C tr "a-z" "A-Z"`;  export SYSCALL_EXT_U;  BSD_SYSCALL_EXT_U=`echo "2"|LC_ALL=C tr "a-z" "A-Z"`;  export BSD_SYSCALL_EXT_U;  LIB_C_EXT_U=`echo "3"|LC_ALL=C tr "a-z" "A-Z"`;  export LIB_C_EXT_U;  sed -e "s/@INDOT@//g"  -e "s/@INDOT_U@/${INDOT_U}/g"  -e "s/@XFER_INDOT@//g"  -e "s/@XFER_INDOT_U@/${XFER_INDOT_U}/g"  -e "s/@CMD_EXT@/1/g"  -e "s/@CMD_EXT_U@/${CMD_EXT_U}/g"  -e "s/@LIB_NETWORK_EXT@/3/g"  -e "s/@LIB_NETWORK_EXT_U@/${LIB_NETWORK_EXT_U}/g"  -e "s/@FORMAT
 _EXT@/5/g"  -e "s/@FORMAT_EXT_U@/${FORMAT_EXT_U}/g"  -e "s/@DESC_EXT@/7/g"  -e "s/@DESC_EXT_U@/${DESC_EXT_U}/g"  -e "s/@SYS_OPS_EXT@/8/g"  -e "s/@SYS_OPS_EXT_U@/${SYS_OPS_EXT_U}/g"  -e "s/@SYSCALL_EXT@/2/g"  -e "s/@SYSCALL_EXT_U@/${SYSCALL_EXT_U}/g"  -e "s/@BSD_SYSCALL_EXT@/2/g"  -e "s/@BSD_SYSCALL_EXT_U@/${BSD_SYSCALL_EXT_U}/g"  -e "s/@LIB_C_EXT@/3/g"  -e "s/@LIB_C_EXT_U@/${LIB_C_EXT_U}/g"  -e "s@/etc/named\.conf@/etc/namedb/named.conf@g"  -e "s/^ *$/.Pp/" < /other/tinderbox/CURRENT/amd64/amd64/src/usr.sbin/ndc/../../contrib/bind/doc/man/ndc.8 | gzip -cn > ndc.8.gz
===> usr.sbin/ndp
cc -O2 -pipe  -DINET6 -I. -I/other/tinderbox/CURRENT/amd64/amd64/src/usr.sbin/ndp -I/other/tinderbox/CURRENT/amd64/amd64/src/usr.sbin/ndp/../../contrib/tcpdump  -c /other/tinderbox/CURRENT/amd64/amd64/src/usr.sbin/ndp/ndp.c
cc -O2 -pipe  -DINET6 -I. -I/other/tinderbox/CURRENT/amd64/amd64/src/usr.sbin/ndp -I/other/tinderbox/CURRENT/amd64/amd64/src/usr.sbin/ndp/../../contrib/tcpdump  -c /other/tinderbox/CURRENT/amd64/amd64/src/contrib/tcpdump/gmt2local.c
/other/tinderbox/CURRENT/amd64/amd64/src/contrib/tcpdump/gmt2local.c:23: error: syntax error before "_U_"
*** Error code 1

Stop in /other/tinderbox/CURRENT/amd64/amd64/src/usr.sbin/ndp.
*** Error code 1

Stop in /other/tinderbox/CURRENT/amd64/amd64/src/usr.sbin.
*** Error code 1

Stop in /other/tinderbox/CURRENT/amd64/amd64/src.
*** Error code 1

Stop in /other/tinderbox/CURRENT/amd64/amd64/src.
*** Error code 1

Stop in /other/tinderbox/CURRENT/amd64/amd64/src.
TB --- 2004-03-31 23:07:16 - WARNING: /usr/bin/make returned exit code  1 
TB --- 2004-03-31 23:07:16 - ERROR: failed to build world
TB --- 2004-03-31 23:07:16 - tinderbox aborted

From owner-freebsd-amd64@FreeBSD.ORG  Wed Mar 31 15:19:55 2004
Return-Path: <owner-freebsd-amd64@FreeBSD.ORG>
Delivered-To: freebsd-amd64@freebsd.org
Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125])
	by hub.freebsd.org (Postfix) with ESMTP id 5C2FA16A4CF
	for <freebsd-amd64@freebsd.org>; Wed, 31 Mar 2004 15:19:55 -0800 (PST)
Received: from pandora.cs.kun.nl (pandora.cs.kun.nl [131.174.33.4])
	by mx1.FreeBSD.org (Postfix) with ESMTP id 3D96D43D2D
	for <freebsd-amd64@freebsd.org>; Wed, 31 Mar 2004 15:19:54 -0800 (PST)
	(envelope-from adridg@cs.kun.nl)
Received: from odin.cs.kun.nl [131.174.33.33]  (helo=localhost)
	by pandora.cs.kun.nl (8.12.10/3.67) with ESMTP id i2VNJqqR009879
	for <freebsd-amd64@freebsd.org>; Thu, 1 Apr 2004 01:19:52 +0200 (MEST)
From: Adriaan de Groot <adridg@cs.kun.nl>
To: freebsd-amd64@freebsd.org
Date: Thu, 1 Apr 2004 01:19:33 +0200
User-Agent: KMail/1.6.51
References: <200403302335.16357.peter@wemm.org>
In-Reply-To: <200403302335.16357.peter@wemm.org>
MIME-Version: 1.0
Content-Disposition: inline
Content-Type: Text/Plain;
  charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
Message-Id: <200404010119.39384.adridg@cs.kun.nl>
Subject: Re: HEADS UP: cvs commit: src/lib/libc/amd64/gen makecontext.c
	signalcontext.c
X-BeenThere: freebsd-amd64@freebsd.org
X-Mailman-Version: 2.1.1
Precedence: list
List-Id: Porting FreeBSD to the AMD64 platform <freebsd-amd64.freebsd.org>
List-Unsubscribe: <http://lists.freebsd.org/mailman/listinfo/freebsd-amd64>,
	<mailto:freebsd-amd64-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/freebsd-amd64>
List-Post: <mailto:freebsd-amd64@freebsd.org>
List-Help: <mailto:freebsd-amd64-request@freebsd.org?subject=help>
List-Subscribe: <http://lists.freebsd.org/mailman/listinfo/freebsd-amd64>,
	<mailto:freebsd-amd64-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Wed, 31 Mar 2004 23:19:55 -0000

=2D----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

On Wednesday 31 March 2004 09:35, Peter Wemm wrote:
> I've found another stack alignment bug.  This one is an easy fix, it
> just needs a libc rebuild/install.
>
> Can I get a sanity check from the folks who can break ogg123?  I
> actually found this using ogg123 in case you're interested.

Rebuilt world and kernel

=46reeBSD beans.ebn.kun.nl 5.2-CURRENT FreeBSD 5.2-CURRENT #3: Wed Mar 31=20
22:31:42 CEST 2004    =20
root@beans.ebn.kun.nl:/usr/obj/mnt/sys/CURRENT/src/sys/BEANS  amd64

but not ogg123 itself, and it (ogg123) still cores on me when using=20
libpthread. libc_r remains stable as always. Since this problem is obviousl=
y=20
just me, let it lie.

=2D --=20
pub  1024D/FEA2A3FE 2002-06-18 Adriaan de Groot <groot@kde.org>
                     Would you like a freem?
=2D----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.4 (FreeBSD)

iD8DBQFAa1ILdqzuAf6io/4RAgXeAKCRsgmmmvADvE4iGkUAjS0Kx5RmXgCeJOpq
CNTUEJg9L1QUgqE0zXXlozo=3D
=3DYUD3
=2D----END PGP SIGNATURE-----

From owner-freebsd-amd64@FreeBSD.ORG  Wed Mar 31 18:36:19 2004
Return-Path: <owner-freebsd-amd64@FreeBSD.ORG>
Delivered-To: freebsd-amd64@freebsd.org
Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125])
	by hub.freebsd.org (Postfix) with ESMTP id 0FDF116A4CE
	for <freebsd-amd64@freebsd.org>; Wed, 31 Mar 2004 18:36:19 -0800 (PST)
Received: from delivery.infowest.com (delivery.infowest.com [204.17.177.5])
	by mx1.FreeBSD.org (Postfix) with ESMTP id C15E743D1D
	for <freebsd-amd64@freebsd.org>; Wed, 31 Mar 2004 18:36:18 -0800 (PST)
	(envelope-from butch@infowest.com)
Received: from webmail.infowest.com (webmail.infowest.com [204.17.177.50])
	by delivery.infowest.com (Postfix) with ESMTP id 22666EBBA17
	for <freebsd-amd64@freebsd.org>; Wed, 31 Mar 2004 19:36:18 -0700 (MST)
Received: (from www@localhost)
	by webmail.infowest.com (8.12.6p3/8.12.6/Submit) id i312aIlQ021461
	for freebsd-amd64@freebsd.org; Wed, 31 Mar 2004 19:36:18 -0700 (MST)
X-Authentication-Warning: webmail.infowest.com: www set sender to
	butch@infowest.com using -f
Received: from triana.kmpanilla.com (triana.kmpanilla.com [208.186.104.164]) 
	by webmail2.infowest.com (IMP) with HTTP 
	for <butch@mail.infowest.com>; Wed, 31 Mar 2004 19:36:18 -0700
Message-ID: <1080786978.406b80221fd5f@webmail2.infowest.com>
Date: Wed, 31 Mar 2004 19:36:18 -0700
From: "Cassidy B. Larson" <butch@infowest.com>
To: freebsd-amd64@freebsd.org
MIME-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit
User-Agent: Internet Messaging Program (IMP) 3.2.2 / FreeBSD-4.7
X-Originating-IP: 208.186.104.164
Subject: SMP issues on K8S Pro S2882G3NR
X-BeenThere: freebsd-amd64@freebsd.org
X-Mailman-Version: 2.1.1
Precedence: list
List-Id: Porting FreeBSD to the AMD64 platform <freebsd-amd64.freebsd.org>
List-Unsubscribe: <http://lists.freebsd.org/mailman/listinfo/freebsd-amd64>,
	<mailto:freebsd-amd64-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/freebsd-amd64>
List-Post: <mailto:freebsd-amd64@freebsd.org>
List-Help: <mailto:freebsd-amd64-request@freebsd.org?subject=help>
List-Subscribe: <http://lists.freebsd.org/mailman/listinfo/freebsd-amd64>,
	<mailto:freebsd-amd64-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Thu, 01 Apr 2004 02:36:19 -0000



Hello,

We just got our new Dual Opteron 246 box and I'm having some problems getting
our second CPU to load correctly with a SMP kernel.

Wondering if anybody could offer some assistance, or pointers.

Using the Tyan K8S Pro S2882G3NR board. 3ware 8506 4 port SATA card. 

I've also tried Disabling ACPI in the kernel and bios, then one at a time.

Below are partial dmesg, mptable and kern config.   Unfortunately, with
different combinations of the NO_MIXED_MODE on and off and acpi enabled and
disabled, I am unable to get SMP to launch our second CPU for use. 

Anybody experienced the same problem?? Would -CURRENT be ideal over 5.2.1-p4 for
me?  Note that the GENERICicized SMP kernel also does not launch the second
processor.

Any pointers, helpful hints, etc? 

Thanks,

-c


Partial dmesg:

Copyright (c) 1992-2004 The FreeBSD Project.
Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994
The Regents of the University of California. All rights reserved.
FreeBSD 5.2.1-RELEASE-p4 #7: Wed Mar 31 16:10:21 MST 2004
cbl@azul.infowest.com:/usr/obj/usr/src/sys/AZUL.INFOWEST.COM
Preloaded elf kernel "/boot/kernel/kernel" at 0xffffffff80557000.
Timecounter "i8254" frequency 1193182 Hz quality 0
CPU: AMD Opteron(tm) Processor 246 (1991.41-MHz K8-class CPU)
Origin = "AuthenticAMD"  Id = 0xf58  Stepping = 8
Features=0x78bfbff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CLFLUSH,MMX,FXSR,SSE,SSE2>
AMD Features=0xe0500000<NX,MMX+,LM,3DNow!+,3DNow!>
real memory  = 3221225472 (3072 MB)
avail memory = 3063418880 (2921 MB)
pcib0: <Host to PCI bridge> at pcibus 0 on motherboard


mptable processors entry:

MP Config Base Table Entries:
--
Processors:     APIC ID Version State           Family  Model   Step    Flags
                 0       0x10    BSP, usable     15      5       8      
0x78bfbff
                 1       0x10    AP, usable      15      5       8      
0x78bfbff

So I see that mptable seems to see both processors, am I assuming correct here?

Partial kernel config:

machine         amd64
cpu             HAMMER
ident           AZUL_INFOWEST_COM
maxusers        0

makeoptions     NO_MODULES=not_yet

options         SCHED_4BSD              #4BSD scheduler
options         INET                    #InterNETworking
options         IPSEC                   #IPSEC
options         FFS                     #Berkeley Fast Filesystem
options         SOFTUPDATES             #Enable FFS soft updates support
options         UFS_ACL                 #Support for access control lists
options         UFS_DIRHASH             #Improve performance on big directories
options         CD9660                  #ISO 9660 Filesystem
options         PROCFS                  #Process filesystem (requires PSEUDOFS)
options         PSEUDOFS                #Pseudo-filesystem framework
options         IA32                    #Compatible with i386 binaries
options         COMPAT_FREEBSD4         #Compatible with FreeBSD4
options         SCSI_DELAY=5000         #Delay (in ms) before probing SCSI
options         KTRACE                  #ktrace(1) support
options         SYSVSHM                 #SYSV-style shared memory
options         SYSVMSG                 #SYSV-style message queues
options         SYSVSEM                 #SYSV-style semaphores
options         IPFIREWALL
options         IPDIVERT                #divert sockets
options         _KPOSIX_PRIORITY_SCHEDULING #Posix P1003_1B real-time
extensions
options         KBD_INSTALL_CDEV        # install a CDEV entry in /dev

## SMP Stuff:
options         SMP

#device          acpi
device          atpic                   # 8259A compatability
#options         NO_MIXED_MODE           # Don't penalize working chipsets

From owner-freebsd-amd64@FreeBSD.ORG  Wed Mar 31 20:37:07 2004
Return-Path: <owner-freebsd-amd64@FreeBSD.ORG>
Delivered-To: freebsd-amd64@freebsd.org
Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125])
	by hub.freebsd.org (Postfix) with ESMTP id B77FE16A4CE
	for <freebsd-amd64@freebsd.org>; Wed, 31 Mar 2004 20:37:07 -0800 (PST)
Received: from dogfood.jrv.org (rrcs-sw-24-73-246-106.biz.rr.com
	[24.73.246.106])
	by mx1.FreeBSD.org (Postfix) with ESMTP id 2635E43D1D
	for <freebsd-amd64@freebsd.org>;
	Wed, 31 Mar 2004 20:37:05 -0800 (PST)	(envelope-from james@jrv.org)
Received: from jrv.org (zippy.jrv.org [192.168.3.156])
	(authenticated bits=0)
	by dogfood.jrv.org (8.12.11/8.12.10) with ESMTP id i314b3JJ053331
	(version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO);
	Wed, 31 Mar 2004 22:37:03 -0600 (CST)
	(envelope-from james@jrv.org)
Message-ID: <406B9C6F.5070803@jrv.org>
Date: Wed, 31 Mar 2004 22:37:03 -0600
From: "James R. Van Artsalen" <james@jrv.org>
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US;
	rv:1.6) Gecko/20040113
X-Accept-Language: en-us, en
MIME-Version: 1.0
To: "Cassidy B. Larson" <butch@infowest.com>
References: <1080786978.406b80221fd5f@webmail2.infowest.com>
In-Reply-To: <1080786978.406b80221fd5f@webmail2.infowest.com>
Content-Type: text/plain; charset=ISO-8859-1; format=flowed
Content-Transfer-Encoding: 7bit
cc: freebsd-amd64@freebsd.org
Subject: Re: SMP issues on K8S Pro S2882G3NR
X-BeenThere: freebsd-amd64@freebsd.org
X-Mailman-Version: 2.1.1
Precedence: list
List-Id: Porting FreeBSD to the AMD64 platform <freebsd-amd64.freebsd.org>
List-Unsubscribe: <http://lists.freebsd.org/mailman/listinfo/freebsd-amd64>,
	<mailto:freebsd-amd64-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/freebsd-amd64>
List-Post: <mailto:freebsd-amd64@freebsd.org>
List-Help: <mailto:freebsd-amd64-request@freebsd.org?subject=help>
List-Subscribe: <http://lists.freebsd.org/mailman/listinfo/freebsd-amd64>,
	<mailto:freebsd-amd64-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Thu, 01 Apr 2004 04:37:07 -0000

Cassidy B. Larson wrote:

>Copyright (c) 1992-2004 The FreeBSD Project.
>Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994
>The Regents of the University of California. All rights reserved.
>FreeBSD 5.2.1-RELEASE-p4 #7: Wed Mar 31 16:10:21 MST 2004
>cbl@azul.infowest.com:/usr/obj/usr/src/sys/AZUL.INFOWEST.COM
>Preloaded elf kernel "/boot/kernel/kernel" at 0xffffffff80557000.
>Timecounter "i8254" frequency 1193182 Hz quality 0
>  
>

I have an APIC line here:

Preloaded elf kernel "/boot/kernel/kernel" at 0xffffffff8090c000.
ACPI APIC Table: <A M I  OEMAPIC >
Timecounter "i8254" frequency 1193182 Hz quality 0
CPU: AMD Opteron(tm) Processor 244 (1793.45-MHz K8-class CPU)
  Origin = "AuthenticAMD"  Id = 0xf51  Stepping = 1
  
Features=0x78bfbff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CLFLUSH,MMX,FXSR,SSE,SSE2>
  AMD Features=0xe0500000<NX,MMX+,LM,3DNow!+,3DNow!>
real memory  = 8589934592 (8192 MB)
avail memory = 7305748480 (6967 MB)
FreeBSD/SMP: Multiprocessor System Detected: 2 CPUs
 cpu0 (BSP): APIC ID:  0
 cpu1 (AP): APIC ID:  1
ioapic0 <Version 1.1> irqs 0-23 on motherboard
ioapic1 <Version 1.1> irqs 24-27 on motherboard
ioapic2 <Version 1.1> irqs 28-31 on motherboard

From owner-freebsd-amd64@FreeBSD.ORG  Thu Apr  1 00:47:25 2004
Return-Path: <owner-freebsd-amd64@FreeBSD.ORG>
Delivered-To: freebsd-amd64@freebsd.org
Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125])
	by hub.freebsd.org (Postfix) with ESMTP id ED5AB16A4CF
	for <freebsd-amd64@freebsd.org>; Thu,  1 Apr 2004 00:47:25 -0800 (PST)
Received: from dogfood.jrv.org (rrcs-sw-24-73-246-106.biz.rr.com
	[24.73.246.106])
	by mx1.FreeBSD.org (Postfix) with ESMTP id 7324143D2D
	for <freebsd-amd64@freebsd.org>;
	Thu,  1 Apr 2004 00:47:25 -0800 (PST)	(envelope-from james@jrv.org)
Received: from jrv.org (zippy.jrv.org [192.168.3.156])
	(authenticated bits=0)
	by dogfood.jrv.org (8.12.11/8.12.10) with ESMTP id i318lOCP069357
	(version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO);
	Thu, 1 Apr 2004 02:47:24 -0600 (CST)
	(envelope-from james@jrv.org)
Message-ID: <406BD71C.4030305@jrv.org>
Date: Thu, 01 Apr 2004 02:47:24 -0600
From: "James R. Van Artsalen" <james@jrv.org>
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US;
	rv:1.6) Gecko/20040113
X-Accept-Language: en-us, en
MIME-Version: 1.0
To: Rich Dunkle <richd@smallcatbrain.com>
References: <38712.134.134.136.13.1080577782.squirrel@www.smallcatbrain.com>
In-Reply-To: <38712.134.134.136.13.1080577782.squirrel@www.smallcatbrain.com>
Content-Type: text/plain; charset=us-ascii; format=flowed
Content-Transfer-Encoding: 7bit
cc: freebsd-amd64@freebsd.org
Subject: Re: New 5.2-CURRENT snapshot -softdep_disk_prewrite+0x44
X-BeenThere: freebsd-amd64@freebsd.org
X-Mailman-Version: 2.1.1
Precedence: list
List-Id: Porting FreeBSD to the AMD64 platform <freebsd-amd64.freebsd.org>
List-Unsubscribe: <http://lists.freebsd.org/mailman/listinfo/freebsd-amd64>,
	<mailto:freebsd-amd64-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/freebsd-amd64>
List-Post: <mailto:freebsd-amd64@freebsd.org>
List-Help: <mailto:freebsd-amd64-request@freebsd.org?subject=help>
List-Subscribe: <http://lists.freebsd.org/mailman/listinfo/freebsd-amd64>,
	<mailto:freebsd-amd64-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Thu, 01 Apr 2004 08:47:26 -0000

Rich Dunkle wrote:

>I am having the same problem with this snapshot as the other
>snapshots I have created in the last week.
>Hang during inital boot.
>
>softdep_disk_prewrite+0x44
>
>I reported this in freebsd-current on Friday
>
>Does anyone else see this ?
>  
>

I see this on a Tyan S2885 with four disks in mirrored pairs on a 
Promise S150 TX4 controller.

From owner-freebsd-amd64@FreeBSD.ORG  Thu Apr  1 03:16:48 2004
Return-Path: <owner-freebsd-amd64@FreeBSD.ORG>
Delivered-To: freebsd-amd64@freebsd.org
Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125])
	by hub.freebsd.org (Postfix) with ESMTP id 7278A16A4CE
	for <freebsd-amd64@freebsd.org>; Thu,  1 Apr 2004 03:16:48 -0800 (PST)
Received: from mail.uk.psi.com (mail.uk.psi.com [154.8.2.142])
	by mx1.FreeBSD.org (Postfix) with ESMTP id 8440F43D2F
	for <freebsd-amd64@freebsd.org>; Thu,  1 Apr 2004 03:16:47 -0800 (PST)
	(envelope-from alan.barrow@psineteurope.com)
Received: from camdev-01.ops.uk.psi.com ([154.8.22.17])
	by mail.uk.psi.com with esmtp (Exim 3.33 #1)
	id 1B90BH-0003wd-00; Thu, 01 Apr 2004 12:16:19 +0100
From: alan barrow <alan.barrow@psineteurope.com>
To: "James R. Van Artsalen" <james@jrv.org>
In-Reply-To: <406B9C6F.5070803@jrv.org>
References: <1080786978.406b80221fd5f@webmail2.infowest.com> 
	<406B9C6F.5070803@jrv.org>
Content-Type: text/plain
Content-Transfer-Encoding: 7bit
X-Mailer: Ximian Evolution 1.0.8 (1.0.8-9.7x.1) 
Date: 01 Apr 2004 12:16:19 +0100
Message-Id: <1080818179.2843.47.camel@camdev-01.ops.uk.psi.com>
Mime-Version: 1.0
cc: "freebsd-amd64@freebsd.org" <freebsd-amd64@freebsd.org>
Subject: Re: SMP issues on K8S Pro S2882G3NR
X-BeenThere: freebsd-amd64@freebsd.org
X-Mailman-Version: 2.1.1
Precedence: list
List-Id: Porting FreeBSD to the AMD64 platform <freebsd-amd64.freebsd.org>
List-Unsubscribe: <http://lists.freebsd.org/mailman/listinfo/freebsd-amd64>,
	<mailto:freebsd-amd64-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/freebsd-amd64>
List-Post: <mailto:freebsd-amd64@freebsd.org>
List-Help: <mailto:freebsd-amd64-request@freebsd.org?subject=help>
List-Subscribe: <http://lists.freebsd.org/mailman/listinfo/freebsd-amd64>,
	<mailto:freebsd-amd64-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Thu, 01 Apr 2004 11:16:48 -0000

Is this a problem ? turn off APIC ?

On Thu, 2004-04-01 at 05:37, James R. Van Artsalen wrote:
> Cassidy B. Larson wrote:
> 
> >Copyright (c) 1992-2004 The FreeBSD Project.
> >Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994
> >The Regents of the University of California. All rights reserved.
> >FreeBSD 5.2.1-RELEASE-p4 #7: Wed Mar 31 16:10:21 MST 2004
> >cbl@azul.infowest.com:/usr/obj/usr/src/sys/AZUL.INFOWEST.COM
> >Preloaded elf kernel "/boot/kernel/kernel" at 0xffffffff80557000.
> >Timecounter "i8254" frequency 1193182 Hz quality 0
> >  
> >
> 
> I have an APIC line here:
> 
> Preloaded elf kernel "/boot/kernel/kernel" at 0xffffffff8090c000.
> ACPI APIC Table: <A M I  OEMAPIC >
> Timecounter "i8254" frequency 1193182 Hz quality 0
> CPU: AMD Opteron(tm) Processor 244 (1793.45-MHz K8-class CPU)
>   Origin = "AuthenticAMD"  Id = 0xf51  Stepping = 1
>   
> Features=0x78bfbff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CLFLUSH,MMX,FXSR,SSE,SSE2>
>   AMD Features=0xe0500000<NX,MMX+,LM,3DNow!+,3DNow!>
> real memory  = 8589934592 (8192 MB)
> avail memory = 7305748480 (6967 MB)
> FreeBSD/SMP: Multiprocessor System Detected: 2 CPUs
>  cpu0 (BSP): APIC ID:  0
>  cpu1 (AP): APIC ID:  1
> ioapic0 <Version 1.1> irqs 0-23 on motherboard
> ioapic1 <Version 1.1> irqs 24-27 on motherboard
> ioapic2 <Version 1.1> irqs 28-31 on motherboard
> _______________________________________________
> freebsd-amd64@freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-amd64
> To unsubscribe, send any mail to "freebsd-amd64-unsubscribe@freebsd.org"
> 


From owner-freebsd-amd64@FreeBSD.ORG  Thu Apr  1 03:27:39 2004
Return-Path: <owner-freebsd-amd64@FreeBSD.ORG>
Delivered-To: freebsd-amd64@freebsd.org
Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125])
	by hub.freebsd.org (Postfix) with ESMTP id F344516A4CE
	for <freebsd-amd64@freebsd.org>; Thu,  1 Apr 2004 03:27:38 -0800 (PST)
Received: from mail.uk.psi.com (mail.uk.psi.com [154.8.2.142])
	by mx1.FreeBSD.org (Postfix) with ESMTP id 8DA9143D1F
	for <freebsd-amd64@freebsd.org>; Thu,  1 Apr 2004 03:27:38 -0800 (PST)
	(envelope-from alan.barrow@psineteurope.com)
Received: from camdev-01.ops.uk.psi.com ([154.8.22.17])
	by mail.uk.psi.com with esmtp (Exim 3.33 #1)
	id 1B90M2-0004mG-00; Thu, 01 Apr 2004 12:27:26 +0100
From: alan barrow <alan.barrow@psineteurope.com>
To: "Cassidy B. Larson" <butch@infowest.com>
In-Reply-To: <1080786978.406b80221fd5f@webmail2.infowest.com>
References: <1080786978.406b80221fd5f@webmail2.infowest.com>
Content-Type: text/plain
Content-Transfer-Encoding: 7bit
X-Mailer: Ximian Evolution 1.0.8 (1.0.8-9.7x.1) 
Date: 01 Apr 2004 12:27:26 +0100
Message-Id: <1080818846.2845.59.camel@camdev-01.ops.uk.psi.com>
Mime-Version: 1.0
cc: "freebsd-amd64@freebsd.org" <freebsd-amd64@freebsd.org>
Subject: Re: SMP issues on K8S Pro S2882G3NR
X-BeenThere: freebsd-amd64@freebsd.org
X-Mailman-Version: 2.1.1
Precedence: list
List-Id: Porting FreeBSD to the AMD64 platform <freebsd-amd64.freebsd.org>
List-Unsubscribe: <http://lists.freebsd.org/mailman/listinfo/freebsd-amd64>,
	<mailto:freebsd-amd64-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/freebsd-amd64>
List-Post: <mailto:freebsd-amd64@freebsd.org>
List-Help: <mailto:freebsd-amd64-request@freebsd.org?subject=help>
List-Subscribe: <http://lists.freebsd.org/mailman/listinfo/freebsd-amd64>,
	<mailto:freebsd-amd64-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Thu, 01 Apr 2004 11:27:39 -0000

We have been testing this fine, Upgrade your BIOS to version 2.00 it's
the only one that works properly. (Thanks tyan) see the list.

We have not had this issue at all, have you tried a standard drive only
??? i.e. no SATA.... just to see what happens.

We have rebuilt the kernel and it works fine,

yours sarig.


On Thu, 2004-04-01 at 03:36, Cassidy B. Larson wrote:
> 
> 
> Hello,
> 
> We just got our new Dual Opteron 246 box and I'm having some problems getting
> our second CPU to load correctly with a SMP kernel.
> 
> Wondering if anybody could offer some assistance, or pointers.
> 
> Using the Tyan K8S Pro S2882G3NR board. 3ware 8506 4 port SATA card. 
> 
> I've also tried Disabling ACPI in the kernel and bios, then one at a time.
> 
> Below are partial dmesg, mptable and kern config.   Unfortunately, with
> different combinations of the NO_MIXED_MODE on and off and acpi enabled and
> disabled, I am unable to get SMP to launch our second CPU for use. 
> 
> Anybody experienced the same problem?? Would -CURRENT be ideal over 5.2.1-p4 for
> me?  Note that the GENERICicized SMP kernel also does not launch the second
> processor.
> 
> Any pointers, helpful hints, etc? 
> 
> Thanks,
> 
> -c
> 
> 
> Partial dmesg:
> 
> Copyright (c) 1992-2004 The FreeBSD Project.
> Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994
> The Regents of the University of California. All rights reserved.
> FreeBSD 5.2.1-RELEASE-p4 #7: Wed Mar 31 16:10:21 MST 2004
> cbl@azul.infowest.com:/usr/obj/usr/src/sys/AZUL.INFOWEST.COM
> Preloaded elf kernel "/boot/kernel/kernel" at 0xffffffff80557000.
> Timecounter "i8254" frequency 1193182 Hz quality 0
> CPU: AMD Opteron(tm) Processor 246 (1991.41-MHz K8-class CPU)
> Origin = "AuthenticAMD"  Id = 0xf58  Stepping = 8
> Features=0x78bfbff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CLFLUSH,MMX,FXSR,SSE,SSE2>
> AMD Features=0xe0500000<NX,MMX+,LM,3DNow!+,3DNow!>
> real memory  = 3221225472 (3072 MB)
> avail memory = 3063418880 (2921 MB)
> pcib0: <Host to PCI bridge> at pcibus 0 on motherboard
> 
> 
> mptable processors entry:
> 
> MP Config Base Table Entries:
> --
> Processors:     APIC ID Version State           Family  Model   Step    Flags
>                  0       0x10    BSP, usable     15      5       8      
> 0x78bfbff
>                  1       0x10    AP, usable      15      5       8      
> 0x78bfbff
> 
> So I see that mptable seems to see both processors, am I assuming correct here?
> 
> Partial kernel config:
> 
> machine         amd64
> cpu             HAMMER
> ident           AZUL_INFOWEST_COM
> maxusers        0
> 
> makeoptions     NO_MODULES=not_yet
> 
> options         SCHED_4BSD              #4BSD scheduler
> options         INET                    #InterNETworking
> options         IPSEC                   #IPSEC
> options         FFS                     #Berkeley Fast Filesystem
> options         SOFTUPDATES             #Enable FFS soft updates support
> options         UFS_ACL                 #Support for access control lists
> options         UFS_DIRHASH             #Improve performance on big directories
> options         CD9660                  #ISO 9660 Filesystem
> options         PROCFS                  #Process filesystem (requires PSEUDOFS)
> options         PSEUDOFS                #Pseudo-filesystem framework
> options         IA32                    #Compatible with i386 binaries
> options         COMPAT_FREEBSD4         #Compatible with FreeBSD4
> options         SCSI_DELAY=5000         #Delay (in ms) before probing SCSI
> options         KTRACE                  #ktrace(1) support
> options         SYSVSHM                 #SYSV-style shared memory
> options         SYSVMSG                 #SYSV-style message queues
> options         SYSVSEM                 #SYSV-style semaphores
> options         IPFIREWALL
> options         IPDIVERT                #divert sockets
> options         _KPOSIX_PRIORITY_SCHEDULING #Posix P1003_1B real-time
> extensions
> options         KBD_INSTALL_CDEV        # install a CDEV entry in /dev
> 
> ## SMP Stuff:
> options         SMP
> 
> #device          acpi
> device          atpic                   # 8259A compatability
> #options         NO_MIXED_MODE           # Don't penalize working chipsets
> 
> _______________________________________________
> freebsd-amd64@freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-amd64
> To unsubscribe, send any mail to "freebsd-amd64-unsubscribe@freebsd.org"
> 
-- 


From owner-freebsd-amd64@FreeBSD.ORG  Thu Apr  1 03:31:23 2004
Return-Path: <owner-freebsd-amd64@FreeBSD.ORG>
Delivered-To: freebsd-amd64@freebsd.org
Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125])
	by hub.freebsd.org (Postfix) with ESMTP id 5301816A4CE
	for <freebsd-amd64@freebsd.org>; Thu,  1 Apr 2004 03:31:23 -0800 (PST)
Received: from dogfood.jrv.org (rrcs-sw-24-73-246-106.biz.rr.com
	[24.73.246.106])
	by mx1.FreeBSD.org (Postfix) with ESMTP id BAE3C43D2D
	for <freebsd-amd64@freebsd.org>;
	Thu,  1 Apr 2004 03:31:22 -0800 (PST)	(envelope-from james@jrv.org)
Received: from jrv.org (zippy.jrv.org [192.168.3.156])
	(authenticated bits=0)
	by dogfood.jrv.org (8.12.11/8.12.10) with ESMTP id i31BVLKa076544
	(version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO);
	Thu, 1 Apr 2004 05:31:21 -0600 (CST)
	(envelope-from james@jrv.org)
Message-ID: <406BFD89.1010905@jrv.org>
Date: Thu, 01 Apr 2004 05:31:21 -0600
From: "James R. Van Artsalen" <james@jrv.org>
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US;
	rv:1.6) Gecko/20040113
X-Accept-Language: en-us, en
MIME-Version: 1.0
To: alan barrow <alan.barrow@psineteurope.com>
References: <1080786978.406b80221fd5f@webmail2.infowest.com>
	<406B9C6F.5070803@jrv.org> <1080818179.2843.47.camel@camdev-01.ops.uk.psi.com>
In-Reply-To: <1080818179.2843.47.camel@camdev-01.ops.uk.psi.com>
Content-Type: text/plain; charset=ISO-8859-1; format=flowed
Content-Transfer-Encoding: 7bit
cc: "freebsd-amd64@freebsd.org" <freebsd-amd64@freebsd.org>
Subject: Re: SMP issues on K8S Pro S2882G3NR
X-BeenThere: freebsd-amd64@freebsd.org
X-Mailman-Version: 2.1.1
Precedence: list
List-Id: Porting FreeBSD to the AMD64 platform <freebsd-amd64.freebsd.org>
List-Unsubscribe: <http://lists.freebsd.org/mailman/listinfo/freebsd-amd64>,
	<mailto:freebsd-amd64-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/freebsd-amd64>
List-Post: <mailto:freebsd-amd64@freebsd.org>
List-Help: <mailto:freebsd-amd64-request@freebsd.org?subject=help>
List-Subscribe: <http://lists.freebsd.org/mailman/listinfo/freebsd-amd64>,
	<mailto:freebsd-amd64-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Thu, 01 Apr 2004 11:31:23 -0000

alan barrow wrote:

>Is this a problem ? turn off APIC ?
>
>  
>
The APIC is needed for SMP.  The fact that the other system shows no 
APIC is probably related to the SMP problem.

From owner-freebsd-amd64@FreeBSD.ORG  Thu Apr  1 03:36:34 2004
Return-Path: <owner-freebsd-amd64@FreeBSD.ORG>
Delivered-To: freebsd-amd64@freebsd.org
Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125])
	by hub.freebsd.org (Postfix) with ESMTP id 023DF16A4CE
	for <freebsd-amd64@freebsd.org>; Thu,  1 Apr 2004 03:36:34 -0800 (PST)
Received: from mail.uk.psi.com (mail.uk.psi.com [154.8.2.142])
	by mx1.FreeBSD.org (Postfix) with ESMTP id C17B243D58
	for <freebsd-amd64@freebsd.org>; Thu,  1 Apr 2004 03:36:33 -0800 (PST)
	(envelope-from alan.barrow@psineteurope.com)
Received: from camdev-01.ops.uk.psi.com ([154.8.22.17])
	by mail.uk.psi.com with esmtp (Exim 3.33 #1)
	id 1B90Un-0005Pz-00; Thu, 01 Apr 2004 12:36:29 +0100
From: alan barrow <alan.barrow@psineteurope.com>
To: "James R. Van Artsalen" <james@jrv.org>
In-Reply-To: <406BFD89.1010905@jrv.org>
References: <1080786978.406b80221fd5f@webmail2.infowest.com>
	<406B9C6F.5070803@jrv.org>
	<1080818179.2843.47.camel@camdev-01.ops.uk.psi.com> 
	<406BFD89.1010905@jrv.org>
Content-Type: text/plain
Content-Transfer-Encoding: 7bit
X-Mailer: Ximian Evolution 1.0.8 (1.0.8-9.7x.1) 
Date: 01 Apr 2004 12:36:29 +0100
Message-Id: <1080819389.2845.62.camel@camdev-01.ops.uk.psi.com>
Mime-Version: 1.0
cc: "freebsd-amd64@freebsd.org" <freebsd-amd64@freebsd.org>
Subject: Re: SMP issues on K8S Pro S2882G3NR
X-BeenThere: freebsd-amd64@freebsd.org
X-Mailman-Version: 2.1.1
Precedence: list
List-Id: Porting FreeBSD to the AMD64 platform <freebsd-amd64.freebsd.org>
List-Unsubscribe: <http://lists.freebsd.org/mailman/listinfo/freebsd-amd64>,
	<mailto:freebsd-amd64-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/freebsd-amd64>
List-Post: <mailto:freebsd-amd64@freebsd.org>
List-Help: <mailto:freebsd-amd64-request@freebsd.org?subject=help>
List-Subscribe: <http://lists.freebsd.org/mailman/listinfo/freebsd-amd64>,
	<mailto:freebsd-amd64-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Thu, 01 Apr 2004 11:36:34 -0000

I know...

So have you tried the 2.0 bios ?

On Thu, 2004-04-01 at 12:31, James R. Van Artsalen wrote:
> alan barrow wrote:
> 
> >Is this a problem ? turn off APIC ?
> >
> >  
> >
> The APIC is needed for SMP.  The fact that the other system shows no 
> APIC is probably related to the SMP problem.
> 


From owner-freebsd-amd64@FreeBSD.ORG  Thu Apr  1 03:52:46 2004
Return-Path: <owner-freebsd-amd64@FreeBSD.ORG>
Delivered-To: freebsd-amd64@freebsd.org
Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125])
	by hub.freebsd.org (Postfix) with ESMTP
	id E844E16A4CE; Thu,  1 Apr 2004 03:52:45 -0800 (PST)
Received: from freebsd-current.sentex.ca (freebsd-current.sentex.ca
	[64.7.128.98])	by mx1.FreeBSD.org (Postfix) with ESMTP
	id 9B22043D45; Thu,  1 Apr 2004 03:52:45 -0800 (PST)
	(envelope-from tinderbox@freebsd.org)
Received: by freebsd-current.sentex.ca (Postfix, from userid 666)
	id D76637303A; Thu,  1 Apr 2004 06:52:44 -0500 (EST)
Sender: FreeBSD Tinderbox <tinderbox@freebsd.org>
From: FreeBSD Tinderbox <tinderbox@freebsd.org>
To: FreeBSD Tinderbox <tinderbox@freebsd.org>, <current@freebsd.org>,
	<amd64@freebsd.org>
Precedence: bulk
Message-Id: <20040401115244.D76637303A@freebsd-current.sentex.ca>
Date: Thu,  1 Apr 2004 06:52:44 -0500 (EST)
Subject: [current tinderbox] failure on amd64/amd64
X-BeenThere: freebsd-amd64@freebsd.org
X-Mailman-Version: 2.1.1
List-Id: Porting FreeBSD to the AMD64 platform <freebsd-amd64.freebsd.org>
List-Unsubscribe: <http://lists.freebsd.org/mailman/listinfo/freebsd-amd64>,
	<mailto:freebsd-amd64-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/freebsd-amd64>
List-Post: <mailto:freebsd-amd64@freebsd.org>
List-Help: <mailto:freebsd-amd64-request@freebsd.org?subject=help>
List-Subscribe: <http://lists.freebsd.org/mailman/listinfo/freebsd-amd64>,
	<mailto:freebsd-amd64-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Thu, 01 Apr 2004 11:52:46 -0000

TB --- 2004-04-01 10:42:30 - tinderbox 2.3 running on freebsd-current.sentex.ca
TB --- 2004-04-01 10:42:30 - starting CURRENT tinderbox run for amd64/amd64
TB --- 2004-04-01 10:42:30 - checking out the source tree
TB --- 2004-04-01 10:42:30 - cd /home/tinderbox/sandbox/CURRENT/amd64/amd64
TB --- 2004-04-01 10:42:30 - /usr/bin/cvs -f -R -q -d/home/ncvs update -Pd -A src
TB --- 2004-04-01 10:47:24 - building world (CFLAGS=-O2 -pipe)
TB --- 2004-04-01 10:47:24 - cd /home/tinderbox/sandbox/CURRENT/amd64/amd64/src
TB --- 2004-04-01 10:47:24 - /usr/bin/make -B buildworld
>>> Rebuilding the temporary build tree
>>> stage 1.1: legacy release compatibility shims
>>> stage 1.2: bootstrap tools
>>> stage 2.1: cleaning up the object tree
>>> stage 2.2: rebuilding the object tree
>>> stage 2.3: build tools
>>> stage 3: cross tools
>>> stage 4.1: building includes
>>> stage 4.2: building libraries
>>> stage 4.3: make dependencies
>>> stage 4.4: building everything
TB --- 2004-04-01 11:45:16 - building generic kernel (COPTFLAGS=-O2 -pipe)
TB --- 2004-04-01 11:45:16 - cd /home/tinderbox/sandbox/CURRENT/amd64/amd64/src
TB --- 2004-04-01 11:45:16 - /usr/bin/make buildkernel KERNCONF=GENERIC
>>> Kernel build for GENERIC started on Thu Apr  1 11:45:16 GMT 2004
>>> stage 1: configuring the kernel
>>> stage 2.1: cleaning up the object tree
>>> stage 2.2: rebuilding the object tree
>>> stage 2.3: build tools
>>> stage 3.1: making dependencies
>>> stage 3.2: building everything
>>> Kernel build for GENERIC completed on Thu Apr  1 11:52:43 GMT 2004
TB --- 2004-04-01 11:52:43 - generating LINT kernel config
TB --- 2004-04-01 11:52:43 - cd /home/tinderbox/sandbox/CURRENT/amd64/amd64/src/sys/amd64/conf
TB --- 2004-04-01 11:52:43 - /usr/bin/make -B LINT
TB --- 2004-04-01 11:52:43 - building LINT kernel (COPTFLAGS=-O2 -pipe)
TB --- 2004-04-01 11:52:43 - cd /home/tinderbox/sandbox/CURRENT/amd64/amd64/src
TB --- 2004-04-01 11:52:43 - /usr/bin/make buildkernel KERNCONF=LINT
>>> Kernel build for LINT started on Thu Apr  1 11:52:44 GMT 2004
>>> stage 1: configuring the kernel
--------------------------------------------------------------
cd /other/tinderbox/CURRENT/amd64/amd64/src/sys/amd64/conf;  PATH=/home/tinderbox/sandbox/CURRENT/amd64/amd64/obj/amd64/other/tinderbox/CURRENT/amd64/amd64/src/i386/legacy/usr/sbin:/home/tinderbox/sandbox/CURRENT/amd64/amd64/obj/amd64/other/tinderbox/CURRENT/amd64/amd64/src/i386/legacy/usr/bin:/home/tinderbox/sandbox/CURRENT/amd64/amd64/obj/amd64/other/tinderbox/CURRENT/amd64/amd64/src/i386/legacy/usr/games:/home/tinderbox/sandbox/CURRENT/amd64/amd64/obj/amd64/other/tinderbox/CURRENT/amd64/amd64/src/i386/usr/sbin:/home/tinderbox/sandbox/CURRENT/amd64/amd64/obj/amd64/other/tinderbox/CURRENT/amd64/amd64/src/i386/usr/bin:/home/tinderbox/sandbox/CURRENT/amd64/amd64/obj/amd64/other/tinderbox/CURRENT/amd64/amd64/src/i386/usr/games:/sbin:/bin:/usr/sbin:/usr/bin  config  -d /home/tinderbox/sandbox/CURRENT/amd64/amd64/obj/amd64/other/tinderbox/CURRENT/amd64/amd64/src/sys/LINT  /other/tinderbox/CURRENT/amd64/amd64/src/sys/amd64/conf/LINT
FYI: static unit limits for vcoda are set: NVCODA=4
config: Error: device "twa" is unknown
config: 1 errors
WARNING: kernel contains GPL contaminated ext2fs filesystem
*** Error code 1

Stop in /other/tinderbox/CURRENT/amd64/amd64/src.
*** Error code 1

Stop in /other/tinderbox/CURRENT/amd64/amd64/src.
TB --- 2004-04-01 11:52:44 - WARNING: /usr/bin/make returned exit code  1 
TB --- 2004-04-01 11:52:44 - ERROR: failed to build lint kernel
TB --- 2004-04-01 11:52:44 - tinderbox aborted

From owner-freebsd-amd64@FreeBSD.ORG  Thu Apr  1 05:10:45 2004
Return-Path: <owner-freebsd-amd64@FreeBSD.ORG>
Delivered-To: freebsd-amd64@freebsd.org
Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125])
	by hub.freebsd.org (Postfix) with ESMTP id 90CA016A4D0
	for <freebsd-amd64@freebsd.org>; Thu,  1 Apr 2004 05:10:45 -0800 (PST)
Received: from biostats.snu.ac.kr (bibs.snu.ac.kr [147.46.42.54])
	by mx1.FreeBSD.org (Postfix) with SMTP id DF44B43D41
	for <freebsd-amd64@freebsd.org>; Thu,  1 Apr 2004 05:10:44 -0800 (PST)
	(envelope-from skon@kr.FreeBSD.org)
Received: (qmail 69347 invoked from network); 1 Apr 2004 13:10:33 -0000
Received: from unknown (HELO skon2) (192.168.42.18)
  by 192.168.42.17 with SMTP; 1 Apr 2004 13:10:33 -0000
Message-ID: <007e01c417eb$6691ef90$122aa8c0@skon2>
From: "SungGON Yi." <skon@kr.FreeBSD.org>
To: <freebsd-current@freebsd.org>
Date: Thu, 1 Apr 2004 22:15:06 +0900
MIME-Version: 1.0
Content-Type: text/plain;
	charset="utf-8"
Content-Transfer-Encoding: 7bit
X-Priority: 3
X-MSMail-Priority: Normal
X-Mailer: Microsoft Outlook Express 6.00.2800.1158
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1165
cc: freebsd-amd64@freebsd.org
Subject: ATA driver cannot detect the Serial ATA disk in
	FreeBSD/AMD64-Current
X-BeenThere: freebsd-amd64@freebsd.org
X-Mailman-Version: 2.1.1
Precedence: list
List-Id: Porting FreeBSD to the AMD64 platform <freebsd-amd64.freebsd.org>
List-Unsubscribe: <http://lists.freebsd.org/mailman/listinfo/freebsd-amd64>,
	<mailto:freebsd-amd64-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/freebsd-amd64>
List-Post: <mailto:freebsd-amd64@freebsd.org>
List-Help: <mailto:freebsd-amd64-request@freebsd.org?subject=help>
List-Subscribe: <http://lists.freebsd.org/mailman/listinfo/freebsd-amd64>,
	<mailto:freebsd-amd64-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Thu, 01 Apr 2004 13:10:45 -0000

My system is consisted in Tyan S2885 opteron dual board and Seagate 7200.1 SATA
disk with
FreeBSD/AMD64 5.2-Current.

Old ata driver could detect the disk. Below the verbose message on bootstrap:

----------------------
...
atapci0: <SiI 3114 SATA150 controller> port 0x8400-0x840f,0x8480-0x8483,0x8800-0
x8807,0x8880-0x8883,0x8c00-0x8c07 mem 0xfe8ffc00-0xfe8fffff irq 17 at device 11.
0 on pci3
pcib1: device atapci0 requested decoded I/O range 0x8400-0x840f
atapci0: [MPSAFE]
pcib1: device atapci0 requested decoded memory range 0xfe8ffc00-0xfe8fffff
ata2: reset tp1 mask=01 ostat0=50 ostat1=50
ata2-master: stat=0xff err=0xff lsb=0xff msb=0xff
ata2-master: stat=0xff err=0xff lsb=0xff msb=0xff
ata2-master: stat=0x50 err=0x01 lsb=0x00 msb=0x00
ata2: reset tp2 mask=01 stat0=50 stat1=00 devices=0x1<ATA_MASTER>
ata2: at 0xfe8ffc00 on atapci0
...
ata1-master: pio=0x0c wdma=0x22 udma=0xffffffff cable=40pin
ata1-master: setting PIO4 on AMD 8111 chip
acd0: <CRD-8400B/1.02> CDROM drive at ata1 as master
acd0: read 6875KB/s (6875KB/s), 128KB buffer, PIO4
acd0: Reads: CDR, CDRW, CDDA stream, packet
acd0: Writes:
acd0: Audio: play, 255 volume levels
acd0: Mechanism: ejectable tray, unlocked, lock protected
acd0: Medium: no/blank disc
ata2-master: pio=0x0c wdma=0x22 udma=0x46 cable=40pin
ad4: <ST380013AS/3.18> ATA-6 disk at ata2-master
ad4: 76319MB (156301488 sectors), 155061 C, 16 H, 63 S, 512 B
ad4: 16 secs/int, 1 depth queue, UDMA100
GEOM: new disk ad4
...
--------------

But, new ata driver cannot detect the disk.

---------------
...
atapci0: <SiI 3114 SATA150 controller> port 0x8400-0x840f,0x8480-0x8483,0x8800-0
x8807,0x8880-0x8883,0x8c00-0x8c07 mem 0xfe8ffc00-0xfe8fffff irq 17 at device 11.
0 on pci3
pcib1: device atapci0 requested decoded I/O range 0x8400-0x840f
atapci0: [MPSAFE]
pcib1: device atapci0 requested decoded memory range 0xfe8ffc00-0xfe8fffff
ata2: at 0xfe8ffc00 on atapci0
ata2: [MPSAFE]
ata3: reset tp1 mask=01 ostat0=7f ostat1=7f
ata3-master: stat=0x7f err=0x00 lsb=0x00 msb=0x00
...
ata1-master: pio=0x0c wdma=0x22 udma=0xffffffff cable=40pin
ata1-master: setting PIO4 on AMD 8111 chip
acd0: <CRD-8400B/1.02> CDROM drive at ata1 as master
acd0: read 6875KB/s (6875KB/s), 128KB buffer, PIO4
acd0: Reads: CDR, CDRW, CDDA stream, packet
acd0: Writes:
acd0: Audio: play, 255 volume levels
acd0: Mechanism: ejectable tray, unlocked, lock protected
acd0: Medium: no/blank disc
...
------------

Therefore, My system cannot be bootstrapped new ata driver. (root in ad4s1a)

Anyone help me.

SungGON Yi.
skon@kr.FreeBSD.org


From owner-freebsd-amd64@FreeBSD.ORG  Thu Apr  1 06:41:07 2004
Return-Path: <owner-freebsd-amd64@FreeBSD.ORG>
Delivered-To: freebsd-amd64@freebsd.org
Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125])
	by hub.freebsd.org (Postfix) with ESMTP
	id 1D39916A4CE; Thu,  1 Apr 2004 06:41:07 -0800 (PST)
Received: from spider.deepcore.dk
	(cpe.atm2-0-53484.0x50a6c9a6.abnxx9.customer.tele.dk [80.166.201.166])
	by mx1.FreeBSD.org (Postfix) with ESMTP
	id C860143D2D; Thu,  1 Apr 2004 06:41:05 -0800 (PST)
	(envelope-from sos@DeepCore.dk)
Received: from DeepCore.dk (sos.deepcore.dk [194.192.25.130])
	by spider.deepcore.dk (8.12.11/8.12.10) with ESMTP id i31EewAn014073;
	Thu, 1 Apr 2004 16:41:03 +0200 (CEST)
	(envelope-from sos@DeepCore.dk)
Message-ID: <406C29F9.3070705@DeepCore.dk>
Date: Thu, 01 Apr 2004 16:40:57 +0200
From: =?UTF-8?B?U8O4cmVuIFNjaG1pZHQ=?= <sos@DeepCore.dk>
User-Agent: Mozilla Thunderbird 0.5 (X11/20040329)
X-Accept-Language: en-us, en
MIME-Version: 1.0
To: "SungGON Yi." <skon@kr.FreeBSD.org>
References: <007e01c417eb$6691ef90$122aa8c0@skon2>
In-Reply-To: <007e01c417eb$6691ef90$122aa8c0@skon2>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
X-mail-scanned: by DeepCore Virus & Spam killer v1.4
cc: freebsd-current@freebsd.org
cc: freebsd-amd64@freebsd.org
Subject: Re: ATA driver cannot detect the Serial ATA disk in
	FreeBSD/AMD64-Current
X-BeenThere: freebsd-amd64@freebsd.org
X-Mailman-Version: 2.1.1
Precedence: list
List-Id: Porting FreeBSD to the AMD64 platform <freebsd-amd64.freebsd.org>
List-Unsubscribe: <http://lists.freebsd.org/mailman/listinfo/freebsd-amd64>,
	<mailto:freebsd-amd64-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/freebsd-amd64>
List-Post: <mailto:freebsd-amd64@freebsd.org>
List-Help: <mailto:freebsd-amd64-request@freebsd.org?subject=help>
List-Subscribe: <http://lists.freebsd.org/mailman/listinfo/freebsd-amd64>,
	<mailto:freebsd-amd64-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Thu, 01 Apr 2004 14:41:07 -0000

SungGON Yi. wrote:
> My system is consisted in Tyan S2885 opteron dual board and Seagate 7200.1 SATA
> disk with
> FreeBSD/AMD64 5.2-Current.
> 
> Old ata driver could detect the disk. Below the verbose message on bootstrap:

Please try this patch:

Index: ata-pci.c
===================================================================
RCS file: /home/ncvs/src/sys/dev/ata/ata-pci.c,v
retrieving revision 1.77
diff -u -r1.77 ata-pci.c
--- ata-pci.c   17 Mar 2004 17:50:27 -0000      1.77
+++ ata-pci.c   1 Apr 2004 14:40:00 -0000
@@ -546,8 +546,6 @@
      ch->device[MASTER].setmode = ctlr->setmode;
      ch->device[SLAVE].setmode = ctlr->setmode;
      ch->locking = ctlr->locking;
-    if (ch->reset)
-       ch->reset(ch);
      return ata_probe(dev);
  }


-- 
-Søren

From owner-freebsd-amd64@FreeBSD.ORG  Thu Apr  1 08:01:50 2004
Return-Path: <owner-freebsd-amd64@FreeBSD.ORG>
Delivered-To: freebsd-amd64@freebsd.org
Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125])
	by hub.freebsd.org (Postfix) with ESMTP id 18A0816A4CE
	for <freebsd-amd64@freebsd.org>; Thu,  1 Apr 2004 08:01:50 -0800 (PST)
Received: from delivery.infowest.com (delivery.infowest.com [204.17.177.5])
	by mx1.FreeBSD.org (Postfix) with ESMTP id E6DB243D3F
	for <freebsd-amd64@freebsd.org>; Thu,  1 Apr 2004 08:01:49 -0800 (PST)
	(envelope-from butch@infowest.com)
Received: from [10.100.100.240] (zurg.infowest.com [216.190.25.82])
	by delivery.infowest.com (Postfix) with ESMTP id 50181EA9E27;
	Thu,  1 Apr 2004 09:01:49 -0700 (MST)
User-Agent: Microsoft-Entourage/10.1.4.030702.0
Date: Thu, 01 Apr 2004 09:00:54 -0700
From: "Cassidy B. Larson" <butch@infowest.com>
To: alan barrow <alan.barrow@psineteurope.com>,
	"James R. Van Artsalen" <james@jrv.org>
Message-ID: <BC918AC6.2E1BC%butch@infowest.com>
In-Reply-To: <1080819389.2845.62.camel@camdev-01.ops.uk.psi.com>
Mime-version: 1.0
Content-type: text/plain; charset="US-ASCII"
Content-transfer-encoding: 7bit
cc: "freebsd-amd64@freebsd.org" <freebsd-amd64@freebsd.org>
Subject: Re: SMP issues on K8S Pro S2882G3NR
X-BeenThere: freebsd-amd64@freebsd.org
X-Mailman-Version: 2.1.1
Precedence: list
List-Id: Porting FreeBSD to the AMD64 platform <freebsd-amd64.freebsd.org>
List-Unsubscribe: <http://lists.freebsd.org/mailman/listinfo/freebsd-amd64>,
	<mailto:freebsd-amd64-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/freebsd-amd64>
List-Post: <mailto:freebsd-amd64@freebsd.org>
List-Help: <mailto:freebsd-amd64-request@freebsd.org?subject=help>
List-Subscribe: <http://lists.freebsd.org/mailman/listinfo/freebsd-amd64>,
	<mailto:freebsd-amd64-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Thu, 01 Apr 2004 16:01:50 -0000


Tyan's beta 2.0 BIOS with APIC enabled got me up with SMP. Yeah!

I do show these errors in dmesg:

    ACPI-1287: *** Error: Method execution failed
[\\_SB_.PCI0.SBRG.HPET._STA] (Node 0xffffff00008edc00), AE_AML_REGION_LIMIT
    ACPI-0175: *** Error: Method execution failed
[\\_SB_.PCI0.SBRG.HPET._STA] (Node 0xffffff00008edc00), AE_AML_REGION_LIMIT
    ACPI-1287: *** Error: Method execution failed
[\\_SB_.PCI0.SBRG.HPET._STA] (Node 0xffffff00008edc00), AE_AML_REGION_LIMIT
    ACPI-0175: *** Error: Method execution failed
[\\_SB_.PCI0.SBRG.HPET._STA] (Node 0xffffff00008edc00), AE_AML_REGION_LIMIT
    ACPI-1287: *** Error: Method execution failed
[\\_SB_.PCI0.SBRG.HPET._STA] (Node 0xffffff00008edc00), AE_AML_REGION_LIMIT
    ACPI-0175: *** Error: Method execution failed
[\\_SB_.PCI0.SBRG.HPET._STA] (Node 0xffffff00008edc00), AE_AML_REGION_LIMIT


Digging through the list archives, it appears this is normal behavior and
will get minimized if I track -CURRENT.

Am I assuming correctly here?

-c

On 4/1/04 4:36 AM, "alan barrow" <alan.barrow@psineteurope.com> wrote:

> I know...
> 
> So have you tried the 2.0 bios ?
> 
> On Thu, 2004-04-01 at 12:31, James R. Van Artsalen wrote:
>> alan barrow wrote:
>> 
>>> Is this a problem ? turn off APIC ?
>>> 
>>>  
>>> 
>> The APIC is needed for SMP.  The fact that the other system shows no
>> APIC is probably related to the SMP problem.
>> 
> 
> 
> 

From owner-freebsd-amd64@FreeBSD.ORG  Thu Apr  1 16:29:08 2004
Return-Path: <owner-freebsd-amd64@FreeBSD.ORG>
Delivered-To: freebsd-amd64@freebsd.org
Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125])
	by hub.freebsd.org (Postfix) with ESMTP
	id C3A5916A4CE; Thu,  1 Apr 2004 16:29:08 -0800 (PST)
Received: from freebsd-current.sentex.ca (freebsd-current.sentex.ca
	[64.7.128.98])	by mx1.FreeBSD.org (Postfix) with ESMTP
	id 68F8743D2D; Thu,  1 Apr 2004 16:29:08 -0800 (PST)
	(envelope-from tinderbox@freebsd.org)
Received: by freebsd-current.sentex.ca (Postfix, from userid 666)
	id C341B7303A; Thu,  1 Apr 2004 19:29:07 -0500 (EST)
Sender: FreeBSD Tinderbox <tinderbox@freebsd.org>
From: FreeBSD Tinderbox <tinderbox@freebsd.org>
To: FreeBSD Tinderbox <tinderbox@freebsd.org>, <current@freebsd.org>,
	<amd64@freebsd.org>
Precedence: bulk
Message-Id: <20040402002907.C341B7303A@freebsd-current.sentex.ca>
Date: Thu,  1 Apr 2004 19:29:07 -0500 (EST)
Subject: [current tinderbox] failure on amd64/amd64
X-BeenThere: freebsd-amd64@freebsd.org
X-Mailman-Version: 2.1.1
List-Id: Porting FreeBSD to the AMD64 platform <freebsd-amd64.freebsd.org>
List-Unsubscribe: <http://lists.freebsd.org/mailman/listinfo/freebsd-amd64>,
	<mailto:freebsd-amd64-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/freebsd-amd64>
List-Post: <mailto:freebsd-amd64@freebsd.org>
List-Help: <mailto:freebsd-amd64-request@freebsd.org?subject=help>
List-Subscribe: <http://lists.freebsd.org/mailman/listinfo/freebsd-amd64>,
	<mailto:freebsd-amd64-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Fri, 02 Apr 2004 00:29:08 -0000

TB --- 2004-04-01 23:02:02 - tinderbox 2.3 running on freebsd-current.sentex.ca
TB --- 2004-04-01 23:02:02 - starting CURRENT tinderbox run for amd64/amd64
TB --- 2004-04-01 23:02:02 - checking out the source tree
TB --- 2004-04-01 23:02:02 - cd /home/tinderbox/sandbox/CURRENT/amd64/amd64
TB --- 2004-04-01 23:02:02 - /usr/bin/cvs -f -R -q -d/home/ncvs update -Pd -A src
TB --- 2004-04-01 23:08:54 - building world (CFLAGS=-O2 -pipe)
TB --- 2004-04-01 23:08:54 - cd /home/tinderbox/sandbox/CURRENT/amd64/amd64/src
TB --- 2004-04-01 23:08:54 - /usr/bin/make -B buildworld
>>> Rebuilding the temporary build tree
>>> stage 1.1: legacy release compatibility shims
>>> stage 1.2: bootstrap tools
>>> stage 2.1: cleaning up the object tree
>>> stage 2.2: rebuilding the object tree
>>> stage 2.3: build tools
>>> stage 3: cross tools
>>> stage 4.1: building includes
>>> stage 4.2: building libraries
>>> stage 4.3: make dependencies
>>> stage 4.4: building everything
TB --- 2004-04-02 00:16:23 - building generic kernel (COPTFLAGS=-O2 -pipe)
TB --- 2004-04-02 00:16:23 - cd /home/tinderbox/sandbox/CURRENT/amd64/amd64/src
TB --- 2004-04-02 00:16:23 - /usr/bin/make buildkernel KERNCONF=GENERIC
>>> Kernel build for GENERIC started on Fri Apr  2 00:16:23 GMT 2004
>>> stage 1: configuring the kernel
>>> stage 2.1: cleaning up the object tree
>>> stage 2.2: rebuilding the object tree
>>> stage 2.3: build tools
>>> stage 3.1: making dependencies
>>> stage 3.2: building everything
>>> Kernel build for GENERIC completed on Fri Apr  2 00:24:03 GMT 2004
TB --- 2004-04-02 00:24:03 - generating LINT kernel config
TB --- 2004-04-02 00:24:03 - cd /home/tinderbox/sandbox/CURRENT/amd64/amd64/src/sys/amd64/conf
TB --- 2004-04-02 00:24:03 - /usr/bin/make -B LINT
TB --- 2004-04-02 00:24:03 - building LINT kernel (COPTFLAGS=-O2 -pipe)
TB --- 2004-04-02 00:24:03 - cd /home/tinderbox/sandbox/CURRENT/amd64/amd64/src
TB --- 2004-04-02 00:24:03 - /usr/bin/make buildkernel KERNCONF=LINT
>>> Kernel build for LINT started on Fri Apr  2 00:24:03 GMT 2004
>>> stage 1: configuring the kernel
>>> stage 2.1: cleaning up the object tree
>>> stage 2.2: rebuilding the object tree
>>> stage 2.3: build tools
>>> stage 3.1: making dependencies
>>> stage 3.2: building everything
[...]
cc -c -O2 -pipe -fno-strict-aliasing  -Wall -Wredundant-decls -Wnested-externs -Wstrict-prototypes  -Wmissing-prototypes -Wpointer-arith -Winline -Wcast-qual  -fformat-extensions -std=c99  -nostdinc -I-  -I. -I/other/tinderbox/CURRENT/amd64/amd64/src/sys -I/other/tinderbox/CURRENT/amd64/amd64/src/sys/contrib/dev/acpica -I/other/tinderbox/CURRENT/amd64/amd64/src/sys/contrib/ipfilter -I/other/tinderbox/CURRENT/amd64/amd64/src/sys/contrib/pf -I/other/tinderbox/CURRENT/amd64/amd64/src/sys/contrib/dev/ath -I/other/tinderbox/CURRENT/amd64/amd64/src/sys/contrib/dev/ath/freebsd -I/other/tinderbox/CURRENT/amd64/amd64/src/sys/contrib/ngatm -D_KERNEL -include opt_global.h -fno-common -finline-limit=8000 -fno-builtin -fno-omit-frame-pointer -mcmodel=kernel -mno-red-zone  -mfpmath=387 -mno-sse -mno-sse2 -mno-mmx -mno-3dnow  -msoft-float -fno-asynchronous-unwind-tables -ffreestanding -Werror  /other/tinderbox/CURRENT/amd64/amd64/src/sys/dev/syscons/rain/rain_saver.c
cc -c -O2 -pipe -fno-strict-aliasing  -Wall -Wredundant-decls -Wnested-externs -Wstrict-prototypes  -Wmissing-prototypes -Wpointer-arith -Winline -Wcast-qual  -fformat-extensions -std=c99  -nostdinc -I-  -I. -I/other/tinderbox/CURRENT/amd64/amd64/src/sys -I/other/tinderbox/CURRENT/amd64/amd64/src/sys/contrib/dev/acpica -I/other/tinderbox/CURRENT/amd64/amd64/src/sys/contrib/ipfilter -I/other/tinderbox/CURRENT/amd64/amd64/src/sys/contrib/pf -I/other/tinderbox/CURRENT/amd64/amd64/src/sys/contrib/dev/ath -I/other/tinderbox/CURRENT/amd64/amd64/src/sys/contrib/dev/ath/freebsd -I/other/tinderbox/CURRENT/amd64/amd64/src/sys/contrib/ngatm -D_KERNEL -include opt_global.h -fno-common -finline-limit=8000 -fno-builtin -fno-omit-frame-pointer -mcmodel=kernel -mno-red-zone  -mfpmath=387 -mno-sse -mno-sse2 -mno-mmx -mno-3dnow  -msoft-float -fno-asynchronous-unwind-tables -ffreestanding -Werror  /other/tinderbox/CURRENT/amd64/amd64/src/sys/dev/syscons/star/star_saver.c
cc -c -O2 -pipe -fno-strict-aliasing  -Wall -Wredundant-decls -Wnested-externs -Wstrict-prototypes  -Wmissing-prototypes -Wpointer-arith -Winline -Wcast-qual  -fformat-extensions -std=c99  -nostdinc -I-  -I. -I/other/tinderbox/CURRENT/amd64/amd64/src/sys -I/other/tinderbox/CURRENT/amd64/amd64/src/sys/contrib/dev/acpica -I/other/tinderbox/CURRENT/amd64/amd64/src/sys/contrib/ipfilter -I/other/tinderbox/CURRENT/amd64/amd64/src/sys/contrib/pf -I/other/tinderbox/CURRENT/amd64/amd64/src/sys/contrib/dev/ath -I/other/tinderbox/CURRENT/amd64/amd64/src/sys/contrib/dev/ath/freebsd -I/other/tinderbox/CURRENT/amd64/amd64/src/sys/contrib/ngatm -D_KERNEL -include opt_global.h -fno-common -finline-limit=8000 -fno-builtin -fno-omit-frame-pointer -mcmodel=kernel -mno-red-zone  -mfpmath=387 -mno-sse -mno-sse2 -mno-mmx -mno-3dnow  -msoft-float -fno-asynchronous-unwind-tables -ffreestanding -Werror  /other/tinderbox/CURRENT/amd64/amd64/src/sys/dev/syscons/warp/warp_saver.c
cc -c -O2 -pipe -fno-strict-aliasing  -Wall -Wredundant-decls -Wnested-externs -Wstrict-prototypes  -Wmissing-prototypes -Wpointer-arith -Winline -Wcast-qual  -fformat-extensions -std=c99  -nostdinc -I-  -I. -I/other/tinderbox/CURRENT/amd64/amd64/src/sys -I/other/tinderbox/CURRENT/amd64/amd64/src/sys/contrib/dev/acpica -I/other/tinderbox/CURRENT/amd64/amd64/src/sys/contrib/ipfilter -I/other/tinderbox/CURRENT/amd64/amd64/src/sys/contrib/pf -I/other/tinderbox/CURRENT/amd64/amd64/src/sys/contrib/dev/ath -I/other/tinderbox/CURRENT/amd64/amd64/src/sys/contrib/dev/ath/freebsd -I/other/tinderbox/CURRENT/amd64/amd64/src/sys/contrib/ngatm -D_KERNEL -include opt_global.h -fno-common -finline-limit=8000 -fno-builtin -fno-omit-frame-pointer -mcmodel=kernel -mno-red-zone  -mfpmath=387 -mno-sse -mno-sse2 -mno-mmx -mno-3dnow  -msoft-float -fno-asynchronous-unwind-tables -ffreestanding -Werror  /other/tinderbox/CURRENT/amd64/amd64/src/sys/dev/tdfx/tdfx_pci.c
cc -c -O2 -pipe -fno-strict-aliasing  -Wall -Wredundant-decls -Wnested-externs -Wstrict-prototypes  -Wmissing-prototypes -Wpointer-arith -Winline -Wcast-qual  -fformat-extensions -std=c99  -nostdinc -I-  -I. -I/other/tinderbox/CURRENT/amd64/amd64/src/sys -I/other/tinderbox/CURRENT/amd64/amd64/src/sys/contrib/dev/acpica -I/other/tinderbox/CURRENT/amd64/amd64/src/sys/contrib/ipfilter -I/other/tinderbox/CURRENT/amd64/amd64/src/sys/contrib/pf -I/other/tinderbox/CURRENT/amd64/amd64/src/sys/contrib/dev/ath -I/other/tinderbox/CURRENT/amd64/amd64/src/sys/contrib/dev/ath/freebsd -I/other/tinderbox/CURRENT/amd64/amd64/src/sys/contrib/ngatm -D_KERNEL -include opt_global.h -fno-common -finline-limit=8000 -fno-builtin -fno-omit-frame-pointer -mcmodel=kernel -mno-red-zone  -mfpmath=387 -mno-sse -mno-sse2 -mno-mmx -mno-3dnow  -msoft-float -fno-asynchronous-unwind-tables -ffreestanding -Werror  /other/tinderbox/CURRENT/amd64/amd64/src/sys/dev/trm/trm.c
cc -c -O2 -pipe -fno-strict-aliasing  -Wall -Wredundant-decls -Wnested-externs -Wstrict-prototypes  -Wmissing-prototypes -Wpointer-arith -Winline -Wcast-qual  -fformat-extensions -std=c99  -nostdinc -I-  -I. -I/other/tinderbox/CURRENT/amd64/amd64/src/sys -I/other/tinderbox/CURRENT/amd64/amd64/src/sys/contrib/dev/acpica -I/other/tinderbox/CURRENT/amd64/amd64/src/sys/contrib/ipfilter -I/other/tinderbox/CURRENT/amd64/amd64/src/sys/contrib/pf -I/other/tinderbox/CURRENT/amd64/amd64/src/sys/contrib/dev/ath -I/other/tinderbox/CURRENT/amd64/amd64/src/sys/contrib/dev/ath/freebsd -I/other/tinderbox/CURRENT/amd64/amd64/src/sys/contrib/ngatm -D_KERNEL -include opt_global.h -fno-common -finline-limit=8000 -fno-builtin -fno-omit-frame-pointer -mcmodel=kernel -mno-red-zone  -mfpmath=387 -mno-sse -mno-sse2 -mno-mmx -mno-3dnow  -msoft-float -fno-asynchronous-unwind-tables -ffreestanding -Werror  /other/tinderbox/CURRENT/amd64/amd64/src/sys/dev/twa/twa.c
/other/tinderbox/CURRENT/amd64/amd64/src/sys/dev/twa/twa.c: In function `twa_enqueue_aen':
/other/tinderbox/CURRENT/amd64/amd64/src/sys/dev/twa/twa.c:2053: warning: unsigned int format, different type arg (arg 10)
*** Error code 1

Stop in /other/tinderbox/CURRENT/amd64/amd64/obj/amd64/other/tinderbox/CURRENT/amd64/amd64/src/sys/LINT.
*** Error code 1

Stop in /other/tinderbox/CURRENT/amd64/amd64/src.
*** Error code 1

Stop in /other/tinderbox/CURRENT/amd64/amd64/src.
TB --- 2004-04-02 00:29:07 - WARNING: /usr/bin/make returned exit code  1 
TB --- 2004-04-02 00:29:07 - ERROR: failed to build lint kernel
TB --- 2004-04-02 00:29:07 - tinderbox aborted

From owner-freebsd-amd64@FreeBSD.ORG  Thu Apr  1 18:26:59 2004
Return-Path: <owner-freebsd-amd64@FreeBSD.ORG>
Delivered-To: freebsd-amd64@freebsd.org
Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125])
	by hub.freebsd.org (Postfix) with ESMTP id B6D2D16A4CE
	for <freebsd-amd64@freebsd.org>; Thu,  1 Apr 2004 18:26:59 -0800 (PST)
Received: from demos.bsdclusters.com (demos.bsdclusters.com [69.55.225.36])
	by mx1.FreeBSD.org (Postfix) with ESMTP id 8078043D48
	for <freebsd-amd64@freebsd.org>; Thu,  1 Apr 2004 18:26:59 -0800 (PST)
	(envelope-from kmacy@fsmware.com)
Received: from demos.bsdclusters.com (demos [69.55.225.36])
	i322Qq5V029600
	for <freebsd-amd64@freebsd.org>; Thu, 1 Apr 2004 18:26:52 -0800 (PST)
	(envelope-from kmacy@fsmware.com)
Received: from localhost (kmacy@localhost)i322Qq6F029597
	for <freebsd-amd64@freebsd.org>; Thu, 1 Apr 2004 18:26:52 -0800 (PST)
X-Authentication-Warning: demos.bsdclusters.com: kmacy owned process doing -bs
Date: Thu, 1 Apr 2004 18:26:51 -0800 (PST)
From: Kip Macy <kmacy@fsmware.com>
X-X-Sender: kmacy@demos.bsdclusters.com
To: freebsd-amd64@freebsd.org
Message-ID: <20040401182140.A25794@demos.bsdclusters.com>
MIME-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
Subject: How widely used is the port?
X-BeenThere: freebsd-amd64@freebsd.org
X-Mailman-Version: 2.1.1
Precedence: list
List-Id: Porting FreeBSD to the AMD64 platform <freebsd-amd64.freebsd.org>
List-Unsubscribe: <http://lists.freebsd.org/mailman/listinfo/freebsd-amd64>,
	<mailto:freebsd-amd64-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/freebsd-amd64>
List-Post: <mailto:freebsd-amd64@freebsd.org>
List-Help: <mailto:freebsd-amd64-request@freebsd.org?subject=help>
List-Subscribe: <http://lists.freebsd.org/mailman/listinfo/freebsd-amd64>,
	<mailto:freebsd-amd64-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Fri, 02 Apr 2004 02:26:59 -0000

On my laptop 5.2.1 panics with a GPF on boot after install when mounting
ad0s1a. The latest snapshot panics in malloc as result of a use after
free in the CAM subsytem on initial boot.

I've verified that there are no hardware issues (although there are
driver limitations) by successfully installing and running Mandrake 10
and Fedora Core 2.


				-Kip

From owner-freebsd-amd64@FreeBSD.ORG  Thu Apr  1 19:41:05 2004
Return-Path: <owner-freebsd-amd64@FreeBSD.ORG>
Delivered-To: freebsd-amd64@freebsd.org
Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125])
	by hub.freebsd.org (Postfix) with ESMTP
	id 20E0A16A4CF; Thu,  1 Apr 2004 19:41:05 -0800 (PST)
Received: from carver.gumbysoft.com (carver.gumbysoft.com [66.220.23.50])
	by mx1.FreeBSD.org (Postfix) with ESMTP
	id 1A53A43D4C; Thu,  1 Apr 2004 19:41:05 -0800 (PST)
	(envelope-from dwhite@gumbysoft.com)
Received: by carver.gumbysoft.com (Postfix, from userid 1000)
	id 0F31872DF0; Thu,  1 Apr 2004 19:41:05 -0800 (PST)
Received: from localhost (localhost [127.0.0.1])
	by carver.gumbysoft.com (Postfix) with ESMTP
	id 0C32072DCA; Thu,  1 Apr 2004 19:41:05 -0800 (PST)
Date: Thu, 1 Apr 2004 19:41:05 -0800 (PST)
From: Doug White <dwhite@gumbysoft.com>
To: "SungGON Yi." <skon@kr.FreeBSD.org>
In-Reply-To: <007e01c417eb$6691ef90$122aa8c0@skon2>
Message-ID: <20040401194006.S35367@carver.gumbysoft.com>
References: <007e01c417eb$6691ef90$122aa8c0@skon2>
MIME-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
cc: freebsd-current@freebsd.org
cc: freebsd-amd64@freebsd.org
Subject: Re: ATA driver cannot detect the Serial ATA disk in
	FreeBSD/AMD64-Current
X-BeenThere: freebsd-amd64@freebsd.org
X-Mailman-Version: 2.1.1
Precedence: list
List-Id: Porting FreeBSD to the AMD64 platform <freebsd-amd64.freebsd.org>
List-Unsubscribe: <http://lists.freebsd.org/mailman/listinfo/freebsd-amd64>,
	<mailto:freebsd-amd64-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/freebsd-amd64>
List-Post: <mailto:freebsd-amd64@freebsd.org>
List-Help: <mailto:freebsd-amd64-request@freebsd.org?subject=help>
List-Subscribe: <http://lists.freebsd.org/mailman/listinfo/freebsd-amd64>,
	<mailto:freebsd-amd64-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Fri, 02 Apr 2004 03:41:05 -0000

On Thu, 1 Apr 2004, SungGON Yi. wrote:

> ata3: reset tp1 mask=01 ostat0=7f ostat1=7f
> ata3-master: stat=0x7f err=0x00 lsb=0x00 msb=0x00

Hm, this is the 3rd person in my -current mailbox that is sseeing 0x7f in
the registers when it should'nt be there.  Something is coming up with bad
PCI reads ro something...

-- 
Doug White                    |  FreeBSD: The Power to Serve
dwhite@gumbysoft.com          |  www.FreeBSD.org

From owner-freebsd-amd64@FreeBSD.ORG  Fri Apr  2 00:37:33 2004
Return-Path: <owner-freebsd-amd64@FreeBSD.ORG>
Delivered-To: freebsd-amd64@freebsd.org
Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125])
	by hub.freebsd.org (Postfix) with ESMTP id B1A4816A4CE
	for <freebsd-amd64@freebsd.org>; Fri,  2 Apr 2004 00:37:33 -0800 (PST)
Received: from mail.uk.psi.com (mail.uk.psi.com [154.8.2.142])
	by mx1.FreeBSD.org (Postfix) with ESMTP id 58D9D43D1D
	for <freebsd-amd64@freebsd.org>; Fri,  2 Apr 2004 00:37:33 -0800 (PST)
	(envelope-from alan.barrow@psineteurope.com)
Received: from camdev-01.ops.uk.psi.com ([154.8.22.17])
	by mail.uk.psi.com with esmtp (Exim 3.33 #1)
	id 1B9KB5-0002B6-00; Fri, 02 Apr 2004 09:37:27 +0100
From: alan barrow <alan.barrow@psineteurope.com>
To: "Cassidy B. Larson" <butch@infowest.com>
In-Reply-To: <BC918AC6.2E1BC%butch@infowest.com>
References: <BC918AC6.2E1BC%butch@infowest.com>
Content-Type: text/plain
Content-Transfer-Encoding: 7bit
X-Mailer: Ximian Evolution 1.0.8 (1.0.8-9.7x.1) 
Date: 02 Apr 2004 09:37:27 +0100
Message-Id: <1080895047.28221.1.camel@camdev-01.ops.uk.psi.com>
Mime-Version: 1.0
cc: "James R. Van Artsalen" <james@jrv.org>
cc: "freebsd-amd64@freebsd.org" <freebsd-amd64@freebsd.org>
Subject: Re: SMP issues on K8S Pro S2882G3NR
X-BeenThere: freebsd-amd64@freebsd.org
X-Mailman-Version: 2.1.1
Precedence: list
List-Id: Porting FreeBSD to the AMD64 platform <freebsd-amd64.freebsd.org>
List-Unsubscribe: <http://lists.freebsd.org/mailman/listinfo/freebsd-amd64>,
	<mailto:freebsd-amd64-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/freebsd-amd64>
List-Post: <mailto:freebsd-amd64@freebsd.org>
List-Help: <mailto:freebsd-amd64-request@freebsd.org?subject=help>
List-Subscribe: <http://lists.freebsd.org/mailman/listinfo/freebsd-amd64>,
	<mailto:freebsd-amd64-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Fri, 02 Apr 2004 08:37:33 -0000

Horrrayyyyyyyyyyyyy


Yes.... Nice.... (I enjoy peoples victories in the morning)

I think your assumption is correct, I will check with tyan uk this
afternoon on it though, but I think your on a roll dude :)

yours a.r.b.


On Thu, 2004-04-01 at 17:00, Cassidy B. Larson wrote:
> 
> Tyan's beta 2.0 BIOS with APIC enabled got me up with SMP. Yeah!
> 
> I do show these errors in dmesg:
> 
>     ACPI-1287: *** Error: Method execution failed
> [\\_SB_.PCI0.SBRG.HPET._STA] (Node 0xffffff00008edc00), AE_AML_REGION_LIMIT
>     ACPI-0175: *** Error: Method execution failed
> [\\_SB_.PCI0.SBRG.HPET._STA] (Node 0xffffff00008edc00), AE_AML_REGION_LIMIT
>     ACPI-1287: *** Error: Method execution failed
> [\\_SB_.PCI0.SBRG.HPET._STA] (Node 0xffffff00008edc00), AE_AML_REGION_LIMIT
>     ACPI-0175: *** Error: Method execution failed
> [\\_SB_.PCI0.SBRG.HPET._STA] (Node 0xffffff00008edc00), AE_AML_REGION_LIMIT
>     ACPI-1287: *** Error: Method execution failed
> [\\_SB_.PCI0.SBRG.HPET._STA] (Node 0xffffff00008edc00), AE_AML_REGION_LIMIT
>     ACPI-0175: *** Error: Method execution failed
> [\\_SB_.PCI0.SBRG.HPET._STA] (Node 0xffffff00008edc00), AE_AML_REGION_LIMIT
> 
> 
> Digging through the list archives, it appears this is normal behavior and
> will get minimized if I track -CURRENT.
> 
> Am I assuming correctly here?
> 
> -c
> 
> On 4/1/04 4:36 AM, "alan barrow" <alan.barrow@psineteurope.com> wrote:
> 
> > I know...
> > 
> > So have you tried the 2.0 bios ?
> > 
> > On Thu, 2004-04-01 at 12:31, James R. Van Artsalen wrote:
> >> alan barrow wrote:
> >> 
> >>> Is this a problem ? turn off APIC ?
> >>> 
> >>>  
> >>> 
> >> The APIC is needed for SMP.  The fact that the other system shows no
> >> APIC is probably related to the SMP problem.
> >> 
> > 
> > 
> > 
> 
> 


From owner-freebsd-amd64@FreeBSD.ORG  Fri Apr  2 01:20:48 2004
Return-Path: <owner-freebsd-amd64@FreeBSD.ORG>
Delivered-To: freebsd-amd64@freebsd.org
Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125])
	by hub.freebsd.org (Postfix) with ESMTP id BF5C416A4CE
	for <freebsd-amd64@freebsd.org>; Fri,  2 Apr 2004 01:20:48 -0800 (PST)
Received: from dogfood.jrv.org (rrcs-sw-24-73-246-106.biz.rr.com
	[24.73.246.106])
	by mx1.FreeBSD.org (Postfix) with ESMTP id 3279643D3F
	for <freebsd-amd64@freebsd.org>;
	Fri,  2 Apr 2004 01:20:48 -0800 (PST)	(envelope-from james@jrv.org)
Received: from jrv.org (zippy.jrv.org [192.168.3.156])
	(authenticated bits=0)
	by dogfood.jrv.org (8.12.11/8.12.10) with ESMTP id i329KkT0089625
	(version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO);
	Fri, 2 Apr 2004 03:20:46 -0600 (CST)
	(envelope-from james@jrv.org)
Message-ID: <406D306E.6090509@jrv.org>
Date: Fri, 02 Apr 2004 03:20:46 -0600
From: "James R. Van Artsalen" <james@jrv.org>
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US;
	rv:1.6) Gecko/20040113
X-Accept-Language: en-us, en
MIME-Version: 1.0
To: Peter_Losher@isc.org
References: <20040331074508.M42491@farside.isc.org>
	<200403310028.02495.peter@wemm.org>
In-Reply-To: <200403310028.02495.peter@wemm.org>
Content-Type: multipart/mixed;
 boundary="------------090009030007010109050409"
cc: freebsd-amd64@freebsd.org
Subject: Re: mod_perl2 and libperl.a and -fPIC...
X-BeenThere: freebsd-amd64@freebsd.org
X-Mailman-Version: 2.1.1
Precedence: list
List-Id: Porting FreeBSD to the AMD64 platform <freebsd-amd64.freebsd.org>
List-Unsubscribe: <http://lists.freebsd.org/mailman/listinfo/freebsd-amd64>,
	<mailto:freebsd-amd64-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/freebsd-amd64>
List-Post: <mailto:freebsd-amd64@freebsd.org>
List-Help: <mailto:freebsd-amd64-request@freebsd.org?subject=help>
List-Subscribe: <http://lists.freebsd.org/mailman/listinfo/freebsd-amd64>,
	<mailto:freebsd-amd64-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Fri, 02 Apr 2004 09:20:48 -0000

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

Peter Wemm wrote:

>Yeah, the perl5.6.1 port doesn't build a shared object, so it can't be 
>embedded inside another shared object.
>
>However, the perl5.8 port does have shared object support enabled.
>
>Don't ask me why 5.6.1 doesn't do it though. :-)
>  
>

Attached is a quick patch to get ports/land/perl5 to build libperl.so, 
needed by many things.

patch -d /usr/ports < pat.perl

after every cvsup against ports (cvsup ports will undo the patch).

How far back has FreeBSD support shared libs? This patch blind says 
4*|5* build libperl.so and everything else builds libperl.a

Grrr - I just realized this no longer builds libperl.a.  Oh well, maybe 
someone might find it useful.

--------------090009030007010109050409
Content-Type: text/plain;
 name="pat.perl"
Content-Transfer-Encoding: 7bit
Content-Disposition: inline;
 filename="pat.perl"

--- lang/perl5/files/patch-af.~1~	Fri Nov  1 08:43:46 2002
+++ lang/perl5/files/patch-af	Fri Apr  2 02:28:03 2004
@@ -1,8 +1,6 @@
-$FreeBSD: ports/lang/perl5/files/patch-af,v 1.4 2002/11/01 14:43:46 tobez Exp $
-
---- Configure.orig	Mon Mar 19 04:03:33 2001
-+++ Configure	Fri Nov  1 14:58:06 2002
-@@ -296,7 +296,7 @@ cppflags=''
+--- Configure.orig	Sun Mar 18 21:03:33 2001
++++ Configure	Fri Apr  2 02:27:20 2004
+@@ -296,7 +296,7 @@
  ldflags=''
  lkflags=''
  locincpth=''
@@ -11,7 +9,22 @@
  cf_email=''
  cf_by=''
  cf_time=''
-@@ -14940,7 +14940,7 @@ for i in \`$cc -v -c tmp.c 2>&1 $postpro
+@@ -6672,6 +6672,14 @@
+ 				;;
+ 			esac
+ 			;;
++		freebsd)
++			case "$osvers" in
++			4*|5*)	dflt=y
++				;;
++			*)	dflt=n
++				;;
++			esac
++			;;
+ 		*)	dflt=n
+ 			;;
+ 		esac
+@@ -14940,7 +14948,7 @@
  do
  	case "\$i" in
  	-D*) echo "\$i" | $sed 's/^-D//';;

--------------090009030007010109050409--

From owner-freebsd-amd64@FreeBSD.ORG  Fri Apr  2 04:51:04 2004
Return-Path: <owner-freebsd-amd64@FreeBSD.ORG>
Delivered-To: freebsd-amd64@freebsd.org
Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125])
	by hub.freebsd.org (Postfix) with ESMTP
	id AC80116A4CE; Fri,  2 Apr 2004 04:51:04 -0800 (PST)
Received: from freebsd-current.sentex.ca (freebsd-current.sentex.ca
	[64.7.128.98])	by mx1.FreeBSD.org (Postfix) with ESMTP
	id 5215E43D1D; Fri,  2 Apr 2004 04:51:04 -0800 (PST)
	(envelope-from tinderbox@freebsd.org)
Received: by freebsd-current.sentex.ca (Postfix, from userid 666)
	id C79097303A; Fri,  2 Apr 2004 07:51:03 -0500 (EST)
Sender: FreeBSD Tinderbox <tinderbox@freebsd.org>
From: FreeBSD Tinderbox <tinderbox@freebsd.org>
To: FreeBSD Tinderbox <tinderbox@freebsd.org>, <current@freebsd.org>,
	<amd64@freebsd.org>
Precedence: bulk
Message-Id: <20040402125103.C79097303A@freebsd-current.sentex.ca>
Date: Fri,  2 Apr 2004 07:51:03 -0500 (EST)
Subject: [current tinderbox] failure on amd64/amd64
X-BeenThere: freebsd-amd64@freebsd.org
X-Mailman-Version: 2.1.1
List-Id: Porting FreeBSD to the AMD64 platform <freebsd-amd64.freebsd.org>
List-Unsubscribe: <http://lists.freebsd.org/mailman/listinfo/freebsd-amd64>,
	<mailto:freebsd-amd64-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/freebsd-amd64>
List-Post: <mailto:freebsd-amd64@freebsd.org>
List-Help: <mailto:freebsd-amd64-request@freebsd.org?subject=help>
List-Subscribe: <http://lists.freebsd.org/mailman/listinfo/freebsd-amd64>,
	<mailto:freebsd-amd64-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Fri, 02 Apr 2004 12:51:04 -0000

TB --- 2004-04-02 11:02:58 - tinderbox 2.3 running on freebsd-current.sentex.ca
TB --- 2004-04-02 11:02:58 - starting CURRENT tinderbox run for amd64/amd64
TB --- 2004-04-02 11:02:58 - checking out the source tree
TB --- 2004-04-02 11:02:58 - cd /home/tinderbox/sandbox/CURRENT/amd64/amd64
TB --- 2004-04-02 11:02:58 - /usr/bin/cvs -f -R -q -d/home/ncvs update -Pd -A src
TB --- 2004-04-02 11:10:20 - building world (CFLAGS=-O2 -pipe)
TB --- 2004-04-02 11:10:20 - cd /home/tinderbox/sandbox/CURRENT/amd64/amd64/src
TB --- 2004-04-02 11:10:20 - /usr/bin/make -B buildworld
>>> Rebuilding the temporary build tree
>>> stage 1.1: legacy release compatibility shims
>>> stage 1.2: bootstrap tools
>>> stage 2.1: cleaning up the object tree
>>> stage 2.2: rebuilding the object tree
>>> stage 2.3: build tools
>>> stage 3: cross tools
>>> stage 4.1: building includes
>>> stage 4.2: building libraries
>>> stage 4.3: make dependencies
>>> stage 4.4: building everything
TB --- 2004-04-02 12:36:10 - building generic kernel (COPTFLAGS=-O2 -pipe)
TB --- 2004-04-02 12:36:10 - cd /home/tinderbox/sandbox/CURRENT/amd64/amd64/src
TB --- 2004-04-02 12:36:10 - /usr/bin/make buildkernel KERNCONF=GENERIC
>>> Kernel build for GENERIC started on Fri Apr  2 12:36:10 GMT 2004
>>> stage 1: configuring the kernel
>>> stage 2.1: cleaning up the object tree
>>> stage 2.2: rebuilding the object tree
>>> stage 2.3: build tools
>>> stage 3.1: making dependencies
>>> stage 3.2: building everything
>>> Kernel build for GENERIC completed on Fri Apr  2 12:45:14 GMT 2004
TB --- 2004-04-02 12:45:14 - generating LINT kernel config
TB --- 2004-04-02 12:45:14 - cd /home/tinderbox/sandbox/CURRENT/amd64/amd64/src/sys/amd64/conf
TB --- 2004-04-02 12:45:14 - /usr/bin/make -B LINT
TB --- 2004-04-02 12:45:14 - building LINT kernel (COPTFLAGS=-O2 -pipe)
TB --- 2004-04-02 12:45:14 - cd /home/tinderbox/sandbox/CURRENT/amd64/amd64/src
TB --- 2004-04-02 12:45:14 - /usr/bin/make buildkernel KERNCONF=LINT
>>> Kernel build for LINT started on Fri Apr  2 12:45:14 GMT 2004
>>> stage 1: configuring the kernel
>>> stage 2.1: cleaning up the object tree
>>> stage 2.2: rebuilding the object tree
>>> stage 2.3: build tools
>>> stage 3.1: making dependencies
>>> stage 3.2: building everything
[...]
cc -c -O2 -pipe -fno-strict-aliasing  -Wall -Wredundant-decls -Wnested-externs -Wstrict-prototypes  -Wmissing-prototypes -Wpointer-arith -Winline -Wcast-qual  -fformat-extensions -std=c99  -nostdinc -I-  -I. -I/other/tinderbox/CURRENT/amd64/amd64/src/sys -I/other/tinderbox/CURRENT/amd64/amd64/src/sys/contrib/dev/acpica -I/other/tinderbox/CURRENT/amd64/amd64/src/sys/contrib/ipfilter -I/other/tinderbox/CURRENT/amd64/amd64/src/sys/contrib/pf -I/other/tinderbox/CURRENT/amd64/amd64/src/sys/contrib/dev/ath -I/other/tinderbox/CURRENT/amd64/amd64/src/sys/contrib/dev/ath/freebsd -I/other/tinderbox/CURRENT/amd64/amd64/src/sys/contrib/ngatm -D_KERNEL -include opt_global.h -fno-common -finline-limit=8000 -fno-builtin -fno-omit-frame-pointer -mcmodel=kernel -mno-red-zone  -mfpmath=387 -mno-sse -mno-sse2 -mno-mmx -mno-3dnow  -msoft-float -fno-asynchronous-unwind-tables -ffreestanding -Werror  /other/tinderbox/CURRENT/amd64/amd64/src/sys/dev/syscons/rain/rain_saver.c
cc -c -O2 -pipe -fno-strict-aliasing  -Wall -Wredundant-decls -Wnested-externs -Wstrict-prototypes  -Wmissing-prototypes -Wpointer-arith -Winline -Wcast-qual  -fformat-extensions -std=c99  -nostdinc -I-  -I. -I/other/tinderbox/CURRENT/amd64/amd64/src/sys -I/other/tinderbox/CURRENT/amd64/amd64/src/sys/contrib/dev/acpica -I/other/tinderbox/CURRENT/amd64/amd64/src/sys/contrib/ipfilter -I/other/tinderbox/CURRENT/amd64/amd64/src/sys/contrib/pf -I/other/tinderbox/CURRENT/amd64/amd64/src/sys/contrib/dev/ath -I/other/tinderbox/CURRENT/amd64/amd64/src/sys/contrib/dev/ath/freebsd -I/other/tinderbox/CURRENT/amd64/amd64/src/sys/contrib/ngatm -D_KERNEL -include opt_global.h -fno-common -finline-limit=8000 -fno-builtin -fno-omit-frame-pointer -mcmodel=kernel -mno-red-zone  -mfpmath=387 -mno-sse -mno-sse2 -mno-mmx -mno-3dnow  -msoft-float -fno-asynchronous-unwind-tables -ffreestanding -Werror  /other/tinderbox/CURRENT/amd64/amd64/src/sys/dev/syscons/star/star_saver.c
cc -c -O2 -pipe -fno-strict-aliasing  -Wall -Wredundant-decls -Wnested-externs -Wstrict-prototypes  -Wmissing-prototypes -Wpointer-arith -Winline -Wcast-qual  -fformat-extensions -std=c99  -nostdinc -I-  -I. -I/other/tinderbox/CURRENT/amd64/amd64/src/sys -I/other/tinderbox/CURRENT/amd64/amd64/src/sys/contrib/dev/acpica -I/other/tinderbox/CURRENT/amd64/amd64/src/sys/contrib/ipfilter -I/other/tinderbox/CURRENT/amd64/amd64/src/sys/contrib/pf -I/other/tinderbox/CURRENT/amd64/amd64/src/sys/contrib/dev/ath -I/other/tinderbox/CURRENT/amd64/amd64/src/sys/contrib/dev/ath/freebsd -I/other/tinderbox/CURRENT/amd64/amd64/src/sys/contrib/ngatm -D_KERNEL -include opt_global.h -fno-common -finline-limit=8000 -fno-builtin -fno-omit-frame-pointer -mcmodel=kernel -mno-red-zone  -mfpmath=387 -mno-sse -mno-sse2 -mno-mmx -mno-3dnow  -msoft-float -fno-asynchronous-unwind-tables -ffreestanding -Werror  /other/tinderbox/CURRENT/amd64/amd64/src/sys/dev/syscons/warp/warp_saver.c
cc -c -O2 -pipe -fno-strict-aliasing  -Wall -Wredundant-decls -Wnested-externs -Wstrict-prototypes  -Wmissing-prototypes -Wpointer-arith -Winline -Wcast-qual  -fformat-extensions -std=c99  -nostdinc -I-  -I. -I/other/tinderbox/CURRENT/amd64/amd64/src/sys -I/other/tinderbox/CURRENT/amd64/amd64/src/sys/contrib/dev/acpica -I/other/tinderbox/CURRENT/amd64/amd64/src/sys/contrib/ipfilter -I/other/tinderbox/CURRENT/amd64/amd64/src/sys/contrib/pf -I/other/tinderbox/CURRENT/amd64/amd64/src/sys/contrib/dev/ath -I/other/tinderbox/CURRENT/amd64/amd64/src/sys/contrib/dev/ath/freebsd -I/other/tinderbox/CURRENT/amd64/amd64/src/sys/contrib/ngatm -D_KERNEL -include opt_global.h -fno-common -finline-limit=8000 -fno-builtin -fno-omit-frame-pointer -mcmodel=kernel -mno-red-zone  -mfpmath=387 -mno-sse -mno-sse2 -mno-mmx -mno-3dnow  -msoft-float -fno-asynchronous-unwind-tables -ffreestanding -Werror  /other/tinderbox/CURRENT/amd64/amd64/src/sys/dev/tdfx/tdfx_pci.c
cc -c -O2 -pipe -fno-strict-aliasing  -Wall -Wredundant-decls -Wnested-externs -Wstrict-prototypes  -Wmissing-prototypes -Wpointer-arith -Winline -Wcast-qual  -fformat-extensions -std=c99  -nostdinc -I-  -I. -I/other/tinderbox/CURRENT/amd64/amd64/src/sys -I/other/tinderbox/CURRENT/amd64/amd64/src/sys/contrib/dev/acpica -I/other/tinderbox/CURRENT/amd64/amd64/src/sys/contrib/ipfilter -I/other/tinderbox/CURRENT/amd64/amd64/src/sys/contrib/pf -I/other/tinderbox/CURRENT/amd64/amd64/src/sys/contrib/dev/ath -I/other/tinderbox/CURRENT/amd64/amd64/src/sys/contrib/dev/ath/freebsd -I/other/tinderbox/CURRENT/amd64/amd64/src/sys/contrib/ngatm -D_KERNEL -include opt_global.h -fno-common -finline-limit=8000 -fno-builtin -fno-omit-frame-pointer -mcmodel=kernel -mno-red-zone  -mfpmath=387 -mno-sse -mno-sse2 -mno-mmx -mno-3dnow  -msoft-float -fno-asynchronous-unwind-tables -ffreestanding -Werror  /other/tinderbox/CURRENT/amd64/amd64/src/sys/dev/trm/trm.c
cc -c -O2 -pipe -fno-strict-aliasing  -Wall -Wredundant-decls -Wnested-externs -Wstrict-prototypes  -Wmissing-prototypes -Wpointer-arith -Winline -Wcast-qual  -fformat-extensions -std=c99  -nostdinc -I-  -I. -I/other/tinderbox/CURRENT/amd64/amd64/src/sys -I/other/tinderbox/CURRENT/amd64/amd64/src/sys/contrib/dev/acpica -I/other/tinderbox/CURRENT/amd64/amd64/src/sys/contrib/ipfilter -I/other/tinderbox/CURRENT/amd64/amd64/src/sys/contrib/pf -I/other/tinderbox/CURRENT/amd64/amd64/src/sys/contrib/dev/ath -I/other/tinderbox/CURRENT/amd64/amd64/src/sys/contrib/dev/ath/freebsd -I/other/tinderbox/CURRENT/amd64/amd64/src/sys/contrib/ngatm -D_KERNEL -include opt_global.h -fno-common -finline-limit=8000 -fno-builtin -fno-omit-frame-pointer -mcmodel=kernel -mno-red-zone  -mfpmath=387 -mno-sse -mno-sse2 -mno-mmx -mno-3dnow  -msoft-float -fno-asynchronous-unwind-tables -ffreestanding -Werror  /other/tinderbox/CURRENT/amd64/amd64/src/sys/dev/twa/twa.c
/other/tinderbox/CURRENT/amd64/amd64/src/sys/dev/twa/twa.c: In function `twa_enqueue_aen':
/other/tinderbox/CURRENT/amd64/amd64/src/sys/dev/twa/twa.c:2053: warning: unsigned int format, different type arg (arg 10)
*** Error code 1

Stop in /other/tinderbox/CURRENT/amd64/amd64/obj/amd64/other/tinderbox/CURRENT/amd64/amd64/src/sys/LINT.
*** Error code 1

Stop in /other/tinderbox/CURRENT/amd64/amd64/src.
*** Error code 1

Stop in /other/tinderbox/CURRENT/amd64/amd64/src.
TB --- 2004-04-02 12:51:03 - WARNING: /usr/bin/make returned exit code  1 
TB --- 2004-04-02 12:51:03 - ERROR: failed to build lint kernel
TB --- 2004-04-02 12:51:03 - tinderbox aborted

From owner-freebsd-amd64@FreeBSD.ORG  Fri Apr  2 09:12:59 2004
Return-Path: <owner-freebsd-amd64@FreeBSD.ORG>
Delivered-To: freebsd-amd64@freebsd.org
Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125])
	by hub.freebsd.org (Postfix) with ESMTP id D954B16A4DB
	for <freebsd-amd64@freebsd.org>; Fri,  2 Apr 2004 09:12:59 -0800 (PST)
Received: from delivery.infowest.com (delivery.infowest.com [204.17.177.5])
	by mx1.FreeBSD.org (Postfix) with ESMTP id 83BB743D46
	for <freebsd-amd64@freebsd.org>; Fri,  2 Apr 2004 09:12:59 -0800 (PST)
	(envelope-from butch@infowest.com)
Received: from [10.0.1.2] (montehacho.kmpanilla.com [208.186.104.165])
	by delivery.infowest.com (Postfix) with ESMTP id C98E2EBC503;
	Fri,  2 Apr 2004 10:12:58 -0700 (MST)
User-Agent: Microsoft-Entourage/10.1.4.030702.0
Date: Fri, 02 Apr 2004 10:12:04 -0700
From: "Cassidy B. Larson" <butch@infowest.com>
To: alan barrow <alan.barrow@psineteurope.com>,
	"freebsd-amd64@freebsd.org" <freebsd-amd64@freebsd.org>
Message-ID: <BC92ECF4.2E2E3%butch@infowest.com>
In-Reply-To: <1080895047.28221.1.camel@camdev-01.ops.uk.psi.com>
Mime-version: 1.0
Content-type: text/plain; charset="US-ASCII"
Content-transfer-encoding: 7bit
Subject: Re: SMP issues on K8S Pro S2882G3NR
X-BeenThere: freebsd-amd64@freebsd.org
X-Mailman-Version: 2.1.1
Precedence: list
List-Id: Porting FreeBSD to the AMD64 platform <freebsd-amd64.freebsd.org>
List-Unsubscribe: <http://lists.freebsd.org/mailman/listinfo/freebsd-amd64>,
	<mailto:freebsd-amd64-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/freebsd-amd64>
List-Post: <mailto:freebsd-amd64@freebsd.org>
List-Help: <mailto:freebsd-amd64-request@freebsd.org?subject=help>
List-Subscribe: <http://lists.freebsd.org/mailman/listinfo/freebsd-amd64>,
	<mailto:freebsd-amd64-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Fri, 02 Apr 2004 17:13:00 -0000

One more question I had.

What's the typical temperature of two 246 opterons?  We have it in a 1U box
with fans and ventilation galore, but when I push the box for more then 20
seconds with 0 CPU free, it freezes.  A quick power cycle into the BIOS
details that I'm running at over 95 degrees centigrade.  Letting it cool
down will let me run my CPU test another 2-3 times then freezes again.

I looked through the Tyan manual and found nothing of the halt temperature,
nor AMD's site.

If needs be I may send this back and get a 2U case with better cooling.
Argh. 

-c


On 4/2/04 1:37 AM, "alan barrow" <alan.barrow@psineteurope.com> wrote:

> Horrrayyyyyyyyyyyyy
> 
> 
> Yes.... Nice.... (I enjoy peoples victories in the morning)
> 
> I think your assumption is correct, I will check with tyan uk this
> afternoon on it though, but I think your on a roll dude :)
> 
> yours a.r.b.
> 

From owner-freebsd-amd64@FreeBSD.ORG  Fri Apr  2 10:29:15 2004
Return-Path: <owner-freebsd-amd64@FreeBSD.ORG>
Delivered-To: freebsd-amd64@freebsd.org
Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125])
	by hub.freebsd.org (Postfix) with ESMTP id 031AB16A4CE
	for <freebsd-amd64@freebsd.org>; Fri,  2 Apr 2004 10:29:15 -0800 (PST)
Received: from odin.ac.hmc.edu (Odin.AC.HMC.Edu [134.173.32.75])
	by mx1.FreeBSD.org (Postfix) with ESMTP id DC40243D2D
	for <freebsd-amd64@freebsd.org>; Fri,  2 Apr 2004 10:29:14 -0800 (PST)
	(envelope-from brdavis@odin.ac.hmc.edu)
Received: from odin.ac.hmc.edu (IDENT:brdavis@localhost.localdomain
	[127.0.0.1])
	by odin.ac.hmc.edu (8.12.10/8.12.3) with ESMTP id i32IT5QF006786;
	Fri, 2 Apr 2004 10:29:05 -0800
Received: (from brdavis@localhost)
	by odin.ac.hmc.edu (8.12.10/8.12.3/Submit) id i32IT5iR006784;
	Fri, 2 Apr 2004 10:29:05 -0800
Date: Fri, 2 Apr 2004 10:29:05 -0800
From: Brooks Davis <brooks@one-eyed-alien.net>
To: Kip Macy <kmacy@fsmware.com>
Message-ID: <20040402182903.GB11637@Odin.AC.HMC.Edu>
References: <20040401182140.A25794@demos.bsdclusters.com>
Mime-Version: 1.0
Content-Type: multipart/signed; micalg=pgp-sha1;
	protocol="application/pgp-signature"; boundary="qcHopEYAB45HaUaB"
Content-Disposition: inline
In-Reply-To: <20040401182140.A25794@demos.bsdclusters.com>
User-Agent: Mutt/1.5.4i
X-Virus-Scanned: by amavisd-milter (http://amavis.org/) on odin.ac.hmc.edu
cc: freebsd-amd64@freebsd.org
Subject: Re: How widely used is the port?
X-BeenThere: freebsd-amd64@freebsd.org
X-Mailman-Version: 2.1.1
Precedence: list
List-Id: Porting FreeBSD to the AMD64 platform <freebsd-amd64.freebsd.org>
List-Unsubscribe: <http://lists.freebsd.org/mailman/listinfo/freebsd-amd64>,
	<mailto:freebsd-amd64-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/freebsd-amd64>
List-Post: <mailto:freebsd-amd64@freebsd.org>
List-Help: <mailto:freebsd-amd64-request@freebsd.org?subject=help>
List-Subscribe: <http://lists.freebsd.org/mailman/listinfo/freebsd-amd64>,
	<mailto:freebsd-amd64-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Fri, 02 Apr 2004 18:29:15 -0000


--qcHopEYAB45HaUaB
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

On Thu, Apr 01, 2004 at 06:26:51PM -0800, Kip Macy wrote:
> On my laptop 5.2.1 panics with a GPF on boot after install when mounting
> ad0s1a. The latest snapshot panics in malloc as result of a use after
> free in the CAM subsytem on initial boot.
>=20
> I've verified that there are no hardware issues (although there are
> driver limitations) by successfully installing and running Mandrake 10
> and Fedora Core 2.

I've got a couple that work fine here.  One of them is a primary
development system and I've never had problems with it.

What's your hardware?  Have you tried disabling ACPI?

-- Brooks

--=20
Any statement of the form "X is the one, true Y" is FALSE.
PGP fingerprint 655D 519C 26A7 82E7 2529  9BF0 5D8E 8BE9 F238 1AD4

--qcHopEYAB45HaUaB
Content-Type: application/pgp-signature
Content-Disposition: inline

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.1 (GNU/Linux)

iD8DBQFAbbDuXY6L6fI4GtQRAsu0AJ9IohKXJ0hfafTjvzKP1NMQfAbgwgCfT644
9gBuc09AzZVrKJHiL99DwC0=
=v1Io
-----END PGP SIGNATURE-----

--qcHopEYAB45HaUaB--

From owner-freebsd-amd64@FreeBSD.ORG  Fri Apr  2 11:06:05 2004
Return-Path: <owner-freebsd-amd64@FreeBSD.ORG>
Delivered-To: freebsd-amd64@freebsd.org
Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125])
	by hub.freebsd.org (Postfix) with ESMTP id F41B416A4CF
	for <freebsd-amd64@freebsd.org>; Fri,  2 Apr 2004 11:06:04 -0800 (PST)
Received: from mail.sandvine.com (sandvine.com [199.243.201.138])
	by mx1.FreeBSD.org (Postfix) with ESMTP id A533743D1D
	for <freebsd-amd64@freebsd.org>; Fri,  2 Apr 2004 11:06:04 -0800 (PST)
	(envelope-from don@sandvine.com)
Received: by mail.sandvine.com with Internet Mail Service (5.5.2657.72)
	id <HVCVRK0F>; Fri, 2 Apr 2004 14:06:03 -0500
Message-ID: <FE045D4D9F7AED4CBFF1B3B813C85337045D8861@mail.sandvine.com>
From: Don Bowman <don@sandvine.com>
To: "'Cassidy B. Larson'" <butch@infowest.com>,
	alan barrow <alan.barrow@psineteurope.com>, freebsd-amd64@freebsd.org
Date: Fri, 2 Apr 2004 14:06:02 -0500 
MIME-Version: 1.0
X-Mailer: Internet Mail Service (5.5.2657.72)
Content-Type: text/plain;
	charset="iso-8859-1"
Subject: RE: SMP issues on K8S Pro S2882G3NR
X-BeenThere: freebsd-amd64@freebsd.org
X-Mailman-Version: 2.1.1
Precedence: list
List-Id: Porting FreeBSD to the AMD64 platform <freebsd-amd64.freebsd.org>
List-Unsubscribe: <http://lists.freebsd.org/mailman/listinfo/freebsd-amd64>,
	<mailto:freebsd-amd64-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/freebsd-amd64>
List-Post: <mailto:freebsd-amd64@freebsd.org>
List-Help: <mailto:freebsd-amd64-request@freebsd.org?subject=help>
List-Subscribe: <http://lists.freebsd.org/mailman/listinfo/freebsd-amd64>,
	<mailto:freebsd-amd64-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Fri, 02 Apr 2004 19:06:05 -0000

From: Cassidy B. Larson [mailto:butch@infowest.com]
> One more question I had.
> 
> What's the typical temperature of two 246 opterons?  We have 
> it in a 1U box
> with fans and ventilation galore, but when I push the box for 
> more then 20
> seconds with 0 CPU free, it freezes.  A quick power cycle 
> into the BIOS
> details that I'm running at over 95 degrees centigrade.  
> Letting it cool
> down will let me run my CPU test another 2-3 times then freezes again.
> 
> I looked through the Tyan manual and found nothing of the 
> halt temperature,
> nor AMD's site.
> 
> If needs be I may send this back and get a 2U case with 
> better cooling.
> Argh. 

Make sure your air flow is forced over the CPU. Air takes
the path of least resistance, so e.g. opening the top
of the case will make the air escape. The fans should
be ducted to go directly over the heat sink, there will
be foam or something to make this happen. Operate with the
case closed.

run e.g. lmmon to see your temperatures. I don't know
how to do this with amd, with intel xeon, there is on
chip sensor on smb.

From owner-freebsd-amd64@FreeBSD.ORG  Fri Apr  2 11:55:31 2004
Return-Path: <owner-freebsd-amd64@FreeBSD.ORG>
Delivered-To: freebsd-amd64@freebsd.org
Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125])
	by hub.freebsd.org (Postfix) with ESMTP id 39C7216A4D6
	for <freebsd-amd64@freebsd.org>; Fri,  2 Apr 2004 11:55:31 -0800 (PST)
Received: from delivery.infowest.com (delivery.infowest.com [204.17.177.5])
	by mx1.FreeBSD.org (Postfix) with ESMTP id 1A92843D3F
	for <freebsd-amd64@freebsd.org>; Fri,  2 Apr 2004 11:55:31 -0800 (PST)
	(envelope-from butch@infowest.com)
Received: from [10.100.100.240] (zurg.infowest.com [216.190.25.82])
	by delivery.infowest.com (Postfix) with ESMTP id 9F251EB1F3E;
	Fri,  2 Apr 2004 12:55:30 -0700 (MST)
User-Agent: Microsoft-Entourage/10.1.4.030702.0
Date: Fri, 02 Apr 2004 12:54:36 -0700
From: "Cassidy B. Larson" <butch@infowest.com>
To: Don Bowman <don@sandvine.com>, <freebsd-amd64@freebsd.org>
Message-ID: <BC93130C.2E317%butch@infowest.com>
In-Reply-To: <FE045D4D9F7AED4CBFF1B3B813C85337045D8861@mail.sandvine.com>
Mime-version: 1.0
Content-type: text/plain; charset="US-ASCII"
Content-transfer-encoding: 7bit
Subject: Re: SMP issues on K8S Pro S2882G3NR
X-BeenThere: freebsd-amd64@freebsd.org
X-Mailman-Version: 2.1.1
Precedence: list
List-Id: Porting FreeBSD to the AMD64 platform <freebsd-amd64.freebsd.org>
List-Unsubscribe: <http://lists.freebsd.org/mailman/listinfo/freebsd-amd64>,
	<mailto:freebsd-amd64-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/freebsd-amd64>
List-Post: <mailto:freebsd-amd64@freebsd.org>
List-Help: <mailto:freebsd-amd64-request@freebsd.org?subject=help>
List-Subscribe: <http://lists.freebsd.org/mailman/listinfo/freebsd-amd64>,
	<mailto:freebsd-amd64-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Fri, 02 Apr 2004 19:55:31 -0000

On 4/2/04 12:06 PM, "Don Bowman" <don@sandvine.com> wrote:
> 
> Make sure your air flow is forced over the CPU. Air takes
> the path of least resistance, so e.g. opening the top
> of the case will make the air escape. The fans should
> be ducted to go directly over the heat sink, there will
> be foam or something to make this happen. Operate with the
> case closed.
> 
> run e.g. lmmon to see your temperatures. I don't know
> how to do this with amd, with intel xeon, there is on
> chip sensor on smb.
> 
> 

Yes, CPU air flow is forced over the cpu copper heat sinks. And the top of
the case is firmly in place.

I let it sit over night to "cool down".  Upon boot-up the CPU temperatures
started around 104-105 F.  Letting them sit in the BIOS noticing the
temperature go up over 130F.

Booting into 5.2.1 with SMP kernel, I ran my perl fork mysql test scripts
six times then it froze. Back into BIOS I went again after a power cycle and
the temperatures were at 185 and 175.  Not as hot as yesterday, but I only
had it up for 10 minutes total from a cold state.

Anybody have any temperature monitoring apps for amd 5.2.1?

Anybody know what the lock-up temperature is AMD sets into their chips?

Or does anybody know how hot their 1U dual opteron 246 servers run? :)

-c

From owner-freebsd-amd64@FreeBSD.ORG  Fri Apr  2 12:55:53 2004
Return-Path: <owner-freebsd-amd64@FreeBSD.ORG>
Delivered-To: freebsd-amd64@freebsd.org
Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125])
	by hub.freebsd.org (Postfix) with ESMTP id 96B1F16A4CE
	for <freebsd-amd64@freebsd.org>; Fri,  2 Apr 2004 12:55:53 -0800 (PST)
Received: from demos.bsdclusters.com (demos.bsdclusters.com [69.55.225.36])
	by mx1.FreeBSD.org (Postfix) with ESMTP id 7DB9543D46
	for <freebsd-amd64@freebsd.org>; Fri,  2 Apr 2004 12:55:53 -0800 (PST)
	(envelope-from kmacy@fsmware.com)
Received: from demos.bsdclusters.com (demos [69.55.225.36])
	i32KtqTx050943;	Fri, 2 Apr 2004 12:55:52 -0800 (PST)
	(envelope-from kmacy@fsmware.com)
Received: from localhost (kmacy@localhost)i32KtqhV050940;
	Fri, 2 Apr 2004 12:55:52 -0800 (PST)
X-Authentication-Warning: demos.bsdclusters.com: kmacy owned process doing -bs
Date: Fri, 2 Apr 2004 12:55:52 -0800 (PST)
From: Kip Macy <kmacy@fsmware.com>
X-X-Sender: kmacy@demos.bsdclusters.com
To: Brooks Davis <brooks@one-eyed-alien.net>
In-Reply-To: <20040402182903.GB11637@Odin.AC.HMC.Edu>
Message-ID: <20040402125339.K24893@demos.bsdclusters.com>
References: <20040401182140.A25794@demos.bsdclusters.com>
 <20040402182903.GB11637@Odin.AC.HMC.Edu>
MIME-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
cc: freebsd-amd64@freebsd.org
Subject: Re: How widely used is the port?
X-BeenThere: freebsd-amd64@freebsd.org
X-Mailman-Version: 2.1.1
Precedence: list
List-Id: Porting FreeBSD to the AMD64 platform <freebsd-amd64.freebsd.org>
List-Unsubscribe: <http://lists.freebsd.org/mailman/listinfo/freebsd-amd64>,
	<mailto:freebsd-amd64-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/freebsd-amd64>
List-Post: <mailto:freebsd-amd64@freebsd.org>
List-Help: <mailto:freebsd-amd64-request@freebsd.org?subject=help>
List-Subscribe: <http://lists.freebsd.org/mailman/listinfo/freebsd-amd64>,
	<mailto:freebsd-amd64-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Fri, 02 Apr 2004 20:55:53 -0000

I'm fairly certain that I did try it without ACPI. However, I'll try it
again in any event. Have you run the latest snapshot? Do you have any
ATAPI devices on either of your systems?

Thanks.

				-Kip

On Fri, 2 Apr 2004, Brooks Davis wrote:

> On Thu, Apr 01, 2004 at 06:26:51PM -0800, Kip Macy wrote:
> > On my laptop 5.2.1 panics with a GPF on boot after install when mounting
> > ad0s1a. The latest snapshot panics in malloc as result of a use after
> > free in the CAM subsytem on initial boot.
> >
> > I've verified that there are no hardware issues (although there are
> > driver limitations) by successfully installing and running Mandrake 10
> > and Fedora Core 2.
>
> I've got a couple that work fine here.  One of them is a primary
> development system and I've never had problems with it.
>
> What's your hardware?  Have you tried disabling ACPI?
>
> -- Brooks
>
> --
> Any statement of the form "X is the one, true Y" is FALSE.
> PGP fingerprint 655D 519C 26A7 82E7 2529  9BF0 5D8E 8BE9 F238 1AD4
>

From owner-freebsd-amd64@FreeBSD.ORG  Fri Apr  2 13:12:43 2004
Return-Path: <owner-freebsd-amd64@FreeBSD.ORG>
Delivered-To: freebsd-amd64@freebsd.org
Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125])
	by hub.freebsd.org (Postfix) with ESMTP id D08F516A4D9
	for <freebsd-amd64@freebsd.org>; Fri,  2 Apr 2004 13:12:43 -0800 (PST)
Received: from pimout1-ext.prodigy.net (pimout1-ext.prodigy.net
	[207.115.63.77])
	by mx1.FreeBSD.org (Postfix) with ESMTP id 63AF043D41
	for <freebsd-amd64@freebsd.org>;
	Fri,  2 Apr 2004 13:12:43 -0800 (PST)	(envelope-from bob@immure.com)
Received: from maul.immure.com (adsl-66-136-206-1.dsl.austtx.swbell.net
	[66.136.206.1])i32LCfuO155554;	Fri, 2 Apr 2004 16:12:41 -0500
Received: (from root@localhost)
	by maul.immure.com (8.12.11/8.12.11) id i32LCfAZ002472;
	Fri, 2 Apr 2004 15:12:41 -0600 (CST)
	(envelope-from bob@immure.com)
Received: from luke.immure.com (luke.immure.com [10.1.132.3])
	by maul.immure.com (8.12.11/8.12.3) with ESMTP id i32LCd1g002447;
	Fri, 2 Apr 2004 15:12:40 -0600 (CST)
	(envelope-from bob@immure.com)
Received: from luke.immure.com (localhost [127.0.0.1])
	by luke.immure.com (8.12.11/8.12.11) with ESMTP id i32LCd8F025270;
	Fri, 2 Apr 2004 15:12:39 -0600 (CST)
	(envelope-from bob@luke.immure.com)
Received: (from bob@localhost)
	by luke.immure.com (8.12.11/8.12.11/Submit) id i32LCdQD025269;
	Fri, 2 Apr 2004 15:12:39 -0600 (CST)
	(envelope-from bob)
Date: Fri, 2 Apr 2004 15:12:39 -0600
From: Bob Willcox <bob@immure.com>
To: "Cassidy B. Larson" <butch@infowest.com>
Message-ID: <20040402211239.GC19295@luke.immure.com>
References: <FE045D4D9F7AED4CBFF1B3B813C85337045D8861@mail.sandvine.com>
	<BC93130C.2E317%butch@infowest.com>
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <BC93130C.2E317%butch@infowest.com>
User-Agent: Mutt/1.5.6i
X-scanner: scanned by Inflex 1.0.12.3 on maul.immure.com
cc: freebsd-amd64@freebsd.org
Subject: Re: SMP issues on K8S Pro S2882G3NR
X-BeenThere: freebsd-amd64@freebsd.org
X-Mailman-Version: 2.1.1
Precedence: list
Reply-To: Bob Willcox <bob@immure.com>
List-Id: Porting FreeBSD to the AMD64 platform <freebsd-amd64.freebsd.org>
List-Unsubscribe: <http://lists.freebsd.org/mailman/listinfo/freebsd-amd64>,
	<mailto:freebsd-amd64-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/freebsd-amd64>
List-Post: <mailto:freebsd-amd64@freebsd.org>
List-Help: <mailto:freebsd-amd64-request@freebsd.org?subject=help>
List-Subscribe: <http://lists.freebsd.org/mailman/listinfo/freebsd-amd64>,
	<mailto:freebsd-amd64-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Fri, 02 Apr 2004 21:12:44 -0000

On Fri, Apr 02, 2004 at 12:54:36PM -0700, Cassidy B. Larson wrote:
> On 4/2/04 12:06 PM, "Don Bowman" <don@sandvine.com> wrote:
> > 
> > Make sure your air flow is forced over the CPU. Air takes
> > the path of least resistance, so e.g. opening the top
> > of the case will make the air escape. The fans should
> > be ducted to go directly over the heat sink, there will
> > be foam or something to make this happen. Operate with the
> > case closed.
> > 
> > run e.g. lmmon to see your temperatures. I don't know
> > how to do this with amd, with intel xeon, there is on
> > chip sensor on smb.
> > 
> > 
> 
> Yes, CPU air flow is forced over the cpu copper heat sinks. And the top of
> the case is firmly in place.
> 
> I let it sit over night to "cool down".  Upon boot-up the CPU temperatures
> started around 104-105 F.  Letting them sit in the BIOS noticing the
> temperature go up over 130F.
> 
> Booting into 5.2.1 with SMP kernel, I ran my perl fork mysql test scripts
> six times then it froze. Back into BIOS I went again after a power cycle and
> the temperatures were at 185 and 175.  Not as hot as yesterday, but I only
> had it up for 10 minutes total from a cold state.
> 
> Anybody have any temperature monitoring apps for amd 5.2.1?

xmbmon (I usually use the cli version, mbmon) works on my amd64 system.
However, my motherboard is an ASUS SK8V, not a Tyan (also only a single
CPU model, an Opteron 146).

> 
> Anybody know what the lock-up temperature is AMD sets into their chips?

When mostly idle, my system's CPU temperature swings between about 45
and 53 degrees Celsius, as the CPU cooler fan turns on and off. When
running under a constant (heavy) load, the temperature stabilizes at
about 49 C (with the CPU cooler fan running at a constant appx. 2000
rpm).

> 
> Or does anybody know how hot their 1U dual opteron 246 servers run? :)

Of course, my system isn't a 1U dual server so I would expect it to run
cooler than yours, but if I had a system with the CPUs running as hot as
yours I would worry... :-(

Bob

> 
> -c
> 
> _______________________________________________
> freebsd-amd64@freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-amd64
> To unsubscribe, send any mail to "freebsd-amd64-unsubscribe@freebsd.org"

-- 
Bob Willcox                  What's done to children, they will do to society.
bob@immure.com
Austin, TX

From owner-freebsd-amd64@FreeBSD.ORG  Sat Apr  3 10:09:41 2004
Return-Path: <owner-freebsd-amd64@FreeBSD.ORG>
Delivered-To: freebsd-amd64@freebsd.org
Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125])
	by hub.freebsd.org (Postfix) with ESMTP
	id 91DC916A4CF; Sat,  3 Apr 2004 10:09:41 -0800 (PST)
Received: from mailhost.stack.nl (vaak.stack.nl [131.155.140.140])
	by mx1.FreeBSD.org (Postfix) with ESMTP
	id EC34243D55; Sat,  3 Apr 2004 10:09:40 -0800 (PST)
	(envelope-from dean@dragon.stack.nl)
Received: from dragon.stack.nl (dragon.stack.nl
	[2001:610:1108:5011:207:e9ff:fe09:230])
	by mailhost.stack.nl (Postfix) with ESMTP
	id 406EFDE3#A28EA1F00A; Sat,  3 Apr 2004 20:09:39 +0200 (CEST)
Received: by dragon.stack.nl (Postfix, from userid 1600)
	id 8FA225F258; Sat,  3 Apr 2004 20:09:39 +0200 (CEST)
Date: Sat, 3 Apr 2004 20:09:39 +0200
From: Dean Strik <dean@stack.nl>
To: S??ren Schmidt <sos@DeepCore.dk>
Message-ID: <20040403180939.GG83830@dragon.stack.nl>
References: <007e01c417eb$6691ef90$122aa8c0@skon2>
	<406C29F9.3070705@DeepCore.dk>
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <406C29F9.3070705@DeepCore.dk>
X-Editor: VIM Rulez! http://www.vim.org/
X-MUD: Outerspace - telnet://mud.stack.nl:3333
X-Really: Yes
User-Agent: Mutt/1.5.6i
cc: "SungGON Yi." <skon@kr.FreeBSD.org>
cc: freebsd-current@freebsd.org
cc: freebsd-amd64@freebsd.org
Subject: Re: ATA driver cannot detect the Serial ATA disk in
	FreeBSD/AMD64-Current
X-BeenThere: freebsd-amd64@freebsd.org
X-Mailman-Version: 2.1.1
Precedence: list
List-Id: Porting FreeBSD to the AMD64 platform <freebsd-amd64.freebsd.org>
List-Unsubscribe: <http://lists.freebsd.org/mailman/listinfo/freebsd-amd64>,
	<mailto:freebsd-amd64-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/freebsd-amd64>
List-Post: <mailto:freebsd-amd64@freebsd.org>
List-Help: <mailto:freebsd-amd64-request@freebsd.org?subject=help>
List-Subscribe: <http://lists.freebsd.org/mailman/listinfo/freebsd-amd64>,
	<mailto:freebsd-amd64-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Sat, 03 Apr 2004 18:09:41 -0000

S??ren Schmidt wrote:
> SungGON Yi. wrote:
> >My system is consisted in Tyan S2885 opteron dual board and Seagate 7200.1 
> >SATA
> >disk with
> >FreeBSD/AMD64 5.2-Current.
> >
> >Old ata driver could detect the disk. Below the verbose message on 
> >bootstrap:
> 
> Please try this patch:
> 
> Index: ata-pci.c
> ===================================================================
> RCS file: /home/ncvs/src/sys/dev/ata/ata-pci.c,v
> retrieving revision 1.77
> diff -u -r1.77 ata-pci.c

Okay, works here (the system Marc Olzheim wrote about) as well.

-- 
Dean C. Strik             Eindhoven University of Technology
dean@stack.nl  |  dean@ipnet6.org  |  http://www.ipnet6.org/
"This isn't right. This isn't even wrong." -- Wolfgang Pauli

From owner-freebsd-amd64@FreeBSD.ORG  Sat Apr  3 12:49:17 2004
Return-Path: <owner-freebsd-amd64@FreeBSD.ORG>
Delivered-To: freebsd-amd64@freebsd.org
Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125])
	by hub.freebsd.org (Postfix) with ESMTP id C54D216A4CE
	for <freebsd-amd64@freebsd.org>; Sat,  3 Apr 2004 12:49:17 -0800 (PST)
Received: from mail.jrv.org (rrcs-sw-24-73-246-106.biz.rr.com [24.73.246.106])
	by mx1.FreeBSD.org (Postfix) with ESMTP id 7146D43D2D
	for <freebsd-amd64@freebsd.org>; Sat,  3 Apr 2004 12:49:11 -0800 (PST)
	(envelope-from james@jrv.org)
Received: from jrv.org (zippy.jrv.org [192.168.3.156])
	(authenticated bits=0)
	by dogfood.jrv.org (8.12.11/8.12.10) with ESMTP id i337QaAc067033
	(version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO);
	Sat, 3 Apr 2004 01:26:36 -0600 (CST)
	(envelope-from james@jrv.org)
Message-ID: <406E672C.4050100@jrv.org>
Date: Sat, 03 Apr 2004 01:26:36 -0600
From: "James R. Van Artsalen" <james@jrv.org>
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US;
	rv:1.6) Gecko/20040113
X-Accept-Language: en-us, en
MIME-Version: 1.0
To: "Cassidy B. Larson" <butch@infowest.com>
References: <BC92ECF4.2E2E3%butch@infowest.com>
In-Reply-To: <BC92ECF4.2E2E3%butch@infowest.com>
Content-Type: text/plain; charset=ISO-8859-1; format=flowed
Content-Transfer-Encoding: 7bit
cc: "freebsd-amd64@freebsd.org" <freebsd-amd64@freebsd.org>
Subject: Re: SMP issues on K8S Pro S2882G3NR
X-BeenThere: freebsd-amd64@freebsd.org
X-Mailman-Version: 2.1.1
Precedence: list
List-Id: Porting FreeBSD to the AMD64 platform <freebsd-amd64.freebsd.org>
List-Unsubscribe: <http://lists.freebsd.org/mailman/listinfo/freebsd-amd64>,
	<mailto:freebsd-amd64-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/freebsd-amd64>
List-Post: <mailto:freebsd-amd64@freebsd.org>
List-Help: <mailto:freebsd-amd64-request@freebsd.org?subject=help>
List-Subscribe: <http://lists.freebsd.org/mailman/listinfo/freebsd-amd64>,
	<mailto:freebsd-amd64-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Sat, 03 Apr 2004 20:49:17 -0000

Cassidy B. Larson wrote:

>One more question I had.
>
>What's the typical temperature of two 246 opterons?  We have it in a 1U box
>with fans and ventilation galore, but when I push the box for more then 20
>seconds with 0 CPU free, it freezes.  A quick power cycle into the BIOS
>details that I'm running at over 95 degrees centigrade.  Letting it cool
>down will let me run my CPU test another 2-3 times then freezes again.
>  
>

The rated case temperature is 70 C.

There is a hardware-enforced shutdown mechanism at "125 C" but I don't 
know where this is measured.

I don't know if the ROM Setup number is accurate, or what it is 
measuring.  I have no confidence in this number.  There are two pins to 
an on-die thermal diode they could monitor, but I don't know how to 
relate this value to the rated thermal maximums.

>I looked through the Tyan manual and found nothing of the halt temperature,
>nor AMD's site.
>  
>

Try 
http://www.amd.com/us-en/assets/content_type/white_papers_and_tech_docs/23932.pdf 
, the AMD Opteron Processor Data Sheet, the Power Management sections 
and the Miscellaneous Pin Descriptions for THERMDA, THERMDC and THERMTRIP_L.

>If needs be I may send this back and get a 2U case with better cooling.
>Argh. 
>  
>

Make sure CPU cooler exhaust air is not recirculating back into the CPU 
cooler air intake.

Most ATX thermal schemes are completely incompetent, as is the BTX 
proposal.  The focus should be on getting hot exhaust air out of the 
chassis before it heats any component, especially the CPU.  If you have 
to get another case evaluate thermals by seeing how they evacuate hot 
exhaust from the CPU (it should not recirculate or bake any other 
component).

From owner-freebsd-amd64@FreeBSD.ORG  Sat Apr  3 12:49:18 2004
Return-Path: <owner-freebsd-amd64@FreeBSD.ORG>
Delivered-To: freebsd-amd64@freebsd.org
Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125])
	by hub.freebsd.org (Postfix) with ESMTP id 73E3D16A4CE
	for <freebsd-amd64@freebsd.org>; Sat,  3 Apr 2004 12:49:18 -0800 (PST)
Received: from mail.jrv.org (rrcs-sw-24-73-246-106.biz.rr.com [24.73.246.106])
	by mx1.FreeBSD.org (Postfix) with ESMTP id F222243D2D
	for <freebsd-amd64@freebsd.org>; Sat,  3 Apr 2004 12:49:17 -0800 (PST)
	(envelope-from james@jrv.org)
Received: from jrv.org (zippy.jrv.org [192.168.3.156])
	(authenticated bits=0)
	by dogfood.jrv.org (8.12.11/8.12.10) with ESMTP id i336b2gS064832
	(version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO);
	Sat, 3 Apr 2004 00:37:02 -0600 (CST)
	(envelope-from james@jrv.org)
Message-ID: <406E5B8E.4060400@jrv.org>
Date: Sat, 03 Apr 2004 00:37:02 -0600
From: "James R. Van Artsalen" <james@jrv.org>
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US;
	rv:1.6) Gecko/20040113
X-Accept-Language: en-us, en
MIME-Version: 1.0
To: Kip Macy <kmacy@fsmware.com>
References: <20040401182140.A25794@demos.bsdclusters.com>
In-Reply-To: <20040401182140.A25794@demos.bsdclusters.com>
Content-Type: text/plain; charset=ISO-8859-1; format=flowed
Content-Transfer-Encoding: 7bit
cc: freebsd-amd64@freebsd.org
Subject: Re: How widely used is the port?
X-BeenThere: freebsd-amd64@freebsd.org
X-Mailman-Version: 2.1.1
Precedence: list
List-Id: Porting FreeBSD to the AMD64 platform <freebsd-amd64.freebsd.org>
List-Unsubscribe: <http://lists.freebsd.org/mailman/listinfo/freebsd-amd64>,
	<mailto:freebsd-amd64-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/freebsd-amd64>
List-Post: <mailto:freebsd-amd64@freebsd.org>
List-Help: <mailto:freebsd-amd64-request@freebsd.org?subject=help>
List-Subscribe: <http://lists.freebsd.org/mailman/listinfo/freebsd-amd64>,
	<mailto:freebsd-amd64-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Sat, 03 Apr 2004 20:49:18 -0000

Kip Macy wrote:

>On my laptop 5.2.1 panics with a GPF on boot after install when mounting
>ad0s1a. The latest snapshot panics in malloc as result of a use after
>free in the CAM subsytem on initial boot.
>  
>

That's not normal.  I don't know of any other such bug report, not in 
the last six months anyway.

>I've verified that there are no hardware issues (although there are
>driver limitations) by successfully installing and running Mandrake 10
>and Fedora Core 2.
>  
>

It might be better to try FreeBSD/i386 to see if there is a hardware or 
software issue that might affect FreeBSD/amd64.

From owner-freebsd-amd64@FreeBSD.ORG  Sat Apr  3 15:40:02 2004
Return-Path: <owner-freebsd-amd64@FreeBSD.ORG>
Delivered-To: freebsd-amd64@freebsd.org
Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125])
	by hub.freebsd.org (Postfix) with ESMTP
	id 8FFE216A4CE; Sat,  3 Apr 2004 15:40:02 -0800 (PST)
Received: from freebsd-current.sentex.ca (freebsd-current.sentex.ca
	[64.7.128.98])	by mx1.FreeBSD.org (Postfix) with ESMTP
	id 4FF6F43D2D; Sat,  3 Apr 2004 15:40:02 -0800 (PST)
	(envelope-from tinderbox@freebsd.org)
Received: by freebsd-current.sentex.ca (Postfix, from userid 666)
	id BD10F7303A; Sat,  3 Apr 2004 18:40:01 -0500 (EST)
Sender: FreeBSD Tinderbox <tinderbox@freebsd.org>
From: FreeBSD Tinderbox <tinderbox@freebsd.org>
To: FreeBSD Tinderbox <tinderbox@freebsd.org>, <current@freebsd.org>,
	<amd64@freebsd.org>
Precedence: bulk
Message-Id: <20040403234001.BD10F7303A@freebsd-current.sentex.ca>
Date: Sat,  3 Apr 2004 18:40:01 -0500 (EST)
Subject: [current tinderbox] failure on amd64/amd64
X-BeenThere: freebsd-amd64@freebsd.org
X-Mailman-Version: 2.1.1
List-Id: Porting FreeBSD to the AMD64 platform <freebsd-amd64.freebsd.org>
List-Unsubscribe: <http://lists.freebsd.org/mailman/listinfo/freebsd-amd64>,
	<mailto:freebsd-amd64-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/freebsd-amd64>
List-Post: <mailto:freebsd-amd64@freebsd.org>
List-Help: <mailto:freebsd-amd64-request@freebsd.org?subject=help>
List-Subscribe: <http://lists.freebsd.org/mailman/listinfo/freebsd-amd64>,
	<mailto:freebsd-amd64-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Sat, 03 Apr 2004 23:40:02 -0000

TB --- 2004-04-03 22:35:04 - tinderbox 2.3 running on freebsd-current.sentex.ca
TB --- 2004-04-03 22:35:04 - starting CURRENT tinderbox run for amd64/amd64
TB --- 2004-04-03 22:35:04 - checking out the source tree
TB --- 2004-04-03 22:35:04 - cd /home/tinderbox/sandbox/CURRENT/amd64/amd64
TB --- 2004-04-03 22:35:04 - /usr/bin/cvs -f -R -q -d/home/ncvs update -Pd -A src
TB --- 2004-04-03 22:40:58 - building world (CFLAGS=-O2 -pipe)
TB --- 2004-04-03 22:40:58 - cd /home/tinderbox/sandbox/CURRENT/amd64/amd64/src
TB --- 2004-04-03 22:40:58 - /usr/bin/make -B buildworld
>>> Rebuilding the temporary build tree
>>> stage 1.1: legacy release compatibility shims
>>> stage 1.2: bootstrap tools
>>> stage 2.1: cleaning up the object tree
>>> stage 2.2: rebuilding the object tree
>>> stage 2.3: build tools
>>> stage 3: cross tools
>>> stage 4.1: building includes
>>> stage 4.2: building libraries
>>> stage 4.3: make dependencies
>>> stage 4.4: building everything
[...]
cc -O2 -pipe  -I/other/tinderbox/CURRENT/amd64/amd64/src/gnu/usr.bin/cvs/cvs -I../lib -DHAVE_CONFIG_H -I/other/tinderbox/CURRENT/amd64/amd64/src/gnu/usr.bin/cvs/cvs/../../../../contrib/cvs/src  -I/home/tinderbox/sandbox/CURRENT/amd64/amd64/obj/amd64/other/tinderbox/CURRENT/amd64/amd64/src/i386/usr/include/gnu  -I/other/tinderbox/CURRENT/amd64/amd64/src/gnu/usr.bin/cvs/cvs/../../../../contrib/cvs/lib -I/other/tinderbox/CURRENT/amd64/amd64/src/gnu/usr.bin/cvs/cvs/../../../../contrib/cvs/diff -I. -DHAVE_GSSAPI -DHAVE_GSSAPI_H -DENCRYPTION  -c /other/tinderbox/CURRENT/amd64/amd64/src/contrib/cvs/src/watch.c
cc -O2 -pipe  -I/other/tinderbox/CURRENT/amd64/amd64/src/gnu/usr.bin/cvs/cvs -I../lib -DHAVE_CONFIG_H -I/other/tinderbox/CURRENT/amd64/amd64/src/gnu/usr.bin/cvs/cvs/../../../../contrib/cvs/src  -I/home/tinderbox/sandbox/CURRENT/amd64/amd64/obj/amd64/other/tinderbox/CURRENT/amd64/amd64/src/i386/usr/include/gnu  -I/other/tinderbox/CURRENT/amd64/amd64/src/gnu/usr.bin/cvs/cvs/../../../../contrib/cvs/lib -I/other/tinderbox/CURRENT/amd64/amd64/src/gnu/usr.bin/cvs/cvs/../../../../contrib/cvs/diff -I. -DHAVE_GSSAPI -DHAVE_GSSAPI_H -DENCRYPTION  -c /other/tinderbox/CURRENT/amd64/amd64/src/contrib/cvs/src/wrapper.c
cc -O2 -pipe  -I/other/tinderbox/CURRENT/amd64/amd64/src/gnu/usr.bin/cvs/cvs -I../lib -DHAVE_CONFIG_H -I/other/tinderbox/CURRENT/amd64/amd64/src/gnu/usr.bin/cvs/cvs/../../../../contrib/cvs/src  -I/home/tinderbox/sandbox/CURRENT/amd64/amd64/obj/amd64/other/tinderbox/CURRENT/amd64/amd64/src/i386/usr/include/gnu  -I/other/tinderbox/CURRENT/amd64/amd64/src/gnu/usr.bin/cvs/cvs/../../../../contrib/cvs/lib -I/other/tinderbox/CURRENT/amd64/amd64/src/gnu/usr.bin/cvs/cvs/../../../../contrib/cvs/diff -I. -DHAVE_GSSAPI -DHAVE_GSSAPI_H -DENCRYPTION  -c /other/tinderbox/CURRENT/amd64/amd64/src/contrib/cvs/src/zlib.c
cc -O2 -pipe  -I/other/tinderbox/CURRENT/amd64/amd64/src/gnu/usr.bin/cvs/cvs -I../lib -DHAVE_CONFIG_H -I/other/tinderbox/CURRENT/amd64/amd64/src/gnu/usr.bin/cvs/cvs/../../../../contrib/cvs/src  -I/home/tinderbox/sandbox/CURRENT/amd64/amd64/obj/amd64/other/tinderbox/CURRENT/amd64/amd64/src/i386/usr/include/gnu  -I/other/tinderbox/CURRENT/amd64/amd64/src/gnu/usr.bin/cvs/cvs/../../../../contrib/cvs/lib -I/other/tinderbox/CURRENT/amd64/amd64/src/gnu/usr.bin/cvs/cvs/../../../../contrib/cvs/diff -I. -DHAVE_GSSAPI -DHAVE_GSSAPI_H -DENCRYPTION   -o cvs add.o admin.o annotate.o buffer.o checkin.o checkout.o classify.o client.o commit.o create_adm.o cvsrc.o diff.o edit.o entries.o error.o expand_path.o fileattr.o filesubr.o find_names.o hardlink.o hash.o history.o ignore.o import.o lock.o log.o login.o logmsg.o main.o mkmodules.o modules.o myndbm.o no_diff.o parseinfo.o patch.o prepend_args.o rcs.o rcscmds.o recurse.o release.o remove.o repos.o root.o run.o scramble.o server.o status.o
  subr.o tag.o update.o vers_ts.o version.o watch.o wrapper.o zlib.o /other/tinderbox/CURRENT/amd64/amd64/obj/amd64/other/tinderbox/CURRENT/amd64/amd64/src/gnu/usr.bin/cvs/cvs/../lib/libcvs.a /other/tinderbox/CURRENT/amd64/amd64/obj/amd64/other/tinderbox/CURRENT/amd64/amd64/src/gnu/usr.bin/cvs/cvs/../libdiff/libdiff.a -lgnuregex -lmd -lcrypt -lz -lgssapi -lkrb5 -lasn1 -lcrypto -lroken -lcrypt -lcom_err
/home/tinderbox/sandbox/CURRENT/amd64/amd64/obj/amd64/other/tinderbox/CURRENT/amd64/amd64/src/i386/usr/lib/libgssapi.so: undefined reference to `_gssapi_wrap_arcfour'
/home/tinderbox/sandbox/CURRENT/amd64/amd64/obj/amd64/other/tinderbox/CURRENT/amd64/amd64/src/i386/usr/lib/libgssapi.so: undefined reference to `_gssapi_get_mic_arcfour'
/home/tinderbox/sandbox/CURRENT/amd64/amd64/obj/amd64/other/tinderbox/CURRENT/amd64/amd64/src/i386/usr/lib/libgssapi.so: undefined reference to `_gssapi_unwrap_arcfour'
/home/tinderbox/sandbox/CURRENT/amd64/amd64/obj/amd64/other/tinderbox/CURRENT/amd64/amd64/src/i386/usr/lib/libgssapi.so: undefined reference to `_gssapi_verify_mic_arcfour'
*** Error code 1

Stop in /other/tinderbox/CURRENT/amd64/amd64/src/gnu/usr.bin/cvs/cvs.
*** Error code 1

Stop in /other/tinderbox/CURRENT/amd64/amd64/src/gnu/usr.bin/cvs.
*** Error code 1

Stop in /other/tinderbox/CURRENT/amd64/amd64/src/gnu/usr.bin.
*** Error code 1

Stop in /other/tinderbox/CURRENT/amd64/amd64/src/gnu.
*** Error code 1

Stop in /other/tinderbox/CURRENT/amd64/amd64/src.
*** Error code 1

Stop in /other/tinderbox/CURRENT/amd64/amd64/src.
*** Error code 1

Stop in /other/tinderbox/CURRENT/amd64/amd64/src.
TB --- 2004-04-03 23:40:01 - WARNING: /usr/bin/make returned exit code  1 
TB --- 2004-04-03 23:40:01 - ERROR: failed to build world
TB --- 2004-04-03 23:40:01 - tinderbox aborted

From owner-freebsd-amd64@FreeBSD.ORG  Sat Apr  3 17:04:24 2004
Return-Path: <owner-freebsd-amd64@FreeBSD.ORG>
Delivered-To: freebsd-amd64@freebsd.org
Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125])
	by hub.freebsd.org (Postfix) with ESMTP id E7EF416A4CE
	for <freebsd-amd64@freebsd.org>; Sat,  3 Apr 2004 17:04:24 -0800 (PST)
Received: from demos.bsdclusters.com (demos.bsdclusters.com [69.55.225.36])
	by mx1.FreeBSD.org (Postfix) with ESMTP id B271843D46
	for <freebsd-amd64@freebsd.org>; Sat,  3 Apr 2004 17:04:24 -0800 (PST)
	(envelope-from kmacy@fsmware.com)
Received: from demos.bsdclusters.com (demos [69.55.225.36])
	i3414MTx076202;	Sat, 3 Apr 2004 17:04:22 -0800 (PST)
	(envelope-from kmacy@fsmware.com)
Received: from localhost (kmacy@localhost)i3414Mmv076199;
	Sat, 3 Apr 2004 17:04:22 -0800 (PST)
X-Authentication-Warning: demos.bsdclusters.com: kmacy owned process doing -bs
Date: Sat, 3 Apr 2004 17:04:22 -0800 (PST)
From: Kip Macy <kmacy@fsmware.com>
X-X-Sender: kmacy@demos.bsdclusters.com
To: "James R. Van Artsalen" <james@jrv.org>
In-Reply-To: <406E5B8E.4060400@jrv.org>
Message-ID: <20040403170005.A87222@demos.bsdclusters.com>
References: <20040401182140.A25794@demos.bsdclusters.com>
	<406E5B8E.4060400@jrv.org>
MIME-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
cc: freebsd-amd64@freebsd.org
Subject: Re: How widely used is the port?
X-BeenThere: freebsd-amd64@freebsd.org
X-Mailman-Version: 2.1.1
Precedence: list
List-Id: Porting FreeBSD to the AMD64 platform <freebsd-amd64.freebsd.org>
List-Unsubscribe: <http://lists.freebsd.org/mailman/listinfo/freebsd-amd64>,
	<mailto:freebsd-amd64-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/freebsd-amd64>
List-Post: <mailto:freebsd-amd64@freebsd.org>
List-Help: <mailto:freebsd-amd64-request@freebsd.org?subject=help>
List-Subscribe: <http://lists.freebsd.org/mailman/listinfo/freebsd-amd64>,
	<mailto:freebsd-amd64-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Sun, 04 Apr 2004 01:04:25 -0000

I just installed 5.2.1 i386, and it runs just fine. At least I'm now in
a position to build a debug kernel through cross-compilation and grab a
core-dump.

Thanks.

			-Kip

>
> It might be better to try FreeBSD/i386 to see if there is a hardware or
> software issue that might affect FreeBSD/amd64.
>