From mboxrd@z Thu Jan 1 00:00:00 1970 X-Msuck: nntp://news.gmane.org/gmane.linux.lib.musl.general/3363 Path: news.gmane.org!not-for-mail From: plan9assembler Newsgroups: gmane.linux.lib.musl.general Subject: Re: util-linux-2.23 mount segmentation fault error Date: Sun, 26 May 2013 06:34:12 +0900 Message-ID: References: <20130525162604.GY20323@brightrain.aerifal.cx> Reply-To: musl@lists.openwall.com NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: multipart/mixed; boundary=bcaec5430bde2f1f2004dd91ade3 X-Trace: ger.gmane.org 1369517668 11907 80.91.229.3 (25 May 2013 21:34:28 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Sat, 25 May 2013 21:34:28 +0000 (UTC) To: musl@lists.openwall.com Original-X-From: musl-return-3367-gllmg-musl=m.gmane.org@lists.openwall.com Sat May 25 23:34:30 2013 Return-path: Envelope-to: gllmg-musl@plane.gmane.org Original-Received: from mother.openwall.net ([195.42.179.200]) by plane.gmane.org with smtp (Exim 4.69) (envelope-from ) id 1UgM6c-0005ak-OB for gllmg-musl@plane.gmane.org; Sat, 25 May 2013 23:34:29 +0200 Original-Received: (qmail 17684 invoked by uid 550); 25 May 2013 21:34:25 -0000 Mailing-List: contact musl-help@lists.openwall.com; run by ezmlm Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: Original-Received: (qmail 17671 invoked from network); 25 May 2013 21:34:24 -0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :content-type; bh=iitUIbRIIc81/2fhuemI0jAecUxmsZT9eD5kvGZ7ays=; b=p3dnTnVOxCebAK83H3DSqX+if1D00CyIv6CseiKsVAe2DGXZa5j7mhlfCE0W3CYEHs G2QNY9bw5qMtMe8sS2e6FQ8Nk/2mb3m4COBiV2r7OvHceI4jNVdggIUiIBcPgoDU92dv nStgCeJ3iPWUGfPaMvsflWnRi2GzIzwI+hiJTvpCVanVWPC+obKludjVnR6FXniyo+sN MsSXYXjRQCHRcu1RFkw35X1pgNyHwREl2iXz5vc+6ntO7/eK9UrMUZZtfyf/D8BpHLgK /jVRrMqEBr4vlSz5PFqoLb81sTvxDrPBL21NfiYG6P5Nb+4855+13CDcBb1ts18ZM7dg kBhA== X-Received: by 10.68.60.130 with SMTP id h2mr22878900pbr.208.1369517652383; Sat, 25 May 2013 14:34:12 -0700 (PDT) In-Reply-To: <20130525162604.GY20323@brightrain.aerifal.cx> Xref: news.gmane.org gmane.linux.lib.musl.general:3363 Archived-At: --bcaec5430bde2f1f2004dd91ade3 Content-Type: multipart/alternative; boundary=bcaec5430bde2f1f1b04dd91ade1 --bcaec5430bde2f1f1b04dd91ade1 Content-Type: text/plain; charset=ISO-8859-1 Hi, i attached build log, and i have commented out text-utils/pg.c://#include changed __sighandler_t to sighandler_t fdisks/cfdisk.c:sighandler_t old_SIGINT, old_SIGTERM; On Sun, May 26, 2013 at 1:26 AM, Rich Felker wrote: > On Sun, May 26, 2013 at 12:46:17AM +0900, plan9assembler wrote: > > Hi, > > > > i had compile util-linux-2.23 successfully, but when i test mount binary, > > it getting segmentation fault. > > > http://plan9assembler.wordpress.com/2013/05/25/udev-in-x86_64-linux-musl/ > > Did you get any warnings building it? My best guess, since you're on a > 64-bit system, is that mount used some function which returns a > pointer without having a prototype in scope, and thus the return value > got treated as an int then extended to a pointer via gcc's harmful > implicit int-to-pointer conversion. > > Rich > --bcaec5430bde2f1f1b04dd91ade1 Content-Type: text/html; charset=ISO-8859-1
Hi, i attached build log, and

i have commented out
text-utils/pg.c://#include <sys/termios.h>

changed __sighandler_t to sighandler_t
fdisks/cfdisk.c:sighandler_t old_SIGINT, old_SIGTERM;


On Sun, May 26, 2013 at 1:26 AM, Rich Felker <dalias@aerifal.cx> wrote:
On Sun, May 26, 2013 at 12:46:17AM +0900, plan9assembler wrote:
> Hi,
>
> i had compile util-linux-2.23 successfully, but when i test mount binary,
> it getting segmentation fault.
> http://plan9assembler.wordpress.com/2013/05/25/udev-in-x86_64-linux-musl/

Did you get any warnings building it? My best guess, since you're on a
64-bit system, is that mount used some function which returns a
pointer without having a prototype in scope, and thus the return value
got treated as an int then extended to a pointer via gcc's harmful
implicit int-to-pointer conversion.

Rich

