From owner-freebsd-gecko@FreeBSD.ORG Sun Sep 1 01:33:27 2013 Return-Path: Delivered-To: freebsd-gecko@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTP id 796B6D29 for ; Sun, 1 Sep 2013 01:33:27 +0000 (UTC) (envelope-from andy@neu.net) Received: from mail.neu.net (neu.net [199.48.129.194]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 415AC2E43 for ; Sun, 1 Sep 2013 01:33:26 +0000 (UTC) Received: from neu.net (neu.net [199.48.129.194]) by mail.neu.net (8.14.6/8.14.5) with ESMTP id r811XNvp075920 for ; Sat, 31 Aug 2013 21:33:23 -0400 (EDT) (envelope-from andy@neu.net) Date: Sat, 31 Aug 2013 21:33:23 -0400 (EDT) From: AN To: freebsd-gecko@freebsd.org Subject: Re: [SVN-Commit] r1345 - trunk/www/firefox-nightly In-Reply-To: <201308312058.r7VKwqPZ035123@trillian.chruetertee.ch> Message-ID: References: <201308312058.r7VKwqPZ035123@trillian.chruetertee.ch> User-Agent: Alpine 2.00 (BSF 1167 2008-08-23) MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed X-Virus-Scanned: clamav-milter 0.97.8 at my.mail.server X-Virus-Status: Clean X-Spam-Status: No, score=-0.0 required=4.5 tests=RP_MATCHES_RCVD autolearn=unavailable version=3.3.2 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on mail.neu.net X-BeenThere: freebsd-gecko@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: Gecko Rendering Engine issues List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 01 Sep 2013 01:33:27 -0000 On Sat, 31 Aug 2013, svn-freebsd-gecko@chruetertee.ch wrote: > Author: jbeich > Date: Sat Aug 31 20:58:51 2013 > New Revision: 1345 > > Log: > fix make update with no /etc/ssl/cert.pem symlink after r1343 > > Reported by: AN > > Modified: > trunk/www/firefox-nightly/Makefile > > Modified: trunk/www/firefox-nightly/Makefile > ============================================================================== > --- trunk/www/firefox-nightly/Makefile Sat Aug 31 15:20:11 2013 (r1344) > +++ trunk/www/firefox-nightly/Makefile Sat Aug 31 20:58:51 2013 (r1345) > @@ -91,7 +91,7 @@ > @${CAT} ${PKGMESSAGE} > > update: > - @${FETCH_CMD} -qo- ${MASTER_SITES:M*hg*:S/archive/rev/}/tip \ > + @${FETCH_ENV} ${FETCH_CMD} -qo- ${MASTER_SITES:M*hg*:S/archive/rev/}/tip \ > | ${SED} -n '/title/ { s|.*changeset |HGREV= |; \ > s| ${.CURDIR}/Makefile.hgrev > > _______________________________________________ ===> Registering installation for firefox-nightly-26.0.145197,1 Installing firefox-nightly-26.0.145197,1... done fixed From owner-freebsd-gecko@FreeBSD.ORG Sun Sep 1 14:03:59 2013 Return-Path: Delivered-To: freebsd-gecko@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTP id A828C69C for ; Sun, 1 Sep 2013 14:03:59 +0000 (UTC) (envelope-from andy@neu.net) Received: from mail.neu.net (neu.net [199.48.129.194]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 539382D3D for ; Sun, 1 Sep 2013 14:03:58 +0000 (UTC) Received: from neu.net (neu.net [199.48.129.194]) by mail.neu.net (8.14.6/8.14.5) with ESMTP id r81E3t9H077688 for ; Sun, 1 Sep 2013 10:03:55 -0400 (EDT) (envelope-from andy@neu.net) Date: Sun, 1 Sep 2013 10:03:55 -0400 (EDT) From: AN To: freebsd-gecko@freebsd.org Subject: Re: [SVN-Commit] r1345 - trunk/www/firefox-nightly In-Reply-To: Message-ID: References: <201308312058.r7VKwqPZ035123@trillian.chruetertee.ch> User-Agent: Alpine 2.00 (BSF 1167 2008-08-23) MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed X-Virus-Scanned: clamav-milter 0.97.8 at my.mail.server X-Virus-Status: Clean X-Spam-Status: No, score=-0.0 required=4.5 tests=RP_MATCHES_RCVD autolearn=unavailable version=3.3.2 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on mail.neu.net X-BeenThere: freebsd-gecko@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: Gecko Rendering Engine issues List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 01 Sep 2013 14:03:59 -0000 On Sat, 31 Aug 2013, AN wrote: > > On Sat, 31 Aug 2013, svn-freebsd-gecko@chruetertee.ch wrote: > >> Author: jbeich >> Date: Sat Aug 31 20:58:51 2013 >> New Revision: 1345 >> >> Log: >> fix make update with no /etc/ssl/cert.pem symlink after r1343 >> >> Reported by: AN >> >> Modified: >> trunk/www/firefox-nightly/Makefile >> >> Modified: trunk/www/firefox-nightly/Makefile >> ============================================================================== >> --- trunk/www/firefox-nightly/Makefile Sat Aug 31 15:20:11 2013 >> (r1344) >> +++ trunk/www/firefox-nightly/Makefile Sat Aug 31 20:58:51 2013 >> (r1345) >> @@ -91,7 +91,7 @@ >> @${CAT} ${PKGMESSAGE} >> >> update: >> - @${FETCH_CMD} -qo- ${MASTER_SITES:M*hg*:S/archive/rev/}/tip \ >> + @${FETCH_ENV} ${FETCH_CMD} -qo- >> ${MASTER_SITES:M*hg*:S/archive/rev/}/tip \ >> | ${SED} -n '/title/ { s|.*changeset |HGREV= |; \ >> s| ${.CURDIR}/Makefile.hgrev >> >> _______________________________________________ > > ===> Registering installation for firefox-nightly-26.0.145197,1 > Installing firefox-nightly-26.0.145197,1... done > > fixed > _______________________________________________ # make update && make makesum && time make all deinstall install clean ===> firefox-nightly-26.0.145197,1 depends on file: /usr/local/share/certs/ca-root-nss.crt - found ===> Found saved configuration for firefox-nightly-26.0.143100,1 ===> firefox-nightly-26.0.145198,1 depends on file: /usr/local/sbin/pkg - found ===> firefox-nightly-26.0.145198,1 depends on file: /usr/local/share/certs/ca-root-nss.crt - found => fca5ac9f6329.tar.bz2 doesn't seem to exist in /usr/ports/distfiles/firefox-nightly. => Attempting to fetch https://hg.mozilla.org/integration/mozilla-inbound/archive/fca5ac9f6329.tar.bz2 fetch: https://hg.mozilla.org/integration/mozilla-inbound/archive/fca5ac9f6329.tar.bz2: size of remote file is not known fca5ac9f6329.tar.bz2 119 MB 459 kBps 04m26s [: -eq: argument expected => Fetched file size mismatch (expected , actual 125110861) => Attempting to fetch ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/distfiles/firefox-nightly/fca5ac9f6329.tar.bz2 fetch: ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/distfiles/firefox-nightly/fca5ac9f6329.tar.bz2: File unavailable (e.g., file not found, no access) => Couldn't fetch it - please try to retrieve this => port manually into /usr/ports/distfiles/firefox-nightly and try again. *** Error code 1 Stop. make[1]: stopped in /usr/ports/www/FF_nightly *** Error code 1 Stop. make: stopped in /usr/ports/www/FF_nightly For some reason it is required to do "make clean" after downloading, and then it compiles successfully. # make clean ===> Cleaning for firefox-nightly-26.0.145198,1 [root@FBSD10 /usr/ports/www/FF_nightly]# make update && make makesum && time make all deinstall install clean ===> firefox-nightly-26.0.145198,1 depends on file: /usr/local/share/certs/ca-root-nss.crt - found ===> Found saved configuration for firefox-nightly-26.0.143100,1 ===> firefox-nightly-26.0.145198,1 depends on file: /usr/local/sbin/pkg - found ===> firefox-nightly-26.0.145198,1 depends on file: /usr/local/share/certs/ca-root-nss.crt - found ===> Fetching all distfiles required by firefox-nightly-26.0.145198,1 for building ===> Found saved configuration for firefox-nightly-26.0.143100,1 ===> firefox-nightly-26.0.145198,1 depends on file: /usr/local/sbin/pkg - found ===> firefox-nightly-26.0.145198,1 depends on file: /usr/local/share/certs/ca-root-nss.crt - found ===> Fetching all distfiles required by firefox-nightly-26.0.145198,1 for building ===> Extracting for firefox-nightly-26.0.145198,1 ===> Found saved configuration for firefox-nightly-26.0.143100,1 ===> firefox-nightly-26.0.145198,1 depends on file: /usr/local/sbin/pkg - found ===> firefox-nightly-26.0.145198,1 depends on file: /usr/local/share/certs/ca-root-nss.crt - found ===> Fetching all distfiles required by firefox-nightly-26.0.145198,1 for building => SHA256 Checksum OK for firefox-nightly/fca5ac9f6329.tar.bz2. .... ===> Registering installation for firefox-nightly-26.0.145198,1 Installing firefox-nightly-26.0.145198,1... done Maybe this is the problem: [: -eq: argument expected => Fetched file size mismatch (expected , actual 125110861) From owner-freebsd-gecko@FreeBSD.ORG Mon Sep 2 11:07:00 2013 Return-Path: Delivered-To: gecko@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTP id 5355C19B for ; Mon, 2 Sep 2013 11:07:00 +0000 (UTC) (envelope-from owner-bugmaster@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2001:1900:2254:206c::16:87]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 41BD323D6 for ; Mon, 2 Sep 2013 11:07:00 +0000 (UTC) Received: from freefall.freebsd.org (localhost [127.0.0.1]) by freefall.freebsd.org (8.14.7/8.14.7) with ESMTP id r82B70jF016332 for ; Mon, 2 Sep 2013 11:07:00 GMT (envelope-from owner-bugmaster@FreeBSD.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.14.7/8.14.7/Submit) id r82B6xH6016327 for gecko@FreeBSD.org; Mon, 2 Sep 2013 11:06:59 GMT (envelope-from owner-bugmaster@FreeBSD.org) Date: Mon, 2 Sep 2013 11:06:59 GMT Message-Id: <201309021106.r82B6xH6016327@freefall.freebsd.org> X-Authentication-Warning: freefall.freebsd.org: gnats set sender to owner-bugmaster@FreeBSD.org using -f From: FreeBSD bugmaster To: gecko@FreeBSD.org Subject: Current problem reports assigned to gecko@FreeBSD.org X-BeenThere: freebsd-gecko@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: Gecko Rendering Engine issues List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 02 Sep 2013 11:07:00 -0000 Note: to view an individual PR, use: http://www.freebsd.org/cgi/query-pr.cgi?pr=(number). The following is a listing of current problems submitted by FreeBSD users. These represent problem reports covering all versions including experimental development code and obsolete releases. S Tracker Resp. Description -------------------------------------------------------------------------------- o ports/181393 gecko www/xpi-quick-locale-switcher 1.7.8.5 does not works w o ports/181005 gecko mail/thunderbird - Enigmail failes to start pinentry o ports/180938 gecko www/firefox: ia64: ../../../js/src/gc/Heap.h:827:1: er o ports/180855 gecko www/firefox: Firefox 22 crashes on HTML 5 videos o ports/180766 gecko Flash not work in www/firefox o ports/180679 gecko www/seamonkey 2.19 doesn't install with default clang o ports/180563 gecko www/seamonkey compilation error with Clang (*pp = '\0' o ports/180380 gecko www/firefox: Firefox 22.0 dies instantly when I try to o ports/179420 gecko www/seamonkey freezes completely by accessing citrix x o ports/178524 gecko BATCH=yes not work for www/firefox-i18n o ports/177404 gecko www/firefox: youtube videos in firefox not working o ports/170310 gecko mail/thunderbird: coredump/crash when used with OpenLD o ports/169366 gecko www/xpi-* ports need re-install after each Firefox upd o ports/168091 gecko Mk/bsd.gecko.mk error: USE_FIREFOX doesn't work correc f ports/165263 gecko mail/thunderbird: core dumping most time when users ar o ports/164239 gecko [PATCH] mail/thunderbird: crash with nss_ldap o ports/160387 gecko security/ca_root_nss: Allow user to trust extra local f ports/155949 gecko www/firefox: firefox 4, WITH_PGO, better Text against o ports/144044 gecko [PATCH] www/firefox: Makefile.webplugins target order 19 problems total. From owner-freebsd-gecko@FreeBSD.ORG Mon Sep 2 15:28:26 2013 Return-Path: Delivered-To: freebsd-gecko@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTP id 71635AC9 for ; Mon, 2 Sep 2013 15:28:26 +0000 (UTC) (envelope-from andy@neu.net) Received: from mail.neu.net (neu.net [199.48.129.194]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 0BF822B5C for ; Mon, 2 Sep 2013 15:28:24 +0000 (UTC) Received: from neu.net (neu.net [199.48.129.194]) by mail.neu.net (8.14.6/8.14.5) with ESMTP id r82FSDau081981 for ; Mon, 2 Sep 2013 11:28:14 -0400 (EDT) (envelope-from andy@neu.net) Date: Mon, 2 Sep 2013 11:28:13 -0400 (EDT) From: AN To: freebsd-gecko@freebsd.org Subject: Re: [SVN-Commit] r1345 - trunk/www/firefox-nightly In-Reply-To: Message-ID: References: <201308312058.r7VKwqPZ035123@trillian.chruetertee.ch> User-Agent: Alpine 2.00 (BSF 1167 2008-08-23) MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed X-Virus-Scanned: clamav-milter 0.97.8 at my.mail.server X-Virus-Status: Clean X-Spam-Status: No, score=-0.0 required=4.5 tests=RP_MATCHES_RCVD autolearn=unavailable version=3.3.2 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on mail.neu.net X-BeenThere: freebsd-gecko@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: Gecko Rendering Engine issues List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 02 Sep 2013 15:28:26 -0000 On Sun, 1 Sep 2013, AN wrote: > > On Sat, 31 Aug 2013, AN wrote: >> >> On Sat, 31 Aug 2013, svn-freebsd-gecko@chruetertee.ch wrote: >> >>> Author: jbeich >>> Date: Sat Aug 31 20:58:51 2013 >>> New Revision: 1345 >>> >>> Log: >>> fix make update with no /etc/ssl/cert.pem symlink after r1343 >>> >>> Reported by: AN >>> >>> Modified: >>> trunk/www/firefox-nightly/Makefile >>> >>> Modified: trunk/www/firefox-nightly/Makefile >>> ============================================================================== >>> --- trunk/www/firefox-nightly/Makefile Sat Aug 31 15:20:11 2013 >>> (r1344) >>> +++ trunk/www/firefox-nightly/Makefile Sat Aug 31 20:58:51 2013 >>> (r1345) >>> @@ -91,7 +91,7 @@ >>> @${CAT} ${PKGMESSAGE} >>> >>> update: >>> - @${FETCH_CMD} -qo- ${MASTER_SITES:M*hg*:S/archive/rev/}/tip \ >>> + @${FETCH_ENV} ${FETCH_CMD} -qo- >>> ${MASTER_SITES:M*hg*:S/archive/rev/}/tip \ >>> | ${SED} -n '/title/ { s|.*changeset |HGREV= |; \ >>> s| ${.CURDIR}/Makefile.hgrev >>> >>> _______________________________________________ >> >> ===> Registering installation for firefox-nightly-26.0.145197,1 >> Installing firefox-nightly-26.0.145197,1... done >> >> fixed >> _______________________________________________ > > # make update && make makesum && time make all deinstall install clean > ===> firefox-nightly-26.0.145197,1 depends on file: > /usr/local/share/certs/ca-root-nss.crt - found > ===> Found saved configuration for firefox-nightly-26.0.143100,1 > ===> firefox-nightly-26.0.145198,1 depends on file: /usr/local/sbin/pkg - > found > ===> firefox-nightly-26.0.145198,1 depends on file: > /usr/local/share/certs/ca-root-nss.crt - found > => fca5ac9f6329.tar.bz2 doesn't seem to exist in > /usr/ports/distfiles/firefox-nightly. > => Attempting to fetch > https://hg.mozilla.org/integration/mozilla-inbound/archive/fca5ac9f6329.tar.bz2 > fetch: > https://hg.mozilla.org/integration/mozilla-inbound/archive/fca5ac9f6329.tar.bz2: > size of remote file is not known > fca5ac9f6329.tar.bz2 119 MB 459 kBps > 04m26s > [: -eq: argument expected > => Fetched file size mismatch (expected , actual 125110861) > => Attempting to fetch > ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/distfiles/firefox-nightly/fca5ac9f6329.tar.bz2 > fetch: > ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/distfiles/firefox-nightly/fca5ac9f6329.tar.bz2: > File unavailable (e.g., file not found, no access) > => Couldn't fetch it - please try to retrieve this > => port manually into /usr/ports/distfiles/firefox-nightly and try again. > *** Error code 1 > > Stop. > make[1]: stopped in /usr/ports/www/FF_nightly > *** Error code 1 > > Stop. > make: stopped in /usr/ports/www/FF_nightly > > For some reason it is required to do "make clean" after downloading, and then > it compiles successfully. > > # make clean > ===> Cleaning for firefox-nightly-26.0.145198,1 > [root@FBSD10 /usr/ports/www/FF_nightly]# make update && make makesum && time > make all deinstall install clean > ===> firefox-nightly-26.0.145198,1 depends on file: > /usr/local/share/certs/ca-root-nss.crt - found > ===> Found saved configuration for firefox-nightly-26.0.143100,1 > ===> firefox-nightly-26.0.145198,1 depends on file: /usr/local/sbin/pkg - > found > ===> firefox-nightly-26.0.145198,1 depends on file: > /usr/local/share/certs/ca-root-nss.crt - found > ===> Fetching all distfiles required by firefox-nightly-26.0.145198,1 for > building > ===> Found saved configuration for firefox-nightly-26.0.143100,1 > ===> firefox-nightly-26.0.145198,1 depends on file: /usr/local/sbin/pkg - > found > ===> firefox-nightly-26.0.145198,1 depends on file: > /usr/local/share/certs/ca-root-nss.crt - found > ===> Fetching all distfiles required by firefox-nightly-26.0.145198,1 for > building > ===> Extracting for firefox-nightly-26.0.145198,1 > ===> Found saved configuration for firefox-nightly-26.0.143100,1 > ===> firefox-nightly-26.0.145198,1 depends on file: /usr/local/sbin/pkg - > found > ===> firefox-nightly-26.0.145198,1 depends on file: > /usr/local/share/certs/ca-root-nss.crt - found > ===> Fetching all distfiles required by firefox-nightly-26.0.145198,1 for > building > => SHA256 Checksum OK for firefox-nightly/fca5ac9f6329.tar.bz2. > .... > ===> Registering installation for firefox-nightly-26.0.145198,1 > Installing firefox-nightly-26.0.145198,1... done > > > Maybe this is the problem: > [: -eq: argument expected > => Fetched file size mismatch (expected , actual 125110861) > > _______________________________________________ Follow up to the above message: It seems I had a file in /usr/ports/distfiles/firefox-nightly that was partially downloaded and corrupt. After deleting all files and doing make update && make makesum && time make all deinstall install clean, it is working correctly again. Sorry for the noise. [root@FBSD10 /usr/ports/www/FF_nightly]# make update && make makesum && time make all deinstall install clean ===> firefox-nightly-26.0.145224,1 depends on file: /usr/local/share/certs/ca-root-nss.crt - found ===> Found saved configuration for firefox-nightly-26.0.143100,1 ===> firefox-nightly-26.0.145236,1 depends on file: /usr/local/sbin/pkg - found ===> firefox-nightly-26.0.145236,1 depends on file: /usr/local/share/certs/ca-root-nss.crt - found => 068c13777f4d.tar.bz2 doesn't seem to exist in /usr/ports/distfiles/firefox-nightly. => Attempting to fetch https://hg.mozilla.org/integration/mozilla-inbound/archive/068c13777f4d.tar.bz2 fetch: https://hg.mozilla.org/integration/mozilla-inbound/archive/068c13777f4d.tar.bz2: size of remote file is not known 068c13777f4d.tar.bz2 119 MB 397 kBps 05m08s ===> Fetching all distfiles required by firefox-nightly-26.0.145236,1 for building ===> Found saved configuration for firefox-nightly-26.0.143100,1 ===> firefox-nightly-26.0.145236,1 depends on file: /usr/local/sbin/pkg - found ===> firefox-nightly-26.0.145236,1 depends on file: /usr/local/share/certs/ca-root-nss.crt - found ===> Fetching all distfiles required by firefox-nightly-26.0.145236,1 for building ===> Extracting for firefox-nightly-26.0.145236,1 ===> Found saved configuration for firefox-nightly-26.0.143100,1 ===> firefox-nightly-26.0.145236,1 depends on file: /usr/local/sbin/pkg - found ===> firefox-nightly-26.0.145236,1 depends on file: /usr/local/share/certs/ca-root-nss.crt - found ===> Fetching all distfiles required by firefox-nightly-26.0.145236,1 SHA256 Checksum OK for firefox-nightly/068c13777f4d.tar.bz2. ===> Patching for firefox-nightly-26.0.145236,1 ===> Converting DOS text file to UNIX text file: ===> Applying extra patch /usr/ports/www/FF_nightly/files/extra-bug780531 ===> Applying FreeBSD patches for firefox-nightly-26.0.145236,1 ... ===> Registering installation for firefox-nightly-26.0.145236,1 Installing firefox-nightly-26.0.145236,1... done From owner-freebsd-gecko@FreeBSD.ORG Tue Sep 3 15:26:47 2013 Return-Path: Delivered-To: gecko@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTP id 1EA898DF for ; Tue, 3 Sep 2013 15:26:47 +0000 (UTC) (envelope-from int021hex@gmail.com) Received: from mail-oa0-x233.google.com (mail-oa0-x233.google.com [IPv6:2607:f8b0:4003:c02::233]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id BF01A2518 for ; Tue, 3 Sep 2013 15:26:46 +0000 (UTC) Received: by mail-oa0-f51.google.com with SMTP id h1so6738510oag.24 for ; Tue, 03 Sep 2013 08:26:45 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:date:message-id:subject:from:to:content-type; bh=sQFTbEJJdUgOgWU++0vWRKbFEUvVIehDg8QyoNgW/M4=; b=rgeerTES15dVjIqS39J7TPUy8G2O2YA/9q5hZmYyBQQc4l+A23uXWK790BJPfFE41C POzrae71SCtQa0ZCo28vuc0hs4Xl3LKyWh1Ho9TCAd3W2L4W9KJwnHpoLtL4/302FKyF xm7RKdQz5e93UhXPQksa9JnOwlHXv6PXRP2NZCVMd13T+p3P5eoVPOx1Tg/JRp738S6x CY9CPVxCPwZZj+IfkG1KQXUVK6kPzq+iti0aQ6IUV/mJXY++9QhZeDdTqvxBTz0SnRhm P4qbsuHEQ143qRlnj1Xwm5jMeIypDm3oFrvgHWWlDwJBxyEnQo4HLpQQI/FWDOsMhdn7 YWpg== MIME-Version: 1.0 X-Received: by 10.182.38.228 with SMTP id j4mr21241541obk.94.1378222005158; Tue, 03 Sep 2013 08:26:45 -0700 (PDT) Received: by 10.182.158.164 with HTTP; Tue, 3 Sep 2013 08:26:45 -0700 (PDT) Date: Tue, 3 Sep 2013 19:26:45 +0400 Message-ID: Subject: Error install firefox-23.0.1,1 From: Alex Xela To: gecko@FreeBSD.org Content-Type: multipart/mixed; boundary=001a11c2f3a60a386604e57c5168 X-Content-Filtered-By: Mailman/MimeDel 2.1.14 X-BeenThere: freebsd-gecko@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: Gecko Rendering Engine issues List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 03 Sep 2013 15:26:47 -0000 --001a11c2f3a60a386604e57c5168 Content-Type: text/plain; charset=ISO-8859-1 Hi! Not install firefox-23.0.1,1 Systems: FreeBSD 9.1-RELEASE-p3 i386 GENERIC Attach files: config.log and view pkg_info -Ea --001a11c2f3a60a386604e57c5168 Content-Type: text/plain; charset=US-ASCII; name="pkg_info_Ea.txt" Content-Disposition: attachment; filename="pkg_info_Ea.txt" Content-Transfer-Encoding: base64 X-Attachment-Id: f_hl59tt9f1 R2VvSVAtMS40LjhfMwpJbWFnZU1hZ2ljay02LjcuOS40CktlZVBhc3NYLTAuNC4zXzEKT1JCaXQy LTIuMTQuMTkKT3BlbkVYUi0xLjcuMApUZXJtaW5hbC0wLjQuOF8xClRodW5hci0xLjQuMF8yCmEy cHMtYTQtNC4xM2JfNAphYWxpYi0xLjQucjVfNgphZG9iZS1jbWFwcy0yMDA1MTIxN18xCmFsc2Et bGliLTEuMC4yNgphbHNhLXBsdWdpbnMtMS4wLjI2CmFwYWNoZS1hbnQtMS44LjNfMQphcGFjaGUy Mi0yLjIuMjJfOAphcHByZXMtMS4wLjMKYXByLTEuNC42LjEuNC4xXzEKYXJwLXNjYW4tMS44CmFz cGVsbC0wLjYwLjYuMV8yCmF0ay0yLjAuMQphdGttbS0yLjIyLjUKYXV0b2NvbmYtMi4xMy4wMDAy MjdfNgphdXRvY29uZi0yLjY5CmF1dG9jb25mLXdyYXBwZXItMjAxMDExMTkKYXV0b21ha2UtMS4x Mi40CmF1dG9tYWtlLTEuNC42XzYKYXV0b21ha2Utd3JhcHBlci0yMDEwMTExOQphdXRvbW9jNC0w LjkuODhfMwphdmFoaS1hcHAtMC42LjI5XzMKYmFibC0wLjEuNgpiYXNoLTQuMi4zNwpiZGZ0b3Bj Zi0xLjAuMwpiaWdyZXFzcHJvdG8tMS4xLjEKYmludXRpbHMtMi4yMl8xCmJpc29uLTIuNS4xLDEK Yml0bWFwLTEuMC41CmJpdHN0cmVhbS12ZXJhLTEuMTBfNQpibHVlZmlzaC0yLjIuMl8xCmJvZWht LWdjLTcuMQpib29zdC1qYW0tMS40OC4wCmJvb3N0LWxpYnMtMS40OC4wXzEKYm9vdHN0cmFwLW9w ZW5qZGstcjMxNjUzOApic2R0cmlzLTEuMQpic2gtMi4wLmI0XzYKY2Ffcm9vdF9uc3MtMy4xMy42 CmNhYmV4dHJhY3QtMS40CmNhaXJvLTEuMTAuMl80LDIKY2Fpcm9tbS0xLjEwLjBfMQpjYW50YXJl bGwtZm9udHMtMC4wLjEwLjEKY2RwYXJhbm9pYS0zLjkuOF85CmNocm9taXVtLTIyLjAuMTIyOS43 OQpjbS1zdXBlci0wLjMuNF80CmNtYWtlLTIuOC45CmNtYWtlLW1vZHVsZXMtMi44LjkKY29tcGF0 NXgtaTM4Ni01LjQuMC44LjFfMQpjb21wYXQ2eC1pMzg2LTYuNC42MDQwMDAuMjAwODEwXzMKY29t cGF0N3gtaTM4Ni03LjMuNzAzMDAwLjIwMTAwOF8xCmNvbXBhdDh4LWkzODYtOC4zLjgwMzAwMC4y MDEyMDkKY29tcG9zaXRlcHJvdG8tMC40LjIKY29ua3ktMS44LjFfNQpjb25zb2xla2l0LTAuNC4z CmNwcHVuaXQtMS4xMi4xCmN1cHMtMS41LjIKY3Vwcy1iYXNlLTEuNS4yXzIKY3Vwcy1jbGllbnQt MS41LjJfMgpjdXBzLWltYWdlLTEuNS4yXzEKY3Vwcy1wc3RvcmFzdGVyLTguMTUuNF83CmN1cmwt Ny4yNC4wXzEKY3VzZTRic2Qta21vZC0wLjEuMzAKZGFtYWdlcHJvdG8tMS4yLjEKZGI0MS00LjEu MjVfNApkYjQyLTQuMi41Ml81CmRidXMtMS40LjE0XzQKZGJ1cy1nbGliLTAuOTQKZGNvbmYtMC41 LjFfNApkZWFkYmVlZi0wLjUuNV8xCmRlamF2dS0yLjMzCmRlc2t0b3AtZmlsZS11dGlscy0wLjE4 CmRpYS0wLjk3LjFfMywxCmRpYWJsby1qZGstMS42LjAuMDcuMDJfMjAKZGlhbG9nNHBvcnRzLTAu MS4zCmRqYmZmdC0wLjc2XzIKZGp2aWV3LTQuOV8yCmRqdnVsaWJyZS0zLjUuMjUuM18xCmRtYWtl LTQuMTIuMgpkbWlkZWNvZGUtMi4xMQpkbXhwcm90by0yLjMuMQpkb2Nib29rLTQuMV80CmRvY2Jv b2stc2stNC4xLjJfNApkb2Nib29rLXhtbC00LjJfMQpkb2Nib29rLXhtbC00LjMKZG9jYm9vay14 bWwtNC40XzEKZG9jYm9vay14c2wtMS43Ni4xCmRvY3Byb2otamFkZXRleC0xLjE3XzYKZHJpLTcu Ni4xXzIsMgpkcmkycHJvdG8tMi42CmRyb2lkLWZvbnRzLXR0Zi0yMDExMDMyNApkc3NzbC1kb2Ni b29rLW1vZHVsYXItMS43OV8xLDEKZHZpcGRmbXgtMjAxMDAzMjhfMQpkdmlwc2stdGV0ZXgtNS45 NWFfNgplZ2dkYnVzLTAuNl8xCmVuLWZyZWVic2QtZG9jLTM5Mjc4LDEKZW5jYS0xLjEzCmVuY2hh bnQtMS42LjAKZW5jb2RpbmdzLTEuMC40LDEKZW5zY3JpcHQtYTQtMS42LjRfNQplc291bmQtMC4y LjQxCmV2aWVleHQtMS4xLjEKZXhpZi0wLjYuMjAKZXhwYXQtMi4wLjFfMgpmYWFkMi0yLjdfMywx CmZhcnNpZ2h0Mi0wLjAuMjJfMQpmZm1wZWctMC43LjEzXzYsMQpmZnR3My0zLjMuMgpmZnR3My1m bG9hdC0zLjMuMgpmaXhlc3Byb3RvLTUuMApmaXhydGYtMC4xLjIwMDYwMzAzXzIKZmxhYy0xLjIu MV8zCmZsZXgtMi41LjM3CmZsb2NrLTIuMTkKZm9udC1hZG9iZS0xMDBkcGktMS4wLjMKZm9udC1h ZG9iZS03NWRwaS0xLjAuMwpmb250LWFkb2JlLXV0b3BpYS0xMDBkcGktMS4wLjQKZm9udC1hZG9i ZS11dG9waWEtNzVkcGktMS4wLjQKZm9udC1hZG9iZS11dG9waWEtdHlwZTEtMS4wLjQKZm9udC1h bGlhcy0xLjAuMwpmb250LWFtc2ZvbnRzLTMuMDJfMQpmb250LWFyYWJpYy1taXNjLTEuMC4zCmZv bnQtYmgtMTAwZHBpLTEuMC4zCmZvbnQtYmgtNzVkcGktMS4wLjMKZm9udC1iaC1sdWNpZGF0eXBl d3JpdGVyLTEwMGRwaS0xLjAuMwpmb250LWJoLWx1Y2lkYXR5cGV3cml0ZXItNzVkcGktMS4wLjMK Zm9udC1iaC10dGYtMS4wLjMKZm9udC1iaC10eXBlMS0xLjAuMwpmb250LWJpdHN0cmVhbS0xMDBk cGktMS4wLjMKZm9udC1iaXRzdHJlYW0tNzVkcGktMS4wLjMKZm9udC1iaXRzdHJlYW0tdHlwZTEt MS4wLjMKZm9udC1jcm9ueXgtY3lyaWxsaWMtMS4wLjMKZm9udC1jdXJzb3ItbWlzYy0xLjAuMwpm b250LWRhZXdvby1taXNjLTEuMC4zCmZvbnQtZGVjLW1pc2MtMS4wLjMKZm9udC1pYm0tdHlwZTEt MS4wLjMKZm9udC1pc2FzLW1pc2MtMS4wLjMKZm9udC1qaXMtbWlzYy0xLjAuMwpmb250LW1pY3Jv LW1pc2MtMS4wLjMKZm9udC1taXNjLWN5cmlsbGljLTEuMC4zCmZvbnQtbWlzYy1ldGhpb3BpYy0x LjAuMwpmb250LW1pc2MtbWVsdGhvLTEuMC4zCmZvbnQtbWlzYy1taXNjLTEuMS4yCmZvbnQtbXV0 dC1taXNjLTEuMC4zCmZvbnQtc2NodW1hY2hlci1taXNjLTEuMS4yCmZvbnQtc2NyZWVuLWN5cmls bGljLTEuMC40CmZvbnQtc29ueS1taXNjLTEuMC4zCmZvbnQtc3VuLW1pc2MtMS4wLjMKZm9udC11 dGlsLTEuMi4wCmZvbnQtd2luaXR6a2ktY3lyaWxsaWMtMS4wLjMKZm9udC14ZnJlZTg2LXR5cGUx LTEuMC40CmZvbnRjYWNoZXByb3RvLTAuMS4zCmZvbnRjb25maWctMi45LjAsMQpmb250c3Byb3Rv LTIuMS4xCmZvb21hdGljLWZpbHRlcnMtNC4wLjdfMQpmcmVlcGF0cy0yMDA2MDIxOQpmcmVldHlw ZS0xLjMuMV80CmZyZWV0eXBlLXRvb2xzLTEuMy4xXzkKZnJlZXR5cGUyLTIuNC45XzEKZnJlaTBy LTEuM18xCmdhbWluLTAuMS4xMF80CmdhcmNvbi0wLjIuMF8xCmdhd2stNC4wLjEKZ2NjLTQuNi4z Cmdjb25mMi0yLjMyLjBfMwpnZC0yLjAuMzVfOCwxCmdkYm0tMS45LjEKZ2RrLXBpeGJ1Zi0yLjIz LjVfMwpnZG0tMi4zMC41XzYKZ2VnbC0wLjEuOF80CmdlbnRpdW0tYmFzaWMtMS4xLjAKZ2V0b3B0 LTEuMS40XzIKZ2V0dGV4dC0wLjE4LjEuMQpnaG9zdHNjcmlwdDktOS4wNV81CmdpZmxpYi00LjIu MF8yCmdpbXAtMi42LjEyLDIKZ2ltcC1hcHAtMi42LjEyXzEsMQpnaW1wLWd1dGVucHJpbnQtNS4y LjgKZ2lvLWZhbS1iYWNrZW5kLTIuMjguOF8xCmdsaWItMS4yLjEwXzEzCmdsaWItMi4yOC44XzQK Z2xpYi1uZXR3b3JraW5nLTIuMjguN180CmdsaWJtbS0yLjI4LjIsMQpnbHByb3RvLTEuNC4xNQpn bWFrZS0zLjgyXzEKZ21wLTUuMC41Cmdub21lLWRlc2t0b3AtMi4zMi4xXzIKZ25vbWUtZG9jLXV0 aWxzLTAuMjAuMwpnbm9tZS1pY29uLXRoZW1lLTIuMzEuMF8yCmdub21lLW1lbnVzLTIuMzAuNQpn bm9tZS1taW1lLWRhdGEtMi4xOC4wXzQKZ25vbWUtbW91bnQtMC44XzEwCmdub21lLXBhbmVsLTIu MzIuMV8xCmdub21lLXNlc3Npb24tMi4zMi4xXzIKZ25vbWUtc2V0dGluZ3MtZGFlbW9uLTIuMzIu MV80Cmdub21lLXZmcy0yLjI0LjRfMQpnbm9tZV9zdWJyLTEuMApnbm9tZWhpZXItMi4zXzEyCmdu dXBnLTIuMC4xOV8yCmdudXRscy0yLjEyLjE4XzEKZ29iamVjdC1pbnRyb3NwZWN0aW9uLTAuMTAu OF8yCmdwYWMtbGliZ3BhYy0wLjQuNV82LDEKZ3BlcmYtMy4wLjMKZ3F2aWV3LTIuMC40XzEzCmdy YXBoaXRlMi0xLjEuMwpncmFwaHZpei0yLjI4LjBfMQpnc2V0dGluZ3MtZGVza3RvcC1zY2hlbWFz LTMuMC4xCmdzZm9udHMtOC4xMV81CmdzbC0xLjE1XzEKZ3N0cmVhbWVyLTAuMTAuMzYKZ3N0cmVh bWVyLWZmbXBlZy0wLjEwLjEzCmdzdHJlYW1lci1wbHVnaW5zLTAuMTAuMzZfMiwzCmdzdHJlYW1l ci1wbHVnaW5zLWE1MmRlYy0wLjEwLjE5LDMKZ3N0cmVhbWVyLXBsdWdpbnMtYmFkLTAuMTAuMjMs Mwpnc3RyZWFtZXItcGx1Z2lucy1jb3JlLTAuMTBfMTMKZ3N0cmVhbWVyLXBsdWdpbnMtZHRzLTAu MTAuMjMsMwpnc3RyZWFtZXItcGx1Z2lucy1kdmQtMC4xMC4xOSwzCmdzdHJlYW1lci1wbHVnaW5z LWdvb2QtMC4xMC4zMSwzCmdzdHJlYW1lci1wbHVnaW5zLWxpYnBuZy0wLjEwLjMxLDMKZ3N0cmVh bWVyLXBsdWdpbnMtbWFkLTAuMTAuMTksMwpnc3RyZWFtZXItcGx1Z2lucy1tcDMtMC4xMC4wXzEK Z3N0cmVhbWVyLXBsdWdpbnMtb2dnLTAuMTAuMzYsMwpnc3RyZWFtZXItcGx1Z2lucy1wYW5nby0w LjEwLjM2XzEsMwpnc3RyZWFtZXItcGx1Z2lucy10aGVvcmEtMC4xMC4zNiwzCmdzdHJlYW1lci1w bHVnaW5zLXVnbHktMC4xMC4xOSwzCmdzdHJlYW1lci1wbHVnaW5zLXZvcmJpcy0wLjEwLjM2LDMK Z3N0cmVhbWVyLXBsdWdpbnMtdnA4LTAuMTAuMjMsMwpnc3RyZWFtZXItcGx1Z2lucy14dmlkLTAu MTAuMjMsMwpndGstMS4yLjEwXzIyCmd0ay0yLjI0LjZfMgpndGstZW5naW5lczItMi4yMC4yXzEK Z3RrLXVwZGF0ZS1pY29uLWNhY2hlLTIuMjQuNl8xCmd0ay14ZmNlLWVuZ2luZS0zLjAuMQpndGtt bS0yLjI0LjJfMQpndGtzcGVsbC0yLjAuMTZfNApndWNoYXJtYXAtMi4zMi4xXzEKZ3V0ZW5wcmlu dC01LjIuOApndXRlbnByaW50LWJhc2UtNS4yLjgKZ3V0ZW5wcmludC1panMtNS4yLjgKZ3Zmcy0x LjYuNl8zCmhhbC0wLjUuMTRfMjAKaGRmNS0xLjguOQpoZWxwMm1hbi0xLjQwLjEyCmhpY29sb3It aWNvbi10aGVtZS0wLjEyCmhwbGlwLTMuMTIuMl8yCmh0bWwtNC4wMV8yCmh0bWwydGV4dC0xLjMu MmEKaHVuc3BlbGwtMS4zLjJfMQpoeXBoZW4tMi44LjYKaTJwLTAuOC43CmljZWF1dGgtMS4wLjUK aWNvbi1uYW1pbmctdXRpbHMtMC44LjkwCmljb25zLXRhbmdvLTAuOC45MF8yCmljb25zLXRhbmdv LWV4dHJhcy0wLjEuMF81CmljdS00LjguMS4xXzEKaWxtYmFzZS0xLjAuMgppbmtzY2FwZS0wLjQ4 LjJfMgppbnB1dHByb3RvLTIuMC4yCmludGx0b29sLTAuNDEuMQppcGVyZi0yLjAuNQppc28tY29k ZXMtMy4zNwppc284ODc5LTE5ODZfMwpqYWRlLTEuMi4xXzkKamFkZXRleC0zLjEzXzgKamFzcGVy LTEuOTAwLjFfMTAKamF2YS16b25laW5mby0yMDEyLmYKamF2YXZtd3JhcHBlci0yLjQKamJpZzJk ZWMtMC4xMV8xCmpiaWdraXQtMS42CmpwZWctOF8zCmp1bml0LTQuMTAKa2Jwcm90by0xLjAuNQpr ZGVoaWVyNC0xLjAuMTAKbGF0ZXgtY2prLTQuOC4yXzYKbGNtcy0xLjE5XzEsMQpsY21zMi0yLjQK bGliRU1GLTEuMApsaWJGUy0xLjAuMwpsaWJHTC03LjYuMV8yCmxpYkdMVS03LjYuMV8xCmxpYklD RS0xLjAuNywxCmxpYklETC0wLjguMTRfMQpsaWJTTS0xLjIuMCwxCmxpYlgxMS0xLjQuNCwxCmxp YlhTY3JuU2F2ZXItMS4yLjEKbGliWFRyYXAtMS4wLjAKbGliWGF1LTEuMC42CmxpYlhhdy0xLjAu OSwyCmxpYlhjb21wb3NpdGUtMC40LjMsMQpsaWJYY3Vyc29yLTEuMS4xMgpsaWJYZGFtYWdlLTEu MS4zCmxpYlhkbWNwLTEuMS4wCmxpYlhldmllLTEuMC4zCmxpYlhleHQtMS4zLjBfMSwxCmxpYlhm aXhlcy01LjAKbGliWGZvbnQtMS40LjRfMSwxCmxpYlhmb250Y2FjaGUtMS4wLjUKbGliWGZ0LTIu MS4xNApsaWJYaS0xLjQuNSwxCmxpYlhpbmVyYW1hLTEuMS4xLDEKbGliWG11LTEuMS4wLDEKbGli WHAtMS4wLjEsMQpsaWJYcG0tMy41LjkKbGliWHJhbmRyLTEuMy4yCmxpYlhyZW5kZXItMC45LjYK bGliWHJlcy0xLjAuNQpsaWJYdC0xLjEuMSwxCmxpYlh0c3QtMS4yLjAKbGliWHYtMS4wLjYsMQps aWJYdk1DLTEuMC42CmxpYlh4Zjg2ZGdhLTEuMS4yCmxpYlh4Zjg2bWlzYy0xLjAuMwpsaWJYeGY4 NnZtLTEuMS4xCmxpYmE1Mi0wLjcuNF8yCmxpYmFvLTEuMS4wXzEKbGliYXJ0X2xncGwtMi4zLjIx LDEKbGliYXNzdWFuLTIuMC4zCmxpYmF1ZGlvZmlsZS0wLjIuNwpsaWJib25vYm8tMi4zMi4wCmxp YmJvbm9ib3VpLTIuMjQuNF8xCmxpYmNhbmJlcnJhLTAuMjhfMwpsaWJjZGRiLTEuMy4yXzEKbGli Y2Rpby0wLjgzXzEKbGliY2hlY2stMC45LjgKbGliY21pcy0wLjEuMApsaWJjcm9jby0wLjYuMl8x CmxpYmRhZW1vbi0wLjE0CmxpYmRjYS0wLjAuNQpsaWJkbXgtMS4xLjEKbGliZHJtLTIuNC4xN18x CmxpYmR2ZGNzcy0xLjIuMTBfMQpsaWJkdmRyZWFkLTQuMi4wXzIKbGliZXJhdGlvbi1mb250cy10 dGYtMS4wNy4wLDEKbGliZXZlbnQtMS40LjE0Yl8yCmxpYmV2ZW50Mi0yLjAuMTkKbGliZXhlY2lu Zm8tMS4xXzMKbGliZXhpZi0wLjYuMjAKbGliZXhvLTAuOC4wXzIKbGliZXh0dGV4dGNhdC0zLjMu MV8xCmxpYmZmaS0zLjAuOQpsaWJmb250ZW5jLTEuMS4wCmxpYmZweC0xLjMuMS4xCmxpYmdjcnlw dC0xLjUuMF8xCmxpYmdlZS0wLjYuMi4xCmxpYmdsYWRlMi0yLjYuNF81CmxpYmdub21lLTIuMzIu MF8xCmxpYmdub21lLWtleXJpbmctMi4zMi4wXzIKbGliZ25vbWVjYW52YXMtMi4zMC4zXzEKbGli Z25vbWVrYmQtMi4zMi4wXzEKbGliZ3BnLWVycm9yLTEuMTAKbGliZ3Bob3RvMi0yLjQuMTQKbGli Z3NmLTEuMTQuMjFfMQpsaWJnd2VhdGhlci0yLjMwLjNfMQpsaWJpY29udi0xLjE0CmxpYmlkM3Rh Zy0wLjE1LjFiCmxpYmlkbi0xLjI1CmxpYmlqcy0wLjM1XzEKbGlia3NiYS0xLjMuMApsaWJscXIt MS0wLjQuMV8yCmxpYmx0ZGwtMi40LjIKbGlibWFkLTAuMTUuMWJfMgpsaWJtaWttb2QtZXNvdW5k LTMuMS4xMgpsaWJtbmctMS4wLjEwXzIKbGlibmljZS0wLjAuMTNfMwpsaWJub3RpZnktMC43LjNf MgpsaWJvZ2ctMS4zLjAsNApsaWJvbGRYLTEuMC4xCmxpYm9wZW5yYXctMC4wLjhfNApsaWJwYXBl ci0xLjEuMjRfMQpsaWJwY2lhY2Nlc3MtMC4xMi4xCmxpYnByb3h5LTAuNC42CmxpYnB0aHJlYWQt c3R1YnMtMC4zXzMKbGlicHVycGxlLTIuMTAuNgpsaWJyY2MtMC4yLjlfNgpsaWJyY2QtMC4xLjEz CmxpYnJlb2ZmaWNlLTMuNS42XzEKbGlicnN2ZzItMi4zNC4xXzEKbGlic2FtcGxlcmF0ZS0wLjEu OF8zCmxpYnNpZ2MrKy0yLjIuMTAKbGlic2lnc2Vndi0yLjEwCmxpYnNuZGZpbGUtMS4wLjI1XzIK bGlic291cC0yLjM0LjMKbGlic291cC1nbm9tZS0yLjM0LjNfMgpsaWJzcGlyby0yMDA3MTAyOQps aWJ0YXNuMS0yLjEzCmxpYnRoZW9yYS0xLjEuMV8zCmxpYnRvb2wtMi40LjIKbGlidG9ycmVudC1y YXN0ZXJiYXItMC4xNi40CmxpYnY0bC0wLjguOF8xCmxpYnZpc2lvLTAuMC4xOQpsaWJ2b2x1bWVf aWQtMC44MS4xCmxpYnZvcmJpcy0xLjMuM18xLDMKbGlidnB4LTEuMS4wCmxpYndtZi0wLjIuOC40 XzcKbGlid25jay0yLjMwLjZfMQpsaWJ3cGQtMC45LjRfMQpsaWJ3cGctMC4yLjFfMgpsaWJ3cHMt MC4yLjcKbGlid3d3LTUuNC4wXzQKbGlieGNiLTEuNwpsaWJ4ZmNlNGd1aS00LjEwLjBfMQpsaWJ4 ZmNlNG1lbnUtNC4xMC4wXzIKbGlieGZjZTR1dGlsLTQuMTAuMF8xCmxpYnhrYmZpbGUtMS4wLjcK bGlieGtidWktMS4wLjJfMQpsaWJ4a2xhdmllci01LjAsMQpsaWJ4bWwrKy0yLjM0LjIKbGlieG1s Mi0yLjcuOF81CmxpYnhzbHQtMS4xLjI2XzMKbGliemlwLTAuMTAuMQpsaW5rcy0wLjk4LDEKbGlu dXgtZjEwLWFsc2EtbGliLTEuMC4yMV8zCmxpbnV4LWYxMC1hbHNhLXBsdWdpbnMtb3NzLTEuMC4y MV8zCmxpbnV4LWYxMC1hdGstMS4yNC4wCmxpbnV4LWYxMC1jYWlyby0xLjguMF8yCmxpbnV4LWYx MC1jdXJsLTcuMTkuNl8xCmxpbnV4LWYxMC1jeXJ1cy1zYXNsMi0yLjEuMjJfMQpsaW51eC1mMTAt ZHJpLTcuMl8xCmxpbnV4LWYxMC1leHBhdC0yLjAuMQpsaW51eC1mMTAtZmxhc2hwbHVnaW4tMTEu MnIyMDIuMjM4CmxpbnV4LWYxMC1mb250Y29uZmlnLTIuNi4wCmxpbnV4LWYxMC1ndGsyLTIuMTQu N180CmxpbnV4LWYxMC1qcGVnLTZiCmxpbnV4LWYxMC1saWJhc3luY25zLTAuNwpsaW51eC1mMTAt bGlic2lnYysrMjAtMi4yLjIKbGludXgtZjEwLWxpYnNzaDItMC4xOApsaW51eC1mMTAtbGlidjRs LTAuNi4yCmxpbnV4LWYxMC1uc3ByLTQuNy42CmxpbnV4LWYxMC1uc3MtMy4xMi4zLjk5LjNfMQps aW51eC1mMTAtb3BlbmxkYXAtMi40LjEyXzEKbGludXgtZjEwLW9wZW5zc2wtMC45LjhnCmxpbnV4 LWYxMC1wYW5nby0xLjI4LjMKbGludXgtZjEwLXBuZy0xLjIuMzdfMgpsaW51eC1mMTAtc3FsaXRl My0zLjUuOV8xCmxpbnV4LWYxMC10aWZmLTMuOC4yCmxpbnV4LWYxMC14b3JnLWxpYnMtNy40XzEK bGludXhfYmFzZS1mMTAtMTBfNQpsaW51eGRvYy0xLjFfMQpsaW51eGxpYmVydGluZS1nLTIwMTIw MTE2CmxvY2FsZWRhdGEtNS40CmxwX3NvbHZlLTUuNS4yLjAKbHVhLTUuMS41XzQKbHVpdC0xLjEu MF8xCmx5bngtMi44LjcuMiwxCm00LTEuNC4xNl8xLDEKbWFrZWRlcGVuZC0xLjAuMywxCm1ha2Vw YXNzd2QtMS4xMF80Cm1jLWxpZ2h0LTQuMS40MC5wOV85Cm1kZHMtMC42LjEKbWtib2xkLW1raXRh bGljLTAuMTFfMQpta2ZvbnRkaXItMS4wLjYKbWtmb250c2NhbGUtMS4wLjkKbW9jLTIuNC40XzkK bW91c2VwYWQtMC4yLjE2XzExCm1wYWdlLTIuNS42Cm1wYy0wLjkKbXBmci0zLjEuMQptcGcxMjMt MS4xNC40Cm1wZzMyMS0wLjIuMTBfOAptcGxheWVyLTEuMS5yMjAxMjA3MjFfMQptcGxheWVyLXNr aW5zLTEuMS4zCm15c3FsLWNsaWVudC01LjEuNjUKbXlzcWwtc2VydmVyLTUuMS42NQpteXRoZXMt MS4yLjMKbmFzbS0yLjEwLjAzLDEKbmVvbjI5LTAuMjkuNl80Cm5ldC1zbm1wLTUuNy4xXzcKbmV0 cGJtLTEwLjM1Ljg2Cm5ldHRsZS0yLjUKbmxvYWQtMC43LjQKbm1hcC02LjI1XzEKbnNwbHVnaW53 cmFwcGVyLTEuNC40Cm5zcHItNC4xMApuc3MtMy4xNS4xCm51dC0yLjYuNApvcGVuLW1vdGlmLTIu My4zXzIKb3BlbmN2LWNvcmUtMi4zLjFfNApvcGVuamRrNi1iMjdfMwpvcGVuanBlZy0xLjUuMF8x Cm9wZXJhLTEyLjAyCm9wZXJhLWxpbnV4cGx1Z2lucy0xMi4wMgpvcmFnZS00LjguM18xCm9yYy0w LjQuMTYKcDExLWtpdC0wLjE0CnA1LUFyY2hpdmUtWmlwLTEuMzBfMQpwNS1BdXRoZW4tTlRMTS0x LjA5CnA1LUNyeXB0LU9wZW5TU0wtUmFuZG9tLTAuMDQKcDUtQ3J5cHQtUGFzc3dkTUQ1LTEuM18x CnA1LURhdGUtTWFuaXAtNi4zMwpwNS1EaWdlc3QtSE1BQy0xLjAzCnA1LUVuY29kZS1Mb2NhbGUt MS4wMwpwNS1GaWxlLUxpc3RpbmctNi4wNApwNS1GaWx0ZXItMS40NQpwNS1IVE1MLVBhcnNlci0z LjY5CnA1LUhUTUwtVGFnc2V0LTMuMjAKcDUtSFRUUC1Db29raWVzLTYuMDEKcDUtSFRUUC1EYWVt b24tNi4wMQpwNS1IVFRQLURhdGUtNi4wMgpwNS1IVFRQLU1lc3NhZ2UtNi4wM18xCnA1LUhUVFAt TmVnb3RpYXRlLTYuMDEKcDUtSU8tU29ja2V0LVNTTC0xLjc2CnA1LUxXUC1NZWRpYVR5cGVzLTYu MDIKcDUtTG9jYWxlLWdldHRleHQtMS4wNV8zCnA1LU5ldC1IVFRQLTYuMDNfMQpwNS1OZXQtU1NM ZWF5LTEuNDgKcDUtUGFyc2UtWWFwcC0xLjA1CnA1LVN3aXRjaC0yLjE2CnA1LVVSSS0xLjYwCnA1 LVVuaWNvZGUtTWFwOC0wLjEzCnA1LVVuaWNvZGUtU3RyaW5nLTIuMDkKcDUtV1dXLVJvYm90UnVs ZXMtNi4wMgpwNS1YTUwtRE9NLTEuNDQKcDUtWE1MLU5hbWVzcGFjZVN1cHBvcnQtMS4xMQpwNS1Y TUwtUGFyc2VyLTIuNDEKcDUtWE1MLVJlZ0V4cC0wLjA0CnA1LVhNTC1TQVgtMC45OQpwNS1YTUwt U0FYLUJhc2UtMS4wOApwNS1YTUwtU0FYLUV4cGF0LTAuNDBfMQpwNS1YTUwtU2ltcGxlLTIuMjAK cDUtWE1MLVhRTC0wLjY4CnA1LVlBTUwtU3ljay0xLjE5CnA1LWxpYnd3dy02LjA0CnA1LWxpYnht bC0wLjA4CnA1LXR5cGUxaW5zdC0wLjYuMV81CnBhbmdvLTEuMjguNF8xCnBhbmdvbW0tMi4yOC4y XzEKcGF0Y2gtMi43XzEKcGNpaWRzLTIwMTIwOTA2CnBjcmUtOC4zMV8xCnBkZmxpYi03LjAuNV8y CnBlY2wtcGRmbGliLTIuMS45CnBlcHMtMi4wXzUKcGVybC01LjE0LjJfMgpwaG9ub24tNC42LjBf MQpwaHA1My01LjMuMTcKcGhwNTMtY3R5cGUtNS4zLjE3CnBocDUzLWN1cmwtNS4zLjE3CnBocDUz LWRvbS01LjMuMTcKcGhwNTMtZ2QtNS4zLjE3CnBocDUzLWdldHRleHQtNS4zLjE3CnBocDUzLWhh c2gtNS4zLjE3CnBocDUzLWljb252LTUuMy4xNwpwaHA1My1qc29uLTUuMy4xNwpwaHA1My1teXNx bC01LjMuMTcKcGhwNTMtcGRvLTUuMy4xNwpwaHA1My1wZG9fc3FsaXRlLTUuMy4xNwpwaHA1My1w b3NpeC01LjMuMTcKcGhwNTMtc2Vzc2lvbi01LjMuMTcKcGhwNTMtc2ltcGxleG1sLTUuMy4xNwpw aHA1My1zcWxpdGUtNS4zLjE3CnBocDUzLXRva2VuaXplci01LjMuMTcKcGhwNTMteG1scmVhZGVy LTUuMy4xNwpwaHA1My14bWx3cml0ZXItNS4zLjE3CnBocDUzLXpsaWItNS4zLjE3CnBpZGdpbi0y LjEwLjYKcGl4bWFuLTAuMjQuMgpwa2djb25mLTAuOC45CnBuZy0xLjUuMTIKcG9saWN5a2l0LTAu OV82CnBvbGljeWtpdC1nbm9tZS0wLjkuMl82CnBvbGtpdC0wLjk5CnBvbGtpdC1nbm9tZS0wLjk5 XzEKcG9wcGxlci0wLjE4LjRfMgpwb3BwbGVyLWRhdGEtMC40LjUKcG9wcGxlci1nbGliLTAuMTgu NF8yCnBvcHQtMS4xNgpwb3J0bWFzdGVyLTMuMTQKcG9ydHVwZ3JhZGUtMi40LjkuOSwyCnByaW50 cHJvdG8tMS4wLjUKcHJvZnRwZC0xLjMuNGIKcHRoLTIuMC43CnB1bHNlYXVkaW8tMC45LjIzXzIK cHkyNy1jYWlyby0xLjguMTBfMQpweTI3LWRidXMtMC44NC4wCnB5MjctZ29iamVjdC0yLjI4LjZf MQpweTI3LWdzdHJlYW1lci0wLjEwLjIyXzEKcHkyNy1ndGstMi4yNC4wXzEKcHkyNy1pc29kYXRl LTAuNC44CnB5MjctbGlieG1sMi0yLjcuOF8yCnB5MjctcXQ0LWNvcmUtNC45LjFfMSwxCnB5Mjct cXQ0LWd1aS00LjkuMV8xLDEKcHkyNy1yZGZsaWItMy4yLjEKcHkyNy1zaXAtNC4xMy4yLDEKcHky Ny1zcWxpdGUzLTIuNy4zXzIKcHl0aG9uMjctMi43LjNfMwpxYml0dG9ycmVudC0zLjAuNgpxc2Np bnRpbGxhMi0yLjYuMV8xLDEKcXQ0LWFzc2lzdGFudC00LjguMgpxdDQtY2x1Y2VuZS00LjguMgpx dDQtY29yZWxpYi00LjguMgpxdDQtZGJ1cy00LjguMgpxdDQtZGVjbGFyYXRpdmUtNC44LjIKcXQ0 LWRlc2lnbmVyLTQuOC4yCnF0NC1kb2MtNC44LjIKcXQ0LWd1aS00LjguMl8xCnF0NC1oZWxwLTQu OC4yCnF0NC1pY29uZW5naW5lcy00LjguMgpxdDQtaW1hZ2Vmb3JtYXRzLTQuOC4yCnF0NC1pbnB1 dG1ldGhvZHMtNC44LjIKcXQ0LWxpbmd1aXN0LTQuOC4yCnF0NC1tb2MtNC44LjIKcXQ0LW5ldHdv cmstNC44LjIKcXQ0LW9wZW5nbC00LjguMgpxdDQtcG9ydGluZy00LjguMgpxdDQtcW1ha2UtNC44 LjJfMwpxdDQtcXQzc3VwcG9ydC00LjguMgpxdDQtcXRlc3RsaWItNC44LjIKcXQ0LXJjYy00Ljgu MgpxdDQtc2NyaXB0LTQuOC4yCnF0NC1zcWwtNC44LjIKcXQ0LXNxbGl0ZS1wbHVnaW4tNC44LjIK cXQ0LXN2Zy00LjguMgpxdDQtdWljLTQuOC4yCnF0NC11aWMzLTQuOC4yXzEKcXQ0LXdlYmtpdC00 LjguMgpxdDQteG1sLTQuOC4yCnF0NC14bWxwYXR0ZXJucy00LjguMgpxemVpdGdlaXN0LTAuOC4w CnJhbmRycHJvdG8tMS4zLjIKcmFwdG9yMi0yLjAuOApyYXItNC4yLjAsMwpyYXJpYW4tMC44LjEK cmFzcWFsLTAuOS4yOQpyZWNvZGUtMy42XzgKcmVjb3JkcHJvdG8tMS4xNC4xCnJlZGxhbmQtMS4w LjE1XzEKcmVuZGVycHJvdG8tMC4xMS4xCnJlc291cmNlcHJvdG8tMS4yLjAKcnBtLTMuMC42XzE1 CnJ1LWZyZWVic2QtZG9jLTM5Mjc4LDEKcnUtbGlicmVvZmZpY2UtMy41LjYKcnVieS0xLjguNy4z NzAsMQpydWJ5MTgtYmRiLTAuNi42CnNhbWJhMzQtbGlic21iY2xpZW50LTMuNC4xNwpzYW1wbGVp Y2MtMS42LjYKc2Ftcy0xLjAuNV81LDEKc2Nocm9lZGluZ2VyLTEuMC4xMQpzY3IycG5nLTEuMl81 CnNjcjJ0eHQtMS4yCnNjcm5zYXZlcnByb3RvLTEuMi4xCnNkbC0xLjIuMTVfMiwyCnNlc3NyZWct MS4wLjcKc2V0eGtibWFwLTEuMi4wCnNoYXJlZC1taW1lLWluZm8tMS4wXzEKc2t5cGUtMi4xLjAu ODFfMSwxCnNtcGxheWVyLTAuOC4wXzEKc21wbGF5ZXItdGhlbWVzLTAuMS4yMApzbXByb3h5LTEu MC41CnNwZWV4LTEuMi5yMV80LDEKc3FsaXRlMy0zLjguMC4xCnNxdWVlemUtMC4yLjNfNApzcXVp ZC0yLjcuOV8xCnNxdWlkR3VhcmQtMS40XzQKc3RhcnR1cC1ub3RpZmljYXRpb24tMC4xMgpzdWJ2 ZXJzaW9uLTEuNy42CnN2Z2FsaWItMS40LjNfNgp0MWxpYi01LjEuMl8xLDEKdDF1dGlscy0xLjMy CnRhbGxvYy0yLjAuNwp0ZVRlWC0zLjBfNgp0ZVRlWC1iYXNlLTMuMF8yMwp0ZVRlWC10ZXhtZi0z LjBfOAp0ZXJtaW51cy1mb250LTQuMzgKdGV4LXRleG1mbG9jYWwtMS45CnRleGkyaHRtbC01LjBf MSwxCnRodW5hci12ZnMtMS4yLjBfMgp0aHVuZGVyYmlyZC0xNi4wCnRpZHktbGliLTA5MDMxNS5j XzEKdGlmZi00LjAuMl8xCnRvci0wLjIuMy4yNQp0cmFuc21pc3Npb24tcXQ0LTIuNzEKdHJhbnNt aXNzaW9uLXdlYi0yLjcxCnRyYXBwcm90by0zLjQuMwp0dGYycHQxLTMuNC40XzIKdHdtLTEuMC43 CnVuaXF1ZS0xLjEuNl8zCnVuemlwLTYuMF8xCnVwb3dlci0wLjkuNwp2NGxfY29tcGF0LTEuMC4y MDEyMDUwMV8xCnZhbGEtMC4xMi4xCnZpZGVvcHJvdG8tMi4zLjEKdmlncmEtMS44LjAKdnRlLTAu MjYuMl8zCnczbS0wLjUuM18xCndhdnBhY2stNC42MC4xCndlYmNhbWQtMy4xMS4wLjIKd2ViZm9u dHMtMC4zMF82CndlYmtpdC1ndGsyLTEuNC4zXzEKd2VibGludC0xLjAyMAp3ZWJwLTAuMS4zXzEK d2dldC0xLjEzLjRfMQp3aW4zMi1jb2RlY3MtMjAxMTAxMzEsMQp4MTFwZXJmLTEuNS40CngyNjQt MC4xMjUuMjIwMQp4YWxhbi1qLTIuNy4xCnhhdXRoLTEuMC42CnhiYWNrbGlnaHQtMS4xLjIKeGJp dG1hcHMtMS4xLjEKeGNhbGMtMS4wLjQuMV8xCnhjYi1wcm90by0xLjcuMQp4Y2ItdXRpbC0wLjMu OCwxCnhjYi11dGlsLXJlbmRlcnV0aWwtMC4zLjgKeGNsb2NrLTEuMC42CnhjbWlzY3Byb3RvLTEu Mi4xCnhjbXNkYi0xLjAuMwp4Y3Vyc29yLXRoZW1lcy0xLjAuM18xCnhjdXJzb3JnZW4tMS4wLjRf MQp4ZGctdXRpbHMtMS4wLjJfNwp4ZHB5aW5mby0xLjMuMAp4ZHJpaW5mby0xLjAuNAp4ZHZpay10 ZXRleC0yMi44NC4xNl80CnhlcmNlcy1qLTIuMTEuMAp4ZXYtMS4xLjAKeGV4dHByb3RvLTcuMi4w CnhmODYtaW5wdXQta2V5Ym9hcmQtMS42LjEKeGY4Ni1pbnB1dC1tb3VzZS0xLjcuMQp4Zjg2LXZp ZGVvLWF0aS02LjE0LjNfMQp4Zjg2LXZpZGVvLWludGVsMjktMi45LjEKeGY4Ni12aWRlby1tYWNo NjQtNi45LjAKeGY4Ni12aWRlby1udi0yLjEuMThfMQp4Zjg2LXZpZGVvLW9wZW5jaHJvbWUtMC4y LjkwNF8zCnhmODYtdmlkZW8tcjEyOC02LjguMV8zCnhmODYtdmlkZW8tcmFkZW9uaGQtMS4zLjBf NQp4Zjg2LXZpZGVvLXZlc2EtMi4zLjBfMgp4Zjg2YmlnZm9udHByb3RvLTEuMi4wCnhmODZkZ2Et MS4wLjMKeGY4NmRnYXByb3RvLTIuMQp4Zjg2ZHJpcHJvdG8tMi4xLjEKeGY4Nm1pc2Nwcm90by0w LjkuMwp4Zjg2dmlkbW9kZXByb3RvLTIuMy4xCnhmY2UtNC4xMAp4ZmNlNC1hcHBmaW5kZXItNC4x MC4wXzEKeGZjZTQtYmF0dGVyeS1wbHVnaW4tMS4wLjUKeGZjZTQtY2xpcG1hbi1wbHVnaW4tMS4y LjNfMgp4ZmNlNC1jb25mLTQuMTAuMF8zCnhmY2U0LWRhdGV0aW1lLXBsdWdpbi0wLjYuMV8xMQp4 ZmNlNC1kZXNrdG9wLTQuMTAuMF8xCnhmY2U0LWdlbm1vbi1wbHVnaW4tMy40LjBfMQp4ZmNlNC1t aW5pY21kLXBsdWdpbi0wLjRfMTUKeGZjZTQtbWl4ZXItNC44LjBfMgp4ZmNlNC1tb3VudC1wbHVn aW4tMC42LjQKeGZjZTQtbm90ZXMtcGx1Z2luLTEuNy43XzIKeGZjZTQtbm90aWZ5ZC0wLjIuMl8y CnhmY2U0LXBhbmVsLTQuMTAuMF8yCnhmY2U0LXByaW50LTQuNi4xXzgKeGZjZTQtc2NyZWVuc2hv b3Rlci1wbHVnaW4tMS44LjEKeGZjZTQtc2Vzc2lvbi00LjEwLjBfMQp4ZmNlNC1zZXR0aW5ncy00 LjEwLjBfMgp4ZmNlNC1zeXN0ZW1sb2FkLXBsdWdpbi0xLjEuMQp4ZmNlNC10dW1ibGVyLTAuMS4y NV8yCnhmY2U0LXdtLTQuMTAuMF8xCnhmY2U0LXdtLXRoZW1lcy00LjEwLjBfMQp4ZmNlNC14a2It cGx1Z2luLTAuNS40LjNfMgp4Z2FtbWEtMS4wLjQKeGdjLTEuMC4zCnhob3N0LTEuMC40CnhodG1s LTEuMC4yMDAyMDgwMV80CnhpbmVyYW1hcHJvdG8tMS4yLjEKeGluaXQtMS4zLjIsMQp4aW5wdXQt MS41LjQKeGtiY29tcC0xLjIuMwp4a2JldmQtMS4xLjIKeGtidXRpbHMtMS4wLjMKeGtleWJvYXJk LWNvbmZpZy0yLjUuMQp4a2lsbC0xLjAuMwp4bG9ja21vcmUtNS40MAp4bHNhdG9tcy0xLjEuMAp4 bHNjbGllbnRzLTEuMS4yCnhtZXNzYWdlLTEuMC4zCnhtbGNhdG1nci0yLjIKeG1sY2hhcmVudC0w LjNfMgp4bWx0by0wLjAuMjUKeG1vZG1hcC0xLjAuNQp4bnZpZXctMS43MF8yCnhvcmctNy41LjIK eG9yZy1hcHBzLTcuNS4yCnhvcmctZG9jcy0xLjYsMQp4b3JnLWRyaXZlcnMtNy41LjIKeG9yZy1m b250cy0xMDBkcGktNy41LjEKeG9yZy1mb250cy03LjUuMQp4b3JnLWZvbnRzLTc1ZHBpLTcuNS4x CnhvcmctZm9udHMtY3lyaWxsaWMtNy41LjEKeG9yZy1mb250cy1taXNjYml0bWFwcy03LjUuMQp4 b3JnLWZvbnRzLXRydWV0eXBlLTcuNS4xCnhvcmctZm9udHMtdHlwZTEtNy41LjEKeG9yZy1saWJy YXJpZXMtNy41LjEKeG9yZy1tYWNyb3MtMS4xNi4xCnhvcmctc2VydmVyLTEuNy43XzYsMQp4cGRm LTMuMDNfMQp4cHItMS4wLjMKeHByb3AtMS4yLjEKeHByb3RvLTcuMC4yMgp4cmFuZHItMS4zLjUK eHJkYi0xLjAuOQp4cmVmcmVzaC0xLjAuNAp4c2V0LTEuMi4yXzEKeHNldG1vZGUtMS4wLjAKeHNl dHJvb3QtMS4xLjAKeHRlcm0tMjgyCnh0cmFucy0xLjIuNgp4dmlkLTEuMy4yLDEKeHZpbmZvLTEu MS4xCnh3ZC0xLjAuNAp4d2luaW5mby0xLjEuMgp4d3VkLTEuMC4zCnlhamwtMi4wLjRfMQp5YXNt LTEuMi4wCnplbml0eS0yLjMyLjFfMgp6aC1hcnBoaWN0dGYtMi4xMV8yCnpoLWRvY3Byb2otMC4x LjIwMDYwMzAzXzYKemgtdHRmMnB0MS0zLjQuMAp6aC10dGZtLTAuOS41XzMKemlwLTMuMAo= --001a11c2f3a60a386604e57c5168 Content-Type: application/octet-stream; name="config.log" Content-Disposition: attachment; filename="config.log" Content-Transfer-Encoding: base64 X-Attachment-Id: f_hl59t4by0 VGhpcyBmaWxlIGNvbnRhaW5zIGFueSBtZXNzYWdlcyBwcm9kdWNlZCBieSBjb21waWxlcnMgd2hp bGUKcnVubmluZyBjb25maWd1cmUsIHRvIGFpZCBkZWJ1Z2dpbmcgaWYgY29uZmlndXJlIG1ha2Vz IGEgbWlzdGFrZS4KCmNvbmZpZ3VyZToxMTEzOiBjaGVja2luZyBob3N0IHN5c3RlbSB0eXBlCmNv bmZpZ3VyZToxMTM0OiBjaGVja2luZyB0YXJnZXQgc3lzdGVtIHR5cGUKY29uZmlndXJlOjExNTI6 IGNoZWNraW5nIGJ1aWxkIHN5c3RlbSB0eXBlCmNvbmZpZ3VyZToxMjI2OiBjaGVja2luZyBmb3Ig bWF3awpjb25maWd1cmU6MTQwMDogY2hlY2tpbmcgUHl0aG9uIGVudmlyb25tZW50IGlzIE1vemls bGEgdmlydHVhbGVudgpjb25maWd1cmU6MTU5NjogY2hlY2tpbmcgZm9yIC91c3IvbG9jYWwvYmlu L3BlcmwKY29uZmlndXJlOjI5NTg6IGNoZWNraW5nIGZvciBnY2MKY29uZmlndXJlOjMwNzE6IGNo ZWNraW5nIHdoZXRoZXIgdGhlIEMgY29tcGlsZXIgKC91c3IvYmluL2NsYW5nIC1PMiAtcGlwZSAt Zm5vLXN0cmljdC1hbGlhc2luZyAgLUwvdXNyL2xvY2FsL2xpYiAtV2wsLXosb3JpZ2luIC1XbCwt cnBhdGgsXCQkT1JJR0lOKSB3b3Jrcwpjb25maWd1cmU6MzA4NzogL3Vzci9iaW4vY2xhbmcgLW8g Y29uZnRlc3QgLU8yIC1waXBlIC1mbm8tc3RyaWN0LWFsaWFzaW5nIC1pc3lzdGVtL3Vzci9sb2Nh bC9pbmNsdWRlICAtTC91c3IvbG9jYWwvbGliIC1XbCwteixvcmlnaW4gLVdsLC1ycGF0aCxcJCRP UklHSU4gY29uZnRlc3QuYyAgMT4mNQpjb25maWd1cmU6MzA4NDoxOiB3YXJuaW5nOiB0eXBlIHNw ZWNpZmllciBtaXNzaW5nLCBkZWZhdWx0cyB0byAnaW50JyBbLVdpbXBsaWNpdC1pbnRdCm1haW4o KXtyZXR1cm4oMCk7fQpefn5+CjEgd2FybmluZyBnZW5lcmF0ZWQuCmNvbmZpZ3VyZTozMTEzOiBj aGVja2luZyB3aGV0aGVyIHRoZSBDIGNvbXBpbGVyICgvdXNyL2Jpbi9jbGFuZyAtTzIgLXBpcGUg LWZuby1zdHJpY3QtYWxpYXNpbmcgIC1ML3Vzci9sb2NhbC9saWIgLVdsLC16LG9yaWdpbiAtV2ws LXJwYXRoLFwkJE9SSUdJTikgaXMgYSBjcm9zcy1jb21waWxlcgpjb25maWd1cmU6MzExODogY2hl Y2tpbmcgd2hldGhlciB3ZSBhcmUgdXNpbmcgR05VIEMKY29uZmlndXJlOjMxMjc6IC91c3IvYmlu L2NsYW5nIC1FIGNvbmZ0ZXN0LmMKY29uZmlndXJlOjMxNDY6IGNoZWNraW5nIHdoZXRoZXIgL3Vz ci9iaW4vY2xhbmcgYWNjZXB0cyAtZwpjb25maWd1cmU6MzE4NzogY2hlY2tpbmcgZm9yIGMrKwpj b25maWd1cmU6MzIxOTogY2hlY2tpbmcgd2hldGhlciB0aGUgQysrIGNvbXBpbGVyICgvdXNyL2Jp bi9jbGFuZysrIC1PMiAtcGlwZSAtZm5vLXN0cmljdC1hbGlhc2luZyAgLUwvdXNyL2xvY2FsL2xp YiAtV2wsLXosb3JpZ2luIC1XbCwtcnBhdGgsXCQkT1JJR0lOKSB3b3Jrcwpjb25maWd1cmU6MzIz NTogL3Vzci9iaW4vY2xhbmcrKyAtbyBjb25mdGVzdCAtTzIgLXBpcGUgLWZuby1zdHJpY3QtYWxp YXNpbmcgLWlzeXN0ZW0vdXNyL2xvY2FsL2luY2x1ZGUgIC1ML3Vzci9sb2NhbC9saWIgLVdsLC16 LG9yaWdpbiAtV2wsLXJwYXRoLFwkJE9SSUdJTiBjb25mdGVzdC5DICAxPiY1CmNvbmZpZ3VyZToz MjYxOiBjaGVja2luZyB3aGV0aGVyIHRoZSBDKysgY29tcGlsZXIgKC91c3IvYmluL2NsYW5nKysg LU8yIC1waXBlIC1mbm8tc3RyaWN0LWFsaWFzaW5nICAtTC91c3IvbG9jYWwvbGliIC1XbCwteixv cmlnaW4gLVdsLC1ycGF0aCxcJCRPUklHSU4pIGlzIGEgY3Jvc3MtY29tcGlsZXIKY29uZmlndXJl OjMyNjY6IGNoZWNraW5nIHdoZXRoZXIgd2UgYXJlIHVzaW5nIEdOVSBDKysKY29uZmlndXJlOjMy NzU6IC91c3IvYmluL2NsYW5nKysgLUUgY29uZnRlc3QuQwpjb25maWd1cmU6MzI5NDogY2hlY2tp bmcgd2hldGhlciAvdXNyL2Jpbi9jbGFuZysrIGFjY2VwdHMgLWcKY29uZmlndXJlOjMzMjg6IGNo ZWNraW5nIGZvciByYW5saWIKY29uZmlndXJlOjMzNjA6IGNoZWNraW5nIGZvciBhcwpjb25maWd1 cmU6MzQxNDogY2hlY2tpbmcgZm9yIGFyCmNvbmZpZ3VyZTozNDQ5OiBjaGVja2luZyBmb3IgbGQK Y29uZmlndXJlOjM0ODQ6IGNoZWNraW5nIGZvciBzdHJpcApjb25maWd1cmU6MzUxOTogY2hlY2tp bmcgZm9yIHdpbmRyZXMKY29uZmlndXJlOjQ0MzQ6IGNoZWNraW5nIGhvdyB0byBydW4gdGhlIEMg cHJlcHJvY2Vzc29yCmNvbmZpZ3VyZTo0NTE0OiBjaGVja2luZyBob3cgdG8gcnVuIHRoZSBDKysg cHJlcHJvY2Vzc29yCmNvbmZpZ3VyZTo0NTMyOiAvdXNyL2Jpbi9jbGFuZysrIC1FIC1pc3lzdGVt L3Vzci9sb2NhbC9pbmNsdWRlIGNvbmZ0ZXN0LkMgPi9kZXYvbnVsbCAyPmNvbmZ0ZXN0Lm91dApj b25maWd1cmU6NDYxNjogY2hlY2tpbmcgZm9yIGEgQlNEIGNvbXBhdGlibGUgaW5zdGFsbApjb25m aWd1cmU6NDY2OTogY2hlY2tpbmcgd2hldGhlciBsbiAtcyB3b3Jrcwpjb25maWd1cmU6NDY5Mjog Y2hlY2tpbmcgZm9yIG1pbmltdW0gcmVxdWlyZWQgcGVybCB2ZXJzaW9uID49IDUuMDA2CmNvbmZp Z3VyZTo0NzAzOiBjaGVja2luZyBmb3IgZnVsbCBwZXJsIGluc3RhbGxhdGlvbgpjb25maWd1cmU6 NDc0MDogY2hlY2tpbmcgZm9yIGRveHlnZW4KY29uZmlndXJlOjQ3ODk6IGNoZWNraW5nIGZvciBh dXRvY29uZgpjb25maWd1cmU6NDg0MDogY2hlY2tpbmcgZm9yIHVuemlwCmNvbmZpZ3VyZTo0ODk2 OiBjaGVja2luZyBmb3IgemlwCmNvbmZpZ3VyZTo0OTUwOiBjaGVja2luZyBmb3IgeGFyZ3MKY29u ZmlndXJlOjUwMDI6IGNoZWNraW5nIGZvciBycG1idWlsZApjb25maWd1cmU6NTE2NzogY2hlY2tp bmcgY29tcGlsZXIgdmVyc2lvbgpjb25maWd1cmU6NTI0MTogY2hlY2tpbmcgZm9yIGdtYWtlCmNv bmZpZ3VyZTo1MzA4OiBjaGVja2luZyBmb3IgWApjb25maWd1cmU6NTYyNTogY2hlY2tpbmcgZm9y IGRuZXRfbnRvYSBpbiAtbGRuZXQKY29uZmlndXJlOjU2NDQ6IC91c3IvYmluL2NsYW5nIC1vIGNv bmZ0ZXN0IC1PMiAtcGlwZSAtZm5vLXN0cmljdC1hbGlhc2luZyAtaXN5c3RlbS91c3IvbG9jYWwv aW5jbHVkZSAgLUwvdXNyL2xvY2FsL2xpYiAtV2wsLXosb3JpZ2luIC1XbCwtcnBhdGgsXCQkT1JJ R0lOIGNvbmZ0ZXN0LmMgLWxkbmV0ICAgMT4mNQovdXNyL2Jpbi9sZDogY2Fubm90IGZpbmQgLWxk bmV0CmNsYW5nOiBlcnJvcjogbGlua2VyIGNvbW1hbmQgZmFpbGVkIHdpdGggZXhpdCBjb2RlIDEg KHVzZSAtdiB0byBzZWUgaW52b2NhdGlvbikKY29uZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6 CiNsaW5lIDU2MzMgImNvbmZpZ3VyZSIKI2luY2x1ZGUgImNvbmZkZWZzLmgiCi8qIE92ZXJyaWRl IGFueSBnY2MyIGludGVybmFsIHByb3RvdHlwZSB0byBhdm9pZCBhbiBlcnJvci4gICovCi8qIFdl IHVzZSBjaGFyIGJlY2F1c2UgaW50IG1pZ2h0IG1hdGNoIHRoZSByZXR1cm4gdHlwZSBvZiBhIGdj YzIKICAgIGJ1aWx0aW4gYW5kIHRoZW4gaXRzIGFyZ3VtZW50IHByb3RvdHlwZSB3b3VsZCBzdGls bCBhcHBseS4gICovCmNoYXIgZG5ldF9udG9hKCk7CgppbnQgbWFpbigpIHsKZG5ldF9udG9hKCkK OyByZXR1cm4gMDsgfQpjb25maWd1cmU6NTY2NjogY2hlY2tpbmcgZm9yIGRuZXRfbnRvYSBpbiAt bGRuZXRfc3R1Ygpjb25maWd1cmU6NTY4NTogL3Vzci9iaW4vY2xhbmcgLW8gY29uZnRlc3QgLU8y IC1waXBlIC1mbm8tc3RyaWN0LWFsaWFzaW5nIC1pc3lzdGVtL3Vzci9sb2NhbC9pbmNsdWRlICAt TC91c3IvbG9jYWwvbGliIC1XbCwteixvcmlnaW4gLVdsLC1ycGF0aCxcJCRPUklHSU4gY29uZnRl c3QuYyAtbGRuZXRfc3R1YiAgIDE+JjUKL3Vzci9iaW4vbGQ6IGNhbm5vdCBmaW5kIC1sZG5ldF9z dHViCmNsYW5nOiBlcnJvcjogbGlua2VyIGNvbW1hbmQgZmFpbGVkIHdpdGggZXhpdCBjb2RlIDEg KHVzZSAtdiB0byBzZWUgaW52b2NhdGlvbikKY29uZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6 CiNsaW5lIDU2NzQgImNvbmZpZ3VyZSIKI2luY2x1ZGUgImNvbmZkZWZzLmgiCi8qIE92ZXJyaWRl IGFueSBnY2MyIGludGVybmFsIHByb3RvdHlwZSB0byBhdm9pZCBhbiBlcnJvci4gICovCi8qIFdl IHVzZSBjaGFyIGJlY2F1c2UgaW50IG1pZ2h0IG1hdGNoIHRoZSByZXR1cm4gdHlwZSBvZiBhIGdj YzIKICAgIGJ1aWx0aW4gYW5kIHRoZW4gaXRzIGFyZ3VtZW50IHByb3RvdHlwZSB3b3VsZCBzdGls bCBhcHBseS4gICovCmNoYXIgZG5ldF9udG9hKCk7CgppbnQgbWFpbigpIHsKZG5ldF9udG9hKCkK OyByZXR1cm4gMDsgfQpjb25maWd1cmU6NTcxNDogY2hlY2tpbmcgZm9yIGdldGhvc3RieW5hbWUK Y29uZmlndXJlOjU4MTI6IGNoZWNraW5nIGZvciBjb25uZWN0CmNvbmZpZ3VyZTo1ODQwOiAvdXNy L2Jpbi9jbGFuZyAtbyBjb25mdGVzdCAtTzIgLXBpcGUgLWZuby1zdHJpY3QtYWxpYXNpbmcgLWlz eXN0ZW0vdXNyL2xvY2FsL2luY2x1ZGUgIC1ML3Vzci9sb2NhbC9saWIgLVdsLC16LG9yaWdpbiAt V2wsLXJwYXRoLFwkJE9SSUdJTiBjb25mdGVzdC5jICAxPiY1CmNvbmZpZ3VyZTo1OTA0OiBjaGVj a2luZyBmb3IgcmVtb3ZlCmNvbmZpZ3VyZTo1OTMyOiAvdXNyL2Jpbi9jbGFuZyAtbyBjb25mdGVz dCAtTzIgLXBpcGUgLWZuby1zdHJpY3QtYWxpYXNpbmcgLWlzeXN0ZW0vdXNyL2xvY2FsL2luY2x1 ZGUgIC1ML3Vzci9sb2NhbC9saWIgLVdsLC16LG9yaWdpbiAtV2wsLXJwYXRoLFwkJE9SSUdJTiBj b25mdGVzdC5jICAxPiY1CmNvbmZpZ3VyZTo1OTk2OiBjaGVja2luZyBmb3Igc2htYXQKY29uZmln dXJlOjYwMjQ6IC91c3IvYmluL2NsYW5nIC1vIGNvbmZ0ZXN0IC1PMiAtcGlwZSAtZm5vLXN0cmlj dC1hbGlhc2luZyAtaXN5c3RlbS91c3IvbG9jYWwvaW5jbHVkZSAgLUwvdXNyL2xvY2FsL2xpYiAt V2wsLXosb3JpZ2luIC1XbCwtcnBhdGgsXCQkT1JJR0lOIGNvbmZ0ZXN0LmMgIDE+JjUKY29uZmln dXJlOjYwOTc6IGNoZWNraW5nIGZvciBJY2VDb25uZWN0aW9uTnVtYmVyIGluIC1sSUNFCmNvbmZp Z3VyZTo2MTE2OiAvdXNyL2Jpbi9jbGFuZyAtbyBjb25mdGVzdCAtTzIgLXBpcGUgLWZuby1zdHJp Y3QtYWxpYXNpbmcgLWlzeXN0ZW0vdXNyL2xvY2FsL2luY2x1ZGUgIC1ML3Vzci9sb2NhbC9saWIg LVdsLC16LG9yaWdpbiAtV2wsLXJwYXRoLFwkJE9SSUdJTiAtTC91c3IvbG9jYWwvbGliIGNvbmZ0 ZXN0LmMgLWxJQ0UgICAxPiY1CmNvbmZpZ3VyZTo2NTI0OiAvdXNyL2Jpbi9jbGFuZyAtYyAgLWlz eXN0ZW0vdXNyL2xvY2FsL2luY2x1ZGUgY29uZnRlc3QuYyAxPiY1CmNvbmZpZ3VyZTo2NTIwOjE1 OiBlcnJvcjogdXNlIG9mIHVuZGVjbGFyZWQgaWRlbnRpZmllciAnX190aHVtYjJfXycKcmV0dXJu IHNpemVvZihfX3RodW1iMl9fKTsKICAgICAgICAgICAgICBeCjEgZXJyb3IgZ2VuZXJhdGVkLgpj b25maWd1cmU6IGZhaWxlZCBwcm9ncmFtIHdhczoKI2xpbmUgNjUxNyAiY29uZmlndXJlIgojaW5j bHVkZSAiY29uZmRlZnMuaCIKCmludCBtYWluKCkgewpyZXR1cm4gc2l6ZW9mKF9fdGh1bWIyX18p Owo7IHJldHVybiAwOyB9CmNvbmZpZ3VyZTo2NzMzOiBjaGVja2luZyB0aGF0IHN0YXRpYyBhc3Nl cnRpb24gbWFjcm9zIHVzZWQgaW4gYXV0b2NvbmYgdGVzdHMgd29yawpjb25maWd1cmU6Njc1NDog L3Vzci9iaW4vY2xhbmcgLWMgLU8yIC1waXBlIC1mbm8tc3RyaWN0LWFsaWFzaW5nIC1pc3lzdGVt L3Vzci9sb2NhbC9pbmNsdWRlIGNvbmZ0ZXN0LmMgMT4mNQpjb25maWd1cmU6Njc3MTogL3Vzci9i aW4vY2xhbmcgLWMgLU8yIC1waXBlIC1mbm8tc3RyaWN0LWFsaWFzaW5nIC1pc3lzdGVtL3Vzci9s b2NhbC9pbmNsdWRlIGNvbmZ0ZXN0LmMgMT4mNQpjb25maWd1cmU6Njc3MToxOiBlcnJvcjogJ3N0 YXRpY19hc3NlcnRfbGluZV82NzcxJyBkZWNsYXJlZCBhcyBhbiBhcnJheSB3aXRoIGEgbmVnYXRp dmUgc2l6ZQpDT05GSUdVUkVfU1RBVElDX0FTU0VSVCgwKQpefn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fgpjb25maWd1cmU6Njc2Njo0NDogbm90ZTogZXhwYW5kZWQgZnJvbSBtYWNybyAnQ09ORklH VVJFX1NUQVRJQ19BU1NFUlQnCiNkZWZpbmUgQ09ORklHVVJFX1NUQVRJQ19BU1NFUlQoY29uZGl0 aW9uKSBDT05GSUdVUkVfU1RBVElDX0FTU0VSVF9JTVBMKGNvbmRpdGlvbiwgX19MSU5FX18pCiAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBeCmNvbmZpZ3VyZTo2NzY3 OjU1OiBub3RlOiBleHBhbmRlZCBmcm9tIG1hY3JvICdDT05GSUdVUkVfU1RBVElDX0FTU0VSVF9J TVBMJwojZGVmaW5lIENPTkZJR1VSRV9TVEFUSUNfQVNTRVJUX0lNUEwoY29uZGl0aW9uLCBsaW5l KSBDT05GSUdVUkVfU1RBVElDX0FTU0VSVF9JTVBMMihjb25kaXRpb24sIGxpbmUpCiAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF4KY29uZmlndXJl OjY3Njg6OTQ6IG5vdGU6IGV4cGFuZGVkIGZyb20gbWFjcm8gJ0NPTkZJR1VSRV9TVEFUSUNfQVNT RVJUX0lNUEwyJwojZGVmaW5lIENPTkZJR1VSRV9TVEFUSUNfQVNTRVJUX0lNUEwyKGNvbmRpdGlv biwgbGluZSkgdHlwZWRlZiBpbnQgc3RhdGljX2Fzc2VydF9saW5lXyMjbGluZVsoY29uZGl0aW9u KSA/IDEgOiAtMV0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXn5+fn5+fn5+ fn5+fn5+fn5+fn4KMSBlcnJvciBnZW5lcmF0ZWQuCmNvbmZpZ3VyZTogZmFpbGVkIHByb2dyYW0g d2FzOgojbGluZSA2NzY0ICJjb25maWd1cmUiCiNpbmNsdWRlICJjb25mZGVmcy5oIgoKI2RlZmlu ZSBDT05GSUdVUkVfU1RBVElDX0FTU0VSVChjb25kaXRpb24pIENPTkZJR1VSRV9TVEFUSUNfQVNT RVJUX0lNUEwoY29uZGl0aW9uLCBfX0xJTkVfXykKI2RlZmluZSBDT05GSUdVUkVfU1RBVElDX0FT U0VSVF9JTVBMKGNvbmRpdGlvbiwgbGluZSkgQ09ORklHVVJFX1NUQVRJQ19BU1NFUlRfSU1QTDIo Y29uZGl0aW9uLCBsaW5lKQojZGVmaW5lIENPTkZJR1VSRV9TVEFUSUNfQVNTRVJUX0lNUEwyKGNv bmRpdGlvbiwgbGluZSkgdHlwZWRlZiBpbnQgc3RhdGljX2Fzc2VydF9saW5lXyMjbGluZVsoY29u ZGl0aW9uKSA/IDEgOiAtMV0KCmludCBtYWluKCkgewpDT05GSUdVUkVfU1RBVElDX0FTU0VSVCgw KQo7IHJldHVybiAwOyB9CmNvbmZpZ3VyZTo2Nzk0OiAvdXNyL2Jpbi9jbGFuZysrIC1jIC1PMiAt cGlwZSAtZm5vLXN0cmljdC1hbGlhc2luZyAtaXN5c3RlbS91c3IvbG9jYWwvaW5jbHVkZSBjb25m dGVzdC5DIDE+JjUKY29uZmlndXJlOjY4MTE6IC91c3IvYmluL2NsYW5nKysgLWMgLU8yIC1waXBl IC1mbm8tc3RyaWN0LWFsaWFzaW5nIC1pc3lzdGVtL3Vzci9sb2NhbC9pbmNsdWRlIGNvbmZ0ZXN0 LkMgMT4mNQpjb25maWd1cmU6NjgxMToxOiBlcnJvcjogJ3N0YXRpY19hc3NlcnRfbGluZV82ODEx JyBkZWNsYXJlZCBhcyBhbiBhcnJheSB3aXRoIGEgbmVnYXRpdmUgc2l6ZQpDT05GSUdVUkVfU1RB VElDX0FTU0VSVCgwKQpefn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgpjb25maWd1cmU6NjgwNjo0 NDogbm90ZTogZXhwYW5kZWQgZnJvbSBtYWNybyAnQ09ORklHVVJFX1NUQVRJQ19BU1NFUlQnCiNk ZWZpbmUgQ09ORklHVVJFX1NUQVRJQ19BU1NFUlQoY29uZGl0aW9uKSBDT05GSUdVUkVfU1RBVElD X0FTU0VSVF9JTVBMKGNvbmRpdGlvbiwgX19MSU5FX18pCiAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBeCmNvbmZpZ3VyZTo2ODA3OjU1OiBub3RlOiBleHBhbmRlZCBm cm9tIG1hY3JvICdDT05GSUdVUkVfU1RBVElDX0FTU0VSVF9JTVBMJwojZGVmaW5lIENPTkZJR1VS RV9TVEFUSUNfQVNTRVJUX0lNUEwoY29uZGl0aW9uLCBsaW5lKSBDT05GSUdVUkVfU1RBVElDX0FT U0VSVF9JTVBMMihjb25kaXRpb24sIGxpbmUpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIF4KY29uZmlndXJlOjY4MDg6OTQ6IG5vdGU6IGV4cGFu ZGVkIGZyb20gbWFjcm8gJ0NPTkZJR1VSRV9TVEFUSUNfQVNTRVJUX0lNUEwyJwojZGVmaW5lIENP TkZJR1VSRV9TVEFUSUNfQVNTRVJUX0lNUEwyKGNvbmRpdGlvbiwgbGluZSkgdHlwZWRlZiBpbnQg c3RhdGljX2Fzc2VydF9saW5lXyMjbGluZVsoY29uZGl0aW9uKSA/IDEgOiAtMV0KICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgXn5+fn5+fn5+fn5+fn5+fn5+fn4KMSBlcnJvciBn ZW5lcmF0ZWQuCmNvbmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2FzOgojbGluZSA2ODA0ICJjb25m aWd1cmUiCiNpbmNsdWRlICJjb25mZGVmcy5oIgoKI2RlZmluZSBDT05GSUdVUkVfU1RBVElDX0FT U0VSVChjb25kaXRpb24pIENPTkZJR1VSRV9TVEFUSUNfQVNTRVJUX0lNUEwoY29uZGl0aW9uLCBf X0xJTkVfXykKI2RlZmluZSBDT05GSUdVUkVfU1RBVElDX0FTU0VSVF9JTVBMKGNvbmRpdGlvbiwg bGluZSkgQ09ORklHVVJFX1NUQVRJQ19BU1NFUlRfSU1QTDIoY29uZGl0aW9uLCBsaW5lKQojZGVm aW5lIENPTkZJR1VSRV9TVEFUSUNfQVNTRVJUX0lNUEwyKGNvbmRpdGlvbiwgbGluZSkgdHlwZWRl ZiBpbnQgc3RhdGljX2Fzc2VydF9saW5lXyMjbGluZVsoY29uZGl0aW9uKSA/IDEgOiAtMV0KCmlu dCBtYWluKCkgewpDT05GSUdVUkVfU1RBVElDX0FTU0VSVCgwKQo7IHJldHVybiAwOyB9CmNvbmZp Z3VyZTo2OTc4OiBjaGVja2luZyBmb3IgLS1ub2V4ZWNzdGFjayBvcHRpb24gdG8gYXMKY29uZmln dXJlOjY5ODk6IC91c3IvYmluL2NsYW5nIC1jIC1PMiAtcGlwZSAtZm5vLXN0cmljdC1hbGlhc2lu ZyAtc3RkPWdudTk5IC1mZ251ODktaW5saW5lIC1mbm8tc3RyaWN0LWFsaWFzaW5nIC1XYSwtLW5v ZXhlY3N0YWNrIC1RdW51c2VkLWFyZ3VtZW50cyAtaXN5c3RlbS91c3IvbG9jYWwvaW5jbHVkZSBj b25mdGVzdC5jIDE+JjUKY29uZmlndXJlOjcwMDI6IGNoZWNraW5nIGZvciAteiBub2V4ZWNzdGFj ayBvcHRpb24gdG8gbGQKY29uZmlndXJlOjcwMTM6IC91c3IvYmluL2NsYW5nIC1vIGNvbmZ0ZXN0 IC1PMiAtcGlwZSAtZm5vLXN0cmljdC1hbGlhc2luZyAtc3RkPWdudTk5IC1mZ251ODktaW5saW5l IC1mbm8tc3RyaWN0LWFsaWFzaW5nIC1RdW51c2VkLWFyZ3VtZW50cyAtaXN5c3RlbS91c3IvbG9j YWwvaW5jbHVkZSAgLUwvdXNyL2xvY2FsL2xpYiAtV2wsLXosb3JpZ2luIC1XbCwtcnBhdGgsXCQk T1JJR0lOIC1XbCwteixub2V4ZWNzdGFjayBjb25mdGVzdC5jICAxPiY1CmNvbmZpZ3VyZTo3MDI1 OiBjaGVja2luZyBmb3IgLS1idWlsZC1pZCBvcHRpb24gdG8gbGQKY29uZmlndXJlOjcwMzY6IC91 c3IvYmluL2NsYW5nIC1vIGNvbmZ0ZXN0IC1PMiAtcGlwZSAtZm5vLXN0cmljdC1hbGlhc2luZyAt c3RkPWdudTk5IC1mZ251ODktaW5saW5lIC1mbm8tc3RyaWN0LWFsaWFzaW5nIC1RdW51c2VkLWFy Z3VtZW50cyAtaXN5c3RlbS91c3IvbG9jYWwvaW5jbHVkZSAgLUwvdXNyL2xvY2FsL2xpYiAtV2ws LXosb3JpZ2luIC1XbCwtcnBhdGgsXCQkT1JJR0lOIC1XbCwteixub2V4ZWNzdGFjayAtV2wsLS1i dWlsZC1pZCBjb25mdGVzdC5jICAxPiY1Ci91c3IvYmluL2xkOiB1bnJlY29nbml6ZWQgb3B0aW9u ICctLWJ1aWxkLWlkJwovdXNyL2Jpbi9sZDogdXNlIHRoZSAtLWhlbHAgb3B0aW9uIGZvciB1c2Fn ZSBpbmZvcm1hdGlvbgpjbGFuZzogZXJyb3I6IGxpbmtlciBjb21tYW5kIGZhaWxlZCB3aXRoIGV4 aXQgY29kZSAxICh1c2UgLXYgdG8gc2VlIGludm9jYXRpb24pCmNvbmZpZ3VyZTogZmFpbGVkIHBy b2dyYW0gd2FzOgojbGluZSA3MDI5ICJjb25maWd1cmUiCiNpbmNsdWRlICJjb25mZGVmcy5oIgoK aW50IG1haW4oKSB7Cgo7IHJldHVybiAwOyB9CmNvbmZpZ3VyZTo3MDUyOiBjaGVja2luZyBpZiB0 b29sY2hhaW4gc3VwcG9ydHMgLW1zc3NlMyBvcHRpb24KY29uZmlndXJlOjcwNjQ6IC91c3IvYmlu L2NsYW5nIC1jIC1PMiAtcGlwZSAtZm5vLXN0cmljdC1hbGlhc2luZyAtc3RkPWdudTk5IC1mZ251 ODktaW5saW5lIC1mbm8tc3RyaWN0LWFsaWFzaW5nIC1tc3NzZTMgLVF1bnVzZWQtYXJndW1lbnRz IC1pc3lzdGVtL3Vzci9sb2NhbC9pbmNsdWRlIGNvbmZ0ZXN0LmMgMT4mNQpjb25maWd1cmU6NzA4 MDogY2hlY2tpbmcgaWYgdG9vbGNoYWluIHN1cHBvcnRzIC1tc3NlNC4xIG9wdGlvbgpjb25maWd1 cmU6NzA5MjogL3Vzci9iaW4vY2xhbmcgLWMgLU8yIC1waXBlIC1mbm8tc3RyaWN0LWFsaWFzaW5n IC1zdGQ9Z251OTkgLWZnbnU4OS1pbmxpbmUgLWZuby1zdHJpY3QtYWxpYXNpbmcgLW1zc2U0LjEg LVF1bnVzZWQtYXJndW1lbnRzIC1pc3lzdGVtL3Vzci9sb2NhbC9pbmNsdWRlIGNvbmZ0ZXN0LmMg MT4mNQpjb25maWd1cmU6NzExODogY2hlY2tpbmcgd2hldGhlciB0aGUgQyBjb21waWxlciBzdXBw b3J0cyAtV2Vycm9yPXJldHVybi10eXBlCmNvbmZpZ3VyZTo3MTQxOiAvdXNyL2Jpbi9jbGFuZyAt YyAtTzIgLXBpcGUgLWZuby1zdHJpY3QtYWxpYXNpbmcgLXN0ZD1nbnU5OSAtZmdudTg5LWlubGlu ZSAtZm5vLXN0cmljdC1hbGlhc2luZyAtV2Vycm9yIC1XZXJyb3I9cmV0dXJuLXR5cGUgLVF1bnVz ZWQtYXJndW1lbnRzIC1pc3lzdGVtL3Vzci9sb2NhbC9pbmNsdWRlIGNvbmZ0ZXN0LmMgMT4mNQpj b25maWd1cmU6NzE2OTogY2hlY2tpbmcgd2hldGhlciB0aGUgQyBjb21waWxlciBzdXBwb3J0cyAt V3R5cGUtbGltaXRzCmNvbmZpZ3VyZTo3MTkyOiAvdXNyL2Jpbi9jbGFuZyAtYyAtTzIgLXBpcGUg LWZuby1zdHJpY3QtYWxpYXNpbmcgLXN0ZD1nbnU5OSAtZmdudTg5LWlubGluZSAtZm5vLXN0cmlj dC1hbGlhc2luZyAtV2Vycm9yIC1XdHlwZS1saW1pdHMgLVF1bnVzZWQtYXJndW1lbnRzIC1pc3lz dGVtL3Vzci9sb2NhbC9pbmNsdWRlIGNvbmZ0ZXN0LmMgMT4mNQpjb25maWd1cmU6NzIyMDogY2hl Y2tpbmcgd2hldGhlciB0aGUgQyBjb21waWxlciBzdXBwb3J0cyAtV2VtcHR5LWJvZHkKY29uZmln dXJlOjcyNDM6IC91c3IvYmluL2NsYW5nIC1jIC1PMiAtcGlwZSAtZm5vLXN0cmljdC1hbGlhc2lu ZyAtc3RkPWdudTk5IC1mZ251ODktaW5saW5lIC1mbm8tc3RyaWN0LWFsaWFzaW5nIC1XZXJyb3Ig LVdlbXB0eS1ib2R5IC1RdW51c2VkLWFyZ3VtZW50cyAtaXN5c3RlbS91c3IvbG9jYWwvaW5jbHVk ZSBjb25mdGVzdC5jIDE+JjUKY29uZmlndXJlOjcyNzE6IGNoZWNraW5nIHdoZXRoZXIgdGhlIEMg Y29tcGlsZXIgc3VwcG9ydHMgLVdzaWduLWNvbXBhcmUKY29uZmlndXJlOjcyOTQ6IC91c3IvYmlu L2NsYW5nIC1jIC1PMiAtcGlwZSAtZm5vLXN0cmljdC1hbGlhc2luZyAtc3RkPWdudTk5IC1mZ251 ODktaW5saW5lIC1mbm8tc3RyaWN0LWFsaWFzaW5nIC1XZXJyb3IgLVdzaWduLWNvbXBhcmUgLVF1 bnVzZWQtYXJndW1lbnRzIC1pc3lzdGVtL3Vzci9sb2NhbC9pbmNsdWRlIGNvbmZ0ZXN0LmMgMT4m NQpjb25maWd1cmU6NzM4MjogY2hlY2tpbmcgd2hldGhlciB0aGUgQysrIGNvbXBpbGVyIHN1cHBv cnRzIC1XZXJyb3I9cmV0dXJuLXR5cGUKY29uZmlndXJlOjc0MDU6IC91c3IvYmluL2NsYW5nKysg LWMgLU8yIC1waXBlIC1mbm8tc3RyaWN0LWFsaWFzaW5nIC1mbm8tZXhjZXB0aW9ucyAtZm5vLXN0 cmljdC1hbGlhc2luZyAtV2Vycm9yIC1XZXJyb3I9cmV0dXJuLXR5cGUgLVF1bnVzZWQtYXJndW1l bnRzIC1pc3lzdGVtL3Vzci9sb2NhbC9pbmNsdWRlIGNvbmZ0ZXN0LkMgMT4mNQpjb25maWd1cmU6 NzQzMzogY2hlY2tpbmcgd2hldGhlciB0aGUgQysrIGNvbXBpbGVyIHN1cHBvcnRzIC1XdHlwZS1s aW1pdHMKY29uZmlndXJlOjc0NTY6IC91c3IvYmluL2NsYW5nKysgLWMgLU8yIC1waXBlIC1mbm8t c3RyaWN0LWFsaWFzaW5nIC1mbm8tZXhjZXB0aW9ucyAtZm5vLXN0cmljdC1hbGlhc2luZyAtV2Vy cm9yIC1XdHlwZS1saW1pdHMgLVF1bnVzZWQtYXJndW1lbnRzIC1pc3lzdGVtL3Vzci9sb2NhbC9p bmNsdWRlIGNvbmZ0ZXN0LkMgMT4mNQpjb25maWd1cmU6NzQ4NDogY2hlY2tpbmcgd2hldGhlciB0 aGUgQysrIGNvbXBpbGVyIHN1cHBvcnRzIC1XZW1wdHktYm9keQpjb25maWd1cmU6NzUwNzogL3Vz ci9iaW4vY2xhbmcrKyAtYyAtTzIgLXBpcGUgLWZuby1zdHJpY3QtYWxpYXNpbmcgLWZuby1leGNl cHRpb25zIC1mbm8tc3RyaWN0LWFsaWFzaW5nIC1XZXJyb3IgLVdlbXB0eS1ib2R5IC1RdW51c2Vk LWFyZ3VtZW50cyAtaXN5c3RlbS91c3IvbG9jYWwvaW5jbHVkZSBjb25mdGVzdC5DIDE+JjUKY29u ZmlndXJlOjc1MzU6IGNoZWNraW5nIHdoZXRoZXIgdGhlIEMrKyBjb21waWxlciBzdXBwb3J0cyAt V3NpZ24tY29tcGFyZQpjb25maWd1cmU6NzU1ODogL3Vzci9iaW4vY2xhbmcrKyAtYyAtTzIgLXBp cGUgLWZuby1zdHJpY3QtYWxpYXNpbmcgLWZuby1leGNlcHRpb25zIC1mbm8tc3RyaWN0LWFsaWFz aW5nIC1XZXJyb3IgLVdzaWduLWNvbXBhcmUgLVF1bnVzZWQtYXJndW1lbnRzIC1pc3lzdGVtL3Vz ci9sb2NhbC9pbmNsdWRlIGNvbmZ0ZXN0LkMgMT4mNQpjb25maWd1cmU6NzU5MDogY2hlY2tpbmcg d2hldGhlciB0aGUgQysrIGNvbXBpbGVyIHN1cHBvcnRzIC1Xbm8taW52YWxpZC1vZmZzZXRvZgpj b25maWd1cmU6NzYxMzogL3Vzci9iaW4vY2xhbmcrKyAtYyAtTzIgLXBpcGUgLWZuby1zdHJpY3Qt YWxpYXNpbmcgLWZuby1leGNlcHRpb25zIC1mbm8tc3RyaWN0LWFsaWFzaW5nIC1XZXJyb3IgLVdp bnZhbGlkLW9mZnNldG9mIC1RdW51c2VkLWFyZ3VtZW50cyAtaXN5c3RlbS91c3IvbG9jYWwvaW5j bHVkZSBjb25mdGVzdC5DIDE+JjUKY29uZmlndXJlOjc2NjU6IGNoZWNraW5nIHdoZXRoZXIgdGhl IEMrKyBjb21waWxlciBzdXBwb3J0cyAtV25vLWV4dGVuZGVkLW9mZnNldG9mCmNvbmZpZ3VyZTo3 Njg4OiAvdXNyL2Jpbi9jbGFuZysrIC1jIC1PMiAtcGlwZSAtZm5vLXN0cmljdC1hbGlhc2luZyAt Zm5vLWV4Y2VwdGlvbnMgLWZuby1zdHJpY3QtYWxpYXNpbmcgLVdlcnJvciAtV2V4dGVuZGVkLW9m ZnNldG9mIC1RdW51c2VkLWFyZ3VtZW50cyAtaXN5c3RlbS91c3IvbG9jYWwvaW5jbHVkZSBjb25m dGVzdC5DIDE+JjUKY29uZmlndXJlOjc3MjY6IGNoZWNraW5nIHdoZXRoZXIgbGQgaGFzIGFyY2hp dmUgZXh0cmFjdGlvbiBmbGFncwpjb25maWd1cmU6Nzc1MDogL3Vzci9iaW4vY2xhbmcgLW8gY29u ZnRlc3QgLU8yIC1waXBlIC1mbm8tc3RyaWN0LWFsaWFzaW5nIC1zdGQ9Z251OTkgLWZnbnU4OS1p bmxpbmUgLWZuby1zdHJpY3QtYWxpYXNpbmcgLVF1bnVzZWQtYXJndW1lbnRzIC1pc3lzdGVtL3Vz ci9sb2NhbC9pbmNsdWRlIC1XbCwtLXdob2xlLWFyY2hpdmUgY29uZnRlc3QuYyAtV2wsLS1uby13 aG9sZS1hcmNoaXZlIDE+JjUKY29uZmlndXJlOjc3ODU6IGNoZWNraW5nIGZvciA2NC1iaXQgT1MK Y29uZmlndXJlOjc3OTQ6IC91c3IvYmluL2NsYW5nIC1jIC1PMiAtcGlwZSAtZm5vLXN0cmljdC1h bGlhc2luZyAtc3RkPWdudTk5IC1mZ251ODktaW5saW5lIC1mbm8tc3RyaWN0LWFsaWFzaW5nIC1R dW51c2VkLWFyZ3VtZW50cyAtaXN5c3RlbS91c3IvbG9jYWwvaW5jbHVkZSBjb25mdGVzdC5jIDE+ JjUKY29uZmlndXJlOjc3OTQ6MTogZXJyb3I6ICdzdGF0aWNfYXNzZXJ0X2xpbmVfNzc5NCcgZGVj bGFyZWQgYXMgYW4gYXJyYXkgd2l0aCBhIG5lZ2F0aXZlIHNpemUKQ09ORklHVVJFX1NUQVRJQ19B U1NFUlQoc2l6ZW9mKHZvaWQqKSA9PSA4KQpefn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+CmNvbmZpZ3VyZTo3Nzg5OjQ0OiBub3RlOiBleHBhbmRlZCBmcm9tIG1hY3Jv ICdDT05GSUdVUkVfU1RBVElDX0FTU0VSVCcKI2RlZmluZSBDT05GSUdVUkVfU1RBVElDX0FTU0VS VChjb25kaXRpb24pIENPTkZJR1VSRV9TVEFUSUNfQVNTRVJUX0lNUEwoY29uZGl0aW9uLCBfX0xJ TkVfXykKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF4KY29uZmln dXJlOjc3OTA6NTU6IG5vdGU6IGV4cGFuZGVkIGZyb20gbWFjcm8gJ0NPTkZJR1VSRV9TVEFUSUNf QVNTRVJUX0lNUEwnCiNkZWZpbmUgQ09ORklHVVJFX1NUQVRJQ19BU1NFUlRfSU1QTChjb25kaXRp b24sIGxpbmUpIENPTkZJR1VSRV9TVEFUSUNfQVNTRVJUX0lNUEwyKGNvbmRpdGlvbiwgbGluZSkK ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXgpj b25maWd1cmU6Nzc5MTo5NDogbm90ZTogZXhwYW5kZWQgZnJvbSBtYWNybyAnQ09ORklHVVJFX1NU QVRJQ19BU1NFUlRfSU1QTDInCiNkZWZpbmUgQ09ORklHVVJFX1NUQVRJQ19BU1NFUlRfSU1QTDIo Y29uZGl0aW9uLCBsaW5lKSB0eXBlZGVmIGludCBzdGF0aWNfYXNzZXJ0X2xpbmVfIyNsaW5lWyhj b25kaXRpb24pID8gMSA6IC0xXQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBe fn5+fn5+fn5+fn5+fn5+fn5+fgoxIGVycm9yIGdlbmVyYXRlZC4KY29uZmlndXJlOiBmYWlsZWQg cHJvZ3JhbSB3YXM6CiNsaW5lIDc3ODcgImNvbmZpZ3VyZSIKI2luY2x1ZGUgImNvbmZkZWZzLmgi CgojZGVmaW5lIENPTkZJR1VSRV9TVEFUSUNfQVNTRVJUKGNvbmRpdGlvbikgQ09ORklHVVJFX1NU QVRJQ19BU1NFUlRfSU1QTChjb25kaXRpb24sIF9fTElORV9fKQojZGVmaW5lIENPTkZJR1VSRV9T VEFUSUNfQVNTRVJUX0lNUEwoY29uZGl0aW9uLCBsaW5lKSBDT05GSUdVUkVfU1RBVElDX0FTU0VS VF9JTVBMMihjb25kaXRpb24sIGxpbmUpCiNkZWZpbmUgQ09ORklHVVJFX1NUQVRJQ19BU1NFUlRf SU1QTDIoY29uZGl0aW9uLCBsaW5lKSB0eXBlZGVmIGludCBzdGF0aWNfYXNzZXJ0X2xpbmVfIyNs aW5lWyhjb25kaXRpb24pID8gMSA6IC0xXQoKaW50IG1haW4oKSB7CkNPTkZJR1VSRV9TVEFUSUNf QVNTRVJUKHNpemVvZih2b2lkKikgPT0gOCkKOyByZXR1cm4gMDsgfQpjb25maWd1cmU6ODIyOTog Y2hlY2tpbmcgZm9yIGN1c3RvbSA8c3RkaW50Lmg+IGltcGxlbWVudGF0aW9uCmNvbmZpZ3VyZTo5 NTY2OiBjaGVja2luZyB3aGV0aGVyIHRoZSBsaW5rZXIgc3VwcG9ydHMgSWRlbnRpY2FsIENvZGUg Rm9sZGluZwpjb25maWd1cmU6OTU3NTogL3Vzci9iaW4vY2xhbmcgLW8gY29uZnRlc3QgIC1ML3Vz ci9sb2NhbC9saWIgLVdsLC16LG9yaWdpbiAtV2wsLXJwYXRoLFwkJE9SSUdJTiAtV2wsLXosbm9l eGVjc3RhY2sgLVdsLC0taWNmPXNhZmUgLWZmdW5jdGlvbi1zZWN0aW9ucyBjb25mdGVzdC5jICAx PiYyCi91c3IvYmluL2xkOiB1bnJlY29nbml6ZWQgb3B0aW9uICctLWljZj1zYWZlJwovdXNyL2Jp bi9sZDogdXNlIHRoZSAtLWhlbHAgb3B0aW9uIGZvciB1c2FnZSBpbmZvcm1hdGlvbgpjbGFuZzog ZXJyb3I6IGxpbmtlciBjb21tYW5kIGZhaWxlZCB3aXRoIGV4aXQgY29kZSAxICh1c2UgLXYgdG8g c2VlIGludm9jYXRpb24pCmNvbmZpZ3VyZTo5NjQ2OiBjaGVja2luZyBmb3IgQU5TSSBDIGhlYWRl ciBmaWxlcwpjb25maWd1cmU6OTc1MzogY2hlY2tpbmcgZm9yIHdvcmtpbmcgY29uc3QKY29uZmln dXJlOjk4MDc6IC91c3IvYmluL2NsYW5nIC1jIC1PMiAtcGlwZSAtZm5vLXN0cmljdC1hbGlhc2lu ZyAtc3RkPWdudTk5IC1mZ251ODktaW5saW5lIC1mbm8tc3RyaWN0LWFsaWFzaW5nIC1mZnVuY3Rp b24tc2VjdGlvbnMgLWZkYXRhLXNlY3Rpb25zIC1RdW51c2VkLWFyZ3VtZW50cyAtaXN5c3RlbS91 c3IvbG9jYWwvaW5jbHVkZSBjb25mdGVzdC5jIDE+JjUKY29uZmlndXJlOjk4MzE6IGNoZWNraW5n IGZvciBtb2RlX3QKY29uZmlndXJlOjk4Njc6IGNoZWNraW5nIGZvciBvZmZfdApjb25maWd1cmU6 OTkwMzogY2hlY2tpbmcgZm9yIHBpZF90CmNvbmZpZ3VyZTo5OTM5OiBjaGVja2luZyBmb3Igc2l6 ZV90CmNvbmZpZ3VyZTo5OTgyOiBjaGVja2luZyBmb3IgX19zdGRjYWxsCmNvbmZpZ3VyZTo5OTk2 OiAvdXNyL2Jpbi9jbGFuZysrIC1jIC1PMiAtcGlwZSAtZm5vLXN0cmljdC1hbGlhc2luZyAtZm5v LWV4Y2VwdGlvbnMgLWZuby1zdHJpY3QtYWxpYXNpbmcgLWZuby1ydHRpIC1mZnVuY3Rpb24tc2Vj dGlvbnMgLWZkYXRhLXNlY3Rpb25zIC1mbm8tZXhjZXB0aW9ucyAtUXVudXNlZC1hcmd1bWVudHMg LWlzeXN0ZW0vdXNyL2xvY2FsL2luY2x1ZGUgY29uZnRlc3QuQyAxPiY1CmNvbmZpZ3VyZToxMDAy ODogY2hlY2tpbmcgZm9yIHNzaXplX3QKY29uZmlndXJlOjEwMDY2OiBjaGVja2luZyBmb3Igc3Rf Ymxrc2l6ZSBpbiBzdHJ1Y3Qgc3RhdApjb25maWd1cmU6MTAwNzk6IC91c3IvYmluL2NsYW5nIC1j IC1PMiAtcGlwZSAtZm5vLXN0cmljdC1hbGlhc2luZyAtc3RkPWdudTk5IC1mZ251ODktaW5saW5l IC1mbm8tc3RyaWN0LWFsaWFzaW5nIC1mZnVuY3Rpb24tc2VjdGlvbnMgLWZkYXRhLXNlY3Rpb25z IC1RdW51c2VkLWFyZ3VtZW50cyAtaXN5c3RlbS91c3IvbG9jYWwvaW5jbHVkZSBjb25mdGVzdC5j IDE+JjUKY29uZmlndXJlOjEwMDc1OjE4OiB3YXJuaW5nOiBleHByZXNzaW9uIHJlc3VsdCB1bnVz ZWQgWy1XdW51c2VkLXZhbHVlXQpzdHJ1Y3Qgc3RhdCBzOyBzLnN0X2Jsa3NpemU7CiAgICAgICAg ICAgICAgIH4gXn5+fn5+fn5+fgoxIHdhcm5pbmcgZ2VuZXJhdGVkLgpjb25maWd1cmU6MTAxMDM6 IGNoZWNraW5nIGZvciBzaWdpbmZvX3QKY29uZmlndXJlOjEwMTE2OiAvdXNyL2Jpbi9jbGFuZyAt YyAtTzIgLXBpcGUgLWZuby1zdHJpY3QtYWxpYXNpbmcgLXN0ZD1nbnU5OSAtZmdudTg5LWlubGlu ZSAtZm5vLXN0cmljdC1hbGlhc2luZyAtZmZ1bmN0aW9uLXNlY3Rpb25zIC1mZGF0YS1zZWN0aW9u cyAtUXVudXNlZC1hcmd1bWVudHMgLWlzeXN0ZW0vdXNyL2xvY2FsL2luY2x1ZGUgY29uZnRlc3Qu YyAxPiY1CmNvbmZpZ3VyZToxMDE0MjogY2hlY2tpbmcgZm9yIGludDY0CmNvbmZpZ3VyZToxMDE1 NTogL3Vzci9iaW4vY2xhbmcgLWMgLU8yIC1waXBlIC1mbm8tc3RyaWN0LWFsaWFzaW5nIC1zdGQ9 Z251OTkgLWZnbnU4OS1pbmxpbmUgLWZuby1zdHJpY3QtYWxpYXNpbmcgLWZmdW5jdGlvbi1zZWN0 aW9ucyAtZmRhdGEtc2VjdGlvbnMgLVF1bnVzZWQtYXJndW1lbnRzIC1pc3lzdGVtL3Vzci9sb2Nh bC9pbmNsdWRlIGNvbmZ0ZXN0LmMgMT4mNQpjb25maWd1cmU6MTAxNTE6MTogZXJyb3I6IHVzZSBv ZiB1bmRlY2xhcmVkIGlkZW50aWZpZXIgJ2ludDY0JwppbnQ2NCBmb28gPSAwOwpeCjEgZXJyb3Ig Z2VuZXJhdGVkLgpjb25maWd1cmU6IGZhaWxlZCBwcm9ncmFtIHdhczoKI2xpbmUgMTAxNDcgImNv bmZpZ3VyZSIKI2luY2x1ZGUgImNvbmZkZWZzLmgiCiNpbmNsdWRlIDxzdGRpby5oPgogICAgICAg ICAgICAgICAgICAjaW5jbHVkZSA8c3lzL3R5cGVzLmg+CmludCBtYWluKCkgewppbnQ2NCBmb28g PSAwOwo7IHJldHVybiAwOyB9CmNvbmZpZ3VyZToxMDE4MDogY2hlY2tpbmcgZm9yIHVpbnQKY29u ZmlndXJlOjEwMTkzOiAvdXNyL2Jpbi9jbGFuZyAtYyAtTzIgLXBpcGUgLWZuby1zdHJpY3QtYWxp YXNpbmcgLXN0ZD1nbnU5OSAtZmdudTg5LWlubGluZSAtZm5vLXN0cmljdC1hbGlhc2luZyAtZmZ1 bmN0aW9uLXNlY3Rpb25zIC1mZGF0YS1zZWN0aW9ucyAtUXVudXNlZC1hcmd1bWVudHMgLWlzeXN0 ZW0vdXNyL2xvY2FsL2luY2x1ZGUgY29uZnRlc3QuYyAxPiY1CmNvbmZpZ3VyZToxMDIxODogY2hl Y2tpbmcgZm9yIHVpbnRfdApjb25maWd1cmU6MTAyMzE6IC91c3IvYmluL2NsYW5nIC1jIC1PMiAt cGlwZSAtZm5vLXN0cmljdC1hbGlhc2luZyAtc3RkPWdudTk5IC1mZ251ODktaW5saW5lIC1mbm8t c3RyaWN0LWFsaWFzaW5nIC1mZnVuY3Rpb24tc2VjdGlvbnMgLWZkYXRhLXNlY3Rpb25zIC1RdW51 c2VkLWFyZ3VtZW50cyAtaXN5c3RlbS91c3IvbG9jYWwvaW5jbHVkZSBjb25mdGVzdC5jIDE+JjUK Y29uZmlndXJlOjEwMjI3OjE6IGVycm9yOiB1bmtub3duIHR5cGUgbmFtZSAndWludF90JzsgZGlk IHlvdSBtZWFuICd1aW50OF90Jz8KdWludF90IGZvbyA9IDA7Cl5+fn5+fgp1aW50OF90Ci91c3Iv aW5jbHVkZS9zeXMvX3N0ZGludC5oOjU0OjIwOiBub3RlOiAndWludDhfdCcgZGVjbGFyZWQgaGVy ZQp0eXBlZGVmIF9fdWludDhfdCAgICAgICAgICAgICAgIHVpbnQ4X3Q7CiAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgXgoxIGVycm9yIGdlbmVyYXRlZC4KY29uZmlndXJlOiBmYWlsZWQg cHJvZ3JhbSB3YXM6CiNsaW5lIDEwMjIzICJjb25maWd1cmUiCiNpbmNsdWRlICJjb25mZGVmcy5o IgojaW5jbHVkZSA8c3RkaW8uaD4KICAgICAgICAgICAgICAgICAgI2luY2x1ZGUgPHN5cy90eXBl cy5oPgppbnQgbWFpbigpIHsKdWludF90IGZvbyA9IDA7CjsgcmV0dXJuIDA7IH0KY29uZmlndXJl OjEwMjY1OiBjaGVja2luZyBmb3IgdW5hbWUuZG9tYWlubmFtZQpjb25maWd1cmU6MTAyNzg6IC91 c3IvYmluL2NsYW5nKysgLWMgLU8yIC1waXBlIC1mbm8tc3RyaWN0LWFsaWFzaW5nIC1mbm8tZXhj ZXB0aW9ucyAtZm5vLXN0cmljdC1hbGlhc2luZyAtZm5vLXJ0dGkgLWZmdW5jdGlvbi1zZWN0aW9u cyAtZmRhdGEtc2VjdGlvbnMgLWZuby1leGNlcHRpb25zIC1RdW51c2VkLWFyZ3VtZW50cyAtaXN5 c3RlbS91c3IvbG9jYWwvaW5jbHVkZSBjb25mdGVzdC5DIDE+JjUKY29uZmlndXJlOjEwMjc0OjYy OiBlcnJvcjogbm8gbWVtYmVyIG5hbWVkICdkb21haW5uYW1lJyBpbiAndXRzbmFtZScKICAgICAg ICAgICAgKHZvaWQpdW5hbWUocmVzKTsgIGlmIChyZXMgIT0gMCkgeyBkb21haW4gPSByZXMtPmRv bWFpbm5hbWU7IH0gCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgfn5+ICBeCjEgZXJyb3IgZ2VuZXJhdGVkLgpjb25maWd1cmU6IGZhaWxlZCBw cm9ncmFtIHdhczoKI2xpbmUgMTAyNzAgImNvbmZpZ3VyZSIKI2luY2x1ZGUgImNvbmZkZWZzLmgi CiNpbmNsdWRlIDxzeXMvdXRzbmFtZS5oPgppbnQgbWFpbigpIHsKIHN0cnVjdCB1dHNuYW1lICpy ZXM7IGNoYXIgKmRvbWFpbjsKICAgICAgICAgICAgKHZvaWQpdW5hbWUocmVzKTsgIGlmIChyZXMg IT0gMCkgeyBkb21haW4gPSByZXMtPmRvbWFpbm5hbWU7IH0gCjsgcmV0dXJuIDA7IH0KY29uZmln dXJlOjEwMzA1OiBjaGVja2luZyBmb3IgdW5hbWUuX19kb21haW5uYW1lCmNvbmZpZ3VyZToxMDMx ODogL3Vzci9iaW4vY2xhbmcrKyAtYyAtTzIgLXBpcGUgLWZuby1zdHJpY3QtYWxpYXNpbmcgLWZu by1leGNlcHRpb25zIC1mbm8tc3RyaWN0LWFsaWFzaW5nIC1mbm8tcnR0aSAtZmZ1bmN0aW9uLXNl Y3Rpb25zIC1mZGF0YS1zZWN0aW9ucyAtZm5vLWV4Y2VwdGlvbnMgLVF1bnVzZWQtYXJndW1lbnRz IC1pc3lzdGVtL3Vzci9sb2NhbC9pbmNsdWRlIGNvbmZ0ZXN0LkMgMT4mNQpjb25maWd1cmU6MTAz MTQ6NjI6IGVycm9yOiBubyBtZW1iZXIgbmFtZWQgJ19fZG9tYWlubmFtZScgaW4gJ3V0c25hbWUn CiAgICAgICAgICAgICh2b2lkKXVuYW1lKHJlcyk7ICBpZiAocmVzICE9IDApIHsgZG9tYWluID0g cmVzLT5fX2RvbWFpbm5hbWU7IH0gCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgfn5+ICBeCjEgZXJyb3IgZ2VuZXJhdGVkLgpjb25maWd1cmU6 IGZhaWxlZCBwcm9ncmFtIHdhczoKI2xpbmUgMTAzMTAgImNvbmZpZ3VyZSIKI2luY2x1ZGUgImNv bmZkZWZzLmgiCiNpbmNsdWRlIDxzeXMvdXRzbmFtZS5oPgppbnQgbWFpbigpIHsKIHN0cnVjdCB1 dHNuYW1lICpyZXM7IGNoYXIgKmRvbWFpbjsKICAgICAgICAgICAgKHZvaWQpdW5hbWUocmVzKTsg IGlmIChyZXMgIT0gMCkgeyBkb21haW4gPSByZXMtPl9fZG9tYWlubmFtZTsgfSAKOyByZXR1cm4g MDsgfQpjb25maWd1cmU6MTAzNTc6IGNoZWNraW5nIGZvciBnY2MgYysrMHggaGVhZGVycyBidWcg d2l0aG91dCBydHRpCmNvbmZpZ3VyZToxMDM2OTogL3Vzci9iaW4vY2xhbmcrKyAtYyAtTzIgLXBp cGUgLWZuby1zdHJpY3QtYWxpYXNpbmcgLWZuby1leGNlcHRpb25zIC1mbm8tc3RyaWN0LWFsaWFz aW5nIC1mbm8tcnR0aSAtZmZ1bmN0aW9uLXNlY3Rpb25zIC1mZGF0YS1zZWN0aW9ucyAtZm5vLWV4 Y2VwdGlvbnMgLXN0ZD1nbnUrKzB4IC1RdW51c2VkLWFyZ3VtZW50cyAtaXN5c3RlbS91c3IvbG9j YWwvaW5jbHVkZSBjb25mdGVzdC5DIDE+JjUKY29uZmlndXJlOjEwNDIxOiBjaGVja2luZyBmb3Ig dXNhYmxlIGNoYXIxNl90ICgyIGJ5dGVzLCB1bnNpZ25lZCkKY29uZmlndXJlOjEwNDM3OiAvdXNy L2Jpbi9jbGFuZysrIC1jIC1PMiAtcGlwZSAtZm5vLXN0cmljdC1hbGlhc2luZyAtZm5vLWV4Y2Vw dGlvbnMgLWZuby1zdHJpY3QtYWxpYXNpbmcgLWZuby1ydHRpIC1mZnVuY3Rpb24tc2VjdGlvbnMg LWZkYXRhLXNlY3Rpb25zIC1mbm8tZXhjZXB0aW9ucyAtc3RkPWdudSsrMHggLVF1bnVzZWQtYXJn dW1lbnRzIC1pc3lzdGVtL3Vzci9sb2NhbC9pbmNsdWRlIGNvbmZ0ZXN0LkMgMT4mNQpjb25maWd1 cmU6MTA0NjU6IGNoZWNraW5nIGZvciB1c2FibGUgd2NoYXJfdCAoMiBieXRlcywgdW5zaWduZWQp CmNvbmZpZ3VyZToxMDQ3OTogL3Vzci9iaW4vY2xhbmcrKyAtYyAtTzIgLXBpcGUgLWZuby1zdHJp Y3QtYWxpYXNpbmcgLWZuby1leGNlcHRpb25zIC1mbm8tc3RyaWN0LWFsaWFzaW5nIC1mbm8tcnR0 aSAtZmZ1bmN0aW9uLXNlY3Rpb25zIC1mZGF0YS1zZWN0aW9ucyAtZm5vLWV4Y2VwdGlvbnMgLXN0 ZD1nbnUrKzB4IC1RdW51c2VkLWFyZ3VtZW50cyAtaXN5c3RlbS91c3IvbG9jYWwvaW5jbHVkZSBj b25mdGVzdC5DIDE+JjUKY29uZmlndXJlOjEwNDc4OjE6IGVycm9yOiAnc3RhdGljX2Fzc2VydF9s aW5lXzEwNDc4JyBkZWNsYXJlZCBhcyBhbiBhcnJheSB3aXRoIGEgbmVnYXRpdmUgc2l6ZQpDT05G SUdVUkVfU1RBVElDX0FTU0VSVChzaXplb2Yod2NoYXJfdCkgPT0gMik7Cl5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgpjb25maWd1cmU6MTA0NzM6NDQ6IG5vdGU6 IGV4cGFuZGVkIGZyb20gbWFjcm8gJ0NPTkZJR1VSRV9TVEFUSUNfQVNTRVJUJwojZGVmaW5lIENP TkZJR1VSRV9TVEFUSUNfQVNTRVJUKGNvbmRpdGlvbikgQ09ORklHVVJFX1NUQVRJQ19BU1NFUlRf SU1QTChjb25kaXRpb24sIF9fTElORV9fKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgXgpjb25maWd1cmU6MTA0NzQ6NTU6IG5vdGU6IGV4cGFuZGVkIGZyb20gbWFj cm8gJ0NPTkZJR1VSRV9TVEFUSUNfQVNTRVJUX0lNUEwnCiNkZWZpbmUgQ09ORklHVVJFX1NUQVRJ Q19BU1NFUlRfSU1QTChjb25kaXRpb24sIGxpbmUpIENPTkZJR1VSRV9TVEFUSUNfQVNTRVJUX0lN UEwyKGNvbmRpdGlvbiwgbGluZSkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgXgpjb25maWd1cmU6MTA0NzU6OTQ6IG5vdGU6IGV4cGFuZGVkIGZy b20gbWFjcm8gJ0NPTkZJR1VSRV9TVEFUSUNfQVNTRVJUX0lNUEwyJwojZGVmaW5lIENPTkZJR1VS RV9TVEFUSUNfQVNTRVJUX0lNUEwyKGNvbmRpdGlvbiwgbGluZSkgdHlwZWRlZiBpbnQgc3RhdGlj X2Fzc2VydF9saW5lXyMjbGluZVsoY29uZGl0aW9uKSA/IDEgOiAtMV0KICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgXn5+fn5+fn5+fn5+fn5+fn5+fn4KY29uZmlndXJlOjEwNDc5 OjIyOiBlcnJvcjogJ3N0YXRpY19hc3NlcnRfbGluZV8xMDQ3OScgZGVjbGFyZWQgYXMgYW4gYXJy YXkgd2l0aCBhIG5lZ2F0aXZlIHNpemUKICAgICAgICAgICAgICAgICAgICAgQ09ORklHVVJFX1NU QVRJQ19BU1NFUlQoKHdjaGFyX3QpLTEgPiAod2NoYXJfdCkgMCkKICAgICAgICAgICAgICAgICAg ICAgXn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KY29u ZmlndXJlOjEwNDczOjQ0OiBub3RlOiBleHBhbmRlZCBmcm9tIG1hY3JvICdDT05GSUdVUkVfU1RB VElDX0FTU0VSVCcKI2RlZmluZSBDT05GSUdVUkVfU1RBVElDX0FTU0VSVChjb25kaXRpb24pIENP TkZJR1VSRV9TVEFUSUNfQVNTRVJUX0lNUEwoY29uZGl0aW9uLCBfX0xJTkVfXykKICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF4KY29uZmlndXJlOjEwNDc0OjU1OiBu b3RlOiBleHBhbmRlZCBmcm9tIG1hY3JvICdDT05GSUdVUkVfU1RBVElDX0FTU0VSVF9JTVBMJwoj ZGVmaW5lIENPTkZJR1VSRV9TVEFUSUNfQVNTRVJUX0lNUEwoY29uZGl0aW9uLCBsaW5lKSBDT05G SUdVUkVfU1RBVElDX0FTU0VSVF9JTVBMMihjb25kaXRpb24sIGxpbmUpCiAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF4KY29uZmlndXJlOjEwNDc1 Ojk0OiBub3RlOiBleHBhbmRlZCBmcm9tIG1hY3JvICdDT05GSUdVUkVfU1RBVElDX0FTU0VSVF9J TVBMMicKI2RlZmluZSBDT05GSUdVUkVfU1RBVElDX0FTU0VSVF9JTVBMMihjb25kaXRpb24sIGxp bmUpIHR5cGVkZWYgaW50IHN0YXRpY19hc3NlcnRfbGluZV8jI2xpbmVbKGNvbmRpdGlvbikgPyAx IDogLTFdCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF5+fn5+fn5+fn5+fn5+ fn5+fn5+CjIgZXJyb3JzIGdlbmVyYXRlZC4KY29uZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6 CiNsaW5lIDEwNDcwICJjb25maWd1cmUiCiNpbmNsdWRlICJjb25mZGVmcy5oIgojaW5jbHVkZSA8 c3RkZGVmLmg+CiAgICAgICAgICAgICAgICAgICAgIAojZGVmaW5lIENPTkZJR1VSRV9TVEFUSUNf QVNTRVJUKGNvbmRpdGlvbikgQ09ORklHVVJFX1NUQVRJQ19BU1NFUlRfSU1QTChjb25kaXRpb24s IF9fTElORV9fKQojZGVmaW5lIENPTkZJR1VSRV9TVEFUSUNfQVNTRVJUX0lNUEwoY29uZGl0aW9u LCBsaW5lKSBDT05GSUdVUkVfU1RBVElDX0FTU0VSVF9JTVBMMihjb25kaXRpb24sIGxpbmUpCiNk ZWZpbmUgQ09ORklHVVJFX1NUQVRJQ19BU1NFUlRfSU1QTDIoY29uZGl0aW9uLCBsaW5lKSB0eXBl ZGVmIGludCBzdGF0aWNfYXNzZXJ0X2xpbmVfIyNsaW5lWyhjb25kaXRpb24pID8gMSA6IC0xXQoK aW50IG1haW4oKSB7CkNPTkZJR1VSRV9TVEFUSUNfQVNTRVJUKHNpemVvZih3Y2hhcl90KSA9PSAy KTsKICAgICAgICAgICAgICAgICAgICAgQ09ORklHVVJFX1NUQVRJQ19BU1NFUlQoKHdjaGFyX3Qp LTEgPiAod2NoYXJfdCkgMCkKOyByZXR1cm4gMDsgfQpjb25maWd1cmU6MTA1Njc6IGNoZWNraW5n IGZvciB2aXNpYmlsaXR5KGhpZGRlbikgYXR0cmlidXRlCmNvbmZpZ3VyZToxMDU5NTogY2hlY2tp bmcgZm9yIHZpc2liaWxpdHkoZGVmYXVsdCkgYXR0cmlidXRlCmNvbmZpZ3VyZToxMDYyMzogY2hl Y2tpbmcgZm9yIHZpc2liaWxpdHkgcHJhZ21hIHN1cHBvcnQKY29uZmlndXJlOjEwNjQ4OiBjaGVj a2luZyBGb3IgZ2NjIHZpc2liaWxpdHkgYnVnIHdpdGggY2xhc3MtbGV2ZWwgYXR0cmlidXRlcyAo R0NDIGJ1ZyAyNjkwNSkKY29uZmlndXJlOjEwNjc2OiBjaGVja2luZyBGb3IgeDg2XzY0IGdjYyB2 aXNpYmlsaXR5IGJ1ZyB3aXRoIGJ1aWx0aW5zIChHQ0MgYnVnIDIwMjk3KQpjb25maWd1cmU6MTA3 MzE6IGNoZWNraW5nIGZvciBnY2MgUFI0OTkxMQpjb25maWd1cmU6MTA3OTI6IC91c3IvYmluL2Ns YW5nKysgLW8gY29uZnRlc3QgLU8yIC1RdW51c2VkLWFyZ3VtZW50cyAtaXN5c3RlbS91c3IvbG9j YWwvaW5jbHVkZSAgLUwvdXNyL2xvY2FsL2xpYiAtV2wsLXosb3JpZ2luIC1XbCwtcnBhdGgsXCQk T1JJR0lOIC1XbCwteixub2V4ZWNzdGFjayBjb25mdGVzdC5DICAxPiY1CmNvbmZpZ3VyZToxMDgy NTogY2hlY2tpbmcgZm9yIGdjYyBwcjM5NjA4CmNvbmZpZ3VyZToxMDg1NTogL3Vzci9iaW4vY2xh bmcrKyAtYyAtTzIgLXBpcGUgLWZuby1zdHJpY3QtYWxpYXNpbmcgLWZuby1leGNlcHRpb25zIC1m bm8tc3RyaWN0LWFsaWFzaW5nIC1mbm8tcnR0aSAtZmZ1bmN0aW9uLXNlY3Rpb25zIC1mZGF0YS1z ZWN0aW9ucyAtZm5vLWV4Y2VwdGlvbnMgLXN0ZD1nbnUrKzB4IC1RdW51c2VkLWFyZ3VtZW50cyAt aXN5c3RlbS91c3IvbG9jYWwvaW5jbHVkZSBjb25mdGVzdC5DIDE+JjUKY29uZmlndXJlOjEwODUx OjE6IHdhcm5pbmc6IGV4cHJlc3Npb24gcmVzdWx0IHVudXNlZCBbLVd1bnVzZWQtdmFsdWVdCnRy dWUKXn5+fgoxIHdhcm5pbmcgZ2VuZXJhdGVkLgpjb25maWd1cmU6MTA4ODI6IGNoZWNraW5nIGZv ciBsbHZtIHByODkyNwpjb25maWd1cmU6MTA5MjI6IC91c3IvYmluL2NsYW5nIC1vIGNvbmZ0ZXN0 IC1PMiAtUXVudXNlZC1hcmd1bWVudHMgLWlzeXN0ZW0vdXNyL2xvY2FsL2luY2x1ZGUgIC1ML3Vz ci9sb2NhbC9saWIgLVdsLC16LG9yaWdpbiAtV2wsLXJwYXRoLFwkJE9SSUdJTiAtV2wsLXosbm9l eGVjc3RhY2sgY29uZnRlc3QuYyAgMT4mNQpjb25maWd1cmU6MTA5NTk6IGNoZWNraW5nIGZvciBf X2ZvcmNlX2FsaWduX2FyZ19wb2ludGVyX18gYXR0cmlidXRlCmNvbmZpZ3VyZToxMDk3MTogL3Vz ci9iaW4vY2xhbmcgLWMgLU8yIC1waXBlIC1mbm8tc3RyaWN0LWFsaWFzaW5nIC1zdGQ9Z251OTkg LWZnbnU4OS1pbmxpbmUgLWZuby1zdHJpY3QtYWxpYXNpbmcgLWZmdW5jdGlvbi1zZWN0aW9ucyAt ZmRhdGEtc2VjdGlvbnMgLVdlcnJvciAtUXVudXNlZC1hcmd1bWVudHMgLWlzeXN0ZW0vdXNyL2xv Y2FsL2luY2x1ZGUgY29uZnRlc3QuYyAxPiY1CmNvbmZpZ3VyZToxMDk5ODogY2hlY2tpbmcgZm9y IGRpcmVudC5oIHRoYXQgZGVmaW5lcyBESVIKY29uZmlndXJlOjExMDExOiAvdXNyL2Jpbi9jbGFu ZyAtYyAtTzIgLXBpcGUgLWZuby1zdHJpY3QtYWxpYXNpbmcgLXN0ZD1nbnU5OSAtZmdudTg5LWlu bGluZSAtZm5vLXN0cmljdC1hbGlhc2luZyAtZmZ1bmN0aW9uLXNlY3Rpb25zIC1mZGF0YS1zZWN0 aW9ucyAtUXVudXNlZC1hcmd1bWVudHMgLWlzeXN0ZW0vdXNyL2xvY2FsL2luY2x1ZGUgY29uZnRl c3QuYyAxPiY1CmNvbmZpZ3VyZToxMTAzOTogY2hlY2tpbmcgZm9yIG9wZW5kaXIgaW4gLWxkaXIK Y29uZmlndXJlOjExMDU4OiAvdXNyL2Jpbi9jbGFuZyAtbyBjb25mdGVzdCAtTzIgLXBpcGUgLWZu by1zdHJpY3QtYWxpYXNpbmcgLXN0ZD1nbnU5OSAtZmdudTg5LWlubGluZSAtZm5vLXN0cmljdC1h bGlhc2luZyAtZmZ1bmN0aW9uLXNlY3Rpb25zIC1mZGF0YS1zZWN0aW9ucyAtUXVudXNlZC1hcmd1 bWVudHMgLWlzeXN0ZW0vdXNyL2xvY2FsL2luY2x1ZGUgIC1ML3Vzci9sb2NhbC9saWIgLVdsLC16 LG9yaWdpbiAtV2wsLXJwYXRoLFwkJE9SSUdJTiAtV2wsLXosbm9leGVjc3RhY2sgY29uZnRlc3Qu YyAtbGRpciAgIDE+JjUKL3Vzci9iaW4vbGQ6IGNhbm5vdCBmaW5kIC1sZGlyCmNsYW5nOiBlcnJv cjogbGlua2VyIGNvbW1hbmQgZmFpbGVkIHdpdGggZXhpdCBjb2RlIDEgKHVzZSAtdiB0byBzZWUg aW52b2NhdGlvbikKY29uZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6CiNsaW5lIDExMDQ3ICJj b25maWd1cmUiCiNpbmNsdWRlICJjb25mZGVmcy5oIgovKiBPdmVycmlkZSBhbnkgZ2NjMiBpbnRl cm5hbCBwcm90b3R5cGUgdG8gYXZvaWQgYW4gZXJyb3IuICAqLwovKiBXZSB1c2UgY2hhciBiZWNh dXNlIGludCBtaWdodCBtYXRjaCB0aGUgcmV0dXJuIHR5cGUgb2YgYSBnY2MyCiAgICBidWlsdGlu IGFuZCB0aGVuIGl0cyBhcmd1bWVudCBwcm90b3R5cGUgd291bGQgc3RpbGwgYXBwbHkuICAqLwpj aGFyIG9wZW5kaXIoKTsKCmludCBtYWluKCkgewpvcGVuZGlyKCkKOyByZXR1cm4gMDsgfQpjb25m aWd1cmU6MTExMzM6IGNoZWNraW5nIGZvciBzeXMvYnl0ZW9yZGVyLmgKY29uZmlndXJlOjExMTQ2 OiAvdXNyL2Jpbi9jbGFuZyAtYyAtTzIgLXBpcGUgLWZuby1zdHJpY3QtYWxpYXNpbmcgLXN0ZD1n bnU5OSAtZmdudTg5LWlubGluZSAtZm5vLXN0cmljdC1hbGlhc2luZyAtZmZ1bmN0aW9uLXNlY3Rp b25zIC1mZGF0YS1zZWN0aW9ucyAtUXVudXNlZC1hcmd1bWVudHMgLWlzeXN0ZW0vdXNyL2xvY2Fs L2luY2x1ZGUgIC1JL3Vzci9sb2NhbC9pbmNsdWRlIGNvbmZ0ZXN0LmMgMT4mNQpjb25maWd1cmU6 MTExNDA6MTA6IGZhdGFsIGVycm9yOiAnc3lzL2J5dGVvcmRlci5oJyBmaWxlIG5vdCBmb3VuZAoj aW5jbHVkZSA8c3lzL2J5dGVvcmRlci5oPgogICAgICAgICBeCjEgZXJyb3IgZ2VuZXJhdGVkLgpj b25maWd1cmU6IGZhaWxlZCBwcm9ncmFtIHdhczoKI2xpbmUgMTExMzggImNvbmZpZ3VyZSIKI2lu Y2x1ZGUgImNvbmZkZWZzLmgiCgojaW5jbHVkZSA8c3lzL2J5dGVvcmRlci5oPgppbnQgbWFpbigp IHsKCjsgcmV0dXJuIDA7IH0KY29uZmlndXJlOjExMTMzOiBjaGVja2luZyBmb3IgY29tcGF0LmgK Y29uZmlndXJlOjExMTQ2OiAvdXNyL2Jpbi9jbGFuZyAtYyAtTzIgLXBpcGUgLWZuby1zdHJpY3Qt YWxpYXNpbmcgLXN0ZD1nbnU5OSAtZmdudTg5LWlubGluZSAtZm5vLXN0cmljdC1hbGlhc2luZyAt ZmZ1bmN0aW9uLXNlY3Rpb25zIC1mZGF0YS1zZWN0aW9ucyAtUXVudXNlZC1hcmd1bWVudHMgLWlz eXN0ZW0vdXNyL2xvY2FsL2luY2x1ZGUgIC1JL3Vzci9sb2NhbC9pbmNsdWRlIGNvbmZ0ZXN0LmMg MT4mNQpjb25maWd1cmU6MTExNDA6MTA6IGZhdGFsIGVycm9yOiAnY29tcGF0LmgnIGZpbGUgbm90 IGZvdW5kCiNpbmNsdWRlIDxjb21wYXQuaD4KICAgICAgICAgXgoxIGVycm9yIGdlbmVyYXRlZC4K Y29uZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6CiNsaW5lIDExMTM4ICJjb25maWd1cmUiCiNp bmNsdWRlICJjb25mZGVmcy5oIgoKI2luY2x1ZGUgPGNvbXBhdC5oPgppbnQgbWFpbigpIHsKCjsg cmV0dXJuIDA7IH0KY29uZmlndXJlOjExMTMzOiBjaGVja2luZyBmb3IgZ2V0b3B0LmgKY29uZmln dXJlOjExMTMzOiBjaGVja2luZyBmb3Igc3lzL2JpdHlwZXMuaApjb25maWd1cmU6MTExNDY6IC91 c3IvYmluL2NsYW5nIC1jIC1PMiAtcGlwZSAtZm5vLXN0cmljdC1hbGlhc2luZyAtc3RkPWdudTk5 IC1mZ251ODktaW5saW5lIC1mbm8tc3RyaWN0LWFsaWFzaW5nIC1mZnVuY3Rpb24tc2VjdGlvbnMg LWZkYXRhLXNlY3Rpb25zIC1RdW51c2VkLWFyZ3VtZW50cyAtaXN5c3RlbS91c3IvbG9jYWwvaW5j bHVkZSAgLUkvdXNyL2xvY2FsL2luY2x1ZGUgY29uZnRlc3QuYyAxPiY1CmNvbmZpZ3VyZToxMTE0 MDoxMDogZmF0YWwgZXJyb3I6ICdzeXMvYml0eXBlcy5oJyBmaWxlIG5vdCBmb3VuZAojaW5jbHVk ZSA8c3lzL2JpdHlwZXMuaD4KICAgICAgICAgXgoxIGVycm9yIGdlbmVyYXRlZC4KY29uZmlndXJl OiBmYWlsZWQgcHJvZ3JhbSB3YXM6CiNsaW5lIDExMTM4ICJjb25maWd1cmUiCiNpbmNsdWRlICJj b25mZGVmcy5oIgoKI2luY2x1ZGUgPHN5cy9iaXR5cGVzLmg+CmludCBtYWluKCkgewoKOyByZXR1 cm4gMDsgfQpjb25maWd1cmU6MTExMzM6IGNoZWNraW5nIGZvciBtZW1vcnkuaApjb25maWd1cmU6 MTExMzM6IGNoZWNraW5nIGZvciB1bmlzdGQuaApjb25maWd1cmU6MTExMzM6IGNoZWNraW5nIGZv ciBnbnUvbGliYy12ZXJzaW9uLmgKY29uZmlndXJlOjExMTQ2OiAvdXNyL2Jpbi9jbGFuZyAtYyAt TzIgLXBpcGUgLWZuby1zdHJpY3QtYWxpYXNpbmcgLXN0ZD1nbnU5OSAtZmdudTg5LWlubGluZSAt Zm5vLXN0cmljdC1hbGlhc2luZyAtZmZ1bmN0aW9uLXNlY3Rpb25zIC1mZGF0YS1zZWN0aW9ucyAt UXVudXNlZC1hcmd1bWVudHMgLWlzeXN0ZW0vdXNyL2xvY2FsL2luY2x1ZGUgIC1JL3Vzci9sb2Nh bC9pbmNsdWRlIGNvbmZ0ZXN0LmMgMT4mNQpjb25maWd1cmU6MTExNDA6MTA6IGZhdGFsIGVycm9y OiAnZ251L2xpYmMtdmVyc2lvbi5oJyBmaWxlIG5vdCBmb3VuZAojaW5jbHVkZSA8Z251L2xpYmMt dmVyc2lvbi5oPgogICAgICAgICBeCjEgZXJyb3IgZ2VuZXJhdGVkLgpjb25maWd1cmU6IGZhaWxl ZCBwcm9ncmFtIHdhczoKI2xpbmUgMTExMzggImNvbmZpZ3VyZSIKI2luY2x1ZGUgImNvbmZkZWZz LmgiCgojaW5jbHVkZSA8Z251L2xpYmMtdmVyc2lvbi5oPgppbnQgbWFpbigpIHsKCjsgcmV0dXJu IDA7IH0KY29uZmlndXJlOjExMTMzOiBjaGVja2luZyBmb3IgbmxfdHlwZXMuaApjb25maWd1cmU6 MTExNDY6IC91c3IvYmluL2NsYW5nIC1jIC1PMiAtcGlwZSAtZm5vLXN0cmljdC1hbGlhc2luZyAt c3RkPWdudTk5IC1mZ251ODktaW5saW5lIC1mbm8tc3RyaWN0LWFsaWFzaW5nIC1mZnVuY3Rpb24t c2VjdGlvbnMgLWZkYXRhLXNlY3Rpb25zIC1RdW51c2VkLWFyZ3VtZW50cyAtaXN5c3RlbS91c3Iv bG9jYWwvaW5jbHVkZSAgLUkvdXNyL2xvY2FsL2luY2x1ZGUgY29uZnRlc3QuYyAxPiY1CmNvbmZp Z3VyZToxMTEzMzogY2hlY2tpbmcgZm9yIG1hbGxvYy5oCmNvbmZpZ3VyZToxMTEzMzogY2hlY2tp bmcgZm9yIFgxMS9YS0JsaWIuaApjb25maWd1cmU6MTExNDY6IC91c3IvYmluL2NsYW5nIC1jIC1P MiAtcGlwZSAtZm5vLXN0cmljdC1hbGlhc2luZyAtc3RkPWdudTk5IC1mZ251ODktaW5saW5lIC1m bm8tc3RyaWN0LWFsaWFzaW5nIC1mZnVuY3Rpb24tc2VjdGlvbnMgLWZkYXRhLXNlY3Rpb25zIC1R dW51c2VkLWFyZ3VtZW50cyAtaXN5c3RlbS91c3IvbG9jYWwvaW5jbHVkZSAgLUkvdXNyL2xvY2Fs L2luY2x1ZGUgY29uZnRlc3QuYyAxPiY1CmNvbmZpZ3VyZToxMTEzMzogY2hlY2tpbmcgZm9yIGlv LmgKY29uZmlndXJlOjExMTQ2OiAvdXNyL2Jpbi9jbGFuZyAtYyAtTzIgLXBpcGUgLWZuby1zdHJp Y3QtYWxpYXNpbmcgLXN0ZD1nbnU5OSAtZmdudTg5LWlubGluZSAtZm5vLXN0cmljdC1hbGlhc2lu ZyAtZmZ1bmN0aW9uLXNlY3Rpb25zIC1mZGF0YS1zZWN0aW9ucyAtUXVudXNlZC1hcmd1bWVudHMg LWlzeXN0ZW0vdXNyL2xvY2FsL2luY2x1ZGUgIC1JL3Vzci9sb2NhbC9pbmNsdWRlIGNvbmZ0ZXN0 LmMgMT4mNQpjb25maWd1cmU6MTExNDA6MTA6IGZhdGFsIGVycm9yOiAnaW8uaCcgZmlsZSBub3Qg Zm91bmQKI2luY2x1ZGUgPGlvLmg+CiAgICAgICAgIF4KMSBlcnJvciBnZW5lcmF0ZWQuCmNvbmZp Z3VyZTogZmFpbGVkIHByb2dyYW0gd2FzOgojbGluZSAxMTEzOCAiY29uZmlndXJlIgojaW5jbHVk ZSAiY29uZmRlZnMuaCIKCiNpbmNsdWRlIDxpby5oPgppbnQgbWFpbigpIHsKCjsgcmV0dXJuIDA7 IH0KY29uZmlndXJlOjExMTMzOiBjaGVja2luZyBmb3IgY3B1aWQuaApjb25maWd1cmU6MTExNDY6 IC91c3IvYmluL2NsYW5nIC1jIC1PMiAtcGlwZSAtZm5vLXN0cmljdC1hbGlhc2luZyAtc3RkPWdu dTk5IC1mZ251ODktaW5saW5lIC1mbm8tc3RyaWN0LWFsaWFzaW5nIC1mZnVuY3Rpb24tc2VjdGlv bnMgLWZkYXRhLXNlY3Rpb25zIC1RdW51c2VkLWFyZ3VtZW50cyAtaXN5c3RlbS91c3IvbG9jYWwv aW5jbHVkZSAgLUkvdXNyL2xvY2FsL2luY2x1ZGUgY29uZnRlc3QuYyAxPiY1CmNvbmZpZ3VyZTox MTE4MTogY2hlY2tpbmcgZm9yIHN5cy9zdGF0dmZzLmgKY29uZmlndXJlOjExMTgxOiBjaGVja2lu ZyBmb3Igc3lzL3N0YXRmcy5oCmNvbmZpZ3VyZToxMTE5NDogL3Vzci9iaW4vY2xhbmcgLWMgLU8y IC1waXBlIC1mbm8tc3RyaWN0LWFsaWFzaW5nIC1zdGQ9Z251OTkgLWZnbnU4OS1pbmxpbmUgLWZu by1zdHJpY3QtYWxpYXNpbmcgLWZmdW5jdGlvbi1zZWN0aW9ucyAtZmRhdGEtc2VjdGlvbnMgLVF1 bnVzZWQtYXJndW1lbnRzIC1pc3lzdGVtL3Vzci9sb2NhbC9pbmNsdWRlICAtSS91c3IvbG9jYWwv aW5jbHVkZSBjb25mdGVzdC5jIDE+JjUKY29uZmlndXJlOjExMTg4OjEwOiBmYXRhbCBlcnJvcjog J3N5cy9zdGF0ZnMuaCcgZmlsZSBub3QgZm91bmQKI2luY2x1ZGUgPHN5cy9zdGF0ZnMuaD4KICAg ICAgICAgXgoxIGVycm9yIGdlbmVyYXRlZC4KY29uZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6 CiNsaW5lIDExMTg2ICJjb25maWd1cmUiCiNpbmNsdWRlICJjb25mZGVmcy5oIgoKI2luY2x1ZGUg PHN5cy9zdGF0ZnMuaD4KaW50IG1haW4oKSB7Cgo7IHJldHVybiAwOyB9CmNvbmZpZ3VyZToxMTE4 MTogY2hlY2tpbmcgZm9yIHN5cy92ZnMuaApjb25maWd1cmU6MTExOTQ6IC91c3IvYmluL2NsYW5n IC1jIC1PMiAtcGlwZSAtZm5vLXN0cmljdC1hbGlhc2luZyAtc3RkPWdudTk5IC1mZ251ODktaW5s aW5lIC1mbm8tc3RyaWN0LWFsaWFzaW5nIC1mZnVuY3Rpb24tc2VjdGlvbnMgLWZkYXRhLXNlY3Rp b25zIC1RdW51c2VkLWFyZ3VtZW50cyAtaXN5c3RlbS91c3IvbG9jYWwvaW5jbHVkZSAgLUkvdXNy L2xvY2FsL2luY2x1ZGUgY29uZnRlc3QuYyAxPiY1CmNvbmZpZ3VyZToxMTE4ODoxMDogZmF0YWwg ZXJyb3I6ICdzeXMvdmZzLmgnIGZpbGUgbm90IGZvdW5kCiNpbmNsdWRlIDxzeXMvdmZzLmg+CiAg ICAgICAgIF4KMSBlcnJvciBnZW5lcmF0ZWQuCmNvbmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2Fz OgojbGluZSAxMTE4NiAiY29uZmlndXJlIgojaW5jbHVkZSAiY29uZmRlZnMuaCIKCiNpbmNsdWRl IDxzeXMvdmZzLmg+CmludCBtYWluKCkgewoKOyByZXR1cm4gMDsgfQpjb25maWd1cmU6MTExODE6 IGNoZWNraW5nIGZvciBzeXMvbW91bnQuaApjb25maWd1cmU6MTEyMjg6IGNoZWNraW5nIGZvciBz eXMvcXVvdGEuaApjb25maWd1cmU6MTEyNDE6IC91c3IvYmluL2NsYW5nIC1jIC1PMiAtcGlwZSAt Zm5vLXN0cmljdC1hbGlhc2luZyAtc3RkPWdudTk5IC1mZ251ODktaW5saW5lIC1mbm8tc3RyaWN0 LWFsaWFzaW5nIC1mZnVuY3Rpb24tc2VjdGlvbnMgLWZkYXRhLXNlY3Rpb25zIC1RdW51c2VkLWFy Z3VtZW50cyAtaXN5c3RlbS91c3IvbG9jYWwvaW5jbHVkZSAgLUkvdXNyL2xvY2FsL2luY2x1ZGUg Y29uZnRlc3QuYyAxPiY1CmNvbmZpZ3VyZToxMTIzNToxMDogZmF0YWwgZXJyb3I6ICdzeXMvcXVv dGEuaCcgZmlsZSBub3QgZm91bmQKI2luY2x1ZGUgPHN5cy9xdW90YS5oPgogICAgICAgICBeCjEg ZXJyb3IgZ2VuZXJhdGVkLgpjb25maWd1cmU6IGZhaWxlZCBwcm9ncmFtIHdhczoKI2xpbmUgMTEy MzMgImNvbmZpZ3VyZSIKI2luY2x1ZGUgImNvbmZkZWZzLmgiCgojaW5jbHVkZSA8c3lzL3F1b3Rh Lmg+CmludCBtYWluKCkgewoKOyByZXR1cm4gMDsgfQpjb25maWd1cmU6MTEyMjg6IGNoZWNraW5n IGZvciBzeXMvc3lzbWFjcm9zLmgKY29uZmlndXJlOjExMjQxOiAvdXNyL2Jpbi9jbGFuZyAtYyAt TzIgLXBpcGUgLWZuby1zdHJpY3QtYWxpYXNpbmcgLXN0ZD1nbnU5OSAtZmdudTg5LWlubGluZSAt Zm5vLXN0cmljdC1hbGlhc2luZyAtZmZ1bmN0aW9uLXNlY3Rpb25zIC1mZGF0YS1zZWN0aW9ucyAt UXVudXNlZC1hcmd1bWVudHMgLWlzeXN0ZW0vdXNyL2xvY2FsL2luY2x1ZGUgIC1JL3Vzci9sb2Nh bC9pbmNsdWRlIGNvbmZ0ZXN0LmMgMT4mNQpjb25maWd1cmU6MTEyMzU6MTA6IGZhdGFsIGVycm9y OiAnc3lzL3N5c21hY3Jvcy5oJyBmaWxlIG5vdCBmb3VuZAojaW5jbHVkZSA8c3lzL3N5c21hY3Jv cy5oPgogICAgICAgICBeCjEgZXJyb3IgZ2VuZXJhdGVkLgpjb25maWd1cmU6IGZhaWxlZCBwcm9n cmFtIHdhczoKI2xpbmUgMTEyMzMgImNvbmZpZ3VyZSIKI2luY2x1ZGUgImNvbmZkZWZzLmgiCgoj aW5jbHVkZSA8c3lzL3N5c21hY3Jvcy5oPgppbnQgbWFpbigpIHsKCjsgcmV0dXJuIDA7IH0KY29u ZmlndXJlOjExMjc0OiBjaGVja2luZyBmb3IgbGludXgvcXVvdGEuaApjb25maWd1cmU6MTEyODc6 IC91c3IvYmluL2NsYW5nIC1jIC1PMiAtcGlwZSAtZm5vLXN0cmljdC1hbGlhc2luZyAtc3RkPWdu dTk5IC1mZ251ODktaW5saW5lIC1mbm8tc3RyaWN0LWFsaWFzaW5nIC1mZnVuY3Rpb24tc2VjdGlv bnMgLWZkYXRhLXNlY3Rpb25zIC1RdW51c2VkLWFyZ3VtZW50cyAtaXN5c3RlbS91c3IvbG9jYWwv aW5jbHVkZSAgLUkvdXNyL2xvY2FsL2luY2x1ZGUgY29uZnRlc3QuYyAxPiY1CmNvbmZpZ3VyZTox MTI4MToxMDogZmF0YWwgZXJyb3I6ICdsaW51eC9xdW90YS5oJyBmaWxlIG5vdCBmb3VuZAojaW5j bHVkZSA8bGludXgvcXVvdGEuaD4KICAgICAgICAgXgoxIGVycm9yIGdlbmVyYXRlZC4KY29uZmln dXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6CiNsaW5lIDExMjc5ICJjb25maWd1cmUiCiNpbmNsdWRl ICJjb25mZGVmcy5oIgojaW5jbHVkZSA8c3lzL3NvY2tldC5oPgojaW5jbHVkZSA8bGludXgvcXVv dGEuaD4KaW50IG1haW4oKSB7Cgo7IHJldHVybiAwOyB9CmNvbmZpZ3VyZToxMTMyMTogY2hlY2tp bmcgZm9yIGxpbnV4L2lmX2FkZHIuaApjb25maWd1cmU6MTEzMzQ6IC91c3IvYmluL2NsYW5nIC1j IC1PMiAtcGlwZSAtZm5vLXN0cmljdC1hbGlhc2luZyAtc3RkPWdudTk5IC1mZ251ODktaW5saW5l IC1mbm8tc3RyaWN0LWFsaWFzaW5nIC1mZnVuY3Rpb24tc2VjdGlvbnMgLWZkYXRhLXNlY3Rpb25z IC1RdW51c2VkLWFyZ3VtZW50cyAtaXN5c3RlbS91c3IvbG9jYWwvaW5jbHVkZSAgLUkvdXNyL2xv Y2FsL2luY2x1ZGUgY29uZnRlc3QuYyAxPiY1CmNvbmZpZ3VyZToxMTMyODoxMDogZmF0YWwgZXJy b3I6ICdsaW51eC9pZl9hZGRyLmgnIGZpbGUgbm90IGZvdW5kCiNpbmNsdWRlIDxsaW51eC9pZl9h ZGRyLmg+CiAgICAgICAgIF4KMSBlcnJvciBnZW5lcmF0ZWQuCmNvbmZpZ3VyZTogZmFpbGVkIHBy b2dyYW0gd2FzOgojbGluZSAxMTMyNiAiY29uZmlndXJlIgojaW5jbHVkZSAiY29uZmRlZnMuaCIK I2luY2x1ZGUgPHN5cy9zb2NrZXQuaD4KI2luY2x1ZGUgPGxpbnV4L2lmX2FkZHIuaD4KaW50IG1h aW4oKSB7Cgo7IHJldHVybiAwOyB9CmNvbmZpZ3VyZToxMTMyMTogY2hlY2tpbmcgZm9yIGxpbnV4 L3J0bmV0bGluay5oCmNvbmZpZ3VyZToxMTMzNDogL3Vzci9iaW4vY2xhbmcgLWMgLU8yIC1waXBl IC1mbm8tc3RyaWN0LWFsaWFzaW5nIC1zdGQ9Z251OTkgLWZnbnU4OS1pbmxpbmUgLWZuby1zdHJp Y3QtYWxpYXNpbmcgLWZmdW5jdGlvbi1zZWN0aW9ucyAtZmRhdGEtc2VjdGlvbnMgLVF1bnVzZWQt YXJndW1lbnRzIC1pc3lzdGVtL3Vzci9sb2NhbC9pbmNsdWRlICAtSS91c3IvbG9jYWwvaW5jbHVk ZSBjb25mdGVzdC5jIDE+JjUKY29uZmlndXJlOjExMzI4OjEwOiBmYXRhbCBlcnJvcjogJ2xpbnV4 L3J0bmV0bGluay5oJyBmaWxlIG5vdCBmb3VuZAojaW5jbHVkZSA8bGludXgvcnRuZXRsaW5rLmg+ CiAgICAgICAgIF4KMSBlcnJvciBnZW5lcmF0ZWQuCmNvbmZpZ3VyZTogZmFpbGVkIHByb2dyYW0g d2FzOgojbGluZSAxMTMyNiAiY29uZmlndXJlIgojaW5jbHVkZSAiY29uZmRlZnMuaCIKI2luY2x1 ZGUgPHN5cy9zb2NrZXQuaD4KI2luY2x1ZGUgPGxpbnV4L3J0bmV0bGluay5oPgppbnQgbWFpbigp IHsKCjsgcmV0dXJuIDA7IH0KY29uZmlndXJlOjExMzY4OiBjaGVja2luZyBmb3Igc3lzL3R5cGVz LmgKY29uZmlndXJlOjExMzY4OiBjaGVja2luZyBmb3IgbmV0aW5ldC9pbi5oCmNvbmZpZ3VyZTox MTM2ODogY2hlY2tpbmcgZm9yIGJ5dGVzd2FwLmgKY29uZmlndXJlOjExNDEyOiBjaGVja2luZyBm b3Igc29ja2FkZHJfaW4uc2luX2xlbgpjb25maWd1cmU6MTE0Mjk6IC91c3IvYmluL2NsYW5nIC1j IC1PMiAtcGlwZSAtZm5vLXN0cmljdC1hbGlhc2luZyAtc3RkPWdudTk5IC1mZ251ODktaW5saW5l IC1mbm8tc3RyaWN0LWFsaWFzaW5nIC1mZnVuY3Rpb24tc2VjdGlvbnMgLWZkYXRhLXNlY3Rpb25z IC1RdW51c2VkLWFyZ3VtZW50cyAtaXN5c3RlbS91c3IvbG9jYWwvaW5jbHVkZSAgLUkvdXNyL2xv Y2FsL2luY2x1ZGUgY29uZnRlc3QuYyAxPiY1CmNvbmZpZ3VyZToxMTQ2MDogY2hlY2tpbmcgZm9y IHNvY2thZGRyX2luNi5zaW42X2xlbgpjb25maWd1cmU6MTE0Nzc6IC91c3IvYmluL2NsYW5nIC1j IC1PMiAtcGlwZSAtZm5vLXN0cmljdC1hbGlhc2luZyAtc3RkPWdudTk5IC1mZ251ODktaW5saW5l IC1mbm8tc3RyaWN0LWFsaWFzaW5nIC1mZnVuY3Rpb24tc2VjdGlvbnMgLWZkYXRhLXNlY3Rpb25z IC1RdW51c2VkLWFyZ3VtZW50cyAtaXN5c3RlbS91c3IvbG9jYWwvaW5jbHVkZSAgLUkvdXNyL2xv Y2FsL2luY2x1ZGUgY29uZnRlc3QuYyAxPiY1CmNvbmZpZ3VyZToxMTUwMTogY2hlY2tpbmcgZm9y IHNvY2thZGRyLnNhX2xlbgpjb25maWd1cmU6MTE1MTg6IC91c3IvYmluL2NsYW5nIC1jIC1PMiAt cGlwZSAtZm5vLXN0cmljdC1hbGlhc2luZyAtc3RkPWdudTk5IC1mZ251ODktaW5saW5lIC1mbm8t c3RyaWN0LWFsaWFzaW5nIC1mZnVuY3Rpb24tc2VjdGlvbnMgLWZkYXRhLXNlY3Rpb25zIC1RdW51 c2VkLWFyZ3VtZW50cyAtaXN5c3RlbS91c3IvbG9jYWwvaW5jbHVkZSAgLUkvdXNyL2xvY2FsL2lu Y2x1ZGUgY29uZnRlc3QuYyAxPiY1CmNvbmZpZ3VyZToxMTU1MTogY2hlY2tpbmcgZm9yIG5ldwpj b25maWd1cmU6MTE1NjQ6IC91c3IvYmluL2NsYW5nKysgLWMgLU8yIC1waXBlIC1mbm8tc3RyaWN0 LWFsaWFzaW5nIC1mbm8tZXhjZXB0aW9ucyAtZm5vLXN0cmljdC1hbGlhc2luZyAtZm5vLXJ0dGkg LWZmdW5jdGlvbi1zZWN0aW9ucyAtZmRhdGEtc2VjdGlvbnMgLWZuby1leGNlcHRpb25zIC1zdGQ9 Z251KysweCAtUXVudXNlZC1hcmd1bWVudHMgLWlzeXN0ZW0vdXNyL2xvY2FsL2luY2x1ZGUgIC1J L3Vzci9sb2NhbC9pbmNsdWRlIGNvbmZ0ZXN0LkMgMT4mNQpjb25maWd1cmU6MTE2NjM6IGNoZWNr aW5nIGZvciBzeXMvY2RlZnMuaApjb25maWd1cmU6MTE3Mjg6IGNoZWNraW5nIGZvciBsaW51eC9w ZXJmX2V2ZW50LmgKY29uZmlndXJlOjExNzQxOiAvdXNyL2Jpbi9jbGFuZyAtYyAtTzIgLXBpcGUg LWZuby1zdHJpY3QtYWxpYXNpbmcgLXN0ZD1nbnU5OSAtZmdudTg5LWlubGluZSAtZm5vLXN0cmlj dC1hbGlhc2luZyAtZmZ1bmN0aW9uLXNlY3Rpb25zIC1mZGF0YS1zZWN0aW9ucyAgLVF1bnVzZWQt YXJndW1lbnRzIC1pc3lzdGVtL3Vzci9sb2NhbC9pbmNsdWRlICAtSS91c3IvbG9jYWwvaW5jbHVk ZSBjb25mdGVzdC5jIDE+JjUKY29uZmlndXJlOjExNzM1OjEwOiBmYXRhbCBlcnJvcjogJ2xpbnV4 L3BlcmZfZXZlbnQuaCcgZmlsZSBub3QgZm91bmQKI2luY2x1ZGUgPGxpbnV4L3BlcmZfZXZlbnQu aD4KICAgICAgICAgXgoxIGVycm9yIGdlbmVyYXRlZC4KY29uZmlndXJlOiBmYWlsZWQgcHJvZ3Jh bSB3YXM6CiNsaW5lIDExNzMzICJjb25maWd1cmUiCiNpbmNsdWRlICJjb25mZGVmcy5oIgoKI2lu Y2x1ZGUgPGxpbnV4L3BlcmZfZXZlbnQuaD4KaW50IG1haW4oKSB7Cgo7IHJldHVybiAwOyB9CmNv bmZpZ3VyZToxMTgwNDogY2hlY2tpbmcgZm9yIGdldGhvc3RieW5hbWVfciBpbiAtbGNfcgpjb25m aWd1cmU6MTE4MjM6IC91c3IvYmluL2NsYW5nIC1vIGNvbmZ0ZXN0IC1PMiAtcGlwZSAtZm5vLXN0 cmljdC1hbGlhc2luZyAtc3RkPWdudTk5IC1mZ251ODktaW5saW5lIC1mbm8tc3RyaWN0LWFsaWFz aW5nIC1mZnVuY3Rpb24tc2VjdGlvbnMgLWZkYXRhLXNlY3Rpb25zIC1RdW51c2VkLWFyZ3VtZW50 cyAtaXN5c3RlbS91c3IvbG9jYWwvaW5jbHVkZSAgLUkvdXNyL2xvY2FsL2luY2x1ZGUgIC1ML3Vz ci9sb2NhbC9saWIgLVdsLC16LG9yaWdpbiAtV2wsLXJwYXRoLFwkJE9SSUdJTiAtV2wsLXosbm9l eGVjc3RhY2sgY29uZnRlc3QuYyAtbGNfciAgIDE+JjUKL3Vzci9iaW4vbGQ6IGNhbm5vdCBmaW5k IC1sY19yCmNsYW5nOiBlcnJvcjogbGlua2VyIGNvbW1hbmQgZmFpbGVkIHdpdGggZXhpdCBjb2Rl IDEgKHVzZSAtdiB0byBzZWUgaW52b2NhdGlvbikKY29uZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3 YXM6CiNsaW5lIDExODEyICJjb25maWd1cmUiCiNpbmNsdWRlICJjb25mZGVmcy5oIgovKiBPdmVy cmlkZSBhbnkgZ2NjMiBpbnRlcm5hbCBwcm90b3R5cGUgdG8gYXZvaWQgYW4gZXJyb3IuICAqLwov KiBXZSB1c2UgY2hhciBiZWNhdXNlIGludCBtaWdodCBtYXRjaCB0aGUgcmV0dXJuIHR5cGUgb2Yg YSBnY2MyCiAgICBidWlsdGluIGFuZCB0aGVuIGl0cyBhcmd1bWVudCBwcm90b3R5cGUgd291bGQg c3RpbGwgYXBwbHkuICAqLwpjaGFyIGdldGhvc3RieW5hbWVfcigpOwoKaW50IG1haW4oKSB7Cmdl dGhvc3RieW5hbWVfcigpCjsgcmV0dXJuIDA7IH0KY29uZmlndXJlOjExODY0OiBjaGVja2luZyBm b3IgbGlicmFyeSBjb250YWluaW5nIGRsb3Blbgpjb25maWd1cmU6MTE4ODI6IC91c3IvYmluL2Ns YW5nIC1vIGNvbmZ0ZXN0IC1PMiAtcGlwZSAtZm5vLXN0cmljdC1hbGlhc2luZyAtc3RkPWdudTk5 IC1mZ251ODktaW5saW5lIC1mbm8tc3RyaWN0LWFsaWFzaW5nIC1mZnVuY3Rpb24tc2VjdGlvbnMg LWZkYXRhLXNlY3Rpb25zIC1RdW51c2VkLWFyZ3VtZW50cyAtaXN5c3RlbS91c3IvbG9jYWwvaW5j bHVkZSAgLUkvdXNyL2xvY2FsL2luY2x1ZGUgIC1ML3Vzci9sb2NhbC9saWIgLVdsLC16LG9yaWdp biAtV2wsLXJwYXRoLFwkJE9SSUdJTiAtV2wsLXosbm9leGVjc3RhY2sgY29uZnRlc3QuYyAgMT4m NQpjb25maWd1cmU6MTE5MjI6IGNoZWNraW5nIGZvciBkbGZjbi5oCmNvbmZpZ3VyZToxMTk3Mjog Y2hlY2tpbmcgZm9yIGRsYWRkcgpjb25maWd1cmU6MTIwMDA6IC91c3IvYmluL2NsYW5nIC1vIGNv bmZ0ZXN0IC1PMiAtcGlwZSAtZm5vLXN0cmljdC1hbGlhc2luZyAtc3RkPWdudTk5IC1mZ251ODkt aW5saW5lIC1mbm8tc3RyaWN0LWFsaWFzaW5nIC1mZnVuY3Rpb24tc2VjdGlvbnMgLWZkYXRhLXNl Y3Rpb25zIC1EX0dOVV9TT1VSQ0UgLVF1bnVzZWQtYXJndW1lbnRzIC1pc3lzdGVtL3Vzci9sb2Nh bC9pbmNsdWRlICAtSS91c3IvbG9jYWwvaW5jbHVkZSAgLUwvdXNyL2xvY2FsL2xpYiAtV2wsLXos b3JpZ2luIC1XbCwtcnBhdGgsXCQkT1JJR0lOIC1XbCwteixub2V4ZWNzdGFjayBjb25mdGVzdC5j ICAxPiY1CmNvbmZpZ3VyZToxMTk3MjogY2hlY2tpbmcgZm9yIG1lbW1lbQpjb25maWd1cmU6MTIw MDA6IC91c3IvYmluL2NsYW5nIC1vIGNvbmZ0ZXN0IC1PMiAtcGlwZSAtZm5vLXN0cmljdC1hbGlh c2luZyAtc3RkPWdudTk5IC1mZ251ODktaW5saW5lIC1mbm8tc3RyaWN0LWFsaWFzaW5nIC1mZnVu Y3Rpb24tc2VjdGlvbnMgLWZkYXRhLXNlY3Rpb25zIC1EX0dOVV9TT1VSQ0UgLVF1bnVzZWQtYXJn dW1lbnRzIC1pc3lzdGVtL3Vzci9sb2NhbC9pbmNsdWRlICAtSS91c3IvbG9jYWwvaW5jbHVkZSAg LUwvdXNyL2xvY2FsL2xpYiAtV2wsLXosb3JpZ2luIC1XbCwtcnBhdGgsXCQkT1JJR0lOIC1XbCwt eixub2V4ZWNzdGFjayBjb25mdGVzdC5jICAxPiY1CmNvbmZpZ3VyZToxMjE0NDogY2hlY2tpbmcg Zm9yIHNvY2tldCBpbiAtbHNvY2tldApjb25maWd1cmU6MTIxNjM6IC91c3IvYmluL2NsYW5nIC1v IGNvbmZ0ZXN0IC1PMiAtcGlwZSAtZm5vLXN0cmljdC1hbGlhc2luZyAtc3RkPWdudTk5IC1mZ251 ODktaW5saW5lIC1mbm8tc3RyaWN0LWFsaWFzaW5nIC1mZnVuY3Rpb24tc2VjdGlvbnMgLWZkYXRh LXNlY3Rpb25zIC1RdW51c2VkLWFyZ3VtZW50cyAtaXN5c3RlbS91c3IvbG9jYWwvaW5jbHVkZSAg LUkvdXNyL2xvY2FsL2luY2x1ZGUgIC1ML3Vzci9sb2NhbC9saWIgLVdsLC16LG9yaWdpbiAtV2ws LXJwYXRoLFwkJE9SSUdJTiAtV2wsLXosbm9leGVjc3RhY2sgY29uZnRlc3QuYyAtbHNvY2tldCAg IDE+JjUKL3Vzci9iaW4vbGQ6IGNhbm5vdCBmaW5kIC1sc29ja2V0CmNsYW5nOiBlcnJvcjogbGlu a2VyIGNvbW1hbmQgZmFpbGVkIHdpdGggZXhpdCBjb2RlIDEgKHVzZSAtdiB0byBzZWUgaW52b2Nh dGlvbikKY29uZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6CiNsaW5lIDEyMTUyICJjb25maWd1 cmUiCiNpbmNsdWRlICJjb25mZGVmcy5oIgovKiBPdmVycmlkZSBhbnkgZ2NjMiBpbnRlcm5hbCBw cm90b3R5cGUgdG8gYXZvaWQgYW4gZXJyb3IuICAqLwovKiBXZSB1c2UgY2hhciBiZWNhdXNlIGlu dCBtaWdodCBtYXRjaCB0aGUgcmV0dXJuIHR5cGUgb2YgYSBnY2MyCiAgICBidWlsdGluIGFuZCB0 aGVuIGl0cyBhcmd1bWVudCBwcm90b3R5cGUgd291bGQgc3RpbGwgYXBwbHkuICAqLwpjaGFyIHNv Y2tldCgpOwoKaW50IG1haW4oKSB7CnNvY2tldCgpCjsgcmV0dXJuIDA7IH0KY29uZmlndXJlOjEy MjE4OiBjaGVja2luZyBmb3IgWERyYXdMaW5lcyBpbiAtbFgxMQpjb25maWd1cmU6MTIyMzc6IC91 c3IvYmluL2NsYW5nIC1vIGNvbmZ0ZXN0IC1PMiAtcGlwZSAtZm5vLXN0cmljdC1hbGlhc2luZyAt c3RkPWdudTk5IC1mZ251ODktaW5saW5lIC1mbm8tc3RyaWN0LWFsaWFzaW5nIC1mZnVuY3Rpb24t c2VjdGlvbnMgLWZkYXRhLXNlY3Rpb25zIC1RdW51c2VkLWFyZ3VtZW50cyAtaXN5c3RlbS91c3Iv bG9jYWwvaW5jbHVkZSAgLUkvdXNyL2xvY2FsL2luY2x1ZGUgIC1ML3Vzci9sb2NhbC9saWIgIC1M L3Vzci9sb2NhbC9saWIgLVdsLC16LG9yaWdpbiAtV2wsLXJwYXRoLFwkJE9SSUdJTiAtV2wsLXos bm9leGVjc3RhY2sgY29uZnRlc3QuYyAtbFgxMSAtbFgxMSAgIDE+JjUKY29uZmlndXJlOjEyMjU5 OiBjaGVja2luZyBmb3IgWGV4dEFkZERpc3BsYXkgaW4gLWxYZXh0CmNvbmZpZ3VyZToxMjI3ODog L3Vzci9iaW4vY2xhbmcgLW8gY29uZnRlc3QgLU8yIC1waXBlIC1mbm8tc3RyaWN0LWFsaWFzaW5n IC1zdGQ9Z251OTkgLWZnbnU4OS1pbmxpbmUgLWZuby1zdHJpY3QtYWxpYXNpbmcgLWZmdW5jdGlv bi1zZWN0aW9ucyAtZmRhdGEtc2VjdGlvbnMgLVF1bnVzZWQtYXJndW1lbnRzIC1pc3lzdGVtL3Vz ci9sb2NhbC9pbmNsdWRlICAtSS91c3IvbG9jYWwvaW5jbHVkZSAgLUwvdXNyL2xvY2FsL2xpYiAg LUwvdXNyL2xvY2FsL2xpYiAtV2wsLXosb3JpZ2luIC1XbCwtcnBhdGgsXCQkT1JJR0lOIC1XbCwt eixub2V4ZWNzdGFjayBjb25mdGVzdC5jIC1sWGV4dCAtbFgxMSAgIDE+JjUKY29uZmlndXJlOjEy MzAxOiBjaGVja2luZyBmb3IgWHRGcmVlIGluIC1sWHQKY29uZmlndXJlOjEyMzIwOiAvdXNyL2Jp bi9jbGFuZyAtbyBjb25mdGVzdCAtTzIgLXBpcGUgLWZuby1zdHJpY3QtYWxpYXNpbmcgLXN0ZD1n bnU5OSAtZmdudTg5LWlubGluZSAtZm5vLXN0cmljdC1hbGlhc2luZyAtZmZ1bmN0aW9uLXNlY3Rp b25zIC1mZGF0YS1zZWN0aW9ucyAtUXVudXNlZC1hcmd1bWVudHMgLWlzeXN0ZW0vdXNyL2xvY2Fs L2luY2x1ZGUgIC1JL3Vzci9sb2NhbC9pbmNsdWRlICAtTC91c3IvbG9jYWwvbGliICAtTC91c3Iv bG9jYWwvbGliIC1XbCwteixvcmlnaW4gLVdsLC1ycGF0aCxcJCRPUklHSU4gLVdsLC16LG5vZXhl Y3N0YWNrIGNvbmZ0ZXN0LmMgLWxYdCAgIDE+JjUKY29uZmlndXJlOjEyNDc0OiBjaGVja2luZyBm b3IgWFNobUNyZWF0ZUltYWdlIGluIC1sWGV4dApjb25maWd1cmU6MTI0OTM6IC91c3IvYmluL2Ns YW5nIC1vIGNvbmZ0ZXN0IC1PMiAtcGlwZSAtZm5vLXN0cmljdC1hbGlhc2luZyAtc3RkPWdudTk5 IC1mZ251ODktaW5saW5lIC1mbm8tc3RyaWN0LWFsaWFzaW5nIC1mZnVuY3Rpb24tc2VjdGlvbnMg LWZkYXRhLXNlY3Rpb25zIC1RdW51c2VkLWFyZ3VtZW50cyAtaXN5c3RlbS91c3IvbG9jYWwvaW5j bHVkZSAgLUkvdXNyL2xvY2FsL2luY2x1ZGUgIC1ML3Vzci9sb2NhbC9saWIgIC1ML3Vzci9sb2Nh bC9saWIgLVdsLC16LG9yaWdpbiAtV2wsLXJwYXRoLFwkJE9SSUdJTiAtV2wsLXosbm9leGVjc3Rh Y2sgY29uZnRlc3QuYyAtbFhleHQgLWxYMTEgIC1sWGV4dCAgMT4mNQpjb25maWd1cmU6MTI1MTY6 IGNoZWNraW5nIGZvciBYMTEvZXh0ZW5zaW9ucy9zY3Juc2F2ZXIuaApjb25maWd1cmU6MTI1Mjk6 IC91c3IvYmluL2NsYW5nIC1jIC1PMiAtcGlwZSAtZm5vLXN0cmljdC1hbGlhc2luZyAtc3RkPWdu dTk5IC1mZ251ODktaW5saW5lIC1mbm8tc3RyaWN0LWFsaWFzaW5nIC1mZnVuY3Rpb24tc2VjdGlv bnMgLWZkYXRhLXNlY3Rpb25zIC1RdW51c2VkLWFyZ3VtZW50cyAtaXN5c3RlbS91c3IvbG9jYWwv aW5jbHVkZSAgLUkvdXNyL2xvY2FsL2luY2x1ZGUgY29uZnRlc3QuYyAxPiY1CmNvbmZpZ3VyZTox MjU0NDogY2hlY2tpbmcgZm9yIFhTY3JlZW5TYXZlclF1ZXJ5SW5mbyBpbiAtbFhzcwpjb25maWd1 cmU6MTI1NjM6IC91c3IvYmluL2NsYW5nIC1vIGNvbmZ0ZXN0IC1PMiAtcGlwZSAtZm5vLXN0cmlj dC1hbGlhc2luZyAtc3RkPWdudTk5IC1mZ251ODktaW5saW5lIC1mbm8tc3RyaWN0LWFsaWFzaW5n IC1mZnVuY3Rpb24tc2VjdGlvbnMgLWZkYXRhLXNlY3Rpb25zIC1RdW51c2VkLWFyZ3VtZW50cyAt aXN5c3RlbS91c3IvbG9jYWwvaW5jbHVkZSAgLUkvdXNyL2xvY2FsL2luY2x1ZGUgIC1ML3Vzci9s b2NhbC9saWIgIC1ML3Vzci9sb2NhbC9saWIgLVdsLC16LG9yaWdpbiAtV2wsLXJwYXRoLFwkJE9S SUdJTiAtV2wsLXosbm9leGVjc3RhY2sgY29uZnRlc3QuYyAtbFhzcyAtbFhleHQgLWxYMTEgICAx PiY1CmNvbmZpZ3VyZToxMjYxMzogY2hlY2tpbmcgZm9yIHB0aHJlYWRfY3JlYXRlIGluIC1scHRo cmVhZHMKL3Vzci9iaW4vY2xhbmcgLW8gZHVtbXkgZHVtbXkuYyAtTzIgLXBpcGUgLWZuby1zdHJp Y3QtYWxpYXNpbmcgLXN0ZD1nbnU5OSAtZmdudTg5LWlubGluZSAtZm5vLXN0cmljdC1hbGlhc2lu ZyAtZmZ1bmN0aW9uLXNlY3Rpb25zIC1mZGF0YS1zZWN0aW9ucyAtUXVudXNlZC1hcmd1bWVudHMg LWlzeXN0ZW0vdXNyL2xvY2FsL2luY2x1ZGUgIC1JL3Vzci9sb2NhbC9pbmNsdWRlIC1scHRocmVh ZHMgIC1ML3Vzci9sb2NhbC9saWIgLVdsLC16LG9yaWdpbiAtV2wsLXJwYXRoLFwkJE9SSUdJTiAt V2wsLXosbm9leGVjc3RhY2sgCmR1bW15LmM6NDozODogd2FybmluZzogY29udHJvbCByZWFjaGVz IGVuZCBvZiBub24tdm9pZCBmdW5jdGlvbiBbLVdyZXR1cm4tdHlwZV0KICAgIHZvaWQgKmZvbyh2 b2lkICp2KSB7IGludCBhID0gMTsgIH0gCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBeCjEgd2FybmluZyBnZW5lcmF0ZWQuCi91c3IvYmluL2xkOiBjYW5ub3QgZmluZCAtbHB0 aHJlYWRzCmNsYW5nOiBlcnJvcjogbGlua2VyIGNvbW1hbmQgZmFpbGVkIHdpdGggZXhpdCBjb2Rl IDEgKHVzZSAtdiB0byBzZWUgaW52b2NhdGlvbikKY29uZmlndXJlOjEyNjM2OiBjaGVja2luZyBm b3IgcHRocmVhZF9jcmVhdGUgaW4gLWxwdGhyZWFkCi91c3IvYmluL2NsYW5nIC1vIGR1bW15IGR1 bW15LmMgLU8yIC1waXBlIC1mbm8tc3RyaWN0LWFsaWFzaW5nIC1zdGQ9Z251OTkgLWZnbnU4OS1p bmxpbmUgLWZuby1zdHJpY3QtYWxpYXNpbmcgLWZmdW5jdGlvbi1zZWN0aW9ucyAtZmRhdGEtc2Vj dGlvbnMgLVF1bnVzZWQtYXJndW1lbnRzIC1pc3lzdGVtL3Vzci9sb2NhbC9pbmNsdWRlICAtSS91 c3IvbG9jYWwvaW5jbHVkZSAtbHB0aHJlYWQgIC1ML3Vzci9sb2NhbC9saWIgLVdsLC16LG9yaWdp biAtV2wsLXJwYXRoLFwkJE9SSUdJTiAtV2wsLXosbm9leGVjc3RhY2sgCmR1bW15LmM6NDozODog d2FybmluZzogY29udHJvbCByZWFjaGVzIGVuZCBvZiBub24tdm9pZCBmdW5jdGlvbiBbLVdyZXR1 cm4tdHlwZV0KICAgIHZvaWQgKmZvbyh2b2lkICp2KSB7IGludCBhID0gMTsgIH0gCiAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBeCjEgd2FybmluZyBnZW5lcmF0ZWQuCmNvbmZp Z3VyZToxMjc0MTogY2hlY2tpbmcgd2hldGhlciAvdXNyL2Jpbi9jbGFuZyBhY2NlcHRzIC1wdGhy ZWFkCmNvbmZpZ3VyZToxMjg2OTogY2hlY2tpbmcgd2hldGhlciAvdXNyL2Jpbi9jbGFuZyBuZWVk cyAtdHJhZGl0aW9uYWwKY29uZmlndXJlOjEyODc2OjEwOiBmYXRhbCBlcnJvcjogJ3NndHR5Lmgn IGZpbGUgbm90IGZvdW5kCiNpbmNsdWRlIDxzZ3R0eS5oPgogICAgICAgICBeCjEgZXJyb3IgZ2Vu ZXJhdGVkLgpjb25maWd1cmU6MTI4OTQ6MTA6IGZhdGFsIGVycm9yOiAndGVybWlvLmgnIGZpbGUg bm90IGZvdW5kCiNpbmNsdWRlIDx0ZXJtaW8uaD4KICAgICAgICAgXgoxIGVycm9yIGdlbmVyYXRl ZC4KY29uZmlndXJlOjEyOTE1OiBjaGVja2luZyBmb3IgOC1iaXQgY2xlYW4gbWVtY21wCmNvbmZp Z3VyZToxMjkzMzogL3Vzci9iaW4vY2xhbmcgLW8gY29uZnRlc3QgLU8yIC1waXBlIC1mbm8tc3Ry aWN0LWFsaWFzaW5nIC1zdGQ9Z251OTkgLWZnbnU4OS1pbmxpbmUgLWZuby1zdHJpY3QtYWxpYXNp bmcgLWZmdW5jdGlvbi1zZWN0aW9ucyAtZmRhdGEtc2VjdGlvbnMgLVF1bnVzZWQtYXJndW1lbnRz IC1pc3lzdGVtL3Vzci9sb2NhbC9pbmNsdWRlICAtSS91c3IvbG9jYWwvaW5jbHVkZSAtcHRocmVh ZCAgLUwvdXNyL2xvY2FsL2xpYiAtV2wsLXosb3JpZ2luIC1XbCwtcnBhdGgsXCQkT1JJR0lOIC1X bCwteixub2V4ZWNzdGFjayBjb25mdGVzdC5jICAxPiY1CmNvbmZpZ3VyZToxMjkyNToxOiB3YXJu aW5nOiB0eXBlIHNwZWNpZmllciBtaXNzaW5nLCBkZWZhdWx0cyB0byAnaW50JyBbLVdpbXBsaWNp dC1pbnRdCm1haW4oKQpefn5+CmNvbmZpZ3VyZToxMjkyODozOiB3YXJuaW5nOiBpbXBsaWNpdGx5 IGRlY2xhcmluZyBsaWJyYXJ5IGZ1bmN0aW9uICdleGl0JyB3aXRoIHR5cGUgJ3ZvaWQgKGludCkg X19hdHRyaWJ1dGVfXygobm9yZXR1cm4pKScKICBleGl0KG1lbWNtcCgmYzAsICZjMiwgMSkgPCAw ICYmIG1lbWNtcCgmYzEsICZjMiwgMSkgPCAwID8gMCA6IDEpOwogIF4KY29uZmlndXJlOjEyOTI4 OjM6IG5vdGU6IHBsZWFzZSBpbmNsdWRlIHRoZSBoZWFkZXIgPHN0ZGxpYi5oPiBvciBleHBsaWNp dGx5IHByb3ZpZGUgYSBkZWNsYXJhdGlvbiBmb3IgJ2V4aXQnCmNvbmZpZ3VyZToxMjkyODo4OiB3 YXJuaW5nOiBpbXBsaWNpdGx5IGRlY2xhcmluZyBsaWJyYXJ5IGZ1bmN0aW9uICdtZW1jbXAnIHdp dGggdHlwZSAnaW50IChjb25zdCB2b2lkICosIGNvbnN0IHZvaWQgKiwgdW5zaWduZWQgaW50KScK ICBleGl0KG1lbWNtcCgmYzAsICZjMiwgMSkgPCAwICYmIG1lbWNtcCgmYzEsICZjMiwgMSkgPCAw ID8gMCA6IDEpOwogICAgICAgXgpjb25maWd1cmU6MTI5Mjg6ODogbm90ZTogcGxlYXNlIGluY2x1 ZGUgdGhlIGhlYWRlciA8c3RyaW5nLmg+IG9yIGV4cGxpY2l0bHkgcHJvdmlkZSBhIGRlY2xhcmF0 aW9uIGZvciAnbWVtY21wJwozIHdhcm5pbmdzIGdlbmVyYXRlZC4KY29uZmlndXJlOjEyOTUzOiBj aGVja2luZyBmb3IgcmFuZG9tCmNvbmZpZ3VyZToxMjk1MzogY2hlY2tpbmcgZm9yIHN0cmVycm9y CmNvbmZpZ3VyZToxMjk1MzogY2hlY2tpbmcgZm9yIGxjaG93bgpjb25maWd1cmU6MTI5ODE6IC91 c3IvYmluL2NsYW5nIC1vIGNvbmZ0ZXN0IC1PMiAtcGlwZSAtZm5vLXN0cmljdC1hbGlhc2luZyAt c3RkPWdudTk5IC1mZ251ODktaW5saW5lIC1mbm8tc3RyaWN0LWFsaWFzaW5nIC1mZnVuY3Rpb24t c2VjdGlvbnMgLWZkYXRhLXNlY3Rpb25zIC1RdW51c2VkLWFyZ3VtZW50cyAtaXN5c3RlbS91c3Iv bG9jYWwvaW5jbHVkZSAgLUkvdXNyL2xvY2FsL2luY2x1ZGUgLXB0aHJlYWQgIC1ML3Vzci9sb2Nh bC9saWIgLVdsLC16LG9yaWdpbiAtV2wsLXJwYXRoLFwkJE9SSUdJTiAtV2wsLXosbm9leGVjc3Rh Y2sgY29uZnRlc3QuYyAgMT4mNQpjb25maWd1cmU6MTI5NTM6IGNoZWNraW5nIGZvciBmY2htb2QK Y29uZmlndXJlOjEyOTUzOiBjaGVja2luZyBmb3Igc25wcmludGYKY29uZmlndXJlOjEyOTUzOiBj aGVja2luZyBmb3IgbWVtbW92ZQpjb25maWd1cmU6MTI5NTM6IGNoZWNraW5nIGZvciByaW50CmNv bmZpZ3VyZToxMjk4MTogL3Vzci9iaW4vY2xhbmcgLW8gY29uZnRlc3QgLU8yIC1waXBlIC1mbm8t c3RyaWN0LWFsaWFzaW5nIC1zdGQ9Z251OTkgLWZnbnU4OS1pbmxpbmUgLWZuby1zdHJpY3QtYWxp YXNpbmcgLWZmdW5jdGlvbi1zZWN0aW9ucyAtZmRhdGEtc2VjdGlvbnMgLVF1bnVzZWQtYXJndW1l bnRzIC1pc3lzdGVtL3Vzci9sb2NhbC9pbmNsdWRlICAtSS91c3IvbG9jYWwvaW5jbHVkZSAtcHRo cmVhZCAgLUwvdXNyL2xvY2FsL2xpYiAtV2wsLXosb3JpZ2luIC1XbCwtcnBhdGgsXCQkT1JJR0lO IC1XbCwteixub2V4ZWNzdGFjayBjb25mdGVzdC5jICAxPiY1Ci90bXAvY29uZnRlc3QtMGxrZUl1 Lm86IEluIGZ1bmN0aW9uIGBtYWluJzoKY29uZnRlc3QuYzooLnRleHQubWFpbisweDcpOiB1bmRl ZmluZWQgcmVmZXJlbmNlIHRvIGByaW50JwpjbGFuZzogZXJyb3I6IGxpbmtlciBjb21tYW5kIGZh aWxlZCB3aXRoIGV4aXQgY29kZSAxICh1c2UgLXYgdG8gc2VlIGludm9jYXRpb24pCmNvbmZpZ3Vy ZTogZmFpbGVkIHByb2dyYW0gd2FzOgojbGluZSAxMjk1OCAiY29uZmlndXJlIgojaW5jbHVkZSAi Y29uZmRlZnMuaCIKLyogU3lzdGVtIGhlYWRlciB0byBkZWZpbmUgX19zdHViIG1hY3JvcyBhbmQg aG9wZWZ1bGx5IGZldyBwcm90b3R5cGVzLAogICAgd2hpY2ggY2FuIGNvbmZsaWN0IHdpdGggY2hh ciByaW50KCk7IGJlbG93LiAgKi8KI2luY2x1ZGUgPGFzc2VydC5oPgovKiBPdmVycmlkZSBhbnkg Z2NjMiBpbnRlcm5hbCBwcm90b3R5cGUgdG8gYXZvaWQgYW4gZXJyb3IuICAqLwovKiBXZSB1c2Ug Y2hhciBiZWNhdXNlIGludCBtaWdodCBtYXRjaCB0aGUgcmV0dXJuIHR5cGUgb2YgYSBnY2MyCiAg ICBidWlsdGluIGFuZCB0aGVuIGl0cyBhcmd1bWVudCBwcm90b3R5cGUgd291bGQgc3RpbGwgYXBw bHkuICAqLwpjaGFyIHJpbnQoKTsKCmludCBtYWluKCkgewoKLyogVGhlIEdOVSBDIGxpYnJhcnkg ZGVmaW5lcyB0aGlzIGZvciBmdW5jdGlvbnMgd2hpY2ggaXQgaW1wbGVtZW50cwogICAgdG8gYWx3 YXlzIGZhaWwgd2l0aCBFTk9TWVMuICBTb21lIGZ1bmN0aW9ucyBhcmUgYWN0dWFsbHkgbmFtZWQK ICAgIHNvbWV0aGluZyBzdGFydGluZyB3aXRoIF9fIGFuZCB0aGUgbm9ybWFsIG5hbWUgaXMgYW4g YWxpYXMuICAqLwojaWYgZGVmaW5lZCAoX19zdHViX3JpbnQpIHx8IGRlZmluZWQgKF9fc3R1Yl9f X3JpbnQpCmNob2tlIG1lCiNlbHNlCnJpbnQoKTsKI2VuZGlmCgo7IHJldHVybiAwOyB9CmNvbmZp Z3VyZToxMjk1MzogY2hlY2tpbmcgZm9yIHN0YXQ2NApjb25maWd1cmU6MTI5ODE6IC91c3IvYmlu L2NsYW5nIC1vIGNvbmZ0ZXN0IC1PMiAtcGlwZSAtZm5vLXN0cmljdC1hbGlhc2luZyAtc3RkPWdu dTk5IC1mZ251ODktaW5saW5lIC1mbm8tc3RyaWN0LWFsaWFzaW5nIC1mZnVuY3Rpb24tc2VjdGlv bnMgLWZkYXRhLXNlY3Rpb25zIC1RdW51c2VkLWFyZ3VtZW50cyAtaXN5c3RlbS91c3IvbG9jYWwv aW5jbHVkZSAgLUkvdXNyL2xvY2FsL2luY2x1ZGUgLXB0aHJlYWQgIC1ML3Vzci9sb2NhbC9saWIg LVdsLC16LG9yaWdpbiAtV2wsLXJwYXRoLFwkJE9SSUdJTiAtV2wsLXosbm9leGVjc3RhY2sgY29u ZnRlc3QuYyAgMT4mNQovdG1wL2NvbmZ0ZXN0LWlUQWJsci5vOiBJbiBmdW5jdGlvbiBgbWFpbic6 CmNvbmZ0ZXN0LmM6KC50ZXh0Lm1haW4rMHg3KTogdW5kZWZpbmVkIHJlZmVyZW5jZSB0byBgc3Rh dDY0JwpjbGFuZzogZXJyb3I6IGxpbmtlciBjb21tYW5kIGZhaWxlZCB3aXRoIGV4aXQgY29kZSAx ICh1c2UgLXYgdG8gc2VlIGludm9jYXRpb24pCmNvbmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2Fz OgojbGluZSAxMjk1OCAiY29uZmlndXJlIgojaW5jbHVkZSAiY29uZmRlZnMuaCIKLyogU3lzdGVt IGhlYWRlciB0byBkZWZpbmUgX19zdHViIG1hY3JvcyBhbmQgaG9wZWZ1bGx5IGZldyBwcm90b3R5 cGVzLAogICAgd2hpY2ggY2FuIGNvbmZsaWN0IHdpdGggY2hhciBzdGF0NjQoKTsgYmVsb3cuICAq LwojaW5jbHVkZSA8YXNzZXJ0Lmg+Ci8qIE92ZXJyaWRlIGFueSBnY2MyIGludGVybmFsIHByb3Rv dHlwZSB0byBhdm9pZCBhbiBlcnJvci4gICovCi8qIFdlIHVzZSBjaGFyIGJlY2F1c2UgaW50IG1p Z2h0IG1hdGNoIHRoZSByZXR1cm4gdHlwZSBvZiBhIGdjYzIKICAgIGJ1aWx0aW4gYW5kIHRoZW4g aXRzIGFyZ3VtZW50IHByb3RvdHlwZSB3b3VsZCBzdGlsbCBhcHBseS4gICovCmNoYXIgc3RhdDY0 KCk7CgppbnQgbWFpbigpIHsKCi8qIFRoZSBHTlUgQyBsaWJyYXJ5IGRlZmluZXMgdGhpcyBmb3Ig ZnVuY3Rpb25zIHdoaWNoIGl0IGltcGxlbWVudHMKICAgIHRvIGFsd2F5cyBmYWlsIHdpdGggRU5P U1lTLiAgU29tZSBmdW5jdGlvbnMgYXJlIGFjdHVhbGx5IG5hbWVkCiAgICBzb21ldGhpbmcgc3Rh cnRpbmcgd2l0aCBfXyBhbmQgdGhlIG5vcm1hbCBuYW1lIGlzIGFuIGFsaWFzLiAgKi8KI2lmIGRl ZmluZWQgKF9fc3R1Yl9zdGF0NjQpIHx8IGRlZmluZWQgKF9fc3R1Yl9fX3N0YXQ2NCkKY2hva2Ug bWUKI2Vsc2UKc3RhdDY0KCk7CiNlbmRpZgoKOyByZXR1cm4gMDsgfQpjb25maWd1cmU6MTI5NTM6 IGNoZWNraW5nIGZvciBsc3RhdDY0CmNvbmZpZ3VyZToxMjk4MTogL3Vzci9iaW4vY2xhbmcgLW8g Y29uZnRlc3QgLU8yIC1waXBlIC1mbm8tc3RyaWN0LWFsaWFzaW5nIC1zdGQ9Z251OTkgLWZnbnU4 OS1pbmxpbmUgLWZuby1zdHJpY3QtYWxpYXNpbmcgLWZmdW5jdGlvbi1zZWN0aW9ucyAtZmRhdGEt c2VjdGlvbnMgLVF1bnVzZWQtYXJndW1lbnRzIC1pc3lzdGVtL3Vzci9sb2NhbC9pbmNsdWRlICAt SS91c3IvbG9jYWwvaW5jbHVkZSAtcHRocmVhZCAgLUwvdXNyL2xvY2FsL2xpYiAtV2wsLXosb3Jp Z2luIC1XbCwtcnBhdGgsXCQkT1JJR0lOIC1XbCwteixub2V4ZWNzdGFjayBjb25mdGVzdC5jICAx PiY1Ci90bXAvY29uZnRlc3QtQUZsbjZaLm86IEluIGZ1bmN0aW9uIGBtYWluJzoKY29uZnRlc3Qu YzooLnRleHQubWFpbisweDcpOiB1bmRlZmluZWQgcmVmZXJlbmNlIHRvIGBsc3RhdDY0JwpjbGFu ZzogZXJyb3I6IGxpbmtlciBjb21tYW5kIGZhaWxlZCB3aXRoIGV4aXQgY29kZSAxICh1c2UgLXYg dG8gc2VlIGludm9jYXRpb24pCmNvbmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2FzOgojbGluZSAx Mjk1OCAiY29uZmlndXJlIgojaW5jbHVkZSAiY29uZmRlZnMuaCIKLyogU3lzdGVtIGhlYWRlciB0 byBkZWZpbmUgX19zdHViIG1hY3JvcyBhbmQgaG9wZWZ1bGx5IGZldyBwcm90b3R5cGVzLAogICAg d2hpY2ggY2FuIGNvbmZsaWN0IHdpdGggY2hhciBsc3RhdDY0KCk7IGJlbG93LiAgKi8KI2luY2x1 ZGUgPGFzc2VydC5oPgovKiBPdmVycmlkZSBhbnkgZ2NjMiBpbnRlcm5hbCBwcm90b3R5cGUgdG8g YXZvaWQgYW4gZXJyb3IuICAqLwovKiBXZSB1c2UgY2hhciBiZWNhdXNlIGludCBtaWdodCBtYXRj aCB0aGUgcmV0dXJuIHR5cGUgb2YgYSBnY2MyCiAgICBidWlsdGluIGFuZCB0aGVuIGl0cyBhcmd1 bWVudCBwcm90b3R5cGUgd291bGQgc3RpbGwgYXBwbHkuICAqLwpjaGFyIGxzdGF0NjQoKTsKCmlu dCBtYWluKCkgewoKLyogVGhlIEdOVSBDIGxpYnJhcnkgZGVmaW5lcyB0aGlzIGZvciBmdW5jdGlv bnMgd2hpY2ggaXQgaW1wbGVtZW50cwogICAgdG8gYWx3YXlzIGZhaWwgd2l0aCBFTk9TWVMuICBT b21lIGZ1bmN0aW9ucyBhcmUgYWN0dWFsbHkgbmFtZWQKICAgIHNvbWV0aGluZyBzdGFydGluZyB3 aXRoIF9fIGFuZCB0aGUgbm9ybWFsIG5hbWUgaXMgYW4gYWxpYXMuICAqLwojaWYgZGVmaW5lZCAo X19zdHViX2xzdGF0NjQpIHx8IGRlZmluZWQgKF9fc3R1Yl9fX2xzdGF0NjQpCmNob2tlIG1lCiNl bHNlCmxzdGF0NjQoKTsKI2VuZGlmCgo7IHJldHVybiAwOyB9CmNvbmZpZ3VyZToxMjk1MzogY2hl Y2tpbmcgZm9yIHRydW5jYXRlNjQKY29uZmlndXJlOjEyOTgxOiAvdXNyL2Jpbi9jbGFuZyAtbyBj b25mdGVzdCAtTzIgLXBpcGUgLWZuby1zdHJpY3QtYWxpYXNpbmcgLXN0ZD1nbnU5OSAtZmdudTg5 LWlubGluZSAtZm5vLXN0cmljdC1hbGlhc2luZyAtZmZ1bmN0aW9uLXNlY3Rpb25zIC1mZGF0YS1z ZWN0aW9ucyAtUXVudXNlZC1hcmd1bWVudHMgLWlzeXN0ZW0vdXNyL2xvY2FsL2luY2x1ZGUgIC1J L3Vzci9sb2NhbC9pbmNsdWRlIC1wdGhyZWFkICAtTC91c3IvbG9jYWwvbGliIC1XbCwteixvcmln aW4gLVdsLC1ycGF0aCxcJCRPUklHSU4gLVdsLC16LG5vZXhlY3N0YWNrIGNvbmZ0ZXN0LmMgIDE+ JjUKL3RtcC9jb25mdGVzdC1Sa0pnRjMubzogSW4gZnVuY3Rpb24gYG1haW4nOgpjb25mdGVzdC5j OigudGV4dC5tYWluKzB4Nyk6IHVuZGVmaW5lZCByZWZlcmVuY2UgdG8gYHRydW5jYXRlNjQnCmNs YW5nOiBlcnJvcjogbGlua2VyIGNvbW1hbmQgZmFpbGVkIHdpdGggZXhpdCBjb2RlIDEgKHVzZSAt diB0byBzZWUgaW52b2NhdGlvbikKY29uZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6CiNsaW5l IDEyOTU4ICJjb25maWd1cmUiCiNpbmNsdWRlICJjb25mZGVmcy5oIgovKiBTeXN0ZW0gaGVhZGVy IHRvIGRlZmluZSBfX3N0dWIgbWFjcm9zIGFuZCBob3BlZnVsbHkgZmV3IHByb3RvdHlwZXMsCiAg ICB3aGljaCBjYW4gY29uZmxpY3Qgd2l0aCBjaGFyIHRydW5jYXRlNjQoKTsgYmVsb3cuICAqLwoj aW5jbHVkZSA8YXNzZXJ0Lmg+Ci8qIE92ZXJyaWRlIGFueSBnY2MyIGludGVybmFsIHByb3RvdHlw ZSB0byBhdm9pZCBhbiBlcnJvci4gICovCi8qIFdlIHVzZSBjaGFyIGJlY2F1c2UgaW50IG1pZ2h0 IG1hdGNoIHRoZSByZXR1cm4gdHlwZSBvZiBhIGdjYzIKICAgIGJ1aWx0aW4gYW5kIHRoZW4gaXRz IGFyZ3VtZW50IHByb3RvdHlwZSB3b3VsZCBzdGlsbCBhcHBseS4gICovCmNoYXIgdHJ1bmNhdGU2 NCgpOwoKaW50IG1haW4oKSB7CgovKiBUaGUgR05VIEMgbGlicmFyeSBkZWZpbmVzIHRoaXMgZm9y IGZ1bmN0aW9ucyB3aGljaCBpdCBpbXBsZW1lbnRzCiAgICB0byBhbHdheXMgZmFpbCB3aXRoIEVO T1NZUy4gIFNvbWUgZnVuY3Rpb25zIGFyZSBhY3R1YWxseSBuYW1lZAogICAgc29tZXRoaW5nIHN0 YXJ0aW5nIHdpdGggX18gYW5kIHRoZSBub3JtYWwgbmFtZSBpcyBhbiBhbGlhcy4gICovCiNpZiBk ZWZpbmVkIChfX3N0dWJfdHJ1bmNhdGU2NCkgfHwgZGVmaW5lZCAoX19zdHViX19fdHJ1bmNhdGU2 NCkKY2hva2UgbWUKI2Vsc2UKdHJ1bmNhdGU2NCgpOwojZW5kaWYKCjsgcmV0dXJuIDA7IH0KY29u ZmlndXJlOjEyOTUzOiBjaGVja2luZyBmb3Igc2V0YnVmCmNvbmZpZ3VyZToxMjk4MTogL3Vzci9i aW4vY2xhbmcgLW8gY29uZnRlc3QgLU8yIC1waXBlIC1mbm8tc3RyaWN0LWFsaWFzaW5nIC1zdGQ9 Z251OTkgLWZnbnU4OS1pbmxpbmUgLWZuby1zdHJpY3QtYWxpYXNpbmcgLWZmdW5jdGlvbi1zZWN0 aW9ucyAtZmRhdGEtc2VjdGlvbnMgLVF1bnVzZWQtYXJndW1lbnRzIC1pc3lzdGVtL3Vzci9sb2Nh bC9pbmNsdWRlICAtSS91c3IvbG9jYWwvaW5jbHVkZSAtcHRocmVhZCAgLUwvdXNyL2xvY2FsL2xp YiAtV2wsLXosb3JpZ2luIC1XbCwtcnBhdGgsXCQkT1JJR0lOIC1XbCwteixub2V4ZWNzdGFjayBj b25mdGVzdC5jICAxPiY1CmNvbmZpZ3VyZToxMjk1MzogY2hlY2tpbmcgZm9yIGlzYXR0eQpjb25m aWd1cmU6MTI5ODE6IC91c3IvYmluL2NsYW5nIC1vIGNvbmZ0ZXN0IC1PMiAtcGlwZSAtZm5vLXN0 cmljdC1hbGlhc2luZyAtc3RkPWdudTk5IC1mZ251ODktaW5saW5lIC1mbm8tc3RyaWN0LWFsaWFz aW5nIC1mZnVuY3Rpb24tc2VjdGlvbnMgLWZkYXRhLXNlY3Rpb25zIC1RdW51c2VkLWFyZ3VtZW50 cyAtaXN5c3RlbS91c3IvbG9jYWwvaW5jbHVkZSAgLUkvdXNyL2xvY2FsL2luY2x1ZGUgLXB0aHJl YWQgIC1ML3Vzci9sb2NhbC9saWIgLVdsLC16LG9yaWdpbiAtV2wsLXJwYXRoLFwkJE9SSUdJTiAt V2wsLXosbm9leGVjc3RhY2sgY29uZnRlc3QuYyAgMT4mNQpjb25maWd1cmU6MTMwMTE6IGNoZWNr aW5nIGZvciBzdGF0dmZzNjQKY29uZmlndXJlOjEzMDM5OiAvdXNyL2Jpbi9jbGFuZyAtbyBjb25m dGVzdCAtTzIgLXBpcGUgLWZuby1zdHJpY3QtYWxpYXNpbmcgLXN0ZD1nbnU5OSAtZmdudTg5LWlu bGluZSAtZm5vLXN0cmljdC1hbGlhc2luZyAtZmZ1bmN0aW9uLXNlY3Rpb25zIC1mZGF0YS1zZWN0 aW9ucyAtUXVudXNlZC1hcmd1bWVudHMgLWlzeXN0ZW0vdXNyL2xvY2FsL2luY2x1ZGUgIC1JL3Vz ci9sb2NhbC9pbmNsdWRlIC1wdGhyZWFkICAtTC91c3IvbG9jYWwvbGliIC1XbCwteixvcmlnaW4g LVdsLC1ycGF0aCxcJCRPUklHSU4gLVdsLC16LG5vZXhlY3N0YWNrIGNvbmZ0ZXN0LmMgIDE+JjUK L3RtcC9jb25mdGVzdC1nUmRpeWkubzogSW4gZnVuY3Rpb24gYG1haW4nOgpjb25mdGVzdC5jOigu dGV4dC5tYWluKzB4Nyk6IHVuZGVmaW5lZCByZWZlcmVuY2UgdG8gYHN0YXR2ZnM2NCcKY2xhbmc6 IGVycm9yOiBsaW5rZXIgY29tbWFuZCBmYWlsZWQgd2l0aCBleGl0IGNvZGUgMSAodXNlIC12IHRv IHNlZSBpbnZvY2F0aW9uKQpjb25maWd1cmU6IGZhaWxlZCBwcm9ncmFtIHdhczoKI2xpbmUgMTMw MTYgImNvbmZpZ3VyZSIKI2luY2x1ZGUgImNvbmZkZWZzLmgiCi8qIFN5c3RlbSBoZWFkZXIgdG8g ZGVmaW5lIF9fc3R1YiBtYWNyb3MgYW5kIGhvcGVmdWxseSBmZXcgcHJvdG90eXBlcywKICAgIHdo aWNoIGNhbiBjb25mbGljdCB3aXRoIGNoYXIgc3RhdHZmczY0KCk7IGJlbG93LiAgKi8KI2luY2x1 ZGUgPGFzc2VydC5oPgovKiBPdmVycmlkZSBhbnkgZ2NjMiBpbnRlcm5hbCBwcm90b3R5cGUgdG8g YXZvaWQgYW4gZXJyb3IuICAqLwovKiBXZSB1c2UgY2hhciBiZWNhdXNlIGludCBtaWdodCBtYXRj aCB0aGUgcmV0dXJuIHR5cGUgb2YgYSBnY2MyCiAgICBidWlsdGluIGFuZCB0aGVuIGl0cyBhcmd1 bWVudCBwcm90b3R5cGUgd291bGQgc3RpbGwgYXBwbHkuICAqLwpjaGFyIHN0YXR2ZnM2NCgpOwoK aW50IG1haW4oKSB7CgovKiBUaGUgR05VIEMgbGlicmFyeSBkZWZpbmVzIHRoaXMgZm9yIGZ1bmN0 aW9ucyB3aGljaCBpdCBpbXBsZW1lbnRzCiAgICB0byBhbHdheXMgZmFpbCB3aXRoIEVOT1NZUy4g IFNvbWUgZnVuY3Rpb25zIGFyZSBhY3R1YWxseSBuYW1lZAogICAgc29tZXRoaW5nIHN0YXJ0aW5n IHdpdGggX18gYW5kIHRoZSBub3JtYWwgbmFtZSBpcyBhbiBhbGlhcy4gICovCiNpZiBkZWZpbmVk IChfX3N0dWJfc3RhdHZmczY0KSB8fCBkZWZpbmVkIChfX3N0dWJfX19zdGF0dmZzNjQpCmNob2tl IG1lCiNlbHNlCnN0YXR2ZnM2NCgpOwojZW5kaWYKCjsgcmV0dXJuIDA7IH0KY29uZmlndXJlOjEz MDExOiBjaGVja2luZyBmb3Igc3RhdHZmcwpjb25maWd1cmU6MTMwMTE6IGNoZWNraW5nIGZvciBz dGF0ZnM2NApjb25maWd1cmU6MTMwMzk6IC91c3IvYmluL2NsYW5nIC1vIGNvbmZ0ZXN0IC1PMiAt cGlwZSAtZm5vLXN0cmljdC1hbGlhc2luZyAtc3RkPWdudTk5IC1mZ251ODktaW5saW5lIC1mbm8t c3RyaWN0LWFsaWFzaW5nIC1mZnVuY3Rpb24tc2VjdGlvbnMgLWZkYXRhLXNlY3Rpb25zIC1RdW51 c2VkLWFyZ3VtZW50cyAtaXN5c3RlbS91c3IvbG9jYWwvaW5jbHVkZSAgLUkvdXNyL2xvY2FsL2lu Y2x1ZGUgLXB0aHJlYWQgIC1ML3Vzci9sb2NhbC9saWIgLVdsLC16LG9yaWdpbiAtV2wsLXJwYXRo LFwkJE9SSUdJTiAtV2wsLXosbm9leGVjc3RhY2sgY29uZnRlc3QuYyAgMT4mNQovdG1wL2NvbmZ0 ZXN0LU05U092UC5vOiBJbiBmdW5jdGlvbiBgbWFpbic6CmNvbmZ0ZXN0LmM6KC50ZXh0Lm1haW4r MHg3KTogdW5kZWZpbmVkIHJlZmVyZW5jZSB0byBgc3RhdGZzNjQnCmNsYW5nOiBlcnJvcjogbGlu a2VyIGNvbW1hbmQgZmFpbGVkIHdpdGggZXhpdCBjb2RlIDEgKHVzZSAtdiB0byBzZWUgaW52b2Nh dGlvbikKY29uZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6CiNsaW5lIDEzMDE2ICJjb25maWd1 cmUiCiNpbmNsdWRlICJjb25mZGVmcy5oIgovKiBTeXN0ZW0gaGVhZGVyIHRvIGRlZmluZSBfX3N0 dWIgbWFjcm9zIGFuZCBob3BlZnVsbHkgZmV3IHByb3RvdHlwZXMsCiAgICB3aGljaCBjYW4gY29u ZmxpY3Qgd2l0aCBjaGFyIHN0YXRmczY0KCk7IGJlbG93LiAgKi8KI2luY2x1ZGUgPGFzc2VydC5o PgovKiBPdmVycmlkZSBhbnkgZ2NjMiBpbnRlcm5hbCBwcm90b3R5cGUgdG8gYXZvaWQgYW4gZXJy b3IuICAqLwovKiBXZSB1c2UgY2hhciBiZWNhdXNlIGludCBtaWdodCBtYXRjaCB0aGUgcmV0dXJu IHR5cGUgb2YgYSBnY2MyCiAgICBidWlsdGluIGFuZCB0aGVuIGl0cyBhcmd1bWVudCBwcm90b3R5 cGUgd291bGQgc3RpbGwgYXBwbHkuICAqLwpjaGFyIHN0YXRmczY0KCk7CgppbnQgbWFpbigpIHsK Ci8qIFRoZSBHTlUgQyBsaWJyYXJ5IGRlZmluZXMgdGhpcyBmb3IgZnVuY3Rpb25zIHdoaWNoIGl0 IGltcGxlbWVudHMKICAgIHRvIGFsd2F5cyBmYWlsIHdpdGggRU5PU1lTLiAgU29tZSBmdW5jdGlv bnMgYXJlIGFjdHVhbGx5IG5hbWVkCiAgICBzb21ldGhpbmcgc3RhcnRpbmcgd2l0aCBfXyBhbmQg dGhlIG5vcm1hbCBuYW1lIGlzIGFuIGFsaWFzLiAgKi8KI2lmIGRlZmluZWQgKF9fc3R1Yl9zdGF0 ZnM2NCkgfHwgZGVmaW5lZCAoX19zdHViX19fc3RhdGZzNjQpCmNob2tlIG1lCiNlbHNlCnN0YXRm czY0KCk7CiNlbmRpZgoKOyByZXR1cm4gMDsgfQpjb25maWd1cmU6MTMwMTE6IGNoZWNraW5nIGZv ciBzdGF0ZnMKY29uZmlndXJlOjEzMDY5OiBjaGVja2luZyBmb3IgZmxvY2tmaWxlCmNvbmZpZ3Vy ZToxMzA5NzogL3Vzci9iaW4vY2xhbmcgLW8gY29uZnRlc3QgLU8yIC1waXBlIC1mbm8tc3RyaWN0 LWFsaWFzaW5nIC1zdGQ9Z251OTkgLWZnbnU4OS1pbmxpbmUgLWZuby1zdHJpY3QtYWxpYXNpbmcg LWZmdW5jdGlvbi1zZWN0aW9ucyAtZmRhdGEtc2VjdGlvbnMgLVF1bnVzZWQtYXJndW1lbnRzIC1p c3lzdGVtL3Vzci9sb2NhbC9pbmNsdWRlICAtSS91c3IvbG9jYWwvaW5jbHVkZSAtcHRocmVhZCAg LUwvdXNyL2xvY2FsL2xpYiAtV2wsLXosb3JpZ2luIC1XbCwtcnBhdGgsXCQkT1JJR0lOIC1XbCwt eixub2V4ZWNzdGFjayBjb25mdGVzdC5jICAxPiY1CmNvbmZpZ3VyZToxMzA2OTogY2hlY2tpbmcg Zm9yIGdldHBhZ2VzaXplCmNvbmZpZ3VyZToxMzEyNzogY2hlY2tpbmcgZm9yIGxvY2FsdGltZV9y CmNvbmZpZ3VyZToxMzE1NTogL3Vzci9iaW4vY2xhbmcgLW8gY29uZnRlc3QgLU8yIC1waXBlIC1m bm8tc3RyaWN0LWFsaWFzaW5nIC1zdGQ9Z251OTkgLWZnbnU4OS1pbmxpbmUgLWZuby1zdHJpY3Qt YWxpYXNpbmcgLWZmdW5jdGlvbi1zZWN0aW9ucyAtZmRhdGEtc2VjdGlvbnMgLVF1bnVzZWQtYXJn dW1lbnRzIC1pc3lzdGVtL3Vzci9sb2NhbC9pbmNsdWRlICAtSS91c3IvbG9jYWwvaW5jbHVkZSAt cHRocmVhZCAgLUwvdXNyL2xvY2FsL2xpYiAtV2wsLXosb3JpZ2luIC1XbCwtcnBhdGgsXCQkT1JJ R0lOIC1XbCwteixub2V4ZWNzdGFjayBjb25mdGVzdC5jICAxPiY1CmNvbmZpZ3VyZToxMzEyNzog Y2hlY2tpbmcgZm9yIHN0cnRva19yCmNvbmZpZ3VyZToxMzE1NTogL3Vzci9iaW4vY2xhbmcgLW8g Y29uZnRlc3QgLU8yIC1waXBlIC1mbm8tc3RyaWN0LWFsaWFzaW5nIC1zdGQ9Z251OTkgLWZnbnU4 OS1pbmxpbmUgLWZuby1zdHJpY3QtYWxpYXNpbmcgLWZmdW5jdGlvbi1zZWN0aW9ucyAtZmRhdGEt c2VjdGlvbnMgLVF1bnVzZWQtYXJndW1lbnRzIC1pc3lzdGVtL3Vzci9sb2NhbC9pbmNsdWRlICAt SS91c3IvbG9jYWwvaW5jbHVkZSAtcHRocmVhZCAgLUwvdXNyL2xvY2FsL2xpYiAtV2wsLXosb3Jp Z2luIC1XbCwtcnBhdGgsXCQkT1JJR0lOIC1XbCwteixub2V4ZWNzdGFjayBjb25mdGVzdC5jICAx PiY1CmNvbmZpZ3VyZToxMzE4NDogY2hlY2tpbmcgZm9yIGNsb2NrX2dldHRpbWUoQ0xPQ0tfTU9O T1RPTklDKQpjb25maWd1cmU6MTMyMDA6IC91c3IvYmluL2NsYW5nIC1vIGNvbmZ0ZXN0IC1PMiAt cGlwZSAtZm5vLXN0cmljdC1hbGlhc2luZyAtc3RkPWdudTk5IC1mZ251ODktaW5saW5lIC1mbm8t c3RyaWN0LWFsaWFzaW5nIC1mZnVuY3Rpb24tc2VjdGlvbnMgLWZkYXRhLXNlY3Rpb25zIC1RdW51 c2VkLWFyZ3VtZW50cyAtaXN5c3RlbS91c3IvbG9jYWwvaW5jbHVkZSAgLUkvdXNyL2xvY2FsL2lu Y2x1ZGUgLXB0aHJlYWQgIC1ML3Vzci9sb2NhbC9saWIgLVdsLC16LG9yaWdpbiAtV2wsLXJwYXRo LFwkJE9SSUdJTiAtV2wsLXosbm9leGVjc3RhY2sgY29uZnRlc3QuYyAgIDE+JjUKY29uZmlndXJl OjEzMjQxOiBjaGVja2luZyBmb3Igd2NydG9tYgpjb25maWd1cmU6MTMyNTM6IC91c3IvYmluL2Ns YW5nKysgLW8gY29uZnRlc3QgLU8yIC1waXBlIC1mbm8tc3RyaWN0LWFsaWFzaW5nIC1mbm8tZXhj ZXB0aW9ucyAtZm5vLXN0cmljdC1hbGlhc2luZyAtZm5vLXJ0dGkgLWZmdW5jdGlvbi1zZWN0aW9u cyAtZmRhdGEtc2VjdGlvbnMgLWZuby1leGNlcHRpb25zIC1zdGQ9Z251KysweCAtUXVudXNlZC1h cmd1bWVudHMgLWlzeXN0ZW0vdXNyL2xvY2FsL2luY2x1ZGUgIC1JL3Vzci9sb2NhbC9pbmNsdWRl IC1wdGhyZWFkICAtTC91c3IvbG9jYWwvbGliIC1XbCwteixvcmlnaW4gLVdsLC1ycGF0aCxcJCRP UklHSU4gLVdsLC16LG5vZXhlY3N0YWNrIGNvbmZ0ZXN0LkMgIDE+JjUKY29uZmlndXJlOjEzMjc2 OiBjaGVja2luZyBmb3IgbWJydG93Ywpjb25maWd1cmU6MTMyODg6IC91c3IvYmluL2NsYW5nKysg LW8gY29uZnRlc3QgLU8yIC1waXBlIC1mbm8tc3RyaWN0LWFsaWFzaW5nIC1mbm8tZXhjZXB0aW9u cyAtZm5vLXN0cmljdC1hbGlhc2luZyAtZm5vLXJ0dGkgLWZmdW5jdGlvbi1zZWN0aW9ucyAtZmRh dGEtc2VjdGlvbnMgLWZuby1leGNlcHRpb25zIC1zdGQ9Z251KysweCAtUXVudXNlZC1hcmd1bWVu dHMgLWlzeXN0ZW0vdXNyL2xvY2FsL2luY2x1ZGUgIC1JL3Vzci9sb2NhbC9pbmNsdWRlIC1wdGhy ZWFkICAtTC91c3IvbG9jYWwvbGliIC1XbCwteixvcmlnaW4gLVdsLC1ycGF0aCxcJCRPUklHSU4g LVdsLC16LG5vZXhlY3N0YWNrIGNvbmZ0ZXN0LkMgIDE+JjUKY29uZmlndXJlOjEzMzIwOiBjaGVj a2luZyBmb3IgcmVzX25pbml0KCkKY29uZmlndXJlOjEzMzQyOiAvdXNyL2Jpbi9jbGFuZyAtbyBj b25mdGVzdCAtTzIgLXBpcGUgLWZuby1zdHJpY3QtYWxpYXNpbmcgLXN0ZD1nbnU5OSAtZmdudTg5 LWlubGluZSAtZm5vLXN0cmljdC1hbGlhc2luZyAtZmZ1bmN0aW9uLXNlY3Rpb25zIC1mZGF0YS1z ZWN0aW9ucyAtUXVudXNlZC1hcmd1bWVudHMgLWlzeXN0ZW0vdXNyL2xvY2FsL2luY2x1ZGUgIC1J L3Vzci9sb2NhbC9pbmNsdWRlIC1wdGhyZWFkICAtTC91c3IvbG9jYWwvbGliIC1XbCwteixvcmln aW4gLVdsLC1ycGF0aCxcJCRPUklHSU4gLVdsLC16LG5vZXhlY3N0YWNrIGNvbmZ0ZXN0LmMgIDE+ JjUKY29uZmlndXJlOjEzMzc3OiBjaGVja2luZyBmb3IgZ251X2dldF9saWJjX3ZlcnNpb24oKQpj b25maWd1cmU6MTMzOTM6IC91c3IvYmluL2NsYW5nKysgLW8gY29uZnRlc3QgLU8yIC1waXBlIC1m bm8tc3RyaWN0LWFsaWFzaW5nIC1mbm8tZXhjZXB0aW9ucyAtZm5vLXN0cmljdC1hbGlhc2luZyAt Zm5vLXJ0dGkgLWZmdW5jdGlvbi1zZWN0aW9ucyAtZmRhdGEtc2VjdGlvbnMgLWZuby1leGNlcHRp b25zIC1zdGQ9Z251KysweCAtUXVudXNlZC1hcmd1bWVudHMgLWlzeXN0ZW0vdXNyL2xvY2FsL2lu Y2x1ZGUgIC1JL3Vzci9sb2NhbC9pbmNsdWRlIC1wdGhyZWFkICAtTC91c3IvbG9jYWwvbGliIC1X bCwteixvcmlnaW4gLVdsLC1ycGF0aCxcJCRPUklHSU4gLVdsLC16LG5vZXhlY3N0YWNrIGNvbmZ0 ZXN0LkMgIDE+JjUKY29uZmlndXJlOjEzMzg5OjI5OiBlcnJvcjogdXNlIG9mIHVuZGVjbGFyZWQg aWRlbnRpZmllciAnZ251X2dldF9saWJjX3ZlcnNpb24nCmNvbnN0IGNoYXIgKmdsaWJjX3ZlcnNp b24gPSBnbnVfZ2V0X2xpYmNfdmVyc2lvbigpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAg XgoxIGVycm9yIGdlbmVyYXRlZC4KY29uZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6CiNsaW5l IDEzMzgyICJjb25maWd1cmUiCiNpbmNsdWRlICJjb25mZGVmcy5oIgoKICAgICAgICAjaWZkZWYg SEFWRV9HTlVfTElCQ19WRVJTSU9OX0gKICAgICAgICAjaW5jbHVkZSA8Z251L2xpYmMtdmVyc2lv bi5oPgogICAgICAgICNlbmRpZgogICAgICAgIAppbnQgbWFpbigpIHsKY29uc3QgY2hhciAqZ2xp YmNfdmVyc2lvbiA9IGdudV9nZXRfbGliY192ZXJzaW9uKCk7CjsgcmV0dXJuIDA7IH0KY29uZmln dXJlOjEzNDI1OiBjaGVja2luZyBmb3IgaWNvbnYgaW4gLWxjCmNvbmZpZ3VyZToxMzQ0NzogL3Vz ci9iaW4vY2xhbmcrKyAtbyBjb25mdGVzdCAtTzIgLXBpcGUgLWZuby1zdHJpY3QtYWxpYXNpbmcg LWZuby1leGNlcHRpb25zIC1mbm8tc3RyaWN0LWFsaWFzaW5nIC1mbm8tcnR0aSAtZmZ1bmN0aW9u LXNlY3Rpb25zIC1mZGF0YS1zZWN0aW9ucyAtZm5vLWV4Y2VwdGlvbnMgLXN0ZD1nbnUrKzB4IC1R dW51c2VkLWFyZ3VtZW50cyAtaXN5c3RlbS91c3IvbG9jYWwvaW5jbHVkZSAgLUkvdXNyL2xvY2Fs L2luY2x1ZGUgLXB0aHJlYWQgIC1ML3Vzci9sb2NhbC9saWIgLVdsLC16LG9yaWdpbiAtV2wsLXJw YXRoLFwkJE9SSUdJTiAtV2wsLXosbm9leGVjc3RhY2sgY29uZnRlc3QuQyAtbGMgICAxPiY1Ci90 bXAvY29uZnRlc3QtSElkV2ZCLm86IEluIGZ1bmN0aW9uIGBtYWluJzoKY29uZnRlc3QuQzooLnRl eHQubWFpbisweDcpOiB1bmRlZmluZWQgcmVmZXJlbmNlIHRvIGBpY29udicKY2xhbmcrKzogZXJy b3I6IGxpbmtlciBjb21tYW5kIGZhaWxlZCB3aXRoIGV4aXQgY29kZSAxICh1c2UgLXYgdG8gc2Vl IGludm9jYXRpb24pCmNvbmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2FzOgojbGluZSAxMzQzMyAi Y29uZmlndXJlIgojaW5jbHVkZSAiY29uZmRlZnMuaCIKLyogT3ZlcnJpZGUgYW55IGdjYzIgaW50 ZXJuYWwgcHJvdG90eXBlIHRvIGF2b2lkIGFuIGVycm9yLiAgKi8KI2lmZGVmIF9fY3BsdXNwbHVz CmV4dGVybiAiQyIKI2VuZGlmCi8qIFdlIHVzZSBjaGFyIGJlY2F1c2UgaW50IG1pZ2h0IG1hdGNo IHRoZSByZXR1cm4gdHlwZSBvZiBhIGdjYzIKICAgIGJ1aWx0aW4gYW5kIHRoZW4gaXRzIGFyZ3Vt ZW50IHByb3RvdHlwZSB3b3VsZCBzdGlsbCBhcHBseS4gICovCmNoYXIgaWNvbnYoKTsKCmludCBt YWluKCkgewppY29udigpCjsgcmV0dXJuIDA7IH0KY29uZmlndXJlOjEzNDY2OiBjaGVja2luZyBm b3IgaWNvbnYgaW4gLWxpY29udgpjb25maWd1cmU6MTM0ODg6IC91c3IvYmluL2NsYW5nKysgLW8g Y29uZnRlc3QgLU8yIC1waXBlIC1mbm8tc3RyaWN0LWFsaWFzaW5nIC1mbm8tZXhjZXB0aW9ucyAt Zm5vLXN0cmljdC1hbGlhc2luZyAtZm5vLXJ0dGkgLWZmdW5jdGlvbi1zZWN0aW9ucyAtZmRhdGEt c2VjdGlvbnMgLWZuby1leGNlcHRpb25zIC1zdGQ9Z251KysweCAtUXVudXNlZC1hcmd1bWVudHMg LWlzeXN0ZW0vdXNyL2xvY2FsL2luY2x1ZGUgIC1JL3Vzci9sb2NhbC9pbmNsdWRlIC1wdGhyZWFk ICAtTC91c3IvbG9jYWwvbGliIC1XbCwteixvcmlnaW4gLVdsLC1ycGF0aCxcJCRPUklHSU4gLVds LC16LG5vZXhlY3N0YWNrIGNvbmZ0ZXN0LkMgLWxpY29udiAgIDE+JjUKY29uZmlndXJlOjEzNTU2 OiBjaGVja2luZyBmb3IgaWNvbnYoKQpjb25maWd1cmU6MTM1NzU6IC91c3IvYmluL2NsYW5nKysg LW8gY29uZnRlc3QgLU8yIC1waXBlIC1mbm8tc3RyaWN0LWFsaWFzaW5nIC1mbm8tZXhjZXB0aW9u cyAtZm5vLXN0cmljdC1hbGlhc2luZyAtZm5vLXJ0dGkgLWZmdW5jdGlvbi1zZWN0aW9ucyAtZmRh dGEtc2VjdGlvbnMgLWZuby1leGNlcHRpb25zIC1zdGQ9Z251KysweCAtUXVudXNlZC1hcmd1bWVu dHMgLWlzeXN0ZW0vdXNyL2xvY2FsL2luY2x1ZGUgIC1JL3Vzci9sb2NhbC9pbmNsdWRlIC1wdGhy ZWFkICAtTC91c3IvbG9jYWwvbGliIC1XbCwteixvcmlnaW4gLVdsLC1ycGF0aCxcJCRPUklHSU4g LVdsLC16LG5vZXhlY3N0YWNrIGNvbmZ0ZXN0LkMgICAtbGljb252IDE+JjUKY29uZmlndXJlOjEz NjAyOiBjaGVja2luZyBmb3IgaWNvbnYoKSB3aXRoIGNvbnN0IGlucHV0CmNvbmZpZ3VyZToxMzYy MjogL3Vzci9iaW4vY2xhbmcrKyAtYyAtTzIgLXBpcGUgLWZuby1zdHJpY3QtYWxpYXNpbmcgLWZu by1leGNlcHRpb25zIC1mbm8tc3RyaWN0LWFsaWFzaW5nIC1mbm8tcnR0aSAtZmZ1bmN0aW9uLXNl Y3Rpb25zIC1mZGF0YS1zZWN0aW9ucyAtZm5vLWV4Y2VwdGlvbnMgLXN0ZD1nbnUrKzB4IC1RdW51 c2VkLWFyZ3VtZW50cyAtaXN5c3RlbS91c3IvbG9jYWwvaW5jbHVkZSAgLUkvdXNyL2xvY2FsL2lu Y2x1ZGUgY29uZnRlc3QuQyAxPiY1CmNvbmZpZ3VyZToxMzY1NDogY2hlY2tpbmcgZm9yIG5sX2xh bmdpbmZvIGFuZCBDT0RFU0VUCmNvbmZpZ3VyZToxMzY2NjogL3Vzci9iaW4vY2xhbmcrKyAtbyBj b25mdGVzdCAtTzIgLXBpcGUgLWZuby1zdHJpY3QtYWxpYXNpbmcgLWZuby1leGNlcHRpb25zIC1m bm8tc3RyaWN0LWFsaWFzaW5nIC1mbm8tcnR0aSAtZmZ1bmN0aW9uLXNlY3Rpb25zIC1mZGF0YS1z ZWN0aW9ucyAtZm5vLWV4Y2VwdGlvbnMgLXN0ZD1nbnUrKzB4IC1RdW51c2VkLWFyZ3VtZW50cyAt aXN5c3RlbS91c3IvbG9jYWwvaW5jbHVkZSAgLUkvdXNyL2xvY2FsL2luY2x1ZGUgLXB0aHJlYWQg IC1ML3Vzci9sb2NhbC9saWIgLVdsLC16LG9yaWdpbiAtV2wsLXJwYXRoLFwkJE9SSUdJTiAtV2ws LXosbm9leGVjc3RhY2sgY29uZnRlc3QuQyAgMT4mNQpjb25maWd1cmU6MTM3MDE6IGNoZWNraW5n IGZvciBhbiBpbXBsZW1lbnRhdGlvbiBvZiB2YV9jb3B5KCkKY29uZmlndXJlOjEzNzI1OiAvdXNy L2Jpbi9jbGFuZyAtbyBjb25mdGVzdCAtTzIgLXBpcGUgLWZuby1zdHJpY3QtYWxpYXNpbmcgLXN0 ZD1nbnU5OSAtZmdudTg5LWlubGluZSAtZm5vLXN0cmljdC1hbGlhc2luZyAtZmZ1bmN0aW9uLXNl Y3Rpb25zIC1mZGF0YS1zZWN0aW9ucyAtUXVudXNlZC1hcmd1bWVudHMgLWlzeXN0ZW0vdXNyL2xv Y2FsL2luY2x1ZGUgIC1JL3Vzci9sb2NhbC9pbmNsdWRlIC1wdGhyZWFkICAtTC91c3IvbG9jYWwv bGliIC1XbCwteixvcmlnaW4gLVdsLC1ycGF0aCxcJCRPUklHSU4gLVdsLC16LG5vZXhlY3N0YWNr IGNvbmZ0ZXN0LmMgIDE+JjUKY29uZmlndXJlOjEzNzE5OjE3OiB3YXJuaW5nOiBpbXBsaWNpdGx5 IGRlY2xhcmluZyBsaWJyYXJ5IGZ1bmN0aW9uICdleGl0JyB3aXRoIHR5cGUgJ3ZvaWQgKGludCkg X19hdHRyaWJ1dGVfXygobm9yZXR1cm4pKScKICAgICAgICAgICAgICAgIGV4aXQgKDEpOwogICAg ICAgICAgICAgICAgXgpjb25maWd1cmU6MTM3MTk6MTc6IG5vdGU6IHBsZWFzZSBpbmNsdWRlIHRo ZSBoZWFkZXIgPHN0ZGxpYi5oPiBvciBleHBsaWNpdGx5IHByb3ZpZGUgYSBkZWNsYXJhdGlvbiBm b3IgJ2V4aXQnCjEgd2FybmluZyBnZW5lcmF0ZWQuCmNvbmZpZ3VyZToxMzc0MjogY2hlY2tpbmcg Zm9yIGFuIGltcGxlbWVudGF0aW9uIG9mIF9fdmFfY29weSgpCmNvbmZpZ3VyZToxMzc2NjogL3Vz ci9iaW4vY2xhbmcgLW8gY29uZnRlc3QgLU8yIC1waXBlIC1mbm8tc3RyaWN0LWFsaWFzaW5nIC1z dGQ9Z251OTkgLWZnbnU4OS1pbmxpbmUgLWZuby1zdHJpY3QtYWxpYXNpbmcgLWZmdW5jdGlvbi1z ZWN0aW9ucyAtZmRhdGEtc2VjdGlvbnMgLVF1bnVzZWQtYXJndW1lbnRzIC1pc3lzdGVtL3Vzci9s b2NhbC9pbmNsdWRlICAtSS91c3IvbG9jYWwvaW5jbHVkZSAtcHRocmVhZCAgLUwvdXNyL2xvY2Fs L2xpYiAtV2wsLXosb3JpZ2luIC1XbCwtcnBhdGgsXCQkT1JJR0lOIC1XbCwteixub2V4ZWNzdGFj ayBjb25mdGVzdC5jICAxPiY1CmNvbmZpZ3VyZToxMzc1ODoxMzogd2FybmluZzogaW1wbGljaXQg ZGVjbGFyYXRpb24gb2YgZnVuY3Rpb24gJ19fdmFfY29weScgaXMgaW52YWxpZCBpbiBDOTkgWy1X aW1wbGljaXQtZnVuY3Rpb24tZGVjbGFyYXRpb25dCiAgICAgICAgICAgIF9fdmFfY29weSAoYXJn czIsIGFyZ3MxKTsKICAgICAgICAgICAgXgpjb25maWd1cmU6MTM3NjA6MTc6IHdhcm5pbmc6IGlt cGxpY2l0bHkgZGVjbGFyaW5nIGxpYnJhcnkgZnVuY3Rpb24gJ2V4aXQnIHdpdGggdHlwZSAndm9p ZCAoaW50KSBfX2F0dHJpYnV0ZV9fKChub3JldHVybikpJwogICAgICAgICAgICAgICAgZXhpdCAo MSk7CiAgICAgICAgICAgICAgICBeCmNvbmZpZ3VyZToxMzc2MDoxNzogbm90ZTogcGxlYXNlIGlu Y2x1ZGUgdGhlIGhlYWRlciA8c3RkbGliLmg+IG9yIGV4cGxpY2l0bHkgcHJvdmlkZSBhIGRlY2xh cmF0aW9uIGZvciAnZXhpdCcKMiB3YXJuaW5ncyBnZW5lcmF0ZWQuCi90bXAvY29uZnRlc3QtVE9k dXY1Lm86IEluIGZ1bmN0aW9uIGBmJzoKY29uZnRlc3QuYzooLnRleHQuZisweDExKTogdW5kZWZp bmVkIHJlZmVyZW5jZSB0byBgX192YV9jb3B5JwpjbGFuZzogZXJyb3I6IGxpbmtlciBjb21tYW5k IGZhaWxlZCB3aXRoIGV4aXQgY29kZSAxICh1c2UgLXYgdG8gc2VlIGludm9jYXRpb24pCmNvbmZp Z3VyZTogZmFpbGVkIHByb2dyYW0gd2FzOgojbGluZSAxMzc1MiAiY29uZmlndXJlIgojaW5jbHVk ZSAiY29uZmRlZnMuaCIKCiAgICAgICAgI2luY2x1ZGUgPHN0ZGFyZy5oPgogICAgICAgIHZvaWQg ZiAoaW50IGksIC4uLikgewogICAgICAgICAgICB2YV9saXN0IGFyZ3MxLCBhcmdzMjsKICAgICAg ICAgICAgdmFfc3RhcnQgKGFyZ3MxLCBpKTsKICAgICAgICAgICAgX192YV9jb3B5IChhcmdzMiwg YXJnczEpOwogICAgICAgICAgICBpZiAodmFfYXJnIChhcmdzMiwgaW50KSAhPSA0MiB8fCB2YV9h cmcgKGFyZ3MxLCBpbnQpICE9IDQyKQogICAgICAgICAgICAgICAgZXhpdCAoMSk7CiAgICAgICAg ICAgIHZhX2VuZCAoYXJnczEpOyB2YV9lbmQgKGFyZ3MyKTsKICAgICAgICB9CiAgICAgICAgaW50 IG1haW4oKSB7IGYgKDAsIDQyKTsgcmV0dXJuIDA7IH0KY29uZmlndXJlOjEzNzgzOiBjaGVja2lu ZyB3aGV0aGVyIHZhX2xpc3RzIGNhbiBiZSBjb3BpZWQgYnkgdmFsdWUKY29uZmlndXJlOjEzODA3 OiAvdXNyL2Jpbi9jbGFuZyAtbyBjb25mdGVzdCAtTzIgLXBpcGUgLWZuby1zdHJpY3QtYWxpYXNp bmcgLXN0ZD1nbnU5OSAtZmdudTg5LWlubGluZSAtZm5vLXN0cmljdC1hbGlhc2luZyAtZmZ1bmN0 aW9uLXNlY3Rpb25zIC1mZGF0YS1zZWN0aW9ucyAtUXVudXNlZC1hcmd1bWVudHMgLWlzeXN0ZW0v dXNyL2xvY2FsL2luY2x1ZGUgIC1JL3Vzci9sb2NhbC9pbmNsdWRlIC1wdGhyZWFkICAtTC91c3Iv bG9jYWwvbGliIC1XbCwteixvcmlnaW4gLVdsLC1ycGF0aCxcJCRPUklHSU4gLVdsLC16LG5vZXhl Y3N0YWNrIGNvbmZ0ZXN0LmMgIDE+JjUKY29uZmlndXJlOjEzODAxOjE3OiB3YXJuaW5nOiBpbXBs aWNpdGx5IGRlY2xhcmluZyBsaWJyYXJ5IGZ1bmN0aW9uICdleGl0JyB3aXRoIHR5cGUgJ3ZvaWQg KGludCkgX19hdHRyaWJ1dGVfXygobm9yZXR1cm4pKScKICAgICAgICAgICAgICAgIGV4aXQgKDEp OwogICAgICAgICAgICAgICAgXgpjb25maWd1cmU6MTM4MDE6MTc6IG5vdGU6IHBsZWFzZSBpbmNs dWRlIHRoZSBoZWFkZXIgPHN0ZGxpYi5oPiBvciBleHBsaWNpdGx5IHByb3ZpZGUgYSBkZWNsYXJh dGlvbiBmb3IgJ2V4aXQnCjEgd2FybmluZyBnZW5lcmF0ZWQuCmNvbmZpZ3VyZToxMzkyMDogY2hl Y2tpbmcgd2hldGhlciB0aGUgQysrICJ1c2luZyIga2V5d29yZCByZXNvbHZlcyBhbWJpZ3VpdHkK Y29uZmlndXJlOjEzOTQxOiAvdXNyL2Jpbi9jbGFuZysrIC1jIC1PMiAtcGlwZSAtZm5vLXN0cmlj dC1hbGlhc2luZyAtZm5vLWV4Y2VwdGlvbnMgLWZuby1zdHJpY3QtYWxpYXNpbmcgLWZuby1ydHRp IC1mZnVuY3Rpb24tc2VjdGlvbnMgLWZkYXRhLXNlY3Rpb25zIC1mbm8tZXhjZXB0aW9ucyAtc3Rk PWdudSsrMHggLVF1bnVzZWQtYXJndW1lbnRzIC1pc3lzdGVtL3Vzci9sb2NhbC9pbmNsdWRlICAt SS91c3IvbG9jYWwvaW5jbHVkZSBjb25mdGVzdC5DIDE+JjUKY29uZmlndXJlOjEzOTY1OiBjaGVj a2luZyBmb3IgQysrIGR5bmFtaWNfY2FzdCB0byB2b2lkKgpjb25maWd1cmU6MTM5OTI6IC91c3Iv YmluL2NsYW5nKysgLW8gY29uZnRlc3QgLU8yIC1waXBlIC1mbm8tc3RyaWN0LWFsaWFzaW5nIC1m bm8tZXhjZXB0aW9ucyAtZm5vLXN0cmljdC1hbGlhc2luZyAtZm5vLXJ0dGkgLWZmdW5jdGlvbi1z ZWN0aW9ucyAtZmRhdGEtc2VjdGlvbnMgLWZuby1leGNlcHRpb25zIC1zdGQ9Z251KysweCAtUXVu dXNlZC1hcmd1bWVudHMgLWlzeXN0ZW0vdXNyL2xvY2FsL2luY2x1ZGUgIC1JL3Vzci9sb2NhbC9p bmNsdWRlIC1wdGhyZWFkICAtTC91c3IvbG9jYWwvbGliIC1XbCwteixvcmlnaW4gLVdsLC1ycGF0 aCxcJCRPUklHSU4gLVdsLC16LG5vZXhlY3N0YWNrIGNvbmZ0ZXN0LkMgIDE+JjUKY29uZmlndXJl OjE0MDE5OiBjaGVja2luZyB3aGV0aGVyIEMrKyByZXF1aXJlcyBpbXBsZW1lbnRhdGlvbiBvZiB1 bnVzZWQgdmlydHVhbCBtZXRob2RzCmNvbmZpZ3VyZToxNDAzMTogL3Vzci9iaW4vY2xhbmcrKyAt byBjb25mdGVzdCAtTzIgLXBpcGUgLWZuby1zdHJpY3QtYWxpYXNpbmcgLWZuby1leGNlcHRpb25z IC1mbm8tc3RyaWN0LWFsaWFzaW5nIC1mbm8tcnR0aSAtZmZ1bmN0aW9uLXNlY3Rpb25zIC1mZGF0 YS1zZWN0aW9ucyAtZm5vLWV4Y2VwdGlvbnMgLXN0ZD1nbnUrKzB4IC1RdW51c2VkLWFyZ3VtZW50 cyAtaXN5c3RlbS91c3IvbG9jYWwvaW5jbHVkZSAgLUkvdXNyL2xvY2FsL2luY2x1ZGUgLXB0aHJl YWQgIC1ML3Vzci9sb2NhbC9saWIgLVdsLC16LG9yaWdpbiAtV2wsLXJwYXRoLFwkJE9SSUdJTiAt V2wsLXosbm9leGVjc3RhY2sgY29uZnRlc3QuQyAgMT4mNQpjb25maWd1cmU6MTQwNTc6IGNoZWNr aW5nIGZvciB0cm91YmxlIGNvbXBhcmluZyB0byB6ZXJvIG5lYXIgc3RkOjpvcGVyYXRvciE9KCkK Y29uZmlndXJlOjE0MDczOiAvdXNyL2Jpbi9jbGFuZysrIC1jIC1PMiAtcGlwZSAtZm5vLXN0cmlj dC1hbGlhc2luZyAtZm5vLWV4Y2VwdGlvbnMgLWZuby1zdHJpY3QtYWxpYXNpbmcgLWZuby1ydHRp IC1mZnVuY3Rpb24tc2VjdGlvbnMgLWZkYXRhLXNlY3Rpb25zIC1mbm8tZXhjZXB0aW9ucyAtc3Rk PWdudSsrMHggLVF1bnVzZWQtYXJndW1lbnRzIC1pc3lzdGVtL3Vzci9sb2NhbC9pbmNsdWRlICAt SS91c3IvbG9jYWwvaW5jbHVkZSBjb25mdGVzdC5DIDE+JjUKY29uZmlndXJlOjE0MTAzOiBjaGVj a2luZyBmb3IgX190aHJlYWQga2V5d29yZCBmb3IgVExTIHZhcmlhYmxlcwpjb25maWd1cmU6MTQx MTU6IC91c3IvYmluL2NsYW5nKysgLW8gY29uZnRlc3QgLU8yIC1waXBlIC1mbm8tc3RyaWN0LWFs aWFzaW5nIC1mbm8tZXhjZXB0aW9ucyAtZm5vLXN0cmljdC1hbGlhc2luZyAtZm5vLXJ0dGkgLWZm dW5jdGlvbi1zZWN0aW9ucyAtZmRhdGEtc2VjdGlvbnMgLWZuby1leGNlcHRpb25zIC1zdGQ9Z251 KysweCAtUXVudXNlZC1hcmd1bWVudHMgLWlzeXN0ZW0vdXNyL2xvY2FsL2luY2x1ZGUgIC1JL3Vz ci9sb2NhbC9pbmNsdWRlIC1wdGhyZWFkICAtTC91c3IvbG9jYWwvbGliIC1XbCwteixvcmlnaW4g LVdsLC1ycGF0aCxcJCRPUklHSU4gLVdsLC16LG5vZXhlY3N0YWNrIC1mUElDIC1zaGFyZWQgLVds LC16LGRlZnMgIGNvbmZ0ZXN0LkMgIDE+JjUKY29uZmlndXJlOjE0MjAxOiBjaGVja2luZyBmb3Ig bWFsbG9jLmgKY29uZmlndXJlOjE0MjAxOiBjaGVja2luZyBmb3IgbWFsbG9jX25wLmgKY29uZmln dXJlOjE0MjE0OiAvdXNyL2Jpbi9jbGFuZysrIC1jIC1PMiAtcGlwZSAtZm5vLXN0cmljdC1hbGlh c2luZyAtZm5vLWV4Y2VwdGlvbnMgLWZuby1zdHJpY3QtYWxpYXNpbmcgLWZuby1ydHRpIC1mZnVu Y3Rpb24tc2VjdGlvbnMgLWZkYXRhLXNlY3Rpb25zIC1mbm8tZXhjZXB0aW9ucyAtc3RkPWdudSsr MHggLVF1bnVzZWQtYXJndW1lbnRzIC1pc3lzdGVtL3Vzci9sb2NhbC9pbmNsdWRlICAtSS91c3Iv bG9jYWwvaW5jbHVkZSBjb25mdGVzdC5DIDE+JjUKY29uZmlndXJlOjE0MjUwOiBjaGVja2luZyBm b3Igc3RybmR1cApjb25maWd1cmU6MTQyNTA6IGNoZWNraW5nIGZvciBwb3NpeF9tZW1hbGlnbgpj b25maWd1cmU6MTQyODE6IC91c3IvYmluL2NsYW5nKysgLW8gY29uZnRlc3QgLU8yIC1waXBlIC1m bm8tc3RyaWN0LWFsaWFzaW5nIC1mbm8tZXhjZXB0aW9ucyAtZm5vLXN0cmljdC1hbGlhc2luZyAt Zm5vLXJ0dGkgLWZmdW5jdGlvbi1zZWN0aW9ucyAtZmRhdGEtc2VjdGlvbnMgLWZuby1leGNlcHRp b25zIC1zdGQ9Z251KysweCAtUXVudXNlZC1hcmd1bWVudHMgLWlzeXN0ZW0vdXNyL2xvY2FsL2lu Y2x1ZGUgIC1JL3Vzci9sb2NhbC9pbmNsdWRlIC1wdGhyZWFkICAtTC91c3IvbG9jYWwvbGliIC1X bCwteixvcmlnaW4gLVdsLC1ycGF0aCxcJCRPUklHSU4gLVdsLC16LG5vZXhlY3N0YWNrIGNvbmZ0 ZXN0LkMgIDE+JjUKY29uZmlndXJlOjE0MjUwOiBjaGVja2luZyBmb3IgbWVtYWxpZ24KY29uZmln dXJlOjE0MjgxOiAvdXNyL2Jpbi9jbGFuZysrIC1vIGNvbmZ0ZXN0IC1PMiAtcGlwZSAtZm5vLXN0 cmljdC1hbGlhc2luZyAtZm5vLWV4Y2VwdGlvbnMgLWZuby1zdHJpY3QtYWxpYXNpbmcgLWZuby1y dHRpIC1mZnVuY3Rpb24tc2VjdGlvbnMgLWZkYXRhLXNlY3Rpb25zIC1mbm8tZXhjZXB0aW9ucyAt c3RkPWdudSsrMHggLVF1bnVzZWQtYXJndW1lbnRzIC1pc3lzdGVtL3Vzci9sb2NhbC9pbmNsdWRl ICAtSS91c3IvbG9jYWwvaW5jbHVkZSAtcHRocmVhZCAgLUwvdXNyL2xvY2FsL2xpYiAtV2wsLXos b3JpZ2luIC1XbCwtcnBhdGgsXCQkT1JJR0lOIC1XbCwteixub2V4ZWNzdGFjayBjb25mdGVzdC5D ICAxPiY1Ci90bXAvY29uZnRlc3QtOTNxMmZYLm86IEluIGZ1bmN0aW9uIGBtYWluJzoKY29uZnRl c3QuQzooLnRleHQubWFpbisweDcpOiB1bmRlZmluZWQgcmVmZXJlbmNlIHRvIGBtZW1hbGlnbicK Y2xhbmcrKzogZXJyb3I6IGxpbmtlciBjb21tYW5kIGZhaWxlZCB3aXRoIGV4aXQgY29kZSAxICh1 c2UgLXYgdG8gc2VlIGludm9jYXRpb24pCmNvbmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2FzOgoj bGluZSAxNDI1NSAiY29uZmlndXJlIgojaW5jbHVkZSAiY29uZmRlZnMuaCIKLyogU3lzdGVtIGhl YWRlciB0byBkZWZpbmUgX19zdHViIG1hY3JvcyBhbmQgaG9wZWZ1bGx5IGZldyBwcm90b3R5cGVz LAogICAgd2hpY2ggY2FuIGNvbmZsaWN0IHdpdGggY2hhciBtZW1hbGlnbigpOyBiZWxvdy4gICov CiNpbmNsdWRlIDxhc3NlcnQuaD4KLyogT3ZlcnJpZGUgYW55IGdjYzIgaW50ZXJuYWwgcHJvdG90 eXBlIHRvIGF2b2lkIGFuIGVycm9yLiAgKi8KI2lmZGVmIF9fY3BsdXNwbHVzCmV4dGVybiAiQyIK I2VuZGlmCi8qIFdlIHVzZSBjaGFyIGJlY2F1c2UgaW50IG1pZ2h0IG1hdGNoIHRoZSByZXR1cm4g dHlwZSBvZiBhIGdjYzIKICAgIGJ1aWx0aW4gYW5kIHRoZW4gaXRzIGFyZ3VtZW50IHByb3RvdHlw ZSB3b3VsZCBzdGlsbCBhcHBseS4gICovCmNoYXIgbWVtYWxpZ24oKTsKCmludCBtYWluKCkgewoK LyogVGhlIEdOVSBDIGxpYnJhcnkgZGVmaW5lcyB0aGlzIGZvciBmdW5jdGlvbnMgd2hpY2ggaXQg aW1wbGVtZW50cwogICAgdG8gYWx3YXlzIGZhaWwgd2l0aCBFTk9TWVMuICBTb21lIGZ1bmN0aW9u cyBhcmUgYWN0dWFsbHkgbmFtZWQKICAgIHNvbWV0aGluZyBzdGFydGluZyB3aXRoIF9fIGFuZCB0 aGUgbm9ybWFsIG5hbWUgaXMgYW4gYWxpYXMuICAqLwojaWYgZGVmaW5lZCAoX19zdHViX21lbWFs aWduKSB8fCBkZWZpbmVkIChfX3N0dWJfX19tZW1hbGlnbikKY2hva2UgbWUKI2Vsc2UKbWVtYWxp Z24oKTsKI2VuZGlmCgo7IHJldHVybiAwOyB9CmNvbmZpZ3VyZToxNDI1MDogY2hlY2tpbmcgZm9y IHZhbGxvYwpjb25maWd1cmU6MTQyODE6IC91c3IvYmluL2NsYW5nKysgLW8gY29uZnRlc3QgLU8y IC1waXBlIC1mbm8tc3RyaWN0LWFsaWFzaW5nIC1mbm8tZXhjZXB0aW9ucyAtZm5vLXN0cmljdC1h bGlhc2luZyAtZm5vLXJ0dGkgLWZmdW5jdGlvbi1zZWN0aW9ucyAtZmRhdGEtc2VjdGlvbnMgLWZu by1leGNlcHRpb25zIC1zdGQ9Z251KysweCAtUXVudXNlZC1hcmd1bWVudHMgLWlzeXN0ZW0vdXNy L2xvY2FsL2luY2x1ZGUgIC1JL3Vzci9sb2NhbC9pbmNsdWRlIC1wdGhyZWFkICAtTC91c3IvbG9j YWwvbGliIC1XbCwteixvcmlnaW4gLVdsLC1ycGF0aCxcJCRPUklHSU4gLVdsLC16LG5vZXhlY3N0 YWNrIGNvbmZ0ZXN0LkMgIDE+JjUKY29uZmlndXJlOjE0MzEyOiBjaGVja2luZyBmb3IgbWFsbG9j X3VzYWJsZV9zaXplCmNvbmZpZ3VyZToxNDM0MzogL3Vzci9iaW4vY2xhbmcrKyAtbyBjb25mdGVz dCAtTzIgLXBpcGUgLWZuby1zdHJpY3QtYWxpYXNpbmcgLWZuby1leGNlcHRpb25zIC1mbm8tc3Ry aWN0LWFsaWFzaW5nIC1mbm8tcnR0aSAtZmZ1bmN0aW9uLXNlY3Rpb25zIC1mZGF0YS1zZWN0aW9u cyAtZm5vLWV4Y2VwdGlvbnMgLXN0ZD1nbnUrKzB4IC1RdW51c2VkLWFyZ3VtZW50cyAtaXN5c3Rl bS91c3IvbG9jYWwvaW5jbHVkZSAgLUkvdXNyL2xvY2FsL2luY2x1ZGUgLXB0aHJlYWQgIC1ML3Vz ci9sb2NhbC9saWIgLVdsLC16LG9yaWdpbiAtV2wsLXJwYXRoLFwkJE9SSUdJTiAtV2wsLXosbm9l eGVjc3RhY2sgY29uZnRlc3QuQyAgMT4mNQpjb25maWd1cmU6MTQzNzM6IGNoZWNraW5nIGZvciBf X2F0dHJpYnV0ZV9fKChhbHdheXNfaW5saW5lKSkKY29uZmlndXJlOjE0Mzg1OiAvdXNyL2Jpbi9j bGFuZysrIC1jIC1PMiAtcGlwZSAtZm5vLXN0cmljdC1hbGlhc2luZyAtZm5vLWV4Y2VwdGlvbnMg LWZuby1zdHJpY3QtYWxpYXNpbmcgLWZuby1ydHRpIC1mZnVuY3Rpb24tc2VjdGlvbnMgLWZkYXRh LXNlY3Rpb25zIC1mbm8tZXhjZXB0aW9ucyAtc3RkPWdudSsrMHggLVF1bnVzZWQtYXJndW1lbnRz IC1pc3lzdGVtL3Vzci9sb2NhbC9pbmNsdWRlICAtSS91c3IvbG9jYWwvaW5jbHVkZSBjb25mdGVz dC5DIDE+JjUKY29uZmlndXJlOjE0NDAwOiBjaGVja2luZyBmb3IgX19hdHRyaWJ1dGVfXygobWFs bG9jKSkKY29uZmlndXJlOjE0NDEyOiAvdXNyL2Jpbi9jbGFuZysrIC1jIC1PMiAtcGlwZSAtZm5v LXN0cmljdC1hbGlhc2luZyAtZm5vLWV4Y2VwdGlvbnMgLWZuby1zdHJpY3QtYWxpYXNpbmcgLWZu by1ydHRpIC1mZnVuY3Rpb24tc2VjdGlvbnMgLWZkYXRhLXNlY3Rpb25zIC1mbm8tZXhjZXB0aW9u cyAtc3RkPWdudSsrMHggLVF1bnVzZWQtYXJndW1lbnRzIC1pc3lzdGVtL3Vzci9sb2NhbC9pbmNs dWRlICAtSS91c3IvbG9jYWwvaW5jbHVkZSBjb25mdGVzdC5DIDE+JjUKY29uZmlndXJlOjE0NDI3 OiBjaGVja2luZyBmb3IgX19hdHRyaWJ1dGVfXygod2Fybl91bnVzZWRfcmVzdWx0KSkKY29uZmln dXJlOjE0NDM5OiAvdXNyL2Jpbi9jbGFuZysrIC1jIC1PMiAtcGlwZSAtZm5vLXN0cmljdC1hbGlh c2luZyAtZm5vLWV4Y2VwdGlvbnMgLWZuby1zdHJpY3QtYWxpYXNpbmcgLWZuby1ydHRpIC1mZnVu Y3Rpb24tc2VjdGlvbnMgLWZkYXRhLXNlY3Rpb25zIC1mbm8tZXhjZXB0aW9ucyAtc3RkPWdudSsr MHggLVF1bnVzZWQtYXJndW1lbnRzIC1pc3lzdGVtL3Vzci9sb2NhbC9pbmNsdWRlICAtSS91c3Iv bG9jYWwvaW5jbHVkZSBjb25mdGVzdC5DIDE+JjUKY29uZmlndXJlOjE0NDYzOiBjaGVja2luZyBm b3IgTENfTUVTU0FHRVMKY29uZmlndXJlOjE0NDc1OiAvdXNyL2Jpbi9jbGFuZyAtYyAtTzIgLXBp cGUgLWZuby1zdHJpY3QtYWxpYXNpbmcgLXN0ZD1nbnU5OSAtZmdudTg5LWlubGluZSAtZm5vLXN0 cmljdC1hbGlhc2luZyAtZmZ1bmN0aW9uLXNlY3Rpb25zIC1mZGF0YS1zZWN0aW9ucyAtUXVudXNl ZC1hcmd1bWVudHMgLWlzeXN0ZW0vdXNyL2xvY2FsL2luY2x1ZGUgIC1JL3Vzci9sb2NhbC9pbmNs dWRlIGNvbmZ0ZXN0LmMgMT4mNQpjb25maWd1cmU6MTQ1MDE6IGNoZWNraW5nIGZvciBsb2NhbGVj b252CmNvbmZpZ3VyZToxNDUyOTogL3Vzci9iaW4vY2xhbmcgLW8gY29uZnRlc3QgLU8yIC1waXBl IC1mbm8tc3RyaWN0LWFsaWFzaW5nIC1zdGQ9Z251OTkgLWZnbnU4OS1pbmxpbmUgLWZuby1zdHJp Y3QtYWxpYXNpbmcgLWZmdW5jdGlvbi1zZWN0aW9ucyAtZmRhdGEtc2VjdGlvbnMgLVF1bnVzZWQt YXJndW1lbnRzIC1pc3lzdGVtL3Vzci9sb2NhbC9pbmNsdWRlICAtSS91c3IvbG9jYWwvaW5jbHVk ZSAtcHRocmVhZCAgLUwvdXNyL2xvY2FsL2xpYiAtV2wsLXosb3JpZ2luIC1XbCwtcnBhdGgsXCQk T1JJR0lOIC1XbCwteixub2V4ZWNzdGFjayBjb25mdGVzdC5jICAxPiY1CmNvbmZpZ3VyZToxNDcx ODogY2hlY2tpbmcgZm9yIG5zcHItY29uZmlnCmNvbmZpZ3VyZToxNDc1MzogY2hlY2tpbmcgZm9y IE5TUFIgLSB2ZXJzaW9uID49IDQuOS42CmNvbmZpZ3VyZToxNDgyMTogL3Vzci9iaW4vY2xhbmcg LWMgLU8yIC1waXBlIC1mbm8tc3RyaWN0LWFsaWFzaW5nIC1zdGQ9Z251OTkgLWZnbnU4OS1pbmxp bmUgLWZuby1zdHJpY3QtYWxpYXNpbmcgLWZmdW5jdGlvbi1zZWN0aW9ucyAtZmRhdGEtc2VjdGlv bnMgLUkvdXNyL2xvY2FsL2luY2x1ZGUvbnNwciAtUXVudXNlZC1hcmd1bWVudHMgLWlzeXN0ZW0v dXNyL2xvY2FsL2luY2x1ZGUgIC1JL3Vzci9sb2NhbC9pbmNsdWRlIGNvbmZ0ZXN0LmMgMT4mNQpj b25maWd1cmU6MTQ4NDE6IC91c3IvYmluL2NsYW5nIC1jIC1PMiAtcGlwZSAtZm5vLXN0cmljdC1h bGlhc2luZyAtc3RkPWdudTk5IC1mZ251ODktaW5saW5lIC1mbm8tc3RyaWN0LWFsaWFzaW5nIC1m ZnVuY3Rpb24tc2VjdGlvbnMgLWZkYXRhLXNlY3Rpb25zIC1JL3Vzci9sb2NhbC9pbmNsdWRlL25z cHIgLVF1bnVzZWQtYXJndW1lbnRzIC1pc3lzdGVtL3Vzci9sb2NhbC9pbmNsdWRlICAtSS91c3Iv bG9jYWwvaW5jbHVkZSBjb25mdGVzdC5jIDE+JjUKY29uZmlndXJlOjE0OTY2OiBjaGVja2luZyBm b3IgbGliZXZlbnQKY29uZmlndXJlOjE0OTczOiBjaGVja2luZyBNT1pfTElCRVZFTlRfQ0ZMQUdT CmNvbmZpZ3VyZToxNDk3ODogY2hlY2tpbmcgTU9aX0xJQkVWRU5UX0xJQlMKY29uZmlndXJlOjE1 MTUzOiBjaGVja2luZyBmb3IgbnNzLWNvbmZpZwpjb25maWd1cmU6MTUxODg6IGNoZWNraW5nIGZv ciBOU1MgLSB2ZXJzaW9uID49IDMuMTUKY29uZmlndXJlOjE1MjU1OiBjaGVja2luZyBmb3IgWUFT TSBhc3NlbWJsZXIKY29uZmlndXJlOjE1MjYxOiBjaGVja2luZyBmb3IgeWFzbQpjb25maWd1cmU6 MTUzMTk6IGNoZWNraW5nIGZvciBqcGVnX2Rlc3Ryb3lfY29tcHJlc3MgaW4gLWxqcGVnCmNvbmZp Z3VyZToxNTMzODogL3Vzci9iaW4vY2xhbmcgLW8gY29uZnRlc3QgLUkvdXNyL2xvY2FsL2luY2x1 ZGUgLU8yIC1waXBlIC1mbm8tc3RyaWN0LWFsaWFzaW5nIC1zdGQ9Z251OTkgLWZnbnU4OS1pbmxp bmUgLWZuby1zdHJpY3QtYWxpYXNpbmcgLWZmdW5jdGlvbi1zZWN0aW9ucyAtZmRhdGEtc2VjdGlv bnMgLVF1bnVzZWQtYXJndW1lbnRzIC1pc3lzdGVtL3Vzci9sb2NhbC9pbmNsdWRlICAtSS91c3Iv bG9jYWwvaW5jbHVkZSAtTC91c3IvbG9jYWwvbGliIC1wdGhyZWFkICAtTC91c3IvbG9jYWwvbGli IC1XbCwteixvcmlnaW4gLVdsLC1ycGF0aCxcJCRPUklHSU4gLVdsLC16LG5vZXhlY3N0YWNrIGNv bmZ0ZXN0LmMgLWxqcGVnICAgMT4mNQpjb25maWd1cmU6MTUzNzQ6IC91c3IvYmluL2NsYW5nIC1j IC1JL3Vzci9sb2NhbC9pbmNsdWRlIC1PMiAtcGlwZSAtZm5vLXN0cmljdC1hbGlhc2luZyAtc3Rk PWdudTk5IC1mZ251ODktaW5saW5lIC1mbm8tc3RyaWN0LWFsaWFzaW5nIC1mZnVuY3Rpb24tc2Vj dGlvbnMgLWZkYXRhLXNlY3Rpb25zIC1RdW51c2VkLWFyZ3VtZW50cyAtaXN5c3RlbS91c3IvbG9j YWwvaW5jbHVkZSAgLUkvdXNyL2xvY2FsL2luY2x1ZGUgY29uZnRlc3QuYyAxPiY1CmNvbmZpZ3Vy ZToxNTQyMTogY2hlY2tpbmcgZm9yIGd6cmVhZCBpbiAtbHoKY29uZmlndXJlOjE1NDQwOiAvdXNy L2Jpbi9jbGFuZyAtbyBjb25mdGVzdCAtTzIgLXBpcGUgLWZuby1zdHJpY3QtYWxpYXNpbmcgLXN0 ZD1nbnU5OSAtZmdudTg5LWlubGluZSAtZm5vLXN0cmljdC1hbGlhc2luZyAtZmZ1bmN0aW9uLXNl Y3Rpb25zIC1mZGF0YS1zZWN0aW9ucyAtUXVudXNlZC1hcmd1bWVudHMgLWlzeXN0ZW0vdXNyL2xv Y2FsL2luY2x1ZGUgIC1JL3Vzci9sb2NhbC9pbmNsdWRlIC1wdGhyZWFkICAtTC91c3IvbG9jYWwv bGliIC1XbCwteixvcmlnaW4gLVdsLC1ycGF0aCxcJCRPUklHSU4gLVdsLC16LG5vZXhlY3N0YWNr IGNvbmZ0ZXN0LmMgLWx6ICAgMT4mNQpjb25maWd1cmU6MTU0NzU6IC91c3IvYmluL2NsYW5nIC1j IC1PMiAtcGlwZSAtZm5vLXN0cmljdC1hbGlhc2luZyAtc3RkPWdudTk5IC1mZ251ODktaW5saW5l IC1mbm8tc3RyaWN0LWFsaWFzaW5nIC1mZnVuY3Rpb24tc2VjdGlvbnMgLWZkYXRhLXNlY3Rpb25z IC1RdW51c2VkLWFyZ3VtZW50cyAtaXN5c3RlbS91c3IvbG9jYWwvaW5jbHVkZSAgLUkvdXNyL2xv Y2FsL2luY2x1ZGUgY29uZnRlc3QuYyAxPiY1CmNvbmZpZ3VyZToxNTUyNjogY2hlY2tpbmcgZm9y IEJaMl9ienJlYWQgaW4gLWxiejIKY29uZmlndXJlOjE1NTQ1OiAvdXNyL2Jpbi9jbGFuZyAtbyBj b25mdGVzdCAtTzIgLXBpcGUgLWZuby1zdHJpY3QtYWxpYXNpbmcgLXN0ZD1nbnU5OSAtZmdudTg5 LWlubGluZSAtZm5vLXN0cmljdC1hbGlhc2luZyAtZmZ1bmN0aW9uLXNlY3Rpb25zIC1mZGF0YS1z ZWN0aW9ucyAtUXVudXNlZC1hcmd1bWVudHMgLWlzeXN0ZW0vdXNyL2xvY2FsL2luY2x1ZGUgIC1J L3Vzci9sb2NhbC9pbmNsdWRlIC1wdGhyZWFkICAtTC91c3IvbG9jYWwvbGliIC1XbCwteixvcmln aW4gLVdsLC1ycGF0aCxcJCRPUklHSU4gLVdsLC16LG5vZXhlY3N0YWNrIGNvbmZ0ZXN0LmMgLWxi ejIgICAxPiY1CmNvbmZpZ3VyZToxNTU5NDogY2hlY2tpbmcgZm9yIHBuZ19nZXRfdmFsaWQgaW4g LWxwbmcKY29uZmlndXJlOjE1NjEzOiAvdXNyL2Jpbi9jbGFuZyAtbyBjb25mdGVzdCAtSS91c3Iv bG9jYWwvaW5jbHVkZSAtTzIgLXBpcGUgLWZuby1zdHJpY3QtYWxpYXNpbmcgLXN0ZD1nbnU5OSAt ZmdudTg5LWlubGluZSAtZm5vLXN0cmljdC1hbGlhc2luZyAtZmZ1bmN0aW9uLXNlY3Rpb25zIC1m ZGF0YS1zZWN0aW9ucyAtUXVudXNlZC1hcmd1bWVudHMgLWlzeXN0ZW0vdXNyL2xvY2FsL2luY2x1 ZGUgIC1JL3Vzci9sb2NhbC9pbmNsdWRlIC1ML3Vzci9sb2NhbC9saWIgLXB0aHJlYWQgIC1ML3Vz ci9sb2NhbC9saWIgLVdsLC16LG9yaWdpbiAtV2wsLXJwYXRoLFwkJE9SSUdJTiAtV2wsLXosbm9l eGVjc3RhY2sgY29uZnRlc3QuYyAtbHBuZyAgIDE+JjUKY29uZmlndXJlOjE1NjM1OiBjaGVja2lu ZyBmb3IgcG5nX2dldF9hY1RMIGluIC1scG5nCmNvbmZpZ3VyZToxNTY1NDogL3Vzci9iaW4vY2xh bmcgLW8gY29uZnRlc3QgLUkvdXNyL2xvY2FsL2luY2x1ZGUgLU8yIC1waXBlIC1mbm8tc3RyaWN0 LWFsaWFzaW5nIC1zdGQ9Z251OTkgLWZnbnU4OS1pbmxpbmUgLWZuby1zdHJpY3QtYWxpYXNpbmcg LWZmdW5jdGlvbi1zZWN0aW9ucyAtZmRhdGEtc2VjdGlvbnMgLVF1bnVzZWQtYXJndW1lbnRzIC1p c3lzdGVtL3Vzci9sb2NhbC9pbmNsdWRlICAtSS91c3IvbG9jYWwvaW5jbHVkZSAtTC91c3IvbG9j YWwvbGliIC1wdGhyZWFkICAtTC91c3IvbG9jYWwvbGliIC1XbCwteixvcmlnaW4gLVdsLC1ycGF0 aCxcJCRPUklHSU4gLVdsLC16LG5vZXhlY3N0YWNrIGNvbmZ0ZXN0LmMgLWxwbmcgICAxPiY1CmNv bmZpZ3VyZToxNTcwMjogL3Vzci9iaW4vY2xhbmcgLWMgLUkvdXNyL2xvY2FsL2luY2x1ZGUgLU8y IC1waXBlIC1mbm8tc3RyaWN0LWFsaWFzaW5nIC1zdGQ9Z251OTkgLWZnbnU4OS1pbmxpbmUgLWZu by1zdHJpY3QtYWxpYXNpbmcgLWZmdW5jdGlvbi1zZWN0aW9ucyAtZmRhdGEtc2VjdGlvbnMgLVF1 bnVzZWQtYXJndW1lbnRzIC1pc3lzdGVtL3Vzci9sb2NhbC9pbmNsdWRlICAtSS91c3IvbG9jYWwv aW5jbHVkZSBjb25mdGVzdC5jIDE+JjUKY29uZmlndXJlOjE1Nzg4OiBjaGVja2luZyBmb3IgaHVu c3BlbGwKY29uZmlndXJlOjE1Nzk1OiBjaGVja2luZyBNT1pfSFVOU1BFTExfQ0ZMQUdTCmNvbmZp Z3VyZToxNTgwMDogY2hlY2tpbmcgTU9aX0hVTlNQRUxMX0xJQlMKY29uZmlndXJlOjE1OTkyOiBj aGVja2luZyBmb3IgbGliZmZpID49IDMuMC45CmNvbmZpZ3VyZToxNTk5OTogY2hlY2tpbmcgTU9a X0ZGSV9DRkxBR1MKY29uZmlndXJlOjE2MDA0OiBjaGVja2luZyBNT1pfRkZJX0xJQlMKY29uZmln dXJlOjE2MTAyOiBjaGVja2luZyBmb3IgaWN1LWkxOG4gPj0gNTAuMQo= --001a11c2f3a60a386604e57c5168-- From owner-freebsd-gecko@FreeBSD.ORG Fri Sep 6 14:46:42 2013 Return-Path: Delivered-To: gecko@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTP id 21731B87 for ; Fri, 6 Sep 2013 14:46:42 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from bigwig.baldwin.cx (bigwig.baldwin.cx [IPv6:2001:470:1f11:75::1]) (using TLSv1 with cipher ADH-CAMELLIA256-SHA (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id F1C50227D for ; Fri, 6 Sep 2013 14:46:41 +0000 (UTC) Received: from jhbbsd.localnet (unknown [209.249.190.124]) by bigwig.baldwin.cx (Postfix) with ESMTPSA id E7724B96B for ; Fri, 6 Sep 2013 10:46:40 -0400 (EDT) From: John Baldwin To: gecko@freebsd.org Subject: www/firefox broken if DEBUG is enabled Date: Fri, 6 Sep 2013 10:21:54 -0400 User-Agent: KMail/1.13.5 (FreeBSD/8.2-CBSD-20110714-p28; KDE/4.5.5; amd64; ; ) MIME-Version: 1.0 Content-Type: Text/Plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Message-Id: <201309061021.54959.jhb@freebsd.org> X-Greylist: Sender succeeded SMTP AUTH, not delayed by milter-greylist-4.2.7 (bigwig.baldwin.cx); Fri, 06 Sep 2013 10:46:41 -0400 (EDT) X-BeenThere: freebsd-gecko@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: Gecko Rendering Engine issues List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 06 Sep 2013 14:46:42 -0000 Compile error is: /usr/ports/www/firefox/work/mozilla-release/netwerk/wifi/nsWifiScannerFreeBSD.cpp:127:13: error: invalid operands to binary expression ('const char *' and 'const char *') << "SSID: " << ssid << ", " ^ ~~~~~~~~ ../../../netwerk/wifi/nsWifiMonitor.h:27:61: note: expanded from macro 'LOG' #define LOG(args) PR_LOG(gWifiMonitorLog, PR_LOG_DEBUG, args) ^ /usr/local/include/nspr/prlog.h:178:19: note: expanded from macro 'PR_LOG' PR_LogPrint _args; \ ^ 1 error generated. If you look at the the prlog.h header, you can see that PR_LOG() expects to get printf-style args, but the code in nsWifiScannerFreeBSD.cpp is trying to use C++ iostreams: + // log the data + LOG(( "FreeBSD access point: " + << "SSID: " << ssid << ", " + << "MAC: " << isr->isr_bssid << ", " + << "Strength: " << isr->isr_rssi ", " + << "Channel: " << isr->isr_freq << "MHz" )); (This code is in files/patch-bug893397 in the port.) I think the fix is to just change this to use printf style, but I punted and built firefox without debugging for now. This should likely be fixed upstream as well (if not already). -- John Baldwin