From owner-freebsd-acpi@FreeBSD.ORG Sun Jul 10 19:27:09 2005 Return-Path: X-Original-To: freebsd-acpi@freebsd.org Delivered-To: freebsd-acpi@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 5B24816A41C for ; Sun, 10 Jul 2005 19:27:09 +0000 (GMT) (envelope-from nate@root.org) Received: from www.cryptography.com (li-22.members.linode.com [64.5.53.22]) by mx1.FreeBSD.org (Postfix) with ESMTP id 01DD843D46 for ; Sun, 10 Jul 2005 19:27:08 +0000 (GMT) (envelope-from nate@root.org) Received: from [10.0.5.50] (adsl-64-171-184-89.dsl.snfc21.pacbell.net [64.171.184.89]) by www.cryptography.com (8.12.8/8.12.8) with ESMTP id j6AJR4o5009813 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NOT); Sun, 10 Jul 2005 12:27:07 -0700 Message-ID: <42D174A1.2080707@root.org> Date: Sun, 10 Jul 2005 12:18:57 -0700 From: Nate Lawson User-Agent: Mozilla Thunderbird 1.0.2 (Windows/20050317) X-Accept-Language: en-us, en MIME-Version: 1.0 To: KubaTyszko References: <20050709121312.GB30018@lbl.pl> In-Reply-To: <20050709121312.GB30018@lbl.pl> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Cc: freebsd-acpi@freebsd.org Subject: Re: is anyone working on software suspend-to-disk and/or -current 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, 10 Jul 2005 19:27:09 -0000 KubaTyszko wrote: > radeon drivers ? > Reply-To: kuba@lbl.pl > > hi. > i am unappy owner of thinkpad t42 with rare issue with short > suspend-to-ram time (drains battery in 10 hours - probably because of > wrong radeon support. > is anyone working on suspend-to-disk with software support ? > (that would fix my problem a bit...) > or fixing radeon support that suspent-to-ram would normally shut down > the display and make my notebook sleep longer... anholt@ does maintenance of the dri drivers. As far as I know, no one is working on suspend to disk at this time. -- Nate From owner-freebsd-acpi@FreeBSD.ORG Mon Jul 11 11:02:02 2005 Return-Path: X-Original-To: freebsd-acpi@freebsd.org Delivered-To: freebsd-acpi@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id E91DB16A41F for ; Mon, 11 Jul 2005 11:02:02 +0000 (GMT) (envelope-from owner-bugmaster@freebsd.org) Received: from freefall.freebsd.org (freefall.freebsd.org [216.136.204.21]) by mx1.FreeBSD.org (Postfix) with ESMTP id B725A43D67 for ; Mon, 11 Jul 2005 11:02:01 +0000 (GMT) (envelope-from owner-bugmaster@freebsd.org) Received: from freefall.freebsd.org (peter@localhost [127.0.0.1]) by freefall.freebsd.org (8.13.3/8.13.3) with ESMTP id j6BB21pD011346 for ; Mon, 11 Jul 2005 11:02:01 GMT (envelope-from owner-bugmaster@freebsd.org) Received: (from peter@localhost) by freefall.freebsd.org (8.13.3/8.13.1/Submit) id j6BB202w011335 for freebsd-acpi@freebsd.org; Mon, 11 Jul 2005 11:02:00 GMT (envelope-from owner-bugmaster@freebsd.org) Date: Mon, 11 Jul 2005 11:02:00 GMT Message-Id: <200507111102.j6BB202w011335@freefall.freebsd.org> X-Authentication-Warning: freefall.freebsd.org: peter 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, 11 Jul 2005 11:02:03 -0000 Current FreeBSD problem reports Critical problems Serious problems S Submitted Tracker Resp. Description ------------------------------------------------------------------------------- o [2003/07/22] i386/54756 acpi ACPI suspend/resume problem on CF-W2 lapt o [2003/08/17] i386/55661 acpi ACPI suspend/resume problem on ARMADA M70 o [2003/08/20] kern/55822 acpi No ACPI power off with SMP kernel o [2003/08/27] kern/56024 acpi ACPI suspend drains battery while in S3 o [2003/09/03] i386/56372 acpi acpi don't work on TYAN tiger100 M/B f [2003/09/10] kern/56659 acpi ACPI trouble on IBM ThinkPad X31 f [2003/12/17] i386/60317 acpi FreeBSD 5.2rc1 doesn't boot with ACPI ena f [2004/03/02] kern/63666 acpi [acpi] Network card 3c575B do not work af o [2004/03/09] i386/64002 acpi acpi problem o [2004/05/27] i386/67273 acpi [hang] system hangs with acpi and Xfree o [2004/10/12] i386/72566 acpi ACPI, FreeBSD disables fan on Compaq Arma o [2005/03/21] i386/79080 acpi acpi thermal changes freezes HP nx6110 o [2005/03/21] i386/79081 acpi ACPI suspend/resume not working on HP nx6 13 problems total. Non-critical problems S Submitted Tracker Resp. Description ------------------------------------------------------------------------------- f [2004/01/22] i386/61703 acpi ACPI + Sound + Boot = Reboot o [2004/03/17] kern/64365 acpi ACPI problems f [2004/05/25] i386/67189 acpi ACPI S3 reboot computer on Dell Latitude o [2004/05/28] kern/67309 acpi zzz reboot computer (ACPI S3) f [2004/06/23] i386/68219 acpi ACPI + snd_maestro3 problem o [2004/07/29] i386/69750 acpi Boot without ACPI failed on ASUS L5 o [2004/11/11] i386/73822 acpi acpi / thermal support o [2004/11/11] kern/73823 acpi acpi / power-on by timer support o [2004/11/17] kern/74030 acpi Unplugging AC causes battery % to stay lo o [2004/11/21] kern/74215 acpi [request] add ACPI headers to /usr/includ o [2005/05/09] kern/80815 acpi ACPI(pci_link) problem in 5.4-STABLE: TIM 11 problems total. From owner-freebsd-acpi@FreeBSD.ORG Mon Jul 11 21:31:13 2005 Return-Path: X-Original-To: freebsd-acpi@freebsd.org Delivered-To: freebsd-acpi@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 4D41C16A41C for ; Mon, 11 Jul 2005 21:31:13 +0000 (GMT) (envelope-from gofda-freebsd-acpi@m.gmane.org) Received: from ciao.gmane.org (main.gmane.org [80.91.229.2]) by mx1.FreeBSD.org (Postfix) with ESMTP id D474243D45 for ; Mon, 11 Jul 2005 21:31:12 +0000 (GMT) (envelope-from gofda-freebsd-acpi@m.gmane.org) Received: from root by ciao.gmane.org with local (Exim 4.43) id 1Ds5r4-0007Fj-II for freebsd-acpi@freebsd.org; Mon, 11 Jul 2005 23:30:22 +0200 Received: from atl-tgn-yad-vty1.as.wcom.net ([216.192.196.1]) by main.gmane.org with esmtp (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Mon, 11 Jul 2005 23:30:22 +0200 Received: from jvk-list by atl-tgn-yad-vty1.as.wcom.net with local (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Mon, 11 Jul 2005 23:30:22 +0200 X-Injected-Via-Gmane: http://gmane.org/ To: freebsd-acpi@freebsd.org From: Joe Kraft Date: Mon, 11 Jul 2005 17:19:17 -0400 Lines: 13 Message-ID: Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-Complaints-To: usenet@sea.gmane.org X-Gmane-NNTP-Posting-Host: atl-tgn-yad-vty1.as.wcom.net User-Agent: Mozilla Thunderbird 0.9 (Windows/20041103) X-Accept-Language: en-us, en Sender: news Subject: S3 and/or S4 modes for Sony Vaio PCG-v505? 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, 11 Jul 2005 21:31:13 -0000 Has anyone looked at the suspend modes for this Sony Vaio? Of course it's the one I have... :-) It doesn't seem to return from the S3 or S4 state. In a little debugging of the S3 state, I'm getting the ACPI return from suspend message in my message log. The display never lights back up and the computer doesn't respond to anything except the power switch. I'm building a DEBUG version of the acpi module, to try and figure out what is or isn't happening. Can anyone give me an idea of where and how to start looking? Joe. From owner-freebsd-acpi@FreeBSD.ORG Tue Jul 12 03:08:25 2005 Return-Path: X-Original-To: freebsd-acpi@FreeBSD.org Delivered-To: freebsd-acpi@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id E874E16A41C for ; Tue, 12 Jul 2005 03:08:25 +0000 (GMT) (envelope-from kayve@sfsu.edu) Received: from mailgw1.sfsu.edu (mailgw1.sfsu.edu [130.212.10.31]) by mx1.FreeBSD.org (Postfix) with ESMTP id 8921E43D49 for ; Tue, 12 Jul 2005 03:08:25 +0000 (GMT) (envelope-from kayve@sfsu.edu) Received: from libra.sfsu.edu (libra.sfsu.edu [130.212.10.238]) by mailgw1.sfsu.edu (8.12.11/8.12.11) with ESMTP id j6C38LRT010081 for ; Mon, 11 Jul 2005 20:08:22 -0700 Received: from localhost (kayve@localhost) by libra.sfsu.edu (8.12.10/8.12.10) with ESMTP id j6C38LYT014446 for ; Mon, 11 Jul 2005 20:08:21 -0700 (PDT) X-Authentication-Warning: libra.sfsu.edu: kayve owned process doing -bs Date: Mon, 11 Jul 2005 20:08:21 -0700 (PDT) From: KAYVEN RIESE To: freebsd-acpi@FreeBSD.org Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII X-Brightmail-Tracker: AAAAAQAAA+k= X-Language-Identified: TRUE X-SFSU-VirusScanner: Found to be clean Cc: Subject: can't see nuthin' 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, 12 Jul 2005 03:08:26 -0000 i can't see any of my devices with freeBSD 6.0 umm.. tell me what to tell you because i have no clue. From owner-freebsd-acpi@FreeBSD.ORG Tue Jul 12 03:09:58 2005 Return-Path: X-Original-To: freebsd-acpi@FreeBSD.org Delivered-To: freebsd-acpi@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 7042516A41C for ; Tue, 12 Jul 2005 03:09:58 +0000 (GMT) (envelope-from kayve@sfsu.edu) Received: from mailgw1.sfsu.edu (mailgw1.sfsu.edu [130.212.10.31]) by mx1.FreeBSD.org (Postfix) with ESMTP id DB40C43D48 for ; Tue, 12 Jul 2005 03:09:57 +0000 (GMT) (envelope-from kayve@sfsu.edu) Received: from libra.sfsu.edu (libra.sfsu.edu [130.212.10.238]) by mailgw1.sfsu.edu (8.12.11/8.12.11) with ESMTP id j6C39t3g010455 for ; Mon, 11 Jul 2005 20:09:56 -0700 Received: from localhost (kayve@localhost) by libra.sfsu.edu (8.12.10/8.12.10) with ESMTP id j6C39t2w014482 for ; Mon, 11 Jul 2005 20:09:55 -0700 (PDT) X-Authentication-Warning: libra.sfsu.edu: kayve owned process doing -bs Date: Mon, 11 Jul 2005 20:09:55 -0700 (PDT) From: KAYVEN RIESE To: freebsd-acpi@FreeBSD.org In-Reply-To: Message-ID: References: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII X-Brightmail-Tracker: AAAAAQAAA+k= X-Language-Identified: TRUE X-SFSU-VirusScanner: Found to be clean Cc: Subject: Re: can't see nuthin' 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, 12 Jul 2005 03:09:58 -0000 On Mon, 11 Jul 2005, KAYVEN RIESE wrote: > > i can't see any of my devices with freeBSD 6.0 umm.. > > tell me what to tell you because i have no clue. okay.. i kayvetop# ls /dev/ acd0 consolectl lpt0.ctl ptyp6 ttyv4 acpi ctty mdctl random ttyv5 ad0 cuaa0 mem stderr ttyv6 ad0s1 cuaia0 net stdin ttyv7 ad0s1a cuala0 net1 stdout ttyv8 ad0s1c devctl net2 sysmouse ttyv9 ad0s2 devstat net3 ttyd0 ttyva ad0s2a fd net4 ttyid0 ttyvb ad0s2c fido network ttyld0 ttyvc ad0s3 fw0 nfs4 ttyp0 ttyvd ad0s3b fw0.0 null ttyp1 ttyve ad0s3c fwmem0 pci ttyp2 ttyvf ad0s4 fwmem0.0 ppi0 ttyp3 ums0 agpgart geom.ctl psm0 ttyp4 urandom apm io ptyp0 ttyp5 usb ata kbd0 ptyp1 ttyp6 usb0 atkbd0 klog ptyp2 ttyv0 usb1 bpf0 kmem ptyp3 ttyv1 usb2 bpsm0 log ptyp4 ttyv2 xpt0 console lpt0 ptyp5 ttyv3 zero kayvetop# here is the complete output for dmesg Copyright (c) 1992-2005 The FreeBSD Project. Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994 The Regents of the University of California. All rights reserved. FreeBSD 6.0-CURRENT-SNAP004 #0: Thu Jun 2 06:12:51 UTC 2005 root@wv1u.samsco.home:/usr/obj/usr/src/sys/GENERIC WARNING: WITNESS option enabled, expect reduced performance. Timecounter "i8254" frequency 1193182 Hz quality 0 CPU: Intel(R) Pentium(R) M processor 1.73GHz (600.03-MHz 686-class CPU) Origin = "GenuineIntel" Id = 0x6d8 Stepping = 8 Features=0xafe9fbff Features2=0x180 real memory = 536084480 (511 MB) avail memory = 515219456 (491 MB) npx0: [FAST] npx0: on motherboard npx0: INT 16 interface acpi0: on motherboard ACPI-0356: *** Error: Region EmbeddedControl(3) has no handler ACPI-1304: *** Error: Method execution failed [\\_SB_.PCI0.SBRG.EC0_.ACS_] (Node 0xc1ab3960), AE_NOT_EXIST ACPI-1304: *** Error: Method execution failed [\\_SB_.AC__._INI] (Node 0xc1ab7840), AE_NOT_EXIST ACPI-0356: *** Error: Region EmbeddedControl(3) has no handler ACPI-1304: *** Error: Method execution failed [\\_SB_.PCI0.SBRG.EC0_.BATS] (Node 0xc1ab3940), AE_NOT_EXIST ACPI-1304: *** Error: Method execution failed [\\_SB_.BAT0._STA] (Node 0xc1ab7c40), AE_NOT_EXIST ACPI-0239: *** Error: Method execution failed [\\_SB_.BAT0._STA] (Node 0xc1ab7c40), AE_NOT_EXIST acpi0: Power Button (fixed) acpi_ec0: port 0x62,0x66 on acpi0 pci_link0: irq 11 on acpi0 pci_link1: irq 4 on acpi0 pci_link2: irq 10 on acpi0 pci_link3: irq 5 on acpi0 pci_link4: irq 0 on acpi0 pci_link5: irq 0 on acpi0 pci_link6: irq 0 on acpi0 pci_link7: irq 10 on acpi0 Timecounter "ACPI-fast" frequency 3579545 Hz quality 1000 acpi_timer0: <24-bit timer at 3.579545MHz> port 0x408-0x40b on acpi0 cpu0: on acpi0 acpi_throttle0: on cpu0 pcib0: port 0xcf8-0xcff on acpi0 pci0: on pcib0 agp0: mem 0xe0000000-0xefffffff at device 0.0 on pci0 pcib1: at device 1.0 on pci0 pci1: on pcib1 pci1: at device 0.0 (no driver attached) uhci0: port 0xe800-0xe81f irq 11 at device 29.0 on pci0 uhci0: [GIANT-LOCKED] usb0: on uhci0 usb0: USB revision 1.0 uhub0: Intel UHCI root hub, class 9/0, rev 1.00/1.00, addr 1 uhub0: 2 ports with 2 removable, self powered uhci1: port 0xe880-0xe89f irq 5 at device 29.1 on pci0 uhci1: [GIANT-LOCKED] usb1: on uhci1 usb1: USB revision 1.0 uhub1: Intel UHCI root hub, class 9/0, rev 1.00/1.00, addr 1 uhub1: 2 ports with 2 removable, self powered uhci2: port 0xec00-0xec1f irq 10 at device 29.2 on pci0 uhci2: [GIANT-LOCKED] usb2: on uhci2 usb2: USB revision 1.0 uhub2: Intel UHCI root hub, class 9/0, rev 1.00/1.00, addr 1 uhub2: 2 ports with 2 removable, self powered ehci0: mem 0xffaffc00-0xffafffff irq 10 at device 29.7 on pci0 ehci0: [GIANT-LOCKED] usb3: EHCI version 1.0 usb3: companion controllers, 2 ports each: usb0 usb1 usb2 usb3: on ehci0 usb3: USB revision 2.0 uhub3: Intel EHCI root hub, class 9/0, rev 2.00/1.00, addr 1 usb3: companion controllers, 2 ports each: usb0 usb1 usb2 usb3: on ehci0 usb3: USB revision 2.0 uhub3: Intel EHCI root hub, class 9/0, rev 2.00/1.00, addr 1 uhub3: 6 ports with 6 removable, self powered pcib2: at device 30.0 on pci0 pci2: on pcib2 bge0: mem 0xff9f0000-0xff9fffff irq 4 at device 0.0 on pci2 miibus0: on bge0 brgphy0: on miibus0 brgphy0: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, 1000baseTX, 1000baseTX-FDX, auto bge0: Ethernet address: 00:11:d8:22:c9:91 cbb0: at device 1.0 on pci2 cardbus0: on cbb0 pccard0: <16-bit PCCard bus> on cbb0 cbb1: at device 1.1 on pci2 cardbus1: on cbb1 pccard1: <16-bit PCCard bus> on cbb1 fwohci0: mem 0xff9ef800-0xff9effff irq 10 at device 1.2 on pci2 fwohci0: OHCI version 1.0 (ROM=1) fwohci0: No. of Isochronous channels is 4. fwohci0: EUI64 00:e0:18:00:03:26:4c:e9 fwohci0: Phy 1394a available S400, 2 ports. fwohci0: Link S400, max_rec 2048 bytes. firewire0: on fwohci0 fwe0: on firewire0 if_fwe0: Fake Ethernet address: 02:e0:18:26:4c:e9 fwe0: Ethernet address: 02:e0:18:26:4c:e9 fwe0: if_start running deferred for Giant sbp0: on firewire0 fwohci0: Initiate bus reset fwohci0: node_id=0xc800ffc0, gen=1, CYCLEMASTER mode firewire0: 1 nodes, maxhop <= 0, cable IRM = 0 (me) firewire0: bus manager 0 (me) pci2: at device 2.0 (no driver attached) isab0: at device 31.0 on pci0 isa0: on isab0 atapci0: port 0x1f0-0x1f7,0x3f6,0x170-0x177,0x376,0xffa0-0xffaf at device 31.1 on pci0 ata0: on atapci0 ata1: on atapci0 pci0: at device 31.5 (no driver attached) pci0: at device 31.6 (no driver attached) acpi_lid0: on acpi0 acpi_button0: on acpi0 acpi_acad0: on acpi0 acpi_cmbat0: on acpi0 acpi_cmbat1: on acpi0 acpi_button1: on acpi0 acpi_tz0: on acpi0 atkbdc0: port 0x60,0x64 irq 1 on acpi0 atkbd0: irq 1 on atkbdc0 kbd0 at atkbd0 atkbd0: [GIANT-LOCKED] psm0: irq 12 on atkbdc0 psm0: [GIANT-LOCKED] psm0: model Generic PS/2 mouse, device ID 0 sio0: configured irq 3 not in bitmap of probed irqs 0 sio0: port may not be enabled sio0 port 0x2f8-0x2ff irq 3 drq 1 flags 0x10 on acpi0 sio0: type 16550A ppc0: port 0x378-0x37f,0x778-0x77f irq 7 drq 3 on acpi0 ppc0: SMC-like chipset (ECP/EPP/PS2/NIBBLE) in COMPATIBLE mode ppc0: FIFO with 16/16/8 bytes threshold ppbus0: on ppc0 plip0: on ppbus0 lpt0: on ppbus0 lpt0: Interrupt-driven port ppi0: on ppbus0 pmtimer0 on isa0 ppi0: on ppbus0 pmtimer0 on isa0 orm0: at iomem 0xc0000-0xcffff on isa0 sc0: at flags 0x100 on isa0 sc0: VGA <16 virtual consoles, flags=0x300> vga0: at port 0x3c0-0x3df iomem 0xa0000-0xbffff on isa0 ums0: ACROX Resolution 400/600/800 Changeable Combo Mouse, rev 1.00/5.50, addr 2, iclass 3/1 ums0: 3 buttons and Z dir. Timecounter "TSC" frequency 600025330 Hz quality 800 Timecounters tick every 1.000 msec ad0: 57231MB at ata0-master UDMA100 ACPI-1304: *** Error: Method execution failed [\\_SB_.BAT0._BST] (Node 0xc1ab7c60), AE_AML_NO_RETURN_VALUE acd0: DVDR at ata1-master UDMA33 pccard0: No config entry could be allocated. ATA PseudoRAID loaded Trying to mount root from ufs:/dev/ad0s1a ACPI-1304: *** Error: Method execution failed [\\_SB_.BAT0._BST] (Node 0xc1ab7c60), AE_AML_NO_RETURN_VALUE ACPI-1304: *** Error: Method execution failed [\\_SB_.BAT0._BST] (Node 0xc1ab7c60), AE_AML_NO_RETURN_VALUE ACPI-1304: *** Error: Method execution failed [\\_SB_.BAT0._BST] (Node 0xc1ab7c60), AE_AML_NO_RETURN_VALUE ACPI-1304: *** Error: Method execution failed [\\_SB_.BAT0._BST] (Node 0xc1ab7c60), AE_AML_NO_RETURN_VALUE ACPI-1304: *** Error: Method execution failed [\\_SB_.BAT0._BST] (Node 0xc1ab7c60), AE_AML_NO_RETURN_VALUE ACPI-1304: *** Error: Method execution failed [\\_SB_.BAT0._BST] (Node 0xc1ab7c60), AE_AML_NO_RETURN_VALUE From owner-freebsd-acpi@FreeBSD.ORG Tue Jul 12 03:12:14 2005 Return-Path: X-Original-To: freebsd-acpi@FreeBSD.org Delivered-To: freebsd-acpi@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 2FBC516A41C for ; Tue, 12 Jul 2005 03:12:14 +0000 (GMT) (envelope-from kayve@sfsu.edu) Received: from mailgw2.sfsu.edu (mailgw2.sfsu.edu [130.212.10.32]) by mx1.FreeBSD.org (Postfix) with ESMTP id 6F87043D49 for ; Tue, 12 Jul 2005 03:12:13 +0000 (GMT) (envelope-from kayve@sfsu.edu) Received: from libra.sfsu.edu (libra.sfsu.edu [130.212.10.238]) by mailgw2.sfsu.edu (8.12.11/8.12.11) with ESMTP id j6C3CBiJ009853 for ; Mon, 11 Jul 2005 20:12:11 -0700 Received: from localhost (kayve@localhost) by libra.sfsu.edu (8.12.10/8.12.10) with ESMTP id j6C3CBZi014592 for ; Mon, 11 Jul 2005 20:12:11 -0700 (PDT) X-Authentication-Warning: libra.sfsu.edu: kayve owned process doing -bs Date: Mon, 11 Jul 2005 20:12:11 -0700 (PDT) From: KAYVEN RIESE To: freebsd-acpi@FreeBSD.org In-Reply-To: Message-ID: References: MIME-Version: 1.0 Content-Type: MULTIPART/MIXED; BOUNDARY="-559023410-758783491-1121137931=:12063" X-SFSU-VirusScanner: Found to be clean X-Mailman-Approved-At: Tue, 12 Jul 2005 05:11:49 +0000 Cc: Subject: Re: can't see nuthin' 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, 12 Jul 2005 03:12:14 -0000 This message is in MIME format. The first part should be readable text, while the remaining parts are likely unreadable without MIME-aware tools. Send mail to mime@docserver.cac.washington.edu for more info. ---559023410-758783491-1121137931=:12063 Content-Type: TEXT/PLAIN; charset=US-ASCII On Mon, 11 Jul 2005, KAYVEN RIESE wrote: > > i can't see any of my devices with freeBSD 6.0 umm.. > > tell me what to tell you because i have no clue. > > attached is the output of the command acpidump -t -d ---559023410-758783491-1121137931=:12063 Content-Type: TEXT/PLAIN; charset=US-ASCII; name="freeBSD6.0.asl" Content-Transfer-Encoding: BASE64 Content-ID: Content-Description: Content-Disposition: attachment; filename="freeBSD6.0.asl" LyoNCiAgUlNEIFBUUjogT0VNPUFDUElBTSwgQUNQSV9SZXY9MS4weCAoMCkN CglSU0RUPTB4MWZmNDAwMDAsIGNrc3VtPTM1DQogKi8NCi8qDQogIFJTRFQ6 IExlbmd0aD00NCwgUmV2aXNpb249MSwgQ2hlY2tzdW09MjEyLA0KCU9FTUlE PUEgTSBJLCBPRU0gVGFibGUgSUQ9T0VNUlNEVCwgT0VNIFJldmlzaW9uPTB4 OTAwMDQwNiwNCglDcmVhdG9yIElEPU1TRlQsIENyZWF0b3IgUmV2aXNpb249 MHg5Nw0KCUVudHJpZXM9eyAweDFmZjQwMjAwLCAweDFmZjUwMDQwIH0NCiAq Lw0KLyoNCiAgRkFDUDogTGVuZ3RoPTEyOSwgUmV2aXNpb249MSwgQ2hlY2tz dW09MjAxLA0KCU9FTUlEPUEgTSBJLCBPRU0gVGFibGUgSUQ9T0VNRkFDUCwg T0VNIFJldmlzaW9uPTB4OTAwMDQwNiwNCglDcmVhdG9yIElEPU1TRlQsIENy ZWF0b3IgUmV2aXNpb249MHg5Nw0KIAlGQUNTPTB4MWZmNTAwMDAsIERTRFQ9 MHgxZmY0MDQwMA0KCUlOVF9NT0RFTD1QSUMNCglQcmVmZXJyZWRfUE1fUHJv ZmlsZT1VbnNwZWNpZmllZCAoMCkNCglTQ0lfSU5UPTkNCglTTUlfQ01EPTB4 YjIsIEFDUElfRU5BQkxFPTB4ZTEsIEFDUElfRElTQUJMRT0weDFlLCBTNEJJ T1NfUkVRPTB4MA0KCVBTVEFURV9DTlQ9MHhlMg0KCVBNMWFfRVZUX0JMSz0w eDQwMC0weDQwMw0KCVBNMWFfQ05UX0JMSz0weDQwNC0weDQwNQ0KCVBNMl9D TlRfQkxLPTB4NDIwLTB4NDIwDQoJUE1fVE1SX0JMSz0weDQwOC0weDQwYg0K CUdQRTBfQkxLPTB4NDI4LTB4NDJmDQoJQ1NUX0NOVD0weGUzDQoJUF9MVkwy X0xBVD05OSB1cywgUF9MVkwzX0xBVD0xMDAxIHVzDQoJRkxVU0hfU0laRT0x MDI0LCBGTFVTSF9TVFJJREU9MTYNCglEVVRZX09GRlNFVD0xLCBEVVRZX1dJ RFRIPTMNCglEQVlfQUxSTT0xMywgTU9OX0FMUk09MCwgQ0VOVFVSWT0wDQoJ SUFQQ19CT09UX0FSQ0g9e0xFR0FDWV9ERVYsODA0Mn0NCglGbGFncz17V0JJ TlZELFBST0NfQzEsU0xQX0JVVFRPTixSVENfUzQsSEVBRExFU1N9DQogKi8N Ci8qDQogIEZBQ1M6CUxlbmd0aD02NCwgSHdTaWc9MHgwMDAwMDAwMCwgRmly bV9XYWtlX1ZlYz0weDAwMDAwMDAwDQoJR2xvYmFsX0xvY2s9DQoJRmxhZ3M9 DQoJVmVyc2lvbj0xDQogKi8NCi8qDQogIERTRFQ6IExlbmd0aD0yNTI0NSwg UmV2aXNpb249MSwgQ2hlY2tzdW09MjMyLA0KCU9FTUlEPTFBQlNQLCBPRU0g VGFibGUgSUQ9MUFCU1AwMDEsIE9FTSBSZXZpc2lvbj0weDEsDQoJQ3JlYXRv ciBJRD1NU0ZULCBDcmVhdG9yIFJldmlzaW9uPTB4MjAwMDAwMQ0KICovDQov Kg0KICBPRU1COiBMZW5ndGg9ODMsIFJldmlzaW9uPTEsIENoZWNrc3VtPTg1 LA0KCU9FTUlEPUEgTSBJLCBPRU0gVGFibGUgSUQ9T0VNQklPUywgT0VNIFJl dmlzaW9uPTB4OTAwMDQwNiwNCglDcmVhdG9yIElEPU1TRlQsIENyZWF0b3Ig UmV2aXNpb249MHg5Nw0KICovDQovKg0KICogSW50ZWwgQUNQSSBDb21wb25l bnQgQXJjaGl0ZWN0dXJlDQogKiBBTUwgRGlzYXNzZW1ibGVyIHZlcnNpb24g MjAwNDExMTkNCiAqDQogKiBEaXNhc3NlbWJseSBvZiAvdG1wL2FjcGlkdW1w LjhoQ1JCUSwgTW9uIEp1bCAxMSAyMDoxMDo0MiAyMDA1DQogKi8NCkRlZmlu aXRpb25CbG9jayAoIkRTRFQuYW1sIiwgIkRTRFQiLCAxLCAiMUFCU1AiLCAi MUFCU1AwMDEiLCAxKQ0Kew0KICAgIE9wZXJhdGlvblJlZ2lvbiAoQklPUywg U3lzdGVtTWVtb3J5LCAweDFGRjUwMDY0LCAweEZGKQ0KICAgIEZpZWxkIChC SU9TLCBCeXRlQWNjLCBOb0xvY2ssIFByZXNlcnZlKQ0KICAgIHsNCiAgICAg ICAgU1MxLCAgICAxLCANCiAgICAgICAgU1MyLCAgICAxLCANCiAgICAgICAg U1MzLCAgICAxLCANCiAgICAgICAgU1M0LCAgICAxLCANCiAgICAgICAgT2Zm c2V0ICgweDAxKSwgDQogICAgICAgIElPU1QsICAgMTYsIA0KICAgICAgICBT UElPLCAgIDE2LCANCiAgICAgICAgUE1CUywgICAxNiwgDQogICAgICAgIFBN TE4sICAgOCwgDQogICAgICAgIFNNQlMsICAgMTYsIA0KICAgICAgICBTTUxO LCAgIDgsIA0KICAgICAgICBJTzFCLCAgIDE2LCANCiAgICAgICAgSU8xTCwg ICA4LCANCiAgICAgICAgSU8yQiwgICAxNiwgDQogICAgICAgIElPMkwsICAg OCwgDQogICAgICAgIFRPUE0sICAgMzIsIA0KICAgICAgICBST01TLCAgIDMy LCANCiAgICAgICAgQVBDQiwgICAzMiwgDQogICAgICAgIEFQQ0wsICAgMTYs IA0KICAgICAgICBNRzFCLCAgIDMyLCANCiAgICAgICAgTUcxTCwgICAzMiwg DQogICAgICAgIE1HMkIsICAgMzIsIA0KICAgICAgICBNRzJMLCAgIDMyDQog ICAgfQ0KDQogICAgTmFtZSAoV0ZBVCwgMHg5MCkNCiAgICBOYW1lIChXTlZS LCAweDkxKQ0KICAgIE5hbWUgKFJOVlIsIDB4OTIpDQogICAgTmFtZSAoU1dG UiwgMHg5MykNCiAgICBOYW1lIChTVERELCAweDk0KQ0KICAgIE5hbWUgKEdU REQsIDB4OTUpDQogICAgTmFtZSAoQURCUiwgMHg5NikNCiAgICBOYW1lIChD R1BTLCAweDk3KQ0KICAgIE5hbWUgKENHV0ssIDB4OTgpDQogICAgTmFtZSAo SVNXUCwgMHg5OSkNCiAgICBOYW1lIChJU1RCLCAweDlBKQ0KICAgIE5hbWUg KEdQQlMsIDB4MDUwMCkNCiAgICBOYW1lIChHUExOLCAweDQwKQ0KICAgIE5h bWUgKFNCVVMsIDB4MDU0MCkNCiAgICBOYW1lIChTTUJMLCAweDEwKQ0KICAg IE1ldGhvZCAoUlJJTywgNCwgTm90U2VyaWFsaXplZCkNCiAgICB7DQogICAg ICAgIFN0b3JlICgiUlJJTyIsIERlYnVnKQ0KICAgIH0NCg0KICAgIE1ldGhv ZCAoUkRNQSwgMywgTm90U2VyaWFsaXplZCkNCiAgICB7DQogICAgICAgIFN0 b3JlICgickRNQSIsIERlYnVnKQ0KICAgIH0NCg0KICAgIE5hbWUgKFBJQ00s IDB4MDApDQogICAgTWV0aG9kIChfUElDLCAxLCBOb3RTZXJpYWxpemVkKQ0K ICAgIHsNCiAgICAgICAgSWYgKEFyZzApDQogICAgICAgIHsNCiAgICAgICAg ICAgIFN0b3JlICgweEFBLCBEQkc4KQ0KICAgICAgICB9DQogICAgICAgIEVs c2UNCiAgICAgICAgew0KICAgICAgICAgICAgU3RvcmUgKDB4NTUsIERCRzgp DQogICAgICAgIH0NCg0KICAgICAgICBTdG9yZSAoQXJnMCwgUElDTSkNCiAg ICB9DQoNCiAgICBNZXRob2QgKE9TRkwsIDAsIE5vdFNlcmlhbGl6ZWQpDQog ICAgew0KICAgICAgICBTdG9yZSAoMHgwMSwgTG9jYWwwKQ0KICAgICAgICBJ ZiAoTUNUSCAoXF9PUywgIk1pY3Jvc29mdCBXaW5kb3dzIE5UIikpDQogICAg ICAgIHsNCiAgICAgICAgICAgIFN0b3JlICgweDAwLCBMb2NhbDApDQogICAg ICAgIH0NCg0KICAgICAgICBSZXR1cm4gKExvY2FsMCkNCiAgICB9DQoNCiAg ICBNZXRob2QgKE1DVEgsIDIsIE5vdFNlcmlhbGl6ZWQpDQogICAgew0KICAg ICAgICBJZiAoTExlc3MgKFNpemVPZiAoQXJnMCksIFNpemVPZiAoQXJnMSkp KQ0KICAgICAgICB7DQogICAgICAgICAgICBSZXR1cm4gKFplcm8pDQogICAg ICAgIH0NCg0KICAgICAgICBBZGQgKFNpemVPZiAoQXJnMCksIDB4MDEsIExv Y2FsMCkNCiAgICAgICAgTmFtZSAoQlVGMCwgQnVmZmVyIChMb2NhbDApIHt9 KQ0KICAgICAgICBOYW1lIChCVUYxLCBCdWZmZXIgKExvY2FsMCkge30pDQog ICAgICAgIFN0b3JlIChBcmcwLCBCVUYwKQ0KICAgICAgICBTdG9yZSAoQXJn MSwgQlVGMSkNCiAgICAgICAgV2hpbGUgKExvY2FsMCkNCiAgICAgICAgew0K ICAgICAgICAgICAgRGVjcmVtZW50IChMb2NhbDApDQogICAgICAgICAgICBJ ZiAoTE5vdCAoTEVxdWFsIChEZXJlZk9mIChJbmRleCAoQlVGMCwgTG9jYWww KSksIERlcmVmT2YgKEluZGV4IChCVUYxLCBMb2NhbDApKSkpKQ0KICAgICAg ICAgICAgew0KICAgICAgICAgICAgICAgIFJldHVybiAoWmVybykNCiAgICAg ICAgICAgIH0NCiAgICAgICAgfQ0KDQogICAgICAgIFJldHVybiAoT25lKQ0K ICAgIH0NCg0KICAgIE1ldGhvZCAoR1BSVywgMiwgTm90U2VyaWFsaXplZCkN CiAgICB7DQogICAgICAgIE5hbWUgKFBSV1AsIFBhY2thZ2UgKDB4MDIpDQog ICAgICAgIHsNCiAgICAgICAgICAgIDB4MDAsIA0KICAgICAgICAgICAgMHgw MA0KICAgICAgICB9KQ0KICAgICAgICBTdG9yZSAoQXJnMCwgSW5kZXggKFBS V1AsIDB4MDApKQ0KICAgICAgICBTdG9yZSAoQXJnMSwgSW5kZXggKFBSV1As IDB4MDEpKQ0KICAgICAgICBSZXR1cm4gKFBSV1ApDQogICAgfQ0KDQogICAg TmFtZSAoV0FLUCwgUGFja2FnZSAoMHgwMikNCiAgICB7DQogICAgICAgIDB4 MDAsIA0KICAgICAgICAweDAwDQogICAgfSkNCiAgICBPcGVyYXRpb25SZWdp b24gKERFQjAsIFN5c3RlbUlPLCAweDgwLCAweDAxKQ0KICAgIEZpZWxkIChE RUIwLCBCeXRlQWNjLCBOb0xvY2ssIFByZXNlcnZlKQ0KICAgIHsNCiAgICAg ICAgREJHOCwgICA4DQogICAgfQ0KDQogICAgT3BlcmF0aW9uUmVnaW9uIChE RUIxLCBTeXN0ZW1JTywgMHg5MCwgMHgwMikNCiAgICBGaWVsZCAoREVCMSwg V29yZEFjYywgTm9Mb2NrLCBQcmVzZXJ2ZSkNCiAgICB7DQogICAgICAgIERC RzksICAgMTYNCiAgICB9DQoNCiAgICBTY29wZSAoXF9TQikNCiAgICB7DQog ICAgICAgIE5hbWUgKFBSMDAsIFBhY2thZ2UgKDB4MDcpDQogICAgICAgIHsN CiAgICAgICAgICAgIFBhY2thZ2UgKDB4MDQpDQogICAgICAgICAgICB7DQog ICAgICAgICAgICAgICAgMHgwMDFGRkZGRiwgDQogICAgICAgICAgICAgICAg MHgwMSwgDQogICAgICAgICAgICAgICAgTE5LQiwgDQogICAgICAgICAgICAg ICAgMHgwMA0KICAgICAgICAgICAgfSwgDQoNCiAgICAgICAgICAgIFBhY2th Z2UgKDB4MDQpDQogICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgMHgw MDFGRkZGRiwgDQogICAgICAgICAgICAgICAgMHgwMCwgDQogICAgICAgICAg ICAgICAgTE5LQywgDQogICAgICAgICAgICAgICAgMHgwMA0KICAgICAgICAg ICAgfSwgDQoNCiAgICAgICAgICAgIFBhY2thZ2UgKDB4MDQpDQogICAgICAg ICAgICB7DQogICAgICAgICAgICAgICAgMHgwMDAxRkZGRiwgDQogICAgICAg ICAgICAgICAgMHgwMCwgDQogICAgICAgICAgICAgICAgTE5LQSwgDQogICAg ICAgICAgICAgICAgMHgwMA0KICAgICAgICAgICAgfSwgDQoNCiAgICAgICAg ICAgIFBhY2thZ2UgKDB4MDQpDQogICAgICAgICAgICB7DQogICAgICAgICAg ICAgICAgMHgwMDFERkZGRiwgDQogICAgICAgICAgICAgICAgMHgwMywgDQog ICAgICAgICAgICAgICAgTE5LSCwgDQogICAgICAgICAgICAgICAgMHgwMA0K ICAgICAgICAgICAgfSwgDQoNCiAgICAgICAgICAgIFBhY2thZ2UgKDB4MDQp DQogICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgMHgwMDFERkZGRiwg DQogICAgICAgICAgICAgICAgMHgwMCwgDQogICAgICAgICAgICAgICAgTE5L QSwgDQogICAgICAgICAgICAgICAgMHgwMA0KICAgICAgICAgICAgfSwgDQoN CiAgICAgICAgICAgIFBhY2thZ2UgKDB4MDQpDQogICAgICAgICAgICB7DQog ICAgICAgICAgICAgICAgMHgwMDFERkZGRiwgDQogICAgICAgICAgICAgICAg MHgwMSwgDQogICAgICAgICAgICAgICAgTE5LRCwgDQogICAgICAgICAgICAg ICAgMHgwMA0KICAgICAgICAgICAgfSwgDQoNCiAgICAgICAgICAgIFBhY2th Z2UgKDB4MDQpDQogICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgMHgw MDFERkZGRiwgDQogICAgICAgICAgICAgICAgMHgwMiwgDQogICAgICAgICAg ICAgICAgTE5LQywgDQogICAgICAgICAgICAgICAgMHgwMA0KICAgICAgICAg ICAgfQ0KICAgICAgICB9KQ0KICAgICAgICBOYW1lIChBUjAwLCBQYWNrYWdl ICgweDA3KQ0KICAgICAgICB7DQogICAgICAgICAgICBQYWNrYWdlICgweDA0 KQ0KICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgIDB4MDAxRkZGRkYs IA0KICAgICAgICAgICAgICAgIDB4MDEsIA0KICAgICAgICAgICAgICAgIDB4 MDAsIA0KICAgICAgICAgICAgICAgIDB4MTENCiAgICAgICAgICAgIH0sIA0K DQogICAgICAgICAgICBQYWNrYWdlICgweDA0KQ0KICAgICAgICAgICAgew0K ICAgICAgICAgICAgICAgIDB4MDAxRkZGRkYsIA0KICAgICAgICAgICAgICAg IDB4MDAsIA0KICAgICAgICAgICAgICAgIDB4MDAsIA0KICAgICAgICAgICAg ICAgIDB4MTINCiAgICAgICAgICAgIH0sIA0KDQogICAgICAgICAgICBQYWNr YWdlICgweDA0KQ0KICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgIDB4 MDAwMUZGRkYsIA0KICAgICAgICAgICAgICAgIDB4MDAsIA0KICAgICAgICAg ICAgICAgIDB4MDAsIA0KICAgICAgICAgICAgICAgIDB4MTANCiAgICAgICAg ICAgIH0sIA0KDQogICAgICAgICAgICBQYWNrYWdlICgweDA0KQ0KICAgICAg ICAgICAgew0KICAgICAgICAgICAgICAgIDB4MDAxREZGRkYsIA0KICAgICAg ICAgICAgICAgIDB4MDMsIA0KICAgICAgICAgICAgICAgIDB4MDAsIA0KICAg ICAgICAgICAgICAgIDB4MTcNCiAgICAgICAgICAgIH0sIA0KDQogICAgICAg ICAgICBQYWNrYWdlICgweDA0KQ0KICAgICAgICAgICAgew0KICAgICAgICAg ICAgICAgIDB4MDAxREZGRkYsIA0KICAgICAgICAgICAgICAgIDB4MDAsIA0K ICAgICAgICAgICAgICAgIDB4MDAsIA0KICAgICAgICAgICAgICAgIDB4MTAN CiAgICAgICAgICAgIH0sIA0KDQogICAgICAgICAgICBQYWNrYWdlICgweDA0 KQ0KICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgIDB4MDAxREZGRkYs IA0KICAgICAgICAgICAgICAgIDB4MDEsIA0KICAgICAgICAgICAgICAgIDB4 MDAsIA0KICAgICAgICAgICAgICAgIDB4MTMNCiAgICAgICAgICAgIH0sIA0K DQogICAgICAgICAgICBQYWNrYWdlICgweDA0KQ0KICAgICAgICAgICAgew0K ICAgICAgICAgICAgICAgIDB4MDAxREZGRkYsIA0KICAgICAgICAgICAgICAg IDB4MDIsIA0KICAgICAgICAgICAgICAgIDB4MDAsIA0KICAgICAgICAgICAg ICAgIDB4MTINCiAgICAgICAgICAgIH0NCiAgICAgICAgfSkNCiAgICAgICAg TmFtZSAoUFIwMSwgUGFja2FnZSAoMHgwMSkNCiAgICAgICAgew0KICAgICAg ICAgICAgUGFja2FnZSAoMHgwNCkNCiAgICAgICAgICAgIHsNCiAgICAgICAg ICAgICAgICAweEZGRkYsIA0KICAgICAgICAgICAgICAgIDB4MDAsIA0KICAg ICAgICAgICAgICAgIExOS0EsIA0KICAgICAgICAgICAgICAgIDB4MDANCiAg ICAgICAgICAgIH0NCiAgICAgICAgfSkNCiAgICAgICAgTmFtZSAoUFIwMiwg UGFja2FnZSAoMHgwNikNCiAgICAgICAgew0KICAgICAgICAgICAgUGFja2Fn ZSAoMHgwNCkNCiAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAweDAw MDFGRkZGLCANCiAgICAgICAgICAgICAgICAweDAwLCANCiAgICAgICAgICAg ICAgICBMTktCLCANCiAgICAgICAgICAgICAgICAweDAwDQogICAgICAgICAg ICB9LCANCg0KICAgICAgICAgICAgUGFja2FnZSAoMHgwNCkNCiAgICAgICAg ICAgIHsNCiAgICAgICAgICAgICAgICAweDAwMDFGRkZGLCANCiAgICAgICAg ICAgICAgICAweDAxLCANCiAgICAgICAgICAgICAgICBMTktBLCANCiAgICAg ICAgICAgICAgICAweDAwDQogICAgICAgICAgICB9LCANCg0KICAgICAgICAg ICAgUGFja2FnZSAoMHgwNCkNCiAgICAgICAgICAgIHsNCiAgICAgICAgICAg ICAgICAweDAwMDFGRkZGLCANCiAgICAgICAgICAgICAgICAweDAyLCANCiAg ICAgICAgICAgICAgICBMTktDLCANCiAgICAgICAgICAgICAgICAweDAwDQog ICAgICAgICAgICB9LCANCg0KICAgICAgICAgICAgUGFja2FnZSAoMHgwNCkN CiAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAweEZGRkYsIA0KICAg ICAgICAgICAgICAgIDB4MDAsIA0KICAgICAgICAgICAgICAgIExOS0IsIA0K ICAgICAgICAgICAgICAgIDB4MDANCiAgICAgICAgICAgIH0sIA0KDQogICAg ICAgICAgICBQYWNrYWdlICgweDA0KQ0KICAgICAgICAgICAgew0KICAgICAg ICAgICAgICAgIDB4MDAwMkZGRkYsIA0KICAgICAgICAgICAgICAgIDB4MDAs IA0KICAgICAgICAgICAgICAgIExOS0IsIA0KICAgICAgICAgICAgICAgIDB4 MDANCiAgICAgICAgICAgIH0sIA0KDQogICAgICAgICAgICBQYWNrYWdlICgw eDA0KQ0KICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgIDB4MDAwMkZG RkYsIA0KICAgICAgICAgICAgICAgIDB4MDEsIA0KICAgICAgICAgICAgICAg IExOS0QsIA0KICAgICAgICAgICAgICAgIDB4MDANCiAgICAgICAgICAgIH0N CiAgICAgICAgfSkNCiAgICAgICAgTmFtZSAoUFJTQSwgUmVzb3VyY2VUZW1w bGF0ZSAoKQ0KICAgICAgICB7DQogICAgICAgICAgICBJUlEgKExldmVsLCBB Y3RpdmVMb3csIFNoYXJlZCkgezMsNCw1LDYsNywxMCwxMSwxMn0NCiAgICAg ICAgfSkNCiAgICAgICAgTmFtZSAoUFJTQiwgUmVzb3VyY2VUZW1wbGF0ZSAo KQ0KICAgICAgICB7DQogICAgICAgICAgICBJUlEgKExldmVsLCBBY3RpdmVM b3csIFNoYXJlZCkgezMsNCw1LDYsNywxMSwxMn0NCiAgICAgICAgfSkNCiAg ICAgICAgTmFtZSAoUFJTQywgUmVzb3VyY2VUZW1wbGF0ZSAoKQ0KICAgICAg ICB7DQogICAgICAgICAgICBJUlEgKExldmVsLCBBY3RpdmVMb3csIFNoYXJl ZCkgezEwLDEyfQ0KICAgICAgICB9KQ0KICAgICAgICBOYW1lIChQUlNELCBS ZXNvdXJjZVRlbXBsYXRlICgpDQogICAgICAgIHsNCiAgICAgICAgICAgIElS USAoTGV2ZWwsIEFjdGl2ZUxvdywgU2hhcmVkKSB7NSw2LDEwfQ0KICAgICAg ICB9KQ0KICAgICAgICBOYW1lIChQUlNFLCBSZXNvdXJjZVRlbXBsYXRlICgp DQogICAgICAgIHsNCiAgICAgICAgICAgIElSUSAoTGV2ZWwsIEFjdGl2ZUxv dywgU2hhcmVkKSB7NiwxMX0NCiAgICAgICAgfSkNCiAgICAgICAgTmFtZSAo UFJTRiwgUmVzb3VyY2VUZW1wbGF0ZSAoKQ0KICAgICAgICB7DQogICAgICAg ICAgICBJUlEgKExldmVsLCBBY3RpdmVMb3csIFNoYXJlZCkgezMsN30NCiAg ICAgICAgfSkNCiAgICAgICAgTmFtZSAoUFJTRywgUmVzb3VyY2VUZW1wbGF0 ZSAoKQ0KICAgICAgICB7DQogICAgICAgICAgICBJUlEgKExldmVsLCBBY3Rp dmVMb3csIFNoYXJlZCkgezQsN30NCiAgICAgICAgfSkNCiAgICAgICAgTmFt ZSAoUFJTSCwgUmVzb3VyY2VUZW1wbGF0ZSAoKQ0KICAgICAgICB7DQogICAg ICAgICAgICBJUlEgKExldmVsLCBBY3RpdmVMb3csIFNoYXJlZCkgezQsNiwx MCwxMn0NCiAgICAgICAgfSkNCiAgICAgICAgRGV2aWNlIChQQ0kwKQ0KICAg ICAgICB7DQogICAgICAgICAgICBOYW1lIChfSElELCBFaXNhSWQgKCJQTlAw QTAzIikpDQogICAgICAgICAgICBOYW1lIChfQURSLCAweDAwKQ0KICAgICAg ICAgICAgTmFtZSAoX0JCTiwgMHgwMCkNCiAgICAgICAgICAgIE5hbWUgKF9V SUQsIDB4MDApDQogICAgICAgICAgICBNZXRob2QgKF9QUlQsIDAsIE5vdFNl cmlhbGl6ZWQpDQogICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgSWYg KFBJQ00pDQogICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAg ICBSZXR1cm4gKEFSMDApDQogICAgICAgICAgICAgICAgfQ0KDQogICAgICAg ICAgICAgICAgUmV0dXJuIChQUjAwKQ0KICAgICAgICAgICAgfQ0KDQogICAg ICAgICAgICBEZXZpY2UgKFNCUkcpDQogICAgICAgICAgICB7DQogICAgICAg ICAgICAgICAgTmFtZSAoX0FEUiwgMHgwMDFGMDAwMCkNCiAgICAgICAgICAg ICAgICBEZXZpY2UgKFBJQykNCiAgICAgICAgICAgICAgICB7DQogICAgICAg ICAgICAgICAgICAgIE5hbWUgKF9ISUQsIEVpc2FJZCAoIlBOUDAwMDAiKSkN CiAgICAgICAgICAgICAgICAgICAgTmFtZSAoX0NSUywgUmVzb3VyY2VUZW1w bGF0ZSAoKQ0KICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAg ICAgICAgICAgICBJTyAoRGVjb2RlMTYsIDB4MDAyMCwgMHgwMDIwLCAweDAw LCAweDAyKQ0KICAgICAgICAgICAgICAgICAgICAgICAgSU8gKERlY29kZTE2 LCAweDAwQTAsIDB4MDBBMCwgMHgwMCwgMHgwMikNCiAgICAgICAgICAgICAg ICAgICAgICAgIElSUU5vRmxhZ3MgKCkgezJ9DQogICAgICAgICAgICAgICAg ICAgIH0pDQogICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAg RGV2aWNlIChETUFEKQ0KICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAg ICAgICAgICAgTmFtZSAoX0hJRCwgRWlzYUlkICgiUE5QMDIwMCIpKQ0KICAg ICAgICAgICAgICAgICAgICBOYW1lIChfQ1JTLCBSZXNvdXJjZVRlbXBsYXRl ICgpDQogICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAg ICAgICAgIERNQSAoQ29tcGF0aWJpbGl0eSwgQnVzTWFzdGVyLCBUcmFuc2Zl cjgpIHs0fQ0KICAgICAgICAgICAgICAgICAgICAgICAgSU8gKERlY29kZTE2 LCAweDAwMDAsIDB4MDAwMCwgMHgwMCwgMHgxMCkNCiAgICAgICAgICAgICAg ICAgICAgICAgIElPIChEZWNvZGUxNiwgMHgwMDgxLCAweDAwODEsIDB4MDAs IDB4MDMpDQogICAgICAgICAgICAgICAgICAgICAgICBJTyAoRGVjb2RlMTYs IDB4MDA4NywgMHgwMDg3LCAweDAwLCAweDAxKQ0KICAgICAgICAgICAgICAg ICAgICAgICAgSU8gKERlY29kZTE2LCAweDAwODksIDB4MDA4OSwgMHgwMCwg MHgwMykNCiAgICAgICAgICAgICAgICAgICAgICAgIElPIChEZWNvZGUxNiwg MHgwMDhGLCAweDAwOEYsIDB4MDAsIDB4MDEpDQogICAgICAgICAgICAgICAg ICAgICAgICBJTyAoRGVjb2RlMTYsIDB4MDBDMCwgMHgwMEMwLCAweDAwLCAw eDIwKQ0KICAgICAgICAgICAgICAgICAgICB9KQ0KICAgICAgICAgICAgICAg IH0NCg0KICAgICAgICAgICAgICAgIERldmljZSAoVE1SKQ0KICAgICAgICAg ICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgTmFtZSAoX0hJRCwgRWlz YUlkICgiUE5QMDEwMCIpKQ0KICAgICAgICAgICAgICAgICAgICBOYW1lIChf Q1JTLCBSZXNvdXJjZVRlbXBsYXRlICgpDQogICAgICAgICAgICAgICAgICAg IHsNCiAgICAgICAgICAgICAgICAgICAgICAgIElPIChEZWNvZGUxNiwgMHgw MDQwLCAweDAwNDAsIDB4MDAsIDB4MDQpDQogICAgICAgICAgICAgICAgICAg ICAgICBJUlFOb0ZsYWdzICgpIHswfQ0KICAgICAgICAgICAgICAgICAgICB9 KQ0KICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgIERldmlj ZSAoUlRDMCkNCiAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAg ICAgIE5hbWUgKF9ISUQsIEVpc2FJZCAoIlBOUDBCMDAiKSkNCiAgICAgICAg ICAgICAgICAgICAgTmFtZSAoX0NSUywgUmVzb3VyY2VUZW1wbGF0ZSAoKQ0K ICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAg ICBJTyAoRGVjb2RlMTYsIDB4MDA3MCwgMHgwMDcwLCAweDAwLCAweDAyKQ0K ICAgICAgICAgICAgICAgICAgICAgICAgSVJRTm9GbGFncyAoKSB7OH0NCiAg ICAgICAgICAgICAgICAgICAgfSkNCiAgICAgICAgICAgICAgICB9DQoNCiAg ICAgICAgICAgICAgICBEZXZpY2UgKFBTMkspDQogICAgICAgICAgICAgICAg ew0KICAgICAgICAgICAgICAgICAgICBOYW1lIChfSElELCBFaXNhSWQgKCJQ TlAwMzAzIikpDQogICAgICAgICAgICAgICAgICAgIE5hbWUgKF9DSUQsIDB4 MEIwM0QwNDEpDQogICAgICAgICAgICAgICAgICAgIE1ldGhvZCAoX1NUQSwg MCwgTm90U2VyaWFsaXplZCkNCiAgICAgICAgICAgICAgICAgICAgew0KICAg ICAgICAgICAgICAgICAgICAgICAgU2hpZnRMZWZ0ICgweDAxLCAweDBBLCBM b2NhbDApDQogICAgICAgICAgICAgICAgICAgICAgICBJZiAoQW5kIChJT1NU LCBMb2NhbDApKQ0KICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAg ICAgICAgICAgICAgICAgICAgICAgIFJldHVybiAoMHgwRikNCiAgICAgICAg ICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICAgICAg UmV0dXJuICgweDAwKQ0KICAgICAgICAgICAgICAgICAgICB9DQoNCiAgICAg ICAgICAgICAgICAgICAgTmFtZSAoX0NSUywgUmVzb3VyY2VUZW1wbGF0ZSAo KQ0KICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAg ICAgICBJTyAoRGVjb2RlMTYsIDB4MDA2MCwgMHgwMDYwLCAweDAwLCAweDAx KQ0KICAgICAgICAgICAgICAgICAgICAgICAgSU8gKERlY29kZTE2LCAweDAw NjQsIDB4MDA2NCwgMHgwMCwgMHgwMSkNCiAgICAgICAgICAgICAgICAgICAg ICAgIElSUU5vRmxhZ3MgKCkgezF9DQogICAgICAgICAgICAgICAgICAgIH0p DQogICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgRGV2aWNl IChQUzJNKQ0KICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAg ICAgTmFtZSAoX0hJRCwgRWlzYUlkICgiUE5QMEYxMiIpKQ0KICAgICAgICAg ICAgICAgICAgICBOYW1lIChfQ0lELCAweDEzMEZEMDQxKQ0KICAgICAgICAg ICAgICAgICAgICBNZXRob2QgKF9TVEEsIDAsIE5vdFNlcmlhbGl6ZWQpDQog ICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAg IFNoaWZ0TGVmdCAoMHgwMSwgMHgwQywgTG9jYWwwKQ0KICAgICAgICAgICAg ICAgICAgICAgICAgSWYgKEFuZCAoSU9TVCwgTG9jYWwwKSkNCiAgICAgICAg ICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAg ICBSZXR1cm4gKDB4MEYpDQogICAgICAgICAgICAgICAgICAgICAgICB9DQoN CiAgICAgICAgICAgICAgICAgICAgICAgIFJldHVybiAoMHgwMCkNCiAgICAg ICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgICAgIE5hbWUg KENSUzEsIFJlc291cmNlVGVtcGxhdGUgKCkNCiAgICAgICAgICAgICAgICAg ICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgSVJRTm9GbGFncyAoKSB7 MTJ9DQogICAgICAgICAgICAgICAgICAgIH0pDQogICAgICAgICAgICAgICAg ICAgIE5hbWUgKENSUzIsIFJlc291cmNlVGVtcGxhdGUgKCkNCiAgICAgICAg ICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgSU8gKERl Y29kZTE2LCAweDAwNjAsIDB4MDA2MCwgMHgwMCwgMHgwMSkNCiAgICAgICAg ICAgICAgICAgICAgICAgIElPIChEZWNvZGUxNiwgMHgwMDY0LCAweDAwNjQs IDB4MDAsIDB4MDEpDQogICAgICAgICAgICAgICAgICAgICAgICBJUlFOb0Zs YWdzICgpIHsxMn0NCiAgICAgICAgICAgICAgICAgICAgfSkNCiAgICAgICAg ICAgICAgICAgICAgTWV0aG9kIChfQ1JTLCAwLCBOb3RTZXJpYWxpemVkKQ0K ICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAg ICBTaGlmdExlZnQgKDB4MDEsIDB4MEEsIExvY2FsMCkNCiAgICAgICAgICAg ICAgICAgICAgICAgIElmIChBbmQgKElPU1QsIExvY2FsMCkpDQogICAgICAg ICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAg ICAgUmV0dXJuIChDUlMxKQ0KICAgICAgICAgICAgICAgICAgICAgICAgfQ0K ICAgICAgICAgICAgICAgICAgICAgICAgRWxzZQ0KICAgICAgICAgICAgICAg ICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJldHVy biAoQ1JTMikNCiAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAg ICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAg ICAgICAgIERldmljZSAoU1BLUikNCiAgICAgICAgICAgICAgICB7DQogICAg ICAgICAgICAgICAgICAgIE5hbWUgKF9ISUQsIEVpc2FJZCAoIlBOUDA4MDAi KSkNCiAgICAgICAgICAgICAgICAgICAgTmFtZSAoX0NSUywgUmVzb3VyY2VU ZW1wbGF0ZSAoKQ0KICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAg ICAgICAgICAgICAgICBJTyAoRGVjb2RlMTYsIDB4MDA2MSwgMHgwMDYxLCAw eDAwLCAweDAxKQ0KICAgICAgICAgICAgICAgICAgICB9KQ0KICAgICAgICAg ICAgICAgIH0NCg0KICAgICAgICAgICAgICAgIERldmljZSAoQ09QUikNCiAg ICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgIE5hbWUgKF9I SUQsIEVpc2FJZCAoIlBOUDBDMDQiKSkNCiAgICAgICAgICAgICAgICAgICAg TmFtZSAoX0NSUywgUmVzb3VyY2VUZW1wbGF0ZSAoKQ0KICAgICAgICAgICAg ICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICBJTyAoRGVjb2Rl MTYsIDB4MDBGMCwgMHgwMEYwLCAweDAwLCAweDEwKQ0KICAgICAgICAgICAg ICAgICAgICAgICAgSVJRTm9GbGFncyAoKSB7MTN9DQogICAgICAgICAgICAg ICAgICAgIH0pDQogICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAg ICAgRGV2aWNlIChVQVIyKQ0KICAgICAgICAgICAgICAgIHsNCiAgICAgICAg ICAgICAgICAgICAgTmFtZSAoX1VJRCwgMHgwMSkNCiAgICAgICAgICAgICAg ICAgICAgTWV0aG9kIChfSElELCAwLCBOb3RTZXJpYWxpemVkKQ0KICAgICAg ICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICBSZXR1 cm4gKFVISUQgKDB4MDEpKQ0KICAgICAgICAgICAgICAgICAgICB9DQoNCiAg ICAgICAgICAgICAgICAgICAgTWV0aG9kIChfU1RBLCAwLCBOb3RTZXJpYWxp emVkKQ0KICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAg ICAgICAgICBSZXR1cm4gKERTVEEgKDB4MDEpKQ0KICAgICAgICAgICAgICAg ICAgICB9DQoNCiAgICAgICAgICAgICAgICAgICAgTWV0aG9kIChfRElTLCAw LCBOb3RTZXJpYWxpemVkKQ0KICAgICAgICAgICAgICAgICAgICB7DQogICAg ICAgICAgICAgICAgICAgICAgICBEQ05UICgweDAxLCAweDAwKQ0KICAgICAg ICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAgICAgTWV0aG9k IChfQ1JTLCAwLCBOb3RTZXJpYWxpemVkKQ0KICAgICAgICAgICAgICAgICAg ICB7DQogICAgICAgICAgICAgICAgICAgICAgICBSZXR1cm4gKERDUlMgKDB4 MDEpKQ0KICAgICAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAg ICAgICAgTWV0aG9kIChfU1JTLCAxLCBOb3RTZXJpYWxpemVkKQ0KICAgICAg ICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICBEU1JT IChBcmcwLCAweDAxKQ0KICAgICAgICAgICAgICAgICAgICB9DQoNCiAgICAg ICAgICAgICAgICAgICAgTWV0aG9kIChfUFJTLCAwLCBOb3RTZXJpYWxpemVk KQ0KICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAg ICAgICBJZiAoRklSTSAoMHgwMSkpDQogICAgICAgICAgICAgICAgICAgICAg ICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgUmV0dXJuIChJUlBS KQ0KICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAg ICAgICAgICAgRWxzZQ0KICAgICAgICAgICAgICAgICAgICAgICAgew0KICAg ICAgICAgICAgICAgICAgICAgICAgICAgIFJldHVybiAoSVJQMikNCiAgICAg ICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAgICAgfQ0K DQogICAgICAgICAgICAgICAgICAgIE5hbWUgKElSUFIsIFJlc291cmNlVGVt cGxhdGUgKCkNCiAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAg ICAgICAgICAgICAgSVJRTm9GbGFncyAoKSB7Myw0LDUsNiwxMCwxMSwxMn0N CiAgICAgICAgICAgICAgICAgICAgICAgIFN0YXJ0RGVwZW5kZW50Rm5Ob1By aSAoKQ0KICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAg ICAgICAgICAgICAgICAgIERNQSAoQ29tcGF0aWJpbGl0eSwgTm90QnVzTWFz dGVyLCBUcmFuc2ZlcjgpIHsxLDIsM30NCiAgICAgICAgICAgICAgICAgICAg ICAgICAgICBJTyAoRGVjb2RlMTYsIDB4MDNGOCwgMHgwM0Y4LCAweDAxLCAw eDA4KQ0KICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAg ICAgICAgICAgICAgU3RhcnREZXBlbmRlbnRGbk5vUHJpICgpDQogICAgICAg ICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAg ICAgRE1BIChDb21wYXRpYmlsaXR5LCBOb3RCdXNNYXN0ZXIsIFRyYW5zZmVy OCkgezEsMiwzfQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIElPIChE ZWNvZGUxNiwgMHgwMkY4LCAweDAyRjgsIDB4MDEsIDB4MDgpDQogICAgICAg ICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgICAgICBT dGFydERlcGVuZGVudEZuTm9QcmkgKCkNCiAgICAgICAgICAgICAgICAgICAg ICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBETUEgKENvbXBh dGliaWxpdHksIE5vdEJ1c01hc3RlciwgVHJhbnNmZXI4KSB7MSwyLDN9DQog ICAgICAgICAgICAgICAgICAgICAgICAgICAgSU8gKERlY29kZTE2LCAweDAz RTgsIDB4MDNFOCwgMHgwMSwgMHgwOCkNCiAgICAgICAgICAgICAgICAgICAg ICAgIH0NCiAgICAgICAgICAgICAgICAgICAgICAgIFN0YXJ0RGVwZW5kZW50 Rm5Ob1ByaSAoKQ0KICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAg ICAgICAgICAgICAgICAgICAgICAgIERNQSAoQ29tcGF0aWJpbGl0eSwgTm90 QnVzTWFzdGVyLCBUcmFuc2ZlcjgpIHsxLDIsM30NCiAgICAgICAgICAgICAg ICAgICAgICAgICAgICBJTyAoRGVjb2RlMTYsIDB4MDJFOCwgMHgwMkU4LCAw eDAxLCAweDA4KQ0KICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAg ICAgICAgICAgICAgICAgICAgRW5kRGVwZW5kZW50Rm4gKCkNCiAgICAgICAg ICAgICAgICAgICAgfSkNCiAgICAgICAgICAgICAgICAgICAgTmFtZSAoSVJQ MiwgUmVzb3VyY2VUZW1wbGF0ZSAoKQ0KICAgICAgICAgICAgICAgICAgICB7 DQogICAgICAgICAgICAgICAgICAgICAgICBJUlFOb0ZsYWdzICgpIHszLDQs NSw2LDEwLDExLDEyfQ0KICAgICAgICAgICAgICAgICAgICAgICAgU3RhcnRE ZXBlbmRlbnRGbk5vUHJpICgpDQogICAgICAgICAgICAgICAgICAgICAgICB7 DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgSU8gKERlY29kZTE2LCAw eDAzRjgsIDB4MDNGOCwgMHgwMSwgMHgwOCkNCiAgICAgICAgICAgICAgICAg ICAgICAgIH0NCiAgICAgICAgICAgICAgICAgICAgICAgIFN0YXJ0RGVwZW5k ZW50Rm5Ob1ByaSAoKQ0KICAgICAgICAgICAgICAgICAgICAgICAgew0KICAg ICAgICAgICAgICAgICAgICAgICAgICAgIElPIChEZWNvZGUxNiwgMHgwMkY4 LCAweDAyRjgsIDB4MDEsIDB4MDgpDQogICAgICAgICAgICAgICAgICAgICAg ICB9DQogICAgICAgICAgICAgICAgICAgICAgICBTdGFydERlcGVuZGVudEZu Tm9QcmkgKCkNCiAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAg ICAgICAgICAgICAgICAgICAgICBJTyAoRGVjb2RlMTYsIDB4MDNFOCwgMHgw M0U4LCAweDAxLCAweDA4KQ0KICAgICAgICAgICAgICAgICAgICAgICAgfQ0K ICAgICAgICAgICAgICAgICAgICAgICAgU3RhcnREZXBlbmRlbnRGbk5vUHJp ICgpDQogICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAg ICAgICAgICAgICAgICAgSU8gKERlY29kZTE2LCAweDAyRTgsIDB4MDJFOCwg MHgwMSwgMHgwOCkNCiAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAg ICAgICAgICAgICAgICAgICAgIEVuZERlcGVuZGVudEZuICgpDQogICAgICAg ICAgICAgICAgICAgIH0pDQogICAgICAgICAgICAgICAgfQ0KDQogICAgICAg ICAgICAgICAgRGV2aWNlIChMUFRFKQ0KICAgICAgICAgICAgICAgIHsNCiAg ICAgICAgICAgICAgICAgICAgTWV0aG9kIChfSElELCAwLCBOb3RTZXJpYWxp emVkKQ0KICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAg ICAgICAgICBJZiAoTFBUTSAoMHgwMikpDQogICAgICAgICAgICAgICAgICAg ICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgUmV0dXJuICgw eDAxMDREMDQxKQ0KICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAg ICAgICAgICAgICAgICAgICAgRWxzZQ0KICAgICAgICAgICAgICAgICAgICAg ICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJldHVybiAoMHgw MDA0RDA0MSkNCiAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAg ICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgICAgIE1ldGhvZCAo X1NUQSwgMCwgTm90U2VyaWFsaXplZCkNCiAgICAgICAgICAgICAgICAgICAg ew0KICAgICAgICAgICAgICAgICAgICAgICAgUmV0dXJuIChEU1RBICgweDAy KSkNCiAgICAgICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAg ICAgIE1ldGhvZCAoX0RJUywgMCwgTm90U2VyaWFsaXplZCkNCiAgICAgICAg ICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgRENOVCAo MHgwMiwgMHgwMCkNCiAgICAgICAgICAgICAgICAgICAgfQ0KDQogICAgICAg ICAgICAgICAgICAgIE1ldGhvZCAoX0NSUywgMCwgTm90U2VyaWFsaXplZCkN CiAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAg ICAgRENSUyAoMHgwMikNCiAgICAgICAgICAgICAgICAgICAgICAgIElmIChM UFRNICgweDAyKSkNCiAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAg ICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoSVJRTSwgSVJRRSkNCiAg ICAgICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoRE1BTSwgRE1BRSkN CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoSU8xMSwgSU8y MSkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoSU8xMiwg SU8yMikNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoTEVO MSwgTEVOMikNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGQgKElP MjEsIDB4MDQwMCwgSU8zMSkNCiAgICAgICAgICAgICAgICAgICAgICAgICAg ICBTdG9yZSAoSU8zMSwgSU8zMikNCiAgICAgICAgICAgICAgICAgICAgICAg ICAgICBTdG9yZSAoTEVOMiwgTEVOMykNCiAgICAgICAgICAgICAgICAgICAg ICAgICAgICBSZXR1cm4gKENSUzIpDQogICAgICAgICAgICAgICAgICAgICAg ICB9DQogICAgICAgICAgICAgICAgICAgICAgICBFbHNlDQogICAgICAgICAg ICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAg UmV0dXJuIChDUlMxKQ0KICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAg ICAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAgICAgTWV0 aG9kIChfU1JTLCAxLCBOb3RTZXJpYWxpemVkKQ0KICAgICAgICAgICAgICAg ICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICBEU1JTIChBcmcwLCAw eDAyKQ0KICAgICAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAg ICAgICAgTWV0aG9kIChfUFJTLCAwLCBOb3RTZXJpYWxpemVkKQ0KICAgICAg ICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICBJZiAo TFBUTSAoMHgwMikpDQogICAgICAgICAgICAgICAgICAgICAgICB7DQogICAg ICAgICAgICAgICAgICAgICAgICAgICAgUmV0dXJuIChFUFBSKQ0KICAgICAg ICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICAgICAg RWxzZQ0KICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAg ICAgICAgICAgICAgICAgIFJldHVybiAoTFBQUikNCiAgICAgICAgICAgICAg ICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAgICAgfQ0KDQogICAgICAg ICAgICAgICAgICAgIE5hbWUgKExQUFIsIFJlc291cmNlVGVtcGxhdGUgKCkN CiAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAg ICAgU3RhcnREZXBlbmRlbnRGbk5vUHJpICgpDQogICAgICAgICAgICAgICAg ICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgSVJRTm9G bGFncyAoKSB7Myw0LDUsNiw3LDEwLDExLDEyfQ0KICAgICAgICAgICAgICAg ICAgICAgICAgICAgIERNQSAoQ29tcGF0aWJpbGl0eSwgTm90QnVzTWFzdGVy LCBUcmFuc2ZlcjgpIHt9DQogICAgICAgICAgICAgICAgICAgICAgICAgICAg SU8gKERlY29kZTE2LCAweDAzNzgsIDB4MDM3OCwgMHgwMSwgMHgwOCkNCiAg ICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAgICAg ICAgIFN0YXJ0RGVwZW5kZW50Rm5Ob1ByaSAoKQ0KICAgICAgICAgICAgICAg ICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIElSUU5v RmxhZ3MgKCkgezMsNCw1LDYsNywxMCwxMSwxMn0NCiAgICAgICAgICAgICAg ICAgICAgICAgICAgICBETUEgKENvbXBhdGliaWxpdHksIE5vdEJ1c01hc3Rl ciwgVHJhbnNmZXI4KSB7fQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAg IElPIChEZWNvZGUxNiwgMHgwMjc4LCAweDAyNzgsIDB4MDEsIDB4MDgpDQog ICAgICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICAg ICAgICBTdGFydERlcGVuZGVudEZuTm9QcmkgKCkNCiAgICAgICAgICAgICAg ICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBJUlFO b0ZsYWdzICgpIHszLDQsNSw2LDcsMTAsMTEsMTJ9DQogICAgICAgICAgICAg ICAgICAgICAgICAgICAgRE1BIChDb21wYXRpYmlsaXR5LCBOb3RCdXNNYXN0 ZXIsIFRyYW5zZmVyOCkge30NCiAgICAgICAgICAgICAgICAgICAgICAgICAg ICBJTyAoRGVjb2RlMTYsIDB4MDNCQywgMHgwM0JDLCAweDAxLCAweDA0KQ0K ICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAg ICAgICAgLyoqKiBNaXNzaW5nIEVuZERlcGVuZGVudEZ1bmN0aW9ucyBkZXNj cmlwdG9yICovICAgICAgICAgICAgICAgICAgICB9KQ0KICAgICAgICAgICAg ICAgICAgICBOYW1lIChFUFBSLCBSZXNvdXJjZVRlbXBsYXRlICgpDQogICAg ICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgIElS UU5vRmxhZ3MgKCkgezMsNCw1LDYsNywxMCwxMSwxMn0NCiAgICAgICAgICAg ICAgICAgICAgICAgIFN0YXJ0RGVwZW5kZW50Rm5Ob1ByaSAoKQ0KICAgICAg ICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAg ICAgIERNQSAoQ29tcGF0aWJpbGl0eSwgTm90QnVzTWFzdGVyLCBUcmFuc2Zl cjgpIHsxLDIsM30NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBJTyAo RGVjb2RlMTYsIDB4MDM3OCwgMHgwMzc4LCAweDAxLCAweDA4KQ0KICAgICAg ICAgICAgICAgICAgICAgICAgICAgIElPIChEZWNvZGUxNiwgMHgwNzc4LCAw eDA3NzgsIDB4MDEsIDB4MDgpDQogICAgICAgICAgICAgICAgICAgICAgICB9 DQogICAgICAgICAgICAgICAgICAgICAgICBTdGFydERlcGVuZGVudEZuTm9Q cmkgKCkNCiAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAg ICAgICAgICAgICAgICAgICBETUEgKENvbXBhdGliaWxpdHksIE5vdEJ1c01h c3RlciwgVHJhbnNmZXI4KSB7MSwyLDN9DQogICAgICAgICAgICAgICAgICAg ICAgICAgICAgSU8gKERlY29kZTE2LCAweDAyNzgsIDB4MDI3OCwgMHgwMSwg MHgwOCkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBJTyAoRGVjb2Rl MTYsIDB4MDY3OCwgMHgwNjc4LCAweDAxLCAweDA4KQ0KICAgICAgICAgICAg ICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICAgICAgU3RhcnRE ZXBlbmRlbnRGbk5vUHJpICgpDQogICAgICAgICAgICAgICAgICAgICAgICB7 DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgRE1BIChDb21wYXRpYmls aXR5LCBOb3RCdXNNYXN0ZXIsIFRyYW5zZmVyOCkgezEsMiwzfQ0KICAgICAg ICAgICAgICAgICAgICAgICAgICAgIElPIChEZWNvZGUxNiwgMHgwM0JDLCAw eDAzQkMsIDB4MDEsIDB4MDQpDQogICAgICAgICAgICAgICAgICAgICAgICAg ICAgSU8gKERlY29kZTE2LCAweDA3QkMsIDB4MDdCQywgMHgwMSwgMHgwNCkN CiAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAg ICAgICAgIFN0YXJ0RGVwZW5kZW50Rm5Ob1ByaSAoKQ0KICAgICAgICAgICAg ICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIERN QSAoQ29tcGF0aWJpbGl0eSwgTm90QnVzTWFzdGVyLCBUcmFuc2ZlcjgpIHt9 DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgSU8gKERlY29kZTE2LCAw eDAzNzgsIDB4MDM3OCwgMHgwMSwgMHgwOCkNCiAgICAgICAgICAgICAgICAg ICAgICAgICAgICBJTyAoRGVjb2RlMTYsIDB4MDc3OCwgMHgwNzc4LCAweDAx LCAweDA4KQ0KICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAg ICAgICAgICAgICAgICAgU3RhcnREZXBlbmRlbnRGbk5vUHJpICgpDQogICAg ICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAg ICAgICAgRE1BIChDb21wYXRpYmlsaXR5LCBOb3RCdXNNYXN0ZXIsIFRyYW5z ZmVyOCkge30NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBJTyAoRGVj b2RlMTYsIDB4MDI3OCwgMHgwMjc4LCAweDAxLCAweDA4KQ0KICAgICAgICAg ICAgICAgICAgICAgICAgICAgIElPIChEZWNvZGUxNiwgMHgwNjc4LCAweDA2 NzgsIDB4MDEsIDB4MDgpDQogICAgICAgICAgICAgICAgICAgICAgICB9DQog ICAgICAgICAgICAgICAgICAgICAgICBTdGFydERlcGVuZGVudEZuTm9Qcmkg KCkNCiAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAg ICAgICAgICAgICAgICBETUEgKENvbXBhdGliaWxpdHksIE5vdEJ1c01hc3Rl ciwgVHJhbnNmZXI4KSB7fQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAg IElPIChEZWNvZGUxNiwgMHgwM0JDLCAweDAzQkMsIDB4MDEsIDB4MDQpDQog ICAgICAgICAgICAgICAgICAgICAgICAgICAgSU8gKERlY29kZTE2LCAweDA3 QkMsIDB4MDdCQywgMHgwMSwgMHgwNCkNCiAgICAgICAgICAgICAgICAgICAg ICAgIH0NCiAgICAgICAgICAgICAgICAgICAgICAgIEVuZERlcGVuZGVudEZu ICgpDQogICAgICAgICAgICAgICAgICAgIH0pDQogICAgICAgICAgICAgICAg fQ0KDQogICAgICAgICAgICAgICAgRGV2aWNlIChTSU9SKQ0KICAgICAgICAg ICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgTmFtZSAoX0hJRCwgRWlz YUlkICgiUE5QMEMwMiIpKQ0KICAgICAgICAgICAgICAgICAgICBNZXRob2Qg KF9VSUQsIDAsIE5vdFNlcmlhbGl6ZWQpDQogICAgICAgICAgICAgICAgICAg IHsNCiAgICAgICAgICAgICAgICAgICAgICAgIFJldHVybiAoU1BJTykNCiAg ICAgICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgICAgIE5h bWUgKENSUywgUmVzb3VyY2VUZW1wbGF0ZSAoKQ0KICAgICAgICAgICAgICAg ICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICBJTyAoRGVjb2RlMTYs IDB4MDAwMCwgMHgwMDAwLCAweDAwLCAweDAwKQ0KICAgICAgICAgICAgICAg ICAgICAgICAgSU8gKERlY29kZTE2LCAweDAwMDAsIDB4MDAwMCwgMHgwMCwg MHgwMCkNCiAgICAgICAgICAgICAgICAgICAgICAgIElPIChEZWNvZGUxNiwg MHgwMDAwLCAweDAwMDAsIDB4MDAsIDB4MDApDQogICAgICAgICAgICAgICAg ICAgIH0pDQogICAgICAgICAgICAgICAgICAgIE1ldGhvZCAoX0NSUywgMCwg Tm90U2VyaWFsaXplZCkNCiAgICAgICAgICAgICAgICAgICAgew0KICAgICAg ICAgICAgICAgICAgICAgICAgSWYgKExBbmQgKExOb3QgKExFcXVhbCAoU1BJ TywgMHgwM0YwKSksIExHcmVhdGVyIChTUElPLCAweEYwKSkpDQogICAgICAg ICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAg ICAgQ3JlYXRlV29yZEZpZWxkIChDUlMsIDB4MDIsIEdQMTApDQogICAgICAg ICAgICAgICAgICAgICAgICAgICAgQ3JlYXRlV29yZEZpZWxkIChDUlMsIDB4 MDQsIEdQMTEpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgQ3JlYXRl Qnl0ZUZpZWxkIChDUlMsIDB4MDcsIEdQTDEpDQogICAgICAgICAgICAgICAg ICAgICAgICAgICAgU3RvcmUgKFNQSU8sIEdQMTApDQogICAgICAgICAgICAg ICAgICAgICAgICAgICAgU3RvcmUgKFNQSU8sIEdQMTEpDQogICAgICAgICAg ICAgICAgICAgICAgICAgICAgU3RvcmUgKDB4MDIsIEdQTDEpDQogICAgICAg ICAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAgICAgICAg IElmIChJTzFCKQ0KICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAg ICAgICAgICAgICAgICAgICAgICAgIENyZWF0ZVdvcmRGaWVsZCAoQ1JTLCAw eDBBLCBHUDIwKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIENyZWF0 ZVdvcmRGaWVsZCAoQ1JTLCAweDBDLCBHUDIxKQ0KICAgICAgICAgICAgICAg ICAgICAgICAgICAgIENyZWF0ZUJ5dGVGaWVsZCAoQ1JTLCAweDBGLCBHUEwy KQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlIChJTzFCLCBH UDIwKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlIChJTzFC LCBHUDIxKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlIChJ TzFMLCBHUEwyKQ0KICAgICAgICAgICAgICAgICAgICAgICAgfQ0KDQogICAg ICAgICAgICAgICAgICAgICAgICBJZiAoSU9YQikNCiAgICAgICAgICAgICAg ICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBDcmVh dGVXb3JkRmllbGQgKENSUywgMHgxMiwgR1AzMCkNCiAgICAgICAgICAgICAg ICAgICAgICAgICAgICBDcmVhdGVXb3JkRmllbGQgKENSUywgMHgxNCwgR1Az MSkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBDcmVhdGVCeXRlRmll bGQgKENSUywgMHgxNywgR1BMMykNCiAgICAgICAgICAgICAgICAgICAgICAg ICAgICBTdG9yZSAoSU9YQiwgR1AzMCkNCiAgICAgICAgICAgICAgICAgICAg ICAgICAgICBTdG9yZSAoSU9YQiwgR1AzMSkNCiAgICAgICAgICAgICAgICAg ICAgICAgICAgICBTdG9yZSAoSU9YTCwgR1BMMykNCiAgICAgICAgICAgICAg ICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICAgICAgUmV0dXJu IChDUlMpDQogICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAg ICB9DQoNCiAgICAgICAgICAgICAgICBOYW1lIChEQ0FULCBQYWNrYWdlICgw eDE1KQ0KICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAg MHgwMywgDQogICAgICAgICAgICAgICAgICAgIDB4MDIsIA0KICAgICAgICAg ICAgICAgICAgICAweDAxLCANCiAgICAgICAgICAgICAgICAgICAgMHgwMCwg DQogICAgICAgICAgICAgICAgICAgIDB4RkYsIA0KICAgICAgICAgICAgICAg ICAgICAweDBDLCANCiAgICAgICAgICAgICAgICAgICAgMHhGRiwgDQogICAg ICAgICAgICAgICAgICAgIDB4RkYsIA0KICAgICAgICAgICAgICAgICAgICAw eDBCLCANCiAgICAgICAgICAgICAgICAgICAgMHhGRiwgDQogICAgICAgICAg ICAgICAgICAgIDB4RkYsIA0KICAgICAgICAgICAgICAgICAgICAweEZGLCAN CiAgICAgICAgICAgICAgICAgICAgMHhGRiwgDQogICAgICAgICAgICAgICAg ICAgIDB4RkYsIA0KICAgICAgICAgICAgICAgICAgICAweEZGLCANCiAgICAg ICAgICAgICAgICAgICAgMHhGRiwgDQogICAgICAgICAgICAgICAgICAgIDB4 RkYsIA0KICAgICAgICAgICAgICAgICAgICAweEZGLCANCiAgICAgICAgICAg ICAgICAgICAgMHhGRiwgDQogICAgICAgICAgICAgICAgICAgIDB4RkYsIA0K ICAgICAgICAgICAgICAgICAgICAweEZGDQogICAgICAgICAgICAgICAgfSkN CiAgICAgICAgICAgICAgICBNdXRleCAoTVVUMCwgMHgwMCkNCiAgICAgICAg ICAgICAgICBNZXRob2QgKEVORkcsIDEsIE5vdFNlcmlhbGl6ZWQpDQogICAg ICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICBBY3F1aXJlIChN VVQwLCAweDFGRkYpDQogICAgICAgICAgICAgICAgICAgIFN0b3JlIChBcmcw LCBMRE4pDQogICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAg TWV0aG9kIChFWEZHLCAwLCBOb3RTZXJpYWxpemVkKQ0KICAgICAgICAgICAg ICAgIHsNCiAgICAgICAgICAgICAgICAgICAgUmVsZWFzZSAoTVVUMCkNCiAg ICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICBNZXRob2QgKExQ VE0sIDEsIE5vdFNlcmlhbGl6ZWQpDQogICAgICAgICAgICAgICAgew0KICAg ICAgICAgICAgICAgICAgICBFTkZHIChDR0xEIChBcmcwKSkNCiAgICAgICAg ICAgICAgICAgICAgQW5kIChPUFQxLCAweDgwLCBMb2NhbDApDQogICAgICAg ICAgICAgICAgICAgIEVYRkcgKCkNCiAgICAgICAgICAgICAgICAgICAgUmV0 dXJuIChMb2NhbDApDQogICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAg ICAgICAgTWV0aG9kIChGSVJNLCAxLCBOb3RTZXJpYWxpemVkKQ0KICAgICAg ICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgRU5GRyAoQ0dMRCAo QXJnMCkpDQogICAgICAgICAgICAgICAgICAgIFN0b3JlIChETUNILCBMb2Nh bDApDQogICAgICAgICAgICAgICAgICAgIEVYRkcgKCkNCiAgICAgICAgICAg ICAgICAgICAgSWYgKExBbmQgKExMZXNzIChMb2NhbDAsIDB4MDQpLCBMTm90 IChMRXF1YWwgKEFuZCAoTG9jYWwwLCAweDAzLCBMb2NhbDEpLCAweDAwKSkp KQ0KICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAg ICAgICBTdG9yZSAoMHgwMSwgTG9jYWwyKQ0KICAgICAgICAgICAgICAgICAg ICB9DQogICAgICAgICAgICAgICAgICAgIEVsc2UNCiAgICAgICAgICAgICAg ICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKDB4MDAs IExvY2FsMikNCiAgICAgICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAg ICAgICAgICAgIFJldHVybiAoTG9jYWwyKQ0KICAgICAgICAgICAgICAgIH0N Cg0KICAgICAgICAgICAgICAgIE1ldGhvZCAoVUhJRCwgMSwgTm90U2VyaWFs aXplZCkNCiAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAg IElmIChMRXF1YWwgKEFyZzAsIDB4MDEpKQ0KICAgICAgICAgICAgICAgICAg ICB7DQogICAgICAgICAgICAgICAgICAgICAgICBFTkZHIChDR0xEIChBcmcw KSkNCiAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlIChETUNILCBMb2Nh bDApDQogICAgICAgICAgICAgICAgICAgICAgICBFWEZHICgpDQogICAgICAg ICAgICAgICAgICAgICAgICBJZiAoTEFuZCAoTExlc3MgKExvY2FsMCwgMHgw NCksIExOb3QgKExFcXVhbCAoQW5kIChMb2NhbDAsIDB4MDMsIExvY2FsMSks IDB4MDApKSkpDQogICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAg ICAgICAgICAgICAgICAgICAgICAgUmV0dXJuICgweDAxNjA2MzNBKQ0KICAg ICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICAg ICAgRWxzZQ0KICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAg ICAgICAgICAgICAgICAgICAgIFJldHVybiAoMHgxMDA1RDA0MSkNCiAgICAg ICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAgICAgfQ0K DQogICAgICAgICAgICAgICAgICAgIFJldHVybiAoMHgwMTA1RDA0MSkNCiAg ICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICBNZXRob2QgKFNJ T1MsIDEsIE5vdFNlcmlhbGl6ZWQpDQogICAgICAgICAgICAgICAgew0KICAg ICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgIE1ldGhvZCAoU0lP VywgMSwgTm90U2VyaWFsaXplZCkNCiAgICAgICAgICAgICAgICB7DQogICAg ICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgTWV0aG9kIChTSU9I LCAwLCBOb3RTZXJpYWxpemVkKQ0KICAgICAgICAgICAgICAgIHsNCiAgICAg ICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICBPcGVyYXRpb25SZWdp b24gKElPSUQsIFN5c3RlbUlPLCBTUElPLCAweDAyKQ0KICAgICAgICAgICAg ICAgIEZpZWxkIChJT0lELCBCeXRlQWNjLCBOb0xvY2ssIFByZXNlcnZlKQ0K ICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgSU5EWCwg ICA4LCANCiAgICAgICAgICAgICAgICAgICAgREFUQSwgICA4DQogICAgICAg ICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgSW5kZXhGaWVsZCAoSU5E WCwgREFUQSwgQnl0ZUFjYywgTm9Mb2NrLCBQcmVzZXJ2ZSkNCiAgICAgICAg ICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgIE9mZnNldCAoMHgwNyks IA0KICAgICAgICAgICAgICAgICAgICBMRE4sICAgIDgsIA0KICAgICAgICAg ICAgICAgICAgICBPZmZzZXQgKDB4MjIpLCANCiAgICAgICAgICAgICAgICAg ICAgRkRDUCwgICAxLCANCiAgICAgICAgICAgICAgICAgICAgICAgICwgICAy LCANCiAgICAgICAgICAgICAgICAgICAgTFBUUCwgICAxLCANCiAgICAgICAg ICAgICAgICAgICAgVVJBUCwgICAxLCANCiAgICAgICAgICAgICAgICAgICAg VVJCUCwgICAxLCANCiAgICAgICAgICAgICAgICAgICAgT2Zmc2V0ICgweDMw KSwgDQogICAgICAgICAgICAgICAgICAgIEFDVFIsICAgOCwgDQogICAgICAg ICAgICAgICAgICAgIE9mZnNldCAoMHg2MCksIA0KICAgICAgICAgICAgICAg ICAgICBJT0FILCAgIDgsIA0KICAgICAgICAgICAgICAgICAgICBJT0FMLCAg IDgsIA0KICAgICAgICAgICAgICAgICAgICBJT0gyLCAgIDgsIA0KICAgICAg ICAgICAgICAgICAgICBJT0wyLCAgIDgsIA0KICAgICAgICAgICAgICAgICAg ICBPZmZzZXQgKDB4NzApLCANCiAgICAgICAgICAgICAgICAgICAgSU5UUiwg ICA4LCANCiAgICAgICAgICAgICAgICAgICAgT2Zmc2V0ICgweDc0KSwgDQog ICAgICAgICAgICAgICAgICAgIERNQ0gsICAgOCwgDQogICAgICAgICAgICAg ICAgICAgIE9mZnNldCAoMHhGMCksIA0KICAgICAgICAgICAgICAgICAgICBP UFQxLCAgIDgsIA0KICAgICAgICAgICAgICAgICAgICBPUFQyLCAgIDgsIA0K ICAgICAgICAgICAgICAgICAgICBPUFQzLCAgIDgNCiAgICAgICAgICAgICAg ICB9DQoNCiAgICAgICAgICAgICAgICBNZXRob2QgKENHTEQsIDEsIE5vdFNl cmlhbGl6ZWQpDQogICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAg ICAgICBSZXR1cm4gKERlcmVmT2YgKEluZGV4IChEQ0FULCBBcmcwKSkpDQog ICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgTWV0aG9kIChE U1RBLCAxLCBOb3RTZXJpYWxpemVkKQ0KICAgICAgICAgICAgICAgIHsNCiAg ICAgICAgICAgICAgICAgICAgU3RvcmUgKDB4MDAsIExvY2FsMCkNCiAgICAg ICAgICAgICAgICAgICAgU2hpZnRMZWZ0ICgweDAxLCBBcmcwLCBMb2NhbDEp DQogICAgICAgICAgICAgICAgICAgIElmIChBbmQgKElPU1QsIExvY2FsMSkp DQogICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAg ICAgIEVORkcgKENHTEQgKEFyZzApKQ0KICAgICAgICAgICAgICAgICAgICAg ICAgSWYgKEFDVFIpDQogICAgICAgICAgICAgICAgICAgICAgICB7DQogICAg ICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKDB4MEYsIExvY2FsMCkN CiAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAg ICAgICAgIEVsc2UNCiAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAg ICAgICAgICAgICAgICAgICAgICAgICBJZiAoTEVxdWFsIChBcmcwLCAweDAz KSkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIElmIChJT0FIKQ0KICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBTdG9yZSAoMHgwRCwgTG9jYWwwKQ0KICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIEVsc2UNCiAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg U3RvcmUgKDB4MDAsIExvY2FsMCkNCiAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAg ICAgICAgICAgICAgICAgICAgICAgICAgICBFbHNlDQogICAgICAgICAgICAg ICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBTdG9yZSAoMHgwRCwgTG9jYWwwKQ0KICAgICAgICAgICAgICAgICAg ICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAgICAgICAgIH0NCg0KICAg ICAgICAgICAgICAgICAgICAgICAgRVhGRyAoKQ0KICAgICAgICAgICAgICAg ICAgICB9DQoNCiAgICAgICAgICAgICAgICAgICAgUmV0dXJuIChMb2NhbDAp DQogICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgTWV0aG9k IChEQ05ULCAyLCBOb3RTZXJpYWxpemVkKQ0KICAgICAgICAgICAgICAgIHsN CiAgICAgICAgICAgICAgICAgICAgRU5GRyAoQ0dMRCAoQXJnMCkpDQogICAg ICAgICAgICAgICAgICAgIFNoaWZ0TGVmdCAoSU9BSCwgMHgwOCwgTG9jYWwx KQ0KICAgICAgICAgICAgICAgICAgICBPciAoSU9BTCwgTG9jYWwxLCBMb2Nh bDEpDQogICAgICAgICAgICAgICAgICAgIFJSSU8gKEFyZzAsIEFyZzEsIExv Y2FsMSwgMHgwOCkNCiAgICAgICAgICAgICAgICAgICAgSWYgKExBbmQgKExM ZXNzIChETUNILCAweDA0KSwgTE5vdCAoTEVxdWFsIChBbmQgKERNQ0gsIDB4 MDMsIExvY2FsMSksIDB4MDApKSkpDQogICAgICAgICAgICAgICAgICAgIHsN CiAgICAgICAgICAgICAgICAgICAgICAgIFJETUEgKEFyZzAsIEFyZzEsIElu Y3JlbWVudCAoTG9jYWwxKSkNCiAgICAgICAgICAgICAgICAgICAgfQ0KDQog ICAgICAgICAgICAgICAgICAgIFN0b3JlIChBcmcxLCBBQ1RSKQ0KICAgICAg ICAgICAgICAgICAgICBFWEZHICgpDQogICAgICAgICAgICAgICAgfQ0KDQog ICAgICAgICAgICAgICAgTmFtZSAoQ1JTMSwgUmVzb3VyY2VUZW1wbGF0ZSAo KQ0KICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgSVJR Tm9GbGFncyAoKSB7fQ0KICAgICAgICAgICAgICAgICAgICBETUEgKENvbXBh dGliaWxpdHksIE5vdEJ1c01hc3RlciwgVHJhbnNmZXI4KSB7fQ0KICAgICAg ICAgICAgICAgICAgICBJTyAoRGVjb2RlMTYsIDB4MDAwMCwgMHgwMDAwLCAw eDAxLCAweDAwKQ0KICAgICAgICAgICAgICAgIH0pDQogICAgICAgICAgICAg ICAgQ3JlYXRlV29yZEZpZWxkIChDUlMxLCAweDAxLCBJUlFNKQ0KICAgICAg ICAgICAgICAgIENyZWF0ZUJ5dGVGaWVsZCAoQ1JTMSwgMHgwNCwgRE1BTSkN CiAgICAgICAgICAgICAgICBDcmVhdGVXb3JkRmllbGQgKENSUzEsIDB4MDgs IElPMTEpDQogICAgICAgICAgICAgICAgQ3JlYXRlV29yZEZpZWxkIChDUlMx LCAweDBBLCBJTzEyKQ0KICAgICAgICAgICAgICAgIENyZWF0ZUJ5dGVGaWVs ZCAoQ1JTMSwgMHgwRCwgTEVOMSkNCiAgICAgICAgICAgICAgICBOYW1lIChD UlMyLCBSZXNvdXJjZVRlbXBsYXRlICgpDQogICAgICAgICAgICAgICAgew0K ICAgICAgICAgICAgICAgICAgICBJUlFOb0ZsYWdzICgpIHs2fQ0KICAgICAg ICAgICAgICAgICAgICBETUEgKENvbXBhdGliaWxpdHksIE5vdEJ1c01hc3Rl ciwgVHJhbnNmZXI4KSB7Mn0NCiAgICAgICAgICAgICAgICAgICAgSU8gKERl Y29kZTE2LCAweDAwMDAsIDB4MDAwMCwgMHgwMSwgMHgwMCkNCiAgICAgICAg ICAgICAgICAgICAgSU8gKERlY29kZTE2LCAweDAwMDAsIDB4MDAwMCwgMHgw MSwgMHgwMCkNCiAgICAgICAgICAgICAgICB9KQ0KICAgICAgICAgICAgICAg IENyZWF0ZVdvcmRGaWVsZCAoQ1JTMiwgMHgwMSwgSVJRRSkNCiAgICAgICAg ICAgICAgICBDcmVhdGVCeXRlRmllbGQgKENSUzIsIDB4MDQsIERNQUUpDQog ICAgICAgICAgICAgICAgQ3JlYXRlV29yZEZpZWxkIChDUlMyLCAweDA4LCBJ TzIxKQ0KICAgICAgICAgICAgICAgIENyZWF0ZVdvcmRGaWVsZCAoQ1JTMiwg MHgwQSwgSU8yMikNCiAgICAgICAgICAgICAgICBDcmVhdGVCeXRlRmllbGQg KENSUzIsIDB4MEQsIExFTjIpDQogICAgICAgICAgICAgICAgQ3JlYXRlV29y ZEZpZWxkIChDUlMyLCAweDEwLCBJTzMxKQ0KICAgICAgICAgICAgICAgIENy ZWF0ZVdvcmRGaWVsZCAoQ1JTMiwgMHgxMiwgSU8zMikNCiAgICAgICAgICAg ICAgICBDcmVhdGVCeXRlRmllbGQgKENSUzIsIDB4MTUsIExFTjMpDQogICAg ICAgICAgICAgICAgTWV0aG9kIChEQ1JTLCAxLCBOb3RTZXJpYWxpemVkKQ0K ICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgRU5GRyAo Q0dMRCAoQXJnMCkpDQogICAgICAgICAgICAgICAgICAgIFNoaWZ0TGVmdCAo SU9BSCwgMHgwOCwgSU8xMSkNCiAgICAgICAgICAgICAgICAgICAgT3IgKElP QUwsIElPMTEsIElPMTEpDQogICAgICAgICAgICAgICAgICAgIFN0b3JlIChJ TzExLCBJTzEyKQ0KICAgICAgICAgICAgICAgICAgICBTdWJ0cmFjdCAoRmlu ZFNldFJpZ2h0Qml0IChJTzExKSwgMHgwMSwgTG9jYWwwKQ0KICAgICAgICAg ICAgICAgICAgICBTaGlmdExlZnQgKDB4MDEsIExvY2FsMCwgTEVOMSkNCiAg ICAgICAgICAgICAgICAgICAgSWYgKElOVFIpDQogICAgICAgICAgICAgICAg ICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgIFNoaWZ0TGVmdCAoMHgw MSwgSU5UUiwgSVJRTSkNCiAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAg ICAgICAgICAgICAgICBFbHNlDQogICAgICAgICAgICAgICAgICAgIHsNCiAg ICAgICAgICAgICAgICAgICAgICAgIFN0b3JlICgweDAwLCBJUlFNKQ0KICAg ICAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAgICAgSWYg KExBbmQgKExMZXNzIChETUNILCAweDA0KSwgTE5vdCAoTEVxdWFsIChBbmQg KERNQ0gsIDB4MDMsIExvY2FsMSksIDB4MDApKSkpDQogICAgICAgICAgICAg ICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgIFNoaWZ0TGVmdCAo MHgwMSwgTG9jYWwxLCBETUFNKQ0KICAgICAgICAgICAgICAgICAgICB9DQog ICAgICAgICAgICAgICAgICAgIEVsc2UNCiAgICAgICAgICAgICAgICAgICAg ew0KICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKDB4MDAsIERNQU0p DQogICAgICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgICAg ICBFWEZHICgpDQogICAgICAgICAgICAgICAgICAgIFJldHVybiAoQ1JTMSkN CiAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICBNZXRob2Qg KERTUlMsIDIsIE5vdFNlcmlhbGl6ZWQpDQogICAgICAgICAgICAgICAgew0K ICAgICAgICAgICAgICAgICAgICBDcmVhdGVXb3JkRmllbGQgKEFyZzAsIDB4 MDEsIElSUU0pDQogICAgICAgICAgICAgICAgICAgIENyZWF0ZUJ5dGVGaWVs ZCAoQXJnMCwgMHgwNCwgRE1BTSkNCiAgICAgICAgICAgICAgICAgICAgQ3Jl YXRlV29yZEZpZWxkIChBcmcwLCAweDA4LCBJTzExKQ0KICAgICAgICAgICAg ICAgICAgICBFTkZHIChDR0xEIChBcmcxKSkNCiAgICAgICAgICAgICAgICAg ICAgQW5kIChJTzExLCAweEZGLCBJT0FMKQ0KICAgICAgICAgICAgICAgICAg ICBTaGlmdFJpZ2h0IChJTzExLCAweDA4LCBJT0FIKQ0KICAgICAgICAgICAg ICAgICAgICBJZiAoSVJRTSkNCiAgICAgICAgICAgICAgICAgICAgew0KICAg ICAgICAgICAgICAgICAgICAgICAgRmluZFNldFJpZ2h0Qml0IChJUlFNLCBM b2NhbDApDQogICAgICAgICAgICAgICAgICAgICAgICBTdWJ0cmFjdCAoTG9j YWwwLCAweDAxLCBJTlRSKQ0KICAgICAgICAgICAgICAgICAgICB9DQogICAg ICAgICAgICAgICAgICAgIEVsc2UNCiAgICAgICAgICAgICAgICAgICAgew0K ICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKDB4MDAsIElOVFIpDQog ICAgICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICBJ ZiAoRE1BTSkNCiAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAg ICAgICAgICAgICAgRmluZFNldFJpZ2h0Qml0IChETUFNLCBMb2NhbDApDQog ICAgICAgICAgICAgICAgICAgICAgICBTdWJ0cmFjdCAoTG9jYWwwLCAweDAx LCBETUNIKQ0KICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAg ICAgICAgIEVsc2UNCiAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAg ICAgICAgICAgICAgICAgU3RvcmUgKDB4MDQsIERNQ0gpDQogICAgICAgICAg ICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICBFWEZHICgpDQog ICAgICAgICAgICAgICAgICAgIERDTlQgKEFyZzEsIDB4MDEpDQogICAgICAg ICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgRGV2aWNlIChTWVNSKQ0K ICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgTmFtZSAo X0hJRCwgRWlzYUlkICgiUE5QMEMwMiIpKQ0KICAgICAgICAgICAgICAgICAg ICBOYW1lIChfVUlELCAweDAxKQ0KICAgICAgICAgICAgICAgICAgICBOYW1l IChfQ1JTLCBSZXNvdXJjZVRlbXBsYXRlICgpDQogICAgICAgICAgICAgICAg ICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgIElPIChEZWNvZGUxNiwg MHgwMDEwLCAweDAwMTAsIDB4MDAsIDB4MTApDQogICAgICAgICAgICAgICAg ICAgICAgICBJTyAoRGVjb2RlMTYsIDB4MDAyMiwgMHgwMDIyLCAweDAwLCAw eDFFKQ0KICAgICAgICAgICAgICAgICAgICAgICAgSU8gKERlY29kZTE2LCAw eDAwNDQsIDB4MDA0NCwgMHgwMCwgMHgxQykNCiAgICAgICAgICAgICAgICAg ICAgICAgIElPIChEZWNvZGUxNiwgMHgwMDYzLCAweDAwNjMsIDB4MDAsIDB4 MDEpDQogICAgICAgICAgICAgICAgICAgICAgICBJTyAoRGVjb2RlMTYsIDB4 MDA2NSwgMHgwMDY1LCAweDAwLCAweDAxKQ0KICAgICAgICAgICAgICAgICAg ICAgICAgSU8gKERlY29kZTE2LCAweDAwNjcsIDB4MDA2NywgMHgwMCwgMHgw OSkNCiAgICAgICAgICAgICAgICAgICAgICAgIElPIChEZWNvZGUxNiwgMHgw MDcyLCAweDAwNzIsIDB4MDAsIDB4MEUpDQogICAgICAgICAgICAgICAgICAg ICAgICBJTyAoRGVjb2RlMTYsIDB4MDA4MCwgMHgwMDgwLCAweDAwLCAweDAx KQ0KICAgICAgICAgICAgICAgICAgICAgICAgSU8gKERlY29kZTE2LCAweDAw ODQsIDB4MDA4NCwgMHgwMCwgMHgwMykNCiAgICAgICAgICAgICAgICAgICAg ICAgIElPIChEZWNvZGUxNiwgMHgwMDg4LCAweDAwODgsIDB4MDAsIDB4MDEp DQogICAgICAgICAgICAgICAgICAgICAgICBJTyAoRGVjb2RlMTYsIDB4MDA4 QywgMHgwMDhDLCAweDAwLCAweDAzKQ0KICAgICAgICAgICAgICAgICAgICAg ICAgSU8gKERlY29kZTE2LCAweDAwOTAsIDB4MDA5MCwgMHgwMCwgMHgxMCkN CiAgICAgICAgICAgICAgICAgICAgICAgIElPIChEZWNvZGUxNiwgMHgwMEEy LCAweDAwQTIsIDB4MDAsIDB4MUUpDQogICAgICAgICAgICAgICAgICAgICAg ICBJTyAoRGVjb2RlMTYsIDB4MDBFMCwgMHgwMEUwLCAweDAwLCAweDEwKQ0K ICAgICAgICAgICAgICAgICAgICAgICAgSU8gKERlY29kZTE2LCAweDA0RDAs IDB4MDREMCwgMHgwMCwgMHgwMikNCiAgICAgICAgICAgICAgICAgICAgfSkN CiAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICBEZXZpY2Ug KEZXSCkNCiAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAg IE5hbWUgKF9ISUQsIEVpc2FJZCAoIklOVDA4MDAiKSkNCiAgICAgICAgICAg ICAgICAgICAgTmFtZSAoQ1JTLCBSZXNvdXJjZVRlbXBsYXRlICgpDQogICAg ICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgIE1l bW9yeTMyRml4ZWQgKFJlYWRPbmx5LCAweDAwMDAwMDAwLCAweDAwMDAwMDAw KQ0KICAgICAgICAgICAgICAgICAgICAgICAgTWVtb3J5MzJGaXhlZCAoUmVh ZE9ubHksIDB4MDAwMDAwMDAsIDB4MDAwMDAwMDApDQogICAgICAgICAgICAg ICAgICAgIH0pDQogICAgICAgICAgICAgICAgICAgIENyZWF0ZURXb3JkRmll bGQgKENSUywgMHgwNCwgQlMwMCkNCiAgICAgICAgICAgICAgICAgICAgQ3Jl YXRlRFdvcmRGaWVsZCAoQ1JTLCAweDA4LCBCTDAwKQ0KICAgICAgICAgICAg ICAgICAgICBDcmVhdGVEV29yZEZpZWxkIChDUlMsIDB4MTAsIEJTMTApDQog ICAgICAgICAgICAgICAgICAgIENyZWF0ZURXb3JkRmllbGQgKENSUywgMHgx NCwgQkwxMCkNCiAgICAgICAgICAgICAgICAgICAgTWV0aG9kIChfQ1JTLCAw LCBOb3RTZXJpYWxpemVkKQ0KICAgICAgICAgICAgICAgICAgICB7DQogICAg ICAgICAgICAgICAgICAgICAgICBTdG9yZSAoMHhGRjgwMDAwMCwgTG9jYWww KQ0KICAgICAgICAgICAgICAgICAgICAgICAgRmluZFNldFJpZ2h0Qml0IChG SEQwLCBMb2NhbDEpDQogICAgICAgICAgICAgICAgICAgICAgICBEZWNyZW1l bnQgKExvY2FsMSkNCiAgICAgICAgICAgICAgICAgICAgICAgIElmIChMb2Nh bDEpDQogICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAg ICAgICAgICAgICAgICAgTXVsdGlwbHkgKExvY2FsMSwgMHgwMDA4MDAwMCwg TG9jYWwxKQ0KICAgICAgICAgICAgICAgICAgICAgICAgfQ0KDQogICAgICAg ICAgICAgICAgICAgICAgICBBZGQgKExvY2FsMCwgTG9jYWwxLCBMb2NhbDIp DQogICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoTG9jYWwyLCBCUzAw KQ0KICAgICAgICAgICAgICAgICAgICAgICAgQWRkIChCUzAwLCAweDAwNDAw MDAwLCBCUzEwKQ0KICAgICAgICAgICAgICAgICAgICAgICAgU3VidHJhY3Qg KDB4MDAsIEJTMTAsIEJMMDApDQogICAgICAgICAgICAgICAgICAgICAgICBT dG9yZSAoQkwwMCwgQkwxMCkNCiAgICAgICAgICAgICAgICAgICAgICAgIFJl dHVybiAoQ1JTKQ0KICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAg ICAgICAgfQ0KDQogICAgICAgICAgICAgICAgRGV2aWNlIChGV0hFKQ0KICAg ICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgTmFtZSAoX0hJ RCwgRWlzYUlkICgiUE5QMEMwMiIpKQ0KICAgICAgICAgICAgICAgICAgICBO YW1lIChfVUlELCAweDAzKQ0KICAgICAgICAgICAgICAgICAgICBOYW1lIChD UlMsIFJlc291cmNlVGVtcGxhdGUgKCkNCiAgICAgICAgICAgICAgICAgICAg ew0KICAgICAgICAgICAgICAgICAgICAgICAgTWVtb3J5MzJGaXhlZCAoUmVh ZE9ubHksIDB4MDAwMDAwMDAsIDB4MDAwMDAwMDApDQogICAgICAgICAgICAg ICAgICAgIH0pDQogICAgICAgICAgICAgICAgICAgIE1ldGhvZCAoX0NSUywg MCwgTm90U2VyaWFsaXplZCkNCiAgICAgICAgICAgICAgICAgICAgew0KICAg ICAgICAgICAgICAgICAgICAgICAgQ3JlYXRlRFdvcmRGaWVsZCAoQ1JTLCAw eDA0LCBCUzAwKQ0KICAgICAgICAgICAgICAgICAgICAgICAgQ3JlYXRlRFdv cmRGaWVsZCAoQ1JTLCAweDA4LCBCTDAwKQ0KICAgICAgICAgICAgICAgICAg ICAgICAgSWYgKExFcXVhbCAoXl5GV0guQlMwMCwgMHgwMCkpDQogICAgICAg ICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAg ICAgXl5GV0guX0NSUyAoKQ0KICAgICAgICAgICAgICAgICAgICAgICAgfQ0K DQogICAgICAgICAgICAgICAgICAgICAgICBBZGQgKF5eRldILkJTMDAsIF5e RldILkJMMDAsIEJTMDApDQogICAgICAgICAgICAgICAgICAgICAgICBTdWJ0 cmFjdCAoXl5GV0guQlMxMCwgQlMwMCwgQkwwMCkNCiAgICAgICAgICAgICAg ICAgICAgICAgIFJldHVybiAoQ1JTKQ0KICAgICAgICAgICAgICAgICAgICB9 DQogICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgT3BlcmF0 aW9uUmVnaW9uIChGSFIwLCBQQ0lfQ29uZmlnLCAweEUzLCAweDAxKQ0KICAg ICAgICAgICAgICAgIEZpZWxkIChGSFIwLCBCeXRlQWNjLCBOb0xvY2ssIFBy ZXNlcnZlKQ0KICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAg ICAgRkhEMCwgICA4DQogICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAg ICAgICAgU2NvcGUgKFwpDQogICAgICAgICAgICAgICAgew0KICAgICAgICAg ICAgICAgICAgICBGaWVsZCAoQklPUywgQnl0ZUFjYywgTm9Mb2NrLCBQcmVz ZXJ2ZSkNCiAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAg ICAgICAgICAgT2Zmc2V0ICgweDgwKSwgDQogICAgICAgICAgICAgICAgICAg ICAgICBPZmZzZXQgKDB4ODQpLCANCiAgICAgICAgICAgICAgICAgICAgICAg IEFTVEUsICAgOCwgDQogICAgICAgICAgICAgICAgICAgICAgICBPZmZzZXQg KDB4ODYpLCANCiAgICAgICAgICAgICAgICAgICAgICAgIFNTVEUsICAgOCwg DQogICAgICAgICAgICAgICAgICAgICAgICBQQURTLCAgIDgsIA0KICAgICAg ICAgICAgICAgICAgICAgICAgQUNQUywgICA4LCANCiAgICAgICAgICAgICAg ICAgICAgICAgIFdTVEUsICAgOCwgDQogICAgICAgICAgICAgICAgICAgICAg ICBJTlNTLCAgIDgNCiAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAg ICAgICAgIH0NCg0KICAgICAgICAgICAgICAgIFNjb3BlIChcX1NCKQ0KICAg ICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgTmFtZSAoQkFU TywgMHgwMCkNCiAgICAgICAgICAgICAgICAgICAgTXV0ZXggKEVDTVgsIDB4 MDApDQogICAgICAgICAgICAgICAgICAgIE11dGV4IChTTUJGLCAweDAwKQ0K ICAgICAgICAgICAgICAgICAgICBNdXRleCAoQkFUWCwgMHgwMCkNCiAgICAg ICAgICAgICAgICAgICAgTmFtZSAoVEhCRiwgQnVmZmVyICgweDA0KQ0KICAg ICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAw eDAwLCAweDAwLCAweDAwLCAweDAwDQogICAgICAgICAgICAgICAgICAgIH0p DQogICAgICAgICAgICAgICAgICAgIENyZWF0ZVdvcmRGaWVsZCAoVEhCRiwg MHgwMCwgRFcwMCkNCiAgICAgICAgICAgICAgICAgICAgQ3JlYXRlV29yZEZp ZWxkIChUSEJGLCAweDAyLCBEVzAxKQ0KICAgICAgICAgICAgICAgICAgICBD cmVhdGVCeXRlRmllbGQgKFRIQkYsIDB4MDAsIERCMDApDQogICAgICAgICAg ICAgICAgICAgIENyZWF0ZUJ5dGVGaWVsZCAoVEhCRiwgMHgwMSwgREIwMSkN CiAgICAgICAgICAgICAgICAgICAgQ3JlYXRlQnl0ZUZpZWxkIChUSEJGLCAw eDAyLCBEQjEwKQ0KICAgICAgICAgICAgICAgICAgICBDcmVhdGVCeXRlRmll bGQgKFRIQkYsIDB4MDMsIERCMTEpDQogICAgICAgICAgICAgICAgfQ0KDQog ICAgICAgICAgICAgICAgT3BlcmF0aW9uUmVnaW9uIChPUFIwLCBTeXN0ZW1J TywgMHg4MCwgMHg4MCkNCiAgICAgICAgICAgICAgICBGaWVsZCAoT1BSMCwg Qnl0ZUFjYywgTm9Mb2NrLCBQcmVzZXJ2ZSkNCiAgICAgICAgICAgICAgICB7 DQogICAgICAgICAgICAgICAgICAgIERQODAsICAgOA0KICAgICAgICAgICAg ICAgIH0NCg0KICAgICAgICAgICAgICAgIE9wZXJhdGlvblJlZ2lvbiAoT1BS MSwgU3lzdGVtSU8sIDB4QjIsIDB4MDIpDQogICAgICAgICAgICAgICAgRmll bGQgKE9QUjEsIEJ5dGVBY2MsIE5vTG9jaywgUHJlc2VydmUpDQogICAgICAg ICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICBTV0kwLCAgIDgsIA0K ICAgICAgICAgICAgICAgICAgICBBUE1TLCAgIDgNCiAgICAgICAgICAgICAg ICB9DQoNCiAgICAgICAgICAgICAgICBPcGVyYXRpb25SZWdpb24gKE9QUjIs IFN5c3RlbUlPLCAweDAzNzgsIDB4MDIpDQogICAgICAgICAgICAgICAgRmll bGQgKE9QUjIsIEJ5dGVBY2MsIE5vTG9jaywgUHJlc2VydmUpDQogICAgICAg ICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICBQMzc4LCAgIDgNCiAg ICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICBPcGVyYXRpb25S ZWdpb24gKE9QUjMsIFN5c3RlbUlPLCAweDA0ODAsIDB4MTApDQogICAgICAg ICAgICAgICAgRmllbGQgKE9QUjMsIEJ5dGVBY2MsIE5vTG9jaywgUHJlc2Vy dmUpDQogICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICBP ZmZzZXQgKDB4MDQpLCANCiAgICAgICAgICAgICAgICAgICAgICAgICwgICAz LCANCiAgICAgICAgICAgICAgICAgICAgU0cxMywgICAxLCANCiAgICAgICAg ICAgICAgICAgICAgT2Zmc2V0ICgweDA5KSwgDQogICAgICAgICAgICAgICAg ICAgICAgICAsICAgNCwgDQogICAgICAgICAgICAgICAgICAgIFNHMjQsICAg MQ0KICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgIFNjb3Bl IChcX1NCLlBDSTAuU0JSRykNCiAgICAgICAgICAgICAgICB7DQogICAgICAg ICAgICAgICAgICAgIERldmljZSAoRUMwKQ0KICAgICAgICAgICAgICAgICAg ICB7DQogICAgICAgICAgICAgICAgICAgICAgICBOYW1lIChFQ0ZMLCBPbmVz KQ0KICAgICAgICAgICAgICAgICAgICAgICAgTXV0ZXggKE1VRUMsIDB4MDAp DQogICAgICAgICAgICAgICAgICAgICAgICBOYW1lIChGQUtFLCAweDAwKQ0K ICAgICAgICAgICAgICAgICAgICAgICAgTWV0aG9kIChFQ0FWLCAwLCBOb3RT ZXJpYWxpemVkKQ0KICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAg ICAgICAgICAgICAgICAgICAgICAgIElmIChMRXF1YWwgKEVDRkwsIE9uZXMp KQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgSWYgKExOb3QgKExMZXNzIChfUkVWLCAw eDAyKSkpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJldHVybiAoT25l KQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9DQogICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIEVsc2UNCiAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgUmV0dXJuIChaZXJvKQ0KICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgICAgICAgICAg fQ0KDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgUmV0dXJuIChFQ0ZM KQ0KICAgICAgICAgICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAg ICAgICAgICAgICBOYW1lIChfSElELCBFaXNhSWQgKCJQTlAwQzA5IikpDQog ICAgICAgICAgICAgICAgICAgICAgICBOYW1lIChfQ1JTLCBSZXNvdXJjZVRl bXBsYXRlICgpDQogICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAg ICAgICAgICAgICAgICAgICAgICAgSU8gKERlY29kZTE2LCAweDAwNjIsIDB4 MDA2MiwgMHgwMCwgMHgwMSkNCiAgICAgICAgICAgICAgICAgICAgICAgICAg ICBJTyAoRGVjb2RlMTYsIDB4MDA2NiwgMHgwMDY2LCAweDAwLCAweDAxKQ0K ICAgICAgICAgICAgICAgICAgICAgICAgfSkNCiAgICAgICAgICAgICAgICAg ICAgICAgIENyZWF0ZVdvcmRGaWVsZCAoX0NSUywgMHgwMiwgRFBSVCkNCiAg ICAgICAgICAgICAgICAgICAgICAgIENyZWF0ZVdvcmRGaWVsZCAoX0NSUywg MHgwQSwgQ1BSVCkNCiAgICAgICAgICAgICAgICAgICAgICAgIE5hbWUgKF9H UEUsIDB4MUMpDQogICAgICAgICAgICAgICAgICAgICAgICBPcGVyYXRpb25S ZWdpb24gKEVDT1IsIEVtYmVkZGVkQ29udHJvbCwgMHgwMCwgMHg4MCkNCiAg ICAgICAgICAgICAgICAgICAgICAgIEZpZWxkIChFQ09SLCBCeXRlQWNjLCBM b2NrLCBQcmVzZXJ2ZSkNCiAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAg ICAgICAgICAgICAgICAgICAgICAgICAgICBPZmZzZXQgKDB4MDQpLCANCiAg ICAgICAgICAgICAgICAgICAgICAgICAgICBDTUQxLCAgIDgsIA0KICAgICAg ICAgICAgICAgICAgICAgICAgICAgIENEVDEsICAgOCwgDQogICAgICAgICAg ICAgICAgICAgICAgICAgICAgQ0RUMiwgICA4LCANCiAgICAgICAgICAgICAg ICAgICAgICAgICAgICBDRFQzLCAgIDgsIA0KICAgICAgICAgICAgICAgICAg ICAgICAgICAgIE9mZnNldCAoMHgxOCksIA0KICAgICAgICAgICAgICAgICAg ICAgICAgICAgIFBSVEMsICAgOCwgDQogICAgICAgICAgICAgICAgICAgICAg ICAgICAgU1NUUywgICA4LCANCiAgICAgICAgICAgICAgICAgICAgICAgICAg ICBBRERSLCAgIDgsIA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIFND TUQsICAgOCwgDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgU01EMCwg ICA4LCANCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBTTUQxLCAgIDgs IA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIERBVEIsICAgMjQwLCAN CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBCQ05ULCAgIDgsIA0KICAg ICAgICAgICAgICAgICAgICAgICAgICAgIEFMUk0sICAgOCwgDQogICAgICAg ICAgICAgICAgICAgICAgICAgICAgQUxSMCwgICA4LCANCiAgICAgICAgICAg ICAgICAgICAgICAgICAgICBBTFIxLCAgIDgsIA0KICAgICAgICAgICAgICAg ICAgICAgICAgICAgIE9mZnNldCAoMHg0MyksIA0KICAgICAgICAgICAgICAg ICAgICAgICAgICAgIFA1MFMsICAgMSwgDQogICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICwgICAxLCANCiAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgLCAgIDEsIA0KICAgICAgICAgICAgICAgICAgICAgICAgICAg IFA0M1MsICAgMSwgDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgUDU0 UywgICAxLCANCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBQNTVTLCAg IDEsIA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIE9mZnNldCAoMHg0 OCksIA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIFA1NEMsICAgOCwg DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgUDU1QywgICA4LCANCiAg ICAgICAgICAgICAgICAgICAgICAgICAgICBQNTBDLCAgIDgsIA0KICAgICAg ICAgICAgICAgICAgICAgICAgICAgIFA0M0MsICAgOCwgDQogICAgICAgICAg ICAgICAgICAgICAgICAgICAgT2Zmc2V0ICgweDUwKSwgDQogICAgICAgICAg ICAgICAgICAgICAgICAgICAgUDYwQywgICA4LCANCiAgICAgICAgICAgICAg ICAgICAgICAgICAgICBQNjFDLCAgIDgsIA0KICAgICAgICAgICAgICAgICAg ICAgICAgICAgIFA2MkMsICAgOCwgDQogICAgICAgICAgICAgICAgICAgICAg ICAgICAgUDYzQywgICA4LCANCiAgICAgICAgICAgICAgICAgICAgICAgICAg ICBQNjRDLCAgIDgsIA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIFA2 NUMsICAgOCwgDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgUDY2Qywg ICA4LCANCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBQNjdDLCAgIDgs IA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIFA2OEMsICAgOCwgDQog ICAgICAgICAgICAgICAgICAgICAgICAgICAgT2Zmc2V0ICgweDc3KSwgDQog ICAgICAgICAgICAgICAgICAgICAgICAgICAgRkZBTiwgICA4LCANCiAgICAg ICAgICAgICAgICAgICAgICAgICAgICBQNjBTLCAgIDEsIA0KICAgICAgICAg ICAgICAgICAgICAgICAgICAgIFA2MVMsICAgMSwgDQogICAgICAgICAgICAg ICAgICAgICAgICAgICAgUDYyUywgICAxLCANCiAgICAgICAgICAgICAgICAg ICAgICAgICAgICBQNjNTLCAgIDEsIA0KICAgICAgICAgICAgICAgICAgICAg ICAgICAgIFA2NFMsICAgMSwgDQogICAgICAgICAgICAgICAgICAgICAgICAg ICAgUDY1UywgICAxLCANCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBQ NjZTLCAgIDEsIA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIFA2N1Ms ICAgMQ0KICAgICAgICAgICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAg ICAgICAgICAgICAgICBPcGVyYXRpb25SZWdpb24gKFVDTVMsIFN5c3RlbUlP LCAweDcyLCAweDA1KQ0KICAgICAgICAgICAgICAgICAgICAgICAgRmllbGQg KFVDTVMsIEJ5dGVBY2MsIExvY2ssIFByZXNlcnZlKQ0KICAgICAgICAgICAg ICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIElO RDAsICAgOCwgDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgREFUWCwg ICA4DQogICAgICAgICAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAg ICAgICAgICAgICAgIEluZGV4RmllbGQgKElORDAsIERBVFgsIEJ5dGVBY2Ms IE5vTG9jaywgUHJlc2VydmUpDQogICAgICAgICAgICAgICAgICAgICAgICB7 DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgT2Zmc2V0ICgweDFCKSwg DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgQU5ZUywgICA4LCANCiAg ICAgICAgICAgICAgICAgICAgICAgICAgICBBRFZMLCAgIDgsIA0KICAgICAg ICAgICAgICAgICAgICAgICAgICAgIEJSQ1QsICAgOA0KICAgICAgICAgICAg ICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgICAgICAgICBOYW1l IChQV0FDLCBCdWZmZXIgKDB4MTApDQogICAgICAgICAgICAgICAgICAgICAg ICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgMHgxNywgMHgyRSwg MHgzRCwgMHg0OSwgMHg1OCwgMHg2MCwgMHg2NCwgMHg2OCwgDQogICAgICAg ICAgICAgICAgICAgICAgICAgICAgMHg2QywgMHg3MCwgMHg3MywgMHg3Nywg MHg3QiwgMHg3RiwgMHg4MSwgMHg5Qw0KICAgICAgICAgICAgICAgICAgICAg ICAgfSkNCiAgICAgICAgICAgICAgICAgICAgICAgIE5hbWUgKFBXREMsIEJ1 ZmZlciAoMHgxMCkNCiAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAg ICAgICAgICAgICAgICAgICAgICAgICAweDBGLCAweDI2LCAweDM2LCAweDQx LCAweDUxLCAweDU4LCAweDVDLCAweDYwLCANCiAgICAgICAgICAgICAgICAg ICAgICAgICAgICAweDY0LCAweDY4LCAweDZDLCAweDcwLCAweDczLCAweDc3 LCAweDdCLCAweDdGDQogICAgICAgICAgICAgICAgICAgICAgICB9KQ0KICAg ICAgICAgICAgICAgICAgICAgICAgTWV0aG9kIChfSU5JLCAwLCBOb3RTZXJp YWxpemVkKQ0KICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAg ICAgICAgICAgICAgICAgICAgIE5vb3ANCiAgICAgICAgICAgICAgICAgICAg ICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICAgICAgTWV0aG9kIChfUkVH LCAyLCBOb3RTZXJpYWxpemVkKQ0KICAgICAgICAgICAgICAgICAgICAgICAg ew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIElmIChMRXF1YWwgKEFy ZzAsIDB4MDMpKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKEFyZzEsIEVD RkwpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAg ICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgICAgICAgICBO YW1lIChURVNULCAweDAwKQ0KICAgICAgICAgICAgICAgICAgICAgICAgTWV0 aG9kIChfUTA5LCAwLCBOb3RTZXJpYWxpemVkKQ0KICAgICAgICAgICAgICAg ICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIElmIChM RXF1YWwgKE9TRkwgKCksIDB4MDApKQ0KICAgICAgICAgICAgICAgICAgICAg ICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU3Rv cmUgKDB4MDksIERQODApDQogICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIE5vdGlmeSAoXF9TQi5BQywgMHg4MCkNCiAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgTm90aWZ5IChcX1NCLkJBVDAsIDB4ODApDQogICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5vdGlmeSAoXF9TQi5CQVQx LCAweDgwKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBETFkw ICgweDY0KQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAg ICAgICAgICAgICAgICAgICAgICAgICBFbHNlDQogICAgICAgICAgICAgICAg ICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBETFkwICgweDAwKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0N CiAgICAgICAgICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAg ICAgICAgICAgTWV0aG9kIChfUTBBLCAwLCBOb3RTZXJpYWxpemVkKQ0KICAg ICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAg ICAgICAgIFN0b3JlICgweDAxLCBEUDgwKQ0KICAgICAgICAgICAgICAgICAg ICAgICAgICAgIE5vdGlmeSAoXF9TQi5TTFBCLCAweDgwKQ0KICAgICAgICAg ICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgICAgICAgICBN ZXRob2QgKF9RMEIsIDAsIE5vdFNlcmlhbGl6ZWQpDQogICAgICAgICAgICAg ICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgU3Rv cmUgKDB4MDIsIERQODApDQogICAgICAgICAgICAgICAgICAgICAgICAgICAg SWYgKFxfU0IuUENJMC5QMFAyLk1QQzAuTVBEUCAoKSkNCiAgICAgICAgICAg ICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIElmIChcX1NCLkFUS1ApDQogICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIE5vdGlmeSAoXF9TQi5BVEtELCAweDVEKQ0KICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgICAgICAg ICAgfQ0KICAgICAgICAgICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAg ICAgICAgICAgICAgICBNZXRob2QgKF9RMEUsIDAsIE5vdFNlcmlhbGl6ZWQp DQogICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAg ICAgICAgICAgICAgSWYgKExHcmVhdGVyIChCUkNULCAweDAwKSkNCiAgICAg ICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIERlY3JlbWVudCAoQlJDVCkNCiAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgU1RCUiAoKQ0KICAgICAgICAgICAgICAgICAg ICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN0 b3JlIChCUkNULCBEUDgwKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAg IElmIChcX1NCLkFUS1ApDQogICAgICAgICAgICAgICAgICAgICAgICAgICAg ew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOb3RpZnkgKFxf U0IuQVRLRCwgQWRkIChCUkNULCAweDIwKSkNCiAgICAgICAgICAgICAgICAg ICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgICAgICB9DQoNCiAg ICAgICAgICAgICAgICAgICAgICAgIE1ldGhvZCAoX1EwRiwgMCwgTm90U2Vy aWFsaXplZCkNCiAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAg ICAgICAgICAgICAgICAgICAgICBJZiAoTExlc3MgKEJSQ1QsIDB4MEYpKQ0K ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgSW5jcmVtZW50IChCUkNUKQ0KICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBTVEJSICgpDQogICAgICAgICAgICAg ICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgICAgICAgICAg ICAgU3RvcmUgKEJSQ1QsIERQODApDQogICAgICAgICAgICAgICAgICAgICAg ICAgICAgSWYgKFxfU0IuQVRLUCkNCiAgICAgICAgICAgICAgICAgICAgICAg ICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5vdGlm eSAoXF9TQi5BVEtELCBBZGQgKEJSQ1QsIDB4MTApKQ0KICAgICAgICAgICAg ICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAgICAgICAgIH0N Cg0KICAgICAgICAgICAgICAgICAgICAgICAgTWV0aG9kIChfUTEwLCAwLCBO b3RTZXJpYWxpemVkKQ0KICAgICAgICAgICAgICAgICAgICAgICAgew0KICAg ICAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlICgweDA3LCBEUDgwKQ0K ICAgICAgICAgICAgICAgICAgICAgICAgICAgIFhPciAoQktMVCwgMHgwMSwg TG9jYWwwKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlIChM b2NhbDAsIEJLTFQpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgSWYg KFxfU0IuQVRLUCkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7DQog ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN1YnRyYWN0ICgweDM0 LCBCS0xULCBMb2NhbDApDQogICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIE5vdGlmeSAoXF9TQi5BVEtELCBMb2NhbDApDQogICAgICAgICAgICAg ICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICAgICAgfQ0K DQogICAgICAgICAgICAgICAgICAgICAgICBOYW1lIChEU1RFLCAweDAwKQ0K ICAgICAgICAgICAgICAgICAgICAgICAgTmFtZSAoQ1NURSwgMHgwMCkNCiAg ICAgICAgICAgICAgICAgICAgICAgIE1ldGhvZCAoX1ExMSwgMCwgTm90U2Vy aWFsaXplZCkNCiAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAg ICAgICAgICAgICAgICAgICAgICBTdG9yZSAoXF9TQi5QQ0kwLlNCUkcuRUMw LkFOWVMsIExvY2FsMSkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBT aGlmdFJpZ2h0IChMb2NhbDEsIDB4MDQsIExvY2FsMSkNCiAgICAgICAgICAg ICAgICAgICAgICAgICAgICBJZiAoTEVxdWFsIChMb2NhbDEsIDB4MDkpKQ0K ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgSWYgKExFcXVhbCAoRFNURSwgMHgwMCkpDQog ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlICgweEEzLCBTV0kwKQ0K ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKFNT VEUsIExvY2FsMCkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIFN0b3JlIChTU1RFLCBDU1RFKQ0KICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgSW5jcmVtZW50IChEU1RFKQ0KICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIEVsc2UNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgSWYg KEFuZCAoQVNURSwgMHgzMykpDQogICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgSWYgKExOb3QgKExHcmVhdGVyIChBU1RFLCAweDA2KSkpDQog ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgew0KICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBJbmNy ZW1lbnQgKENTVEUpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIElmIChMRXF1YWwgKENTVEUsIDB4MDQpKQ0KICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7DQogICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBT dG9yZSAoMHgwMSwgQ1NURSkNCiAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBFbHNlDQogICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBJZiAoQW5kIChBU1RFLCAweDAzKSkNCiAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgew0KICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg SW5jcmVtZW50IChDU1RFKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgSWYgKExFcXVhbCAoQ1NURSwgMHgwNykp DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgU3RvcmUgKDB4MDEsIENTVEUpDQogICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9DQogICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRWxz ZQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBJbmNyZW1lbnQgKENTVEUpDQogICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBJZiAoTEVxdWFsIChDU1RF LCAweDAyKSkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoMHgwNCwgQ1NURSkNCiAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IH0NCg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgSWYgKExFcXVhbCAoQ1NURSwgMHgwNikpDQogICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7DQogICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgU3RvcmUgKDB4MDEsIENTVEUpDQogICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIFN0b3JlIChDU1RFLCBMb2NhbDApDQogICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAg ICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgRWxz ZQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgSWYgKExFcXVhbCAoRFNURSwgMHgwMCkp DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlICgweEEzLCBTV0kw KQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUg KFNTVEUsIExvY2FsMCkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIFN0b3JlIChTU1RFLCBDU1RFKQ0KICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgSW5jcmVtZW50IChEU1RFKQ0KICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIEVsc2UNCiAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg SWYgKEFuZCAoQVNURSwgMHgzMykpDQogICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgSWYgKExOb3QgKExHcmVhdGVyIChBU1RFLCAweDA2KSkp DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgew0K ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBJ bmNyZW1lbnQgKENTVEUpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIElmIChMRXF1YWwgKENTVEUsIDB4MDQpKQ0KICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7DQog ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBTdG9yZSAoMHgwMSwgQ1NURSkNCiAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBFbHNlDQogICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBJZiAoQW5kIChBU1RFLCAweDAzKSkNCiAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgew0K ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgSW5jcmVtZW50IChDU1RFKQ0KICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgSWYgKExFcXVhbCAoQ1NURSwgMHgw OCkpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgU3RvcmUgKDB4MDEsIENTVEUpDQogICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9DQog ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0N CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg RWxzZQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBJbmNyZW1lbnQgKENTVEUpDQogICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBJZiAoTEVxdWFsIChD U1RFLCAweDAyKSkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoMHgwNCwgQ1NURSkN CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgSWYgKExFcXVhbCAoQ1NURSwgMHgwNikpDQogICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7DQog ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgU3RvcmUgKDB4MDEsIENTVEUpDQogICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIFN0b3JlIChDU1RFLCBMb2NhbDApDQogICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAg ICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAgICAgICAgICAg ICBJZiAoXF9TQi5BVEtQKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAg IHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTm90aWZ5IChc X1NCLkFUS0QsIEFkZCAoMHg2MCwgTG9jYWwwKSkNCiAgICAgICAgICAgICAg ICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgICAgICB9DQoN CiAgICAgICAgICAgICAgICAgICAgICAgIE1ldGhvZCAoX1ExMywgMCwgTm90 U2VyaWFsaXplZCkNCiAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAg ICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoMHgxMCwgRFA4MCkNCiAg ICAgICAgICAgICAgICAgICAgICAgICAgICBJZiAoXF9TQi5BVEtQKQ0KICAg ICAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgTm90aWZ5IChcX1NCLkFUS0QsIDB4MzIpDQogICAg ICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAg ICAgICAgfQ0KDQogICAgICAgICAgICAgICAgICAgICAgICBNZXRob2QgKF9R MTQsIDAsIE5vdFNlcmlhbGl6ZWQpDQogICAgICAgICAgICAgICAgICAgICAg ICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKDB4MTEs IERQODApDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgQW5kIChBRFZM LCAweDBGLCBBRFZMKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIElm IChMTGVzcyAoQURWTCwgMHgwRikpDQogICAgICAgICAgICAgICAgICAgICAg ICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBJbmNy ZW1lbnQgKEFEVkwpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgfQ0K DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgSWYgKFxfU0IuQVRLUCkN CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIE5vdGlmeSAoXF9TQi5BVEtELCAweDMxKQ0K ICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAg ICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICAgICAgTWV0aG9k IChfUTE1LCAwLCBOb3RTZXJpYWxpemVkKQ0KICAgICAgICAgICAgICAgICAg ICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlICgw eDEyLCBEUDgwKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFuZCAo QURWTCwgMHgwRiwgQURWTCkNCiAgICAgICAgICAgICAgICAgICAgICAgICAg ICBJZiAoTEdyZWF0ZXIgKEFEVkwsIDB4MDApKQ0KICAgICAgICAgICAgICAg ICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgRGVjcmVtZW50IChBRFZMKQ0KICAgICAgICAgICAgICAgICAgICAgICAg ICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIElmIChcX1NC LkFUS1ApDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBOb3RpZnkgKFxfU0IuQVRLRCwg MHgzMCkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9DQogICAgICAg ICAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAgICAgICAg IE1ldGhvZCAoX1EzMCwgMCwgTm90U2VyaWFsaXplZCkNCiAgICAgICAgICAg ICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBT dG9yZSAoMHgzMCwgXF9TQi5QQ0kwLlNCUkcuUDM3OCkNCiAgICAgICAgICAg ICAgICAgICAgICAgICAgICBJZiAoXF9TQi5BVEtQKQ0KICAgICAgICAgICAg ICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgTm90aWZ5IChcX1NCLkFUS0QsIDB4NTApDQogICAgICAgICAgICAg ICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICAgICAgfQ0K DQogICAgICAgICAgICAgICAgICAgICAgICBNZXRob2QgKF9RMzEsIDAsIE5v dFNlcmlhbGl6ZWQpDQogICAgICAgICAgICAgICAgICAgICAgICB7DQogICAg ICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKDB4MzEsIFxfU0IuUENJ MC5TQlJHLlAzNzgpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgSWYg KFxfU0IuQVRLUCkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7DQog ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5vdGlmeSAoXF9TQi5B VEtELCAweDUxKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAg ICAgICAgICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgICAg ICAgICAgTWV0aG9kIChfUTMyLCAwLCBOb3RTZXJpYWxpemVkKQ0KICAgICAg ICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAg ICAgIFN0b3JlICgweDMyLCBEUDgwKQ0KICAgICAgICAgICAgICAgICAgICAg ICAgICAgIElmIChcX1NCLlBDSTAuUDBQMi5NUEMwLk1QRFAgKCkpDQogICAg ICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBJZiAoXF9TQi5BVEtQKQ0KICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBOb3RpZnkgKFxfU0IuQVRLRCwgMHg1RCkNCiAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAg ICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAgICAgICAgIH0NCg0KICAg ICAgICAgICAgICAgICAgICAgICAgTWV0aG9kIChfUTMzLCAwLCBOb3RTZXJp YWxpemVkKQ0KICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAg ICAgICAgICAgICAgICAgICAgIElmIChcX1NCLkFUS1ApDQogICAgICAgICAg ICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBOb3RpZnkgKFxfU0IuQVRLRCwgMHg2QSkNCiAgICAgICAgICAg ICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgICAgICB9 DQoNCiAgICAgICAgICAgICAgICAgICAgICAgIE1ldGhvZCAoX1EzNiwgMCwg Tm90U2VyaWFsaXplZCkNCiAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAg ICAgICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoMHgzNiwgXF9TQi5Q Q0kwLlNCUkcuUDM3OCkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBJ ZiAoXF9TQi5BVEtQKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsN CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTm90aWZ5IChcX1NC LkFUS0QsIDB4NUMpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgfQ0K ICAgICAgICAgICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAg ICAgICAgICBNZXRob2QgKF9RNTEsIDAsIE5vdFNlcmlhbGl6ZWQpDQogICAg ICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAg ICAgICAgU3RvcmUgKDB4NTEsIERQODApDQogICAgICAgICAgICAgICAgICAg ICAgICAgICAgSWYgKFxfU0IuQVRLUCkNCiAgICAgICAgICAgICAgICAgICAg ICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5v dGlmeSAoXF9TQi5BVEtELCAweDRDKQ0KICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBcX1NCLlBDSTAuU0JSRy5FQzAuU1RDNSAoMHg0QikNCiAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU2xlZXAgKDB4MDFGNCkN CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXF9TQi5QQ0kwLlNC UkcuRUMwLlNUQzUgKDB4MkIpDQogICAgICAgICAgICAgICAgICAgICAgICAg ICAgfQ0KICAgICAgICAgICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAg ICAgICAgICAgICAgICBPcGVyYXRpb25SZWdpb24gKFBNUkcsIFN5c3RlbUlP LCBQTUJTLCAweDgwKQ0KICAgICAgICAgICAgICAgICAgICAgICAgRmllbGQg KFBNUkcsIEJ5dGVBY2MsIE5vTG9jaywgUHJlc2VydmUpDQogICAgICAgICAg ICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAg T2Zmc2V0ICgweDAxKSwgDQogICAgICAgICAgICAgICAgICAgICAgICAgICAg UFdOUywgICAxLCANCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg LCAgIDEsIA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ1MsICAg MSwgDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgT2Zmc2V0ICgweDJB KSwgDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICwgICAzLCAN CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBHUDNTLCAgIDEsIA0KICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAsICAgMywgDQogICAgICAg ICAgICAgICAgICAgICAgICAgICAgR1A3UywgICAxLCANCiAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgLCAgIDQsIA0KICAgICAgICAgICAgICAg ICAgICAgICAgICAgIEdQQlMsICAgMSwgDQogICAgICAgICAgICAgICAgICAg ICAgICAgICAgT2Zmc2V0ICgweDJGKSwgDQogICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICwgICA0LCANCiAgICAgICAgICAgICAgICAgICAgICAg ICAgICBHUEJFLCAgIDENCiAgICAgICAgICAgICAgICAgICAgICAgIH0NCg0K ICAgICAgICAgICAgICAgICAgICAgICAgT3BlcmF0aW9uUmVnaW9uIChJTywg U3lzdGVtSU8sIERQUlQsIDB4MDUpDQogICAgICAgICAgICAgICAgICAgICAg ICBGaWVsZCAoSU8sIEJ5dGVBY2MsIExvY2ssIFByZXNlcnZlKQ0KICAgICAg ICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAg ICAgIERBVDAsICAgOCwgDQogICAgICAgICAgICAgICAgICAgICAgICAgICAg T2Zmc2V0ICgweDA0KSwgDQogICAgICAgICAgICAgICAgICAgICAgICAgICAg Q01EMCwgICA4DQogICAgICAgICAgICAgICAgICAgICAgICB9DQoNCiAgICAg ICAgICAgICAgICAgICAgICAgIEZpZWxkIChJTywgQnl0ZUFjYywgTG9jaywg UHJlc2VydmUpDQogICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAg ICAgICAgICAgICAgICAgICAgICAgT2Zmc2V0ICgweDA0KSwgDQogICAgICAg ICAgICAgICAgICAgICAgICAgICAgT1VUUywgICAxLCANCiAgICAgICAgICAg ICAgICAgICAgICAgICAgICBJTlBTLCAgIDENCiAgICAgICAgICAgICAgICAg ICAgICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICAgICAgTWV0aG9kIChE TFkwLCAxLCBTZXJpYWxpemVkKQ0KICAgICAgICAgICAgICAgICAgICAgICAg ew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIElmIChFQ0FWICgpKQ0K ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgU3RvcmUgKEFyZzAsIENEVDEpDQogICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlICgweDZCLCBDRFQyKQ0K ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoMHgwMCwg Q0RUMykNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUg KDB4QkIsIENNRDEpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IFN0b3JlICgweDA1LCBMb2NhbDApDQogICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIFdoaWxlIChMQW5kIChMb2NhbDAsIENNRDEpKQ0KICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBTbGVlcCAoMHgwMSkNCiAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIERlY3JlbWVudCAoTG9jYWwwKQ0K ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgUmV0dXJuIChDRFQxKQ0KICAgICAg ICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAgICAg ICAgICAgICBFbHNlDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgew0K ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBXRFQxIChBcmcwKQ0K ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBXRFQyICgweDZCKQ0K ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBXRFQzICgweDAwKQ0K ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBXQ01EICgweEJCKQ0K ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBSZXR1cm4gKFJERUMg KDB4MDUpKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAg ICAgICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICAg ICAgTWV0aG9kIChTVEJSLCAwLCBTZXJpYWxpemVkKQ0KICAgICAgICAgICAg ICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIElm IChBQ1MgKCkpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgew0KICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoRGVyZWZPZiAo SW5kZXggKFBXQUMsIEJSQ1QpKSwgTG9jYWwwKQ0KICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBTdG9yZSAoMHg4NSwgTG9jYWwxKQ0KICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBTVEM0IChMb2NhbDAsIExvY2Fs MSkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAg ICAgICAgICAgICAgICAgICAgRWxzZQ0KICAgICAgICAgICAgICAgICAgICAg ICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU3Rv cmUgKERlcmVmT2YgKEluZGV4IChQV0RDLCBCUkNUKSksIExvY2FsMCkNCiAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKDB4ODUsIExv Y2FsMSkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU1RDNCAo TG9jYWwwLCBMb2NhbDEpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAg fQ0KICAgICAgICAgICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAg ICAgICAgICAgICBNZXRob2QgKEFDUywgMCwgU2VyaWFsaXplZCkNCiAgICAg ICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAg ICAgICBJZiAoRUNBViAoKSkNCiAgICAgICAgICAgICAgICAgICAgICAgICAg ICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJldHVybiAo UDY0UykNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9DQogICAgICAg ICAgICAgICAgICAgICAgICAgICAgRWxzZQ0KICAgICAgICAgICAgICAgICAg ICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg U3RvcmUgKDB4MDAsIExvY2FsMSkNCiAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgU3RvcmUgKFJEUDYgKCksIExvY2FsMSkNCiAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgQW5kIChMb2NhbDEsIDB4MTAsIExvY2Fs MSkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU2hpZnRSaWdo dCAoTG9jYWwxLCAweDA0LCBMb2NhbDEpDQogICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIFJldHVybiAoTG9jYWwxKQ0KICAgICAgICAgICAgICAg ICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAgICAgICAgIH0NCg0K ICAgICAgICAgICAgICAgICAgICAgICAgTWV0aG9kIChCQVRTLCAwLCBTZXJp YWxpemVkKQ0KICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAg ICAgICAgICAgICAgICAgICAgIElmIChFQ0FWICgpKQ0KICAgICAgICAgICAg ICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgUmV0dXJuIChQNTVTKQ0KICAgICAgICAgICAgICAgICAgICAgICAg ICAgIH0NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBFbHNlDQogICAg ICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBTdG9yZSAoMHgwMCwgTG9jYWwxKQ0KICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoUkRQNSAoKSwgTG9jYWwx KQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBbmQgKExvY2Fs MSwgMHgyMCwgTG9jYWwxKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBTaGlmdFJpZ2h0IChMb2NhbDEsIDB4MDUsIExvY2FsMSkNCiAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgUmV0dXJuIChMb2NhbDEpDQog ICAgICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAg ICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgICAgICAgICBNZXRob2Qg KENEUywgMCwgU2VyaWFsaXplZCkNCiAgICAgICAgICAgICAgICAgICAgICAg IHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBJZiAoRUNBViAoKSkN CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIFJldHVybiAoUDU0UykNCiAgICAgICAgICAg ICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgICAgICAg ICAgRWxzZQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKDB4MDAsIExvY2Fs MSkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKFJE UDUgKCksIExvY2FsMSkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgQW5kIChMb2NhbDEsIDB4MTAsIExvY2FsMSkNCiAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgU2hpZnRSaWdodCAoTG9jYWwxLCAweDA0LCBM b2NhbDEpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJldHVy biAoTG9jYWwxKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAg ICAgICAgICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgICAg ICAgICAgTWV0aG9kIChSRFA1LCAwLCBTZXJpYWxpemVkKQ0KICAgICAgICAg ICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAg IFJERUMgKDB4NDMpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgUmV0 dXJuIChSREVDICgweDQzKSkNCiAgICAgICAgICAgICAgICAgICAgICAgIH0N Cg0KICAgICAgICAgICAgICAgICAgICAgICAgTWV0aG9kIChSRFA2LCAwLCBT ZXJpYWxpemVkKQ0KICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAg ICAgICAgICAgICAgICAgICAgICAgIFJERUMgKDB4NzgpDQogICAgICAgICAg ICAgICAgICAgICAgICAgICAgUmV0dXJuIChSREVDICgweDc4KSkNCiAgICAg ICAgICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICAg ICAgTWV0aG9kIChTVEM0LCAyLCBTZXJpYWxpemVkKQ0KICAgICAgICAgICAg ICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIElm IChFQ0FWICgpKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKEFyZzAsIENE VDEpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlIChB cmcxLCBDRFQyKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBT dG9yZSAoMHhDNCwgQ01EMSkNCiAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgU3RvcmUgKDB4MDUsIExvY2FsMCkNCiAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgV2hpbGUgKExBbmQgKExvY2FsMCwgQ01EMSkpDQog ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIFNsZWVwICgweDAxKQ0KICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRGVjcmVtZW50IChMb2Nh bDApDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0NCg0KICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBSZXR1cm4gKENEVDEpDQog ICAgICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAg ICAgICAgICAgICAgIEVsc2UNCiAgICAgICAgICAgICAgICAgICAgICAgICAg ICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFdEVDEgKEFy ZzApDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFdEVDIgKEFy ZzEpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFdDTUQgKDB4 QzQpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJldHVybiAo UkRFQyAoMHgwNSkpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgfQ0K ICAgICAgICAgICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAg ICAgICAgICBNZXRob2QgKFNUQzUsIDEsIFNlcmlhbGl6ZWQpDQogICAgICAg ICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAg ICAgSWYgKEVDQVYgKCkpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAg ew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoQXJn MCwgQ0RUMSkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU3Rv cmUgKDB4QzUsIENNRDEpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIFN0b3JlICgweDA1LCBMb2NhbDApDQogICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIFdoaWxlIChMQW5kIChMb2NhbDAsIENNRDEpKQ0KICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBTbGVlcCAoMHgwMSkNCiAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIERlY3JlbWVudCAoTG9jYWww KQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9DQoNCiAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgUmV0dXJuIChDRFQxKQ0KICAg ICAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAg ICAgICAgICAgICBFbHNlDQogICAgICAgICAgICAgICAgICAgICAgICAgICAg ew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBXRFQxIChBcmcw KQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBXQ01EICgweEM1 KQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBSZXR1cm4gKFJE RUMgKDB4MDUpKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAg ICAgICAgICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgICAg ICAgICAgTWV0aG9kIChSQkFULCAxLCBTZXJpYWxpemVkKQ0KICAgICAgICAg ICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAg IElmIChFQ0FWICgpKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsN CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKDB4MDAs IENEVDEpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN0b3Jl IChBcmcwLCBDRFQyKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBTdG9yZSAoMHhEQSwgQ01EMSkNCiAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgU3RvcmUgKDB4MDUsIExvY2FsMCkNCiAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgV2hpbGUgKExBbmQgKExvY2FsMCwgQ01EMSkp DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIFNsZWVwICgweDAxKQ0KICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRGVjcmVtZW50IChM b2NhbDApDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0NCg0K ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBSZXR1cm4gKENEVDEp DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAg ICAgICAgICAgICAgICAgIEVsc2UNCiAgICAgICAgICAgICAgICAgICAgICAg ICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFdEVDIg KEFyZzApDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFdEVDEg KDB4MDApDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFdDTUQg KDB4REEpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJERUMg KDB4MDUpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJldHVy biAoUkRFQyAoMHgwNSkpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAg fQ0KICAgICAgICAgICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAg ICAgICAgICAgICBNZXRob2QgKFdDTUQsIDEsIE5vdFNlcmlhbGl6ZWQpDQog ICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAg ICAgICAgICAgV1JFQyAoMHgwNCwgQXJnMCkNCiAgICAgICAgICAgICAgICAg ICAgICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICAgICAgTWV0aG9kIChX RFQxLCAxLCBOb3RTZXJpYWxpemVkKQ0KICAgICAgICAgICAgICAgICAgICAg ICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIFdSRUMgKDB4MDUs IEFyZzApDQogICAgICAgICAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAg ICAgICAgICAgICAgICAgIE1ldGhvZCAoV0RUMiwgMSwgTm90U2VyaWFsaXpl ZCkNCiAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAg ICAgICAgICAgICAgICBXUkVDICgweDA2LCBBcmcwKQ0KICAgICAgICAgICAg ICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgICAgICAgICBNZXRo b2QgKFdEVDMsIDEsIE5vdFNlcmlhbGl6ZWQpDQogICAgICAgICAgICAgICAg ICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgV1JFQyAo MHgwNywgQXJnMCkNCiAgICAgICAgICAgICAgICAgICAgICAgIH0NCg0KICAg ICAgICAgICAgICAgICAgICAgICAgTWV0aG9kIChJUkRZLCAwLCBTZXJpYWxp emVkKQ0KICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAg ICAgICAgICAgICAgICAgIFJldHVybiAoTE5vdCAoSU5QUykpDQogICAgICAg ICAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAgICAgICAg IE1ldGhvZCAoT1JEWSwgMCwgU2VyaWFsaXplZCkNCiAgICAgICAgICAgICAg ICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBSZXR1 cm4gKE9VVFMpDQogICAgICAgICAgICAgICAgICAgICAgICB9DQoNCiAgICAg ICAgICAgICAgICAgICAgICAgIE1ldGhvZCAoV0FUSSwgMCwgU2VyaWFsaXpl ZCkNCiAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAg ICAgICAgICAgICAgICBTdG9yZSAoMHgwNSwgTG9jYWwwKQ0KICAgICAgICAg ICAgICAgICAgICAgICAgICAgIFdoaWxlIChMQW5kIChMb2NhbDAsIExOb3Qg KElSRFkgKCkpKSkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7DQog ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFNsZWVwICgweDAxKQ0K ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBEZWNyZW1lbnQgKExv Y2FsMCkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9DQoNCiAgICAg ICAgICAgICAgICAgICAgICAgICAgICBSZXR1cm4gKElSRFkgKCkpDQogICAg ICAgICAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAgICAg ICAgIE1ldGhvZCAoV0FUTywgMCwgU2VyaWFsaXplZCkNCiAgICAgICAgICAg ICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBT dG9yZSAoMHgwNSwgTG9jYWwwKQ0KICAgICAgICAgICAgICAgICAgICAgICAg ICAgIFdoaWxlIChMQW5kIChMb2NhbDAsIExOb3QgKE9SRFkgKCkpKSkNCiAg ICAgICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIFNsZWVwICgweDAxKQ0KICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBEZWNyZW1lbnQgKExvY2FsMCkNCiAgICAgICAg ICAgICAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAgICAg ICAgICAgICBSZXR1cm4gKE9SRFkgKCkpDQogICAgICAgICAgICAgICAgICAg ICAgICB9DQoNCiAgICAgICAgICAgICAgICAgICAgICAgIE1ldGhvZCAoQ0xS QiwgMCwgU2VyaWFsaXplZCkNCiAgICAgICAgICAgICAgICAgICAgICAgIHsN CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBXaGlsZSAoV0FUTyAoKSkN CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIFN0b3JlIChEQVQwLCBMb2NhbDApDQogICAg ICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAg ICAgICAgfQ0KDQogICAgICAgICAgICAgICAgICAgICAgICBNZXRob2QgKFJE RUMsIDEsIFNlcmlhbGl6ZWQpDQogICAgICAgICAgICAgICAgICAgICAgICB7 DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKDB4MDAsIEdQ QkUpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgSWYgKFdBVEkgKCkp DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBTdG9yZSAoMHg4MCwgQ01EMCkNCiAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgSWYgKFdBVEkgKCkpDQogICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIFN0b3JlIChBcmcwLCBEQVQwKQ0KICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgSWYgKFdBVE8gKCkp DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7DQogICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKERB VDAsIExvY2FsMCkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIH0NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAg ICAgICAgICAgICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAg ICAgICAgICAgICAgIFN0b3JlICgweDAxLCBHUEJTKQ0KICAgICAgICAgICAg ICAgICAgICAgICAgICAgIFN0b3JlICgweDAxLCBHUEJFKQ0KICAgICAgICAg ICAgICAgICAgICAgICAgICAgIFJldHVybiAoTG9jYWwwKQ0KICAgICAgICAg ICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgICAgICAgICBN ZXRob2QgKFdSRUMsIDIsIFNlcmlhbGl6ZWQpDQogICAgICAgICAgICAgICAg ICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUg KDB4MDAsIEdQQkUpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgSWYg KFdBVEkgKCkpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgew0KICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoMHg4MSwgQ01E MCkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgSWYgKFdBVEkg KCkpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlIChBcmcwLCBE QVQwKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgSWYg KFdBVEkgKCkpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg U3RvcmUgKEFyZzEsIERBVDApDQogICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IH0NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAg ICAgICAgICAgICAgICAgICAgICBTdG9yZSAoMHgwMSwgR1BCUykNCiAgICAg ICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoMHgwMSwgR1BCRSkNCiAg ICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAgICAg fQ0KICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgIEFsaWFz IChcX1NCLlBDSTAuU0JSRy5FQzAuRFBSVCwgRFBSVCkNCiAgICAgICAgICAg ICAgICBBbGlhcyAoXF9TQi5QQ0kwLlNCUkcuRUMwLkNQUlQsIENQUlQpDQog ICAgICAgICAgICAgICAgU2NvcGUgKFxfU0IpDQogICAgICAgICAgICAgICAg ew0KICAgICAgICAgICAgICAgICAgICBBbGlhcyAoXF9TQi5QQ0kwLlNCUkcu RUMwLkVDQVYsIEVDQVYpDQogICAgICAgICAgICAgICAgICAgIEFsaWFzIChc X1NCLlBDSTAuU0JSRy5FQzAuQUNTLCBBQ1MpDQogICAgICAgICAgICAgICAg ICAgIEFsaWFzIChcX1NCLlBDSTAuU0JSRy5FQzAuQkFUUywgQkFUUykNCiAg ICAgICAgICAgICAgICAgICAgRGV2aWNlIChMSUQpDQogICAgICAgICAgICAg ICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgIE5hbWUgKF9ISUQs IEVpc2FJZCAoIlBOUDBDMEQiKSkNCiAgICAgICAgICAgICAgICAgICAgICAg IE1ldGhvZCAoX0xJRCwgMCwgTm90U2VyaWFsaXplZCkNCiAgICAgICAgICAg ICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBT dG9yZSAoXF9TQi5MSURMLCBMb2NhbDApDQogICAgICAgICAgICAgICAgICAg ICAgICAgICAgUmV0dXJuIChMb2NhbDApDQogICAgICAgICAgICAgICAgICAg ICAgICB9DQogICAgICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAg ICAgICAgICBTY29wZSAoXF9HUEUpDQogICAgICAgICAgICAgICAgICAgIHsN CiAgICAgICAgICAgICAgICAgICAgICAgIE1ldGhvZCAoX0wxQiwgMCwgU2Vy aWFsaXplZCkNCiAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAg ICAgICAgICAgICAgICAgICAgICBYT3IgKFxfU0IuTElETCwgMHgwMSwgXF9T Qi5MSURMKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlIChc X1NCLkxJREwsIFxfU0IuUENJMC5TQlJHLlAzNzgpDQogICAgICAgICAgICAg ICAgICAgICAgICAgICAgTm90aWZ5IChcX1NCLkxJRCwgMHg4MCkNCiAgICAg ICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAgICAgfQ0K DQogICAgICAgICAgICAgICAgICAgIERldmljZSAoU0xQQikNCiAgICAgICAg ICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgTmFtZSAo X0hJRCwgRWlzYUlkICgiUE5QMEMwRSIpKQ0KICAgICAgICAgICAgICAgICAg ICB9DQogICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgU2Nv cGUgKFxfU0IuUENJMC5TQlJHLkVDMCkNCiAgICAgICAgICAgICAgICB7DQog ICAgICAgICAgICAgICAgICAgIE1ldGhvZCAoUlNCVCwgMiwgTm90U2VyaWFs aXplZCkNCiAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAg ICAgICAgICAgU3RvcmUgKDB4MDcsIExvY2FsMCkNCiAgICAgICAgICAgICAg ICAgICAgICAgIFdoaWxlIChMb2NhbDApDQogICAgICAgICAgICAgICAgICAg ICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgRGVjcmVtZW50 IChMb2NhbDApDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUg KDB4MDAsIFNTVFMpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgU3Rv cmUgKEFyZzAsIEFERFIpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAg U3RvcmUgKEFyZzEsIFNDTUQpDQogICAgICAgICAgICAgICAgICAgICAgICAg ICAgU3RvcmUgKDB4MDUsIFBSVEMpDQogICAgICAgICAgICAgICAgICAgICAg ICAgICAgU3RvcmUgKDB4MDMsIExvY2FsMikNCiAgICAgICAgICAgICAgICAg ICAgICAgICAgICBXaGlsZSAoTG9jYWwyKQ0KICAgICAgICAgICAgICAgICAg ICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg U3RhbGwgKDB4MEEpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IEFuZCAoU1NUUywgMHg4MCwgTG9jYWwxKQ0KICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBJZiAoTEVxdWFsIChMb2NhbDEsIDB4ODApKQ0KICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoMHgwMCwgTG9jYWwwKQ0K ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKDB4 MDAsIExvY2FsMikNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg fQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFbHNlDQogICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIERlY3JlbWVudCAoTG9jYWwyKQ0KICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAg ICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICAgICAgfQ0K DQogICAgICAgICAgICAgICAgICAgICAgICBSZXR1cm4gKFNNRDApDQogICAg ICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICBNZXRo b2QgKFJCWVQsIDIsIE5vdFNlcmlhbGl6ZWQpDQogICAgICAgICAgICAgICAg ICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlICgweDA3LCBM b2NhbDApDQogICAgICAgICAgICAgICAgICAgICAgICBXaGlsZSAoTG9jYWww KQ0KICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAg ICAgICAgICAgICAgIERlY3JlbWVudCAoTG9jYWwwKQ0KICAgICAgICAgICAg ICAgICAgICAgICAgICAgIFN0b3JlICgweDAwLCBTU1RTKQ0KICAgICAgICAg ICAgICAgICAgICAgICAgICAgIFN0b3JlIChBcmcwLCBBRERSKQ0KICAgICAg ICAgICAgICAgICAgICAgICAgICAgIFN0b3JlIChBcmcxLCBTQ01EKQ0KICAg ICAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlICgweDA3LCBQUlRDKQ0K ICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlICgweDAzLCBMb2Nh bDIpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgV2hpbGUgKExvY2Fs MikNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIFNsZWVwICgweDBBKQ0KICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBBbmQgKFNTVFMsIDB4ODAsIExvY2Fs MSkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgSWYgKExFcXVh bCAoTG9jYWwxLCAweDgwKSkNCiAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg U3RvcmUgKDB4MDAsIExvY2FsMCkNCiAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIFN0b3JlICgweDAwLCBMb2NhbDIpDQogICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgRWxzZQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBE ZWNyZW1lbnQgKExvY2FsMikNCiAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAg ICAgICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICAg ICAgUmV0dXJuIChTTUQwKQ0KICAgICAgICAgICAgICAgICAgICB9DQoNCiAg ICAgICAgICAgICAgICAgICAgTWV0aG9kIChXQllULCAzLCBOb3RTZXJpYWxp emVkKQ0KICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAg ICAgICAgICBTdG9yZSAoMHgwNywgTG9jYWwwKQ0KICAgICAgICAgICAgICAg ICAgICAgICAgV2hpbGUgKExvY2FsMCkNCiAgICAgICAgICAgICAgICAgICAg ICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBEZWNyZW1lbnQg KExvY2FsMCkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAo MHgwMCwgU1NUUykNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdG9y ZSAoQXJnMCwgQUREUikNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBT dG9yZSAoQXJnMSwgU0NNRCkNCiAgICAgICAgICAgICAgICAgICAgICAgICAg ICBTdG9yZSAoQXJnMiwgU01EMCkNCiAgICAgICAgICAgICAgICAgICAgICAg ICAgICBTdG9yZSAoMHgwNiwgUFJUQykNCiAgICAgICAgICAgICAgICAgICAg ICAgICAgICBTdG9yZSAoMHgwMywgTG9jYWwyKQ0KICAgICAgICAgICAgICAg ICAgICAgICAgICAgIFdoaWxlIChMb2NhbDIpDQogICAgICAgICAgICAgICAg ICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBTbGVlcCAoMHgwQSkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgQW5kIChTU1RTLCAweDgwLCBMb2NhbDEpDQogICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIElmIChMRXF1YWwgKExvY2FsMSwgMHg4MCkpDQog ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlICgweDAwLCBMb2NhbDAp DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAo MHgwMCwgTG9jYWwyKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICB9DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVsc2UNCiAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgRGVjcmVtZW50IChMb2NhbDIpDQog ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAg ICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgICAgICB9 DQogICAgICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgICAg ICBNZXRob2QgKFJXUkQsIDIsIE5vdFNlcmlhbGl6ZWQpDQogICAgICAgICAg ICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgIEFjcXVpcmUg KEVDTVgsIDB4RkZGRikNCiAgICAgICAgICAgICAgICAgICAgICAgIFN0b3Jl ICgweDBGLCBMb2NhbDApDQogICAgICAgICAgICAgICAgICAgICAgICBXaGls ZSAoTG9jYWwwKQ0KICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAg ICAgICAgICAgICAgICAgICAgICAgIERlY3JlbWVudCAoTG9jYWwwKQ0KICAg ICAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlICgweDAwLCBTU1RTKQ0K ICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlIChBcmcwLCBBRERS KQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlIChBcmcxLCBT Q01EKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlICgweDA5 LCBQUlRDKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlICgw eDAzLCBMb2NhbDIpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgU3Rh bGwgKDB4NzgpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgQW5kIChT U1RTLCAweDgwLCBMb2NhbDEpDQogICAgICAgICAgICAgICAgICAgICAgICAg ICAgSWYgKExFcXVhbCAoTG9jYWwxLCAweDgwKSkNCiAgICAgICAgICAgICAg ICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIFN0b3JlICgweDAwLCBMb2NhbDApDQogICAgICAgICAgICAgICAgICAg ICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVsc2UN CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIFN0YWxsICgweDc4KQ0KICAgICAgICAgICAg ICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAgICAgICAgIH0N Cg0KICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKFNNRDAsIERCMDAp DQogICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoU01EMSwgREIwMSkN CiAgICAgICAgICAgICAgICAgICAgICAgIFJlbGVhc2UgKEVDTVgpDQogICAg ICAgICAgICAgICAgICAgICAgICBSZXR1cm4gKERXMDApDQogICAgICAgICAg ICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICBNZXRob2QgKFdX UkQsIDQsIE5vdFNlcmlhbGl6ZWQpDQogICAgICAgICAgICAgICAgICAgIHsN CiAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlICgweDA3LCBMb2NhbDAp DQogICAgICAgICAgICAgICAgICAgICAgICBXaGlsZSAoTG9jYWwwKQ0KICAg ICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAg ICAgICAgIERlY3JlbWVudCAoTG9jYWwwKQ0KICAgICAgICAgICAgICAgICAg ICAgICAgICAgIFN0b3JlICgweDAwLCBTU1RTKQ0KICAgICAgICAgICAgICAg ICAgICAgICAgICAgIFN0b3JlIChBcmcwLCBBRERSKQ0KICAgICAgICAgICAg ICAgICAgICAgICAgICAgIFN0b3JlIChBcmcxLCBTQ01EKQ0KICAgICAgICAg ICAgICAgICAgICAgICAgICAgIFN0b3JlIChBcmcyLCBTTUQwKQ0KICAgICAg ICAgICAgICAgICAgICAgICAgICAgIFN0b3JlIChBcmczLCBTTUQxKQ0KICAg ICAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlICgweDA4LCBQUlRDKQ0K ICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlICgweDAzLCBMb2Nh bDIpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgV2hpbGUgKExvY2Fs MikNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIFNsZWVwICgweDBBKQ0KICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBBbmQgKFNTVFMsIDB4ODAsIExvY2Fs MSkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgSWYgKExFcXVh bCAoTG9jYWwxLCAweDgwKSkNCiAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg U3RvcmUgKDB4MDAsIExvY2FsMCkNCiAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIFN0b3JlICgweDAwLCBMb2NhbDIpDQogICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgRWxzZQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBE ZWNyZW1lbnQgKExvY2FsMikNCiAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAg ICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAgICAgfQ0K ICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgIERldmljZSAo XF9TQi5BQykNCiAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAg ICAgIE5hbWUgKF9ISUQsICJBQ1BJMDAwMyIpDQogICAgICAgICAgICAgICAg ICAgIE5hbWUgKF9QQ0wsIFBhY2thZ2UgKDB4MDEpDQogICAgICAgICAgICAg ICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgIFxfU0INCiAgICAg ICAgICAgICAgICAgICAgfSkNCiAgICAgICAgICAgICAgICAgICAgTWV0aG9k IChfUFNSLCAwLCBOb3RTZXJpYWxpemVkKQ0KICAgICAgICAgICAgICAgICAg ICB7DQogICAgICAgICAgICAgICAgICAgICAgICBSZXR1cm4gKEFDUyAoKSkN CiAgICAgICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgICAg IE1ldGhvZCAoX0lOSSwgMCwgTm90U2VyaWFsaXplZCkNCiAgICAgICAgICAg ICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgSWYgKEFDUyAo KSkNCiAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAg ICAgICAgICAgICAgICBcX1NCLlBDSTAuU0JSRy5FQzAuV1JFQyAoMHg1NCwg MHg4MCkNCiAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAg ICAgICAgICAgICAgIEVsc2UNCiAgICAgICAgICAgICAgICAgICAgICAgIHsN CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBcX1NCLlBDSTAuU0JSRy5F QzAuV1JFQyAoMHg1NCwgMHg5MCkNCiAgICAgICAgICAgICAgICAgICAgICAg IH0NCiAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgIH0N Cg0KICAgICAgICAgICAgICAgIFNjb3BlIChcX1NCLlBDSTAuU0JSRy5FQzAp DQogICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICBNZXRo b2QgKF9RMzQsIDAsIE5vdFNlcmlhbGl6ZWQpDQogICAgICAgICAgICAgICAg ICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlICgweDM0LCBE UDgwKQ0KICAgICAgICAgICAgICAgICAgICAgICAgXF9TQi5QQ0kwLlNCUkcu RUMwLlNUQlIgKCkNCiAgICAgICAgICAgICAgICAgICAgICAgIElmIChBQ1Mg KCkpDQogICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAg ICAgICAgICAgICAgICAgV1JFQyAoMHg1NCwgMHg4MCkNCiAgICAgICAgICAg ICAgICAgICAgICAgICAgICBJZiAoXF9TQi5BVEtQKQ0KICAgICAgICAgICAg ICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgTm90aWZ5IChcX1NCLkFUS0QsIDB4NTgpDQogICAgICAgICAgICAg ICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICAgICAgfQ0K ICAgICAgICAgICAgICAgICAgICAgICAgRWxzZQ0KICAgICAgICAgICAgICAg ICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIFdSRUMg KDB4NTQsIDB4OTApDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgSWYg KFxfU0IuQVRLUCkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7DQog ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5vdGlmeSAoXF9TQi5B VEtELCAweDU3KQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAg ICAgICAgICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgICAg ICAgICAgTm90aWZ5IChcX1NCLkFDLCAweDgwKQ0KICAgICAgICAgICAgICAg ICAgICAgICAgU2xlZXAgKDB4MTQpDQogICAgICAgICAgICAgICAgICAgICAg ICBOb3RpZnkgKFxfU0IuQkFUMCwgMHg4MCkNCiAgICAgICAgICAgICAgICAg ICAgICAgIFNsZWVwICgweDE0KQ0KICAgICAgICAgICAgICAgICAgICAgICAg Tm90aWZ5IChcX1NCLkJBVDEsIDB4ODApDQogICAgICAgICAgICAgICAgICAg ICAgICBTbGVlcCAoMHgxNCkNCiAgICAgICAgICAgICAgICAgICAgICAgIE5v dGlmeSAoXF9QUi5DUFUxLCAweDgwKQ0KICAgICAgICAgICAgICAgICAgICAg ICAgU2xlZXAgKDB4NjQpDQogICAgICAgICAgICAgICAgICAgICAgICBOb3Rp ZnkgKFxfUFIuQ1BVMSwgMHg4MSkNCiAgICAgICAgICAgICAgICAgICAgICAg IEluY3JlbWVudCAoQVBNUykNCiAgICAgICAgICAgICAgICAgICAgfQ0KICAg ICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgIERldmljZSAoT1NZ UykNCiAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgIE5h bWUgKF9ISUQsIEVpc2FJZCAoIlBOUDBDMDIiKSkNCiAgICAgICAgICAgICAg ICAgICAgTmFtZSAoX1VJRCwgMHgwMikNCiAgICAgICAgICAgICAgICAgICAg TmFtZSAoQ1JTLCBSZXNvdXJjZVRlbXBsYXRlICgpDQogICAgICAgICAgICAg ICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgIElPIChEZWNvZGUx NiwgMHgwMDAwLCAweDAwMDAsIDB4MDAsIDB4MjApDQogICAgICAgICAgICAg ICAgICAgICAgICBJTyAoRGVjb2RlMTYsIDB4MDAwMCwgMHgwMDAwLCAweDAw LCAweDAwKQ0KICAgICAgICAgICAgICAgICAgICAgICAgSU8gKERlY29kZTE2 LCAweDAwMDAsIDB4MDAwMCwgMHgwMCwgMHgwMCkNCiAgICAgICAgICAgICAg ICAgICAgICAgIElPIChEZWNvZGUxNiwgMHgwMDAwLCAweDAwMDAsIDB4MDAs IDB4MDApDQogICAgICAgICAgICAgICAgICAgICAgICBJTyAoRGVjb2RlMTYs IDB4MDAwMCwgMHgwMDAwLCAweDAwLCAweDAwKQ0KICAgICAgICAgICAgICAg ICAgICAgICAgSU8gKERlY29kZTE2LCAweDA0QzAsIDB4MDRDMCwgMHgwMCwg MHgxMCkNCiAgICAgICAgICAgICAgICAgICAgICAgIE1lbW9yeTMyRml4ZWQg KFJlYWRPbmx5LCAweDAwMDAwMDAwLCAweDAwMDAwMDAwKQ0KICAgICAgICAg ICAgICAgICAgICAgICAgTWVtb3J5MzJGaXhlZCAoUmVhZE9ubHksIDB4MDAw MDAwMDAsIDB4MDAwMDAwMDApDQogICAgICAgICAgICAgICAgICAgIH0pDQog ICAgICAgICAgICAgICAgICAgIE1ldGhvZCAoX0NSUywgMCwgTm90U2VyaWFs aXplZCkNCiAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAg ICAgICAgICAgQ3JlYXRlV29yZEZpZWxkIChDUlMsIDB4MEEsIEdQMDApDQog ICAgICAgICAgICAgICAgICAgICAgICBDcmVhdGVXb3JkRmllbGQgKENSUywg MHgwQywgR1AwMSkNCiAgICAgICAgICAgICAgICAgICAgICAgIENyZWF0ZUJ5 dGVGaWVsZCAoQ1JTLCAweDBGLCBHUDBMKQ0KICAgICAgICAgICAgICAgICAg ICAgICAgQ3JlYXRlV29yZEZpZWxkIChDUlMsIDB4MDIsIFNCUzApDQogICAg ICAgICAgICAgICAgICAgICAgICBDcmVhdGVXb3JkRmllbGQgKENSUywgMHgw NCwgU0JTMSkNCiAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlIChQTUJT LCBHUDAwKQ0KICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKFBNQlMs IEdQMDEpDQogICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoU0JVUywg U0JTMCkNCiAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlIChTQlVTLCBT QlMxKQ0KICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKFBNTE4sIEdQ MEwpDQogICAgICAgICAgICAgICAgICAgICAgICBJZiAoTEFuZCAoTE5vdCAo TEVxdWFsIChTUElPLCAweDAzRjApKSwgTEdyZWF0ZXIgKFNQSU8sIDB4RjAp KSkNCiAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAg ICAgICAgICAgICAgICBDcmVhdGVXb3JkRmllbGQgKENSUywgMHgxMiwgR1Ax MCkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBDcmVhdGVXb3JkRmll bGQgKENSUywgMHgxNCwgR1AxMSkNCiAgICAgICAgICAgICAgICAgICAgICAg ICAgICBDcmVhdGVCeXRlRmllbGQgKENSUywgMHgxNywgR1BMMSkNCiAgICAg ICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoU1BJTywgR1AxMCkNCiAg ICAgICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoU1BJTywgR1AxMSkN CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoMHgwMiwgR1BM MSkNCiAgICAgICAgICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAg ICAgICAgICAgICAgSWYgKElPMUIpDQogICAgICAgICAgICAgICAgICAgICAg ICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgQ3JlYXRlV29yZEZp ZWxkIChDUlMsIDB4MUEsIEdQMjApDQogICAgICAgICAgICAgICAgICAgICAg ICAgICAgQ3JlYXRlV29yZEZpZWxkIChDUlMsIDB4MUMsIEdQMjEpDQogICAg ICAgICAgICAgICAgICAgICAgICAgICAgQ3JlYXRlQnl0ZUZpZWxkIChDUlMs IDB4MUYsIEdQMkwpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgU3Rv cmUgKElPMUIsIEdQMjApDQogICAgICAgICAgICAgICAgICAgICAgICAgICAg U3RvcmUgKElPMUIsIEdQMjEpDQogICAgICAgICAgICAgICAgICAgICAgICAg ICAgU3RvcmUgKElPMUwsIEdQMkwpDQogICAgICAgICAgICAgICAgICAgICAg ICB9DQoNCiAgICAgICAgICAgICAgICAgICAgICAgIElmIChJTzJCKQ0KICAg ICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAg ICAgICAgIENyZWF0ZVdvcmRGaWVsZCAoQ1JTLCAweDIyLCBHUDMwKQ0KICAg ICAgICAgICAgICAgICAgICAgICAgICAgIENyZWF0ZVdvcmRGaWVsZCAoQ1JT LCAweDI0LCBHUDMxKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIENy ZWF0ZUJ5dGVGaWVsZCAoQ1JTLCAweDI3LCBHUDNMKQ0KICAgICAgICAgICAg ICAgICAgICAgICAgICAgIFN0b3JlIChJTzJCLCBHUDMwKQ0KICAgICAgICAg ICAgICAgICAgICAgICAgICAgIFN0b3JlIChJTzJCLCBHUDMxKQ0KICAgICAg ICAgICAgICAgICAgICAgICAgICAgIFN0b3JlIChJTzJMLCBHUDNMKQ0KICAg ICAgICAgICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgICAg ICAgICBJZiAoQVBDQikNCiAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAg ICAgICAgICAgICAgICAgICAgICAgICAgICBDcmVhdGVEV29yZEZpZWxkIChD UlMsIDB4MzgsIE1MMDEpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAg Q3JlYXRlRFdvcmRGaWVsZCAoQ1JTLCAweDM0LCBNQjAxKQ0KICAgICAgICAg ICAgICAgICAgICAgICAgICAgIENyZWF0ZURXb3JkRmllbGQgKENSUywgMHg0 NCwgTUwwMikNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBDcmVhdGVE V29yZEZpZWxkIChDUlMsIDB4NDAsIE1CMDIpDQogICAgICAgICAgICAgICAg ICAgICAgICAgICAgU3RvcmUgKEFQQ0IsIE1CMDEpDQogICAgICAgICAgICAg ICAgICAgICAgICAgICAgU3RvcmUgKEFQQ0wsIE1MMDEpDQogICAgICAgICAg ICAgICAgICAgICAgICAgICAgU3RvcmUgKDB4RkVFMDAwMDAsIE1CMDIpDQog ICAgICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKDB4MTAwMCwgTUww MikNCiAgICAgICAgICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAg ICAgICAgICAgICAgUmV0dXJuIChDUlMpDQogICAgICAgICAgICAgICAgICAg IH0NCiAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICBEZXZp Y2UgKFxfU0IuU1lTTSkNCiAgICAgICAgICAgICAgICB7DQogICAgICAgICAg ICAgICAgICAgIE5hbWUgKF9ISUQsIEVpc2FJZCAoIlBOUDBDMDEiKSkNCiAg ICAgICAgICAgICAgICAgICAgTmFtZSAoX1VJRCwgMHgwMSkNCiAgICAgICAg ICAgICAgICAgICAgTmFtZSAoQ1JTLCBSZXNvdXJjZVRlbXBsYXRlICgpDQog ICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAg IE1lbW9yeTMyRml4ZWQgKFJlYWRXcml0ZSwgMHgwMDAwMDAwMCwgMHgwMDBB MDAwMCkNCiAgICAgICAgICAgICAgICAgICAgICAgIE1lbW9yeTMyRml4ZWQg KFJlYWRPbmx5LCAweDAwMDAwMDAwLCAweDAwMDAwMDAwKQ0KICAgICAgICAg ICAgICAgICAgICAgICAgTWVtb3J5MzJGaXhlZCAoUmVhZE9ubHksIDB4MDAw RTAwMDAsIDB4MDAwMjAwMDApDQogICAgICAgICAgICAgICAgICAgICAgICBN ZW1vcnkzMkZpeGVkIChSZWFkV3JpdGUsIDB4MDAxMDAwMDAsIDB4MDAwMDAw MDApDQogICAgICAgICAgICAgICAgICAgICAgICBNZW1vcnkzMkZpeGVkIChS ZWFkT25seSwgMHgwMDAwMDAwMCwgMHgwMDAwMDAwMCkNCiAgICAgICAgICAg ICAgICAgICAgfSkNCiAgICAgICAgICAgICAgICAgICAgTWV0aG9kIChfQ1JT LCAwLCBOb3RTZXJpYWxpemVkKQ0KICAgICAgICAgICAgICAgICAgICB7DQog ICAgICAgICAgICAgICAgICAgICAgICBDcmVhdGVEV29yZEZpZWxkIChDUlMs IDB4MTAsIEJBUzEpDQogICAgICAgICAgICAgICAgICAgICAgICBDcmVhdGVE V29yZEZpZWxkIChDUlMsIDB4MTQsIExFTjEpDQogICAgICAgICAgICAgICAg ICAgICAgICBDcmVhdGVEV29yZEZpZWxkIChDUlMsIDB4MUMsIEJBUzIpDQog ICAgICAgICAgICAgICAgICAgICAgICBDcmVhdGVEV29yZEZpZWxkIChDUlMs IDB4MjAsIExFTjIpDQogICAgICAgICAgICAgICAgICAgICAgICBDcmVhdGVE V29yZEZpZWxkIChDUlMsIDB4MkMsIExFTjMpDQogICAgICAgICAgICAgICAg ICAgICAgICBDcmVhdGVEV29yZEZpZWxkIChDUlMsIDB4MzQsIEJBUzQpDQog ICAgICAgICAgICAgICAgICAgICAgICBDcmVhdGVEV29yZEZpZWxkIChDUlMs IDB4MzgsIExFTjQpDQogICAgICAgICAgICAgICAgICAgICAgICBJZiAoT1NG TCAoKSkge30NCiAgICAgICAgICAgICAgICAgICAgICAgIEVsc2UNCiAgICAg ICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAg ICAgICBJZiAoTUcxQikNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7 DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIElmIChMR3JlYXRl ciAoTUcxQiwgMHgwMDBDMDAwMCkpDQogICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIFN0b3JlICgweDAwMEMwMDAwLCBCQVMxKQ0KICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgU3VidHJhY3QgKE1HMUIsIEJBUzEsIExF TjEpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAg ICAgICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICAg ICAgICAgICAgRWxzZQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsN CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKDB4MDAw QzAwMDAsIEJBUzEpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IFN0b3JlICgweDAwMDIwMDAwLCBMRU4xKQ0KICAgICAgICAgICAgICAgICAg ICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIElm IChBZGQgKE1HMUIsIE1HMUwsIExvY2FsMCkpDQogICAgICAgICAgICAgICAg ICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBTdG9yZSAoTG9jYWwwLCBCQVMyKQ0KICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBTdWJ0cmFjdCAoMHgwMDEwMDAwMCwgQkFTMiwgTEVOMikN CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAg ICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAgICAgICAgIFN1YnRy YWN0IChNRzJCLCAweDAwMTAwMDAwLCBMRU4zKQ0KICAgICAgICAgICAgICAg ICAgICAgICAgQWRkIChNRzJCLCBNRzJMLCBCQVM0KQ0KICAgICAgICAgICAg ICAgICAgICAgICAgU3VidHJhY3QgKDB4MDAsIEJBUzQsIExFTjQpDQogICAg ICAgICAgICAgICAgICAgICAgICBSZXR1cm4gKENSUykNCiAgICAgICAgICAg ICAgICAgICAgfQ0KICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAg ICAgIFNjb3BlIChcKQ0KICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAg ICAgICAgICAgT3BlcmF0aW9uUmVnaW9uIChcR1BTQywgU3lzdGVtSU8sIDB4 QjIsIDB4MDIpDQogICAgICAgICAgICAgICAgICAgIEZpZWxkIChcR1BTQywg Qnl0ZUFjYywgTm9Mb2NrLCBQcmVzZXJ2ZSkNCiAgICAgICAgICAgICAgICAg ICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgU01DTSwgICA4LCANCiAg ICAgICAgICAgICAgICAgICAgICAgIFNNU1QsICAgOA0KICAgICAgICAgICAg ICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAgICAgTWV0aG9kIChcSVNN SSwgMSwgU2VyaWFsaXplZCkNCiAgICAgICAgICAgICAgICAgICAgew0KICAg ICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKEFyZzAsIFNNQ00pDQogICAg ICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICBNZXRo b2QgKFxESUFHLCAxLCBOb3RTZXJpYWxpemVkKQ0KICAgICAgICAgICAgICAg ICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoQXJnMCwg REJHOCkNCiAgICAgICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAg ICAgICAgIE9wZXJhdGlvblJlZ2lvbiAoXFNJT0csIFN5c3RlbUlPLCBJTzFC LCAweDEwKQ0KICAgICAgICAgICAgICAgICAgICBGaWVsZCAoXFNJT0csIEJ5 dGVBY2MsIE5vTG9jaywgUHJlc2VydmUpDQogICAgICAgICAgICAgICAgICAg IHsNCiAgICAgICAgICAgICAgICAgICAgICAgIFBPMDAsICAgMSwgDQogICAg ICAgICAgICAgICAgICAgICAgICBQTzAxLCAgIDEsIA0KICAgICAgICAgICAg ICAgICAgICAgICAgUE8wMiwgICAxLCANCiAgICAgICAgICAgICAgICAgICAg ICAgIFBPMDMsICAgMSwgDQogICAgICAgICAgICAgICAgICAgICAgICBQTzA0 LCAgIDEsIA0KICAgICAgICAgICAgICAgICAgICAgICAgUE8wNSwgICAxLCAN CiAgICAgICAgICAgICAgICAgICAgICAgIFBPMDYsICAgMSwgDQogICAgICAg ICAgICAgICAgICAgICAgICBQTzA3LCAgIDEsIA0KICAgICAgICAgICAgICAg ICAgICAgICAgUEkwMCwgICAxLCANCiAgICAgICAgICAgICAgICAgICAgICAg IFBJMDEsICAgMSwgDQogICAgICAgICAgICAgICAgICAgICAgICBQSTAyLCAg IDEsIA0KICAgICAgICAgICAgICAgICAgICAgICAgUEkwMywgICAxLCANCiAg ICAgICAgICAgICAgICAgICAgICAgIFBJMDQsICAgMSwgDQogICAgICAgICAg ICAgICAgICAgICAgICBQSTA1LCAgIDEsIA0KICAgICAgICAgICAgICAgICAg ICAgICAgUEkwNiwgICAxLCANCiAgICAgICAgICAgICAgICAgICAgICAgIFBJ MDcsICAgMSwgDQogICAgICAgICAgICAgICAgICAgICAgICBPZmZzZXQgKDB4 MDQpLCANCiAgICAgICAgICAgICAgICAgICAgICAgIFBPMTAsICAgMSwgDQog ICAgICAgICAgICAgICAgICAgICAgICBQTzExLCAgIDEsIA0KICAgICAgICAg ICAgICAgICAgICAgICAgUE8xMiwgICAxLCANCiAgICAgICAgICAgICAgICAg ICAgICAgIFBPMTMsICAgMSwgDQogICAgICAgICAgICAgICAgICAgICAgICBQ TzE0LCAgIDEsIA0KICAgICAgICAgICAgICAgICAgICAgICAgUE8xNSwgICAx LCANCiAgICAgICAgICAgICAgICAgICAgICAgIFBPMTYsICAgMSwgDQogICAg ICAgICAgICAgICAgICAgICAgICBQTzE3LCAgIDEsIA0KICAgICAgICAgICAg ICAgICAgICAgICAgUEkxMCwgICAxLCANCiAgICAgICAgICAgICAgICAgICAg ICAgIFBJMTEsICAgMSwgDQogICAgICAgICAgICAgICAgICAgICAgICBQSTEy LCAgIDEsIA0KICAgICAgICAgICAgICAgICAgICAgICAgUEkxMywgICAxLCAN CiAgICAgICAgICAgICAgICAgICAgICAgIFBJMTQsICAgMSwgDQogICAgICAg ICAgICAgICAgICAgICAgICBQSTE1LCAgIDEsIA0KICAgICAgICAgICAgICAg ICAgICAgICAgUEkxNiwgICAxLCANCiAgICAgICAgICAgICAgICAgICAgICAg IFBJMTcsICAgMSwgDQogICAgICAgICAgICAgICAgICAgICAgICBPZmZzZXQg KDB4MDgpLCANCiAgICAgICAgICAgICAgICAgICAgICAgIFBPMjAsICAgMSwg DQogICAgICAgICAgICAgICAgICAgICAgICBQTzIxLCAgIDEsIA0KICAgICAg ICAgICAgICAgICAgICAgICAgUE8yMiwgICAxLCANCiAgICAgICAgICAgICAg ICAgICAgICAgIFBPMjMsICAgMSwgDQogICAgICAgICAgICAgICAgICAgICAg ICBQTzI0LCAgIDEsIA0KICAgICAgICAgICAgICAgICAgICAgICAgUE8yNSwg ICAxLCANCiAgICAgICAgICAgICAgICAgICAgICAgIFBPMjYsICAgMSwgDQog ICAgICAgICAgICAgICAgICAgICAgICBQTzI3LCAgIDEsIA0KICAgICAgICAg ICAgICAgICAgICAgICAgUEkyMCwgICAxLCANCiAgICAgICAgICAgICAgICAg ICAgICAgIFBJMjEsICAgMSwgDQogICAgICAgICAgICAgICAgICAgICAgICBQ STIyLCAgIDEsIA0KICAgICAgICAgICAgICAgICAgICAgICAgUEkyMywgICAx LCANCiAgICAgICAgICAgICAgICAgICAgICAgIFBJMjQsICAgMSwgDQogICAg ICAgICAgICAgICAgICAgICAgICBQSTI1LCAgIDEsIA0KICAgICAgICAgICAg ICAgICAgICAgICAgUEkyNiwgICAxLCANCiAgICAgICAgICAgICAgICAgICAg ICAgIFBJMjcsICAgMSwgDQogICAgICAgICAgICAgICAgICAgICAgICBQTzMw LCAgIDEsIA0KICAgICAgICAgICAgICAgICAgICAgICAgUE8zMSwgICAxLCAN CiAgICAgICAgICAgICAgICAgICAgICAgIFBPMzIsICAgMSwgDQogICAgICAg ICAgICAgICAgICAgICAgICBQTzMzLCAgIDEsIA0KICAgICAgICAgICAgICAg ICAgICAgICAgUE8zNCwgICAxLCANCiAgICAgICAgICAgICAgICAgICAgICAg IFBPMzUsICAgMSwgDQogICAgICAgICAgICAgICAgICAgICAgICBQTzM2LCAg IDEsIA0KICAgICAgICAgICAgICAgICAgICAgICAgUE8zNywgICAxLCANCiAg ICAgICAgICAgICAgICAgICAgICAgIFBJMzAsICAgMSwgDQogICAgICAgICAg ICAgICAgICAgICAgICBQSTMxLCAgIDEsIA0KICAgICAgICAgICAgICAgICAg ICAgICAgUEkzMiwgICAxLCANCiAgICAgICAgICAgICAgICAgICAgICAgIFBJ MzMsICAgMSwgDQogICAgICAgICAgICAgICAgICAgICAgICBQSTM0LCAgIDEs IA0KICAgICAgICAgICAgICAgICAgICAgICAgUEkzNSwgICAxLCANCiAgICAg ICAgICAgICAgICAgICAgICAgIFBJMzYsICAgMSwgDQogICAgICAgICAgICAg ICAgICAgICAgICBQSTM3LCAgIDENCiAgICAgICAgICAgICAgICAgICAgfQ0K DQogICAgICAgICAgICAgICAgICAgIE9wZXJhdGlvblJlZ2lvbiAoXFBNSU8s IFN5c3RlbUlPLCBQTUJTLCAweDgwKQ0KICAgICAgICAgICAgICAgICAgICBG aWVsZCAoXFBNSU8sIEJ5dGVBY2MsIE5vTG9jaywgUHJlc2VydmUpDQogICAg ICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgIE9m ZnNldCAoMHgxMCksIA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICwg ICAxLCANCiAgICAgICAgICAgICAgICAgICAgICAgIFREVFksICAgMywgDQog ICAgICAgICAgICAgICAgICAgICAgICBURU5BLCAgIDEsIA0KICAgICAgICAg ICAgICAgICAgICAgICAgVFREVCwgICAzLCANCiAgICAgICAgICAgICAgICAg ICAgICAgIEZSQ1QsICAgMSwgDQogICAgICAgICAgICAgICAgICAgICAgICAg ICAgLCAgIDgsIA0KICAgICAgICAgICAgICAgICAgICAgICAgVEhMUywgICAx LCANCiAgICAgICAgICAgICAgICAgICAgICAgIE9mZnNldCAoMHgyOCksIA0K ICAgICAgICAgICAgICAgICAgICAgICAgICAgICwgICAxMSwgDQogICAgICAg ICAgICAgICAgICAgICAgICBTQlBTLCAgIDEsIA0KICAgICAgICAgICAgICAg ICAgICAgICAgT2Zmc2V0ICgweDJBKSwgDQogICAgICAgICAgICAgICAgICAg ICAgICBPZmZzZXQgKDB4MkIpLCANCiAgICAgICAgICAgICAgICAgICAgICAg IEcwOFMsICAgMSwgDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgLCAg IDIsIA0KICAgICAgICAgICAgICAgICAgICAgICAgRzExUywgICAxLCANCiAg ICAgICAgICAgICAgICAgICAgICAgIEcxMlMsICAgMSwgDQogICAgICAgICAg ICAgICAgICAgICAgICBGTFBTLCAgIDEsIA0KICAgICAgICAgICAgICAgICAg ICAgICAgT2Zmc2V0ICgweDJDKSwgDQogICAgICAgICAgICAgICAgICAgICAg ICAgICAgLCAgIDIsIA0KICAgICAgICAgICAgICAgICAgICAgICAgVFBPTCwg ICAxLCANCiAgICAgICAgICAgICAgICAgICAgICAgIE9mZnNldCAoMHgyRCks IA0KICAgICAgICAgICAgICAgICAgICAgICAgT2Zmc2V0ICgweDJFKSwgDQog ICAgICAgICAgICAgICAgICAgICAgICBPZmZzZXQgKDB4MkYpLCANCiAgICAg ICAgICAgICAgICAgICAgICAgIEcwOEUsICAgMSwgDQogICAgICAgICAgICAg ICAgICAgICAgICAgICAgLCAgIDIsIA0KICAgICAgICAgICAgICAgICAgICAg ICAgRzExRSwgICAxLCANCiAgICAgICAgICAgICAgICAgICAgICAgIEcxMkUs ICAgMSwgDQogICAgICAgICAgICAgICAgICAgICAgICBPZmZzZXQgKDB4MzAp LCANCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAsICAgNCwgDQogICAg ICAgICAgICAgICAgICAgICAgICBTTFBFLCAgIDEsIA0KICAgICAgICAgICAg ICAgICAgICAgICAgT2Zmc2V0ICgweDMxKSwgDQogICAgICAgICAgICAgICAg ICAgICAgICBPZmZzZXQgKDB4MzQpLCANCiAgICAgICAgICAgICAgICAgICAg ICAgICAgICAsICAgNCwgDQogICAgICAgICAgICAgICAgICAgICAgICBTTFBT LCAgIDEsIA0KICAgICAgICAgICAgICAgICAgICAgICAgT2Zmc2V0ICgweDM1 KQ0KICAgICAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAg ICAgT3BlcmF0aW9uUmVnaW9uIChcRUNNUywgU3lzdGVtSU8sIDB4NzIsIDB4 MDIpDQogICAgICAgICAgICAgICAgICAgIEZpZWxkIChcRUNNUywgQnl0ZUFj YywgTG9jaywgUHJlc2VydmUpDQogICAgICAgICAgICAgICAgICAgIHsNCiAg ICAgICAgICAgICAgICAgICAgICAgIEVJTkQsICAgOCwgDQogICAgICAgICAg ICAgICAgICAgICAgICBFREFULCAgIDgNCiAgICAgICAgICAgICAgICAgICAg fQ0KDQogICAgICAgICAgICAgICAgICAgIEluZGV4RmllbGQgKEVJTkQsIEVE QVQsIEJ5dGVBY2MsIE5vTG9jaywgUHJlc2VydmUpDQogICAgICAgICAgICAg ICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgIE9mZnNldCAoMHgx MiksIA0KICAgICAgICAgICAgICAgICAgICAgICAgSUtGRywgICA4LCANCiAg ICAgICAgICAgICAgICAgICAgICAgIEZSUE4sICAgMTYsIA0KICAgICAgICAg ICAgICAgICAgICAgICAgUkFNQiwgICAzMiwgDQogICAgICAgICAgICAgICAg ICAgICAgICBBVk9MLCAgIDgsIA0KICAgICAgICAgICAgICAgICAgICAgICAg TEJUTiwgICA4LCANCiAgICAgICAgICAgICAgICAgICAgICAgIENLTE4sICAg OCwgDQogICAgICAgICAgICAgICAgICAgICAgICBDSzAwLCAgIDgsIA0KICAg ICAgICAgICAgICAgICAgICAgICAgQ0swMSwgICA4LCANCiAgICAgICAgICAg ICAgICAgICAgICAgIENLMDIsICAgOCwgDQogICAgICAgICAgICAgICAgICAg ICAgICBDSzAzLCAgIDgsIA0KICAgICAgICAgICAgICAgICAgICAgICAgQ0sw NCwgICA4LCANCiAgICAgICAgICAgICAgICAgICAgICAgIENLMDUsICAgOCwg DQogICAgICAgICAgICAgICAgICAgICAgICBDSzA2LCAgIDgsIA0KICAgICAg ICAgICAgICAgICAgICAgICAgQ0swNywgICA4LCANCiAgICAgICAgICAgICAg ICAgICAgICAgIENLMDgsICAgOCwgDQogICAgICAgICAgICAgICAgICAgICAg ICBDSzA5LCAgIDgsIA0KICAgICAgICAgICAgICAgICAgICAgICAgQ0sxMCwg ICA4LCANCiAgICAgICAgICAgICAgICAgICAgICAgIENLMTEsICAgOCwgDQog ICAgICAgICAgICAgICAgICAgICAgICBDSzEyLCAgIDgsIA0KICAgICAgICAg ICAgICAgICAgICAgICAgQ0sxMywgICA4LCANCiAgICAgICAgICAgICAgICAg ICAgICAgIENLMTQsICAgOCwgDQogICAgICAgICAgICAgICAgICAgICAgICBD SzE1LCAgIDgsIA0KICAgICAgICAgICAgICAgICAgICAgICAgQ0sxNiwgICA4 LCANCiAgICAgICAgICAgICAgICAgICAgICAgIENLMTcsICAgOCwgDQogICAg ICAgICAgICAgICAgICAgICAgICBDSzE4LCAgIDgsIA0KICAgICAgICAgICAg ICAgICAgICAgICAgQ0sxOSwgICA4LCANCiAgICAgICAgICAgICAgICAgICAg ICAgIENLMjAsICAgOCwgDQogICAgICAgICAgICAgICAgICAgICAgICBDSzIx LCAgIDgsIA0KICAgICAgICAgICAgICAgICAgICAgICAgQ0syMiwgICA4LCAN CiAgICAgICAgICAgICAgICAgICAgICAgIENLMjMsICAgOCwgDQogICAgICAg ICAgICAgICAgICAgICAgICBDSzI0LCAgIDgsIA0KICAgICAgICAgICAgICAg ICAgICAgICAgQ0syNSwgICA4LCANCiAgICAgICAgICAgICAgICAgICAgICAg IENLMjYsICAgOCwgDQogICAgICAgICAgICAgICAgICAgICAgICBDSzI3LCAg IDgsIA0KICAgICAgICAgICAgICAgICAgICAgICAgQ0syOCwgICA4LCANCiAg ICAgICAgICAgICAgICAgICAgICAgIENLMjksICAgOCwgDQogICAgICAgICAg ICAgICAgICAgICAgICBFUlJGLCAgIDgsIA0KICAgICAgICAgICAgICAgICAg ICAgICAgT0NMSywgICA4LCANCiAgICAgICAgICAgICAgICAgICAgICAgIFdJ REUsICAgMSwgDQogICAgICAgICAgICAgICAgICAgICAgICBPVkNLLCAgIDIs IA0KICAgICAgICAgICAgICAgICAgICAgICAgUzQySywgICAzLCANCiAgICAg ICAgICAgICAgICAgICAgICAgIE9mZnNldCAoMHgzRCksIA0KICAgICAgICAg ICAgICAgICAgICAgICAgQ1BVUiwgICA2LCANCiAgICAgICAgICAgICAgICAg ICAgICAgIENQVUYsICAgMiwgDQogICAgICAgICAgICAgICAgICAgICAgICBM QlQyLCAgIDgNCiAgICAgICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAg ICAgICAgICAgIE9wZXJhdGlvblJlZ2lvbiAoXFJBTVcsIFN5c3RlbU1lbW9y eSwgUkFNQiwgMHhGRikNCiAgICAgICAgICAgICAgICAgICAgRmllbGQgKFxS QU1XLCBCeXRlQWNjLCBOb0xvY2ssIFByZXNlcnZlKQ0KICAgICAgICAgICAg ICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICBPZmZzZXQgKDB4 QjApLCANCiAgICAgICAgICAgICAgICAgICAgICAgIFRSVFksICAgOCwgDQog ICAgICAgICAgICAgICAgICAgICAgICBGU0ZOLCAgIDgsIA0KICAgICAgICAg ICAgICAgICAgICAgICAgRlNUQSwgICAxNiwgDQogICAgICAgICAgICAgICAg ICAgICAgICBGQURSLCAgIDMyLCANCiAgICAgICAgICAgICAgICAgICAgICAg IEZTSVosICAgMTYsIA0KICAgICAgICAgICAgICAgICAgICAgICAgQUNURCwg ICA4LCANCiAgICAgICAgICAgICAgICAgICAgICAgIEFWTEQsICAgOCwgDQog ICAgICAgICAgICAgICAgICAgICAgICBTRVRELCAgIDgsIA0KICAgICAgICAg ICAgICAgICAgICAgICAgQUNQRiwgICAxLCANCiAgICAgICAgICAgICAgICAg ICAgICAgIERDUEYsICAgMSwgDQogICAgICAgICAgICAgICAgICAgICAgICBD SEdGLCAgIDEsIA0KICAgICAgICAgICAgICAgICAgICAgICAgRENQMiwgICAx LCANCiAgICAgICAgICAgICAgICAgICAgICAgIENIRzIsICAgMSwgDQogICAg ICAgICAgICAgICAgICAgICAgICBPZmZzZXQgKDB4QkUpLCANCiAgICAgICAg ICAgICAgICAgICAgICAgIFBBREwsICAgMTYsIA0KICAgICAgICAgICAgICAg ICAgICAgICAgQ0FETCwgICAxNiwgDQogICAgICAgICAgICAgICAgICAgICAg ICBDU1RFLCAgIDE2LCANCiAgICAgICAgICAgICAgICAgICAgICAgIE5TVEUs ICAgMTYsIA0KICAgICAgICAgICAgICAgICAgICAgICAgT2Zmc2V0ICgweEM4 KSwgDQogICAgICAgICAgICAgICAgICAgICAgICBTRlVOLCAgIDgsIA0KICAg ICAgICAgICAgICAgICAgICAgICAgT2Zmc2V0ICgweENBKSwgDQogICAgICAg ICAgICAgICAgICAgICAgICBUQUMzLCAgIDgsIA0KICAgICAgICAgICAgICAg ICAgICAgICAgVEFDMiwgICA4LCANCiAgICAgICAgICAgICAgICAgICAgICAg IFRBQzEsICAgOCwgDQogICAgICAgICAgICAgICAgICAgICAgICBUQUMwLCAg IDgsIA0KICAgICAgICAgICAgICAgICAgICAgICAgVFBTViwgICA4LCANCiAg ICAgICAgICAgICAgICAgICAgICAgIE9mZnNldCAoMHhEMCksIA0KICAgICAg ICAgICAgICAgICAgICAgICAgRjFMMCwgICA4LCANCiAgICAgICAgICAgICAg ICAgICAgICAgIEYyTDAsICAgOCwgDQogICAgICAgICAgICAgICAgICAgICAg ICBGMUwxLCAgIDgsIA0KICAgICAgICAgICAgICAgICAgICAgICAgRjJMMSwg ICA4LCANCiAgICAgICAgICAgICAgICAgICAgICAgIEYxTDIsICAgOCwgDQog ICAgICAgICAgICAgICAgICAgICAgICBGMkwyLCAgIDgsIA0KICAgICAgICAg ICAgICAgICAgICAgICAgRjFMMywgICA4LCANCiAgICAgICAgICAgICAgICAg ICAgICAgIEYyTDMsICAgOCwgDQogICAgICAgICAgICAgICAgICAgICAgICBG MUw0LCAgIDgsIA0KICAgICAgICAgICAgICAgICAgICAgICAgRjJMNCwgICA4 LCANCiAgICAgICAgICAgICAgICAgICAgICAgIFNMUFQsICAgOCwgDQogICAg ICAgICAgICAgICAgICAgICAgICBEQlJELCAgIDMyLCANCiAgICAgICAgICAg ICAgICAgICAgICAgIEFJQkYsICAgMSwgDQogICAgICAgICAgICAgICAgICAg ICAgICBPZmZzZXQgKDB4RTApDQogICAgICAgICAgICAgICAgICAgIH0NCg0K ICAgICAgICAgICAgICAgICAgICBOYW1lIChPU0ZHLCAweDAwKQ0KICAgICAg ICAgICAgICAgICAgICBOYW1lIChPUzlYLCAweDAxKQ0KICAgICAgICAgICAg ICAgICAgICBOYW1lIChPUzk4LCAweDAyKQ0KICAgICAgICAgICAgICAgICAg ICBOYW1lIChPU01FLCAweDA0KQ0KICAgICAgICAgICAgICAgICAgICBOYW1l IChPUzJLLCAweDA4KQ0KICAgICAgICAgICAgICAgICAgICBOYW1lIChPU1hQ LCAweDEwKQ0KICAgICAgICAgICAgICAgICAgICBNZXRob2QgKE9TVlIsIDAs IE5vdFNlcmlhbGl6ZWQpDQogICAgICAgICAgICAgICAgICAgIHsNCiAgICAg ICAgICAgICAgICAgICAgICAgIElmIChDb25kUmVmT2YgKFxfT1NJLCBMb2Nh bDApKQ0KICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAg ICAgICAgICAgICAgICAgIFN0b3JlIChPU1hQLCBPU0ZHKQ0KICAgICAgICAg ICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICAgICAgRWxz ZQ0KICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAg ICAgICAgICAgICAgIElmIChNQ1RIIChcX09TLCAiTWljcm9zb2Z0IFdpbmRv d3MiKSkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlIChPUzk4LCBPU0ZHKQ0K ICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAg ICAgICAgICAgICAgICBFbHNlDQogICAgICAgICAgICAgICAgICAgICAgICAg ICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBJZiAoTUNU SCAoXF9PUywgIk1pY3Jvc29mdCBXaW5kb3dzTUU6IE1pbGxlbm5pdW0gRWRp dGlvbiIpKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7DQog ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoT1NN RSwgT1NGRykNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfQ0K ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFbHNlDQogICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIElmIChNQ1RIIChcX09TLCAiTWljcm9zb2Z0 IFdpbmRvd3MgTlQiKSkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBTdG9yZSAoT1MySywgT1NGRykNCiAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIEVsc2UNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBTdG9yZSAoT1NYUCwgT1NGRykNCiAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAg ICAgICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICAg ICAgUmV0dXJuIChPU0ZHKQ0KICAgICAgICAgICAgICAgICAgICB9DQoNCiAg ICAgICAgICAgICAgICAgICAgT3BlcmF0aW9uUmVnaW9uIChcU0lPUCwgU3lz dGVtSU8sIFxTUElPLCAweDAyKQ0KICAgICAgICAgICAgICAgICAgICBGaWVs ZCAoXFNJT1AsIEJ5dGVBY2MsIExvY2ssIFByZXNlcnZlKQ0KICAgICAgICAg ICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICBTSU9JLCAg IDgsIA0KICAgICAgICAgICAgICAgICAgICAgICAgU0lPRCwgICA4DQogICAg ICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICBJbmRl eEZpZWxkIChTSU9JLCBTSU9ELCBCeXRlQWNjLCBOb0xvY2ssIFByZXNlcnZl KQ0KICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAg ICAgICBPZmZzZXQgKDB4MDcpLCANCiAgICAgICAgICAgICAgICAgICAgICAg IExETlAsICAgOCwgDQogICAgICAgICAgICAgICAgICAgICAgICBPZmZzZXQg KDB4MzApLCANCiAgICAgICAgICAgICAgICAgICAgICAgIExEQ1AsICAgOA0K ICAgICAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAgICAg TWV0aG9kIChcREJHUiwgMSwgTm90U2VyaWFsaXplZCkNCiAgICAgICAgICAg ICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKExE TlAsIExvY2FsMCkNCiAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlICgw eDAxLCBMRE5QKQ0KICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKExE Q1AsIExvY2FsMSkNCiAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlICgw eDAxLCBMRENQKQ0KICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKEFy ZzAsIERCUkQpDQogICAgICAgICAgICAgICAgICAgICAgICBcSVNNSSAoXEFE QlIpDQogICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoMHgwMSwgTERO UCkNCiAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlIChMb2NhbDEsIExE Q1ApDQogICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoTG9jYWwwLCBM RE5QKQ0KICAgICAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAg ICAgICAgTmFtZSAoTU5BTSwgIk02TkUiKQ0KICAgICAgICAgICAgICAgICAg ICBOYW1lIChPTkFNLCAiQVNVU1RFSyIpDQogICAgICAgICAgICAgICAgfQ0K DQogICAgICAgICAgICAgICAgU2NvcGUgKFxfU0IuUENJMCkNCiAgICAgICAg ICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgIE1ldGhvZCAoX0lOSSwg MCwgTm90U2VyaWFsaXplZCkNCiAgICAgICAgICAgICAgICAgICAgew0KICAg ICAgICAgICAgICAgICAgICAgICAgXE9TVlIgKCkNCiAgICAgICAgICAgICAg ICAgICAgfQ0KICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAg IFNjb3BlIChcX1NCLlBDSTAuU0JSRy5FQzApDQogICAgICAgICAgICAgICAg ew0KICAgICAgICAgICAgICAgICAgICBNZXRob2QgKF9RNkYsIDAsIE5vdFNl cmlhbGl6ZWQpDQogICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAg ICAgICAgICAgICAgIFN0b3JlICgweDIwLCBEUDgwKQ0KICAgICAgICAgICAg ICAgICAgICAgICAgSWYgKFxfU0IuQVRLUCkNCiAgICAgICAgICAgICAgICAg ICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBOb3RpZnkg KFxfU0IuQVRLRCwgMHg0NSkNCiAgICAgICAgICAgICAgICAgICAgICAgIH0N CiAgICAgICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgICAg IE1ldGhvZCAoX1E2RSwgMCwgTm90U2VyaWFsaXplZCkNCiAgICAgICAgICAg ICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKDB4 MTksIERQODApDQogICAgICAgICAgICAgICAgICAgICAgICBJZiAoXF9TQi5B VEtQKQ0KICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAg ICAgICAgICAgICAgICAgIE5vdGlmeSAoXF9TQi5BVEtELCAweDQzKQ0KICAg ICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICB9 DQoNCiAgICAgICAgICAgICAgICAgICAgTWV0aG9kIChfUTZELCAwLCBOb3RT ZXJpYWxpemVkKQ0KICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAg ICAgICAgICAgICAgICBTdG9yZSAoMHgxOCwgRFA4MCkNCiAgICAgICAgICAg ICAgICAgICAgICAgIElmIChcX1NCLkFUS1ApDQogICAgICAgICAgICAgICAg ICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgTm90aWZ5 IChcX1NCLkFUS0QsIDB4NDApDQogICAgICAgICAgICAgICAgICAgICAgICB9 DQogICAgICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgICAg ICBNZXRob2QgKF9RNkMsIDAsIE5vdFNlcmlhbGl6ZWQpDQogICAgICAgICAg ICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlICgw eDE3LCBEUDgwKQ0KICAgICAgICAgICAgICAgICAgICAgICAgSWYgKFxfU0Iu QVRLUCkNCiAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAg ICAgICAgICAgICAgICAgICBOb3RpZnkgKFxfU0IuQVRLRCwgMHg0MSkNCiAg ICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAgICAg fQ0KICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgIERldmlj ZSAoXF9TQi5CQVQwKQ0KICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAg ICAgICAgICAgTmFtZSAoX0hJRCwgRWlzYUlkICgiUE5QMEMwQSIpKQ0KICAg ICAgICAgICAgICAgICAgICBOYW1lIChfVUlELCAweDAwKQ0KICAgICAgICAg ICAgICAgICAgICBOYW1lIChfUENMLCBQYWNrYWdlICgweDAxKQ0KICAgICAg ICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICBcX1NC DQogICAgICAgICAgICAgICAgICAgIH0pDQogICAgICAgICAgICAgICAgICAg IE5hbWUgKEJBRFIsIDB4MTYpDQogICAgICAgICAgICAgICAgICAgIE5hbWUg KFBBSzAsIFBhY2thZ2UgKDB4MEQpDQogICAgICAgICAgICAgICAgICAgIHsN CiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDEsIA0KICAgICAgICAgICAg ICAgICAgICAgICAgMHhGRkZGRkZGRiwgDQogICAgICAgICAgICAgICAgICAg ICAgICAweEZGRkZGRkZGLCANCiAgICAgICAgICAgICAgICAgICAgICAgIDB4 MDEsIA0KICAgICAgICAgICAgICAgICAgICAgICAgMHhGRkZGRkZGRiwgDQog ICAgICAgICAgICAgICAgICAgICAgICAweEZGRkZGRkZGLCANCiAgICAgICAg ICAgICAgICAgICAgICAgIDB4RkZGRkZGRkYsIA0KICAgICAgICAgICAgICAg ICAgICAgICAgMHhGRkZGRkZGRiwgDQogICAgICAgICAgICAgICAgICAgICAg ICAweEZGRkZGRkZGLCANCiAgICAgICAgICAgICAgICAgICAgICAgICIiLCAN CiAgICAgICAgICAgICAgICAgICAgICAgICIiLCANCiAgICAgICAgICAgICAg ICAgICAgICAgICIiLCANCiAgICAgICAgICAgICAgICAgICAgICAgICIiDQog ICAgICAgICAgICAgICAgICAgIH0pDQogICAgICAgICAgICAgICAgICAgIE5h bWUgKFBBSzEsIFBhY2thZ2UgKDB4MEQpDQogICAgICAgICAgICAgICAgICAg IHsNCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDEsIA0KICAgICAgICAg ICAgICAgICAgICAgICAgMHgxMENDLCANCiAgICAgICAgICAgICAgICAgICAg ICAgIDB4MTBDQywgDQogICAgICAgICAgICAgICAgICAgICAgICAweDAxLCAN CiAgICAgICAgICAgICAgICAgICAgICAgIDB4MzlEMCwgDQogICAgICAgICAg ICAgICAgICAgICAgICAweEI2LCANCiAgICAgICAgICAgICAgICAgICAgICAg IDB4ODIsIA0KICAgICAgICAgICAgICAgICAgICAgICAgMHgzNCwgDQogICAg ICAgICAgICAgICAgICAgICAgICAweDA5NzIsIA0KICAgICAgICAgICAgICAg ICAgICAgICAgIk02TkUiLCANCiAgICAgICAgICAgICAgICAgICAgICAgICIw MDAwMSIsIA0KICAgICAgICAgICAgICAgICAgICAgICAgIkxJb24iLCANCiAg ICAgICAgICAgICAgICAgICAgICAgICJBU1VTVGVrIg0KICAgICAgICAgICAg ICAgICAgICB9KQ0KICAgICAgICAgICAgICAgICAgICBNZXRob2QgKF9CSUYs IDAsIE5vdFNlcmlhbGl6ZWQpDQogICAgICAgICAgICAgICAgICAgIHsNCiAg ICAgICAgICAgICAgICAgICAgICAgIElmIChCQVRTICgpKQ0KICAgICAgICAg ICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAg IFJldHVybiAoUEFLMCkNCiAgICAgICAgICAgICAgICAgICAgICAgIH0NCg0K ICAgICAgICAgICAgICAgICAgICAgICAgQWNxdWlyZSAoQkFUWCwgMHhGRkZG KQ0KICAgICAgICAgICAgICAgICAgICAgICAgXF9TQi5QQ0kwLlNCUkcuRUMw LlNUQzUgKDB4NDIpDQogICAgICAgICAgICAgICAgICAgICAgICBTbGVlcCAo MHg2NCkNCiAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlIChCSUYxICgp LCBMb2NhbDApDQogICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoQ0FQ RCwgSW5kZXggKFBBSzEsIDB4MDEpKQ0KICAgICAgICAgICAgICAgICAgICAg ICAgU3RvcmUgKEZVQ0gsIEluZGV4IChQQUsxLCAweDAyKSkNCiAgICAgICAg ICAgICAgICAgICAgICAgIFN0b3JlIChEQ1dOLCBJbmRleCAoUEFLMSwgMHgw NSkpDQogICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoRENMVywgSW5k ZXggKFBBSzEsIDB4MDYpKQ0KICAgICAgICAgICAgICAgICAgICAgICAgU3Rv cmUgKERWT1QsIEluZGV4IChQQUsxLCAweDA0KSkNCiAgICAgICAgICAgICAg ICAgICAgICAgIFJlbGVhc2UgKEJBVFgpDQogICAgICAgICAgICAgICAgICAg ICAgICBSZXR1cm4gKFBBSzEpDQogICAgICAgICAgICAgICAgICAgIH0NCg0K ICAgICAgICAgICAgICAgICAgICBOYW1lIChCRkIwLCBQYWNrYWdlICgweDA0 KQ0KICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAg ICAgICAweDAwLCANCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDUwMCwg DQogICAgICAgICAgICAgICAgICAgICAgICAweDBFNDEsIA0KICAgICAgICAg ICAgICAgICAgICAgICAgMHhGRkZGRkZGRg0KICAgICAgICAgICAgICAgICAg ICB9KQ0KICAgICAgICAgICAgICAgICAgICBNZXRob2QgKF9CU1QsIDAsIE5v dFNlcmlhbGl6ZWQpDQogICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAg ICAgICAgICAgICAgICAgIElmIChCQVRTICgpKQ0KICAgICAgICAgICAgICAg ICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN0b3Jl IChPbmVzLCBJbmRleCAoQkZCMCwgMHgwMCkpDQogICAgICAgICAgICAgICAg ICAgICAgICAgICAgU3RvcmUgKE9uZXMsIEluZGV4IChCRkIwLCAweDAxKSkN CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoT25lcywgSW5k ZXggKEJGQjAsIDB4MDIpKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAg IFN0b3JlIChPbmVzLCBJbmRleCAoQkZCMCwgMHgwMykpDQogICAgICAgICAg ICAgICAgICAgICAgICAgICAgUmV0dXJuIChCRkIwKQ0KICAgICAgICAgICAg ICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICAgICAgRWxzZQ0K ICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAg ICAgICAgICAgIEFjcXVpcmUgKEJBVFgsIDB4RkZGRikNCiAgICAgICAgICAg ICAgICAgICAgICAgICAgICBcX1NCLlBDSTAuU0JSRy5FQzAuU1RDNSAoMHg0 MikNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBTbGVlcCAoMHg2NCkN CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoQlNUMSAoKSwg SW5kZXggKEJGQjAsIDB4MDEpKQ0KICAgICAgICAgICAgICAgICAgICAgICAg ICAgIFN0b3JlIChCU1QyICgpLCBMb2NhbDApDQogICAgICAgICAgICAgICAg ICAgICAgICAgICAgU3RvcmUgKExvY2FsMCwgSW5kZXggKEJGQjAsIDB4MDIp KQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlIChCU1QwIChM b2NhbDApLCBJbmRleCAoQkZCMCwgMHgwMCkpDQogICAgICAgICAgICAgICAg ICAgICAgICAgICAgU3RvcmUgKEJTVDMgKCksIEluZGV4IChCRkIwLCAweDAz KSkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBSZWxlYXNlIChCQVRY KQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJldHVybiAoQkZCMCkN CiAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAg ICAgfQ0KDQogICAgICAgICAgICAgICAgICAgIE1ldGhvZCAoX1NUQSwgMCwg Tm90U2VyaWFsaXplZCkNCiAgICAgICAgICAgICAgICAgICAgew0KICAgICAg ICAgICAgICAgICAgICAgICAgU3RvcmUgKEJBVFMgKCksIExvY2FsMCkNCiAg ICAgICAgICAgICAgICAgICAgICAgIElmIChMTm90IChMb2NhbDApKQ0KICAg ICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAg ICAgICAgIFJldHVybiAoMHgxRikNCiAgICAgICAgICAgICAgICAgICAgICAg IH0NCiAgICAgICAgICAgICAgICAgICAgICAgIEVsc2UNCiAgICAgICAgICAg ICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBS ZXR1cm4gKDB4MEYpDQogICAgICAgICAgICAgICAgICAgICAgICB9DQogICAg ICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICBOYW1l IChTQ0FMLCAweDAxNDApDQogICAgICAgICAgICAgICAgICAgIE5hbWUgKFNF TlIsIDB4MTQpDQogICAgICAgICAgICAgICAgICAgIE5hbWUgKENBUEQsIDB4 MDAwMTQ4MjApDQogICAgICAgICAgICAgICAgICAgIE5hbWUgKEZVQ0gsIDB4 MDAwMTQ4MjApDQogICAgICAgICAgICAgICAgICAgIE5hbWUgKERDV04sIDB4 MDFBNCkNCiAgICAgICAgICAgICAgICAgICAgTmFtZSAoRENMVywgMHgwMUE0 KQ0KICAgICAgICAgICAgICAgICAgICBOYW1lIChEVk9ULCAweDBFKQ0KICAg ICAgICAgICAgICAgICAgICBNZXRob2QgKEJJRjEsIDAsIFNlcmlhbGl6ZWQp DQogICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAg ICAgIFN0b3JlICgweDAwLCBEVzAwKQ0KICAgICAgICAgICAgICAgICAgICAg ICAgU3RvcmUgKFxfU0IuUENJMC5TQlJHLkVDMC5SV1JEIChCQURSLCAweDE4 KSwgTG9jYWwwKQ0KICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKExv Y2FsMCwgQ0FQRCkNCiAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlIChc X1NCLlBDSTAuU0JSRy5FQzAuUldSRCAoQkFEUiwgMHgxMCksIExvY2FsMCkN CiAgICAgICAgICAgICAgICAgICAgICAgIFNoaWZ0UmlnaHQgKExvY2FsMCwg MHgwNiwgTG9jYWwxKQ0KICAgICAgICAgICAgICAgICAgICAgICAgU3VidHJh Y3QgKExvY2FsMCwgTG9jYWwxLCBGVUNIKQ0KICAgICAgICAgICAgICAgICAg ICAgICAgRGl2aWRlIChDQVBELCAweDIxLCBMb2NhbDAsIExvY2FsMSkNCiAg ICAgICAgICAgICAgICAgICAgICAgIFN0b3JlIChMb2NhbDEsIERDV04pDQog ICAgICAgICAgICAgICAgICAgICAgICBEaXZpZGUgKENBUEQsIDB4QzgsIExv Y2FsMCwgTG9jYWwxKQ0KICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUg KExvY2FsMSwgRENMVykNCiAgICAgICAgICAgICAgICAgICAgICAgIFN0b3Jl IChcX1NCLlBDSTAuU0JSRy5FQzAuUldSRCAoQkFEUiwgMHgxOSksIERWT1Qp DQogICAgICAgICAgICAgICAgICAgICAgICBSZXR1cm4gKENBUEQpDQogICAg ICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICBNZXRo b2QgKEJTVDAsIDEsIFNlcmlhbGl6ZWQpDQogICAgICAgICAgICAgICAgICAg IHsNCiAgICAgICAgICAgICAgICAgICAgICAgIElmIChBQ1MgKCkpDQogICAg ICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAg ICAgICAgU3RvcmUgKEFyZzAsIExvY2FsMSkNCiAgICAgICAgICAgICAgICAg ICAgICAgICAgICBJZiAoTE5vdCAoTExlc3MgKExvY2FsMSwgRlVDSCkpKQ0K ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgU3RvcmUgKDB4MDAsIExvY2FsMCkNCiAgICAg ICAgICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICAg ICAgICAgICAgRWxzZQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsN CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKDB4MDIs IExvY2FsMCkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9DQogICAg ICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgICAg ICBFbHNlDQogICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAg ICAgICAgICAgICAgICAgICAgU3RvcmUgKDB4MDEsIExvY2FsMCkNCiAgICAg ICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAgICAgfQ0K DQogICAgICAgICAgICAgICAgICAgIE1ldGhvZCAoQlNUMSwgMCwgU2VyaWFs aXplZCkNCiAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAg ICAgICAgICAgU3RvcmUgKFxfU0IuUENJMC5TQlJHLkVDMC5SV1JEIChCQURS LCAweDBBKSwgTG9jYWwwKQ0KICAgICAgICAgICAgICAgICAgICAgICAgQW5k IChMb2NhbDAsIDB4RkZGRiwgTG9jYWwwKQ0KICAgICAgICAgICAgICAgICAg ICAgICAgSWYgKExHcmVhdGVyIChMb2NhbDAsIDB4ODAwMCkpDQogICAgICAg ICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAg ICAgWE9yIChMb2NhbDAsIDB4RkZGRiwgTG9jYWwwKQ0KICAgICAgICAgICAg ICAgICAgICAgICAgICAgIEFkZCAoTG9jYWwwLCAweDAxLCBMb2NhbDApDQog ICAgICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICAg ICAgICBFbHNlDQogICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAg ICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKDB4RkZGRkZGRkYsIExvY2Fs MCkNCiAgICAgICAgICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAg ICAgICAgICAgICAgUmV0dXJuIChMb2NhbDApDQogICAgICAgICAgICAgICAg ICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICBNZXRob2QgKEJTVDIsIDAs IFNlcmlhbGl6ZWQpDQogICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAg ICAgICAgICAgICAgICAgIFN0b3JlIChcX1NCLlBDSTAuU0JSRy5FQzAuUldS RCAoQkFEUiwgMHgwRiksIExvY2FsMCkNCiAgICAgICAgICAgICAgICAgICAg ICAgIElmIChBQ1MgKCkpDQogICAgICAgICAgICAgICAgICAgICAgICB7DQog ICAgICAgICAgICAgICAgICAgICAgICAgICAgXF9TQi5QQ0kwLlNCUkcuRUMw LlNUQzUgKDB4MjApDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgQW5k IChcX1NCLlBDSTAuU0JSRy5FQzAuQU5ZUywgMHhGQiwgXF9TQi5QQ0kwLlNC UkcuRUMwLkFOWVMpDQogICAgICAgICAgICAgICAgICAgICAgICB9DQogICAg ICAgICAgICAgICAgICAgICAgICBFbHNlDQogICAgICAgICAgICAgICAgICAg ICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgSWYgKExMZXNz IChMb2NhbDAsIDB4MDFBRikpDQogICAgICAgICAgICAgICAgICAgICAgICAg ICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBPciAoXF9T Qi5QQ0kwLlNCUkcuRUMwLkFOWVMsIDB4MDQsIFxfU0IuUENJMC5TQlJHLkVD MC5BTllTKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBJZiAo QlQxUykNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgew0KICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXF9TQi5QQ0kwLlNC UkcuRUMwLlNUQzUgKDB4NDApDQogICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIH0NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRWxz ZQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBbmQgKFxfU0IuUENJMC5T QlJHLkVDMC5BTllTLCAweDBDLCBMb2NhbDEpDQogICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBJZiAoTEVxdWFsIChMb2NhbDEsIDB4MEMp KQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgew0KICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxfU0IuUENJ MC5TQlJHLkVDMC5TVEM1ICgweDQwKQ0KICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgRWxzZQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIFxfU0IuUENJMC5TQlJHLkVDMC5TVEM1ICgweDIwKQ0KICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgICAgICAg ICAgfQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVsc2UNCiAgICAg ICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIFxfU0IuUENJMC5TQlJHLkVDMC5TVEM1ICgweDIwKQ0K ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBbmQgKFxfU0IuUENJ MC5TQlJHLkVDMC5BTllTLCAweEZCLCBcX1NCLlBDSTAuU0JSRy5FQzAuQU5Z UykNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAg ICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAgICAgICAgIFJl dHVybiAoTG9jYWwwKQ0KICAgICAgICAgICAgICAgICAgICB9DQoNCiAgICAg ICAgICAgICAgICAgICAgTWV0aG9kIChCU1QzLCAwLCBTZXJpYWxpemVkKQ0K ICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAg ICBTdG9yZSAoXF9TQi5QQ0kwLlNCUkcuRUMwLlJXUkQgKEJBRFIsIDB4MDkp LCBMb2NhbDApDQogICAgICAgICAgICAgICAgICAgICAgICBSZXR1cm4gKExv Y2FsMCkNCiAgICAgICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAg ICAgICAgIE1ldGhvZCAoVlNSQywgMSwgU2VyaWFsaXplZCkNCiAgICAgICAg ICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgQW5kIChB cmcwLCAweEZGRkYsIExvY2FsMCkNCiAgICAgICAgICAgICAgICAgICAgICAg IEFuZCAoTG9jYWwwLCAweDgwMDAsIExvY2FsMSkNCiAgICAgICAgICAgICAg ICAgICAgICAgIElmIChMb2NhbDEpDQogICAgICAgICAgICAgICAgICAgICAg ICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgTm90IChMb2NhbDAs IExvY2FsMCkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBBbmQgKExv Y2FsMCwgMHhGRkZGLCBMb2NhbDApDQogICAgICAgICAgICAgICAgICAgICAg ICAgICAgSW5jcmVtZW50IChMb2NhbDApDQogICAgICAgICAgICAgICAgICAg ICAgICB9DQoNCiAgICAgICAgICAgICAgICAgICAgICAgIE11bHRpcGx5IChM b2NhbDAsIDB4MDNFOCwgTG9jYWwwKQ0KICAgICAgICAgICAgICAgICAgICAg ICAgTXVsdGlwbHkgKDB4MDgsIFNFTlIsIExvY2FsMSkNCiAgICAgICAgICAg ICAgICAgICAgICAgIERpdmlkZSAoTG9jYWwwLCBMb2NhbDEsIExvY2FsMiwg TG9jYWwzKQ0KICAgICAgICAgICAgICAgICAgICAgICAgTXVsdGlwbHkgKExv Y2FsMywgRFZPVCwgTG9jYWwzKQ0KICAgICAgICAgICAgICAgICAgICAgICAg UmV0dXJuIChMb2NhbDMpDQogICAgICAgICAgICAgICAgICAgIH0NCg0KICAg ICAgICAgICAgICAgICAgICBNZXRob2QgKFBGQ0MsIDEsIFNlcmlhbGl6ZWQp DQogICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAg ICAgIE11bHRpcGx5IChBcmcwLCAweDAzRTgsIExvY2FsMCkNCiAgICAgICAg ICAgICAgICAgICAgICAgIE11bHRpcGx5IChTQ0FMLCBTRU5SLCBMb2NhbDEp DQogICAgICAgICAgICAgICAgICAgICAgICBEaXZpZGUgKExvY2FsMCwgTG9j YWwxLCBMb2NhbDIsIExvY2FsMykNCiAgICAgICAgICAgICAgICAgICAgICAg IE11bHRpcGx5IChMb2NhbDMsIERWT1QsIExvY2FsMykNCiAgICAgICAgICAg ICAgICAgICAgICAgIFJldHVybiAoTG9jYWwzKQ0KICAgICAgICAgICAgICAg ICAgICB9DQogICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAg U2NvcGUgKFxfU0IuUENJMC5TQlJHLkVDMCkNCiAgICAgICAgICAgICAgICB7 DQogICAgICAgICAgICAgICAgICAgIE1ldGhvZCAoX1EyRiwgMCwgTm90U2Vy aWFsaXplZCkNCiAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAg ICAgICAgICAgICAgU3RvcmUgKDB4MkYsIERQODApDQogICAgICAgICAgICAg ICAgICAgICAgICBTbGVlcCAoMHgwNURDKQ0KICAgICAgICAgICAgICAgICAg ICAgICAgSWYgKEJBVFMgKCkpDQogICAgICAgICAgICAgICAgICAgICAgICB7 DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgV1JFQyAoMHg0OSwgMHg4 MCkNCiAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAg ICAgICAgICAgIEVsc2UNCiAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAg ICAgICAgICAgICAgICAgICAgICAgICAgICBXUkVDICgweDQ5LCAweDkwKQ0K ICAgICAgICAgICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAg ICAgICAgICBOb3RpZnkgKFxfU0IuQUMsIDB4ODApDQogICAgICAgICAgICAg ICAgICAgICAgICBOb3RpZnkgKFxfU0IuQkFUMCwgMHg4MCkNCiAgICAgICAg ICAgICAgICAgICAgICAgIE5vdGlmeSAoXF9TQi5CQVQwLCAweDgxKQ0KICAg ICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgfQ0KDQogICAg ICAgICAgICAgICAgRGV2aWNlIChcX1NCLkJBVDEpDQogICAgICAgICAgICAg ICAgew0KICAgICAgICAgICAgICAgICAgICBOYW1lIChfSElELCBFaXNhSWQg KCJQTlAwQzBBIikpDQogICAgICAgICAgICAgICAgICAgIE5hbWUgKF9VSUQs IDB4MDEpDQogICAgICAgICAgICAgICAgICAgIE5hbWUgKF9QQ0wsIFBhY2th Z2UgKDB4MDEpDQogICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAg ICAgICAgICAgICAgIFxfU0INCiAgICAgICAgICAgICAgICAgICAgfSkNCiAg ICAgICAgICAgICAgICAgICAgTmFtZSAoQkFEUiwgMHgxNikNCiAgICAgICAg ICAgICAgICAgICAgTmFtZSAoUEFLMCwgUGFja2FnZSAoMHgwRCkNCiAgICAg ICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgMHgw MSwgDQogICAgICAgICAgICAgICAgICAgICAgICAweEZGRkZGRkZGLCANCiAg ICAgICAgICAgICAgICAgICAgICAgIDB4RkZGRkZGRkYsIA0KICAgICAgICAg ICAgICAgICAgICAgICAgMHgwMSwgDQogICAgICAgICAgICAgICAgICAgICAg ICAweEZGRkZGRkZGLCANCiAgICAgICAgICAgICAgICAgICAgICAgIDB4RkZG RkZGRkYsIA0KICAgICAgICAgICAgICAgICAgICAgICAgMHhGRkZGRkZGRiwg DQogICAgICAgICAgICAgICAgICAgICAgICAweEZGRkZGRkZGLCANCiAgICAg ICAgICAgICAgICAgICAgICAgIDB4RkZGRkZGRkYsIA0KICAgICAgICAgICAg ICAgICAgICAgICAgIiIsIA0KICAgICAgICAgICAgICAgICAgICAgICAgIiIs IA0KICAgICAgICAgICAgICAgICAgICAgICAgIiIsIA0KICAgICAgICAgICAg ICAgICAgICAgICAgIiINCiAgICAgICAgICAgICAgICAgICAgfSkNCiAgICAg ICAgICAgICAgICAgICAgTmFtZSAoUEFLMSwgUGFja2FnZSAoMHgwRCkNCiAg ICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAg MHgwMSwgDQogICAgICAgICAgICAgICAgICAgICAgICAweDEwQ0MsIA0KICAg ICAgICAgICAgICAgICAgICAgICAgMHgxMENDLCANCiAgICAgICAgICAgICAg ICAgICAgICAgIDB4MDEsIA0KICAgICAgICAgICAgICAgICAgICAgICAgMHgz OUQwLCANCiAgICAgICAgICAgICAgICAgICAgICAgIDB4QjYsIA0KICAgICAg ICAgICAgICAgICAgICAgICAgMHg4MiwgDQogICAgICAgICAgICAgICAgICAg ICAgICAweDM0LCANCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDk3Miwg DQogICAgICAgICAgICAgICAgICAgICAgICAiTTZORSIsIA0KICAgICAgICAg ICAgICAgICAgICAgICAgIjAwMDAxIiwgDQogICAgICAgICAgICAgICAgICAg ICAgICAiTElvbiIsIA0KICAgICAgICAgICAgICAgICAgICAgICAgIkFTVVNU ZWsiDQogICAgICAgICAgICAgICAgICAgIH0pDQogICAgICAgICAgICAgICAg ICAgIE1ldGhvZCAoX0JJRiwgMCwgTm90U2VyaWFsaXplZCkNCiAgICAgICAg ICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgSWYgKFxf U0IuQlQxUykNCiAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAg ICAgICAgICAgICAgICAgICAgICBSZXR1cm4gKFBBSzApDQogICAgICAgICAg ICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAgICAgICAgIEFj cXVpcmUgKEJBVFgsIDB4RkZGRikNCiAgICAgICAgICAgICAgICAgICAgICAg IFxfU0IuUENJMC5TQlJHLkVDMC5TVEM1ICgweDIyKQ0KICAgICAgICAgICAg ICAgICAgICAgICAgU2xlZXAgKDB4NjQpDQogICAgICAgICAgICAgICAgICAg ICAgICBTdG9yZSAoQklGMSAoKSwgTG9jYWwwKQ0KICAgICAgICAgICAgICAg ICAgICAgICAgU3RvcmUgKENBUEQsIEluZGV4IChQQUsxLCAweDAxKSkNCiAg ICAgICAgICAgICAgICAgICAgICAgIFN0b3JlIChGVUNILCBJbmRleCAoUEFL MSwgMHgwMikpDQogICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoRENX TiwgSW5kZXggKFBBSzEsIDB4MDUpKQ0KICAgICAgICAgICAgICAgICAgICAg ICAgU3RvcmUgKERDTFcsIEluZGV4IChQQUsxLCAweDA2KSkNCiAgICAgICAg ICAgICAgICAgICAgICAgIFN0b3JlIChEVk9ULCBJbmRleCAoUEFLMSwgMHgw NCkpDQogICAgICAgICAgICAgICAgICAgICAgICBSZWxlYXNlIChCQVRYKQ0K ICAgICAgICAgICAgICAgICAgICAgICAgUmV0dXJuIChQQUsxKQ0KICAgICAg ICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAgICAgTmFtZSAo QkZCMCwgUGFja2FnZSAoMHgwNCkNCiAgICAgICAgICAgICAgICAgICAgew0K ICAgICAgICAgICAgICAgICAgICAgICAgMHgwMCwgDQogICAgICAgICAgICAg ICAgICAgICAgICAweDA1MDAsIA0KICAgICAgICAgICAgICAgICAgICAgICAg MHgwRTQxLCANCiAgICAgICAgICAgICAgICAgICAgICAgIDB4RkZGRkZGRkYN CiAgICAgICAgICAgICAgICAgICAgfSkNCiAgICAgICAgICAgICAgICAgICAg TWV0aG9kIChfQlNULCAwLCBOb3RTZXJpYWxpemVkKQ0KICAgICAgICAgICAg ICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICBJZiAoXF9TQi5C VDFTKQ0KICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAg ICAgICAgICAgICAgICAgIFN0b3JlIChPbmVzLCBJbmRleCAoQkZCMCwgMHgw MCkpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKE9uZXMs IEluZGV4IChCRkIwLCAweDAxKSkNCiAgICAgICAgICAgICAgICAgICAgICAg ICAgICBTdG9yZSAoT25lcywgSW5kZXggKEJGQjAsIDB4MDIpKQ0KICAgICAg ICAgICAgICAgICAgICAgICAgICAgIFN0b3JlIChPbmVzLCBJbmRleCAoQkZC MCwgMHgwMykpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgUmV0dXJu IChCRkIwKQ0KICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAg ICAgICAgICAgICAgICAgRWxzZQ0KICAgICAgICAgICAgICAgICAgICAgICAg ew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFjcXVpcmUgKEJBVFgs IDB4RkZGRikNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBcX1NCLlBD STAuU0JSRy5FQzAuU1RDNSAoMHgyMikNCiAgICAgICAgICAgICAgICAgICAg ICAgICAgICBTbGVlcCAoMHg2NCkNCiAgICAgICAgICAgICAgICAgICAgICAg ICAgICBTdG9yZSAoQlNUMSAoKSwgSW5kZXggKEJGQjAsIDB4MDEpKQ0KICAg ICAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlIChCU1QyICgpLCBMb2Nh bDApDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKExvY2Fs MCwgSW5kZXggKEJGQjAsIDB4MDIpKQ0KICAgICAgICAgICAgICAgICAgICAg ICAgICAgIFN0b3JlIChCU1QwIChMb2NhbDApLCBJbmRleCAoQkZCMCwgMHgw MCkpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKEJTVDMg KCksIEluZGV4IChCRkIwLCAweDAzKSkNCiAgICAgICAgICAgICAgICAgICAg ICAgICAgICBSZWxlYXNlIChCQVRYKQ0KICAgICAgICAgICAgICAgICAgICAg ICAgICAgIFJldHVybiAoQkZCMCkNCiAgICAgICAgICAgICAgICAgICAgICAg IH0NCiAgICAgICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAg ICAgIE1ldGhvZCAoX1NUQSwgMCwgTm90U2VyaWFsaXplZCkNCiAgICAgICAg ICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUg KFxfU0IuQlQxUywgTG9jYWwwKQ0KICAgICAgICAgICAgICAgICAgICAgICAg SWYgKExOb3QgKExvY2FsMCkpDQogICAgICAgICAgICAgICAgICAgICAgICB7 DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgUmV0dXJuICgweDFGKQ0K ICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAg ICAgICAgRWxzZQ0KICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAg ICAgICAgICAgICAgICAgICAgICAgIFJldHVybiAoMHgwRikNCiAgICAgICAg ICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAgICAgfQ0KDQog ICAgICAgICAgICAgICAgICAgIE5hbWUgKFNDQUwsIDB4MDE0MCkNCiAgICAg ICAgICAgICAgICAgICAgTmFtZSAoU0VOUiwgMHgxNCkNCiAgICAgICAgICAg ICAgICAgICAgTmFtZSAoQ0FQRCwgMHgwMDAxNDgyMCkNCiAgICAgICAgICAg ICAgICAgICAgTmFtZSAoRlVDSCwgMHgwMDAxNDgyMCkNCiAgICAgICAgICAg ICAgICAgICAgTmFtZSAoRENXTiwgMHgwMUE0KQ0KICAgICAgICAgICAgICAg ICAgICBOYW1lIChEQ0xXLCAweDAxQTQpDQogICAgICAgICAgICAgICAgICAg IE5hbWUgKERWT1QsIDB4MEUpDQogICAgICAgICAgICAgICAgICAgIE1ldGhv ZCAoQklGMSwgMCwgU2VyaWFsaXplZCkNCiAgICAgICAgICAgICAgICAgICAg ew0KICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKDB4MDAsIERXMDAp DQogICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoXF9TQi5QQ0kwLlNC UkcuRUMwLlJXUkQgKEJBRFIsIDB4MTgpLCBMb2NhbDApDQogICAgICAgICAg ICAgICAgICAgICAgICBTdG9yZSAoTG9jYWwwLCBDQVBEKQ0KICAgICAgICAg ICAgICAgICAgICAgICAgU3RvcmUgKFxfU0IuUENJMC5TQlJHLkVDMC5SV1JE IChCQURSLCAweDEwKSwgTG9jYWwwKQ0KICAgICAgICAgICAgICAgICAgICAg ICAgU2hpZnRSaWdodCAoTG9jYWwwLCAweDA2LCBMb2NhbDEpDQogICAgICAg ICAgICAgICAgICAgICAgICBTdWJ0cmFjdCAoTG9jYWwwLCBMb2NhbDEsIEZV Q0gpDQogICAgICAgICAgICAgICAgICAgICAgICBEaXZpZGUgKENBUEQsIDB4 MjEsIExvY2FsMCwgTG9jYWwxKQ0KICAgICAgICAgICAgICAgICAgICAgICAg U3RvcmUgKExvY2FsMSwgRENXTikNCiAgICAgICAgICAgICAgICAgICAgICAg IERpdmlkZSAoQ0FQRCwgMHhDOCwgTG9jYWwwLCBMb2NhbDEpDQogICAgICAg ICAgICAgICAgICAgICAgICBTdG9yZSAoTG9jYWwxLCBEQ0xXKQ0KICAgICAg ICAgICAgICAgICAgICAgICAgU3RvcmUgKFxfU0IuUENJMC5TQlJHLkVDMC5S V1JEIChCQURSLCAweDE5KSwgRFZPVCkNCiAgICAgICAgICAgICAgICAgICAg ICAgIFJldHVybiAoQ0FQRCkNCiAgICAgICAgICAgICAgICAgICAgfQ0KDQog ICAgICAgICAgICAgICAgICAgIE1ldGhvZCAoQlNUMCwgMSwgU2VyaWFsaXpl ZCkNCiAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAg ICAgICAgSWYgKEFDUyAoKSkNCiAgICAgICAgICAgICAgICAgICAgICAgIHsN CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoQXJnMCwgTG9j YWwxKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIElmIChMTm90IChM TGVzcyAoTG9jYWwxLCBGVUNIKSkpDQogICAgICAgICAgICAgICAgICAgICAg ICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdG9y ZSAoMHgwMCwgTG9jYWwwKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAg IH0NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBFbHNlDQogICAgICAg ICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBTdG9yZSAoMHgwMiwgTG9jYWwwKQ0KICAgICAgICAgICAg ICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAgICAgICAgIH0N CiAgICAgICAgICAgICAgICAgICAgICAgIEVsc2UNCiAgICAgICAgICAgICAg ICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdG9y ZSAoMHgwMSwgTG9jYWwwKQ0KICAgICAgICAgICAgICAgICAgICAgICAgfQ0K ICAgICAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAgICAg TWV0aG9kIChCU1QxLCAwLCBTZXJpYWxpemVkKQ0KICAgICAgICAgICAgICAg ICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoXF9TQi5Q Q0kwLlNCUkcuRUMwLlJXUkQgKEJBRFIsIDB4MEIpLCBMb2NhbDApDQogICAg ICAgICAgICAgICAgICAgICAgICBBbmQgKExvY2FsMCwgMHhGRkZGLCBMb2Nh bDApDQogICAgICAgICAgICAgICAgICAgICAgICBJZiAoTEdyZWF0ZXIgKExv Y2FsMCwgMHg4MDAwKSkNCiAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAg ICAgICAgICAgICAgICAgICAgICAgICAgICBYT3IgKExvY2FsMCwgMHhGRkZG LCBMb2NhbDApDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkIChM b2NhbDAsIDB4MDEsIExvY2FsMCkNCiAgICAgICAgICAgICAgICAgICAgICAg IH0NCiAgICAgICAgICAgICAgICAgICAgICAgIEVsc2UNCiAgICAgICAgICAg ICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBT dG9yZSAoMHhGRkZGRkZGRiwgTG9jYWwwKQ0KICAgICAgICAgICAgICAgICAg ICAgICAgfQ0KDQogICAgICAgICAgICAgICAgICAgICAgICBSZXR1cm4gKExv Y2FsMCkNCiAgICAgICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAg ICAgICAgIE1ldGhvZCAoQlNUMiwgMCwgU2VyaWFsaXplZCkNCiAgICAgICAg ICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUg KFxfU0IuUENJMC5TQlJHLkVDMC5SV1JEIChCQURSLCAweDBGKSwgTG9jYWww KQ0KICAgICAgICAgICAgICAgICAgICAgICAgSWYgKEFDUyAoKSkNCiAgICAg ICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAg ICAgICBcX1NCLlBDSTAuU0JSRy5FQzAuU1RDNSAoMHgyMCkNCiAgICAgICAg ICAgICAgICAgICAgICAgICAgICBBbmQgKFxfU0IuUENJMC5TQlJHLkVDMC5B TllTLCAweEY3LCBcX1NCLlBDSTAuU0JSRy5FQzAuQU5ZUykNCiAgICAgICAg ICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAgICAgICAgIEVs c2UNCiAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAg ICAgICAgICAgICAgICBJZiAoTExlc3MgKExvY2FsMCwgMHgwMUFGKSkNCiAg ICAgICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIE9yIChcX1NCLlBDSTAuU0JSRy5FQzAuQU5ZUywg MHgwOCwgXF9TQi5QQ0kwLlNCUkcuRUMwLkFOWVMpDQogICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIElmIChCQVRTICgpKQ0KICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBcX1NCLlBDSTAuU0JSRy5FQzAuU1RDNSAoMHg0MCkN CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAg ICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAgICAgICAg ICAgICBFbHNlDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgew0KICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcX1NCLlBDSTAuU0JSRy5F QzAuU1RDNSAoMHgyMCkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgQW5kIChcX1NCLlBDSTAuU0JSRy5FQzAuQU5ZUywgMHhGNywgXF9TQi5Q Q0kwLlNCUkcuRUMwLkFOWVMpDQogICAgICAgICAgICAgICAgICAgICAgICAg ICAgfQ0KICAgICAgICAgICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAg ICAgICAgICAgICAgICBSZXR1cm4gKExvY2FsMCkNCiAgICAgICAgICAgICAg ICAgICAgfQ0KDQogICAgICAgICAgICAgICAgICAgIE1ldGhvZCAoQlNUMywg MCwgU2VyaWFsaXplZCkNCiAgICAgICAgICAgICAgICAgICAgew0KICAgICAg ICAgICAgICAgICAgICAgICAgU3RvcmUgKFxfU0IuUENJMC5TQlJHLkVDMC5S V1JEIChCQURSLCAweDA5KSwgTG9jYWwwKQ0KICAgICAgICAgICAgICAgICAg ICAgICAgUmV0dXJuIChMb2NhbDApDQogICAgICAgICAgICAgICAgICAgIH0N Cg0KICAgICAgICAgICAgICAgICAgICBNZXRob2QgKFZTUkMsIDEsIFNlcmlh bGl6ZWQpDQogICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAg ICAgICAgICAgIEFuZCAoQXJnMCwgMHhGRkZGLCBMb2NhbDApDQogICAgICAg ICAgICAgICAgICAgICAgICBBbmQgKExvY2FsMCwgMHg4MDAwLCBMb2NhbDEp DQogICAgICAgICAgICAgICAgICAgICAgICBJZiAoTG9jYWwxKQ0KICAgICAg ICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAg ICAgIE5vdCAoTG9jYWwwLCBMb2NhbDApDQogICAgICAgICAgICAgICAgICAg ICAgICAgICAgQW5kIChMb2NhbDAsIDB4RkZGRiwgTG9jYWwwKQ0KICAgICAg ICAgICAgICAgICAgICAgICAgICAgIEluY3JlbWVudCAoTG9jYWwwKQ0KICAg ICAgICAgICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgICAg ICAgICBNdWx0aXBseSAoTG9jYWwwLCAweDAzRTgsIExvY2FsMCkNCiAgICAg ICAgICAgICAgICAgICAgICAgIE11bHRpcGx5ICgweDA4LCBTRU5SLCBMb2Nh bDEpDQogICAgICAgICAgICAgICAgICAgICAgICBEaXZpZGUgKExvY2FsMCwg TG9jYWwxLCBMb2NhbDIsIExvY2FsMykNCiAgICAgICAgICAgICAgICAgICAg ICAgIE11bHRpcGx5IChMb2NhbDMsIERWT1QsIExvY2FsMykNCiAgICAgICAg ICAgICAgICAgICAgICAgIFJldHVybiAoTG9jYWwzKQ0KICAgICAgICAgICAg ICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAgICAgTWV0aG9kIChQRkND LCAxLCBTZXJpYWxpemVkKQ0KICAgICAgICAgICAgICAgICAgICB7DQogICAg ICAgICAgICAgICAgICAgICAgICBNdWx0aXBseSAoQXJnMCwgMHgwM0U4LCBM b2NhbDApDQogICAgICAgICAgICAgICAgICAgICAgICBNdWx0aXBseSAoU0NB TCwgU0VOUiwgTG9jYWwxKQ0KICAgICAgICAgICAgICAgICAgICAgICAgRGl2 aWRlIChMb2NhbDAsIExvY2FsMSwgTG9jYWwyLCBMb2NhbDMpDQogICAgICAg ICAgICAgICAgICAgICAgICBNdWx0aXBseSAoTG9jYWwzLCBEVk9ULCBMb2Nh bDMpDQogICAgICAgICAgICAgICAgICAgICAgICBSZXR1cm4gKExvY2FsMykN CiAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgIH0NCg0K ICAgICAgICAgICAgICAgIFNjb3BlIChcX1NCLlBDSTAuU0JSRy5FQzApDQog ICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICBTY29wZSAo XF9HUEUpDQogICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAg ICAgICAgICAgIE1ldGhvZCAoX0wxMywgMCwgTm90U2VyaWFsaXplZCkNCiAg ICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAg ICAgICAgICBTbGVlcCAoMHgwNURDKQ0KICAgICAgICAgICAgICAgICAgICAg ICAgICAgIElmIChcX1NCLkJUMVMpDQogICAgICAgICAgICAgICAgICAgICAg ICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdG9y ZSAoMHgwMCwgXF9TQi5CVDFTKQ0KICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBOb3RpZnkgKFxfU0IuQkFUMSwgMHgwMSkNCiAgICAgICAgICAg ICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgICAgICAg ICAgRWxzZQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgTm90aWZ5IChcX1NCLkJBVDEs IDB4MDApDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN0b3Jl ICgweDAxLCBcX1NCLkJUMVMpDQogICAgICAgICAgICAgICAgICAgICAgICAg ICAgfQ0KDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgTm90aWZ5IChc X1NCLkFDLCAweDgwKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5v dGlmeSAoXF9TQi5CQVQxLCAweDgwKQ0KICAgICAgICAgICAgICAgICAgICAg ICAgICAgIE5vdGlmeSAoXF9TQi5CQVQxLCAweDgxKQ0KICAgICAgICAgICAg ICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICB9DQogICAgICAg ICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgU2NvcGUgKFxfU0IpDQog ICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICBOYW1lIChB VEtQLCBaZXJvKQ0KICAgICAgICAgICAgICAgICAgICBEZXZpY2UgKEFUS0Qp DQogICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAg ICAgIE5hbWUgKF9ISUQsICJBVEswMTAwIikNCiAgICAgICAgICAgICAgICAg ICAgICAgIE5hbWUgKF9VSUQsIDB4MDEwMTAxMDApDQogICAgICAgICAgICAg ICAgICAgICAgICBNZXRob2QgKElOSVQsIDEsIE5vdFNlcmlhbGl6ZWQpDQog ICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAg ICAgICAgICAgU3RvcmUgKE9uZSwgQVRLUCkNCiAgICAgICAgICAgICAgICAg ICAgICAgICAgICBSZXR1cm4gKCJNNk5FIikNCiAgICAgICAgICAgICAgICAg ICAgICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICAgICAgTWV0aG9kIChC U1RTLCAwLCBOb3RTZXJpYWxpemVkKQ0KICAgICAgICAgICAgICAgICAgICAg ICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJldHVybiAoMHgw MCkNCiAgICAgICAgICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAg ICAgICAgICAgICAgTWV0aG9kIChNTEVELCAxLCBOb3RTZXJpYWxpemVkKQ0K ICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAg ICAgICAgICAgIElmIChBcmcwKQ0KICAgICAgICAgICAgICAgICAgICAgICAg ICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUg KEFyZzAsIERCRzgpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IFN0b3JlICgweDMxLCBMb2NhbDApDQogICAgICAgICAgICAgICAgICAgICAg ICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVsc2UNCiAg ICAgICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIFN0b3JlIChBcmcwLCBEQkc4KQ0KICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoMHg1MSwgTG9jYWwwKQ0K ICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAg ICAgICAgICAgICAgICAgIFxfU0IuUENJMC5TQlJHLkVDMC5TVEM1IChMb2Nh bDApDQogICAgICAgICAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAg ICAgICAgICAgICAgIE1ldGhvZCAoVE1QUiwgMCwgTm90U2VyaWFsaXplZCkN CiAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAg ICAgICAgICAgICBTdG9yZSAoXF9UWi5SVE1QICgpLCBMb2NhbDApDQogICAg ICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKFxfVFouUkZBTiAoKSwg TG9jYWwxKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIFNoaWZ0TGVm dCAoTG9jYWwxLCAweDEwLCBMb2NhbDEpDQogICAgICAgICAgICAgICAgICAg ICAgICAgICAgQWRkIChcX1RaLktFTFYgKExvY2FsMCksIExvY2FsMSwgTG9j YWwwKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlIChaZXJv LCBMb2NhbDIpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgSWYgKFxU RU5BKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKFxURFRZLCBMb2NhbDIp DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAg ICAgICAgICAgICAgICAgIEVsc2UNCiAgICAgICAgICAgICAgICAgICAgICAg ICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIElmIChc VEhMUykNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgew0KICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKFxUVERU LCBMb2NhbDIpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0N CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAg ICAgICAgICAgICAgICAgICBTaGlmdExlZnQgKExvY2FsMiwgMHgxOCwgTG9j YWwyKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFkZCAoTG9jYWww LCBMb2NhbDIsIExvY2FsMCkNCiAgICAgICAgICAgICAgICAgICAgICAgICAg ICBSZXR1cm4gKExvY2FsMCkNCiAgICAgICAgICAgICAgICAgICAgICAgIH0N Cg0KICAgICAgICAgICAgICAgICAgICAgICAgTWV0aG9kIChTRlVOLCAwLCBO b3RTZXJpYWxpemVkKQ0KICAgICAgICAgICAgICAgICAgICAgICAgew0KICAg ICAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlICgweDc3LCBMb2NhbDAp DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgSWYgKExFcXVhbCAoXF9T Qi5QQ0kwLlAwUDIuTVBDMC5NUERQICgpLCAweDAxKSkNCiAgICAgICAgICAg ICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIE9yIChMb2NhbDAsIDB4MDEwMCwgTG9jYWwwKQ0KICAgICAgICAg ICAgICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICAg ICAgICAgIElmIChMR3JlYXRlciAoXF9TQi5QQ0kwLlAwUDIuTVBDMC5NUERQ ICgpLCAweDAxKSkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7DQog ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE9yIChMb2NhbDAsIDB4 MDgwMCwgTG9jYWwwKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0N Cg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJldHVybiAoTG9jYWww KQ0KICAgICAgICAgICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAg ICAgICAgICAgICBNZXRob2QgKFdERVYsIDAsIE5vdFNlcmlhbGl6ZWQpDQog ICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAg ICAgICAgICAgUmV0dXJuIChcX1NCLlBDSTAuUDBQMi5NUEMwLk1QRFAgKCkp DQogICAgICAgICAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAg ICAgICAgICAgIE1ldGhvZCAoT1NWUiwgMSwgTm90U2VyaWFsaXplZCkNCiAg ICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAg ICAgICAgICBJZiAoTUNUSCAoXF9PUywgIk1pY3Jvc29mdCBXaW5kb3dzIE5U IikpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoMHgwOCwgT1NGRykNCiAg ICAgICAgICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAg ICAgICAgICAgICAgRWxzZQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAg IHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKDB4 MTAsIE9TRkcpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAg ICAgICAgICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgICAg ICAgICBNZXRob2QgKEdQTFYsIDAsIE5vdFNlcmlhbGl6ZWQpDQogICAgICAg ICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAg ICAgUmV0dXJuIChcX1NCLlBDSTAuU0JSRy5FQzAuQlJDVCkNCiAgICAgICAg ICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICAgICAg TWV0aG9kIChTUExWLCAxLCBOb3RTZXJpYWxpemVkKQ0KICAgICAgICAgICAg ICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN0 b3JlIChBcmcwLCBcX1NCLlBDSTAuU0JSRy5FQzAuQlJDVCkNCiAgICAgICAg ICAgICAgICAgICAgICAgICAgICBcX1NCLlBDSTAuU0JSRy5FQzAuU1RCUiAo KQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJldHVybiAoMHgwMSkN CiAgICAgICAgICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAg ICAgICAgICAgTWV0aG9kIChXTEVELCAxLCBOb3RTZXJpYWxpemVkKQ0KICAg ICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAg ICAgICAgIElmIChBcmcwKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAg IHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKDB4 MDAsIFxfU0IuUENJMC5TQlJHLlNHMTMpDQogICAgICAgICAgICAgICAgICAg ICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVsc2UN CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIFN0b3JlICgweDAxLCBcX1NCLlBDSTAuU0JS Ry5TRzEzKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAg ICAgICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICAg ICAgTWV0aG9kIChTRFNQLCAxLCBOb3RTZXJpYWxpemVkKQ0KICAgICAgICAg ICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAg IElmIChMRXF1YWwgKFxfU0IuUENJMC5QMFAxLlZHQS5TV0lULCAweDAwKSkN CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIFN0b3JlIChBcmcwLCBMb2NhbDApDQogICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIElmIChBbmQgKExvY2FsMCwg MHgwMSkpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlICgweDAx LCBcX1NCLlBDSTAuUDBQMS5WR0EuTENELl9ER1MpDQogICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgRWxzZQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdG9y ZSAoMHgwMCwgXF9TQi5QQ0kwLlAwUDEuVkdBLkxDRC5fREdTKQ0KICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgSWYgKEFuZCAoTG9jYWwwLCAweDAyKSkNCiAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKDB4MDEsIFxfU0IuUENJ MC5QMFAxLlZHQS5DUlQuX0RHUykNCiAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBF bHNlDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlICgweDAwLCBc X1NCLlBDSTAuUDBQMS5WR0EuQ1JULl9ER1MpDQogICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBJZiAoQW5kIChMb2NhbDAsIDB4MDQpKQ0KICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBTdG9yZSAoMHgwMSwgXF9TQi5QQ0kwLlAwUDEuVkdB LlRWLl9ER1MpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0N CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRWxzZQ0KICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBTdG9yZSAoMHgwMCwgXF9TQi5QQ0kwLlAw UDEuVkdBLlRWLl9ER1MpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOb3Rp ZnkgKFxfU0IuUENJMC5QMFAxLlZHQSwgMHg4MCkNCiAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgU3RvcmUgKDB4MDAsIFxfU0IuUENJMC5TQlJH LkVDMC5EU1RFKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBT dG9yZSAoMHgwMCwgXF9TQi5QQ0kwLlNCUkcuRUMwLkNTVEUpDQogICAgICAg ICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICAg ICAgfQ0KDQogICAgICAgICAgICAgICAgICAgICAgICBNZXRob2QgKEdQSUQs IDAsIE5vdFNlcmlhbGl6ZWQpDQogICAgICAgICAgICAgICAgICAgICAgICB7 DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKFxfU0IuUENJ MC5TQlJHLkVDMC5BTllTLCBMb2NhbDApDQogICAgICAgICAgICAgICAgICAg ICAgICAgICAgU2hpZnRSaWdodCAoTG9jYWwwLCAweDA0LCBMb2NhbDApDQog ICAgICAgICAgICAgICAgICAgICAgICAgICAgUmV0dXJuIChMb2NhbDApDQog ICAgICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICAg IH0NCiAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICBTY29w ZSAoXF9TQi5BVEtEKQ0KICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAg ICAgICAgICAgTWV0aG9kIChGU01JLCAxLCBOb3RTZXJpYWxpemVkKQ0KICAg ICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICBT dG9yZSAoQXJnMCwgXEZTRk4pDQogICAgICAgICAgICAgICAgICAgICAgICBP ciAoQXJnMCwgMHhBMCwgTG9jYWwwKQ0KICAgICAgICAgICAgICAgICAgICAg ICAgU3RvcmUgKExvY2FsMCwgXERCRzgpDQogICAgICAgICAgICAgICAgICAg ICAgICBJU01JIChcV0ZBVCkNCiAgICAgICAgICAgICAgICAgICAgICAgIFJl dHVybiAoXEZTVEEpDQogICAgICAgICAgICAgICAgICAgIH0NCg0KICAgICAg ICAgICAgICAgICAgICBNZXRob2QgKEZMU0gsIDEsIE5vdFNlcmlhbGl6ZWQp DQogICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAg ICAgIFN0b3JlIChBcmcwLCBcRlNUQSkNCiAgICAgICAgICAgICAgICAgICAg ICAgIEZTTUkgKDB4MDApDQogICAgICAgICAgICAgICAgICAgIH0NCg0KICAg ICAgICAgICAgICAgICAgICBNZXRob2QgKEZJTkksIDEsIE5vdFNlcmlhbGl6 ZWQpDQogICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAg ICAgICAgIFN0b3JlIChBcmcwLCBcRkFEUikNCiAgICAgICAgICAgICAgICAg ICAgICAgIFJldHVybiAoRlNNSSAoMHgwMSkpDQogICAgICAgICAgICAgICAg ICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICBNZXRob2QgKEZFUlMsIDEs IE5vdFNlcmlhbGl6ZWQpDQogICAgICAgICAgICAgICAgICAgIHsNCiAgICAg ICAgICAgICAgICAgICAgICAgIFN0b3JlIChBcmcwLCBcRlNUQSkNCiAgICAg ICAgICAgICAgICAgICAgICAgIFJldHVybiAoRlNNSSAoMHgwMikpDQogICAg ICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICBNZXRo b2QgKEZXUkksIDEsIE5vdFNlcmlhbGl6ZWQpDQogICAgICAgICAgICAgICAg ICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlIChBcmcwLCBc RkFEUikNCiAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlICgweDEwMDAs IFxGU0laKQ0KICAgICAgICAgICAgICAgICAgICAgICAgUmV0dXJuIChTdWJ0 cmFjdCAoMHgxMDAwLCBGU01JICgweDAzKSkpDQogICAgICAgICAgICAgICAg ICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICBNZXRob2QgKEZXUlAsIDAs IE5vdFNlcmlhbGl6ZWQpDQogICAgICAgICAgICAgICAgICAgIHsNCiAgICAg ICAgICAgICAgICAgICAgICAgIFN0b3JlICgweDAwLCBcRlNJWikNCiAgICAg ICAgICAgICAgICAgICAgICAgIFJldHVybiAoU3VidHJhY3QgKDB4MTAwMCwg RlNNSSAoMHgwMykpKQ0KICAgICAgICAgICAgICAgICAgICB9DQogICAgICAg ICAgICAgICAgfQ0KICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICBEZXZp Y2UgKFNNQlMpDQogICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgTmFt ZSAoX0FEUiwgMHgwMDFGMDAwMykNCiAgICAgICAgICAgICAgICBNZXRob2Qg KF9QUlcsIDAsIE5vdFNlcmlhbGl6ZWQpDQogICAgICAgICAgICAgICAgew0K ICAgICAgICAgICAgICAgICAgICBSZXR1cm4gKEdQUlcgKDB4MDcsIDB4MDMp KQ0KICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgIH0NCg0KICAgICAg ICAgICAgRGV2aWNlIChNT0RNKQ0KICAgICAgICAgICAgew0KICAgICAgICAg ICAgICAgIE5hbWUgKF9BRFIsIDB4MDAxRjAwMDYpDQogICAgICAgICAgICAg ICAgTWV0aG9kIChfUFJXLCAwLCBOb3RTZXJpYWxpemVkKQ0KICAgICAgICAg ICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgUmV0dXJuIChHUFJXICgw eDA1LCAweDAzKSkNCiAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICB9 DQoNCiAgICAgICAgICAgIERldmljZSAoSURFMCkNCiAgICAgICAgICAgIHsN CiAgICAgICAgICAgICAgICBOYW1lIChfQURSLCAweDAwMUYwMDAxKQ0KICAg ICAgICAgICAgICAgIE5hbWUgKFJFR0YsIDB4MDEpDQogICAgICAgICAgICAg ICAgTWV0aG9kIChfUkVHLCAyLCBOb3RTZXJpYWxpemVkKQ0KICAgICAgICAg ICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgSWYgKExFcXVhbCAoQXJn MCwgMHgwMikpDQogICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAg ICAgICAgICAgICAgIFN0b3JlIChBcmcxLCBSRUdGKQ0KICAgICAgICAgICAg ICAgICAgICB9DQogICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAg ICAgT3BlcmF0aW9uUmVnaW9uIChCQVIwLCBQQ0lfQ29uZmlnLCAweDAwLCAw eDAxMDApDQogICAgICAgICAgICAgICAgRmllbGQgKEJBUjAsIERXb3JkQWNj LCBOb0xvY2ssIFByZXNlcnZlKQ0KICAgICAgICAgICAgICAgIHsNCiAgICAg ICAgICAgICAgICAgICAgT2Zmc2V0ICgweDQwKSwgDQogICAgICAgICAgICAg ICAgICAgIFRJTVAsICAgMTYsIA0KICAgICAgICAgICAgICAgICAgICBUSU1T LCAgIDE2LCANCiAgICAgICAgICAgICAgICAgICAgU1RNUCwgICA0LCANCiAg ICAgICAgICAgICAgICAgICAgU1RNUywgICA0LCANCiAgICAgICAgICAgICAg ICAgICAgT2Zmc2V0ICgweDQ4KSwgDQogICAgICAgICAgICAgICAgICAgIFVE TVAsICAgMiwgDQogICAgICAgICAgICAgICAgICAgIFVETVMsICAgMiwgDQog ICAgICAgICAgICAgICAgICAgIE9mZnNldCAoMHg0QSksIA0KICAgICAgICAg ICAgICAgICAgICBVRFRQLCAgIDYsIA0KICAgICAgICAgICAgICAgICAgICBP ZmZzZXQgKDB4NEIpLCANCiAgICAgICAgICAgICAgICAgICAgVURUUywgICA2 LCANCiAgICAgICAgICAgICAgICAgICAgT2Zmc2V0ICgweDU0KSwgDQogICAg ICAgICAgICAgICAgICAgIFBDQjAsICAgMiwgDQogICAgICAgICAgICAgICAg ICAgIFNDQjAsICAgMiwgDQogICAgICAgICAgICAgICAgICAgIFBDQTAsICAg MiwgDQogICAgICAgICAgICAgICAgICAgIFNDQTAsICAgMiwgDQogICAgICAg ICAgICAgICAgICAgICAgICAsICAgNCwgDQogICAgICAgICAgICAgICAgICAg IEZQQjAsICAgMiwgDQogICAgICAgICAgICAgICAgICAgIEZTQjAsICAgMg0K ICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgIE5hbWUgKFRJ TTAsIFBhY2thZ2UgKDB4MDkpDQogICAgICAgICAgICAgICAgew0KICAgICAg ICAgICAgICAgICAgICBQYWNrYWdlICgweDA0KQ0KICAgICAgICAgICAgICAg ICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAweDc4LCANCiAgICAg ICAgICAgICAgICAgICAgICAgIDB4QjQsIA0KICAgICAgICAgICAgICAgICAg ICAgICAgMHhGMCwgDQogICAgICAgICAgICAgICAgICAgICAgICAweDAzODQN CiAgICAgICAgICAgICAgICAgICAgfSwgDQoNCiAgICAgICAgICAgICAgICAg ICAgUGFja2FnZSAoMHgwNCkNCiAgICAgICAgICAgICAgICAgICAgew0KICAg ICAgICAgICAgICAgICAgICAgICAgMHgyMywgDQogICAgICAgICAgICAgICAg ICAgICAgICAweDIxLCANCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MTAs IA0KICAgICAgICAgICAgICAgICAgICAgICAgMHgwMA0KICAgICAgICAgICAg ICAgICAgICB9LCANCg0KICAgICAgICAgICAgICAgICAgICBQYWNrYWdlICgw eDA0KQ0KICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAg ICAgICAgICAweDBCLCANCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDks IA0KICAgICAgICAgICAgICAgICAgICAgICAgMHgwNCwgDQogICAgICAgICAg ICAgICAgICAgICAgICAweDAwDQogICAgICAgICAgICAgICAgICAgIH0sIA0K DQogICAgICAgICAgICAgICAgICAgIFBhY2thZ2UgKDB4MDYpDQogICAgICAg ICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgIDB4NzAs IA0KICAgICAgICAgICAgICAgICAgICAgICAgMHg0OSwgDQogICAgICAgICAg ICAgICAgICAgICAgICAweDM2LCANCiAgICAgICAgICAgICAgICAgICAgICAg IDB4MjcsIA0KICAgICAgICAgICAgICAgICAgICAgICAgMHgxOSwgDQogICAg ICAgICAgICAgICAgICAgICAgICAweDBGDQogICAgICAgICAgICAgICAgICAg IH0sIA0KDQogICAgICAgICAgICAgICAgICAgIFBhY2thZ2UgKDB4MDYpDQog ICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAg IDB4MDAsIA0KICAgICAgICAgICAgICAgICAgICAgICAgMHgwMSwgDQogICAg ICAgICAgICAgICAgICAgICAgICAweDAyLCANCiAgICAgICAgICAgICAgICAg ICAgICAgIDB4MDEsIA0KICAgICAgICAgICAgICAgICAgICAgICAgMHgwMiwg DQogICAgICAgICAgICAgICAgICAgICAgICAweDAxDQogICAgICAgICAgICAg ICAgICAgIH0sIA0KDQogICAgICAgICAgICAgICAgICAgIFBhY2thZ2UgKDB4 MDYpDQogICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAg ICAgICAgIDB4MDAsIA0KICAgICAgICAgICAgICAgICAgICAgICAgMHgwMCwg DQogICAgICAgICAgICAgICAgICAgICAgICAweDAwLCANCiAgICAgICAgICAg ICAgICAgICAgICAgIDB4MDEsIA0KICAgICAgICAgICAgICAgICAgICAgICAg MHgwMSwgDQogICAgICAgICAgICAgICAgICAgICAgICAweDAxDQogICAgICAg ICAgICAgICAgICAgIH0sIA0KDQogICAgICAgICAgICAgICAgICAgIFBhY2th Z2UgKDB4MDYpDQogICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAg ICAgICAgICAgICAgIDB4MDAsIA0KICAgICAgICAgICAgICAgICAgICAgICAg MHgwMCwgDQogICAgICAgICAgICAgICAgICAgICAgICAweDAwLCANCiAgICAg ICAgICAgICAgICAgICAgICAgIDB4MDAsIA0KICAgICAgICAgICAgICAgICAg ICAgICAgMHgwMCwgDQogICAgICAgICAgICAgICAgICAgICAgICAweDAxDQog ICAgICAgICAgICAgICAgICAgIH0sIA0KDQogICAgICAgICAgICAgICAgICAg IFBhY2thZ2UgKDB4MDQpDQogICAgICAgICAgICAgICAgICAgIHsNCiAgICAg ICAgICAgICAgICAgICAgICAgIDB4MDQsIA0KICAgICAgICAgICAgICAgICAg ICAgICAgMHgwMywgDQogICAgICAgICAgICAgICAgICAgICAgICAweDAyLCAN CiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDANCiAgICAgICAgICAgICAg ICAgICAgfSwgDQoNCiAgICAgICAgICAgICAgICAgICAgUGFja2FnZSAoMHgw NCkNCiAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAg ICAgICAgMHgwMiwgDQogICAgICAgICAgICAgICAgICAgICAgICAweDAxLCAN CiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAsIA0KICAgICAgICAgICAg ICAgICAgICAgICAgMHgwMA0KICAgICAgICAgICAgICAgICAgICB9DQogICAg ICAgICAgICAgICAgfSkNCiAgICAgICAgICAgICAgICBOYW1lIChUTUQwLCBC dWZmZXIgKDB4MTQpIHt9KQ0KICAgICAgICAgICAgICAgIENyZWF0ZURXb3Jk RmllbGQgKFRNRDAsIDB4MDAsIFBJTzApDQogICAgICAgICAgICAgICAgQ3Jl YXRlRFdvcmRGaWVsZCAoVE1EMCwgMHgwNCwgRE1BMCkNCiAgICAgICAgICAg ICAgICBDcmVhdGVEV29yZEZpZWxkIChUTUQwLCAweDA4LCBQSU8xKQ0KICAg ICAgICAgICAgICAgIENyZWF0ZURXb3JkRmllbGQgKFRNRDAsIDB4MEMsIERN QTEpDQogICAgICAgICAgICAgICAgQ3JlYXRlRFdvcmRGaWVsZCAoVE1EMCwg MHgxMCwgQ0hORikNCiAgICAgICAgICAgICAgICBOYW1lIChHVElNLCAweDAw KQ0KICAgICAgICAgICAgICAgIE5hbWUgKEdTVE0sIDB4MDApDQogICAgICAg ICAgICAgICAgTmFtZSAoR1VETSwgMHgwMCkNCiAgICAgICAgICAgICAgICBO YW1lIChHVURULCAweDAwKQ0KICAgICAgICAgICAgICAgIE5hbWUgKEdDQjAs IDB4MDApDQogICAgICAgICAgICAgICAgTmFtZSAoR0ZCMCwgMHgwMCkNCiAg ICAgICAgICAgICAgICBEZXZpY2UgKENITjApDQogICAgICAgICAgICAgICAg ew0KICAgICAgICAgICAgICAgICAgICBOYW1lIChfQURSLCAweDAwKQ0KICAg ICAgICAgICAgICAgICAgICBNZXRob2QgKF9HVE0sIDAsIE5vdFNlcmlhbGl6 ZWQpDQogICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAg ICAgICAgIFJldHVybiAoR1RNIChUSU1QLCBTVE1QLCBVRE1QLCBVRFRQLCBQ Q0IwLCBGUEIwKSkNCiAgICAgICAgICAgICAgICAgICAgfQ0KDQogICAgICAg ICAgICAgICAgICAgIE1ldGhvZCAoX1NUTSwgMywgTm90U2VyaWFsaXplZCkN CiAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAg ICAgU3RvcmUgKEFyZzAsIERlYnVnKQ0KICAgICAgICAgICAgICAgICAgICAg ICAgU3RvcmUgKEFyZzAsIFRNRDApDQogICAgICAgICAgICAgICAgICAgICAg ICBTdG9yZSAoVElNUCwgR1RJTSkNCiAgICAgICAgICAgICAgICAgICAgICAg IFN0b3JlIChVRFRQLCBHVURUKQ0KICAgICAgICAgICAgICAgICAgICAgICAg SWYgKFNUTSAoKSkNCiAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAg ICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoR1RJTSwgVElNUCkNCiAg ICAgICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoR1NUTSwgU1RNUCkN CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoR1VETSwgVURN UCkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoR1VEVCwg VURUUCkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoR0NC MCwgUENCMCkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAo R0ZCMCwgRlBCMCkNCiAgICAgICAgICAgICAgICAgICAgICAgIH0NCg0KICAg ICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKEdURiAoMHgwMCwgQXJnMSks IEFUQTApDQogICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoR1RGICgw eDAxLCBBcmcyKSwgQVRBMSkNCiAgICAgICAgICAgICAgICAgICAgfQ0KDQog ICAgICAgICAgICAgICAgICAgIERldmljZSAoRFJWMCkNCiAgICAgICAgICAg ICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgTmFtZSAoX0FE UiwgMHgwMCkNCiAgICAgICAgICAgICAgICAgICAgICAgIE1ldGhvZCAoX0dU RiwgMCwgTm90U2VyaWFsaXplZCkNCiAgICAgICAgICAgICAgICAgICAgICAg IHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBSZXR1cm4gKFJBVEEg KEFUQTApKQ0KICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAg ICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAgICAgRGV2aWNlIChE UlYxKQ0KICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAg ICAgICAgICBOYW1lIChfQURSLCAweDAxKQ0KICAgICAgICAgICAgICAgICAg ICAgICAgTWV0aG9kIChfR1RGLCAwLCBOb3RTZXJpYWxpemVkKQ0KICAgICAg ICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAg ICAgIFJldHVybiAoUkFUQSAoQVRBMSkpDQogICAgICAgICAgICAgICAgICAg ICAgICB9DQogICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAg ICB9DQoNCiAgICAgICAgICAgICAgICBEZXZpY2UgKENITjEpDQogICAgICAg ICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICBOYW1lIChfQURSLCAw eDAxKQ0KICAgICAgICAgICAgICAgICAgICBNZXRob2QgKF9HVE0sIDAsIE5v dFNlcmlhbGl6ZWQpDQogICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAg ICAgICAgICAgICAgICAgIFJldHVybiAoR1RNIChUSU1TLCBTVE1TLCBVRE1T LCBVRFRTLCBTQ0IwLCBGU0IwKSkNCiAgICAgICAgICAgICAgICAgICAgfQ0K DQogICAgICAgICAgICAgICAgICAgIE1ldGhvZCAoX1NUTSwgMywgTm90U2Vy aWFsaXplZCkNCiAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAg ICAgICAgICAgICAgU3RvcmUgKEFyZzAsIERlYnVnKQ0KICAgICAgICAgICAg ICAgICAgICAgICAgU3RvcmUgKEFyZzAsIFRNRDApDQogICAgICAgICAgICAg ICAgICAgICAgICBTdG9yZSAoVElNUywgR1RJTSkNCiAgICAgICAgICAgICAg ICAgICAgICAgIFN0b3JlIChVRFRTLCBHVURUKQ0KICAgICAgICAgICAgICAg ICAgICAgICAgSWYgKFNUTSAoKSkNCiAgICAgICAgICAgICAgICAgICAgICAg IHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoR1RJTSwg VElNUykNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoR1NU TSwgU1RNUykNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAo R1VETSwgVURNUykNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdG9y ZSAoR1VEVCwgVURUUykNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBT dG9yZSAoR0NCMCwgU0NCMCkNCiAgICAgICAgICAgICAgICAgICAgICAgICAg ICBTdG9yZSAoR0ZCMCwgRlNCMCkNCiAgICAgICAgICAgICAgICAgICAgICAg IH0NCg0KICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKEdURiAoMHgw MCwgQXJnMSksIEFUQTIpDQogICAgICAgICAgICAgICAgICAgICAgICBTdG9y ZSAoR1RGICgweDAxLCBBcmcyKSwgQVRBMykNCiAgICAgICAgICAgICAgICAg ICAgfQ0KDQogICAgICAgICAgICAgICAgICAgIERldmljZSAoRFJWMCkNCiAg ICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAg TmFtZSAoX0FEUiwgMHgwMCkNCiAgICAgICAgICAgICAgICAgICAgICAgIE1l dGhvZCAoX0dURiwgMCwgTm90U2VyaWFsaXplZCkNCiAgICAgICAgICAgICAg ICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBSZXR1 cm4gKFJBVEEgKEFUQTIpKQ0KICAgICAgICAgICAgICAgICAgICAgICAgfQ0K ICAgICAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAgICAg RGV2aWNlIChEUlYxKQ0KICAgICAgICAgICAgICAgICAgICB7DQogICAgICAg ICAgICAgICAgICAgICAgICBOYW1lIChfQURSLCAweDAxKQ0KICAgICAgICAg ICAgICAgICAgICAgICAgTWV0aG9kIChfR1RGLCAwLCBOb3RTZXJpYWxpemVk KQ0KICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAg ICAgICAgICAgICAgIFJldHVybiAoUkFUQSAoQVRBMykpDQogICAgICAgICAg ICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgIH0NCiAgICAg ICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICBNZXRob2QgKEdUTSwg NiwgU2VyaWFsaXplZCkNCiAgICAgICAgICAgICAgICB7DQogICAgICAgICAg ICAgICAgICAgIFN0b3JlIChPbmVzLCBQSU8wKQ0KICAgICAgICAgICAgICAg ICAgICBTdG9yZSAoUElPMCwgUElPMSkNCiAgICAgICAgICAgICAgICAgICAg U3RvcmUgKFBJTzAsIERNQTApDQogICAgICAgICAgICAgICAgICAgIFN0b3Jl IChQSU8wLCBETUExKQ0KICAgICAgICAgICAgICAgICAgICBTdG9yZSAoWmVy bywgQ0hORikNCiAgICAgICAgICAgICAgICAgICAgSWYgKFJFR0YpIHt9DQog ICAgICAgICAgICAgICAgICAgIEVsc2UNCiAgICAgICAgICAgICAgICAgICAg ew0KICAgICAgICAgICAgICAgICAgICAgICAgUmV0dXJuIChUTUQwKQ0KICAg ICAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAgICAgSWYg KEFuZCAoQXJnMCwgMHgwMikpDQogICAgICAgICAgICAgICAgICAgIHsNCiAg ICAgICAgICAgICAgICAgICAgICAgIE9yIChDSE5GLCAweDAyLCBDSE5GKQ0K ICAgICAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAgICAg U2hpZnRSaWdodCAoQW5kIChBcmcwLCAweDMzMDApLCAweDA4LCBMb2NhbDUp DQogICAgICAgICAgICAgICAgICAgIFN0b3JlIChNYXRjaCAoRGVyZWZPZiAo SW5kZXggKFRJTTAsIDB4MDEpKSwgTUxFLCBMb2NhbDUsIE1UUiwgMHgwMCwg MHgwMCksIExvY2FsNikNCiAgICAgICAgICAgICAgICAgICAgU3RvcmUgKERl cmVmT2YgKEluZGV4IChEZXJlZk9mIChJbmRleCAoVElNMCwgMHgwMCkpLCBM b2NhbDYpKSwgTG9jYWw3KQ0KICAgICAgICAgICAgICAgICAgICBTdG9yZSAo TG9jYWw3LCBETUEwKQ0KICAgICAgICAgICAgICAgICAgICBJZiAoQW5kIChB cmcwLCAweDA4KSkNCiAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAg ICAgICAgICAgICAgICAgU3RvcmUgKDB4MDM4NCwgUElPMCkNCiAgICAgICAg ICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICBFbHNlDQogICAg ICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgIFN0 b3JlIChMb2NhbDcsIFBJTzApDQogICAgICAgICAgICAgICAgICAgIH0NCg0K ICAgICAgICAgICAgICAgICAgICBJZiAoQW5kIChBcmcwLCAweDIwKSkNCiAg ICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAg T3IgKENITkYsIDB4MDgsIENITkYpDQogICAgICAgICAgICAgICAgICAgIH0N Cg0KICAgICAgICAgICAgICAgICAgICBJZiAoQW5kIChBcmcwLCAweDQwMDAp KQ0KICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAg ICAgICBPciAoQ0hORiwgMHgxMCwgQ0hORikNCiAgICAgICAgICAgICAgICAg ICAgICAgIFN0b3JlIChNYXRjaCAoRGVyZWZPZiAoSW5kZXggKFRJTTAsIDB4 MDIpKSwgTUxFLCBBcmcxLCBNVFIsIDB4MDAsIDB4MDApLCBMb2NhbDUpDQog ICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoRGVyZWZPZiAoSW5kZXgg KERlcmVmT2YgKEluZGV4IChUSU0wLCAweDAwKSksIExvY2FsNSkpLCBMb2Nh bDYpDQogICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoTG9jYWw2LCBE TUExKQ0KICAgICAgICAgICAgICAgICAgICAgICAgSWYgKEFuZCAoQXJnMCwg MHg4MCkpDQogICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAg ICAgICAgICAgICAgICAgICAgU3RvcmUgKDB4MDM4NCwgUElPMSkNCiAgICAg ICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAgICAgICAg IEVsc2UNCiAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAg ICAgICAgICAgICAgICAgICBTdG9yZSAoTG9jYWw2LCBQSU8xKQ0KICAgICAg ICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICB9DQoN CiAgICAgICAgICAgICAgICAgICAgSWYgKEFuZCAoQXJnMiwgMHgwMSkpDQog ICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAg IEFuZCAoQXJnMywgMHgwMywgTG9jYWw1KQ0KICAgICAgICAgICAgICAgICAg ICAgICAgSWYgKExBbmQgKEFuZCAoQXJnNSwgMHgwMSksIExFcXVhbCAoTG9j YWw1LCAweDAxKSkpDQogICAgICAgICAgICAgICAgICAgICAgICB7DQogICAg ICAgICAgICAgICAgICAgICAgICAgICAgQWRkIChMb2NhbDUsIDB4MDQsIExv Y2FsNSkNCiAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAg ICAgICAgICAgICAgIEVsc2UNCiAgICAgICAgICAgICAgICAgICAgICAgIHsN CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBJZiAoQW5kIChBcmc0LCAw eDAxKSkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIEFkZCAoTG9jYWw1LCAweDAyLCBM b2NhbDUpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAg ICAgICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgICAgICAg ICBTdG9yZSAoRGVyZWZPZiAoSW5kZXggKERlcmVmT2YgKEluZGV4IChUSU0w LCAweDAzKSksIExvY2FsNSkpLCBETUEwKQ0KICAgICAgICAgICAgICAgICAg ICAgICAgT3IgKENITkYsIDB4MDEsIENITkYpDQogICAgICAgICAgICAgICAg ICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICBJZiAoQW5kIChBcmcyLCAw eDAyKSkNCiAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAg ICAgICAgICAgQW5kIChTaGlmdFJpZ2h0IChBcmczLCAweDA0KSwgMHgwMywg TG9jYWw1KQ0KICAgICAgICAgICAgICAgICAgICAgICAgSWYgKExBbmQgKEFu ZCAoQXJnNSwgMHgwMiksIExFcXVhbCAoTG9jYWw1LCAweDAxKSkpDQogICAg ICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAg ICAgICAgQWRkIChMb2NhbDUsIDB4MDQsIExvY2FsNSkNCiAgICAgICAgICAg ICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAgICAgICAgIEVsc2UN CiAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAg ICAgICAgICAgICBJZiAoQW5kIChBcmc0LCAweDAyKSkNCiAgICAgICAgICAg ICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIEFkZCAoTG9jYWw1LCAweDAyLCBMb2NhbDUpDQogICAgICAgICAg ICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICAgICAg fQ0KDQogICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoRGVyZWZPZiAo SW5kZXggKERlcmVmT2YgKEluZGV4IChUSU0wLCAweDAzKSksIExvY2FsNSkp LCBETUExKQ0KICAgICAgICAgICAgICAgICAgICAgICAgT3IgKENITkYsIDB4 MDQsIENITkYpDQogICAgICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAg ICAgICAgICAgICBTdG9yZSAoVE1EMCwgRGVidWcpDQogICAgICAgICAgICAg ICAgICAgIFJldHVybiAoVE1EMCkNCiAgICAgICAgICAgICAgICB9DQoNCiAg ICAgICAgICAgICAgICBNZXRob2QgKFNUTSwgMCwgU2VyaWFsaXplZCkNCiAg ICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgIElmIChSRUdG KSB7fQ0KICAgICAgICAgICAgICAgICAgICBFbHNlDQogICAgICAgICAgICAg ICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgIFJldHVybiAoMHgw MCkNCiAgICAgICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAg ICAgIEFuZCAoR1RJTSwgMHg4MDQ0LCBHVElNKQ0KICAgICAgICAgICAgICAg ICAgICBTdG9yZSAoMHgwMCwgR1NUTSkNCiAgICAgICAgICAgICAgICAgICAg U3RvcmUgKDB4MDAsIEdVRE0pDQogICAgICAgICAgICAgICAgICAgIFN0b3Jl ICgweDAwLCBHQ0IwKQ0KICAgICAgICAgICAgICAgICAgICBBbmQgKEdVRFQs IDB4Q0MsIEdVRFQpDQogICAgICAgICAgICAgICAgICAgIFN0b3JlICgweDAw LCBHRkIwKQ0KICAgICAgICAgICAgICAgICAgICBJZiAoQW5kIChDSE5GLCAw eDAxKSkNCiAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAg ICAgICAgICAgU3RvcmUgKE1hdGNoIChEZXJlZk9mIChJbmRleCAoVElNMCwg MHgwMykpLCBNTEUsIERNQTAsIE1UUiwgMHgwMCwgMHgwMCksIExvY2FsMCkN CiAgICAgICAgICAgICAgICAgICAgICAgIElmIChMR3JlYXRlciAoTG9jYWww LCAweDA1KSkNCiAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAg ICAgICAgICAgICAgICAgICAgICBTdG9yZSAoMHgwNSwgTG9jYWwwKQ0KICAg ICAgICAgICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgICAg ICAgICBPciAoR1VEVCwgRGVyZWZPZiAoSW5kZXggKERlcmVmT2YgKEluZGV4 IChUSU0wLCAweDA0KSksIExvY2FsMCkpLCBHVURUKQ0KICAgICAgICAgICAg ICAgICAgICAgICAgT3IgKEdDQjAsIERlcmVmT2YgKEluZGV4IChEZXJlZk9m IChJbmRleCAoVElNMCwgMHgwNSkpLCBMb2NhbDApKSwgR0NCMCkNCiAgICAg ICAgICAgICAgICAgICAgICAgIE9yIChHRkIwLCBEZXJlZk9mIChJbmRleCAo RGVyZWZPZiAoSW5kZXggKFRJTTAsIDB4MDYpKSwgTG9jYWwwKSksIEdGQjAp DQogICAgICAgICAgICAgICAgICAgICAgICBPciAoR1VETSwgMHgwMSwgR1VE TSkNCiAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAg ICBFbHNlDQogICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAg ICAgICAgICAgIElmIChPciAoTEVxdWFsIChQSU8wLCBPbmVzKSwgTEVxdWFs IChQSU8wLCAweDAwKSkpDQogICAgICAgICAgICAgICAgICAgICAgICB7DQog ICAgICAgICAgICAgICAgICAgICAgICAgICAgSWYgKEFuZCAoTExlc3MgKERN QTAsIE9uZXMpLCBMR3JlYXRlciAoRE1BMCwgMHgwMCkpKQ0KICAgICAgICAg ICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgU3RvcmUgKERNQTAsIFBJTzApDQogICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIE9yIChHVElNLCAweDA4LCBHVElNKQ0KICAgICAg ICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAgICAg ICAgIH0NCiAgICAgICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAg ICAgICAgIElmIChBbmQgKENITkYsIDB4MDQpKQ0KICAgICAgICAgICAgICAg ICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoTWF0Y2gg KERlcmVmT2YgKEluZGV4IChUSU0wLCAweDAzKSksIE1MRSwgRE1BMSwgTVRS LCAweDAwLCAweDAwKSwgTG9jYWwwKQ0KICAgICAgICAgICAgICAgICAgICAg ICAgSWYgKExHcmVhdGVyIChMb2NhbDAsIDB4MDUpKQ0KICAgICAgICAgICAg ICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN0 b3JlICgweDA1LCBMb2NhbDApDQogICAgICAgICAgICAgICAgICAgICAgICB9 DQoNCiAgICAgICAgICAgICAgICAgICAgICAgIE9yIChHVURULCBTaGlmdExl ZnQgKERlcmVmT2YgKEluZGV4IChEZXJlZk9mIChJbmRleCAoVElNMCwgMHgw NCkpLCBMb2NhbDApKSwgMHgwNCksIEdVRFQpDQogICAgICAgICAgICAgICAg ICAgICAgICBPciAoR0NCMCwgU2hpZnRMZWZ0IChEZXJlZk9mIChJbmRleCAo RGVyZWZPZiAoSW5kZXggKFRJTTAsIDB4MDUpKSwgTG9jYWwwKSksIDB4MDEp LCBHQ0IwKQ0KICAgICAgICAgICAgICAgICAgICAgICAgT3IgKEdGQjAsIFNo aWZ0TGVmdCAoRGVyZWZPZiAoSW5kZXggKERlcmVmT2YgKEluZGV4IChUSU0w LCAweDA2KSksIExvY2FsMCkpLCAweDAxKSwgR0ZCMCkNCiAgICAgICAgICAg ICAgICAgICAgICAgIE9yIChHVURNLCAweDAyLCBHVURNKQ0KICAgICAgICAg ICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgIEVsc2UNCiAgICAg ICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgSWYg KE9yIChMRXF1YWwgKFBJTzEsIE9uZXMpLCBMRXF1YWwgKFBJTzEsIDB4MDAp KSkNCiAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAg ICAgICAgICAgICAgICBJZiAoQW5kIChMTGVzcyAoRE1BMSwgT25lcyksIExH cmVhdGVyIChETUExLCAweDAwKSkpDQogICAgICAgICAgICAgICAgICAgICAg ICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdG9y ZSAoRE1BMSwgUElPMSkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgT3IgKEdUSU0sIDB4ODAsIEdUSU0pDQogICAgICAgICAgICAgICAgICAg ICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAg ICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAgICAgSWYgKEFu ZCAoQ0hORiwgMHgwMikpDQogICAgICAgICAgICAgICAgICAgIHsNCiAgICAg ICAgICAgICAgICAgICAgICAgIE9yIChHVElNLCAweDAzLCBHVElNKQ0KICAg ICAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAgICAgSWYg KEFuZCAoQ0hORiwgMHgwOCkpDQogICAgICAgICAgICAgICAgICAgIHsNCiAg ICAgICAgICAgICAgICAgICAgICAgIE9yIChHVElNLCAweDMwLCBHVElNKQ0K ICAgICAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAgICAg QW5kIChNYXRjaCAoRGVyZWZPZiAoSW5kZXggKFRJTTAsIDB4MDApKSwgTUdF LCBQSU8wLCBNVFIsIDB4MDAsIDB4MDApLCAweDAzLCBMb2NhbDApDQogICAg ICAgICAgICAgICAgICAgIFN0b3JlIChEZXJlZk9mIChJbmRleCAoRGVyZWZP ZiAoSW5kZXggKFRJTTAsIDB4MDEpKSwgTG9jYWwwKSksIExvY2FsMSkNCiAg ICAgICAgICAgICAgICAgICAgU2hpZnRMZWZ0IChMb2NhbDEsIDB4MDgsIExv Y2FsMikNCiAgICAgICAgICAgICAgICAgICAgT3IgKEdUSU0sIExvY2FsMiwg R1RJTSkNCiAgICAgICAgICAgICAgICAgICAgSWYgKEFuZCAoQ0hORiwgMHgx MCkpDQogICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAg ICAgICAgIE9yIChHVElNLCAweDQwMDAsIEdUSU0pDQogICAgICAgICAgICAg ICAgICAgICAgICBBbmQgKE1hdGNoIChEZXJlZk9mIChJbmRleCAoVElNMCwg MHgwMCkpLCBNR0UsIFBJTzEsIE1UUiwgMHgwMCwgMHgwMCksIDB4MDMsIExv Y2FsMCkNCiAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlIChEZXJlZk9m IChJbmRleCAoRGVyZWZPZiAoSW5kZXggKFRJTTAsIDB4MDIpKSwgTG9jYWww KSksIEdTVE0pDQogICAgICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAg ICAgICAgICAgICBSZXR1cm4gKDB4MDEpDQogICAgICAgICAgICAgICAgfQ0K DQogICAgICAgICAgICAgICAgTmFtZSAoQVQwMSwgQnVmZmVyICgweDA3KQ0K ICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgMHgwMywg MHgwMCwgMHgwMCwgMHgwMCwgMHgwMCwgMHgwMCwgMHhFRg0KICAgICAgICAg ICAgICAgIH0pDQogICAgICAgICAgICAgICAgTmFtZSAoQVQwMiwgQnVmZmVy ICgweDA3KQ0KICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAg ICAgMHgwMCwgMHgwMCwgMHgwMCwgMHgwMCwgMHgwMCwgMHgwMCwgMHg5MA0K ICAgICAgICAgICAgICAgIH0pDQogICAgICAgICAgICAgICAgTmFtZSAoQVQw MywgQnVmZmVyICgweDA3KQ0KICAgICAgICAgICAgICAgIHsNCiAgICAgICAg ICAgICAgICAgICAgMHgwMCwgMHgwMCwgMHgwMCwgMHgwMCwgMHgwMCwgMHgw MCwgMHhDNg0KICAgICAgICAgICAgICAgIH0pDQogICAgICAgICAgICAgICAg TmFtZSAoQVQwNCwgQnVmZmVyICgweDA3KQ0KICAgICAgICAgICAgICAgIHsN CiAgICAgICAgICAgICAgICAgICAgMHgwMCwgMHgwMCwgMHgwMCwgMHgwMCwg MHgwMCwgMHgwMCwgMHg5MQ0KICAgICAgICAgICAgICAgIH0pDQogICAgICAg ICAgICAgICAgTmFtZSAoQVRBMCwgQnVmZmVyICgweDFEKSB7fSkNCiAgICAg ICAgICAgICAgICBOYW1lIChBVEExLCBCdWZmZXIgKDB4MUQpIHt9KQ0KICAg ICAgICAgICAgICAgIE5hbWUgKEFUQTIsIEJ1ZmZlciAoMHgxRCkge30pDQog ICAgICAgICAgICAgICAgTmFtZSAoQVRBMywgQnVmZmVyICgweDFEKSB7fSkN CiAgICAgICAgICAgICAgICBOYW1lIChBVEFCLCBCdWZmZXIgKDB4MUQpIHt9 KQ0KICAgICAgICAgICAgICAgIENyZWF0ZUJ5dGVGaWVsZCAoQVRBQiwgMHgw MCwgQ01EQykNCiAgICAgICAgICAgICAgICBNZXRob2QgKEdURkIsIDMsIFNl cmlhbGl6ZWQpDQogICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAg ICAgICBNdWx0aXBseSAoQ01EQywgMHgzOCwgTG9jYWwwKQ0KICAgICAgICAg ICAgICAgICAgICBBZGQgKExvY2FsMCwgMHgwOCwgTG9jYWwxKQ0KICAgICAg ICAgICAgICAgICAgICBDcmVhdGVGaWVsZCAoQVRBQiwgTG9jYWwxLCAweDM4 LCBDTURYKQ0KICAgICAgICAgICAgICAgICAgICBNdWx0aXBseSAoQ01EQywg MHgwNywgTG9jYWwwKQ0KICAgICAgICAgICAgICAgICAgICBDcmVhdGVCeXRl RmllbGQgKEFUQUIsIEFkZCAoTG9jYWwwLCAweDAyKSwgQTAwMSkNCiAgICAg ICAgICAgICAgICAgICAgQ3JlYXRlQnl0ZUZpZWxkIChBVEFCLCBBZGQgKExv Y2FsMCwgMHgwNiksIEEwMDUpDQogICAgICAgICAgICAgICAgICAgIFN0b3Jl IChBcmcwLCBDTURYKQ0KICAgICAgICAgICAgICAgICAgICBTdG9yZSAoQXJn MSwgQTAwMSkNCiAgICAgICAgICAgICAgICAgICAgU3RvcmUgKEFyZzIsIEEw MDUpDQogICAgICAgICAgICAgICAgICAgIEluY3JlbWVudCAoQ01EQykNCiAg ICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICBNZXRob2QgKEdU RiwgMiwgU2VyaWFsaXplZCkNCiAgICAgICAgICAgICAgICB7DQogICAgICAg ICAgICAgICAgICAgIFN0b3JlIChBcmcxLCBEZWJ1ZykNCiAgICAgICAgICAg ICAgICAgICAgU3RvcmUgKDB4MDAsIENNREMpDQogICAgICAgICAgICAgICAg ICAgIE5hbWUgKElENDksIDB4MEMwMCkNCiAgICAgICAgICAgICAgICAgICAg TmFtZSAoSUQ1OSwgMHgwMCkNCiAgICAgICAgICAgICAgICAgICAgTmFtZSAo SUQ1MywgMHgwNCkNCiAgICAgICAgICAgICAgICAgICAgTmFtZSAoSUQ2Mywg MHgwRjAwKQ0KICAgICAgICAgICAgICAgICAgICBOYW1lIChJRDg4LCAweDBG MDApDQogICAgICAgICAgICAgICAgICAgIE5hbWUgKElSRFksIDB4MDEpDQog ICAgICAgICAgICAgICAgICAgIE5hbWUgKFBJT1QsIDB4MDApDQogICAgICAg ICAgICAgICAgICAgIE5hbWUgKERNQVQsIDB4MDApDQogICAgICAgICAgICAg ICAgICAgIElmIChMRXF1YWwgKFNpemVPZiAoQXJnMSksIDB4MDIwMCkpDQog ICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAg IENyZWF0ZVdvcmRGaWVsZCAoQXJnMSwgMHg2MiwgSVc0OSkNCiAgICAgICAg ICAgICAgICAgICAgICAgIFN0b3JlIChJVzQ5LCBJRDQ5KQ0KICAgICAgICAg ICAgICAgICAgICAgICAgQ3JlYXRlV29yZEZpZWxkIChBcmcxLCAweDZBLCBJ VzUzKQ0KICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKElXNTMsIElE NTMpDQogICAgICAgICAgICAgICAgICAgICAgICBDcmVhdGVXb3JkRmllbGQg KEFyZzEsIDB4N0UsIElXNjMpDQogICAgICAgICAgICAgICAgICAgICAgICBT dG9yZSAoSVc2MywgSUQ2MykNCiAgICAgICAgICAgICAgICAgICAgICAgIENy ZWF0ZVdvcmRGaWVsZCAoQXJnMSwgMHg3NiwgSVc1OSkNCiAgICAgICAgICAg ICAgICAgICAgICAgIFN0b3JlIChJVzU5LCBJRDU5KQ0KICAgICAgICAgICAg ICAgICAgICAgICAgQ3JlYXRlV29yZEZpZWxkIChBcmcxLCAweEIwLCBJVzg4 KQ0KICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKElXODgsIElEODgp DQogICAgICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgICAg ICBTdG9yZSAoMHhBMCwgTG9jYWw3KQ0KICAgICAgICAgICAgICAgICAgICBJ ZiAoQXJnMCkNCiAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAg ICAgICAgICAgICAgU3RvcmUgKDB4QjAsIExvY2FsNykNCiAgICAgICAgICAg ICAgICAgICAgICAgIEFuZCAoQ0hORiwgMHgwOCwgSVJEWSkNCiAgICAgICAg ICAgICAgICAgICAgICAgIElmIChBbmQgKENITkYsIDB4MTApKQ0KICAgICAg ICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAg ICAgIFN0b3JlIChQSU8xLCBQSU9UKQ0KICAgICAgICAgICAgICAgICAgICAg ICAgfQ0KICAgICAgICAgICAgICAgICAgICAgICAgRWxzZQ0KICAgICAgICAg ICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAg IFN0b3JlIChQSU8wLCBQSU9UKQ0KICAgICAgICAgICAgICAgICAgICAgICAg fQ0KDQogICAgICAgICAgICAgICAgICAgICAgICBJZiAoQW5kIChDSE5GLCAw eDA0KSkNCiAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAg ICAgICAgICAgICAgICAgICBJZiAoQW5kIChDSE5GLCAweDEwKSkNCiAgICAg ICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIFN0b3JlIChETUExLCBETUFUKQ0KICAgICAgICAgICAg ICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAgICAgICAgICAg ICBFbHNlDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoRE1BMCwgRE1BVCkN CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAg ICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAg ICAgICAgICAgICAgRWxzZQ0KICAgICAgICAgICAgICAgICAgICB7DQogICAg ICAgICAgICAgICAgICAgICAgICBBbmQgKENITkYsIDB4MDIsIElSRFkpDQog ICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoUElPMCwgUElPVCkNCiAg ICAgICAgICAgICAgICAgICAgICAgIElmIChBbmQgKENITkYsIDB4MDEpKQ0K ICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAg ICAgICAgICAgIFN0b3JlIChETUEwLCBETUFUKQ0KICAgICAgICAgICAgICAg ICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAg ICAgICAgICAgICAgSWYgKExBbmQgKExBbmQgKEFuZCAoSUQ1MywgMHgwNCks IEFuZCAoSUQ4OCwgMHhGRjAwKSksIERNQVQpKQ0KICAgICAgICAgICAgICAg ICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoTWF0Y2gg KERlcmVmT2YgKEluZGV4IChUSU0wLCAweDAzKSksIE1MRSwgRE1BVCwgTVRS LCAweDAwLCAweDAwKSwgTG9jYWwxKQ0KICAgICAgICAgICAgICAgICAgICAg ICAgSWYgKExHcmVhdGVyIChMb2NhbDEsIDB4MDUpKQ0KICAgICAgICAgICAg ICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN0 b3JlICgweDA1LCBMb2NhbDEpDQogICAgICAgICAgICAgICAgICAgICAgICB9 DQoNCiAgICAgICAgICAgICAgICAgICAgICAgIEdURkIgKEFUMDEsIE9yICgw eDQwLCBMb2NhbDEpLCBMb2NhbDcpDQogICAgICAgICAgICAgICAgICAgIH0N CiAgICAgICAgICAgICAgICAgICAgRWxzZQ0KICAgICAgICAgICAgICAgICAg ICB7DQogICAgICAgICAgICAgICAgICAgICAgICBJZiAoTEFuZCAoQW5kIChJ RDYzLCAweEZGMDApLCBQSU9UKSkNCiAgICAgICAgICAgICAgICAgICAgICAg IHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBBbmQgKE1hdGNoIChE ZXJlZk9mIChJbmRleCAoVElNMCwgMHgwMCkpLCBNR0UsIFBJT1QsIE1UUiwg MHgwMCwgMHgwMCksIDB4MDMsIExvY2FsMCkNCiAgICAgICAgICAgICAgICAg ICAgICAgICAgICBPciAoMHgyMCwgRGVyZWZPZiAoSW5kZXggKERlcmVmT2Yg KEluZGV4IChUSU0wLCAweDA4KSksIExvY2FsMCkpLCBMb2NhbDEpDQogICAg ICAgICAgICAgICAgICAgICAgICAgICAgR1RGQiAoQVQwMSwgTG9jYWwxLCBM b2NhbDcpDQogICAgICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAg ICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICBJZiAoSVJEWSkN CiAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAg ICAgQW5kIChNYXRjaCAoRGVyZWZPZiAoSW5kZXggKFRJTTAsIDB4MDApKSwg TUdFLCBQSU9ULCBNVFIsIDB4MDAsIDB4MDApLCAweDAzLCBMb2NhbDApDQog ICAgICAgICAgICAgICAgICAgICAgICBPciAoMHgwOCwgRGVyZWZPZiAoSW5k ZXggKERlcmVmT2YgKEluZGV4IChUSU0wLCAweDA3KSksIExvY2FsMCkpLCBM b2NhbDEpDQogICAgICAgICAgICAgICAgICAgICAgICBHVEZCIChBVDAxLCBM b2NhbDEsIExvY2FsNykNCiAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAg ICAgICAgICAgICAgICBFbHNlDQogICAgICAgICAgICAgICAgICAgIHsNCiAg ICAgICAgICAgICAgICAgICAgICAgIElmIChBbmQgKElENDksIDB4MDQwMCkp DQogICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAg ICAgICAgICAgICAgR1RGQiAoQVQwMSwgMHgwMSwgTG9jYWw3KQ0KICAgICAg ICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICB9DQoN CiAgICAgICAgICAgICAgICAgICAgSWYgKExBbmQgKEFuZCAoSUQ1OSwgMHgw MTAwKSwgQW5kIChJRDU5LCAweEZGKSkpDQogICAgICAgICAgICAgICAgICAg IHsNCiAgICAgICAgICAgICAgICAgICAgICAgIEdURkIgKEFUMDMsIEFuZCAo SUQ1OSwgMHhGRiksIExvY2FsNykNCiAgICAgICAgICAgICAgICAgICAgfQ0K DQogICAgICAgICAgICAgICAgICAgIFN0b3JlIChBVEFCLCBEZWJ1ZykNCiAg ICAgICAgICAgICAgICAgICAgUmV0dXJuIChBVEFCKQ0KICAgICAgICAgICAg ICAgIH0NCg0KICAgICAgICAgICAgICAgIE1ldGhvZCAoUkFUQSwgMSwgTm90 U2VyaWFsaXplZCkNCiAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAg ICAgICAgIENyZWF0ZUJ5dGVGaWVsZCAoQXJnMCwgMHgwMCwgQ01ETikNCiAg ICAgICAgICAgICAgICAgICAgTXVsdGlwbHkgKENNRE4sIDB4MzgsIExvY2Fs MCkNCiAgICAgICAgICAgICAgICAgICAgQ3JlYXRlRmllbGQgKEFyZzAsIDB4 MDgsIExvY2FsMCwgUkVUQikNCiAgICAgICAgICAgICAgICAgICAgU3RvcmUg KFJFVEIsIERlYnVnKQ0KICAgICAgICAgICAgICAgICAgICBSZXR1cm4gKFJF VEIpDQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgfQ0KDQogICAg ICAgICAgICBEZXZpY2UgKFAwUDIpDQogICAgICAgICAgICB7DQogICAgICAg ICAgICAgICAgTmFtZSAoX0FEUiwgMHgwMDFFMDAwMCkNCiAgICAgICAgICAg ICAgICBNZXRob2QgKF9QUlcsIDAsIE5vdFNlcmlhbGl6ZWQpDQogICAgICAg ICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICBSZXR1cm4gKEdQUlcg KDB4MEIsIDB4MDMpKQ0KICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAg ICAgICAgIE1ldGhvZCAoX1BSVCwgMCwgTm90U2VyaWFsaXplZCkNCiAgICAg ICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgIFJldHVybiAoUFIw MikNCiAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICBEZXZp Y2UgKENCQzEpDQogICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAg ICAgICBOYW1lIChfQURSLCAweDAwMDEwMDAxKQ0KICAgICAgICAgICAgICAg ICAgICBOYW1lIChfUFJXLCBQYWNrYWdlICgweDAyKQ0KICAgICAgICAgICAg ICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAweDBCLCANCiAg ICAgICAgICAgICAgICAgICAgICAgIDB4MDMNCiAgICAgICAgICAgICAgICAg ICAgfSkNCiAgICAgICAgICAgICAgICAgICAgT3BlcmF0aW9uUmVnaW9uIChQ TUVTLCBQQ0lfQ29uZmlnLCAweEUwLCAweDAyKQ0KICAgICAgICAgICAgICAg ICAgICBGaWVsZCAoUE1FUywgQnl0ZUFjYywgTm9Mb2NrLCBQcmVzZXJ2ZSkN CiAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAg ICAgUkUwLCAgICA4LCANCiAgICAgICAgICAgICAgICAgICAgICAgIFJFMSwg ICAgOA0KICAgICAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAg ICAgICAgTWV0aG9kIChfU1RBLCAwLCBOb3RTZXJpYWxpemVkKQ0KICAgICAg ICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICBSZXR1 cm4gKDB4MEYpDQogICAgICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAg ICAgICAgICAgICBNZXRob2QgKF9JTkksIDAsIE5vdFNlcmlhbGl6ZWQpDQog ICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgfQ0K DQogICAgICAgICAgICAgICAgICAgIE1ldGhvZCAoX1MzRCwgMCwgTm90U2Vy aWFsaXplZCkNCiAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAg ICAgICAgICAgICAgUmV0dXJuICgweDAzKQ0KICAgICAgICAgICAgICAgICAg ICB9DQoNCiAgICAgICAgICAgICAgICAgICAgTWV0aG9kIChDRVYxLCAwLCBO b3RTZXJpYWxpemVkKQ0KICAgICAgICAgICAgICAgICAgICB7DQogICAgICAg ICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAg ICAgICAgICBEZXZpY2UgKElMTkspDQogICAgICAgICAgICAgICAgew0KICAg ICAgICAgICAgICAgICAgICBOYW1lIChfQURSLCAweDAwMDEwMDAyKQ0KICAg ICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgIERldmljZSAoTEFO KQ0KICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgTmFt ZSAoX0FEUiwgMHgwMCkNCiAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAg ICAgICAgICBEZXZpY2UgKE1QQzApDQogICAgICAgICAgICAgICAgew0KICAg ICAgICAgICAgICAgICAgICBOYW1lIChfQURSLCAweDAwMDIwMDAwKQ0KICAg ICAgICAgICAgICAgICAgICBPcGVyYXRpb25SZWdpb24gKE1JTlAsIFBDSV9D b25maWcsIDB4MDAsIDB4NjgpDQogICAgICAgICAgICAgICAgICAgIEZpZWxk IChNSU5QLCBCeXRlQWNjLCBOb0xvY2ssIFByZXNlcnZlKQ0KICAgICAgICAg ICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICBWTlVNLCAg IDMyLCANCiAgICAgICAgICAgICAgICAgICAgICAgIE9mZnNldCAoMHgyQyks IA0KICAgICAgICAgICAgICAgICAgICAgICAgU05VTSwgICAzMiwgDQogICAg ICAgICAgICAgICAgICAgICAgICBPZmZzZXQgKDB4MzQpDQogICAgICAgICAg ICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICBNZXRob2QgKE1Q RFAsIDAsIE5vdFNlcmlhbGl6ZWQpDQogICAgICAgICAgICAgICAgICAgIHsN CiAgICAgICAgICAgICAgICAgICAgICAgIElmIChMRXF1YWwgKFNOVU0sIDB4 MDQ2MjE2NjgpKQ0KICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAg ICAgICAgICAgICAgICAgICAgICAgIFJldHVybiAoMHgwMSkNCiAgICAgICAg ICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICAgICAg SWYgKExFcXVhbCAoU05VTSwgMHgyNTIyODA4NikpDQogICAgICAgICAgICAg ICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgUmV0 dXJuICgweDAyKQ0KICAgICAgICAgICAgICAgICAgICAgICAgfQ0KDQogICAg ICAgICAgICAgICAgICAgICAgICBJZiAoTEVxdWFsIChTTlVNLCAweDI1Mjc4 MDg2KSkNCiAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAg ICAgICAgICAgICAgICAgICBSZXR1cm4gKDB4MDIpDQogICAgICAgICAgICAg ICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAgICAgICAgIElmIChM RXF1YWwgKFNOVU0sIDB4MTAyMDEwNDMpKQ0KICAgICAgICAgICAgICAgICAg ICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJldHVybiAo MHgwNCkNCiAgICAgICAgICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAg ICAgICAgICAgICAgICAgSWYgKExFcXVhbCAoU05VTSwgMHgxMjBGMTA0Mykp DQogICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAg ICAgICAgICAgICAgUmV0dXJuICgweDA0KQ0KICAgICAgICAgICAgICAgICAg ICAgICAgfQ0KDQogICAgICAgICAgICAgICAgICAgICAgICBJZiAoTEVxdWFs IChTTlVNLCAweDI1MTA4MDg2KSkNCiAgICAgICAgICAgICAgICAgICAgICAg IHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBSZXR1cm4gKDB4MDgp DQogICAgICAgICAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAg ICAgICAgICAgIElmIChMTm90IChMRXF1YWwgKFZOVU0sIDB4RkZGRikpKQ0K ICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAg ICAgICAgICAgIFJldHVybiAoMHgwMikNCiAgICAgICAgICAgICAgICAgICAg ICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICAgICAgUmV0dXJuICgweDAw KQ0KICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgfQ0K ICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICBEZXZpY2UgKFAwUDEpDQog ICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgTmFtZSAoX0FEUiwgMHgw MDAxMDAwMCkNCiAgICAgICAgICAgICAgICBNZXRob2QgKF9QUlQsIDAsIE5v dFNlcmlhbGl6ZWQpDQogICAgICAgICAgICAgICAgew0KICAgICAgICAgICAg ICAgICAgICBSZXR1cm4gKFBSMDEpDQogICAgICAgICAgICAgICAgfQ0KDQog ICAgICAgICAgICAgICAgRGV2aWNlIChWR0EpDQogICAgICAgICAgICAgICAg ew0KICAgICAgICAgICAgICAgICAgICBOYW1lIChfQURSLCAweDAwKQ0KICAg ICAgICAgICAgICAgICAgICBNZXRob2QgKF9ET1MsIDEsIE5vdFNlcmlhbGl6 ZWQpDQogICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAg ICAgICAgIFN0b3JlIChBcmcwLCBTV0lUKQ0KICAgICAgICAgICAgICAgICAg ICB9DQoNCiAgICAgICAgICAgICAgICAgICAgTmFtZSAoX0RPRCwgUGFja2Fn ZSAoMHgwMykNCiAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAg ICAgICAgICAgICAgMHgwMDAxMDEwMCwgDQogICAgICAgICAgICAgICAgICAg ICAgICAweDAwMDEwMTEwLCANCiAgICAgICAgICAgICAgICAgICAgICAgIDB4 MDIwMA0KICAgICAgICAgICAgICAgICAgICB9KQ0KICAgICAgICAgICAgICAg ICAgICBEZXZpY2UgKENSVCkNCiAgICAgICAgICAgICAgICAgICAgew0KICAg ICAgICAgICAgICAgICAgICAgICAgTmFtZSAoX0FEUiwgMHgwMTAwKQ0KICAg ICAgICAgICAgICAgICAgICAgICAgTmFtZSAoX0RDUywgMHgxRikNCiAgICAg ICAgICAgICAgICAgICAgICAgIE5hbWUgKF9ER1MsIDB4MDApDQogICAgICAg ICAgICAgICAgICAgICAgICBNZXRob2QgKF9EU1MsIDEsIE5vdFNlcmlhbGl6 ZWQpDQogICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAg ICAgICAgICAgICAgICAgSWYgKExFcXVhbCAoQXJnMCwgMHgwMCkpDQogICAg ICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBTdG9yZSAoMHgxRCwgXF9TQi5QQ0kwLlAwUDEuVkdB LkNSVC5fRENTKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0NCg0K ICAgICAgICAgICAgICAgICAgICAgICAgICAgIElmIChMRXF1YWwgKEFyZzAs IDB4MDEpKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKDB4MUYsIFxfU0Iu UENJMC5QMFAxLlZHQS5DUlQuX0RDUykNCiAgICAgICAgICAgICAgICAgICAg ICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBJZiAo TEVxdWFsIChBcmcwLCAweDgwMDAwMDAwKSkNCiAgICAgICAgICAgICAgICAg ICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IFN0b3JlICgweDFELCBcX1NCLlBDSTAuUDBQMS5WR0EuQ1JULl9EQ1MpDQog ICAgICAgICAgICAgICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAg ICAgICAgICAgICAgICAgSWYgKExFcXVhbCAoQXJnMCwgMHg4MDAwMDAwMSkp DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBTdG9yZSAoMHgxRiwgXF9TQi5QQ0kwLlAw UDEuVkdBLkNSVC5fRENTKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAg IH0NCg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIElmIChMRXF1YWwg KEFyZzAsIDB4NDAwMDAwMDApKQ0KICAgICAgICAgICAgICAgICAgICAgICAg ICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgWE9yICgw eDAxLCBcX1NCLlBDSTAuUDBQMS5WR0EuQ1JULl9ER1MsIFxfU0IuUENJMC5Q MFAxLlZHQS5DUlQuX0RHUykNCiAgICAgICAgICAgICAgICAgICAgICAgICAg ICB9DQoNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBJZiAoTEVxdWFs IChBcmcwLCAweDQwMDAwMDAxKSkNCiAgICAgICAgICAgICAgICAgICAgICAg ICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFhPciAo MHgwMSwgXF9TQi5QQ0kwLlAwUDEuVkdBLkNSVC5fREdTLCBcX1NCLlBDSTAu UDBQMS5WR0EuQ1JULl9ER1MpDQogICAgICAgICAgICAgICAgICAgICAgICAg ICAgfQ0KDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgSWYgKExFcXVh bCAoQXJnMCwgMHhDMDAwMDAwMCkpDQogICAgICAgICAgICAgICAgICAgICAg ICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBYT3Ig KDB4MDEsIFxfU0IuUENJMC5QMFAxLlZHQS5DUlQuX0RHUywgXF9TQi5QQ0kw LlAwUDEuVkdBLkNSVC5fREdTKQ0KICAgICAgICAgICAgICAgICAgICAgICAg ICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIElmIChMRXF1 YWwgKEFyZzAsIDB4QzAwMDAwMDEpKQ0KICAgICAgICAgICAgICAgICAgICAg ICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgWE9y ICgweDAxLCBcX1NCLlBDSTAuUDBQMS5WR0EuQ1JULl9ER1MsIFxfU0IuUENJ MC5QMFAxLlZHQS5DUlQuX0RHUykNCiAgICAgICAgICAgICAgICAgICAgICAg ICAgICB9DQogICAgICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAg ICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICBEZXZpY2UgKFRW KQ0KICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAg ICAgICBOYW1lIChfQURSLCAweDAyMDApDQogICAgICAgICAgICAgICAgICAg ICAgICBOYW1lIChfRENTLCAweDFGKQ0KICAgICAgICAgICAgICAgICAgICAg ICAgTmFtZSAoX0RHUywgMHgwMCkNCiAgICAgICAgICAgICAgICAgICAgICAg IE1ldGhvZCAoX0RTUywgMSwgTm90U2VyaWFsaXplZCkNCiAgICAgICAgICAg ICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBJ ZiAoTEVxdWFsIChBcmcwLCAweDAwKSkNCiAgICAgICAgICAgICAgICAgICAg ICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN0 b3JlICgweDFELCBcX1NCLlBDSTAuUDBQMS5WR0EuVFYuX0RDUykNCiAgICAg ICAgICAgICAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAg ICAgICAgICAgICBJZiAoTEVxdWFsIChBcmcwLCAweDAxKSkNCiAgICAgICAg ICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIFN0b3JlICgweDFGLCBcX1NCLlBDSTAuUDBQMS5WR0EuVFYu X0RDUykNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9DQoNCiAgICAg ICAgICAgICAgICAgICAgICAgICAgICBJZiAoTEVxdWFsIChBcmcwLCAweDgw MDAwMDAwKSkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7DQogICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlICgweDFELCBcX1NC LlBDSTAuUDBQMS5WR0EuVFYuX0RDUykNCiAgICAgICAgICAgICAgICAgICAg ICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBJZiAo TEVxdWFsIChBcmcwLCAweDgwMDAwMDAxKSkNCiAgICAgICAgICAgICAgICAg ICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IFN0b3JlICgweDFGLCBcX1NCLlBDSTAuUDBQMS5WR0EuVFYuX0RDUykNCiAg ICAgICAgICAgICAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAg ICAgICAgICAgICAgICBJZiAoTEVxdWFsIChBcmcwLCAweDQwMDAwMDAwKSkN CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIFhPciAoMHgwMSwgXF9TQi5QQ0kwLlAwUDEu VkdBLlRWLl9ER1MsIFxfU0IuUENJMC5QMFAxLlZHQS5UVi5fREdTKQ0KICAg ICAgICAgICAgICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAg ICAgICAgICAgICAgIElmIChMRXF1YWwgKEFyZzAsIDB4NDAwMDAwMDEpKQ0K ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgWE9yICgweDAxLCBcX1NCLlBDSTAuUDBQMS5W R0EuVFYuX0RHUywgXF9TQi5QQ0kwLlAwUDEuVkdBLlRWLl9ER1MpDQogICAg ICAgICAgICAgICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAg ICAgICAgICAgICAgSWYgKExFcXVhbCAoQXJnMCwgMHhDMDAwMDAwMCkpDQog ICAgICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBYT3IgKDB4MDEsIFxfU0IuUENJMC5QMFAxLlZH QS5UVi5fREdTLCBcX1NCLlBDSTAuUDBQMS5WR0EuVFYuX0RHUykNCiAgICAg ICAgICAgICAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAg ICAgICAgICAgICBJZiAoTEVxdWFsIChBcmcwLCAweEMwMDAwMDAxKSkNCiAg ICAgICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIFhPciAoMHgwMSwgXF9TQi5QQ0kwLlAwUDEuVkdB LlRWLl9ER1MsIFxfU0IuUENJMC5QMFAxLlZHQS5UVi5fREdTKQ0KICAgICAg ICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAgICAg ICAgIH0NCiAgICAgICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAg ICAgICAgIERldmljZSAoTENEKQ0KICAgICAgICAgICAgICAgICAgICB7DQog ICAgICAgICAgICAgICAgICAgICAgICBOYW1lIChfQURSLCAweDAxMTApDQog ICAgICAgICAgICAgICAgICAgICAgICBOYW1lIChfRENTLCAweDFGKQ0KICAg ICAgICAgICAgICAgICAgICAgICAgTmFtZSAoX0RHUywgMHgwMCkNCiAgICAg ICAgICAgICAgICAgICAgICAgIE1ldGhvZCAoX0RTUywgMSwgTm90U2VyaWFs aXplZCkNCiAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAg ICAgICAgICAgICAgICAgICBJZiAoTEVxdWFsIChBcmcwLCAweDAwKSkNCiAg ICAgICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIFN0b3JlICgweDFELCBcX1NCLlBDSTAuUDBQMS5W R0EuTENELl9EQ1MpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgfQ0K DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgSWYgKExFcXVhbCAoQXJn MCwgMHgwMSkpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgew0KICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoMHgxRiwgXF9T Qi5QQ0kwLlAwUDEuVkdBLkxDRC5fRENTKQ0KICAgICAgICAgICAgICAgICAg ICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIElm IChMRXF1YWwgKEFyZzAsIDB4ODAwMDAwMDApKQ0KICAgICAgICAgICAgICAg ICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgU3RvcmUgKDB4MUQsIFxfU0IuUENJMC5QMFAxLlZHQS5MQ0QuX0RDUykN CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAg ICAgICAgICAgICAgICAgICBJZiAoTEVxdWFsIChBcmcwLCAweDgwMDAwMDAx KSkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIFN0b3JlICgweDFGLCBcX1NCLlBDSTAu UDBQMS5WR0EuTENELl9EQ1MpDQogICAgICAgICAgICAgICAgICAgICAgICAg ICAgfQ0KDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgSWYgKExFcXVh bCAoQXJnMCwgMHg0MDAwMDAwMCkpDQogICAgICAgICAgICAgICAgICAgICAg ICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBYT3Ig KDB4MDEsIFxfU0IuUENJMC5QMFAxLlZHQS5MQ0QuX0RHUywgXF9TQi5QQ0kw LlAwUDEuVkdBLkxDRC5fREdTKQ0KICAgICAgICAgICAgICAgICAgICAgICAg ICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIElmIChMRXF1 YWwgKEFyZzAsIDB4NDAwMDAwMDEpKQ0KICAgICAgICAgICAgICAgICAgICAg ICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgWE9y ICgweDAxLCBcX1NCLlBDSTAuUDBQMS5WR0EuTENELl9ER1MsIFxfU0IuUENJ MC5QMFAxLlZHQS5MQ0QuX0RHUykNCiAgICAgICAgICAgICAgICAgICAgICAg ICAgICB9DQoNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBJZiAoTEVx dWFsIChBcmcwLCAweEMwMDAwMDAwKSkNCiAgICAgICAgICAgICAgICAgICAg ICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFhP ciAoMHgwMSwgXF9TQi5QQ0kwLlAwUDEuVkdBLkxDRC5fREdTLCBcX1NCLlBD STAuUDBQMS5WR0EuTENELl9ER1MpDQogICAgICAgICAgICAgICAgICAgICAg ICAgICAgfQ0KDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgSWYgKExF cXVhbCAoQXJnMCwgMHhDMDAwMDAwMSkpDQogICAgICAgICAgICAgICAgICAg ICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBY T3IgKDB4MDEsIFxfU0IuUENJMC5QMFAxLlZHQS5MQ0QuX0RHUywgXF9TQi5Q Q0kwLlAwUDEuVkdBLkxDRC5fREdTKQ0KICAgICAgICAgICAgICAgICAgICAg ICAgICAgIH0NCiAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAg ICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgICAgIE5hbWUgKFNX SVQsIDB4MDEpDQogICAgICAgICAgICAgICAgICAgIE5hbWUgKEdEQ1MsIDB4 MDApDQogICAgICAgICAgICAgICAgICAgIE5hbWUgKEdER1MsIDB4MDEpDQog ICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgfQ0KDQogICAgICAgICAg ICBEZXZpY2UgKEFVREkpDQogICAgICAgICAgICB7DQogICAgICAgICAgICAg ICAgTmFtZSAoX0FEUiwgMHgwMDFGMDAwNSkNCiAgICAgICAgICAgIH0NCg0K ICAgICAgICAgICAgRGV2aWNlIChVU0IxKQ0KICAgICAgICAgICAgew0KICAg ICAgICAgICAgICAgIE5hbWUgKF9BRFIsIDB4MDAxRDAwMDApDQogICAgICAg ICAgICAgICAgT3BlcmF0aW9uUmVnaW9uIChCQVIwLCBQQ0lfQ29uZmlnLCAw eEMwLCAweDA1KQ0KICAgICAgICAgICAgICAgIEZpZWxkIChCQVIwLCBCeXRl QWNjLCBOb0xvY2ssIFByZXNlcnZlKQ0KICAgICAgICAgICAgICAgIHsNCiAg ICAgICAgICAgICAgICAgICAgVUJMMSwgICAxNiwgDQogICAgICAgICAgICAg ICAgICAgIE9mZnNldCAoMHgwNCksIA0KICAgICAgICAgICAgICAgICAgICBQ MFdFLCAgIDEsIA0KICAgICAgICAgICAgICAgICAgICBQMVdFLCAgIDEsIA0K ICAgICAgICAgICAgICAgICAgICBPZmZzZXQgKDB4MDUpDQogICAgICAgICAg ICAgICAgfQ0KDQogICAgICAgICAgICAgICAgTWV0aG9kIChfUFNXLCAxLCBO b3RTZXJpYWxpemVkKQ0KICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAg ICAgICAgICAgSWYgKEFyZzApDQogICAgICAgICAgICAgICAgICAgIHsNCiAg ICAgICAgICAgICAgICAgICAgICAgIFN0b3JlICgweDAxLCBQMFdFKQ0KICAg ICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKDB4MDEsIFAxV0UpDQogICAg ICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAgICAgRWxzZQ0K ICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAg ICBTdG9yZSAoMHgwMCwgUDBXRSkNCiAgICAgICAgICAgICAgICAgICAgICAg IFN0b3JlICgweDAwLCBQMVdFKQ0KICAgICAgICAgICAgICAgICAgICB9DQog ICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgTWV0aG9kIChf UFJXLCAwLCBOb3RTZXJpYWxpemVkKQ0KICAgICAgICAgICAgICAgIHsNCiAg ICAgICAgICAgICAgICAgICAgUmV0dXJuIChHUFJXICgweDAzLCAweDAzKSkN CiAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICB9DQoNCiAgICAgICAg ICAgIERldmljZSAoVVNCMikNCiAgICAgICAgICAgIHsNCiAgICAgICAgICAg ICAgICBOYW1lIChfQURSLCAweDAwMUQwMDAxKQ0KICAgICAgICAgICAgICAg IE9wZXJhdGlvblJlZ2lvbiAoQkFSMCwgUENJX0NvbmZpZywgMHhDMCwgMHgw NSkNCiAgICAgICAgICAgICAgICBGaWVsZCAoQkFSMCwgQnl0ZUFjYywgTm9M b2NrLCBQcmVzZXJ2ZSkNCiAgICAgICAgICAgICAgICB7DQogICAgICAgICAg ICAgICAgICAgIFVCTDEsICAgMTYsIA0KICAgICAgICAgICAgICAgICAgICBP ZmZzZXQgKDB4MDQpLCANCiAgICAgICAgICAgICAgICAgICAgUDBXRSwgICAx LCANCiAgICAgICAgICAgICAgICAgICAgUDFXRSwgICAxLCANCiAgICAgICAg ICAgICAgICAgICAgT2Zmc2V0ICgweDA1KQ0KICAgICAgICAgICAgICAgIH0N Cg0KICAgICAgICAgICAgICAgIE1ldGhvZCAoX1BTVywgMSwgTm90U2VyaWFs aXplZCkNCiAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAg IElmIChBcmcwKQ0KICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAg ICAgICAgICAgICAgICBTdG9yZSAoMHgwMSwgUDBXRSkNCiAgICAgICAgICAg ICAgICAgICAgICAgIFN0b3JlICgweDAxLCBQMVdFKQ0KICAgICAgICAgICAg ICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgIEVsc2UNCiAgICAgICAg ICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUg KDB4MDAsIFAwV0UpDQogICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAo MHgwMCwgUDFXRSkNCiAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAg ICAgICAgIH0NCg0KICAgICAgICAgICAgICAgIE1ldGhvZCAoX1BSVywgMCwg Tm90U2VyaWFsaXplZCkNCiAgICAgICAgICAgICAgICB7DQogICAgICAgICAg ICAgICAgICAgIFJldHVybiAoR1BSVyAoMHgwNCwgMHgwMykpDQogICAgICAg ICAgICAgICAgfQ0KICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICBEZXZp Y2UgKFVTQjMpDQogICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgTmFt ZSAoX0FEUiwgMHgwMDFEMDAwMikNCiAgICAgICAgICAgICAgICBPcGVyYXRp b25SZWdpb24gKEJBUjAsIFBDSV9Db25maWcsIDB4QzAsIDB4MDUpDQogICAg ICAgICAgICAgICAgRmllbGQgKEJBUjAsIEJ5dGVBY2MsIE5vTG9jaywgUHJl c2VydmUpDQogICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAg ICBVQkwxLCAgIDE2LCANCiAgICAgICAgICAgICAgICAgICAgT2Zmc2V0ICgw eDA0KSwgDQogICAgICAgICAgICAgICAgICAgIFAwV0UsICAgMSwgDQogICAg ICAgICAgICAgICAgICAgIFAxV0UsICAgMSwgDQogICAgICAgICAgICAgICAg ICAgIE9mZnNldCAoMHgwNSkNCiAgICAgICAgICAgICAgICB9DQoNCiAgICAg ICAgICAgICAgICBNZXRob2QgKF9QU1csIDEsIE5vdFNlcmlhbGl6ZWQpDQog ICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICBJZiAoQXJn MCkNCiAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAg ICAgICAgU3RvcmUgKDB4MDEsIFAwV0UpDQogICAgICAgICAgICAgICAgICAg ICAgICBTdG9yZSAoMHgwMSwgUDFXRSkNCiAgICAgICAgICAgICAgICAgICAg fQ0KICAgICAgICAgICAgICAgICAgICBFbHNlDQogICAgICAgICAgICAgICAg ICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlICgweDAwLCBQ MFdFKQ0KICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKDB4MDAsIFAx V0UpDQogICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICB9 DQoNCiAgICAgICAgICAgICAgICBNZXRob2QgKF9QUlcsIDAsIE5vdFNlcmlh bGl6ZWQpDQogICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAg ICBSZXR1cm4gKEdQUlcgKDB4MEMsIDB4MDMpKQ0KICAgICAgICAgICAgICAg IH0NCiAgICAgICAgICAgIH0NCiAgICAgICAgfQ0KDQogICAgICAgIFNjb3Bl IChcX0dQRSkNCiAgICAgICAgew0KICAgICAgICAgICAgTWV0aG9kIChfTDA3 LCAwLCBOb3RTZXJpYWxpemVkKQ0KICAgICAgICAgICAgew0KICAgICAgICAg ICAgICAgIE5vdGlmeSAoXF9TQi5QQ0kwLlNNQlMsIDB4MDIpDQogICAgICAg ICAgICAgICAgTm90aWZ5IChcX1NCLlBXUkIsIDB4MDIpDQogICAgICAgICAg ICB9DQoNCiAgICAgICAgICAgIE1ldGhvZCAoX0wwNSwgMCwgTm90U2VyaWFs aXplZCkNCiAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICBOb3RpZnkg KFxfU0IuUENJMC5NT0RNLCAweDAyKQ0KICAgICAgICAgICAgICAgIE5vdGlm eSAoXF9TQi5QV1JCLCAweDAyKQ0KICAgICAgICAgICAgfQ0KDQogICAgICAg ICAgICBNZXRob2QgKF9MMEIsIDAsIE5vdFNlcmlhbGl6ZWQpDQogICAgICAg ICAgICB7DQogICAgICAgICAgICAgICAgTm90aWZ5IChcX1NCLlBDSTAuUDBQ MiwgMHgwMikNCiAgICAgICAgICAgICAgICBOb3RpZnkgKFxfU0IuUFdSQiwg MHgwMikNCiAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgTWV0aG9kIChf TDAzLCAwLCBOb3RTZXJpYWxpemVkKQ0KICAgICAgICAgICAgew0KICAgICAg ICAgICAgICAgIE5vdGlmeSAoXF9TQi5QQ0kwLlVTQjEsIDB4MDIpDQogICAg ICAgICAgICAgICAgTm90aWZ5IChcX1NCLlBXUkIsIDB4MDIpDQogICAgICAg ICAgICB9DQoNCiAgICAgICAgICAgIE1ldGhvZCAoX0wwNCwgMCwgTm90U2Vy aWFsaXplZCkNCiAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICBOb3Rp ZnkgKFxfU0IuUENJMC5VU0IyLCAweDAyKQ0KICAgICAgICAgICAgICAgIE5v dGlmeSAoXF9TQi5QV1JCLCAweDAyKQ0KICAgICAgICAgICAgfQ0KDQogICAg ICAgICAgICBNZXRob2QgKF9MMEMsIDAsIE5vdFNlcmlhbGl6ZWQpDQogICAg ICAgICAgICB7DQogICAgICAgICAgICAgICAgTm90aWZ5IChcX1NCLlBDSTAu VVNCMywgMHgwMikNCiAgICAgICAgICAgICAgICBOb3RpZnkgKFxfU0IuUFdS QiwgMHgwMikNCiAgICAgICAgICAgIH0NCiAgICAgICAgfQ0KDQogICAgICAg IERldmljZSAoUFdSQikNCiAgICAgICAgew0KICAgICAgICAgICAgTmFtZSAo X0hJRCwgRWlzYUlkICgiUE5QMEMwQyIpKQ0KICAgICAgICAgICAgTmFtZSAo X1VJRCwgMHhBQSkNCiAgICAgICAgICAgIE5hbWUgKF9TVEEsIDB4MEIpDQog ICAgICAgIH0NCiAgICB9DQoNCiAgICBTY29wZSAoXF9QUikNCiAgICB7DQog ICAgICAgIFByb2Nlc3NvciAoQ1BVMSwgMHgwMSwgMHgwMDAwMDQxMCwgMHgw NykNCiAgICAgICAgew0KICAgICAgICAgICAgTWV0aG9kIChfQ1NULCAwLCBO b3RTZXJpYWxpemVkKQ0KICAgICAgICAgICAgew0KICAgICAgICAgICAgICAg IE5hbWUgKEFDU1QsIFBhY2thZ2UgKDB4MDMpDQogICAgICAgICAgICAgICAg ew0KICAgICAgICAgICAgICAgICAgICAweDAyLCANCiAgICAgICAgICAgICAg ICAgICAgUGFja2FnZSAoMHgwNCkNCiAgICAgICAgICAgICAgICAgICAgew0K ICAgICAgICAgICAgICAgICAgICAgICAgUmVzb3VyY2VUZW1wbGF0ZSAoKQ0K ICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAg ICAgICAgICAgIFJlZ2lzdGVyIChTeXN0ZW1JTywgMHgwOCwgMHgwMCwgMHgw MDAwMDAwMDAwMDAwNUZGKQ0KICAgICAgICAgICAgICAgICAgICAgICAgfSwg DQoNCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDIsIA0KICAgICAgICAg ICAgICAgICAgICAgICAgMHgwMSwgDQogICAgICAgICAgICAgICAgICAgICAg ICAweDAzRTgNCiAgICAgICAgICAgICAgICAgICAgfSwgDQoNCiAgICAgICAg ICAgICAgICAgICAgUGFja2FnZSAoMHgwNCkNCiAgICAgICAgICAgICAgICAg ICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgUmVzb3VyY2VUZW1wbGF0 ZSAoKQ0KICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAg ICAgICAgICAgICAgICAgIFJlZ2lzdGVyIChTeXN0ZW1JTywgMHgwOCwgMHgw MCwgMHgwMDAwMDAwMDAwMDAwNDE1KQ0KICAgICAgICAgICAgICAgICAgICAg ICAgfSwgDQoNCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDMsIA0KICAg ICAgICAgICAgICAgICAgICAgICAgMHgwMSwgDQogICAgICAgICAgICAgICAg ICAgICAgICAweDAxRjQNCiAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAg ICAgICAgICAgIH0pDQogICAgICAgICAgICAgICAgQWRkIChcUE1CUywgMHgx NCwgTG9jYWwwKQ0KICAgICAgICAgICAgICAgIFN0b3JlIChMb2NhbDAsIElu ZGV4IChEZXJlZk9mIChJbmRleCAoRGVyZWZPZiAoSW5kZXggKEFDU1QsIDB4 MDEpKSwgMHgwMCkpLCAweDA3KSkNCiAgICAgICAgICAgICAgICBTdG9yZSAo U2hpZnRSaWdodCAoTG9jYWwwLCAweDA4KSwgSW5kZXggKERlcmVmT2YgKElu ZGV4IChEZXJlZk9mIChJbmRleCAoQUNTVCwgMHgwMSkpLCAweDAwKSksIDB4 MDgpKQ0KICAgICAgICAgICAgICAgIEFkZCAoXFBNQlMsIDB4MTUsIExvY2Fs MCkNCiAgICAgICAgICAgICAgICBTdG9yZSAoTG9jYWwwLCBJbmRleCAoRGVy ZWZPZiAoSW5kZXggKERlcmVmT2YgKEluZGV4IChBQ1NULCAweDAyKSksIDB4 MDApKSwgMHgwNykpDQogICAgICAgICAgICAgICAgU3RvcmUgKFNoaWZ0Umln aHQgKExvY2FsMCwgMHgwOCksIEluZGV4IChEZXJlZk9mIChJbmRleCAoRGVy ZWZPZiAoSW5kZXggKEFDU1QsIDB4MDIpKSwgMHgwMCkpLCAweDA4KSkNCiAg ICAgICAgICAgICAgICBOYW1lIChCQ1NULCBQYWNrYWdlICgweDA0KQ0KICAg ICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgMHgwMywgDQog ICAgICAgICAgICAgICAgICAgIFBhY2thZ2UgKDB4MDQpDQogICAgICAgICAg ICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgIFJlc291cmNl VGVtcGxhdGUgKCkNCiAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAg ICAgICAgICAgICAgICAgICAgICAgICBSZWdpc3RlciAoU3lzdGVtSU8sIDB4 MDgsIDB4MDAsIDB4MDAwMDAwMDAwMDAwMDVGRikNCiAgICAgICAgICAgICAg ICAgICAgICAgIH0sIA0KDQogICAgICAgICAgICAgICAgICAgICAgICAweDAy LCANCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDEsIA0KICAgICAgICAg ICAgICAgICAgICAgICAgMHgwM0U4DQogICAgICAgICAgICAgICAgICAgIH0s IA0KDQogICAgICAgICAgICAgICAgICAgIFBhY2thZ2UgKDB4MDQpDQogICAg ICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgIFJl c291cmNlVGVtcGxhdGUgKCkNCiAgICAgICAgICAgICAgICAgICAgICAgIHsN CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBSZWdpc3RlciAoU3lzdGVt SU8sIDB4MDgsIDB4MDAsIDB4MDAwMDAwMDAwMDAwMDQxNSkNCiAgICAgICAg ICAgICAgICAgICAgICAgIH0sIA0KDQogICAgICAgICAgICAgICAgICAgICAg ICAweDAzLCANCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDEsIA0KICAg ICAgICAgICAgICAgICAgICAgICAgMHgwMUY0DQogICAgICAgICAgICAgICAg ICAgIH0sIA0KDQogICAgICAgICAgICAgICAgICAgIFBhY2thZ2UgKDB4MDQp DQogICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAg ICAgIFJlc291cmNlVGVtcGxhdGUgKCkNCiAgICAgICAgICAgICAgICAgICAg ICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBSZWdpc3RlciAo U3lzdGVtSU8sIDB4MDgsIDB4MDAsIDB4MDAwMDAwMDAwMDAwMDQxNikNCiAg ICAgICAgICAgICAgICAgICAgICAgIH0sIA0KDQogICAgICAgICAgICAgICAg ICAgICAgICAweDA0LCANCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDIs IA0KICAgICAgICAgICAgICAgICAgICAgICAgMHhGQQ0KICAgICAgICAgICAg ICAgICAgICB9DQogICAgICAgICAgICAgICAgfSkNCiAgICAgICAgICAgICAg ICBBZGQgKFxQTUJTLCAweDE0LCBMb2NhbDApDQogICAgICAgICAgICAgICAg U3RvcmUgKExvY2FsMCwgSW5kZXggKERlcmVmT2YgKEluZGV4IChEZXJlZk9m IChJbmRleCAoQkNTVCwgMHgwMSkpLCAweDAwKSksIDB4MDcpKQ0KICAgICAg ICAgICAgICAgIFN0b3JlIChTaGlmdFJpZ2h0IChMb2NhbDAsIDB4MDgpLCBJ bmRleCAoRGVyZWZPZiAoSW5kZXggKERlcmVmT2YgKEluZGV4IChCQ1NULCAw eDAxKSksIDB4MDApKSwgMHgwOCkpDQogICAgICAgICAgICAgICAgQWRkIChc UE1CUywgMHgxNSwgTG9jYWwwKQ0KICAgICAgICAgICAgICAgIFN0b3JlIChM b2NhbDAsIEluZGV4IChEZXJlZk9mIChJbmRleCAoRGVyZWZPZiAoSW5kZXgg KEJDU1QsIDB4MDIpKSwgMHgwMCkpLCAweDA3KSkNCiAgICAgICAgICAgICAg ICBTdG9yZSAoU2hpZnRSaWdodCAoTG9jYWwwLCAweDA4KSwgSW5kZXggKERl cmVmT2YgKEluZGV4IChEZXJlZk9mIChJbmRleCAoQkNTVCwgMHgwMikpLCAw eDAwKSksIDB4MDgpKQ0KICAgICAgICAgICAgICAgIEFkZCAoXFBNQlMsIDB4 MTYsIExvY2FsMCkNCiAgICAgICAgICAgICAgICBTdG9yZSAoTG9jYWwwLCBJ bmRleCAoRGVyZWZPZiAoSW5kZXggKERlcmVmT2YgKEluZGV4IChCQ1NULCAw eDAzKSksIDB4MDApKSwgMHgwNykpDQogICAgICAgICAgICAgICAgU3RvcmUg KFNoaWZ0UmlnaHQgKExvY2FsMCwgMHgwOCksIEluZGV4IChEZXJlZk9mIChJ bmRleCAoRGVyZWZPZiAoSW5kZXggKEJDU1QsIDB4MDEpKSwgMHgwMCkpLCAw eDA4KSkNCiAgICAgICAgICAgICAgICBOYW1lIChOT0MzLCBQYWNrYWdlICgw eDAyKQ0KICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAg MHgwMSwgDQogICAgICAgICAgICAgICAgICAgIFBhY2thZ2UgKDB4MDQpDQog ICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAg IFJlc291cmNlVGVtcGxhdGUgKCkNCiAgICAgICAgICAgICAgICAgICAgICAg IHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBSZWdpc3RlciAoU3lz dGVtSU8sIDB4MDgsIDB4MDAsIDB4MDAwMDAwMDAwMDAwMDVGRikNCiAgICAg ICAgICAgICAgICAgICAgICAgIH0sIA0KDQogICAgICAgICAgICAgICAgICAg ICAgICAweDAyLCANCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDEsIA0K ICAgICAgICAgICAgICAgICAgICAgICAgMHgwM0U4DQogICAgICAgICAgICAg ICAgICAgIH0NCiAgICAgICAgICAgICAgICB9KQ0KICAgICAgICAgICAgICAg IEFkZCAoXFBNQlMsIDB4MTQsIExvY2FsMCkNCiAgICAgICAgICAgICAgICBT dG9yZSAoTG9jYWwwLCBJbmRleCAoRGVyZWZPZiAoSW5kZXggKERlcmVmT2Yg KEluZGV4IChOT0MzLCAweDAxKSksIDB4MDApKSwgMHgwNykpDQogICAgICAg ICAgICAgICAgU3RvcmUgKFNoaWZ0UmlnaHQgKExvY2FsMCwgMHgwOCksIElu ZGV4IChEZXJlZk9mIChJbmRleCAoRGVyZWZPZiAoSW5kZXggKE5PQzMsIDB4 MDEpKSwgMHgwMCkpLCAweDA4KSkNCiAgICAgICAgICAgICAgICBJZiAoXF9T Qi5JTlY3KQ0KICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAg ICAgUmV0dXJuIChOT0MzKQ0KICAgICAgICAgICAgICAgIH0NCg0KICAgICAg ICAgICAgICAgIElmIChcX1NCLkJBVE8pDQogICAgICAgICAgICAgICAgew0K ICAgICAgICAgICAgICAgICAgICBSZXR1cm4gKEJDU1QpDQogICAgICAgICAg ICAgICAgfQ0KICAgICAgICAgICAgICAgIEVsc2UNCiAgICAgICAgICAgICAg ICB7DQogICAgICAgICAgICAgICAgICAgIFJldHVybiAoQUNTVCkNCiAgICAg ICAgICAgICAgICB9DQogICAgICAgICAgICB9DQoNCiAgICAgICAgICAgIE5h bWUgKEFQQ1QsIFBhY2thZ2UgKDB4MDIpDQogICAgICAgICAgICB7DQogICAg ICAgICAgICAgICAgUmVzb3VyY2VUZW1wbGF0ZSAoKQ0KICAgICAgICAgICAg ICAgIHsNCiAgICAgICAgICAgICAgICAgICAgUmVnaXN0ZXIgKEZGaXhlZEhX LCAweDQwLCAweDAwLCAweDAwMDAwMDAwMDAwMDAxOTkpDQogICAgICAgICAg ICAgICAgfSwgDQoNCiAgICAgICAgICAgICAgICBSZXNvdXJjZVRlbXBsYXRl ICgpDQogICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICBS ZWdpc3RlciAoRkZpeGVkSFcsIDB4MTAsIDB4MDAsIDB4MDAwMDAwMDAwMDAw MDE5OCkNCiAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICB9KQ0KICAg ICAgICAgICAgTmFtZSAoTlBTUywgMHgwMCkNCiAgICAgICAgICAgIE5hbWUg KEFQU1MsIFBhY2thZ2UgKDB4MEEpDQogICAgICAgICAgICB7DQogICAgICAg ICAgICAgICAgUGFja2FnZSAoMHgwNikNCiAgICAgICAgICAgICAgICB7DQog ICAgICAgICAgICAgICAgICAgIDB4MDNFOCwgDQogICAgICAgICAgICAgICAg ICAgIDB4M0E5OCwgDQogICAgICAgICAgICAgICAgICAgIDB4MDI1MCwgDQog ICAgICAgICAgICAgICAgICAgIDB4MDIwMCwgDQogICAgICAgICAgICAgICAg ICAgIDB4MDE4NiwgDQogICAgICAgICAgICAgICAgICAgIDB4RkZGRg0KICAg ICAgICAgICAgICAgIH0sIA0KDQogICAgICAgICAgICAgICAgUGFja2FnZSAo MHgwNikNCiAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAg IDB4MDNFOCwgDQogICAgICAgICAgICAgICAgICAgIDB4M0E5OCwgDQogICAg ICAgICAgICAgICAgICAgIDB4MDI1MCwgDQogICAgICAgICAgICAgICAgICAg IDB4MDIwMCwgDQogICAgICAgICAgICAgICAgICAgIDB4MDE4NiwgDQogICAg ICAgICAgICAgICAgICAgIDB4RkZGRg0KICAgICAgICAgICAgICAgIH0sIA0K DQogICAgICAgICAgICAgICAgUGFja2FnZSAoMHgwNikNCiAgICAgICAgICAg ICAgICB7DQogICAgICAgICAgICAgICAgICAgIDB4MDNFOCwgDQogICAgICAg ICAgICAgICAgICAgIDB4M0E5OCwgDQogICAgICAgICAgICAgICAgICAgIDB4 MDI1MCwgDQogICAgICAgICAgICAgICAgICAgIDB4MDIwMCwgDQogICAgICAg ICAgICAgICAgICAgIDB4MDE4NiwgDQogICAgICAgICAgICAgICAgICAgIDB4 RkZGRg0KICAgICAgICAgICAgICAgIH0sIA0KDQogICAgICAgICAgICAgICAg UGFja2FnZSAoMHgwNikNCiAgICAgICAgICAgICAgICB7DQogICAgICAgICAg ICAgICAgICAgIDB4MDNFOCwgDQogICAgICAgICAgICAgICAgICAgIDB4M0E5 OCwgDQogICAgICAgICAgICAgICAgICAgIDB4MDI1MCwgDQogICAgICAgICAg ICAgICAgICAgIDB4MDIwMCwgDQogICAgICAgICAgICAgICAgICAgIDB4MDE4 NiwgDQogICAgICAgICAgICAgICAgICAgIDB4RkZGRg0KICAgICAgICAgICAg ICAgIH0sIA0KDQogICAgICAgICAgICAgICAgUGFja2FnZSAoMHgwNikNCiAg ICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgIDB4MDNFOCwg DQogICAgICAgICAgICAgICAgICAgIDB4M0E5OCwgDQogICAgICAgICAgICAg ICAgICAgIDB4MDI1MCwgDQogICAgICAgICAgICAgICAgICAgIDB4MDIwMCwg DQogICAgICAgICAgICAgICAgICAgIDB4MDE4NiwgDQogICAgICAgICAgICAg ICAgICAgIDB4RkZGRg0KICAgICAgICAgICAgICAgIH0sIA0KDQogICAgICAg ICAgICAgICAgUGFja2FnZSAoMHgwNikNCiAgICAgICAgICAgICAgICB7DQog ICAgICAgICAgICAgICAgICAgIDB4MDNFOCwgDQogICAgICAgICAgICAgICAg ICAgIDB4M0E5OCwgDQogICAgICAgICAgICAgICAgICAgIDB4MDI1MCwgDQog ICAgICAgICAgICAgICAgICAgIDB4MDIwMCwgDQogICAgICAgICAgICAgICAg ICAgIDB4MDE4NiwgDQogICAgICAgICAgICAgICAgICAgIDB4RkZGRg0KICAg ICAgICAgICAgICAgIH0sIA0KDQogICAgICAgICAgICAgICAgUGFja2FnZSAo MHgwNikNCiAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAg IDB4MDNFOCwgDQogICAgICAgICAgICAgICAgICAgIDB4M0E5OCwgDQogICAg ICAgICAgICAgICAgICAgIDB4MDI1MCwgDQogICAgICAgICAgICAgICAgICAg IDB4MDIwMCwgDQogICAgICAgICAgICAgICAgICAgIDB4MDE4NiwgDQogICAg ICAgICAgICAgICAgICAgIDB4RkZGRg0KICAgICAgICAgICAgICAgIH0sIA0K DQogICAgICAgICAgICAgICAgUGFja2FnZSAoMHgwNikNCiAgICAgICAgICAg ICAgICB7DQogICAgICAgICAgICAgICAgICAgIDB4MDNFOCwgDQogICAgICAg ICAgICAgICAgICAgIDB4M0E5OCwgDQogICAgICAgICAgICAgICAgICAgIDB4 MDI1MCwgDQogICAgICAgICAgICAgICAgICAgIDB4MDIwMCwgDQogICAgICAg ICAgICAgICAgICAgIDB4MDE4NiwgDQogICAgICAgICAgICAgICAgICAgIDB4 RkZGRg0KICAgICAgICAgICAgICAgIH0sIA0KDQogICAgICAgICAgICAgICAg UGFja2FnZSAoMHgwNikNCiAgICAgICAgICAgICAgICB7DQogICAgICAgICAg ICAgICAgICAgIDB4MDMyMCwgDQogICAgICAgICAgICAgICAgICAgIDB4MzBE NCwgDQogICAgICAgICAgICAgICAgICAgIDB4MDI1MCwgDQogICAgICAgICAg ICAgICAgICAgIDB4MDIwMCwgDQogICAgICAgICAgICAgICAgICAgIDB4MDI4 NiwgDQogICAgICAgICAgICAgICAgICAgIDB4RkZGRg0KICAgICAgICAgICAg ICAgIH0sIA0KDQogICAgICAgICAgICAgICAgUGFja2FnZSAoMHgwNikNCiAg ICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgIDB4MDMyMCwg DQogICAgICAgICAgICAgICAgICAgIDB4MzBENCwgDQogICAgICAgICAgICAg ICAgICAgIDB4MDI1MCwgDQogICAgICAgICAgICAgICAgICAgIDB4MDIwMCwg DQogICAgICAgICAgICAgICAgICAgIDB4MDI4NiwgDQogICAgICAgICAgICAg ICAgICAgIDB4RkZGRg0KICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAg IH0pDQogICAgICAgICAgICBNZXRob2QgKEFQUEMsIDAsIE5vdFNlcmlhbGl6 ZWQpDQogICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgSWYgKExOb3Qg KExHcmVhdGVyIChTaXplT2YgKF9QU1MpLCBOUFNTKSkpDQogICAgICAgICAg ICAgICAgew0KICAgICAgICAgICAgICAgICAgICBSZXR1cm4gKDB4MDApDQog ICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgIEVsc2UNCiAgICAg ICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgIFJldHVybiAoU3Vi dHJhY3QgKFNpemVPZiAoX1BTUyksIE5QU1MpKQ0KICAgICAgICAgICAgICAg IH0NCiAgICAgICAgICAgIH0NCiAgICAgICAgfQ0KICAgIH0NCg0KICAgIFNj b3BlIChcX1NCKQ0KICAgIHsNCiAgICAgICAgT3BlcmF0aW9uUmVnaW9uIChc X1NCLlBDSTAuU0JSRy5JUk9SLCBQQ0lfQ29uZmlnLCAweDAwLCAweEZGKQ0K ICAgICAgICBGaWVsZCAoXF9TQi5QQ0kwLlNCUkcuSVJPUiwgQnl0ZUFjYywg Tm9Mb2NrLCBQcmVzZXJ2ZSkNCiAgICAgICAgew0KICAgICAgICAgICAgT2Zm c2V0ICgweDYwKSwgDQogICAgICAgICAgICBQSVJBLCAgIDgsIA0KICAgICAg ICAgICAgUElSQiwgICA4LCANCiAgICAgICAgICAgIFBJUkMsICAgOCwgDQog ICAgICAgICAgICBQSVJELCAgIDgsIA0KICAgICAgICAgICAgT2Zmc2V0ICgw eDY4KSwgDQogICAgICAgICAgICBQSVJFLCAgIDgsIA0KICAgICAgICAgICAg UElSRiwgICA4LCANCiAgICAgICAgICAgIFBJUkcsICAgOCwgDQogICAgICAg ICAgICBQSVJILCAgIDgNCiAgICAgICAgfQ0KDQogICAgICAgIE5hbWUgKEJV RkEsIFJlc291cmNlVGVtcGxhdGUgKCkNCiAgICAgICAgew0KICAgICAgICAg ICAgSVJRIChMZXZlbCwgQWN0aXZlTG93LCBTaGFyZWQpIHsxNX0NCiAgICAg ICAgfSkNCiAgICAgICAgQ3JlYXRlV29yZEZpZWxkIChCVUZBLCAweDAxLCBJ Q1JTKQ0KICAgICAgICBNZXRob2QgKExTVEEsIDEsIE5vdFNlcmlhbGl6ZWQp DQogICAgICAgIHsNCiAgICAgICAgICAgIEFuZCAoQXJnMCwgMHg4MCwgTG9j YWwwKQ0KICAgICAgICAgICAgSWYgKExvY2FsMCkNCiAgICAgICAgICAgIHsN CiAgICAgICAgICAgICAgICBSZXR1cm4gKDB4MDkpDQogICAgICAgICAgICB9 DQogICAgICAgICAgICBFbHNlDQogICAgICAgICAgICB7DQogICAgICAgICAg ICAgICAgUmV0dXJuICgweDBCKQ0KICAgICAgICAgICAgfQ0KICAgICAgICB9 DQoNCiAgICAgICAgTWV0aG9kIChMQ1JTLCAxLCBOb3RTZXJpYWxpemVkKQ0K ICAgICAgICB7DQogICAgICAgICAgICBBbmQgKEFyZzAsIDB4MEYsIExvY2Fs MCkNCiAgICAgICAgICAgIFNoaWZ0TGVmdCAoMHgwMSwgTG9jYWwwLCBJQ1JT KQ0KICAgICAgICAgICAgUmV0dXJuIChCVUZBKQ0KICAgICAgICB9DQoNCiAg ICAgICAgTWV0aG9kIChMU1JTLCAxLCBOb3RTZXJpYWxpemVkKQ0KICAgICAg ICB7DQogICAgICAgICAgICBDcmVhdGVXb3JkRmllbGQgKEFyZzAsIDB4MDEs IElTUlMpDQogICAgICAgICAgICBGaW5kU2V0UmlnaHRCaXQgKElTUlMsIExv Y2FsMCkNCiAgICAgICAgICAgIFJldHVybiAoRGVjcmVtZW50IChMb2NhbDAp KQ0KICAgICAgICB9DQoNCiAgICAgICAgTWV0aG9kIChMRElTLCAxLCBOb3RT ZXJpYWxpemVkKQ0KICAgICAgICB7DQogICAgICAgICAgICBSZXR1cm4gKE9y IChBcmcwLCAweDgwKSkNCiAgICAgICAgfQ0KDQogICAgICAgIERldmljZSAo TE5LQSkNCiAgICAgICAgew0KICAgICAgICAgICAgTmFtZSAoX0hJRCwgRWlz YUlkICgiUE5QMEMwRiIpKQ0KICAgICAgICAgICAgTmFtZSAoX1VJRCwgMHgw MSkNCiAgICAgICAgICAgIE1ldGhvZCAoX1NUQSwgMCwgTm90U2VyaWFsaXpl ZCkNCiAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICBSZXR1cm4gKExT VEEgKFBJUkEpKQ0KICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICBNZXRo b2QgKF9QUlMsIDAsIE5vdFNlcmlhbGl6ZWQpDQogICAgICAgICAgICB7DQog ICAgICAgICAgICAgICAgUmV0dXJuIChQUlNBKQ0KICAgICAgICAgICAgfQ0K DQogICAgICAgICAgICBNZXRob2QgKF9ESVMsIDAsIE5vdFNlcmlhbGl6ZWQp DQogICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgU3RvcmUgKExESVMg KFBJUkEpLCBQSVJBKQ0KICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICBN ZXRob2QgKF9DUlMsIDAsIE5vdFNlcmlhbGl6ZWQpDQogICAgICAgICAgICB7 DQogICAgICAgICAgICAgICAgUmV0dXJuIChMQ1JTIChQSVJBKSkNCiAgICAg ICAgICAgIH0NCg0KICAgICAgICAgICAgTWV0aG9kIChfU1JTLCAxLCBOb3RT ZXJpYWxpemVkKQ0KICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgIFN0 b3JlIChMU1JTIChBcmcwKSwgUElSQSkNCiAgICAgICAgICAgIH0NCiAgICAg ICAgfQ0KDQogICAgICAgIERldmljZSAoTE5LQikNCiAgICAgICAgew0KICAg ICAgICAgICAgTmFtZSAoX0hJRCwgRWlzYUlkICgiUE5QMEMwRiIpKQ0KICAg ICAgICAgICAgTmFtZSAoX1VJRCwgMHgwMikNCiAgICAgICAgICAgIE1ldGhv ZCAoX1NUQSwgMCwgTm90U2VyaWFsaXplZCkNCiAgICAgICAgICAgIHsNCiAg ICAgICAgICAgICAgICBSZXR1cm4gKExTVEEgKFBJUkIpKQ0KICAgICAgICAg ICAgfQ0KDQogICAgICAgICAgICBNZXRob2QgKF9QUlMsIDAsIE5vdFNlcmlh bGl6ZWQpDQogICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgUmV0dXJu IChQUlNCKQ0KICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICBNZXRob2Qg KF9ESVMsIDAsIE5vdFNlcmlhbGl6ZWQpDQogICAgICAgICAgICB7DQogICAg ICAgICAgICAgICAgU3RvcmUgKExESVMgKFBJUkIpLCBQSVJCKQ0KICAgICAg ICAgICAgfQ0KDQogICAgICAgICAgICBNZXRob2QgKF9DUlMsIDAsIE5vdFNl cmlhbGl6ZWQpDQogICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgUmV0 dXJuIChMQ1JTIChQSVJCKSkNCiAgICAgICAgICAgIH0NCg0KICAgICAgICAg ICAgTWV0aG9kIChfU1JTLCAxLCBOb3RTZXJpYWxpemVkKQ0KICAgICAgICAg ICAgew0KICAgICAgICAgICAgICAgIFN0b3JlIChMU1JTIChBcmcwKSwgUElS QikNCiAgICAgICAgICAgIH0NCiAgICAgICAgfQ0KDQogICAgICAgIERldmlj ZSAoTE5LQykNCiAgICAgICAgew0KICAgICAgICAgICAgTmFtZSAoX0hJRCwg RWlzYUlkICgiUE5QMEMwRiIpKQ0KICAgICAgICAgICAgTmFtZSAoX1VJRCwg MHgwMykNCiAgICAgICAgICAgIE1ldGhvZCAoX1NUQSwgMCwgTm90U2VyaWFs aXplZCkNCiAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICBSZXR1cm4g KExTVEEgKFBJUkMpKQ0KICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICBN ZXRob2QgKF9QUlMsIDAsIE5vdFNlcmlhbGl6ZWQpDQogICAgICAgICAgICB7 DQogICAgICAgICAgICAgICAgUmV0dXJuIChQUlNDKQ0KICAgICAgICAgICAg fQ0KDQogICAgICAgICAgICBNZXRob2QgKF9ESVMsIDAsIE5vdFNlcmlhbGl6 ZWQpDQogICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgU3RvcmUgKExE SVMgKFBJUkMpLCBQSVJDKQ0KICAgICAgICAgICAgfQ0KDQogICAgICAgICAg ICBNZXRob2QgKF9DUlMsIDAsIE5vdFNlcmlhbGl6ZWQpDQogICAgICAgICAg ICB7DQogICAgICAgICAgICAgICAgUmV0dXJuIChMQ1JTIChQSVJDKSkNCiAg ICAgICAgICAgIH0NCg0KICAgICAgICAgICAgTWV0aG9kIChfU1JTLCAxLCBO b3RTZXJpYWxpemVkKQ0KICAgICAgICAgICAgew0KICAgICAgICAgICAgICAg IFN0b3JlIChMU1JTIChBcmcwKSwgUElSQykNCiAgICAgICAgICAgIH0NCiAg ICAgICAgfQ0KDQogICAgICAgIERldmljZSAoTE5LRCkNCiAgICAgICAgew0K ICAgICAgICAgICAgTmFtZSAoX0hJRCwgRWlzYUlkICgiUE5QMEMwRiIpKQ0K ICAgICAgICAgICAgTmFtZSAoX1VJRCwgMHgwNCkNCiAgICAgICAgICAgIE1l dGhvZCAoX1NUQSwgMCwgTm90U2VyaWFsaXplZCkNCiAgICAgICAgICAgIHsN CiAgICAgICAgICAgICAgICBSZXR1cm4gKExTVEEgKFBJUkQpKQ0KICAgICAg ICAgICAgfQ0KDQogICAgICAgICAgICBNZXRob2QgKF9QUlMsIDAsIE5vdFNl cmlhbGl6ZWQpDQogICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgUmV0 dXJuIChQUlNEKQ0KICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICBNZXRo b2QgKF9ESVMsIDAsIE5vdFNlcmlhbGl6ZWQpDQogICAgICAgICAgICB7DQog ICAgICAgICAgICAgICAgU3RvcmUgKExESVMgKFBJUkQpLCBQSVJEKQ0KICAg ICAgICAgICAgfQ0KDQogICAgICAgICAgICBNZXRob2QgKF9DUlMsIDAsIE5v dFNlcmlhbGl6ZWQpDQogICAgICAgICAgICB7DQogICAgICAgICAgICAgICAg UmV0dXJuIChMQ1JTIChQSVJEKSkNCiAgICAgICAgICAgIH0NCg0KICAgICAg ICAgICAgTWV0aG9kIChfU1JTLCAxLCBOb3RTZXJpYWxpemVkKQ0KICAgICAg ICAgICAgew0KICAgICAgICAgICAgICAgIFN0b3JlIChMU1JTIChBcmcwKSwg UElSRCkNCiAgICAgICAgICAgIH0NCiAgICAgICAgfQ0KDQogICAgICAgIERl dmljZSAoTE5LRSkNCiAgICAgICAgew0KICAgICAgICAgICAgTmFtZSAoX0hJ RCwgRWlzYUlkICgiUE5QMEMwRiIpKQ0KICAgICAgICAgICAgTmFtZSAoX1VJ RCwgMHgwNSkNCiAgICAgICAgICAgIE1ldGhvZCAoX1NUQSwgMCwgTm90U2Vy aWFsaXplZCkNCiAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICBSZXR1 cm4gKExTVEEgKFBJUkUpKQ0KICAgICAgICAgICAgfQ0KDQogICAgICAgICAg ICBNZXRob2QgKF9QUlMsIDAsIE5vdFNlcmlhbGl6ZWQpDQogICAgICAgICAg ICB7DQogICAgICAgICAgICAgICAgUmV0dXJuIChQUlNFKQ0KICAgICAgICAg ICAgfQ0KDQogICAgICAgICAgICBNZXRob2QgKF9ESVMsIDAsIE5vdFNlcmlh bGl6ZWQpDQogICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgU3RvcmUg KExESVMgKFBJUkUpLCBQSVJFKQ0KICAgICAgICAgICAgfQ0KDQogICAgICAg ICAgICBNZXRob2QgKF9DUlMsIDAsIE5vdFNlcmlhbGl6ZWQpDQogICAgICAg ICAgICB7DQogICAgICAgICAgICAgICAgUmV0dXJuIChMQ1JTIChQSVJFKSkN CiAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgTWV0aG9kIChfU1JTLCAx LCBOb3RTZXJpYWxpemVkKQ0KICAgICAgICAgICAgew0KICAgICAgICAgICAg ICAgIFN0b3JlIChMU1JTIChBcmcwKSwgUElSRSkNCiAgICAgICAgICAgIH0N CiAgICAgICAgfQ0KDQogICAgICAgIERldmljZSAoTE5LRikNCiAgICAgICAg ew0KICAgICAgICAgICAgTmFtZSAoX0hJRCwgRWlzYUlkICgiUE5QMEMwRiIp KQ0KICAgICAgICAgICAgTmFtZSAoX1VJRCwgMHgwNikNCiAgICAgICAgICAg IE1ldGhvZCAoX1NUQSwgMCwgTm90U2VyaWFsaXplZCkNCiAgICAgICAgICAg IHsNCiAgICAgICAgICAgICAgICBSZXR1cm4gKExTVEEgKFBJUkYpKQ0KICAg ICAgICAgICAgfQ0KDQogICAgICAgICAgICBNZXRob2QgKF9QUlMsIDAsIE5v dFNlcmlhbGl6ZWQpDQogICAgICAgICAgICB7DQogICAgICAgICAgICAgICAg UmV0dXJuIChQUlNGKQ0KICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICBN ZXRob2QgKF9ESVMsIDAsIE5vdFNlcmlhbGl6ZWQpDQogICAgICAgICAgICB7 DQogICAgICAgICAgICAgICAgU3RvcmUgKExESVMgKFBJUkYpLCBQSVJGKQ0K ICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICBNZXRob2QgKF9DUlMsIDAs IE5vdFNlcmlhbGl6ZWQpDQogICAgICAgICAgICB7DQogICAgICAgICAgICAg ICAgUmV0dXJuIChMQ1JTIChQSVJGKSkNCiAgICAgICAgICAgIH0NCg0KICAg ICAgICAgICAgTWV0aG9kIChfU1JTLCAxLCBOb3RTZXJpYWxpemVkKQ0KICAg ICAgICAgICAgew0KICAgICAgICAgICAgICAgIFN0b3JlIChMU1JTIChBcmcw KSwgUElSRikNCiAgICAgICAgICAgIH0NCiAgICAgICAgfQ0KDQogICAgICAg IERldmljZSAoTE5LRykNCiAgICAgICAgew0KICAgICAgICAgICAgTmFtZSAo X0hJRCwgRWlzYUlkICgiUE5QMEMwRiIpKQ0KICAgICAgICAgICAgTmFtZSAo X1VJRCwgMHgwNykNCiAgICAgICAgICAgIE1ldGhvZCAoX1NUQSwgMCwgTm90 U2VyaWFsaXplZCkNCiAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICBS ZXR1cm4gKExTVEEgKFBJUkcpKQ0KICAgICAgICAgICAgfQ0KDQogICAgICAg ICAgICBNZXRob2QgKF9QUlMsIDAsIE5vdFNlcmlhbGl6ZWQpDQogICAgICAg ICAgICB7DQogICAgICAgICAgICAgICAgUmV0dXJuIChQUlNHKQ0KICAgICAg ICAgICAgfQ0KDQogICAgICAgICAgICBNZXRob2QgKF9ESVMsIDAsIE5vdFNl cmlhbGl6ZWQpDQogICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgU3Rv cmUgKExESVMgKFBJUkcpLCBQSVJHKQ0KICAgICAgICAgICAgfQ0KDQogICAg ICAgICAgICBNZXRob2QgKF9DUlMsIDAsIE5vdFNlcmlhbGl6ZWQpDQogICAg ICAgICAgICB7DQogICAgICAgICAgICAgICAgUmV0dXJuIChMQ1JTIChQSVJH KSkNCiAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgTWV0aG9kIChfU1JT LCAxLCBOb3RTZXJpYWxpemVkKQ0KICAgICAgICAgICAgew0KICAgICAgICAg ICAgICAgIFN0b3JlIChMU1JTIChBcmcwKSwgUElSRykNCiAgICAgICAgICAg IH0NCiAgICAgICAgfQ0KDQogICAgICAgIERldmljZSAoTE5LSCkNCiAgICAg ICAgew0KICAgICAgICAgICAgTmFtZSAoX0hJRCwgRWlzYUlkICgiUE5QMEMw RiIpKQ0KICAgICAgICAgICAgTmFtZSAoX1VJRCwgMHgwOCkNCiAgICAgICAg ICAgIE1ldGhvZCAoX1NUQSwgMCwgTm90U2VyaWFsaXplZCkNCiAgICAgICAg ICAgIHsNCiAgICAgICAgICAgICAgICBSZXR1cm4gKExTVEEgKFBJUkgpKQ0K ICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICBNZXRob2QgKF9QUlMsIDAs IE5vdFNlcmlhbGl6ZWQpDQogICAgICAgICAgICB7DQogICAgICAgICAgICAg ICAgUmV0dXJuIChQUlNIKQ0KICAgICAgICAgICAgfQ0KDQogICAgICAgICAg ICBNZXRob2QgKF9ESVMsIDAsIE5vdFNlcmlhbGl6ZWQpDQogICAgICAgICAg ICB7DQogICAgICAgICAgICAgICAgU3RvcmUgKExESVMgKFBJUkgpLCBQSVJI KQ0KICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICBNZXRob2QgKF9DUlMs IDAsIE5vdFNlcmlhbGl6ZWQpDQogICAgICAgICAgICB7DQogICAgICAgICAg ICAgICAgUmV0dXJuIChMQ1JTIChQSVJIKSkNCiAgICAgICAgICAgIH0NCg0K ICAgICAgICAgICAgTWV0aG9kIChfU1JTLCAxLCBOb3RTZXJpYWxpemVkKQ0K ICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgIFN0b3JlIChMU1JTIChB cmcwKSwgUElSSCkNCiAgICAgICAgICAgIH0NCiAgICAgICAgfQ0KICAgIH0N Cg0KICAgIFNjb3BlIChcX1NCLlBDSTAuSURFMCkNCiAgICB7DQogICAgICAg IE9wZXJhdGlvblJlZ2lvbiAoQkFSMSwgUENJX0NvbmZpZywgMHgwMCwgMHgw MTAwKQ0KICAgICAgICBGaWVsZCAoQkFSMSwgRFdvcmRBY2MsIE5vTG9jaywg UHJlc2VydmUpDQogICAgICAgIHsNCiAgICAgICAgICAgIE9mZnNldCAoMHg0 MiksIA0KICAgICAgICAgICAgU1NQRSwgICAxLCANCiAgICAgICAgICAgIE9m ZnNldCAoMHg1NiksIA0KICAgICAgICAgICAgUFNHTSwgICAyLCANCiAgICAg ICAgICAgIFNTR00sICAgMg0KICAgICAgICB9DQogICAgfQ0KDQogICAgU2Nv cGUgKFxfU0IuUENJMC5JREUwLkNITjEuRFJWMCkNCiAgICB7DQogICAgICAg IE1ldGhvZCAoX0VKMCwgMSwgTm90U2VyaWFsaXplZCkNCiAgICAgICAgew0K ICAgICAgICAgICAgU3RvcmUgKDB4MDEsIFxfU0IuUENJMC5JREUwLlNTR00p DQogICAgICAgICAgICBTdG9yZSAoMHgwMCwgXF9TQi5QQ0kwLklERTAuU1NQ RSkNCiAgICAgICAgICAgIFNsZWVwICgweDAzRTgpDQogICAgICAgICAgICBT dG9yZSAoMHgwMSwgRzI4UykNCiAgICAgICAgICAgIFN0b3JlICgweDAxLCBH MTdTKQ0KICAgICAgICB9DQogICAgfQ0KDQogICAgU2NvcGUgKFxfU0IuUENJ MC5TQlJHLkVDMCkNCiAgICB7DQogICAgICAgIE1ldGhvZCAoX1EyRSwgMCwg Tm90U2VyaWFsaXplZCkNCiAgICAgICAgew0KICAgICAgICAgICAgSWYgKENE UyAoKSkNCiAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICBXUkVDICgw eDQ4LCAweDgwKQ0KICAgICAgICAgICAgfQ0KICAgICAgICAgICAgRWxzZQ0K ICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgIFdSRUMgKDB4NDgsIDB4 OTApDQogICAgICAgICAgICB9DQoNCiAgICAgICAgICAgIElmIChDRFMgKCkp DQogICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgU3RvcmUgKDB4MDEs IFxfU0IuUENJMC5JREUwLlNTR00pDQogICAgICAgICAgICAgICAgU3RvcmUg KDB4MDAsIFxfU0IuUENJMC5JREUwLlNTUEUpDQogICAgICAgICAgICAgICAg U2xlZXAgKDB4MDNFOCkNCiAgICAgICAgICAgICAgICBTdG9yZSAoMHgwMSwg RzI4UykNCiAgICAgICAgICAgICAgICBTdG9yZSAoMHgwMSwgRzE3UykNCiAg ICAgICAgICAgICAgICBTbGVlcCAoMHgwN0QwKQ0KICAgICAgICAgICAgICAg IE5vdGlmeSAoXF9TQi5QQ0kwLklERTAuQ0hOMS5EUlYwLCAweDAxKQ0KICAg ICAgICAgICAgfQ0KICAgICAgICAgICAgRWxzZQ0KICAgICAgICAgICAgew0K ICAgICAgICAgICAgICAgIFN0b3JlICgweDAwLCBcX1NCLlBDSTAuSURFMC5T U0dNKQ0KICAgICAgICAgICAgICAgIFN0b3JlICgweDAxLCBcX1NCLlBDSTAu SURFMC5TU1BFKQ0KICAgICAgICAgICAgICAgIFNsZWVwICgweDAzRTgpDQog ICAgICAgICAgICAgICAgU3RvcmUgKDB4MDEsIEcxN1MpDQogICAgICAgICAg ICAgICAgU3RvcmUgKDB4MDAsIEcyOFMpDQogICAgICAgICAgICAgICAgU2xl ZXAgKDB4QzgpDQogICAgICAgICAgICAgICAgU3RvcmUgKDB4MDAsIEcxN1Mp DQogICAgICAgICAgICAgICAgSWYgKExFcXVhbCAoXF9TQi5CQVlJLCAweDAx KSkNCiAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgIFN0 b3JlICgweDAxLCBcX1NCLlBDSTAuSURFMC5VRE1TKQ0KICAgICAgICAgICAg ICAgICAgICBTdG9yZSAoMHgwMSwgXF9TQi5QQ0kwLklERTAuVURUUykNCiAg ICAgICAgICAgICAgICAgICAgU3RvcmUgKDB4MDEsIFxfU0IuUENJMC5JREUw LlNDQjApDQogICAgICAgICAgICAgICAgICAgIFN0b3JlICgweDAzLCBcX1NC LlBDSTAuSURFMC5TQ0EwKQ0KICAgICAgICAgICAgICAgICAgICBTdG9yZSAo MHgwMSwgXF9TQi5QQ0kwLklERTAuRlNCMCkNCiAgICAgICAgICAgICAgICB9 DQogICAgICAgICAgICAgICAgRWxzZQ0KICAgICAgICAgICAgICAgIHsNCiAg ICAgICAgICAgICAgICAgICAgU3RvcmUgKDB4MDEsIFxfU0IuUENJMC5JREUw LlVETVMpDQogICAgICAgICAgICAgICAgICAgIFN0b3JlICgweDAyLCBcX1NC LlBDSTAuSURFMC5VRFRTKQ0KICAgICAgICAgICAgICAgICAgICBTdG9yZSAo MHgwMCwgXF9TQi5QQ0kwLklERTAuU0NCMCkNCiAgICAgICAgICAgICAgICAg ICAgU3RvcmUgKDB4MDAsIFxfU0IuUENJMC5JREUwLlNDQTApDQogICAgICAg ICAgICAgICAgICAgIFN0b3JlICgweDAwLCBcX1NCLlBDSTAuSURFMC5GU0Iw KQ0KICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgIFNsZWVw ICgweDA3RDApDQogICAgICAgICAgICAgICAgTm90aWZ5IChcX1NCLlBDSTAu SURFMC5DSE4xLCAweDAwKQ0KICAgICAgICAgICAgfQ0KICAgICAgICB9DQog ICAgfQ0KDQogICAgU2NvcGUgKFxfU0IpDQogICAgew0KICAgICAgICBTY29w ZSAoUENJMCkNCiAgICAgICAgew0KICAgICAgICAgICAgTmFtZSAoQ1JTLCBS ZXNvdXJjZVRlbXBsYXRlICgpDQogICAgICAgICAgICB7DQogICAgICAgICAg ICAgICAgV29yZEJ1c051bWJlciAoUmVzb3VyY2VQcm9kdWNlciwgTWluRml4 ZWQsIE1heEZpeGVkLCBQb3NEZWNvZGUsDQogICAgICAgICAgICAgICAgICAg IDB4MDAwMCwNCiAgICAgICAgICAgICAgICAgICAgMHgwMDAwLA0KICAgICAg ICAgICAgICAgICAgICAweDAwRkYsDQogICAgICAgICAgICAgICAgICAgIDB4 MDAwMCwNCiAgICAgICAgICAgICAgICAgICAgMHgwMTAwKQ0KICAgICAgICAg ICAgICAgIElPIChEZWNvZGUxNiwgMHgwQ0Y4LCAweDBDRjgsIDB4MDEsIDB4 MDgpDQogICAgICAgICAgICAgICAgV29yZElPIChSZXNvdXJjZVByb2R1Y2Vy LCBNaW5GaXhlZCwgTWF4Rml4ZWQsIFBvc0RlY29kZSwgRW50aXJlUmFuZ2Us DQogICAgICAgICAgICAgICAgICAgIDB4MDAwMCwNCiAgICAgICAgICAgICAg ICAgICAgMHgwMDAwLA0KICAgICAgICAgICAgICAgICAgICAweDBDRjcsDQog ICAgICAgICAgICAgICAgICAgIDB4MDAwMCwNCiAgICAgICAgICAgICAgICAg ICAgMHgwQ0Y4KQ0KICAgICAgICAgICAgICAgIFdvcmRJTyAoUmVzb3VyY2VQ cm9kdWNlciwgTWluRml4ZWQsIE1heEZpeGVkLCBQb3NEZWNvZGUsIEVudGly ZVJhbmdlLA0KICAgICAgICAgICAgICAgICAgICAweDAwMDAsDQogICAgICAg ICAgICAgICAgICAgIDB4MEQwMCwNCiAgICAgICAgICAgICAgICAgICAgMHhG RkZGLA0KICAgICAgICAgICAgICAgICAgICAweDAwMDAsDQogICAgICAgICAg ICAgICAgICAgIDB4RjMwMCkNCiAgICAgICAgICAgICAgICBEV29yZE1lbW9y eSAoUmVzb3VyY2VQcm9kdWNlciwgUG9zRGVjb2RlLCBNaW5GaXhlZCwgTWF4 Rml4ZWQsIENhY2hlYWJsZSwgUmVhZFdyaXRlLA0KICAgICAgICAgICAgICAg ICAgICAweDAwMDAwMDAwLA0KICAgICAgICAgICAgICAgICAgICAweDAwMEEw MDAwLA0KICAgICAgICAgICAgICAgICAgICAweDAwMEJGRkZGLA0KICAgICAg ICAgICAgICAgICAgICAweDAwMDAwMDAwLA0KICAgICAgICAgICAgICAgICAg ICAweDAwMDIwMDAwKQ0KICAgICAgICAgICAgICAgIERXb3JkTWVtb3J5IChS ZXNvdXJjZVByb2R1Y2VyLCBQb3NEZWNvZGUsIE1pbkZpeGVkLCBNYXhGaXhl ZCwgQ2FjaGVhYmxlLCBSZWFkV3JpdGUsDQogICAgICAgICAgICAgICAgICAg IDB4MDAwMDAwMDAsDQogICAgICAgICAgICAgICAgICAgIDB4MDAwRDAwMDAs DQogICAgICAgICAgICAgICAgICAgIDB4MDAwRDNGRkYsDQogICAgICAgICAg ICAgICAgICAgIDB4MDAwMDAwMDAsDQogICAgICAgICAgICAgICAgICAgIDB4 MDAwMDQwMDApDQogICAgICAgICAgICAgICAgRFdvcmRNZW1vcnkgKFJlc291 cmNlUHJvZHVjZXIsIFBvc0RlY29kZSwgTWluRml4ZWQsIE1heEZpeGVkLCBD YWNoZWFibGUsIFJlYWRXcml0ZSwNCiAgICAgICAgICAgICAgICAgICAgMHgw MDAwMDAwMCwNCiAgICAgICAgICAgICAgICAgICAgMHgwMDBENDAwMCwNCiAg ICAgICAgICAgICAgICAgICAgMHgwMDBEN0ZGRiwNCiAgICAgICAgICAgICAg ICAgICAgMHgwMDAwMDAwMCwNCiAgICAgICAgICAgICAgICAgICAgMHgwMDAw NDAwMCkNCiAgICAgICAgICAgICAgICBEV29yZE1lbW9yeSAoUmVzb3VyY2VQ cm9kdWNlciwgUG9zRGVjb2RlLCBNaW5GaXhlZCwgTWF4Rml4ZWQsIENhY2hl YWJsZSwgUmVhZFdyaXRlLA0KICAgICAgICAgICAgICAgICAgICAweDAwMDAw MDAwLA0KICAgICAgICAgICAgICAgICAgICAweDAwMERFMDAwLA0KICAgICAg ICAgICAgICAgICAgICAweDAwMERGRkZGLA0KICAgICAgICAgICAgICAgICAg ICAweDAwMDAwMDAwLA0KICAgICAgICAgICAgICAgICAgICAweDAwMDAyMDAw KQ0KICAgICAgICAgICAgICAgIERXb3JkTWVtb3J5IChSZXNvdXJjZVByb2R1 Y2VyLCBQb3NEZWNvZGUsIE1pbkZpeGVkLCBNYXhGaXhlZCwgQ2FjaGVhYmxl LCBSZWFkV3JpdGUsDQogICAgICAgICAgICAgICAgICAgIDB4MDAwMDAwMDAs DQogICAgICAgICAgICAgICAgICAgIDB4MDAwMDAwMDAsDQogICAgICAgICAg ICAgICAgICAgIDB4MDAwMDAwMDAsDQogICAgICAgICAgICAgICAgICAgIDB4 MDAwMDAwMDAsDQogICAgICAgICAgICAgICAgICAgIDB4MDAwMDAwMDApDQog ICAgICAgICAgICB9KQ0KICAgICAgICAgICAgQ3JlYXRlRFdvcmRGaWVsZCAo Q1JTLCAweEFBLCBNSU42KQ0KICAgICAgICAgICAgQ3JlYXRlRFdvcmRGaWVs ZCAoQ1JTLCAweEFFLCBNQVg2KQ0KICAgICAgICAgICAgQ3JlYXRlRFdvcmRG aWVsZCAoQ1JTLCAweEI2LCBMRU42KQ0KICAgICAgICAgICAgTWV0aG9kIChf Q1JTLCAwLCBOb3RTZXJpYWxpemVkKQ0KICAgICAgICAgICAgew0KICAgICAg ICAgICAgICAgIFN0b3JlIChNRzJCLCBNSU42KQ0KICAgICAgICAgICAgICAg IFN0b3JlIChNRzJMLCBMRU42KQ0KICAgICAgICAgICAgICAgIFN0b3JlIChN RzJMLCBMb2NhbDApDQogICAgICAgICAgICAgICAgQWRkIChNSU42LCBEZWNy ZW1lbnQgKExvY2FsMCksIE1BWDYpDQogICAgICAgICAgICAgICAgUmV0dXJu IChDUlMpDQogICAgICAgICAgICB9DQogICAgICAgIH0NCiAgICB9DQoNCiAg ICBJZiAoU1MxKQ0KICAgIHsNCiAgICAgICAgTmFtZSAoXF9TQi5QQ0kwLl9T MUQsIDB4MDIpDQogICAgICAgIE5hbWUgKFxfU0IuUENJMC5QMFAxLl9TMUQs IDB4MDIpDQogICAgICAgIE5hbWUgKFxfU0IuUENJMC5VU0IxLl9TMUQsIDB4 MDIpDQogICAgICAgIE5hbWUgKFxfU0IuUENJMC5VU0IyLl9TMUQsIDB4MDIp DQogICAgICAgIE5hbWUgKFxfU0IuUENJMC5VU0IzLl9TMUQsIDB4MDIpDQog ICAgfQ0KDQogICAgSWYgKFNTMykNCiAgICB7DQogICAgICAgIE5hbWUgKFxf U0IuUENJMC5fUzNELCAweDAyKQ0KICAgICAgICBOYW1lIChcX1NCLlBDSTAu UDBQMS5fUzNELCAweDAyKQ0KICAgICAgICBOYW1lIChcX1NCLlBDSTAuVVNC MS5fUzNELCAweDAyKQ0KICAgICAgICBOYW1lIChcX1NCLlBDSTAuVVNCMi5f UzNELCAweDAyKQ0KICAgICAgICBOYW1lIChcX1NCLlBDSTAuVVNCMy5fUzNE LCAweDAyKQ0KICAgIH0NCg0KICAgIElmIChTUzQpDQogICAgew0KICAgICAg ICBOYW1lIChcX1NCLlBDSTAuX1M0RCwgMHgwMikNCiAgICAgICAgTmFtZSAo XF9TQi5QQ0kwLlAwUDEuX1M0RCwgMHgwMikNCiAgICB9DQoNCiAgICBOYW1l IChJT1hCLCAweDA1QzApDQogICAgTmFtZSAoSU9YTCwgMHgxMCkNCiAgICBN ZXRob2QgKF9QVFMsIDEsIE5vdFNlcmlhbGl6ZWQpDQogICAgew0KICAgICAg ICBTdG9yZSAoQXJnMCwgREJHOCkNCiAgICAgICAgUFRTIChBcmcwKQ0KICAg ICAgICBTdG9yZSAoMHgwMCwgSW5kZXggKFdBS1AsIDB4MDApKQ0KICAgICAg ICBTdG9yZSAoMHgwMCwgSW5kZXggKFdBS1AsIDB4MDEpKQ0KICAgICAgICBJ ZiAoTE5vdCAoTEdyZWF0ZXIgKEFyZzAsIDB4MDMpKSkNCiAgICAgICAgew0K ICAgICAgICAgICAgU3RvcmUgKFxfU0IuUENJMC5TQlJHLkFQTVMsIEFDUFMp DQogICAgICAgIH0NCiAgICB9DQoNCiAgICBNZXRob2QgKF9XQUssIDEsIE5v dFNlcmlhbGl6ZWQpDQogICAgew0KICAgICAgICBTaGlmdExlZnQgKEFyZzAs IDB4MDQsIERCRzgpDQogICAgICAgIElmIChMTm90IChMR3JlYXRlciAoQXJn MCwgMHgwMykpKQ0KICAgICAgICB7DQogICAgICAgICAgICBJZiAoQW5kIChc X1NCLlBDSTAuU0JSRy5FQzAuQU5ZUywgMHgwMSkpDQogICAgICAgICAgICB7 DQogICAgICAgICAgICAgICAgTm90aWZ5IChcX1NCLlBXUkIsIDB4MDIpDQog ICAgICAgICAgICB9DQogICAgICAgIH0NCg0KICAgICAgICBTbGVlcCAoMHgw M0U4KQ0KICAgICAgICBJZiAoTE5vdCAoTEdyZWF0ZXIgKEFyZzAsIDB4MDMp KSkNCiAgICAgICAgew0KICAgICAgICAgICAgU3RvcmUgKEFDUFMsIFxfU0Iu UENJMC5TQlJHLkFQTVMpDQogICAgICAgIH0NCg0KICAgICAgICBXQUsgKEFy ZzApDQogICAgICAgIElmIChEZXJlZk9mIChJbmRleCAoV0FLUCwgMHgwMCkp KQ0KICAgICAgICB7DQogICAgICAgICAgICBTdG9yZSAoMHgwMCwgSW5kZXgg KFdBS1AsIDB4MDEpKQ0KICAgICAgICB9DQogICAgICAgIEVsc2UNCiAgICAg ICAgew0KICAgICAgICAgICAgU3RvcmUgKEFyZzAsIEluZGV4IChXQUtQLCAw eDAxKSkNCiAgICAgICAgfQ0KDQogICAgICAgIFJldHVybiAoV0FLUCkNCiAg ICB9DQoNCiAgICBTY29wZSAoXF9TQikNCiAgICB7DQogICAgICAgIE9wZXJh dGlvblJlZ2lvbiAoR1BJTywgU3lzdGVtSU8sIElPMkIsIDB4NDApDQogICAg ICAgIEZpZWxkIChHUElPLCBCeXRlQWNjLCBOb0xvY2ssIFByZXNlcnZlKQ0K ICAgICAgICB7DQogICAgICAgICAgICBPZmZzZXQgKDB4MEMpLCANCiAgICAg ICAgICAgICAgICAsICAgNywgDQogICAgICAgICAgICBHMDdTLCAgIDEsIA0K ICAgICAgICAgICAgICAgICwgICA5LCANCiAgICAgICAgICAgIEcxN1MsICAg MSwgDQogICAgICAgICAgICAgICAgLCAgIDksIA0KICAgICAgICAgICAgRzI3 UywgICAxLCANCiAgICAgICAgICAgIEcyOFMsICAgMSwgDQogICAgICAgICAg ICBPZmZzZXQgKDB4MkMpLCANCiAgICAgICAgICAgICAgICAsICAgMywgDQog ICAgICAgICAgICBCVDFTLCAgIDEsIA0KICAgICAgICAgICAgICAgICwgICAz LCANCiAgICAgICAgICAgIElOVjcsICAgMSwgDQogICAgICAgICAgICAgICAg LCAgIDMsIA0KICAgICAgICAgICAgTElETCwgICAxLCANCiAgICAgICAgICAg IE9mZnNldCAoMHgzOCksIA0KICAgICAgICAgICAgQktMVCwgICAxLCANCiAg ICAgICAgICAgIEJBWUksICAgMg0KICAgICAgICB9DQogICAgfQ0KDQogICAg U2NvcGUgKFxfR1BFKQ0KICAgIHsNCiAgICAgICAgTWV0aG9kIChfTDE3LCAw LCBOb3RTZXJpYWxpemVkKQ0KICAgICAgICB7DQogICAgICAgICAgICBJZiAo XF9TQi5JTlY3KQ0KICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgIFN0 b3JlICgweDAwLCBcX1NCLklOVjcpDQogICAgICAgICAgICB9DQogICAgICAg ICAgICBFbHNlDQogICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgU3Rv cmUgKDB4MDEsIFxfU0IuSU5WNykNCiAgICAgICAgICAgIH0NCg0KICAgICAg ICAgICAgTm90aWZ5IChcX1BSLkNQVTEsIDB4ODEpDQogICAgICAgIH0NCg0K ICAgICAgICBNZXRob2QgKF9MMTAsIDAsIE5vdFNlcmlhbGl6ZWQpDQogICAg ICAgIHsNCiAgICAgICAgICAgIE5vb3ANCiAgICAgICAgfQ0KDQogICAgICAg IE1ldGhvZCAoX0wxMSwgMCwgTm90U2VyaWFsaXplZCkNCiAgICAgICAgew0K ICAgICAgICAgICAgTm9vcA0KICAgICAgICB9DQoNCiAgICAgICAgTWV0aG9k IChfTDE0LCAwLCBOb3RTZXJpYWxpemVkKQ0KICAgICAgICB7DQogICAgICAg ICAgICBOb29wDQogICAgICAgIH0NCg0KICAgICAgICBNZXRob2QgKF9MMTUs IDAsIE5vdFNlcmlhbGl6ZWQpDQogICAgICAgIHsNCiAgICAgICAgICAgIE5v b3ANCiAgICAgICAgfQ0KICAgIH0NCg0KICAgIE1ldGhvZCAoU0NNRCwgNCwg Tm90U2VyaWFsaXplZCkNCiAgICB7DQogICAgICAgIE9wZXJhdGlvblJlZ2lv biAoU01SRywgU3lzdGVtSU8sIFNNQlMsIDB4MTApDQogICAgICAgIEZpZWxk IChTTVJHLCBCeXRlQWNjLCBOb0xvY2ssIFByZXNlcnZlKQ0KICAgICAgICB7 DQogICAgICAgICAgICBIU1RTLCAgIDgsIA0KICAgICAgICAgICAgU1NUUywg ICA4LCANCiAgICAgICAgICAgIEhTVEMsICAgOCwgDQogICAgICAgICAgICBI Q01ELCAgIDgsIA0KICAgICAgICAgICAgSEFEUiwgICA4LCANCiAgICAgICAg ICAgIEhEVDAsICAgOCwgDQogICAgICAgICAgICBIRFQxLCAgIDgsIA0KICAg ICAgICAgICAgQkxLRCwgICA4DQogICAgICAgIH0NCg0KICAgICAgICBGaWVs ZCAoU01SRywgQnl0ZUFjYywgTm9Mb2NrLCBQcmVzZXJ2ZSkNCiAgICAgICAg ew0KICAgICAgICAgICAgT2Zmc2V0ICgweDA1KSwgDQogICAgICAgICAgICBI RFRXLCAgIDE2DQogICAgICAgIH0NCg0KICAgICAgICBTdG9yZSAoMHgwRiwg TG9jYWwwKQ0KICAgICAgICBXaGlsZSAoTG9jYWwwKQ0KICAgICAgICB7DQog ICAgICAgICAgICBTdG9yZSAoQXJnMCwgSEFEUikNCiAgICAgICAgICAgIFN0 b3JlIChBcmcxLCBIQ01EKQ0KICAgICAgICAgICAgU3RvcmUgKEFyZzIsIEhE VFcpDQogICAgICAgICAgICBTdG9yZSAoMHhGRiwgSFNUUykNCiAgICAgICAg ICAgIFN0b3JlICgweEZGLCBIU1RTKQ0KICAgICAgICAgICAgU3RvcmUgKEFy ZzMsIEhTVEMpDQogICAgICAgICAgICBTdG9yZSAoMHhGRiwgTG9jYWw3KQ0K ICAgICAgICAgICAgV2hpbGUgKExvY2FsNykNCiAgICAgICAgICAgIHsNCiAg ICAgICAgICAgICAgICBTbGVlcCAoMHgwMSkNCiAgICAgICAgICAgICAgICBE ZWNyZW1lbnQgKExvY2FsNykNCiAgICAgICAgICAgICAgICBJZiAoQW5kIChI U1RTLCAweDAyKSkNCiAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAg ICAgICAgIFN0b3JlICgweDAwLCBMb2NhbDcpDQogICAgICAgICAgICAgICAg ICAgIFN0b3JlICgweDAxLCBMb2NhbDApDQogICAgICAgICAgICAgICAgfQ0K ICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICBEZWNyZW1lbnQgKExvY2Fs MCkNCiAgICAgICAgfQ0KDQogICAgICAgIElmIChBbmQgKEhTVFMsIDB4MDIp KQ0KICAgICAgICB7DQogICAgICAgICAgICBSZXR1cm4gKEhEVFcpDQogICAg ICAgIH0NCiAgICAgICAgRWxzZQ0KICAgICAgICB7DQogICAgICAgICAgICBS ZXR1cm4gKE5vdCAoMHgwMCkpDQogICAgICAgIH0NCiAgICB9DQoNCiAgICBN ZXRob2QgKFNCWVQsIDIsIE5vdFNlcmlhbGl6ZWQpDQogICAgew0KICAgICAg ICBTQ01EIChBcmcwLCBBcmcxLCAweDAwLCAweDQ0KQ0KICAgIH0NCg0KICAg IE1ldGhvZCAoV0JZVCwgMywgTm90U2VyaWFsaXplZCkNCiAgICB7DQogICAg ICAgIFNDTUQgKEFyZzAsIEFyZzEsIEFyZzIsIDB4NDgpDQogICAgfQ0KDQog ICAgTWV0aG9kIChXV1JELCAzLCBOb3RTZXJpYWxpemVkKQ0KICAgIHsNCiAg ICAgICAgU0NNRCAoQXJnMCwgQXJnMSwgQXJnMiwgMHg0QykNCiAgICB9DQoN CiAgICBNZXRob2QgKFJTQlQsIDIsIE5vdFNlcmlhbGl6ZWQpDQogICAgew0K ICAgICAgICBPciAoQXJnMCwgMHgwMSwgQXJnMCkNCiAgICAgICAgUmV0dXJu IChTQ01EIChBcmcwLCBBcmcxLCAweDAwLCAweDQ0KSkNCiAgICB9DQoNCiAg ICBNZXRob2QgKFJCWVQsIDIsIE5vdFNlcmlhbGl6ZWQpDQogICAgew0KICAg ICAgICBPciAoQXJnMCwgMHgwMSwgQXJnMCkNCiAgICAgICAgUmV0dXJuIChT Q01EIChBcmcwLCBBcmcxLCAweDAwLCAweDQ4KSkNCiAgICB9DQoNCiAgICBN ZXRob2QgKFJXUkQsIDIsIE5vdFNlcmlhbGl6ZWQpDQogICAgew0KICAgICAg ICBPciAoQXJnMCwgMHgwMSwgQXJnMCkNCiAgICAgICAgUmV0dXJuIChTQ01E IChBcmcwLCBBcmcxLCAweDAwLCAweDRDKSkNCiAgICB9DQoNCiAgICBOYW1l IChUU0FELCAweDk4KQ0KICAgIE5hbWUgKFRNSU4sIDB4NjkpDQogICAgTmFt ZSAoVE1BWCwgMHg2OSkNCiAgICBOYW1lIChUQ1JULCAweDY5KQ0KICAgIE5h bWUgKFRIT1QsIDB4M0MpDQogICAgTmFtZSAoVFNQLCAweDBBKQ0KICAgIE5h bWUgKFRDMSwgMHgwMikNCiAgICBOYW1lIChUQzIsIDB4MEEpDQogICAgU2Nv cGUgKFxfVFopDQogICAgew0KICAgICAgICBNZXRob2QgKFRDSEcsIDAsIE5v dFNlcmlhbGl6ZWQpDQogICAgICAgIHsNCiAgICAgICAgICAgIFN0b3JlIChS QllUIChUU0FELCAweDAxKSwgTG9jYWwwKQ0KICAgICAgICAgICAgU3RvcmUg KFJCWVQgKFRTQUQsIDB4MDIpLCBMb2NhbDEpDQogICAgICAgICAgICBTdG9y ZSAoUkJZVCAoVFNBRCwgMHgwNyksIExvY2FsMikNCiAgICAgICAgICAgIFN0 b3JlIChSQllUIChUU0FELCAweDA4KSwgTG9jYWwzKQ0KICAgICAgICAgICAg U3RvcmUgKDB4MDAsIExvY2FsNCkNCiAgICAgICAgICAgIElmIChBbmQgKExv Y2FsMSwgMHgxOCkpDQogICAgICAgICAgICB7DQogICAgICAgICAgICAgICAg SWYgKExFcXVhbCAoTG9jYWwzLCAweDAwKSkNCiAgICAgICAgICAgICAgICB7 DQogICAgICAgICAgICAgICAgICAgIFN0b3JlICgweDNDLCBMb2NhbDIpDQog ICAgICAgICAgICAgICAgICAgIFN0b3JlICgweDJELCBMb2NhbDMpDQogICAg ICAgICAgICAgICAgICAgIFN0b3JlICgweDM2LCBMb2NhbDQpDQogICAgICAg ICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgSWYgKExFcXVhbCAoTG9j YWwzLCAweDJEKSkNCiAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAg ICAgICAgIElmIChMTGVzcyAoTG9jYWwwLCAweDJEKSkNCiAgICAgICAgICAg ICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKDB4 MzIsIExvY2FsMikNCiAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlICgw eDAwLCBMb2NhbDMpDQogICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAo MHhGRiwgTG9jYWw0KQ0KICAgICAgICAgICAgICAgICAgICB9DQoNCiAgICAg ICAgICAgICAgICAgICAgSWYgKExOb3QgKExMZXNzIChMb2NhbDAsIDB4M0Mp KSkNCiAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAg ICAgICAgU3RvcmUgKDB4NEIsIExvY2FsMikNCiAgICAgICAgICAgICAgICAg ICAgICAgIFN0b3JlICgweDM3LCBMb2NhbDMpDQogICAgICAgICAgICAgICAg ICAgICAgICBTdG9yZSAoMHgzMSwgTG9jYWw0KQ0KICAgICAgICAgICAgICAg ICAgICB9DQogICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAg SWYgKExFcXVhbCAoTG9jYWwzLCAweDM3KSkNCiAgICAgICAgICAgICAgICB7 DQogICAgICAgICAgICAgICAgICAgIElmIChMTGVzcyAoTG9jYWwwLCAweDM3 KSkNCiAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAg ICAgICAgU3RvcmUgKDB4M0MsIExvY2FsMikNCiAgICAgICAgICAgICAgICAg ICAgICAgIFN0b3JlICgweDJELCBMb2NhbDMpDQogICAgICAgICAgICAgICAg ICAgICAgICBTdG9yZSAoMHgzNiwgTG9jYWw0KQ0KICAgICAgICAgICAgICAg ICAgICB9DQoNCiAgICAgICAgICAgICAgICAgICAgSWYgKExOb3QgKExMZXNz IChMb2NhbDAsIDB4NEIpKSkNCiAgICAgICAgICAgICAgICAgICAgew0KICAg ICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKDB4NUEsIExvY2FsMikNCiAg ICAgICAgICAgICAgICAgICAgICAgIFN0b3JlICgweDQ2LCBMb2NhbDMpDQog ICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoMHgyRiwgTG9jYWw0KQ0K ICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgfQ0KDQog ICAgICAgICAgICAgICAgSWYgKExFcXVhbCAoTG9jYWwzLCAweDQ2KSkNCiAg ICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgIElmIChMTGVz cyAoTG9jYWwwLCAweDQ2KSkNCiAgICAgICAgICAgICAgICAgICAgew0KICAg ICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKDB4NEIsIExvY2FsMikNCiAg ICAgICAgICAgICAgICAgICAgICAgIFN0b3JlICgweDM3LCBMb2NhbDMpDQog ICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoMHgzMSwgTG9jYWw0KQ0K ICAgICAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAgICAg SWYgKExOb3QgKExMZXNzIChMb2NhbDAsIDB4NUEpKSkNCiAgICAgICAgICAg ICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKDB4 NjksIExvY2FsMikNCiAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlICgw eDU1LCBMb2NhbDMpDQogICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAo MHgwMCwgTG9jYWw0KQ0KICAgICAgICAgICAgICAgICAgICB9DQogICAgICAg ICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgSWYgKExFcXVhbCAoTG9j YWwzLCAweDU1KSkNCiAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAg ICAgICAgIElmIChMTGVzcyAoTG9jYWwwLCAweDU1KSkNCiAgICAgICAgICAg ICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKDB4 NUEsIExvY2FsMikNCiAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlICgw eDQ2LCBMb2NhbDMpDQogICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAo MHgyRiwgTG9jYWw0KQ0KICAgICAgICAgICAgICAgICAgICB9DQoNCiAgICAg ICAgICAgICAgICAgICAgSWYgKExOb3QgKExMZXNzIChMb2NhbDAsIDB4Njkp KSkNCiAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAg ICAgICAgU3RvcmUgKDB4NjksIExvY2FsMikNCiAgICAgICAgICAgICAgICAg ICAgICAgIFN0b3JlICgweDU1LCBMb2NhbDMpDQogICAgICAgICAgICAgICAg ICAgICAgICBTdG9yZSAoMHgwMCwgTG9jYWw0KQ0KICAgICAgICAgICAgICAg ICAgICB9DQogICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAg U1RISSAoTG9jYWwyKQ0KICAgICAgICAgICAgICAgIFNUTE8gKExvY2FsMykN CiAgICAgICAgICAgICAgICBTdG9yZSAoTG9jYWw0LCBcX1NCLlBDSTAuU0JS Ry5FQzAuQ0RUMSkNCiAgICAgICAgICAgICAgICBTdG9yZSAoMHg4NCwgXF9T Qi5QQ0kwLlNCUkcuRUMwLkNEVDIpDQogICAgICAgICAgICAgICAgU3RvcmUg KDB4QzQsIFxfU0IuUENJMC5TQlJHLkVDMC5DTUQxKQ0KICAgICAgICAgICAg ICAgIFN0b3JlIChSQllUIChUU0FELCAweDAyKSwgTG9jYWw1KQ0KICAgICAg ICAgICAgICAgIElmIChBbmQgKExvY2FsNSwgMHgwNCkpDQogICAgICAgICAg ICAgICAgew0KICAgICAgICAgICAgICAgICAgICBTdG9yZSAoMHgwMCwgXF9T Qi5QQ0kwLlNCUkcuRUMwLkNEVDEpDQogICAgICAgICAgICAgICAgICAgIFN0 b3JlICgweDg0LCBcX1NCLlBDSTAuU0JSRy5FQzAuQ0RUMikNCiAgICAgICAg ICAgICAgICAgICAgU3RvcmUgKDB4QzQsIFxfU0IuUENJMC5TQlJHLkVDMC5D TUQxKQ0KICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgIFJC WVQgKFRTQUQsIDB4MDIpDQogICAgICAgICAgICAgICAgUkJZVCAoVFNBRCwg MHgwOSkNCiAgICAgICAgICAgICAgICBTQ0ZHICgweDAxKQ0KICAgICAgICAg ICAgfQ0KDQogICAgICAgICAgICBSQllUIChUU0FELCAweDAyKQ0KICAgICAg ICAgICAgUkJZVCAoVFNBRCwgMHgwOSkNCiAgICAgICAgICAgIFNDRkcgKDB4 MDEpDQogICAgICAgIH0NCg0KICAgICAgICBNZXRob2QgKFNDRkcsIDEsIE5v dFNlcmlhbGl6ZWQpDQogICAgICAgIHsNCiAgICAgICAgICAgIFdCWVQgKFRT QUQsIDB4MDksIEFyZzApDQogICAgICAgIH0NCg0KICAgICAgICBNZXRob2Qg KFNUSEksIDEsIE5vdFNlcmlhbGl6ZWQpDQogICAgICAgIHsNCiAgICAgICAg ICAgIFdCWVQgKFRTQUQsIDB4MEQsIEFyZzApDQogICAgICAgIH0NCg0KICAg ICAgICBNZXRob2QgKFNUTE8sIDEsIE5vdFNlcmlhbGl6ZWQpDQogICAgICAg IHsNCiAgICAgICAgICAgIFdCWVQgKFRTQUQsIDB4MEUsIEFyZzApDQogICAg ICAgIH0NCg0KICAgICAgICBNZXRob2QgKEdUSEksIDAsIE5vdFNlcmlhbGl6 ZWQpDQogICAgICAgIHsNCiAgICAgICAgICAgIFN0b3JlIChSQllUIChUU0FE LCAweDA3KSwgRGVidWcpDQogICAgICAgIH0NCg0KICAgICAgICBNZXRob2Qg KEdUTE8sIDAsIE5vdFNlcmlhbGl6ZWQpDQogICAgICAgIHsNCiAgICAgICAg ICAgIFN0b3JlIChSQllUIChUU0FELCAweDA4KSwgRGVidWcpDQogICAgICAg IH0NCg0KICAgICAgICBOYW1lIChGQU5ELCBCdWZmZXIgKDB4MDQpDQogICAg ICAgIHsNCiAgICAgICAgICAgIDB4MDAsIDB4MUUsIDB4MjQsIDB4MjgNCiAg ICAgICAgfSkNCiAgICAgICAgTmFtZSAoRkFOQywgMHgwMCkNCiAgICAgICAg TWV0aG9kIChSRkFOLCAwLCBTZXJpYWxpemVkKQ0KICAgICAgICB7DQogICAg ICAgICAgICBJZiAoXF9TQi5QQ0kwLlNCUkcuRUMwLkVDQVYgKCkpDQogICAg ICAgICAgICB7DQogICAgICAgICAgICAgICAgU3RvcmUgKFxfU0IuUENJMC5T QlJHLkVDMC5GRkFOLCBMb2NhbDApDQogICAgICAgICAgICB9DQogICAgICAg ICAgICBFbHNlDQogICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgU3Rv cmUgKFxfU0IuUENJMC5TQlJHLkVDMC5SREVDICgweDc3KSwgTG9jYWwwKQ0K ICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICBJZiAoTExlc3MgKExvY2Fs MCwgMHg4RSkpDQogICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgU3Rv cmUgKDB4MDMsIEZBTkMpDQogICAgICAgICAgICB9DQogICAgICAgICAgICBF bHNlDQogICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgSWYgKExMZXNz IChMb2NhbDAsIDB4QjcpKQ0KICAgICAgICAgICAgICAgIHsNCiAgICAgICAg ICAgICAgICAgICAgU3RvcmUgKDB4MDIsIEZBTkMpDQogICAgICAgICAgICAg ICAgfQ0KICAgICAgICAgICAgICAgIEVsc2UNCiAgICAgICAgICAgICAgICB7 DQogICAgICAgICAgICAgICAgICAgIElmIChMTGVzcyAoTG9jYWwwLCAweEY3 KSkNCiAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAg ICAgICAgU3RvcmUgKDB4MDEsIEZBTkMpDQogICAgICAgICAgICAgICAgICAg IH0NCiAgICAgICAgICAgICAgICAgICAgRWxzZQ0KICAgICAgICAgICAgICAg ICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoMHgwMCwg RkFOQykNCiAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAg IH0NCiAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgU3RvcmUgKERlcmVm T2YgKEluZGV4IChGQU5ELCBGQU5DKSksIExvY2FsMCkNCiAgICAgICAgICAg IFJldHVybiAoTG9jYWwwKQ0KICAgICAgICB9DQoNCiAgICAgICAgTWV0aG9k IChSVE1QLCAwLCBOb3RTZXJpYWxpemVkKQ0KICAgICAgICB7DQogICAgICAg ICAgICBTdG9yZSAoUkJZVCAoVFNBRCwgMHgwMSksIExvY2FsMCkNCiAgICAg ICAgICAgIElmIChOb3QgKExvY2FsMCkpDQogICAgICAgICAgICB7DQogICAg ICAgICAgICAgICAgUmV0dXJuIChMb2NhbDApDQogICAgICAgICAgICB9DQog ICAgICAgICAgICBFbHNlDQogICAgICAgICAgICB7DQogICAgICAgICAgICAg ICAgU3RvcmUgKCJfVE1QIFJlYWQgRVJST1IiLCBEZWJ1ZykNCiAgICAgICAg ICAgICAgICBSZXR1cm4gKEFkZCAoVE1JTiwgMHgwMikpDQogICAgICAgICAg ICB9DQogICAgICAgIH0NCg0KICAgICAgICBNZXRob2QgKEtFTFYsIDEsIE5v dFNlcmlhbGl6ZWQpDQogICAgICAgIHsNCiAgICAgICAgICAgIEFuZCAoQXJn MCwgMHhGRiwgTG9jYWwwKQ0KICAgICAgICAgICAgTXVsdGlwbHkgKExvY2Fs MCwgMHgwQSwgTG9jYWwwKQ0KICAgICAgICAgICAgQWRkIChMb2NhbDAsIDB4 MEFBQywgTG9jYWwwKQ0KICAgICAgICAgICAgUmV0dXJuIChMb2NhbDApDQog ICAgICAgIH0NCg0KICAgICAgICBOYW1lIChQTENZLCAweDAxKQ0KICAgICAg ICBUaGVybWFsWm9uZSAoVEhSTSkNCiAgICAgICAgew0KICAgICAgICAgICAg TWV0aG9kIChfQ1JULCAwLCBOb3RTZXJpYWxpemVkKQ0KICAgICAgICAgICAg ew0KICAgICAgICAgICAgICAgIFJldHVybiAoS0VMViAoVENSVCkpDQogICAg ICAgICAgICB9DQoNCiAgICAgICAgICAgIE1ldGhvZCAoX1RNUCwgMCwgTm90 U2VyaWFsaXplZCkNCiAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICBT dG9yZSAoMHgwNSwgTG9jYWwxKQ0KICAgICAgICAgICAgICAgIFdoaWxlIChM b2NhbDEpDQogICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAg ICBTdG9yZSAoUlRNUCAoKSwgTG9jYWwwKQ0KICAgICAgICAgICAgICAgICAg ICBJZiAoTEdyZWF0ZXIgKExvY2FsMCwgVENSVCkpDQogICAgICAgICAgICAg ICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgIERlY3JlbWVudCAo TG9jYWwxKQ0KICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAg ICAgICAgIEVsc2UNCiAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAg ICAgICAgICAgICAgICAgU3RvcmUgKDB4MDAsIExvY2FsMSkNCiAgICAgICAg ICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAg ICAgICAgIFJldHVybiAoS0VMViAoTG9jYWwwKSkNCiAgICAgICAgICAgIH0N Cg0KICAgICAgICAgICAgTmFtZSAoX1BTTCwgUGFja2FnZSAoMHgwMSkNCiAg ICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICBcX1BSLkNQVTENCiAgICAg ICAgICAgIH0pDQogICAgICAgICAgICBNZXRob2QgKF9UU1AsIDAsIE5vdFNl cmlhbGl6ZWQpDQogICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgTXVs dGlwbHkgKFRTUCwgMHgwQSwgTG9jYWwwKQ0KICAgICAgICAgICAgICAgIFJl dHVybiAoTG9jYWwwKQ0KICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICBN ZXRob2QgKF9UQzEsIDAsIE5vdFNlcmlhbGl6ZWQpDQogICAgICAgICAgICB7 DQogICAgICAgICAgICAgICAgUmV0dXJuIChUQzEpDQogICAgICAgICAgICB9 DQoNCiAgICAgICAgICAgIE1ldGhvZCAoX1RDMiwgMCwgTm90U2VyaWFsaXpl ZCkNCiAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICBSZXR1cm4gKFRD MikNCiAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgTWV0aG9kIChfUFNW LCAwLCBOb3RTZXJpYWxpemVkKQ0KICAgICAgICAgICAgew0KICAgICAgICAg ICAgICAgIFJldHVybiAoS0VMViAoMHg2NCkpDQogICAgICAgICAgICB9DQog ICAgICAgIH0NCg0KICAgICAgICBTY29wZSAoXF9HUEUpDQogICAgICAgIHsN CiAgICAgICAgICAgIE1ldGhvZCAoX0wwMCwgMCwgU2VyaWFsaXplZCkNCiAg ICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICBcX1RaLlRDSEcgKCkNCiAg ICAgICAgICAgICAgICBOb3RpZnkgKFxfVFouVEhSTSwgMHg4MSkNCiAgICAg ICAgICAgIH0NCiAgICAgICAgfQ0KDQogICAgICAgIE1ldGhvZCAoVFJNUywg MSwgTm90U2VyaWFsaXplZCkNCiAgICAgICAgew0KICAgICAgICAgICAgTm9v cA0KICAgICAgICB9DQoNCiAgICAgICAgTWV0aG9kIChUUk1XLCAxLCBOb3RT ZXJpYWxpemVkKQ0KICAgICAgICB7DQogICAgICAgICAgICBJZiAoTEdyZWF0 ZXIgKEFyZzAsIDB4MDEpKQ0KICAgICAgICAgICAgew0KICAgICAgICAgICAg ICAgIFxfVFouVENIRyAoKQ0KICAgICAgICAgICAgfQ0KDQogICAgICAgICAg ICBJZiAoTEdyZWF0ZXIgKFxfVFouVEhSTS5fVE1QICgpLCBUQ1JUKSkNCiAg ICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICBTdG9yZSAoMHgwMiwgTG9j YWwwKQ0KICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICBPciAoRGVyZWZP ZiAoSW5kZXggKFdBS1AsIDB4MDApKSwgTG9jYWwwLCBJbmRleCAoV0FLUCwg MHgwMCkpDQogICAgICAgICAgICBOb3RpZnkgKFxfVFouVEhSTSwgMHg4MCkN CiAgICAgICAgfQ0KICAgIH0NCg0KICAgIE5hbWUgKF9TMCwgUGFja2FnZSAo MHgwNCkNCiAgICB7DQogICAgICAgIDB4MDAsIA0KICAgICAgICAweDAwLCAN CiAgICAgICAgMHgwMCwgDQogICAgICAgIDB4MDANCiAgICB9KQ0KICAgIElm IChTUzMpDQogICAgew0KICAgICAgICBOYW1lIChfUzMsIFBhY2thZ2UgKDB4 MDQpDQogICAgICAgIHsNCiAgICAgICAgICAgIDB4MDUsIA0KICAgICAgICAg ICAgMHgwMCwgDQogICAgICAgICAgICAweDAwLCANCiAgICAgICAgICAgIDB4 MDANCiAgICAgICAgfSkNCiAgICB9DQoNCiAgICBJZiAoU1M0KQ0KICAgIHsN CiAgICAgICAgTmFtZSAoX1M0LCBQYWNrYWdlICgweDA0KQ0KICAgICAgICB7 DQogICAgICAgICAgICAweDA2LCANCiAgICAgICAgICAgIDB4MDAsIA0KICAg ICAgICAgICAgMHgwMCwgDQogICAgICAgICAgICAweDAwDQogICAgICAgIH0p DQogICAgfQ0KDQogICAgTmFtZSAoX1M1LCBQYWNrYWdlICgweDA0KQ0KICAg IHsNCiAgICAgICAgMHgwNywgDQogICAgICAgIDB4MDAsIA0KICAgICAgICAw eDAwLCANCiAgICAgICAgMHgwMA0KICAgIH0pDQogICAgTWV0aG9kIChQVFMs IDEsIE5vdFNlcmlhbGl6ZWQpDQogICAgew0KICAgICAgICBJZiAoQXJnMCkN CiAgICAgICAgew0KICAgICAgICAgICAgXF9UWi5UUk1TIChBcmcwKQ0KICAg ICAgICB9DQogICAgfQ0KDQogICAgTWV0aG9kIChXQUssIDEsIE5vdFNlcmlh bGl6ZWQpDQogICAgew0KICAgICAgICBcX1RaLlRSTVcgKEFyZzApDQogICAg fQ0KfQ0KDQo= ---559023410-758783491-1121137931=:12063-- From owner-freebsd-acpi@FreeBSD.ORG Tue Jul 12 13:48:19 2005 Return-Path: X-Original-To: freebsd-acpi@freebsd.org Delivered-To: freebsd-acpi@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 3B39116A41C for ; Tue, 12 Jul 2005 13:48:19 +0000 (GMT) (envelope-from jhb@FreeBSD.org) Received: from mv.twc.weather.com (mv.twc.weather.com [65.212.71.225]) by mx1.FreeBSD.org (Postfix) with ESMTP id 97B8C43D46 for ; Tue, 12 Jul 2005 13:48:16 +0000 (GMT) (envelope-from jhb@FreeBSD.org) Received: from [10.50.40.201] (Not Verified[65.202.103.25]) by mv.twc.weather.com with NetIQ MailMarshal (v6, 0, 3, 8) id ; Tue, 12 Jul 2005 10:02:16 -0400 From: John Baldwin To: freebsd-acpi@freebsd.org Date: Tue, 12 Jul 2005 09:48:22 -0400 User-Agent: KMail/1.8 References: In-Reply-To: MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit Content-Disposition: inline Message-Id: <200507120948.23675.jhb@FreeBSD.org> Cc: KAYVEN RIESE Subject: Re: can't see nuthin' 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, 12 Jul 2005 13:48:19 -0000 On Monday 11 July 2005 11:08 pm, KAYVEN RIESE wrote: > i can't see any of my devices with freeBSD 6.0 umm.. > > tell me what to tell you because i have no clue. First off, what actual problem are you having? What do you mean by "can't see any of my devices". The dmesg you posted shows the kernel detecting lots of devices. -- John Baldwin <>< http://www.FreeBSD.org/~jhb/ "Power Users Use the Power to Serve" = http://www.FreeBSD.org From owner-freebsd-acpi@FreeBSD.ORG Tue Jul 12 20:04:08 2005 Return-Path: X-Original-To: freebsd-acpi@FreeBSD.org Delivered-To: freebsd-acpi@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 4AEFD16A41C; Tue, 12 Jul 2005 20:04:08 +0000 (GMT) (envelope-from kayve@sfsu.edu) Received: from mailgw2.sfsu.edu (mailgw2.sfsu.edu [130.212.10.32]) by mx1.FreeBSD.org (Postfix) with ESMTP id 0BDB943D46; Tue, 12 Jul 2005 20:04:07 +0000 (GMT) (envelope-from kayve@sfsu.edu) Received: from libra.sfsu.edu (libra.sfsu.edu [130.212.10.238]) by mailgw2.sfsu.edu (8.12.11/8.12.11) with ESMTP id j6CK45WI005518; Tue, 12 Jul 2005 13:04:05 -0700 Received: from localhost (kayve@localhost) by libra.sfsu.edu (8.12.10/8.12.10) with ESMTP id j6CK45Xj012970; Tue, 12 Jul 2005 13:04:05 -0700 (PDT) X-Authentication-Warning: libra.sfsu.edu: kayve owned process doing -bs Date: Tue, 12 Jul 2005 13:04:05 -0700 (PDT) From: KAYVEN RIESE To: John Baldwin In-Reply-To: <200507120948.23675.jhb@FreeBSD.org> Message-ID: References: <200507120948.23675.jhb@FreeBSD.org> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII X-Brightmail-Tracker: AAAAAQAAA+k= X-Language-Identified: TRUE X-SFSU-VirusScanner: Found to be clean Cc: freebsd-acpi@FreeBSD.org Subject: Re: can't see nuthin' 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, 12 Jul 2005 20:04:08 -0000 On Tue, 12 Jul 2005, John Baldwin wrote: > On Monday 11 July 2005 11:08 pm, KAYVEN RIESE wrote: > > i can't see any of my devices with freeBSD 6.0 umm.. > > > > tell me what to tell you because i have no clue. > > First off, what actual problem are you having? What do you mean by "can't see > any of my devices". The dmesg you posted shows the kernel detecting lots of > devices. okay sorry.. i can see my hard drive but i am not sure i can see my modem or my wireless modem and right now the biggie is the SD card reader.. i thought maybe the complete listing of dmesg that i sent but some 'bot i think told me the email was too big.. would tell you there are lots of problems > > -- > John Baldwin <>< http://www.FreeBSD.org/~jhb/ > "Power Users Use the Power to Serve" = http://www.FreeBSD.org > From owner-freebsd-acpi@FreeBSD.ORG Tue Jul 12 20:04:44 2005 Return-Path: X-Original-To: freebsd-acpi@FreeBSD.org Delivered-To: freebsd-acpi@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id C620016A41C; Tue, 12 Jul 2005 20:04:44 +0000 (GMT) (envelope-from kayve@sfsu.edu) Received: from mailgw2.sfsu.edu (mailgw2.sfsu.edu [130.212.10.32]) by mx1.FreeBSD.org (Postfix) with ESMTP id 896E043D45; Tue, 12 Jul 2005 20:04:44 +0000 (GMT) (envelope-from kayve@sfsu.edu) Received: from libra.sfsu.edu (libra.sfsu.edu [130.212.10.238]) by mailgw2.sfsu.edu (8.12.11/8.12.11) with ESMTP id j6CK4eC9005629; Tue, 12 Jul 2005 13:04:40 -0700 Received: from localhost (kayve@localhost) by libra.sfsu.edu (8.12.10/8.12.10) with ESMTP id j6CK4ejX012976; Tue, 12 Jul 2005 13:04:40 -0700 (PDT) X-Authentication-Warning: libra.sfsu.edu: kayve owned process doing -bs Date: Tue, 12 Jul 2005 13:04:40 -0700 (PDT) From: KAYVEN RIESE To: John Baldwin In-Reply-To: <200507120948.23675.jhb@FreeBSD.org> Message-ID: References: <200507120948.23675.jhb@FreeBSD.org> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII X-Brightmail-Tracker: AAAAAQAAA+k= X-Language-Identified: TRUE X-SFSU-VirusScanner: Found to be clean Cc: freebsd-acpi@FreeBSD.org Subject: Re: can't see nuthin' 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, 12 Jul 2005 20:04:44 -0000 On Tue, 12 Jul 2005, John Baldwin wrote: > On Monday 11 July 2005 11:08 pm, KAYVEN RIESE wrote: > > i can't see any of my devices with freeBSD 6.0 umm.. > > > > tell me what to tell you because i have no clue. > > First off, what actual problem are you having? What do you mean by "can't see > any of my devices". The dmesg you posted shows the kernel detecting lots of > devices. if it is detecting a pci bus that can see an SD card i would like to know how to mount it. > > -- > John Baldwin <>< http://www.FreeBSD.org/~jhb/ > "Power Users Use the Power to Serve" = http://www.FreeBSD.org > From owner-freebsd-acpi@FreeBSD.ORG Tue Jul 12 20:22:57 2005 Return-Path: X-Original-To: freebsd-acpi@freebsd.org Delivered-To: freebsd-acpi@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 5CBD616A41C for ; Tue, 12 Jul 2005 20:22:57 +0000 (GMT) (envelope-from jhb@FreeBSD.org) Received: from mv.twc.weather.com (mv.twc.weather.com [65.212.71.225]) by mx1.FreeBSD.org (Postfix) with ESMTP id EE48443D46 for ; Tue, 12 Jul 2005 20:22:56 +0000 (GMT) (envelope-from jhb@FreeBSD.org) Received: from [10.50.40.201] (Not Verified[65.202.103.25]) by mv.twc.weather.com with NetIQ MailMarshal (v6, 0, 3, 8) id ; Tue, 12 Jul 2005 16:37:02 -0400 From: John Baldwin To: freebsd-acpi@freebsd.org Date: Tue, 12 Jul 2005 16:10:43 -0400 User-Agent: KMail/1.8 References: <200507120948.23675.jhb@FreeBSD.org> In-Reply-To: MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit Content-Disposition: inline Message-Id: <200507121610.44409.jhb@FreeBSD.org> Cc: KAYVEN RIESE Subject: Re: can't see nuthin' 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, 12 Jul 2005 20:22:57 -0000 On Tuesday 12 July 2005 04:04 pm, KAYVEN RIESE wrote: > On Tue, 12 Jul 2005, John Baldwin wrote: > > On Monday 11 July 2005 11:08 pm, KAYVEN RIESE wrote: > > > i can't see any of my devices with freeBSD 6.0 umm.. > > > > > > tell me what to tell you because i have no clue. > > > > First off, what actual problem are you having? What do you mean by > > "can't see any of my devices". The dmesg you posted shows the kernel > > detecting lots of devices. > > okay sorry.. i can see my hard drive but i am not sure i can see > my modem or my wireless modem and right now the biggie is the > SD card reader.. i thought maybe the complete listing of dmesg > that i sent but some 'bot i think told me the email was too big.. > would tell you there are lots of problems Ok, first off, can you provide the output of 'pciconf -l'? It looks like your modem is a PCI device. If it is a winmodem, then it might not be supported (some winmodems do work with some drivers available in ports). Also, are you trying to use a PCMCIA card in your first slot? Also, what kind of device is your SD card reader? Is it built in or is it some sort of cardbus device, etc.? -- John Baldwin <>< http://www.FreeBSD.org/~jhb/ "Power Users Use the Power to Serve" = http://www.FreeBSD.org From owner-freebsd-acpi@FreeBSD.ORG Tue Jul 12 21:15:01 2005 Return-Path: X-Original-To: freebsd-acpi@FreeBSD.org Delivered-To: freebsd-acpi@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id F153516A41C; Tue, 12 Jul 2005 21:15:00 +0000 (GMT) (envelope-from kayve@sfsu.edu) Received: from mailgw1.sfsu.edu (mailgw1.sfsu.edu [130.212.10.31]) by mx1.FreeBSD.org (Postfix) with ESMTP id A0F1743D48; Tue, 12 Jul 2005 21:15:00 +0000 (GMT) (envelope-from kayve@sfsu.edu) Received: from libra.sfsu.edu (libra.sfsu.edu [130.212.10.238]) by mailgw1.sfsu.edu (8.12.11/8.12.11) with ESMTP id j6CLEp2x007209; Tue, 12 Jul 2005 14:14:51 -0700 Received: from localhost (kayve@localhost) by libra.sfsu.edu (8.12.10/8.12.10) with ESMTP id j6CLEpwW018439; Tue, 12 Jul 2005 14:14:51 -0700 (PDT) X-Authentication-Warning: libra.sfsu.edu: kayve owned process doing -bs Date: Tue, 12 Jul 2005 14:14:51 -0700 (PDT) From: KAYVEN RIESE To: John Baldwin In-Reply-To: <200507121610.44409.jhb@FreeBSD.org> Message-ID: References: <200507120948.23675.jhb@FreeBSD.org> <200507121610.44409.jhb@FreeBSD.org> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII X-Brightmail-Tracker: AAAAAQAAA+k= X-Language-Identified: TRUE X-SFSU-VirusScanner: Found to be clean Cc: freebsd-acpi@FreeBSD.org Subject: Re: can't see nuthin' 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, 12 Jul 2005 21:15:01 -0000 On Tue, 12 Jul 2005, John Baldwin wrote: > On Tuesday 12 July 2005 04:04 pm, KAYVEN RIESE wrote: > > On Tue, 12 Jul 2005, John Baldwin wrote: > > > On Monday 11 July 2005 11:08 pm, KAYVEN RIESE wrote: > > > > i can't see any of my devices with freeBSD 6.0 umm.. > > > > > > > > tell me what to tell you because i have no clue. > > > > > > First off, what actual problem are you having? What do you mean by > > > "can't see any of my devices". The dmesg you posted shows the kernel > > > detecting lots of devices. > > > > okay sorry.. i can see my hard drive but i am not sure i can see > > my modem or my wireless modem and right now the biggie is the > > SD card reader.. i thought maybe the complete listing of dmesg > > that i sent but some 'bot i think told me the email was too big.. > > would tell you there are lots of problems > > Ok, first off, can you provide the output of 'pciconf -l'? BUILD: 165 lines, 4323 characters. Path: /usr/ports/distfiles (root@www) 111> pciconf -l agp0@pci0:0:0: class=0x060000 card=0x186a1043 chip=0x33408086 rev=0x21 hdr=0x00 pcib1@pci0:1:0: class=0x060400 card=0x00000000 chip=0x33418086 rev=0x21 hdr=0x01 uhci0@pci0:29:0: class=0x0c0300 card=0x18691043 chip=0x24c28086 rev=0x03 hdr=0x00 uhci1@pci0:29:1: class=0x0c0300 card=0x18691043 chip=0x24c48086 rev=0x03 hdr=0x00 uhci2@pci0:29:2: class=0x0c0300 card=0x18691043 chip=0x24c78086 rev=0x03 hdr=0x00 ehci0@pci0:29:7: class=0x0c0320 card=0x18681043 chip=0x24cd8086 rev=0x03 hdr=0x00 pcib2@pci0:30:0: class=0x060400 card=0x00000000 chip=0x24488086 rev=0x83 hdr=0x01 isab0@pci0:31:0: class=0x060100 card=0x00000000 chip=0x24cc8086 rev=0x03 hdr=0x00 atapci0@pci0:31:1: class=0x01018a card=0x18691043 chip=0x24ca8086 rev=0x03 hdr=0x00 none0@pci0:31:5: class=0x040100 card=0x17131043 chip=0x24c58086 rev=0x03 hdr=0x00 none1@pci0:31:6: class=0x070300 card=0x18261043 chip=0x24c68086 rev=0x03 hdr=0x00 none2@pci1:0:0: class=0x030000 card=0x17721043 chip=0x4e501002 rev=0x00 hdr=0x00 bge0@pci2:0:0: class=0x020000 card=0x17351043 chip=0x169c14e4 rev=0x03 hdr=0x00 cbb0@pci2:1:0: class=0x060700 card=0x18641043 chip=0x04761180 rev=0xac hdr=0x02 cbb1@pci2:1:1: class=0x060700 card=0x18641043 chip=0x04761180 rev=0xac hdr=0x02 fwohci0@pci2:1:2: class=0x0c0010 card=0x18671043 chip=0x05521180 rev=0x04 hdr=0x00 none3@pci2:2:0: class=0x028000 card=0x10008086 chip=0x42238086 rev=0x05 hdr=0x00 Path: /usr/ports/distfiles (root@www) 112> >It looks like your > modem is a PCI device. If it is a winmodem, then it might not be supported > (some winmodems do work with some drivers available in ports). Also, are you > trying to use a PCMCIA card in your first slot? i don't know what i am doing. the SD card came with the puter my friend rudy installed freeBSD 6.0 on a 11GB ad0s1 partition i created.. the first day he was about to partition my disk but then he realized i was going to be all fidgety.. so that night i did it myself.. i only allowed myself 11GB out of my 60 GB disk for ados1 so he installed freeBSD 6.0 on that the next day.. i have mozilla i thought he put java but i don't think its werking.. he said he was putting MySQL i haven't really tried to look at that.. apache but i have never started up an apache server but i have a book called "the apache bible" that i never looked at.. the day after that maybe i went to San Francisco State University to try to do my assignment for a graduate course called distributed systems. i dropped the class last semester and the prof agreed to help me werk on the assignment this summer so i could take the course in fall.. we have to install a middleware called MICO (mini corba but now "mico is corba" because it has grown).. that didn't werk, and he told me i needed a stable version of freeBSD.. (i have 6.0 on partition ad0s1).. therefore.. i went to rudy's again but just browsed around and took the freeBSD 5.4 and took it home for the weekend.. i created a second bootable ad0s2 partion on the HD that was 9GB and i guess successfully installed freeBSD 5.4 but i didn't know how to properly configure the DHCP stuff or whatever.. so the next day i brought it back to rudy's and he fixed the ethernet thingy so i can now boot DHCP either at rudy's office or the SFSU undergraduate lab with ethernet connection. i continued reading grog lehey's book "the complete FreeBSD" and realized that although avoiding subpartitioning with a root only "/" all in one partition was okay given i wasn't planning on having a bunch of lusers log onto my machine, i realized not having swap was sort of bad so i created a third partion ad0s3 non bootable and sucessfully created my swap partition by modifying /etc/fstab i tested it by creating a c program that malloced 514000000 bytes (i have 512MB RAM) and did the command grog said it werked. so now i don't waste the extra disk space redundantly on both ad0s1 and ad0s2 then i found out that in the side of my puter, there is like a PCMCIA flash memory card reader that operates on a high bandwith PCI bus (i am reading the small hardware manual that came with the puter ) and accepts several different types of small mass storage devices.. i have took the little plastic plug out and stuck my 256MB foto card in and left it there since.. i don't know how to mount the thing. > Also, what kind of device is > your SD card reader? i hope i answered it above.. > Is it built in or is it some sort of cardbus device, > etc.? it is a laptop.. it is sort of built in i guess > > -- > John Baldwin <>< http://www.FreeBSD.org/~jhb/ > "Power Users Use the Power to Serve" = http://www.FreeBSD.org > From owner-freebsd-acpi@FreeBSD.ORG Wed Jul 13 17:17:11 2005 Return-Path: X-Original-To: freebsd-acpi@freebsd.org Delivered-To: freebsd-acpi@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 596AE16A41C for ; Wed, 13 Jul 2005 17:17:11 +0000 (GMT) (envelope-from jhb@FreeBSD.org) Received: from mv.twc.weather.com (mv.twc.weather.com [65.212.71.225]) by mx1.FreeBSD.org (Postfix) with ESMTP id 0283043D46 for ; Wed, 13 Jul 2005 17:17:10 +0000 (GMT) (envelope-from jhb@FreeBSD.org) Received: from [10.50.40.201] (Not Verified[65.202.103.25]) by mv.twc.weather.com with NetIQ MailMarshal (v6, 0, 3, 8) id ; Wed, 13 Jul 2005 13:31:17 -0400 From: John Baldwin To: freebsd-acpi@freebsd.org Date: Wed, 13 Jul 2005 11:55:16 -0400 User-Agent: KMail/1.8 References: <200507121610.44409.jhb@FreeBSD.org> In-Reply-To: MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit Content-Disposition: inline Message-Id: <200507131155.16904.jhb@FreeBSD.org> Cc: KAYVEN RIESE Subject: Re: can't see nuthin' 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: Wed, 13 Jul 2005 17:17:11 -0000 On Tuesday 12 July 2005 05:14 pm, KAYVEN RIESE wrote: > On Tue, 12 Jul 2005, John Baldwin wrote: > > On Tuesday 12 July 2005 04:04 pm, KAYVEN RIESE wrote: > > > On Tue, 12 Jul 2005, John Baldwin wrote: > > > > On Monday 11 July 2005 11:08 pm, KAYVEN RIESE wrote: > > > > > i can't see any of my devices with freeBSD 6.0 umm.. > > > > > > > > > > tell me what to tell you because i have no clue. > > > > > > > > First off, what actual problem are you having? What do you mean by > > > > "can't see any of my devices". The dmesg you posted shows the kernel > > > > detecting lots of devices. > > > > > > okay sorry.. i can see my hard drive but i am not sure i can see > > > my modem or my wireless modem and right now the biggie is the > > > SD card reader.. i thought maybe the complete listing of dmesg > > > that i sent but some 'bot i think told me the email was too big.. > > > would tell you there are lots of problems > > > > Ok, first off, can you provide the output of 'pciconf -l'? > > BUILD: 165 lines, 4323 characters. > Path: /usr/ports/distfiles > (root@www) 111> pciconf -l > none0@pci0:31:5: class=0x040100 card=0x17131043 chip=0x24c58086 > rev=0x03 > hdr=0x00 This is your sound card and should work fine if you just 'kldload snd_ich' I believe. > none1@pci0:31:6: class=0x070300 card=0x18261043 chip=0x24c68086 > rev=0x03 > hdr=0x00 This is your modem and it is some sort of winmodem. I'm not sure if there are any ports that support this modem for FreeBSD. > none3@pci2:2:0: class=0x028000 card=0x10008086 chip=0x42238086 rev=0x05 > hdr=0x00 Not sure what this is. The class code is for an "ethernet controller, other", and the closest ID in pci_vendors is: 4220 PRO/Wireless 2200BG Network Connection So this is probably your wireless card. Not sure about your SD reader as I don't see it in your PCI device list. > Path: /usr/ports/distfiles > (root@www) 112> > > >It looks like your > > modem is a PCI device. If it is a winmodem, then it might not be > > supported (some winmodems do work with some drivers available in ports). > > Also, are you trying to use a PCMCIA card in your first slot? > > the day after that maybe i went to San Francisco State University > to try to do my assignment for a graduate course called > distributed systems. i dropped the class last semester and > the prof agreed to help me werk on the assignment this summer > so i could take the course in fall.. we have to install a > middleware called MICO (mini corba but now "mico is corba" > because it has grown).. that didn't werk, and he told me i > needed a stable version of freeBSD.. (i have 6.0 on partition > ad0s1).. You should be able to build mico from ports (ports/devel/mico) just fine on either 5.x or 6.0. > then i found out that in the side of my puter, there is like > a PCMCIA flash memory card reader that operates on a > high bandwith PCI bus (i am reading the small hardware > manual that came with the puter ) and accepts several > different types of small mass storage devices.. i have > took the little plastic plug out and stuck my 256MB > foto card in and left it there since.. i don't know > how to mount the thing. Well, not sure what to tell you there as I can't make enough out of this to know exactly where the SD card reader should be. -- John Baldwin <>< http://www.FreeBSD.org/~jhb/ "Power Users Use the Power to Serve" = http://www.FreeBSD.org From owner-freebsd-acpi@FreeBSD.ORG Wed Jul 13 17:58:39 2005 Return-Path: X-Original-To: freebsd-acpi@freebsd.org Delivered-To: freebsd-acpi@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id BC19516A41C; Wed, 13 Jul 2005 17:58:39 +0000 (GMT) (envelope-from brdavis@odin.ac.hmc.edu) Received: from odin.ac.hmc.edu (Odin.AC.HMC.Edu [134.173.32.75]) by mx1.FreeBSD.org (Postfix) with ESMTP id 711EF43D48; Wed, 13 Jul 2005 17:58:39 +0000 (GMT) (envelope-from brdavis@odin.ac.hmc.edu) Received: from odin.ac.hmc.edu (localhost.localdomain [127.0.0.1]) by odin.ac.hmc.edu (8.13.0/8.13.0) with ESMTP id j6DHwcTY006461; Wed, 13 Jul 2005 10:58:38 -0700 Received: (from brdavis@localhost) by odin.ac.hmc.edu (8.13.0/8.13.0/Submit) id j6DHwcXG006460; Wed, 13 Jul 2005 10:58:38 -0700 Date: Wed, 13 Jul 2005 10:58:38 -0700 From: Brooks Davis To: John Baldwin Message-ID: <20050713175838.GB5311@odin.ac.hmc.edu> References: <200507121610.44409.jhb@FreeBSD.org> <200507131155.16904.jhb@FreeBSD.org> Mime-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="VywGB/WGlW4DM4P8" Content-Disposition: inline In-Reply-To: <200507131155.16904.jhb@FreeBSD.org> User-Agent: Mutt/1.4.1i X-Virus-Scanned: by amavisd-new X-Spam-Status: No, hits=0.0 required=8.0 tests=none autolearn=no version=2.63 X-Spam-Checker-Version: SpamAssassin 2.63 (2004-01-11) on odin.ac.hmc.edu Cc: freebsd-acpi@freebsd.org, KAYVEN RIESE Subject: Re: can't see nuthin' 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: Wed, 13 Jul 2005 17:58:39 -0000 --VywGB/WGlW4DM4P8 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Wed, Jul 13, 2005 at 11:55:16AM -0400, John Baldwin wrote: > On Tuesday 12 July 2005 05:14 pm, KAYVEN RIESE wrote: > > then i found out that in the side of my puter, there is like > > a PCMCIA flash memory card reader that operates on a > > high bandwith PCI bus (i am reading the small hardware > > manual that came with the puter ) and accepts several > > different types of small mass storage devices.. i have > > took the little plastic plug out and stuck my 256MB > > foto card in and left it there since.. i don't know > > how to mount the thing. >=20 > Well, not sure what to tell you there as I can't make enough out of this = to=20 > know exactly where the SD card reader should be. It's probably something like the ricoh pccard bridge/sd reader in my ThinkPad X40. There's not support at this point for those devices. Attempts to obtain the required information have not met with success to date. A PCCard or USB reader is probably the best bet (other than running Windows). -- Brooks --=20 Any statement of the form "X is the one, true Y" is FALSE. PGP fingerprint 655D 519C 26A7 82E7 2529 9BF0 5D8E 8BE9 F238 1AD4 --VywGB/WGlW4DM4P8 Content-Type: application/pgp-signature Content-Disposition: inline -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.2.1 (GNU/Linux) iD8DBQFC1VZNXY6L6fI4GtQRAm6nAKCn0FpsyoRTp0T8P9EWbNPfg5GJ6gCeMBdE LNUaVWas3IMg56u0BaqifDw= =MIuv -----END PGP SIGNATURE----- --VywGB/WGlW4DM4P8-- From owner-freebsd-acpi@FreeBSD.ORG Wed Jul 13 23:59:12 2005 Return-Path: X-Original-To: freebsd-acpi@FreeBSD.org Delivered-To: freebsd-acpi@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 2869E16A424; Wed, 13 Jul 2005 23:59:12 +0000 (GMT) (envelope-from kayve@sfsu.edu) Received: from mailgw1.sfsu.edu (mailgw1.sfsu.edu [130.212.10.31]) by mx1.FreeBSD.org (Postfix) with ESMTP id CCF4843D46; Wed, 13 Jul 2005 23:59:11 +0000 (GMT) (envelope-from kayve@sfsu.edu) Received: from libra.sfsu.edu (libra.sfsu.edu [130.212.10.238]) by mailgw1.sfsu.edu (8.12.11/8.12.11) with ESMTP id j6DNxAg1018701; Wed, 13 Jul 2005 16:59:10 -0700 Received: from localhost (kayve@localhost) by libra.sfsu.edu (8.12.10/8.12.10) with ESMTP id j6DNx9lV001591; Wed, 13 Jul 2005 16:59:09 -0700 (PDT) X-Authentication-Warning: libra.sfsu.edu: kayve owned process doing -bs Date: Wed, 13 Jul 2005 16:59:09 -0700 (PDT) From: KAYVEN RIESE To: John Baldwin In-Reply-To: <200507131155.16904.jhb@FreeBSD.org> Message-ID: References: <200507121610.44409.jhb@FreeBSD.org> <200507131155.16904.jhb@FreeBSD.org> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII X-Brightmail-Tracker: AAAAAQAAA+k= X-Language-Identified: TRUE X-SFSU-VirusScanner: Found to be clean Cc: freebsd-acpi@FreeBSD.org Subject: Re: can't see nuthin' 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: Wed, 13 Jul 2005 23:59:12 -0000 On Wed, 13 Jul 2005, John Baldwin wrote: > On Tuesday 12 July 2005 05:14 pm, KAYVEN RIESE wrote: > > On Tue, 12 Jul 2005, John Baldwin wrote: > > > On Tuesday 12 July 2005 04:04 pm, KAYVEN RIESE wrote: > > > > On Tue, 12 Jul 2005, John Baldwin wrote: > > > > > On Monday 11 July 2005 11:08 pm, KAYVEN RIESE wrote: > > > > > > i can't see any of my devices with freeBSD 6.0 umm.. > > > > > > > > > Ok, first off, can you provide the output of 'pciconf -l'? > > > > BUILD: 165 lines, 4323 characters. > > Path: /usr/ports/distfiles > > (root@www) 111> pciconf -l > > none0@pci0:31:5: class=0x040100 card=0x17131043 chip=0x24c58086 > > rev=0x03 > > hdr=0x00 > > This is your sound card and should work fine if you just 'kldload snd_ich' I > believe. no errors.. but i don't hear nuthin' {:} kayvetop# kld snd_ich kld: Command not found. kayvetop# kldload snd_ich kayvetop# ry here are some manuals on my puter http://unicorn.sfsu.edu/~kayve/asus/e1435_m6n_sw.pdf http://unicorn.sfsu.edu/~kayve/asus/e1434b_m6n_hw.pdf http://unicorn.sfsu.edu/~kayve/wireless/ > > > none1@pci0:31:6: class=0x070300 card=0x18261043 chip=0x24c68086 > > rev=0x03 > > hdr=0x00 > > This is your modem and it is some sort of winmodem. I'm not sure if > there are > any ports that support this modem for FreeBSD. > > > none3@pci2:2:0: class=0x028000 card=0x10008086 chip=0x42238086 rev=0x05 > > hdr=0x00 > > Not sure what this is. The class code is for an "ethernet controller, >other", > and the closest ID in pci_vendors is: > > 4220 PRO/Wireless 2200BG Network Connection > > So this is probably your wireless card. Not sure about your SD reader as I > don't see it in your PCI device list. > > > Path: /usr/ports/distfiles > > (root@www) 112> > > > > >It looks like your > > > modem is a PCI device. If it is a winmodem, then it might not be > > > supported (some winmodems do work with some drivers available in ports). > > > Also, are you trying to use a PCMCIA card in your first slot? > the only thing i tried to do is stick my camera SD card physically into a slot and it fit just fine.. the rest happened when the OS got installed. according to the manual, the PCMCIA thingy dingy accepts all sorts of doohickies.. there is a big plastic dummy doohickey in there right now along with the little SD thingy.. i took the SD shapped plastic dummy plug out and put it next to my 32MB SD card in my pocket for credit cards in a little plastic sheath thingy where i put credit cards. according to the manual, the SD card reader thingy dingy runs on PCI bus. that's all i know. > > > the day after that maybe i went to San Francisco State University > > to try to do my assignment for a graduate course called > > distributed systems. i dropped the class last semester and > > the prof agreed to help me werk on the assignment this summer > > so i could take the course in fall.. we have to install a > > middleware called MICO (mini corba but now "mico is corba" > > because it has grown).. that didn't werk, and he told me i > > needed a stable version of freeBSD.. (i have 6.0 on partition > > ad0s1).. > > You should be able to build mico from ports (ports/devel/mico) just fine on > either 5.x or 6.0. > i might have successfully done that.. but at first there was problems with 6.0. right now i don't think i have java but i don't know why. i thought rudy installed that. when i make in the java port it poops. maybe the patches are owned by the wrong person? some of them are owned by rudy. should i "chown * root" or something? or is it "chown root *" ? okay i did chown root * and now i am making java i hope.. umm. shoot but i am booted up on 5.4 right now oops.. => bsd-jdk14-patches-7.tar.gz doesn't seem to exist in /usr/ports/distfiles/. => Attempting to fetch from ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/distfiles/. fetch: ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/distfiles/bsd-jdk14-patches-7.tar.gz: File unavailable (e.g., file not found, no access) => Couldn't fetch it - please try to retrieve this => port manually into /usr/ports/distfiles/ and try again. *** Error code 1 Stop in /usr/ports/java/jdk14. *** Error code 1 Stop in /usr/ports/java/jdk14. *** Error code 1 Stop in /mnt-for-6.x/usr/ports/java/avalon-logkit. *** Error code 1 Stop in /mnt-for-6.x/usr/ports/java. kayvetop# Stop in /mnt-for-6.x/usr/ports/java. kayvetop# cd ../distfiles kayvetop# ll j2* -rw-r--r-- 1 root wheel 132641077 Jul 12 15:12 j2eesdk-1_4_02_2005Q2-linux.bi n -rwxr-xr-x 1 root wheel 133843047 Jul 12 15:12 j2eesdk-1_4_02_2005Q2-solaris- i586.bin -rwxr-xr-x 1 root wheel 14389429 Jul 12 13:51 j2re-1_4_2_08-linux-i586.bin -rw-r--r-- 1 root 1002 2513462 Jul 12 15:12 j2sdk-1_4_2-bin-scsl.zip -rw-r--r-- 1 root wheel 3427247 Jul 12 15:12 j2sdk-1_4_2-mozilla_headers-un ix.zip -rw-r--r-- 1 root 1002 49269919 Jul 12 15:12 j2sdk-1_4_2-src-scsl.zip -rw-r--r-- 1 root 1002 36418360 Jul 12 15:12 j2sdk-1_4_2_08-linux-i586.bin j2re1.4.2_08: total 2 drwxr-xr-x 2 root wheel 512 Jul 12 13:54 .systemPrefs kayvetop# > > then i found out that in the side of my puter, there is like > > a PCMCIA flash memory card reader that operates on a > > high bandwith PCI bus (i am reading the small hardware > > manual that came with the puter ) and accepts several > > different types of small mass storage devices.. i have > > took the little plastic plug out and stuck my 256MB > > foto card in and left it there since.. i don't know > > how to mount the thing. > > Well, not sure what to tell you there as I can't make enough out of this to > know exactly where the SD card reader should be. > > -- > John Baldwin <>< http://www.FreeBSD.org/~jhb/ > "Power Users Use the Power to Serve" = http://www.FreeBSD.org > From owner-freebsd-acpi@FreeBSD.ORG Thu Jul 14 00:00:59 2005 Return-Path: X-Original-To: freebsd-acpi@freebsd.org Delivered-To: freebsd-acpi@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id AB4AD16A41C; Thu, 14 Jul 2005 00:00:59 +0000 (GMT) (envelope-from kayve@sfsu.edu) Received: from mailgw1.sfsu.edu (mailgw1.sfsu.edu [130.212.10.31]) by mx1.FreeBSD.org (Postfix) with ESMTP id 667F943D46; Thu, 14 Jul 2005 00:00:59 +0000 (GMT) (envelope-from kayve@sfsu.edu) Received: from libra.sfsu.edu (libra.sfsu.edu [130.212.10.238]) by mailgw1.sfsu.edu (8.12.11/8.12.11) with ESMTP id j6E00vDH019428; Wed, 13 Jul 2005 17:00:57 -0700 Received: from localhost (kayve@localhost) by libra.sfsu.edu (8.12.10/8.12.10) with ESMTP id j6E00s6T001644; Wed, 13 Jul 2005 17:00:57 -0700 (PDT) X-Authentication-Warning: libra.sfsu.edu: kayve owned process doing -bs Date: Wed, 13 Jul 2005 17:00:54 -0700 (PDT) From: KAYVEN RIESE To: Brooks Davis In-Reply-To: <20050713175838.GB5311@odin.ac.hmc.edu> Message-ID: References: <200507121610.44409.jhb@FreeBSD.org> <200507131155.16904.jhb@FreeBSD.org> <20050713175838.GB5311@odin.ac.hmc.edu> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII X-Brightmail-Tracker: AAAAAQAAA+k= X-Language-Identified: TRUE X-SFSU-VirusScanner: Found to be clean Cc: freebsd-acpi@freebsd.org Subject: Re: can't see nuthin' 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, 14 Jul 2005 00:00:59 -0000 On Wed, 13 Jul 2005, Brooks Davis wrote: > On Wed, Jul 13, 2005 at 11:55:16AM -0400, John Baldwin wrote: > > On Tuesday 12 July 2005 05:14 pm, KAYVEN RIESE wrote: > > > then i found out that in the side of my puter, there is like > > > a PCMCIA flash memory card reader that operates on a > > > high bandwith PCI bus (i am reading the small hardware > > > manual that came with the puter ) and accepts several > > > different types of small mass storage devices.. i have > > > took the little plastic plug out and stuck my 256MB > > > foto card in and left it there since.. i don't know > > > how to mount the thing. > > > > Well, not sure what to tell you there as I can't make enough out of this to > > know exactly where the SD card reader should be. > > It's probably something like the ricoh pccard bridge/sd reader in my > ThinkPad X40. There's not support at this point for those devices. > Attempts to obtain the required information have not met with success to > date. A PCCard or USB reader is probably the best bet (other than > running Windows). are ppl on this? can i try to program it? (i'm probably kdding myself plus it might be a bad battle for myself)xy > > -- Brooks > > -- > Any statement of the form "X is the one, true Y" is FALSE. > PGP fingerprint 655D 519C 26A7 82E7 2529 9BF0 5D8E 8BE9 F238 1AD4 > From owner-freebsd-acpi@FreeBSD.ORG Thu Jul 14 00:01:37 2005 Return-Path: X-Original-To: freebsd-acpi@freebsd.org Delivered-To: freebsd-acpi@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 3A6A516A41C; Thu, 14 Jul 2005 00:01:37 +0000 (GMT) (envelope-from kayve@sfsu.edu) Received: from mailgw2.sfsu.edu (mailgw2.sfsu.edu [130.212.10.32]) by mx1.FreeBSD.org (Postfix) with ESMTP id EBBCF43D46; Thu, 14 Jul 2005 00:01:36 +0000 (GMT) (envelope-from kayve@sfsu.edu) Received: from libra.sfsu.edu (libra.sfsu.edu [130.212.10.238]) by mailgw2.sfsu.edu (8.12.11/8.12.11) with ESMTP id j6E01X2n010721; Wed, 13 Jul 2005 17:01:33 -0700 Received: from localhost (kayve@localhost) by libra.sfsu.edu (8.12.10/8.12.10) with ESMTP id j6E01XYl001679; Wed, 13 Jul 2005 17:01:33 -0700 (PDT) X-Authentication-Warning: libra.sfsu.edu: kayve owned process doing -bs Date: Wed, 13 Jul 2005 17:01:33 -0700 (PDT) From: KAYVEN RIESE To: Brooks Davis In-Reply-To: <20050713175838.GB5311@odin.ac.hmc.edu> Message-ID: References: <200507121610.44409.jhb@FreeBSD.org> <200507131155.16904.jhb@FreeBSD.org> <20050713175838.GB5311@odin.ac.hmc.edu> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII X-Brightmail-Tracker: AAAAAQAAA+k= X-Language-Identified: TRUE X-SFSU-VirusScanner: Found to be clean Cc: freebsd-acpi@freebsd.org Subject: Re: can't see nuthin' 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, 14 Jul 2005 00:01:37 -0000 On Wed, 13 Jul 2005, Brooks Davis wrote: > On Wed, Jul 13, 2005 at 11:55:16AM -0400, John Baldwin wrote: > > On Tuesday 12 July 2005 05:14 pm, KAYVEN RIESE wrote: > > > then i found out that in the side of my puter, there is like > > > a PCMCIA flash memory card reader that operates on a > > > high bandwith PCI bus (i am reading the small hardware > > > manual that came with the puter ) and accepts several > > > different types of small mass storage devices.. i have > > > took the little plastic plug out and stuck my 256MB > > > foto card in and left it there since.. i don't know > > > how to mount the thing. > > > > Well, not sure what to tell you there as I can't make enough out of this to > > know exactly where the SD card reader should be. > > It's probably something like the ricoh pccard bridge/sd reader in my > ThinkPad X40. There's not support at this point for those devices. > Attempts to obtain the required information have not met with success to > date. A PCCard or USB reader is probably the best bet (other than > running Windows). > > -- Brooks how is the wine emulation thing? is that going to happen? > > -- > Any statement of the form "X is the one, true Y" is FALSE. > PGP fingerprint 655D 519C 26A7 82E7 2529 9BF0 5D8E 8BE9 F238 1AD4 > From owner-freebsd-acpi@FreeBSD.ORG Thu Jul 14 00:04:55 2005 Return-Path: X-Original-To: freebsd-acpi@freebsd.org Delivered-To: freebsd-acpi@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id BE85A16A41C; Thu, 14 Jul 2005 00:04:55 +0000 (GMT) (envelope-from brdavis@odin.ac.hmc.edu) Received: from odin.ac.hmc.edu (Odin.AC.HMC.Edu [134.173.32.75]) by mx1.FreeBSD.org (Postfix) with ESMTP id 65FF343D46; Thu, 14 Jul 2005 00:04:55 +0000 (GMT) (envelope-from brdavis@odin.ac.hmc.edu) Received: from odin.ac.hmc.edu (localhost.localdomain [127.0.0.1]) by odin.ac.hmc.edu (8.13.0/8.13.0) with ESMTP id j6E04sfc012189; Wed, 13 Jul 2005 17:04:54 -0700 Received: (from brdavis@localhost) by odin.ac.hmc.edu (8.13.0/8.13.0/Submit) id j6E04sqF012188; Wed, 13 Jul 2005 17:04:54 -0700 Date: Wed, 13 Jul 2005 17:04:54 -0700 From: Brooks Davis To: KAYVEN RIESE Message-ID: <20050714000454.GA11294@odin.ac.hmc.edu> References: <200507121610.44409.jhb@FreeBSD.org> <200507131155.16904.jhb@FreeBSD.org> <20050713175838.GB5311@odin.ac.hmc.edu> Mime-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="/9DWx/yDrRhgMJTb" Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.4.1i X-Virus-Scanned: by amavisd-new X-Spam-Status: No, hits=0.0 required=8.0 tests=none autolearn=no version=2.63 X-Spam-Checker-Version: SpamAssassin 2.63 (2004-01-11) on odin.ac.hmc.edu Cc: freebsd-acpi@freebsd.org Subject: Re: can't see nuthin' 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, 14 Jul 2005 00:04:55 -0000 --/9DWx/yDrRhgMJTb Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Wed, Jul 13, 2005 at 05:00:54PM -0700, KAYVEN RIESE wrote: >=20 >=20 > On Wed, 13 Jul 2005, Brooks Davis wrote: >=20 > > On Wed, Jul 13, 2005 at 11:55:16AM -0400, John Baldwin wrote: > > > On Tuesday 12 July 2005 05:14 pm, KAYVEN RIESE wrote: > > > > then i found out that in the side of my puter, there is like > > > > a PCMCIA flash memory card reader that operates on a > > > > high bandwith PCI bus (i am reading the small hardware > > > > manual that came with the puter ) and accepts several > > > > different types of small mass storage devices.. i have > > > > took the little plastic plug out and stuck my 256MB > > > > foto card in and left it there since.. i don't know > > > > how to mount the thing. > > > > > > Well, not sure what to tell you there as I can't make enough out of t= his to > > > know exactly where the SD card reader should be. > > > > It's probably something like the ricoh pccard bridge/sd reader in my > > ThinkPad X40. There's not support at this point for those devices. > > Attempts to obtain the required information have not met with success to > > date. A PCCard or USB reader is probably the best bet (other than > > running Windows). >=20 > are ppl on this? can i try to program it? (i'm probably kdding myself Some people are trying to get info, but no one has found the right people to talk to. It may happen, it may not. -- Brooks -- Any statement of the form "X is the one, true Y" is FALSE. PGP fingerprint 655D 519C 26A7 82E7 2529 9BF0 5D8E 8BE9 F238 1AD4 --/9DWx/yDrRhgMJTb Content-Type: application/pgp-signature Content-Disposition: inline -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.2.1 (GNU/Linux) iD8DBQFC1awlXY6L6fI4GtQRAkkyAJ45HtmXtIlZnQbuLbMF2tmaw62HxgCfXS8v 4/TtIllY+sdamUch+mSIbX8= =7oJL -----END PGP SIGNATURE----- --/9DWx/yDrRhgMJTb-- From owner-freebsd-acpi@FreeBSD.ORG Thu Jul 14 00:05:29 2005 Return-Path: X-Original-To: freebsd-acpi@freebsd.org Delivered-To: freebsd-acpi@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id BD7EB16A41C; Thu, 14 Jul 2005 00:05:29 +0000 (GMT) (envelope-from brdavis@odin.ac.hmc.edu) Received: from odin.ac.hmc.edu (Odin.AC.HMC.Edu [134.173.32.75]) by mx1.FreeBSD.org (Postfix) with ESMTP id 6523143D46; Thu, 14 Jul 2005 00:05:29 +0000 (GMT) (envelope-from brdavis@odin.ac.hmc.edu) Received: from odin.ac.hmc.edu (localhost.localdomain [127.0.0.1]) by odin.ac.hmc.edu (8.13.0/8.13.0) with ESMTP id j6E05SHd012266; Wed, 13 Jul 2005 17:05:28 -0700 Received: (from brdavis@localhost) by odin.ac.hmc.edu (8.13.0/8.13.0/Submit) id j6E05S8S012265; Wed, 13 Jul 2005 17:05:28 -0700 Date: Wed, 13 Jul 2005 17:05:28 -0700 From: Brooks Davis To: KAYVEN RIESE Message-ID: <20050714000528.GB11294@odin.ac.hmc.edu> References: <200507121610.44409.jhb@FreeBSD.org> <200507131155.16904.jhb@FreeBSD.org> <20050713175838.GB5311@odin.ac.hmc.edu> Mime-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="U+BazGySraz5kW0T" Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.4.1i X-Virus-Scanned: by amavisd-new X-Spam-Status: No, hits=0.0 required=8.0 tests=none autolearn=no version=2.63 X-Spam-Checker-Version: SpamAssassin 2.63 (2004-01-11) on odin.ac.hmc.edu Cc: freebsd-acpi@freebsd.org Subject: Re: can't see nuthin' 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, 14 Jul 2005 00:05:29 -0000 --U+BazGySraz5kW0T Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Wed, Jul 13, 2005 at 05:01:33PM -0700, KAYVEN RIESE wrote: >=20 >=20 > On Wed, 13 Jul 2005, Brooks Davis wrote: >=20 > > On Wed, Jul 13, 2005 at 11:55:16AM -0400, John Baldwin wrote: > > > On Tuesday 12 July 2005 05:14 pm, KAYVEN RIESE wrote: > > > > then i found out that in the side of my puter, there is like > > > > a PCMCIA flash memory card reader that operates on a > > > > high bandwith PCI bus (i am reading the small hardware > > > > manual that came with the puter ) and accepts several > > > > different types of small mass storage devices.. i have > > > > took the little plastic plug out and stuck my 256MB > > > > foto card in and left it there since.. i don't know > > > > how to mount the thing. > > > > > > Well, not sure what to tell you there as I can't make enough out of t= his to > > > know exactly where the SD card reader should be. > > > > It's probably something like the ricoh pccard bridge/sd reader in my > > ThinkPad X40. There's not support at this point for those devices. > > Attempts to obtain the required information have not met with success to > > date. A PCCard or USB reader is probably the best bet (other than > > running Windows). >=20 > how is the wine emulation thing? is that going to happen? Wine does not provide hardware support so it will be of no use in this case. -- Brooks --=20 Any statement of the form "X is the one, true Y" is FALSE. PGP fingerprint 655D 519C 26A7 82E7 2529 9BF0 5D8E 8BE9 F238 1AD4 --U+BazGySraz5kW0T Content-Type: application/pgp-signature Content-Disposition: inline -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.2.1 (GNU/Linux) iD8DBQFC1axIXY6L6fI4GtQRAj06AJ9tZiv3rF7uROhNgN35qQIDUelltgCcDiLD /7oqfcLHKjgBU9DRgJ7SrzQ= =AhMf -----END PGP SIGNATURE----- --U+BazGySraz5kW0T-- From owner-freebsd-acpi@FreeBSD.ORG Thu Jul 14 15:16:21 2005 Return-Path: X-Original-To: freebsd-acpi@freebsd.org Delivered-To: freebsd-acpi@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 18DEE16A41C for ; Thu, 14 Jul 2005 15:16:21 +0000 (GMT) (envelope-from gofda-freebsd-acpi@m.gmane.org) Received: from ciao.gmane.org (main.gmane.org [80.91.229.2]) by mx1.FreeBSD.org (Postfix) with ESMTP id 9FF1B43D45 for ; Thu, 14 Jul 2005 15:16:20 +0000 (GMT) (envelope-from gofda-freebsd-acpi@m.gmane.org) Received: from list by ciao.gmane.org with local (Exim 4.43) id 1Dt5QG-0002cg-Jv for freebsd-acpi@freebsd.org; Thu, 14 Jul 2005 17:14:48 +0200 Received: from 209.149.130.42 ([209.149.130.42]) by main.gmane.org with esmtp (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Thu, 14 Jul 2005 17:14:48 +0200 Received: from jvk-list by 209.149.130.42 with local (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Thu, 14 Jul 2005 17:14:48 +0200 X-Injected-Via-Gmane: http://gmane.org/ To: freebsd-acpi@freebsd.org From: Joe Kraft Date: Thu, 14 Jul 2005 11:15:32 -0400 Lines: 29 Message-ID: References: Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-Complaints-To: usenet@sea.gmane.org X-Gmane-NNTP-Posting-Host: 209.149.130.42 User-Agent: Mozilla Thunderbird 0.9 (Windows/20041103) X-Accept-Language: en-us, en In-Reply-To: Sender: news Subject: Re: S3 and/or S4 modes for Sony Vaio PCG-v505? 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, 14 Jul 2005 15:16:21 -0000 Joe Kraft wrote: > Has anyone looked at the suspend modes for this Sony Vaio? Of course > it's the one I have... :-) > > It doesn't seem to return from the S3 or S4 state. In a little > debugging of the S3 state, I'm getting the ACPI return from suspend > message in my message log. The display never lights back up and the > computer doesn't respond to anything except the power switch. > > I'm building a DEBUG version of the acpi module, to try and figure out > what is or isn't happening. Can anyone give me an idea of where and how > to start looking? > > Joe. > Just a plug, hoping someone can point me in the right direction to help myself. I haven't found anything from google, or in the handbook that really helps. I've dumped the ASL and it compiles cleanly. I've stripped most devices out of the kernel to get a minimal version for testing, and built a debug version of the acpi module. At this point, I don't understand the ACPI code well enough to understand how it's all supposed to work. Should I post kernconf, sysctl and ASL at this point, or is there somewhere I can find more information about debugging ACPI? Joe. From owner-freebsd-acpi@FreeBSD.ORG Thu Jul 14 18:15:34 2005 Return-Path: X-Original-To: freebsd-acpi@freebsd.org Delivered-To: freebsd-acpi@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 6206A16A41C for ; Thu, 14 Jul 2005 18:15:34 +0000 (GMT) (envelope-from jhb@FreeBSD.org) Received: from mv.twc.weather.com (mv.twc.weather.com [65.212.71.225]) by mx1.FreeBSD.org (Postfix) with ESMTP id AE75343D4C for ; Thu, 14 Jul 2005 18:15:33 +0000 (GMT) (envelope-from jhb@FreeBSD.org) Received: from [10.50.40.201] (Not Verified[65.202.103.25]) by mv.twc.weather.com with NetIQ MailMarshal (v6, 0, 3, 8) id ; Thu, 14 Jul 2005 14:29:38 -0400 From: John Baldwin To: freebsd-acpi@freebsd.org Date: Thu, 14 Jul 2005 12:24:58 -0400 User-Agent: KMail/1.8 References: <200507131155.16904.jhb@FreeBSD.org> In-Reply-To: MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit Content-Disposition: inline Message-Id: <200507141224.59550.jhb@FreeBSD.org> Cc: KAYVEN RIESE Subject: Re: can't see nuthin' 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, 14 Jul 2005 18:15:34 -0000 On Wednesday 13 July 2005 07:59 pm, KAYVEN RIESE wrote: > okay i did chown root * and now i am making java i hope.. umm. > shoot but i am booted up on 5.4 right now > > oops.. > > => bsd-jdk14-patches-7.tar.gz doesn't seem to exist in > /usr/ports/distfiles/. > => Attempting to fetch from > ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/distfiles/. > fetch: > ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/distfiles/bsd-jdk14-patches-7.tar.g >z: File unavailable (e.g., file not found, no access) > => Couldn't fetch it - please try to retrieve this > => port manually into /usr/ports/distfiles/ and try again. You have to go download this file manually because you have to agree to a license agreement to get it. I think the URL is in the Makefile for this port. You should grab a copy of the handbook at www.freebsd.org and browse it as well if you haven't already. -- John Baldwin <>< http://www.FreeBSD.org/~jhb/ "Power Users Use the Power to Serve" = http://www.FreeBSD.org From owner-freebsd-acpi@FreeBSD.ORG Thu Jul 14 21:38:16 2005 Return-Path: X-Original-To: freebsd-acpi@FreeBSD.org Delivered-To: freebsd-acpi@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 037C216A41C; Thu, 14 Jul 2005 21:38:16 +0000 (GMT) (envelope-from kayve@sfsu.edu) Received: from mailgw1.sfsu.edu (mailgw1.sfsu.edu [130.212.10.31]) by mx1.FreeBSD.org (Postfix) with ESMTP id BB8AA43D46; Thu, 14 Jul 2005 21:38:15 +0000 (GMT) (envelope-from kayve@sfsu.edu) Received: from libra.sfsu.edu (libra.sfsu.edu [130.212.10.238]) by mailgw1.sfsu.edu (8.12.11/8.12.11) with ESMTP id j6ELcE6H015547; Thu, 14 Jul 2005 14:38:14 -0700 Received: from localhost (kayve@localhost) by libra.sfsu.edu (8.12.10/8.12.10) with ESMTP id j6ELcDPU007927; Thu, 14 Jul 2005 14:38:13 -0700 (PDT) X-Authentication-Warning: libra.sfsu.edu: kayve owned process doing -bs Date: Thu, 14 Jul 2005 14:38:13 -0700 (PDT) From: KAYVEN RIESE To: John Baldwin In-Reply-To: <200507141224.59550.jhb@FreeBSD.org> Message-ID: References: <200507131155.16904.jhb@FreeBSD.org> <200507141224.59550.jhb@FreeBSD.org> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII X-Brightmail-Tracker: AAAAAQAAA+k= X-Language-Identified: TRUE X-SFSU-VirusScanner: Found to be clean Cc: freebsd-acpi@FreeBSD.org Subject: Re: can't see nuthin' 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, 14 Jul 2005 21:38:16 -0000 On Thu, 14 Jul 2005, John Baldwin wrote: > On Wednesday 13 July 2005 07:59 pm, KAYVEN RIESE wrote: > > okay i did chown root * and now i am making java i hope.. umm. > > shoot but i am booted up on 5.4 right now > > > > oops.. > > > > => bsd-jdk14-patches-7.tar.gz doesn't seem to exist in > > /usr/ports/distfiles/. > > => Attempting to fetch from > > ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/distfiles/. > > fetch: > > ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/distfiles/bsd-jdk14-patches-7.tar.g > >z: File unavailable (e.g., file not found, no access) > > => Couldn't fetch it - please try to retrieve this > > => port manually into /usr/ports/distfiles/ and try again. > > You have to go download this file manually because you have to agree to a > license agreement to get it. I think the URL is in the Makefile for this > port. You should grab a copy of the handbook at www.freebsd.org and browse > it as well if you haven't already. i think i already have the file but crazy things are happening because of the way my two dual booted freeBSD's are symlinked to each other. From owner-freebsd-acpi@FreeBSD.ORG Fri Jul 15 07:33:18 2005 Return-Path: X-Original-To: acpi@FreeBSD.org Delivered-To: freebsd-acpi@FreeBSD.ORG Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 3304C16A41C for ; Fri, 15 Jul 2005 07:33:18 +0000 (GMT) (envelope-from ume@mahoroba.org) Received: from ameno.mahoroba.org (gw4.mahoroba.org [218.45.22.175]) by mx1.FreeBSD.org (Postfix) with ESMTP id 8C14343D45 for ; Fri, 15 Jul 2005 07:33:16 +0000 (GMT) (envelope-from ume@mahoroba.org) Received: from localhost (IDENT:B5PEB5ikdETqagMOZj/KzdII3FKEIXY63LewNi4ngfj4RdPObKTt59ScM7J+ghjp@localhost [IPv6:::1]) (user=ume mech=CRAM-MD5 bits=0) by ameno.mahoroba.org (8.13.3/8.13.3) with ESMTP/inet6 id j6F7X95B011535 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO) for ; Fri, 15 Jul 2005 16:33:09 +0900 (JST) (envelope-from ume@mahoroba.org) Date: Fri, 15 Jul 2005 16:33:09 +0900 Message-ID: From: Hajimu UMEMOTO To: acpi@FreeBSD.org In-Reply-To: References: <42CB0369.1000701@root.org> <42CC7E67.50401@root.org> User-Agent: xcite1.38> Wanderlust/2.14.0 (Africa) SEMI/1.14.6 (Maruoka) FLIM/1.14.7 (=?ISO-8859-4?Q?Sanj=F2?=) APEL/10.6 Emacs/21.3 (i386--freebsd) MULE/5.0 (SAKAKI) X-Operating-System: FreeBSD 5.4-STABLE X-PGP-Key: http://www.imasy.or.jp/~ume/publickey.asc X-PGP-Fingerprint: 1F00 0B9E 2164 70FC 6DC5 BF5F 04E9 F086 BF90 71FE Organization: Internet Mutual Aid Society, YOKOHAMA MIME-Version: 1.0 (generated by SEMI 1.14.6 - "Maruoka") Content-Type: text/plain; charset=US-ASCII X-Greylist: Sender succeeded SMTP AUTH authentication, not delayed by milter-greylist-2.0 (ameno.mahoroba.org [IPv6:::1]); Fri, 15 Jul 2005 16:33:10 +0900 (JST) X-Virus-Scanned: by amavisd-new X-Virus-Status: Clean X-Spam-Status: No, score=-5.9 required=5.0 tests=ALL_TRUSTED,BAYES_00 autolearn=ham version=3.0.4 X-Spam-Checker-Version: SpamAssassin 3.0.4 (2005-06-05) on ameno.mahoroba.org Cc: Subject: Re: passive cooling and cpufreq 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, 15 Jul 2005 07:33:18 -0000 Hi, >>>>> On Thu, 07 Jul 2005 18:45:56 +0900 >>>>> Hajimu UMEMOTO said: ume> I made my new patch: ume> http://www.imasy.or.jp/~ume/FreeBSD/passive-cooling-20050707.diff I reworked and put my new patch: http://www.imasy.or.jp/~ume/FreeBSD/passive-cooling-20050713.diff ume> It doesn't modify kern_cpu.c. Instead, I added some code into ume> powerd(8) to don't try to update frequency when ume> hw.acpi.thermal.tz0.passive_active is on. It is not mandatory. So, I nuked the code around it. I did following changes from my previous patch: - It seems ACPI spec says a threshold is _PSV. So, _PSV is just used as a threshold, and hw.acpi.thermal.tz0.passive_threshold was nuked. - Since we don't need to expose _TC1, _TC2 and _TSP, I nuked related sysctl MIBs. - When cooling down is succeed and a temperature becomes low than a threshold, a freq was restored immediately in my previous patch. Now, a freq is restored by degrees as ACPI Spec Figure 12-2 Temperature and CPU Performance Versus Time. - Now, passive cooling is enabled by default but tz0 only. If there is no objection, I'll commit it into HEAD. Sincerely, -- Hajimu UMEMOTO @ Internet Mutual Aid Society Yokohama, Japan ume@mahoroba.org ume@{,jp.}FreeBSD.org http://www.imasy.org/~ume/