--bcaec5430bde2f1f1b04dd91ade1-- --bcaec5430bde2f1f2004dd91ade3 Content-Type: application/octet-stream; name="build.log" Content-Disposition: attachment; filename="build.log" Content-Transfer-Encoding: base64 X-Attachment-Id: f_hh5bcvg60 bWFrZSAgYWxsLXJlY3Vyc2l2ZQptYWtlWzFdOiBFbnRlcmluZyBkaXJlY3RvcnkgYC91dGlsLWxp bnV4LTIuMjMnCk1ha2luZyBhbGwgaW4gcG8KbWFrZVsyXTogRW50ZXJpbmcgZGlyZWN0b3J5IGAv dXRpbC1saW51eC0yLjIzL3BvJwptYWtlWzJdOiBOb3RoaW5nIHRvIGJlIGRvbmUgZm9yIGBhbGwn LgptYWtlWzJdOiBMZWF2aW5nIGRpcmVjdG9yeSBgL3V0aWwtbGludXgtMi4yMy9wbycKbWFrZVsy XTogRW50ZXJpbmcgZGlyZWN0b3J5IGAvdXRpbC1saW51eC0yLjIzJwogIENDICAgICAgIGxpYi9s aWJjb21tb25fbGEtYXQubG8KICBDQyAgICAgICBsaWIvbGliY29tbW9uX2xhLWJsa2Rldi5sbwog IENDICAgICAgIGxpYi9saWJjb21tb25fbGEtY2Fub25pY2FsaXplLmxvCiAgQ0MgICAgICAgbGli L2xpYmNvbW1vbl9sYS1jb2xvcnMubG8KICBDQyAgICAgICBsaWIvbGliY29tbW9uX2xhLWNyYzMy LmxvCiAgQ0MgICAgICAgbGliL2xpYmNvbW1vbl9sYS1lbnYubG8KICBDQyAgICAgICBsaWIvbGli Y29tbW9uX2xhLWZpbGV1dGlscy5sbwogIENDICAgICAgIGxpYi9saWJjb21tb25fbGEtaXNtb3Vu dGVkLmxvCiAgQ0MgICAgICAgbGliL2xpYmNvbW1vbl9sYS1tYW5nbGUubG8KICBDQyAgICAgICBs aWIvbGliY29tbW9uX2xhLW1hdGNoLmxvCiAgQ0MgICAgICAgbGliL2xpYmNvbW1vbl9sYS1tYnNh bGlnbi5sbwogIENDICAgICAgIGxpYi9saWJjb21tb25fbGEtbWQ1LmxvCiAgQ0MgICAgICAgbGli L2xpYmNvbW1vbl9sYS1wYWdlci5sbwogIENDICAgICAgIGxpYi9saWJjb21tb25fbGEtcGF0aC5s bwpsaWIvcGF0aC5jOjI0MDoxOiB3YXJuaW5nOiBubyBwcmV2aW91cyBwcm90b3R5cGUgZm9yICdw YXRoX3NldF9wcmVmaXgnIFstV21pc3NpbmctcHJvdG90eXBlc10KIHBhdGhfc2V0X3ByZWZpeChj b25zdCBjaGFyICpwcmVmaXgpCiBeCiAgQ0MgICAgICAgbGliL2xpYmNvbW1vbl9sYS1wcm9jdXRp bHMubG8KICBDQyAgICAgICBsaWIvbGliY29tbW9uX2xhLXJhbmR1dGlscy5sbwogIENDICAgICAg IGxpYi9saWJjb21tb25fbGEtc2V0cHJvY3RpdGxlLmxvCiAgQ0MgICAgICAgbGliL2xpYmNvbW1v bl9sYS1zdHJ1dGlscy5sbwogIENDICAgICAgIGxpYi9saWJjb21tb25fbGEtc3lzZnMubG8KICBD QyAgICAgICBsaWIvbGliY29tbW9uX2xhLXR0LmxvCiAgQ0MgICAgICAgbGliL2xpYmNvbW1vbl9s YS13aG9sZWRpc2subG8KICBDQyAgICAgICBsaWIvbGliY29tbW9uX2xhLXR0eXV0aWxzLmxvCiAg Q0MgICAgICAgbGliL2xpYmNvbW1vbl9sYS14Z2V0cGFzcy5sbwogIENDICAgICAgIGxpYi9saWJj b21tb25fbGEtZXhlY19zaGVsbC5sbwpsaWIvZXhlY19zaGVsbC5jOiBJbiBmdW5jdGlvbiAnZXhl Y19zaGVsbCc6CmxpYi9leGVjX3NoZWxsLmM6MjU6Mjogd2FybmluZzogbWlzc2luZyBzZW50aW5l bCBpbiBmdW5jdGlvbiBjYWxsIFstV2Zvcm1hdD1dCiAgZXhlY2woc2hlbGwsIGFyZzAsIE5VTEwp OwogIF4KICBDQyAgICAgICBsaWIvbGliY29tbW9uX2xhLWxpbnV4X3ZlcnNpb24ubG8KICBDQyAg ICAgICBsaWIvbGliY29tbW9uX2xhLWxvb3BkZXYubG8KICBDQ0xEICAgICBsaWJjb21tb24ubGEK ICBDQyAgICAgICBsaWJmZGlzay9zcmMvbGliZmRpc2tfbGEtaW5pdC5sbwogIENDICAgICAgIGxp YmZkaXNrL3NyYy9saWJmZGlza19sYS10ZXN0LmxvCiAgQ0MgICAgICAgbGliZmRpc2svc3JjL2xp YmZkaXNrX2xhLWFzay5sbwogIENDICAgICAgIGxpYmZkaXNrL3NyYy9saWJmZGlza19sYS1hbGln bm1lbnQubG8KICBDQyAgICAgICBsaWJmZGlzay9zcmMvbGliZmRpc2tfbGEtbGFiZWwubG8KICBD QyAgICAgICBsaWJmZGlzay9zcmMvbGliZmRpc2tfbGEtdXRpbHMubG8KICBDQyAgICAgICBsaWJm ZGlzay9zcmMvbGliZmRpc2tfbGEtY29udGV4dC5sbwogIENDICAgICAgIGxpYmZkaXNrL3NyYy9s aWJmZGlza19sYS1wYXJ0dHlwZS5sbwogIENDICAgICAgIGxpYmZkaXNrL3NyYy9saWJmZGlza19s YS1ncHQubG8KICBDQyAgICAgICBsaWJibGtpZC9zcmMvbGliYmxraWRfbGEtaW5pdC5sbwogIEND ICAgICAgIGxpYmJsa2lkL3NyYy9saWJibGtpZF9sYS1jYWNoZS5sbwogIENDICAgICAgIGxpYmJs a2lkL3NyYy9saWJibGtpZF9sYS1jb25maWcubG8KICBDQyAgICAgICBsaWJibGtpZC9zcmMvbGli YmxraWRfbGEtZGV2LmxvCiAgQ0MgICAgICAgbGliYmxraWQvc3JjL2xpYmJsa2lkX2xhLWRldm5h bWUubG8KICBDQyAgICAgICBsaWJibGtpZC9zcmMvbGliYmxraWRfbGEtZGV2bm8ubG8KICBDQyAg ICAgICBsaWJibGtpZC9zcmMvbGliYmxraWRfbGEtZW5jb2RlLmxvCiAgQ0MgICAgICAgbGliYmxr aWQvc3JjL2xpYmJsa2lkX2xhLWV2YWx1YXRlLmxvCiAgQ0MgICAgICAgbGliYmxraWQvc3JjL2xp YmJsa2lkX2xhLWdldHNpemUubG8KICBDQyAgICAgICBsaWJibGtpZC9zcmMvbGliYmxraWRfbGEt bGxzZWVrLmxvCiAgQ0MgICAgICAgbGliYmxraWQvc3JjL2xpYmJsa2lkX2xhLXByb2JlLmxvCiAg Q0MgICAgICAgbGliYmxraWQvc3JjL2xpYmJsa2lkX2xhLXJlYWQubG8KICBDQyAgICAgICBsaWJi bGtpZC9zcmMvbGliYmxraWRfbGEtcmVzb2x2ZS5sbwogIENDICAgICAgIGxpYmJsa2lkL3NyYy9s aWJibGtpZF9sYS1zYXZlLmxvCiAgQ0MgICAgICAgbGliYmxraWQvc3JjL2xpYmJsa2lkX2xhLXRh Zy5sbwogIENDICAgICAgIGxpYmJsa2lkL3NyYy9saWJibGtpZF9sYS12ZXJpZnkubG8KICBDQyAg ICAgICBsaWJibGtpZC9zcmMvbGliYmxraWRfbGEtdmVyc2lvbi5sbwogIENDICAgICAgIGxpYmJs a2lkL3NyYy9wYXJ0aXRpb25zL2xpYmJsa2lkX2xhLWFpeC5sbwogIENDICAgICAgIGxpYmJsa2lk L3NyYy9wYXJ0aXRpb25zL2xpYmJsa2lkX2xhLWJzZC5sbwogIENDICAgICAgIGxpYmJsa2lkL3Ny Yy9wYXJ0aXRpb25zL2xpYmJsa2lkX2xhLWRvcy5sbwogIENDICAgICAgIGxpYmJsa2lkL3NyYy9w YXJ0aXRpb25zL2xpYmJsa2lkX2xhLWdwdC5sbwogIENDICAgICAgIGxpYmJsa2lkL3NyYy9wYXJ0 aXRpb25zL2xpYmJsa2lkX2xhLW1hYy5sbwogIENDICAgICAgIGxpYmJsa2lkL3NyYy9wYXJ0aXRp b25zL2xpYmJsa2lkX2xhLW1pbml4LmxvCiAgQ0MgICAgICAgbGliYmxraWQvc3JjL3BhcnRpdGlv bnMvbGliYmxraWRfbGEtcGFydGl0aW9ucy5sbwogIENDICAgICAgIGxpYmJsa2lkL3NyYy9wYXJ0 aXRpb25zL2xpYmJsa2lkX2xhLXNnaS5sbwogIENDICAgICAgIGxpYmJsa2lkL3NyYy9wYXJ0aXRp b25zL2xpYmJsa2lkX2xhLXNvbGFyaXNfeDg2LmxvCiAgQ0MgICAgICAgbGliYmxraWQvc3JjL3Bh cnRpdGlvbnMvbGliYmxraWRfbGEtc3VuLmxvCiAgQ0MgICAgICAgbGliYmxraWQvc3JjL3BhcnRp dGlvbnMvbGliYmxraWRfbGEtdWx0cml4LmxvCiAgQ0MgICAgICAgbGliYmxraWQvc3JjL3BhcnRp dGlvbnMvbGliYmxraWRfbGEtdW5peHdhcmUubG8KICBDQyAgICAgICBsaWJibGtpZC9zcmMvc3Vw ZXJibG9ja3MvbGliYmxraWRfbGEtYWRhcHRlY19yYWlkLmxvCiAgQ0MgICAgICAgbGliYmxraWQv c3JjL3N1cGVyYmxvY2tzL2xpYmJsa2lkX2xhLWJlZnMubG8KICBDQyAgICAgICBsaWJibGtpZC9z cmMvc3VwZXJibG9ja3MvbGliYmxraWRfbGEtYmZzLmxvCiAgQ0MgICAgICAgbGliYmxraWQvc3Jj L3N1cGVyYmxvY2tzL2xpYmJsa2lkX2xhLWJ0cmZzLmxvCiAgQ0MgICAgICAgbGliYmxraWQvc3Jj L3N1cGVyYmxvY2tzL2xpYmJsa2lkX2xhLWNyYW1mcy5sbwogIENDICAgICAgIGxpYmJsa2lkL3Ny Yy9zdXBlcmJsb2Nrcy9saWJibGtpZF9sYS1kZGZfcmFpZC5sbwogIENDICAgICAgIGxpYmJsa2lk L3NyYy9zdXBlcmJsb2Nrcy9saWJibGtpZF9sYS1kcmJkLmxvCiAgQ0MgICAgICAgbGliYmxraWQv c3JjL3N1cGVyYmxvY2tzL2xpYmJsa2lkX2xhLWRyYmRwcm94eV9kYXRhbG9nLmxvCiAgQ0MgICAg ICAgbGliYmxraWQvc3JjL3N1cGVyYmxvY2tzL2xpYmJsa2lkX2xhLWV4ZmF0LmxvCiAgQ0MgICAg ICAgbGliYmxraWQvc3JjL3N1cGVyYmxvY2tzL2xpYmJsa2lkX2xhLWV4dC5sbwogIENDICAgICAg IGxpYmJsa2lkL3NyYy9zdXBlcmJsb2Nrcy9saWJibGtpZF9sYS1mMmZzLmxvCiAgQ0MgICAgICAg bGliYmxraWQvc3JjL3N1cGVyYmxvY2tzL2xpYmJsa2lkX2xhLWdmcy5sbwogIENDICAgICAgIGxp YmJsa2lkL3NyYy9zdXBlcmJsb2Nrcy9saWJibGtpZF9sYS1oZnMubG8KICBDQyAgICAgICBsaWJi bGtpZC9zcmMvc3VwZXJibG9ja3MvbGliYmxraWRfbGEtaGlnaHBvaW50X3JhaWQubG8KICBDQyAg ICAgICBsaWJibGtpZC9zcmMvc3VwZXJibG9ja3MvbGliYmxraWRfbGEtaHBmcy5sbwogIENDICAg ICAgIGxpYmJsa2lkL3NyYy9zdXBlcmJsb2Nrcy9saWJibGtpZF9sYS1pc285NjYwLmxvCiAgQ0Mg ICAgICAgbGliYmxraWQvc3JjL3N1cGVyYmxvY2tzL2xpYmJsa2lkX2xhLWlzd19yYWlkLmxvCiAg Q0MgICAgICAgbGliYmxraWQvc3JjL3N1cGVyYmxvY2tzL2xpYmJsa2lkX2xhLWpmcy5sbwogIEND ICAgICAgIGxpYmJsa2lkL3NyYy9zdXBlcmJsb2Nrcy9saWJibGtpZF9sYS1qbWljcm9uX3JhaWQu bG8KICBDQyAgICAgICBsaWJibGtpZC9zcmMvc3VwZXJibG9ja3MvbGliYmxraWRfbGEtbGludXhf cmFpZC5sbwogIENDICAgICAgIGxpYmJsa2lkL3NyYy9zdXBlcmJsb2Nrcy9saWJibGtpZF9sYS1s c2lfcmFpZC5sbwogIENDICAgICAgIGxpYmJsa2lkL3NyYy9zdXBlcmJsb2Nrcy9saWJibGtpZF9s YS1sdWtzLmxvCiAgQ0MgICAgICAgbGliYmxraWQvc3JjL3N1cGVyYmxvY2tzL2xpYmJsa2lkX2xh LWx2bS5sbwogIENDICAgICAgIGxpYmJsa2lkL3NyYy9zdXBlcmJsb2Nrcy9saWJibGtpZF9sYS1t aW5peC5sbwogIENDICAgICAgIGxpYmJsa2lkL3NyYy9zdXBlcmJsb2Nrcy9saWJibGtpZF9sYS1u ZXR3YXJlLmxvCiAgQ0MgICAgICAgbGliYmxraWQvc3JjL3N1cGVyYmxvY2tzL2xpYmJsa2lkX2xh LW5pbGZzLmxvCiAgQ0MgICAgICAgbGliYmxraWQvc3JjL3N1cGVyYmxvY2tzL2xpYmJsa2lkX2xh LW50ZnMubG8KICBDQyAgICAgICBsaWJibGtpZC9zcmMvc3VwZXJibG9ja3MvbGliYmxraWRfbGEt bnZpZGlhX3JhaWQubG8KICBDQyAgICAgICBsaWJibGtpZC9zcmMvc3VwZXJibG9ja3MvbGliYmxr aWRfbGEtb2Nmcy5sbwogIENDICAgICAgIGxpYmJsa2lkL3NyYy9zdXBlcmJsb2Nrcy9saWJibGtp ZF9sYS1wcm9taXNlX3JhaWQubG8KICBDQyAgICAgICBsaWJibGtpZC9zcmMvc3VwZXJibG9ja3Mv bGliYmxraWRfbGEtcmVpc2VyZnMubG8KICBDQyAgICAgICBsaWJibGtpZC9zcmMvc3VwZXJibG9j a3MvbGliYmxraWRfbGEtcm9tZnMubG8KICBDQyAgICAgICBsaWJibGtpZC9zcmMvc3VwZXJibG9j a3MvbGliYmxraWRfbGEtc2lsaWNvbl9yYWlkLmxvCiAgQ0MgICAgICAgbGliYmxraWQvc3JjL3N1 cGVyYmxvY2tzL2xpYmJsa2lkX2xhLXNxdWFzaGZzLmxvCiAgQ0MgICAgICAgbGliYmxraWQvc3Jj L3N1cGVyYmxvY2tzL2xpYmJsa2lkX2xhLXN1cGVyYmxvY2tzLmxvCiAgQ0MgICAgICAgbGliYmxr aWQvc3JjL3N1cGVyYmxvY2tzL2xpYmJsa2lkX2xhLXN3YXAubG8KICBDQyAgICAgICBsaWJibGtp ZC9zcmMvc3VwZXJibG9ja3MvbGliYmxraWRfbGEtc3lzdi5sbwogIENDICAgICAgIGxpYmJsa2lk L3NyYy9zdXBlcmJsb2Nrcy9saWJibGtpZF9sYS11Ymlmcy5sbwogIENDICAgICAgIGxpYmJsa2lk L3NyYy9zdXBlcmJsb2Nrcy9saWJibGtpZF9sYS11ZGYubG8KICBDQyAgICAgICBsaWJibGtpZC9z cmMvc3VwZXJibG9ja3MvbGliYmxraWRfbGEtdWZzLmxvCiAgQ0MgICAgICAgbGliYmxraWQvc3Jj L3N1cGVyYmxvY2tzL2xpYmJsa2lkX2xhLXZmYXQubG8KICBDQyAgICAgICBsaWJibGtpZC9zcmMv c3VwZXJibG9ja3MvbGliYmxraWRfbGEtdmlhX3JhaWQubG8KICBDQyAgICAgICBsaWJibGtpZC9z cmMvc3VwZXJibG9ja3MvbGliYmxraWRfbGEtdm1mcy5sbwogIENDICAgICAgIGxpYmJsa2lkL3Ny Yy9zdXBlcmJsb2Nrcy9saWJibGtpZF9sYS12eGZzLmxvCiAgQ0MgICAgICAgbGliYmxraWQvc3Jj L3N1cGVyYmxvY2tzL2xpYmJsa2lkX2xhLXhmcy5sbwogIENDICAgICAgIGxpYmJsa2lkL3NyYy9z dXBlcmJsb2Nrcy9saWJibGtpZF9sYS16ZnMubG8KICBDQyAgICAgICBsaWJibGtpZC9zcmMvdG9w b2xvZ3kvbGliYmxraWRfbGEtdG9wb2xvZ3kubG8KICBDQyAgICAgICBsaWJibGtpZC9zcmMvdG9w b2xvZ3kvbGliYmxraWRfbGEtZG0ubG8KICBDQyAgICAgICBsaWJibGtpZC9zcmMvdG9wb2xvZ3kv bGliYmxraWRfbGEtZXZtcy5sbwpJbiBmaWxlIGluY2x1ZGVkIGZyb20gL2luY2x1ZGUvc3lzL2lv Y3RsLmg6NzowLAogICAgICAgICAgICAgICAgIGZyb20gbGliYmxraWQvc3JjL3RvcG9sb2d5L2V2 bXMuYzoxODoKbGliYmxraWQvc3JjL3RvcG9sb2d5L2V2bXMuYzogSW4gZnVuY3Rpb24gJ3Byb2Jl X2V2bXNfdHAnOgpsaWJibGtpZC9zcmMvdG9wb2xvZ3kvZXZtcy5jOjMxOjYwOiB3YXJuaW5nOiBv dmVyZmxvdyBpbiBpbXBsaWNpdCBjb25zdGFudCBjb252ZXJzaW9uIFstV292ZXJmbG93XQogI2Rl ZmluZSBFVk1TX0dFVF9TVFJJUEVfSU5GTyBfSU9SKEVWTVNfTUFKT1IsIDB4RjAsIHN0cnVjdCBl dm1zX3N0cmlwZV9pbmZvKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBeCmxpYmJsa2lkL3NyYy90b3BvbG9neS9ldm1zLmM6NTk6MjA6 IG5vdGU6IGluIGV4cGFuc2lvbiBvZiBtYWNybyAnRVZNU19HRVRfU1RSSVBFX0lORk8nCiAgaWYg KGlvY3RsKHByLT5mZCwgRVZNU19HRVRfU1RSSVBFX0lORk8sICZldm1zKSkKICAgICAgICAgICAg ICAgICAgICBeCiAgQ0MgICAgICAgbGliYmxraWQvc3JjL3RvcG9sb2d5L2xpYmJsa2lkX2xhLWlv Y3RsLmxvCiAgQ0MgICAgICAgbGliYmxraWQvc3JjL3RvcG9sb2d5L2xpYmJsa2lkX2xhLWx2bS5s bwogIENDICAgICAgIGxpYmJsa2lkL3NyYy90b3BvbG9neS9saWJibGtpZF9sYS1tZC5sbwpJbiBm aWxlIGluY2x1ZGVkIGZyb20gL2luY2x1ZGUvc3lzL2lvY3RsLmg6NzowLAogICAgICAgICAgICAg ICAgIGZyb20gbGliYmxraWQvc3JjL3RvcG9sb2d5L21kLmM6MTg6CmxpYmJsa2lkL3NyYy90b3Bv bG9neS9tZC5jOiBJbiBmdW5jdGlvbiAncHJvYmVfbWRfdHAnOgpsaWJibGtpZC9zcmMvdG9wb2xv Z3kvbWQuYzozMzo2Mjogd2FybmluZzogb3ZlcmZsb3cgaW4gaW1wbGljaXQgY29uc3RhbnQgY29u dmVyc2lvbiBbLVdvdmVyZmxvd10KICNkZWZpbmUgR0VUX0FSUkFZX0lORk8gICAgICAgICAgX0lP UiAoTURfTUFKT1IsIDB4MTEsIHN0cnVjdCBtZF9hcnJheV9pbmZvKQogICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF4KbGliYmxraWQv c3JjL3RvcG9sb2d5L21kLmM6MTA5OjE2OiBub3RlOiBpbiBleHBhbnNpb24gb2YgbWFjcm8gJ0dF VF9BUlJBWV9JTkZPJwogIGlmIChpb2N0bChmZCwgR0VUX0FSUkFZX0lORk8sICZtZCkpCiAgICAg ICAgICAgICAgICBeCiAgQ0MgICAgICAgbGliYmxraWQvc3JjL3RvcG9sb2d5L2xpYmJsa2lkX2xh LXN5c2ZzLmxvCiAgQ0MgICAgICAgbGlidXVpZC9zcmMvbGlidXVpZF9sYS1jbGVhci5sbwogIEND ICAgICAgIGxpYnV1aWQvc3JjL2xpYnV1aWRfbGEtY29tcGFyZS5sbwogIENDICAgICAgIGxpYnV1 aWQvc3JjL2xpYnV1aWRfbGEtY29weS5sbwogIENDICAgICAgIGxpYnV1aWQvc3JjL2xpYnV1aWRf bGEtZ2VuX3V1aWQubG8KICBDQyAgICAgICBsaWJ1dWlkL3NyYy9saWJ1dWlkX2xhLWlzbnVsbC5s bwogIENDICAgICAgIGxpYnV1aWQvc3JjL2xpYnV1aWRfbGEtcGFjay5sbwogIENDICAgICAgIGxp YnV1aWQvc3JjL2xpYnV1aWRfbGEtcGFyc2UubG8KICBDQyAgICAgICBsaWJ1dWlkL3NyYy9saWJ1 dWlkX2xhLXVucGFjay5sbwogIENDICAgICAgIGxpYnV1aWQvc3JjL2xpYnV1aWRfbGEtdW5wYXJz ZS5sbwogIENDICAgICAgIGxpYnV1aWQvc3JjL2xpYnV1aWRfbGEtdXVpZF90aW1lLmxvCiAgQ0Mg ICAgICAgbGliL2xpYnV1aWRfbGEtcmFuZHV0aWxzLmxvCiAgQ0NMRCAgICAgbGlidXVpZC5sYQog IENDTEQgICAgIGxpYmJsa2lkLmxhCmNvcHlpbmcgc2VsZWN0ZWQgb2JqZWN0IGZpbGVzIHRvIGF2 b2lkIGJhc2VuYW1lIGNvbmZsaWN0cy4uLgogIENDTEQgICAgIGxpYmZkaXNrLmxhCiAgQ0MgICAg ICAgbGlibW91bnQvc3JjL2xpYm1vdW50X2xhLWNhY2hlLmxvCiAgQ0MgICAgICAgbGlibW91bnQv c3JjL2xpYm1vdW50X2xhLWNvbnRleHQubG8KICBDQyAgICAgICBsaWJtb3VudC9zcmMvbGlibW91 bnRfbGEtY29udGV4dF9sb29wZGV2LmxvCiAgQ0MgICAgICAgbGlibW91bnQvc3JjL2xpYm1vdW50 X2xhLWNvbnRleHRfbW91bnQubG8KICBDQyAgICAgICBsaWJtb3VudC9zcmMvbGlibW91bnRfbGEt Y29udGV4dF91bW91bnQubG8KICBDQyAgICAgICBsaWJtb3VudC9zcmMvbGlibW91bnRfbGEtZnMu bG8KICBDQyAgICAgICBsaWJtb3VudC9zcmMvbGlibW91bnRfbGEtaW5pdC5sbwogIENDICAgICAg IGxpYm1vdW50L3NyYy9saWJtb3VudF9sYS1pdGVyLmxvCiAgQ0MgICAgICAgbGlibW91bnQvc3Jj L2xpYm1vdW50X2xhLWxvY2subG8KICBDQyAgICAgICBsaWJtb3VudC9zcmMvbGlibW91bnRfbGEt b3B0bWFwLmxvCiAgQ0MgICAgICAgbGlibW91bnQvc3JjL2xpYm1vdW50X2xhLW9wdHN0ci5sbwog IENDICAgICAgIGxpYm1vdW50L3NyYy9saWJtb3VudF9sYS10YWIubG8KICBDQyAgICAgICBsaWJt b3VudC9zcmMvbGlibW91bnRfbGEtdGFiX2RpZmYubG8KICBDQyAgICAgICBsaWJtb3VudC9zcmMv bGlibW91bnRfbGEtdGFiX3BhcnNlLmxvCiAgQ0MgICAgICAgbGlibW91bnQvc3JjL2xpYm1vdW50 X2xhLXRhYl91cGRhdGUubG8KICBDQyAgICAgICBsaWJtb3VudC9zcmMvbGlibW91bnRfbGEtdGVz dC5sbwogIENDICAgICAgIGxpYm1vdW50L3NyYy9saWJtb3VudF9sYS11dGlscy5sbwogIENDICAg ICAgIGxpYm1vdW50L3NyYy9saWJtb3VudF9sYS12ZXJzaW9uLmxvCiAgQ0NMRCAgICAgbGlibW91 bnQubGEKICBDQyAgICAgICB0ZXh0LXV0aWxzL21vcmUubwp0ZXh0LXV0aWxzL21vcmUuYzogSW4g ZnVuY3Rpb24gJ21haW4nOgp0ZXh0LXV0aWxzL21vcmUuYzozNDI6Njogd2FybmluZzogdmFyaWFi bGUgJ2xlZnQnIG1pZ2h0IGJlIGNsb2JiZXJlZCBieSAnbG9uZ2ptcCcgb3IgJ3Zmb3JrJyBbLVdj bG9iYmVyZWRdCiAgaW50IGxlZnQ7CiAgICAgIF4KdGV4dC11dGlscy9tb3JlLmM6MzQzOjY6IHdh cm5pbmc6IHZhcmlhYmxlICdwcm5hbWVzJyBtaWdodCBiZSBjbG9iYmVyZWQgYnkgJ2xvbmdqbXAn IG9yICd2Zm9yaycgWy1XY2xvYmJlcmVkXQogIGludCBwcm5hbWVzID0gMDsKICAgICAgXgp0ZXh0 LXV0aWxzL21vcmUuYzozNDQ6Njogd2FybmluZzogdmFyaWFibGUgJ2luaXRvcHQnIG1pZ2h0IGJl IGNsb2JiZXJlZCBieSAnbG9uZ2ptcCcgb3IgJ3Zmb3JrJyBbLVdjbG9iYmVyZWRdCiAgaW50IGlu aXRvcHQgPSAwOwogICAgICBeCnRleHQtdXRpbHMvbW9yZS5jOjM0NTo2OiB3YXJuaW5nOiB2YXJp YWJsZSAnc3JjaG9wdCcgbWlnaHQgYmUgY2xvYmJlcmVkIGJ5ICdsb25nam1wJyBvciAndmZvcmsn IFstV2Nsb2JiZXJlZF0KICBpbnQgc3JjaG9wdCA9IDA7CiAgICAgIF4KdGV4dC11dGlscy9tb3Jl LmM6MzQ4Ojg6IHdhcm5pbmc6IHZhcmlhYmxlICdpbml0YnVmJyBtaWdodCBiZSBjbG9iYmVyZWQg YnkgJ2xvbmdqbXAnIG9yICd2Zm9yaycgWy1XY2xvYmJlcmVkXQogIGNoYXIgKmluaXRidWYgPSBO VUxMOwogICAgICAgIF4KICBDQ0xEICAgICBtb3JlCiAgQ0MgICAgICAgc3lzLXV0aWxzL2RtZXNn Lm8KICBDQ0xEICAgICBkbWVzZwogIENDICAgICAgIHN5cy11dGlscy9tb3VudC1tb3VudC5vCiAg Q0NMRCAgICAgbW91bnQKICBDQyAgICAgICBzeXMtdXRpbHMvdW1vdW50LXVtb3VudC5vCiAgQ0NM RCAgICAgdW1vdW50CiAgQ0MgICAgICAgc3lzLXV0aWxzL3dkY3RsLm8KICBDQ0xEICAgICB3ZGN0 bAogIENDICAgICAgIHN5cy11dGlscy9tb3VudHBvaW50LW1vdW50cG9pbnQubwogIENDTEQgICAg IG1vdW50cG9pbnQKICBDQyAgICAgICBtaXNjLXV0aWxzL2xzYmxrLWxzYmxrLm8KICBDQ0xEICAg ICBsc2JsawogIENDICAgICAgIG1pc2MtdXRpbHMvZmluZG1udC1maW5kbW50Lm8KbWlzYy11dGls cy9maW5kbW50LmM6IEluIGZ1bmN0aW9uICdnZXRfdGFnJzoKbWlzYy11dGlscy9maW5kbW50LmM6 NDEzOjc1OiB3YXJuaW5nOiB1bnVzZWQgcGFyYW1ldGVyICdjb2wnIFstV3VudXNlZC1wYXJhbWV0 ZXJdCiBzdGF0aWMgY29uc3QgY2hhciAqZ2V0X3RhZyhzdHJ1Y3QgbGlibW50X2ZzICpmcywgY29u c3QgY2hhciAqdGFnbmFtZSwgaW50IGNvbCkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXgogIENDTEQgICAg IGZpbmRtbnQKICBDQyAgICAgICBtaXNjLXV0aWxzL2tpbGwubwogIENDTEQgICAgIGtpbGwKICBD QyAgICAgICB0ZXJtLXV0aWxzL2FnZXR0eS5vCiAgQ0NMRCAgICAgYWdldHR5CiAgQ0MgICAgICAg c3lzLXV0aWxzL2N0cmxhbHRkZWwubwogIENDTEQgICAgIGN0cmxhbHRkZWwKICBDQyAgICAgICBz eXMtdXRpbHMvZnNmcmVlemUubwpzeXMtdXRpbHMvZnNmcmVlemUuYzogSW4gZnVuY3Rpb24gJ2Zy ZWV6ZV9mJzoKc3lzLXV0aWxzL2ZzZnJlZXplLmM6Mzg6Mjogd2FybmluZzogb3ZlcmZsb3cgaW4g aW1wbGljaXQgY29uc3RhbnQgY29udmVyc2lvbiBbLVdvdmVyZmxvd10KICByZXR1cm4gaW9jdGwo ZmQsIEZJRlJFRVpFLCAwKTsKICBeCnN5cy11dGlscy9mc2ZyZWV6ZS5jOiBJbiBmdW5jdGlvbiAn dW5mcmVlemVfZic6CnN5cy11dGlscy9mc2ZyZWV6ZS5jOjQzOjI6IHdhcm5pbmc6IG92ZXJmbG93 IGluIGltcGxpY2l0IGNvbnN0YW50IGNvbnZlcnNpb24gWy1Xb3ZlcmZsb3ddCiAgcmV0dXJuIGlv Y3RsKGZkLCBGSVRIQVcsIDApOwogIF4KICBDQ0xEICAgICBmc2ZyZWV6ZQogIENDICAgICAgIHN5 cy11dGlscy9mc3RyaW0ubwogIENDTEQgICAgIGZzdHJpbQogIENDICAgICAgIHN5cy11dGlscy9i bGtkaXNjYXJkLm8KICBDQ0xEICAgICBibGtkaXNjYXJkCiAgQ0MgICAgICAgc3lzLXV0aWxzL2xv c2V0dXAubwpzeXMtdXRpbHMvbG9zZXR1cC5jOiBJbiBmdW5jdGlvbiAncHJpbnRmX2xvb3BkZXYn OgpzeXMtdXRpbHMvbG9zZXR1cC5jOjEzOTozOiB3YXJuaW5nOiBmb3JtYXQgJyVsdScgZXhwZWN0 cyBhcmd1bWVudCBvZiB0eXBlICdsb25nIHVuc2lnbmVkIGludCcsIGJ1dCBhcmd1bWVudCA0IGhh cyB0eXBlICdpbm9fdCcgWy1XZm9ybWF0PV0KICAgbG9vcGN4dF9nZXRfZGV2aWNlKGxjKSwgKGlu dCkgZGV2LCBpbm8sIGZuYW1lKTsKICAgXgpzeXMtdXRpbHMvbG9zZXR1cC5jOiBJbiBmdW5jdGlv biAnc2V0X3R0X2RhdGEnOgpzeXMtdXRpbHMvbG9zZXR1cC5jOjI2OTo1OiB3YXJuaW5nOiBmb3Jt YXQgJyVqdScgZXhwZWN0cyBhcmd1bWVudCBvZiB0eXBlICd1aW50bWF4X3QnLCBidXQgYXJndW1l bnQgMyBoYXMgdHlwZSAnaW5vX3QnIFstV2Zvcm1hdD1dCiAgICAgeGFzcHJpbnRmKCZucCwgIiVq dSIsIGlubyk7CiAgICAgXgogIENDTEQgICAgIGxvc2V0dXAKICBDQyAgICAgICBzeXMtdXRpbHMv c3dhcG9uLXN3YXBvbi5vCiAgQ0MgICAgICAgc3lzLXV0aWxzL3N3YXBvbi1zd2Fwb24tY29tbW9u Lm8KICBDQ0xEICAgICBzd2Fwb24KICBDQyAgICAgICBzeXMtdXRpbHMvc3dhcG9mZi1zd2Fwb2Zm Lm8KICBDQyAgICAgICBzeXMtdXRpbHMvc3dhcG9mZi1zd2Fwb24tY29tbW9uLm8KICBDQ0xEICAg ICBzd2Fwb2ZmCiAgQ0MgICAgICAgc3lzLXV0aWxzL3Bpdm90X3Jvb3QubwogIENDTEQgICAgIHBp dm90X3Jvb3QKICBDQyAgICAgICBzeXMtdXRpbHMvc3dpdGNoX3Jvb3QubwogIENDTEQgICAgIHN3 aXRjaF9yb290CiAgQ0MgICAgICAgc3lzLXV0aWxzL2h3Y2xvY2subwpzeXMtdXRpbHMvaHdjbG9j ay5jOiBJbiBmdW5jdGlvbiAnc2V0X3N5c3RlbV9jbG9jayc6CnN5cy11dGlscy9od2Nsb2NrLmM6 NzQ4OjQ6IHdhcm5pbmc6IHBhc3NpbmcgYXJndW1lbnQgMiBvZiAnc2V0dGltZW9mZGF5JyBkaXNj YXJkcyAnY29uc3QnIHF1YWxpZmllciBmcm9tIHBvaW50ZXIgdGFyZ2V0IHR5cGUgW2VuYWJsZWQg YnkgZGVmYXVsdF0KICAgIHJjID0gc2V0dGltZW9mZGF5KCZ0diwgJnR6KTsKICAgIF4KSW4gZmls ZSBpbmNsdWRlZCBmcm9tIHN5cy11dGlscy9od2Nsb2NrLmM6Njk6MDoKL2luY2x1ZGUvc3lzL3Rp bWUuaDozNjo1OiBub3RlOiBleHBlY3RlZCAndm9pZCAqJyBidXQgYXJndW1lbnQgaXMgb2YgdHlw ZSAnY29uc3Qgc3RydWN0IHRpbWV6b25lIConCiBpbnQgc2V0dGltZW9mZGF5IChjb25zdCBzdHJ1 Y3QgdGltZXZhbCAqLCB2b2lkICopOwogICAgIF4Kc3lzLXV0aWxzL2h3Y2xvY2suYzogSW4gZnVu Y3Rpb24gJ3NldF9zeXN0ZW1fY2xvY2tfdGltZXpvbmUnOgpzeXMtdXRpbHMvaHdjbG9jay5jOjgz ODo0OiB3YXJuaW5nOiBwYXNzaW5nIGFyZ3VtZW50IDIgb2YgJ3NldHRpbWVvZmRheScgZGlzY2Fy ZHMgJ2NvbnN0JyBxdWFsaWZpZXIgZnJvbSBwb2ludGVyIHRhcmdldCB0eXBlIFtlbmFibGVkIGJ5 IGRlZmF1bHRdCiAgICByYyA9IHNldHRpbWVvZmRheSh0dl9udWxsLCAmdHpfdXRjKTsKICAgIF4K SW4gZmlsZSBpbmNsdWRlZCBmcm9tIHN5cy11dGlscy9od2Nsb2NrLmM6Njk6MDoKL2luY2x1ZGUv c3lzL3RpbWUuaDozNjo1OiBub3RlOiBleHBlY3RlZCAndm9pZCAqJyBidXQgYXJndW1lbnQgaXMg b2YgdHlwZSAnY29uc3Qgc3RydWN0IHRpbWV6b25lIConCiBpbnQgc2V0dGltZW9mZGF5IChjb25z dCBzdHJ1Y3QgdGltZXZhbCAqLCB2b2lkICopOwogICAgIF4Kc3lzLXV0aWxzL2h3Y2xvY2suYzo4 NDM6NDogd2FybmluZzogcGFzc2luZyBhcmd1bWVudCAyIG9mICdzZXR0aW1lb2ZkYXknIGRpc2Nh cmRzICdjb25zdCcgcXVhbGlmaWVyIGZyb20gcG9pbnRlciB0YXJnZXQgdHlwZSBbZW5hYmxlZCBi eSBkZWZhdWx0XQogICAgcmMgPSBzZXR0aW1lb2ZkYXkodHZfbnVsbCwgJnR6KTsKICAgIF4KSW4g ZmlsZSBpbmNsdWRlZCBmcm9tIHN5cy11dGlscy9od2Nsb2NrLmM6Njk6MDoKL2luY2x1ZGUvc3lz L3RpbWUuaDozNjo1OiBub3RlOiBleHBlY3RlZCAndm9pZCAqJyBidXQgYXJndW1lbnQgaXMgb2Yg dHlwZSAnY29uc3Qgc3RydWN0IHRpbWV6b25lIConCiBpbnQgc2V0dGltZW9mZGF5IChjb25zdCBz dHJ1Y3QgdGltZXZhbCAqLCB2b2lkICopOwogICAgIF4KICBDQyAgICAgICBzeXMtdXRpbHMvaHdj bG9jay1jbW9zLm8KSW4gZmlsZSBpbmNsdWRlZCBmcm9tIHN5cy11dGlscy9od2Nsb2NrLWNtb3Mu Yzo5NjowOgpzeXMtdXRpbHMvaHdjbG9jay5oOjMwOjU5OiB3YXJuaW5nOiAnc3RydWN0IHRpbWV2 YWwnIGRlY2xhcmVkIGluc2lkZSBwYXJhbWV0ZXIgbGlzdCBbZW5hYmxlZCBieSBkZWZhdWx0XQog ZXh0ZXJuIGRvdWJsZSB0aW1lX2RpZmYoc3RydWN0IHRpbWV2YWwgc3VidHJhaGVuZCwgc3RydWN0 IHRpbWV2YWwgc3VidHJhY3Rvcik7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgXgpzeXMtdXRpbHMvaHdjbG9jay5oOjMwOjU5OiB3YXJu aW5nOiBpdHMgc2NvcGUgaXMgb25seSB0aGlzIGRlZmluaXRpb24gb3IgZGVjbGFyYXRpb24sIHdo aWNoIGlzIHByb2JhYmx5IG5vdCB3aGF0IHlvdSB3YW50IFtlbmFibGVkIGJ5IGRlZmF1bHRdCiAg Q0MgICAgICAgc3lzLXV0aWxzL2h3Y2xvY2sta2QubwpJbiBmaWxlIGluY2x1ZGVkIGZyb20gc3lz LXV0aWxzL2h3Y2xvY2sta2QuYzo0OjA6CnN5cy11dGlscy9od2Nsb2NrLmg6MzA6NTk6IHdhcm5p bmc6ICdzdHJ1Y3QgdGltZXZhbCcgZGVjbGFyZWQgaW5zaWRlIHBhcmFtZXRlciBsaXN0IFtlbmFi bGVkIGJ5IGRlZmF1bHRdCiBleHRlcm4gZG91YmxlIHRpbWVfZGlmZihzdHJ1Y3QgdGltZXZhbCBz dWJ0cmFoZW5kLCBzdHJ1Y3QgdGltZXZhbCBzdWJ0cmFjdG9yKTsKICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBeCnN5cy11dGlscy9od2Ns b2NrLmg6MzA6NTk6IHdhcm5pbmc6IGl0cyBzY29wZSBpcyBvbmx5IHRoaXMgZGVmaW5pdGlvbiBv ciBkZWNsYXJhdGlvbiwgd2hpY2ggaXMgcHJvYmFibHkgbm90IHdoYXQgeW91IHdhbnQgW2VuYWJs ZWQgYnkgZGVmYXVsdF0KICBDQyAgICAgICBzeXMtdXRpbHMvaHdjbG9jay1ydGMubwpJbiBmaWxl IGluY2x1ZGVkIGZyb20gL2luY2x1ZGUvc3lzL2lvY3RsLmg6NzowLAogICAgICAgICAgICAgICAg IGZyb20gc3lzLXV0aWxzL2h3Y2xvY2stcnRjLmM6MTA6CnN5cy11dGlscy9od2Nsb2NrLXJ0Yy5j OiBJbiBmdW5jdGlvbiAnZG9fcnRjX3JlYWRfaW9jdGwnOgpzeXMtdXRpbHMvaHdjbG9jay1ydGMu Yzo4Njo0NTogd2FybmluZzogb3ZlcmZsb3cgaW4gaW1wbGljaXQgY29uc3RhbnQgY29udmVyc2lv biBbLVdvdmVyZmxvd10KICMgZGVmaW5lIFJUQ19SRF9USU1FIF9JT1IoJ3AnLCAweDA5LCBzdHJ1 Y3QgbGludXhfcnRjX3RpbWUpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIF4Kc3lzLXV0aWxzL2h3Y2xvY2stcnRjLmM6MTkyOjIyOiBub3RlOiBpbiBleHBhbnNp b24gb2YgbWFjcm8gJ1JUQ19SRF9USU1FJwogICByYyA9IGlvY3RsKHJ0Y19mZCwgUlRDX1JEX1RJ TUUsIHRtKTsKICAgICAgICAgICAgICAgICAgICAgIF4Kc3lzLXV0aWxzL2h3Y2xvY2stcnRjLmM6 IEluIGZ1bmN0aW9uICdnZXRfZXBvY2hfcnRjJzoKc3lzLXV0aWxzL2h3Y2xvY2stcnRjLmM6NDQw OjI6IHdhcm5pbmc6IG92ZXJmbG93IGluIGltcGxpY2l0IGNvbnN0YW50IGNvbnZlcnNpb24gWy1X b3ZlcmZsb3ddCiAgaWYgKGlvY3RsKHJ0Y19mZCwgUlRDX0VQT0NIX1JFQUQsIGVwb2NoX3ApID09 IC0xKSB7CiAgXgogIENDTEQgICAgIGh3Y2xvY2sKICBDQyAgICAgICBtaXNjLXV0aWxzL2Jsa2lk LWJsa2lkLm8KICBDQ0xEICAgICBibGtpZAogIENDICAgICAgIG1pc2MtdXRpbHMvZmluZGZzLWZp bmRmcy5vCiAgQ0NMRCAgICAgZmluZGZzCiAgQ0MgICAgICAgbWlzYy11dGlscy93aXBlZnMtd2lw ZWZzLm8KICBDQ0xEICAgICB3aXBlZnMKICBDQyAgICAgICBkaXNrLXV0aWxzL2ZzY2subWluaXgu bwpkaXNrLXV0aWxzL2ZzY2subWluaXguYzogSW4gZnVuY3Rpb24gJ2NoZWNrX2ZpbGUyJzoKZGlz ay11dGlscy9mc2NrLm1pbml4LmM6MTA1MToxMTogd2FybmluZzogZm9ybWF0ICclanUnIGV4cGVj dHMgYXJndW1lbnQgb2YgdHlwZSAndWludG1heF90JywgYnV0IGFyZ3VtZW50IDIgaGFzIHR5cGUg J2lub190JyBbLVdmb3JtYXQ9XQogICAgICAgICAgIGlub2RlLT5pX25saW5rcyk7CiAgICAgICAg ICAgXgogIENDTEQgICAgIGZzY2subWluaXgKICBDQyAgICAgICBkaXNrLXV0aWxzL21rZnMubWlu aXgubwogIENDTEQgICAgIG1rZnMubWluaXgKICBDQyAgICAgICBkaXNrLXV0aWxzL21rZnMubwog IENDTEQgICAgIG1rZnMKICBDQyAgICAgICBkaXNrLXV0aWxzL21rZnMuYmZzLm8KICBDQ0xEICAg ICBta2ZzLmJmcwogIENDICAgICAgIGRpc2stdXRpbHMvbWtzd2FwLW1rc3dhcC5vCiAgQ0NMRCAg ICAgbWtzd2FwCiAgQ0MgICAgICAgZGlzay11dGlscy9zd2FwbGFiZWwtc3dhcGxhYmVsLm8KICBD Q0xEICAgICBzd2FwbGFiZWwKICBDQyAgICAgICBkaXNrLXV0aWxzL2ZzY2stZnNjay5vCiAgQ0NM RCAgICAgZnNjawogIENDICAgICAgIGRpc2stdXRpbHMvcmF3Lm8KICBDQ0xEICAgICByYXcKICBD QyAgICAgICBkaXNrLXV0aWxzL2ZzY2suY3JhbWZzLm8KICBDQyAgICAgICBkaXNrLXV0aWxzL2Ny YW1mc19jb21tb24ubwogIENDTEQgICAgIGZzY2suY3JhbWZzCiAgQ0MgICAgICAgZGlzay11dGls cy9ta2ZzLmNyYW1mcy5vCiAgQ0NMRCAgICAgbWtmcy5jcmFtZnMKICBDQyAgICAgICBkaXNrLXV0 aWxzL2Jsb2NrZGV2Lm8KZGlzay11dGlscy9ibG9ja2Rldi5jOiBJbiBmdW5jdGlvbiAncmVwb3J0 X2RldmljZSc6CmRpc2stdXRpbHMvYmxvY2tkZXYuYzo0NTM6Njogd2FybmluZzogb3ZlcmZsb3cg aW4gaW1wbGljaXQgY29uc3RhbnQgY29udmVyc2lvbiBbLVdvdmVyZmxvd10KICAgICAgaW9jdGwo ZmQsIEJMS0JTWkdFVCwgJmJzeikgPT0gMCAmJgogICAgICBeCiAgQ0NMRCAgICAgYmxvY2tkZXYK ICBDQyAgICAgICBmZGlza3MvZmRpc2stZmRpc2subwogIENDICAgICAgIGZkaXNrcy9mZGlzay1m ZGlzay1hc2subwogIENDICAgICAgIGZkaXNrcy9mZGlzay1mZGlza2JzZGxhYmVsLm8KICBDQyAg ICAgICBmZGlza3MvZmRpc2stZmRpc2tkb3NsYWJlbC5vCiAgQ0MgICAgICAgZmRpc2tzL2ZkaXNr LWZkaXNrbWFjbGFiZWwubwogIENDICAgICAgIGZkaXNrcy9mZGlzay1mZGlza3NnaWxhYmVsLm8K ICBDQyAgICAgICBmZGlza3MvZmRpc2stZmRpc2tzdW5sYWJlbC5vCmZkaXNrcy9mZGlza3N1bmxh YmVsLmM6IEluIGZ1bmN0aW9uICdzdW5fdmVyaWZ5X2Rpc2tsYWJlbCc6CmZkaXNrcy9mZGlza3N1 bmxhYmVsLmM6NDU0OjQ6IHdhcm5pbmc6IHBhc3NpbmcgYXJndW1lbnQgNCBvZiAncXNvcnRfcicg ZnJvbSBpbmNvbXBhdGlibGUgcG9pbnRlciB0eXBlIFtlbmFibGVkIGJ5IGRlZmF1bHRdCiAgICB2 ZXJpZnlfc3VuX3N0YXJ0cyk7CiAgICBeCkluIGZpbGUgaW5jbHVkZWQgZnJvbSBmZGlza3MvZmRp c2tzdW5sYWJlbC5jOjE0OjA6Ci9pbmNsdWRlL3N0ZGxpYi5oOjU2OjY6IG5vdGU6IGV4cGVjdGVk ICdpbnQgKCopKHZvaWQgKiwgY29uc3Qgdm9pZCAqLCBjb25zdCB2b2lkICopJyBidXQgYXJndW1l bnQgaXMgb2YgdHlwZSAnaW50ICgqKShjb25zdCB2b2lkICosIGNvbnN0IHZvaWQgKiwgdm9pZCAq KScKIHZvaWQgcXNvcnRfciAodm9pZCAqLCBzaXplX3QsIHNpemVfdCwgY21wX3QgKiwgdm9pZCAq KTsKICAgICAgXgogIENDICAgICAgIGZkaXNrcy9mZGlzay1wYXJ0bmFtZS5vCiAgQ0NMRCAgICAg ZmRpc2sKICBDQyAgICAgICBmZGlza3MvcGFydG5hbWUubwogIENDICAgICAgIGZkaXNrcy9zZmRp c2subwogIENDTEQgICAgIHNmZGlzawogIENDICAgICAgIGZkaXNrcy9jZmRpc2stY2ZkaXNrLm8K ZmRpc2tzL2NmZGlzay5jOiBJbiBmdW5jdGlvbiAnZ2V0X3N0cmluZyc6CmZkaXNrcy9jZmRpc2su Yzo0NTY6Mjogd2FybmluZzogaW1wbGljaXQgZGVjbGFyYXRpb24gb2YgZnVuY3Rpb24gJ2dldF93 Y2gnIFstV2ltcGxpY2l0LWZ1bmN0aW9uLWRlY2xhcmF0aW9uXQogIGlmIChnZXRfd2NoKCZjKSA9 PSBFUlIpIHsKICBeCiAgQ0NMRCAgICAgY2ZkaXNrCiAgQ0MgICAgICAgc2NoZWR1dGlscy9jaHJ0 Lm8KICBDQ0xEICAgICBjaHJ0CiAgQ0MgICAgICAgc2NoZWR1dGlscy9pb25pY2UubwogIENDTEQg ICAgIGlvbmljZQogIENDICAgICAgIHRleHQtdXRpbHMvY29sLm8KICBDQ0xEICAgICBjb2wKICBD QyAgICAgICB0ZXh0LXV0aWxzL2NvbGNydC5vCiAgQ0NMRCAgICAgY29sY3J0CiAgQ0MgICAgICAg dGV4dC11dGlscy9jb2xybS5vCiAgQ0NMRCAgICAgY29scm0KICBDQyAgICAgICB0ZXh0LXV0aWxz L2NvbHVtbi5vCiAgQ0NMRCAgICAgY29sdW1uCiAgQ0MgICAgICAgdGV4dC11dGlscy9jb252Lm8K ICBDQyAgICAgICB0ZXh0LXV0aWxzL2Rpc3BsYXkubwogIENDICAgICAgIHRleHQtdXRpbHMvaGV4 ZHVtcC5vCiAgQ0MgICAgICAgdGV4dC11dGlscy9oZXhzeW50YXgubwogIENDICAgICAgIHRleHQt dXRpbHMvcGFyc2UubwogIENDTEQgICAgIGhleGR1bXAKICBDQyAgICAgICB0ZXh0LXV0aWxzL3Jl di5vCiAgQ0NMRCAgICAgcmV2CiAgQ0MgICAgICAgdGV4dC11dGlscy90YWlsZi5vCiAgQ0NMRCAg ICAgdGFpbGYKICBDQyAgICAgICB0ZXh0LXV0aWxzL3BnLm8KdGV4dC11dGlscy9wZy5jOiBJbiBm dW5jdGlvbiAncGdmaWxlJzoKdGV4dC11dGlscy9wZy5jOjEzNTI6MTM6IHdhcm5pbmc6IG1pc3Np bmcgc2VudGluZWwgaW4gZnVuY3Rpb24gY2FsbCBbLVdmb3JtYXQ9XQogICAgICAgICAgICAgY21k LmNtZGxpbmUgKyAxLCBOVUxMKTsKICAgICAgICAgICAgIF4KdGV4dC11dGlscy9wZy5jOjg4MDoy MTogd2FybmluZzogdmFyaWFibGUgJ2Zwb3MnIG1pZ2h0IGJlIGNsb2JiZXJlZCBieSAnbG9uZ2pt cCcgb3IgJ3Zmb3JrJyBbLVdjbG9iYmVyZWRdCiAgb2ZmX3QgcG9zLCBvbGRwb3MsIGZwb3M7CiAg ICAgICAgICAgICAgICAgICAgIF4KdGV4dC11dGlscy9wZy5jOjg5MToxMTogd2FybmluZzogdmFy aWFibGUgJ3NlYXJjaGNvdW50JyBtaWdodCBiZSBjbG9iYmVyZWQgYnkgJ2xvbmdqbXAnIG9yICd2 Zm9yaycgWy1XY2xvYmJlcmVkXQogIHVuc2lnbmVkIHNlYXJjaGNvdW50ID0gMDsKICAgICAgICAg ICBeCnRleHQtdXRpbHMvcGcuYzo4OTc6Njogd2FybmluZzogdmFyaWFibGUgJ25vYnVmJyBtaWdo dCBiZSBjbG9iYmVyZWQgYnkgJ2xvbmdqbXAnIG9yICd2Zm9yaycgWy1XY2xvYmJlcmVkXQogIGlu dCBub2J1ZiA9IDA7CiAgICAgIF4KICBDQ0xEICAgICBwZwogIENDICAgICAgIHRleHQtdXRpbHMv dWwubwogIENDTEQgICAgIHVsCiAgQ0MgICAgICAgdGVybS11dGlscy9zY3JpcHQubwogIENDTEQg ICAgIHNjcmlwdAogIENDICAgICAgIHRlcm0tdXRpbHMvc2NyaXB0cmVwbGF5Lm8KICBDQ0xEICAg ICBzY3JpcHRyZXBsYXkKICBDQyAgICAgICB0ZXJtLXV0aWxzL3NldHRlcm0ubwogIENDTEQgICAg IHNldHRlcm0KICBDQyAgICAgICB0ZXJtLXV0aWxzL3dhbGwtd2FsbC5vCiAgQ0MgICAgICAgdGVy bS11dGlscy93YWxsLXR0eW1zZy5vCiAgQ0NMRCAgICAgd2FsbAogIENDICAgICAgIHN5cy11dGls cy9mbG9jay5vCiAgQ0NMRCAgICAgZmxvY2sKICBDQyAgICAgICBzeXMtdXRpbHMvaXBjbWsubwog IENDTEQgICAgIGlwY21rCiAgQ0MgICAgICAgc3lzLXV0aWxzL2lwY3JtLm8KICBDQ0xEICAgICBp cGNybQogIENDICAgICAgIHN5cy11dGlscy9pcGNzLm8KICBDQyAgICAgICBzeXMtdXRpbHMvaXBj dXRpbHMubwogIENDTEQgICAgIGlwY3MKICBDQyAgICAgICBzeXMtdXRpbHMvcmVuaWNlLm8KICBD Q0xEICAgICByZW5pY2UKICBDQyAgICAgICBzeXMtdXRpbHMvc2V0c2lkLm8KICBDQ0xEICAgICBz ZXRzaWQKICBDQyAgICAgICBzeXMtdXRpbHMvY3l0dW5lLm8KICBDQ0xEICAgICBjeXR1bmUKICBD QyAgICAgICBzeXMtdXRpbHMvc2V0YXJjaC5vCiAgQ0NMRCAgICAgc2V0YXJjaAogIENDICAgICAg IHN5cy11dGlscy9wcmxpbWl0Lm8Kc3lzLXV0aWxzL3BybGltaXQuYzogSW4gZnVuY3Rpb24gJ2Rv X3BybGltaXQnOgpzeXMtdXRpbHMvcHJsaW1pdC5jOjM1Njo1OiB3YXJuaW5nOiBmb3JtYXQgJyVq dScgZXhwZWN0cyBhcmd1bWVudCBvZiB0eXBlICd1aW50bWF4X3QnLCBidXQgYXJndW1lbnQgMiBo YXMgdHlwZSAncmxpbV90JyBbLVdmb3JtYXQ9XQogICAgIHByaW50ZigiPCVqdSIsIG5ldy0+cmxp bV9jdXIpOwogICAgIF4Kc3lzLXV0aWxzL3BybGltaXQuYzozNjE6NTogd2FybmluZzogZm9ybWF0 ICclanUnIGV4cGVjdHMgYXJndW1lbnQgb2YgdHlwZSAndWludG1heF90JywgYnV0IGFyZ3VtZW50 IDIgaGFzIHR5cGUgJ3JsaW1fdCcgWy1XZm9ybWF0PV0KICAgICBwcmludGYoIjolanU+XG4iLCBu ZXctPnJsaW1fbWF4KTsKICAgICBeCiAgQ0NMRCAgICAgcHJsaW1pdAogIENDICAgICAgIHN5cy11 dGlscy9mYWxsb2NhdGUubwogIENDTEQgICAgIGZhbGxvY2F0ZQogIENDICAgICAgIHN5cy11dGls cy91bnNoYXJlLm8KICBDQ0xEICAgICB1bnNoYXJlCiAgQ0MgICAgICAgc3lzLXV0aWxzL25zZW50 ZXIubwogIENDTEQgICAgIG5zZW50ZXIKICBDQyAgICAgICBtaXNjLXV0aWxzL2NhbC5vCiAgQ0Mg ICAgICAgbGliL21ic2FsaWduLm8KICBDQyAgICAgICBsaWIvc3RydXRpbHMubwogIENDTEQgICAg IGNhbAogIENDICAgICAgIG1pc2MtdXRpbHMvbG9nZ2VyLm8KICBDQ0xEICAgICBsb2dnZXIKICBD QyAgICAgICBtaXNjLXV0aWxzL2xvb2subwogIENDTEQgICAgIGxvb2sKICBDQyAgICAgICBtaXNj LXV0aWxzL21jb29raWUubwogIENDICAgICAgIGxpYi9tZDUubwogIENDTEQgICAgIG1jb29raWUK ICBDQyAgICAgICBtaXNjLXV0aWxzL25hbWVpLm8KICBDQ0xEICAgICBuYW1laQogIENDICAgICAg IG1pc2MtdXRpbHMvd2hlcmVpcy5vCiAgQ0NMRCAgICAgd2hlcmVpcwogIENDICAgICAgIG1pc2Mt dXRpbHMvbHNsb2Nrcy1sc2xvY2tzLm8KbWlzYy11dGlscy9sc2xvY2tzLmM6IEluIGZ1bmN0aW9u ICdnZXRfZGV2X2lub2RlJzoKbWlzYy11dGlscy9sc2xvY2tzLmM6MjIyOjI6IHdhcm5pbmc6IGZv cm1hdCAnJWp1JyBleHBlY3RzIGFyZ3VtZW50IG9mIHR5cGUgJ3VpbnRtYXhfdCAqJywgYnV0IGFy Z3VtZW50IDUgaGFzIHR5cGUgJ2lub190IConIFstV2Zvcm1hdD1dCiAgc3NjYW5mKHN0ciwgIiUw Mng6JTAyeDolanUiLCAmbWFqLCAmbWluLCAmaW51bSk7CiAgXgogIENDTEQgICAgIGxzbG9ja3MK ICBDQyAgICAgICBtaXNjLXV0aWxzL3V1aWRnZW4tdXVpZGdlbi5vCiAgQ0NMRCAgICAgdXVpZGdl bgogIENDICAgICAgIG1pc2MtdXRpbHMvcmVuYW1lLm8KICBDQ0xEICAgICByZW5hbWUKICBDQyAg ICAgICBtaXNjLXV0aWxzL2dldG9wdC5vCiAgQ0NMRCAgICAgZ2V0b3B0CiAgQ0MgICAgICAgZGlz ay11dGlscy9pc29zaXplLm8KICBDQ0xEICAgICBpc29zaXplCiAgQ0MgICAgICAgc3lzLXV0aWxz L3JlYWRwcm9maWxlLm8KICBDQ0xEICAgICByZWFkcHJvZmlsZQogIENDICAgICAgIHN5cy11dGls cy9sZGF0dGFjaC5vCiAgQ0NMRCAgICAgbGRhdHRhY2gKICBDQyAgICAgICBzeXMtdXRpbHMvcnRj d2FrZS5vCiAgQ0NMRCAgICAgcnRjd2FrZQogIENDICAgICAgIG1pc2MtdXRpbHMvdXVpZGQtdXVp ZGQubwogIENDTEQgICAgIHV1aWRkCiAgQ0MgICAgICAgZGlzay11dGlscy9mZGZvcm1hdC5vCiAg Q0NMRCAgICAgZmRmb3JtYXQKICBDQyAgICAgICBkaXNrLXV0aWxzL3BhcnR4LXBhcnR4Lm8KICBD Q0xEICAgICBwYXJ0eAogIENDICAgICAgIGRpc2stdXRpbHMvYWRkcGFydC5vCiAgQ0NMRCAgICAg YWRkcGFydAogIENDICAgICAgIGRpc2stdXRpbHMvZGVscGFydC5vCiAgQ0NMRCAgICAgZGVscGFy dAogIENDICAgICAgIGRpc2stdXRpbHMvcmVzaXplcGFydC5vCiAgQ0NMRCAgICAgcmVzaXplcGFy dAogIEdFTiAgICAgIG1pc2MtdXRpbHMvdXVpZGQuOAogIEdFTiAgICAgIHN5cy11dGlscy9saW51 eDMyLjgKICBHRU4gICAgICBzeXMtdXRpbHMvbGludXg2NC44CiAgR0VOICAgICAgc3lzLXV0aWxz L2kzODYuOAogIEdFTiAgICAgIHN5cy11dGlscy94ODZfNjQuOAogIEdFTiAgICAgIGxpYnV1aWQv dXVpZC5wYwogIEdFTiAgICAgIGxpYmJsa2lkL2Jsa2lkLnBjCiAgR0VOICAgICAgbGlibW91bnQv bW91bnQucGMKbWFrZVsyXTogTGVhdmluZyBkaXJlY3RvcnkgYC91dGlsLWxpbnV4LTIuMjMnCm1h a2VbMV06IExlYXZpbmcgZGlyZWN0b3J5IGAvdXRpbC1saW51eC0yLjIzJwo= --bcaec5430bde2f1f2004dd91ade3--