Bug 89398 - [PATCH] bsd.wx.mk and patches
Summary: [PATCH] bsd.wx.mk and patches
Status: Closed FIXED
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: Normal Affects Only Me
Assignee: Port Management Team
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2005-11-21 23:20 UTC by Alejandro Pulver
Modified: 2006-07-05 03:13 UTC (History)
0 users

See Also:


Attachments
wx.shar (56.44 KB, text/plain)
2005-11-21 23:20 UTC, Alejandro Pulver
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Alejandro Pulver 2005-11-21 23:20:32 UTC

bsd.wx.mk -- WxWidgets support.
All.diff -- patches to the existing ports to integrate them with bsd.wx.mk.
Comment 1 Alejandro Pulver 2005-11-22 00:26:29 UTC
>Submitter-Id:	current-users 
>Originator:	Alejandro Pulver 
>Organization:	 
>Confidential:	no 
>Synopsis:	Re: ports/89398: [PATCH] bsd.wx.mk and patches 
>Severity:	non-critical 
>Priority:	low 
>Category:	ports 
>Class:		change-request 
>Release:	FreeBSD 5.4-RELEASE i386 
>Environment:


System: FreeBSD 5.4-RELEASE #0: Sat May 21 12:14:47 ART 2005
    root@ale.varnet.bsd:/usr/src/sys/i386/compile/ATHLON-ALE



>Description:


This follow-up contains a patch to integrate bsd.wx.mk to bsd.port.mk.


>How-To-Repeat:





>Fix:


--- bsd.port.mk.diff begins here ---
--- /usr/ports/Mk/bsd.port.mk.orig	Tue Nov  8 06:02:51 2005
+++ /usr/ports/Mk/bsd.port.mk	Mon Nov 21 21:20:32 2005
@@ -1763,6 +1763,10 @@
 .include "${PORTSDIR}/Mk/bsd.apache.mk"
 .endif
 
+.if defined(USE_WX)
+.include "${PORTSDIR}/Mk/bsd.wx.mk"
+.endif
+
 .if exists(${PORTSDIR}/../Makefile.inc)
 .include "${PORTSDIR}/../Makefile.inc"
 USE_SUBMAKE=	yes
--- bsd.port.mk.diff ends here ---
Comment 2 Edwin Groothuis freebsd_committer 2005-11-22 06:54:37 UTC
Responsible Changed
From-To: freebsd-ports-bugs->portmgr

Over to portmgr for implementation
Comment 3 Mark Linimon freebsd_committer freebsd_triage 2006-01-21 20:02:34 UTC
State Changed
From-To: open->analyzed

Accepted for a test build on the cluster.
Comment 4 Mark Linimon freebsd_committer freebsd_triage 2006-01-21 22:56:31 UTC
State Changed
From-To: analyzed->feedback

Unfortunately this is not ready for a test run yet.  I will work with the 
submitter on trying to get it into shape.
Comment 5 Mark Linimon 2006-01-27 05:47:13 UTC
Here is an updated patch that de-convolutes the the whitespace and other
changes.  It passes 'make index' but the submitter still needs to carefully
review the change to see if it is still what he intended.

Index: Mk/bsd.port.mk
===================================================================
RCS file: /home/FreeBSD/pcvs/ports/Mk/bsd.port.mk,v
retrieving revision 1.523
diff -u -r1.523 bsd.port.mk
--- Mk/bsd.port.mk	23 Jan 2006 22:29:26 -0000	1.523
+++ Mk/bsd.port.mk	27 Jan 2006 03:17:05 -0000
@@ -1838,6 +1838,10 @@
 .include "${PORTSDIR}/Mk/bsd.gnome.mk"
 .endif
 
+.if defined(USE_WX)
+.include "${PORTSDIR}/Mk/bsd.wx.mk"
+.endif
+
 .if exists(${PORTSDIR}/../Makefile.inc)
 .include "${PORTSDIR}/../Makefile.inc"
 USE_SUBMAKE=	yes
Index: audio/audacity/Makefile
===================================================================
RCS file: /home/FreeBSD/pcvs/ports/audio/audacity/Makefile,v
retrieving revision 1.27
diff -u -r1.27 Makefile
--- audio/audacity/Makefile	14 Jan 2006 09:30:34 -0000	1.27
+++ audio/audacity/Makefile	23 Jan 2006 04:08:57 -0000
@@ -15,11 +15,11 @@
 COMMENT=	Audacity is a GUI editor for digital audio waveforms
 
 BUILD_DEPENDS+=	zip:${PORTSDIR}/archivers/zip
-LIB_DEPENDS=	wx_gtk2_core-2.6.0:${PORTSDIR}/x11-toolkits/wxgtk26
 
 WRKSRC=		${WRKDIR}/${PORTNAME}-src-${PORTVERSION}
 GNU_CONFIGURE=	yes
 USE_GMAKE=	yes
+USE_WX=		26
 USE_X_PREFIX=	yes
 USE_AUTOTOOLS=	libtool:15
 
@@ -42,8 +42,7 @@
 
 CONFIGURE_ENV+=	LDFLAGS="${LDFLAGS} -L${LOCALBASE}/lib ${PTHREAD_LIBS}" \
 		CPPFLAGS="${CPPFLAGS} -I${LOCALBASE}/include ${SSE_CFLAGS} ${PTHREAD_CFLAGS}" \
-		CFLAGS="${CFLAGS} -I${LOCALBASE}/include ${SSE_CFLAGS} ${PTHREAD_CFLAGS}" \
-		WX_CONFIG=${X11BASE}/bin/wxgtk2-2.6-config
+		CFLAGS="${CFLAGS} -I${LOCALBASE}/include ${SSE_CFLAGS} ${PTHREAD_CFLAGS}"
 
 .if !defined(NOPORTDOCS)
 MAKE_ENV=	DOC=yes
Index: audio/mbox/Makefile
===================================================================
RCS file: /home/FreeBSD/pcvs/ports/audio/mbox/Makefile,v
retrieving revision 1.8
diff -u -r1.8 Makefile
--- audio/mbox/Makefile	12 Jan 2006 12:54:05 -0000	1.8
+++ audio/mbox/Makefile	23 Jan 2006 04:08:52 -0000
@@ -12,16 +12,16 @@
 MAINTAINER=	ports@FreeBSD.org
 COMMENT=	Program intended to help with organizing your music files
 
-RUN_DEPENDS=	${PYTHON_SITELIBDIR}/wxPython/__init__.py:${PORTSDIR}/x11-toolkits/py-wxPython24 \
-		${PYTHON_SITELIBDIR}/ogg/__init__.py:${PORTSDIR}/audio/py-ogg \
+RUN_DEPENDS=	${PYTHON_SITELIBDIR}/ogg/__init__.py:${PORTSDIR}/audio/py-ogg \
 		${PYTHON_SITELIBDIR}/ogg/vorbis.so:${PORTSDIR}/audio/py-vorbis \
 		lame:${PORTSDIR}/audio/lame \
 		oggenc:${PORTSDIR}/audio/vorbis-tools \
 		mplayer:${PORTSDIR}/multimedia/mplayer
-LIB_DEPENDS=	wx_gtk2-2.4.0:${PORTSDIR}/x11-toolkits/wxgtk24
 
 USE_PYTHON=	yes
 USE_PYDISTUTILS=yes
+USE_WX=		2.4
+USE_WXPYTHON_RUN=	yes
 USE_BZIP2=	yes
 WRKSRC=		${WRKDIR}/mBox-${PORTVERSION}
 
Index: biology/L-Breeder/Makefile
===================================================================
RCS file: /home/FreeBSD/pcvs/ports/biology/L-Breeder/Makefile,v
retrieving revision 1.19
diff -u -r1.19 Makefile
--- biology/L-Breeder/Makefile	12 Jan 2006 12:54:05 -0000	1.19
+++ biology/L-Breeder/Makefile	23 Jan 2006 04:08:57 -0000
@@ -16,8 +16,7 @@
 MAINTAINER=	dyeske@yahoo.com
 COMMENT=	Allows you to display and breed L-system forms
 
-LIB_DEPENDS=	wx_gtk2_gl-2.4.0:${PORTSDIR}/x11-toolkits/wxgtk24 \
-		glut.4:${PORTSDIR}/graphics/libglut
+LIB_DEPENDS=	glut.4:${PORTSDIR}/graphics/libglut
 
 NO_WRKSUBDIR=	yes
 BUILD_WRKSRC=	${WRKSRC}/Unix
@@ -27,8 +26,7 @@
 USE_GL=		yes
 USE_GMAKE=	yes
 USE_REINPLACE=	yes
-
-WX_CONFIG=	${X11BASE}/bin/wxgtk2-2.4-config
+USE_WX=		2.4
 
 .if defined(WITH_OPTIMIZED_CFLAGS)
 CFLAGS+=	-O3 -ffast-math
Index: biology/treeviewx/Makefile
===================================================================
RCS file: /home/FreeBSD/pcvs/ports/biology/treeviewx/Makefile,v
retrieving revision 1.21
diff -u -r1.21 Makefile
--- biology/treeviewx/Makefile	6 Dec 2005 02:00:55 -0000	1.21
+++ biology/treeviewx/Makefile	23 Jan 2006 04:08:57 -0000
@@ -15,12 +15,10 @@
 MAINTAINER=	fernan@iib.unsam.edu.ar
 COMMENT=	A phylogenetic tree viewer
 
-LIB_DEPENDS=	wx_gtk2-2.4.0:${PORTSDIR}/x11-toolkits/wxgtk24 \
-		wx_gtk2_dcsvg-2.4.0:${PORTSDIR}/x11-toolkits/wxgtk24-contrib
-
 USE_GMAKE=	yes
+USE_WX=		2.4
+USE_WXCONTRIB=	yes
 GNU_CONFIGURE=	yes
-CONFIGURE_ENV=	WX_CONFIG="${X11BASE}/bin/wxgtk2-2.4-config"
 
 PLIST_FILES=	bin/tv
 
Index: chinese/BBMan/Makefile
===================================================================
RCS file: /home/FreeBSD/pcvs/ports/chinese/BBMan/Makefile,v
retrieving revision 1.12
diff -u -r1.12 Makefile
--- chinese/BBMan/Makefile	1 Dec 2005 08:34:57 -0000	1.12
+++ chinese/BBMan/Makefile	23 Jan 2006 04:08:57 -0000
@@ -16,11 +16,10 @@
 MAINTAINER=	ports@FreeBSD.org
 COMMENT=	BBMan is a BBS client for X Window System
 
-LIB_DEPENDS=	wx_gtk2-2.4.0:${PORTSDIR}/x11-toolkits/wxgtk24
-
 USE_ZIP=	yes
 WRKSRC=		${WRKDIR}/${PORTNAME}
 USE_X_PREFIX=	yes
+USE_WX=		2.4
 
 PLIST_FILES=	bin/BBMan
 
@@ -35,7 +34,7 @@
 .endif
 
 do-build:
-		cd ${WRKSRC} && ${CXX} main.cpp `wxgtk2-2.4-config --libs --cxxflags` -I${LOCALBASE}/include ${CFLAGS} -o BBMan
+		cd ${WRKSRC} && ${CXX} main.cpp `${WX_CONFIG} --libs --cxxflags` -I${LOCALBASE}/include ${CFLAGS} -o BBMan
 
 do-install:
 		${INSTALL_PROGRAM} ${WRKSRC}/BBMan ${PREFIX}/bin/BBMan
Index: databases/pgadmin3/Makefile
===================================================================
RCS file: /home/FreeBSD/pcvs/ports/databases/pgadmin3/Makefile,v
retrieving revision 1.22
diff -u -r1.22 Makefile
--- databases/pgadmin3/Makefile	22 Jan 2006 19:00:49 -0000	1.22
+++ databases/pgadmin3/Makefile	23 Jan 2006 04:08:57 -0000
@@ -16,15 +16,14 @@
 
 USE_PGSQL=	yes
 BROKEN_WITH_PGSQL=	73
+USE_WX=		2.6
+USE_WXCONTRIB=	yes
+USE_WXUNICODE=	yes
 USE_REINPLACE=	yes
 GNU_CONFIGURE=	yes
-CONFIGURE_ARGS=	--with-wx=${X11BASE} --with-wx-config=${WX_CONFIG}
 CONFIGURE_TARGET=	--build=${ARCH}-portbld-freebsd${OSREL}
 CONFIGURE_ENV=	CPPFLAGS="${PTHREAD_CFLAGS}" LIBS="${PTHREAD_LIBS}"
 CONFLICTS=	pgadmin3-1.[12]*
-
-LIB_DEPENDS+=	wx_gtk2u_stc-2.6.0:${PORTSDIR}/x11-toolkits/wxgtk26-unicode-contrib
-WX_CONFIG=	wxgtk2u-2.6-config
 
 post-install:
 	@${CAT} ${PKGMESSAGE}
Index: databases/pgadmin3-12/Makefile
===================================================================
RCS file: /home/FreeBSD/pcvs/ports/databases/pgadmin3-12/Makefile,v
retrieving revision 1.22
diff -u -r1.22 Makefile
--- databases/pgadmin3-12/Makefile	19 Nov 2005 18:09:45 -0000	1.22
+++ databases/pgadmin3-12/Makefile	23 Jan 2006 04:08:52 -0000
@@ -17,8 +17,9 @@
 
 USE_PGSQL=	yes
 USE_REINPLACE=	yes
+USE_WX=		2.6
+USE_WXCONTRIB=	yes
 GNU_CONFIGURE=	yes
-CONFIGURE_ARGS=	--with-wx=${X11BASE} --with-wx-config=${WX_CONFIG}
 CONFIGURE_TARGET=	--build=${ARCH}-portbld-freebsd${OSREL}
 CONFIGURE_ENV=	CPPFLAGS="${PTHREAD_CFLAGS}" LIBS="${PTHREAD_LIBS}"
 CONFLICTS=	pgadmin3-1.[456789]*
@@ -36,16 +37,12 @@
 .endif
 
 .if !defined(WITHOUT_UNICODE)
-LIB_DEPENDS+=	wx_gtk2u_stc-2.6.0:${PORTSDIR}/x11-toolkits/wxgtk26-unicode-contrib
-WX_CONFIG=	wxgtk2u-2.6-config
+USE_WXUNICODE=	yes
 PKGNAMESUFFIX=	-unicode
 PKGMESSAGE=	${PKGDIR}/pkg-message-unicode
 
 post-install:
 	@${CAT} ${PKGMESSAGE}
-.else
-LIB_DEPENDS+=	wx_gtk2_stc-2.6.0:${PORTSDIR}/x11-toolkits/wxgtk26-contrib
-WX_CONFIG=	wxgtk2-2.6-config
 .endif # WITHOUT_UNICODE
 
 .include <bsd.port.post.mk>
Index: databases/pydbdesigner/Makefile
===================================================================
RCS file: /home/FreeBSD/pcvs/ports/databases/pydbdesigner/Makefile,v
retrieving revision 1.13
diff -u -r1.13 Makefile
--- databases/pydbdesigner/Makefile	12 Jan 2006 12:54:06 -0000	1.13
+++ databases/pydbdesigner/Makefile	23 Jan 2006 04:08:57 -0000
@@ -18,10 +18,9 @@
 MAINTAINER=	ports@FreeBSD.org
 COMMENT=	Graphical designer for relational databases
 
-BUILD_DEPENDS+=	${PYTHON_SITELIBDIR}/wxPython/__init__.py:${PORTSDIR}/x11-toolkits/py-wxPython24
-RUN_DEPENDS+=	${PYTHON_SITELIBDIR}/wxPython/__init__.py:${PORTSDIR}/x11-toolkits/py-wxPython24
-
 USE_PYTHON=	yes
+USE_WX=		2.4
+USE_WXPYTHON=	yes
 PLIST=		${WRKDIR}/plist
 WRKSRC=		${WRKDIR}/${PORTNAME}
 
Index: deskutils/cycle/Makefile
===================================================================
RCS file: /home/FreeBSD/pcvs/ports/deskutils/cycle/Makefile,v
retrieving revision 1.4
diff -u -r1.4 Makefile
--- deskutils/cycle/Makefile	12 Jan 2006 12:54:06 -0000	1.4
+++ deskutils/cycle/Makefile	23 Jan 2006 04:08:51 -0000
@@ -15,10 +15,10 @@
 MAINTAINER=	danfe@FreeBSD.org
 COMMENT=	A calendar program for women
 
-RUN_DEPENDS=	${PYTHON_SITELIBDIR}/wx-2.6-gtk2-ansi/wxPython/__init__.py:${PORTSDIR}/x11-toolkits/py-wxPython26
-
 USE_BZIP2=	yes
 USE_PYTHON_RUN=	yes
+USE_WX=		2.6
+USE_WXPYTHON_RUN=	yes
 USE_REINPLACE=	yes
 NO_BUILD=	yes
 
Index: deskutils/xchm/Makefile
===================================================================
RCS file: /home/FreeBSD/pcvs/ports/deskutils/xchm/Makefile,v
retrieving revision 1.22
diff -u -r1.22 Makefile
--- deskutils/xchm/Makefile	5 Nov 2005 05:21:19 -0000	1.22
+++ deskutils/xchm/Makefile	23 Jan 2006 04:08:57 -0000
@@ -15,12 +15,11 @@
 MAINTAINER=	pav@FreeBSD.org
 COMMENT=	Windows HTML Help (.chm) viewer for UNIX
 
-LIB_DEPENDS=	chm.0:${PORTSDIR}/misc/chmlib \
-		wx_base-2.6.0:${PORTSDIR}/x11-toolkits/wxgtk26
+LIB_DEPENDS=	chm.0:${PORTSDIR}/misc/chmlib
 
 GNU_CONFIGURE=	yes
+USE_WX=		2.6
 USE_X_PREFIX=	yes
-CONFIGURE_ARGS=	--with-wx-config=${X11BASE}/bin/wxgtk2-2.6-config
 CONFIGURE_ENV=	CPPFLAGS="-I${LOCALBASE}/include" LDFLAGS="-L${LOCALBASE}/lib ${PTHREAD_LIBS}"
 USE_REINPLACE=	yes
 
Index: devel/agide/Makefile
===================================================================
RCS file: /home/FreeBSD/pcvs/ports/devel/agide/Makefile,v
retrieving revision 1.7
diff -u -r1.7 Makefile
--- devel/agide/Makefile	12 Jan 2006 12:54:07 -0000	1.7
+++ devel/agide/Makefile	23 Jan 2006 04:08:51 -0000
@@ -16,8 +16,7 @@
 COMMENT=	A-A-P GUI IDE: a framework for software development
 
 RUN_DEPENDS=	${LOCALBASE}/bin/aap:${PORTSDIR}/devel/aap \
-		${LOCALBASE}/bin/vim:${PORTSDIR}/editors/vim \
-		${PYTHON_SITELIBDIR}/wxPython/__init__.py:${PORTSDIR}/x11-toolkits/py-wxPython24
+		${LOCALBASE}/bin/vim:${PORTSDIR}/editors/vim
 
 MAN1=		agide.1
 
@@ -26,6 +25,8 @@
 
 USE_ZIP=	yes
 USE_PYTHON=	yes
+USE_WX=		2.4
+USE_WXPYTHON_RUN=	yes
 PLIST_SUB+=	PORTVERSION=${PORTVERSION}
 
 pre-install:
Index: devel/boaconstructor/Makefile
===================================================================
RCS file: /home/FreeBSD/pcvs/ports/devel/boaconstructor/Makefile,v
retrieving revision 1.17
diff -u -r1.17 Makefile
--- devel/boaconstructor/Makefile	12 Jan 2006 12:54:07 -0000	1.17
+++ devel/boaconstructor/Makefile	23 Jan 2006 04:08:51 -0000
@@ -16,12 +16,12 @@
 MAINTAINER=	filippo.natali@gmail.com
 COMMENT=	A cross platform RAD GUI Building IDE for wxPython
 
-RUN_DEPENDS=	${PYTHON_SITELIBDIR}/wx-2.6-gtk2-ansi/wx/__init__.py:${PORTSDIR}/x11-toolkits/py-wxPython26
-
 WRKSRC=		${WRKDIR}/boa-constructor-${PORTVERSION}
 
 USE_ZIP=	yes
 USE_PYTHON=	yes
+USE_WX=		2.6
+USE_WXPYTHON_RUN=	yes
 DATADIR=	${PREFIX}/share/Boa
 
 do-build:
Index: devel/datadesigner/Makefile
===================================================================
RCS file: /home/FreeBSD/pcvs/ports/devel/datadesigner/Makefile,v
retrieving revision 1.6
diff -u -r1.6 Makefile
--- devel/datadesigner/Makefile	5 Nov 2005 05:21:30 -0000	1.6
+++ devel/datadesigner/Makefile	23 Jan 2006 04:08:51 -0000
@@ -16,16 +16,14 @@
 MAINTAINER=	ports@FreeBSD.org
 COMMENT=	Database Schema Designer
 
-LIB_DEPENDS=	expat.5:${PORTSDIR}/textproc/expat2 \
-		wx_gtk2-2.4.0:${PORTSDIR}/x11-toolkits/wxgtk24
+LIB_DEPENDS=	expat.5:${PORTSDIR}/textproc/expat2
 
 USE_GNOME=	libxml2 libxslt
 USE_ICONV=	yes
+USE_WX=		2.4
 GNU_CONFIGURE=	yes
-WX_CONFIG?=	${X11BASE}/bin/wxgtk2-2.4-config
 CONFIGURE_ENV=	CPPFLAGS="${CXXFLAGS} -I${LOCALBASE}/include" \
 		LDFLAGS="-L${LOCALBASE}/lib"
-CONFIGURE_ARGS=	--with-wx-config=${WX_CONFIG}
 
 .if !defined(WITHOUT_NLS)
 USE_GETTEXT=	yes
Index: devel/drpython/Makefile
===================================================================
RCS file: /home/FreeBSD/pcvs/ports/devel/drpython/Makefile,v
retrieving revision 1.3
diff -u -r1.3 Makefile
--- devel/drpython/Makefile	12 Jan 2006 12:54:07 -0000	1.3
+++ devel/drpython/Makefile	23 Jan 2006 04:08:51 -0000
@@ -16,11 +16,11 @@
 MAINTAINER=	vsevolod@FreeBSD.org
 COMMENT=	Highly customizable cross-platform ide to aid programming in Python
 
-RUN_DEPENDS=	${PYTHON_SITELIBDIR}/wx-2.6-gtk2-ansi/wx/__init__.py:${PORTSDIR}/x11-toolkits/py-wxPython26
-
 USE_ZIP=	yes
 USE_PYTHON=	yes
 USE_PYDISTUTILS=	yes
+USE_WX=		2.6
+USE_WXPYTHON_RUN=	yes
 
 post-install:
 	@${ECHO} '#!/bin/sh' > ${WRKDIR}/drpython.sh
Index: devel/ecos-tools/Makefile
===================================================================
RCS file: /home/FreeBSD/pcvs/ports/devel/ecos-tools/Makefile,v
retrieving revision 1.12
diff -u -r1.12 Makefile
--- devel/ecos-tools/Makefile	5 Nov 2005 05:20:22 -0000	1.12
+++ devel/ecos-tools/Makefile	24 Jan 2006 12:41:32 -0000
@@ -16,11 +16,11 @@
 MAINTAINER=	tg@FreeBSD.org
 COMMENT=	Configuration tools for the eCos embedded OS
 
-LIB_DEPENDS=	tcl84.1:${PORTSDIR}/lang/tcl84 \
-		wx_gtk2-2.4.0:${PORTSDIR}/x11-toolkits/wxgtk24
+LIB_DEPENDS=	tcl84.1:${PORTSDIR}/lang/tcl84
 
 USE_BZIP2=	yes
 WRKSRC=		${WRKDIR}/infra-build
+USE_WX=		2.4
 GNU_CONFIGURE=	yes
 CONFIGURE_SCRIPT=	../ecos/host/configure
 CONFIGURE_ARGS=	--with-tcl=${PREFIX} --with-tcl-version=8.4
@@ -31,7 +31,7 @@
 
 ECOSSRCDIR=	${WRKDIR}/ecos/host
 CFGTOOL_WRKSRC=	${WRKDIR}/configtool-build
-CFGTOOL_MAKE_ENV=	WXDIR=${X11BASE} WX_CONFIG=wxgtk2-2.4-config \
+CFGTOOL_MAKE_ENV=	WXDIR=${X11BASE} WX_CONFIG=${WX_CONFIG} \
 			ECOSSRCDIR=${ECOSSRCDIR} \
 			INSTALLDIR=${PREFIX}
 CFGTOOL_MAKEFILE=	${ECOSSRCDIR}/tools/configtool/standalone/wxwin/makefile.gnu
Index: devel/klassmodeler/Makefile
===================================================================
RCS file: /home/FreeBSD/pcvs/ports/devel/klassmodeler/Makefile,v
retrieving revision 1.10
diff -u -r1.10 Makefile
--- devel/klassmodeler/Makefile	15 Nov 2005 06:48:44 -0000	1.10
+++ devel/klassmodeler/Makefile	24 Jan 2006 12:42:51 -0000
@@ -16,14 +16,12 @@
 MAINTAINER=	ports@FreeBSD.org
 COMMENT=	A tool for visually creating and documenting classes
 
-LIB_DEPENDS=	wx_gtk2-2.4.0:${PORTSDIR}/x11-toolkits/wxgtk24
-
 USE_ZIP=	yes
 USE_REINPLACE=	yes
 WRKSRC=		${WRKDIR}/${PORTNAME}
-WX_CONFIG=	${X11BASE}/bin/wxgtk2-2.4-config
 USE_GNOME=	gnometarget
 USE_AUTOTOOLS=	libtool:15
+USE_WX=		2.4
 CONFIGURE_ENV=	WXWINDOWS="yes"
 
 PLIST_FILES=	bin/klassmodeler
@@ -43,7 +41,6 @@
 	${MV} ${WRKSRC}/${df} ${WRKSRC}/${df}.dos
 	${TR} -d '\r' < ${WRKSRC}/${df}.dos > ${WRKSRC}/${df}
 .endfor
-	@${REINPLACE_CMD} -e "s,\`wx-config,\`${WX_CONFIG}," ${WRKSRC}/${CONFIGURE_SCRIPT}
 	${CHMOD} a+x ${WRKSRC}/${CONFIGURE_SCRIPT}
 
 do-install:
Index: devel/wxGlade/Makefile
===================================================================
RCS file: /home/FreeBSD/pcvs/ports/devel/wxGlade/Makefile,v
retrieving revision 1.15
diff -u -r1.15 Makefile
--- devel/wxGlade/Makefile	12 Jan 2006 12:54:11 -0000	1.15
+++ devel/wxGlade/Makefile	23 Jan 2006 04:08:57 -0000
@@ -14,13 +14,8 @@
 MAINTAINER=	alejandro@varnet.biz
 COMMENT=	GUI builder for wxPython/wxWindows written in Python
 
-RUN_DEPENDS=	${PYTHON_SITELIBDIR}/${WX_PYTHON_DIR}/wxPython/_wx.py:${PORTSDIR}/x11-toolkits/py-wxPython26
-
-.if defined(WITH_UNICODE)
-WX_PYTHON_DIR=	wx-2.6-gtk2-unicode
-.else
-WX_PYTHON_DIR=	wx-2.6-gtk2-ansi
-.endif
+USE_WX=		2.6
+USE_WXPYTHON_RUN=	yes
 
 WRKSRC=		${WRKDIR}/wxGlade-${PORTVERSION}
 
Index: editors/poedit/Makefile
===================================================================
RCS file: /home/FreeBSD/pcvs/ports/editors/poedit/Makefile,v
retrieving revision 1.40
diff -u -r1.40 Makefile
--- editors/poedit/Makefile	5 Nov 2005 05:21:31 -0000	1.40
+++ editors/poedit/Makefile	23 Jan 2006 04:08:52 -0000
@@ -52,12 +52,10 @@
 WITH_BDB_VER?=	4
 LIB_SUFFIX?=	${WITH_BDB_VER}
 
-.if defined(WITH_WXGTK24)
-LIB_DEPENDS+=	wx_gtk2-2.4.0:${PORTSDIR}/x11-toolkits/wxgtk24
-CONFIGURE_ARGS+=	--with-wx-config=${X11BASE}/bin/wxgtk2-2.4-config
+.if defined(WITH_WX24)
+USE_WX=		2.4
 .else
-LIB_DEPENDS+=	wx_gtk2_core-2.6.0:${PORTSDIR}/x11-toolkits/wxgtk26
-CONFIGURE_ARGS+=	--with-wx-config=${X11BASE}/bin/wxgtk2-2.6-config
+USE_WX=		2.6
 .endif
 
 post-patch:
Index: ftp/ftpcube/Makefile
===================================================================
RCS file: /home/FreeBSD/pcvs/ports/ftp/ftpcube/Makefile,v
retrieving revision 1.21
diff -u -r1.21 Makefile
--- ftp/ftpcube/Makefile	12 Jan 2006 12:54:11 -0000	1.21
+++ ftp/ftpcube/Makefile	23 Jan 2006 04:08:51 -0000
@@ -16,7 +16,6 @@
 MAINTAINER=	ports@FreeBSD.org
 COMMENT=	A graphical FTP Client
 
-RUN_DEPENDS=	${PYTHON_SITELIBDIR}/wx/__init__.py:${PORTSDIR}/x11-toolkits/py-wxPython24
 .if defined(PACKAGE_BUILDING)
 BUILD_DEPENDS+=	Xvfb:${X_VFBSERVER_PORT} \
 		${X11BASE}/lib/X11/fonts/misc/8x13O.pcf.gz:${X_FONTS_MISC_PORT}
@@ -25,6 +24,8 @@
 USE_REINPLACE=	yes
 USE_PYTHON=	yes
 USE_PYDISTUTILS=	yes
+USE_WX=		2.4
+USE_WXPYTHON_RUN=	yes
 
 post-patch:
 	@${REINPLACE_CMD} 's,/usr/local,${PREFIX},' ${WRKSRC}/setup.cfg
Index: games/abridge/Makefile
===================================================================
RCS file: /home/FreeBSD/pcvs/ports/games/abridge/Makefile,v
retrieving revision 1.12
diff -u -r1.12 Makefile
--- games/abridge/Makefile	5 Nov 2005 05:19:05 -0000	1.12
+++ games/abridge/Makefile	23 Jan 2006 04:08:51 -0000
@@ -14,18 +14,11 @@
 MAINTAINER=	Janos.Mohacsi@bsd.hu
 COMMENT=	Bridge game
 
-LIB_DEPENDS=	wx_gtk2-2.4.0:${PORTSDIR}/x11-toolkits/wxgtk24
-
+ONLY_FOR_ARCHS=	i386
+USE_WX=		2.4
 GNU_CONFIGURE=	yes
-CONFIGURE_ARGS=	--with-wx-config=${X11BASE}/bin/wxgtk2-2.4-config
 
 MAN1=		abridge.1
 PLIST_FILES=	bin/abridge
 
-.include <bsd.port.pre.mk>
-
-.if ${ARCH} != "i386"
-BROKEN=		"Does not compile on !i386"
-.endif
-
-.include <bsd.port.post.mk>
+.include <bsd.port.mk>
Index: games/scorched3d/Makefile
===================================================================
RCS file: /home/FreeBSD/pcvs/ports/games/scorched3d/Makefile,v
retrieving revision 1.26
diff -u -r1.26 Makefile
--- games/scorched3d/Makefile	15 Nov 2005 06:49:20 -0000	1.26
+++ games/scorched3d/Makefile	24 Jan 2006 13:16:35 -0000
@@ -16,12 +16,7 @@
 MAINTAINER=		guy@device.dyndns.org
 COMMENT=		Scorched is a game based loosely on the classic DOS game
 
-BUILD_DEPENDS=		${X11BASE}/include/wx-2.6/wx/wx.h:${PORTSDIR}/x11-toolkits/wxgtk26-common \
-			wxgtk2-2.6-config:${PORTSDIR}/x11-toolkits/wxgtk26 \
-			openal-config:${PORTSDIR}/audio/openal
-RUN_DEPENDS=		${X11BASE}/include/wx-2.6/wx/wx.h:${PORTSDIR}/x11-toolkits/wxgtk26-common \
-			wxgtk2-2.6-config:${PORTSDIR}/x11-toolkits/wxgtk26 \
-			openal-config:${PORTSDIR}/audio/openal
+LIB_DEPENDS=		openal-config:${PORTSDIR}/audio/openal
 
 SCORCH_VERSION=		39.1
 
@@ -34,6 +29,7 @@
 USE_GMAKE=		yes
 USE_AUTOTOOLS=	automake:15 autoconf:253
 USE_REINPLACE=		yes
+USE_WX=			2.6
 
 WRKSRC=			${WRKDIR}/scorched
 AUTOMAKE_ARGS=		--foreign
Index: graphics/comical/Makefile
===================================================================
RCS file: /home/FreeBSD/pcvs/ports/graphics/comical/Makefile,v
retrieving revision 1.3
diff -u -r1.3 Makefile
--- graphics/comical/Makefile	5 Nov 2005 05:20:48 -0000	1.3
+++ graphics/comical/Makefile	23 Jan 2006 04:08:51 -0000
@@ -15,12 +15,10 @@
 MAINTAINER=	john@mcaree.org
 COMMENT=	A sequential image viewer
 
-LIB_DEPENDS=	wx_gtk2-2.4.0:${PORTSDIR}/x11-toolkits/wxgtk24
-
 USE_GMAKE=	yes
+USE_WX=		2.4
 GNU_CONFIGURE=	yes
 USE_X_PREFIX=	yes
-CONFIGURE_ARGS=	--with-wx-config=${X11BASE}/bin/wxgtk2-2.4-config
 
 .include <bsd.port.pre.mk>
 
Index: graphics/hugin/Makefile
===================================================================
RCS file: /home/FreeBSD/pcvs/ports/graphics/hugin/Makefile,v
retrieving revision 1.12
diff -u -r1.12 Makefile
--- graphics/hugin/Makefile	17 Dec 2005 18:39:13 -0000	1.12
+++ graphics/hugin/Makefile	23 Jan 2006 04:08:57 -0000
@@ -22,8 +22,6 @@
 		png:${PORTSDIR}/graphics/png \
 		jpeg:${PORTSDIR}/graphics/jpeg \
 		fftw:${PORTSDIR}/math/fftw \
-		wx_gtk2-2.4.0:${PORTSDIR}/x11-toolkits/wxgtk24 \
-		wx_gtk2_xrc-2.4.0:${PORTSDIR}/x11-toolkits/wxgtk24-contrib \
 		boost_date_time:${PORTSDIR}/devel/boost
 RUN_DEPENDS=	PTOptimizer:${PORTSDIR}/graphics/libpano12 \
 		PTStitcher:${PORTSDIR}/graphics/linux-panorama-tools
@@ -32,15 +30,15 @@
 
 GNU_CONFIGURE=	yes
 CONFIGURE_TARGET=--build=${MACHINE_ARCH}-portbld-freebsd${OSREL}
-CONFIGURE_ARGS=	--with-wx-config=${WX_CONFIG}
 CONFIGURE_ENV=	CPPFLAGS="-I${LOCALBASE}/include -ftemplate-depth-32" \
 		LDFLAGS="-L${LOCALBASE}/lib"
 USE_GMAKE=	yes
 USE_BZIP2=	yes
 USE_ICONV=	yes
 USE_GETTEXT=	yes
+USE_WX=		2.4
+USE_WXCONTRIB=	yes
 
 DOCSDIR=	${PREFIX}/share/hugin/xrc/data
-WX_CONFIG=	${X11BASE}/bin/wxgtk2-2.4-config
 
 .include <bsd.port.mk>
Index: graphics/multivideo/Makefile
===================================================================
RCS file: /home/FreeBSD/pcvs/ports/graphics/multivideo/Makefile,v
retrieving revision 1.18
diff -u -r1.18 Makefile
--- graphics/multivideo/Makefile	5 Nov 2005 05:21:39 -0000	1.18
+++ graphics/multivideo/Makefile	23 Jan 2006 04:08:52 -0000
@@ -16,19 +16,16 @@
 MAINTAINER=	ports@FreeBSD.org
 COMMENT=	An image sequence viewer
 
-LIB_DEPENDS=	wx_gtk2-2.4.0:${PORTSDIR}/x11-toolkits/wxgtk24
-
 WRKSRC=		${WRKDIR}/${PORTNAME}
 
 USE_BZIP2=	yes
 USE_REINPLACE=	yes
 USE_GMAKE=	yes
+USE_WX=		2.4
 MAKE_ENV=	CXX="${CXX}" CXXFLAGS="${CXXFLAGS}"
 ALL_TARGET=	default
 
 PLIST_FILES=	bin/multivideo
-
-WX_CONFIG=	${X11BASE}/bin/wxgtk2-2.4-config
 
 post-patch:
 	@${REINPLACE_CMD} -e 's|g++|\$$\(CXX)|g ; \
Index: graphics/zphoto/Makefile
===================================================================
RCS file: /home/FreeBSD/pcvs/ports/graphics/zphoto/Makefile,v
retrieving revision 1.20
diff -u -r1.20 Makefile
--- graphics/zphoto/Makefile	26 May 2005 11:36:04 -0000	1.20
+++ graphics/zphoto/Makefile	24 Jan 2006 12:54:32 -0000
@@ -21,9 +21,6 @@
 .if !defined (WITHOUT_AVIPLAY)
 LIB_DEPENDS+=	aviplay.0:${PORTSDIR}/multimedia/avifile
 .endif
-.if defined (WITH_WXGTK2)
-LIB_DEPENDS+=	wx_gtk2-2.4.0:${PORTSDIR}/x11-toolkits/wxgtk24
-.endif
 .if !defined (WITHOUT_ZIP)
 RUN_DEPENDS=	zip:${PORTSDIR}/archivers/zip
 .endif
@@ -34,7 +31,7 @@
 	       	CPPFLAGS="-I${LOCALBASE}/include \
 		${PTHREAD_CFLAGS}"
 .if defined (WITH_WXGTK2)
-CONFIGURE_ARGS+=	--with-wx-config=wxgtk2-2.4-config
+USE_WX=		2.4
 PLIST_FILES+=	bin/wxzphoto
 .else
 CONFIGURE_ARGS+=	--disable-wx
Index: mail/mahogany/Makefile
===================================================================
RCS file: /home/FreeBSD/pcvs/ports/mail/mahogany/Makefile,v
retrieving revision 1.27
diff -u -r1.27 Makefile
--- mail/mahogany/Makefile	5 Nov 2005 05:21:42 -0000	1.27
+++ mail/mahogany/Makefile	24 Jan 2006 12:56:18 -0000
@@ -15,19 +15,16 @@
 MAINTAINER=		ports@FreeBSD.org
 COMMENT=		An X11 mail and news client
 
-LIB_DEPENDS+=		wx_gtk2-2.4.0:${PORTSDIR}/x11-toolkits/wxgtk24
-
 USE_X_PREFIX=		yes
 GNU_CONFIGURE=		yes
 USE_GMAKE=		yes
-USE_REINPLACE=		yes
+USE_WX=			2.4
 ALL_TARGET=		all locales
 INSTALL_TARGET=		install_bin install_locale
 
 MAN1=			M.1 mahogany.1
 
-CONFIGURE_ARGS=		--with-python=none \
-			--with-wx-config=${X11BASE}/bin/wxgtk2-2.4-config
+CONFIGURE_ARGS=		--with-python=none
 CONFIGURE_ENV=		OSTYPE=${OPSYS} CFLAGS="${CFLAGS}"
 
 .include <bsd.port.pre.mk>
Index: math/fityk/Makefile
===================================================================
RCS file: /home/FreeBSD/pcvs/ports/math/fityk/Makefile,v
retrieving revision 1.9
diff -u -r1.9 Makefile
--- math/fityk/Makefile	9 Nov 2005 14:35:07 -0000	1.9
+++ math/fityk/Makefile	23 Jan 2006 04:08:51 -0000
@@ -46,12 +46,10 @@
 LDFLAGS+=	-lstlport_gcc
 .endif
 
-.if defined(WITH_WXGTK24)
-LIB_DEPENDS+=	wx_gtk2-2.4.0:${PORTSDIR}/x11-toolkits/wxgtk24
-CONFIGURE_ARGS+=	--with-wx-config=wxgtk2-2.4-config
+.if defined(WITH_WX24)
+USE_WX=		2.4
 .else
-LIB_DEPENDS+=	wx_gtk2_core-2.6.0:${PORTSDIR}/x11-toolkits/wxgtk26
-CONFIGURE_ARGS+=	--with-wx-config=wxgtk2-2.6-config
+USE_WX=		2.6
 .endif
 
 post-patch:
Index: math/gambit/Makefile
===================================================================
RCS file: /home/FreeBSD/pcvs/ports/math/gambit/Makefile,v
retrieving revision 1.15
diff -u -r1.15 Makefile
--- math/gambit/Makefile	18 Dec 2005 10:37:15 -0000	1.15
+++ math/gambit/Makefile	23 Jan 2006 04:08:57 -0000
@@ -15,15 +15,12 @@
 MAINTAINER=	ports@FreeBSD.org
 COMMENT=	A library of tools for doing computation in game theory
 
-LIB_DEPENDS=	wx_gtk2_core-2.6.0:${PORTSDIR}/x11-toolkits/wxgtk26
-
 USE_X_PREFIX=	yes
 USE_GNOME=	gnometarget gtk20
 USE_REINPLACE=	yes
+USE_WX=		2.6
 USE_AUTOTOOLS=	libtool:15
-CONFIGURE_ENV=	CPPFLAGS="${CPPFLAGS}" LDFLAGS="${LDFLAGS}" \
-		WX_CONFIG="${X11BASE}/bin/wxgtk2-2.6-config"
-MAKE_ENV=	WX_CONFIG="${X11BASE}/bin/wxgtk2-2.6-config"
+CONFIGURE_ENV=	CPPFLAGS="${PTHREAD_CFLAGS}" LDFLAGS="${PTHREAD_LIBS}"
 INSTALLS_SHLIB=	yes
 
 CPPFLAGS=	${PTHREAD_CFLAGS}
Index: math/graphthing/Makefile
===================================================================
RCS file: /home/FreeBSD/pcvs/ports/math/graphthing/Makefile,v
retrieving revision 1.25
diff -u -r1.25 Makefile
--- math/graphthing/Makefile	12 Nov 2005 18:19:32 -0000	1.25
+++ math/graphthing/Makefile	23 Jan 2006 04:08:51 -0000
@@ -14,22 +14,17 @@
 MAINTAINER=	arved@FreeBSD.org
 COMMENT=	A tool that allows you to create, manipulate and study graphs
 
-LIB_DEPENDS=	wx_gtk2_core-2.6.0:${PORTSDIR}/x11-toolkits/wxgtk26
-
 USE_BZIP2=	yes
 USE_GNOME=	gnometarget gtk20
 USE_BISON=	yes
 USE_REINPLACE=	yes
 USE_GMAKE=	yes
+USE_WX=		2.6
 GNU_CONFIGURE=	yes
-CONFIGURE_ENV=	CPPFLAGS="${CPPFLAGS}" LDFLAGS="${LDFLAGS}"
-CONFIGURE_ARGS=	--with-wx-config=${X11BASE}/bin/wxgtk2-2.6-config
+CONFIGURE_ENV=	CPPFLAGS="${PTHREAD_CFLAGS}" LDFLAGS="${PTHREAD_LIBS}"
 MAKEFILE=	GNUmakefile
 
 PLIST_FILES=	bin/graphthing bin/gt
-
-CPPFLAGS=	${PTHREAD_CFLAGS}
-LDFLAGS=	${PTHREAD_LIBS}
 
 do-install:
 	${INSTALL_PROGRAM} ${WRKSRC}/src/graphthing ${PREFIX}/bin
Index: math/wxMaxima/Makefile
===================================================================
RCS file: /home/FreeBSD/pcvs/ports/math/wxMaxima/Makefile,v
retrieving revision 1.4
diff -u -r1.4 Makefile
--- math/wxMaxima/Makefile	29 Nov 2005 12:47:47 -0000	1.4
+++ math/wxMaxima/Makefile	23 Jan 2006 04:08:57 -0000
@@ -14,13 +14,11 @@
 MAINTAINER=	nivit@email.it
 COMMENT=	A wxWidgets GUI for the computer algebra system maxima
 
-LIB_DEPENDS=	wx_gtk2-2.4.0:${PORTSDIR}/x11-toolkits/wxgtk24
 RUN_DEPENDS=	maxima:${PORTSDIR}/math/maxima
 
 USE_GNOME=	libxml2
-WXGTK_CONFIG?=	${X11BASE}/bin/wxgtk2-2.4-config
+USE_WX=		2.4
 GNU_CONFIGURE=	yes
-CONFIGURE_ARGS=	--with-wx-config=${WXGTK_CONFIG} \
-		--program-prefix=
+CONFIGURE_ARGS=	--program-prefix=
 
 .include <bsd.port.mk>
Index: misc/documancer/Makefile
===================================================================
RCS file: /home/FreeBSD/pcvs/ports/misc/documancer/Makefile,v
retrieving revision 1.12
diff -u -r1.12 Makefile
--- misc/documancer/Makefile	12 Jan 2006 12:54:24 -0000	1.12
+++ misc/documancer/Makefile	23 Jan 2006 04:08:51 -0000
@@ -19,11 +19,12 @@
 BUILD_DEPENDS=	wget:${PORTSDIR}/ftp/wget \
 		swish-e:${PORTSDIR}/www/swish-e
 LIB_DEPENDS=	wxmozilla_gtk2-2.4.0:${PORTSDIR}/x11-toolkits/wxmozilla
-RUN_DEPENDS=	${BUILD_DEPENDS} \
-		${PYTHON_SITELIBDIR}/wxPython/__init__.py:${PORTSDIR}/x11-toolkits/py-wxPython24
+RUN_DEPENDS=	${BUILD_DEPENDS}
 
 USE_PYTHON=	2.4
 USE_PERL5=	yes
+USE_WX=		2.4
+USE_WXPYTHON_RUN=	yes
 GNU_CONFIGURE=	yes
 CONFIGURE_ARGS=	--libdir=${PREFIX}/share
 
Index: multimedia/dvdstyler/Makefile
===================================================================
RCS file: /home/FreeBSD/pcvs/ports/multimedia/dvdstyler/Makefile,v
retrieving revision 1.17
diff -u -r1.17 Makefile
--- multimedia/dvdstyler/Makefile	8 Jan 2006 21:50:14 -0000	1.17
+++ multimedia/dvdstyler/Makefile	23 Jan 2006 04:08:57 -0000
@@ -30,8 +30,8 @@
 USE_REINPLACE=	yes
 USE_AUTOTOOLS=	libtool:15:inc
 USE_GMAKE=	yes
+USE_WX=		2.6
 
-CONFIGURE_ARGS=	--with-wx-config=wxgtk2-2.6-config
 CONFIGURE_ENV=	CPPFLAGS="-I${LOCALBASE}/include" LDFLAGS="-L${LOCALBASE}/lib ${PTHREAD_LIBS}"
 
 .include <bsd.port.pre.mk>
Index: multimedia/mkvtoolnix/Makefile
===================================================================
RCS file: /home/FreeBSD/pcvs/ports/multimedia/mkvtoolnix/Makefile,v
retrieving revision 1.27
diff -u -r1.27 Makefile
--- multimedia/mkvtoolnix/Makefile	12 Dec 2005 20:02:36 -0000	1.27
+++ multimedia/mkvtoolnix/Makefile	24 Jan 2006 12:58:30 -0000
@@ -62,13 +62,10 @@
 PLIST_FILES+=	%%DATADIR%%/images/${file}
 .endfor
 
-WXGTK_CONFIG=	wxgtk2u-2.6-config
-
 .include <bsd.port.pre.mk>
 
-.ifndef(WITHOUT_WXGTK)
-LIB_DEPENDS+=	wx_gtk2u_core-2.6.0:${PORTSDIR}/x11-toolkits/wxgtk26-unicode
-
+.ifndef(WITHOUT_WX)
+USE_WX=		2.6
 MAN1+=		mmg.1
 PLIST_FILES+=	bin/mmg
 .endif
@@ -83,10 +80,10 @@
 .endif
 
 pre-everything::
-.ifndef(WITHOUT_WXGTK)
+.ifndef(WITHOUT_WX)
 	@${ECHO_MSG} "===>"
-	@${ECHO_MSG} "===> You can disable wxGTK2 support by defining"
-	@${ECHO_MSG} "===>  WITHOUT_WXGTK"
+	@${ECHO_MSG} "===> You can disable WxWidgets support by defining"
+	@${ECHO_MSG} "===>  WITHOUT_WX"
 	@${ECHO_MSG} "===>"
 .endif
 
@@ -95,8 +92,6 @@
 	@${FIND} ${WRKSRC} -type f -name "Makefile.in" | ${XARGS} \
 		-n 10 ${REINPLACE_CMD} -E -e \
 		's!^(ACLOCAL|AUTOCONF|AUTOMAKE|AUTOHEADER).+$$!\1=${TRUE}!'
-	@${REINPLACE_CMD} -e 's|wx-config|${WXGTK_CONFIG}|' \
-		${WRKSRC}/configure
 	@${REINPLACE_CMD} -e 's|malloc.h|stdlib.h|' \
 		${WRKSRC}/src/common/os.cpp
 
Index: net/amule1/Makefile
===================================================================
RCS file: /home/FreeBSD/pcvs/ports/net/amule1/Makefile,v
retrieving revision 1.17
diff -u -r1.17 Makefile
--- net/amule1/Makefile	5 Nov 2005 05:19:19 -0000	1.17
+++ net/amule1/Makefile	23 Jan 2006 04:08:51 -0000
@@ -14,8 +14,7 @@
 MAINTAINER=	ganael.laplanche@martymac.com
 COMMENT=	The all-platform eMule p2p client
 
-LIB_DEPENDS=	wx_gtk2-2.4.0:${PORTSDIR}/x11-toolkits/wxgtk24 \
-		curl.3:${PORTSDIR}/ftp/curl
+LIB_DEPENDS=	curl.3:${PORTSDIR}/ftp/curl
 
 LATEST_LINK=	aMule1
 CONFLICTS=	aMule-2.* aMule-devel-[0-9]*
@@ -23,12 +22,11 @@
 USE_X_PREFIX=	yes
 USE_GNOME=	gnomehier gnomehack gnomeprefix
 USE_GMAKE=	yes
+USE_WX=		2.4
 GNU_CONFIGURE=	yes
 CONFIGURE_ARGS=	--without-included-gettext \
 		--with-libintl-prefix=${LOCALBASE} \
 		--with-libiconv-prefix=${LOCALBASE} \
-		--with-wx-config=${WX_CONFIG} \
-		--with-wxbase-config=${WX_CONFIG} \
 		--with-curl-config=${CURL_CONFIG} \
 		--program-transform-name="s/ed2k/amule-ed2k-handler/"
 
@@ -38,7 +36,6 @@
 OPTIONS=	OPTIMIZE "Build with optimization" on \
 		STATIC "Enable static linking" off
 
-WX_CONFIG?=	${X11BASE}/bin/wxgtk2-2.4-config
 CURL_CONFIG?=	${LOCALBASE}/bin/curl-config
 
 .include <bsd.port.pre.mk>
Index: net/amule2/Makefile
===================================================================
RCS file: /home/FreeBSD/pcvs/ports/net/amule2/Makefile,v
retrieving revision 1.6
diff -u -r1.6 Makefile
--- net/amule2/Makefile	4 Jan 2006 05:59:25 -0000	1.6
+++ net/amule2/Makefile	23 Jan 2006 04:08:57 -0000
@@ -13,8 +13,7 @@
 MAINTAINER=	ganael.laplanche@martymac.com
 COMMENT=	The all-platform eMule p2p client
 
-LIB_DEPENDS=	wx_gtk2u_core-2.6:${PORTSDIR}/x11-toolkits/wxgtk26-unicode \
-		curl.3:${PORTSDIR}/ftp/curl
+LIB_DEPENDS=	curl.3:${PORTSDIR}/ftp/curl
 #		gd.4:${PORTSDIR}/graphics/gd
 #		png.5:${PORTSDIR}/graphics/png
 
@@ -24,6 +23,8 @@
 USE_X_PREFIX=	yes
 USE_GNOME=	gnomehier gnomehack gnomeprefix
 USE_GMAKE=	yes
+USE_WX=		2.6
+USE_WXUNICODE=	yes
 GNU_CONFIGURE=	yes
 CONFIGURE_TARGET=--build=${MACHINE_ARCH}-portbld-freebsd${OSREL}
 CONFIGURE_ARGS=	--disable-debug \
@@ -48,7 +49,6 @@
 		ALC "Compile aMule Link Creator (+GUI)" on \
 		AMULEDAEMON "Compile aMule daemon version - EXPERIMENTAL" off
 
-WX_CONFIG?=	${X11BASE}/bin/wxgtk2u-2.6-config
 CURL_CONFIG?=	${LOCALBASE}/bin/curl-config
 
 .include <bsd.port.pre.mk>
Index: net/boinc-client/Makefile
===================================================================
RCS file: /home/FreeBSD/pcvs/ports/net/boinc-client/Makefile,v
retrieving revision 1.16
diff -u -r1.16 Makefile
--- net/boinc-client/Makefile	12 Jan 2006 12:54:25 -0000	1.16
+++ net/boinc-client/Makefile	25 Jan 2006 04:53:19 -0000
@@ -25,11 +25,10 @@
 .endif
 
 .if !defined(WITHOUT_X11)
-LIB_DEPENDS+=	iconv:${PORTSDIR}/converters/libiconv \
-		wx_base:${PORTSDIR}/x11-toolkits/wxgtk26 \
-		jpeg:${PORTSDIR}/graphics/jpeg \
+LIB_DEPENDS+=	jpeg:${PORTSDIR}/graphics/jpeg \
 		glut:${PORTSDIR}/graphics/libglut
-USE_XLIBS=	yes
+USE_ICONV=	yes
+USE_WX=		2.6
 .endif
 
 USE_AUTOTOOLS=	automake:19 autoheader:259 autoconf:259 libtool:15
@@ -61,9 +60,7 @@
 USE_RC_SUBR=	boinc.sh
 
 CONFIGURE_ARGS=	--disable-server
-.if !defined(WITHOUT_X11)
-CONFIGURE_ARGS+=	--with-wx-config=wxgtk2-2.6-config
-.else
+.if defined(WITHOUT_X11)
 CONFIGURE_ARGS+=	--with-wx-config=false
 .endif
 CONFIGURE_ENV=	CPPFLAGS=-I${X11BASE}/include CXXFLAGS="-I${X11BASE}/include -I${LOCALBASE}/include"
Index: net/mute-net/Makefile
===================================================================
RCS file: /home/FreeBSD/pcvs/ports/net/mute-net/Makefile,v
retrieving revision 1.16
diff -u -r1.16 Makefile
--- net/mute-net/Makefile	5 Nov 2005 05:20:01 -0000	1.16
+++ net/mute-net/Makefile	23 Jan 2006 04:08:52 -0000
@@ -30,9 +30,7 @@
 PATCH_WRKSRC=	${WRKDIR}/${RELEASE_DIRECTORY}
 
 .ifndef(WITHOUT_GUI)
-LIB_DEPENDS+=	wx_gtk2-2.4.0:${PORTSDIR}/x11-toolkits/wxgtk24
-
-WX_CONFIG?=	${X11BASE}/bin/wxgtk2-2.4-config
+USE_WX=		2.4
 .endif
 
 #
Index: net/py-bittornado/Makefile
===================================================================
RCS file: /home/FreeBSD/pcvs/ports/net/py-bittornado/Makefile,v
retrieving revision 1.21
diff -u -r1.21 Makefile
--- net/py-bittornado/Makefile	12 Jan 2006 12:54:25 -0000	1.21
+++ net/py-bittornado/Makefile	23 Jan 2006 04:08:52 -0000
@@ -49,7 +49,8 @@
 
 # required for GUI
 .ifndef(WITHOUT_GUI)
-RUN_DEPENDS+=	${PYTHON_SITELIBDIR}/wxPython/__init__.py:${PORTSDIR}/x11-toolkits/py-wxPython24
+USE_WX=		2.4
+USE_WXPYTHON_RUN=	yes
 PLIST_SUB+=	GUI=''
 EXTRA_PATCHES+=	${FILESDIR}/extra-gui-patch-setup.py
 .else
Index: net/py-kenosis-bittorrent/Makefile
===================================================================
RCS file: /home/FreeBSD/pcvs/ports/net/py-kenosis-bittorrent/Makefile,v
retrieving revision 1.26
diff -u -r1.26 Makefile
--- net/py-kenosis-bittorrent/Makefile	12 Jan 2006 12:54:25 -0000	1.26
+++ net/py-kenosis-bittorrent/Makefile	23 Jan 2006 04:08:52 -0000
@@ -48,7 +48,8 @@
 
 # required for GUI
 .ifndef(WITHOUT_GUI)
-RUN_DEPENDS+=	${PYTHON_SITELIBDIR}/wxPython/__init__.py:${PORTSDIR}/x11-toolkits/py-wxPython24
+USE_WX=		2.4
+USE_WXPYTHON_RUN=	yes
 
 EXTRA_PATCHES+=	${FILESDIR}/extra-gui-patch-setup.py
 
Index: net/py-mp-random/Makefile
===================================================================
RCS file: /home/FreeBSD/pcvs/ports/net/py-mp-random/Makefile,v
retrieving revision 1.4
diff -u -r1.4 Makefile
--- net/py-mp-random/Makefile	12 Jan 2006 12:54:25 -0000	1.4
+++ net/py-mp-random/Makefile	23 Jan 2006 04:08:52 -0000
@@ -16,9 +16,9 @@
 MAINTAINER=	randomimage-widget@mirrorproject.com
 COMMENT=	Display random Mirror Project images on your desktop
 
-RUN_DEPENDS=	${PYTHON_SITELIBDIR}/wxPython/wxc.so:${PORTSDIR}/x11-toolkits/py-wxPython24
-
 USE_PYTHON=	yes
+USE_WX=		2.4
+USE_WXPYTHON_RUN=	yes
 USE_X_PREFIX=	yes
 NO_BUILD=	yes
 
Index: net/pyslsk/Makefile
===================================================================
RCS file: /home/FreeBSD/pcvs/ports/net/pyslsk/Makefile,v
retrieving revision 1.18
diff -u -r1.18 Makefile
--- net/pyslsk/Makefile	12 Jan 2006 12:54:26 -0000	1.18
+++ net/pyslsk/Makefile	23 Jan 2006 04:08:57 -0000
@@ -14,9 +14,6 @@
 MAINTAINER=	shoesoft@gmx.net
 COMMENT=	Client for SoulSeek filesharing system
 
-BUILD_DEPENDS=	${PYTHON_SITELIBDIR}/wx-2.6-gtk2-ansi/wx/__init__.py:${PORTSDIR}/x11-toolkits/py-wxPython26
-RUN_DEPENDS=	${PYTHON_SITELIBDIR}/wx-2.6-gtk2-ansi/wx/__init__.py:${PORTSDIR}/x11-toolkits/py-wxPython26
-
 .if !defined(WITHOUT_VORBIS)
 RUN_DEPENDS+=	${PYTHON_SITELIBDIR}/ogg/vorbis.so:${PORTSDIR}/audio/py-vorbis
 .endif
@@ -27,6 +24,8 @@
 
 USE_PYTHON=	yes
 USE_PYDISTUTILS=yes
+USE_WX=		2.6
+USE_WXPYTHON=	yes
 
 .include <bsd.port.pre.mk>
 
Index: net/xmule/Makefile
===================================================================
RCS file: /home/FreeBSD/pcvs/ports/net/xmule/Makefile,v
retrieving revision 1.43
diff -u -r1.43 Makefile
--- net/xmule/Makefile	9 Dec 2005 21:51:24 -0000	1.43
+++ net/xmule/Makefile	23 Jan 2006 04:08:59 -0000
@@ -16,8 +16,7 @@
 COMMENT=	Port of eMule eDonkey P2P client using wxWindows class library
 
 BUILD_DEPENDS=	${LOCALBASE}/lib/libcryptopp.a:${PORTSDIR}/security/cryptopp
-LIB_DEPENDS=	expat.5:${PORTSDIR}/textproc/expat2 \
-		wx_gtk2_core-2.6.0:${PORTSDIR}/x11-toolkits/wxgtk26
+LIB_DEPENDS=	expat.5:${PORTSDIR}/textproc/expat2
 RUN_DEPENDS=	wget:${PORTSDIR}/ftp/wget
 
 USE_GETTEXT=	yes
@@ -28,14 +27,14 @@
 		gnomeprefix
 USE_REINPLACE=	yes
 USE_GMAKE=	yes
+USE_WX=		2.6
 GNU_CONFIGURE=	yes
 CONFIGURE_ARGS=	--without-included-gettext \
 		--with-cryptopp-prefix=${LOCALBASE} \
 		--with-gtk-prefix=${X11BASE} \
 		--with-libiconv-prefix=${LOCALBASE} \
 		--with-libintl-prefix=${LOCALBASE} \
-		--enable-debug \
-		--with-wx-config=${WX_CONFIG}
+		--enable-debug
 CONFIGURE_ENV=	CPPFLAGS="${CPPFLAGS} ${PTHREAD_CFLAGS} -I${LOCALBASE}/include" \
 		LDFLAGS="${LDFLAGS} ${PTHREAD_LIBS} -L${LOCALBASE}/lib"
 MAKE_ARGS=	-e
@@ -43,8 +42,6 @@
 
 # for debugging purposes
 STRIP=
-
-WX_CONFIG?=	${X11BASE}/bin/wxgtk2-2.6-config
 
 FILES_ATOLL_PATCH=	src/Preferences.cpp \
 			src/otherfunctions.cpp
Index: science/py-scipy/Makefile
===================================================================
RCS file: /home/FreeBSD/pcvs/ports/science/py-scipy/Makefile,v
retrieving revision 1.4
diff -u -r1.4 Makefile
--- science/py-scipy/Makefile	12 Jan 2006 12:54:26 -0000	1.4
+++ science/py-scipy/Makefile	23 Jan 2006 04:08:52 -0000
@@ -19,14 +19,15 @@
 
 BUILD_DEPENDS=	${PYNUMERIC} \
 		${LOCALBASE}/lib/libdjbfft.a:${PORTSDIR}/math/djbfft \
-		f2py:${PORTSDIR}/lang/f2py \
-		${PYTHON_SITELIBDIR}/wx/__init__.py:${PORTSDIR}/x11-toolkits/py-wxPython24
+		f2py:${PORTSDIR}/lang/f2py
 LIB_DEPENDS=	fftw.2:${PORTSDIR}/math/fftw \
 		atlas.1:${PORTSDIR}/math/atlas
 
 USE_REINPLACE=	yes
 USE_PYTHON=	2.3+
 USE_PYDISTUTILS=	yes
+USE_WX=		2.4
+USE_WXPYTHON_BUILD=	yes
 
 post-patch:
 	@${GREP} -lR "malloc\.h" ${WRKSRC} | ${XARGS} ${REINPLACE_CMD} \
Index: security/hashish/Makefile
===================================================================
RCS file: /home/FreeBSD/pcvs/ports/security/hashish/Makefile,v
retrieving revision 1.27
diff -u -r1.27 Makefile
--- security/hashish/Makefile	5 Nov 2005 05:22:06 -0000	1.27
+++ security/hashish/Makefile	24 Jan 2006 13:02:34 -0000
@@ -18,13 +18,12 @@
 COMMENT=	GUI file and string hashing utility
 
 BUILD_DEPENDS=	${LOCALBASE}/lib/libcryptopp.a:${PORTSDIR}/security/cryptopp
-LIB_DEPENDS=	wx_gtk2-2.4.0:${PORTSDIR}/x11-toolkits/wxgtk24
 
+USE_WX=		2.4
 GNU_CONFIGURE=	yes
 CONFIGURE_TARGET=--build=${MACHINE_ARCH}-portbld-freebsd${OSREL}
 CONFIGURE_ENV=	CPPFLAGS="-I${LOCALBASE}/include" \
-		LDFLAGS="-L${LOCALBASE}/lib" \
-		WX_CONFIG="${X11BASE}/bin/wxgtk2-2.4-config"
+		LDFLAGS="-L${LOCALBASE}/lib"
 USE_GMAKE=	yes
 PLIST_FILES=	bin/hashish
 
Index: security/newpki-client/Makefile
===================================================================
RCS file: /home/FreeBSD/pcvs/ports/security/newpki-client/Makefile,v
retrieving revision 1.3
diff -u -r1.3 Makefile
--- security/newpki-client/Makefile	15 Nov 2005 06:51:01 -0000	1.3
+++ security/newpki-client/Makefile	23 Jan 2006 04:08:52 -0000
@@ -15,21 +15,19 @@
 COMMENT=	C++ PKI client from newpki project
 
 LIB_DEPENDS=	newpki.2:${PORTSDIR}/security/newpki-lib \
-		xml2:${PORTSDIR}/textproc/libxml2 \
-		wx_gtk2-2.4.0:${PORTSDIR}/x11-toolkits/wxgtk24
+		xml2:${PORTSDIR}/textproc/libxml2
 
 WRKSRC=		${WRKDIR}/${PORTNAME}-2.0.0
 
 USE_AUTOTOOLS=	libtool:15
 USE_OPENSSL=	yes
-WX_CONFIG=	${X11BASE}/bin/wxgtk2-2.4-config
+USE_WX=		2.4
 USE_GNOME=	gnometarget
 USE_GMAKE=	yes
 USE_REINPLACE=	yes
 
 CONFIGURE_ENV=	CPPFLAGS="-I${LOCALBASE}/include -I${PREFIX}/include" \
-		LDFLAGS="-L${LOCALBASE}/lib -L${PREFIX}/lib" \
-		WXCONFIG=${WX_CONFIG}
+		LDFLAGS="-L${LOCALBASE}/lib -L${PREFIX}/lib"
 CONFIGURE_ARGS+=	--with-newpki-include=${PREFIX}/include/newpki \
 			--with-newpki-lib=${PREFIX}/lib \
 			--with-libxml2-include=${PREFIX}/include/libxml2
Index: sysutils/bacula-server/Makefile
===================================================================
RCS file: /home/FreeBSD/pcvs/ports/sysutils/bacula-server/Makefile,v
retrieving revision 1.59
diff -u -r1.59 Makefile
--- sysutils/bacula-server/Makefile	19 Jan 2006 20:06:47 -0000	1.59
+++ sysutils/bacula-server/Makefile	23 Jan 2006 04:08:51 -0000
@@ -99,8 +99,8 @@
 # Build wx-console
 .if defined(WITH_WXCONSOLE)
 CONFIGURE_ARGS+=	--enable-wx-console
-LIB_DEPENDS+=		wx_gtk2-2.4.0:${PORTSDIR}/x11-toolkits/wxgtk24
-CONFIGURE_ENV+=		WXCONFIG=${X11BASE}/bin/wxgtk2-2.4-config
+USE_WX=			2.4
+CONFIGURE_ENV+=		WXCONFIG=${WX_CONFIG}
 PLIST_SUB+=		WXCONS=""
 .else
 # We didn't need GTK (it's not possible to put WANT_GNOME in an .if statement!)
Index: textproc/py-dsv/Makefile
===================================================================
RCS file: /home/FreeBSD/pcvs/ports/textproc/py-dsv/Makefile,v
retrieving revision 1.7
diff -u -r1.7 Makefile
--- textproc/py-dsv/Makefile	20 Jul 2005 14:47:49 -0000	1.7
+++ textproc/py-dsv/Makefile	23 Jan 2006 04:08:52 -0000
@@ -17,7 +17,8 @@
 COMMENT=	A Python module to parse or write delimeter-separated (e.g. CSV) files
 
 .if defined(WITH_GUI)
-RUN_DEPENDS=	${PYTHON_SITELIBDIR}/wxPython/__init__.py:${PORTSDIR}/x11-toolkits/py-wxPython24
+USE_WX=		2.4
+USE_WXPYTHON_RUN=	yes
 .endif
 
 USE_PYTHON=	yes
Index: x11-toolkits/py-SciParam/Makefile
===================================================================
RCS file: /home/FreeBSD/pcvs/ports/x11-toolkits/py-SciParam/Makefile,v
retrieving revision 1.6
diff -u -r1.6 Makefile
--- x11-toolkits/py-SciParam/Makefile	12 Jan 2006 12:54:28 -0000	1.6
+++ x11-toolkits/py-SciParam/Makefile	23 Jan 2006 04:08:52 -0000
@@ -19,11 +19,11 @@
 MAINTAINER=	ports@FreeBSD.org
 COMMENT=	Scientific Parameter Dialogs in wxPython based user interfaces
 
-RUN_DEPENDS=	${PYTHON_SITELIBDIR}/wx/__init__.py:${PORTSDIR}/x11-toolkits/py-wxPython24
-
 USE_BZIP2=	yes
 USE_PYTHON=	yes
 USE_PYDISTUTILS=	yes
+USE_WX=		2.4
+USE_WXPYTHON_RUN=	yes
 
 .if !defined(NOPORTDOCS)
 DOCSDIR=	${PREFIX}/share/doc/py-${PORTNAME}
Index: x11-toolkits/py-wxPython24/Makefile
===================================================================
RCS file: /home/FreeBSD/pcvs/ports/x11-toolkits/py-wxPython24/Makefile,v
retrieving revision 1.53
diff -u -r1.53 Makefile
--- x11-toolkits/py-wxPython24/Makefile	20 Jan 2006 00:18:36 -0000	1.53
+++ x11-toolkits/py-wxPython24/Makefile	24 Jan 2006 13:05:12 -0000
@@ -25,7 +25,9 @@
 USE_GMAKE=	yes
 USE_PYTHON=	yes
 USE_PYDISTUTILS=yes
-PYDISTUTILS_BUILDARGS=	WX_CONFIG="${WX_CONFIG}"
+PYDISTUTILS_BUILDARGS=	WX_CONFIG="${WX_CONFIG}" WXPORT="${WXPORT}"
+USE_WX=		2.4
+WXPORT=		gtk2
 DEMO_DIR=	${PYTHONPREFIX_SITELIBDIR}/wxPython/demo
 
 post-build:
Index: x11-toolkits/py-wxPython26/Makefile
===================================================================
RCS file: /home/FreeBSD/pcvs/ports/x11-toolkits/py-wxPython26/Makefile,v
retrieving revision 1.55
diff -u -r1.55 Makefile
--- x11-toolkits/py-wxPython26/Makefile	12 Jan 2006 12:54:29 -0000	1.55
+++ x11-toolkits/py-wxPython26/Makefile	25 Jan 2006 04:55:55 -0000
@@ -29,6 +29,8 @@
 			WX_CONFIG="${WX_CONFIG}" \
 			WXPORT="${WXPORT}"
 PYDISTUTILS_CONFIGUREARGS=	${PYDISTUTILS_BUILDARGS}
+USE_WX=		2.6
+USE_WXCONTRIB=	yes
 DEMO_DIR=	${PYTHONPREFIX_SITELIBDIR}/wxPython/demo
 WXPORT=		gtk2
 
@@ -70,17 +72,6 @@
 . endif
 .endif
 
-# build dependencies
-.if defined(WITH_UNICODE)
-BUILD_DEPENDS+=	${WX_CONFIG}:${PORTSDIR}/x11-toolkits/wxgtk26-unicode
-
-WX_CONFIG=	${X11BASE}/bin/wxgtk2u-2.6-config
-.else
-BUILD_DEPENDS+=	${WX_CONFIG}:${PORTSDIR}/x11-toolkits/wxgtk26
-
-WX_CONFIG=	${X11BASE}/bin/wxgtk2-2.6-config
-.endif
-
 # wx version
 .if exists(${WX_CONFIG})
 WX_VERSION!=	${WX_CONFIG} --release
@@ -105,8 +96,7 @@
 INSTALLS_SHLIB=	yes
 
 . if defined(WITH_UNICODE)
-LIB_DEPENDS+=	wx_gtk2u_core-2.6.0:${PORTSDIR}/x11-toolkits/wxgtk26-unicode \
-		wx_gtk2u_gizmos-2.6.0:${PORTSDIR}/x11-toolkits/wxgtk26-unicode-contrib
+USE_WXUNICODE=	yes
 
 PKGNAMESUFFIX=	-unicode
 
@@ -114,8 +104,6 @@
 			UNICODE=1
 WX_PYTHON_DIR=	wx-${WX_VERSION}-${WXPORT}-unicode
 . else
-LIB_DEPENDS+=	wx_gtk2_core-2.6.0:${PORTSDIR}/x11-toolkits/wxgtk26 \
-		wx_gtk2_gizmos-2.6.0:${PORTSDIR}/x11-toolkits/wxgtk26-contrib
 
 WX_PYTHON_DIR=wx-${WX_VERSION}-${WXPORT}-ansi
 . endif # defined(WITH_UNICODE)
Index: x11-toolkits/py-wxPython26-common/Makefile
===================================================================
RCS file: /home/FreeBSD/pcvs/ports/x11-toolkits/py-wxPython26-common/Makefile,v
retrieving revision 1.2
diff -u -r1.2 Makefile
--- x11-toolkits/py-wxPython26-common/Makefile	9 Oct 2005 09:43:39 -0000	1.2
+++ x11-toolkits/py-wxPython26-common/Makefile	23 Jan 2006 04:08:57 -0000
@@ -11,6 +11,7 @@
 
 PLIST=	${.CURDIR}/pkg-plist
 
-LIB_DEPENDS+=  wx_gtk2_stc-2.6.0:${PORTSDIR}/x11-toolkits/wxgtk26-contrib
+USE_WX=		2.6
+USE_WXCONTRIB=	yes
 
 .include "${MASTERDIR}/Makefile"
Index: x11-toolkits/ruby-wx/Makefile
===================================================================
RCS file: /home/FreeBSD/pcvs/ports/x11-toolkits/ruby-wx/Makefile,v
retrieving revision 1.9
diff -u -r1.9 Makefile
--- x11-toolkits/ruby-wx/Makefile	5 Nov 2005 05:19:33 -0000	1.9
+++ x11-toolkits/ruby-wx/Makefile	23 Jan 2006 04:08:57 -0000
@@ -17,9 +17,8 @@
 MAINTAINER=	q@galgenberg.net
 COMMENT=	Ruby bindings for wxWindows (aka wxWidgets)
 
-LIB_DEPENDS=	wx_gtk2-2.4:${PORTSDIR}/x11-toolkits/wxgtk24 \
-		wx_gtk2_xrc-2.4:${PORTSDIR}/x11-toolkits/wxgtk24-contrib
-
+USE_WX=		2.4
+USE_WXCONTRIB=	yes
 USE_ICONV=	yes
 USE_RUBY=	yes
 USE_RUBY_EXTCONF=	yes
@@ -37,7 +36,6 @@
 post-patch:
 	@${FIND} ${WRKSRC} -name *.t | ${XARGS} ${REINPLACE_CMD} -e 's|
||'
 	@${REINPLACE_CMD} -E 's/ html(processor|window).o//' ${WRKSRC}/depend
-	@${REINPLACE_CMD} -e 's/wx-config/wxgtk2-2.4-config/' ${WRKSRC}/extconf.rb
 
 .if !defined(NOPORTDOCS)
 post-install:
Index: x11-toolkits/wxgtk24-contrib/Makefile
===================================================================
RCS file: /home/FreeBSD/pcvs/ports/x11-toolkits/wxgtk24-contrib/Makefile,v
retrieving revision 1.8
diff -u -r1.8 Makefile
--- x11-toolkits/wxgtk24-contrib/Makefile	5 Nov 2005 05:19:08 -0000	1.8
+++ x11-toolkits/wxgtk24-contrib/Makefile	23 Jan 2006 04:08:57 -0000
@@ -12,7 +12,7 @@
 
 WXGTK_FLAVOR=	gtk2-contrib
 MASTERDIR=	${.CURDIR}/../wxgtk24
-LIB_DEPENDS=	wx_gtk2-2.4.0:${PORTSDIR}/x11-toolkits/wxgtk24
+USE_WX=		2.4
 
 BUILD_WRKSRC=	${WRKSRC}/contrib/src
 INSTALL_WRKSRC=	${BUILD_WRKSRC}
Index: x11-toolkits/wxgtk26/Makefile
===================================================================
RCS file: /home/FreeBSD/pcvs/ports/x11-toolkits/wxgtk26/Makefile,v
retrieving revision 1.21
diff -u -r1.21 Makefile
--- x11-toolkits/wxgtk26/Makefile	18 Jan 2006 08:27:03 -0000	1.21
+++ x11-toolkits/wxgtk26/Makefile	23 Jan 2006 04:08:57 -0000
@@ -74,10 +74,10 @@
 .if ${WXGTK_FLAVOR} != "gtk2-contrib-common"
 RUN_DEPENDS=	${X11BASE}/include/wx-2.6/wx/stc/stc.h:${PORTSDIR}/x11-toolkits/wxgtk26-contrib-common
 
+USE_WX=		2.6
+
 .if ${WXGTK_FLAVOR:M*-unicode*} != ""
-LIB_DEPENDS+=	wx_baseu-2.6.0:${PORTSDIR}/x11-toolkits/wxgtk26-unicode
-.else
-LIB_DEPENDS+=	wx_base-2.6.0:${PORTSDIR}/x11-toolkits/wxgtk26
+USE_WXUNICODE=	yes
 .endif
 
 pre-configure:
Index: x11-toolkits/wxmozilla/Makefile
===================================================================
RCS file: /home/FreeBSD/pcvs/ports/x11-toolkits/wxmozilla/Makefile,v
retrieving revision 1.19
diff -u -r1.19 Makefile
--- x11-toolkits/wxmozilla/Makefile	12 Jan 2006 12:54:30 -0000	1.19
+++ x11-toolkits/wxmozilla/Makefile	27 Jan 2006 04:01:44 -0000
@@ -16,17 +16,15 @@
 MAINTAINER=	ports@FreeBSD.org
 COMMENT=	Embedding Mozilla in wxWidgets
 
-BUILD_DEPENDS=	${PYTHON_SITELIBDIR}/wxPython/__init__.py:${PORTSDIR}/x11-toolkits/py-wxPython24
-LIB_DEPENDS=	wx_gtk2-2.4.0:${PORTSDIR}/x11-toolkits/wxgtk24
 RUN_DEPENDS=	${BUILD_DEPENDS}
 
 USE_PYTHON=	yes
 USE_GNOME=	gnomehack gnometarget
 USE_GECKO=	mozilla
-WXGTK_CONFIG?=	${X11BASE}/bin/wxgtk2-2.4-config
 USE_AUTOTOOLS=	libtool:15
-CONFIGURE_ARGS=	--with-wx-config=${WXGTK_CONFIG} --enable-python
 USE_REINPLACE=	yes
+USE_WX=		2.4
+USE_WXPYTHON=	yes
 INSTALLS_SHLIB=	yes
 
 .include <bsd.port.pre.mk>
Comment 6 Kris Kennaway 2006-05-23 23:09:03 UTC
Dear Alejandro,

What is the status of this PR?  A few months back Mark posted an
updated patch for your review, but this has probably also become
stale.  If you are still interested in this, please review and update
the patch and we can try to include it with the next bsd.port.mk
build.

Kris
Comment 7 Alejandro Pulver freebsd_committer 2006-05-24 14:58:40 UTC
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

On Tue, 23 May 2006 18:09:03 -0400
Kris Kennaway <kris@obsecurity.org> wrote:

> Dear Alejandro,
> 
> What is the status of this PR?  A few months back Mark posted an
> updated patch for your review, but this has probably also become
> stale.  If you are still interested in this, please review and update
> the patch and we can try to include it with the next bsd.port.mk
> build.
> 
> Kris
> 


Hello.

I have redesigned the interface, so it has more features. I am going to
start making the patches and testing them in my i386 4/5/6 Tinderbox,
then I am going to send the follow-up.

I think they will be ready in a few days.

Best Regards,
Ale
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.3 (FreeBSD)

iD8DBQFEdGaYiV05EpRcP2ERAsjmAKCUgQXT556laareJ6BiphgzEbrzVQCfeQnN
3N+TJRNOFWb8H5jBKcQdYHU=
=p30h
-----END PGP SIGNATURE-----
Comment 8 Mark Linimon 2006-06-03 20:25:29 UTC
Can you provide us with a copy of this in cleartext?

mcl
Comment 9 Alejandro Pulver freebsd_committer 2006-06-03 21:56:00 UTC
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

On Sat, 3 Jun 2006 14:25:29 -0500
linimon@lonesome.com (Mark Linimon) wrote:

> Can you provide us with a copy of this in cleartext?
> 
> mcl


Sure, sorry.

- ----------
Hello.

I have redesigned the interface, so it has more features. I am going to
start making the patches and testing them in my i386 4/5/6 Tinderbox,
then I am going to send the follow-up.

I think they will be ready in a few days.

Best Regards,
Ale
- ----------

I just have a little problem with complex version specifications (2.2+,
2.4-2.6, etc), but as there are only 2 versions of WxWidgets I think I
will remove this feature. I could implement it later if it's needed.

Best Regards,
Ale
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.3 (FreeBSD)

iD8DBQFEgfdwiV05EpRcP2ERAnRoAJsHdg+OVKYrRPwsUmqhmSUlHgk4IACfeGHT
DNZRx8IYRgO+b3zgH4xL+X0=
=MoxA
-----END PGP SIGNATURE-----
Comment 10 Alejandro Pulver freebsd_committer 2006-06-14 01:50:47 UTC
LS0tLS1CRUdJTiBQR1AgU0lHTkVEIE1FU1NBR0UtLS0tLQ0KSGFzaDogU0hBMQ0KDQpIZWxsby4N
Cg0KSGVyZSBpcyB0aGUgbmV3IGRpZmYuDQoNClRoZSBwb3J0cyB3aGljaCBoYXZlIFVTRV9XWCBz
ZXQgdG8gIjIuNC0yLjYiIGNhbiBiZSBjb21waWxlZCB3aXRoDQpXSVRIX1dYX1ZFUj0yLjQgKGJ5
IGRlZmF1bHQgdGhleSB1c2UgMi42KS4NCg0KVGhlIHBvcnRzIHdoaWNoIGhhdmUgVVNFX1dYIHNl
dCB0byAiMi42IiBjYW4gYmUgY29tcGlsZWQgd2l0aA0KV0lUSF9VTklDT0RFPXllcyAoYnkgZGVm
YXVsdCwgdGhleSBkb24ndCB1c2UgVW5pY29kZSkuDQoNCi0gLS0tLS0tLS0tLSBCRUdJTiAtLS0t
LS0tLS0tDQpJbmRleDogTWsvYnNkLnBvcnQubWsNCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0NClJDUyBmaWxlOiAvaG9t
ZS9wY3ZzL3BvcnRzL01rL2JzZC5wb3J0Lm1rLHYNCnJldHJpZXZpbmcgcmV2aXNpb24gMS41MzMN
CmRpZmYgLXUgLXIxLjUzMyBic2QucG9ydC5taw0KLSAtLS0gTWsvYnNkLnBvcnQubWsJMjMgTWF5
IDIwMDYgMjE6NTM6MTggLTAwMDAJMS41MzMNCisrKyBNay9ic2QucG9ydC5tawkxMyBKdW4gMjAw
NiAyMzoyMjoxMCAtMDAwMA0KQEAgLTEzOTMsNiArMTM5MywxMCBAQA0KIC5pbmNsdWRlICIke1BP
UlRTRElSfS9Nay9ic2QuZ25vbWUubWsiDQogLmVuZGlmDQogDQorLmlmIGRlZmluZWQoV0FOVF9X
WCkgfHwgZGVmaW5lZChVU0VfV1gpIHx8IGRlZmluZWQoVVNFX1dYX05PVCkNCisuaW5jbHVkZSAi
JHtQT1JUU0RJUn0vTWsvYnNkLnd4Lm1rIg0KKy5lbmRpZg0KKw0KIC5pZiBkZWZpbmVkKFdBTlRf
R1NUUkVBTUVSKSB8fCBkZWZpbmVkKFVTRV9HU1RSRUFNRVIpIHx8IGRlZmluZWQoVVNFX0dTVFJF
QU1FUjgwKQ0KIC5pbmNsdWRlICIke1BPUlRTRElSfS9Nay9ic2QuZ3N0cmVhbWVyLm1rIg0KIC5l
bmRpZg0KQEAgLTE4NDEsNiArMTg0NSwxMSBAQA0KIC5pbmNsdWRlICIke1BPUlRTRElSfS9Nay9i
c2QuZ25vbWUubWsiDQogLmVuZGlmDQogDQorLmlmIGRlZmluZWQoV0FOVF9XWCkgfHwgZGVmaW5l
ZChVU0VfV1gpIHx8IGRlZmluZWQoVVNFX1dYX05PVCkNCisuaW5jbHVkZSAiJHtQT1JUU0RJUn0v
TWsvYnNkLnd4Lm1rIg0KKy5lbmRpZg0KKw0KKw0KIC5pZiBleGlzdHMoJHtQT1JUU0RJUn0vLi4v
TWFrZWZpbGUuaW5jKQ0KIC5pbmNsdWRlICIke1BPUlRTRElSfS8uLi9NYWtlZmlsZS5pbmMiDQog
VVNFX1NVQk1BS0U9CXllcw0KSW5kZXg6IE1rL2JzZC53eC5taw0KPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQ0KUkNTIGZp
bGU6IE1rL2JzZC53eC5taw0KZGlmZiAtTiBNay9ic2Qud3gubWsNCi0gLS0tIC9kZXYvbnVsbAkx
IEphbiAxOTcwIDAwOjAwOjAwIC0wMDAwDQorKysgTWsvYnNkLnd4Lm1rCTEzIEp1biAyMDA2IDIz
OjIyOjExIC0wMDAwDQpAQCAtMCwwICsxLDQ5OSBAQA0KKyMtKi0gbW9kZTogbWFrZWZpbGU7IHRh
Yi13aWR0aDogNDsgLSotDQorIyBleDp0cz00DQorIw0KKyMgJEZyZWVCU0QkDQorIw0KKyMgYnNk
Lnd4Lm1rIC0gU3VwcG9ydCBmb3IgV3hXaWRnZXRzIGJhc2VkIHBvcnRzLg0KKyMNCisjIENyZWF0
ZWQgYnk6IEFsZWphbmRybyBQdWx2ZXIgPGFsZXB1bHZlckBGcmVlQlNELm9yZz4NCisjDQorIyBQ
bGVhc2UgdmlldyBtZSB3aXRoIDQgY29sdW1uIHRhYnMhDQorIw0KKyMgVGhlIGZvbGxvd2luZyB2
YXJpYWJsZXMgY2FuIGJlIGRlZmluZWQgaW4gYSBwb3J0IHRoYXQgdXNlcyB0aGUgV3hXaWRnZXRz
DQorIyBsaWJyYXJ5LCBjb250cmlidXRlZCBsaWJyYXJpZXMsIFd4UHl0aG9uIGFuZC9vciBtb3Jl
IFd4V2lkZ2V0cyByZWxhdGVkDQorIyBjb21wb25lbnRzICh3aXRoIHJ1biBhbmQvb3IgYnVpbGQg
ZGVwZW5kZW5jaWVzKS4gSXQgY2FuIGJlIHVzZWQgYWZ0ZXIgYW5kL29yDQorIyBiZWZvcmUgYnNk
LnBvcnQucHJlLm1rLCBidXQgUHl0aG9uIGNvbXBvbmVudHMgd2lsbCBvbmx5IHdvcmsgaWYgUHl0
aG9uDQorIyB2YXJpYWJsZXMgKGUuZy4gVVNFX1BZVEhPTikgYXJlIGRlZmluZWQgYmVmb3JlIGl0
ICh0aGlzIGlzIGEgYnNkLnB5dGhvbi5taw0KKyMgbGltaXRhdGlvbikuDQorIyBVU0VfV1gJCS0g
U2V0IHRvIHRoZSBsaXN0IG9mIFd4V2lkZ2V0cyB2ZXJzaW9ucyB0aGF0IGNhbiBiZSB1c2VkIGJ5
DQorIwkJCQkgIHRoZSBwb3J0LiBUaGUgc3ludGF4IGFsbG93cyB0aGUgZm9sbG93aW5nIGVsZW1l
bnRzOg0KKyMJCQkJICAtIFNpbmdsZSB2ZXJzaW9uIChlLmcuICIyLjQiKS4NCisjCQkJCSAgLSBS
YW5nZSBvZiB2ZXJzaW9ucyAoZS5nLiAiMi40LTIuNiIpLiBNdXN0IGJlIGFzY2VuZGluZy4NCisj
CQkJCSAgLSBQYXJ0aWFsIHJhbmdlOiBzaW5nbGUgdmVyc2lvbiBhbmQgdXBwZXIgKGUuZy4gIjIu
NCsiKS4NCisjCQkJCSAgLSBQYXJ0aWFsIHJhbmdlOiBzaW5nbGUgdmVyc2lvbiBhbmQgbG93ZXIg
KGUuZy4gIi0yLjYiKS4NCisjCQkJCSAgTXVsdGlwbGUgZWxlbWVudHMgY2FuIGJlIHNwZWNpZmll
ZCBzZXBhcmF0ZWQgYnkgc3BhY2VzLg0KKyMgVVNFX1dYX05PVAktIFNldCB0byB0aGUgbGlzdCBv
ZiBXeFdpZGdldHMgdmVyc2lvbnMgdGhhdCBjYW4ndCBiZSB1c2VkIGJ5DQorIwkJCQkgIHRoZSBw
b3J0LiBJbiBvdGhlciB3b3JkcywgaXQgcmVtb3ZlcyBzb21lIHZlcnNpb25zIGZyb20NCisjCQkJ
CSAgVVNFX1dYLiBJZiB0aGUgbGF0dGVyIGlzIG5vdCBkZWZpbmVkLCBpdCB3aWxsIGhhdmUgdGhl
IHZhbHVlDQorIwkJCQkgIG9mIGFsbCB0aGUgcG9zc2libGUgdmVyc2lvbnMuIFRoZSBzeW50YXgg
aXMgbGlrZSBVU0VfV1guDQorIyBXWF9DT01QUwkJLSBTZXQgdG8gdGhlIGxpc3Qgb2YgV3hXaWRn
ZXRzIGNvbXBvbmVudHMgdGhlIHBvcnQgdXNlcy4NCisjCQkJCSAgU2V2ZXJhbCBjb21wb25lbnRz
IGNhbiBiZSBzcGVjaWZpZWQgc2VwYXJhdGVkIGJ5IHNwYWNlcy4gQnkNCisjCQkJCSAgZGVmYXVs
dCBpdCB3aWxsIGhhdmUgdGhlIHZhbHVlIG9mICJ3eCIuIFN1ZmZpeGVzIGluIHRoZSBmb3JtDQor
IwkJCQkgICJfeHh4IiBtYXkgYmUgYWRkZWQgdG8gdGhlIGNvbXBvbmVudHMgdG8gZGV0ZXJtaW5l
IHRoZQ0KKyMJCQkJICBkZXBlbmRlbmN5IHR5cGUuDQorIwkJCQkgIFRoZSBhdmFpbGFibGUgY29t
cG9uZW50cyBhcmU6DQorIwkJCQkgIHd4CQkJLSBUaGUgV3hXaWRnZXRzIGxpYnJhcnkuDQorIwkJ
CQkgIGNvbnRyaWIJCS0gVGhlIFd4V2lkZ2V0cyBjb250cmlidXRlZCBsaWJyYXJpZXMuDQorIwkJ
CQkgIHB5dGhvbgkJLSBUaGUgV3hXaWRnZXRzIEFQSSBmb3IgUHl0aG9uIChXeFB5dGhvbikuDQor
IwkJCQkgIG1vemlsbGEJCS0gV3hNb3ppbGxhIChvbmx5IGZvciAyLjQpLg0KKyMJCQkJICBzdmcJ
CQktIFd4U1ZHIChvbmx5IGZvciAyLjYpLg0KKyMJCQkJICBUaGUgYXZhaWxhYmxlIGRlcGVuZGVu
Y3kgdHlwZXMgYXJlOg0KKyMJCQkJICBidWlsZAkJCS0gUmVxdWlyZXMgY29tcG9uZW50IGZvciBi
dWlsZGluZy4NCisjCQkJCSAgbGliCQkJLSBSZXF1aXJlcyBjb21wb25lbnQgZm9yIGJ1aWxkaW5n
IGFuZCBydW5uaW5nLg0KKyMJCQkJICBydW4JCQktIFJlcXVpcmVzIGNvbXBvbmVudCBmb3IgcnVu
bmluZy4NCisjCQkJCSAgSWYgbm8gc3VmZml4IGlzIHByZXNlbnQgdGhlbiAibGliIiB3aWxsIGJl
IHVzZWQuDQorIyBXWF9DT05GX0FSR1MJLSBTZXQgdG8gImFic29sdXRlIiBvciAicmVsYXRpdmUi
IGlmIHRoZSBwb3J0IG5lZWRzIGNvbmZpZ3VyZQ0KKyMJCQkJICBhcmd1bWVudHMgaW4gYWRkaXRp
b24gdG8gdGhlIFdYX0NPTkZJRyBlbnZpcm9ubWVudCB2YXJpYWJsZS4NCisjCQkJCSAgSXQgZGV0
ZXJtaW5lcyB0aGUgdHlwZSBvZiBwYXJhbWV0ZXJzIHRoYXQgaGF2ZSB0byBiZSBwYXNzZWQNCisj
CQkJCSAgdG8gdGhlIGNvbmZpZ3VyZSBzY3JpcHQuIEluIHRoZSBmaXJzdCBjYXNlIGl0IGFkZHMN
CisjCQkJCSAgIi0td2l0aC13eC1jb25maWc9JHtXWF9DT05GSUd9IiAoYWJzb2x1dGUgcGF0aCBv
ZiBXWF9DT05GSUcpLA0KKyMJCQkJICBhbmQgaW4gc2Vjb25kIG9uZSAiLS13aXRoLXd4PSR7WDEx
QkFTRX0iIGFuZA0KKyMJCQkJICAiLS13aXRoLXd4LWNvbmZpZz0ke1dYX0NPTkZJRzpUfSAocHJl
Zml4IGFuZCBuYW1lKS4NCisjIFdYX1VOSUNPREUJLSBTZXQgdG8gInllcyIgKG9yIGFueXRoaW5n
KSBpZiB0aGUgcG9ydCBuZWVkcyB0aGUgVW5pY29kZQ0KKyMJCQkJICB2ZXJzaW9uIG9mIHRoZSBX
eFdpZGdldHMgbGlicmFyeSBhbmQvb3IgY29udHJpYnV0ZWQNCisjCQkJCSAgbGlicmFyaWVzLg0K
KyMJCQkJICBOT1RFOiB0aGlzIHNob3VsZCBOT1QgYmUgdXNlZCBmb3IgcG9ydHMgdGhhdCBjYW4g
YmUgY29tcGlsZWQNCisjCQkJCSAgd2l0aCBVbmljb2RlIG9yIG5vdCwgYnV0IGZvciB0aGUgb25l
cyB0aGF0IHJlcXVpcmUgaXQuIFRoZQ0KKyMJCQkJICBmaXJzdCBjYXNlIGlzIGhhbmRsZWQgYnkg
dGhlIHVzZXIgdmFyaWFibGUgV0lUSF9VTklDT0RFLg0KKyMgV0FOVF9XWAkJLSBTZXQgdG8gInll
cyIgb3IgYSB2YWxpZCBzaW5nbGUgdmVyc2lvbiAobm8gcmFuZ2VzLCBldGMpLg0KKyMJCQkJICBJ
biBib3RoIGNhc2VzIGl0IHdpbGwgZGV0ZWN0IHRoZSBpbnN0YWxsZWQgV3hXaWRnZXRzDQorIwkJ
CQkgIGNvbXBvbmVudHMgYW5kIGFkZCB0aGVtIHRvIHRoZSB2YXJpYWJsZSBIQVZFX1dYLiBJZiBh
DQorIwkJCQkgIHZlcnNpb24gaXMgc2VsZWN0ZWQsIEhBVkVfV1ggd2lsbCBjb250YWluIGEgbGlz
dCBvZg0KKyMJCQkJICBjb21wb25lbnRzIGluIHRoZSBvdGhlciBjYXNlIGl0IHdpbGwgY29udGFp
biBhIGxpc3Qgb2YNCisjCQkJCSAgImNvbXBvbmVudC12ZXJzaW9uIiBwYWlycyAoZS5nLiB3eC0y
LjYsIGNvbnRyaWItMi40LCBldGMpLg0KKyMJCQkJICBJdCBoYXMgdG8gYmUgdXNlZCBiZWZvcmUg
YnNkLnBvcnQucHJlLm1rLg0KKyMgV0FOVF9XWF9WRVIJLSBTZXQgdG8gdGhlIHByZWZlcmVkIFd4
V2lkZ2V0cyB2ZXJzaW9uIGZvciB0aGUgcG9ydC4gSXQgbXVzdA0KKyMJCQkJICBiZSBwcmVzZW50
IGluIFVTRV9XWCBvciBtaXNzaW5nIGluIFVTRV9XWF9OT1QuIFRoaXMgaXMNCisjCQkJCSAgb3Zl
cnJpZGVuIGJ5IHRoZSB1c2VyIHZhcmlhYmxlIFdJVEhfV1hfVkVSIGlmIHNldC4gSXQgY2FuDQor
IwkJCQkgIGNvbnRhaW4gbXVsdGlwbGUgdmVyc2lvbnMgaW4gb3JkZXIgb2YgcHJlZmVyZW5jZSAo
bGFzdCBvbmVzDQorIwkJCQkgIGFyZSB0cmllZCBmaXJzdCkuDQorIw0KKyMgVGhlIGZvbGxvd2lu
ZyB2YXJpYWJsZXMgYXJlIGludGVuZGVkIGZvciB0aGUgdXNlciBhbmQgY2FuIGJlIGRlZmluZWQg
aW4NCisjIG1ha2UuY29uZi4NCisjIFdJVEhfVU5JQ09ERQktIElmIHRoZSB2YXJpYWJsZSBpcyBk
ZWZpbmVkIGFuZCBib3RoIHRoZSBydW5uaW5nIEZyZWVCU0QNCisjCQkJCSAgdmVyc2lvbiBhbmQg
dGhlIHNlbGVjdGVkIFd4V2lkZ2V0cyB2ZXJzaW9uIHN1cHBvcnQgVW5pY29kZSwNCisjCQkJCSAg
dGhlbiB0aGUgVW5pY29kZSB2ZXJzaW9uIG9mIFd4V2lkZ2V0cyBpcyB1c2VkLg0KKyMgV0lUSF9X
WF9WRVIJLSBJZiB0aGUgdmFyaWFibGUgaXMgZGVmaW5lZCB0aGUgdmVyc2lvbiBpdCBjb250YWlu
cyB3aWxsIGJlDQorIwkJCQkgIHVzZWQgYXMgdGhlIGRlZmF1bHQgZm9yIHBvcnRzIHRoYXQgc3Vw
cG9ydCBtdWx0aXBsZQ0KKyMJCQkJICBXeFdpZGdldHMgdmVyc2lvbnMuIEl0IGNhbiBjb250YWlu
IG11bHRpcGxlIHZlcnNpb25zLCBhbmQNCisjCQkJCSAgdGhlIGxhc3QgcG9zc2libGUgb25lIHdp
bGwgYmUgdXNlZC4NCisjDQorIyBUaGUgZm9sbG93aW5nIHZhcmlhYmxlcyBhcmUgZGVmaW5lZCBi
eSB0aGlzIGZpbGUsIHRvIGJlIHJlYWQgZnJvbSB0aGUgcG9ydC4NCisjIFdYX1VOSUNPREUJLSBJ
ZiB0aGlzIHZhcmlhYmxlIGlzIG5vdCBkZWZpbmVkIGJ5IHRoZSBwb3J0ICh3aGljaCBtZWFucyBp
dA0KKyMJCQkJICByZXF1aXJlcyB0aGUgVW5pY29kZSB2ZXJzaW9uIG9mIFd4V2lkZ2V0cyksIGl0
IHdpbGwgYmUNCisjCQkJCSAgZGVmaW5lZCBpbiB0aGUgY2FzZSB0aGUgVW5pY29kZSB2ZXJzaW9u
IGlzIHVzZWQgKGVuYWJsZWQgYnkNCisjCQkJCSAgdGhlIHVzZXIgdGhyb3VnaCBXSVRIX1VOSUNP
REUpLg0KKyMgV1hfVkVSU0lPTgktIFRoZSBXeFdpZGdldHMgdmVyc2lvbiB0aGF0IGlzIGdvaW5n
IHRvIGJlIHVzZWQuDQorIyBIQVZFX1dYCQktIFRoZSBsaXN0IG9mIFd4V2lkZ2V0cyBjb21wb25l
bnRzIGluc3RhbGxlZCwgaWYgV0FOVF9XWCB3YXMNCisjCQkJCSAgZGVmaW5lZC4gVGhlIGNvbXBv
bmVudHMgd2lsbCBoYXZlIHZlcnNpb24gc3VmZml4IGlmIGl0IHdhcw0KKyMJCQkJICBzZXQgdG8g
InllcyIpLg0KKyMNCisjIEV4YW1wbGVzOg0KKyMgLSBBIHBvcnQgdGhhdCBuZWVkcyBXeFdpZGdl
dHMgMi42IGFuZCBjb250cmlidXRlZCBsaWJyYXJpZXMgd2l0aCBVbmljb2RlLg0KKyMJVVNFX1dY
PQkJMi42DQorIwlXWF9DT01QUz0Jd3ggY29udHJpYg0KKyMJV1hfVU5JQ09ERT0JeWVzDQorIyAt
IEEgcG9ydCB0aGF0IG5lZWRzIFd4UHl0aG9uIDIuNCBmb3IgcnVubmluZy4NCisjCVVTRV9QWVRI
T049CXllcw0KKyMJVVNFX1dYPQkJMi40DQorIwlXWF9DT01QUz0JcHl0aG9uX3J1bg0KKyMgLSBB
IHBvcnQgdGhhdCBuZWVkcyBXeFB5dGhvbiAyLjQgb3IgMi42IGZvciBidWlsZGluZy4NCisjCVVT
RV9QWVRIT049CXllcw0KKyMJVVNFX1dYPQkJMi40IDIuNg0KKyMJV1hfQ09NUFM9CXB5dGhvbl9i
dWlsZA0KKyMgLSBBIHBvcnQgdGhhdCBuZWVkcyBXeFdpZGdldHMgdmVyc2lvbiAyLjQgb3IgaGln
aGVyIGFuZCBjb250cmlidXRlZA0KKyMJbGlicmFyaWVzLg0KKyMJVVNFX1dYPQkJMi40Kw0KKyMJ
V1hfQ09NUFM9CXd4IGNvbnRyaWINCisjIC0gQSBwb3J0IHRoYXQgbmVlZHMgV3hXaWRnZXRzIG9m
IGFueSB2ZXJzaW9uIG90aGVyIHRoYW4gMi40Lg0KKyMJVVNFX1dYX05PVD0JMi40DQorIw0KKyMg
Tm90ZXM6DQorIyAtIFRoZSB2ZXJzaW9uIGlzIHByb2Nlc3NlZCBvbiBlYWNoIGluY2x1c2lvbiwg
c28gVVNFX1dYLCBVU0VfV1hfTk9UIGFuZA0KKyMJV1hfVU5JQ09ERSBjYW4gYmUgbW9kaWZpZWQg
YmVmb3JlIGFuZCBhZnRlciBpbmNsdWRpbmcgYnNkLnBvcnQucHJlLm1rLg0KKyMJQWZ0ZXIgZGV0
ZXJtaW5pbmcgdGhlIHZlcnNpb24gYW5kIFVuaWNvZGUsIFdYX0NPTkZJRyB3aWxsIGJlIGRlZmlu
ZWQuDQorIw0KKw0KK1dYX0luY2x1ZGVfTUFJTlRBSU5FUj0JYWxlcHVsdmVyQEZyZWVCU0Qub3Jn
DQorDQorIw0KKyMgR2xvYmFsIGRlZmluaXRpb25zLg0KKyMNCisNCisuaWYgIWRlZmluZWQoX1dY
X0RlZmluaXRpb25zX0RvbmUpDQorX1dYX0RlZmluaXRpb25zX0RvbmU9CXllcw0KKw0KKyMNCisj
IENvbW1vbiB2YXJpYWJsZXM6DQorIyBfV1hfQ09NUFNfQUxMCQkJLSBMaXN0IG9mIHZhbGlkIGNv
bXBvbmVudHMuDQorIyBfV1hfREVQX1RZUEVTX0FMTAkJLSBMaXN0IG9mIHZhbGlkIGRlcGVuZGVu
Y3kgdHlwZXMuDQorIyBfV1hfVkVSU19BTEwJCQktIExpc3Qgb2Ygc3VwcG9ydGVkIHZlcnNpb25z
Lg0KKyMgX1dYX1ZFUlNfVUNfQUxMCQktIExpc3Qgb2YgVW5pY29kZSBjYXBhYmxlIHZlcnNpb25z
Lg0KKyMgX1dYX0NIQU5HRV9WQVJTCQktIExpc3Qgb2YgdmFyaWFibGVzIGFsbG93ZWQgdG8gY2hh
bmdlIGJldHdlZW4gcHJlIGFuZA0KKyMJCQkJCQkgIHBvc3QgaW5jbHVzaW9ucyAocmVsYXRlZCB0
byB2ZXJzaW9uKS4NCisjIF9XWF9MSVNUU19PUkRFUgkJLSBSZXZlcnNlIGxpc3RzIHByZWZlcmVu
Y2Ugb3JkZXIuDQorIyBfV1hfQVVUT19WQVJTCQkJLSBWYXJpYWJsZXMgZGVmaW5lZCBzb21ldGlt
ZXMgdGhhdCBtYXkgaGF2ZSB0byBiZQ0KKyMJCQkJCQkgIHJlZGVmaW5lZCBsYXRlci4NCisjDQor
DQorX1dYX0NPTVBTX0FMTD0JCQl3eCBjb250cmliIHB5dGhvbiBtb3ppbGxhIHN2Zw0KK19XWF9E
RVBfVFlQRVNfQUxMPQkJYnVpbGQgbGliIHJ1bg0KK19XWF9WRVJTX0FMTD0JCQkyLjQgMi42DQor
X1dYX1ZFUlNfVUNfQUxMPQkJMi42DQorX1dYX0NIQU5HRV9WQVJTPQkJVVNFX1dYIFVTRV9XWF9O
T1QgV1hfVU5JQ09ERQ0KK19XWF9MSVNUU19PUkRFUj0JCV9XWF9WRVJfRklOQUwgV0FOVF9XWF9W
RVIgV0lUSF9XWF9WRVINCitfV1hfQVVUT19WQVJTPQkJCVVTRV9XWCBXWF9DT05GSUcNCisNCisj
DQorIyBWYXJpYWJsZXMgdXNlZCB0byBkZXRlcm1pbmUgd2hhdCBpcyBuZWVkZWQ6DQorIyBfV1hf
UE9SVF9jb21wX3ZlcgkJLSBQb3J0IGRpcmVjdG9yeS4NCisjIF9XWF9MSUJfY29tcF92ZXIJCS0g
TmFtZSBvZiB0aGUgc2hhcmVkIGxpYnJhcnkgKG9wdGlvbmFsKS4NCisjIF9XWF9TSFZFUl9jb21w
X3ZlcgktIFNoYXJlZCBsaWJyYXJ5IHZlcnNpb24gKG9wdGlvbmFsKS4NCisjIF9XWF9GSUxFX2Nv
bXBfdmVyCQktIEZpbGUgaW5zdGFsbGVkIGJ5IHRoYXQgY29tcG9uZW50Lg0KKyMNCisNCitfV1hf
UE9SVF93eF8yLjQ9CQl3eGd0azI0DQorX1dYX0xJQl93eF8yLjQ9CQkJd3hfZ3RrMi0yLjQNCisN
CitfV1hfUE9SVF9jb250cmliXzIuND0Jd3hndGsyNC1jb250cmliDQorX1dYX0xJQl9jb250cmli
XzIuND0Jd3hfZ3RrMl9jYW52YXMtMi40DQorDQorX1dYX1BPUlRfcHl0aG9uXzIuND0JcHktd3hQ
eXRob24yNA0KK19XWF9GSUxFX3B5dGhvbl8yLjQ9CSR7UFlUSE9OX1NJVEVMSUJESVJ9L3d4L19f
aW5pdF9fLnB5DQorDQorX1dYX1BPUlRfbW96aWxsYV8yLjQ9CXd4bW96aWxsYQ0KK19XWF9MSUJf
bW96aWxsYV8yLjQ9CXd4bW96aWxsYV9ndGsyLTIuNA0KKw0KK19XWF9QT1JUX3d4XzIuNj0JCXd4
Z3RrMjYke19XWF9VQ0x9DQorX1dYX0xJQl93eF8yLjY9CQkJd3hfYmFzZSR7X1dYX1VDfS0yLjYN
CisNCitfV1hfUE9SVF9jb250cmliXzIuNj0Jd3hndGsyNiR7X1dYX1VDTH0tY29udHJpYg0KK19X
WF9MSUJfY29udHJpYl8yLjY9CXd4X2d0azIke19XWF9VQ31fYW5pbWF0ZS0yLjYNCisNCitfV1hf
UE9SVF9weXRob25fMi42PQlweS13eFB5dGhvbjI2JHtfV1hfVUNMfQ0KK19XWF9GSUxFX3B5dGhv
bl8yLjY9CSR7UFlUSE9OX1NJVEVMSUJESVJ9L3d4LTIuNi1ndGsyJHtfV1hfUFlTVUZYfS93eC9f
X2luaXRfXy5weQ0KKw0KK19XWF9QT1JUX3N2Z18yLjY9CQl3eHN2Zw0KK19XWF9MSUJfc3ZnXzIu
Nj0JCXd4c3ZnDQorDQorIyBTZXQgX1dYX1NIVkVSX2NvbXBfdmVyIHRvIDAgYW5kIF9XWF9GSUxF
X2NvbXBfdmVyIGZvciBsaWJzIGFwcHJvcGlhdGVseS4NCisNCisuZm9yIGNvbXAgaW4gJHtfV1hf
Q09NUFNfQUxMfQ0KKy4JZm9yIHZlciBpbiAke19XWF9WRVJTX0FMTH0NCisuCQlpZiBkZWZpbmVk
KF9XWF9MSUJfJHtjb21wfV8ke3Zlcn0pDQorX1dYX1NIVkVSXyR7Y29tcH1fJHt2ZXJ9PQkwDQor
X1dYX0ZJTEVfJHtjb21wfV8ke3Zlcn09CSR7WDExQkFTRX0vbGliL2xpYiR7X1dYX0xJQl8ke2Nv
bXB9XyR7dmVyfX0uc28uJHtfV1hfU0hWRVJfJHtjb21wfV8ke3Zlcn19DQorLgkJZW5kaWYNCisu
CWVuZGZvcg0KKy5lbmRmb3INCisNCisuZW5kaWYJCSMgIV9XWF9EZWZpbmVkX0RvbmUNCisNCisj
DQorIyBDaGVjayBpZiB0aGUgdmVyc2lvbiBoYXMgY2hhbmdlZCBiZXR3ZWVuIGluY2x1c2lvbnMu
DQorIw0KKw0KKy5pZiBkZWZpbmVkKF9XWF9WZXJzaW9uX0RvbmUpDQorLgl1bmRlZiBfV1hfSEFT
X0NIQU5HRUQNCisNCisuCWZvciB2YXIgaW4gJHtfV1hfQ0hBTkdFX1ZBUlN9DQorLgkJaWYgKGRl
ZmluZWQoJHt2YXJ9KSAmJiAhZGVmaW5lZChfV1hfT0xEXyR7dmFyfSkpIHx8IFwNCisJCSAgICgh
ZGVmaW5lZCgke3Zhcn0pICYmIGRlZmluZWQoX1dYX09MRF8ke3Zhcn0pKSB8fCBcDQorCQkgICAo
ZGVmaW5lZChfV1hfT0xEXyR7dmFyfSkgJiYgJHtfV1hfT0xEXyR7dmFyfX0gIT0gJHske3Zhcn19
KQ0KK19XWF9IQVNfQ0hBTkdFRD0JCXllcw0KKy4JCWVuZGlmDQorLgllbmRmb3INCisuZW5kaWYJ
CSMgX1dYX1ZlcnNpb25fRG9uZQ0KKw0KKyMNCisjIFNlbGVjdCBXeFdpZGdldHMgdmVyc2lvbi4N
CisjDQorDQorLmlmICghZGVmaW5lZChfV1hfVmVyc2lvbl9Eb25lKSB8fCBkZWZpbmVkKF9XWF9I
QVNfQ0hBTkdFRCkpICYmIFwNCisJKGRlZmluZWQoVVNFX1dYKSB8fCBkZWZpbmVkKFVTRV9XWF9O
T1QpKQ0KK19XWF9WZXJzaW9uX0RvbmU9CQl5ZXMNCisNCisjIEhhbmRsZSBhdXRvbWF0aWMgdmFy
aWFibGVzLg0KKw0KKy5mb3IgdmFyIGluICR7X1dYX0FVVE9fVkFSU30NCisuCWlmIGRlZmluZWQo
X1dYXyR7dmFyfV9ERUZJTkVEKQ0KKy4JCXVuZGVmICR7dmFyfQ0KKy4JZW5kaWYNCisuCWlmICFk
ZWZpbmVkKCR7dmFyfSkNCitfV1hfJHt2YXJ9X0RFRklORUQ9CQl5ZXMNCisuCWVuZGlmDQorLmVu
ZGZvcg0KKw0KKyMgUmVzZXQgb2xkIHZhcmlhYmxlIHZhbHVlcy4NCisNCisuaWYgZGVmaW5lZChf
V1hfSEFTX0NIQU5HRUQpDQorLgl1bmRlZiBfV1hfVkVSDQorLgl1bmRlZiBfV1hfSUdOT1JFDQor
LmVuZGlmDQorDQorIyBTZXQgZGVmYXVsdHMgKGlmIG9uZSBpc24ndCBwcmVzZW50KS4NCisNCitV
U0VfV1g/PQkJCQkke19XWF9WRVJTX0FMTH0NCitVU0VfV1hfTk9UPz0JCQkjDQorDQorIw0KKyMg
TWFrZSBsaXN0cyBvZiB2YWxpZCBhbmQgaW52YWxpZCB2ZXJzaW9ucy4NCisjDQorIyBUaGUgZm9s
bG93aW5nIHZhcmlhYmxlcyBhcmUgdXNlZDoNCisjIF9XWF9WRVJfQ0hFQ0sJCQktIElmIHRoZSB2
ZXJzaW9uIGlzIGEgc2luZ2xlIG9uZSwgZXhwcmVzcyBpbiBhIHJhbmdlLg0KKyMgX1dYX1ZFUl9N
SU4JCQktIExvd2VyIHZlcnNpb24gb2YgdGhlIHJhbmdlLg0KKyMgX1dYX1ZFUl9NQVgJCQktIEhp
Z2hlciB2ZXJzaW9uIG9mIHRoZSByYW5nZS4NCisjIF9XWF9WRVJfTElTVAkJCS0gTGlzdCBvZiBy
ZXF1ZXN0ZWQgdmVyc2lvbnMuDQorIyBfV1hfVkVSX05PVF9MSVNUCQktIExpc3Qgb2YgZGlzYWxs
b3dlZCB2ZXJzaW9ucy4NCisjIF9XWF9WRVJfTUVSR0VECQktIExpc3Qgb2YgcmVxdWVzdGVkIHZl
cnNpb24gd2l0aG91dCBkaXNhbGxvd2VkIG9uZXMuDQorIw0KKw0KKy5mb3IgbGlzdCBpbiBWRVIg
VkVSX05PVA0KK19XWF8ke2xpc3R9X0xJU1Q9CQkjDQorLglmb3IgdmVyIGluICR7VVNFX1dYJHts
aXN0OkMvVkVSLy99fQ0KK19XWF9WRVJfQ0hFQ0s6PQkJCSR7dmVyOkMvXihbWzpkaWdpdDpdXSso
XC5bWzpkaWdpdDpdXSspKikkL1wxLVwxL30NCitfV1hfVkVSX01JTjo9CQkJJHtfV1hfVkVSX0NI
RUNLOkMvKFtbOmRpZ2l0Ol1dKyhcLltbOmRpZ2l0Ol1dKykqKVstK10uKi9cMS99DQorX1dYX1ZF
Ul9NQVg6PQkJCSR7X1dYX1ZFUl9DSEVDSzpDLy4qLShbWzpkaWdpdDpdXSsoXC5bWzpkaWdpdDpd
XSspKikvXDEvfQ0KKyMgTWluaW11bSB2ZXJzaW9uIG5vdCBzcGVjaWZpZWQuDQorLgkJaWYgJHtf
V1hfVkVSX01JTn0gPT0gJHtfV1hfVkVSX0NIRUNLfQ0KKy4JCQl1bmRlZiBfV1hfVkVSX01JTg0K
Ky4JCQlmb3IgdiBpbiAke19XWF9WRVJTX0FMTH0NCitfV1hfVkVSX01JTj89CQkJJHt2fQ0KKy4J
CQllbmRmb3INCisuCQllbmRpZg0KKyMgTWF4aW11bSB2ZXJzaW9uIG5vdCBzcGVjaWZpZWQuDQor
LgkJaWYgJHtfV1hfVkVSX01BWH0gPT0gJHtfV1hfVkVSX0NIRUNLfQ0KKy4JCQlmb3IgdiBpbiAk
e19XWF9WRVJTX0FMTH0NCitfV1hfVkVSX01BWD0JCQkke3Z9DQorLgkJCWVuZGZvcg0KKy4JCWVu
ZGlmDQorIyBFeHBhbmQgdmVyc2lvbnMgYW5kIGFkZCB2YWxpZCBvbmVzIHRvIGVhY2ggbGlzdC4N
CisuCQlmb3IgdiBpbiAke19XWF9WRVJTX0FMTH0NCisuCQkJaWYgJHtfV1hfVkVSX01JTn0gPD0g
JHt2fSAmJiAke19XWF9WRVJfTUFYfSA+PSAke3Z9ICYmIFwNCisJCQkgICAke19XWF8ke2xpc3R9
X0xJU1Q6TSR7dn19ID09ICIiDQorX1dYXyR7bGlzdH1fTElTVCs9CQkke3Z9DQorLgkJCWVuZGlm
DQorLgkJZW5kZm9yDQorLgllbmRmb3INCisuZW5kZm9yDQorDQorIyBNZXJnZSB0aGUgbGlzdHMg
aW50byBhIHNpbmdsZSBsaXN0IG9mIHZhbGlkIHZlcnNpb25zLg0KKw0KK19XWF9WRVJfTUVSR0VE
PQkJCSMNCisuZm9yIHZlciBpbiAke19XWF9WRVJfTElTVH0NCisuCWlmICR7X1dYX1ZFUl9OT1Rf
TElTVDpNJHt2ZXJ9fSA9PSAiIg0KK19XWF9WRVJfTUVSR0VEKz0JCSR7dmVyfQ0KKy4JZW5kaWYN
CisuZW5kZm9yDQorDQorIyBDaGVjayBmb3IgYSBudWxsIHZlcnNpb24uDQorDQorLmlmIGVtcHR5
KF9XWF9WRVJfTUVSR0VEKQ0KK19XWF9JR05PUkU/PQkJCXNlbGVjdGVkIGEgbnVsbCBvciBpbnZh
bGlkIFd4V2lkZ2V0cyB2ZXJzaW9uDQorLmVuZGlmDQorDQorIw0KKyMgVW5pY29kZSBzdXBwb3J0
Lg0KKyMNCisNCisjIENyZWF0ZSBhIGxpc3Qgb2YgY2FwYWJsZSB2ZXJzaW9ucy4NCisNCitfV1hf
VkVSX1VDPQkJCQkjDQorLmZvciB2ZXIgaW4gJHtfV1hfVkVSX01FUkdFRH0NCisuCWlmICR7X1dY
X1ZFUlNfVUNfQUxMOk0ke3Zlcn19ICE9ICIiDQorX1dYX1ZFUl9VQys9CQkJJHt2ZXJ9DQorLgll
bmRpZg0KKy5lbmRmb3INCisNCisjIFJlcXVlc3RlZCBieSB0aGUgdXNlciAob3B0aW9uYWwpLg0K
Kw0KKy5pZiBkZWZpbmVkKFdJVEhfVU5JQ09ERSkgJiYgJHtPU1ZFUlNJT059ID49IDUwMDAwMA0K
Ky4JZm9yIHZlciBpbiAke19XWF9WRVJfVUN9DQorLgkJaWYgJHtfV1hfVkVSU19VQ19BTEw6TSR7
dmVyfX0gIT0gIiINCitXWF9VTklDT0RFPQkJCQl5ZXMNCisuCQllbmRpZg0KKy4JZW5kZm9yDQor
LmVuZGlmDQorDQorIyBSZXF1ZXN0ZWQgYnkgdGhlIHBvcnQgKG1hbmRhdG9yeSkuDQorDQorLmlm
IGRlZmluZWQoV1hfVU5JQ09ERSkNCisuCWlmICR7T1NWRVJTSU9OfSA8IDUwMDAwMA0KK19XWF9J
R05PUkU/PQkJCXJlcXVpcmVzIEZyZWVCU0QgdmVyc2lvbnMgPj0gNS5YIChiZWNhdXNlIG9mIFVu
aWNvZGUpDQorLgllbGlmIGVtcHR5KF9XWF9WRVJfVUMpDQorX1dYX0lHTk9SRT89CQkJc2VsZWN0
ZWQgYSBXeFdpZGdldHMgdmVyc2lvbiB3aGljaCBkb2VzIG5vdCBzdXBwb3J0IFVuaWNvZGU6ICR7
X1dYX1ZFUl9NRVJHRUR9DQorLgllbmRpZg0KKy5lbmRpZg0KKw0KKyMgU2V0IFVuaWNvZGUgdmFy
aWFibGVzLg0KKw0KKy5pZiBkZWZpbmVkKFdYX1VOSUNPREUpDQorX1dYX1ZFUl9GSU5BTD0JCQkk
e19XWF9WRVJfVUN9DQorX1dYX1VDPQkJCQkJdQ0KK19XWF9VQ0w9CQkJCS11bmljb2RlDQorX1dY
X1BZU1VGWD0JCQkJLXVuaWNvZGUNCisuZWxzZQ0KK19XWF9WRVJfRklOQUw9CQkJJHtfV1hfVkVS
X01FUkdFRH0NCitfV1hfVUM9CQkJCQkjDQorX1dYX1VDTD0JCQkJIw0KK19XWF9QWVNVRlg9CQkJ
CS1hbnNpDQorLmVuZGlmDQorDQorIw0KKyMgQ2hvb3NlIGZpbmFsIHZlcnNpb24uDQorIw0KKw0K
KyMNCisjIENoZWNrIGZvciB0aGUgZm9sbG93aW5nIChpbiBvcmRlcik6DQorIyAxKSBXSVRIX1dY
X1ZFUgkJLSBVc2VyIHByZWZlcmVuY2UuDQorIyAyKSBXQU5UX1dYX1ZFUgkJLSBQb3J0IHByZWZl
cmVuY2UuDQorIyAzKSBfV1hfVkVSX0ZJTkFMCQktIEF2YWlsYWJsZSB2ZXJzaW9ucy4NCisjDQor
DQorLmZvciBsaXN0IGluICR7X1dYX0xJU1RTX09SREVSfQ0KKy4JaWYgZGVmaW5lZCgke2xpc3R9
KQ0KKy4JCWZvciB2ZXIgaW4gJHske2xpc3R9fQ0KKy4JCQlpZiAke19XWF9WRVJfRklOQUw6TSR7
dmVyfX0gIT0gIiINCitfV1hfVkVSPQkJCQkke3Zlcn0NCisuCQkJZW5kaWYNCisuCQllbmRmb3IN
CisuCWVuZGlmDQorLmVuZGZvcg0KKw0KKyMNCisjIFNldCB2YXJpYWJsZXMuDQorIw0KKw0KK1dY
X1ZFUlNJT049CQkJCSR7X1dYX1ZFUn0NCitXWF9DT05GSUc/PQkJCQkke1gxMUJBU0V9L2Jpbi93
eGd0azIke19XWF9VQ30tJHtfV1hfVkVSfS1jb25maWcNCisNCisjIERlZmluZSBvbGQgdmFsdWVz
IGZvciBkZXRlY3RpbmcgY2hhbmdlcy4NCisNCisuZm9yIHZhciBpbiAke19XWF9DSEFOR0VfVkFS
U30NCisuCWlmIGRlZmluZWQoJHt2YXJ9KQ0KK19XWF9PTERfJHt2YXJ9Oj0JCSR7JHt2YXJ9fQ0K
Ky4JZW5kaWYNCisuZW5kZm9yDQorDQorLmVuZGlmCQkjICEgX1dYX1ZlcnNpb25fRG9uZSB8fCBf
V1hfSEFTX0NIQU5HRUQNCisNCisjDQorIyBDaGVjayBmb3IgcHJlc2VudCBjb21wb25lbnRzLg0K
KyMNCisNCisuaWYgIWRlZmluZWQoQUZURVJQT1JUTUspICYmIGRlZmluZWQoV0FOVF9XWCkNCitI
QVZFX1dYPQkJCQkjDQorLglmb3IgX19XQU5UX1dYIGluICR7V0FOVF9XWH0NCisuCQlpZiAke1dB
TlRfV1g6VX0gPT0gIllFUyINCisuCQkJZm9yIGNvbXAgaW4gJHtfV1hfQ09NUFNfQUxMfQ0KKy4J
CQkJZm9yIHZlciBpbiAke19XWF9WRVJTX0FMTH0NCisuCQkJCQlpZiBleGlzdHMoJHtfV1hfRklM
RV8ke2NvbXB9XyR7dmVyfX0pDQorSEFWRV9XWCs9CQkJCSR7Y29tcH0tJHt2ZXJ9DQorLgkJCQkJ
ZW5kaWYNCisuCQkJCWVuZGZvcg0KKy4JCQllbmRmb3INCisuCQllbGlmICR7X1dYX1ZFUlNfQUxM
Ok0ke19fV0FOVF9XWH19DQorLgkJCWZvciBjb21wIGluICR7X1dYX0NPTVBTX0FMTH0NCisuCQkJ
CWlmIGV4aXN0cygke19XWF9GSUxFXyR7Y29tcH1fJHtfX1dBTlRfV1h9fSkNCitIQVZFX1dYKz0J
CQkJJHtjb21wfQ0KKy4JCQkJZW5kaWYNCisuCQkJZW5kZm9yDQorLgkJZWxzZQ0KK0lHTk9SRT89
CQkJCXNlbGVjdGVkIGFuIGludmFsaWQgdmFsdWUgZm9yIFdBTlRfV1g6ICR7X19XQU5UX1dYfQ0K
Ky4JCWVuZGlmDQorLgllbmRmb3INCisuZW5kaWYJCSMgISBBRlRFUlBPUlRNSyAmJiBXQU5UX1dY
DQorDQorIw0KKyMgUHJvY2VzcyBjb21wb25lbnRzIGxpc3QgYW5kIGFkZCBkZXBlbmRlbmNpZXMs
IHZhcmlhYmxlcywgZXRjLg0KKyMNCisNCisuaWYgIWRlZmluZWQoQkVGT1JFUE9SVE1LKSAmJiBc
DQorCShkZWZpbmVkKFVTRV9XWCkgfHwgZGVmaW5lZChVU0VfV1hfTk9UKSkNCisNCisjIEVycm9y
IGNoZWNrLg0KKw0KKy5pZiBkZWZpbmVkKF9XWF9JR05PUkUpDQorSUdOT1JFPz0JCQkJJHtfV1hf
SUdOT1JFfQ0KKy5lbmRpZg0KKw0KKyMNCisjIENvbXBvbmVudCBwYXJzaW5nLg0KKyMNCisjIFRo
ZSB2YXJpYWJsZXMgdXNlZCBhcmU6DQorIyBfV1hfQ09NUAkJCQktIENvbXBvbmVudCBwYXJ0Lg0K
KyMgX1dYX0RFUF9UWVBFCQkJLSBEZXBlbmRlbmN5IHR5cGUgcGFydC4NCisjIF9XWF9DT01QX05F
VwkJCS0gQ29tcG9uZW50ICsgZGVwZW5kZW5jeSB0eXBlLg0KKyMgX1dYX0NPTVBTX0ZJTkFMCQkt
IEZpbmFsIGxpc3Qgb2YgY29tcG9uZW50cyB3aXRoIGRlcGVuZGVuY3kgdHlwZXMuDQorIw0KKw0K
KyMgRGVmYXVsdCBjb21wb25lbnRzLg0KKw0KK1dYX0NPTVBTPz0JCQkJd3gNCisNCisjIERldGVj
dCBpbnZhbGlkIGFuZCBkdXBsaWNhdGVkIGNvbXBvbmVudHMuDQorDQorX1dYX0NPTVBTX0ZJTkFM
PQkJIw0KKy5mb3IgY29tcCBpbiAke1dYX0NPTVBTfQ0KK19XWF9DT01QPQkJCQkke2NvbXA6Qy9f
KFtbOmFscGhhOl1dKykkLy99DQorX1dYX0RFUF9UWVBFPQkJCSR7Y29tcDpDLy4rXyhbWzphbHBo
YTpdXSspJC9cMS99DQorLglpZiAke19XWF9DT01QfSA9PSAke2NvbXB9DQorX1dYX0RFUF9UWVBF
PQkJCWxpYg0KKy4JZW5kaWYNCitfV1hfQ09NUF9ORVc9CQkJJHtfV1hfQ09NUH1fJHtfV1hfREVQ
X1RZUEV9DQorLglmb3IgX19XWF9DT01QIGluICR7X1dYX0NPTVB9DQorLgkJaWYgJHtfV1hfQ09N
UFNfQUxMOk0ke19fV1hfQ09NUH19ID09ICIiDQorSUdOT1JFPz0JCQkJc2VsZWN0ZWQgYW4gaW52
YWxpZCBXeFdpZGdldHMgY29tcG9uZW50OiAke19fV1hfQ09NUH0NCisuCQllbmRpZg0KKy4JZW5k
Zm9yDQorLglmb3IgX19XWF9ERVBfVFlQRSBpbiAke19XWF9ERVBfVFlQRX0NCisuCQlpZiAke19X
WF9ERVBfVFlQRVNfQUxMOk0ke19fV1hfREVQX1RZUEV9fSA9PSAiIg0KK0lHTk9SRT89CQkJCXNl
bGVjdGVkIGFuIGludmFsaWQgV3hXaWRnZXRzIGRlcGVuZGVuY3kgdHlwZTogJHtfX1dYX0RFUF9U
WVBFfQ0KKy4JCWVuZGlmDQorLgllbmRmb3INCisuCWlmICFkZWZpbmVkKF9XWF9QT1JUXyR7X1dY
X0NPTVB9XyR7X1dYX1ZFUn0pDQorSUdOT1JFPz0JCQkJc2VsZWN0ZWQgYSBXeFdpZGdldHMgY29t
cG9uZW50ICgke19XWF9DT01QfSkgd2hpY2ggaXMgbm90IGF2YWlsYWJsZSBmb3IgdGhlIHNlbGVj
dGVkIHZlcnNpb24gKCR7X1dYX1ZFUn0pDQorLgllbmRpZg0KKy4JZm9yIG5ld2NvbXAgaW4gJHtf
V1hfQ09NUF9ORVd9DQorLgkJaWYgJHtfV1hfQ09NUFNfRklOQUw6TSR7bmV3Y29tcH19ID09ICIi
DQorX1dYX0NPTVBTX0ZJTkFMKz0JCSR7bmV3Y29tcH0NCisuCQllbmRpZg0KKy4JZW5kZm9yDQor
LmVuZGZvcg0KKw0KKyMgQWRkIGRlcGVuZGVuY2llcy4NCisNCisuZm9yIGNvbXAgaW4gJHtfV1hf
Q09NUFNfRklOQUx9DQorX1dYX0NPTVA9CQkJCSR7Y29tcDpDL18oW1s6YWxwaGE6XV0rKSQvL30N
CitfV1hfREVQX1RZUEU9CQkJJHtjb21wOkMvLitfKFtbOmFscGhhOl1dKykkL1wxL30NCisuCWlm
ICR7X1dYX0RFUF9UWVBFfSA9PSAibGliIg0KKy4JCWlmIGRlZmluZWQoX1dYX0xJQl8ke19XWF9D
T01QfV8ke19XWF9WRVJ9KQ0KK0xJQl9ERVBFTkRTKz0JCQkke19XWF9MSUJfJHtfV1hfQ09NUH1f
JHtfV1hfVkVSfX06JHtQT1JUU0RJUn0veDExLXRvb2xraXRzLyR7X1dYX1BPUlRfJHtfV1hfQ09N
UH1fJHtfV1hfVkVSfX0NCisuCQllbHNlDQorQlVJTERfREVQRU5EUys9CQkJJHtfV1hfRklMRV8k
e19XWF9DT01QfV8ke19XWF9WRVJ9fToke1BPUlRTRElSfS94MTEtdG9vbGtpdHMvJHtfV1hfUE9S
VF8ke19XWF9DT01QfV8ke19XWF9WRVJ9fQ0KK1JVTl9ERVBFTkRTKz0JCQkke19XWF9GSUxFXyR7
X1dYX0NPTVB9XyR7X1dYX1ZFUn19OiR7UE9SVFNESVJ9L3gxMS10b29sa2l0cy8ke19XWF9QT1JU
XyR7X1dYX0NPTVB9XyR7X1dYX1ZFUn19DQorLgkJZW5kaWYNCisuCWVsc2UNCiske19XWF9ERVBf
VFlQRTpVfV9ERVBFTkRTKz0JJHtfV1hfRklMRV8ke19XWF9DT01QfV8ke19XWF9WRVJ9fToke1BP
UlRTRElSfS94MTEtdG9vbGtpdHMvJHtfV1hfUE9SVF8ke19XWF9DT01QfV8ke19XWF9WRVJ9fQ0K
Ky4JZW5kaWYNCisuZW5kZm9yDQorDQorIw0KKyMgU2V0IGJ1aWxkIHJlbGF0ZWQgdmFyaWFibGVz
Lg0KKyMNCisNCitNQUtFX0VOVis9CQkJCVdYX0NPTkZJRz0ke1dYX0NPTkZJR30NCitDT05GSUdV
UkVfRU5WKz0JCQlXWF9DT05GSUc9JHtXWF9DT05GSUd9DQorDQorLmlmIGRlZmluZWQoV1hfQ09O
Rl9BUkdTKQ0KKy4JaWYgJHtXWF9DT05GX0FSR1M6TH0gPT0gImFic29sdXRlIg0KK0NPTkZJR1VS
RV9BUkdTKz0JCS0td2l0aC13eC1jb25maWc9JHtXWF9DT05GSUd9DQorLgllbGlmICR7V1hfQ09O
Rl9BUkdTOkx9ID09ICJyZWxhdGl2ZSINCitDT05GSUdVUkVfQVJHUys9CQktLXdpdGgtd3g9JHtY
MTFCQVNFfSBcDQorCQkJCQkJLS13aXRoLXd4LWNvbmZpZz0ke1dYX0NPTkZJRzpUfQ0KKy4JZWxz
ZQ0KK0lHTk9SRT89CQkJCXNlbGVjdGVkIGFuIGludmFsaWQgV3hXaWRnZXRzIGNvbmZpZ3VyZSBh
cmd1bWVudCB0eXBlOiAke1dYX0NPTkZfQVJHU30NCisuCWVuZGlmDQorLmVuZGlmDQorDQorLmVu
ZGlmCQkjICEgQkVGT1JFUE9SVE1LDQpJbmRleDogYXVkaW8vYXVkYWNpdHkvTWFrZWZpbGUNCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0NClJDUyBmaWxlOiAvaG9tZS9wY3ZzL3BvcnRzL2F1ZGlvL2F1ZGFjaXR5L01ha2Vm
aWxlLHYNCnJldHJpZXZpbmcgcmV2aXNpb24gMS4zMA0KZGlmZiAtdSAtcjEuMzAgTWFrZWZpbGUN
Ci0gLS0tIGF1ZGlvL2F1ZGFjaXR5L01ha2VmaWxlCTE1IEFwciAyMDA2IDIwOjEwOjAzIC0wMDAw
CTEuMzANCisrKyBhdWRpby9hdWRhY2l0eS9NYWtlZmlsZQkxMyBKdW4gMjAwNiAyMzoyMjoxMSAt
MDAwMA0KQEAgLTE1LDEzICsxNSwxMyBAQA0KIENPTU1FTlQ9CUF1ZGFjaXR5IGlzIGEgR1VJIGVk
aXRvciBmb3IgZGlnaXRhbCBhdWRpbyB3YXZlZm9ybXMNCiANCiBCVUlMRF9ERVBFTkRTKz0Jemlw
OiR7UE9SVFNESVJ9L2FyY2hpdmVycy96aXANCi0gLUxJQl9ERVBFTkRTPQl3eF9ndGsyX2NvcmUt
Mi42LjA6JHtQT1JUU0RJUn0veDExLXRvb2xraXRzL3d4Z3RrMjYNCiANCiBXUktTUkM9CQkke1dS
S0RJUn0vJHtQT1JUTkFNRX0tc3JjLSR7UE9SVFZFUlNJT059DQogR05VX0NPTkZJR1VSRT0JeWVz
DQogVVNFX0dNQUtFPQl5ZXMNCiBVU0VfWF9QUkVGSVg9CXllcw0KIFVTRV9HRVRURVhUPQl5ZXMN
CitVU0VfV1g9CQkyLjYNCiANCiBNQU4xPQkJYXVkYWNpdHkuMQ0KIE1BTkNPTVBSRVNTRUQ9CXll
cw0KQEAgLTM4LDggKzM4LDcgQEANCiANCiBDT05GSUdVUkVfRU5WKz0JTERGTEFHUz0iJHtMREZM
QUdTfSAtTCR7TE9DQUxCQVNFfS9saWIgJHtQVEhSRUFEX0xJQlN9IiBcDQogCQlDUFBGTEFHUz0i
JHtDUFBGTEFHU30gLUkke0xPQ0FMQkFTRX0vaW5jbHVkZSAke1NTRV9DRkxBR1N9ICR7UFRIUkVB
RF9DRkxBR1N9IiBcDQotIC0JCUNGTEFHUz0iJHtDRkxBR1N9IC1JJHtMT0NBTEJBU0V9L2luY2x1
ZGUgJHtTU0VfQ0ZMQUdTfSAke1BUSFJFQURfQ0ZMQUdTfSIgXA0KLSAtCQlXWF9DT05GSUc9JHtY
MTFCQVNFfS9iaW4vd3hndGsyLTIuNi1jb25maWcNCisJCUNGTEFHUz0iJHtDRkxBR1N9IC1JJHtM
T0NBTEJBU0V9L2luY2x1ZGUgJHtTU0VfQ0ZMQUdTfSAke1BUSFJFQURfQ0ZMQUdTfSINCiANCiAu
aWYgIWRlZmluZWQoTk9QT1JURE9DUykNCiBNQUtFX0VOVj0JRE9DPXllcw0KSW5kZXg6IGF1ZGlv
L21ib3gvTWFrZWZpbGUNCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0NClJDUyBmaWxlOiAvaG9tZS9wY3ZzL3BvcnRzL2F1
ZGlvL21ib3gvTWFrZWZpbGUsdg0KcmV0cmlldmluZyByZXZpc2lvbiAxLjgNCmRpZmYgLXUgLXIx
LjggTWFrZWZpbGUNCi0gLS0tIGF1ZGlvL21ib3gvTWFrZWZpbGUJMTIgSmFuIDIwMDYgMTI6NTQ6
MDUgLTAwMDAJMS44DQorKysgYXVkaW8vbWJveC9NYWtlZmlsZQkxMyBKdW4gMjAwNiAyMzoyMjox
MSAtMDAwMA0KQEAgLTEyLDE3ICsxMiwxNyBAQA0KIE1BSU5UQUlORVI9CXBvcnRzQEZyZWVCU0Qu
b3JnDQogQ09NTUVOVD0JUHJvZ3JhbSBpbnRlbmRlZCB0byBoZWxwIHdpdGggb3JnYW5pemluZyB5
b3VyIG11c2ljIGZpbGVzDQogDQotIC1SVU5fREVQRU5EUz0JJHtQWVRIT05fU0lURUxJQkRJUn0v
d3hQeXRob24vX19pbml0X18ucHk6JHtQT1JUU0RJUn0veDExLXRvb2xraXRzL3B5LXd4UHl0aG9u
MjQgXA0KLSAtCQkke1BZVEhPTl9TSVRFTElCRElSfS9vZ2cvX19pbml0X18ucHk6JHtQT1JUU0RJ
Un0vYXVkaW8vcHktb2dnIFwNCitSVU5fREVQRU5EUz0JJHtQWVRIT05fU0lURUxJQkRJUn0vb2dn
L19faW5pdF9fLnB5OiR7UE9SVFNESVJ9L2F1ZGlvL3B5LW9nZyBcDQogCQkke1BZVEhPTl9TSVRF
TElCRElSfS9vZ2cvdm9yYmlzLnNvOiR7UE9SVFNESVJ9L2F1ZGlvL3B5LXZvcmJpcyBcDQogCQls
YW1lOiR7UE9SVFNESVJ9L2F1ZGlvL2xhbWUgXA0KIAkJb2dnZW5jOiR7UE9SVFNESVJ9L2F1ZGlv
L3ZvcmJpcy10b29scyBcDQogCQltcGxheWVyOiR7UE9SVFNESVJ9L211bHRpbWVkaWEvbXBsYXll
cg0KLSAtTElCX0RFUEVORFM9CXd4X2d0azItMi40LjA6JHtQT1JUU0RJUn0veDExLXRvb2xraXRz
L3d4Z3RrMjQNCiANCiBVU0VfUFlUSE9OPQl5ZXMNCiBVU0VfUFlESVNUVVRJTFM9eWVzDQogVVNF
X0JaSVAyPQl5ZXMNCitVU0VfV1g9CQkyLjQNCitXWF9DT01QUz0JcHl0aG9uX3J1bg0KIFdSS1NS
Qz0JCSR7V1JLRElSfS9tQm94LSR7UE9SVFZFUlNJT059DQogDQogLmluY2x1ZGUgPGJzZC5wb3J0
Lm1rPg0KSW5kZXg6IGF1ZGlvL3BpY2FyZC9NYWtlZmlsZQ0KPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQ0KUkNTIGZpbGU6
IC9ob21lL3BjdnMvcG9ydHMvYXVkaW8vcGljYXJkL01ha2VmaWxlLHYNCnJldHJpZXZpbmcgcmV2
aXNpb24gMS4yDQpkaWZmIC11IC1yMS4yIE1ha2VmaWxlDQotIC0tLSBhdWRpby9waWNhcmQvTWFr
ZWZpbGUJNiBNYXkgMjAwNiAxMzozNTowOCAtMDAwMAkxLjINCisrKyBhdWRpby9waWNhcmQvTWFr
ZWZpbGUJMTMgSnVuIDIwMDYgMjM6MjI6MTEgLTAwMDANCkBAIC0xNSwxMSArMTUsMTIgQEANCiAN
CiBSVU5fREVQRU5EUz0JXA0KIAkJJHtQWVRIT05fU0lURUxJQkRJUn0vdHVuZXBpbXAvX19pbml0
X18ucHk6JHtQT1JUU0RJUn0vYXVkaW8vcHktbGlidHVuZXBpbXAgXA0KLSAtCQkke1BZVEhPTl9T
SVRFTElCRElSfS9tdXNpY2JyYWluei5weToke1BPUlRTRElSfS9hdWRpby9weS1tdXNpY2JyYWlu
eiBcDQotIC0JCSR7UFlUSE9OX1NJVEVMSUJESVJ9L3d4LTIuNi1ndGsyLXVuaWNvZGUvd3hQeXRo
b24vX19pbml0X18ucHk6JHtQT1JUU0RJUn0veDExLXRvb2xraXRzL3B5LXd4UHl0aG9uMjYtdW5p
Y29kZQ0KKwkJJHtQWVRIT05fU0lURUxJQkRJUn0vbXVzaWNicmFpbnoucHk6JHtQT1JUU0RJUn0v
YXVkaW8vcHktbXVzaWNicmFpbnoNCiANCiBVU0VfUFlUSE9OPQl5ZXMNCiBVU0VfUFlESVNUVVRJ
TFM9eWVzDQorVVNFX1dYPQkJMi42DQorV1hfQ09NUFM9CXB5dGhvbl9ydW4NCiANCiBTT1VSQ0VG
SUxFPQkke0RJU1ROQU1FfSR7RVhUUkFDVF9TVUZYfQ0KIFBJQ0FSRF9NT0RVTEVTPQlicm93c2Vy
IGxpYiB1aQ0KSW5kZXg6IGF1ZGlvL3B5LWthcmFva2UvTWFrZWZpbGUNCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0NClJD
UyBmaWxlOiAvaG9tZS9wY3ZzL3BvcnRzL2F1ZGlvL3B5LWthcmFva2UvTWFrZWZpbGUsdg0KcmV0
cmlldmluZyByZXZpc2lvbiAxLjENCmRpZmYgLXUgLXIxLjEgTWFrZWZpbGUNCi0gLS0tIGF1ZGlv
L3B5LWthcmFva2UvTWFrZWZpbGUJNyBBcHIgMjAwNiAwODozNjoxNiAtMDAwMAkxLjENCisrKyBh
dWRpby9weS1rYXJhb2tlL01ha2VmaWxlCTEzIEp1biAyMDA2IDIzOjIyOjExIC0wMDAwDQpAQCAt
MTcsMTMgKzE3LDE0IEBADQogQ09NTUVOVD0JUHl0aG9uIGthcmFva2UgYXBwbGljYXRpb24gKFBs
YXlzIENEK0csIE1QMytHLCBPR0crRyBmaWxlcykNCiANCiBSVU5fREVQRU5EUz0JJHtQWVRIT05f
U0lURUxJQkRJUn0vcHlnYW1lL19faW5pdF9fLnB5OiR7UE9SVFNESVJ9L2RldmVsL3B5LWdhbWUg
XA0KLSAtCQkke1BZVEhPTl9TSVRFTElCRElSfS9OdW1lcmljL051bWVyaWMucHk6JHtQT1JUU0RJ
Un0vbWF0aC9weS1udW1lcmljIFwNCi0gLQkJJHtQWVRIT05fU0lURUxJQkRJUn0vd3hQeXRob24v
X19pbml0X18ucHk6JHtQT1JUU0RJUn0veDExLXRvb2xraXRzL3B5LXd4UHl0aG9uMjQNCisJCSR7
UFlUSE9OX1NJVEVMSUJESVJ9L051bWVyaWMvTnVtZXJpYy5weToke1BPUlRTRElSfS9tYXRoL3B5
LW51bWVyaWMNCiANCiBVU0VfWklQPQl5ZXMNCiANCiBVU0VfUFlUSE9OPQl5ZXMNCiBVU0VfUFlE
SVNUVVRJTFM9CXllcw0KIFVTRV9QWVRIT05fUFJFRklYPQl5ZXMNCitVU0VfV1g9CQkyLjQNCitX
WF9DT01QUz0JcHl0aG9uX3J1bg0KIA0KIC5pbmNsdWRlIDxic2QucG9ydC5taz4NCkluZGV4OiBi
aW9sb2d5L0wtQnJlZWRlci9NYWtlZmlsZQ0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQ0KUkNTIGZpbGU6IC9ob21lL3Bj
dnMvcG9ydHMvYmlvbG9neS9MLUJyZWVkZXIvTWFrZWZpbGUsdg0KcmV0cmlldmluZyByZXZpc2lv
biAxLjIwDQpkaWZmIC11IC1yMS4yMCBNYWtlZmlsZQ0KLSAtLS0gYmlvbG9neS9MLUJyZWVkZXIv
TWFrZWZpbGUJMyBNYXkgMjAwNiAyMzoyNjozMiAtMDAwMAkxLjIwDQorKysgYmlvbG9neS9MLUJy
ZWVkZXIvTWFrZWZpbGUJMTMgSnVuIDIwMDYgMjM6MjI6MTEgLTAwMDANCkBAIC0xNiw4ICsxNiw3
IEBADQogTUFJTlRBSU5FUj0JZHllc2tlQHlhaG9vLmNvbQ0KIENPTU1FTlQ9CUFsbG93cyB5b3Ug
dG8gZGlzcGxheSBhbmQgYnJlZWQgTC1zeXN0ZW0gZm9ybXMNCiANCi0gLUxJQl9ERVBFTkRTPQl3
eF9ndGsyX2dsLTIuNC4wOiR7UE9SVFNESVJ9L3gxMS10b29sa2l0cy93eGd0azI0IFwNCi0gLQkJ
Z2x1dC40OiR7UE9SVFNESVJ9L2dyYXBoaWNzL2xpYmdsdXQNCitMSUJfREVQRU5EUz0JZ2x1dC40
OiR7UE9SVFNESVJ9L2dyYXBoaWNzL2xpYmdsdXQNCiANCiBOT19XUktTVUJESVI9CXllcw0KIEJV
SUxEX1dSS1NSQz0JJHtXUktTUkN9L1VuaXgNCkBAIC0yNiw4ICsyNSw3IEBADQogVVNFX1hfUFJF
RklYPQl5ZXMNCiBVU0VfR0w9CQl5ZXMNCiBVU0VfR01BS0U9CXllcw0KLSAtDQotIC1XWF9DT05G
SUc9CSR7WDExQkFTRX0vYmluL3d4Z3RrMi0yLjQtY29uZmlnDQorVVNFX1dYPQkJMi40DQogDQog
LmlmIGRlZmluZWQoV0lUSF9PUFRJTUlaRURfQ0ZMQUdTKQ0KIENGTEFHUys9CS1PMyAtZmZhc3Qt
bWF0aA0KSW5kZXg6IGJpb2xvZ3kvdHJlZXZpZXd4L01ha2VmaWxlDQo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09DQpSQ1Mg
ZmlsZTogL2hvbWUvcGN2cy9wb3J0cy9iaW9sb2d5L3RyZWV2aWV3eC9NYWtlZmlsZSx2DQpyZXRy
aWV2aW5nIHJldmlzaW9uIDEuMjENCmRpZmYgLXUgLXIxLjIxIE1ha2VmaWxlDQotIC0tLSBiaW9s
b2d5L3RyZWV2aWV3eC9NYWtlZmlsZQk2IERlYyAyMDA1IDAyOjAwOjU1IC0wMDAwCTEuMjENCisr
KyBiaW9sb2d5L3RyZWV2aWV3eC9NYWtlZmlsZQkxMyBKdW4gMjAwNiAyMzoyMjoxMSAtMDAwMA0K
QEAgLTE1LDEyICsxNSwxMCBAQA0KIE1BSU5UQUlORVI9CWZlcm5hbkBpaWIudW5zYW0uZWR1LmFy
DQogQ09NTUVOVD0JQSBwaHlsb2dlbmV0aWMgdHJlZSB2aWV3ZXINCiANCi0gLUxJQl9ERVBFTkRT
PQl3eF9ndGsyLTIuNC4wOiR7UE9SVFNESVJ9L3gxMS10b29sa2l0cy93eGd0azI0IFwNCi0gLQkJ
d3hfZ3RrMl9kY3N2Zy0yLjQuMDoke1BPUlRTRElSfS94MTEtdG9vbGtpdHMvd3hndGsyNC1jb250
cmliDQotIC0NCiBVU0VfR01BS0U9CXllcw0KIEdOVV9DT05GSUdVUkU9CXllcw0KLSAtQ09ORklH
VVJFX0VOVj0JV1hfQ09ORklHPSIke1gxMUJBU0V9L2Jpbi93eGd0azItMi40LWNvbmZpZyINCitV
U0VfV1g9CQkyLjQNCitXWF9DT01QUz0JY29udHJpYg0KIA0KIFBMSVNUX0ZJTEVTPQliaW4vdHYN
CiANCkluZGV4OiBjYWQva2ljYWQvTWFrZWZpbGUNCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0NClJDUyBmaWxlOiAvaG9t
ZS9wY3ZzL3BvcnRzL2NhZC9raWNhZC9NYWtlZmlsZSx2DQpyZXRyaWV2aW5nIHJldmlzaW9uIDEu
MTENCmRpZmYgLXUgLXIxLjExIE1ha2VmaWxlDQotIC0tLSBjYWQva2ljYWQvTWFrZWZpbGUJMjQg
QXByIDIwMDYgMjA6NTg6MTEgLTAwMDAJMS4xMQ0KKysrIGNhZC9raWNhZC9NYWtlZmlsZQkxMyBK
dW4gMjAwNiAyMzoyMjoxMSAtMDAwMA0KQEAgLTIyLDggKzIyLDYgQEANCiBNQUlOVEFJTkVSPQkJ
dGhpZXJyeUBGcmVlQlNELm9yZw0KIENPTU1FTlQ9CQlTY2hlbWF0aWMgYW5kIFBDQiBlZGl0aW5n
IHNvZnR3YXJlDQogDQotIC1MSUJfREVQRU5EUz0Jd3hfZ3RrMl9jb3JlLTIuNi4wOiR7UE9SVFNE
SVJ9L3gxMS10b29sa2l0cy93eGd0azI2DQotIC0NCiAuaWYgIWRlZmluZWQoTk9QT1JURE9DUykN
CiBESVNURklMRVMrPQlkb2NfY29tcG9uZW50cy0ke0RPQ1ZFUlNJT059LnRnejpkYXQNCiBET0NW
RVJTSU9OPQkyMDA2LTA0LTI0DQpAQCAtMzYsMTAgKzM0LDcgQEANCiBVU0VfR0VUVEVYVD0JeWVz
DQogVVNFX0dNQUtFPQl5ZXMNCiBVU0VfR0w9CQl5ZXMNCi0gLQ0KLSAtTUFLRV9FTlY9CVdYX0NP
TkZJRz0ke1dYX0NPTkZJR30NCi0gLQ0KLSAtV1hfQ09ORklHPQl3eGd0azItMi42LWNvbmZpZw0K
K1VTRV9XWD0JCTIuNg0KIA0KIElOU1RESVI9CSR7UE9SVE5BTUV9DQogUExJU1RfU1VCPQlJTlNU
RElSPSR7SU5TVERJUn0gT1BTWVM9JHtPUFNZU30NCkluZGV4OiBjaGluZXNlL0JCTWFuL01ha2Vm
aWxlDQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09DQpSQ1MgZmlsZTogL2hvbWUvcGN2cy9wb3J0cy9jaGluZXNlL0JCTWFu
L01ha2VmaWxlLHYNCnJldHJpZXZpbmcgcmV2aXNpb24gMS4xMg0KZGlmZiAtdSAtcjEuMTIgTWFr
ZWZpbGUNCi0gLS0tIGNoaW5lc2UvQkJNYW4vTWFrZWZpbGUJMSBEZWMgMjAwNSAwODozNDo1NyAt
MDAwMAkxLjEyDQorKysgY2hpbmVzZS9CQk1hbi9NYWtlZmlsZQkxMyBKdW4gMjAwNiAyMzoyMjox
MSAtMDAwMA0KQEAgLTE2LDkgKzE2LDggQEANCiBNQUlOVEFJTkVSPQlwb3J0c0BGcmVlQlNELm9y
Zw0KIENPTU1FTlQ9CUJCTWFuIGlzIGEgQkJTIGNsaWVudCBmb3IgWCBXaW5kb3cgU3lzdGVtDQog
DQotIC1MSUJfREVQRU5EUz0Jd3hfZ3RrMi0yLjQuMDoke1BPUlRTRElSfS94MTEtdG9vbGtpdHMv
d3hndGsyNA0KLSAtDQogVVNFX1pJUD0JeWVzDQorVVNFX1dYPQkJMi40DQogV1JLU1JDPQkJJHtX
UktESVJ9LyR7UE9SVE5BTUV9DQogVVNFX1hfUFJFRklYPQl5ZXMNCiANCkBAIC0zNSw3ICszNCw3
IEBADQogLmVuZGlmDQogDQogZG8tYnVpbGQ6DQotIC0JCWNkICR7V1JLU1JDfSAmJiAke0NYWH0g
bWFpbi5jcHAgYHd4Z3RrMi0yLjQtY29uZmlnIC0tbGlicyAtLWN4eGZsYWdzYCAtSSR7TE9DQUxC
QVNFfS9pbmNsdWRlICR7Q0ZMQUdTfSAtbyBCQk1hbg0KKwkJY2QgJHtXUktTUkN9ICYmICR7Q1hY
fSBtYWluLmNwcCBgJHtXWF9DT05GSUd9IC0tbGlicyAtLWN4eGZsYWdzYCAtSSR7TE9DQUxCQVNF
fS9pbmNsdWRlICR7Q0ZMQUdTfSAtbyBCQk1hbg0KIA0KIGRvLWluc3RhbGw6DQogCQkke0lOU1RB
TExfUFJPR1JBTX0gJHtXUktTUkN9L0JCTWFuICR7UFJFRklYfS9iaW4vQkJNYW4NCkluZGV4OiBj
b21tcy90cnVzdGVkcXNsL01ha2VmaWxlDQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09DQpSQ1MgZmlsZTogL2hvbWUvcGN2
cy9wb3J0cy9jb21tcy90cnVzdGVkcXNsL01ha2VmaWxlLHYNCnJldHJpZXZpbmcgcmV2aXNpb24g
MS4xMQ0KZGlmZiAtdSAtcjEuMTEgTWFrZWZpbGUNCi0gLS0tIGNvbW1zL3RydXN0ZWRxc2wvTWFr
ZWZpbGUJOSBNYXkgMjAwNiAwNTo1MToxNSAtMDAwMAkxLjExDQorKysgY29tbXMvdHJ1c3RlZHFz
bC9NYWtlZmlsZQkxMyBKdW4gMjAwNiAyMzoyMjoxMSAtMDAwMA0KQEAgLTE2LDExICsxNiwxMSBA
QA0KIE1BSU5UQUlORVI9CWRiQGRiLm5ldA0KIENPTU1FTlQ9CUFtYXRldXIgUmFkaW8gU3RhdGlv
biBlbGVjdHJvbmljIHRydXN0ZWQgbG9nYm9vaw0KIA0KLSAtTElCX0RFUEVORFM9CWV4cGF0LjY6
JHtQT1JUU0RJUn0vdGV4dHByb2MvZXhwYXQyIFwNCi0gLQkJd3hfYmFzZS0yLjY6JHtQT1JUU0RJ
Un0veDExLXRvb2xraXRzL3d4Z3RrMjYNCitMSUJfREVQRU5EUz0JZXhwYXQuNjoke1BPUlRTRElS
fS90ZXh0cHJvYy9leHBhdDINCiANCiBVU0VfUEVSTDU9CXllcw0KIFVTRV9HRVRPUFRfTE9ORz0J
eWVzDQorVVNFX1dYPQkJMi42DQogSU5TVEFMTFNfU0hMSUI9CXllcw0KIE1BS0VfRU5WPQlJTkNE
SVI9Ii1JJHtMT0NBTEJBU0V9L2luY2x1ZGUiIExERkxBR1M9Ii1MJHtMT0NBTEJBU0V9L2xpYiIN
CiANCkluZGV4OiBjb21tcy90cnVzdGVkcXNsL2ZpbGVzL01ha2VmaWxlDQo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09DQpS
Q1MgZmlsZTogL2hvbWUvcGN2cy9wb3J0cy9jb21tcy90cnVzdGVkcXNsL2ZpbGVzL01ha2VmaWxl
LHYNCnJldHJpZXZpbmcgcmV2aXNpb24gMS4zDQpkaWZmIC11IC1yMS4zIE1ha2VmaWxlDQotIC0t
LSBjb21tcy90cnVzdGVkcXNsL2ZpbGVzL01ha2VmaWxlCTkgTWF5IDIwMDYgMjE6MTY6NTYgLTAw
MDAJMS4zDQorKysgY29tbXMvdHJ1c3RlZHFzbC9maWxlcy9NYWtlZmlsZQkxMyBKdW4gMjAwNiAy
MzoyMjoxMSAtMDAwMA0KQEAgLTEsNyArMSw3IEBADQogIyAkRnJlZUJTRDogcG9ydHMvY29tbXMv
dHJ1c3RlZHFzbC9maWxlcy9NYWtlZmlsZSx2IDEuMyAyMDA2LzA1LzA5IDIxOjE2OjU2IGF6IEV4
cCAkDQogDQogYWxsOg0KLSAtCShjZCB0cXNsbGliLTIuMDsuL2NvbmZpZ3VyZSAtLXdpdGgtd3h3
aW5kb3dzPSR7WDExQkFTRX0vYmluL3d4Z3RrMi0yLjYtY29uZmlnO21ha2U7bWFrZSBjb252ZXJ0
ZXI7bWFrZSBnZW5fY3JxO21ha2UgbG9hZF9jZXJ0O21ha2Ugc3RhdGlvbl9sb2MpDQorCShjZCB0
cXNsbGliLTIuMDsuL2NvbmZpZ3VyZSAtLXdpdGgtd3h3aW5kb3dzPSR7V1hfQ09ORklHfTttYWtl
O21ha2UgY29udmVydGVyO21ha2UgZ2VuX2NycTttYWtlIGxvYWRfY2VydDttYWtlIHN0YXRpb25f
bG9jKQ0KIAkoY2QgVHJ1c3RlZFFTTC0xLjExO21ha2UpDQogDQogaW5zdGFsbDoNCkluZGV4OiBj
b21tcy90cnVzdGVkcXNsL2ZpbGVzL01ha2VmaWxlLlRydXN0ZWRRU0wtMS4xMQ0KPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQ0KUkNTIGZpbGU6IC9ob21lL3BjdnMvcG9ydHMvY29tbXMvdHJ1c3RlZHFzbC9maWxlcy9NYWtl
ZmlsZS5UcnVzdGVkUVNMLTEuMTEsdg0KcmV0cmlldmluZyByZXZpc2lvbiAxLjINCmRpZmYgLXUg
LXIxLjIgTWFrZWZpbGUuVHJ1c3RlZFFTTC0xLjExDQotIC0tLSBjb21tcy90cnVzdGVkcXNsL2Zp
bGVzL01ha2VmaWxlLlRydXN0ZWRRU0wtMS4xMQk5IE1heSAyMDA2IDIxOjE2OjU2IC0wMDAwCTEu
Mg0KKysrIGNvbW1zL3RydXN0ZWRxc2wvZmlsZXMvTWFrZWZpbGUuVHJ1c3RlZFFTTC0xLjExCTEz
IEp1biAyMDA2IDIzOjIyOjExIC0wMDAwDQpAQCAtNSw4ICs1LDggQEANCiBMSUJTPS1seiAtbGV4
cGF0IC1sY3J5cHRvDQogSU5DRElSID0gLUkkKFRRU0xJTkMpDQogQlVJTEQgPSB1bm9mZmljaWFs
DQotIC1XWEZMQUdTPWB3eGd0azItMi42LWNvbmZpZyAtLWNmbGFnc2ANCi0gLVdYTElCUz1gd3hn
dGsyLTIuNi1jb25maWcgLS1saWJzYA0KK1dYRkxBR1M9YCR7V1hfQ09ORklHfSAtLWNmbGFnc2AN
CitXWExJQlM9YCR7V1hfQ09ORklHfSAtLWxpYnNgDQogREVGUyA9IC1ESEFWRV9DT05GSUdfSA0K
IENYWEZMQUdTICs9ICAkKERFRlMpICQoSU5DRElSKSAgLURIQVZFX0xJQkNSWVBUTz0xIC1EU1RE
Q19IRUFERVJTPTEgLURIQVZFX01LRElSPTEgLURIQVZFX1NUUkVSUk9SPTEgICQoV1hGTEFHUykN
CiANCkluZGV4OiBkYXRhYmFzZXMvcGdhZG1pbjMvTWFrZWZpbGUNCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0NClJDUyBm
aWxlOiAvaG9tZS9wY3ZzL3BvcnRzL2RhdGFiYXNlcy9wZ2FkbWluMy9NYWtlZmlsZSx2DQpyZXRy
aWV2aW5nIHJldmlzaW9uIDEuMjUNCmRpZmYgLXUgLXIxLjI1IE1ha2VmaWxlDQotIC0tLSBkYXRh
YmFzZXMvcGdhZG1pbjMvTWFrZWZpbGUJMjEgTWF5IDIwMDYgMTQ6MDQ6NDIgLTAwMDAJMS4yNQ0K
KysrIGRhdGFiYXNlcy9wZ2FkbWluMy9NYWtlZmlsZQkxMyBKdW4gMjAwNiAyMzoyMjoxMSAtMDAw
MA0KQEAgLTE3LDIyICsxNywxNiBAQA0KIFVTRV9HRVRURVhUPQl5ZXMNCiBVU0VfUEdTUUw9CXll
cw0KIEJST0tFTl9XSVRIX1BHU1FMPQk3Mw0KK1VTRV9XWD0JCTIuNg0KK1dYX0NPTVBTPQljb250
cmliDQorV1hfQ09ORl9BUkdTPQlyZWxhdGl2ZQ0KK1dYX1VOSUNPREU9CXllcw0KIEdOVV9DT05G
SUdVUkU9CXllcw0KLSAtQ09ORklHVVJFX0FSR1M9CS0td2l0aC13eD0ke1gxMUJBU0V9IC0td2l0
aC13eC1jb25maWc9JHtXWF9DT05GSUd9DQogQ09ORklHVVJFX1RBUkdFVD0JLS1idWlsZD0ke0FS
Q0h9LXBvcnRibGQtZnJlZWJzZCR7T1NSRUx9DQogQ09ORklHVVJFX0VOVj0JQ1BQRkxBR1M9IiR7
UFRIUkVBRF9DRkxBR1N9IiBMSUJTPSIke1BUSFJFQURfTElCU30iDQogQ09ORkxJQ1RTPQlwZ2Fk
bWluMy0xLlsxMl0qDQogDQotIC1MSUJfREVQRU5EUys9CXd4X2d0azJ1X3N0Yy0yLjYuMDoke1BP
UlRTRElSfS94MTEtdG9vbGtpdHMvd3hndGsyNi11bmljb2RlLWNvbnRyaWINCi0gLVdYX0NPTkZJ
Rz0Jd3hndGsydS0yLjYtY29uZmlnDQotIC0NCiBwb3N0LWluc3RhbGw6DQogCUAke0NBVH0gJHtQ
S0dNRVNTQUdFfQ0KIA0KLSAtLmluY2x1ZGUgPGJzZC5wb3J0LnByZS5taz4NCi0gLQ0KLSAtLmlm
ICR7T1NWRVJTSU9OfSA8IDUwMDAwMA0KLSAtQlJPS0VOPQkJcmVxdWlyZXMgd2NoYXJfdA0KLSAt
LmVuZGlmDQotIC0NCi0gLS5pbmNsdWRlIDxic2QucG9ydC5wb3N0Lm1rPg0KKy5pbmNsdWRlIDxi
c2QucG9ydC5taz4NCkluZGV4OiBkYXRhYmFzZXMvcGdhZG1pbjMtMTIvTWFrZWZpbGUNCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0NClJDUyBmaWxlOiAvaG9tZS9wY3ZzL3BvcnRzL2RhdGFiYXNlcy9wZ2FkbWluMy0xMi9N
YWtlZmlsZSx2DQpyZXRyaWV2aW5nIHJldmlzaW9uIDEuMjMNCmRpZmYgLXUgLXIxLjIzIE1ha2Vm
aWxlDQotIC0tLSBkYXRhYmFzZXMvcGdhZG1pbjMtMTIvTWFrZWZpbGUJNCBNYXkgMjAwNiAyMTo0
MDowNCAtMDAwMAkxLjIzDQorKysgZGF0YWJhc2VzL3BnYWRtaW4zLTEyL01ha2VmaWxlCTEzIEp1
biAyMDA2IDIzOjIyOjExIC0wMDAwDQpAQCAtMTYsOCArMTYsMTAgQEANCiBDT01NRU5UPQlQb3N0
Z3JlU1FMIGRhdGFiYXNlIGRlc2lnbiBhbmQgbWFuYWdlbWVudCBzeXN0ZW0NCiANCiBVU0VfUEdT
UUw9CXllcw0KK1VTRV9XWD0JCTIuNg0KK1dYX0NPTVBTPQljb250cmliDQorV1hfQ09ORl9BUkdT
PQlyZWxhdGl2ZQ0KIEdOVV9DT05GSUdVUkU9CXllcw0KLSAtQ09ORklHVVJFX0FSR1M9CS0td2l0
aC13eD0ke1gxMUJBU0V9IC0td2l0aC13eC1jb25maWc9JHtXWF9DT05GSUd9DQogQ09ORklHVVJF
X1RBUkdFVD0JLS1idWlsZD0ke0FSQ0h9LXBvcnRibGQtZnJlZWJzZCR7T1NSRUx9DQogQ09ORklH
VVJFX0VOVj0JQ1BQRkxBR1M9IiR7UFRIUkVBRF9DRkxBR1N9IiBMSUJTPSIke1BUSFJFQURfTElC
U30iDQogQ09ORkxJQ1RTPQlwZ2FkbWluMy0xLls0NTY3ODldKg0KQEAgLTI1LDI2ICsyNywxMiBA
QA0KIA0KIC5pbmNsdWRlIDxic2QucG9ydC5wcmUubWs+DQogDQotIC0uaWYgJHtPU1ZFUlNJT059
IDwgNTAwMDAwDQotIC1XSVRIT1VUX1VOSUNPREU9CXllcw0KLSAtLmVuZGlmDQotIC0NCi0gLXBy
ZS1ldmVyeXRoaW5nOjoNCi0gLS5pZiAhZGVmaW5lZChXSVRIT1VUX1VOSUNPREUpDQotIC0JQCR7
RUNIT19NU0d9ICJZb3UgY2FuIGJ1aWxkIG5vbi1Vbmljb2RlIHZlcnNpb24gYnkgZGVmaW5pbmcg
V0lUSE9VVF9VTklDT0RFLiINCi0gLS5lbmRpZg0KLSAtDQotIC0uaWYgIWRlZmluZWQoV0lUSE9V
VF9VTklDT0RFKQ0KLSAtTElCX0RFUEVORFMrPQl3eF9ndGsydV9zdGMtMi42LjA6JHtQT1JUU0RJ
Un0veDExLXRvb2xraXRzL3d4Z3RrMjYtdW5pY29kZS1jb250cmliDQotIC1XWF9DT05GSUc9CXd4
Z3RrMnUtMi42LWNvbmZpZw0KKy5pZiBkZWZpbmVkKFdYX1VOSUNPREUpDQogUEtHTkFNRVNVRkZJ
WD0JLXVuaWNvZGUNCiBQS0dNRVNTQUdFPQkke1BLR0RJUn0vcGtnLW1lc3NhZ2UtdW5pY29kZQ0K
IA0KIHBvc3QtaW5zdGFsbDoNCiAJQCR7Q0FUfSAke1BLR01FU1NBR0V9DQotIC0uZWxzZQ0KLSAt
TElCX0RFUEVORFMrPQl3eF9ndGsyX3N0Yy0yLjYuMDoke1BPUlRTRElSfS94MTEtdG9vbGtpdHMv
d3hndGsyNi1jb250cmliDQotIC1XWF9DT05GSUc9CXd4Z3RrMi0yLjYtY29uZmlnDQotIC0uZW5k
aWYgIyBXSVRIT1VUX1VOSUNPREUNCisuZW5kaWYNCiANCiAuaW5jbHVkZSA8YnNkLnBvcnQucG9z
dC5taz4NCkluZGV4OiBkYXRhYmFzZXMvcHlkYmRlc2lnbmVyL01ha2VmaWxlDQo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
DQpSQ1MgZmlsZTogL2hvbWUvcGN2cy9wb3J0cy9kYXRhYmFzZXMvcHlkYmRlc2lnbmVyL01ha2Vm
aWxlLHYNCnJldHJpZXZpbmcgcmV2aXNpb24gMS4xNA0KZGlmZiAtdSAtcjEuMTQgTWFrZWZpbGUN
Ci0gLS0tIGRhdGFiYXNlcy9weWRiZGVzaWduZXIvTWFrZWZpbGUJMTkgQXByIDIwMDYgMTU6Mzg6
NTggLTAwMDAJMS4xNA0KKysrIGRhdGFiYXNlcy9weWRiZGVzaWduZXIvTWFrZWZpbGUJMTMgSnVu
IDIwMDYgMjM6MjI6MTEgLTAwMDANCkBAIC0xNCwxMSArMTQsMTEgQEANCiBNQUlOVEFJTkVSPQl4
cmlkZUB4MTIuZGsNCiBDT01NRU5UPQlHcmFwaGljYWwgZGVzaWduZXIgZm9yIHJlbGF0aW9uYWwg
ZGF0YWJhc2VzDQogDQotIC1SVU5fREVQRU5EUys9CSR7UFlUSE9OX1NJVEVMSUJESVJ9L3d4UHl0
aG9uL19faW5pdF9fLnB5OiR7UE9SVFNESVJ9L3gxMS10b29sa2l0cy9weS13eFB5dGhvbjI0DQot
IC0NCiBFWFRSQUNUX0FGVEVSX0FSR1M9CXwgJHtUQVJ9IC0tZXhjbHVkZSBDVlMgLXhmIC0NCiAN
CiBVU0VfUFlUSE9OPQkyLjIrDQorVVNFX1dYPQkJMi40DQorV1hfQ09NUFM9CXB5dGhvbl9ydW4N
CiBSRUlOUExBQ0VfQVJHUz0JLWkgIiINCiBXUktTUkM9CQkke1dSS0RJUn0vUHlEQkRlc2lnbmVy
DQogDQpJbmRleDogZGVza3V0aWxzL2N5Y2xlL01ha2VmaWxlDQo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09DQpSQ1MgZmls
ZTogL2hvbWUvcGN2cy9wb3J0cy9kZXNrdXRpbHMvY3ljbGUvTWFrZWZpbGUsdg0KcmV0cmlldmlu
ZyByZXZpc2lvbiAxLjUNCmRpZmYgLXUgLXIxLjUgTWFrZWZpbGUNCi0gLS0tIGRlc2t1dGlscy9j
eWNsZS9NYWtlZmlsZQk0IE1heSAyMDA2IDIxOjQwOjA4IC0wMDAwCTEuNQ0KKysrIGRlc2t1dGls
cy9jeWNsZS9NYWtlZmlsZQkxMyBKdW4gMjAwNiAyMzoyMjoxMSAtMDAwMA0KQEAgLTE1LDEwICsx
NSwxMCBAQA0KIE1BSU5UQUlORVI9CWRhbmZlQEZyZWVCU0Qub3JnDQogQ09NTUVOVD0JQSBjYWxl
bmRhciBwcm9ncmFtIGZvciB3b21lbg0KIA0KLSAtUlVOX0RFUEVORFM9CSR7UFlUSE9OX1NJVEVM
SUJESVJ9L3d4LTIuNi1ndGsyLWFuc2kvd3hQeXRob24vX19pbml0X18ucHk6JHtQT1JUU0RJUn0v
eDExLXRvb2xraXRzL3B5LXd4UHl0aG9uMjYNCi0gLQ0KIFVTRV9CWklQMj0JeWVzDQogVVNFX1BZ
VEhPTl9SVU49CXllcw0KK1VTRV9XWD0JCTIuNg0KK1dYX0NPTVBTPQlweXRob25fcnVuDQogTk9f
QlVJTEQ9CXllcw0KIA0KIE1BTjE9CQkke1BPUlROQU1FfS4xDQpJbmRleDogZGVza3V0aWxzL3hj
aG0vTWFrZWZpbGUNCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0NClJDUyBmaWxlOiAvaG9tZS9wY3ZzL3BvcnRzL2Rlc2t1
dGlscy94Y2htL01ha2VmaWxlLHYNCnJldHJpZXZpbmcgcmV2aXNpb24gMS4yNg0KZGlmZiAtdSAt
cjEuMjYgTWFrZWZpbGUNCi0gLS0tIGRlc2t1dGlscy94Y2htL01ha2VmaWxlCTIzIE1heSAyMDA2
IDA4OjE3OjI5IC0wMDAwCTEuMjYNCisrKyBkZXNrdXRpbHMveGNobS9NYWtlZmlsZQkxMyBKdW4g
MjAwNiAyMzoyMjoxMSAtMDAwMA0KQEAgLTE0LDEyICsxNCwxMiBAQA0KIE1BSU5UQUlORVI9CXBh
dkBGcmVlQlNELm9yZw0KIENPTU1FTlQ9CVdpbmRvd3MgSFRNTCBIZWxwICguY2htKSB2aWV3ZXIg
Zm9yIFVOSVgNCiANCi0gLUxJQl9ERVBFTkRTPQljaG0uMDoke1BPUlRTRElSfS9taXNjL2NobWxp
YiBcDQotIC0JCXd4X2Jhc2V1LTIuNi4wOiR7UE9SVFNESVJ9L3gxMS10b29sa2l0cy93eGd0azI2
LXVuaWNvZGUNCitMSUJfREVQRU5EUz0JY2htLjA6JHtQT1JUU0RJUn0vbWlzYy9jaG1saWINCiAN
CitVU0VfV1g9CQkyLjYNCitXWF9DT05GX0FSR1M9CWFic29sdXRlDQogR05VX0NPTkZJR1VSRT0J
eWVzDQogVVNFX1hfUFJFRklYPQl5ZXMNCi0gLUNPTkZJR1VSRV9BUkdTPQktLXdpdGgtd3gtY29u
ZmlnPSR7WDExQkFTRX0vYmluL3d4Z3RrMnUtMi42LWNvbmZpZw0KIENPTkZJR1VSRV9FTlY9CUNQ
UEZMQUdTPSItSSR7TE9DQUxCQVNFfS9pbmNsdWRlIiBMREZMQUdTPSItTCR7TE9DQUxCQVNFfS9s
aWIgJHtQVEhSRUFEX0xJQlN9Ig0KIA0KIHBvc3QtcGF0Y2g6DQpJbmRleDogZGV2ZWwvYWdpZGUv
TWFrZWZpbGUNCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0NClJDUyBmaWxlOiAvaG9tZS9wY3ZzL3BvcnRzL2RldmVsL2Fn
aWRlL01ha2VmaWxlLHYNCnJldHJpZXZpbmcgcmV2aXNpb24gMS44DQpkaWZmIC11IC1yMS44IE1h
a2VmaWxlDQotIC0tLSBkZXZlbC9hZ2lkZS9NYWtlZmlsZQk3IE1hciAyMDA2IDA4OjI2OjAzIC0w
MDAwCTEuOA0KKysrIGRldmVsL2FnaWRlL01ha2VmaWxlCTEzIEp1biAyMDA2IDIzOjIyOjExIC0w
MDAwDQpAQCAtMTYsOCArMTYsNyBAQA0KIENPTU1FTlQ9CUEtQS1QIEdVSSBJREU6IGEgZnJhbWV3
b3JrIGZvciBzb2Z0d2FyZSBkZXZlbG9wbWVudA0KIA0KIFJVTl9ERVBFTkRTPQkke0xPQ0FMQkFT
RX0vYmluL2FhcDoke1BPUlRTRElSfS9kZXZlbC9hYXAgXA0KLSAtCQkke0xPQ0FMQkFTRX0vYmlu
L3ZpbToke1BPUlRTRElSfS9lZGl0b3JzL3ZpbSBcDQotIC0JCSR7UFlUSE9OX1NJVEVMSUJESVJ9
L3d4UHl0aG9uL19faW5pdF9fLnB5OiR7UE9SVFNESVJ9L3gxMS10b29sa2l0cy9weS13eFB5dGhv
bjI0DQorCQkke0xPQ0FMQkFTRX0vYmluL3ZpbToke1BPUlRTRElSfS9lZGl0b3JzL3ZpbQ0KIA0K
IE1BTjE9CQlhZ2lkZS4xDQogDQpAQCAtMjYsNiArMjUsOCBAQA0KIA0KIFVTRV9aSVA9CXllcw0K
IFVTRV9QWVRIT049CXllcw0KK1VTRV9XWD0JCTIuNA0KK1dYX0NPTVBTPQlweXRob25fcnVuDQog
UExJU1RfU1VCKz0JUE9SVFZFUlNJT049JHtQT1JUVkVSU0lPTn0NCiANCiBwcmUtaW5zdGFsbDoN
CkluZGV4OiBkZXZlbC9ib2Fjb25zdHJ1Y3Rvci9NYWtlZmlsZQ0KPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQ0KUkNTIGZp
bGU6IC9ob21lL3BjdnMvcG9ydHMvZGV2ZWwvYm9hY29uc3RydWN0b3IvTWFrZWZpbGUsdg0KcmV0
cmlldmluZyByZXZpc2lvbiAxLjE3DQpkaWZmIC11IC1yMS4xNyBNYWtlZmlsZQ0KLSAtLS0gZGV2
ZWwvYm9hY29uc3RydWN0b3IvTWFrZWZpbGUJMTIgSmFuIDIwMDYgMTI6NTQ6MDcgLTAwMDAJMS4x
Nw0KKysrIGRldmVsL2JvYWNvbnN0cnVjdG9yL01ha2VmaWxlCTEzIEp1biAyMDA2IDIzOjIyOjEx
IC0wMDAwDQpAQCAtMTYsMTIgKzE2LDEyIEBADQogTUFJTlRBSU5FUj0JZmlsaXBwby5uYXRhbGlA
Z21haWwuY29tDQogQ09NTUVOVD0JQSBjcm9zcyBwbGF0Zm9ybSBSQUQgR1VJIEJ1aWxkaW5nIElE
RSBmb3Igd3hQeXRob24NCiANCi0gLVJVTl9ERVBFTkRTPQkke1BZVEhPTl9TSVRFTElCRElSfS93
eC0yLjYtZ3RrMi1hbnNpL3d4L19faW5pdF9fLnB5OiR7UE9SVFNESVJ9L3gxMS10b29sa2l0cy9w
eS13eFB5dGhvbjI2DQotIC0NCiBXUktTUkM9CQkke1dSS0RJUn0vYm9hLWNvbnN0cnVjdG9yLSR7
UE9SVFZFUlNJT059DQogDQogVVNFX1pJUD0JeWVzDQogVVNFX1BZVEhPTj0JeWVzDQorVVNFX1dY
PQkJMi42DQorV1hfQ09NUFM9CXB5dGhvbl9ydW4NCiBEQVRBRElSPQkke1BSRUZJWH0vc2hhcmUv
Qm9hDQogDQogZG8tYnVpbGQ6DQpJbmRleDogZGV2ZWwvY29kZWJsb2Nrcy9NYWtlZmlsZQ0KPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQ0KUkNTIGZpbGU6IC9ob21lL3BjdnMvcG9ydHMvZGV2ZWwvY29kZWJsb2Nrcy9NYWtl
ZmlsZSx2DQpyZXRyaWV2aW5nIHJldmlzaW9uIDEuMg0KZGlmZiAtdSAtcjEuMiBNYWtlZmlsZQ0K
LSAtLS0gZGV2ZWwvY29kZWJsb2Nrcy9NYWtlZmlsZQkyOSBKYW4gMjAwNiAyMjo1NDoyOCAtMDAw
MAkxLjINCisrKyBkZXZlbC9jb2RlYmxvY2tzL01ha2VmaWxlCTEzIEp1biAyMDA2IDIzOjIyOjEx
IC0wMDAwDQpAQCAtMTcsMTEgKzE3LDExIEBADQogQ09NTUVOVD0JT3BlbiBzb3VyY2UsIGNyb3Nz
LXBsYXRmb3JtLCBmcmVlIEMvQysrIElERQ0KIA0KIEJVSUxEX0RFUEVORFM9CXppcDoke1BPUlRT
RElSfS9hcmNoaXZlcnMvemlwDQotIC1MSUJfREVQRU5EUz0Jd3hfZ3RrMl94cmMtMi42LjA6JHtQ
T1JUU0RJUn0veDExLXRvb2xraXRzL3d4Z3RrMjYNCiANCiBXUktTUkM9CQkke1dSS0RJUn0vJHtE
SVNUTkFNRX0vc3JjDQogDQogVVNFX0dNQUtFPQl5ZXMNCitVU0VfV1g9CQkyLjYNCiBJTlNUQUxM
U19TSExJQj0JeWVzDQogDQogVEFSR0VUUz0JdGlueVhNTCBzY2ludGlsbGEgc2RrIHd4RG9ja2l0
IHNyYyBjb25zb2xlX3J1bm5lciBkb2MNCkBAIC0zNSw5ICszNSw2IEBADQogDQogLmluY2x1ZGUg
PGJzZC5wb3J0LnByZS5taz4NCiANCi0gLS5pZiAke09TVkVSU0lPTn0gPCA1MDAwMDANCi0gLUJS
T0tFTj0JCUNvZGU6OkJsb2NrcyBpcyBjdXJyZW50bHkgbm90IHN1cHBvcnRlZCBmb3IgRnJlZUJT
RCB2ZXJzaW9ucyBwcmlvciB0byBGcmVlQlNEIDUNCi0gLS5lbmRpZg0KIC5pZiAke0FSQ0h9ID09
IGlhNjQgJiYgJHtPU1ZFUlNJT059ID49IDYwMDAwMCAmJiAke09TVkVSU0lPTn0gPCA3MDAwMDAN
CiBCUk9LRU49CQlDb2RlOjpCbG9ja3MgaXMgY3VycmVudGx5IG5vdCBzdXBwb3J0ZWQgb24gSUE2
NCBGcmVlQlNEIDYNCiAuZW5kaWYNCkBAIC01Miw3ICs0OSw3IEBADQogCSR7WEFSR1N9IC0wICR7
UkVJTlBMQUNFX0NNRH0gLWUgJ3MvW1s6Y250cmw6XV0qJCQvLycNCiAJQCgke0NBVH0gJHtXUktT
UkN9L3VwZGF0ZSB8ICR7VFJ9IC1kICJcciIgPiAke1dSS1NSQ30vdXBkYXRlLnNoKQ0KIA0KLSAt
cHJlLWJ1aWxkOg0KK3ByZS1wYXRjaDoNCiAJQCR7Q1B9ICR7RklMRVNESVJ9L01ha2VmaWxlICR7
V1JLU1JDfQ0KIA0KIC5mb3IgdCBpbiAke1RBUkdFVFN9DQpAQCAtNjYsNiArNjMsMTkgQEANCiAu
IGVuZGZvcg0KIC5lbmRmb3INCiANCisuaWYgZXhpc3RzKCR7V1hfQ09ORklHfSkNCitMSUJfV1hY
UkMhPQkke1dYX0NPTkZJR30gLS1saWJzIHhyYw0KKy5lbmRpZg0KKw0KK3ByZS1idWlsZDoNCisJ
QCR7UkVJTlBMQUNFX0NNRH0gLWUgJ3N8d3gtY29uZmlnfCR7V1hfQ09ORklHfXw7IFwNCisJCXN8
JSVMSUJfV1hYUkMlJXwke0xJQl9XWFhSQzpNKnhyYyo6Qy9eLWwvL318OyBcDQorCQlzfCUlUFJF
RklYJSV8JHtQUkVGSVh9fCcgXA0KKwkJJHtXUktTUkN9L0NvZGVCbG9ja3MtdW5peC5jYnAgXA0K
KwkJJHtXUktTUkN9L01ha2VmaWxlIFwNCisJCSR7V1JLU1JDfS9zcmMvYXBwLmNwcCBcDQorCQkk
e1dSS1NSQ30vdGVtcGxhdGVzL3VuaXgvd3h3aWRnZXRzLmNicA0KKw0KIHBvc3QtYnVpbGQ6DQog
CUAoJHtGSU5EfSAtRSAke1dSS1NSQ30gLXR5cGUgZiAtaXJlZ2V4ICIuKlwuKG9yaWd8YmFrKSIg
LWV4ZWMgJHtSTX0ge30gXDspDQogCUAke0NITU9EfSAreCAke1dSS1NSQ30vdXBkYXRlLnNoDQpJ
bmRleDogZGV2ZWwvY29kZWJsb2Nrcy9maWxlcy9NYWtlZmlsZQ0KPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQ0KUkNTIGZp
bGU6IC9ob21lL3BjdnMvcG9ydHMvZGV2ZWwvY29kZWJsb2Nrcy9maWxlcy9NYWtlZmlsZSx2DQpy
ZXRyaWV2aW5nIHJldmlzaW9uIDEuMg0KZGlmZiAtdSAtcjEuMiBNYWtlZmlsZQ0KLSAtLS0gZGV2
ZWwvY29kZWJsb2Nrcy9maWxlcy9NYWtlZmlsZQkyOSBKYW4gMjAwNiAyMjo1NDoyOCAtMDAwMAkx
LjINCisrKyBkZXZlbC9jb2RlYmxvY2tzL2ZpbGVzL01ha2VmaWxlCTEzIEp1biAyMDA2IDIzOjIy
OjEyIC0wMDAwDQpAQCAtMTEsMTMgKzExLDEzIEBADQogaW5jbHVkZSAuL2djYy5kZWZzDQogDQog
IyMjIFZhcmlhYmxlcyB1c2VkIGluIHRoaXMgTWFrZWZpbGUNCi0gLUxJQl9XWFhSQz13eF9ndGsy
X3hyYy0yLjYNCitMSUJfV1hYUkM9JSVMSUJfV1hYUkMlJQ0KIA0KICMjIyBDb21waWxlci9saW5r
ZXIgb3B0aW9ucw0KIHRpbnlYTUxfR0xPQkFMX0NGTEFHUz0NCi0gLXRpbnlYTUxfUFJPSkVDVF9D
RkxBR1M9IC1XYWxsIC1mUElDIC1nIC1waXBlIC1mbm8tcGNjLXN0cnVjdC1yZXR1cm4gLWZuby1y
dHRpIC1mbWVzc2FnZS1sZW5ndGg9MCBgd3hndGsyLTIuNi1jb25maWcgLS1jZmxhZ3NgDQordGlu
eVhNTF9QUk9KRUNUX0NGTEFHUz0gLVdhbGwgLWZQSUMgLWcgLXBpcGUgLWZuby1wY2Mtc3RydWN0
LXJldHVybiAtZm5vLXJ0dGkgLWZtZXNzYWdlLWxlbmd0aD0wIGAkKFdYX0NPTkZJRykgLS1jZmxh
Z3NgDQogdGlueVhNTF9HTE9CQUxfTERGTEFHUz0NCi0gLXRpbnlYTUxfUFJPSkVDVF9MREZMQUdT
PSBgd3hndGsyLTIuNi1jb25maWcgLS1saWJzYA0KK3RpbnlYTUxfUFJPSkVDVF9MREZMQUdTPSBg
JChXWF9DT05GSUcpIC0tbGlic2ANCiB0aW55WE1MX0dMT0JBTF9JTkNTPSAtSS91c3IvaW5jbHVk
ZQ0KIHRpbnlYTUxfUFJPSkVDVF9JTkNTPSAtSXNkay93eHNjaW50aWxsYS9pbmNsdWRlDQogdGlu
eVhNTF9HTE9CQUxfTElCRElSUz0gLUwvdXNyL2xpYg0KQEAgLTI1LDkgKzI1LDkgQEANCiB0aW55
WE1MX0dMT0JBTF9MSUJTPQ0KIHRpbnlYTUxfUFJPSkVDVF9MSUJTPQ0KIHNjaW50aWxsYV9HTE9C
QUxfQ0ZMQUdTPQ0KLSAtc2NpbnRpbGxhX1BST0pFQ1RfQ0ZMQUdTPSAtV2FsbCAtZlBJQyAtZyAt
cGlwZSAtZm5vLXBjYy1zdHJ1Y3QtcmV0dXJuIC1mbm8tcnR0aSAtZm1lc3NhZ2UtbGVuZ3RoPTAg
YHd4Z3RrMi0yLjYtY29uZmlnIC0tY2ZsYWdzYA0KK3NjaW50aWxsYV9QUk9KRUNUX0NGTEFHUz0g
LVdhbGwgLWZQSUMgLWcgLXBpcGUgLWZuby1wY2Mtc3RydWN0LXJldHVybiAtZm5vLXJ0dGkgLWZt
ZXNzYWdlLWxlbmd0aD0wIGAkKFdYX0NPTkZJRykgLS1jZmxhZ3NgDQogc2NpbnRpbGxhX0dMT0JB
TF9MREZMQUdTPQ0KLSAtc2NpbnRpbGxhX1BST0pFQ1RfTERGTEFHUz0gYHd4Z3RrMi0yLjYtY29u
ZmlnIC0tbGlic2ANCitzY2ludGlsbGFfUFJPSkVDVF9MREZMQUdTPSBgJChXWF9DT05GSUcpIC0t
bGlic2ANCiBzY2ludGlsbGFfR0xPQkFMX0lOQ1M9IC1JL3Vzci9pbmNsdWRlDQogc2NpbnRpbGxh
X1BST0pFQ1RfSU5DUz0gLUlzZGsvd3hzY2ludGlsbGEvaW5jbHVkZQ0KIHNjaW50aWxsYV9HTE9C
QUxfTElCRElSUz0gLUwvdXNyL2xpYg0KQEAgLTM1LDkgKzM1LDkgQEANCiBzY2ludGlsbGFfR0xP
QkFMX0xJQlM9DQogc2NpbnRpbGxhX1BST0pFQ1RfTElCUz0NCiBzZGtfR0xPQkFMX0NGTEFHUz0N
Ci0gLXNka19QUk9KRUNUX0NGTEFHUz0gLVdhbGwgLWZQSUMgLWcgLXBpcGUgLWZuby1wY2Mtc3Ry
dWN0LXJldHVybiAtZm5vLXJ0dGkgLWZtZXNzYWdlLWxlbmd0aD0wIGB3eGd0azItMi42LWNvbmZp
ZyAtLWNmbGFnc2ANCitzZGtfUFJPSkVDVF9DRkxBR1M9IC1XYWxsIC1mUElDIC1nIC1waXBlIC1m
bm8tcGNjLXN0cnVjdC1yZXR1cm4gLWZuby1ydHRpIC1mbWVzc2FnZS1sZW5ndGg9MCBgJChXWF9D
T05GSUcpIC0tY2ZsYWdzYA0KIHNka19HTE9CQUxfTERGTEFHUz0NCi0gLXNka19QUk9KRUNUX0xE
RkxBR1M9IGB3eGd0azItMi42LWNvbmZpZyAtLWxpYnNgDQorc2RrX1BST0pFQ1RfTERGTEFHUz0g
YCQoV1hfQ09ORklHKSAtLWxpYnNgDQogc2RrX0dMT0JBTF9JTkNTPSAtSS91c3IvaW5jbHVkZQ0K
IHNka19QUk9KRUNUX0lOQ1M9IC1Jc2RrL3d4c2NpbnRpbGxhL2luY2x1ZGUNCiBzZGtfR0xPQkFM
X0xJQkRJUlM9IC1ML3Vzci9saWINCkBAIC00NSw5ICs0NSw5IEBADQogc2RrX0dMT0JBTF9MSUJT
PQ0KIHNka19QUk9KRUNUX0xJQlM9DQogd3hEb2NraXRfR0xPQkFMX0NGTEFHUz0NCi0gLXd4RG9j
a2l0X1BST0pFQ1RfQ0ZMQUdTPSAtV2FsbCAtZlBJQyAtZyAtcGlwZSAtZm5vLXBjYy1zdHJ1Y3Qt
cmV0dXJuIC1mbm8tcnR0aSAtZm1lc3NhZ2UtbGVuZ3RoPTAgYHd4Z3RrMi0yLjYtY29uZmlnIC0t
Y2ZsYWdzYA0KK3d4RG9ja2l0X1BST0pFQ1RfQ0ZMQUdTPSAtV2FsbCAtZlBJQyAtZyAtcGlwZSAt
Zm5vLXBjYy1zdHJ1Y3QtcmV0dXJuIC1mbm8tcnR0aSAtZm1lc3NhZ2UtbGVuZ3RoPTAgYCQoV1hf
Q09ORklHKSAtLWNmbGFnc2ANCiB3eERvY2tpdF9HTE9CQUxfTERGTEFHUz0NCi0gLXd4RG9ja2l0
X1BST0pFQ1RfTERGTEFHUz0gYHd4Z3RrMi0yLjYtY29uZmlnIC0tbGlic2ANCit3eERvY2tpdF9Q
Uk9KRUNUX0xERkxBR1M9IGAkKFdYX0NPTkZJRykgLS1saWJzYA0KIHd4RG9ja2l0X0dMT0JBTF9J
TkNTPSAtSS91c3IvaW5jbHVkZQ0KIHd4RG9ja2l0X1BST0pFQ1RfSU5DUz0gLUlzZGsvd3hzY2lu
dGlsbGEvaW5jbHVkZQ0KIHd4RG9ja2l0X0dMT0JBTF9MSUJESVJTPSAtTC91c3IvbGliDQpAQCAt
NTUsOSArNTUsOSBAQA0KIHd4RG9ja2l0X0dMT0JBTF9MSUJTPQ0KIHd4RG9ja2l0X1BST0pFQ1Rf
TElCUz0NCiBzcmNfR0xPQkFMX0NGTEFHUz0NCi0gLXNyY19QUk9KRUNUX0NGTEFHUz0gLVdhbGwg
LWZQSUMgLWcgLXBpcGUgLWZuby1wY2Mtc3RydWN0LXJldHVybiAtZm5vLXJ0dGkgLWZtZXNzYWdl
LWxlbmd0aD0wIGB3eGd0azItMi42LWNvbmZpZyAtLWNmbGFnc2ANCitzcmNfUFJPSkVDVF9DRkxB
R1M9IC1XYWxsIC1mUElDIC1nIC1waXBlIC1mbm8tcGNjLXN0cnVjdC1yZXR1cm4gLWZuby1ydHRp
IC1mbWVzc2FnZS1sZW5ndGg9MCBgJChXWF9DT05GSUcpIC0tY2ZsYWdzYA0KIHNyY19HTE9CQUxf
TERGTEFHUz0NCi0gLXNyY19QUk9KRUNUX0xERkxBR1M9IGB3eGd0azItMi42LWNvbmZpZyAtLWxp
YnNgDQorc3JjX1BST0pFQ1RfTERGTEFHUz0gYCQoV1hfQ09ORklHKSAtLWxpYnNgDQogc3JjX0dM
T0JBTF9JTkNTPSAtSS91c3IvaW5jbHVkZQ0KIHNyY19QUk9KRUNUX0lOQ1M9IC1Jc2RrL3d4c2Np
bnRpbGxhL2luY2x1ZGUNCiBzcmNfR0xPQkFMX0xJQkRJUlM9IC1ML3Vzci9saWINCkBAIC02NSw5
ICs2NSw5IEBADQogc3JjX0dMT0JBTF9MSUJTPQ0KIHNyY19QUk9KRUNUX0xJQlM9DQogcGx1Z2lu
X0FzdHlsZV9HTE9CQUxfQ0ZMQUdTPQ0KLSAtcGx1Z2luX0FzdHlsZV9QUk9KRUNUX0NGTEFHUz0g
LVdhbGwgLWZQSUMgLWcgLXBpcGUgLWZuby1wY2Mtc3RydWN0LXJldHVybiAtZm5vLXJ0dGkgLWZt
ZXNzYWdlLWxlbmd0aD0wIGB3eGd0azItMi42LWNvbmZpZyAtLWNmbGFnc2ANCitwbHVnaW5fQXN0
eWxlX1BST0pFQ1RfQ0ZMQUdTPSAtV2FsbCAtZlBJQyAtZyAtcGlwZSAtZm5vLXBjYy1zdHJ1Y3Qt
cmV0dXJuIC1mbm8tcnR0aSAtZm1lc3NhZ2UtbGVuZ3RoPTAgYCQoV1hfQ09ORklHKSAtLWNmbGFn
c2ANCiBwbHVnaW5fQXN0eWxlX0dMT0JBTF9MREZMQUdTPQ0KLSAtcGx1Z2luX0FzdHlsZV9QUk9K
RUNUX0xERkxBR1M9IGB3eGd0azItMi42LWNvbmZpZyAtLWxpYnNgDQorcGx1Z2luX0FzdHlsZV9Q
Uk9KRUNUX0xERkxBR1M9IGAkKFdYX0NPTkZJRykgLS1saWJzYA0KIHBsdWdpbl9Bc3R5bGVfR0xP
QkFMX0lOQ1M9IC1JL3Vzci9pbmNsdWRlDQogcGx1Z2luX0FzdHlsZV9QUk9KRUNUX0lOQ1M9IC1J
c2RrL3d4c2NpbnRpbGxhL2luY2x1ZGUNCiBwbHVnaW5fQXN0eWxlX0dMT0JBTF9MSUJESVJTPSAt
TC91c3IvbGliDQpAQCAtNzUsOSArNzUsOSBAQA0KIHBsdWdpbl9Bc3R5bGVfR0xPQkFMX0xJQlM9
DQogcGx1Z2luX0FzdHlsZV9QUk9KRUNUX0xJQlM9DQogcGx1Z2luX0NvbXBpbGVyR0NDX0dMT0JB
TF9DRkxBR1M9DQotIC1wbHVnaW5fQ29tcGlsZXJHQ0NfUFJPSkVDVF9DRkxBR1M9IC1XYWxsIC1m
UElDIC1nIC1waXBlIC1mbm8tcGNjLXN0cnVjdC1yZXR1cm4gLWZuby1ydHRpIC1mbWVzc2FnZS1s
ZW5ndGg9MCBgd3hndGsyLTIuNi1jb25maWcgLS1jZmxhZ3NgDQorcGx1Z2luX0NvbXBpbGVyR0ND
X1BST0pFQ1RfQ0ZMQUdTPSAtV2FsbCAtZlBJQyAtZyAtcGlwZSAtZm5vLXBjYy1zdHJ1Y3QtcmV0
dXJuIC1mbm8tcnR0aSAtZm1lc3NhZ2UtbGVuZ3RoPTAgYCQoV1hfQ09ORklHKSAtLWNmbGFnc2AN
CiBwbHVnaW5fQ29tcGlsZXJHQ0NfR0xPQkFMX0xERkxBR1M9DQotIC1wbHVnaW5fQ29tcGlsZXJH
Q0NfUFJPSkVDVF9MREZMQUdTPSBgd3hndGsyLTIuNi1jb25maWcgLS1saWJzYA0KK3BsdWdpbl9D
b21waWxlckdDQ19QUk9KRUNUX0xERkxBR1M9IGAkKFdYX0NPTkZJRykgLS1saWJzYA0KIHBsdWdp
bl9Db21waWxlckdDQ19HTE9CQUxfSU5DUz0gLUkvdXNyL2luY2x1ZGUNCiBwbHVnaW5fQ29tcGls
ZXJHQ0NfUFJPSkVDVF9JTkNTPSAtSXNkay93eHNjaW50aWxsYS9pbmNsdWRlDQogcGx1Z2luX0Nv
bXBpbGVyR0NDX0dMT0JBTF9MSUJESVJTPSAtTC91c3IvbGliDQpAQCAtODUsOSArODUsOSBAQA0K
IHBsdWdpbl9Db21waWxlckdDQ19HTE9CQUxfTElCUz0NCiBwbHVnaW5fQ29tcGlsZXJHQ0NfUFJP
SkVDVF9MSUJTPQ0KIHBsdWdpbl9EZWJ1Z2dlckdEQl9HTE9CQUxfQ0ZMQUdTPQ0KLSAtcGx1Z2lu
X0RlYnVnZ2VyR0RCX1BST0pFQ1RfQ0ZMQUdTPSAtV2FsbCAtZlBJQyAtZyAtcGlwZSAtZm5vLXBj
Yy1zdHJ1Y3QtcmV0dXJuIC1mbm8tcnR0aSAtZm1lc3NhZ2UtbGVuZ3RoPTAgYHd4Z3RrMi0yLjYt
Y29uZmlnIC0tY2ZsYWdzYA0KK3BsdWdpbl9EZWJ1Z2dlckdEQl9QUk9KRUNUX0NGTEFHUz0gLVdh
bGwgLWZQSUMgLWcgLXBpcGUgLWZuby1wY2Mtc3RydWN0LXJldHVybiAtZm5vLXJ0dGkgLWZtZXNz
YWdlLWxlbmd0aD0wIGAkKFdYX0NPTkZJRykgLS1jZmxhZ3NgDQogcGx1Z2luX0RlYnVnZ2VyR0RC
X0dMT0JBTF9MREZMQUdTPQ0KLSAtcGx1Z2luX0RlYnVnZ2VyR0RCX1BST0pFQ1RfTERGTEFHUz0g
YHd4Z3RrMi0yLjYtY29uZmlnIC0tbGlic2ANCitwbHVnaW5fRGVidWdnZXJHREJfUFJPSkVDVF9M
REZMQUdTPSBgJChXWF9DT05GSUcpIC0tbGlic2ANCiBwbHVnaW5fRGVidWdnZXJHREJfR0xPQkFM
X0lOQ1M9IC1JL3Vzci9pbmNsdWRlDQogcGx1Z2luX0RlYnVnZ2VyR0RCX1BST0pFQ1RfSU5DUz0g
LUlzZGsvd3hzY2ludGlsbGEvaW5jbHVkZQ0KIHBsdWdpbl9EZWJ1Z2dlckdEQl9HTE9CQUxfTElC
RElSUz0gLUwvdXNyL2xpYg0KQEAgLTk1LDkgKzk1LDkgQEANCiBwbHVnaW5fRGVidWdnZXJHREJf
R0xPQkFMX0xJQlM9DQogcGx1Z2luX0RlYnVnZ2VyR0RCX1BST0pFQ1RfTElCUz0NCiBwbHVnaW5f
Q29kZUNvbXBsZXRpb25fR0xPQkFMX0NGTEFHUz0NCi0gLXBsdWdpbl9Db2RlQ29tcGxldGlvbl9Q
Uk9KRUNUX0NGTEFHUz0gLVdhbGwgLWZQSUMgLWcgLXBpcGUgLWZuby1wY2Mtc3RydWN0LXJldHVy
biAtZm5vLXJ0dGkgLWZtZXNzYWdlLWxlbmd0aD0wIGB3eGd0azItMi42LWNvbmZpZyAtLWNmbGFn
c2ANCitwbHVnaW5fQ29kZUNvbXBsZXRpb25fUFJPSkVDVF9DRkxBR1M9IC1XYWxsIC1mUElDIC1n
IC1waXBlIC1mbm8tcGNjLXN0cnVjdC1yZXR1cm4gLWZuby1ydHRpIC1mbWVzc2FnZS1sZW5ndGg9
MCBgJChXWF9DT05GSUcpIC0tY2ZsYWdzYA0KIHBsdWdpbl9Db2RlQ29tcGxldGlvbl9HTE9CQUxf
TERGTEFHUz0NCi0gLXBsdWdpbl9Db2RlQ29tcGxldGlvbl9QUk9KRUNUX0xERkxBR1M9IGB3eGd0
azItMi42LWNvbmZpZyAtLWxpYnNgDQorcGx1Z2luX0NvZGVDb21wbGV0aW9uX1BST0pFQ1RfTERG
TEFHUz0gYCQoV1hfQ09ORklHKSAtLWxpYnNgDQogcGx1Z2luX0NvZGVDb21wbGV0aW9uX0dMT0JB
TF9JTkNTPSAtSS91c3IvaW5jbHVkZQ0KIHBsdWdpbl9Db2RlQ29tcGxldGlvbl9QUk9KRUNUX0lO
Q1M9IC1Jc2RrL3d4c2NpbnRpbGxhL2luY2x1ZGUNCiBwbHVnaW5fQ29kZUNvbXBsZXRpb25fR0xP
QkFMX0xJQkRJUlM9IC1ML3Vzci9saWINCkBAIC0xMDUsOSArMTA1LDkgQEANCiBwbHVnaW5fQ29k
ZUNvbXBsZXRpb25fR0xPQkFMX0xJQlM9DQogcGx1Z2luX0NvZGVDb21wbGV0aW9uX1BST0pFQ1Rf
TElCUz0NCiBwbHVnaW5fQ2xhc3NXaXphcmRfR0xPQkFMX0NGTEFHUz0NCi0gLXBsdWdpbl9DbGFz
c1dpemFyZF9QUk9KRUNUX0NGTEFHUz0gLVdhbGwgLWZQSUMgLWcgLXBpcGUgLWZuby1wY2Mtc3Ry
dWN0LXJldHVybiAtZm5vLXJ0dGkgLWZtZXNzYWdlLWxlbmd0aD0wIGB3eGd0azItMi42LWNvbmZp
ZyAtLWNmbGFnc2ANCitwbHVnaW5fQ2xhc3NXaXphcmRfUFJPSkVDVF9DRkxBR1M9IC1XYWxsIC1m
UElDIC1nIC1waXBlIC1mbm8tcGNjLXN0cnVjdC1yZXR1cm4gLWZuby1ydHRpIC1mbWVzc2FnZS1s
ZW5ndGg9MCBgJChXWF9DT05GSUcpIC0tY2ZsYWdzYA0KIHBsdWdpbl9DbGFzc1dpemFyZF9HTE9C
QUxfTERGTEFHUz0NCi0gLXBsdWdpbl9DbGFzc1dpemFyZF9QUk9KRUNUX0xERkxBR1M9IGB3eGd0
azItMi42LWNvbmZpZyAtLWxpYnNgDQorcGx1Z2luX0NsYXNzV2l6YXJkX1BST0pFQ1RfTERGTEFH
Uz0gYCQoV1hfQ09ORklHKSAtLWxpYnNgDQogcGx1Z2luX0NsYXNzV2l6YXJkX0dMT0JBTF9JTkNT
PSAtSS91c3IvaW5jbHVkZQ0KIHBsdWdpbl9DbGFzc1dpemFyZF9QUk9KRUNUX0lOQ1M9IC1Jc2Rr
L3d4c2NpbnRpbGxhL2luY2x1ZGUNCiBwbHVnaW5fQ2xhc3NXaXphcmRfR0xPQkFMX0xJQkRJUlM9
IC1ML3Vzci9saWINCkBAIC0xMTUsOSArMTE1LDkgQEANCiBwbHVnaW5fQ2xhc3NXaXphcmRfR0xP
QkFMX0xJQlM9DQogcGx1Z2luX0NsYXNzV2l6YXJkX1BST0pFQ1RfTElCUz0NCiBwbHVnaW5fRGVm
TWltZUhhbmRsZXJfR0xPQkFMX0NGTEFHUz0NCi0gLXBsdWdpbl9EZWZNaW1lSGFuZGxlcl9QUk9K
RUNUX0NGTEFHUz0gLVdhbGwgLWZQSUMgLWcgLXBpcGUgLWZuby1wY2Mtc3RydWN0LXJldHVybiAt
Zm5vLXJ0dGkgLWZtZXNzYWdlLWxlbmd0aD0wIGB3eGd0azItMi42LWNvbmZpZyAtLWNmbGFnc2AN
CitwbHVnaW5fRGVmTWltZUhhbmRsZXJfUFJPSkVDVF9DRkxBR1M9IC1XYWxsIC1mUElDIC1nIC1w
aXBlIC1mbm8tcGNjLXN0cnVjdC1yZXR1cm4gLWZuby1ydHRpIC1mbWVzc2FnZS1sZW5ndGg9MCBg
JChXWF9DT05GSUcpIC0tY2ZsYWdzYA0KIHBsdWdpbl9EZWZNaW1lSGFuZGxlcl9HTE9CQUxfTERG
TEFHUz0NCi0gLXBsdWdpbl9EZWZNaW1lSGFuZGxlcl9QUk9KRUNUX0xERkxBR1M9IGB3eGd0azIt
Mi42LWNvbmZpZyAtLWxpYnNgDQorcGx1Z2luX0RlZk1pbWVIYW5kbGVyX1BST0pFQ1RfTERGTEFH
Uz0gYCQoV1hfQ09ORklHKSAtLWxpYnNgDQogcGx1Z2luX0RlZk1pbWVIYW5kbGVyX0dMT0JBTF9J
TkNTPSAtSS91c3IvaW5jbHVkZQ0KIHBsdWdpbl9EZWZNaW1lSGFuZGxlcl9QUk9KRUNUX0lOQ1M9
IC1Jc2RrL3d4c2NpbnRpbGxhL2luY2x1ZGUNCiBwbHVnaW5fRGVmTWltZUhhbmRsZXJfR0xPQkFM
X0xJQkRJUlM9IC1ML3Vzci9saWINCkBAIC0xMjUsOSArMTI1LDkgQEANCiBwbHVnaW5fRGVmTWlt
ZUhhbmRsZXJfR0xPQkFMX0xJQlM9DQogcGx1Z2luX0RlZk1pbWVIYW5kbGVyX1BST0pFQ1RfTElC
Uz0NCiBwbHVnaW5fUGx1Z2luc1dpemFyZF9HTE9CQUxfQ0ZMQUdTPQ0KLSAtcGx1Z2luX1BsdWdp
bnNXaXphcmRfUFJPSkVDVF9DRkxBR1M9IC1XYWxsIC1mUElDIC1nIC1waXBlIC1mbm8tcGNjLXN0
cnVjdC1yZXR1cm4gLWZuby1ydHRpIC1mbWVzc2FnZS1sZW5ndGg9MCBgd3hndGsyLTIuNi1jb25m
aWcgLS1jZmxhZ3NgDQorcGx1Z2luX1BsdWdpbnNXaXphcmRfUFJPSkVDVF9DRkxBR1M9IC1XYWxs
IC1mUElDIC1nIC1waXBlIC1mbm8tcGNjLXN0cnVjdC1yZXR1cm4gLWZuby1ydHRpIC1mbWVzc2Fn
ZS1sZW5ndGg9MCBgJChXWF9DT05GSUcpIC0tY2ZsYWdzYA0KIHBsdWdpbl9QbHVnaW5zV2l6YXJk
X0dMT0JBTF9MREZMQUdTPQ0KLSAtcGx1Z2luX1BsdWdpbnNXaXphcmRfUFJPSkVDVF9MREZMQUdT
PSBgd3hndGsyLTIuNi1jb25maWcgLS1saWJzYA0KK3BsdWdpbl9QbHVnaW5zV2l6YXJkX1BST0pF
Q1RfTERGTEFHUz0gYCQoV1hfQ09ORklHKSAtLWxpYnNgDQogcGx1Z2luX1BsdWdpbnNXaXphcmRf
R0xPQkFMX0lOQ1M9IC1JL3Vzci9pbmNsdWRlDQogcGx1Z2luX1BsdWdpbnNXaXphcmRfUFJPSkVD
VF9JTkNTPSAtSXNkay93eHNjaW50aWxsYS9pbmNsdWRlDQogcGx1Z2luX1BsdWdpbnNXaXphcmRf
R0xPQkFMX0xJQkRJUlM9IC1ML3Vzci9saWINCkBAIC0xMzUsOSArMTM1LDkgQEANCiBwbHVnaW5f
UGx1Z2luc1dpemFyZF9HTE9CQUxfTElCUz0NCiBwbHVnaW5fUGx1Z2luc1dpemFyZF9QUk9KRUNU
X0xJQlM9DQogcGx1Z2luX1RvRG9fR0xPQkFMX0NGTEFHUz0NCi0gLXBsdWdpbl9Ub0RvX1BST0pF
Q1RfQ0ZMQUdTPSAtV2FsbCAtZlBJQyAtZyAtcGlwZSAtZm5vLXBjYy1zdHJ1Y3QtcmV0dXJuIC1m
bm8tcnR0aSAtZm1lc3NhZ2UtbGVuZ3RoPTAgYHd4Z3RrMi0yLjYtY29uZmlnIC0tY2ZsYWdzYA0K
K3BsdWdpbl9Ub0RvX1BST0pFQ1RfQ0ZMQUdTPSAtV2FsbCAtZlBJQyAtZyAtcGlwZSAtZm5vLXBj
Yy1zdHJ1Y3QtcmV0dXJuIC1mbm8tcnR0aSAtZm1lc3NhZ2UtbGVuZ3RoPTAgYCQoV1hfQ09ORklH
KSAtLWNmbGFnc2ANCiBwbHVnaW5fVG9Eb19HTE9CQUxfTERGTEFHUz0NCi0gLXBsdWdpbl9Ub0Rv
X1BST0pFQ1RfTERGTEFHUz0gYHd4Z3RrMi0yLjYtY29uZmlnIC0tbGlic2ANCitwbHVnaW5fVG9E
b19QUk9KRUNUX0xERkxBR1M9IGAkKFdYX0NPTkZJRykgLS1saWJzYA0KIHBsdWdpbl9Ub0RvX0dM
T0JBTF9JTkNTPSAtSS91c3IvaW5jbHVkZQ0KIHBsdWdpbl9Ub0RvX1BST0pFQ1RfSU5DUz0gLUlz
ZGsvd3hzY2ludGlsbGEvaW5jbHVkZQ0KIHBsdWdpbl9Ub0RvX0dMT0JBTF9MSUJESVJTPSAtTC91
c3IvbGliDQpAQCAtMTQ1LDkgKzE0NSw5IEBADQogcGx1Z2luX1RvRG9fR0xPQkFMX0xJQlM9DQog
cGx1Z2luX1RvRG9fUFJPSkVDVF9MSUJTPQ0KIHBsdWdpbl9YUE1hbmlmZXN0X0dMT0JBTF9DRkxB
R1M9DQotIC1wbHVnaW5fWFBNYW5pZmVzdF9QUk9KRUNUX0NGTEFHUz0gLVdhbGwgLWZQSUMgLWcg
LXBpcGUgLWZuby1wY2Mtc3RydWN0LXJldHVybiAtZm5vLXJ0dGkgLWZtZXNzYWdlLWxlbmd0aD0w
IGB3eGd0azItMi42LWNvbmZpZyAtLWNmbGFnc2ANCitwbHVnaW5fWFBNYW5pZmVzdF9QUk9KRUNU
X0NGTEFHUz0gLVdhbGwgLWZQSUMgLWcgLXBpcGUgLWZuby1wY2Mtc3RydWN0LXJldHVybiAtZm5v
LXJ0dGkgLWZtZXNzYWdlLWxlbmd0aD0wIGAkKFdYX0NPTkZJRykgLS1jZmxhZ3NgDQogcGx1Z2lu
X1hQTWFuaWZlc3RfR0xPQkFMX0xERkxBR1M9DQotIC1wbHVnaW5fWFBNYW5pZmVzdF9QUk9KRUNU
X0xERkxBR1M9IGB3eGd0azItMi42LWNvbmZpZyAtLWxpYnNgDQorcGx1Z2luX1hQTWFuaWZlc3Rf
UFJPSkVDVF9MREZMQUdTPSBgJChXWF9DT05GSUcpIC0tbGlic2ANCiBwbHVnaW5fWFBNYW5pZmVz
dF9HTE9CQUxfSU5DUz0gLUkvdXNyL2luY2x1ZGUNCiBwbHVnaW5fWFBNYW5pZmVzdF9QUk9KRUNU
X0lOQ1M9IC1Jc2RrL3d4c2NpbnRpbGxhL2luY2x1ZGUNCiBwbHVnaW5fWFBNYW5pZmVzdF9HTE9C
QUxfTElCRElSUz0gLUwvdXNyL2xpYg0KQEAgLTE1NSw5ICsxNTUsOSBAQA0KIHBsdWdpbl9YUE1h
bmlmZXN0X0dMT0JBTF9MSUJTPQ0KIHBsdWdpbl9YUE1hbmlmZXN0X1BST0pFQ1RfTElCUz0NCiB1
cGRhdGVfR0xPQkFMX0NGTEFHUz0NCi0gLXVwZGF0ZV9QUk9KRUNUX0NGTEFHUz0gLVdhbGwgLWZQ
SUMgLWcgLXBpcGUgLWZuby1wY2Mtc3RydWN0LXJldHVybiAtZm5vLXJ0dGkgLWZtZXNzYWdlLWxl
bmd0aD0wIGB3eGd0azItMi42LWNvbmZpZyAtLWNmbGFnc2ANCit1cGRhdGVfUFJPSkVDVF9DRkxB
R1M9IC1XYWxsIC1mUElDIC1nIC1waXBlIC1mbm8tcGNjLXN0cnVjdC1yZXR1cm4gLWZuby1ydHRp
IC1mbWVzc2FnZS1sZW5ndGg9MCBgJChXWF9DT05GSUcpIC0tY2ZsYWdzYA0KIHVwZGF0ZV9HTE9C
QUxfTERGTEFHUz0NCi0gLXVwZGF0ZV9QUk9KRUNUX0xERkxBR1M9IGB3eGd0azItMi42LWNvbmZp
ZyAtLWxpYnNgDQordXBkYXRlX1BST0pFQ1RfTERGTEFHUz0gYCQoV1hfQ09ORklHKSAtLWxpYnNg
DQogdXBkYXRlX0dMT0JBTF9JTkNTPSAtSS91c3IvaW5jbHVkZQ0KIHVwZGF0ZV9QUk9KRUNUX0lO
Q1M9IC1Jc2RrL3d4c2NpbnRpbGxhL2luY2x1ZGUNCiB1cGRhdGVfR0xPQkFMX0xJQkRJUlM9IC1M
L3Vzci9saWINCkBAIC0xNjUsOSArMTY1LDkgQEANCiB1cGRhdGVfR0xPQkFMX0xJQlM9DQogdXBk
YXRlX1BST0pFQ1RfTElCUz0NCiBjb25zb2xlX3J1bm5lcl9HTE9CQUxfQ0ZMQUdTPQ0KLSAtY29u
c29sZV9ydW5uZXJfUFJPSkVDVF9DRkxBR1M9IC1XYWxsIC1mUElDIC1nIC1waXBlIC1mbm8tcGNj
LXN0cnVjdC1yZXR1cm4gLWZuby1ydHRpIC1mbWVzc2FnZS1sZW5ndGg9MCBgd3hndGsyLTIuNi1j
b25maWcgLS1jZmxhZ3NgDQorY29uc29sZV9ydW5uZXJfUFJPSkVDVF9DRkxBR1M9IC1XYWxsIC1m
UElDIC1nIC1waXBlIC1mbm8tcGNjLXN0cnVjdC1yZXR1cm4gLWZuby1ydHRpIC1mbWVzc2FnZS1s
ZW5ndGg9MCBgJChXWF9DT05GSUcpIC0tY2ZsYWdzYA0KIGNvbnNvbGVfcnVubmVyX0dMT0JBTF9M
REZMQUdTPQ0KLSAtY29uc29sZV9ydW5uZXJfUFJPSkVDVF9MREZMQUdTPSBgd3hndGsyLTIuNi1j
b25maWcgLS1saWJzYA0KK2NvbnNvbGVfcnVubmVyX1BST0pFQ1RfTERGTEFHUz0gYCQoV1hfQ09O
RklHKSAtLWxpYnNgDQogY29uc29sZV9ydW5uZXJfR0xPQkFMX0lOQ1M9IC1JL3Vzci9pbmNsdWRl
DQogY29uc29sZV9ydW5uZXJfUFJPSkVDVF9JTkNTPSAtSXNkay93eHNjaW50aWxsYS9pbmNsdWRl
DQogY29uc29sZV9ydW5uZXJfR0xPQkFMX0xJQkRJUlM9IC1ML3Vzci9saWINCkBAIC0xNzUsOSAr
MTc1LDkgQEANCiBjb25zb2xlX3J1bm5lcl9HTE9CQUxfTElCUz0NCiBjb25zb2xlX3J1bm5lcl9Q
Uk9KRUNUX0xJQlM9DQogZG9jX0dMT0JBTF9DRkxBR1M9DQotIC1kb2NfUFJPSkVDVF9DRkxBR1M9
IC1XYWxsIC1mUElDIC1nIC1waXBlIC1mbm8tcGNjLXN0cnVjdC1yZXR1cm4gLWZuby1ydHRpIC1m
bWVzc2FnZS1sZW5ndGg9MCBgd3hndGsyLTIuNi1jb25maWcgLS1jZmxhZ3NgDQorZG9jX1BST0pF
Q1RfQ0ZMQUdTPSAtV2FsbCAtZlBJQyAtZyAtcGlwZSAtZm5vLXBjYy1zdHJ1Y3QtcmV0dXJuIC1m
bm8tcnR0aSAtZm1lc3NhZ2UtbGVuZ3RoPTAgYCQoV1hfQ09ORklHKSAtLWNmbGFnc2ANCiBkb2Nf
R0xPQkFMX0xERkxBR1M9DQotIC1kb2NfUFJPSkVDVF9MREZMQUdTPSBgd3hndGsyLTIuNi1jb25m
aWcgLS1saWJzYA0KK2RvY19QUk9KRUNUX0xERkxBR1M9IGAkKFdYX0NPTkZJRykgLS1saWJzYA0K
IGRvY19HTE9CQUxfSU5DUz0gLUkvdXNyL2luY2x1ZGUNCiBkb2NfUFJPSkVDVF9JTkNTPSAtSXNk
ay93eHNjaW50aWxsYS9pbmNsdWRlDQogZG9jX0dMT0JBTF9MSUJESVJTPSAtTC91c3IvbGliDQpJ
bmRleDogZGV2ZWwvY29kZWJsb2Nrcy9maWxlcy9wYXRjaC1Db2RlQmxvY2tzLXVuaXguY2JwDQo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09DQpSQ1MgZmlsZTogL2hvbWUvcGN2cy9wb3J0cy9kZXZlbC9jb2RlYmxvY2tzL2Zp
bGVzL3BhdGNoLUNvZGVCbG9ja3MtdW5peC5jYnAsdg0KcmV0cmlldmluZyByZXZpc2lvbiAxLjEN
CmRpZmYgLXUgLXIxLjEgcGF0Y2gtQ29kZUJsb2Nrcy11bml4LmNicA0KLSAtLS0gZGV2ZWwvY29k
ZWJsb2Nrcy9maWxlcy9wYXRjaC1Db2RlQmxvY2tzLXVuaXguY2JwCTI3IERlYyAyMDA1IDE5OjU5
OjA5IC0wMDAwCTEuMQ0KKysrIGRldmVsL2NvZGVibG9ja3MvZmlsZXMvcGF0Y2gtQ29kZUJsb2Nr
cy11bml4LmNicAkxMyBKdW4gMjAwNiAyMzoyMjoxMiAtMDAwMA0KQEAgLTEsNSArMSw1IEBADQot
IC0tLS0gQ29kZUJsb2Nrcy11bml4LmNicC5vcmlnCVN1biBOb3YgMjcgMTU6MTI6MzQgMjAwNQ0K
LSAtKysrIENvZGVCbG9ja3MtdW5peC5jYnAJU3VuIE5vdiAyNyAxNToxMjo0NiAyMDA1DQorLS0t
IENvZGVCbG9ja3MtdW5peC5jYnAub3JpZwlTdW4gTWF5IDI4IDE4OjQxOjU3IDIwMDYNCisrKysg
Q29kZUJsb2Nrcy11bml4LmNicAlTdW4gTWF5IDI4IDE4OjQ2OjQzIDIwMDYNCiBAQCAtNTYsNiAr
NTYsNyBAQA0KICAJCQkJCTxBZGQgb3B0aW9uPSItREVYUE9SVF9FVkVOVFMiLz4NCiAgCQkJCQk8
QWRkIG9wdGlvbj0iLURfVVNSRExMIi8+DQpAQCAtOCw3ICs4LDcgQEANCiAgCQkJCTwvQ29tcGls
ZXI+DQogIAkJCQk8TGlua2VyPg0KICAJCQkJCTxBZGQgbGlicmFyeT0ibGlidHhtbC5hIi8+DQot
IC1AQCAtMzM5LDE4ICszNDAsMzcgQEANCitAQCAtMzM5LDEzICszNDAsMzIgQEANCiAgCQkJCQk8
QWRkIG9wdGlvbj0iLU9zIi8+DQogIAkJCQk8L0NvbXBpbGVyPg0KICAJCQk8L1RhcmdldD4NCkBA
IC0yOSwyNiArMjksMTkgQEANCiArCQkJPC9UYXJnZXQ+DQogIAkJCTxFbnZpcm9ubWVudD4NCiAt
CQkJCTxWYXJpYWJsZSBuYW1lPSJMSUJfV1hYUkMiIHZhbHVlPSJ3eF9ndGsyX3hyYy0yLjQiLz4N
Ci0gLSsJCQkJPFZhcmlhYmxlIG5hbWU9IkxJQl9XWFhSQyIgdmFsdWU9Ind4X2d0azJfeHJjLTIu
NiIvPg0KKysJCQkJPFZhcmlhYmxlIG5hbWU9IkxJQl9XWFhSQyIgdmFsdWU9IiUlTElCX1dYWFJD
JSUiLz4NCiAgCQkJPC9FbnZpcm9ubWVudD4NCiAgCQk8L0J1aWxkPg0KICAJCTxDb21waWxlcj4N
CiAgCQkJPEFkZCBvcHRpb249Ii1XYWxsIi8+DQogIAkJCTxBZGQgb3B0aW9uPSItZyIvPg0KLSAt
LQkJCTxBZGQgb3B0aW9uPSJgd3gtY29uZmlnIC0tY2ZsYWdzYCIvPg0KICsJCQk8QWRkIG9wdGlv
bj0iLXBpcGUiLz4NCiArCQkJPEFkZCBvcHRpb249Ii1mbm8tcGNjLXN0cnVjdC1yZXR1cm4iLz4N
CiArCQkJPEFkZCBvcHRpb249Ii1mbm8tcnR0aSIvPg0KICsJCQk8QWRkIG9wdGlvbj0iLWZtZXNz
YWdlLWxlbmd0aD0wIi8+DQotIC0rCQkJPEFkZCBvcHRpb249ImB3eGd0azItMi42LWNvbmZpZyAt
LWNmbGFnc2AiLz4NCisgCQkJPEFkZCBvcHRpb249ImB3eC1jb25maWcgLS1jZmxhZ3NgIi8+DQog
IAkJCTxBZGQgZGlyZWN0b3J5PSJzZGsvd3hzY2ludGlsbGEvaW5jbHVkZSIvPg0KICAJCTwvQ29t
cGlsZXI+DQotIC0gCQk8TGlua2VyPg0KLSAtLQkJCTxBZGQgb3B0aW9uPSJgd3gtY29uZmlnIC0t
bGlic2AiLz4NCi0gLSsJCQk8QWRkIG9wdGlvbj0iYHd4Z3RrMi0yLjYtY29uZmlnIC0tbGlic2Ai
Lz4NCi0gLSAJCQk8QWRkIGRpcmVjdG9yeT0ic2RrL3Rpbnl4bWwiLz4NCi0gLSAJCTwvTGlua2Vy
Pg0KLSAtIAkJPFVuaXQgZmlsZW5hbWU9ImRldmVsL3NoYXJlL0NvZGVCbG9ja3MvaW1hZ2VzL2Nv
ZGVjb21wbGV0aW9uL1JFQURNRS50eHQiPg0KIEBAIC0xMDUyLDEyICsxMDcyLDc4IEBADQogIAkJ
CTxPcHRpb24gbGluaz0iMCIvPg0KICAJCQk8T3B0aW9uIHRhcmdldD0icGx1Z2luX0NvbXBpbGVy
R0NDIi8+DQpJbmRleDogZGV2ZWwvY29kZWJsb2Nrcy9maWxlcy9wYXRjaC1zcmMtYXBwLmNwcA0K
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQ0KUkNTIGZpbGU6IC9ob21lL3BjdnMvcG9ydHMvZGV2ZWwvY29kZWJsb2Nrcy9m
aWxlcy9wYXRjaC1zcmMtYXBwLmNwcCx2DQpyZXRyaWV2aW5nIHJldmlzaW9uIDEuMQ0KZGlmZiAt
dSAtcjEuMSBwYXRjaC1zcmMtYXBwLmNwcA0KLSAtLS0gZGV2ZWwvY29kZWJsb2Nrcy9maWxlcy9w
YXRjaC1zcmMtYXBwLmNwcAkyNyBEZWMgMjAwNSAxOTo1OTowOSAtMDAwMAkxLjENCisrKyBkZXZl
bC9jb2RlYmxvY2tzL2ZpbGVzL3BhdGNoLXNyYy1hcHAuY3BwCTEzIEp1biAyMDA2IDIzOjIyOjEy
IC0wMDAwDQpAQCAtNCw3ICs0LDcgQEANCiAgRERFU2VydmVyKiBnX0RERVNlcnZlciA9IDBMOw0K
ICAjZW5kaWYNCiAgDQotIC0rI2RlZmluZSBBUFBfUFJFRklYICIvdXNyL2xvY2FsIg0KKysjZGVm
aW5lIEFQUF9QUkVGSVggIiUlUFJFRklYJSUiDQogKw0KICBJTVBMRU1FTlRfQVBQKENvZGVCbG9j
a3NBcHApDQogIA0KSW5kZXg6IGRldmVsL2NvZGVibG9ja3MvZmlsZXMvcGF0Y2gtdGVtcGxhdGVz
LXVuaXgtd3h3aWRnZXRzLmNicA0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQ0KUkNTIGZpbGU6IGRldmVsL2NvZGVibG9j
a3MvZmlsZXMvcGF0Y2gtdGVtcGxhdGVzLXVuaXgtd3h3aWRnZXRzLmNicA0KZGlmZiAtTiBkZXZl
bC9jb2RlYmxvY2tzL2ZpbGVzL3BhdGNoLXRlbXBsYXRlcy11bml4LXd4d2lkZ2V0cy5jYnANCi0g
LS0tIGRldmVsL2NvZGVibG9ja3MvZmlsZXMvcGF0Y2gtdGVtcGxhdGVzLXVuaXgtd3h3aWRnZXRz
LmNicAkyNyBEZWMgMjAwNSAxOTo1OTowOSAtMDAwMAkxLjENCisrKyAvZGV2L251bGwJMSBKYW4g
MTk3MCAwMDowMDowMCAtMDAwMA0KQEAgLTEsMTUgKzAsMCBAQA0KLSAtLS0tIHRlbXBsYXRlcy91
bml4L3d4d2lkZ2V0cy5jYnAub3JpZwlTdW4gTm92IDI3IDE1OjM2OjIyIDIwMDUNCi0gLSsrKyB0
ZW1wbGF0ZXMvdW5peC93eHdpZGdldHMuY2JwCVN1biBOb3YgMjcgMTU6MzY6NTUgMjAwNQ0KLSAt
QEAgLTE0LDEwICsxNCwxMCBAQA0KLSAtIAkJCTxBZGQgb3B0aW9uPSItV2ludmFsaWQtcGNoIi8+
DQotIC0gCQkJPEFkZCBvcHRpb249Ii1pbmNsdWRlICZxdW90O3d4X3BjaC5oJnF1b3Q7Ii8+DQot
IC0gCQkJPEFkZCBvcHRpb249Ii1EVVNFX1BDSCIvPg0KLSAtLQkJCTxBZGQgb3B0aW9uPSJgd3gt
Y29uZmlnIC0tY2ZsYWdzYCIvPg0KLSAtKwkJCTxBZGQgb3B0aW9uPSJgd3hndGsyLTIuNi1jb25m
aWcgLS1jZmxhZ3NgIi8+DQotIC0gCQk8L0NvbXBpbGVyPg0KLSAtIAkJPExpbmtlcj4NCi0gLS0J
CQk8QWRkIG9wdGlvbj0iYHd4LWNvbmZpZyAtLWxpYnNgIi8+DQotIC0rCQkJPEFkZCBvcHRpb249
ImB3eGd0azItMi42LWNvbmZpZyAtLWxpYnNgIi8+DQotIC0gCQk8L0xpbmtlcj4NCi0gLSAJPC9Q
cm9qZWN0Pg0KLSAtIDwvQ29kZUJsb2Nrc19wcm9qZWN0X2ZpbGU+DQpJbmRleDogZGV2ZWwvZGF0
YWRlc2lnbmVyL01ha2VmaWxlDQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09DQpSQ1MgZmlsZTogL2hvbWUvcGN2cy9wb3J0
cy9kZXZlbC9kYXRhZGVzaWduZXIvTWFrZWZpbGUsdg0KcmV0cmlldmluZyByZXZpc2lvbiAxLjcN
CmRpZmYgLXUgLXIxLjcgTWFrZWZpbGUNCi0gLS0tIGRldmVsL2RhdGFkZXNpZ25lci9NYWtlZmls
ZQkzMCBKYW4gMjAwNiAyMzoxOTo1MiAtMDAwMAkxLjcNCisrKyBkZXZlbC9kYXRhZGVzaWduZXIv
TWFrZWZpbGUJMTMgSnVuIDIwMDYgMjM6MjI6MTIgLTAwMDANCkBAIC0xNiwxNiArMTYsMTUgQEAN
CiBNQUlOVEFJTkVSPQlwb3J0c0BGcmVlQlNELm9yZw0KIENPTU1FTlQ9CURhdGFiYXNlIFNjaGVt
YSBEZXNpZ25lcg0KIA0KLSAtTElCX0RFUEVORFM9CWV4cGF0LjY6JHtQT1JUU0RJUn0vdGV4dHBy
b2MvZXhwYXQyIFwNCi0gLQkJd3hfZ3RrMi0yLjQuMDoke1BPUlRTRElSfS94MTEtdG9vbGtpdHMv
d3hndGsyNA0KK0xJQl9ERVBFTkRTPQlleHBhdC42OiR7UE9SVFNESVJ9L3RleHRwcm9jL2V4cGF0
Mg0KIA0KIFVTRV9HTk9NRT0JbGlieG1sMiBsaWJ4c2x0DQogVVNFX0lDT05WPQl5ZXMNCitVU0Vf
V1g9CQkyLjQNCitXWF9DT05GX0FSR1M9CWFic29sdXRlDQogR05VX0NPTkZJR1VSRT0JeWVzDQot
IC1XWF9DT05GSUc/PQkke1gxMUJBU0V9L2Jpbi93eGd0azItMi40LWNvbmZpZw0KIENPTkZJR1VS
RV9FTlY9CUNQUEZMQUdTPSIke0NYWEZMQUdTfSAtSSR7TE9DQUxCQVNFfS9pbmNsdWRlIiBcDQog
CQlMREZMQUdTPSItTCR7TE9DQUxCQVNFfS9saWIiDQotIC1DT05GSUdVUkVfQVJHUz0JLS13aXRo
LXd4LWNvbmZpZz0ke1dYX0NPTkZJR30NCiANCiAuaWYgIWRlZmluZWQoV0lUSE9VVF9OTFMpDQog
VVNFX0dFVFRFWFQ9CXllcw0KSW5kZXg6IGRldmVsL2RycHl0aG9uL01ha2VmaWxlDQo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09DQpSQ1MgZmlsZTogL2hvbWUvcGN2cy9wb3J0cy9kZXZlbC9kcnB5dGhvbi9NYWtlZmlsZSx2
DQpyZXRyaWV2aW5nIHJldmlzaW9uIDEuNA0KZGlmZiAtdSAtcjEuNCBNYWtlZmlsZQ0KLSAtLS0g
ZGV2ZWwvZHJweXRob24vTWFrZWZpbGUJMTQgQXByIDIwMDYgMTg6MTQ6NTIgLTAwMDAJMS40DQor
KysgZGV2ZWwvZHJweXRob24vTWFrZWZpbGUJMTMgSnVuIDIwMDYgMjM6MjI6MTIgLTAwMDANCkBA
IC0xNiwxMSArMTYsMTEgQEANCiBNQUlOVEFJTkVSPQlwb3J0c0BGcmVlQlNELm9yZw0KIENPTU1F
TlQ9CUhpZ2hseSBjdXN0b21pemFibGUgY3Jvc3MtcGxhdGZvcm0gaWRlIHRvIGFpZCBwcm9ncmFt
bWluZyBpbiBQeXRob24NCiANCi0gLVJVTl9ERVBFTkRTPQkke1BZVEhPTl9TSVRFTElCRElSfS93
eC0yLjYtZ3RrMi1hbnNpL3d4L19faW5pdF9fLnB5OiR7UE9SVFNESVJ9L3gxMS10b29sa2l0cy9w
eS13eFB5dGhvbjI2DQotIC0NCiBVU0VfWklQPQl5ZXMNCiBVU0VfUFlUSE9OPQl5ZXMNCiBVU0Vf
UFlESVNUVVRJTFM9CXllcw0KK1VTRV9XWD0JCTIuNg0KK1dYX0NPTVBTPQlweXRob25fcnVuDQog
DQogcG9zdC1pbnN0YWxsOg0KIAlAJHtFQ0hPfSAnIyEvYmluL3NoJyA+ICR7V1JLRElSfS9kcnB5
dGhvbi5zaA0KSW5kZXg6IGRldmVsL2Vjb3MtdG9vbHMvTWFrZWZpbGUNCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0NClJD
UyBmaWxlOiAvaG9tZS9wY3ZzL3BvcnRzL2RldmVsL2Vjb3MtdG9vbHMvTWFrZWZpbGUsdg0KcmV0
cmlldmluZyByZXZpc2lvbiAxLjEyDQpkaWZmIC11IC1yMS4xMiBNYWtlZmlsZQ0KLSAtLS0gZGV2
ZWwvZWNvcy10b29scy9NYWtlZmlsZQk1IE5vdiAyMDA1IDA1OjIwOjIyIC0wMDAwCTEuMTINCisr
KyBkZXZlbC9lY29zLXRvb2xzL01ha2VmaWxlCTEzIEp1biAyMDA2IDIzOjIyOjEyIC0wMDAwDQpA
QCAtMTYsMTAgKzE2LDEwIEBADQogTUFJTlRBSU5FUj0JdGdARnJlZUJTRC5vcmcNCiBDT01NRU5U
PQlDb25maWd1cmF0aW9uIHRvb2xzIGZvciB0aGUgZUNvcyBlbWJlZGRlZCBPUw0KIA0KLSAtTElC
X0RFUEVORFM9CXRjbDg0LjE6JHtQT1JUU0RJUn0vbGFuZy90Y2w4NCBcDQotIC0JCXd4X2d0azIt
Mi40LjA6JHtQT1JUU0RJUn0veDExLXRvb2xraXRzL3d4Z3RrMjQNCitMSUJfREVQRU5EUz0JdGNs
ODQuMToke1BPUlRTRElSfS9sYW5nL3RjbDg0DQogDQogVVNFX0JaSVAyPQl5ZXMNCitVU0VfV1g9
CQkyLjQNCiBXUktTUkM9CQkke1dSS0RJUn0vaW5mcmEtYnVpbGQNCiBHTlVfQ09ORklHVVJFPQl5
ZXMNCiBDT05GSUdVUkVfU0NSSVBUPQkuLi9lY29zL2hvc3QvY29uZmlndXJlDQpAQCAtMzEsNyAr
MzEsNyBAQA0KIA0KIEVDT1NTUkNESVI9CSR7V1JLRElSfS9lY29zL2hvc3QNCiBDRkdUT09MX1dS
S1NSQz0JJHtXUktESVJ9L2NvbmZpZ3Rvb2wtYnVpbGQNCi0gLUNGR1RPT0xfTUFLRV9FTlY9CVdY
RElSPSR7WDExQkFTRX0gV1hfQ09ORklHPXd4Z3RrMi0yLjQtY29uZmlnIFwNCitDRkdUT09MX01B
S0VfRU5WPQlXWF9DT05GSUc9JHtXWF9DT05GSUd9IFwNCiAJCQlFQ09TU1JDRElSPSR7RUNPU1NS
Q0RJUn0gXA0KIAkJCUlOU1RBTExESVI9JHtQUkVGSVh9DQogQ0ZHVE9PTF9NQUtFRklMRT0JJHtF
Q09TU1JDRElSfS90b29scy9jb25maWd0b29sL3N0YW5kYWxvbmUvd3h3aW4vbWFrZWZpbGUuZ251
DQpJbmRleDogZGV2ZWwvZWNvcy10b29scy9maWxlcy9wYXRjaC1ob3N0Ojp0b29sczo6Y29uZmln
dG9vbDo6c3RhbmRhbG9uZTo6d3h3aW46Om1ha2VmaWxlLmdudQ0KPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQ0KUkNTIGZp
bGU6IC9ob21lL3BjdnMvcG9ydHMvZGV2ZWwvZWNvcy10b29scy9maWxlcy9wYXRjaC1ob3N0Ojp0
b29sczo6Y29uZmlndG9vbDo6c3RhbmRhbG9uZTo6d3h3aW46Om1ha2VmaWxlLmdudSx2DQpyZXRy
aWV2aW5nIHJldmlzaW9uIDEuMQ0KZGlmZiAtdSAtcjEuMSBwYXRjaC1ob3N0Ojp0b29sczo6Y29u
ZmlndG9vbDo6c3RhbmRhbG9uZTo6d3h3aW46Om1ha2VmaWxlLmdudQ0KLSAtLS0gZGV2ZWwvZWNv
cy10b29scy9maWxlcy9wYXRjaC1ob3N0Ojp0b29sczo6Y29uZmlndG9vbDo6c3RhbmRhbG9uZTo6
d3h3aW46Om1ha2VmaWxlLmdudQkxNyBOb3YgMjAwMyAxMjoyOTowNiAtMDAwMAkxLjENCisrKyBk
ZXZlbC9lY29zLXRvb2xzL2ZpbGVzL3BhdGNoLWhvc3Q6OnRvb2xzOjpjb25maWd0b29sOjpzdGFu
ZGFsb25lOjp3eHdpbjo6bWFrZWZpbGUuZ251CTEzIEp1biAyMDA2IDIzOjIyOjEyIC0wMDAwDQpA
QCAtMzYsOCArMzYsOCBAQA0KICAgIFBST0dSQU09Y29uZmlndG9vbA0KIC0gIENQUEZMQUdTPWAk
KFdYRElSKS9iaW4vd3gtY29uZmlnIC0tY3BwZmxhZ3NgDQogLSAgTERGTEFHUz1gJChXWERJUikv
YmluL3d4LWNvbmZpZyAtLWxpYnNgDQotIC0rICBDUFBGTEFHUz1gJChXWERJUikvYmluLyQoV1hf
Q09ORklHKSAtLWNwcGZsYWdzYA0KLSAtKyAgTERGTEFHUz1gJChXWERJUikvYmluLyQoV1hfQ09O
RklHKSAtLWxpYnNgDQorKyAgQ1BQRkxBR1M9YCQoV1hfQ09ORklHKSAtLWNwcGZsYWdzYA0KKysg
IExERkxBR1M9YCQoV1hfQ09ORklHKSAtLWxpYnNgDQogICAgRVhUUkFPQkpFQ1RTPQ0KICBlbmRp
Zg0KICANCkluZGV4OiBkZXZlbC9rbGFzc21vZGVsZXIvTWFrZWZpbGUNCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0NClJD
UyBmaWxlOiAvaG9tZS9wY3ZzL3BvcnRzL2RldmVsL2tsYXNzbW9kZWxlci9NYWtlZmlsZSx2DQpy
ZXRyaWV2aW5nIHJldmlzaW9uIDEuMTENCmRpZmYgLXUgLXIxLjExIE1ha2VmaWxlDQotIC0tLSBk
ZXZlbC9rbGFzc21vZGVsZXIvTWFrZWZpbGUJNCBNYXkgMjAwNiAyMTo0MDo0NiAtMDAwMAkxLjEx
DQorKysgZGV2ZWwva2xhc3Ntb2RlbGVyL01ha2VmaWxlCTEzIEp1biAyMDA2IDIzOjIyOjEyIC0w
MDAwDQpAQCAtMTYsMTQgKzE2LDEyIEBADQogTUFJTlRBSU5FUj0JcG9ydHNARnJlZUJTRC5vcmcN
CiBDT01NRU5UPQlBIHRvb2wgZm9yIHZpc3VhbGx5IGNyZWF0aW5nIGFuZCBkb2N1bWVudGluZyBj
bGFzc2VzDQogDQotIC1MSUJfREVQRU5EUz0Jd3hfZ3RrMi0yLjQuMDoke1BPUlRTRElSfS94MTEt
dG9vbGtpdHMvd3hndGsyNA0KLSAtDQogVVNFX1pJUD0JeWVzDQogV1JLU1JDPQkJJHtXUktESVJ9
LyR7UE9SVE5BTUV9DQotIC1XWF9DT05GSUc9CSR7WDExQkFTRX0vYmluL3d4Z3RrMi0yLjQtY29u
ZmlnDQogVVNFX0dOT01FPQlnbm9tZXRhcmdldA0KIFVTRV9BVVRPVE9PTFM9CWxpYnRvb2w6MTUN
CiBDT05GSUdVUkVfRU5WPQlXWFdJTkRPV1M9InllcyINCitVU0VfV1g9CQkyLjQNCiANCiBQTElT
VF9GSUxFUz0JYmluL2tsYXNzbW9kZWxlcg0KIA0KSW5kZXg6IGRldmVsL3JhcGlkc3ZuL01ha2Vm
aWxlDQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09DQpSQ1MgZmlsZTogL2hvbWUvcGN2cy9wb3J0cy9kZXZlbC9yYXBpZHN2
bi9NYWtlZmlsZSx2DQpyZXRyaWV2aW5nIHJldmlzaW9uIDEuNw0KZGlmZiAtdSAtcjEuNyBNYWtl
ZmlsZQ0KLSAtLS0gZGV2ZWwvcmFwaWRzdm4vTWFrZWZpbGUJMjMgRmViIDIwMDYgMTA6MzY6MTQg
LTAwMDAJMS43DQorKysgZGV2ZWwvcmFwaWRzdm4vTWFrZWZpbGUJMTMgSnVuIDIwMDYgMjM6MjI6
MTIgLTAwMDANCkBAIC0xNSwzMSArMTUsMjIgQEANCiBDT01NRU5UPQlDcm9zcy1wbGF0Zm9ybSBH
VUkgZnJvbnQtZW5kIGZvciB0aGUgU3VidmVyc2lvbiByZXZpc2lvbiBzeXN0ZW0NCiANCiBCVUlM
RF9ERVBFTkRTPQlhcHItMS1jb25maWc6JHtQT1JUU0RJUn0vZGV2ZWwvYXByLXN2biBcDQotIC0J
CSR7V1hDT05GSUd9OiR7UE9SVFNESVJ9L3gxMS10b29sa2l0cy8ke1dYUE9SVH0gXA0KIAkJbmVv
bi1jb25maWc6JHtQT1JUU0RJUn0vd3d3L25lb24gXA0KIAkJJHtTVk5ERVB9OiR7UE9SVFNESVJ9
L2RldmVsL3N1YnZlcnNpb24gXA0KIAkJJHtMT0NBTEJBU0V9L3NoYXJlL3hzbC9kb2Nib29rL1ZF
UlNJT046JHtQT1JUU0RJUn0vdGV4dHByb2MvZG9jYm9vay14c2wNCiANCiBVU0VfWF9QUkVGSVg9
CXllcw0KK1VTRV9XWD0JCTIuNC0yLjYNCitXWF9DT01QUz0Jd3hfYnVpbGQNCitXWF9DT05GX0FS
R1M9CWFic29sdXRlDQogVVNFX0FVVE9UT09MUz0JYXV0b2NvbmY6MjU5IGxpYnRvb2w6MTUNCi0g
LUNPTkZJR1VSRV9BUkdTPQktLXdpdGgtd3gtY29uZmlnPSR7V1hDT05GSUd9IFwNCi0gLQktLXdp
dGgtYXByLWNvbmZpZz1hcHItMS1jb25maWcgXA0KK0NPTkZJR1VSRV9BUkdTPS0td2l0aC1hcHIt
Y29uZmlnPWFwci0xLWNvbmZpZyBcDQogCS0td2l0aC1hcHUtY29uZmlnPWFwdS0xLWNvbmZpZyBc
DQogCS0td2l0aC1kb2Nib29rLXhzbD0ke0xPQ0FMQkFTRX0vc2hhcmUveHNsL2RvY2Jvb2sNCiBD
T05GSUdVUkVfRU5WPQlMREZMQUdTPSItTCR7WDExQkFTRX0vbGliICR7UFRIUkVBRF9MSUJTfSIN
CiBJTlNUQUxMU19TSExJQj0JeWVzDQogTUFOMT0JCXJhcGlkc3ZuLjENCiANCi0gLS5pZiBleGlz
dHMoJHtYMTFCQVNFfS9iaW4vd3hndGsyLTIuNi1jb25maWcpDQotIC1XWFBPUlQ9CQl3eGd0azI2
DQotIC1XWENPTkZJRz0Jd3hndGsyLTIuNi1jb25maWcNCi0gLS5lbGlmIGV4aXN0cygke1gxMUJB
U0V9L2Jpbi93eGd0azJ1LTIuNi1jb25maWcpDQotIC1XWFBPUlQ9CQl3eGd0azI2LXVuaWNvZGUN
Ci0gLVdYQ09ORklHPQl3eGd0azJ1LTIuNi1jb25maWcNCi0gLS5lbHNlDQotIC1XWFBPUlQ9CQl3
eGd0azI0DQotIC1XWENPTkZJRz0Jd3hndGsyLTIuNC1jb25maWcNCi0gLS5lbmRpZg0KIFNWTkRF
UD0JCSR7TE9DQUxCQVNFfS9pbmNsdWRlL3N1YnZlcnNpb24tMS9zdm5fdHlwZXMuaA0KIA0KIC5p
bmNsdWRlIDxic2QucG9ydC5taz4NCkluZGV4OiBkZXZlbC93eEdsYWRlL01ha2VmaWxlDQo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09DQpSQ1MgZmlsZTogL2hvbWUvcGN2cy9wb3J0cy9kZXZlbC93eEdsYWRlL01ha2VmaWxl
LHYNCnJldHJpZXZpbmcgcmV2aXNpb24gMS4xNg0KZGlmZiAtdSAtcjEuMTYgTWFrZWZpbGUNCi0g
LS0tIGRldmVsL3d4R2xhZGUvTWFrZWZpbGUJOSBBcHIgMjAwNiAxMzowODowMiAtMDAwMAkxLjE2
DQorKysgZGV2ZWwvd3hHbGFkZS9NYWtlZmlsZQkxMyBKdW4gMjAwNiAyMzoyMjoxMiAtMDAwMA0K
QEAgLTE0LDE3ICsxNCwxMSBAQA0KIE1BSU5UQUlORVI9CWFsZXB1bHZlckBGcmVlQlNELm9yZw0K
IENPTU1FTlQ9CUdVSSBidWlsZGVyIGZvciB3eFB5dGhvbi93eFdpbmRvd3Mgd3JpdHRlbiBpbiBQ
eXRob24NCiANCi0gLVJVTl9ERVBFTkRTPQkke1BZVEhPTl9TSVRFTElCRElSfS8ke1dYX1BZVEhP
Tl9ESVJ9L3d4UHl0aG9uL193eC5weToke1BPUlRTRElSfS94MTEtdG9vbGtpdHMvcHktd3hQeXRo
b24yNg0KLSAtDQotIC0uaWYgZGVmaW5lZChXSVRIX1VOSUNPREUpDQotIC1XWF9QWVRIT05fRElS
PQl3eC0yLjYtZ3RrMi11bmljb2RlDQotIC0uZWxzZQ0KLSAtV1hfUFlUSE9OX0RJUj0Jd3gtMi42
LWd0azItYW5zaQ0KLSAtLmVuZGlmDQotIC0NCiBXUktTUkM9CQkke1dSS0RJUn0vd3hHbGFkZS0k
e1BPUlRWRVJTSU9OfQ0KIA0KIFVTRV9QWVRIT049CXllcw0KK1VTRV9XWD0JCTIuNg0KK1dYX0NP
TVBTPQlweXRob25fcnVuDQogDQogZG8tYnVpbGQ6DQogCUAoJHtFQ0hPX0NNRH0gIiMhJHtTSH0i
OyAke0VDSE9fQ01EfSAnZXhlYyAke1BZVEhPTl9DTUR9IFwNCkluZGV4OiBlZGl0b3JzL3BvZWRp
dC9NYWtlZmlsZQ0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQ0KUkNTIGZpbGU6IC9ob21lL3BjdnMvcG9ydHMvZWRpdG9y
cy9wb2VkaXQvTWFrZWZpbGUsdg0KcmV0cmlldmluZyByZXZpc2lvbiAxLjQyDQpkaWZmIC11IC1y
MS40MiBNYWtlZmlsZQ0KLSAtLS0gZWRpdG9ycy9wb2VkaXQvTWFrZWZpbGUJMjggTWF5IDIwMDYg
MTU6NTQ6MDggLTAwMDAJMS40Mg0KKysrIGVkaXRvcnMvcG9lZGl0L01ha2VmaWxlCTEzIEp1biAy
MDA2IDIzOjIyOjEyIC0wMDAwDQpAQCAtMTcsMTMgKzE3LDE1IEBADQogQ09NTUVOVD0JR2V0dGV4
dCBjYXRhbG9ncyAoLnBvIGZpbGVzKSBlZGl0b3INCiANCiBCVUlMRF9ERVBFTkRTPQl6aXA6JHtQ
T1JUU0RJUn0vYXJjaGl2ZXJzL3ppcA0KLSAtTElCX0RFUEVORFM9CWd0a3NwZWxsLjA6JHtQT1JU
U0RJUn0vdGV4dHByb2MvZ3Rrc3BlbGwgXA0KLSAtCQlkYiR7TElCX1NVRkZJWH06JHtQT1JUU0RJ
Un0vZGF0YWJhc2VzL2RiJHtXSVRIX0JEQl9WRVJ9DQorTElCX0RFUEVORFM9CWd0a3NwZWxsLjA6
JHtQT1JUU0RJUn0vdGV4dHByb2MvZ3Rrc3BlbGwNCiANCiBVU0VfWF9QUkVGSVg9CXllcw0KK1VT
RV9CREI9CXllcw0KIFVTRV9HRVRURVhUPQl5ZXMNCiBVU0VfR01BS0U9CXllcw0KIFVTRV9HTk9N
RT0JZ25vbWV0YXJnZXQNCitVU0VfV1g9CQkyLjQtMi42DQorV1hfQ09ORl9BUkdTPQlhYnNvbHV0
ZQ0KIEdOVV9DT05GSUdVUkU9CXllcw0KIENPTkZJR1VSRV9FTlY9CUNQUEZMQUdTPSIke0NQUEZM
QUdTfSIgTERGTEFHUz0iJHtMREZMQUdTfSINCiANCkBAIC0zMywzNiArMzUsMTAgQEANCiANCiBN
QU4xPQkJcG9lZGl0LjENCiANCi0gLS5pZiBkZWZpbmVkKFdJVEhfQkRCMikgfHwgZGVmaW5lZChX
SVRIX0RCMikNCi0gLVdJVEhfQkRCX1ZFUj0JMg0KLSAtLmVsaWYgZGVmaW5lZChXSVRIX0JEQjMp
IHx8IGRlZmluZWQoV0lUSF9EQjMpDQotIC1XSVRIX0JEQl9WRVI9CTMNCi0gLS5lbGlmIGRlZmlu
ZWQoV0lUSF9CREI0KSB8fCBkZWZpbmVkKFdJVEhfREI0KQ0KLSAtV0lUSF9CREJfVkVSPQk0DQot
IC0uZWxpZiBkZWZpbmVkKFdJVEhfQkRCNDEpIHx8IGRlZmluZWQoV0lUSF9EQjQxKQ0KLSAtV0lU
SF9CREJfVkVSPQk0MQ0KLSAtLmVsaWYgZGVmaW5lZChXSVRIX0JEQjQyKSB8fCBkZWZpbmVkKFdJ
VEhfREI0MikNCi0gLVdJVEhfQkRCX1ZFUj0JNDINCi0gLUxJQl9TVUZGSVg9CS00LjINCi0gLS5l
bGlmIGRlZmluZWQoV0lUSF9CREI0MykgfHwgZGVmaW5lZChXSVRIX0RCNDMpDQotIC1XSVRIX0JE
Ql9WRVI9CTQzDQotIC1MSUJfU1VGRklYPQktNC4zDQotIC0uZW5kaWYNCi0gLVdJVEhfQkRCX1ZF
Uj89CTQNCi0gLUxJQl9TVUZGSVg/PQkke1dJVEhfQkRCX1ZFUn0NCi0gLQ0KLSAtLmlmIGRlZmlu
ZWQoV0lUSF9XWEdUSzI0KQ0KLSAtTElCX0RFUEVORFMrPQl3eF9ndGsyLTIuNC4wOiR7UE9SVFNE
SVJ9L3gxMS10b29sa2l0cy93eGd0azI0DQotIC1DT05GSUdVUkVfQVJHUys9CS0td2l0aC13eC1j
b25maWc9JHtYMTFCQVNFfS9iaW4vd3hndGsyLTIuNC1jb25maWcNCi0gLS5lbHNlDQotIC1MSUJf
REVQRU5EUys9CXd4X2d0azJfY29yZS0yLjYuMDoke1BPUlRTRElSfS94MTEtdG9vbGtpdHMvd3hn
dGsyNg0KLSAtQ09ORklHVVJFX0FSR1MrPQktLXdpdGgtd3gtY29uZmlnPSR7WDExQkFTRX0vYmlu
L3d4Z3RrMi0yLjYtY29uZmlnDQotIC0uZW5kaWYNCi0gLQ0KIHBvc3QtcGF0Y2g6DQogCUAke1JF
SU5QTEFDRV9DTUR9IC1lIFwNCi0gLQkJJ3MvZm9yIHZlcnNpb24gaW4gLio7L2ZvciB2ZXJzaW9u
IGluICR7V0lUSF9CREJfVkVSfTsvIDsgXA0KLSAtCQkgcy8tbGRiLSQkdmVyc2lvbi8tbGRiJHtM
SUJfU1VGRklYfS8nICR7V1JLU1JDfS9jb25maWd1cmUNCisJCSdzL2ZvciB2ZXJzaW9uIGluIC4q
Oy9mb3IgdmVyc2lvbiBpbiAke0JEQl9WRVJ9Oy8gOyBcDQorCQkgcy8tbGRiLSQkdmVyc2lvbi8t
bCR7QkRCX0xJQl9OQU1FfS8nICR7V1JLU1JDfS9jb25maWd1cmUNCiAJQCR7UkVJTlBMQUNFX0NN
RH0gLWUgXA0KIAkJJy9eU1VCRElSUy9zLyBpbnN0YWxsIC8gLycgJHtXUktTUkN9L01ha2VmaWxl
LmluDQogDQpJbmRleDogZWRpdG9ycy9zcGUvTWFrZWZpbGUNCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0NClJDUyBmaWxl
OiAvaG9tZS9wY3ZzL3BvcnRzL2VkaXRvcnMvc3BlL01ha2VmaWxlLHYNCnJldHJpZXZpbmcgcmV2
aXNpb24gMS45DQpkaWZmIC11IC1yMS45IE1ha2VmaWxlDQotIC0tLSBlZGl0b3JzL3NwZS9NYWtl
ZmlsZQkyNyBKYW4gMjAwNiAwOTozMTo0MyAtMDAwMAkxLjkNCisrKyBlZGl0b3JzL3NwZS9NYWtl
ZmlsZQkxMyBKdW4gMjAwNiAyMzoyMjoxMiAtMDAwMA0KQEAgLTE2LDEwICsxNiwxMCBAQA0KIE1B
SU5UQUlORVI9CW5pdml0QGVtYWlsLml0DQogQ09NTUVOVD0JU3RhbmkncyBQeXRob24gRWRpdG9y
DQogDQotIC1SVU5fREVQRU5EUys9CSR7UFlUSE9OX1NJVEVMSUJESVJ9LyR7V1hfUFlUSE9OX0RJ
Un0vd3hQeXRob24vX3d4LnB5OiR7UE9SVFNESVJ9L3gxMS10b29sa2l0cy9weS13eFB5dGhvbjI2
DQotIC0NCiBVU0VfUFlUSE9OPQl5ZXMNCiBVU0VfUFlESVNUVVRJTFM9CXllcw0KK1VTRV9XWD0J
CTIuNg0KK1dYX0NPTVBTPQlweXRob25fcnVuDQogDQogT1BUSU9OUz0JRU5DUllQVEVEX0RFQlVH
ICJFbmFibGUgZW5jcnlwdGVkIGRlYnVnIGluIFNQRSIgb2ZmDQogDQpAQCAtNDYsMTIgKzQ2LDYg
QEANCiANCiAuaW5jbHVkZSA8YnNkLnBvcnQucHJlLm1rPg0KIA0KLSAtLmlmIGRlZmluZWQoV0lU
SF9VTklDT0RFKSAmJiAoJHtPU1ZFUlNJT059ID4gNTAwMDAwKQ0KLSAtV1hfUFlUSE9OX0RJUj0J
d3gtMi42LWd0azItdW5pY29kZQ0KLSAtLmVsc2UNCi0gLVdYX1BZVEhPTl9ESVI9CXd4LTIuNi1n
dGsyLWFuc2kNCi0gLS5lbmRpZg0KLSAtDQogLmlmIGRlZmluZWQoV0lUSF9FTkNSWVBURURfREVC
VUcpDQogUlVOX0RFUEVORFMrPQkke1BZVEhPTl9TSVRFTElCRElSfS9DcnlwdG8vX19pbml0X18u
cHk6JHtQT1JUU0RJUn0vc2VjdXJpdHkvcHktcHljcnlwdG8NCiAuZW5kaWYNCkluZGV4OiBmdHAv
ZnRwY3ViZS9NYWtlZmlsZQ0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQ0KUkNTIGZpbGU6IC9ob21lL3BjdnMvcG9ydHMv
ZnRwL2Z0cGN1YmUvTWFrZWZpbGUsdg0KcmV0cmlldmluZyByZXZpc2lvbiAxLjIyDQpkaWZmIC11
IC1yMS4yMiBNYWtlZmlsZQ0KLSAtLS0gZnRwL2Z0cGN1YmUvTWFrZWZpbGUJNyBNYXkgMjAwNiAx
MTowOToxNyAtMDAwMAkxLjIyDQorKysgZnRwL2Z0cGN1YmUvTWFrZWZpbGUJMTMgSnVuIDIwMDYg
MjM6MjI6MTIgLTAwMDANCkBAIC0xNiw3ICsxNiw2IEBADQogTUFJTlRBSU5FUj0JcG9ydHNARnJl
ZUJTRC5vcmcNCiBDT01NRU5UPQlBIGdyYXBoaWNhbCBGVFAgQ2xpZW50DQogDQotIC1SVU5fREVQ
RU5EUz0JJHtQWVRIT05fU0lURUxJQkRJUn0vd3gvX19pbml0X18ucHk6JHtQT1JUU0RJUn0veDEx
LXRvb2xraXRzL3B5LXd4UHl0aG9uMjQNCiAuaWYgZGVmaW5lZChQQUNLQUdFX0JVSUxESU5HKQ0K
IEJVSUxEX0RFUEVORFMrPQlYdmZiOiR7WF9WRkJTRVJWRVJfUE9SVH0gXA0KIAkJJHtYMTFCQVNF
fS9saWIvWDExL2ZvbnRzL21pc2MvOHgxM08ucGNmLmd6OiR7WF9GT05UU19NSVNDX1BPUlR9DQpA
QCAtMjQsNiArMjMsOCBAQA0KIA0KIFVTRV9QWVRIT049CXllcw0KIFVTRV9QWURJU1RVVElMUz0J
eWVzDQorVVNFX1dYPQkJMi40DQorV1hfQ09NUFM9CXB5dGhvbl9ydW4NCiANCiBwb3N0LXBhdGNo
Og0KIAlAJHtSRUlOUExBQ0VfQ01EfSAncywvdXNyL2xvY2FsLCR7UFJFRklYfSwnICR7V1JLU1JD
fS9zZXR1cC5jZmcNCkluZGV4OiBnYW1lcy9hYnJpZGdlL01ha2VmaWxlDQo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09DQpS
Q1MgZmlsZTogL2hvbWUvcGN2cy9wb3J0cy9nYW1lcy9hYnJpZGdlL01ha2VmaWxlLHYNCnJldHJp
ZXZpbmcgcmV2aXNpb24gMS4xMg0KZGlmZiAtdSAtcjEuMTIgTWFrZWZpbGUNCi0gLS0tIGdhbWVz
L2FicmlkZ2UvTWFrZWZpbGUJNSBOb3YgMjAwNSAwNToxOTowNSAtMDAwMAkxLjEyDQorKysgZ2Ft
ZXMvYWJyaWRnZS9NYWtlZmlsZQkxMyBKdW4gMjAwNiAyMzoyMjoxMiAtMDAwMA0KQEAgLTE0LDEw
ICsxNCw5IEBADQogTUFJTlRBSU5FUj0JSmFub3MuTW9oYWNzaUBic2QuaHUNCiBDT01NRU5UPQlC
cmlkZ2UgZ2FtZQ0KIA0KLSAtTElCX0RFUEVORFM9CXd4X2d0azItMi40LjA6JHtQT1JUU0RJUn0v
eDExLXRvb2xraXRzL3d4Z3RrMjQNCi0gLQ0KK1VTRV9XWD0JCTIuNA0KK1dYX0NPTkZfQVJHUz0J
YWJzb2x1dGUNCiBHTlVfQ09ORklHVVJFPQl5ZXMNCi0gLUNPTkZJR1VSRV9BUkdTPQktLXdpdGgt
d3gtY29uZmlnPSR7WDExQkFTRX0vYmluL3d4Z3RrMi0yLjQtY29uZmlnDQogDQogTUFOMT0JCWFi
cmlkZ2UuMQ0KIFBMSVNUX0ZJTEVTPQliaW4vYWJyaWRnZQ0KSW5kZXg6IGdhbWVzL2Jsb2tpc2gv
TWFrZWZpbGUNCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0NClJDUyBmaWxlOiAvaG9tZS9wY3ZzL3BvcnRzL2dhbWVzL2Js
b2tpc2gvTWFrZWZpbGUsdg0KcmV0cmlldmluZyByZXZpc2lvbiAxLjENCmRpZmYgLXUgLXIxLjEg
TWFrZWZpbGUNCi0gLS0tIGdhbWVzL2Jsb2tpc2gvTWFrZWZpbGUJMjQgSmFuIDIwMDYgMDc6NTA6
MTQgLTAwMDAJMS4xDQorKysgZ2FtZXMvYmxva2lzaC9NYWtlZmlsZQkxMyBKdW4gMjAwNiAyMzoy
MjoxMiAtMDAwMA0KQEAgLTE2LDEyICsxNiwxMSBAQA0KIE1BSU5UQUlORVI9CWFtZG1pM0BtYWls
LnJ1DQogQ09NTUVOVD0JQ2xvbmUgb2YgdGhlIHN0cmF0ZWd5IGJvYXJkIGdhbWUgJ0Jsb2t1cycN
CiANCi0gLUxJQl9ERVBFTkRTPQl3eF9iYXNlLTIuNi4wOiR7UE9SVFNESVJ9L3gxMS10b29sa2l0
cy93eGd0azI2DQotIC0NCiBHTlVfQ09ORklHVVJFPQl5ZXMNCiBVU0VfR01BS0U9CXllcw0KIFVT
RV9YX1BSRUZJWD0JeWVzDQogVVNFX0dMPQkJeWVzDQorVVNFX1dYPQkJMi42DQogDQogQ09ORklH
VVJFX0VOVj0JTERGTEFHUz0iLUwke0xPQ0FMQkFTRX0vbGliIC1MJHtYMTFCQVNFfS9saWIiIFwN
CiAJCUNQUEZMQUdTPSItSSR7TE9DQUxCQVNFfS9pbmNsdWRlIC1JJHtYMTFCQVNFfS9pbmNsdWRl
Ig0KQEAgLTM5LDYgKzM4LDYgQEANCiAuZW5kaWYNCiANCiBwb3N0LXBhdGNoOg0KLSAtCUAke1JF
SU5QTEFDRV9DTUR9IC1lICdzfHd4LWNvbmZpZ3x3eGd0azItMi42LWNvbmZpZ3wnICR7V1JLU1JD
fS9tYWtlZmlsZS5pbiAke1dSS1NSQ30vY29uZmlndXJlDQorCUAke1JFSU5QTEFDRV9DTUR9IC1l
ICdzfHd4LWNvbmZpZ3wke1dYX0NPTkZJR318JyAke1dSS1NSQ30vbWFrZWZpbGUuaW4gJHtXUktT
UkN9L2NvbmZpZ3VyZQ0KIA0KIC5pbmNsdWRlIDxic2QucG9ydC5wb3N0Lm1rPg0KSW5kZXg6IGdh
bWVzL3Njb3JjaGVkM2QvTWFrZWZpbGUNCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0NClJDUyBmaWxlOiAvaG9tZS9wY3Zz
L3BvcnRzL2dhbWVzL3Njb3JjaGVkM2QvTWFrZWZpbGUsdg0KcmV0cmlldmluZyByZXZpc2lvbiAx
LjI5DQpkaWZmIC11IC1yMS4yOSBNYWtlZmlsZQ0KLSAtLS0gZ2FtZXMvc2NvcmNoZWQzZC9NYWtl
ZmlsZQk4IEp1biAyMDA2IDE2OjA3OjExIC0wMDAwCTEuMjkNCisrKyBnYW1lcy9zY29yY2hlZDNk
L01ha2VmaWxlCTEzIEp1biAyMDA2IDIzOjIyOjEzIC0wMDAwDQpAQCAtMTYsMTIgKzE2LDggQEAN
CiBNQUlOVEFJTkVSPQkJZ3V5QGRldmljZS5keW5kbnMub3JnDQogQ09NTUVOVD0JCVNjb3JjaGVk
IGlzIGEgZ2FtZSBiYXNlZCBsb29zZWx5IG9uIHRoZSBjbGFzc2ljIERPUyBnYW1lDQogDQotIC1C
VUlMRF9ERVBFTkRTPQkJJHtYMTFCQVNFfS9pbmNsdWRlL3d4LTIuNi93eC93eC5oOiR7UE9SVFNE
SVJ9L3gxMS10b29sa2l0cy93eGd0azI2LWNvbW1vbiBcDQotIC0JCQl3eGd0azItMi42LWNvbmZp
Zzoke1BPUlRTRElSfS94MTEtdG9vbGtpdHMvd3hndGsyNiBcDQotIC0JCQlvcGVuYWwtY29uZmln
OiR7UE9SVFNESVJ9L2F1ZGlvL29wZW5hbA0KLSAtUlVOX0RFUEVORFM9CQkke1gxMUJBU0V9L2lu
Y2x1ZGUvd3gtMi42L3d4L3d4Lmg6JHtQT1JUU0RJUn0veDExLXRvb2xraXRzL3d4Z3RrMjYtY29t
bW9uIFwNCi0gLQkJCXd4Z3RrMi0yLjYtY29uZmlnOiR7UE9SVFNESVJ9L3gxMS10b29sa2l0cy93
eGd0azI2IFwNCi0gLQkJCW9wZW5hbC1jb25maWc6JHtQT1JUU0RJUn0vYXVkaW8vb3BlbmFsDQor
QlVJTERfREVQRU5EUz0JCW9wZW5hbC1jb25maWc6JHtQT1JUU0RJUn0vYXVkaW8vb3BlbmFsDQor
UlVOX0RFUEVORFM9CQlvcGVuYWwtY29uZmlnOiR7UE9SVFNESVJ9L2F1ZGlvL29wZW5hbA0KIExJ
Ql9ERVBFTkRTPQkJYWx1dC4xOiR7UE9SVFNESVJ9L2F1ZGlvL2ZyZWVhbHV0DQogDQogU0NPUkNI
X1ZFUlNJT049CQkzOS4xDQpAQCAtMzQsMTMgKzMwLDE0IEBADQogVVNFX0dMPQkJCXllcw0KIFVT
RV9HTUFLRT0JCXllcw0KIFVTRV9BVVRPVE9PTFM9CWF1dG9tYWtlOjE1IGF1dG9jb25mOjI1Mw0K
K1VTRV9XWD0JCTIuNg0KK1dYX0NPTkZfQVJHUz0JYWJzb2x1dGUNCiANCiBXUktTUkM9CQkJJHtX
UktESVJ9L3Njb3JjaGVkDQogQVVUT01BS0VfQVJHUz0JCS0tZm9yZWlnbg0KIENPTkZJR1VSRV9B
UkdTPQkJLS1wcm9ncmFtLXByZWZpeD0nJyBcDQogCQkJLS1wcmVmaXg9JHtQUkVGSVh9L2dhbWVz
L3Njb3JjaGVkM2QgXA0KLSAtCQkJLS1kYXRhZGlyPSR7UFJFRklYfS9nYW1lcy9zY29yY2hlZDNk
IFwNCi0gLQkJCS0td2l0aC13eC1jb25maWc9JHtYMTFCQVNFfS9iaW4vd3hndGsyLTIuNi1jb25m
aWcNCisJCQktLWRhdGFkaXI9JHtQUkVGSVh9L2dhbWVzL3Njb3JjaGVkM2QNCiAuaWYgZGVmaW5l
ZChXSVRIX01ZU1FMKQ0KIENPTkZJR1VSRV9BUkdTKz0JLS13aXRoLW15c3FsDQogLmVuZGlmDQpJ
bmRleDogZ3JhcGhpY3MvY29taWNhbC9NYWtlZmlsZQ0KPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQ0KUkNTIGZpbGU6IC9o
b21lL3BjdnMvcG9ydHMvZ3JhcGhpY3MvY29taWNhbC9NYWtlZmlsZSx2DQpyZXRyaWV2aW5nIHJl
dmlzaW9uIDEuMw0KZGlmZiAtdSAtcjEuMyBNYWtlZmlsZQ0KLSAtLS0gZ3JhcGhpY3MvY29taWNh
bC9NYWtlZmlsZQk1IE5vdiAyMDA1IDA1OjIwOjQ4IC0wMDAwCTEuMw0KKysrIGdyYXBoaWNzL2Nv
bWljYWwvTWFrZWZpbGUJMTMgSnVuIDIwMDYgMjM6MjI6MTMgLTAwMDANCkBAIC0xNSwxMiArMTUs
MTEgQEANCiBNQUlOVEFJTkVSPQlqb2huQG1jYXJlZS5vcmcNCiBDT01NRU5UPQlBIHNlcXVlbnRp
YWwgaW1hZ2Ugdmlld2VyDQogDQotIC1MSUJfREVQRU5EUz0Jd3hfZ3RrMi0yLjQuMDoke1BPUlRT
RElSfS94MTEtdG9vbGtpdHMvd3hndGsyNA0KLSAtDQogVVNFX0dNQUtFPQl5ZXMNCitVU0VfV1g9
CQkyLjQNCitXWF9DT05GX0FSR1M9CWFic29sdXRlDQogR05VX0NPTkZJR1VSRT0JeWVzDQogVVNF
X1hfUFJFRklYPQl5ZXMNCi0gLUNPTkZJR1VSRV9BUkdTPQktLXdpdGgtd3gtY29uZmlnPSR7WDEx
QkFTRX0vYmluL3d4Z3RrMi0yLjQtY29uZmlnDQogDQogLmluY2x1ZGUgPGJzZC5wb3J0LnByZS5t
az4NCiANCkluZGV4OiBncmFwaGljcy9odWdpbi9NYWtlZmlsZQ0KPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQ0KUkNTIGZp
bGU6IC9ob21lL3BjdnMvcG9ydHMvZ3JhcGhpY3MvaHVnaW4vTWFrZWZpbGUsdg0KcmV0cmlldmlu
ZyByZXZpc2lvbiAxLjEzDQpkaWZmIC11IC1yMS4xMyBNYWtlZmlsZQ0KLSAtLS0gZ3JhcGhpY3Mv
aHVnaW4vTWFrZWZpbGUJMzAgSmFuIDIwMDYgMTQ6NDA6NTggLTAwMDAJMS4xMw0KKysrIGdyYXBo
aWNzL2h1Z2luL01ha2VmaWxlCTEzIEp1biAyMDA2IDIzOjIyOjEzIC0wMDAwDQpAQCAtMjAsMjEg
KzIwLDIwIEBADQogCQlwbmc6JHtQT1JUU0RJUn0vZ3JhcGhpY3MvcG5nIFwNCiAJCWpwZWc6JHtQ
T1JUU0RJUn0vZ3JhcGhpY3MvanBlZyBcDQogCQlmZnR3OiR7UE9SVFNESVJ9L21hdGgvZmZ0dyBc
DQotIC0JCXd4X2d0azJfeHJjLTIuNi4wOiR7UE9SVFNESVJ9L3gxMS10b29sa2l0cy93eGd0azI2
IFwNCiAJCWJvb3N0X2RhdGVfdGltZToke1BPUlRTRElSfS9kZXZlbC9ib29zdA0KIFJVTl9ERVBF
TkRTPQlQVE9wdGltaXplcjoke1BPUlRTRElSfS9ncmFwaGljcy9saWJwYW5vMTIgXA0KIAkJUFRT
dGl0Y2hlcjoke1BPUlRTRElSfS9ncmFwaGljcy9saW51eC1wYW5vcmFtYS10b29scw0KIA0KIEdO
VV9DT05GSUdVUkU9CXllcw0KIENPTkZJR1VSRV9UQVJHRVQ9LS1idWlsZD0ke01BQ0hJTkVfQVJD
SH0tcG9ydGJsZC1mcmVlYnNkJHtPU1JFTH0NCi0gLUNPTkZJR1VSRV9BUkdTPQktLXdpdGgtd3gt
Y29uZmlnPSR7V1hfQ09ORklHfQ0KIENPTkZJR1VSRV9FTlY9CUNQUEZMQUdTPSItSSR7TE9DQUxC
QVNFfS9pbmNsdWRlIC1mdGVtcGxhdGUtZGVwdGgtNjQiIFwNCiAJCUxERkxBR1M9Ii1MJHtMT0NB
TEJBU0V9L2xpYiINCiBVU0VfR01BS0U9CXllcw0KIFVTRV9JQ09OVj0JeWVzDQorVVNFX1dYPQkJ
Mi42DQorV1hfQ09ORl9BUkdTPQlhYnNvbHV0ZQ0KIA0KIERPQ1NESVI9CSR7UFJFRklYfS9zaGFy
ZS9odWdpbi94cmMvZGF0YQ0KLSAtV1hfQ09ORklHPQkke1gxMUJBU0V9L2Jpbi93eGd0azItMi42
LWNvbmZpZw0KIA0KIC5pZiBkZWZpbmVkKFdJVEhPVVRfTkxTKQ0KIENPTkZJR1VSRV9BUkdTKz0t
LWRpc2FibGUtbmxzDQpAQCAtNDUsNyArNDQsNyBAQA0KIC5lbmRpZg0KIA0KIHBvc3QtcGF0Y2g6
DQotIC0JQCR7UkVJTlBMQUNFX0NNRH0gLWUgJ3N8LXd4cmN8LSR7WDExQkFTRX0vYmluL3d4cmMt
Z3RrMi0yLjZ8JyBcDQorCUAke1JFSU5QTEFDRV9DTUR9IC1lICdzfC13eHJjfC0ke1dYX0NPTkZJ
RzpTL3d4L3d4cmMvfXwnIFwNCiAJCSR7V1JLU1JDfS9zcmMvaHVnaW4veHJjL01ha2VmaWxlLmlu
DQogDQogLmluY2x1ZGUgPGJzZC5wb3J0Lm1rPg0KSW5kZXg6IGdyYXBoaWNzL211bHRpdmlkZW8v
TWFrZWZpbGUNCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0NClJDUyBmaWxlOiAvaG9tZS9wY3ZzL3BvcnRzL2dyYXBoaWNz
L211bHRpdmlkZW8vTWFrZWZpbGUsdg0KcmV0cmlldmluZyByZXZpc2lvbiAxLjE5DQpkaWZmIC11
IC1yMS4xOSBNYWtlZmlsZQ0KLSAtLS0gZ3JhcGhpY3MvbXVsdGl2aWRlby9NYWtlZmlsZQk3IE1h
eSAyMDA2IDIzOjQ2OjE4IC0wMDAwCTEuMTkNCisrKyBncmFwaGljcy9tdWx0aXZpZGVvL01ha2Vm
aWxlCTEzIEp1biAyMDA2IDIzOjIyOjEzIC0wMDAwDQpAQCAtMTYsMTkgKzE2LDE2IEBADQogTUFJ
TlRBSU5FUj0JcG9ydHNARnJlZUJTRC5vcmcNCiBDT01NRU5UPQlBbiBpbWFnZSBzZXF1ZW5jZSB2
aWV3ZXINCiANCi0gLUxJQl9ERVBFTkRTPQl3eF9ndGsyLTIuNC4wOiR7UE9SVFNESVJ9L3gxMS10
b29sa2l0cy93eGd0azI0DQotIC0NCiBXUktTUkM9CQkke1dSS0RJUn0vJHtQT1JUTkFNRX0NCiAN
CiBVU0VfQlpJUDI9CXllcw0KIFVTRV9HTUFLRT0JeWVzDQorVVNFX1dYPQkJMi40DQogTUFLRV9F
TlY9CUNYWD0iJHtDWFh9IiBDWFhGTEFHUz0iJHtDWFhGTEFHU30iDQogQUxMX1RBUkdFVD0JZGVm
YXVsdA0KIA0KIFBMSVNUX0ZJTEVTPQliaW4vbXVsdGl2aWRlbw0KIA0KLSAtV1hfQ09ORklHPQkk
e1gxMUJBU0V9L2Jpbi93eGd0azItMi40LWNvbmZpZw0KLSAtDQogcG9zdC1wYXRjaDoNCiAJQCR7
UkVJTlBMQUNFX0NNRH0gLWUgJ3N8ZysrfFwkJFwoQ1hYKXxnIDsgXA0KIAkJIHN8LU8yIC1nIC1X
YWxsIC1XfFwkJFwoQ1hYRkxBR1NcKXxnIDsgXA0KSW5kZXg6IGdyYXBoaWNzL3d4c3ZnL01ha2Vm
aWxlDQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09DQpSQ1MgZmlsZTogL2hvbWUvcGN2cy9wb3J0cy9ncmFwaGljcy93eHN2
Zy9NYWtlZmlsZSx2DQpyZXRyaWV2aW5nIHJldmlzaW9uIDEuNg0KZGlmZiAtdSAtcjEuNiBNYWtl
ZmlsZQ0KLSAtLS0gZ3JhcGhpY3Mvd3hzdmcvTWFrZWZpbGUJMTIgQXByIDIwMDYgMTc6NDg6MTEg
LTAwMDAJMS42DQorKysgZ3JhcGhpY3Mvd3hzdmcvTWFrZWZpbGUJMTMgSnVuIDIwMDYgMjM6MjI6
MTMgLTAwMDANCkBAIC0xNCwxMyArMTQsMTAgQEANCiBNQUlOVEFJTkVSPQlhaHplQEZyZWVCU0Qu
b3JnDQogQ09NTUVOVD0JQysrIGxpYnJhcnkgdG8gY3JlYXRlLCBtYW5pcHVsYXRlLCBhbmQgcmVu
ZGVyIFNWRyBmaWxlcw0KIA0KLSAtQlVJTERfREVQRU5EUz0JJHtXWF9DT05GSUd9OiR7UE9SVFNE
SVJ9L3gxMS10b29sa2l0cy93eGd0azI2DQotIC1SVU5fREVQRU5EUz0JJHtXWF9DT05GSUd9OiR7
UE9SVFNESVJ9L3gxMS10b29sa2l0cy93eGd0azI2DQotIC0NCiBJTlNUQUxMU19TSExJQj0JeWVz
DQotIC1XWF9DT05GSUc9CXd4Z3RrMi0yLjYtY29uZmlnDQogVVNFX0FVVE9UT09MUz0JbGlidG9v
bDoxNQ0KIFVTRV9HTk9NRT0JbGliYXJ0bGdwbDINCitVU0VfV1g9CQkyLjYNCiANCiAuaW5jbHVk
ZSA8YnNkLnBvcnQucHJlLm1rPg0KIA0KSW5kZXg6IGdyYXBoaWNzL3hhcmFseC9NYWtlZmlsZQ0K
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQ0KUkNTIGZpbGU6IC9ob21lL3BjdnMvcG9ydHMvZ3JhcGhpY3MveGFyYWx4L01h
a2VmaWxlLHYNCnJldHJpZXZpbmcgcmV2aXNpb24gMS4xOA0KZGlmZiAtdSAtcjEuMTggTWFrZWZp
bGUNCi0gLS0tIGdyYXBoaWNzL3hhcmFseC9NYWtlZmlsZQkxMSBKdW4gMjAwNiAxMTo1NTowNiAt
MDAwMAkxLjE4DQorKysgZ3JhcGhpY3MveGFyYWx4L01ha2VmaWxlCTEzIEp1biAyMDA2IDIzOjIy
OjEzIC0wMDAwDQpAQCAtMTgsMjEgKzE4LDE2IEBADQogVVNFX0JaSVAyPQl5ZXMNCiBVU0VfWF9Q
UkVGSVg9CXllcw0KIA0KLSAtI1dYREVQPQkke1gxMUJBU0V9L2xpYnd4X2Jhc2V1LTIuNi5zby4w
LjMuMQ0KLSAtV1hERVA9CXd4Z3RrMi11bmljb2RlPj0yLjYuMw0KIEJVSUxEX0RFUEVORFMrPQlw
a2ctY29uZmlnOiR7UE9SVFNESVJ9L2RldmVsL3BrZy1jb25maWcgXA0KLSAtCQkke1dYREVQfTok
e1BPUlRTRElSfS94MTEtdG9vbGtpdHMvd3hndGsyNi11bmljb2RlIFwNCiAJCXhtbDItY29uZmln
OiR7UE9SVFNESVJ9L3RleHRwcm9jL2xpYnhtbDIgXA0KIAkJemlwOiR7UE9SVFNESVJ9L2FyY2hp
dmVycy96aXANCi0gLVJVTl9ERVBFTkRTKz0JJHtXWERFUH06JHtQT1JUU0RJUn0veDExLXRvb2xr
aXRzL3d4Z3RrMjYtdW5pY29kZQ0KIExJQl9ERVBFTkRTKz0JZGxtYWxsb2MuMjoke1BPUlRTRElS
fS9kZXZlbC9saWJkbG1hbGxvYyBcDQogCQl4bWwyLjU6JHtQT1JUU0RJUn0vdGV4dHByb2MvbGli
eG1sMg0KIA0KIFVTRV9BVVRPVE9PTFM9CWF1dG9jb25mOjI1OTplbnYgYWNsb2NhbDoxOTplbnYg
YXV0b21ha2U6MTk6ZW52IGxpYnRvb2w6MTU6ZW52DQogR05VX0NPTkZJR1VSRT0JeWVzDQogQ09O
RklHVVJFX1RBUkdFVD0JLS1idWlsZD0ke01BQ0hJTkVfQVJDSH0tcG9ydGJsZC1mcmVlYnNkJHtP
U1JFTH0NCi0gLUNPTkZJR1VSRV9BUkdTKz0JLS13aXRoLXd4LWNvbmZpZz13eGd0azJ1LTIuNi1j
b25maWcgXA0KLSAtCQktLXByb2dyYW0tc3VmZml4PSR7UEtHTkFNRVNVRkZJWH0NCitDT05GSUdV
UkVfQVJHUys9CS0tcHJvZ3JhbS1zdWZmaXg9JHtQS0dOQU1FU1VGRklYfQ0KIENPTkZJR1VSRV9F
TlYrPQlDUFBGTEFHU19BUFBFTkQ9Ii1JJHtMT0NBTEJBU0V9L2luY2x1ZGUvYXRrLTEuMC9hdGsg
XA0KIAkJLUkke1gxMUJBU0V9L2luY2x1ZGUvZ3RrLTIuMC9ndGsiDQogIyB3ZSdyZSB1c2luZyBk
bG1hbGxvYyBiZWNhdXNlIHRoZSBzdG9jayBsaWJjIGRvZXMgbm90IGhhdmUgbWFsbG9jX3VzYWJs
ZV9zaXplKCkNCkBAIC00Myw2ICszOCw5IEBADQogTUFLRV9FTlY/PQlJTkNMVURFUz0iLUkuLi93
eE9pbCAtSS0gLUkke0xPQ0FMQkFTRX0vaW5jbHVkZS9kbG1hbGxvYyINCiANCiBVU0VfR0NDPQkz
LjQrDQorVVNFX1dYPQkJMi42DQorV1hfQ09ORl9BUkdTPQlhYnNvbHV0ZQ0KK1dYX1VOSUNPREU9
CXllcw0KIA0KIE1BTjE9CXhhcmFseCR7UEtHTkFNRVNVRkZJWH0uMQ0KIA0KSW5kZXg6IGdyYXBo
aWNzL3pwaG90by9NYWtlZmlsZQ0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQ0KUkNTIGZpbGU6IC9ob21lL3BjdnMvcG9y
dHMvZ3JhcGhpY3MvenBob3RvL01ha2VmaWxlLHYNCnJldHJpZXZpbmcgcmV2aXNpb24gMS4yMg0K
ZGlmZiAtdSAtcjEuMjIgTWFrZWZpbGUNCi0gLS0tIGdyYXBoaWNzL3pwaG90by9NYWtlZmlsZQk3
IE1heSAyMDA2IDIzOjQ2OjMzIC0wMDAwCTEuMjINCisrKyBncmFwaGljcy96cGhvdG8vTWFrZWZp
bGUJMTMgSnVuIDIwMDYgMjM6MjI6MTMgLTAwMDANCkBAIC0yMSw5ICsyMSw2IEBADQogLmlmICFk
ZWZpbmVkIChXSVRIT1VUX0FWSVBMQVkpDQogTElCX0RFUEVORFMrPQlhdmlwbGF5LjA6JHtQT1JU
U0RJUn0vbXVsdGltZWRpYS9hdmlmaWxlDQogLmVuZGlmDQotIC0uaWYgZGVmaW5lZCAoV0lUSF9X
WEdUSzIpDQotIC1MSUJfREVQRU5EUys9CXd4X2d0azItMi40LjA6JHtQT1JUU0RJUn0veDExLXRv
b2xraXRzL3d4Z3RrMjQNCi0gLS5lbmRpZg0KIC5pZiAhZGVmaW5lZCAoV0lUSE9VVF9aSVApDQog
UlVOX0RFUEVORFM9CXppcDoke1BPUlRTRElSfS9hcmNoaXZlcnMvemlwDQogLmVuZGlmDQpAQCAt
MzIsOCArMjksOSBAQA0KIENPTkZJR1VSRV9FTlY9CUxJQlM9Ii1MJHtMT0NBTEJBU0V9L2xpYiAk
e1BUSFJFQURfTElCU30iIFwNCiAJICAgICAgIAlDUFBGTEFHUz0iLUkke0xPQ0FMQkFTRX0vaW5j
bHVkZSBcDQogCQkke1BUSFJFQURfQ0ZMQUdTfSINCi0gLS5pZiBkZWZpbmVkIChXSVRIX1dYR1RL
MikNCi0gLUNPTkZJR1VSRV9BUkdTKz0JLS13aXRoLXd4LWNvbmZpZz13eGd0azItMi40LWNvbmZp
Zw0KKy5pZiBkZWZpbmVkIChXSVRIX1dYKQ0KK1VTRV9XWD0JCTIuNA0KK1dYX0NPTkZfQVJHUz0J
YWJzb2x1dGUNCiBQTElTVF9GSUxFUys9CWJpbi93eHpwaG90bw0KIC5lbHNlDQogQ09ORklHVVJF
X0FSR1MrPQktLWRpc2FibGUtd3gNCkluZGV4OiBtYWlsL21haG9nYW55L01ha2VmaWxlDQo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09DQpSQ1MgZmlsZTogL2hvbWUvcGN2cy9wb3J0cy9tYWlsL21haG9nYW55L01ha2VmaWxl
LHYNCnJldHJpZXZpbmcgcmV2aXNpb24gMS4yOA0KZGlmZiAtdSAtcjEuMjggTWFrZWZpbGUNCi0g
LS0tIG1haWwvbWFob2dhbnkvTWFrZWZpbGUJMTAgTWF5IDIwMDYgMjI6MzY6NTMgLTAwMDAJMS4y
OA0KKysrIG1haWwvbWFob2dhbnkvTWFrZWZpbGUJMTMgSnVuIDIwMDYgMjM6MjI6MTMgLTAwMDAN
CkBAIC0xNSw5ICsxNSw5IEBADQogTUFJTlRBSU5FUj0JCXBvcnRzQEZyZWVCU0Qub3JnDQogQ09N
TUVOVD0JCUFuIFgxMSBtYWlsIGFuZCBuZXdzIGNsaWVudA0KIA0KLSAtTElCX0RFUEVORFMrPQkJ
d3hfZ3RrMi0yLjQuMDoke1BPUlRTRElSfS94MTEtdG9vbGtpdHMvd3hndGsyNA0KLSAtDQogVVNF
X1hfUFJFRklYPQkJeWVzDQorVVNFX1dYPQkJMi40DQorV1hfQ09ORl9BUkdTPQlhYnNvbHV0ZQ0K
IEdOVV9DT05GSUdVUkU9CQl5ZXMNCiBVU0VfR01BS0U9CQl5ZXMNCiBBTExfVEFSR0VUPQkJYWxs
IGxvY2FsZXMNCkBAIC0yNSw4ICsyNSw3IEBADQogDQogTUFOMT0JCQlNLjEgbWFob2dhbnkuMQ0K
IA0KLSAtQ09ORklHVVJFX0FSR1M9CQktLXdpdGgtcHl0aG9uPW5vbmUgXA0KLSAtCQkJLS13aXRo
LXd4LWNvbmZpZz0ke1gxMUJBU0V9L2Jpbi93eGd0azItMi40LWNvbmZpZw0KK0NPTkZJR1VSRV9B
UkdTPQkJLS13aXRoLXB5dGhvbj1ub25lDQogQ09ORklHVVJFX0VOVj0JCU9TVFlQRT0ke09QU1lT
fSBDRkxBR1M9IiR7Q0ZMQUdTfSINCiANCiAuaW5jbHVkZSA8YnNkLnBvcnQucHJlLm1rPg0KSW5k
ZXg6IG1hdGgvZml0eWsvTWFrZWZpbGUNCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0NClJDUyBmaWxlOiAvaG9tZS9wY3Zz
L3BvcnRzL21hdGgvZml0eWsvTWFrZWZpbGUsdg0KcmV0cmlldmluZyByZXZpc2lvbiAxLjEzDQpk
aWZmIC11IC1yMS4xMyBNYWtlZmlsZQ0KLSAtLS0gbWF0aC9maXR5ay9NYWtlZmlsZQkxMiBKdW4g
MjAwNiAwMTo0MToxMSAtMDAwMAkxLjEzDQorKysgbWF0aC9maXR5ay9NYWtlZmlsZQkxMyBKdW4g
MjAwNiAyMzoyMjoxMyAtMDAwMA0KQEAgLTE2LDE2ICsxNiwxNiBAQA0KIENPTU1FTlQ9CUZyZWUg
cGVhayBmaXR0aW5nIHNvZnR3YXJlDQogDQogQlVJTERfREVQRU5EUz0JZ251cGxvdDoke1BPUlRT
RElSfS9tYXRoL2dudXBsb3QNCi0gLUxJQl9ERVBFTkRTPQlib29zdF90aHJlYWQuMzoke1BPUlRT
RElSfS9kZXZlbC9ib29zdCBcDQotIC0JCXd4X2d0azJfY29yZS0yLjYuMDoke1BPUlRTRElSfS94
MTEtdG9vbGtpdHMvd3hndGsyNg0KK0xJQl9ERVBFTkRTPQlib29zdF90aHJlYWQuMzoke1BPUlRT
RElSfS9kZXZlbC9ib29zdA0KIFJVTl9ERVBFTkRTPQlnbnVwbG90OiR7UE9SVFNESVJ9L21hdGgv
Z251cGxvdA0KIA0KIFVTRV9CWklQMj0JeWVzDQogVVNFX0dOT01FPQlnbm9tZXRhcmdldCBndGsy
MA0KIFVTRV9HTUFLRT0JeWVzDQorVVNFX1dYPQkJMi42DQorV1hfQ09ORl9BUkdTPQlhYnNvbHV0
ZQ0KIEdOVV9DT05GSUdVUkU9CXllcw0KIENPTkZJR1VSRV9FTlY9CUNQUEZMQUdTPSIke0NQUEZM
QUdTfSIgTERGTEFHUz0iJHtMREZMQUdTfSINCi0gLUNPTkZJR1VSRV9BUkdTKz0JLS13aXRoLXd4
LWNvbmZpZz13eGd0azItMi42LWNvbmZpZw0KIA0KIE1BTjE9CQlmaXR5ay4xDQogUExJU1RfRklM
RVM9CWJpbi9jZml0eWsgXA0KSW5kZXg6IG1hdGgvZ2FtYml0L01ha2VmaWxlDQo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
DQpSQ1MgZmlsZTogL2hvbWUvcGN2cy9wb3J0cy9tYXRoL2dhbWJpdC9NYWtlZmlsZSx2DQpyZXRy
aWV2aW5nIHJldmlzaW9uIDEuMTcNCmRpZmYgLXUgLXIxLjE3IE1ha2VmaWxlDQotIC0tLSBtYXRo
L2dhbWJpdC9NYWtlZmlsZQkyMyBBcHIgMjAwNiAxNjo0OTozNSAtMDAwMAkxLjE3DQorKysgbWF0
aC9nYW1iaXQvTWFrZWZpbGUJMTMgSnVuIDIwMDYgMjM6MjI6MTMgLTAwMDANCkBAIC0xNSwxNCAr
MTUsMTEgQEANCiBNQUlOVEFJTkVSPQlwb3J0c0BGcmVlQlNELm9yZw0KIENPTU1FTlQ9CUEgbGli
cmFyeSBvZiB0b29scyBmb3IgZG9pbmcgY29tcHV0YXRpb24gaW4gZ2FtZSB0aGVvcnkNCiANCi0g
LUxJQl9ERVBFTkRTPQl3eF9ndGsyX2NvcmUtMi42LjA6JHtQT1JUU0RJUn0veDExLXRvb2xraXRz
L3d4Z3RrMjYNCi0gLQ0KIFVTRV9YX1BSRUZJWD0JeWVzDQorVVNFX1dYPQkJMi42DQogVVNFX0dO
T01FPQlnbm9tZXRhcmdldCBndGsyMA0KIEdOVV9DT05GSUdVUkU9CXllcw0KLSAtQ09ORklHVVJF
X0VOVj0JQ1BQRkxBR1M9IiR7Q1BQRkxBR1N9IiBMREZMQUdTPSIke0xERkxBR1N9IiBcDQotIC0J
CVdYX0NPTkZJRz0iJHtYMTFCQVNFfS9iaW4vd3hndGsyLTIuNi1jb25maWciDQotIC1NQUtFX0VO
Vj0JV1hfQ09ORklHPSIke1gxMUJBU0V9L2Jpbi93eGd0azItMi42LWNvbmZpZyINCitDT05GSUdV
UkVfRU5WPQlDUFBGTEFHUz0iJHtDUFBGTEFHU30iIExERkxBR1M9IiR7TERGTEFHU30iDQogSU5T
VEFMTFNfU0hMSUI9CXllcw0KIA0KIENQUEZMQUdTPQkke1BUSFJFQURfQ0ZMQUdTfQ0KSW5kZXg6
IG1hdGgvZ3JhcGh0aGluZy9NYWtlZmlsZQ0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQ0KUkNTIGZpbGU6IC9ob21lL3Bj
dnMvcG9ydHMvbWF0aC9ncmFwaHRoaW5nL01ha2VmaWxlLHYNCnJldHJpZXZpbmcgcmV2aXNpb24g
MS4yNg0KZGlmZiAtdSAtcjEuMjYgTWFrZWZpbGUNCi0gLS0tIG1hdGgvZ3JhcGh0aGluZy9NYWtl
ZmlsZQkxMCBNYXkgMjAwNiAyMjozNzowOCAtMDAwMAkxLjI2DQorKysgbWF0aC9ncmFwaHRoaW5n
L01ha2VmaWxlCTEzIEp1biAyMDA2IDIzOjIyOjEzIC0wMDAwDQpAQCAtMTQsMTUgKzE0LDE0IEBA
DQogTUFJTlRBSU5FUj0JYXJ2ZWRARnJlZUJTRC5vcmcNCiBDT01NRU5UPQlBIHRvb2wgdGhhdCBh
bGxvd3MgeW91IHRvIGNyZWF0ZSwgbWFuaXB1bGF0ZSBhbmQgc3R1ZHkgZ3JhcGhzDQogDQotIC1M
SUJfREVQRU5EUz0Jd3hfZ3RrMl9jb3JlLTIuNi4wOiR7UE9SVFNESVJ9L3gxMS10b29sa2l0cy93
eGd0azI2DQotIC0NCiBVU0VfQlpJUDI9CXllcw0KIFVTRV9HTk9NRT0JZ25vbWV0YXJnZXQgZ3Rr
MjANCiBVU0VfQklTT049CXllcw0KIFVTRV9HTUFLRT0JeWVzDQorVVNFX1dYPQkJMi42DQorV1hf
Q09ORl9BUkdTPQlhYnNvbHV0ZQ0KIEdOVV9DT05GSUdVUkU9CXllcw0KIENPTkZJR1VSRV9FTlY9
CUNQUEZMQUdTPSIke0NQUEZMQUdTfSIgTERGTEFHUz0iJHtMREZMQUdTfSINCi0gLUNPTkZJR1VS
RV9BUkdTPQktLXdpdGgtd3gtY29uZmlnPSR7WDExQkFTRX0vYmluL3d4Z3RrMi0yLjYtY29uZmln
DQogTUFLRUZJTEU9CUdOVW1ha2VmaWxlDQogDQogUExJU1RfRklMRVM9CWJpbi9ncmFwaHRoaW5n
IGJpbi9ndA0KSW5kZXg6IG1hdGgvd3hNYXhpbWEvTWFrZWZpbGUNCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0NClJDUyBm
aWxlOiAvaG9tZS9wY3ZzL3BvcnRzL21hdGgvd3hNYXhpbWEvTWFrZWZpbGUsdg0KcmV0cmlldmlu
ZyByZXZpc2lvbiAxLjUNCmRpZmYgLXUgLXIxLjUgTWFrZWZpbGUNCi0gLS0tIG1hdGgvd3hNYXhp
bWEvTWFrZWZpbGUJMjggQXByIDIwMDYgMDM6MTk6MTIgLTAwMDAJMS41DQorKysgbWF0aC93eE1h
eGltYS9NYWtlZmlsZQkxMyBKdW4gMjAwNiAyMzoyMjoxMyAtMDAwMA0KQEAgLTE0LDE1ICsxNCwx
NCBAQA0KIE1BSU5UQUlORVI9CW5pdml0QGVtYWlsLml0DQogQ09NTUVOVD0JQSB3eFdpZGdldHMg
R1VJIGZvciB0aGUgY29tcHV0ZXIgYWxnZWJyYSBzeXN0ZW0gbWF4aW1hDQogDQotIC1MSUJfREVQ
RU5EUz0Jd3hfYmFzZXUtMi42OiR7UE9SVFNESVJ9L3gxMS10b29sa2l0cy93eGd0azI2LXVuaWNv
ZGUNCiBSVU5fREVQRU5EUz0JbWF4aW1hOiR7UE9SVFNESVJ9L21hdGgvbWF4aW1hDQogDQogVVNF
X0dFVFRFWFQ9CXllcw0KIFVTRV9HTk9NRT0JbGlieG1sMg0KLSAtV1hHVEtfQ09ORklHPz0JJHtY
MTFCQVNFfS9iaW4vd3hndGsydS0yLjYtY29uZmlnDQorVVNFX1dYPQkJMi42DQorV1hfQ09ORl9B
UkdTPQlhYnNvbHV0ZQ0KIEdOVV9DT05GSUdVUkU9CXllcw0KLSAtQ09ORklHVVJFX0FSR1M9CS0t
d2l0aC13eC1jb25maWc9JHtXWEdUS19DT05GSUd9IFwNCi0gLQkJLS1wcm9ncmFtLXByZWZpeD0N
CitDT05GSUdVUkVfQVJHUz0JLS1wcm9ncmFtLXByZWZpeD0NCiANCiBwb3N0LWluc3RhbGw6DQog
CUAke0NBVH0gJHtQS0dNRVNTQUdFfQ0KSW5kZXg6IG1pc2MvZGlhcnktaGVyY3VsZXMvTWFrZWZp
bGUNCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0NClJDUyBmaWxlOiAvaG9tZS9wY3ZzL3BvcnRzL21pc2MvZGlhcnktaGVy
Y3VsZXMvTWFrZWZpbGUsdg0KcmV0cmlldmluZyByZXZpc2lvbiAxLjINCmRpZmYgLXUgLXIxLjIg
TWFrZWZpbGUNCi0gLS0tIG1pc2MvZGlhcnktaGVyY3VsZXMvTWFrZWZpbGUJMTggTWF5IDIwMDYg
MTk6MTM6MTEgLTAwMDAJMS4yDQorKysgbWlzYy9kaWFyeS1oZXJjdWxlcy9NYWtlZmlsZQkxMyBK
dW4gMjAwNiAyMzoyMjoxMyAtMDAwMA0KQEAgLTE1LDExICsxNSwxMiBAQA0KIE1BSU5UQUlORVI9
CWluZm9mYXJtZXJARnJlZUJTRC5vcmcNCiBDT01NRU5UPQlBIHBlcnNvbmFsIHdvcmtvdXQgZGlh
cnkgcHJvZ3JhbSBmb3IgYm9keWJ1aWxkZXJzDQogDQotIC1SVU5fREVQRU5EUz0JJHtQWVRIT05f
U0lURUxJQkRJUn0vd3gtMi42LWd0azItdW5pY29kZS93eC9fX2luaXRfXy5weToke1BPUlRTRElS
fS94MTEtdG9vbGtpdHMvcHktd3hQeXRob24yNi11bmljb2RlIFwNCi0gLQkJJHtQWVRIT05fU0lU
RUxJQkRJUn0vc3FsaXRlL19faW5pdF9fLnB5OiR7UE9SVFNESVJ9L2RhdGFiYXNlcy9weS1QeVNR
TGl0ZTExDQorUlVOX0RFUEVORFM9CSR7UFlUSE9OX1NJVEVMSUJESVJ9L3NxbGl0ZS9fX2luaXRf
Xy5weToke1BPUlRTRElSfS9kYXRhYmFzZXMvcHktUHlTUUxpdGUxMQ0KIA0KIFVTRV9HRVRURVhU
PQl5ZXMNCiBVU0VfUFlUSE9OPQkyLjMrDQogVVNFX1BZRElTVFVUSUxTPQl5ZXMNCitVU0VfV1g9
CQkyLjYNCitXWF9DT01QUz0JcHl0aG9uX3J1bg0KIA0KIC5pbmNsdWRlIDxic2QucG9ydC5taz4N
CkluZGV4OiBtaXNjL2RvY3VtYW5jZXIvTWFrZWZpbGUNCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0NClJDUyBmaWxlOiAv
aG9tZS9wY3ZzL3BvcnRzL21pc2MvZG9jdW1hbmNlci9NYWtlZmlsZSx2DQpyZXRyaWV2aW5nIHJl
dmlzaW9uIDEuMTINCmRpZmYgLXUgLXIxLjEyIE1ha2VmaWxlDQotIC0tLSBtaXNjL2RvY3VtYW5j
ZXIvTWFrZWZpbGUJMTIgSmFuIDIwMDYgMTI6NTQ6MjQgLTAwMDAJMS4xMg0KKysrIG1pc2MvZG9j
dW1hbmNlci9NYWtlZmlsZQkxMyBKdW4gMjAwNiAyMzoyMjoxMyAtMDAwMA0KQEAgLTE4LDEyICsx
OCwxMiBAQA0KIA0KIEJVSUxEX0RFUEVORFM9CXdnZXQ6JHtQT1JUU0RJUn0vZnRwL3dnZXQgXA0K
IAkJc3dpc2gtZToke1BPUlRTRElSfS93d3cvc3dpc2gtZQ0KLSAtTElCX0RFUEVORFM9CXd4bW96
aWxsYV9ndGsyLTIuNC4wOiR7UE9SVFNESVJ9L3gxMS10b29sa2l0cy93eG1vemlsbGENCi0gLVJV
Tl9ERVBFTkRTPQkke0JVSUxEX0RFUEVORFN9IFwNCi0gLQkJJHtQWVRIT05fU0lURUxJQkRJUn0v
d3hQeXRob24vX19pbml0X18ucHk6JHtQT1JUU0RJUn0veDExLXRvb2xraXRzL3B5LXd4UHl0aG9u
MjQNCitSVU5fREVQRU5EUz0JJHtCVUlMRF9ERVBFTkRTfQ0KIA0KIFVTRV9QWVRIT049CTIuNA0K
IFVTRV9QRVJMNT0JeWVzDQorVVNFX1dYPQkJMi40DQorV1hfQ09NUFM9CW1vemlsbGEgcHl0aG9u
X3J1bg0KIEdOVV9DT05GSUdVUkU9CXllcw0KIENPTkZJR1VSRV9BUkdTPQktLWxpYmRpcj0ke1BS
RUZJWH0vc2hhcmUNCiANCkluZGV4OiBtdWx0aW1lZGlhL21rdnRvb2xuaXgvTWFrZWZpbGUNCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0NClJDUyBmaWxlOiAvaG9tZS9wY3ZzL3BvcnRzL211bHRpbWVkaWEvbWt2dG9vbG5p
eC9NYWtlZmlsZSx2DQpyZXRyaWV2aW5nIHJldmlzaW9uIDEuMjkNCmRpZmYgLXUgLXIxLjI5IE1h
a2VmaWxlDQotIC0tLSBtdWx0aW1lZGlhL21rdnRvb2xuaXgvTWFrZWZpbGUJMTAgTWF5IDIwMDYg
MjI6Mzc6MzMgLTAwMDAJMS4yOQ0KKysrIG11bHRpbWVkaWEvbWt2dG9vbG5peC9NYWtlZmlsZQkx
MyBKdW4gMjAwNiAyMzoyMjoxMyAtMDAwMA0KQEAgLTYyLDEzICs2MiwxMCBAQA0KIFBMSVNUX0ZJ
TEVTKz0JJSVEQVRBRElSJSUvaW1hZ2VzLyR7ZmlsZX0NCiAuZW5kZm9yDQogDQotIC1XWEdUS19D
T05GSUc9CXd4Z3RrMnUtMi42LWNvbmZpZw0KLSAtDQogLmluY2x1ZGUgPGJzZC5wb3J0LnByZS5t
az4NCiANCi0gLS5pZm5kZWYoV0lUSE9VVF9XWEdUSykNCi0gLUxJQl9ERVBFTkRTKz0Jd3hfZ3Rr
MnVfY29yZS0yLjYuMDoke1BPUlRTRElSfS94MTEtdG9vbGtpdHMvd3hndGsyNi11bmljb2RlDQot
IC0NCisuaWZuZGVmKFdJVEhPVVRfV1gpDQorVVNFX1dYPQkJMi42DQogTUFOMSs9CQltbWcuMQ0K
IFBMSVNUX0ZJTEVTKz0JYmluL21tZw0KIC5lbmRpZg0KQEAgLTc3LDE2ICs3NCwxMSBAQA0KIEJS
T0tFTj0JCSJEb2VzIG5vdCBjb21waWxlIG9uIHNwYXJjNjQiDQogLmVuZGlmDQogDQotIC0uaWYg
JHtPU1ZFUlNJT059IDwgNTAwMDAwDQotIC1CUk9LRU49CQkiRG9lcyBub3QgY29tcGlsZSBvbiBG
cmVlQlNEIDQueCINCi0gLUNGTEFHUys9IC1ETk9fV1NUUklORw0KLSAtLmVuZGlmDQotIC0NCiBw
cmUtZXZlcnl0aGluZzo6DQotIC0uaWZuZGVmKFdJVEhPVVRfV1hHVEspDQorLmlmbmRlZihXSVRI
T1VUX1dYKQ0KIAlAJHtFQ0hPX01TR30gIj09PT4iDQotIC0JQCR7RUNIT19NU0d9ICI9PT0+IFlv
dSBjYW4gZGlzYWJsZSB3eEdUSzIgc3VwcG9ydCBieSBkZWZpbmluZyINCi0gLQlAJHtFQ0hPX01T
R30gIj09PT4gIFdJVEhPVVRfV1hHVEsiDQorCUAke0VDSE9fTVNHfSAiPT09PiBZb3UgY2FuIGRp
c2FibGUgd3hXaWRnZXRzIHN1cHBvcnQgYnkgZGVmaW5pbmciDQorCUAke0VDSE9fTVNHfSAiPT09
PiAgV0lUSE9VVF9XWCINCiAJQCR7RUNIT19NU0d9ICI9PT0+Ig0KIC5lbmRpZg0KIA0KQEAgLTk1
LDcgKzg3LDcgQEANCiAJQCR7RklORH0gJHtXUktTUkN9IC10eXBlIGYgLW5hbWUgIk1ha2VmaWxl
LmluIiB8ICR7WEFSR1N9IFwNCiAJCS1uIDEwICR7UkVJTlBMQUNFX0NNRH0gLUUgLWUgXA0KIAkJ
J3MhXihBQ0xPQ0FMfEFVVE9DT05GfEFVVE9NQUtFfEFVVE9IRUFERVIpLiskJCFcMT0ke1RSVUV9
IScNCi0gLQlAJHtSRUlOUExBQ0VfQ01EfSAtZSAnc3x3eC1jb25maWd8JHtXWEdUS19DT05GSUd9
fCcgXA0KKwlAJHtSRUlOUExBQ0VfQ01EfSAtZSAnc3x3eC1jb25maWd8JHtXWF9DT05GSUd9fCcg
XA0KIAkJJHtXUktTUkN9L2NvbmZpZ3VyZQ0KIAlAJHtSRUlOUExBQ0VfQ01EfSAtZSAnc3xtYWxs
b2MuaHxzdGRsaWIuaHwnIFwNCiAJCSR7V1JLU1JDfS9zcmMvY29tbW9uL29zLmNwcA0KSW5kZXg6
IG11bHRpbWVkaWEvdG92aWQvTWFrZWZpbGUNCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0NClJDUyBmaWxlOiAvaG9tZS9w
Y3ZzL3BvcnRzL211bHRpbWVkaWEvdG92aWQvTWFrZWZpbGUsdg0KcmV0cmlldmluZyByZXZpc2lv
biAxLjEwDQpkaWZmIC11IC1yMS4xMCBNYWtlZmlsZQ0KLSAtLS0gbXVsdGltZWRpYS90b3ZpZC9N
YWtlZmlsZQkxMCBNYXkgMjAwNiAyMjozNzozNyAtMDAwMAkxLjEwDQorKysgbXVsdGltZWRpYS90
b3ZpZC9NYWtlZmlsZQkxMyBKdW4gMjAwNiAyMzoyMjoxMyAtMDAwMA0KQEAgLTM3LDExICszNywx
MiBAQA0KIAkJZ3Jvd2lzb2ZzOiR7UE9SVFNESVJ9L3N5c3V0aWxzL2R2ZCtydy10b29scw0KIFJV
Tl9ERVBFTkRTPQlcDQogCQkke0JVSUxEX0RFUEVORFN9IFwNCi0gLQkJYmFzaDoke1BPUlRTRElS
fS9zaGVsbHMvYmFzaCBcDQotIC0JCSR7UFlUSE9OX1NJVEVMSUJESVJ9L3d4LTIuNi1ndGsyLWFu
c2kvd3gvX19pbml0X18ucHk6JHtQT1JUU0RJUn0veDExLXRvb2xraXRzL3B5LXd4UHl0aG9uMjYN
CisJCWJhc2g6JHtQT1JUU0RJUn0vc2hlbGxzL2Jhc2gNCiANCiBVU0VfUFlUSE9OPQl5ZXMNCiBV
U0VfUFlESVNUVVRJTFM9CXllcw0KK1VTRV9XWD0JCTIuNg0KK1dYX0NPTVBTPQlweXRob25fcnVu
DQogR05VX0NPTkZJR1VSRT0JeWVzDQogDQogTUFOMT0JaWR2aWQuMSBtYWtlZHZkLjEgbWFrZW1l
bnUuMSBtYWtlc2xpZGVzLjEgbWFrZXhtbC4xIHBvc3Rwcm9jLjEgXA0KSW5kZXg6IG11bHRpbWVk
aWEvdmxjL01ha2VmaWxlDQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09DQpSQ1MgZmlsZTogL2hvbWUvcGN2cy9wb3J0cy9t
dWx0aW1lZGlhL3ZsYy9NYWtlZmlsZSx2DQpyZXRyaWV2aW5nIHJldmlzaW9uIDEuMTI2DQpkaWZm
IC11IC1yMS4xMjYgTWFrZWZpbGUNCi0gLS0tIG11bHRpbWVkaWEvdmxjL01ha2VmaWxlCTkgSnVu
IDIwMDYgMTg6MDA6MzQgLTAwMDAJMS4xMjYNCisrKyBtdWx0aW1lZGlhL3ZsYy9NYWtlZmlsZQkx
MyBKdW4gMjAwNiAyMzoyMjoxMyAtMDAwMA0KQEAgLTU3LDE1ICs1Nyw2IEBADQogTUFOMT0JCXZs
Yy4xIFwNCiAJCXZsYy1jb25maWcuMQ0KIA0KLSAtLmlmIGRlZmluZWQoV0lUSF9XWEdUS19WRVIp
ICYmICR7V0lUSF9XWEdUS19WRVJ9PT0iMi40Ig0KLSAtV1hfQ09ORklHPQl3eGd0azItMi40LWNv
bmZpZw0KLSAtV1hHVEsyX1BPUlQ9CXd4Z3RrMjQNCi0gLS5lbHNlDQotIC1XWF9DT05GSUc9CXd4
Z3RrMi0yLjYtY29uZmlnDQotIC1XWEdUSzJfUE9SVD0Jd3hndGsyNg0KLSAtQ1BQRkxBR1MrPQkt
SSR7WDExQkFTRX0vaW5jbHVkZS93eC0yLjYvDQotIC0uZW5kaWYNCi0gLQ0KIC5pbmNsdWRlIDxi
c2QucG9ydC5wcmUubWs+DQogDQogLmlmICR7UEVSTF9MRVZFTH0gPCA1MDA4MDANCkBAIC0xNDIs
NyArMTMzLDcgQEANCiAuaWYgZGVmaW5lZChXSVRIX1NLSU5TKSAmJiAhZGVmaW5lZChXSVRIT1VU
X1NLSU5TKQ0KIExJQl9ERVBFTkRTKz0JdGFyLjA6JHtQT1JUU0RJUn0vZGV2ZWwvbGlidGFyDQog
Q09ORklHVVJFX0FSR1MrPS0tZW5hYmxlLXNraW5zMg0KLSAtV0lUSF9XWEdUSz0JeWVzDQorLnVu
ZGVmIFdJVEhPVVRfV1gNCiAuZWxzZQ0KIENPTkZJR1VSRV9BUkdTKz0tLWRpc2FibGUtc2tpbnMy
DQogLmVuZGlmDQpAQCAtMTU0LDExICsxNDUsOSBAQA0KIENPTkZJR1VSRV9BUkdTKz0tLWRpc2Fi
bGUtbG9hZGVyDQogLmVuZGlmDQogDQotIC0uaWYgIWRlZmluZWQoV0lUSE9VVF9XWEdUSykNCi0g
LUJVSUxEX0RFUEVORFMrPQkke1dYX0NPTkZJR306JHtQT1JUU0RJUn0veDExLXRvb2xraXRzLyR7
V1hHVEsyX1BPUlR9DQotIC1SVU5fREVQRU5EUys9CSR7V1hfQ09ORklHfToke1BPUlRTRElSfS94
MTEtdG9vbGtpdHMvJHtXWEdUSzJfUE9SVH0NCisuaWYgIWRlZmluZWQoV0lUSE9VVF9XWCkNCitV
U0VfV1g9CQkyLjYNCiBDT05GSUdVUkVfQVJHUys9LS1lbmFibGUtd3h3aWRnZXRzDQotIC1DT05G
SUdVUkVfRU5WKz0JV1hfQ09ORklHPSIke1gxMUJBU0V9L2Jpbi8ke1dYX0NPTkZJR30iDQogLmVs
c2UNCiBDT05GSUdVUkVfQVJHUys9LS1kaXNhYmxlLXd4d2lkZ2V0cw0KIC5lbmRpZg0KSW5kZXg6
IG11bHRpbWVkaWEvdmxjL01ha2VmaWxlLmluYw0KPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQ0KUkNTIGZpbGU6IC9ob21l
L3BjdnMvcG9ydHMvbXVsdGltZWRpYS92bGMvTWFrZWZpbGUuaW5jLHYNCnJldHJpZXZpbmcgcmV2
aXNpb24gMS4xDQpkaWZmIC11IC1yMS4xIE1ha2VmaWxlLmluYw0KLSAtLS0gbXVsdGltZWRpYS92
bGMvTWFrZWZpbGUuaW5jCTcgTWF5IDIwMDYgMjI6MTY6NDEgLTAwMDAJMS4xDQorKysgbXVsdGlt
ZWRpYS92bGMvTWFrZWZpbGUuaW5jCTEzIEp1biAyMDA2IDIzOjIyOjEzIC0wMDAwDQpAQCAtMjIs
MTQgKzIyLDggQEANCiAjICBUaGlzIEludGVyZmFjZSBzdXBwb3J0cyBhIHNraW5uZWQgZ3RrMi4w
IGludGVyZmFjZQ0KICMgIFNraW5zIGNhbiBiZSBmb3VuZCBhdCBodHRwOi8vd3d3LnZpZGVvbGFu
Lm9yZy92bGMvZG93bmxvYWQtc2tpbnMuaHRtbA0KICMNCi0gLSMgV0lUSE9VVF9XWEdUSz15ZXMN
Ci0gLSMgIFd4V2luZG93cy9HdGsgMi54IEludGVyZmFjZQ0KLSAtIyAgVGhpcyBpcyB0aGUgZGVm
YXVsdCBhbmQgbW9zdCBzdXBwb3J0ZWQNCi0gLSMgIHgxMSBpbnRlcmZhY2UNCi0gLSMNCi0gLSMg
V0lUSF9XWEdUS19WRVI9WzIuNHwyLjZdDQotIC0jICBDaG9vc2UgYSBXeEdUSyB2ZXJzaW9uIHlv
dSB3YW50IHRvIHVzZS4NCi0gLSMgIERlZmF1bHRzIHRvIDI2DQorIyBXSVRIT1VUX1dYPXllcw0K
KyMgIFd4V2lkZ2V0cyBJbnRlcmZhY2UNCiAjDQogIyBBdWRpbyBLbm9iczoNCiAjDQpAQCAtMjg1
LDExICsyNzksMTEgQEANCiAJJHtFQ0hPX0NNRH0gInNoYXJlL3BpeG1hcHMvZ3ZsYy5wbmciID4+
ICR7UExJU1R9DQogCSR7RUNIT19DTUR9ICJzaGFyZS9hcHBsaWNhdGlvbnMvc3ZsYy5kZXNrdG9w
IiA+PiAke1BMSVNUfQ0KIC5lbmRpZg0KLSAtLmlmICFkZWZpbmVkKFdJVEhPVVRfV1hHVEspDQor
LmlmICFkZWZpbmVkKFdJVEhPVVRfV1gpDQogCSR7RUNIT19DTUR9ICJzaGFyZS9waXhtYXBzL3Zs
Yy5wbmciID4+ICR7UExJU1R9DQogCSR7RUNIT19DTUR9ICJzaGFyZS9hcHBsaWNhdGlvbnMvd3h2
bGMuZGVza3RvcCIgPj4gJHtQTElTVH0NCiAuZW5kaWYNCi0gLS5pZiAhZGVmaW5lZChXSVRIT1VU
X1dYR1RLKSB8fCBkZWZpbmVkKFdJVEhfU0tJTlMpDQorLmlmICFkZWZpbmVkKFdJVEhPVVRfV1gp
IHx8IGRlZmluZWQoV0lUSF9TS0lOUykNCiAJJHtFQ0hPX0NNRH0gIkB1bmV4ZWMgJHtSTURJUn0g
JUQvc2hhcmUvYXBwbGljYXRpb25zIDI+L2Rldi9udWxsIHx8ICR7VFJVRX0iID4+ICR7UExJU1R9
DQogLmVuZGlmDQogCWNkICR7V1JLU1JDfSAmJiAke1NFVEVOVn0gJHtNQUtFX0VOVn0gJHtHTUFL
RX0gJHtNQUtFX0ZMQUdTfSBcDQpAQCAtMzUwLDcgKzM0NCw3IEBADQogLmVuZGlmDQogCSR7SU5T
VEFMTF9NQU59ICR7V1JLU1JDfS9kb2MvdmxjLjEgJHtNQU5QUkVGSVh9L21hbi9tYW4xLw0KIAkk
e0lOU1RBTExfTUFOfSAke1dSS1NSQ30vZG9jL3ZsYy1jb25maWcuMSAke01BTlBSRUZJWH0vbWFu
L21hbjEvDQotIC0uaWYgZGVmaW5lZChXSVRIX1NLSU5TKSB8fCAhZGVmaW5lZChXSVRIT1VUX1dY
R1RLKQ0KKy5pZiBkZWZpbmVkKFdJVEhfU0tJTlMpIHx8ICFkZWZpbmVkKFdJVEhPVVRfV1gpDQog
CWlmIFsgISAtZCAke1BSRUZJWH0vc2hhcmUvYXBwbGljYXRpb25zIF07IHRoZW4gXA0KIAkJJHtN
S0RJUn0gJHtQUkVGSVh9L3NoYXJlL2FwcGxpY2F0aW9ucyA7IFwNCiAJZmkNCkBAIC0zNjEsNyAr
MzU1LDcgQEANCiAJJHtJTlNUQUxMX0RBVEF9ICR7RklMRVNESVJ9L3N2bGMuZGVza3RvcCAke1BS
RUZJWH0vc2hhcmUvYXBwbGljYXRpb25zDQogCSR7SU5TVEFMTF9EQVRBfSAke0ZBS0VESVJ9L3No
YXJlL3ZsYy92bGM0OHg0OC5wbmcgJHtQUkVGSVh9L3NoYXJlL3BpeG1hcHMvZ3ZsYy5wbmcNCiAu
ZW5kaWYNCi0gLS5pZiAhZGVmaW5lZChXSVRIT1VUX1dYR1RLKQ0KKy5pZiAhZGVmaW5lZChXSVRI
T1VUX1dYKQ0KIAkke0lOU1RBTExfREFUQX0gJHtGSUxFU0RJUn0vd3h2bGMuZGVza3RvcCAke1BS
RUZJWH0vc2hhcmUvYXBwbGljYXRpb25zDQogCSR7SU5TVEFMTF9EQVRBfSAke0ZBS0VESVJ9L3No
YXJlL3ZsYy92bGM0OHg0OC5wbmcgJHtQUkVGSVh9L3NoYXJlL3BpeG1hcHMvdmxjLnBuZw0KIC5l
bmRpZg0KSW5kZXg6IG11bHRpbWVkaWEvdmxjLWRldmVsL01ha2VmaWxlDQo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09DQpS
Q1MgZmlsZTogL2hvbWUvcGN2cy9wb3J0cy9tdWx0aW1lZGlhL3ZsYy1kZXZlbC9NYWtlZmlsZSx2
DQpyZXRyaWV2aW5nIHJldmlzaW9uIDEuMTQ5DQpkaWZmIC11IC1yMS4xNDkgTWFrZWZpbGUNCi0g
LS0tIG11bHRpbWVkaWEvdmxjLWRldmVsL01ha2VmaWxlCTkgSnVuIDIwMDYgMTg6MDA6MzQgLTAw
MDAJMS4xNDkNCisrKyBtdWx0aW1lZGlhL3ZsYy1kZXZlbC9NYWtlZmlsZQkxMyBKdW4gMjAwNiAy
MzoyMjoxMyAtMDAwMA0KQEAgLTYzLDE1ICs2Myw2IEBADQogTUFOMT0JCXZsYy4xIFwNCiAJCXZs
Yy1jb25maWcuMQ0KIA0KLSAtLmlmIGRlZmluZWQoV0lUSF9XWEdUS19WRVIpICYmICR7V0lUSF9X
WEdUS19WRVJ9PT0iMi40Ig0KLSAtV1hfQ09ORklHPQl3eGd0azItMi40LWNvbmZpZw0KLSAtV1hH
VEsyX1BPUlQ9CXd4Z3RrMjQNCi0gLS5lbHNlDQotIC1XWF9DT05GSUc9CXd4Z3RrMi0yLjYtY29u
ZmlnDQotIC1XWEdUSzJfUE9SVD0Jd3hndGsyNg0KLSAtQ1BQRkxBR1MrPQktSSR7WDExQkFTRX0v
aW5jbHVkZS93eC0yLjYvDQotIC0uZW5kaWYNCi0gLQ0KIC5pbmNsdWRlIDxic2QucG9ydC5wcmUu
bWs+DQogDQogLmlmICR7UEVSTF9MRVZFTH0gPCA1MDA4MDANCkBAIC0xNDgsNyArMTM5LDcgQEAN
CiAuaWYgZGVmaW5lZChXSVRIX1NLSU5TKSAmJiAhZGVmaW5lZChXSVRIT1VUX1NLSU5TKQ0KIExJ
Ql9ERVBFTkRTKz0JdGFyLjA6JHtQT1JUU0RJUn0vZGV2ZWwvbGlidGFyDQogQ09ORklHVVJFX0FS
R1MrPS0tZW5hYmxlLXNraW5zMg0KLSAtV0lUSF9XWEdUSz0JeWVzDQorLnVuZGVmIFdJVEhPVVRf
V1gNCiAuZWxzZQ0KIENPTkZJR1VSRV9BUkdTKz0tLWRpc2FibGUtc2tpbnMyDQogLmVuZGlmDQpA
QCAtMTYwLDExICsxNTEsOSBAQA0KIENPTkZJR1VSRV9BUkdTKz0tLWRpc2FibGUtbG9hZGVyDQog
LmVuZGlmDQogDQotIC0uaWYgIWRlZmluZWQoV0lUSE9VVF9XWEdUSykNCi0gLUJVSUxEX0RFUEVO
RFMrPQkke1dYX0NPTkZJR306JHtQT1JUU0RJUn0veDExLXRvb2xraXRzLyR7V1hHVEsyX1BPUlR9
DQotIC1SVU5fREVQRU5EUys9CSR7V1hfQ09ORklHfToke1BPUlRTRElSfS94MTEtdG9vbGtpdHMv
JHtXWEdUSzJfUE9SVH0NCisuaWYgIWRlZmluZWQoV0lUSE9VVF9XWCkNCitVU0VfV1g9CQkyLjYN
CiBDT05GSUdVUkVfQVJHUys9LS1lbmFibGUtd3h3aWRnZXRzDQotIC1DT05GSUdVUkVfRU5WKz0J
V1hfQ09ORklHPSIke1gxMUJBU0V9L2Jpbi8ke1dYX0NPTkZJR30iDQogLmVsc2UNCiBDT05GSUdV
UkVfQVJHUys9LS1kaXNhYmxlLXd4d2lkZ2V0cw0KIC5lbmRpZg0KSW5kZXg6IG11bHRpbWVkaWEv
dmxjLWRldmVsL01ha2VmaWxlLmluYw0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQ0KUkNTIGZpbGU6IC9ob21lL3BjdnMv
cG9ydHMvbXVsdGltZWRpYS92bGMtZGV2ZWwvTWFrZWZpbGUuaW5jLHYNCnJldHJpZXZpbmcgcmV2
aXNpb24gMS40DQpkaWZmIC11IC1yMS40IE1ha2VmaWxlLmluYw0KLSAtLS0gbXVsdGltZWRpYS92
bGMtZGV2ZWwvTWFrZWZpbGUuaW5jCTIyIE1heSAyMDA2IDAxOjEyOjA3IC0wMDAwCTEuNA0KKysr
IG11bHRpbWVkaWEvdmxjLWRldmVsL01ha2VmaWxlLmluYwkxMyBKdW4gMjAwNiAyMzoyMjoxMyAt
MDAwMA0KQEAgLTIyLDE0ICsyMiw4IEBADQogIyAgVGhpcyBJbnRlcmZhY2Ugc3VwcG9ydHMgYSBz
a2lubmVkIGd0azIuMCBpbnRlcmZhY2UNCiAjICBTa2lucyBjYW4gYmUgZm91bmQgYXQgaHR0cDov
L3d3dy52aWRlb2xhbi5vcmcvdmxjL2Rvd25sb2FkLXNraW5zLmh0bWwNCiAjDQotIC0jIFdJVEhP
VVRfV1hHVEs9eWVzDQotIC0jICBXeFdpbmRvd3MvR3RrIDIueCBJbnRlcmZhY2UNCi0gLSMgIFRo
aXMgaXMgdGhlIGRlZmF1bHQgYW5kIG1vc3Qgc3VwcG9ydGVkDQotIC0jICB4MTEgaW50ZXJmYWNl
DQotIC0jDQotIC0jIFdJVEhfV1hHVEtfVkVSPVsyLjR8Mi42XQ0KLSAtIyAgQ2hvb3NlIGEgV3hH
VEsgdmVyc2lvbiB5b3Ugd2FudCB0byB1c2UuDQotIC0jICBEZWZhdWx0cyB0byAyNg0KKyMgV0lU
SE9VVF9XWD15ZXMNCisjICBXeFdpZGdldHMgSW50ZXJmYWNlDQogIw0KICMgQXVkaW8gS25vYnM6
DQogIw0KQEAgLTI4NSwxMSArMjc5LDExIEBADQogCSR7RUNIT19DTUR9ICJzaGFyZS9waXhtYXBz
L2d2bGMucG5nIiA+PiAke1BMSVNUfQ0KIAkke0VDSE9fQ01EfSAic2hhcmUvYXBwbGljYXRpb25z
L3N2bGMuZGVza3RvcCIgPj4gJHtQTElTVH0NCiAuZW5kaWYNCi0gLS5pZiAhZGVmaW5lZChXSVRI
T1VUX1dYR1RLKQ0KKy5pZiAhZGVmaW5lZChXSVRIT1VUX1dYKQ0KIAkke0VDSE9fQ01EfSAic2hh
cmUvcGl4bWFwcy92bGMucG5nIiA+PiAke1BMSVNUfQ0KIAkke0VDSE9fQ01EfSAic2hhcmUvYXBw
bGljYXRpb25zL3ZsYy5kZXNrdG9wIiA+PiAke1BMSVNUfQ0KIC5lbmRpZg0KLSAtLmlmICFkZWZp
bmVkKFdJVEhPVVRfV1hHVEspIHx8IGRlZmluZWQoV0lUSF9TS0lOUykNCisuaWYgIWRlZmluZWQo
V0lUSE9VVF9XWCkgfHwgZGVmaW5lZChXSVRIX1NLSU5TKQ0KIAkke0VDSE9fQ01EfSAiQHVuZXhl
YyAke1JNRElSfSAlRC9zaGFyZS9hcHBsaWNhdGlvbnMgMj4vZGV2L251bGwgfHwgJHtUUlVFfSIg
Pj4gJHtQTElTVH0NCiAuZW5kaWYNCiAJY2QgJHtXUktTUkN9ICYmICR7U0VURU5WfSAke01BS0Vf
RU5WfSAke0dNQUtFfSAke01BS0VfRkxBR1N9IFwNCkBAIC0zNTAsNyArMzQ0LDcgQEANCiAuZW5k
aWYNCiAJJHtJTlNUQUxMX01BTn0gJHtXUktTUkN9L2RvYy92bGMuMSAke01BTlBSRUZJWH0vbWFu
L21hbjEvDQogCSR7SU5TVEFMTF9NQU59ICR7V1JLU1JDfS9kb2MvdmxjLWNvbmZpZy4xICR7TUFO
UFJFRklYfS9tYW4vbWFuMS8NCi0gLS5pZiBkZWZpbmVkKFdJVEhfU0tJTlMpIHx8ICFkZWZpbmVk
KFdJVEhPVVRfV1hHVEspDQorLmlmIGRlZmluZWQoV0lUSF9TS0lOUykgfHwgIWRlZmluZWQoV0lU
SE9VVF9XWCkNCiAJaWYgWyAhIC1kICR7UFJFRklYfS9zaGFyZS9hcHBsaWNhdGlvbnMgXTsgdGhl
biBcDQogCQkke01LRElSfSAke1BSRUZJWH0vc2hhcmUvYXBwbGljYXRpb25zIDsgXA0KIAlmaQ0K
QEAgLTM2MSw3ICszNTUsNyBAQA0KIAkke0lOU1RBTExfREFUQX0gJHtGSUxFU0RJUn0vc3ZsYy5k
ZXNrdG9wICR7UFJFRklYfS9zaGFyZS9hcHBsaWNhdGlvbnMNCiAJJHtJTlNUQUxMX0RBVEF9ICR7
RkFLRURJUn0vc2hhcmUvdmxjL3ZsYzQ4eDQ4LnBuZyAke1BSRUZJWH0vc2hhcmUvcGl4bWFwcy9n
dmxjLnBuZw0KIC5lbmRpZg0KLSAtLmlmICFkZWZpbmVkKFdJVEhPVVRfV1hHVEspDQorLmlmICFk
ZWZpbmVkKFdJVEhPVVRfV1gpDQogCSR7SU5TVEFMTF9EQVRBfSAke0ZJTEVTRElSfS92bGMuZGVz
a3RvcCAke1BSRUZJWH0vc2hhcmUvYXBwbGljYXRpb25zDQogCSR7SU5TVEFMTF9EQVRBfSAke0ZB
S0VESVJ9L3NoYXJlL3ZsYy92bGM0OHg0OC5wbmcgJHtQUkVGSVh9L3NoYXJlL3BpeG1hcHMvdmxj
LnBuZw0KIC5lbmRpZg0KSW5kZXg6IG5ldC9ib2luYy1jbGllbnQvTWFrZWZpbGUNCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0NClJDUyBmaWxlOiAvaG9tZS9wY3ZzL3BvcnRzL25ldC9ib2luYy1jbGllbnQvTWFrZWZpbGUs
dg0KcmV0cmlldmluZyByZXZpc2lvbiAxLjE5DQpkaWZmIC11IC1yMS4xOSBNYWtlZmlsZQ0KLSAt
LS0gbmV0L2JvaW5jLWNsaWVudC9NYWtlZmlsZQkxMiBNYXkgMjAwNiAxNDowMDowNCAtMDAwMAkx
LjE5DQorKysgbmV0L2JvaW5jLWNsaWVudC9NYWtlZmlsZQkxMyBKdW4gMjAwNiAyMzoyMjoxMyAt
MDAwMA0KQEAgLTM5LDE0ICszOSwxNCBAQA0KIC5pbmNsdWRlIDxic2QucG9ydC5wcmUubWs+DQog
DQogLmlmICFkZWZpbmVkKFdJVEhPVVRfWDExKQ0KLSAtQ09ORklHVVJFX0FSR1MrPQktLXdpdGgt
d3gtY29uZmlnPXd4Z3RrMi0yLjYtY29uZmlnDQorVVNFX1dYPQkJMi42DQorV1hfQ09ORl9BUkdT
PQlhYnNvbHV0ZQ0KIC5lbHNlDQotIC1DT05GSUdVUkVfQVJHUys9CS0td2l0aC13eC1jb25maWc9
ZmFsc2UNCitDT05GSUdVUkVfQVJHUys9LS13aXRoLXd4LWNvbmZpZz1mYWxzZQ0KIC5lbmRpZg0K
IA0KIC5pZiAhZGVmaW5lZChXSVRIT1VUX1gxMSkNCiBMSUJfREVQRU5EUys9CWljb252OiR7UE9S
VFNESVJ9L2NvbnZlcnRlcnMvbGliaWNvbnYgXA0KLSAtCQl3eF9iYXNlOiR7UE9SVFNESVJ9L3gx
MS10b29sa2l0cy93eGd0azI2IFwNCiAJCWpwZWc6JHtQT1JUU0RJUn0vZ3JhcGhpY3MvanBlZyBc
DQogCQlnbHV0OiR7UE9SVFNESVJ9L2dyYXBoaWNzL2xpYmdsdXQNCiAuZW5kaWYNCkluZGV4OiBu
ZXQvcHktbXAtcmFuZG9tL01ha2VmaWxlDQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09DQpSQ1MgZmlsZTogL2hvbWUvcGN2
cy9wb3J0cy9uZXQvcHktbXAtcmFuZG9tL01ha2VmaWxlLHYNCnJldHJpZXZpbmcgcmV2aXNpb24g
MS40DQpkaWZmIC11IC1yMS40IE1ha2VmaWxlDQotIC0tLSBuZXQvcHktbXAtcmFuZG9tL01ha2Vm
aWxlCTEyIEphbiAyMDA2IDEyOjU0OjI1IC0wMDAwCTEuNA0KKysrIG5ldC9weS1tcC1yYW5kb20v
TWFrZWZpbGUJMTMgSnVuIDIwMDYgMjM6MjI6MTMgLTAwMDANCkBAIC0xNiwxMCArMTYsMTAgQEAN
CiBNQUlOVEFJTkVSPQlyYW5kb21pbWFnZS13aWRnZXRAbWlycm9ycHJvamVjdC5jb20NCiBDT01N
RU5UPQlEaXNwbGF5IHJhbmRvbSBNaXJyb3IgUHJvamVjdCBpbWFnZXMgb24geW91ciBkZXNrdG9w
DQogDQotIC1SVU5fREVQRU5EUz0JJHtQWVRIT05fU0lURUxJQkRJUn0vd3hQeXRob24vd3hjLnNv
OiR7UE9SVFNESVJ9L3gxMS10b29sa2l0cy9weS13eFB5dGhvbjI0DQotIC0NCiBVU0VfUFlUSE9O
PQl5ZXMNCiBVU0VfWF9QUkVGSVg9CXllcw0KK1VTRV9XWD0JCTIuNA0KK1dYX0NPTVBTPQlweXRo
b25fcnVuDQogTk9fQlVJTEQ9CXllcw0KIA0KIHByZS1pbnN0YWxsOg0KSW5kZXg6IG5ldC1wMnAv
YW11bGUxL01ha2VmaWxlDQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09DQpSQ1MgZmlsZTogL2hvbWUvcGN2cy9wb3J0cy9u
ZXQtcDJwL2FtdWxlMS9NYWtlZmlsZSx2DQpyZXRyaWV2aW5nIHJldmlzaW9uIDEuMTkNCmRpZmYg
LXUgLXIxLjE5IE1ha2VmaWxlDQotIC0tLSBuZXQtcDJwL2FtdWxlMS9NYWtlZmlsZQk2IEFwciAy
MDA2IDEzOjQ0OjU3IC0wMDAwCTEuMTkNCisrKyBuZXQtcDJwL2FtdWxlMS9NYWtlZmlsZQkxMyBK
dW4gMjAwNiAyMzoyMjoxMyAtMDAwMA0KQEAgLTE2LDggKzE2LDcgQEANCiBNQUlOVEFJTkVSPQln
YW5hZWwubGFwbGFuY2hlQG1hcnR5bWFjLmNvbQ0KIENPTU1FTlQ9CVRoZSBhbGwtcGxhdGZvcm0g
ZU11bGUgcDJwIGNsaWVudA0KIA0KLSAtTElCX0RFUEVORFM9CXd4X2d0azItMi40LjA6JHtQT1JU
U0RJUn0veDExLXRvb2xraXRzL3d4Z3RrMjQgXA0KLSAtCQljdXJsLjM6JHtQT1JUU0RJUn0vZnRw
L2N1cmwNCitMSUJfREVQRU5EUz0JY3VybC4zOiR7UE9SVFNESVJ9L2Z0cC9jdXJsDQogDQogTEFU
RVNUX0xJTks9CWFNdWxlMQ0KIENPTkZMSUNUUz0JYU11bGUtMi4qIGFNdWxlLWRldmVsLVswLTld
Kg0KQEAgLTI3LDExICsyNiwxMiBAQA0KIFVTRV9HRVRURVhUPQl5ZXMNCiBVU0VfR05PTUU9CWdu
b21laGllciBnbm9tZWhhY2sgZ25vbWVwcmVmaXgNCiBVU0VfR01BS0U9CXllcw0KK1VTRV9XWD0J
CTIuNA0KK1dYX0NPTkZfQVJHUz0JYWJzb2x1dGUNCiBHTlVfQ09ORklHVVJFPQl5ZXMNCiBDT05G
SUdVUkVfQVJHUz0JLS13aXRob3V0LWluY2x1ZGVkLWdldHRleHQgXA0KIAkJLS13aXRoLWxpYmlu
dGwtcHJlZml4PSR7TE9DQUxCQVNFfSBcDQogCQktLXdpdGgtbGliaWNvbnYtcHJlZml4PSR7TE9D
QUxCQVNFfSBcDQotIC0JCS0td2l0aC13eC1jb25maWc9JHtXWF9DT05GSUd9IFwNCiAJCS0td2l0
aC13eGJhc2UtY29uZmlnPSR7V1hfQ09ORklHfSBcDQogCQktLXdpdGgtY3VybC1jb25maWc9JHtD
VVJMX0NPTkZJR30gXA0KIAkJLS1wcm9ncmFtLXRyYW5zZm9ybS1uYW1lPSJzL2VkMmsvYW11bGUt
ZWQyay1oYW5kbGVyLyINCkBAIC00Miw3ICs0Miw2IEBADQogT1BUSU9OUz0JT1BUSU1JWkUgIkJ1
aWxkIHdpdGggb3B0aW1pemF0aW9uIiBvbiBcDQogCQlTVEFUSUMgIkVuYWJsZSBzdGF0aWMgbGlu
a2luZyIgb2ZmDQogDQotIC1XWF9DT05GSUc/PQkke1gxMUJBU0V9L2Jpbi93eGd0azItMi40LWNv
bmZpZw0KIENVUkxfQ09ORklHPz0JJHtMT0NBTEJBU0V9L2Jpbi9jdXJsLWNvbmZpZw0KIA0KIC5p
bmNsdWRlIDxic2QucG9ydC5wcmUubWs+DQpJbmRleDogbmV0LXAycC9hbXVsZTIvTWFrZWZpbGUN
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0NClJDUyBmaWxlOiAvaG9tZS9wY3ZzL3BvcnRzL25ldC1wMnAvYW11bGUyL01h
a2VmaWxlLHYNCnJldHJpZXZpbmcgcmV2aXNpb24gMS44DQpkaWZmIC11IC1yMS44IE1ha2VmaWxl
DQotIC0tLSBuZXQtcDJwL2FtdWxlMi9NYWtlZmlsZQkxOCBNYXIgMjAwNiAxNzoxMjoyMyAtMDAw
MAkxLjgNCisrKyBuZXQtcDJwL2FtdWxlMi9NYWtlZmlsZQkxMyBKdW4gMjAwNiAyMzoyMjoxMyAt
MDAwMA0KQEAgLTE1LDggKzE1LDcgQEANCiBNQUlOVEFJTkVSPQlnYW5hZWwubGFwbGFuY2hlQG1h
cnR5bWFjLmNvbQ0KIENPTU1FTlQ9CVRoZSBhbGwtcGxhdGZvcm0gZU11bGUgcDJwIGNsaWVudA0K
IA0KLSAtTElCX0RFUEVORFM9CXd4X2d0azJ1X2NvcmUtMi42OiR7UE9SVFNESVJ9L3gxMS10b29s
a2l0cy93eGd0azI2LXVuaWNvZGUgXA0KLSAtCQljdXJsLjM6JHtQT1JUU0RJUn0vZnRwL2N1cmwN
CitMSUJfREVQRU5EUz0JY3VybC4zOiR7UE9SVFNESVJ9L2Z0cC9jdXJsDQogIwkJZ2QuNDoke1BP
UlRTRElSfS9ncmFwaGljcy9nZA0KICMJCXBuZy41OiR7UE9SVFNESVJ9L2dyYXBoaWNzL3BuZw0K
IA0KQEAgLTI3LDEzICsyNiwxNCBAQA0KIFVTRV9YX1BSRUZJWD0JeWVzDQogVVNFX0dOT01FPQln
bm9tZWhpZXIgZ25vbWVoYWNrIGdub21lcHJlZml4DQogVVNFX0dNQUtFPQl5ZXMNCitVU0VfV1g9
CQkyLjYNCitXWF9DT05GX0FSR1M9CWFic29sdXRlDQogR05VX0NPTkZJR1VSRT0JeWVzDQogQ09O
RklHVVJFX1RBUkdFVD0tLWJ1aWxkPSR7TUFDSElORV9BUkNIfS1wb3J0YmxkLWZyZWVic2Qke09T
UkVMfQ0KIENPTkZJR1VSRV9BUkdTPQktLWRpc2FibGUtZGVidWcgXA0KIAkJLS13aXRob3V0LWlu
Y2x1ZGVkLWdldHRleHQgXA0KIAkJLS13aXRoLWxpYmludGwtcHJlZml4PSR7TE9DQUxCQVNFfSBc
DQogCQktLXdpdGgtbGliaWNvbnYtcHJlZml4PSR7TE9DQUxCQVNFfSBcDQotIC0JCS0td2l0aC13
eC1jb25maWc9JHtXWF9DT05GSUd9IFwNCiAJCS0td2l0aC1jdXJsLWNvbmZpZz0ke0NVUkxfQ09O
RklHfSBcDQogCQktLWVuYWJsZS1lbWJlZGRlZF9jcnlwdG8gXA0KIAkJLS1lbmFibGUtbW9ub2xp
dGhpYw0KQEAgLTUxLDcgKzUxLDYgQEANCiAJCUFMQyAiQ29tcGlsZSBhTXVsZSBMaW5rIENyZWF0
b3IgKCtHVUkpIiBvbiBcDQogCQlBTVVMRURBRU1PTiAiQ29tcGlsZSBhTXVsZSBkYWVtb24gdmVy
c2lvbiAtIEVYUEVSSU1FTlRBTCIgb2ZmDQogDQotIC1XWF9DT05GSUc/PQkke1gxMUJBU0V9L2Jp
bi93eGd0azJ1LTIuNi1jb25maWcNCiBDVVJMX0NPTkZJRz89CSR7TE9DQUxCQVNFfS9iaW4vY3Vy
bC1jb25maWcNCiANCiAuaW5jbHVkZSA8YnNkLnBvcnQucHJlLm1rPg0KSW5kZXg6IG5ldC1wMnAv
bXV0ZS1uZXQvTWFrZWZpbGUNCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0NClJDUyBmaWxlOiAvaG9tZS9wY3ZzL3BvcnRz
L25ldC1wMnAvbXV0ZS1uZXQvTWFrZWZpbGUsdg0KcmV0cmlldmluZyByZXZpc2lvbiAxLjE4DQpk
aWZmIC11IC1yMS4xOCBNYWtlZmlsZQ0KLSAtLS0gbmV0LXAycC9tdXRlLW5ldC9NYWtlZmlsZQkx
MSBNYXkgMjAwNiAyMjo0OTo0OSAtMDAwMAkxLjE4DQorKysgbmV0LXAycC9tdXRlLW5ldC9NYWtl
ZmlsZQkxMyBKdW4gMjAwNiAyMzoyMjoxMyAtMDAwMA0KQEAgLTI5LDkgKzI5LDcgQEANCiBQQVRD
SF9XUktTUkM9CSR7V1JLRElSfS8ke1JFTEVBU0VfRElSRUNUT1JZfQ0KIA0KIC5pZm5kZWYoV0lU
SE9VVF9HVUkpDQotIC1MSUJfREVQRU5EUys9CXd4X2d0azItMi40LjA6JHtQT1JUU0RJUn0veDEx
LXRvb2xraXRzL3d4Z3RrMjQNCi0gLQ0KLSAtV1hfQ09ORklHPz0JJHtYMTFCQVNFfS9iaW4vd3hn
dGsyLTIuNC1jb25maWcNCitVU0VfV1g9CQkyLjQNCiAuZW5kaWYNCiANCiAjDQpJbmRleDogbmV0
LXAycC9weS1iaXR0b3JuYWRvL01ha2VmaWxlDQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09DQpSQ1MgZmlsZTogL2hvbWUv
cGN2cy9wb3J0cy9uZXQtcDJwL3B5LWJpdHRvcm5hZG8vTWFrZWZpbGUsdg0KcmV0cmlldmluZyBy
ZXZpc2lvbiAxLjI0DQpkaWZmIC11IC1yMS4yNCBNYWtlZmlsZQ0KLSAtLS0gbmV0LXAycC9weS1i
aXR0b3JuYWRvL01ha2VmaWxlCTExIE1heSAyMDA2IDIyOjQ5OjUwIC0wMDAwCTEuMjQNCisrKyBu
ZXQtcDJwL3B5LWJpdHRvcm5hZG8vTWFrZWZpbGUJMTMgSnVuIDIwMDYgMjM6MjI6MTMgLTAwMDAN
CkBAIC00Nyw3ICs0Nyw4IEBADQogDQogIyByZXF1aXJlZCBmb3IgR1VJDQogLmlmbmRlZihXSVRI
T1VUX0dVSSkNCi0gLVJVTl9ERVBFTkRTKz0JJHtQWVRIT05fU0lURUxJQkRJUn0vd3hQeXRob24v
X19pbml0X18ucHk6JHtQT1JUU0RJUn0veDExLXRvb2xraXRzL3B5LXd4UHl0aG9uMjQNCitVU0Vf
V1g9CQkyLjQNCitXWF9DT01QUz0JcHl0aG9uX3J1bg0KIFBMSVNUX1NVQis9CUdVST0nJw0KIEVY
VFJBX1BBVENIRVMrPQkke0ZJTEVTRElSfS9leHRyYS1ndWktcGF0Y2gtc2V0dXAucHkNCiAuZWxz
ZQ0KSW5kZXg6IG5ldC1wMnAvcHkta2Vub3Npcy1iaXR0b3JyZW50L01ha2VmaWxlDQo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09DQpSQ1MgZmlsZTogL2hvbWUvcGN2cy9wb3J0cy9uZXQtcDJwL3B5LWtlbm9zaXMtYml0dG9y
cmVudC9NYWtlZmlsZSx2DQpyZXRyaWV2aW5nIHJldmlzaW9uIDEuMjgNCmRpZmYgLXUgLXIxLjI4
IE1ha2VmaWxlDQotIC0tLSBuZXQtcDJwL3B5LWtlbm9zaXMtYml0dG9ycmVudC9NYWtlZmlsZQkx
MSBNYXkgMjAwNiAyMjo0OTo1MCAtMDAwMAkxLjI4DQorKysgbmV0LXAycC9weS1rZW5vc2lzLWJp
dHRvcnJlbnQvTWFrZWZpbGUJMTMgSnVuIDIwMDYgMjM6MjI6MTMgLTAwMDANCkBAIC00Nyw3ICs0
Nyw4IEBADQogDQogIyByZXF1aXJlZCBmb3IgR1VJDQogLmlmbmRlZihXSVRIT1VUX0dVSSkNCi0g
LVJVTl9ERVBFTkRTKz0JJHtQWVRIT05fU0lURUxJQkRJUn0vd3hQeXRob24vX19pbml0X18ucHk6
JHtQT1JUU0RJUn0veDExLXRvb2xraXRzL3B5LXd4UHl0aG9uMjQNCitVU0VfV1g9CQkyLjQNCitX
WF9DT01QUz0JcHl0aG9uX3J1bg0KIA0KIEVYVFJBX1BBVENIRVMrPQkke0ZJTEVTRElSfS9leHRy
YS1ndWktcGF0Y2gtc2V0dXAucHkNCiANCkluZGV4OiBuZXQtcDJwL3B5c2xzay9NYWtlZmlsZQ0K
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQ0KUkNTIGZpbGU6IC9ob21lL3BjdnMvcG9ydHMvbmV0LXAycC9weXNsc2svTWFr
ZWZpbGUsdg0KcmV0cmlldmluZyByZXZpc2lvbiAxLjE5DQpkaWZmIC11IC1yMS4xOSBNYWtlZmls
ZQ0KLSAtLS0gbmV0LXAycC9weXNsc2svTWFrZWZpbGUJMzAgSmFuIDIwMDYgMjE6MzY6MjUgLTAw
MDAJMS4xOQ0KKysrIG5ldC1wMnAvcHlzbHNrL01ha2VmaWxlCTEzIEp1biAyMDA2IDIzOjIyOjEz
IC0wMDAwDQpAQCAtMTQsOSArMTQsNiBAQA0KIE1BSU5UQUlORVI9CXNob2Vzb2Z0QGdteC5uZXQN
CiBDT01NRU5UPQlDbGllbnQgZm9yIFNvdWxTZWVrIGZpbGVzaGFyaW5nIHN5c3RlbQ0KIA0KLSAt
QlVJTERfREVQRU5EUz0JJHtQWVRIT05fU0lURUxJQkRJUn0vd3gtMi42LWd0azItYW5zaS93eC9f
X2luaXRfXy5weToke1BPUlRTRElSfS94MTEtdG9vbGtpdHMvcHktd3hQeXRob24yNg0KLSAtUlVO
X0RFUEVORFM9CSR7UFlUSE9OX1NJVEVMSUJESVJ9L3d4LTIuNi1ndGsyLWFuc2kvd3gvX19pbml0
X18ucHk6JHtQT1JUU0RJUn0veDExLXRvb2xraXRzL3B5LXd4UHl0aG9uMjYNCi0gLQ0KIC5pZiAh
ZGVmaW5lZChXSVRIT1VUX1ZPUkJJUykNCiBSVU5fREVQRU5EUys9CSR7UFlUSE9OX1NJVEVMSUJE
SVJ9L29nZy92b3JiaXMuc286JHtQT1JUU0RJUn0vYXVkaW8vcHktdm9yYmlzDQogLmVuZGlmDQpA
QCAtMjcsMTIgKzI0LDcgQEANCiANCiBVU0VfUFlUSE9OPQl5ZXMNCiBVU0VfUFlESVNUVVRJTFM9
eWVzDQorVVNFX1dYPQkJMi42DQorV1hfQ09NUFM9CXB5dGhvbg0KIA0KLSAtLmluY2x1ZGUgPGJz
ZC5wb3J0LnByZS5taz4NCi0gLQ0KLSAtcHJlLWluc3RhbGw6DQotIC0uaWYgZXhpc3RzKCR7UFlU
SE9OX1NJVEVMSUJESVJ9L3d4L19faW5pdF9fLnB5KQ0KLSAtQlJPS0VOPQkicHlzbHNrIG9ubHkg
d29ya3Mgd2l0aCBweS13eFB5dGhvbiA+PSAyLjYsIHBsZWFzZSBkZWluc3RhbGwgb2xkIHZlcnNp
b24gZmlyc3QiDQotIC0uZW5kaWYNCi0gLQ0KLSAtLmluY2x1ZGUgPGJzZC5wb3J0LnBvc3QubWs+
DQorLmluY2x1ZGUgPGJzZC5wb3J0Lm1rPg0KSW5kZXg6IG5ldC1wMnAveG11bGUvTWFrZWZpbGUN
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0NClJDUyBmaWxlOiAvaG9tZS9wY3ZzL3BvcnRzL25ldC1wMnAveG11bGUvTWFr
ZWZpbGUsdg0KcmV0cmlldmluZyByZXZpc2lvbiAxLjQ2DQpkaWZmIC11IC1yMS40NiBNYWtlZmls
ZQ0KLSAtLS0gbmV0LXAycC94bXVsZS9NYWtlZmlsZQkxMSBNYXkgMjAwNiAyMjo0OTo1MSAtMDAw
MAkxLjQ2DQorKysgbmV0LXAycC94bXVsZS9NYWtlZmlsZQkxMyBKdW4gMjAwNiAyMzoyMjoxMyAt
MDAwMA0KQEAgLTE3LDggKzE3LDcgQEANCiBDT01NRU5UPQlQb3J0IG9mIGVNdWxlIGVEb25rZXkg
UDJQIGNsaWVudCB1c2luZyB3eFdpbmRvd3MgY2xhc3MgbGlicmFyeQ0KIA0KIEJVSUxEX0RFUEVO
RFM9CSR7TE9DQUxCQVNFfS9saWIvbGliY3J5cHRvcHAuYToke1BPUlRTRElSfS9zZWN1cml0eS9j
cnlwdG9wcA0KLSAtTElCX0RFUEVORFM9CWV4cGF0LjY6JHtQT1JUU0RJUn0vdGV4dHByb2MvZXhw
YXQyIFwNCi0gLQkJd3hfZ3RrMl9jb3JlLTIuNi4wOiR7UE9SVFNESVJ9L3gxMS10b29sa2l0cy93
eGd0azI2DQorTElCX0RFUEVORFM9CWV4cGF0LjY6JHtQT1JUU0RJUn0vdGV4dHByb2MvZXhwYXQy
DQogUlVOX0RFUEVORFM9CXdnZXQ6JHtQT1JUU0RJUn0vZnRwL3dnZXQNCiANCiBVU0VfR0VUVEVY
VD0JeWVzDQpAQCAtMjgsMTQgKzI3LDE1IEBADQogCQlnbm9tZWhhY2sgXA0KIAkJZ25vbWVwcmVm
aXgNCiBVU0VfR01BS0U9CXllcw0KK1VTRV9XWD0JCTIuNg0KK1dYX0NPTkZfQVJHUz0JYWJzb2x1
dGUNCiBHTlVfQ09ORklHVVJFPQl5ZXMNCiBDT05GSUdVUkVfQVJHUz0JLS13aXRob3V0LWluY2x1
ZGVkLWdldHRleHQgXA0KIAkJLS13aXRoLWNyeXB0b3BwLXByZWZpeD0ke0xPQ0FMQkFTRX0gXA0K
IAkJLS13aXRoLWd0ay1wcmVmaXg9JHtYMTFCQVNFfSBcDQogCQktLXdpdGgtbGliaWNvbnYtcHJl
Zml4PSR7TE9DQUxCQVNFfSBcDQogCQktLXdpdGgtbGliaW50bC1wcmVmaXg9JHtMT0NBTEJBU0V9
IFwNCi0gLQkJLS1lbmFibGUtZGVidWcgXA0KLSAtCQktLXdpdGgtd3gtY29uZmlnPSR7V1hfQ09O
RklHfQ0KKwkJLS1lbmFibGUtZGVidWcNCiBDT05GSUdVUkVfRU5WPQlDUFBGTEFHUz0iJHtDUFBG
TEFHU30gJHtQVEhSRUFEX0NGTEFHU30gLUkke0xPQ0FMQkFTRX0vaW5jbHVkZSIgXA0KIAkJTERG
TEFHUz0iJHtMREZMQUdTfSAke1BUSFJFQURfTElCU30gLUwke0xPQ0FMQkFTRX0vbGliIg0KIE1B
S0VfQVJHUz0JLWUNCkBAIC00NCw4ICs0NCw2IEBADQogIyBmb3IgZGVidWdnaW5nIHB1cnBvc2Vz
DQogU1RSSVA9DQogDQotIC1XWF9DT05GSUc/PQkke1gxMUJBU0V9L2Jpbi93eGd0azItMi42LWNv
bmZpZw0KLSAtDQogRklMRVNfQVRPTExfUEFUQ0g9CXNyYy9QcmVmZXJlbmNlcy5jcHAgXA0KIAkJ
CXNyYy9vdGhlcmZ1bmN0aW9ucy5jcHANCiBGSUxFU19TVERJTlRfUEFUQ0g9CVwNCkluZGV4OiBz
Y2llbmNlL3B5LXNjaXB5L01ha2VmaWxlDQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09DQpSQ1MgZmlsZTogL2hvbWUvcGN2
cy9wb3J0cy9zY2llbmNlL3B5LXNjaXB5L01ha2VmaWxlLHYNCnJldHJpZXZpbmcgcmV2aXNpb24g
MS42DQpkaWZmIC11IC1yMS42IE1ha2VmaWxlDQotIC0tLSBzY2llbmNlL3B5LXNjaXB5L01ha2Vm
aWxlCTIxIE1hciAyMDA2IDA0OjM5OjI4IC0wMDAwCTEuNg0KKysrIHNjaWVuY2UvcHktc2NpcHkv
TWFrZWZpbGUJMTMgSnVuIDIwMDYgMjM6MjI6MTMgLTAwMDANCkBAIC0yMCwxMyArMjAsMTQgQEAN
CiANCiBCVUlMRF9ERVBFTkRTPQkke1BZTlVNRVJJQ30gXA0KIAkJJHtMT0NBTEJBU0V9L2xpYi9s
aWJkamJmZnQuYToke1BPUlRTRElSfS9tYXRoL2RqYmZmdCBcDQotIC0JCWYycHk6JHtQT1JUU0RJ
Un0vbGFuZy9mMnB5IFwNCi0gLQkJJHtQWVRIT05fU0lURUxJQkRJUn0vd3gvX19pbml0X18ucHk6
JHtQT1JUU0RJUn0veDExLXRvb2xraXRzL3B5LXd4UHl0aG9uMjQNCisJCWYycHk6JHtQT1JUU0RJ
Un0vbGFuZy9mMnB5DQogTElCX0RFUEVORFM9CWZmdHcuMjoke1BPUlRTRElSfS9tYXRoL2ZmdHcg
XA0KIAkJYXRsYXMuMToke1BPUlRTRElSfS9tYXRoL2F0bGFzDQogDQogVVNFX1BZVEhPTj0JMi4z
Kw0KIFVTRV9QWURJU1RVVElMUz0JeWVzDQorVVNFX1dYPQkJMi40DQorV1hfQ09NUFM9CXB5dGhv
bl9ydW4NCiANCiBwb3N0LXBhdGNoOg0KIAlAJHtHUkVQfSAtbFIgIm1hbGxvY1wuaCIgJHtXUktT
UkN9IHwgJHtYQVJHU30gJHtSRUlOUExBQ0VfQ01EfSBcDQpJbmRleDogc2VjdXJpdHkvaGFzaGlz
aC9NYWtlZmlsZQ0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQ0KUkNTIGZpbGU6IC9ob21lL3BjdnMvcG9ydHMvc2VjdXJp
dHkvaGFzaGlzaC9NYWtlZmlsZSx2DQpyZXRyaWV2aW5nIHJldmlzaW9uIDEuMjcNCmRpZmYgLXUg
LXIxLjI3IE1ha2VmaWxlDQotIC0tLSBzZWN1cml0eS9oYXNoaXNoL01ha2VmaWxlCTUgTm92IDIw
MDUgMDU6MjI6MDYgLTAwMDAJMS4yNw0KKysrIHNlY3VyaXR5L2hhc2hpc2gvTWFrZWZpbGUJMTMg
SnVuIDIwMDYgMjM6MjI6MTMgLTAwMDANCkBAIC0xOCwxMyArMTgsMTIgQEANCiBDT01NRU5UPQlH
VUkgZmlsZSBhbmQgc3RyaW5nIGhhc2hpbmcgdXRpbGl0eQ0KIA0KIEJVSUxEX0RFUEVORFM9CSR7
TE9DQUxCQVNFfS9saWIvbGliY3J5cHRvcHAuYToke1BPUlRTRElSfS9zZWN1cml0eS9jcnlwdG9w
cA0KLSAtTElCX0RFUEVORFM9CXd4X2d0azItMi40LjA6JHtQT1JUU0RJUn0veDExLXRvb2xraXRz
L3d4Z3RrMjQNCiANCitVU0VfV1g9CQkyLjQNCiBHTlVfQ09ORklHVVJFPQl5ZXMNCiBDT05GSUdV
UkVfVEFSR0VUPS0tYnVpbGQ9JHtNQUNISU5FX0FSQ0h9LXBvcnRibGQtZnJlZWJzZCR7T1NSRUx9
DQogQ09ORklHVVJFX0VOVj0JQ1BQRkxBR1M9Ii1JJHtMT0NBTEJBU0V9L2luY2x1ZGUiIFwNCi0g
LQkJTERGTEFHUz0iLUwke0xPQ0FMQkFTRX0vbGliIiBcDQotIC0JCVdYX0NPTkZJRz0iJHtYMTFC
QVNFfS9iaW4vd3hndGsyLTIuNC1jb25maWciDQorCQlMREZMQUdTPSItTCR7TE9DQUxCQVNFfS9s
aWIiDQogVVNFX0dNQUtFPQl5ZXMNCiBQTElTVF9GSUxFUz0JYmluL2hhc2hpc2gNCiANCkluZGV4
OiBzZWN1cml0eS9uZXdwa2ktY2xpZW50L01ha2VmaWxlDQo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09DQpSQ1MgZmlsZTog
L2hvbWUvcGN2cy9wb3J0cy9zZWN1cml0eS9uZXdwa2ktY2xpZW50L01ha2VmaWxlLHYNCnJldHJp
ZXZpbmcgcmV2aXNpb24gMS42DQpkaWZmIC11IC1yMS42IE1ha2VmaWxlDQotIC0tLSBzZWN1cml0
eS9uZXdwa2ktY2xpZW50L01ha2VmaWxlCTEzIE1heSAyMDA2IDA0OjE1OjA3IC0wMDAwCTEuNg0K
KysrIHNlY3VyaXR5L25ld3BraS1jbGllbnQvTWFrZWZpbGUJMTMgSnVuIDIwMDYgMjM6MjI6MTMg
LTAwMDANCkBAIC0xNSwxNiArMTUsMTUgQEANCiBDT01NRU5UPQlDKysgUEtJIGNsaWVudCBmcm9t
IG5ld3BraSBwcm9qZWN0DQogDQogTElCX0RFUEVORFM9CW5ld3BraS4yOiR7UE9SVFNESVJ9L3Nl
Y3VyaXR5L25ld3BraS1saWIgXA0KLSAtCQl4bWwyOiR7UE9SVFNESVJ9L3RleHRwcm9jL2xpYnht
bDIgXA0KLSAtCQl3eF9ndGsyLTIuNC4wOiR7UE9SVFNESVJ9L3gxMS10b29sa2l0cy93eGd0azI0
DQorCQl4bWwyOiR7UE9SVFNESVJ9L3RleHRwcm9jL2xpYnhtbDINCiANCiBXUktTUkM9CQkke1dS
S0RJUn0vJHtQT1JUTkFNRX0tMi4wLjANCiANCiBHTlVfQ09ORklHVVJFPQl5ZXMNCiBVU0VfT1BF
TlNTTD0JeWVzDQotIC1XWF9DT05GSUc9CSR7WDExQkFTRX0vYmluL3d4Z3RrMi0yLjQtY29uZmln
DQogVVNFX0dOT01FPQlnbm9tZXRhcmdldA0KIFVTRV9HTUFLRT0JeWVzDQorVVNFX1dYPQkJMi40
DQogDQogQ09ORklHVVJFX0VOVj0JQ1BQRkxBR1M9Ii1JJHtMT0NBTEJBU0V9L2luY2x1ZGUgLUkk
e1BSRUZJWH0vaW5jbHVkZSIgXA0KIAkJTERGTEFHUz0iLUwke0xPQ0FMQkFTRX0vbGliIC1MJHtQ
UkVGSVh9L2xpYiIgXA0KSW5kZXg6IHNlY3VyaXR5L25ld3BraS1jbGllbnQvZmlsZXMvcGF0Y2gt
Y29uZmlndXJlDQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09DQpSQ1MgZmlsZTogL2hvbWUvcGN2cy9wb3J0cy9zZWN1cml0
eS9uZXdwa2ktY2xpZW50L2ZpbGVzL3BhdGNoLWNvbmZpZ3VyZSx2DQpyZXRyaWV2aW5nIHJldmlz
aW9uIDEuMQ0KZGlmZiAtdSAtcjEuMSBwYXRjaC1jb25maWd1cmUNCi0gLS0tIHNlY3VyaXR5L25l
d3BraS1jbGllbnQvZmlsZXMvcGF0Y2gtY29uZmlndXJlCTE0IEp1bCAyMDA1IDEzOjI0OjA0IC0w
MDAwCTEuMQ0KKysrIHNlY3VyaXR5L25ld3BraS1jbGllbnQvZmlsZXMvcGF0Y2gtY29uZmlndXJl
CTEzIEp1biAyMDA2IDIzOjIyOjEzIC0wMDAwDQpAQCAtNTUsOCArNTUsOCBAQA0KICANCiAtV1hD
WFg9YHd4LWNvbmZpZyAtLWN4eGZsYWdzYA0KIC1XWExJQj1gd3gtY29uZmlnIC0tbGlic2ANCi0g
LStXWENYWD1gJHtXWENPTkZJR30gLS1jeHhmbGFnc2ANCi0gLStXWExJQj1gJHtXWENPTkZJR30g
LS1saWJzYA0KKytXWENYWD1gJHtXWF9DT05GSUd9IC0tY3h4ZmxhZ3NgDQorK1dYTElCPWAke1dY
X0NPTkZJR30gLS1saWJzYA0KICANCiAgQ1BQRkxBR1M9IiRXWENYWCAtRFdYSU5UTF9OT19HRVRU
RVhUX01BQ1JPICRDUFBGTEFHUyINCiAgTElCUz0iJFdYTElCIC1sbmV3cGtpICRMSUJTIg0KSW5k
ZXg6IHN5c3V0aWxzL2JhY3VsYS1zZXJ2ZXIvTWFrZWZpbGUNCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0NClJDUyBmaWxl
OiAvaG9tZS9wY3ZzL3BvcnRzL3N5c3V0aWxzL2JhY3VsYS1zZXJ2ZXIvTWFrZWZpbGUsdg0KcmV0
cmlldmluZyByZXZpc2lvbiAxLjY4DQpkaWZmIC11IC1yMS42OCBNYWtlZmlsZQ0KLSAtLS0gc3lz
dXRpbHMvYmFjdWxhLXNlcnZlci9NYWtlZmlsZQkxMiBKdW4gMjAwNiAxNTozNjo1MiAtMDAwMAkx
LjY4DQorKysgc3lzdXRpbHMvYmFjdWxhLXNlcnZlci9NYWtlZmlsZQkxMyBKdW4gMjAwNiAyMzoy
MjoxMyAtMDAwMA0KQEAgLTExOCw5ICsxMTgsOCBAQA0KIC5lbmRpZg0KICMgQnVpbGQgd3gtY29u
c29sZQ0KIC5pZiBkZWZpbmVkKFdJVEhfV1hDT05TT0xFKQ0KK1VTRV9XWD0JCQkyLjQNCiBDT05G
SUdVUkVfQVJHUys9CS0tZW5hYmxlLXd4LWNvbnNvbGUNCi0gLUxJQl9ERVBFTkRTKz0JCXd4X2d0
azItMi40LjA6JHtQT1JUU0RJUn0veDExLXRvb2xraXRzL3d4Z3RrMjQNCi0gLUNPTkZJR1VSRV9F
TlYrPQkJV1hDT05GSUc9JHtYMTFCQVNFfS9iaW4vd3hndGsyLTIuNC1jb25maWcNCiBQTElTVF9T
VUIrPQkJV1hDT05TPSIiDQogLmVsc2UNCiAjIFdlIGRpZG4ndCBuZWVkIEdUSyAoaXQncyBub3Qg
cG9zc2libGUgdG8gcHV0IFdBTlRfR05PTUUgaW4gYW4gLmlmIHN0YXRlbWVudCEpDQpJbmRleDog
c3lzdXRpbHMvYmFjdWxhLXNlcnZlci1kZXZlbC9NYWtlZmlsZQ0KPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQ0KUkNTIGZp
bGU6IC9ob21lL3BjdnMvcG9ydHMvc3lzdXRpbHMvYmFjdWxhLXNlcnZlci1kZXZlbC9NYWtlZmls
ZSx2DQpyZXRyaWV2aW5nIHJldmlzaW9uIDEuNA0KZGlmZiAtdSAtcjEuNCBNYWtlZmlsZQ0KLSAt
LS0gc3lzdXRpbHMvYmFjdWxhLXNlcnZlci1kZXZlbC9NYWtlZmlsZQk3IEp1biAyMDA2IDE3OjMw
OjI0IC0wMDAwCTEuNA0KKysrIHN5c3V0aWxzL2JhY3VsYS1zZXJ2ZXItZGV2ZWwvTWFrZWZpbGUJ
MTMgSnVuIDIwMDYgMjM6MjI6MTQgLTAwMDANCkBAIC0xMTUsOSArMTE1LDggQEANCiAuZW5kaWYN
CiAjIEJ1aWxkIHd4LWNvbnNvbGUNCiAuaWYgZGVmaW5lZChXSVRIX1dYQ09OU09MRSkNCitVU0Vf
V1g9CQkJMi40DQogQ09ORklHVVJFX0FSR1MrPQktLWVuYWJsZS13eC1jb25zb2xlDQotIC1MSUJf
REVQRU5EUys9CQl3eF9ndGsyLTIuNC4wOiR7UE9SVFNESVJ9L3gxMS10b29sa2l0cy93eGd0azI0
DQotIC1DT05GSUdVUkVfRU5WKz0JCVdYQ09ORklHPSR7WDExQkFTRX0vYmluL3d4Z3RrMi0yLjQt
Y29uZmlnDQogUExJU1RfU1VCKz0JCVdYQ09OUz0iIg0KIC5lbHNlDQogIyBXZSBkaWRuJ3QgbmVl
ZCBHVEsgKGl0J3Mgbm90IHBvc3NpYmxlIHRvIHB1dCBXQU5UX0dOT01FIGluIGFuIC5pZiBzdGF0
ZW1lbnQhKQ0KSW5kZXg6IHRleHRwcm9jL3B5LWRzdi9NYWtlZmlsZQ0KPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQ0KUkNT
IGZpbGU6IC9ob21lL3BjdnMvcG9ydHMvdGV4dHByb2MvcHktZHN2L01ha2VmaWxlLHYNCnJldHJp
ZXZpbmcgcmV2aXNpb24gMS43DQpkaWZmIC11IC1yMS43IE1ha2VmaWxlDQotIC0tLSB0ZXh0cHJv
Yy9weS1kc3YvTWFrZWZpbGUJMjAgSnVsIDIwMDUgMTQ6NDc6NDkgLTAwMDAJMS43DQorKysgdGV4
dHByb2MvcHktZHN2L01ha2VmaWxlCTEzIEp1biAyMDA2IDIzOjIyOjE0IC0wMDAwDQpAQCAtMTcs
NyArMTcsOCBAQA0KIENPTU1FTlQ9CUEgUHl0aG9uIG1vZHVsZSB0byBwYXJzZSBvciB3cml0ZSBk
ZWxpbWV0ZXItc2VwYXJhdGVkIChlLmcuIENTVikgZmlsZXMNCiANCiAuaWYgZGVmaW5lZChXSVRI
X0dVSSkNCi0gLVJVTl9ERVBFTkRTPQkke1BZVEhPTl9TSVRFTElCRElSfS93eFB5dGhvbi9fX2lu
aXRfXy5weToke1BPUlRTRElSfS94MTEtdG9vbGtpdHMvcHktd3hQeXRob24yNA0KK1VTRV9XWD0J
CTIuNA0KK1dYX0NPTVBTPQlweXRob25fcnVuDQogLmVuZGlmDQogDQogVVNFX1BZVEhPTj0JeWVz
DQpJbmRleDogeDExLWZtL2phZmZtL01ha2VmaWxlDQo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09DQpSQ1MgZmlsZTogL2hv
bWUvcGN2cy9wb3J0cy94MTEtZm0vamFmZm0vTWFrZWZpbGUsdg0KcmV0cmlldmluZyByZXZpc2lv
biAxLjINCmRpZmYgLXUgLXIxLjIgTWFrZWZpbGUNCi0gLS0tIHgxMS1mbS9qYWZmbS9NYWtlZmls
ZQkyMSBNYXkgMjAwNiAxOTowMzo0NCAtMDAwMAkxLjINCisrKyB4MTEtZm0vamFmZm0vTWFrZWZp
bGUJMTMgSnVuIDIwMDYgMjM6MjI6MTQgLTAwMDANCkBAIC0xNCw5ICsxNCw4IEBADQogTUFJTlRB
SU5FUj0Jc2hhdW5AaW5lcmQuY29tDQogQ09NTUVOVD0JQSBsaWdodHdlaWdodCBmaWxlIG1hbmFn
ZXIgaW5zcGlyZWQgYnkgTWFjT1MgRmluZGVyDQogDQotIC1XWEdUS19WRVI/PQkyLjYNCi0gLQ0K
IFVTRV9CWklQMj0JeWVzDQorVVNFX1dYPQkJMi40LTIuNg0KIFVTRV9YX1BSRUZJWD0JeWVzDQog
QUxMX1RBUkdFVD0JJHtQT1JUTkFNRX0NCiANCkBAIC0yNCwxOSArMjMsOSBAQA0KIA0KIC5pbmNs
dWRlIDxic2QucG9ydC5wcmUubWs+DQogDQotIC0uaWYgJHtXWEdUS19WRVJ9ID09ICIyLjQiIHx8
IFwNCi0gLSAgICAoZXhpc3RzKCR7WDExQkFTRX0vYmluL3d4Z3RrMi0yLjQtY29uZmlnKSAmJiBc
DQotIC0gICAgIWV4aXN0cygke1gxMUJBU0V9L2Jpbi93eGd0azItMi42LWNvbmZpZykpDQotIC1M
SUJfREVQRU5EUys9CXd4X2d0azJfY29yZS0yLjQuMDoke1BPUlRTRElSfS94MTEtdG9vbGtpdHMv
d3hndGsyNA0KLSAtV1hHVEtfVkVSPQkyLjQNCi0gLS5lbHNlDQotIC1MSUJfREVQRU5EUys9CXd4
X2d0azJfY29yZS0yLjYuMDoke1BPUlRTRElSfS94MTEtdG9vbGtpdHMvd3hndGsyNg0KLSAtV1hH
VEtfVkVSPQkyLjYNCi0gLS5lbmRpZg0KLSAtDQogcG9zdC1wYXRjaDoNCiAJQCR7UkVJTlBMQUNF
X0NNRH0gLWUgJ3MjXlBSRUZJWD0uKiNQUkVGSVg9JHtQUkVGSVh9IycgXA0KLSAtCQktZSAncyMk
JChzaGVsbCB3eC1jb25maWcgXCguKlwpKSNgJHtYMTFCQVNFfS9iaW4vd3hndGsyLSR7V1hHVEtf
VkVSfS1jb25maWcgXDFgIycgXA0KKwkJLWUgJ3MjJCQoc2hlbGwgd3gtY29uZmlnIFwoLipcKSkj
YCR7V1hfQ09ORklHfSBcMWAjJyBcDQogCQktZSAncyNeRkxBR1M9LWdnZGIjRkxBR1M9JHtDRkxB
R1N9IycgXA0KIAkJJHtXUktTUkN9L01ha2VmaWxlDQogDQpJbmRleDogeDExLXRvb2xraXRzL3B5
LVNjaVBhcmFtL01ha2VmaWxlDQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09DQpSQ1MgZmlsZTogL2hvbWUvcGN2cy9wb3J0
cy94MTEtdG9vbGtpdHMvcHktU2NpUGFyYW0vTWFrZWZpbGUsdg0KcmV0cmlldmluZyByZXZpc2lv
biAxLjYNCmRpZmYgLXUgLXIxLjYgTWFrZWZpbGUNCi0gLS0tIHgxMS10b29sa2l0cy9weS1TY2lQ
YXJhbS9NYWtlZmlsZQkxMiBKYW4gMjAwNiAxMjo1NDoyOCAtMDAwMAkxLjYNCisrKyB4MTEtdG9v
bGtpdHMvcHktU2NpUGFyYW0vTWFrZWZpbGUJMTMgSnVuIDIwMDYgMjM6MjI6MTQgLTAwMDANCkBA
IC0xOSwxMSArMTksMTEgQEANCiBNQUlOVEFJTkVSPQlwb3J0c0BGcmVlQlNELm9yZw0KIENPTU1F
TlQ9CVNjaWVudGlmaWMgUGFyYW1ldGVyIERpYWxvZ3MgaW4gd3hQeXRob24gYmFzZWQgdXNlciBp
bnRlcmZhY2VzDQogDQotIC1SVU5fREVQRU5EUz0JJHtQWVRIT05fU0lURUxJQkRJUn0vd3gvX19p
bml0X18ucHk6JHtQT1JUU0RJUn0veDExLXRvb2xraXRzL3B5LXd4UHl0aG9uMjQNCi0gLQ0KIFVT
RV9CWklQMj0JeWVzDQogVVNFX1BZVEhPTj0JeWVzDQogVVNFX1BZRElTVFVUSUxTPQl5ZXMNCitV
U0VfV1g9CQkyLjQNCitXWF9DT01QUz0JcHl0aG9uX3J1bg0KIA0KIC5pZiAhZGVmaW5lZChOT1BP
UlRET0NTKQ0KIERPQ1NESVI9CSR7UFJFRklYfS9zaGFyZS9kb2MvcHktJHtQT1JUTkFNRX0NCklu
ZGV4OiB4MTEtdG9vbGtpdHMvcHktd3hQeXRob24yNC9NYWtlZmlsZQ0KPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQ0KUkNT
IGZpbGU6IC9ob21lL3BjdnMvcG9ydHMveDExLXRvb2xraXRzL3B5LXd4UHl0aG9uMjQvTWFrZWZp
bGUsdg0KcmV0cmlldmluZyByZXZpc2lvbiAxLjUzDQpkaWZmIC11IC1yMS41MyBNYWtlZmlsZQ0K
LSAtLS0geDExLXRvb2xraXRzL3B5LXd4UHl0aG9uMjQvTWFrZWZpbGUJMjAgSmFuIDIwMDYgMDA6
MTg6MzYgLTAwMDAJMS41Mw0KKysrIHgxMS10b29sa2l0cy9weS13eFB5dGhvbjI0L01ha2VmaWxl
CTEzIEp1biAyMDA2IDIzOjIyOjE0IC0wMDAwDQpAQCAtMjYsNiArMjYsNyBAQA0KIFVTRV9QWVRI
T049CXllcw0KIFVTRV9QWURJU1RVVElMUz15ZXMNCiBQWURJU1RVVElMU19CVUlMREFSR1M9CVdY
X0NPTkZJRz0iJHtXWF9DT05GSUd9Ig0KK1VTRV9XWD0JCTIuNA0KIERFTU9fRElSPQkke1BZVEhP
TlBSRUZJWF9TSVRFTElCRElSfS93eFB5dGhvbi9kZW1vDQogDQogcG9zdC1idWlsZDoNCkBAIC01
Miw5ICs1Myw2IEBADQogQlJPS0VOPQkJIkRvZXMgbm90IGJ1aWxkIG9uIGlhNjQiDQogLmVuZGlm
DQogDQotIC1MSUJfREVQRU5EUz0Jd3hfZ3RrMi0yLjQuMDoke1BPUlRTRElSfS94MTEtdG9vbGtp
dHMvd3hndGsyNA0KLSAtV1hfQ09ORklHPQkke1gxMUJBU0V9L2Jpbi93eGd0azItMi40LWNvbmZp
Zw0KLSAtDQogQ09ORklHVVJFX0FSR1MrPQktLWVuYWJsZS1ndGsyDQogUFlESVNUVVRJTFNfQlVJ
TERBUkdTKz0JV1hQT1JUPWd0azINCiBQWURJU1RVVElMU19JTlNUQUxMQVJHUzo9CSR7UFlESVNU
VVRJTFNfSU5TVEFMTEFSR1N9ICR7UFlESVNUVVRJTFNfQlVJTERBUkdTfQ0KSW5kZXg6IHgxMS10
b29sa2l0cy9weS13eFB5dGhvbjI2L01ha2VmaWxlDQo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09DQpSQ1MgZmlsZTogL2hv
bWUvcGN2cy9wb3J0cy94MTEtdG9vbGtpdHMvcHktd3hQeXRob24yNi9NYWtlZmlsZSx2DQpyZXRy
aWV2aW5nIHJldmlzaW9uIDEuNjANCmRpZmYgLXUgLXIxLjYwIE1ha2VmaWxlDQotIC0tLSB4MTEt
dG9vbGtpdHMvcHktd3hQeXRob24yNi9NYWtlZmlsZQkxMyBNYXkgMjAwNiAyMTozODo0NSAtMDAw
MAkxLjYwDQorKysgeDExLXRvb2xraXRzL3B5LXd4UHl0aG9uMjYvTWFrZWZpbGUJMTMgSnVuIDIw
MDYgMjM6MjI6MTQgLTAwMDANCkBAIC0yOCw2ICsyOCw4IEBADQogCQkJV1hfQ09ORklHPSIke1dY
X0NPTkZJR30iIFwNCiAJCQlXWFBPUlQ9IiR7V1hQT1JUfSINCiBQWURJU1RVVElMU19DT05GSUdV
UkVBUkdTPQkke1BZRElTVFVUSUxTX0JVSUxEQVJHU30NCitVU0VfV1g9CQkyLjYNCitXWF9DT01Q
Uz0JY29udHJpYg0KIERFTU9fRElSPQkke1BZVEhPTlBSRUZJWF9TSVRFTElCRElSfS93eFB5dGhv
bi9kZW1vDQogV1hQT1JUPQkJZ3RrMg0KIA0KQEAgLTYzLDI3ICs2NSwxNSBAQA0KIC5pbmNsdWRl
IDxic2QucG9ydC5wcmUubWs+DQogDQogIyBhcmUgd2UgcmVhZHkgZm9yIHVuaWNvZGU/DQotIC0u
aWYgZGVmaW5lZChXSVRIX1VOSUNPREUpDQorLmlmIGRlZmluZWQoV0lUSF9XWFBZVEhPTl9VTklD
T0RFKQ0KIC4gaWYgJHtPU1ZFUlNJT059IDwgNTAwMDAwDQogSUdOT1JFPQlzeXN0ZW1zIHByaW9y
IHRvIEZyZWVCU0QgNS4wIGRvIG5vdCBzdXBwb3J0IFVuaWNvZGUNCiAuIGVuZGlmDQogLmVuZGlm
DQogDQotIC0jIGJ1aWxkIGRlcGVuZGVuY2llcw0KLSAtLmlmIGRlZmluZWQoV0lUSF9VTklDT0RF
KQ0KLSAtQlVJTERfREVQRU5EUys9CSR7V1hfQ09ORklHfToke1BPUlRTRElSfS94MTEtdG9vbGtp
dHMvd3hndGsyNi11bmljb2RlDQotIC0NCi0gLVdYX0NPTkZJRz0JJHtYMTFCQVNFfS9iaW4vd3hn
dGsydS0yLjYtY29uZmlnDQotIC0uZWxzZQ0KLSAtQlVJTERfREVQRU5EUys9CSR7V1hfQ09ORklH
fToke1BPUlRTRElSfS94MTEtdG9vbGtpdHMvd3hndGsyNg0KLSAtDQotIC1XWF9DT05GSUc9CSR7
WDExQkFTRX0vYmluL3d4Z3RrMi0yLjYtY29uZmlnDQotIC0uZW5kaWYNCi0gLQ0KICMgd3ggdmVy
c2lvbg0KIC5pZiBleGlzdHMoJHtXWF9DT05GSUd9KQ0KIFdYX1ZFUlNJT04hPQkke1dYX0NPTkZJ
R30gLS1yZWxlYXNlDQotIC0NCiBQTElTVF9TVUIrPQlXWF9WRVJTSU9OPSR7V1hfVkVSU0lPTn0N
CiAuZW5kaWYNCiANCkBAIC0xMDMsOSArOTMsOCBAQA0KIAkJCUlOU1RBTExfTVVMVElWRVJTSU9O
PTANCiBJTlNUQUxMU19TSExJQj0JeWVzDQogDQotIC0uIGlmIGRlZmluZWQoV0lUSF9VTklDT0RF
KQ0KLSAtTElCX0RFUEVORFMrPQl3eF9ndGsydV9jb3JlLTIuNi4wOiR7UE9SVFNESVJ9L3gxMS10
b29sa2l0cy93eGd0azI2LXVuaWNvZGUgXA0KLSAtCQl3eF9ndGsydV9naXptb3MtMi42LjA6JHtQ
T1JUU0RJUn0veDExLXRvb2xraXRzL3d4Z3RrMjYtdW5pY29kZS1jb250cmliDQorLiBpZiBkZWZp
bmVkKFdJVEhfV1hQWVRIT05fVU5JQ09ERSkNCitXWF9VTklDT0RFPQl5ZXMNCiANCiBQS0dOQU1F
U1VGRklYPQktdW5pY29kZQ0KIA0KQEAgLTExMywxMSArMTAyLDggQEANCiAJCQlVTklDT0RFPTEN
CiBXWF9QWVRIT05fRElSPQl3eC0ke1dYX1ZFUlNJT059LSR7V1hQT1JUfS11bmljb2RlDQogLiBl
bHNlDQotIC1MSUJfREVQRU5EUys9CXd4X2d0azJfY29yZS0yLjYuMDoke1BPUlRTRElSfS94MTEt
dG9vbGtpdHMvd3hndGsyNiBcDQotIC0JCXd4X2d0azJfZ2l6bW9zLTIuNi4wOiR7UE9SVFNESVJ9
L3gxMS10b29sa2l0cy93eGd0azI2LWNvbnRyaWINCi0gLQ0KIFdYX1BZVEhPTl9ESVI9d3gtJHtX
WF9WRVJTSU9OfS0ke1dYUE9SVH0tYW5zaQ0KLSAtLiBlbmRpZiAjIGRlZmluZWQoV0lUSF9VTklD
T0RFKQ0KKy4gZW5kaWYgIyBkZWZpbmVkKFdJVEhfV1hQWVRIT05fVU5JQ09ERSkNCiANCiAjIHBs
aXN0IHN1YnN0aXR1dGlvbnMgYW5kIGxpYnJhcnkgZGlycw0KIFBMSVNUX1NVQis9CVdYX1BZVEhP
Tl9ESVI9JHtXWF9QWVRIT05fRElSfQ0KSW5kZXg6IHgxMS10b29sa2l0cy9weS13eFB5dGhvbjI2
LWNvbW1vbi9NYWtlZmlsZQ0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQ0KUkNTIGZpbGU6IC9ob21lL3BjdnMvcG9ydHMv
eDExLXRvb2xraXRzL3B5LXd4UHl0aG9uMjYtY29tbW9uL01ha2VmaWxlLHYNCnJldHJpZXZpbmcg
cmV2aXNpb24gMS40DQpkaWZmIC11IC1yMS40IE1ha2VmaWxlDQotIC0tLSB4MTEtdG9vbGtpdHMv
cHktd3hQeXRob24yNi1jb21tb24vTWFrZWZpbGUJMjAgQXByIDIwMDYgMTc6MDQ6MDQgLTAwMDAJ
MS40DQorKysgeDExLXRvb2xraXRzL3B5LXd4UHl0aG9uMjYtY29tbW9uL01ha2VmaWxlCTEzIEp1
biAyMDA2IDIzOjIyOjE0IC0wMDAwDQpAQCAtMTMsNiArMTMsNCBAQA0KIA0KIFBMSVNUPQkkey5D
VVJESVJ9L3BrZy1wbGlzdA0KIA0KLSAtTElCX0RFUEVORFMrPSAgd3hfZ3RrMl9zdGMtMi42LjA6
JHtQT1JUU0RJUn0veDExLXRvb2xraXRzL3d4Z3RrMjYtY29udHJpYg0KLSAtDQogLmluY2x1ZGUg
IiR7TUFTVEVSRElSfS9NYWtlZmlsZSINCkluZGV4OiB4MTEtdG9vbGtpdHMvcHktd3hQeXRob24y
Ni11bmljb2RlL01ha2VmaWxlDQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09DQpSQ1MgZmlsZTogL2hvbWUvcGN2cy9wb3J0
cy94MTEtdG9vbGtpdHMvcHktd3hQeXRob24yNi11bmljb2RlL01ha2VmaWxlLHYNCnJldHJpZXZp
bmcgcmV2aXNpb24gMS4xDQpkaWZmIC11IC1yMS4xIE1ha2VmaWxlDQotIC0tLSB4MTEtdG9vbGtp
dHMvcHktd3hQeXRob24yNi11bmljb2RlL01ha2VmaWxlCTIgT2N0IDIwMDUgMDg6MjE6NDIgLTAw
MDAJMS4xDQorKysgeDExLXRvb2xraXRzL3B5LXd4UHl0aG9uMjYtdW5pY29kZS9NYWtlZmlsZQkx
MyBKdW4gMjAwNiAyMzoyMjoxNCAtMDAwMA0KQEAgLTUsNyArNSw3IEBADQogIyAkRnJlZUJTRDog
cG9ydHMveDExLXRvb2xraXRzL3B5LXd4UHl0aG9uMjYtdW5pY29kZS9NYWtlZmlsZSx2IDEuMSAy
MDA1LzEwLzAyIDA4OjIxOjQyIGxpb3V4IEV4cCAkDQogIw0KIA0KLSAtV0lUSF9VTklDT0RFPQl5
ZXMNCitXSVRIX1dYUFlUSE9OX1VOSUNPREU9CXllcw0KIA0KIE1BU1RFUkRJUj0JJHsuQ1VSRElS
fS8uLi9weS13eFB5dGhvbjI2DQogDQpJbmRleDogeDExLXRvb2xraXRzL3J1Ynktd3gvTWFrZWZp
bGUNCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0NClJDUyBmaWxlOiAvaG9tZS9wY3ZzL3BvcnRzL3gxMS10b29sa2l0cy9y
dWJ5LXd4L01ha2VmaWxlLHYNCnJldHJpZXZpbmcgcmV2aXNpb24gMS4xMQ0KZGlmZiAtdSAtcjEu
MTEgTWFrZWZpbGUNCi0gLS0tIHgxMS10b29sa2l0cy9ydWJ5LXd4L01ha2VmaWxlCTI5IE1heSAy
MDA2IDIwOjQ1OjQ4IC0wMDAwCTEuMTENCisrKyB4MTEtdG9vbGtpdHMvcnVieS13eC9NYWtlZmls
ZQkxMyBKdW4gMjAwNiAyMzoyMjoxNCAtMDAwMA0KQEAgLTE3LDEyICsxNywxMSBAQA0KIE1BSU5U
QUlORVI9CXBvcnRzQEZyZWVCU0Qub3JnDQogQ09NTUVOVD0JUnVieSBiaW5kaW5ncyBmb3Igd3hX
aW5kb3dzIChha2Egd3hXaWRnZXRzKQ0KIA0KLSAtTElCX0RFUEVORFM9CXd4X2d0azItMi40OiR7
UE9SVFNESVJ9L3gxMS10b29sa2l0cy93eGd0azI0IFwNCi0gLQkJd3hfZ3RrMl94cmMtMi40OiR7
UE9SVFNESVJ9L3gxMS10b29sa2l0cy93eGd0azI0LWNvbnRyaWINCi0gLQ0KIFVTRV9JQ09OVj0J
eWVzDQogVVNFX1JVQlk9CXllcw0KIFVTRV9SVUJZX0VYVENPTkY9CXllcw0KK1VTRV9XWD0JCTIu
NA0KK1dYX0NPTVBTPQljb250cmliDQogDQogLmluY2x1ZGUgPGJzZC5wb3J0LnByZS5taz4NCiAN
CkBAIC0zNiw3ICszNSw3IEBADQogcG9zdC1wYXRjaDoNCiAJQCR7RklORH0gJHtXUktTUkN9IC1u
YW1lICoudCB8ICR7WEFSR1N9ICR7UkVJTlBMQUNFX0NNRH0gLWUgJ3N8fHwnDQogCUAke1JFSU5Q
TEFDRV9DTUR9IC1FICdzLyBodG1sKHByb2Nlc3Nvcnx3aW5kb3cpLm8vLycgJHtXUktTUkN9L2Rl
cGVuZA0KLSAtCUAke1JFSU5QTEFDRV9DTUR9IC1lICdzL3d4LWNvbmZpZy93eGd0azItMi40LWNv
bmZpZy8nICR7V1JLU1JDfS9leHRjb25mLnJiDQorCUAke1JFSU5QTEFDRV9DTUR9IC1lICdzfHd4
LWNvbmZpZ3wke1dYX0NPTkZJRzpUfXwnICR7V1JLU1JDfS9leHRjb25mLnJiDQogDQogLmlmICFk
ZWZpbmVkKE5PUE9SVERPQ1MpDQogcG9zdC1pbnN0YWxsOg0KSW5kZXg6IHgxMS10b29sa2l0cy93
eGd0azI0LWNvbnRyaWIvTWFrZWZpbGUNCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0NClJDUyBmaWxlOiAvaG9tZS9wY3Zz
L3BvcnRzL3gxMS10b29sa2l0cy93eGd0azI0LWNvbnRyaWIvTWFrZWZpbGUsdg0KcmV0cmlldmlu
ZyByZXZpc2lvbiAxLjgNCmRpZmYgLXUgLXIxLjggTWFrZWZpbGUNCi0gLS0tIHgxMS10b29sa2l0
cy93eGd0azI0LWNvbnRyaWIvTWFrZWZpbGUJNSBOb3YgMjAwNSAwNToxOTowOCAtMDAwMAkxLjgN
CisrKyB4MTEtdG9vbGtpdHMvd3hndGsyNC1jb250cmliL01ha2VmaWxlCTEzIEp1biAyMDA2IDIz
OjIyOjE0IC0wMDAwDQpAQCAtMTAsOSArMTAsOSBAQA0KIE1BSU5UQUlORVI9CWZqb2VARnJlZUJT
RC5vcmcNCiBDT01NRU5UPQlUaGUgd3hXaWRnZXRzIEdVSSB0b29sa2l0IGNvbnRyaWJ1dGVkIGxp
YnJhcmllcw0KIA0KK1VTRV9XWD0JCTIuNA0KIFdYR1RLX0ZMQVZPUj0JZ3RrMi1jb250cmliDQog
TUFTVEVSRElSPQkkey5DVVJESVJ9Ly4uL3d4Z3RrMjQNCi0gLUxJQl9ERVBFTkRTPQl3eF9ndGsy
LTIuNC4wOiR7UE9SVFNESVJ9L3gxMS10b29sa2l0cy93eGd0azI0DQogDQogQlVJTERfV1JLU1JD
PQkke1dSS1NSQ30vY29udHJpYi9zcmMNCiBJTlNUQUxMX1dSS1NSQz0JJHtCVUlMRF9XUktTUkN9
DQpJbmRleDogeDExLXRvb2xraXRzL3d4Z3RrMjYvTWFrZWZpbGUNCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0NClJDUyBm
aWxlOiAvaG9tZS9wY3ZzL3BvcnRzL3gxMS10b29sa2l0cy93eGd0azI2L01ha2VmaWxlLHYNCnJl
dHJpZXZpbmcgcmV2aXNpb24gMS4yNg0KZGlmZiAtdSAtcjEuMjYgTWFrZWZpbGUNCi0gLS0tIHgx
MS10b29sa2l0cy93eGd0azI2L01ha2VmaWxlCTI5IEFwciAyMDA2IDIzOjAzOjAzIC0wMDAwCTEu
MjYNCisrKyB4MTEtdG9vbGtpdHMvd3hndGsyNi9NYWtlZmlsZQkxMyBKdW4gMjAwNiAyMzoyMjox
NCAtMDAwMA0KQEAgLTY2LDYgKzY2LDcgQEANCiAuZW5kaWYgIyAqLWNvbW1vbg0KIA0KIC5pZiAk
e1dYR1RLX0ZMQVZPUjpNKi1jb250cmliKn0gIT0gIiINCitVU0VfV1g9CQkyLjYNCiBCVUlMRF9X
UktTUkM9CSR7V1JLU1JDfS9jb250cmliDQogSU5TVEFMTF9XUktTUkM9CSR7QlVJTERfV1JLU1JD
fQ0KIA0KQEAgLTczLDM3ICs3NCwyNSBAQA0KIFJVTl9ERVBFTkRTPQkke1gxMUJBU0V9L2luY2x1
ZGUvd3gtMi42L3d4L3N0Yy9zdGMuaDoke1BPUlRTRElSfS94MTEtdG9vbGtpdHMvd3hndGsyNi1j
b250cmliLWNvbW1vbg0KIA0KIC5pZiAke1dYR1RLX0ZMQVZPUjpNKi11bmljb2RlKn0gIT0gIiIN
Ci0gLUxJQl9ERVBFTkRTKz0Jd3hfYmFzZXUtMi42LjA6JHtQT1JUU0RJUn0veDExLXRvb2xraXRz
L3d4Z3RrMjYtdW5pY29kZQ0KLSAtLmVsc2UNCi0gLUxJQl9ERVBFTkRTKz0Jd3hfYmFzZS0yLjYu
MDoke1BPUlRTRElSfS94MTEtdG9vbGtpdHMvd3hndGsyNg0KK1dYX1VOSUNPREU9CXllcw0KIC5l
bmRpZg0KIA0KIHByZS1jb25maWd1cmU6DQogCUAke0ZJTkR9ICR7QlVJTERfV1JLU1JDfSAtbmFt
ZSBNYWtlZmlsZS5pbiAtcHJpbnQwIHwgJHtYQVJHU30gLTAgJHtSRUlOUExBQ0VfQ01EfSBcDQot
IC0JCS1lICJzfEBDWFhGTEFHU0B8JHtDRkxBR1N9IGAke1dYR1RLX0NPTkZJR30gLS1jeHhmbGFn
c2B8IiBcDQotIC0JCS1lICJzfEBDRkxBR1NAfCR7Q0ZMQUdTfSBgJHtXWEdUS19DT05GSUd9IC0t
Y2ZsYWdzYHwiIFwNCisJCS1lICJzfEBDWFhGTEFHU0B8JHtDRkxBR1N9IGAke1dYX0NPTkZJR30g
LS1jeHhmbGFnc2B8IiBcDQorCQktZSAic3xAQ0ZMQUdTQHwke0NGTEFHU30gYCR7V1hfQ09ORklH
fSAtLWNmbGFnc2B8IiBcDQogCQktZSAic3xAQ1BQRkxBR1NAfHwiDQogDQogLmVuZGlmICMgIWd0
azItY29udHJpYi1jb21tb24NCiAuZW5kaWYgIyAqLWNvbnRyaWIqDQogDQotIC1wb3N0LXBhdGNo
Og0KLSAtCUAke1JFSU5QTEFDRV9DTUR9IC1lICdzfHBrZ19jb25maWdfYXJncyAtLWNmbGFnc3xw
a2dfY29uZmlnX2FyZ3MgcGFuZ294IC0tY2ZsYWdzfGcgOyBcDQotIC0JCXN8cGtnX2NvbmZpZ19h
cmdzIC0tbGlic3xwa2dfY29uZmlnX2FyZ3MgcGFuZ294IC0tbGlic3xnJyBcDQotIC0JCQkke1dS
S1NSQ30vY29uZmlndXJlDQotIC0NCi0gLS5pbmNsdWRlIDxic2QucG9ydC5wcmUubWs+DQotIC0N
CiAuaWYgJHtXWEdUS19GTEFWT1I6TSotdW5pY29kZSp9ICE9ICIiDQotIC0uaWYgJHtPU1ZFUlNJ
T059IDwgNTAwMDAwDQotIC1JR05PUkU9CXN5c3RlbXMgcHJpb3IgdG8gRnJlZUJTRCA1LjAgY3Vy
cmVudGx5IG91dCBvZiBzdXBwb3J0DQotIC0uZWxzZQ0KIENPTkZJR1VSRV9BUkdTKz0tLWVuYWJs
ZS11bmljb2RlDQogLmVuZGlmDQogDQotIC1XWEdUS19DT05GSUc9CSR7WDExQkFTRX0vYmluL3d4
Z3RrMnUtMi42LWNvbmZpZw0KLSAtLmVsc2UNCi0gLVdYR1RLX0NPTkZJRz0JJHtYMTFCQVNFfS9i
aW4vd3hndGsyLTIuNi1jb25maWcNCi0gLS5lbmRpZiAjICotdW5pY29kZSoNCitwb3N0LXBhdGNo
Og0KKwlAJHtSRUlOUExBQ0VfQ01EfSAtZSAnc3xwa2dfY29uZmlnX2FyZ3MgLS1jZmxhZ3N8cGtn
X2NvbmZpZ19hcmdzIHBhbmdveCAtLWNmbGFnc3xnIDsgXA0KKwkJc3xwa2dfY29uZmlnX2FyZ3Mg
LS1saWJzfHBrZ19jb25maWdfYXJncyBwYW5nb3ggLS1saWJzfGcnIFwNCisJCQkke1dSS1NSQ30v
Y29uZmlndXJlDQogDQotIC0uaW5jbHVkZSA8YnNkLnBvcnQucG9zdC5taz4NCisuaW5jbHVkZSA8
YnNkLnBvcnQubWs+DQpJbmRleDogeDExLXRvb2xraXRzL3d4bW96aWxsYS9NYWtlZmlsZQ0KPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQ0KUkNTIGZpbGU6IC9ob21lL3BjdnMvcG9ydHMveDExLXRvb2xraXRzL3d4bW96aWxs
YS9NYWtlZmlsZSx2DQpyZXRyaWV2aW5nIHJldmlzaW9uIDEuMjENCmRpZmYgLXUgLXIxLjIxIE1h
a2VmaWxlDQotIC0tLSB4MTEtdG9vbGtpdHMvd3htb3ppbGxhL01ha2VmaWxlCTEzIE1heSAyMDA2
IDA1OjAwOjQwIC0wMDAwCTEuMjENCisrKyB4MTEtdG9vbGtpdHMvd3htb3ppbGxhL01ha2VmaWxl
CTEzIEp1biAyMDA2IDIzOjIyOjE0IC0wMDAwDQpAQCAtMTYsMTYgKzE2LDE0IEBADQogTUFJTlRB
SU5FUj0JcG9ydHNARnJlZUJTRC5vcmcNCiBDT01NRU5UPQlFbWJlZGRpbmcgTW96aWxsYSBpbiB3
eFdpZGdldHMNCiANCi0gLUJVSUxEX0RFUEVORFM9CSR7UFlUSE9OX1NJVEVMSUJESVJ9L3d4UHl0
aG9uL19faW5pdF9fLnB5OiR7UE9SVFNESVJ9L3gxMS10b29sa2l0cy9weS13eFB5dGhvbjI0DQot
IC1MSUJfREVQRU5EUz0Jd3hfZ3RrMi0yLjQuMDoke1BPUlRTRElSfS94MTEtdG9vbGtpdHMvd3hn
dGsyNA0KLSAtUlVOX0RFUEVORFM9CSR7QlVJTERfREVQRU5EU30NCi0gLQ0KIFVTRV9QWVRIT049
CXllcw0KIFVTRV9HTk9NRT0JZ25vbWVoYWNrIGdub21ldGFyZ2V0DQogVVNFX0dFQ0tPPQltb3pp
bGxhDQotIC1XWEdUS19DT05GSUc/PQkke1gxMUJBU0V9L2Jpbi93eGd0azItMi40LWNvbmZpZw0K
IFVTRV9BVVRPVE9PTFM9CWxpYnRvb2w6MTUNCi0gLUNPTkZJR1VSRV9BUkdTPQktLXdpdGgtd3gt
Y29uZmlnPSR7V1hHVEtfQ09ORklHfSAtLWVuYWJsZS1weXRob24NCitDT05GSUdVUkVfQVJHUz0J
LS1lbmFibGUtcHl0aG9uDQorVVNFX1dYPQkJMi40DQorV1hfQ09NUFM9CXB5dGhvbg0KK1dYX0NP
TkZfQVJHUz0JYWJzb2x1dGUNCiBJTlNUQUxMU19TSExJQj0JeWVzDQogDQogLmluY2x1ZGUgPGJz
ZC5wb3J0LnByZS5taz4NCi0gLS0tLS0tLS0tLSBFTkQgLS0tLS0tLS0tLQ0KDQpCZXN0IFJlZ2Fy
ZHMsDQpBbGUNCi0tLS0tQkVHSU4gUEdQIFNJR05BVFVSRS0tLS0tDQpWZXJzaW9uOiBHbnVQRyB2
MS40LjMgKEZyZWVCU0QpDQoNCmlEOERCUUZFajExeGlWMDVFcFJjUDJFUkFwN2VBS0NlVEthbnRy
Vi84V0FtaG10WUVZRmlVUFFtQ2dDZ2tkMXUNClkrRFlYN3E5ZWhta0lVcVNweTlxTC9JPQ0KPS9o
WFUNCi0tLS0tRU5EIFBHUCBTSUdOQVRVUkUtLS0tLQ0K
Comment 11 Alejandro Pulver freebsd_committer 2006-06-15 21:47:23 UTC
LS0tLS1CRUdJTiBQR1AgU0lHTkVEIE1FU1NBR0UtLS0tLQ0KSGFzaDogU0hBMQ0KDQpUaGlzIGRp
ZmYgcmVwbGFjZXMgdGhlIHBhdGNoZXMgZm9yIGJzZC53eC5tayBhbmQgYnNkLnBvcnQubWsuIEl0
IGZpeGVzDQpXQU5UX1dYIChjb21wb25lbnQgZGV0ZWN0aW9uKS4NCg0KLSAtLS0tLS0tLS0tIEJF
R0lOIC0tLS0tLS0tLS0NCkluZGV4OiBNay9ic2QucG9ydC5taw0KPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQ0KUkNTIGZp
bGU6IC9ob21lL3BjdnMvcG9ydHMvTWsvYnNkLnBvcnQubWssdg0KcmV0cmlldmluZyByZXZpc2lv
biAxLjUzMw0KZGlmZiAtdSAtcjEuNTMzIGJzZC5wb3J0Lm1rDQotIC0tLSBNay9ic2QucG9ydC5t
awkyMyBNYXkgMjAwNiAyMTo1MzoxOCAtMDAwMAkxLjUzMw0KKysrIE1rL2JzZC5wb3J0Lm1rCTE1
IEp1biAyMDA2IDIwOjQ2OjI0IC0wMDAwDQpAQCAtMTM5Myw2ICsxMzkzLDEwIEBADQogLmluY2x1
ZGUgIiR7UE9SVFNESVJ9L01rL2JzZC5nbm9tZS5tayINCiAuZW5kaWYNCiANCisuaWYgZGVmaW5l
ZChXQU5UX1dYKSB8fCBkZWZpbmVkKFVTRV9XWCkgfHwgZGVmaW5lZChVU0VfV1hfTk9UKQ0KKy5p
bmNsdWRlICIke1BPUlRTRElSfS9Nay9ic2Qud3gubWsiDQorLmVuZGlmDQorDQogLmlmIGRlZmlu
ZWQoV0FOVF9HU1RSRUFNRVIpIHx8IGRlZmluZWQoVVNFX0dTVFJFQU1FUikgfHwgZGVmaW5lZChV
U0VfR1NUUkVBTUVSODApDQogLmluY2x1ZGUgIiR7UE9SVFNESVJ9L01rL2JzZC5nc3RyZWFtZXIu
bWsiDQogLmVuZGlmDQpAQCAtMTg0MSw2ICsxODQ1LDExIEBADQogLmluY2x1ZGUgIiR7UE9SVFNE
SVJ9L01rL2JzZC5nbm9tZS5tayINCiAuZW5kaWYNCiANCisuaWYgZGVmaW5lZChVU0VfV1gpIHx8
IGRlZmluZWQoVVNFX1dYX05PVCkNCisuaW5jbHVkZSAiJHtQT1JUU0RJUn0vTWsvYnNkLnd4Lm1r
Ig0KKy5lbmRpZg0KKw0KKw0KIC5pZiBleGlzdHMoJHtQT1JUU0RJUn0vLi4vTWFrZWZpbGUuaW5j
KQ0KIC5pbmNsdWRlICIke1BPUlRTRElSfS8uLi9NYWtlZmlsZS5pbmMiDQogVVNFX1NVQk1BS0U9
CXllcw0KSW5kZXg6IE1rL2JzZC53eC5taw0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQ0KUkNTIGZpbGU6IE1rL2JzZC53
eC5taw0KZGlmZiAtTiBNay9ic2Qud3gubWsNCi0gLS0tIC9kZXYvbnVsbAkxIEphbiAxOTcwIDAw
OjAwOjAwIC0wMDAwDQorKysgTWsvYnNkLnd4Lm1rCTE1IEp1biAyMDA2IDIwOjQ2OjI0IC0wMDAw
DQpAQCAtMCwwICsxLDUzNCBAQA0KKyMtKi0gbW9kZTogbWFrZWZpbGU7IHRhYi13aWR0aDogNDsg
LSotDQorIyBleDp0cz00DQorIw0KKyMgJEZyZWVCU0QkDQorIw0KKyMgYnNkLnd4Lm1rIC0gU3Vw
cG9ydCBmb3IgV3hXaWRnZXRzIGJhc2VkIHBvcnRzLg0KKyMNCisjIENyZWF0ZWQgYnk6IEFsZWph
bmRybyBQdWx2ZXIgPGFsZXB1bHZlckBGcmVlQlNELm9yZz4NCisjDQorIyBQbGVhc2UgdmlldyBt
ZSB3aXRoIDQgY29sdW1uIHRhYnMhDQorIw0KKyMgVGhlIGZvbGxvd2luZyB2YXJpYWJsZXMgY2Fu
IGJlIGRlZmluZWQgaW4gYSBwb3J0IHRoYXQgdXNlcyB0aGUgV3hXaWRnZXRzDQorIyBsaWJyYXJ5
LCBjb250cmlidXRlZCBsaWJyYXJpZXMsIFd4UHl0aG9uIGFuZC9vciBtb3JlIFd4V2lkZ2V0cyBy
ZWxhdGVkDQorIyBjb21wb25lbnRzICh3aXRoIHJ1biBhbmQvb3IgYnVpbGQgZGVwZW5kZW5jaWVz
KS4gSXQgY2FuIGJlIHVzZWQgYWZ0ZXIgYW5kL29yDQorIyBiZWZvcmUgYnNkLnBvcnQucHJlLm1r
LCBidXQgUHl0aG9uIGNvbXBvbmVudHMgd2lsbCBvbmx5IHdvcmsgaWYgUHl0aG9uDQorIyB2YXJp
YWJsZXMgKGUuZy4gVVNFX1BZVEhPTikgYXJlIGRlZmluZWQgYmVmb3JlIGl0ICh0aGlzIGlzIGEg
YnNkLnB5dGhvbi5taw0KKyMgbGltaXRhdGlvbikuDQorIyBVU0VfV1gJCS0gU2V0IHRvIHRoZSBs
aXN0IG9mIFd4V2lkZ2V0cyB2ZXJzaW9ucyB0aGF0IGNhbiBiZSB1c2VkIGJ5DQorIwkJCQkgIHRo
ZSBwb3J0LiBUaGUgc3ludGF4IGFsbG93cyB0aGUgZm9sbG93aW5nIGVsZW1lbnRzOg0KKyMJCQkJ
ICAtIFNpbmdsZSB2ZXJzaW9uIChlLmcuICIyLjQiKS4NCisjCQkJCSAgLSBSYW5nZSBvZiB2ZXJz
aW9ucyAoZS5nLiAiMi40LTIuNiIpLiBNdXN0IGJlIGFzY2VuZGluZy4NCisjCQkJCSAgLSBQYXJ0
aWFsIHJhbmdlOiBzaW5nbGUgdmVyc2lvbiBhbmQgdXBwZXIgKGUuZy4gIjIuNCsiKS4NCisjCQkJ
CSAgLSBQYXJ0aWFsIHJhbmdlOiBzaW5nbGUgdmVyc2lvbiBhbmQgbG93ZXIgKGUuZy4gIi0yLjYi
KS4NCisjCQkJCSAgTXVsdGlwbGUgZWxlbWVudHMgY2FuIGJlIHNwZWNpZmllZCBzZXBhcmF0ZWQg
Ynkgc3BhY2VzLg0KKyMgVVNFX1dYX05PVAktIFNldCB0byB0aGUgbGlzdCBvZiBXeFdpZGdldHMg
dmVyc2lvbnMgdGhhdCBjYW4ndCBiZSB1c2VkIGJ5DQorIwkJCQkgIHRoZSBwb3J0LiBJbiBvdGhl
ciB3b3JkcywgaXQgcmVtb3ZlcyBzb21lIHZlcnNpb25zIGZyb20NCisjCQkJCSAgVVNFX1dYLiBJ
ZiB0aGUgbGF0dGVyIGlzIG5vdCBkZWZpbmVkLCBpdCB3aWxsIGhhdmUgdGhlIHZhbHVlDQorIwkJ
CQkgIG9mIGFsbCB0aGUgcG9zc2libGUgdmVyc2lvbnMuIFRoZSBzeW50YXggaXMgbGlrZSBVU0Vf
V1guDQorIyBXWF9DT01QUwkJLSBTZXQgdG8gdGhlIGxpc3Qgb2YgV3hXaWRnZXRzIGNvbXBvbmVu
dHMgdGhlIHBvcnQgdXNlcy4NCisjCQkJCSAgU2V2ZXJhbCBjb21wb25lbnRzIGNhbiBiZSBzcGVj
aWZpZWQgc2VwYXJhdGVkIGJ5IHNwYWNlcy4gQnkNCisjCQkJCSAgZGVmYXVsdCBpdCB3aWxsIGhh
dmUgdGhlIHZhbHVlIG9mICJ3eCIuIFN1ZmZpeGVzIGluIHRoZSBmb3JtDQorIwkJCQkgICJfeHh4
IiBtYXkgYmUgYWRkZWQgdG8gdGhlIGNvbXBvbmVudHMgdG8gZGV0ZXJtaW5lIHRoZQ0KKyMJCQkJ
ICBkZXBlbmRlbmN5IHR5cGUuDQorIwkJCQkgIFRoZSBhdmFpbGFibGUgY29tcG9uZW50cyBhcmU6
DQorIwkJCQkgIHd4CQkJLSBUaGUgV3hXaWRnZXRzIGxpYnJhcnkuDQorIwkJCQkgIGNvbnRyaWIJ
CS0gVGhlIFd4V2lkZ2V0cyBjb250cmlidXRlZCBsaWJyYXJpZXMuDQorIwkJCQkgIHB5dGhvbgkJ
LSBUaGUgV3hXaWRnZXRzIEFQSSBmb3IgUHl0aG9uIChXeFB5dGhvbikuDQorIwkJCQkgIG1vemls
bGEJCS0gV3hNb3ppbGxhIChvbmx5IGZvciAyLjQpLg0KKyMJCQkJICBzdmcJCQktIFd4U1ZHIChv
bmx5IGZvciAyLjYpLg0KKyMJCQkJICBUaGUgYXZhaWxhYmxlIGRlcGVuZGVuY3kgdHlwZXMgYXJl
Og0KKyMJCQkJICBidWlsZAkJCS0gUmVxdWlyZXMgY29tcG9uZW50IGZvciBidWlsZGluZy4NCisj
CQkJCSAgbGliCQkJLSBSZXF1aXJlcyBjb21wb25lbnQgZm9yIGJ1aWxkaW5nIGFuZCBydW5uaW5n
Lg0KKyMJCQkJICBydW4JCQktIFJlcXVpcmVzIGNvbXBvbmVudCBmb3IgcnVubmluZy4NCisjCQkJ
CSAgSWYgbm8gc3VmZml4IGlzIHByZXNlbnQgdGhlbiAibGliIiB3aWxsIGJlIHVzZWQuDQorIyBX
WF9DT05GX0FSR1MJLSBTZXQgdG8gImFic29sdXRlIiBvciAicmVsYXRpdmUiIGlmIHRoZSBwb3J0
IG5lZWRzIGNvbmZpZ3VyZQ0KKyMJCQkJICBhcmd1bWVudHMgaW4gYWRkaXRpb24gdG8gdGhlIFdY
X0NPTkZJRyBlbnZpcm9ubWVudCB2YXJpYWJsZS4NCisjCQkJCSAgSXQgZGV0ZXJtaW5lcyB0aGUg
dHlwZSBvZiBwYXJhbWV0ZXJzIHRoYXQgaGF2ZSB0byBiZSBwYXNzZWQNCisjCQkJCSAgdG8gdGhl
IGNvbmZpZ3VyZSBzY3JpcHQuIEluIHRoZSBmaXJzdCBjYXNlIGl0IGFkZHMNCisjCQkJCSAgIi0t
d2l0aC13eC1jb25maWc9JHtXWF9DT05GSUd9IiAoYWJzb2x1dGUgcGF0aCBvZiBXWF9DT05GSUcp
LA0KKyMJCQkJICBhbmQgaW4gc2Vjb25kIG9uZSAiLS13aXRoLXd4PSR7WDExQkFTRX0iIGFuZA0K
KyMJCQkJICAiLS13aXRoLXd4LWNvbmZpZz0ke1dYX0NPTkZJRzpUfSAocHJlZml4IGFuZCBuYW1l
KS4NCisjIFdYX1VOSUNPREUJLSBTZXQgdG8gInllcyIgKG9yIGFueXRoaW5nKSBpZiB0aGUgcG9y
dCBuZWVkcyB0aGUgVW5pY29kZQ0KKyMJCQkJICB2ZXJzaW9uIG9mIHRoZSBXeFdpZGdldHMgbGli
cmFyeSBhbmQvb3IgY29udHJpYnV0ZWQNCisjCQkJCSAgbGlicmFyaWVzLg0KKyMJCQkJICBOT1RF
OiB0aGlzIHNob3VsZCBOT1QgYmUgdXNlZCBmb3IgcG9ydHMgdGhhdCBjYW4gYmUgY29tcGlsZWQN
CisjCQkJCSAgd2l0aCBVbmljb2RlIG9yIG5vdCwgYnV0IGZvciB0aGUgb25lcyB0aGF0IHJlcXVp
cmUgaXQuIFRoZQ0KKyMJCQkJICBmaXJzdCBjYXNlIGlzIGhhbmRsZWQgYnkgdGhlIHVzZXIgdmFy
aWFibGUgV0lUSF9VTklDT0RFLg0KKyMgV0FOVF9XWAkJLSBTZXQgdG8gInllcyIgb3IgYSB2YWxp
ZCBzaW5nbGUgdmVyc2lvbiAobm8gcmFuZ2VzLCBldGMpLg0KKyMJCQkJICBJbiBib3RoIGNhc2Vz
IGl0IHdpbGwgZGV0ZWN0IHRoZSBpbnN0YWxsZWQgV3hXaWRnZXRzDQorIwkJCQkgIGNvbXBvbmVu
dHMgYW5kIGFkZCB0aGVtIHRvIHRoZSB2YXJpYWJsZSBIQVZFX1dYLiBJZiBhDQorIwkJCQkgIHZl
cnNpb24gaXMgc2VsZWN0ZWQsIEhBVkVfV1ggd2lsbCBjb250YWluIGEgbGlzdCBvZg0KKyMJCQkJ
ICBjb21wb25lbnRzIGluIHRoZSBvdGhlciBjYXNlIGl0IHdpbGwgY29udGFpbiBhIGxpc3Qgb2YN
CisjCQkJCSAgImNvbXBvbmVudC12ZXJzaW9uIiBwYWlycyAoZS5nLiB3eC0yLjYsIGNvbnRyaWIt
Mi40LCBldGMpLg0KKyMJCQkJICBJdCBoYXMgdG8gYmUgdXNlZCBiZWZvcmUgYnNkLnBvcnQucHJl
Lm1rLg0KKyMgV0FOVF9XWF9WRVIJLSBTZXQgdG8gdGhlIHByZWZlcmVkIFd4V2lkZ2V0cyB2ZXJz
aW9uIGZvciB0aGUgcG9ydC4gSXQgbXVzdA0KKyMJCQkJICBiZSBwcmVzZW50IGluIFVTRV9XWCBv
ciBtaXNzaW5nIGluIFVTRV9XWF9OT1QuIFRoaXMgaXMNCisjCQkJCSAgb3ZlcnJpZGVuIGJ5IHRo
ZSB1c2VyIHZhcmlhYmxlIFdJVEhfV1hfVkVSIGlmIHNldC4gSXQgY2FuDQorIwkJCQkgIGNvbnRh
aW4gbXVsdGlwbGUgdmVyc2lvbnMgaW4gb3JkZXIgb2YgcHJlZmVyZW5jZSAobGFzdCBvbmVzDQor
IwkJCQkgIGFyZSB0cmllZCBmaXJzdCkuDQorIw0KKyMgVGhlIGZvbGxvd2luZyB2YXJpYWJsZXMg
YXJlIGludGVuZGVkIGZvciB0aGUgdXNlciBhbmQgY2FuIGJlIGRlZmluZWQgaW4NCisjIG1ha2Uu
Y29uZi4NCisjIFdJVEhfVU5JQ09ERQktIElmIHRoZSB2YXJpYWJsZSBpcyBkZWZpbmVkIGFuZCBi
b3RoIHRoZSBydW5uaW5nIEZyZWVCU0QNCisjCQkJCSAgdmVyc2lvbiBhbmQgdGhlIHNlbGVjdGVk
IFd4V2lkZ2V0cyB2ZXJzaW9uIHN1cHBvcnQgVW5pY29kZSwNCisjCQkJCSAgdGhlbiB0aGUgVW5p
Y29kZSB2ZXJzaW9uIG9mIFd4V2lkZ2V0cyBpcyB1c2VkLg0KKyMgV0lUSF9XWF9WRVIJLSBJZiB0
aGUgdmFyaWFibGUgaXMgZGVmaW5lZCB0aGUgdmVyc2lvbiBpdCBjb250YWlucyB3aWxsIGJlDQor
IwkJCQkgIHVzZWQgYXMgdGhlIGRlZmF1bHQgZm9yIHBvcnRzIHRoYXQgc3VwcG9ydCBtdWx0aXBs
ZQ0KKyMJCQkJICBXeFdpZGdldHMgdmVyc2lvbnMuIEl0IGNhbiBjb250YWluIG11bHRpcGxlIHZl
cnNpb25zLCBhbmQNCisjCQkJCSAgdGhlIGxhc3QgcG9zc2libGUgb25lIHdpbGwgYmUgdXNlZC4N
CisjDQorIyBUaGUgZm9sbG93aW5nIHZhcmlhYmxlcyBhcmUgZGVmaW5lZCBieSB0aGlzIGZpbGUs
IHRvIGJlIHJlYWQgZnJvbSB0aGUgcG9ydC4NCisjIFdYX1VOSUNPREUJLSBJZiB0aGlzIHZhcmlh
YmxlIGlzIG5vdCBkZWZpbmVkIGJ5IHRoZSBwb3J0ICh3aGljaCBtZWFucyBpdA0KKyMJCQkJICBy
ZXF1aXJlcyB0aGUgVW5pY29kZSB2ZXJzaW9uIG9mIFd4V2lkZ2V0cyksIGl0IHdpbGwgYmUNCisj
CQkJCSAgZGVmaW5lZCBpbiB0aGUgY2FzZSB0aGUgVW5pY29kZSB2ZXJzaW9uIGlzIHVzZWQgKGVu
YWJsZWQgYnkNCisjCQkJCSAgdGhlIHVzZXIgdGhyb3VnaCBXSVRIX1VOSUNPREUpLg0KKyMgV1hf
VkVSU0lPTgktIFRoZSBXeFdpZGdldHMgdmVyc2lvbiB0aGF0IGlzIGdvaW5nIHRvIGJlIHVzZWQu
DQorIyBIQVZFX1dYCQktIFRoZSBsaXN0IG9mIFd4V2lkZ2V0cyBjb21wb25lbnRzIGluc3RhbGxl
ZCwgaWYgV0FOVF9XWCB3YXMNCisjCQkJCSAgZGVmaW5lZC4gVGhlIGNvbXBvbmVudHMgd2lsbCBo
YXZlIHZlcnNpb24gc3VmZml4IGlmIGl0IHdhcw0KKyMJCQkJICBzZXQgdG8gInllcyIpLg0KKyMN
CisjIEV4YW1wbGVzOg0KKyMgLSBBIHBvcnQgdGhhdCBuZWVkcyBXeFdpZGdldHMgMi42IGFuZCBj
b250cmlidXRlZCBsaWJyYXJpZXMgd2l0aCBVbmljb2RlLg0KKyMJVVNFX1dYPQkJMi42DQorIwlX
WF9DT01QUz0Jd3ggY29udHJpYg0KKyMJV1hfVU5JQ09ERT0JeWVzDQorIyAtIEEgcG9ydCB0aGF0
IG5lZWRzIFd4UHl0aG9uIDIuNCBmb3IgcnVubmluZy4NCisjCVVTRV9QWVRIT049CXllcw0KKyMJ
VVNFX1dYPQkJMi40DQorIwlXWF9DT01QUz0JcHl0aG9uX3J1bg0KKyMgLSBBIHBvcnQgdGhhdCBu
ZWVkcyBXeFB5dGhvbiAyLjQgb3IgMi42IGZvciBidWlsZGluZy4NCisjCVVTRV9QWVRIT049CXll
cw0KKyMJVVNFX1dYPQkJMi40IDIuNg0KKyMJV1hfQ09NUFM9CXB5dGhvbl9idWlsZA0KKyMgLSBB
IHBvcnQgdGhhdCBuZWVkcyBXeFdpZGdldHMgdmVyc2lvbiAyLjQgb3IgaGlnaGVyIGFuZCBjb250
cmlidXRlZA0KKyMJbGlicmFyaWVzLg0KKyMJVVNFX1dYPQkJMi40Kw0KKyMJV1hfQ09NUFM9CXd4
IGNvbnRyaWINCisjIC0gQSBwb3J0IHRoYXQgbmVlZHMgV3hXaWRnZXRzIG9mIGFueSB2ZXJzaW9u
IG90aGVyIHRoYW4gMi40Lg0KKyMJVVNFX1dYX05PVD0JMi40DQorIw0KKyMgTm90ZXM6DQorIyAt
IFRoZSB2ZXJzaW9uIGlzIHByb2Nlc3NlZCBvbiBlYWNoIGluY2x1c2lvbiwgc28gVVNFX1dYLCBV
U0VfV1hfTk9UIGFuZA0KKyMJV1hfVU5JQ09ERSBjYW4gYmUgbW9kaWZpZWQgYmVmb3JlIGFuZCBh
ZnRlciBpbmNsdWRpbmcgYnNkLnBvcnQucHJlLm1rLg0KKyMJQWZ0ZXIgZGV0ZXJtaW5pbmcgdGhl
IHZlcnNpb24gYW5kIFVuaWNvZGUsIFdYX0NPTkZJRyB3aWxsIGJlIGRlZmluZWQuDQorIw0KKw0K
K1dYX0luY2x1ZGVfTUFJTlRBSU5FUj0JYWxlcHVsdmVyQEZyZWVCU0Qub3JnDQorDQorIw0KKyMg
R2xvYmFsIGRlZmluaXRpb25zLg0KKyMNCisNCisuaWYgIWRlZmluZWQoX1dYX0RlZmluaXRpb25z
X0RvbmUpDQorX1dYX0RlZmluaXRpb25zX0RvbmU9CXllcw0KKw0KKyMNCisjIENvbW1vbiB2YXJp
YWJsZXM6DQorIyBfV1hfQ09NUFNfQUxMCQkJLSBMaXN0IG9mIHZhbGlkIGNvbXBvbmVudHMuDQor
IyBfV1hfREVQX1RZUEVTX0FMTAkJLSBMaXN0IG9mIHZhbGlkIGRlcGVuZGVuY3kgdHlwZXMuDQor
IyBfV1hfVkVSU19BTEwJCQktIExpc3Qgb2Ygc3VwcG9ydGVkIHZlcnNpb25zLg0KKyMgX1dYX1ZF
UlNfVUNfQUxMCQktIExpc3Qgb2YgVW5pY29kZSBjYXBhYmxlIHZlcnNpb25zLg0KKyMgX1dYX0NI
QU5HRV9WQVJTCQktIExpc3Qgb2YgdmFyaWFibGVzIGFsbG93ZWQgdG8gY2hhbmdlIGJldHdlZW4g
cHJlIGFuZA0KKyMJCQkJCQkgIHBvc3QgaW5jbHVzaW9ucyAocmVsYXRlZCB0byB2ZXJzaW9uKS4N
CisjIF9XWF9MSVNUU19PUkRFUgkJLSBSZXZlcnNlIGxpc3RzIHByZWZlcmVuY2Ugb3JkZXIuDQor
IyBfV1hfQVVUT19WQVJTCQkJLSBWYXJpYWJsZXMgZGVmaW5lZCBzb21ldGltZXMgdGhhdCBtYXkg
aGF2ZSB0byBiZQ0KKyMJCQkJCQkgIHJlZGVmaW5lZCBsYXRlci4NCisjDQorDQorX1dYX0NPTVBT
X0FMTD0JCQl3eCBjb250cmliIHB5dGhvbiBtb3ppbGxhIHN2Zw0KK19XWF9ERVBfVFlQRVNfQUxM
PQkJYnVpbGQgbGliIHJ1bg0KK19XWF9WRVJTX0FMTD0JCQkyLjQgMi42DQorX1dYX1ZFUlNfVUNf
QUxMPQkJMi42DQorX1dYX0NIQU5HRV9WQVJTPQkJVVNFX1dYIFVTRV9XWF9OT1QgV1hfVU5JQ09E
RQ0KK19XWF9MSVNUU19PUkRFUj0JCV9XWF9WRVJfRklOQUwgV0FOVF9XWF9WRVIgV0lUSF9XWF9W
RVINCitfV1hfQVVUT19WQVJTPQkJCVVTRV9XWCBXWF9DT05GSUcNCisNCisjDQorIyBWYXJpYWJs
ZXMgdXNlZCB0byBkZXRlcm1pbmUgd2hhdCBpcyBuZWVkZWQ6DQorIyBfV1hfUE9SVF9jb21wX3Zl
cgkJLSBQb3J0IGRpcmVjdG9yeS4NCisjIF9XWF9MSUJfY29tcF92ZXIJCS0gTmFtZSBvZiB0aGUg
c2hhcmVkIGxpYnJhcnkgKG9wdGlvbmFsKS4NCisjIF9XWF9TSFZFUl9jb21wX3ZlcgktIFNoYXJl
ZCBsaWJyYXJ5IHZlcnNpb24gKG9wdGlvbmFsKS4NCisjIF9XWF9GSUxFX2NvbXBfdmVyCQktIEZp
bGUgaW5zdGFsbGVkIGJ5IHRoYXQgY29tcG9uZW50Lg0KKyMNCisNCitfV1hfUE9SVF93eF8yLjQ9
CQl3eGd0azI0DQorX1dYX0xJQl93eF8yLjQ9CQkJd3hfZ3RrMi0yLjQNCisNCitfV1hfUE9SVF9j
b250cmliXzIuND0Jd3hndGsyNC1jb250cmliDQorX1dYX0xJQl9jb250cmliXzIuND0Jd3hfZ3Rr
Ml9jYW52YXMtMi40DQorDQorX1dYX1BPUlRfcHl0aG9uXzIuND0JcHktd3hQeXRob24yNA0KK19X
WF9GSUxFX3B5dGhvbl8yLjQ9CSR7UFlUSE9OX1NJVEVMSUJESVJ9L3d4L19faW5pdF9fLnB5DQor
DQorX1dYX1BPUlRfbW96aWxsYV8yLjQ9CXd4bW96aWxsYQ0KK19XWF9MSUJfbW96aWxsYV8yLjQ9
CXd4bW96aWxsYV9ndGsyLTIuNA0KKw0KK19XWF9QT1JUX3d4XzIuNj0JCXd4Z3RrMjYke19XWF9V
Q0x9DQorX1dYX0xJQl93eF8yLjY9CQkJd3hfYmFzZSR7X1dYX1VDfS0yLjYNCisNCitfV1hfUE9S
VF9jb250cmliXzIuNj0Jd3hndGsyNiR7X1dYX1VDTH0tY29udHJpYg0KK19XWF9MSUJfY29udHJp
Yl8yLjY9CXd4X2d0azIke19XWF9VQ31fYW5pbWF0ZS0yLjYNCisNCitfV1hfUE9SVF9weXRob25f
Mi42PQlweS13eFB5dGhvbjI2JHtfV1hfVUNMfQ0KK19XWF9GSUxFX3B5dGhvbl8yLjY9CSR7UFlU
SE9OX1NJVEVMSUJESVJ9L3d4LTIuNi1ndGsyJHtfV1hfUFlTVUZYfS93eC9fX2luaXRfXy5weQ0K
Kw0KK19XWF9QT1JUX3N2Z18yLjY9CQl3eHN2Zw0KK19XWF9MSUJfc3ZnXzIuNj0JCXd4c3ZnDQor
DQorIyBTZXQgX1dYX1NIVkVSX2NvbXBfdmVyIHRvIDAgYW5kIF9XWF9GSUxFX2NvbXBfdmVyIGZv
ciBsaWJzIGFwcHJvcGlhdGVseS4NCisNCisuZm9yIGNvbXAgaW4gJHtfV1hfQ09NUFNfQUxMfQ0K
Ky4JZm9yIHZlciBpbiAke19XWF9WRVJTX0FMTH0NCisuCQlpZiBkZWZpbmVkKF9XWF9MSUJfJHtj
b21wfV8ke3Zlcn0pDQorX1dYX1NIVkVSXyR7Y29tcH1fJHt2ZXJ9PQkwDQorX1dYX0ZJTEVfJHtj
b21wfV8ke3Zlcn09CSR7WDExQkFTRX0vbGliL2xpYiR7X1dYX0xJQl8ke2NvbXB9XyR7dmVyfX0u
c28uJHtfV1hfU0hWRVJfJHtjb21wfV8ke3Zlcn19DQorLgkJZW5kaWYNCisuCWVuZGZvcg0KKy5l
bmRmb3INCisNCisuZW5kaWYJCSMgIV9XWF9EZWZpbmVkX0RvbmUNCisNCisjDQorIyBDaGVjayBm
b3IgcHJlc2VudCBjb21wb25lbnRzLg0KKyMNCisNCisuaWYgIWRlZmluZWQoQUZURVJQT1JUTUsp
ICYmIGRlZmluZWQoV0FOVF9XWCkNCisNCisjIENoZWNrIGlmIFVuaWNvZGUgd2lsbCBiZSB1c2Vk
Lg0KKw0KKy4JZm9yIF9fV0FOVF9XWCBpbiAke1dBTlRfV1h9DQorLgkJaWYgZGVmaW5lZChXSVRI
X1VOSUNPREUpICYmICR7T1NWRVJTSU9OfSA+PSA1MDAwMDAgJiYgXA0KKwkJICAgKCR7X1dYX1ZF
UlNfVUNfQUxMOk0ke19fV0FOVF9XWH19ICE9ICIiIHx8ICR7V0FOVF9XWDpMfSA9PSAieWVzIikN
CitfV1hfV0FOVF9VTklDT0RFPQkJeWVzDQorLgkJZW5kaWYNCisuCWVuZGZvcg0KKw0KKyMgVGhl
c2UgdmFyaWFibGVzIGFyZSByZXByb2Nlc3NlZCBsYXRlciBzbyB0aGV5IHdvbid0IGFmZmVjdCBv
dGhlciBwYXJ0cy4NCisNCisuCWlmIGRlZmluZWQoV1hfVU5JQ09ERSkgfHwgZGVmaW5lZChfV1hf
V0FOVF9VTklDT0RFKQ0KK19XWF9WRVJfRklOQUw9CQkJJHtfV1hfVkVSU19VQ19BTEx9DQorX1dY
X1VDPQkJCQkJdQ0KK19XWF9VQ0w9CQkJCS11bmljb2RlDQorX1dYX1BZU1VGWD0JCQkJLXVuaWNv
ZGUNCisuCWVsc2UNCitfV1hfVkVSX0ZJTkFMPQkJCSR7X1dYX1ZFUlNfQUxMfQ0KK19XWF9VQz0J
CQkJCSMNCitfV1hfVUNMPQkJCQkjDQorX1dYX1BZU1VGWD0JCQkJLWFuc2kNCisuCWVuZGlmDQor
DQorIyBGaWxsIEhBVkVfV1ggd2l0aCB0aGUgaW5zdGFsbGVkIGNvbXBvbmVudHMuDQorDQorLglm
b3IgX19XQU5UX1dYIGluICR7V0FOVF9XWH0NCisjIENoZWNrIGlmIFdBTlRfV1ggY29udGFpbnMg
bW9yZSB0aGFuIG9uZSB3b3JkLg0KKy4JCWlmIGRlZmluZWQoSEFWRV9XWCkNCitJR05PUkU/PQkJ
CQlzZWxlY3RlZCBtdWx0aXBsZSB2YWx1ZXMgZm9yIFdBTlRfV1g6ICR7V0FOVF9XWH0NCisuCQll
bmRpZg0KK0hBVkVfV1g9CQkJCSMNCisjIENoZWNrIGZvciBhbGwgdmVyc2lvbnMuDQorLgkJaWYg
JHtXQU5UX1dYOkx9ID09ICJ5ZXMiDQorLgkJCWZvciBjb21wIGluICR7X1dYX0NPTVBTX0FMTH0N
CisuCQkJCWZvciB2ZXIgaW4gJHtfV1hfVkVSX0ZJTkFMfQ0KK19XWF9DT01QPQkJCQlfV1hfRklM
RV8ke2NvbXB9XyR7dmVyfQ0KKy4JCQkJCWlmIGRlZmluZWQoJHtfV1hfQ09NUH0pICYmIGV4aXN0
cygkeyR7X1dYX0NPTVB9fSkNCitIQVZFX1dYKz0JCQkJJHtjb21wfS0ke3Zlcn0NCisuCQkJCQll
bmRpZg0KKy4JCQkJZW5kZm9yDQorLgkJCWVuZGZvcg0KKyMgQ2hlY2sgZm9yIGEgc3BlY2lmaWMg
dmVyc2lvbi4NCisuCQllbGlmICR7X1dYX1ZFUlNfQUxMOk0ke19fV0FOVF9XWH19DQorLgkJCWZv
ciBjb21wIGluICR7X1dYX0NPTVBTX0FMTH0NCisuCQkJCWlmIGV4aXN0cygke19XWF9GSUxFXyR7
Y29tcH1fJHtfX1dBTlRfV1h9fSkNCitIQVZFX1dYKz0JCQkJJHtjb21wfQ0KKy4JCQkJZW5kaWYN
CisuCQkJZW5kZm9yDQorLgkJZWxzZQ0KK0lHTk9SRT89CQkJCXNlbGVjdGVkIGFuIGludmFsaWQg
dmFsdWUgZm9yIFdBTlRfV1g6ICR7X19XQU5UX1dYfQ0KKy4JCWVuZGlmDQorLgllbmRmb3INCisu
ZW5kaWYJCSMgISBBRlRFUlBPUlRNSyAmJiBXQU5UX1dYDQorDQorIw0KKyMgQ2hlY2sgaWYgdGhl
IHZlcnNpb24gaGFzIGNoYW5nZWQgYmV0d2VlbiBpbmNsdXNpb25zLg0KKyMNCisNCisuaWYgZGVm
aW5lZChfV1hfVmVyc2lvbl9Eb25lKQ0KKy4JdW5kZWYgX1dYX0hBU19DSEFOR0VEDQorDQorLglm
b3IgdmFyIGluICR7X1dYX0NIQU5HRV9WQVJTfQ0KKy4JCWlmIChkZWZpbmVkKCR7dmFyfSkgJiYg
IWRlZmluZWQoX1dYX09MRF8ke3Zhcn0pKSB8fCBcDQorCQkgICAoIWRlZmluZWQoJHt2YXJ9KSAm
JiBkZWZpbmVkKF9XWF9PTERfJHt2YXJ9KSkgfHwgXA0KKwkJICAgKGRlZmluZWQoX1dYX09MRF8k
e3Zhcn0pICYmICR7X1dYX09MRF8ke3Zhcn19ICE9ICR7JHt2YXJ9fSkNCitfV1hfSEFTX0NIQU5H
RUQ9CQl5ZXMNCisuCQllbmRpZg0KKy4JZW5kZm9yDQorLmVuZGlmCQkjIF9XWF9WZXJzaW9uX0Rv
bmUNCisNCisjDQorIyBTZWxlY3QgV3hXaWRnZXRzIHZlcnNpb24uDQorIw0KKw0KKy5pZiAoIWRl
ZmluZWQoX1dYX1ZlcnNpb25fRG9uZSkgfHwgZGVmaW5lZChfV1hfSEFTX0NIQU5HRUQpKSAmJiBc
DQorCShkZWZpbmVkKFVTRV9XWCkgfHwgZGVmaW5lZChVU0VfV1hfTk9UKSkNCitfV1hfVmVyc2lv
bl9Eb25lPQkJeWVzDQorDQorIyBIYW5kbGUgYXV0b21hdGljIHZhcmlhYmxlcy4NCisNCisuZm9y
IHZhciBpbiAke19XWF9BVVRPX1ZBUlN9DQorLglpZiBkZWZpbmVkKF9XWF8ke3Zhcn1fREVGSU5F
RCkNCisuCQl1bmRlZiAke3Zhcn0NCisuCWVuZGlmDQorLglpZiAhZGVmaW5lZCgke3Zhcn0pDQor
X1dYXyR7dmFyfV9ERUZJTkVEPQkJeWVzDQorLgllbmRpZg0KKy5lbmRmb3INCisNCisjIFJlc2V0
IG9sZCB2YXJpYWJsZSB2YWx1ZXMuDQorDQorLmlmIGRlZmluZWQoX1dYX0hBU19DSEFOR0VEKQ0K
Ky4JdW5kZWYgX1dYX1ZFUg0KKy4JdW5kZWYgX1dYX0lHTk9SRQ0KKy5lbmRpZg0KKw0KKyMgU2V0
IGRlZmF1bHRzIChpZiBvbmUgaXNuJ3QgcHJlc2VudCkuDQorDQorVVNFX1dYPz0JCQkJJHtfV1hf
VkVSU19BTEx9DQorVVNFX1dYX05PVD89CQkJIw0KKw0KKyMNCisjIE1ha2UgbGlzdHMgb2YgdmFs
aWQgYW5kIGludmFsaWQgdmVyc2lvbnMuDQorIw0KKyMgVGhlIGZvbGxvd2luZyB2YXJpYWJsZXMg
YXJlIHVzZWQ6DQorIyBfV1hfVkVSX0NIRUNLCQkJLSBJZiB0aGUgdmVyc2lvbiBpcyBhIHNpbmds
ZSBvbmUsIGV4cHJlc3MgaW4gYSByYW5nZS4NCisjIF9XWF9WRVJfTUlOCQkJLSBMb3dlciB2ZXJz
aW9uIG9mIHRoZSByYW5nZS4NCisjIF9XWF9WRVJfTUFYCQkJLSBIaWdoZXIgdmVyc2lvbiBvZiB0
aGUgcmFuZ2UuDQorIyBfV1hfVkVSX0xJU1QJCQktIExpc3Qgb2YgcmVxdWVzdGVkIHZlcnNpb25z
Lg0KKyMgX1dYX1ZFUl9OT1RfTElTVAkJLSBMaXN0IG9mIGRpc2FsbG93ZWQgdmVyc2lvbnMuDQor
IyBfV1hfVkVSX01FUkdFRAkJLSBMaXN0IG9mIHJlcXVlc3RlZCB2ZXJzaW9uIHdpdGhvdXQgZGlz
YWxsb3dlZCBvbmVzLg0KKyMNCisNCisuZm9yIGxpc3QgaW4gVkVSIFZFUl9OT1QNCitfV1hfJHts
aXN0fV9MSVNUPQkJIw0KKy4JZm9yIHZlciBpbiAke1VTRV9XWCR7bGlzdDpDL1ZFUi8vfX0NCitf
V1hfVkVSX0NIRUNLOj0JCQkke3ZlcjpDL14oW1s6ZGlnaXQ6XV0rKFwuW1s6ZGlnaXQ6XV0rKSop
JC9cMS1cMS99DQorX1dYX1ZFUl9NSU46PQkJCSR7X1dYX1ZFUl9DSEVDSzpDLyhbWzpkaWdpdDpd
XSsoXC5bWzpkaWdpdDpdXSspKilbLStdLiovXDEvfQ0KK19XWF9WRVJfTUFYOj0JCQkke19XWF9W
RVJfQ0hFQ0s6Qy8uKi0oW1s6ZGlnaXQ6XV0rKFwuW1s6ZGlnaXQ6XV0rKSopL1wxL30NCisjIE1p
bmltdW0gdmVyc2lvbiBub3Qgc3BlY2lmaWVkLg0KKy4JCWlmICR7X1dYX1ZFUl9NSU59ID09ICR7
X1dYX1ZFUl9DSEVDS30NCisuCQkJdW5kZWYgX1dYX1ZFUl9NSU4NCisuCQkJZm9yIHYgaW4gJHtf
V1hfVkVSU19BTEx9DQorX1dYX1ZFUl9NSU4/PQkJCSR7dn0NCisuCQkJZW5kZm9yDQorLgkJZW5k
aWYNCisjIE1heGltdW0gdmVyc2lvbiBub3Qgc3BlY2lmaWVkLg0KKy4JCWlmICR7X1dYX1ZFUl9N
QVh9ID09ICR7X1dYX1ZFUl9DSEVDS30NCisuCQkJZm9yIHYgaW4gJHtfV1hfVkVSU19BTEx9DQor
X1dYX1ZFUl9NQVg9CQkJJHt2fQ0KKy4JCQllbmRmb3INCisuCQllbmRpZg0KKyMgRXhwYW5kIHZl
cnNpb25zIGFuZCBhZGQgdmFsaWQgb25lcyB0byBlYWNoIGxpc3QuDQorLgkJZm9yIHYgaW4gJHtf
V1hfVkVSU19BTEx9DQorLgkJCWlmICR7X1dYX1ZFUl9NSU59IDw9ICR7dn0gJiYgJHtfV1hfVkVS
X01BWH0gPj0gJHt2fSAmJiBcDQorCQkJICAgJHtfV1hfJHtsaXN0fV9MSVNUOk0ke3Z9fSA9PSAi
Ig0KK19XWF8ke2xpc3R9X0xJU1QrPQkJJHt2fQ0KKy4JCQllbmRpZg0KKy4JCWVuZGZvcg0KKy4J
ZW5kZm9yDQorLmVuZGZvcg0KKw0KKyMgTWVyZ2UgdGhlIGxpc3RzIGludG8gYSBzaW5nbGUgbGlz
dCBvZiB2YWxpZCB2ZXJzaW9ucy4NCisNCitfV1hfVkVSX01FUkdFRD0JCQkjDQorLmZvciB2ZXIg
aW4gJHtfV1hfVkVSX0xJU1R9DQorLglpZiAke19XWF9WRVJfTk9UX0xJU1Q6TSR7dmVyfX0gPT0g
IiINCitfV1hfVkVSX01FUkdFRCs9CQkke3Zlcn0NCisuCWVuZGlmDQorLmVuZGZvcg0KKw0KKyMg
Q2hlY2sgZm9yIGEgbnVsbCB2ZXJzaW9uLg0KKw0KKy5pZiBlbXB0eShfV1hfVkVSX01FUkdFRCkN
CitfV1hfSUdOT1JFPz0JCQlzZWxlY3RlZCBhIG51bGwgb3IgaW52YWxpZCBXeFdpZGdldHMgdmVy
c2lvbg0KKy5lbmRpZg0KKw0KKyMNCisjIFVuaWNvZGUgc3VwcG9ydC4NCisjDQorDQorIyBDcmVh
dGUgYSBsaXN0IG9mIGNhcGFibGUgdmVyc2lvbnMuDQorDQorX1dYX1ZFUl9VQz0JCQkJIw0KKy5m
b3IgdmVyIGluICR7X1dYX1ZFUl9NRVJHRUR9DQorLglpZiAke19XWF9WRVJTX1VDX0FMTDpNJHt2
ZXJ9fSAhPSAiIg0KK19XWF9WRVJfVUMrPQkJCSR7dmVyfQ0KKy4JZW5kaWYNCisuZW5kZm9yDQor
DQorIyBSZXF1ZXN0ZWQgYnkgdGhlIHVzZXIgKG9wdGlvbmFsKS4NCisNCisuaWYgZGVmaW5lZChX
SVRIX1VOSUNPREUpICYmICR7T1NWRVJTSU9OfSA+PSA1MDAwMDANCisuCWZvciB2ZXIgaW4gJHtf
V1hfVkVSX1VDfQ0KKy4JCWlmICR7X1dYX1ZFUlNfVUNfQUxMOk0ke3Zlcn19ICE9ICIiDQorV1hf
VU5JQ09ERT0JCQkJeWVzDQorLgkJZW5kaWYNCisuCWVuZGZvcg0KKy5lbmRpZg0KKw0KKyMgUmVx
dWVzdGVkIGJ5IHRoZSBwb3J0IChtYW5kYXRvcnkpLg0KKw0KKy5pZiBkZWZpbmVkKFdYX1VOSUNP
REUpDQorLglpZiAke09TVkVSU0lPTn0gPCA1MDAwMDANCitfV1hfSUdOT1JFPz0JCQlyZXF1aXJl
cyBGcmVlQlNEIHZlcnNpb25zID49IDUuWCAoYmVjYXVzZSBvZiBVbmljb2RlKQ0KKy4JZWxpZiBl
bXB0eShfV1hfVkVSX1VDKQ0KK19XWF9JR05PUkU/PQkJCXNlbGVjdGVkIGEgV3hXaWRnZXRzIHZl
cnNpb24gd2hpY2ggZG9lcyBub3Qgc3VwcG9ydCBVbmljb2RlOiAke19XWF9WRVJfTUVSR0VEfQ0K
Ky4JZW5kaWYNCisuZW5kaWYNCisNCisjIFNldCBVbmljb2RlIHZhcmlhYmxlcy4NCisNCisuaWYg
ZGVmaW5lZChXWF9VTklDT0RFKQ0KK19XWF9WRVJfRklOQUw9CQkJJHtfV1hfVkVSX1VDfQ0KK19X
WF9VQz0JCQkJCXUNCitfV1hfVUNMPQkJCQktdW5pY29kZQ0KK19XWF9QWVNVRlg9CQkJCS11bmlj
b2RlDQorLmVsc2UNCitfV1hfVkVSX0ZJTkFMPQkJCSR7X1dYX1ZFUl9NRVJHRUR9DQorX1dYX1VD
PQkJCQkJIw0KK19XWF9VQ0w9CQkJCSMNCitfV1hfUFlTVUZYPQkJCQktYW5zaQ0KKy5lbmRpZg0K
Kw0KKyMNCisjIENob29zZSBmaW5hbCB2ZXJzaW9uLg0KKyMNCisNCisjDQorIyBDaGVjayBmb3Ig
dGhlIGZvbGxvd2luZyAoaW4gb3JkZXIpOg0KKyMgMSkgV0lUSF9XWF9WRVIJCS0gVXNlciBwcmVm
ZXJlbmNlLg0KKyMgMikgV0FOVF9XWF9WRVIJCS0gUG9ydCBwcmVmZXJlbmNlLg0KKyMgMykgX1dY
X1ZFUl9GSU5BTAkJLSBBdmFpbGFibGUgdmVyc2lvbnMuDQorIw0KKw0KKy5mb3IgbGlzdCBpbiAk
e19XWF9MSVNUU19PUkRFUn0NCisuCWlmIGRlZmluZWQoJHtsaXN0fSkNCisuCQlmb3IgdmVyIGlu
ICR7JHtsaXN0fX0NCisuCQkJaWYgJHtfV1hfVkVSX0ZJTkFMOk0ke3Zlcn19ICE9ICIiDQorX1dY
X1ZFUj0JCQkJJHt2ZXJ9DQorLgkJCWVuZGlmDQorLgkJZW5kZm9yDQorLgllbmRpZg0KKy5lbmRm
b3INCisNCisjDQorIyBTZXQgdmFyaWFibGVzLg0KKyMNCisNCitXWF9WRVJTSU9OPQkJCQkke19X
WF9WRVJ9DQorV1hfQ09ORklHPz0JCQkJJHtYMTFCQVNFfS9iaW4vd3hndGsyJHtfV1hfVUN9LSR7
X1dYX1ZFUn0tY29uZmlnDQorDQorIyBEZWZpbmUgb2xkIHZhbHVlcyBmb3IgZGV0ZWN0aW5nIGNo
YW5nZXMuDQorDQorLmZvciB2YXIgaW4gJHtfV1hfQ0hBTkdFX1ZBUlN9DQorLglpZiBkZWZpbmVk
KCR7dmFyfSkNCitfV1hfT0xEXyR7dmFyfTo9CQkkeyR7dmFyfX0NCisuCWVuZGlmDQorLmVuZGZv
cg0KKw0KKy5lbmRpZgkJIyAhIF9XWF9WZXJzaW9uX0RvbmUgfHwgX1dYX0hBU19DSEFOR0VEDQor
DQorIw0KKyMgUHJvY2VzcyBjb21wb25lbnRzIGxpc3QgYW5kIGFkZCBkZXBlbmRlbmNpZXMsIHZh
cmlhYmxlcywgZXRjLg0KKyMNCisNCisuaWYgIWRlZmluZWQoQkVGT1JFUE9SVE1LKQ0KKyMgRXJy
b3IgY2hlY2suDQorDQorLmlmIGRlZmluZWQoX1dYX0lHTk9SRSkNCitJR05PUkU/PQkJCQkke19X
WF9JR05PUkV9DQorLmVuZGlmDQorDQorIw0KKyMgQ29tcG9uZW50IHBhcnNpbmcuDQorIw0KKyMg
VGhlIHZhcmlhYmxlcyB1c2VkIGFyZToNCisjIF9XWF9DT01QCQkJCS0gQ29tcG9uZW50IHBhcnQu
DQorIyBfV1hfREVQX1RZUEUJCQktIERlcGVuZGVuY3kgdHlwZSBwYXJ0Lg0KKyMgX1dYX0NPTVBf
TkVXCQkJLSBDb21wb25lbnQgKyBkZXBlbmRlbmN5IHR5cGUuDQorIyBfV1hfQ09NUFNfRklOQUwJ
CS0gRmluYWwgbGlzdCBvZiBjb21wb25lbnRzIHdpdGggZGVwZW5kZW5jeSB0eXBlcy4NCisjDQor
DQorIyBEZWZhdWx0IGNvbXBvbmVudHMuDQorDQorV1hfQ09NUFM/PQkJCQl3eA0KKw0KKyMgRGV0
ZWN0IGludmFsaWQgYW5kIGR1cGxpY2F0ZWQgY29tcG9uZW50cy4NCisNCitfV1hfQ09NUFNfRklO
QUw9CQkjDQorLmZvciBjb21wIGluICR7V1hfQ09NUFN9DQorX1dYX0NPTVA9CQkJCSR7Y29tcDpD
L18oW1s6YWxwaGE6XV0rKSQvL30NCitfV1hfREVQX1RZUEU9CQkJJHtjb21wOkMvLitfKFtbOmFs
cGhhOl1dKykkL1wxL30NCisuCWlmICR7X1dYX0NPTVB9ID09ICR7Y29tcH0NCitfV1hfREVQX1RZ
UEU9CQkJbGliDQorLgllbmRpZg0KK19XWF9DT01QX05FVz0JCQkke19XWF9DT01QfV8ke19XWF9E
RVBfVFlQRX0NCisuCWZvciBfX1dYX0NPTVAgaW4gJHtfV1hfQ09NUH0NCisuCQlpZiAke19XWF9D
T01QU19BTEw6TSR7X19XWF9DT01QfX0gPT0gIiINCitJR05PUkU/PQkJCQlzZWxlY3RlZCBhbiBp
bnZhbGlkIFd4V2lkZ2V0cyBjb21wb25lbnQ6ICR7X19XWF9DT01QfQ0KKy4JCWVuZGlmDQorLgll
bmRmb3INCisuCWZvciBfX1dYX0RFUF9UWVBFIGluICR7X1dYX0RFUF9UWVBFfQ0KKy4JCWlmICR7
X1dYX0RFUF9UWVBFU19BTEw6TSR7X19XWF9ERVBfVFlQRX19ID09ICIiDQorSUdOT1JFPz0JCQkJ
c2VsZWN0ZWQgYW4gaW52YWxpZCBXeFdpZGdldHMgZGVwZW5kZW5jeSB0eXBlOiAke19fV1hfREVQ
X1RZUEV9DQorLgkJZW5kaWYNCisuCWVuZGZvcg0KKy4JaWYgIWRlZmluZWQoX1dYX1BPUlRfJHtf
V1hfQ09NUH1fJHtfV1hfVkVSfSkNCitJR05PUkU/PQkJCQlzZWxlY3RlZCBhIFd4V2lkZ2V0cyBj
b21wb25lbnQgKCR7X1dYX0NPTVB9KSB3aGljaCBpcyBub3QgYXZhaWxhYmxlIGZvciB0aGUgc2Vs
ZWN0ZWQgdmVyc2lvbiAoJHtfV1hfVkVSfSkNCisuCWVuZGlmDQorLglmb3IgbmV3Y29tcCBpbiAk
e19XWF9DT01QX05FV30NCisuCQlpZiAke19XWF9DT01QU19GSU5BTDpNJHtuZXdjb21wfX0gPT0g
IiINCitfV1hfQ09NUFNfRklOQUwrPQkJJHtuZXdjb21wfQ0KKy4JCWVuZGlmDQorLgllbmRmb3IN
CisuZW5kZm9yDQorDQorIyBBZGQgZGVwZW5kZW5jaWVzLg0KKyMNCisjIFRoZSB2YXJpYWJsZSB1
c2VkIGFyZToNCisjIF9XWF9DT01QCQktCQktIENvbXBvbmVudCBwYXJ0Lg0KKyMgX1dYX0RFUF9U
WVBFCQkJLSBEZXBlbmRlbmN5IHR5cGUgcGFydC4NCisNCisuZm9yIGNvbXAgaW4gJHtfV1hfQ09N
UFNfRklOQUx9DQorX1dYX0NPTVA9CQkJCSR7Y29tcDpDL18oW1s6YWxwaGE6XV0rKSQvL30NCitf
V1hfREVQX1RZUEU9CQkJJHtjb21wOkMvLitfKFtbOmFscGhhOl1dKykkL1wxL30NCisuCWlmICR7
X1dYX0RFUF9UWVBFfSA9PSAibGliIg0KKy4JCWlmIGRlZmluZWQoX1dYX0xJQl8ke19XWF9DT01Q
fV8ke19XWF9WRVJ9KQ0KK0xJQl9ERVBFTkRTKz0JCQkke19XWF9MSUJfJHtfV1hfQ09NUH1fJHtf
V1hfVkVSfX06JHtQT1JUU0RJUn0veDExLXRvb2xraXRzLyR7X1dYX1BPUlRfJHtfV1hfQ09NUH1f
JHtfV1hfVkVSfX0NCisuCQllbHNlDQorQlVJTERfREVQRU5EUys9CQkJJHtfV1hfRklMRV8ke19X
WF9DT01QfV8ke19XWF9WRVJ9fToke1BPUlRTRElSfS94MTEtdG9vbGtpdHMvJHtfV1hfUE9SVF8k
e19XWF9DT01QfV8ke19XWF9WRVJ9fQ0KK1JVTl9ERVBFTkRTKz0JCQkke19XWF9GSUxFXyR7X1dY
X0NPTVB9XyR7X1dYX1ZFUn19OiR7UE9SVFNESVJ9L3gxMS10b29sa2l0cy8ke19XWF9QT1JUXyR7
X1dYX0NPTVB9XyR7X1dYX1ZFUn19DQorLgkJZW5kaWYNCisuCWVsc2UNCiske19XWF9ERVBfVFlQ
RTpVfV9ERVBFTkRTKz0JJHtfV1hfRklMRV8ke19XWF9DT01QfV8ke19XWF9WRVJ9fToke1BPUlRT
RElSfS94MTEtdG9vbGtpdHMvJHtfV1hfUE9SVF8ke19XWF9DT01QfV8ke19XWF9WRVJ9fQ0KKy4J
ZW5kaWYNCisuZW5kZm9yDQorDQorIw0KKyMgU2V0IGJ1aWxkIHJlbGF0ZWQgdmFyaWFibGVzLg0K
KyMNCisNCitNQUtFX0VOVis9CQkJCVdYX0NPTkZJRz0ke1dYX0NPTkZJR30NCitDT05GSUdVUkVf
RU5WKz0JCQlXWF9DT05GSUc9JHtXWF9DT05GSUd9DQorDQorLmlmIGRlZmluZWQoV1hfQ09ORl9B
UkdTKQ0KKy4JaWYgJHtXWF9DT05GX0FSR1M6TH0gPT0gImFic29sdXRlIg0KK0NPTkZJR1VSRV9B
UkdTKz0JCS0td2l0aC13eC1jb25maWc9JHtXWF9DT05GSUd9DQorLgllbGlmICR7V1hfQ09ORl9B
UkdTOkx9ID09ICJyZWxhdGl2ZSINCitDT05GSUdVUkVfQVJHUys9CQktLXdpdGgtd3g9JHtYMTFC
QVNFfSBcDQorCQkJCQkJLS13aXRoLXd4LWNvbmZpZz0ke1dYX0NPTkZJRzpUfQ0KKy4JZWxzZQ0K
K0lHTk9SRT89CQkJCXNlbGVjdGVkIGFuIGludmFsaWQgV3hXaWRnZXRzIGNvbmZpZ3VyZSBhcmd1
bWVudCB0eXBlOiAke1dYX0NPTkZfQVJHU30NCisuCWVuZGlmDQorLmVuZGlmDQorDQorLmVuZGlm
CQkjICEgQkVGT1JFUE9SVE1LDQotIC0tLS0tLS0tLS0tIEVORCAtLS0tLS0tLS0tLQ0KLS0tLS1C
RUdJTiBQR1AgU0lHTkFUVVJFLS0tLS0NClZlcnNpb246IEdudVBHIHYxLjQuMyAoRnJlZUJTRCkN
Cg0KaUQ4REJRRkVrY2RoaVYwNUVwUmNQMkVSQWlVREFKOWhlYnkzWWVYY1FZeG5ZVEFBN0w0cFpU
Q0Mrd0NkSDYyWA0KZGl2T2c5VDJBMFdacUdTamlyRkZzTTg9DQo9TUtRUw0KLS0tLS1FTkQgUEdQ
IFNJR05BVFVSRS0tLS0tDQo=
Comment 12 Mark Linimon freebsd_committer freebsd_triage 2006-06-27 21:14:33 UTC
State Changed
From-To: feedback->analyzed

Accepted for a test build on the cluster.
Comment 13 Mark Linimon freebsd_committer freebsd_triage 2006-07-05 03:12:01 UTC
State Changed
From-To: analyzed->closed

Committed, thanks.