From owner-freebsd-arch@FreeBSD.ORG Sun Jun 13 08:37:33 2010 Return-Path: Delivered-To: arch@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 40738106566B for ; Sun, 13 Jun 2010 08:37:33 +0000 (UTC) (envelope-from imp@bsdimp.com) Received: from harmony.bsdimp.com (bsdimp.com [199.45.160.85]) by mx1.freebsd.org (Postfix) with ESMTP id 024058FC08 for ; Sun, 13 Jun 2010 08:37:32 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by harmony.bsdimp.com (8.14.3/8.14.1) with ESMTP id o5D8WKGu016628; Sun, 13 Jun 2010 02:32:20 -0600 (MDT) (envelope-from imp@bsdimp.com) Date: Sun, 13 Jun 2010 02:32:23 -0600 (MDT) Message-Id: <20100613.023223.972525811890973035.imp@bsdimp.com> To: des@des.no From: "M. Warner Losh" In-Reply-To: <86zkz05bra.fsf@ds4.des.no> References: <20100612.101458.10150326125744273.imp@bsdimp.com> <20100612.111805.94843338670897167.imp@bsdimp.com> <86zkz05bra.fsf@ds4.des.no> X-Mailer: Mew version 6.3 on Emacs 22.3 / Mule 5.0 (SAKAKI) Mime-Version: 1.0 Content-Type: Text/Plain; charset=iso-8859-1 Content-Transfer-Encoding: quoted-printable Cc: arch@FreeBSD.org Subject: Re: Change to config(8) for OFED X-BeenThere: freebsd-arch@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion related to FreeBSD architecture List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 13 Jun 2010 08:37:33 -0000 In message: <86zkz05bra.fsf@ds4.des.no> Dag-Erling Sm=F8rgrav writes: : "M. Warner Losh" writes: : > but NORMAL_C is : > : > NORMAL_C=3D ${CC} -c ${CFLAGS} ${WERROR} ${PROF} ${.IMPSRC} : > : > and .IMPSRC is null. That seems like a bug to me, but I'm not sure= if : > the bug is that .IMPSRC is computed wrong, or if it really should b= e : > ${.ALLSRC} : = : .IMPSRC is the *implicit* source and is only valid in *implicit* rule= s. : Consider the following: : = : .SUFFIXES: .foo .bar : .foo.bar: foo2bar.sh : /bin/sh foo2bar.sh ${.IMPSRC} ${.TARGET} : = : When building hello.bar from hello.foo, .IMPSRC is "hello.foo" but .A= LLSRC : is "hello.foo foo2bar.sh". Yes, it appears to be set only when the target matches the object, so the .c.o rule matches, even if the more specific one is used (where there is not a match). : GNU make has a way of defining more complex implicit rules (pattern : rules). If we had something similar, we could do: : = : foo_%.o: %.c : ${NORMAL_C} Yes. I'm starting to think that this would be necessary to implement this properly. Or, as Jeff suggested, have config generate a complete compile line with -o foo_bar.o -c bar.c in the line... Warner From owner-freebsd-arch@FreeBSD.ORG Sun Jun 13 09:34:37 2010 Return-Path: Delivered-To: arch@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id A7765106566B for ; Sun, 13 Jun 2010 09:34:37 +0000 (UTC) (envelope-from jroberson@jroberson.net) Received: from mail-pw0-f54.google.com (mail-pw0-f54.google.com [209.85.160.54]) by mx1.freebsd.org (Postfix) with ESMTP id BC01B8FC14 for ; Sun, 13 Jun 2010 09:34:32 +0000 (UTC) Received: by pwi3 with SMTP id 3so1314165pwi.13 for ; Sun, 13 Jun 2010 02:34:31 -0700 (PDT) Received: by 10.140.55.16 with SMTP id d16mr3299050rva.26.1276421666714; Sun, 13 Jun 2010 02:34:26 -0700 (PDT) Received: from [10.0.1.198] (udp022762uds.hawaiiantel.net [72.234.79.107]) by mx.google.com with ESMTPS id l29sm3405379rvb.16.2010.06.13.02.34.24 (version=SSLv3 cipher=RC4-MD5); Sun, 13 Jun 2010 02:34:25 -0700 (PDT) Date: Sat, 12 Jun 2010 23:35:03 -1000 (HST) From: Jeff Roberson X-X-Sender: jroberson@desktop To: "M. Warner Losh" In-Reply-To: <20100613.023223.972525811890973035.imp@bsdimp.com> Message-ID: References: <20100612.101458.10150326125744273.imp@bsdimp.com> <20100612.111805.94843338670897167.imp@bsdimp.com> <86zkz05bra.fsf@ds4.des.no> <20100613.023223.972525811890973035.imp@bsdimp.com> User-Agent: Alpine 2.00 (BSF 1167 2008-08-23) MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed Cc: des@des.no, arch@FreeBSD.org Subject: Re: Change to config(8) for OFED X-BeenThere: freebsd-arch@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion related to FreeBSD architecture List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 13 Jun 2010 09:34:37 -0000 On Sun, 13 Jun 2010, M. Warner Losh wrote: > In message: <86zkz05bra.fsf@ds4.des.no> > Dag-Erling Sm?rgrav writes: > : "M. Warner Losh" writes: > : > but NORMAL_C is > : > > : > NORMAL_C= ${CC} -c ${CFLAGS} ${WERROR} ${PROF} ${.IMPSRC} > : > > : > and .IMPSRC is null. That seems like a bug to me, but I'm not sure if > : > the bug is that .IMPSRC is computed wrong, or if it really should be > : > ${.ALLSRC} > : > : .IMPSRC is the *implicit* source and is only valid in *implicit* rules. > : Consider the following: > : > : .SUFFIXES: .foo .bar > : .foo.bar: foo2bar.sh > : /bin/sh foo2bar.sh ${.IMPSRC} ${.TARGET} > : > : When building hello.bar from hello.foo, .IMPSRC is "hello.foo" but .ALLSRC > : is "hello.foo foo2bar.sh". > > Yes, it appears to be set only when the target matches the object, so > the .c.o rule matches, even if the more specific one is used (where > there is not a match). > > : GNU make has a way of defining more complex implicit rules (pattern > : rules). If we had something similar, we could do: > : > : foo_%.o: %.c > : ${NORMAL_C} > > Yes. I'm starting to think that this would be necessary to implement > this properly. Or, as Jeff suggested, have config generate a complete > compile line with -o foo_bar.o -c bar.c in the line... Here's what I ended up with: In kern.pre.mk: +OFED_C_NOIMP= ${CC} -c ${OFEDCFLAGS} ${WERROR} ${OFEDNOERR} ${PROF} +OFED_C= ${OFED_C_NOIMP} ${.IMPSRC} I don't use NORMAL_C as linux doesn't use some warnings that we specify and I need to modify the include path to search the linux wrapper paths first. in files: +ofed/drivers/infiniband/hw/mlx4/ah.c optional mlx4 \ + no-depend obj-prefix "mlx4_" \ + compile-with "${OFED_C_NOIMP} -I$S/ofed/drivers/infiniband/hw/mlx4/" Generated Makefile: mlx4_ah.o: $S/ofed/drivers/infiniband/hw/mlx4/ah.c ${OFED_C_NOIMP} -I$S/ofed/drivers/infiniband/hw/mlx4/ $S/ofed/drivers/infiniband/hw/mlx4/ah.c And the patch to config: http://people.freebsd.org/~jeff/objprefix.diff The full source path is only emitted when an object prefix is set. If you don't like this diff please speak now before I commit. It will go to my private branch for ofed first but I'm sure I'll forget about it before I merge. I still need to change config so it will do proper depends for files which require extra includes. Before then I just specify no-depend for ib. Is it possible to set make variables within targets? I can export shell variables since that's an executable command. I could then refer to the shell variables in the scripts but that seems really gross. Thanks, Jeff > > Warner > From owner-freebsd-arch@FreeBSD.ORG Sun Jun 13 16:12:23 2010 Return-Path: Delivered-To: arch@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 16FC11065676 for ; Sun, 13 Jun 2010 16:12:23 +0000 (UTC) (envelope-from imp@bsdimp.com) Received: from harmony.bsdimp.com (bsdimp.com [199.45.160.85]) by mx1.freebsd.org (Postfix) with ESMTP id BADAA8FC0C for ; Sun, 13 Jun 2010 16:12:22 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by harmony.bsdimp.com (8.14.3/8.14.1) with ESMTP id o5DGA3SB020743; Sun, 13 Jun 2010 10:10:03 -0600 (MDT) (envelope-from imp@bsdimp.com) Date: Sun, 13 Jun 2010 10:10:06 -0600 (MDT) Message-Id: <20100613.101006.549303830244327332.imp@bsdimp.com> To: jroberson@jroberson.net From: "M. Warner Losh" In-Reply-To: References: <86zkz05bra.fsf@ds4.des.no> <20100613.023223.972525811890973035.imp@bsdimp.com> X-Mailer: Mew version 6.3 on Emacs 22.3 / Mule 5.0 (SAKAKI) Mime-Version: 1.0 Content-Type: Text/Plain; charset=us-ascii Content-Transfer-Encoding: 7bit Cc: des@des.no, arch@freebsd.org Subject: Re: Change to config(8) for OFED X-BeenThere: freebsd-arch@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion related to FreeBSD architecture List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 13 Jun 2010 16:12:23 -0000 In message: Jeff Roberson writes: : On Sun, 13 Jun 2010, M. Warner Losh wrote: : : > In message: <86zkz05bra.fsf@ds4.des.no> : > Dag-Erling Sm?rgrav writes: : > : "M. Warner Losh" writes: : > : > but NORMAL_C is : > : > : > : > NORMAL_C= ${CC} -c ${CFLAGS} ${WERROR} ${PROF} ${.IMPSRC} : > : > : > : > and .IMPSRC is null. That seems like a bug to me, but I'm not : > sure if : > : > the bug is that .IMPSRC is computed wrong, or if it really should : > be : > : > ${.ALLSRC} : > : : > : .IMPSRC is the *implicit* source and is only valid in *implicit* : > rules. : > : Consider the following: : > : : > : .SUFFIXES: .foo .bar : > : .foo.bar: foo2bar.sh : > : /bin/sh foo2bar.sh ${.IMPSRC} ${.TARGET} : > : : > : When building hello.bar from hello.foo, .IMPSRC is "hello.foo" but : > .ALLSRC : > : is "hello.foo foo2bar.sh". : > : > Yes, it appears to be set only when the target matches the object, so : > the .c.o rule matches, even if the more specific one is used (where : > there is not a match). : > : > : GNU make has a way of defining more complex implicit rules (pattern : > : rules). If we had something similar, we could do: : > : : > : foo_%.o: %.c : > : ${NORMAL_C} : > : > Yes. I'm starting to think that this would be necessary to implement : > this properly. Or, as Jeff suggested, have config generate a complete : > compile line with -o foo_bar.o -c bar.c in the line... : : Here's what I ended up with: : : In kern.pre.mk: : : +OFED_C_NOIMP= ${CC} -c ${OFEDCFLAGS} ${WERROR} ${OFEDNOERR} ${PROF} : +OFED_C= ${OFED_C_NOIMP} ${.IMPSRC} : : I don't use NORMAL_C as linux doesn't use some warnings that we : specify and I need to modify the include path to search the linux : wrapper paths first. : : in files: : +ofed/drivers/infiniband/hw/mlx4/ah.c optional mlx4 \ : + no-depend obj-prefix "mlx4_" \ : + compile-with "${OFED_C_NOIMP} -I$S/ofed/drivers/infiniband/hw/mlx4/" : : Generated Makefile: : mlx4_ah.o: $S/ofed/drivers/infiniband/hw/mlx4/ah.c : ${OFED_C_NOIMP} -I$S/ofed/drivers/infiniband/hw/mlx4/ : $S/ofed/drivers/infiniband/hw/mlx4/ah.c : : : And the patch to config: : http://people.freebsd.org/~jeff/objprefix.diff : : The full source path is only emitted when an object prefix is set. If : you don't like this diff please speak now before I commit. It will go : to my private branch for ofed first but I'm sure I'll forget about it : before I merge. : : I still need to change config so it will do proper depends for files : which require extra includes. Before then I just specify no-depend : for ib. : : Is it possible to set make variables within targets? I can export : shell variables since that's an executable command. I could then : refer to the shell variables in the scripts but that seems really : gross. No. You can't set make variables within targets, unless you are doing subtargets: foo.o: bar.c (cd subdir; make FRED=WILMA BARNEY=BETTY gerbils) Warner From owner-freebsd-arch@FreeBSD.ORG Mon Jun 14 10:56:15 2010 Return-Path: Delivered-To: arch@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 1A77C1065673 for ; Mon, 14 Jun 2010 10:56:15 +0000 (UTC) (envelope-from brde@optusnet.com.au) Received: from mail06.syd.optusnet.com.au (mail06.syd.optusnet.com.au [211.29.132.187]) by mx1.freebsd.org (Postfix) with ESMTP id A41E48FC1A for ; Mon, 14 Jun 2010 10:56:14 +0000 (UTC) Received: from c122-106-175-69.carlnfd1.nsw.optusnet.com.au (c122-106-175-69.carlnfd1.nsw.optusnet.com.au [122.106.175.69]) by mail06.syd.optusnet.com.au (8.13.1/8.13.1) with ESMTP id o5EAu1GJ024259 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO); Mon, 14 Jun 2010 20:56:03 +1000 Date: Mon, 14 Jun 2010 20:56:00 +1000 (EST) From: Bruce Evans X-X-Sender: bde@delplex.bde.org To: =?utf-8?Q?Dag-Erling_Sm=C3=B8rgrav?= In-Reply-To: <86zkz05bra.fsf@ds4.des.no> Message-ID: <20100614201541.B37598@delplex.bde.org> References: <20100612.101458.10150326125744273.imp@bsdimp.com> <20100612.111805.94843338670897167.imp@bsdimp.com> <86zkz05bra.fsf@ds4.des.no> MIME-Version: 1.0 Content-Type: MULTIPART/MIXED; BOUNDARY="0-542411416-1276512960=:37598" Cc: arch@FreeBSD.org Subject: Re: Change to config(8) for OFED X-BeenThere: freebsd-arch@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion related to FreeBSD architecture List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 14 Jun 2010 10:56:15 -0000 This message is in MIME format. The first part should be readable text, while the remaining parts are likely unreadable without MIME-aware tools. --0-542411416-1276512960=:37598 Content-Type: TEXT/PLAIN; charset=X-UNKNOWN; format=flowed Content-Transfer-Encoding: QUOTED-PRINTABLE On Sat, 12 Jun 2010, [utf-8] Dag-Erling Sm=C3=B8rgrav wrote: > "M. Warner Losh" writes: >> but NORMAL_C is >> >> NORMAL_C=3D ${CC} -c ${CFLAGS} ${WERROR} ${PROF} ${.IMPSRC} >> >> and .IMPSRC is null. That seems like a bug to me, but I'm not sure if >> the bug is that .IMPSRC is computed wrong, or if it really should be >> ${.ALLSRC} > > .IMPSRC is the *implicit* source and is only valid in *implicit* rules. However, NORMAL_C and related macros have always depended on it being defined to something reasonable so that they can abuse it in explicit rules. > Consider the following: > > .SUFFIXES: .foo .bar > .foo.bar: foo2bar.sh > /bin/sh foo2bar.sh ${.IMPSRC} ${.TARGET} > > When building hello.bar from hello.foo, .IMPSRC is "hello.foo" but .ALLSR= C > is "hello.foo foo2bar.sh". > > GNU make has a way of defining more complex implicit rules (pattern > rules). If we had something similar, we could do: > > foo_%.o: %.c > ${NORMAL_C} BSD make can handle simple cases like this using pattern filters and substitution. E.g.: %%% ABNORMAL_C=3D ${CC} -c ${CFLAGS} ${WERROR} ${PROF} ${.ALLSRC:M*.c:S/^foo_//= } # Untested more careful patterns: ${.ALLSRC:M^foo*.c$:S/^foo_//} bar.o: foo_bar.c stuff.nonc =09${ABNORMAL_C} %%% This has no alternative of using .IMPSRC instead of .ALLSRC since its =2EIMPSRC is empty with the above dependencies. The rule for getting a nonempty .IMPSRC in an explicit dependency with BSD makef seems to be: some of the sources must match the target according to a suffix rule; then the first matching one (according to the order of the sources in the dependency list for the target) becomes .IMPSRC, so .IMPSRC always contains either 0 or 1 name. I've don't remember having seen the exact rule documented. Bruce --0-542411416-1276512960=:37598-- From owner-freebsd-arch@FreeBSD.ORG Mon Jun 14 15:48:53 2010 Return-Path: Delivered-To: freebsd-arch@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 9BC071065675 for ; Mon, 14 Jun 2010 15:48:53 +0000 (UTC) (envelope-from mdf356@gmail.com) Received: from mail-gw0-f54.google.com (mail-gw0-f54.google.com [74.125.83.54]) by mx1.freebsd.org (Postfix) with ESMTP id 51B578FC1B for ; Mon, 14 Jun 2010 15:48:53 +0000 (UTC) Received: by gwj20 with SMTP id 20so3216101gwj.13 for ; Mon, 14 Jun 2010 08:48:52 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:received:sender:received:date :x-google-sender-auth:message-id:subject:from:to:content-type; bh=sX1cXoXgkaunD3q+ZDz37WVpJhW3MhIshQX7sHNK06U=; b=TaT3fCPcSzxsobLfJVBFUxenVB2EqRx0JIQ1dL1O+jBO6Vg3sJ/v5op9AwUUDF4Two ddGMFT2UA6Uh+DNYVkDE5h+BoHFjr+blFzJsGLQbdUYL8A8ZK6RQhb6oSSbc9slSSwWc MTGfr4HQMOJ210f5RySwBhjN14dtfR+2hg+xU= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:sender:date:x-google-sender-auth:message-id:subject :from:to:content-type; b=mRdcm23JyvdLQMohrDoCnqxRtYsnJAB2V5CLYDC1zx6Vzou8Q3dksKtfJAbBO4auzs VMImf0giIkPeK8s/P3j83HD87jUqMt5YLVLlIMO6+BM6EpZJl9n5gADBoYTCIGU4R0OV 4f+c0gNQWTwx3TpxeOl3HyTTN2VxAF8KUJNV0= MIME-Version: 1.0 Received: by 10.224.114.155 with SMTP id e27mr2315172qaq.202.1276529205892; Mon, 14 Jun 2010 08:26:45 -0700 (PDT) Sender: mdf356@gmail.com Received: by 10.224.28.79 with HTTP; Mon, 14 Jun 2010 08:26:45 -0700 (PDT) Date: Mon, 14 Jun 2010 08:26:45 -0700 X-Google-Sender-Auth: ThfXEE3OOSMuOysEza5M1zn_16g Message-ID: From: mdf@FreeBSD.org To: freebsd-arch@freebsd.org Content-Type: text/plain; charset=ISO-8859-1 Subject: arch-specific directories X-BeenThere: freebsd-arch@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion related to FreeBSD architecture List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 14 Jun 2010 15:48:53 -0000 This is as much as request for information as a suggestion. I am wondering of the current layout of sys/ make sense given that in several cases the only difference between two "arch" is the bitness, e.g. powerpc and powerpc64. The 64-bit version supports a few new instructions, but in many cases is the same. The same issue exists with i386/amd64 but because both have been supported for a long time the have full arch separation. However, there has been some movement of files that are common between i386 and amd64 into a common x86 directory. So what I'm wondering is it it makes more sense to have files broken up more like: sys/ for common file between bitness sys//32 sys//64 for files that are specific to the bitness This would presumably serve at least powerpc and i386/amd64 well, and though I don't know for sure I assume at the moment that it works for sun/sparc as well. So... is this reasonable? Or does the existence of ia64 throw a monkey wrench into this layout? Is it not worth the shuffle (though I'd argue that, if we're moving some files to x86 and creating a new powerpc64 that it's better to consider now than later). I realize there was a discussion earlier along similar lines (the bi-yearly architecture source tree layout discussion) but I don't think it was specifically considering the 32/64 bit differences, which seem to be more common now. Thanks, matthew From owner-freebsd-arch@FreeBSD.ORG Mon Jun 14 15:54:52 2010 Return-Path: Delivered-To: arch@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 04C381065678 for ; Mon, 14 Jun 2010 15:54:52 +0000 (UTC) (envelope-from imp@bsdimp.com) Received: from harmony.bsdimp.com (bsdimp.com [199.45.160.85]) by mx1.freebsd.org (Postfix) with ESMTP id 96F068FC22 for ; Mon, 14 Jun 2010 15:54:51 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by harmony.bsdimp.com (8.14.3/8.14.1) with ESMTP id o5EFib6d024136; Mon, 14 Jun 2010 09:44:37 -0600 (MDT) (envelope-from imp@bsdimp.com) Date: Mon, 14 Jun 2010 09:44:40 -0600 (MDT) Message-Id: <20100614.094440.321689434066253255.imp@bsdimp.com> To: brde@optusnet.com.au From: "M. Warner Losh" In-Reply-To: <20100614201541.B37598@delplex.bde.org> References: <20100612.111805.94843338670897167.imp@bsdimp.com> <86zkz05bra.fsf@ds4.des.no> <20100614201541.B37598@delplex.bde.org> X-Mailer: Mew version 6.3 on Emacs 22.3 / Mule 5.0 (SAKAKI) Mime-Version: 1.0 Content-Type: Text/Plain; charset=iso-8859-1 Content-Transfer-Encoding: quoted-printable Cc: des@des.no, arch@FreeBSD.org Subject: Re: Change to config(8) for OFED X-BeenThere: freebsd-arch@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion related to FreeBSD architecture List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 14 Jun 2010 15:54:52 -0000 In message: <20100614201541.B37598@delplex.bde.org> Bruce Evans writes: : On Sat, 12 Jun 2010, [utf-8] Dag-Erling Sm=C3=B8rgrav wrote: : = : > "M. Warner Losh" writes: : >> but NORMAL_C is : >> : >> NORMAL_C=3D ${CC} -c ${CFLAGS} ${WERROR} ${PROF} ${.IMPSRC} : >> : >> and .IMPSRC is null. That seems like a bug to me, but I'm not sur= e if : >> the bug is that .IMPSRC is computed wrong, or if it really should = be : >> ${.ALLSRC} : > : > .IMPSRC is the *implicit* source and is only valid in *implicit* : > rules. : = : However, NORMAL_C and related macros have always depended on it being= : defined to something reasonable so that they can abuse it in explicit= : rules. : = : > Consider the following: : > : > .SUFFIXES: .foo .bar : > .foo.bar: foo2bar.sh : > /bin/sh foo2bar.sh ${.IMPSRC} ${.TARGET} : > : > When building hello.bar from hello.foo, .IMPSRC is "hello.foo" but : > .ALLSRC : > is "hello.foo foo2bar.sh". : > : > GNU make has a way of defining more complex implicit rules (pattern= : > rules). If we had something similar, we could do: : > : > foo_%.o: %.c : > ${NORMAL_C} : = : BSD make can handle simple cases like this using pattern filters and : substitution. E.g.: : = : %%% : ABNORMAL_C=3D ${CC} -c ${CFLAGS} ${WERROR} ${PROF} : ${.ALLSRC:M*.c:S/^foo_//} : # Untested more careful patterns: ${.ALLSRC:M^foo*.c$:S/^foo_//} : = : bar.o: foo_bar.c stuff.nonc : ${ABNORMAL_C} : %%% That would work. Not sure I like it, but it would work. : This has no alternative of using .IMPSRC instead of .ALLSRC since its= : .IMPSRC is empty with the above dependencies. The rule for getting a= : nonempty .IMPSRC in an explicit dependency with BSD makef seems to be= : : : some of the sources must match the target according to a suffix : rule; then the first matching one (according to the order of the : sources in the dependency list for the target) becomes .IMPSRC, : so .IMPSRC always contains either 0 or 1 name. : = : I've don't remember having seen the exact rule documented. I've never seen this rule documented either. It is only a repeated observation that I've seen over the years. When I tried to chase it into the source, I couldn't find the place that did this... Warner From owner-freebsd-arch@FreeBSD.ORG Mon Jun 14 17:27:12 2010 Return-Path: Delivered-To: freebsd-arch@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 144AE1065673; Mon, 14 Jun 2010 17:27:12 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from cyrus.watson.org (cyrus.watson.org [65.122.17.42]) by mx1.freebsd.org (Postfix) with ESMTP id DB9738FC17; Mon, 14 Jun 2010 17:27:11 +0000 (UTC) Received: from bigwig.baldwin.cx (66.111.2.69.static.nyinternet.net [66.111.2.69]) by cyrus.watson.org (Postfix) with ESMTPSA id 8D06946B8A; Mon, 14 Jun 2010 13:27:11 -0400 (EDT) Received: from jhbbsd.localnet (smtp.hudson-trading.com [209.249.190.9]) by bigwig.baldwin.cx (Postfix) with ESMTPSA id A0FEC8A03C; Mon, 14 Jun 2010 13:27:10 -0400 (EDT) From: John Baldwin To: freebsd-arch@freebsd.org Date: Mon, 14 Jun 2010 12:51:45 -0400 User-Agent: KMail/1.12.1 (FreeBSD/7.3-CBSD-20100217; KDE/4.3.1; amd64; ; ) References: In-Reply-To: MIME-Version: 1.0 Content-Type: Text/Plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit Message-Id: <201006141251.45896.jhb@freebsd.org> X-Greylist: Sender succeeded SMTP AUTH, not delayed by milter-greylist-4.0.1 (bigwig.baldwin.cx); Mon, 14 Jun 2010 13:27:10 -0400 (EDT) X-Virus-Scanned: clamav-milter 0.95.1 at bigwig.baldwin.cx X-Virus-Status: Clean X-Spam-Status: No, score=-2.5 required=4.2 tests=AWL,BAYES_00 autolearn=ham version=3.2.5 X-Spam-Checker-Version: SpamAssassin 3.2.5 (2008-06-10) on bigwig.baldwin.cx Cc: mdf@freebsd.org Subject: Re: arch-specific directories X-BeenThere: freebsd-arch@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion related to FreeBSD architecture List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 14 Jun 2010 17:27:12 -0000 On Monday 14 June 2010 11:26:45 am mdf@freebsd.org wrote: > This is as much as request for information as a suggestion. > > I am wondering of the current layout of sys/ make sense given > that in several cases the only difference between two "arch" is the > bitness, e.g. powerpc and powerpc64. The 64-bit version supports a > few new instructions, but in many cases is the same. The same issue > exists with i386/amd64 but because both have been supported for a long > time the have full arch separation. However, there has been some > movement of files that are common between i386 and amd64 into a common > x86 directory. > > So what I'm wondering is it it makes more sense to have files broken > up more like: > > sys/ for common file between bitness > sys//32 > sys//64 for files that are specific to the bitness > > This would presumably serve at least powerpc and i386/amd64 well, and > though I don't know for sure I assume at the moment that it works for > sun/sparc as well. > > So... is this reasonable? Or does the existence of ia64 throw a > monkey wrench into this layout? Is it not worth the shuffle (though > I'd argue that, if we're moving some files to x86 and creating a new > powerpc64 that it's better to consider now than later). > > I realize there was a discussion earlier along similar lines (the > bi-yearly architecture source tree layout discussion) but I don't > think it was specifically considering the 32/64 bit differences, which > seem to be more common now. I think for archs that share a lot in common between 32-bit and 64-bit varieties using shared sources of some sort (e.g. sys/x86) should be encouraged. This is probably more true (and feasible) for more recently added architectures such as powerpc, arm, and mips. Alpha and ia64 would not have fit into this category. Since we do not support 32-bit sparc, sparc64 doesn't really fit into it either. However, I think that some of our build infrastructure assumes that that the current MACHINE/TARGET is in the path, so e.g. make buildkernel uses sys/$TARGET/conf to find the kernel config file to build, so we may be stuck with some of the layout differences at the top-level. I suspect the arm, powerpc, and mips target names are already embedded at this point, but I would not mind an organization where common code lived in sys/mips and 32-bit and 64-bit bits lived in sys/mips32 and sys/mips64. (That would work with the existing kernel config path assumptions, but require changing 'arm' -> 'arm32', etc. for MACHINE/TARGET). I'm sure Warner has some ideas on this topic as well. -- John Baldwin From owner-freebsd-arch@FreeBSD.ORG Mon Jun 14 18:01:49 2010 Return-Path: Delivered-To: freebsd-arch@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 0258D106566C; Mon, 14 Jun 2010 18:01:49 +0000 (UTC) (envelope-from nwhitehorn@freebsd.org) Received: from argol.doit.wisc.edu (argol.doit.wisc.edu [144.92.197.212]) by mx1.freebsd.org (Postfix) with ESMTP id CAEAF8FC24; Mon, 14 Jun 2010 18:01:48 +0000 (UTC) MIME-version: 1.0 Content-transfer-encoding: 7BIT Content-type: text/plain; CHARSET=US-ASCII Received: from avs-daemon.smtpauth3.wiscmail.wisc.edu by smtpauth3.wiscmail.wisc.edu (Sun Java(tm) System Messaging Server 7u2-7.05 32bit (built Jul 30 2009)) id <0L4000904KMYE700@smtpauth3.wiscmail.wisc.edu>; Mon, 14 Jun 2010 12:01:46 -0500 (CDT) Received: from anacreon.physics.wisc.edu (anacreon.physics.wisc.edu [128.104.160.176]) by smtpauth3.wiscmail.wisc.edu (Sun Java(tm) System Messaging Server 7u2-7.05 32bit (built Jul 30 2009)) with ESMTPSA id <0L40006B2KMUWS30@smtpauth3.wiscmail.wisc.edu>; Mon, 14 Jun 2010 12:01:42 -0500 (CDT) Date: Mon, 14 Jun 2010 12:01:41 -0500 From: Nathan Whitehorn In-reply-to: To: mdf@FreeBSD.org Message-id: <20100614120141.3876ec6d@anacreon.physics.wisc.edu> X-Mailer: Claws Mail 3.7.6 (GTK+ 2.20.1; powerpc64-portbld-freebsd9.0) X-Spam-Report: AuthenticatedSender=yes, SenderIP=128.104.160.176 X-Spam-PmxInfo: Server=avs-12, Version=5.5.9.395186, Antispam-Engine: 2.7.2.376379, Antispam-Data: 2010.6.14.165113, SenderIP=128.104.160.176 References: Cc: freebsd-arch@freebsd.org Subject: Re: arch-specific directories X-BeenThere: freebsd-arch@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion related to FreeBSD architecture List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 14 Jun 2010 18:01:49 -0000 On Mon, 14 Jun 2010 08:26:45 -0700 mdf@FreeBSD.org wrote: > This is as much as request for information as a suggestion. > > I am wondering of the current layout of sys/ make sense given > that in several cases the only difference between two "arch" is the > bitness, e.g. powerpc and powerpc64. The 64-bit version supports a > few new instructions, but in many cases is the same. The same issue > exists with i386/amd64 but because both have been supported for a long > time the have full arch separation. However, there has been some > movement of files that are common between i386 and amd64 into a common > x86 directory. > > So what I'm wondering is it it makes more sense to have files broken > up more like: > > sys/ for common file between bitness > sys//32 > sys//64 for files that are specific to the bitness > > This would presumably serve at least powerpc and i386/amd64 well, and > though I don't know for sure I assume at the moment that it works for > sun/sparc as well. PowerPC actually does something very similar to what you suggest -- the sys/powerpc64 directory is a stub (containing only symlinks) that will go away when the projects/ppc64 branch is merged. Almost everything to do with the 32/64-bit difference is keyed off of #ifdef __powerpc64__, which has several nice side effects, like allowing cc -m32 to work, as well as simplifying maintenance by using a common code base. Having written support for a "new" platform this way, I can attest that shared code like you suggest is a very good idea. > So... is this reasonable? Or does the existence of ia64 throw a > monkey wrench into this layout? Is it not worth the shuffle (though > I'd argue that, if we're moving some files to x86 and creating a new > powerpc64 that it's better to consider now than later). > > I realize there was a discussion earlier along similar lines (the > bi-yearly architecture source tree layout discussion) but I don't > think it was specifically considering the 32/64 bit differences, which > seem to be more common now. The larger scope of this is the work being done by M. Warner Losh (the "TARGET_BIG_ENDIAN must die" branch), which he is currently merging. This defines a new thing, MACHINE_CPUARCH, that would be 'powerpc', with MACHINE_ARCH values of 'powerpc' and 'powerpc64', and is what will allow sys/powerpc64 to disappear. I'm sure he can describe it in more detail. -Nathan From owner-freebsd-arch@FreeBSD.ORG Mon Jun 14 19:49:16 2010 Return-Path: Delivered-To: freebsd-arch@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 425101065672; Mon, 14 Jun 2010 19:49:16 +0000 (UTC) (envelope-from xcllnt@mac.com) Received: from asmtpout026.mac.com (asmtpout026.mac.com [17.148.16.101]) by mx1.freebsd.org (Postfix) with ESMTP id 284C08FC0A; Mon, 14 Jun 2010 19:49:15 +0000 (UTC) MIME-version: 1.0 Content-transfer-encoding: 7BIT Content-type: text/plain; charset=us-ascii Received: from macbook-pro.jnpr.net (natint3.juniper.net [66.129.224.36]) by asmtp026.mac.com (Sun Java(tm) System Messaging Server 6.3-8.01 (built Dec 16 2008; 32bit)) with ESMTPSA id <0L4000CDMSDL8L30@asmtp026.mac.com>; Mon, 14 Jun 2010 12:48:58 -0700 (PDT) X-Proofpoint-Spam-Details: rule=notspam policy=default score=7 spamscore=7 ipscore=0 phishscore=0 bulkscore=6 adultscore=0 classifier=spam adjust=0 reason=mlx engine=6.0.2-1004200000 definitions=main-1006140121 X-Proofpoint-Virus-Version: vendor=fsecure engine=1.12.8161:2.4.5,1.2.40,4.0.166 definitions=2010-06-14_02:2010-02-06, 2010-06-14, 2010-06-14 signatures=0 From: Marcel Moolenaar In-reply-to: <201006141251.45896.jhb@freebsd.org> Date: Mon, 14 Jun 2010 12:48:57 -0700 Message-id: <890AAD1E-0863-4B1C-90C5-1BA9107EAD6C@mac.com> References: <201006141251.45896.jhb@freebsd.org> To: John Baldwin X-Mailer: Apple Mail (2.1078) Cc: mdf@freebsd.org, freebsd-arch@freebsd.org Subject: Re: arch-specific directories X-BeenThere: freebsd-arch@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion related to FreeBSD architecture List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 14 Jun 2010 19:49:16 -0000 On Jun 14, 2010, at 9:51 AM, John Baldwin wrote: > > I think for archs that share a lot in common between 32-bit and 64-bit > varieties using shared sources of some sort (e.g. sys/x86) should be > encouraged. This is probably more true (and feasible) for more recently added > architectures such as powerpc, arm, and mips. Alpha and ia64 would not have > fit into this category. ia64 has both a 32-bit runtime as well as a 64-bit runtime defined. Only HP-UX exploits the 32-bit runtime, because it eased porting from PA-RISC to IA-64 without the 64-bit issue. We don't implement the ILP32 runtime, but the feasibility is still there. This puts ia64 in the same bucket as powerpc, arm and mips. Also note that ia64 supports both big-endian and little-endian. While we only support little-endian at this time, there's still the feasibility for big-endian. This puts ia64 in the same bucket as arm and mips. -- Marcel Moolenaar xcllnt@mac.com From owner-freebsd-arch@FreeBSD.ORG Thu Jun 17 20:38:16 2010 Return-Path: Delivered-To: arch@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id B0A7A106564A for ; Thu, 17 Jun 2010 20:38:16 +0000 (UTC) (envelope-from imp@bsdimp.com) Received: from harmony.bsdimp.com (bsdimp.com [199.45.160.85]) by mx1.freebsd.org (Postfix) with ESMTP id 64FD58FC08 for ; Thu, 17 Jun 2010 20:38:16 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by harmony.bsdimp.com (8.14.3/8.14.1) with ESMTP id o5HKXUWC073455 for ; Thu, 17 Jun 2010 14:33:30 -0600 (MDT) (envelope-from imp@bsdimp.com) Date: Thu, 17 Jun 2010 14:33:34 -0600 (MDT) Message-Id: <20100617.143334.584432776655157077.imp@bsdimp.com> To: arch@FreeBSD.org From: "M. Warner Losh" X-Mailer: Mew version 6.3 on Emacs 22.3 / Mule 5.0 (SAKAKI) Mime-Version: 1.0 Content-Type: Text/Plain; charset=us-ascii Content-Transfer-Encoding: 7bit Cc: Subject: Time to stop stripping binaries? X-BeenThere: freebsd-arch@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion related to FreeBSD architecture List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 17 Jun 2010 20:38:16 -0000 Greetings, Now that disks are big, can we stop stripping binaries by default? I've worked up a patch that lets you set WITH_BINARY_SYMBOLS or WITHOUT_BINARY_SYMBOLS as you see fit. We should commit it regardless of the outcome of this discussion (well, defaulting to yes or no depending on the outcome). Why symbols: it makes core dumps easier to debug. Why no symbols: makes the system footprint bigger. Since there's good arguments both ways, I thought I'd make this a knob. Comments? Warner Index: bsd.own.mk =================================================================== --- bsd.own.mk (revision 209268) +++ bsd.own.mk (working copy) @@ -303,6 +303,7 @@ ATM \ AUDIT \ AUTHPF \ + BINARY_SYMBOLS \ BIND \ BIND_DNSSEC \ BIND_ETC \ Index: bsd.lib.mk =================================================================== --- bsd.lib.mk (revision 209268) +++ bsd.lib.mk (working copy) @@ -46,7 +46,7 @@ .endif .endif -.if !defined(DEBUG_FLAGS) +.if !defined(DEBUG_FLAGS) || ${MK_BINARY_SYMBOLS} == "no" STRIP?= -s .endif Index: bsd.prog.mk =================================================================== --- bsd.prog.mk (revision 209268) +++ bsd.prog.mk (working copy) @@ -33,7 +33,7 @@ CFLAGS+=${CRUNCH_CFLAGS} .endif -.if !defined(DEBUG_FLAGS) +.if !defined(DEBUG_FLAGS) || ${MK_BINARY_SYMBOLS} == "no" STRIP?= -s .endif From owner-freebsd-arch@FreeBSD.ORG Thu Jun 17 20:56:58 2010 Return-Path: Delivered-To: freebsd-arch@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 7DAF0106566B for ; Thu, 17 Jun 2010 20:56:58 +0000 (UTC) (envelope-from delphij@delphij.net) Received: from tarsier.geekcn.org (tarsier.geekcn.org [IPv6:2001:470:a803::1]) by mx1.freebsd.org (Postfix) with ESMTP id 170588FC14 for ; Thu, 17 Jun 2010 20:56:58 +0000 (UTC) Received: from mail.geekcn.org (tarsier.geekcn.org [211.166.10.233]) by tarsier.geekcn.org (Postfix) with ESMTP id F34F8A571E2; Fri, 18 Jun 2010 04:56:56 +0800 (CST) X-Virus-Scanned: amavisd-new at geekcn.org Received: from tarsier.geekcn.org ([211.166.10.233]) by mail.geekcn.org (mail.geekcn.org [211.166.10.233]) (amavisd-new, port 10024) with LMTP id dsJqPw-KZ9NW; Fri, 18 Jun 2010 04:56:50 +0800 (CST) Received: from delta.delphij.net (drawbridge.ixsystems.com [206.40.55.65]) (using TLSv1 with cipher DHE-RSA-CAMELLIA256-SHA (256/256 bits)) (No client certificate requested) by tarsier.geekcn.org (Postfix) with ESMTPSA id 149C9A56C4C; Fri, 18 Jun 2010 04:56:48 +0800 (CST) DomainKey-Signature: a=rsa-sha1; s=default; d=delphij.net; c=nofws; q=dns; h=message-id:date:from:reply-to:organization:user-agent: mime-version:to:subject:references:in-reply-to:x-enigmail-version:openpgp: content-type:content-transfer-encoding; b=kc6ClIPAm+5lXvfGzKeNZ1NcxTqT0+ezSJ+BX2Q1YrofnzXva/Xb3VCp4HEY+kqDW OYJxzA8I3zHlf7DzstT+w== Message-ID: <4C1A8C0C.8010207@delphij.net> Date: Thu, 17 Jun 2010 13:56:44 -0700 From: Xin LI Organization: The Geek China Organization User-Agent: Mozilla/5.0 (X11; U; FreeBSD amd64; en-US; rv:1.9.1.9) Gecko/20100602 Thunderbird/3.0.4 ThunderBrowse/3.2.8.1 MIME-Version: 1.0 To: freebsd-arch@freebsd.org References: <20100617.143334.584432776655157077.imp@bsdimp.com> In-Reply-To: <20100617.143334.584432776655157077.imp@bsdimp.com> X-Enigmail-Version: 1.0.1 OpenPGP: id=3FCA37C1; url=http://www.delphij.net/delphij.asc Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Subject: Re: Time to stop stripping binaries? X-BeenThere: freebsd-arch@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: d@delphij.net List-Id: Discussion related to FreeBSD architecture List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 17 Jun 2010 20:56:58 -0000 -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA256 On 2010/06/17 13:33, M. Warner Losh wrote: > Greetings, > > Now that disks are big, can we stop stripping binaries by default? > > I've worked up a patch that lets you set WITH_BINARY_SYMBOLS or > WITHOUT_BINARY_SYMBOLS as you see fit. We should commit it regardless > of the outcome of this discussion (well, defaulting to yes or no > depending on the outcome). > > Why symbols: it makes core dumps easier to debug. > Why no symbols: makes the system footprint bigger. > > Since there's good arguments both ways, I thought I'd make this a > knob. I think this is a good idea. A related quick question: is there any performance penalty if we ship non-stripped binaries? I think we would probably have to map the whole image (including the symbols) into memory? Cheers, - -- Xin LI http://www.delphij.net/ FreeBSD - The Power to Serve! Live free or die -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.14 (FreeBSD) iQEcBAEBCAAGBQJMGowMAAoJEATO+BI/yjfBbdcH/3V+bu1wHM+d6PgouWXNI7oh VkcZr5DHxyMe0IXLce4YTfA1CgIO+0YINYDq4VJ8zRVaqY+Ni6Wl5EhZNkV+YXWY Fb9+X0xavl5Cu6bTibF+7ml1dWTgcquWIqC7+VhR5itnOB0sZeTVjTQRJ72Unc79 k+DAKdHqMajhPwBnMmYPcUphSzTFcYRAi2z19g9cW/TNMg2vO6ENk6sNFQY1ro0V n4x2tLShA72ZTgSAMs3++OgX684eg0oAwFI9XKv0pols12KRoUYYynVi4qPvUWnv 3c2HmGIYYPIcGAHE9DqAv0k1RGxCB0xhg9X1VJ69UVNH7VwZ/1C15nmsrKZ69dg= =bVeA -----END PGP SIGNATURE----- From owner-freebsd-arch@FreeBSD.ORG Thu Jun 17 21:04:27 2010 Return-Path: Delivered-To: freebsd-arch@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id ED3DB1065673 for ; Thu, 17 Jun 2010 21:04:27 +0000 (UTC) (envelope-from roberto@keltia.net) Received: from keltia.net (unknown [IPv6:2a01:240:fe5c::41]) by mx1.freebsd.org (Postfix) with ESMTP id A12708FC08 for ; Thu, 17 Jun 2010 21:04:27 +0000 (UTC) Received: from lonrach.local (unknown [IPv6:2a01:240:fe5c:0:d69a:20ff:fed0:3a83]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) (Authenticated sender: roberto) by keltia.net (Postfix/TLS) with ESMTPSA id 4E8B17775 for ; Thu, 17 Jun 2010 23:04:25 +0200 (CEST) Date: Thu, 17 Jun 2010 23:04:21 +0200 From: Ollivier Robert To: freebsd-arch@freebsd.org Message-ID: <20100617210420.GA8042@lonrach.local> References: <20100617.143334.584432776655157077.imp@bsdimp.com> <4C1A8C0C.8010207@delphij.net> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <4C1A8C0C.8010207@delphij.net> X-Operating-System: MacOS X / MBP 4,1 - FreeBSD 8.0 / T3500-E5520 Nehalem User-Agent: Mutt/1.5.20 (2009-06-14) X-Greylist: Sender succeeded SMTP AUTH, not delayed by milter-greylist-4.2.3 (keltia.net); Thu, 17 Jun 2010 23:04:25 +0200 (CEST) Subject: Re: Time to stop stripping binaries? X-BeenThere: freebsd-arch@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion related to FreeBSD architecture List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 17 Jun 2010 21:04:28 -0000 According to Xin LI: > A related quick question: is there any performance penalty if we ship > non-stripped binaries? I think we would probably have to map the whole > image (including the symbols) into memory? Symbols are in a separate ELF section and are not mapped by default IIRC. -- Ollivier ROBERT -=- FreeBSD: The Power to Serve! -=- roberto@keltia.freenix.fr In memoriam to Ondine : http://ondine.keltia.net/ From owner-freebsd-arch@FreeBSD.ORG Thu Jun 17 21:21:33 2010 Return-Path: Delivered-To: freebsd-arch@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id B9B4D1065679; Thu, 17 Jun 2010 21:21:33 +0000 (UTC) (envelope-from imp@bsdimp.com) Received: from harmony.bsdimp.com (bsdimp.com [199.45.160.85]) by mx1.freebsd.org (Postfix) with ESMTP id 7A5E98FC18; Thu, 17 Jun 2010 21:21:33 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by harmony.bsdimp.com (8.14.3/8.14.1) with ESMTP id o5HLK3Sd074642; Thu, 17 Jun 2010 15:20:03 -0600 (MDT) (envelope-from imp@bsdimp.com) Date: Thu, 17 Jun 2010 15:20:07 -0600 (MDT) Message-Id: <20100617.152007.59640143227150173.imp@bsdimp.com> To: mdf@FreeBSD.org From: "M. Warner Losh" In-Reply-To: References: X-Mailer: Mew version 6.3 on Emacs 22.3 / Mule 5.0 (SAKAKI) Mime-Version: 1.0 Content-Type: Text/Plain; charset=us-ascii Content-Transfer-Encoding: 7bit Cc: freebsd-arch@FreeBSD.org Subject: Re: arch-specific directories X-BeenThere: freebsd-arch@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion related to FreeBSD architecture List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 17 Jun 2010 21:21:33 -0000 In message: mdf@FreeBSD.org writes: : This is as much as request for information as a suggestion. : : I am wondering of the current layout of sys/ make sense given : that in several cases the only difference between two "arch" is the : bitness, e.g. powerpc and powerpc64. The 64-bit version supports a : few new instructions, but in many cases is the same. The same issue : exists with i386/amd64 but because both have been supported for a long : time the have full arch separation. However, there has been some : movement of files that are common between i386 and amd64 into a common : x86 directory. : : So what I'm wondering is it it makes more sense to have files broken : up more like: : : sys/ for common file between bitness : sys//32 : sys//64 for files that are specific to the bitness What files would these be for powerpc? I thought Nathan's stuff was common. i know that on MIPS they are common... : This would presumably serve at least powerpc and i386/amd64 well, and : though I don't know for sure I assume at the moment that it works for : sun/sparc as well. : : So... is this reasonable? Or does the existence of ia64 throw a : monkey wrench into this layout? Is it not worth the shuffle (though : I'd argue that, if we're moving some files to x86 and creating a new : powerpc64 that it's better to consider now than later). we're not creating a new sys/powerpc64, I don't think. That's why nathan's work depends on my tbemd tree. ia64 doesn't matter in this discussion. It is a different architecture entirely. Warner From owner-freebsd-arch@FreeBSD.ORG Thu Jun 17 21:28:49 2010 Return-Path: Delivered-To: freebsd-arch@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 352801065673; Thu, 17 Jun 2010 21:28:49 +0000 (UTC) (envelope-from imp@bsdimp.com) Received: from harmony.bsdimp.com (bsdimp.com [199.45.160.85]) by mx1.freebsd.org (Postfix) with ESMTP id EC2A58FC13; Thu, 17 Jun 2010 21:28:48 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by harmony.bsdimp.com (8.14.3/8.14.1) with ESMTP id o5HLONb4074731; Thu, 17 Jun 2010 15:24:23 -0600 (MDT) (envelope-from imp@bsdimp.com) Date: Thu, 17 Jun 2010 15:24:26 -0600 (MDT) Message-Id: <20100617.152426.956847443218256651.imp@bsdimp.com> To: nwhitehorn@FreeBSD.org From: "M. Warner Losh" In-Reply-To: <20100614120141.3876ec6d@anacreon.physics.wisc.edu> References: <20100614120141.3876ec6d@anacreon.physics.wisc.edu> X-Mailer: Mew version 6.3 on Emacs 22.3 / Mule 5.0 (SAKAKI) Mime-Version: 1.0 Content-Type: Text/Plain; charset=us-ascii Content-Transfer-Encoding: 7bit Cc: mdf@FreeBSD.org, freebsd-arch@FreeBSD.org Subject: Re: arch-specific directories X-BeenThere: freebsd-arch@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion related to FreeBSD architecture List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 17 Jun 2010 21:28:49 -0000 In message: <20100614120141.3876ec6d@anacreon.physics.wisc.edu> Nathan Whitehorn writes: : The larger scope of this is the work being done by M. Warner Losh (the : "TARGET_BIG_ENDIAN must die" branch), which he is currently merging. : This defines a new thing, MACHINE_CPUARCH, that would be 'powerpc', : with MACHINE_ARCH values of 'powerpc' and 'powerpc64', and is what will : allow sys/powerpc64 to disappear. I'm sure he can describe it in more : detail. I've started merging this stuff, but haven't finished yet.. MACHINE_CPUARCH is present, but I've not merged all the places that are used... Warner From owner-freebsd-arch@FreeBSD.ORG Thu Jun 17 21:29:04 2010 Return-Path: Delivered-To: freebsd-arch@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 92A7E1065702 for ; Thu, 17 Jun 2010 21:29:04 +0000 (UTC) (envelope-from imp@bsdimp.com) Received: from harmony.bsdimp.com (bsdimp.com [199.45.160.85]) by mx1.freebsd.org (Postfix) with ESMTP id 552DD8FC14 for ; Thu, 17 Jun 2010 21:29:04 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by harmony.bsdimp.com (8.14.3/8.14.1) with ESMTP id o5HLQQ84074737; Thu, 17 Jun 2010 15:26:26 -0600 (MDT) (envelope-from imp@bsdimp.com) Date: Thu, 17 Jun 2010 15:26:30 -0600 (MDT) Message-Id: <20100617.152630.460114267490874908.imp@bsdimp.com> To: d@delphij.net, delphij@delphij.net From: "M. Warner Losh" In-Reply-To: <4C1A8C0C.8010207@delphij.net> References: <20100617.143334.584432776655157077.imp@bsdimp.com> <4C1A8C0C.8010207@delphij.net> X-Mailer: Mew version 6.3 on Emacs 22.3 / Mule 5.0 (SAKAKI) Mime-Version: 1.0 Content-Type: Text/Plain; charset=us-ascii Content-Transfer-Encoding: 7bit Cc: freebsd-arch@FreeBSD.org Subject: Re: Time to stop stripping binaries? X-BeenThere: freebsd-arch@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion related to FreeBSD architecture List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 17 Jun 2010 21:29:04 -0000 In message: <4C1A8C0C.8010207@delphij.net> Xin LI writes: : -----BEGIN PGP SIGNED MESSAGE----- : Hash: SHA256 : : On 2010/06/17 13:33, M. Warner Losh wrote: : > Greetings, : > : > Now that disks are big, can we stop stripping binaries by default? : > : > I've worked up a patch that lets you set WITH_BINARY_SYMBOLS or : > WITHOUT_BINARY_SYMBOLS as you see fit. We should commit it regardless : > of the outcome of this discussion (well, defaulting to yes or no : > depending on the outcome). : > : > Why symbols: it makes core dumps easier to debug. : > Why no symbols: makes the system footprint bigger. : > : > Since there's good arguments both ways, I thought I'd make this a : > knob. : : I think this is a good idea. : : A related quick question: is there any performance penalty if we ship : non-stripped binaries? I think we would probably have to map the whole : image (including the symbols) into memory? No. The symbols are tacked on the end of the file. The system only maps in the header of the binary. It then allocates virtual memory space for the various sections, and then jumps to the binary[*]. It ignores the symbols. Warner [*] Yes, I know this grossly oversimplifies things, but the other details aren't relevant to this discussion... From owner-freebsd-arch@FreeBSD.ORG Thu Jun 17 21:29:05 2010 Return-Path: Delivered-To: freebsd-arch@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 2756E1065703; Thu, 17 Jun 2010 21:29:05 +0000 (UTC) (envelope-from imp@bsdimp.com) Received: from harmony.bsdimp.com (bsdimp.com [199.45.160.85]) by mx1.freebsd.org (Postfix) with ESMTP id CEE4B8FC15; Thu, 17 Jun 2010 21:29:04 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by harmony.bsdimp.com (8.14.3/8.14.1) with ESMTP id o5HLMrkE074718; Thu, 17 Jun 2010 15:22:53 -0600 (MDT) (envelope-from imp@bsdimp.com) Date: Thu, 17 Jun 2010 15:22:56 -0600 (MDT) Message-Id: <20100617.152256.634347869525781000.imp@bsdimp.com> To: jhb@FreeBSD.org From: "M. Warner Losh" In-Reply-To: <201006141251.45896.jhb@freebsd.org> References: <201006141251.45896.jhb@freebsd.org> X-Mailer: Mew version 6.3 on Emacs 22.3 / Mule 5.0 (SAKAKI) Mime-Version: 1.0 Content-Type: Text/Plain; charset=us-ascii Content-Transfer-Encoding: 7bit Cc: mdf@FreeBSD.org, freebsd-arch@FreeBSD.org Subject: Re: arch-specific directories X-BeenThere: freebsd-arch@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion related to FreeBSD architecture List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 17 Jun 2010 21:29:05 -0000 In message: <201006141251.45896.jhb@freebsd.org> John Baldwin writes: : On Monday 14 June 2010 11:26:45 am mdf@freebsd.org wrote: : > This is as much as request for information as a suggestion. : > : > I am wondering of the current layout of sys/ make sense given : > that in several cases the only difference between two "arch" is the : > bitness, e.g. powerpc and powerpc64. The 64-bit version supports a : > few new instructions, but in many cases is the same. The same issue : > exists with i386/amd64 but because both have been supported for a long : > time the have full arch separation. However, there has been some : > movement of files that are common between i386 and amd64 into a common : > x86 directory. : > : > So what I'm wondering is it it makes more sense to have files broken : > up more like: : > : > sys/ for common file between bitness : > sys//32 : > sys//64 for files that are specific to the bitness : > : > This would presumably serve at least powerpc and i386/amd64 well, and : > though I don't know for sure I assume at the moment that it works for : > sun/sparc as well. : > : > So... is this reasonable? Or does the existence of ia64 throw a : > monkey wrench into this layout? Is it not worth the shuffle (though : > I'd argue that, if we're moving some files to x86 and creating a new : > powerpc64 that it's better to consider now than later). : > : > I realize there was a discussion earlier along similar lines (the : > bi-yearly architecture source tree layout discussion) but I don't : > think it was specifically considering the 32/64 bit differences, which : > seem to be more common now. : : I think for archs that share a lot in common between 32-bit and 64-bit : varieties using shared sources of some sort (e.g. sys/x86) should be : encouraged. This is probably more true (and feasible) for more recently added : architectures such as powerpc, arm, and mips. Alpha and ia64 would not have : fit into this category. Since we do not support 32-bit sparc, sparc64 doesn't : really fit into it either. Having a common directory is a good thing. : However, I think that some of our build infrastructure assumes that that the : current MACHINE/TARGET is in the path, so e.g. make buildkernel uses : sys/$TARGET/conf to find the kernel config file to build, so we may be stuck : with some of the layout differences at the top-level. I suspect the arm, : powerpc, and mips target names are already embedded at this point, but I would : not mind an organization where common code lived in sys/mips and 32-bit and : 64-bit bits lived in sys/mips32 and sys/mips64. (That would work with the : existing kernel config path assumptions, but require changing 'arm' -> : 'arm32', etc. for MACHINE/TARGET). I'm sure Warner has some ideas on this : topic as well. MACHINE=arm, but MACHINE_ARCH=arm or armeb. MACHINE_CPUARCH=arm. MACHINE specifies the kernel sources. MACHINE_ARCH is the arch/endian specification. MACHINE_CPUARCH is the cpu family. For mips, all the source is shared between 32-bit and 64-bit variants for both userland and kernel. Warner From owner-freebsd-arch@FreeBSD.ORG Thu Jun 17 21:32:36 2010 Return-Path: Delivered-To: arch@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id B1D8C1065678 for ; Thu, 17 Jun 2010 21:32:36 +0000 (UTC) (envelope-from wxs@atarininja.org) Received: from syn.atarininja.org (syn.csh.rit.edu [129.21.50.215]) by mx1.freebsd.org (Postfix) with ESMTP id 8CE958FC0C for ; Thu, 17 Jun 2010 21:32:36 +0000 (UTC) Received: by syn.atarininja.org (Postfix, from userid 1001) id B7E8A5C2E; Thu, 17 Jun 2010 17:32:35 -0400 (EDT) Date: Thu, 17 Jun 2010 17:32:35 -0400 From: Wesley Shields To: "M. Warner Losh" Message-ID: <20100617213235.GC97158@atarininja.org> References: <20100617.143334.584432776655157077.imp@bsdimp.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20100617.143334.584432776655157077.imp@bsdimp.com> User-Agent: Mutt/1.5.20 (2009-06-14) Cc: arch@FreeBSD.org Subject: Re: Time to stop stripping binaries? X-BeenThere: freebsd-arch@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion related to FreeBSD architecture List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 17 Jun 2010 21:32:36 -0000 On Thu, Jun 17, 2010 at 02:33:34PM -0600, M. Warner Losh wrote: > Greetings, > > Now that disks are big, can we stop stripping binaries by default? I have no problem with that but we should also give serious consideration to increasing the default size of / when done automatically[1]. I've run into cases where / is not big enough to hold a new kernel and modules with symbols so I resort to INSTALL_NODEBUG=yes. [1]: Unless I missed it entirely. It's been a while since I did that. -- WXS From owner-freebsd-arch@FreeBSD.ORG Thu Jun 17 21:35:24 2010 Return-Path: Delivered-To: freebsd-arch@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 24AEB1065672 for ; Thu, 17 Jun 2010 21:35:24 +0000 (UTC) (envelope-from max@love2party.net) Received: from moutng.kundenserver.de (moutng.kundenserver.de [212.227.126.186]) by mx1.freebsd.org (Postfix) with ESMTP id AB51B8FC15 for ; Thu, 17 Jun 2010 21:35:23 +0000 (UTC) Received: from vampire.homelinux.org (dslb-088-066-042-132.pools.arcor-ip.net [88.66.42.132]) by mrelayeu.kundenserver.de (node=mreu0) with ESMTP (Nemesis) id 0MKdqV-1OQBgr0YAJ-001oWD; Thu, 17 Jun 2010 23:35:22 +0200 Received: (qmail 43053 invoked from network); 17 Jun 2010 21:35:21 -0000 Received: from f8x64.laiers.local (192.168.4.188) by ns1.laiers.local with SMTP; 17 Jun 2010 21:35:21 -0000 From: Max Laier Organization: FreeBSD To: freebsd-arch@freebsd.org Date: Thu, 17 Jun 2010 23:35:21 +0200 User-Agent: KMail/1.13.3 (FreeBSD/8.0-RELEASE-p2; KDE/4.4.3; amd64; ; ) References: <20100617.143334.584432776655157077.imp@bsdimp.com> In-Reply-To: <20100617.143334.584432776655157077.imp@bsdimp.com> MIME-Version: 1.0 Content-Type: Text/Plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit Message-Id: <201006172335.21969.max@love2party.net> X-Provags-ID: V01U2FsdGVkX1+2cpipJkTE5yyIOQs6Wf0iDb8eRkbYQ1Roqrs F+Ug0XAcv7Kn9ERIl6280jBa8UQtBg5OOPa2zK2YtDbdmW5HnH yvRyO19xthsdueaqLxo9A== Cc: Subject: Re: Time to stop stripping binaries? X-BeenThere: freebsd-arch@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion related to FreeBSD architecture List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 17 Jun 2010 21:35:24 -0000 On Thursday 17 June 2010 22:33:34 M. Warner Losh wrote: > Greetings, > > Now that disks are big, can we stop stripping binaries by default? > > I've worked up a patch that lets you set WITH_BINARY_SYMBOLS or > WITHOUT_BINARY_SYMBOLS as you see fit. We should commit it regardless > of the outcome of this discussion (well, defaulting to yes or no > depending on the outcome). > > Why symbols: it makes core dumps easier to debug. > Why no symbols: makes the system footprint bigger. > > Since there's good arguments both ways, I thought I'd make this a > knob. > > Comments? My vote is with symbols in current and stable, without in releases - by default. i.e. everything people build at home from an unknown repo state should have symbols, everything we "ship" can be reproduced if needed. The reasoning is that root (at least as prepared by previous sysinstall default installs) is small already. If we want to ship with symbols on by default, we should start to increase the size of the root partition first. We might have done so already, but I'm not sure at the moment. Just so we don't alienate users by breaking the upgrade path with small roots. Regards, Max From owner-freebsd-arch@FreeBSD.ORG Thu Jun 17 23:19:11 2010 Return-Path: Delivered-To: freebsd-arch@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id F2A0C106564A for ; Thu, 17 Jun 2010 23:19:11 +0000 (UTC) (envelope-from kientzle@freebsd.org) Received: from monday.kientzle.com (kientzle.com [66.166.149.50]) by mx1.freebsd.org (Postfix) with ESMTP id C87988FC1A for ; Thu, 17 Jun 2010 23:19:11 +0000 (UTC) Received: (from root@localhost) by monday.kientzle.com (8.14.3/8.14.3) id o5HNJS21068777; Thu, 17 Jun 2010 23:19:28 GMT (envelope-from kientzle@freebsd.org) Received: from horton.x.kientzle.com (fw2.kientzle.com [10.123.1.2]) by kientzle.com with SMTP id 3wmbrgkreqikcy27q4dh8f2azs; Thu, 17 Jun 2010 23:19:27 +0000 (UTC) (envelope-from kientzle@freebsd.org) Message-ID: <4C1AAD6C.8070705@freebsd.org> Date: Thu, 17 Jun 2010 16:19:08 -0700 From: Tim Kientzle User-Agent: Mozilla/5.0 (X11; U; FreeBSD i386; en-US; rv:1.8.1.23) Gecko/20100314 SeaMonkey/1.1.18 MIME-Version: 1.0 To: Max Laier References: <20100617.143334.584432776655157077.imp@bsdimp.com> <201006172335.21969.max@love2party.net> In-Reply-To: <201006172335.21969.max@love2party.net> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Cc: freebsd-arch@freebsd.org Subject: Re: Time to stop stripping binaries? X-BeenThere: freebsd-arch@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion related to FreeBSD architecture List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 17 Jun 2010 23:19:12 -0000 Max Laier wrote: > On Thursday 17 June 2010 22:33:34 M. Warner Losh wrote: >> >> Now that disks are big, can we stop stripping binaries by default? >> >> I've worked up a patch that lets you set WITH_BINARY_SYMBOLS or >> WITHOUT_BINARY_SYMBOLS as you see fit. We should commit it regardless >> of the outcome of this discussion (well, defaulting to yes or no >> depending on the outcome). > > My vote is with symbols in current and stable, without in releases - by > default. i.e. everything people build at home from an unknown repo state > should have symbols, everything we "ship" can be reproduced if needed. I was going to make this suggestion myself, but Max beat me to it. ;-) Definitely -CURRENT should default to building with symbols. I've spent too much time going back to re-build specific pieces with symbols in order to debug issues in -CURRENT. For releases, I think there's a good argument to leaving symbols off (CD space is still rather dear). For stable, I could go either way. Tim From owner-freebsd-arch@FreeBSD.ORG Fri Jun 18 08:20:52 2010 Return-Path: Delivered-To: freebsd-arch@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 033CC1065674 for ; Fri, 18 Jun 2010 08:20:52 +0000 (UTC) (envelope-from kostikbel@gmail.com) Received: from mail.zoral.com.ua (mx0.zoral.com.ua [91.193.166.200]) by mx1.freebsd.org (Postfix) with ESMTP id 9414E8FC08 for ; Fri, 18 Jun 2010 08:20:51 +0000 (UTC) Received: from deviant.kiev.zoral.com.ua (root@deviant.kiev.zoral.com.ua [10.1.1.148]) by mail.zoral.com.ua (8.14.2/8.14.2) with ESMTP id o5I8KJhW058690 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO); Fri, 18 Jun 2010 11:20:19 +0300 (EEST) (envelope-from kostikbel@gmail.com) Received: from deviant.kiev.zoral.com.ua (kostik@localhost [127.0.0.1]) by deviant.kiev.zoral.com.ua (8.14.4/8.14.4) with ESMTP id o5I8KJ59007976; Fri, 18 Jun 2010 11:20:19 +0300 (EEST) (envelope-from kostikbel@gmail.com) Received: (from kostik@localhost) by deviant.kiev.zoral.com.ua (8.14.4/8.14.4/Submit) id o5I8KJY0007975; Fri, 18 Jun 2010 11:20:19 +0300 (EEST) (envelope-from kostikbel@gmail.com) X-Authentication-Warning: deviant.kiev.zoral.com.ua: kostik set sender to kostikbel@gmail.com using -f Date: Fri, 18 Jun 2010 11:20:19 +0300 From: Kostik Belousov To: "M. Warner Losh" Message-ID: <20100618082019.GE13238@deviant.kiev.zoral.com.ua> References: <20100617.143334.584432776655157077.imp@bsdimp.com> <4C1A8C0C.8010207@delphij.net> <20100617.152630.460114267490874908.imp@bsdimp.com> Mime-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="/upgxG3i8WFRGOa+" Content-Disposition: inline In-Reply-To: <20100617.152630.460114267490874908.imp@bsdimp.com> User-Agent: Mutt/1.4.2.3i X-Virus-Scanned: clamav-milter 0.95.2 at skuns.kiev.zoral.com.ua X-Virus-Status: Clean X-Spam-Status: No, score=-2.3 required=5.0 tests=ALL_TRUSTED,AWL,BAYES_50, DNS_FROM_OPENWHOIS autolearn=no version=3.2.5 X-Spam-Checker-Version: SpamAssassin 3.2.5 (2008-06-10) on skuns.kiev.zoral.com.ua Cc: delphij@delphij.net, d@delphij.net, freebsd-arch@freebsd.org Subject: Re: Time to stop stripping binaries? X-BeenThere: freebsd-arch@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion related to FreeBSD architecture List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 18 Jun 2010 08:20:52 -0000 --/upgxG3i8WFRGOa+ Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Thu, Jun 17, 2010 at 03:26:30PM -0600, M. Warner Losh wrote: > In message: <4C1A8C0C.8010207@delphij.net> > Xin LI writes: > : -----BEGIN PGP SIGNED MESSAGE----- > : Hash: SHA256 > :=20 > : On 2010/06/17 13:33, M. Warner Losh wrote: > : > Greetings, > : >=20 > : > Now that disks are big, can we stop stripping binaries by default? > : >=20 > : > I've worked up a patch that lets you set WITH_BINARY_SYMBOLS or > : > WITHOUT_BINARY_SYMBOLS as you see fit. We should commit it regardless > : > of the outcome of this discussion (well, defaulting to yes or no > : > depending on the outcome). > : >=20 > : > Why symbols: it makes core dumps easier to debug. > : > Why no symbols: makes the system footprint bigger. > : >=20 > : > Since there's good arguments both ways, I thought I'd make this a > : > knob. > :=20 > : I think this is a good idea. > :=20 > : A related quick question: is there any performance penalty if we ship > : non-stripped binaries? I think we would probably have to map the whole > : image (including the symbols) into memory? >=20 > No. The symbols are tacked on the end of the file. The system only No, the symbols can be not at the end of the file, but this is indeed irrelevant. What would be very very nice to have is ability to install libraries with symbols, while strip the binaries. Or, since even our in-tree binutils support detached .debug files, the separate debug/ directory with debug symbol files might be more useful in future. For now, please, make the knob recognize three states: no symbols, only libraries, all binaries with symbols. > maps in the header of the binary. It then allocates virtual memory > space for the various sections, and then jumps to the binary[*]. It > ignores the symbols. >=20 > Warner >=20 > [*] Yes, I know this grossly oversimplifies things, but the other > details aren't relevant to this discussion... > _______________________________________________ > freebsd-arch@freebsd.org mailing list > http://lists.freebsd.org/mailman/listinfo/freebsd-arch > To unsubscribe, send any mail to "freebsd-arch-unsubscribe@freebsd.org" --/upgxG3i8WFRGOa+ Content-Type: application/pgp-signature Content-Disposition: inline -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.10 (FreeBSD) iEYEARECAAYFAkwbLEMACgkQC3+MBN1Mb4iDPgCfcC7og8aD8m3uTRDwole+OiR7 GboAoJGInSuwA6AKiL12bwlnebocIti3 =yrah -----END PGP SIGNATURE----- --/upgxG3i8WFRGOa+-- From owner-freebsd-arch@FreeBSD.ORG Fri Jun 18 08:25:29 2010 Return-Path: Delivered-To: freebsd-arch@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id A3275106564A for ; Fri, 18 Jun 2010 08:25:29 +0000 (UTC) (envelope-from lstewart@freebsd.org) Received: from lauren.room52.net (lauren.room52.net [210.50.193.198]) by mx1.freebsd.org (Postfix) with ESMTP id 2355A8FC0C for ; Fri, 18 Jun 2010 08:25:28 +0000 (UTC) Received: from lstewart.caia.swin.edu.au (lstewart.caia.swin.edu.au [136.186.229.95]) by lauren.room52.net (Postfix) with ESMTPSA id 12A447E878; Fri, 18 Jun 2010 18:05:38 +1000 (EST) Message-ID: <4C1B28D1.8000001@freebsd.org> Date: Fri, 18 Jun 2010 18:05:37 +1000 From: Lawrence Stewart User-Agent: Mozilla/5.0 (X11; U; FreeBSD amd64; en-US; rv:1.9.1.9) Gecko/20100409 Thunderbird/3.0.4 MIME-Version: 1.0 To: Max Laier References: <20100617.143334.584432776655157077.imp@bsdimp.com> <201006172335.21969.max@love2party.net> In-Reply-To: <201006172335.21969.max@love2party.net> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Cc: freebsd-arch@freebsd.org Subject: Re: Time to stop stripping binaries? X-BeenThere: freebsd-arch@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion related to FreeBSD architecture List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 18 Jun 2010 08:25:29 -0000 On 06/18/10 07:35, Max Laier wrote: > On Thursday 17 June 2010 22:33:34 M. Warner Losh wrote: >> Greetings, >> >> Now that disks are big, can we stop stripping binaries by default? >> >> I've worked up a patch that lets you set WITH_BINARY_SYMBOLS or >> WITHOUT_BINARY_SYMBOLS as you see fit. We should commit it regardless >> of the outcome of this discussion (well, defaulting to yes or no >> depending on the outcome). >> >> Why symbols: it makes core dumps easier to debug. >> Why no symbols: makes the system footprint bigger. >> >> Since there's good arguments both ways, I thought I'd make this a >> knob. >> >> Comments? > > My vote is with symbols in current and stable, without in releases - by > default. i.e. everything people build at home from an unknown repo state > should have symbols, everything we "ship" can be reproduced if needed. > > The reasoning is that root (at least as prepared by previous sysinstall > default installs) is small already. If we want to ship with symbols on by > default, we should start to increase the size of the root partition first. We > might have done so already, but I'm not sure at the moment. Just so we don't > alienate users by breaking the upgrade path with small roots. +1 to all of the above and +1 to bumping the default root partition size so we can eventually have the option to ship symbols in releases as well. Cheers, Lawrence From owner-freebsd-arch@FreeBSD.ORG Fri Jun 18 10:24:45 2010 Return-Path: Delivered-To: arch@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 567A9106566B for ; Fri, 18 Jun 2010 10:24:45 +0000 (UTC) (envelope-from brde@optusnet.com.au) Received: from mail02.syd.optusnet.com.au (mail02.syd.optusnet.com.au [211.29.132.183]) by mx1.freebsd.org (Postfix) with ESMTP id E7C1B8FC12 for ; Fri, 18 Jun 2010 10:24:44 +0000 (UTC) Received: from c122-106-175-69.carlnfd1.nsw.optusnet.com.au (c122-106-175-69.carlnfd1.nsw.optusnet.com.au [122.106.175.69]) by mail02.syd.optusnet.com.au (8.13.1/8.13.1) with ESMTP id o5IAOZQw018237 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO); Fri, 18 Jun 2010 20:24:37 +1000 Date: Fri, 18 Jun 2010 20:24:35 +1000 (EST) From: Bruce Evans X-X-Sender: bde@delplex.bde.org To: "M. Warner Losh" In-Reply-To: <20100617.143334.584432776655157077.imp@bsdimp.com> Message-ID: <20100618201737.T41916@delplex.bde.org> References: <20100617.143334.584432776655157077.imp@bsdimp.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed Cc: arch@FreeBSD.org Subject: Re: Time to stop stripping binaries? X-BeenThere: freebsd-arch@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion related to FreeBSD architecture List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 18 Jun 2010 10:24:45 -0000 On Thu, 17 Jun 2010, M. Warner Losh wrote: > Now that disks are big, can we stop stripping binaries by default? Symbols aren't very useful unless they are full debugging symbols, but with full debugging symbols the unstripped binaries would be _very_ large. With only non-debugging symbols, the symbols' size in most shared executables is small since most symbols are in libraries. However, all libraries may need to be compiled with full symbols irrespective of the default policy for stripping installed binaries, so that you can debug [non-installed] binaries. > I've worked up a patch that lets you set WITH_BINARY_SYMBOLS or > WITHOUT_BINARY_SYMBOLS as you see fit. We should commit it regardless > of the outcome of this discussion (well, defaulting to yes or no > depending on the outcome). > Index: bsd.lib.mk > =================================================================== > --- bsd.lib.mk (revision 209268) > +++ bsd.lib.mk (working copy) > @@ -46,7 +46,7 @@ > .endif > .endif > > -.if !defined(DEBUG_FLAGS) > +.if !defined(DEBUG_FLAGS) || ${MK_BINARY_SYMBOLS} == "no" > STRIP?= -s > .endif > The case of full debugging symbols is already handled here. I believe some committers (not bde) actually use it. Similarly in bsd.prog.mk. So is the case of not stripping installed binaries (STRIP=). I don't want the bloat from building and/or installing libraries with full symbols, but miss an easy way to build them when needed (maybe on demand -- libc now takes only a few seconds to compile). If you fix this, don't forget the case of libraries in ports bloatware that takes more than a few seconds to compile :-). Bruce From owner-freebsd-arch@FreeBSD.ORG Fri Jun 18 13:46:37 2010 Return-Path: Delivered-To: freebsd-arch@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 869D91065677 for ; Fri, 18 Jun 2010 13:46:37 +0000 (UTC) (envelope-from kevlo@FreeBSD.org) Received: from ns.kevlo.org (kevlo.org [220.128.136.52]) by mx1.freebsd.org (Postfix) with ESMTP id 280768FC1E for ; Fri, 18 Jun 2010 13:46:35 +0000 (UTC) Received: from [127.0.0.1] (kevlo@kevlo.org [220.128.136.52]) by ns.kevlo.org (8.14.3/8.14.3) with ESMTP id o5IDH7jh023644 for ; Fri, 18 Jun 2010 21:17:07 +0800 (CST) From: Kevin Lo To: freebsd-arch@FreeBSD.org In-Reply-To: <4C1AAD6C.8070705@freebsd.org> References: <20100617.143334.584432776655157077.imp@bsdimp.com> <201006172335.21969.max@love2party.net> <4C1AAD6C.8070705@freebsd.org> Content-Type: text/plain; charset="UTF-8" Date: Fri, 18 Jun 2010 21:17:07 +0800 Message-ID: <1276867027.1995.34.camel@nsl> Mime-Version: 1.0 X-Mailer: Evolution 2.28.3 Content-Transfer-Encoding: 7bit Cc: Subject: Re: Time to stop stripping binaries? X-BeenThere: freebsd-arch@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion related to FreeBSD architecture List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 18 Jun 2010 13:46:37 -0000 Tim Kientzle wrote: > Max Laier wrote: > > On Thursday 17 June 2010 22:33:34 M. Warner Losh wrote: > >> > >> Now that disks are big, can we stop stripping binaries by default? > >> > >> I've worked up a patch that lets you set WITH_BINARY_SYMBOLS or > >> WITHOUT_BINARY_SYMBOLS as you see fit. We should commit it regardless > >> of the outcome of this discussion (well, defaulting to yes or no > >> depending on the outcome). > > > > My vote is with symbols in current and stable, without in releases - by > > default. i.e. everything people build at home from an unknown repo state > > should have symbols, everything we "ship" can be reproduced if needed. > > I was going to make this suggestion myself, but Max beat me to it. ;-) > > Definitely -CURRENT should default to building with > symbols. I've spent too much time going back to > re-build specific pieces with symbols in order > to debug issues in -CURRENT. > > For releases, I think there's a good argument to > leaving symbols off (CD space is still rather dear). > > For stable, I could go either way. +1. Agreed with Tim :-) > Tim Kevin From owner-freebsd-arch@FreeBSD.ORG Sat Jun 19 07:49:29 2010 Return-Path: Delivered-To: freebsd-arch@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id ABCDF106564A for ; Sat, 19 Jun 2010 07:49:29 +0000 (UTC) (envelope-from avg@freebsd.org) Received: from citadel.icyb.net.ua (citadel.icyb.net.ua [212.40.38.140]) by mx1.freebsd.org (Postfix) with ESMTP id F2F938FC12 for ; Sat, 19 Jun 2010 07:49:28 +0000 (UTC) Received: from porto.topspin.kiev.ua (porto-e.starpoint.kiev.ua [212.40.38.100]) by citadel.icyb.net.ua (8.8.8p3/ICyb-2.3exp) with ESMTP id KAA04590 for ; Sat, 19 Jun 2010 10:49:27 +0300 (EEST) (envelope-from avg@freebsd.org) Received: from localhost.topspin.kiev.ua ([127.0.0.1]) by porto.topspin.kiev.ua with esmtp (Exim 4.34 (FreeBSD)) id 1OPsnv-000EOT-9w for freebsd-arch@freebsd.org; Sat, 19 Jun 2010 10:49:27 +0300 Message-ID: <4C1C7686.3050206@freebsd.org> Date: Sat, 19 Jun 2010 10:49:26 +0300 From: Andriy Gapon User-Agent: Thunderbird 2.0.0.24 (X11/20100603) MIME-Version: 1.0 To: freebsd-arch@freebsd.org X-Enigmail-Version: 0.96.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit Subject: KDB_TRACE in GENERIC X-BeenThere: freebsd-arch@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion related to FreeBSD architecture List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 19 Jun 2010 07:49:29 -0000 I propose to add the following options into GENERIC (perhaps only i386 and amd64): options KDB options KDB_TRACE options KDB_UNATTENDED options SC_DISABLE_KDBKEY # <- not sure about his one This would increase kernel size only by a fraction, would not result in any POLA violations (KDB_UNATTENDED, SC_DISABLE_KDBKEY) and would provide a useful service. Currently we get many panic reports that are almost impossible to analyze because there is no stack trace. Especially this is true for panics at installation time, when people use GENERIC from release media and do not have ability to try a custom kernel. What do you think? -- Andriy Gapon From owner-freebsd-arch@FreeBSD.ORG Sat Jun 19 08:22:56 2010 Return-Path: Delivered-To: freebsd-arch@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 0456C106564A for ; Sat, 19 Jun 2010 08:22:55 +0000 (UTC) (envelope-from gljennjohn@googlemail.com) Received: from fg-out-1718.google.com (fg-out-1718.google.com [72.14.220.153]) by mx1.freebsd.org (Postfix) with ESMTP id 4A4828FC18 for ; Sat, 19 Jun 2010 08:22:54 +0000 (UTC) Received: by fg-out-1718.google.com with SMTP id l26so376577fgb.13 for ; Sat, 19 Jun 2010 01:22:53 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=gamma; h=domainkey-signature:received:received:date:from:to:cc:subject :message-id:in-reply-to:references:reply-to:x-mailer:mime-version :content-type:content-transfer-encoding; bh=P01N1H1deSEpkon3kv7EIh3s0HxjcL2WP5JAXu5QPtA=; b=FfnddcdQ/dQH/X5pLTRuWUqWWaLmjHQzhdsqd9Fw3C01mjqFSKqGPI5M9dv+7hQLzO r4m5yr/FTccy+2R0CgLamMs8ZpYTztfzLiVrTsUaejG83/Ps1QsFIUrv9xffZHKk1Ush uQOF3zp3dJdDotA7uosd79NPK3II+HxzYCC4Y= DomainKey-Signature: a=rsa-sha1; c=nofws; d=googlemail.com; s=gamma; h=date:from:to:cc:subject:message-id:in-reply-to:references:reply-to :x-mailer:mime-version:content-type:content-transfer-encoding; b=Aad2mhf97xWa77Mv8tG+rX79k7tqR8xM2zKOFmMsd9dcOHZ1psRLo7f07CiGqQ87O0 A10E19peM0pvI6w7ABAJPdsnqcQy3WiHvFjDgoNygrNdTcbLkEMKAMYAzWXflwAiC1f6 WEBU2VYwe0zL8CyofA5YLAUiUkAsUusDOvNzI= Received: by 10.87.48.18 with SMTP id a18mr3411057fgk.53.1276935773093; Sat, 19 Jun 2010 01:22:53 -0700 (PDT) Received: from ernst.jennejohn.org (p578E3275.dip.t-dialin.net [87.142.50.117]) by mx.google.com with ESMTPS id z10sm3735913fka.31.2010.06.19.01.22.52 (version=TLSv1/SSLv3 cipher=RC4-MD5); Sat, 19 Jun 2010 01:22:52 -0700 (PDT) Date: Sat, 19 Jun 2010 10:22:51 +0200 From: Gary Jennejohn To: Andriy Gapon Message-ID: <20100619102251.6db25d41@ernst.jennejohn.org> In-Reply-To: <4C1C7686.3050206@freebsd.org> References: <4C1C7686.3050206@freebsd.org> X-Mailer: Claws Mail 3.7.5 (GTK+ 2.18.7; amd64-portbld-freebsd9.0) Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Cc: freebsd-arch@freebsd.org Subject: Re: KDB_TRACE in GENERIC X-BeenThere: freebsd-arch@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: gljennjohn@googlemail.com List-Id: Discussion related to FreeBSD architecture List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 19 Jun 2010 08:22:56 -0000 On Sat, 19 Jun 2010 10:49:26 +0300 Andriy Gapon wrote: > > I propose to add the following options into GENERIC (perhaps only i386 and amd64): > > options KDB > options KDB_TRACE > options KDB_UNATTENDED > options SC_DISABLE_KDBKEY # <- not sure about his one > > This would increase kernel size only by a fraction, would not result in any POLA > violations (KDB_UNATTENDED, SC_DISABLE_KDBKEY) and would provide a useful service. > > Currently we get many panic reports that are almost impossible to analyze > because there is no stack trace. Especially this is true for panics at > installation time, when people use GENERIC from release media and do not have > ability to try a custom kernel. > > What do you think? > Seems like a good idea to me. -- Gary Jennejohn (gj@) From owner-freebsd-arch@FreeBSD.ORG Sat Jun 19 09:03:12 2010 Return-Path: Delivered-To: freebsd-arch@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 590C3106566B; Sat, 19 Jun 2010 09:03:12 +0000 (UTC) (envelope-from yanegomi@gmail.com) Received: from mail-iw0-f182.google.com (mail-iw0-f182.google.com [209.85.214.182]) by mx1.freebsd.org (Postfix) with ESMTP id 0E64A8FC16; Sat, 19 Jun 2010 09:03:11 +0000 (UTC) Received: by iwn7 with SMTP id 7so2346422iwn.13 for ; Sat, 19 Jun 2010 02:03:11 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:received:sender:received :in-reply-to:references:date:x-google-sender-auth:message-id:subject :from:to:cc:content-type:content-transfer-encoding; bh=opkZ0jB17SPtmPWwQMBp4daR5R7aSi6mtXgStOQF17Y=; b=qIRb1F9lpct1IuxFK8WHIG0/k/b24YHyDbGXWi53Knnke+vTE8t7gR3baFedrRQOjv gVE77ICkqMQDxFyVJPCBa8jqTm1vJna7+eeduJLNC4TVAKBvwrA/3jKO3xkeKs9n7+EW sx7XKH/rJeASU7vMH9rmics9iMtEvtkMoMkY0= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:sender:in-reply-to:references:date :x-google-sender-auth:message-id:subject:from:to:cc:content-type :content-transfer-encoding; b=F8YaPP8BlVy/jCfGl7NNpIa39J4xsnhaaP5WyUnfEJ6EgMJ5OEPZs2TrYhZvINZ5Jl LJJ1gV/NQPWzJ/Yqepmv2eltgPyaEcxx3UDkdBtz6mu+Phg+/ZLvMZcCPpWxvKh0w10k j/zUdTy+LnQ1vOWdZSXv7JUJzJFlxL3pOides= MIME-Version: 1.0 Received: by 10.231.149.145 with SMTP id t17mr2510723ibv.25.1276936536017; Sat, 19 Jun 2010 01:35:36 -0700 (PDT) Sender: yanegomi@gmail.com Received: by 10.231.117.201 with HTTP; Sat, 19 Jun 2010 01:35:35 -0700 (PDT) In-Reply-To: <1276867027.1995.34.camel@nsl> References: <20100617.143334.584432776655157077.imp@bsdimp.com> <201006172335.21969.max@love2party.net> <4C1AAD6C.8070705@freebsd.org> <1276867027.1995.34.camel@nsl> Date: Sat, 19 Jun 2010 01:35:35 -0700 X-Google-Sender-Auth: YBuI8wC047kGQuQ7La_1EI9NE9Q Message-ID: From: Garrett Cooper To: Kevin Lo Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable Cc: freebsd-arch@freebsd.org Subject: Re: Time to stop stripping binaries? X-BeenThere: freebsd-arch@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion related to FreeBSD architecture List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 19 Jun 2010 09:03:12 -0000 On Fri, Jun 18, 2010 at 6:17 AM, Kevin Lo wrote: > Tim Kientzle wrote: >> Max Laier wrote: >> > On Thursday 17 June 2010 22:33:34 M. Warner Losh wrote: >> >> >> >> Now that disks are big, can we stop stripping binaries by default? >> >> >> >> I've worked up a patch that lets you set WITH_BINARY_SYMBOLS or >> >> WITHOUT_BINARY_SYMBOLS as you see fit. =A0We should commit it regardl= ess >> >> of the outcome of this discussion (well, defaulting to yes or no >> >> depending on the outcome). >> > >> > My vote is with symbols in current and stable, without in releases - b= y >> > default. =A0i.e. everything people build at home from an unknown repo = state >> > should have symbols, everything we "ship" can be reproduced if needed. >> >> I was going to make this suggestion myself, but Max beat me to it. =A0 ;= -) >> >> Definitely -CURRENT should default to building with >> symbols. =A0I've spent too much time going back to >> re-build specific pieces with symbols in order >> to debug issues in -CURRENT. >> >> For releases, I think there's a good argument to >> leaving symbols off (CD space is still rather dear). >> >> For stable, I could go either way. > > +1. Agreed with Tim :-) I agree as well, but I think it should be on for stable because of all of the bits being MFCed on a regular basis nowadays from CURRENT, and the potential issues that might arise due to less tested components (for bug triage purposes). Thanks! -Garrett From owner-freebsd-arch@FreeBSD.ORG Sat Jun 19 11:31:27 2010 Return-Path: Delivered-To: freebsd-arch@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id AB08A106566B for ; Sat, 19 Jun 2010 11:31:27 +0000 (UTC) (envelope-from jilles@stack.nl) Received: from mx1.stack.nl (relay04.stack.nl [IPv6:2001:610:1108:5010::107]) by mx1.freebsd.org (Postfix) with ESMTP id 736138FC24 for ; Sat, 19 Jun 2010 11:31:27 +0000 (UTC) Received: from turtle.stack.nl (turtle.stack.nl [IPv6:2001:610:1108:5010::132]) by mx1.stack.nl (Postfix) with ESMTP id 7AC4D1DD748 for ; Sat, 19 Jun 2010 13:31:26 +0200 (CEST) Received: by turtle.stack.nl (Postfix, from userid 1677) id 6F08C1727C; Sat, 19 Jun 2010 13:31:26 +0200 (CEST) Date: Sat, 19 Jun 2010 13:31:26 +0200 From: Jilles Tjoelker To: freebsd-arch@freebsd.org Message-ID: <20100619113126.GB83874@stack.nl> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.5.20 (2009-06-14) Subject: Further sh(1) plans X-BeenThere: freebsd-arch@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion related to FreeBSD architecture List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 19 Jun 2010 11:31:27 -0000 It appears useful to say some more about my plans with sh(1). My main focus with sh(1) is to improve it as a scripting shell. This includes changes to improve compatibility, small additions to the language (usually from POSIX) and features to help script writers. However, sh(1) also has some interactive facilities, such as command line editing and history provided by libedit. Various people had asked for a small addition to these: filename completion. I was a little hesistant about this, as sh is not and will not be zsh. But every once in a while sh usage happens, so when a related patch came in I asked for a port of NetBSD's filename completion with some additions, and got it. The result is not as featureful as completion in shells like bash and zsh, but I think it is still useful, better than nothing. Trying to avoid nasty surprises, completed filenames are quoted (this is not in NetBSD). Things like command completion and completing only directories for cd are not present, but I think this is only an annoyance, not a nasty surprise (note, for example, that bash's completion does not understand logical/physical directories correctly, so completing ../ often gives wrong results if the directory was reached through a symlink). For embedded systems, it may be best to disable libedit entirely in the end product (we don't currently have a knob for this). If you need to log in to such a system, the additions will likely be useful, as there may not be any other shell on the system. The completion code is fairly small compared to the rest of libedit. Some other sh(1) ideas: * import dash arithmetic code (smaller code, proper short-circuit evaluation) * printf builtin (because it is seeing more use such as by recent versions of autoconf and I do not want to encourage people to write fragile and non-portable echo commands by making printf much slower than echo; embedded folks might replace the printf binary with a script like /usr/bin/alias) * kill builtin (%job specifiers, search order, reliability) * fail <&FD if FD is not open * clean up error handling for getcwd in cd -P * fix ${x#"}"} so it trims a closing brace * add $'quoting with C-style escape sequences' (under discussion in the Austin Group) * do word splitting on p q r in ${x+p q r} * cause syntax error for :; fi outside if * make search order for builtins more compliant (special builtins cannot be overridden except by aliases, PATH does not affect certain other builtins such as fg) * remove let and exp builtins (useless) Most of these ideas have patches in my patch queue. Some of the patches in the queue may never be committed. http://www.stack.nl/~jilles/cgi-bin/hgwebdir.cgi/sh-patches/file/tip -- Jilles Tjoelker From owner-freebsd-arch@FreeBSD.ORG Sat Jun 19 14:39:22 2010 Return-Path: Delivered-To: freebsd-arch@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 5CAAB1065677; Sat, 19 Jun 2010 14:39:22 +0000 (UTC) (envelope-from uqs@spoerlein.net) Received: from acme.spoerlein.net (acme.spoerlein.net [IPv6:2001:470:9a47::1]) by mx1.freebsd.org (Postfix) with ESMTP id CB2EA8FC13; Sat, 19 Jun 2010 14:39:21 +0000 (UTC) Received: from acme.spoerlein.net (localhost.spoerlein.net [IPv6:::1]) by acme.spoerlein.net (8.14.4/8.14.4) with ESMTP id o5JEdKSi022320 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO); Sat, 19 Jun 2010 16:39:20 +0200 (CEST) (envelope-from uqs@spoerlein.net) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=spoerlein.net; s=dkim200908; t=1276958360; bh=FrkMgFfOH+MzDlSoYtqgfk/0QX4VAhZjmhx15AbHSLo=; h=Date:From:To:Cc:Subject:Message-ID:References:MIME-Version: Content-Type:In-Reply-To; b=oAAD7+QRkSOCr0kkoNslY1kLXijIFTOpq9H9GUDqUlqXwSRlFVJKGjSkE1cjnC6YK RsQGR122ujNFHId5OMxo8KHVNZ+Yuu60r1K08eq2aNtfBpct1MnWBdPYx5KfA8sJ4X 9jFEU9vgWn7sprsSv9rlKx0gSYgzwpsDzh2gFRj0= Received: (from uqs@localhost) by acme.spoerlein.net (8.14.4/8.14.4/Submit) id o5JEdKLx022319; Sat, 19 Jun 2010 16:39:20 +0200 (CEST) (envelope-from uqs@spoerlein.net) Date: Sat, 19 Jun 2010 16:39:20 +0200 From: Ulrich =?utf-8?B?U3DDtnJsZWlu?= To: Andriy Gapon Message-ID: <20100619143920.GM3632@acme.spoerlein.net> Mail-Followup-To: Andriy Gapon , freebsd-arch@freebsd.org References: <4C1C7686.3050206@freebsd.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <4C1C7686.3050206@freebsd.org> User-Agent: Mutt/1.5.20 (2009-06-14) Cc: freebsd-arch@freebsd.org Subject: Re: KDB_TRACE in GENERIC X-BeenThere: freebsd-arch@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion related to FreeBSD architecture List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 19 Jun 2010 14:39:22 -0000 On Sat, 19.06.2010 at 10:49:26 +0300, Andriy Gapon wrote: > > I propose to add the following options into GENERIC (perhaps only i386 and amd64): > > options KDB > options KDB_TRACE > options KDB_UNATTENDED > options SC_DISABLE_KDBKEY # <- not sure about his one > > This would increase kernel size only by a fraction, would not result in any POLA > violations (KDB_UNATTENDED, SC_DISABLE_KDBKEY) and would provide a useful service. > > Currently we get many panic reports that are almost impossible to analyze > because there is no stack trace. Especially this is true for panics at > installation time, when people use GENERIC from release media and do not have > ability to try a custom kernel. > > What do you think? I'd rather propose we turn on textdumps, as many people will be in X11 when disaster strikes and there's no easy way to get the crashdump then. But we would also need to bump the ddb capture buffer size significantly, as it cannot hold information for more than a few dozen processes right now. Uli From owner-freebsd-arch@FreeBSD.ORG Sat Jun 19 16:33:21 2010 Return-Path: Delivered-To: freebsd-arch@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 95F93106564A; Sat, 19 Jun 2010 16:33:21 +0000 (UTC) (envelope-from avg@freebsd.org) Received: from citadel.icyb.net.ua (citadel.icyb.net.ua [212.40.38.140]) by mx1.freebsd.org (Postfix) with ESMTP id A6CFC8FC16; Sat, 19 Jun 2010 16:33:20 +0000 (UTC) Received: from porto.topspin.kiev.ua (porto-e.starpoint.kiev.ua [212.40.38.100]) by citadel.icyb.net.ua (8.8.8p3/ICyb-2.3exp) with ESMTP id TAA11538; Sat, 19 Jun 2010 19:33:18 +0300 (EEST) (envelope-from avg@freebsd.org) Received: from localhost.topspin.kiev.ua ([127.0.0.1]) by porto.topspin.kiev.ua with esmtp (Exim 4.34 (FreeBSD)) id 1OQ0yr-000Ex5-OX; Sat, 19 Jun 2010 19:33:17 +0300 Message-ID: <4C1CF14C.8080108@freebsd.org> Date: Sat, 19 Jun 2010 19:33:16 +0300 From: Andriy Gapon User-Agent: Thunderbird 2.0.0.24 (X11/20100603) MIME-Version: 1.0 To: Andriy Gapon , freebsd-arch@freebsd.org References: <4C1C7686.3050206@freebsd.org> <20100619143920.GM3632@acme.spoerlein.net> In-Reply-To: <20100619143920.GM3632@acme.spoerlein.net> X-Enigmail-Version: 0.96.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 8bit Cc: Subject: Re: KDB_TRACE in GENERIC X-BeenThere: freebsd-arch@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion related to FreeBSD architecture List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 19 Jun 2010 16:33:21 -0000 on 19/06/2010 17:39 Ulrich Spörlein said the following: > On Sat, 19.06.2010 at 10:49:26 +0300, Andriy Gapon wrote: >> I propose to add the following options into GENERIC (perhaps only i386 and amd64): >> >> options KDB >> options KDB_TRACE >> options KDB_UNATTENDED >> options SC_DISABLE_KDBKEY # <- not sure about his one >> >> This would increase kernel size only by a fraction, would not result in any POLA >> violations (KDB_UNATTENDED, SC_DISABLE_KDBKEY) and would provide a useful service. >> >> Currently we get many panic reports that are almost impossible to analyze >> because there is no stack trace. Especially this is true for panics at >> installation time, when people use GENERIC from release media and do not have >> ability to try a custom kernel. >> >> What do you think? > > I'd rather propose we turn on textdumps, as many people will be in X11 > when disaster strikes and there's no easy way to get the crashdump then. Would you really "rather" propose it? Or propose it in addition to what I proposed? Or as a next step even? :-) BTW, as I said, I am very much concerned about panics that people get when running (trying to run) FreeBSD installation image, X is not a factor at that stage. -- Andriy Gapon From owner-freebsd-arch@FreeBSD.ORG Sat Jun 19 20:06:41 2010 Return-Path: Delivered-To: freebsd-arch@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 295511065672; Sat, 19 Jun 2010 20:06:41 +0000 (UTC) (envelope-from andreast-list@fgznet.ch) Received: from smtp.fgznet.ch (mail.fgznet.ch [81.92.96.47]) by mx1.freebsd.org (Postfix) with ESMTP id 9B3318FC1A; Sat, 19 Jun 2010 20:06:39 +0000 (UTC) Received: from deuterium.andreas.nets (dhclient-91-190-8-131.flashcable.ch [91.190.8.131]) by smtp.fgznet.ch (8.13.8/8.13.8/Submit_SMTPAUTH) with ESMTP id o5JJRLmX010370; Sat, 19 Jun 2010 21:27:22 +0200 (CEST) (envelope-from andreast-list@fgznet.ch) Message-ID: <4C1D1A19.8050003@fgznet.ch> Date: Sat, 19 Jun 2010 21:27:21 +0200 From: Andreas Tobler User-Agent: Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.5; en-US; rv:1.9.1.10) Gecko/20100512 Lightning/1.0b1 Thunderbird/3.0.5 MIME-Version: 1.0 To: Garrett Cooper References: <20100617.143334.584432776655157077.imp@bsdimp.com> <201006172335.21969.max@love2party.net> <4C1AAD6C.8070705@freebsd.org> <1276867027.1995.34.camel@nsl> In-Reply-To: Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-Scanned-By: MIMEDefang 2.64 on 81.92.96.47 Cc: Kevin Lo , freebsd-arch@freebsd.org Subject: Re: Time to stop stripping binaries? X-BeenThere: freebsd-arch@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion related to FreeBSD architecture List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 19 Jun 2010 20:06:41 -0000 On 19.06.10 10:35, Garrett Cooper wrote: > On Fri, Jun 18, 2010 at 6:17 AM, Kevin Lo wrote: >> Tim Kientzle wrote: >>> Max Laier wrote: >>>> On Thursday 17 June 2010 22:33:34 M. Warner Losh wrote: >>>>> >>>>> Now that disks are big, can we stop stripping binaries by default? >>>>> >>>>> I've worked up a patch that lets you set WITH_BINARY_SYMBOLS or >>>>> WITHOUT_BINARY_SYMBOLS as you see fit. We should commit it regardless >>>>> of the outcome of this discussion (well, defaulting to yes or no >>>>> depending on the outcome). >>>> >>>> My vote is with symbols in current and stable, without in releases - by >>>> default. i.e. everything people build at home from an unknown repo state >>>> should have symbols, everything we "ship" can be reproduced if needed. >>> >>> I was going to make this suggestion myself, but Max beat me to it. ;-) >>> >>> Definitely -CURRENT should default to building with >>> symbols. I've spent too much time going back to >>> re-build specific pieces with symbols in order >>> to debug issues in -CURRENT. >>> >>> For releases, I think there's a good argument to >>> leaving symbols off (CD space is still rather dear). >>> >>> For stable, I could go either way. >> >> +1. Agreed with Tim :-) > > I agree as well, but I think it should be on for stable because of > all of the bits being MFCed on a regular basis nowadays from CURRENT, > and the potential issues that might arise due to less tested > components (for bug triage purposes). Fyi, a 8.1-RC1 upgrade to -CURRENT showcase: I installed 8.1-RC1 image on a t60 with default layout, iow root got 512MB. Now I tried to update to -CURRENT and failed with the message that / is full. (buildkernel/world from source) I think this was pointed out already, we need to adjust the default layout(s)/size of partitions if we are going to do that. (I really like to see that happening) Just my 2Rp. Andreas From owner-freebsd-arch@FreeBSD.ORG Sat Jun 19 21:41:27 2010 Return-Path: Delivered-To: freebsd-arch@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 632D01065672; Sat, 19 Jun 2010 21:41:27 +0000 (UTC) (envelope-from uqs@spoerlein.net) Received: from acme.spoerlein.net (acme.spoerlein.net [IPv6:2001:470:9a47::1]) by mx1.freebsd.org (Postfix) with ESMTP id CFB5F8FC13; Sat, 19 Jun 2010 21:41:26 +0000 (UTC) Received: from acme.spoerlein.net (localhost.spoerlein.net [IPv6:::1]) by acme.spoerlein.net (8.14.4/8.14.4) with ESMTP id o5JLfPsc032823 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO); Sat, 19 Jun 2010 23:41:25 +0200 (CEST) (envelope-from uqs@spoerlein.net) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=spoerlein.net; s=dkim200908; t=1276983686; bh=cHRcUXkXnDBY512lcPH97sowZXFIvBU5Pw8/ZVn4vSI=; h=Date:From:To:Cc:Subject:Message-ID:References:MIME-Version: Content-Type:Content-Transfer-Encoding:In-Reply-To; b=nyClKcFWICwLvKP31RXNGWL70PNGjsy+N7iqwpm7Hpt7fsR1cH7wOLwIg+tc46R0D n3Cb6dSQSOL8HI4ZrZ2SWIlPIIWp1uomoFBlpJ8pI87SBNCLV8uYdSzp78ovZklsQU M0ZXHYaonJC1YUe3khFgGjK0eMLd1DnCm0pOjioo= Received: (from uqs@localhost) by acme.spoerlein.net (8.14.4/8.14.4/Submit) id o5JLfP5G032822; Sat, 19 Jun 2010 23:41:25 +0200 (CEST) (envelope-from uqs@spoerlein.net) Date: Sat, 19 Jun 2010 23:41:25 +0200 From: Ulrich =?utf-8?B?U3DDtnJsZWlu?= To: Andriy Gapon Message-ID: <20100619214125.GO3632@acme.spoerlein.net> Mail-Followup-To: Andriy Gapon , freebsd-arch@freebsd.org References: <4C1C7686.3050206@freebsd.org> <20100619143920.GM3632@acme.spoerlein.net> <4C1CF14C.8080108@freebsd.org> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <4C1CF14C.8080108@freebsd.org> User-Agent: Mutt/1.5.20 (2009-06-14) Cc: freebsd-arch@freebsd.org Subject: Re: KDB_TRACE in GENERIC X-BeenThere: freebsd-arch@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion related to FreeBSD architecture List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 19 Jun 2010 21:41:27 -0000 On Sat, 19.06.2010 at 19:33:16 +0300, Andriy Gapon wrote: > on 19/06/2010 17:39 Ulrich Spörlein said the following: > > On Sat, 19.06.2010 at 10:49:26 +0300, Andriy Gapon wrote: > >> I propose to add the following options into GENERIC (perhaps only i386 and amd64): > >> > >> options KDB > >> options KDB_TRACE > >> options KDB_UNATTENDED > >> options SC_DISABLE_KDBKEY # <- not sure about his one > >> > >> This would increase kernel size only by a fraction, would not result in any POLA > >> violations (KDB_UNATTENDED, SC_DISABLE_KDBKEY) and would provide a useful service. > >> > >> Currently we get many panic reports that are almost impossible to analyze > >> because there is no stack trace. Especially this is true for panics at > >> installation time, when people use GENERIC from release media and do not have > >> ability to try a custom kernel. > >> > >> What do you think? > > > > I'd rather propose we turn on textdumps, as many people will be in X11 > > when disaster strikes and there's no easy way to get the crashdump then. > > Would you really "rather" propose it? Or propose it in addition to what I > proposed? Or as a next step even? :-) > BTW, as I said, I am very much concerned about panics that people get when > running (trying to run) FreeBSD installation image, X is not a factor at that stage. Sorry, skipped that part. For installation it would be way better than what we have now. Enabling textdumps should be the next step, once we deem them stable enough to unleash them on unexpecting users. Uli From owner-freebsd-arch@FreeBSD.ORG Sat Jun 19 23:47:47 2010 Return-Path: Delivered-To: freebsd-arch@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 999E11065677; Sat, 19 Jun 2010 23:47:47 +0000 (UTC) (envelope-from jamesbrandongooch@gmail.com) Received: from mail-iw0-f182.google.com (mail-iw0-f182.google.com [209.85.214.182]) by mx1.freebsd.org (Postfix) with ESMTP id 16FC28FC1A; Sat, 19 Jun 2010 23:47:46 +0000 (UTC) Received: by iwn7 with SMTP id 7so2892630iwn.13 for ; Sat, 19 Jun 2010 16:47:46 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:received:received:in-reply-to :references:date:message-id:subject:from:to:cc:content-type; bh=UZiyOngNu+jkg7E88RY0f6efpVPptiIcIpPS8iSQFfA=; b=EqyUQPcBYtd/N2hOBn/KzZZSyMPjn7Jc+wW+eeKr053x3pwnbjc++d4e3mfdOtU25d PAXsp6f5nsSVBjLiNu3up7BC8vk0oxblaZncEsRURxS5vyRL6nib9w2Wwh5HI6DiM9Ka G6UZhk2i/ylSN226uyVsV0gP6n8VBUcvihUQg= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; b=sKzUhKaLJQqKKam/w3gutJmRi9+9cQ0KRi1GIclPDVt3N7jKy6qjcyD3fmZe9GV/Af DkZUxzyOzyz6Hy3lhYRvCKZN8ONX0guKvLtvHp8LR+dbsOwJS7upBIXFG5pxIw+OeJOR XBH6KPdL+gNqObHUJ4vqi05viCI+VaFl6D1N0= MIME-Version: 1.0 Received: by 10.231.32.129 with SMTP id c1mr3445478ibd.112.1276991265997; Sat, 19 Jun 2010 16:47:45 -0700 (PDT) Received: by 10.231.182.212 with HTTP; Sat, 19 Jun 2010 16:47:45 -0700 (PDT) In-Reply-To: <4C0C1AE4.8050807@FreeBSD.org> References: <4C0C1AE4.8050807@FreeBSD.org> Date: Sat, 19 Jun 2010 18:47:45 -0500 Message-ID: From: Brandon Gooch To: Alexander Motin Content-Type: multipart/mixed; boundary=002215048d0bca851504896ab298 Cc: FreeBSD-Current , freebsd-arch@freebsd.org Subject: Re: RFC: New event timers infrastructure X-BeenThere: freebsd-arch@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion related to FreeBSD architecture List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 19 Jun 2010 23:47:47 -0000 --002215048d0bca851504896ab298 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable 2010/6/6 Alexander Motin : > Hi. > > Most of x86 systems now has at least 4 types of event timers: i8254, > RTC, LAPIC and HPET. Respective code in kernel is very tangled, heavily > hardcoded and absolutely not scalable. I have reimplemented it, trying > to solve these issues. > > I did such things: > =A0- created unified timer driver's API (sys/timeet.h, kernel/kern_et.c). > It supports global and per-CPU timers, periodic and one-shot. Provides > driver and consumer interfaces for choosing timers and operating them; > =A0- cleaned existing x86 event timer driver's code and modified it for > new API (x86/isa/atrtc.c, x86/isa/clock.c, x86/x86/local_apic.c). LAPIC > timer is now per-CPU and supports both periodic and one-shot modes; > =A0- extended HPET driver to support it's event timers in periodic and > one-shot mode (dev/acpica/acpi_hpet.c). Support for per-CPU operation > and FSB interrupts planned for later; > =A0- written mostly machine-independent mid-layer for managing any presen= t > timers to provide clocks needed for kernel (x86/x86/timeevents.c). It > supports both global and per-CPU timers. Now it supports only periodic > mode, but one-shot mode support planned for later. > > All this stuff deeply configurable via both loader tunables on boot and > sysctls in real time: > > %sysctl kern.eventtimer > kern.eventtimer.choice: LAPIC(500) HPET(400) HPET1(390) HPET2(390) > i8254(100) RTC(0) > kern.eventtimer.et.LAPIC.flags: 7 > kern.eventtimer.et.LAPIC.frequency: 99752386 > kern.eventtimer.et.LAPIC.quality: 500 > kern.eventtimer.et.HPET.flags: 3 > kern.eventtimer.et.HPET.frequency: 14318180 > kern.eventtimer.et.HPET.quality: 400 > kern.eventtimer.et.HPET1.flags: 3 > kern.eventtimer.et.HPET1.frequency: 14318180 > kern.eventtimer.et.HPET1.quality: 390 > kern.eventtimer.et.HPET2.flags: 3 > kern.eventtimer.et.HPET2.frequency: 14318180 > kern.eventtimer.et.HPET2.quality: 390 > kern.eventtimer.et.RTC.flags: 1 > kern.eventtimer.et.RTC.frequency: 32768 > kern.eventtimer.et.RTC.quality: 0 > kern.eventtimer.et.i8254.flags: 1 > kern.eventtimer.et.i8254.frequency: 1193182 > kern.eventtimer.et.i8254.quality: 100 > kern.eventtimer.timer2: NONE > kern.eventtimer.timer1: i8254 > kern.eventtimer.singlemul: 2 > > By default system chooses two timers with highest "quality" for > hardclock and statclock/profclock. User may affect that choice via > disabling unwanted drivers and/or via direct specification of wanted > ones. It is possible to change timers on-flight via sysctls: > > %sysctl kern.eventtimer.timer1=3Dhpet > kern.eventtimer.timer1: i8254 -> HPET > %sysctl kern.eventtimer.timer2=3Dhpet1 > kern.eventtimer.timer2: NONE -> HPET1 > > After every timer change, if two timers available, mid-layer > cross-checks them, and if one of them is not functional - replaces it. > > If there is no second timer available, or user specified to not use it - > mid-layer automatically increases rate of the first timer and divide > it's frequency to satisfy system needs as good as possible. User may > specify how fast he wish to run fist timer relative to hz by setting > kern.eventtimer.singlemul tunable/sysctl. > > When profiling is active, mid-layer automatically rises respective timer > frequency to about 8KHz (was 1KHz previously) and decreases it back on > profiling end. > > All above was tested on i386 and amd64. XEN was not affected and builds > fine. pc98 was slightly touched. It wasn't tested, but builds fine. It's > pc98/cbus/clock.c needs respective rewrite to use new features. Other > architectures are untouched, but if any of them may benefit from this > functionality - it should be possible to share most of the code. > > Latest patches can be found here: > http://people.freebsd.org/~mav/et.20100606.patch > > Known issues: > =A0- i8254 timer generates 18Hz interrupt rate when not used and not > disabled. I haven't found a way to disable it's interrupt source while > holding spinlock. > =A0- timer drivers code will need some more cleaning after interrupt > handler will be able to return both argument and frame same time. > > Feedback is very appreciated. I've been testing these patches since the first iteration (et.20100606), and I haven't discovered any related issues. I'm not able to perform a suspend/resume cycle, but in all fairness, this machine has never been fully functional in this regard. I will look into the issue further if time allows... It seems to me that a more widespread review and test of the code by knowledgeable, skilled developers is warranted at this stage; as I understand it, these patches comprise the initial stages necessary to provide the so-called "tickless" kernel functionality which seems to be all the rage in today's virtualized environments (at least according to VMware, VirtualBox, etc...). So, big thanks to Alexander for bravely undertaking this task and seemingly making great progress! Also, Alexander, I've attached two dmesg outputs, one with your patch (r209354, applied and built today patched with http://people.freebsd.org/~mav/et.20100618.patch) and another without, r209256 from Thursday, June 17. I am unclear about the number of interrupts I should expect from the hpet0 device (compared to the 99 from the rtc at 100Hz), so here is the output of vmstat -i with and without the "et" patches: With "et" patches: interrupt total rate irq1: atkbd0 369 3 irq9: acpi0 961 8 irq12: psm0 1002 9 irq18: uhci5 140 1 irq19: uhci2 ehci0* 4823 45 irq20: hpet0 23893 223 irq23: uhci3 ehci1 11 0 irq256: vgapci0 1031 9 irq257: hdac0 14 0 irq258: iwn0 4258 39 irq259: bge0 1 0 Total 36503 341 Without "et" patches: interrupt total rate irq1: atkbd0 449 2 irq0: clk 17334 99 irq9: acpi0 1701 9 irq12: psm0 8784 50 irq18: uhci5 188 1 irq19: uhci2 ehci0* 5828 33 irq23: uhci3 ehci1 11 0 irq256: vgapci0 1896 10 irq257: hdac0 14 0 irq258: iwn0 29571 169 irq259: bge0 1 0 Total 65777 378 And lastly, the values of the kern.eventtimer sysctls: $ sysctl kern.eventtimer kern.eventtimer.choice: HPET(450) HPET1(440) HPET2(440) HPET3(440) i8254(10= 0) kern.eventtimer.et.HPET.flags: 3 kern.eventtimer.et.HPET.frequency: 14318180 kern.eventtimer.et.HPET.quality: 450 kern.eventtimer.et.HPET1.flags: 3 kern.eventtimer.et.HPET1.frequency: 14318180 kern.eventtimer.et.HPET1.quality: 440 kern.eventtimer.et.HPET2.flags: 3 kern.eventtimer.et.HPET2.frequency: 14318180 kern.eventtimer.et.HPET2.quality: 440 kern.eventtimer.et.HPET3.flags: 3 kern.eventtimer.et.HPET3.frequency: 14318180 kern.eventtimer.et.HPET3.quality: 440 kern.eventtimer.et.i8254.flags: 1 kern.eventtimer.et.i8254.frequency: 1193182 kern.eventtimer.et.i8254.quality: 100 kern.eventtimer.timer2: HPET1 kern.eventtimer.timer1: HPET kern.eventtimer.singlemul: 4 Is there anything else one should provide (I know I've asked this before, but I can't recall if you stated anything "officially")? Thanks again, -Brandon --002215048d0bca851504896ab298 Content-Type: application/octet-stream; name="dmesg.boot.et.20100618" Content-Disposition: attachment; filename="dmesg.boot.et.20100618" Content-Transfer-Encoding: base64 X-Attachment-Id: f_gan3nl380 MHgwMDAwMDAwMGJkNGE3MDAwIC0gMHgwMDAwMDAwMGJkNWNmZmZmLCAxMjE2NTEyIGJ5dGVzICgy OTcgcGFnZXMpCjB4MDAwMDAwMDBiZDYwZjAwMCAtIDB4MDAwMDAwMDBiZDcwOGZmZiwgMTAyNDAw MCBieXRlcyAoMjUwIHBhZ2VzKQoweDAwMDAwMDAwYmQ5MGYwMDAgLSAweDAwMDAwMDAwYmQ5MTdm ZmYsIDM2ODY0IGJ5dGVzICg5IHBhZ2VzKQoweDAwMDAwMDAwYmQ5MWYwMDAgLSAweDAwMDAwMDAw YmQ5NjJmZmYsIDI3ODUyOCBieXRlcyAoNjggcGFnZXMpCjB4MDAwMDAwMDBiZDk5ZjAwMCAtIDB4 MDAwMDAwMDBiZDllMmZmZiwgMjc4NTI4IGJ5dGVzICg2OCBwYWdlcykKMHgwMDAwMDAwMGJkOWZm MDAwIC0gMHgwMDAwMDAwMGJkOWZmZmZmLCA0MDk2IGJ5dGVzICgxIHBhZ2VzKQoweDAwMDAwMDAx MDAwMDAwMDAgLSAweDAwMDAwMDAxM2ZmZWZmZmYsIDEwNzM2NzYyODggYnl0ZXMgKDI2MjEyOCBw YWdlcykKYXZhaWwgbWVtb3J5ID0gNDA1Nzg0MTY2NCAoMzg2OSBNQikKQUNQSSBBUElDIFRhYmxl OiA8UFRMVEQgIAkgQVBJQyAgPgpJTlRSOiBBZGRpbmcgbG9jYWwgQVBJQyAxIGFzIGEgdGFyZ2V0 CkZyZWVCU0QvU01QOiBNdWx0aXByb2Nlc3NvciBTeXN0ZW0gRGV0ZWN0ZWQ6IDIgQ1BVcwpGcmVl QlNEL1NNUDogMSBwYWNrYWdlKHMpIHggMiBjb3JlKHMpCiBjcHUwIChCU1ApOiBBUElDIElEOiAg MAogY3B1MSAoQVApOiBBUElDIElEOiAgMQpBUElDOiBDUFUgMCBoYXMgQUNQSSBJRCAwCkFQSUM6 IENQVSAxIGhhcyBBQ1BJIElEIDEKeDg2YmlvczogICBJVlQgMHgwMDAwMDAtMHgwMDA0ZmYgYXQg MHhmZmZmZmYwMDAwMDAwMDAwCng4NmJpb3M6ICBTU0VHIDB4MDEwMDAwLTB4MDFmZmZmIGF0IDB4 ZmZmZmZmODAwMDAxNjAwMAp4ODZiaW9zOiAgRUJEQSAweDA5YzAwMC0weDA5ZmZmZiBhdCAweGZm ZmZmZjAwMDAwOWMwMDAKeDg2YmlvczogICBST00gMHgwYTAwMDAtMHgwZWZmZmYgYXQgMHhmZmZm ZmYwMDAwMGEwMDAwCldBUk5JTkc6IFZJTUFHRSAodmlydHVhbGl6ZWQgbmV0d29yayBzdGFjaykg aXMgYSBoaWdobHkgZXhwZXJpbWVudGFsIGZlYXR1cmUuClVMRTogc2V0dXAgY3B1IDAKVUxFOiBz ZXR1cCBjcHUgMQpBQ1BJOiBSU0RQIDB4Zjc4ZTAgMDAwMjQgKHYyIFBUTFREICkKQUNQSTogWFNE VCAweGJkOWY3NmM1IDAwMDdDICh2MSBERUxMICAgIFFBMDkgICAgMDYwNDAwMDAgIExUUCAwMDAw MDAwMCkKQUNQSTogRkFDUCAweGJkOWU3MDAwIDAwMEY0ICh2MyBJTlRFTCAgQ1JFU1RMTkUgMDYw NDAwMDAgQUxBTiAwMDAwMDAwMSkKQUNQSTogRFNEVCAweGJkOWU4MDAwIDA3NDBDICh2MiBJbnRl bCAgQ0FOVElHQSAgMDYwNDAwMDAgSU5UTCAyMDA1MDYyNCkKQUNQSTogRkFDUyAweGJkOTllZmMw IDAwMDQwCkFDUEk6IEhQRVQgMHhiZDlmZWQxNiAwMDAzOCAodjEgSU5URUwgIENSRVNUTE5FIDA2 MDQwMDAwIExPSFIgMDAwMDAwNUEpCkFDUEk6IE1DRkcgMHhiZDlmZWQ0ZSAwMDAzQyAodjEgSU5U RUwgIENSRVNUTE5FIDA2MDQwMDAwIExPSFIgMDAwMDAwNUEpCkFDUEk6IEFQSUMgMHhiZDlmZWQ4 YSAwMDA2OCAodjEgUFRMVEQgID8gQVBJQyAgIDA2MDQwMDAwICBMVFAgMDAwMDAwMDApCkFDUEk6 IEJPT1QgMHhiZDlmZWRmMiAwMDAyOCAodjEgUFRMVEQgICRTQkZUQkwkIDA2MDQwMDAwICBMVFAg MDAwMDAwMDEpCkFDUEk6IFNMSUMgMHhiZDlmZWUxYSAwMDE3NiAodjEgREVMTCAgICBRQTA5ICAg IDA2MDQwMDAwICBMVFAgMDAwMDAwMDApCkFDUEk6IE9TRlIgMHhiZDlmZWY5MCAwMDA3MCAodjEg REVMTCAgIERFTEwgICAgIDA2MDQwMDAwIEFTTCAgMDAwMDAwNjEpCkFDUEk6IFNTRFQgMHhiZDlm Nzc2OSAwMDAzOSAodjEgQnJ0UmVmICBERDAxQlJUIDAwMDAxMDAwIElOVEwgMjAwNTA2MjQpCkFD UEk6IFNTRFQgMHhiZDllNjAwMCAwMDY1NSAodjEgIFBtUmVmICAgIENwdVBtIDAwMDAzMDAwIElO VEwgMjAwNTA2MjQpCkFDUEk6IFNTRFQgMHhiZDllNTAwMCAwMDI1OSAodjEgIFBtUmVmICBDcHUw VHN0IDAwMDAzMDAwIElOVEwgMjAwNTA2MjQpCkFDUEk6IFNTRFQgMHhiZDllNDAwMCAwMDIwRiAo djEgIFBtUmVmICAgIEFwVHN0IDAwMDAzMDAwIElOVEwgMjAwNTA2MjQpCk1BRFQ6IEZvdW5kIElP IEFQSUMgSUQgMiwgSW50ZXJydXB0IDAgYXQgMHhmZWMwMDAwMAppb2FwaWMwOiBSb3V0aW5nIGV4 dGVybmFsIDgyNTlBJ3MgLT4gaW50cGluIDAKbGFwaWMwOiBSb3V0aW5nIE5NSSAtPiBMSU5UMQps YXBpYzA6IExJTlQxIHRyaWdnZXI6IGVkZ2UKbGFwaWMwOiBMSU5UMSBwb2xhcml0eTogaGlnaAps YXBpYzE6IFJvdXRpbmcgTk1JIC0+IExJTlQxCmxhcGljMTogTElOVDEgdHJpZ2dlcjogZWRnZQps YXBpYzE6IExJTlQxIHBvbGFyaXR5OiBoaWdoCk1BRFQ6IEludGVycnVwdCBvdmVycmlkZTogc291 cmNlIDAsIGlycSAyCmlvYXBpYzA6IFJvdXRpbmcgSVJRIDAgLT4gaW50cGluIDIKTUFEVDogSW50 ZXJydXB0IG92ZXJyaWRlOiBzb3VyY2UgOSwgaXJxIDkKaW9hcGljMDogaW50cGluIDkgdHJpZ2dl cjogbGV2ZWwKaW9hcGljMCA8VmVyc2lvbiAyLjA+IGlycXMgMC0yMyBvbiBtb3RoZXJib2FyZApj cHUwIEJTUDoKICAgICBJRDogMHgwMDAwMDAwMCAgIFZFUjogMHgwMDA1MDAxNCBMRFI6IDB4MDAw MDAwMDAgREZSOiAweGZmZmZmZmZmCiAgbGludDA6IDB4MDAwMTA3MDAgbGludDE6IDB4MDAwMDA0 MDAgVFBSOiAweDAwMDAwMDAwIFNWUjogMHgwMDAwMDFmZgogIHRpbWVyOiAweDAwMDEwMGVmIHRo ZXJtOiAweDAwMDEwMDAwIGVycjogMHgwMDAwMDBmMCBwbWM6IDB4MDAwMTA0MDAKICAgY21jaTog MHgwMDAwMDAwMApzbmRfdW5pdF9pbml0KCkgdT0weDAwZmY4MDAwIFs1MTJdIGQ9MHgwMDAwN2Mw MCBbMzJdIGM9MHgwMDAwMDNmZiBbMTAyNF0KZmVlZGVyX3JlZ2lzdGVyOiBzbmRfdW5pdD0tMSBz bmRfbWF4YXV0b3ZjaGFucz0xNiBsYXRlbmN5PTUgZmVlZGVyX3JhdGVfbWluPTEgZmVlZGVyX3Jh dGVfbWF4PTIwMTYwMDAgZmVlZGVyX3JhdGVfcm91bmQ9MjUKd2xhbjogPDgwMi4xMSBMaW5rIExh eWVyPgpWRVNBOiBpbmZvcm1hdGlvbiBibG9jawowMDAwICAgNTYgNDUgNTMgNDEgMDAgMDMgMDAg MDEgMDAgMDEgMDEgMDAgMDAgMDAgNDAgMDAKMDAxMCAgIDAwIDAxIGZmIDAxIDAwIDAxIDMzIDAx IDAwIDAxIDQ1IDAxIDAwIDAxIDY5IDAxCjAwMjAgICAwMCAwMSAwMCAwMCAwMCAwMCAwMCAwMCAw MCAwMCAwMCAwMCAwMCAwMCAwMCAwMAowMDMwICAgMDAgMDAgMDAgMDAgMDAgMDAgMDAgMDAgMDAg MDAgMDAgMDAgMDAgMDAgMDAgMDAKMDA0MCAgIDYwIDAxIDYxIDAxIDYyIDAxIDYzIDAxIDY0IDAx IDY1IDAxIDY2IDAxIDY3IDAxCjAwNTAgICA2OCAwMSA2OSAwMSA2YSAwMSA2YiAwMSA2YyAwMSA2 ZCAwMSA2ZSAwMSA2ZiAwMQowMDYwICAgNzAgMDEgNzEgMDEgM2MgMDEgNGQgMDEgNWMgMDEgM2Eg MDEgNGIgMDEgNWEgMDEKMDA3MCAgIDA3IDAxIDFhIDAxIDFiIDAxIDA1IDAxIDE3IDAxIDE4IDAx IDEyIDAxIDE0IDAxCjAwODAgICAxNSAwMSAwMSAwMSAwMyAwMSAxMSAwMSBmZiBmZiAwMCAwMCAw MCAwMCAwMCAwMAowMDkwICAgMDAgMDAgMDAgMDAgMDAgMDAgMDAgMDAgMDAgMDAgMDAgMDAgMDAg MDAgMDAgMDAKMDBhMCAgIDAwIDAwIDAwIDAwIDAwIDAwIDAwIDAwIDAwIDAwIDAwIDAwIDAwIDAw IDAwIDAwCjAwYjAgICAwMCAwMCAwMCAwMCAwMCAwMCAwMCAwMCAwMCAwMCAwMCAwMCAwMCAwMCAw MCAwMAowMGMwICAgMDAgMDAgMDAgMDAgMDAgMDAgMDAgMDAgMDAgMDAgMDAgMDAgMDAgMDAgMDAg MDAKMDBkMCAgIDAwIDAwIDAwIDAwIDAwIDAwIDAwIDAwIDAwIDAwIDAwIDAwIDAwIDAwIDAwIDAw CjAwZTAgICAwMCAwMCAwMCAwMCAwMCAwMCAwMCAwMCAwMCAwMCAwMCAwMCAwMCAwMCAwMCAwMAow MGYwICAgMDAgMDAgMDAgMDAgMDAgMDAgMDAgMDAgMDAgMDAgMDAgMDAgMDAgMDAgMDAgMDAKMDEw MCAgIDQ5IDZlIDc0IDY1IDZjIDI4IDcyIDI5IDQzIDYxIDZlIDc0IDY5IDY3IDYxIDIwCjAxMTAg ICA0NyA3MiA2MSA3MCA2OCA2OSA2MyA3MyAyMCA0MyA2OCA2OSA3MCAyMCA0MSA2MwowMTIwICAg NjMgNjUgNmMgNjUgNzIgNjEgNzQgNjUgNjQgMjAgNTYgNDcgNDEgMjAgNDIgNDkKMDEzMCAgIDRm IDUzIDAwIDQ5IDZlIDc0IDY1IDZjIDIwIDQzIDZmIDcyIDcwIDZmIDcyIDYxCjAxNDAgICA3NCA2 OSA2ZiA2ZSAwMCA0OSA2ZSA3NCA2NSA2YyAyOCA3MiAyOSA0MyA2MSA2ZQowMTUwICAgNzQgNjkg NjcgNjEgMjAgNDcgNzIgNjEgNzAgNjggNjkgNjMgNzMgMjAgNDMgNmYKMDE2MCAgIDZlIDc0IDcy IDZmIDZjIDZjIDY1IDcyIDAwIDQ4IDYxIDcyIDY0IDc3IDYxIDcyCjAxNzAgICA2NSAyMCA1NiA2 NSA3MiA3MyA2OSA2ZiA2ZSAyMCAzMCAyZSAzMCAwMCAwMCAwMAowMTgwICAgMDAgMDAgMDAgMDAg MDAgMDAgMDAgMDAgMDAgMDAgMDAgMDAgMDAgMDAgMDAgMDAKMDE5MCAgIDAwIDAwIDAwIDAwIDAw IDAwIDAwIDAwIDAwIDAwIDAwIDAwIDAwIDAwIDAwIDAwCjAxYTAgICAwMCAwMCAwMCAwMCAwMCAw MCAwMCAwMCAwMCAwMCAwMCAwMCAwMCAwMCAwMCAwMAowMWIwICAgMDAgMDAgMDAgMDAgMDAgMDAg MDAgMDAgMDAgMDAgMDAgMDAgMDAgMDAgMDAgMDAKMDFjMCAgIDAwIDAwIDAwIDAwIDAwIDAwIDAw IDAwIDAwIDAwIDAwIDAwIDAwIDAwIDAwIDAwCjAxZDAgICAwMCAwMCAwMCAwMCAwMCAwMCAwMCAw MCAwMCAwMCAwMCAwMCAwMCAwMCAwMCAwMAowMWUwICAgMDAgMDAgMDAgMDAgMDAgMDAgMDAgMDAg MDAgMDAgMDAgMDAgMDAgMDAgMDAgMDAKMDFmMCAgIDAwIDAwIDAwIDAwIDAwIDAwIDAwIDAwIDAw IDAwIDAwIDAwIDAwIDAwIDAwIDAwClZFU0E6IDkgbW9kZShzKSBmb3VuZApWRVNBOiB2My4wLCAz MjcwNGsgbWVtb3J5LCBmbGFnczoweDEsIG1vZGUgdGFibGU6MHhmZmZmZmY4MDAwMDYyMDQwICgx MDAwMDQwKQpWRVNBOiBJbnRlbChyKUNhbnRpZ2EgR3JhcGhpY3MgQ2hpcCBBY2NlbGVyYXRlZCBW R0EgQklPUwpWRVNBOiBJbnRlbCBDb3Jwb3JhdGlvbiBJbnRlbChyKUNhbnRpZ2EgR3JhcGhpY3Mg Q29udHJvbGxlciBIYXJkd2FyZSBWZXJzaW9uIDAuMAppbzogPEkvTz4Ka2JkOiBuZXcgYXJyYXkg c2l6ZSA0CmtiZDEgYXQga2JkbXV4MAptZW06IDxtZW1vcnk+Cm51bGw6IDxudWxsIGRldmljZSwg emVybyBkZXZpY2U+Cm5mc2xvY2s6IHBzZXVkby1kZXZpY2UKcmFuZG9tOiA8ZW50cm9weSBzb3Vy Y2UsIFNvZnR3YXJlLCBZYXJyb3c+CkNQVTA6IGxvY2FsIEFQSUMgZXJyb3IgMHg4MAphY3BpMDog PERFTEwgUUEwOSAgID4gb24gbW90aGVyYm9hcmQKUENJZTogTWVtb3J5IE1hcHBlZCBjb25maWd1 cmF0aW9uIGJhc2UgQCAweGUwMDAwMDAwCmlvYXBpYzA6IHJvdXRpbmcgaW50cGluIDkgKElTQSBJ UlEgOSkgdG8gbGFwaWMgMCB2ZWN0b3IgNDgKYWNwaTA6IFtNUFNBRkVdCmFjcGkwOiBbSVRIUkVB RF0KQWNwaU9zRGVyaXZlUGNpSWQ6IFxcX1NCXy5QQ0kwLkhCVVMgLT4gYnVzIDAgZGV2IDAgZnVu YyAwCkFjcGlPc0Rlcml2ZVBjaUlkOiBcXF9TQl8uUENJMC5SUDA0LlBYQ1MgLT4gYnVzIDAgZGV2 IDI4IGZ1bmMgMwphY3BpMDogUG93ZXIgQnV0dG9uIChmaXhlZCkKQWNwaU9zRGVyaXZlUGNpSWQ6 IFxcX1NCXy5QQ0kwLkxQQ0IuTFBDMCAtPiBidXMgMCBkZXYgMzEgZnVuYyAwCkFjcGlPc0Rlcml2 ZVBjaUlkOiBcXF9TQl8uUENJMC5MUENCLkxQQzEgLT4gYnVzIDAgZGV2IDMxIGZ1bmMgMApocGV0 MDogdmVuZG9yIDB4ODA4NiwgcmV2IDB4MSwgMTQzMTgxODBIeiA2NGJpdCwgNCB0aW1lcnMsIGxl Z2FjeSByb3V0ZQpocGV0MDogIHQwOiBpcnFzIDB4MDBmMDAwMDAgKDApLCA2NGJpdCwgcGVyaW9k aWMKaHBldDA6ICB0MTogaXJxcyAweDAwZjAwMDAwICgwKQpocGV0MDogIHQyOiBpcnFzIDB4MDBm MDA4MDAgKDApCmhwZXQwOiAgdDM6IGlycXMgMHgwMGYwMTAwMCAoMCkKVGltZWNvdW50ZXIgIkhQ RVQiIGZyZXF1ZW5jeSAxNDMxODE4MCBIeiBxdWFsaXR5IDkwMAppb2FwaWMwOiByb3V0aW5nIGlu dHBpbiAyMCAoUENJIElSUSAyMCkgdG8gbGFwaWMgMCB2ZWN0b3IgNDkKaHBldDA6IFtNUFNBRkVd CmhwZXQwOiBbRklMVEVSXQpFdmVudCB0aW1lciAiSFBFVCIgZnJlcXVlbmN5IDE0MzE4MTgwIEh6 IHF1YWxpdHkgNDUwCkV2ZW50IHRpbWVyICJIUEVUMSIgZnJlcXVlbmN5IDE0MzE4MTgwIEh6IHF1 YWxpdHkgNDQwCkV2ZW50IHRpbWVyICJIUEVUMiIgZnJlcXVlbmN5IDE0MzE4MTgwIEh6IHF1YWxp dHkgNDQwCkV2ZW50IHRpbWVyICJIUEVUMyIgZnJlcXVlbmN5IDE0MzE4MTgwIEh6IHF1YWxpdHkg NDQwCkFDUEkgdGltZXI6IDAvMyAwLzMgMC8zIDAvMyAxLzIgMS8yIDEvMiAwLzMgMC8zIDAvMyAt PiAzClRpbWVjb3VudGVyICJBQ1BJLXNhZmUiIGZyZXF1ZW5jeSAzNTc5NTQ1IEh6IHF1YWxpdHkg ODUwCmFjcGlfdGltZXIwOiA8MjQtYml0IHRpbWVyIGF0IDMuNTc5NTQ1TUh6PiBwb3J0IDB4NDA4 LTB4NDBiIG9uIGFjcGkwCmNwdTA6IDxBQ1BJIENQVT4gb24gYWNwaTAKQUNQSTogU1NEVCAweGJk OTFhYzIwIDAwMjY1ICh2MSAgUG1SZWYgIENwdTBJc3QgMDAwMDMwMDAgSU5UTCAyMDA1MDYyNCkK QUNQSTogRHluYW1pYyBPRU0gVGFibGUgTG9hZDoKQUNQSTogU1NEVCAwIDAwMjY1ICh2MSAgUG1S ZWYgIENwdTBJc3QgMDAwMDMwMDAgSU5UTCAyMDA1MDYyNCkKQUNQSTogU1NEVCAweGJkOTE4NjIw IDAwNTc1ICh2MSAgUG1SZWYgIENwdTBDc3QgMDAwMDMwMDEgSU5UTCAyMDA1MDYyNCkKQUNQSTog RHluYW1pYyBPRU0gVGFibGUgTG9hZDoKQUNQSTogU1NEVCAwIDAwNTc1ICh2MSAgUG1SZWYgIENw dTBDc3QgMDAwMDMwMDEgSU5UTCAyMDA1MDYyNCkKY3B1MTogPEFDUEkgQ1BVPiBvbiBhY3BpMApB Q1BJOiBTU0RUIDB4YmQ5MTljYTAgMDAxQ0YgKHYxICBQbVJlZiAgICBBcElzdCAwMDAwMzAwMCBJ TlRMIDIwMDUwNjI0KQpBQ1BJOiBEeW5hbWljIE9FTSBUYWJsZSBMb2FkOgpBQ1BJOiBTU0RUIDAg MDAxQ0YgKHYxICBQbVJlZiAgICBBcElzdCAwMDAwMzAwMCBJTlRMIDIwMDUwNjI0KQpBQ1BJOiBT U0RUIDB4YmQ5MTlmMjAgMDAwOEQgKHYxICBQbVJlZiAgICBBcENzdCAwMDAwMzAwMCBJTlRMIDIw MDUwNjI0KQpBQ1BJOiBEeW5hbWljIE9FTSBUYWJsZSBMb2FkOgpBQ1BJOiBTU0RUIDAgMDAwOEQg KHYxICBQbVJlZiAgICBBcENzdCAwMDAwMzAwMCBJTlRMIDIwMDUwNjI0KQphY3BpX2VjMDogPEVt YmVkZGVkIENvbnRyb2xsZXI6IEdQRSAweDFjPiBwb3J0IDB4NjIsMHg2NiBvbiBhY3BpMApwY2lf bGluazA6ICAgICAgICBJbmRleCAgSVJRICBSdGQgIFJlZiAgSVJRcwogIEluaXRpYWwgUHJvYmUg ICAgICAgMCAgICA1ICAgTiAgICAgMCAgMSAzIDQgNSA2IDcgMTAgMTIgMTQgMTUKICBWYWxpZGF0 aW9uICAgICAgICAgIDAgICAgNSAgIE4gICAgIDAgIDEgMyA0IDUgNiA3IDEwIDEyIDE0IDE1CiAg QWZ0ZXIgRGlzYWJsZSAgICAgICAwICAyNTUgICBOICAgICAwICAxIDMgNCA1IDYgNyAxMCAxMiAx NCAxNQpwY2lfbGluazE6ICAgICAgICBJbmRleCAgSVJRICBSdGQgIFJlZiAgSVJRcwogIEluaXRp YWwgUHJvYmUgICAgICAgMCAgIDExICAgTiAgICAgMCAgMSAzIDQgNSA2IDcgMTEgMTIgMTQgMTUK ICBWYWxpZGF0aW9uICAgICAgICAgIDAgICAxMSAgIE4gICAgIDAgIDEgMyA0IDUgNiA3IDExIDEy IDE0IDE1CiAgQWZ0ZXIgRGlzYWJsZSAgICAgICAwICAyNTUgICBOICAgICAwICAxIDMgNCA1IDYg NyAxMSAxMiAxNCAxNQpwY2lfbGluazI6ICAgICAgICBJbmRleCAgSVJRICBSdGQgIFJlZiAgSVJR cwogIEluaXRpYWwgUHJvYmUgICAgICAgMCAgIDEwICAgTiAgICAgMCAgMSAzIDQgNSA2IDcgMTAg MTIgMTQgMTUKICBWYWxpZGF0aW9uICAgICAgICAgIDAgICAxMCAgIE4gICAgIDAgIDEgMyA0IDUg NiA3IDEwIDEyIDE0IDE1CiAgQWZ0ZXIgRGlzYWJsZSAgICAgICAwICAyNTUgICBOICAgICAwICAx IDMgNCA1IDYgNyAxMCAxMiAxNCAxNQpwY2lfbGluazM6ICAgICAgICBJbmRleCAgSVJRICBSdGQg IFJlZiAgSVJRcwogIEluaXRpYWwgUHJvYmUgICAgICAgMCAgIDEwICAgTiAgICAgMCAgMSAzIDQg NSA2IDcgMTEgMTIgMTQgMTUKICBWYWxpZGF0aW9uICAgICAgICAgIDAgIDI1NSAgIE4gICAgIDAg IDEgMyA0IDUgNiA3IDExIDEyIDE0IDE1CiAgQWZ0ZXIgRGlzYWJsZSAgICAgICAwICAyNTUgICBO ICAgICAwICAxIDMgNCA1IDYgNyAxMSAxMiAxNCAxNQpwY2lfbGluazQ6ICAgICAgICBJbmRleCAg SVJRICBSdGQgIFJlZiAgSVJRcwogIEluaXRpYWwgUHJvYmUgICAgICAgMCAgMjU1ICAgTiAgICAg MCAgMSAzIDQgNSA2IDcgMTAgMTIgMTQgMTUKICBWYWxpZGF0aW9uICAgICAgICAgIDAgIDI1NSAg IE4gICAgIDAgIDEgMyA0IDUgNiA3IDEwIDEyIDE0IDE1CiAgQWZ0ZXIgRGlzYWJsZSAgICAgICAw ICAyNTUgICBOICAgICAwICAxIDMgNCA1IDYgNyAxMCAxMiAxNCAxNQpwY2lfbGluazU6ICAgICAg ICBJbmRleCAgSVJRICBSdGQgIFJlZiAgSVJRcwogIEluaXRpYWwgUHJvYmUgICAgICAgMCAgIDEx ICAgTiAgICAgMCAgMSAzIDQgNSA2IDcgMTEgMTIgMTQgMTUKICBWYWxpZGF0aW9uICAgICAgICAg IDAgICAxMSAgIE4gICAgIDAgIDEgMyA0IDUgNiA3IDExIDEyIDE0IDE1CiAgQWZ0ZXIgRGlzYWJs ZSAgICAgICAwICAyNTUgICBOICAgICAwICAxIDMgNCA1IDYgNyAxMSAxMiAxNCAxNQpwY2lfbGlu azY6ICAgICAgICBJbmRleCAgSVJRICBSdGQgIFJlZiAgSVJRcwogIEluaXRpYWwgUHJvYmUgICAg ICAgMCAgIDEwICAgTiAgICAgMCAgMSAzIDQgNSA2IDcgMTAgMTIgMTQgMTUKICBWYWxpZGF0aW9u ICAgICAgICAgIDAgICAxMCAgIE4gICAgIDAgIDEgMyA0IDUgNiA3IDEwIDEyIDE0IDE1CiAgQWZ0 ZXIgRGlzYWJsZSAgICAgICAwICAyNTUgICBOICAgICAwICAxIDMgNCA1IDYgNyAxMCAxMiAxNCAx NQpwY2lfbGluazc6ICAgICAgICBJbmRleCAgSVJRICBSdGQgIFJlZiAgSVJRcwogIEluaXRpYWwg UHJvYmUgICAgICAgMCAgICA3ICAgTiAgICAgMCAgMSAzIDQgNSA2IDcgMTEgMTIgMTQgMTUKICBW YWxpZGF0aW9uICAgICAgICAgIDAgICAgNyAgIE4gICAgIDAgIDEgMyA0IDUgNiA3IDExIDEyIDE0 IDE1CiAgQWZ0ZXIgRGlzYWJsZSAgICAgICAwICAyNTUgICBOICAgICAwICAxIDMgNCA1IDYgNyAx MSAxMiAxNCAxNQpwY2liMDogPEFDUEkgSG9zdC1QQ0kgYnJpZGdlPiBwb3J0IDB4Y2Y4LTB4Y2Zm IG9uIGFjcGkwCnBjaTA6IDxBQ1BJIFBDSSBidXM+IG9uIHBjaWIwCnBjaTA6IGRvbWFpbj0wLCBw aHlzaWNhbCBidXM9MApmb3VuZC0+CXZlbmRvcj0weDgwODYsIGRldj0weDJhNDAsIHJldmlkPTB4 MDcKCWRvbWFpbj0wLCBidXM9MCwgc2xvdD0wLCBmdW5jPTAKCWNsYXNzPTA2LTAwLTAwLCBoZHJ0 eXBlPTB4MDAsIG1mZGV2PTAKCWNtZHJlZz0weDAxMDYsIHN0YXRyZWc9MHgyMDkwLCBjYWNoZWxu c3o9MCAoZHdvcmRzKQoJbGF0dGltZXI9MHgwMCAoMCBucyksIG1pbmdudD0weDAwICgwIG5zKSwg bWF4bGF0PTB4MDAgKDAgbnMpCmZvdW5kLT4JdmVuZG9yPTB4ODA4NiwgZGV2PTB4MmE0MiwgcmV2 aWQ9MHgwNwoJZG9tYWluPTAsIGJ1cz0wLCBzbG90PTIsIGZ1bmM9MAoJY2xhc3M9MDMtMDAtMDAs IGhkcnR5cGU9MHgwMCwgbWZkZXY9MQoJY21kcmVnPTB4MDAwNywgc3RhdHJlZz0weDAwOTAsIGNh Y2hlbG5zej0wIChkd29yZHMpCglsYXR0aW1lcj0weDAwICgwIG5zKSwgbWluZ250PTB4MDAgKDAg bnMpLCBtYXhsYXQ9MHgwMCAoMCBucykKCWludHBpbj1hLCBpcnE9NQoJcG93ZXJzcGVjIDMgIHN1 cHBvcnRzIEQwIEQzICBjdXJyZW50IEQwCglNU0kgc3VwcG9ydHMgMSBtZXNzYWdlCgltYXBbMTBd OiB0eXBlIE1lbW9yeSwgcmFuZ2UgNjQsIGJhc2UgMHhmODAwMDAwMCwgc2l6ZSAyMiwgZW5hYmxl ZAoJbWFwWzE4XTogdHlwZSBQcmVmZXRjaGFibGUgTWVtb3J5LCByYW5nZSA2NCwgYmFzZSAweGQw MDAwMDAwLCBzaXplIDI4LCBlbmFibGVkCgltYXBbMjBdOiB0eXBlIEkvTyBQb3J0LCByYW5nZSAz MiwgYmFzZSAweDE4MDAsIHNpemUgIDMsIGVuYWJsZWQKcGNpYjA6IG1hdGNoZWQgZW50cnkgZm9y IDAuMi5JTlRBCnBjaWIwOiBzbG90IDIgSU5UQSBoYXJkd2lyZWQgdG8gSVJRIDE2CmZvdW5kLT4J dmVuZG9yPTB4ODA4NiwgZGV2PTB4MmE0MywgcmV2aWQ9MHgwNwoJZG9tYWluPTAsIGJ1cz0wLCBz bG90PTIsIGZ1bmM9MQoJY2xhc3M9MDMtODAtMDAsIGhkcnR5cGU9MHgwMCwgbWZkZXY9MQoJY21k cmVnPTB4MDAwNywgc3RhdHJlZz0weDAwOTAsIGNhY2hlbG5zej0wIChkd29yZHMpCglsYXR0aW1l cj0weDAwICgwIG5zKSwgbWluZ250PTB4MDAgKDAgbnMpLCBtYXhsYXQ9MHgwMCAoMCBucykKCXBv d2Vyc3BlYyAzICBzdXBwb3J0cyBEMCBEMyAgY3VycmVudCBEMAoJbWFwWzEwXTogdHlwZSBNZW1v cnksIHJhbmdlIDY0LCBiYXNlIDB4Zjg0MDAwMDAsIHNpemUgMjAsIGVuYWJsZWQKZm91bmQtPgl2 ZW5kb3I9MHg4MDg2LCBkZXY9MHgyOTM3LCByZXZpZD0weDAzCglkb21haW49MCwgYnVzPTAsIHNs b3Q9MjYsIGZ1bmM9MAoJY2xhc3M9MGMtMDMtMDAsIGhkcnR5cGU9MHgwMCwgbWZkZXY9MQoJY21k cmVnPTB4MDAwNSwgc3RhdHJlZz0weDAyOTAsIGNhY2hlbG5zej0wIChkd29yZHMpCglsYXR0aW1l cj0weDAwICgwIG5zKSwgbWluZ250PTB4MDAgKDAgbnMpLCBtYXhsYXQ9MHgwMCAoMCBucykKCWlu dHBpbj1hLCBpcnE9NQoJbWFwWzIwXTogdHlwZSBJL08gUG9ydCwgcmFuZ2UgMzIsIGJhc2UgMHgx ODIwLCBzaXplICA1LCBlbmFibGVkCnBjaWIwOiBtYXRjaGVkIGVudHJ5IGZvciAwLjI2LklOVEEK cGNpYjA6IHNsb3QgMjYgSU5UQSBoYXJkd2lyZWQgdG8gSVJRIDE2CmZvdW5kLT4JdmVuZG9yPTB4 ODA4NiwgZGV2PTB4MjkzOCwgcmV2aWQ9MHgwMwoJZG9tYWluPTAsIGJ1cz0wLCBzbG90PTI2LCBm dW5jPTEKCWNsYXNzPTBjLTAzLTAwLCBoZHJ0eXBlPTB4MDAsIG1mZGV2PTAKCWNtZHJlZz0weDAw MDUsIHN0YXRyZWc9MHgwMjkwLCBjYWNoZWxuc3o9MCAoZHdvcmRzKQoJbGF0dGltZXI9MHgwMCAo MCBucyksIG1pbmdudD0weDAwICgwIG5zKSwgbWF4bGF0PTB4MDAgKDAgbnMpCglpbnRwaW49Yiwg aXJxPTExCgltYXBbMjBdOiB0eXBlIEkvTyBQb3J0LCByYW5nZSAzMiwgYmFzZSAweDE4NDAsIHNp emUgIDUsIGVuYWJsZWQKcGNpYjA6IG1hdGNoZWQgZW50cnkgZm9yIDAuMjYuSU5UQgpwY2liMDog c2xvdCAyNiBJTlRCIGhhcmR3aXJlZCB0byBJUlEgMjEKZm91bmQtPgl2ZW5kb3I9MHg4MDg2LCBk ZXY9MHgyOTM5LCByZXZpZD0weDAzCglkb21haW49MCwgYnVzPTAsIHNsb3Q9MjYsIGZ1bmM9MgoJ Y2xhc3M9MGMtMDMtMDAsIGhkcnR5cGU9MHgwMCwgbWZkZXY9MAoJY21kcmVnPTB4MDAwNSwgc3Rh dHJlZz0weDAyOTAsIGNhY2hlbG5zej0wIChkd29yZHMpCglsYXR0aW1lcj0weDAwICgwIG5zKSwg bWluZ250PTB4MDAgKDAgbnMpLCBtYXhsYXQ9MHgwMCAoMCBucykKCWludHBpbj1jLCBpcnE9MTAK CW1hcFsyMF06IHR5cGUgSS9PIFBvcnQsIHJhbmdlIDMyLCBiYXNlIDB4MTg2MCwgc2l6ZSAgNSwg ZW5hYmxlZApwY2liMDogbWF0Y2hlZCBlbnRyeSBmb3IgMC4yNi5JTlRDCnBjaWIwOiBzbG90IDI2 IElOVEMgaGFyZHdpcmVkIHRvIElSUSAxOQpmb3VuZC0+CXZlbmRvcj0weDgwODYsIGRldj0weDI5 M2MsIHJldmlkPTB4MDMKCWRvbWFpbj0wLCBidXM9MCwgc2xvdD0yNiwgZnVuYz03CgljbGFzcz0w Yy0wMy0yMCwgaGRydHlwZT0weDAwLCBtZmRldj0wCgljbWRyZWc9MHgwMTA2LCBzdGF0cmVnPTB4 MDI5MCwgY2FjaGVsbnN6PTAgKGR3b3JkcykKCWxhdHRpbWVyPTB4MDAgKDAgbnMpLCBtaW5nbnQ9 MHgwMCAoMCBucyksIG1heGxhdD0weDAwICgwIG5zKQoJaW50cGluPWMsIGlycT0xMAoJcG93ZXJz cGVjIDIgIHN1cHBvcnRzIEQwIEQzICBjdXJyZW50IEQwCgltYXBbMTBdOiB0eXBlIE1lbW9yeSwg cmFuZ2UgMzIsIGJhc2UgMHhmODgwNDgwMCwgc2l6ZSAxMCwgZW5hYmxlZApwY2liMDogbWF0Y2hl ZCBlbnRyeSBmb3IgMC4yNi5JTlRDCnBjaWIwOiBzbG90IDI2IElOVEMgaGFyZHdpcmVkIHRvIElS USAxOQpmb3VuZC0+CXZlbmRvcj0weDgwODYsIGRldj0weDI5M2UsIHJldmlkPTB4MDMKCWRvbWFp bj0wLCBidXM9MCwgc2xvdD0yNywgZnVuYz0wCgljbGFzcz0wNC0wMy0wMCwgaGRydHlwZT0weDAw LCBtZmRldj0wCgljbWRyZWc9MHgwMTA2LCBzdGF0cmVnPTB4MDAxMCwgY2FjaGVsbnN6PTE2IChk d29yZHMpCglsYXR0aW1lcj0weDAwICgwIG5zKSwgbWluZ250PTB4MDAgKDAgbnMpLCBtYXhsYXQ9 MHgwMCAoMCBucykKCWludHBpbj1hLCBpcnE9MTAKCXBvd2Vyc3BlYyAyICBzdXBwb3J0cyBEMCBE MyAgY3VycmVudCBEMAoJTVNJIHN1cHBvcnRzIDEgbWVzc2FnZSwgNjQgYml0CgltYXBbMTBdOiB0 eXBlIE1lbW9yeSwgcmFuZ2UgNjQsIGJhc2UgMHhmODYwMDAwMCwgc2l6ZSAxNCwgZW5hYmxlZApw Y2liMDogbWF0Y2hlZCBlbnRyeSBmb3IgMC4yNy5JTlRBCnBjaWIwOiBzbG90IDI3IElOVEEgaGFy ZHdpcmVkIHRvIElSUSAyMgpmb3VuZC0+CXZlbmRvcj0weDgwODYsIGRldj0weDI5NDAsIHJldmlk PTB4MDMKCWRvbWFpbj0wLCBidXM9MCwgc2xvdD0yOCwgZnVuYz0wCgljbGFzcz0wNi0wNC0wMCwg aGRydHlwZT0weDAxLCBtZmRldj0xCgljbWRyZWc9MHgwMTA3LCBzdGF0cmVnPTB4MDAxMCwgY2Fj aGVsbnN6PTE2IChkd29yZHMpCglsYXR0aW1lcj0weDAwICgwIG5zKSwgbWluZ250PTB4MDQgKDEw MDAgbnMpLCBtYXhsYXQ9MHgwMCAoMCBucykKCWludHBpbj1hLCBpcnE9MTEKCXBvd2Vyc3BlYyAy ICBzdXBwb3J0cyBEMCBEMyAgY3VycmVudCBEMAoJTVNJIHN1cHBvcnRzIDEgbWVzc2FnZQpwY2li MDogbWF0Y2hlZCBlbnRyeSBmb3IgMC4yOC5JTlRBCnBjaWIwOiBzbG90IDI4IElOVEEgaGFyZHdp cmVkIHRvIElSUSAxNwpmb3VuZC0+CXZlbmRvcj0weDgwODYsIGRldj0weDI5NDIsIHJldmlkPTB4 MDMKCWRvbWFpbj0wLCBidXM9MCwgc2xvdD0yOCwgZnVuYz0xCgljbGFzcz0wNi0wNC0wMCwgaGRy dHlwZT0weDAxLCBtZmRldj0xCgljbWRyZWc9MHgwMTA3LCBzdGF0cmVnPTB4MDAxMCwgY2FjaGVs bnN6PTE2IChkd29yZHMpCglsYXR0aW1lcj0weDAwICgwIG5zKSwgbWluZ250PTB4MDQgKDEwMDAg bnMpLCBtYXhsYXQ9MHgwMCAoMCBucykKCWludHBpbj1iLCBpcnE9NQoJcG93ZXJzcGVjIDIgIHN1 cHBvcnRzIEQwIEQzICBjdXJyZW50IEQwCglNU0kgc3VwcG9ydHMgMSBtZXNzYWdlCnBjaWIwOiBt YXRjaGVkIGVudHJ5IGZvciAwLjI4LklOVEIKcGNpYjA6IHNsb3QgMjggSU5UQiBoYXJkd2lyZWQg dG8gSVJRIDE2CmZvdW5kLT4JdmVuZG9yPTB4ODA4NiwgZGV2PTB4Mjk0YSwgcmV2aWQ9MHgwMwoJ ZG9tYWluPTAsIGJ1cz0wLCBzbG90PTI4LCBmdW5jPTUKCWNsYXNzPTA2LTA0LTAwLCBoZHJ0eXBl PTB4MDEsIG1mZGV2PTEKCWNtZHJlZz0weDAxMDcsIHN0YXRyZWc9MHgwMDEwLCBjYWNoZWxuc3o9 MTYgKGR3b3JkcykKCWxhdHRpbWVyPTB4MDAgKDAgbnMpLCBtaW5nbnQ9MHgwNCAoMTAwMCBucyks IG1heGxhdD0weDAwICgwIG5zKQoJaW50cGluPWIsIGlycT01Cglwb3dlcnNwZWMgMiAgc3VwcG9y dHMgRDAgRDMgIGN1cnJlbnQgRDAKCU1TSSBzdXBwb3J0cyAxIG1lc3NhZ2UKcGNpYjA6IG1hdGNo ZWQgZW50cnkgZm9yIDAuMjguSU5UQgpwY2liMDogc2xvdCAyOCBJTlRCIGhhcmR3aXJlZCB0byBJ UlEgMTYKZm91bmQtPgl2ZW5kb3I9MHg4MDg2LCBkZXY9MHgyOTM0LCByZXZpZD0weDAzCglkb21h aW49MCwgYnVzPTAsIHNsb3Q9MjksIGZ1bmM9MAoJY2xhc3M9MGMtMDMtMDAsIGhkcnR5cGU9MHgw MCwgbWZkZXY9MQoJY21kcmVnPTB4MDAwNSwgc3RhdHJlZz0weDAyOTAsIGNhY2hlbG5zej0wIChk d29yZHMpCglsYXR0aW1lcj0weDAwICgwIG5zKSwgbWluZ250PTB4MDAgKDAgbnMpLCBtYXhsYXQ9 MHgwMCAoMCBucykKCWludHBpbj1hLCBpcnE9NwoJbWFwWzIwXTogdHlwZSBJL08gUG9ydCwgcmFu Z2UgMzIsIGJhc2UgMHgxODgwLCBzaXplICA1LCBlbmFibGVkCnBjaWIwOiBtYXRjaGVkIGVudHJ5 IGZvciAwLjI5LklOVEEKcGNpYjA6IHNsb3QgMjkgSU5UQSBoYXJkd2lyZWQgdG8gSVJRIDIzCmZv dW5kLT4JdmVuZG9yPTB4ODA4NiwgZGV2PTB4MjkzNSwgcmV2aWQ9MHgwMwoJZG9tYWluPTAsIGJ1 cz0wLCBzbG90PTI5LCBmdW5jPTEKCWNsYXNzPTBjLTAzLTAwLCBoZHJ0eXBlPTB4MDAsIG1mZGV2 PTAKCWNtZHJlZz0weDAwMDUsIHN0YXRyZWc9MHgwMjkwLCBjYWNoZWxuc3o9MCAoZHdvcmRzKQoJ bGF0dGltZXI9MHgwMCAoMCBucyksIG1pbmdudD0weDAwICgwIG5zKSwgbWF4bGF0PTB4MDAgKDAg bnMpCglpbnRwaW49YiwgaXJxPTEwCgltYXBbMjBdOiB0eXBlIEkvTyBQb3J0LCByYW5nZSAzMiwg YmFzZSAweDE4YTAsIHNpemUgIDUsIGVuYWJsZWQKcGNpYjA6IG1hdGNoZWQgZW50cnkgZm9yIDAu MjkuSU5UQgpwY2liMDogc2xvdCAyOSBJTlRCIGhhcmR3aXJlZCB0byBJUlEgMTkKZm91bmQtPgl2 ZW5kb3I9MHg4MDg2LCBkZXY9MHgyOTM2LCByZXZpZD0weDAzCglkb21haW49MCwgYnVzPTAsIHNs b3Q9MjksIGZ1bmM9MgoJY2xhc3M9MGMtMDMtMDAsIGhkcnR5cGU9MHgwMCwgbWZkZXY9MAoJY21k cmVnPTB4MDAwNSwgc3RhdHJlZz0weDAyOTAsIGNhY2hlbG5zej0wIChkd29yZHMpCglsYXR0aW1l cj0weDAwICgwIG5zKSwgbWluZ250PTB4MDAgKDAgbnMpLCBtYXhsYXQ9MHgwMCAoMCBucykKCWlu dHBpbj1jLCBpcnE9MTAKCW1hcFsyMF06IHR5cGUgSS9PIFBvcnQsIHJhbmdlIDMyLCBiYXNlIDB4 MThjMCwgc2l6ZSAgNSwgZW5hYmxlZApwY2liMDogbWF0Y2hlZCBlbnRyeSBmb3IgMC4yOS5JTlRD CnBjaWIwOiBzbG90IDI5IElOVEMgaGFyZHdpcmVkIHRvIElSUSAxOApmb3VuZC0+CXZlbmRvcj0w eDgwODYsIGRldj0weDI5M2EsIHJldmlkPTB4MDMKCWRvbWFpbj0wLCBidXM9MCwgc2xvdD0yOSwg ZnVuYz03CgljbGFzcz0wYy0wMy0yMCwgaGRydHlwZT0weDAwLCBtZmRldj0wCgljbWRyZWc9MHgw MTA2LCBzdGF0cmVnPTB4MDI5MCwgY2FjaGVsbnN6PTAgKGR3b3JkcykKCWxhdHRpbWVyPTB4MDAg KDAgbnMpLCBtaW5nbnQ9MHgwMCAoMCBucyksIG1heGxhdD0weDAwICgwIG5zKQoJaW50cGluPWEs IGlycT03Cglwb3dlcnNwZWMgMiAgc3VwcG9ydHMgRDAgRDMgIGN1cnJlbnQgRDAKCW1hcFsxMF06 IHR5cGUgTWVtb3J5LCByYW5nZSAzMiwgYmFzZSAweGY4ODA0YzAwLCBzaXplIDEwLCBlbmFibGVk CnBjaWIwOiBtYXRjaGVkIGVudHJ5IGZvciAwLjI5LklOVEEKcGNpYjA6IHNsb3QgMjkgSU5UQSBo YXJkd2lyZWQgdG8gSVJRIDIzCmZvdW5kLT4JdmVuZG9yPTB4ODA4NiwgZGV2PTB4MjQ0OCwgcmV2 aWQ9MHg5MwoJZG9tYWluPTAsIGJ1cz0wLCBzbG90PTMwLCBmdW5jPTAKCWNsYXNzPTA2LTA0LTAx LCBoZHJ0eXBlPTB4MDEsIG1mZGV2PTAKCWNtZHJlZz0weDAxMDcsIHN0YXRyZWc9MHgwMDEwLCBj YWNoZWxuc3o9MCAoZHdvcmRzKQoJbGF0dGltZXI9MHgwMCAoMCBucyksIG1pbmdudD0weDA0ICgx MDAwIG5zKSwgbWF4bGF0PTB4MDAgKDAgbnMpCmZvdW5kLT4JdmVuZG9yPTB4ODA4NiwgZGV2PTB4 MjkxNywgcmV2aWQ9MHgwMwoJZG9tYWluPTAsIGJ1cz0wLCBzbG90PTMxLCBmdW5jPTAKCWNsYXNz PTA2LTAxLTAwLCBoZHJ0eXBlPTB4MDAsIG1mZGV2PTEKCWNtZHJlZz0weDAwMDcsIHN0YXRyZWc9 MHgwMjEwLCBjYWNoZWxuc3o9MCAoZHdvcmRzKQoJbGF0dGltZXI9MHgwMCAoMCBucyksIG1pbmdu dD0weDAwICgwIG5zKSwgbWF4bGF0PTB4MDAgKDAgbnMpCmZvdW5kLT4JdmVuZG9yPTB4ODA4Niwg ZGV2PTB4MjkyOSwgcmV2aWQ9MHgwMwoJZG9tYWluPTAsIGJ1cz0wLCBzbG90PTMxLCBmdW5jPTIK CWNsYXNzPTAxLTA2LTAxLCBoZHJ0eXBlPTB4MDAsIG1mZGV2PTAKCWNtZHJlZz0weDAwMDcsIHN0 YXRyZWc9MHgwMmIwLCBjYWNoZWxuc3o9MCAoZHdvcmRzKQoJbGF0dGltZXI9MHgwMCAoMCBucyks IG1pbmdudD0weDAwICgwIG5zKSwgbWF4bGF0PTB4MDAgKDAgbnMpCglpbnRwaW49YiwgaXJxPTEw Cglwb3dlcnNwZWMgMyAgc3VwcG9ydHMgRDAgRDMgIGN1cnJlbnQgRDAKCU1TSSBzdXBwb3J0cyAx NiBtZXNzYWdlcwoJbWFwWzEwXTogdHlwZSBJL08gUG9ydCwgcmFuZ2UgMzIsIGJhc2UgMHgxODE4 LCBzaXplICAzLCBlbmFibGVkCgltYXBbMTRdOiB0eXBlIEkvTyBQb3J0LCByYW5nZSAzMiwgYmFz ZSAweDE4MGMsIHNpemUgIDIsIGVuYWJsZWQKCW1hcFsxOF06IHR5cGUgSS9PIFBvcnQsIHJhbmdl IDMyLCBiYXNlIDB4MTgxMCwgc2l6ZSAgMywgZW5hYmxlZAoJbWFwWzFjXTogdHlwZSBJL08gUG9y dCwgcmFuZ2UgMzIsIGJhc2UgMHgxODA4LCBzaXplICAyLCBlbmFibGVkCgltYXBbMjBdOiB0eXBl IEkvTyBQb3J0LCByYW5nZSAzMiwgYmFzZSAweDE4ZTAsIHNpemUgIDUsIGVuYWJsZWQKCW1hcFsy NF06IHR5cGUgTWVtb3J5LCByYW5nZSAzMiwgYmFzZSAweGY4ODA0MDAwLCBzaXplIDExLCBlbmFi bGVkCnBjaWIwOiBtYXRjaGVkIGVudHJ5IGZvciAwLjMxLklOVEIKcGNpYjA6IHNsb3QgMzEgSU5U QiBoYXJkd2lyZWQgdG8gSVJRIDE5CmZvdW5kLT4JdmVuZG9yPTB4ODA4NiwgZGV2PTB4MjkzMCwg cmV2aWQ9MHgwMwoJZG9tYWluPTAsIGJ1cz0wLCBzbG90PTMxLCBmdW5jPTMKCWNsYXNzPTBjLTA1 LTAwLCBoZHJ0eXBlPTB4MDAsIG1mZGV2PTAKCWNtZHJlZz0weDAxMDMsIHN0YXRyZWc9MHgwMjgw LCBjYWNoZWxuc3o9MCAoZHdvcmRzKQoJbGF0dGltZXI9MHgwMCAoMCBucyksIG1pbmdudD0weDAw ICgwIG5zKSwgbWF4bGF0PTB4MDAgKDAgbnMpCglpbnRwaW49YywgaXJxPTEwCgltYXBbMTBdOiB0 eXBlIE1lbW9yeSwgcmFuZ2UgNjQsIGJhc2UgMCwgc2l6ZSAgOCwgZW5hYmxlZAoJbWFwWzIwXTog dHlwZSBJL08gUG9ydCwgcmFuZ2UgMzIsIGJhc2UgMHgxYzAwLCBzaXplICA1LCBlbmFibGVkCnBj aWIwOiBtYXRjaGVkIGVudHJ5IGZvciAwLjMxLklOVEMKcGNpYjA6IHNsb3QgMzEgSU5UQyBoYXJk d2lyZWQgdG8gSVJRIDE5CnZnYXBjaTA6IDxWR0EtY29tcGF0aWJsZSBkaXNwbGF5PiBwb3J0IDB4 MTgwMC0weDE4MDcgbWVtIDB4ZjgwMDAwMDAtMHhmODNmZmZmZiwweGQwMDAwMDAwLTB4ZGZmZmZm ZmYgaXJxIDE2IGF0IGRldmljZSAyLjAgb24gcGNpMAphY3BpX3ZpZGVvMDogPEFDUEkgdmlkZW8g ZXh0ZW5zaW9uPiBvbiB2Z2FwY2kwCmZvdW5kIFZHQSBDUlQgb3IgVkVTQSBDb21wYXRpYmxlIEFu YWxvZyBNb25pdG9yKDEwMCksIGlkeCMwLCBwb3J0IzAsIGhlYWQgIzAKZm91bmQgSW50ZXJuYWwv SW50ZWdyYXRlZCBEaWdpdGFsIEZsYXQgUGFuZWwoNDAwKSwgaWR4IzAsIHBvcnQjMCwgaGVhZCAj MApmb3VuZCBFeHRlcm5hbCBEaWdpdGFsIE1vbml0b3IoMzAwKSwgaWR4IzAsIHBvcnQjMCwgaGVh ZCAjMApmb3VuZCBFeHRlcm5hbCBEaWdpdGFsIE1vbml0b3IoMzAxKSwgaWR4IzEsIHBvcnQjMCwg aGVhZCAjMApmb3VuZCBFeHRlcm5hbCBEaWdpdGFsIE1vbml0b3IoMzAyKSwgaWR4IzIsIHBvcnQj MCwgaGVhZCAjMAphZ3AwOiA8SW50ZWwgR000NSBTVkdBIGNvbnRyb2xsZXI+IG9uIHZnYXBjaTAK YWdwMDogYXBlcnR1cmUgc2l6ZSBpcyAyNTZNLCBkZXRlY3RlZCAzMjc2NGsgc3RvbGVuIG1lbW9y eQpkcm0wOiA8TW9iaWxlIEludGVsXE0tQlxNLS4gR000NSBFeHByZXNzIENoaXBzZXQ+IG9uIHZn YXBjaTAKdmdhcGNpMDogYXR0ZW1wdGluZyB0byBhbGxvY2F0ZSAxIE1TSSB2ZWN0b3JzICgxIHN1 cHBvcnRlZCkKbXNpOiByb3V0aW5nIE1TSSBJUlEgMjU2IHRvIGxvY2FsIEFQSUMgMCB2ZWN0b3Ig NTAKdmdhcGNpMDogdXNpbmcgSVJRIDI1NiBmb3IgTVNJCmluZm86IFtkcm1dIE1TSSBlbmFibGVk IDEgbWVzc2FnZShzKQp2Z2FwY2kwOiBjaGlsZCBkcm0wIHJlcXVlc3RlZCBwY2lfZW5hYmxlX2J1 c21hc3RlcgppbmZvOiBbZHJtXSBBR1AgYXQgMHhkMDAwMDAwMCAyNTZNQgppbmZvOiBbZHJtXSBJ bml0aWFsaXplZCBpOTE1IDEuNi4wIDIwMDgwNzMwCnZnYXBjaTE6IDxWR0EtY29tcGF0aWJsZSBk aXNwbGF5PiBtZW0gMHhmODQwMDAwMC0weGY4NGZmZmZmIGF0IGRldmljZSAyLjEgb24gcGNpMAp1 aGNpMDogPEludGVsIDgyODAxSSAoSUNIOSkgVVNCIGNvbnRyb2xsZXI+IHBvcnQgMHgxODIwLTB4 MTgzZiBpcnEgMTYgYXQgZGV2aWNlIDI2LjAgb24gcGNpMAppb2FwaWMwOiByb3V0aW5nIGludHBp biAxNiAoUENJIElSUSAxNikgdG8gbGFwaWMgMCB2ZWN0b3IgNTEKdWhjaTA6IFtNUFNBRkVdCnVo Y2kwOiBbSVRIUkVBRF0KdXNidXMwOiA8SW50ZWwgODI4MDFJIChJQ0g5KSBVU0IgY29udHJvbGxl cj4gb24gdWhjaTAKdWhjaTE6IDxJbnRlbCA4MjgwMUkgKElDSDkpIFVTQiBjb250cm9sbGVyPiBw b3J0IDB4MTg0MC0weDE4NWYgaXJxIDIxIGF0IGRldmljZSAyNi4xIG9uIHBjaTAKaW9hcGljMDog cm91dGluZyBpbnRwaW4gMjEgKFBDSSBJUlEgMjEpIHRvIGxhcGljIDAgdmVjdG9yIDUyCnVoY2kx OiBbTVBTQUZFXQp1aGNpMTogW0lUSFJFQURdCnVzYnVzMTogPEludGVsIDgyODAxSSAoSUNIOSkg VVNCIGNvbnRyb2xsZXI+IG9uIHVoY2kxCnVoY2kyOiA8SW50ZWwgODI4MDFJIChJQ0g5KSBVU0Ig Y29udHJvbGxlcj4gcG9ydCAweDE4NjAtMHgxODdmIGlycSAxOSBhdCBkZXZpY2UgMjYuMiBvbiBw Y2kwCmlvYXBpYzA6IHJvdXRpbmcgaW50cGluIDE5IChQQ0kgSVJRIDE5KSB0byBsYXBpYyAwIHZl Y3RvciA1Mwp1aGNpMjogW01QU0FGRV0KdWhjaTI6IFtJVEhSRUFEXQp1c2J1czI6IDxJbnRlbCA4 MjgwMUkgKElDSDkpIFVTQiBjb250cm9sbGVyPiBvbiB1aGNpMgplaGNpMDogPEludGVsIDgyODAx SSAoSUNIOSkgVVNCIDIuMCBjb250cm9sbGVyPiBtZW0gMHhmODgwNDgwMC0weGY4ODA0YmZmIGly cSAxOSBhdCBkZXZpY2UgMjYuNyBvbiBwY2kwCmVoY2kwOiBbTVBTQUZFXQplaGNpMDogW0lUSFJF QURdCnVzYnVzMzogRUhDSSB2ZXJzaW9uIDEuMAp1c2J1czM6IDxJbnRlbCA4MjgwMUkgKElDSDkp IFVTQiAyLjAgY29udHJvbGxlcj4gb24gZWhjaTAKaGRhYzA6IDxJbnRlbCA4MjgwMUkgSGlnaCBE ZWZpbml0aW9uIEF1ZGlvIENvbnRyb2xsZXI+IG1lbSAweGY4NjAwMDAwLTB4Zjg2MDNmZmYgaXJx IDIyIGF0IGRldmljZSAyNy4wIG9uIHBjaTAKaGRhYzA6IEhEQSBEcml2ZXIgUmV2aXNpb246IDIw MTAwMjI2XzAxNDIKaGRhYzA6IGF0dGVtcHRpbmcgdG8gYWxsb2NhdGUgMSBNU0kgdmVjdG9ycyAo MSBzdXBwb3J0ZWQpCm1zaTogcm91dGluZyBNU0kgSVJRIDI1NyB0byBsb2NhbCBBUElDIDAgdmVj dG9yIDU0CmhkYWMwOiB1c2luZyBJUlEgMjU3IGZvciBNU0kKaGRhYzA6IFtNUFNBRkVdCmhkYWMw OiBbSVRIUkVBRF0KaGRhYzA6IENhcHM6IE9TUyA0LCBJU1MgNCwgQlNTIDAsIE5TRE8gMSwgNjRi aXQsIENPUkIgMjU2LCBSSVJCIDI1NgpwY2liMTogPEFDUEkgUENJLVBDSSBicmlkZ2U+IGlycSAx NyBhdCBkZXZpY2UgMjguMCBvbiBwY2kwCnBjaWIxOiAgIGRvbWFpbiAgICAgICAgICAgIDAKcGNp YjE6ICAgc2Vjb25kYXJ5IGJ1cyAgICAgMgpwY2liMTogICBzdWJvcmRpbmF0ZSBidXMgICAzCnBj aWIxOiAgIEkvTyBkZWNvZGUgICAgICAgIDB4MjAwMC0weDJmZmYKcGNpYjE6ICAgbWVtb3J5IGRl Y29kZSAgICAgMHhmNDAwMDAwMC0weGY1ZmZmZmZmCnBjaWIxOiAgIHByZWZldGNoZWQgZGVjb2Rl IDB4ZjAwMDAwMDAtMHhmMWZmZmZmZgpwY2kyOiA8QUNQSSBQQ0kgYnVzPiBvbiBwY2liMQpwY2ky OiBkb21haW49MCwgcGh5c2ljYWwgYnVzPTIKcGNpYjI6IDxBQ1BJIFBDSS1QQ0kgYnJpZGdlPiBp cnEgMTYgYXQgZGV2aWNlIDI4LjEgb24gcGNpMApwY2liMjogICBkb21haW4gICAgICAgICAgICAw CnBjaWIyOiAgIHNlY29uZGFyeSBidXMgICAgIDQKcGNpYjI6ICAgc3Vib3JkaW5hdGUgYnVzICAg NQpwY2liMjogICBJL08gZGVjb2RlICAgICAgICAweDMwMDAtMHgzZmZmCnBjaWIyOiAgIG1lbW9y eSBkZWNvZGUgICAgIDB4ZjYwMDAwMDAtMHhmN2ZmZmZmZgpwY2liMjogICBwcmVmZXRjaGVkIGRl Y29kZSAweGYyMDAwMDAwLTB4ZjNmZmZmZmYKcGNpNDogPEFDUEkgUENJIGJ1cz4gb24gcGNpYjIK cGNpNDogZG9tYWluPTAsIHBoeXNpY2FsIGJ1cz00CmZvdW5kLT4JdmVuZG9yPTB4ODA4NiwgZGV2 PTB4NDIzNSwgcmV2aWQ9MHgwMAoJZG9tYWluPTAsIGJ1cz00LCBzbG90PTAsIGZ1bmM9MAoJY2xh c3M9MDItODAtMDAsIGhkcnR5cGU9MHgwMCwgbWZkZXY9MAoJY21kcmVnPTB4MDEwNiwgc3RhdHJl Zz0weDAwMTAsIGNhY2hlbG5zej0xNiAoZHdvcmRzKQoJbGF0dGltZXI9MHgwMCAoMCBucyksIG1p bmdudD0weDAwICgwIG5zKSwgbWF4bGF0PTB4MDAgKDAgbnMpCglpbnRwaW49YSwgaXJxPTExCglw b3dlcnNwZWMgMyAgc3VwcG9ydHMgRDAgRDMgIGN1cnJlbnQgRDAKCU1TSSBzdXBwb3J0cyAxIG1l c3NhZ2UsIDY0IGJpdAoJbWFwWzEwXTogdHlwZSBNZW1vcnksIHJhbmdlIDY0LCBiYXNlIDB4ZjYw MDAwMDAsIHNpemUgMTMsIGVuYWJsZWQKcGNpYjI6IHJlcXVlc3RlZCBtZW1vcnkgcmFuZ2UgMHhm NjAwMDAwMC0weGY2MDAxZmZmOiBnb29kCnBjaWIyOiBtYXRjaGVkIGVudHJ5IGZvciA0LjAuSU5U QQpwY2liMjogc2xvdCAwIElOVEEgaGFyZHdpcmVkIHRvIElSUSAxNwppd24wOiA8SW50ZWwoUikg UFJPL1dpcmVsZXNzIDUzMDA+IG1lbSAweGY2MDAwMDAwLTB4ZjYwMDFmZmYgaXJxIDE3IGF0IGRl dmljZSAwLjAgb24gcGNpNAppd24wOiBhdHRlbXB0aW5nIHRvIGFsbG9jYXRlIDEgTVNJIHZlY3Rv cnMgKDEgc3VwcG9ydGVkKQptc2k6IHJvdXRpbmcgTVNJIElSUSAyNTggdG8gbG9jYWwgQVBJQyAw IHZlY3RvciA1NQppd24wOiB1c2luZyBJUlEgMjU4IGZvciBNU0kKaXduMDogTUlNTyAzVDNSLCBN b1csIGFkZHJlc3MgMDA6MjE6NmE6Nzc6Y2Q6OTIKaXduMDogW01QU0FGRV0KaXduMDogW0lUSFJF QURdCml3bjA6IDExYSByYXRlczogNk1icHMgOU1icHMgMTJNYnBzIDE4TWJwcyAyNE1icHMgMzZN YnBzIDQ4TWJwcyA1NE1icHMKaXduMDogMTFiIHJhdGVzOiAxTWJwcyAyTWJwcyA1LjVNYnBzIDEx TWJwcwppd24wOiAxMWcgcmF0ZXM6IDFNYnBzIDJNYnBzIDUuNU1icHMgMTFNYnBzIDZNYnBzIDlN YnBzIDEyTWJwcyAxOE1icHMgMjRNYnBzIDM2TWJwcyA0OE1icHMgNTRNYnBzCnBjaWIzOiA8QUNQ SSBQQ0ktUENJIGJyaWRnZT4gaXJxIDE2IGF0IGRldmljZSAyOC41IG9uIHBjaTAKcGNpYjM6ICAg ZG9tYWluICAgICAgICAgICAgMApwY2liMzogICBzZWNvbmRhcnkgYnVzICAgICA2CnBjaWIzOiAg IHN1Ym9yZGluYXRlIGJ1cyAgIDYKcGNpYjM6ICAgSS9PIGRlY29kZSAgICAgICAgMHhmMDAwLTB4 ZmZmCnBjaWIzOiAgIG1lbW9yeSBkZWNvZGUgICAgIDB4Zjg1MDAwMDAtMHhmODVmZmZmZgpwY2li MzogICBubyBwcmVmZXRjaGVkIGRlY29kZQpwY2k2OiA8QUNQSSBQQ0kgYnVzPiBvbiBwY2liMwpw Y2k2OiBkb21haW49MCwgcGh5c2ljYWwgYnVzPTYKZm91bmQtPgl2ZW5kb3I9MHgxNGU0LCBkZXY9 MHgxNjk4LCByZXZpZD0weDEwCglkb21haW49MCwgYnVzPTYsIHNsb3Q9MCwgZnVuYz0wCgljbGFz cz0wMi0wMC0wMCwgaGRydHlwZT0weDAwLCBtZmRldj0wCgljbWRyZWc9MHgwMTA2LCBzdGF0cmVn PTB4MDAxMCwgY2FjaGVsbnN6PTE2IChkd29yZHMpCglsYXR0aW1lcj0weDAwICgwIG5zKSwgbWlu Z250PTB4MDAgKDAgbnMpLCBtYXhsYXQ9MHgwMCAoMCBucykKCWludHBpbj1hLCBpcnE9MTEKCXBv d2Vyc3BlYyAzICBzdXBwb3J0cyBEMCBEMyAgY3VycmVudCBEMAoJTVNJIHN1cHBvcnRzIDEgbWVz c2FnZSwgNjQgYml0CgltYXBbMTBdOiB0eXBlIE1lbW9yeSwgcmFuZ2UgNjQsIGJhc2UgMHhmODUw MDAwMCwgc2l6ZSAxNiwgZW5hYmxlZApwY2liMzogcmVxdWVzdGVkIG1lbW9yeSByYW5nZSAweGY4 NTAwMDAwLTB4Zjg1MGZmZmY6IGdvb2QKcGNpYjM6IG1hdGNoZWQgZW50cnkgZm9yIDYuMC5JTlRB CnBjaWIzOiBzbG90IDAgSU5UQSBoYXJkd2lyZWQgdG8gSVJRIDE3CmJnZTA6IDxCcm9hZGNvbSBO ZXRMaW5rIEdpZ2FiaXQgRXRoZXJuZXQgQ29udHJvbGxlciAgICAsIEFTSUMgcmV2LiAweDU3ODQx MDA+IG1lbSAweGY4NTAwMDAwLTB4Zjg1MGZmZmYgaXJxIDE3IGF0IGRldmljZSAwLjAgb24gcGNp NgpiZ2UwOiBhdHRlbXB0aW5nIHRvIGFsbG9jYXRlIDEgTVNJIHZlY3RvcnMgKDEgc3VwcG9ydGVk KQptc2k6IHJvdXRpbmcgTVNJIElSUSAyNTkgdG8gbG9jYWwgQVBJQyAwIHZlY3RvciA1NgpiZ2Uw OiB1c2luZyBJUlEgMjU5IGZvciBNU0kKYmdlMDogQ0hJUCBJRCAweDA1Nzg0MTAwOyBBU0lDIFJF ViAweDU3ODQ7IENISVAgUkVWIDB4NTc4NDE7IFBDSS1FCmJnZTA6IERpc2FibGluZyBmYXN0Ym9v dApiZ2UwOiBEaXNhYmxpbmcgZmFzdGJvb3QKbWlpYnVzMDogPE1JSSBidXM+IG9uIGJnZTAKYnJn cGh5MDogPEJDTTU3ODQgMTAvMTAwLzEwMDBiYXNlVFggUEhZPiBQSFkgMSBvbiBtaWlidXMwCmJy Z3BoeTA6IE9VSSAweDAwNTBlZiwgbW9kZWwgMHgwMDNhLCByZXYuIDQKYnJncGh5MDogIDEwYmFz ZVQsIDEwYmFzZVQtRkRYLCAxMDBiYXNlVFgsIDEwMGJhc2VUWC1GRFgsIDEwMDBiYXNlVCwgMTAw MGJhc2VULUZEWCwgYXV0bwpiZ2UwOiBicGYgYXR0YWNoZWQKYmdlMDogRXRoZXJuZXQgYWRkcmVz czogMDA6MjI6MTk6ZTU6Y2E6NTEKYmdlMDogW01QU0FGRV0KYmdlMDogW0ZJTFRFUl0KdWhjaTM6 IDxJbnRlbCA4MjgwMUkgKElDSDkpIFVTQiBjb250cm9sbGVyPiBwb3J0IDB4MTg4MC0weDE4OWYg aXJxIDIzIGF0IGRldmljZSAyOS4wIG9uIHBjaTAKaW9hcGljMDogcm91dGluZyBpbnRwaW4gMjMg KFBDSSBJUlEgMjMpIHRvIGxhcGljIDAgdmVjdG9yIDU3CnVoY2kzOiBbTVBTQUZFXQp1aGNpMzog W0lUSFJFQURdCnVzYnVzNDogPEludGVsIDgyODAxSSAoSUNIOSkgVVNCIGNvbnRyb2xsZXI+IG9u IHVoY2kzCnVoY2k0OiA8SW50ZWwgODI4MDFJIChJQ0g5KSBVU0IgY29udHJvbGxlcj4gcG9ydCAw eDE4YTAtMHgxOGJmIGlycSAxOSBhdCBkZXZpY2UgMjkuMSBvbiBwY2kwCnVoY2k0OiBbTVBTQUZF XQp1aGNpNDogW0lUSFJFQURdCnVzYnVzNTogPEludGVsIDgyODAxSSAoSUNIOSkgVVNCIGNvbnRy b2xsZXI+IG9uIHVoY2k0CnVoY2k1OiA8SW50ZWwgODI4MDFJIChJQ0g5KSBVU0IgY29udHJvbGxl cj4gcG9ydCAweDE4YzAtMHgxOGRmIGlycSAxOCBhdCBkZXZpY2UgMjkuMiBvbiBwY2kwCmlvYXBp YzA6IHJvdXRpbmcgaW50cGluIDE4IChQQ0kgSVJRIDE4KSB0byBsYXBpYyAwIHZlY3RvciA1OAp1 aGNpNTogW01QU0FGRV0KdWhjaTU6IFtJVEhSRUFEXQp1c2J1czY6IDxJbnRlbCA4MjgwMUkgKElD SDkpIFVTQiBjb250cm9sbGVyPiBvbiB1aGNpNQplaGNpMTogPEludGVsIDgyODAxSSAoSUNIOSkg VVNCIDIuMCBjb250cm9sbGVyPiBtZW0gMHhmODgwNGMwMC0weGY4ODA0ZmZmIGlycSAyMyBhdCBk ZXZpY2UgMjkuNyBvbiBwY2kwCmVoY2kxOiBbTVBTQUZFXQplaGNpMTogW0lUSFJFQURdCnVzYnVz NzogRUhDSSB2ZXJzaW9uIDEuMAp1c2J1czc6IDxJbnRlbCA4MjgwMUkgKElDSDkpIFVTQiAyLjAg Y29udHJvbGxlcj4gb24gZWhjaTEKcGNpYjQ6IDxBQ1BJIFBDSS1QQ0kgYnJpZGdlPiBhdCBkZXZp Y2UgMzAuMCBvbiBwY2kwCnBjaWI0OiAgIGRvbWFpbiAgICAgICAgICAgIDAKcGNpYjQ6ICAgc2Vj b25kYXJ5IGJ1cyAgICAgNwpwY2liNDogICBzdWJvcmRpbmF0ZSBidXMgICA3CnBjaWI0OiAgIEkv TyBkZWNvZGUgICAgICAgIDB4ZjAwMC0weGZmZgpwY2liNDogICBubyBwcmVmZXRjaGVkIGRlY29k ZQpwY2liNDogICBTdWJ0cmFjdGl2ZWx5IGRlY29kZWQgYnJpZGdlLgpwY2liNDogY291bGQgbm90 IGdldCBQQ0kgaW50ZXJydXB0IHJvdXRpbmcgdGFibGUgZm9yIFxcX1NCXy5QQ0kwLlAwUDEgLSBB RV9OT1RfRk9VTkQKcGNpNzogPEFDUEkgUENJIGJ1cz4gb24gcGNpYjQKcGNpNzogZG9tYWluPTAs IHBoeXNpY2FsIGJ1cz03CmlzYWIwOiA8UENJLUlTQSBicmlkZ2U+IGF0IGRldmljZSAzMS4wIG9u IHBjaTAKaXNhMDogPElTQSBidXM+IG9uIGlzYWIwCmF0YXBjaTA6IDxJbnRlbCAoSUQ9MjkyOTgw ODYpIEFIQ0kgY29udHJvbGxlcj4gcG9ydCAweDE4MTgtMHgxODFmLDB4MTgwYy0weDE4MGYsMHgx ODEwLTB4MTgxNywweDE4MDgtMHgxODBiLDB4MThlMC0weDE4ZmYgbWVtIDB4Zjg4MDQwMDAtMHhm ODgwNDdmZiBpcnEgMTkgYXQgZGV2aWNlIDMxLjIgb24gcGNpMAphdGFwY2kwOiBbTVBTQUZFXQph dGFwY2kwOiBbSVRIUkVBRF0KYXRhcGNpMDogQUhDSSB2MS4yMCBjb250cm9sbGVyIHdpdGggNCAz R2JwcyBwb3J0cywgUE0gc3VwcG9ydGVkCmF0YXBjaTA6IENhcHM6IDY0Yml0IE5DUSBTTlRGIEFM UCBBTCBDTE8gM0dicHMgUE0gUE1EIFNTQyBQU0MgMzJjbWQgQ0NDIGVTQVRBIDRwb3J0cwphdGEy OiA8QVRBIGNoYW5uZWwgMD4gb24gYXRhcGNpMAphdGEyOiBbTVBTQUZFXQphdGEyOiBbSVRIUkVB RF0KYXRhMzogPEFUQSBjaGFubmVsIDE+IG9uIGF0YXBjaTAKYXRhMzogW01QU0FGRV0KYXRhMzog W0lUSFJFQURdCnBjaTA6IDxzZXJpYWwgYnVzLCBTTUJ1cz4gYXQgZGV2aWNlIDMxLjMgKG5vIGRy aXZlciBhdHRhY2hlZCkKYWNwaV9idXR0b24wOiA8UG93ZXIgQnV0dG9uPiBvbiBhY3BpMAphY3Bp X2J1dHRvbjE6IDxTbGVlcCBCdXR0b24+IG9uIGFjcGkwCmFjcGlfbGlkMDogPENvbnRyb2wgTWV0 aG9kIExpZCBTd2l0Y2g+IG9uIGFjcGkwCmFjcGlfbGlkMDogZW5hYmxlIHdha2UgZmFpbGVkCmFj cGlfYWNhZDA6IDxBQyBBZGFwdGVyPiBvbiBhY3BpMApiYXR0ZXJ5MDogPEFDUEkgQ29udHJvbCBN ZXRob2QgQmF0dGVyeT4gb24gYWNwaTAKYWNwaV90ejA6IDxUaGVybWFsIFpvbmU+IG9uIGFjcGkw CmFjcGlfdHoxOiA8VGhlcm1hbCBab25lPiBvbiBhY3BpMAphY3BpX3R6MjogPFRoZXJtYWwgWm9u ZT4gb24gYWNwaTAKYXRydGMwOiA8QVQgcmVhbHRpbWUgY2xvY2s+IHBvcnQgMHg3MC0weDc3IGly cSA4IG9uIGFjcGkwCmF0cnRjMDogV2FybmluZzogQ291bGRuJ3QgbWFwIEkvTy4KaW9hcGljMDog cm91dGluZyBpbnRwaW4gOCAoSVNBIElSUSA4KSB0byBsYXBpYyAwIHZlY3RvciA1OQphdHJ0YzA6 IFtNUFNBRkVdCmF0cnRjMDogW0ZJTFRFUl0KYXRydGMwOiByZWdpc3RlcmVkIGFzIGEgdGltZS1v Zi1kYXkgY2xvY2sgKHJlc29sdXRpb24gMTAwMDAwMHVzKQphdHRpbWVyMDogPEFUIHRpbWVyPiBw b3J0IDB4NDAtMHg0MywweDUwLTB4NTMgaXJxIDAgb24gYWNwaTAKVGltZWNvdW50ZXIgImk4MjU0 IiBmcmVxdWVuY3kgMTE5MzE4MiBIeiBxdWFsaXR5IDAKYXR0aW1lcjA6IFtNUFNBRkVdCmF0dGlt ZXIwOiBbRklMVEVSXQppb2FwaWMwOiByb3V0aW5nIGludHBpbiAyIChJU0EgSVJRIDApIHRvIGxh cGljIDAgdmVjdG9yIDYwCkV2ZW50IHRpbWVyICJpODI1NCIgZnJlcXVlbmN5IDExOTMxODIgSHog cXVhbGl0eSAxMDAKYXRrYmRjMDogPEtleWJvYXJkIGNvbnRyb2xsZXIgKGk4MDQyKT4gcG9ydCAw eDYwLDB4NjQgaXJxIDEgb24gYWNwaTAKYXRrYmQwOiA8QVQgS2V5Ym9hcmQ+IGlycSAxIG9uIGF0 a2JkYzAKYXRrYmQ6IHRoZSBjdXJyZW50IGtiZCBjb250cm9sbGVyIGNvbW1hbmQgYnl0ZSAwMDQ3 CmF0a2JkOiBrZXlib2FyZCBJRCAweDQxYWIgKDIpCmtiZDAgYXQgYXRrYmQwCmtiZDA6IGF0a2Jk MCwgQVQgMTAxLzEwMiAoMiksIGNvbmZpZzoweDAsIGZsYWdzOjB4M2QwMDAwCmlvYXBpYzA6IHJv dXRpbmcgaW50cGluIDEgKElTQSBJUlEgMSkgdG8gbGFwaWMgMCB2ZWN0b3IgNjEKYXRrYmQwOiBb R0lBTlQtTE9DS0VEXQphdGtiZDA6IFtJVEhSRUFEXQpwc20wOiB1bmFibGUgdG8gYWxsb2NhdGUg SVJRCnBzbWNwbnAwOiA8UFMvMiBtb3VzZSBwb3J0PiBpcnEgMTIgb24gYWNwaTAKcHNtMDogY3Vy cmVudCBjb21tYW5kIGJ5dGU6MDA0Nwpwc20wOiA8UFMvMiBNb3VzZT4gaXJxIDEyIG9uIGF0a2Jk YzAKaW9hcGljMDogcm91dGluZyBpbnRwaW4gMTIgKElTQSBJUlEgMTIpIHRvIGxhcGljIDAgdmVj dG9yIDYyCnBzbTA6IFtHSUFOVC1MT0NLRURdCnBzbTA6IFtJVEhSRUFEXQpwc20wOiBtb2RlbCBT eW5hcHRpY3MgVG91Y2hwYWQsIGRldmljZSBJRCAwLTAwLCAzIGJ1dHRvbnMKcHNtMDogY29uZmln OjAwMDA2MDAwLCBmbGFnczowMDAwMDAwOCwgcGFja2V0IHNpemU6Ngpwc20wOiBzeW5jbWFzazpj MCwgc3luY2JpdHM6MDAKYWNwaTA6IHdha2V1cCBjb2RlIHZhIDB4ZmZmZmZmODA3NGRlODAwMCBw YSAweDQwMDAKaXNhX3Byb2JlX2NoaWxkcmVuOiBkaXNhYmxpbmcgUG5QIGRldmljZXMKYXRrYmRj OiBhdGtiZGMwIGFscmVhZHkgZXhpc3RzOyBza2lwcGluZyBpdAphdHJ0YzogYXRydGMwIGFscmVh ZHkgZXhpc3RzOyBza2lwcGluZyBpdApzYzogc2MwIGFscmVhZHkgZXhpc3RzOyBza2lwcGluZyBp dAppc2FfcHJvYmVfY2hpbGRyZW46IHByb2Jpbmcgbm9uLVBuUCBkZXZpY2VzCnNjMDogPFN5c3Rl bSBjb25zb2xlPiBhdCBmbGFncyAweDEwMCBvbiBpc2EwCnNjMDogVkdBIDwxNiB2aXJ0dWFsIGNv bnNvbGVzLCBmbGFncz0weDMwMD4Kc2MwOiBmYjAsIGtiZDEsIHRlcm1pbmFsIGVtdWxhdG9yOiBz Y3Rla2VuICh0ZWtlbiB0ZXJtaW5hbCkKdmdhMDogPEdlbmVyaWMgSVNBIFZHQT4gYXQgcG9ydCAw eDNjMC0weDNkZiBpb21lbSAweGEwMDAwLTB4YmZmZmYgb24gaXNhMApmZGMwIGZhaWxlZCB0byBw cm9iZSBhdCBwb3J0IDB4M2YwIGlycSA2IGRycSAyIG9uIGlzYTAKcHBjMCBmYWlsZWQgdG8gcHJv YmUgYXQgaXJxIDcgb24gaXNhMAp1YXJ0MCBmYWlsZWQgdG8gcHJvYmUgYXQgcG9ydCAweDNmOCBp cnEgNCBvbiBpc2EwCnVhcnQxIGZhaWxlZCB0byBwcm9iZSBhdCBwb3J0IDB4MmY4IGlycSAzIG9u IGlzYTAKaXNhX3Byb2JlX2NoaWxkcmVuOiBwcm9iaW5nIFBuUCBkZXZpY2VzCmVzdDA6IDxFbmhh bmNlZCBTcGVlZFN0ZXAgRnJlcXVlbmN5IENvbnRyb2w+IG9uIGNwdTAKZXN0MTogPEVuaGFuY2Vk IFNwZWVkU3RlcCBGcmVxdWVuY3kgQ29udHJvbD4gb24gY3B1MQpEZXZpY2UgY29uZmlndXJhdGlv biBmaW5pc2hlZC4KUmVkdWNpbmcga2Vybi5tYXh2bm9kZXMgMjU1MjU4IC0+IDEwMDAwMApwcm9j ZnMgcmVnaXN0ZXJlZApUaW1lY291bnRlciAiVFNDIiBmcmVxdWVuY3kgMTQwMDA3OTExNCBIeiBx dWFsaXR5IC0xMDAKU3RhcnRpbmcga2VybmVsIGV2ZW50IHRpbWVyczogSFBFVCBAIDEwMEh6LCBI UEVUMSBAIDEyOEh6ClRpbWVjb3VudGVycyB0aWNrIGV2ZXJ5IDEwLjAwMCBtc2VjCnZsYW46IGlu aXRpYWxpemVkLCB1c2luZyBoYXNoIHRhYmxlcyB3aXRoIGNoYWluaW5nCmlwZncyICgraXB2Nikg aW5pdGlhbGl6ZWQsIGRpdmVydCBlbmFibGVkLCBuYXQgZW5hYmxlZCwgcnVsZS1iYXNlZCBmb3J3 YXJkaW5nIGVuYWJsZWQsIGRlZmF1bHQgdG8gYWNjZXB0LCBsb2dnaW5nIGRpc2FibGVkCmlwZncw OiBicGYgYXR0YWNoZWQKRFVNTVlORVQgMHhmZmZmZmYwMDAxMzljMWMwIHdpdGggSVB2NiBpbml0 aWFsaXplZCAoMTAwNDA5KQpsb2FkX2RuX3NjaGVkIGRuX3NjaGVkIFFGUSBsb2FkZWQKbG9hZF9k bl9zY2hlZCBkbl9zY2hlZCBSUiBsb2FkZWQKbG9hZF9kbl9zY2hlZCBkbl9zY2hlZCBXRjJRKyBs b2FkZWQKbG8wOiBicGYgYXR0YWNoZWQKbG9hZF9kbl9zY2hlZCBkbl9zY2hlZCBGSUZPIGxvYWRl ZApsb2FkX2RuX3NjaGVkIGRuX3NjaGVkIFBSSU8gbG9hZGVkCmhkYWMwOiBQcm9iaW5nIGNvZGVj ICMwLi4uCmhkYWMwOiBIREEgQ29kZWMgIzA6IElEVCA5MkhENzNDMQpoZGFjMDogIEhEQSBDb2Rl YyBJRDogMHgxMTFkNzY3NQpoZGFjMDogICAgICAgIFZlbmRvcjogMHgxMTFkCmhkYWMwOiAgICAg ICAgRGV2aWNlOiAweDc2NzUKaGRhYzA6ICAgICAgUmV2aXNpb246IDB4MDIKaGRhYzA6ICAgICAg U3RlcHBpbmc6IDB4MDIKaGRhYzA6IFBDSSBTdWJ2ZW5kb3I6IDB4MDJiOTEwMjgKaGRhYzA6IAlG b3VuZCBhdWRpbyBGRyBuaWQ9MSBzdGFydG5vZGU9MTAgZW5kbm9kZT00NCB0b3RhbD0zNApoZGFj MDogUHJvYmluZyBjb2RlYyAjMS4uLgpoZGFjMDogSERBIENvZGVjICMxOiBJbnRlbCBHNDUgSERN SQpoZGFjMDogIEhEQSBDb2RlYyBJRDogMHg4MDg2MjgwMgpoZGFjMDogICAgICAgIFZlbmRvcjog MHg4MDg2CmhkYWMwOiAgICAgICAgRGV2aWNlOiAweDI4MDIKaGRhYzA6ICAgICAgUmV2aXNpb246 IDB4MDAKaGRhYzA6ICAgICAgU3RlcHBpbmc6IDB4MDAKaGRhYzA6IFBDSSBTdWJ2ZW5kb3I6IDB4 MDJiOTEwMjgKaGRhYzA6IAlGb3VuZCBhdWRpbyBGRyBuaWQ9MSBzdGFydG5vZGU9MiBlbmRub2Rl PTQgdG90YWw9MgpoZGFjMDogCmhkYWMwOiBQcm9jZXNzaW5nIGF1ZGlvIEZHIGNhZD0wIG5pZD0x Li4uCmhkYWMwOiBHUElPOiAweGMwMDAwMDA4IE51bUdQSU89OCBOdW1HUE89MCBOdW1HUEk9MCBH UElXYWtlPTEgR1BJVW5zb2w9MQpoZGFjMDogIG5pZCAxMCAweDA0MjExMDFmIGFzICAxIHNlcSAx NSAgICBIZWFkcGhvbmVzICBKYWNrIGphY2sgIDEgbG9jICA0IGNvbG9yICAgQmxhY2sgbWlzYyAw CmhkYWMwOiAgbmlkIDExIDB4NDAwMDAxZjEgYXMgMTUgc2VxICAxICAgICAgTGluZS1vdXQgIE5v bmUgamFjayAgMCBsb2MgIDAgY29sb3IgVW5rbm93biBtaXNjIDEKaGRhYzA6ICBuaWQgMTIgMHg0 MDAwMDFmMiBhcyAxNSBzZXEgIDIgICAgICBMaW5lLW91dCAgTm9uZSBqYWNrICAwIGxvYyAgMCBj b2xvciBVbmtub3duIG1pc2MgMQpoZGFjMDogIG5pZCAxMyAweDkwMTcwMTEwIGFzICAxIHNlcSAg MCAgICAgICBTcGVha2VyIEZpeGVkIGphY2sgIDcgbG9jIDE2IGNvbG9yIFVua25vd24gbWlzYyAx CmhkYWMwOiAgbmlkIDE0IDB4NDAwMDAxZjMgYXMgMTUgc2VxICAzICAgICAgTGluZS1vdXQgIE5v bmUgamFjayAgMCBsb2MgIDAgY29sb3IgVW5rbm93biBtaXNjIDEKaGRhYzA6ICBuaWQgMTUgMHg0 MDAwMDFmMCBhcyAxNSBzZXEgIDAgICAgICBMaW5lLW91dCAgTm9uZSBqYWNrICAwIGxvYyAgMCBj b2xvciBVbmtub3duIG1pc2MgMQpoZGFjMDogIG5pZCAxNiAweDQwMDAwMWY0IGFzIDE1IHNlcSAg NCAgICAgIExpbmUtb3V0ICBOb25lIGphY2sgIDAgbG9jICAwIGNvbG9yIFVua25vd24gbWlzYyAx CmhkYWMwOiAgbmlkIDE3IDB4NDAwMDAxZjUgYXMgMTUgc2VxICA1ICAgICAgTGluZS1vdXQgIE5v bmUgamFjayAgMCBsb2MgIDAgY29sb3IgVW5rbm93biBtaXNjIDEKaGRhYzA6ICBuaWQgMTggMHg0 MDAwMDFmNiBhcyAxNSBzZXEgIDYgICAgICBMaW5lLW91dCAgTm9uZSBqYWNrICAwIGxvYyAgMCBj b2xvciBVbmtub3duIG1pc2MgMQpoZGFjMDogIG5pZCAxOSAweDkwYTYwMTYwIGFzICA2IHNlcSAg MCAgICAgICAgICAgTWljIEZpeGVkIGphY2sgIDYgbG9jIDE2IGNvbG9yIFVua25vd24gbWlzYyAx CmhkYWMwOiAgbmlkIDIwIDB4NDAwMDAxZjcgYXMgMTUgc2VxICA3ICAgICAgTGluZS1vdXQgIE5v bmUgamFjayAgMCBsb2MgIDAgY29sb3IgVW5rbm93biBtaXNjIDEKaGRhYzA6ICBuaWQgMzQgMHg0 MDAwMDFmOCBhcyAxNSBzZXEgIDggICAgICBMaW5lLW91dCAgTm9uZSBqYWNrICAwIGxvYyAgMCBj b2xvciBVbmtub3duIG1pc2MgMQpoZGFjMDogIG5pZCAzNSAweDQwMDAwMWY5IGFzIDE1IHNlcSAg OSAgICAgIExpbmUtb3V0ICBOb25lIGphY2sgIDAgbG9jICAwIGNvbG9yIFVua25vd24gbWlzYyAx CmhkYWMwOiAgbmlkIDM2IDB4NDAwMDAxZmEgYXMgMTUgc2VxIDEwICAgICAgTGluZS1vdXQgIE5v bmUgamFjayAgMCBsb2MgIDAgY29sb3IgVW5rbm93biBtaXNjIDEKaGRhYzA6IFBhdGNoZWQgcGlu cyBjb25maWd1cmF0aW9uOgpoZGFjMDogIG5pZCAxMCAweDA0MjExMDFmIGFzICAxIHNlcSAxNSAg ICBIZWFkcGhvbmVzICBKYWNrIGphY2sgIDEgbG9jICA0IGNvbG9yICAgQmxhY2sgbWlzYyAwCmhk YWMwOiAgbmlkIDExIDB4NDAwMDAxZjEgYXMgMTUgc2VxICAxICAgICAgTGluZS1vdXQgIE5vbmUg amFjayAgMCBsb2MgIDAgY29sb3IgVW5rbm93biBtaXNjIDEgW0RJU0FCTEVEXQpoZGFjMDogIG5p ZCAxMiAweDQwMDAwMWYyIGFzIDE1IHNlcSAgMiAgICAgIExpbmUtb3V0ICBOb25lIGphY2sgIDAg bG9jICAwIGNvbG9yIFVua25vd24gbWlzYyAxIFtESVNBQkxFRF0KaGRhYzA6ICBuaWQgMTMgMHg5 MDE3MDExMCBhcyAgMSBzZXEgIDAgICAgICAgU3BlYWtlciBGaXhlZCBqYWNrICA3IGxvYyAxNiBj b2xvciBVbmtub3duIG1pc2MgMQpoZGFjMDogIG5pZCAxNCAweDQwMDAwMWYzIGFzIDE1IHNlcSAg MyAgICAgIExpbmUtb3V0ICBOb25lIGphY2sgIDAgbG9jICAwIGNvbG9yIFVua25vd24gbWlzYyAx IFtESVNBQkxFRF0KaGRhYzA6ICBuaWQgMTUgMHg0MDAwMDFmMCBhcyAxNSBzZXEgIDAgICAgICBM aW5lLW91dCAgTm9uZSBqYWNrICAwIGxvYyAgMCBjb2xvciBVbmtub3duIG1pc2MgMSBbRElTQUJM RURdCmhkYWMwOiAgbmlkIDE2IDB4NDAwMDAxZjQgYXMgMTUgc2VxICA0ICAgICAgTGluZS1vdXQg IE5vbmUgamFjayAgMCBsb2MgIDAgY29sb3IgVW5rbm93biBtaXNjIDEgW0RJU0FCTEVEXQpoZGFj MDogIG5pZCAxNyAweDQwMDAwMWY1IGFzIDE1IHNlcSAgNSAgICAgIExpbmUtb3V0ICBOb25lIGph Y2sgIDAgbG9jICAwIGNvbG9yIFVua25vd24gbWlzYyAxIFtESVNBQkxFRF0KaGRhYzA6ICBuaWQg MTggMHg0MDAwMDFmNiBhcyAxNSBzZXEgIDYgICAgICBMaW5lLW91dCAgTm9uZSBqYWNrICAwIGxv YyAgMCBjb2xvciBVbmtub3duIG1pc2MgMSBbRElTQUJMRURdCmhkYWMwOiAgbmlkIDE5IDB4OTBh NjAxNjAgYXMgIDYgc2VxICAwICAgICAgICAgICBNaWMgRml4ZWQgamFjayAgNiBsb2MgMTYgY29s b3IgVW5rbm93biBtaXNjIDEKaGRhYzA6ICBuaWQgMjAgMHg0MDAwMDFmNyBhcyAxNSBzZXEgIDcg ICAgICBMaW5lLW91dCAgTm9uZSBqYWNrICAwIGxvYyAgMCBjb2xvciBVbmtub3duIG1pc2MgMSBb RElTQUJMRURdCmhkYWMwOiAgbmlkIDM0IDB4NDAwMDAxZjggYXMgMTUgc2VxICA4ICAgICAgTGlu ZS1vdXQgIE5vbmUgamFjayAgMCBsb2MgIDAgY29sb3IgVW5rbm93biBtaXNjIDEgW0RJU0FCTEVE XQpoZGFjMDogIG5pZCAzNSAweDQwMDAwMWY5IGFzIDE1IHNlcSAgOSAgICAgIExpbmUtb3V0ICBO b25lIGphY2sgIDAgbG9jICAwIGNvbG9yIFVua25vd24gbWlzYyAxIFtESVNBQkxFRF0KaGRhYzA6 ICBuaWQgMzYgMHg0MDAwMDFmYSBhcyAxNSBzZXEgMTAgICAgICBMaW5lLW91dCAgTm9uZSBqYWNr ICAwIGxvYyAgMCBjb2xvciBVbmtub3duIG1pc2MgMSBbRElTQUJMRURdCmhkYWMwOiAyIGFzc29j aWF0aW9ucyBmb3VuZDoKaGRhYzA6IEFzc29jaWF0aW9uIDAgKDEpIG91dDoKaGRhYzA6ICBQaW4g bmlkPTEzIHNlcT0wCmhkYWMwOiAgUGluIG5pZD0xMCBzZXE9MTUKaGRhYzA6IEFzc29jaWF0aW9u IDEgKDYpIGluOgpoZGFjMDogIFBpbiBuaWQ9MTkgc2VxPTAKaGRhYzA6IFRyYWNpbmcgYXNzb2Np YXRpb24gMCAoMSkKaGRhYzA6ICBQaW4gMTMgdHJhY2VkIHRvIERBQyAyMQpoZGFjMDogIFBpbiAx MCB0cmFjZWQgdG8gREFDIDIxIGFuZCBocHJlZGlyIDAKaGRhYzA6IEFzc29jaWF0aW9uIDAgKDEp IHRyYWNlIHN1Y2NlZWRlZApoZGFjMDogVHJhY2luZyBhc3NvY2lhdGlvbiAxICg2KQpoZGFjMDog IFBpbiAxOSB0cmFjZWQgdG8gQURDIDI2CmhkYWMwOiBBc3NvY2lhdGlvbiAxICg2KSB0cmFjZSBz dWNjZWVkZWQKaGRhYzA6IFRyYWNpbmcgaW5wdXQgbW9uaXRvcgpoZGFjMDogVHJhY2luZyBvdGhl ciBpbnB1dCBtb25pdG9ycwpoZGFjMDogIFRyYWNpbmcgbmlkIDE5IHRvIG91dApoZGFjMDogVHJh Y2luZyBiZWVwZXIKaGRhYzA6IEVuYWJsaW5nIGhlYWRwaG9uZS9zcGVha2VyIGF1ZGlvIHJvdXRp bmcgc3dpdGNoaW5nOgpoZGFjMDogCWFzPTAgc2Vuc2UgbmlkPTEwIFtVTlNPTF0KaGRhYzA6IFBp biBzZW5zZTogbmlkPTEwIHJlcz0weDdmZmZmZmZmCmhkYWMwOiBGRyBjb25maWcvcXVpcmtzOiBm b3JjZXN0ZXJlbyBpdnJlZjUwIGl2cmVmODAgaXZyZWYxMDAgaXZyZWYKaGRhYzA6IApoZGFjMDog Ky0tLS0tLS0tLS0tLS0tLS0tLS0rCmhkYWMwOiB8IERVTVBJTkcgSERBIE5PREVTIHwKaGRhYzA6 ICstLS0tLS0tLS0tLS0tLS0tLS0tKwpoZGFjMDogCmhkYWMwOiBEZWZhdWx0IFBhcmFtZXRlcgpo ZGFjMDogLS0tLS0tLS0tLS0tLS0tLS0KaGRhYzA6ICAgICAgU3RyZWFtIGNhcDogMHgwMDAwMDAw MQpoZGFjMDogICAgICAgICAgICAgICAgICBQQ00KaGRhYzA6ICAgICAgICAgUENNIGNhcDogMHgw MDBlMDVlMApoZGFjMDogICAgICAgICAgICAgICAgICAxNiAyMCAyNCBiaXRzLCA0NCA0OCA4OCA5 NiAxOTIgS0h6CmhkYWMwOiAgICAgICAgICBJTiBhbXA6IDB4MDAyNzAzMDAKaGRhYzA6ICAgICAg ICAgT1VUIGFtcDogMHg4MDAyN2Y3ZgpoZGFjMDogCmhkYWMwOiAgICAgICAgICAgICBuaWQ6IDEw CmhkYWMwOiAgICAgICAgICAgIE5hbWU6IHBpbjogSGVhZHBob25lcyAoQmxhY2sgSmFjaykKaGRh YzA6ICAgICAgV2lkZ2V0IGNhcDogMHgwMDQwMDE4MwpoZGFjMDogICAgICAgICAgICAgICAgICBV TlNPTCBTVEVSRU8KaGRhYzA6ICAgICBBc3NvY2lhdGlvbjogMCAoMHgwMDAwODAwMCkKaGRhYzA6 ICAgICAgICAgUGluIGNhcDogMHgwMDAwMTczZgpoZGFjMDogICAgICAgICAgICAgICAgICBJU0Mg VFJRRCBQREMgSFAgT1VUIElOIFZSRUZbIDUwIDgwIEdST1VORCBISVogXQpoZGFjMDogICAgICBQ aW4gY29uZmlnOiAweDA0MjExMDFmCmhkYWMwOiAgICAgUGluIGNvbnRyb2w6IDB4MDAwMDAwODAg SFAKaGRhYzA6ICAgICAgIElucHV0IGFtcDogMHgwMDI3MDMwMApoZGFjMDogICAgICAgICAgICAg ICAgICBtdXRlPTAgc3RlcD0zIHNpemU9Mzkgb2Zmc2V0PTAKaGRhYzA6ICAgICBjb25uZWN0aW9u czogNApoZGFjMDogICAgICAgICAgIHwKaGRhYzA6ICAgICAgICAgICArIDwtIG5pZD0yMSBbYXVk aW8gb3V0cHV0XSAoc2VsZWN0ZWQpCmhkYWMwOiAgICAgICAgICAgKyBbRElTQUJMRURdIDwtIG5p ZD0yMiBbYXVkaW8gb3V0cHV0XSBbRElTQUJMRURdCmhkYWMwOiAgICAgICAgICAgKyBbRElTQUJM RURdIDwtIG5pZD0yMyBbYXVkaW8gb3V0cHV0XSBbRElTQUJMRURdCmhkYWMwOiAgICAgICAgICAg KyBbRElTQUJMRURdIDwtIG5pZD0zMCBbYXVkaW8gc2VsZWN0b3JdIFtESVNBQkxFRF0KaGRhYzA6 IApoZGFjMDogICAgICAgICAgICAgbmlkOiAxMSBbRElTQUJMRURdCmhkYWMwOiAgICAgICAgICAg IE5hbWU6IHBpbjogTGluZS1vdXQgKE5vbmUpCmhkYWMwOiAgICAgIFdpZGdldCBjYXA6IDB4MDA0 MDAxODMKaGRhYzA6ICAgICAgICAgICAgICAgICAgVU5TT0wgU1RFUkVPCmhkYWMwOiAgICAgICAg IFBpbiBjYXA6IDB4MDAwMDE3M2YKaGRhYzA6ICAgICAgICAgICAgICAgICAgSVNDIFRSUUQgUERD IEhQIE9VVCBJTiBWUkVGWyA1MCA4MCBHUk9VTkQgSElaIF0KaGRhYzA6ICAgICAgUGluIGNvbmZp ZzogMHg0MDAwMDFmMQpoZGFjMDogICAgIFBpbiBjb250cm9sOiAweDAwMDAwMDAwCmhkYWMwOiAg ICAgICBJbnB1dCBhbXA6IDB4MDAyNzAzMDAKaGRhYzA6ICAgICAgICAgICAgICAgICAgbXV0ZT0w IHN0ZXA9MyBzaXplPTM5IG9mZnNldD0wCmhkYWMwOiAgICAgY29ubmVjdGlvbnM6IDQKaGRhYzA6 ICAgICAgICAgICB8CmhkYWMwOiAgICAgICAgICAgKyA8LSBuaWQ9MjEgW2F1ZGlvIG91dHB1dF0g KHNlbGVjdGVkKQpoZGFjMDogICAgICAgICAgICsgPC0gbmlkPTIyIFthdWRpbyBvdXRwdXRdIFtE SVNBQkxFRF0KaGRhYzA6ICAgICAgICAgICArIDwtIG5pZD0yMyBbYXVkaW8gb3V0cHV0XSBbRElT QUJMRURdCmhkYWMwOiAgICAgICAgICAgKyA8LSBuaWQ9MzAgW2F1ZGlvIHNlbGVjdG9yXSBbRElT QUJMRURdCmhkYWMwOiAKaGRhYzA6ICAgICAgICAgICAgIG5pZDogMTIgW0RJU0FCTEVEXQpoZGFj MDogICAgICAgICAgICBOYW1lOiBwaW46IExpbmUtb3V0IChOb25lKQpoZGFjMDogICAgICBXaWRn ZXQgY2FwOiAweDAwNDAwMTgzCmhkYWMwOiAgICAgICAgICAgICAgICAgIFVOU09MIFNURVJFTwpo ZGFjMDogICAgICAgICBQaW4gY2FwOiAweDAwMDAxNzM3CmhkYWMwOiAgICAgICAgICAgICAgICAg IElTQyBUUlFEIFBEQyBPVVQgSU4gVlJFRlsgNTAgODAgR1JPVU5EIEhJWiBdCmhkYWMwOiAgICAg IFBpbiBjb25maWc6IDB4NDAwMDAxZjIKaGRhYzA6ICAgICBQaW4gY29udHJvbDogMHgwMDAwMDAw MApoZGFjMDogICAgICAgSW5wdXQgYW1wOiAweDAwMjcwMzAwCmhkYWMwOiAgICAgICAgICAgICAg ICAgIG11dGU9MCBzdGVwPTMgc2l6ZT0zOSBvZmZzZXQ9MApoZGFjMDogICAgIGNvbm5lY3Rpb25z OiA0CmhkYWMwOiAgICAgICAgICAgfApoZGFjMDogICAgICAgICAgICsgPC0gbmlkPTIxIFthdWRp byBvdXRwdXRdIChzZWxlY3RlZCkKaGRhYzA6ICAgICAgICAgICArIDwtIG5pZD0yMiBbYXVkaW8g b3V0cHV0XSBbRElTQUJMRURdCmhkYWMwOiAgICAgICAgICAgKyA8LSBuaWQ9MjMgW2F1ZGlvIG91 dHB1dF0gW0RJU0FCTEVEXQpoZGFjMDogICAgICAgICAgICsgPC0gbmlkPTMwIFthdWRpbyBzZWxl Y3Rvcl0gW0RJU0FCTEVEXQpoZGFjMDogCmhkYWMwOiAgICAgICAgICAgICBuaWQ6IDEzCmhkYWMw OiAgICAgICAgICAgIE5hbWU6IHBpbjogU3BlYWtlciAoRml4ZWQpCmhkYWMwOiAgICAgIFdpZGdl dCBjYXA6IDB4MDA0MDAxODMKaGRhYzA6ICAgICAgICAgICAgICAgICAgVU5TT0wgU1RFUkVPCmhk YWMwOiAgICAgQXNzb2NpYXRpb246IDAgKDB4MDAwMDAwMDEpCmhkYWMwOiAgICAgICAgIFBpbiBj YXA6IDB4MDAwMDAwM2YKaGRhYzA6ICAgICAgICAgICAgICAgICAgSVNDIFRSUUQgUERDIEhQIE9V VCBJTgpoZGFjMDogICAgICBQaW4gY29uZmlnOiAweDkwMTcwMTEwCmhkYWMwOiAgICAgUGluIGNv bnRyb2w6IDB4MDAwMDAwNDAgT1VUCmhkYWMwOiAgICAgICBJbnB1dCBhbXA6IDB4MDAyNzAzMDAK aGRhYzA6ICAgICAgICAgICAgICAgICAgbXV0ZT0wIHN0ZXA9MyBzaXplPTM5IG9mZnNldD0wCmhk YWMwOiAgICAgY29ubmVjdGlvbnM6IDQKaGRhYzA6ICAgICAgICAgICB8CmhkYWMwOiAgICAgICAg ICAgKyA8LSBuaWQ9MjEgW2F1ZGlvIG91dHB1dF0gKHNlbGVjdGVkKQpoZGFjMDogICAgICAgICAg ICsgW0RJU0FCTEVEXSA8LSBuaWQ9MjIgW2F1ZGlvIG91dHB1dF0gW0RJU0FCTEVEXQpoZGFjMDog ICAgICAgICAgICsgW0RJU0FCTEVEXSA8LSBuaWQ9MjMgW2F1ZGlvIG91dHB1dF0gW0RJU0FCTEVE XQpoZGFjMDogICAgICAgICAgICsgW0RJU0FCTEVEXSA8LSBuaWQ9MzAgW2F1ZGlvIHNlbGVjdG9y XSBbRElTQUJMRURdCmhkYWMwOiAKaGRhYzA6ICAgICAgICAgICAgIG5pZDogMTQgW0RJU0FCTEVE XQpoZGFjMDogICAgICAgICAgICBOYW1lOiBwaW46IExpbmUtb3V0IChOb25lKQpoZGFjMDogICAg ICBXaWRnZXQgY2FwOiAweDAwNDAwMTgzCmhkYWMwOiAgICAgICAgICAgICAgICAgIFVOU09MIFNU RVJFTwpoZGFjMDogICAgICAgICBQaW4gY2FwOiAweDAwMDAxNzM3CmhkYWMwOiAgICAgICAgICAg ICAgICAgIElTQyBUUlFEIFBEQyBPVVQgSU4gVlJFRlsgNTAgODAgR1JPVU5EIEhJWiBdCmhkYWMw OiAgICAgIFBpbiBjb25maWc6IDB4NDAwMDAxZjMKaGRhYzA6ICAgICBQaW4gY29udHJvbDogMHgw MDAwMDAwMApoZGFjMDogICAgICAgSW5wdXQgYW1wOiAweDAwMjcwMzAwCmhkYWMwOiAgICAgICAg ICAgICAgICAgIG11dGU9MCBzdGVwPTMgc2l6ZT0zOSBvZmZzZXQ9MApoZGFjMDogICAgIGNvbm5l Y3Rpb25zOiA0CmhkYWMwOiAgICAgICAgICAgfApoZGFjMDogICAgICAgICAgICsgPC0gbmlkPTIx IFthdWRpbyBvdXRwdXRdIChzZWxlY3RlZCkKaGRhYzA6ICAgICAgICAgICArIDwtIG5pZD0yMiBb YXVkaW8gb3V0cHV0XSBbRElTQUJMRURdCmhkYWMwOiAgICAgICAgICAgKyA8LSBuaWQ9MjMgW2F1 ZGlvIG91dHB1dF0gW0RJU0FCTEVEXQpoZGFjMDogICAgICAgICAgICsgPC0gbmlkPTMwIFthdWRp byBzZWxlY3Rvcl0gW0RJU0FCTEVEXQpoZGFjMDogCmhkYWMwOiAgICAgICAgICAgICBuaWQ6IDE1 IFtESVNBQkxFRF0KaGRhYzA6ICAgICAgICAgICAgTmFtZTogcGluOiBMaW5lLW91dCAoTm9uZSkK aGRhYzA6ICAgICAgV2lkZ2V0IGNhcDogMHgwMDQwMDE4MwpoZGFjMDogICAgICAgICAgICAgICAg ICBVTlNPTCBTVEVSRU8KaGRhYzA6ICAgICAgICAgUGluIGNhcDogMHgwMDAwMDAzNwpoZGFjMDog ICAgICAgICAgICAgICAgICBJU0MgVFJRRCBQREMgT1VUIElOCmhkYWMwOiAgICAgIFBpbiBjb25m aWc6IDB4NDAwMDAxZjAKaGRhYzA6ICAgICBQaW4gY29udHJvbDogMHgwMDAwMDAwMApoZGFjMDog ICAgICAgSW5wdXQgYW1wOiAweDAwMjcwMzAwCmhkYWMwOiAgICAgICAgICAgICAgICAgIG11dGU9 MCBzdGVwPTMgc2l6ZT0zOSBvZmZzZXQ9MApoZGFjMDogICAgIGNvbm5lY3Rpb25zOiA0CmhkYWMw OiAgICAgICAgICAgfApoZGFjMDogICAgICAgICAgICsgPC0gbmlkPTIxIFthdWRpbyBvdXRwdXRd IChzZWxlY3RlZCkKaGRhYzA6ICAgICAgICAgICArIDwtIG5pZD0yMiBbYXVkaW8gb3V0cHV0XSBb RElTQUJMRURdCmhkYWMwOiAgICAgICAgICAgKyA8LSBuaWQ9MjMgW2F1ZGlvIG91dHB1dF0gW0RJ U0FCTEVEXQpoZGFjMDogICAgICAgICAgICsgPC0gbmlkPTMwIFthdWRpbyBzZWxlY3Rvcl0gW0RJ U0FCTEVEXQpoZGFjMDogCmhkYWMwOiAgICAgICAgICAgICBuaWQ6IDE2IFtESVNBQkxFRF0KaGRh YzA6ICAgICAgICAgICAgTmFtZTogcGluOiBMaW5lLW91dCAoTm9uZSkKaGRhYzA6ICAgICAgV2lk Z2V0IGNhcDogMHgwMDQwMDE4MwpoZGFjMDogICAgICAgICAgICAgICAgICBVTlNPTCBTVEVSRU8K aGRhYzA6ICAgICAgICAgUGluIGNhcDogMHgwMDAwMDAzNwpoZGFjMDogICAgICAgICAgICAgICAg ICBJU0MgVFJRRCBQREMgT1VUIElOCmhkYWMwOiAgICAgIFBpbiBjb25maWc6IDB4NDAwMDAxZjQK aGRhYzA6ICAgICBQaW4gY29udHJvbDogMHgwMDAwMDAwMApoZGFjMDogICAgICAgSW5wdXQgYW1w OiAweDAwMjcwMzAwCmhkYWMwOiAgICAgICAgICAgICAgICAgIG11dGU9MCBzdGVwPTMgc2l6ZT0z OSBvZmZzZXQ9MApoZGFjMDogICAgIGNvbm5lY3Rpb25zOiA0CmhkYWMwOiAgICAgICAgICAgfApo ZGFjMDogICAgICAgICAgICsgPC0gbmlkPTIxIFthdWRpbyBvdXRwdXRdIChzZWxlY3RlZCkKaGRh YzA6ICAgICAgICAgICArIDwtIG5pZD0yMiBbYXVkaW8gb3V0cHV0XSBbRElTQUJMRURdCmhkYWMw OiAgICAgICAgICAgKyA8LSBuaWQ9MjMgW2F1ZGlvIG91dHB1dF0gW0RJU0FCTEVEXQpoZGFjMDog ICAgICAgICAgICsgPC0gbmlkPTMwIFthdWRpbyBzZWxlY3Rvcl0gW0RJU0FCTEVEXQpoZGFjMDog CmhkYWMwOiAgICAgICAgICAgICBuaWQ6IDE3IFtESVNBQkxFRF0KaGRhYzA6ICAgICAgICAgICAg TmFtZTogcGluOiBMaW5lLW91dCAoTm9uZSkKaGRhYzA6ICAgICAgV2lkZ2V0IGNhcDogMHgwMDQw MDE4MwpoZGFjMDogICAgICAgICAgICAgICAgICBVTlNPTCBTVEVSRU8KaGRhYzA6ICAgICAgICAg UGluIGNhcDogMHgwMDAwMDAzNwpoZGFjMDogICAgICAgICAgICAgICAgICBJU0MgVFJRRCBQREMg T1VUIElOCmhkYWMwOiAgICAgIFBpbiBjb25maWc6IDB4NDAwMDAxZjUKaGRhYzA6ICAgICBQaW4g Y29udHJvbDogMHgwMDAwMDAwMApoZGFjMDogICAgICAgSW5wdXQgYW1wOiAweDAwMjcwMzAwCmhk YWMwOiAgICAgICAgICAgICAgICAgIG11dGU9MCBzdGVwPTMgc2l6ZT0zOSBvZmZzZXQ9MApoZGFj MDogICAgIGNvbm5lY3Rpb25zOiA0CmhkYWMwOiAgICAgICAgICAgfApoZGFjMDogICAgICAgICAg ICsgPC0gbmlkPTIxIFthdWRpbyBvdXRwdXRdIChzZWxlY3RlZCkKaGRhYzA6ICAgICAgICAgICAr IDwtIG5pZD0yMiBbYXVkaW8gb3V0cHV0XSBbRElTQUJMRURdCmhkYWMwOiAgICAgICAgICAgKyA8 LSBuaWQ9MjMgW2F1ZGlvIG91dHB1dF0gW0RJU0FCTEVEXQpoZGFjMDogICAgICAgICAgICsgPC0g bmlkPTMwIFthdWRpbyBzZWxlY3Rvcl0gW0RJU0FCTEVEXQpoZGFjMDogCmhkYWMwOiAgICAgICAg ICAgICBuaWQ6IDE4IFtESVNBQkxFRF0KaGRhYzA6ICAgICAgICAgICAgTmFtZTogcGluOiBMaW5l LW91dCAoTm9uZSkKaGRhYzA6ICAgICAgV2lkZ2V0IGNhcDogMHgwMDQwMDA4MQpoZGFjMDogICAg ICAgICAgICAgICAgICBVTlNPTCBTVEVSRU8KaGRhYzA6ICAgICAgICAgUGluIGNhcDogMHgwMDAw MDAyNApoZGFjMDogICAgICAgICAgICAgICAgICBQREMgSU4KaGRhYzA6ICAgICAgUGluIGNvbmZp ZzogMHg0MDAwMDFmNgpoZGFjMDogICAgIFBpbiBjb250cm9sOiAweDAwMDAwMDAwCmhkYWMwOiAK aGRhYzA6ICAgICAgICAgICAgIG5pZDogMTkKaGRhYzA6ICAgICAgICAgICAgTmFtZTogcGluOiBN aWMgKEZpeGVkKQpoZGFjMDogICAgICBXaWRnZXQgY2FwOiAweDAwNDAwMDAzCmhkYWMwOiAgICAg ICAgICAgICAgICAgIFNURVJFTwpoZGFjMDogICAgIEFzc29jaWF0aW9uOiAxICgweDAwMDAwMDAx KQpoZGFjMDogICAgICAgICAgICAgT1NTOiBtb25pdG9yIChtb25pdG9yKQpoZGFjMDogICAgICAg ICBQaW4gY2FwOiAweDAwMDAwMDIwCmhkYWMwOiAgICAgICAgICAgICAgICAgIElOCmhkYWMwOiAg ICAgIFBpbiBjb25maWc6IDB4OTBhNjAxNjAKaGRhYzA6ICAgICBQaW4gY29udHJvbDogMHgwMDAw MDAyMCBJTgpoZGFjMDogICAgICAgSW5wdXQgYW1wOiAweDAwMjcwMzAwCmhkYWMwOiAgICAgICAg ICAgICAgICAgIG11dGU9MCBzdGVwPTMgc2l6ZT0zOSBvZmZzZXQ9MApoZGFjMDogCmhkYWMwOiAg ICAgICAgICAgICBuaWQ6IDIwIFtESVNBQkxFRF0KaGRhYzA6ICAgICAgICAgICAgTmFtZTogcGlu OiBMaW5lLW91dCAoTm9uZSkKaGRhYzA6ICAgICAgV2lkZ2V0IGNhcDogMHgwMDQwMDAwMwpoZGFj MDogICAgICAgICAgICAgICAgICBTVEVSRU8KaGRhYzA6ICAgICAgICAgUGluIGNhcDogMHgwMDAw MDAyMApoZGFjMDogICAgICAgICAgICAgICAgICBJTgpoZGFjMDogICAgICBQaW4gY29uZmlnOiAw eDQwMDAwMWY3CmhkYWMwOiAgICAgUGluIGNvbnRyb2w6IDB4MDAwMDAwMDAKaGRhYzA6ICAgICAg IElucHV0IGFtcDogMHgwMDI3MDMwMApoZGFjMDogICAgICAgICAgICAgICAgICBtdXRlPTAgc3Rl cD0zIHNpemU9Mzkgb2Zmc2V0PTAKaGRhYzA6IApoZGFjMDogICAgICAgICAgICAgbmlkOiAyMQpo ZGFjMDogICAgICAgICAgICBOYW1lOiBhdWRpbyBvdXRwdXQKaGRhYzA6ICAgICAgV2lkZ2V0IGNh cDogMHgwMDBkMGMwNQpoZGFjMDogICAgICAgICAgICAgICAgICBMUlNXQVAgUFdSIFNURVJFTwpo ZGFjMDogICAgIEFzc29jaWF0aW9uOiAwICgweDAwMDA4MDAxKQpoZGFjMDogICAgICAgICAgICAg T1NTOiBwY20gKHBjbSkKaGRhYzA6ICAgICAgU3RyZWFtIGNhcDogMHgwMDAwMDAwMQpoZGFjMDog ICAgICAgICAgICAgICAgICBQQ00KaGRhYzA6ICAgICAgICAgUENNIGNhcDogMHgwMDBlMDVlMApo ZGFjMDogICAgICAgICAgICAgICAgICAxNiAyMCAyNCBiaXRzLCA0NCA0OCA4OCA5NiAxOTIgS0h6 CmhkYWMwOiAgICAgIE91dHB1dCBhbXA6IDB4ODAwMjdmN2YKaGRhYzA6ICAgICAgICAgICAgICAg ICAgbXV0ZT0xIHN0ZXA9MTI3IHNpemU9MiBvZmZzZXQ9MTI3CmhkYWMwOiAKaGRhYzA6ICAgICAg ICAgICAgIG5pZDogMjIgW0RJU0FCTEVEXQpoZGFjMDogICAgICAgICAgICBOYW1lOiBhdWRpbyBv dXRwdXQKaGRhYzA6ICAgICAgV2lkZ2V0IGNhcDogMHgwMDBkMGMwNQpoZGFjMDogICAgICAgICAg ICAgICAgICBMUlNXQVAgUFdSIFNURVJFTwpoZGFjMDogICAgICBTdHJlYW0gY2FwOiAweDAwMDAw MDAxCmhkYWMwOiAgICAgICAgICAgICAgICAgIFBDTQpoZGFjMDogICAgICAgICBQQ00gY2FwOiAw eDAwMGUwNWUwCmhkYWMwOiAgICAgICAgICAgICAgICAgIDE2IDIwIDI0IGJpdHMsIDQ0IDQ4IDg4 IDk2IDE5MiBLSHoKaGRhYzA6ICAgICAgT3V0cHV0IGFtcDogMHg4MDAyN2Y3ZgpoZGFjMDogICAg ICAgICAgICAgICAgICBtdXRlPTEgc3RlcD0xMjcgc2l6ZT0yIG9mZnNldD0xMjcKaGRhYzA6IApo ZGFjMDogICAgICAgICAgICAgbmlkOiAyMyBbRElTQUJMRURdCmhkYWMwOiAgICAgICAgICAgIE5h bWU6IGF1ZGlvIG91dHB1dApoZGFjMDogICAgICBXaWRnZXQgY2FwOiAweDAwMGQwYzA1CmhkYWMw OiAgICAgICAgICAgICAgICAgIExSU1dBUCBQV1IgU1RFUkVPCmhkYWMwOiAgICAgIFN0cmVhbSBj YXA6IDB4MDAwMDAwMDEKaGRhYzA6ICAgICAgICAgICAgICAgICAgUENNCmhkYWMwOiAgICAgICAg IFBDTSBjYXA6IDB4MDAwZTA1ZTAKaGRhYzA6ICAgICAgICAgICAgICAgICAgMTYgMjAgMjQgYml0 cywgNDQgNDggODggOTYgMTkyIEtIegpoZGFjMDogICAgICBPdXRwdXQgYW1wOiAweDgwMDI3Zjdm CmhkYWMwOiAgICAgICAgICAgICAgICAgIG11dGU9MSBzdGVwPTEyNyBzaXplPTIgb2Zmc2V0PTEy NwpoZGFjMDogCmhkYWMwOiAgICAgICAgICAgICBuaWQ6IDI0IFtESVNBQkxFRF0KaGRhYzA6ICAg ICAgICAgICAgTmFtZTogdmVuZG9yIHdpZGdldApoZGFjMDogICAgICBXaWRnZXQgY2FwOiAweDAw ZmQwYzA1CmhkYWMwOiAgICAgICAgICAgICAgICAgIExSU1dBUCBQV1IgU1RFUkVPCmhkYWMwOiAg ICAgIE91dHB1dCBhbXA6IDB4ODAwMjdmN2YKaGRhYzA6ICAgICAgICAgICAgICAgICAgbXV0ZT0x IHN0ZXA9MTI3IHNpemU9MiBvZmZzZXQ9MTI3CmhkYWMwOiAKaGRhYzA6ICAgICAgICAgICAgIG5p ZDogMjUgW0RJU0FCTEVEXQpoZGFjMDogICAgICAgICAgICBOYW1lOiB2ZW5kb3Igd2lkZ2V0Cmhk YWMwOiAgICAgIFdpZGdldCBjYXA6IDB4MDBmZDBjMDUKaGRhYzA6ICAgICAgICAgICAgICAgICAg TFJTV0FQIFBXUiBTVEVSRU8KaGRhYzA6ICAgICAgT3V0cHV0IGFtcDogMHg4MDAyN2Y3ZgpoZGFj MDogICAgICAgICAgICAgICAgICBtdXRlPTEgc3RlcD0xMjcgc2l6ZT0yIG9mZnNldD0xMjcKaGRh YzA6IApoZGFjMDogICAgICAgICAgICAgbmlkOiAyNgpoZGFjMDogICAgICAgICAgICBOYW1lOiBh dWRpbyBpbnB1dApoZGFjMDogICAgICBXaWRnZXQgY2FwOiAweDAwMWQwNTQxCmhkYWMwOiAgICAg ICAgICAgICAgICAgIFBXUiBQUk9DIFNURVJFTwpoZGFjMDogICAgIEFzc29jaWF0aW9uOiAxICgw eDAwMDAwMDAxKQpoZGFjMDogICAgICBTdHJlYW0gY2FwOiAweDAwMDAwMDAxCmhkYWMwOiAgICAg ICAgICAgICAgICAgIFBDTQpoZGFjMDogICAgICAgICBQQ00gY2FwOiAweDAwMGUwNWUwCmhkYWMw OiAgICAgICAgICAgICAgICAgIDE2IDIwIDI0IGJpdHMsIDQ0IDQ4IDg4IDk2IDE5MiBLSHoKaGRh YzA6ICAgICBjb25uZWN0aW9uczogMQpoZGFjMDogICAgICAgICAgIHwKaGRhYzA6ICAgICAgICAg ICArIDwtIG5pZD0zMiBbYXVkaW8gc2VsZWN0b3JdCmhkYWMwOiAKaGRhYzA6ICAgICAgICAgICAg IG5pZDogMjcgW0RJU0FCTEVEXQpoZGFjMDogICAgICAgICAgICBOYW1lOiBhdWRpbyBpbnB1dApo ZGFjMDogICAgICBXaWRnZXQgY2FwOiAweDAwMWQwNTQxCmhkYWMwOiAgICAgICAgICAgICAgICAg IFBXUiBQUk9DIFNURVJFTwpoZGFjMDogICAgICBTdHJlYW0gY2FwOiAweDAwMDAwMDAxCmhkYWMw OiAgICAgICAgICAgICAgICAgIFBDTQpoZGFjMDogICAgICAgICBQQ00gY2FwOiAweDAwMGUwNWUw CmhkYWMwOiAgICAgICAgICAgICAgICAgIDE2IDIwIDI0IGJpdHMsIDQ0IDQ4IDg4IDk2IDE5MiBL SHoKaGRhYzA6ICAgICBjb25uZWN0aW9uczogMQpoZGFjMDogICAgICAgICAgIHwKaGRhYzA6ICAg ICAgICAgICArIDwtIG5pZD0zMyBbYXVkaW8gc2VsZWN0b3JdIFtESVNBQkxFRF0KaGRhYzA6IApo ZGFjMDogICAgICAgICAgICAgbmlkOiAyOApoZGFjMDogICAgICAgICAgICBOYW1lOiBiZWVwIHdp ZGdldApoZGFjMDogICAgICBXaWRnZXQgY2FwOiAweDAwNzAwMDBjCmhkYWMwOiAgICAgQXNzb2Np YXRpb246IC0yICgweDAwMDAwMDAwKQpoZGFjMDogICAgICAgICAgICAgT1NTOiBzcGVha2VyIChz cGVha2VyKQpoZGFjMDogICAgICBPdXRwdXQgYW1wOiAweDgwMTcwMzAzCmhkYWMwOiAgICAgICAg ICAgICAgICAgIG11dGU9MSBzdGVwPTMgc2l6ZT0yMyBvZmZzZXQ9MwpoZGFjMDogCmhkYWMwOiAg ICAgICAgICAgICBuaWQ6IDI5IFtESVNBQkxFRF0KaGRhYzA6ICAgICAgICAgICAgTmFtZTogYXVk aW8gbWl4ZXIKaGRhYzA6ICAgICAgV2lkZ2V0IGNhcDogMHgwMDIwMDEwYgpoZGFjMDogICAgICAg ICAgICAgICAgICBTVEVSRU8KaGRhYzA6ICAgICAgIElucHV0IGFtcDogMHg4MDA1MWYxNwpoZGFj MDogICAgICAgICAgICAgICAgICBtdXRlPTEgc3RlcD0zMSBzaXplPTUgb2Zmc2V0PTIzCmhkYWMw OiAgICAgY29ubmVjdGlvbnM6IDUKaGRhYzA6ICAgICAgICAgICB8CmhkYWMwOiAgICAgICAgICAg KyBbRElTQUJMRURdIDwtIG5pZD00MCBbYXVkaW8gc2VsZWN0b3JdIFtESVNBQkxFRF0KaGRhYzA6 ICAgICAgICAgICArIFtESVNBQkxFRF0gPC0gbmlkPTQxIFthdWRpbyBzZWxlY3Rvcl0gW0RJU0FC TEVEXQpoZGFjMDogICAgICAgICAgICsgW0RJU0FCTEVEXSA8LSBuaWQ9NDIgW2F1ZGlvIHNlbGVj dG9yXSBbRElTQUJMRURdCmhkYWMwOiAgICAgICAgICAgKyBbRElTQUJMRURdIDwtIG5pZD00MyBb YXVkaW8gc2VsZWN0b3JdIFtESVNBQkxFRF0KaGRhYzA6ICAgICAgICAgICArIFtESVNBQkxFRF0g PC0gbmlkPTE4IFtwaW46IExpbmUtb3V0IChOb25lKV0gW0RJU0FCTEVEXQpoZGFjMDogCmhkYWMw OiAgICAgICAgICAgICBuaWQ6IDMwIFtESVNBQkxFRF0KaGRhYzA6ICAgICAgICAgICAgTmFtZTog YXVkaW8gc2VsZWN0b3IKaGRhYzA6ICAgICAgV2lkZ2V0IGNhcDogMHgwMDMwMDEwZApoZGFjMDog ICAgICAgICAgICAgICAgICBTVEVSRU8KaGRhYzA6ICAgICAgT3V0cHV0IGFtcDogMHg4MDA1MWYx ZgpoZGFjMDogICAgICAgICAgICAgICAgICBtdXRlPTEgc3RlcD0zMSBzaXplPTUgb2Zmc2V0PTMx CmhkYWMwOiAgICAgY29ubmVjdGlvbnM6IDEKaGRhYzA6ICAgICAgICAgICB8CmhkYWMwOiAgICAg ICAgICAgKyA8LSBuaWQ9MjkgW2F1ZGlvIG1peGVyXSBbRElTQUJMRURdCmhkYWMwOiAKaGRhYzA6 ICAgICAgICAgICAgIG5pZDogMzEgW0RJU0FCTEVEXQpoZGFjMDogICAgICAgICAgICBOYW1lOiB2 b2x1bWUgd2lkZ2V0CmhkYWMwOiAgICAgIFdpZGdldCBjYXA6IDB4MDA2MDAwMDAKaGRhYzA6ICAg ICBjb25uZWN0aW9uczogMwpoZGFjMDogICAgICAgICAgIHwKaGRhYzA6ICAgICAgICAgICArIDwt IG5pZD0yMSBbYXVkaW8gb3V0cHV0XSAoc2VsZWN0ZWQpCmhkYWMwOiAgICAgICAgICAgKyA8LSBu aWQ9MjIgW2F1ZGlvIG91dHB1dF0gW0RJU0FCTEVEXQpoZGFjMDogICAgICAgICAgICsgPC0gbmlk PTIzIFthdWRpbyBvdXRwdXRdIFtESVNBQkxFRF0KaGRhYzA6IApoZGFjMDogICAgICAgICAgICAg bmlkOiAzMgpoZGFjMDogICAgICAgICAgICBOYW1lOiBhdWRpbyBzZWxlY3RvcgpoZGFjMDogICAg ICBXaWRnZXQgY2FwOiAweDAwMzAwOTBkCmhkYWMwOiAgICAgICAgICAgICAgICAgIExSU1dBUCBT VEVSRU8KaGRhYzA6ICAgICBBc3NvY2lhdGlvbjogMSAoMHgwMDAwMDAwMSkKaGRhYzA6ICAgICAg ICAgICAgIE9TUzogbW9uaXRvcgpoZGFjMDogICAgICBPdXRwdXQgYW1wOiAweDgwMDUwZjAwCmhk YWMwOiAgICAgICAgICAgICAgICAgIG11dGU9MSBzdGVwPTE1IHNpemU9NSBvZmZzZXQ9MApoZGFj MDogICAgIGNvbm5lY3Rpb25zOiAxMgpoZGFjMDogICAgICAgICAgIHwKaGRhYzA6ICAgICAgICAg ICArIFtESVNBQkxFRF0gPC0gbmlkPTEwIFtwaW46IEhlYWRwaG9uZXMgKEJsYWNrIEphY2spXQpo ZGFjMDogICAgICAgICAgICsgW0RJU0FCTEVEXSA8LSBuaWQ9MTEgW3BpbjogTGluZS1vdXQgKE5v bmUpXSBbRElTQUJMRURdCmhkYWMwOiAgICAgICAgICAgKyBbRElTQUJMRURdIDwtIG5pZD0xMiBb cGluOiBMaW5lLW91dCAoTm9uZSldIFtESVNBQkxFRF0KaGRhYzA6ICAgICAgICAgICArIFtESVNB QkxFRF0gPC0gbmlkPTEzIFtwaW46IFNwZWFrZXIgKEZpeGVkKV0KaGRhYzA6ICAgICAgICAgICAr IFtESVNBQkxFRF0gPC0gbmlkPTE0IFtwaW46IExpbmUtb3V0IChOb25lKV0gW0RJU0FCTEVEXQpo ZGFjMDogICAgICAgICAgICsgW0RJU0FCTEVEXSA8LSBuaWQ9MTUgW3BpbjogTGluZS1vdXQgKE5v bmUpXSBbRElTQUJMRURdCmhkYWMwOiAgICAgICAgICAgKyBbRElTQUJMRURdIDwtIG5pZD0xNiBb cGluOiBMaW5lLW91dCAoTm9uZSldIFtESVNBQkxFRF0KaGRhYzA6ICAgICAgICAgICArIFtESVNB QkxFRF0gPC0gbmlkPTE3IFtwaW46IExpbmUtb3V0IChOb25lKV0gW0RJU0FCTEVEXQpoZGFjMDog ICAgICAgICAgICsgW0RJU0FCTEVEXSA8LSBuaWQ9MTggW3BpbjogTGluZS1vdXQgKE5vbmUpXSBb RElTQUJMRURdCmhkYWMwOiAgICAgICAgICAgKyA8LSBuaWQ9MTkgW3BpbjogTWljIChGaXhlZCld IChzZWxlY3RlZCkKaGRhYzA6ICAgICAgICAgICArIFtESVNBQkxFRF0gPC0gbmlkPTIwIFtwaW46 IExpbmUtb3V0IChOb25lKV0gW0RJU0FCTEVEXQpoZGFjMDogICAgICAgICAgICsgW0RJU0FCTEVE XSA8LSBuaWQ9MjkgW2F1ZGlvIG1peGVyXSBbRElTQUJMRURdCmhkYWMwOiAKaGRhYzA6ICAgICAg ICAgICAgIG5pZDogMzMgW0RJU0FCTEVEXQpoZGFjMDogICAgICAgICAgICBOYW1lOiBhdWRpbyBz ZWxlY3RvcgpoZGFjMDogICAgICBXaWRnZXQgY2FwOiAweDAwMzAwOTBkCmhkYWMwOiAgICAgICAg ICAgICAgICAgIExSU1dBUCBTVEVSRU8KaGRhYzA6ICAgICAgT3V0cHV0IGFtcDogMHg4MDA1MGYw MApoZGFjMDogICAgICAgICAgICAgICAgICBtdXRlPTEgc3RlcD0xNSBzaXplPTUgb2Zmc2V0PTAK aGRhYzA6ICAgICBjb25uZWN0aW9uczogMTIKaGRhYzA6ICAgICAgICAgICB8CmhkYWMwOiAgICAg ICAgICAgKyA8LSBuaWQ9MTAgW3BpbjogSGVhZHBob25lcyAoQmxhY2sgSmFjayldIChzZWxlY3Rl ZCkKaGRhYzA6ICAgICAgICAgICArIFtESVNBQkxFRF0gPC0gbmlkPTExIFtwaW46IExpbmUtb3V0 IChOb25lKV0gW0RJU0FCTEVEXQpoZGFjMDogICAgICAgICAgICsgW0RJU0FCTEVEXSA8LSBuaWQ9 MTIgW3BpbjogTGluZS1vdXQgKE5vbmUpXSBbRElTQUJMRURdCmhkYWMwOiAgICAgICAgICAgKyA8 LSBuaWQ9MTMgW3BpbjogU3BlYWtlciAoRml4ZWQpXQpoZGFjMDogICAgICAgICAgICsgW0RJU0FC TEVEXSA8LSBuaWQ9MTQgW3BpbjogTGluZS1vdXQgKE5vbmUpXSBbRElTQUJMRURdCmhkYWMwOiAg ICAgICAgICAgKyBbRElTQUJMRURdIDwtIG5pZD0xNSBbcGluOiBMaW5lLW91dCAoTm9uZSldIFtE SVNBQkxFRF0KaGRhYzA6ICAgICAgICAgICArIFtESVNBQkxFRF0gPC0gbmlkPTE2IFtwaW46IExp bmUtb3V0IChOb25lKV0gW0RJU0FCTEVEXQpoZGFjMDogICAgICAgICAgICsgW0RJU0FCTEVEXSA8 LSBuaWQ9MTcgW3BpbjogTGluZS1vdXQgKE5vbmUpXSBbRElTQUJMRURdCmhkYWMwOiAgICAgICAg ICAgKyBbRElTQUJMRURdIDwtIG5pZD0xOCBbcGluOiBMaW5lLW91dCAoTm9uZSldIFtESVNBQkxF RF0KaGRhYzA6ICAgICAgICAgICArIDwtIG5pZD0xOSBbcGluOiBNaWMgKEZpeGVkKV0KaGRhYzA6 ICAgICAgICAgICArIFtESVNBQkxFRF0gPC0gbmlkPTIwIFtwaW46IExpbmUtb3V0IChOb25lKV0g W0RJU0FCTEVEXQpoZGFjMDogICAgICAgICAgICsgPC0gbmlkPTI5IFthdWRpbyBtaXhlcl0gW0RJ U0FCTEVEXQpoZGFjMDogCmhkYWMwOiAgICAgICAgICAgICBuaWQ6IDM0IFtESVNBQkxFRF0KaGRh YzA6ICAgICAgICAgICAgTmFtZTogcGluOiBMaW5lLW91dCAoTm9uZSkKaGRhYzA6ICAgICAgV2lk Z2V0IGNhcDogMHgwMDQwMDMwMQpoZGFjMDogICAgICAgICAgICAgICAgICBESUdJVEFMIFNURVJF TwpoZGFjMDogICAgICAgICBQaW4gY2FwOiAweDAwMDAwMDEwCmhkYWMwOiAgICAgICAgICAgICAg ICAgIE9VVApoZGFjMDogICAgICBQaW4gY29uZmlnOiAweDQwMDAwMWY4CmhkYWMwOiAgICAgUGlu IGNvbnRyb2w6IDB4MDAwMDAwMDAKaGRhYzA6ICAgICBjb25uZWN0aW9uczogMwpoZGFjMDogICAg ICAgICAgIHwKaGRhYzA6ICAgICAgICAgICArIDwtIG5pZD0zNyBbYXVkaW8gb3V0cHV0XSBbRElT QUJMRURdIChzZWxlY3RlZCkKaGRhYzA6ICAgICAgICAgICArIDwtIG5pZD0zMiBbYXVkaW8gc2Vs ZWN0b3JdCmhkYWMwOiAgICAgICAgICAgKyA8LSBuaWQ9MzMgW2F1ZGlvIHNlbGVjdG9yXSBbRElT QUJMRURdCmhkYWMwOiAKaGRhYzA6ICAgICAgICAgICAgIG5pZDogMzUgW0RJU0FCTEVEXQpoZGFj MDogICAgICAgICAgICBOYW1lOiBwaW46IExpbmUtb3V0IChOb25lKQpoZGFjMDogICAgICBXaWRn ZXQgY2FwOiAweDAwNDAwMzAxCmhkYWMwOiAgICAgICAgICAgICAgICAgIERJR0lUQUwgU1RFUkVP CmhkYWMwOiAgICAgICAgIFBpbiBjYXA6IDB4MDAwMDAwMTAKaGRhYzA6ICAgICAgICAgICAgICAg ICAgT1VUCmhkYWMwOiAgICAgIFBpbiBjb25maWc6IDB4NDAwMDAxZjkKaGRhYzA6ICAgICBQaW4g Y29udHJvbDogMHgwMDAwMDAwMApoZGFjMDogICAgIGNvbm5lY3Rpb25zOiAzCmhkYWMwOiAgICAg ICAgICAgfApoZGFjMDogICAgICAgICAgICsgPC0gbmlkPTM4IFthdWRpbyBvdXRwdXRdIFtESVNB QkxFRF0gKHNlbGVjdGVkKQpoZGFjMDogICAgICAgICAgICsgPC0gbmlkPTMyIFthdWRpbyBzZWxl Y3Rvcl0KaGRhYzA6ICAgICAgICAgICArIDwtIG5pZD0zMyBbYXVkaW8gc2VsZWN0b3JdIFtESVNB QkxFRF0KaGRhYzA6IApoZGFjMDogICAgICAgICAgICAgbmlkOiAzNiBbRElTQUJMRURdCmhkYWMw OiAgICAgICAgICAgIE5hbWU6IHBpbjogTGluZS1vdXQgKE5vbmUpCmhkYWMwOiAgICAgIFdpZGdl dCBjYXA6IDB4MDA0MDA2ODEKaGRhYzA6ICAgICAgICAgICAgICAgICAgUFdSIERJR0lUQUwgVU5T T0wgU1RFUkVPCmhkYWMwOiAgICAgICAgIFBpbiBjYXA6IDB4MDAwMTAwMjQKaGRhYzA6ICAgICAg ICAgICAgICAgICAgUERDIElOIEVBUEQKaGRhYzA6ICAgICAgUGluIGNvbmZpZzogMHg0MDAwMDFm YQpoZGFjMDogICAgIFBpbiBjb250cm9sOiAweDAwMDAwMDAwCmhkYWMwOiAgICAgICAgICAgIEVB UEQ6IDB4MDAwMDAwMDIKaGRhYzA6IApoZGFjMDogICAgICAgICAgICAgbmlkOiAzNyBbRElTQUJM RURdCmhkYWMwOiAgICAgICAgICAgIE5hbWU6IGF1ZGlvIG91dHB1dApoZGFjMDogICAgICBXaWRn ZXQgY2FwOiAweDAwMDQwMjFkCmhkYWMwOiAgICAgICAgICAgICAgICAgIERJR0lUQUwgU1RFUkVP CmhkYWMwOiAgICAgIFN0cmVhbSBjYXA6IDB4MDAwMDAwMDUKaGRhYzA6ICAgICAgICAgICAgICAg ICAgQUMzIFBDTQpoZGFjMDogICAgICAgICBQQ00gY2FwOiAweDAwMGUwNWUwCmhkYWMwOiAgICAg ICAgICAgICAgICAgIDE2IDIwIDI0IGJpdHMsIDQ0IDQ4IDg4IDk2IDE5MiBLSHoKaGRhYzA6ICAg ICAgT3V0cHV0IGFtcDogMHg4MDAwMDAwMApoZGFjMDogICAgICAgICAgICAgICAgICBtdXRlPTEg c3RlcD0wIHNpemU9MCBvZmZzZXQ9MApoZGFjMDogCmhkYWMwOiAgICAgICAgICAgICBuaWQ6IDM4 IFtESVNBQkxFRF0KaGRhYzA6ICAgICAgICAgICAgTmFtZTogYXVkaW8gb3V0cHV0CmhkYWMwOiAg ICAgIFdpZGdldCBjYXA6IDB4MDAwNDAyMWQKaGRhYzA6ICAgICAgICAgICAgICAgICAgRElHSVRB TCBTVEVSRU8KaGRhYzA6ICAgICAgU3RyZWFtIGNhcDogMHgwMDAwMDAwNQpoZGFjMDogICAgICAg ICAgICAgICAgICBBQzMgUENNCmhkYWMwOiAgICAgICAgIFBDTSBjYXA6IDB4MDAwZTA1ZTAKaGRh YzA6ICAgICAgICAgICAgICAgICAgMTYgMjAgMjQgYml0cywgNDQgNDggODggOTYgMTkyIEtIegpo ZGFjMDogICAgICBPdXRwdXQgYW1wOiAweDgwMDAwMDAwCmhkYWMwOiAgICAgICAgICAgICAgICAg IG11dGU9MSBzdGVwPTAgc2l6ZT0wIG9mZnNldD0wCmhkYWMwOiAKaGRhYzA6ICAgICAgICAgICAg IG5pZDogMzkgW0RJU0FCTEVEXQpoZGFjMDogICAgICAgICAgICBOYW1lOiBhdWRpbyBpbnB1dApo ZGFjMDogICAgICBXaWRnZXQgY2FwOiAweDAwMTQwMzFiCmhkYWMwOiAgICAgICAgICAgICAgICAg IERJR0lUQUwgU1RFUkVPCmhkYWMwOiAgICAgIFN0cmVhbSBjYXA6IDB4MDAwMDAwMDUKaGRhYzA6 ICAgICAgICAgICAgICAgICAgQUMzIFBDTQpoZGFjMDogICAgICAgICBQQ00gY2FwOiAweDAwMGUw MTYwCmhkYWMwOiAgICAgICAgICAgICAgICAgIDE2IDIwIDI0IGJpdHMsIDQ0IDQ4IDk2IEtIegpo ZGFjMDogICAgICAgSW5wdXQgYW1wOiAweDgwMDAwMDAwCmhkYWMwOiAgICAgICAgICAgICAgICAg IG11dGU9MSBzdGVwPTAgc2l6ZT0wIG9mZnNldD0wCmhkYWMwOiAgICAgY29ubmVjdGlvbnM6IDEK aGRhYzA6ICAgICAgICAgICB8CmhkYWMwOiAgICAgICAgICAgKyBbRElTQUJMRURdIDwtIG5pZD0z NiBbcGluOiBMaW5lLW91dCAoTm9uZSldIFtESVNBQkxFRF0KaGRhYzA6IApoZGFjMDogICAgICAg ICAgICAgbmlkOiA0MCBbRElTQUJMRURdCmhkYWMwOiAgICAgICAgICAgIE5hbWU6IGF1ZGlvIHNl bGVjdG9yCmhkYWMwOiAgICAgIFdpZGdldCBjYXA6IDB4MDAzMDAxMDEKaGRhYzA6ICAgICAgICAg ICAgICAgICAgU1RFUkVPCmhkYWMwOiAgICAgY29ubmVjdGlvbnM6IDQKaGRhYzA6ICAgICAgICAg ICB8CmhkYWMwOiAgICAgICAgICAgKyA8LSBuaWQ9MTAgW3BpbjogSGVhZHBob25lcyAoQmxhY2sg SmFjayldIChzZWxlY3RlZCkKaGRhYzA6ICAgICAgICAgICArIFtESVNBQkxFRF0gPC0gbmlkPTEx IFtwaW46IExpbmUtb3V0IChOb25lKV0gW0RJU0FCTEVEXQpoZGFjMDogICAgICAgICAgICsgPC0g bmlkPTEzIFtwaW46IFNwZWFrZXIgKEZpeGVkKV0KaGRhYzA6ICAgICAgICAgICArIFtESVNBQkxF RF0gPC0gbmlkPTE1IFtwaW46IExpbmUtb3V0IChOb25lKV0gW0RJU0FCTEVEXQpoZGFjMDogCmhk YWMwOiAgICAgICAgICAgICBuaWQ6IDQxIFtESVNBQkxFRF0KaGRhYzA6ICAgICAgICAgICAgTmFt ZTogYXVkaW8gc2VsZWN0b3IKaGRhYzA6ICAgICAgV2lkZ2V0IGNhcDogMHgwMDMwMDEwMQpoZGFj MDogICAgICAgICAgICAgICAgICBTVEVSRU8KaGRhYzA6ICAgICBjb25uZWN0aW9uczogNApoZGFj MDogICAgICAgICAgIHwKaGRhYzA6ICAgICAgICAgICArIDwtIG5pZD0xMCBbcGluOiBIZWFkcGhv bmVzIChCbGFjayBKYWNrKV0gKHNlbGVjdGVkKQpoZGFjMDogICAgICAgICAgICsgW0RJU0FCTEVE XSA8LSBuaWQ9MTQgW3BpbjogTGluZS1vdXQgKE5vbmUpXSBbRElTQUJMRURdCmhkYWMwOiAgICAg ICAgICAgKyBbRElTQUJMRURdIDwtIG5pZD0xNiBbcGluOiBMaW5lLW91dCAoTm9uZSldIFtESVNB QkxFRF0KaGRhYzA6ICAgICAgICAgICArIFtESVNBQkxFRF0gPC0gbmlkPTE3IFtwaW46IExpbmUt b3V0IChOb25lKV0gW0RJU0FCTEVEXQpoZGFjMDogCmhkYWMwOiAgICAgICAgICAgICBuaWQ6IDQy IFtESVNBQkxFRF0KaGRhYzA6ICAgICAgICAgICAgTmFtZTogYXVkaW8gc2VsZWN0b3IKaGRhYzA6 ICAgICAgV2lkZ2V0IGNhcDogMHgwMDMwMDEwMQpoZGFjMDogICAgICAgICAgICAgICAgICBTVEVS RU8KaGRhYzA6ICAgICBjb25uZWN0aW9uczogNApoZGFjMDogICAgICAgICAgIHwKaGRhYzA6ICAg ICAgICAgICArIFtESVNBQkxFRF0gPC0gbmlkPTExIFtwaW46IExpbmUtb3V0IChOb25lKV0gW0RJ U0FCTEVEXSAoc2VsZWN0ZWQpCmhkYWMwOiAgICAgICAgICAgKyBbRElTQUJMRURdIDwtIG5pZD0x MiBbcGluOiBMaW5lLW91dCAoTm9uZSldIFtESVNBQkxFRF0KaGRhYzA6ICAgICAgICAgICArIFtE SVNBQkxFRF0gPC0gbmlkPTE2IFtwaW46IExpbmUtb3V0IChOb25lKV0gW0RJU0FCTEVEXQpoZGFj MDogICAgICAgICAgICsgW0RJU0FCTEVEXSA8LSBuaWQ9MTcgW3BpbjogTGluZS1vdXQgKE5vbmUp XSBbRElTQUJMRURdCmhkYWMwOiAKaGRhYzA6ICAgICAgICAgICAgIG5pZDogNDMgW0RJU0FCTEVE XQpoZGFjMDogICAgICAgICAgICBOYW1lOiBhdWRpbyBzZWxlY3RvcgpoZGFjMDogICAgICBXaWRn ZXQgY2FwOiAweDAwMzAwMTAxCmhkYWMwOiAgICAgICAgICAgICAgICAgIFNURVJFTwpoZGFjMDog ICAgIGNvbm5lY3Rpb25zOiAzCmhkYWMwOiAgICAgICAgICAgfApoZGFjMDogICAgICAgICAgICsg PC0gbmlkPTIxIFthdWRpbyBvdXRwdXRdIChzZWxlY3RlZCkKaGRhYzA6ICAgICAgICAgICArIDwt IG5pZD0yMiBbYXVkaW8gb3V0cHV0XSBbRElTQUJMRURdCmhkYWMwOiAgICAgICAgICAgKyA8LSBu aWQ9MjMgW2F1ZGlvIG91dHB1dF0gW0RJU0FCTEVEXQpoZGFjMDogCmhkYWMwOiBQcm9jZXNzaW5n IGF1ZGlvIEZHIGNhZD0xIG5pZD0xLi4uCmhkYWMwOiBHUElPOiAweDAwMDAwMDAwIE51bUdQSU89 MCBOdW1HUE89MCBOdW1HUEk9MCBHUElXYWtlPTAgR1BJVW5zb2w9MApoZGFjMDogIG5pZCAzIDB4 MTg1NjAwMTAgYXMgIDEgc2VxICAwICAgRGlnaXRhbC1vdXQgIEphY2sgamFjayAgNiBsb2MgMjQg Y29sb3IgVW5rbm93biBtaXNjIDAKaGRhYzA6IFBhdGNoZWQgcGlucyBjb25maWd1cmF0aW9uOgpo ZGFjMDogIG5pZCAzIDB4MTg1NjAwMTAgYXMgIDEgc2VxICAwICAgRGlnaXRhbC1vdXQgIEphY2sg amFjayAgNiBsb2MgMjQgY29sb3IgVW5rbm93biBtaXNjIDAKaGRhYzA6IDEgYXNzb2NpYXRpb25z IGZvdW5kOgpoZGFjMDogQXNzb2NpYXRpb24gMCAoMSkgb3V0OgpoZGFjMDogIFBpbiBuaWQ9MyBz ZXE9MApoZGFjMDogVHJhY2luZyBhc3NvY2lhdGlvbiAwICgxKQpoZGFjMDogIFBpbiAzIHRyYWNl ZCB0byBEQUMgMgpoZGFjMDogQXNzb2NpYXRpb24gMCAoMSkgdHJhY2Ugc3VjY2VlZGVkCmhkYWMw OiBUcmFjaW5nIGlucHV0IG1vbml0b3IKaGRhYzA6IFRyYWNpbmcgb3RoZXIgaW5wdXQgbW9uaXRv cnMKaGRhYzA6IFRyYWNpbmcgYmVlcGVyCmhkYWMwOiBGRyBjb25maWcvcXVpcmtzOiBmb3JjZXN0 ZXJlbyBpdnJlZjUwIGl2cmVmODAgaXZyZWYxMDAgaXZyZWYKaGRhYzA6IApoZGFjMDogKy0tLS0t LS0tLS0tLS0tLS0tLS0rCmhkYWMwOiB8IERVTVBJTkcgSERBIE5PREVTIHwKaGRhYzA6ICstLS0t LS0tLS0tLS0tLS0tLS0tKwpoZGFjMDogCmhkYWMwOiBEZWZhdWx0IFBhcmFtZXRlcgpoZGFjMDog LS0tLS0tLS0tLS0tLS0tLS0KaGRhYzA6ICAgICAgICAgIElOIGFtcDogMHgwMDAwMDAwMApoZGFj MDogICAgICAgICBPVVQgYW1wOiAweDAwMDAwMDAwCmhkYWMwOiAKaGRhYzA6ICAgICAgICAgICAg IG5pZDogMgpoZGFjMDogICAgICAgICAgICBOYW1lOiBhdWRpbyBvdXRwdXQKaGRhYzA6ICAgICAg V2lkZ2V0IGNhcDogMHgwMDAwNjIxMQpoZGFjMDogICAgICAgICAgICAgICAgICBESUdJVEFMIDhD SApoZGFjMDogICAgIEFzc29jaWF0aW9uOiAwICgweDAwMDAwMDAxKQpoZGFjMDogICAgICAgICAg ICAgT1NTOiBwY20gKHBjbSkKaGRhYzA6ICAgICAgU3RyZWFtIGNhcDogMHgwMDAwMDAwNQpoZGFj MDogICAgICAgICAgICAgICAgICBBQzMgUENNCmhkYWMwOiAgICAgICAgIFBDTSBjYXA6IDB4MDAx ZTA3ZjAKaGRhYzA6ICAgICAgICAgICAgICAgICAgMTYgMjAgMjQgMzIgYml0cywgMzIgNDQgNDgg ODggOTYgMTc2IDE5MiBLSHoKaGRhYzA6IApoZGFjMDogICAgICAgICAgICAgbmlkOiAzCmhkYWMw OiAgICAgICAgICAgIE5hbWU6IHBpbjogRGlnaXRhbC1vdXQgKEphY2spCmhkYWMwOiAgICAgIFdp ZGdldCBjYXA6IDB4MDA0MDczOWQKaGRhYzA6ICAgICAgICAgICAgICAgICAgRElHSVRBTCBVTlNP TCA4Q0gKaGRhYzA6ICAgICBBc3NvY2lhdGlvbjogMCAoMHgwMDAwMDAwMSkKaGRhYzA6ICAgICAg ICAgUGluIGNhcDogMHgwMDAwMDA5NApoZGFjMDogICAgICAgICAgICAgICAgICBQREMgT1VUIEhE TUkKaGRhYzA6ICAgICAgUGluIGNvbmZpZzogMHgxODU2MDAxMApoZGFjMDogICAgIFBpbiBjb250 cm9sOiAweDAwMDAwMDQwIE9VVApoZGFjMDogICAgICBPdXRwdXQgYW1wOiAweDgwMDAwMDAwCmhk YWMwOiAgICAgICAgICAgICAgICAgIG11dGU9MSBzdGVwPTAgc2l6ZT0wIG9mZnNldD0wCmhkYWMw OiAgICAgY29ubmVjdGlvbnM6IDEKaGRhYzA6ICAgICAgICAgICB8CmhkYWMwOiAgICAgICAgICAg KyA8LSBuaWQ9MiBbYXVkaW8gb3V0cHV0XQpoZGFjMDogCnBjbTA6IDxIREEgSURUIDkySEQ3M0Mx IFBDTSAjMCBBbmFsb2c+IGF0IGNhZCAwIG5pZCAxIG9uIGhkYWMwCnBjbTA6ICstLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKcGNtMDogfCBEVU1QSU5HIFBDTSBQbGF5YmFj ay9SZWNvcmQgQ2hhbm5lbHMgfApwY20wOiArLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0rCnBjbTA6IApwY20wOiBQbGF5YmFjazoKcGNtMDogCnBjbTA6ICAgICAgU3RyZWFt IGNhcDogMHgwMDAwMDAwMQpwY20wOiAgICAgICAgICAgICAgICAgIFBDTQpwY20wOiAgICAgICAg IFBDTSBjYXA6IDB4MDAwZTA1ZTAKcGNtMDogICAgICAgICAgICAgICAgICAxNiAyMCAyNCBiaXRz LCA0NCA0OCA4OCA5NiAxOTIgS0h6CnBjbTA6ICAgICAgICAgICAgIERBQzogMjEKcGNtMDogCnBj bTA6IFJlY29yZDoKcGNtMDogCnBjbTA6ICAgICAgU3RyZWFtIGNhcDogMHgwMDAwMDAwMQpwY20w OiAgICAgICAgICAgICAgICAgIFBDTQpwY20wOiAgICAgICAgIFBDTSBjYXA6IDB4MDAwZTA1ZTAK cGNtMDogICAgICAgICAgICAgICAgICAxNiAyMCAyNCBiaXRzLCA0NCA0OCA4OCA5NiAxOTIgS0h6 CnBjbTA6ICAgICAgICAgICAgIEFEQzogMjYKcGNtMDogCnBjbTA6ICstLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tKwpwY20wOiB8IERVTVBJTkcgUGxheWJhY2svUmVjb3JkIFBhdGhzIHwK cGNtMDogKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCnBjbTA6IApwY20wOiBQbGF5 YmFjazoKcGNtMDogCnBjbTA6ICAgICBuaWQ9MTMgW3BpbjogU3BlYWtlciAoRml4ZWQpXQpwY20w OiAgICAgICB8CnBjbTA6ICAgICAgICsgPC0gbmlkPTIxIFthdWRpbyBvdXRwdXRdIFtzcmM6IHBj bV0KcGNtMDogCnBjbTA6ICAgICBuaWQ9MTAgW3BpbjogSGVhZHBob25lcyAoQmxhY2sgSmFjayld CnBjbTA6ICAgICAgIHwKcGNtMDogICAgICAgKyA8LSBuaWQ9MjEgW2F1ZGlvIG91dHB1dF0gW3Ny YzogcGNtXQpwY20wOiAKcGNtMDogUmVjb3JkOgpwY20wOiAKcGNtMDogICAgIG5pZD0yNiBbYXVk aW8gaW5wdXRdCnBjbTA6ICAgICAgIHwKcGNtMDogICAgICAgKyA8LSBuaWQ9MzIgW2F1ZGlvIHNl bGVjdG9yXSBbc3JjOiBtb25pdG9yXQpwY20wOiAgICAgICAgICAgICAgfApwY20wOiAgICAgICAg ICAgICAgKyA8LSBuaWQ9MTkgW3BpbjogTWljIChGaXhlZCldIFtzcmM6IG1vbml0b3JdCnBjbTA6 IApwY20wOiArLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKcGNtMDogfCBEVU1QSU5HIFZvbHVt ZSBDb250cm9scyB8CnBjbTA6ICstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKwpwY20wOiAKcGNt MDogTWFzdGVyIFZvbHVtZSAoT1NTOiB2b2wpCnBjbTA6ICAgIHwKcGNtMDogICAgKy0gY3RsIDEx IChuaWQgIDIxIG91dCk6ICAgIC05NS8wZEIgKDEyOCBzdGVwcykgKyBtdXRlCnBjbTA6IApwY20w OiBQQ00gVm9sdW1lIChPU1M6IHBjbSkKcGNtMDogICAgfApwY20wOiAgICArLSBjdGwgMTEgKG5p ZCAgMjEgb3V0KTogICAgLTk1LzBkQiAoMTI4IHN0ZXBzKSArIG11dGUKcGNtMDogCnBjbTA6IE1p Y3JvcGhvbmUyIFZvbHVtZSAoT1NTOiBtb25pdG9yKQpwY20wOiAgICB8CnBjbTA6ICAgICstIGN0 bCAgOSAobmlkICAxOSBvdXQpOiAgICAwLzMwZEIgKDQgc3RlcHMpCnBjbTA6IApwY20wOiBTcGVh a2VyL0JlZXAgVm9sdW1lIChPU1M6IHNwZWFrZXIpCnBjbTA6ICAgIHwKcGNtMDogICAgKy0gY3Rs IDE2IChuaWQgIDI4IG91dCk6ICAgIC0xOC8wZEIgKDQgc3RlcHMpICsgbXV0ZQpwY20wOiAKcGNt MDogUmVjb3JkaW5nIExldmVsIChPU1M6IHJlYykKcGNtMDogICAgfApwY20wOiAgICArLSBjdGwg MjMgKG5pZCAgMzIgb3V0KTogICAgMC8yMmRCICgxNiBzdGVwcykgKyBtdXRlCnBjbTA6IApwY20w OiBNaXhlciAidm9sIjoKcGNtMDogTWl4ZXIgImJhc3MiOgpwY20wOiBNaXhlciAidHJlYmxlIjoK cGNtMDogTWl4ZXIgInBjbSI6CnBjbTA6IE1peGVyICJzcGVha2VyIjoKcGNtMDogTWl4ZXIgInJl YyI6CnBjbTA6IE1peGVyICJtb25pdG9yIjoKcGNtMDogRVEgVHJlYmxlL0Jhc3MgRU5BQkxFRApw Y20wOiBjbG9uZSBtYW5hZ2VyOiBkZWFkbGluZT03NTBtcyBmbGFncz0weDgwMDAwMDFlCnBjbTA6 IHNuZGJ1Zl9zZXRtYXAgMTNmZmEwMDAwLCA0MDAwOyAweGZmZmZmZjgwNzRlMDAwMDAgLT4gMTNm ZmEwMDAwCnBjbTA6IHNuZGJ1Zl9zZXRtYXAgMTNmZmIwMDAwLCA0MDAwOyAweGZmZmZmZjgwNzRl MTAwMDAgLT4gMTNmZmIwMDAwCnBjbTE6IDxIREEgSW50ZWwgRzQ1IEhETUkgUENNICMwIEhETUk+ IGF0IGNhZCAxIG5pZCAxIG9uIGhkYWMwCnBjbTE6ICstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLSsKcGNtMTogfCBEVU1QSU5HIFBDTSBQbGF5YmFjay9SZWNvcmQgQ2hhbm5l bHMgfApwY20xOiArLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCnBjbTE6 IApwY20xOiBQbGF5YmFjazoKcGNtMTogCnBjbTE6ICAgICAgU3RyZWFtIGNhcDogMHgwMDAwMDAw NQpwY20xOiAgICAgICAgICAgICAgICAgIEFDMyBQQ00KcGNtMTogICAgICAgICBQQ00gY2FwOiAw eDAwMWUwN2YwCnBjbTE6ICAgICAgICAgICAgICAgICAgMTYgMjAgMjQgMzIgYml0cywgMzIgNDQg NDggODggOTYgMTc2IDE5MiBLSHoKcGNtMTogICAgICAgICAgICAgREFDOiAyCnBjbTE6IApwY20x OiArLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKcGNtMTogfCBEVU1QSU5HIFBsYXli YWNrL1JlY29yZCBQYXRocyB8CnBjbTE6ICstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t KwpwY20xOiAKcGNtMTogUGxheWJhY2s6CnBjbTE6IApwY20xOiAgICAgbmlkPTMgW3BpbjogRGln aXRhbC1vdXQgKEphY2spXQpwY20xOiAgICAgICB8CnBjbTE6ICAgICAgICsgPC0gbmlkPTIgW2F1 ZGlvIG91dHB1dF0gW3NyYzogcGNtXQpwY20xOiAKcGNtMTogKy0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0rCnBjbTE6IHwgRFVNUElORyBWb2x1bWUgQ29udHJvbHMgfApwY20xOiArLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLSsKcGNtMTogCnBjbTE6IE1hc3RlciBWb2x1bWUgKE9TUzogdm9sKQpw Y20xOiAgICB8CnBjbTE6ICAgICstIGN0bCAgMSAobmlkICAgMyBpbiApOiAgICBtdXRlCnBjbTE6 IApwY20xOiBQQ00gVm9sdW1lIChPU1M6IHBjbSkKcGNtMTogICAgfApwY20xOiAgICArLSBjdGwg IDEgKG5pZCAgIDMgaW4gKTogICAgbXV0ZQpwY20xOiAKcGNtMTogRW5hYmxpbmcgU29mdCBQQ00g dm9sdW1lCnBjbTE6IE1peGVyICJ2b2wiOgpwY20xOiBNaXhlciAicGNtIjoKcGNtMTogU29mdCBQ Q00gbWl4ZXIgRU5BQkxFRApwY20xOiBjbG9uZSBtYW5hZ2VyOiBkZWFkbGluZT03NTBtcyBmbGFn cz0weDgwMDAwMDFlCnBjbTE6IHNuZGJ1Zl9zZXRtYXAgMmJiMDAwMCwgNDAwMDsgMHhmZmZmZmY4 MDc0ZTIwMDAwIC0+IDJiYjAwMDAKYXRhMjogQUhDSSByZXNldC4uLgphdGEyOiBoYXJkd2FyZSBy ZXNldCAuLi4KYXRhMjogU0FUQSBjb25uZWN0IHRpbWU9MG1zIHN0YXR1cz0wMDAwMDEyMwphdGEy OiByZWFkeSB3YWl0IHRpbWU9Nm1zCmF0YTI6IHNvZnR3YXJlIHJlc2V0IHBvcnQgMTUuLi4KYXRh MjogcmVhZHkgd2FpdCB0aW1lPTBtcwphdGEyOiBTSUdOQVRVUkU6IDAwMDAwMTAxCmF0YTI6IEFI Q0kgcmVzZXQgZG9uZTogZGV2aWNlcz0wMDAwMDAwMQphdGEzOiBBSENJIHJlc2V0Li4uCmF0YTM6 IGhhcmR3YXJlIHJlc2V0IC4uLgphdGEzOiBTQVRBIGNvbm5lY3QgdGltZW91dCBzdGF0dXM9MDAw MDAwMDAKYXRhMzogQUhDSSByZXNldCBkb25lOiBwaHkgcmVzZXQgZm91bmQgbm8gZGV2aWNlCihh cHJvYmUwOmF0YTI6MDowOjApOiBTSUdOQVRVUkU6IDAwMDAKdXNidXMwOiAxMk1icHMgRnVsbCBT cGVlZCBVU0IgdjEuMAp1c2J1czE6IDEyTWJwcyBGdWxsIFNwZWVkIFVTQiB2MS4wCnVzYnVzMjog MTJNYnBzIEZ1bGwgU3BlZWQgVVNCIHYxLjAKdXNidXMzOiA0ODBNYnBzIEhpZ2ggU3BlZWQgVVNC IHYyLjAKdXNidXM0OiAxMk1icHMgRnVsbCBTcGVlZCBVU0IgdjEuMAp1c2J1czU6IDEyTWJwcyBG dWxsIFNwZWVkIFVTQiB2MS4wCnVzYnVzNjogMTJNYnBzIEZ1bGwgU3BlZWQgVVNCIHYxLjAKdXNi dXM3OiA0ODBNYnBzIEhpZ2ggU3BlZWQgVVNCIHYyLjAKYWNwaV9hY2FkMDogYWNsaW5lIGluaXRp YWxpemF0aW9uIHN0YXJ0CmJhdHRlcnkwOiBiYXR0ZXJ5IGluaXRpYWxpemF0aW9uIHN0YXJ0CmFk YTAgYXQgYXRhMiBidXMgMCBzY2J1czAgdGFyZ2V0IDAgbHVuIDBHRU9NOiBuZXcgZGlzayBhZGEw CgphZGEwOiA8U0FNU1VORyBTU0QgUEIyMi1DUzMgVE0gMjU2R0IgVkJNMjNEMVE+IEFUQS03IFNB VEEgMi54IGRldmljZQphZGEwOiBTZXJpYWwgTnVtYmVyIFlGMzBGMEs5MzlTWTkzOUI4MzM0CmFk YTA6IDMwMC4wMDBNQi9zIHRyYW5zZmVycyAoU0FUQSAyLngsIFVETUE1LCBQSU8gODE5MmJ5dGVz KQphZGEwOiAyNDQxOThNQiAoNTAwMTE4MTkyIDUxMiBieXRlIHNlY3RvcnM6IDE2SCA2M1MvVCAx NjM4M0MpCnBhc3MwIGF0IGF0YTIgYnVzIDAgc2NidXMwIHRhcmdldCAwIGx1biAwCnBhc3MwOiA8 U0FNU1VORyBTU0QgUEIyMi1DUzMgVE0gMjU2R0IgVkJNMjNEMVE+IEFUQS03IFNBVEEgMi54IGRl dmljZQpwYXNzMDogU2VyaWFsIE51bWJlciBZRjMwRjBLOTM5U1k5MzlCODMzNApwYXNzMDogMzAw LjAwME1CL3MgdHJhbnNmZXJzIChTQVRBIDIueCwgVURNQTUsIFBJTyA4MTkyYnl0ZXMpCkFjcGlP c0Rlcml2ZVBjaUlkOiBcXF9TQl8uUENJMC5SUDAxLlBYQ1MgLT4gYnVzIDAgZGV2IDI4IGZ1bmMg MApBY3BpT3NEZXJpdmVQY2lJZDogXFxfU0JfLlBDSTAuUlAwMi5QWENTIC0+IGJ1cyAwIGRldiAy OCBmdW5jIDEKU01QOiBBUCBDUFUgIzEgTGF1bmNoZWQhCmNwdTEgQVA6CiAgICAgSUQ6IDB4MDEw MDAwMDAgICBWRVI6IDB4MDAwNTAwMTQgTERSOiAweDAwMDAwMDAwIERGUjogMHhmZmZmZmZmZgog IGxpbnQwOiAweDAwMDEwNzAwIGxpbnQxOiAweDAwMDAwNDAwIFRQUjogMHgwMDAwMDAwMCBTVlI6 IDB4MDAwMDAxZmYKICB0aW1lcjogMHgwMDAxMDBlZiB0aGVybTogMHgwMDAxMDAwMCBlcnI6IDB4 MDAwMDAwZjAgcG1jOiAweDAwMDEwNDAwCiAgIGNtY2k6IDB4MDAwMDAwMDAKaW9hcGljMDogcm91 dGluQ2cgUGlVbnQxcGk6biAgMWwgbyhjYWwgQVBJQyBlcnJvciAweDgwSVNBIElSUSAxCikgdG8g bGFwaWMgMSB2ZWN0b3IgNDgKaW9hcGljMDogcm91dGluZyBpbnRwaW4gMTIgKElTQSBJUlEgMTIp IHRvIGxhcGljIDEgdmVjdG9yIDQ5CmlvYXBpYzA6IHJvdXRpbmcgaW50cGluIDE4IChQQ0kgSVJR IDE4KSB0byBsYXBpYyAxIHZlY3RvciA1MAppb2FwaWMwOiByb3V0aW5nIGludHBpbiAyMSAoUENJ IElSUSAyMSkgdG8gbGFwaWMgMSB2ZWN0b3IgNTEKbXNpOiBBc3NpZ25pbmcgTVNJIElSUSAyNTcg dG8gbG9jYWwgQVBJQyAxIHZlY3RvciA1Mgptc2k6IEFzc2lnbmluZyBNU0kgSVJRIDI1OSB0byBs b2NhbCBBUElDIDEgdmVjdG9yIDUzCldBUk5JTkc6IFdJVE5FU1Mgb3B0aW9uIGVuYWJsZWQsIGV4 cGVjdCByZWR1Y2VkIHBlcmZvcm1hbmNlLgp1Z2VuMC4xOiA8SW50ZWw+IGF0IHVzYnVzMHVnZW4x LjE6IDxJbnRlbD4gYXQgdXNidXMxCgp1aHViMDogPEludGVsIFVIQ0kgcm9vdCBIVUIsIGNsYXNz IDkvMCwgcmV2IDEuMDAvMS4wMCwgYWRkciAxPiBvbiB1c2J1czAKdWh1YjE6IDxJbnRlbCBVSENJ IHJvb3QgSFVCLCBjbGFzcyA5LzAsIHJldiAxLjAwLzEuMDAsIGFkZHIgMT4gb24gdXNidXMxCnVn ZW4yLjE6IDxJbnRlbD4gYXQgdXNidXMyCnVodWIyOiA8SW50ZWwgVUhDSSByb290IEhVQiwgY2xh c3MgOS8wLCByZXYgMS4wMC8xLjAwLCBhZGRyIDE+IG9uIHVzYnVzMgp1Z2VuMy4xOiA8SW50ZWw+ IGF0IHVzYnVzMwp1aHViMzogPEludGVsIEVIQ0kgcm9vdCBIVUIsIGNsYXNzIDkvMCwgcmV2IDIu MDAvMS4wMCwgYWRkciAxPiBvbiB1c2J1czMKdWdlbjQuMTogPEludGVsPiBhdCB1c2J1czR1Z2Vu NS4xOiA8SW50ZWw+IGF0IHVzYnVzNQoKdWh1YjQ6IDxJbnRlbCBVSENJIHJvb3QgSFVCLCBjbGFz cyA5LzAsIHJldiAxLjAwLzEuMDAsIGFkZHIgMT4gb24gdXNidXM0CnVodWI1OiA8SW50ZWwgVUhD SSByb290IEhVQiwgY2xhc3MgOS8wLCByZXYgMS4wMC8xLjAwLCBhZGRyIDE+IG9uIHVzYnVzNQp1 Z2VuNi4xOiA8SW50ZWw+IGF0IHVzYnVzNgp1Z2VuNy4xOiA8SW50ZWw+IGF0IHVzYnVzNwp1aHVi NjogPEludGVsIFVIQ0kgcm9vdCBIVUIsIGNsYXNzIDkvMCwgcmV2IDEuMDAvMS4wMCwgYWRkciAx PiBvbiB1c2J1czYKdWh1Yjc6IDxJbnRlbCBFSENJIHJvb3QgSFVCLCBjbGFzcyA5LzAsIHJldiAy LjAwLzEuMDAsIGFkZHIgMT4gb24gdXNidXM3CmJhdHRlcnkwOiBiYXR0ZXJ5IGluaXRpYWxpemF0 aW9uIGRvbmUsIHRyaWVkIDEgdGltZXMKYWNwaV9saWQwOiBMaWQgb3BlbmVkCmFjcGlfbGlkMDog TGlkIG9wZW5lZApSb290IG1vdW50IHdhaXRpbmcgZm9yOiB1c2J1czcgdXNidXM2IHVzYnVzNSB1 c2J1czQgdXNidXMzIHVzYnVzMiB1c2J1czEgdXNidXMwCkFjcGlPc0Rlcml2ZVBjaUlkOiBcXF9T Ql8uUENJMC5SUDAzLlBYQ1MgLT4gYnVzIDAgZGV2IDI4IGZ1bmMgMgpBY3BpT3NEZXJpdmVQY2lJ ZDogXFxfU0JfLlBDSTAuUlAwNi5QWENTIC0+IGJ1cyAwIGRldiAyOCBmdW5jIDUKYWNwaV9hY2Fk MDogT24gTGluZQphY3BpX2FjYWQwOiBhY2xpbmUgaW5pdGlhbGl6YXRpb24gZG9uZSwgdHJpZWQg MSB0aW1lcwp1aHViMTogMiBwb3J0cyB3aXRoIDIgcmVtb3ZhYmxlLCBzZWxmIHBvd2VyZWQKdWh1 YjA6IDIgcG9ydHMgd2l0aCAyIHJlbW92YWJsZSwgc2VsZiBwb3dlcmVkCnVodWIyOiAyIHBvcnRz IHdpdGggMiByZW1vdmFibGUsIHNlbGYgcG93ZXJlZAp1aHViNTogMiBwb3J0cyB3aXRoIDIgcmVt b3ZhYmxlLCBzZWxmIHBvd2VyZWQKdWh1YjQ6IDIgcG9ydHMgd2l0aCAyIHJlbW92YWJsZSwgc2Vs ZiBwb3dlcmVkCnVodWI2OiAyIHBvcnRzIHdpdGggMiByZW1vdmFibGUsIHNlbGYgcG93ZXJlZApS b290IG1vdW50IHdhaXRpbmcgZm9yOiB1c2J1czcgdXNidXMzClJvb3QgbW91bnQgd2FpdGluZyBm b3I6IHVzYnVzNyB1c2J1czMKdWh1Yjc6IDYgcG9ydHMgd2l0aCA2IHJlbW92YWJsZSwgc2VsZiBw b3dlcmVkCnVodWIzOiA2IHBvcnRzIHdpdGggNiByZW1vdmFibGUsIHNlbGYgcG93ZXJlZApSb290 IG1vdW50IHdhaXRpbmcgZm9yOiB1c2J1czcKUm9vdCBtb3VudCB3YWl0aW5nIGZvcjogdXNidXM3 ClJvb3QgbW91bnQgd2FpdGluZyBmb3I6IHVzYnVzNwpSb290IG1vdW50IHdhaXRpbmcgZm9yOiB1 c2J1czcKUm9vdCBtb3VudCB3YWl0aW5nIGZvcjogdXNidXM3CnVnZW43LjI6IDwobnVsbCk+IGF0 IHVzYnVzNyAoZGlzY29ubmVjdGVkKQpSb290IG1vdW50IHdhaXRpbmcgZm9yOiB1c2J1czcKVHJ5 aW5nIHRvIG1vdW50IHJvb3QgZnJvbSB1ZnM6L2Rldi9ncHQvcGFydDAKY3RfdG9fdHMoWzIwMTAt MDYtMTkgMjM6MTQ6NDddKSA9IDEyNzY5ODkyODcuMDAwMDAwMDAwCnN0YXJ0X2luaXQ6IHRyeWlu ZyAvc2Jpbi9pbml0CmFjcGlfbGlkMDogTGlkIG9wZW5lZAphY3BpX2xpZDA6IExpZCBvcGVuZWQK TGludXggRUxGIGV4ZWMgaGFuZGxlciBpbnN0YWxsZWQKbGlucHJvY2ZzIHJlZ2lzdGVyZWQKdWdl bjYuMjogPEJyb2FkY29tPiBhdCB1c2J1czYKdWh1Yjg6IDxCcm9hZGNvbSBCQ00yMDQ2QjEsIGNs YXNzIDkvMCwgcmV2IDIuMDAvMS4wMCwgYWRkciAyPiBvbiB1c2J1czYKbGFnZzA6IGJwZiBhdHRh Y2hlZAp1aHViODogMyBwb3J0cyB3aXRoIDAgcmVtb3ZhYmxlLCBzZWxmIHBvd2VyZWQKdWdlbjYu MzogPHZlbmRvciAweDQxM2M+IGF0IHVzYnVzNgp1a2JkMDogPHZlbmRvciAweDQxM2MgcHJvZHVj dCAweDgxNTcsIGNsYXNzIDAvMCwgcmV2IDIuMDAvMS4wMCwgYWRkciAzPiBvbiB1c2J1czYKa2Jk MiBhdCB1a2JkMAprYmQyOiB1a2JkMCwgZ2VuZXJpYyAoMCksIGNvbmZpZzoweDAsIGZsYWdzOjB4 M2QwMDAwCnVnZW42LjQ6IDx2ZW5kb3IgMHg0MTNjPiBhdCB1c2J1czYKdW1zMDogPHZlbmRvciAw eDQxM2MgcHJvZHVjdCAweDgxNTgsIGNsYXNzIDAvMCwgcmV2IDIuMDAvMS4wMCwgYWRkciA0PiBv biB1c2J1czYKdW1zMDogMyBidXR0b25zIGFuZCBbWFldIGNvb3JkaW5hdGVzIElEPTIKZmlybXdh cmU6ICdpd241MDAwZncnIHZlcnNpb24gMDogMzUzMjQwIGJ5dGVzIGxvYWRlZCBhdCAweGZmZmZm ZmZmODBlMzQwYjAKd2xhbjA6IGJwZiBhdHRhY2hlZAp3bGFuMDogYnBmIGF0dGFjaGVkCndsYW4w OiBFdGhlcm5ldCBhZGRyZXNzOiAwMDoyMjoxOTplNTpjYTo1MQpiZ2UwOiBEaXNhYmxpbmcgZmFz dGJvb3QKYmdlMDogRGlzYWJsaW5nIGZhc3Rib290CndsYW4wOiBsaW5rIHN0YXRlIGNoYW5nZWQg dG8gVVAKbGFnZzA6IGxpbmsgc3RhdGUgY2hhbmdlZCB0byBVUAphY3BpX2xpZDA6IExpZCBvcGVu ZWQKYWNwaV9saWQwOiBMaWQgb3BlbmVkCmRybTA6IFtNUFNBRkVdCmRybTA6IFtJVEhSRUFEXQpz eXN0ZW0gcG93ZXIgcHJvZmlsZSBjaGFuZ2VkIHRvICdlY29ub215JwphY3BpX2FjYWQwOiBPZmYg TGluZQpsb2NrIG9yZGVyIHJldmVyc2FsOgogMXN0IDB4ZmZmZmZmODA1MTVjYzQ5OCBidWZ3YWl0 IChidWZ3YWl0KSBAIC91c3Ivc3JjL3N5cy9rZXJuL3Zmc19iaW8uYzoyNjA4CiAybmQgMHhmZmZm ZmYwMGIyNGM1YzAwIGRpcmhhc2ggKGRpcmhhc2gpIEAgL3Vzci9zcmMvc3lzL3Vmcy91ZnMvdWZz X2Rpcmhhc2guYzoyODMKS0RCOiBzdGFjayBiYWNrdHJhY2U6CmRiX3RyYWNlX3NlbGZfd3JhcHBl cigpIGF0IGRiX3RyYWNlX3NlbGZfd3JhcHBlcisweDJhCl93aXRuZXNzX2RlYnVnZ2VyKCkgYXQg X3dpdG5lc3NfZGVidWdnZXIrMHgyZQp3aXRuZXNzX2NoZWNrb3JkZXIoKSBhdCB3aXRuZXNzX2No ZWNrb3JkZXIrMHg4MWUKX3N4X3hsb2NrKCkgYXQgX3N4X3hsb2NrKzB4NTUKdWZzZGlyaGFzaF9h Y3F1aXJlKCkgYXQgdWZzZGlyaGFzaF9hY3F1aXJlKzB4MzMKdWZzZGlyaGFzaF9hZGQoKSBhdCB1 ZnNkaXJoYXNoX2FkZCsweDE5CnVmc19kaXJlbnRlcigpIGF0IHVmc19kaXJlbnRlcisweDhiYwp1 ZnNfbWFrZWlub2RlKCkgYXQgdWZzX21ha2Vpbm9kZSsweDI1MApWT1BfQ1JFQVRFX0FQVigpIGF0 IFZPUF9DUkVBVEVfQVBWKzB4OGQKdm5fb3Blbl9jcmVkKCkgYXQgdm5fb3Blbl9jcmVkKzB4NDZh Cmtlcm5fb3BlbmF0KCkgYXQga2Vybl9vcGVuYXQrMHgxNzkKc3lzY2FsbGVudGVyKCkgYXQgc3lz Y2FsbGVudGVyKzB4ZjAKc3lzY2FsbCgpIGF0IHN5c2NhbGwrMHg0YwpYZmFzdF9zeXNjYWxsKCkg YXQgWGZhc3Rfc3lzY2FsbCsweGUxCi0tLSBzeXNjYWxsICg1LCBGcmVlQlNEIEVMRjY0LCBvcGVu KSwgcmlwID0gMHg4MDE5OGZhZWMsIHJzcCA9IDB4N2ZmZmZmZmZkMjI4LCByYnAgPSAweDEgLS0t CmFjcXVpcmluZyBkdXBsaWNhdGUgbG9jayBvZiBzYW1lIHR5cGU6ICJmdGxrIgogMXN0IGZ0bGsg QCAvdXNyL3NyYy9zeXMvbW9kdWxlcy9saW51eC8uLi8uLi9jb21wYXQvbGludXgvbGludXhfZnV0 ZXguYzoxNzcKIDJuZCBmdGxrIEAgL3Vzci9zcmMvc3lzL21vZHVsZXMvbGludXgvLi4vLi4vY29t cGF0L2xpbnV4L2xpbnV4X2Z1dGV4LmM6MjAzCktEQjogc3RhY2sgYmFja3RyYWNlOgpkYl90cmFj ZV9zZWxmX3dyYXBwZXIoKSBhdCBkYl90cmFjZV9zZWxmX3dyYXBwZXIrMHgyYQpfd2l0bmVzc19k ZWJ1Z2dlcigpIGF0IF93aXRuZXNzX2RlYnVnZ2VyKzB4MmUKd2l0bmVzc19jaGVja29yZGVyKCkg YXQgd2l0bmVzc19jaGVja29yZGVyKzB4OGVmCl9zeF94bG9jaygpIGF0IF9zeF94bG9jaysweDU1 CmZ1dGV4X2dldDAoKSBhdCBmdXRleF9nZXQwKzB4ZmUKbGludXhfc3lzX2Z1dGV4KCkgYXQgbGlu dXhfc3lzX2Z1dGV4KzB4OTYKc3lzY2FsbGVudGVyKCkgYXQgc3lzY2FsbGVudGVyKzB4ZjAKaWEz Ml9zeXNjYWxsKCkgYXQgaWEzMl9zeXNjYWxsKzB4NGIKWGludDB4ODBfc3lzY2FsbCgpIGF0IFhp bnQweDgwX3N5c2NhbGwrMHg5NQotLS0gc3lzY2FsbCAoMjQwLCBMaW51eCBFTEYzMiwgbGludXhf c3lzX2Z1dGV4KSwgcmlwID0gMHgyODc5OTUzMywgcnNwID0gMHhmZmZmY2QwYywgcmJwID0gMHg0 MDAwMDAxIC0tLQo= --002215048d0bca851504896ab298 Content-Type: application/octet-stream; name="dmesg.boot.no_et" Content-Disposition: attachment; filename="dmesg.boot.no_et" Content-Transfer-Encoding: base64 X-Attachment-Id: f_gan3nwcv1 Q29weXJpZ2h0IChjKSAxOTkyLTIwMTAgVGhlIEZyZWVCU0QgUHJvamVjdC4KQ29weXJpZ2h0IChj KSAxOTc5LCAxOTgwLCAxOTgzLCAxOTg2LCAxOTg4LCAxOTg5LCAxOTkxLCAxOTkyLCAxOTkzLCAx OTk0CglUaGUgUmVnZW50cyBvZiB0aGUgVW5pdmVyc2l0eSBvZiBDYWxpZm9ybmlhLiBBbGwgcmln aHRzIHJlc2VydmVkLgpGcmVlQlNEIGlzIGEgcmVnaXN0ZXJlZCB0cmFkZW1hcmsgb2YgVGhlIEZy ZWVCU0QgRm91bmRhdGlvbi4KRnJlZUJTRCA5LjAtQ1VSUkVOVCAjMCByMjA5MjU2OiBUaHUgSnVu IDE3IDEyOjEwOjIzIENEVCAyMDEwCiAgICByb290QGFkYW1vOi91c3Ivb2JqL3Vzci9zcmMvc3lz L0FEQU1PIGFtZDY0CldBUk5JTkc6IFdJVE5FU1Mgb3B0aW9uIGVuYWJsZWQsIGV4cGVjdCByZWR1 Y2VkIHBlcmZvcm1hbmNlLgpQcmVsb2FkZWQgZWxmIGtlcm5lbCAiL2Jvb3Qva2VybmVsLm9sZC9r ZXJuZWwiIGF0IDB4ZmZmZmZmZmY4MGQwNzAwMC4KUHJlbG9hZGVkIGVsZiBvYmogbW9kdWxlICIv Ym9vdC9rZXJuZWwub2xkL21paWJ1cy5rbyIgYXQgMHhmZmZmZmZmZjgwZDA3MjcwLgpQcmVsb2Fk ZWQgZWxmIG9iaiBtb2R1bGUgIi9ib290L2tlcm5lbC5vbGQvaWZfYmdlLmtvIiBhdCAweGZmZmZm ZmZmODBkMDc4NjAuClByZWxvYWRlZCBlbGYgb2JqIG1vZHVsZSAiL2Jvb3Qva2VybmVsLm9sZC9z b3VuZC5rbyIgYXQgMHhmZmZmZmZmZjgwZDA3ZWQwLgpQcmVsb2FkZWQgZWxmIG9iaiBtb2R1bGUg Ii9ib290L2tlcm5lbC5vbGQvc25kX2hkYS5rbyIgYXQgMHhmZmZmZmZmZjgwZDA4NTgwLgpQcmVs b2FkZWQgZWxmIG9iaiBtb2R1bGUgIi9ib290L2tlcm5lbC5vbGQvdXNiLmtvIiBhdCAweGZmZmZm ZmZmODBkMDhiYjAuClByZWxvYWRlZCBlbGYgb2JqIG1vZHVsZSAiL2Jvb3Qva2VybmVsLm9sZC91 aGlkLmtvIiBhdCAweGZmZmZmZmZmODBkMDkyNTguClByZWxvYWRlZCBlbGYgb2JqIG1vZHVsZSAi L2Jvb3Qva2VybmVsLm9sZC91a2JkLmtvIiBhdCAweGZmZmZmZmZmODBkMDk4MDguClByZWxvYWRl ZCBlbGYgb2JqIG1vZHVsZSAiL2Jvb3Qva2VybmVsLm9sZC91bXMua28iIGF0IDB4ZmZmZmZmZmY4 MGQwOWUzOC4KUHJlbG9hZGVkIGVsZiBvYmogbW9kdWxlICIvYm9vdC9rZXJuZWwub2xkL3VtYXNz LmtvIiBhdCAweGZmZmZmZmZmODBkMGEzZTAuClByZWxvYWRlZCBlbGYgb2JqIG1vZHVsZSAiL2Jv b3Qva2VybmVsLm9sZC9hY3BpX3ZpZGVvLmtvIiBhdCAweGZmZmZmZmZmODBkMGE5OTAuClByZWxv YWRlZCAvYm9vdC96ZnMvenBvb2wuY2FjaGUgIi9ib290L3pmcy96cG9vbC5jYWNoZSIgYXQgMHhm ZmZmZmZmZjgwZDBhZjQwLgpQcmVsb2FkZWQgZWxmIG9iaiBtb2R1bGUgIi9ib290L2tlcm5lbC5v bGQvZHJtLmtvIiBhdCAweGZmZmZmZmZmODBkMGFmYTAuClByZWxvYWRlZCBlbGYgb2JqIG1vZHVs ZSAiL2Jvb3Qva2VybmVsLm9sZC9pOTE1LmtvIiBhdCAweGZmZmZmZmZmODBkMGI2NDguClByZWxv YWRlZCBlbGYgb2JqIG1vZHVsZSAiL2Jvb3Qva2VybmVsLm9sZC9laGNpLmtvIiBhdCAweGZmZmZm ZmZmODBkMGJiZjguClByZWxvYWRlZCBlbGYgb2JqIG1vZHVsZSAiL2Jvb3Qva2VybmVsLm9sZC91 aGNpLmtvIiBhdCAweGZmZmZmZmZmODBkMGMxYTguClByZWxvYWRlZCBlbGYgb2JqIG1vZHVsZSAi L2Jvb3Qva2VybmVsLm9sZC91Y29tLmtvIiBhdCAweGZmZmZmZmZmODBkMGM3NTguClByZWxvYWRl ZCBlbGYgb2JqIG1vZHVsZSAiL2Jvb3Qva2VybmVsLm9sZC91bWN0LmtvIiBhdCAweGZmZmZmZmZm ODBkMGNmMDguClByZWxvYWRlZCBlbGYgb2JqIG1vZHVsZSAiL2Jvb3Qva2VybmVsLm9sZC91cGxj b20ua28iIGF0IDB4ZmZmZmZmZmY4MGQwZDRiOC4KUHJlbG9hZGVkIGVsZiBvYmogbW9kdWxlICIv Ym9vdC9rZXJuZWwub2xkL2lmX2l3bi5rbyIgYXQgMHhmZmZmZmZmZjgwZDBkYTY4LgpQcmVsb2Fk ZWQgZWxmIG9iaiBtb2R1bGUgIi9ib290L2tlcm5lbC5vbGQvaWZfbGFnZy5rbyIgYXQgMHhmZmZm ZmZmZjgwZDBlMDU4LgpUaW1lY291bnRlciAiaTgyNTQiIGZyZXF1ZW5jeSAxMTkzMTgyIEh6IHF1 YWxpdHkgMApDYWxpYnJhdGluZyBUU0MgY2xvY2sgLi4uIFRTQyBjbG9jazogMTQwMDA2MDU1NyBI egpDUFU6IEludGVsKFIpIENvcmUoVE0pMiBEdW8gQ1BVICAgICBVOTQwMCAgQCAxLjQwR0h6ICgx NDAwLjA2LU1IeiBLOC1jbGFzcyBDUFUpCiAgT3JpZ2luID0gIkdlbnVpbmVJbnRlbCIgIElkID0g MHgxMDY3NiAgRmFtaWx5ID0gNiAgTW9kZWwgPSAxNyAgU3RlcHBpbmcgPSA2CiAgRmVhdHVyZXM9 MHhiZmViZmJmZjxGUFUsVk1FLERFLFBTRSxUU0MsTVNSLFBBRSxNQ0UsQ1g4LEFQSUMsU0VQLE1U UlIsUEdFLE1DQSxDTU9WLFBBVCxQU0UzNixDTEZMVVNILERUUyxBQ1BJLE1NWCxGWFNSLFNTRSxT U0UyLFNTLEhUVCxUTSxQQkU+CiAgRmVhdHVyZXMyPTB4OGUzZmQ8U1NFMyxEVEVTNjQsTU9OLERT X0NQTCxWTVgsU01YLEVTVCxUTTIsU1NTRTMsQ1gxNix4VFBSLFBEQ00sU1NFNC4xPgogIEFNRCBG ZWF0dXJlcz0weDIwMTAwODAwPFNZU0NBTEwsTlgsTE0+CiAgQU1EIEZlYXR1cmVzMj0weDE8TEFI Rj4KICBUU0M6IFAtc3RhdGUgaW52YXJpYW50CnJlYWwgbWVtb3J5ICA9IDQyOTQ5NjcyOTYgKDQw OTYgTUIpClBoeXNpY2FsIG1lbW9yeSBjaHVuayhzKToKMHgwMDAwMDAwMDAwMDAxMDAwIC0gMHgw MDAwMDAwMDAwMDk3ZmZmLCA2MTg0OTYgYnl0ZXMgKDE1MSBwYWdlcykKMHgwMDAwMDAwMDAwZDNk MDAwIC0gMHgwMDAwMDAwMGIzZTIwZmZmLCAzMDA0MDU1NTUyIGJ5dGVzICg3MzM0MTIgcGFnZXMp CjB4MDAwMDAwMDBiZDRhNzAwMCAtIDB4MDAwMDAwMDBiZDVjZmZmZiwgMTIxNjUxMiBieXRlcyAo Mjk3IHBhZ2VzKQoweDAwMDAwMDAwYmQ2MGYwMDAgLSAweDAwMDAwMDAwYmQ3MDhmZmYsIDEwMjQw MDAgYnl0ZXMgKDI1MCBwYWdlcykKMHgwMDAwMDAwMGJkOTBmMDAwIC0gMHgwMDAwMDAwMGJkOTE3 ZmZmLCAzNjg2NCBieXRlcyAoOSBwYWdlcykKMHgwMDAwMDAwMGJkOTFmMDAwIC0gMHgwMDAwMDAw MGJkOTYyZmZmLCAyNzg1MjggYnl0ZXMgKDY4IHBhZ2VzKQoweDAwMDAwMDAwYmQ5OWYwMDAgLSAw eDAwMDAwMDAwYmQ5ZTJmZmYsIDI3ODUyOCBieXRlcyAoNjggcGFnZXMpCjB4MDAwMDAwMDBiZDlm ZjAwMCAtIDB4MDAwMDAwMDBiZDlmZmZmZiwgNDA5NiBieXRlcyAoMSBwYWdlcykKMHgwMDAwMDAw MTAwMDAwMDAwIC0gMHgwMDAwMDAwMTNmZmVmZmZmLCAxMDczNjc2Mjg4IGJ5dGVzICgyNjIxMjgg cGFnZXMpCmF2YWlsIG1lbW9yeSA9IDQwNTc4NTgwNDggKDM4NjkgTUIpCkFDUEkgQVBJQyBUYWJs ZTogPFBUTFREICAJIEFQSUMgID4KSU5UUjogQWRkaW5nIGxvY2FsIEFQSUMgMSBhcyBhIHRhcmdl dApGcmVlQlNEL1NNUDogTXVsdGlwcm9jZXNzb3IgU3lzdGVtIERldGVjdGVkOiAyIENQVXMKRnJl ZUJTRC9TTVA6IDEgcGFja2FnZShzKSB4IDIgY29yZShzKQogY3B1MCAoQlNQKTogQVBJQyBJRDog IDAKIGNwdTEgKEFQKTogQVBJQyBJRDogIDEKQVBJQzogQ1BVIDAgaGFzIEFDUEkgSUQgMApBUElD OiBDUFUgMSBoYXMgQUNQSSBJRCAxCng4NmJpb3M6ICAgSVZUIDB4MDAwMDAwLTB4MDAwNGZmIGF0 IDB4ZmZmZmZmMDAwMDAwMDAwMAp4ODZiaW9zOiAgU1NFRyAweDAxMDAwMC0weDAxZmZmZiBhdCAw eGZmZmZmZjgwMDAwMTYwMDAKeDg2YmlvczogIEVCREEgMHgwOWMwMDAtMHgwOWZmZmYgYXQgMHhm ZmZmZmYwMDAwMDljMDAwCng4NmJpb3M6ICAgUk9NIDB4MGEwMDAwLTB4MGVmZmZmIGF0IDB4ZmZm ZmZmMDAwMDBhMDAwMApXQVJOSU5HOiBWSU1BR0UgKHZpcnR1YWxpemVkIG5ldHdvcmsgc3RhY2sp IGlzIGEgaGlnaGx5IGV4cGVyaW1lbnRhbCBmZWF0dXJlLgpVTEU6IHNldHVwIGNwdSAwClVMRTog c2V0dXAgY3B1IDEKQUNQSTogUlNEUCAweGY3OGUwIDAwMDI0ICh2MiBQVExURCApCkFDUEk6IFhT RFQgMHhiZDlmNzZjNSAwMDA3QyAodjEgREVMTCAgICBRQTA5ICAgIDA2MDQwMDAwICBMVFAgMDAw MDAwMDApCkFDUEk6IEZBQ1AgMHhiZDllNzAwMCAwMDBGNCAodjMgSU5URUwgIENSRVNUTE5FIDA2 MDQwMDAwIEFMQU4gMDAwMDAwMDEpCkFDUEk6IERTRFQgMHhiZDllODAwMCAwNzQwQyAodjIgSW50 ZWwgIENBTlRJR0EgIDA2MDQwMDAwIElOVEwgMjAwNTA2MjQpCkFDUEk6IEZBQ1MgMHhiZDk5ZWZj MCAwMDA0MApBQ1BJOiBIUEVUIDB4YmQ5ZmVkMTYgMDAwMzggKHYxIElOVEVMICBDUkVTVExORSAw NjA0MDAwMCBMT0hSIDAwMDAwMDVBKQpBQ1BJOiBNQ0ZHIDB4YmQ5ZmVkNGUgMDAwM0MgKHYxIElO VEVMICBDUkVTVExORSAwNjA0MDAwMCBMT0hSIDAwMDAwMDVBKQpBQ1BJOiBBUElDIDB4YmQ5ZmVk OGEgMDAwNjggKHYxIFBUTFREICA/IEFQSUMgICAwNjA0MDAwMCAgTFRQIDAwMDAwMDAwKQpBQ1BJ OiBCT09UIDB4YmQ5ZmVkZjIgMDAwMjggKHYxIFBUTFREICAkU0JGVEJMJCAwNjA0MDAwMCAgTFRQ IDAwMDAwMDAxKQpBQ1BJOiBTTElDIDB4YmQ5ZmVlMWEgMDAxNzYgKHYxIERFTEwgICAgUUEwOSAg ICAwNjA0MDAwMCAgTFRQIDAwMDAwMDAwKQpBQ1BJOiBPU0ZSIDB4YmQ5ZmVmOTAgMDAwNzAgKHYx IERFTEwgICBERUxMICAgICAwNjA0MDAwMCBBU0wgIDAwMDAwMDYxKQpBQ1BJOiBTU0RUIDB4YmQ5 Zjc3NjkgMDAwMzkgKHYxIEJydFJlZiAgREQwMUJSVCAwMDAwMTAwMCBJTlRMIDIwMDUwNjI0KQpB Q1BJOiBTU0RUIDB4YmQ5ZTYwMDAgMDA2NTUgKHYxICBQbVJlZiAgICBDcHVQbSAwMDAwMzAwMCBJ TlRMIDIwMDUwNjI0KQpBQ1BJOiBTU0RUIDB4YmQ5ZTUwMDAgMDAyNTkgKHYxICBQbVJlZiAgQ3B1 MFRzdCAwMDAwMzAwMCBJTlRMIDIwMDUwNjI0KQpBQ1BJOiBTU0RUIDB4YmQ5ZTQwMDAgMDAyMEYg KHYxICBQbVJlZiAgICBBcFRzdCAwMDAwMzAwMCBJTlRMIDIwMDUwNjI0KQpNQURUOiBGb3VuZCBJ TyBBUElDIElEIDIsIEludGVycnVwdCAwIGF0IDB4ZmVjMDAwMDAKaW9hcGljMDogUm91dGluZyBl eHRlcm5hbCA4MjU5QSdzIC0+IGludHBpbiAwCmxhcGljMDogUm91dGluZyBOTUkgLT4gTElOVDEK bGFwaWMwOiBMSU5UMSB0cmlnZ2VyOiBlZGdlCmxhcGljMDogTElOVDEgcG9sYXJpdHk6IGhpZ2gK bGFwaWMxOiBSb3V0aW5nIE5NSSAtPiBMSU5UMQpsYXBpYzE6IExJTlQxIHRyaWdnZXI6IGVkZ2UK bGFwaWMxOiBMSU5UMSBwb2xhcml0eTogaGlnaApNQURUOiBJbnRlcnJ1cHQgb3ZlcnJpZGU6IHNv dXJjZSAwLCBpcnEgMgppb2FwaWMwOiBSb3V0aW5nIElSUSAwIC0+IGludHBpbiAyCk1BRFQ6IElu dGVycnVwdCBvdmVycmlkZTogc291cmNlIDksIGlycSA5CmlvYXBpYzA6IGludHBpbiA5IHRyaWdn ZXI6IGxldmVsCmlvYXBpYzAgPFZlcnNpb24gMi4wPiBpcnFzIDAtMjMgb24gbW90aGVyYm9hcmQK Y3B1MCBCU1A6CiAgICAgSUQ6IDB4MDAwMDAwMDAgICBWRVI6IDB4MDAwNTAwMTQgTERSOiAweDAw MDAwMDAwIERGUjogMHhmZmZmZmZmZgogIGxpbnQwOiAweDAwMDEwNzAwIGxpbnQxOiAweDAwMDAw NDAwIFRQUjogMHgwMDAwMDAwMCBTVlI6IDB4MDAwMDAxZmYKICB0aW1lcjogMHgwMDAxMDBlZiB0 aGVybTogMHgwMDAxMDAwMCBlcnI6IDB4MDAwMDAwZjAgcG1jOiAweDAwMDEwNDAwCiAgIGNtY2k6 IDB4MDAwMDAwMDAKd2xhbjogPDgwMi4xMSBMaW5rIExheWVyPgpzbmRfdW5pdF9pbml0KCkgdT0w eDAwZmY4MDAwIFs1MTJdIGQ9MHgwMDAwN2MwMCBbMzJdIGM9MHgwMDAwMDNmZiBbMTAyNF0KZmVl ZGVyX3JlZ2lzdGVyOiBzbmRfdW5pdD0tMSBzbmRfbWF4YXV0b3ZjaGFucz0xNiBsYXRlbmN5PTUg ZmVlZGVyX3JhdGVfbWluPTEgZmVlZGVyX3JhdGVfbWF4PTIwMTYwMDAgZmVlZGVyX3JhdGVfcm91 bmQ9MjUKVkVTQTogaW5mb3JtYXRpb24gYmxvY2sKMDAwMCAgIDU2IDQ1IDUzIDQxIDAwIDAzIDAw IDAxIDAwIDAxIDAxIDAwIDAwIDAwIDQwIDAwCjAwMTAgICAwMCAwMSBmZiAwMSAwMCAwMSAzMyAw MSAwMCAwMSA0NSAwMSAwMCAwMSA2OSAwMQowMDIwICAgMDAgMDEgMDAgMDAgMDAgMDAgMDAgMDAg MDAgMDAgMDAgMDAgMDAgMDAgMDAgMDAKMDAzMCAgIDAwIDAwIDAwIDAwIDAwIDAwIDAwIDAwIDAw IDAwIDAwIDAwIDAwIDAwIDAwIDAwCjAwNDAgICA2MCAwMSA2MSAwMSA2MiAwMSA2MyAwMSA2NCAw MSA2NSAwMSA2NiAwMSA2NyAwMQowMDUwICAgNjggMDEgNjkgMDEgNmEgMDEgNmIgMDEgNmMgMDEg NmQgMDEgNmUgMDEgNmYgMDEKMDA2MCAgIDcwIDAxIDcxIDAxIDNjIDAxIDRkIDAxIDVjIDAxIDNh IDAxIDRiIDAxIDVhIDAxCjAwNzAgICAwNyAwMSAxYSAwMSAxYiAwMSAwNSAwMSAxNyAwMSAxOCAw MSAxMiAwMSAxNCAwMQowMDgwICAgMTUgMDEgMDEgMDEgMDMgMDEgMTEgMDEgZmYgZmYgMDAgMDAg MDAgMDAgMDAgMDAKMDA5MCAgIDAwIDAwIDAwIDAwIDAwIDAwIDAwIDAwIDAwIDAwIDAwIDAwIDAw IDAwIDAwIDAwCjAwYTAgICAwMCAwMCAwMCAwMCAwMCAwMCAwMCAwMCAwMCAwMCAwMCAwMCAwMCAw MCAwMCAwMAowMGIwICAgMDAgMDAgMDAgMDAgMDAgMDAgMDAgMDAgMDAgMDAgMDAgMDAgMDAgMDAg MDAgMDAKMDBjMCAgIDAwIDAwIDAwIDAwIDAwIDAwIDAwIDAwIDAwIDAwIDAwIDAwIDAwIDAwIDAw IDAwCjAwZDAgICAwMCAwMCAwMCAwMCAwMCAwMCAwMCAwMCAwMCAwMCAwMCAwMCAwMCAwMCAwMCAw MAowMGUwICAgMDAgMDAgMDAgMDAgMDAgMDAgMDAgMDAgMDAgMDAgMDAgMDAgMDAgMDAgMDAgMDAK MDBmMCAgIDAwIDAwIDAwIDAwIDAwIDAwIDAwIDAwIDAwIDAwIDAwIDAwIDAwIDAwIDAwIDAwCjAx MDAgICA0OSA2ZSA3NCA2NSA2YyAyOCA3MiAyOSA0MyA2MSA2ZSA3NCA2OSA2NyA2MSAyMAowMTEw ICAgNDcgNzIgNjEgNzAgNjggNjkgNjMgNzMgMjAgNDMgNjggNjkgNzAgMjAgNDEgNjMKMDEyMCAg IDYzIDY1IDZjIDY1IDcyIDYxIDc0IDY1IDY0IDIwIDU2IDQ3IDQxIDIwIDQyIDQ5CjAxMzAgICA0 ZiA1MyAwMCA0OSA2ZSA3NCA2NSA2YyAyMCA0MyA2ZiA3MiA3MCA2ZiA3MiA2MQowMTQwICAgNzQg NjkgNmYgNmUgMDAgNDkgNmUgNzQgNjUgNmMgMjggNzIgMjkgNDMgNjEgNmUKMDE1MCAgIDc0IDY5 IDY3IDYxIDIwIDQ3IDcyIDYxIDcwIDY4IDY5IDYzIDczIDIwIDQzIDZmCjAxNjAgICA2ZSA3NCA3 MiA2ZiA2YyA2YyA2NSA3MiAwMCA0OCA2MSA3MiA2NCA3NyA2MSA3MgowMTcwICAgNjUgMjAgNTYg NjUgNzIgNzMgNjkgNmYgNmUgMjAgMzAgMmUgMzAgMDAgMDAgMDAKMDE4MCAgIDAwIDAwIDAwIDAw IDAwIDAwIDAwIDAwIDAwIDAwIDAwIDAwIDAwIDAwIDAwIDAwCjAxOTAgICAwMCAwMCAwMCAwMCAw MCAwMCAwMCAwMCAwMCAwMCAwMCAwMCAwMCAwMCAwMCAwMAowMWEwICAgMDAgMDAgMDAgMDAgMDAg MDAgMDAgMDAgMDAgMDAgMDAgMDAgMDAgMDAgMDAgMDAKMDFiMCAgIDAwIDAwIDAwIDAwIDAwIDAw IDAwIDAwIDAwIDAwIDAwIDAwIDAwIDAwIDAwIDAwCjAxYzAgICAwMCAwMCAwMCAwMCAwMCAwMCAw MCAwMCAwMCAwMCAwMCAwMCAwMCAwMCAwMCAwMAowMWQwICAgMDAgMDAgMDAgMDAgMDAgMDAgMDAg MDAgMDAgMDAgMDAgMDAgMDAgMDAgMDAgMDAKMDFlMCAgIDAwIDAwIDAwIDAwIDAwIDAwIDAwIDAw IDAwIDAwIDAwIDAwIDAwIDAwIDAwIDAwCjAxZjAgICAwMCAwMCAwMCAwMCAwMCAwMCAwMCAwMCAw MCAwMCAwMCAwMCAwMCAwMCAwMCAwMApWRVNBOiA5IG1vZGUocykgZm91bmQKVkVTQTogdjMuMCwg MzI3MDRrIG1lbW9yeSwgZmxhZ3M6MHgxLCBtb2RlIHRhYmxlOjB4ZmZmZmZmODAwMDA2MjA0MCAo MTAwMDA0MCkKVkVTQTogSW50ZWwocilDYW50aWdhIEdyYXBoaWNzIENoaXAgQWNjZWxlcmF0ZWQg VkdBIEJJT1MKVkVTQTogSW50ZWwgQ29ycG9yYXRpb24gSW50ZWwocilDYW50aWdhIEdyYXBoaWNz IENvbnRyb2xsZXIgSGFyZHdhcmUgVmVyc2lvbiAwLjAKaW86IDxJL08+CmtiZDogbmV3IGFycmF5 IHNpemUgNAprYmQxIGF0IGtiZG11eDAKbWVtOiA8bWVtb3J5PgpudWxsOiA8bnVsbCBkZXZpY2Us IHplcm8gZGV2aWNlPgpuZnNsb2NrOiBwc2V1ZG8tZGV2aWNlCnJhbmRvbTogPGVudHJvcHkgc291 cmNlLCBTb2Z0d2FyZSwgWWFycm93PgpDUFUwOiBsb2NhbCBBUElDIGVycm9yIDB4ODAKYWNwaTA6 IDxERUxMIFFBMDkgICA+IG9uIG1vdGhlcmJvYXJkClBDSWU6IE1lbW9yeSBNYXBwZWQgY29uZmln dXJhdGlvbiBiYXNlIEAgMHhlMDAwMDAwMAppb2FwaWMwOiByb3V0aW5nIGludHBpbiA5IChJU0Eg SVJRIDkpIHRvIGxhcGljIDAgdmVjdG9yIDQ4CmFjcGkwOiBbTVBTQUZFXQphY3BpMDogW0lUSFJF QURdCkFjcGlPc0Rlcml2ZVBjaUlkOiBcXF9TQl8uUENJMC5IQlVTIC0+IGJ1cyAwIGRldiAwIGZ1 bmMgMApBY3BpT3NEZXJpdmVQY2lJZDogXFxfU0JfLlBDSTAuUlAwNC5QWENTIC0+IGJ1cyAwIGRl diAyOCBmdW5jIDMKYWNwaTA6IFBvd2VyIEJ1dHRvbiAoZml4ZWQpCkFjcGlPc0Rlcml2ZVBjaUlk OiBcXF9TQl8uUENJMC5MUENCLkxQQzAgLT4gYnVzIDAgZGV2IDMxIGZ1bmMgMApBY3BpT3NEZXJp dmVQY2lJZDogXFxfU0JfLlBDSTAuTFBDQi5MUEMxIC0+IGJ1cyAwIGRldiAzMSBmdW5jIDAKYWNw aV9ocGV0MDogdmVuZDogMHg4MDg2IHJldjogMHgxIG51bTogNCBoejogMTQzMTgxODAgb3B0czog bGVnYWN5X3JvdXRlIDY0LWJpdApUaW1lY291bnRlciAiSFBFVCIgZnJlcXVlbmN5IDE0MzE4MTgw IEh6IHF1YWxpdHkgOTAwCkFDUEkgdGltZXI6IDAvMyAwLzMgMS8xIDAvMyAwLzMgMS8yIDEvMiAw LzMgMC8zIDAvMyAtPiAzClRpbWVjb3VudGVyICJBQ1BJLXNhZmUiIGZyZXF1ZW5jeSAzNTc5NTQ1 IEh6IHF1YWxpdHkgODUwCmFjcGlfdGltZXIwOiA8MjQtYml0IHRpbWVyIGF0IDMuNTc5NTQ1TUh6 PiBwb3J0IDB4NDA4LTB4NDBiIG9uIGFjcGkwCmNwdTA6IDxBQ1BJIENQVT4gb24gYWNwaTAKQUNQ STogU1NEVCAweGJkOTFhYzIwIDAwMjY1ICh2MSAgUG1SZWYgIENwdTBJc3QgMDAwMDMwMDAgSU5U TCAyMDA1MDYyNCkKQUNQSTogRHluYW1pYyBPRU0gVGFibGUgTG9hZDoKQUNQSTogU1NEVCAwIDAw MjY1ICh2MSAgUG1SZWYgIENwdTBJc3QgMDAwMDMwMDAgSU5UTCAyMDA1MDYyNCkKQUNQSTogU1NE VCAweGJkOTE4NjIwIDAwNTc1ICh2MSAgUG1SZWYgIENwdTBDc3QgMDAwMDMwMDEgSU5UTCAyMDA1 MDYyNCkKQUNQSTogRHluYW1pYyBPRU0gVGFibGUgTG9hZDoKQUNQSTogU1NEVCAwIDAwNTc1ICh2 MSAgUG1SZWYgIENwdTBDc3QgMDAwMDMwMDEgSU5UTCAyMDA1MDYyNCkKY3B1MTogPEFDUEkgQ1BV PiBvbiBhY3BpMApBQ1BJOiBTU0RUIDB4YmQ5MTljYTAgMDAxQ0YgKHYxICBQbVJlZiAgICBBcElz dCAwMDAwMzAwMCBJTlRMIDIwMDUwNjI0KQpBQ1BJOiBEeW5hbWljIE9FTSBUYWJsZSBMb2FkOgpB Q1BJOiBTU0RUIDAgMDAxQ0YgKHYxICBQbVJlZiAgICBBcElzdCAwMDAwMzAwMCBJTlRMIDIwMDUw NjI0KQpBQ1BJOiBTU0RUIDB4YmQ5MTlmMjAgMDAwOEQgKHYxICBQbVJlZiAgICBBcENzdCAwMDAw MzAwMCBJTlRMIDIwMDUwNjI0KQpBQ1BJOiBEeW5hbWljIE9FTSBUYWJsZSBMb2FkOgpBQ1BJOiBT U0RUIDAgMDAwOEQgKHYxICBQbVJlZiAgICBBcENzdCAwMDAwMzAwMCBJTlRMIDIwMDUwNjI0KQph Y3BpX2VjMDogPEVtYmVkZGVkIENvbnRyb2xsZXI6IEdQRSAweDFjPiBwb3J0IDB4NjIsMHg2NiBv biBhY3BpMApwY2lfbGluazA6ICAgICAgICBJbmRleCAgSVJRICBSdGQgIFJlZiAgSVJRcwogIElu aXRpYWwgUHJvYmUgICAgICAgMCAgICA1ICAgTiAgICAgMCAgMSAzIDQgNSA2IDcgMTAgMTIgMTQg MTUKICBWYWxpZGF0aW9uICAgICAgICAgIDAgICAgNSAgIE4gICAgIDAgIDEgMyA0IDUgNiA3IDEw IDEyIDE0IDE1CiAgQWZ0ZXIgRGlzYWJsZSAgICAgICAwICAyNTUgICBOICAgICAwICAxIDMgNCA1 IDYgNyAxMCAxMiAxNCAxNQpwY2lfbGluazE6ICAgICAgICBJbmRleCAgSVJRICBSdGQgIFJlZiAg SVJRcwogIEluaXRpYWwgUHJvYmUgICAgICAgMCAgIDExICAgTiAgICAgMCAgMSAzIDQgNSA2IDcg MTEgMTIgMTQgMTUKICBWYWxpZGF0aW9uICAgICAgICAgIDAgICAxMSAgIE4gICAgIDAgIDEgMyA0 IDUgNiA3IDExIDEyIDE0IDE1CiAgQWZ0ZXIgRGlzYWJsZSAgICAgICAwICAyNTUgICBOICAgICAw ICAxIDMgNCA1IDYgNyAxMSAxMiAxNCAxNQpwY2lfbGluazI6ICAgICAgICBJbmRleCAgSVJRICBS dGQgIFJlZiAgSVJRcwogIEluaXRpYWwgUHJvYmUgICAgICAgMCAgIDEwICAgTiAgICAgMCAgMSAz IDQgNSA2IDcgMTAgMTIgMTQgMTUKICBWYWxpZGF0aW9uICAgICAgICAgIDAgICAxMCAgIE4gICAg IDAgIDEgMyA0IDUgNiA3IDEwIDEyIDE0IDE1CiAgQWZ0ZXIgRGlzYWJsZSAgICAgICAwICAyNTUg ICBOICAgICAwICAxIDMgNCA1IDYgNyAxMCAxMiAxNCAxNQpwY2lfbGluazM6ICAgICAgICBJbmRl eCAgSVJRICBSdGQgIFJlZiAgSVJRcwogIEluaXRpYWwgUHJvYmUgICAgICAgMCAgIDEwICAgTiAg ICAgMCAgMSAzIDQgNSA2IDcgMTEgMTIgMTQgMTUKICBWYWxpZGF0aW9uICAgICAgICAgIDAgIDI1 NSAgIE4gICAgIDAgIDEgMyA0IDUgNiA3IDExIDEyIDE0IDE1CiAgQWZ0ZXIgRGlzYWJsZSAgICAg ICAwICAyNTUgICBOICAgICAwICAxIDMgNCA1IDYgNyAxMSAxMiAxNCAxNQpwY2lfbGluazQ6ICAg ICAgICBJbmRleCAgSVJRICBSdGQgIFJlZiAgSVJRcwogIEluaXRpYWwgUHJvYmUgICAgICAgMCAg MjU1ICAgTiAgICAgMCAgMSAzIDQgNSA2IDcgMTAgMTIgMTQgMTUKICBWYWxpZGF0aW9uICAgICAg ICAgIDAgIDI1NSAgIE4gICAgIDAgIDEgMyA0IDUgNiA3IDEwIDEyIDE0IDE1CiAgQWZ0ZXIgRGlz YWJsZSAgICAgICAwICAyNTUgICBOICAgICAwICAxIDMgNCA1IDYgNyAxMCAxMiAxNCAxNQpwY2lf bGluazU6ICAgICAgICBJbmRleCAgSVJRICBSdGQgIFJlZiAgSVJRcwogIEluaXRpYWwgUHJvYmUg ICAgICAgMCAgIDExICAgTiAgICAgMCAgMSAzIDQgNSA2IDcgMTEgMTIgMTQgMTUKICBWYWxpZGF0 aW9uICAgICAgICAgIDAgICAxMSAgIE4gICAgIDAgIDEgMyA0IDUgNiA3IDExIDEyIDE0IDE1CiAg QWZ0ZXIgRGlzYWJsZSAgICAgICAwICAyNTUgICBOICAgICAwICAxIDMgNCA1IDYgNyAxMSAxMiAx NCAxNQpwY2lfbGluazY6ICAgICAgICBJbmRleCAgSVJRICBSdGQgIFJlZiAgSVJRcwogIEluaXRp YWwgUHJvYmUgICAgICAgMCAgIDEwICAgTiAgICAgMCAgMSAzIDQgNSA2IDcgMTAgMTIgMTQgMTUK ICBWYWxpZGF0aW9uICAgICAgICAgIDAgICAxMCAgIE4gICAgIDAgIDEgMyA0IDUgNiA3IDEwIDEy IDE0IDE1CiAgQWZ0ZXIgRGlzYWJsZSAgICAgICAwICAyNTUgICBOICAgICAwICAxIDMgNCA1IDYg NyAxMCAxMiAxNCAxNQpwY2lfbGluazc6ICAgICAgICBJbmRleCAgSVJRICBSdGQgIFJlZiAgSVJR cwogIEluaXRpYWwgUHJvYmUgICAgICAgMCAgICA3ICAgTiAgICAgMCAgMSAzIDQgNSA2IDcgMTEg MTIgMTQgMTUKICBWYWxpZGF0aW9uICAgICAgICAgIDAgICAgNyAgIE4gICAgIDAgIDEgMyA0IDUg NiA3IDExIDEyIDE0IDE1CiAgQWZ0ZXIgRGlzYWJsZSAgICAgICAwICAyNTUgICBOICAgICAwICAx IDMgNCA1IDYgNyAxMSAxMiAxNCAxNQpwY2liMDogPEFDUEkgSG9zdC1QQ0kgYnJpZGdlPiBwb3J0 IDB4Y2Y4LTB4Y2ZmIG9uIGFjcGkwCnBjaTA6IDxBQ1BJIFBDSSBidXM+IG9uIHBjaWIwCnBjaTA6 IGRvbWFpbj0wLCBwaHlzaWNhbCBidXM9MApmb3VuZC0+CXZlbmRvcj0weDgwODYsIGRldj0weDJh NDAsIHJldmlkPTB4MDcKCWRvbWFpbj0wLCBidXM9MCwgc2xvdD0wLCBmdW5jPTAKCWNsYXNzPTA2 LTAwLTAwLCBoZHJ0eXBlPTB4MDAsIG1mZGV2PTAKCWNtZHJlZz0weDAxMDYsIHN0YXRyZWc9MHgy MDkwLCBjYWNoZWxuc3o9MCAoZHdvcmRzKQoJbGF0dGltZXI9MHgwMCAoMCBucyksIG1pbmdudD0w eDAwICgwIG5zKSwgbWF4bGF0PTB4MDAgKDAgbnMpCmZvdW5kLT4JdmVuZG9yPTB4ODA4NiwgZGV2 PTB4MmE0MiwgcmV2aWQ9MHgwNwoJZG9tYWluPTAsIGJ1cz0wLCBzbG90PTIsIGZ1bmM9MAoJY2xh c3M9MDMtMDAtMDAsIGhkcnR5cGU9MHgwMCwgbWZkZXY9MQoJY21kcmVnPTB4MDAwNywgc3RhdHJl Zz0weDAwOTAsIGNhY2hlbG5zej0wIChkd29yZHMpCglsYXR0aW1lcj0weDAwICgwIG5zKSwgbWlu Z250PTB4MDAgKDAgbnMpLCBtYXhsYXQ9MHgwMCAoMCBucykKCWludHBpbj1hLCBpcnE9NQoJcG93 ZXJzcGVjIDMgIHN1cHBvcnRzIEQwIEQzICBjdXJyZW50IEQwCglNU0kgc3VwcG9ydHMgMSBtZXNz YWdlCgltYXBbMTBdOiB0eXBlIE1lbW9yeSwgcmFuZ2UgNjQsIGJhc2UgMHhmODAwMDAwMCwgc2l6 ZSAyMiwgZW5hYmxlZAoJbWFwWzE4XTogdHlwZSBQcmVmZXRjaGFibGUgTWVtb3J5LCByYW5nZSA2 NCwgYmFzZSAweGQwMDAwMDAwLCBzaXplIDI4LCBlbmFibGVkCgltYXBbMjBdOiB0eXBlIEkvTyBQ b3J0LCByYW5nZSAzMiwgYmFzZSAweDE4MDAsIHNpemUgIDMsIGVuYWJsZWQKcGNpYjA6IG1hdGNo ZWQgZW50cnkgZm9yIDAuMi5JTlRBCnBjaWIwOiBzbG90IDIgSU5UQSBoYXJkd2lyZWQgdG8gSVJR IDE2CmZvdW5kLT4JdmVuZG9yPTB4ODA4NiwgZGV2PTB4MmE0MywgcmV2aWQ9MHgwNwoJZG9tYWlu PTAsIGJ1cz0wLCBzbG90PTIsIGZ1bmM9MQoJY2xhc3M9MDMtODAtMDAsIGhkcnR5cGU9MHgwMCwg bWZkZXY9MQoJY21kcmVnPTB4MDAwNywgc3RhdHJlZz0weDAwOTAsIGNhY2hlbG5zej0wIChkd29y ZHMpCglsYXR0aW1lcj0weDAwICgwIG5zKSwgbWluZ250PTB4MDAgKDAgbnMpLCBtYXhsYXQ9MHgw MCAoMCBucykKCXBvd2Vyc3BlYyAzICBzdXBwb3J0cyBEMCBEMyAgY3VycmVudCBEMAoJbWFwWzEw XTogdHlwZSBNZW1vcnksIHJhbmdlIDY0LCBiYXNlIDB4Zjg0MDAwMDAsIHNpemUgMjAsIGVuYWJs ZWQKZm91bmQtPgl2ZW5kb3I9MHg4MDg2LCBkZXY9MHgyOTM3LCByZXZpZD0weDAzCglkb21haW49 MCwgYnVzPTAsIHNsb3Q9MjYsIGZ1bmM9MAoJY2xhc3M9MGMtMDMtMDAsIGhkcnR5cGU9MHgwMCwg bWZkZXY9MQoJY21kcmVnPTB4MDAwNSwgc3RhdHJlZz0weDAyOTAsIGNhY2hlbG5zej0wIChkd29y ZHMpCglsYXR0aW1lcj0weDAwICgwIG5zKSwgbWluZ250PTB4MDAgKDAgbnMpLCBtYXhsYXQ9MHgw MCAoMCBucykKCWludHBpbj1hLCBpcnE9NQoJbWFwWzIwXTogdHlwZSBJL08gUG9ydCwgcmFuZ2Ug MzIsIGJhc2UgMHgxODIwLCBzaXplICA1LCBlbmFibGVkCnBjaWIwOiBtYXRjaGVkIGVudHJ5IGZv ciAwLjI2LklOVEEKcGNpYjA6IHNsb3QgMjYgSU5UQSBoYXJkd2lyZWQgdG8gSVJRIDE2CmZvdW5k LT4JdmVuZG9yPTB4ODA4NiwgZGV2PTB4MjkzOCwgcmV2aWQ9MHgwMwoJZG9tYWluPTAsIGJ1cz0w LCBzbG90PTI2LCBmdW5jPTEKCWNsYXNzPTBjLTAzLTAwLCBoZHJ0eXBlPTB4MDAsIG1mZGV2PTAK CWNtZHJlZz0weDAwMDUsIHN0YXRyZWc9MHgwMjkwLCBjYWNoZWxuc3o9MCAoZHdvcmRzKQoJbGF0 dGltZXI9MHgwMCAoMCBucyksIG1pbmdudD0weDAwICgwIG5zKSwgbWF4bGF0PTB4MDAgKDAgbnMp CglpbnRwaW49YiwgaXJxPTExCgltYXBbMjBdOiB0eXBlIEkvTyBQb3J0LCByYW5nZSAzMiwgYmFz ZSAweDE4NDAsIHNpemUgIDUsIGVuYWJsZWQKcGNpYjA6IG1hdGNoZWQgZW50cnkgZm9yIDAuMjYu SU5UQgpwY2liMDogc2xvdCAyNiBJTlRCIGhhcmR3aXJlZCB0byBJUlEgMjEKZm91bmQtPgl2ZW5k b3I9MHg4MDg2LCBkZXY9MHgyOTM5LCByZXZpZD0weDAzCglkb21haW49MCwgYnVzPTAsIHNsb3Q9 MjYsIGZ1bmM9MgoJY2xhc3M9MGMtMDMtMDAsIGhkcnR5cGU9MHgwMCwgbWZkZXY9MAoJY21kcmVn PTB4MDAwNSwgc3RhdHJlZz0weDAyOTAsIGNhY2hlbG5zej0wIChkd29yZHMpCglsYXR0aW1lcj0w eDAwICgwIG5zKSwgbWluZ250PTB4MDAgKDAgbnMpLCBtYXhsYXQ9MHgwMCAoMCBucykKCWludHBp bj1jLCBpcnE9MTAKCW1hcFsyMF06IHR5cGUgSS9PIFBvcnQsIHJhbmdlIDMyLCBiYXNlIDB4MTg2 MCwgc2l6ZSAgNSwgZW5hYmxlZApwY2liMDogbWF0Y2hlZCBlbnRyeSBmb3IgMC4yNi5JTlRDCnBj aWIwOiBzbG90IDI2IElOVEMgaGFyZHdpcmVkIHRvIElSUSAxOQpmb3VuZC0+CXZlbmRvcj0weDgw ODYsIGRldj0weDI5M2MsIHJldmlkPTB4MDMKCWRvbWFpbj0wLCBidXM9MCwgc2xvdD0yNiwgZnVu Yz03CgljbGFzcz0wYy0wMy0yMCwgaGRydHlwZT0weDAwLCBtZmRldj0wCgljbWRyZWc9MHgwMTA2 LCBzdGF0cmVnPTB4MDI5MCwgY2FjaGVsbnN6PTAgKGR3b3JkcykKCWxhdHRpbWVyPTB4MDAgKDAg bnMpLCBtaW5nbnQ9MHgwMCAoMCBucyksIG1heGxhdD0weDAwICgwIG5zKQoJaW50cGluPWMsIGly cT0xMAoJcG93ZXJzcGVjIDIgIHN1cHBvcnRzIEQwIEQzICBjdXJyZW50IEQwCgltYXBbMTBdOiB0 eXBlIE1lbW9yeSwgcmFuZ2UgMzIsIGJhc2UgMHhmODgwNDgwMCwgc2l6ZSAxMCwgZW5hYmxlZApw Y2liMDogbWF0Y2hlZCBlbnRyeSBmb3IgMC4yNi5JTlRDCnBjaWIwOiBzbG90IDI2IElOVEMgaGFy ZHdpcmVkIHRvIElSUSAxOQpmb3VuZC0+CXZlbmRvcj0weDgwODYsIGRldj0weDI5M2UsIHJldmlk PTB4MDMKCWRvbWFpbj0wLCBidXM9MCwgc2xvdD0yNywgZnVuYz0wCgljbGFzcz0wNC0wMy0wMCwg aGRydHlwZT0weDAwLCBtZmRldj0wCgljbWRyZWc9MHgwMTA2LCBzdGF0cmVnPTB4MDAxMCwgY2Fj aGVsbnN6PTE2IChkd29yZHMpCglsYXR0aW1lcj0weDAwICgwIG5zKSwgbWluZ250PTB4MDAgKDAg bnMpLCBtYXhsYXQ9MHgwMCAoMCBucykKCWludHBpbj1hLCBpcnE9MTAKCXBvd2Vyc3BlYyAyICBz dXBwb3J0cyBEMCBEMyAgY3VycmVudCBEMAoJTVNJIHN1cHBvcnRzIDEgbWVzc2FnZSwgNjQgYml0 CgltYXBbMTBdOiB0eXBlIE1lbW9yeSwgcmFuZ2UgNjQsIGJhc2UgMHhmODYwMDAwMCwgc2l6ZSAx NCwgZW5hYmxlZApwY2liMDogbWF0Y2hlZCBlbnRyeSBmb3IgMC4yNy5JTlRBCnBjaWIwOiBzbG90 IDI3IElOVEEgaGFyZHdpcmVkIHRvIElSUSAyMgpmb3VuZC0+CXZlbmRvcj0weDgwODYsIGRldj0w eDI5NDAsIHJldmlkPTB4MDMKCWRvbWFpbj0wLCBidXM9MCwgc2xvdD0yOCwgZnVuYz0wCgljbGFz cz0wNi0wNC0wMCwgaGRydHlwZT0weDAxLCBtZmRldj0xCgljbWRyZWc9MHgwMTA3LCBzdGF0cmVn PTB4MDAxMCwgY2FjaGVsbnN6PTE2IChkd29yZHMpCglsYXR0aW1lcj0weDAwICgwIG5zKSwgbWlu Z250PTB4MDQgKDEwMDAgbnMpLCBtYXhsYXQ9MHgwMCAoMCBucykKCWludHBpbj1hLCBpcnE9MTEK CXBvd2Vyc3BlYyAyICBzdXBwb3J0cyBEMCBEMyAgY3VycmVudCBEMAoJTVNJIHN1cHBvcnRzIDEg bWVzc2FnZQpwY2liMDogbWF0Y2hlZCBlbnRyeSBmb3IgMC4yOC5JTlRBCnBjaWIwOiBzbG90IDI4 IElOVEEgaGFyZHdpcmVkIHRvIElSUSAxNwpmb3VuZC0+CXZlbmRvcj0weDgwODYsIGRldj0weDI5 NDIsIHJldmlkPTB4MDMKCWRvbWFpbj0wLCBidXM9MCwgc2xvdD0yOCwgZnVuYz0xCgljbGFzcz0w Ni0wNC0wMCwgaGRydHlwZT0weDAxLCBtZmRldj0xCgljbWRyZWc9MHgwMTA3LCBzdGF0cmVnPTB4 MDAxMCwgY2FjaGVsbnN6PTE2IChkd29yZHMpCglsYXR0aW1lcj0weDAwICgwIG5zKSwgbWluZ250 PTB4MDQgKDEwMDAgbnMpLCBtYXhsYXQ9MHgwMCAoMCBucykKCWludHBpbj1iLCBpcnE9NQoJcG93 ZXJzcGVjIDIgIHN1cHBvcnRzIEQwIEQzICBjdXJyZW50IEQwCglNU0kgc3VwcG9ydHMgMSBtZXNz YWdlCnBjaWIwOiBtYXRjaGVkIGVudHJ5IGZvciAwLjI4LklOVEIKcGNpYjA6IHNsb3QgMjggSU5U QiBoYXJkd2lyZWQgdG8gSVJRIDE2CmZvdW5kLT4JdmVuZG9yPTB4ODA4NiwgZGV2PTB4Mjk0YSwg cmV2aWQ9MHgwMwoJZG9tYWluPTAsIGJ1cz0wLCBzbG90PTI4LCBmdW5jPTUKCWNsYXNzPTA2LTA0 LTAwLCBoZHJ0eXBlPTB4MDEsIG1mZGV2PTEKCWNtZHJlZz0weDAxMDcsIHN0YXRyZWc9MHgwMDEw LCBjYWNoZWxuc3o9MTYgKGR3b3JkcykKCWxhdHRpbWVyPTB4MDAgKDAgbnMpLCBtaW5nbnQ9MHgw NCAoMTAwMCBucyksIG1heGxhdD0weDAwICgwIG5zKQoJaW50cGluPWIsIGlycT01Cglwb3dlcnNw ZWMgMiAgc3VwcG9ydHMgRDAgRDMgIGN1cnJlbnQgRDAKCU1TSSBzdXBwb3J0cyAxIG1lc3NhZ2UK cGNpYjA6IG1hdGNoZWQgZW50cnkgZm9yIDAuMjguSU5UQgpwY2liMDogc2xvdCAyOCBJTlRCIGhh cmR3aXJlZCB0byBJUlEgMTYKZm91bmQtPgl2ZW5kb3I9MHg4MDg2LCBkZXY9MHgyOTM0LCByZXZp ZD0weDAzCglkb21haW49MCwgYnVzPTAsIHNsb3Q9MjksIGZ1bmM9MAoJY2xhc3M9MGMtMDMtMDAs IGhkcnR5cGU9MHgwMCwgbWZkZXY9MQoJY21kcmVnPTB4MDAwNSwgc3RhdHJlZz0weDAyOTAsIGNh Y2hlbG5zej0wIChkd29yZHMpCglsYXR0aW1lcj0weDAwICgwIG5zKSwgbWluZ250PTB4MDAgKDAg bnMpLCBtYXhsYXQ9MHgwMCAoMCBucykKCWludHBpbj1hLCBpcnE9NwoJbWFwWzIwXTogdHlwZSBJ L08gUG9ydCwgcmFuZ2UgMzIsIGJhc2UgMHgxODgwLCBzaXplICA1LCBlbmFibGVkCnBjaWIwOiBt YXRjaGVkIGVudHJ5IGZvciAwLjI5LklOVEEKcGNpYjA6IHNsb3QgMjkgSU5UQSBoYXJkd2lyZWQg dG8gSVJRIDIzCmZvdW5kLT4JdmVuZG9yPTB4ODA4NiwgZGV2PTB4MjkzNSwgcmV2aWQ9MHgwMwoJ ZG9tYWluPTAsIGJ1cz0wLCBzbG90PTI5LCBmdW5jPTEKCWNsYXNzPTBjLTAzLTAwLCBoZHJ0eXBl PTB4MDAsIG1mZGV2PTAKCWNtZHJlZz0weDAwMDUsIHN0YXRyZWc9MHgwMjkwLCBjYWNoZWxuc3o9 MCAoZHdvcmRzKQoJbGF0dGltZXI9MHgwMCAoMCBucyksIG1pbmdudD0weDAwICgwIG5zKSwgbWF4 bGF0PTB4MDAgKDAgbnMpCglpbnRwaW49YiwgaXJxPTEwCgltYXBbMjBdOiB0eXBlIEkvTyBQb3J0 LCByYW5nZSAzMiwgYmFzZSAweDE4YTAsIHNpemUgIDUsIGVuYWJsZWQKcGNpYjA6IG1hdGNoZWQg ZW50cnkgZm9yIDAuMjkuSU5UQgpwY2liMDogc2xvdCAyOSBJTlRCIGhhcmR3aXJlZCB0byBJUlEg MTkKZm91bmQtPgl2ZW5kb3I9MHg4MDg2LCBkZXY9MHgyOTM2LCByZXZpZD0weDAzCglkb21haW49 MCwgYnVzPTAsIHNsb3Q9MjksIGZ1bmM9MgoJY2xhc3M9MGMtMDMtMDAsIGhkcnR5cGU9MHgwMCwg bWZkZXY9MAoJY21kcmVnPTB4MDAwNSwgc3RhdHJlZz0weDAyOTAsIGNhY2hlbG5zej0wIChkd29y ZHMpCglsYXR0aW1lcj0weDAwICgwIG5zKSwgbWluZ250PTB4MDAgKDAgbnMpLCBtYXhsYXQ9MHgw MCAoMCBucykKCWludHBpbj1jLCBpcnE9MTAKCW1hcFsyMF06IHR5cGUgSS9PIFBvcnQsIHJhbmdl IDMyLCBiYXNlIDB4MThjMCwgc2l6ZSAgNSwgZW5hYmxlZApwY2liMDogbWF0Y2hlZCBlbnRyeSBm b3IgMC4yOS5JTlRDCnBjaWIwOiBzbG90IDI5IElOVEMgaGFyZHdpcmVkIHRvIElSUSAxOApmb3Vu ZC0+CXZlbmRvcj0weDgwODYsIGRldj0weDI5M2EsIHJldmlkPTB4MDMKCWRvbWFpbj0wLCBidXM9 MCwgc2xvdD0yOSwgZnVuYz03CgljbGFzcz0wYy0wMy0yMCwgaGRydHlwZT0weDAwLCBtZmRldj0w CgljbWRyZWc9MHgwMTA2LCBzdGF0cmVnPTB4MDI5MCwgY2FjaGVsbnN6PTAgKGR3b3JkcykKCWxh dHRpbWVyPTB4MDAgKDAgbnMpLCBtaW5nbnQ9MHgwMCAoMCBucyksIG1heGxhdD0weDAwICgwIG5z KQoJaW50cGluPWEsIGlycT03Cglwb3dlcnNwZWMgMiAgc3VwcG9ydHMgRDAgRDMgIGN1cnJlbnQg RDAKCW1hcFsxMF06IHR5cGUgTWVtb3J5LCByYW5nZSAzMiwgYmFzZSAweGY4ODA0YzAwLCBzaXpl IDEwLCBlbmFibGVkCnBjaWIwOiBtYXRjaGVkIGVudHJ5IGZvciAwLjI5LklOVEEKcGNpYjA6IHNs b3QgMjkgSU5UQSBoYXJkd2lyZWQgdG8gSVJRIDIzCmZvdW5kLT4JdmVuZG9yPTB4ODA4NiwgZGV2 PTB4MjQ0OCwgcmV2aWQ9MHg5MwoJZG9tYWluPTAsIGJ1cz0wLCBzbG90PTMwLCBmdW5jPTAKCWNs YXNzPTA2LTA0LTAxLCBoZHJ0eXBlPTB4MDEsIG1mZGV2PTAKCWNtZHJlZz0weDAxMDcsIHN0YXRy ZWc9MHgwMDEwLCBjYWNoZWxuc3o9MCAoZHdvcmRzKQoJbGF0dGltZXI9MHgwMCAoMCBucyksIG1p bmdudD0weDA0ICgxMDAwIG5zKSwgbWF4bGF0PTB4MDAgKDAgbnMpCmZvdW5kLT4JdmVuZG9yPTB4 ODA4NiwgZGV2PTB4MjkxNywgcmV2aWQ9MHgwMwoJZG9tYWluPTAsIGJ1cz0wLCBzbG90PTMxLCBm dW5jPTAKCWNsYXNzPTA2LTAxLTAwLCBoZHJ0eXBlPTB4MDAsIG1mZGV2PTEKCWNtZHJlZz0weDAw MDcsIHN0YXRyZWc9MHgwMjEwLCBjYWNoZWxuc3o9MCAoZHdvcmRzKQoJbGF0dGltZXI9MHgwMCAo MCBucyksIG1pbmdudD0weDAwICgwIG5zKSwgbWF4bGF0PTB4MDAgKDAgbnMpCmZvdW5kLT4JdmVu ZG9yPTB4ODA4NiwgZGV2PTB4MjkyOSwgcmV2aWQ9MHgwMwoJZG9tYWluPTAsIGJ1cz0wLCBzbG90 PTMxLCBmdW5jPTIKCWNsYXNzPTAxLTA2LTAxLCBoZHJ0eXBlPTB4MDAsIG1mZGV2PTAKCWNtZHJl Zz0weDAwMDcsIHN0YXRyZWc9MHgwMmIwLCBjYWNoZWxuc3o9MCAoZHdvcmRzKQoJbGF0dGltZXI9 MHgwMCAoMCBucyksIG1pbmdudD0weDAwICgwIG5zKSwgbWF4bGF0PTB4MDAgKDAgbnMpCglpbnRw aW49YiwgaXJxPTEwCglwb3dlcnNwZWMgMyAgc3VwcG9ydHMgRDAgRDMgIGN1cnJlbnQgRDAKCU1T SSBzdXBwb3J0cyAxNiBtZXNzYWdlcwoJbWFwWzEwXTogdHlwZSBJL08gUG9ydCwgcmFuZ2UgMzIs IGJhc2UgMHgxODE4LCBzaXplICAzLCBlbmFibGVkCgltYXBbMTRdOiB0eXBlIEkvTyBQb3J0LCBy YW5nZSAzMiwgYmFzZSAweDE4MGMsIHNpemUgIDIsIGVuYWJsZWQKCW1hcFsxOF06IHR5cGUgSS9P IFBvcnQsIHJhbmdlIDMyLCBiYXNlIDB4MTgxMCwgc2l6ZSAgMywgZW5hYmxlZAoJbWFwWzFjXTog dHlwZSBJL08gUG9ydCwgcmFuZ2UgMzIsIGJhc2UgMHgxODA4LCBzaXplICAyLCBlbmFibGVkCglt YXBbMjBdOiB0eXBlIEkvTyBQb3J0LCByYW5nZSAzMiwgYmFzZSAweDE4ZTAsIHNpemUgIDUsIGVu YWJsZWQKCW1hcFsyNF06IHR5cGUgTWVtb3J5LCByYW5nZSAzMiwgYmFzZSAweGY4ODA0MDAwLCBz aXplIDExLCBlbmFibGVkCnBjaWIwOiBtYXRjaGVkIGVudHJ5IGZvciAwLjMxLklOVEIKcGNpYjA6 IHNsb3QgMzEgSU5UQiBoYXJkd2lyZWQgdG8gSVJRIDE5CmZvdW5kLT4JdmVuZG9yPTB4ODA4Niwg ZGV2PTB4MjkzMCwgcmV2aWQ9MHgwMwoJZG9tYWluPTAsIGJ1cz0wLCBzbG90PTMxLCBmdW5jPTMK CWNsYXNzPTBjLTA1LTAwLCBoZHJ0eXBlPTB4MDAsIG1mZGV2PTAKCWNtZHJlZz0weDAxMDMsIHN0 YXRyZWc9MHgwMjgwLCBjYWNoZWxuc3o9MCAoZHdvcmRzKQoJbGF0dGltZXI9MHgwMCAoMCBucyks IG1pbmdudD0weDAwICgwIG5zKSwgbWF4bGF0PTB4MDAgKDAgbnMpCglpbnRwaW49YywgaXJxPTEw CgltYXBbMTBdOiB0eXBlIE1lbW9yeSwgcmFuZ2UgNjQsIGJhc2UgMCwgc2l6ZSAgOCwgZW5hYmxl ZAoJbWFwWzIwXTogdHlwZSBJL08gUG9ydCwgcmFuZ2UgMzIsIGJhc2UgMHgxYzAwLCBzaXplICA1 LCBlbmFibGVkCnBjaWIwOiBtYXRjaGVkIGVudHJ5IGZvciAwLjMxLklOVEMKcGNpYjA6IHNsb3Qg MzEgSU5UQyBoYXJkd2lyZWQgdG8gSVJRIDE5CnZnYXBjaTA6IDxWR0EtY29tcGF0aWJsZSBkaXNw bGF5PiBwb3J0IDB4MTgwMC0weDE4MDcgbWVtIDB4ZjgwMDAwMDAtMHhmODNmZmZmZiwweGQwMDAw MDAwLTB4ZGZmZmZmZmYgaXJxIDE2IGF0IGRldmljZSAyLjAgb24gcGNpMAphY3BpX3ZpZGVvMDog PEFDUEkgdmlkZW8gZXh0ZW5zaW9uPiBvbiB2Z2FwY2kwCmZvdW5kIFZHQSBDUlQgb3IgVkVTQSBD b21wYXRpYmxlIEFuYWxvZyBNb25pdG9yKDEwMCksIGlkeCMwLCBwb3J0IzAsIGhlYWQgIzAKZm91 bmQgSW50ZXJuYWwvSW50ZWdyYXRlZCBEaWdpdGFsIEZsYXQgUGFuZWwoNDAwKSwgaWR4IzAsIHBv cnQjMCwgaGVhZCAjMApmb3VuZCBFeHRlcm5hbCBEaWdpdGFsIE1vbml0b3IoMzAwKSwgaWR4IzAs IHBvcnQjMCwgaGVhZCAjMApmb3VuZCBFeHRlcm5hbCBEaWdpdGFsIE1vbml0b3IoMzAxKSwgaWR4 IzEsIHBvcnQjMCwgaGVhZCAjMApmb3VuZCBFeHRlcm5hbCBEaWdpdGFsIE1vbml0b3IoMzAyKSwg aWR4IzIsIHBvcnQjMCwgaGVhZCAjMAphZ3AwOiA8SW50ZWwgR000NSBTVkdBIGNvbnRyb2xsZXI+ IG9uIHZnYXBjaTAKYWdwMDogYXBlcnR1cmUgc2l6ZSBpcyAyNTZNLCBkZXRlY3RlZCAzMjc2NGsg c3RvbGVuIG1lbW9yeQpkcm0wOiA8TW9iaWxlIEludGVsXE0tQlxNLS4gR000NSBFeHByZXNzIENo aXBzZXQ+IG9uIHZnYXBjaTAKdmdhcGNpMDogYXR0ZW1wdGluZyB0byBhbGxvY2F0ZSAxIE1TSSB2 ZWN0b3JzICgxIHN1cHBvcnRlZCkKbXNpOiByb3V0aW5nIE1TSSBJUlEgMjU2IHRvIGxvY2FsIEFQ SUMgMCB2ZWN0b3IgNDkKdmdhcGNpMDogdXNpbmcgSVJRIDI1NiBmb3IgTVNJCmluZm86IFtkcm1d IE1TSSBlbmFibGVkIDEgbWVzc2FnZShzKQp2Z2FwY2kwOiBjaGlsZCBkcm0wIHJlcXVlc3RlZCBw Y2lfZW5hYmxlX2J1c21hc3RlcgppbmZvOiBbZHJtXSBBR1AgYXQgMHhkMDAwMDAwMCAyNTZNQgpp bmZvOiBbZHJtXSBJbml0aWFsaXplZCBpOTE1IDEuNi4wIDIwMDgwNzMwCnZnYXBjaTE6IDxWR0Et Y29tcGF0aWJsZSBkaXNwbGF5PiBtZW0gMHhmODQwMDAwMC0weGY4NGZmZmZmIGF0IGRldmljZSAy LjEgb24gcGNpMAp1aGNpMDogPEludGVsIDgyODAxSSAoSUNIOSkgVVNCIGNvbnRyb2xsZXI+IHBv cnQgMHgxODIwLTB4MTgzZiBpcnEgMTYgYXQgZGV2aWNlIDI2LjAgb24gcGNpMAppb2FwaWMwOiBy b3V0aW5nIGludHBpbiAxNiAoUENJIElSUSAxNikgdG8gbGFwaWMgMCB2ZWN0b3IgNTAKdWhjaTA6 IFtNUFNBRkVdCnVoY2kwOiBbSVRIUkVBRF0KdXNidXMwOiA8SW50ZWwgODI4MDFJIChJQ0g5KSBV U0IgY29udHJvbGxlcj4gb24gdWhjaTAKdWhjaTE6IDxJbnRlbCA4MjgwMUkgKElDSDkpIFVTQiBj b250cm9sbGVyPiBwb3J0IDB4MTg0MC0weDE4NWYgaXJxIDIxIGF0IGRldmljZSAyNi4xIG9uIHBj aTAKaW9hcGljMDogcm91dGluZyBpbnRwaW4gMjEgKFBDSSBJUlEgMjEpIHRvIGxhcGljIDAgdmVj dG9yIDUxCnVoY2kxOiBbTVBTQUZFXQp1aGNpMTogW0lUSFJFQURdCnVzYnVzMTogPEludGVsIDgy ODAxSSAoSUNIOSkgVVNCIGNvbnRyb2xsZXI+IG9uIHVoY2kxCnVoY2kyOiA8SW50ZWwgODI4MDFJ IChJQ0g5KSBVU0IgY29udHJvbGxlcj4gcG9ydCAweDE4NjAtMHgxODdmIGlycSAxOSBhdCBkZXZp Y2UgMjYuMiBvbiBwY2kwCmlvYXBpYzA6IHJvdXRpbmcgaW50cGluIDE5IChQQ0kgSVJRIDE5KSB0 byBsYXBpYyAwIHZlY3RvciA1Mgp1aGNpMjogW01QU0FGRV0KdWhjaTI6IFtJVEhSRUFEXQp1c2J1 czI6IDxJbnRlbCA4MjgwMUkgKElDSDkpIFVTQiBjb250cm9sbGVyPiBvbiB1aGNpMgplaGNpMDog PEludGVsIDgyODAxSSAoSUNIOSkgVVNCIDIuMCBjb250cm9sbGVyPiBtZW0gMHhmODgwNDgwMC0w eGY4ODA0YmZmIGlycSAxOSBhdCBkZXZpY2UgMjYuNyBvbiBwY2kwCmVoY2kwOiBbTVBTQUZFXQpl aGNpMDogW0lUSFJFQURdCnVzYnVzMzogRUhDSSB2ZXJzaW9uIDEuMAp1c2J1czM6IDxJbnRlbCA4 MjgwMUkgKElDSDkpIFVTQiAyLjAgY29udHJvbGxlcj4gb24gZWhjaTAKaGRhYzA6IDxJbnRlbCA4 MjgwMUkgSGlnaCBEZWZpbml0aW9uIEF1ZGlvIENvbnRyb2xsZXI+IG1lbSAweGY4NjAwMDAwLTB4 Zjg2MDNmZmYgaXJxIDIyIGF0IGRldmljZSAyNy4wIG9uIHBjaTAKaGRhYzA6IEhEQSBEcml2ZXIg UmV2aXNpb246IDIwMTAwMjI2XzAxNDIKaGRhYzA6IGF0dGVtcHRpbmcgdG8gYWxsb2NhdGUgMSBN U0kgdmVjdG9ycyAoMSBzdXBwb3J0ZWQpCm1zaTogcm91dGluZyBNU0kgSVJRIDI1NyB0byBsb2Nh bCBBUElDIDAgdmVjdG9yIDUzCmhkYWMwOiB1c2luZyBJUlEgMjU3IGZvciBNU0kKaGRhYzA6IFtN UFNBRkVdCmhkYWMwOiBbSVRIUkVBRF0KaGRhYzA6IENhcHM6IE9TUyA0LCBJU1MgNCwgQlNTIDAs IE5TRE8gMSwgNjRiaXQsIENPUkIgMjU2LCBSSVJCIDI1NgpwY2liMTogPEFDUEkgUENJLVBDSSBi cmlkZ2U+IGlycSAxNyBhdCBkZXZpY2UgMjguMCBvbiBwY2kwCnBjaWIxOiAgIGRvbWFpbiAgICAg ICAgICAgIDAKcGNpYjE6ICAgc2Vjb25kYXJ5IGJ1cyAgICAgMgpwY2liMTogICBzdWJvcmRpbmF0 ZSBidXMgICAzCnBjaWIxOiAgIEkvTyBkZWNvZGUgICAgICAgIDB4MjAwMC0weDJmZmYKcGNpYjE6 ICAgbWVtb3J5IGRlY29kZSAgICAgMHhmNDAwMDAwMC0weGY1ZmZmZmZmCnBjaWIxOiAgIHByZWZl dGNoZWQgZGVjb2RlIDB4ZjAwMDAwMDAtMHhmMWZmZmZmZgpwY2kyOiA8QUNQSSBQQ0kgYnVzPiBv biBwY2liMQpwY2kyOiBkb21haW49MCwgcGh5c2ljYWwgYnVzPTIKcGNpYjI6IDxBQ1BJIFBDSS1Q Q0kgYnJpZGdlPiBpcnEgMTYgYXQgZGV2aWNlIDI4LjEgb24gcGNpMApwY2liMjogICBkb21haW4g ICAgICAgICAgICAwCnBjaWIyOiAgIHNlY29uZGFyeSBidXMgICAgIDQKcGNpYjI6ICAgc3Vib3Jk aW5hdGUgYnVzICAgNQpwY2liMjogICBJL08gZGVjb2RlICAgICAgICAweDMwMDAtMHgzZmZmCnBj aWIyOiAgIG1lbW9yeSBkZWNvZGUgICAgIDB4ZjYwMDAwMDAtMHhmN2ZmZmZmZgpwY2liMjogICBw cmVmZXRjaGVkIGRlY29kZSAweGYyMDAwMDAwLTB4ZjNmZmZmZmYKcGNpNDogPEFDUEkgUENJIGJ1 cz4gb24gcGNpYjIKcGNpNDogZG9tYWluPTAsIHBoeXNpY2FsIGJ1cz00CmZvdW5kLT4JdmVuZG9y PTB4ODA4NiwgZGV2PTB4NDIzNSwgcmV2aWQ9MHgwMAoJZG9tYWluPTAsIGJ1cz00LCBzbG90PTAs IGZ1bmM9MAoJY2xhc3M9MDItODAtMDAsIGhkcnR5cGU9MHgwMCwgbWZkZXY9MAoJY21kcmVnPTB4 MDEwNiwgc3RhdHJlZz0weDAwMTAsIGNhY2hlbG5zej0xNiAoZHdvcmRzKQoJbGF0dGltZXI9MHgw MCAoMCBucyksIG1pbmdudD0weDAwICgwIG5zKSwgbWF4bGF0PTB4MDAgKDAgbnMpCglpbnRwaW49 YSwgaXJxPTExCglwb3dlcnNwZWMgMyAgc3VwcG9ydHMgRDAgRDMgIGN1cnJlbnQgRDAKCU1TSSBz dXBwb3J0cyAxIG1lc3NhZ2UsIDY0IGJpdAoJbWFwWzEwXTogdHlwZSBNZW1vcnksIHJhbmdlIDY0 LCBiYXNlIDB4ZjYwMDAwMDAsIHNpemUgMTMsIGVuYWJsZWQKcGNpYjI6IHJlcXVlc3RlZCBtZW1v cnkgcmFuZ2UgMHhmNjAwMDAwMC0weGY2MDAxZmZmOiBnb29kCnBjaWIyOiBtYXRjaGVkIGVudHJ5 IGZvciA0LjAuSU5UQQpwY2liMjogc2xvdCAwIElOVEEgaGFyZHdpcmVkIHRvIElSUSAxNwppd24w OiA8SW50ZWwoUikgUFJPL1dpcmVsZXNzIDUzMDA+IG1lbSAweGY2MDAwMDAwLTB4ZjYwMDFmZmYg aXJxIDE3IGF0IGRldmljZSAwLjAgb24gcGNpNAppd24wOiBhdHRlbXB0aW5nIHRvIGFsbG9jYXRl IDEgTVNJIHZlY3RvcnMgKDEgc3VwcG9ydGVkKQptc2k6IHJvdXRpbmcgTVNJIElSUSAyNTggdG8g bG9jYWwgQVBJQyAwIHZlY3RvciA1NAppd24wOiB1c2luZyBJUlEgMjU4IGZvciBNU0kKaXduMDog TUlNTyAzVDNSLCBNb1csIGFkZHJlc3MgMDA6MjE6NmE6Nzc6Y2Q6OTIKaXduMDogW01QU0FGRV0K aXduMDogW0lUSFJFQURdCml3bjA6IDExYSByYXRlczogNk1icHMgOU1icHMgMTJNYnBzIDE4TWJw cyAyNE1icHMgMzZNYnBzIDQ4TWJwcyA1NE1icHMKaXduMDogMTFiIHJhdGVzOiAxTWJwcyAyTWJw cyA1LjVNYnBzIDExTWJwcwppd24wOiAxMWcgcmF0ZXM6IDFNYnBzIDJNYnBzIDUuNU1icHMgMTFN YnBzIDZNYnBzIDlNYnBzIDEyTWJwcyAxOE1icHMgMjRNYnBzIDM2TWJwcyA0OE1icHMgNTRNYnBz CnBjaWIzOiA8QUNQSSBQQ0ktUENJIGJyaWRnZT4gaXJxIDE2IGF0IGRldmljZSAyOC41IG9uIHBj aTAKcGNpYjM6ICAgZG9tYWluICAgICAgICAgICAgMApwY2liMzogICBzZWNvbmRhcnkgYnVzICAg ICA2CnBjaWIzOiAgIHN1Ym9yZGluYXRlIGJ1cyAgIDYKcGNpYjM6ICAgSS9PIGRlY29kZSAgICAg ICAgMHhmMDAwLTB4ZmZmCnBjaWIzOiAgIG1lbW9yeSBkZWNvZGUgICAgIDB4Zjg1MDAwMDAtMHhm ODVmZmZmZgpwY2liMzogICBubyBwcmVmZXRjaGVkIGRlY29kZQpwY2k2OiA8QUNQSSBQQ0kgYnVz PiBvbiBwY2liMwpwY2k2OiBkb21haW49MCwgcGh5c2ljYWwgYnVzPTYKZm91bmQtPgl2ZW5kb3I9 MHgxNGU0LCBkZXY9MHgxNjk4LCByZXZpZD0weDEwCglkb21haW49MCwgYnVzPTYsIHNsb3Q9MCwg ZnVuYz0wCgljbGFzcz0wMi0wMC0wMCwgaGRydHlwZT0weDAwLCBtZmRldj0wCgljbWRyZWc9MHgw MTA2LCBzdGF0cmVnPTB4MDAxMCwgY2FjaGVsbnN6PTE2IChkd29yZHMpCglsYXR0aW1lcj0weDAw ICgwIG5zKSwgbWluZ250PTB4MDAgKDAgbnMpLCBtYXhsYXQ9MHgwMCAoMCBucykKCWludHBpbj1h LCBpcnE9MTEKCXBvd2Vyc3BlYyAzICBzdXBwb3J0cyBEMCBEMyAgY3VycmVudCBEMAoJTVNJIHN1 cHBvcnRzIDEgbWVzc2FnZSwgNjQgYml0CgltYXBbMTBdOiB0eXBlIE1lbW9yeSwgcmFuZ2UgNjQs IGJhc2UgMHhmODUwMDAwMCwgc2l6ZSAxNiwgZW5hYmxlZApwY2liMzogcmVxdWVzdGVkIG1lbW9y eSByYW5nZSAweGY4NTAwMDAwLTB4Zjg1MGZmZmY6IGdvb2QKcGNpYjM6IG1hdGNoZWQgZW50cnkg Zm9yIDYuMC5JTlRBCnBjaWIzOiBzbG90IDAgSU5UQSBoYXJkd2lyZWQgdG8gSVJRIDE3CmJnZTA6 IDxCcm9hZGNvbSBOZXRMaW5rIEdpZ2FiaXQgRXRoZXJuZXQgQ29udHJvbGxlciAgICAsIEFTSUMg cmV2LiAweDU3ODQxMDA+IG1lbSAweGY4NTAwMDAwLTB4Zjg1MGZmZmYgaXJxIDE3IGF0IGRldmlj ZSAwLjAgb24gcGNpNgpiZ2UwOiBhdHRlbXB0aW5nIHRvIGFsbG9jYXRlIDEgTVNJIHZlY3RvcnMg KDEgc3VwcG9ydGVkKQptc2k6IHJvdXRpbmcgTVNJIElSUSAyNTkgdG8gbG9jYWwgQVBJQyAwIHZl Y3RvciA1NQpiZ2UwOiB1c2luZyBJUlEgMjU5IGZvciBNU0kKYmdlMDogQ0hJUCBJRCAweDA1Nzg0 MTAwOyBBU0lDIFJFViAweDU3ODQ7IENISVAgUkVWIDB4NTc4NDE7IFBDSS1FCmJnZTA6IERpc2Fi bGluZyBmYXN0Ym9vdApiZ2UwOiBEaXNhYmxpbmcgZmFzdGJvb3QKbWlpYnVzMDogPE1JSSBidXM+ IG9uIGJnZTAKYnJncGh5MDogPEJDTTU3ODQgMTAvMTAwLzEwMDBiYXNlVFggUEhZPiBQSFkgMSBv biBtaWlidXMwCmJyZ3BoeTA6IE9VSSAweDAwNTBlZiwgbW9kZWwgMHgwMDNhLCByZXYuIDQKYnJn cGh5MDogIDEwYmFzZVQsIDEwYmFzZVQtRkRYLCAxMDBiYXNlVFgsIDEwMGJhc2VUWC1GRFgsIDEw MDBiYXNlVCwgMTAwMGJhc2VULUZEWCwgYXV0bwpiZ2UwOiBicGYgYXR0YWNoZWQKYmdlMDogRXRo ZXJuZXQgYWRkcmVzczogMDA6MjI6MTk6ZTU6Y2E6NTEKYmdlMDogW01QU0FGRV0KYmdlMDogW0ZJ TFRFUl0KdWhjaTM6IDxJbnRlbCA4MjgwMUkgKElDSDkpIFVTQiBjb250cm9sbGVyPiBwb3J0IDB4 MTg4MC0weDE4OWYgaXJxIDIzIGF0IGRldmljZSAyOS4wIG9uIHBjaTAKaW9hcGljMDogcm91dGlu ZyBpbnRwaW4gMjMgKFBDSSBJUlEgMjMpIHRvIGxhcGljIDAgdmVjdG9yIDU2CnVoY2kzOiBbTVBT QUZFXQp1aGNpMzogW0lUSFJFQURdCnVzYnVzNDogPEludGVsIDgyODAxSSAoSUNIOSkgVVNCIGNv bnRyb2xsZXI+IG9uIHVoY2kzCnVoY2k0OiA8SW50ZWwgODI4MDFJIChJQ0g5KSBVU0IgY29udHJv bGxlcj4gcG9ydCAweDE4YTAtMHgxOGJmIGlycSAxOSBhdCBkZXZpY2UgMjkuMSBvbiBwY2kwCnVo Y2k0OiBbTVBTQUZFXQp1aGNpNDogW0lUSFJFQURdCnVzYnVzNTogPEludGVsIDgyODAxSSAoSUNI OSkgVVNCIGNvbnRyb2xsZXI+IG9uIHVoY2k0CnVoY2k1OiA8SW50ZWwgODI4MDFJIChJQ0g5KSBV U0IgY29udHJvbGxlcj4gcG9ydCAweDE4YzAtMHgxOGRmIGlycSAxOCBhdCBkZXZpY2UgMjkuMiBv biBwY2kwCmlvYXBpYzA6IHJvdXRpbmcgaW50cGluIDE4IChQQ0kgSVJRIDE4KSB0byBsYXBpYyAw IHZlY3RvciA1Nwp1aGNpNTogW01QU0FGRV0KdWhjaTU6IFtJVEhSRUFEXQp1c2J1czY6IDxJbnRl bCA4MjgwMUkgKElDSDkpIFVTQiBjb250cm9sbGVyPiBvbiB1aGNpNQplaGNpMTogPEludGVsIDgy ODAxSSAoSUNIOSkgVVNCIDIuMCBjb250cm9sbGVyPiBtZW0gMHhmODgwNGMwMC0weGY4ODA0ZmZm IGlycSAyMyBhdCBkZXZpY2UgMjkuNyBvbiBwY2kwCmVoY2kxOiBbTVBTQUZFXQplaGNpMTogW0lU SFJFQURdCnVzYnVzNzogRUhDSSB2ZXJzaW9uIDEuMAp1c2J1czc6IDxJbnRlbCA4MjgwMUkgKElD SDkpIFVTQiAyLjAgY29udHJvbGxlcj4gb24gZWhjaTEKcGNpYjQ6IDxBQ1BJIFBDSS1QQ0kgYnJp ZGdlPiBhdCBkZXZpY2UgMzAuMCBvbiBwY2kwCnBjaWI0OiAgIGRvbWFpbiAgICAgICAgICAgIDAK cGNpYjQ6ICAgc2Vjb25kYXJ5IGJ1cyAgICAgNwpwY2liNDogICBzdWJvcmRpbmF0ZSBidXMgICA3 CnBjaWI0OiAgIEkvTyBkZWNvZGUgICAgICAgIDB4ZjAwMC0weGZmZgpwY2liNDogICBubyBwcmVm ZXRjaGVkIGRlY29kZQpwY2liNDogICBTdWJ0cmFjdGl2ZWx5IGRlY29kZWQgYnJpZGdlLgpwY2li NDogY291bGQgbm90IGdldCBQQ0kgaW50ZXJydXB0IHJvdXRpbmcgdGFibGUgZm9yIFxcX1NCXy5Q Q0kwLlAwUDEgLSBBRV9OT1RfRk9VTkQKcGNpNzogPEFDUEkgUENJIGJ1cz4gb24gcGNpYjQKcGNp NzogZG9tYWluPTAsIHBoeXNpY2FsIGJ1cz03CmlzYWIwOiA8UENJLUlTQSBicmlkZ2U+IGF0IGRl dmljZSAzMS4wIG9uIHBjaTAKaXNhMDogPElTQSBidXM+IG9uIGlzYWIwCmF0YXBjaTA6IDxJbnRl bCAoSUQ9MjkyOTgwODYpIEFIQ0kgY29udHJvbGxlcj4gcG9ydCAweDE4MTgtMHgxODFmLDB4MTgw Yy0weDE4MGYsMHgxODEwLTB4MTgxNywweDE4MDgtMHgxODBiLDB4MThlMC0weDE4ZmYgbWVtIDB4 Zjg4MDQwMDAtMHhmODgwNDdmZiBpcnEgMTkgYXQgZGV2aWNlIDMxLjIgb24gcGNpMAphdGFwY2kw OiBbTVBTQUZFXQphdGFwY2kwOiBbSVRIUkVBRF0KYXRhcGNpMDogQUhDSSB2MS4yMCBjb250cm9s bGVyIHdpdGggNCAzR2JwcyBwb3J0cywgUE0gc3VwcG9ydGVkCmF0YXBjaTA6IENhcHM6IDY0Yml0 IE5DUSBTTlRGIEFMUCBBTCBDTE8gM0dicHMgUE0gUE1EIFNTQyBQU0MgMzJjbWQgQ0NDIGVTQVRB IDRwb3J0cwphdGEyOiA8QVRBIGNoYW5uZWwgMD4gb24gYXRhcGNpMAphdGEyOiBbTVBTQUZFXQph dGEyOiBbSVRIUkVBRF0KYXRhMzogPEFUQSBjaGFubmVsIDE+IG9uIGF0YXBjaTAKYXRhMzogW01Q U0FGRV0KYXRhMzogW0lUSFJFQURdCnBjaTA6IDxzZXJpYWwgYnVzLCBTTUJ1cz4gYXQgZGV2aWNl IDMxLjMgKG5vIGRyaXZlciBhdHRhY2hlZCkKYWNwaV9idXR0b24wOiA8UG93ZXIgQnV0dG9uPiBv biBhY3BpMAphY3BpX2J1dHRvbjE6IDxTbGVlcCBCdXR0b24+IG9uIGFjcGkwCmFjcGlfbGlkMDog PENvbnRyb2wgTWV0aG9kIExpZCBTd2l0Y2g+IG9uIGFjcGkwCmFjcGlfbGlkMDogZW5hYmxlIHdh a2UgZmFpbGVkCmFjcGlfYWNhZDA6IDxBQyBBZGFwdGVyPiBvbiBhY3BpMApiYXR0ZXJ5MDogPEFD UEkgQ29udHJvbCBNZXRob2QgQmF0dGVyeT4gb24gYWNwaTAKYWNwaV90ejA6IDxUaGVybWFsIFpv bmU+IG9uIGFjcGkwCmFjcGlfdHoxOiA8VGhlcm1hbCBab25lPiBvbiBhY3BpMAphY3BpX3R6Mjog PFRoZXJtYWwgWm9uZT4gb24gYWNwaTAKYXRydGMwOiA8QVQgcmVhbHRpbWUgY2xvY2s+IHBvcnQg MHg3MC0weDc3IGlycSA4IG9uIGFjcGkwCmF0cnRjMDogV2FybmluZzogQ291bGRuJ3QgbWFwIEkv Ty4KYXRydGMwOiByZWdpc3RlcmVkIGFzIGEgdGltZS1vZi1kYXkgY2xvY2sgKHJlc29sdXRpb24g MTAwMDAwMHVzKQphdGtiZGMwOiA8S2V5Ym9hcmQgY29udHJvbGxlciAoaTgwNDIpPiBwb3J0IDB4 NjAsMHg2NCBpcnEgMSBvbiBhY3BpMAphdGtiZDA6IDxBVCBLZXlib2FyZD4gaXJxIDEgb24gYXRr YmRjMAphdGtiZDogdGhlIGN1cnJlbnQga2JkIGNvbnRyb2xsZXIgY29tbWFuZCBieXRlIDAwNDcK YXRrYmQ6IGtleWJvYXJkIElEIDB4NDFhYiAoMikKa2JkMCBhdCBhdGtiZDAKa2JkMDogYXRrYmQw LCBBVCAxMDEvMTAyICgyKSwgY29uZmlnOjB4MCwgZmxhZ3M6MHgzZDAwMDAKaW9hcGljMDogcm91 dGluZyBpbnRwaW4gMSAoSVNBIElSUSAxKSB0byBsYXBpYyAwIHZlY3RvciA1OAphdGtiZDA6IFtH SUFOVC1MT0NLRURdCmF0a2JkMDogW0lUSFJFQURdCnBzbTA6IHVuYWJsZSB0byBhbGxvY2F0ZSBJ UlEKcHNtY3BucDA6IDxQUy8yIG1vdXNlIHBvcnQ+IGlycSAxMiBvbiBhY3BpMApwc20wOiBjdXJy ZW50IGNvbW1hbmQgYnl0ZTowMDQ3CnBzbTA6IDxQUy8yIE1vdXNlPiBpcnEgMTIgb24gYXRrYmRj MAppb2FwaWMwOiByb3V0aW5nIGludHBpbiAxMiAoSVNBIElSUSAxMikgdG8gbGFwaWMgMCB2ZWN0 b3IgNTkKcHNtMDogW0dJQU5ULUxPQ0tFRF0KcHNtMDogW0lUSFJFQURdCnBzbTA6IG1vZGVsIFN5 bmFwdGljcyBUb3VjaHBhZCwgZGV2aWNlIElEIDAtMDAsIDMgYnV0dG9ucwpwc20wOiBjb25maWc6 MDAwMDYwMDAsIGZsYWdzOjAwMDAwMDA4LCBwYWNrZXQgc2l6ZTo2CnBzbTA6IHN5bmNtYXNrOmMw LCBzeW5jYml0czowMAphY3BpMDogd2FrZXVwIGNvZGUgdmEgMHhmZmZmZmY4MDc0ZGViMDAwIHBh IDB4NDAwMAppc2FfcHJvYmVfY2hpbGRyZW46IGRpc2FibGluZyBQblAgZGV2aWNlcwphdGtiZGM6 IGF0a2JkYzAgYWxyZWFkeSBleGlzdHM7IHNraXBwaW5nIGl0CmF0cnRjOiBhdHJ0YzAgYWxyZWFk eSBleGlzdHM7IHNraXBwaW5nIGl0CnNjOiBzYzAgYWxyZWFkeSBleGlzdHM7IHNraXBwaW5nIGl0 CmlzYV9wcm9iZV9jaGlsZHJlbjogcHJvYmluZyBub24tUG5QIGRldmljZXMKc2MwOiA8U3lzdGVt IGNvbnNvbGU+IGF0IGZsYWdzIDB4MTAwIG9uIGlzYTAKc2MwOiBWR0EgPDE2IHZpcnR1YWwgY29u c29sZXMsIGZsYWdzPTB4MzAwPgpzYzA6IGZiMCwga2JkMSwgdGVybWluYWwgZW11bGF0b3I6IHNj dGVrZW4gKHRla2VuIHRlcm1pbmFsKQp2Z2EwOiA8R2VuZXJpYyBJU0EgVkdBPiBhdCBwb3J0IDB4 M2MwLTB4M2RmIGlvbWVtIDB4YTAwMDAtMHhiZmZmZiBvbiBpc2EwCmZkYzAgZmFpbGVkIHRvIHBy b2JlIGF0IHBvcnQgMHgzZjAgaXJxIDYgZHJxIDIgb24gaXNhMApwcGMwIGZhaWxlZCB0byBwcm9i ZSBhdCBpcnEgNyBvbiBpc2EwCnVhcnQwIGZhaWxlZCB0byBwcm9iZSBhdCBwb3J0IDB4M2Y4IGly cSA0IG9uIGlzYTAKdWFydDEgZmFpbGVkIHRvIHByb2JlIGF0IHBvcnQgMHgyZjggaXJxIDMgb24g aXNhMAppc2FfcHJvYmVfY2hpbGRyZW46IHByb2JpbmcgUG5QIGRldmljZXMKZXN0MDogPEVuaGFu Y2VkIFNwZWVkU3RlcCBGcmVxdWVuY3kgQ29udHJvbD4gb24gY3B1MAplc3QwOiBJbnZhbGlkIGlk MTYgKHNldCwgY3VyKSA9ICgyMDc1LCAxODEwKQplc3QwOiBDYW4ndCBjaGVjayBmcmVxIDE0MDEs IGl0IG1heSBiZSBpbnZhbGlkCmVzdDE6IDxFbmhhbmNlZCBTcGVlZFN0ZXAgRnJlcXVlbmN5IENv bnRyb2w+IG9uIGNwdTEKZXN0MTogSW52YWxpZCBpZDE2IChzZXQsIGN1cikgPSAoMjA3NSwgMTgx MCkKZXN0MTogQ2FuJ3QgY2hlY2sgZnJlcSAxNDAxLCBpdCBtYXkgYmUgaW52YWxpZApEZXZpY2Ug Y29uZmlndXJhdGlvbiBmaW5pc2hlZC4KUmVkdWNpbmcga2Vybi5tYXh2bm9kZXMgMjU1MjYwIC0+ IDEwMDAwMApwcm9jZnMgcmVnaXN0ZXJlZAppb2FwaWMwOiByb3V0aW5nIGludHBpbiAyIChJU0Eg SVJRIDApIHRvIGxhcGljIDAgdmVjdG9yIDYwClRpbWVjb3VudGVyICJUU0MiIGZyZXF1ZW5jeSAx NDAwMDYwNTU3IEh6IHF1YWxpdHkgLTEwMApUaW1lY291bnRlcnMgdGljayBldmVyeSAxMC4wMDAg bXNlYwp2bGFuOiBpbml0aWFsaXplZCwgdXNpbmcgaGFzaCB0YWJsZXMgd2l0aCBjaGFpbmluZwpp cGZ3MiAoK2lwdjYpIGluaXRpYWxpemVkLCBkaXZlcnQgZW5hYmxlZCwgbmF0IGVuYWJsZWQsIHJ1 bGUtYmFzZWQgZm9yd2FyZGluZyBlbmFibGVkLCBkZWZhdWx0IHRvIGFjY2VwdCwgbG9nZ2luZyBk aXNhYmxlZAppcGZ3MDogYnBmIGF0dGFjaGVkCkRVTU1ZTkVUIDB4ZmZmZmZmMDAwMTM5YzE4MCB3 aXRoIElQdjYgaW5pdGlhbGl6ZWQgKDEwMDQwOSkKbG9hZF9kbl9zY2hlZCBkbl9zY2hlZCBGSUZP IGxvYWRlZApsb2FkX2RuX3NjaGVkIGRuX3NjaGVkIFBSSU8gbG9hZGVkCmxvYWRfZG5fc2NoZWQg ZG5fc2NoZWQgUUZRIGxvYWRlZApsb2FkX2RuX3NjaGVkIGRuX3NjaGVkIFJSIGxvYWRlZApsb2Fk X2RuX3NjaGVkIGRuX3NjaGVkIFdGMlErIGxvYWRlZApsbzA6IGJwZiBhdHRhY2hlZApoZGFjMDog UHJvYmluZyBjb2RlYyAjMC4uLgpoZGFjMDogSERBIENvZGVjICMwOiBJRFQgOTJIRDczQzEKaGRh YzA6ICBIREEgQ29kZWMgSUQ6IDB4MTExZDc2NzUKaGRhYzA6ICAgICAgICBWZW5kb3I6IDB4MTEx ZApoZGFjMDogICAgICAgIERldmljZTogMHg3Njc1CmhkYWMwOiAgICAgIFJldmlzaW9uOiAweDAy CmhkYWMwOiAgICAgIFN0ZXBwaW5nOiAweDAyCmhkYWMwOiBQQ0kgU3VidmVuZG9yOiAweDAyYjkx MDI4CmhkYWMwOiAJRm91bmQgYXVkaW8gRkcgbmlkPTEgc3RhcnRub2RlPTEwIGVuZG5vZGU9NDQg dG90YWw9MzQKaGRhYzA6IFByb2JpbmcgY29kZWMgIzEuLi4KaGRhYzA6IEhEQSBDb2RlYyAjMTog SW50ZWwgRzQ1IEhETUkKaGRhYzA6ICBIREEgQ29kZWMgSUQ6IDB4ODA4NjI4MDIKaGRhYzA6ICAg ICAgICBWZW5kb3I6IDB4ODA4NgpoZGFjMDogICAgICAgIERldmljZTogMHgyODAyCmhkYWMwOiAg ICAgIFJldmlzaW9uOiAweDAwCmhkYWMwOiAgICAgIFN0ZXBwaW5nOiAweDAwCmhkYWMwOiBQQ0kg U3VidmVuZG9yOiAweDAyYjkxMDI4CmhkYWMwOiAJRm91bmQgYXVkaW8gRkcgbmlkPTEgc3RhcnRu b2RlPTIgZW5kbm9kZT00IHRvdGFsPTIKaGRhYzA6IApoZGFjMDogUHJvY2Vzc2luZyBhdWRpbyBG RyBjYWQ9MCBuaWQ9MS4uLgpoZGFjMDogR1BJTzogMHhjMDAwMDAwOCBOdW1HUElPPTggTnVtR1BP PTAgTnVtR1BJPTAgR1BJV2FrZT0xIEdQSVVuc29sPTEKaGRhYzA6ICBuaWQgMTAgMHgwNDIxMTAx ZiBhcyAgMSBzZXEgMTUgICAgSGVhZHBob25lcyAgSmFjayBqYWNrICAxIGxvYyAgNCBjb2xvciAg IEJsYWNrIG1pc2MgMApoZGFjMDogIG5pZCAxMSAweDQwMDAwMWYxIGFzIDE1IHNlcSAgMSAgICAg IExpbmUtb3V0ICBOb25lIGphY2sgIDAgbG9jICAwIGNvbG9yIFVua25vd24gbWlzYyAxCmhkYWMw OiAgbmlkIDEyIDB4NDAwMDAxZjIgYXMgMTUgc2VxICAyICAgICAgTGluZS1vdXQgIE5vbmUgamFj ayAgMCBsb2MgIDAgY29sb3IgVW5rbm93biBtaXNjIDEKaGRhYzA6ICBuaWQgMTMgMHg5MDE3MDEx MCBhcyAgMSBzZXEgIDAgICAgICAgU3BlYWtlciBGaXhlZCBqYWNrICA3IGxvYyAxNiBjb2xvciBV bmtub3duIG1pc2MgMQpoZGFjMDogIG5pZCAxNCAweDQwMDAwMWYzIGFzIDE1IHNlcSAgMyAgICAg IExpbmUtb3V0ICBOb25lIGphY2sgIDAgbG9jICAwIGNvbG9yIFVua25vd24gbWlzYyAxCmhkYWMw OiAgbmlkIDE1IDB4NDAwMDAxZjAgYXMgMTUgc2VxICAwICAgICAgTGluZS1vdXQgIE5vbmUgamFj ayAgMCBsb2MgIDAgY29sb3IgVW5rbm93biBtaXNjIDEKaGRhYzA6ICBuaWQgMTYgMHg0MDAwMDFm NCBhcyAxNSBzZXEgIDQgICAgICBMaW5lLW91dCAgTm9uZSBqYWNrICAwIGxvYyAgMCBjb2xvciBV bmtub3duIG1pc2MgMQpoZGFjMDogIG5pZCAxNyAweDQwMDAwMWY1IGFzIDE1IHNlcSAgNSAgICAg IExpbmUtb3V0ICBOb25lIGphY2sgIDAgbG9jICAwIGNvbG9yIFVua25vd24gbWlzYyAxCmhkYWMw OiAgbmlkIDE4IDB4NDAwMDAxZjYgYXMgMTUgc2VxICA2ICAgICAgTGluZS1vdXQgIE5vbmUgamFj ayAgMCBsb2MgIDAgY29sb3IgVW5rbm93biBtaXNjIDEKaGRhYzA6ICBuaWQgMTkgMHg5MGE2MDE2 MCBhcyAgNiBzZXEgIDAgICAgICAgICAgIE1pYyBGaXhlZCBqYWNrICA2IGxvYyAxNiBjb2xvciBV bmtub3duIG1pc2MgMQpoZGFjMDogIG5pZCAyMCAweDQwMDAwMWY3IGFzIDE1IHNlcSAgNyAgICAg IExpbmUtb3V0ICBOb25lIGphY2sgIDAgbG9jICAwIGNvbG9yIFVua25vd24gbWlzYyAxCmhkYWMw OiAgbmlkIDM0IDB4NDAwMDAxZjggYXMgMTUgc2VxICA4ICAgICAgTGluZS1vdXQgIE5vbmUgamFj ayAgMCBsb2MgIDAgY29sb3IgVW5rbm93biBtaXNjIDEKaGRhYzA6ICBuaWQgMzUgMHg0MDAwMDFm OSBhcyAxNSBzZXEgIDkgICAgICBMaW5lLW91dCAgTm9uZSBqYWNrICAwIGxvYyAgMCBjb2xvciBV bmtub3duIG1pc2MgMQpoZGFjMDogIG5pZCAzNiAweDQwMDAwMWZhIGFzIDE1IHNlcSAxMCAgICAg IExpbmUtb3V0ICBOb25lIGphY2sgIDAgbG9jICAwIGNvbG9yIFVua25vd24gbWlzYyAxCmhkYWMw OiBQYXRjaGVkIHBpbnMgY29uZmlndXJhdGlvbjoKaGRhYzA6ICBuaWQgMTAgMHgwNDIxMTAxZiBh cyAgMSBzZXEgMTUgICAgSGVhZHBob25lcyAgSmFjayBqYWNrICAxIGxvYyAgNCBjb2xvciAgIEJs YWNrIG1pc2MgMApoZGFjMDogIG5pZCAxMSAweDQwMDAwMWYxIGFzIDE1IHNlcSAgMSAgICAgIExp bmUtb3V0ICBOb25lIGphY2sgIDAgbG9jICAwIGNvbG9yIFVua25vd24gbWlzYyAxIFtESVNBQkxF RF0KaGRhYzA6ICBuaWQgMTIgMHg0MDAwMDFmMiBhcyAxNSBzZXEgIDIgICAgICBMaW5lLW91dCAg Tm9uZSBqYWNrICAwIGxvYyAgMCBjb2xvciBVbmtub3duIG1pc2MgMSBbRElTQUJMRURdCmhkYWMw OiAgbmlkIDEzIDB4OTAxNzAxMTAgYXMgIDEgc2VxICAwICAgICAgIFNwZWFrZXIgRml4ZWQgamFj ayAgNyBsb2MgMTYgY29sb3IgVW5rbm93biBtaXNjIDEKaGRhYzA6ICBuaWQgMTQgMHg0MDAwMDFm MyBhcyAxNSBzZXEgIDMgICAgICBMaW5lLW91dCAgTm9uZSBqYWNrICAwIGxvYyAgMCBjb2xvciBV bmtub3duIG1pc2MgMSBbRElTQUJMRURdCmhkYWMwOiAgbmlkIDE1IDB4NDAwMDAxZjAgYXMgMTUg c2VxICAwICAgICAgTGluZS1vdXQgIE5vbmUgamFjayAgMCBsb2MgIDAgY29sb3IgVW5rbm93biBt aXNjIDEgW0RJU0FCTEVEXQpoZGFjMDogIG5pZCAxNiAweDQwMDAwMWY0IGFzIDE1IHNlcSAgNCAg ICAgIExpbmUtb3V0ICBOb25lIGphY2sgIDAgbG9jICAwIGNvbG9yIFVua25vd24gbWlzYyAxIFtE SVNBQkxFRF0KaGRhYzA6ICBuaWQgMTcgMHg0MDAwMDFmNSBhcyAxNSBzZXEgIDUgICAgICBMaW5l LW91dCAgTm9uZSBqYWNrICAwIGxvYyAgMCBjb2xvciBVbmtub3duIG1pc2MgMSBbRElTQUJMRURd CmhkYWMwOiAgbmlkIDE4IDB4NDAwMDAxZjYgYXMgMTUgc2VxICA2ICAgICAgTGluZS1vdXQgIE5v bmUgamFjayAgMCBsb2MgIDAgY29sb3IgVW5rbm93biBtaXNjIDEgW0RJU0FCTEVEXQpoZGFjMDog IG5pZCAxOSAweDkwYTYwMTYwIGFzICA2IHNlcSAgMCAgICAgICAgICAgTWljIEZpeGVkIGphY2sg IDYgbG9jIDE2IGNvbG9yIFVua25vd24gbWlzYyAxCmhkYWMwOiAgbmlkIDIwIDB4NDAwMDAxZjcg YXMgMTUgc2VxICA3ICAgICAgTGluZS1vdXQgIE5vbmUgamFjayAgMCBsb2MgIDAgY29sb3IgVW5r bm93biBtaXNjIDEgW0RJU0FCTEVEXQpoZGFjMDogIG5pZCAzNCAweDQwMDAwMWY4IGFzIDE1IHNl cSAgOCAgICAgIExpbmUtb3V0ICBOb25lIGphY2sgIDAgbG9jICAwIGNvbG9yIFVua25vd24gbWlz YyAxIFtESVNBQkxFRF0KaGRhYzA6ICBuaWQgMzUgMHg0MDAwMDFmOSBhcyAxNSBzZXEgIDkgICAg ICBMaW5lLW91dCAgTm9uZSBqYWNrICAwIGxvYyAgMCBjb2xvciBVbmtub3duIG1pc2MgMSBbRElT QUJMRURdCmhkYWMwOiAgbmlkIDM2IDB4NDAwMDAxZmEgYXMgMTUgc2VxIDEwICAgICAgTGluZS1v dXQgIE5vbmUgamFjayAgMCBsb2MgIDAgY29sb3IgVW5rbm93biBtaXNjIDEgW0RJU0FCTEVEXQpo ZGFjMDogMiBhc3NvY2lhdGlvbnMgZm91bmQ6CmhkYWMwOiBBc3NvY2lhdGlvbiAwICgxKSBvdXQ6 CmhkYWMwOiAgUGluIG5pZD0xMyBzZXE9MApoZGFjMDogIFBpbiBuaWQ9MTAgc2VxPTE1CmhkYWMw OiBBc3NvY2lhdGlvbiAxICg2KSBpbjoKaGRhYzA6ICBQaW4gbmlkPTE5IHNlcT0wCmhkYWMwOiBU cmFjaW5nIGFzc29jaWF0aW9uIDAgKDEpCmhkYWMwOiAgUGluIDEzIHRyYWNlZCB0byBEQUMgMjEK aGRhYzA6ICBQaW4gMTAgdHJhY2VkIHRvIERBQyAyMSBhbmQgaHByZWRpciAwCmhkYWMwOiBBc3Nv Y2lhdGlvbiAwICgxKSB0cmFjZSBzdWNjZWVkZWQKaGRhYzA6IFRyYWNpbmcgYXNzb2NpYXRpb24g MSAoNikKaGRhYzA6ICBQaW4gMTkgdHJhY2VkIHRvIEFEQyAyNgpoZGFjMDogQXNzb2NpYXRpb24g MSAoNikgdHJhY2Ugc3VjY2VlZGVkCmhkYWMwOiBUcmFjaW5nIGlucHV0IG1vbml0b3IKaGRhYzA6 IFRyYWNpbmcgb3RoZXIgaW5wdXQgbW9uaXRvcnMKaGRhYzA6ICBUcmFjaW5nIG5pZCAxOSB0byBv dXQKaGRhYzA6IFRyYWNpbmcgYmVlcGVyCmhkYWMwOiBFbmFibGluZyBoZWFkcGhvbmUvc3BlYWtl ciBhdWRpbyByb3V0aW5nIHN3aXRjaGluZzoKaGRhYzA6IAlhcz0wIHNlbnNlIG5pZD0xMCBbVU5T T0xdCmhkYWMwOiBQaW4gc2Vuc2U6IG5pZD0xMCByZXM9MHg3ZmZmZmZmZgpoZGFjMDogRkcgY29u ZmlnL3F1aXJrczogZm9yY2VzdGVyZW8gaXZyZWY1MCBpdnJlZjgwIGl2cmVmMTAwIGl2cmVmCmhk YWMwOiAKaGRhYzA6ICstLS0tLS0tLS0tLS0tLS0tLS0tKwpoZGFjMDogfCBEVU1QSU5HIEhEQSBO T0RFUyB8CmhkYWMwOiArLS0tLS0tLS0tLS0tLS0tLS0tLSsKaGRhYzA6IApoZGFjMDogRGVmYXVs dCBQYXJhbWV0ZXIKaGRhYzA6IC0tLS0tLS0tLS0tLS0tLS0tCmhkYWMwOiAgICAgIFN0cmVhbSBj YXA6IDB4MDAwMDAwMDEKaGRhYzA6ICAgICAgICAgICAgICAgICAgUENNCmhkYWMwOiAgICAgICAg IFBDTSBjYXA6IDB4MDAwZTA1ZTAKaGRhYzA6ICAgICAgICAgICAgICAgICAgMTYgMjAgMjQgYml0 cywgNDQgNDggODggOTYgMTkyIEtIegpoZGFjMDogICAgICAgICAgSU4gYW1wOiAweDAwMjcwMzAw CmhkYWMwOiAgICAgICAgIE9VVCBhbXA6IDB4ODAwMjdmN2YKaGRhYzA6IApoZGFjMDogICAgICAg ICAgICAgbmlkOiAxMApoZGFjMDogICAgICAgICAgICBOYW1lOiBwaW46IEhlYWRwaG9uZXMgKEJs YWNrIEphY2spCmhkYWMwOiAgICAgIFdpZGdldCBjYXA6IDB4MDA0MDAxODMKaGRhYzA6ICAgICAg ICAgICAgICAgICAgVU5TT0wgU1RFUkVPCmhkYWMwOiAgICAgQXNzb2NpYXRpb246IDAgKDB4MDAw MDgwMDApCmhkYWMwOiAgICAgICAgIFBpbiBjYXA6IDB4MDAwMDE3M2YKaGRhYzA6ICAgICAgICAg ICAgICAgICAgSVNDIFRSUUQgUERDIEhQIE9VVCBJTiBWUkVGWyA1MCA4MCBHUk9VTkQgSElaIF0K aGRhYzA6ICAgICAgUGluIGNvbmZpZzogMHgwNDIxMTAxZgpoZGFjMDogICAgIFBpbiBjb250cm9s OiAweDAwMDAwMDgwIEhQCmhkYWMwOiAgICAgICBJbnB1dCBhbXA6IDB4MDAyNzAzMDAKaGRhYzA6 ICAgICAgICAgICAgICAgICAgbXV0ZT0wIHN0ZXA9MyBzaXplPTM5IG9mZnNldD0wCmhkYWMwOiAg ICAgY29ubmVjdGlvbnM6IDQKaGRhYzA6ICAgICAgICAgICB8CmhkYWMwOiAgICAgICAgICAgKyA8 LSBuaWQ9MjEgW2F1ZGlvIG91dHB1dF0gKHNlbGVjdGVkKQpoZGFjMDogICAgICAgICAgICsgW0RJ U0FCTEVEXSA8LSBuaWQ9MjIgW2F1ZGlvIG91dHB1dF0gW0RJU0FCTEVEXQpoZGFjMDogICAgICAg ICAgICsgW0RJU0FCTEVEXSA8LSBuaWQ9MjMgW2F1ZGlvIG91dHB1dF0gW0RJU0FCTEVEXQpoZGFj MDogICAgICAgICAgICsgW0RJU0FCTEVEXSA8LSBuaWQ9MzAgW2F1ZGlvIHNlbGVjdG9yXSBbRElT QUJMRURdCmhkYWMwOiAKaGRhYzA6ICAgICAgICAgICAgIG5pZDogMTEgW0RJU0FCTEVEXQpoZGFj MDogICAgICAgICAgICBOYW1lOiBwaW46IExpbmUtb3V0IChOb25lKQpoZGFjMDogICAgICBXaWRn ZXQgY2FwOiAweDAwNDAwMTgzCmhkYWMwOiAgICAgICAgICAgICAgICAgIFVOU09MIFNURVJFTwpo ZGFjMDogICAgICAgICBQaW4gY2FwOiAweDAwMDAxNzNmCmhkYWMwOiAgICAgICAgICAgICAgICAg IElTQyBUUlFEIFBEQyBIUCBPVVQgSU4gVlJFRlsgNTAgODAgR1JPVU5EIEhJWiBdCmhkYWMwOiAg ICAgIFBpbiBjb25maWc6IDB4NDAwMDAxZjEKaGRhYzA6ICAgICBQaW4gY29udHJvbDogMHgwMDAw MDAwMApoZGFjMDogICAgICAgSW5wdXQgYW1wOiAweDAwMjcwMzAwCmhkYWMwOiAgICAgICAgICAg ICAgICAgIG11dGU9MCBzdGVwPTMgc2l6ZT0zOSBvZmZzZXQ9MApoZGFjMDogICAgIGNvbm5lY3Rp b25zOiA0CmhkYWMwOiAgICAgICAgICAgfApoZGFjMDogICAgICAgICAgICsgPC0gbmlkPTIxIFth dWRpbyBvdXRwdXRdIChzZWxlY3RlZCkKaGRhYzA6ICAgICAgICAgICArIDwtIG5pZD0yMiBbYXVk aW8gb3V0cHV0XSBbRElTQUJMRURdCmhkYWMwOiAgICAgICAgICAgKyA8LSBuaWQ9MjMgW2F1ZGlv IG91dHB1dF0gW0RJU0FCTEVEXQpoZGFjMDogICAgICAgICAgICsgPC0gbmlkPTMwIFthdWRpbyBz ZWxlY3Rvcl0gW0RJU0FCTEVEXQpoZGFjMDogCmhkYWMwOiAgICAgICAgICAgICBuaWQ6IDEyIFtE SVNBQkxFRF0KaGRhYzA6ICAgICAgICAgICAgTmFtZTogcGluOiBMaW5lLW91dCAoTm9uZSkKaGRh YzA6ICAgICAgV2lkZ2V0IGNhcDogMHgwMDQwMDE4MwpoZGFjMDogICAgICAgICAgICAgICAgICBV TlNPTCBTVEVSRU8KaGRhYzA6ICAgICAgICAgUGluIGNhcDogMHgwMDAwMTczNwpoZGFjMDogICAg ICAgICAgICAgICAgICBJU0MgVFJRRCBQREMgT1VUIElOIFZSRUZbIDUwIDgwIEdST1VORCBISVog XQpoZGFjMDogICAgICBQaW4gY29uZmlnOiAweDQwMDAwMWYyCmhkYWMwOiAgICAgUGluIGNvbnRy b2w6IDB4MDAwMDAwMDAKaGRhYzA6ICAgICAgIElucHV0IGFtcDogMHgwMDI3MDMwMApoZGFjMDog ICAgICAgICAgICAgICAgICBtdXRlPTAgc3RlcD0zIHNpemU9Mzkgb2Zmc2V0PTAKaGRhYzA6ICAg ICBjb25uZWN0aW9uczogNApoZGFjMDogICAgICAgICAgIHwKaGRhYzA6ICAgICAgICAgICArIDwt IG5pZD0yMSBbYXVkaW8gb3V0cHV0XSAoc2VsZWN0ZWQpCmhkYWMwOiAgICAgICAgICAgKyA8LSBu aWQ9MjIgW2F1ZGlvIG91dHB1dF0gW0RJU0FCTEVEXQpoZGFjMDogICAgICAgICAgICsgPC0gbmlk PTIzIFthdWRpbyBvdXRwdXRdIFtESVNBQkxFRF0KaGRhYzA6ICAgICAgICAgICArIDwtIG5pZD0z MCBbYXVkaW8gc2VsZWN0b3JdIFtESVNBQkxFRF0KaGRhYzA6IApoZGFjMDogICAgICAgICAgICAg bmlkOiAxMwpoZGFjMDogICAgICAgICAgICBOYW1lOiBwaW46IFNwZWFrZXIgKEZpeGVkKQpoZGFj MDogICAgICBXaWRnZXQgY2FwOiAweDAwNDAwMTgzCmhkYWMwOiAgICAgICAgICAgICAgICAgIFVO U09MIFNURVJFTwpoZGFjMDogICAgIEFzc29jaWF0aW9uOiAwICgweDAwMDAwMDAxKQpoZGFjMDog ICAgICAgICBQaW4gY2FwOiAweDAwMDAwMDNmCmhkYWMwOiAgICAgICAgICAgICAgICAgIElTQyBU UlFEIFBEQyBIUCBPVVQgSU4KaGRhYzA6ICAgICAgUGluIGNvbmZpZzogMHg5MDE3MDExMApoZGFj MDogICAgIFBpbiBjb250cm9sOiAweDAwMDAwMDQwIE9VVApoZGFjMDogICAgICAgSW5wdXQgYW1w OiAweDAwMjcwMzAwCmhkYWMwOiAgICAgICAgICAgICAgICAgIG11dGU9MCBzdGVwPTMgc2l6ZT0z OSBvZmZzZXQ9MApoZGFjMDogICAgIGNvbm5lY3Rpb25zOiA0CmhkYWMwOiAgICAgICAgICAgfApo ZGFjMDogICAgICAgICAgICsgPC0gbmlkPTIxIFthdWRpbyBvdXRwdXRdIChzZWxlY3RlZCkKaGRh YzA6ICAgICAgICAgICArIFtESVNBQkxFRF0gPC0gbmlkPTIyIFthdWRpbyBvdXRwdXRdIFtESVNB QkxFRF0KaGRhYzA6ICAgICAgICAgICArIFtESVNBQkxFRF0gPC0gbmlkPTIzIFthdWRpbyBvdXRw dXRdIFtESVNBQkxFRF0KaGRhYzA6ICAgICAgICAgICArIFtESVNBQkxFRF0gPC0gbmlkPTMwIFth dWRpbyBzZWxlY3Rvcl0gW0RJU0FCTEVEXQpoZGFjMDogCmhkYWMwOiAgICAgICAgICAgICBuaWQ6 IDE0IFtESVNBQkxFRF0KaGRhYzA6ICAgICAgICAgICAgTmFtZTogcGluOiBMaW5lLW91dCAoTm9u ZSkKaGRhYzA6ICAgICAgV2lkZ2V0IGNhcDogMHgwMDQwMDE4MwpoZGFjMDogICAgICAgICAgICAg ICAgICBVTlNPTCBTVEVSRU8KaGRhYzA6ICAgICAgICAgUGluIGNhcDogMHgwMDAwMTczNwpoZGFj MDogICAgICAgICAgICAgICAgICBJU0MgVFJRRCBQREMgT1VUIElOIFZSRUZbIDUwIDgwIEdST1VO RCBISVogXQpoZGFjMDogICAgICBQaW4gY29uZmlnOiAweDQwMDAwMWYzCmhkYWMwOiAgICAgUGlu IGNvbnRyb2w6IDB4MDAwMDAwMDAKaGRhYzA6ICAgICAgIElucHV0IGFtcDogMHgwMDI3MDMwMApo ZGFjMDogICAgICAgICAgICAgICAgICBtdXRlPTAgc3RlcD0zIHNpemU9Mzkgb2Zmc2V0PTAKaGRh YzA6ICAgICBjb25uZWN0aW9uczogNApoZGFjMDogICAgICAgICAgIHwKaGRhYzA6ICAgICAgICAg ICArIDwtIG5pZD0yMSBbYXVkaW8gb3V0cHV0XSAoc2VsZWN0ZWQpCmhkYWMwOiAgICAgICAgICAg KyA8LSBuaWQ9MjIgW2F1ZGlvIG91dHB1dF0gW0RJU0FCTEVEXQpoZGFjMDogICAgICAgICAgICsg PC0gbmlkPTIzIFthdWRpbyBvdXRwdXRdIFtESVNBQkxFRF0KaGRhYzA6ICAgICAgICAgICArIDwt IG5pZD0zMCBbYXVkaW8gc2VsZWN0b3JdIFtESVNBQkxFRF0KaGRhYzA6IApoZGFjMDogICAgICAg ICAgICAgbmlkOiAxNSBbRElTQUJMRURdCmhkYWMwOiAgICAgICAgICAgIE5hbWU6IHBpbjogTGlu ZS1vdXQgKE5vbmUpCmhkYWMwOiAgICAgIFdpZGdldCBjYXA6IDB4MDA0MDAxODMKaGRhYzA6ICAg ICAgICAgICAgICAgICAgVU5TT0wgU1RFUkVPCmhkYWMwOiAgICAgICAgIFBpbiBjYXA6IDB4MDAw MDAwMzcKaGRhYzA6ICAgICAgICAgICAgICAgICAgSVNDIFRSUUQgUERDIE9VVCBJTgpoZGFjMDog ICAgICBQaW4gY29uZmlnOiAweDQwMDAwMWYwCmhkYWMwOiAgICAgUGluIGNvbnRyb2w6IDB4MDAw MDAwMDAKaGRhYzA6ICAgICAgIElucHV0IGFtcDogMHgwMDI3MDMwMApoZGFjMDogICAgICAgICAg ICAgICAgICBtdXRlPTAgc3RlcD0zIHNpemU9Mzkgb2Zmc2V0PTAKaGRhYzA6ICAgICBjb25uZWN0 aW9uczogNApoZGFjMDogICAgICAgICAgIHwKaGRhYzA6ICAgICAgICAgICArIDwtIG5pZD0yMSBb YXVkaW8gb3V0cHV0XSAoc2VsZWN0ZWQpCmhkYWMwOiAgICAgICAgICAgKyA8LSBuaWQ9MjIgW2F1 ZGlvIG91dHB1dF0gW0RJU0FCTEVEXQpoZGFjMDogICAgICAgICAgICsgPC0gbmlkPTIzIFthdWRp byBvdXRwdXRdIFtESVNBQkxFRF0KaGRhYzA6ICAgICAgICAgICArIDwtIG5pZD0zMCBbYXVkaW8g c2VsZWN0b3JdIFtESVNBQkxFRF0KaGRhYzA6IApoZGFjMDogICAgICAgICAgICAgbmlkOiAxNiBb RElTQUJMRURdCmhkYWMwOiAgICAgICAgICAgIE5hbWU6IHBpbjogTGluZS1vdXQgKE5vbmUpCmhk YWMwOiAgICAgIFdpZGdldCBjYXA6IDB4MDA0MDAxODMKaGRhYzA6ICAgICAgICAgICAgICAgICAg VU5TT0wgU1RFUkVPCmhkYWMwOiAgICAgICAgIFBpbiBjYXA6IDB4MDAwMDAwMzcKaGRhYzA6ICAg ICAgICAgICAgICAgICAgSVNDIFRSUUQgUERDIE9VVCBJTgpoZGFjMDogICAgICBQaW4gY29uZmln OiAweDQwMDAwMWY0CmhkYWMwOiAgICAgUGluIGNvbnRyb2w6IDB4MDAwMDAwMDAKaGRhYzA6ICAg ICAgIElucHV0IGFtcDogMHgwMDI3MDMwMApoZGFjMDogICAgICAgICAgICAgICAgICBtdXRlPTAg c3RlcD0zIHNpemU9Mzkgb2Zmc2V0PTAKaGRhYzA6ICAgICBjb25uZWN0aW9uczogNApoZGFjMDog ICAgICAgICAgIHwKaGRhYzA6ICAgICAgICAgICArIDwtIG5pZD0yMSBbYXVkaW8gb3V0cHV0XSAo c2VsZWN0ZWQpCmhkYWMwOiAgICAgICAgICAgKyA8LSBuaWQ9MjIgW2F1ZGlvIG91dHB1dF0gW0RJ U0FCTEVEXQpoZGFjMDogICAgICAgICAgICsgPC0gbmlkPTIzIFthdWRpbyBvdXRwdXRdIFtESVNB QkxFRF0KaGRhYzA6ICAgICAgICAgICArIDwtIG5pZD0zMCBbYXVkaW8gc2VsZWN0b3JdIFtESVNB QkxFRF0KaGRhYzA6IApoZGFjMDogICAgICAgICAgICAgbmlkOiAxNyBbRElTQUJMRURdCmhkYWMw OiAgICAgICAgICAgIE5hbWU6IHBpbjogTGluZS1vdXQgKE5vbmUpCmhkYWMwOiAgICAgIFdpZGdl dCBjYXA6IDB4MDA0MDAxODMKaGRhYzA6ICAgICAgICAgICAgICAgICAgVU5TT0wgU1RFUkVPCmhk YWMwOiAgICAgICAgIFBpbiBjYXA6IDB4MDAwMDAwMzcKaGRhYzA6ICAgICAgICAgICAgICAgICAg SVNDIFRSUUQgUERDIE9VVCBJTgpoZGFjMDogICAgICBQaW4gY29uZmlnOiAweDQwMDAwMWY1Cmhk YWMwOiAgICAgUGluIGNvbnRyb2w6IDB4MDAwMDAwMDAKaGRhYzA6ICAgICAgIElucHV0IGFtcDog MHgwMDI3MDMwMApoZGFjMDogICAgICAgICAgICAgICAgICBtdXRlPTAgc3RlcD0zIHNpemU9Mzkg b2Zmc2V0PTAKaGRhYzA6ICAgICBjb25uZWN0aW9uczogNApoZGFjMDogICAgICAgICAgIHwKaGRh YzA6ICAgICAgICAgICArIDwtIG5pZD0yMSBbYXVkaW8gb3V0cHV0XSAoc2VsZWN0ZWQpCmhkYWMw OiAgICAgICAgICAgKyA8LSBuaWQ9MjIgW2F1ZGlvIG91dHB1dF0gW0RJU0FCTEVEXQpoZGFjMDog ICAgICAgICAgICsgPC0gbmlkPTIzIFthdWRpbyBvdXRwdXRdIFtESVNBQkxFRF0KaGRhYzA6ICAg ICAgICAgICArIDwtIG5pZD0zMCBbYXVkaW8gc2VsZWN0b3JdIFtESVNBQkxFRF0KaGRhYzA6IApo ZGFjMDogICAgICAgICAgICAgbmlkOiAxOCBbRElTQUJMRURdCmhkYWMwOiAgICAgICAgICAgIE5h bWU6IHBpbjogTGluZS1vdXQgKE5vbmUpCmhkYWMwOiAgICAgIFdpZGdldCBjYXA6IDB4MDA0MDAw ODEKaGRhYzA6ICAgICAgICAgICAgICAgICAgVU5TT0wgU1RFUkVPCmhkYWMwOiAgICAgICAgIFBp biBjYXA6IDB4MDAwMDAwMjQKaGRhYzA6ICAgICAgICAgICAgICAgICAgUERDIElOCmhkYWMwOiAg ICAgIFBpbiBjb25maWc6IDB4NDAwMDAxZjYKaGRhYzA6ICAgICBQaW4gY29udHJvbDogMHgwMDAw MDAwMApoZGFjMDogCmhkYWMwOiAgICAgICAgICAgICBuaWQ6IDE5CmhkYWMwOiAgICAgICAgICAg IE5hbWU6IHBpbjogTWljIChGaXhlZCkKaGRhYzA6ICAgICAgV2lkZ2V0IGNhcDogMHgwMDQwMDAw MwpoZGFjMDogICAgICAgICAgICAgICAgICBTVEVSRU8KaGRhYzA6ICAgICBBc3NvY2lhdGlvbjog MSAoMHgwMDAwMDAwMSkKaGRhYzA6ICAgICAgICAgICAgIE9TUzogbW9uaXRvciAobW9uaXRvcikK aGRhYzA6ICAgICAgICAgUGluIGNhcDogMHgwMDAwMDAyMApoZGFjMDogICAgICAgICAgICAgICAg ICBJTgpoZGFjMDogICAgICBQaW4gY29uZmlnOiAweDkwYTYwMTYwCmhkYWMwOiAgICAgUGluIGNv bnRyb2w6IDB4MDAwMDAwMjAgSU4KaGRhYzA6ICAgICAgIElucHV0IGFtcDogMHgwMDI3MDMwMApo ZGFjMDogICAgICAgICAgICAgICAgICBtdXRlPTAgc3RlcD0zIHNpemU9Mzkgb2Zmc2V0PTAKaGRh YzA6IApoZGFjMDogICAgICAgICAgICAgbmlkOiAyMCBbRElTQUJMRURdCmhkYWMwOiAgICAgICAg ICAgIE5hbWU6IHBpbjogTGluZS1vdXQgKE5vbmUpCmhkYWMwOiAgICAgIFdpZGdldCBjYXA6IDB4 MDA0MDAwMDMKaGRhYzA6ICAgICAgICAgICAgICAgICAgU1RFUkVPCmhkYWMwOiAgICAgICAgIFBp biBjYXA6IDB4MDAwMDAwMjAKaGRhYzA6ICAgICAgICAgICAgICAgICAgSU4KaGRhYzA6ICAgICAg UGluIGNvbmZpZzogMHg0MDAwMDFmNwpoZGFjMDogICAgIFBpbiBjb250cm9sOiAweDAwMDAwMDAw CmhkYWMwOiAgICAgICBJbnB1dCBhbXA6IDB4MDAyNzAzMDAKaGRhYzA6ICAgICAgICAgICAgICAg ICAgbXV0ZT0wIHN0ZXA9MyBzaXplPTM5IG9mZnNldD0wCmhkYWMwOiAKaGRhYzA6ICAgICAgICAg ICAgIG5pZDogMjEKaGRhYzA6ICAgICAgICAgICAgTmFtZTogYXVkaW8gb3V0cHV0CmhkYWMwOiAg ICAgIFdpZGdldCBjYXA6IDB4MDAwZDBjMDUKaGRhYzA6ICAgICAgICAgICAgICAgICAgTFJTV0FQ IFBXUiBTVEVSRU8KaGRhYzA6ICAgICBBc3NvY2lhdGlvbjogMCAoMHgwMDAwODAwMSkKaGRhYzA6 ICAgICAgICAgICAgIE9TUzogcGNtIChwY20pCmhkYWMwOiAgICAgIFN0cmVhbSBjYXA6IDB4MDAw MDAwMDEKaGRhYzA6ICAgICAgICAgICAgICAgICAgUENNCmhkYWMwOiAgICAgICAgIFBDTSBjYXA6 IDB4MDAwZTA1ZTAKaGRhYzA6ICAgICAgICAgICAgICAgICAgMTYgMjAgMjQgYml0cywgNDQgNDgg ODggOTYgMTkyIEtIegpoZGFjMDogICAgICBPdXRwdXQgYW1wOiAweDgwMDI3ZjdmCmhkYWMwOiAg ICAgICAgICAgICAgICAgIG11dGU9MSBzdGVwPTEyNyBzaXplPTIgb2Zmc2V0PTEyNwpoZGFjMDog CmhkYWMwOiAgICAgICAgICAgICBuaWQ6IDIyIFtESVNBQkxFRF0KaGRhYzA6ICAgICAgICAgICAg TmFtZTogYXVkaW8gb3V0cHV0CmhkYWMwOiAgICAgIFdpZGdldCBjYXA6IDB4MDAwZDBjMDUKaGRh YzA6ICAgICAgICAgICAgICAgICAgTFJTV0FQIFBXUiBTVEVSRU8KaGRhYzA6ICAgICAgU3RyZWFt IGNhcDogMHgwMDAwMDAwMQpoZGFjMDogICAgICAgICAgICAgICAgICBQQ00KaGRhYzA6ICAgICAg ICAgUENNIGNhcDogMHgwMDBlMDVlMApoZGFjMDogICAgICAgICAgICAgICAgICAxNiAyMCAyNCBi aXRzLCA0NCA0OCA4OCA5NiAxOTIgS0h6CmhkYWMwOiAgICAgIE91dHB1dCBhbXA6IDB4ODAwMjdm N2YKaGRhYzA6ICAgICAgICAgICAgICAgICAgbXV0ZT0xIHN0ZXA9MTI3IHNpemU9MiBvZmZzZXQ9 MTI3CmhkYWMwOiAKaGRhYzA6ICAgICAgICAgICAgIG5pZDogMjMgW0RJU0FCTEVEXQpoZGFjMDog ICAgICAgICAgICBOYW1lOiBhdWRpbyBvdXRwdXQKaGRhYzA6ICAgICAgV2lkZ2V0IGNhcDogMHgw MDBkMGMwNQpoZGFjMDogICAgICAgICAgICAgICAgICBMUlNXQVAgUFdSIFNURVJFTwpoZGFjMDog ICAgICBTdHJlYW0gY2FwOiAweDAwMDAwMDAxCmhkYWMwOiAgICAgICAgICAgICAgICAgIFBDTQpo ZGFjMDogICAgICAgICBQQ00gY2FwOiAweDAwMGUwNWUwCmhkYWMwOiAgICAgICAgICAgICAgICAg IDE2IDIwIDI0IGJpdHMsIDQ0IDQ4IDg4IDk2IDE5MiBLSHoKaGRhYzA6ICAgICAgT3V0cHV0IGFt cDogMHg4MDAyN2Y3ZgpoZGFjMDogICAgICAgICAgICAgICAgICBtdXRlPTEgc3RlcD0xMjcgc2l6 ZT0yIG9mZnNldD0xMjcKaGRhYzA6IApoZGFjMDogICAgICAgICAgICAgbmlkOiAyNCBbRElTQUJM RURdCmhkYWMwOiAgICAgICAgICAgIE5hbWU6IHZlbmRvciB3aWRnZXQKaGRhYzA6ICAgICAgV2lk Z2V0IGNhcDogMHgwMGZkMGMwNQpoZGFjMDogICAgICAgICAgICAgICAgICBMUlNXQVAgUFdSIFNU RVJFTwpoZGFjMDogICAgICBPdXRwdXQgYW1wOiAweDgwMDI3ZjdmCmhkYWMwOiAgICAgICAgICAg ICAgICAgIG11dGU9MSBzdGVwPTEyNyBzaXplPTIgb2Zmc2V0PTEyNwpoZGFjMDogCmhkYWMwOiAg ICAgICAgICAgICBuaWQ6IDI1IFtESVNBQkxFRF0KaGRhYzA6ICAgICAgICAgICAgTmFtZTogdmVu ZG9yIHdpZGdldApoZGFjMDogICAgICBXaWRnZXQgY2FwOiAweDAwZmQwYzA1CmhkYWMwOiAgICAg ICAgICAgICAgICAgIExSU1dBUCBQV1IgU1RFUkVPCmhkYWMwOiAgICAgIE91dHB1dCBhbXA6IDB4 ODAwMjdmN2YKaGRhYzA6ICAgICAgICAgICAgICAgICAgbXV0ZT0xIHN0ZXA9MTI3IHNpemU9MiBv ZmZzZXQ9MTI3CmhkYWMwOiAKaGRhYzA6ICAgICAgICAgICAgIG5pZDogMjYKaGRhYzA6ICAgICAg ICAgICAgTmFtZTogYXVkaW8gaW5wdXQKaGRhYzA6ICAgICAgV2lkZ2V0IGNhcDogMHgwMDFkMDU0 MQpoZGFjMDogICAgICAgICAgICAgICAgICBQV1IgUFJPQyBTVEVSRU8KaGRhYzA6ICAgICBBc3Nv Y2lhdGlvbjogMSAoMHgwMDAwMDAwMSkKaGRhYzA6ICAgICAgU3RyZWFtIGNhcDogMHgwMDAwMDAw MQpoZGFjMDogICAgICAgICAgICAgICAgICBQQ00KaGRhYzA6ICAgICAgICAgUENNIGNhcDogMHgw MDBlMDVlMApoZGFjMDogICAgICAgICAgICAgICAgICAxNiAyMCAyNCBiaXRzLCA0NCA0OCA4OCA5 NiAxOTIgS0h6CmhkYWMwOiAgICAgY29ubmVjdGlvbnM6IDEKaGRhYzA6ICAgICAgICAgICB8Cmhk YWMwOiAgICAgICAgICAgKyA8LSBuaWQ9MzIgW2F1ZGlvIHNlbGVjdG9yXQpoZGFjMDogCmhkYWMw OiAgICAgICAgICAgICBuaWQ6IDI3IFtESVNBQkxFRF0KaGRhYzA6ICAgICAgICAgICAgTmFtZTog YXVkaW8gaW5wdXQKaGRhYzA6ICAgICAgV2lkZ2V0IGNhcDogMHgwMDFkMDU0MQpoZGFjMDogICAg ICAgICAgICAgICAgICBQV1IgUFJPQyBTVEVSRU8KaGRhYzA6ICAgICAgU3RyZWFtIGNhcDogMHgw MDAwMDAwMQpoZGFjMDogICAgICAgICAgICAgICAgICBQQ00KaGRhYzA6ICAgICAgICAgUENNIGNh cDogMHgwMDBlMDVlMApoZGFjMDogICAgICAgICAgICAgICAgICAxNiAyMCAyNCBiaXRzLCA0NCA0 OCA4OCA5NiAxOTIgS0h6CmhkYWMwOiAgICAgY29ubmVjdGlvbnM6IDEKaGRhYzA6ICAgICAgICAg ICB8CmhkYWMwOiAgICAgICAgICAgKyA8LSBuaWQ9MzMgW2F1ZGlvIHNlbGVjdG9yXSBbRElTQUJM RURdCmhkYWMwOiAKaGRhYzA6ICAgICAgICAgICAgIG5pZDogMjgKaGRhYzA6ICAgICAgICAgICAg TmFtZTogYmVlcCB3aWRnZXQKaGRhYzA6ICAgICAgV2lkZ2V0IGNhcDogMHgwMDcwMDAwYwpoZGFj MDogICAgIEFzc29jaWF0aW9uOiAtMiAoMHgwMDAwMDAwMCkKaGRhYzA6ICAgICAgICAgICAgIE9T Uzogc3BlYWtlciAoc3BlYWtlcikKaGRhYzA6ICAgICAgT3V0cHV0IGFtcDogMHg4MDE3MDMwMwpo ZGFjMDogICAgICAgICAgICAgICAgICBtdXRlPTEgc3RlcD0zIHNpemU9MjMgb2Zmc2V0PTMKaGRh YzA6IApoZGFjMDogICAgICAgICAgICAgbmlkOiAyOSBbRElTQUJMRURdCmhkYWMwOiAgICAgICAg ICAgIE5hbWU6IGF1ZGlvIG1peGVyCmhkYWMwOiAgICAgIFdpZGdldCBjYXA6IDB4MDAyMDAxMGIK aGRhYzA6ICAgICAgICAgICAgICAgICAgU1RFUkVPCmhkYWMwOiAgICAgICBJbnB1dCBhbXA6IDB4 ODAwNTFmMTcKaGRhYzA6ICAgICAgICAgICAgICAgICAgbXV0ZT0xIHN0ZXA9MzEgc2l6ZT01IG9m ZnNldD0yMwpoZGFjMDogICAgIGNvbm5lY3Rpb25zOiA1CmhkYWMwOiAgICAgICAgICAgfApoZGFj MDogICAgICAgICAgICsgW0RJU0FCTEVEXSA8LSBuaWQ9NDAgW2F1ZGlvIHNlbGVjdG9yXSBbRElT QUJMRURdCmhkYWMwOiAgICAgICAgICAgKyBbRElTQUJMRURdIDwtIG5pZD00MSBbYXVkaW8gc2Vs ZWN0b3JdIFtESVNBQkxFRF0KaGRhYzA6ICAgICAgICAgICArIFtESVNBQkxFRF0gPC0gbmlkPTQy IFthdWRpbyBzZWxlY3Rvcl0gW0RJU0FCTEVEXQpoZGFjMDogICAgICAgICAgICsgW0RJU0FCTEVE XSA8LSBuaWQ9NDMgW2F1ZGlvIHNlbGVjdG9yXSBbRElTQUJMRURdCmhkYWMwOiAgICAgICAgICAg KyBbRElTQUJMRURdIDwtIG5pZD0xOCBbcGluOiBMaW5lLW91dCAoTm9uZSldIFtESVNBQkxFRF0K aGRhYzA6IApoZGFjMDogICAgICAgICAgICAgbmlkOiAzMCBbRElTQUJMRURdCmhkYWMwOiAgICAg ICAgICAgIE5hbWU6IGF1ZGlvIHNlbGVjdG9yCmhkYWMwOiAgICAgIFdpZGdldCBjYXA6IDB4MDAz MDAxMGQKaGRhYzA6ICAgICAgICAgICAgICAgICAgU1RFUkVPCmhkYWMwOiAgICAgIE91dHB1dCBh bXA6IDB4ODAwNTFmMWYKaGRhYzA6ICAgICAgICAgICAgICAgICAgbXV0ZT0xIHN0ZXA9MzEgc2l6 ZT01IG9mZnNldD0zMQpoZGFjMDogICAgIGNvbm5lY3Rpb25zOiAxCmhkYWMwOiAgICAgICAgICAg fApoZGFjMDogICAgICAgICAgICsgPC0gbmlkPTI5IFthdWRpbyBtaXhlcl0gW0RJU0FCTEVEXQpo ZGFjMDogCmhkYWMwOiAgICAgICAgICAgICBuaWQ6IDMxIFtESVNBQkxFRF0KaGRhYzA6ICAgICAg ICAgICAgTmFtZTogdm9sdW1lIHdpZGdldApoZGFjMDogICAgICBXaWRnZXQgY2FwOiAweDAwNjAw MDAwCmhkYWMwOiAgICAgY29ubmVjdGlvbnM6IDMKaGRhYzA6ICAgICAgICAgICB8CmhkYWMwOiAg ICAgICAgICAgKyA8LSBuaWQ9MjEgW2F1ZGlvIG91dHB1dF0gKHNlbGVjdGVkKQpoZGFjMDogICAg ICAgICAgICsgPC0gbmlkPTIyIFthdWRpbyBvdXRwdXRdIFtESVNBQkxFRF0KaGRhYzA6ICAgICAg ICAgICArIDwtIG5pZD0yMyBbYXVkaW8gb3V0cHV0XSBbRElTQUJMRURdCmhkYWMwOiAKaGRhYzA6 ICAgICAgICAgICAgIG5pZDogMzIKaGRhYzA6ICAgICAgICAgICAgTmFtZTogYXVkaW8gc2VsZWN0 b3IKaGRhYzA6ICAgICAgV2lkZ2V0IGNhcDogMHgwMDMwMDkwZApoZGFjMDogICAgICAgICAgICAg ICAgICBMUlNXQVAgU1RFUkVPCmhkYWMwOiAgICAgQXNzb2NpYXRpb246IDEgKDB4MDAwMDAwMDEp CmhkYWMwOiAgICAgICAgICAgICBPU1M6IG1vbml0b3IKaGRhYzA6ICAgICAgT3V0cHV0IGFtcDog MHg4MDA1MGYwMApoZGFjMDogICAgICAgICAgICAgICAgICBtdXRlPTEgc3RlcD0xNSBzaXplPTUg b2Zmc2V0PTAKaGRhYzA6ICAgICBjb25uZWN0aW9uczogMTIKaGRhYzA6ICAgICAgICAgICB8Cmhk YWMwOiAgICAgICAgICAgKyBbRElTQUJMRURdIDwtIG5pZD0xMCBbcGluOiBIZWFkcGhvbmVzIChC bGFjayBKYWNrKV0KaGRhYzA6ICAgICAgICAgICArIFtESVNBQkxFRF0gPC0gbmlkPTExIFtwaW46 IExpbmUtb3V0IChOb25lKV0gW0RJU0FCTEVEXQpoZGFjMDogICAgICAgICAgICsgW0RJU0FCTEVE XSA8LSBuaWQ9MTIgW3BpbjogTGluZS1vdXQgKE5vbmUpXSBbRElTQUJMRURdCmhkYWMwOiAgICAg ICAgICAgKyBbRElTQUJMRURdIDwtIG5pZD0xMyBbcGluOiBTcGVha2VyIChGaXhlZCldCmhkYWMw OiAgICAgICAgICAgKyBbRElTQUJMRURdIDwtIG5pZD0xNCBbcGluOiBMaW5lLW91dCAoTm9uZSld IFtESVNBQkxFRF0KaGRhYzA6ICAgICAgICAgICArIFtESVNBQkxFRF0gPC0gbmlkPTE1IFtwaW46 IExpbmUtb3V0IChOb25lKV0gW0RJU0FCTEVEXQpoZGFjMDogICAgICAgICAgICsgW0RJU0FCTEVE XSA8LSBuaWQ9MTYgW3BpbjogTGluZS1vdXQgKE5vbmUpXSBbRElTQUJMRURdCmhkYWMwOiAgICAg ICAgICAgKyBbRElTQUJMRURdIDwtIG5pZD0xNyBbcGluOiBMaW5lLW91dCAoTm9uZSldIFtESVNB QkxFRF0KaGRhYzA6ICAgICAgICAgICArIFtESVNBQkxFRF0gPC0gbmlkPTE4IFtwaW46IExpbmUt b3V0IChOb25lKV0gW0RJU0FCTEVEXQpoZGFjMDogICAgICAgICAgICsgPC0gbmlkPTE5IFtwaW46 IE1pYyAoRml4ZWQpXSAoc2VsZWN0ZWQpCmhkYWMwOiAgICAgICAgICAgKyBbRElTQUJMRURdIDwt IG5pZD0yMCBbcGluOiBMaW5lLW91dCAoTm9uZSldIFtESVNBQkxFRF0KaGRhYzA6ICAgICAgICAg ICArIFtESVNBQkxFRF0gPC0gbmlkPTI5IFthdWRpbyBtaXhlcl0gW0RJU0FCTEVEXQpoZGFjMDog CmhkYWMwOiAgICAgICAgICAgICBuaWQ6IDMzIFtESVNBQkxFRF0KaGRhYzA6ICAgICAgICAgICAg TmFtZTogYXVkaW8gc2VsZWN0b3IKaGRhYzA6ICAgICAgV2lkZ2V0IGNhcDogMHgwMDMwMDkwZApo ZGFjMDogICAgICAgICAgICAgICAgICBMUlNXQVAgU1RFUkVPCmhkYWMwOiAgICAgIE91dHB1dCBh bXA6IDB4ODAwNTBmMDAKaGRhYzA6ICAgICAgICAgICAgICAgICAgbXV0ZT0xIHN0ZXA9MTUgc2l6 ZT01IG9mZnNldD0wCmhkYWMwOiAgICAgY29ubmVjdGlvbnM6IDEyCmhkYWMwOiAgICAgICAgICAg fApoZGFjMDogICAgICAgICAgICsgPC0gbmlkPTEwIFtwaW46IEhlYWRwaG9uZXMgKEJsYWNrIEph Y2spXSAoc2VsZWN0ZWQpCmhkYWMwOiAgICAgICAgICAgKyBbRElTQUJMRURdIDwtIG5pZD0xMSBb cGluOiBMaW5lLW91dCAoTm9uZSldIFtESVNBQkxFRF0KaGRhYzA6ICAgICAgICAgICArIFtESVNB QkxFRF0gPC0gbmlkPTEyIFtwaW46IExpbmUtb3V0IChOb25lKV0gW0RJU0FCTEVEXQpoZGFjMDog ICAgICAgICAgICsgPC0gbmlkPTEzIFtwaW46IFNwZWFrZXIgKEZpeGVkKV0KaGRhYzA6ICAgICAg ICAgICArIFtESVNBQkxFRF0gPC0gbmlkPTE0IFtwaW46IExpbmUtb3V0IChOb25lKV0gW0RJU0FC TEVEXQpoZGFjMDogICAgICAgICAgICsgW0RJU0FCTEVEXSA8LSBuaWQ9MTUgW3BpbjogTGluZS1v dXQgKE5vbmUpXSBbRElTQUJMRURdCmhkYWMwOiAgICAgICAgICAgKyBbRElTQUJMRURdIDwtIG5p ZD0xNiBbcGluOiBMaW5lLW91dCAoTm9uZSldIFtESVNBQkxFRF0KaGRhYzA6ICAgICAgICAgICAr IFtESVNBQkxFRF0gPC0gbmlkPTE3IFtwaW46IExpbmUtb3V0IChOb25lKV0gW0RJU0FCTEVEXQpo ZGFjMDogICAgICAgICAgICsgW0RJU0FCTEVEXSA8LSBuaWQ9MTggW3BpbjogTGluZS1vdXQgKE5v bmUpXSBbRElTQUJMRURdCmhkYWMwOiAgICAgICAgICAgKyA8LSBuaWQ9MTkgW3BpbjogTWljIChG aXhlZCldCmhkYWMwOiAgICAgICAgICAgKyBbRElTQUJMRURdIDwtIG5pZD0yMCBbcGluOiBMaW5l LW91dCAoTm9uZSldIFtESVNBQkxFRF0KaGRhYzA6ICAgICAgICAgICArIDwtIG5pZD0yOSBbYXVk aW8gbWl4ZXJdIFtESVNBQkxFRF0KaGRhYzA6IApoZGFjMDogICAgICAgICAgICAgbmlkOiAzNCBb RElTQUJMRURdCmhkYWMwOiAgICAgICAgICAgIE5hbWU6IHBpbjogTGluZS1vdXQgKE5vbmUpCmhk YWMwOiAgICAgIFdpZGdldCBjYXA6IDB4MDA0MDAzMDEKaGRhYzA6ICAgICAgICAgICAgICAgICAg RElHSVRBTCBTVEVSRU8KaGRhYzA6ICAgICAgICAgUGluIGNhcDogMHgwMDAwMDAxMApoZGFjMDog ICAgICAgICAgICAgICAgICBPVVQKaGRhYzA6ICAgICAgUGluIGNvbmZpZzogMHg0MDAwMDFmOApo ZGFjMDogICAgIFBpbiBjb250cm9sOiAweDAwMDAwMDAwCmhkYWMwOiAgICAgY29ubmVjdGlvbnM6 IDMKaGRhYzA6ICAgICAgICAgICB8CmhkYWMwOiAgICAgICAgICAgKyA8LSBuaWQ9MzcgW2F1ZGlv IG91dHB1dF0gW0RJU0FCTEVEXSAoc2VsZWN0ZWQpCmhkYWMwOiAgICAgICAgICAgKyA8LSBuaWQ9 MzIgW2F1ZGlvIHNlbGVjdG9yXQpoZGFjMDogICAgICAgICAgICsgPC0gbmlkPTMzIFthdWRpbyBz ZWxlY3Rvcl0gW0RJU0FCTEVEXQpoZGFjMDogCmhkYWMwOiAgICAgICAgICAgICBuaWQ6IDM1IFtE SVNBQkxFRF0KaGRhYzA6ICAgICAgICAgICAgTmFtZTogcGluOiBMaW5lLW91dCAoTm9uZSkKaGRh YzA6ICAgICAgV2lkZ2V0IGNhcDogMHgwMDQwMDMwMQpoZGFjMDogICAgICAgICAgICAgICAgICBE SUdJVEFMIFNURVJFTwpoZGFjMDogICAgICAgICBQaW4gY2FwOiAweDAwMDAwMDEwCmhkYWMwOiAg ICAgICAgICAgICAgICAgIE9VVApoZGFjMDogICAgICBQaW4gY29uZmlnOiAweDQwMDAwMWY5Cmhk YWMwOiAgICAgUGluIGNvbnRyb2w6IDB4MDAwMDAwMDAKaGRhYzA6ICAgICBjb25uZWN0aW9uczog MwpoZGFjMDogICAgICAgICAgIHwKaGRhYzA6ICAgICAgICAgICArIDwtIG5pZD0zOCBbYXVkaW8g b3V0cHV0XSBbRElTQUJMRURdIChzZWxlY3RlZCkKaGRhYzA6ICAgICAgICAgICArIDwtIG5pZD0z MiBbYXVkaW8gc2VsZWN0b3JdCmhkYWMwOiAgICAgICAgICAgKyA8LSBuaWQ9MzMgW2F1ZGlvIHNl bGVjdG9yXSBbRElTQUJMRURdCmhkYWMwOiAKaGRhYzA6ICAgICAgICAgICAgIG5pZDogMzYgW0RJ U0FCTEVEXQpoZGFjMDogICAgICAgICAgICBOYW1lOiBwaW46IExpbmUtb3V0IChOb25lKQpoZGFj MDogICAgICBXaWRnZXQgY2FwOiAweDAwNDAwNjgxCmhkYWMwOiAgICAgICAgICAgICAgICAgIFBX UiBESUdJVEFMIFVOU09MIFNURVJFTwpoZGFjMDogICAgICAgICBQaW4gY2FwOiAweDAwMDEwMDI0 CmhkYWMwOiAgICAgICAgICAgICAgICAgIFBEQyBJTiBFQVBECmhkYWMwOiAgICAgIFBpbiBjb25m aWc6IDB4NDAwMDAxZmEKaGRhYzA6ICAgICBQaW4gY29udHJvbDogMHgwMDAwMDAwMApoZGFjMDog ICAgICAgICAgICBFQVBEOiAweDAwMDAwMDAyCmhkYWMwOiAKaGRhYzA6ICAgICAgICAgICAgIG5p ZDogMzcgW0RJU0FCTEVEXQpoZGFjMDogICAgICAgICAgICBOYW1lOiBhdWRpbyBvdXRwdXQKaGRh YzA6ICAgICAgV2lkZ2V0IGNhcDogMHgwMDA0MDIxZApoZGFjMDogICAgICAgICAgICAgICAgICBE SUdJVEFMIFNURVJFTwpoZGFjMDogICAgICBTdHJlYW0gY2FwOiAweDAwMDAwMDA1CmhkYWMwOiAg ICAgICAgICAgICAgICAgIEFDMyBQQ00KaGRhYzA6ICAgICAgICAgUENNIGNhcDogMHgwMDBlMDVl MApoZGFjMDogICAgICAgICAgICAgICAgICAxNiAyMCAyNCBiaXRzLCA0NCA0OCA4OCA5NiAxOTIg S0h6CmhkYWMwOiAgICAgIE91dHB1dCBhbXA6IDB4ODAwMDAwMDAKaGRhYzA6ICAgICAgICAgICAg ICAgICAgbXV0ZT0xIHN0ZXA9MCBzaXplPTAgb2Zmc2V0PTAKaGRhYzA6IApoZGFjMDogICAgICAg ICAgICAgbmlkOiAzOCBbRElTQUJMRURdCmhkYWMwOiAgICAgICAgICAgIE5hbWU6IGF1ZGlvIG91 dHB1dApoZGFjMDogICAgICBXaWRnZXQgY2FwOiAweDAwMDQwMjFkCmhkYWMwOiAgICAgICAgICAg ICAgICAgIERJR0lUQUwgU1RFUkVPCmhkYWMwOiAgICAgIFN0cmVhbSBjYXA6IDB4MDAwMDAwMDUK aGRhYzA6ICAgICAgICAgICAgICAgICAgQUMzIFBDTQpoZGFjMDogICAgICAgICBQQ00gY2FwOiAw eDAwMGUwNWUwCmhkYWMwOiAgICAgICAgICAgICAgICAgIDE2IDIwIDI0IGJpdHMsIDQ0IDQ4IDg4 IDk2IDE5MiBLSHoKaGRhYzA6ICAgICAgT3V0cHV0IGFtcDogMHg4MDAwMDAwMApoZGFjMDogICAg ICAgICAgICAgICAgICBtdXRlPTEgc3RlcD0wIHNpemU9MCBvZmZzZXQ9MApoZGFjMDogCmhkYWMw OiAgICAgICAgICAgICBuaWQ6IDM5IFtESVNBQkxFRF0KaGRhYzA6ICAgICAgICAgICAgTmFtZTog YXVkaW8gaW5wdXQKaGRhYzA6ICAgICAgV2lkZ2V0IGNhcDogMHgwMDE0MDMxYgpoZGFjMDogICAg ICAgICAgICAgICAgICBESUdJVEFMIFNURVJFTwpoZGFjMDogICAgICBTdHJlYW0gY2FwOiAweDAw MDAwMDA1CmhkYWMwOiAgICAgICAgICAgICAgICAgIEFDMyBQQ00KaGRhYzA6ICAgICAgICAgUENN IGNhcDogMHgwMDBlMDE2MApoZGFjMDogICAgICAgICAgICAgICAgICAxNiAyMCAyNCBiaXRzLCA0 NCA0OCA5NiBLSHoKaGRhYzA6ICAgICAgIElucHV0IGFtcDogMHg4MDAwMDAwMApoZGFjMDogICAg ICAgICAgICAgICAgICBtdXRlPTEgc3RlcD0wIHNpemU9MCBvZmZzZXQ9MApoZGFjMDogICAgIGNv bm5lY3Rpb25zOiAxCmhkYWMwOiAgICAgICAgICAgfApoZGFjMDogICAgICAgICAgICsgW0RJU0FC TEVEXSA8LSBuaWQ9MzYgW3BpbjogTGluZS1vdXQgKE5vbmUpXSBbRElTQUJMRURdCmhkYWMwOiAK aGRhYzA6ICAgICAgICAgICAgIG5pZDogNDAgW0RJU0FCTEVEXQpoZGFjMDogICAgICAgICAgICBO YW1lOiBhdWRpbyBzZWxlY3RvcgpoZGFjMDogICAgICBXaWRnZXQgY2FwOiAweDAwMzAwMTAxCmhk YWMwOiAgICAgICAgICAgICAgICAgIFNURVJFTwpoZGFjMDogICAgIGNvbm5lY3Rpb25zOiA0Cmhk YWMwOiAgICAgICAgICAgfApoZGFjMDogICAgICAgICAgICsgPC0gbmlkPTEwIFtwaW46IEhlYWRw aG9uZXMgKEJsYWNrIEphY2spXSAoc2VsZWN0ZWQpCmhkYWMwOiAgICAgICAgICAgKyBbRElTQUJM RURdIDwtIG5pZD0xMSBbcGluOiBMaW5lLW91dCAoTm9uZSldIFtESVNBQkxFRF0KaGRhYzA6ICAg ICAgICAgICArIDwtIG5pZD0xMyBbcGluOiBTcGVha2VyIChGaXhlZCldCmhkYWMwOiAgICAgICAg ICAgKyBbRElTQUJMRURdIDwtIG5pZD0xNSBbcGluOiBMaW5lLW91dCAoTm9uZSldIFtESVNBQkxF RF0KaGRhYzA6IApoZGFjMDogICAgICAgICAgICAgbmlkOiA0MSBbRElTQUJMRURdCmhkYWMwOiAg ICAgICAgICAgIE5hbWU6IGF1ZGlvIHNlbGVjdG9yCmhkYWMwOiAgICAgIFdpZGdldCBjYXA6IDB4 MDAzMDAxMDEKaGRhYzA6ICAgICAgICAgICAgICAgICAgU1RFUkVPCmhkYWMwOiAgICAgY29ubmVj dGlvbnM6IDQKaGRhYzA6ICAgICAgICAgICB8CmhkYWMwOiAgICAgICAgICAgKyA8LSBuaWQ9MTAg W3BpbjogSGVhZHBob25lcyAoQmxhY2sgSmFjayldIChzZWxlY3RlZCkKaGRhYzA6ICAgICAgICAg ICArIFtESVNBQkxFRF0gPC0gbmlkPTE0IFtwaW46IExpbmUtb3V0IChOb25lKV0gW0RJU0FCTEVE XQpoZGFjMDogICAgICAgICAgICsgW0RJU0FCTEVEXSA8LSBuaWQ9MTYgW3BpbjogTGluZS1vdXQg KE5vbmUpXSBbRElTQUJMRURdCmhkYWMwOiAgICAgICAgICAgKyBbRElTQUJMRURdIDwtIG5pZD0x NyBbcGluOiBMaW5lLW91dCAoTm9uZSldIFtESVNBQkxFRF0KaGRhYzA6IApoZGFjMDogICAgICAg ICAgICAgbmlkOiA0MiBbRElTQUJMRURdCmhkYWMwOiAgICAgICAgICAgIE5hbWU6IGF1ZGlvIHNl bGVjdG9yCmhkYWMwOiAgICAgIFdpZGdldCBjYXA6IDB4MDAzMDAxMDEKaGRhYzA6ICAgICAgICAg ICAgICAgICAgU1RFUkVPCmhkYWMwOiAgICAgY29ubmVjdGlvbnM6IDQKaGRhYzA6ICAgICAgICAg ICB8CmhkYWMwOiAgICAgICAgICAgKyBbRElTQUJMRURdIDwtIG5pZD0xMSBbcGluOiBMaW5lLW91 dCAoTm9uZSldIFtESVNBQkxFRF0gKHNlbGVjdGVkKQpoZGFjMDogICAgICAgICAgICsgW0RJU0FC TEVEXSA8LSBuaWQ9MTIgW3BpbjogTGluZS1vdXQgKE5vbmUpXSBbRElTQUJMRURdCmhkYWMwOiAg ICAgICAgICAgKyBbRElTQUJMRURdIDwtIG5pZD0xNiBbcGluOiBMaW5lLW91dCAoTm9uZSldIFtE SVNBQkxFRF0KaGRhYzA6ICAgICAgICAgICArIFtESVNBQkxFRF0gPC0gbmlkPTE3IFtwaW46IExp bmUtb3V0IChOb25lKV0gW0RJU0FCTEVEXQpoZGFjMDogCmhkYWMwOiAgICAgICAgICAgICBuaWQ6 IDQzIFtESVNBQkxFRF0KaGRhYzA6ICAgICAgICAgICAgTmFtZTogYXVkaW8gc2VsZWN0b3IKaGRh YzA6ICAgICAgV2lkZ2V0IGNhcDogMHgwMDMwMDEwMQpoZGFjMDogICAgICAgICAgICAgICAgICBT VEVSRU8KaGRhYzA6ICAgICBjb25uZWN0aW9uczogMwpoZGFjMDogICAgICAgICAgIHwKaGRhYzA6 ICAgICAgICAgICArIDwtIG5pZD0yMSBbYXVkaW8gb3V0cHV0XSAoc2VsZWN0ZWQpCmhkYWMwOiAg ICAgICAgICAgKyA8LSBuaWQ9MjIgW2F1ZGlvIG91dHB1dF0gW0RJU0FCTEVEXQpoZGFjMDogICAg ICAgICAgICsgPC0gbmlkPTIzIFthdWRpbyBvdXRwdXRdIFtESVNBQkxFRF0KaGRhYzA6IApoZGFj MDogUHJvY2Vzc2luZyBhdWRpbyBGRyBjYWQ9MSBuaWQ9MS4uLgpoZGFjMDogR1BJTzogMHgwMDAw MDAwMCBOdW1HUElPPTAgTnVtR1BPPTAgTnVtR1BJPTAgR1BJV2FrZT0wIEdQSVVuc29sPTAKaGRh YzA6ICBuaWQgMyAweDE4NTYwMDEwIGFzICAxIHNlcSAgMCAgIERpZ2l0YWwtb3V0ICBKYWNrIGph Y2sgIDYgbG9jIDI0IGNvbG9yIFVua25vd24gbWlzYyAwCmhkYWMwOiBQYXRjaGVkIHBpbnMgY29u ZmlndXJhdGlvbjoKaGRhYzA6ICBuaWQgMyAweDE4NTYwMDEwIGFzICAxIHNlcSAgMCAgIERpZ2l0 YWwtb3V0ICBKYWNrIGphY2sgIDYgbG9jIDI0IGNvbG9yIFVua25vd24gbWlzYyAwCmhkYWMwOiAx IGFzc29jaWF0aW9ucyBmb3VuZDoKaGRhYzA6IEFzc29jaWF0aW9uIDAgKDEpIG91dDoKaGRhYzA6 ICBQaW4gbmlkPTMgc2VxPTAKaGRhYzA6IFRyYWNpbmcgYXNzb2NpYXRpb24gMCAoMSkKaGRhYzA6 ICBQaW4gMyB0cmFjZWQgdG8gREFDIDIKaGRhYzA6IEFzc29jaWF0aW9uIDAgKDEpIHRyYWNlIHN1 Y2NlZWRlZApoZGFjMDogVHJhY2luZyBpbnB1dCBtb25pdG9yCmhkYWMwOiBUcmFjaW5nIG90aGVy IGlucHV0IG1vbml0b3JzCmhkYWMwOiBUcmFjaW5nIGJlZXBlcgpoZGFjMDogRkcgY29uZmlnL3F1 aXJrczogZm9yY2VzdGVyZW8gaXZyZWY1MCBpdnJlZjgwIGl2cmVmMTAwIGl2cmVmCmhkYWMwOiAK aGRhYzA6ICstLS0tLS0tLS0tLS0tLS0tLS0tKwpoZGFjMDogfCBEVU1QSU5HIEhEQSBOT0RFUyB8 CmhkYWMwOiArLS0tLS0tLS0tLS0tLS0tLS0tLSsKaGRhYzA6IApoZGFjMDogRGVmYXVsdCBQYXJh bWV0ZXIKaGRhYzA6IC0tLS0tLS0tLS0tLS0tLS0tCmhkYWMwOiAgICAgICAgICBJTiBhbXA6IDB4 MDAwMDAwMDAKaGRhYzA6ICAgICAgICAgT1VUIGFtcDogMHgwMDAwMDAwMApoZGFjMDogCmhkYWMw OiAgICAgICAgICAgICBuaWQ6IDIKaGRhYzA6ICAgICAgICAgICAgTmFtZTogYXVkaW8gb3V0cHV0 CmhkYWMwOiAgICAgIFdpZGdldCBjYXA6IDB4MDAwMDYyMTEKaGRhYzA6ICAgICAgICAgICAgICAg ICAgRElHSVRBTCA4Q0gKaGRhYzA6ICAgICBBc3NvY2lhdGlvbjogMCAoMHgwMDAwMDAwMSkKaGRh YzA6ICAgICAgICAgICAgIE9TUzogcGNtIChwY20pCmhkYWMwOiAgICAgIFN0cmVhbSBjYXA6IDB4 MDAwMDAwMDUKaGRhYzA6ICAgICAgICAgICAgICAgICAgQUMzIFBDTQpoZGFjMDogICAgICAgICBQ Q00gY2FwOiAweDAwMWUwN2YwCmhkYWMwOiAgICAgICAgICAgICAgICAgIDE2IDIwIDI0IDMyIGJp dHMsIDMyIDQ0IDQ4IDg4IDk2IDE3NiAxOTIgS0h6CmhkYWMwOiAKaGRhYzA6ICAgICAgICAgICAg IG5pZDogMwpoZGFjMDogICAgICAgICAgICBOYW1lOiBwaW46IERpZ2l0YWwtb3V0IChKYWNrKQpo ZGFjMDogICAgICBXaWRnZXQgY2FwOiAweDAwNDA3MzlkCmhkYWMwOiAgICAgICAgICAgICAgICAg IERJR0lUQUwgVU5TT0wgOENICmhkYWMwOiAgICAgQXNzb2NpYXRpb246IDAgKDB4MDAwMDAwMDEp CmhkYWMwOiAgICAgICAgIFBpbiBjYXA6IDB4MDAwMDAwOTQKaGRhYzA6ICAgICAgICAgICAgICAg ICAgUERDIE9VVCBIRE1JCmhkYWMwOiAgICAgIFBpbiBjb25maWc6IDB4MTg1NjAwMTAKaGRhYzA6 ICAgICBQaW4gY29udHJvbDogMHgwMDAwMDA0MCBPVVQKaGRhYzA6ICAgICAgT3V0cHV0IGFtcDog MHg4MDAwMDAwMApoZGFjMDogICAgICAgICAgICAgICAgICBtdXRlPTEgc3RlcD0wIHNpemU9MCBv ZmZzZXQ9MApoZGFjMDogICAgIGNvbm5lY3Rpb25zOiAxCmhkYWMwOiAgICAgICAgICAgfApoZGFj MDogICAgICAgICAgICsgPC0gbmlkPTIgW2F1ZGlvIG91dHB1dF0KaGRhYzA6IApwY20wOiA8SERB IElEVCA5MkhENzNDMSBQQ00gIzAgQW5hbG9nPiBhdCBjYWQgMCBuaWQgMSBvbiBoZGFjMApwY20w OiArLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCnBjbTA6IHwgRFVNUElO RyBQQ00gUGxheWJhY2svUmVjb3JkIENoYW5uZWxzIHwKcGNtMDogKy0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tKwpwY20wOiAKcGNtMDogUGxheWJhY2s6CnBjbTA6IApwY20w OiAgICAgIFN0cmVhbSBjYXA6IDB4MDAwMDAwMDEKcGNtMDogICAgICAgICAgICAgICAgICBQQ00K cGNtMDogICAgICAgICBQQ00gY2FwOiAweDAwMGUwNWUwCnBjbTA6ICAgICAgICAgICAgICAgICAg MTYgMjAgMjQgYml0cywgNDQgNDggODggOTYgMTkyIEtIegpwY20wOiAgICAgICAgICAgICBEQUM6 IDIxCnBjbTA6IApwY20wOiBSZWNvcmQ6CnBjbTA6IApwY20wOiAgICAgIFN0cmVhbSBjYXA6IDB4 MDAwMDAwMDEKcGNtMDogICAgICAgICAgICAgICAgICBQQ00KcGNtMDogICAgICAgICBQQ00gY2Fw OiAweDAwMGUwNWUwCnBjbTA6ICAgICAgICAgICAgICAgICAgMTYgMjAgMjQgYml0cywgNDQgNDgg ODggOTYgMTkyIEtIegpwY20wOiAgICAgICAgICAgICBBREM6IDI2CnBjbTA6IApwY20wOiArLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKcGNtMDogfCBEVU1QSU5HIFBsYXliYWNrL1Jl Y29yZCBQYXRocyB8CnBjbTA6ICstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKwpwY20w OiAKcGNtMDogUGxheWJhY2s6CnBjbTA6IApwY20wOiAgICAgbmlkPTEzIFtwaW46IFNwZWFrZXIg KEZpeGVkKV0KcGNtMDogICAgICAgfApwY20wOiAgICAgICArIDwtIG5pZD0yMSBbYXVkaW8gb3V0 cHV0XSBbc3JjOiBwY21dCnBjbTA6IApwY20wOiAgICAgbmlkPTEwIFtwaW46IEhlYWRwaG9uZXMg KEJsYWNrIEphY2spXQpwY20wOiAgICAgICB8CnBjbTA6ICAgICAgICsgPC0gbmlkPTIxIFthdWRp byBvdXRwdXRdIFtzcmM6IHBjbV0KcGNtMDogCnBjbTA6IFJlY29yZDoKcGNtMDogCnBjbTA6ICAg ICBuaWQ9MjYgW2F1ZGlvIGlucHV0XQpwY20wOiAgICAgICB8CnBjbTA6ICAgICAgICsgPC0gbmlk PTMyIFthdWRpbyBzZWxlY3Rvcl0gW3NyYzogbW9uaXRvcl0KcGNtMDogICAgICAgICAgICAgIHwK cGNtMDogICAgICAgICAgICAgICsgPC0gbmlkPTE5IFtwaW46IE1pYyAoRml4ZWQpXSBbc3JjOiBt b25pdG9yXQpwY20wOiAKcGNtMDogKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCnBjbTA6IHwg RFVNUElORyBWb2x1bWUgQ29udHJvbHMgfApwY20wOiArLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LSsKcGNtMDogCnBjbTA6IE1hc3RlciBWb2x1bWUgKE9TUzogdm9sKQpwY20wOiAgICB8CnBjbTA6 ICAgICstIGN0bCAxMSAobmlkICAyMSBvdXQpOiAgICAtOTUvMGRCICgxMjggc3RlcHMpICsgbXV0 ZQpwY20wOiAKcGNtMDogUENNIFZvbHVtZSAoT1NTOiBwY20pCnBjbTA6ICAgIHwKcGNtMDogICAg Ky0gY3RsIDExIChuaWQgIDIxIG91dCk6ICAgIC05NS8wZEIgKDEyOCBzdGVwcykgKyBtdXRlCnBj bTA6IApwY20wOiBNaWNyb3Bob25lMiBWb2x1bWUgKE9TUzogbW9uaXRvcikKcGNtMDogICAgfApw Y20wOiAgICArLSBjdGwgIDkgKG5pZCAgMTkgb3V0KTogICAgMC8zMGRCICg0IHN0ZXBzKQpwY20w OiAKcGNtMDogU3BlYWtlci9CZWVwIFZvbHVtZSAoT1NTOiBzcGVha2VyKQpwY20wOiAgICB8CnBj bTA6ICAgICstIGN0bCAxNiAobmlkICAyOCBvdXQpOiAgICAtMTgvMGRCICg0IHN0ZXBzKSArIG11 dGUKcGNtMDogCnBjbTA6IFJlY29yZGluZyBMZXZlbCAoT1NTOiByZWMpCnBjbTA6ICAgIHwKcGNt MDogICAgKy0gY3RsIDIzIChuaWQgIDMyIG91dCk6ICAgIDAvMjJkQiAoMTYgc3RlcHMpICsgbXV0 ZQpwY20wOiAKcGNtMDogTWl4ZXIgInZvbCI6CnBjbTA6IE1peGVyICJiYXNzIjoKcGNtMDogTWl4 ZXIgInRyZWJsZSI6CnBjbTA6IE1peGVyICJwY20iOgpwY20wOiBNaXhlciAic3BlYWtlciI6CnBj bTA6IE1peGVyICJyZWMiOgpwY20wOiBNaXhlciAibW9uaXRvciI6CnBjbTA6IEVRIFRyZWJsZS9C YXNzIEVOQUJMRUQKcGNtMDogY2xvbmUgbWFuYWdlcjogZGVhZGxpbmU9NzUwbXMgZmxhZ3M9MHg4 MDAwMDAxZQpwY20wOiBzbmRidWZfc2V0bWFwIDEzZmZhMDAwMCwgNDAwMDsgMHhmZmZmZmY4MDc0 ZTAzMDAwIC0+IDEzZmZhMDAwMApwY20wOiBzbmRidWZfc2V0bWFwIDEzZmZiMDAwMCwgNDAwMDsg MHhmZmZmZmY4MDc0ZTEzMDAwIC0+IDEzZmZiMDAwMApwY20xOiA8SERBIEludGVsIEc0NSBIRE1J IFBDTSAjMCBIRE1JPiBhdCBjYWQgMSBuaWQgMSBvbiBoZGFjMApwY20xOiArLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCnBjbTE6IHwgRFVNUElORyBQQ00gUGxheWJhY2sv UmVjb3JkIENoYW5uZWxzIHwKcGNtMTogKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tKwpwY20xOiAKcGNtMTogUGxheWJhY2s6CnBjbTE6IApwY20xOiAgICAgIFN0cmVhbSBj YXA6IDB4MDAwMDAwMDUKcGNtMTogICAgICAgICAgICAgICAgICBBQzMgUENNCnBjbTE6ICAgICAg ICAgUENNIGNhcDogMHgwMDFlMDdmMApwY20xOiAgICAgICAgICAgICAgICAgIDE2IDIwIDI0IDMy IGJpdHMsIDMyIDQ0IDQ4IDg4IDk2IDE3NiAxOTIgS0h6CnBjbTE6ICAgICAgICAgICAgIERBQzog MgpwY20xOiAKcGNtMTogKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCnBjbTE6IHwg RFVNUElORyBQbGF5YmFjay9SZWNvcmQgUGF0aHMgfApwY20xOiArLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLSsKcGNtMTogCnBjbTE6IFBsYXliYWNrOgpwY20xOiAKcGNtMTogICAgIG5p ZD0zIFtwaW46IERpZ2l0YWwtb3V0IChKYWNrKV0KcGNtMTogICAgICAgfApwY20xOiAgICAgICAr IDwtIG5pZD0yIFthdWRpbyBvdXRwdXRdIFtzcmM6IHBjbV0KcGNtMTogCnBjbTE6ICstLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tKwpwY20xOiB8IERVTVBJTkcgVm9sdW1lIENvbnRyb2xzIHwKcGNt MTogKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCnBjbTE6IApwY20xOiBNYXN0ZXIgVm9sdW1l IChPU1M6IHZvbCkKcGNtMTogICAgfApwY20xOiAgICArLSBjdGwgIDEgKG5pZCAgIDMgaW4gKTog ICAgbXV0ZQpwY20xOiAKcGNtMTogUENNIFZvbHVtZSAoT1NTOiBwY20pCnBjbTE6ICAgIHwKcGNt MTogICAgKy0gY3RsICAxIChuaWQgICAzIGluICk6ICAgIG11dGUKcGNtMTogCnBjbTE6IEVuYWJs aW5nIFNvZnQgUENNIHZvbHVtZQpwY20xOiBNaXhlciAidm9sIjoKcGNtMTogTWl4ZXIgInBjbSI6 CnBjbTE6IFNvZnQgUENNIG1peGVyIEVOQUJMRUQKcGNtMTogY2xvbmUgbWFuYWdlcjogZGVhZGxp bmU9NzUwbXMgZmxhZ3M9MHg4MDAwMDAxZQpwY20xOiBzbmRidWZfc2V0bWFwIDJlYjAwMDAsIDQw MDA7IDB4ZmZmZmZmODA3NGUyMzAwMCAtPiAyZWIwMDAwCmF0YTI6IEFIQ0kgcmVzZXQuLi4KYXRh MjogaGFyZHdhcmUgcmVzZXQgLi4uCmF0YTI6IFNBVEEgY29ubmVjdCB0aW1lPTBtcyBzdGF0dXM9 MDAwMDAxMjMKYXRhMjogcmVhZHkgd2FpdCB0aW1lPTdtcwphdGEyOiBzb2Z0d2FyZSByZXNldCBw b3J0IDE1Li4uCmF0YTI6IHJlYWR5IHdhaXQgdGltZT0wbXMKYXRhMjogU0lHTkFUVVJFOiAwMDAw MDEwMQphdGEyOiBBSENJIHJlc2V0IGRvbmU6IGRldmljZXM9MDAwMDAwMDEKYXRhMzogQUhDSSBy ZXNldC4uLgphdGEzOiBoYXJkd2FyZSByZXNldCAuLi4KYXRhMzogU0FUQSBjb25uZWN0IHRpbWVv dXQgc3RhdHVzPTAwMDAwMDAwCmF0YTM6IEFIQ0kgcmVzZXQgZG9uZTogcGh5IHJlc2V0IGZvdW5k IG5vIGRldmljZQooYXByb2JlMDphdGEyOjA6MDowKTogU0lHTkFUVVJFOiAwMDAwCnVzYnVzMDog MTJNYnBzIEZ1bGwgU3BlZWQgVVNCIHYxLjAKdXNidXMxOiAxMk1icHMgRnVsbCBTcGVlZCBVU0Ig djEuMAp1c2J1czI6IDEyTWJwcyBGdWxsIFNwZWVkIFVTQiB2MS4wCnVzYnVzMzogNDgwTWJwcyBI aWdoIFNwZWVkIFVTQiB2Mi4wCnVzYnVzNDogMTJNYnBzIEZ1bGwgU3BlZWQgVVNCIHYxLjAKdXNi dXM1OiAxMk1icHMgRnVsbCBTcGVlZCBVU0IgdjEuMAp1c2J1czY6IDEyTWJwcyBGdWxsIFNwZWVk IFVTQiB2MS4wCnVzYnVzNzogNDgwTWJwcyBIaWdoIFNwZWVkIFVTQiB2Mi4wCmFjcGlfYWNhZDA6 IGFjbGluZSBpbml0aWFsaXphdGlvbiBzdGFydApiYXR0ZXJ5MDogYmF0dGVyeSBpbml0aWFsaXph dGlvbiBzdGFydAphZGEwIGF0IGF0YTIgYnVzIDAgc2NidXMwIHRhcmdldCAwIGx1biAwCmFkYTA6 IDxTQU1TVU5HIFNTRCBQQjIyLUNTMyBUTSAyNTZHQiBWQk0yM0QxUT4gQVRBLTdHRU9NOiBuZXcg ZGlzayBhZGEwCiBTQVRBIDIueCBkZXZpY2UKYWRhMDogU2VyaWFsIE51bWJlciBZRjMwRjBLOTM5 U1k5MzlCODMzNAphZGEwOiAzMDAuMDAwTUIvcyB0cmFuc2ZlcnMgKFNBVEEgMi54LCBVRE1BNSwg UElPIDgxOTJieXRlcykKYWRhMDogMjQ0MTk4TUIgKDUwMDExODE5MiA1MTIgYnl0ZSBzZWN0b3Jz OiAxNkggNjNTL1QgMTYzODNDKQpwYXNzMCBhdCBhdGEyIGJ1cyAwIHNjYnVzMCB0YXJnZXQgMCBs dW4gMApwYXNzMDogPFNBTVNVTkcgU1NEIFBCMjItQ1MzIFRNIDI1NkdCIFZCTTIzRDFRPiBBVEEt NyBTQVRBIDIueCBkZXZpY2UKcGFzczA6IFNlcmlhbCBOdW1iZXIgWUYzMEYwSzkzOVNZOTM5Qjgz MzQKcGFzczA6IDMwMC4wMDBNQi9zIHRyYW5zZmVycyAoU0FUQSAyLngsIFVETUE1LCBQSU8gODE5 MmJ5dGVzKQpTTVA6IEFQIENQVSAjMSBMYXVuY2hlZCEKY3B1MSBBUDoKICAgICBJRDogMHgwMTAw MDAwMCAgIFZFUjogMHgwMDA1MDAxNCBMRFI6IDB4MDAwMDAwMDAgREZSOiAweGZmZmZmZmZmCiAg bGludDA6IDB4MDAwMTA3MDAgbGludDE6IDB4MDAwMDA0MDAgVFBSOiAweDAwMDAwMDAwIFNWUjog MHgwMDAwMDFmZgogIHRpbWVyOiAweDAwMDEwMGVmIHRoZXJtOiAweDAwMDEwMDAwIGVycjogMHgw MDAwMDBmMCBwbWM6IDB4MDAwMTA0MDAKICAgY21jaTogMHgwMDAwMDAwMApDUFUxOmkgbG9vY2Fh cGwgaUFQY0lDIGUwcjpyIG9yciAwb3h1OHRpMG5nIGludHBpbiAxICgKSVNBIElSUSAxKSB0byBs YXBpYyAxIHZlY3RvciA0OAppb2FwaWMwOiByb3V0aW5nIGludHBpbiAxMiAoSVNBIElSUSAxMikg dG8gbGFwaWMgMSB2ZWN0b3IgNDkKaW9hcGljMDogcm91dGluZyBpbnRwaW4gMTggKFBDSSBJUlEg MTgpIHRvIGxhcGljIDEgdmVjdG9yIDUwCmlvYXBpYzA6IHJvdXRpbmcgaW50cGluIDIxIChQQ0kg SVJRIDIxKSB0byBsYXBpYyAxIHZlY3RvciA1MQptc2k6IEFzc2lnbmluZyBNU0kgSVJRIDI1NyB0 byBsb2NhbCBBUElDIDEgdmVjdG9yIDUyCm1zaTogQXNzaWduaW5nIE1TSSBJUlEgMjU5IHRvIGxv Y2FsIEFQSUMgMSB2ZWN0b3IgNTMKV0FSTklORzogV0lUTkVTUyBvcHRpb24gZW5hYmxlZCwgZXhw ZWN0IHJlZHVjZWQgcGVyZm9ybWFuY2UuCnVnZW4wLjE6IDxJbnRlbD4gYXQgdXNidXMwdWdlbjEu MTogPEludGVsPiBhdCB1c2J1czEKCnVodWIwOiA8SW50ZWwgVUhDSSByb290IEhVQiwgY2xhc3Mg OS8wLCByZXYgMS4wMC8xLjAwLCBhZGRyIDE+IG9uIHVzYnVzMAp1aHViMTogPEludGVsIFVIQ0kg cm9vdCBIVUIsIGNsYXNzIDkvMCwgcmV2IDEuMDAvMS4wMCwgYWRkciAxPiBvbiB1c2J1czEKdWdl bjIuMTogPEludGVsPiBhdCB1c2J1czIKdWh1YjI6IDxJbnRlbCBVSENJIHJvb3QgSFVCLCBjbGFz cyA5LzAsIHJldiAxLjAwLzEuMDAsIGFkZHIgMT4gb24gdXNidXMyCnVnZW4zLjE6IDxJbnRlbD4g YXQgdXNidXMzdWdlbjQuMTogPEludGVsPiBhdCB1c2J1czQKCnVodWIzOiA8SW50ZWwgRUhDSSBy b290IEhVQiwgY2xhc3MgOS8wLCByZXYgMi4wMC8xLjAwLCBhZGRyIDE+IG9uIHVzYnVzMwp1aHVi NDogPEludGVsIFVIQ0kgcm9vdCBIVUIsIGNsYXNzIDkvMCwgcmV2IDEuMDAvMS4wMCwgYWRkciAx PiBvbiB1c2J1czQKdWdlbjUuMTogPEludGVsPiBhdCB1c2J1czV1Z2VuNi4xOiA8SW50ZWw+IGF0 IHVzYnVzNgoKdWh1YjU6IDxJbnRlbCBVSENJIHJvb3QgSFVCLCBjbGFzcyA5LzAsIHJldiAxLjAw LzEuMDAsIGFkZHIgMT4gb24gdXNidXM1CnVodWI2OiA8SW50ZWwgVUhDSSByb290IEhVQiwgY2xh c3MgOS8wLCByZXYgMS4wMC8xLjAwLCBhZGRyIDE+IG9uIHVzYnVzNgp1Z2VuNy4xOiA8SW50ZWw+ IGF0IHVzYnVzNwp1aHViNzogPEludGVsIEVIQ0kgcm9vdCBIVUIsIGNsYXNzIDkvMCwgcmV2IDIu MDAvMS4wMCwgYWRkciAxPiBvbiB1c2J1czcKQWNwaU9zRGVyaXZlUGNpSWQ6IFxcX1NCXy5QQ0kw LlJQMDEuUFhDUyAtPiBidXMgMCBkZXYgMjggZnVuYyAwCkFjcGlPc0Rlcml2ZVBjaUlkOiBcXF9T Ql8uUENJMC5SUDAyLlBYQ1MgLT4gYnVzIDAgZGV2IDI4IGZ1bmMgMQpiYXR0ZXJ5MDogYmF0dGVy eSBpbml0aWFsaXphdGlvbiBkb25lLCB0cmllZCAxIHRpbWVzCmFjcGlfbGlkMDogTGlkIG9wZW5l ZAphY3BpX2xpZDA6IExpZCBvcGVuZWQKUm9vdCBtb3VudCB3YWl0aW5nIGZvcjogdXNidXM3IHVz YnVzNiB1c2J1czUgdXNidXM0IHVzYnVzMyB1c2J1czIgdXNidXMxIHVzYnVzMAphY3BpX2FjYWQw OiBPbiBMaW5lCmFjcGlfYWNhZDA6IGFjbGluZSBpbml0aWFsaXphdGlvbiBkb25lLCB0cmllZCAx IHRpbWVzCkFjcGlPc0Rlcml2ZVBjaUlkOiBcXF9TQl8uUENJMC5SUDAzLlBYQ1MgLT4gYnVzIDAg ZGV2IDI4IGZ1bmMgMgpBY3BpT3NEZXJpdmVQY2lJZDogXFxfU0JfLlBDSTAuUlAwNi5QWENTIC0+ IGJ1cyAwIGRldiAyOCBmdW5jIDUKdWh1YjE6IDIgcG9ydHMgd2l0aCAyIHJlbW92YWJsZSwgc2Vs ZiBwb3dlcmVkCnVodWIwOiAyIHBvcnRzIHdpdGggMiByZW1vdmFibGUsIHNlbGYgcG93ZXJlZAp1 aHViMjogMiBwb3J0cyB3aXRoIDIgcmVtb3ZhYmxlLCBzZWxmIHBvd2VyZWQKdWh1YjQ6IDIgcG9y dHMgd2l0aCAyIHJlbW92YWJsZSwgc2VsZiBwb3dlcmVkCnVodWI1OiAyIHBvcnRzIHdpdGggMiBy ZW1vdmFibGUsIHNlbGYgcG93ZXJlZAp1aHViNjogMiBwb3J0cyB3aXRoIDIgcmVtb3ZhYmxlLCBz ZWxmIHBvd2VyZWQKUm9vdCBtb3VudCB3YWl0aW5nIGZvcjogdXNidXM3IHVzYnVzMwpSb290IG1v dW50IHdhaXRpbmcgZm9yOiB1c2J1czcgdXNidXMzCnVodWI3OiA2IHBvcnRzIHdpdGggNiByZW1v dmFibGUsIHNlbGYgcG93ZXJlZAp1aHViMzogNiBwb3J0cyB3aXRoIDYgcmVtb3ZhYmxlLCBzZWxm IHBvd2VyZWQKUm9vdCBtb3VudCB3YWl0aW5nIGZvcjogdXNidXM3ClJvb3QgbW91bnQgd2FpdGlu ZyBmb3I6IHVzYnVzNwpSb290IG1vdW50IHdhaXRpbmcgZm9yOiB1c2J1czcKUm9vdCBtb3VudCB3 YWl0aW5nIGZvcjogdXNidXM3ClJvb3QgbW91bnQgd2FpdGluZyBmb3I6IHVzYnVzNwp1Z2VuNy4y OiA8KG51bGwpPiBhdCB1c2J1czcgKGRpc2Nvbm5lY3RlZCkKUm9vdCBtb3VudCB3YWl0aW5nIGZv cjogdXNidXM3ClRyeWluZyB0byBtb3VudCByb290IGZyb20gdWZzOi9kZXYvZ3B0L3BhcnQwCmN0 X3RvX3RzKFsyMDEwLTA2LTE5IDA1OjIwOjE0XSkgPSAxMjc2OTI0ODE0LjAwMDAwMDAwMApzdGFy dF9pbml0OiB0cnlpbmcgL3NiaW4vaW5pdAphY3BpX2xpZDA6IExpZCBvcGVuZWQKYWNwaV9saWQw OiBMaWQgb3BlbmVkCkxpbnV4IEVMRiBleGVjIGhhbmRsZXIgaW5zdGFsbGVkCmxpbnByb2NmcyBy ZWdpc3RlcmVkCnVnZW42LjI6IDxCcm9hZGNvbT4gYXQgdXNidXM2CnVodWI4OiA8QnJvYWRjb20g QkNNMjA0NkIxLCBjbGFzcyA5LzAsIHJldiAyLjAwLzEuMDAsIGFkZHIgMj4gb24gdXNidXM2Cmxh Z2cwOiBicGYgYXR0YWNoZWQKdWh1Yjg6IDMgcG9ydHMgd2l0aCAwIHJlbW92YWJsZSwgc2VsZiBw b3dlcmVkCnVnZW42LjM6IDx2ZW5kb3IgMHg0MTNjPiBhdCB1c2J1czYKdWtiZDA6IDx2ZW5kb3Ig MHg0MTNjIHByb2R1Y3QgMHg4MTU3LCBjbGFzcyAwLzAsIHJldiAyLjAwLzEuMDAsIGFkZHIgMz4g b24gdXNidXM2CmtiZDIgYXQgdWtiZDAKa2JkMjogdWtiZDAsIGdlbmVyaWMgKDApLCBjb25maWc6 MHgwLCBmbGFnczoweDNkMDAwMAp1Z2VuNi40OiA8dmVuZG9yIDB4NDEzYz4gYXQgdXNidXM2CnVt czA6IDx2ZW5kb3IgMHg0MTNjIHByb2R1Y3QgMHg4MTU4LCBjbGFzcyAwLzAsIHJldiAyLjAwLzEu MDAsIGFkZHIgND4gb24gdXNidXM2CnVtczA6IDMgYnV0dG9ucyBhbmQgW1hZXSBjb29yZGluYXRl cyBJRD0yCmZpcm13YXJlOiAnaXduNTAwMGZ3JyB2ZXJzaW9uIDA6IDM1MzI0MCBieXRlcyBsb2Fk ZWQgYXQgMHhmZmZmZmZmZjgwZTM0MGIwCndsYW4wOiBicGYgYXR0YWNoZWQKd2xhbjA6IGJwZiBh dHRhY2hlZAp3bGFuMDogRXRoZXJuZXQgYWRkcmVzczogMDA6MjI6MTk6ZTU6Y2E6NTEKYmdlMDog RGlzYWJsaW5nIGZhc3Rib290CmJnZTA6IERpc2FibGluZyBmYXN0Ym9vdAo= --002215048d0bca851504896ab298--