From owner-freebsd-acpi@FreeBSD.ORG Sun Apr 22 10:24:23 2007 Return-Path: X-Original-To: freebsd-acpi@hub.freebsd.org Delivered-To: freebsd-acpi@hub.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id F02B016A403; Sun, 22 Apr 2007 10:24:23 +0000 (UTC) (envelope-from linimon@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [69.147.83.40]) by mx1.freebsd.org (Postfix) with ESMTP id C965D13C46C; Sun, 22 Apr 2007 10:24:23 +0000 (UTC) (envelope-from linimon@FreeBSD.org) Received: from freefall.freebsd.org (linimon@localhost [127.0.0.1]) by freefall.freebsd.org (8.13.4/8.13.4) with ESMTP id l3MAONi4057472; Sun, 22 Apr 2007 10:24:23 GMT (envelope-from linimon@freefall.freebsd.org) Received: (from linimon@localhost) by freefall.freebsd.org (8.13.4/8.13.4/Submit) id l3MAONJw057468; Sun, 22 Apr 2007 10:24:23 GMT (envelope-from linimon) Date: Sun, 22 Apr 2007 10:24:23 GMT From: Mark Linimon Message-Id: <200704221024.l3MAONJw057468@freefall.freebsd.org> To: nhockey@gmail.com, linimon@FreeBSD.org, freebsd-acpi@FreeBSD.org Cc: Subject: Re: kern/109207: ACPI Problem X-BeenThere: freebsd-acpi@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: ACPI and power management development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 22 Apr 2007 10:24:24 -0000 Old Synopsis: ACPI Promlem New Synopsis: ACPI Problem State-Changed-From-To: open->feedback State-Changed-By: linimon State-Changed-When: Sun Apr 22 10:22:47 UTC 2007 State-Changed-Why: To submitter: did the respondant's feedback fix this problem for you? http://www.freebsd.org/cgi/query-pr.cgi?pr=109207 From owner-freebsd-acpi@FreeBSD.ORG Sun Apr 22 15:50:15 2007 Return-Path: X-Original-To: freebsd-acpi@hub.freebsd.org Delivered-To: freebsd-acpi@hub.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id B53C016A400 for ; Sun, 22 Apr 2007 15:50:15 +0000 (UTC) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [69.147.83.40]) by mx1.freebsd.org (Postfix) with ESMTP id 9EE5113C483 for ; Sun, 22 Apr 2007 15:50:15 +0000 (UTC) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (gnats@localhost [127.0.0.1]) by freefall.freebsd.org (8.13.4/8.13.4) with ESMTP id l3MFoFXH099302 for ; Sun, 22 Apr 2007 15:50:15 GMT (envelope-from gnats@freefall.freebsd.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.13.4/8.13.4/Submit) id l3MFoF3t099301; Sun, 22 Apr 2007 15:50:15 GMT (envelope-from gnats) Date: Sun, 22 Apr 2007 15:50:15 GMT Message-Id: <200704221550.l3MFoF3t099301@freefall.freebsd.org> To: freebsd-acpi@FreeBSD.org From: Nicholas Hockey Cc: Subject: Re: kern/109207: ACPI Problem X-BeenThere: freebsd-acpi@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: Nicholas Hockey List-Id: ACPI and power management development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 22 Apr 2007 15:50:15 -0000 The following reply was made to PR kern/109207; it has been noted by GNATS. From: Nicholas Hockey To: bug-followup@FreeBSD.org, nhockey@gmail.com Cc: Subject: Re: kern/109207: ACPI Problem Date: Sun, 22 Apr 2007 11:21:43 -0400 --=-Mn4PmP1zT4lEMSmPgqOt Content-Type: text/plain Content-Transfer-Encoding: quoted-printable Occasionaly i still have a problem with on resume, but i bealive it's more closely related to acpi. This problem seems fixed in the most recent snapshot of RELENG_6. When i have more info as to the acpi lock, i will open a seperate ticket. --=-Mn4PmP1zT4lEMSmPgqOt Content-Type: application/pgp-signature; name=signature.asc Content-Description: This is a digitally signed message part -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.2 (FreeBSD) iD8DBQBGK32GocaaLAbJFykRArtPAJ9BE71dcZFp8xy3c5/384enz/QHpQCfSTjA yMKO1exEazqdnRwNaYNSPDM= =Rpla -----END PGP SIGNATURE----- --=-Mn4PmP1zT4lEMSmPgqOt-- From owner-freebsd-acpi@FreeBSD.ORG Mon Apr 23 11:08:20 2007 Return-Path: X-Original-To: freebsd-acpi@FreeBSD.org Delivered-To: freebsd-acpi@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id E8B6616A403 for ; Mon, 23 Apr 2007 11:08:20 +0000 (UTC) (envelope-from owner-bugmaster@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [69.147.83.40]) by mx1.freebsd.org (Postfix) with ESMTP id BC27813C43E for ; Mon, 23 Apr 2007 11:08:20 +0000 (UTC) (envelope-from owner-bugmaster@FreeBSD.org) Received: from freefall.freebsd.org (linimon@localhost [127.0.0.1]) by freefall.freebsd.org (8.13.4/8.13.4) with ESMTP id l3NB8KxG093024 for ; Mon, 23 Apr 2007 11:08:20 GMT (envelope-from owner-bugmaster@FreeBSD.org) Received: (from linimon@localhost) by freefall.freebsd.org (8.13.4/8.13.4/Submit) id l3NB8JaI093020 for freebsd-acpi@FreeBSD.org; Mon, 23 Apr 2007 11:08:19 GMT (envelope-from owner-bugmaster@FreeBSD.org) Date: Mon, 23 Apr 2007 11:08:19 GMT Message-Id: <200704231108.l3NB8JaI093020@freefall.freebsd.org> X-Authentication-Warning: freefall.freebsd.org: linimon set sender to owner-bugmaster@FreeBSD.org using -f From: FreeBSD bugmaster To: freebsd-acpi@FreeBSD.org Cc: Subject: Current problem reports assigned to you X-BeenThere: freebsd-acpi@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: ACPI and power management development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 23 Apr 2007 11:08:21 -0000 Current FreeBSD problem reports Critical problems Serious problems S Tracker Resp. Description -------------------------------------------------------------------------------- o i386/54756 acpi ACPI suspend/resume problem on CF-W2 laptop o i386/55661 acpi ACPI suspend/resume problem on ARMADA M700 o kern/55822 acpi No ACPI power off with SMP kernel o kern/56024 acpi ACPI suspend drains battery while in S3 o i386/64002 acpi acpi problem o i386/67273 acpi [hang] system hangs with acpi and Xfree o i386/72566 acpi ACPI, FreeBSD disables fan on Compaq Armada 1750 o i386/79080 acpi acpi thermal changes freezes HP nx6110 o i386/79081 acpi ACPI suspend/resume not working on HP nx6110 o kern/104625 acpi ACPI on ASUS A8N-32 SLI/ASUS P4P800 does not show ther o kern/106924 acpi ACPI resume returns g_vfs_done() errors and kernel pan 11 problems total. Non-critical problems S Tracker Resp. Description -------------------------------------------------------------------------------- o kern/67309 acpi zzz reboot computer (ACPI S3) o i386/69750 acpi Boot without ACPI failed on ASUS L5 o kern/73823 acpi [feature request] acpi / power-on by timer support o kern/76950 acpi ACPI wrongly blacklisted on Micron ClientPro 766Xi sys f kern/90871 acpi ACPI problems with ASUS A8N-VM-CSM o kern/97383 acpi Volume buttons on IBM Thinkpad crash system with ACPI o i386/97468 acpi [acpi] ACPI on ASUS A7V hangs on shutdown -p (power of o kern/98171 acpi [acpi] ACPI 1304 / 0501 errors on Acer 5024WLMi Laptop o i386/102343 acpi ACPI error o kern/103365 acpi [acpi] acpi poweroff doesn't work with geli device att o kern/108017 acpi [acpi]: Acer Aspire 5600 o kern/108488 acpi ACPI-1304: *** Error: Method execution failed o kern/108581 acpi sysctl: hw.acpi.cpu.cx_lowest: Invalid argument o kern/108695 acpi [ACPI]: Fatal trap 9: general protection fault when in f kern/109207 acpi ACPI Problem o kern/111591 acpi [acpi] dev.acpi_ibm.0.events returns I/O error (regres 16 problems total. From owner-freebsd-acpi@FreeBSD.ORG Mon Apr 23 13:05:49 2007 Return-Path: X-Original-To: freebsd-acpi@freebsd.org Delivered-To: freebsd-acpi@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id ABD4016A402 for ; Mon, 23 Apr 2007 13:05:49 +0000 (UTC) (envelope-from phoenix.lists@gmail.com) Received: from ug-out-1314.google.com (ug-out-1314.google.com [66.249.92.174]) by mx1.freebsd.org (Postfix) with ESMTP id D639113C455 for ; Mon, 23 Apr 2007 13:05:48 +0000 (UTC) (envelope-from phoenix.lists@gmail.com) Received: by ug-out-1314.google.com with SMTP id 71so1208258ugh for ; Mon, 23 Apr 2007 06:05:47 -0700 (PDT) DKIM-Signature: a=rsa-sha1; c=relaxed/relaxed; d=gmail.com; s=beta; h=domainkey-signature:received:received:message-id:date:from:organization:user-agent:mime-version:to:subject:x-enigmail-version:openpgp:face:content-type; b=HIximC18LVeZT0+RbJx2iUbduAp8YwJZHksXvn5yEDf+PBf2izFpQ+LdZubkh3NrqDa8Bs5/9+PdejB4mp+af1zQyRfirfDN+KbYHhQa4+yQ7JeqFHi5LElesFwrE3fh9U+1KLjNJMe/ygXUAJSm1y2OwDWrk2FzyKg1P2Sfhdg= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=beta; h=received:message-id:date:from:organization:user-agent:mime-version:to:subject:x-enigmail-version:openpgp:face:content-type; b=bGbXKPyUslkQ7+SSh239jGHDVkafL+asdPr0jNp0+hzK24U201mK2PFGOnRfy6TiKLABpfeG9bw17P1iSqFUKUSbgZIhbWXTIJ3lccieaZ4IWictSIOFkAWeojhmtgrJ9qjD/H2Met6RH9Gxqlt6GYBbROQ0++fa46SZoobrRCQ= Received: by 10.78.193.19 with SMTP id q19mr1022046huf.1177331907048; Mon, 23 Apr 2007 05:38:27 -0700 (PDT) Received: from sp0-host.lan ( [77.122.253.128]) by mx.google.com with ESMTP id m1sm11151002uge.2007.04.23.05.38.18; Mon, 23 Apr 2007 05:38:24 -0700 (PDT) Message-ID: <462CA8B9.4010002@gmail.com> Date: Mon, 23 Apr 2007 15:38:17 +0300 From: Simon Phoenix Organization: Phoenix Lab. User-Agent: Thunderbird 2.0.0.0 (X11/20070421) MIME-Version: 1.0 To: freebsd-acpi@FreeBSD.org X-Enigmail-Version: 0.95.0 OpenPGP: id=2569D30B; url=http://keyserver.veridis.com:11371/export?id=-8883115982484548853&created=1138842246000 Face: iVBORw0KGgoAAAANSUhEUgAAADAAAAAwAQMAAABtzGvEAAAABlBMVEUAAAD///+l2Z/dAAAA oUlEQVQY043QsQ2DMBCF4RdRpPQIbBIPlQFcZgxGsaUUlDcCdCkJosES8cXPFkJKFCk0n2z/dwXQ 8uGDWYUsBz7zEO0wLk2AwYgTyXVJdCAv7UlynahDsj7AZqyghV6ukiw0zSQAjidVXxkKEwcieiYr Gi6L3OkKiYgwUQl5Z4QwWWFqKXuyHQkH6tsfpU4/eJq73hA3M+KcL9u1DPivX/cGp2DdNlc2XdMA AAAASUVORK5CYII= Content-Type: multipart/mixed; boundary="------------010307000804000400020403" Cc: Subject: Re: kern/108581: sysctl: hw.acpi.cpu.cx_lowest: Invalid argument X-BeenThere: freebsd-acpi@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: ACPI and power management development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 23 Apr 2007 13:05:49 -0000 This is a multi-part message in MIME format. --------------010307000804000400020403 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit Hi. I've same error on P4 HT Prescott 3.0GHz, MB - Asus P800SE with 6.2-STABLE. Output of 'dmesg' and 'acpidump -t -d' in attachment. --------------010307000804000400020403 Content-Type: text/plain; name="acpidump" Content-Transfer-Encoding: base64 Content-Disposition: inline; filename="acpidump" LyoKICBSU0QgUFRSOiBPRU09QUNQSUFNLCBBQ1BJX1Jldj0yLjB4ICgyKQoJWFNEVD0weDFm ZmIwMTAwLCBsZW5ndGg9MzMsIGNrc3VtPTE5NgogKi8KLyoKICBYU0RUOiBMZW5ndGg9NjAs IFJldmlzaW9uPTEsIENoZWNrc3VtPTk4LAoJT0VNSUQ9QSBNIEksIE9FTSBUYWJsZSBJRD1P RU1YU0RULCBPRU0gUmV2aXNpb249MHgyMDAwNTE3LAoJQ3JlYXRvciBJRD1NU0ZULCBDcmVh dG9yIFJldmlzaW9uPTB4OTcKCUVudHJpZXM9eyAweDFmZmIwMjkwLCAweDFmZmIwMzkwLCAw eDFmZmMwMDQwIH0KICovCi8qCiAgRkFDUDogTGVuZ3RoPTI0NCwgUmV2aXNpb249MywgQ2hl Y2tzdW09MTEsCglPRU1JRD1BIE0gSSwgT0VNIFRhYmxlIElEPU9FTUZBQ1AsIE9FTSBSZXZp c2lvbj0weDIwMDA1MTcsCglDcmVhdG9yIElEPU1TRlQsIENyZWF0b3IgUmV2aXNpb249MHg5 NwogCUZBQ1M9MHgxZmZjMDAwMCwgRFNEVD0weDFmZmIwM2YwCglJTlRfTU9ERUw9QVBJQwoJ UHJlZmVycmVkX1BNX1Byb2ZpbGU9RGVza3RvcCAoMSkKCVNDSV9JTlQ9OQoJU01JX0NNRD0w eGIyLCBBQ1BJX0VOQUJMRT0weGUxLCBBQ1BJX0RJU0FCTEU9MHgxZSwgUzRCSU9TX1JFUT0w eDAKCVBTVEFURV9DTlQ9MHhlMgoJUE0xYV9FVlRfQkxLPTB4ODAwLTB4ODAzCglQTTFhX0NO VF9CTEs9MHg4MDQtMHg4MDUKCVBNX1RNUl9CTEs9MHg4MDgtMHg4MGIKCUdQRTBfQkxLPTB4 ODI4LTB4ODJmCglDU1RfQ05UPTB4ZTMKCVBfTFZMMl9MQVQ9MTAxIHVzLCBQX0xWTDNfTEFU PTEwMDEgdXMKCUZMVVNIX1NJWkU9MTAyNCwgRkxVU0hfU1RSSURFPTE2CglEVVRZX09GRlNF VD0xLCBEVVRZX1dJRFRIPTMKCURBWV9BTFJNPTEzLCBNT05fQUxSTT0wLCBDRU5UVVJZPTAK CUlBUENfQk9PVF9BUkNIPXtMRUdBQ1lfREVWLDgwNDJ9CglGbGFncz17V0JJTlZELFBST0Nf QzEsU0xQX0JVVFRPTixSVENfUzQsSEVBRExFU1N9CglYX0ZBQ1M9MHgxZmZjMDAwMCwgWF9E U0RUPTB4MWZmYjAzZjAKCVhfUE0xYV9FVlRfQkxLPTB4ODAwOjBbMzJdIChJTykKCVhfUE0x YV9DTlRfQkxLPTB4ODA0OjBbMTZdIChJTykKCVhfUE1fVE1SX0JMSz0weDgwODowWzMyXSAo SU8pCglYX0dQRTBfQkxLPTB4ODI4OjBbNjRdIChJTykKICovCi8qCiAgRkFDUzoJTGVuZ3Ro PTY0LCBId1NpZz0weDAwMDAwMDAwLCBGaXJtX1dha2VfVmVjPTB4MDAwMDAwMDAKCUdsb2Jh bF9Mb2NrPQoJRmxhZ3M9CglWZXJzaW9uPTEKICovCi8qCiAgRFNEVDogTGVuZ3RoPTE0MTc5 LCBSZXZpc2lvbj0xLCBDaGVja3N1bT0zMywKCU9FTUlEPUEwMDQ5LCBPRU0gVGFibGUgSUQ9 QTAwNDkwMDAsIE9FTSBSZXZpc2lvbj0weDAsCglDcmVhdG9yIElEPUlOVEwsIENyZWF0b3Ig UmV2aXNpb249MHgyMDAyMDI2CiAqLwovKgogIEFQSUM6IExlbmd0aD05MiwgUmV2aXNpb249 MSwgQ2hlY2tzdW09NzEsCglPRU1JRD1BIE0gSSwgT0VNIFRhYmxlIElEPU9FTUFQSUMsIE9F TSBSZXZpc2lvbj0weDIwMDA1MTcsCglDcmVhdG9yIElEPU1TRlQsIENyZWF0b3IgUmV2aXNp b249MHg5NwoJTG9jYWwgQVBJQyBBRERSPTB4ZmVlMDAwMDAKCUZsYWdzPXtQQy1BVH0KCglU eXBlPUxvY2FsIEFQSUMKCUFDUEkgQ1BVPTEKCUZsYWdzPXtFTkFCTEVEfQoJQVBJQyBJRD0w CgoJVHlwZT1Mb2NhbCBBUElDCglBQ1BJIENQVT0yCglGbGFncz17RU5BQkxFRH0KCUFQSUMg SUQ9MQoKCVR5cGU9SU8gQVBJQwoJQVBJQyBJRD0yCglJTlQgQkFTRT0wCglBRERSPTB4MDAw MDAwMDBmZWMwMDAwMAoKCVR5cGU9SU5UIE92ZXJyaWRlCglCVVM9MAoJSVJRPTAKCUlOVFI9 MgoJRmxhZ3M9e1BvbGFyaXR5PWNvbmZvcm1pbmcsIFRyaWdnZXI9Y29uZm9ybWluZ30KCglU eXBlPUlOVCBPdmVycmlkZQoJQlVTPTAKCUlSUT05CglJTlRSPTkKCUZsYWdzPXtQb2xhcml0 eT1hY3RpdmUtaGksIFRyaWdnZXI9bGV2ZWx9CiAqLwovKgogKiBJbnRlbCBBQ1BJIENvbXBv bmVudCBBcmNoaXRlY3R1cmUKICogQU1MIERpc2Fzc2VtYmxlciB2ZXJzaW9uIDIwMDQxMTE5 CiAqCiAqIERpc2Fzc2VtYmx5IG9mIC90bXAvYWNwaWR1bXAuWlYwTGw4LCBNb24gQXByIDIz IDE1OjM1OjQyIDIwMDcKICovCkRlZmluaXRpb25CbG9jayAoIkRTRFQuYW1sIiwgIkRTRFQi LCAxLCAiQTAwNDkiLCAiQTAwNDkwMDAiLCAwKQp7CiAgICBPcGVyYXRpb25SZWdpb24gKEJJ T1MsIFN5c3RlbU1lbW9yeSwgMHgxRkZDMDA2NCwgMHhGRikKICAgIEZpZWxkIChCSU9TLCBC eXRlQWNjLCBOb0xvY2ssIFByZXNlcnZlKQogICAgewogICAgICAgIFNTMSwgICAgMSwgCiAg ICAgICAgU1MyLCAgICAxLCAKICAgICAgICBTUzMsICAgIDEsIAogICAgICAgIFNTNCwgICAg MSwgCiAgICAgICAgT2Zmc2V0ICgweDAxKSwgCiAgICAgICAgSU9TVCwgICAxNiwgCiAgICAg ICAgVE9QTSwgICAzMiwgCiAgICAgICAgUk9NUywgICAzMiwgCiAgICAgICAgTUcxQiwgICAz MiwgCiAgICAgICAgTUcxTCwgICAzMiwgCiAgICAgICAgTUcyQiwgICAzMiwgCiAgICAgICAg TUcyTCwgICAzMgogICAgfQoKICAgIE5hbWUgKElPMUIsIDB4MDY4MCkKICAgIE5hbWUgKElP MUwsIDB4ODApCiAgICBOYW1lIChTUElPLCAweDJFKQogICAgTmFtZSAoQVBDQiwgMHhGRUMw MDAwMCkKICAgIE5hbWUgKEFQQ0wsIDB4MTAwMCkKICAgIE5hbWUgKFBNMzAsIDB4MDgzMCkK ICAgIE5hbWUgKEFDUEgsIDB4REUpCiAgICBOYW1lIChTVVNXLCAweEZGKQogICAgTmFtZSAo UE1CUywgMHgwODAwKQogICAgTmFtZSAoUE1MTiwgMHg4MCkKICAgIE5hbWUgKEdQQlMsIDB4 MDQ4MCkKICAgIE5hbWUgKEdQTE4sIDB4NDApCiAgICBOYW1lIChTTUJTLCAweDAwKQogICAg TmFtZSAoU01CTCwgMHgyMCkKICAgIE1ldGhvZCAoUlJJTywgNCwgTm90U2VyaWFsaXplZCkK ICAgIHsKICAgICAgICBTdG9yZSAoIlJSSU8iLCBEZWJ1ZykKICAgIH0KCiAgICBNZXRob2Qg KFJETUEsIDMsIE5vdFNlcmlhbGl6ZWQpCiAgICB7CiAgICAgICAgU3RvcmUgKCJyRE1BIiwg RGVidWcpCiAgICB9CgogICAgTmFtZSAoUElDTSwgMHgwMCkKICAgIE1ldGhvZCAoX1BJQywg MSwgTm90U2VyaWFsaXplZCkKICAgIHsKICAgICAgICBJZiAoQXJnMCkKICAgICAgICB7CiAg ICAgICAgICAgIFN0b3JlICgweEFBLCBEQkc4KQogICAgICAgIH0KICAgICAgICBFbHNlCiAg ICAgICAgewogICAgICAgICAgICBTdG9yZSAoMHhBQywgREJHOCkKICAgICAgICB9CgogICAg ICAgIFN0b3JlIChBcmcwLCBQSUNNKQogICAgfQoKICAgIE5hbWUgKE9TVlIsIE9uZXMpCiAg ICBNZXRob2QgKE9TRkwsIDAsIE5vdFNlcmlhbGl6ZWQpCiAgICB7CiAgICAgICAgSWYgKExO b3QgKExFcXVhbCAoT1NWUiwgT25lcykpKQogICAgICAgIHsKICAgICAgICAgICAgUmV0dXJu IChPU1ZSKQogICAgICAgIH0KCiAgICAgICAgSWYgKExFcXVhbCAoUElDTSwgMHgwMCkpCiAg ICAgICAgewogICAgICAgICAgICBTdG9yZSAoMHhBQywgREJHOCkKICAgICAgICB9CgogICAg ICAgIFN0b3JlICgweDAxLCBPU1ZSKQogICAgICAgIElmIChNQ1RIIChcX09TLCAiTWljcm9z b2Z0IFdpbmRvd3MgTlQiKSkKICAgICAgICB7CiAgICAgICAgICAgIFN0b3JlICgweDAwLCBP U1ZSKQogICAgICAgIH0KICAgICAgICBFbHNlCiAgICAgICAgewogICAgICAgICAgICBJZiAo TUNUSCAoXF9PUywgIk1pY3Jvc29mdCBXaW5kb3dzTUU6IE1pbGxlbm5pdW0gRWRpdGlvbiIp KQogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICBTdG9yZSAoMHgwMiwgT1NWUikKICAg ICAgICAgICAgfQogICAgICAgIH0KCiAgICAgICAgUmV0dXJuIChPU1ZSKQogICAgfQoKICAg IE1ldGhvZCAoTUNUSCwgMiwgTm90U2VyaWFsaXplZCkKICAgIHsKICAgICAgICBJZiAoTExl c3MgKFNpemVPZiAoQXJnMCksIFNpemVPZiAoQXJnMSkpKQogICAgICAgIHsKICAgICAgICAg ICAgUmV0dXJuIChaZXJvKQogICAgICAgIH0KCiAgICAgICAgQWRkIChTaXplT2YgKEFyZzAp LCAweDAxLCBMb2NhbDApCiAgICAgICAgTmFtZSAoQlVGMCwgQnVmZmVyIChMb2NhbDApIHt9 KQogICAgICAgIE5hbWUgKEJVRjEsIEJ1ZmZlciAoTG9jYWwwKSB7fSkKICAgICAgICBTdG9y ZSAoQXJnMCwgQlVGMCkKICAgICAgICBTdG9yZSAoQXJnMSwgQlVGMSkKICAgICAgICBXaGls ZSAoTG9jYWwwKQogICAgICAgIHsKICAgICAgICAgICAgRGVjcmVtZW50IChMb2NhbDApCiAg ICAgICAgICAgIElmIChMTm90IChMRXF1YWwgKERlcmVmT2YgKEluZGV4IChCVUYwLCBMb2Nh bDApKSwgRGVyZWZPZiAoSW5kZXggKEJVRjEsIExvY2FsMCkpKSkpCiAgICAgICAgICAgIHsK ICAgICAgICAgICAgICAgIFJldHVybiAoWmVybykKICAgICAgICAgICAgfQogICAgICAgIH0K CiAgICAgICAgUmV0dXJuIChPbmUpCiAgICB9CgogICAgTWV0aG9kIChHUFJXLCAyLCBOb3RT ZXJpYWxpemVkKQogICAgewogICAgICAgIE5hbWUgKFBSV1AsIFBhY2thZ2UgKDB4MDIpCiAg ICAgICAgewogICAgICAgICAgICAweDAwLCAKICAgICAgICAgICAgMHgwMAogICAgICAgIH0p CiAgICAgICAgU3RvcmUgKEFyZzAsIEluZGV4IChQUldQLCAweDAwKSkKICAgICAgICBTdG9y ZSAoQXJnMSwgSW5kZXggKFBSV1AsIDB4MDEpKQogICAgICAgIFN0b3JlICgweDAwLCBMb2Nh bDApCiAgICAgICAgT3IgKExvY2FsMCwgU2hpZnRMZWZ0IChTUzEsIDB4MDEpLCBMb2NhbDAp CiAgICAgICAgT3IgKExvY2FsMCwgU2hpZnRMZWZ0IChTUzIsIDB4MDIpLCBMb2NhbDApCiAg ICAgICAgT3IgKExvY2FsMCwgU2hpZnRMZWZ0IChTUzMsIDB4MDMpLCBMb2NhbDApCiAgICAg ICAgT3IgKExvY2FsMCwgU2hpZnRMZWZ0IChTUzQsIDB4MDQpLCBMb2NhbDApCiAgICAgICAg SWYgKEFuZCAoU2hpZnRMZWZ0ICgweDAxLCBBcmcxKSwgTG9jYWwwKSkge30KICAgICAgICBF bHNlCiAgICAgICAgewogICAgICAgICAgICBTaGlmdFJpZ2h0IChMb2NhbDAsIDB4MDEsIExv Y2FsMCkKICAgICAgICAgICAgSWYgKExPciAoTEVxdWFsIChPU0ZMICgpLCAweDAxKSwgTEVx dWFsIChPU0ZMICgpLCAweDAyKSkpCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIEZp bmRTZXRMZWZ0Qml0IChMb2NhbDAsIEluZGV4IChQUldQLCAweDAxKSkKICAgICAgICAgICAg fQogICAgICAgICAgICBFbHNlCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIEZpbmRT ZXRSaWdodEJpdCAoTG9jYWwwLCBJbmRleCAoUFJXUCwgMHgwMSkpCiAgICAgICAgICAgIH0K ICAgICAgICB9CgogICAgICAgIFJldHVybiAoUFJXUCkKICAgIH0KCiAgICBOYW1lIChXQUtQ LCBQYWNrYWdlICgweDAyKQogICAgewogICAgICAgIDB4MDAsIAogICAgICAgIDB4MDAKICAg IH0pCiAgICBPcGVyYXRpb25SZWdpb24gKERFQjAsIFN5c3RlbUlPLCAweDgwLCAweDAxKQog ICAgRmllbGQgKERFQjAsIEJ5dGVBY2MsIE5vTG9jaywgUHJlc2VydmUpCiAgICB7CiAgICAg ICAgREJHOCwgICA4CiAgICB9CgogICAgT3BlcmF0aW9uUmVnaW9uIChERUIxLCBTeXN0ZW1J TywgMHg5MCwgMHgwMikKICAgIEZpZWxkIChERUIxLCBXb3JkQWNjLCBOb0xvY2ssIFByZXNl cnZlKQogICAgewogICAgICAgIERCRzksICAgMTYKICAgIH0KCiAgICBTY29wZSAoXF9QUikK ICAgIHsKICAgICAgICBQcm9jZXNzb3IgKENQVTEsIDB4MDEsIDB4MDAwMDAwMDAsIDB4MDAp IHt9CiAgICAgICAgUHJvY2Vzc29yIChDUFUyLCAweDAyLCAweDAwMDAwMDAwLCAweDAwKSB7 fQogICAgfQoKICAgIFNjb3BlIChcX1NCKQogICAgewogICAgICAgIE5hbWUgKFBSMDQsIFBh Y2thZ2UgKDB4MTgpCiAgICAgICAgewogICAgICAgICAgICBQYWNrYWdlICgweDA0KQogICAg ICAgICAgICB7CiAgICAgICAgICAgICAgICAweDAwMDhGRkZGLCAKICAgICAgICAgICAgICAg IDB4MDAsIAogICAgICAgICAgICAgICAgTE5LRSwgCiAgICAgICAgICAgICAgICAweDAwCiAg ICAgICAgICAgIH0sIAoKICAgICAgICAgICAgUGFja2FnZSAoMHgwNCkKICAgICAgICAgICAg ewogICAgICAgICAgICAgICAgMHgwMDA5RkZGRiwgCiAgICAgICAgICAgICAgICAweDAwLCAK ICAgICAgICAgICAgICAgIExOS0YsIAogICAgICAgICAgICAgICAgMHgwMAogICAgICAgICAg ICB9LCAKCiAgICAgICAgICAgIFBhY2thZ2UgKDB4MDQpCiAgICAgICAgICAgIHsKICAgICAg ICAgICAgICAgIDB4MDAwOUZGRkYsIAogICAgICAgICAgICAgICAgMHgwMSwgCiAgICAgICAg ICAgICAgICBMTktHLCAKICAgICAgICAgICAgICAgIDB4MDAKICAgICAgICAgICAgfSwgCgog ICAgICAgICAgICBQYWNrYWdlICgweDA0KQogICAgICAgICAgICB7CiAgICAgICAgICAgICAg ICAweDAwMDlGRkZGLCAKICAgICAgICAgICAgICAgIDB4MDIsIAogICAgICAgICAgICAgICAg TE5LSCwgCiAgICAgICAgICAgICAgICAweDAwCiAgICAgICAgICAgIH0sIAoKICAgICAgICAg ICAgUGFja2FnZSAoMHgwNCkKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgMHgwMDA5 RkZGRiwgCiAgICAgICAgICAgICAgICAweDAzLCAKICAgICAgICAgICAgICAgIExOS0UsIAog ICAgICAgICAgICAgICAgMHgwMAogICAgICAgICAgICB9LCAKCiAgICAgICAgICAgIFBhY2th Z2UgKDB4MDQpCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIDB4MDAwQUZGRkYsIAog ICAgICAgICAgICAgICAgMHgwMCwgCiAgICAgICAgICAgICAgICBMTktHLCAKICAgICAgICAg ICAgICAgIDB4MDAKICAgICAgICAgICAgfSwgCgogICAgICAgICAgICBQYWNrYWdlICgweDA0 KQogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAweDAwMEFGRkZGLCAKICAgICAgICAg ICAgICAgIDB4MDEsIAogICAgICAgICAgICAgICAgTE5LSCwgCiAgICAgICAgICAgICAgICAw eDAwCiAgICAgICAgICAgIH0sIAoKICAgICAgICAgICAgUGFja2FnZSAoMHgwNCkKICAgICAg ICAgICAgewogICAgICAgICAgICAgICAgMHgwMDBBRkZGRiwgCiAgICAgICAgICAgICAgICAw eDAyLCAKICAgICAgICAgICAgICAgIExOS0UsIAogICAgICAgICAgICAgICAgMHgwMAogICAg ICAgICAgICB9LCAKCiAgICAgICAgICAgIFBhY2thZ2UgKDB4MDQpCiAgICAgICAgICAgIHsK ICAgICAgICAgICAgICAgIDB4MDAwQUZGRkYsIAogICAgICAgICAgICAgICAgMHgwMywgCiAg ICAgICAgICAgICAgICBMTktGLCAKICAgICAgICAgICAgICAgIDB4MDAKICAgICAgICAgICAg fSwgCgogICAgICAgICAgICBQYWNrYWdlICgweDA0KQogICAgICAgICAgICB7CiAgICAgICAg ICAgICAgICAweDAwMEJGRkZGLCAKICAgICAgICAgICAgICAgIDB4MDAsIAogICAgICAgICAg ICAgICAgTE5LSCwgCiAgICAgICAgICAgICAgICAweDAwCiAgICAgICAgICAgIH0sIAoKICAg ICAgICAgICAgUGFja2FnZSAoMHgwNCkKICAgICAgICAgICAgewogICAgICAgICAgICAgICAg MHgwMDBCRkZGRiwgCiAgICAgICAgICAgICAgICAweDAxLCAKICAgICAgICAgICAgICAgIExO S0UsIAogICAgICAgICAgICAgICAgMHgwMAogICAgICAgICAgICB9LCAKCiAgICAgICAgICAg IFBhY2thZ2UgKDB4MDQpCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIDB4MDAwQkZG RkYsIAogICAgICAgICAgICAgICAgMHgwMiwgCiAgICAgICAgICAgICAgICBMTktGLCAKICAg ICAgICAgICAgICAgIDB4MDAKICAgICAgICAgICAgfSwgCgogICAgICAgICAgICBQYWNrYWdl ICgweDA0KQogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAweDAwMEJGRkZGLCAKICAg ICAgICAgICAgICAgIDB4MDMsIAogICAgICAgICAgICAgICAgTE5LRywgCiAgICAgICAgICAg ICAgICAweDAwCiAgICAgICAgICAgIH0sIAoKICAgICAgICAgICAgUGFja2FnZSAoMHgwNCkK ICAgICAgICAgICAgewogICAgICAgICAgICAgICAgMHgwMDBDRkZGRiwgCiAgICAgICAgICAg ICAgICAweDAwLCAKICAgICAgICAgICAgICAgIExOS0UsIAogICAgICAgICAgICAgICAgMHgw MAogICAgICAgICAgICB9LCAKCiAgICAgICAgICAgIFBhY2thZ2UgKDB4MDQpCiAgICAgICAg ICAgIHsKICAgICAgICAgICAgICAgIDB4MDAwQ0ZGRkYsIAogICAgICAgICAgICAgICAgMHgw MSwgCiAgICAgICAgICAgICAgICBMTktGLCAKICAgICAgICAgICAgICAgIDB4MDAKICAgICAg ICAgICAgfSwgCgogICAgICAgICAgICBQYWNrYWdlICgweDA0KQogICAgICAgICAgICB7CiAg ICAgICAgICAgICAgICAweDAwMENGRkZGLCAKICAgICAgICAgICAgICAgIDB4MDIsIAogICAg ICAgICAgICAgICAgTE5LRywgCiAgICAgICAgICAgICAgICAweDAwCiAgICAgICAgICAgIH0s IAoKICAgICAgICAgICAgUGFja2FnZSAoMHgwNCkKICAgICAgICAgICAgewogICAgICAgICAg ICAgICAgMHgwMDBDRkZGRiwgCiAgICAgICAgICAgICAgICAweDAzLCAKICAgICAgICAgICAg ICAgIExOS0gsIAogICAgICAgICAgICAgICAgMHgwMAogICAgICAgICAgICB9LCAKCiAgICAg ICAgICAgIFBhY2thZ2UgKDB4MDQpCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIDB4 MDAwREZGRkYsIAogICAgICAgICAgICAgICAgMHgwMCwgCiAgICAgICAgICAgICAgICBMTktG LCAKICAgICAgICAgICAgICAgIDB4MDAKICAgICAgICAgICAgfSwgCgogICAgICAgICAgICBQ YWNrYWdlICgweDA0KQogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAweDAwMERGRkZG LCAKICAgICAgICAgICAgICAgIDB4MDEsIAogICAgICAgICAgICAgICAgTE5LRywgCiAgICAg ICAgICAgICAgICAweDAwCiAgICAgICAgICAgIH0sIAoKICAgICAgICAgICAgUGFja2FnZSAo MHgwNCkKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgMHgwMDBERkZGRiwgCiAgICAg ICAgICAgICAgICAweDAyLCAKICAgICAgICAgICAgICAgIExOS0gsIAogICAgICAgICAgICAg ICAgMHgwMAogICAgICAgICAgICB9LCAKCiAgICAgICAgICAgIFBhY2thZ2UgKDB4MDQpCiAg ICAgICAgICAgIHsKICAgICAgICAgICAgICAgIDB4MDAwREZGRkYsIAogICAgICAgICAgICAg ICAgMHgwMywgCiAgICAgICAgICAgICAgICBMTktFLCAKICAgICAgICAgICAgICAgIDB4MDAK ICAgICAgICAgICAgfSwgCgogICAgICAgICAgICBQYWNrYWdlICgweDA0KQogICAgICAgICAg ICB7CiAgICAgICAgICAgICAgICAweDAwMDNGRkZGLCAKICAgICAgICAgICAgICAgIDB4MDAs IAogICAgICAgICAgICAgICAgTE5LRSwgCiAgICAgICAgICAgICAgICAweDAwCiAgICAgICAg ICAgIH0sIAoKICAgICAgICAgICAgUGFja2FnZSAoMHgwNCkKICAgICAgICAgICAgewogICAg ICAgICAgICAgICAgMHgwMDA0RkZGRiwgCiAgICAgICAgICAgICAgICAweDAwLCAKICAgICAg ICAgICAgICAgIExOS0gsIAogICAgICAgICAgICAgICAgMHgwMAogICAgICAgICAgICB9LCAK CiAgICAgICAgICAgIFBhY2thZ2UgKDB4MDQpCiAgICAgICAgICAgIHsKICAgICAgICAgICAg ICAgIDB4MDAwNUZGRkYsIAogICAgICAgICAgICAgICAgMHgwMCwgCiAgICAgICAgICAgICAg ICBMTktHLCAKICAgICAgICAgICAgICAgIDB4MDAKICAgICAgICAgICAgfQogICAgICAgIH0p CiAgICAgICAgTmFtZSAoQVIwNCwgUGFja2FnZSAoMHgxOCkKICAgICAgICB7CiAgICAgICAg ICAgIFBhY2thZ2UgKDB4MDQpCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIDB4MDAw OEZGRkYsIAogICAgICAgICAgICAgICAgMHgwMCwgCiAgICAgICAgICAgICAgICAweDAwLCAK ICAgICAgICAgICAgICAgIDB4MTQKICAgICAgICAgICAgfSwgCgogICAgICAgICAgICBQYWNr YWdlICgweDA0KQogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAweDAwMDlGRkZGLCAK ICAgICAgICAgICAgICAgIDB4MDAsIAogICAgICAgICAgICAgICAgMHgwMCwgCiAgICAgICAg ICAgICAgICAweDE1CiAgICAgICAgICAgIH0sIAoKICAgICAgICAgICAgUGFja2FnZSAoMHgw NCkKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgMHgwMDA5RkZGRiwgCiAgICAgICAg ICAgICAgICAweDAxLCAKICAgICAgICAgICAgICAgIDB4MDAsIAogICAgICAgICAgICAgICAg MHgxNgogICAgICAgICAgICB9LCAKCiAgICAgICAgICAgIFBhY2thZ2UgKDB4MDQpCiAgICAg ICAgICAgIHsKICAgICAgICAgICAgICAgIDB4MDAwOUZGRkYsIAogICAgICAgICAgICAgICAg MHgwMiwgCiAgICAgICAgICAgICAgICAweDAwLCAKICAgICAgICAgICAgICAgIDB4MTcKICAg ICAgICAgICAgfSwgCgogICAgICAgICAgICBQYWNrYWdlICgweDA0KQogICAgICAgICAgICB7 CiAgICAgICAgICAgICAgICAweDAwMDlGRkZGLCAKICAgICAgICAgICAgICAgIDB4MDMsIAog ICAgICAgICAgICAgICAgMHgwMCwgCiAgICAgICAgICAgICAgICAweDE0CiAgICAgICAgICAg IH0sIAoKICAgICAgICAgICAgUGFja2FnZSAoMHgwNCkKICAgICAgICAgICAgewogICAgICAg ICAgICAgICAgMHgwMDBBRkZGRiwgCiAgICAgICAgICAgICAgICAweDAwLCAKICAgICAgICAg ICAgICAgIDB4MDAsIAogICAgICAgICAgICAgICAgMHgxNgogICAgICAgICAgICB9LCAKCiAg ICAgICAgICAgIFBhY2thZ2UgKDB4MDQpCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAg IDB4MDAwQUZGRkYsIAogICAgICAgICAgICAgICAgMHgwMSwgCiAgICAgICAgICAgICAgICAw eDAwLCAKICAgICAgICAgICAgICAgIDB4MTcKICAgICAgICAgICAgfSwgCgogICAgICAgICAg ICBQYWNrYWdlICgweDA0KQogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAweDAwMEFG RkZGLCAKICAgICAgICAgICAgICAgIDB4MDIsIAogICAgICAgICAgICAgICAgMHgwMCwgCiAg ICAgICAgICAgICAgICAweDE0CiAgICAgICAgICAgIH0sIAoKICAgICAgICAgICAgUGFja2Fn ZSAoMHgwNCkKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgMHgwMDBBRkZGRiwgCiAg ICAgICAgICAgICAgICAweDAzLCAKICAgICAgICAgICAgICAgIDB4MDAsIAogICAgICAgICAg ICAgICAgMHgxNQogICAgICAgICAgICB9LCAKCiAgICAgICAgICAgIFBhY2thZ2UgKDB4MDQp CiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIDB4MDAwQkZGRkYsIAogICAgICAgICAg ICAgICAgMHgwMCwgCiAgICAgICAgICAgICAgICAweDAwLCAKICAgICAgICAgICAgICAgIDB4 MTcKICAgICAgICAgICAgfSwgCgogICAgICAgICAgICBQYWNrYWdlICgweDA0KQogICAgICAg ICAgICB7CiAgICAgICAgICAgICAgICAweDAwMEJGRkZGLCAKICAgICAgICAgICAgICAgIDB4 MDEsIAogICAgICAgICAgICAgICAgMHgwMCwgCiAgICAgICAgICAgICAgICAweDE0CiAgICAg ICAgICAgIH0sIAoKICAgICAgICAgICAgUGFja2FnZSAoMHgwNCkKICAgICAgICAgICAgewog ICAgICAgICAgICAgICAgMHgwMDBCRkZGRiwgCiAgICAgICAgICAgICAgICAweDAyLCAKICAg ICAgICAgICAgICAgIDB4MDAsIAogICAgICAgICAgICAgICAgMHgxNQogICAgICAgICAgICB9 LCAKCiAgICAgICAgICAgIFBhY2thZ2UgKDB4MDQpCiAgICAgICAgICAgIHsKICAgICAgICAg ICAgICAgIDB4MDAwQkZGRkYsIAogICAgICAgICAgICAgICAgMHgwMywgCiAgICAgICAgICAg ICAgICAweDAwLCAKICAgICAgICAgICAgICAgIDB4MTYKICAgICAgICAgICAgfSwgCgogICAg ICAgICAgICBQYWNrYWdlICgweDA0KQogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAw eDAwMENGRkZGLCAKICAgICAgICAgICAgICAgIDB4MDAsIAogICAgICAgICAgICAgICAgMHgw MCwgCiAgICAgICAgICAgICAgICAweDE0CiAgICAgICAgICAgIH0sIAoKICAgICAgICAgICAg UGFja2FnZSAoMHgwNCkKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgMHgwMDBDRkZG RiwgCiAgICAgICAgICAgICAgICAweDAxLCAKICAgICAgICAgICAgICAgIDB4MDAsIAogICAg ICAgICAgICAgICAgMHgxNQogICAgICAgICAgICB9LCAKCiAgICAgICAgICAgIFBhY2thZ2Ug KDB4MDQpCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIDB4MDAwQ0ZGRkYsIAogICAg ICAgICAgICAgICAgMHgwMiwgCiAgICAgICAgICAgICAgICAweDAwLCAKICAgICAgICAgICAg ICAgIDB4MTYKICAgICAgICAgICAgfSwgCgogICAgICAgICAgICBQYWNrYWdlICgweDA0KQog ICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAweDAwMENGRkZGLCAKICAgICAgICAgICAg ICAgIDB4MDMsIAogICAgICAgICAgICAgICAgMHgwMCwgCiAgICAgICAgICAgICAgICAweDE3 CiAgICAgICAgICAgIH0sIAoKICAgICAgICAgICAgUGFja2FnZSAoMHgwNCkKICAgICAgICAg ICAgewogICAgICAgICAgICAgICAgMHgwMDBERkZGRiwgCiAgICAgICAgICAgICAgICAweDAw LCAKICAgICAgICAgICAgICAgIDB4MDAsIAogICAgICAgICAgICAgICAgMHgxNQogICAgICAg ICAgICB9LCAKCiAgICAgICAgICAgIFBhY2thZ2UgKDB4MDQpCiAgICAgICAgICAgIHsKICAg ICAgICAgICAgICAgIDB4MDAwREZGRkYsIAogICAgICAgICAgICAgICAgMHgwMSwgCiAgICAg ICAgICAgICAgICAweDAwLCAKICAgICAgICAgICAgICAgIDB4MTYKICAgICAgICAgICAgfSwg CgogICAgICAgICAgICBQYWNrYWdlICgweDA0KQogICAgICAgICAgICB7CiAgICAgICAgICAg ICAgICAweDAwMERGRkZGLCAKICAgICAgICAgICAgICAgIDB4MDIsIAogICAgICAgICAgICAg ICAgMHgwMCwgCiAgICAgICAgICAgICAgICAweDE3CiAgICAgICAgICAgIH0sIAoKICAgICAg ICAgICAgUGFja2FnZSAoMHgwNCkKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgMHgw MDBERkZGRiwgCiAgICAgICAgICAgICAgICAweDAzLCAKICAgICAgICAgICAgICAgIDB4MDAs IAogICAgICAgICAgICAgICAgMHgxNAogICAgICAgICAgICB9LCAKCiAgICAgICAgICAgIFBh Y2thZ2UgKDB4MDQpCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIDB4MDAwM0ZGRkYs IAogICAgICAgICAgICAgICAgMHgwMCwgCiAgICAgICAgICAgICAgICAweDAwLCAKICAgICAg ICAgICAgICAgIDB4MTQKICAgICAgICAgICAgfSwgCgogICAgICAgICAgICBQYWNrYWdlICgw eDA0KQogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAweDAwMDRGRkZGLCAKICAgICAg ICAgICAgICAgIDB4MDAsIAogICAgICAgICAgICAgICAgMHgwMCwgCiAgICAgICAgICAgICAg ICAweDE3CiAgICAgICAgICAgIH0sIAoKICAgICAgICAgICAgUGFja2FnZSAoMHgwNCkKICAg ICAgICAgICAgewogICAgICAgICAgICAgICAgMHgwMDA1RkZGRiwgCiAgICAgICAgICAgICAg ICAweDAwLCAKICAgICAgICAgICAgICAgIDB4MDAsIAogICAgICAgICAgICAgICAgMHgxNgog ICAgICAgICAgICB9CiAgICAgICAgfSkKICAgICAgICBOYW1lIChQUjAwLCBQYWNrYWdlICgw eDA5KQogICAgICAgIHsKICAgICAgICAgICAgUGFja2FnZSAoMHgwNCkKICAgICAgICAgICAg ewogICAgICAgICAgICAgICAgMHgwMDFGRkZGRiwgCiAgICAgICAgICAgICAgICAweDAwLCAK ICAgICAgICAgICAgICAgIExOS0MsIAogICAgICAgICAgICAgICAgMHgwMAogICAgICAgICAg ICB9LCAKCiAgICAgICAgICAgIFBhY2thZ2UgKDB4MDQpCiAgICAgICAgICAgIHsKICAgICAg ICAgICAgICAgIDB4MDAxRkZGRkYsIAogICAgICAgICAgICAgICAgMHgwMSwgCiAgICAgICAg ICAgICAgICBMTktCLCAKICAgICAgICAgICAgICAgIDB4MDAKICAgICAgICAgICAgfSwgCgog ICAgICAgICAgICBQYWNrYWdlICgweDA0KQogICAgICAgICAgICB7CiAgICAgICAgICAgICAg ICAweDAwMURGRkZGLCAKICAgICAgICAgICAgICAgIDB4MDAsIAogICAgICAgICAgICAgICAg TE5LQSwgCiAgICAgICAgICAgICAgICAweDAwCiAgICAgICAgICAgIH0sIAoKICAgICAgICAg ICAgUGFja2FnZSAoMHgwNCkKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgMHgwMDFE RkZGRiwgCiAgICAgICAgICAgICAgICAweDAxLCAKICAgICAgICAgICAgICAgIExOS0QsIAog ICAgICAgICAgICAgICAgMHgwMAogICAgICAgICAgICB9LCAKCiAgICAgICAgICAgIFBhY2th Z2UgKDB4MDQpCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIDB4MDAxREZGRkYsIAog ICAgICAgICAgICAgICAgMHgwMiwgCiAgICAgICAgICAgICAgICBMTktDLCAKICAgICAgICAg ICAgICAgIDB4MDAKICAgICAgICAgICAgfSwgCgogICAgICAgICAgICBQYWNrYWdlICgweDA0 KQogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAweDAwMURGRkZGLCAKICAgICAgICAg ICAgICAgIDB4MDMsIAogICAgICAgICAgICAgICAgTE5LSCwgCiAgICAgICAgICAgICAgICAw eDAwCiAgICAgICAgICAgIH0sIAoKICAgICAgICAgICAgUGFja2FnZSAoMHgwNCkKICAgICAg ICAgICAgewogICAgICAgICAgICAgICAgMHgwMDAxRkZGRiwgCiAgICAgICAgICAgICAgICAw eDAwLCAKICAgICAgICAgICAgICAgIExOS0EsIAogICAgICAgICAgICAgICAgMHgwMAogICAg ICAgICAgICB9LCAKCiAgICAgICAgICAgIFBhY2thZ2UgKDB4MDQpCiAgICAgICAgICAgIHsK ICAgICAgICAgICAgICAgIDB4MDAwMUZGRkYsIAogICAgICAgICAgICAgICAgMHgwMSwgCiAg ICAgICAgICAgICAgICBMTktCLCAKICAgICAgICAgICAgICAgIDB4MDAKICAgICAgICAgICAg fSwgCgogICAgICAgICAgICBQYWNrYWdlICgweDA0KQogICAgICAgICAgICB7CiAgICAgICAg ICAgICAgICAweDAwMDNGRkZGLCAKICAgICAgICAgICAgICAgIDB4MDMsIAogICAgICAgICAg ICAgICAgTE5LRCwgCiAgICAgICAgICAgICAgICAweDAwCiAgICAgICAgICAgIH0KICAgICAg ICB9KQogICAgICAgIE5hbWUgKEFSMDAsIFBhY2thZ2UgKDB4MDgpCiAgICAgICAgewogICAg ICAgICAgICBQYWNrYWdlICgweDA0KQogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAw eDAwMUZGRkZGLCAKICAgICAgICAgICAgICAgIDB4MDAsIAogICAgICAgICAgICAgICAgMHgw MCwgCiAgICAgICAgICAgICAgICAweDEyCiAgICAgICAgICAgIH0sIAoKICAgICAgICAgICAg UGFja2FnZSAoMHgwNCkKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgMHgwMDFGRkZG RiwgCiAgICAgICAgICAgICAgICAweDAxLCAKICAgICAgICAgICAgICAgIDB4MDAsIAogICAg ICAgICAgICAgICAgMHgxMQogICAgICAgICAgICB9LCAKCiAgICAgICAgICAgIFBhY2thZ2Ug KDB4MDQpCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIDB4MDAxREZGRkYsIAogICAg ICAgICAgICAgICAgMHgwMCwgCiAgICAgICAgICAgICAgICAweDAwLCAKICAgICAgICAgICAg ICAgIDB4MTAKICAgICAgICAgICAgfSwgCgogICAgICAgICAgICBQYWNrYWdlICgweDA0KQog ICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAweDAwMURGRkZGLCAKICAgICAgICAgICAg ICAgIDB4MDEsIAogICAgICAgICAgICAgICAgMHgwMCwgCiAgICAgICAgICAgICAgICAweDEz CiAgICAgICAgICAgIH0sIAoKICAgICAgICAgICAgUGFja2FnZSAoMHgwNCkKICAgICAgICAg ICAgewogICAgICAgICAgICAgICAgMHgwMDFERkZGRiwgCiAgICAgICAgICAgICAgICAweDAy LCAKICAgICAgICAgICAgICAgIDB4MDAsIAogICAgICAgICAgICAgICAgMHgxMgogICAgICAg ICAgICB9LCAKCiAgICAgICAgICAgIFBhY2thZ2UgKDB4MDQpCiAgICAgICAgICAgIHsKICAg ICAgICAgICAgICAgIDB4MDAxREZGRkYsIAogICAgICAgICAgICAgICAgMHgwMywgCiAgICAg ICAgICAgICAgICAweDAwLCAKICAgICAgICAgICAgICAgIDB4MTcKICAgICAgICAgICAgfSwg CgogICAgICAgICAgICBQYWNrYWdlICgweDA0KQogICAgICAgICAgICB7CiAgICAgICAgICAg ICAgICAweDAwMDFGRkZGLCAKICAgICAgICAgICAgICAgIDB4MDAsIAogICAgICAgICAgICAg ICAgMHgwMCwgCiAgICAgICAgICAgICAgICAweDEwCiAgICAgICAgICAgIH0sIAoKICAgICAg ICAgICAgUGFja2FnZSAoMHgwNCkKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgMHgw MDAxRkZGRiwgCiAgICAgICAgICAgICAgICAweDAxLCAKICAgICAgICAgICAgICAgIDB4MDAs IAogICAgICAgICAgICAgICAgMHgxMQogICAgICAgICAgICB9CiAgICAgICAgfSkKICAgICAg ICBOYW1lIChQUjAyLCBQYWNrYWdlICgweDAxKQogICAgICAgIHsKICAgICAgICAgICAgUGFj a2FnZSAoMHgwNCkKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgMHgwMDAxRkZGRiwg CiAgICAgICAgICAgICAgICAweDAwLCAKICAgICAgICAgICAgICAgIExOS0MsIAogICAgICAg ICAgICAgICAgMHgwMAogICAgICAgICAgICB9CiAgICAgICAgfSkKICAgICAgICBOYW1lIChB UjAyLCBQYWNrYWdlICgweDAxKQogICAgICAgIHsKICAgICAgICAgICAgUGFja2FnZSAoMHgw NCkKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgMHgwMDAxRkZGRiwgCiAgICAgICAg ICAgICAgICAweDAwLCAKICAgICAgICAgICAgICAgIDB4MDAsIAogICAgICAgICAgICAgICAg MHgxMgogICAgICAgICAgICB9CiAgICAgICAgfSkKICAgICAgICBOYW1lIChQUlNBLCBSZXNv dXJjZVRlbXBsYXRlICgpCiAgICAgICAgewogICAgICAgICAgICBJUlEgKExldmVsLCBBY3Rp dmVMb3csIFNoYXJlZCkgezMsNCw1LDYsNywxMCwxMSwxMiwxNCwxNX0KICAgICAgICB9KQog ICAgICAgIEFsaWFzIChQUlNBLCBQUlNCKQogICAgICAgIEFsaWFzIChQUlNBLCBQUlNDKQog ICAgICAgIEFsaWFzIChQUlNBLCBQUlNEKQogICAgICAgIEFsaWFzIChQUlNBLCBQUlNFKQog ICAgICAgIEFsaWFzIChQUlNBLCBQUlNGKQogICAgICAgIEFsaWFzIChQUlNBLCBQUlNHKQog ICAgICAgIEFsaWFzIChQUlNBLCBQUlNIKQogICAgICAgIERldmljZSAoUENJMCkKICAgICAg ICB7CiAgICAgICAgICAgIE5hbWUgKF9ISUQsIEVpc2FJZCAoIlBOUDBBMDMiKSkKICAgICAg ICAgICAgTmFtZSAoX0FEUiwgMHgwMCkKICAgICAgICAgICAgTmFtZSAoX0JCTiwgMHgwMCkK ICAgICAgICAgICAgTmFtZSAoX1VJRCwgMHgwMCkKICAgICAgICAgICAgTWV0aG9kIChfUFJU LCAwLCBOb3RTZXJpYWxpemVkKQogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICBJZiAo UElDTSkKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICBSZXR1cm4gKEFS MDApCiAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgUmV0dXJuIChQUjAwKQog ICAgICAgICAgICB9CgogICAgICAgICAgICBEZXZpY2UgKFAwUDQpCiAgICAgICAgICAgIHsK ICAgICAgICAgICAgICAgIE5hbWUgKF9BRFIsIDB4MDAxRTAwMDApCiAgICAgICAgICAgICAg ICBNZXRob2QgKF9QUlcsIDAsIE5vdFNlcmlhbGl6ZWQpCiAgICAgICAgICAgICAgICB7CiAg ICAgICAgICAgICAgICAgICAgUmV0dXJuIChHUFJXICgweDBCLCAweDA0KSkKICAgICAgICAg ICAgICAgIH0KCiAgICAgICAgICAgICAgICBNZXRob2QgKF9QUlQsIDAsIE5vdFNlcmlhbGl6 ZWQpCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgSWYgKFBJQ00pCiAg ICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICBSZXR1cm4gKEFS MDQpCiAgICAgICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICAgICBSZXR1cm4g KFBSMDQpCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIERl dmljZSAoSURFMCkKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgTmFtZSAoX0FEUiwg MHgwMDFGMDAwMSkKICAgICAgICAgICAgICAgIE5hbWUgKFJFR0YsIDB4MDEpCiAgICAgICAg ICAgICAgICBNZXRob2QgKF9SRUcsIDIsIE5vdFNlcmlhbGl6ZWQpCiAgICAgICAgICAgICAg ICB7CiAgICAgICAgICAgICAgICAgICAgSWYgKExFcXVhbCAoQXJnMCwgMHgwMikpCiAgICAg ICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoQXJnMSwg UkVHRikKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9CgogICAgICAg ICAgICAgICAgTmFtZSAoVElNMCwgUGFja2FnZSAoMHgwOCkKICAgICAgICAgICAgICAgIHsK ICAgICAgICAgICAgICAgICAgICBQYWNrYWdlICgweDA0KQogICAgICAgICAgICAgICAgICAg IHsKICAgICAgICAgICAgICAgICAgICAgICAgMHg3OCwgCiAgICAgICAgICAgICAgICAgICAg ICAgIDB4QjQsIAogICAgICAgICAgICAgICAgICAgICAgICAweEYwLCAKICAgICAgICAgICAg ICAgICAgICAgICAgMHgwMzg0CiAgICAgICAgICAgICAgICAgICAgfSwgCgogICAgICAgICAg ICAgICAgICAgIFBhY2thZ2UgKDB4MDQpCiAgICAgICAgICAgICAgICAgICAgewogICAgICAg ICAgICAgICAgICAgICAgICAweDIzLCAKICAgICAgICAgICAgICAgICAgICAgICAgMHgyMSwg CiAgICAgICAgICAgICAgICAgICAgICAgIDB4MTAsIAogICAgICAgICAgICAgICAgICAgICAg ICAweDAwCiAgICAgICAgICAgICAgICAgICAgfSwgCgogICAgICAgICAgICAgICAgICAgIFBh Y2thZ2UgKDB4MDQpCiAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAg ICAgICAweDBCLCAKICAgICAgICAgICAgICAgICAgICAgICAgMHgwOSwgCiAgICAgICAgICAg ICAgICAgICAgICAgIDB4MDQsIAogICAgICAgICAgICAgICAgICAgICAgICAweDAwCiAgICAg ICAgICAgICAgICAgICAgfSwgCgogICAgICAgICAgICAgICAgICAgIFBhY2thZ2UgKDB4MDYp CiAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAweDcwLCAK ICAgICAgICAgICAgICAgICAgICAgICAgMHg0OSwgCiAgICAgICAgICAgICAgICAgICAgICAg IDB4MzYsIAogICAgICAgICAgICAgICAgICAgICAgICAweDI3LCAKICAgICAgICAgICAgICAg ICAgICAgICAgMHgxOSwgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MEYKICAgICAgICAg ICAgICAgICAgICB9LCAKCiAgICAgICAgICAgICAgICAgICAgUGFja2FnZSAoMHgwNikKICAg ICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAsIAogICAg ICAgICAgICAgICAgICAgICAgICAweDAxLCAKICAgICAgICAgICAgICAgICAgICAgICAgMHgw MiwgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDEsIAogICAgICAgICAgICAgICAgICAg ICAgICAweDAyLCAKICAgICAgICAgICAgICAgICAgICAgICAgMHgwMQogICAgICAgICAgICAg ICAgICAgIH0sIAoKICAgICAgICAgICAgICAgICAgICBQYWNrYWdlICgweDA2KQogICAgICAg ICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgMHgwMCwgCiAgICAgICAg ICAgICAgICAgICAgICAgIDB4MDAsIAogICAgICAgICAgICAgICAgICAgICAgICAweDAwLCAK ICAgICAgICAgICAgICAgICAgICAgICAgMHgwMSwgCiAgICAgICAgICAgICAgICAgICAgICAg IDB4MDEsIAogICAgICAgICAgICAgICAgICAgICAgICAweDAxCiAgICAgICAgICAgICAgICAg ICAgfSwgCgogICAgICAgICAgICAgICAgICAgIFBhY2thZ2UgKDB4MDQpCiAgICAgICAgICAg ICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAweDA0LCAKICAgICAgICAgICAg ICAgICAgICAgICAgMHgwMywgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDIsIAogICAg ICAgICAgICAgICAgICAgICAgICAweDAwCiAgICAgICAgICAgICAgICAgICAgfSwgCgogICAg ICAgICAgICAgICAgICAgIFBhY2thZ2UgKDB4MDQpCiAgICAgICAgICAgICAgICAgICAgewog ICAgICAgICAgICAgICAgICAgICAgICAweDAyLCAKICAgICAgICAgICAgICAgICAgICAgICAg MHgwMSwgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAsIAogICAgICAgICAgICAgICAg ICAgICAgICAweDAwCiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfSkK ICAgICAgICAgICAgICAgIE5hbWUgKFRNRDAsIEJ1ZmZlciAoMHgxNCkge30pCiAgICAgICAg ICAgICAgICBDcmVhdGVEV29yZEZpZWxkIChUTUQwLCAweDAwLCBQSU8wKQogICAgICAgICAg ICAgICAgQ3JlYXRlRFdvcmRGaWVsZCAoVE1EMCwgMHgwNCwgRE1BMCkKICAgICAgICAgICAg ICAgIENyZWF0ZURXb3JkRmllbGQgKFRNRDAsIDB4MDgsIFBJTzEpCiAgICAgICAgICAgICAg ICBDcmVhdGVEV29yZEZpZWxkIChUTUQwLCAweDBDLCBETUExKQogICAgICAgICAgICAgICAg Q3JlYXRlRFdvcmRGaWVsZCAoVE1EMCwgMHgxMCwgQ0hORikKICAgICAgICAgICAgICAgIE9w ZXJhdGlvblJlZ2lvbiAoQ0ZHMiwgUENJX0NvbmZpZywgMHg0MCwgMHgyMCkKICAgICAgICAg ICAgICAgIEZpZWxkIChDRkcyLCBEV29yZEFjYywgTm9Mb2NrLCBQcmVzZXJ2ZSkKICAgICAg ICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICBQTVBULCAgIDQsIAogICAgICAgICAg ICAgICAgICAgIFBTUFQsICAgNCwgCiAgICAgICAgICAgICAgICAgICAgUE1SSSwgICA2LCAK ICAgICAgICAgICAgICAgICAgICBPZmZzZXQgKDB4MDIpLCAKICAgICAgICAgICAgICAgICAg ICBTTVBULCAgIDQsIAogICAgICAgICAgICAgICAgICAgIFNTUFQsICAgNCwgCiAgICAgICAg ICAgICAgICAgICAgU01SSSwgICA2LCAKICAgICAgICAgICAgICAgICAgICBPZmZzZXQgKDB4 MDQpLCAKICAgICAgICAgICAgICAgICAgICBQU1JJLCAgIDQsIAogICAgICAgICAgICAgICAg ICAgIFNTUkksICAgNCwgCiAgICAgICAgICAgICAgICAgICAgT2Zmc2V0ICgweDA4KSwgCiAg ICAgICAgICAgICAgICAgICAgUE0zRSwgICAxLCAKICAgICAgICAgICAgICAgICAgICBQUzNF LCAgIDEsIAogICAgICAgICAgICAgICAgICAgIFNNM0UsICAgMSwgCiAgICAgICAgICAgICAg ICAgICAgU1MzRSwgICAxLCAKICAgICAgICAgICAgICAgICAgICBPZmZzZXQgKDB4MEEpLCAK ICAgICAgICAgICAgICAgICAgICBQTVVULCAgIDIsIAogICAgICAgICAgICAgICAgICAgICAg ICAsICAgMiwgCiAgICAgICAgICAgICAgICAgICAgUFNVVCwgICAyLCAKICAgICAgICAgICAg ICAgICAgICBPZmZzZXQgKDB4MEIpLCAKICAgICAgICAgICAgICAgICAgICBTTVVULCAgIDIs IAogICAgICAgICAgICAgICAgICAgICAgICAsICAgMiwgCiAgICAgICAgICAgICAgICAgICAg U1NVVCwgICAyLCAKICAgICAgICAgICAgICAgICAgICBPZmZzZXQgKDB4MEMpLCAKICAgICAg ICAgICAgICAgICAgICBPZmZzZXQgKDB4MTQpLCAKICAgICAgICAgICAgICAgICAgICBQTTZF LCAgIDEsIAogICAgICAgICAgICAgICAgICAgIFBTNkUsICAgMSwgCiAgICAgICAgICAgICAg ICAgICAgU002RSwgICAxLCAKICAgICAgICAgICAgICAgICAgICBTUzZFLCAgIDEsIAogICAg ICAgICAgICAgICAgICAgIFBNQ1IsICAgMSwgCiAgICAgICAgICAgICAgICAgICAgUFNDUiwg ICAxLCAKICAgICAgICAgICAgICAgICAgICBTTUNSLCAgIDEsIAogICAgICAgICAgICAgICAg ICAgIFNTQ1IsICAgMSwgCiAgICAgICAgICAgICAgICAgICAgICAgICwgICA0LCAKICAgICAg ICAgICAgICAgICAgICBQTUFFLCAgIDEsIAogICAgICAgICAgICAgICAgICAgIFBTQUUsICAg MSwgCiAgICAgICAgICAgICAgICAgICAgU01BRSwgICAxLCAKICAgICAgICAgICAgICAgICAg ICBTU0FFLCAgIDEKICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICBOYW1lIChH TVBULCAweDAwKQogICAgICAgICAgICAgICAgTmFtZSAoR01VRSwgMHgwMCkKICAgICAgICAg ICAgICAgIE5hbWUgKEdNVVQsIDB4MDApCiAgICAgICAgICAgICAgICBOYW1lIChHTUNSLCAw eDAwKQogICAgICAgICAgICAgICAgTmFtZSAoR1NQVCwgMHgwMCkKICAgICAgICAgICAgICAg IE5hbWUgKEdTVUUsIDB4MDApCiAgICAgICAgICAgICAgICBOYW1lIChHU1VULCAweDAwKQog ICAgICAgICAgICAgICAgTmFtZSAoR1NDUiwgMHgwMCkKICAgICAgICAgICAgICAgIERldmlj ZSAoQ0hOMCkKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICBOYW1lIChf QURSLCAweDAwKQogICAgICAgICAgICAgICAgICAgIE1ldGhvZCAoX0dUTSwgMCwgTm90U2Vy aWFsaXplZCkKICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAg IFNoaWZ0TGVmdCAoUFNDUiwgMHgwMSwgTG9jYWwxKQogICAgICAgICAgICAgICAgICAgICAg ICBPciAoUE1DUiwgTG9jYWwxLCBMb2NhbDApCiAgICAgICAgICAgICAgICAgICAgICAgIFNo aWZ0TGVmdCAoUE1BRSwgMHgwMiwgTG9jYWwzKQogICAgICAgICAgICAgICAgICAgICAgICBT aGlmdExlZnQgKFBNNkUsIDB4MDEsIExvY2FsNCkKICAgICAgICAgICAgICAgICAgICAgICAg T3IgKExvY2FsMywgTG9jYWw0LCBMb2NhbDMpCiAgICAgICAgICAgICAgICAgICAgICAgIE9y IChQTTNFLCBMb2NhbDMsIExvY2FsMSkKICAgICAgICAgICAgICAgICAgICAgICAgU2hpZnRM ZWZ0IChQTVBULCAweDA0LCBMb2NhbDMpCiAgICAgICAgICAgICAgICAgICAgICAgIE9yIChM b2NhbDEsIExvY2FsMywgTG9jYWwxKQogICAgICAgICAgICAgICAgICAgICAgICBTaGlmdExl ZnQgKFBTQUUsIDB4MDIsIExvY2FsMykKICAgICAgICAgICAgICAgICAgICAgICAgU2hpZnRM ZWZ0IChQUzZFLCAweDAxLCBMb2NhbDQpCiAgICAgICAgICAgICAgICAgICAgICAgIE9yIChM b2NhbDMsIExvY2FsNCwgTG9jYWwzKQogICAgICAgICAgICAgICAgICAgICAgICBPciAoUFMz RSwgTG9jYWwzLCBMb2NhbDIpCiAgICAgICAgICAgICAgICAgICAgICAgIFNoaWZ0TGVmdCAo UFNQVCwgMHgwNCwgTG9jYWwzKQogICAgICAgICAgICAgICAgICAgICAgICBPciAoTG9jYWwy LCBMb2NhbDMsIExvY2FsMikKICAgICAgICAgICAgICAgICAgICAgICAgUmV0dXJuIChHVE0g KFBNUkksIExvY2FsMSwgUE1VVCwgUFNSSSwgTG9jYWwyLCBQU1VULCBMb2NhbDApKQogICAg ICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAgICAgTWV0aG9kIChfU1RNLCAz LCBOb3RTZXJpYWxpemVkKQogICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAg ICAgICAgICAgU3RvcmUgKEFyZzAsIERlYnVnKQogICAgICAgICAgICAgICAgICAgICAgICBT dG9yZSAoQXJnMCwgVE1EMCkKICAgICAgICAgICAgICAgICAgICAgICAgU2hpZnRMZWZ0IChQ TUFFLCAweDAyLCBMb2NhbDMpCiAgICAgICAgICAgICAgICAgICAgICAgIFNoaWZ0TGVmdCAo UE02RSwgMHgwMSwgTG9jYWw0KQogICAgICAgICAgICAgICAgICAgICAgICBPciAoTG9jYWwz LCBMb2NhbDQsIExvY2FsMykKICAgICAgICAgICAgICAgICAgICAgICAgT3IgKFBNM0UsIExv Y2FsMywgTG9jYWwwKQogICAgICAgICAgICAgICAgICAgICAgICBTaGlmdExlZnQgKFBNUFQs IDB4MDQsIExvY2FsMykKICAgICAgICAgICAgICAgICAgICAgICAgT3IgKExvY2FsMCwgTG9j YWwzLCBMb2NhbDApCiAgICAgICAgICAgICAgICAgICAgICAgIFNoaWZ0TGVmdCAoUFNBRSwg MHgwMiwgTG9jYWwzKQogICAgICAgICAgICAgICAgICAgICAgICBTaGlmdExlZnQgKFBTNkUs IDB4MDEsIExvY2FsNCkKICAgICAgICAgICAgICAgICAgICAgICAgT3IgKExvY2FsMywgTG9j YWw0LCBMb2NhbDMpCiAgICAgICAgICAgICAgICAgICAgICAgIE9yIChQUzNFLCBMb2NhbDMs IExvY2FsMSkKICAgICAgICAgICAgICAgICAgICAgICAgU2hpZnRMZWZ0IChQU1BULCAweDA0 LCBMb2NhbDMpCiAgICAgICAgICAgICAgICAgICAgICAgIE9yIChMb2NhbDEsIExvY2FsMywg TG9jYWwxKQogICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoUE1SSSwgR01QVCkKICAg ICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKExvY2FsMCwgR01VRSkKICAgICAgICAgICAg ICAgICAgICAgICAgU3RvcmUgKFBNVVQsIEdNVVQpCiAgICAgICAgICAgICAgICAgICAgICAg IFN0b3JlIChQTUNSLCBHTUNSKQogICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoUFNS SSwgR1NQVCkKICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKExvY2FsMSwgR1NVRSkK ICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKFBTVVQsIEdTVVQpCiAgICAgICAgICAg ICAgICAgICAgICAgIFN0b3JlIChQU0NSLCBHU0NSKQogICAgICAgICAgICAgICAgICAgICAg ICBTVE0gKCkKICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKEdNUFQsIFBNUkkpCiAg ICAgICAgICAgICAgICAgICAgICAgIFN0b3JlIChHTVVFLCBMb2NhbDApCiAgICAgICAgICAg ICAgICAgICAgICAgIFN0b3JlIChHTVVULCBQTVVUKQogICAgICAgICAgICAgICAgICAgICAg ICBTdG9yZSAoR01DUiwgUE1DUikKICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKEdT VUUsIExvY2FsMSkKICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKEdTVVQsIFBTVVQp CiAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlIChHU0NSLCBQU0NSKQogICAgICAgICAg ICAgICAgICAgICAgICBJZiAoQW5kIChMb2NhbDAsIDB4MDEpKQogICAgICAgICAgICAgICAg ICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoMHgwMSwgUE0z RSkKICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICBF bHNlCiAgICAgICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAg ICAgIFN0b3JlICgweDAwLCBQTTNFKQogICAgICAgICAgICAgICAgICAgICAgICB9CgogICAg ICAgICAgICAgICAgICAgICAgICBJZiAoQW5kIChMb2NhbDAsIDB4MDIpKQogICAgICAgICAg ICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoMHgw MSwgUE02RSkKICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAg ICAgICBFbHNlCiAgICAgICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAg ICAgICAgICAgIFN0b3JlICgweDAwLCBQTTZFKQogICAgICAgICAgICAgICAgICAgICAgICB9 CgogICAgICAgICAgICAgICAgICAgICAgICBJZiAoQW5kIChMb2NhbDAsIDB4MDQpKQogICAg ICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdG9y ZSAoMHgwMSwgUE1BRSkKICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAg ICAgICAgICAgICBFbHNlCiAgICAgICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAg ICAgICAgICAgICAgICAgIFN0b3JlICgweDAwLCBQTUFFKQogICAgICAgICAgICAgICAgICAg ICAgICB9CgogICAgICAgICAgICAgICAgICAgICAgICBJZiAoQW5kIChMb2NhbDEsIDB4MDEp KQogICAgICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgICAg ICBTdG9yZSAoMHgwMSwgUFMzRSkKICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAg ICAgICAgICAgICAgICAgICBFbHNlCiAgICAgICAgICAgICAgICAgICAgICAgIHsKICAgICAg ICAgICAgICAgICAgICAgICAgICAgIFN0b3JlICgweDAwLCBQUzNFKQogICAgICAgICAgICAg ICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgICAgICBJZiAoQW5kIChMb2NhbDEs IDB4MDIpKQogICAgICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAg ICAgICAgICBTdG9yZSAoMHgwMSwgUFM2RSkKICAgICAgICAgICAgICAgICAgICAgICAgfQog ICAgICAgICAgICAgICAgICAgICAgICBFbHNlCiAgICAgICAgICAgICAgICAgICAgICAgIHsK ICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlICgweDAwLCBQUzZFKQogICAgICAg ICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgICAgICBJZiAoQW5kIChM b2NhbDEsIDB4MDQpKQogICAgICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAg ICAgICAgICAgICAgICBTdG9yZSAoMHgwMSwgUFNBRSkKICAgICAgICAgICAgICAgICAgICAg ICAgfQogICAgICAgICAgICAgICAgICAgICAgICBFbHNlCiAgICAgICAgICAgICAgICAgICAg ICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlICgweDAwLCBQU0FFKQog ICAgICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgICAgICBTdG9y ZSAoR1RGICgweDAwLCBBcmcxKSwgQVRBMCkKICAgICAgICAgICAgICAgICAgICAgICAgU3Rv cmUgKEdURiAoMHgwMSwgQXJnMiksIEFUQTEpCiAgICAgICAgICAgICAgICAgICAgfQoKICAg ICAgICAgICAgICAgICAgICBEZXZpY2UgKERSVjApCiAgICAgICAgICAgICAgICAgICAgewog ICAgICAgICAgICAgICAgICAgICAgICBOYW1lIChfQURSLCAweDAwKQogICAgICAgICAgICAg ICAgICAgICAgICBNZXRob2QgKF9HVEYsIDAsIE5vdFNlcmlhbGl6ZWQpCiAgICAgICAgICAg ICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJldHVybiAoUkFU QSAoQVRBMCkpCiAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAg ICB9CgogICAgICAgICAgICAgICAgICAgIERldmljZSAoRFJWMSkKICAgICAgICAgICAgICAg ICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgIE5hbWUgKF9BRFIsIDB4MDEpCiAgICAg ICAgICAgICAgICAgICAgICAgIE1ldGhvZCAoX0dURiwgMCwgTm90U2VyaWFsaXplZCkKICAg ICAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgUmV0 dXJuIChSQVRBIChBVEExKSkKICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAg ICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICBEZXZpY2Ug KENITjEpCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgTmFtZSAoX0FE UiwgMHgwMSkKICAgICAgICAgICAgICAgICAgICBNZXRob2QgKF9HVE0sIDAsIE5vdFNlcmlh bGl6ZWQpCiAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICBT aGlmdExlZnQgKFNTQ1IsIDB4MDEsIExvY2FsMSkKICAgICAgICAgICAgICAgICAgICAgICAg T3IgKFNNQ1IsIExvY2FsMSwgTG9jYWwwKQogICAgICAgICAgICAgICAgICAgICAgICBTaGlm dExlZnQgKFNNQUUsIDB4MDIsIExvY2FsMykKICAgICAgICAgICAgICAgICAgICAgICAgU2hp ZnRMZWZ0IChTTTZFLCAweDAxLCBMb2NhbDQpCiAgICAgICAgICAgICAgICAgICAgICAgIE9y IChMb2NhbDMsIExvY2FsNCwgTG9jYWwzKQogICAgICAgICAgICAgICAgICAgICAgICBPciAo U00zRSwgTG9jYWwzLCBMb2NhbDEpCiAgICAgICAgICAgICAgICAgICAgICAgIFNoaWZ0TGVm dCAoU01QVCwgMHgwNCwgTG9jYWwzKQogICAgICAgICAgICAgICAgICAgICAgICBPciAoTG9j YWwxLCBMb2NhbDMsIExvY2FsMSkKICAgICAgICAgICAgICAgICAgICAgICAgU2hpZnRMZWZ0 IChTU0FFLCAweDAyLCBMb2NhbDMpCiAgICAgICAgICAgICAgICAgICAgICAgIFNoaWZ0TGVm dCAoU1M2RSwgMHgwMSwgTG9jYWw0KQogICAgICAgICAgICAgICAgICAgICAgICBPciAoTG9j YWwzLCBMb2NhbDQsIExvY2FsMykKICAgICAgICAgICAgICAgICAgICAgICAgT3IgKFNTM0Us IExvY2FsMywgTG9jYWwyKQogICAgICAgICAgICAgICAgICAgICAgICBTaGlmdExlZnQgKFNT UFQsIDB4MDQsIExvY2FsMykKICAgICAgICAgICAgICAgICAgICAgICAgT3IgKExvY2FsMiwg TG9jYWwzLCBMb2NhbDIpCiAgICAgICAgICAgICAgICAgICAgICAgIFJldHVybiAoR1RNIChT TVJJLCBMb2NhbDEsIFNNVVQsIFNTUkksIExvY2FsMiwgU1NVVCwgTG9jYWwwKSkKICAgICAg ICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgIE1ldGhvZCAoX1NUTSwgMywg Tm90U2VyaWFsaXplZCkKICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAg ICAgICAgIFN0b3JlIChBcmcwLCBEZWJ1ZykKICAgICAgICAgICAgICAgICAgICAgICAgU3Rv cmUgKEFyZzAsIFRNRDApCiAgICAgICAgICAgICAgICAgICAgICAgIFNoaWZ0TGVmdCAoU01B RSwgMHgwMiwgTG9jYWwzKQogICAgICAgICAgICAgICAgICAgICAgICBTaGlmdExlZnQgKFNN NkUsIDB4MDEsIExvY2FsNCkKICAgICAgICAgICAgICAgICAgICAgICAgT3IgKExvY2FsMywg TG9jYWw0LCBMb2NhbDMpCiAgICAgICAgICAgICAgICAgICAgICAgIE9yIChTTTNFLCBMb2Nh bDMsIExvY2FsMCkKICAgICAgICAgICAgICAgICAgICAgICAgU2hpZnRMZWZ0IChTTVBULCAw eDA0LCBMb2NhbDMpCiAgICAgICAgICAgICAgICAgICAgICAgIE9yIChMb2NhbDAsIExvY2Fs MywgTG9jYWwwKQogICAgICAgICAgICAgICAgICAgICAgICBTaGlmdExlZnQgKFNTQUUsIDB4 MDIsIExvY2FsMykKICAgICAgICAgICAgICAgICAgICAgICAgU2hpZnRMZWZ0IChTUzZFLCAw eDAxLCBMb2NhbDQpCiAgICAgICAgICAgICAgICAgICAgICAgIE9yIChMb2NhbDMsIExvY2Fs NCwgTG9jYWwzKQogICAgICAgICAgICAgICAgICAgICAgICBPciAoU1MzRSwgTG9jYWwzLCBM b2NhbDEpCiAgICAgICAgICAgICAgICAgICAgICAgIFNoaWZ0TGVmdCAoU1NQVCwgMHgwNCwg TG9jYWwzKQogICAgICAgICAgICAgICAgICAgICAgICBPciAoTG9jYWwxLCBMb2NhbDMsIExv Y2FsMSkKICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKFNNUkksIEdNUFQpCiAgICAg ICAgICAgICAgICAgICAgICAgIFN0b3JlIChMb2NhbDAsIEdNVUUpCiAgICAgICAgICAgICAg ICAgICAgICAgIFN0b3JlIChTTVVULCBHTVVUKQogICAgICAgICAgICAgICAgICAgICAgICBT dG9yZSAoU01DUiwgR01DUikKICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKFNTUkks IEdTUFQpCiAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlIChMb2NhbDEsIEdTVUUpCiAg ICAgICAgICAgICAgICAgICAgICAgIFN0b3JlIChTU1VULCBHU1VUKQogICAgICAgICAgICAg ICAgICAgICAgICBTdG9yZSAoU1NDUiwgR1NDUikKICAgICAgICAgICAgICAgICAgICAgICAg U1RNICgpCiAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlIChHTVBULCBTTVJJKQogICAg ICAgICAgICAgICAgICAgICAgICBTdG9yZSAoR01VRSwgTG9jYWwwKQogICAgICAgICAgICAg ICAgICAgICAgICBTdG9yZSAoR01VVCwgU01VVCkKICAgICAgICAgICAgICAgICAgICAgICAg U3RvcmUgKEdNQ1IsIFNNQ1IpCiAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlIChHU1VF LCBMb2NhbDEpCiAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlIChHU1VULCBTU1VUKQog ICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoR1NDUiwgU1NDUikKICAgICAgICAgICAg ICAgICAgICAgICAgSWYgKEFuZCAoTG9jYWwwLCAweDAxKSkKICAgICAgICAgICAgICAgICAg ICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKDB4MDEsIFNNM0Up CiAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgRWxz ZQogICAgICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgICAg ICBTdG9yZSAoMHgwMCwgU00zRSkKICAgICAgICAgICAgICAgICAgICAgICAgfQoKICAgICAg ICAgICAgICAgICAgICAgICAgSWYgKEFuZCAoTG9jYWwwLCAweDAyKSkKICAgICAgICAgICAg ICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKDB4MDEs IFNNNkUpCiAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAg ICAgRWxzZQogICAgICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAg ICAgICAgICBTdG9yZSAoMHgwMCwgU002RSkKICAgICAgICAgICAgICAgICAgICAgICAgfQoK ICAgICAgICAgICAgICAgICAgICAgICAgSWYgKEFuZCAoTG9jYWwwLCAweDA0KSkKICAgICAg ICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUg KDB4MDEsIFNNQUUpCiAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAg ICAgICAgICAgRWxzZQogICAgICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAg ICAgICAgICAgICAgICBTdG9yZSAoMHgwMCwgU01BRSkKICAgICAgICAgICAgICAgICAgICAg ICAgfQoKICAgICAgICAgICAgICAgICAgICAgICAgSWYgKEFuZCAoTG9jYWwxLCAweDAxKSkK ICAgICAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAgICAg U3RvcmUgKDB4MDEsIFNTM0UpCiAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAg ICAgICAgICAgICAgICAgRWxzZQogICAgICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAg ICAgICAgICAgICAgICAgICAgICBTdG9yZSAoMHgwMCwgU1MzRSkKICAgICAgICAgICAgICAg ICAgICAgICAgfQoKICAgICAgICAgICAgICAgICAgICAgICAgSWYgKEFuZCAoTG9jYWwxLCAw eDAyKSkKICAgICAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAg ICAgICAgU3RvcmUgKDB4MDEsIFNTNkUpCiAgICAgICAgICAgICAgICAgICAgICAgIH0KICAg ICAgICAgICAgICAgICAgICAgICAgRWxzZQogICAgICAgICAgICAgICAgICAgICAgICB7CiAg ICAgICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoMHgwMCwgU1M2RSkKICAgICAgICAg ICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICAgICAgICAgSWYgKEFuZCAoTG9j YWwxLCAweDA0KSkKICAgICAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAg ICAgICAgICAgICAgU3RvcmUgKDB4MDEsIFNTQUUpCiAgICAgICAgICAgICAgICAgICAgICAg IH0KICAgICAgICAgICAgICAgICAgICAgICAgRWxzZQogICAgICAgICAgICAgICAgICAgICAg ICB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoMHgwMCwgU1NBRSkKICAg ICAgICAgICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUg KEdURiAoMHgwMCwgQXJnMSksIEFUQTIpCiAgICAgICAgICAgICAgICAgICAgICAgIFN0b3Jl IChHVEYgKDB4MDEsIEFyZzIpLCBBVEEzKQogICAgICAgICAgICAgICAgICAgIH0KCiAgICAg ICAgICAgICAgICAgICAgRGV2aWNlIChEUlYwKQogICAgICAgICAgICAgICAgICAgIHsKICAg ICAgICAgICAgICAgICAgICAgICAgTmFtZSAoX0FEUiwgMHgwMCkKICAgICAgICAgICAgICAg ICAgICAgICAgTWV0aG9kIChfR1RGLCAwLCBOb3RTZXJpYWxpemVkKQogICAgICAgICAgICAg ICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBSZXR1cm4gKFJBVEEg KEFUQTIpKQogICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAg fQoKICAgICAgICAgICAgICAgICAgICBEZXZpY2UgKERSVjEpCiAgICAgICAgICAgICAgICAg ICAgewogICAgICAgICAgICAgICAgICAgICAgICBOYW1lIChfQURSLCAweDAxKQogICAgICAg ICAgICAgICAgICAgICAgICBNZXRob2QgKF9HVEYsIDAsIE5vdFNlcmlhbGl6ZWQpCiAgICAg ICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJldHVy biAoUkFUQSAoQVRBMykpCiAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAg ICAgICAgICB9CiAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgTWV0aG9kIChH VE0sIDcsIFNlcmlhbGl6ZWQpCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAg ICAgU3RvcmUgKE9uZXMsIFBJTzApCiAgICAgICAgICAgICAgICAgICAgU3RvcmUgKE9uZXMs IFBJTzEpCiAgICAgICAgICAgICAgICAgICAgU3RvcmUgKE9uZXMsIERNQTApCiAgICAgICAg ICAgICAgICAgICAgU3RvcmUgKE9uZXMsIERNQTEpCiAgICAgICAgICAgICAgICAgICAgU3Rv cmUgKDB4MTAsIENITkYpCiAgICAgICAgICAgICAgICAgICAgSWYgKFJFR0YpIHt9CiAgICAg ICAgICAgICAgICAgICAgRWxzZQogICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAg ICAgICAgICAgICAgUmV0dXJuIChUTUQwKQogICAgICAgICAgICAgICAgICAgIH0KCiAgICAg ICAgICAgICAgICAgICAgSWYgKEFuZCAoQXJnMSwgMHgyMCkpCiAgICAgICAgICAgICAgICAg ICAgewogICAgICAgICAgICAgICAgICAgICAgICBPciAoQ0hORiwgMHgwMiwgQ0hORikKICAg ICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgIFN0b3JlIChNYXRjaCAo RGVyZWZPZiAoSW5kZXggKFRJTTAsIDB4MDEpKSwgTUVRLCBBcmcwLCBNVFIsIDB4MDAsIDB4 MDApLCBMb2NhbDYpCiAgICAgICAgICAgICAgICAgICAgU3RvcmUgKERlcmVmT2YgKEluZGV4 IChEZXJlZk9mIChJbmRleCAoVElNMCwgMHgwMCkpLCBMb2NhbDYpKSwgTG9jYWw3KQogICAg ICAgICAgICAgICAgICAgIFN0b3JlIChMb2NhbDcsIERNQTApCiAgICAgICAgICAgICAgICAg ICAgU3RvcmUgKExvY2FsNywgUElPMCkKICAgICAgICAgICAgICAgICAgICBJZiAoQW5kIChB cmc0LCAweDIwKSkKICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAg ICAgIE9yIChDSE5GLCAweDA4LCBDSE5GKQogICAgICAgICAgICAgICAgICAgIH0KCiAgICAg ICAgICAgICAgICAgICAgU3RvcmUgKE1hdGNoIChEZXJlZk9mIChJbmRleCAoVElNMCwgMHgw MikpLCBNRVEsIEFyZzMsIE1UUiwgMHgwMCwgMHgwMCksIExvY2FsNikKICAgICAgICAgICAg ICAgICAgICBTdG9yZSAoRGVyZWZPZiAoSW5kZXggKERlcmVmT2YgKEluZGV4IChUSU0wLCAw eDAwKSksIExvY2FsNikpLCBMb2NhbDcpCiAgICAgICAgICAgICAgICAgICAgU3RvcmUgKExv Y2FsNywgRE1BMSkKICAgICAgICAgICAgICAgICAgICBTdG9yZSAoTG9jYWw3LCBQSU8xKQog ICAgICAgICAgICAgICAgICAgIElmIChBbmQgKEFyZzEsIDB4MDcpKQogICAgICAgICAgICAg ICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKEFyZzIsIExvY2FsNSkK ICAgICAgICAgICAgICAgICAgICAgICAgSWYgKEFuZCAoQXJnMSwgMHgwMikpCiAgICAgICAg ICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFkZCAoTG9j YWw1LCAweDAyLCBMb2NhbDUpCiAgICAgICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAg ICAgICAgICAgICAgICAgIElmIChBbmQgKEFyZzEsIDB4MDQpKQogICAgICAgICAgICAgICAg ICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGQgKExvY2FsNSwgMHgw NCwgTG9jYWw1KQogICAgICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAg ICAgICAgICBTdG9yZSAoRGVyZWZPZiAoSW5kZXggKERlcmVmT2YgKEluZGV4IChUSU0wLCAw eDAzKSksIExvY2FsNSkpLCBETUEwKQogICAgICAgICAgICAgICAgICAgICAgICBPciAoQ0hO RiwgMHgwMSwgQ0hORikKICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAg ICAgIElmIChBbmQgKEFyZzQsIDB4MDcpKQogICAgICAgICAgICAgICAgICAgIHsKICAgICAg ICAgICAgICAgICAgICAgICAgU3RvcmUgKEFyZzUsIExvY2FsNSkKICAgICAgICAgICAgICAg ICAgICAgICAgSWYgKEFuZCAoQXJnNCwgMHgwMikpCiAgICAgICAgICAgICAgICAgICAgICAg IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFkZCAoTG9jYWw1LCAweDAyLCBMb2Nh bDUpCiAgICAgICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAgICAgICAg IElmIChBbmQgKEFyZzQsIDB4MDQpKQogICAgICAgICAgICAgICAgICAgICAgICB7CiAgICAg ICAgICAgICAgICAgICAgICAgICAgICBBZGQgKExvY2FsNSwgMHgwNCwgTG9jYWw1KQogICAg ICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAo RGVyZWZPZiAoSW5kZXggKERlcmVmT2YgKEluZGV4IChUSU0wLCAweDAzKSksIExvY2FsNSkp LCBETUExKQogICAgICAgICAgICAgICAgICAgICAgICBPciAoQ0hORiwgMHgwNCwgQ0hORikK ICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgIFN0b3JlIChUTUQw LCBEZWJ1ZykKICAgICAgICAgICAgICAgICAgICBSZXR1cm4gKFRNRDApCiAgICAgICAgICAg ICAgICB9CgogICAgICAgICAgICAgICAgTWV0aG9kIChTVE0sIDAsIFNlcmlhbGl6ZWQpCiAg ICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgSWYgKFJFR0YpIHt9CiAgICAg ICAgICAgICAgICAgICAgRWxzZQogICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAg ICAgICAgICAgICAgUmV0dXJuIChUTUQwKQogICAgICAgICAgICAgICAgICAgIH0KCiAgICAg ICAgICAgICAgICAgICAgU3RvcmUgKDB4MDAsIEdNVUUpCiAgICAgICAgICAgICAgICAgICAg U3RvcmUgKDB4MDAsIEdNVVQpCiAgICAgICAgICAgICAgICAgICAgU3RvcmUgKDB4MDAsIEdT VUUpCiAgICAgICAgICAgICAgICAgICAgU3RvcmUgKDB4MDAsIEdTVVQpCiAgICAgICAgICAg ICAgICAgICAgSWYgKEFuZCAoQ0hORiwgMHgwMSkpCiAgICAgICAgICAgICAgICAgICAgewog ICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoTWF0Y2ggKERlcmVmT2YgKEluZGV4IChU SU0wLCAweDAzKSksIE1MRSwgRE1BMCwgTVRSLCAweDAwLCAweDAwKSwgTG9jYWwwKQogICAg ICAgICAgICAgICAgICAgICAgICBJZiAoTEdyZWF0ZXIgKExvY2FsMCwgMHgwNSkpCiAgICAg ICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN0b3Jl ICgweDA1LCBMb2NhbDApCiAgICAgICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAg ICAgICAgICAgICAgIFN0b3JlIChEZXJlZk9mIChJbmRleCAoRGVyZWZPZiAoSW5kZXggKFRJ TTAsIDB4MDQpKSwgTG9jYWwwKSksIEdNVVQpCiAgICAgICAgICAgICAgICAgICAgICAgIE9y IChHTVVFLCAweDAxLCBHTVVFKQogICAgICAgICAgICAgICAgICAgICAgICBJZiAoTEdyZWF0 ZXIgKExvY2FsMCwgMHgwMikpCiAgICAgICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAg ICAgICAgICAgICAgICAgICAgIE9yIChHTVVFLCAweDAyLCBHTVVFKQogICAgICAgICAgICAg ICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgICAgICBJZiAoTEdyZWF0ZXIgKExv Y2FsMCwgMHgwNCkpCiAgICAgICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAg ICAgICAgICAgICAgIEFuZCAoR01VRSwgMHhGRCwgR01VRSkKICAgICAgICAgICAgICAgICAg ICAgICAgICAgIE9yIChHTVVFLCAweDA0LCBHTVVFKQogICAgICAgICAgICAgICAgICAgICAg ICB9CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIEVsc2UKICAg ICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgIElmIChPciAoTEVx dWFsIChQSU8wLCBPbmVzKSwgTEVxdWFsIChQSU8wLCAweDAwKSkpCiAgICAgICAgICAgICAg ICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIElmIChBbmQgKExMZXNz IChETUEwLCBPbmVzKSwgTEdyZWF0ZXIgKERNQTAsIDB4MDApKSkKICAgICAgICAgICAgICAg ICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAo RE1BMCwgUElPMCkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBPciAoR01VRSwg MHg4MCwgR01VRSkKICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAg ICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAg ICAgSWYgKEFuZCAoQ0hORiwgMHgwNCkpCiAgICAgICAgICAgICAgICAgICAgewogICAgICAg ICAgICAgICAgICAgICAgICBTdG9yZSAoTWF0Y2ggKERlcmVmT2YgKEluZGV4IChUSU0wLCAw eDAzKSksIE1MRSwgRE1BMSwgTVRSLCAweDAwLCAweDAwKSwgTG9jYWwwKQogICAgICAgICAg ICAgICAgICAgICAgICBJZiAoTEdyZWF0ZXIgKExvY2FsMCwgMHgwNSkpCiAgICAgICAgICAg ICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlICgweDA1 LCBMb2NhbDApCiAgICAgICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAg ICAgICAgIFN0b3JlIChEZXJlZk9mIChJbmRleCAoRGVyZWZPZiAoSW5kZXggKFRJTTAsIDB4 MDQpKSwgTG9jYWwwKSksIEdTVVQpCiAgICAgICAgICAgICAgICAgICAgICAgIE9yIChHU1VF LCAweDAxLCBHU1VFKQogICAgICAgICAgICAgICAgICAgICAgICBJZiAoTEdyZWF0ZXIgKExv Y2FsMCwgMHgwMikpCiAgICAgICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAg ICAgICAgICAgICAgIE9yIChHU1VFLCAweDAyLCBHU1VFKQogICAgICAgICAgICAgICAgICAg ICAgICB9CgogICAgICAgICAgICAgICAgICAgICAgICBJZiAoTEdyZWF0ZXIgKExvY2FsMCwg MHgwNCkpCiAgICAgICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAg ICAgICAgIEFuZCAoR1NVRSwgMHhGRCwgR1NVRSkKICAgICAgICAgICAgICAgICAgICAgICAg ICAgIE9yIChHU1VFLCAweDA0LCBHU1VFKQogICAgICAgICAgICAgICAgICAgICAgICB9CiAg ICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIEVsc2UKICAgICAgICAg ICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgIElmIChPciAoTEVxdWFsIChQ SU8xLCBPbmVzKSwgTEVxdWFsIChQSU8xLCAweDAwKSkpCiAgICAgICAgICAgICAgICAgICAg ICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIElmIChBbmQgKExMZXNzIChETUEx LCBPbmVzKSwgTEdyZWF0ZXIgKERNQTEsIDB4MDApKSkKICAgICAgICAgICAgICAgICAgICAg ICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoRE1BMSwg UElPMSkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBPciAoR1NVRSwgMHg4MCwg R1NVRSkKICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAg ICAgICAgfQogICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAgICAgSWYg KEFuZCAoQ0hORiwgMHgwMikpCiAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAg ICAgICAgICAgICBPciAoR01VRSwgMHgyMCwgR01VRSkKICAgICAgICAgICAgICAgICAgICB9 CgogICAgICAgICAgICAgICAgICAgIElmIChBbmQgKENITkYsIDB4MDgpKQogICAgICAgICAg ICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgT3IgKEdTVUUsIDB4MjAsIEdT VUUpCiAgICAgICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICAgICBBbmQgKE1h dGNoIChEZXJlZk9mIChJbmRleCAoVElNMCwgMHgwMCkpLCBNR0UsIFBJTzAsIE1UUiwgMHgw MCwgMHgwMCksIDB4MDcsIExvY2FsMCkKICAgICAgICAgICAgICAgICAgICBTdG9yZSAoRGVy ZWZPZiAoSW5kZXggKERlcmVmT2YgKEluZGV4IChUSU0wLCAweDAxKSksIExvY2FsMCkpLCBM b2NhbDEpCiAgICAgICAgICAgICAgICAgICAgU3RvcmUgKExvY2FsMSwgR01QVCkKICAgICAg ICAgICAgICAgICAgICBJZiAoTExlc3MgKExvY2FsMCwgMHgwMykpCiAgICAgICAgICAgICAg ICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICBPciAoR01VRSwgMHg1MCwgR01VRSkK ICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgIEFuZCAoTWF0Y2gg KERlcmVmT2YgKEluZGV4IChUSU0wLCAweDAwKSksIE1HRSwgUElPMSwgTVRSLCAweDAwLCAw eDAwKSwgMHgwNywgTG9jYWwwKQogICAgICAgICAgICAgICAgICAgIFN0b3JlIChEZXJlZk9m IChJbmRleCAoRGVyZWZPZiAoSW5kZXggKFRJTTAsIDB4MDIpKSwgTG9jYWwwKSksIExvY2Fs MSkKICAgICAgICAgICAgICAgICAgICBTdG9yZSAoTG9jYWwxLCBHU1BUKQogICAgICAgICAg ICAgICAgICAgIElmIChMTGVzcyAoTG9jYWwwLCAweDAzKSkKICAgICAgICAgICAgICAgICAg ICB7CiAgICAgICAgICAgICAgICAgICAgICAgIE9yIChHU1VFLCAweDUwLCBHU1VFKQogICAg ICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICBO YW1lIChBVDAxLCBCdWZmZXIgKDB4MDcpCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAg ICAgICAgICAgMHgwMywgMHgwMCwgMHgwMCwgMHgwMCwgMHgwMCwgMHgwMCwgMHhFRgogICAg ICAgICAgICAgICAgfSkKICAgICAgICAgICAgICAgIE5hbWUgKEFUMDIsIEJ1ZmZlciAoMHgw NykKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAweDAwLCAweDAwLCAw eDAwLCAweDAwLCAweDAwLCAweDAwLCAweDkwCiAgICAgICAgICAgICAgICB9KQogICAgICAg ICAgICAgICAgTmFtZSAoQVQwMywgQnVmZmVyICgweDA3KQogICAgICAgICAgICAgICAgewog ICAgICAgICAgICAgICAgICAgIDB4MDAsIDB4MDAsIDB4MDAsIDB4MDAsIDB4MDAsIDB4MDAs IDB4QzYKICAgICAgICAgICAgICAgIH0pCiAgICAgICAgICAgICAgICBOYW1lIChBVDA0LCBC dWZmZXIgKDB4MDcpCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgMHgw MCwgMHgwMCwgMHgwMCwgMHgwMCwgMHgwMCwgMHgwMCwgMHg5MQogICAgICAgICAgICAgICAg fSkKICAgICAgICAgICAgICAgIE5hbWUgKEFUQTAsIEJ1ZmZlciAoMHgxRCkge30pCiAgICAg ICAgICAgICAgICBOYW1lIChBVEExLCBCdWZmZXIgKDB4MUQpIHt9KQogICAgICAgICAgICAg ICAgTmFtZSAoQVRBMiwgQnVmZmVyICgweDFEKSB7fSkKICAgICAgICAgICAgICAgIE5hbWUg KEFUQTMsIEJ1ZmZlciAoMHgxRCkge30pCiAgICAgICAgICAgICAgICBOYW1lIChBVEFCLCBC dWZmZXIgKDB4MUQpIHt9KQogICAgICAgICAgICAgICAgQ3JlYXRlQnl0ZUZpZWxkIChBVEFC LCAweDAwLCBDTURDKQogICAgICAgICAgICAgICAgTWV0aG9kIChHVEZCLCAzLCBTZXJpYWxp emVkKQogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIE11bHRpcGx5IChD TURDLCAweDM4LCBMb2NhbDApCiAgICAgICAgICAgICAgICAgICAgQWRkIChMb2NhbDAsIDB4 MDgsIExvY2FsMSkKICAgICAgICAgICAgICAgICAgICBDcmVhdGVGaWVsZCAoQVRBQiwgTG9j YWwxLCAweDM4LCBDTURYKQogICAgICAgICAgICAgICAgICAgIE11bHRpcGx5IChDTURDLCAw eDA3LCBMb2NhbDApCiAgICAgICAgICAgICAgICAgICAgQ3JlYXRlQnl0ZUZpZWxkIChBVEFC LCBBZGQgKExvY2FsMCwgMHgwMiksIEEwMDEpCiAgICAgICAgICAgICAgICAgICAgQ3JlYXRl Qnl0ZUZpZWxkIChBVEFCLCBBZGQgKExvY2FsMCwgMHgwNiksIEEwMDUpCiAgICAgICAgICAg ICAgICAgICAgU3RvcmUgKEFyZzAsIENNRFgpCiAgICAgICAgICAgICAgICAgICAgU3RvcmUg KEFyZzEsIEEwMDEpCiAgICAgICAgICAgICAgICAgICAgU3RvcmUgKEFyZzIsIEEwMDUpCiAg ICAgICAgICAgICAgICAgICAgSW5jcmVtZW50IChDTURDKQogICAgICAgICAgICAgICAgfQoK ICAgICAgICAgICAgICAgIE1ldGhvZCAoR1RGLCAyLCBTZXJpYWxpemVkKQogICAgICAgICAg ICAgICAgewogICAgICAgICAgICAgICAgICAgIFN0b3JlIChBcmcxLCBEZWJ1ZykKICAgICAg ICAgICAgICAgICAgICBTdG9yZSAoMHgwMCwgQ01EQykKICAgICAgICAgICAgICAgICAgICBO YW1lIChJRDQ5LCAweDBDMDApCiAgICAgICAgICAgICAgICAgICAgTmFtZSAoSUQ1OSwgMHgw MCkKICAgICAgICAgICAgICAgICAgICBOYW1lIChJRDUzLCAweDA0KQogICAgICAgICAgICAg ICAgICAgIE5hbWUgKElENjMsIDB4MEYwMCkKICAgICAgICAgICAgICAgICAgICBOYW1lIChJ RDg4LCAweDBGMDApCiAgICAgICAgICAgICAgICAgICAgTmFtZSAoSVJEWSwgMHgwMSkKICAg ICAgICAgICAgICAgICAgICBOYW1lIChQSU9ULCAweDAwKQogICAgICAgICAgICAgICAgICAg IE5hbWUgKERNQVQsIDB4MDApCiAgICAgICAgICAgICAgICAgICAgSWYgKExFcXVhbCAoU2l6 ZU9mIChBcmcxKSwgMHgwMjAwKSkKICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAg ICAgICAgICAgICAgIENyZWF0ZVdvcmRGaWVsZCAoQXJnMSwgMHg2MiwgSVc0OSkKICAgICAg ICAgICAgICAgICAgICAgICAgU3RvcmUgKElXNDksIElENDkpCiAgICAgICAgICAgICAgICAg ICAgICAgIENyZWF0ZVdvcmRGaWVsZCAoQXJnMSwgMHg2QSwgSVc1MykKICAgICAgICAgICAg ICAgICAgICAgICAgU3RvcmUgKElXNTMsIElENTMpCiAgICAgICAgICAgICAgICAgICAgICAg IENyZWF0ZVdvcmRGaWVsZCAoQXJnMSwgMHg3RSwgSVc2MykKICAgICAgICAgICAgICAgICAg ICAgICAgU3RvcmUgKElXNjMsIElENjMpCiAgICAgICAgICAgICAgICAgICAgICAgIENyZWF0 ZVdvcmRGaWVsZCAoQXJnMSwgMHg3NiwgSVc1OSkKICAgICAgICAgICAgICAgICAgICAgICAg U3RvcmUgKElXNTksIElENTkpCiAgICAgICAgICAgICAgICAgICAgICAgIENyZWF0ZVdvcmRG aWVsZCAoQXJnMSwgMHhCMCwgSVc4OCkKICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUg KElXODgsIElEODgpCiAgICAgICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICAg ICBTdG9yZSAoMHhBMCwgTG9jYWw3KQogICAgICAgICAgICAgICAgICAgIElmIChBcmcwKQog ICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKDB4 QjAsIExvY2FsNykKICAgICAgICAgICAgICAgICAgICAgICAgQW5kIChDSE5GLCAweDA4LCBJ UkRZKQogICAgICAgICAgICAgICAgICAgICAgICBJZiAoQW5kIChDSE5GLCAweDEwKSkKICAg ICAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgU3Rv cmUgKFBJTzEsIFBJT1QpCiAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAg ICAgICAgICAgICAgRWxzZQogICAgICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAg ICAgICAgICAgICAgICAgICBTdG9yZSAoUElPMCwgUElPVCkKICAgICAgICAgICAgICAgICAg ICAgICAgfQoKICAgICAgICAgICAgICAgICAgICAgICAgSWYgKEFuZCAoQ0hORiwgMHgwNCkp CiAgICAgICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAg IElmIChBbmQgKENITkYsIDB4MTApKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgewog ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlIChETUExLCBETUFUKQogICAg ICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICAgICAg RWxzZQogICAgICAgICAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIFN0b3JlIChETUEwLCBETUFUKQogICAgICAgICAgICAgICAgICAgICAg ICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAg fQogICAgICAgICAgICAgICAgICAgIEVsc2UKICAgICAgICAgICAgICAgICAgICB7CiAgICAg ICAgICAgICAgICAgICAgICAgIEFuZCAoQ0hORiwgMHgwMiwgSVJEWSkKICAgICAgICAgICAg ICAgICAgICAgICAgU3RvcmUgKFBJTzAsIFBJT1QpCiAgICAgICAgICAgICAgICAgICAgICAg IElmIChBbmQgKENITkYsIDB4MDEpKQogICAgICAgICAgICAgICAgICAgICAgICB7CiAgICAg ICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoRE1BMCwgRE1BVCkKICAgICAgICAgICAg ICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAg ICAgSWYgKExBbmQgKExBbmQgKEFuZCAoSUQ1MywgMHgwNCksIEFuZCAoSUQ4OCwgMHhGRjAw KSksIERNQVQpKQogICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAg ICAgU3RvcmUgKE1hdGNoIChEZXJlZk9mIChJbmRleCAoVElNMCwgMHgwMykpLCBNTEUsIERN QVQsIE1UUiwgMHgwMCwgMHgwMCksIExvY2FsMSkKICAgICAgICAgICAgICAgICAgICAgICAg SWYgKExHcmVhdGVyIChMb2NhbDEsIDB4MDUpKQogICAgICAgICAgICAgICAgICAgICAgICB7 CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoMHgwNSwgTG9jYWwxKQogICAg ICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgICAgICBHVEZCIChB VDAxLCBPciAoMHg0MCwgTG9jYWwxKSwgTG9jYWw3KQogICAgICAgICAgICAgICAgICAgIH0K ICAgICAgICAgICAgICAgICAgICBFbHNlCiAgICAgICAgICAgICAgICAgICAgewogICAgICAg ICAgICAgICAgICAgICAgICBJZiAoTEFuZCAoQW5kIChJRDYzLCAweEZGMDApLCBQSU9UKSkK ICAgICAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAgICAg QW5kIChNYXRjaCAoRGVyZWZPZiAoSW5kZXggKFRJTTAsIDB4MDApKSwgTUdFLCBQSU9ULCBN VFIsIDB4MDAsIDB4MDApLCAweDAzLCBMb2NhbDApCiAgICAgICAgICAgICAgICAgICAgICAg ICAgICBPciAoMHgyMCwgRGVyZWZPZiAoSW5kZXggKERlcmVmT2YgKEluZGV4IChUSU0wLCAw eDA3KSksIExvY2FsMCkpLCBMb2NhbDEpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBH VEZCIChBVDAxLCBMb2NhbDEsIExvY2FsNykKICAgICAgICAgICAgICAgICAgICAgICAgfQog ICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAgICAgSWYgKElSRFkpCiAg ICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICBBbmQgKE1hdGNo IChEZXJlZk9mIChJbmRleCAoVElNMCwgMHgwMCkpLCBNR0UsIFBJT1QsIE1UUiwgMHgwMCwg MHgwMCksIDB4MDcsIExvY2FsMCkKICAgICAgICAgICAgICAgICAgICAgICAgT3IgKDB4MDgs IERlcmVmT2YgKEluZGV4IChEZXJlZk9mIChJbmRleCAoVElNMCwgMHgwNikpLCBMb2NhbDAp KSwgTG9jYWwxKQogICAgICAgICAgICAgICAgICAgICAgICBHVEZCIChBVDAxLCBMb2NhbDEs IExvY2FsNykKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgRWxz ZQogICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgSWYgKEFu ZCAoSUQ0OSwgMHgwNDAwKSkKICAgICAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAg ICAgICAgICAgICAgICAgICAgR1RGQiAoQVQwMSwgMHgwMSwgTG9jYWw3KQogICAgICAgICAg ICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAg ICAgICBJZiAoTEFuZCAoQW5kIChJRDU5LCAweDAxMDApLCBBbmQgKElENTksIDB4RkYpKSkK ICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgIEdURkIgKEFU MDMsIEFuZCAoSUQ1OSwgMHhGRiksIExvY2FsNykKICAgICAgICAgICAgICAgICAgICB9Cgog ICAgICAgICAgICAgICAgICAgIFN0b3JlIChBVEFCLCBEZWJ1ZykKICAgICAgICAgICAgICAg ICAgICBSZXR1cm4gKEFUQUIpCiAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAg TWV0aG9kIChSQVRBLCAxLCBOb3RTZXJpYWxpemVkKQogICAgICAgICAgICAgICAgewogICAg ICAgICAgICAgICAgICAgIENyZWF0ZUJ5dGVGaWVsZCAoQXJnMCwgMHgwMCwgQ01ETikKICAg ICAgICAgICAgICAgICAgICBNdWx0aXBseSAoQ01ETiwgMHgzOCwgTG9jYWwwKQogICAgICAg ICAgICAgICAgICAgIENyZWF0ZUZpZWxkIChBcmcwLCAweDA4LCBMb2NhbDAsIFJFVEIpCiAg ICAgICAgICAgICAgICAgICAgU3RvcmUgKFJFVEIsIERlYnVnKQogICAgICAgICAgICAgICAg ICAgIFJldHVybiAoUkVUQikKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQoKICAg ICAgICAgICAgRGV2aWNlIChJREUxKQogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICBO YW1lIChfQURSLCAweDAwMUYwMDAyKQogICAgICAgICAgICB9CgogICAgICAgICAgICBEZXZp Y2UgKE1DOTcpCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIE5hbWUgKF9BRFIsIDB4 MDAxRjAwMDYpCiAgICAgICAgICAgICAgICBNZXRob2QgKF9QUlcsIDAsIE5vdFNlcmlhbGl6 ZWQpCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgUmV0dXJuIChHUFJX ICgweDA1LCAweDA0KSkKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQoKICAgICAg ICAgICAgRGV2aWNlIChVU0IxKQogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICBOYW1l IChfQURSLCAweDAwMUQwMDAwKQogICAgICAgICAgICAgICAgTWV0aG9kIChfUFJXLCAwLCBO b3RTZXJpYWxpemVkKQogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIFJl dHVybiAoR1BSVyAoMHgwMywgMHgwNCkpCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAg IH0KCiAgICAgICAgICAgIERldmljZSAoVVNCMikKICAgICAgICAgICAgewogICAgICAgICAg ICAgICAgTmFtZSAoX0FEUiwgMHgwMDFEMDAwMSkKICAgICAgICAgICAgICAgIE1ldGhvZCAo X1BSVywgMCwgTm90U2VyaWFsaXplZCkKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAg ICAgICAgICBSZXR1cm4gKEdQUlcgKDB4MDQsIDB4MDQpKQogICAgICAgICAgICAgICAgfQog ICAgICAgICAgICB9CgogICAgICAgICAgICBEZXZpY2UgKFVTQjMpCiAgICAgICAgICAgIHsK ICAgICAgICAgICAgICAgIE5hbWUgKF9BRFIsIDB4MDAxRDAwMDIpCiAgICAgICAgICAgICAg ICBNZXRob2QgKF9QUlcsIDAsIE5vdFNlcmlhbGl6ZWQpCiAgICAgICAgICAgICAgICB7CiAg ICAgICAgICAgICAgICAgICAgUmV0dXJuIChHUFJXICgweDBDLCAweDA0KSkKICAgICAgICAg ICAgICAgIH0KICAgICAgICAgICAgfQoKICAgICAgICAgICAgRGV2aWNlIChVU0I0KQogICAg ICAgICAgICB7CiAgICAgICAgICAgICAgICBOYW1lIChfQURSLCAweDAwMUQwMDAzKQogICAg ICAgICAgICAgICAgTWV0aG9kIChfUFJXLCAwLCBOb3RTZXJpYWxpemVkKQogICAgICAgICAg ICAgICAgewogICAgICAgICAgICAgICAgICAgIFJldHVybiAoR1BSVyAoMHgwRSwgMHgwNCkp CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIERldmljZSAo RVVTQikKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgTmFtZSAoX0FEUiwgMHgwMDFE MDAwNykKICAgICAgICAgICAgICAgIE1ldGhvZCAoX1BSVywgMCwgTm90U2VyaWFsaXplZCkK ICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICBSZXR1cm4gKEdQUlcgKDB4 MEQsIDB4MDQpKQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CgogICAgICAgICAg ICBEZXZpY2UgKFNCUkcpCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIE5hbWUgKF9B RFIsIDB4MDAxRjAwMDApCiAgICAgICAgICAgICAgICBEZXZpY2UgKFBJQykKICAgICAgICAg ICAgICAgIHsKICAgICAgICAgICAgICAgICAgICBOYW1lIChfSElELCBFaXNhSWQgKCJQTlAw MDAwIikpCiAgICAgICAgICAgICAgICAgICAgTmFtZSAoX0NSUywgUmVzb3VyY2VUZW1wbGF0 ZSAoKQogICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgSU8g KERlY29kZTE2LCAweDAwMjAsIDB4MDAyMCwgMHgwMCwgMHgwMikKICAgICAgICAgICAgICAg ICAgICAgICAgSU8gKERlY29kZTE2LCAweDAwQTAsIDB4MDBBMCwgMHgwMCwgMHgwMikKICAg ICAgICAgICAgICAgICAgICAgICAgSVJRTm9GbGFncyAoKSB7Mn0KICAgICAgICAgICAgICAg ICAgICB9KQogICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgIERldmljZSAoRE1B RCkKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICBOYW1lIChfSElELCBF aXNhSWQgKCJQTlAwMjAwIikpCiAgICAgICAgICAgICAgICAgICAgTmFtZSAoX0NSUywgUmVz b3VyY2VUZW1wbGF0ZSAoKQogICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAg ICAgICAgICAgRE1BIChDb21wYXRpYmlsaXR5LCBCdXNNYXN0ZXIsIFRyYW5zZmVyOCkgezR9 CiAgICAgICAgICAgICAgICAgICAgICAgIElPIChEZWNvZGUxNiwgMHgwMDAwLCAweDAwMDAs IDB4MDAsIDB4MTApCiAgICAgICAgICAgICAgICAgICAgICAgIElPIChEZWNvZGUxNiwgMHgw MDgxLCAweDAwODEsIDB4MDAsIDB4MDMpCiAgICAgICAgICAgICAgICAgICAgICAgIElPIChE ZWNvZGUxNiwgMHgwMDg3LCAweDAwODcsIDB4MDAsIDB4MDEpCiAgICAgICAgICAgICAgICAg ICAgICAgIElPIChEZWNvZGUxNiwgMHgwMDg5LCAweDAwODksIDB4MDAsIDB4MDMpCiAgICAg ICAgICAgICAgICAgICAgICAgIElPIChEZWNvZGUxNiwgMHgwMDhGLCAweDAwOEYsIDB4MDAs IDB4MDEpCiAgICAgICAgICAgICAgICAgICAgICAgIElPIChEZWNvZGUxNiwgMHgwMEMwLCAw eDAwQzAsIDB4MDAsIDB4MjApCiAgICAgICAgICAgICAgICAgICAgfSkKICAgICAgICAgICAg ICAgIH0KCiAgICAgICAgICAgICAgICBEZXZpY2UgKFRNUikKICAgICAgICAgICAgICAgIHsK ICAgICAgICAgICAgICAgICAgICBOYW1lIChfSElELCBFaXNhSWQgKCJQTlAwMTAwIikpCiAg ICAgICAgICAgICAgICAgICAgTmFtZSAoX0NSUywgUmVzb3VyY2VUZW1wbGF0ZSAoKQogICAg ICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgSU8gKERlY29kZTE2 LCAweDAwNDAsIDB4MDA0MCwgMHgwMCwgMHgwNCkKICAgICAgICAgICAgICAgICAgICAgICAg SVJRTm9GbGFncyAoKSB7MH0KICAgICAgICAgICAgICAgICAgICB9KQogICAgICAgICAgICAg ICAgfQoKICAgICAgICAgICAgICAgIERldmljZSAoUlRDMCkKICAgICAgICAgICAgICAgIHsK ICAgICAgICAgICAgICAgICAgICBOYW1lIChfSElELCBFaXNhSWQgKCJQTlAwQjAwIikpCiAg ICAgICAgICAgICAgICAgICAgTmFtZSAoX0NSUywgUmVzb3VyY2VUZW1wbGF0ZSAoKQogICAg ICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgSU8gKERlY29kZTE2 LCAweDAwNzAsIDB4MDA3MCwgMHgwMCwgMHgwMikKICAgICAgICAgICAgICAgICAgICAgICAg SVJRTm9GbGFncyAoKSB7OH0KICAgICAgICAgICAgICAgICAgICB9KQogICAgICAgICAgICAg ICAgfQoKICAgICAgICAgICAgICAgIERldmljZSAoUFMySykKICAgICAgICAgICAgICAgIHsK ICAgICAgICAgICAgICAgICAgICBOYW1lIChfSElELCBFaXNhSWQgKCJQTlAwMzAzIikpCiAg ICAgICAgICAgICAgICAgICAgTmFtZSAoX0NJRCwgMHgwQjAzRDA0MSkKICAgICAgICAgICAg ICAgICAgICBNZXRob2QgKF9TVEEsIDAsIE5vdFNlcmlhbGl6ZWQpCiAgICAgICAgICAgICAg ICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICBTaGlmdExlZnQgKDB4MDEsIDB4MEEs IExvY2FsMCkKICAgICAgICAgICAgICAgICAgICAgICAgSWYgKEFuZCAoSU9TVCwgTG9jYWww KSkKICAgICAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAg ICAgUmV0dXJuICgweDBGKQogICAgICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAg ICAgICAgICAgICAgICBSZXR1cm4gKDB4MDApCiAgICAgICAgICAgICAgICAgICAgfQoKICAg ICAgICAgICAgICAgICAgICBOYW1lIChfQ1JTLCBSZXNvdXJjZVRlbXBsYXRlICgpCiAgICAg ICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICBJTyAoRGVjb2RlMTYs IDB4MDA2MCwgMHgwMDYwLCAweDAwLCAweDAxKQogICAgICAgICAgICAgICAgICAgICAgICBJ TyAoRGVjb2RlMTYsIDB4MDA2NCwgMHgwMDY0LCAweDAwLCAweDAxKQogICAgICAgICAgICAg ICAgICAgICAgICBJUlFOb0ZsYWdzICgpIHsxfQogICAgICAgICAgICAgICAgICAgIH0pCiAg ICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgTWV0aG9kIChQUzJLLl9QUlcsIDAs IE5vdFNlcmlhbGl6ZWQpCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAg UmV0dXJuIChHUFJXICgweDFELCAweDA0KSkKICAgICAgICAgICAgICAgIH0KCiAgICAgICAg ICAgICAgICBEZXZpY2UgKFBTMk0pCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAg ICAgICAgTmFtZSAoX0hJRCwgRWlzYUlkICgiUE5QMEYwMyIpKQogICAgICAgICAgICAgICAg ICAgIE5hbWUgKF9DSUQsIDB4MTMwRkQwNDEpCiAgICAgICAgICAgICAgICAgICAgTWV0aG9k IChfU1RBLCAwLCBOb3RTZXJpYWxpemVkKQogICAgICAgICAgICAgICAgICAgIHsKICAgICAg ICAgICAgICAgICAgICAgICAgU2hpZnRMZWZ0ICgweDAxLCAweDBDLCBMb2NhbDApCiAgICAg ICAgICAgICAgICAgICAgICAgIElmIChBbmQgKElPU1QsIExvY2FsMCkpCiAgICAgICAgICAg ICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJldHVybiAoMHgw RikKICAgICAgICAgICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICAgICAgICAg UmV0dXJuICgweDAwKQogICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAg ICAgTmFtZSAoQ1JTMSwgUmVzb3VyY2VUZW1wbGF0ZSAoKQogICAgICAgICAgICAgICAgICAg IHsKICAgICAgICAgICAgICAgICAgICAgICAgSVJRTm9GbGFncyAoKSB7MTJ9CiAgICAgICAg ICAgICAgICAgICAgfSkKICAgICAgICAgICAgICAgICAgICBOYW1lIChDUlMyLCBSZXNvdXJj ZVRlbXBsYXRlICgpCiAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAg ICAgICBJTyAoRGVjb2RlMTYsIDB4MDA2MCwgMHgwMDYwLCAweDAwLCAweDAxKQogICAgICAg ICAgICAgICAgICAgICAgICBJTyAoRGVjb2RlMTYsIDB4MDA2NCwgMHgwMDY0LCAweDAwLCAw eDAxKQogICAgICAgICAgICAgICAgICAgICAgICBJUlFOb0ZsYWdzICgpIHsxMn0KICAgICAg ICAgICAgICAgICAgICB9KQogICAgICAgICAgICAgICAgICAgIE1ldGhvZCAoX0NSUywgMCwg Tm90U2VyaWFsaXplZCkKICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAg ICAgICAgIFNoaWZ0TGVmdCAoMHgwMSwgMHgwQSwgTG9jYWwwKQogICAgICAgICAgICAgICAg ICAgICAgICBJZiAoQW5kIChJT1NULCBMb2NhbDApKQogICAgICAgICAgICAgICAgICAgICAg ICB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBSZXR1cm4gKENSUzEpCiAgICAgICAg ICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgRWxzZQogICAgICAg ICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBSZXR1cm4g KENSUzIpCiAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICB9 CiAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgTWV0aG9kIChQUzJNLl9QUlcs IDAsIE5vdFNlcmlhbGl6ZWQpCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAg ICAgUmV0dXJuIChHUFJXICgweDFELCAweDA0KSkKICAgICAgICAgICAgICAgIH0KCiAgICAg ICAgICAgICAgICBEZXZpY2UgKFNQS1IpCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAg ICAgICAgICAgTmFtZSAoX0hJRCwgRWlzYUlkICgiUE5QMDgwMCIpKQogICAgICAgICAgICAg ICAgICAgIE5hbWUgKF9DUlMsIFJlc291cmNlVGVtcGxhdGUgKCkKICAgICAgICAgICAgICAg ICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgIElPIChEZWNvZGUxNiwgMHgwMDYxLCAw eDAwNjEsIDB4MDAsIDB4MDEpCiAgICAgICAgICAgICAgICAgICAgfSkKICAgICAgICAgICAg ICAgIH0KCiAgICAgICAgICAgICAgICBEZXZpY2UgKENPUFIpCiAgICAgICAgICAgICAgICB7 CiAgICAgICAgICAgICAgICAgICAgTmFtZSAoX0hJRCwgRWlzYUlkICgiUE5QMEMwNCIpKQog ICAgICAgICAgICAgICAgICAgIE5hbWUgKF9DUlMsIFJlc291cmNlVGVtcGxhdGUgKCkKICAg ICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgIElPIChEZWNvZGUx NiwgMHgwMEYwLCAweDAwRjAsIDB4MDAsIDB4MTApCiAgICAgICAgICAgICAgICAgICAgICAg IElSUU5vRmxhZ3MgKCkgezEzfQogICAgICAgICAgICAgICAgICAgIH0pCiAgICAgICAgICAg ICAgICB9CgogICAgICAgICAgICAgICAgRGV2aWNlIChVQVIxKQogICAgICAgICAgICAgICAg ewogICAgICAgICAgICAgICAgICAgIE5hbWUgKF9VSUQsIDB4MDEpCiAgICAgICAgICAgICAg ICAgICAgTmFtZSAoX0hJRCwgRWlzYUlkICgiUE5QMDUwMSIpKQogICAgICAgICAgICAgICAg ICAgIE1ldGhvZCAoX1NUQSwgMCwgTm90U2VyaWFsaXplZCkKICAgICAgICAgICAgICAgICAg ICB7CiAgICAgICAgICAgICAgICAgICAgICAgIFJldHVybiAoRFNUQSAoMHgwMCkpCiAgICAg ICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICAgICBNZXRob2QgKF9ESVMsIDAs IE5vdFNlcmlhbGl6ZWQpCiAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAg ICAgICAgICBEQ05UICgweDAwLCAweDAwKQogICAgICAgICAgICAgICAgICAgIH0KCiAgICAg ICAgICAgICAgICAgICAgTWV0aG9kIChfQ1JTLCAwLCBOb3RTZXJpYWxpemVkKQogICAgICAg ICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgUmV0dXJuIChQQ1JTICgw eDAwLCAweDAxLCAweDA4KSkKICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAg ICAgICAgIE1ldGhvZCAoX1NSUywgMSwgTm90U2VyaWFsaXplZCkKICAgICAgICAgICAgICAg ICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgIFBTUlMgKEFyZzAsIDB4MDApCiAgICAg ICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICAgICBNZXRob2QgKF9QUlMsIDAs IE5vdFNlcmlhbGl6ZWQpCiAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAg ICAgICAgICBSZXR1cm4gKENNUFIpCiAgICAgICAgICAgICAgICAgICAgfQoKICAgICAgICAg ICAgICAgICAgICBOYW1lIChDTVBSLCBSZXNvdXJjZVRlbXBsYXRlICgpCiAgICAgICAgICAg ICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICBTdGFydERlcGVuZGVudEZuICgw eDAwLCAweDAwKQogICAgICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAg ICAgICAgICAgICBJTyAoRGVjb2RlMTYsIDB4MDNGOCwgMHgwM0Y4LCAweDA0LCAweDA4KQog ICAgICAgICAgICAgICAgICAgICAgICAgICAgSVJRTm9GbGFncyAoKSB7NH0KICAgICAgICAg ICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICBTdGFydERlcGVuZGVu dEZuTm9QcmkgKCkKICAgICAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAg ICAgICAgICAgICAgSU8gKERlY29kZTE2LCAweDAzRjgsIDB4MDNGOCwgMHgwMSwgMHgwOCkK ICAgICAgICAgICAgICAgICAgICAgICAgICAgIElSUU5vRmxhZ3MgKCkgezMsNCw1LDYsNywx MCwxMSwxMn0KICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAg ICAgICBTdGFydERlcGVuZGVudEZuTm9QcmkgKCkKICAgICAgICAgICAgICAgICAgICAgICAg ewogICAgICAgICAgICAgICAgICAgICAgICAgICAgSU8gKERlY29kZTE2LCAweDAyRjgsIDB4 MDJGOCwgMHgwMSwgMHgwOCkKICAgICAgICAgICAgICAgICAgICAgICAgICAgIElSUU5vRmxh Z3MgKCkgezMsNCw1LDYsNywxMCwxMSwxMn0KICAgICAgICAgICAgICAgICAgICAgICAgfQog ICAgICAgICAgICAgICAgICAgICAgICBTdGFydERlcGVuZGVudEZuTm9QcmkgKCkKICAgICAg ICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgSU8gKERl Y29kZTE2LCAweDAzRTgsIDB4MDNFOCwgMHgwMSwgMHgwOCkKICAgICAgICAgICAgICAgICAg ICAgICAgICAgIElSUU5vRmxhZ3MgKCkgezMsNCw1LDYsNywxMCwxMSwxMn0KICAgICAgICAg ICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICBTdGFydERlcGVuZGVu dEZuTm9QcmkgKCkKICAgICAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAg ICAgICAgICAgICAgSU8gKERlY29kZTE2LCAweDAyRTgsIDB4MDJFOCwgMHgwMSwgMHgwOCkK ICAgICAgICAgICAgICAgICAgICAgICAgICAgIElSUU5vRmxhZ3MgKCkgezMsNCw1LDYsNywx MCwxMSwxMn0KICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAg ICAgICBFbmREZXBlbmRlbnRGbiAoKQogICAgICAgICAgICAgICAgICAgIH0pCiAgICAgICAg ICAgICAgICAgICAgTmFtZSAoUEJVRiwgUmVzb3VyY2VUZW1wbGF0ZSAoKQogICAgICAgICAg ICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgSU8gKERlY29kZTE2LCAweDAw MDAsIDB4MDAwMCwgMHgwMSwgMHgwOCkKICAgICAgICAgICAgICAgICAgICAgICAgSVJRTm9G bGFncyAoKSB7MH0KICAgICAgICAgICAgICAgICAgICB9KQogICAgICAgICAgICAgICAgICAg IE1ldGhvZCAoUENSUywgMywgTm90U2VyaWFsaXplZCkKICAgICAgICAgICAgICAgICAgICB7 CiAgICAgICAgICAgICAgICAgICAgICAgIENyZWF0ZUJ5dGVGaWVsZCAoUEJVRiwgMHgwMiwg SU9MTykKICAgICAgICAgICAgICAgICAgICAgICAgQ3JlYXRlQnl0ZUZpZWxkIChQQlVGLCAw eDAzLCBJT0hJKQogICAgICAgICAgICAgICAgICAgICAgICBDcmVhdGVXb3JkRmllbGQgKFBC VUYsIDB4MDIsIElPSEwpCiAgICAgICAgICAgICAgICAgICAgICAgIENyZWF0ZVdvcmRGaWVs ZCAoUEJVRiwgMHgwNCwgSU9STCkKICAgICAgICAgICAgICAgICAgICAgICAgQ3JlYXRlQnl0 ZUZpZWxkIChQQlVGLCAweDA2LCBBTE1OKQogICAgICAgICAgICAgICAgICAgICAgICBDcmVh dGVCeXRlRmllbGQgKFBCVUYsIDB4MDcsIExFTkcpCiAgICAgICAgICAgICAgICAgICAgICAg IENyZWF0ZUJ5dGVGaWVsZCAoUEJVRiwgMHgwOSwgSVJRTCkKICAgICAgICAgICAgICAgICAg ICAgICAgRU5GRyAoQ0dMRCAoQXJnMCkpCiAgICAgICAgICAgICAgICAgICAgICAgIFN0b3Jl IChJT0FILCBJT0hJKQogICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoSU9BTCwgSU9M TykKICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKElPSEwsIElPUkwpCiAgICAgICAg ICAgICAgICAgICAgICAgIFN0b3JlIChBcmcxLCBBTE1OKQogICAgICAgICAgICAgICAgICAg ICAgICBJZiAoTEVxdWFsIChJT0xPLCAweEJDKSkKICAgICAgICAgICAgICAgICAgICAgICAg ewogICAgICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKDB4MDQsIExFTkcpCiAgICAg ICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgRWxzZQogICAg ICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdG9y ZSAoQXJnMiwgTEVORykKICAgICAgICAgICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAg ICAgICAgICAgICAgU3RvcmUgKE9uZSwgTG9jYWwwKQogICAgICAgICAgICAgICAgICAgICAg ICBTaGlmdExlZnQgKExvY2FsMCwgSU5UUiwgSVJRTCkKICAgICAgICAgICAgICAgICAgICAg ICAgRVhGRyAoKQogICAgICAgICAgICAgICAgICAgICAgICBSZXR1cm4gKFBCVUYpCiAgICAg ICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICAgICBNZXRob2QgKFBTUlMsIDIs IE5vdFNlcmlhbGl6ZWQpCiAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAg ICAgICAgICBDcmVhdGVCeXRlRmllbGQgKEFyZzAsIDB4MDIsIFBPTEIpCiAgICAgICAgICAg ICAgICAgICAgICAgIENyZWF0ZUJ5dGVGaWVsZCAoQXJnMCwgMHgwMywgUE9IQikKICAgICAg ICAgICAgICAgICAgICAgICAgQ3JlYXRlV29yZEZpZWxkIChBcmcwLCAweDA5LCBQSVJRKQog ICAgICAgICAgICAgICAgICAgICAgICBFTkZHIChDR0xEIChBcmcxKSkKICAgICAgICAgICAg ICAgICAgICAgICAgU3RvcmUgKFBPTEIsIElPQUwpCiAgICAgICAgICAgICAgICAgICAgICAg IFN0b3JlIChQT0hCLCBJT0FIKQogICAgICAgICAgICAgICAgICAgICAgICBGaW5kU2V0Umln aHRCaXQgKFBJUlEsIExvY2FsMCkKICAgICAgICAgICAgICAgICAgICAgICAgU3VidHJhY3Qg KExvY2FsMCwgMHgwMSwgSU5UUikKICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKE9u ZSwgQUNUUikKICAgICAgICAgICAgICAgICAgICAgICAgRVhGRyAoKQogICAgICAgICAgICAg ICAgICAgIH0KICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICBEZXZpY2UgKFVB UjIpCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgTmFtZSAoX1VJRCwg MHgwMikKICAgICAgICAgICAgICAgICAgICBNZXRob2QgKF9ISUQsIDAsIE5vdFNlcmlhbGl6 ZWQpCiAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICBSZXR1 cm4gKFVISUQgKDB4MDEpKQogICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAg ICAgICAgTWV0aG9kIChfU1RBLCAwLCBOb3RTZXJpYWxpemVkKQogICAgICAgICAgICAgICAg ICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgUmV0dXJuIChEU1RBICgweDAxKSkKICAg ICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgIE1ldGhvZCAoX0RJUywg MCwgTm90U2VyaWFsaXplZCkKICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAg ICAgICAgICAgIERDTlQgKDB4MDEsIDB4MDApCiAgICAgICAgICAgICAgICAgICAgfQoKICAg ICAgICAgICAgICAgICAgICBNZXRob2QgKF9DUlMsIDAsIE5vdFNlcmlhbGl6ZWQpCiAgICAg ICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICBSZXR1cm4gKERDUlMg KDB4MDEpKQogICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAgICAgTWV0 aG9kIChfU1JTLCAxLCBOb3RTZXJpYWxpemVkKQogICAgICAgICAgICAgICAgICAgIHsKICAg ICAgICAgICAgICAgICAgICAgICAgRFNSUyAoQXJnMCwgMHgwMSkKICAgICAgICAgICAgICAg ICAgICB9CgogICAgICAgICAgICAgICAgICAgIE1ldGhvZCAoX1BSUywgMCwgTm90U2VyaWFs aXplZCkKICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgIFJl dHVybiAoQ01QUikKICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAg IE5hbWUgKENNUFIsIFJlc291cmNlVGVtcGxhdGUgKCkKICAgICAgICAgICAgICAgICAgICB7 CiAgICAgICAgICAgICAgICAgICAgICAgIElSUU5vRmxhZ3MgKCkgezMsNCw1LDYsNywxMCwx MSwxMn0KICAgICAgICAgICAgICAgICAgICAgICAgU3RhcnREZXBlbmRlbnRGbk5vUHJpICgp CiAgICAgICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAg IERNQSAoQ29tcGF0aWJpbGl0eSwgTm90QnVzTWFzdGVyLCBUcmFuc2ZlcjgpIHt9CiAgICAg ICAgICAgICAgICAgICAgICAgICAgICBJTyAoRGVjb2RlMTYsIDB4MDNGOCwgMHgwM0Y4LCAw eDAxLCAweDA4KQogICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAg ICAgICAgIFN0YXJ0RGVwZW5kZW50Rm5Ob1ByaSAoKQogICAgICAgICAgICAgICAgICAgICAg ICB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBETUEgKENvbXBhdGliaWxpdHksIE5v dEJ1c01hc3RlciwgVHJhbnNmZXI4KSB7fQogICAgICAgICAgICAgICAgICAgICAgICAgICAg SU8gKERlY29kZTE2LCAweDAyRjgsIDB4MDJGOCwgMHgwMSwgMHgwOCkKICAgICAgICAgICAg ICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICBTdGFydERlcGVuZGVudEZu Tm9QcmkgKCkKICAgICAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAg ICAgICAgICAgRE1BIChDb21wYXRpYmlsaXR5LCBOb3RCdXNNYXN0ZXIsIFRyYW5zZmVyOCkg e30KICAgICAgICAgICAgICAgICAgICAgICAgICAgIElPIChEZWNvZGUxNiwgMHgwM0U4LCAw eDAzRTgsIDB4MDEsIDB4MDgpCiAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAg ICAgICAgICAgICAgICAgU3RhcnREZXBlbmRlbnRGbk5vUHJpICgpCiAgICAgICAgICAgICAg ICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIERNQSAoQ29tcGF0aWJp bGl0eSwgTm90QnVzTWFzdGVyLCBUcmFuc2ZlcjgpIHt9CiAgICAgICAgICAgICAgICAgICAg ICAgICAgICBJTyAoRGVjb2RlMTYsIDB4MDJFOCwgMHgwMkU4LCAweDAxLCAweDA4KQogICAg ICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgIFN0YXJ0RGVw ZW5kZW50Rm5Ob1ByaSAoKQogICAgICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAg ICAgICAgICAgICAgICAgICBETUEgKENvbXBhdGliaWxpdHksIE5vdEJ1c01hc3RlciwgVHJh bnNmZXI4KSB7MSwyLDN9CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBJTyAoRGVjb2Rl MTYsIDB4MDNGOCwgMHgwM0Y4LCAweDAxLCAweDA4KQogICAgICAgICAgICAgICAgICAgICAg ICB9CiAgICAgICAgICAgICAgICAgICAgICAgIFN0YXJ0RGVwZW5kZW50Rm5Ob1ByaSAoKQog ICAgICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBE TUEgKENvbXBhdGliaWxpdHksIE5vdEJ1c01hc3RlciwgVHJhbnNmZXI4KSB7MSwyLDN9CiAg ICAgICAgICAgICAgICAgICAgICAgICAgICBJTyAoRGVjb2RlMTYsIDB4MDJGOCwgMHgwMkY4 LCAweDAxLCAweDA4KQogICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAg ICAgICAgICAgIFN0YXJ0RGVwZW5kZW50Rm5Ob1ByaSAoKQogICAgICAgICAgICAgICAgICAg ICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBETUEgKENvbXBhdGliaWxpdHks IE5vdEJ1c01hc3RlciwgVHJhbnNmZXI4KSB7MSwyLDN9CiAgICAgICAgICAgICAgICAgICAg ICAgICAgICBJTyAoRGVjb2RlMTYsIDB4MDNFOCwgMHgwM0U4LCAweDAxLCAweDA4KQogICAg ICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgIFN0YXJ0RGVw ZW5kZW50Rm5Ob1ByaSAoKQogICAgICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAg ICAgICAgICAgICAgICAgICBETUEgKENvbXBhdGliaWxpdHksIE5vdEJ1c01hc3RlciwgVHJh bnNmZXI4KSB7MSwyLDN9CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBJTyAoRGVjb2Rl MTYsIDB4MDJFOCwgMHgwMkU4LCAweDAxLCAweDA4KQogICAgICAgICAgICAgICAgICAgICAg ICB9CiAgICAgICAgICAgICAgICAgICAgICAgIEVuZERlcGVuZGVudEZuICgpCiAgICAgICAg ICAgICAgICAgICAgfSkKICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICBEZXZp Y2UgKEZEQykKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICBOYW1lIChf SElELCBFaXNhSWQgKCJQTlAwNzAwIikpCiAgICAgICAgICAgICAgICAgICAgTmFtZSAoX0ZE RSwgUGFja2FnZSAoMHgwNSkKICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAg ICAgICAgICAgIDB4MDEsIAogICAgICAgICAgICAgICAgICAgICAgICAweDAwLCAKICAgICAg ICAgICAgICAgICAgICAgICAgMHgwMiwgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDIs IAogICAgICAgICAgICAgICAgICAgICAgICAweDAyCiAgICAgICAgICAgICAgICAgICAgfSkK ICAgICAgICAgICAgICAgICAgICBNZXRob2QgKF9TVEEsIDAsIE5vdFNlcmlhbGl6ZWQpCiAg ICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICBSZXR1cm4gKERT VEEgKDB4MDMpKQogICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAgICAg TWV0aG9kIChfRElTLCAwLCBOb3RTZXJpYWxpemVkKQogICAgICAgICAgICAgICAgICAgIHsK ICAgICAgICAgICAgICAgICAgICAgICAgRENOVCAoMHgwMywgMHgwMCkKICAgICAgICAgICAg ICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgIE1ldGhvZCAoX0NSUywgMCwgTm90U2Vy aWFsaXplZCkKICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAg IERDUlMgKDB4MDMpCiAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlIChJUlFNLCBJUlFF KQogICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoRE1BTSwgRE1BRSkKICAgICAgICAg ICAgICAgICAgICAgICAgU3RvcmUgKElPMTEsIElPMjEpCiAgICAgICAgICAgICAgICAgICAg ICAgIFN0b3JlIChJTzEyLCBJTzIyKQogICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAo MHgwNiwgTEVOMikKICAgICAgICAgICAgICAgICAgICAgICAgQWRkIChJTzIxLCAweDA3LCBJ TzMxKQogICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoSU8zMSwgSU8zMikKICAgICAg ICAgICAgICAgICAgICAgICAgU3RvcmUgKDB4MDEsIExFTjMpCiAgICAgICAgICAgICAgICAg ICAgICAgIFJldHVybiAoQ1JTMikKICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAg ICAgICAgICAgIE1ldGhvZCAoX1NSUywgMSwgTm90U2VyaWFsaXplZCkKICAgICAgICAgICAg ICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgIERTUlMgKEFyZzAsIDB4MDMpCiAg ICAgICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICAgICBOYW1lIChfUFJTLCBS ZXNvdXJjZVRlbXBsYXRlICgpCiAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAg ICAgICAgICAgICBTdGFydERlcGVuZGVudEZuICgweDAwLCAweDAwKQogICAgICAgICAgICAg ICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBJUlFOb0ZsYWdzICgp IHs2fQogICAgICAgICAgICAgICAgICAgICAgICAgICAgRE1BIChDb21wYXRpYmlsaXR5LCBO b3RCdXNNYXN0ZXIsIFRyYW5zZmVyOCkgezJ9CiAgICAgICAgICAgICAgICAgICAgICAgICAg ICBJTyAoRGVjb2RlMTYsIDB4MDNGMCwgMHgwM0YwLCAweDAxLCAweDA2KQogICAgICAgICAg ICAgICAgICAgICAgICAgICAgSU8gKERlY29kZTE2LCAweDAzRjcsIDB4MDNGNywgMHgwMSwg MHgwMSkKICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAg ICBTdGFydERlcGVuZGVudEZuTm9QcmkgKCkKICAgICAgICAgICAgICAgICAgICAgICAgewog ICAgICAgICAgICAgICAgICAgICAgICAgICAgSVJRTm9GbGFncyAoKSB7Myw0LDUsNiw3LDEw LDExLDEyfQogICAgICAgICAgICAgICAgICAgICAgICAgICAgRE1BIChDb21wYXRpYmlsaXR5 LCBOb3RCdXNNYXN0ZXIsIFRyYW5zZmVyOCkgezEsMiwzfQogICAgICAgICAgICAgICAgICAg ICAgICAgICAgSU8gKERlY29kZTE2LCAweDAzRjAsIDB4MDNGMCwgMHgwMSwgMHgwNikKICAg ICAgICAgICAgICAgICAgICAgICAgICAgIElPIChEZWNvZGUxNiwgMHgwM0Y3LCAweDAzRjcs IDB4MDEsIDB4MDEpCiAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAg ICAgICAgICAgU3RhcnREZXBlbmRlbnRGbk5vUHJpICgpCiAgICAgICAgICAgICAgICAgICAg ICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIElSUU5vRmxhZ3MgKCkgezMsNCw1 LDYsNywxMCwxMSwxMn0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIERNQSAoQ29tcGF0 aWJpbGl0eSwgTm90QnVzTWFzdGVyLCBUcmFuc2ZlcjgpIHsxLDIsM30KICAgICAgICAgICAg ICAgICAgICAgICAgICAgIElPIChEZWNvZGUxNiwgMHgwMzcwLCAweDAzNzAsIDB4MDEsIDB4 MDYpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBJTyAoRGVjb2RlMTYsIDB4MDM3Nywg MHgwMzc3LCAweDAxLCAweDAxKQogICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAg ICAgICAgICAgICAgICAgIEVuZERlcGVuZGVudEZuICgpCiAgICAgICAgICAgICAgICAgICAg fSkKICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICBEZXZpY2UgKExQVEUpCiAg ICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgTmFtZSAoX1VJRCwgMHgwMSkK ICAgICAgICAgICAgICAgICAgICBNZXRob2QgKF9ISUQsIDAsIE5vdFNlcmlhbGl6ZWQpCiAg ICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICBJZiAoTFBUTSAo MHgwMikpCiAgICAgICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAg ICAgICAgIFJldHVybiAoMHgwMTA0RDA0MSkKICAgICAgICAgICAgICAgICAgICAgICAgfQog ICAgICAgICAgICAgICAgICAgICAgICBFbHNlCiAgICAgICAgICAgICAgICAgICAgICAgIHsK ICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJldHVybiAoMHgwMDA0RDA0MSkKICAgICAg ICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAg ICAgICAgICAgTWV0aG9kIChfU1RBLCAwLCBOb3RTZXJpYWxpemVkKQogICAgICAgICAgICAg ICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgUmV0dXJuIChEU1RBICgweDAyKSkK ICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgIE1ldGhvZCAoX0RJ UywgMCwgTm90U2VyaWFsaXplZCkKICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAg ICAgICAgICAgICAgIERDTlQgKDB4MDIsIDB4MDApCiAgICAgICAgICAgICAgICAgICAgfQoK ICAgICAgICAgICAgICAgICAgICBNZXRob2QgKF9DUlMsIDAsIE5vdFNlcmlhbGl6ZWQpCiAg ICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICBSZXR1cm4gKEVD UlMgKDB4MDIpKQogICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAgICAg TWV0aG9kIChfU1JTLCAxLCBOb3RTZXJpYWxpemVkKQogICAgICAgICAgICAgICAgICAgIHsK ICAgICAgICAgICAgICAgICAgICAgICAgRVNSUyAoQXJnMCwgMHgwMikKICAgICAgICAgICAg ICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgIE1ldGhvZCAoX1BSUywgMCwgTm90U2Vy aWFsaXplZCkKICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAg IElmIChMUFRNICgweDAyKSkKICAgICAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAg ICAgICAgICAgICAgICAgICAgUmV0dXJuIChFUFBSKQogICAgICAgICAgICAgICAgICAgICAg ICB9CiAgICAgICAgICAgICAgICAgICAgICAgIEVsc2UKICAgICAgICAgICAgICAgICAgICAg ICAgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgUmV0dXJuIChMUFBSKQogICAgICAg ICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAg ICAgICAgICBOYW1lIChMUFBSLCBSZXNvdXJjZVRlbXBsYXRlICgpCiAgICAgICAgICAgICAg ICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICBTdGFydERlcGVuZGVudEZuICgweDAw LCAweDAwKQogICAgICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAg ICAgICAgICBJTyAoRGVjb2RlMTYsIDB4MDM3OCwgMHgwMzc4LCAweDAxLCAweDA4KQogICAg ICAgICAgICAgICAgICAgICAgICAgICAgSVJRTm9GbGFncyAoKSB7N30KICAgICAgICAgICAg ICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICBTdGFydERlcGVuZGVudEZu Tm9QcmkgKCkKICAgICAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAg ICAgICAgICAgSU8gKERlY29kZTE2LCAweDAzNzgsIDB4MDM3OCwgMHgwMSwgMHgwOCkKICAg ICAgICAgICAgICAgICAgICAgICAgICAgIElSUU5vRmxhZ3MgKCkgezMsNCw1LDYsNywxMCwx MSwxMn0KICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAg ICBTdGFydERlcGVuZGVudEZuTm9QcmkgKCkKICAgICAgICAgICAgICAgICAgICAgICAgewog ICAgICAgICAgICAgICAgICAgICAgICAgICAgSU8gKERlY29kZTE2LCAweDAyNzgsIDB4MDI3 OCwgMHgwMSwgMHgwOCkKICAgICAgICAgICAgICAgICAgICAgICAgICAgIElSUU5vRmxhZ3Mg KCkgezMsNCw1LDYsNywxMCwxMSwxMn0KICAgICAgICAgICAgICAgICAgICAgICAgfQogICAg ICAgICAgICAgICAgICAgICAgICBTdGFydERlcGVuZGVudEZuTm9QcmkgKCkKICAgICAgICAg ICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgSU8gKERlY29k ZTE2LCAweDAzQkMsIDB4MDNCQywgMHgwMSwgMHgwNCkKICAgICAgICAgICAgICAgICAgICAg ICAgICAgIElSUU5vRmxhZ3MgKCkgezMsNCw1LDYsNywxMCwxMSwxMn0KICAgICAgICAgICAg ICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICBFbmREZXBlbmRlbnRGbiAo KQogICAgICAgICAgICAgICAgICAgIH0pCiAgICAgICAgICAgICAgICAgICAgTmFtZSAoRVBQ UiwgUmVzb3VyY2VUZW1wbGF0ZSAoKQogICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAg ICAgICAgICAgICAgICAgU3RhcnREZXBlbmRlbnRGbiAoMHgwMCwgMHgwMCkKICAgICAgICAg ICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgSU8gKERlY29k ZTE2LCAweDAzNzgsIDB4MDM3OCwgMHgwMSwgMHgwOCkKICAgICAgICAgICAgICAgICAgICAg ICAgICAgIElPIChEZWNvZGUxNiwgMHgwNzc4LCAweDA3NzgsIDB4MDEsIDB4MDQpCiAgICAg ICAgICAgICAgICAgICAgICAgICAgICBJUlFOb0ZsYWdzICgpIHs3fQogICAgICAgICAgICAg ICAgICAgICAgICAgICAgRE1BIChDb21wYXRpYmlsaXR5LCBOb3RCdXNNYXN0ZXIsIFRyYW5z ZmVyOCkgezN9CiAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAg ICAgICAgU3RhcnREZXBlbmRlbnRGbk5vUHJpICgpCiAgICAgICAgICAgICAgICAgICAgICAg IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIElPIChEZWNvZGUxNiwgMHgwMzc4LCAw eDAzNzgsIDB4MDEsIDB4MDgpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBJTyAoRGVj b2RlMTYsIDB4MDc3OCwgMHgwNzc4LCAweDAxLCAweDA0KQogICAgICAgICAgICAgICAgICAg ICAgICAgICAgSVJRTm9GbGFncyAoKSB7Myw0LDUsNiw3LDEwLDExLDEyfQogICAgICAgICAg ICAgICAgICAgICAgICAgICAgRE1BIChDb21wYXRpYmlsaXR5LCBOb3RCdXNNYXN0ZXIsIFRy YW5zZmVyOCkgezAsMSwzfQogICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAg ICAgICAgICAgICAgIFN0YXJ0RGVwZW5kZW50Rm5Ob1ByaSAoKQogICAgICAgICAgICAgICAg ICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBJTyAoRGVjb2RlMTYsIDB4 MDI3OCwgMHgwMjc4LCAweDAxLCAweDA4KQogICAgICAgICAgICAgICAgICAgICAgICAgICAg SU8gKERlY29kZTE2LCAweDA2NzgsIDB4MDY3OCwgMHgwMSwgMHgwNCkKICAgICAgICAgICAg ICAgICAgICAgICAgICAgIElSUU5vRmxhZ3MgKCkgezMsNCw1LDYsNywxMCwxMSwxMn0KICAg ICAgICAgICAgICAgICAgICAgICAgICAgIERNQSAoQ29tcGF0aWJpbGl0eSwgTm90QnVzTWFz dGVyLCBUcmFuc2ZlcjgpIHswLDEsM30KICAgICAgICAgICAgICAgICAgICAgICAgfQogICAg ICAgICAgICAgICAgICAgICAgICBTdGFydERlcGVuZGVudEZuTm9QcmkgKCkKICAgICAgICAg ICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgSU8gKERlY29k ZTE2LCAweDAzQkMsIDB4MDNCQywgMHgwMSwgMHgwNCkKICAgICAgICAgICAgICAgICAgICAg ICAgICAgIElPIChEZWNvZGUxNiwgMHgwN0JDLCAweDA3QkMsIDB4MDEsIDB4MDQpCiAgICAg ICAgICAgICAgICAgICAgICAgICAgICBJUlFOb0ZsYWdzICgpIHszLDQsNSw2LDcsMTAsMTEs MTJ9CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBETUEgKENvbXBhdGliaWxpdHksIE5v dEJ1c01hc3RlciwgVHJhbnNmZXI4KSB7MCwxLDN9CiAgICAgICAgICAgICAgICAgICAgICAg IH0KICAgICAgICAgICAgICAgICAgICAgICAgRW5kRGVwZW5kZW50Rm4gKCkKICAgICAgICAg ICAgICAgICAgICB9KQogICAgICAgICAgICAgICAgICAgIE5hbWUgKEVCVUYsIFJlc291cmNl VGVtcGxhdGUgKCkKICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAg ICAgIElPIChEZWNvZGUxNiwgMHgwMzc4LCAweDAzNzgsIDB4MDEsIDB4MDgpCiAgICAgICAg ICAgICAgICAgICAgICAgIElPIChEZWNvZGUxNiwgMHgwNzc4LCAweDA3NzgsIDB4MDEsIDB4 MDQpCiAgICAgICAgICAgICAgICAgICAgICAgIElSUU5vRmxhZ3MgKCkgezd9CiAgICAgICAg ICAgICAgICAgICAgICAgIERNQSAoQ29tcGF0aWJpbGl0eSwgTm90QnVzTWFzdGVyLCBUcmFu c2ZlcjgpIHt9CiAgICAgICAgICAgICAgICAgICAgfSkKICAgICAgICAgICAgICAgICAgICBD cmVhdGVCeXRlRmllbGQgKEVCVUYsIDB4MDIsIEVQTE8pCiAgICAgICAgICAgICAgICAgICAg Q3JlYXRlQnl0ZUZpZWxkIChFQlVGLCAweDAzLCBFUEhJKQogICAgICAgICAgICAgICAgICAg IENyZWF0ZVdvcmRGaWVsZCAoRUJVRiwgMHgwMiwgRVBITCkKICAgICAgICAgICAgICAgICAg ICBDcmVhdGVXb3JkRmllbGQgKEVCVUYsIDB4MDQsIEVQUkwpCiAgICAgICAgICAgICAgICAg ICAgQ3JlYXRlV29yZEZpZWxkIChFQlVGLCAweDA2LCBBTE0xKQogICAgICAgICAgICAgICAg ICAgIENyZWF0ZVdvcmRGaWVsZCAoRUJVRiwgMHgwQSwgRTRMTykKICAgICAgICAgICAgICAg ICAgICBDcmVhdGVXb3JkRmllbGQgKEVCVUYsIDB4MEMsIEU0UkwpCiAgICAgICAgICAgICAg ICAgICAgQ3JlYXRlV29yZEZpZWxkIChFQlVGLCAweDBFLCBFTE5HKQogICAgICAgICAgICAg ICAgICAgIENyZWF0ZVdvcmRGaWVsZCAoRUJVRiwgMHgxMSwgRUlSUSkKICAgICAgICAgICAg ICAgICAgICBDcmVhdGVCeXRlRmllbGQgKEVCVUYsIDB4MTQsIEVETUEpCiAgICAgICAgICAg ICAgICAgICAgTmFtZSAoUEJVRiwgUmVzb3VyY2VUZW1wbGF0ZSAoKQogICAgICAgICAgICAg ICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgSU8gKERlY29kZTE2LCAweDAzNzgs IDB4MDM3OCwgMHgwMSwgMHgwOCkKICAgICAgICAgICAgICAgICAgICAgICAgSVJRTm9GbGFn cyAoKSB7N30KICAgICAgICAgICAgICAgICAgICB9KQogICAgICAgICAgICAgICAgICAgIENy ZWF0ZUJ5dGVGaWVsZCAoUEJVRiwgMHgwMiwgUFBMTykKICAgICAgICAgICAgICAgICAgICBD cmVhdGVCeXRlRmllbGQgKFBCVUYsIDB4MDMsIFBQSEkpCiAgICAgICAgICAgICAgICAgICAg Q3JlYXRlV29yZEZpZWxkIChQQlVGLCAweDAyLCBQUEhMKQogICAgICAgICAgICAgICAgICAg IENyZWF0ZVdvcmRGaWVsZCAoUEJVRiwgMHgwNCwgUFBSTCkKICAgICAgICAgICAgICAgICAg ICBDcmVhdGVXb3JkRmllbGQgKFBCVUYsIDB4MDYsIEFMTTApCiAgICAgICAgICAgICAgICAg ICAgQ3JlYXRlV29yZEZpZWxkIChQQlVGLCAweDA5LCBQSVJRKQogICAgICAgICAgICAgICAg ICAgIE1ldGhvZCAoRUNSUywgMSwgTm90U2VyaWFsaXplZCkKICAgICAgICAgICAgICAgICAg ICB7CiAgICAgICAgICAgICAgICAgICAgICAgIEVORkcgKENHTEQgKEFyZzApKQogICAgICAg ICAgICAgICAgICAgICAgICBTdG9yZSAoSU9BSCwgRVBISSkKICAgICAgICAgICAgICAgICAg ICAgICAgU3RvcmUgKElPQUwsIEVQTE8pCiAgICAgICAgICAgICAgICAgICAgICAgIFN0b3Jl IChJT0FILCBQUEhJKQogICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoSU9BTCwgUFBM TykKICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKEVQSEwsIEVQUkwpCiAgICAgICAg ICAgICAgICAgICAgICAgIFN0b3JlIChQUEhMLCBQUFJMKQogICAgICAgICAgICAgICAgICAg ICAgICBBbmQgKE9QVDAsIDB4MDIsIExvY2FsMCkKICAgICAgICAgICAgICAgICAgICAgICAg SWYgKExvY2FsMCkKICAgICAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAg ICAgICAgICAgICAgQWRkIChFUEhMLCAweDA0MDAsIEU0TE8pCiAgICAgICAgICAgICAgICAg ICAgICAgICAgICBTdG9yZSAoRTRMTywgRTRSTCkKICAgICAgICAgICAgICAgICAgICAgICAg fQoKICAgICAgICAgICAgICAgICAgICAgICAgSWYgKExFcXVhbCAoRVBITCwgMHgwM0JDKSkK ICAgICAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAgICAg U3RvcmUgKDB4MDQwMSwgQUxNMSkKICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN0b3Jl ICgweDA0MDEsIEFMTTApCiAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAg ICAgICAgICAgICAgRWxzZQogICAgICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAg ICAgICAgICAgICAgICAgICBTdG9yZSAoMHgwODAxLCBBTE0xKQogICAgICAgICAgICAgICAg ICAgICAgICAgICAgU3RvcmUgKDB4MDgwMSwgQUxNMCkKICAgICAgICAgICAgICAgICAgICAg ICAgfQoKICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKE9uZSwgTG9jYWwwKQogICAg ICAgICAgICAgICAgICAgICAgICBTdG9yZSAoSU5UUiwgTG9jYWwxKQogICAgICAgICAgICAg ICAgICAgICAgICBTaGlmdExlZnQgKExvY2FsMCwgTG9jYWwxLCBFSVJRKQogICAgICAgICAg ICAgICAgICAgICAgICBTaGlmdExlZnQgKExvY2FsMCwgTG9jYWwxLCBQSVJRKQogICAgICAg ICAgICAgICAgICAgICAgICBTdG9yZSAoRE1DSCwgTG9jYWwxKQogICAgICAgICAgICAgICAg ICAgICAgICBJZiAoTEdyZWF0ZXIgKExvY2FsMSwgMHgwMykpCiAgICAgICAgICAgICAgICAg ICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlICgweDAwLCBFRE1B KQogICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgIEVs c2UKICAgICAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAg ICAgU3RvcmUgKE9uZSwgTG9jYWwwKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgU2hp ZnRMZWZ0IChMb2NhbDAsIExvY2FsMSwgRURNQSkKICAgICAgICAgICAgICAgICAgICAgICAg fQoKICAgICAgICAgICAgICAgICAgICAgICAgQW5kIChPUFQwLCAweDAyLCBMb2NhbDApCiAg ICAgICAgICAgICAgICAgICAgICAgIEVYRkcgKCkKICAgICAgICAgICAgICAgICAgICAgICAg SWYgKExvY2FsMCkKICAgICAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAg ICAgICAgICAgICAgUmV0dXJuIChFQlVGKQogICAgICAgICAgICAgICAgICAgICAgICB9CiAg ICAgICAgICAgICAgICAgICAgICAgIEVsc2UKICAgICAgICAgICAgICAgICAgICAgICAgewog ICAgICAgICAgICAgICAgICAgICAgICAgICAgUmV0dXJuIChQQlVGKQogICAgICAgICAgICAg ICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICAg ICBNZXRob2QgKEVTUlMsIDIsIE5vdFNlcmlhbGl6ZWQpCiAgICAgICAgICAgICAgICAgICAg ewogICAgICAgICAgICAgICAgICAgICAgICBFTkZHIChDR0xEIChBcmcxKSkKICAgICAgICAg ICAgICAgICAgICAgICAgQ3JlYXRlQnl0ZUZpZWxkIChBcmcwLCAweDAyLCBMT0VQKQogICAg ICAgICAgICAgICAgICAgICAgICBDcmVhdGVCeXRlRmllbGQgKEFyZzAsIDB4MDMsIEhJRVAp CiAgICAgICAgICAgICAgICAgICAgICAgIEFuZCAoT1BUMCwgMHgwMiwgTG9jYWwwKQogICAg ICAgICAgICAgICAgICAgICAgICBJZiAoTG9jYWwwKQogICAgICAgICAgICAgICAgICAgICAg ICB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBDcmVhdGVXb3JkRmllbGQgKEFyZzAs IDB4MTEsIElSUUUpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBDcmVhdGVCeXRlRmll bGQgKEFyZzAsIDB4MTQsIERNQUUpCiAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAg ICAgICAgICAgICAgICAgICAgRWxzZQogICAgICAgICAgICAgICAgICAgICAgICB7CiAgICAg ICAgICAgICAgICAgICAgICAgICAgICBDcmVhdGVXb3JkRmllbGQgKEFyZzAsIDB4MDksIElS UVApCiAgICAgICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAgICAgICAg IFN0b3JlIChMT0VQLCBJT0FMKQogICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoSElF UCwgSU9BSCkKICAgICAgICAgICAgICAgICAgICAgICAgQW5kIChPUFQwLCAweDAyLCBMb2Nh bDApCiAgICAgICAgICAgICAgICAgICAgICAgIElmIChMb2NhbDApCiAgICAgICAgICAgICAg ICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIElmIChJUlFFKQogICAg ICAgICAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIEZpbmRTZXRSaWdodEJpdCAoSVJRRSwgTG9jYWwwKQogICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIFN1YnRyYWN0IChMb2NhbDAsIDB4MDEsIElOVFIpCiAgICAgICAgICAg ICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBFbHNlCiAg ICAgICAgICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgU3RvcmUgKDB4MDAsIElOVFIpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9 CiAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgRWxz ZQogICAgICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgICAg ICBJZiAoSVJRUCkKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBGaW5kU2V0UmlnaHRCaXQgKElSUVAsIExvY2FsMCkKICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdWJ0cmFjdCAoTG9jYWwwLCAweDAxLCBJ TlRSKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAg ICAgICAgICAgRWxzZQogICAgICAgICAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIFN0b3JlICgweDAwLCBJTlRSKQogICAgICAgICAgICAg ICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAg ICAgICAgICAgICAgICBBbmQgKE9QVDAsIDB4MDIsIExvY2FsMCkKICAgICAgICAgICAgICAg ICAgICAgICAgSWYgKExvY2FsMCkKICAgICAgICAgICAgICAgICAgICAgICAgewogICAgICAg ICAgICAgICAgICAgICAgICAgICAgSWYgKERNQUUpCiAgICAgICAgICAgICAgICAgICAgICAg ICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRmluZFNldFJpZ2h0Qml0 IChETUFFLCBMb2NhbDApCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU3VidHJh Y3QgKExvY2FsMCwgMHgwMSwgRE1DSCkKICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0K ICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVsc2UKICAgICAgICAgICAgICAgICAgICAg ICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoMHgwNCwg RE1DSCkKICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAg ICAgICAgfQoKICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKE9uZSwgQUNUUikKICAg ICAgICAgICAgICAgICAgICAgICAgRVhGRyAoKQogICAgICAgICAgICAgICAgICAgIH0KICAg ICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICBEZXZpY2UgKEdBTUUpCiAgICAgICAg ICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgTmFtZSAoX0hJRCwgRWlzYUlkICgiUE5Q QjAyRiIpKQogICAgICAgICAgICAgICAgICAgIE1ldGhvZCAoX1NUQSwgMCwgTm90U2VyaWFs aXplZCkKICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgIFJl dHVybiAoRFNUQSAoMHgwOCkpCiAgICAgICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAg ICAgICAgICBNZXRob2QgKF9ESVMsIDAsIE5vdFNlcmlhbGl6ZWQpCiAgICAgICAgICAgICAg ICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICBEQ05UICgweDA4LCAweDAwKQogICAg ICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAgICAgTmFtZSAoR01DUiwgUmVz b3VyY2VUZW1wbGF0ZSAoKQogICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAg ICAgICAgICAgSU8gKERlY29kZTE2LCAweDAyMDAsIDB4MDIwMCwgMHgwMSwgMHgwOCkKICAg ICAgICAgICAgICAgICAgICB9KQogICAgICAgICAgICAgICAgICAgIE1ldGhvZCAoX0NSUywg MCwgTm90U2VyaWFsaXplZCkKICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAg ICAgICAgICAgIENyZWF0ZUJ5dGVGaWVsZCAoR01DUiwgMHgwMiwgSU9MTykKICAgICAgICAg ICAgICAgICAgICAgICAgQ3JlYXRlQnl0ZUZpZWxkIChHTUNSLCAweDAzLCBJT0hJKQogICAg ICAgICAgICAgICAgICAgICAgICBDcmVhdGVXb3JkRmllbGQgKEdNQ1IsIDB4MDIsIElPSEwp CiAgICAgICAgICAgICAgICAgICAgICAgIENyZWF0ZVdvcmRGaWVsZCAoR01DUiwgMHgwNCwg SU9STCkKICAgICAgICAgICAgICAgICAgICAgICAgRU5GRyAoQ0dMRCAoMHgwOCkpCiAgICAg ICAgICAgICAgICAgICAgICAgIFN0b3JlIChJT0FILCBJT0hJKQogICAgICAgICAgICAgICAg ICAgICAgICBTdG9yZSAoSU9BTCwgSU9MTykKICAgICAgICAgICAgICAgICAgICAgICAgU3Rv cmUgKElPSEwsIElPUkwpCiAgICAgICAgICAgICAgICAgICAgICAgIEVYRkcgKCkKICAgICAg ICAgICAgICAgICAgICAgICAgUmV0dXJuIChHTUNSKQogICAgICAgICAgICAgICAgICAgIH0K CiAgICAgICAgICAgICAgICAgICAgTWV0aG9kIChfU1JTLCAxLCBOb3RTZXJpYWxpemVkKQog ICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgQ3JlYXRlQnl0 ZUZpZWxkIChBcmcwLCAweDAyLCBQT0xCKQogICAgICAgICAgICAgICAgICAgICAgICBDcmVh dGVCeXRlRmllbGQgKEFyZzAsIDB4MDMsIFBPSEIpCiAgICAgICAgICAgICAgICAgICAgICAg IEVORkcgKENHTEQgKDB4MDgpKQogICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoUE9M QiwgSU9BTCkKICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKFBPSEIsIElPQUgpCiAg ICAgICAgICAgICAgICAgICAgICAgIERDTlQgKDB4MDgsIDB4MDEpCiAgICAgICAgICAgICAg ICAgICAgICAgIEVYRkcgKCkKICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAg ICAgICAgIE5hbWUgKF9QUlMsIFJlc291cmNlVGVtcGxhdGUgKCkKICAgICAgICAgICAgICAg ICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgIFN0YXJ0RGVwZW5kZW50Rm4gKDB4MDAs IDB4MDApCiAgICAgICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAg ICAgICAgIElPIChEZWNvZGUxNiwgMHgwMjAwLCAweDAyMDAsIDB4MDEsIDB4MDgpCiAgICAg ICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgU3RhcnREZXBl bmRlbnRGbk5vUHJpICgpCiAgICAgICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAg ICAgICAgICAgICAgICAgIElPIChEZWNvZGUxNiwgMHgwMjA4LCAweDAyMDgsIDB4MDEsIDB4 MDgpCiAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAg RW5kRGVwZW5kZW50Rm4gKCkKICAgICAgICAgICAgICAgICAgICB9KQogICAgICAgICAgICAg ICAgfQoKICAgICAgICAgICAgICAgIERldmljZSAoTUlESSkKICAgICAgICAgICAgICAgIHsK ICAgICAgICAgICAgICAgICAgICBOYW1lIChfSElELCBFaXNhSWQgKCJQTlBCMDA2IikpCiAg ICAgICAgICAgICAgICAgICAgTWV0aG9kIChfU1RBLCAwLCBOb3RTZXJpYWxpemVkKQogICAg ICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgUmV0dXJuIChEU1RB ICgweDA1KSkKICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgIE1l dGhvZCAoX0RJUywgMCwgTm90U2VyaWFsaXplZCkKICAgICAgICAgICAgICAgICAgICB7CiAg ICAgICAgICAgICAgICAgICAgICAgIERDTlQgKDB4MDUsIDB4MDApCiAgICAgICAgICAgICAg ICAgICAgfQoKICAgICAgICAgICAgICAgICAgICBOYW1lIChNRENSLCBSZXNvdXJjZVRlbXBs YXRlICgpCiAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICBJ TyAoRGVjb2RlMTYsIDB4MDMwMCwgMHgwMzAwLCAweDAxLCAweDAyKQogICAgICAgICAgICAg ICAgICAgICAgICBJUlFOb0ZsYWdzICgpIHs1fQogICAgICAgICAgICAgICAgICAgIH0pCiAg ICAgICAgICAgICAgICAgICAgTWV0aG9kIChfQ1JTLCAwLCBOb3RTZXJpYWxpemVkKQogICAg ICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgQ3JlYXRlQnl0ZUZp ZWxkIChNRENSLCAweDAyLCBJT0xPKQogICAgICAgICAgICAgICAgICAgICAgICBDcmVhdGVC eXRlRmllbGQgKE1EQ1IsIDB4MDMsIElPSEkpCiAgICAgICAgICAgICAgICAgICAgICAgIENy ZWF0ZVdvcmRGaWVsZCAoTURDUiwgMHgwMiwgSU9ITCkKICAgICAgICAgICAgICAgICAgICAg ICAgQ3JlYXRlV29yZEZpZWxkIChNRENSLCAweDA0LCBJT1JMKQogICAgICAgICAgICAgICAg ICAgICAgICBDcmVhdGVXb3JkRmllbGQgKE1EQ1IsIDB4MDksIE1JUlEpCiAgICAgICAgICAg ICAgICAgICAgICAgIEVORkcgKENHTEQgKDB4MDUpKQogICAgICAgICAgICAgICAgICAgICAg ICBTdG9yZSAoSU9IMiwgSU9ISSkKICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKElP TDIsIElPTE8pCiAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlIChJT0hMLCBJT1JMKQog ICAgICAgICAgICAgICAgICAgICAgICBTaGlmdExlZnQgKDB4MDEsIElOVFIsIE1JUlEpCiAg ICAgICAgICAgICAgICAgICAgICAgIEVYRkcgKCkKICAgICAgICAgICAgICAgICAgICAgICAg UmV0dXJuIChNRENSKQogICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAg ICAgTWV0aG9kIChfU1JTLCAxLCBOb3RTZXJpYWxpemVkKQogICAgICAgICAgICAgICAgICAg IHsKICAgICAgICAgICAgICAgICAgICAgICAgQ3JlYXRlQnl0ZUZpZWxkIChBcmcwLCAweDAy LCBQT0xCKQogICAgICAgICAgICAgICAgICAgICAgICBDcmVhdGVCeXRlRmllbGQgKEFyZzAs IDB4MDMsIFBPSEIpCiAgICAgICAgICAgICAgICAgICAgICAgIENyZWF0ZVdvcmRGaWVsZCAo QXJnMCwgMHgwOSwgTUlSUSkKICAgICAgICAgICAgICAgICAgICAgICAgRU5GRyAoQ0dMRCAo MHgwNSkpCiAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlIChQT0xCLCBJT0wyKQogICAg ICAgICAgICAgICAgICAgICAgICBTdG9yZSAoUE9IQiwgSU9IMikKICAgICAgICAgICAgICAg ICAgICAgICAgRmluZFNldFJpZ2h0Qml0IChNSVJRLCBMb2NhbDApCiAgICAgICAgICAgICAg ICAgICAgICAgIFN1YnRyYWN0IChMb2NhbDAsIDB4MDEsIElOVFIpCiAgICAgICAgICAgICAg ICAgICAgICAgIERDTlQgKDB4MDUsIDB4MDEpCiAgICAgICAgICAgICAgICAgICAgICAgIEVY RkcgKCkKICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgIE5hbWUg KF9QUlMsIFJlc291cmNlVGVtcGxhdGUgKCkKICAgICAgICAgICAgICAgICAgICB7CiAgICAg ICAgICAgICAgICAgICAgICAgIFN0YXJ0RGVwZW5kZW50Rm5Ob1ByaSAoKQogICAgICAgICAg ICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBJTyAoRGVjb2Rl MTYsIDB4MDMwMCwgMHgwMzAwLCAweDAxLCAweDAyKQogICAgICAgICAgICAgICAgICAgICAg ICB9CiAgICAgICAgICAgICAgICAgICAgICAgIFN0YXJ0RGVwZW5kZW50Rm5Ob1ByaSAoKQog ICAgICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBJ TyAoRGVjb2RlMTYsIDB4MDMzMCwgMHgwMzMwLCAweDAxLCAweDAyKQogICAgICAgICAgICAg ICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgIEVuZERlcGVuZGVudEZuICgp CiAgICAgICAgICAgICAgICAgICAgICAgIElSUU5vRmxhZ3MgKCkgezUsOSwxMCwxMX0KICAg ICAgICAgICAgICAgICAgICB9KQogICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAg IERldmljZSAoU0lPUikKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICBO YW1lIChfSElELCBFaXNhSWQgKCJQTlAwQzAyIikpCiAgICAgICAgICAgICAgICAgICAgTWV0 aG9kIChfVUlELCAwLCBOb3RTZXJpYWxpemVkKQogICAgICAgICAgICAgICAgICAgIHsKICAg ICAgICAgICAgICAgICAgICAgICAgUmV0dXJuIChTUElPKQogICAgICAgICAgICAgICAgICAg IH0KCiAgICAgICAgICAgICAgICAgICAgTmFtZSAoQ1JTLCBSZXNvdXJjZVRlbXBsYXRlICgp CiAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICBJTyAoRGVj b2RlMTYsIDB4MDAwMCwgMHgwMDAwLCAweDAwLCAweDAwKQogICAgICAgICAgICAgICAgICAg ICAgICBJTyAoRGVjb2RlMTYsIDB4MDAwMCwgMHgwMDAwLCAweDAwLCAweDAwKQogICAgICAg ICAgICAgICAgICAgICAgICBJTyAoRGVjb2RlMTYsIDB4MDI5MCwgMHgwMjkwLCAweDAwLCAw eDA4KQogICAgICAgICAgICAgICAgICAgIH0pCiAgICAgICAgICAgICAgICAgICAgTWV0aG9k IChfQ1JTLCAwLCBOb3RTZXJpYWxpemVkKQogICAgICAgICAgICAgICAgICAgIHsKICAgICAg ICAgICAgICAgICAgICAgICAgSWYgKExBbmQgKExOb3QgKExFcXVhbCAoU1BJTywgMHgwM0Yw KSksIExHcmVhdGVyIChTUElPLCAweEYwKSkpCiAgICAgICAgICAgICAgICAgICAgICAgIHsK ICAgICAgICAgICAgICAgICAgICAgICAgICAgIENyZWF0ZVdvcmRGaWVsZCAoQ1JTLCAweDAy LCBHUDEwKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgQ3JlYXRlV29yZEZpZWxkIChD UlMsIDB4MDQsIEdQMTEpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBDcmVhdGVCeXRl RmllbGQgKENSUywgMHgwNywgR1BMMSkKICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN0 b3JlIChTUElPLCBHUDEwKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKFNQ SU8sIEdQMTEpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoMHgwMiwgR1BM MSkKICAgICAgICAgICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICAgICAgICAg SWYgKElPMUIpCiAgICAgICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAg ICAgICAgICAgIENyZWF0ZVdvcmRGaWVsZCAoQ1JTLCAweDBBLCBHUDIwKQogICAgICAgICAg ICAgICAgICAgICAgICAgICAgQ3JlYXRlV29yZEZpZWxkIChDUlMsIDB4MEMsIEdQMjEpCiAg ICAgICAgICAgICAgICAgICAgICAgICAgICBDcmVhdGVCeXRlRmllbGQgKENSUywgMHgwRiwg R1BMMikKICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlIChJTzFCLCBHUDIwKQog ICAgICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKElPMUIsIEdQMjEpCiAgICAgICAg ICAgICAgICAgICAgICAgICAgICBTdG9yZSAoSU8xTCwgR1BMMikKICAgICAgICAgICAgICAg ICAgICAgICAgfQoKICAgICAgICAgICAgICAgICAgICAgICAgUmV0dXJuIChDUlMpCiAgICAg ICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgIE5h bWUgKERDQVQsIFBhY2thZ2UgKDB4MTUpCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAg ICAgICAgICAgMHgwMiwgCiAgICAgICAgICAgICAgICAgICAgMHgwMywgCiAgICAgICAgICAg ICAgICAgICAgMHgwMSwgCiAgICAgICAgICAgICAgICAgICAgMHgwMCwgCiAgICAgICAgICAg ICAgICAgICAgMHhGRiwgCiAgICAgICAgICAgICAgICAgICAgMHgwNywgCiAgICAgICAgICAg ICAgICAgICAgMHhGRiwgCiAgICAgICAgICAgICAgICAgICAgMHhGRiwgCiAgICAgICAgICAg ICAgICAgICAgMHgwNywgCiAgICAgICAgICAgICAgICAgICAgMHhGRiwgCiAgICAgICAgICAg ICAgICAgICAgMHhGRiwgCiAgICAgICAgICAgICAgICAgICAgMHhGRiwgCiAgICAgICAgICAg ICAgICAgICAgMHhGRiwgCiAgICAgICAgICAgICAgICAgICAgMHhGRiwgCiAgICAgICAgICAg ICAgICAgICAgMHhGRiwgCiAgICAgICAgICAgICAgICAgICAgMHhGRiwgCiAgICAgICAgICAg ICAgICAgICAgMHgwNywgCiAgICAgICAgICAgICAgICAgICAgMHgwOCwgCiAgICAgICAgICAg ICAgICAgICAgMHgwOSwgCiAgICAgICAgICAgICAgICAgICAgMHhGRiwgCiAgICAgICAgICAg ICAgICAgICAgMHhGRgogICAgICAgICAgICAgICAgfSkKICAgICAgICAgICAgICAgIE1ldGhv ZCAoRU5GRywgMSwgTm90U2VyaWFsaXplZCkKICAgICAgICAgICAgICAgIHsKICAgICAgICAg ICAgICAgICAgICBTdG9yZSAoMHg4NywgSU5EWCkKICAgICAgICAgICAgICAgICAgICBTdG9y ZSAoMHg4NywgSU5EWCkKICAgICAgICAgICAgICAgICAgICBTdG9yZSAoQXJnMCwgTEROKQog ICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgIE1ldGhvZCAoRVhGRywgMCwgTm90 U2VyaWFsaXplZCkKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICBTdG9y ZSAoMHhBQSwgSU5EWCkKICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICBNZXRo b2QgKExQVE0sIDEsIE5vdFNlcmlhbGl6ZWQpCiAgICAgICAgICAgICAgICB7CiAgICAgICAg ICAgICAgICAgICAgRU5GRyAoQ0dMRCAoQXJnMCkpCiAgICAgICAgICAgICAgICAgICAgQW5k IChPUFQwLCAweDAyLCBMb2NhbDApCiAgICAgICAgICAgICAgICAgICAgRVhGRyAoKQogICAg ICAgICAgICAgICAgICAgIFJldHVybiAoTG9jYWwwKQogICAgICAgICAgICAgICAgfQoKICAg ICAgICAgICAgICAgIE1ldGhvZCAoVUhJRCwgMSwgTm90U2VyaWFsaXplZCkKICAgICAgICAg ICAgICAgIHsKICAgICAgICAgICAgICAgICAgICBJZiAoTEVxdWFsIChBcmcwLCAweDAxKSkK ICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgIEVORkcgKENH TEQgKEFyZzApKQogICAgICAgICAgICAgICAgICAgICAgICBBbmQgKE9QVDEsIDB4MzgsIExv Y2FsMCkKICAgICAgICAgICAgICAgICAgICAgICAgRVhGRyAoKQogICAgICAgICAgICAgICAg ICAgICAgICBJZiAoTG9jYWwwKQogICAgICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAg ICAgICAgICAgICAgICAgICAgICBSZXR1cm4gKDB4MTAwNUQwNDEpCiAgICAgICAgICAgICAg ICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAg IFJldHVybiAoMHgwMTA1RDA0MSkKICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAg ICBNZXRob2QgKFNJT0ssIDEsIE5vdFNlcmlhbGl6ZWQpCiAgICAgICAgICAgICAgICB7CiAg ICAgICAgICAgICAgICAgICAgRU5GRyAoMHgwQSkKICAgICAgICAgICAgICAgICAgICBJZiAo TEdyZWF0ZXIgKEFyZzAsIDB4MDEpKQogICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAg ICAgICAgICAgICAgICAgT3IgKENSRTQsIDB4OTAsIENSRTQpCiAgICAgICAgICAgICAgICAg ICAgfQoKICAgICAgICAgICAgICAgICAgICBTdG9yZSAoQ1JFMywgTG9jYWwwKQogICAgICAg ICAgICAgICAgICAgIEVYRkcgKCkKICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAg ICBNZXRob2QgKFNJT1MsIDEsIE5vdFNlcmlhbGl6ZWQpCiAgICAgICAgICAgICAgICB7CiAg ICAgICAgICAgICAgICAgICAgU3RvcmUgKCJTSU9TIiwgRGVidWcpCiAgICAgICAgICAgICAg ICAgICAgU0lPSyAoQXJnMCkKICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICBN ZXRob2QgKFNJT1csIDEsIE5vdFNlcmlhbGl6ZWQpCiAgICAgICAgICAgICAgICB7CiAgICAg ICAgICAgICAgICAgICAgU3RvcmUgKCJTSU9XIiwgRGVidWcpCiAgICAgICAgICAgICAgICAg ICAgU0lPSyAoMHgwMCkKICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICBNZXRo b2QgKFNJT0gsIDAsIE5vdFNlcmlhbGl6ZWQpCiAgICAgICAgICAgICAgICB7CiAgICAgICAg ICAgICAgICAgICAgU3RvcmUgKCJTSU9IIiwgRGVidWcpCiAgICAgICAgICAgICAgICAgICAg RU5GRyAoMHgwQSkKICAgICAgICAgICAgICAgICAgICBJZiAoQW5kIChPUFQzLCAweDEwKSkK ICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgIE5vdGlmeSAo UFMySywgMHgwMikKICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAg IElmIChBbmQgKE9QVDMsIDB4MjApKQogICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAg ICAgICAgICAgICAgICAgTm90aWZ5IChQUzJNLCAweDAyKQogICAgICAgICAgICAgICAgICAg IH0KCiAgICAgICAgICAgICAgICAgICAgU0lPSyAoWmVybykKICAgICAgICAgICAgICAgIH0K CiAgICAgICAgICAgICAgICBPcGVyYXRpb25SZWdpb24gKElPSUQsIFN5c3RlbUlPLCBTUElP LCAweDAyKQogICAgICAgICAgICAgICAgRmllbGQgKElPSUQsIEJ5dGVBY2MsIE5vTG9jaywg UHJlc2VydmUpCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgSU5EWCwg ICA4LCAKICAgICAgICAgICAgICAgICAgICBEQVRBLCAgIDgKICAgICAgICAgICAgICAgIH0K CiAgICAgICAgICAgICAgICBJbmRleEZpZWxkIChJTkRYLCBEQVRBLCBCeXRlQWNjLCBOb0xv Y2ssIFByZXNlcnZlKQogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIE9m ZnNldCAoMHgwNyksIAogICAgICAgICAgICAgICAgICAgIExETiwgICAgOCwgCiAgICAgICAg ICAgICAgICAgICAgT2Zmc2V0ICgweDIyKSwgCiAgICAgICAgICAgICAgICAgICAgRkRDUCwg ICAxLCAKICAgICAgICAgICAgICAgICAgICAgICAgLCAgIDIsIAogICAgICAgICAgICAgICAg ICAgIExQVFAsICAgMSwgCiAgICAgICAgICAgICAgICAgICAgVVJBUCwgICAxLCAKICAgICAg ICAgICAgICAgICAgICBVUkJQLCAgIDEsIAogICAgICAgICAgICAgICAgICAgIE9mZnNldCAo MHgzMCksIAogICAgICAgICAgICAgICAgICAgIEFDVFIsICAgOCwgCiAgICAgICAgICAgICAg ICAgICAgT2Zmc2V0ICgweDYwKSwgCiAgICAgICAgICAgICAgICAgICAgSU9BSCwgICA4LCAK ICAgICAgICAgICAgICAgICAgICBJT0FMLCAgIDgsIAogICAgICAgICAgICAgICAgICAgIElP SDIsICAgOCwgCiAgICAgICAgICAgICAgICAgICAgSU9MMiwgICA4LCAKICAgICAgICAgICAg ICAgICAgICBPZmZzZXQgKDB4NzApLCAKICAgICAgICAgICAgICAgICAgICBJTlRSLCAgIDQs IAogICAgICAgICAgICAgICAgICAgIE9mZnNldCAoMHg3NCksIAogICAgICAgICAgICAgICAg ICAgIERNQ0gsICAgMywgCiAgICAgICAgICAgICAgICAgICAgT2Zmc2V0ICgweEUwKSwgCiAg ICAgICAgICAgICAgICAgICAgQ1JFMCwgICA4LCAKICAgICAgICAgICAgICAgICAgICBDUkUx LCAgIDgsIAogICAgICAgICAgICAgICAgICAgIENSRTIsICAgOCwgCiAgICAgICAgICAgICAg ICAgICAgQ1JFMywgICA4LCAKICAgICAgICAgICAgICAgICAgICBDUkU0LCAgIDgsIAogICAg ICAgICAgICAgICAgICAgIENSRTUsICAgOCwgCiAgICAgICAgICAgICAgICAgICAgQ1JFNiwg ICA4LCAKICAgICAgICAgICAgICAgICAgICBPZmZzZXQgKDB4RjApLCAKICAgICAgICAgICAg ICAgICAgICBPUFQwLCAgIDgsIAogICAgICAgICAgICAgICAgICAgIE9QVDEsICAgOCwgCiAg ICAgICAgICAgICAgICAgICAgT1BUMiwgICA4LCAKICAgICAgICAgICAgICAgICAgICBPUFQz LCAgIDgsIAogICAgICAgICAgICAgICAgICAgIE9mZnNldCAoMHhGNSksIAogICAgICAgICAg ICAgICAgICAgIE9QVDUsICAgOCwgCiAgICAgICAgICAgICAgICAgICAgT1BUNiwgICA4LCAK ICAgICAgICAgICAgICAgICAgICBPZmZzZXQgKDB4RjkpLCAKICAgICAgICAgICAgICAgICAg ICBPUFQ5LCAgIDgKICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICBNZXRob2Qg KENHTEQsIDEsIE5vdFNlcmlhbGl6ZWQpCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAg ICAgICAgICAgUmV0dXJuIChEZXJlZk9mIChJbmRleCAoRENBVCwgQXJnMCkpKQogICAgICAg ICAgICAgICAgfQoKICAgICAgICAgICAgICAgIE1ldGhvZCAoRFNUQSwgMSwgTm90U2VyaWFs aXplZCkKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICBFTkZHIChDR0xE IChBcmcwKSkKICAgICAgICAgICAgICAgICAgICBTdG9yZSAoQUNUUiwgTG9jYWwwKQogICAg ICAgICAgICAgICAgICAgIEVYRkcgKCkKICAgICAgICAgICAgICAgICAgICBJZiAoTEVxdWFs IChMb2NhbDAsIDB4RkYpKQogICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAg ICAgICAgICAgUmV0dXJuICgweDAwKQogICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAg ICAgICAgICAgICAgSWYgKExFcXVhbCAoQXJnMCwgMHgwNSkpCiAgICAgICAgICAgICAgICAg ICAgewogICAgICAgICAgICAgICAgICAgICAgICBTaGlmdFJpZ2h0IChMb2NhbDAsIDB4MDIs IExvY2FsMCkKICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgIElm IChMRXF1YWwgKEFyZzAsIDB4MDgpKQogICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAg ICAgICAgICAgICAgICAgU2hpZnRSaWdodCAoTG9jYWwwLCAweDAxLCBMb2NhbDApCiAgICAg ICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICAgICBBbmQgKExvY2FsMCwgMHgw MSwgTG9jYWwwKQogICAgICAgICAgICAgICAgICAgIE9yIChJT1NULCBTaGlmdExlZnQgKExv Y2FsMCwgQXJnMCksIElPU1QpCiAgICAgICAgICAgICAgICAgICAgSWYgKExvY2FsMCkKICAg ICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgIFJldHVybiAoMHgw RikKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgRWxzZQogICAg ICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgSWYgKEFuZCAoU2hp ZnRMZWZ0ICgweDAxLCBBcmcwKSwgSU9TVCkpCiAgICAgICAgICAgICAgICAgICAgICAgIHsK ICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJldHVybiAoMHgwRCkKICAgICAgICAgICAg ICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICBFbHNlCiAgICAgICAgICAg ICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJldHVybiAoMHgw MCkKICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIH0KICAg ICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICBNZXRob2QgKERDTlQsIDIsIE5vdFNl cmlhbGl6ZWQpCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgRU5GRyAo Q0dMRCAoQXJnMCkpCiAgICAgICAgICAgICAgICAgICAgSWYgKExFcXVhbCAoQXJnMCwgMHgw NSkpCiAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICBTaGlm dExlZnQgKElPSDIsIDB4MDgsIExvY2FsMSkKICAgICAgICAgICAgICAgICAgICAgICAgT3Ig KElPTDIsIExvY2FsMSwgTG9jYWwxKQogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAg ICAgICAgICAgICBFbHNlCiAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAg ICAgICAgICBTaGlmdExlZnQgKElPQUgsIDB4MDgsIExvY2FsMSkKICAgICAgICAgICAgICAg ICAgICAgICAgT3IgKElPQUwsIExvY2FsMSwgTG9jYWwxKQogICAgICAgICAgICAgICAgICAg IH0KCiAgICAgICAgICAgICAgICAgICAgUlJJTyAoQXJnMCwgQXJnMSwgTG9jYWwxLCAweDA4 KQogICAgICAgICAgICAgICAgICAgIElmIChMQW5kIChMTGVzcyAoRE1DSCwgMHgwNCksIExO b3QgKExFcXVhbCAoQW5kIChETUNILCAweDAzLCBMb2NhbDEpLCAweDAwKSkpKQogICAgICAg ICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgUkRNQSAoQXJnMCwgQXJn MSwgSW5jcmVtZW50IChMb2NhbDEpKQogICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAg ICAgICAgICAgICAgU3RvcmUgKEFyZzEsIExvY2FsMSkKICAgICAgICAgICAgICAgICAgICBT dG9yZSAoMHgwMSwgTG9jYWwyKQogICAgICAgICAgICAgICAgICAgIElmIChMRXF1YWwgKEFy ZzAsIDB4MDUpKQogICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAg ICAgU2hpZnRMZWZ0IChBcmcxLCAweDAyLCBMb2NhbDEpCiAgICAgICAgICAgICAgICAgICAg ICAgIFNoaWZ0TGVmdCAoTG9jYWwyLCAweDAyLCBMb2NhbDIpCiAgICAgICAgICAgICAgICAg ICAgfQoKICAgICAgICAgICAgICAgICAgICBJZiAoTEVxdWFsIChBcmcwLCAweDA4KSkKICAg ICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgIFNoaWZ0TGVmdCAo QXJnMSwgMHgwMSwgTG9jYWwxKQogICAgICAgICAgICAgICAgICAgICAgICBTaGlmdExlZnQg KExvY2FsMiwgMHgwMSwgTG9jYWwyKQogICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAg ICAgICAgICAgICAgU3RvcmUgKEFDVFIsIExvY2FsMCkKICAgICAgICAgICAgICAgICAgICBO b3QgKExvY2FsMiwgTG9jYWwzKQogICAgICAgICAgICAgICAgICAgIEFuZCAoTG9jYWwwLCBM b2NhbDMsIExvY2FsMCkKICAgICAgICAgICAgICAgICAgICBPciAoTG9jYWwwLCBMb2NhbDEs IExvY2FsMCkKICAgICAgICAgICAgICAgICAgICBTdG9yZSAoTG9jYWwwLCBBQ1RSKQogICAg ICAgICAgICAgICAgICAgIEVYRkcgKCkKICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAg ICAgICBOYW1lIChDUlMxLCBSZXNvdXJjZVRlbXBsYXRlICgpCiAgICAgICAgICAgICAgICB7 CiAgICAgICAgICAgICAgICAgICAgSVJRTm9GbGFncyAoKSB7fQogICAgICAgICAgICAgICAg ICAgIERNQSAoQ29tcGF0aWJpbGl0eSwgTm90QnVzTWFzdGVyLCBUcmFuc2ZlcjgpIHt9CiAg ICAgICAgICAgICAgICAgICAgSU8gKERlY29kZTE2LCAweDAwMDAsIDB4MDAwMCwgMHgwMSwg MHgwMCkKICAgICAgICAgICAgICAgIH0pCiAgICAgICAgICAgICAgICBDcmVhdGVXb3JkRmll bGQgKENSUzEsIDB4MDEsIElSUU0pCiAgICAgICAgICAgICAgICBDcmVhdGVCeXRlRmllbGQg KENSUzEsIDB4MDQsIERNQU0pCiAgICAgICAgICAgICAgICBDcmVhdGVXb3JkRmllbGQgKENS UzEsIDB4MDgsIElPMTEpCiAgICAgICAgICAgICAgICBDcmVhdGVXb3JkRmllbGQgKENSUzEs IDB4MEEsIElPMTIpCiAgICAgICAgICAgICAgICBDcmVhdGVCeXRlRmllbGQgKENSUzEsIDB4 MEQsIExFTjEpCiAgICAgICAgICAgICAgICBOYW1lIChDUlMyLCBSZXNvdXJjZVRlbXBsYXRl ICgpCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgSVJRTm9GbGFncyAo KSB7Nn0KICAgICAgICAgICAgICAgICAgICBETUEgKENvbXBhdGliaWxpdHksIE5vdEJ1c01h c3RlciwgVHJhbnNmZXI4KSB7Mn0KICAgICAgICAgICAgICAgICAgICBJTyAoRGVjb2RlMTYs IDB4MDAwMCwgMHgwMDAwLCAweDAxLCAweDAwKQogICAgICAgICAgICAgICAgICAgIElPIChE ZWNvZGUxNiwgMHgwMDAwLCAweDAwMDAsIDB4MDEsIDB4MDApCiAgICAgICAgICAgICAgICB9 KQogICAgICAgICAgICAgICAgQ3JlYXRlV29yZEZpZWxkIChDUlMyLCAweDAxLCBJUlFFKQog ICAgICAgICAgICAgICAgQ3JlYXRlQnl0ZUZpZWxkIChDUlMyLCAweDA0LCBETUFFKQogICAg ICAgICAgICAgICAgQ3JlYXRlV29yZEZpZWxkIChDUlMyLCAweDA4LCBJTzIxKQogICAgICAg ICAgICAgICAgQ3JlYXRlV29yZEZpZWxkIChDUlMyLCAweDBBLCBJTzIyKQogICAgICAgICAg ICAgICAgQ3JlYXRlQnl0ZUZpZWxkIChDUlMyLCAweDBELCBMRU4yKQogICAgICAgICAgICAg ICAgQ3JlYXRlV29yZEZpZWxkIChDUlMyLCAweDEwLCBJTzMxKQogICAgICAgICAgICAgICAg Q3JlYXRlV29yZEZpZWxkIChDUlMyLCAweDEyLCBJTzMyKQogICAgICAgICAgICAgICAgQ3Jl YXRlQnl0ZUZpZWxkIChDUlMyLCAweDE1LCBMRU4zKQogICAgICAgICAgICAgICAgTWV0aG9k IChEQ1JTLCAxLCBOb3RTZXJpYWxpemVkKQogICAgICAgICAgICAgICAgewogICAgICAgICAg ICAgICAgICAgIEVORkcgKENHTEQgKEFyZzApKQogICAgICAgICAgICAgICAgICAgIFNoaWZ0 TGVmdCAoSU9BSCwgMHgwOCwgSU8xMSkKICAgICAgICAgICAgICAgICAgICBPciAoSU9BTCwg SU8xMSwgSU8xMSkKICAgICAgICAgICAgICAgICAgICBTdG9yZSAoSU8xMSwgSU8xMikKICAg ICAgICAgICAgICAgICAgICBTdWJ0cmFjdCAoRmluZFNldFJpZ2h0Qml0IChJTzExKSwgMHgw MSwgTG9jYWwwKQogICAgICAgICAgICAgICAgICAgIFNoaWZ0TGVmdCAoMHgwMSwgTG9jYWww LCBMRU4xKQogICAgICAgICAgICAgICAgICAgIElmIChJTlRSKQogICAgICAgICAgICAgICAg ICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgU2hpZnRMZWZ0ICgweDAxLCBJTlRSLCBJ UlFNKQogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICBFbHNlCiAg ICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoMHgw MCwgSVJRTSkKICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgIElm IChMT3IgKExHcmVhdGVyIChETUNILCAweDAzKSwgTEVxdWFsIChBcmcwLCAweDAwKSkpCiAg ICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoMHgw MCwgRE1BTSkKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgRWxz ZQogICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgQW5kIChE TUNILCAweDAzLCBMb2NhbDEpCiAgICAgICAgICAgICAgICAgICAgICAgIFNoaWZ0TGVmdCAo MHgwMSwgTG9jYWwxLCBETUFNKQogICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAg ICAgICAgICAgRVhGRyAoKQogICAgICAgICAgICAgICAgICAgIFJldHVybiAoQ1JTMSkKICAg ICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICBNZXRob2QgKERTUlMsIDIsIE5vdFNl cmlhbGl6ZWQpCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgQ3JlYXRl V29yZEZpZWxkIChBcmcwLCAweDAxLCBJUlFNKQogICAgICAgICAgICAgICAgICAgIENyZWF0 ZUJ5dGVGaWVsZCAoQXJnMCwgMHgwNCwgRE1BTSkKICAgICAgICAgICAgICAgICAgICBDcmVh dGVXb3JkRmllbGQgKEFyZzAsIDB4MDgsIElPMTEpCiAgICAgICAgICAgICAgICAgICAgRU5G RyAoQ0dMRCAoQXJnMSkpCiAgICAgICAgICAgICAgICAgICAgQW5kIChJTzExLCAweEZGLCBJ T0FMKQogICAgICAgICAgICAgICAgICAgIFNoaWZ0UmlnaHQgKElPMTEsIDB4MDgsIElPQUgp CiAgICAgICAgICAgICAgICAgICAgSWYgKElSUU0pCiAgICAgICAgICAgICAgICAgICAgewog ICAgICAgICAgICAgICAgICAgICAgICBGaW5kU2V0UmlnaHRCaXQgKElSUU0sIExvY2FsMCkK ICAgICAgICAgICAgICAgICAgICAgICAgU3VidHJhY3QgKExvY2FsMCwgMHgwMSwgSU5UUikK ICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgRWxzZQogICAgICAg ICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKDB4MDAsIElO VFIpCiAgICAgICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICAgICBJZiAoRE1B TSkKICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgIEZpbmRT ZXRSaWdodEJpdCAoRE1BTSwgTG9jYWwwKQogICAgICAgICAgICAgICAgICAgICAgICBTdWJ0 cmFjdCAoTG9jYWwwLCAweDAxLCBETUNIKQogICAgICAgICAgICAgICAgICAgIH0KICAgICAg ICAgICAgICAgICAgICBFbHNlCiAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAg ICAgICAgICAgICBTdG9yZSAoMHgwNywgRE1DSCkKICAgICAgICAgICAgICAgICAgICB9Cgog ICAgICAgICAgICAgICAgICAgIEVYRkcgKCkKICAgICAgICAgICAgICAgICAgICBEQ05UIChB cmcxLCAweDAxKQogICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgIERldmljZSAo Uk1TQykKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICBOYW1lIChfSElE LCBFaXNhSWQgKCJQTlAwQzAyIikpCiAgICAgICAgICAgICAgICAgICAgTmFtZSAoX1VJRCwg MHgxMCkKICAgICAgICAgICAgICAgICAgICBOYW1lIChDUlMsIFJlc291cmNlVGVtcGxhdGUg KCkKICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgIElPIChE ZWNvZGUxNiwgMHgwMDEwLCAweDAwMTAsIDB4MDAsIDB4MTApCiAgICAgICAgICAgICAgICAg ICAgICAgIElPIChEZWNvZGUxNiwgMHgwMDIyLCAweDAwMjIsIDB4MDAsIDB4MUUpCiAgICAg ICAgICAgICAgICAgICAgICAgIElPIChEZWNvZGUxNiwgMHgwMDQ0LCAweDAwNDQsIDB4MDAs IDB4MUMpCiAgICAgICAgICAgICAgICAgICAgICAgIElPIChEZWNvZGUxNiwgMHgwMDYyLCAw eDAwNjIsIDB4MDAsIDB4MDIpCiAgICAgICAgICAgICAgICAgICAgICAgIElPIChEZWNvZGUx NiwgMHgwMDY1LCAweDAwNjUsIDB4MDAsIDB4MEIpCiAgICAgICAgICAgICAgICAgICAgICAg IElPIChEZWNvZGUxNiwgMHgwMDcyLCAweDAwNzIsIDB4MDAsIDB4MEUpCiAgICAgICAgICAg ICAgICAgICAgICAgIElPIChEZWNvZGUxNiwgMHgwMDgwLCAweDAwODAsIDB4MDAsIDB4MDEp CiAgICAgICAgICAgICAgICAgICAgICAgIElPIChEZWNvZGUxNiwgMHgwMDg0LCAweDAwODQs IDB4MDAsIDB4MDMpCiAgICAgICAgICAgICAgICAgICAgICAgIElPIChEZWNvZGUxNiwgMHgw MDg4LCAweDAwODgsIDB4MDAsIDB4MDEpCiAgICAgICAgICAgICAgICAgICAgICAgIElPIChE ZWNvZGUxNiwgMHgwMDhDLCAweDAwOEMsIDB4MDAsIDB4MDMpCiAgICAgICAgICAgICAgICAg ICAgICAgIElPIChEZWNvZGUxNiwgMHgwMDkwLCAweDAwOTAsIDB4MDAsIDB4MTApCiAgICAg ICAgICAgICAgICAgICAgICAgIElPIChEZWNvZGUxNiwgMHgwMEEyLCAweDAwQTIsIDB4MDAs IDB4MUUpCiAgICAgICAgICAgICAgICAgICAgICAgIElPIChEZWNvZGUxNiwgMHgwMEUwLCAw eDAwRTAsIDB4MDAsIDB4MTApCiAgICAgICAgICAgICAgICAgICAgICAgIElPIChEZWNvZGUx NiwgMHgwNEQwLCAweDA0RDAsIDB4MDAsIDB4MDIpCiAgICAgICAgICAgICAgICAgICAgICAg IElPIChEZWNvZGUxNiwgMHgwMDAwLCAweDAwMDAsIDB4MDAsIDB4MDApCiAgICAgICAgICAg ICAgICAgICAgICAgIElPIChEZWNvZGUxNiwgMHgwMDAwLCAweDAwMDAsIDB4MDAsIDB4MDAp CiAgICAgICAgICAgICAgICAgICAgICAgIElPIChEZWNvZGUxNiwgMHgwMDAwLCAweDAwMDAs IDB4MDAsIDB4MDApCiAgICAgICAgICAgICAgICAgICAgICAgIE1lbW9yeTMyRml4ZWQgKFJl YWRXcml0ZSwgMHhGRUQyMDAwMCwgMHgwMDA3MDAwMCkKICAgICAgICAgICAgICAgICAgICAg ICAgTWVtb3J5MzJGaXhlZCAoUmVhZFdyaXRlLCAweEZGQjAwMDAwLCAweDAwMTAwMDAwKQog ICAgICAgICAgICAgICAgICAgIH0pCiAgICAgICAgICAgICAgICAgICAgTWV0aG9kIChfQ1JT LCAwLCBOb3RTZXJpYWxpemVkKQogICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAg ICAgICAgICAgICAgQ3JlYXRlV29yZEZpZWxkIChDUlMsIDB4NzIsIEdQMDApCiAgICAgICAg ICAgICAgICAgICAgICAgIENyZWF0ZVdvcmRGaWVsZCAoQ1JTLCAweDc0LCBHUDAxKQogICAg ICAgICAgICAgICAgICAgICAgICBDcmVhdGVCeXRlRmllbGQgKENSUywgMHg3NywgR1AwTCkK ICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKFBNQlMsIEdQMDApCiAgICAgICAgICAg ICAgICAgICAgICAgIFN0b3JlIChQTUJTLCBHUDAxKQogICAgICAgICAgICAgICAgICAgICAg ICBTdG9yZSAoUE1MTiwgR1AwTCkKICAgICAgICAgICAgICAgICAgICAgICAgSWYgKFNNQlMp CiAgICAgICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAg IENyZWF0ZVdvcmRGaWVsZCAoQ1JTLCAweDdBLCBHUDEwKQogICAgICAgICAgICAgICAgICAg ICAgICAgICAgQ3JlYXRlV29yZEZpZWxkIChDUlMsIDB4N0MsIEdQMTEpCiAgICAgICAgICAg ICAgICAgICAgICAgICAgICBDcmVhdGVCeXRlRmllbGQgKENSUywgMHg3RiwgR1AxTCkKICAg ICAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlIChTTUJTLCBHUDEwKQogICAgICAgICAg ICAgICAgICAgICAgICAgICAgU3RvcmUgKFNNQlMsIEdQMTEpCiAgICAgICAgICAgICAgICAg ICAgICAgICAgICBTdG9yZSAoU01CTCwgR1AxTCkKICAgICAgICAgICAgICAgICAgICAgICAg fQoKICAgICAgICAgICAgICAgICAgICAgICAgSWYgKEdQQlMpCiAgICAgICAgICAgICAgICAg ICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIENyZWF0ZVdvcmRGaWVsZCAo Q1JTLCAweDgyLCBHUDIwKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgQ3JlYXRlV29y ZEZpZWxkIChDUlMsIDB4ODQsIEdQMjEpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBD cmVhdGVCeXRlRmllbGQgKENSUywgMHg4NywgR1AyTCkKICAgICAgICAgICAgICAgICAgICAg ICAgICAgIFN0b3JlIChHUEJTLCBHUDIwKQogICAgICAgICAgICAgICAgICAgICAgICAgICAg U3RvcmUgKEdQQlMsIEdQMjEpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAo R1BMTiwgR1AyTCkKICAgICAgICAgICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAg ICAgICAgICAgUmV0dXJuIChDUlMpCiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAg ICAgICAgfQoKICAgICAgICAgICAgICAgIERldmljZSAoUDNGNikKICAgICAgICAgICAgICAg IHsKICAgICAgICAgICAgICAgICAgICBOYW1lIChfSElELCBFaXNhSWQgKCJQTlAwQzAyIikp CiAgICAgICAgICAgICAgICAgICAgTmFtZSAoX1VJRCwgMHgwM0Y2KQogICAgICAgICAgICAg ICAgICAgIE1ldGhvZCAoX1NUQSwgMCwgTm90U2VyaWFsaXplZCkKICAgICAgICAgICAgICAg ICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlICgweDBGLCBMb2NhbDEpCiAg ICAgICAgICAgICAgICAgICAgICAgIFN0b3JlIChcX1NCLlBDSTAuSURFMC5QQU1ELCBMb2Nh bDApCiAgICAgICAgICAgICAgICAgICAgICAgIElmIChMRXF1YWwgKExvY2FsMCwgMHg4QSkp CiAgICAgICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAg IFN0b3JlICgweDAwLCBMb2NhbDEpCiAgICAgICAgICAgICAgICAgICAgICAgIH0KCiAgICAg ICAgICAgICAgICAgICAgICAgIFN0b3JlIChcX1NCLlBDSTAuSURFMS5TQU1ELCBMb2NhbDAp CiAgICAgICAgICAgICAgICAgICAgICAgIElmIChMRXF1YWwgKExvY2FsMCwgMHg4QSkpCiAg ICAgICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN0 b3JlICgweDAwLCBMb2NhbDEpCiAgICAgICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAg ICAgICAgICAgICAgICAgIFJldHVybiAoTG9jYWwxKQogICAgICAgICAgICAgICAgICAgIH0K CiAgICAgICAgICAgICAgICAgICAgTmFtZSAoQ1JTLCBSZXNvdXJjZVRlbXBsYXRlICgpCiAg ICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICBJTyAoRGVjb2Rl MTYsIDB4MDNGNiwgMHgwM0Y2LCAweDAwLCAweDAxKQogICAgICAgICAgICAgICAgICAgIH0p CiAgICAgICAgICAgICAgICAgICAgTWV0aG9kIChfQ1JTLCAwLCBOb3RTZXJpYWxpemVkKQog ICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgUmV0dXJuIChD UlMpCiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfQoKICAgICAgICAg ICAgICAgIERldmljZSAoT01TQykKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAg ICAgICBOYW1lIChfSElELCBFaXNhSWQgKCJQTlAwQzAyIikpCiAgICAgICAgICAgICAgICAg ICAgTmFtZSAoX1VJRCwgMHgwMCkKICAgICAgICAgICAgICAgICAgICBOYW1lIChDUlMsIFJl c291cmNlVGVtcGxhdGUgKCkKICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAg ICAgICAgICAgIE1lbW9yeTMyRml4ZWQgKFJlYWRPbmx5LCAweDAwMDAwMDAwLCAweDAwMDAw MDAwKQogICAgICAgICAgICAgICAgICAgICAgICBNZW1vcnkzMkZpeGVkIChSZWFkT25seSwg MHgwMDAwMDAwMCwgMHgwMDAwMDAwMCkKICAgICAgICAgICAgICAgICAgICB9KQogICAgICAg ICAgICAgICAgICAgIE1ldGhvZCAoX0NSUywgMCwgTm90U2VyaWFsaXplZCkKICAgICAgICAg ICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgIElmIChBUENCKQogICAgICAg ICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBDcmVhdGVE V29yZEZpZWxkIChDUlMsIDB4MDgsIE1MMDEpCiAgICAgICAgICAgICAgICAgICAgICAgICAg ICBDcmVhdGVEV29yZEZpZWxkIChDUlMsIDB4MDQsIE1CMDEpCiAgICAgICAgICAgICAgICAg ICAgICAgICAgICBDcmVhdGVEV29yZEZpZWxkIChDUlMsIDB4MTQsIE1MMDIpCiAgICAgICAg ICAgICAgICAgICAgICAgICAgICBDcmVhdGVEV29yZEZpZWxkIChDUlMsIDB4MTAsIE1CMDIp CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoQVBDQiwgTUIwMSkKICAgICAg ICAgICAgICAgICAgICAgICAgICAgIFN0b3JlIChBUENMLCBNTDAxKQogICAgICAgICAgICAg ICAgICAgICAgICAgICAgU3RvcmUgKDB4RkVFMDAwMDAsIE1CMDIpCiAgICAgICAgICAgICAg ICAgICAgICAgICAgICBTdG9yZSAoMHgxMDAwLCBNTDAyKQogICAgICAgICAgICAgICAgICAg ICAgICB9CgogICAgICAgICAgICAgICAgICAgICAgICBSZXR1cm4gKENSUykKICAgICAgICAg ICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgRGV2aWNl IChcX1NCLlJNRU0pCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgTmFt ZSAoX0hJRCwgRWlzYUlkICgiUE5QMEMwMSIpKQogICAgICAgICAgICAgICAgICAgIE5hbWUg KF9VSUQsIDB4MDEpCiAgICAgICAgICAgICAgICAgICAgTmFtZSAoQ1JTLCBSZXNvdXJjZVRl bXBsYXRlICgpCiAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAg ICBNZW1vcnkzMkZpeGVkIChSZWFkV3JpdGUsIDB4MDAwMDAwMDAsIDB4MDAwQTAwMDApCiAg ICAgICAgICAgICAgICAgICAgICAgIE1lbW9yeTMyRml4ZWQgKFJlYWRPbmx5LCAweDAwMDAw MDAwLCAweDAwMDAwMDAwKQogICAgICAgICAgICAgICAgICAgICAgICBNZW1vcnkzMkZpeGVk IChSZWFkT25seSwgMHgwMDBFMDAwMCwgMHgwMDAyMDAwMCkKICAgICAgICAgICAgICAgICAg ICAgICAgTWVtb3J5MzJGaXhlZCAoUmVhZFdyaXRlLCAweDAwMTAwMDAwLCAweDAwMDAwMDAw KQogICAgICAgICAgICAgICAgICAgICAgICBNZW1vcnkzMkZpeGVkIChSZWFkT25seSwgMHgw MDAwMDAwMCwgMHgwMDAwMDAwMCkKICAgICAgICAgICAgICAgICAgICB9KQogICAgICAgICAg ICAgICAgICAgIE1ldGhvZCAoX0NSUywgMCwgTm90U2VyaWFsaXplZCkKICAgICAgICAgICAg ICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgIENyZWF0ZURXb3JkRmllbGQgKENS UywgMHgxMCwgQkFTMSkKICAgICAgICAgICAgICAgICAgICAgICAgQ3JlYXRlRFdvcmRGaWVs ZCAoQ1JTLCAweDE0LCBMRU4xKQogICAgICAgICAgICAgICAgICAgICAgICBDcmVhdGVEV29y ZEZpZWxkIChDUlMsIDB4MUMsIEJBUzIpCiAgICAgICAgICAgICAgICAgICAgICAgIENyZWF0 ZURXb3JkRmllbGQgKENSUywgMHgyMCwgTEVOMikKICAgICAgICAgICAgICAgICAgICAgICAg Q3JlYXRlRFdvcmRGaWVsZCAoQ1JTLCAweDJDLCBMRU4zKQogICAgICAgICAgICAgICAgICAg ICAgICBDcmVhdGVEV29yZEZpZWxkIChDUlMsIDB4MzQsIEJBUzQpCiAgICAgICAgICAgICAg ICAgICAgICAgIENyZWF0ZURXb3JkRmllbGQgKENSUywgMHgzOCwgTEVONCkKICAgICAgICAg ICAgICAgICAgICAgICAgSWYgKE9TRkwgKCkpIHt9CiAgICAgICAgICAgICAgICAgICAgICAg IEVsc2UKICAgICAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAg ICAgICAgSWYgKE1HMUIpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgSWYgKExHcmVhdGVyIChNRzFCLCAweDAwMEMwMDAw KSkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIFN0b3JlICgweDAwMEMwMDAwLCBCQVMxKQogICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBTdWJ0cmFjdCAoTUcxQiwgQkFTMSwgTEVOMSkK ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAg ICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBFbHNlCiAgICAgICAgICAg ICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU3Rv cmUgKDB4MDAwQzAwMDAsIEJBUzEpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg U3RvcmUgKDB4MDAwMjAwMDAsIExFTjEpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9 CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgSWYgKEFkZCAoTUcxQiwgTUcxTCwgTG9j YWwwKSkKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBTdG9yZSAoTG9jYWwwLCBCQVMyKQogICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIFN1YnRyYWN0ICgweDAwMTAwMDAwLCBCQVMyLCBMRU4yKQogICAgICAg ICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICB9CgogICAg ICAgICAgICAgICAgICAgICAgICBTdWJ0cmFjdCAoTUcyQiwgMHgwMDEwMDAwMCwgTEVOMykK ICAgICAgICAgICAgICAgICAgICAgICAgQWRkIChNRzJCLCBNRzJMLCBCQVM0KQogICAgICAg ICAgICAgICAgICAgICAgICBTdWJ0cmFjdCAoMHgwMCwgQkFTNCwgTEVONCkKICAgICAgICAg ICAgICAgICAgICAgICAgUmV0dXJuIChDUlMpCiAgICAgICAgICAgICAgICAgICAgfQogICAg ICAgICAgICAgICAgfQogICAgICAgICAgICB9CgogICAgICAgICAgICBEZXZpY2UgKFAwUDEp CiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIE5hbWUgKF9BRFIsIDB4MDAwMTAwMDAp CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIERldmljZSAoUDBQMikKICAgICAgICAgICAg ewogICAgICAgICAgICAgICAgTmFtZSAoX0FEUiwgMHgwMDAzMDAwMCkKICAgICAgICAgICAg ICAgIE1ldGhvZCAoX1BSVCwgMCwgTm90U2VyaWFsaXplZCkKICAgICAgICAgICAgICAgIHsK ICAgICAgICAgICAgICAgICAgICBJZiAoUElDTSkKICAgICAgICAgICAgICAgICAgICB7CiAg ICAgICAgICAgICAgICAgICAgICAgIFJldHVybiAoQVIwMikKICAgICAgICAgICAgICAgICAg ICB9CgogICAgICAgICAgICAgICAgICAgIFJldHVybiAoUFIwMikKICAgICAgICAgICAgICAg IH0KCiAgICAgICAgICAgICAgICBEZXZpY2UgKElMQU4pCiAgICAgICAgICAgICAgICB7CiAg ICAgICAgICAgICAgICAgICAgTmFtZSAoX0FEUiwgMHgwMDAxMDAwMCkKICAgICAgICAgICAg ICAgICAgICBNZXRob2QgKF9QUlcsIDAsIE5vdFNlcmlhbGl6ZWQpCiAgICAgICAgICAgICAg ICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICBSZXR1cm4gKEdQUlcgKDB4MTgsIDB4 MDQpKQogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0KICAgICAgICAg ICAgfQogICAgICAgIH0KCiAgICAgICAgU2NvcGUgKFxfR1BFKQogICAgICAgIHsKICAgICAg ICAgICAgTWV0aG9kIChfTDBCLCAwLCBOb3RTZXJpYWxpemVkKQogICAgICAgICAgICB7CiAg ICAgICAgICAgICAgICBOb3RpZnkgKFxfU0IuUENJMC5QMFA0LCAweDAyKQogICAgICAgICAg ICAgICAgTm90aWZ5IChcX1NCLlBXUkIsIDB4MDIpCiAgICAgICAgICAgIH0KCiAgICAgICAg ICAgIE1ldGhvZCAoX0wwNSwgMCwgTm90U2VyaWFsaXplZCkKICAgICAgICAgICAgewogICAg ICAgICAgICAgICAgTm90aWZ5IChcX1NCLlBDSTAuTUM5NywgMHgwMikKICAgICAgICAgICAg ICAgIE5vdGlmeSAoXF9TQi5QV1JCLCAweDAyKQogICAgICAgICAgICB9CgogICAgICAgICAg ICBNZXRob2QgKF9MMDMsIDAsIE5vdFNlcmlhbGl6ZWQpCiAgICAgICAgICAgIHsKICAgICAg ICAgICAgICAgIE5vdGlmeSAoXF9TQi5QQ0kwLlVTQjEsIDB4MDIpCiAgICAgICAgICAgICAg ICBOb3RpZnkgKFxfU0IuUFdSQiwgMHgwMikKICAgICAgICAgICAgfQoKICAgICAgICAgICAg TWV0aG9kIChfTDA0LCAwLCBOb3RTZXJpYWxpemVkKQogICAgICAgICAgICB7CiAgICAgICAg ICAgICAgICBOb3RpZnkgKFxfU0IuUENJMC5VU0IyLCAweDAyKQogICAgICAgICAgICAgICAg Tm90aWZ5IChcX1NCLlBXUkIsIDB4MDIpCiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIE1l dGhvZCAoX0wwQywgMCwgTm90U2VyaWFsaXplZCkKICAgICAgICAgICAgewogICAgICAgICAg ICAgICAgTm90aWZ5IChcX1NCLlBDSTAuVVNCMywgMHgwMikKICAgICAgICAgICAgICAgIE5v dGlmeSAoXF9TQi5QV1JCLCAweDAyKQogICAgICAgICAgICB9CgogICAgICAgICAgICBNZXRo b2QgKF9MMEUsIDAsIE5vdFNlcmlhbGl6ZWQpCiAgICAgICAgICAgIHsKICAgICAgICAgICAg ICAgIE5vdGlmeSAoXF9TQi5QQ0kwLlVTQjQsIDB4MDIpCiAgICAgICAgICAgICAgICBOb3Rp ZnkgKFxfU0IuUFdSQiwgMHgwMikKICAgICAgICAgICAgfQoKICAgICAgICAgICAgTWV0aG9k IChfTDBELCAwLCBOb3RTZXJpYWxpemVkKQogICAgICAgICAgICB7CiAgICAgICAgICAgICAg ICBOb3RpZnkgKFxfU0IuUENJMC5FVVNCLCAweDAyKQogICAgICAgICAgICAgICAgTm90aWZ5 IChcX1NCLlBXUkIsIDB4MDIpCiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIE1ldGhvZCAo X0wxRCwgMCwgTm90U2VyaWFsaXplZCkKICAgICAgICAgICAgewogICAgICAgICAgICAgICAg XF9TQi5QQ0kwLlNCUkcuU0lPSCAoKQogICAgICAgICAgICB9CgogICAgICAgICAgICBNZXRo b2QgKF9MMTgsIDAsIE5vdFNlcmlhbGl6ZWQpCiAgICAgICAgICAgIHsKICAgICAgICAgICAg ICAgIE5vdGlmeSAoXF9TQi5QQ0kwLlAwUDIuSUxBTiwgMHgwMikKICAgICAgICAgICAgfQog ICAgICAgIH0KCiAgICAgICAgRGV2aWNlIChQV1JCKQogICAgICAgIHsKICAgICAgICAgICAg TmFtZSAoX0hJRCwgRWlzYUlkICgiUE5QMEMwQyIpKQogICAgICAgICAgICBOYW1lIChfVUlE LCAweEFBKQogICAgICAgICAgICBOYW1lIChfU1RBLCAweDBCKQogICAgICAgIH0KICAgIH0K CiAgICBPcGVyYXRpb25SZWdpb24gKFxfU0IuUENJMC5TQlJHLlBJWDAsIFBDSV9Db25maWcs IDB4NjAsIDB4MEMpCiAgICBGaWVsZCAoXF9TQi5QQ0kwLlNCUkcuUElYMCwgQnl0ZUFjYywg Tm9Mb2NrLCBQcmVzZXJ2ZSkKICAgIHsKICAgICAgICBQSVJBLCAgIDgsIAogICAgICAgIFBJ UkIsICAgOCwgCiAgICAgICAgUElSQywgICA4LCAKICAgICAgICBQSVJELCAgIDgsIAogICAg ICAgIE9mZnNldCAoMHgwOCksIAogICAgICAgIFBJUkUsICAgOCwgCiAgICAgICAgUElSRiwg ICA4LCAKICAgICAgICBQSVJHLCAgIDgsIAogICAgICAgIFBJUkgsICAgOAogICAgfQoKICAg IFNjb3BlIChcX1NCKQogICAgewogICAgICAgIE5hbWUgKEJVRkEsIFJlc291cmNlVGVtcGxh dGUgKCkKICAgICAgICB7CiAgICAgICAgICAgIElSUSAoTGV2ZWwsIEFjdGl2ZUxvdywgU2hh cmVkKSB7MTV9CiAgICAgICAgfSkKICAgICAgICBDcmVhdGVXb3JkRmllbGQgKEJVRkEsIDB4 MDEsIElSQTApCiAgICAgICAgRGV2aWNlIChMTktBKQogICAgICAgIHsKICAgICAgICAgICAg TmFtZSAoX0hJRCwgRWlzYUlkICgiUE5QMEMwRiIpKQogICAgICAgICAgICBOYW1lIChfVUlE LCAweDAxKQogICAgICAgICAgICBNZXRob2QgKF9TVEEsIDAsIE5vdFNlcmlhbGl6ZWQpCiAg ICAgICAgICAgIHsKICAgICAgICAgICAgICAgIEFuZCAoUElSQSwgMHg4MCwgTG9jYWwwKQog ICAgICAgICAgICAgICAgSWYgKExvY2FsMCkKICAgICAgICAgICAgICAgIHsKICAgICAgICAg ICAgICAgICAgICBSZXR1cm4gKDB4MDkpCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAg ICAgICBFbHNlCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgUmV0dXJu ICgweDBCKQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CgogICAgICAgICAgICBN ZXRob2QgKF9QUlMsIDAsIE5vdFNlcmlhbGl6ZWQpCiAgICAgICAgICAgIHsKICAgICAgICAg ICAgICAgIFJldHVybiAoUFJTQSkKICAgICAgICAgICAgfQoKICAgICAgICAgICAgTWV0aG9k IChfRElTLCAwLCBOb3RTZXJpYWxpemVkKQogICAgICAgICAgICB7CiAgICAgICAgICAgICAg ICBPciAoUElSQSwgMHg4MCwgUElSQSkKICAgICAgICAgICAgfQoKICAgICAgICAgICAgTWV0 aG9kIChfQ1JTLCAwLCBOb3RTZXJpYWxpemVkKQogICAgICAgICAgICB7CiAgICAgICAgICAg ICAgICBBbmQgKFBJUkEsIDB4MEYsIExvY2FsMCkKICAgICAgICAgICAgICAgIFNoaWZ0TGVm dCAoMHgwMSwgTG9jYWwwLCBJUkEwKQogICAgICAgICAgICAgICAgUmV0dXJuIChCVUZBKQog ICAgICAgICAgICB9CgogICAgICAgICAgICBNZXRob2QgKF9TUlMsIDEsIE5vdFNlcmlhbGl6 ZWQpCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIENyZWF0ZVdvcmRGaWVsZCAoQXJn MCwgMHgwMSwgSVJBKQogICAgICAgICAgICAgICAgRmluZFNldFJpZ2h0Qml0IChJUkEsIExv Y2FsMCkKICAgICAgICAgICAgICAgIERlY3JlbWVudCAoTG9jYWwwKQogICAgICAgICAgICAg ICAgU3RvcmUgKExvY2FsMCwgUElSQSkKICAgICAgICAgICAgfQogICAgICAgIH0KCiAgICAg ICAgRGV2aWNlIChMTktCKQogICAgICAgIHsKICAgICAgICAgICAgTmFtZSAoX0hJRCwgRWlz YUlkICgiUE5QMEMwRiIpKQogICAgICAgICAgICBOYW1lIChfVUlELCAweDAyKQogICAgICAg ICAgICBNZXRob2QgKF9TVEEsIDAsIE5vdFNlcmlhbGl6ZWQpCiAgICAgICAgICAgIHsKICAg ICAgICAgICAgICAgIEFuZCAoUElSQiwgMHg4MCwgTG9jYWwwKQogICAgICAgICAgICAgICAg SWYgKExvY2FsMCkKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICBSZXR1 cm4gKDB4MDkpCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBFbHNlCiAgICAg ICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgUmV0dXJuICgweDBCKQogICAgICAg ICAgICAgICAgfQogICAgICAgICAgICB9CgogICAgICAgICAgICBNZXRob2QgKF9QUlMsIDAs IE5vdFNlcmlhbGl6ZWQpCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIFJldHVybiAo UFJTQikKICAgICAgICAgICAgfQoKICAgICAgICAgICAgTWV0aG9kIChfRElTLCAwLCBOb3RT ZXJpYWxpemVkKQogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICBPciAoUElSQiwgMHg4 MCwgUElSQikKICAgICAgICAgICAgfQoKICAgICAgICAgICAgTWV0aG9kIChfQ1JTLCAwLCBO b3RTZXJpYWxpemVkKQogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICBBbmQgKFBJUkIs IDB4MEYsIExvY2FsMCkKICAgICAgICAgICAgICAgIFNoaWZ0TGVmdCAoMHgwMSwgTG9jYWww LCBJUkEwKQogICAgICAgICAgICAgICAgUmV0dXJuIChCVUZBKQogICAgICAgICAgICB9Cgog ICAgICAgICAgICBNZXRob2QgKF9TUlMsIDEsIE5vdFNlcmlhbGl6ZWQpCiAgICAgICAgICAg IHsKICAgICAgICAgICAgICAgIENyZWF0ZVdvcmRGaWVsZCAoQXJnMCwgMHgwMSwgSVJBKQog ICAgICAgICAgICAgICAgRmluZFNldFJpZ2h0Qml0IChJUkEsIExvY2FsMCkKICAgICAgICAg ICAgICAgIERlY3JlbWVudCAoTG9jYWwwKQogICAgICAgICAgICAgICAgU3RvcmUgKExvY2Fs MCwgUElSQikKICAgICAgICAgICAgfQogICAgICAgIH0KCiAgICAgICAgRGV2aWNlIChMTktD KQogICAgICAgIHsKICAgICAgICAgICAgTmFtZSAoX0hJRCwgRWlzYUlkICgiUE5QMEMwRiIp KQogICAgICAgICAgICBOYW1lIChfVUlELCAweDAzKQogICAgICAgICAgICBNZXRob2QgKF9T VEEsIDAsIE5vdFNlcmlhbGl6ZWQpCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIEFu ZCAoUElSQywgMHg4MCwgTG9jYWwwKQogICAgICAgICAgICAgICAgSWYgKExvY2FsMCkKICAg ICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICBSZXR1cm4gKDB4MDkpCiAgICAg ICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBFbHNlCiAgICAgICAgICAgICAgICB7CiAg ICAgICAgICAgICAgICAgICAgUmV0dXJuICgweDBCKQogICAgICAgICAgICAgICAgfQogICAg ICAgICAgICB9CgogICAgICAgICAgICBNZXRob2QgKF9QUlMsIDAsIE5vdFNlcmlhbGl6ZWQp CiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIFJldHVybiAoUFJTQykKICAgICAgICAg ICAgfQoKICAgICAgICAgICAgTWV0aG9kIChfRElTLCAwLCBOb3RTZXJpYWxpemVkKQogICAg ICAgICAgICB7CiAgICAgICAgICAgICAgICBPciAoUElSQywgMHg4MCwgUElSQykKICAgICAg ICAgICAgfQoKICAgICAgICAgICAgTWV0aG9kIChfQ1JTLCAwLCBOb3RTZXJpYWxpemVkKQog ICAgICAgICAgICB7CiAgICAgICAgICAgICAgICBBbmQgKFBJUkMsIDB4MEYsIExvY2FsMCkK ICAgICAgICAgICAgICAgIFNoaWZ0TGVmdCAoMHgwMSwgTG9jYWwwLCBJUkEwKQogICAgICAg ICAgICAgICAgUmV0dXJuIChCVUZBKQogICAgICAgICAgICB9CgogICAgICAgICAgICBNZXRo b2QgKF9TUlMsIDEsIE5vdFNlcmlhbGl6ZWQpCiAgICAgICAgICAgIHsKICAgICAgICAgICAg ICAgIENyZWF0ZVdvcmRGaWVsZCAoQXJnMCwgMHgwMSwgSVJBKQogICAgICAgICAgICAgICAg RmluZFNldFJpZ2h0Qml0IChJUkEsIExvY2FsMCkKICAgICAgICAgICAgICAgIERlY3JlbWVu dCAoTG9jYWwwKQogICAgICAgICAgICAgICAgU3RvcmUgKExvY2FsMCwgUElSQykKICAgICAg ICAgICAgfQogICAgICAgIH0KCiAgICAgICAgRGV2aWNlIChMTktEKQogICAgICAgIHsKICAg ICAgICAgICAgTmFtZSAoX0hJRCwgRWlzYUlkICgiUE5QMEMwRiIpKQogICAgICAgICAgICBO YW1lIChfVUlELCAweDA0KQogICAgICAgICAgICBNZXRob2QgKF9TVEEsIDAsIE5vdFNlcmlh bGl6ZWQpCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIEFuZCAoUElSRCwgMHg4MCwg TG9jYWwwKQogICAgICAgICAgICAgICAgSWYgKExvY2FsMCkKICAgICAgICAgICAgICAgIHsK ICAgICAgICAgICAgICAgICAgICBSZXR1cm4gKDB4MDkpCiAgICAgICAgICAgICAgICB9CiAg ICAgICAgICAgICAgICBFbHNlCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAg ICAgUmV0dXJuICgweDBCKQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CgogICAg ICAgICAgICBNZXRob2QgKF9QUlMsIDAsIE5vdFNlcmlhbGl6ZWQpCiAgICAgICAgICAgIHsK ICAgICAgICAgICAgICAgIFJldHVybiAoUFJTRCkKICAgICAgICAgICAgfQoKICAgICAgICAg ICAgTWV0aG9kIChfRElTLCAwLCBOb3RTZXJpYWxpemVkKQogICAgICAgICAgICB7CiAgICAg ICAgICAgICAgICBPciAoUElSRCwgMHg4MCwgUElSRCkKICAgICAgICAgICAgfQoKICAgICAg ICAgICAgTWV0aG9kIChfQ1JTLCAwLCBOb3RTZXJpYWxpemVkKQogICAgICAgICAgICB7CiAg ICAgICAgICAgICAgICBBbmQgKFBJUkQsIDB4MEYsIExvY2FsMCkKICAgICAgICAgICAgICAg IFNoaWZ0TGVmdCAoMHgwMSwgTG9jYWwwLCBJUkEwKQogICAgICAgICAgICAgICAgUmV0dXJu IChCVUZBKQogICAgICAgICAgICB9CgogICAgICAgICAgICBNZXRob2QgKF9TUlMsIDEsIE5v dFNlcmlhbGl6ZWQpCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIENyZWF0ZVdvcmRG aWVsZCAoQXJnMCwgMHgwMSwgSVJBKQogICAgICAgICAgICAgICAgRmluZFNldFJpZ2h0Qml0 IChJUkEsIExvY2FsMCkKICAgICAgICAgICAgICAgIERlY3JlbWVudCAoTG9jYWwwKQogICAg ICAgICAgICAgICAgU3RvcmUgKExvY2FsMCwgUElSRCkKICAgICAgICAgICAgfQogICAgICAg IH0KCiAgICAgICAgRGV2aWNlIChMTktFKQogICAgICAgIHsKICAgICAgICAgICAgTmFtZSAo X0hJRCwgRWlzYUlkICgiUE5QMEMwRiIpKQogICAgICAgICAgICBOYW1lIChfVUlELCAweDA1 KQogICAgICAgICAgICBNZXRob2QgKF9TVEEsIDAsIE5vdFNlcmlhbGl6ZWQpCiAgICAgICAg ICAgIHsKICAgICAgICAgICAgICAgIEFuZCAoUElSRSwgMHg4MCwgTG9jYWwwKQogICAgICAg ICAgICAgICAgSWYgKExvY2FsMCkKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAg ICAgICBSZXR1cm4gKDB4MDkpCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBF bHNlCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgUmV0dXJuICgweDBC KQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CgogICAgICAgICAgICBNZXRob2Qg KF9QUlMsIDAsIE5vdFNlcmlhbGl6ZWQpCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAg IFJldHVybiAoUFJTRSkKICAgICAgICAgICAgfQoKICAgICAgICAgICAgTWV0aG9kIChfRElT LCAwLCBOb3RTZXJpYWxpemVkKQogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICBPciAo UElSRSwgMHg4MCwgUElSRSkKICAgICAgICAgICAgfQoKICAgICAgICAgICAgTWV0aG9kIChf Q1JTLCAwLCBOb3RTZXJpYWxpemVkKQogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICBB bmQgKFBJUkUsIDB4MEYsIExvY2FsMCkKICAgICAgICAgICAgICAgIFNoaWZ0TGVmdCAoMHgw MSwgTG9jYWwwLCBJUkEwKQogICAgICAgICAgICAgICAgUmV0dXJuIChCVUZBKQogICAgICAg ICAgICB9CgogICAgICAgICAgICBNZXRob2QgKF9TUlMsIDEsIE5vdFNlcmlhbGl6ZWQpCiAg ICAgICAgICAgIHsKICAgICAgICAgICAgICAgIENyZWF0ZVdvcmRGaWVsZCAoQXJnMCwgMHgw MSwgSVJBKQogICAgICAgICAgICAgICAgRmluZFNldFJpZ2h0Qml0IChJUkEsIExvY2FsMCkK ICAgICAgICAgICAgICAgIERlY3JlbWVudCAoTG9jYWwwKQogICAgICAgICAgICAgICAgU3Rv cmUgKExvY2FsMCwgUElSRSkKICAgICAgICAgICAgfQogICAgICAgIH0KCiAgICAgICAgRGV2 aWNlIChMTktGKQogICAgICAgIHsKICAgICAgICAgICAgTmFtZSAoX0hJRCwgRWlzYUlkICgi UE5QMEMwRiIpKQogICAgICAgICAgICBOYW1lIChfVUlELCAweDA2KQogICAgICAgICAgICBN ZXRob2QgKF9TVEEsIDAsIE5vdFNlcmlhbGl6ZWQpCiAgICAgICAgICAgIHsKICAgICAgICAg ICAgICAgIEFuZCAoUElSRiwgMHg4MCwgTG9jYWwwKQogICAgICAgICAgICAgICAgSWYgKExv Y2FsMCkKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICBSZXR1cm4gKDB4 MDkpCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBFbHNlCiAgICAgICAgICAg ICAgICB7CiAgICAgICAgICAgICAgICAgICAgUmV0dXJuICgweDBCKQogICAgICAgICAgICAg ICAgfQogICAgICAgICAgICB9CgogICAgICAgICAgICBNZXRob2QgKF9QUlMsIDAsIE5vdFNl cmlhbGl6ZWQpCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIFJldHVybiAoUFJTRikK ICAgICAgICAgICAgfQoKICAgICAgICAgICAgTWV0aG9kIChfRElTLCAwLCBOb3RTZXJpYWxp emVkKQogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICBPciAoUElSRiwgMHg4MCwgUElS RikKICAgICAgICAgICAgfQoKICAgICAgICAgICAgTWV0aG9kIChfQ1JTLCAwLCBOb3RTZXJp YWxpemVkKQogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICBBbmQgKFBJUkYsIDB4MEYs IExvY2FsMCkKICAgICAgICAgICAgICAgIFNoaWZ0TGVmdCAoMHgwMSwgTG9jYWwwLCBJUkEw KQogICAgICAgICAgICAgICAgUmV0dXJuIChCVUZBKQogICAgICAgICAgICB9CgogICAgICAg ICAgICBNZXRob2QgKF9TUlMsIDEsIE5vdFNlcmlhbGl6ZWQpCiAgICAgICAgICAgIHsKICAg ICAgICAgICAgICAgIENyZWF0ZVdvcmRGaWVsZCAoQXJnMCwgMHgwMSwgSVJBKQogICAgICAg ICAgICAgICAgRmluZFNldFJpZ2h0Qml0IChJUkEsIExvY2FsMCkKICAgICAgICAgICAgICAg IERlY3JlbWVudCAoTG9jYWwwKQogICAgICAgICAgICAgICAgU3RvcmUgKExvY2FsMCwgUElS RikKICAgICAgICAgICAgfQogICAgICAgIH0KCiAgICAgICAgRGV2aWNlIChMTktHKQogICAg ICAgIHsKICAgICAgICAgICAgTmFtZSAoX0hJRCwgRWlzYUlkICgiUE5QMEMwRiIpKQogICAg ICAgICAgICBOYW1lIChfVUlELCAweDA3KQogICAgICAgICAgICBNZXRob2QgKF9TVEEsIDAs IE5vdFNlcmlhbGl6ZWQpCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIEFuZCAoUElS RywgMHg4MCwgTG9jYWwwKQogICAgICAgICAgICAgICAgSWYgKExvY2FsMCkKICAgICAgICAg ICAgICAgIHsKICAgICAgICAgICAgICAgICAgICBSZXR1cm4gKDB4MDkpCiAgICAgICAgICAg ICAgICB9CiAgICAgICAgICAgICAgICBFbHNlCiAgICAgICAgICAgICAgICB7CiAgICAgICAg ICAgICAgICAgICAgUmV0dXJuICgweDBCKQogICAgICAgICAgICAgICAgfQogICAgICAgICAg ICB9CgogICAgICAgICAgICBNZXRob2QgKF9QUlMsIDAsIE5vdFNlcmlhbGl6ZWQpCiAgICAg ICAgICAgIHsKICAgICAgICAgICAgICAgIFJldHVybiAoUFJTRykKICAgICAgICAgICAgfQoK ICAgICAgICAgICAgTWV0aG9kIChfRElTLCAwLCBOb3RTZXJpYWxpemVkKQogICAgICAgICAg ICB7CiAgICAgICAgICAgICAgICBPciAoUElSRywgMHg4MCwgUElSRykKICAgICAgICAgICAg fQoKICAgICAgICAgICAgTWV0aG9kIChfQ1JTLCAwLCBOb3RTZXJpYWxpemVkKQogICAgICAg ICAgICB7CiAgICAgICAgICAgICAgICBBbmQgKFBJUkcsIDB4MEYsIExvY2FsMCkKICAgICAg ICAgICAgICAgIFNoaWZ0TGVmdCAoMHgwMSwgTG9jYWwwLCBJUkEwKQogICAgICAgICAgICAg ICAgUmV0dXJuIChCVUZBKQogICAgICAgICAgICB9CgogICAgICAgICAgICBNZXRob2QgKF9T UlMsIDEsIE5vdFNlcmlhbGl6ZWQpCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIENy ZWF0ZVdvcmRGaWVsZCAoQXJnMCwgMHgwMSwgSVJBKQogICAgICAgICAgICAgICAgRmluZFNl dFJpZ2h0Qml0IChJUkEsIExvY2FsMCkKICAgICAgICAgICAgICAgIERlY3JlbWVudCAoTG9j YWwwKQogICAgICAgICAgICAgICAgU3RvcmUgKExvY2FsMCwgUElSRykKICAgICAgICAgICAg fQogICAgICAgIH0KCiAgICAgICAgRGV2aWNlIChMTktIKQogICAgICAgIHsKICAgICAgICAg ICAgTmFtZSAoX0hJRCwgRWlzYUlkICgiUE5QMEMwRiIpKQogICAgICAgICAgICBOYW1lIChf VUlELCAweDA4KQogICAgICAgICAgICBNZXRob2QgKF9TVEEsIDAsIE5vdFNlcmlhbGl6ZWQp CiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIEFuZCAoUElSSCwgMHg4MCwgTG9jYWww KQogICAgICAgICAgICAgICAgSWYgKExvY2FsMCkKICAgICAgICAgICAgICAgIHsKICAgICAg ICAgICAgICAgICAgICBSZXR1cm4gKDB4MDkpCiAgICAgICAgICAgICAgICB9CiAgICAgICAg ICAgICAgICBFbHNlCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgUmV0 dXJuICgweDBCKQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CgogICAgICAgICAg ICBNZXRob2QgKF9QUlMsIDAsIE5vdFNlcmlhbGl6ZWQpCiAgICAgICAgICAgIHsKICAgICAg ICAgICAgICAgIFJldHVybiAoUFJTSCkKICAgICAgICAgICAgfQoKICAgICAgICAgICAgTWV0 aG9kIChfRElTLCAwLCBOb3RTZXJpYWxpemVkKQogICAgICAgICAgICB7CiAgICAgICAgICAg ICAgICBPciAoUElSSCwgMHg4MCwgUElSSCkKICAgICAgICAgICAgfQoKICAgICAgICAgICAg TWV0aG9kIChfQ1JTLCAwLCBOb3RTZXJpYWxpemVkKQogICAgICAgICAgICB7CiAgICAgICAg ICAgICAgICBBbmQgKFBJUkgsIDB4MEYsIExvY2FsMCkKICAgICAgICAgICAgICAgIFNoaWZ0 TGVmdCAoMHgwMSwgTG9jYWwwLCBJUkEwKQogICAgICAgICAgICAgICAgUmV0dXJuIChCVUZB KQogICAgICAgICAgICB9CgogICAgICAgICAgICBNZXRob2QgKF9TUlMsIDEsIE5vdFNlcmlh bGl6ZWQpCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIENyZWF0ZVdvcmRGaWVsZCAo QXJnMCwgMHgwMSwgSVJBKQogICAgICAgICAgICAgICAgRmluZFNldFJpZ2h0Qml0IChJUkEs IExvY2FsMCkKICAgICAgICAgICAgICAgIERlY3JlbWVudCAoTG9jYWwwKQogICAgICAgICAg ICAgICAgU3RvcmUgKExvY2FsMCwgUElSSCkKICAgICAgICAgICAgfQogICAgICAgIH0KICAg IH0KCiAgICBTY29wZSAoXF9TQikKICAgIHsKICAgICAgICBTY29wZSAoUENJMCkKICAgICAg ICB7CiAgICAgICAgICAgIE9wZXJhdGlvblJlZ2lvbiAoSU9CMiwgU3lzdGVtSU8sIDB4QjIs IDB4MDIpCiAgICAgICAgICAgIEZpZWxkIChJT0IyLCBCeXRlQWNjLCBOb0xvY2ssIFByZXNl cnZlKQogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICBTTUlDLCAgIDgsIAogICAgICAg ICAgICAgICAgU01JUywgICA4CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIE1ldGhvZCAo X0lOSSwgMCwgTm90U2VyaWFsaXplZCkKICAgICAgICAgICAgewogICAgICAgICAgICAgICAg SWYgKENvbmRSZWZPZiAoX09TSSwgTG9jYWwwKSkKICAgICAgICAgICAgICAgIHsKICAgICAg ICAgICAgICAgICAgICBTdG9yZSAoMHg1OCwgU01JQykKICAgICAgICAgICAgICAgIH0KICAg ICAgICAgICAgICAgIEVsc2UKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAg ICBTdG9yZSAoMHg4NSwgU01JQykKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQog ICAgICAgIH0KICAgIH0KCiAgICBTY29wZSAoXF9TQikKICAgIHsKICAgICAgICBTY29wZSAo UENJMCkKICAgICAgICB7CiAgICAgICAgICAgIE5hbWUgKENSUywgUmVzb3VyY2VUZW1wbGF0 ZSAoKQogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICBXb3JkQnVzTnVtYmVyIChSZXNv dXJjZVByb2R1Y2VyLCBNaW5GaXhlZCwgTWF4Rml4ZWQsIFBvc0RlY29kZSwKICAgICAgICAg ICAgICAgICAgICAweDAwMDAsCiAgICAgICAgICAgICAgICAgICAgMHgwMDAwLAogICAgICAg ICAgICAgICAgICAgIDB4MDBGRiwKICAgICAgICAgICAgICAgICAgICAweDAwMDAsCiAgICAg ICAgICAgICAgICAgICAgMHgwMTAwKQogICAgICAgICAgICAgICAgSU8gKERlY29kZTE2LCAw eDBDRjgsIDB4MENGOCwgMHgwMSwgMHgwOCkKICAgICAgICAgICAgICAgIFdvcmRJTyAoUmVz b3VyY2VQcm9kdWNlciwgTWluRml4ZWQsIE1heEZpeGVkLCBQb3NEZWNvZGUsIEVudGlyZVJh bmdlLAogICAgICAgICAgICAgICAgICAgIDB4MDAwMCwKICAgICAgICAgICAgICAgICAgICAw eDAwMDAsCiAgICAgICAgICAgICAgICAgICAgMHgwQ0Y3LAogICAgICAgICAgICAgICAgICAg IDB4MDAwMCwKICAgICAgICAgICAgICAgICAgICAweDBDRjgpCiAgICAgICAgICAgICAgICBX b3JkSU8gKFJlc291cmNlUHJvZHVjZXIsIE1pbkZpeGVkLCBNYXhGaXhlZCwgUG9zRGVjb2Rl LCBFbnRpcmVSYW5nZSwKICAgICAgICAgICAgICAgICAgICAweDAwMDAsCiAgICAgICAgICAg ICAgICAgICAgMHgwRDAwLAogICAgICAgICAgICAgICAgICAgIDB4RkZGRiwKICAgICAgICAg ICAgICAgICAgICAweDAwMDAsCiAgICAgICAgICAgICAgICAgICAgMHhGMzAwKQogICAgICAg ICAgICAgICAgRFdvcmRNZW1vcnkgKFJlc291cmNlUHJvZHVjZXIsIFBvc0RlY29kZSwgTWlu Rml4ZWQsIE1heEZpeGVkLCBDYWNoZWFibGUsIFJlYWRXcml0ZSwKICAgICAgICAgICAgICAg ICAgICAweDAwMDAwMDAwLAogICAgICAgICAgICAgICAgICAgIDB4MDAwQTAwMDAsCiAgICAg ICAgICAgICAgICAgICAgMHgwMDBCRkZGRiwKICAgICAgICAgICAgICAgICAgICAweDAwMDAw MDAwLAogICAgICAgICAgICAgICAgICAgIDB4MDAwMjAwMDApCiAgICAgICAgICAgICAgICBE V29yZE1lbW9yeSAoUmVzb3VyY2VQcm9kdWNlciwgUG9zRGVjb2RlLCBNaW5GaXhlZCwgTWF4 Rml4ZWQsIENhY2hlYWJsZSwgUmVhZFdyaXRlLAogICAgICAgICAgICAgICAgICAgIDB4MDAw MDAwMDAsCiAgICAgICAgICAgICAgICAgICAgMHgwMDAwMDAwMCwKICAgICAgICAgICAgICAg ICAgICAweDAwMDAwMDAwLAogICAgICAgICAgICAgICAgICAgIDB4MDAwMDAwMDAsCiAgICAg ICAgICAgICAgICAgICAgMHgwMDAwMDAwMCkKICAgICAgICAgICAgICAgIERXb3JkTWVtb3J5 IChSZXNvdXJjZVByb2R1Y2VyLCBQb3NEZWNvZGUsIE1pbkZpeGVkLCBNYXhGaXhlZCwgQ2Fj aGVhYmxlLCBSZWFkV3JpdGUsCiAgICAgICAgICAgICAgICAgICAgMHgwMDAwMDAwMCwKICAg ICAgICAgICAgICAgICAgICAweDAwMDAwMDAwLAogICAgICAgICAgICAgICAgICAgIDB4MDAw MDAwMDAsCiAgICAgICAgICAgICAgICAgICAgMHgwMDAwMDAwMCwKICAgICAgICAgICAgICAg ICAgICAweDAwMDAwMDAwKQogICAgICAgICAgICB9KQogICAgICAgICAgICBDcmVhdGVEV29y ZEZpZWxkIChDUlMsIDB4NUMsIE1JTjUpCiAgICAgICAgICAgIENyZWF0ZURXb3JkRmllbGQg KENSUywgMHg2MCwgTUFYNSkKICAgICAgICAgICAgQ3JlYXRlRFdvcmRGaWVsZCAoQ1JTLCAw eDY4LCBMRU41KQogICAgICAgICAgICBDcmVhdGVEV29yZEZpZWxkIChDUlMsIDB4NzYsIE1J TjYpCiAgICAgICAgICAgIENyZWF0ZURXb3JkRmllbGQgKENSUywgMHg3QSwgTUFYNikKICAg ICAgICAgICAgQ3JlYXRlRFdvcmRGaWVsZCAoQ1JTLCAweDgyLCBMRU42KQogICAgICAgICAg ICBNZXRob2QgKF9DUlMsIDAsIE5vdFNlcmlhbGl6ZWQpCiAgICAgICAgICAgIHsKICAgICAg ICAgICAgICAgIFN0b3JlIChNRzFCLCBNSU41KQogICAgICAgICAgICAgICAgU3RvcmUgKE1H MUwsIExFTjUpCiAgICAgICAgICAgICAgICBTdG9yZSAoTUcxTCwgTG9jYWwwKQogICAgICAg ICAgICAgICAgSWYgKExvY2FsMCkKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAg ICAgICBBZGQgKE1JTjUsIERlY3JlbWVudCAoTG9jYWwwKSwgTUFYNSkKICAgICAgICAgICAg ICAgIH0KCiAgICAgICAgICAgICAgICBTdG9yZSAoTUcyQiwgTUlONikKICAgICAgICAgICAg ICAgIEFkZCAoTUlONiwgMHgwMDAxMDAwMCwgTUlONikKICAgICAgICAgICAgICAgIFN0b3Jl IChNRzJMLCBMRU42KQogICAgICAgICAgICAgICAgU3VidHJhY3QgKExFTjYsIDB4MDAwMTAw MDAsIExFTjYpCiAgICAgICAgICAgICAgICBTdG9yZSAoTEVONiwgTG9jYWwwKQogICAgICAg ICAgICAgICAgQWRkIChNSU42LCBEZWNyZW1lbnQgKExvY2FsMCksIE1BWDYpCiAgICAgICAg ICAgICAgICBSZXR1cm4gKENSUykKICAgICAgICAgICAgfQoKICAgICAgICAgICAgTWV0aG9k IChfUzNELCAwLCBOb3RTZXJpYWxpemVkKQogICAgICAgICAgICB7CiAgICAgICAgICAgICAg ICBJZiAoTE9yIChMRXF1YWwgKE9TRkwgKCksIDB4MDEpLCBMRXF1YWwgKE9TRkwgKCksIDB4 MDIpKSkKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICBSZXR1cm4gKDB4 MDIpCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBFbHNlCiAgICAgICAgICAg ICAgICB7CiAgICAgICAgICAgICAgICAgICAgUmV0dXJuICgweDAzKQogICAgICAgICAgICAg ICAgfQogICAgICAgICAgICB9CgogICAgICAgICAgICBNZXRob2QgKFVTQjEuX1MzRCwgMCwg Tm90U2VyaWFsaXplZCkKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgSWYgKExPciAo TEVxdWFsIChPU0ZMICgpLCAweDAxKSwgTEVxdWFsIChPU0ZMICgpLCAweDAyKSkpCiAgICAg ICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgUmV0dXJuICgweDAyKQogICAgICAg ICAgICAgICAgfQogICAgICAgICAgICAgICAgRWxzZQogICAgICAgICAgICAgICAgewogICAg ICAgICAgICAgICAgICAgIFJldHVybiAoMHgwMykKICAgICAgICAgICAgICAgIH0KICAgICAg ICAgICAgfQoKICAgICAgICAgICAgTWV0aG9kIChVU0IyLl9TM0QsIDAsIE5vdFNlcmlhbGl6 ZWQpCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIElmIChMT3IgKExFcXVhbCAoT1NG TCAoKSwgMHgwMSksIExFcXVhbCAoT1NGTCAoKSwgMHgwMikpKQogICAgICAgICAgICAgICAg ewogICAgICAgICAgICAgICAgICAgIFJldHVybiAoMHgwMikKICAgICAgICAgICAgICAgIH0K ICAgICAgICAgICAgICAgIEVsc2UKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAg ICAgICBSZXR1cm4gKDB4MDMpCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KCiAg ICAgICAgICAgIE1ldGhvZCAoVVNCMy5fUzNELCAwLCBOb3RTZXJpYWxpemVkKQogICAgICAg ICAgICB7CiAgICAgICAgICAgICAgICBJZiAoTE9yIChMRXF1YWwgKE9TRkwgKCksIDB4MDEp LCBMRXF1YWwgKE9TRkwgKCksIDB4MDIpKSkKICAgICAgICAgICAgICAgIHsKICAgICAgICAg ICAgICAgICAgICBSZXR1cm4gKDB4MDIpCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAg ICAgICBFbHNlCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgUmV0dXJu ICgweDAzKQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CgogICAgICAgICAgICBN ZXRob2QgKFVTQjQuX1MzRCwgMCwgTm90U2VyaWFsaXplZCkKICAgICAgICAgICAgewogICAg ICAgICAgICAgICAgSWYgKExPciAoTEVxdWFsIChPU0ZMICgpLCAweDAxKSwgTEVxdWFsIChP U0ZMICgpLCAweDAyKSkpCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAg UmV0dXJuICgweDAyKQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgRWxzZQog ICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIFJldHVybiAoMHgwMykKICAg ICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQoKICAgICAgICAgICAgTmFtZSAoTkFUQSwg UGFja2FnZSAoMHgwMSkKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgMHgwMDFGMDAw MQogICAgICAgICAgICB9KQogICAgICAgIH0KCiAgICAgICAgTmFtZSAoU0xQUywgMHgwMCkK ICAgIH0KCiAgICBOYW1lIChXUjAwLCAweDAwKQogICAgTmFtZSAoV1IwMSwgMHgwMCkKICAg IE5hbWUgKFdSMDIsIDB4MDApCiAgICBNZXRob2QgKF9QVFMsIDEsIE5vdFNlcmlhbGl6ZWQp CiAgICB7CiAgICAgICAgU3RvcmUgKEFyZzAsIERCRzgpCiAgICAgICAgUFRTIChBcmcwKQog ICAgICAgIFN0b3JlICgweDAwLCBJbmRleCAoV0FLUCwgMHgwMCkpCiAgICAgICAgU3RvcmUg KDB4MDAsIEluZGV4IChXQUtQLCAweDAxKSkKICAgICAgICBJZiAoTEFuZCAoTEVxdWFsIChB cmcwLCAweDA0KSwgTEVxdWFsIChPU0ZMICgpLCAweDAyKSkpCiAgICAgICAgewogICAgICAg ICAgICBTbGVlcCAoMHgwQkI4KQogICAgICAgIH0KCiAgICAgICAgU3RvcmUgKEFQV1IsIFdS MDApCiAgICAgICAgU3RvcmUgKFNQTFYsIFdSMDEpCiAgICAgICAgU3RvcmUgKE9TRkcsIFdS MDIpCiAgICAgICAgU3RvcmUgKEFyZzAsIFNQTFYpCiAgICAgICAgU3RvcmUgKE9TRkwgKCks IE9TRkcpCiAgICAgICAgU3RvcmUgKE9uZSwgUFMxUykKICAgICAgICBTdG9yZSAoT25lLCBQ UzFFKQogICAgICAgIFN0b3JlIChPbmUsIFxfU0IuU0xQUykKICAgIH0KCiAgICBNZXRob2Qg KF9XQUssIDEsIE5vdFNlcmlhbGl6ZWQpCiAgICB7CiAgICAgICAgU2hpZnRMZWZ0IChBcmcw LCAweDA0LCBEQkc4KQogICAgICAgIFN0b3JlIChaZXJvLCBQUzFFKQogICAgICAgIElmIChJ T1dLKSB7fQogICAgICAgIEVsc2UKICAgICAgICB7CiAgICAgICAgICAgIE5vdGlmeSAoXF9T Qi5QV1JCLCAweDAyKQogICAgICAgIH0KCiAgICAgICAgSWYgKEFuZCAoQVBXUiwgMHgwMikp CiAgICAgICAgewogICAgICAgICAgICBOb3RpZnkgKFxfU0IuUFdSQiwgMHgwMikKICAgICAg ICB9CgogICAgICAgIFN0b3JlIChPbmUsIFBXQlQpCiAgICAgICAgU3RvcmUgKFdSMDAsIEFQ V1IpCiAgICAgICAgU3RvcmUgKFdSMDEsIFNQTFYpCiAgICAgICAgU3RvcmUgKFdSMDIsIE9T RkcpCiAgICAgICAgU3RvcmUgKFplcm8sIFxfU0IuU0xQUykKICAgICAgICBXQUsgKEFyZzAp CiAgICAgICAgSWYgKERlcmVmT2YgKEluZGV4IChXQUtQLCAweDAwKSkpCiAgICAgICAgewog ICAgICAgICAgICBTdG9yZSAoMHgwMCwgSW5kZXggKFdBS1AsIDB4MDEpKQogICAgICAgIH0K ICAgICAgICBFbHNlCiAgICAgICAgewogICAgICAgICAgICBTdG9yZSAoQXJnMCwgSW5kZXgg KFdBS1AsIDB4MDEpKQogICAgICAgIH0KCiAgICAgICAgUmV0dXJuIChXQUtQKQogICAgfQoK ICAgIE9wZXJhdGlvblJlZ2lvbiAoUE1TMCwgU3lzdGVtSU8sIFBNQlMsIDB4MDQpCiAgICBG aWVsZCAoUE1TMCwgQnl0ZUFjYywgTm9Mb2NrLCBQcmVzZXJ2ZSkKICAgIHsKICAgICAgICAg ICAgLCAgIDEwLCAKICAgICAgICBSVENTLCAgIDEsIAogICAgICAgICAgICAsICAgNCwgCiAg ICAgICAgV0FLUywgICAxLCAKICAgICAgICBPZmZzZXQgKDB4MDMpLCAKICAgICAgICBQV0JU LCAgIDEsIAogICAgICAgICAgICAsICAgMSwgCiAgICAgICAgUlRDRSwgICAxLCAKICAgICAg ICBPZmZzZXQgKDB4MDQpCiAgICB9CgogICAgT3BlcmF0aW9uUmVnaW9uIChTTUlFLCBTeXN0 ZW1JTywgUE0zMCwgMHgwOCkKICAgIEZpZWxkIChTTUlFLCBCeXRlQWNjLCBOb0xvY2ssIFBy ZXNlcnZlKQogICAgewogICAgICAgICAgICAsICAgNCwgCiAgICAgICAgUFMxRSwgICAxLCAK ICAgICAgICAgICAgLCAgIDMxLCAKICAgICAgICBQUzFTLCAgIDEsIAogICAgICAgIE9mZnNl dCAoMHgwOCkKICAgIH0KCiAgICBPcGVyYXRpb25SZWdpb24gKFxfU0IuUENJMC5TS1BELCBQ Q0lfQ29uZmlnLCBBQ1BILCAweDAyKQogICAgRmllbGQgKFxfU0IuUENJMC5TS1BELCBCeXRl QWNjLCBOb0xvY2ssIFByZXNlcnZlKQogICAgewogICAgICAgIEFQV1IsICAgOCwgCiAgICAg ICAgU1BMViwgICAzLCAKICAgICAgICBPU0ZHLCAgIDIsIAogICAgICAgIE9mZnNldCAoMHgw MikKICAgIH0KCiAgICBPcGVyYXRpb25SZWdpb24gKENNT1MsIFN5c3RlbUlPLCAweDcwLCAw eDAyKQogICAgRmllbGQgKENNT1MsIEJ5dGVBY2MsIE5vTG9jaywgUHJlc2VydmUpCiAgICB7 CiAgICAgICAgQ0lEWCwgICA4LCAKICAgICAgICBDREFULCAgIDgKICAgIH0KCiAgICBJbmRl eEZpZWxkIChDSURYLCBDREFULCBCeXRlQWNjLCBOb0xvY2ssIFByZXNlcnZlKQogICAgewog ICAgICAgIE9mZnNldCAoMHg2RSksIAogICAgICAgIFdLVFAsICAgOAogICAgfQoKICAgIE9w ZXJhdGlvblJlZ2lvbiAoSU9SSywgU3lzdGVtSU8sIDB4QjMsIDB4MDEpCiAgICBGaWVsZCAo SU9SSywgQnl0ZUFjYywgTm9Mb2NrLCBQcmVzZXJ2ZSkKICAgIHsKICAgICAgICBJT1dLLCAg IDgKICAgIH0KCiAgICBTY29wZSAoXF9TQi5QQ0kwLklERTApCiAgICB7CiAgICAgICAgT3Bl cmF0aW9uUmVnaW9uIChQQVI5LCBQQ0lfQ29uZmlnLCAweDA5LCAweDAxKQogICAgICAgIEZp ZWxkIChQQVI5LCBCeXRlQWNjLCBOb0xvY2ssIFByZXNlcnZlKQogICAgICAgIHsKICAgICAg ICAgICAgUEFNRCwgICA4CiAgICAgICAgfQogICAgfQoKICAgIFNjb3BlIChcX1NCLlBDSTAu SURFMSkKICAgIHsKICAgICAgICBPcGVyYXRpb25SZWdpb24gKFNBUjksIFBDSV9Db25maWcs IDB4MDksIDB4MDEpCiAgICAgICAgRmllbGQgKFNBUjksIEJ5dGVBY2MsIE5vTG9jaywgUHJl c2VydmUpCiAgICAgICAgewogICAgICAgICAgICBTQU1ELCAgIDgKICAgICAgICB9CiAgICB9 CgogICAgTmFtZSAoXF9TMCwgUGFja2FnZSAoMHgwNCkKICAgIHsKICAgICAgICAweDAwLCAK ICAgICAgICAweDAwLCAKICAgICAgICAweDAwLCAKICAgICAgICAweDAwCiAgICB9KQogICAg SWYgKFNTMSkKICAgIHsKICAgICAgICBOYW1lIChcX1MxLCBQYWNrYWdlICgweDA0KQogICAg ICAgIHsKICAgICAgICAgICAgMHgwMSwgCiAgICAgICAgICAgIDB4MDAsIAogICAgICAgICAg ICAweDAwLCAKICAgICAgICAgICAgMHgwMAogICAgICAgIH0pCiAgICB9CgogICAgSWYgKFNT MykKICAgIHsKICAgICAgICBOYW1lIChcX1MzLCBQYWNrYWdlICgweDA0KQogICAgICAgIHsK ICAgICAgICAgICAgMHgwNSwgCiAgICAgICAgICAgIDB4MDAsIAogICAgICAgICAgICAweDAw LCAKICAgICAgICAgICAgMHgwMAogICAgICAgIH0pCiAgICB9CgogICAgSWYgKFNTNCkKICAg IHsKICAgICAgICBOYW1lIChcX1M0LCBQYWNrYWdlICgweDA0KQogICAgICAgIHsKICAgICAg ICAgICAgMHgwNiwgCiAgICAgICAgICAgIDB4MDAsIAogICAgICAgICAgICAweDAwLCAKICAg ICAgICAgICAgMHgwMAogICAgICAgIH0pCiAgICB9CgogICAgTmFtZSAoXF9TNSwgUGFja2Fn ZSAoMHgwNCkKICAgIHsKICAgICAgICAweDA3LCAKICAgICAgICAweDAwLCAKICAgICAgICAw eDAwLCAKICAgICAgICAweDAwCiAgICB9KQogICAgTWV0aG9kIChQVFMsIDEsIE5vdFNlcmlh bGl6ZWQpCiAgICB7CiAgICAgICAgSWYgKEFyZzApCiAgICAgICAgewogICAgICAgICAgICBc X1NCLlBDSTAuU0JSRy5TSU9TIChBcmcwKQogICAgICAgIH0KICAgIH0KCiAgICBNZXRob2Qg KFdBSywgMSwgTm90U2VyaWFsaXplZCkKICAgIHsKICAgICAgICBcX1NCLlBDSTAuU0JSRy5T SU9XIChBcmcwKQogICAgfQp9Cgo= --------------010307000804000400020403 Content-Type: text/plain; name="dmesg" Content-Transfer-Encoding: base64 Content-Disposition: inline; filename="dmesg" Q29weXJpZ2h0IChjKSAxOTkyLTIwMDcgVGhlIEZyZWVCU0QgUHJvamVjdC4KQ29weXJpZ2h0 IChjKSAxOTc5LCAxOTgwLCAxOTgzLCAxOTg2LCAxOTg4LCAxOTg5LCAxOTkxLCAxOTkyLCAx OTkzLCAxOTk0CglUaGUgUmVnZW50cyBvZiB0aGUgVW5pdmVyc2l0eSBvZiBDYWxpZm9ybmlh LiBBbGwgcmlnaHRzIHJlc2VydmVkLgpGcmVlQlNEIGlzIGEgcmVnaXN0ZXJlZCB0cmFkZW1h cmsgb2YgVGhlIEZyZWVCU0QgRm91bmRhdGlvbi4KRnJlZUJTRCA2LjItU1RBQkxFICMwOiBG cmkgQXByICA2IDIzOjM0OjMzIEVFU1QgMjAwNwogICAgcGhvZW5peEBzcDAtaG9zdC5sYW46 L3Vzci9vYmovdXNyL3NyYy9zeXMvUEhPRU5JWApXQVJOSU5HOiBkZWJ1Zy5tcHNhZmVuZXQg Zm9yY2VkIHRvIDAgYXMgaXBzZWMgcmVxdWlyZXMgR2lhbnQKV0FSTklORzogTVBTQUZFIG5l dHdvcmsgc3RhY2sgZGlzYWJsZWQsIGV4cGVjdCByZWR1Y2VkIHBlcmZvcm1hbmNlLgpUaW1l Y291bnRlciAiaTgyNTQiIGZyZXF1ZW5jeSAxMTkzMTgyIEh6IHF1YWxpdHkgMApDUFU6IElu dGVsKFIpIFBlbnRpdW0oUikgNCBDUFUgMy4wMEdIeiAoMjk5OC41Ny1NSHogNjg2LWNsYXNz IENQVSkKICBPcmlnaW4gPSAiR2VudWluZUludGVsIiAgSWQgPSAweGYzNCAgU3RlcHBpbmcg PSA0CiAgRmVhdHVyZXM9MHhiZmViZmJmZjxGUFUsVk1FLERFLFBTRSxUU0MsTVNSLFBBRSxN Q0UsQ1g4LEFQSUMsU0VQLE1UUlIsUEdFLE1DQSxDTU9WLFBBVCxQU0UzNixDTEZMVVNILERU UyxBQ1BJLE1NWCxGWFNSLFNTRSxTU0UyLFNTLEhUVCxUTSxQQkU+CiAgRmVhdHVyZXMyPTB4 NDQxZDxTU0UzLFJTVkQyLE1PTixEU19DUEwsQ05UWC1JRCw8YjE0Pj4KICBMb2dpY2FsIENQ VXMgcGVyIGNvcmU6IDIKcmVhbCBtZW1vcnkgID0gNTM2NTQzMjMyICg1MTEgTUIpCmF2YWls IG1lbW9yeSA9IDUxNTQ1NzAyNCAoNDkxIE1CKQpBQ1BJIEFQSUMgVGFibGU6IDxBIE0gSSAg T0VNQVBJQyA+CkZyZWVCU0QvU01QOiBNdWx0aXByb2Nlc3NvciBTeXN0ZW0gRGV0ZWN0ZWQ6 IDIgQ1BVcwogY3B1MCAoQlNQKTogQVBJQyBJRDogIDAKIGNwdTEgKEFQKTogQVBJQyBJRDog IDEKaW9hcGljMCA8VmVyc2lvbiAyLjA+IGlycXMgMC0yMyBvbiBtb3RoZXJib2FyZAprYmQx IGF0IGtiZG11eDAKYWNwaTA6IDxBIE0gSSBPRU1YU0RUPiBvbiBtb3RoZXJib2FyZAphY3Bp MDogUG93ZXIgQnV0dG9uIChmaXhlZCkKVGltZWNvdW50ZXIgIkFDUEktZmFzdCIgZnJlcXVl bmN5IDM1Nzk1NDUgSHogcXVhbGl0eSAxMDAwCmFjcGlfdGltZXIwOiA8MjQtYml0IHRpbWVy IGF0IDMuNTc5NTQ1TUh6PiBwb3J0IDB4ODA4LTB4ODBiIG9uIGFjcGkwCmNwdTA6IDxBQ1BJ IENQVT4gb24gYWNwaTAKY3B1MTogPEFDUEkgQ1BVPiBvbiBhY3BpMApwY2liMDogPEFDUEkg SG9zdC1QQ0kgYnJpZGdlPiBwb3J0IDB4Y2Y4LTB4Y2ZmIG9uIGFjcGkwCnBjaTA6IDxBQ1BJ IFBDSSBidXM+IG9uIHBjaWIwCmFncDA6IDxJbnRlbCA4Mjg2NSBob3N0IHRvIEFHUCBicmlk Z2U+IG1lbSAweGZjMDAwMDAwLTB4ZmRmZmZmZmYgYXQgZGV2aWNlIDAuMCBvbiBwY2kwCnBj aWIxOiA8QUNQSSBQQ0ktUENJIGJyaWRnZT4gYXQgZGV2aWNlIDEuMCBvbiBwY2kwCnBjaTE6 IDxBQ1BJIFBDSSBidXM+IG9uIHBjaWIxCmRybTA6IDxBVEkgUmFkZW9uIEFTIDk1NTA+IHBv cnQgMHhjMDAwLTB4YzBmZiBtZW0gMHhmMDAwMDAwMC0weGY3ZmZmZmZmLDB4ZmU5ZjAwMDAt MHhmZTlmZmZmZiBpcnEgMTYgYXQgZGV2aWNlIDAuMCBvbiBwY2kxCmluZm86IFtkcm1dIEFH UCBhdCAweGZjMDAwMDAwIDMyTUIKaW5mbzogW2RybV0gSW5pdGlhbGl6ZWQgcmFkZW9uIDEu MjUuMCAyMDA2MDUyNApwY2kxOiA8ZGlzcGxheT4gYXQgZGV2aWNlIDAuMSAobm8gZHJpdmVy IGF0dGFjaGVkKQp1aGNpMDogPEludGVsIDgyODAxRUIgKElDSDUpIFVTQiBjb250cm9sbGVy IFVTQi1BPiBwb3J0IDB4ZWYwMC0weGVmMWYgaXJxIDE2IGF0IGRldmljZSAyOS4wIG9uIHBj aTAKdWhjaTA6IFtHSUFOVC1MT0NLRURdCnVzYjA6IDxJbnRlbCA4MjgwMUVCIChJQ0g1KSBV U0IgY29udHJvbGxlciBVU0ItQT4gb24gdWhjaTAKdXNiMDogVVNCIHJldmlzaW9uIDEuMAp1 aHViMDogSW50ZWwgVUhDSSByb290IGh1YiwgY2xhc3MgOS8wLCByZXYgMS4wMC8xLjAwLCBh ZGRyIDEKdWh1YjA6IDIgcG9ydHMgd2l0aCAyIHJlbW92YWJsZSwgc2VsZiBwb3dlcmVkCnVo Y2kxOiA8SW50ZWwgODI4MDFFQiAoSUNINSkgVVNCIGNvbnRyb2xsZXIgVVNCLUI+IHBvcnQg MHhlZjIwLTB4ZWYzZiBpcnEgMTkgYXQgZGV2aWNlIDI5LjEgb24gcGNpMAp1aGNpMTogW0dJ QU5ULUxPQ0tFRF0KdXNiMTogPEludGVsIDgyODAxRUIgKElDSDUpIFVTQiBjb250cm9sbGVy IFVTQi1CPiBvbiB1aGNpMQp1c2IxOiBVU0IgcmV2aXNpb24gMS4wCnVodWIxOiBJbnRlbCBV SENJIHJvb3QgaHViLCBjbGFzcyA5LzAsIHJldiAxLjAwLzEuMDAsIGFkZHIgMQp1aHViMTog MiBwb3J0cyB3aXRoIDIgcmVtb3ZhYmxlLCBzZWxmIHBvd2VyZWQKdWhjaTI6IDxJbnRlbCA4 MjgwMUVCIChJQ0g1KSBVU0IgY29udHJvbGxlciBVU0ItQz4gcG9ydCAweGVmNDAtMHhlZjVm IGlycSAxOCBhdCBkZXZpY2UgMjkuMiBvbiBwY2kwCnVoY2kyOiBbR0lBTlQtTE9DS0VEXQp1 c2IyOiA8SW50ZWwgODI4MDFFQiAoSUNINSkgVVNCIGNvbnRyb2xsZXIgVVNCLUM+IG9uIHVo Y2kyCnVzYjI6IFVTQiByZXZpc2lvbiAxLjAKdWh1YjI6IEludGVsIFVIQ0kgcm9vdCBodWIs IGNsYXNzIDkvMCwgcmV2IDEuMDAvMS4wMCwgYWRkciAxCnVodWIyOiAyIHBvcnRzIHdpdGgg MiByZW1vdmFibGUsIHNlbGYgcG93ZXJlZAp1aGNpMzogPEludGVsIDgyODAxRUIgKElDSDUp IFVTQiBjb250cm9sbGVyIFVTQi1EPiBwb3J0IDB4ZWY4MC0weGVmOWYgaXJxIDE2IGF0IGRl dmljZSAyOS4zIG9uIHBjaTAKdWhjaTM6IFtHSUFOVC1MT0NLRURdCnVzYjM6IDxJbnRlbCA4 MjgwMUVCIChJQ0g1KSBVU0IgY29udHJvbGxlciBVU0ItRD4gb24gdWhjaTMKdXNiMzogVVNC IHJldmlzaW9uIDEuMAp1aHViMzogSW50ZWwgVUhDSSByb290IGh1YiwgY2xhc3MgOS8wLCBy ZXYgMS4wMC8xLjAwLCBhZGRyIDEKdWh1YjM6IDIgcG9ydHMgd2l0aCAyIHJlbW92YWJsZSwg c2VsZiBwb3dlcmVkCmVoY2kwOiA8SW50ZWwgODI4MDFFQi9SIChJQ0g1KSBVU0IgMi4wIGNv bnRyb2xsZXI+IG1lbSAweGZlYmZmYzAwLTB4ZmViZmZmZmYgaXJxIDIzIGF0IGRldmljZSAy OS43IG9uIHBjaTAKZWhjaTA6IFtHSUFOVC1MT0NLRURdCnVzYjQ6IHdhaXRpbmcgZm9yIEJJ T1MgdG8gZ2l2ZSB1cCBjb250cm9sCnVzYjQ6IHRpbWVkIG91dCB3YWl0aW5nIGZvciBCSU9T CnVzYjQ6IEVIQ0kgdmVyc2lvbiAxLjAKdXNiNDogY29tcGFuaW9uIGNvbnRyb2xsZXJzLCAy IHBvcnRzIGVhY2g6IHVzYjAgdXNiMSB1c2IyIHVzYjMKdXNiNDogPEludGVsIDgyODAxRUIv UiAoSUNINSkgVVNCIDIuMCBjb250cm9sbGVyPiBvbiBlaGNpMAp1c2I0OiBVU0IgcmV2aXNp b24gMi4wCnVodWI0OiBJbnRlbCBFSENJIHJvb3QgaHViLCBjbGFzcyA5LzAsIHJldiAyLjAw LzEuMDAsIGFkZHIgMQp1aHViNDogOCBwb3J0cyB3aXRoIDggcmVtb3ZhYmxlLCBzZWxmIHBv d2VyZWQKdWdlbjA6IEFWZXJNZWRpYSBBVmVyVFYgVVNCIDIuMCBQbHVzLCByZXYgMi4wMC8w LjAxLCBhZGRyIDIKcGNpYjI6IDxBQ1BJIFBDSS1QQ0kgYnJpZGdlPiBhdCBkZXZpY2UgMzAu MCBvbiBwY2kwCnBjaTI6IDxBQ1BJIFBDSSBidXM+IG9uIHBjaWIyCnNrYzA6IDxNYXJ2ZWxs IEdpZ2FiaXQgRXRoZXJuZXQ+IHBvcnQgMHhkODAwLTB4ZDhmZiBtZW0gMHhmZWFmYzAwMC0w eGZlYWZmZmZmIGlycSAyMiBhdCBkZXZpY2UgNS4wIG9uIHBjaTIKc2tjMDogTWFydmVsbCBZ dWtvbiBMaXRlIEdpZ2FiaXQgRXRoZXJuZXQgcmV2LiBBMygweDcpCnNrMDogPE1hcnZlbGwg U2VtaWNvbmR1Y3RvciwgSW5jLiBZdWtvbj4gb24gc2tjMApzazA6IEV0aGVybmV0IGFkZHJl c3M6IDAwOjExOjJmOjZiOjFiOjFlCm1paWJ1czA6IDxNSUkgYnVzPiBvbiBzazAKZTEwMDBw aHkwOiA8TWFydmVsbCA4OEUxMDExIEdpZ2FiaXQgUEhZPiBvbiBtaWlidXMwCmUxMDAwcGh5 MDogIDEwYmFzZVQsIDEwYmFzZVQtRkRYLCAxMDBiYXNlVFgsIDEwMGJhc2VUWC1GRFgsIDEw MDBiYXNlVFgtRkRYLCBhdXRvCnNrYzA6IFtHSUFOVC1MT0NLRURdCmlzYWIwOiA8UENJLUlT QSBicmlkZ2U+IGF0IGRldmljZSAzMS4wIG9uIHBjaTAKaXNhMDogPElTQSBidXM+IG9uIGlz YWIwCmF0YXBjaTA6IDxJbnRlbCBJQ0g1IFVETUExMDAgY29udHJvbGxlcj4gcG9ydCAweDFm MC0weDFmNywweDNmNiwweDE3MC0weDE3NywweDM3NiwweGZjMDAtMHhmYzBmIGF0IGRldmlj ZSAzMS4xIG9uIHBjaTAKYXRhMDogPEFUQSBjaGFubmVsIDA+IG9uIGF0YXBjaTAKYXRhMTog PEFUQSBjaGFubmVsIDE+IG9uIGF0YXBjaTAKYXRhcGNpMTogPEludGVsIElDSDUgU0FUQTE1 MCBjb250cm9sbGVyPiBwb3J0IDB4ZWZmMC0weGVmZjcsMHhlZmU0LTB4ZWZlNywweGVmYTgt MHhlZmFmLDB4ZWZlMC0weGVmZTMsMHhlZjYwLTB4ZWY2ZiBpcnEgMTggYXQgZGV2aWNlIDMx LjIgb24gcGNpMAphdGEyOiA8QVRBIGNoYW5uZWwgMD4gb24gYXRhcGNpMQphdGEzOiA8QVRB IGNoYW5uZWwgMT4gb24gYXRhcGNpMQppY2hzbWIwOiA8SW50ZWwgODI4MDFFQiAoSUNINSkg U01CdXMgY29udHJvbGxlcj4gcG9ydCAweDQwMC0weDQxZiBpcnEgMTcgYXQgZGV2aWNlIDMx LjMgb24gcGNpMAppY2hzbWIwOiBbR0lBTlQtTE9DS0VEXQpzbWJ1czA6IDxTeXN0ZW0gTWFu YWdlbWVudCBCdXM+IG9uIGljaHNtYjAKc21iMDogPFNNQnVzIGdlbmVyaWMgSS9PPiBvbiBz bWJ1czAKcGNtMDogPEludGVsIElDSDUgKDgyODAxRUIpPiBwb3J0IDB4ZTgwMC0weGU4ZmYs MHhlZTgwLTB4ZWViZiBtZW0gMHhmZWJmZjgwMC0weGZlYmZmOWZmLDB4ZmViZmY0MDAtMHhm ZWJmZjRmZiBpcnEgMTcgYXQgZGV2aWNlIDMxLjUgb24gcGNpMApwY20wOiA8QW5hbG9nIERl dmljZXMgQUQxOTg1IEFDOTcgQ29kZWM+CmFjcGlfYnV0dG9uMDogPFBvd2VyIEJ1dHRvbj4g b24gYWNwaTAKYXRrYmRjMDogPEtleWJvYXJkIGNvbnRyb2xsZXIgKGk4MDQyKT4gcG9ydCAw eDYwLDB4NjQgaXJxIDEgb24gYWNwaTAKYXRrYmQwOiA8QVQgS2V5Ym9hcmQ+IGlycSAxIG9u IGF0a2JkYzAKa2JkMCBhdCBhdGtiZDAKYXRrYmQwOiBbR0lBTlQtTE9DS0VEXQpzcGVha2Vy MDogPFBDIHNwZWFrZXI+IHBvcnQgMHg2MSBvbiBhY3BpMApzaW8wOiBjb25maWd1cmVkIGly cSA0IG5vdCBpbiBiaXRtYXAgb2YgcHJvYmVkIGlycXMgMApzaW8wOiBwb3J0IG1heSBub3Qg YmUgZW5hYmxlZApzaW8wOiA8MTY1NTBBLWNvbXBhdGlibGUgQ09NIHBvcnQ+IHBvcnQgMHgz ZjgtMHgzZmYgaXJxIDQgZmxhZ3MgMHgxMCBvbiBhY3BpMApzaW8wOiB0eXBlIDE2NTUwQQpz aW8xOiBjb25maWd1cmVkIGlycSAzIG5vdCBpbiBiaXRtYXAgb2YgcHJvYmVkIGlycXMgMApz aW8xOiBwb3J0IG1heSBub3QgYmUgZW5hYmxlZApzaW8xOiA8MTY1NTBBLWNvbXBhdGlibGUg Q09NIHBvcnQ+IHBvcnQgMHgyZjgtMHgyZmYgaXJxIDMgb24gYWNwaTAKc2lvMTogdHlwZSAx NjU1MEEKZmRjMDogPGZsb3BweSBkcml2ZSBjb250cm9sbGVyIChGREUpPiBwb3J0IDB4M2Yw LTB4M2Y1LDB4M2Y3IGlycSA2IGRycSAyIG9uIGFjcGkwCmZkYzA6IFtGQVNUXQpmZDA6IDwx NDQwLUtCIDMuNSIgZHJpdmU+IG9uIGZkYzAgZHJpdmUgMApwbXRpbWVyMCBvbiBpc2EwCm9y bTA6IDxJU0EgT3B0aW9uIFJPTT4gYXQgaW9tZW0gMHhjMDAwMC0weGNjZmZmIG9uIGlzYTAK c2MwOiA8U3lzdGVtIGNvbnNvbGU+IGF0IGZsYWdzIDB4MTAwIG9uIGlzYTAKc2MwOiBWR0Eg PDE2IHZpcnR1YWwgY29uc29sZXMsIGZsYWdzPTB4MzAwPgp2Z2EwOiA8R2VuZXJpYyBJU0Eg VkdBPiBhdCBwb3J0IDB4M2MwLTB4M2RmIGlvbWVtIDB4YTAwMDAtMHhiZmZmZiBvbiBpc2Ew CnVnZW4xOiBBbWVyaWNhbiBQb3dlciBDb252ZXJzaW9uIEJhY2stVVBTIEJSICA4MDAgRlc6 OS5vMiAuSSBVU0IgRlc6bzIsIHJldiAxLjEwLzEuMDYsIGFkZHIgMgp1bXMwOiBMb2dpdGVj aCBVU0IgUkVDRUlWRVIsIHJldiAxLjEwLzI1LjEwLCBhZGRyIDIsIGljbGFzcyAzLzEKdW1z MDogMTYgYnV0dG9ucyBhbmQgWiBkaXIuClRpbWVjb3VudGVycyB0aWNrIGV2ZXJ5IDEuMDAw IG1zZWMKSVB2NiBwYWNrZXQgZmlsdGVyaW5nIGluaXRpYWxpemVkLCBsb2dnaW5nIGxpbWl0 ZWQgdG8gMTAwIHBhY2tldHMvZW50cnkKSVBzZWM6IEluaXRpYWxpemVkIFNlY3VyaXR5IEFz c29jaWF0aW9uIFByb2Nlc3NpbmcuCmlwZncyICgraXB2NikgaW5pdGlhbGl6ZWQsIGRpdmVy dCBsb2FkYWJsZSwgcnVsZS1iYXNlZCBmb3J3YXJkaW5nIGRpc2FibGVkLCBkZWZhdWx0IHRv IGRlbnksIGxvZ2dpbmcgbGltaXRlZCB0byAxMDAgcGFja2V0cy9lbnRyeSBieSBkZWZhdWx0 CmFkMDogNzYzMTlNQiA8U2VhZ2F0ZSBTVDM4MDAyMUEgMy4xOT4gYXQgYXRhMC1tYXN0ZXIg VURNQTEwMAphY2QwOiBETUEgbGltaXRlZCB0byBVRE1BMzMsIGNvbnRyb2xsZXIgZm91bmQg bm9uLUFUQTY2IGNhYmxlCmFjZDA6IERWRFIgPEFTVVMgRFJXLTE2MDRQLzEuMDk+IGF0IGF0 YTEtbWFzdGVyIFVETUEzMwphZDY6IDMwNTI0NU1CIDxXREMgV0QzMjAwS1MtMDBQRkIwIDIx LjAwTTIxPiBhdCBhdGEzLW1hc3RlciBTQVRBMTUwClNNUDogQVAgQ1BVICMxIExhdW5jaGVk IQpHRU9NX0xBQkVMOiBMYWJlbCBmb3IgcHJvdmlkZXIgYWQwczUgaXMgbnRmcy9CQUNLVVAu CkdFT01fTEFCRUw6IExhYmVsIGZvciBwcm92aWRlciBhZDZzMWEgaXMgdWZzL3Jvb3QuCkdF T01fTEFCRUw6IExhYmVsIGZvciBwcm92aWRlciBhZDZzMWQgaXMgdWZzL3Zhci4KR0VPTV9M QUJFTDogTGFiZWwgZm9yIHByb3ZpZGVyIGFkNnMxZSBpcyB1ZnMvdG1wLgpHRU9NX0xBQkVM OiBMYWJlbCBmb3IgcHJvdmlkZXIgYWQ2czFmIGlzIHVmcy91c3IuClRyeWluZyB0byBtb3Vu dCByb290IGZyb20gdWZzOi9kZXYvdWZzL3Jvb3QKR0VPTV9FTEk6IERldmljZSBhZDZzMWIu ZWxpIGNyZWF0ZWQuCkdFT01fRUxJOiBFbmNyeXB0aW9uOiBBRVMtQ0JDIDI1NgpHRU9NX0VM STogICAgIENyeXB0bzogc29mdHdhcmUKYWNkMDogRkFJTFVSRSAtIElOUVVJUlkgSUxMRUdB TCBSRVFVRVNUIGFzYz0weDI0IGFzY3E9MHgwMCBza3M9MHg0OCAweDAwIDB4MDEKY2QwIGF0 IGF0YTEgYnVzIDAgdGFyZ2V0IDAgbHVuIDAKY2QwOiA8QVNVUyBEUlctMTYwNFAgMS4wOT4g UmVtb3ZhYmxlIENELVJPTSBTQ1NJLTAgZGV2aWNlIApjZDA6IDMzLjAwME1CL3MgdHJhbnNm ZXJzCmNkMDogQXR0ZW1wdCB0byBxdWVyeSBkZXZpY2Ugc2l6ZSBmYWlsZWQ6IE5PVCBSRUFE WSwgTWVkaXVtIG5vdCBwcmVzZW50Cg== --------------010307000804000400020403-- From owner-freebsd-acpi@FreeBSD.ORG Tue Apr 24 10:36:50 2007 Return-Path: X-Original-To: freebsd-acpi@hub.freebsd.org Delivered-To: freebsd-acpi@hub.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 82D0E16A400; Tue, 24 Apr 2007 10:36:50 +0000 (UTC) (envelope-from linimon@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [69.147.83.40]) by mx1.freebsd.org (Postfix) with ESMTP id 5B1CD13C44B; Tue, 24 Apr 2007 10:36:50 +0000 (UTC) (envelope-from linimon@FreeBSD.org) Received: from freefall.freebsd.org (linimon@localhost [127.0.0.1]) by freefall.freebsd.org (8.13.4/8.13.4) with ESMTP id l3OAaorL006582; Tue, 24 Apr 2007 10:36:50 GMT (envelope-from linimon@freefall.freebsd.org) Received: (from linimon@localhost) by freefall.freebsd.org (8.13.4/8.13.4/Submit) id l3OAao5w006578; Tue, 24 Apr 2007 10:36:50 GMT (envelope-from linimon) Date: Tue, 24 Apr 2007 10:36:50 GMT From: Mark Linimon Message-Id: <200704241036.l3OAao5w006578@freefall.freebsd.org> To: linimon@FreeBSD.org, freebsd-bugs@FreeBSD.org, freebsd-acpi@FreeBSD.org Cc: Subject: Re: kern/105537: [acpi] problems in acpi on HP Compaq nc6320 X-BeenThere: freebsd-acpi@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: ACPI and power management development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 24 Apr 2007 10:36:50 -0000 Synopsis: [acpi] problems in acpi on HP Compaq nc6320 Responsible-Changed-From-To: freebsd-bugs->freebsd-acpi Responsible-Changed-By: linimon Responsible-Changed-When: Tue Apr 24 10:36:09 UTC 2007 Responsible-Changed-Why: Over to maintainer(s). http://www.freebsd.org/cgi/query-pr.cgi?pr=105537 From owner-freebsd-acpi@FreeBSD.ORG Thu Apr 26 15:19:47 2007 Return-Path: X-Original-To: freebsd-acpi@freebsd.org Delivered-To: freebsd-acpi@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 7D52C16A400 for ; Thu, 26 Apr 2007 15:19:47 +0000 (UTC) (envelope-from anderson@freebsd.org) Received: from mh1.centtech.com (moat3.centtech.com [64.129.166.50]) by mx1.freebsd.org (Postfix) with ESMTP id 50F3713C4AE for ; Thu, 26 Apr 2007 15:19:47 +0000 (UTC) (envelope-from anderson@freebsd.org) Received: from neutrino.centtech.com (neutrino.centtech.com [10.177.171.220]) by mh1.centtech.com (8.13.8/8.13.8) with ESMTP id l3QEqqP9070355 for ; Thu, 26 Apr 2007 09:52:52 -0500 (CDT) (envelope-from anderson@freebsd.org) Message-ID: <4630BCC4.10601@freebsd.org> Date: Thu, 26 Apr 2007 09:52:52 -0500 From: Eric Anderson User-Agent: Thunderbird 2.0.0.0 (X11/20070420) MIME-Version: 1.0 To: freebsd-acpi@freebsd.org Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-Virus-Scanned: ClamAV 0.88.4/3165/Thu Apr 26 08:03:24 2007 on mh1.centtech.com X-Virus-Status: Clean X-Spam-Status: No, score=-2.6 required=8.0 tests=AWL,BAYES_00 autolearn=ham version=3.1.6 X-Spam-Checker-Version: SpamAssassin 3.1.6 (2006-10-03) on mh1.centtech.com Subject: CPU temp AC vs Battery X-BeenThere: freebsd-acpi@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: ACPI and power management development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 26 Apr 2007 15:19:47 -0000 Hi everyone, I've just noticed something very odd. On my Dell D820 laptop, when running off AC power from boot, by idle CPU temperature sits around 58C. If I unplug the power, and then plug it back in again, it will drop down to around 49-50C within a minute or two. It will stay there. With or without powerd running. Here's some info: # uname -a FreeBSD 7.0-CURRENT FreeBSD 7.0-CURRENT #51: Tue Apr 24 10:24:43 CDT 2007 snip@snip:/usr/obj/usr/src/sys/NEUTRINO i386 # kldstat Id Refs Address Size Name 1 36 0xc0400000 77d33c kernel 2 3 0xc0b7e000 23398 linux.ko 3 1 0xc0ba2000 118dc snd_hda.ko 4 2 0xc0bb4000 3c114 sound.ko 5 1 0xc0bf1000 6d3e68 nvidia.ko 6 1 0xc12c5000 4bb8 atapicam.ko 7 6 0xc12ca000 c6d4 netgraph.ko 8 1 0xc12d7000 79c8 ng_ubt.ko 9 1 0xc12df000 5868 vkbd.ko 10 1 0xc12e5000 1d294 kqemu.ko 11 1 0xc1303000 2ffa4 ipl.ko 12 1 0xc1333000 13544 geom_journal.ko 13 1 0xc1347000 5d420 acpi.ko 14 1 0xc5b02000 6000 linprocfs.ko 15 1 0xc5b33000 e000 ext2fs.ko 16 4 0xc5d27000 2000 ng_bluetooth.ko 17 1 0xc5d29000 c000 ng_hci.ko 18 1 0xc5d35000 e000 ng_l2cap.ko 19 1 0xc5d43000 15000 ng_btsocket.ko 20 1 0xc5d61000 4000 ng_socket.ko 21 1 0xc5e4a000 7000 aio.ko both before and after power plugging: # sysctl dev.cpu dev.cpu.0.%desc: ACPI CPU dev.cpu.0.%driver: cpu dev.cpu.0.%location: handle=\_PR_.CPU0 dev.cpu.0.%pnpinfo: _HID=none _UID=0 dev.cpu.0.%parent: acpi0 dev.cpu.0.freq: 1985 dev.cpu.0.freq_levels: 1985/-1 1736/-1 1488/-1 1240/-1 992/-1 744/-1 496/-1 248/-1 dev.cpu.0.cx_supported: C1/1 C2/1 C3/57 dev.cpu.0.cx_lowest: C1 dev.cpu.0.cx_usage: 100.00% 0.00% 0.00% dev.cpu.1.%desc: ACPI CPU dev.cpu.1.%driver: cpu dev.cpu.1.%location: handle=\_PR_.CPU1 dev.cpu.1.%pnpinfo: _HID=none _UID=0 dev.cpu.1.%parent: acpi0 dev.cpu.1.cx_supported: C1/1 C2/1 C3/57 dev.cpu.1.cx_lowest: C1 dev.cpu.1.cx_usage: 100.00% 0.00% 0.00% Eric From owner-freebsd-acpi@FreeBSD.ORG Fri Apr 27 20:11:25 2007 Return-Path: X-Original-To: freebsd-acpi@freebsd.org Delivered-To: freebsd-acpi@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id E3D5116A404 for ; Fri, 27 Apr 2007 20:11:25 +0000 (UTC) (envelope-from jester@panix.com) Received: from l2mail1.panix.com (l2mail1.panix.com [166.84.1.75]) by mx1.freebsd.org (Postfix) with ESMTP id BE85F13C44B for ; Fri, 27 Apr 2007 20:11:25 +0000 (UTC) (envelope-from jester@panix.com) Received: from mail1.panix.com (mail1.panix.com [166.84.1.72]) by l2mail1.panix.com (Postfix) with ESMTP id AF5E35C46A for ; Fri, 27 Apr 2007 15:52:41 -0400 (EDT) Received: from panix2.panix.com (panix2.panix.com [166.84.1.2]) by mail1.panix.com (Postfix) with ESMTP id 2A67458893 for ; Fri, 27 Apr 2007 15:52:41 -0400 (EDT) Received: (from jester@localhost) by panix2.panix.com (8.11.6p3/8.8.8/PanixN1.1) id l3RJqfp12933 for freebsd-acpi@freebsd.org; Fri, 27 Apr 2007 15:52:41 -0400 (EDT) Date: Fri, 27 Apr 2007 15:52:41 -0400 From: Jesse Sheidlower To: freebsd-acpi@freebsd.org Message-ID: <20070427195241.GA27697@panix.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.5.10i Subject: Suspend on SMP: Progress? X-BeenThere: freebsd-acpi@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: ACPI and power management development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 27 Apr 2007 20:11:26 -0000 This is a partial repost of a question I sent to freebsd-mobile; sorry to show upon on this technical list with a newbie question. Basically, has there been any progress on suspend/resume on SMP laptops? I have a Lenovo T60 (Intel Core 2 Duo) running FreeBSD 6.2-RELEASE. Pretty much everything is fine except suspend/resume, which doesn't work at all. Sending an "acpiconf -s 3" causes a hard lockup for which pulling the battery seems to be the only solution. I see the discussion from back in October, but I can't tell if anything has been done since. I'd be more than happy to track 7.0 if it would help; if there are any kludges that would enable me to suspend the machine, I'll do them. Right now I'm stuck with what is in effect a portable desktop--the need to power down and reboot every time I move it makes it pretty useless for actual travel. My fault for not looking into this enough before buying it; for some reason I had the idea that it would work, as my X23 and T43 suspend with no problem and it didn't occur to me that the SMP in the new machine would mess things up. Thanks for any advice. Jesse Sheidlower From owner-freebsd-acpi@FreeBSD.ORG Fri Apr 27 20:57:42 2007 Return-Path: X-Original-To: freebsd-acpi@freebsd.org Delivered-To: freebsd-acpi@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id D670416A408 for ; Fri, 27 Apr 2007 20:57:42 +0000 (UTC) (envelope-from nate@root.org) Received: from root.org (root.org [67.118.192.226]) by mx1.freebsd.org (Postfix) with ESMTP id A5B7B13C46C for ; Fri, 27 Apr 2007 20:57:42 +0000 (UTC) (envelope-from nate@root.org) Received: (qmail 42963 invoked from network); 27 Apr 2007 20:57:43 -0000 Received: from ppp-71-139-7-60.dsl.snfc21.pacbell.net (HELO ?10.0.0.235?) (nate-mail@71.139.7.60) by root.org with ESMTPA; 27 Apr 2007 20:57:43 -0000 Message-ID: <463263C0.3050006@root.org> Date: Fri, 27 Apr 2007 13:57:36 -0700 From: Nate Lawson User-Agent: Thunderbird 2.0.0.0 (X11/20070424) MIME-Version: 1.0 To: Jesse Sheidlower References: <20070427195241.GA27697@panix.com> In-Reply-To: <20070427195241.GA27697@panix.com> X-Enigmail-Version: 0.95.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Cc: freebsd-acpi@freebsd.org Subject: Re: Suspend on SMP: Progress? X-BeenThere: freebsd-acpi@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: ACPI and power management development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 27 Apr 2007 20:57:42 -0000 Jesse Sheidlower wrote: > This is a partial repost of a question I sent to > freebsd-mobile; sorry to show upon on this technical > list with a newbie question. > > Basically, has there been any progress on suspend/resume on > SMP laptops? I have a Lenovo T60 (Intel Core 2 Duo) running > FreeBSD 6.2-RELEASE. Pretty much everything is fine except > suspend/resume, which doesn't work at all. Sending an > "acpiconf -s 3" causes a hard lockup for which pulling the > battery seems to be the only solution. > > I see the discussion from back in October, but I can't tell if > anything has been done since. I'd be more than happy to track > 7.0 if it would help; if there are any kludges that would > enable me to suspend the machine, I'll do them. Right now I'm > stuck with what is in effect a portable desktop--the need to > power down and reboot every time I move it makes it pretty > useless for actual travel. My fault for not looking into this > enough before buying it; for some reason I had the idea that > it would work, as my X23 and T43 suspend with no problem and > it didn't occur to me that the SMP in the new machine would > mess things up. > > Thanks for any advice. No work has been done for this. Basically the APs need to be stopped during suspend and restarted during resume. -- Nate From owner-freebsd-acpi@FreeBSD.ORG Sat Apr 28 09:08:31 2007 Return-Path: X-Original-To: freebsd-acpi@hub.freebsd.org Delivered-To: freebsd-acpi@hub.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id A6CB116A400; Sat, 28 Apr 2007 09:08:31 +0000 (UTC) (envelope-from linimon@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [69.147.83.40]) by mx1.freebsd.org (Postfix) with ESMTP id 8394713C43E; Sat, 28 Apr 2007 09:08:31 +0000 (UTC) (envelope-from linimon@FreeBSD.org) Received: from freefall.freebsd.org (linimon@localhost [127.0.0.1]) by freefall.freebsd.org (8.13.4/8.13.4) with ESMTP id l3S98V4Y014502; Sat, 28 Apr 2007 09:08:31 GMT (envelope-from linimon@freefall.freebsd.org) Received: (from linimon@localhost) by freefall.freebsd.org (8.13.4/8.13.4/Submit) id l3S98VLp014498; Sat, 28 Apr 2007 09:08:31 GMT (envelope-from linimon) Date: Sat, 28 Apr 2007 09:08:31 GMT From: Mark Linimon Message-Id: <200704280908.l3S98VLp014498@freefall.freebsd.org> To: linimon@FreeBSD.org, freebsd-bugs@FreeBSD.org, freebsd-acpi@FreeBSD.org Cc: Subject: Re: kern/89411: [acpi] acpiconf bug X-BeenThere: freebsd-acpi@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: ACPI and power management development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 28 Apr 2007 09:08:31 -0000 Synopsis: [acpi] acpiconf bug Responsible-Changed-From-To: freebsd-bugs->freebsd-acpi Responsible-Changed-By: linimon Responsible-Changed-When: Sat Apr 28 09:08:06 UTC 2007 Responsible-Changed-Why: Over to maintainer(s). To submitter: does this problem still recur? http://www.freebsd.org/cgi/query-pr.cgi?pr=89411 From owner-freebsd-acpi@FreeBSD.ORG Sat Apr 28 09:09:41 2007 Return-Path: X-Original-To: freebsd-acpi@hub.freebsd.org Delivered-To: freebsd-acpi@hub.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 1878116A401; Sat, 28 Apr 2007 09:09:41 +0000 (UTC) (envelope-from linimon@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [69.147.83.40]) by mx1.freebsd.org (Postfix) with ESMTP id EAD1E13C469; Sat, 28 Apr 2007 09:09:40 +0000 (UTC) (envelope-from linimon@FreeBSD.org) Received: from freefall.freebsd.org (linimon@localhost [127.0.0.1]) by freefall.freebsd.org (8.13.4/8.13.4) with ESMTP id l3S99eT0014594; Sat, 28 Apr 2007 09:09:40 GMT (envelope-from linimon@freefall.freebsd.org) Received: (from linimon@localhost) by freefall.freebsd.org (8.13.4/8.13.4/Submit) id l3S99egK014590; Sat, 28 Apr 2007 09:09:40 GMT (envelope-from linimon) Date: Sat, 28 Apr 2007 09:09:40 GMT From: Mark Linimon Message-Id: <200704280909.l3S99egK014590@freefall.freebsd.org> To: linimon@FreeBSD.org, freebsd-bugs@FreeBSD.org, freebsd-acpi@FreeBSD.org Cc: Subject: Re: kern/103461: acpi warnings at boot (regression) X-BeenThere: freebsd-acpi@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: ACPI and power management development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 28 Apr 2007 09:09:41 -0000 Synopsis: acpi warnings at boot (regression) Responsible-Changed-From-To: freebsd-bugs->freebsd-acpi Responsible-Changed-By: linimon Responsible-Changed-When: Sat Apr 28 09:09:34 UTC 2007 Responsible-Changed-Why: Over to maintainer(s). http://www.freebsd.org/cgi/query-pr.cgi?pr=103461 From owner-freebsd-acpi@FreeBSD.ORG Sat Apr 28 09:10:30 2007 Return-Path: X-Original-To: freebsd-acpi@hub.freebsd.org Delivered-To: freebsd-acpi@hub.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 8E9A516A402; Sat, 28 Apr 2007 09:10:30 +0000 (UTC) (envelope-from linimon@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [69.147.83.40]) by mx1.freebsd.org (Postfix) with ESMTP id 6C9A713C46C; Sat, 28 Apr 2007 09:10:30 +0000 (UTC) (envelope-from linimon@FreeBSD.org) Received: from freefall.freebsd.org (linimon@localhost [127.0.0.1]) by freefall.freebsd.org (8.13.4/8.13.4) with ESMTP id l3S9AUNA014829; Sat, 28 Apr 2007 09:10:30 GMT (envelope-from linimon@freefall.freebsd.org) Received: (from linimon@localhost) by freefall.freebsd.org (8.13.4/8.13.4/Submit) id l3S9AUgd014825; Sat, 28 Apr 2007 09:10:30 GMT (envelope-from linimon) Date: Sat, 28 Apr 2007 09:10:30 GMT From: Mark Linimon Message-Id: <200704280910.l3S9AUgd014825@freefall.freebsd.org> To: linimon@FreeBSD.org, freebsd-bugs@FreeBSD.org, freebsd-acpi@FreeBSD.org Cc: Subject: Re: kern/102252: acpi thermal does not work on Abit AW8D (intel 975) X-BeenThere: freebsd-acpi@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: ACPI and power management development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 28 Apr 2007 09:10:30 -0000 Synopsis: acpi thermal does not work on Abit AW8D (intel 975) Responsible-Changed-From-To: freebsd-bugs->freebsd-acpi Responsible-Changed-By: linimon Responsible-Changed-When: Sat Apr 28 09:10:20 UTC 2007 Responsible-Changed-Why: Over to maintainer(s). http://www.freebsd.org/cgi/query-pr.cgi?pr=102252 From owner-freebsd-acpi@FreeBSD.ORG Sat Apr 28 09:11:19 2007 Return-Path: X-Original-To: freebsd-acpi@hub.freebsd.org Delivered-To: freebsd-acpi@hub.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id D6D2416A403; Sat, 28 Apr 2007 09:11:19 +0000 (UTC) (envelope-from linimon@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [69.147.83.40]) by mx1.freebsd.org (Postfix) with ESMTP id B2E4D13C4B8; Sat, 28 Apr 2007 09:11:19 +0000 (UTC) (envelope-from linimon@FreeBSD.org) Received: from freefall.freebsd.org (linimon@localhost [127.0.0.1]) by freefall.freebsd.org (8.13.4/8.13.4) with ESMTP id l3S9BJAm015008; Sat, 28 Apr 2007 09:11:19 GMT (envelope-from linimon@freefall.freebsd.org) Received: (from linimon@localhost) by freefall.freebsd.org (8.13.4/8.13.4/Submit) id l3S9BJbt015004; Sat, 28 Apr 2007 09:11:19 GMT (envelope-from linimon) Date: Sat, 28 Apr 2007 09:11:19 GMT From: Mark Linimon Message-Id: <200704280911.l3S9BJbt015004@freefall.freebsd.org> To: arutlupes@seznam.cz, linimon@FreeBSD.org, freebsd-i386@FreeBSD.org, freebsd-acpi@FreeBSD.org Cc: Subject: Re: i386/91748: acpi problem on Acer TravelMare 4652LMi (nvidia panic, cd/dvd not found, touchpad not work...etc) X-BeenThere: freebsd-acpi@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: ACPI and power management development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 28 Apr 2007 09:11:19 -0000 Synopsis: acpi problem on Acer TravelMare 4652LMi (nvidia panic, cd/dvd not found, touchpad not work...etc) State-Changed-From-To: open->feedback State-Changed-By: linimon State-Changed-When: Sat Apr 28 09:10:44 UTC 2007 State-Changed-Why: To submitter: is this still a problem with 6.2? Responsible-Changed-From-To: freebsd-i386->freebsd-acpi Responsible-Changed-By: linimon Responsible-Changed-When: Sat Apr 28 09:10:44 UTC 2007 Responsible-Changed-Why: http://www.freebsd.org/cgi/query-pr.cgi?pr=91748 From owner-freebsd-acpi@FreeBSD.ORG Sat Apr 28 09:12:34 2007 Return-Path: X-Original-To: freebsd-acpi@hub.freebsd.org Delivered-To: freebsd-acpi@hub.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 78F8916A409; Sat, 28 Apr 2007 09:12:34 +0000 (UTC) (envelope-from linimon@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [69.147.83.40]) by mx1.freebsd.org (Postfix) with ESMTP id 5609D13C4BA; Sat, 28 Apr 2007 09:12:34 +0000 (UTC) (envelope-from linimon@FreeBSD.org) Received: from freefall.freebsd.org (linimon@localhost [127.0.0.1]) by freefall.freebsd.org (8.13.4/8.13.4) with ESMTP id l3S9CY6e015104; Sat, 28 Apr 2007 09:12:34 GMT (envelope-from linimon@freefall.freebsd.org) Received: (from linimon@localhost) by freefall.freebsd.org (8.13.4/8.13.4/Submit) id l3S9CXb4015100; Sat, 28 Apr 2007 09:12:33 GMT (envelope-from linimon) Date: Sat, 28 Apr 2007 09:12:33 GMT From: Mark Linimon Message-Id: <200704280912.l3S9CXb4015100@freefall.freebsd.org> To: juho.vuori@kepa.fi, linimon@FreeBSD.org, freebsd-acpi@FreeBSD.org Cc: Subject: Re: i386/79080: acpi thermal changes freezes HP nx6110 X-BeenThere: freebsd-acpi@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: ACPI and power management development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 28 Apr 2007 09:12:34 -0000 Synopsis: acpi thermal changes freezes HP nx6110 State-Changed-From-To: open->feedback State-Changed-By: linimon State-Changed-When: Sat Apr 28 09:11:30 UTC 2007 State-Changed-Why: Is this still a problem with 6.2? http://www.freebsd.org/cgi/query-pr.cgi?pr=79080 From owner-freebsd-acpi@FreeBSD.ORG Sat Apr 28 09:13:34 2007 Return-Path: X-Original-To: freebsd-acpi@hub.freebsd.org Delivered-To: freebsd-acpi@hub.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 7C8BF16A404; Sat, 28 Apr 2007 09:13:34 +0000 (UTC) (envelope-from linimon@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [69.147.83.40]) by mx1.freebsd.org (Postfix) with ESMTP id 5914113C483; Sat, 28 Apr 2007 09:13:34 +0000 (UTC) (envelope-from linimon@FreeBSD.org) Received: from freefall.freebsd.org (linimon@localhost [127.0.0.1]) by freefall.freebsd.org (8.13.4/8.13.4) with ESMTP id l3S9DYPD015171; Sat, 28 Apr 2007 09:13:34 GMT (envelope-from linimon@freefall.freebsd.org) Received: (from linimon@localhost) by freefall.freebsd.org (8.13.4/8.13.4/Submit) id l3S9DX05015167; Sat, 28 Apr 2007 09:13:33 GMT (envelope-from linimon) Date: Sat, 28 Apr 2007 09:13:33 GMT From: Mark Linimon Message-Id: <200704280913.l3S9DX05015167@freefall.freebsd.org> To: joerg.ruppe-tanner@ch-open.ch, linimon@FreeBSD.org, freebsd-bugs@FreeBSD.org, freebsd-acpi@FreeBSD.org Cc: Subject: Re: kern/74868: [acpi] ACPI enabled in 5.3 Release make Kernel reboot in 5.3.b7 not!! X-BeenThere: freebsd-acpi@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: ACPI and power management development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 28 Apr 2007 09:13:34 -0000 Synopsis: [acpi] ACPI enabled in 5.3 Release make Kernel reboot in 5.3.b7 not!! State-Changed-From-To: open->feedback State-Changed-By: linimon State-Changed-When: Sat Apr 28 09:12:54 UTC 2007 State-Changed-Why: Does this problem still recur with 6.2? Responsible-Changed-From-To: freebsd-bugs->freebsd-acpi Responsible-Changed-By: linimon Responsible-Changed-When: Sat Apr 28 09:12:54 UTC 2007 Responsible-Changed-Why: http://www.freebsd.org/cgi/query-pr.cgi?pr=74868 From owner-freebsd-acpi@FreeBSD.ORG Sat Apr 28 09:14:27 2007 Return-Path: X-Original-To: freebsd-acpi@hub.freebsd.org Delivered-To: freebsd-acpi@hub.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 2242516A407; Sat, 28 Apr 2007 09:14:27 +0000 (UTC) (envelope-from linimon@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [69.147.83.40]) by mx1.freebsd.org (Postfix) with ESMTP id F354A13C455; Sat, 28 Apr 2007 09:14:26 +0000 (UTC) (envelope-from linimon@FreeBSD.org) Received: from freefall.freebsd.org (linimon@localhost [127.0.0.1]) by freefall.freebsd.org (8.13.4/8.13.4) with ESMTP id l3S9EQUK015229; Sat, 28 Apr 2007 09:14:26 GMT (envelope-from linimon@freefall.freebsd.org) Received: (from linimon@localhost) by freefall.freebsd.org (8.13.4/8.13.4/Submit) id l3S9EQI6015225; Sat, 28 Apr 2007 09:14:26 GMT (envelope-from linimon) Date: Sat, 28 Apr 2007 09:14:26 GMT From: Mark Linimon Message-Id: <200704280914.l3S9EQI6015225@freefall.freebsd.org> To: galanaki@uiuc.edu, linimon@FreeBSD.org, freebsd-bugs@FreeBSD.org, freebsd-acpi@FreeBSD.org Cc: Subject: Re: kern/73221: acpi suspend ATI mobility 9000 X-BeenThere: freebsd-acpi@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: ACPI and power management development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 28 Apr 2007 09:14:27 -0000 Synopsis: acpi suspend ATI mobility 9000 State-Changed-From-To: open->feedback State-Changed-By: linimon State-Changed-When: Sat Apr 28 09:13:46 UTC 2007 State-Changed-Why: Is this still a problem with 6.2? Responsible-Changed-From-To: freebsd-bugs->freebsd-acpi Responsible-Changed-By: linimon Responsible-Changed-When: Sat Apr 28 09:13:46 UTC 2007 Responsible-Changed-Why: http://www.freebsd.org/cgi/query-pr.cgi?pr=73221 From owner-freebsd-acpi@FreeBSD.ORG Sat Apr 28 09:15:43 2007 Return-Path: X-Original-To: freebsd-acpi@hub.freebsd.org Delivered-To: freebsd-acpi@hub.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id DFEC316A401; Sat, 28 Apr 2007 09:15:43 +0000 (UTC) (envelope-from linimon@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [69.147.83.40]) by mx1.freebsd.org (Postfix) with ESMTP id BACA613C48C; Sat, 28 Apr 2007 09:15:43 +0000 (UTC) (envelope-from linimon@FreeBSD.org) Received: from freefall.freebsd.org (linimon@localhost [127.0.0.1]) by freefall.freebsd.org (8.13.4/8.13.4) with ESMTP id l3S9FhY5015324; Sat, 28 Apr 2007 09:15:43 GMT (envelope-from linimon@freefall.freebsd.org) Received: (from linimon@localhost) by freefall.freebsd.org (8.13.4/8.13.4/Submit) id l3S9FhgR015320; Sat, 28 Apr 2007 09:15:43 GMT (envelope-from linimon) Date: Sat, 28 Apr 2007 09:15:43 GMT From: Mark Linimon Message-Id: <200704280915.l3S9FhgR015320@freefall.freebsd.org> To: linimon@FreeBSD.org, freebsd-i386@FreeBSD.org, freebsd-acpi@FreeBSD.org Cc: Subject: Re: i386/72179: [acpi] [patch] Inconsistent apm(8) output regarding the remaining battery time, when running acpi enabled laptop on AC power X-BeenThere: freebsd-acpi@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: ACPI and power management development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 28 Apr 2007 09:15:44 -0000 Synopsis: [acpi] [patch] Inconsistent apm(8) output regarding the remaining battery time, when running acpi enabled laptop on AC power Responsible-Changed-From-To: freebsd-i386->freebsd-acpi Responsible-Changed-By: linimon Responsible-Changed-When: Sat Apr 28 09:15:24 UTC 2007 Responsible-Changed-Why: Over to maintainer(s). http://www.freebsd.org/cgi/query-pr.cgi?pr=72179 From owner-freebsd-acpi@FreeBSD.ORG Sat Apr 28 16:05:02 2007 Return-Path: X-Original-To: freebsd-acpi@FreeBSD.org Delivered-To: freebsd-acpi@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 5C7EB16A400; Sat, 28 Apr 2007 16:05:02 +0000 (UTC) (envelope-from juho.vuori@kepa.fi) Received: from gw03.mail.saunalahti.fi (gw03.mail.saunalahti.fi [195.197.172.111]) by mx1.freebsd.org (Postfix) with ESMTP id 1495B13C45A; Sat, 28 Apr 2007 16:05:02 +0000 (UTC) (envelope-from juho.vuori@kepa.fi) Received: from [88.114.248.233] (a88-114-248-233.elisa-laajakaista.fi [88.114.248.233]) by gw03.mail.saunalahti.fi (Postfix) with ESMTP id B74C72165EF; Sat, 28 Apr 2007 18:49:14 +0300 (EEST) Message-ID: <46336CFA.5090401@kepa.fi> Date: Sat, 28 Apr 2007 18:49:14 +0300 From: Juho Vuori User-Agent: Thunderbird 1.5.0.10 (X11/20070403) MIME-Version: 1.0 To: Mark Linimon References: <200704280912.l3S9CXb4015100@freefall.freebsd.org> In-Reply-To: <200704280912.l3S9CXb4015100@freefall.freebsd.org> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Cc: freebsd-acpi@FreeBSD.org Subject: Re: i386/79080: acpi thermal changes freezes HP nx6110 X-BeenThere: freebsd-acpi@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: ACPI and power management development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 28 Apr 2007 16:05:02 -0000 i don't know. The affected laptop is not running freebsd at the moment. I'm afraid I can't do anything about this any time soon. Juho Vuori Mark Linimon wrote: > Synopsis: acpi thermal changes freezes HP nx6110 > > State-Changed-From-To: open->feedback > State-Changed-By: linimon > State-Changed-When: Sat Apr 28 09:11:30 UTC 2007 > State-Changed-Why: > Is this still a problem with 6.2? > > http://www.freebsd.org/cgi/query-pr.cgi?pr=79080 > From owner-freebsd-acpi@FreeBSD.ORG Sat Apr 28 18:37:32 2007 Return-Path: X-Original-To: freebsd-acpi@FreeBSD.org Delivered-To: freebsd-acpi@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 83B3816A403 for ; Sat, 28 Apr 2007 18:37:32 +0000 (UTC) (envelope-from nate@root.org) Received: from root.org (root.org [67.118.192.226]) by mx1.freebsd.org (Postfix) with ESMTP id 4D3D913C469 for ; Sat, 28 Apr 2007 18:37:32 +0000 (UTC) (envelope-from nate@root.org) Received: (qmail 48724 invoked from network); 28 Apr 2007 18:37:32 -0000 Received: from ppp-71-139-7-60.dsl.snfc21.pacbell.net (HELO ?10.0.0.235?) (nate-mail@71.139.7.60) by root.org with ESMTPA; 28 Apr 2007 18:37:32 -0000 Message-ID: <46339465.5030207@root.org> Date: Sat, 28 Apr 2007 11:37:25 -0700 From: Nate Lawson User-Agent: Thunderbird 2.0.0.0 (X11/20070424) MIME-Version: 1.0 To: Juho Vuori References: <200704280912.l3S9CXb4015100@freefall.freebsd.org> <46336CFA.5090401@kepa.fi> In-Reply-To: <46336CFA.5090401@kepa.fi> X-Enigmail-Version: 0.95.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Cc: freebsd-acpi@FreeBSD.org, freebsd-gnats-submit@FreeBSD.org, Mark Linimon Subject: Re: i386/79080: acpi thermal changes freezes HP nx6110 X-BeenThere: freebsd-acpi@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: ACPI and power management development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 28 Apr 2007 18:37:32 -0000 Juho Vuori wrote: > i don't know. The affected laptop is not running freebsd at the moment. > I'm afraid I can't do anything about this any time soon. > > Juho Vuori > > Mark Linimon wrote: >> Synopsis: acpi thermal changes freezes HP nx6110 >> >> State-Changed-From-To: open->feedback >> State-Changed-By: linimon >> State-Changed-When: Sat Apr 28 09:11:30 UTC 2007 >> State-Changed-Why: Is this still a problem with 6.2? >> >> http://www.freebsd.org/cgi/query-pr.cgi?pr=79080 > If you could post a link to the ASL, that would be really helpful. You can boot a live CD like http://www.freesbie.org/ even if not running FreeBSD. acpidump -dt | gzip -c9 > hp-nx6110.asl.gz -- Nate From owner-freebsd-acpi@FreeBSD.ORG Sat Apr 28 18:40:12 2007 Return-Path: X-Original-To: freebsd-acpi@hub.freebsd.org Delivered-To: freebsd-acpi@hub.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 4E02316A400 for ; Sat, 28 Apr 2007 18:40:12 +0000 (UTC) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [69.147.83.40]) by mx1.freebsd.org (Postfix) with ESMTP id 39E8E13C43E for ; Sat, 28 Apr 2007 18:40:12 +0000 (UTC) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (gnats@localhost [127.0.0.1]) by freefall.freebsd.org (8.13.4/8.13.4) with ESMTP id l3SIeB3V049342 for ; Sat, 28 Apr 2007 18:40:11 GMT (envelope-from gnats@freefall.freebsd.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.13.4/8.13.4/Submit) id l3SIeB7P049341; Sat, 28 Apr 2007 18:40:11 GMT (envelope-from gnats) Date: Sat, 28 Apr 2007 18:40:11 GMT Message-Id: <200704281840.l3SIeB7P049341@freefall.freebsd.org> To: freebsd-acpi@FreeBSD.org From: Nate Lawson Cc: Subject: Re: i386/79080: acpi thermal changes freezes HP nx6110 X-BeenThere: freebsd-acpi@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: Nate Lawson List-Id: ACPI and power management development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 28 Apr 2007 18:40:12 -0000 The following reply was made to PR i386/79080; it has been noted by GNATS. From: Nate Lawson To: Juho Vuori Cc: Mark Linimon , freebsd-acpi@FreeBSD.org, freebsd-gnats-submit@FreeBSD.org Subject: Re: i386/79080: acpi thermal changes freezes HP nx6110 Date: Sat, 28 Apr 2007 11:37:25 -0700 Juho Vuori wrote: > i don't know. The affected laptop is not running freebsd at the moment. > I'm afraid I can't do anything about this any time soon. > > Juho Vuori > > Mark Linimon wrote: >> Synopsis: acpi thermal changes freezes HP nx6110 >> >> State-Changed-From-To: open->feedback >> State-Changed-By: linimon >> State-Changed-When: Sat Apr 28 09:11:30 UTC 2007 >> State-Changed-Why: Is this still a problem with 6.2? >> >> http://www.freebsd.org/cgi/query-pr.cgi?pr=79080 > If you could post a link to the ASL, that would be really helpful. You can boot a live CD like http://www.freesbie.org/ even if not running FreeBSD. acpidump -dt | gzip -c9 > hp-nx6110.asl.gz -- Nate